/*
Theme Name: Saiboren Theme
Theme URI: http://www.saiboren.or.jp/
Author: あなたの名前
Description: 埼玉県ひとり親福祉連合会のサイトをWordPressテーマ化したもの
Version: 1.0
*/

/* 記事 */
article{
	border-top-width : 1px;
	border-left-width : 1px;
	border-right-width : 1px;
	border-bottom-width : 1px;
	border-style : solid;
	border-color : #e3e3e3;
	box-shadow : 0px 3px 0px 0px #eaeaea;
	margin-bottom: 20px;
}

/* 記事一覧 */
.content-list > ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
.content-list > ul > li { list-style: none; }
.content-list > ul > li::marker { content: ""; } /* 念のため */

.archive_item,
article {
  max-width: 100%;
  overflow: hidden;
}

.archive_item img,
.archive_item figure,
.archive_item video,
.archive_item iframe {
	max-width: 100%;
	height: auto;
	display: block;
	margin: 0 auto;
}

.archive_item .wp-block-image,
.archive_item .wp-block-image img {
	max-width: 100%;
	height: auto;
	display: block;
	margin: 0 auto;
}

.archive_item {
  overflow-wrap: anywhere;   /* 主要ブラウザ */
  word-break: break-word;    /* 旧ブラウザ対策 */
}

.archive_item pre {
  white-space: pre-wrap;
  overflow-wrap: anywhere;
  word-break: break-word;
  margin: 0 0 .8em;
}

/* 記事一覧 ページネーション */
.pagination {
	text-align: center;
	margin-bottom: 15px;
	margin-top: 15px;
}

.pagination ul {
	display: inline-flex;
	list-style: none;
	padding: 0;
	margin: 0;
	gap: 0.5rem;
}

.pagination li a,
.pagination li span {
	display: inline-block;
	padding: 0.5em 0.75em;
	border: 1px solid #ddd;
	text-decoration: none;
}

.pagination .current {
	background-color: #97ca00;
	color: #fff;
	border-color: #ddd;
}

/* 記事一覧タイトル */
article > header > h4 > a, article > header > h4 > span{
	font-size : 1.8rem;
	font-weight : normal;
	line-height : 1.5;
	color : #343434;
	background-color : #ffffff;
	background-image : url(/wp-content/themes/saiboren-theme/assets/images/back-title-01.png);
	background-repeat : repeat-x;
	padding-top : 11px;
	padding-left : 40px;
	padding-right : 10px;
	padding-bottom : 11px;
	margin-top : 0px;
	margin-left : 0px;
	margin-right : 0px;
	margin-bottom : 0px;
	border-top-width : 3px;
	border-bottom-width : 1px;
	border-top-style : solid;
	border-bottom-style : dotted;
	border-top-color : #97ca00;
	border-bottom-color : #c3c0b3;
	display : block;
	position : relative;
}

article > header > h4 > a::before, article > header > h4 > span::before{
	color : #c8e162;
	background-color : #a4d119;
	background-image : url(/wp-content/themes/saiboren-theme/assets/images/back-title-03.png);
	background-repeat : repeat-x;
	text-indent : -9999px;
	border-top-left-radius : 3px 3px;
	border-top-right-radius : 3px 3px;
	border-bottom-right-radius : 3px 3px;
	border-bottom-left-radius : 3px 3px;
	width : 6px;
	min-height : 26px;
	display : block;
	position : absolute;
	top : 11px;
	bottom : 13px;
	left : 12px;
	z-index : 1;
	overflow : hidden;
	content : ".";
}


/* 記事詳細 タイトル */
article > header > h1{
	font-size : 1.8rem;
	font-weight : normal;
	line-height : 1.5;
	color : #343434;
	background-color : #ffffff;
	background-image : url(/wp-content/themes/saiboren-theme/assets/images/back-title-01.png);
	background-repeat : repeat-x;
	padding-top : 11px;
	padding-left : 40px;
	padding-right : 10px;
	padding-bottom : 11px;
	margin-top : 0px;
	margin-left : 0px;
	margin-right : 0px;
	margin-bottom : 0px;
	border-top-width : 3px;
	border-bottom-width : 1px;
	border-top-style : solid;
	border-bottom-style : dotted;
	border-top-color : #97ca00;
	border-bottom-color : #c3c0b3;
	display : block;
	position : relative;
}

article > header > h1::before{
	color : #c8e162;
	background-color : #a4d119;
	background-image : url(/wp-content/themes/saiboren-theme/assets/images/back-title-03.png);
	background-repeat : repeat-x;
	text-indent : -9999px;
	border-top-left-radius : 3px 3px;
	border-top-right-radius : 3px 3px;
	border-bottom-right-radius : 3px 3px;
	border-bottom-left-radius : 3px 3px;
	width : 6px;
	min-height : 26px;
	display : block;
	position : absolute;
	top : 11px;
	bottom : 13px;
	left : 12px;
	z-index : 1;
	overflow : hidden;
	content : ".";
}

/* 記事詳細 本文ブロック */
.archive_item{
	margin-top: 20px;
	margin-left: 20px;
	margin-right: 20px;
	margin-bottom: 20px;
	font-size: 16.5px;      /* 16018pxで微調整 */
	line-height: 1.7;       /* 1.601.8が目安 */
	color: #222;            /* やや濃いめの文字色でコントラスト改善 */

	/* 日本語向けの読みやすさ補助（対応ブラウザで有効） */
	-webkit-text-size-adjust: 100%;
	font-feature-settings: "palt" 1; /* プロポーショナル和文 */
	text-underline-position: under;  /* リンクの下線位置補正 */
}
	
.archive_item p {
	margin: 0 0 0.8em;         /* 段落間の余白を適度に */
	white-space: normal;    /* pre-wrap等を無効化して空行見えを防止 */
}

.archive_item br {
  display: inline;
  margin: 0;
  line-height: 1;
}

/* 記事詳細　メタ情報 */
article > footer{
	margin-top: 0px;
	margin-left: 20px;
	margin-right: 20px;
	margin-bottom: 20px;
}
article > footer .date{
	background-color : transparent;
	background-image : url(/wp-content/themes/saiboren-theme/assets/images/icon-date.gif);
	background-repeat : no-repeat;
	background-attachment : scroll;
	background-position : left center;
	background-clip : border-box;
	background-origin : padding-box;
	background-size : auto auto;
	padding-left : 16px;
}

/* 見出し（本文内にあるh2/h3想定） */
.archive_item h2 { font-size: 1.25em; margin: 1.2em 0 0.6em; }
.archive_item h3 { font-size: 1.125em; margin: 1.0em 0 0.5em; }

/* 強調の濃さを少し抑えて読みやすく */
.archive_item b,
.archive_item strong { font-weight: 600; }

/* リンクの可読性 */
.archive_item a {
  color: #0b7;            /* テーマに合わせて調整 */
  text-decoration: underline;
}
.archive_item a:hover { opacity: .85; }

/* 箇条書き（本文にul/olが入る場合） */
.archive_item ul,
.archive_item ol {
  margin: 0.6em 0 0.8em 1.2em;
  padding: 0;
}
.archive_item li { margin: 0.2em 0; }

/* 関連記事ブロックと本文の間隔を確保 */
#jp-relatedposts { margin-top: 1.4rem; }

/* テーブルレイアウト */
.tablepress {
	border-collapse: collapse !important;
	width: 100% !important;
}

.tablepress th,
.tablepress td {
	border: 1px solid #ddd !important;
	padding: 8px !important;
	text-align: left !important;
}

/* キャプション付き画像をレスポンシブ化 */
.wp-caption {
  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
}

.wp-caption img {
  width: 100% !important;
  height: auto !important;
}

.wp-caption-text {
  font-size: 0.9em;
  text-align: center;
  padding-top: 0.3em;
}


/* ----- モバイル最適化（幅768px未満） ----- */
@media (max-width: 767px) {
  .archive_item {
    font-size: 15.5px;    /* 画面が狭い端末はやや小さめ */
    line-height: 1.75;    /* 読点が詰まって見えないように少し広め */
  }
}

