/*
Theme Name: Lightning 子テーマ
Template: lightning
*/

/* ================================================================================

  base

================================================================================ */
:root {

  /* font-family
  ------------------------------------------------*/
  --font-preset: Verdana,"Noto Sans JP","ヒラギノ角ゴ ProN","Hiragino Kaku Gothic ProN","メイリオ",Meiryo,"ＭＳ Ｐゴシック","MS PGothic",sans-serif;
  --font-special: "Zen Kaku Gothic New", sans-serif;
  /* --font-en: "Times New Roman", serif; */

  /* color
  ------------------------------------------------*/
  --vk-color-text-body: #444;

/* --wp--preset--color--primary: #85d081;
  --wp--preset--color--primary-dark: #8cad8a;
  --wp--preset--color--primary-vivid: #afd8ad;

  --wp--preset--color--vk-color-custom-1: #265772;
  --wp--preset--color--vk-color-custom-2: #008ab4;
  --wp--preset--color--vk-color-custom-3: #fff4f0;
  --wp--preset--color--vk-color-custom-4: #faf9f5;
  --wp--preset--color--vk-color-custom-5: #f7f7f7; */


  /* 設定color */
  --wp--preset--color--white-new: #ffffff;
  --wp--preset--color--black-new: #333;
  --wp--preset--color--primary: #3bb437;
  --wp--preset--color--primary-dark: #008d43; /* #5b9558 */
  --wp--preset--color--primary-light: #beeabc; /* #afd8ad */
  --wp--preset--color--primary-bg: #edf8ed; /* #f2f5f2 */
  --wp--preset--color--secondary: #DDBD46;
  --wp--preset--color--secondary-dark: #d8ac07;
  --wp--preset--color--secondary-light: #efcc4c; /* #ffbd76 */
  --wp--preset--color--secondary-bg: #fffbf4; /* #F6E2BB */
  /* --wp--preset--color--tertiary: #fff9f0;
  --wp--preset--color--tertiary-bg: #fffbf4; */
  --wp--preset--color--gray: #b5c0b5;
  --wp--preset--color--gray-dark: #758075;
  --wp--preset--color--gray-light: #e6e0e6;
  --wp--preset--color--gray-bg: #f7f7f7;
  --wp--preset--color--accent: #fff87d;
  --wp--preset--color--warning: #ee0000;

  --vk-color-text-link: #151515;
  --vk-color-text-link-hover: var(--wp--preset--color--primary);

  --color-txt-dark: #151515;

  /* margin - preset
  ------------------------------------------------*/
  /* --vk-margin-xxs: 0.375rem;
  --vk-margin-xs: 0.75rem;
  --vk-margin-sm: 1.5rem;
  --vk-margin-md: 2.4rem;
  --vk-margin-lg: 4rem;
  --vk-margin-xl: 6rem;
  --vk-margin-xxl: 9rem;

  --vk-margin-element-bottom: 1.5rem; */

  /* padding
  ------------------------------------------------*/
  /* --wp--preset--spacing--20: 0.44rem; */
  --wp--preset--spacing--20: 0.67rem;
  --wp--preset--spacing--30: 1rem;
  --wp--preset--spacing--40: 1.5rem;
  --wp--preset--spacing--50: 2.25rem;
  --wp--preset--spacing--60: 5.06rem; /* 3.38rem */
  --wp--preset--spacing--70: 7.59rem;
  --wp--preset--spacing--80: 11.39rem;

  /* 2カラム サイズ
  ------------------------------------------------*/
  --vk-width-col-2-sub: calc(var(--vk-width-container) * 0.22);
  --vk-width-col-2-main: 71.6%;
}


@media (width < 782px) { /* wp-block-columns：BreakPoint 782pxのため */
  body {

  /* margin
  ------------------------------------------------*/
  --vk-margin-xxs: 0.25rem;
  --vk-margin-xs: 0.375rem;
  --vk-margin-sm: 0.75rem;
  --vk-margin-md: 1.5rem;
  --vk-margin-lg: 2.4rem;
  --vk-margin-xl: 3.6rem; /* 4rem; */
  --vk-margin-xxl: 4.8rem; /* 6rem; */

  --vk-margin-element-bottom: 1rem;

  /* padding
  ------------------------------------------------*/
  --wp--preset--spacing--20: 0.67rem; /* 0.3rem; */
  --wp--preset--spacing--30: 1rem; /* 0.45rem; */
  --wp--preset--spacing--40: 1.2rem; /* 0.67rem; */
  --wp--preset--spacing--50: 1.5rem;
  --wp--preset--spacing--60: 1.5rem;
  --wp--preset--spacing--70: 2rem; /* 2.25rem; */
  --wp--preset--spacing--80: 2rem; /* 3.38rem; */
  }
}


/* ================================================================================

  common

================================================================================ */
/* 上書き・設定
================================================================================ */
/* link
------------------------------------------------*/
li a, p a {
  text-decoration-style: solid;
  text-decoration-color: currentColor;
}
a ~ figure img {
  transition: 0.6s;
}
a ~ figure {
  overflow: hidden;
}
a:hover ~ figure img {
  transform: scale(1.05);
}

/* p
------------------------------------------------*/
:where(p) {
  text-align: justify;
}

/* button
------------------------------------------------*/
.btn {
  border-radius: 100px;
}
.vk_button-color-custom a:hover,.editor-styles-wrapper .vk_button-color-custom a:hover {
  -webkit-box-shadow: none;
  box-shadow: none;
}
.vk_button_link_subCaption {
  text-align: center;
}
.vk_button .has-text-color.is-style-outline {
  background-color: #fff;
}
.vk_button .has-text-color.is-style-outline:hover {
  border: 1px solid currentColor;
  background-color: currentColor;
}

@media (width < 768px) {
  .vk_button.vk_button-align-wide {
    display: block;
    max-width: none;
  }
}

/* list
------------------------------------------------*/
ul li:first-of-type,
ol li:first-of-type {
  margin-top: 0;
}
ul li:last-of-type,
ol li:last-of-type {
  margin-bottom: 0;
}
ul.is-style-vk-smile-mark li::before,
ul.is-style-vk-check-square-mark li::before {
  font-size: 1.5rem;
}

