@charset "utf-8";
/*
Theme Name: Lightning Child
Theme URI:
Template: lightning
Description:
Author:アートフレア株式会社
Tags: 
Version: 0.1.2
*/
/*
 * WEBフォントの読み込み（@import url('https://fonts～'); ）はHeader.phpで行う
*/
/* ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
 *  General　全体的な設定
 * ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */
/* :root設定、bodyへの上書き、カラー変数設定など */ :root {
  --vk-color-text-link-hover: var(--vk-color-primary);
  --vk-size-radius: 0;
  /* 	--en: "Figtree", sans-serif; */
}
body {
  font-family: "Figtree", "Noto Sans JP", sans-serif;
}
li a, p a {
  text-decoration: underline;
  text-underline-offset: 0.2em;
  transition: .3s;
}
.site-body {
  letter-spacing: 0.1em;
  font-feature-settings: 'palt';
}
/* ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
 *  Common 汎用パーツ系
 * ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */
/* 繰り返しボタン・見出し、余白設計など 汎用パーツへの上書き */
h2 {
  font-size: 2.4rem;
}
h3 {
  font-size: 1.8rem;
}
/*見出し逆順*/
.heading-reverse .vk_heading {
  display: flex;
  flex-wrap: wrap;
  flex-direction: column-reverse;
}
.heading-reverse .vk_heading_title{
	width:100%;
}
.heading-reverse .vk_heading .vk_heading_subtext {
  text-transform: uppercase;
  letter-spacing: .1em;
  font-weight: 600;
}
/*中央寄せ*/
.is-style-vkp-heading-short_both_ends {
  display: flex;
  flex-wrap: nowrap;
  justify-content: center;
  align-items: center;
  border: 0;
}
/*見出し左右線*/
.is-style-vkp-heading-short_both_ends:before, .is-style-vkp-heading-short_both_ends:after {
  content: '';
  width: 30px;
  height: 2px;
  background-color: currentColor !important;
  /*Lightning見出しデザイン設定のCSS対策*/
  position: unset;
  border: unset;
  margin-left: unset;
  margin-right: unset;
  flex-grow: unset;
}
.is-style-vkp-heading-short_both_ends:before {
  margin-right: 14px;
}
.is-style-vkp-heading-short_both_ends:after {
  margin-left: 14px;
}
/*見出し・右側にボーダー*/
.heading-border-left {
  position: relative;
  padding-left: .8em;
  padding-bottom: 0;
}
.heading-border-left::before {
  content: "";
  display: inline-block;
  width: 5px;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  background-color: var(--vk-color-primary);
}
/*見出し・上部にボーダー*/
.heading-border-top {
  position: relative;
  padding-top: 1.5em;
  padding-bottom: 0;
  border-top: 1px solid #ddd;
}
.heading-border-top::before {
  content: "";
  display: inline-block;
  width: 20px;
  height: 2px;
  position: absolute;
  left: 0;
  top: 0;
  background-color: var(--vk-color-primary);
}
/*吹き出し*/
.heading-fukidashi {
  background-color: var(--vk-color-primary);
  position: relative;
  color: #fff;
  padding: .2em 1em;
  width: fit-content;
}
.heading-fukidashi::before {
  content: "";
  position: absolute;
  top: 100%;
  left: 50%;
  margin-left: -15px;
  border: 15px solid transparent;
  border-top: 15px solid var(--vk-color-primary);
}
/*ボタン*/
.vk_button .vk_button_link.btn, .wp-block-button.is-style-outline .wp-block-button__link {
  border-width: 2px;
}
.vk_button .vk_button_link_caption, .editor-styles-wrapper .vk_button .vk_button_link_caption {
  font-weight: 500;
}
.vk_button .has-text-color.is-style-outline, .editor-styles-wrapper .vk_button .has-text-color.is-style-outline {
  border-width: 2px;
}
.vk_button-color-custom a:hover, .editor-styles-wrapper .vk_button-color-custom a:hover {
  opacity: 1;
  background: none !important;
  border: 2px solid var(--vk-color-primary) !important;
  color: var(--vk-color-primary) !important;
  box-shadow: none;
}
.vk_button .has-text-color.is-style-outline:hover, .editor-styles-wrapper .vk_button .has-text-color.is-style-outline:hover {
  background-color: var(--vk-color-primary) !important;
}
.vk_button .vk_button_link i {
  transition: .3s;
}
.vk_button:hover .vk_button_link i {
  transform: scale(1.3);
  transition: .3s;
}
.vk_button .has-text-color.is-style-outline:hover.has-vk-color-light-color .vk_button_link_before,
.vk_button .has-text-color.is-style-outline:hover.has-vk-color-light-color .vk_button_link_txt,
.vk_button .has-text-color.is-style-outline:hover.has-vk-color-light-color .vk_button_link_after,
.vk_button .has-text-color.is-style-outline:hover.has-vk-color-light-color .vk_button_link_subCaption,
.vk_button .has-text-color.is-style-outline:hover.has-white-color .vk_button_link_before,
.vk_button .has-text-color.is-style-outline:hover.has-white-color .vk_button_link_txt,
.vk_button .has-text-color.is-style-outline:hover.has-white-color .vk_button_link_after,
.vk_button .has-text-color.is-style-outline:hover.has-white-color .vk_button_link_subCaption,
.editor-styles-wrapper .vk_button .has-text-color.is-style-outline:hover.has-vk-color-light-color .vk_button_link_before,
.editor-styles-wrapper .vk_button .has-text-color.is-style-outline:hover.has-vk-color-light-color .vk_button_link_txt,
.editor-styles-wrapper .vk_button .has-text-color.is-style-outline:hover.has-vk-color-light-color .vk_button_link_after,
.editor-styles-wrapper .vk_button .has-text-color.is-style-outline:hover.has-vk-color-light-color .vk_button_link_subCaption,
.editor-styles-wrapper .vk_button .has-text-color.is-style-outline:hover.has-white-color .vk_button_link_before,
.editor-styles-wrapper .vk_button .has-text-color.is-style-outline:hover.has-white-color .vk_button_link_txt,
.editor-styles-wrapper .vk_button .has-text-color.is-style-outline:hover.has-white-color .vk_button_link_after,
.editor-styles-wrapper .vk_button .has-text-color.is-style-outline:hover.has-white-color .vk_button_link_subCaption {
  color: #fff !important;
}
.vk_button-color-custom .vk_button_link-type-text:hover,
.editor-styles-wrapper .vk_button-color-custom .vk_button_link-type-text:hover {
  border: none !important;
}