/* ----- ワイド画面（デスクトップ大） ----- */
@media (min-width: 1200px) {
  .archive_item { font-size: 17.5px; } /* 余裕があれば一段階アップ */
}

#content dl{
	padding-top : 0px;
	padding-left : 0px;
	padding-right : 0px;
	padding-bottom : 0px;
	margin-top : 0px;
	margin-left : 30px;
	margin-right : 30px;
	margin-bottom : 0px;
}

#content dl::after{
	clear : both;
	display : table;
	content : "";
}

#content dl > dd{
	padding-top : 12px;
	padding-left : 154px;
	padding-right : 0px;
	padding-bottom : 11px;
	margin-top : 0px;
	margin-left : -154px;
	margin-right : 0px;
	margin-bottom : 0px;
	border-bottom-width : 1px;
	border-bottom-style : dotted;
	border-bottom-color : #c3c0b3;
	width : 100%;
	float : left;
}

#content dl > dt{
	background-image : url(/wp-content/themes/saiboren-theme/assets/images/icon-arrow-01.gif);
	background-repeat : no-repeat;
	background-position : left 1.2em;
	padding-top : 12px;
	padding-left : 24px;
	padding-right : 5px;
	padding-bottom : 11px;
	width : 154px;
	float : left;
}

#content h3{
	background-color : transparent;
	margin-bottom : 5px;
}

#content h3 > a, #content h3 > span {
	font-size : 1.8rem;
	font-weight : normal;
	line-height : 1.5;
	color : #343434;
	background-color : #ffffff;
	background-image : url(/wp-content/themes/saiboren-theme/assets/images/back-title-01.png);
	background-repeat : repeat-x;
	padding-top : 11px;
	padding-left : 40px;
	padding-right : 10px;
	padding-bottom : 11px;
	margin-top : 0px;
	margin-left : 0px;
	margin-right : 0px;
	margin-bottom : 0px;
	border-top-width : 3px;
	border-bottom-width : 1px;
	border-top-style : solid;
	border-bottom-style : dotted;
	border-top-color : #97ca00;
	border-bottom-color : #c3c0b3;
	display : block;
	position : relative;
}

#content h3 > a::before, #content h3 > span::before{
	color : #c8e162;
	background-color : #a4d119;
	background-image : url(/wp-content/themes/saiboren-theme/assets/images/back-title-03.png);
	background-repeat : repeat-x;
	text-indent : -9999px;
	border-top-left-radius : 3px 3px;
	border-top-right-radius : 3px 3px;
	border-bottom-right-radius : 3px 3px;
	border-bottom-left-radius : 3px 3px;
	width : 6px;
	min-height : 26px;
	display : block;
	position : absolute;
	top : 11px;
	bottom : 13px;
	left : 12px;
	z-index : 1;
	overflow : hidden;
	content : ".";
}


@media screen and (max-width: 568px) {

	#sp-entry-content-1 dl dd, #sp-wp-post-list-1 dl dd{
	margin-left : 20px;
	}

	.hpb-viewtype-date#sp-entry-content-1 dd, .hpb-viewtype-date#sp-wp-post-list-1 dd{
	padding-top : 0px;
	padding-left : 5px;
	padding-right : 0px;
	padding-bottom : 5px;
	}

	.hpb-viewtype-date#sp-entry-content-1 dt, .hpb-viewtype-date#sp-wp-post-list-1 dt{
	padding-bottom : 5px;
	width : 100%;
	}
}


/* 共通ヘッダー部 */
#site-header .extra{
	padding-top : 0px;
	position : static;
}

#site-header .extra p.address{
	font-size : 1.3rem;
	color : #333333;
	padding-left : 0px;
	padding-right : 0px;
}

#site-header .extra p.tel{
	font-size : 2.2rem;
	color : #669900;
}

#site-header .extra p.mail{
	font-size : 1.7rem;
	color : #669900;
}

#site-header .site-description{
	font-size : 1.5rem;
	font-weight : normal;
	color : #669900;
	margin-bottom : 0px;
	position : absolute;
}

#site-header .site-title{
	background-image : url(/wp-content/themes/saiboren-theme/assets/images/site-title.png);
	background-repeat : no-repeat;
	margin-bottom : 0px;
	width : 279px;
	height : 46px;
}

#site-header .site-title a{
	text-indent : -9999px;
	display : block;
	overflow : hidden;
}

#site-header .site-title{
	background-image : url(/wp-content/themes/saiboren-theme/assets/images/image219.jpg);
}

#site-header .site-title a{
	text-indent : 0px;
	overflow : visible;
}

#site-header > .site-title{
	font-size : 2.5rem;
	font-weight : bold;
	color : #ccd000;
	background-image : url(/wp-content/themes/saiboren-theme/assets/images/site-title8.png);
}

.sp-site-branding2 .site-description{
	font-size : 1rem;
	font-weight : normal;
	color : #929292;
}

@media not screen, screen and (min-width: 569px) {

	#site-header{
	padding-top : 0px;
	padding-bottom : 20px;
	}

	#site-header .extra{
	margin-top : 40px;
	float : right;
	}

	#site-header .extra p{
	text-align : right;
	}

	#site-header .site-description{
	text-align : right;
	top : 6px;
	}

	#site-header .site-title{
	margin-top : 40px;
	float : left;
	}
}

@media screen and (max-width: 568px) {

	#site-header{
	padding-top : 40px;
	padding-bottom : 25px;
	}

	#site-header .extra{
	margin-top : 20px;
	}

	#site-header .extra p{
	text-align : center;
	}

	#site-header .extra p.tel{
	text-align : center;
	}

	#site-header .site-description{
	text-align : center;
	padding-left : 10px;
	padding-right : 10px;
	top : 5px;
	}

	#site-header .site-title{
	margin-left : auto;
	margin-right : auto;
	}
}



/* ナビゲーションメニュー */
#sp-site-navigation-1 > ul > li.current_page_item > a{
	font-size : 1.3rem;
}

