﻿@charset "UTF-8";

/* -------------------------
  HEADER
-------------------------  */
.block-header-main {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  background: #FFF;
  z-index: 11;
  display: flex;
  align-items: center;
  height: 60px;
  padding: 0 5px 0 20px;
}
.block-header-menu-btn {
  position: relative;
  text-indent: -9999px;
  white-space: nowrap;
  overflow: hidden;
  width: 40px;
  height: 40px;
}
.block-header-menu-btn:before,
.block-header-menu-btn:after {
  content: '';
  position: absolute;
  top: 16px;
  left: 10px;
  width: 20px;
  height: 1px;
  background: #000;
  transition: .3s ease;
}
.block-header-menu-btn:after {
  top: 26px;
}
.block-header-menu-btn.open:before {
  top: 20px;
  transform: rotate(45deg);
}
.block-header-menu-btn.open:after {
  top: 20px;
  transform: rotate(-45deg);
}
.block-header-main--logo {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 183px;
  margin: 0;
}
.block-header-main--search {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 46px;
  height: 46px;
  margin-left: auto;
}
.block-header-main--search img {
  width: 18px;
}
.block-header-main--cart {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
}
.block-header-main--cart img {
  width: 21px;
}
.block-header-main--cart-qty {
  position: absolute;
  top: -3px;
  right: -2px;
  width: 20px;
  height: 20px;
  background: #000;
  border-radius: 50%;
  text-align: center;
  color: #FFF;
  font-size: 12px;
  padding: 1px 0 0;
}
.block-menu {
  position: fixed;
  top: 60px;
  left: -100%;
  padding: 0 15px 0 0;
  z-index: 11;
  transition: .3s ease;
}
.block-menu.show {
  left: 0;
  animation: menuBgFadeIn .5s ease forwards .2s;
}
@keyframes menuBgFadeIn {
  from { background: rgba(0, 0, 0, 0); }
  to { background: rgba(0, 0, 0, .76); }
}
.block-menu-contents {
  background: #FFF;
  height: calc(100svh - 60px);
  overflow-y: auto;
  padding: 0 0 60px;
}
.block-menu-customer-link {
  padding: 5px 32px 30px;
  background: #F7F7F7;
}
.block-menu-customer-link > li {
  border-bottom: 1px solid #BFBFBF;
}
.block-menu-customer-link li a,
.block-menu-customer-link li.home > span,
.block-menu-customer-link-head {
  display: block;
  padding: 23px 10px;
}
.block-menu-customer-link li a span {
  padding: 5px 0 5px 40px;
}
.block-menu-customer-link li.home span {
  padding: 23px 0 23px 52px;
  background: url(../../img/usr/common/logo05.png) no-repeat left 10px center / 25px;
}
.block-menu-customer-link li.history a span {
  background: url(../../img/usr/common/icon_history.png) no-repeat left center / 25px;
}
.block-menu-customer-link li.bookmark a span {
  background: url(../../img/usr/common/icon_bookmark.png) no-repeat left 4px center / 21px;
}
.block-menu-customer-link li.mypage a span {
  background: url(../../img/usr/common/icon_customer.png) no-repeat left 3px center / 19px;
}
.block-menu-customer-link li.guide a span {
  background: url(../../img/usr/common/icon_guide.png) no-repeat left center / 25px;
}
.block-menu-customer-link .block-menu-customer-link-head {
  position: relative;
  padding-left: 50px;
  background: url(../../img/usr/common/icon_menu_search.png) no-repeat left 16px top 21px / 25px;
}
.block-menu-customer-link .block-menu-customer-link-head:before,
.block-menu-customer-link .block-menu-customer-link-head:after {
  content: '';
  position: absolute;
  top: 34px;
  right: 0;
  width: 12px;
  height: 1px;
  background: #000;
}
.block-menu-customer-link .block-menu-customer-link-head:not(.open):after {
  transform: rotate(90deg);
}
.block-menu-customer-link-body {
  display: none;
  padding: 0 0 15px 50px;
  margin-top: -13px;
}
.block-menu-customer-link-body li a {
  position: relative;
  font-size: 14px;
  padding: 10px 20px 10px 0;
}
.block-menu-customer-link-body li a:after {
  content: '';
  position: absolute;
  top: 19px;
  right: 2px;
  width: 6px;
  height: 6px;
  border-right: 1px solid #707070;
  border-bottom: 1px solid #707070;
  transform: rotate(-45deg);
}
.block-menu-bnr {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  padding: 0 32px 40px;
}
.block-menu-bnr li {
  width: calc((100% - 10px) / 2);
}
.block-menu-calendar {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  padding: 0 32px;
}
.block-menu-calendar--title {
  font-size: 18px;
  font-weight: bold;
}
.block-menu-calendar--note {
  position: relative;
  display: flex;
  align-items: center;
  gap: 5px;
  font-size: 12px;
  margin: 0 0 0 80px;
}
.block-menu-calendar--note:before {
  content: '';
  width: 15px;
  height: 15px;
  border-radius: 50%;
  background: #E9E9E9;
}
.block-menu-calendar--list {
  margin: 20px 40px 0;
}
.block-menu-calendar--list li:not(:last-child) {
  margin: 0 0 25px;
}
.block-header-search {
  padding: 15px;
}
.block-header-search--form {
  position: relative;
}
input.block-header-search--keyword {
  width: 100%;
  border: 1px solid #BFBFBF;
  border-radius: 0;
  padding: 13px 30px 12px 15px;
  font-size: 15px;
}
.block-header-search--btn {
  position: absolute;
  top: 14px;
  right: 10px;
  background: none;
  border: 0;
  border-radius: 0;
  width: 15px;
  padding: 0;
}
body.page-method .block-header-menu-btn,
body.page-method .block-header-main--search,
body.page-method .block-header-main--cart {
  display: none;
}