/*画像ホバーズームイン*/
figure.hover-move, .hover-move figure, .wp-block-cover.hover-move {
  overflow: hidden;
}
.hover-move:hover img {
  transform: scale(1.07);
  transition: 1s;
}
.hover-move img {
  transition: 1s;
}

/* スクロール固定Column */
.position-sticky-wrap {
    overflow: visible !important;　/* 包含するouterに */
}
.device-pc .wp-block-column.position-sticky-column {
    position: sticky; /* PCにのみ反映。 */
    top: 130px;
    align-self: flex-start;
}
/*テーブルのフォントサイズ*/
:where(:not(.wp-block-table)) > table :is(th, td) {
  font-size: 1rem;
}
/* ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
 *  Header ヘッダーまわり
 * ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */
/* ヘッダー固定 */
body {
  overflow-x: unset !important;
  display: flex;
  flex-direction: column;
}
.device-pc #site-header {
  position: sticky;
  top: 0;
}
.logged-in.device-pc #site-header {
  top: 32px;
}
#site-header-container {
  max-width: unset;
  display: grid;
  grid-template-columns: auto 1fr auto;
  grid-template-rows: repeat(2, auto);
  grid-column-gap: 0px;
  grid-row-gap: 0px;
}
#site-header-container .site-header-logo {
  grid-area: 1 / 1 / 3 / 2;
}
#site-header-container .header_nav_search_container {
  grid-area: 2 / 3 / 3 / 4;
}
#site-header-container .header_subnavigation {
  grid-area: 1 / 2 / 2 / 4;
}
#site-header-container nav#global-nav {
  grid-area: 2 / 2 / 3 / 3;
}

/* ヘッダーレスポンシブ */
@media (max-width: 1300px) {
	#site-header-container {
	  max-width: unset;
	  display: grid;
	  grid-template-columns: 1fr 1fr;
	  grid-template-rows: repeat(2, auto);
	  grid-column-gap: 0px;
	  grid-row-gap: 0px;
	}
	#site-header-container .site-header-logo {
	  grid-area: 1 / 1 / 2 / 2;
	}
	#site-header-container .header_nav_search_container {
	  grid-area: 2 / 3 / 3 / 4;
	}
	#site-header-container .header_subnavigation {
	  grid-area: 1 / 2 / 2 / 4;
	}
	#site-header-container nav#global-nav {
	  grid-area: 2 / 1 / 3 / 3;
	  justify-content: left !important;
	  width: 100%;
	}
	.site-header-logo img{
	  max-height:50px;
	}
}
@media (max-width: 1100px) {
	.global-nav-list > li .global-nav-name {
	  font-size: 14px;
	}
	.device-pc .global-nav-list>li>a{
		padding:10px;
	}
}

.site-header-logo img {
    max-height: 80px;
}
/* ヘッダーサブナビ */
#header-top-submenu ul.menu {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  align-items: baseline;
}
#header-top-submenu ul.menu a {
  border: none;
  margin: 0;
  padding: 0;
  font-size: 14px;
  padding: .5em 1em;
  text-underline-offset: 0.3em;
}
#header-top-submenu ul.menu a:hover {
  background: none;
  text-decoration: underline;
}
/* ヘッダーグローバルナビ */
.global-nav-list > li > a {
  transition: .3s;
  border-bottom: 8px solid transparent;
}
.global-nav-list > li .global-nav-name {
  font-size: 1rem;
}
.global-nav-list > li:before {
  display: none;
}
.global-nav-list > li > a:hover, .global-nav-list > li.current-menu-item > a {
  color: var(--vk-color-primary);
  border-bottom: 8px solid var(--vk-color-primary);
}

/* others dot */
.device-pc li.header-nav-more.menu-item-has-children > a .global-nav-name::after{
	content: '\f142';
	font-size: 1.3rem;
	color: var(--vk-color-primary);
	margin: 0 .5em;
}

li.header-nav-more .global-nav-name {
    font-size: 0 !important;
}

/* nav-child */
.global-nav-list .sub-menu li a {
    font-size: 1rem;
}
.global-nav-list>li>ul.sub-menu {
    width: 360px;
    margin-left: -180px;
    background-color: var(--vk-color-custom-1);
}
.global-nav-list>li.menu-item-has-children::after {
    border-bottom-color: var(--vk-color-custom-1);
}
/* ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
 *  Footer フッターまわり
 * ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */
/* フッターウィジェット、フッターロゴ、コピーライト */
/*フッター余白調整*/
.block-site-footer .wp-block-vk-blocks-outer {
  padding-bottom: 0.5em;
}
/* フッターナビ */
footer#block-site-footer a {
    transition: .3s;
    text-decoration-color: transparent !important;
    text-decoration: underline;
    text-underline-offset: 0.3em;
}
footer#block-site-footer a:hover {
    text-decoration-color: #fff !important;
    color: #fff;
}
ul#footer-nav {
  columns: 4;
  column-width: 180px;
  margin: 15px 0 0 0;
  padding: 0;
}
ul#footer-nav li {
  break-inside: avoid;
  list-style: square;
  position: relative;
  padding: 0 10px 0 0;
  margin: 0 0 10px 0;
}
ul#footer-nav li > ul {
  padding: 0;
  margin: 10px 0 0 0;
}
ul#footer-nav li li {
  list-style: none;
}
ul#footer-nav li > ul li {
  position: relative;
  padding-left: 15px;
  font-size: .8rem;
  margin: 0 0 5px 0;
}
ul#footer-nav li > ul li::before {
  content: "";
  display: inline-block;
  width: 10px;
  height: 1px;
  background-color: #fff;
  position: absolute;
  left: 0;
  top: .8em;
}
ul#footer-nav li.footer-nav-home {
  column-span: all;
}
/* フッターサブナビ */
ul#footer-sub-nav {
  list-style: none;
  padding: 0;
  margin-bottom: 0;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-items: baseline;
}
ul#footer-sub-nav li {
  padding: 0;
  margin: 0;
  font-size: 80%;
}
ul#footer-sub-nav li:not(:last-child)::after {
  content: '|';
  padding-right: .5em;
  margin-left: .5em;
}
/* ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
 *  Toppage トップページ
 * ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */
/* パーツごとにコメントアウトで注釈を入れてください。 */

/* FV-video */
.vk_outer.fv  {
    aspect-ratio: 16 / 7 !important;
}
.vk_outer.fv  .wp-block-cover.alignfull {
    aspect-ratio: 16 / 7 !important;
}
.vk_outer.fv  video.wp-block-cover__video-background {
    aspect-ratio: 16 / 7;
    object-fit: contain !important;
}


/*EC-Shopのボタン*/
.fv-ecshop {
  position: absolute;
  width: 400px;
  right: 2em;
  bottom: 1.5em;
}
.fv-ecshop .wp-block-columns {
  gap: 1em
}



/*product*/
.top-product::after {
  content: "";
  display: inline-block;
  width: 100%;
  height: 50px;
  position: absolute;
  left: 0;
  bottom: 0;
  background-color: var(--vk-color-custom-3);
}
.products-slide {
  width: calc((100% + (100vw - 100%) / 2) - 10px);
}
.products-slide .wp-block-vk-blocks-slider-item {
    clip-path: polygon(10% 0%, 100% 0%, 90% 100%, 0% 100%);
    aspect-ratio: 2 / 3 !important;
}
/*サービス*/
.top-service {
  position: relative;
  top: -2em;
  background-color: #fff;
  padding-left: 2em;
  padding-right: 2em;
}
.top-service .wp-block-columns {
  gap: 3em;
}
/*CTA*/
.cta-btn {
  gap: 1.5em;
}
.cta-whitebtn a.vk_button_link:hover {
    border-color: #fff !important;
    color: #fff !important;
    background: var(--vk-color-primary) !important;
}
.tel a{
  text-decoration: none;
}
/*検索ボタン*/
.wp-block-search .wp-block-search__button {
  width: 13%;
}
.wp-block-search .wp-block-search__button:hover {
  opacity: .7;
}
/*検索ワード*/
ul.word-list {
  display: flex;
  align-content: flex-start;
  justify-content: flex-start;
  gap: 0.5em;
  margin: 0;
  padding: 0;
}
.word-list li {
  padding: .5em;
  margin: 0;
  list-style: none;
  background-color: #efefef;
  border-radius: 5px;
  line-height: 1.2em;
}
/*グリッドテキストボタン*/
.grid-btn-text-type .wp-block-vk-blocks-gridcolcard-item a:hover p{
  transform: translate(10px, 0);
  transition: .3s;
  color: var(--vk-color-primary);
}
.grid-btn-text-type .wp-block-vk-blocks-gridcolcard-item p{
  transition: .3s;
}
/* ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
 *  Pageheader, Breadcrumb 下層ページヘッダー・パンくずリスト
 * ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */
/* 下層ページのページヘッダー、パンクズ設定 */
/*ページヘッダー*/
.page-header-subtext {
  text-transform: uppercase;
  letter-spacing: .1em;
}
/*パンくず*/
#breadcrumb {
  font-size: 0.775rem;
  border: none;
  position: relative;
}
ol.breadcrumb-list {
  position: absolute;
  left: 0;
  top: -40px;
  background-color: #fff;
  padding: 1em 2em 1em 1.5em;
  z-index: 999;
}
ol.breadcrumb-list a {
  text-decoration: none;
}
/* ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
 * EC アーカイブページ
 * ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */
/* ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
 * EC 詳細ページ
 * ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */
#itempage .itemsubimg li:only-child {
  /* イメージが1枚しかない場合は、サムネイルを表示しない */
  display: none;
}
/* 「カートに入れる」ボタンを下ぞろえ　※複数SKUを設定する場合はコメントアウト */
/* .archive_cart {
 margin-top: 80px;
}

.archive_cart .price {
 position: absolute;
 bottom: 40px;
 left: 20px;
}

.archive_cart input[type=submit] {
 position: absolute;
 bottom: 12px;
 right: 20px;
}
 */
/* ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
 *  Page 下層ページ
 * ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */
/* 規約関係など、幅狭ページ */
.terms {
  max-width: 900px;
  margin-inline: auto;
}
.terms h2 {
  font-size: 1.2rem;
}
.terms h3 {
  font-size: 1rem;
}
.contactform-table th {
  background: none;
}
/* 問い合わせフォーム用 */
table.contactform-table, .contactform-table th, .contactform-table td {
  border-left: none;
  border-right: none;
}
.device-pc .contactform-table th, .device-pc .contactform-table td {
  padding: 1em;
}
/*グリッドの連番・見出しに番号を付与*/
.numbered-grid .row {
  counter-reset: flow-counting;
}
.numbered-grid .row .vk_gridColumn_item h3.wp-block-heading::before {
  counter-increment: flow-counting;
  content: counter(flow-counting, decimal-leading-zero);
  position: absolute;
  color: var(--vk-color-custom-2);
  width: 5em;
  font-size: 8rem;
  line-height: 1em;
  top: -50px;
  opacity: .5;
  z-index: -1;
}
/*テキスト中央配置*/
.fit-content-text {
  width: fit-content;
  margin-inline: auto;
}
/*区切り線*/
.wp-block-separator {
  border-top: 1px solid;
}
/*背景にロゴマーク*/
.bg-logomark::after {
  content: "";
  display: inline-block;
  width: 100%;
  height: 100%;
  background-image: url("../../../wp-content/uploads/logomark.png");
  background-position: left top;
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  left: 50%;
  top: 0;
  opacity: .5;
}
/*フロー横並び*/
.is-style-af-list-horizon {
  display: flex;
  list-style: none;
  padding-left: 0;
  flex-direction: row;
  flex-wrap: wrap;
}
.is-style-af-list-horizon li {
  margin-top: 0;
}
.is-style-af-list-horizon li:not(:last-child)::after {
  content: '/';
  padding: 0 0.5em;
}
.edit-post-visual-editor .is-style-af-list-horizon {
  gap: 0.7em;
}
.edit-post-visual-editor .is-style-af-list-horizon li:not(:last-child)::after {
  display: none;
}
.edit-post-visual-editor .is-style-af-list-horizon li {
  outline: dashed 1px #333;
  border-radius: 1px;
  flex-grow: 1;
  text-align: center;
}
.is-style-af-heading-reverse .vk_heading {
  display: flex;
  flex-direction: column-reverse;
}
.is-style-af-heading-reverse .vk_heading_title {
  width: 100%;
  margin-bottom: 0;
}
.is-style-af-heading-reverse .vk_heading_subtext {
  margin-bottom: var(--vk-margin-headding-bottom);
}
.is-style-vk-blocks-steps-vertical {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  justify-content: space-between;
  align-items: flex-start;
}
.is-style-vk-blocks-steps-vertical.vk_step .block-editor-block-list__block {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 0;
  margin: 0;
}
.is-style-vk-blocks-steps-vertical.vk_step .vk_step_item_content {
  display: block;
  width: 100%;
  order: 2;
}
.is-style-vk-blocks-steps-vertical.vk_step .vk_step_item .vk_step_item_dot {
  position: unset;
  margin: 0 auto;
  order: 1;
  z-index: 2;
}
.is-style-vk-blocks-steps-vertical.vk_step .vk_step_item .vk_step_item_dot.vk_step_item_style-outlined {
  background: #fff;
}
.is-style-vk-blocks-steps-vertical .vk_step_item_lineStyle-default::before {
  width: 100%;
  height: 3px;
  top: 23px;
  left: calc(50% + 23px);
  z-index: 1;
}
.is-style-vk-blocks-steps-vertical .block-editor-inner-blocks {
  width: 100%;
}
.is-style-vk-blocks-steps-vertical > .block-editor-inner-blocks > .block-editor-block-list__layout {
  display: flex !important;
}
.is-style-vk-blocks-steps-vertical .wp-block-vk-blocks-step-item.vk_step_item {
  display: flex;
  flex-direction: column;
  width: 100%;
  padding: 0;
}
/*アコーディオン*/
.vk_accordion-trigger .vk_accordion-toggle-open {
  border: medium none !important;
}
.vk_accordion-trigger {
  background-color: var(--vk-color-primary);
  border: 1px solid  var(--vk-color-primary);
  color: #fff;
}
.vk_accordion-trigger .vk_accordion-toggle-close::after, .vk_accordion-trigger .vk_accordion-toggle-open::after {
  border-right: 1px solid #fff;
  border-top: 1px solid #fff;
}
.vk_accordion-trigger p {
  font-size: 1.2rem !important;
}
.vk_accordion-target {
  padding-left: 0 !important;
  padding-right: 0 !important;
}
/*スペックのテーブル*/
.single-table th{
  background-color: #efefef !important;
}
/*画像の高さを揃える*/
.unify-height figure img {
  height: 80px !important;
  width: auto !important;
  object-fit: contain !important;
}
/*会社案内girdリンクアイテム*/
.link-box .wp-block-cover {
  padding: 0;
}
.top-service-button .vk_button_link:hover {
  color: #fff !important;
  background-color: var(--vk-color-primary) !important;
}
/* タイムライン2カラム */
.history {
  --time-width: 230px;
}
.history.vk_timeline .vk_timeline_item {
  min-height: 50px;
  padding-left: calc(var(--time-width) + 40px);
}
.history.vk_timeline .vk_timeline_item_lineStyle-default::before {
  left: var(--time-width);
  top: 0px;
}
.history.vk_timeline .vk_timeline_item_style {
  left: calc(var(--time-width) - 6px);
  top: 0;
  background: #fff;
}
.history.vk_timeline .vk_timeline_item_caption {
  position: absolute;
  left: 0;
  top: -0.5em;
  width: calc(var(--time-width) - 20px);
  font-variant: tabular-nums;
  font-feature-settings: "tnum";
  font-size: 1rem;
  font-weight: bold;
  opacity: 0.7;
}
.history.vk_timeline .vk_timeline_item_content {
  transform: translateY(-0.5em);
}
/*会社概要のテーブル*/
.profile-table table{
  border: medium none !important;
  background: none !important;
}
.profile-table th, .profile-table td{
  border-left: medium none!important;
  border-right: medium none !important;
  background: none !important;
  padding:1.5em 1em !important;
}
.profile-table th{
  width: 20% !important;
}
dl.profile-subgrid {
    margin: 0;
    padding: 0;
    display: grid;
    grid-template-columns: 12rem 1fr;
}
dl.profile-subgrid dt,dl.profile-subgrid dd {
    margin: 0;
    line-height: 2;
}

