@charset "UTF-8";
.review01 .review01__tabWrap::before, .review01 .review01__tabWrap::after {
  position: absolute;
  top: 0;
  left: 0;
  background: var(--font-clr);
  width: 100%;
  height: 1px;
  opacity: 0.25;
  content: "";
  display: block;
}

#pageLaw h3, #privacy dl > dt, #pageMembershipGuide .guide .content h2.heading, #pageMembershipGuide .guide .register .heading, #pageMembershipLogin .login .heading, #pageCommunity .community-wrap .limited .communityItemHeader,
#pageCommunity .community-wrap .limited .communityUrlHeader, .blogDetail .blog_title h2, .product-detail .item-desc .item-desc-custom .appsItemDetailCustomTag_heading, .review01 .review01__title, .ttl-h2 {
  padding: 0;
  margin: 1.111em 0;
  font-size: 18px;
  font-size: 1.8rem;
  text-align: left;
  line-height: 1.4;
}
#pageLaw h3:first-child, #privacy dl > dt:first-child, #pageMembershipGuide .guide .content h2.heading:first-child, #pageMembershipGuide .guide .register .heading:first-child, #pageMembershipLogin .login .heading:first-child, #pageCommunity .community-wrap .limited .communityItemHeader:first-child,
#pageCommunity .community-wrap .limited .communityUrlHeader:first-child, .blogDetail .blog_title h2:first-child, .product-detail .item-desc .item-desc-custom .appsItemDetailCustomTag_heading:first-child, .review01 .review01__title:first-child, .ttl-h2:first-child {
  margin-top: 0;
}
@media only screen and (min-width: 768px) {
  #pageLaw h3, #privacy dl > dt, #pageMembershipGuide .guide .content h2.heading, #pageMembershipGuide .guide .register .heading, #pageMembershipLogin .login .heading, #pageCommunity .community-wrap .limited .communityItemHeader,
#pageCommunity .community-wrap .limited .communityUrlHeader, .blogDetail .blog_title h2, .product-detail .item-desc .item-desc-custom .appsItemDetailCustomTag_heading, .review01 .review01__title, .ttl-h2 {
    font-size: 24px;
    font-size: 2.4rem;
  }
}

#pageMembershipGuide .guide .register .link-wrapper button.link, #pageMembershipGuide .guide .mypage-link a.link, #pageMembershipLogin .login .link-wrapper a.link, .blog-back a, .contact-wrap input[type=submit], #inquiryCompleteSection a, .product-data .purchaseButton .purchaseButton__btn {
  display: inline-block;
  padding: 0 1.666em;
  font-size: 12px;
  font-size: 1.2rem;
  font-weight: bold;
  line-height: 4.166em;
  height: 4.166em;
  min-width: 25em;
  text-align: center;
  text-decoration: none;
  color: var(--font-clr2);
  background: var(--main-clr);
  border-radius: 0;
  opacity: 1 !important;
  transition: 0.5s opacity;
  box-sizing: border-box;
}
#pageMembershipGuide .guide .register .link-wrapper button.link:hover, #pageMembershipGuide .guide .mypage-link a.link:hover, #pageMembershipLogin .login .link-wrapper a.link:hover, .blog-back a:hover, .contact-wrap input[type=submit]:hover, #inquiryCompleteSection a:hover, .product-data .purchaseButton .purchaseButton__btn:hover {
  cursor: pointer;
  opacity: 0.5 !important;
  transition: 0.5s opacity;
}

.product-data #itemAttention .preOrder .preOrder__label, .product-data #itemAttention .communityLabel .communityLabel__title, .product-data #itemAttention .lottery .lottery__label, .product-data #itemAttention .takeout .takeout__label {
  display: inline-block;
  padding: 0.357em 0.571em;
  font-size: 14px !important;
  font-size: 1.4rem !important;
  font-weight: normal;
  color: #FFF;
  line-height: 1.4;
  background: #CCC;
}

html {
  font-size: 100%;
  font-size: 62.5%;
}

body {
  padding: 0;
  margin: 0;
  border: 0;
  letter-spacing: 0.075em;
  font-family: "Lato", "Yu Gothic Medium", "游ゴシック Medium", "YuGothic", "游ゴシック体", "ヒラギノ角ゴ", "メイリオ", sans-serif;
  font-feature-settings: "palt";
  color: var(--font-clr);
  background: #fff;
}

ul, li, dt, dd, p, h1, h2, h3, h4, h5, h6 {
  list-style: none;
  margin: 0;
  padding: 0;
}

p {
  font-size: 14px;
  font-size: 1.4rem;
}

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

:root {
  --main-clr:#E96182;
  --font-clr1:#725A60;
  --font-clr2:#fff;
  --bg-clr1:#FED6DD;
  --bg-clr2:#F5EEE6;
  --bg-clr3: #F5F5F5;
  --comingsoon: #90CF80;
  --community: #E7AF5B;
  --takeout: #AB99BD;
  --preOrder:#9a9fe2;
  --lottery:#79BFC3;
  --discount: #C36F6F;
  --scrollbar: 0;
}

.mincho, .mincho input, .mincho textarea, .mincho select, .mincho button {
  font-family: "Noto Serif JP", "Yu Mincho Medium", "游明朝 Medium", "YuMincho", "游明朝体", serif !important;
}
.gothic, .gothic input, .gothic textarea, .gothic select, .gothic button {
  font-family: "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", "YuGothic", "游ゴシック体" !important;
}
.red {
  color: var(--clr-red);
}

.content-wrap {
  margin: 0 auto;
}

#pageIndex {
  overflow-x: hidden;
}
#pageIndex main {
  display: flex;
  flex-direction: column;
}
#pageIndex main .mail-wrap {
  order: 10;
}

#pageIndex main > section:not(.mail-wrap):not(.top-mv):not(.top-concept1):not(.top-concept2):not(.top-closing),
#pageIndex main > .content-wrap {
  font-size: 14px;
  font-size: 1.4rem;
  position: relative;
  width: 100%;
  padding: 4.285em 1.428em;
}
#pageIndex main > section:not(.mail-wrap):not(.top-mv):not(.top-concept1):not(.top-concept2):not(.top-closing)::before,
#pageIndex main > .content-wrap::before {
  position: absolute;
  display: block;
  content: "";
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 1;
  z-index: -1;
}
#pageIndex main > section:not(.mail-wrap):not(.top-mv):not(.top-concept1):not(.top-concept2):not(.top-closing).even:not(.mail-wrap):not(.top-mv):not(.top-mv):not(.top-concept1):not(.top-concept2):not(.top-closing),
#pageIndex main > .content-wrap.even:not(.mail-wrap):not(.top-mv):not(.top-mv):not(.top-concept1):not(.top-concept2):not(.top-closing) {
  font-size: 14px;
  font-size: 1.4rem;
}
#pageIndex main > section:not(.mail-wrap):not(.top-mv):not(.top-concept1):not(.top-concept2):not(.top-closing).even::before,
#pageIndex main > .content-wrap.even::before {
  background: var(--bg-clr2);
}

.ttl-h2 {
  text-align: center;
  font-size: 24px;
  font-size: 2.4rem;
}
@media only screen and (min-width: 1200px) {
  .ttl-h2 {
    text-align: left;
    font-size: 36px;
    font-size: 3.6rem;
  }
}

a:has(.btn) {
  text-decoration: none;
  width: 100%;
  height: 100%;
  display: block;
  color: var(--font-clr);
}

.btn {
  display: block;
  position: relative;
  font-size: 14px;
  font-size: 1.4rem;
  border: 1px solid var(--font-clr);
  min-width: 12.142em;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  height: 3.214em;
  line-height: 3.214em;
  padding: 0 2.857em;
  margin: 2.142em auto 0 auto;
  text-align: center;
}
.btn:hover {
  cursor: pointer;
}
.btn a {
  text-decoration: none;
  width: 100%;
  height: 100%;
  display: block;
  color: var(--font-clr);
}
.btn svg {
  font-size: 14px;
  font-size: 1.4rem;
  position: absolute;
  transition: all 0.5s;
}
.btn.btn-more svg {
  stroke: currentColor;
}
.btn.btn-r {
  text-indent: -1.25em;
}
.btn.btn-r svg {
  font-size: 14px;
  font-size: 1.4rem;
  right: 1.071em;
  width: 0.857em;
  height: 0.857em;
  vertical-align: -0.215em;
  top: calc(50% - 0.428em);
  fill: currentColor;
}
.btn.btn-r:hover svg {
  font-size: 14px;
  font-size: 1.4rem;
  right: 0.714em;
  transition: all 0.5s;
}
.btn.btn-l {
  text-indent: 1em;
  color: var(--font-clr);
}
.btn.btn-l svg {
  font-size: 14px;
  font-size: 1.4rem;
  left: 1.285em;
  width: 1.142em;
  height: 1.142em;
  fill: currentColor;
  top: calc(50% - 0.5em);
}
.btn.btn-l:hover svg {
  transform: scale(1.05);
  transition: all 0.5s;
}

.dark-mode .even .btn.btn-l,
.dark-mode .even .btn.btn-r {
  color: var(--font-clr1);
}

.dark-mode .even .btn-more {
  border: 1px solid var(--font-clr1);
}

.type-a {
  border-radius: 100px !important;
}

.form-wrap {
  position: relative;
}
.form-wrap::after {
  display: block;
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  display: block;
  border: 1px solid var(--font-clr);
  border-radius: 2px;
  opacity: 0.2;
  z-index: -1;
  top: 0;
  left: 0;
}
.form-wrap::before {
  display: block;
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  display: block;
  z-index: -1;
  background: #fff;
  border-radius: 2px;
  top: 0;
  left: 0;
}
.form-wrap input {
  border: none;
}

.dark-mode .even .items-list > li .items-title,
.dark-mode .even .items-list > li .items-price .default,
.dark-mode .even .blog-ttl,
.dark-mode .even .blog-date,
.dark-mode .even .btn a, .dark-mode .even.top-info .top-info-list .top-info-data {
  color: var(--font-clr1);
}

.dark-mode .top-review:not(.even) .review-box {
  background: var(--main-clr);
}

:root {
  --header-bg: #fff;
}

.bodywrap {
  position: relative;
}

#headNav {
  position: -webkit-sticky;
  position: sticky;
  background: var(--header-bg);
  top: 0;
  z-index: 5;
}
#headNav::before {
  position: absolute;
  display: block;
  content: "";
  top: 0;
  left: 0;
  width: 100%;
  height: calc(100% + 1px);
  border-bottom: 1px solid var(--font-clr);
  opacity: 0.2;
  z-index: -1;
}

.head-wrap {
  display: flex;
  justify-content: space-between;
  align-items: center;
  min-height: 5em;
  font-size: 10px;
  font-size: 1rem;
}
.head-wrap a {
  text-decoration: none;
}
.head-wrap .head-menu,
.head-wrap .head-mypage,
.head-wrap #baseMenu .base,
.head-wrap .head-nav {
  display: none;
}
.head-wrap #btnOpen {
  order: 1;
}
.head-wrap .head-logo {
  order: 2;
}
.head-wrap .manual {
  order: 3;
}
.head-wrap .head-logo {
  text-align: center;
  overflow-wrap: break-word;
  word-break: break-word;
  font-weight: normal;
}
.head-wrap #btnOpen {
  font-size: 10px;
  font-size: 1rem;
  padding: 0 2em;
  text-align: center;
  justify-content: center;
}
.head-wrap #btnOpen:hover {
  cursor: pointer;
}
.head-wrap #btnOpen svg {
  fill: var(--font-clr);
}
.head-wrap #baseMenu {
  font-size: 10px;
  font-size: 1rem;
  padding: 0 2em;
}
.head-wrap #baseMenu li {
  display: block;
  text-align: center;
}
.head-wrap #baseMenu li svg {
  width: 2.1em;
  height: 2.1em;
  margin-top: -0.3em;
  fill: var(--font-clr);
}
.head-wrap #baseMenu .cart img {
  display: none;
}
.head-wrap #baseMenu .cart a {
  font-size: 10px;
  font-size: 1rem;
  height: 1.85em;
}
.head-wrap .manual .menu-mypage,
.head-wrap .manual .menu-search,
.head-wrap .manual .menu-cart span {
  display: none;
}
.head-wrap .manual a {
  width: 100%;
  height: 100%;
  display: block;
  color: var(--font-clr);
}
.head-wrap .manual a:hover {
  cursor: pointer;
}
@media only screen and (min-width: 1200px) {
  .head-wrap {
    font-size: 12px;
    font-size: 1.2rem;
    padding: 0 1.666em;
    gap: 0 1%;
    min-height: 6.666em;
  }
  .head-wrap .head-logo {
    width: 18%;
  }
  .head-wrap .head-menu {
    width: 60%;
  }
  .head-wrap .manual {
    min-width: 210px;
    width: 18%;
    display: flex;
    justify-content: flex-end;
  }
  .head-wrap .manual > * + * {
    position: relative;
  }
  .head-wrap .manual > * + *::before {
    font-size: 10px;
    font-size: 1rem;
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 1px;
    height: 3.4em;
    background: var(--font-clr);
    opacity: 0.2;
  }
  .head-wrap .manual .menu-mypage,
.head-wrap .manual .menu-search,
.head-wrap .manual .menu-cart {
    font-size: 10px;
    font-size: 1rem;
    display: block;
    width: 7em;
    height: 3.4em;
    text-align: center;
    color: var(--font-clr);
  }
  .head-wrap .manual .menu-mypage span,
.head-wrap .manual .menu-search span,
.head-wrap .manual .menu-cart span {
    font-size: 10px;
    font-size: 1rem;
    margin-top: 0.5em;
    display: block;
    text-align: center;
    color: var(--font-clr);
  }
  .head-wrap .manual .menu-mypage svg,
.head-wrap .manual .menu-search svg,
.head-wrap .manual .menu-cart svg {
    font-size: 10px;
    font-size: 1rem;
    width: 1.8em;
    height: 1.8em;
    fill: currentColor;
  }
  .head-wrap .manual .menu-search svg {
    stroke: var(--font-clr);
  }
  .head-wrap .head-menu,
.head-wrap .head-mypage {
    display: block;
  }
  .head-wrap #btnOpen,
.head-wrap #spNav,
.head-wrap .head-nav {
    display: none;
  }
  .head-wrap .head-logo {
    order: 1;
  }
  .head-wrap .manual {
    order: 3;
  }
  .head-wrap .head-nav {
    order: 2;
  }
  .head-wrap .head-logo {
    text-align: left;
  }
  .head-wrap .head-nav {
    display: block;
  }
  .head-wrap .head-menu {
    font-size: 14px;
    font-size: 1.4rem;
    display: flex;
    flex-wrap: wrap;
    gap: 0 2.142em;
    align-items: center;
    width: 100%;
    min-height: 5.714em;
    color: var(--font-clr);
    justify-content: center;
  }
  .head-wrap .head-menu li {
    font-size: 14px;
    font-size: 1.4rem;
  }
  .head-wrap .head-menu li:first-child {
    margin: 0;
  }
  .head-wrap .head-mypage {
    font-size: 10px;
    font-size: 1rem;
    margin-left: 2em;
  }
  .head-wrap #baseMenu {
    padding: 0;
  }
  .head-wrap #btnOpen {
    padding: 0;
  }
}
@media only screen and (min-width: 1400px) {
  .head-wrap {
    font-size: 12px;
    font-size: 1.2rem;
    padding: 0 2.5em 0 4.166em;
  }
}

.nc-int-icon-rotate {
  --animation-duration:0.4s;
}

.nc-int-icon {
  position: relative;
}

.nc-int-icon-b {
  position: absolute;
  top: calc(50% - 0.5em);
  left: calc(50% - 0.5em);
  opacity: 0;
}

.nc-int-icon-rotate .nc-int-icon-a,
.nc-int-icon-rotate .nc-int-icon-b {
  transition: opacity 0s calc(var(--animation-duration) / 2), transform var(--animation-duration);
  transform-origin: center center;
}

.nc-int-icon-rotate .nc-int-icon-b {
  transform: rotate(90deg) scale(0.6);
}

.nc-int-icon-state-b .nc-int-icon-a {
  opacity: 0;
}

.nc-int-icon-state-b .nc-int-icon-b {
  opacity: 1;
}

.nc-int-icon-rotate.nc-int-icon-state-b .nc-int-icon-a {
  transform: rotate(-90deg) scale(0.6);
}

.nc-int-icon-rotate.nc-int-icon-state-b .nc-int-icon-b {
  transform: rotate(0);
}

.head-logo {
  font-size: 10px;
  font-size: 1rem;
}
.head-logo .logoText {
  font-size: 21px;
  font-size: 2.1rem;
  word-break: break-all;
  line-height: 1.2;
}
@media only screen and (min-width: 768px) {
  .head-logo .logoText {
    font-size: 24px;
    font-size: 2.4rem;
  }
}
.head-logo .logoImage {
  max-width: 100%;
  max-height: 3em;
  height: auto;
  width: auto;
  font-size: 10px;
  font-size: 1rem;
}
@media only screen and (min-width: 768px) {
  .head-logo .logoImage {
    max-height: 6em;
  }
}

.overlay {
  display: block;
  width: 0;
  height: 100%;
  text-align: center;
  position: fixed;
  top: 0;
  z-index: 5;
  overflow-y: hidden;
  background-color: rgba(0, 0, 0, 0.5);
  opacity: 0;
  transition: opacity 0.5s 0s, width 0s 0.5s;
}
.overlay.is-active {
  width: 100%;
  opacity: 1;
  transition: opacity 0.5s;
}

#spNav {
  position: fixed;
  top: 0;
  height: 100vh;
  width: 100%;
  padding: 1.428em 1.428em 7.142em 1.428em;
  font-size: 14px;
  font-size: 1.4rem;
  background: var(--main-clr);
  z-index: 20;
  opacity: 0.95;
  overflow-y: scroll;
  overflow-x: hidden;
  display: none;
}
#spNav #spNavClose {
  font-size: 10px;
  font-size: 1rem;
  z-index: 20;
  color: #fff;
}
#spNav #spNavClose:hover {
  cursor: pointer;
}
#spNav nav {
  padding-bottom: 6em;
  color: var(--font-clr2);
}
#spNav nav a {
  color: var(--font-clr2);
}
#spNav.is-active {
  display: block;
  transition: 0.5s all;
}

.category-nav {
  display: none;
  width: 100%;
  background: var(--bg-clr2);
  position: relative;
}
.category-nav::before {
  position: absolute;
  display: block;
  content: "";
  top: 0;
  left: 0;
  width: 100%;
  height: calc(100% + 1px);
  border-bottom: 1px solid var(--font-clr);
  opacity: 0.2;
  z-index: -1;
}
@media only screen and (min-width: 768px) {
  .category-nav {
    display: block;
  }
}
.category-nav .category-nav-list {
  font-size: 14px;
  font-size: 1.4rem;
  display: flex;
  gap: 0.714em 2.857em;
  padding: 0.714em 0;
  justify-content: center;
  flex-wrap: wrap;
}
.category-nav .category-nav-list li {
  font-size: 14px;
  font-size: 1.4rem;
}
.category-nav .category-nav-list li a {
  width: 100%;
  height: 100%;
  text-decoration: none;
  color: var(--font-clr);
}

.nav-ttl {
  margin: 1.428em 0;
  font-size: 14px;
  font-size: 1.4rem;
}

.cat-ttl {
  font-size: 14px;
  font-size: 1.4rem;
  position: relative;
  margin-bottom: 0.714em;
  padding-left: 1.428em;
  line-height: 1.8;
  color: var(--font-clr2);
}
.cat-ttl a {
  text-decoration: none;
}
.cat-ttl svg {
  position: absolute;
  stroke: currentColor !important;
  width: 0.714em;
  height: 0.714em;
  margin: 0;
  top: 0.535em;
  left: 0;
}

.cat-list li, .nav-list li {
  position: relative;
  margin-bottom: 0.714em;
  padding-left: 1.428em;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.8;
}
.cat-list li svg, .nav-list li svg {
  position: absolute;
  stroke: var(--font-clr2) !important;
  width: 0.714em;
  height: 0.714em;
  margin: 0;
  top: 0.535em;
  left: 0;
}
.cat-list li a, .nav-list li a {
  text-decoration: none;
  display: block;
  width: 100%;
  height: 100%;
}

.side-mypage {
  margin-top: 1.428em;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.4;
}
.side-mypage a {
  text-decoration: none;
}

.nav-shop-info {
  position: relative;
  font-size: 14px;
  font-size: 1.4rem;
  margin: 1.428em 0;
  padding: 1.428em 0;
}
.nav-shop-info .nav-ttl {
  margin-top: 0;
}
.nav-shop-info::before {
  content: "";
  position: absolute;
  display: block;
  width: calc(100% + 2.857em);
  height: 0;
  top: 0;
  left: -1.429em;
  border-top: solid 1px;
  border-color: var(--font-clr2);
  opacity: 0.2;
}

.membership-menu {
  font-size: 12px;
  font-size: 1.2rem;
  margin: 0 -1.667em;
  padding: 1.666em 0;
  position: relative;
}
.membership-menu::before {
  content: "";
  position: absolute;
  display: block;
  width: 100%;
  height: 0;
  bottom: 0;
  border-top: solid 1px;
  border-color: var(--font-clr2);
  opacity: 0.2;
}
.membership-menu ul {
  font-size: 12px;
  font-size: 1.2rem;
  margin: 0 1.666em;
  display: flex;
  flex-wrap: wrap;
  gap: 3%;
}
.membership-menu ul li {
  font-size: 12px;
  font-size: 1.2rem;
  width: 48.5%;
  background: var(--font-clr2);
  height: 2.5em;
}
.membership-menu ul li a {
  font-size: 12px;
  font-size: 1.2rem;
  display: block;
  width: 100%;
  height: 2.5em;
  line-height: 2.5em;
  color: var(--main-clr);
  text-decoration: none;
  text-align: center;
}
.membership-menu ul li svg {
  font-size: 12px;
  font-size: 1.2rem;
  width: 1.25em;
  height: 1.25em;
  margin-right: 0.416em;
  margin-top: -0.167em;
  display: inline-block;
}