/* -------------------------
  FOOTER
-------------------------  */
#footer {
  background: #404040;
  margin: 80px 0 0;
}
.block-footer-logo {
  text-align: center;
  padding: 30px 0 25px;
}
.block-footer-logo img {
  width: 177px;
}
.block-footer-link--items {
  margin: 0 15px 0 0;
  border-top: 1px solid #808080;
}
.block-footer-link--item {
  border-bottom: 1px solid #808080;
}
.block-footer-link--item a {
  display: block;
  color: #FFF;
  padding: 18px 25px;
}
.block-footer-copy {
  color: #FFF;
  font-size: 12px;
  letter-spacing: 1px;
  text-align: center;
  padding: 25px 0;
}

/* -------------------------
  SLIDER
-------------------------  */
.swiper .swiper-button-disabled,
.swiper:not(.swiper-initialized) .swiper-button-prev,
.swiper:not(.swiper-initialized) .swiper-button-next {
  display: none;
}
.swiper .swiper-button-prev,
.swiper .swiper-button-next {
  width: 30px;
  height: 30px;
  background: #535353;
}
.swiper .swiper-button-prev:after,
.swiper .swiper-button-next:after {
  content: '';
  position: absolute;
  top: 10px;
  left: 12px;
  width: 8px;
  height: 8px;
  border-right: 2px solid #FFF;
  border-bottom: 2px solid #FFF;
  transform: rotate(135deg);
}
.swiper .swiper-button-next:after {
  left: 9px;
  transform: rotate(-45deg);
}
.swiper .swiper-button-disabled {
  display: none !important;
}

/* -------------------------
  LOGIN
-------------------------  */
body:has(.block-login-head) #header,
body:has(.block-login-head) .block-header-search,
body:has(.block-login-head) .login_ > .loginform_:not(:has(form)),
body:has(.block-login-head) .loginform_ .common_headline2_,
body:has(.block-login-head) .loginform_ .form_text_ {
  display: none;
}
body:has(.block-login-head) #footer {
  margin: 0;
}
body:has(.block-login-head) #container {
  padding-top: 50px;
}
body:has(.block-login-head) .wrapper_ {
  position: relative;
  padding: 0 0 35px;
}
body:has(.block-login-head) .wrapper_:before {
  content: '';
  position: absolute;
  top: -50px;
  left: -35vw;
  border-style: solid;
  border-width: 80vw 35vw 0 35vw;
  border-color: #F9F9F9 transparent transparent transparent;
  z-index: -1;
}
body:has(.block-login-head) .wrapper_:after {
  content: '';
  position: absolute;
  right: -35vw;
  bottom: 0;
  border-style: solid;
  border-width: 0 35vw 80vw 35vw;
  border-color: transparent transparent #F9F9F9 transparent;
  z-index: -1;
}
.block-login-head {
  padding: 0 15px;
  margin: 0 0 20px;
  text-align: center;
}
.block-login-head--logo {
  margin: 0 0 20px;
}
.block-login-head--logo img {
  width: 327px;
}
.block-login-head--message {
  line-height: 2;
}
body:has(.block-login-head) .loginform_btn_ {
  padding: 0 15px;
}
body:has(.block-login-head) .login_ .loginform_btn_.inputimage_ input.btn {
  width: 67%;
  border-radius: 0;
  background: #000;
  font-size: 16px;
  margin: 0 auto;
}