/*スライダーのボタン*/
.swiper-pagination-bullet {
  width: 10px !important;
  height: 10px !important;
  border-radius: 50px !important;
}
.vk_slider .swiper-button-next,
.vk_slider .swiper-button-prev {
	display:flex;
  background-color: #111 !important;
  border-radius: 50px !important;
}
.swiper-button-next::after, .swiper-button-prev::after {
  color: #fff !important;
  font-size: .8rem !important;
}
/* スライダー */
.vk_slider_item_container.container {
    padding: 0;
}
.vk_slider figure.aligncenter {
    margin: 0 auto;
}

/* 行動指針 */
ol.wp-block-list.guideline-list {
    list-style: none;
    counter-reset: guideline;
    padding-left: 0;
}
ol.wp-block-list.guideline-list li {
    margin-top: 0;
    margin-bottom: 2rem;
    position: relative;
    padding-left: 4em;
}
ol.wp-block-list.guideline-list li::before {
    counter-increment: guideline;
    content: "0" counter(guideline)".";
    position:absolute;
    top: 0;
    left: 0;
    color: var(--vk-color-primary);
    font-size: 2rem;
    font-weight: bold;
}

/* 採用→アコーディオン */
details.wp-block-details {
    margin-bottom: 1rem;
}
.wp-block-details summary {
    font-weight: bold;
    padding: .5em 0;
    border-bottom: solid 1px #ccc;
    position: relative;
}
.wp-block-details summary::marker {
    font-size: 0;
}
.wp-block-details summary::after {
    content: '\2b';
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
}
details.wp-block-details[open] summary::after {
    content: '\f068';
}
details.wp-block-details>*:not(summary) {
    margin-inline: 1rem;
}

.recruit__tabs .vk_tab_labels .vk_tab_labels_label,
.recruit__tabs .vk_tab_labels .vk_tab_labels_label.has-background {
    font-size: 1.2rem;
    padding: 0.5em 1em;
	border-radius: 0;
}
.vk_tab.wp-block-vk-blocks-tab.recruit__tabs .vk_tab_labels {
    gap:10px
}
.recruit__tabs .vk_tab_bodys .vk_tab_bodys_body.vk_tab_bodys_body-state-active {
    border: none;
}
.recruit__tabs .vk_tab_bodys .vk_tab_bodys_body.vk_tab_bodys_body-state-active .wp-block-group {
    border: none !important;
}

/* 動画一覧 */
.gridcol__video .row {
    row-gap: 1.5rem;
}
.gridcol__video .vk_gridColumn_item {
    display: flex;
    flex-direction: column;
    /* align-content: flex-start; */
}
.gridcol__video .vk_gridColumn_item *:not(figure) {
    order: 1;
}
.gridcol__video .vk_gridColumn_item h3 {
    width: 100%;
    font-size: 1rem;
}
.gridcol__video img {
    aspect-ratio: 16 / 9;
    object-fit: cover;
}
.gridcol__video figure a {
    position: relative;
}
.gridcol__video figure a::before {
    content: "■";
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
    color: #fff;
    font-size: 20px;
}
.gridcol__video figure a::after {
    content: "\f167";
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
    font-family: "Font Awesome 6 Brands";
    font-weight: 900;
    color: red;
    font-size: 50px;
}
.gridcol__video figure a img {
    transition:.3s;
}
.gridcol__video figure a:hover img {
    filter:brightness(0.8);
}