/* 見出し
------------------------------------------------*/
h1,
h2,
h3,
h4,
h5 {
  font-family: var(--font-special);
  font-weight: 500 !important;
}
h1::after,
h2::after,
h3::after,
h4::after,
h5::after {
  color: currentColor;
}
.is-style-vk-heading-plain {
  --vk-color-text-body: #333;
  color: var(--vk-color-text-body);
}

h2 strong,
h3 strong {
  font-weight: 700 !important;
}
h2::after, .main-section .cart_totals h2::after, h2.main-section-title::after {
  /* margin-left: -20px;
  width: 60px;
  border-top: solid 2px var(--vk-color-primary); */
}

/* 初期設定：黒下線上書き */
.is-style-vk-heading-solid_bottomborder_black {
  padding-top: 0;
}


/* ――― 見出し左に中央ライン */
.el_h_leftLine {
  position: relative;
}
.el_h_lineLeft::before,
[class*="el-h-sub-"]::before {
  content: "";
  position: absolute;
  top: 50%;
  left: -30px;
  width: 24px;
  height: 1px;
  background-color: currentColor;
}
@media (768px <= width) {
  .el_h_lineLeft::before,
  [class*="el-h-sub-"]::before {
    left: -40px;
    width: 30px;
  }
}

/* 見出し横に中央ライン ―――――――――――――― */
.el_h_lineRight {
	display: flex;
	align-items: center;
}
.el_h_lineRight::after {
	content: "";
	flex-grow: 1;
	border-top: 1px solid currentColor;
	margin-left: 1em;
}

/* ―――――
  見出し上にライン */
.el_h_LineTop {
  position: relative;
  padding-top: 1em;
}
.el_h_LineTop:before {
  content: "";
  position: absolute;
  top: 0;
  display: inline-block;
  width: 60px;
  height: 1px;
  left: 0;
  background-color: var(--wp--preset--color--primary);
}

/* 見出し下にライン
―――――              */
.el_h_LineBottom {
  position: relative;
  padding-bottom: 1em;
}
.el_h_LineBottom:before {
  content: "";
  position: absolute;
  bottom: 0;
  display: inline-block;
  width: 60px;
  height: 1px;
  left: 0;
  background-color: var(--wp--preset--color--primary);
}


/* ■ 見出し左に角丸四角  */
.el_h_squareLeft {
  position: relative;
  padding-left: 2em;
}
.el_h_squareLeft::before {
  content: "";
  display: block;
  width: 10px;
  height: 10px;
  position: absolute;
  top: 0;
  left: -1em;
  transform: translateY(-50%);
  border-radius: 4px;
  background-color: var(--wp--preset--color--primary);
}




.el_hFukidashi {
  display: block;
  position: relative;
  width: fit-content;
  margin: 0 auto 20px;
  padding: 16px 20px;
  border-radius: 100px;
  background-color: var(--wp--preset--color--vk-color-custom-2);
  font-family: var(--font-special);
  font-weight: 400 !important;
  line-height: 1;
}
.el_hFukidashi__tertiary {
  background-color: var(--color-tertiary);
}
.el_hFukidashi::after {
  content: "";
  position: absolute;
  bottom: -10px;
  left: 50%;
  transform: translateX(-50%);
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 14px 10px 0 10px;
  border-color: var(--wp--preset--color--vk-color-custom-2) transparent transparent transparent;
}
.el_hFukidashi__tertiary::after {
  border-color: var(--color-tertiary) transparent transparent transparent;
}
@media (768px <= width) {
  .el_hFukidashi {
    padding: 20px 30px;
  }
}

/* .el_hMark::before {
  content: "";
  display: block;
  width: 60px;
  height: calc( 60px * 212 / 271 );
  margin: 0 auto 10px;
  background-image: url(/common_img/logo_mark.svg);
  background-repeat: no-repeat;
  background-size: 60px auto;
}
h2.el_hMark {
  margin-bottom: 40px;
}
@media screen and (min-width: 769px) {
  .el_hMark::before {
    width: 80px;
    height: calc( 80px * 212 / 271 );
    background-size: 80px auto;
  }
  h2.el_hMark {
    margin-bottom: 80px;
  }
} */

/* .el_caption span::before,
.el_caption span::after {
  border-top: 1px solid currentColor;
  content: "";
  display: inline-block;
  height: 0;
  margin: -2px 10px 0;
  vertical-align: middle;
  width: 25px;
} */


/* button
------------------------------------------------*/
.wp-block-button__link:hover {
  filter: brightness(1.1) saturate(1.1);
}

/* indent
------------------------------------------------*/
.el_indent1em {
  margin-left: 1.2em;
	text-indent: -1.2em;
}

/*  list
------------------------------------------------*/
li {
  color: var(--vk-color-text-body);
}

/* ループリスト
------------------------------------------------*/
.postListText_date,
.postListText_title {
  font-size: 16px;
}

/* ページ送り
------------------------------------------------*/
.pagination:first-of-type:not(:last-of-type) {
  margin-bottom: 2rem;
}

/* hr
------------------------------------------------*/
.wp-block-separator {
  border-top: 1px solid;
}

/* 罫線
------------------------------------------------*/
.el_letterTxt {
  padding-right: 6px;
  padding-left: 6px;
  padding-bottom: 1px; /* 最終行の下にも罫線を引く */
  background-image: linear-gradient(180deg, var(--wp--preset--color--gray-light) 1px, transparent 1px); /* 罫線の色と太さ  */
  background-size: 100% 2.75em; /* 行の高さ */
  line-height: 2.75em; /* 文字の高さ */
}

.vk_balloon_content p {
  color: var(--vk-color-text-body);
}