.search-wrap {
  position: relative;
  font-size: 14px;
  font-size: 1.4rem;
  border: 1px solid var(--font-clr2);
  width: 100%;
  height: 2.857em;
  margin: 2.142em 0 3.571em 0;
}
.search-wrap::before {
  content: "";
  position: absolute;
  display: block;
  width: 100%;
  height: 100%;
  background: var(--font-clr2);
  opacity: 0.15;
  z-index: -1;
}
.search-wrap::after {
  display: block;
  content: "";
  border-bottom: 1px solid #fff;
  margin: 0 -2em;
  padding-bottom: 30px;
  opacity: 0.3;
  z-index: -1;
}
.search-wrap input {
  font-size: 14px;
  font-size: 1.4rem;
  width: 100%;
  height: 2.857em;
  -webkit-appearance: none;
  -moz-appearance: none;
       appearance: none;
  box-shadow: none !important;
  color: var(--font-clr2) !important;
  border: none !important;
  background: transparent !important;
  padding: 0 0.5em;
}
.search-wrap input:focus:not(:focus-visible) {
  outline: 0;
}
.search-wrap input::-moz-placeholder {
  color: var(--font-clr2);
  font-weight: normal;
}
.search-wrap input::placeholder {
  color: var(--font-clr2);
  font-weight: normal;
}
.search-wrap input:-webkit-autofill {
  background: var(--font-clr2);
}
.search-wrap button {
  font-size: 10px;
  font-size: 1rem;
  position: relative;
  color: var(--font-clr2);
  background: transparent;
  z-index: 100;
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  border: none;
}
.search-wrap button::-moz-placeholder {
  color: var(--font-clr2);
}
.search-wrap button::placeholder {
  color: var(--font-clr2);
}
.search-wrap button svg {
  font-size: 14px;
  font-size: 1.4rem;
  display: block;
  fill: none;
  stroke: var(--font-clr2);
  width: 1.571em;
}

.app-info-wrap {
  font-size: 10px;
  font-size: 1rem;
}
.app-info-wrap a {
  text-decoration: none;
}
.app-info-wrap .informationBannerArrow {
  font-size: 14px;
  font-size: 1.4rem;
}
.app-info-wrap .informationBannerIcon i {
  font-size: 18px;
  font-size: 1.8rem;
}
.app-info-wrap button:hover {
  cursor: pointer;
}

.open-btn1 {
  position: absolute;
  top: 10px;
  right: 10px;
  background-size: 20px 20px;
  width: 50px;
  height: 50px;
  cursor: pointer;
}

.open-btn1.btnactive {
  background-size: 18px 18px;
}

/*========= 検索窓の設定 ===============*/
/*==検索窓背景のエリア*/
#search-wrap {
  position: absolute; /*絶対配置にして*/
  top: 150px;
  right: 20px;
  z-index: -1; /*最背面に設定*/
  opacity: 0; /*透過を0に*/
  width: 0; /*横幅は0に*/
  transition: all 0.4s; /*transitionを使ってスムースに現れる*/
  border-radius: 5px;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.2);
}

/*ボタンクリック後、JSで#search-wrapに panelactive クラスが付与された後の見た目*/
#search-wrap.panelactive {
  opacity: 1; /*不透明に変更*/
  z-index: 20;
  width: 280px;
  padding: 20px;
  top: 60px;
  background: #fff;
}

/*==検索窓*/
#search-wrap #searchform {
  position: relative;
  display: none; /*検索窓は、はじめ非表示*/
}

/*ボタンクリック後、JSで#search-wrapに panelactive クラスが付与された後*/
#search-wrap.panelactive #searchform {
  display: block; /*検索窓を表示*/
}

/*==検索フォームの設定*/
/*==テキスト入力とボタンinput共通設定*/
#search-wrap input {
  -webkit-appearance: none; /*SafariやChromeのデフォルトの設定を無効*/
  outline: none;
  cursor: pointer; /*カーソルを指マークに*/
  color: #666;
}

/*テキスト入力input設定*/
#search-wrap input[type=text] {
  width: 100%;
  border: none;
  border-bottom: 1px solid var(--font-clr);
  transition: all 0.5s;
  letter-spacing: 0.05em;
  height: 46px;
  padding: 10px;
  margin-bottom: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

/*テキスト入力inputにフォーカスされたら*/
#search-wrap input[type=text]:focus {
  background: #ebeaea; /*背景色を付ける*/
}

/*ボタンinput設定*/
#search-wrap input[type=submit] {
  position: absolute;
  background: transparent;
  border: none;
}

#search-wrap label {
  position: absolute;
  top: calc(50% - 10px);
  right: 15px;
}

#search-wrap svg {
  width: 20px;
  height: 20px;
  stroke: var(--font-clr);
}

.dark-mode #search-wrap svg {
  stroke: var(--font-clr1);
}

#overlay {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  background-color: rgba(0, 0, 0, 0.3);
  z-index: 1; /* Ensure it's above other elements */
  transition: all 1s;
}

.show {
  display: block !important;
}

#x_startMessenger {
  transition: all 0.5s;
}

.dark-mode #headNav {
  background: #434343;
}
.dark-mode .head-wrap .head-logo .logoText {
  color: var(--font-clr);
}
.dark-mode .category-nav .category-nav-list li a {
  color: var(--font-clr1);
}

#footNav {
  font-size: 10px;
  font-size: 1rem;
  color: var(--font-clr);
}

.foot-sns {
  font-size: 10px;
  font-size: 1rem;
  display: flex;
  justify-content: center;
  padding: 5em 1em;
  gap: 2em 0;
  flex-wrap: wrap;
  background: var(--main-clr);
}
.foot-sns * + * {
  margin-left: 2.5em;
}
.foot-sns li a {
  font-size: 10px;
  font-size: 1rem;
  width: 3.5em;
  height: 3.5em;
  display: flex;
  justify-content: center;
  align-items: center;
  background: var(--bg-clr2);
  border-radius: 50%;
}
.foot-sns li svg {
  fill: initial;
  font-size: 10px;
  font-size: 1rem;
  width: 2.2em;
  height: 2.2em;
}

.foot-menu {
  font-size: 14px;
  font-size: 1.4rem;
  position: relative;
  padding: 4.285em 0 calc(4.285em - 1em) 0;
  background: var(--main-clr);
}
.foot-menu::before {
  content: "";
  position: absolute;
  top: 0;
  display: block;
  width: 100%;
  height: 0;
  border-top: solid 1px;
  border-color: var(--font-clr2);
  opacity: 0.2;
}
.foot-menu li {
  font-size: 14px;
  font-size: 1.4rem;
  margin-bottom: 1em;
  text-align: center;
}
.foot-menu li svg {
  font-size: 14px;
  font-size: 1.4rem;
  width: 1.785em;
  height: 1.785em;
  vertical-align: middle;
  margin-top: -0.215em;
}
.foot-menu a {
  text-decoration: none;
  color: var(--font-clr2);
}
@media only screen and (min-width: 768px) {
  .foot-menu {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
  }
  .foot-menu * + * {
    font-size: 14px;
    font-size: 1.4rem;
    margin-left: 3.571em;
  }
}

.foot-wrap {
  font-size: 10px;
  font-size: 1rem;
  padding: 3em 0;
}
.foot-wrap.message-app, .foot-wrap.recaptcha {
  font-size: 10px;
  font-size: 1rem;
  padding: 3em 0 10em 0;
}
.foot-wrap > * + * {
  font-size: 10px;
  font-size: 1rem;
  margin-top: 3em;
}
@media only screen and (min-width: 768px) {
  .foot-wrap {
    font-size: 10px;
    font-size: 1rem;
    display: flex;
    justify-content: space-between;
    padding: 3em;
  }
  .foot-wrap.message-app {
    font-size: 10px;
    font-size: 1rem;
    padding: 3em 10em 3em 3em;
  }
  .foot-wrap.recaptcha {
    font-size: 10px;
    font-size: 1rem;
    padding: 3em;
  }
  .foot-wrap .foot-left,
.foot-wrap .foot-right {
    display: flex;
    align-items: center;
  }
  .foot-wrap .foot-left {
    font-size: 10px;
    font-size: 1rem;
    flex-wrap: wrap;
    gap: 3em 3em;
  }
  .foot-wrap .foot-copy,
.foot-wrap .foot-setting,
.foot-wrap > * + * {
    margin: 0;
  }
  .foot-wrap .foot-copy small {
    text-wrap: nowrap;
    margin: 0;
  }
}
.foot-wrap .head-logo {
  font-size: 10px;
  font-size: 1rem;
  text-align: center;
  padding: 0 3em;
}
.foot-wrap .head-logo a {
  text-decoration: none;
}
@media only screen and (min-width: 768px) {
  .foot-wrap .head-logo {
    font-size: 10px;
    font-size: 1rem;
    text-align: left;
    padding: 0 3em 0 0;
  }
}

.foot-last {
  font-size: 10px;
  font-size: 1rem;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 3em;
}

.foot-setting {
  font-size: 10px;
  font-size: 1rem;
  display: flex;
  align-items: center;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: 3em auto;
}
.foot-setting #i18 {
  display: flex;
  justify-content: center;
}
.foot-setting #i18::before, .foot-setting #i18::after {
  content: normal;
}
.foot-setting .lang,
.foot-setting .currency {
  position: relative;
  min-width: 10em;
  font-size: 14px;
  font-size: 1.4rem;
}
.foot-setting .lang * + *,
.foot-setting .currency * + * {
  font-size: 14px;
  font-size: 1.4rem;
  margin-left: 0.714em;
}
.foot-setting .lang::before,
.foot-setting .currency::before {
  content: "";
  border-left: 0.285em solid transparent;
  border-right: 0.285em solid transparent;
  border-top: 0.357em solid var(--font-clr1);
  position: absolute;
  right: 0.642em;
  top: 50%;
  transform: translateY(-50%);
  pointer-events: none;
  z-index: 1;
}
.foot-setting select {
  border: none;
  width: 100%;
  height: auto !important;
  margin: 0 !important;
  padding: 0.312em 1.562em 0.312em 0.312em !important;
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.4;
  color: var(--font-clr);
  -webkit-appearance: none;
  -moz-appearance: none;
       appearance: none;
  background: transparent;
  border-radius: 2px;
}
.foot-setting select option {
  padding: 0.312em 1.562em 0.312em 0.312em !important;
  background: #fff;
  color: var(--font-clr);
}

.foot-icon ul {
  display: flex;
  justify-content: center;
}
.foot-icon .cart {
  display: none;
}
.foot-icon .base {
  display: inline-block;
  font-size: 10px;
  font-size: 1rem;
  padding: 0.9em;
}
.foot-icon .base img {
  height: 2em;
}

.dark-mode .base img {
  filter: brightness(100);
}

.invert-logo {
  filter: brightness(0) invert(1);
}

.base a:has(.bgimage-logo) {
  width: 3.5em;
  height: 3.5em;
  display: flex;
  justify-content: center;
  align-items: center;
  background: rgba(255, 255, 255, 0.8);
  border-radius: 50%;
}

.foot-copy {
  font-size: 10px;
  font-size: 1rem;
  margin-top: 3em;
}
.foot-copy small {
  display: block;
  font-size: 14px;
  font-size: 1.4rem;
  margin-left: 1.071em;
  text-align: center;
  color: var(--font-clr);
}

.dark-mode .foot-setting .form-wrap {
  border: 1px solid var(--bg-clr2);
  color: var(--main-clr);
}
.dark-mode .foot-setting .form-wrap select,
.dark-mode .foot-setting .form-wrap option {
  color: var(--bg-clr2);
  background: rgba(0, 0, 0, 0.8);
}
.dark-mode .foot-setting .lang::before,
.dark-mode .foot-setting .currency::before {
  border-top: 0.357em solid var(--bg-clr2);
}
.dark-mode .foot-left .logoText {
  color: var(--font-clr) !important;
}

.is-app-message {
  display: block;
  font-size: 10px;
  font-size: 1rem;
  height: 10em;
}
@media only screen and (min-width: 479px) {
  .is-app-message {
    display: inline;
    height: 0;
  }
}

a {
  opacity: 1;
  transition: 0.5s opacity;
}

html, body {
  scroll-padding-top: 50px;
}

.logo-inria, .ff-inria {
  font-family: "Inria Serif", "Noto Serif JP", serif !important;
  font-weight: 400 !important;
  font-style: normal;
}

.logo-jost, .ff-jost {
  font-family: "Jost", "Noto Serif JP", serif !important;
  font-weight: 500 !important;
  font-style: normal;
}

.logo-rale, .ff-rale {
  font-family: "Raleway", "Noto Serif JP", serif !important;
  font-weight: 200 !important;
  font-style: normal;
}

.logo-sta, .ff-sta {
  font-family: "Staatliches", "IBM Plex Sans JP", sans-serif !important;
  font-weight: 400 !important;
  font-style: normal;
}

.ff-zen, .logo-zen {
  font-family: "Zen Tokyo Zoo", system-ui;
  font-weight: 400 !important;
}

.ff-grav, .logo-grav {
  font-family: "Gravitas One", serif !important;
  font-weight: 400;
  font-style: normal;
}

.ff-nserif, .logo-nserif {
  font-family: "Noto Serif JP", serif;
  font-weight: 400 !important;
  font-style: normal;
}

.ff-nsans, .logo-nsans {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400 !important;
  font-style: normal;
}

.ff-mpr, .logo-mpr {
  font-family: "M PLUS 1", "Noto Sans", sans-serif !important;
  font-weight: 600 !important;
}

.ff-saw, .logo-saw {
  font-family: "Sawarabi Mincho", "Noto Serif JP", serif !important;
  font-weight: 400 !important;
}

.ff-biz, .logo-biz {
  font-family: "M PLUS Rounded 1c", "Noto Sans", sans-serif !important;
  font-weight: 700 !important;
}

.ff-play, .logo-play {
  font-family: "Playball", "Noto Serif JP", serif !important;
  font-weight: 400;
  font-style: normal;
}

.ttl-h1 {
  color: var(--font-clr);
}

.ttl-h2 {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin-inline: auto;
  color: var(--font-clr);
}
.dark-mode .ttl-h2 {
  color: var(--font-clr);
}
.dark-mode .even .ttl-h2 {
  color: var(--font-clr1);
}

.bread-wrap {
  font-size: 12px;
  font-size: 1.2rem;
  overflow-x: auto;
  padding: 0;
  position: relative;
}
.bread-wrap::-webkit-scrollbar {
  display: none;
}
.bread-wrap::before {
  content: "";
  position: absolute;
  top: 0;
  display: block;
  width: 100%;
  height: 100%;
  border-bottom: solid 1px;
  border-color: var(--font-clr);
  opacity: 0.2;
  z-index: -1;
}

.breadcrumb {
  font-size: 10px;
  font-size: 1rem;
  padding: 1em !important;
  color: var(--font-clr);
}
.breadcrumb li {
  position: relative;
  display: inline-block;
  display: inline;
  margin-right: 0.714em;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.4;
}
.breadcrumb li + li {
  margin: 0 0 0 1.428em;
}
.breadcrumb li + li::before {
  content: "";
  position: absolute;
  left: -1.429em;
  top: 0.642em;
  display: block;
  width: 0.428em;
  height: 0.428em;
  border-top: solid 1px;
  border-left: solid 1px;
  border-color: var(--font-clr);
  transform: rotate(135deg);
}
.breadcrumb a {
  display: inline;
  text-decoration: none;
}
@media only screen and (min-width: 768px) {
  .breadcrumb {
    padding: 0 0.5em 0 2em;
  }
}
@media only screen and (min-width: 1200px) {
  .breadcrumb {
    font-size: 10px;
    font-size: 1rem;
    width: 120em;
    margin-inline: 0;
    margin: auto;
    padding: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
}

#notShop {
  font-size: 10px;
  font-size: 1rem;
  text-align: center;
  margin: 0 auto;
  width: calc(100% - 15em);
  margin: 0 auto 4em auto;
  text-align: center;
}
#pageIndex #notShop {
  font-size: 10px;
  font-size: 1rem;
  margin: -4em auto 2.5em auto;
}
#notShop p {
  font-size: 14px;
  font-size: 1.4rem;
  color: var(--clr-red);
  border: 1px solid var(--clr-red);
  border-radius: 3px;
  padding: 0.714em 1.071em;
  display: inline-block;
}

@media only screen and (min-width: 1200px) {
  #notShop {
    font-size: 10px;
    font-size: 1rem;
    text-align: center;
    width: 100em;
    margin: 0 auto 6em auto;
    text-align: center;
  }
  #pageIndex #notShop {
    font-size: 10px;
    font-size: 1rem;
    margin: -8.5em auto 4em auto;
  }
}
.cart-badge {
  display: block !important;
  position: relative;
}

.cart-qty {
  font-size: 10px;
  font-size: 1rem;
  position: absolute;
  top: -2.5em;
  right: -1em;
  min-width: 1.6em;
  background: var(--main-clr);
  border-radius: 50%;
  color: #fff;
  font-weight: bold;
  line-height: 1.6em;
  height: 1.6em;
  text-align: center;
}

@media only screen and (min-width: 1200px) {
  .cart-qty {
    font-size: 10px;
    font-size: 1rem;
    top: -2.5em;
    right: 1.2em;
  }
}
.community #svg-mypage {
  stroke: var(--font-clr2);
}

#svg-pre {
  stroke: var(--font-clr2);
}

#svg-takeout {
  fill: var(--font-clr2);
}

#svg-lottery {
  stroke: var(--font-clr2);
}

#svg-comingsoon {
  stroke: var(--font-clr2);
}

.content-wrap .items-wrap {
  font-size: 14px;
  font-size: 1.4rem;
  margin: 0 auto;
}
@media only screen and (min-width: 768px) {
  .content-wrap {
    font-size: 14px;
    font-size: 1.4rem;
  }
}
@media only screen and (min-width: 1200px) {
  .content-wrap .items-wrap {
    font-size: 14px;
    font-size: 1.4rem;
    margin: 0 auto;
    width: 85.714em;
  }
}
.content-wrap .ttl-h2 {
  text-align: center;
}

.items-list.type-a .items-img {
  border-radius: 5px;
}

.items-list > li {
  position: relative;
  font-size: 10px;
  font-size: 1rem;
  margin-bottom: 3em;
}
.items-list > li a {
  display: block;
  text-decoration: none;
}
.items-list > li .label_image {
  font-size: 10px;
  font-size: 1rem;
  position: absolute;
  left: -0.5em;
  top: -0.5em;
  width: 5em;
  z-index: 1;
}
.items-list > li .items-img {
  width: 100%;
  height: auto;
  overflow: hidden;
  position: relative;
}
.items-list > li .items-img img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  position: absolute;
  top: 0;
  left: 0;
}
.items-list > li .items-img .items-soldout {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.25);
  display: grid;
  place-items: center;
}
.items-list > li .items-img .items-soldout::after {
  font-size: 14px;
  font-size: 1.4rem;
  color: #fff;
  content: "SOLD OUT";
}
.img-sq .items-list > li .items-img {
  aspect-ratio: 1/1;
}
.img-la-gold .items-list > li .items-img {
  aspect-ratio: 1.618/1;
}
.img-la-screen .items-list > li .items-img {
  aspect-ratio: 4/3;
}
.img-pt-gold .items-list > li .items-img {
  aspect-ratio: 1/1.618;
}
.img-pt-screen .items-list > li .items-img {
  aspect-ratio: 3/4;
}
.items-list > li .items-title {
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 1.4;
  word-break: break-all;
  color: var(--font-clr);
  margin-top: 0.555em;
}
@media only screen and (min-width: 768px) {
  .items-list > li .items-title {
    font-size: 24px;
    font-size: 2.4rem;
    margin-top: 0.833em;
  }
}
@media only screen and (min-width: 1200px) {
  .items-list > li .items-title {
    font-size: 32px;
    font-size: 3.2rem;
    margin-top: 0.937em;
  }
}
.items-list > li .items-price {
  font-size: 18px;
  font-size: 1.8rem;
  margin-top: 1.111em;
}
.items-list > li .items-price .default {
  color: var(--font-clr);
}
.items-list > li .items-price .discount {
  color: var(--clr-red);
}
.items-list > li .items-price .ratio {
  padding: 0.083em 0.833em 0.166em 0.833em;
  margin-left: 0.416em;
  font-size: 12px;
  font-size: 1.2rem;
  color: var(--font-clr2);
  border-radius: 2px;
  background: var(--discount);
  vertical-align: 0.166em;
}
@media only screen and (min-width: 1200px) {
  .items-list > li .items-price {
    font-size: 24px;
    font-size: 2.4rem;
    margin-top: 1.25em;
  }
}
.items-list > li .items-status {
  margin-top: 1em;
  font-size: 10px;
  font-size: 1rem;
}
.items-list > li .items-status li {
  display: block;
  padding: 0.416em;
  font-size: 12px;
  font-size: 1.2rem;
  color: #FFF;
  text-align: center;
  border-radius: 2px;
  margin-bottom: 0.416em;
}
.items-list > li .items-status svg {
  width: 15px;
  height: 15px;
  margin: 0 5px 0 2px;
}
.items-list > li .items-status .discount {
  background: var(--discount);
}
.items-list > li .items-status .community {
  background: var(--community);
}
.items-list > li .items-status .coming-soon {
  background: var(--comingsoon);
}
.items-list > li .items-status .takeout {
  background: var(--takeout);
}
.items-list > li .items-status .pre-order {
  background: var(--preOrder);
}
.items-list > li .items-status .lottery {
  background: var(--lottery);
}

.items-list {
  font-size: 10px;
  font-size: 1rem;
  text-align: left;
  margin: 2em auto 0 auto;
}
@media only screen and (min-width: 768px) {
  .items-list {
    font-size: 10px;
    font-size: 1rem;
    margin: 4em auto 0 auto;
  }
}
@media only screen and (min-width: 1200px) {
  .items-list {
    font-size: 10px;
    font-size: 1rem;
    margin: 6em auto 0 auto;
  }
}
.items-list, .items-list.sp-item-2 {
  display: flex;
  flex-wrap: wrap;
  gap: 2em;
}
.items-list > li, .items-list.sp-item-2 > li {
  width: calc(50% - 1em);
}
.items-list .label_image, .items-list.sp-item-2 .label_image {
  font-size: 10px;
  font-size: 1rem;
  left: -0.75em;
  top: -0.75em;
  width: 4em;
}
@media only screen and (min-width: 768px) {
  .items-list, .items-list.sp-item-2 {
    font-size: 10px;
    font-size: 1rem;
    gap: 4em;
    margin: 4em 2em;
  }
  .items-list > li, .items-list.sp-item-2 > li {
    font-size: 10px;
    font-size: 1rem;
    width: calc(50% - 2em);
  }
}
@media only screen and (min-width: 1200px) {
  .items-list > li, .items-list.pc-item-1 > li {
    font-size: 10px;
    font-size: 1rem;
    width: 74.2em;
    margin: 0 auto 12em auto;
  }
  .items-list.pc-item-2 {
    font-size: 10px;
    font-size: 1rem;
    display: flex;
    flex-wrap: wrap;
    margin: 8em 0;
    gap: 0 6em;
  }
  .items-list.pc-item-2 > li {
    font-size: 10px;
    font-size: 1rem;
    width: calc(50% - 3em);
    margin: 0 0 6em 0;
  }
  .items-list.pc-item-3 {
    font-size: 10px;
    font-size: 1rem;
    display: flex;
    flex-wrap: wrap;
    margin: 8em 0;
    gap: 0 4.5em;
  }
  .items-list.pc-item-3 > li {
    font-size: 10px;
    font-size: 1rem;
    width: calc(33.3333333333% - 3em);
    margin: 0 0 6em 0;
  }
}
.items-list > li {
  position: relative;
}