/* リンク集 */
.blog-card {
    transition:.3s;
}
.blog-card:hover {
    border-color: #aaa;
}
img.blog-card-image-src {
    aspect-ratio: 16 / 9;
    object-fit: cover;
}
h5.blog-card-title a:after {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
}
h5.blog-card-title {
    position: unset;
}
h5.blog-card-title a {
    text-decoration: none;
    color: var(--vk-color-primary);
}
.blog-card-site-title {
    z-index: 2;
    position: relative;
    width: fit-content;
}

/* ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
 *  Archive　ブログ一覧ページ
 * ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */
/* パーツごとにコメントアウトで注釈を入れてください。 */
/*投稿リスト*/
.vk_posts .postListText_title a {
  text-decoration: none;
	font-size:1rem;
}
.postListText_date {
  min-width: 95px;
}
.postListText_singleTermLabel {
  min-width: 100px;
}
.postListText_singleTermLabel_inner {
    border-radius: 0;
    min-width: 9em;
    padding: 0;
    letter-spacing: 0;
    font-weight: normal;
}
/*投稿ページのタイトル*/
.entry-header .entry-title, .archive-header-title {
  margin-bottom: var(--vk-margin-meta);
  font-size: 1.6rem;
  position: relative;
  z-index: 0;
  padding: .8em 0;
}
.entry-header .entry-title::before, .archive-header-title::before {
  content: "";
  display: inline-block;
  width: 30px;
  height: 5px;
  position: absolute;
  left: 0;
  top: 0;
  background-color: var(--vk-color-primary);
}
.entry-header .entry-title::after, .archive-header-title::after {
  content: "";
  display: inline-block;
  width: 30px;
  height: 5px;
  position: absolute;
  left: 30px;
  top: 0;
  background-color: var(--vk-color-custom-2);
}
/*エントリーmeta*/
.entry-meta {
  color: #999;
}


/* IR情報　アーカイブ */
.vk_post.vk_post-postType-ir a[href$="pdf"]::before {
    content: '\f1c1';
    font-family: "Font Awesome 6 Free";
    color: #bd1010;
    padding-right: 0.5em;
}


/* 商品詳細（products） */
.vk_post.vk_post-postType-products {
	transition:.3s;
}
.vk_post.vk_post-postType-products:hover {
    border-color: #aaa;
}
.vk_post.vk_post-postType-products .vk_post_imgOuter:before {
/*     padding-top: 100%; */
}
.vk_post.vk_post-postType-products .vk_post-col-7.col-7 {
    position: unset;
}
.vk_post.vk_post-postType-products .vk_post_imgOuter {
    background-size: contain !important;
    background-repeat: no-repeat;
}
.vk_post.vk_post-postType-products span.pr_post_ja {
    font-size: 1rem;
    font-weight: bold;
}
.vk_post.vk_post-postType-products span.pr_post_en {
    color: #999;
    font-weight: normal;
    font-size: 12px;
	letter-spacing:0;
    display: block;
	margin-bottom:1rem;
}
.vk_post.vk_post-postType-products h5.vk_post_title {
display:none;
}
table.pr_post_table,
table.pr_post_table td,
table.pr_post_table th {
    border-width: 0 ;
}
table.pr_post_table th{
    min-width:6.5em;
}
table.pr_post_table th,
table.pr_post_table td {
    letter-spacing: 0;
    padding: .3em 0;
    border-bottom: solid 1px #ddd;
    font-size:12px;
}
.pr_post_codenum{
	color:var(--vk-color-primary);
	font-size:1.2rem;
}

/* 検索結果（標準） */
body.search p.vk_post_excerpt.card-text {
    font-size: 12px !important;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 5;
    overflow: hidden;
}
body.search .vk_posts {
    align-items: flex-start;
}
body.search .vk_posts .vk_post:not(.products) .vk_post_imgOuter {
    aspect-ratio: 1;
    width: 100%;
    height: auto;
}


/* ページネーション */
ul.page-numbers {
    display: flex;
    gap: 10px;
}
ul.page-numbers li {
    float: none;
}
ul.page-numbers li>.page-numbers {
    font-size: 20px;
    font-weight: normal;
}
ul.page-numbers li>.page-numbers{
    border: solid 1px transparent !important;
		border-radius: 0 !important;
		margin-left: 0 !important;
}
ul.page-numbers li>.page-numbers:not(.current) {
    border: solid 1px #ddd !important;
    border-radius: 0 !important;
    margin-left: 0 !important;
    font-size: 20px;
    font-weight: normal;
	color:#555;
}
ul.page-numbers li>.page-numbers:not(.current){
	transition:.3s;
}
ul.page-numbers li>.page-numbers:not(.current):hover{
	filter: brightness(0.9);
}

/* ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
 *  Single　ブログ詳細ページ
 * ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */
/* パーツごとにコメントアウトで注釈を入れてください。 */

/* 商品詳細ページ（ECではない） */

span.products_title_code {
    background: #eee;
	color:#555;
    padding: 3px 5px;
    display: inline-block;
    font-size: 90%;
    line-height: 1.2;
    vertical-align: baseline;
}
p.products_name_en {
    color: var(--vk-color-primary);
}

.products_summerytable{
}
.products_summerytable th {
    text-align: left;
}

