@charset "utf-8";
/*
Theme Name: Lightning Child
Template: lightning
Author:アートフレア株式会社
Version: 1.2
*/
/* 標準データ最終更新日：2025/04/14  */
/*
 * WEBフォントの読み込み（@import url('https://fonts～'); ）はHeader.phpで行う
*/
/* ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
 *  General　全体的な設定
 * ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */
/* :root設定、bodyへの上書き、カラー変数設定など */

:root {
  --en: 'Roboto Condensed', "Noto Sans JP", sans-serif;
}
/*英字フォント*/
.en {
  font-family: var(--en);
}


body {
  font-family: 
    "游ゴシック体",        /* macOS / iOS 用 (游ゴシック体) */
    "YuGothic",           /* macOS / iOS 用 (英語表記) */
    "游ゴシック Medium",   /* Windows 用 (Mediumウェイトを明示) */
    "Yu Gothic Medium",    /* Windows 用 (英語表記) */
    "游ゴシック",          /* フォールバック */
    "Yu Gothic",           /* フォールバック */
    sans-serif;            /* 最終フォールバック */
  
  /* Windowsでの掠れ対策：全体に500（Medium）を適用 */
  font-weight: 500;
}

/* 強調部分はBoldに */
b, strong {
  font-weight: 700;
}


/* ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
 *  Common 汎用パーツ系
 * ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */
/* 繰り返しボタン・見出し、余白設計など 汎用パーツへの上書き */