.effect-fade .items-img:hover img {
  transform: scale(1.1, 1.1);
  transition: 0.5s all;
}

.item-related .items-list {
  grid-template-columns: repeat(1, 1fr);
}
@media only screen and (min-width: 768px) {
  .item-related .items-list {
    grid-template-columns: repeat(3, 1fr);
  }
  .item-related .items-list .items-title {
    font-size: 18px;
    font-size: 1.8rem;
  }
}
@media only screen and (min-width: 1200px) {
  .item-related .items-list .items-title {
    font-size: 24px;
    font-size: 2.4rem;
  }
}

.items-load {
  height: 1.5em;
  font-size: 10px;
  font-size: 1rem;
}

.loader,
.loader:before,
.loader:after {
  border-radius: 50%;
  width: 1.5em;
  height: 1.5em;
  -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 {
  position: relative;
  margin: 0 auto;
  color: var(--font-clr1);
  font-size: 10px;
  font-size: 1rem;
  text-indent: -9999em;
  transform: translateZ(0);
  -webkit-animation-delay: -0.16s;
  animation-delay: -0.16s;
  transform: translateY(-2.6em);
  opacity: 0.5;
}

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

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

.loader:after {
  left: 2.5em;
}

@-webkit-keyframes load7 {
  0%, 80%, 100% {
    box-shadow: 0 2.5em 0 -1.3em;
  }
  40% {
    box-shadow: 0 2.5em 0 0;
  }
}
@keyframes load7 {
  0%, 80%, 100% {
    box-shadow: 0 2.5em 0 -1.3em;
  }
  40% {
    box-shadow: 0 2.5em 0 0;
  }
}
.mail-txt {
  font-size: 12px;
  font-size: 1.2rem;
  color: var(--font-clr);
}
@media only screen and (min-width: 768px) {
  .mail-txt {
    font-size: 14px;
    font-size: 1.4rem;
  }
}

.mail-wrap {
  font-size: 10px;
  font-size: 1rem;
  margin: 3em 0;
  padding: 6em 2em;
  background: var(--bg-clr3);
  text-align: center;
}
@media only screen and (min-width: 768px) {
  .mail-wrap {
    font-size: 10px;
    font-size: 1rem;
    margin: 6em 0;
  }
}
@media only screen and (min-width: 1200px) {
  .mail-wrap {
    font-size: 10px;
    font-size: 1rem;
    margin: 10em 0;
  }
}
.mail-wrap .ttl-h2 {
  text-align: center !important;
}
@media only screen and (min-width: 768px) {
  .mail-wrap .ttl-h2 {
    font-size: 24px;
    font-size: 2.4rem;
  }
}
.mail-wrap > * + * {
  font-size: 12px;
  font-size: 1.2rem;
  margin-top: 2.5em;
}
.mail-wrap .mailMagazineSubscribe_form {
  position: relative;
}
@media only screen and (min-width: 768px) {
  .mail-wrap .mailMagazineSubscribe_form {
    font-size: 10px;
    font-size: 1rem;
    width: 50em;
    text-align: center;
    margin: 0 auto;
  }
}
.mail-wrap .mailMagazineSubscribe_form::before, .mail-wrap .mailMagazineSubscribe_form::after {
  font-size: 12px;
  font-size: 1.2rem;
  content: "";
  display: block;
  position: absolute;
  height: 2.916em;
  width: calc(100% - 7.416em);
}
.mail-wrap .mailMagazineSubscribe_form::after {
  border: 1px solid var(--font-clr);
  box-sizing: border-box;
  opacity: 0.3;
  z-index: 2;
  pointer-events: none;
  top: 0;
}
.mail-wrap .mailMagazineSubscribe_form::before {
  background: #fff;
}
.mail-wrap div.x_mailMagazineSubscribe_field {
  display: flex;
  font-size: 12px;
  font-size: 1.2rem;
  gap: 0.833em;
}
.mail-wrap button.x_mailMagazineSubscribe_submit {
  font-size: 12px;
  font-size: 1.2rem;
  height: 2.916em;
  width: 6.666em;
  text-align: center;
  color: #FFF;
  background: var(--main-clr);
  border: 0;
  cursor: pointer;
  outline: none;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}
.mail-wrap input.mailMagazineSubscribe_input {
  font-size: 12px;
  font-size: 1.2rem;
  position: relative;
  height: 2.75em;
  width: calc(100% - 7.5em);
  color: var(--font-clr);
  background: transparent;
  border: none;
  text-indent: 0.5em;
  z-index: 1;
}
.mail-wrap input.mailMagazineSubscribe_input:focus {
  outline: none; /* フォーカス時の枠を非表示にする */
}
.mail-wrap input.mailMagazineSubscribe_input:-webkit-autofill {
  box-shadow: 0 0 0px 1000px transparent inset !important;
  background-color: transparent !important;
}

.mailMagazineSubscribe_confirm {
  color: var(--item-clr);
}

.dark-mode .mail-wrap input.mailMagazineSubscribe_input {
  color: var(--font-clr1);
}
.dark-mode .mail-wrap .mailMagazineSubscribe_form::after {
  border: 1px solid var(--font-clr1);
  opacity: 0.3;
}
.dark-mode .mail-wrap .mail-txt,
.dark-mode .mail-wrap .ttl-h2 {
  color: var(--font-clr1);
}

.top-mv-slide {
  font-size: 10px;
  font-size: 1rem;
}
.top-mv-slide img {
  width: 100%;
}

#topMvSlider {
  opacity: 0;
  transition: none;
}

.dots-wrap {
  font-size: 10px;
  font-size: 1rem;
  display: flex;
  justify-content: center;
  margin: 2em 0;
}

.dots-wrap li {
  font-size: 10px;
  font-size: 1rem;
  width: 4em;
  height: 0.4em;
  margin: 0 0.5em;
  background: var(--bg-clr1);
  cursor: pointer;
}

.dots-wrap li button {
  display: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  outline: none;
  padding: 0;
  border: none;
  background-color: transparent;
}

.dots-wrap li:hover,
.dots-wrap li.slick-active {
  background: var(--main-clr);
}

.mv-slider-controls {
  font-size: 14px;
  font-size: 1.4rem;
  width: calc(100% - 1.428em);
  height: 1.428em;
  margin: 1.428em auto;
  position: relative;
  opacity: 0.75;
}
@media only screen and (min-width: 1200px) {
  .mv-slider-controls {
    font-size: 14px;
    font-size: 1.4rem;
    width: 85.714em;
    height: 2.857em;
    margin: 3.214em auto;
  }
}
.mv-slider-controls .slick-arrow {
  color: var(--font-clr);
}
.mv-slider-controls .slick-arrow::before {
  display: none;
}
.mv-slider-controls .slick-arrow.slick-prev, .mv-slider-controls .slick-arrow.slick-next {
  webkit-transform: none;
  transform: none;
}
.mv-slider-controls .slick-arrow.slick-prev {
  font-size: 14px;
  font-size: 1.4rem;
  left: auto;
  right: 2.142em;
  top: auto;
}
.mv-slider-controls .slick-arrow.slick-next {
  right: 0;
  top: auto;
}
.mv-slider-controls .slick-arrow svg {
  width: 20px;
  height: 20px;
}
@media only screen and (min-width: 1200px) {
  .mv-slider-controls .slick-arrow.slick-prev {
    font-size: 14px;
    font-size: 1.4rem;
    left: auto;
    right: 5.714em;
  }
  .mv-slider-controls .slick-arrow.slick-next {
    font-size: 14px;
    font-size: 1.4rem;
    left: auto;
    right: 2.142em;
  }
  .mv-slider-controls .slick-arrow svg {
    width: 34px;
    height: 34px;
  }
}

.dark-mode .mv-slider-controls .slick-arrow {
  color: var(--font-clr);
}

:root {
  --viewWidth: 100vw;
}

/*カラー設定*/
.top-concept1,
.top-closing {
  background-color: var(--main-clr);
}
.top-concept1 .ttl,
.top-concept1 .text,
.top-closing .ttl,
.top-closing .text {
  color: #fff;
}
.top-concept1 .btn,
.top-closing .btn {
  border: none;
}
.top-concept1 .btn-r,
.top-concept1 .btn-l,
.top-closing .btn-r,
.top-closing .btn-l {
  background: #fff;
}
.top-concept1 .btn-r,
.top-concept1 .btn-l,
.top-concept1 .btn-r a,
.top-concept1 .btn-l a,
.top-closing .btn-r,
.top-closing .btn-l,
.top-closing .btn-r a,
.top-closing .btn-l a {
  color: var(--main-clr) !important;
}

.top-concept2 {
  background-color: var(--bg-clr1);
}
.top-concept2 .ttl,
.top-concept2 .text {
  color: var(--font-clr);
}
.top-concept2.bg-img .ttl,
.top-concept2.bg-img .text {
  color: #fff;
}
.top-concept2 .btn {
  border: none;
}
.top-concept2 .btn-r,
.top-concept2 .btn-l {
  background: var(--main-clr);
}
.top-concept2 .btn-r,
.top-concept2 .btn-l,
.top-concept2 .btn-r a,
.top-concept2 .btn-l a {
  color: #fff !important;
}

.bg-color {
  display: flex;
  flex-direction: column;
}
.bg-color .bg {
  height: 200px;
  background-size: cover;
}
.bg-color .concept-detail::before {
  display: none;
}

.bg-img {
  position: relative;
  background-color: transparent;
  overflow: hidden;
  min-height: 200px;
}
.bg-img .bg {
  position: absolute;
  display: block;
  top: 0;
  left: 0;
  width: 100%;
  height: 150%;
  background-size: cover;
  background-position: center;
  will-change: transform;
  z-index: -1;
}

.concept-detail {
  font-size: 12px;
  font-size: 1.2rem;
  padding: 3.333em 1.666em;
  width: 100%;
  text-align: center;
  margin-inline: auto;
  background-size: cover;
  position: relative;
}
.concept-detail::before {
  content: "";
  display: block;
  position: absolute;
  width: 100%;
  height: 200%;
  top: 0;
  left: 0;
  mix-blend-mode: multiply;
  opacity: 0.5;
  z-index: -1;
  background: #161616;
}
.dark-mode .concept-detail::before {
  background: var(--font-clr1);
}
.concept-detail .ttl {
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 1.4;
  font-weight: normal;
  text-align: left;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto 1em auto;
}
.concept-detail .text {
  margin-top: 2.5em;
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 2;
  text-align: left;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto;
}
.concept-detail .btn-a,
.concept-detail .btn-b {
  margin-top: 2em;
}

@media only screen and (min-width: 768px) {
  /*デザイン設定*/
  #pageIndex .bg-color,
#pageIndex .bg-img {
    display: flex;
    flex-direction: row;
  }
  #pageIndex .bg-color .concept-detail,
#pageIndex .bg-img .concept-detail {
    font-size: 28px;
    font-size: 2.8rem;
    padding: 2.857em 2.142em;
    min-height: 10.714em;
    width: 18.928em;
    text-align: center;
    margin-inline: auto;
  }
  #pageIndex .bg-color .ttl,
#pageIndex .bg-img .ttl {
    font-size: 28px;
    font-size: 2.8rem;
    text-align: center;
    margin-bottom: 1em;
    text-wrap: balance;
  }
  #pageIndex .bg-color .text,
#pageIndex .bg-img .text {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 2;
    text-align: center;
    text-wrap: balance;
  }
  #pageIndex .bg-color .bg {
    min-height: 300px;
    width: 50%;
    height: auto;
  }
  #pageIndex .bg-color:has(.bg) .concept-detail {
    width: 50%;
    max-width: 50%;
    font-size: 28px;
    font-size: 2.8rem;
    padding: 2.142em;
    min-height: 300px;
    text-align: left;
  }
  #pageIndex .bg-color:has(.bg) .concept-detail .ttl, #pageIndex .bg-color:has(.bg) .concept-detail .text {
    width: 100%;
    text-align: left;
  }
  #pageIndex .bg-color:has(.bg) .concept-detail .btn {
    margin-left: 0;
  }
  #pageIndex .bg-img .concept-detail {
    width: 100%;
  }
  #pageIndex .bg-img .ttl,
#pageIndex .bg-img .text {
    margin-inline: auto;
    z-index: 1;
    color: #fff;
    position: relative;
  }
}
@media only screen and (min-width: 1200px) {
  /*デザイン設定*/
  #pageIndex .bg-color .concept-detail,
#pageIndex .bg-img .concept-detail {
    font-size: 28px;
    font-size: 2.8rem;
    padding: 5.357em 3.571em;
    min-height: 300px;
    width: 100%;
    text-align: center;
    margin-inline: auto;
  }
  #pageIndex .bg-color .ttl,
#pageIndex .bg-img .ttl {
    font-size: 32px;
    font-size: 3.2rem;
    line-height: 1.4;
    font-weight: normal;
    text-wrap: balance;
  }
  #pageIndex .bg-color .text,
#pageIndex .bg-img .text {
    margin-top: 1.25em;
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 2;
    text-wrap: balance;
  }
  #pageIndex .bg-img .ttl, #pageIndex .bg-img .text {
    max-width: 70%;
  }
  #pageIndex .bg-color .bg {
    font-size: 12px;
    font-size: 1.2rem;
    max-width: 30%;
    min-height: 25em;
    min-width: 47.916em;
    height: auto;
  }
  #pageIndex .bg-color:has(.bg) .concept-detail {
    font-size: 12px;
    font-size: 1.2rem;
    width: 70%;
    max-width: 44.166em !important;
    font-size: 28px;
    font-size: 2.8rem;
    margin: 0 auto;
    padding: 5.357em 4.285em !important;
    min-height: 300px;
    text-align: left;
  }
  #pageIndex .bg-color:has(.bg) .concept-detail .ttl, #pageIndex .bg-color:has(.bg) .concept-detail .text {
    width: 100%;
    text-align: left;
  }
  #pageIndex .bg-color:has(.bg) .concept-detail .btn {
    margin-left: 0;
  }
  #pageIndex .bg-img .concept-detail,
#pageIndex .bg-color .concept-detail {
    background-size: cover;
    position: relative;
    width: 100%;
  }
  #pageIndex .bg-img .ttl,
#pageIndex .bg-img .text,
#pageIndex .bg-color .ttl,
#pageIndex .bg-color .text {
    margin-inline: auto;
    z-index: 1;
    position: relative;
  }
}
.btn-a {
  font-size: 12px;
  font-size: 1.2rem;
  display: inline-block;
  width: auto;
  border: none;
  position: relative;
}
.btn-a a {
  font-size: 14px;
  font-size: 1.4rem;
  display: block;
  width: 100%;
  text-decoration: none;
  padding: 1.071em 4.285em 1.071em 1.785em;
}
.btn-a svg {
  font-size: 14px;
  font-size: 1.4rem;
  width: 0.857em;
  height: 0.857em;
  position: absolute;
  right: 1.785em;
  top: calc(50% - 0.428em);
}

.btn-b {
  font-size: 12px;
  font-size: 1.2rem;
  border: 1px solid;
  display: inline-block;
  width: auto;
  border: none;
  position: relative;
}
.btn-b a {
  font-size: 14px;
  font-size: 1.4rem;
  display: block;
  width: 100%;
  text-decoration: none;
  padding: 1.071em 3.571em 1.071em 1.785em;
}
.btn-b svg {
  font-size: 14px;
  font-size: 1.4rem;
  width: 0.857em;
  height: 0.857em;
  position: absolute;
  right: 1.428em;
  top: calc(50% - 0.428em);
}

.dark-mode .top-concept2.bg-color .concept-detail .ttl,
.dark-mode .top-concept2.bg-color .concept-detail .text {
  color: var(--font-clr1);
}

.top-error-message {
  font-size: 10px;
  font-size: 1rem;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: 2em auto;
  color: var(--clr-red);
  padding: 1em 2em;
  border: 1px solid var(--clr-red);
  border-radius: 2px;
}

.top-info {
  margin: 0;
}
@media only screen and (min-width: 768px) {
  .top-info {
    font-size: 14px;
    font-size: 1.4rem;
  }
}
.top-info .ttl-h2 {
  text-align: center;
}
.top-info .top-info-list {
  font-size: 14px;
  font-size: 1.4rem;
  margin: 0 auto 1.428em auto;
}
@media only screen and (min-width: 768px) {
  .top-info .top-info-list {
    font-size: 14px;
    font-size: 1.4rem;
    margin: 0 1.428em 1.428em 1.428em;
  }
}
@media only screen and (min-width: 1200px) {
  .top-info .top-info-list {
    font-size: 14px;
    font-size: 1.4rem;
    max-width: 85.714em;
    margin: 0 auto 2.142em auto;
  }
}
.top-info .top-info-list .top-info-data {
  font-size: 14px;
  font-size: 1.4rem;
  display: flex;
  color: var(--font-clr);
}
.top-info .top-info-list .top-info-data .info-date,
.top-info .top-info-list .top-info-data .info-ttl {
  font-size: 12px;
  font-size: 1.2rem;
  padding: 0.833em;
  position: relative;
  overflow-wrap: anywhere;
}
@media only screen and (min-width: 1200px) {
  .top-info .top-info-list .top-info-data .info-date,
.top-info .top-info-list .top-info-data .info-ttl {
    font-size: 14px;
    font-size: 1.4rem;
  }
}
.top-info .top-info-list .top-info-data .info-date::before,
.top-info .top-info-list .top-info-data .info-ttl::before {
  position: absolute;
  display: block;
  content: "";
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border-bottom: 1px solid var(--font-clr);
  z-index: -1;
}
.top-info .top-info-list .top-info-data .info-date {
  width: 10em;
}
.top-info .top-info-list .top-info-data .info-ttl {
  width: 100%;
}
.top-info .top-info-list .top-info-data .info-ttl::before {
  opacity: 0.2;
}

.dark-mode .even .top-info-list .top-info-data {
  color: var(--font-clr1);
}
.dark-mode .even .top-info-list .top-info-data .info-date::before,
.dark-mode .even .top-info-list .top-info-data .info-ttl::before {
  border-bottom: 1px solid var(--font-clr1);
}

.top-blog {
  font-size: 10px;
  font-size: 1rem;
  padding: 6em 2em;
  margin: 0;
  color: var(--font-clr);
}
.dark-mode .even .top-blog {
  color: var(--font-clr1);
}
.top-blog .top-blog-list {
  margin: 0;
}
.top-blog .ttl-h2 {
  text-align: center;
}

.top-blog-list.type-a .blog-img {
  border-radius: 5px;
}

.top-blog-list.blog-normal {
  font-size: 10px;
  font-size: 1rem;
  display: grid;
  grid-template-columns: repeat(1, 1fr);
  grid-column-gap: 1em;
  grid-row-gap: 3em;
}
@media only screen and (min-width: 768px) {
  .top-blog-list.blog-normal {
    font-size: 14px;
    font-size: 1.4rem;
    grid-template-columns: repeat(3, 1fr);
    grid-column-gap: 2.142em;
    grid-row-gap: 2.142em;
    margin: 0 1.428em;
  }
}
@media only screen and (min-width: 1200px) {
  .top-blog-list.blog-normal {
    font-size: 10px;
    font-size: 1rem;
    grid-column-gap: 6em;
    grid-row-gap: 6em;
    max-width: 120em;
    margin: 6em auto;
  }
}
.top-blog-list.blog-normal li {
  position: relative;
  display: flex;
  flex-direction: column;
  padding: 0 !important;
}
.top-blog-list.blog-normal li:hover {
  opacity: 0.5;
  transition: 0.5s opacity;
}
.top-blog-list.blog-normal li a {
  text-decoration: none;
}

.blog-ttl {
  margin: 1.562em 0 !important;
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.4;
}

.blog-date {
  font-size: 12px;
  font-size: 1.2rem;
  margin: c 0 0 0 !important;
}

.blog-img {
  position: relative;
  width: 100%;
  height: auto;
  overflow: hidden;
}
.blog-img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  vertical-align: bottom;
  transition: 0.5s all;
}

.effect-fade .blog-img:hover img {
  transform: scale(1.1, 1.1);
  transition: 0.5s all;
}

.img-sq .top-blog-list li .blog-img {
  aspect-ratio: 1/1;
}
.img-la-gold .top-blog-list li .blog-img {
  aspect-ratio: 1.618/1;
}
.img-la-screen .top-blog-list li .blog-img {
  aspect-ratio: 4/3;
}
.img-pt-gold .top-blog-list li .blog-img {
  aspect-ratio: 1/1.618;
}
.img-pt-screen .top-blog-list li .blog-img {
  aspect-ratio: 3/4;
}

.notice {
  font-size: 14px;
  font-size: 1.4rem;
  position: relative;
  padding: 0.714em 2.857em 0.714em 1.071em;
  margin: 0 1.428em;
  border-radius: 2px;
  background: var(--bg-clr3);
  color: var(--font-clr1);
}
.dark-mode .notice {
  background: var(--bg-clr2);
}
.notice a {
  display: block;
  width: 100%;
  height: 100%;
}
.notice svg {
  position: absolute;
  width: 0.75em;
  height: 0.75em;
  stroke: currentColor;
  top: 50%;
  right: 0.937em;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transition: 0.5s all;
}
.notice:hover svg {
  right: 0.625em;
}
@media only screen and (min-width: 768px) {
  .notice {
    font-size: 14px;
    font-size: 1.4rem;
    margin: 0 2.857em;
  }
}
@media only screen and (min-width: 1200px) {
  .notice {
    font-size: 14px;
    font-size: 1.4rem;
    width: 85.714em;
    margin: 0 auto;
  }
}

.top-pickup {
  padding: 1em;
  max-width: 100em;
  margin: 0 auto;
  font-size: 10px;
  font-size: 1rem;
}

