@charset "UTF-8";
/*
    Template: swell
    Theme Name: SWELL CHILD
    Theme URI: https://swell-theme.com/
    Description: SWELLの子テーマ
    Version: 1.0.0
    Author: LOOS WEB STUDIO
    Author URI: https://loos-web-studio.com/

    License: GNU General Public License
    License URI: http://www.gnu.org/licenses/gpl.html
*/

body {
  scroll-behavior: smooth;
}
#body_wrap {
  overflow: hidden;
  transition: opacity 0.5s ease;
}
#content {
  padding-top: 14vh;
}
#body_wrap.home #content {
  margin-bottom: 0;
}
p {
  line-height: 2;
}
p,
div,
span,
td,
li,
a {
  letter-spacing: 0.025em;
}
/* p a:hover,
td a:hover {
  opacity: 0.8;
} */
input::placeholder,
.iopt_textarea::placeholder {
  color: #bcbcbc;
  opacity: 1; /* Firefox の透明度対策 */
}
.error_message {
  color: #d24646;
}
.dark-mode .error_message {
  color: #ff7070;
}
/* ボタン以外のリンクのホバー時に下線を引く */
a:not(
    .swell-block-button__link,
    .c-iconBtn,
    .c-listMenu a,
    .p-postList__link,
    .back_to_top_button,
    .member-edit a,
    .page-numbers,
    .logo__wrapper a,
    .logout_member a
  ):hover {
  text-decoration: underline;
}
/* ヘッダー */
@media (min-width: 960px) {
  .p-spMenu {
    display: block !important;
  }
  .l-header__customBtn.sp_ {
    display: flex !important;
    width: auto !important;
    align-items: center;
  }
  .l-header__inner {
    justify-content: flex-end !important;
  }
}

.l-header__inner .l-header__gnav .c-gnav .menu-item a {
  overflow: hidden;
  color: transparent;
  font-size: 16px;
  text-shadow:
    0 -1.5em 0 var(--color_text),
    0 0 0 var(--color_text);
  transition: text-shadow 0.4s;
  border-left: none;
  padding: 0;
}
.l-header__inner .l-header__gnav .c-gnav .menu-item a:hover {
  text-shadow:
    0 0 0 var(--color_text),
    0 1.5em 0 var(--color_text);
  text-decoration: none;
  opacity: 1 !important;
  background-color: transparent;
}
.c-gnav > .menu-item > a .ttl {
  font-weight: normal;
  display: inline;
  position: relative;
  padding-bottom: 4px;
}

.c-gnav a::after {
  display: none !important;
}
.l-header {
  z-index: 102 !important;
  backdrop-filter: blur(4px);
}
.l-header[data-spfix="1"] {
  position: fixed !important;
  top: var(--swl-adminbarH, 0) !important;
  background: none !important;
  box-shadow: none;
}

/* メニュー項目それぞれにフィルターをかける */
/* .l-header[data-spfix="1"] .menu-item a,
.l-header[data-spfix="1"] .nav-link {
  filter: drop-shadow(0 0 1px var(--color_bg)) drop-shadow(0 0 1px var(--color_bg))
    drop-shadow(0 0 1px var(--color_bg));
} */
/* .dark-mode .l-header[data-spfix="1"] .menu-item a,
.dark-mode [data-spfix="1"] .nav-link {
    filter: drop-shadow(0 0 1px var(--color_bg)) drop-shadow(0 0 1px var(--color_bg))
    drop-shadow(0 0 1px var(--color_bg));
} */

/* ホバー時だけフィルターを外す */
.l-header[data-spfix="1"] .menu-item a:hover,
.l-header[data-spfix="1"] .nav-link:hover {
  filter: none;
}
/* .l-fixHeader,
.l-header__gnav{
    display: none !important;
} */
/* .l-header__logo{
    margin-right: auto !important;
} */
.l-header__logo .c-headLogo__link {
  padding: 0 !important;
}
#fix_header .l-fixHeader__inner {
  max-width: 100%;
}
.l-header__bar {
  position: absolute;
  top: 0;
  bottom: 0;
  display: flex !important;
  justify-content: center;
  align-items: center;
  width: auto;
  background-color: transparent;
  z-index: 2;
  animation: none !important;
  opacity: 1 !important;
  transform: translateY(0) !important;
  transition: 0.4s;
}
.l-header__bar .l-header__barInner {
  padding: 0;
}
.l-header__bar .l-header__barInner .c-iconList {
  gap: 10px;
}
.l-header__bar
  .l-header__barInner
  .c-iconList
  .c-iconList__item
  .c-iconList__link {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100px;
  height: 30px;
  border-radius: 50%;
  padding: 0;
  overflow: hidden;
  gap: 8px;
  transition: 0.4s;
}
/* .l-header__bar
  .l-header__barInner
  .c-iconList
  .c-iconList__item
  .c-iconList__link:before {
  position: absolute;
  content: "" !important;
  background-color: fff33;
  width: 100%;
  height: 100%;
  bottom: -100%;
  left: 0;
  transition: 0.6s;
} */
.l-header__bar
  .l-header__barInner
  .c-iconList
  .c-iconList__item
  .c-iconList__link:hover:before {
  bottom: 0;
}
/* ------------------------------SNSアイコンの色------------------------------ */
.l-header__bar
  .l-header__barInner
  .c-iconList
  .c-iconList__item
  .c-iconList__link {
  filter: grayscale(80%);
}
/* ---------------------------------------------------------------------------- */
.l-header__bar .l-header__barInner .c-iconList .c-iconList__item.-instagram {
  display: none;
}
.l-header__inner {
  max-width: 100%;
  padding: 0 20px 0 0 !important;
  gap: 0;
}
.l-header__inner .l-header__logo {
  text-align: left;
  padding: 0 0 0 20px;
  margin-right: 0;
  max-height: var(--logo_size_pc);
}
.l-header__inner .l-header__gnav {
  color: var(--color_text);
  margin: 0 !important;
  max-width: 47%;
}
.l-header__inner .l-header__gnav .c-gnav {
  justify-content: start;
  flex-wrap: wrap;
  height: auto;
}
.l-header__inner .l-header__gnav .c-gnav .menu-item {
  width: 100px;
  overflow: hidden;
  text-decoration: none;
}
.l-header__inner .l-header__gnav .c-gnav .menu-item a {
  font-weight: bold;
  transition: 0.4s;
  display: inline;
  padding: 0;
}
.l-header__bar
  .l-header__barInner
  .c-iconList
  .c-iconList__item.-search
  button:hover,
.-search:hover::after {
  opacity: 0.7;
}
.-search::after {
  transition: none !important;
  animation: none !important;
}
.hov-flash:hover {
  animation: none;
}
.icon-instagram::before {
  color: #f8f9fa;
  transition: 0.4s;
}
.icon-instagram:hover::before {
  opacity: 0.7;
}
/* ------------------------------メニューの形■------------------------------ */
/* .l-header__bar{
	right: 220px;
}
.l-header__bar .l-header__barInner .c-iconList .c-iconList__item a .c-iconList__icon{
	font-size: 1.2rem;
}
.l-header__bar .l-header__barInner .c-iconList .c-iconList__item.-facebook a{
	color: #1877f2;
}
.l-header__bar .l-header__barInner .c-iconList .c-iconList__item.-twitter a{
	color: #1DA1F2;
}
.l-header__bar .l-header__barInner .c-iconList .c-iconList__item.-instagram a{
	color: #CF2E92;
}
.l-header__bar .l-header__barInner .c-iconList .c-iconList__item.-line a{
	color: #00B900;
}
.l-header__bar .l-header__barInner .c-iconList .c-iconList__item.-youtube a{
	color: #DA1725;
}
.l-header__bar .l-header__barInner .c-iconList .c-iconList__item.-tiktok a{
	color: #000000;
}
.l-header__bar .l-header__barInner .c-iconList .c-iconList__item.-search button{
	color: var(--color_footer_bg);
}
.l-header__inner{
	padding: 0 !important;
}
.l-header__inner .l-header__customBtn,
.l-header__inner .l-header__menuBtn{
	margin: 0;
} */
/* -------------------------------------------------------------------------- */
/* ------------------------------メニューの形●------------------------------ */
.l-header__bar {
  right: 360px;
}
.l-header__bar .l-header__barInner .c-iconList .c-iconList__item.-facebook a {
  background-color: #1877f2;
}
.l-header__bar .l-header__barInner .c-iconList .c-iconList__item.-twitter-x a {
  background-color: #0f1419;
}
.l-header__bar .l-header__barInner .c-iconList .c-iconList__item.-instagram a {
  background-color: #cf2e92;
}
.l-header__bar .l-header__barInner .c-iconList .c-iconList__item.-line a {
  background-color: #00b900;
}
.l-header__bar .l-header__barInner .c-iconList .c-iconList__item.-youtube a {
  background-color: #da1725;
}
.l-header__bar .l-header__barInner .c-iconList .c-iconList__item.-tiktok a {
  background-color: #000000;
}
.l-header__bar
  .l-header__barInner
  .c-iconList
  .c-iconList__item.-search
  button {
  color: var(--color_text);
  /* background-color: var(--color_footer_bg); */
}
.l-header__bar .l-header__barInner .c-iconList .c-iconList__item a {
  color: var(--color_bg);
}
.l-header__inner {
  padding: 0 20px 0 0 !important;
}
.l-header__inner .l-header__customBtn,
.l-header__inner .l-header__menuBtn {
  margin: 10px;
}
@media screen and (max-width: 959px) {
  .l-header__inner .l-header__gnav {
    display: none;
  }
  .l-header__inner {
    padding: 0 10px 0 0 !important;
    height: 80px !important;
  }
  .l-header__inner .l-header__menuBtn {
    margin: 10px 5px;
  }
  .l-header__inner .l-header__customBtn {
    margin-right: 24px;
    width: auto !important;
  }
  .l-header[data-spfix="1"] > :not(.c-iconBtn__icon) {
    filter: none;
  }
}
@media screen and (max-width: 599px) {
  .c-iconBtn__label {
    font-size: 10px !important;
  }
}
/* -------------------------------------------------------------------------- */
.l-header__inner .l-header__customBtn,
.l-header__inner .l-header__menuBtn {
  width: var(--logo_size_pc);
  height: var(--logo_size_pc);
}
.l-header__inner .c-iconBtn {
  color: var(--color_text);
  transition: 0s;
}
.l-header__inner .c-iconBtn:hover {
  opacity: 0.7;
}
.l-header__bar
  .l-header__barInner
  .c-iconList
  .c-iconList__item.-search
  button {
  transition: 0s;
}
.l-header__inner .l-header__customBtn {
  position: relative;
  width: auto;
  display: flex;
  gap: 32px;
}
.l-header__inner .l-header__customBtn .customBtn-cartnumber {
  display: none;
  /* position: absolute;
	display: flex;
	justify-content: center;
	align-items: center;
	top: 0;
	right: 0;
	width: 24px;
	height: 24px;
	background-color: #DB8241;
	color: #fff;
	font-size: 10px;
	border-radius: 50%;
	z-index: 1; */
}
.l-header__inner .l-header__menuBtn .c-iconBtn {
  position: relative;
  /* background-color: var(--color_footer_bg); */
  overflow: hidden;
}

.l-header__inner .l-header__customBtn .c-iconBtn:hover:before,
.l-header__inner .l-header__menuBtn .c-iconBtn:hover:before {
  bottom: 0;
}
.l-header__inner .l-header__menuBtn .c-iconBtn i.icon-menu-thin {
  position: relative;
  width: 24px;
  height: 24px;
  transition: 0.5s;
  animation: hamburgerClickv2 0.5s ease-out forwards;
}
.dark-mode .l-header__inner .l-header__menuBtn .c-iconBtn i.icon-menu-thin {
  filter: none;
}
.l-header__inner .l-header__menuBtn .c-iconBtn i.icon-menu-thin:before {
  content: "" !important;
  position: absolute;
  width: 100%;
  height: 2px;
  background-color: var(--color_text);
  top: 6px;
  left: 0;
  transition: 0.5s;
  animation: hamburgerClickv202 0.5s ease-out forwards;
}
.l-header__inner .l-header__menuBtn .c-iconBtn i.icon-menu-thin:after {
  content: "" !important;
  position: absolute;
  width: 100%;
  height: 2px;
  background-color: var(--color_text);
  bottom: 6px;
  left: 0;
  transition: 0.5s;
  animation: hamburgerClickv203 0.5s ease-out forwards;
}
.l-header__inner .l-header__menuBtn .c-iconBtn.activeh i.icon-menu-thin {
  animation: hamburgerClick 0.5s ease-out forwards !important;
}
.l-header__inner .l-header__menuBtn .c-iconBtn.activeh i.icon-menu-thin:before {
  animation: hamburgerClick02 0.5s ease-out forwards !important;
}
.l-header__inner .l-header__menuBtn .c-iconBtn.activeh i.icon-menu-thin:after {
  animation: hamburgerClick03 0.5s ease-out forwards !important;
}
@keyframes hamburgerClickv202 {
  0% {
    top: 11px;
    transform: rotate(-45deg);
  }
  50% {
    top: 11px;
    transform: rotate(0deg);
  }
  100% {
    top: 6px;
    transform: rotate(0deg);
  }
}
@keyframes hamburgerClickv203 {
  0% {
    bottom: 11px;
    transform: rotate(45deg);
  }
  50% {
    bottom: 11px;
    transform: rotate(0deg);
  }
  100% {
    bottom: 6px;
    transform: rotate(0deg);
  }
}
@keyframes hamburgerClick02 {
  50% {
    top: 11px;
    transform: rotate(0deg);
  }
  100% {
    top: 11px;
    transform: rotate(-45deg);
  }
}
@keyframes hamburgerClick03 {
  50% {
    bottom: 11px;
    transform: rotate(0deg);
  }
  100% {
    bottom: 11px;
    transform: rotate(45deg);
  }
}
#sp_menu .c-widget__title {
  display: none;
}
#sp_menu .p-spMenu__nav {
  margin-top: 0;
}
.p-spMenu__inner::before {
  background: var(--color_bg);
}
.-right .p-spMenu__inner {
  -webkit-transform: translateX(100vw) !important;
  transform: translateX(100vw) !important;
}
[data-spmenu="opened"] .p-spMenu__inner {
  -webkit-transform: translateX(0) !important;
  transform: translateX(0) !important;
}
#sp_menu .p-spMenu__inner {
  width: 60vw;
  padding-top: 0;
}
/* #sp_menu .p-spMenu__inner:before{
	background-color: rgba(163, 173, 192, 0.8);
} */
#sp_menu .p-spMenu__inner .p-spMenu__body {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  height: calc(100% - 200px);
  padding: 0;
  margin: 140px 20px 60px 20px;
  overflow-y: auto;
}
#sp_menu .p-spMenu__inner .p-spMenu__body .p-spMenu__nav {
  width: 100%;
  max-width: 800px;
  margin: 0 auto;
}
#sp_menu .p-spMenu__inner .p-spMenu__body .p-spMenu__nav .c-listMenu {
  text-align: center;
  font-weight: normal;
  font-size: 1.2rem;
}
#sp_menu
  .p-spMenu__inner
  .p-spMenu__body
  .p-spMenu__nav
  .c-listMenu
  .menu-item {
  border-bottom: 1px solid var(--color_border);
}
#sp_menu .p-spMenu__inner .p-spMenu__body .p-spMenu__nav .c-listMenu a {
  position: relative;
  color: var(--color_text);
  border: none;
  overflow: hidden;
  transition: 0.4s;
}
/* #sp_menu .p-spMenu__inner .p-spMenu__body .p-spMenu__nav .c-listMenu a:before {
  position: absolute;
  content: "";
  background-color: var(--color_main);
  opacity: 0.1;
  width: 100%;
  height: 100%;
  bottom: -100%;
  left: 0;
  transition: 0.4s;
} */
#sp_menu
  .p-spMenu__inner
  .p-spMenu__body
  .p-spMenu__nav
  .c-listMenu
  a:hover:before {
  bottom: 0;
}
#sp_menu
  .p-spMenu__inner
  .p-spMenu__body
  .p-spMenu__nav
  .c-listMenu
  a
  .c-smallNavTitle {
  display: inline-block;
  top: auto;
}
#sp_menu .p-spMenu__inner .p-spMenu__body .p-spMenu__bottom {
  width: 100%;
  max-width: 800px;
  margin-left: auto;
  margin-right: auto;
}
.p-spMenu__closeBtn {
  display: none !important;
}
/* #sp_menu #sp_menu_bottom{
	color: #86450A;
} */
#sp_menu #sp_menu_bottom .u-bg-main {
  background-color: var(--color_text) !important;
}
@media screen and (max-width: 959px) {
  .l-header__bar {
    display: none !important;
  }
  #sp_menu .p-spMenu__inner {
    width: 50vw;
  }
  .l-header__inner .l-header__customBtn {
    margin-right: 0;
  }
}
@media screen and (max-width: 599px) {
  .l-header__inner .l-header__logo {
    max-width: 180px;
    padding: 0 0 0 10px;
    height: var(--logo_size_sp);
  }
  .l-header__inner .l-header__customBtn,
  .l-header__inner .l-header__menuBtn {
    width: var(--logo_size_sp);
    height: var(--logo_size_sp);
  }
  #sp_menu .p-spMenu__inner {
    width: 100vw;
  }
  .l-header__inner .c-iconBtn {
    filter: drop-shadow(0 0 1px var(--color_bg))
      drop-shadow(0 0 1px var(--color_bg)) drop-shadow(0 0 1px var(--color_bg));
    text-shadow: none;
  }
  .c-iconBtn {
    flex-direction: column !important;
    gap: 4px !important;
  }
}

/* 400px以下で、スマホ用ヘッダーのアイコンラベルを非表示に */
@media screen and (max-width: 400px) {
  .l-header__customBtn.sp_ .c-iconBtn__label {
    display: none !important;
  }
}