/* -------------------------
  TOP
-------------------------  */
.block-top-mv {
  display: flex;
  align-items: center;
  justify-content: center;
  aspect-ratio: 1;
  background: url(../../img/usr/top/mv_sp.jpg) no-repeat center / 100%;
}
.block-top-mv--message {
  color: #FFF;
  font-size: 16px;
  line-height: 2.5;
  text-align: center;
}
.block-top-mv--message span {
  font-size: 26px;
}
.block-top-search {
  padding: 35px 15px;
}
.block-top-search h2 {
  font-size: 20px;
  margin: 0 0 26px;
}
.block-top-search--items li:not(:last-child) {
  margin: 0 0 15px;
}
.block-top-search--items li a {
  display: block;
  border: 1px solid #000;
  text-align: center;
  padding: 20px 0;
}
.block-top-search--items li span {
  font-size: 16px;
  font-weight: bold;
  padding: 4px 0 6px 32px;
}
.block-top-search--items li.history span {
  padding-left: 36px;
  background: url(../../img/usr/common/icon_history.png) no-repeat left center / 25px;
}
.block-top-search--items li.bookmark span {
  background: url(../../img/usr/common/icon_bookmark.png) no-repeat left center / 21px;
}
.block-top-search--items li.item-code span {
  background: url(../../img/usr/common/icon_list.png) no-repeat left center / 20px;
}
body.page-top .event_ {
  padding: 70px 0 0;
}
.block-top-bnr {
  padding: 0 15px 70px;
}
.block-top-bnr--item:not(:last-child) {
  margin: 0 0 18px;
}

/* -------------------------
  商品詳細
-------------------------  */
body.page-goods .goods_info_ {
  padding: 60px 0;
}
body.page-goods .goods_info_tab_ {
  display: flex;
  margin: 0 0 20px;
}
body.page-goods .goods_info_tab_item_ {
  flex: 1;
  color: #BFBFBF;
  font-size: 18px;
  font-weight: bold;
  border-bottom: 1px solid #BFBFBF;
  padding: 0 4px 5px;
}
body.page-goods .goods_info_tab_item_.active_ {
  color: #000;
  border-color: #000;
  pointer-events: none;
}
body.page-goods .goods_spec_list_ {
  border: 1px solid #BFBFBF;
  margin: 0 0 10px;
}
body.page-goods .goods_spec_list_ dl:not(:last-child) {
  border-bottom: 1px solid #BFBFBF;
}
body.page-goods .goods_spec_list_ dt {
  padding: 8px 12px;
  font-size: 15px;
  font-weight: bold;
  background: #F7F7F7;
  border-bottom: 1px solid #BFBFBF;
}
body.page-goods .goods_spec_list_ dd {
  padding: 11px 12px;
}
body.page-goods .goods_detail_,
body.page-goods .goods_support_ {
  display: none;
}
body.page-goods .goods_info_item_:not(:last-child),
body.page-goods .goods_support_item_:not(:last-child) {
  margin: 0 0 30px;
}
body.page-goods .goods_info_item_ .inner_ {
  display: flex;
  flex-wrap: wrap;
  gap: 0 20px;
}
body.page-goods .goods_info_item_ .title_,
body.page-goods .goods_support_item_ .title_ {
  font-size: 16px;
  font-weight: bold;
  background: #F2F2F2;
  padding: 8px 10px;
  margin: 0 0 12px;
  width: 100%;
}
body.page-goods .goods_info_item_ .body_ + .title_ {
  margin-top: 30px;
}
body.page-goods .goods_info_item_ .note_ {
  font-size: 13px;
  margin: 5px 0 0;
}
body.page-goods .goods_info_item_ .img_ {
  text-align: center;
}
body.page-goods .goods_info_item_ .inner_ .text_ {
  flex: 1;
}
body.page-goods .goods_info_item_ .movie_ {
  line-height: 0;
  border-radius: 6px;
  overflow: hidden;
}
body.page-goods .goods_info_item_ .movie_ iframe {
  width: 100%;
  height: auto;
  aspect-ratio: 16/9;
}
body.page-goods .goods_support_item_ .caution_ {
  margin: 0 0 18px;
}
body.page-goods .goods_support_item_ .caution_ .head_ {
  position: relative;
  font-size: 15px;
  font-weight: bold;
}
body.page-goods .goods_support_item_ .caution_ .head_:before,
body.page-goods .goods_support_item_ .caution_ .head_:after {
  content: '';
  position: absolute;
  right: 0;
  bottom: 12px;
  width: 12px;
  height: 1px;
  background: #000;
}
body.page-goods .goods_support_item_ .caution_ .head_:not(.open_):after {
  transform: rotate(90deg);
}
body.page-goods .goods_support_item_ .caution_ .text_ {
  display: none;
  font-size: 14px;
  margin: 8px 0 0;
}
body.page-goods .goods_support_item_ .caution_ .head_ span {
  display: block;
  color: #FFF;
  font-size: 12px;
  background: #000;
  padding: 3px 0 2px;
  margin: 0 0 4px;
  width: 50px;
  text-align: center;
}
body.page-goods .goods_support_item_ ul {
  padding: 0 35px;
}
body.page-goods .goods_support_item_ li:not(:last-child) {
  margin: 0 0 10px;
}
body.page-goods .goods_support_item_ li a {
  display: block;
  border: 1px solid #000;
  font-size: 14px;
  text-align: center;
  padding: 11px 5px;
}

