@charset "utf-8";
/*
ブレイクポイントは標準のLightningテーマおよびBootstrapの理念に基づき
$sm-min: 576px;
$md-min: 768px;
$lg-min: 992px;
$xl-min: 1200px;
となっているのでそれに準じてください。
*/
/* .ucart li {
    font-size: 12px;
}
 */
/* ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
 *  General　全体的な設定
 * ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */
/* :root設定、bodyへの上書き、カラー変数設定など */ 
:root {
  --wp--preset--spacing--50: 1.2rem !important;
  --wp--preset--spacing--60: 1.5rem !important;
  --wp--preset--spacing--70: 2rem !important;
  --wp--preset--spacing--80: 3rem !important;
}
/* ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
 *  Common 汎用パーツ系
 * ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */
/* 繰り返しボタン・見出し、余白設計など 汎用パーツへの上書き */
h2 {
  font-size: 1.8rem;
}
h3 {
  font-size: 1.6rem;
}
.numbered-grid .row .vk_gridColumn_item .wp-block-heading::before {
  top: -40px;
}
/*余白調整*/
.sp-gap-none {
  gap: 0 !important;
}
.gap-3em {
  gap: 1em;
}
.gap-4em {
  gap: 1em;
}
/*検索窓*/
.wp-block-search .wp-block-search__button {
  width: 30%;
  font-size: 1rem;
}
/*ボタン > 幅広のボタンを全幅にする*/
.vk_button.vk_button-align-wide, .editor-styles-wrapper .vk_button.vk_button-align-wide {
  min-width: 100% !important;
}
/*記事の表示順*/
.order1 {
  order: 1;
}
.order2 {
  order: 2;
}
/*グリッドカラムの余白調整*/
.vk_gridColumn .row {
  margin: 0 -10px !important;
}
.vk_gridColumn .col-6 {
  width: calc(50% - 20px) !important;
}
.vk_gridColumn [class*="col-"] {
  padding: 0 10px !important;
}
/*リスト > スラッシュ横並び >項目を左寄せ*/
.is-style-af-list-horizon {
  justify-content: flex-start !important;
}
/*スマホではセンター揃え*/
.sp-center{
  justify-content: center;
  text-align: center;
  margin-left: auto;
  margin-right: auto;
}
/* ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
 *  Header, Hamburger ヘッダーまわり・ハンバーガーナビ
 * ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */
/*ヘッダー調整*/
#site-header-container {
  padding: .5em;
}
/* ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
 *  Pageheader, Breadcrumb 下層ページヘッダー・パンくずリスト
 * ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */
/* 下層ページのページヘッダー、パンクズ設定 */
.page-header {
  min-height: 16rem !important;
}
.page-header .page-header-inner {
  padding: 1em 1.5em 1em 1.5em;
}
.page-header .page-header-inner .page-header-title {
  font-size: 1.8rem;
}
.breadcrumb .container {
  padding: 0 2.2em;
}
ol.breadcrumb-list {
  white-space: normal !important;
  top: -38px;
}
/*ハンバーガー*/
.vk-mobile-nav-menu-btn {
  background: url(../../../wp-content/themes/lightning/_g3/inc/vk-mobile-nav/package/images/vk-menu-btn-white.svg) center 50% no-repeat rgba(255, 255, 255, 1);
}
.vk-mobile-nav-menu-btn.menu-open {
  background: url(../../../wp-content/themes/lightning/_g3/inc/vk-mobile-nav/package/images/vk-menu-close-white.svg) center 50% no-repeat rgba(255, 255, 255, 1);
}
.vk-menu-acc .acc-btn {
  border: medium none !important;
  opacity: .5;
}
.vk-mobile-nav-menu-outer .vk-menu-acc .acc-btn {
  border: none;
  background-size: 2em;
  height: 100%;
  top: 0;
  right: 0;
  width: 44px;
  background-position: right .5em;
}
.vk-mobile-nav-menu-outer .vk-menu-acc a[href="#"] {
  pointer-events: none;
}
.vk-mobile-nav-menu-outer .vk-menu-acc a[href="#"] + span.acc-btn {
  width: 100%;
}
.vk-mobile-nav-menu-outer .vk-menu-acc span.acc-btn.acc-btn-close {
  height: 44px !important;
}
.mobile-fix-nav .mobile-fix-nav-menu {
  position: relative;
  z-index: 0;
}
.vk-mobile-nav-menu-btn {
  border: medium none !important;
}
.vk-mobile-nav-menu-btn.menu-open {
  border: medium none !important;
}
.vk-mobile-nav .acc-btn {
  border: medium none !important;
}
.vk-mobile-nav nav ul li a {
  text-decoration: none;
}
.mobile-fix-nav_enable .site-footer {
  padding-bottom: 60px !important;
}
.vk_accordion-trigger .vk_accordion-toggle-close::before, .vk_accordion-trigger .vk_accordion-toggle-open::before {
  right: 12px;
}
.vk-mobile-nav p {
  color: #fff;
}
.vk-mobile-nav a {
  color: #fff;
}
.vk-mobile-nav-menu-btn.position-right {
  right: 10px;
  border-radius: 0;
  top: 10px;
}
.vk-mobile-nav-menu-btn {
  border: medium none !important;
  top: 15px;
  background-color: var(--vk-color-primary);
}
.vk-mobile-nav-menu-btn.menu-open {
  border: medium none !important;
  background-color: var(--vk-color-primary);
}
.vk-mobile-nav .acc-btn {
  border-style: none !important;
}
.vk-mobile-nav {
  padding-top: 15px !important;
  background-color: var(--vk-color-primary);
  border-bottom: medium none !important;
}
.vk-mobile-nav nav > ul {
  border-top: medium none !important;
}
.vk-mobile-nav nav ul li a {
  color: #fff !important;
  border-bottom: 1px solid #fff !important;
  text-decoration: none;
}
.vk-mobile-nav nav ul li a:hover {
  text-decoration: underline !important;
}
.vk-menu-acc .acc-btn {
  filter: brightness(0) invert(1) !important;
  opacity: 1;
}
.vk-mobile-nav-menu-outer .vk-menu-acc .acc-btn {
  border: none;
  background-size: 2em;
  height: 100%;
  top: 0;
  right: 0;
  width: 44px;
  background-position: right .5em;
}
.vk-mobile-nav-menu-outer .vk-menu-acc span.acc-btn.acc-btn-close {
  height: 44px !important;
}
/*サブメニュー*/
.vk-mobile-nav .widget_nav_menu ul.menu {
  border-top:medium none;
}
.vk-mobile-nav nav>ul {
  border-top:medium none;
}
.vk-mobile-nav .widget_nav_menu ul li a,
.vk-mobile-nav nav ul li a {
  color:#eee;
  border-bottom:medium none;
  padding: .5em 0;
}
.vk-mobile-nav .wp-block-columns.is-not-stacked-on-mobile {
  gap: .5em;
}
/* ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
 *  Toppage トップページ
 * ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */
/* FV-video */
.vk_outer.fv  {
    aspect-ratio: 8 / 5 !important;
}
.vk_outer.fv  .wp-block-cover.alignfull {
    aspect-ratio: 8 / 5 !important;
}
.vk_outer.fv  video.wp-block-cover__video-background {
    aspect-ratio: 8 / 5 !important;
    object-fit: contain !important;
}


/*FV > EC-Shopのボタン*/
.fv-ecshop {
  position: relative;
  width: 100%;
  right: 0;
  bottom: 0;
}
.fv-ecshop .vk_gridcolcard_item_container {
  padding: 1em !important;
}
/* TOP > ラインナップのグリッド*/
.lineup-grid-item {
  gap: 1% 2% !important;
}
.lineup-grid-item .vk_gridcolcard_item_container {
  padding: 1em !important;
}
.lineup-grid-item .vk_gridcolcard_item_container p {
  margin: 0;
  font-size: 1rem !important;
}
.lineup-grid-item .wp-block-image figure {
  min-height: 150px;
  display: flex;
  align-items: center;
  object-fit: contain;
}
/*TOP > よく検索されるワード*/
.word-list li {
  font-size: .9rem;
}
/*TOP >サービス余白*/
.top-service {
  padding-left: 1em;
  padding-right: 1em;
}
/*cta*/
.tel a {
  text-decoration: none;
  color: #333;
}
.cta .tel a {
  text-decoration: none;
  color: #fff;
}
/* ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
 *  下層ページ
 * ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */
/* VKステップ横並びを縦に */
.vk_step-horizontal {
  flex-wrap: wrap;
}
.vk_step-horizontal .vk_step_item {
  padding: 0;
}
.is-style-vk-blocks-steps-vertical.vk_step .vk_step_item .vk_step_item_dot {
  position: absolute;
}
.vk_step h4 {
  text-align: left;
  padding: 10px 15px;
  margin: 0;
}
.vk_step-horizontal p {
  padding: 0 1rem;
}
.vk_step.vk_step-horizontal .vk_step_item_content {
  text-align: left;
  padding-left: 50px;
}
.vk_step-horizontal .vk_step_item_lineStyle-default::before {
  width: 5px;
  height: 100%;
  top: 20px;
  left: 20px;
  right: auto;
}
/*会社案内girdリンクアイテム*/
.link-box {
  gap: 0 !important;
}
.link-box .wp-block-cover {
  padding: 0;
  min-height: 40vh;
  margin-bottom: 1.5em;
}
/*会社案内 > テーブル*/
.profile-table table {
  border-top: 1px solid #ddd !important;
}
.profile-table th {
  padding: 1em 1em .5em 1em !important;
  border: medium none !important;
}
.profile-table td {
  padding: 0 1em 1em 1em !important;
  border-top: medium none !important;
}
/* タイムライン2カラム */
.history {
  --time-width: 10px;
}
.history.vk_timeline .vk_timeline_item {
  min-height: 50px;
  padding-left: calc(var(--time-width) + 20px);
}
.history.vk_timeline .vk_timeline_item_caption {
  position: relative;
  width: calc(var(--time-width) - 20px);
  width: 100%;
  margin-bottom: .5em;
}
.history.vk_timeline .vk_timeline_item_content > :last-child {
  margin-bottom: 1em;
}
/*行動指針 > 横並びを縦組へ*/
.sp-warp {
  display: block !important;
}
.sp-warp h3, .sp-warp p {
  text-align: center;
}
/*-------------------------------------------*/
/* ウェルカート　カートページ
/*-------------------------------------------*/
/* カートの中身 ＞　テーブルの中身をGridレイアウト */
table#cart_table thead {
  display: none;
}
table#cart_table tfoot {
  display: grid;
}
table#cart_table tbody tr {
  display: grid;
  grid-template-columns: 100px auto auto;
  grid-template-rows: repeat(4, auto);
  width: 100%;
  gap: 0 1rem;
  margin-bottom: 1.5rem;
  border-bottom: solid 1px var(--welcart-color-border);
  padding-bottom: 1.5rem;
}
table#cart_table th, table#cart_table td {
  padding: 0;
  border: none;
  text-align: left !important;
}
table#cart_table tbody .num {
  display: none;
}
table#cart_table tbody .thumbnail {
  grid-area: 1 / 1 / 6 / 2;
}
table#cart_table tbody td.productname {
  grid-area: 1 / 2 / 2 / 4;
  font-size: 1.2rem;
  font-weight: bold;
  margin-bottom: .5em;
}
table#cart_table tbody td.unitprice {
  grid-area: 2 / 2 / 3 / 4;
  color: #aaa;
}
table#cart_table tbody td.unitprice::before {
  content: '商品単価：';
}
table#cart_table tbody td.stock {
  grid-area: 3 / 2 / 4 / 4;
  color: #aaa;
}
table#cart_table tbody td.stock::before {
  content: '在庫状況：';
}
table#cart_table tbody td.subtotal {
  grid-area: 4 / 2 / 5 / 4;
  color: #aaa;
  display: none; /* 商品ごとの小計表示が不要な場合。 */
}
table#cart_table tbody td.subtotal::before {
  content: '商品小計：';
}
table#cart_table tbody td.quantity {
  grid-area: 5 / 2 / 6 / 3;
  /* 	min-width: 100%; */
  align-self: center;
  padding-top: 1rem;
}
table#cart_table tbody td.quantity input.quantity {
  width: 100%;
}
table#cart_table tbody td.action {
  grid-area: 5 / 3 / 6 / 4;
  /* 	width:100%; */
  align-self: center;
  padding-top: 1rem;
}
table#cart_table tbody td.action input.delButton {
  width: 100%;
}
/* テーブルフッター・合計/ポイント欄 */
table#cart_table tfoot tr {
  display: flex;
  justify-content: space-between;
}
table#cart_table tfoot tr .num, table#cart_table tfoot tr .thumbnail, table#cart_table tfoot tr .action, table#cart_table tfoot tr .stock {
  display: none;
}
table#cart_table tfoot tr th, table#cart_table tfoot tr td {
  /*     text-align:left !important; */
}
/*  マイページ　＞　会員情報・新規会員登録 */
#customer-info table.customer_form, #memberinfo table.customer_form, #newmember table.customer_form, #memberedit table.customer_form, #delivery-info table.customer_form, #info-confirm #confirm_table {
  border: none;
  font-size: 14px;
  tr {
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    gap: .5em;
    border-bottom: solid 1px var(--welcart-color-border);
    padding-bottom: 1em;
    margin-bottom: 1em;
  }
  th, td {
    width: 100%;
    padding: 0;
    font-size: 14px;
    border: 0;
  }
  input:not([type="radio"]), select {
    margin: 0 1rem 0 0 !important;
    width: 100% !important;
  }
  .customer_form input[id^='address'] {
    width: 100% !important;
  }
}
#newmember .customer_form .name_td .member_name, #memberinfo .customer_form .name_td .member_name {
  padding: 0;
}
/*-------------------------------------------*/
/* ウェルカート　メンバーページ */
/*-------------------------------------------*/
/* マイページ ＞会員情報 */
#memberdetail tr {
  display: flex;
  flex-wrap: wrap;
}
#memberdetail th {
  width: 40%;
}
#memberdetail td {
  width: 60%;
}
#memberdetail .blank {
  display: none;
}
/* マイページ　＞　会員情報変更 */
#memberedit .send {
  display: flex;
  flex-direction: column;
  padding-left: 30px;
  padding-right: 30px;
}
#memberedit .send input[name="editmember"] {
  order: 1;
}
#memberedit .send input[name="top"] {
  order: 2;
}
#memberedit .send input[name="back"] {
  order: 3;
}
#memberedit .send input[name="deletemember"] {
  order: 4;
}
/* マイページ＞購入履歴 */
table#history_head {
  display: grid;
  grid-template-columns: auto auto;
}
tr.order_head_label {
  display: flex;
  flex-direction: column;
}
tr.order_head_value {
  display: flex;
  flex-direction: column;
}
#memberinfo th.historyrow {
  background: none !important;
  font-size: 12px !important;
  border-width: 0 0 1px;
  padding: 5px 0 !important;
}
#memberinfo tr.order_head_value td {
  font-size: 12px !important;
  border-width: 0 0 1px;
  padding: 5px 0 !important;
}
#memberinfo .retail thead {
  display: none;
}
#memberinfo .retail tbody tr {
  display: grid;
  grid-template-columns: 2em 60px auto;
  grid-template-rows: repeat(4, auto);
  gap: 0 .5rem;
  margin-bottom: 1rem;
  border-bottom: solid 1px #ddd;
  padding-bottom: 1rem;
}
#memberinfo .retail tbody tr td {
  padding: 0;
  text-align: left;
  border: none;
}
td.cartrownum {
  grid-area: 1 / 1 / 6 / 2;
  align-self: center;
  text-align: right !important;
}
td.thumbnail {
  grid-area: 1 / 2 / 6 / 3;
  align-self: center;
}
td.productname {
  grid-area: 1 / 3 / 2 / 4;
  font-size: 1.2rem;
  font-weight: bold;
  margin-bottom: .5em;
  display: -webkit-box; /* Flexboxの代わりに使う */
  -webkit-box-orient: vertical; /* 縦方向にボックスを配置 */
  -webkit-line-clamp: 2; /* 2行に制限 */
  overflow: hidden; /* 溢れた部分を隠す */
}
td.price {
  grid-area: 2 / 3 / 3 / 4;
}
td.quantity {
  grid-area: 3 / 3 / 4 / 4;
}
td.subtotal {
  grid-area: 4 / 3 / 5 / 4;
}
td.price, td.quantity, td.subtotal {
  color: #aaa !important;
}
td.price::before, td.quantity::before, td.subtotal::before {
  content: attr(data-label) "："; /* data-label 属性の値を表示 */
}
/* 会員　購入確認ページ */
#info-confirm #confirm_table th {
  width: 10rem;
  min-width: unset;
}
/*-------------------------------------------*/
/* ウェルカート　商品詳細ページ */
/*-------------------------------------------*/
section.item_detail {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}
.item_detail .item_img_area {
  position: static;
  width: 100%;
}
#itempage .itemsubimg {
  display: flex !important;
  flex-wrap: nowrap;
  overflow-x: scroll;
  overflow-y: hidden;
  scroll-snap-type: x mandatory;
  margin-left: -15px;
  margin-right: -15px;
  padding: 3px 15px;
  height: 86px;
}
#itempage .itemsubimg li {
  min-width: 80px;
  scroll-snap-align: start;
  scroll-margin-left: 15px;
  aspect-ratio: 1;
}
/* 複数SKU 表示調整 */
#itempage table.skumulti tr {
  display: grid;
  grid-template-columns: auto auto;
  grid-template-rows: auto auto;
}
#itempage table.skumulti tr td.skudisp {
  grid-area: 1 / 1 / 2 / 3;
  border-bottom: none !important;
  display: inline-flex;
  flex-direction: row;
  align-items: baseline;
  gap: 0.5em;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}
#itempage table.skumulti tr td.quant {
  grid-area: 2 / 1 / 3 / 2;
}
#itempage table.skumulti tr td.button {
  grid-area: 2 / 2 / 3 / 3;
  width: auto !important;
}
/*-------------------------------------------*/
/* ウェルカート設定　ここまで */
/*-------------------------------------------*/
/* 以下、新川追加分 */
/*#site-header-container .site-header-logo {
    padding-top: 1rem;
}*/
#vk-mobile-nav-menu-btn {
  text-indent: 0;
  display: grid;
  align-items: end;
  justify-content: center;
  font-size: 11px;
  background-position-y: -4px;
  font-weight: bold;
  color: #fff;
}