@media not screen, screen and (min-width: 569px) {

	#sp-site-navigation-1{
		background-image : url(/wp-content/themes/saiboren-theme/assets/images/back-main-nav-01.png);
		background-position : left 2px;
		padding-top : 2px;
		padding-left : 100%;
		padding-right : 100%;
		margin-left : -100%;
		margin-right : -100%;
		border-top-width : 1px;
		border-bottom-width : 1px;
		border-top-style : solid;
		border-bottom-style : solid;
		border-top-color : #d7d7d7;
		border-bottom-color : #d7d7d7;
		position : relative;
		text-align: center
	}

	#sp-site-navigation-1 ul ul{
		border-top-width : 1px;
		border-left-width : 1px;
		border-right-width : 1px;
		border-bottom-width : medium;
		border-top-style : solid;
		border-left-style : solid;
		border-right-style : solid;
		border-bottom-style : none;
		border-top-color : #ffffff;
		border-left-color : #ffffff;
		border-right-color : #ffffff;
		border-bottom-color : initial;
	}

	#sp-site-navigation-1 ul ul li{
		padding-top : 0px;
		padding-bottom : 0px;
		border-bottom-width : 1px;
		border-bottom-style : solid;
		border-bottom-color : #ffffff;
		position : relative;
	}

	#sp-site-navigation-1 ul ul li:hover > ul{
		display : block;
		top : 0px;
		left : 100%;
	}

	#sp-site-navigation-1 ul ul li > a{
		color : #333333;
		background-color : #f1f4d0;
		border-top-width : medium;
		border-left-width : medium;
		border-right-width : medium;
		border-bottom-width : medium;
		border-top-style : none;
		border-left-style : none;
		border-right-style : none;
		border-bottom-style : none;
		border-top-color : initial;
		border-left-color : initial;
		border-right-color : initial;
		border-bottom-color : initial;
	}

	#sp-site-navigation-1 ul ul li > a:hover{
		background-color : #e6eabb;
	}

	#sp-site-navigation-1::after{
		border-top-width : 1px;
		border-bottom-width : 1px;
		border-top-style : solid;
		border-bottom-style : solid;
		border-top-color : #6f9501;
		border-bottom-color : #ffffff;
		display : block;
		position : absolute;
		bottom : 0px;
		right : 0px;
		left : 0px;
		content : "";
	}

	#sp-site-navigation-1::before{
		border-top-width : 1px;
		border-bottom-width : 1px;
		border-top-style : solid;
		border-bottom-style : solid;
		border-top-color : #ffffff;
		border-bottom-color : #6f9501;
		display : block;
		position : absolute;
		top : 0px;
		right : 0px;
		left : 0px;
		content : "";
	}

	#sp-site-navigation-1 > ul{
		margin-top : 0px;
		margin-left : auto;
		margin-right : auto;
		margin-bottom : 0px;
		border-left-width : 1px;
		border-left-style : solid;
		border-left-color : #6f9501;
		display: inline-block;
	}

	#sp-site-navigation-1 > ul > li.current-menu-ancestor > a{
		color : #eaff01;
		background-image : url(/wp-content/themes/saiboren-theme/assets/images/back-main-nav-01-hover.png);
	}

	#sp-site-navigation-1 > ul > li.current-menu-item > a{
		color : #eaff01;
		background-image : url(/wp-content/themes/saiboren-theme/assets/images/back-main-nav-01-hover.png);
	}

	#sp-site-navigation-1 > ul > li.current_page_ancestor > a{
		color : #eaff01;
		background-image : url(/wp-content/themes/saiboren-theme/assets/images/back-main-nav-01-hover.png);
	}

	#sp-site-navigation-1 > ul > li.current_page_item > a{
		color : #eaff01;
		background-image : url(/wp-content/themes/saiboren-theme/assets/images/back-main-nav-01-hover.png);
	}

	#sp-site-navigation-1 > ul > li > a{
		font-size : 1.4rem;
		line-height : 1;
		color : #ffffff;
		padding-top : 17px;
		padding-left : 18px;
		padding-right : 18px;
		padding-bottom : 17px;
		border-left-width : 1px;
		border-right-width : 1px;
		border-left-style : solid;
		border-right-style : solid;
		border-left-color : #9ecd12;
		border-right-color : #6f9501;
		display : block;
	}

	#sp-site-navigation-1 > ul > li > a:hover{
		font-size : 1.4rem;
		color : #ffffff;
		background-image : url(/wp-content/themes/saiboren-theme/assets/images/back-main-nav-01-hover.png);
	}
	
	.sp-nav-toggle {
		display: none;
	}
}

@media screen and (max-width: 568px) {

	/* ナビゲーション全体 */
	#sp-site-navigation-1 {
		font-size: 1.3rem;
		margin-top: 0;
		position: relative;
	}

	/* ハンバーガー右上固定 */
	.sp-nav-toggle {
		display: block;
		position: fixed;      /* ヘッダー右上に固定 */
		top: 10px;               /* 上からの位置 */
		right: 15px;             /* 右からの位置 */
		width: 50px;             /* ボタンの大きさ */
		height: 50px;
		font-size: 2.5rem;       /* アイコンを大きく */
		background-color: #83a520;
		color: #fff;             /* アイコン文字色 */
		border: none;
		cursor: pointer;
		z-index: 9999;           /* メニューより前面に表示 */
		box-shadow: 0 4px 8px rgba(0,0,0,0.3); /* 影で浮き上がる感じ */
		transition: background 0.3s, transform 0.3s;
	}

	/* メニューリストを画面上から被せる形に */
	.sp-nav-list {
		position: fixed;
		top: 50px;          /* ハンバーガーの下から開始 */
		right: 10px;        /* ハンバーガーの右端に揃える */
		background: #fff;
		border: 1px solid #ddd;
		padding: 10px;
		display: flex;
		flex-direction: column;
		max-height: 0;      /* 初期は非表示 */
		overflow: hidden;
		box-shadow: 0 4px 8px rgba(0,0,0,0.2);
		transition: max-height 0.4s ease, opacity 0.4s ease;
		opacity: 0;
		z-index: 999;
	}

	/* メニュー開いた状態 */
	.sp-nav-list.active {
		max-height: 500px;  /* 必要に応じて調整 */
		opacity: 1;
		transform: scale(0.95);
	}

	/* ホバー時に色を変える */
	.sp-nav-toggle:hover {
		background-color: #83a520;
	}
/*
	#sp-site-navigation-1 .menu-toggle{
	font-size : 1.3rem;
	background-color : #fdbb36;
	background-image : url(/wp-content/themes/saiboren-theme/assets/images/icon-menu-toggle.png);
	background-repeat : no-repeat;
	background-position : center center;
	text-indent : -9999px;
	padding-top : 12px;
	padding-bottom : 12px;
	}

	#sp-site-navigation-1 li > a:active{
	color : #ffffff;
	background-color : #fdbb36;
	border-bottom-width : 1px;
	border-bottom-style : solid;
	border-bottom-color : #fdbb36;
	}

	#sp-site-navigation-1 li > a:hover{
	color : #ffffff;
	background-color : #fdbb36;
	border-bottom-width : 1px;
	border-bottom-style : solid;
	border-bottom-color : #fdbb36;
	}
*/
	#sp-site-navigation-1 ul li{
	line-height : 1.5;
	text-align : left;
	}

	#sp-site-navigation-1 ul li > a{
	font-weight : bold;
	color : #ffffff;
	background-color : #83a520;
	padding-top : 9px;
	padding-left : 25px;
	padding-right : 10px;
	padding-bottom : 8px;
	border-bottom-width : 1px;
	border-bottom-style : solid;
	border-bottom-color : #9ac423;
	}

	#sp-site-navigation-1 ul ul li > a{
	padding-left : 40px;
	padding-right : 10px;
	}

	#sp-site-navigation-1 ul ul ul li > a{
	padding-left : 55px;
	}

	#sp-site-navigation-1 > ul li.current-menu-ancestor > a{
	color : #ffffff;
	background-color : #fdbb36;
	border-bottom-width : 1px;
	border-bottom-style : solid;
	border-bottom-color : #fdbb36;
	}

	#sp-site-navigation-1 > ul li.current-menu-item > a{
	color : #ffffff;
	background-color : #fdbb36;
	border-bottom-width : 1px;
	border-bottom-style : solid;
	border-bottom-color : #fdbb36;
	}

	#sp-site-navigation-1 > ul li.current_page_ancestor > a{
	color : #ffffff;
	background-color : #fdbb36;
	border-bottom-width : 1px;
	border-bottom-style : solid;
	border-bottom-color : #fdbb36;
	}

	#sp-site-navigation-1 > ul li.current_page_item > a{
	color : #ffffff;
	background-color : #fdbb36;
	border-bottom-width : 1px;
	border-bottom-style : solid;
	border-bottom-color : #fdbb36;
	}
}