/* -------------------------
    カテゴリ
-------------------------  */
.category_head_ {
  margin: 0 0 30px;
}
.category_img_ {
  margin: 0 -15px 25px;
  max-width: unset;
}
.category_img_ img {
  width: 100%;
}
.category_head_ .category_title_en_ {
  display: none;
}

/* -------------------------
  ジャンル
-------------------------  */
.genre_head_ {
  margin: 0 0 30px;
}
.genre_img_ {
  margin: 0 -15px 25px;
  max-width: unset;
}
.genre_img_ img {
  width: 100%;
}
body.page-genre .GenreStyle_ {
  margin: 50px 0 0;
}

/* -------------------------
  トピック詳細
-------------------------  */
body.page-topic h1 {
  font-size: 22px;
  font-weight: bold;
  margin: 0 0 25px;
}
body.page-topic .topic_title_ .topic_icon_ {
  line-height: 0;
  margin: 0 0 5px;
}
body.page-topic .topic_title_ .topic_icon_ img {
  height: 14px;
  margin: 0;
}
body.page-topic .article_ a {
  text-decoration: underline;
}

/* -------------------------
  ログアウト
-------------------------  */
body.page-logout .logout_text_ {
  margin: 0;
}
body.page-logout .logout_text_ a {
  text-decoration: underline;
}

/* -------------------------
  パスワード再設定
-------------------------  */
body.page-forgotpass .message_ {
  margin: 0 0 15px;
}
body.page-forgotpass div.submit_ .btn-default {
  background: #FFF;
}

/* -------------------------
  メールニュース
-------------------------  */
body.page-mag div.submit_ .btn-default,
body.page-mag div.submit_ .btn-secondary {
  background: #FFF;
}
body.page-mag .formdetail_ input[type="text"] {
  width: 100%;
}

/* -------------------------
  アンケート
-------------------------  */
body.page-form .customer_status_,
body:has(.questionnaire_complete_) .customer_status_ {
  display: none;
}
body.page-form .questionnaire_title_ {
  font-size: 22px;
  font-weight: bold;
  margin: 0 0 15px;
}
body.page-form .questionnaire_input_ li {
  overflow: hidden;
}
body.page-form .questionnaire_input_ li:not(.title_) {
  padding: 10px 0 20px;
}
body.page-form .questionnaire_input_ li:has(+li:not(.title_)):not(.title_) {
  padding-bottom: 0;
}
body.page-form li input[type="checkbox"],
body.page-form li input[type="radio"] {
  float: left;
  clear: both;
}
body.page-form li input[type="checkbox"] + label,
body.page-form li input[type="radio"] + label {
  float: left;
}
body.page-form li input[type="text"],
body.page-form li textarea {
  width: 100%;
  max-width: 100%;
}
body.page-form li .small_ {
  display: block;
  margin: 5px 0 0;
}
body.page-form li h3 {
  margin: 0 0 5px;
}
body.page-form li h3:not(:first-child) {
  margin-top: 10px;
}
body.page-form div.submit_ .btn-default {
  background: #FFF;
}
body.page-form .questionnaire_input_ br:has(+h3),
body.page-form .questionnaire_input_ br:has(+.error_) {
  display: none;
}
body.page-form .questionnaire_input_ .error_ {
  display: block;
}