/* フッター */
.l-footer {
  font-size: initial;
  padding-top: 80px;
}
.l-footer__inner {
  display: flex;
  justify-content: space-between;
  margin-left: auto;
  margin-right: auto;
  /* max-width: calc(var(--container_size, 0px) + var(--swl-pad_container, 0px)*2); */
  /* padding-left: var(--swl-pad_container,0);
	padding-right: var(--swl-pad_container,0); */
  padding-bottom: 80px;
  width: 80vw;
}
.l-footer__inner .l-container {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 30px;
  height: 100%;
  width: 40vw;
  padding: 0 !important;
}
.l-footer__foot .l-container {
  align-items: flex-end;
}
.l-footer__inner .l-footer__widgetArea {
  padding: 0;
  background: var(--color_footer_bg);
}
.l-footer__inner .widget_swell_sns_links .c-iconList {
  justify-content: flex-start !important;
}
.l-footer__inner .l-footer__foot {
  padding: 0;
}
.l-footer__inner .l-footer__foot .copyright {
  text-align: right;
  opacity: 0.75;
  font-size: 12px;
  color: #f8f9fa;
}
.l-footer__inner .l-footer__foot .l-footer__nav {
  justify-content: flex-end;
  gap: 24px;
  padding: 1em 0 1em;
  width: 408px;
}
.l-footer__inner .l-footer__foot .l-footer__nav li a,
.w-footer__box .c-listMenu a {
  overflow: hidden; /* 1つ目の影を隠す */
  color: transparent; /* テキスト本体は透明にする */
  font-size: 16px;
  text-shadow:
    0 -1.5em 0 #fff,
    0 0 0 #fff;
  transition: text-shadow 0.4s;
  border-left: none;
  padding: 0;
}
.l-footer__inner .l-footer__foot .l-footer__nav li a:hover,
.w-footer__box .c-listMenu a:hover {
  text-shadow:
    0 0 0 #fff,
    0 1.5em 0 #fff;
  text-decoration: none;
  opacity: 1 !important;
  background-color: transparent;
}
/* フッターにインスタグラムのアイコンを表示 */
.l-footer__inner .l-footer__foot .l-footer__nav li:last-child {
  position: relative;
}
.l-footer__inner .l-footer__foot .l-footer__nav li:last-child a {
  padding-right: 32px;
  z-index: 10;
  position: relative;
}
.l-footer__inner .l-footer__foot .l-footer__nav li:last-child::after {
  content: "";
  display: inline-block;
  width: 32px;
  height: 32px;
  background: url(https://web.ailesys.co.jp/skameec/wp-content/uploads/2025/11/image-10.png);
  background-size: contain;
  position: absolute;
  right: 0;
  top: -2px;
}
.w-footer__box .c-listMenu a {
  padding-top: 0;
  padding-bottom: 0;
  font-size: 12px;
}
.l-footer__inner .l-footer__foot .footer-user-links {
  display: flex;
  align-items: flex-start;
  gap: 24px;
}
.l-footer__inner .l-footer__foot .footer-user-links a {
  display: flex !important;
  align-items: center;
  justify-content: flex-start;
}
.l-footer__inner .l-footer__foot .footer-user-links a.c-iconBtn {
  transition: 0.4s;
}
.l-footer__inner .l-footer__foot .footer-user-links a.c-iconBtn:hover {
  opacity: 0.7;
}
.l-footer .c-listMenu li {
  display: inline-block;
}
.w-beforeFooter {
  position: relative;
  font-size: initial;
  overflow: inherit;
  z-index: -1;
  margin-top: 0;
}
.w-beforeFooter .footer-imgarea img {
  display: block;
  aspect-ratio: 4/1;
  object-fit: cover;
  object-position: bottom;
}
.w-beforeFooter .footer-imgarea .mainh2-box p {
  color: var(--color_bg);
}
.w-footer__box {
  padding: 0 !important;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
.w-footer__box .widget_media_image {
  position: relative;
  display: inline-block; /* 必要に応じて調整 */
  right: 8px;
}

.w-footer__box .logo__wrapper {
  margin-left: -12px;
}
.w-footer__box .logo__wrapper a {
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.w-footer__box .logo__wrapper a img {
  height: 100px;
}
.w-footer__box .logo_text {
  text-align: center;
  font-size: 32px;
  font-family: "Abyssinica SIL", sans-serif;
  margin-top: -16px;
  letter-spacing: 0.05em;
}
.widget_nav_menu {
  order: 3;
  font-size: 12px;
  min-width: 500px;
}

.widget_nav_menu .menu ul {
  display: flex;
  gap: 24px;
  font-size: 16px;
}
.widget_nav_menu li a {
  border-bottom: none !important;
  padding-right: 8px !important;
}
#footer .-instagram a {
  margin: 0;
}
#footer .icon-instagram:before {
  font-size: 20px;
}
#footer .widget_swell_sns_links {
  height: 24px;
  margin-top: 1em;
}
li.external_link a::after {
  font-family: "Font Awesome 6 Free";
  content: "\f08e";
  font-weight: 900;
  margin-left: 0.3em;
  font-size: 1em;
  vertical-align: middle;
}
@media screen and (max-width: 1050px) {
  .l-footer__inner {
    width: 90vw;
  }
}

@media screen and (max-width: 959px) {
  .l-footer {
    padding-top: 60px;
  }
  .l-footer__inner {
    padding-bottom: 60px;
  }
  .w-beforeFooter .footer-imgarea img {
    aspect-ratio: 3/1;
  }
  .w-footer__box .logo__wrapper a img {
    height: 80px;
  }
  .w-footer__box .logo_text {
    font-size: 28px;
  }
  .w-footer__box .logo__wrapper {
    margin-left: -8px;
  }
  .l-footer .c-listMenu li {
    display: block;
    padding-bottom: 8px;
  }
  .l-footer__inner .widget_nav_menu {
    display: none;
  }
  /* @media screen and (min-width: 600px) {
  .l-footer__inner .l-footer__foot .l-footer__nav li:nth-child(5),
  .l-footer__inner .l-footer__foot .l-footer__nav li:nth-child(6),
  .l-footer__inner .l-footer__foot .l-footer__nav li:nth-child(7),
  .l-footer__inner .l-footer__foot .l-footer__nav li:nth-child(8) {
    display: none;
  }
} */
}
@media screen and (max-width: 599px) {
  .l-footer {
    padding-top: 40px;
  }
  .l-footer__inner {
    flex-direction: column;
    padding-bottom: 40px;
    width: 80vw;
  }
  .l-footer__inner .l-container {
    align-items: flex-end;
    width: 100%;
    gap: 32px;
  }

  .l-footer__inner .l-footer__widgetArea {
    position: absolute;
  }
  .l-footer__inner .l-footer__foot .copyright {
    text-align: right;
    font-size: 12px;
  }
  .l-footer__inner .l-footer__foot .l-footer__nav {
    /* display: grid;
    grid-template-columns: repeat(2, 1fr); */
    padding: 0;
    gap: 16px !important;
    margin-bottom: 8px;
    width: 100%;
    width: 350px;
    margin-left: auto;
  }
  .l-footer__inner .l-footer__foot .l-footer__nav li a {
    font-size: 12px;
  }
  .w-footer__box {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 8px;
  }
  .w-footer__box .widget_media_image {
    order: 2;
    right: -4px;
  }
  .w-footer__box .logo_text {
    font-size: 24px;
  }
  .w-footer__box img {
    width: 72px;
    margin-bottom: 4px;
  }
  .w-footer__box .logo__wrapper {
    margin-right: -8px;
  }
  .w-footer__box .logo__wrapper a img {
    height: auto;
    width: 80px;
  }
  #footer .widget_swell_sns_links {
    margin-top: 0;
  }
  .l-footer__nav li:nth-child(1) {
    order: 1;
  }
  .l-footer__nav li:nth-child(2) {
    order: 2;
  } /* 偶数order */
  .l-footer__nav li:nth-child(3) {
    order: 3;
  }
  .l-footer__nav li:nth-child(4) {
    order: 4;
  } /* 偶数order */
  .l-footer__nav li:nth-child(5) {
    order: 5;
  }
  .l-footer__nav li:nth-child(6) {
    order: 6;
    text-align: right;
  } /* 偶数order */
  .l-footer__nav li:nth-child(7) {
    order: 7;
    text-align: right;
  }
  /* .l-footer__nav li:nth-child(8) {
    order: 6;
    text-align: right;
  } 
  .l-footer__nav li:nth-child(9) {
    order: 8;
    text-align: right;
  }
  .l-footer__nav li:nth-child(10) {
    order: 10;
    text-align: right;
  }  */
  .l-footer__inner .l-footer__foot .l-footer__nav {
    display: flex;
    flex-direction: column;
    width: 100%;
    align-items: flex-end;
  }

  .l-footer__inner .l-footer__foot .l-footer__nav li {
    text-align: left;
  }

  .l-footer__inner .l-footer__foot .l-footer__nav li a {
    font-size: 14px;
  }

  .l-footer__inner .l-footer__foot .l-footer__nav li:last-child::after {
    left: 68px;
  }
}

/* ------------------------------フッターデザイン02-------------------------- */
/* .l-footer{
	width: 92vw;
	margin-left: auto;
	border-radius: 50px 0 0 0;
	box-shadow: 0 0 20px rgb(0 0 0 / 20%);
}
.w-beforeFooter{
	margin-top: 5rem;
	margin-bottom: -80px !important;
}
.w-beforeFooter .footer-imgarea img{
	width: 96vw;
}
.w-beforeFooter .footer-imgarea.swell-block-fullWide{
	width: 96vw;
} */
/* -------------------------------------------------------------------------- */

/* 検索モーダル */
#search_modal .p-searchModal__inner .c-searchForm__submit {
  border-radius: 0;
  background-color: var(--color_text) !important;
}
.dark-mode #search_modal .p-searchModal__inner .c-searchForm__submit {
  background-color: #333 !important;
}
/* ページタイトル */
.c-pageTitle {
  display: none;
}

/* パンくず */
#breadcrumb {
  display: none;
  /* color: #fff;
	background: var(--color_footer_bg) !important;
	box-shadow: none !important;
	text-shadow: none; */
}

/* 共通タイトルデザイン */
.mainh2-box {
  position: relative;
}
.mainh2-box h2:first-child {
  font-size: 2rem;
  color: var(--color_text);
  margin-right: 30px;
  letter-spacing: 0.05em;
}
.mainh2-box p {
  bottom: 0;
  right: 0;
  opacity: 0.14;
  color: var(--color_main);
  font-size: 8rem;
  font-weight: bold;
  line-height: 0.9;
  z-index: -1;
}
.dark-mode .mainh2-box p {
  opacity: 0.7;
  color: #4174ab;
}
@media screen and (max-width: 959px) {
  .mainh2-box h2:first-child {
    font-size: 1.6rem;
    text-align: center !important;
  }
  .mainh2-box p {
    font-size: 12vw;
  }
}
@media screen and (max-width: 599px) {
  .mainh2-box p {
    font-size: 16vw;
    line-height: 1;
  }
}

/* 共通ボタンデザイン */
.button-design a.swell-block-button__link {
  max-width: 300px;
  min-width: 200px;
  background-color: var(--color_main);
  color: var(--color_bg);
  font-weight: bold;
  box-shadow: none;
  overflow: hidden;
  position: relative;
  z-index: 0;
  border: 1px solid var(--color_main);
}
.button-design a.swell-block-button__link::after {
  background: var(--color_bg);
}
.button-design a.swell-block-button__link::after,
.dark-mode .button-design a.swell-block-button__link::after {
  position: absolute;
  top: 0;
  left: 0;
  content: "";
  width: 100%;
  height: 100%;
  transform: scaleX(0);
  transform-origin: left;
  transition: transform 0.25s ease;
  z-index: -1;
}
/* 共通ボタンダークモードデザイン */
.dark-mode .button-design a.swell-block-button__link::after {
  background: #f8f9fa;
}
.dark-mode .button-design a.swell-block-button__link,
.dark-mode .form-submit input {
  border: 1px solid #f8f9fa;
  color: var(--color_text);
}
/* ホバーの動き */
.button-design a.swell-block-button__link:hover {
  color: var(--color_main);
}
.button-design a.swell-block-button__link:hover::after,
.dark-mode .button-design a.swell-block-button__link:hover::after {
  transform: scaleX(1);
}
.dark-mode .button-design a.swell-block-button__link:hover {
  color: #1c1d1f;
}
.is-style-btn_normal {
  --the-btn-radius: 0;
}
/* ランキングボタンのサイズ調整 */
.is-style-btn_normal.ranking__btn a {
  width: var(--the-width);
  min-width: var(--the-min-width) !important;
}
.button-design a.swell-block-button__link span {
  position: relative;
  z-index: 1;
}

/* ホバー時に全体を薄くする */
/* .is-style-btn_normal a:hover {
  opacity: 0.8 !important;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1),
    0 12px 24px -12px rgba(0, 0, 0, 0.2);
} */
.button-design a.swell-block-button__link:before {
  display: none;
  /* position: absolute;
  content: "";
  width: 100%;
  height: 100%;
  background-color: #fff;
  bottom: -100%;
  left: 0;
  transition: 0.4s;
  z-index: 0;
  opacity: 0.1; */
}
/* .button-design a.swell-block-button__link:hover:before {
  bottom: 0;
}
.button-design a.swell-block-button__link:after {
  display: flex;
  justify-content: center;
  align-items: center;
  color: var(--color_bg);
  font-size: 24px;
  font-weight: normal;
  border-radius: 50%;
  right: 10px;
} */

/* お問い合わせフォーム */
.form-content {
  width: 980px;
  max-width: 100%;
  margin: 0 auto;
}
.form-item {
  display: flex;
  justify-content: space-between;
  margin-bottom: 2rem;
}
.form-item input,
.form-item textarea {
  max-width: 100%;
  width: 600px;
}
.form-item .required {
  display: inline-block;
  font-size: 12px;
  background-color: #d24646;
  color: var(--color_bg);
  border-radius: 50px;
  padding: 1px 6px;
  margin-left: 20px;
}
.dark-mode .form-item .required {
  background-color: #ff7070;
}
.form-accept {
  text-align: center;
  margin-top: 60px;
  margin-bottom: 2rem;
}
.form-accept .acceptbox {
  width: 800px;
  max-width: 100%;
  margin: 0 auto;
}
.form-accept .acceptbox h3 {
  text-align: left;
  border: none;
  padding: 0;
  margin-bottom: 20px;
}
.form-accept .acceptbox h3:before {
  content: none !important;
}
.form-accept .acceptbox p {
  text-align: left;
  margin-bottom: 40px;
}
.form-accept .acceptbox .wpcf7-list-item {
  margin-left: 0;
}
.form-submit {
  text-align: center;
}
.form-submit input {
  width: 240px !important;
  max-width: 100%;
  color: var(--color_bg);
  border: 1px solid var(--color_main);
  font-weight: bold;
  border-radius: 50px;
  padding: 10px 50px;
  margin: 0 auto;
  background-image: linear-gradient(
    to right,
    var(--color_bg) 50%,
    var(--color_main) 50%
  );
  background-size: 200% 100%;
  background-position: right;
  transition: background-position 0.4s ease;
}
.form-submit input:hover {
  background-position: left;
  color: var(--color_main);
}
.dark-mode .form-submit input {
  color: var(--color_bg);
}
.dark-mode .form-submit input:hover {
  color: var(--color_text);
}
.form-submit .wpcf7-spinner {
  position: absolute;
}

.dark-mode .acceptbox a,
.dark-mode .acceptbox input:checked + .wpcf7-list-item-label::after {
  color: #98accf !important;
}
@media screen and (max-width: 959px) {
  .form-content {
    width: 800px;
  }
  .form-item {
    display: block;
  }
  .form-item label {
    display: block;
    margin-bottom: 6px;
  }
  .form-item input,
  .form-item textarea {
    width: 100%;
  }
}
@media screen and (max-width: 599px) {
  .form-accept .acceptbox {
    padding: 20px;
  }
}

@media screen and (max-width: 399px) {
  .form-item .wpcf7-form-control {
    flex-direction: column;
    gap: 4px;
  }

  .form-item .wpcf7-list-item {
    margin-left: 8px;
  }
}

/* サイトマップ用 */
.wsp-container {
  display: grid;
}
.wsp-container h2 {
  position: relative;
  text-decoration: none;
  display: block;
  border: 1px solid #ccc;
  padding: 5px 9px 5px 36px;
  margin: 40px 0 10px;
  background-color: #f6f6f6;
  color: #454545;
  font-size: 1em;
}
.wsp-container h2:before {
  position: absolute;
  content: "";
  top: 34%;
  left: 15px;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 6px 0 6px 8px;
  border-color: transparent transparent transparent #c29f54;
}
.wsp-container ul {
  list-style: none !important;
  margin: 0;
}
.wsp-container a {
  position: relative;
  text-decoration: none;
  display: block;
  border: 1px solid #ccc;
  padding: 5px 9px 5px 36px;
  margin: 10px 0;
  background-color: #f6f6f6;
  color: #454545;
  font-size: 0.8em;
}
.wsp-container a:before {
  position: absolute;
  content: "";
  top: 34%;
  left: 15px;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 6px 0 6px 8px;
  border-color: transparent transparent transparent #c29f54;
}
.wsp-container a:last-child {
  margin-bottom: 0;
}
.wsp-container a:hover {
  background-color: var(--color_bg);
}
.wsp-areas-list a {
  padding: 4px 9px 4px 34px;
  margin-left: 20px;
  font-size: 14px;
  color: #454545;
}
.wsp-areas-list a:before {
  border-width: 5px 0 5px 7px;
  border-color: transparent transparent transparent #5d2240bb;
}
.sitemap-title {
  display: block;
  font-size: 1.4rem;
  color: var(--color_text);
  text-decoration: underline;
  margin-bottom: 30px;
  transition: 0.4s;
}
.sitemap-title:hover {
  opacity: 0.7;
}