/* 枠
------------------------------------------------*/
/* .bl_boxQuotation {
  width: fit-content;
  position: relative;
  border-top:1px solid var(--wp--preset--color--primary);
  border-bottom:1px solid var(--wp--preset--color--primary);
  margin-inline: 0 auto;
  padding: 10px;
}
.bl_boxQuotation span {
  z-index: 10;
  position: relative;
}
.bl_boxQuotation:before {
  content:'\f10d';
  z-index: 0;
  position: absolute;
  top: -20px;
  left: -10px;
  color: var(--wp--preset--color--primary);
  font: var(--fa-font-solid);
  font-size: 6rem;
  line-height: 1;
}
.bl_boxQuotation:after {
  content: '\f10e';
  z-index: 0;
  position: absolute;
  right: -10px;
  bottom: -20px;
  color: var(--wp--preset--color--primary);
  font: var(--fa-font-solid);
  font-size: 6rem;
  line-height: 1;
} */

/* module
================================================================================ */
/* position
------------------------------------------------*/
.hp_posRelative {
  position: relative;
}

/* width
------------------------------------------------*/
.hp_width_fit {
  width: fit-content;
  background-color: transparent;
}

/* margin
------------------------------------------------*/
.hp_mIn_auto {
  margin-inline: auto;
}

/* border
------------------------------------------------*/
.hp_borderColor_primary {
  border-color: var(--color-primary);
}
.hp_borderColor_tertiary {
  border-color: var(--color-tertiary);
}

.hp_txt_underLine {

}

/* background
------------------------------------------------*/
.hp_bgPrimary {
  background-color: var(--color-primary);
  color: #fff;
}