.top-insta {
  font-size: 14px;
  font-size: 1.4rem;
  padding: 4.285em 0;
}
.top-insta .ttl-h2 {
  text-align: center;
}
.top-insta .inner {
  font-size: 14px;
  font-size: 1.4rem;
  margin: 0 auto;
  padding: 2.142em 1.428em;
}
@media only screen and (min-width: 768px) {
  .top-insta .inner {
    font-size: 14px;
    font-size: 1.4rem;
    padding: 2.142em 2.857em;
  }
}
@media only screen and (min-width: 1200px) {
  .top-insta .inner {
    font-size: 14px;
    font-size: 1.4rem;
    margin: 0 auto;
    width: 85.714em;
    padding: 4.285em 0 0 0;
  }
}

.top-review {
  font-size: 10px;
  font-size: 1rem;
  padding: 3em 2em;
  width: 100%;
}
.top-review .ttl-h2 {
  text-align: center;
}
.top-review .review-wrap {
  font-size: 14px;
  font-size: 1.4rem;
  width: 100%;
}
@media only screen and (min-width: 768px) {
  .top-review .review-slider {
    font-size: 14px;
    font-size: 1.4rem;
    margin: 0 0.714em;
  }
}
@media only screen and (min-width: 1200px) {
  .top-review .review-slider {
    font-size: 14px;
    font-size: 1.4rem;
    max-width: 85.714em;
    margin: 0 auto;
  }
}
.top-review .review-box {
  font-size: 14px;
  font-size: 1.4rem;
  background: #fff;
  box-shadow: 0 0 5px rgba(0, 0, 0, 0.2);
  border-radius: 5px;
  margin: 0.714em;
  padding: 2.142em;
  width: calc(100% - 1.428em) !important;
}
.top-review .review-box .review01, .top-review .review-box .review02, .top-review .review-box .review03, .top-review .review-box .review04 {
  display: flex;
  gap: 10px;
}
.top-review .review-box .review-img {
  font-size: 14px;
  font-size: 1.4rem;
  width: 4.642em;
  height: 4.642em;
}
.top-review .review-box .review-img img {
  width: 100%;
  height: auto;
}
.top-review .review-box .review-title {
  font-size: 14px;
  font-size: 1.4rem;
  color: var(--font-clr);
}
.top-review .review-box .review-data {
  width: calc(100% - 5.357em);
}
.top-review .review-box .review-text {
  font-size: 14px;
  font-size: 1.4rem;
  color: var(--font-clr);
  margin-top: 0.357em;
  line-height: 2;
}
.top-review .review-box .review-status {
  font-size: 12px;
  font-size: 1.2rem;
  text-align: right;
  color: var(--font-clr);
  margin-top: 0.833em;
  opacity: 0.5;
}

.reviews-slider-controls {
  font-size: 14px;
  font-size: 1.4rem;
  width: calc(100% - 1.428em);
  margin: 0.714em auto;
  position: relative;
  opacity: 0.75;
}
@media only screen and (min-width: 1200px) {
  .reviews-slider-controls {
    font-size: 14px;
    font-size: 1.4rem;
    width: 85.714em;
    margin: 1.428em auto;
  }
}
.reviews-slider-controls .slick-arrow {
  color: var(--font-clr);
}
.reviews-slider-controls .slick-arrow::before {
  display: none;
}
.reviews-slider-controls .slick-arrow.slick-prev {
  font-size: 14px;
  font-size: 1.4rem;
  left: auto;
  right: 2.142em;
}
.reviews-slider-controls .slick-arrow.slick-next {
  right: 0;
}
.reviews-slider-controls .slick-arrow svg {
  width: 20px;
  height: 20px;
}
@media only screen and (min-width: 1200px) {
  .reviews-slider-controls .slick-arrow.slick-prev {
    font-size: 14px;
    font-size: 1.4rem;
    left: auto;
    right: 5.714em;
  }
  .reviews-slider-controls .slick-arrow.slick-next {
    font-size: 14px;
    font-size: 1.4rem;
    left: auto;
    right: 2.142em;
  }
  .reviews-slider-controls .slick-arrow svg {
    width: 34px;
    height: 34px;
  }
}

.dark-mode .reviews-slider-controls .slick-arrow {
  color: var(--font-clr1);
}

.dark-mode .top-review.even .review-box .review-text,
.dark-mode .top-review.even .review-box .review-title,
.dark-mode .top-review.even .review-box .review-status {
  color: var(--font-clr1) !important;
}

.dark-mode .top-review:not(.even) .review-box .review-text,
.dark-mode .top-review:not(.even) .review-box .review-title,
.dark-mode .top-review:not(.even) .review-box .review-status {
  color: var(--font-clr2);
}
.dark-mode .top-review:not(.even) .reviews-slider-controls .slick-arrow {
  color: var(--font-clr);
}

#svg-cart {
  fill: var(--font-clr2);
}

.product-wrap > .item-ttl {
  font-size: 24px;
  font-size: 2.4rem;
  margin: 1.25em auto;
  padding: 0 0.833em;
}
@media only screen and (min-width: 768px) {
  .product-wrap > .item-ttl {
    display: none;
  }
}
.product-wrap + div {
  background: var(--bg-clr2);
}
@media only screen and (min-width: 768px) {
  .product-wrap {
    overflow: hidden;
    display: flex;
    font-size: 10px;
    font-size: 1rem;
    padding: 4em;
    gap: 4em;
  }
}
@media only screen and (min-width: 1200px) {
  .product-wrap {
    font-size: 10px;
    font-size: 1rem;
    width: 120em;
    margin: 6em auto;
  }
}

.product-data {
  font-size: 10px;
  font-size: 1rem;
  margin: 3em 2em;
}
.product-data .item-ttl {
  display: none;
}
@media only screen and (min-width: 768px) {
  .product-data {
    margin: 0;
    width: calc(42.5% - 40px);
  }
  .product-data .item-ttl {
    display: block;
  }
}
.product-imgs {
  font-size: 10px;
  font-size: 1rem;
  margin: 0 2em;
}
@media only screen and (min-width: 768px) {
  .product-imgs {
    width: 57.5%;
    margin: 0;
  }
}
.product-imgs {
  position: relative;
}
.product-imgs .label_image {
  font-size: 10px;
  font-size: 1rem;
  position: absolute;
  width: 6em;
  height: auto;
  top: 0;
  left: 0;
  z-index: 1;
}
.product-imgs .item-none img {
  width: 100%;
  height: auto;
  vertical-align: bottom;
}
.product-imgs #itemSlider {
  margin: 0;
}
.product-imgs .slick-track {
  line-height: 0;
  font-size: 0;
}
.product-imgs .slick-track img {
  width: 100%;
  height: auto;
  vertical-align: bottom;
}
.product-imgs .slick-prev,
.product-imgs .slick-next {
  position: absolute;
  top: calc(50% - 3em);
  height: 0;
  width: 4em;
  padding-top: 6em;
  font-size: 10px;
  font-size: 1rem;
  border: 0;
  background: none;
  transform: none;
  z-index: 1;
}
.product-imgs .slick-prev::before,
.product-imgs .slick-next::before {
  position: absolute;
  top: 1em;
  content: "";
  display: block;
  width: 1em;
  height: 1em;
  border-top: solid 1.5px var(--font-clr);
  border-right: solid 1.5px var(--font-clr);
}
.product-imgs .slick-prev:hover,
.product-imgs .slick-next:hover {
  cursor: pointer;
}
.product-imgs .slick-prev {
  left: 0;
}
.product-imgs .slick-prev::before {
  transform: rotate(-135deg);
  left: 0.6em;
}
.product-imgs .slick-next {
  right: 0;
}
.product-imgs .slick-next::before {
  transform: rotate(45deg);
  right: 0.6em;
}
.product-imgs #itemThumb {
  margin-top: 2em;
  font-size: 10px;
  font-size: 1rem;
}
.product-imgs #itemThumb .slick-list {
  margin: 3em 1.5em 1em 1.5em;
  padding: 0 !important;
  font-size: 10px;
  font-size: 1rem;
}
.product-imgs #itemThumb .slick-list li {
  display: flex;
  align-items: center;
  aspect-ratio: 1/1;
  opacity: 0.5;
  transition: 0.5s opacity;
}
.product-imgs #itemThumb .slick-list li:hover {
  cursor: pointer;
  opacity: 1;
  transition: 0.5s opacity;
}
.product-imgs #itemThumb .slick-list li.slick-active {
  opacity: 1;
}
.product-imgs #itemThumb .slick-list li img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.product-imgs #itemThumb .slick-list .slick-arrow {
  display: none;
}
.product-imgs #itemThumb .slick-list .slick-current li {
  opacity: 1;
}
.product-imgs #itemThumb .slick-list .slick-track {
  font-size: 10px;
  font-size: 1rem;
  display: flex;
  gap: 3em;
}
.item-ttl {
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 1.4;
  text-align: center;
  font-weight: normal;
  color: var(--font-clr);
}
.item-ttl .item-filename {
  display: block;
  margin-top: 1em;
  font-size: 10px;
  font-size: 1rem;
  opacity: 0.5;
}
@media only screen and (min-width: 768px) {
  .item-ttl {
    text-align: left;
    font-size: 28px;
    font-size: 2.8rem;
    margin-bottom: 1.428em;
  }
}

.itemBnp {
  margin: 3em 0 0 0;
  font-size: 10px;
  font-size: 1rem;
}

.product-data .x_purchaseForm {
  font-size: 12px;
  font-size: 1.2rem;
}
@media only screen and (min-width: 768px) {
  .product-data .x_purchaseForm {
    margin: 0;
  }
}
.product-data .item-soldout {
  margin-bottom: 0.833em;
  font-size: 24px;
  font-size: 2.4rem;
  line-height: 1.4;
  color: var(--clr-red);
}
.product-data .item-price {
  margin: 2em 0;
  font-size: 10px;
  font-size: 1rem;
}
@media only screen and (min-width: 768px) {
  .product-data .item-price {
    margin: 0;
  }
}
.product-data .item-price .default,
.product-data .item-price .discount {
  font-size: 24px;
  font-size: 2.4rem;
  line-height: 1.4;
  color: var(--font-clr);
}
.product-data .item-price .discount {
  color: var(--clr-red);
}
.product-data .item-price .discount + .ratio {
  margin-top: 1em;
  display: inline-block;
}
.product-data .item-price .ratio {
  padding: 0.166em 0.833em;
  margin-left: 0.416em;
  font-size: 12px;
  font-size: 1.2rem;
  color: var(--font-clr2);
  border-radius: 2px;
  background: var(--discount);
  vertical-align: 0.166em;
}
.product-data .ageVerificationWarning {
  font-size: 28px;
  font-size: 2.8rem;
  color: var(--font-clr);
  line-height: 1.6;
  opacity: 0.5;
}
.product-data .ageVerificationWarning i.si-attentionTriangle {
  font-size: 85%;
  margin-right: 0.1em;
}
.product-data .item-comin {
  color: var(--comingsoon);
  font-size: 24px;
  font-size: 2.4rem;
}
.product-data .communityModal {
  color: #222;
}
.product-data .communityBox .communityPrice {
  display: flex;
  gap: 10px;
  flex-direction: column;
}
.product-data .communityBox .communityPrice > p {
  font-weight: bold;
}
.product-data .communityBox .communityLinkMore {
  font-size: 14px;
  font-size: 1.4rem;
  margin: 2.142em 0.714em !important;
}
.product-data #itemAttention {
  color: var(--font-clr);
}
.product-data #itemAttention > div:not(.overlayBackground, #postageInfo) {
  font-size: 12px;
  font-size: 1.2rem;
  margin: 2.5em 0;
}
.product-data #itemAttention .attention {
  margin-top: 0.416em;
  font-size: 12px;
  font-size: 1.2rem;
}
.product-data #itemAttention .attention:first-child {
  margin-top: 0;
}
.product-data #itemAttention .attention a {
  font-weight: normal;
  line-height: 2;
}
.product-data #itemAttention .salesPeriod--willStart::before {
  content: "※";
}
.product-data #itemAttention .preOrder,
.product-data #itemAttention .lottery,
.product-data #itemAttention .takeout,
.product-data #itemAttention .communityLabel {
  font-size: 12px;
  font-size: 1.2rem;
  position: relative;
  padding: 1.666em 0 0 0;
}
.product-data #itemAttention .preOrder::before,
.product-data #itemAttention .lottery::before,
.product-data #itemAttention .takeout::before,
.product-data #itemAttention .communityLabel::before {
  position: absolute;
  display: block;
  content: "";
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border-top: 1px solid var(--font-clr);
  opacity: 0.2;
  z-index: -1;
}
.product-data #itemAttention .preOrder .preOrder__label {
  margin-bottom: 0.357em;
  background: var(--preOrder);
  border-radius: 2px;
}
.product-data #itemAttention .preOrder .preOrder__data {
  margin: 0.416em 0 0 0;
  font-size: 12px !important;
  font-size: 1.2rem !important;
}
.product-data #itemAttention .preOrder .preOrder__data::before {
  content: "※";
}
.product-data #itemAttention .membershipPoint {
  font-size: 10px;
  font-size: 1rem;
  padding: 2em;
  color: var(--font-clr);
  position: relative;
}
.product-data #itemAttention .membershipPoint::before {
  background: var(--bg-clr1);
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  content: "";
  opacity: 0.3;
  border-radius: 2px;
}
.product-data #itemAttention .membershipPoint .membershipPoint__amountWrapper {
  font-weight: normal !important;
}
.product-data #itemAttention .membershipPoint .membershipPoint__amountWrapper svg {
  font-size: 10px;
  font-size: 1rem;
  width: 1.6em;
  height: 1.6em;
  vertical-align: text-top;
  stroke: currentColor;
}
.product-data #itemAttention .membershipPoint .membershipPoint__amount {
  position: relative;
  padding-left: 0.277em;
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 1.4;
  font-weight: normal;
}
.product-data #itemAttention .membershipPoint .membershipPoint__pointName {
  font-size: 14px;
  font-size: 1.4rem;
  font-weight: normal;
  line-height: 1.4;
}
.product-data #itemAttention .communityLabel {
  font-size: 14px;
  font-size: 1.4rem;
  margin: 2.142em 0 0 0;
  position: relative;
  background: none;
}
.product-data #itemAttention .communityLabel .communityLabel__title {
  background: var(--community);
  border-radius: 2px;
}
.product-data #itemAttention .communityLabel .communityLabel__note {
  margin: 0.416em 0 0 0;
  font-size: 12px !important;
  font-size: 1.2rem !important;
  color: var(--font-clr);
}
.product-data #itemAttention .communityLabel .communityLabel__note::before {
  content: "※";
}
.product-data #itemAttention .communityLabel .communityLabel__note::after {
  content: "。";
}
.product-data #itemAttention .communityLabel:hover .communityLabel__note {
  opacity: 1;
}
.product-data #itemAttention .lottery {
  font-size: 14px;
  font-size: 1.4rem;
  margin: 2.142em 0 0 0;
}
.product-data #itemAttention .lottery .lottery__label {
  margin-bottom: 0.357em;
  background: var(--lottery);
  border-radius: 2px;
}
.product-data #itemAttention .lottery .lottery__data {
  margin: 0.416em 0 0 0;
  font-size: 12px !important;
  font-size: 1.2rem !important;
}
.product-data #itemAttention .lottery .lottery__data::before {
  content: "※";
}
.product-data #itemAttention .takeout {
  font-size: 12px;
  font-size: 1.2rem;
}
.product-data #itemAttention .takeout .takeout__label {
  background: var(--takeout);
  border-radius: 2px;
}
.product-data #itemAttention .takeout .takeout__data {
  margin: 0.416em 0 0 0;
  font-size: 12px !important;
  font-size: 1.2rem !important;
}
.product-data #itemAttention .takeout .takeout__data::before {
  content: "※";
}
.product-data #itemAttention .salesPeriod--term::before {
  content: "※";
}
.product-data #itemAttention .postageOpen::before {
  content: "(";
}
.product-data #itemAttention .postageOpen::after {
  content: ")";
}
.product-data #itemSelect {
  position: relative;
  font-size: 10px;
  font-size: 1rem;
  padding: 2em;
  margin-top: 3em;
}
.product-data #itemSelect::before {
  position: absolute;
  display: block;
  content: "";
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: var(--bg-clr2);
  z-index: -1;
  border-radius: 2px;
}
@media only screen and (min-width: 768px) {
  .product-data #itemSelect {
    font-size: 10px;
    font-size: 1rem;
    padding: 3em;
  }
}
.product-data #itemSelect > * + * {
  font-size: 10px;
  font-size: 1rem;
  margin-top: 3em;
  padding-top: 2em;
  position: relative;
}
.product-data #itemSelect > * + *::before {
  position: absolute;
  display: block;
  content: "";
  top: 0;
  left: 0;
  width: 100%;
  height: 1px;
  background: var(--bg-clr2);
  mix-blend-mode: multiply;
  opacity: 1;
  z-index: -1;
}
.product-data #itemSelect .purchaseElement,
.product-data #itemSelect .itemOptionElement {
  font-size: 10px;
  font-size: 1rem;
}
.product-data #itemSelect label[for=valiationSelect],
.product-data #itemSelect label.itemOption__name,
.product-data #itemSelect label[for=amountSelect] {
  display: block;
  margin-bottom: 0.714em;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.4;
  color: var(--font-clr);
}
.product-data #itemSelect .itemOption__caption {
  position: relative;
  padding: 0 0 0 1.666em;
  margin: 1.666em 0;
  padding: 1.25em 1.666em;
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 1.8;
  color: var(--font-clr);
}
.product-data #itemSelect .itemOption__caption::before {
  display: none !important;
  content: "";
  position: absolute;
  left: 0;
  top: 0.666em;
  display: block;
  width: 1.25em;
  height: 1px;
  background: var(--font-clr);
  opacity: 0.5;
}
.product-data #itemSelect .itemOption__caption::after {
  position: absolute;
  display: block;
  content: "";
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: var(--bg-clr2);
  mix-blend-mode: multiply;
  border-radius: 2px;
  opacity: 0.75;
  z-index: -1;
}
.product-data #itemSelect select#valiationSelect,
.product-data #itemSelect select.itemOption__select,
.product-data #itemSelect select#amountSelect {
  min-width: 5em;
  padding: 0.312em 1.875em 0.312em 0.625em !important;
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.4;
  color: var(--font-clr);
  border: none;
  border-radius: 2px;
  background: transparent;
}
.product-data #itemSelect input.itemOption__input {
  padding: 0.312em 0.625em;
  width: 100%;
  box-sizing: border-box;
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.4;
  color: var(--font-clr);
  border: none;
  border-radius: 2px;
  background: transparent;
}
.product-data #itemSelect .itemOption__bottomCaptionBlock {
  font-size: 12px;
  font-size: 1.2rem;
  display: flex !important;
  gap: 0.833em;
  margin-top: 0.25em;
  justify-content: flex-end;
  align-items: flex-end;
  flex-direction: row-reverse;
}
.product-data #itemSelect .itemOption__caption--error {
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 1.4;
  color: #fff;
  background: var(--clr-red);
  padding: 0 0.416em;
  border-radius: 2px;
  display: inline-block !important;
}
.product-data #itemSelect .itemOption__count {
  margin-top: 0.416em;
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 1.4;
  display: inline-block;
}
.product-data .purchaseButton svg {
  font-size: 12px;
  font-size: 1.2rem;
  display: inline-block;
  width: 1.5em;
  height: 1.5em;
  margin-right: 0.416em;
  vertical-align: text-top;
}
.product-data .purchaseButton .purchaseButton__btn {
  font-size: 14px;
  font-size: 1.4rem;
  border: none !important;
  width: 100%;
  min-width: 15.714em;
  margin: 2.142em auto;
}
@media only screen and (min-width: 768px) {
  .product-data .purchaseButton .purchaseButton__btn {
    min-width: auto;
  }
}
.product-data .purchaseButton .purchaseButton__btn.purchaseButton__btn--addToCart:hover, .product-data .purchaseButton .purchaseButton__btn.purchaseButton__btn--requestRestockMail:hover {
  cursor: pointer;
}
.product-data .purchaseButton .purchaseButton__btn:disabled, .product-data .purchaseButton .purchaseButton__btn.purchaseButton__btn--disabled {
  opacity: 0.5 !important;
}
.product-data .purchaseButton .purchaseButton__btn:disabled:hover, .product-data .purchaseButton .purchaseButton__btn.purchaseButton__btn--disabled:hover {
  cursor: default;
  opacity: 0.5;
}

#communityPurchase .communitySignin {
  font-size: 12px;
  font-size: 1.2rem;
  border: none !important;
  background: var(--bg-clr3);
  padding: 1.666em !important;
  margin: 0 0 2.5em 0 !important;
  border-radius: 2px;
}
#communityPurchase .communitySignin p {
  font-size: 12px;
  font-size: 1.2rem;
  font-size: 12px !important;
  color: var(--font-clr);
}
@media only screen and (min-width: 768px) {
  #communityPurchase .communitySignin {
    font-size: 10px;
    font-size: 1rem;
    margin: 0 !important;
    padding: 30px !important;
  }
}

.product-detail {
  font-size: 12px;
  font-size: 1.2rem;
}
.product-detail .item-desc .item-desc-default {
  font-size: 12px;
  font-size: 1.2rem;
  margin-top: 2.5em;
  color: var(--font-clr);
}
.product-detail .item-desc .item-desc-default p {
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 2;
}
.product-detail .item-desc .item-desc-custom {
  padding-top: 20px;
  margin-top: 30px;
  position: relative;
}
.product-detail .item-desc .item-desc-custom::before {
  position: absolute;
  display: block;
  content: "";
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border-top: 1px solid var(--font-clr);
  opacity: 0.2;
}
.product-detail .item-desc .item-desc-custom .appsItemDetailCustomTag_description {
  margin: 0.714em 0 !important;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 2;
}
.product-detail .item-desc .item-desc-custom img.appsItemDetailCustomTag_image {
  margin: 2em 0 !important;
  font-size: 10px;
  font-size: 1rem;
}
.product-detail .item-desc .item-desc-custom .appsItemDetailCustomTag_slider {
  margin: 2em 0 !important;
  font-size: 10px;
  font-size: 1rem;
}
.product-detail .item-desc .item-desc-custom .appsItemDetailCustomTag_youtube {
  margin: 2em 0 !important;
  font-size: 10px;
  font-size: 1rem;
}
.product-detail .item-foot {
  font-size: 14px;
  font-size: 1.4rem;
  position: relative;
  overflow: hidden;
  padding: 2.142em 0;
  margin-top: 2.142em;
}
.product-detail .item-foot::before {
  position: absolute;
  display: block;
  content: "";
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border-top: 1px solid var(--font-clr);
  opacity: 0.2;
  z-index: -1;
}
.product-detail .item-report {
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 1.666em;
  border: 1px solid var(--clr-red);
  border-radius: 2px;
  color: var(--clr-red);
  padding: 2px 10px;
  display: inline-block;
}
.product-detail .item-report a {
  text-decoration: none;
}
.product-detail .item-sns {
  float: right;
}
.product-detail .item-sns li {
  font-size: 12px;
  font-size: 1.2rem;
  display: inline-block;
}
.product-detail .item-sns li + li {
  margin-left: 0.5em;
}
.product-detail .item-sns li:hover {
  cursor: pointer;
}
.product-detail .item-sns a {
  display: inline-block;
  text-decoration: none;
  line-height: 1;
  padding: 0.416em 0.833em;
  border-radius: 2px;
  color: #FFF;
  background-repeat: no-repeat;
}
.product-detail .item-sns svg {
  font-size: 10px;
  font-size: 1rem;
  width: 1.3em;
  height: 1.3em;
  margin-right: 1em;
  vertical-align: top;
}
.product-detail .item-sns .tw a {
  background-color: #454545;
}
.product-detail .item-sns .fb a {
  background-color: #1877f2;
}
.product-detail .item-sns .line a {
  background-color: #00B900;
}