/*見出しサイズ*/
h2 {
  font-size: 2rem;
}
.fontsize-4rem .vk_heading_subtext {
  font-size: 4rem !important;
}
/*見出し > 逆順テキストの調整*/
.is-style-af-heading-reverse .vk_heading_subtext {
  line-height: 1.2em;
  margin-bottom: 0;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 2px;
}
/*見出し > 左にボーダー付き*/
.title-border-left {
  border-left: 4px solid currentColor;
  padding-left: 10px;
  line-height: 1.4em;
}
/*見出し >　上下に線*/
.is-style-vk-heading-solid_black {
  border-top: 3px solid var(--vk-color-primary) !important;
  border-bottom: 1px solid #ccc !important;
  padding: 1em 0 !important;
}
/*見出し >リーダー付き*/
.title-reader {
  position: relative !important;
  padding-left: 60px;
}
.title-reader::before {
  content: "";
  display: inline-block;
  width: 50px;
  height: 2px;
  background-color: currentColor;
  position: absolute;
  left: 0;
  top: .8em;
}
/*見出し > 上に線*/
.heading-border-top {
  position: relative !important;
  padding-top: .5em;
}
.heading-border-top::before {
  content: "";
  display: inline-block;
  width: 50px;
  height: 3px;
  background-color: var(--vk-color-primary);
  position: absolute;
  left: 0;
  top: 0;
}
/*ドットアイコン付き見出し*/
.title-dot {
  position: relative !important;
  padding-left: 20px;
}
.title-dot::before {
  content: "";
  display: inline-block;
  width: 10px;
  height: 10px;
  background-color: var(--vk-color-primary);
  position: absolute;
  left: 0;
  top: .5em;
}
/*横幅テキストに合わせる*/
.width-fit {
  width: fit-content;
}
/*ボタン*/
.vk_button .vk_button_link.btn, .editor-styles-wrapper .vk_button .vk_button_link.btn {
  padding: .8em 2em;
  border-radius: 0;
}
/*ボタン >　ホバーの下線を消す*/
.vk_button .has-text-color.vk_button_link-type-text:hover .vk_button_link_txt, .vk_button .has-text-color.vk_button_link-type-text:hover .vk_button_link_subCaption, .editor-styles-wrapper .vk_button .has-text-color.vk_button_link-type-text:hover .vk_button_link_txt, .editor-styles-wrapper .vk_button .has-text-color.vk_button_link-type-text:hover .vk_button_link_subCaption {
  text-decoration: none !important;
}
/*ボタン > フォント太さ*/
.vk_button .vk_button_link_caption, .editor-styles-wrapper .vk_button .vk_button_link_caption {
  word-break: initial;
  font-weight: 600;
}
/*ボタンホバー*/
.vk_button_link_caption, .vk_button_link_subCaption {
  z-index: 3 !important;
  position: relative;
}
.vk_button a {
  position: relative;
}
.vk_button a:hover {
  opacity: 1;
  box-shadow: none;
}
.vk_button a {
  border: medium none;
  overflow: hidden;
}
.vk_button a::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  background: #2b2b2b;
  width: 100%;
  height: 100%;
  transition: transform .3s cubic-bezier(0.8, 0, 0.2, 1) 0s;
  transform: scale(0, 1);
  transform-origin: right top;
  opacity: 0;
}
.vk_button a:hover::before {
  opacity: 1;
}
.vk_button a:hover:before {
  transform-origin: left top;
  transform: scale(1, 1);
}
.vk_button .vk_button_link-type-text::before {
  display: none;
}
/*テキストタイプのボタン*/
.vk_button .vk_button_link-type-text {
  transition: transform .3s;
  position: relative;
}
.vk_button .vk_button_link-type-text::after {
  background: var(--vk-color-primary);
  content: '';
  width: 100%;
  height: 2px;
  position: absolute;
  left: 0;
  bottom: -10px;
  transform-origin: right top;
  transform: scale(0, 1);
  transition: transform .3s;
}
.vk_button .vk_button_link-type-text:hover::after {
  transform-origin: left top;
  transform: scale(1, 1);
}
/*ボタンホバーの影を消す*/
.vk_button-color-custom a:hover, .editor-styles-wrapper .vk_button-color-custom a:hover {
  box-shadow: none !important;
}
/*ボタンアイコン縮小*/
.vk_button .vk_button_link-type-text:hover i {
  transform: scale(.8);
  transition: transform .3s;
}
.vk_button .vk_button_link i {
  transition: transform .3s;
}
.vk_button .btn:hover i {
  transform: scale(.8);
  transition: transform .3s;
}
/*画像ホバーズームイン*/
figure.hover-move, .hover-move figure, .wp-block-cover.hover-move {
  overflow: visible;
}
.hover-move:hover img {
  transform: scale(1.1);
  transition: transform .6s;
}
.hover-move img {
  transition: transform .6s;
}
/* リンクエリア拡大 */
.stretched-linkitem {
  position: relative !important;
}
.stretched-linkitem a::after {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1;
  pointer-events: auto;
  content: "";
  background-color: rgba(0, 0, 0, 0);
}
.stretched-linkitem h2, h3, h4, h5, h6 {
  position: unset !important;
}
.stretched-linkitem a {
  text-decoration: none;
  color: #111;
}
.stretched-linkitem img {
  transition: transform .3s;
}
.stretched-linkitem:hover img {
  transform: scale(1.1);
  transition: transform .3s;
}
.stretched-linkitem a:hover {
  color: var(--vk-color-primary);
}
/*グリッドカラムカード hoverの透過を消す*/
.vk_gridcolcard_item a.vk_gridcolcard_item_container:hover {
  opacity: 1;
}
/*テーブルのフォントサイズリセット*/ :where(:not(.wp-block-table)) > table :is(th, td) {
  font-size: unset !important;
}
/*余白調整*/
.gap-none {
  gap: 0;
}
.gap-4em {
  gap: 4em;
}
.gap-3em {
  gap: 3em;
}
.gap-2em {
  gap: 2em;
}
.padding-none {
  padding: 0 !important;
}
/*横幅コンテンツに応じて中央揃え*/
.fit-content {
  width: fit-content;
  margin-inline: auto;
}
/*画像白反転*/
.img-white img {
  filter: contrast(0) brightness(3);
}
/*区切り線の太さ*/
.wp-block-separator {
  border-top: 1px solid;
}
/* ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
 *  Header ヘッダーまわり
 * ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */
/* ヘッダーウィジェット・グローバルナビ */
.site-header .container {
  max-width: 100%;
  width: 100%;
  padding-left: 1em;
  padding-right: 0;
}
.site-header-logo img {
  max-height: 55px !important;
}
.header_nav_search_container {
  min-width: 60px !important;
  margin-left: 40px !important;
}
/* ヘッダー固定 */
body {
  overflow-x: unset !important;
  display: flex;
  flex-direction: column;
}
.device-pc #site-header {
  position: sticky;
  top: 0;
}
.logged-in #site-header {
  top: 32px;
}
div#mega-menu-wrap-global-nav {
  margin-left: auto;
}
/* HOMEだけFVに透過にする */
.home header#site-header {
  position: fixed;
  transition: .5s;
  background-color: #fff;
}
.home:not(.scrolled) header#site-header:not(:hover) {
  background-color: transparent;
  box-shadow: none;
  transition: .5s;
}
body:not(.home) .site-header {
  background-color: #fff;
  transition: .5s;
}
/* topのみスクロールしていない時は透過で文字反転 */
.home header#site-header {
  position: fixed !important;
  top: 0;
  transition: .3s;
}
.home.scrolled header#site-header {
  background: #fff;
}
.logged-in:not(.home) #site-header {
  top: 32px;
}
.home:not(.scrolled) #site-header {
  background: #fff;
  border: none;
}
.global-nav-name, #mega-menu-wrap-global-nav #mega-menu-global-nav > li.mega-menu-item > a.mega-menu-link, .site-header-logo span, .header-top-description {
  transition: transform .3s;
}
.home:not(.scrolled) header#site-header:not(:hover) .global-nav-name, .home:not(.scrolled) header#site-header:not(:hover) #mega-menu-wrap-global-nav #mega-menu-global-nav > li.mega-menu-item > a.mega-menu-link, .home:not(.scrolled) header#site-header:not(:hover) .site-header-logo span, .home:not(.scrolled) header#site-header:not(:hover) .header-top-description {
  color: #fff;
  transition: transform .3s;
}
.home:not(.scrolled) header#site-header:not(:hover) h1.site-header-logo img {
  filter: contrast(0) brightness(3);
}
.home:not(.scrolled) .global-nav-list > li.current-menu-item > a {
  border-bottom: 2px solid #fff;
}
/* グローバルナビ */
.global-nav-list {
  gap: 2em !important;
}
.global-nav-list > li .global-nav-name {
  font-size: .9rem;
}
.site-header--trans--true .global-nav-list > li > a {
  color: #111 !important;
}
.global-nav-list > li > a {
  transition: transform .3s;
  padding: 10px 0 !important;
  border-bottom: 3px solid transparent;
}
.global-nav-list > li > a:hover, .global-nav-list > li.current-menu-item > a {
  color: var(--vk-color-primary) !important;
  border-bottom: 2px solid var(--vk-color-primary);
}
.global-nav-list > li:first-child::before {
  display: none;
}
.global-nav-list > li > ul.sub-menu {
  background-color: var(--vk-color-custom-1);
}
/*言語スイッチ*/
.head-lang {
  background-color: #f5f5f5;
  border-radius: 50px;
  margin: 0 15px 0 0 !important;
  padding: 0;
  display: flex;
  width: 90px;
  gap: 0;
}
.head-lang li {
  padding: .4em .4em .4em .0;
  margin: 0;
  list-style: none;
  font-size: .8rem;
  font-family: var(--en);
  width: 45px;
  text-align: center;
  font-weight: 600;
}
.head-lang li a {
  text-decoration: none;
}
.head-lang li.active {
  background-color: var(--vk-color-primary);
  border-radius: 50px;
  color: #fff;
  padding: .4em 0;
  width: 45px;
  text-align: center;
}
/*ヘッダーお問い合わせボタン*/
.head-btn {
  margin: 0 !important;
}
.head-btn .btn {
  border-radius: 0;
  display: flex;
  flex-wrap: wrap;
  flex-direction: column-reverse;
  padding: 1.8em 1em !important;
  min-width: 150px;
  width: 150px;
  margin: 0 auto !important;
}
.head-btn .vk_button_link_caption {
  flex-wrap: wrap;
}
.head-btn .vk_button_link_caption i {
  margin: 0;
  font-size: 1.4rem;
}
.head-btn .vk_button_link_caption .vk_button_link_txt {
  font-weight: 600;
  font-size: .9rem !important;
  width: 100%;
  white-space: nowrap;
}
/* ブラウザ幅が狭い時の調整 */
@media (min-width: 991px) and (max-width: 1500px) {
  .site-header-logo img {
    aspect-ratio: 4 / 5;
    object-fit: cover;
    object-position: center left;
  }
  div#mega-menu-wrap-global-nav {
    margin-left: auto;
    margin-right: auto;
  }
}
@media (max-width: 1150px) {
  ul.wp-block-list.head-lang {
    display: none;
  }
  #mega-menu-wrap-global-nav #mega-menu-global-nav > li.mega-menu-item > a.mega-menu-link {
    font-size: 14px;
  }
  .head-btn .vk_button_link_caption .vk_button_link_txt {
    font-size: 14px !important;
  }
}
@media (max-width: 991px) {
  div#mega-menu-wrap-global-nav {
    display: none;
    visibility: hidden;
  }
}