@media not screen, screen and (min-width: 569px) {

	#site-navigation-footer{
		background-image : url(/wp-content/themes/saiboren-theme/assets/images/back-main-nav-01.png);
		background-position : left 2px;
		padding-top : 2px;
		padding-left : 100%;
		padding-right : 100%;
		padding-bottom : 2px;
		margin-left : -100%;
		margin-right : -100%;
		margin-bottom : 4px;
		border-top-width : 1px;
		border-bottom-width : 1px;
		border-top-style : solid;
		border-bottom-style : solid;
		border-top-color : #d7d7d7;
		border-bottom-color : #d7d7d7;
		position : relative;
	}

	#site-navigation-footer ul{
		font-size : 1.3rem;
		padding-top : 15px;
		padding-bottom : 14px;
		margin-top : 0px;
		margin-left : auto;
		margin-right : auto;
		margin-bottom : 0px;
	}

	#site-navigation-footer ul li{
		margin-top : 0px;
		margin-left : 0px;
		margin-right : 0px;
		margin-bottom : 0px;
	}

	#site-navigation-footer ul li a{
		font-size : 1.4rem;
		line-height : 1;
		color : #ffffff;
		vertical-align : middle;
		display : inline-block;
	}

	#site-navigation-footer ul li::after{
		color : #ffffff;
		margin-top : 0px;
		margin-left : 5px;
		margin-right : 5px;
		margin-bottom : 0px;
		content : "/";
	}

	#site-navigation-footer ul li:last-child::after{
		display : none;
	}

	#site-navigation-footer ul ul::before{
		color : #ffffff;
		margin-top : 0px;
		margin-left : 5px;
		margin-right : 5px;
		margin-bottom : 0px;
		content : "/";
	}

	#site-navigation-footer::after{
		border-top-width : 1px;
		border-bottom-width : 1px;
		border-top-style : solid;
		border-bottom-style : solid;
		border-top-color : #6f9501;
		border-bottom-color : #ffffff;
		display : block;
		position : absolute;
		bottom : 0px;
		right : 0px;
		left : 0px;
		content : "";
	}

	#site-navigation-footer::before{
		border-top-width : 1px;
		border-bottom-width : 1px;
		border-top-style : solid;
		border-bottom-style : solid;
		border-top-color : #ffffff;
		border-bottom-color : #6f9501;
		display : block;
		position : absolute;
		top : 0px;
		right : 0px;
		left : 0px;
		content : "";
	}

	#site-navigation-footer > ul > li.current-menu-ancestor > a{
		color : #eaff01;
		text-decoration : underline;
	}

	#site-navigation-footer > ul > li.current-menu-item > a{
		color : #eaff01;
		text-decoration : underline;
	}

	#site-navigation-footer > ul > li.current_page_ancestor > a{
		color : #eaff01;
		text-decoration : underline;
	}

	#site-navigation-footer > ul > li.current_page_item > a{
		color : #ffffff;
		text-decoration : underline;
	}

	#site-navigation-footer > ul > li > a:hover{
		color : #eaff01;
		text-decoration : underline;
	}
}

@media screen and (max-width: 568px) {

	#site-navigation-footer{
	font-size : 1.3rem;
	margin-top : 0px;
	}

	#site-navigation-footer .menu-toggle{
	font-size : 1.3rem;
	background-color : #fdbb36;
	background-image : url(/wp-content/themes/saiboren-theme/assets/images/icon-menu-toggle.png);
	background-repeat : no-repeat;
	background-position : center center;
	text-indent : -9999px;
	padding-top : 12px;
	padding-bottom : 12px;
	}

	#site-navigation-footer li > a:active{
	color : #ffffff;
	background-color : #fdbb36;
	border-bottom-width : 1px;
	border-bottom-style : solid;
	border-bottom-color : #fdbb36;
	}

	#site-navigation-footer li > a:hover{
	color : #ffffff;
	background-color : #fdbb36;
	border-bottom-width : 1px;
	border-bottom-style : solid;
	border-bottom-color : #fdbb36;
	}

	#site-navigation-footer ul li{
	line-height : 1.5;
	text-align : left;
	}

	#site-navigation-footer ul li > a{
	font-weight : bold;
	color : #ffffff;
	background-color : #83a520;
	padding-top : 9px;
	padding-left : 25px;
	padding-right : 10px;
	padding-bottom : 8px;
	border-bottom-width : 1px;
	border-bottom-style : solid;
	border-bottom-color : #9ac423;
	}

	#site-navigation-footer ul ul li > a{
	padding-left : 40px;
	padding-right : 10px;
	}

	#site-navigation-footer ul ul ul li > a{
	padding-left : 55px;
	}

	#site-navigation-footer > ul li.current-menu-ancestor > a{
	color : #ffffff;
	background-color : #fdbb36;
	border-bottom-width : 1px;
	border-bottom-style : solid;
	border-bottom-color : #fdbb36;
	}

	#site-navigation-footer > ul li.current-menu-item > a{
	color : #ffffff;
	background-color : #fdbb36;
	border-bottom-width : 1px;
	border-bottom-style : solid;
	border-bottom-color : #fdbb36;
	}

	#site-navigation-footer > ul li.current_page_ancestor > a{
	color : #ffffff;
	background-color : #fdbb36;
	border-bottom-width : 1px;
	border-bottom-style : solid;
	border-bottom-color : #fdbb36;
	}

	#site-navigation-footer > ul li.current_page_item > a{
	color : #ffffff;
	background-color : #fdbb36;
	border-bottom-width : 1px;
	border-bottom-style : solid;
	border-bottom-color : #fdbb36;
	}
}


/* サイドバー */

/* 公式LINE画像 */
/* メインエリアの場合 */
#primary > div#line {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 12px;
	flex-wrap: wrap;
}

#primary > div#line > img {
	display: block;
	height: auto;
	max-width: 100%;
}

#primary > div#line > img#qrcode {
	width: 350px;
}

/* サイドバー */
#sidebar1 > div#line {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 12px;
	flex-wrap: wrap;
	margin-top: 20px;
}

#sidebar1 > div#line li {
  list-style: none;
  margin: 0;
  padding: 0;
}

#sidebar1 > div#line > img {
	display: block;
	height: auto;
	width: 100%;
	max-width: 100%;
}

#sidebar{
	font-size : 1.5rem;
	margin-top : 0px;
}

#sidebar .menu-toggle{
	font-size : 1.3rem;
	background-color : #fdbb36;
	background-image : url(/wp-content/themes/saiboren-theme/assets/images/icon-menu-toggle.png);
	background-repeat : no-repeat;
	background-position : center center;
	text-indent : -9999px;
	padding-top : 12px;
	padding-bottom : 12px;
}

#sidebar li > a:active{
	color : #ffffff;
	background-color : #fdbb36;
	border-bottom-width : 1px;
	border-bottom-style : solid;
	border-bottom-color : #fdbb36;
}

#sidebar li > a:hover{
	color : #ffffff;
	background-color : #fdbb36;
	border-bottom-width : 1px;
	border-bottom-style : solid;
	border-bottom-color : #fdbb36;
}

#sidebar ul li{
	line-height : 1.5;
	text-align : left;
}

#sidebar ul li > a{
	color : #ffffff;
	background-color : #83a520;
	padding-top : 9px;
	padding-left : 25px;
	padding-right : 10px;
	padding-bottom : 8px;
	border-bottom-width : 1px;
	border-bottom-style : solid;
	border-bottom-color : #9ac423;
}

#sidebar ul ul li > a{
	padding-left : 40px;
	padding-right : 10px;
}

#sidebar ul ul ul li > a{
	padding-left : 55px;
}

#sidebar ul li.current-menu-ancestor > a{
	color : #ffffff;
	background-color : #fdbb36;
	border-bottom-width : 1px;
	border-bottom-style : solid;
	border-bottom-color : #fdbb36;
}

#sidebar ul li.current-menu-item > a{
	color : #ffffff;
	background-color : #fdbb36;
	border-bottom-width : 1px;
	border-bottom-style : solid;
	border-bottom-color : #fdbb36;
}

#sidebar ul li.current_page_ancestor > a{
	color : #ffffff;
	background-color : #fdbb36;
	border-bottom-width : 1px;
	border-bottom-style : solid;
	border-bottom-color : #fdbb36;
}

#sidebar ul li.current_page_item > a{
	color : #ffffff;
	background-color : #fdbb36;
	border-bottom-width : 1px;
	border-bottom-style : solid;
	border-bottom-color : #fdbb36;
}


/* パンくずリスト */
#breadcrumb-list{
	font-size : 1.3rem;
	padding-top : 15px;
	margin-left : auto;
	margin-right : auto;
	padding-bottom : 15px;
	box-sizing : border-box;
}

#breadcrumb-list div{
	padding-top : 0px;
	padding-left : 0px;
	padding-right : 0px;
	padding-bottom : 0px;
	margin-top : 16px;
	margin-left : 0px;
	margin-right : 0px;
	margin-bottom : 16px;
}

@media screen and (max-width: 568px) {

	#sp-table-13{
	width : 100%;
	}
}

#sp-block-container-3{
	padding-top : 15px;
	padding-bottom : 15px;
	border-top-width : 1px;
	border-top-style : solid;
	border-top-color : #d0dbb1;
	clear : both;
	position : relative;
}

#sp-block-container-3 > *{
	margin-top : 10px;
	margin-bottom : 0px;
}

#sp-block-container-3 > *:first-child{
	margin-top : 0px;
}