/* メインビジュアル */
.p-mainVisual {
  position: relative;
  height: auto !important;
  padding-bottom: 6em;
  margin: 100px 0 0 0;
  overflow: initial;
}
.p-mainVisual .p-mainVisual__inner {
  width: 90%;
  height: auto !important;
  max-height: calc(100vh - 100px);
  aspect-ratio: 16/9;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  margin: 0 0 0 auto;
}
/* .p-mainVisual .p-mainVisual__inner .p-mainVisual__slide {
  	margin-left: 3vw !important;
	margin-right: 3vw !important;
} */
.p-mainVisual__textLayer {
  /* font-family: "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif; */
  width: 100%;
  right: 0;
  left: auto;
  padding-top: 16vh;
  padding-bottom: 10vh;
  justify-content: flex-end;
  -webkit-transform: none;
  transform: none;
  box-sizing: border-box;
  margin: 0 72px !important;
}
.p-mainVisual__textLayer .p-mainVisual__slideTitle {
  font-size: 24px !important;
  letter-spacing: 0.1em;
}
.p-mainVisual__textLayer .p-mainVisual__slideText {
  font-size: 2rem !important;
}
.topmv-snsembed {
  position: absolute;
  width: 25%;
  top: 120px;
  left: -12px;
  padding: 0;
  z-index: 2;
  box-sizing: border-box;
}
.topmv-snsembed .twitter-container,
.topmv-snsembed .facebook-container,
.topmv-snsembed .instagram-container,
.topmv-snsembed .tiktok-container,
.topmv-snsembed .threads-container {
  max-width: 450px !important;
  width: 100% !important;
  height: 600px !important;
  margin-right: auto;
}
.topmv-snsembed .twitter-container iframe,
.topmv-snsembed .facebook-container iframe {
  width: 100% !important;
}
.topmv-snsembed .facebook-container .fb-page,
.topmv-snsembed .facebook-container .fb-page span,
.topmv-snsembed .facebook-container iframe {
  width: 100% !important;
}
.topmv-snsembed .instagram-container iframe {
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 2/3;
}
.topmv-snsembed .threads-container {
  overflow: auto;
}
.topmv-snsembed .instagram-container .insta-box-h {
  position: relative;
  background-color: var(--color_bg);
  border: 1px solid #ddd;
  border-bottom: none;
  border-radius: 10px 10px 0 0;
  padding: 0.8em;
}
.topmv-snsembed .instagram-container .insta-box-h .insta-prf {
  position: absolute;
  top: 10px;
  right: 10px;
  background-color: #1d9bf0;
  color: var(--color_bg);
  border-radius: 5px;
  padding: 3px 10px;
}
.topmv-snsembed .instagram-container .insta-box-h .insta-prf:hover {
  opacity: 0.8;
}
.topmv-snsembed .instagram-container .insta-box-c {
  background-color: var(--color_bg);
  border: 1px solid #ddd;
  border-radius: 0 0 10px 10px;
  padding: 1em;
  height: calc(100% - 56px) !important;
}
.topmv-snsembed .tiktok-container .tiktok-embed {
  margin: 0;
}
.topmv-snsembed .tiktok-container iframe {
  height: 600px !important;
}
.topmv-snsembed .tiktok-container .css-vptvdy {
  max-width: 100% !important;
}
@media screen and (max-width: 959px) {
  .p-mainVisual {
    width: 100%;
    padding: 0;
  }
  .p-mainVisual .p-mainVisual__inner {
    width: 100%;
    max-height: 100vh;
  }
  .p-mainVisual__textLayer {
    width: 100vw;
    justify-content: center;
  }
  .p-mainVisual__textLayer .p-mainVisual__slideTitle {
    font-size: 20px !important;
  }
  .p-mainVisual__textLayer .p-mainVisual__slideText {
    font-size: 3.5vw !important;
  }
  .topmv-snsembed {
    display: none;
  }
  .topmv-snsembed .twitter-container,
  .topmv-snsembed .facebook-container,
  .topmv-snsembed .instagram-container,
  .topmv-snsembed .tiktok-container,
  .topmv-snsembed .threads-container {
    width: 100% !important;
    height: 500px !important;
    margin: 0 auto;
  }
  .topmv-snsembed .facebook-container .fb-page,
  .topmv-snsembed .facebook-container .fb-page span,
  .topmv-snsembed .facebook-container iframe {
    height: 500px !important;
  }
  .topmv-snsembed .tiktok-container iframe {
    height: 500px !important;
  }
}
@media screen and (max-width: 599px) {
  .p-mainVisual {
    /* margin: 80px 0 40px 0; */
    margin: 0 0 40px 0;
    padding: 0 !important;
  }
  .p-mainVisual__textLayer {
    padding-top: 10vh;
  }
  .p-mainVisual__textLayer .p-mainVisual__slideTitle {
    font-weight: 450;
    height: 320px !important;
  }
  .p-mainVisual .p-mainVisual__inner .p-mainVisual__slide {
    height: 100vh !important;
  }
}
/* トップページ */
.top-business02 .swell-block-column:last-child {
  position: relative;
}
.top-business02 .swell-block-column:last-child:before {
  position: absolute;
  content: "";
  width: 100vw;
  height: 100%;
  top: 0;
  left: 0;
  background-color: var(--color_bg);
  border-radius: 20px;
  transform: scale(1.3, 1.4);
  z-index: -1;
}
.top-business .business-list .swell-block-columns__inner {
  counter-reset: number 0;
}
.top-business .business-list img {
  aspect-ratio: 3/2;
  object-fit: cover;
}
.top-business .business-list h3,
.top-business .business-list p {
  padding: 0 16px;
}
.top-business .business-list h3 {
  position: relative;
  padding-right: 5rem;
}
.top-business .business-list h3:after {
  position: absolute;
  content: "";
  counter-increment: number 1;
  content: counter(number);
  bottom: -20px;
  right: 20px;
  font-size: 7rem;
  font-weight: bold;
  line-height: 1;
  color: #000;
  z-index: 2;
  opacity: 0.5;
  font-family:
    "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3",
    "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  font-style: italic;
}
.top-productlist02 {
  background-size: 1640px !important;
}
.top-productlist02 .catlist-area {
  max-width: 280px;
  width: 100%;
  list-style: none;
  padding: 10px;
  margin: 0 auto;
}
.top-productlist02 .catlist-area li {
  margin: 0;
}
.top-productlist02 .catlist-area li .catlist-item {
  position: relative;
  display: block;
  color: var(--color_main);
  border-bottom: 1px solid #999;
  padding: 10px 10px 10px 40px;
  overflow: hidden;
}
.top-productlist02 .catlist-area .catlist-item:before {
  position: absolute;
  content: "\e92f";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-family: icomoon !important;
  font-style: normal;
  font-variant: normal;
  font-weight: 400;
  line-height: 1.2;
  text-transform: none;
  font-size: 16px;
  width: 16px;
  height: 16px;
  top: 0;
  bottom: 0;
  left: 10px;
  margin: auto 0;
}
.top-productlist02 .catlist-area .catlist-item:after {
  position: absolute;
  content: "";
  width: 100%;
  height: 100%;
  background-color: var(--color_main);
  bottom: -100%;
  left: 0;
  opacity: 0.2;
  transition: 0.4s;
  z-index: 0;
}
.top-productlist02 .catlist-area .catlist-item:hover:after {
  bottom: 0;
}
.top-productlist02 .productlist02-postlist .p-postList__link {
  overflow: hidden;
}
.top-productlist02 .productlist02-postlist .p-postList__thumb {
  position: absolute;
  display: flex;
  top: 0;
  bottom: 0;
  margin: auto 0;
  box-shadow: none;
}
.top-productlist02 .productlist02-postlist .p-postList__thumb:after {
  position: absolute;
  content: "";
  background: linear-gradient(
    to right,
    rgba(255, 255, 255, 0) 30%,
    var(--color_bg) 80%
  );
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
}
.top-productlist02 .productlist02-postlist .p-postList__body {
  position: relative;
  width: 100% !important;
  padding: 10px 8% 10px 30%;
  z-index: 10;
}
.top-productlist02 .productlist02-postlist .p-postList__body:after {
  position: absolute;
  content: "\e930";
  font-family: icomoon;
  display: flex;
  justify-content: center;
  align-items: center;
  color: var(--color_main);
  font-size: 1.4rem;
  border-radius: 50%;
  top: 0;
  bottom: 0;
  right: 10px;
  margin: auto 0;
  transition: 0.4s;
}
.top-productlist02
  .productlist02-postlist
  .p-postList__link:hover
  .p-postList__body:after {
  background: none;
  right: 0;
}
.top-productlist02
  .productlist02-postlist
  .p-postList__body
  .p-postList__title {
  font-size: initial;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}
.top-productlist02
  .productlist02-postlist
  .p-postList__body
  .p-postList__meta
  .c-postThumb__cat {
  position: relative;
}
.top-productlist02 .tabselect-button a.swell-block-button__link {
  background: none !important;
  color: var(--color_main);
  border: 2px solid var(--color_main);
}
.top-productlist02 .tabselect-button a.swell-block-button__link:after {
  color: var(--color_main);
}
.top-productlist .productlist-postlist .p-postList {
  max-width: 780px;
  width: 100%;
  border-top: none;
  padding-top: 0;
  margin: 0 auto;
}
.top-productlist .productlist-postlist .p-postList .p-postList__item {
  background-color: var(--color_bg);
  border: 1px solid var(--color_main);
  padding: 20px;
}
.top-recommend .recommend-postlist .wp-block-group__inner-container {
  width: 100%;
  max-width: 100%;
}
.top-recommend
  .recommend-postlist
  .wp-block-group__inner-container
  .p-postSlider {
  padding: 0;
}
.top-recommend
  .recommend-postlist
  .wp-block-group__inner-container
  .p-postSlider
  .p-postSlider__swiper {
  padding-bottom: 50px !important;
}
.top-recommend
  .recommend-postlist
  .wp-block-group__inner-container
  .p-postSlider
  .p-postList__item {
  display: block;
}
.top-recommend
  .recommend-postlist
  .wp-block-group__inner-container
  .p-postSlider
  .swiper-pagination {
  bottom: 16px;
}
.top-recommend
  .recommend-postlist
  .wp-block-group__inner-container
  .p-postSlider
  .swiper-pagination
  .swiper-pagination-bullet {
  background-color: var(--color_main);
}
.top-recommend
  .recommend-postlist
  .wp-block-group__inner-container
  .p-postSlider
  .swiper-button-prev {
  background-color: var(--color_main);
  top: auto !important;
  bottom: -16px;
  left: calc(50% - 100px);
}
.top-recommend
  .recommend-postlist
  .wp-block-group__inner-container
  .p-postSlider
  .swiper-button-next {
  background-color: var(--color_main);
  top: auto !important;
  bottom: -16px;
  right: calc(50% - 100px);
}
.top-recommend .recommend-postlist .wp-block-coblocks-post-carousel__item {
  display: block;
}
.top-recommend
  .recommend-postlist
  .wp-block-coblocks-post-carousel__item
  .wp-block-coblocks-post-carousel__image
  a {
  aspect-ratio: 16/9;
  width: 100%;
  padding-top: 0;
}
.top-recommend
  .recommend-postlist
  .wp-block-coblocks-post-carousel__item
  .wp-block-coblocks-post-carousel__content
  a {
  color: var(--color_text);
}
.top-access02 .swell-block-column:first-child {
  padding: 100px 4vw;
}
.top-access02 iframe {
  width: 100%;
  filter: grayscale(1);
}
.top-access .access-mandt .wp-block-media-text__content {
  background-color: #ffffffcc;
  box-shadow: 0 0 50px rgba(0 0 0 / 6%);
  align-self: end;
  padding: 40px 30px !important;
  margin-bottom: 5% !important;
  z-index: 1;
}
.top-access .access-mandt {
  color: inherit;
  background: none;
  box-shadow: none;
}
.top-access
  .access-mandt
  .wp-block-media-text__content
  .wp-block-columns
  .wp-block-column {
  flex-basis: auto;
  flex-grow: inherit;
}
.top-access iframe {
  width: 100%;
  filter: contrast(80%) sepia(20%);
}
.top-notice .swell-block-column {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
.top-notice .p-postListWrap .p-postList__body {
  display: flex;
  align-items: center;
}
.top-notice .p-postListWrap .p-postList {
  border: none;
}
.top-notice .p-postListWrap .p-postList__link {
  position: relative;
  border-bottom: 1px solid #e4e4e4;
  padding: 40px 24px;
  overflow: hidden;
}
/* .top-notice .p-postListWrap li:first-of-type .p-postList__link {
    padding: 0 24px 40px 24px;
} */
/* .top-notice .p-postListWrap .p-postList__link:before {
  position: absolute;
  content: "";
  background-color: var(--color_main);
  opacity: 0.1;
  width: 100%;
  height: 100%;
  bottom: -100%;
  left: 0;
  transition: 0.4s;
} */
.top-notice .p-postListWrap .p-postList__link:hover:before {
  bottom: 0;
}
.top-notice .p-postListWrap .p-postList__body .p-postList__meta {
  margin: 0;
}
.top-notice .swell-block-columns__inner .twitter-timeline {
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 2/3;
  margin: 0 auto;
}
.top-notice .swell-block-columns__inner .twitter-timeline iframe {
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 2/3;
}
@media screen and (max-width: 959px) {
  .top-productlist02 {
    background-size: 1420px !important;
  }
  .top-access .access-mandt .wp-block-media-text__content {
    margin-bottom: 8px !important;
  }
  .top-notice .p-postListWrap .p-postList__body {
    align-items: start;
    flex-direction: column;
  }
}
@media screen and (max-width: 599px) {
  .top-business02 .swell-block-column:last-child:before {
    left: 30%;
  }
  .top-productlist02 {
    background-size: 1160px !important;
  }
  .top-productlist02 .productlist02-postlist .p-postList__item {
    margin-bottom: 1em;
  }
  .top-productlist02 .productlist02-postlist .p-postList__body {
    min-height: 63px !important;
  }
  .top-productlist02 .productlist02-postlist .p-postList__body:after {
    width: 30px;
    height: 30px;
    right: 4px;
    padding-top: 14px;
    padding-bottom: 14px;
  }
  .top-productlist02
    .productlist02-postlist
    .p-postList__body
    .p-postList__title {
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
  }
  .top-access02 .swell-block-column:first-child {
    padding: 20px 4vw;
  }
  .top-access .access-mandt .wp-block-media-text__content {
    padding: 20px !important;
    margin-top: -18px !important;
    margin-bottom: 0 !important;
  }
  .top-notice .p-postListWrap .p-postList__link {
    padding: 10px;
  }
}

/* 記事一覧 */
#body_wrap.search .posttitle-area {
  width: 100%;
  padding-top: 6rem;
  margin-top: 4em;
}
#body_wrap.archive .posttitle-area {
  display: flex;
  align-items: center;
  top: 0;
  left: 0;
}
#body_wrap.archive.category-products .posttitle-area {
  width: 100vw !important;
  position: absolute !important;
  margin-top: 100px !important;
}
#body_wrap.archive.category-products #main_content {
  margin-top: 304px;
}
#body_wrap.archive.category-products #sidebar {
  margin-top: 296px;
}
#body_wrap.search .posttitle-area .mainh2-box,
#body_wrap.archive .posttitle-area .mainh2-box {
  margin-bottom: 4rem;
}
#body_wrap.search .posttitle-area .mainh2-box h2,
#body_wrap.archive .posttitle-area .mainh2-box h2 {
  line-height: 1.4;
  text-align: center;
}
#body_wrap.search #main_content,
#body_wrap.archive #main_content {
  max-width: none;
}
#body_wrap.search .p-termContent,
#body_wrap.archive .p-termContent {
  margin-top: 0;
}
#body_wrap.search .p-postList,
#body_wrap.archive .p-postList {
  margin: 0 auto;
}

#body_wrap.search .p-postList .p-postList__item
/* #body_wrap.archive .p-postList .p-postList__item */ {
  width: 25%;
}

@media screen and (max-width: 959px) {
  /* #body_wrap.archive .p-postList {
    grid-template-columns: repeat(3, 1fr);
    display: grid;
    width: 100%;
  } */

  #body_wrap.archive.category-products .p-postList .p-postList__item {
    width: 100% !important;
  }
}

@media screen and (max-width: 700px) {
  .category-products .p-postList {
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 24px;
  }

  #body_wrap.archive.category-products .p-postList .p-postList__item {
    width: 100%;
  }
}

@media screen and (max-width: 599px) {
  #body_wrap.search .posttitle-area,
  #body_wrap.archive .posttitle-area {
    padding-top: 4rem;
  }
  #body_wrap.archive.category-products .posttitle-area {
    margin-top: 80px !important;
  }
  #body_wrap.archive.category-products #main_content {
    margin-top: 256px !important;
  }
}
#body_wrap.archive .p-postList.-type-simple {
  border: none;
}
#body_wrap.archive
  .p-postList.-type-simple
  .p-postList__item
  .p-postList__link {
  position: relative;
  border-bottom: 1px dashed var(--color_border);
  padding: 28px 10px;
  overflow: hidden;
}
#body_wrap.archive
  .p-postList.-type-simple
  .p-postList__item
  .p-postList__link:before {
  position: absolute;
  content: "";
  background-color: var(--color_main);
  opacity: 0.1;
  width: 100%;
  height: 100%;
  bottom: -100%;
  left: 0;
  transition: 0.4s;
}
#body_wrap.archive
  .p-postList.-type-simple
  .p-postList__item
  .p-postList__link:hover:before {
  bottom: 0;
}
#body_wrap.archive
  .p-postList.-type-simple
  .p-postList__item
  .p-postList__link
  .p-postList__body {
  display: flex;
  align-items: center;
  gap: 2vw;
}
#body_wrap.archive
  .p-postList.-type-simple
  .p-postList__item
  .p-postList__link
  .p-postList__body
  .p-postList__meta {
  margin: 0;
}
#body_wrap.archive
  .p-postList.-type-simple
  .p-postList__item
  .p-postList__link
  .p-postList__body
  .p-postList__meta
  .c-postThumb__cat {
  position: inherit;
}
@media screen and (max-width: 599px) {
  #body_wrap.archive
    .p-postList.-type-simple
    .p-postList__item
    .p-postList__link
    .p-postList__body {
    flex-direction: column;
    align-items: baseline;
    gap: 1vw;
  }

  #body_wrap.archive
    .p-postList.-type-card
    .p-postList__item
    .p-postList__link
    .p-postList__thumb
    .c-postThumb__cat {
    left: -10px !important;
    font-size: 10px;
  }
}

