@charset "UTF-8";
/*
	* プラグインスタイルシート
	* プラグインに関するスタイル
	* ver1
	* Copyright (C) ●●など
	* 更新履歴
		└ 
*/
/* ////////////////////////////////////////////////////////////////////////////////////////////////////
	プラグイン
//////////////////////////////////////////////////////////////////////////////////////////////////// */
/* ******************************************************************************************
	Breadcrumb NavXT
****************************************************************************************** */
.bl_breadcrumbs{
	line-height: 1.5;
	/* margin: 0 0 0.5em; */
	text-align: left;
}
.bl_breadcrumbs span{
	display: inline-block;
	font-size: .9rem;
}
.current-item{
	font-weight: bold;
}
.bl_breadcrumbs a:hover, .bl_breadcrumbs a:active, .bl_breadcrumbs a:focus{
	text-decoration: underline;
}
.ly_breadcrumbsSns{
	display: flex;
	justify-content: space-between;
	align-items: center;
}
.breadcrumbs {
    padding: .5rem 1rem 1.5rem 0;
    font-size: .85rem;
}
.container.container__topPadding{
	padding-top: .5rem;
}
@media screen and (max-width: 992px){
	.bl_breadcrumbs{
		margin: 0 0 .5em;
	}
}
@media screen and (max-width: 768px){
	.ly_breadcrumbsSns{
		display: block;
	}
}
/* ******************************************************************************************
	AddToAny Share Buttons
****************************************************************************************** */
.st_editor .addtoany_share_save_container a[target="_blank"]:after{
	content: none;
}
/* ******************************************************************************************
	WP-PageNavi
****************************************************************************************** */
.wp-pagenavi_area{
	text-align: center;
}
.wp-pagenavi a, .wp-pagenavi span{
	display: inline-block;
	margin: 0!important;
	background-color: #fff;
	font-weight: bold;
}
.wp-pagenavi span + span, .wp-pagenavi span + a, .wp-pagenavi a + a, .wp-pagenavi a + span{
	margin-left: -2px;
	border-left-style: none;
}
.wp-pagenavi a{
	color: #9d9c9c;
}
/*現在のページ*/
.wp-pagenavi span.current{
	background-color: #9d9c9c;
	color: #fff;
}
/*hover時のborder*/
.wp-pagenavi a:hover, .wp-pagenavi a:focus, .wp-pagenavi a:active, .wp-pagenavi span.current{
	border-color: rgba(29,74,159,0)!important;
	background-color: #9d9c9c;
	color: #fff;
}
@media screen and (min-width: 769px){
	.wp-pagenavi_area{
		margin-top: 3rem;
	}
	.wp-pagenavi a, .wp-pagenavi span{
		padding: 1rem 1.5rem!important;
	}
}
@media screen and (max-width: 768px){
	.wp-pagenavi_area{
		margin-top: 2rem;
	}
	.wp-pagenavi a, .wp-pagenavi span{
		padding: .25rem .5rem!important;
	}
}
/* ******************************************************************************************
	Snow Monkey Forms
****************************************************************************************** */
/* デフォルトスタイル上書き */
/* th */
.smf-form--business .smf-item__col--label{
	display: flex;
	align-items: center;
	flex-direction: column;
	justify-content: center;
}
.smf-form--business .smf-item__col--label{
	background-color: var(--accentColor);
}
.smf-form--business .smf-item__col{
	padding: 1rem .5rem;
}
/* 必須 */
.smf-item__label__text .has-inline-color.has-vivid-red-color{
	display: inline-block;
}
/* ボタン */
.smf-action .smf-button-control__control{
	padding: .8rem 2.5rem;
	border-radius: 50px;
	background-color: #fff;
}
/* 段落 */
.st_editor .smf-form p{
	margin-bottom: .5rem;
}

.smf-form--business .smf-item:not(:first-child) {
    border-top: solid 1px #ccc;
}

.wp-block-snow-monkey-forms-item.smf-item + h1,.wp-block-snow-monkey-forms-item.smf-item + h2,.wp-block-snow-monkey-forms-item.smf-item + h3,.wp-block-snow-monkey-forms-item.smf-item + h4,.wp-block-snow-monkey-forms-item.smf-item + h5,.wp-block-snow-monkey-forms-item.smf-item + h6{
	margin-top: var(--cmsSpace_medium);
}

.smf-form--business .smf-item + div {
    border-top: none !important;
}
.vkfs .btn[type=submit] {
    display: block;
    font-size: 1rem;
    letter-spacing: .25rem;
    padding: .5rem 1rem;
    max-width: 250px;
    color: #fff;
    text-align: center;
    font-weight: bold;
	box-shadow: 0px 2px 10px rgb(0 0 0 / 14%);
	border-radius: 50vh;
}

