/******* Do not edit this file *******
Simple Custom CSS and JS - by Silkypress.com
Saved: Mar 09 2026 | 04:44:59 */
/* 共通 */

/* フォント */
html, body, p, a, li, dt, dd, span, input, textarea, button, select, table, th, td, button, input[type="submit"], strong, b, nav, label, small, caption, figcaption {
	font-family: 'Noto Sans JP', sans-serif;
}
.font-maru,
.font-maru *,
h1, h2, h3, h4, h5, h6,
h1 *, h2 *, h3 *, h4 *, h5 *, h6 * {
	font-family: 'Zen Maru Gothic', sans-serif!important;
}

/* ボタン */
.vk_button_link {
	transition: .3s!important;
	border-radius: 5px;
}
@media (hover: hover) {
	.vk_button_link:hover {
		filter: none!important;
		opacity: .8!important;
	}
}
a:hover {
	filter: none!important;
}


/* 部分パーツ */
.box {
	border-radius: 20px;
	background: #fff;
	overflow: hidden;
	padding: 2em 1em;
}
.kadomaru {
	border-radius: 20px!important;
	overflow: hidden;
}
.green-box {
	padding: 2em 1em;
	border-radius: 20px;
	border: 2px solid var(--wp--preset--color--vk-color-custom-1)!important;
	width: min(600px, 100%);
	margin-left: auto;
	margin-right: auto;
}

/* ヘッダー */
/* ロゴ */
header .logo {
	display: flex;
	align-items: center;
}
header .logo figure {
	width: 45px;
}
header .logo p {
	margin: 0 0 0 5px;
	color: var(--wp--preset--color--vk-color-custom-1);
	letter-spacing: .05em;
	font-size: 20px;
	font-weight: bold;
}
@media (max-width: 1100px) {
	header .logo figure {
		width: 30px;
	}
	header .logo p {
		font-size: 16px;
	}
}
/* ナビゲーション */
header .wp-block-navigation-item__content::after {
	border-color: var(--wp--preset--color--vk-color-custom-1)!important;
}
header .header-btn {
	color: var(--wp--preset--color--vk-color-custom-2)!important;
}
header .header-btn span {
	font-family: 'Zen Maru Gothic', sans-serif!important;
	font-weight: bold;
}
header .header-btn a {
	padding: .6em .8em!important;
}
header .header-btn.tel a {
	padding: .45em .8em!important;
}
@media (max-width: 1199px) {
	header .header-btn.tel a {
		padding: .6em .8em!important;
	}
}
@media (max-width: 550px) {
	header .header-btn a {
		padding: .6em!important;
		min-width: 50px!important;
	}	
}
header .header-btn span {
	font-size: 14px!important;
}
header .header-btn.tel span {
	font-size: 17px!important;
}
@media (max-width: 1199px) {
	header .header-btn.tel span {
		font-size: 14px!important;
	}
}
header .header-btn.mail a {
	background-color: var(--wp--preset--color--vk-color-custom-2)!important;
	border-color: var(--wp--preset--color--vk-color-custom-2)!important;
}
header .header-btn.tel a {
	background-color: var(--wp--preset--color--vk-color-custom-1)!important;
	border-color: var(--wp--preset--color--vk-color-custom-1)!important;
}
header .header-btn i {
	font-size: 18px!important;
	margin-right: 5px!important;
}
@media (max-width: 550px) {
	header .header-btn i {
		font-size: 14px!important;
	}
	header .header-btn.tel span {
		font-size: 14px!important;
	}
}
@media (max-width: 991px) {
	header .wp-block-group > nav {
		order: 3;
	}
}
.wp-block-navigation__responsive-container-open {
	border-radius: 50%;
	width: 100%;
	height: 100%;
	border-color: var(--wp--preset--color--vk-color-custom-2)!important;
	border-width: 2px!important;
	width: 40px;
	height: 40px;
}
@media (max-width: 991px) {
	.wp-block-navigation__responsive-container-open {
		display: grid!important;
		place-items: center!important;
	}
}
.wp-block-navigation__responsive-container-open svg {
	fill: var(--wp--preset--color--vk-color-custom-2)!important;
}

/* スマホヘッダー */
.sp-menu-line-btn {
	margin-top: 30px;
}
@media (min-width: 992px) {
	.sp-menu-line-btn {
		display: none;
	}
}
.sp-menu-line-btn a {
	background-color: #00b900;
	border-color: #00b900;
}
.wp-block-navigation__responsive-container {
	padding-left: 10px!important;
	padding-right: 10px!important;
}
/* スマホ：閉じるボタンを大きくしてタップしやすく */
@media (max-width: 991px) {
  .wp-block-navigation__responsive-container-close {
    top: 16px !important;
    right: 16px !important;
    width: 48px;
    height: 48px;
    display: grid;
    place-items: center;
  }

  .wp-block-navigation__responsive-container-close svg {
    width: 24px;
    height: 24px;
  }
}


/* フッター */
footer *,
footer p {
	color: #333!important;
}
footer h2 {
	font-size: 18px!important;
}
footer > * {
	border: 0;
}
footer .logo {
	display: flex;
	align-items: center;
}
footer .logo figure {
	width: 45px;
}
footer .logo p {
	margin: 0 0 0 5px;
	color: var(--wp--preset--color--vk-color-custom-1)!important;
	letter-spacing: .05em;
	font-size: 20px;
	font-weight: bold;
}

/* ページトップ */
#page_top {
	border-radius: 50%;
	background-color: var(--wp--preset--color--vk-color-custom-1)!important;
	border: 0;
	box-shadow: 0 0 0 2px rgba(255, 255, 255, .2);
	width: 50px;
	height: 50px;
}

/* CTA */
.cta strong,
.cta span,
.cta p {
	font-family: 'Zen Maru Gothic', sans-serif!important;
}

/* 404 */
.wp-block-search__button {
	background-color: var(--wp--preset--color--vk-color-custom-1)!important;
	border-radius: 5px;
}

/* スパムメール対策 */
.wpcf7-turnstile {
	text-align: center;
	margin-bottom: 40px;
}