.products_taxonomy-box {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap:1rem  .5rem;
}
dl.products_taxonomy {
    margin: 0;
    display: flex;
    flex-direction: row;
	gap:.5rem;
}
dt.products_taxonomy-label {
    font-weight: unset;
    font-size: var(--wp--preset--font-size--small);
    margin: 0;
    width: 7em;
    white-space: nowrap;
}
dd.products_taxonomy-term{
    width: calc(100% - 8em);	
    margin-left: 0;
    display: flex;
    flex-wrap: wrap;
    flex-direction: row;
    gap: 5px;
    align-content: flex-start;
}
dd.products_taxonomy-term a {
    font-size: var(--wp--preset--font-size--small);
    text-decoration: none;
    background: rgb(0 117 44 / 10%);
    color: #00752c;
    padding: 3px 8px;
    border-radius: 2px;
    display: block;
}

.products-download {
    background: var(--vk-color-custom-3);
}
.products-download a.vk_button_link {
    min-width: 150px;
	width:100%;
}
.products-download .vk_button:has(a[href=""]) {
    opacity: 0.4;
    filter: brightness(0.8);
    pointer-events: none;
}
.products-download p {
    margin-bottom: 0;
    line-height: 40px;
}
.products-download select{
	width: unset;
    padding-top: 0;
    padding-bottom: 0;
    line-height: 1.8;
	width: calc(100% - 7.5rem);
/* 	width:auto; */
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.products-download-grid {
    display: grid;
    grid-template: auto auto / 1fr 1fr;
    gap: 20px 10px;
}

.products-buying {
    border: solid 1px #ccc;
}
.products_add_cart {
    display: flex;
    align-items: center;
    gap: 10px;
}
.products_add_cart select {
    padding-top: 0;
    padding-bottom: 0;
    line-height: 40px;
    max-width: calc(100% - 320px);
    min-height: 50px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    margin: 0;
}
.products_add_cart.skuform input[type="submit"] {
    padding-inline: unset;
    min-width: 150px;
}
.products_add_cart .vk_button{
    margin-left:auto;
    margin-bottom:0;
}
.products_add_cart a.vk_button_link{
    min-width:150px;
}

figure.product_image img {
    aspect-ratio: 1;
    object-fit: contain;
    padding: 1em;
    border: solid 1px #eee;
}
.product_image{
	.slick-list{
	padding:0 !important;
}
& .slick-slide {
    margin: 0 !important;
}
& .slick-next {
    right: -22px !important;
}
& .slick-prev {
    left: -22px !important;
}
}
p.product_notes{
    font-size: var(--wp--preset--font-size--small);
	opacity: 0.8;
}

.product-variation-table {
    text-align: center;
}
figure.product-variationstable {
    overflow-x: auto;
    padding-bottom: 1rem;
}
figure.product-variationstable th,
figure.product-variationstable td {
    white-space: nowrap;
}
figure.product-variationstable th{
    font-size:12px;
}
.product-variationstable a {
    display: block;
    text-align: center;
}

/* ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
 *  複合検索
 * ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */
/* VK search UI改良版CSS　*/
@media (min-width: 992px) {
.vkfs__outer-wrap {
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    gap: 1rem;
    margin-bottom: 1rem;
    border-bottom: solid 1px #ddd;
    padding-bottom: 1rem;
	align-items:center;
}
.vkfs__outer-wrap .vkfs__label-name {
    min-width: 150px;
    display: flex;
    margin-bottom: 0;
    align-items: center;
    justify-content: center;
    align-content: center;
}
.vkfs__label-name-inner {
/*     writing-mode: vertical-rl;
    line-height: 1; */
}
.vkfs__input-form.vkfs__input-wrap {
    width: 100%;
}
}


.vkfs__input-wrap {
    justify-content: flex-start;
}
.vkfs__input-wrap label{
    border-radius:5px;
    transition:.3s;
    position: relative;
    display: flex;
    padding: .5em .5em;
}
.vkfs__input-wrap label:has(input[type=checkbox]:checked),
.vkfs__input-wrap label:has(input[type=radio]:checked),
.vkfs__input-wrap label:hover {
    background:#f0f0f0;
}
.vkfs input[type=checkbox],
.vkfs input[type=radio] {
    position: relative;
    top: unset;
    z-index: 2;
}
.vkfs__has-children .vkfs__children {
    margin-left: 1em;
    display: flex;
    flex-wrap: wrap;
    flex-direction: row;
    justify-content: flex-start;
    gap: 0 0.5em;
}
.vkfs__input-wrap li {
    padding: 0;
    margin-bottom: .5em;
}
.vkfs__input-wrap li:last-child {
    flex-grow:0 !important;
}
 
/* 複合検索・アイコン */
ul#vkfs_valve-purpose {
    display: grid;
    grid-template-columns: repeat(3,1fr);
    gap: 15px;
}
ul#vkfs_valve-purpose li {
    padding:0;
}
ul#vkfs_valve-purpose li label {
    border:solid 1px #eee;
    display: flex;
    flex-direction: column;
}

ul#vkfs_valve-purpose li label::before {
    content: '';
    display: block;
    height: 80px;
    background-size: contain;
    /* background-position:center center; */
    width: 80px;
}

ul#vkfs_valve-purpose li label input {
    display: none;
}