@media only screen and (max-width: 379px) {
  .product-detail .item-sns {
    float: none;
    position: relative;
    padding-top: 1em;
    margin-top: 1em;
  }
  .product-detail .item-sns::before {
    position: absolute;
    display: block;
    content: "";
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border-top: 1px solid var(--font-clr);
    opacity: 0.2;
    z-index: -1;
  }
}
.item-review {
  display: none;
}
.item-review + .product-relate {
  font-size: 14px;
  font-size: 1.4rem;
  padding: 2.142em 1.428em;
  background: var(--bg-clr2);
}
.item-review:has(.review01) {
  display: block;
  font-size: 12px;
  font-size: 1.2rem;
  padding: 1.666em 1.666em 3.333em 1.666em;
  margin-top: 5em;
}
@media only screen and (min-width: 768px) {
  .item-review:has(.review01) {
    font-size: 12px;
    font-size: 1.2rem;
    padding: 5em 5em 8.333em 5em;
    margin-top: 2.5em;
  }
}
@media only screen and (min-width: 1200px) {
  .item-review:has(.review01) {
    font-size: 12px;
    font-size: 1.2rem;
    padding: 5em 1.666em 10em 1.666em;
    margin-top: 2.5em;
  }
}

.product-relate .ttl-h2 {
  text-align: center;
  font-size: 24px;
  font-size: 2.4rem;
  margin-bottom: 1.25em;
}
.product-relate .item-related {
  font-size: 14px;
  font-size: 1.4rem;
  margin: 0 auto -3.572em auto;
}
@media only screen and (min-width: 768px) {
  .product-relate .ttl-h2 {
    font-size: 24px;
    font-size: 2.4rem;
  }
  .product-relate .item-related {
    font-size: 14px;
    font-size: 1.4rem;
    padding: 4.285em 1.428em;
    margin: 0 auto -7.143em auto;
  }
}
@media only screen and (min-width: 1200px) {
  .product-relate .ttl-h2 {
    font-size: 36px;
    font-size: 3.6rem;
  }
  .product-relate .item-related {
    font-size: 12px;
    font-size: 1.2rem;
    width: 100em;
    padding: 5em 0;
    margin: 0 auto -8.334em auto;
  }
}

.item-review .ttl {
  display: none;
}
.item-review .review01__title {
  text-align: center;
  font-size: 18px;
  font-size: 1.8rem;
  font-size: 22px !important;
  font-size: 2.2em !important;
  margin-bottom: 1.666em;
  color: var(--font-clr);
  font-weight: normal;
}
@media only screen and (min-width: 768px) {
  .item-review .review01__title {
    text-align: left;
  }
}
@media only screen and (min-width: 1200px) {
  .item-review .review01__title {
    font-size: 24px !important;
    font-size: 2.4em !important;
  }
}

.review01__tab > li:first-of-type label {
  line-height: 1.6;
  display: inline;
}

.review01 {
  clear: none !important;
}
.review01 .review01__tabWrap {
  position: relative;
  border: none;
}
.review01 .review01__tabWrap::before {
  height: 2px;
}
.review01 .review01__tabWrap::after {
  top: auto;
}
.review01 .review01__radio + label {
  color: var(--font-clr);
}
.review01 .review01__trigger:before {
  border-right: 2px solid var(--font-clr);
  border-bottom: 2px solid var(--font-clr);
  opacity: 0.5;
}
@media only screen and (min-width: 768px) {
  .review01 {
    font-size: 12px;
    font-size: 1.2rem;
    width: 100%;
    max-width: 100em;
    margin: 0 auto !important;
  }
}
@media only screen and (max-width: 828px) {
  .review01 .review01__tabWrap {
    padding: 0 30px 0 0 !important;
  }
}

.communityModal {
  width: initial;
  max-height: 90%;
  overflow: scroll;
}
.communityModal .communityOverview {
  max-height: none;
}
.communityModal .communityRegisterButtons {
  display: flex;
  justify-content: space-between;
}
.communityModal .communityRegisterButtons .button {
  margin: 0;
  width: 49%;
}
@media only screen and (min-width: 1200px) {
  .communityModal {
    overflow: auto;
  }
}
@media screen and (max-width: 480px) {
  .communityModal .communityRegisterButtons {
    justify-content: flex-start;
  }
  .communityModal .communityRegisterButtons .button {
    margin-top: 8px;
    width: 100%;
  }
}

.si-information,
.purchaseButtonModal__ageVerificationWarningText {
  color: #A43045;
}

.purchaseButtonModal__title,
.takeoutModal__title {
  font-size: 16px;
  font-size: 1.6rem;
  padding: 0.937em 2.5em 0.937em 1.875em !important;
  line-height: 1.6 !important;
}

.purchaseButtonModal__inputAreaLabel {
  color: #222;
}

.ageVerificationModal__error {
  color: #A43045;
}

#irContainer {
  top: calc(50% - 160px) !important;
  left: calc(50% - 140px) !important;
  right: auto !important;
  position: fixed !important;
}
#irContainer .btn.btn-danger {
  height: auto !important;
}

.irBG {
  background: rgba(0, 0, 0, 0.3) !important;
}

#itemSelect .form-wrap {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  max-width: 100%;
}
#itemSelect .form-wrap select {
  margin-bottom: 0 !important;
}

.msg_smsAuth__formArea .x_address {
  width: 100%;
}
.msg_smsAuth__formArea .x_submit {
  flex-shrink: 0;
  white-space: nowrap;
}

.dark-mode .item-sns .tw a {
  border: 1px solid #999;
}
.dark-mode .item-report {
  background: var(--clr-red);
  color: #fff;
}
.dark-mode .product-data #itemSelect .itemOption__caption {
  color: var(--font-clr1);
}
.dark-mode .product-data #itemSelect .itemOption__caption::before {
  background: var(--font-clr);
  opacity: 0.5;
}
.dark-mode .product-data #itemSelect .itemOption__caption::after {
  background: var(--bg-clr2);
  opacity: 0.25;
}
.dark-mode .product-data #itemSelect .itemOption__count {
  color: var(--font-clr1);
}
.dark-mode .product-data #itemSelect .form-wrap input.itemOption__input {
  color: var(--font-clr1);
}
.dark-mode .product-data #itemSelect .form-wrap::after {
  border: 1px solid var(--font-clr1);
}

#itemSlider {
  visibility: hidden;
  opacity: 0;
  transition: opacity 0.5s ease;
}

#itemSlider.slider-inited {
  visibility: visible;
  opacity: 1;
}

.dark-mode .membershipPoint svg {
  stroke: var(--font-clr);
}

.dark-mode .product-data #itemSelect label[for=valiationSelect],
.dark-mode .product-data #itemSelect label.itemOption__name,
.dark-mode .product-data #itemSelect label[for=amountSelect],
.dark-mode .product-data #itemSelect select#valiationSelect,
.dark-mode .product-data #itemSelect select.itemOption__select,
.dark-mode .product-data #itemSelect select#amountSelect {
  color: var(--font-clr1);
}

.dark-mode #communityPurchase .communitySignin p {
  color: var(--font-clr1);
}

.dark-mode .item-review .review01__title,
.dark-mode .review01 .review01__radio + label,
.dark-mode .review01__itemVariation,
.dark-mode .review01__itemName,
.dark-mode .review01__date {
  color: var(--font-clr1);
}
.dark-mode .review01 .review01__tabWrap::before,
.dark-mode .review01 .review01__tabWrap::after {
  background: var(--font-clr1);
}
.dark-mode .review01 .review01__trigger:before {
  border-right: 2px solid var(--font-clr1);
  border-bottom: 2px solid var(--font-clr1);
}

.item-review + .product-relate {
  background: transparent;
}

#pageCategory .items-tags,
#pageSearch .items-tags {
  margin: 0 auto;
  font-size: 10px;
  font-size: 1rem;
  display: none;
}
#pageCategory .items-tags:has(li),
#pageSearch .items-tags:has(li) {
  display: block;
}
#pageCategory .items-tags li,
#pageSearch .items-tags li {
  display: inline-block;
  margin: 0 0.166em 0.666em 0;
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 1;
}
#pageCategory .items-tags li a,
#pageSearch .items-tags li a {
  display: inline-block;
  padding: 0.416em;
  color: var(--font-clr);
  text-decoration: none;
  border-radius: 2px;
  border: solid 1px var(--font-clr);
}
#pageCategory .items-tags li:hover a,
#pageSearch .items-tags li:hover a {
  background: var(--font-clr);
  color: var(--font-clr2);
  transition: 0.5s;
}
@media only screen and (min-width: 768px) {
  #pageCategory .items-tags,
#pageSearch .items-tags {
    margin: 2.142em 0 4.285em 0;
    font-size: 14px;
    font-size: 1.4rem;
  }
  #pageCategory .items-tags li,
#pageSearch .items-tags li {
    font-size: 16px;
    font-size: 1.6rem;
  }
}
#pageCategory .ttl-h1,
#pageSearch .ttl-h1 {
  font-size: 18px;
  font-size: 1.8rem;
  padding: 1.666em 0;
}
@media only screen and (min-width: 768px) {
  #pageCategory .ttl-h1,
#pageSearch .ttl-h1 {
    font-size: 24px;
    font-size: 2.4rem;
  }
}
@media only screen and (min-width: 1200px) {
  #pageCategory .ttl-h1,
#pageSearch .ttl-h1 {
    font-size: 36px;
    font-size: 3.6rem;
    padding: 1.666em 0;
  }
}
#pageCategory .items-wrap,
#pageSearch .items-wrap {
  font-size: 14px;
  font-size: 1.4rem;
  text-align: center;
  margin: 0 auto 1.428em auto;
  padding: 0 2.857em;
}
@media only screen and (min-width: 768px) {
  #pageCategory .items-wrap,
#pageSearch .items-wrap {
    font-size: 14px;
    font-size: 1.4rem;
    margin: 0 auto 4.285em auto;
  }
}
@media only screen and (min-width: 1200px) {
  #pageCategory .items-wrap,
#pageSearch .items-wrap {
    font-size: 14px;
    font-size: 1.4rem;
    margin: 0 auto 5.714em auto;
  }
}
#pageCategory .dark-mode .items-tags li a:hover,
#pageSearch .dark-mode .items-tags li a:hover {
  background: var(--font-clr2);
  color: var(--font-clr1);
  transition: 0.5s all;
}

.about-wrap {
  opacity: 0;
  transition: opacity 0.5s ease;
}
.page-loaded .about-wrap {
  opacity: 1;
}

.about-wrap section:nth-child(odd):not(.bg-about-concept0, .bg-about-concept1, .bg-about-concept2) {
  background: var(--bg-clr2);
}
.about-wrap .txt {
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 2;
}
@media only screen and (min-width: 768px) {
  .about-wrap .ttl-h2 {
    margin-inline: 0;
    text-align: left;
  }
}
.about-wrap.type-a figure {
  border-radius: 5px;
  overflow: hidden;
}

#svg-map {
  fill: var(--font-clr2);
}

#svg-q {
  fill: var(--main-clr);
}

#svg-a {
  stroke: var(--main-clr);
}

#svg-blank {
  stroke: var(--font-clr2);
}

.icon-svg, .about-info-box .about-info-map svg {
  font-size: 12px;
  font-size: 1.2rem;
  width: 1.25em;
  height: 1.25em;
  vertical-align: text-bottom;
  margin-right: 0.416em;
}

.box-border {
  border-radius: 5px;
}

.about-nav {
  display: none;
  pointer-events: none;
}
@media only screen and (min-width: 1200px) {
  .about-nav {
    font-size: 14px;
    font-size: 1.4rem;
    display: block;
    width: 100%;
    position: -webkit-sticky;
    position: sticky;
    top: 7.142em;
    z-index: 3;
  }
  .about-nav ul {
    font-size: 14px;
    font-size: 1.4rem;
    display: block;
    padding: 4.285em 1.071em;
    width: 85.714em;
    margin: 0 auto;
  }
  .about-nav li {
    position: relative;
    font-size: 14px;
    font-size: 1.4rem;
    width: 20em;
    line-height: 1.4;
    padding-left: 1.071em;
  }
  .about-nav li::before {
    content: "";
    position: absolute;
    left: -0.143em;
    top: 0.5em;
    display: block;
    width: 0.428em;
    height: 0.428em;
    border-top: solid 1px;
    border-left: solid 1px;
    transform: rotate(135deg);
  }
  .about-nav li a {
    pointer-events: auto;
  }
}
.about-nav ul li {
  font-size: 14px;
  font-size: 1.4rem;
  margin-bottom: 0.714em;
}
.about-nav ul li a {
  text-decoration: none;
}
.about-nav ul li svg {
  margin-right: 0.357em;
  width: 1cap;
  height: 1cap;
  vertical-align: initial;
}

.about-concept .txt {
  font-size: 16px;
  font-size: 1.6rem;
  margin-bottom: 1.875em;
  line-height: 2;
  white-space: pre-line;
}
.about-concept.bg-color {
  flex-direction: column;
}
.about-concept.bg-color .wrap::before {
  display: none;
}
.about-concept.bg-color .inner {
  display: flex;
  flex-direction: column;
}
.about-concept.bg-color .inner .txt {
  order: 3;
}
.about-concept.bg-color .inner .ttl-h2 {
  order: 2;
}
.about-concept.bg-color .inner figure {
  font-size: 16px;
  font-size: 1.6rem;
  margin: -3.75em -1.25em 3.75em -1.25em;
  order: 1;
}
@media only screen and (min-width: 768px) {
  .about-concept.bg-color .inner .txt {
    order: 2;
  }
  .about-concept.bg-color .inner .ttl-h2 {
    order: 1;
  }
  .about-concept.bg-color .inner figure {
    order: 3;
    margin: 0;
  }
}
.about-concept.bg-color figure {
  margin: 0;
  padding: 0;
  line-height: 1;
  vertical-align: bottom;
}
.about-concept.bg-color figure img {
  max-width: 100%;
  height: auto;
}
.about-concept.bg-color figure + .txt {
  margin-top: 1.428em;
}
.about-concept.bg-color:nth-child(1), .about-concept.bg-color:nth-child(3) {
  background: var(--main-clr);
  color: var(--font-clr2);
}
.about-concept.bg-color:nth-child(1) .txt, .about-concept.bg-color:nth-child(1) .ttl-h2, .about-concept.bg-color:nth-child(3) .txt, .about-concept.bg-color:nth-child(3) .ttl-h2 {
  color: var(--font-clr2);
}
.about-concept.bg-color:nth-child(2) {
  background: var(--bg-clr1);
  color: var(--font-clr1);
}
.about-concept.bg-color:nth-child(2) .txt, .about-concept.bg-color:nth-child(2) .ttl-h2 {
  color: var(--font-clr1);
}
.about-concept.bg-color .bg {
  display: none;
}
.about-concept.bg-img figure {
  display: none;
}
.about-concept.bg-img .wrap,
.about-concept.bg-img .ttl-h2,
.about-concept.bg-img .txt {
  color: var(--font-clr2);
}

.bg-about-concept0,
.bg-about-concept1,
.bg-about-concept2 {
  width: 100%;
  height: 100%;
  background-size: cover;
  background-position: center top;
  background-attachment: fixed;
  z-index: -1;
}
.bg-about-concept0 .wrap,
.bg-about-concept1 .wrap,
.bg-about-concept2 .wrap {
  z-index: 1;
  position: relative;
}
.bg-about-concept0 .wrap::before,
.bg-about-concept1 .wrap::before,
.bg-about-concept2 .wrap::before {
  content: "";
  display: block;
  position: absolute;
  width: 100%;
  height: 200%;
  mix-blend-mode: multiply;
  opacity: 0.5;
  z-index: -1;
  background: #161616;
}

.inner {
  font-size: 10px;
  font-size: 1rem;
  padding: 6em 2em;
}
@media only screen and (min-width: 1200px) {
  .inner {
    font-size: 10px;
    font-size: 1rem;
    width: 120em;
    margin: 0 auto;
    padding-left: 36.7em;
  }
}

.about-info .inner > * + * {
  font-size: 10px;
  font-size: 1rem;
  margin-top: 3em;
}

.about-info-img {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  max-width: 100%;
  margin: 0;
  font-size: 10px;
  font-size: 1rem;
}
.about-info-img img {
  max-width: 100%;
  width: auto;
  height: auto;
  line-height: 1;
  vertical-align: bottom;
}
.about-info-img.is-none {
  display: none;
}

.about-info-box {
  font-size: 10px;
  font-size: 1rem;
}
.about-info-box .about-info-data *:first-child {
  margin-top: 0;
}
.about-info-box .name {
  margin-top: 0.714em;
  font-size: 14px;
  font-size: 1.4rem;
  font-weight: bold;
}
.about-info-box table {
  margin-top: 1em;
  font-size: 10px;
  font-size: 1rem;
  color: var(--font-clr);
}
.about-info-box th,
.about-info-box td {
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 2;
  text-align: left;
  vertical-align: top;
}
.about-info-box th {
  width: 8em;
  font-weight: normal;
}
.about-info-box td {
  white-space: pre-wrap;
}
.about-info-box .about-info-map {
  font-size: 12px;
  font-size: 1.2rem;
  display: inline-block;
  padding: 0 0.833em;
  margin: 0 0 0.833em;
  text-decoration: none;
  color: var(--font-clr2);
  background: var(--main-clr);
  border-radius: 2px;
}
.about-pay .txt {
  margin-bottom: 1.428em;
  color: var(--font-clr);
}

.about-pay-list {
  padding: 2em;
  z-index: 1;
  border: solid 1px var(--font-clr);
  color: var(--font-clr);
  border-radius: 2px;
}
.about-pay-list li {
  position: relative;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.4;
  padding-left: 1.071em;
}
.about-pay-list li::before {
  content: "";
  position: absolute;
  left: -0.143em;
  top: 0.5em;
  display: block;
  width: 0.428em;
  height: 0.428em;
  border-top: solid 1px;
  border-left: solid 1px;
  border-color: var(--font-clr);
  transform: rotate(135deg);
}
.about-pay-list li span {
  font-size: 12px;
  font-size: 1.2rem;
  display: inline-block;
}
.about-pay-list li + li {
  margin-top: 0.416em;
}

.about-pa-list dt,
.about-pa-list dd {
  position: relative;
  line-height: 2;
}
.about-pa-list dt::before,
.about-pa-list dd::before {
  display: grid;
  place-items: center;
  position: absolute;
  left: 0;
  font-size: 14px;
  font-size: 1.4rem;
  font-weight: normal;
  width: 1.785em;
  height: 1.785em;
  line-height: 1;
  z-index: 2;
}
.about-pa-list dt svg,
.about-pa-list dd svg {
  font-size: 14px;
  font-size: 1.4rem;
  position: absolute;
  width: 2.571em;
  height: 2.571em;
}
.about-pa-list dt {
  padding-left: 2.5em;
  font-size: 18px;
  font-size: 1.8rem;
  color: var(--main-clr);
}
.about-pa-list dt .dark-mode {
  color: var(--font-clr2);
}
.about-pa-list dt::before {
  color: var(--font-clr2);
  left: 0.142em;
  margin-top: 0.071em;
}
.about-pa-list dt svg {
  left: 0;
}
.about-pa-list dd {
  padding: 1.428em 1.428em 1.428em 4.285em;
  margin-top: 0.714em;
  font-size: 14px;
  font-size: 1.4rem;
  background: var(--bg-clr3);
  color: var(--font-clr);
}
.about-pa-list dd svg {
  left: 0.75em;
}
.about-pa-list dd + dt {
  margin-top: 1.428em;
}
.about-pa-list dd::before {
  left: 0.928em;
  margin-top: 0.071em;
  color: var(--main-clr);
}
@media only screen and (min-width: 768px) {
  .about-pa-list dt {
    padding-left: 1.875em;
    font-size: 24px;
    font-size: 2.4rem;
  }
  .about-pa-list dt svg {
    font-size: 14px;
    font-size: 1.4rem;
    top: 0.714em;
    left: 0;
  }
  .about-pa-list dd {
    padding: 1.785em 1.785em 1.785em 5em;
    margin-top: 1.428em;
    font-size: 14px;
    font-size: 1.4rem;
  }
  .about-pa-list dd svg {
    font-size: 14px;
    font-size: 1.4rem;
    left: 1.428em;
  }
}

.about-qa-txt {
  margin-top: 1.428em;
  font-size: 14px;
  font-size: 1.4rem;
  color: var(--font-clr);
  line-height: 2;
}

.about-free {
  font-size: 14px;
  font-size: 1.4rem;
}
.about-free .about-free-txt {
  font-size: 14px;
  font-size: 1.4rem;
  white-space: pre-wrap;
  color: var(--font-clr);
  font-family: "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", "YuGothic", "游ゴシック体";
}

.dark-mode .about-wrap section:nth-child(odd):not(.bg-about-concept0, .bg-about-concept1, .bg-about-concept2) .ttl-h2,
.dark-mode .about-wrap section:nth-child(odd):not(.bg-about-concept0, .bg-about-concept1, .bg-about-concept2) .about-info-box table, .dark-mode .about-wrap section:nth-child(odd):not(.bg-about-concept0, .bg-about-concept1, .bg-about-concept2).about-free .about-free-txt, .dark-mode .about-wrap section:nth-child(odd):not(.bg-about-concept0, .bg-about-concept1, .bg-about-concept2).about-pay .txt, .dark-mode .about-wrap section:nth-child(odd):not(.bg-about-concept0, .bg-about-concept1, .bg-about-concept2).about-pay .about-pay-list {
  color: var(--font-clr1) !important;
}