/* -------------------------
  クーポン一覧
-------------------------  */
body.page-coupon .customer_status_ + .message_ {
  display: none;
}

/* -------------------------
  購入履歴一覧
-------------------------  */
body.page-history .customer_status_ + .message_ {
  display: none;
}
body.page-history .customer_ > form {
  margin: 0 0 30px;
}
body.page-history dl.bizsearch_ dd,
body.page-bizhistory dl.bizsearch_ dd {
  display: flex;
  align-items: center;
}
body.page-history dl.bizsearch_ dd:has(input[name="s_order_dt"]),
body.page-history dl.bizsearch_ dd:has(input[name="s_order_output_dt"]),
body.page-estimatelist dl.bizsearch_ dd:has(input[name="s_estimate_dt"]),
body.page-estimatelist dl.bizsearch_ dd:has(input[name="s_estimate_output_dt"]),
body.page-estimatelist dl.bizsearch_ dd:has(input[name="s_estimate_e_dt"]) {
  justify-content: space-between;
}
body.page-history dl.bizsearch_ input[name="s_order_dt"],
body.page-history dl.bizsearch_ input[name="f_order_dt"],
body.page-history dl.bizsearch_ input[name="s_order_output_dt"],
body.page-history dl.bizsearch_ input[name="f_order_output_dt"],
body.page-bizhistory dl.bizsearch_ input[name="s_order_dt"],
body.page-bizhistory dl.bizsearch_ input[name="f_order_dt"],
body.page-bizhistory dl.bizsearch_ input[name="s_order_output_dt"],
body.page-bizhistory dl.bizsearch_ input[name="f_order_output_dt"],
body.page-estimatelist dl.bizsearch_ input[name="s_estimate_dt"],
body.page-estimatelist dl.bizsearch_ input[name="f_estimate_dt"],
body.page-estimatelist dl.bizsearch_ input[name="s_estimate_output_dt"],
body.page-estimatelist dl.bizsearch_ input[name="f_estimate_output_dt"],
body.page-estimatelist dl.bizsearch_ input[name="s_estimate_e_dt"],
body.page-estimatelist dl.bizsearch_ input[name="f_estimate_e_dt"],
body.page-bizestimatelist dl.bizsearch_ input[name="s_estimate_dt"],
body.page-bizestimatelist dl.bizsearch_ input[name="f_estimate_dt"],
body.page-bizestimatelist dl.bizsearch_ input[name="s_estimate_output_dt"],
body.page-bizestimatelist dl.bizsearch_ input[name="f_estimate_output_dt"],
body.page-bizestimatelist dl.bizsearch_ input[name="s_estimate_e_dt"],
body.page-bizestimatelist dl.bizsearch_ input[name="f_estimate_e_dt"] {
  width: calc(50% - 10px);
}
body.page-history dl.bizsearch_ input[type="radio"],
body.page-bizhistory dl.bizsearch_ input[type="radio"] {
  margin: 0 5px 0 10px;
}
body.page-history dl.bizsearch_ input[type="radio"]:first-child,
body.page-bizhistory dl.bizsearch_ input[type="radio"]:first-child {
  margin-left: 0;
}
body.page-history div.submit_ .btn-default,
body.page-estimatelist div.submit_ .btn-default {
  background: #FFF;
}
body.page-history .order_id_ a,
body.page-estimatelist .order_id_ a {
  text-decoration: underline;
}
body.page-history .formlist_.bizsearch_ input[type="text"],
body.page-bizestimatelist .formlist_.bizsearch_ input[type="text"],
body.page-bizestimatelist .formlist_.bizsearch_ select,
body.page-estimatelist .formlist_.bizsearch_ input[type="text"],
body.page-estimatelist .formlist_.bizsearch_ select {
  width: 100%;
}