.vkfs .btn[type=submit]:hover{
	background-color: #038fe7;
	background-position: right center;
	background-size: 200% auto;
	-webkit-animation: pulse 2s infinite;
	animation: ripple 1.5s infinite;
	color: #fff;
  }
  @keyframes ripple {
	0% {box-shadow: 0 0 0 0 #1B85FB;}
	70% {box-shadow: 0 0 0 10px rgb(27 133 251 / 0%);}
	100% {box-shadow: 0 0 0 0 rgb(27 133 251 / 0%);}
  }

.wp-block-group.form-txt-flex .wp-block-group__inner-container{
    display:flex;
	flex-wrap: wrap;
    align-items:center;
    gap:.5rem;
}
/* .smf-form--business .smf-item__col {
    display: flex;
    align-items: center;
} */

.smf-item__controls .wp-block-group{
	margin-bottom: 0;
}


.smf-item__controls .wp-block-group + .wp-block-group{
	margin-top: 1rem;
}

.st_editor p.text_flex {
    margin-bottom: 0;
}

.wp-block-group.form-txt-flex p {
    color:#5b5b5b;
}
/* ファイル */

@media screen and (max-width: 768px){
	.st_editor .smf-placeholder {
		width: 100%;
	}
	.smf-form .smf-text-control__control{
		width: 100%;
	}
}
@media screen and (max-width: 576px){
	.st_editor .smf-form .smf-item .smf-file-control > label{
		display: block;
	}
	.st_editor .smf-form .smf-item .smf-file-control__filename{
		margin-left: 0;
	}

}



/* ******************************************************************************************
	snow monky block
****************************************************************************************** */
/* ******************************************************************************************
 * snow monkey block
 ****************************************************************************************** */
/* アコーディオンアイテム全体のスタイル */
.smb-accordion__item {
    --smb-accordion-item--background-color: #c7c7c7; /* Snow Monkey Blocksのカスタムプロパティ */
    border-radius: 5px; /* 角を丸くする */
}

/* アコーディオンタイトル内のラベルテキストのスタイル */
.smb-accordion__item__title__label {
    /* color: #fff; */ /* コメントアウトされていますが、必要であれば有効化してください */
    font-size: clamp(1.333rem, calc(1.279rem + 0.259vw), 1.556rem); /* レスポンシブなフォントサイズ */
    font-weight: bold; /* 太字 */
    border-radius: 5px; /* 角を丸くする */
}

/* アコーディオンボディ（コンテンツ部分）のスタイル */
.smb-accordion__item__body {
    border: solid 1px #c7c7c7; /* ボーダー */
    background-color: #f1f1f1; /* 背景色 */
}

/* 既存のSVGアイコン（矢印）を完全に非表示にする */
/* これにより、CSSで追加するプラスマイナスアイコンのみが表示されます */
.smb-accordion__item__title__icon {
    display: none !important; /* 強制的に非表示にします */
}

/* アコーディオンのタイトル要素にスタイルを適用 */
/* アイコンのための右側のスペースを確保し、表示を整えます */
.smb-accordion__item__title {
    position: relative; /* 疑似要素の配置基準に設定 */
    padding-right: 40px; /* アイコン分の右側の余白を確保（必要に応じて調整してください） */
    cursor: pointer; /* クリック可能であることを示すカーソル */
    display: flex; /* タイトルテキストとアイコンの位置調整にFlexboxを使用 */
    align-items: center; /* 垂直方向中央揃え */
    justify-content: space-between; /* タイトルとアイコンを左右に配置 */
    background-color: #f8f8f8; /* タイトルの背景色 */
    color: #333; /* タイトルの文字色 */
    padding: 15px 20px; /* タイトルの内側の余白 */
    border-bottom: 1px solid #eee; /* タイトルの下に区切り線 */
    transition: background-color 0.3s ease; /* ホバー時の背景色アニメーション */
}

/* ホバー時のタイトル背景色 */
.smb-accordion__item__title:hover {
    background-color: #f0f0f0;
}

/* 疑似要素でアイコンを追加するための共通スタイル */
/* プラスとマイナス両方に適用されるので、共通プロパティをここにまとめます */
.smb-accordion__item__title::before,
.smb-accordion__item__title::after {
    position: absolute; /* タイトル要素内での絶対配置 */
    right: 15px; /* 右からの位置（調整してください） */
    top: 50%; /* 垂直中央に */
    transform: translateY(-50%); /* 垂直中央に微調整（初期値） */
    font-size: 1.5em; /* アイコンのサイズ */
    font-weight: bold; /* 太字 */
    color: #666; /* アイコンの色を統一 */
    flex-shrink: 0; /* タイトルテキストが縮小してもアイコンのスペースを確保 */
    /* opacityとtransformをアニメーション対象に */
    transition: opacity 0.3s ease, transform 0.3s ease; 
}

/* 疑似要素でプラスアイコンを追加（閉じている状態のデフォルト） */
.smb-accordion__item__title::after {
    content: '＋'; /* プラス記号を表示 */
    opacity: 1; /* 初期状態は表示 */
    transform: translateY(-50%) scale(1); /* 初期状態の変形（回転なし） */
    letter-spacing: 0; /* プラスアイコンのletter-spacingはデフォルト（ゼロ） */
}

/* 疑似要素でマイナスアイコンを追加（初期状態は非表示） */
/* ::afterと重ねてアニメーションさせるために::beforeを使用します */
.smb-accordion__item__title::before {
    content: '－'; /* マイナス記号を表示（全角で少し太く見える場合があります） */
    opacity: 0; /* 初期状態は非表示 */
    transform: translateY(-50%) scale(0.8); /* 初期状態の変形（少し小さくしておく） */
    letter-spacing: 0.5em; /* マイナスアイコンの左右にスペースを追加して横幅を広く見せる */
}

/* アコーディオンが開いているときのアイコンの切り替え */
/* 非表示のチェックボックスの `:checked` 状態と後続の要素の関係を利用 */
/* プラスアイコンをフェードアウトしながら縮小 */
.smb-accordion .smb-accordion__item__control:checked + .smb-accordion__item__title::after,
.smb-accordion .smb-accordion__item__control:checked + .smb-accordion__item__body + .smb-accordion__item__title::after {
    opacity: 0; /* プラスアイコンをフェードアウト */
    transform: translateY(-50%) scale(0.8); /* プラスアイコンを縮小しながらフェードアウト */
}

/* アコーディオンが開いているときにマイナスアイコンを表示 */
/* マイナスアイコンをフェードインしながら元の位置・サイズに */
.smb-accordion .smb-accordion__item__control:checked + .smb-accordion__item__title::before,
.smb-accordion .smb-accordion__item__control:checked + .smb-accordion__item__body + .smb-accordion__item__title::before {
    opacity: 1; /* マイナスアイコンをフェードイン */
    transform: translateY(-50%) scale(1); /* マイナスアイコンを元の位置・サイズに */
}

/* アコーディオンのコンテンツ部分のスタイル */
.smb-accordion__item__content {
    background-color: #ffffff;
    padding: 20px;
    border: 1px solid #eee;
    border-top: none; /* タイトルの線と繋がるように */
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.03);
    /* コンテンツの開閉アニメーション */
    transition: max-height 0.3s ease-out, padding 0.3s ease-out, opacity 0.3s ease-out;
    overflow: hidden; /* 高さがゼロの時に内容を隠す */
    max-height: 0; /* 初期状態は非表示（高さゼロ） */
    opacity: 0; /* 初期状態は透明 */
}

