@charset "utf-8";
/*
 * resposive.css は 991px 以下のデバイスへと反映されます。
 * 
 * ブレイクポイントは標準のLightningテーマおよびBootstrapの理念に基づき
 * sm: 576px　md: 768px　lg: 992px　xl: 1200px　となっているので、それに準じてください。
 * 
*/
/* ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
 *  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;
}
html {
  margin-top: unset !important;
}
.admin-bar #wpadminbar {
  visibility: hidden;
}
.admin-bar .vk-mobile-nav-menu-btn {
  top: 5px;
}
/* ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
 *  Common 汎用パーツ系
 * ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */
/* 繰り返しボタン・見出し、余白設計など 汎用パーツへの上書き */
h2 {
  font-size: 1.8rem;
}
/*余白調整*/
.sp-gap-none {
  gap: 0 !important;
}
.gap-3em {
  gap: 1em;
}
.gap-4em {
  gap: 1em;
}
.order1 {
  order: 1;
}
.order2 {
  order: 2;
}
:where(.wp-block-columns.is-layout-flex) {
  gap: 0;
}
/*画像を白にする*/
.img-white{
  -webkit-filter: brightness(0) invert(1);
  filter: brightness(0) invert(1);
}
/* ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
 *  Header, Hamburger ヘッダーまわり・ハンバーガーナビ
 * ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */
header#site-header {
  min-height: calc(44px + 5px + 5px);
  display: flex;
  align-items: center;
  top: unset;
}
#site-header-container .site-header-logo {
  margin: 0;
  padding: .2em;
}
.site-header-logo img {
  max-height: 30px !important;
}
/*ハンバーガー*/
div#vk-mobile-nav-menu-btn {
  background: none;
  background-color: var(--vk-color-primary);
  border: none;
  border-radius: 5px;
  top: 5px;
  right: 5px;
}
div#vk-mobile-nav-menu-btn::after {
  content: '\f0c9';
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  font-size: 20px;
  color: #fff;
  position: absolute;
  top: 0;
  left: 0;
  line-height: 44px;
  width: 44px;
  text-align: center;
  text-indent: 0;
}
div#vk-mobile-nav-menu-btn.menu-open::after {
  content: '\f00d';
}
#vk-mobile-nav {
  background-color: var(--vk-color-primary);
  padding-top: 25px !important;
}
.vk-menu-acc .acc-btn {
  border: medium none !important;
  opacity: .5;
}
.vk-mobile-nav-menu-outer .vk-menu-acc .acc-btn {
  border: medium none;
  background-size: 2em;
  height: 100%;
  top: 0;
  right: 0;
  width: 44px;
  background-position: right .5em;
}
.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;
}
.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-menu-btn.position-right {
  right: 10px;
  border-radius: 50px;
  top: 10px;
}
.vk-menu-acc .acc-btn {
  background: var(--vk-menu-acc-icon-open-white-bg-src) center 50% no-repeat;
}
.vk-menu-acc .acc-btn-close {
  background: var(--vk-menu-acc-icon-close-white-bg-src) center 50% no-repeat;
}
.vk-mobile-nav-menu-btn {
  border: medium none !important;
  top: 15px;
}
.vk-mobile-nav-menu-btn.menu-open {
  border: medium none !important;
}
.vk-mobile-nav {
  padding-top: 65px !important;
  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-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;
}
.vk-mobile-nav-widget {
  color: #fff;
}
/*固定ボタン*/
.mobile-fix-nav .mobile-fix-nav-menu {
  padding:0 !important;
  align-items:stretch !important;
  opacity:1 !important;
}
.mobile-fix-nav .mobile-fix-nav-menu li {
  width: 50% !important;
  border-right: 1px solid #fff;
}
.mobile-fix-nav .mobile-fix-nav-menu li:last-child {
  border-right: medium none;
}
.mobile-fix-nav .mobile-fix-nav-menu li a{
  padding: 1em;
}
/* ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
 *  Footer フッターまわり
 * ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */
/* フッターウィジェット、フッターロゴ、コピーライト */
.footer-sitemap{
  text-align: center;
}
.copyright{
	text-align: center !important;
}
/* ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
 *  Toppage トップページ
 * ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */
/*FV*/
.fv {
  align-items: flex-start !important;
}
.fv-copy {
  font-size: 2.6rem !important;
  text-align: center;
  padding-top: 2em;
  line-height: 1.6em !important;
}
/*グリッドカラム*/
.grid-link {
  gap: 1.5% 2% !important;
}
.grid-link .wp-block-vk-blocks-gridcolcard-item {
  margin: 0 3px;
}
.grid-link .wp-block-group {
  display: block;
}
/*CTA*/
.cta {
  padding-top: 2.5em !important;
  padding-bottom: 2.5em !important;
  text-align: center !important;
}
.cta .wp-block-columns{
  gap: 0.5em !important;
}
.cta .vk_heading_title {
  text-align: center;
}
.cta .wp-block-column {
  padding: 0 !important;
  border: medium none;
}
.tel a{
  text-decoration: none !important;
	color: #fff;
}
/* ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
 *  Pageheader, Breadcrumb 下層ページヘッダー・パンくずリスト
 * ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */
/* 下層ページのページヘッダー、パンクズ設定 */
.page-header {
  min-height: 15rem !important;
}
.page-header .page-header-title {
  font-size: 2rem;
}
/* ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
 *  Page 下層ページ
 * ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */
/* ページごと、パーツごとにコメントアウトで注釈を入れてください。 */
/*左カラム固定*/
.position-sticky-column {
  position: relative;
  top: 0;
  align-self: flex-start;
  margin-bottom: 2em !important;
}
/*事業内容 > 3カラムのリスト*/
.list-2col {
  display: grid;
  grid-template-columns: repeat(1, auto);
  gap: 0 15px;
  margin: 0 !important;
}
.list-3col {
  display: grid;
  grid-template-columns: repeat(1, auto);
  gap: 0 15px;
  margin: 0 !important;
}
.list-2col li, .list-3col li{
  list-style: disc;
  padding: 0;
  margin:.2em 0;
}
/*お問い合わせの流れ*/
.flow-item .icon{
  margin: 0;
  padding-left: 20px;
}
.flow-item .wp-block-group{
  background-color: var(--vk-color-custom-3);
  width: 100%;
  justify-content: flex-start;
  padding: .5em;
}
/* ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
 *  Archive　ブログ一覧ページ
 * ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */
/* パーツごとにコメントアウトで注釈を入れてください。 */
/* ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
 *  Single　ブログ詳細ページ
 * ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */
/* パーツごとにコメントアウトで注釈を入れてください。 */
/* ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
 *  その他・追加機能
 * ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */
/* パーツごとにコメントアウトで注釈を入れてください。 */