/* -------------------------
  会員情報変更
-------------------------  */
body.page-customer .formdetail_.customer_ li:not(:has(+ li .small_)):not(:last-child) {
  border-bottom: 1px solid #BFBFBF;
}
body.page-customer .formdetail_.customer_ .title_ {
  margin: 0;
}
body.page-customer .input_item_ {
  width: 100%;
}
body.page-customer .input_item_ input[name="name"],
body.page-customer .input_item_ input[name="name2"],
body.page-customer .input_item_ input[name="kana"],
body.page-customer .input_item_ input[name="kana2"] {
  width: calc(100% - 55px);
}
body.page-customer .formdetail_.customer_ input[name="tel"],
body.page-customer .formdetail_.customer_ input[name="mmail"] {
  width: 100%;
}
body.page-customer .message_ a {
  text-decoration: underline;
}
body.page-customer:has(.formdetail_.customerconfirm_) li:not(:last-child) {
  border-bottom: 1px solid #BFBFBF;
}
body.page-customer .formdetail_.customerconfirm_ + .formdetail_.customerconfirm_ {
  border-top: 0;
}

/* -------------------------
  会員配送先
-------------------------  */
body.page-custdestlist .top_box_ .move_button_ {
  display: block;
  margin: 0 0 10px auto;
  background: #000;
  color: #FFF;
}
body.page-custdestlist .top_box_ .search_box_ {
  display: flex;
  align-items: center;
  gap: 5px;
}
body.page-custdestlist .top_box_ .search_box_ .keyword_ {
  flex: 1;
}
body.page-custdestlist .top_box_ .search_box_ .search-btn {
  padding: 8px 10px;
}

/* -------------------------
  配送先一覧
-------------------------  */
body.page-order_address .address_box_2_ .common_headline2_ {
  display: none;
}
body.page-order_address .top_box_ .move_button_ {
  display: block;
  margin: 0 0 10px auto;
  background: #000;
  color: #FFF;
}
body.page-order_address .address_box_2_ .search_box_ {
  display: flex;
  gap: 10px;
  margin: 0 0 20px;
}
body.page-order_address .address_box_2_ .search_box_ .keyword_ {
  flex: 1;
}
body.page-order_address .address_box_2_ .address_item_:last-child {
  border-bottom: 1px solid #BFBFBF;
}
body.page-order_address .address_box_2_ .address_change_ {
  margin: 10px 0 0;
}
body.page-order_address .address_box_2_ .address_change_ input {
  border: 0;
  padding: 0;
}

/* -------------------------
  ID変更
-------------------------  */
body.page-idchange .formdetail_.idchange_ li:has(+.title_) {
  border-bottom: 1px solid #BFBFBF;
}
body.page-idchange .idchange_.result_ a {
  text-decoration: underline;
}

/* -------------------------
  パスワード変更
-------------------------  */
body.page-passchange .formdetail_.passchange_ li:has(+.title_) {
  border-bottom: 1px solid #BFBFBF;
}
body.page-passchange .passchange_.result_ a {
  text-decoration: underline;
}

/* -------------------------
  カートリスト
-------------------------  */
body.page-precart .formlist_.precart_ th {
  width: 70px;
}
body.page-precart .precart_detail_ .precart_item_ {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin: 10px 0;
}
body.page-precart .precart_detail_ .goods_content_ {
  display: flex;
  align-items: center;
  gap: 10px;
}
body.page-precart .precart_detail_ .goods_thumbnail_ {
  width: 50px;
}
body.page-precart .precart_detail_ .goods_title_wrap_ {
  flex: 1;
}
body.page-precart .precart_detail_ .memo_ {
  margin: 10px 0 0;
}
body.page-precart .precart_detail_ .memo_ > a {
  display: block;
  width: 120px;
  text-align: center;
  border: 1px solid #000;
  padding: 4px 8px;
  margin: 0 0 8px auto;
}
body.page-precart .precart_detail_ .memo_ .memo_label_ + div {
  display: flex;
  gap: 10px;
  margin: 5px 0;
}
body.page-precart .precart_detail_ .memo_ .precart_button_ {
  background: #FFF;
  border-radius: 0;
  border: 1px solid #000;
  color: #000;
  font-size: 14px;
  padding: 4px 8px;
  box-shadow: none;
  margin: 0 !important;
}
body.page-precart .precart_detail_ .updt_ {
  font-size: 12px;
  text-align: right;
}
body.page-precart .precart_detail_ .precart_btn_wrap_ {
  display: flex;
  gap: 10px;
  margin: 10px 0 0;
}
body.page-precart .precart_detail_ .precart_button_:not(.delete_) {
  color: #FFF;
  background: #000;
  text-align: center;
  padding: 5px;
  flex: 1;
}
body.page-precart .precart_detail_ .precart_button_.delete_ {
  width: 100px;
  border: 1px solid #000;
  text-align: center;
  padding: 5px;
}
body.page-precart .memo_label_ {
  background: #F7F7F7;
  padding: 5px 10px;
}
body.page-precart .memo_label_:empty {
  display: none !important;
}