/* megamenu */
.megamenu-title-en {
    display: block;
    font-size: 3rem;
    font-family: var(--en);
    font-weight: bold;
    color: var(--vk-color-primary);
}
.megamenu-title-ja {
    font-size: 1.25rem;
    font-weight: 800;
    letter-spacing: 0.08em;
    color: #999;
}

.mega-li__product ul.mega-sub-menu img {
    aspect-ratio: 4 / 3;
    width: 100%;
    height: auto;
    object-fit: cover;
    margin-bottom: 0;
}



/* ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
 *  Footer フッターまわり
 * ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */
/* フッターウィジェット、フッターロゴ、コピーライト */
/*ページ下部CTA*/
.site-body-bottom {
  border-top: 1px solid #eee;
}
.home .site-body-bottom {
  border-top: medium none;
}
/*フッターのフォントサイズ*/
.site-footer {
  --vk-size-text-sm: 15px;
}
/* フッターナビ */
#footer-nav li a {
  transition: transform .3s;
  text-decoration: none !important;
  text-underline-offset: 0.3em;
}
ul#footer-nav li a:hover {
  color: #fff;
  text-decoration: underline !important;
}
ul#footer-nav {
  columns: 3;
  column-width: 33%;
  margin: 15px 0 0 0;
  padding: 0;
  gap: 5%;
}
ul#footer-nav li {
  break-inside: avoid;
  list-style: none;
  position: relative;
  padding: 0;
  margin: 0;
  font-weight: 600;
}
ul#footer-nav li > ul {
  padding: 0;
  margin: 5px 0 0 0;
}
ul#footer-nav li li {
  list-style: none;
  font-weight: 500;
}
ul#footer-nav li > ul li {
  position: relative;
  padding: 0 0 5px 15px;
  font-size: .8rem;
  margin: 0;
  line-height: 1.4em;
}
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;
  margin-bottom: 20px;
}
.copyright {
  font-size: .8rem;
  color: #999;
  font-family: var(--en);
}
/*コピーライトエリアを非表示*/
.site-footer-copyright {
  display: none;
}
/* ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
 *  Toppage トップページ
 * ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */
/* パーツごとにコメントアウトで注釈を入れてください。 */
/*FV*/
.fv-copy {
  position: absolute;
  z-index: 1;
  left: 0;
  right: 0;
  margin: 0 auto;
  top: 30%;
  width: fit-content;
}
/*グリッドカラムカード*/
.grid-link .wp-block-cover__inner-container {
  width: 100% !important;
}
.grid-link .wp-block-vk-blocks-gridcolcard-item {
  margin-bottom: 1em;
}
/*グリッドカラムカード >ホバーでグラデーションを消す*/
.grid-link .wp-block-vk-blocks-gridcolcard-item .wp-block-cover .wp-block-cover__background {
  transition: opacity .6s ease, background 1s ease;
}
.grid-link .wp-block-vk-blocks-gridcolcard-item:hover .wp-block-cover .wp-block-cover__background {
  opacity: 0;
  transition: transform .6s;
}
/*グリッドカラムカード >ホバーのテキスト色*/
.grid-link .wp-block-vk-blocks-gridcolcard-item:hover p, .grid-link .wp-block-vk-blocks-gridcolcard-item:hover i {
  color: #111;
}
/*TOP > 会社情報*/
.top-company {
  padding: 1em 0;
}
.top-company::after {
  content: "";
  display: inline-block;
  width: 60%;
  height: 100%;
  top: 120px;
  background-color: var(--vk-color-custom-1);
  position: absolute;
  left: 0;
  bottom: 0;
}
.top-company .contents-item, .top-company .contents-item p {
  color: #fff;
}
.top-company .contents-item ul {
  padding: 0;
  margin: 0 0 20px 0;
}
.top-company .contents-item ul li {
  color: #fff;
  list-style: none;
  border-bottom: 1px solid #989898;
  margin: 0;
  padding: 0.5em 1em 0.5em 0;
  position: relative;
}
.top-company .contents-item ul li::before {
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  content: "\f0da";
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  font-size: 0.9em;
  line-height: 1;
}
.top-company .contents-item ul li a {
  color: #fff;
  text-decoration: none;
  display: block;
  transition: padding-left 0.3s;
  padding-right: 1.5em;
}
.top-company .contents-item ul li a:hover {
  padding-left: 10px;
}
/*TOP > スペシャルコンテンツ*/
.top-contents::after {
  content: "";
  display: inline-block;
  width: 100%;
  height: 50%;
  background-color: var(--vk-color-custom-1);
  position: absolute;
  left: 0;
  bottom: 0;
}
/* ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
 *  Pageheader, Breadcrumb 下層ページヘッダー・パンくずリスト
 * ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */
/* 下層ページのページヘッダー、パンクズ設定 */
/*ページヘッダー > グラデーション*/
.page-header::before {
  background: #1a4861;
  background: linear-gradient(90deg, rgba(26, 72, 97, 1) 0%, rgba(22, 94, 131, 1) 35%);
}
/*ページヘッダー > ページ名*/
.page-header .page-header-inner {
  display: flex;
  flex-wrap: wrap;
  flex-direction: column-reverse;
  left: 0;
  bottom: 0;
  margin: 0;
  padding: 2em 3.5em;
}
.page-header .page-header-inner .page-header-subtext {
  font-size: 5rem;
  margin-bottom: 0.2em;
  font-weight: 400;
  font-family: var(--en);
  text-transform: uppercase;
  letter-spacing: 2px;
}
.page-header .page-header-inner .page-header-title {
  font-size: 1.3rem;
}
/*パンくず*/
.breadcrumb .container {
  max-width: 100%;
  padding: 1em 0 1em 4.8em;
  border-bottom: 1px solid #eee;
  border-top: 1px solid #eee;
  margin-bottom: 0;
}
.breadcrumb-list {
  margin: 0;
  padding: 15px 0 !important;
  color: #999;
  font-weight: 600;
}
.breadcrumb-list a {
  color: var(--vk-color-primary);
  text-decoration: none;
}
/* ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
 *  Page 下層ページ
 * ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */
/* ページごと、パーツごとにコメントアウトで注釈を入れてください。 */
/*会社概要 > テーブル*/
.profile-table table {
  border: medium none;
  border-bottom: 1px solid #ddd;
}
.profile-table th {
  border-top: 1px solid var(--vk-color-primary) !important;
  border-right: medium none !important;
  border-bottom: medium none !important;
  border-left: medium none !important;
  padding: 1.5em 0 !important;
  vertical-align: top !important;
  color: var(--vk-color-primary);
}
.profile-table td {
  border-top: 1px solid #ddd !important;
  border-right: medium none !important;
  border-bottom: medium none !important;
  border-left: medium none !important;
  padding: 1.5em !important;
  background: none !important;
}
/*会社沿革 > タイムライン2カラム */
.timeline-2col {
  --time-width: 150px;
}
.timeline-2col > div {
  padding-top: 2em !important;
}
.timeline-2col > div:nth-child(even) {
  background-color: var(--vk-color-custom-2);
}
.timeline-2col.vk_timeline .vk_timeline_item {
  min-height: 50px;
  padding-left: calc(var(--time-width) + 40px);
}
.timeline-2col.vk_timeline .vk_timeline_item_lineStyle-default::before {
  left: var(--time-width);
  top: 0px;
}
.timeline-2col.vk_timeline .vk_timeline_item_style {
  left: calc(var(--time-width) - 6px);
  top: 2em;
  background: #fff;
}
.timeline-2col.vk_timeline .timeline-end {
  padding-top: 0;
}
.timeline-2col.vk_timeline .vk_timeline_item_caption {
  position: absolute;
  left: 1em;
  top: .7em;
  width: calc(var(--time-width) - 20px);
  font-variant: tabular-nums;
  font-feature-settings: "tnum";
  font-size: 2rem;
  font-weight: 600;
  opacity: 1;
  margin: 0;
  color: var(--vk-color-primary);
  font-family: var(--en);
}
.timeline-2col.vk_timeline .vk_timeline_item_content {
  transform: translateY(-0.5em);
}
.timeline-2col.vk_timeline .timeline-first::before {
  top: 2.5em;
}
.timeline-2col.vk_timeline .timeline-end::before {
  height: 2.5em;
}
.history {
  --time-width: 200px !important;
}
.history.vk_timeline .vk_timeline_item_caption {
  font-size: 3rem;
  top: .4em;
}
.history.vk_timeline .vk_timeline_item_style {
  top: 2.5em;
}
/*グッドデザイン > その他の受賞リスト*/
ul.awards-list {
  padding: 0;
  margin: 0;
}
.awards-list li {
  list-style: none;
  font-weight: 600;
  line-height: 1.6em;
  border-bottom: 1px solid #ddd;
  padding: 1em 0 !important;
  margin: 0 !important;
}
.awards-list li mark {
  font-size: 2rem;
}
.basic-table table th{
  border: 1px solid #ccc;
  background-color: var(--vk-color-custom-1) !important;
  color: #fff !important;
}
.basic-table table td{
  border: 1px solid #ccc;
}
/*カミソリ刃の開発歴 > タイムライン中央揃え*/
.timeline-center .vk_timeline_item_lineStyle-default::before {
  left: 0;
  right: 0;
  margin: 0 auto;
  height: 100%;
}
.timeline-center .vk_timeline_item_style {
  left: 0;
  right: 0;
  top: 20px !important;
  margin: 0 auto;
}
.timeline-center .wp-block-columns {
  gap: 5em !important;
}
.timeline-center .vk_timeline_item {
  padding: 0 !important;
}
/*横並び逆順*/
.reverse {
  flex-direction: row-reverse;
}
/*製品カテゴリー*/
.product-category-link .wp-block-columns, .product-category-link figure, .product-category-link figure img {
  margin: 0 !important;
}
.product-category-link .wp-block-columns {
  gap: 1em;
}
.product-category-link .wp-block-columns .wp-block-column p {
  font-size: 1.2rem;
  font-weight: 600;
}
.product-category-link .vk_gridcolcard_item {
  transition: all 0.3s;
}
.product-category-link .vk_gridcolcard_item:hover {
  background-color: var(--vk-color-primary);
  border: 2px solid var(--vk-color-primary) !important;
}
.product-category-link .wp-block-vk-blocks-gridcolcard-item:hover p, .product-category-link .wp-block-vk-blocks-gridcolcard-item:hover i {
  color: #fff;
}
/*カミソリの選び方 >注目製品*/
.recommend {
  position: relative !important;
}
.recommend::before {
  content: "";
  display: inline-block;
  width: 50px;
  height: 5px;
  position: absolute;
  left: 2em;
  top: 0;
  background-color: var(--vk-color-primary);
  z-index: 1;
}
.recommend-item p {
  font-size: 1.2rem !important;
}
/*豆知識の番号装飾*/
.num {
  background-color: var(--vk-color-primary);
  color: #fff;
  font-weight: 600;
  padding: .4em 1em;
  width: fit-content;
  border-radius: 50px;
  line-height: 1.4em;
  margin: 0;
}
.num::before {
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  content: "\f0eb";
  margin-right: 10px;
}
/*スライダー*/
.swiper-pagination-bullet {
  width: 10px !important;
  height: 10px !important;
  border-radius: 50px !important;
}
.vk_slider .swiper-button-next, .vk_slider .swiper-button-prev {
  background-color: #111 !important;
  border-radius: 50px !important;
}
.swiper-button-next::after, .swiper-button-prev::after {
  color: #fff !important;
  font-size: .8rem !important;
}
/*よくあるご質問*/
.is-style-vk_faq-bgfill-circle .vk_faq_title::before, .is-style-vk_faq-bgfill-square .vk_faq_title::before, .is-style-vk_faq-bgfill-rounded .vk_faq_title::before {
  background-color: var(--vk-color-primary) !important;
}
/*製品情報 > テーブル*/
.product-table table {
  border: medium none;
}
.product-table table th {
  text-align: center !important;
  background-color: var(--vk-color-custom-2);
  border: 1px solid #ccc !important;
}
.product-table table td {
  border: 1px solid #ccc !important;
  text-align: center !important;
}

/* ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
 *  Archive　ブログ一覧ページ
 * ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */
/* パーツごとにコメントアウトで注釈を入れてください。 */
/*投稿リスト1行タイプ*/
.vk_post {
  padding: 1rem 15px !important;
}
.postListText_date {
  font-size: .9rem;
  font-weight: 600;
}
.postListText_title {
  font-size: .9rem;
}
.postListText_title a {
  text-decoration: none !important;
}
.postListText_singleTermLabel {
  min-width: 100px;
  margin-top: 6px;
}
.postListText_singleTermLabel_inner {
  border-radius: 0;
}
/*投稿カードタイプ*/
.card-post .card-body {
  flex: 1 1 auto;
  min-height: 1px;
  padding: 1em 0 0 0;
}
/*投稿サイドメニュー*/
.sub-section .sub-section-title, .site-body-bottom .sub-section-title {
  padding: .8em;
  background-color: var(--vk-color-custom-1);
}
.veu_postList .postList_title {
  font-size: .9rem;
}
.veu_postList .postList a:hover {
  text-decoration: none;
}
.sub-section .widget_archive > ul li a, .sub-section .widget_nav_menu > ul li a {
  border: none;
  padding: 1em 0;
  color: unset;
}
.sub-section .widget_archive > ul li:not(:last-child), .sub-section .widget_nav_menu > ul li:not(:last-child) {
  border-bottom: 1px solid #eee;
}
.localNavi {
  border-bottom: 1px solid #eee;
}
.localNavi > li {
  position: relative;
  padding-left: 20px;
}
.localNavi li::before {
  position: absolute;
  content: '\f0da';
  font-family: 'Font Awesome 5 Free';
  font-weight: 600;
  padding-right: .2em;
  left: 0;
  top: 18px;
  font-size: .9rem;
  color: #999;
}
.localNavi li a:hover {
  text-decoration: none !important;
}
.sub-section .widget_archive > ul li a:hover, .sub-section .widget_nav_menu > ul li a:hover {
  text-decoration: underline;
  background: none;
}
.sub-section .widget_nav_menu ul.children {
  border-top: 1px solid #eee;
}
.sub-section .widget_nav_menu ul.children a {
  padding-left: 1em;
}
.sub-section ul li.current-cat a {
  background-color: transparent !important;
}
.entry-header .entry-title, .archive-header-title {
  margin-bottom: var(--vk-margin-meta);
  font-size: 2rem;
  position: relative;
  z-index: 0;
  padding: .8em 0;
}
.entry-header .entry-title::before, .archive-header-title::before {
  content: "";
  display: inline-block;
  width: 50px;
  height: 2px;
  position: absolute;
  left: 0;
  top: 0;
  background-color: var(--vk-color-primary);
}
/* ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
 * お知らせページ
 * ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */
/* お知らせサイドバー調整 */
.sub-section-title {
  color: #fff !important;
}
/* 製品カテゴリー非表示 */
.blog #block-51 {
  display: none;
}
.products-cate-widget {
  padding: 0 !important;
  margin: 0;
}
.products-cate-widget li {
  list-style: none;
  margin: 0;
  font-size: var(--vk-size-text-sm);
  position: relative;
  padding-left: 20px;
  border-bottom: 1px solid #eee;
}
.products-cate-widget li::before {
  position: absolute;
  content: '\f0da';
  font-family: 'Font Awesome 5 Free';
  font-weight: 600;
  padding-right: .2em;
  left: 0;
  top: 18px;
  font-size: .9rem;
  color: #999;
}
.products-cate-widget li a {
  display: block;
  border: none;
  padding: 1em 0;
  color: unset;
  text-decoration: none;
}
/* ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
 *  Single　ブログ詳細ページ
 * ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */
/* パーツごとにコメントアウトで注釈を入れてください。 */

/*製品情報 > タクソミー*/
.taxonomy-product-tag {
  margin-bottom: 3rem;
}
.taxonomy-product-tag a[rel="tag"] {
    background-color: #fff;
    padding: 0.5em;
    margin-right: 5px;
    font-size: .8rem;
    position: relative;
    text-decoration: none !important;
    display: inline-grid;
    width: 100px;
    height: 100%;
    padding-top: 110px;
    text-align: center;
    align-items: end;
    background-size: 90px;
    background-position: 5px 5px;
    background-origin: padding-box;
    background-repeat: no-repeat;
	transition:.3s;
}
.taxonomy-product-tag a:hover {
    filter: grayscale(1);
    opacity: 0.7;
}
span.wp-block-post-terms__separator {
    display: none;
}
.taxonomy-product-tag a[href$="/double/"] {
	background-image: url("../../../wp-content/uploads/double.png");
}
.taxonomy-product-tag a[href$="/smoother/"] {
	background-image: url("../../../wp-content/uploads/smoother.png");
}
.taxonomy-product-tag a[href$="/swivel/"] {
	background-image: url("../../../wp-content/uploads/swivel.png");
}
.taxonomy-product-tag a[href$="/light-handle/"] {
	background-image: url("../../../wp-content/uploads/light-handle.png");
}
.taxonomy-product-tag a[href$="/long-handle/"] {
	background-image: url("../../../wp-content/uploads/long-handle.png");
}
.taxonomy-product-tag a[href$="/2way/"] {
	background-image: url("../../../wp-content/uploads/2way.png");
}
.taxonomy-product-tag a[href$="/mini-10/"] {
	background-image: url("../../../wp-content/uploads/mini-10.png");
}
.taxonomy-product-tag a[href$="/mini-15/"] {
	background-image: url("../../../wp-content/uploads/mini-15.png");
}
.taxonomy-product-tag a[href$="/mini-20/"] {
	background-image: url("../../../wp-content/uploads/mini-20.png");
}
.taxonomy-product-tag a[href$="/foldable/"] {
	background-image: url("../../../wp-content/uploads/foldable.png");
}
.taxonomy-product-tag a[href$="/safety/"] {
	background-image: url("../../../wp-content/uploads/safety.png");
}
.taxonomy-product-tag a[href$="/knob/"] {
	background-image: url("../../../wp-content/uploads/knob.png");
}