@media not screen, screen and (min-width: 569px) {

	#sp-block-container-3{
	padding-top : 15px;
	padding-left : 100%;
	padding-right : 100%;
	padding-bottom : 15px;
	margin-left : -100%;
	margin-right : -100%;
	}
}

@media screen and (max-width: 568px) {

	#sp-block-container-3{
	padding-top : 15px;
	padding-left : 10px;
	padding-right : 10px;
	padding-bottom : 15px;
	}

	#sp-block-container-3 .copyright{
	text-align : center;
	}
}

/* トップページ 最新投稿パーツ */
.sp-wp-post-list#sp-wp-post-list-1{
	font-size : 1.5rem;
	font-weight : normal;
}

.sp-wp-post-list#sp-wp-post-list-2{
	font-size : 1.5rem;
}

.sp-wp-post-list#sp-wp-post-list-3{
	font-size : 1.5rem;
}

.sp-wp-post-list#sp-wp-post-list-5{
	font-size : 1.4rem;
}

/* トップ大バナー */
div.top-banner img{
	max-width : 100%;
	text-decoration : none;
	border-top-left-radius : 6px 6px;
	border-top-right-radius : 6px 6px;
	border-bottom-right-radius : 6px 6px;
	border-bottom-left-radius : 6px 6px;
	box-shadow : 0px 3px 4px rgba(0, 0, 0, 0.5);
	width : 1200px !important;
	display: block;
	margin-left: auto;
	margin-right: auto;
}

div.top-banner figure{
	display: block;
	margin-block-start: 0;
	margin-block-end: 0;
	margin-inline-start: 0;
	margin-inline-end: 0;
    unicode-bidi: isolate;
}

.top-banner{
	padding-top : 20px;
	padding-left : 0px;
	padding-right : 0px;
	padding-bottom : 20px;
}

.top-banner li {
	list-style: none;
	margin: 0;
	padding: 0;
}

@media screen and (max-width: 568px) {
	.top-banner{
		padding-top : 10px;
		padding-left : 0px;
		padding-right : 0px;
		padding-bottom : 10px;
	}
	.top-banner li {
		list-style: none;
		margin: 0;
		padding: 0;
	}
}

/* サイト内検索 */
.global-search-row{
	background: #f5fae8;
	border-top: 1px solid #d7e8b0;
	border-bottom: 1px solid #d7e8b0;
}

.global-search-inner{
	margin: 0 auto;
	padding: 10px 16px;
	display: flex;
	justify-content: center;

	align-items: center;
	gap: 8px 12px;
	flex-wrap: wrap;
}

.global-search-title{
	font-size: 1.4rem;
	font-weight: 600;
	color: #6f9502;
	letter-spacing: .02em;
	white-space: nowrap;
}

.global-search-inner .searchform,
.global-search-inner .search-form
.global-search-inner form[role="search"]{
	width: min(720px, 92vw);
	display: flex;
	gap: 8px;
	align-items: center;
	margin: 0;
}

.global-search-inner input[type="search"],
.global-search-inner input[type="text"]{
	flex: 1 1 auto;
	height: 38px;
	padding: 0 12px;
	border: 1px solid #c9d7b6;
	box-sizing: border-box;
}

.global-search-inner input[type="submit"],
.global-search-inner button[type="submit"]{
	height: 38px;
	padding: 0 14px;
	border: 1px solid #97ca00;
	background: #97ca00;
	color: #fff;
	cursor: pointer;
}
.global-search-inner input[type="submit"]:hover,
.global-search-inner button[type="submit"]{ filter: brightness(0.95); }

/* 視覚的に隠すラベル */
.global-search-inner .screen-reader-text{
	position: absolute; left: -9999px;
}

/* ── PC：背景帯だけ“フルブリード”に広げる ───────────────── */
@media (min-width: 569px){
	/* 既存CSSが #main-inner #contenthead { overflow:hidden; } のため、帯が切れないよう上書き */
	#main-inner #contenthead{ overflow: visible; }

	.global-search-row{
	position: relative;
	width: 100vw;
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
	}

	.global-search-inner{
	width: 1200px;
	box-sizing: content-box;
	}
}

@media (max-width: 568px){
	.global-search-inner{ padding: 8px 10px; }
}

/* 続きを読むボタン */
.more-entry{
	font-size: 1.2rem;
	text-align: right;
	margin-top: 0px;
	margin-left: 0px;
	margin-right: 30px;
	margin-bottom: 0px;
	clear: both;
}

.more-entry a {
    font-size : 1.2rem;
    color : #333333;
    background-color : #f7f7f7;
    text-decoration : none;
    text-align : center;
    padding-top : 6px;
    padding-left : 12px;
    padding-right : 12px;
    padding-bottom : 5px;
    margin-top : 25px;
    margin-right : 0px;
    margin-bottom : 0px;
    border-width : 1px;
    border-style : solid;
    border-color : #dfdfdf;
    border-radius : 0px 0px;
    display : inline-block;
}


@media not screen, screen and (min-width: 569px) {

	#sp-block-container-1{
	padding-top : 0px;
	padding-left : 1000px;
	padding-right : 1000px;
	padding-bottom : 0px;
	margin-top : 0px;
	margin-left : -1000px;
	margin-right : -1000px;
	margin-bottom : 0px;
	min-height : 274px;
	}

	#sp-block-container-1::after{
	background-color : #ffffff;
	margin-left : -1000px;
	margin-right : -1000px;
	height : 4px;
	display : block;
	content : "";
	}

	#sp-block-container-5{
	width : 570px;
	min-height : 1995px;
	}

	#sp-block-container-6{
	width : 580px;
	min-height : 274px;
	}

	#sp-definition-list-1{
	width : 546px;
	min-height : 1453px;
	}

	#site-header > .extra{
	width : 549px;
	}

	#site-header > .site-description{
	top : 6px;
	bottom : auto;
	right : auto;
	left : 0px;
	}

	#site-header > .site-title{
	margin-top : 39px;
	margin-bottom : -52px;
	width : 4000px;
	height : 1px;
	}

	#sp-sns-button-1{
	width : 38px;
	}

	#sp-table-1{
	width : 533px;
	}

	#sp-table-10{
	margin-top : -5px;
	}

	#sp-table-11{
	margin-right : 0px;
	width : 545px;
	}

	#sp-table-12{
	margin-bottom : 35px;
	min-height : 702px;
	}

	#sp-table-13{
	width : 498px;
	min-height : 280px;
	}

	#sp-table-14{
	margin-right : 39px;
	min-height : 1019px;
	}

	#sp-table-15{
	margin-right : -26px;
	}

	#sp-table-2{
	margin-top : 23px;
	margin-bottom : 93px;
	width : 538px;
	min-height : 935px;
	}

	#sp-table-3{
	margin-top : 0px;
	margin-right : -1px;
	width : 607px;
	min-height : 280px;
	}

	#sp-table-4{
	margin-top : -5px;
	margin-left : 4px;
	width : 608px;
	min-height : 256px;
	}

	#sp-table-5{
	margin-top : -3px;
	width : 604px;
	}

	#sp-table-6{
	margin-top : -5px;
	width : 609px;
	min-height : 125px;
	}

	#sp-table-7{
	margin-top : -5px;
	width : 606px;
	min-height : 186px;
	}

	#sp-table-8{
	margin-right : 0px;
	}

	#sp-table-9{
	margin-top : -5px;
	}

	.sp-wp-post-list#sp-wp-post-list-11{
	width : 601px;
	min-height : 75px;
	}

	.sp-wp-post-list#sp-wp-post-list-6{
	margin-bottom : 17px;
	}
}

@media screen and (max-width: 568px) {

	#sp-block-container-1{
	padding-top : 0px;
	padding-left : 10px;
	padding-right : 10px;
	padding-bottom : 0px;
	margin-top : 0px;
	margin-left : 0px;
	margin-right : 0px;
	margin-bottom : 0px;
	}

	#sp-block-container-1::after{
	background-color : #ffffff;
	width : 100%;
	height : 1px;
	display : block;
	content : "";
	}

	#site-header > .site-title{
	width : 296px;
	height : 3px;
	font-size: 1.6rem;
	}
}