/* -------------------------
  カートリスト詳細
-------------------------  */
body.page-precartdetail .precart_goodsname_inner_ {
  display: flex;
  align-items: center;
}
body.page-precartdetail .goods_title_wrap_ {
  flex: 1;
}
body.page-precartdetail .goods_title_wrap_ a {
  text-decoration: underline;
}
body.page-precartdetail th.memo_ a {
  text-decoration: underline;
}
body.page-precartdetail div[id^="memo_label_"] {
  background: #F7F7F7;
  padding: 5px 10px;
  margin: 0 0 10px;
}
body.page-precartdetail div[id^="memo_label_"]:empty {
  display: none !important;
}
body.page-precartdetail .updt_ {
  font-size: 12px;
  text-align: right;
}
body.page-precartdetail .memo_ textarea {
  margin: 0 0 5px;
}
body.page-precartdetail .precart_button_ {
  background: #FFF;
  border-radius: 0;
  border: 1px solid #000;
  padding: 5px 10px;
  font-size: 13px;
  line-height: inherit;
  margin: 5px 0 0;
}
body.page-precartdetail .precart_button_.cancel-btn {
  margin: 5px 0 0;
}
body.page-precartdetail .btn-line {
  font-size: 15px;
  height: auto;
}

/* -------------------------
  お気に入りグループ
-------------------------  */
body.page-bookmarkgroup .btn_bookmarkgroup_create_ {
  display: inline-block;
  color: #FFF;
  background: #000;
  padding: 8px 15px;
  margin: 0 0 15px;
}
body.page-bookmarkgroup div:has(.btn_bookmarkgroup_create_) {
  margin: 0;
}
body.page-bookmarkgroup .comment_ div[id^="comment_label_"] {
  font-size: 15px;
  font-weight: bold;
  margin: 0 0 5px;
}
body.page-bookmarkgroup .comment_ .btn-delete {
  padding: 7px 10px 8px;
}
body.page-bookmarkgroup .comment_ > a {
  text-decoration: underline;
}

/* -------------------------
  メールアドレス変更
-------------------------  */
body.page-mailchangeonetimepasswordcertify .mailchange_.result_ a {
  text-decoration: underline;
}

/* -------------------------
  ご利用ガイド
-------------------------  */
.block-guide-section:not(:last-child) {
  margin: 0 0 30px;
}
.block-guide h1.common_headline1_ {
  font-size: 22px;
  margin-bottom: 15px;
}
.block-guide h2.common_headline3_ {
  font-size: 16px;
  background: #F7F7F7;
  padding: 10px;
  border: 0;
  margin: 0 0 10px;
}
.block-guide h3.common_headline3_ {
  font-size: 16px;
  margin: 0 0 2px;
}
.block-guide .block-guide-intro--nav {
  list-style: none;
  margin: 20px 0 30px;
}
.block-guide .block-guide-intro--nav li:not(:last-child) {
  margin: 0 0 10px;
}
.block-guide .guide-button {
  display: block;
  padding: 8px;
  text-align: center;
  text-decoration: none;
  border: 1px solid #000;
}
.block-guide .block-guide-section--box {
  margin: 0 0 20px;
}

/* -------------------------
  お見積内容の確認
-------------------------  */
body.page-e_edi_confirm #frmSales .submit_ .btn-default {
  color: #FFF;
  background: #000;
}

/* -------------------------
  よく使う支払方法設定
-------------------------  */
body.page-defaultmethod .message_ {
  font-weight: normal;
}
body.page-defaultmethod .formlist_.defaultmethodlist_ th {
  width: 140px;
}
body.page-defaultmethod td.default_method_ {
  overflow: hidden;
}
body.page-defaultmethod td.default_method_ input[name="default_method"] {
  float: left;
  clear: both;
  margin: 5px 5px 5px 0;
}
body.page-defaultmethod td.default_method_ input[name="default_method"] + label {
  float: left;
  padding: 3px 0;
}

/* -------------------------
  得意先配送先
-------------------------  */
body.page-bizdest .search_box_ {
  display: flex;
  gap: 5px;
}