.dark-mode .about-wrap .about-pa-list dd {
  color: var(--font-clr1);
}
.dark-mode .about-wrap .about-pa-list dt {
  color: var(--font-clr);
}

.dark-mode section:nth-child(odd).about-qa .about-pa-list dt,
.dark-mode section:nth-child(odd).about-qa .about-qa-txt {
  color: var(--font-clr1);
}

.dark-mode .about-wrap section:nth-child(odd):not(.bg-about-concept0, .bg-about-concept1, .bg-about-concept2) .about-pay .txt,
.dark-mode .about-wrap section:nth-child(odd):not(.bg-about-concept0, .bg-about-concept1, .bg-about-concept2) .about-pay-list {
  border: solid 1px var(--font-clr1);
  color: var(--font-clr1) !important;
}
.dark-mode .about-wrap section:nth-child(odd):not(.bg-about-concept0, .bg-about-concept1, .bg-about-concept2) .about-pay .txt li::before,
.dark-mode .about-wrap section:nth-child(odd):not(.bg-about-concept0, .bg-about-concept1, .bg-about-concept2) .about-pay-list li::before {
  border-color: var(--font-clr1);
}

.dark-mode .bg-about-concept0 .wrap::before,
.dark-mode .bg-about-concept1 .wrap::before,
.dark-mode .bg-about-concept2 .wrap::before {
  background: var(--font-clr1);
}

/*基本*/
.about-nav {
  transition: 0.5s all;
}
.about-nav li:has(a.cur) {
  margin-left: 10px;
  transition: 0.5s margin-left;
}

/*コンセプト*/
.about-nav:has(li:not(:first-of-type) > a.cur) {
  color: var(--font-clr);
}
.about-nav:has(li.section01:first-of-type > a.cur) {
  color: var(--font-clr2);
}
.about-nav:has(li.section02:first-of-type > a.cur) {
  color: var(--font-clr2);
}
.about-nav:has(li > a.cur.bg-img) {
  color: var(--font-clr2);
}
.about-nav:has(li + li > a.cur.bg-color) {
  color: var(--font-clr1);
}
.about-nav:has(li + li + li > a.cur.bg-color) {
  color: var(--font-clr2);
}
.about-nav:has(li:not(:first-of-type) > a.cur) li::before {
  border-color: var(--font-clr);
}
.about-nav:has(li > a.cur.bg-img) li::before {
  border-color: var(--font-clr2);
}
.about-nav:has(li + li > a.cur.bg-color) li::before {
  border-color: var(--font-clr1);
}
.about-nav:has(li + li + li > a.cur.bg-color) li::before {
  border-color: var(--font-clr2);
}

/*ダークモード*/
.dark-mode .about-nav {
  color: var(--font-clr2);
}
.dark-mode .about-nav:has(li:nth-of-type(even):not(.section01, .section02, .section03) > a.cur) {
  color: var(--font-clr2);
}
.dark-mode .about-nav:has(li:nth-of-type(even):not(.section01, .section02, .section03) > a.cur) li::before {
  border-color: var(--font-clr2);
}
.dark-mode .about-nav:has(li:nth-of-type(odd):not(.section01, .section02, .section03) > a.cur) {
  color: var(--font-clr1);
}
.dark-mode .about-nav:has(li:nth-of-type(odd):not(.section01, .section02, .section03) > a.cur) li::before {
  border-color: var(--font-clr1);
}

.contact-wrap {
  font-size: 10px;
  font-size: 1rem;
  margin: 0 2em;
}
.contact-wrap h1 {
  font-size: 24px;
  font-size: 2.4rem;
  text-align: center;
  font-weight: normal;
  padding: 1.25em 0;
  margin: 0;
}
@media only screen and (min-width: 1200px) {
  .contact-wrap .main {
    font-size: 10px;
    font-size: 1rem;
    width: 120em;
    margin: 0 auto;
  }
  .contact-wrap h1 {
    font-size: 36px;
    font-size: 3.6rem;
    padding: 1.666em 0;
  }
}

.contact-wrap .form-wrap {
  line-height: 1;
}
.contact-wrap form {
  display: block;
  margin-top: 2em;
  padding: 2em;
  font-size: 10px;
  font-size: 1rem;
}
.contact-wrap dl {
  position: relative;
  font-size: 14px;
  font-size: 1.4rem;
  margin: 0 -1.429em 2.142em -1.429em;
  padding: 2.142em 1.428em 1.428em 1.428em;
}
.contact-wrap dl::before {
  background: var(--bg-clr2);
  z-index: -1;
  position: absolute;
  width: 100%;
  height: 100%;
  content: "";
  top: 0;
  left: 0;
}
@media only screen and (min-width: 768px) {
  .contact-wrap dl {
    font-size: 14px;
    font-size: 1.4rem;
    margin: 0 1.428em 2.142em;
  }
}
@media only screen and (min-width: 1200px) {
  .contact-wrap dl {
    font-size: 14px;
    font-size: 1.4rem;
    width: 57.142em;
    margin: 0 auto 2.857em auto;
    padding: 4.285em 4.285em;
  }
}
.contact-wrap dl > dt, .contact-wrap dl > dd {
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 2;
}
.contact-wrap dl > dt {
  margin-bottom: 0.714em;
}
.contact-wrap dl > dd {
  margin-bottom: 1.428em;
}
.contact-wrap input[type=text],
.contact-wrap textarea {
  font-size: 16px;
  font-size: 1.6rem;
  width: 100%;
  padding: 0.625em;
  font-family: inherit;
  background: transparent;
  border: none;
  box-sizing: border-box;
}
.contact-wrap input[type=text] {
  line-height: 1;
}
.contact-wrap textarea {
  line-height: 1.5;
  resize: vertical;
  min-height: 6em;
}
.contact-wrap .control-panel {
  text-align: center;
}
.contact-wrap input[type=submit] {
  font-size: 14px;
  font-size: 1.4rem;
  margin-bottom: 2.857em;
  min-width: 15.714em;
  border: none;
}
@media only screen and (min-width: 768px) {
  .contact-wrap input[type=submit] {
    font-size: 14px;
    font-size: 1.4rem;
    min-width: 22.857em;
  }
}

.form-error {
  border-color: var(--clr-red) !important;
}

#inquiryConfirmSection dl > dd {
  padding-bottom: 1.428em;
  position: relative;
}
#inquiryConfirmSection dl > dd::after {
  content: "";
  position: absolute;
  display: block;
  width: 100%;
  height: 0;
  bottom: 0;
  border-bottom: solid 1px;
  border-color: var(--font-clr);
  opacity: 0.3;
}
#inquiryConfirmSection dl dd + dd.error.ma-b20 > div {
  margin-top: -10px;
}
#inquiryCompleteSection {
  display: block;
  position: relative;
  font-size: 10px;
  font-size: 1rem;
  color: var(--font-clr);
}
#inquiryCompleteSection p {
  margin-bottom: 1.428em;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 2;
}
#inquiryCompleteSection a {
  margin: 2.857em auto !important;
  display: block !important;
  width: 18.571em;
}
@media only screen and (min-width: 1200px) {
  #inquiryCompleteSection a {
    font-size: 14px;
    font-size: 1.4rem;
    width: 18.571em;
    margin: 4.285em auto !important;
  }
}
@media only screen and (min-width: 768px) {
  #inquiryCompleteSection p {
    text-align: center;
  }
}
.inquirySection h1 {
  display: none;
}
.inquirySection p {
  text-align: center;
  color: var(--font-clr);
}
.inquirySection .error-message {
  font-size: 10px;
  font-size: 1rem;
  background: var(--clr-red);
  color: #fff;
  font-weight: normal;
  border-radius: 2px;
  padding: 0 1em;
  display: block;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
.inquirySection dl {
  color: var(--font-clr);
}
.inquirySection dl span {
  color: var(--clr-red);
}

.dark-mode #inquiryCompleteSection p,
.dark-mode #inquiryCompleteSection dl,
.dark-mode .inquirySection p,
.dark-mode .inquirySection dl {
  color: var(--font-clr1);
}
.dark-mode #inquiryConfirmSection dl > dd::after {
  border-color: var(--font-clr1);
}
.dark-mode section#inquiryCompleteSection p,
.dark-mode .inquirySection h1 + p {
  color: var(--font-clr) !important;
}

.grecaptcha-badge {
  z-index: 2;
}

@media only screen and (min-width: 768px) {
  .grecaptcha-badge {
    bottom: 90px !important;
  }
}
.blog-wrap {
  font-size: 10px;
  font-size: 1rem;
  margin: 0 2em;
}
.blog-wrap h1 {
  font-size: 24px;
  font-size: 2.4rem;
  text-align: center;
  font-weight: normal;
  padding: 1.25em 0;
  margin: 0;
}
@media only screen and (min-width: 1200px) {
  .blog-wrap .main {
    font-size: 10px;
    font-size: 1rem;
    width: 120em;
    margin: 0 auto;
  }
  .blog-wrap h1 {
    font-size: 36px;
    font-size: 3.6rem;
    padding: 1.666em 0;
  }
}
.blog-wrap.type-a .blog_head_image {
  font-size: 10px;
  font-size: 1rem;
  border-radius: 0.5em;
}

.blogDetail {
  font-size: 10px;
  font-size: 1rem;
  color: var(--font-clr);
}
.blogDetail .blog_contents {
  font-size: 10px;
  font-size: 1rem;
  margin: 0 auto;
  padding: 3em;
  background: var(--bg-clr2);
  position: relative;
}
.blogDetail .blog_contents .social {
  position: absolute;
  bottom: -120px;
  left: 0;
}
.dark-mode .blogDetail .blog_contents {
  color: var(--font-clr1);
}
.dark-mode .blogDetail .blog_contents .blog_title {
  color: var(--font-clr1);
}
.dark-mode .blogDetail .blog_contents .social li span {
  color: var(--font-clr1);
}
.blogDetail iframe.youtube {
  width: 100%;
  height: auto;
  aspect-ratio: 16/9;
}
@media only screen and (min-width: 768px) {
  .blogDetail .blog_contents {
    font-size: 10px;
    font-size: 1rem;
    margin: 0 auto;
    padding: 6em;
  }
  .blogDetail iframe.youtube {
    display: block;
    margin: 0 auto;
    max-width: 500px;
  }
}
@media only screen and (min-width: 1200px) {
  .blogDetail .blog_contents {
    font-size: 10px;
    font-size: 1rem;
    width: 120em;
  }
}

.blogListMain {
  font-size: 10px;
  font-size: 1rem;
  color: var(--font-clr);
}
.blogListMain.column {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-column-gap: 1em;
  grid-row-gap: 1em;
}
.blogListMain .paginate-wrp {
  grid-column: 1/3;
}
@media only screen and (min-width: 768px) {
  .blogListMain {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 15px;
  }
  .blogListMain .paginate-wrp {
    grid-column: 1/4;
  }
}
@media only screen and (min-width: 1200px) {
  .blogListMain {
    gap: 45px;
  }
}
.blogListMain .blog_inner {
  font-size: 10px;
  font-size: 1rem;
  margin-bottom: 3em;
  border-bottom: 0 !important;
  position: relative;
  display: flex;
  flex-direction: column;
  padding: 0 !important;
  opacity: 1;
  transition: 0.5s opacity;
}
.blogListMain .blog_inner:hover {
  opacity: 0.5;
  transition: 0.5s opacity;
}
.blogListMain .blog_inner a {
  text-decoration: none;
}
.blogListMain .blog_inner .blog_title {
  order: 2;
}
.blogListMain .blog_inner .blog_title h2 {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.4;
  font-weight: normal !important;
}
@media only screen and (min-width: 1200px) {
  .blogListMain .blog_inner .blog_title h2 {
    font-size: 24px;
    font-size: 2.4rem;
  }
}
.blogListMain .blog_inner .blog_publish {
  order: 3;
  margin: 0.833em 0 !important;
  font-size: 12px;
  font-size: 1.2rem;
}
.blogListMain .blog_inner .blog_publish .publish_date {
  font-size: 12px;
  font-size: 1.2rem;
}
.blogListMain .blog_inner .blog_head_image {
  order: 1;
  font-size: 10px;
  font-size: 1rem;
  position: relative;
  width: 100%;
  height: auto;
  overflow: hidden;
  margin-bottom: 3em;
}
.blogListMain .blog_inner .blog_head_image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  vertical-align: bottom;
  transform: scale(1, 1);
  transition: 0.5s all;
}
.img-sq .blogListMain .blog_inner .blog_head_image {
  aspect-ratio: 1/1;
}
.img-la-gold .blogListMain .blog_inner .blog_head_image {
  aspect-ratio: 1.618/1;
}
.img-la-screen .blogListMain .blog_inner .blog_head_image {
  aspect-ratio: 4/3;
}
.img-pt-gold .blogListMain .blog_inner .blog_head_image {
  aspect-ratio: 1/1.618;
}
.img-pt-screen .blogListMain .blog_inner .blog_head_image {
  aspect-ratio: 3/4;
}
.blogListMain .blog_inner .blog_contents {
  height: 0 !important;
}
.blogListMain .blog_inner .blog_contents .blog_body {
  display: none;
}
.blogListMain .blog_inner .read_more {
  position: static !important;
}
.blogListMain .blog_inner .read_more a {
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  text-indent: -1000%;
  overflow: hidden;
  z-index: 1;
}
.blogListMain .paginate-wrp {
  font-size: 14px;
  font-size: 1.4rem;
  margin: 2.142em 0 !important;
}
.blogListMain .paginate {
  padding: 0;
  display: block !important;
  text-align: center;
  font-size: 0;
}
.blogListMain .paginate li {
  position: relative;
  display: inline-block;
  margin: 0 0 0 0.714em !important;
  font-size: 14px;
  font-size: 1.4rem;
  border: 0 !important;
  background: none !important;
}
.blogListMain .paginate li:first-child {
  margin: 0;
}
.blogListMain .paginate .current a {
  background: var(--main-clr);
  color: var(--font-clr2);
}
.blogListMain .paginate a {
  display: grid;
  place-items: center;
  min-width: 3.571em;
  height: 3.571em;
  padding: 0 !important;
  font-size: 14px !important;
  font-size: 1.4rem !important;
  font-weight: normal;
  text-decoration: none;
  border: solid 1px var(--main-clr);
}
.blogListMain .paginate a:link, .blogListMain .paginate a:visited {
  color: var(--main-clr);
  transition: 0.5s background-color, 0.5s color;
}
.blogListMain .paginate a:hover {
  opacity: 1;
  background: var(--main-clr);
  color: var(--font-clr2);
  transition: 0.5s background-color, 0.5s color;
}
.blogListMain .paginate .prev a,
.blogListMain .paginate .next a {
  padding: 0 1.428em !important;
}

.blog-wrap:has(.blogListMain) + .blog-back {
  display: none;
}

.effect-fade .blog_inner:hover .blog_head_image img {
  transform: scale(1.1, 1.1);
  transition: 0.5s all;
}

@media only screen and (min-width: 768px) {
  .blogDetail {
    margin: 0;
  }
}
@media only screen and (min-width: 1200px) {
  .blogDetail {
    font-size: 10px;
    font-size: 1rem;
    width: 120em;
    margin: 0 auto 12em auto;
  }
}
.blogDetail .blog_inner {
  font-size: 12px;
  font-size: 1.2rem;
  border-bottom: 0 !important;
  padding: 0 !important;
  background: var(--bg-clr2);
  margin: 0 -1.667em 10em -1.667em;
}
.blogDetail .blog_title {
  padding: 0 !important;
  color: var(--font-clr);
}
.blogDetail .blog_title h2 a {
  text-decoration: none;
}
.blogDetail .blog_publish {
  margin: 2em 0 !important;
  font-size: 10px;
  font-size: 1rem;
  padding: 0 !important;
}
.blogDetail .blog_publish .publish_date {
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1;
}
.blogDetail .blog_body div {
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 2;
}
.blogDetail .blog_body img {
  font-size: 10px;
  font-size: 1rem;
  margin: 0 !important;
}
.blogDetail .blog_body .blog-img-block {
  display: block;
  margin: 3em 0;
  font-size: 10px;
  font-size: 1rem;
}
.blogDetail .blog_body .blog-img-block:first-child {
  margin-top: 0;
}
.blogDetail .blog_body .blog-img-inline {
  display: inline;
}
.blogDetail .social {
  font-size: 10px;
  font-size: 1rem;
  position: absolute;
  margin: 3em 0 !important;
  padding: 0 !important;
}
.blogDetail .social ul {
  font-size: 10px;
  font-size: 1rem;
  display: flex !important;
  gap: 3em;
  justify-content: center;
}
.blogDetail .social li {
  font-size: 10px;
  font-size: 1rem;
  float: none !important;
  display: flex !important;
  gap: 1.5em;
  width: 18em;
  margin-right: 0 !important;
  background: var(--bg-clr3);
}
.blogDetail .social li a {
  font-size: 12px;
  font-size: 1.2rem;
  display: block !important;
  width: 100%;
  height: 100%;
  padding: 0.833em 1.666em;
  text-decoration: none;
}
.blogDetail .social li a:hover {
  cursor: pointer;
}
.blogDetail .social li img {
  font-size: 10px;
  font-size: 1rem;
  width: 2em;
  height: 2em;
  margin-right: 1em;
}
.blogDetail .social li span {
  font-size: 12px;
  font-size: 1.2rem;
  color: var(--font-clr);
}
.blog-back a {
  margin: 2em auto;
  font-size: 10px;
  font-size: 1rem;
  display: block;
  width: 25em;
  margin-bottom: 4em;
}

.effect-fade .blogListMain .blog_inner {
  visibility: hidden;
}

.community-wrap {
  font-size: 10px;
  font-size: 1rem;
  margin: 0 2em;
}
.community-wrap .communityTitle {
  font-size: 24px;
  font-size: 2.4rem;
  text-align: center;
  font-weight: normal;
  padding: 1.25em 0;
  margin: 0;
  color: var(--font-clr);
}
@media only screen and (min-width: 1200px) {
  .community-wrap .main {
    font-size: 10px;
    font-size: 1rem;
    width: auto;
    margin: 0 auto;
  }
  .community-wrap .communityTitle {
    font-size: 36px !important;
    font-size: 3.6rem !important;
    padding: 1.666em 0;
  }
}

@media only screen and (min-width: 1200px) {
  #pageCommunity .community-wrap {
    font-size: 14px;
    font-size: 1.4rem;
    width: 85.714em;
    margin: 0 auto;
  }
  #pageCommunity .community-wrap .communityRegister {
    font-size: 18px;
    font-size: 1.8rem;
    margin: 0 auto;
    width: 44.444em;
  }
}
@media only screen and (min-width: 768px) {
  #pageCommunity .community-wrap .communityButtonWrap {
    font-size: 14px;
    font-size: 1.4rem;
    display: flex;
    gap: 2.142em;
    margin: 0 auto 2.142em auto;
    max-width: 80%;
    width: 57.142em;
  }
  #pageCommunity .community-wrap .communityButtonWrap .communityButton {
    margin: 0;
  }
}
#pageCommunity .community-wrap .communityMain {
  width: 100%;
  padding: 0;
}
#pageCommunity .community-wrap .communityMain .flashMessage {
  margin: 2em 0;
}
#pageCommunity .community-wrap .communityContent {
  display: block;
  padding: 0;
  margin: 0;
  border: none;
}
#pageCommunity .community-wrap .communityOverview {
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 2;
  width: -webkit-fit-content !important;
  width: -moz-fit-content !important;
  width: fit-content !important;
  margin-inline: auto;
  max-width: 100%;
  margin-bottom: 4.285em;
  color: var(--font-clr);
}
#pageCommunity .community-wrap .communityNav {
  width: auto !important;
  position: relative;
  padding: 3em 4em;
  margin: 3em -2em;
  font-size: 10px;
  font-size: 1rem;
}
#pageCommunity .community-wrap .communityNav::before {
  content: "";
  display: block;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: -1;
  background: var(--bg-clr2);
}
@media only screen and (min-width: 1200px) {
  #pageCommunity .community-wrap .communityNav {
    margin: 3em 0 !important;
    padding: 6em;
  }
}
#pageCommunity .community-wrap .communityPrice {
  text-align: center;
  font-size: 18px;
  font-size: 1.8rem;
  color: var(--font-clr);
}
#pageCommunity .community-wrap .communityPrice h3 {
  text-align: center;
}
#pageCommunity .community-wrap .communityPrice h3 + p {
  font-size: 36px;
  font-size: 3.6rem;
  margin: 0 0 0.833em 0;
}
#pageCommunity .community-wrap .communityButton {
  text-decoration: none;
  border-radius: 0;
}
#pageCommunity .community-wrap .communityTerm,
#pageCommunity .community-wrap .communityTextNotice {
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 2;
  color: var(--font-clr);
}
#pageCommunity .community-wrap .communityTerm a,
#pageCommunity .community-wrap .communityTextNotice a {
  color: inherit;
}
@media only screen and (min-width: 768px) {
  #pageCommunity .community-wrap .communityTerm,
#pageCommunity .community-wrap .communityTextNotice {
    font-size: 14px;
    font-size: 1.4rem;
    max-width: 80%;
    width: 57.142em;
    margin: 0 auto;
  }
}
#pageCommunity .community-wrap .payidLogoutText {
  margin-top: 2.142em;
  font-size: 14px;
  font-size: 1.4rem;
  text-align: center;
  color: var(--font-clr);
}
@media only screen and (min-width: 768px) {
  #pageCommunity .community-wrap .payidLogoutText {
    font-size: 14px;
    font-size: 1.4rem;
    margin-top: 3.571em;
  }
}
#pageCommunity .community-wrap .communitySignin {
  padding: 2em;
  font-size: 10px;
  font-size: 1rem;
  border-radius: 0;
  border: 0;
  position: relative;
  margin-top: 3em;
  color: var(--font-clr);
}
#pageCommunity .community-wrap .communitySignin::before {
  content: "";
  display: block;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  border-radius: 2px;
  border: 1px solid var(--font-clr);
  opacity: 0.3;
  z-index: -1;
}
#pageCommunity .community-wrap .communitySignin p {
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 2;
  color: var(--font-clr);
}
@media only screen and (min-width: 768px) {
  #pageCommunity .community-wrap .communitySignin {
    font-size: 14px;
    font-size: 1.4rem;
    max-width: 80%;
    width: 57.142em;
    margin: 2.142em auto;
  }
}
#pageCommunity .community-wrap .limited {
  width: 100%;
}
@media only screen and (min-width: 768px) {
  #pageCommunity .community-wrap .limited {
    font-size: 16px;
    font-size: 1.6rem;
    padding: 2.5em 0;
  }
}
@media only screen and (min-width: 1200px) {
  #pageCommunity .community-wrap .limited {
    font-size: 24px;
    font-size: 2.4rem;
    padding: 2.5em 0;
  }
}
#pageCommunity .community-wrap .limited .communityItemHeader {
  text-align: center !important;
  color: var(--font-clr);
}