/* 記事詳細 */
.p-articleFoot .p-articleMetas__termList.c-categoryList {
  display: none;
}

/* Loading */
#loading-screen {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(135deg, #ffffff 0%, #f5f5f5 100%);
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 9999;
  opacity: 1;
}

/* ダークモード */
.dark-mode #loading-screen {
  background: linear-gradient(135deg, #0a0a0a 0%, #1a1a1a 100%);
}

.loading-content {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 16px;
}

.litas-logo {
  width: 90px;
  height: 90px;
  object-fit: contain;
  animation: logoFadeIn 2s ease-in-out infinite;
}

@keyframes logoFadeIn {
  0%,
  100% {
    opacity: 1;
    transform: scale(1);
  }
  50% {
    opacity: 0.8;
    transform: scale(0.98);
  }
}

.loading-text {
  font-size: 16px;
  letter-spacing: 4px;
  font-weight: 500;
  color: #90a4ae;
}

.dark-mode .loading-text {
  color: #b0bec5;
}

.spinner-dots {
  display: flex;
  gap: 10px;
}

.spinner-dot {
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background: #b0bec5;
  animation: dotBounce 1.4s infinite ease-in-out both;
}

.spinner-dot:nth-child(1) {
  animation-delay: -0.32s;
}

.spinner-dot:nth-child(2) {
  animation-delay: -0.16s;
}

.dark-mode .spinner-dot {
  background: #cfd8dc;
}

@keyframes dotBounce {
  0%,
  80%,
  100% {
    transform: scale(0);
    opacity: 0.5;
  }
  40% {
    transform: scale(1);
    opacity: 1;
  }
}

.fade-out {
  animation: fadeOut 0.5s forwards;
}

@keyframes fadeOut {
  to {
    opacity: 0;
  }
}

/* .op_container{
    background-color: var(--color_main);
    width: 100%;
    height: 100%;
    position: fixed;
    top: 0px;
    left: 0px;
	z-index: 1000000000;
}
.op_inner{
    width: 100%;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
	overflow: hidden;
}
.op_ber{
    background-color: #fff;
    width: 0%;
} */
/* ------------------------------ロゴ無------------------------------ */
.op_logo {
  display: none;
}
.op_ber {
  height: 2px;
}
/* ------------------------------------------------------------------ */
/* ------------------------------ロゴ有------------------------------ */
/* .op_logo{
	position: absolute;
	width: 100%;
	height: var(--logo_size_pc);
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
	z-index: 100;
}
.op_logo:before{
	position: absolute;
	content: "";
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	background-image: url('/wp-content/uploads/2023/08/asiato-loading.png');
	background-size: contain;
	background-repeat: repeat-x;
}
$background-color: #55acee;
.op_logo .c-headLogo{
	height: 40px !important;
	background-color: $background-color;
}
.op_logo .c-headLogo__link{
	text-align: center;
	padding: 0 !important;
}
.op_ber{
	height: var(--logo_size_pc);
} */
/* ------------------------------------------------------------------ */

/* 削除用css */
@media screen and (max-width: 599px) {
  .spnone {
    display: none !important;
  }
}
.dispnone {
  display: none !important;
}

/*======================== original ==============================*/
/* #body_wrap #content:before,
#body_wrap #content:after {
  position: absolute;
  content: "";
  background-image: url("/wp-content/uploads/2023/08/neko-bg.png");
  background-repeat: no-repeat;
  background-size: contain;
  background-position: bottom;
  max-width: 40%;
  width: 200px;
  height: 200px;
  opacity: 0.4;
  z-index: -1;
} */
#body_wrap #content:before {
  top: 100px;
  left: 2px;
  transform: rotate(180deg);
}
#body_wrap #content:after {
  bottom: 0;
  right: 2px;
}

/* inputデザイン */
input:not([type="range"]):not([type="color"]):not([type="radio"]):not(
    [type="submit"]:not([type="text"])
  ),
textarea {
  background-color: var(--color_bg);
  border: 1px solid #ededed;
  border-radius: 0;
  width: 20px;
  height: 20px;
  margin-right: 10px;
}
input:not([type="range"]):not([type="color"]):not([type="radio"]):not(
    [type="submit"]
  ):not(),
textarea {
  background-color: #fff;
}
input:not([type="range"]):not([type="color"]):not([type="radio"]):not(
    [type="submit"]
  ):focus,
textarea:focus {
  border: 1px solid var(--color_footer_bg) !important; /* フォーカス時の枠色 */
  outline: none;
}
.dark-mode
  :not([type="range"]):not([type="color"]):not([type="radio"]):not(
    [type="submit"]
  ):focus,
textarea:focus {
  /* border-color: #7f96a9 !important; */
  border-color: #4174ab !important;
}
.-related .p-postList__thumb,
.is-style-bg_gray,
.is-style-bg_main,
.is-style-bg_main_thin,
.is-style-bg_stripe,
.is-style-border_dg,
.is-style-border_dm,
.is-style-border_sg,
.is-style-border_sm,
.is-style-dent_box,
.is-style-note_box,
.is-style-stitch,
[class*="is-style-big_icon_"],
input[type="number"],
input[type="text"],
textarea {
  border-radius: 0;
  font-size: 16px;
  /* box-shadow: 0 0 4px rgb(0 0 0 / 10%) inset; */
}

/* ログイン画面のチェックボックスとテキストの高さをあわせる */
#memberpages .loginbox .forgetmenot label {
  display: flex;
  justify-content: center;
  align-items: center;
}

.quantity input {
  color: var(--color_text);
}

/* トップページ */
#body_wrap.home #content:before {
  top: 20px;
}
#body_wrap.home #content:after {
  bottom: 530px;
}
.product-postlistbox {
  position: relative;
  border: 2px dashed var(--color_main);
  border-radius: 10px;
  padding: 2em 1em 0;
}
.product-postlistbox .postlistbox-heading {
  position: absolute;
  top: -20px;
  left: 10px;
  background-color: var(--color_bg);
  display: inline-block;
  padding: 4px 16px;
}
.product-postlistbox .postlistbox-button a.swell-block-button__link {
  position: relative;
  background: none;
  box-shadow: none;
  min-width: auto;
  color: var(--color_link);
  border-radius: 50px;
  overflow: hidden;
}
.product-postlistbox .postlistbox-button a.swell-block-button__link:before {
  position: absolute;
  content: "";
  width: 100%;
  height: 100%;
  background-color: var(--color_link);
  bottom: -100%;
  left: 0;
  transition: 0.4s;
  z-index: 0;
  opacity: 0.2;
}
.product-postlistbox
  .postlistbox-button
  a.swell-block-button__link:hover:before {
  bottom: 0;
}
.product-postlistbox .postlistbox-button a.swell-block-button__link:after {
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 24px;
  font-weight: normal;
  border-radius: 50%;
  right: 10px;
}
.product-postlistbox .p-postList__item {
  width: 25% !important;
  padding: 0 1.5em;
}
.product-postlistbox .orderpopularity .p-postList {
  counter-reset: countnumber;
}
.product-postlistbox
  .orderpopularity
  .p-postList
  .p-postList__item
  .p-postList__link
  .p-postList__thumb {
  overflow: inherit;
}
.product-postlistbox
  .orderpopularity
  .p-postList
  .p-postList__item
  .p-postList__link
  .p-postList__thumb:after {
  position: absolute;
  counter-increment: countnumber 1;
  content: counter(countnumber);
  display: flex;
  justify-content: center;
  align-items: center;
  bottom: -10px;
  right: 10px;
  width: 50px;
  height: 50px;
  background-color: #9c9c9c;
  color: var(--color_bg);
  font-size: 1.4rem;
  font-family:
    "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3",
    "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  font-weight: bold;
  border-radius: 50%;
  padding: 6px;
  z-index: 2;
}
.product-postlistbox
  .orderpopularity
  .p-postList
  .p-postList__item:nth-child(1)
  .p-postList__link
  .p-postList__thumb:after {
  background-color: #e3ab00;
}
.product-postlistbox
  .orderpopularity
  .p-postList
  .p-postList__item:nth-child(2)
  .p-postList__link
  .p-postList__thumb:after {
  background-color: #c9caca;
}
.product-postlistbox
  .orderpopularity
  .p-postList
  .p-postList__item:nth-child(3)
  .p-postList__link
  .p-postList__thumb:after {
  background-color: #ba6e40;
}
.top-productlist02 .productlist02-catimg {
  position: absolute;
  bottom: 102%;
  left: 0;
  right: 140px;
  margin: 0 auto;
  z-index: 2;
}
.top-productlist02 .productlist02-speechbubblesimg {
  position: absolute;
  bottom: 103%;
  left: 300px;
  right: 0;
  margin: 0 auto;
  z-index: 1;
}
.top-productlist02 .productlist02-postlist .p-postList__thumb:after {
  position: absolute;
  content: "";
  background: linear-gradient(
    to right,
    rgba(255, 255, 255, 0) 30%,
    #efe2c4 80%
  );
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
}
.catlist-tabselect {
  max-width: 780px;
  width: 100%;
  margin: 0 auto;
}
.catlist-tabselect .c-tabBody {
  max-height: 840px;
}
.top-greeting {
  position: relative;
}
/* .top-greeting:before {
  position: absolute;
  content: "";
  background-image: url("/wp-content/uploads/2023/08/cat-b.png");
  background-repeat: no-repeat;
  background-size: contain;
  top: -104px;
  left: 2%;
  width: 120px;
  height: 120px;
  transform: scale(-1, 1);
}
.top-greeting:after {
  position: absolute;
  content: "";
  background-image: url("/wp-content/uploads/2023/08/cat-a.png");
  background-repeat: no-repeat;
  background-size: contain;
  top: -102px;
  left: calc(2% + 120px);
  width: 120px;
  height: 120px;
} */

.top-access .access-mandt .wp-block-media-text__content {
  background-color: #eddfbccc;
}
.top-access .access-mandt .wp-block-media-text__content .swell-block-dl__dt,
.top-access .access-mandt .wp-block-media-text__content .swell-block-dl__dd {
  border-bottom: 1px dashed var(--color_main);
  padding-top: 0.8rem;
  padding-bottom: 0.8rem;
}
.top-access
  .access-mandt
  .wp-block-media-text__content
  .swell-block-dl__dt:after {
  content: none;
}
.p-postList__title {
  font-weight: normal !important;
}
/* タブレット幅のみ(スマホには影響させない) */
@media screen and (min-width: 600px) and (max-width: 959px) {
  #ranking .p-postListWrap > ul > .p-postList__item {
    width: 320px !important;
  }
}
@media screen and (max-width: 959px) {
  .product-postlistbox .p-postList__item {
    width: 50% !important;
  }
  .top-productlist02 .productlist02-catimg {
    bottom: 100%;
  }
}
@media screen and (max-width: 599px) {
  .product-postlistbox {
    position: relative;
    border: 2px dashed var(--color_main);
    border-radius: 10px;
    padding: 2rem 1rem;
  }
  .product-postlistbox .p-postList__item {
    padding: 0 0.5em;
  }
  .top-productlist02 .productlist02-catimg {
    right: 250px;
  }
  .top-productlist02 .productlist02-speechbubblesimg {
    left: 80px;
  }
  .catlist-tabselect .c-tabBody {
    min-height: 600px;
  }
  .top-greeting:before {
    top: -54px;
    width: 60px;
    height: 60px;
  }
  .top-greeting:after {
    top: -52px;
    left: calc(2% + 60px);
    width: 60px;
    height: 60px;
  }
  .product-postlistbox
    .orderpopularity
    .p-postList
    .p-postList__item
    .p-postList__link
    .p-postList__thumb:after {
    bottom: -8px;
    right: 8px;
    width: 40px;
    height: 40px;
  }
}

/* お店の紹介 */
.profile-cat {
  position: relative;
  max-width: 948px;
  width: 100%;
  margin-left: auto !important;
  margin-right: auto !important;
  left: 0 !important;
}
.profile-cat01:after {
  background-image: url("/wp-content/uploads/2023/09/profile-bg01.png");
  background-position: right;
  right: 0;
}
.profile-cat02:after {
  background-image: url("/wp-content/uploads/2023/09/profile-bg02v2.png");
  background-position: left;
  left: 0;
}
.profile-cat:after {
  content: "";
  position: absolute;
  top: 0;
  width: 100%;
  height: 100%;
  background-repeat: no-repeat;
  background-size: contain;
  opacity: 0.6;
  z-index: -1;
}
.profile-cat .wp-block-media-text__content {
  display: block;
  width: 80%;
  padding: 20px;
  margin: 0 auto;
}
.profile-cat .profile-catname .swell-block-column {
  width: auto;
}
.profile-cat .profile-catname h3 {
  font-size: 2.4rem;
  border-radius: 50%;
  padding: 4px;
}
.profile-cat .profile-catname h3.catname01 {
  transform: rotate(-4deg);
  bottom: 2px;
  background-color: #eed6c4aa;
}
.profile-cat .profile-catname h3.catname02 {
  transform: rotate(4deg);
  top: 2px;
  background-color: #efe4c8aa;
}
.profile-list .swell-block-dl__dt,
.profile-list .swell-block-dl__dd {
  border-bottom: 1px dashed var(--color_border);
  padding-top: 2rem;
  padding-bottom: 2rem;
}
.profile-list .swell-block-dl__dt:after {
  content: none;
}
.profile-list .wp-block-columns .wp-block-column {
  flex-basis: auto;
  flex-grow: inherit;
}
@media screen and (max-width: 959px) {
  .profile-cat:after {
    height:;
  }
  .profile-cat .wp-block-media-text__content {
    width: 100%;
  }
  .profile-cat .profile-catname h3 {
    font-size: 2rem;
  }
}
@media screen and (max-width: 599px) {
  .profile-cat img {
    display: block;
    max-width: 300px;
    width: 100%;
    margin: 0 auto;
  }
  .profile-cat .profile-catname .swell-block-columns__inner {
    justify-content: center;
  }
  .profile-list .swell-block-dl {
    flex-direction: column;
  }
  .profile-list .swell-block-dl__dt,
  .profile-list .swell-block-dl__dd {
    width: 100%;
  }
  .profile-list .swell-block-dl__dt {
    border: none;
    padding-bottom: 0;
  }
  .profile-list .swell-block-dl__dd {
    padding-top: 1rem;
  }
}

/* よくあるご質問 */
.qa-list .swell-block-faq__item:not(:first-child) {
  border-top: 1px dashed var(--color_border) !important;
}

/* サイトマップ */
.sitemap-list .sitemap-title {
  display: none;
}
.sitemap-list .wsp-container > .wsp-pages-list,
.sitemap-list .wsp-container > .wsp-posts-list {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 1rem 0.8rem;
}
.sitemap-list .wsp-container h2 {
  color: inherit;
  background-color: #ffffff99;
  border: none;
  margin-bottom: 20px;
}
.sitemap-list .wsp-container a {
  position: relative;
  color: inherit;
  background-color: #ffffff99;
  border: none;
  margin-top: 0;
  overflow: hidden;
}
.sitemap-list .wsp-container a:after {
  position: absolute;
  content: "";
  width: 100%;
  height: 100%;
  background-color: var(--color_footer_bg);
  bottom: -100%;
  left: 0;
  z-index: -1;
  transition: 0.2s;
}
.sitemap-list .wsp-container a:hover:after {
  bottom: 0;
}
@media screen and (max-width: 599px) {
  .sitemap-list .wsp-container > .wsp-pages-list,
  .sitemap-list .wsp-container > .wsp-posts-list {
    grid-template-columns: 1fr;
  }
}

/* ページネーション共通 */
.c-pagination {
  gap: 24px;
  margin-top: 0;
}

.c-pagination .page-numbers.current,
.c-pagination .page-numbers:hover {
  border-bottom: 1px solid #a0adc0;
  color: #a0adc0;
}
.c-pagination .page-numbers {
  /* background-color: #B1B1B1;
	border-radius: 6px; */
  color: var(--color_text);
  background-color: transparent;
  box-shadow: unset;
  min-width: auto;
  margin: 0;
  font-size: 16px;
  width: 16px;
}
/* 
ダークモード時のページネーション */
.dark-mode .c-pagination .page-numbers.current,
.dark-mode .c-pagination .page-numbers:hover {
  border-bottom: 1px solid var(--color_text);
  color: var(--color_text);
}

/* サイドバー */
.cat-item-1 {
  display: none;
}

/* お知らせ一覧 */
#body_wrap.archive.category-news .p-postList .p-postList__item {
  width: 100%;
}

.category-news .mainh2-box h2 {
  margin-right: 0;
}