#colophon{
	background-color : #f9fcee;
	border-top-width : 1px;
	border-top-style : solid;
	border-top-color : #97ca00;
}

#content{
	min-height : 50px;
}

#contenthead {
}

#main-inner::after{
	clear : both;
	display : table;
	content : "";
}

#main::after{
	clear : both;
	display : table;
	content : "";
}

#masthead{
	font-size : 1.2rem;
	margin-bottom : 0px;
}

#page{
	font-size : 1.2rem;
}

*{
	box-sizing : border-box;
	
}

.sp-list{
	padding-right : 1em;
	margin-bottom : 1.5em;
	list-style-position : inside;
}

.sp-list > li{
	text-align : justify;
	padding-top : 6px;
	padding-bottom : 6px;
	margin-top : 0px;
	margin-left : 0px;
	margin-right : 0px;
	margin-bottom : 0px;
	text-justify : inter-ideograph;
}

.sp-page-title > h1{
	font-size : 1.8rem;
	font-weight : bold;
}

.sp-part-top{
	display : block;
	position : relative;
	box-sizing : border-box;
}

.sp-part-top:not(table)::after{
	clear : both;
	display : table;
	content : "";
}

.sp-site-navigation{
	color : black;
	background-color : white;
}

.sp-site-navigation .menu-toggle{
	display : none;
	cursor : pointer;
}

.sp-site-navigation.vertical{
	font-size : 1.3rem;
	border-top-width : 1px;
	border-bottom-width : 1px;
	border-top-style : solid;
	border-bottom-style : solid;
	border-top-color : #d2c9b8;
	border-bottom-color : #d2c9b8;
	width : 100%;
}

.sp-site-navigation.vertical ul{
	line-height : 30px;
	padding-top : 0px;
	padding-left : 0px;
	padding-right : 0px;
	padding-bottom : 0px;
	margin-top : 0px;
	margin-left : 0px;
	margin-right : 0px;
	margin-bottom : 0px;
	list-style-type : none;
	list-style-position : outside;
}

.sp-site-navigation.vertical ul li.current-menu-ancestor > a{
	color : #ffffff;
	background-color : rgba(0, 0, 0, 0.3);
}

.sp-site-navigation.vertical ul li.current-menu-item > a{
	color : #ffffff;
	background-color : rgba(0, 0, 0, 0.3);
}

.sp-site-navigation.vertical ul li.current_page_ancestor > a{
	color : #ffffff;
	background-color : rgba(0, 0, 0, 0.3);
}

.sp-site-navigation.vertical ul li.current_page_item > a{
	color : #ffffff;
	background-color : rgba(0, 0, 0, 0.3);
}

.sp-site-navigation.vertical ul li > a{
	text-decoration : none;
	padding-top : 10px;
	padding-left : 20px;
	padding-right : 20px;
	padding-bottom : 10px;
	display : block;
}

.sp-site-navigation.vertical ul li > a:active{
	color : #ffffff;
	background-color : rgba(0, 0, 0, 0.3);
}

.sp-site-navigation.vertical ul li > a:hover{
	color : #ffffff;
	background-color : rgba(0, 0, 0, 0.3);
}

.sp-site-navigation.vertical ul ul li > a{
	padding-top : 10px;
	padding-left : 40px;
	padding-right : 40px;
	padding-bottom : 10px;
}

.sp-site-navigation.vertical > ul{
	margin-top : 0px;
	margin-left : auto;
	margin-right : auto;
	margin-bottom : 0px;
	width : 100%;
}

.sp-site-navigation.vertical > ul > li{
	padding-top : 0px;
	padding-left : 0px;
	padding-right : 0px;
	padding-bottom : 0px;
	width : 100%;
}

.sp-site-navigation.vertical > ul > li:hover > ul{
	display : block;
}

.sp-table{
	margin-top : 5px;
	margin-left : auto;
	margin-right : auto;
	margin-bottom : 5px;
	border-top-width : 1px;
	border-left-width : 1px;
	border-top-style : solid;
	border-left-style : solid;
	border-top-color : #d8d8d8;
	border-left-color : #d8d8d8;
	width : 100%;
	display : table;
	border-collapse : collapse;
}

.sp-table > * > tr > td{
	padding-top : 5px;
	padding-left : 8px;
	padding-right : 8px;
	padding-bottom : 5px;
	border-right-width : 1px;
	border-bottom-width : 1px;
	border-right-style : solid;
	border-bottom-style : solid;
	border-right-color : #d8d8d8;
	border-bottom-color : #d8d8d8;
}

.sp-table > * > tr > th{
	padding-top : 5px;
	padding-left : 8px;
	padding-right : 8px;
	padding-bottom : 5px;
	border-right-width : 1px;
	border-bottom-width : 1px;
	border-right-style : solid;
	border-bottom-style : solid;
	border-right-color : #d8d8d8;
	border-bottom-color : #d8d8d8;
}

.sp-table > * > tr > th.col-title{
	background-color : rgba(0, 0, 0, 0.0625);
}

.sp-table > * > tr > th.row-title{
	background-color : rgba(0, 0, 0, 0.0625);
}

.sp-wp-post-list{
	padding-top : 0px;
	padding-left : 0px;
	padding-right : 0px;
	padding-bottom : 0px;
	margin-top : 2em;
	margin-left : 0px;
	margin-right : 0px;
	margin-bottom : 2em;
}

.sp-wp-post-list .navigation-post{
	margin-top : 0.67em;
}

.sp-wp-post-list .navigation-post .nav-next{
	margin-right : 10px;
	float : right;
}

.sp-wp-post-list .navigation-post .nav-previous{
	margin-left : 10px;
	float : left;
}

.sp-wp-post-list .navigation-post::after{
	clear : both;
	display : table;
	content : "";
}

.sp-wp-post-list .navigation-post > h1{
	display : none;
}

.sp-wp-post-list > article{
	margin-top : 0.67em;
	margin-left : 0px;
	margin-right : 0px;
	margin-bottom : 0.67em;
}

.sp-wp-post-list > h3{
	background-color : #f4f4f4;
	background-image : none;
	background-repeat : repeat;
	background-attachment : scroll;
	background-position : 0% 0%;
	background-clip : border-box;
	background-origin : padding-box;
	background-size : auto auto;
}

a{
	color : #6f9502;
	text-decoration : none;
	outline-width : medium;
	outline-style : none;
	outline-color : black;
}

a:hover{
	text-decoration : underline;
}

article{
	display : block;
}

aside{
	display : block;
}

body{
	font-size : 1.3rem;
	font-family : "Hiragino Kaku Gothic Pro", Meiryo, Osaka, "MS PGothic", Arial, sans-serif;
	line-height : 1.5;
	color : #333333;
	background-color : #ffffff;
	text-align : left;
	padding-top : 0px;
	padding-left : 0px;
	padding-right : 0px;
	padding-bottom : 0px;
	margin-top : 0px;
	margin-left : 0px;
	margin-right : 0px;
	margin-bottom : 0px;
	word-wrap : break-word;
}

details{
	display : block;
}

dl{
	margin-top : 0px;
	box-sizing : border-box;
}

figcaption{
	display : block;
}

figure{
	display : block;
}

footer{
	display : block;
}

h1{
	margin-top : 0px;
	box-sizing : border-box;
}

h2{
	margin-top : 0px;
	box-sizing : border-box;
}

h3{
	margin-top : 0px;
	box-sizing : border-box;
}

h4{
	margin-top : 0px;
	box-sizing : border-box;
}

h5{
	margin-top : 0px;
	box-sizing : border-box;
}

h6{
	margin-top : 0px;
	box-sizing : border-box;
}

header{
	display : block;
}

hgroup{
	display : block;
}

html{
	font-size : 62.5%;
}

main{
	display : block;
}

nav{
	display : block;
	box-sizing : border-box;
}

ol{
	margin-top : 0px;
	box-sizing : border-box;
}

p{
	margin-top : 0px;
	box-sizing : border-box;
}

section{
	display : block;
}

summary{
	display : block;
}

table{
	margin-top : 0px;
	box-sizing : border-box;
}

ul{
	margin-top : 0px;
	margin-left : 0px;
	margin-right : 0px;
	margin-bottom : 0px;
	box-sizing : border-box;
}