#pageCommunity .dark-mode .community-wrap .communityPrice,
#pageCommunity .dark-mode .community-wrap .communityTerm,
#pageCommunity .dark-mode .community-wrap .communitySignin p,
#pageCommunity .dark-mode .community-wrap .communityTextNotice,
#pageCommunity .dark-mode .community-wrap #productsLimitedUrl .urlBox,
#pageCommunity .dark-mode .community-wrap .limited#limitedItem .communityUrlHeader {
  color: var(--font-clr1);
}
#pageCommunity .dark-mode .community-wrap .communitySignin::before {
  border: 1px solid var(--font-clr1);
}
#pageCommunity .dark-mode .communityMain .payidLogoutText a {
  color: var(--font-clr1);
}

#limitedItem {
  font-size: 14px;
  font-size: 1.4rem;
  margin: 0 auto;
}

#pageCommunity .community-wrap .limited {
  width: 100%;
}
#pageCommunity .community-wrap .limited .communityItemHeader,
#pageCommunity .community-wrap .limited .communityUrlHeader {
  text-align: center !important;
  color: var(--font-clr);
}
#pageCommunity .community-wrap .limited .communityItemHeader + p,
#pageCommunity .community-wrap .limited .communityUrlHeader + p {
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 2;
  text-align: center;
  color: var(--font-clr);
}
#pageCommunity .community-wrap #productsLimitedItem .communityItems {
  width: 100%;
}
#pageCommunity .community-wrap #productsLimitedItem .communityItems > li {
  font-size: 10px;
  font-size: 1rem;
  width: 100%;
  margin: 0 0 5em 0;
}
#pageCommunity .community-wrap #productsLimitedItem .communityItems.sp-item-2 {
  font-size: 10px;
  font-size: 1rem;
  display: flex;
  flex-wrap: wrap;
  gap: 2em;
}
#pageCommunity .community-wrap #productsLimitedItem .communityItems.sp-item-2 > li {
  font-size: 10px;
  font-size: 1rem;
  width: calc(50% - 1em);
  margin: 0 0 3em 0;
}
@media only screen and (min-width: 768px) {
  #pageCommunity .community-wrap #productsLimitedItem .communityItems.sp-item-2 {
    font-size: 10px;
    font-size: 1rem;
    gap: 3em;
    margin: 4em auto;
  }
  #pageCommunity .community-wrap #productsLimitedItem .communityItems.sp-item-2 > li {
    font-size: 10px;
    font-size: 1rem;
    width: calc(50% - 1.5em);
  }
}
@media only screen and (min-width: 1200px) {
  #pageCommunity .community-wrap #productsLimitedItem .communityItems.pc-item-1 > li {
    font-size: 10px;
    font-size: 1rem;
    width: 74.2em;
    margin: 0 auto 12em auto;
  }
  #pageCommunity .community-wrap #productsLimitedItem .communityItems.pc-item-2 {
    font-size: 10px;
    font-size: 1rem;
    display: flex;
    flex-wrap: wrap;
    margin: 8em 0;
    gap: 0 6em;
  }
  #pageCommunity .community-wrap #productsLimitedItem .communityItems.pc-item-2 .communityItem {
    font-size: 10px;
    font-size: 1rem;
    width: calc(50% - 3em);
    margin: 0 0 6em 0;
  }
  #pageCommunity .community-wrap #productsLimitedItem .communityItems.pc-item-3 {
    font-size: 10px;
    font-size: 1rem;
    display: flex;
    flex-wrap: wrap;
    margin: 8em 0 0 0;
    gap: 0 4.5em;
  }
  #pageCommunity .community-wrap #productsLimitedItem .communityItems.pc-item-3 .communityItem {
    font-size: 10px;
    font-size: 1rem;
    width: calc(33.3333333333% - 3em);
    margin: 0 0 6em 0;
  }
}
#pageCommunity .community-wrap #productsLimitedItem .communityItem {
  font-size: 14px;
  font-size: 1.4rem;
  margin: 0 0 2.142em 0;
}
#pageCommunity .community-wrap #productsLimitedItem .communityItem a {
  display: flex;
  flex-direction: column;
}
#pageCommunity .community-wrap #productsLimitedItem .communityItem .communityItemTitle {
  font-size: 18px;
  font-size: 1.8rem;
  max-height: none;
  margin-bottom: auto;
  margin-top: 1.111em;
  width: 100%;
  overflow: inherit;
  color: var(--font-clr);
}
@media only screen and (min-width: 768px) {
  #pageCommunity .community-wrap #productsLimitedItem .communityItem .communityItemTitle {
    font-size: 24px;
    font-size: 2.4rem;
  }
}
@media only screen and (min-width: 768px) {
  #pageCommunity .community-wrap #productsLimitedItem .communityItem .communityItemTitle {
    font-size: 32px;
    font-size: 3.2rem;
    margin-top: 0.937em;
    line-height: 1.4;
  }
}
#pageCommunity .community-wrap #productsLimitedItem .communityItem .communityItemPrice {
  font-size: 18px;
  font-size: 1.8rem;
  margin-top: 1.111em;
  color: var(--font-clr);
  display: block !important;
}
@media only screen and (min-width: 768px) {
  #pageCommunity .community-wrap #productsLimitedItem .communityItem .communityItemPrice {
    font-size: 18px;
    font-size: 1.8rem;
  }
}
@media only screen and (min-width: 768px) {
  #pageCommunity .community-wrap #productsLimitedItem .communityItem .communityItemPrice {
    font-size: 24px;
    font-size: 2.4rem;
  }
}
#pageCommunity .community-wrap #productsLimitedItem .communityItem .communityItemPrice.soldOut {
  text-decoration: none !important;
}
#pageCommunity .community-wrap #productsLimitedItem .communityItem .communityItemPrice.soldOut.discount {
  display: flex;
  flex-direction: row-reverse;
  justify-content: flex-end;
  align-items: center;
  gap: 10px;
  color: var(--clr-red);
}
#pageCommunity .community-wrap #productsLimitedItem .communityItem .communityItemPrice > .discount {
  display: inline-block;
  padding: 0.083em 0.833em 0.166em 0.833em;
  margin-left: 0.833em;
  font-size: 12px;
  font-size: 1.2rem;
  color: var(--font-clr2);
  border-radius: 2px;
  font-weight: normal;
  background: var(--discount);
  vertical-align: 0.25em;
}
#pageCommunity .community-wrap #productsLimitedItem .communityItem .communityItemLabel.soldOutText {
  display: none;
}
#pageCommunity .community-wrap #productsLimitedItem .communityItem .communityItemLabelBlock,
#pageCommunity .community-wrap #productsLimitedItem .communityItem .communityItemLabel {
  width: 100%;
  display: block;
  text-align: center;
  border-radius: 2px;
  font-weight: normal !important;
  color: #fff;
  padding: 5px !important;
  margin-left: 0 !important;
  margin-bottom: 5px !important;
}
#pageCommunity .community-wrap #productsLimitedItem .communityItem .communityItemLabelBlock.community,
#pageCommunity .community-wrap #productsLimitedItem .communityItem .communityItemLabel.community {
  background: var(--community);
}
#pageCommunity .community-wrap #productsLimitedItem .communityItem .communityItemLabelBlock.comingSoon,
#pageCommunity .community-wrap #productsLimitedItem .communityItem .communityItemLabel.comingSoon {
  background: var(--comingsoon);
}
#pageCommunity .community-wrap #productsLimitedItem .communityItem .communityItemLabelBlock.takeout,
#pageCommunity .community-wrap #productsLimitedItem .communityItem .communityItemLabel.takeout {
  background: var(--takeout);
}
#pageCommunity .community-wrap #productsLimitedItem .communityItem .communityItemLabelBlock.preOrder,
#pageCommunity .community-wrap #productsLimitedItem .communityItem .communityItemLabel.preOrder {
  background: var(--preOrder);
  border: none;
}
#pageCommunity .community-wrap #productsLimitedItem .communityItem .communityItemLabelBlock.lottery,
#pageCommunity .community-wrap #productsLimitedItem .communityItem .communityItemLabel.lottery {
  background: var(--lottery);
}
#pageCommunity .community-wrap #productsLimitedItem .communityItem .communityItemLabelBlock svg,
#pageCommunity .community-wrap #productsLimitedItem .communityItem .communityItemLabel svg {
  width: 1.25em;
  height: 1.25em;
  margin: 0 0.416em 0 0.166em;
  fill: currentColor;
}
#pageCommunity .community-wrap #productsLimitedItem .communityItem .communityItemLabelBlock svg + svg,
#pageCommunity .community-wrap #productsLimitedItem .communityItem .communityItemLabel svg + svg {
  display: none;
}
#pageCommunity .community-wrap #productsLimitedItem .communityItem .communityItemMetaSub {
  font-size: 10px;
  font-size: 1rem;
  margin-top: 1em;
  margin-bottom: 0;
  order: 2;
}
#pageCommunity .community-wrap #productsLimitedItem .communityItem .communityItemMeta {
  order: 3;
}
#pageCommunity .community-wrap #productsLimitedItem .communityImageContainer {
  width: auto;
  height: auto;
  background: var(--bg-clr3);
  order: 1;
  position: relative;
}
#pageCommunity .community-wrap #productsLimitedItem .communityImageContainer .communityImageResize {
  width: 100%;
}
#pageCommunity .community-wrap #productsLimitedItem .communityImageContainer .soldout {
  font-size: 14px;
  font-size: 1.4rem;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  color: #fff;
  background: rgba(0, 0, 0, 0.25);
  display: grid;
  place-items: center;
}
#pageCommunity .community-wrap #productsLimitedUrl {
  font-size: 10px;
  font-size: 1rem;
  display: grid;
  grid-template-columns: 100%;
  grid-row-gap: 1em;
  margin-bottom: 3em;
}
#pageCommunity .community-wrap #productsLimitedUrl .urlBox {
  display: flex;
  flex-direction: column;
  justify-content: center;
  margin: 0;
  padding: 2em;
  width: auto;
  font-size: 10px;
  font-size: 1rem;
  background: var(--bg-clr2);
  border-radius: 0;
  border: none;
  color: var(--font-clr);
}
#pageCommunity .community-wrap #productsLimitedUrl .title {
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.4;
}
#pageCommunity .community-wrap #productsLimitedUrl .url {
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.4;
}
@media only screen and (min-width: 768px) {
  #pageCommunity .community-wrap #productsLimitedUrl {
    grid-template-columns: calc(50% - 1em) calc(50% - 1em);
    grid-column-gap: 2em;
    grid-row-gap: 1em;
  }
}

.effect-fade .communityImageContainer:hover img {
  transform: scale(1.1);
  transition: 0.5s all;
}

#pageCommunity .community-wrap .communityLogout {
  margin: 2.142em 0;
  font-size: 14px;
  font-size: 1.4rem;
  text-align: center;
}
#pageCommunity .community-wrap .communityLogout a {
  color: var(--font-clr);
}
#pageCommunity .community-wrap .openLeaveModal {
  display: block;
  font-size: 14px;
  font-size: 1.4rem;
  margin: 0 0 1.428em 0;
  color: var(--font-clr);
  opacity: 1;
  transition: opacity 1s;
}
#pageCommunity .community-wrap .openLeaveModal:hover {
  opacity: 0.5;
  transition: opacity 1s;
}
@media only screen and (min-width: 1200px) {
  #pageCommunity .community-wrap .openLeaveModal {
    font-size: 14px;
    font-size: 1.4rem;
    margin: 0 0 4.285em 0;
  }
}
#pageCommunity .community-wrap .communityModal {
  overflow: auto !important;
}
#pageCommunity .community-wrap .communityModal .communityModalHeader {
  color: #222;
}
#pageCommunity .community-wrap .communityModal .communityModalTable {
  padding: 5px 15px !important;
  background: #f0f1f4 !important;
}
#pageCommunity .community-wrap .communityModal .communityModalTable p {
  color: #222;
}
#pageCommunity .community-wrap .communityModal .communityModalButtons .communityModalButton + .communityModalButton {
  margin-top: 10px !important;
}
@media only screen and (min-width: 1200px) {
  #pageCommunity .community-wrap .communityLogout {
    margin: 1.428em 0 4.285em 0;
  }
}

.img-sq .communityImageContainer {
  aspect-ratio: 1/1;
}

.img-la-gold .communityImageContainer {
  aspect-ratio: 1.618/1;
}

.img-la-screen .communityImageContainer {
  aspect-ratio: 4/3;
}

.img-pt-gold .communityImageContainer {
  aspect-ratio: 1/1.618;
}

.img-pt-screen .communityImageContainer {
  aspect-ratio: 3/4;
}

.communityImageContainer {
  overflow: hidden;
  position: relative;
}
.type-a .communityImageContainer {
  border-radius: 5px;
}
.communityImageContainer img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  vertical-align: bottom;
  transition: 0.5s all;
}

#membership {
  padding: 0 !important;
}
#membership .flash-message {
  font-size: 14px;
  font-size: 1.4rem;
  margin: 2.142em 1.428em;
}
@media only screen and (min-width: 1200px) {
  #membership .flash-message {
    font-size: 14px;
    font-size: 1.4rem;
    margin: 2.142em auto;
    max-width: 85.714em;
  }
}

@media only screen and (min-width: 768px) {
  .about-point,
.heading + .description {
    font-size: 14px;
    font-size: 1.4rem;
    max-width: 42.857em;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    margin: 0 auto;
  }
  .about-point {
    font-size: 14px;
    font-size: 1.4rem;
    width: 42.857em;
    margin: 0 auto 4.285em auto !important;
  }
}
.membership .draft {
  font-size: 14px;
  font-size: 1.4rem;
  padding: 2.142em 0;
}
@media only screen and (min-width: 1200px) {
  .membership .draft {
    font-size: 14px;
    font-size: 1.4rem;
    display: block;
    max-width: 85.714em;
    margin: 0 auto;
    padding: 0;
    position: relative;
  }
  .membership .draft .logout-wrapper {
    position: absolute;
    top: calc(50% - 25px);
    right: 0;
    border: none;
  }
}
.membership .draft .heading-wrapper {
  font-size: 14px;
  font-size: 1.4rem;
  padding: 0 1.428em;
}
@media only screen and (min-width: 1200px) {
  .membership .draft .heading-wrapper {
    font-size: 14px;
    font-size: 1.4rem;
    display: block;
    max-width: 85.714em;
    margin: 0 auto;
    position: relative;
  }
  .membership .draft .heading-wrapper .logout-wrapper {
    position: absolute;
    top: calc(50% - 10px);
    right: 0;
    border: none;
  }
}
.membership .draft .heading-wrapper .heading {
  font-size: 24px;
  font-size: 2.4rem;
  text-align: center;
  font-weight: normal;
  padding: 1.25em 0 0 0;
  margin: 0 auto;
  color: var(--font-clr);
  text-align: center;
}
@media only screen and (min-width: 1200px) {
  .membership .draft .heading-wrapper .heading {
    font-size: 36px;
    font-size: 3.6rem;
    padding: 1.666em 0;
  }
}
.membership .draft .heading-wrapper .logout-wrapper {
  margin: 0 0 0 2em;
  font-size: 10px;
  font-size: 1rem;
  text-align: center;
}
.membership .draft .heading-wrapper .logout-wrapper button.logout {
  padding: 0.416em 1.666em;
  font-size: 12px;
  font-size: 1.2rem;
  text-decoration: none;
  border: none;
  border-radius: 2px;
  display: block;
  background: var(--bg-clr3);
  color: var(--font-clr);
}
.membership .draft .heading-wrapper .logout-wrapper button.logout svg {
  font-size: 12px;
  font-size: 1.2rem;
  width: 1.5em;
  height: 1.666em;
  margin-top: 2px;
  vertical-align: middle;
  stroke: currentColor;
}
.membership .draft .content {
  font-size: 14px;
  font-size: 1.4rem;
  padding: 0 1.428em;
  color: var(--font-clr);
}
@media only screen and (min-width: 768px) {
  .membership .draft .content {
    font-size: 14px;
    font-size: 1.4rem;
    padding: 0;
  }
}
@media only screen and (min-width: 1200px) {
  .membership .draft .content {
    font-size: 14px;
    font-size: 1.4rem;
    padding: 0;
    margin: 0;
  }
}
.membership .draft .content .message {
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: normal !important;
  background: var(--bg-clr3);
  padding: 1.875em 1.25em;
  margin-bottom: 1.875em !important;
}
@media only screen and (min-width: 768px) {
  .membership .draft .content .message {
    font-size: 24px;
    font-size: 2.4rem;
    margin-bottom: 2.083em !important;
  }
}
.membership .draft .content .point-info-login a {
  color: var(--font-clr) !important;
}
.membership .draft .content .logout {
  font-size: 14px;
  font-size: 1.4rem;
  margin: 0 1.428em;
  color: var(--font-clr) !important;
  background: transparent !important;
}
.membership .draft .content .definition-list {
  font-size: 14px;
  font-size: 1.4rem;
  border: 1px solid var(--main-clr);
  border-radius: 5px;
  margin: 1.071em 0;
}
.membership .draft .content .definition-list .definition-term {
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: normal;
  line-height: 1;
  background: var(--main-clr);
  text-align: center;
  color: var(--font-clr2);
  padding: 0.937em;
}
.membership .draft .content .definition-list .definition-description {
  font-size: 14px;
  font-size: 1.4rem;
  position: relative;
  background: transparent !important;
}
.membership .draft .content .definition-list .definition-description::before {
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  height: 100%;
  background: var(--font-clr);
  opacity: 0.5;
}
.membership .draft .content .definition-list .definition-description + .definition-term {
  margin-top: 1.428em;
}
.membership .draft .content .definition-list .mail-address,
.membership .draft .content .definition-list .point-amount {
  padding: 0;
  font-size: 24px;
  font-size: 2.4rem;
  line-height: 1;
  font-weight: bold;
  color: var(--font-clr);
  text-align: center;
  margin-bottom: 0.416em;
}
.membership .draft .content .definition-list .point-expiry-date,
.membership .draft .content .definition-list .point-history a.link {
  color: var(--font-clr) !important;
}
.membership .draft .about-wrapper .about,
.membership .draft .leave-wrapper .leave {
  color: var(--font-clr) !important;
}

.men-guide-wrap .ttl-h1 {
  display: none;
}

#pageMembershipGuide .guide .img-wrapper {
  font-size: 14px;
  font-size: 1.4rem;
  margin: 0 auto;
  text-align: center;
}
#pageMembershipGuide .guide .img-wrapper .img {
  display: block;
  max-height: 35.714em;
  height: auto;
  width: auto;
  max-width: 100%;
  -o-object-fit: contain;
     object-fit: contain;
  margin: 0 auto;
}
@media only screen and (min-width: 768px) {
  #pageMembershipGuide .guide .img-wrapper {
    font-size: 14px;
    font-size: 1.4rem;
    margin: 1.428em auto 0 auto;
  }
}
@media only screen and (min-width: 1200px) {
  #pageMembershipGuide .guide .img-wrapper {
    font-size: 14px;
    font-size: 1.4rem;
    width: auto;
    height: auto;
    max-width: 85.714em;
    max-height: 35.714em;
    margin: 2.857em auto 0 auto;
  }
}
#pageMembershipGuide .guide .content {
  font-size: 14px;
  font-size: 1.4rem;
  padding: 2.142em 1.428em;
}
@media only screen and (min-width: 768px) {
  #pageMembershipGuide .guide .content {
    font-size: 14px;
    font-size: 1.4rem;
    padding: 4.285em 0 2.857em 0;
  }
}
#pageMembershipGuide .guide .content h2.heading {
  font-size: 24px;
  font-size: 2.4rem;
  text-align: center;
  color: var(--font-clr);
}
@media only screen and (min-width: 1200px) {
  #pageMembershipGuide .guide .content h2.heading {
    font-size: 32px;
    font-size: 3.2rem;
    max-width: 37.5em;
    margin: 0 auto;
  }
}
#pageMembershipGuide .guide .content .description p {
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 2;
  color: var(--font-clr);
}
#pageMembershipGuide .guide .about-point {
  font-size: 10px;
  font-size: 1rem;
  margin: 0 2em 3em 2em;
  position: relative;
  padding: 2em;
}
@media only screen and (min-width: 768px) {
  #pageMembershipGuide .guide .about-point {
    font-size: 12px;
    font-size: 1.2rem;
    margin: 0 auto 5em auto;
  }
}
#pageMembershipGuide .guide .about-point::before {
  content: "";
  display: block;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  border: 1px solid var(--font-clr);
  opacity: 0.3;
  z-index: -1;
}
#pageMembershipGuide .guide .about-point h2 {
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 1.4;
  padding: 0;
  text-align: center;
  font-weight: normal;
  color: var(--font-clr);
}
#pageMembershipGuide .guide .about-point h2 svg {
  width: 1cap;
  height: 1cap;
  fill: var(--font-clr);
}
#pageMembershipGuide .guide .about-point .description {
  margin: 2em 0 0 0;
  font-size: 10px;
  font-size: 1rem;
}
#pageMembershipGuide .guide .about-point .description li {
  position: relative;
  padding-left: 1.428em;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.4;
  color: var(--font-clr);
}
#pageMembershipGuide .guide .about-point .description li + li {
  margin-top: 0.357em;
}
#pageMembershipGuide .guide .about-point .description li::before {
  font-size: 14px;
  font-size: 1.4rem;
  content: "";
  position: absolute;
  top: 50%;
  top: 0.714em;
  left: -0.143em;
  width: 0.428em;
  height: 0.428em;
  border-top: 1px solid var(--font-clr);
  border-right: 1px solid var(--font-clr);
  transform: rotate(45deg) translateY(-0.358em);
}
#pageMembershipGuide .guide .register {
  background: var(--bg-clr2);
  font-size: 10px;
  font-size: 1rem;
  margin: 0;
  padding: 3em 2em;
}
@media only screen and (min-width: 768px) {
  #pageMembershipGuide .guide .register {
    font-size: 10px;
    font-size: 1rem;
    padding: 6em 2em;
  }
}
#pageMembershipGuide .guide .register > * + * {
  font-size: 12px;
  font-size: 1.2rem;
  margin-top: 2.5em !important;
}
#pageMembershipGuide .guide .register .box {
  align-items: center;
  width: -webkit-fit-content !important;
  width: -moz-fit-content !important;
  width: fit-content !important;
  padding: 0 20px;
  margin: 0 auto;
  max-width: 100%;
}
#pageMembershipGuide .guide .register .box > .content {
  font-size: 14px;
  font-size: 1.4rem;
  padding: 1.428em;
}
#pageMembershipGuide .guide .register .heading {
  text-align: center;
  color: var(--font-clr);
}
#pageMembershipGuide .guide .register .description-wrapper {
  margin: 0 auto;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  color: var(--font-clr);
}
#pageMembershipGuide .guide .register .description-wrapper p {
  margin: 0;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 2;
  text-align: left;
}
#pageMembershipGuide .guide .register .description-wrapper a {
  color: inherit;
}
#pageMembershipGuide .guide .register form.mail-magazine {
  font-size: 0;
}
#pageMembershipGuide .guide .register .mail-magazine-wrapper {
  margin: 2em 0;
  width: 100%;
  font-size: 10px;
  font-size: 1rem;
}
#pageMembershipGuide .guide .register .mail-magazine-wrapper input.checkbox {
  font-size: 10px;
  font-size: 1rem;
  background: none !important;
  transition: 0.5s background-color;
}
#pageMembershipGuide .guide .register .mail-magazine-wrapper input.checkbox:checked {
  background: var(--main-clr) !important;
  box-shadow: none !important;
  transition: 0.5s background-color;
}
#pageMembershipGuide .guide .register .mail-magazine-wrapper input.checkbox::after {
  background: none;
  top: 0.5em;
  width: 1.2em;
  height: 0.8em;
  border-left: solid 2px #FFF;
  border-bottom: solid 2px #FFF;
  transform: rotate(-45deg);
}
#pageMembershipGuide .guide .register .mail-magazine-wrapper .label {
  font-size: 14px;
  font-size: 1.4rem;
  font-weight: normal;
  color: var(--font-clr);
}
#pageMembershipGuide .guide .register .link-wrapper {
  margin: 0;
  margin: 0 !important;
}
#pageMembershipGuide .guide .register .link-wrapper button.link {
  width: auto;
}
#pageMembershipGuide .guide .register .login {
  margin: 1.428em 0 0 0;
  font-size: 14px;
  font-size: 1.4rem;
  color: var(--font-clr);
}
#pageMembershipGuide .guide .register .login a {
  color: inherit;
}
#pageMembershipGuide .guide .mypage-link {
  margin: 0;
}
#pageMembershipGuide .guide .mypage-link a.link {
  width: auto;
}