ul#vkfs_valve-purpose label:has(input[type=checkbox]:checked){
    border:solid 1px #aaa;
}
li.vkfs__level-0.termid-40 label::before {
	background-image: url("../../../wp-content/uploads/valve-purpose-1.png");
}
li.vkfs__level-0.termid-31 label::before {
	background-image: url("../../../wp-content/uploads/valve-purpose-2.png");
}
li.vkfs__level-0.termid-56 label::before {
	background-image: url("../../../wp-content/uploads/valve-purpose-8.png");
}
li.vkfs__level-0.termid-39 label::before {
	background-image: url("../../../wp-content/uploads/valve-purpose-3.png");
}
li.vkfs__level-0.termid-54 label::before {
	background-image: url("../../../wp-content/uploads/valve-purpose-6.png");
}
li.vkfs__level-0.termid-53 label::before {
	background-image: url("../../../wp-content/uploads/valve-purpose-5.png");
}
li.vkfs__level-0.termid-60 label::before {
	background-image: url("../../../wp-content/uploads/valve-purpose-7.png");
}
li.vkfs__level-0.termid-61 label::before {
	background-image: url("../../../wp-content/uploads/valve-purpose-4.png");
}
ul#vkfs_valve-purpose li.vkfs__level-0.termid-64 label::before {
	display:none;
}
ul#vkfs_valve-purpose li.vkfs__level-0.termid-64 label{
	padding-block: calc(40px + .5em);
}
/* 場合によっては　これも */ 
.vkfs__children li {
    flex-basis: unset;
}
button.vkfs_submit {
    position: sticky;
    bottom: 15px;
    z-index: 100;
}
button.vkfs_submit {
    max-width: 300px;
}

/* 複合検索accordion */
.vk_accordion.search__accordion　span.vk_accordion-toggle {
    background-color: #eee !important;
}
.vk_accordion.search__accordion .wp-block-vk-blocks-accordion-trigger {
	background: #eee;
    border: none;
}
.vk_accordion.search__accordion .vk_accordion-trigger .vk_accordion-toggle-open::after,
.vk_accordion.search__accordion .vk_accordion-trigger .vk_accordion-toggle-close::after {
    border-color: #111;
}

/* ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
 *  その他・追加機能
 * ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */
/* パーツごとにコメントアウトで注釈を入れてください。 */
/* ナビ右側　カート用ボタン */
.header-cart-button .vk_button {
  position: relative;
}
.header-cart-button span.vk_button_link_txt {
  white-space: nowrap;
}
@media (max-width: 1200px) { /*1200以下の場合*/
  .header-cart-button .vk_button .vk_button_link_before {
    margin-right: 0;
  }
  .header-cart-button .vk_button .vk_button_link {
    min-width: unset;
  }
  .header-cart-button .vk_button .vk_button_link_txt {
    font-size: 0;
  }
}
/* カート内　アイテム数バッジ */
.vk_button_badge.cart_num {
  background: #dd3333;
  color: #fff;
  font-size: 16px;
  font-weight: bold;
  text-align: center;
  border-radius: 99px;
  min-width: 24px;
  display: inline-block;
  padding: 0 0.5em;
  position: absolute;
  top: 0;
  right: 0;
  transform: translate(30%, -30%);
}
/* VKステップ横並び */
.vk_step-horizontal {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  justify-content: space-between;
  align-items: flex-start;
}
.vk_step-horizontal .vk_step_item {
  display: flex;
  flex-direction: column;
  padding: 0;
  width: 100%;
}
.vk_step.vk_step-horizontal .vk_step_item_dot {
  position: unset;
  order: 1;
  margin: auto;
  z-index: 3;
}
.vk_step-horizontal p {
  padding: 0 1rem;
}
.vk_step-horizontal .vk_step_item_dot.vk_step_item_style-outlined {
  background: #fff;
}
.vk_step.vk_step-horizontal .vk_step_item_content {
  order: 2;
  text-align: center;
}
.vk_step-horizontal .vk_step_item_lineStyle-default::before {
  z-index: 0;
  width: 100%;
  height: 5px;
  top: 25px;
  left: auto;
  right: -50%;
}
/* 商品オプション必須表示 */
.iopt_label.required::after {
  display: inline-block;
  content: "（必須）";
  color: red;
}
.single_option .option_form .iopt_label.required::after, table.item_option td .iopt_label.required::after {
  display: none;
}
/* 営業日カレンダー */
.widget_welcart_calendar h2 {
  display: none;
}
ul.ucart_calendar_body {
  padding: 0;
}
ul.ucart_calendar_body li {
  overflow: hidden;
  display: block;
  font-size: .8rem;
}
.this-month {
  width: 50%;
  float: left;
  margin-bottom: 10px;
}
.next-month {
  width: 50%;
  float: right;
  margin-bottom: 10px;
}
.this-month table {
  width: 90%;
  float: left;
  margin-bottom: 10px;
}
.next-month table {
  width: 90%;
  float: right;
  margin-bottom: 10px;
}
.usces_calendar {
  border: medium none;
}
.usces_calendar caption {
  text-align: left;
  margin: 0 0 10px 0;
  font-size: .8rem;
}
.usces_calendar th {
  background-color: #efefef;
}
.usces_calendar th, .usces_calendar td {
  padding: .5rem 0.1rem !important;
  text-align: center;
  border-left: medium none;
  border-right: medium none;
  border-top: medium none;
  border-bottom: 1px solid #ddd;
  font-size: .7rem;
}
.businessday {
  background-color: #ffe8e8 !important;
  color: #ff0000;
}
/* カレンダー調整 */
.usces_calendar th, .usces_calendar td {
  padding: 0.2rem;
}
/* ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
 * DL Seller 購入完了画面
 * ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */
.dllist {
  list-style: none;
  padding-left: 0;
}
table.dlseller {
  margin-bottom: 32px;
}