#body_wrap.archive.category-news
  .p-postList
  .p-postList__item
  .p-postList__meta {
  flex-wrap: inherit;
}
#body_wrap.archive.category-news
  .p-postList
  .p-postList__item
  .p-postList__meta
  .p-postList__times {
  /* width: 100px; */
  max-width: 100%;
}
@media screen and (max-width: 599px) {
  #body_wrap.archive.category-news
    .p-postList
    .p-postList__item
    .p-postList__body {
    gap: 2vw !important;
  }
  #body_wrap.archive.category-news
    .p-postList
    .p-postList__item
    .p-postList__meta
    .p-postList__times {
    width: 90px;
    max-width: 100%;
  }
}

/* お知らせ一覧＿森 */

/* .category-news .posttitle-area { */

.category-news .l-content {
  margin: 0 auto 100px;
}

.category .posttitle-area {
  background-image: none;
  margin: 64px 0 !important;
  height: auto;
  position: static !important;
  width: 100% !important;
}

#body_wrap.category-news #content:before {
  display: none;
}

.category .title-box {
  padding-left: 0;
}

#body_wrap.category .posttitle-area .mainh2-box {
  margin-bottom: 0;
  display: flex;
  align-items: baseline;
  justify-content: center;
  gap: 24px;
}

#body_wrap.category .post_content {
  margin-bottom: 0;
}
.category-products .mainh2-box {
  margin-left: 5vw;
  display: flex;
  flex-direction: column-reverse;
  align-items: flex-start;
  gap: 8px;
  justify-content: flex-start;
}
.category .mainh2-box p {
  font-size: 1.2rem;
  opacity: 0.7;
  color: var(--color_text);
  font-weight: normal;
  line-height: 1;
  position: static;
  z-index: auto;
}
.category.category-products .mainh2-box h2 {
  font-size: 16px;
  color: var(--color_bg);
  opacity: 0.9;
}
.dark-mode .category.category-products .mainh2-box h2,
.dark-mode .category.category-products .mainh2-box p {
  color: #f8f9fa;
}
.category.category-products .mainh2-box p {
  display: inline !important;
  font-size: 32px;
  opacity: 1;
  color: var(--color_bg);
  z-index: 1;
  text-transform: lowercase;
  opacity: 0.9;
}
.category.category-products .mainh2-box p::first-letter {
  text-transform: uppercase;
}
.category h2 {
  font-size: 32px;
}
/* .category-news .title-box {
  padding-left: 0;
}

.category-news .title-box h2 {
  display: none;
}

.category-news h2 {
  font-size: 16px !important;
} 
ategory-news #content {
  padding: 160px 16px 0;
  max-width: 956px;
}  
*/

.category-news p {
  color: var(--color_text);
}

.category #content {
  max-width: 956px;
}
.category.category-products #content {
  padding: 120px 16px 0;
  max-width: 1280px;
}

#body_wrap.archive.category-news main#main_content {
  width: auto !important;
}
/* #body_wrap.archive.category-news main#main_content {
  width: auto !important;
} */

#body_wrap.archive.category-news
  .p-postList.-type-simple
  .p-postList__item
  .p-postList__link {
  padding: 32px 8px;
  border-bottom: 1px solid #e4e4e4;
}

#body_wrap.archive.category-news
  .p-postList.-type-simple
  .p-postList__item
  .p-postList__link
  .p-postList__body {
  align-items: flex-start;
  flex-direction: column-reverse;
  gap: 16px;
}

.category-news .p-postList .p-postList__title,
.p-pnLinks__title {
  width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 16px;
}

.category-news .c-postTimes__posted:before {
  display: none;
}

.category-news .p-postList__meta {
  gap: 8px;
}

.category-news .p-postList__meta .icon-folder:before,
.category-products .p-postList .icon-folder:before,
.archive .p-postList__meta .icon-folder:before {
  display: none;
}

.category-news .p-postList__times {
  margin-right: 0;
}

.category-news .u-thin {
  color: #8e8e8e;
  font-size: 12px;
}

/* ダークモード時の日付 */
.dark-mode .category-news .u-thin {
  color: #ccd5dd;
}

.-type-simple .p-postList__link:hover {
  opacity: 0.6;
  background-color: transparent;
}

#body_wrap.archive.category-news
  .p-postList.-type-simple
  .p-postList__item
  .p-postList__link:before {
  display: none;
}

#body_wrap.archive.category-news .p-postList {
  margin-bottom: 64px;
}

#body_wrap.archive.category-news .c-pagination {
  margin: 0;
}
.category-products
  #sidebar
  li:not(.categoryList-products):not(.categoryList-products *) {
  display: none;
}

@media screen and (max-width: 959px) {
  .tab-nav a {
    margin-bottom: 0;
  }

  #body_wrap.archive.category-news .mainh2-box h2 {
    font-size: 32px;
  }

  .category .mainh2-box p {
    font-size: 1rem;
  }

  .category .posttitle-area {
    margin: 56px 0 !important;
  }

  #body_wrap.archive.category-news .p-postList {
    margin-bottom: 56px;
  }

  .category-news .l-content {
    margin: 0 auto 60px;
  }
}

@media screen and (max-width: 599px) {
  .category-news #content {
    padding-top: 80px;
  }

  #body_wrap.archive.category-news main#main_content {
    margin-top: 0;
  }

  #body_wrap.archive.category-news .posttitle-area {
    height: auto;
  }
  .category-news .posttitle-area {
    margin: 40px 0 !important;
  }

  .tab-nav a {
    padding: 4px 16px !important;
  }

  #body_wrap.archive.category-news .mainh2-box h2 {
    font-size: 24px;
  }

  .category .mainh2-box p {
    font-size: 0.9rem;
  }

  #body_wrap.category .posttitle-area .mainh2-box {
    gap: 12px;
  }

  .l-mainContent .tab-nav {
    margin-bottom: 24px;
  }

  #body_wrap.archive.category-news
    .p-postList.-type-simple
    .p-postList__item
    .p-postList__link {
    padding: 16px 8px;
  }

  .category-news .l-content {
    margin-bottom: 40px;
  }

  #body_wrap.archive.category-news
    .p-postList
    .p-postList__item
    .p-postList__meta
    .p-postList__times {
    width: auto;
  }

  .category-news .p-postList__meta {
    gap: 4px;
  }

  #body_wrap.archive.category-news .p-postList {
    margin-bottom: 40px;
  }
}

/* お知らせページネーション */
/* .category-news .page-numbers.current, .category-news .page-numbers:hover {
    background: #A3ADC0;
  color: var(--color_text);
}

.category-news .page-numbers.current {
pointer-events: none; 
}

.category-news .page-numbers {
    background: transparent;
    color: var(--color_text);
    border: 1px solid #E4E4E4;
} */

/* お知らせ一覧のタブ */
.tab-nav {
  display: flex;
  gap: 6px;
  margin-bottom: 40px;
}

.tab-nav a {
  background-color: #f3f3f3;
  color: var(--color_text);
  padding: 6px 64px;
  font-size: 14px;
}
.dark-mode .tab-nav a {
  color: #1c1d1f;
  background-color: #ccd5dd;
}
.tab-nav a:hover,
.tab-nav a.active {
  background-color: #a3adc0;
  color: var(--color_bg);
}
.dark-mode .tab-nav a:hover,
.dark-mode .tab-nav a.active {
  color: #f8f9fa;
  background-color: #4a5568;
}
/* タブ全体 */
.tab-nav {
  display: flex;
  gap: 6px;
  margin-bottom: 40px;
}

/* 見た目は a と同じくラベルに適用 */
.tab-label {
  background-color: #f3f3f3;
  color: var(--color_text);
  padding: 6px 64px;
  font-size: 14px;
  cursor: pointer;
  user-select: none;
  transition:
    background-color 0.3s,
    color 0.3s;
}

/* hover時 */
.tab-label:hover {
  background-color: #a3adc0;
  color: var(--color_bg);
}

/* 選択されているタブ */
input[type="radio"]:checked + .tab-label {
  background-color: #a3adc0;
  color: var(--color_bg);
}

/* お知らせ記事ページ ＿森 */
.single-post #main_content {
  max-width: 782px;
}

.single-post #main_content {
  padding: 0 16px;
}

/* .single-post .l-content {
    padding: 160px 16px 0;
} */

.single-post .l-mainContent__inner > .post_content {
  padding: 0;
  margin: 80px 0 100px;
}

.single-post .p-articleHead h1 {
  color: #868c9a;
  font-weight: normal;
  font-size: 28px;
}

.single-post .p-articleMetas.-top {
  flex-direction: row-reverse;
  justify-content: flex-end;
}

.single-post .c-categoryList:before,
.single-post .icon-posted:before {
  display: none;
}

.single-post#body_wrap.single .p-articleMetas .c-categoryList__link {
  border-radius: 0;
}

.single-post .p-articleMetas.-top {
  margin-top: 24px;
  gap: 8px;
}

.single-post .p-articleMetas.-top .p-articleMetas__times {
  color: var(--color_text);
  font-size: 14px;
  opacity: 1;
}

.single-post .p-articleMetas .c-categoryList__link {
  pointer-events: none;
  cursor: default;
  text-decoration: none;
}

.single-post .p-articleFoot {
  border-top: unset;
  margin: 0;
  padding: 0;
}

.single-post .p-pnLinks__item {
  width: auto;
}

/* ← と → の共通設定 */
.p-pnLinks__item.-prev::before,
.p-pnLinks__item.-next::before {
  position: absolute;
  top: 25%;
  left: 50%;
  transform: translateY(-50%);
  color: transparent !important; /* 本体は透明にして影で描画 */
  font-size: 18px;
  transition: text-shadow 0.3s ease;
}

/* →（次へ） 通常状態 */
.p-pnLinks__item.-next::before {
  content: "→";
  text-shadow:
    -1em 0 0 transparent,
    0 0 0 #333;
}

/* → ホバー時（完全に入れ替え） */
.p-pnLinks__item.-next:hover::before {
  text-shadow:
    0 0 0 #333,
    1em 0 0 transparent;
}

/* ←（前へ） 通常状態 */
.p-pnLinks__item.-prev::before {
  content: "←";
  text-shadow:
    1em 0 0 transparent,
    0 0 0 #333;
}

/* ← ホバー時（完全に入れ替え） */
.p-pnLinks__item.-prev:hover::before {
  text-shadow:
    0 0 0 #333,
    -1em 0 0 transparent;
}

.p-pnLinks__item.-prev:before,
.p-pnLinks__item.-next:before {
  border: none;
}

.p-pnLinks__item a {
  width: 180px;
  height: 40px;
  min-height: unset;
  background-color: #eff1f4;
}

.dark-mode .p-pnLinks__item a:hover {
  background-color: #d5dfef;
  opacity: 1;
}

.p-pnLinks__item a span {
  display: none;
}

.single-post .p-articleFoot {
  display: none;
}

@media screen and (max-width: 959px) {
  .single-post .p-articleHead h1 {
    font-size: 24px;
  }
}

@media screen and (max-width: 599px) {
  #body_wrap.single main#main_content {
    margin: 60px 0 0 !important;
    padding-top: 0 !important;
  }

  .single-post .p-articleMetas.-top {
    margin-top: 16px;
  }

  .single-post .l-mainContent__inner > .post_content {
    margin: 60px 0 !important;
  }

  .p-pnLinks__item a {
    width: 120px;
  }

  .p-pnLinks__item.-prev:before,
  .p-pnLinks__item.-next:before {
    left: 54px;
  }

  .p-pnLinks__item.-next:hover::before,
  .p-pnLinks__item.-prev:hover::before {
    left: 54px;
  }
}

/* 商品一覧画像 */
.c-postThumb__figure {
  aspect-ratio: 1 / 1;
}
/* 商品一覧のみ1:1(正方形)にする */
.category-products .c-postThumb__figure {
  aspect-ratio: 1 / 1;
}
/* トップページのランキング(人気順)も1:1(正方形)にする */
.orderpopularity .c-postThumb__figure {
  aspect-ratio: 1 / 1;
}
/* カード型一覧の画像も1:1(正方形)にする */
.-type-card .p-postList__thumb .c-postThumb__figure {
  aspect-ratio: 1 / 1;
}

.c-postThumb__figure img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* 商品一覧 */
.category-products .posttitle-area {
  /* background-image: url(https://web.ailesys.co.jp/skameec/wp-content/uploads/2025/09/Group-433.jpg); */
  background-image: url(https://web.ailesys.co.jp/skameec/wp-content/uploads/2025/11/Group-570.jpg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  height: 240px;
}
.title-box {
  color: var(--color_bg);
  padding-left: 48px;
}
.title-box h2 {
  font-size: 16px;
  font-weight: normal;
}
.title-box p {
  font-size: 32px;
  font-weight: bold;
  line-height: 1.5;
}
#body_wrap.search,
#body_wrap.archive {
  overflow: hidden;
}
#body_wrap.search .w-beforeFooter .footer-imgarea .swell-block-button,
#body_wrap.archive .w-beforeFooter .footer-imgarea .swell-block-button {
  display: none;
}
#body_wrap.search:not(.search-no-results) #categories-5.c-listMenu {
  display: none;
}
#body_wrap.search aside#sidebar,
#body_wrap.archive aside#sidebar {
  width: 240px !important;
  /* min-height: 800px; */
  background-color: none;
}
/* #body_wrap.archive:not(.category-54) aside#sidebar{
    margin-top: 24rem;
}
 #body_wrap.archive:not(.category-54) main#main_content {
    margin-top: 24rem;
} */
#body_wrap.search aside#sidebar #block-2,
#body_wrap.search aside#sidebar #block-3,
#body_wrap.search aside#sidebar #block-4,
#body_wrap.search aside#sidebar #block-5,
#body_wrap.archive aside#sidebar #block-2,
#body_wrap.archive aside#sidebar #block-3,
#body_wrap.archive aside#sidebar #block-4,
#body_wrap.archive aside#sidebar #block-5 {
  display: none !important;
}
#body_wrap.search aside#sidebar #block-6,
#body_wrap.archive aside#sidebar #block-6 {
  position: sticky !important;
  top: 200px;
  left: 0;
  margin-top: 0;
}
#body_wrap.search main#main_content,
#body_wrap.archive main#main_content {
  width: calc(100% - 240px - var(--swl-sidebar_margin)) !important;
}

#body_wrap.search .p-postList__item .zaikoobi,
#body_wrap.archive .p-postList__item .zaikoobi {
  position: absolute;
  top: 16px;
  right: -40px;
  width: 140px;
  transform: rotate(45deg);
  color: var(--color_bg);
  font-size: 14px;
  text-align: center;
  padding: 6px 0;
}
/* ダークモード時に売り切れ等のラベルのテキストカラーを変更 */
#body_wrap.archive .p-postList__item .zaikoobi {
  color: #f8f9fa;
}
#body_wrap.search .p-postList__item .zaikoobi.few,
#body_wrap.archive .p-postList__item .zaikoobi.few {
  background-color: #eabe2d;
}
#body_wrap.search .p-postList__item .zaikoobi.soldout,
#body_wrap.archive .p-postList__item .zaikoobi.soldout {
  background-color: #d34d4d;
}
#body_wrap.search .p-postList__item .zaikoobi.waiting,
#body_wrap.archive .p-postList__item .zaikoobi.waiting {
  background-color: #649ad3;
}
#body_wrap.search .p-postList.-type-card .p-postList__item .p-postList__link,
#body_wrap.archive .p-postList.-type-card .p-postList__item .p-postList__link {
  overflow: hidden;
}
#body_wrap.search
  .p-postList.-type-card
  .p-postList__item
  .p-postList__link
  .p-postList__thumb,
#body_wrap.archive
  .p-postList.-type-card
  .p-postList__item
  .p-postList__link
  .p-postList__thumb {
  box-shadow: none;
  overflow: initial;
}
#body_wrap.search
  .p-postList.-type-card
  .p-postList__item
  .p-postList__link
  .p-postList__thumb
  .c-postThumb__cat,
#body_wrap.archive
  .p-postList.-type-card
  .p-postList__item
  .p-postList__link
  .p-postList__thumb
  .c-postThumb__cat {
  top: auto;
  bottom: -30px;
  left: 0;
  right: auto;
}
#body_wrap.search
  .p-postList.-type-card
  .p-postList__item
  .p-postList__link
  .p-postList__body,
#body_wrap.archive
  .p-postList.-type-card
  .p-postList__item
  .p-postList__link
  .p-postList__body {
  padding: 40px 0 0 0;
}
#body_wrap.search
  .p-postList.-type-card
  .p-postList__item
  .p-postList__link
  .p-postList__body
  .p-postList__meta
  .p-postList__times,
#body_wrap.archive
  .p-postList.-type-card
  .p-postList__item
  .p-postList__link
  .p-postList__body
  .p-postList__meta
  .p-postList__times {
  display: none;
}
.c-postThumb__cat {
  background-color: #a3adc0;
  font-size: 12px;
}
.dark-mode .c-postThumb__cat {
  background-color: #4a5568;
}
.category-products .p-postList__body {
  padding-top: 24px !important;
}
.category-products .p-postList__title {
  margin-top: 16px;
}
.category-products .-type-card .p-postList__item {
  padding: 0 12px;
}
.c-categoryList {
  color: #a3adc0;
}
.category-products .p-postList__price {
  font-size: 14px;
}
#body_wrap.search-results .widget_categories.c-listMenu {
  display: block !important;
  margin-top: 32px;
}
#body_wrap.search-no-results #sidebar {
  padding-top: 32px;
}

/* 各商品のホバー */
.category-products .p-postList__item a .c-postThumb__figure img {
  transition: transform 0.3s ease;
}

.category-products .p-postList__item a:hover .c-postThumb__figure img {
  transform: scale(1.06);
}

/* サイドメニューのホバー */
.c-listMenu a {
  transition: all 0.2s ease-out;
}

.c-listMenu a:hover {
  transform: translateX(3px);
}