#pageMembershipGuide .dark-mode .guide .reward-card-list .reward-card .exchange-point,
#pageMembershipGuide .dark-mode .guide .reward-card-list .reward-card .title,
#pageMembershipGuide .dark-mode .guide .reward-card-list .reward-card .exchange-point-wrapper {
  color: var(--font-clr1);
}
#pageMembershipGuide .dark-mode .guide .reward-card-list .reward-card .exchange-point .exchange-point-icon > path,
#pageMembershipGuide .dark-mode .guide .reward-card-list .reward-card .title .exchange-point-icon > path,
#pageMembershipGuide .dark-mode .guide .reward-card-list .reward-card .exchange-point-wrapper .exchange-point-icon > path {
  fill: currentColor !important;
}
#pageMembershipGuide .dark-mode .guide .register .heading,
#pageMembershipGuide .dark-mode .guide .register .description-wrapper,
#pageMembershipGuide .dark-mode .guide .register .mail-magazine-wrapper .label,
#pageMembershipGuide .dark-mode .guide .register .login {
  color: var(--font-clr1);
}

#pageMembershipLogin .dark-mode .login .heading {
  color: var(--font-clr1);
}

#pageMembershipMyPage .dark-mode .mypage .info .card .membership-name,
#pageMembershipMyPage .dark-mode .mypage .info .card .logo-text,
#pageMembershipMyPage .dark-mode .mypage .info .card .join-date,
#pageMembershipMyPage .dark-mode .mypage .content .edit-wrapper a.edit,
#pageMembershipMyPage .dark-mode .mypage .logout-wrapper button.logout,
#pageMembershipMyPage .dark-mode .mypage .reward-list .reward-card-list .reward-card .reward-detail-wrapper .title,
#pageMembershipMyPage .dark-mode .mypage .reward-list .reward-card-list .reward-card .reward-detail-wrapper .exchange-point-wrapper,
#pageMembershipMyPage .dark-mode .mypage .reward-list .reward-card-list .reward-card .reward-detail-wrapper .description,
#pageMembershipMyPage .dark-mode .mypage .reward-list .reward-card-list .reward-card .reward-detail-wrapper .exchange-point-wrapper .exchange-point {
  color: var(--font-clr1) !important;
}
#pageMembershipMyPage .dark-mode .mypage .reward-list .reward-card-list .reward-card .reward-detail-wrapper .exchange-point-wrapper .exchange-point-icon path {
  fill: currentColor !important;
}

.membership .mypage .leave-wrapper .leave {
  background: transparent !important;
}

.men-mypage-wrap h1 {
  display: none;
}

#pageMembershipMyPage .mypage .img-wrapper {
  font-size: 14px;
  font-size: 1.4rem;
  margin: 0 auto;
  text-align: center;
}
#pageMembershipMyPage .mypage .img-wrapper .img {
  display: block;
  max-height: 35.714em;
  height: auto;
  width: auto;
  max-width: 100%;
  -o-object-fit: contain;
     object-fit: contain;
  margin: 0 auto;
}
@media only screen and (min-width: 1200px) {
  #pageMembershipMyPage .mypage .img-wrapper {
    font-size: 14px;
    font-size: 1.4rem;
    width: auto;
    height: auto;
    max-width: 85.714em;
    max-height: 35.714em;
    margin: 2.857em auto 0 auto;
  }
}
#pageMembershipMyPage .mypage .heading-wrapper {
  font-size: 14px;
  font-size: 1.4rem;
  padding: 0 1.428em;
}
@media only screen and (min-width: 1200px) {
  #pageMembershipMyPage .mypage .heading-wrapper {
    font-size: 14px;
    font-size: 1.4rem;
    display: block;
    max-width: 85.714em;
    margin: 0 auto;
    position: relative;
  }
  #pageMembershipMyPage .mypage .heading-wrapper .logout-wrapper {
    position: absolute;
    top: calc(50% - 10px);
    right: 0;
    border: none;
  }
}
#pageMembershipMyPage .mypage .heading {
  font-size: 24px;
  font-size: 2.4rem;
  text-align: center;
  font-weight: normal;
  padding: 1.25em 0;
  margin: 0;
  color: var(--font-clr);
}
@media only screen and (min-width: 1200px) {
  #pageMembershipMyPage .mypage .heading {
    font-size: 36px;
    font-size: 3.6rem;
    padding: 1.666em 0;
    max-width: 33.333em;
    margin: 0 auto;
  }
}
#pageMembershipMyPage .mypage .logout-wrapper {
  margin: 0 0 0 2em;
  font-size: 10px;
  font-size: 1rem;
  text-align: center;
}
#pageMembershipMyPage .mypage .logout-wrapper button.logout {
  padding: 0.416em 1.666em;
  font-size: 12px;
  font-size: 1.2rem;
  text-decoration: none;
  border: none;
  border-radius: 2px;
  display: block;
  background: var(--bg-clr3);
  color: var(--font-clr);
}
#pageMembershipMyPage .mypage .logout-wrapper button.logout svg {
  font-size: 12px;
  font-size: 1.2rem;
  width: 1.5em;
  height: 1.666em;
  margin-top: 2px;
  vertical-align: middle;
  stroke: currentColor;
}
@media only screen and (min-width: 1200px) {
  #pageMembershipMyPage .mypage .info {
    font-size: 14px;
    font-size: 1.4rem;
    width: 85.714em;
    margin: 4.285em auto;
    gap: 2.857em;
    align-items: stretch;
  }
}
#pageMembershipMyPage .mypage .info .card {
  position: relative;
  padding: 2em;
  max-width: none;
  max-height: none;
  min-height: auto;
  width: calc(100% - 4em);
  margin: 3em 2em;
  font-size: 10px;
  font-size: 1rem;
  border-radius: 5px;
  border: none;
  background: transparent;
}
@media only screen and (min-width: 1200px) {
  #pageMembershipMyPage .mypage .info .card {
    width: 100%;
    margin: 0;
  }
}
#pageMembershipMyPage .mypage .info .card::before {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  height: 100%;
  width: 100%;
  background: var(--bg-clr2);
  border-radius: 5px;
  z-index: -1;
}
#pageMembershipMyPage .mypage .info .card .logo-text {
  font-size: 24px;
  font-size: 2.4rem;
  line-height: 1.4;
  color: var(--font-clr);
}
#pageMembershipMyPage .mypage .info .card .logo-image {
  font-size: 24px;
  font-size: 2.4rem;
  max-width: 12.5em;
}
#pageMembershipMyPage .mypage .info .card .membership-name {
  margin: 0.714em 0 0 0;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.4;
  font-weight: normal !important;
  color: var(--font-clr);
}
#pageMembershipMyPage .mypage .info .card .join-date {
  margin: 0.714em 0;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.4;
  font-weight: normal !important;
  color: var(--font-clr);
}
#pageMembershipMyPage .mypage .info .content {
  margin: auto 1.428em 1.428em 1.428em;
  width: calc(100% - 2.857em);
}
@media only screen and (min-width: 1200px) {
  #pageMembershipMyPage .mypage .info .content {
    width: 100%;
    margin: 0;
  }
}
#pageMembershipMyPage .mypage .info .content .customer-info-wrapper {
  margin: 0;
  font-weight: normal;
}
#pageMembershipMyPage .mypage .info .content .customer-info-wrapper + .bar {
  display: none;
}
#pageMembershipMyPage .mypage .info .content .about-wrapper .about {
  color: var(--font-clr);
}
#pageMembershipMyPage .mypage .info .content .customer-info {
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 1.4;
  font-weight: normal;
  color: var(--font-clr);
}
#pageMembershipMyPage .mypage .info .content .edit-wrapper {
  margin: 0 0 0 2em;
  font-size: 10px;
  font-size: 1rem;
  text-align: center;
}
#pageMembershipMyPage .mypage .info .content .edit-wrapper a.edit {
  padding: 0.416em 1.666em;
  font-size: 12px;
  font-size: 1.2rem;
  text-decoration: none;
  border: none;
  border-radius: 2px;
  display: block;
  background: var(--bg-clr3);
  color: var(--font-clr);
}
#pageMembershipMyPage .mypage .info .content .edit-wrapper a.edit svg {
  font-size: 12px;
  font-size: 1.2rem;
  width: 1.5em;
  height: 1.666em;
  margin-top: 2px;
  vertical-align: middle;
  stroke: currentColor;
}
#pageMembershipMyPage .mypage .info .content .definition-list {
  font-size: 14px;
  font-size: 1.4rem;
  border: 1px solid var(--main-clr);
  border-radius: 5px;
  margin: 1.071em 0;
}
#pageMembershipMyPage .mypage .info .content .definition-list .definition-term {
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: normal;
  line-height: 1;
  background: var(--main-clr);
  text-align: center;
  color: var(--font-clr2);
  padding: 0.937em;
}
#pageMembershipMyPage .mypage .info .content .definition-list .definition-description {
  font-size: 14px;
  font-size: 1.4rem;
  position: relative;
  background: transparent !important;
}
#pageMembershipMyPage .mypage .info .content .definition-list .definition-description::before {
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  height: 100%;
  background: var(--font-clr);
  opacity: 0.5;
}
#pageMembershipMyPage .mypage .info .content .definition-list .definition-description + .definition-term {
  margin-top: 1.428em;
}
#pageMembershipMyPage .mypage .info .content .definition-list .mail-address,
#pageMembershipMyPage .mypage .info .content .definition-list .point-amount {
  padding: 0;
  font-size: 24px;
  font-size: 2.4rem;
  line-height: 1;
  font-weight: bold;
  color: var(--font-clr);
  text-align: center;
  margin-bottom: 0.416em;
}
#pageMembershipMyPage .mypage .info .content .definition-list .point-expiry-date,
#pageMembershipMyPage .mypage .info .content .definition-list .point-history a.link {
  color: var(--font-clr);
}
#pageMembershipMyPage .mypage .leave-wrapper {
  margin: 2em 0 0 0;
  font-size: 10px;
  font-size: 1rem;
}
#pageMembershipMyPage .mypage .leave-wrapper button.leave {
  font-size: 14px;
  font-size: 1.4rem;
  margin-bottom: 2.142em;
  color: var(--font-clr);
}
@media only screen and (min-width: 768px) {
  #pageMembershipMyPage .mypage .leave-wrapper button.leave {
    font-size: 14px;
    font-size: 1.4rem;
    margin-bottom: 4.285em;
  }
}

.dark-mode .membership .point-history-list .card .caption,
.dark-mode .membership .point-history-list .order-header-unique-key,
.dark-mode .membership .point-history-list .reward-name {
  color: var(--font-clr1) !important;
}

.men-login-wrap h1 {
  display: none;
}

#pageMembershipLogin .login {
  margin: 2.5em 0;
  padding: 2.5em 1.666em;
  background: var(--bg-clr2);
}
#pageMembershipLogin .login .heading {
  font-size: 22px;
  font-size: 2.2rem;
  text-align: center;
  color: var(--font-clr);
}
#pageMembershipLogin .login .link-wrapper a.link {
  width: auto;
}
#pageMembershipLogin .login .register-description {
  margin-top: 1.428em;
  font-size: 14px;
  font-size: 1.4rem;
  color: var(--font-clr);
}
#pageMembershipLogin .login .register-description a {
  color: inherit;
}

#pageMembershipLogin .dark-mode .login .heading,
#pageMembershipLogin .dark-mode .login .register-description {
  color: var(--font-clr1);
}

.membership .point-history .content {
  font-size: 14px;
  font-size: 1.4rem;
  margin: 0 1.428em;
  padding: 2.142em 0;
  width: auto !important;
  color: var(--font-clr);
}
@media only screen and (min-width: 768px) {
  .membership .point-history .content {
    font-size: 14px;
    font-size: 1.4rem;
    margin: 0 auto;
    padding: 4.285em;
    width: 57.142em !important;
  }
}
.membership .point-history .content::before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background: var(--bg-clr2);
  z-index: -1;
}
@media only screen and (min-width: 1200px) {
  .membership .point-history .content {
    font-size: 14px;
    font-size: 1.4rem;
    max-width: 85.714em;
    margin: 0 auto;
  }
}
.membership .point-history .point-history-summary {
  color: var(--font-clr);
}
.membership .point-history .point-history-summary .point-name {
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: normal !important;
  color: var(--font-clr) !important;
}
.membership .point-history .point-history-summary .description {
  color: var(--font-clr) !important;
}
.membership .pagination {
  font-size: 12px;
  font-size: 1.2rem;
  margin-bottom: 3.333em;
}
.membership .pagination .page-block .current {
  background: var(--main-clr);
  color: var(--font-clr2);
  border: 1px solid var(--main-clr);
}
.membership .pagination .page-block .page-link {
  color: var(--main-clr);
  border: 1px solid var(--main-clr);
}
.membership .pagination .page-block .ellipses {
  color: var(--font-clr);
}
.membership .point-history-list {
  font-size: 12px;
  font-size: 1.2rem;
  position: relative;
  padding: 1.666em;
  border-top: none !important;
  margin-bottom: 0 !important;
}
.membership .point-history-list::before {
  content: "";
  display: block;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background: var(--bg-clr3);
  z-index: -1;
}
.membership .point-history-list .card {
  position: relative;
  border-bottom: none !important;
}
.membership .point-history-list .card:not(:last-of-type)::before {
  content: "";
  display: block;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  border-bottom: 1px solid var(--font-clr);
  z-index: -1;
  opacity: 0.3;
}
.membership .point-history-list .card .caption {
  color: var(--font-clr) !important;
}
.membership .point-history-list .is-return .action-type {
  background: #96abaf !important;
  color: #fff !important;
  border-radius: 2px !important;
}
.membership .point-history-list .is-return .point {
  color: #96abaf !important;
}
.membership .point-history-list .is-get .action-type {
  background: #f36592 !important;
  color: #fff !important;
  border-radius: 2px !important;
}
.membership .point-history-list .is-get .point {
  color: #f36592 !important;
}
.membership .point-history-list .order-header-unique-key,
.membership .point-history-list .reward-name {
  color: var(--font-clr) !important;
}

.reward-list .reward-card-list {
  grid-template-columns: repeat(2, 1fr) !important;
}
@media only screen and (min-width: 768px) {
  .reward-list .reward-card-list {
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 4.166em;
    padding: 2.5em 0 5em 0;
  }
}

.reward-list {
  font-size: 12px;
  font-size: 1.2rem;
  padding: 1.666em;
  margin: 0 0 2.5em 0;
}
.reward-list + .mypage-link {
  font-size: 12px;
  font-size: 1.2rem;
  margin: 0 0 3.333em 0 !important;
}
@media only screen and (min-width: 768px) {
  .reward-list + .mypage-link {
    font-size: 12px;
    font-size: 1.2rem;
    margin: 0 0 5em 0 !important;
  }
}
@media only screen and (min-width: 1200px) {
  .reward-list + .mypage-link {
    font-size: 12px;
    font-size: 1.2rem;
    margin: 0 0 6.666em 0 !important;
  }
}
@media only screen and (min-width: 768px) {
  .reward-list {
    font-size: 12px;
    font-size: 1.2rem;
    width: 42.833em;
    margin: 0 auto;
  }
}
@media only screen and (min-width: 1200px) {
  .reward-list {
    font-size: 12px;
    font-size: 1.2rem;
    width: 66.666em;
  }
}
.reward-list .title {
  font-weight: normal !important;
  color: var(--font-clr);
  text-align: center;
}
.reward-list .title + .bar {
  display: none;
}
.reward-list .description {
  color: var(--font-clr);
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin-inline: auto;
}
.reward-list .reward-detail-wrapper .title {
  font-weight: normal;
  text-align: left;
  color: var(--font-clr);
}
.reward-list .reward-detail-wrapper .exchange-point {
  color: var(--font-clr);
}
.reward-list .reward-detail-wrapper .exchange-point-icon svg {
  fill: var(--font-clr);
}
.reward-list .reward-detail-wrapper .description {
  margin-inline: 0;
}
.reward-list .exchange-point-wrapper .exchange-point-icon > path {
  fill: var(--font-clr) !important;
}

.reward-card {
  font-size: 12px;
  font-size: 1.2rem;
  background: var(--bg-clr2);
  padding: 1.666em;
}
.reward-card a {
  pointer-events: none !important;
  display: block;
}
.reward-card a:hover {
  cursor: default !important;
}

#pageLaw .law-wrap {
  font-size: 12px;
  font-size: 1.2rem;
  padding: 0 1.666em 2.5em 1.666em;
  color: var(--font-clr);
}
@media only screen and (min-width: 1200px) {
  #pageLaw .law-wrap {
    font-size: 14px;
    font-size: 1.4rem;
    margin: 0 auto;
    width: 85.714em;
  }
}
#pageLaw .law-wrap .ttl-h1 {
  font-size: 22px;
  font-size: 2.2rem;
  text-align: center;
  margin: 1.363em auto;
}
@media only screen and (min-width: 1200px) {
  #pageLaw .law-wrap .ttl-h1 {
    font-size: 35px;
    font-size: 3.5rem;
    margin: 1.714em auto;
  }
}
#pageLaw .law-wrap h3 {
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: normal;
  margin-top: 1.666em;
}
@media only screen and (min-width: 1200px) {
  #pageLaw .law-wrap h3 {
    font-size: 22px;
    font-size: 2.2rem;
    margin-top: 1.818em;
  }
}
@media only screen and (min-width: 1200px) {
  #pageLaw .law-wrap h3 {
    font-size: 24px;
    font-size: 2.4rem;
    margin-top: 2.5em;
  }
}
#pageLaw h2 {
  display: none;
}
#pageLaw h2 + h3 {
  margin-top: 0;
}
#pageLaw p {
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 2;
}
#pageLaw .atobaraiTerm,
#pageLaw .bnplTerm {
  position: relative;
  margin-top: 2em;
  padding: 2em;
  font-size: 10px;
  font-size: 1rem;
  background: var(--bg-clr3);
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
#pageLaw .atobaraiTerm__title,
#pageLaw .bnplTerm__title {
  font-weight: bold;
}
#pageLaw .telnumValid__txt {
  color: #222;
}
.dark-mode #pageLaw .atobaraiTerm {
  color: var(--font-clr1);
}
#pageLaw .law-wrap .bnplTerm {
  background: transparent;
  border: 1px solid var(--font-clr);
  border-radius: 2px;
}

.priv-wrap {
  overflow-x: hidden;
}
@media only screen and (min-width: 1200px) {
  .priv-wrap {
    font-size: 14px;
    font-size: 1.4rem;
    margin: 0 auto;
    width: 85.714em;
  }
}
.priv-wrap .ttl-h1 {
  font-size: 22px;
  font-size: 2.2rem;
  text-align: center;
  margin: 1.363em auto;
}
@media only screen and (min-width: 1200px) {
  .priv-wrap .ttl-h1 {
    font-size: 35px;
    font-size: 3.5rem;
    margin: 1.714em auto 0 auto;
  }
}

#privacy {
  font-size: 14px;
  font-size: 1.4rem;
  padding: 1.428em;
  color: var(--font-clr);
}
.priv-wrap #privacy {
  position: relative;
}
.priv-wrap #privacy::before {
  content: "";
  position: absolute;
  display: block;
  width: 100%;
  height: 0;
  bottom: 0;
  border-top: solid 1px;
  border-color: var(--font-clr);
  opacity: 0.3;
}
@media only screen and (min-width: 1200px) {
  #privacy {
    font-size: 14px;
    font-size: 1.4rem;
    margin: 0 auto;
    width: 85.714em;
    padding: 4.285em 0;
  }
}
#privacy h2 {
  display: none;
}
#privacy .privacy_intro {
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 2;
  margin-bottom: 4.285em;
}
#privacy dl > dd {
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 2;
  margin-bottom: 3.571em;
}
#privacy dl > dd:last-of-type {
  margin-bottom: 0;
}
#privacy dl ul {
  margin-top: 2em;
  padding: 2em;
  font-size: 10px;
  font-size: 1rem;
  background: var(--bg-clr3);
}
#privacy dl ul li {
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 2;
}
#privacy dl ul li + li {
  margin-top: 0.714em;
}
.dark-mode #privacy dl ul {
  color: var(--font-clr1);
}

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