/* アコーディオンが開いている時のコンテンツスタイル */
/* 非表示のチェックボックスの `:checked` 状態と後続の要素の関係を利用 */
.smb-accordion .smb-accordion__item__control:checked + .smb-accordion__item__body,
.smb-accordion .smb-accordion__item__control:checked + .smb-accordion__item__title + .smb-accordion__item__body {
    opacity: 1; /* 表示 */
    padding: 20px; /* paddingもアニメーションさせるため再定義 */
}

/* アコーディオン全体のスタイル */
.smb-accordion {
    margin: 30px auto; /* 中央に配置し、上下に余白 */
    border: 1px solid #eee; /* 軽い枠線 */
    border-radius: 8px; /* 全体の角を丸く */
    overflow: hidden; /* 角丸に合わせて内容を隠す */
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.08); /* 全体に軽い影 */
}

/* 開いたアコーディオンのタイトルの下のボーダーをなくす（コンテンツと一体感を出すため） */
/* 非表示のチェックボックスの `:checked` 状態と後続の要素の関係を利用 */
.smb-accordion .smb-accordion__item__control:checked + .smb-accordion__item__title,
.smb-accordion .smb-accordion__item__control:checked + .smb-accordion__item__body + .smb-accordion__item__title {
    border-bottom-color: transparent;
}

/* ******************************************************************************************
	simple-sitemap
****************************************************************************************** */
.st_editor .simple-sitemap-page.main{
	margin-left: 0;
}
.st_editor ul .sitemap-item{
	list-style-type: none;
	font-weight: bold;
	font-size: 1.1rem;
	letter-spacing: 2px;
}
.st_editor ul .sitemap-item a{
	display: block;
	padding: 1rem 2rem;
	border-bottom: 3px solid var(--mainColor);
	background-color: rgb(0 0 0 / 5%);
	color: var(--black);
	text-decoration: none;
}
.st_editor .children .sitemap-item a{
	border-bottom: 1px solid var(--mainColor);
	background-color: initial;
}
@media screen and (max-width: 576px){
	.st_editor ul .sitemap-item a{
		padding: 1rem .5rem;
	}
}
.sitemap-item a::before{
	content: "\f138";
	padding-right: 10px;
	color: var(--mainColor);
	font-size: 1rem;
	font-family: "Font Awesome 5 Free";
}
.st_editor .sitemap-item .children{
	padding-left: 0;
}

/* ******************************************************************************************
	quiz marker
****************************************************************************************** */
.ays-quiz-container .ays-image-question-img img{
	width: initial!important;
}