.dark-mode .c-listMenu a:hover {
  opacity: 0.6 !important;
  box-shadow:
    0 4px 12px rgba(0, 0, 0, 0.1),
    0 12px 24px -12px rgba(0, 0, 0, 0.2);
}

@media screen and (max-width: 1279px) {
  #body_wrap.search .p-postList .p-postList__item,
  #body_wrap.archive.category-products .p-postList .p-postList__item {
    width: 50%;
  }
}
@media screen and (max-width: 959px) {
  #body_wrap.search aside#sidebar,
  #body_wrap.archive aside#sidebar {
    width: 100% !important;
    min-height: auto;
  }
  #body_wrap.archive aside#sidebar {
    margin-top: 4em !important;
  }
  #body_wrap.search .p-postList .p-postList__item,
  #body_wrap.archive.category-products .p-postList .p-postList__item {
    width: 25%;
  }
  #body_wrap.search .widget_categories.c-listMenu,
  #body_wrap.archive .widget_categories.c-listMenu {
    display: block;
  }
  #body_wrap.search main#main_content,
  #body_wrap.archive main#main_content {
    width: 100% !important;
  }
}
@media screen and (max-width: 599px) {
  #body_wrap.search .p-postList .p-postList__item,
  #body_wrap.archive.category-products .p-postList .p-postList__item {
    width: 50%;
  }
  #body_wrap.archive .posttitle-area {
    margin-top: 80px;
    padding-top: 0;
    /* height: 160px; */
  }
  /* .category-products .p-postList {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 24px;
  } */
  .category-products .p-postList__item {
    width: 100% !important;
    padding: 0 !important;
  }
}

/* 商品詳細 */
#body_wrap.single .p-articleMetas .c-categoryList__link {
  border-radius: 10px;
  padding: 4px 10px;
  background-color: #a3adc0;
}
.dark-mode #body_wrap.single .p-articleMetas .c-categoryList__link {
  background-color: #4a5568;
}
/* #body_wrapのoverflow:hiddenがposition:stickyを無効化してしまうため、
   商品詳細ページのみ縦方向を visible に戻す(横方向のクリップは維持) */
#body_wrap.single {
  overflow-x: hidden;
  overflow-y: visible;
}
#body_wrap.single main#main_content {
  margin: 80px auto;
}
#body_wrap.single #itempage form:after {
  visibility: hidden;
  display: block;
  content: " ";
  clear: both;
  height: 0;
}
#body_wrap.single #itempage form > .itemimg {
  position: relative;
  float: left;
  clear: left;
  width: 50%;
}
/* PCのみ、商品画像を固定して右側の説明だけスクロールさせる */
@media screen and (min-width: 960px) {
  #body_wrap.single #itempage form > .itemimg {
    position: sticky;
    top: 120px;
  }
}
#body_wrap.single #itempage form > .itemsubimg {
  /* float: left; */
  clear: left;
  width: 50%;
}
#body_wrap.single #itempage form > .itemimg img {
  padding-bottom: 16px;
}
#body_wrap.single #itempage form > .itemimg img,
#body_wrap.single #itempage form > .itemsubimg img {
  width: 100%;
  aspect-ratio: 1/1;
  object-fit: cover;
}
#body_wrap.single #itempage form > .itemsubimg {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(3, 1fr);
}
#body_wrap.single #itempage form > .itemsubimg a {
  /* width: 33.33%; */
}
/* 商品画像が複数枚あるときのスライダー表示 */
/* aspect-ratioが使えない古いブラウザ・実機でも高さが0にならないよう、
   padding-bottomを使った古典的な比率指定にしている */
#body_wrap.single #itempage form > .itemimg .item-main-swiper {
  position: relative;
  height: 0;
  padding-bottom: 100%; /* 1:1 */
  overflow: hidden;
}
#body_wrap.single #itempage form > .itemimg .item-main-swiper .swiper-wrapper {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
#body_wrap.single #itempage form > .itemimg .item-main-nav {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 10px;
  margin-top: 0;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 0 12px;
}
#body_wrap.single #itempage form > .itemimg .item-main-nav .swiper-button-prev,
#body_wrap.single #itempage form > .itemimg .item-main-nav .swiper-button-next {
  position: static;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0;
  width: 32px;
  height: 32px;
  padding: 0;
  background: none;
  transition: opacity 0.4s;
}
#body_wrap.single
  #itempage
  form
  > .itemimg
  .item-main-nav
  .swiper-button-prev:hover,
#body_wrap.single
  #itempage
  form
  > .itemimg
  .item-main-nav
  .swiper-button-next:hover {
  opacity: 0.7;
}
#body_wrap.single
  #itempage
  form
  > .itemimg
  .item-main-nav
  .swiper-button-prev:after,
#body_wrap.single
  #itempage
  form
  > .itemimg
  .item-main-nav
  .swiper-button-next:after {
  font-family: inherit;
  font-size: 20px;
  line-height: 1;
  transform: none;
  border: none;
  position: static;
  width: auto;
  height: auto;
  color: #fff;
  filter: drop-shadow(0 1px 1px rgba(0, 0, 0, 0.4));
}
#body_wrap.single
  #itempage
  form
  > .itemimg
  .item-main-nav
  .swiper-button-prev:after {
  content: "←";
}
#body_wrap.single
  #itempage
  form
  > .itemimg
  .item-main-nav
  .swiper-button-next:after {
  content: "→";
}
#body_wrap.single #itempage form > .itemimg .item-main-nav .swiper-button-next,
#body_wrap.single #itempage form > .itemimg .item-main-nav .swiper-button-prev {
  background: rgba(0, 0, 0, 0.45);
  border-radius: 50%;
  width: 40px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: background 0.2s ease;
}
#body_wrap.single
  #itempage
  form
  > .itemimg
  .item-main-nav
  .swiper-button-next:hover,
#body_wrap.single
  #itempage
  form
  > .itemimg
  .item-main-nav
  .swiper-button-prev:hover {
  background: rgba(0, 0, 0, 0.7);
}
#body_wrap.single
  #itempage
  form
  > .itemimg
  .item-main-nav
  .swiper-button-next:after,
#body_wrap.single
  #itempage
  form
  > .itemimg
  .item-main-nav
  .swiper-button-prev:after {
  color: #fff;
  font-size: 18px;
}
#body_wrap.single
  #itempage
  form
  > .itemimg
  .item-main-nav
  .swiper-button-disabled {
  opacity: 0.35;
}
#body_wrap.single #itempage form > .itemsubimg.itemsubimg--thumbs {
  display: block;
  margin: 10px 0 16px 0;
}
#body_wrap.single
  #itempage
  form
  > .itemsubimg.itemsubimg--thumbs
  .item-thumbs-list {
  /* サブ画像が多いときに小さくなりすぎないよう、1行5枚までに固定する */
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 10px;
}
#body_wrap.single #itempage form > .itemsubimg.itemsubimg--thumbs .item-thumb {
  aspect-ratio: 1/1;
  overflow: hidden;
  cursor: pointer;
}
#body_wrap.single
  #itempage
  form
  > .itemsubimg.itemsubimg--thumbs
  .item-thumb
  img {
  height: 100%;
  filter: brightness(0.7) saturate(0.7);
  transition: filter 0.2s ease;
}
#body_wrap.single
  #itempage
  form
  > .itemsubimg.itemsubimg--thumbs
  .item-thumb.is-active
  img {
  filter: none;
}
#body_wrap.single #itempage form > .itemsubimg.itemsubimg--thumbs img {
  aspect-ratio: 1/1;
}
@media screen and (max-width: 959px) {
  #body_wrap.single #itempage form > .itemsubimg.itemsubimg--thumbs {
    margin-bottom: 24px;
  }
}
#body_wrap.single #itempage form > h3,
#body_wrap.single #itempage form > .exp,
#body_wrap.single #itempage form > .skuform {
  float: right;
  clear: right;
  width: 45%;
}
#body_wrap.single #itempage form > .exp {
  display: flex;
  flex-direction: column;
  margin-bottom: 64px;
}
#body_wrap.single #itempage form > h3 {
  display: none;
  color: inherit;
  background-color: #ffffffff;
  padding: 0;
  margin: 0 0 2rem 0;
}
#body_wrap.single #itempage form > h3:before {
  content: none;
}
#body_wrap.single #itempage form > .exp .field:first-child {
  display: flex;
  gap: 10px;
  align-items: flex-end;
  justify-content: flex-start;
  flex-direction: row-reverse;
}
#body_wrap.single #itempage form > .exp > .field {
  border-bottom: none;
  text-align: right;
  margin-bottom: 10px;
}
#body_wrap.single #itempage form > .exp > .field:first-child:before {
  content: "(税込)";
}
#body_wrap.single #itempage form > .exp > .field .field_name {
  display: none;
}
#body_wrap.single #itempage form > .exp > .field .field_cprice {
  text-decoration: line-through;
  text-decoration-thickness: 2px;
  text-decoration-color: #d24646;
}
#body_wrap.single #itempage form > .exp > .field .field_price {
  color: inherit;
  font-size: 1.25rem;
  line-height: 1.4;
  font-weight: bold;
}
.field:has(.field_cprice) .field_price {
  color: #d24646 !important;
}
/*値引き価格ダークモード時の価格表示 */
.dark-mode .field_cprice {
  color: #f8f9fa !important;
  text-decoration-color: #ff7070 !important;
}

.dark-mode .field:has(.field_cprice) .field_price {
  color: #ff7070 !important;
}

#body_wrap.single #itempage form > .exp > p {
  margin-bottom: 20px !important;
}

/* #body_wrap.single #itempage form > .skuform input[type="submit"] {
  display: block;
  width: 240px;
  max-width: 100%;
  background-color: var(--color_main);
  color: var(--color_bg);
  border: none;
  box-shadow: 0 0 10px rgba(0 0 0 / 10%);
  padding: 10px;
  margin: 20px auto 0 auto;
}
#body_wrap.single #itempage form > .skuform input[type="submit"]:hover {
  opacity: 0.8 !important;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1),
    0 12px 24px -12px rgba(0, 0, 0, 0.2);
} */
.dark-mode #body_wrap.single #itempage form > .skuform input[type="submit"] {
  border: 1px solid #f8f9fa;
  color: #f8f9fa;
  background-image: linear-gradient(
    to right,
    var(--color_main) 50%,
    #f8f9fa 50%
  );
}
.dark-mode
  #body_wrap.single
  #itempage
  form
  > .skuform
  input[type="submit"]:hover {
  /* ホバー時のテキスト色だけダーク用に上書き */
  color: #1c1d1f;
}
/* 
商品詳細＿種類とオプションの両方が設定されている時にオプション下の破線を非表示に */
#body_wrap.single #itempage table.skumulti .item_option tbody tr {
  border-bottom: none !important;
  padding-bottom: 8px !important;
}

/* welcartで出してるボタンのスタイル＿森 */
#body_wrap.single #itempage form > .skuform input[type="submit"] {
  display: block;
  width: 240px;
  max-width: 100%;
  padding: 10px;
  margin: 20px auto 0 auto;
  position: relative;
  background-color: var(--color_main);
  color: var(--color_bg);
  background-image: linear-gradient(
    to right,
    var(--color_main) 50%,
    var(--color_main_hover, var(--color_bg)) 50%
  );
  background-size: 200% 100%;
  background-position: 0 0;
  transition:
    background-position 0.35s cubic-bezier(0.19, 1, 0.22, 1),
    color 0.35s ease;
  border: 1px solid var(--color_main);
}
#body_wrap.single #itempage form > .skuform input[type="submit"]:hover {
  color: var(--color_main);
  background-position: -100% 0;
}

#body_wrap.single #itempage form > .skuform .item_option {
  display: block;
  border: none;
  margin-top: 14px;
}
#body_wrap.single #itempage form > .skuform .item_option tbody {
  /* width: fit-content;
 margin-left: auto; */
  display: flex;
  flex-direction: column;
}
#body_wrap.single #itempage form > .skuform .item_option caption {
  /* display: block;
  text-align: right;
  margin-bottom: 4px; */
  display: none;
}
#body_wrap.single #itempage form > .skuform .item_option tbody tr {
  display: flex;
  padding-bottom: 24px;
  justify-content: space-between;
  border-bottom: 1px dashed var(--color_border--table);
}
#body_wrap.single
  #itempage
  form
  > .skuform
  .item_option
  tbody
  tr:not(:first-child) {
  padding-top: 24px;
}

#body_wrap.single #itempage form > .skuform .item_option tbody tr th,
#body_wrap.single #itempage form > .skuform .item_option tbody tr td {
  /* display: inline-block; */
  width: auto;
  border: none;
  vertical-align: middle;
  margin-bottom: 0;
  display: flex;
}
#body_wrap.single #itempage form > .skuform .item_option tbody tr td {
  gap: 8px;
  /* width: 250px; */
  justify-content: end;
  /* flex-wrap: wrap; */
  flex-direction: column;
}
#body_wrap.single #itempage form > .skuform .item_option tbody tr th,
#body_wrap.single #itempage form > .skuform .item_option tbody tr th:before {
  background-color: inherit;
  font-weight: bold;
  width: 200px;
}

/* チェックボックス式でオプションを作成時に表示されるbrを非表示に */
.iopt_checkbox_label + br {
  display: none;
}

/* 商品詳細のオプションスマホ時 */
@media screen and (max-width: 599px) {
  #body_wrap.single #itempage form > .skuform .item_option caption {
    text-align: left;
  }

  #body_wrap.single #itempage form > .skuform .item_option tbody {
    margin-left: 0;
    width: 100%;
  }
  #body_wrap.single #itempage form > .skuform .item_option tbody tr {
    justify-content: space-between;
    flex-direction: column;
  }
  #body_wrap.single #itempage form > .skuform .item_option tbody tr th {
    width: auto;
    margin-bottom: 8px;
  }

  #body_wrap.single #itempage form > .skuform .item_option tbody tr td {
    justify-content: flex-start;
    padding: 0 10px;
  }
  #body_wrap.single #itempage form > .skuform .item_option tbody tr th,
  #itempage form > .skuform .item_option tbody tr td {
    font-size: 16px;
  }

  #body_wrap.single #itempage form > .skuform .item_option tbody tr {
    text-align: right;
    display: flex;
    padding-bottom: 16px;
  }
  #body_wrap.single
    #itempage
    form
    > .skuform
    .item_option
    tbody
    tr:not(:first-child) {
    padding-top: 16px;
  }
}

#body_wrap.single
  #itempage
  form
  > .skuform
  .item_option
  .iopt_radio_label
  .iopt_radio,
#body_wrap.single
  #itempage
  form
  > .skuform
  .item_option
  .iopt_checkbox_label
  .iopt_checkbox {
  margin-right: 4px;
}
select option {
  padding: 2px;
}
#body_wrap.single #itempage form > .skuform table.skumulti,
#body_wrap.single #itempage form > .skuform table.skumulti th,
#body_wrap.single #itempage form > .skuform table.skumulti td {
  border: none;
}
#body_wrap.single #itempage form > .skuform table.skumulti thead {
  display: none;
}
#body_wrap.single #itempage form > .skuform table.skumulti td {
  display: block;
  width: 100%;
  text-align: right;
}
#body_wrap.single #itempage form > .skuform table.skumulti td.price {
  display: flex;
  gap: 10px;
  align-items: flex-end;
  width: 100%;
  flex-direction: row-reverse;
}
#body_wrap.single #itempage form > .skuform table.skumulti td.price:before {
  content: "(税込)";
  vertical-align: initial;
}
#body_wrap.single #itempage form > .skuform table.skumulti td > .cprice {
  text-decoration: line-through;
  margin-bottom: 4px;
  text-decoration-color: #d24646;
  text-decoration-thickness: 2px;
}
#body_wrap.single #itempage form > .skuform table.skumulti .quantity_notice {
  text-align: right;
}
.dark-mode
  #body_wrap.single
  #itempage
  form
  > .skuform
  table.skumulti
  td
  > .cprice {
  color: #f8f9fa;
  text-decoration-color: #ff7070;
}
#body_wrap.single #itempage form > .skuform table.skumulti td > .price {
  color: inherit;
  font-size: 1.25rem;
  line-height: 1.4;
}
/* 値引き後の価格表示 */
#body_wrap.single
  #itempage
  form
  > .skuform
  table.skumulti
  td:has(.cprice)
  > .price {
  color: #d24646;
}
.dark-mode
  #body_wrap.single
  #itempage
  form
  > .skuform
  table.skumulti
  td:has(.cprice)
  > .price {
  color: #ff7070;
}
#body_wrap.single #itempage form > .skuform table.skumulti td.zaiko {
  text-align: right;
}
#body_wrap.single #itempage form > .skuform table.skumulti td.zaiko:before {
  content: "在庫状態：";
  vertical-align: initial;
}
#body_wrap.single #itempage form > .skuform table.skumulti td.quant:before {
  content: "数量 ";
  vertical-align: initial;
}
#body_wrap.single
  #itempage
  form
  > .skuform
  table.skumulti
  td.button
  input[type="submit"] {
  margin-top: 0;
}
#body_wrap.single #itempage form > .skuform table.skumulti td.error_message {
  border-bottom: 1px solid #e4e4e4;
  padding-bottom: 20px;
  margin-bottom: 20px;
}
#itempage .skuform .skuquantity {
  margin: 0 0 0 5px;
  color: var(--color_text);
  height: auto;
}
#itempage .skuform:has(.error_message) {
  display: flex;
  flex-direction: column;
}
#itempage .skuform:has(.error_message) div:first-of-type {
  order: 1;
}
#itempage .skuform .error_message {
  order: 0;
  margin-top: 4px;
}
/* 直前の行にカートボタンが無い場合のみ quantity_notice を非表示にする */
.skumulti
  tr:not(:has(td.button input[value="カートへ入れる"]))
  + tr
  > .quantity_notice {
  display: none !important;
}
/* 下部の在庫状態をカートへボタンと同じスタイルにする */
.zaiko_status,
#body_wrap.single
  #itempage
  form
  > .skuform
  table.skumulti
  td.button:not(:has(input[value="カートへ入れる"])) {
  text-align: center;
  display: block;
  width: 240px;
  max-width: 100%;
  background-color: var(--color_main);
  color: var(--color_bg);
  border: none;
  padding: 10px;
  margin: 20px auto 0 auto;
}
.dark-mode .zaiko_status,
.dark-mode
  #body_wrap.single
  #itempage
  form
  > .skuform
  table.skumulti
  td.button:not(:has(input[value="カートへ入れる"])) {
  border: 1px solid #f8f9fa;
  color: #f8f9fa;
}