/* -------------------------
  よく使う配送先設定
-------------------------  */
body.page-defaultdest .message_ {
  font-weight: normal;
}
body.page-defaultdest .formlist_.defaultdestlist_ th {
  width: 150px;
}
body.page-defaultdest label:has(input[name="dest_id"]:checked) {
  font-weight: bold;
}

/* -------------------------
  お問い合わせ
-------------------------  */
body.page-contact .formdetail_.contact_ select,
body.page-contact .formdetail_.contact_ input[type="text"] {
  width: 100%;
  max-width: 100%;
}
body.page-contact .formdetail_.contact_ .input_contents_:has(input[name="name"]) {
  display: block;
}
body.page-contact .formdetail_.contact_ input[name="name"],
body.page-contact .formdetail_.contact_ input[name="name2"] {
  margin-left: 10px;
}
body.page-contact .formdetail_.contact_ li.title_:not(:first-child) {
  border-top: 1px solid #BFBFBF;
}

/* -------------------------
  お問い合わせ履歴詳細
-------------------------  */
body.page-contactdetail #inquiry_history_detail_form_ {
  margin: 20px 0 0;
}
body.page-contactdetail #inquiry_history_detail_form_ textarea {
  width: 100%;
}

/* -------------------------
  お問い合わせ完了
-------------------------  */
body.page-contactthanks .message_.contact_thanks_ {
  font-weight: normal;
}

/* -------------------------
  退会
-------------------------  */
body.page-withdrawal .message_ {
  font-weight: normal;
}
body.page-withdrawal .formdetail_.withdrawal_ input {
  width: 100%;
}

/* -------------------------
  見積履歴詳細
-------------------------  */
body.page-estimatedetail .submit_ input {
  margin-top: 15px;
}

/* -------------------------
  得意先会員
-------------------------  */
body.page-bizuserlist .move_button_ {
  width: 280px;
}

/* -------------------------
  得意先会員登録
-------------------------  */
body.page-bizuserentry .formdetail_.customer_ li.title_ {
  margin: 0;
  border-top: 1px solid #BFBFBF;
}
body.page-bizuserentry .formdetail_.customer_ li.title_:first-child {
  border-top: 0;
}
body.page-bizuserentry .formdetail_.customer_:has(input[name="mmail"]),
body.page-bizuserentry .formdetail_.customerconfirm_:not(:has(+.submit_)) {
  border-bottom: 0;
}

/* -------------------------
  得意先会員編集
-------------------------  */
body.page-bizuseredit .formdetail_.customer_:has(input[name="withdrawal.x"]) {
  border-bottom: 0;
}
body.page-bizuseredit .formdetail_.customer_ li.title_ {
  margin: 0;
  border-top: 1px solid #BFBFBF;
}
body.page-bizuseredit .formdetail_.customer_ li.title_:first-child {
  border-top: 0;
}
body.page-bizuseredit .formdetail_.customerconfirm_:not(:has(+.submit_)) {
  border-bottom: 0;
}
body.page-bizuseredit .formdetail_.customerconfirm_ li.title_:not(:first-child) {
  border-top: 1px solid #BFBFBF;
}

/* -------------------------
  得意先会員一括登録
-------------------------  */
body.page-registbizuserlist .formdetail_.customer_ li.title_ {
  margin: 0;
}
body.page-registbizuserlist .formdetail_.customer_ li.title_:not(:first-child) {
  border-top: 1px solid #BFBFBF;
}

/* -------------------------
  パスワード再設定
-------------------------  */
body.page-resetpass .navigation_ {
  font-size: 15px;
  margin: 0 0 10px;
}

/* -------------------------
  カテゴリ一覧
-------------------------  */
body.page-category .sub_category_ + .event_ {
  margin-top: 40px;
}
body.page-category .sub_category_ + .event_ .event_title_ {
  padding: 0;
}
body.page-category .btn-event-link {
  display: block;
  width: 240px;
  margin: 20px auto 0;
  padding: 12px 4px;
  border: 1px solid #000;
  font-size: 14px;
  text-align: center;
}

/* -------------------------
  カート
-------------------------  */
body.page-order_cart .order_cart_sublist_single_ input[type="submit"] {
  width: calc((100% - 8px) / 2);
}

/* -------------------------
 swiper最新化対応デザイン調整
-------------------------  */
.swiper-button-next, .swiper-button-prev {
    svg {
        display: none;
    }
}