@media not screen, screen and (min-width: 569px) {

	#colophon-inner{
	margin-top : 0px;
	margin-left : auto;
	margin-right : auto;
	margin-bottom : 0px;
	width : 1200px;
	box-sizing : content-box;
	}

	#content{
	min-height : 50px;
	}

	#main{
	font-size : 1.2rem;
	margin-top : 0px;
	margin-left : auto;
	margin-right : auto;
	margin-bottom : 0px;
	width : 1200px;
	box-sizing : content-box;
	}

	#main-inner{
	float : left;
	}

	#main-inner #contenthead{
	overflow : hidden;
	}

	#main-inner #contenthead > a{
	margin-left : 0px;
	margin-right : 0px;
	}

	#main-inner #contenthead > nav{
	padding-left : 0px;
	padding-right : 0px;
	margin-left : 0px;
	margin-right : 0px;
	}

	#masthead{
	margin-bottom : 0px;
	}

	#masthead-inner{
	margin-top : 0px;
	margin-left : auto;
	margin-right : auto;
	margin-bottom : 0px;
	width : 1200px;
	box-sizing : content-box;
	}

	#page{
	margin-top : 0px;
	margin-left : auto;
	margin-right : auto;
	margin-bottom : 0px;
	overflow : hidden;
	}

	.sp-google-map{
	width : 400px;
	min-height : 300px;
	}

	.sp-site-branding2{
	padding-top : 20px;
	}

	.sp-site-branding2 .extra{
	width : 50%;
	position : absolute;
	bottom : 0px;
	right : 0px;
	}

	.sp-site-branding2 .extra > p{
	font-size : 1.3rem;
	color : #929292;
	text-align : right;
	padding-top : 0px;
	padding-left : 0px;
	padding-right : 0px;
	padding-bottom : 0px;
	margin-top : 0px;
	margin-left : 0px;
	margin-right : 0px;
	margin-bottom : 0px;
	}

	.sp-site-branding2 .extra > p.indent{
	padding-left : 1em;
	}

	.sp-site-branding2 .extra > p.large{
	font-size : 1.5rem;
	}

	.sp-site-branding2 .site-description{
	text-align : right;
	width : 100%;
	height : auto;
	position : absolute;
	top : 15px;
	}

	.sp-site-branding2 .site-title{
	margin-top : 0px;
	margin-left : 0px;
	margin-right : 0px;
	margin-bottom : 0px;
	height : 66px;
	float : left;
	}

	.sp-site-branding2 .site-title a{
	height : 100%;
	display : block;
	}

	.sp-site-navigation.horizontal ul{
	padding-top : 0px;
	padding-left : 0px;
	padding-right : 0px;
	padding-bottom : 0px;
	margin-top : 0px;
	margin-left : 0px;
	margin-right : 0px;
	margin-bottom : 0px;
	list-style-type : none;
	list-style-position : outside;
	}

	.sp-site-navigation.horizontal ul li.current-menu-ancestor > a{
	color : #ffffff;
	background-color : rgba(0, 0, 0, 0.3);
	}

	.sp-site-navigation.horizontal ul li.current-menu-item > a{
	color : #ffffff;
	background-color : rgba(0, 0, 0, 0.3);
	}

	.sp-site-navigation.horizontal ul li.current_page_ancestor > a{
	color : #ffffff;
	background-color : rgba(0, 0, 0, 0.3);
	}

	.sp-site-navigation.horizontal ul li.current_page_item > a{
	color : #ffffff;
	background-color : rgba(0, 0, 0, 0.3);
	}

	.sp-site-navigation.horizontal ul li > a{
	text-decoration : none;
	}

	.sp-site-navigation.horizontal ul li > a:active{
	color : #ffffff;
	background-color : rgba(0, 0, 0, 0.3);
	}

	.sp-site-navigation.horizontal ul li > a:hover{
	color : #ffffff;
	background-color : rgba(0, 0, 0, 0.3);
	}

	.sp-site-navigation.horizontal ul ul{
	border-bottom-color : initial;
	background-color : #ffffff;
	border-top-width : 1px;
	border-left-width : 1px;
	border-right-width : 1px;
	border-bottom-width : medium;
	border-top-style : solid;
	border-left-style : solid;
	border-right-style : solid;
	border-bottom-style : none;
	border-top-color : #3c3f53;
	border-left-color : #3c3f53;
	border-right-color : #3c3f53;
	border-bottom-color : initial;
	width : auto;
	min-width : 150px;
	display : none;
	position : absolute;
	top : 100%;
	left : 0px;
	z-index : 9999;
	}

	.sp-site-navigation.horizontal ul ul li{
	border-bottom-width : 1px;
	border-bottom-style : solid;
	border-bottom-color : #3c3f53;
	width : 100%;
	white-space : nowrap;
	}

	.sp-site-navigation.horizontal ul ul li > a{
	padding-top : 5px;
	padding-left : 1em;
	padding-right : 1em;
	padding-bottom : 5px;
	display : block;
	}

	.sp-site-navigation.horizontal > ul::after{
	clear : both;
	display : table;
	content : "";
	}

	.sp-site-navigation.horizontal > ul > li{
	float : left;
	position : relative;
	display: inline-block;
	}

	.sp-site-navigation.horizontal > ul > li:hover{
	position : relative;
	}

	.sp-site-navigation.horizontal > ul > li:hover > ul{
	display : block;
	}

	.sp-site-navigation.horizontal > ul > li > a{
	padding-top : 0.5em;
	padding-left : 2em;
	padding-right : 2em;
	padding-bottom : 0.5em;
	display : block;
	}

	.sp-site-navigation.minimal{
	text-align : center;
	margin-top : 0px;
	margin-left : auto;
	margin-right : auto;
	margin-bottom : 20px;
	}

	.sp-site-navigation.minimal ul{
	padding-top : 0px;
	padding-left : 0px;
	padding-right : 0px;
	padding-bottom : 0px;
	margin-top : 0px;
	margin-left : 0px;
	margin-right : 0px;
	margin-bottom : 0px;
	list-style-type : none;
	list-style-position : outside;
	}

	.sp-site-navigation.minimal ul li:last-child{
	margin-right : 0px;
	}

	.sp-site-navigation.minimal ul li > a:active{
	text-decoration : underline;
	}

	.sp-site-navigation.minimal ul li > a:hover{
	text-decoration : underline;
	}

	.sp-site-navigation.minimal > ul li{
	margin-right : 10px;
	display : inline;
	}

	.sp-site-navigation.minimal > ul ul{
	margin-left : 10px;
	display : inline;
	}

	.sp-yahoo-map{
	width : 400px;
	min-height : 300px;
	}

	body{
	min-width : 1200px;
	}
}

@media not screen, screen and (min-width: 569px) {

	#content{
	width : 100%;
	float : right;
	}

	#contenthead{
	width : 1200px;
	}

	#main-inner{
	width : 1200px;
	}

	#primary{
	float : right;
	width : 73%;
	margin: 0 0 0 0;
	}

	#sidebar1{
	width : 25%;
	float : left;
	}
}