@media screen and (max-width: 959px) {
  #body_wrap.single main#main_content {
    padding-top: 40px;
  }
  #body_wrap.single main#main_content .post_content {
    margin-top: 2em;
  }
  #body_wrap.single #itempage form {
    display: grid;
  }
  #body_wrap.single #itempage form > .itemimg {
    order: 1;
  }
  #body_wrap.single #itempage form > .itemsubimg {
    order: 2;
  }
  #body_wrap.single #itempage form > .exp {
    order: 3;
  }
  #body_wrap.single #itempage form > .skuform {
    order: 4;
  }
  #body_wrap.single #itempage form > .itemimg,
  #body_wrap.single #itempage form > .itemsubimg,
  #body_wrap.single #itempage form > h3,
  #body_wrap.single #itempage form > .exp,
  #body_wrap.single #itempage form > .skuform {
    width: 100%;
  }
}

.spec__wrapper {
  border-top: 1px solid #e4e4e4;
  border-bottom: 1px solid #e4e4e4;
  padding: 20px 0;
}
.single-item .l-article,
.page-cart .l-article,
.page-member .l-article {
  max-width: 100% !important;
  width: 100% !important;
  padding-left: 0;
  padding-right: 0;
}
#itempage h1 {
  order: -1;
  font-size: 1.5rem;
  font-weight: 550;
  margin-bottom: 10px;
}
#itempage .exp h2 {
  font-size: 1.375rem;
  font-weight: 550;
  margin-bottom: 10px;
}
#itempage .exp h3 {
  font-size: 1.125rem;
  font-weight: 550;
  margin-bottom: 10px;
  color: var(--color_text);
  background: none;
  padding: 0;
}
#itempage .exp h4 {
  font-size: 1rem;
  font-weight: 550;
  margin-bottom: 10px;
}
#itempage .exp blockquote {
  position: relative;
  border-left: 3px solid #ccc;
  padding-left: 10px;
  margin-bottom: 10px;
}
#itempage .exp blockquote:before {
  position: absolute;
  font-family: "FontAwesome";
  content: "\f10d";
  font-size: 14px;
  color: #ccc;
}
#itempage .exp blockquote p {
  position: relative;
  padding-left: 30px;
}
#itempage .exp ul li {
  list-style-type: "・ ";
  margin-left: 1.5em;
}
#itempage .exp ol {
  counter-reset: my-counter;
  padding-left: 1em;
}
#itempage .exp ol li {
  list-style: none;
  counter-increment: my-counter;
  position: relative;
  padding-left: 0.6em;
}
#itempage .exp ol li::before {
  content: counter(my-counter);
  position: absolute;
  left: -11px;
  top: 0px;
}
.l-mainContent.l-article.all-products-main {
  max-width: 100%;
}
.-frame-border .l-mainContent {
  box-shadow: none;
}
.-frame-on .l-mainContent {
  background: none;
}
/* Welcart sidebar */
.w-fixSide {
  margin-top: 0;
  display: none;
}
.c-widget__title.-side {
  margin-bottom: 0;
}
.c-widget__title.-side::before,
.c-widget__title.-side::after {
  content: none;
}
#welcart_search-3 {
  margin: 0;
}
#welcart_search-3 a {
  display: none;
}
#welcart_search-3 .searchtext {
  max-width: 200px;
  margin-right: 8px;
}
#customer-info .customer_form input {
  padding: 0.4em 0.5em;
  color: #333;
}
.dark-mode #customer-info .customer_form input {
  color: #fff;
}
#customer-info th {
  font-weight: 400;
}
/* welcart mobile */
@media screen and (max-width: 599px) {
  #gnav {
    display: none;
  }
  .usccart_navi {
    margin-bottom: 6em !important;
  }
  div.usccart_navi li.ucart {
    font-size: 11px;
  }
  #cart th,
  #customer-info th,
  #delivery-info th {
    font-size: 14px;
  }
  #customer-info th,
  #customer-info td,
  #delivery-info th,
  #delivery-info td {
    border: 0;
    padding: 1em 1em 0 1em;
    display: inline-block;
    width: 100%;
  }
  #customer-info .customer_form input {
    width: 100%;
    margin-right: 0;
  }
  #customer-info .customer_form input#zipcode {
    width: 66%;
    margin-right: 6px;
  }
  table.customer_form span {
    width: 100%;
    padding: 0 0 4px 4px;
  }
  #customer-info .customer_form tr.inp1 input {
    width: 100%;
  }
  .customer_form tr {
    display: block;
    padding-bottom: 1em;
  }
  .dark-mode .customer_form tr {
    border-bottom: none;
  }
  .customer_form tr:first-child {
    border-bottom: 0;
    padding-bottom: 0.2em;
  }
  #customer-info .customer_form tr.inp2 input {
    width: 100%;
  }
  #cart thead {
    display: none;
  }
  #cart tbody {
    border-top: 1px solid #e4e4e4;
  }
  #cart tr {
    display: block;
    border-bottom: 1px dashed #e4e4e4;
  }
  #cart tr:last-child {
    border-bottom: none;
  }
  #cart td {
    display: block;
    border: 0;
    text-align: right;
    width: 100%;
    padding: 6px 10px;
  }
  #cart td:nth-child(2),
  #cart td:nth-child(3) {
    padding-top: 12px !important;
  }
  #cart td:last-child {
    padding-bottom: 12px;
  }
  #cart tfoot tr {
    border-bottom: 1px dashed #c2aa8c;
    padding-bottom: 1em;
  }
  #info-confirm #cart_table tfoot tr {
    border: 0;
    padding: 0;
    margin: 0;
  }
  #cart tfoot .thumbnail {
    display: none;
  }
  #cart .productname {
    height: auto !important;
    padding: 6px 10px !important;
  }
  #cart .num {
    display: none;
  }
  #cart .aright {
    display: inline-block;
    text-align: right !important;
  }
  #info-confirm #cart .aright {
    display: inherit;
    margin: 0;
    padding: 0;
  }
  #cart .quantity {
    width: 100% !important;
    font-size: 14px;
    text-align: right !important;
    height: auto !important;
    padding: 6px 10px !important;
  }
  #cart input.quantity {
    width: 56px !important;
  }
  #cart .quantity:before {
    content: "数量：";
  }
  #cart .unitprice {
    width: 100% !important;
    font-size: 14px;
    text-align: right !important;
    height: auto !important;
    padding: 6px 10px !important;
  }
  #cart .unitprice:before {
    content: "単価：";
  }
  #cart .stock {
    width: 100% !important;
    font-size: 14px;
    text-align: right !important;
    height: auto !important;
    padding: 6px 10px !important;
  }
  #cart .action {
    width: 100% !important;
    text-align: left;
  }
  #cart .action input.delButton {
    display: inline-block;
  }
  #cart .thumbnail {
    width: 30% !important;
    display: inline-block;
    box-sizing: border-box;
    height: auto !important;
    padding: 6px 10px !important;
  }
  #cart tr.total_items_price .thumbnail,
  #cart tr.shipping_charge .thumbnail,
  #cart tr.tax .thumbnail,
  #cart tr.total_full_price .thumbnail {
    display: none;
  }
  #cart td.productname {
    width: 65%;
    display: inline-block;
    box-sizing: border-box;
    background-color: inherit !important;
  }
  #cart .subtotal {
    width: 100% !important;
    font-size: 1.2em;
    font-weight: bold;
    text-align: right !important;
    height: auto !important;
    padding: 6px 10px !important;
  }
  #cart tfoot .aright {
    width: 100%;
    padding: 12px 0 0 0 !important;
    text-align: center !important;
  }
  #cart tfoot .aright.subtotal {
    padding-top: 0 !important;
    text-align: center !important;
  }
  #cart th {
    display: none;
    padding: 0;
    border: none;
  }
  .continue_shopping_button {
    padding: 0.3em !important;
  }
  #wc_cart #cart .upbutton {
    font-size: 0.6em;
  }
  #wc_cart #cart .upbutton input {
    font-size: 1.5em;
  }
  #cart .amount {
    display: block;
  }
  #cart .amount::before {
    content: "合計：";
  }
  #cart .quantity-btn {
    margin: 5px 5px 0 !important;
  }
  #info-confirm .total_full_price th.aright.totallabel,
  #info-confirm .total_full_price th.aright.totalend {
    font-size: 18px;
  }
  #confirm_table .ttl,
  #confirm_table .ttl td {
    display: revert;
  }
  #info-confirm .send {
    display: flex;
    flex-direction: column-reverse;
    gap: 30px;
  }
  input#purchase_button,
  input#back_button {
    display: block;
    margin: 0 auto !important;
  }
}

/* Google ReCAPTCHA非表示 */
.grecaptcha-badge {
  visibility: hidden;
}
.grecaptcha-logo {
  display: flex;
}
.reca-g-badge {
  visibility: visible;
}

/* ヘッダー（追加設定） */
.l-header__inner {
  display: flex;
  justify-content: flex-start !important;
  align-items: center !important;
  height: 100px;
}
.l-header__customBtn {
  margin-left: auto !important;
}
.l-header__gnav {
  display: flex;
}
/* ボタン内をフレックスで横並び */
.c-iconList__item.-search {
  display: inline-flex; /* 横並びにする */
  align-items: center; /* アイコンと文字を縦中央揃え */
}
/* カートアイコンを横並びに */
.c-iconBtn {
  display: inline-flex !important; /* 強制的に横並び */
  align-items: center !important; /* 縦中央揃え */
  gap: 8px;
  width: auto;
}

.c-iconBtn__icon.icon-cart,
.c-iconBtn__label {
  display: inline-block !important; /* 横並びを阻害しない */
  width: auto !important; /* 幅固定を解除 */
}
.c-iconBtn__label {
  font-size: 12px;
}
/* @media screen and (max-width:959px){
.l-header__inner .l-header__customBtn .c-iconBtn{
	position: relative;
	background-color: var(--color_main);
	overflow: hidden;
}
.l-0header__inner .c-iconBtn{
	border-radius: 50%;
	box-shadow: 0 0 20px rgba(0 0 0 / 20%);
}
} */
.p-mainVisual__textLayer .p-mainVisual__slideTitle {
  font-family: "Noto Sans JP", sans-serif;
  height: 400px;
}

/* 余白調整 */
.top #content {
  padding-top: 0 !important;
}

/* カート */
.header_explanation {
  display: none;
}
.usccart_navi {
  max-width: 600px !important;
  width: 100%;
  margin: 0 auto 4em auto !important;
  padding-top: 1em;
}
ol.ucart {
  display: flex !important;
  height: auto !important;
  counter-reset: cartnumber;
}
ol.ucart li.ucart {
  float: inherit !important;
  background: none !important;
  color: #999999;
  font-weight: normal;
}
ol.ucart li.ucart.usccart_cart,
ol.ucart li.ucart.usccart_customer,
ol.ucart li.ucart.usccart_delivery,
ol.ucart li.ucart.usccart_confirm {
  color: var(--color_text);
}
ol.ucart li.ucart:before {
  counter-increment: cartnumber 1;
  content: counter(cartnumber);
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0 auto 8px auto;
  right: 20px;
  width: 32px;
  height: 32px;
  background-color: var(--color_bg);
  color: #999999;
  /* border: 1px solid #e4e4e4; */
  font-size: 1rem;
  font-weight: normal;
  padding: 6px;
  z-index: 2;
}
ol.ucart li.ucart.usccart_cart:before,
ol.ucart li.ucart.usccart_customer:before,
ol.ucart li.ucart.usccart_delivery:before,
ol.ucart li.ucart.usccart_confirm:before {
  border: none;
  color: var(--color_bg);
  background-color: var(--color_text);
  margin-bottom: 8px;
  border-radius: 50%;
}
ol.ucart li.ucart:after {
  position: absolute;
  content: "";
  top: 15px;
  right: -50%;
  width: 87%;
  height: 1px;
  background-color: #e4e4e4;
  margin: 0 auto;
  z-index: -1;
}
.dark-mode .ucart li.ucart:after {
  background-color: #999999;
}
ol.ucart li.ucart:last-child:after {
  content: none;
}
#delivery-info .customer_form em,
#customer-info .customer_form em {
  color: #d24646 !important;
}
.dark-mode #delivery-info .customer_form em,
.dark-mode #customer-info .customer_form em {
  color: #ff7070 !important;
}
/*welcart cart*/
select,
textarea {
  font-size: 16px;
}
/* .dark-mode select,
.dark-mode textarea,
.dark-mode #itempage .skuform .skuquantity{
  background-color: #4d5156;
  color: #f8f9fa;
  border-color: #333;
} */
/* #previouscart{
	display: none;
} */

#cart input[type="submit"],
#customer-info input[type="submit"],
#delivery-info input[type="submit"],
#inside-cart input[type="submit"],
#info-confirm input[type="submit"]:hover {
  transition: 0.4s;
}
.dark-mode #cart input[type="submit"],
.dark-mode#info-confirm input[type="submit"]:hover {
  background: #f8f9fa;
  color: #333;
}
.dark-mode #customer-info input[type="submit"] {
  color: var(--color_text) !important;
}
.dark-mode
  #inside-cart
  input[type="submit"]:not(.delButton):not(.upbutton input[type="submit"]),
.dark-mode #delivery-info input[type="submit"]:not(.back_to_customer_button),
.dark-mode #purchase_button,
.dark-mode #customer-info input[type="submit"] {
  background-color: #4174ab !important;
  color: var(--color_text) !important;
  border: 1px solid #4174ab !important;
  background-image: linear-gradient(
    to right,
    var(--color_main) 50%,
    var(--color_main_hover, var(--color_bg)) 50%
  );
  background-size: 200% 100%;
  background-position: 0 0;
  transition:
    background-position 0.35s cubic-bezier(0.19, 1, 0.22, 1),
    color 0.35s ease;
  width: 200px;
}
.dark-mode #cart input[type="submit"].delButton {
  background: transparent;
  color: #f8f9fa;
}
.dark-mode #cart input[type="submit"]:hover,
.dark-mode #customer-info input[type="submit"]:hover,
.dark-mode
  #delivery-info
  input[type="submit"]:not(.back_to_customer_button):hover,
.dark-mode #inside-cart input[type="submit"].to_customerinfo_button:hover,
.dark-mode #info-confirm input[type="submit"]:not(#back_button):hover {
  color: #4174ab !important;
  background-position: -100% 0 !important;
}
#inside-cart {
  font-size: 0.9em;
}
#cart .upbutton {
  text-align: left;
  padding: 1em 0 2em;
  font-size: 14px;
  font-weight: 400;
}
#cart .upbutton input[type="submit"] {
  color: var(--color_main);
  padding: 4px 10px;
  border: 1px solid var(--color_main);
  margin-left: 12px;
  background-image: linear-gradient(
    to right,
    var(--color_main) 50%,
    var(--color_bg) 50%
  );
  background-size: 200% 100%;
  background-position: right; /* 初期は左側（= #f8f9fa が見える） */
  transition:
    background-position 0.3s ease,
    color 0.3s ease;
}
#cart .upbutton input[type="submit"]:hover {
  background-position: left;
  color: var(--color_bg);
}
.dark-mode #cart .upbutton input[type="submit"] {
  border: 1px solid #f8f9fa;
  color: var(--color_text);
  background-image: linear-gradient(to right, #f8f9fa 50%, var(--color_bg) 50%);
}

.dark-mode #cart .upbutton input[type="submit"]:hover {
  color: #333 !important;
  background-position: left !important;
}

#cart input.quantity {
  width: 56px;
  text-align: left;
}
/* .dark-mode #cart input,
.dark-mode #customer-info input,
.dark-mode #delivery-info input {
  background-color: #4d5156;
  color: #f8f9fa;
  border-color: #333;
} */
#cart td.aright {
  text-align: left;
}
#cart input.delButton {
  background: none;
  font-size: 12px;
  border: none;
  border-bottom: 1px solid;
}
#cart input.delButton:hover {
  color: var(--color_main);
}
#customer-info form,
#delivery-info form {
  max-width: 980px;
  width: 100%;
  margin: 0 auto;
}
#cart table,
#delivery-info table {
  border: inherit;
}
#delivery-info table.customer_form {
  margin: 0 !important;
}
#delivery-info #delivery_table #zipcode_row td,
#delivery-info #delivery_table #address1_row td,
#delivery-info #delivery_table #address2_row td,
#delivery-info #delivery_table #address3_row td,
#delivery-info #delivery_table #tel_row td,
#delivery-info #delivery_table #fax_row td {
  color: #ffffff00;
}
#cart th {
  color: inherit;
  background-color: inherit;
}
#cart th:not(:first-child) {
  padding: 0 12px;
}
#cart th,
#cart td {
  border: 0;
  text-align: left !important;
}
#cart td:not(:first-child):not(:last-child) {
  height: 180px;
  padding: 24px 12px;
}
#cart .productname {
  white-space: nowrap;
}
#cart thead {
  /* border-top: 1px solid #c2aa8c; */
}
#cart tbody {
  border-bottom: 1px solid #e4e4e4;
}
#cart thead tr th:nth-child(odd),
#cart tbody tr td:nth-child(odd) {
  /* background-color: #e8d9c7; */
}
#cart tr {
  border-bottom: 1px solid #e4e4e4;
}
#cart .productname {
  min-width: 120px;
  white-space: wrap;
}
#cart .unitprice,
#cart .quantity,
#cart .subtotal,
#cart .stock {
  width: 136px;
}
#cart tfoot tr {
  font-size: 1.3em;
  text-align: center;
  border-bottom: 0;
}
#cart tfoot tr.total_items_price,
#cart tfoot tr.shipping_charge,
#cart tfoot tr.tax {
  font-size: 14px;
}
#cart .thumbnail {
  min-width: 70px;
  width: 160px;
}
#cart .thumbnail img {
  width: 100%;
  object-fit: contain;
  min-width: 85px;
}