.taxonomy-product-tag a[href$="/l-shape/"] {
	background-image: url("../../../wp-content/uploads/l-shape.png");
}
.taxonomy-product-tag a[href$="/t-shape/"] {
	background-image: url("../../../wp-content/uploads/t-shape.png");
}
.taxonomy-product-tag a[href$="/non-guard/"] {
	background-image: url("../../../wp-content/uploads/non-guard.png");
}
.taxonomy-product-tag a[href$="/body/"] {
	background-image: url("../../../wp-content/uploads/body.png");
}
.taxonomy-product-tag a[href$="/eyebrow/"] {
	background-image: url("../../../wp-content/uploads/eyebrow.png");
}
.taxonomy-product-tag a[href$="/mini/"] {
	background-image: url("../../../wp-content/uploads/mini.png");
}
.taxonomy-product-tag a[href$="/face/"] {
	background-image: url("../../../wp-content/uploads/face.png");
}
.taxonomy-product-tag a[href$="/fixed/"] {
	background-image: url("../../../wp-content/uploads/fixed.png");
}


.entry-meta-data-list.entry-meta-data-list--product-tag {
    display: none;
}

.entry-meta-data-list dt {
    font-size: 1rem;
}

.entry-meta-data-list dd {
    font-size: 1rem;
}

.entry-meta-data-list.entry-meta-data-list--product-category {
    margin-top: 7rem;
}


article.post figure.wp-block-image {
    max-width: 800px;
    margin: auto;
}


/* 製品アーカイブ　＞　カード一覧 */
.vk_post.type-product .vk_post_imgOuter:before {
    padding-top: 100%;
}

/* ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
 *  その他・追加機能
 * ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */
/* ファンシーボックスに疑似要素で拡大ボタン */
a.fancybox {
  position: relative;
}
a.fancybox::after {
  position: absolute;
  bottom: 5px;
  right: 5px;
  font-size: 16px;
  color: #333;
  background: rgb(239 239 239 / 50%);
  width: 40px;
  line-height: 40px;
  text-align: center;
  padding: 0;
  border-radius: 99px;
  content: "\f00e";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
}
/* 	円グラフ自動生成 */ :root {
  --pie1: #ed724c;
  --pie2: #efa81c;
  --pie3: #f3e03b;
  --pie4: #94c45d;
  --pie5: #4fa7cf;
  --pie6: #6672b2;
  --pie8: #dd3f3b;
}
.piechart_legend p::before {
  content: '■ ';
}
.piechart_legend p:nth-child(1)::before {
  color: var(--pie1)
}
.piechart_legend p:nth-child(2)::before {
  color: var(--pie2)
}
.piechart_legend p:nth-child(3)::before {
  color: var(--pie3)
}
.piechart_legend p:nth-child(4)::before {
  color: var(--pie4)
}
.piechart_legend p:nth-child(5)::before {
  color: var(--pie5)
}
.piechart_legend p:nth-child(6)::before {
  color: var(--pie6)
}
.piechart_legend p:nth-child(7)::before {
  color: var(--pie7)
}
.piechart_legend p:nth-child(8)::before {
  color: var(--pie8)
}
.piechart {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1rem;
}
.piechart_circle {
  aspect-ratio: 1;
  width: 120px;
  border-radius: 50%;
}
.piechart_legend p {
  line-height: 1.7;
  margin: 0;
}
.wrap2 {
  container-type: inline-size;
}
.piechart_legend {
  display: block;
  font-size: 14px;
}
@container (min-width: 250px) {
  .piechart_legend {
    display: grid;
    grid-template: auto / 1fr 1fr;
    gap: 0 1em;
  }
}