@media screen and (max-width: 568px) {

	#colophon::before{
	border-top-width : 2px;
	border-top-style : solid;
	border-top-color : #ffffff;
	width : 100%;
	display : block;
	content : "";
	}

	#content{
	padding-left : 10px;
	padding-right : 10px;
	min-height : 50px;
	}

	#masthead{
	margin-bottom : 0px;
	}

	*{
	box-sizing : border-box;
	}

	.home #contenthead{
	//margin-bottom : 20px;
	}

	.sp-block-container{
	padding-top : 10px;
	padding-left : 5px;
	padding-right : 5px;
	padding-bottom : 0px;
	}

	.sp-bread-crumb{
	padding-left : 10px;
	padding-right : 10px;
	}

	.sp-definition-list > dd{
	margin-left : 20px;
	}

	.sp-form input{
	width : 90%;
	}

	.sp-form input[type="submit"] {
	}

	.sp-form table{
	border-top-width : 1px;
	border-top-style : solid;
	border-top-color : #d8d8d8;
	}

	.sp-form td{
	width : auto;
	display : block;
	}

	.sp-form textarea{
	width : 90%;
	}

	.sp-form th{
	width : auto;
	display : block;
	}

	.sp-google-map{
	width : 100%;
	min-height : 300px;
	}

	.sp-image{
	max-width : 100%;
	height : auto;
	}

	.sp-sidebar{
	padding-left : 10px;
	padding-right : 10px;
	}

	.sp-site-branding2 .extra{
	padding-top : 5px;
	}

	.sp-site-branding2 .extra > p{
	font-size : 1rem;
	color : #929292;
	text-align : left;
	padding-top : 0px;
	padding-left : 10px;
	padding-right : 10px;
	padding-bottom : 0px;
	margin-top : 0px;
	margin-left : 0px;
	margin-right : 0px;
	margin-bottom : 0px;
	width : 100%;
	}

	.sp-site-branding2 .site-description{
	text-align : center;
	}

	.sp-site-branding2 .site-title{
	text-align : center;
	}

	.sp-site-navigation .menu-toggle{
	background-color : rgba(0, 0, 0, 0.3);
	padding-top : 10px;
	padding-left : 10px;
	padding-right : 10px;
	padding-bottom : 10px;
	margin-top : 0px;
	margin-left : 0px;
	margin-right : 0px;
	margin-bottom : 0px;
	cursor : pointer;
	}

	.sp-site-navigation ul{
	list-style-type : none;
	list-style-position : outside;
	}


	.sp-site-navigation.horizontal{
	padding-top : 0px;
	margin-top : 10px;
	position : relative;
	}

	.sp-site-navigation.horizontal ul{
	background-color : #ffffff;
	padding-top : 0px;
	padding-left : 0px;
	padding-right : 0px;
	padding-bottom : 0px;
	width : auto;
	height : auto;
	}

	.sp-site-navigation.horizontal ul li{
	padding-left : 0px;
	border-left-width : 0px;
	width : auto;
	float : none;
	}

	.sp-site-navigation.horizontal ul li.current-menu-ancestor > a{
	color : #ffffff;
	background-color : rgba(0, 0, 0, 0.3);
	}

	.sp-site-navigation.horizontal ul li.current-menu-item > a{
	color : #ffffff;
	background-color : rgba(0, 0, 0, 0.3);
	}

	.sp-site-navigation.horizontal ul li.current_page_ancestor > a{
	color : #ffffff;
	background-color : rgba(0, 0, 0, 0.3);
	}

	.sp-site-navigation.horizontal ul li.current_page_item > a{
	color : #ffffff;
	background-color : rgba(0, 0, 0, 0.3);
	}

	.sp-site-navigation.horizontal ul li > a{
	line-height : 24px;
	padding-top : 8px;
	padding-left : 25px;
	padding-right : 10px;
	padding-bottom : 7px;
	float : none;
	display : block;
	}

	.sp-site-navigation.horizontal ul li > a:active{
	color : #ffffff;
	background-color : rgba(0, 0, 0, 0.3);
	}

	.sp-site-navigation.horizontal ul li > a:hover{
	color : #ffffff;
	background-color : rgba(0, 0, 0, 0.3);
	}

	.sp-site-navigation.horizontal ul ul{
	border-bottom-color : initial;
	background-color : transparent;
	border-top-width : medium;
	border-left-width : medium;
	border-right-width : medium;
	border-bottom-width : medium;
	border-top-style : none;
	border-left-style : none;
	border-right-style : none;
	border-bottom-style : none;
	border-top-color : initial;
	border-left-color : initial;
	border-right-color : initial;
	border-bottom-color : initial;
	width : auto;
	min-width : 150px;
	display : block;
	position : relative;
	top : 100%;
	left : 0px;
	z-index : 9999;
	}

	.sp-site-navigation.horizontal ul ul li{
	border-bottom-color : initial;
	border-bottom-width : medium;
	border-bottom-style : none;
	border-bottom-color : initial;
	}

	.sp-site-navigation.horizontal ul ul li > a{
	border-bottom-color : initial;
	padding-top : 8px;
	padding-left : 50px;
	padding-right : 50px;
	padding-bottom : 8px;
	border-bottom-width : medium;
	border-bottom-style : none;
	border-bottom-color : initial;
	}

	.sp-site-navigation.minimal{
	text-align : center;
	margin-bottom : 20px;
	}

	.sp-site-navigation.minimal ul{
	padding-top : 0px;
	padding-left : 0px;
	padding-right : 0px;
	padding-bottom : 0px;
	margin-top : 0px;
	margin-left : 0px;
	margin-right : 0px;
	margin-bottom : 0px;
	list-style-type : none;
	list-style-position : outside;
	}

	.sp-site-navigation.minimal ul li{
	display : block;
	}

	.sp-site-navigation.minimal ul li > a{
	display : block;
	}

	.sp-site-navigation.minimal ul li > a:hover{
	text-decoration : underline;
	}

	.sp-yahoo-map{
	width : 100%;
	min-height : 300px;
	}

	embed{
	max-width : 100%;
	}
}

#sp-wp-post-list-1{
	padding-left : 0px;
	padding-right : 0px;
	margin-top : 0px;
	margin-bottom : 23px;
}

#sp-wp-post-list-1{
	background-color : #ffffff;
	background-image : none;
	background-repeat : repeat;
	background-attachment : scroll;
	background-position : 0% 0%;
	background-clip : border-box;
	background-origin : padding-box;
	background-size : auto auto;
	padding-bottom : 15px;
	border-top-width : 1px;
	border-left-width : 1px;
	border-right-width : 1px;
	border-bottom-width : 1px;
	border-top-style : solid;
	border-left-style : solid;
	border-right-style : solid;
	border-bottom-style : solid;
	border-top-color : #e3e3e3;
	border-left-color : #e3e3e3;
	border-right-color : #e3e3e3;
	border-bottom-color : #e3e3e3;
}

/* 得出し情報 */
.custom_head {
    display: flex;
    grid-gap: 0 .7em;
    margin: 0 auto;
    padding: 1em;
    border-radius: 5px;
    background-color: #f5fae8;
    color: #83a520;
	margin-bottom: 15px;
}

.custom_head span {
    margin: 0;
    padding: 0 0 0 .7em;
    border-left: 1px solid #f1933b;
}

.custom_head a {
    font-size: 1.5em;
}

@media not screen, screen and (min-width: 569px) {
	.custom_head:before {
		width: 24px;
		height: 24px;
		content: '';
		background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12.8995 6.85453L17.1421 11.0972L7.24264 20.9967H3V16.754L12.8995 6.85453ZM14.3137 5.44032L16.435 3.319C16.8256 2.92848 17.4587 2.92848 17.8492 3.319L20.6777 6.14743C21.0682 6.53795 21.0682 7.17112 20.6777 7.56164L18.5563 9.68296L14.3137 5.44032Z' fill='%23f1933b'%3E%3C/path%3E%3C/svg%3E");
	}
}

@media screen and (max-width: 568px) {
	.custom_head a {
		font-size: 1.2em;
	}
}


/* フォーム全体 */
.wpcf7 {
  margin: 20px 0;
}

/* ラベル 
.wpcf7 label {
  font-weight: bold;
}
*/

/* 住所欄 */
.wpcf7 input#g926-4 {
	width: 100%;
}

/* 入力欄 */
.wpcf7 input[type="text"],
.wpcf7 input[type="email"],
.wpcf7 input[type="tel"],
.wpcf7 input[type="number"],
.wpcf7 input[type="radio"],
.wpcf7 input[type="date"],
.wpcf7 select,
.wpcf7 textarea {
  border: 2px solid #ccc;
  border-radius: 6px;
  padding: 5px;
}

.wpcf7-submit {
	display: block !important;
	width: 100px !important;
	margin: 0 auto !important;
	padding: 5px;
}

/*
.contact-form__error{
	padding: 0em !important;
	background-color: #fff !important;
	color: var(--jetpack--contact-form--error-color) !important;
}
*/

.wpcf7-not-valid-tip{
	font-size: 17.5px !important;
}

.wpcf7-form-control-wrap {
	padding: 5px;
}