#cart tfoot .aright {
  padding: 24px 12px;
  color: var(--color_main);
  text-align: right;
  font-weight: bold;
}
#cart tfoot .subtotal {
  color: var(--color_main);
  font-weight: bold;
  text-align: left !important;
}
.dark-mode #cart tfoot .aright,
.dark-mode #cart tfoot .subtotal {
  color: #f8f9fa;
}
.currency_code {
  display: none;
}
table.customer_form span {
  display: block;
}
table#delivery_table {
  background: #fefefe;
  border: 1px solid #ddd;
}
#customer-info th,
#customer-info td,
#delivery-info th,
#delivery-info td {
  border: 0;
  border-bottom: none;
  padding: 1.2em 1em;
  color: var(--color_text);
}
.dark-mode #customer-info th,
.dark-mode #customer-info td,
.dark-mode #delivery-info th,
.dark-mode #delivery-info td {
  border-bottom: none;
}
#customer-info th,
#delivery-info th,
#delivery-info td,
#delivery-info td dt {
  font-size: 100% !important;
}
#customer-info th,
#customer-info th:before,
#delivery-info th,
#delivery-info th:before {
  background: none;
}
#customer-info #zipcode_row td,
#customer-info #address1_row td,
#customer-info #address2_row td,
#customer-info #address3_row td,
#customer-info #tel_row td,
#customer-info #fax_row td {
  color: #ffffff00;
}
#customer-info .customer_form tr.inp1 input {
  width: 100%;
  margin-left: 0;
}
#inside-cart .send,
#customer-info .send,
#delivery-info .send,
#info-confirm .send {
  margin-top: 2em;
  margin-bottom: 0;
  padding-top: 2em;
  border-top: 0;
}
.payment-credit .send {
  padding-top: 0 !important;
}
.payment-credit #back_button {
  margin-right: 0 !important;
}
#info-confirm #cart th.action,
#info-confirm #cart td.action {
  display: none;
}
#info-confirm #confirm_table {
  max-width: 832px;
  width: 100%;
  margin: 0 auto;
}
#info-confirm .thumbnail {
  padding: 8px 12px 2px 12px !important;
}
.postage-textbox {
  text-align: center;
  font-size: 1.2rem;
  padding: 20px 0;
}
.yuupaketto-text {
  width: fit-content;
  font-size: 90%;
  padding: 20px 4px 10px 4px;
  margin: 0 auto;
}
.continue_shopping_button,
.back_to_customer_button,
input#back_button,
.storycontent .send input {
  display: block;
  position: relative;
  background-color: var(--color_bg);
  border: 1px solid var(--color_main) !important;
  color: var(--color_main);
  border-radius: 0 !important;
  padding: 6px 20px !important;
  margin-right: 2rem;
  box-shadow: none !important;
  width: 200px;
  max-width: 100%;
  background-image: linear-gradient(
    to right,
    var(--color_main_hover, var(--color_bg)) 50%,
    var(--color_main) 50%
  );
  background-size: 200% 100%;
  background-position: 0 0;
  transition:
    background-position 0.35s cubic-bezier(0.19, 1, 0.22, 1),
    color 0.35s ease;
}
/* 親要素 .send の中にある、最後の input の右余白を 0 にする */
.send input:last-of-type {
  margin-right: 0 !important;
}
.continue_shopping_button:hover,
.back_to_customer_button:hover,
#back_button:hover,
.back_cart_button:hover,
.storycontent .send input:hover,
#delivery-info #delivery_table input#search_zipcode:hover {
  color: var(--color_bg);
  background-position: -100% 0;
}
.dark-mode .continue_shopping_button,
.dark-mode .back_to_customer_button,
.dark-mode #back_button,
.dark-mode .back_cart_button,
.dark-mode .storycontent .send input {
  border: 1px solid #f8f9fa !important;
  color: #f8f9fa;
  background-color: var(--color_bg) !important;
  background-image: linear-gradient(
    to right,
    var(--color_main) 50%,
    #f8f9fa 50%
  );
}
.dark-mode .continue_shopping_button:hover,
.dark-mode .back_to_customer_button:hover,
.dark-mode #back_button:hover,
.dark-mode .back_cart_button:hover,
.dark-mode .storycontent .send input:hover {
  /* ホバー時のテキスト色だけダーク用に上書き */
  color: #1c1d1f;
}
/* カート➁戻るボタン */
#customer-info .send input.back_cart_button {
  background-color: transparent !important;
  color: var(--color_main) !important;
  border: 1px solid var(--color_footer_bg) !important;
  background-image: linear-gradient(
    to right,
    var(--color_main_hover, var(--color_bg)) 50%,
    var(--color_main) 50%
  ) !important;
}
#customer-info .send input.back_cart_button:hover,
.back_to_top_button:hover {
  background-position: -100% 0 !important;
}
#customer-info .send input.back_cart_button:hover {
  color: var(--color_bg) !important;
}
.back_to_top_button:hover {
  color: var(--color_main) !important;
}
.dark-mode #customer-info .send input.back_cart_button,
.dark-mode #delivery-info input.back_to_customer_button,
.dark-mode .back_to_top_button {
  border: 1px solid #f8f9fa !important;
  color: #f8f9fa !important;
  background-color: transparent !important;
}
.dark-mode #customer-info .send input.back_cart_button,
.dark-mode #delivery-info input.back_to_customer_button {
  background-image: linear-gradient(
    to right,
    var(--color_main) 50%,
    #f8f9fa 50%
  ) !important;
}
.dark-mode .back_to_top_button {
  background-image: none !important;
}

.dark-mode #customer-info .send input.back_cart_button:hover,
.dark-mode #delivery-info input.back_to_customer_button:hover,
.dark-mode .back_to_top_button:hover {
  color: #1c1d1f !important;
  background-position: -100% 0 !important;
}

.back_cart_button:before {
  content: "<";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
#customer-info .error_message,
#delivery-info .error_message {
  font-size: 14px;
  line-height: 24px;
  font-weight: bold;
  color: #d24646 !important;
}
.dark-mode #customer-info .error_message,
.dark-mode #delivery-info .error_message {
  color: #ff7070 !important;
}
input#payment_name_0,
input#payment_name_1 {
  margin: 0 7px 0 0;
}

input.to_deliveryinfo_button,
input.to_confirm_button,
input#purchase_button,
#customer-info input[type="submit"],
.send .to_customerinfo_button {
  display: block;
  position: relative;
  background-color: var(--color_main);
  border: 1px solid var(--color_main) !important;
  color: var(--color_bg) !important;
  border-radius: 0 !important;
  padding: 6px 20px !important;
  margin-right: 2rem;
  box-shadow: none !important;
  width: 200px;
  max-width: 100%;
  background-image: linear-gradient(
    to right,
    var(--color_main) 50%,
    var(--color_main_hover, var(--color_bg)) 50%
  );
  background-size: 200% 100%;
  background-position: 0 0;
  transition:
    background-position 0.35s cubic-bezier(0.19, 1, 0.22, 1),
    color 0.35s ease;
}
input.to_deliveryinfo_button:hover,
input.to_customerinfo_button:hover,
input.to_confirm_button:hover,
input#purchase_button:hover,
#customer-info input[type="submit"]:hover {
  color: var(--color_main) !important;
  background-position: -100% 0;
}

.dark-mode .to_deliveryinfo_button,
.dark-mode .to_confirm_button {
  background-color: #f8f9fa;
  color: #333;
}

.dark-mode
  .post_content
  #inside-cart
  form
  .send
  input[type="submit"].to_customerinfo_button:hover {
  color: #4174ab !important;
}
.send {
  display: flex;
  justify-content: space-between;
}
#search_zipcode {
  font-size: 12px !important;
  padding: 4px 8px !important;
  color: var(--color_main) !important;
  padding: 4px 10px;
  border: 1px solid var(--color_main);
  margin-left: 12px;
  background-image: linear-gradient(
    to right,
    var(--color_main) 50%,
    var(--color_bg) 50%
  );
  background-size: 200% 100%;
  background-position: right; /* 初期は左側（= #f8f9fa が見える） */
  transition:
    background-position 0.3s ease,
    color 0.3s ease;
}
#search_zipcode:hover {
  background-position: left;
  color: var(--color_bg) !important;
}

.dark-mode #search_zipcode {
  border: 1px solid #f8f9fa;
  color: #f8f9fa !important;
  background-image: linear-gradient(to right, #f8f9fa 50%, var(--color_bg) 50%);
}
.dark-mode #search_zipcode:hover {
  color: var(--color_bg) !important;
  background-position: unset !important;
}

/* 会員登録ページー郵便番号のエラーメッセージ位置調整 */
#zipcode_row td {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}

#zipcode_row td .field-error {
  order: 3;
  width: 100%;
}

#confirm_table th {
  color: inherit;
  border-color: #dedede;
  border-left: none;
  border-right: none;
}
#confirm_table th:before {
  background-color: #e8d9c7;
}
#confirm_table td {
  border-color: #dedede;
  border-left: none;
  border-right: none;
}
.dark-mode #confirm_table td,
.dark-mode #confirm_table th {
  border-color: #2b2b2b;
}
#confirm_table .ttl,
#confirm_table .ttl td {
  border: 0;
  background-color: inherit;
}
#confirm_table .ttl h3 {
  font-size: 1.3em;
  color: inherit;
  padding: 20px 0 0 0;
  border: none;
}
#confirm_table .ttl h3:before {
  content: none;
}
#confirm_table .bdc {
  background-color: inherit;
}
#inside-cart .no_cart {
  font-weight: normal;
  color: #666;
}
.dark-mode #inside-cart .no_cart {
  color: #d1d1d1;
}
#info-confirm tfoot .aright {
  padding: 12px;
}
#info-confirm tfoot .aright.totallabel {
  padding-bottom: 4px;
}
#info-confirm td:not(:first-child):not(:last-child) {
  height: auto;
  padding: 0 12px;
}
#info-confirm .aright.totalend {
  text-align: left !important;
  padding: 0 12px;
}
#info-confirm .aright.totalend:first-child {
  padding: 24px 0 0 24px;
}
.p-searchContent {
  position: relative;
  margin-top: 6em !important;
}
.p-searchContent::before {
  content: "検索結果";
  display: block;
  font-size: 24px;
  font-weight: bold;
  margin-bottom: 1rem;
  position: absolute;
  top: -60px;
  left: 8px;
}
.shipping_link {
  text-align: right;
  font-size: 14px;
  margin-bottom: 64px;
}
@media screen and (min-width: 600px) {
  .payment-credit input#purchase_button {
    margin-right: 0 !important;
  }
}

@media screen and (max-width: 599px) {
  #customer-info th,
  #customer-info td,
  #delivery-info th,
  #delivery-info td {
    border: none;
    padding-bottom: 0;
  }
  #delivery-info .send,
  #inside-cart .send {
    padding-top: 0;
    gap: 32px;
    margin-top: 0;
  }
  #customer-info form:not([name="customer_loginform"]) .send {
    padding-top: 0;
    margin-top: 0;
  }
  #customer-info .to_reganddeliveryinfo_button {
    margin-bottom: 32px !important;
  }
  #delivery-info .to_confirm_button {
    order: 1;
  }
  #delivery-info .back_to_customer_button,
  #customer-info .back_cart_button,
  #inside-cart .continue_shopping_button {
    order: 2;
  }
  #cart_table tfoot {
    display: flex;
    justify-content: flex-end;
    flex-direction: column;
    margin-top: 8px;
    gap: 4px;
  }
  #info-confirm #cart_table tfoot {
    align-items: flex-end;
  }
  .customize-support #cart_table tfoot {
    align-items: center;
  }
  #info-confirm #cart .aright {
    display: inline;
  }
  #purchase_form .send {
    align-items: center;
  }
  #purchase_form input#back_button {
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
  #cart .upbutton {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 8px;
  }
  #content {
    padding-top: 8vh;
  }
  .l-mainContent.l-article.all-products-main {
    padding-top: 2rem !important;
  }
  .continue_shopping_button,
  .back_to_customer_button {
    margin-right: 0 !important;
  }
  input#back_button {
    margin-right: auto !important;
  }
  .category-products .tab-nav {
    display: none;
  }
  .p-searchContent {
    margin-top: 6em !important;
  }
  .p-searchContent::before {
    font-size: 20px;
    top: -56px;
    left: 8px;
  }
  .payment-credit #back_button,
  input#back_button {
    margin-right: auto !important;
  }
}

/* フォームエラー表示用 */
.field-error-wrapper {
  position: relative;
}

.field-error {
  color: #ff6b6b;
  font-size: 0.875rem;
  line-height: 1.4;
  display: block;
  margin-top: 4px;
  padding-left: 2px;
  text-align: left;
}

/* テーブルレイアウトの場合の調整 */
.customer_form td .field-error {
  margin-top: 4px;
}

/* 横並びフィールド(姓・名など)の調整 */
.name_td .field-error {
  white-space: normal;
}

/* ダークモード */
body.dark-mode {
  --color_text: #f8f9fa;
  --color_main: transparent;
  --color_border: #424242;
  --color_bg: #1c1d1f;
  --color_link: #64b5f6;
}

/* ダークモード切替アイコン */
#dmtoggle {
  position: relative;
  cursor: pointer;
}

/* ライトモード時は太陽を表示 */
.dm-light-icon {
  display: inline-block;
}

.dm-dark-icon {
  display: none;
}

/* ダークモード時は月を表示 */
body.dark-mode #dmtoggle .dm-light-icon {
  display: none;
}

body.dark-mode #dmtoggle .dm-dark-icon {
  display: inline-block;
}

.dark-mode .icon-chevron-small-up:before,
.icon-chevron-up:before {
  color: #333;
}

.dark-mode .p-pnLinks__item.-prev:before,
.p-pnLinks__item.-next:before {
  color: #333;
}

.dark-mode .p-articleHead h1 {
  color: #fff;
}
.dark-mode .p-pnLinks__item a {
  background-color: #c5cdd9;
}
.dark-mode #sp_menu #sp_menu_bottom .u-bg-main {
  background-color: #4a5568 !important;
}

.dark-mode .quantity_warning,
.dark-mode .required {
  color: #ff7070 !important;
}

/* 決済システム非表示 */
/* .page-id-820 .customer_form .payment_1,
.page-id-820 .customer_form .payment_2 {
  display: none;
} */

/* メンテナンスモード表示調整 */
#body_wrap:has(#maintenance-page) {
  min-height: calc(100vh - 80px - 356px);
}
#content:has(#maintenance-page) {
  padding-top: 20vh;
  margin-bottom: 21vh;
}
@media screen and (max-width: 959px) {
  #content:has(#maintenance-page) {
    margin-bottom: 15vh;
  }
  #content:has(#maintenance-page) .post_content {
    margin-top: 40px;
    padding-bottom: 40px;
  }
  #content:has(#maintenance-page) #main_content {
    padding-bottom: 16px;
    margin-top: 60px;
  }
}
@media screen and (max-width: 599px) {
  #content:has(#maintenance-page) {
    padding-top: 21vh;
  }
}

/* スクロール時にヘッダーの文字を見やすくする */
/* ヴィネット：ヘッダー背景をなじませるグラデーションオーバーレイ */
#header {
  position: fixed !important;
}
#header::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(
    to bottom,
    rgba(255, 255, 255, 0.8) 0%,
    rgba(255, 255, 255, 0) 100%
  );
  pointer-events: none;
  z-index: 0;
}

.dark-mode #header::before {
  background: linear-gradient(
    to bottom,
    rgba(28, 29, 31, 0.8) 0%,
    /* #1c1d1f を rgba に変換 */ rgba(28, 29, 31, 0) 100%
  );
}

/* ダークモード時パスワードの目アイコンを白くする */
/* .dark-mode .fa-eye:before,
.dark-mode .fa-eye-slash:before {
  color: var(--color_text) !important;
} */

/* autofill検知用アニメーション */
@keyframes onAutoFillStart {
  from {
  }
  to {
  }
}
@keyframes onAutoFillCancel {
  from {
  }
  to {
  }
}

.loginpass:-webkit-autofill {
  animation-name: onAutoFillStart;
}
.loginpass:not(:-webkit-autofill) {
  animation-name: onAutoFillCancel;
}

/* デフォルト: dark-modeでは白 */
.dark-mode .fa-eye:before,
.dark-mode .fa-eye-slash:before {
  color: #fff;
}

/* autofill時は#333 */
.dark-mode input[type="password"].is-autofilled ~ i.fa-eye:before,
.dark-mode input[type="password"].is-autofilled ~ i.fa-eye-slash:before {
  color: #333;
}

.dark-mode textarea.notes {
    color: #ffffff !important;
}

/* トップへ戻るボタンのホバー */
#pagetop:hover i::before {
  color: var(--color_bg);
}

.dark-mode #pagetop {
  border: 1px solid var(--color_text);
  background-color: transparent;
}

.dark-mode #pagetop i::before {
  color: var(--color_text);
}

.dark-mode #pagetop:hover {
  background-color: var(--color_text) !important;
}

.dark-mode #pagetop:hover i::before {
  color: var(--color_bg);
}
.cat-item-21 {
  display: none;
}