/* gradation
------------------------------------------------*/
.hp_gradation_primary {
  position: relative;
  background-color:#fdc7bf;
  background-image:
  radial-gradient(at 100% 50%, #c9545e99 0px, transparent 50%),
  radial-gradient(at 100% 0%, #ec776f 0px, transparent 50%),
  radial-gradient(at 100% 100%, #9b4b61 0px, transparent 50%),
  radial-gradient(at 0% 100%, #f59d80 0px, transparent 50%),
  radial-gradient(at 0% 0%, #fae19e 0px, transparent 50%);
}
.hp_gradation_primary_light {
  position: relative;
  background-color:#fff;
  background-image:
  radial-gradient(at 100% 50%, #c9545e99 0px, transparent 50%),
  radial-gradient(at 100% 0%, #ec776f 0px, transparent 50%),
  radial-gradient(at 100% 100%, #9b4b61 0px, transparent 50%),
  radial-gradient(at 0% 100%, #f59d80 0px, transparent 50%),
  radial-gradient(at 0% 0%, #fae19e 0px, transparent 50%);
}
.hp_gradation_secondary {
  position: relative;
  background-image: linear-gradient(to bottom right, var(--wp--preset--color--vk-color-custom-1), var(--wp--preset--color--vk-color-custom-2));
}

/* mask
------------------------------------------------*/
.hp_mask10::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(255, 255, 255, 0.1);
}
.hp_mask20::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(255, 255, 255, 0.2);
}

/* mark
------------------------------------------------*/
mark[style*="background-color"] {
  padding: 0.2rem 0.6rem 0.3rem;
  border-radius: 4px;
  -webkit-box-decoration-break: clone;
  box-decoration-break: clone;
}
mark[style*="background-color:rgba(0, 0, 0, 0)"] {
  padding: 0;
}

/* font
------------------------------------------------*/
.hp_fontPrimary {
  font-family: var(--font-primary);
}
.hp_fontSpecial {
  font-family: var(--font-special);
}
.hp_fontEn {
  font-family: var(--font-en);
}
.hp_fontScript {
  font-family: var(--font-script);
}

/* text-align
------------------------------------------------*/
.hp_taL {
  text-align: left !important;
}
.hp_taC {
  text-align: center !important;
}
.hp_taR {
  text-align: right !important;
}
@media (width < 768px) {
  .hp_taL_sm {
    text-align: left !important;
  }
  .hp_taC_sm {
    text-align: center !important;
  }
  .hp_taR_sm {
    text-align: right !important;
  }
}

/* gap
------------------------------------------------*/
.hp_gap0 {
  gap: 0 !important;
}
.hp_gap10 {
  gap: 10px;
}
.hp_gap5per {
  gap: 5%;
}

/* line-height
------------------------------------------------*/
.hp_lineHeight_1 {
  line-height: 1;
}
.hp_lineHeight_2 {
  line-height: 2;
}

/* form
--------------------------------------*/
::-webkit-input-placeholder {
  color: #ccc;
}
::-moz-placeholder {
  color: #ccc;
}
:-ms-input-placeholder {
  color: #ccc;
}
::-ms-input-placeholder {
  color: #ccc;
}
::placeholder {
  color: #ccc;
}

input, select {
  vertical-align: middle;
}
input:focus,
textarea:focus {
  outline: none;
}
label {
	font-weight: inherit;
	cursor: pointer;
}
input[type="text"],
input[type="tel"],
input[type="email"],
textarea,
select {
  box-sizing: border-box;
  background-color: #fff;
  font-family: inherit;
  font-size: 1em;
}
textarea {
	line-height: 1.6;
}
input[type="text"]:focus,
input[type="tel"]:focus,
input[type="email"]:focus,
textarea:focus,
select:focus {
	border: 1px solid var(--wp--preset--color--primary) !important;
	background: var(--wp--preset--color--vk-color-custom-3);
}

/* submit */
.bl_contactForm [type="submit"],
.bl_contactForm [type="button"]  {
  position: relative;
  display: block;
  width: 90%;
  max-width: 100%;
  margin: 0 auto;
  padding: 10px 20px;
  background: var(--wp--preset--color--primary);
  color: #fff;
  font-family: var(--font-zen);
  font-weight: 700;
  font-size: 1.25em;
  text-align: center;
  text-decoration: none;
}
.bl_contactForm [type="submit"]:focus,
.bl_contactForm [type="submit"]:hover {
  background-color: var(--vk-color-primary-vivid) !important;
}
@media (768px <= width) {
  .bl_contactForm [type="submit"] ,
  .bl_contactForm [type="button"]  {
    width: auto;
    padding: 20px 80px;
    cursor: pointer;
    transition: 0.6s;
  }
}

input[type=submit]:not(:disabled):hover {
  background-color: var(--vk-color-primary-vivid) !important;
}
form:has(.el_creditBtn) {
  display: block;
  max-width: 70%;
  margin-block: auto;
}
input.el_creditBtn[type=submit] {
  display: block;
  width: 100%;
  padding: 1.5em 1.5rem;
  font-size: calc(1rem* 1.25);
}
@media (width < 768px) {
  form:has(.el_creditBtn) {
    max-width: none;
  }
}

button[type=submit] {
  font-size: 1rem;
  border: 1px solid var(--vk-color-primary-dark);
  background-color: var(--vk-color-primary);
  color: #fff;
  padding: .5em 2em;
  border-radius: var(--vk-size-radius)
}
button[type=submit]:not(:disabled):hover {
  color: #fff;
  cursor: pointer;
  background-color: var(--vk-color-primary-dark)
}

button[type=submit]:not(:disabled):hover {
  background-color: var(--vk-color-primary-vivid) !important;
}
form:has(.el_creditBtn) {
  display: block;
  max-width: 70%;
  margin-block: auto;
}
button.el_creditBtn[type=submit] {
  display: block;
  width: 100%;
  padding: 1.5em 1.5rem;
  font-size: calc(1rem* 1.25);
}
button.el_creditBtn[type=submit] span {
  display: block;
  font-size: 1rem;
}
@media (width < 768px) {
  form:has(.el_creditBtn) {
    max-width: none;
  }
}

/* header
================================================================================ */
.site-header {
  box-shadow: none;
}
.header_scrolled .site-header {
  background-color: rgba(255, 251, 244, 0.9);
}
.header-top {
  margin-top: -20px;
}
@media (992px <= width) {
  header .is-layout-constrained > :where(:not(.alignleft):not(.alignright):not(.alignfull)) {
    --wp--style--global--content-size: calc(100% - 30px *2);
  }
}

.header-top .header-top-description {
  top: 13px;
  font-size: 12px;
}
.header-top .header-top-contact-btn {
  top: 20px;
}
.header-top .header-top-contact-btn .btn {
  padding: .45rem 1.25rem .5rem ;
  border-radius: 0.25rem;
  border-top-left-radius: 0;
  border-top-right-radius: 0;;
}
.header-top .header-top-contact-btn .btn-primary {
  background-color: var(--wp--preset--color--secondary);
  border-color: var(--wp--preset--color--secondary-dark)
}
.header-top .header-top-contact-btn .btn-primary:active,
.header-top .header-top-contact-btn .btn-primary:focus,
.header-top .header-top-contact-btn .btn-primary:hover,
.header-top .header-top-contact-btn .btn-primary:not(:disabled):not(.disabled):active {
  background-color: var(--wp--preset--color--secondary-light);
  border-color: var(--wp--preset--color--secondary)
}

.site-header-container {
  max-width: none !important;
  padding-left: 5px;
}
.site-header-logo {
  padding-top: .8rem;
  margin-bottom: .8rem;
  text-align: left;
}
.site-header-logo img {
  max-height: 34px;
  margin-left: 0;
}
@media (992px <= width) {
  .site-header-container {
    padding-left: 30px;
    padding-right: 30px;
  }
  .site-header-logo {
    margin-bottom: 0;
    padding-top: 3.0rem;
    padding-bottom: 2.9rem;
  }
  .site-header-logo img {
    max-height: 40px;
  }
  .site-header-sub {
    margin-top: 1.6rem;
    margin-bottom: 1.5rem;
  }
  .header-top .container {
    max-width: none !important;
  }
  .header-top,
  .header-top ul>li>span {
    font-size: 12px
  }
  .site-header-sub .widget {
    margin-bottom: 0;
  }
  .site-header-sub .btn {
    color: #fff;
  }
  .header-top .header-top-contact-btn a.btn {
    font-size: 16px;
  }
}


/* global nav
------------------------------------------------*/
@media (992px <= width) {
  .global-nav-list {
    height: 50px;
  }
  /* .global-nav-list>li .global-nav-name {
    font-weight: 400 !important;
  } */
  .device-mobile .global-nav-list>li {
    padding: 14px 1.6em;
  }
  .global-nav-list li {
    font-size: 14px;
  }
}

/* campaign area
------------------------------------------------*/
.vk-campaign-text {
  padding: 2px 5px !important;
}
@media (992px <= width) {
  .vk-campaign-text {
    display: none !important;
    min-height: 20px;
  }
  .vk-campaign-text_text {
    display: none;
  }
}

/* @media (max-width: 991.98px) {
  .vk-campaign-text {
    min-height: auto;
  }
  .vk-campaign-text_text {
    display: inline;
  }
} */

.site-body-bottom {
  display: none;
}

/* site-body
================================================================================ */
.site-body {
  /* padding: 0; */
  padding: var(--vk-margin-xl) 0 var(--vk-margin-xxl);
}

/* CTA
================================================================================ */
:not(.site-body) .vk_outer-width-full.vk_outer-paddingLR-none {
  padding-left: 15px;
  padding-right: 15px;
}



/* footer
================================================================================ */
.site-footer {
  border-top: none;
  position: relative;
}
/* .site-footer:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(255, 255, 255, 0.1);
} */
.site-footer .widget_nav_menu>div>ul li a {
/*   --vk-color-text-link: #fff;
  --vk-color-text-link-hover: #fff; */
  --vk-color-border-hr: #D2DED1;
}
.site-footer .widget_nav_menu>div>ul li a:hover {
  color: var(--wp--preset--color--primary-dark);
}
@media (width < 992px) {
  .site-footer-content .row .col-md-6 {
    text-align: center;
    flex: 0 0 100%;
    max-width: 100%;
  }
  .site-footer-content .row .col-md-6 p {
    text-align: center;
  }
  .site-footer-content .row .col-md-6:not(:first-of-type) {
    margin-top: 30px;
    text-align: left;
  }
  .el_footer_logo {
    width: fit-content;
    margin: 0 auto 1em !important;
    text-align: center;
  }
  .el_footer_btn {
    text-align: center !important;
  }
}



/* copyright
------------------------------------------------*/
.site-footer-copyright {
  max-width: none !important;
  margin-top: 3em;
  position: relative;
  padding: 0.4em;
  background: var(--wp--preset--color--primary-dark);
  color: var(--wp--preset--color--primary-bg);
}
.site-footer-copyright p {
  margin-block-end: 0;
  margin: 0 !important;
}
/* .site-footer-copyright {
  display: none !important;
}
 */


/* page top
------------------------------------------------*/
.page_top_btn {
  bottom: 10px;
  right: 5px;
  width: 30px;
  height: 30px;
  border: 1px solid #fff;
  border-radius: 3px;
  background-color: rgba(123, 201, 119, 0.8);
  color: #fff;
  box-shadow: none;
}
@media (782px <= width) {
  .page_top_btn {
    bottom: 2.5%;
    right: 2.5%;
    width: 60px;
    height: 60px;
  }
}

/* hamburger btn
================================================================================ */
.vk-mobile-nav-menu-btn {
  border: none;
  background-image: url(/img/hamburger.svg);
  background-repeat: no-repeat;
  background-position: center 50%;
  background-color: rgba(59, 180, 55, 0.8);
}
@media (width < 768px) {
  .admin-bar .vk-mobile-nav-menu-btn {
    top: calc(46px + 10px);
  }
}


/* page-header
================================================================================ */
.page-header {
  /* box-sizing: border-box;
  overflow: clip;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 6em 2em;
  background: linear-gradient(rgba(255, 255, 255, 0.5), rgba(255, 255, 255, 0.5)), url(/img/under_title_bg.jpg);
  background-repeat: no-repeat;
  background-position: 50%;
  background-size: cover; */

  /* margin-left: calc((100% - var(--vk-width)) / 4);
  margin-right: calc((100% - var(--vk-width)) / 4); */
}
/* .page-header::before {
  background-color: transparent !important;
} */
@media (992px <= width) {
  .page-header {
   /*  margin-inline: 30px; */
  }
}

/* @media (576px <= width) {
  .page-header {
    --vk-width: 540px;
  }
}
@media (768px <= width) {
  .page-header {
    --vk-width: 720px;
  }
}
@media (992px <= width) {
  .page-header {
    --vk-width: 960px;
  }
}
@media (1200px <= width) {
  .page-header {
    --vk-width: 1140px;
  }
} */
.page-header-title {
  color: var(--wp--preset--color--primary-dark);
  font-family: var(--font-special);
  font-weight: 400 !important;
  font-size: 3rem !important;
}
.page-header-subtext {
  margin-top: 2em;
  margin-bottom: var(--vk-margin-meta);
  color: var(--color-txt-dark);
}


/* パンくずリスト
================================================================================ */
.breadcrumb {
  position: relative;
  z-index: 1;
  /* margin-inline: 5px; */
  /* margin-left: calc((100% - var(--vk-width)) / 4);
  margin-right: calc((100% - var(--vk-width)) / 4); */
  border: none;
  /* border-top: 1px solid var(--wp--preset--color--primary); */
  /* border-bottom: 1px solid var(--wp--preset--color--secondary-bg); */
  /* border-radius: 5px; */
  background-color: var(--wp--preset--color--primary-bg);
}
@media (992px <= width) {
.breadcrumb {
    /* margin-inline: 30px; */
  }
}

/* @media (576px <= width) {
  .breadcrumb {
    --vk-width: 540px;
  }
}
@media (768px <= width) {
  .breadcrumb {
    --vk-width: 720px;
  }
}
@media (992px <= width) {
  .breadcrumb {
    --vk-width: 960px;
  }
}
@media (1200px <= width) {
  .breadcrumb {
    --vk-width: 1140px;
  }
} */

/* .breadcrumb .container,
.breadcrumb .breadcrumbs {
  padding-top: 10px;
  padding-bottom: 10px;
} */
.breadcrumb [property="itemListElement"] {
  margin-inline: 0.5em;
}
.breadcrumb [property="itemListElement"]:first-of-type {
  margin-inline-start: 0;
}
.breadcrumb [property="itemListElement"]:last-of-type {
  margin-inline-end: 0;
}
.breadcrumb [property="itemListElement"] i {
  margin-right: 0;
}
.breadcrumb-list,
.vk_breadcrumb_list {
  margin: 0;
  padding: 10px 0;
}
.vk_breadcrumb_list_item a {
  --vk-color-text-link: #666666 !important;
  color: var(--vk-color-text-link);
  text-decoration: underline;
}

/* .breadcrumb .container span:after {
  content: "/";
  margin-left: .5em;
  margin-right: .5em
}
.breadcrumb .container span:last-child:after {
  content: "";
  margin-left: 0;
  margin-right: 0
} */


/* ================================================================================

  home

================================================================================ */
.home .entry-body > .vk_outer-paddingVertical-use {
  padding-top: 0 !important;
}

/* hero area
================================================================================ */
@media (width < 782px) {
  .bl_home_heroArea > .wp-block-media-text__media {
    min-height: 300px !important;
  }
  .bl_home_heroArea img {
    object-position: 50% 50% !important;
  }
  .wp-block-columns:has(.bl_home_heroArea_txt) {
    gap: 0;
  }
  .bl_home_heroArea > .wp-block-media-text__content {
    padding: 0;
  }
  .bl_home_heroArea_txt {
    margin-top: 15px !important;
    margin-bottom: 15px !important;
    padding: 1rem;
    border-radius: 10px;
    background-color: rgba(255, 255, 255, 0.9);
  }
  .bl_home_heroArea_subTtl {
    margin-top: 0.4rem !important;
    font-size: 1.5rem !important;
    text-align: center !important;
  }
  .bl_home_heroArea_txt h2 {
    font-size: 1.5rem !important;
    text-align: center !important;
  }
  .bl_home_heroArea h2 span {
    font-size: 1.8rem !important;
  }
}

/* 個人のお客様
================================================================================ */
.bl_home_service_list > .wp-block-group p:last-of-type {
  padding: 15px !important;
}
@media (782px <= width) { /* wp-block-columns：BreakPoint 782pxのため */
  .bl_homeIndividualService_img figure {
    border: 8px solid #fff;
  }
  .bl_homeIndividualService_body {
    margin: 2% 0 0 -6% !important;
    padding-top: var(--wp--preset--spacing--50) !important;
    padding-left: calc(var(--wp--preset--spacing--50) + 6% ) !important;
  }
}

@media (width < 782px) { /* wp-block-columns：BreakPoint 782pxのため */
  .bl_home_service_list {
    gap: 12px;
  }
  .bl_homeIndividual_service.wp-block-columns:not(.is-not-stacked-on-mobile)>.wp-block-column {
    flex-basis: 100% !important;
  }
  .wp-block-columns:not(.is-not-stacked-on-mobile)> .wp-block-column.bl_homeIndividualService_img {
    flex-grow: 0 !important;
    flex-basis: 90% !important;
    margin-inline: auto;
  }
}

.bl_homeAssetManagement {
  position: relative;
}
.bl_homeAssetManagement .el_bgCircle {
  display: none;
  z-index: -1;
  position: absolute;
  right: -20%;
  bottom: -8%;
  transform: rotate(180deg);
  width: 24svw;
}
.bl_homeAssetManagement .el_bgCircle img {
  width: 380px !important;
}


/* メディア掲載
================================================================================ */
.bl_homeMedia h3 {
  margin-bottom: 0;
  font-family: var(--font-preset);
  font-weight: 400 !important;
}



/* 講師・講演
================================================================================ */
.bl_homeLecture_list li {
  padding: .8rem 0 .7rem;
  border-bottom: 1px dotted #ccc;
  display: block;
  overflow: hidden;
  width: 100%;
}
.bl_homeLecture_list li .wp-block-columns {
  margin-bottom: 0;
}



/* FPマネーコラム
================================================================================ */
.bl_homeColumn_list .postListText_singleTermLabel_inner {
  background-color: var(--wp--preset--color--primary-dark) !important;
}

.bl_homeColumn_ctg ul {
  list-style: none;
  padding: 0;
}
.bl_homeColumn_ctg ul li {
  display: block;
  margin-bottom: 5px;
}
.bl_homeColumn_ctg ul li a {
  display: block;
  margin: 3px;
  padding: .6em 1.5rem;
  border: 1px solid currentColor;
  border-radius: 50px;
  color: var(--wp--preset--color--primary-dark);
  text-decoration: none;
  transition: 0.6s;
}
.bl_homeColumn_ctg ul li a:hover,
.bl_homeColumn_ctg ul li a:active {
  background-color: var(--wp--preset--color--primary);
  color: #fff;
  text-decoration: none;
}
@media (768px <= width) {
  .bl_homeColumn_ctg ul li {
    display: inline-block;
    margin: 0;
  }
}


/* ================================================================================

  index / 講師・講演

================================================================================ */
/* site-body
================================================================================ */
/* 実績ピックアップ
------------------------------------------------*/
.post-type-lecture .has-vk-color-custom-3-background-color {
  --wp--preset--color--vk-color-custom-3: #f2f5f2;
}
.post-type-lecture.archive .vk_post_title {
  margin-top: 0 !important;
  margin-bottom: 1.5em;
  color: var(--color-txt-dark);
  font-family: var(--font-special);
  font-weight: 400 !important;
  font-size: 1.8rem !important;
}
.post-type-lecture.archive .vk_post_title a:link,
.post-type-lecture.archive .vk_post_title a:visited {
  color: var(--color-txt-dark);
  text-decoration: none;
  opacity: 1;
  cursor: default;
}
.post-type-lecture .vk_post_taxonomy {
  margin: 0 0 .8em;
  font-size: var(--vk-size-text);
}
.post-type-lecture .vk_post_taxonomy_title {
  margin-bottom: 0 !important;
}
.post-type-lecture .vk_post_taxonomy_title_inner {
  border: none;
  min-width: auto;
  padding: 0 .8em .1em;
  background-color: var(--wp--preset--color--primary);
  color: #fff;
  font-weight: 400;
  text-align: left;
}
.post-type-lecture .vk_post_taxonomy_terms {
  margin-bottom: 0 !important;
  color: var(--wp--preset--color--primary);
}
.post-type-lecture.archive .vk_post_taxonomy_terms a:link,
.post-type-lecture.archive .vk_post_taxonomy_terms a:visited {
  color: var(--wp--preset--color--primary);
  text-decoration: none;
  opacity: 1;
  cursor: default;
}
.bl_lectureList_meta span {
  display: inline-block;
  margin: 0 10px 5px 0;
  padding: .4em .8em;
  background-color: var(--wp--preset--color--primary);
  color: #fff;
  font-size: var(--vk-size-text-sm);
  line-height: 1;
}
@media (768px <= width) {
  .post-type-lecture.archive .card-body {
    padding: 3em;
  }
}


/* ================================================================================

  投稿ページ / 講師実績

================================================================================ */
/* site-body
================================================================================ */
/* entry-header
------------------------------------------------*/
.single-lecture .entry-header {
  --vk-margin-block-bottom: 4rem;
}
.single-lecture h1 {
  font-size: 2.4rem;
}


/* ================================================================================

  index / 取材・執筆

================================================================================ */
/* site-body
================================================================================ */
/* リスト
------------------------------------------------*/
.post-type-media-coverage.archive .main-section>.vk_posts>.media.vk_post-col-lg-12 {
  padding: 2.8rem 0;
}
@media (width < 768px) {
  .post-type-media-coverage.archive .main-section>.vk_posts>.media.vk_post-col-lg-12 {
    padding: 2.0rem 0;
  }
}

.post-type-media-coverage.archive .vk_post_title {
  margin-top: 0 !important;
  margin-bottom: var(--vk-margin-meta);
  color: var(--color-txt-dark);
  font-family: var(--font-special);
  font-weight: 600;
  font-size: 1.8rem !important;
}
.post-type-media-coverage.archive .vk_post_title a:link,
.post-type-media-coverage.archive .vk_post_title a:visited {
  color: var(--color-txt-dark);
  text-decoration: none;
  opacity: 1;
  cursor: default;
}
.post-type-media-coverage.archive .vk_post .vk_post_date {
  margin-bottom: var(--vk-margin-block-bottom);
  color: var(--wp--preset--color--primary-dark);
  font-size: var(--vk-size-text-sm);
}
/* .el_mediaList_date {
  margin-bottom: var(--vk-margin-block-bottom);
} */
.post-type-media-coverage.archive .bl_content .wp-block-columns {
  margin-bottom: 0;
}
.post-type-media-coverage.archive .bl_content :last-child {
  margin-bottom: 0;
}


/* ================================================================================

  投稿ページ / 取材・執筆

================================================================================ */
/* site-body
================================================================================ */
/* entry-header
------------------------------------------------*/
.single-media-coverage .entry-header {
  --vk-margin-block-bottom: 4rem;
}
.single-media-coverage h1 {
  font-size: 2.4rem;
}


/* ================================================================================

  プロフィール

================================================================================ */
/* page-header
================================================================================ */
.post-name-profile .page-header::before {
  opacity: 0.3;
}

/* site-body
================================================================================ */
/* プロフィール概要
------------------------------------------------*/
@media (768px <= width) {
  .bl_profile_header {
    display: inline-flex !important;
    justify-content: center;
    margin-inline: auto !important;
  }
  body .bl_profile_header.is-layout-flex {
    display: inline-flex !important;
  }
  .bl_profile_header .wp-block-column:last-of-type {
    flex: 0 1 auto;
  }
}

/* ================================================================================

  事業理念

================================================================================ */
/* page-header
================================================================================ */
.post-name-business-philosophy .page-header {
  /* background: linear-gradient(rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0.5)), url(/img/media_title_bg.jpg); */
  /* background-repeat: no-repeat;
  background-position: left center;
  background-size: cover; */
}

/* ================================================================================

  お問い合わせ

================================================================================ */
/* reCAPTCHAのロゴ（バッジ）を非表示
------------------------------------------------*/
.grecaptcha-badge { visibility: hidden; }

.p-topArea {
  min-height: 16vh !important;
}

.bl_contactForm .ark-block-heading {
  margin-bottom: 4rem;
}

::-webkit-input-placeholder {
  color: #ccc;
}
::-moz-placeholder {
  color: #ccc;
}
:-ms-input-placeholder {
  color: #ccc;
}
::-ms-input-placeholder {
  color: #ccc;
}
::placeholder {
  color: #ccc;
}

/* form
--------------------------------------*/
input, select {
  vertical-align: middle;
}
input:focus,
textarea:focus {
  outline: none;
}
label {
	font-weight: inherit;
	cursor: pointer;
}
input[type="text"],
input[type="tel"],
input[type="email"],
textarea,
select {
  box-sizing: border-box;
	/* padding: 10px;
	border: 1px solid var(--color-gray); */
  background-color: #fff;
  font-family: inherit;
  font-size: 1em;
}
textarea {
	line-height: 1.6;
}
input[type="text"]:focus,
input[type="tel"]:focus,
input[type="email"]:focus,
textarea:focus,
select:focus {
	border: 1px solid var(--wp--preset--color--vk-color-custom-3);
  /* border-radius: 4px; */
	background: var(--wp--preset--color--vk-color-custom-4);
}

/* submit */
.bl_contactForm [type="submit"],
.bl_contactForm [type="button"]  {
  position: relative;
  display: block;
  width: 90%;
  max-width: 100%;
  margin: 0 auto;
  padding: 10px 20px;
  background: var(--wp--preset--color--primary);
  color: #fff;
  font-family: var(--font-zen);
  font-weight: 700;
  font-size: 1.25em;
  text-align: center;
  text-decoration: none;
}
.bl_contactForm [type="submit"]:focus,
.bl_contactForm [type="submit"]:hover {
  background-color: var(--vk-color-primary-vivid) !important;
}
@media (768px <= width) {
  .bl_contactForm [type="submit"] ,
  .bl_contactForm [type="button"]  {
    width: auto;
    padding: 20px 80px;
    cursor: pointer;
    transition: 0.6s;
  }
}

/* bl_inputArea
------------------------------------------------*/
.bl_inputArea {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin: 0 0 30px;
  padding: 0;
  border-bottom: 1px solid var(--wp--preset--color--gray-light);
}
.bl_inputArea dt {
  position: relative;
  width: 100%;
  margin: 0;
  padding: 20px 0 10px;
  border-top: 1px solid var(--wp--preset--color--gray-light);
  color: var(--wp--preset--color--primary-dark);
  font-family: var(--font-special);
  font-weight: 500;
  font-size: 1.1rem;
}
.bl_inputArea dt span {
  position: absolute;
  top: 24px;
  right: 10px;
  padding: 4px 5px 2px;
  border-radius: 5px;
  background: var(--wp--preset--color--primary);
  color: #fff;
  font-family: var(--font-preset);
  font-weight: normal;
  font-size: 0.75em;
  line-height: 1;
}
.bl_inputArea dd {
  width: 100%;
  margin: 0;
  padding: 0 10px 20px;
}
.bl_inputArea input[type="text"],
.bl_inputArea input[type="tel"],
.bl_inputArea input[type="email"],
.bl_inputArea textarea {
  width: 100%;
  max-width: 100% !important;
}

.bl_submitArea p {
  display: flex;
  flex-wrap: wrap-reverse;
  justify-content: center;
}
.bl_submitArea input[type="submit"] ,
.bl_submitArea input[type="button"]  {
  width: 100%;
}
.bl_submitArea input[type="button"].wpcf7-previous {
  margin-top: 20px;
  border: none;
  border-radius: 4px;
  background: var(--wp--preset--color--gray);
  color: #fff;
}
.bl_submitArea input[type="button"].wpcf7-previous:focus,
.bl_submitArea input[type="button"].wpcf7-previous:hover {
  background: var(--wp--preset--color--gray-light);
  /* color: var(--wp--preset--color--gray-dark); */
}

@media (768px <= width) {
  .bl_inputArea {
    margin: 0 0 60px;
  }
  .bl_inputArea dt {
    width: 30%;
    padding: 20px 30px;
  }
  .bl_inputArea dt span {
    top: 23px;
    right: 30px;
  }
  .bl_inputArea dd {
    width: 70%;
    padding: 20px 30px 20px 60px;
    border-top: 1px solid var(--wp--preset--color--gray-light);
  }
  .bl_inputArea dd p {
    margin-bottom: 0;
  }
  .bl_inputArea input[type="text"],
  .bl_inputArea input[type="tel"],
  .bl_inputArea input[type="email"]  {
    width: auto;
  }
  .bl_inputArea textarea {
    width: 600px;
  }
  .bl_submitArea  {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .bl_submitArea input[type="submit"] ,
  .bl_submitArea input[type="button"]  {
    width: auto;
    margin: 0;
  }
  .post-name-contact .bl_submitArea input[type="submit"] {
    margin-left: 72px;
  }
  .bl_submitArea input[type="button"].wpcf7-previous {
		margin: 0 20px 0 0;
	}
}

@media (width < 768px) {
  .bl_contactThanks_txt .has-text-align-center {
    text-align: left;
  }
}

.bl_textarea * {
  white-space: pre-wrap;
}

/* ================================================================================

  投稿ページ / コラム

================================================================================ */
/* site-body
================================================================================ */
.single-post .entry-header {
  margin-bottom: var(--vk-margin-lg);
  padding-bottom: 20px;
  /* border-top: 2px solid var(--wp--preset--color--primary); */
  border-bottom: 2px solid var(--wp--preset--color--primary);
  /* border-radius: 10px; */
}
.single-post .entry-meta-item {
  padding: 4px;
  background-color: var(--wp--preset--color--primary-bg);
  color: var(--wp--preset--color--primary);
}
.single-post .entry-title {
  margin-bottom: var(--vk-margin-md);
  color: var(--color-txt-dark);
}
@media (768px <= width) {
  .single-post .entry-header {
    padding-bottom: 30px;
  }
}

/* .single-post .entry-meta-item {
  background-color: var(--wp--preset--color--primary);
  color: #fff;
} */
.single-post .fa-calendar-alt,
.single-post .fa-history {
  margin-right: 0;
}
.single-post .fa-calendar-alt::before,
.single-post .fa-history::before {
  font-family: var(--font-primary);
  font-weight: 400;
}
.single-post .fa-calendar-alt::before {
  content: "初稿：";
}
.single-post .fa-history::before {
  content: "再編：";
}

.single-post h2 {
  margin-bottom: 2rem;
}
@media (768px <= width) {
  .single-post h2 {
    margin-bottom: 3rem;
  }
}

/* .single-post h2 {
  margin-bottom: 2rem;
  padding: 0.6em 0 0.8em;
  border-bottom: 3px solid var(--vk-color-border-hr);
}
.single-post h2::after {
  z-index: 10;
  bottom: -3px;
  width: 120px;
  height: 3px;
  border: none;
  background-color: var(--wp--preset--color--primary);
}
@media (768px <= width) {
  .single-post h2 {
    margin-bottom: 3rem;
  }
}

.single-post h2::after {
  border-bottom: 2px solid var(--vk-color-primary);
}

.single-post h3 {
  padding: 0.6em 0 0.55em;
  border-bottom: solid 1px var(--vk-color-primary);
  color: var(--wp--preset--color--primary);
} */


.single-post .post-category {
  width: fit-content;
  margin-bottom: 10px;
  padding: 0.4rem 0.8rem;
  background-color: var(--wp--preset--color--primary-dark);
  color: #fff;
  font-size: 1.1rem;
  line-height: 1;
}
@media (768px <= width) {
.single-post .post-category {
  margin-bottom: 16px;
  }
}

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

.vk_post_taxonomy_title {
  display: none;
}
.vk_post_date.card-date.published {
  --vk-font-size-xs: 0.8rem;
}
.vk_post_taxonomy_terms {
  margin-left: 0;
  padding-left: 0;
}
.vk_post_taxonomy_terms a {
  margin-left: 0;
  padding: 0.1rem 0.8rem;
  background-color: var(--wp--preset--color--primary-dark);
  color: #fff;
  font-size: 0.85rem;
  line-height: 1;
  transition: 0.6s;
}
.vk_post_taxonomy_terms a:hover {
  background-color: var(--wp--preset--color--primary);
  color: #fff;
  opacity: 1;
}

/* サイドバーカテゴリー名をボタン風に
================================================================================ */
.columnSideCat ul {
  list-style: none;
  padding: 0;
}
.columnSideCat ul li {
  display: block;
  margin-bottom: 5px;
}
.columnSideCat ul li a {
  display: block;
  width: 100%;
  margin: 3px 0;
  padding: .6em 1.5rem;
  border: 1px solid currentColor;
  border-radius: 50px;
  color: var(--wp--preset--color--primary-dark);
  text-decoration: none;
  transition: 0.6s;
}
.columnSideCat ul li a:hover,
.columnSideCat ul li a:active {
  background-color: var(--wp--preset--color--primary);
  color: #fff;
  text-decoration: none;
}


/* ================================================================================

  archiveページ / コラム

================================================================================ */
/* site-body
================================================================================ */
.category .archive-header-title {
  position: relative;
  --vk-margin-headding-bottom: 3rem;
}
.category .archive-header-title::before {
  content: "カテゴリー";
  display: block;
  width: fit-content;
  margin-bottom: 0.4rem;
  padding: 0.2rem 0.8rem;
  border: 1px solid currentColor;
  color: var(--wp--preset--color--primary);
  font-size: 1rem;
  line-height: 1;
}


/* ================================================================================

  特定商取引法に基づく表記

================================================================================ */
/* entry-body
================================================================================ */
.bl_tradelaw_table tr td:nth-child(1) {
  width: 25%;
  padding: 1.5em 0.5em;
  color: var(--wp--preset--color--primary);
  font-family: var(--font-special);
  font-weight: 500;
  font-size: 1.1rem;
  vertical-align: text-top;
}
.bl_tradelaw_table tr td:nth-child(2) {
  width: 75%;
  padding: 1.5em 0.5em;
}
@media (width < 768px) {
  .bl_tradelaw_table tr td:nth-child(1) {
    display: block;
    width: 100%;
    padding: 1.0em 0.5em 0;
    border-bottom: none;
  }
  .bl_tradelaw_table tr td:nth-child(2) {
    display: block;
    width: 100%;
    padding: 1.0em 0.5em;
    border-top: none;
  }
  .bl_tradelaw_table tr:not(:last-of-type) td:nth-child(2) {
    border-bottom: none;
  }
}

