@charset "UTF-8";
/*
Theme Name: テーマ
Author: 20260427
Author URI: https://sionas.co.jp/
Description: 企業サイト向けのテンプレートです。
Version: 1.0.0
*/


/*
背景#212121
フッター背景,問い合わせ,btn線#171717
フッター内問い合わせbtn#707070
フッター内トップページbtn#2a2625
フッター内テキスト#ddd
紺色#263245
グレー#e4e4e4
スター色#E7CB5B
ジンジャー色#ca6a2d
 */

/* サイトの表側に色を反映させるCSS */
.has-custom-green-background-color {
    background-color: #006400 !important;
}
.has-custom-ygreen-background-color {
    background-color: #429C42 !important;
}
.has-custom-yellow-background-color {
    background-color: #ffff00 !important;
}

/* テキスト自体の色も変える場合はこちらも */
.has-custom-green-color {
    color: #006400;
}
.has-custom-ygreen-color {
    color: #429C42;
}
.has-custom-yellow-color {
    color: #ffff00;
}
/*LINEアイコン*/
.wp-social-link-line {
	color: #fff;
	background: #39ad36;
}

/* archive single */
.main-content {/*
	margin-top: 30px;*/
}
.single-content{
	margin-bottom: 20px;
}/*
.post-content {
	margin-bottom: 20px;
	padding-bottom: 20px;
	border-bottom: 1px solid #c6c6c6;
}*//*
.related-content{
	margin-bottom: 20px;
	padding-bottom: 20px;
	border-bottom: 1px solid #c6c6c6;
}*//*
.main-content .post-content img{
	width: 100%;
	height: 240px;
	object-fit: cover;
}*/
.main-content .post-content a{
	text-decoration: none;/*
	display: block;*/
}
.main-content .news-content {
	background: #fff;
	box-shadow: 0 0 10px rgba(0,0,0,0.2);
	border-radius: 6px;
	margin: 20px 0;
	padding-bottom: 10px;
}
.main-content .faq-content {
	margin: 20px 0;
}/*
.main-content h2.post-title{
	font-size: 16px;
	margin: 0;
	padding: 0 0 20px 0;
}*/
.post-content-inner {/*
	background: #171717;*/
	padding: 20px;
	border: 1px solid #429c42;
}
.post-content-inner-faq {
	padding: 10px;
}
.post-content-inner-front {
	padding: 20px 0;
	border-bottom: 1px dotted #999;
	display: flex;
}
.post-content-inner-news {
	padding: 20px;
	border-bottom: 1px dotted #999;
	display: flex;
}
.post-content-inner-news .post-date,
.post-content-inner-front .post-date {
	font-weight: bold;
	padding: 0 20px;
	width: 176px !important;
	flex-shrink: 0;
}
@media only screen and (max-width: 767px) {
.main-content .news-content {
	box-shadow: none;
}
.main-content .news-content > div {
	padding-right: 0;
	padding-left: 0;
}
.post-content-inner-front,
.post-content-inner-news {
	display: block;
}	
.post-content-inner-news {
	padding: 20px 0;
}
.post-content-inner-news .post-date,
.post-content-inner-front .post-date {
	padding: 0 0;
	width: 100% !important;
}
}
.post-content-inner-front a,
.post-content-inner-news a,
.post-content-inner-faq a {
	color: #3B3B3B;
}
.post-content-inner-front a:hover,
.post-content-inner-news a:hover,
.post-content-inner-faq a:hover {
	text-decoration: underline;
}
.link-icon {
	position: relative;
	text-align: right;
	margin: 10px 0 0 0;
}
.link-icon:before {
    content: '';
    display: inline-block;
    position: absolute;
    top: 50%;
    right: 125px;
    transform: translateY(-50%);
    background-image: url("images/download-1.png");
    width: 15px;
    height: 15px;
	margin-top: 1px;
}
/*
.post-content-inner .post-category span a {
	padding: 10px 20px;
	text-decoration: none;
	background: #263245;
	font-size: 14px;
	border-radius: 20px;
	display: inline-block;
}*/
.single-content .post-info,
.blog-content .post-info {
	display: flex;
  justify-content: right;
	font-size: 12px;
	margin: 0;
}
.post-content-inner .post-date,
.single-content .post-date {/*
	margin-top: -4px;*/
}
.single-content .post-category,
.blog-content .post-category {
	display: flex;
	border-left: 1px solid #707070;
	margin-left: 10px;
	padding-left: 10px;
}
.single-content .post-category span,
.blog-content .post-category span {
	display: flex;
}
.single-content .post-category a,
.blog-content .post-category a {/*
	padding: 4px 10px;*/
	text-decoration: none;
	display: block;
}

/*
.single-content h1.post-title {
	font-size: 24px;
	font-weight: bold;
	margin-bottom: 20px;
}
.main-content .related-content .post-title {
	font-size: 14px;
	margin-bottom: 10px;
}
.related-content p {
	margin-bottom: 0;
}
@media (max-width: 767px) {
.main-content .post-content h2.post-title,
.main-content .related-content .post-title {
	margin-top: 20px;
}
}*/

/*タグスタイル*/
/* タグリストの枠 */
.my-tag-list {
    list-style: none;
    margin: 20px 0;
    padding: 0;
    display: flex;
    flex-wrap: wrap; /* 画面幅が狭いときに折り返す */
    gap: 10px;       /* タグ同士の間隔 */
}

/* 各タグのデザイン */
.my-tag-list li a,
.widget_tag_cloud p a {
    display: inline-block;
    padding: 5px 12px;
    background-color: #fff;
    color: #171717;
    text-decoration: none;
    border-radius: 20px;
    font-size: 0.85rem !important;
    transition: background-color 0.3s;
}
.widget_tag_cloud p a {
    padding: 5px 12px 5px 22px;
	margin-bottom: 20px;
	position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
}
.widget_tag_cloud p a::before {
    position: absolute;
	content: "#";
	left: 12px;
}
.widget_tag_cloud p {
	margin-bottom: 0;
  display: flex;
  justify-content: center;
  align-items: center;
	flex-wrap: wrap;
}
@media only screen and (max-width: 767px) {
.widget_tag_cloud p {
  display: flex;
  justify-content: center;
  align-items: center;
}
}

/* ホバー時の色 */
.my-tag-list li a:hover {
    background-color: #ddd;
}
/*前後記事リンク*/
/* ナビゲーション全体の枠 */
.post-navigation {
    display: flex;
    justify-content: center; /* 両端と中央に配置space-between */
    align-items: center;
    margin-top: 60px;
    margin-bottom: 60px;
    padding-top: 60px;
    border-top: 1px solid #707070; /* 上に区切り線 */
}

/* 各エリアの幅を均等にする（ズレ防止） */
.post-navigation > div {/*
    flex: 1;  3等分する */
}
.post-navigation > div a {
    text-decoration: underline;
}

/* 前の記事 */
.nav-prev {
    text-align: right;
	position: relative;
}
.nav-prev a::before {
    content: "\F284";
    font-family: bootstrap-icons;
    font-weight: 400;
    font-size: 1rem;
	color: #707070;
	position: absolute;
	right: 74px;
}

/* 投稿一覧 */
.nav-list {
    text-align: center;
	margin: 0 20px;
}

/* 次の記事 */
.nav-next {
    text-align: left;
	position: relative;
}
.nav-next a::after {
    content: "\F285";
    font-family: bootstrap-icons;
    font-weight: 400;
    font-size: 1rem;
	color: #707070;
	position: absolute;
	left: 74px;
}

/* sidebar-archive */
.sidebar-archive #wp-block-archives-1 {
	width: 100%;
	padding: 10px;
}
.sidebar-archive h2 {
	width: 100%;
	font-size: 16px;
	margin-bottom: 10px;
	padding-bottom: 14px;
	border-bottom: 1px solid #707070;
}
.sidebar-archive .sidebar-popular h2:nth-child(1) {
	margin-bottom: 0 !important;
}
.sidebar-archive .sidebar-popular > div > p {
	display: none;
}
.sidebar-archive ul {
	list-style: none;
	padding: 0;/*
	padding-bottom: 60px;*/
}
.sidebar-archive li {
	list-style: none !important;
}
.sidebar-archive .sidebar-popular li a,
.sidebar-archive .sidebar-category li a {
  display: flex;
  justify-content: left;
  align-items: center;
	text-decoration: none;
	padding: 10px 0;
	font-size: 14px;
	position: relative;
}
.sidebar-archive .sidebar-popular li a {
	border-bottom: 1px solid #707070;
}
.sidebar-archive .sidebar-category li a {
	padding-left: 40px;
}
.sidebar-archive .sidebar-popular li a img {
	min-width: 80px;
	width: 25% !important;
	height: 60px;
  object-fit: cover;
	margin-right: 10px;
}
.sidebar-archive .sidebar-popular li a span {
	min-width: calc( 100% - 90px );
	width: 100% !important;
}
/*sidebar-archive aタグの形状*/
.sidebar-archive .sidebar-category li a::before {
    content: "\F285";
    font-family: bootstrap-icons;
    font-weight: 400;
    font-size: 1rem;
	color: #707070;
	position: absolute;
	left: 20px;
}
/*
.sidebar-archive li a:hover::after,
.sidebar-archive li a:active::after{
	right: -2px;
}*/
@media screen and (max-width: 991px) {/*
.sidebar-archive h2 {
	margin-top: 80px;
}*/
}

/*wp-pagenavi base*/
.wp-pagenavi {
	clear: both;
	text-align:center;
	margin-top: 80px;
	font-size: 12px;
}
.wp-pagenavi a,
.wp-pagenavi span {
	color: #429c42;
	padding: 5px 10px;
	width: auto;
	height: 30px;
	vertical-align: middle;
  display: inline-block;
  justify-content: center;
  align-items: center;
	white-space: nowrap;
	-webkit-transition: 0.2s ease-in-out;
	-moz-transition: 0.2s ease-in-out;
	-o-transition: 0.2s ease-in-out;
	transition: 0.2s ease-in-out;
	text-align: center;
	text-decoration: none;
}
.wp-pagenavi a {
	border: 1px solid #429c42;
	margin: 0 2px;
}
.wp-pagenavi a:hover{
	color: #429c42;
	text-decoration: underline;
    }
.wp-pagenavi span.current{
	background: #429c42;
	color: #fff;
	text-decoration: none;
	border: 1px solid #429c42;
    }
.wp-pagenavi span.pages{
	display: none;
    }
.wp-pagenavi a.nextpostslink,
.wp-pagenavi a.previouspostslink {/*
	border: none;
	margin: 0 20px;
	position: relative;*/
	display: none;
}
.wp-pagenavi a.nextpostslink::after {
    content: "\F285";
    font-family: bootstrap-icons;
    font-weight: 400;
    font-size: 1rem;
	color: #429c42;
	position: absolute;
	right: 0;
}
.wp-pagenavi a.previouspostslink::before {
    content: "\F284";
    font-family: bootstrap-icons;
    font-weight: 400;
    font-size: 1rem;
	color: #429c42;
	position: absolute;
	left: 0;
}

/* page */
.main-content .page-content {
}
.main-content .page-content ul {/*
	margin-top: -4px;*/
}
.main-content .page-content ul li {
	list-style: disc outside none;/*
	line-height: 32px;*/
	margin-bottom: 10px;
}
.main-content .page-content ol li {
	list-style: decimal outside none;
	line-height: 32px;
}

/*
.ofc480 img {
  width: 100%;
  height: 480px;
  object-fit: cover;
}
@media (max-width: 767px) {
	.ofc480 img {
  width: 100%;
  height: 180px;
  object-fit: cover;
}
}*/

.page-link-row p{
	flex: 1;
	margin-bottom: 0;
}
.right-link-row p{
	flex: 1;
	margin-bottom: 20px;
}
@media (max-width: 781px) {
.right-link-row .is-layout-flow div{
	gap: 0;
}
}

.right-link {
	display: flex;
	justify-content: center;
	align-items: center;
	text-decoration: none;
	height: 60px;
	width: 300px;
	font-size: 14px;
	position: relative;
	margin: 10px auto 0 auto ;
}/*
.common-archive {
    background-image: url("images/btn-bg01.png");
	margin: 30px auto 0 auto ;
}
.common-order {
    background: #f75f60;
	margin-top: 20px;
}
.common-shop {
    background: #ecb935;
}
.common-contact {
    background: #328072;
}
.common-tel {
    background: #fff;
	margin-bottom: 20px;
}
.common-order a::before,
.common-shop a::before,
.common-contact a::before,
.common-tel a::before {
    content: '';
    display: inline-block;
    position: absolute;
    top: 50%;
    left: 20px;
    transform: translateY(-50%);
}
.common-order a::before {
    background-image: url("images/icon01.svg");
    width: 30px;
    height: 30px;
}
.common-shop a::before {
    background-image: url("images/icon02.svg");
    width: 30px;
    height: 30px;
}
.common-contact a::before {
    background-image: url("images/icon03.svg");
    width: 30px;
    height: 30px;
}
.common-tel a::before {
    content: "\F5C1";
    font-family: bootstrap-icons;
    font-weight: 400;
    font-size: 1.6rem;
	color: #263245;
}*/
@media only screen and (max-width: 575px) {
.right-link {
	width: 100%;
}/*
.common-order {
	margin-top: 40px;
}*/
}

.right-link a {
	display: flex;
	justify-content: center;
	align-items: center;
	text-decoration: none;
	height: 60px;
	width: 100%;
	position: relative;
	color: #fff;
}/*
.common-tel a {
	color: #263245;
	font-size: 24px;
	font-weight: 900;
	font-family: 'Zen Maru Gothic', sans-serif;
}*/
.right-link a::after {/*
    content: '';
    display: inline-block;
    background-image: url("./images/rightarfff.svg");
    width: 12px;
    height: 10px;*/
    /* 矢印アイコンの位置を設定 */
    position: absolute;
    top: 50%;
    right: 20px;
    transform: translateY(-50%); /* translateYのみ */
    content: "\F138";
    font-family: bootstrap-icons;
    font-weight: 400;
    font-size: 1rem;
	color: #fff;/*
	position: absolute;
	right: 0;*/
}/*
.common-tel a::after {
	color: #263245;
}*/
.sidebar-archive li a:hover::after,
.right-link a:hover::after {
    right: 18px;
}

/*基本スタイル*/
/*
.main-content .page-content h3 {
	font-size: 20px;
	color: #263245;
	border: 2px solid #263245;
	padding: 10px 30px;
	background: #fff;
	margin-top: 20px;
	margin-bottom: 20px;
	width: auto;
	border-radius: 30px;
}

.main-content .page-content h4 {
	font-size: 18px;
	color: #000;
	padding: 10px 0;
	margin-top: 0px;
	margin-bottom: 10px;
	width: auto;
	display: inline-block;
border-bottom: 2px solid #263245;
box-sizing: border-box;
position: relative;
}

.main-content .page-content h4::after,
.main-content .page-content h4::before{
content: "";
background: #263245;
border-radius: 50%;
height: 10px;
width: 10px;
position: absolute;
bottom: -6px;
}

.main-content .page-content h4::after{
right: -6px;
}
.main-content .page-content h4::before{
	left: -6px;
}

.main-content .page-content .pillar-list {
	padding: 20px 40px;
	margin-bottom: 20px;
	background: #fffef0;
}
.main-content .page-content .icon-plus{
  width: 80px;
  height: 80px;
  background: #b5a814;
  border-radius: 50%;
	color: #fff;
	font-size: 60px;
	font-weight: bold;
	margin: 0 auto;
	margin-bottom: 20px;
  position: relative;
}
.main-content .page-content .icon-plus span{
  position: absolute;
  top: -6px;
  left: 50%;
  transform: translateX(-50%);
}
*/


/*固定ページ*/
.page-content h1,
.single-content h1,
.blog-content h1 {
	border-left: 6px solid #81a832;
	background-image: linear-gradient(90deg, #ffffff 60%, #dbebc4);
	color: #3b3b3b;
    font-size: 18px;
    letter-spacing: 4px;
    font-weight: bold;
    vertical-align: middle;
	padding: 10px 25px;
}
.page-content h2,
.single-content h2,
.blog-content .post-text h2 {
	margin-top: 40px;
	margin-bottom: 20px;
	background-image: linear-gradient(90deg, #99c454 60%, #5b9a4d);/*
	background: #99c454;*/
	color: #ffffff;
    font-size: 16px;
    letter-spacing: 3px;
    font-weight: bold;
    vertical-align: middle;
    padding: 25px;
	border-radius: 10px;
}
.blog-content h2 {
	background: #429C42;
	color: #ffffff;
    font-size: 24px;
    vertical-align: middle;
    padding: 25px;
  font-family: "Noto Serif JP", serif;
  font-optical-sizing: auto;
  font-weight: 600;
  font-style: normal;
}
.page-content h3,
.single-content h3,
.blog-content h3 {
	margin-top: 40px;
	margin-bottom: 20px;
	border-top: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
    font-size: 16px;
    letter-spacing: 3px;
    font-weight: bold;
    vertical-align: middle;
    padding: 15px 25px;
	position: relative;
}
.page-content h3::before,
.single-content h3::before,
.blog-content h3::before {
	position: absolute;
	content: "";
	border-bottom: 2px solid #99c454;
	left: 0;
	bottom: -5px;
	width: 100%;
}
.page-content h4,
.single-content h4,
.blog-content h4 {
	margin-top: 40px;
	margin-bottom: 20px;
	border-bottom: 3px dotted #99c454;
    font-size: 16px;
    letter-spacing: 3px;
    font-weight: bold;
    vertical-align: middle;
    padding: 15px 25px;
	position: relative;
}
/*.page-content p,
.single-content p,
.blog-content p,*/
.post-content-inner-news p,
.post-content-inner-front p {
	margin-bottom: 0;
}
.single-content .border060{
	border-bottom: 2px solid #006600;
	line-height: 1em;
	font-weight: bold;
	font-size: 24px;
}
@media only screen and (max-width: 767px) {
.page-content h1,
.single-content h1,
.blog-content h1 {
	border-left: none;
	background-image: none;
	color: #fff;
	background: #429C42;
}
.page-content h3,
.single-content h3,
.blog-content h3 {
	border-top: none;
	border-bottom: none;
	color: #429C42;
	background: #D5EAB9;
}
.page-content h3::before,
.single-content h3::before,
.blog-content h3::before {
	border-bottom: none;
}
.page-content h4,
.single-content h4,
.blog-content h4 {
	margin-top: 10px;
	border-bottom: none;
	color: #8CC63F;
}
}
/*トップページ*/
.front-content-bg {
	background: #fff;
	box-shadow: 0 0 10px rgba(0,0,0,0.2);
	border-radius: 6px;
	margin: 20px auto;
	padding: 20px;
	width: 99%;
}
.front-content h2 {
	border-bottom: 1px solid #f7931e;
	background-image: linear-gradient(90deg, #ffffff 60%, #fab25e);
	color: #3b3b3b;
    font-size: 18px;
    letter-spacing: 4px;
    font-weight: bold;
    vertical-align: middle;
	padding: 10px 25px;
	margin-bottom: 20px;
	position: relative;
}
.front-content h2:after {
	position: absolute;
	content: "";
	width: 6px;
	height: 30px;
	left: 0;
	top: 5px;
	border-left: 6px solid #fab25e;
	border-radius: 3px;
}
.front-content-bg h3 {
	background: #429c42;
	color: #fff;
    font-size: 18px;
    vertical-align: middle;
	padding: 10px 25px;
	text-align: center;
	border-radius: 20px;
}
.front-pagelink {
	margin-top: 35px !important;
}
.front-pagelink .wp-block-columns {
	margin-bottom: 0 !important;
}
.front-pagelink .wp-block-columns:where(.wp-block-columns.is-layout-flex) {
	gap: 15px;
}
.front-pagelink .wp-block-columns .wp-block-image {
	margin-bottom: 15px;
}
.front-pagelink .wp-block-columns .wp-block-image img {
	width: 312px;
	height: auto;
}

/*ブログ一覧*/
.blog-content {
	margin-bottom: 40px;
}
.blog-content > p {/*
	line-height: 2.4em;*/
	margin-bottom: 1rem;
}

/*関連施設紹介*/
.page-id-2606 .wp-block-column img {
  width: 100%;
  height: 240px;
  object-fit: cover;
}
/*医師紹介*/
.page-content hr {
	width: 100% !important;
	margin: 50px 0;
	border-bottom: 1px solid #ccc;
}
/*アクセス*/
.access-table td {
	text-align: center;
	font-size: 15px;
	border: 1px solid #ccc !important;
}
.access-table tr:first-child td,
.access-table tr:nth-of-type(2) td:first-child,
.access-table tr:nth-of-type(6) td:first-child {
	background: #EDFFED !important;
}

@media only screen and (max-width: 767px) {
.front-content-bg {
	padding: 10px 0;
	box-shadow: none;
	width: 100%;
}
.post-content.front-content-bg {
	padding: 10px 0;
}
.post-content.front-content-bg > div {
	padding-right: 0;
	padding-left: 0;
}
.access-table td {
	font-size: 11px;
}
/*トップページのスマホのみメニュー*/
.front-menu-sp ul {
	padding-left: 0;
}
.front-menu-sp ul li {
	background: #fff;
	box-shadow: 0 0 10px rgba(0,0,0,0.2);
	border-radius: 6px;
	margin: 5px auto;
	padding: 10px 20px 10px 30px;
	list-style: none;
	font-size: 20px;
	position: relative;
}
.front-menu-sp ul li:before {
	position: absolute;
    content: "";
    display: block;
    width: 5px;
    height: 25px;
	background: #f1c042;/*黄色*/
    top: 0;
    left: 10px;
}
.front-menu-sp ul li:nth-child(6):before,
.front-menu-sp ul li:nth-child(7):before {
	background: #5e8ab6;/*青*/
}
.front-menu-sp ul li:nth-child(8):before {
	background: #df6337;/*オレンジ*/
}
.front-menu-sp ul li:nth-child(9):before,
.front-menu-sp ul li:nth-child(10):before,
.front-menu-sp ul li:nth-child(11):before {
	background: #479228;/*緑*/
}
.front-menu-sp ul li:nth-child(12):before,
.front-menu-sp ul li:nth-child(13):before {
	background: #8055ba;/*紫*/
}
.front-menu-sp ul li a {
	display: block;
	color: #3b3b3b;
}
}

/*ページ内リンクパターン*/
.page-link {
	border: 1px solid #ccc;
	margin: 50px 0;
	padding: 20px;
}
.page-link .wp-block-button {
	flex: 1;
}
.page-link .wp-block-button a {
	border: 3px solid #99c454;
	background: #fff;
	color: #3b3b3b;
	border-radius: 10px;
	font-size: 16px;
	position: relative;
}
/*----- くの字の矢印 */
.page-link .wp-block-button a::before {
	position: absolute;
    content: "";
    display: block;
    width: 15px;
    height: 15px;
	background: #f784b3;
	border-radius: 50%;
    top: 50%;
    left: 10px;
    transform: translateY(-50%);
}
.page-link .wp-block-button a::after {
	position: absolute;
    content: "";
    display: block;
    width: 5px;
    height: 5px;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    transform: rotate(135deg);
    top: calc( 50% - 3px );
    left: 15px;
}

/* 左向き */
.arrow.-left::before{
    transform: rotate(-135deg);
}
/* 右向き */
.arrow.-right::before{
    transform: rotate(45deg);
}
/* 上向き */
.arrow.-top::before{
    transform: rotate(-45deg);
}
/* 下向き */
.arrow.-bottom::before{
    transform: rotate(135deg);
}


/*テーブル*/
.page-content figure table tr td,
.single-content figure table tr td,
.blog-content figure table tr td {
	border: 1px solid #65441B;
}
.page-content figure.item-table-left table tr td:first-child,
.single-content figure.item-table-left table tr td:first-child,
.blog-content figure.item-table-left table tr td:first-child,
.page-content figure.item-table-top table tr:first-child td,
.single-content figure.item-table-top table tr:first-child td,
.blog-content figure.item-table-top table tr:first-child td,
.page-content figure.item-table-left-top table tr td:first-child,
.page-content figure.item-table-left-top table tr:first-child td,
.single-content figure.item-table-left-top table tr td:first-child,
.single-content figure.item-table-left-top table tr:first-child td,
.blog-content figure.item-table-left-top table tr td:first-child,
.blog-content figure.item-table-left-top table tr:first-child td {
	color: #65441B;
	background: #dac8ab;
	text-align: center;
	font-weight: bold;
}

.page-content .item-column1
.page-content .item-column2
.page-content .item-column3
.page-content .item-column4
.page-content .item-column5
.page-content .item-img-text
.page-content .item-text-img {}
/*
.page-content .wp-block-group.history div .history-inner div div.wp-block-group figure.wp-block-image img {
	width: 200px !important;
}*/
.page-content .history .history-inner img {
	width: 200px;
}
.page-content .history .history-inner .is-layout-flex {
	align-items: start;
}
.page-content .history .history-inner {
	margin-bottom: 10px;
}
.page-content .history .history-inner p {
	margin-bottom: 0;
}
.page-content .history {
	border-left: 15px solid #f7f4e8;
	padding: 15px;
}
/*スライドボタンの配置*/
.metaslider.ms-theme-outline .flexslider ol.flex-control-nav:not(.flex-control-thumbs) {
	bottom: -40px !important;
}
.metaslider.ms-theme-outline .flexslider ul.slides .caption-wrap .caption, .metaslider.ms-theme-outline .rslides .caption-wrap .caption, .metaslider.ms-theme-outline div.nivoSlider .nivo-caption {
	padding-bottom: 20px !important;
}

/*コンタクトフォーム*/
/* フォーム */
.wpcf7-form {
	max-width: 960px;
	width: 100%;/*
	background: #fff;*/
	border: 1px solid #707070;
	padding: 30px;
	margin-right: auto !important;
	margin-left: auto !important;
}
.cf7-item {
display: flex;
align-items: flex-start;
justify-content: flex-start;
margin: 0 0 20px;
}
.cf7-q {
	width: 30%;
	font-weight: bold;
}
.cf7-a {
	width: 70%;
}
.wpcf7-form input,
.wpcf7-form textarea {
	padding: 8px 12px;
	background: #fff;
	border: none;
	width: 100%;
}
.wpcf7-form input[type=submit] {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  cursor: pointer;
  padding: 0;
  background-color: transparent;
  background-image: none;
	display: flex;
	justify-content: center;
	align-items: center;
	text-decoration: none;
	border: 1px solid #707070;
	background: #707070;
	height: 60px;/*
	border-radius: 5px;*/
	max-width: 480px;
	width: 100%;
	color: #fff;
	font-size: 14px;
	font-weight: bold;
	position: relative;
	margin: 20px auto ;
	letter-spacing: 1px;
}
.wpcf7-form input[type=submit]:hover,
input[type=submit]:focus {
  outline: none;
	opacity: 0.8;
}
.wpcf7-form input[type=submit]::-moz-focus-inner {
  border: none;
  padding: 0;
}
.top-link a {
	display: flex;
	justify-content: center;
	align-items: center;
	text-decoration: none;
	border: 1px solid #fff;/*
	background: #fff;*/
	height: 60px;/*
	border-radius: 5px;*/
	max-width: 480px;
	width: 100%;
	font-size: 14px;
	font-weight: bold;
	position: relative;
	margin: 40px auto 20px ;
	color: #fff;
}/*
.top-link a {
	display: flex;
	justify-content: center;
	align-items: center;
	text-decoration: none;
	height: 60px;
	width: 100%;
	position: relative;
	color: #707070;
}*/
.top-link a::after {/*
  font-size: 1.6rem;
  font-family: "Font Awesome 5 Free";
  content: "\f139";
	-webkit-font-smoothing: antialiased;
  display: inline-block;
  font-style: normal;
  font-variant: normal;
  text-rendering: auto;
  line-height: 1;
    position: absolute;
    top: 50%;
    right: 20px;
    transform: translateY(-50%);*/
    content: "\F286";
    font-family: bootstrap-icons;
    font-weight: 400;
    font-size: 1rem;
	color: #fff;
	position: absolute;
    top: 50%;
    right: 20px;
    transform: translateY(-50%);
}

.top-link a:hover {
}
.top-link a:hover::after {/*
	top: calc(50% - 2px);*/
}

/*　必須ラベル　*/
.cf7-req{
font-size:.8em;
padding: 2px 6px;
border: 1px solid #707070;
color: #707070;
margin-left: 10px;
display:inline-block;
}

@media only screen and (max-width: 767px) {
.wpcf7-form {
	padding: 15px;
}
.cf7-item {
display: block;
}
.cf7-q {
width: 100%;
margin: 0;
}
.cf7-a {
width: 100%;
}
}

/* 画像の回り込み（右寄せ） */
.alignright {
    float: right;
    margin-left: 20px;
    margin-bottom: 20px;
    max-width: 50%; /* 画面の半分以上に広がらないように調整 */
}

/* 画像の回り込み（左寄せ） */
.alignleft {
    float: left;
    margin-right: 20px;
    margin-bottom: 20px;
    max-width: 50%;
}

/* 回り込みを解除する設定（記事の最後や次のブロックが崩れないように） */
.entry-content::after,
.wp-block-post-content::after {
    content: "";
    display: table;
    clear: both;
}

/* モバイル対応：スマホなど画面が狭いときは回り込みを解除する */
@media screen and (max-width: 600px) {
    .alignright, .alignleft {
        float: none;
        display: block;
        margin-left: auto;
        margin-right: auto;
        max-width: 100%;
    }
}

/* 右寄せのボックス */
.image.right {
    float: right;
    margin-left: 20px;
    margin-bottom: 20px;
    max-width: 45%; /* 記事幅に合わせて調整してください */
}

/* 左寄せのボックス */
.image.left {
    float: left;
    margin-right: 20px;
    margin-bottom: 20px;
    max-width: 45%;
}

/* 画像自体の横幅をボックスいっぱいに広げる */
.image.right img, 
.image.left img {
    height: auto;
    width: 100%;
    display: block;
}

/* 回り込み解除設定（これが無いと下の文章が崩れます） */
.entry-content::after,
.wp-block-post-content::after,
.texts::after {
    content: "";
    display: table;
    clear: both;
}

/* スマホ表示では回り込みを解除して中央寄せ */
@media screen and (max-width: 600px) {
    .image.right, 
    .image.left {
        float: none;
        margin: 0 auto 20px auto;
        max-width: 100%;
        text-align: center;
    }
}

/* --- レイアウト共通（clearfix） --- */
.clearfix::after {
    content: "";
    display: table;
    clear: both;
}

/* --- カラムレイアウト（2列・3列共通） --- */
.columns .liner {
    display: flex;
    flex-wrap: wrap;
    margin: 0 -10px;
}

/* 5列設定 */
.columns.columns5 .column.column5 {
    flex: 0 0 20%;
    max-width: 20%;
    padding: 0 10px;
    box-sizing: border-box;
}
/* 4列設定 */
.columns.columns4 .column.column4 {
    flex: 0 0 25%;
    max-width: 25%;
    padding: 0 10px;
    box-sizing: border-box;
}
/* 3列設定 */
.columns.columns3 .column.column3 {
    flex: 0 0 33.3333%;
    max-width: 33.3333%;
    padding: 0 10px;
    box-sizing: border-box;
}
/* 2列設定 */
.columns.columns2 .column.column2 {
    flex: 0 0 50%;
    max-width: 50%;
    padding: 0 10px;
    box-sizing: border-box;
}
/* 1列設定 */
.columns.columns1 .column.column1 {
    flex: 0 0 100%;
    max-width: 100%;
    padding: 0 10px;
    box-sizing: border-box;
}

.columns .image img {
    width: 100%;
    height: auto;
    display: block;
}

/* --- 画像の回り込み補足 --- */
.simple.clearfix {
    margin-bottom: 20px;
}

/* 移行元サイトの noborder クラス */
.noborder {
    border: none !important;
    box-shadow: none !important;
    background: none !important;
}

/* --- スマホ対応 --- */
@media screen and (max-width: 767px) {
    .columns.columns5 .column.column5 {
    flex: 0 0 33.3333%;
        max-width: 33.3333%;
        margin-bottom: 15px;
    }
    .columns.columns4 .column.column4 {
        flex: 0 0 50%;
        max-width: 50%;
        margin-bottom: 15px;
    }
    .columns.columns3 .column.column3,
    .columns.columns2 .column.column2,
    .columns.columns1 .column.column1 {
        flex: 0 0 100%;
        max-width: 100%;
        margin-bottom: 15px;
    }
    
    .image.right, .image.left {
        float: none !important;
        max-width: 100% !important;
        margin: 0 0 15px 0 !important;
    }
}

/* --- 移行元のテーブルデザインを完全再現 --- */
div.table{
	letter-spacing: 1px;
	line-height: 1.2;
	width: 100%;
	margin: 0px auto 15px;
	border-collapse: collapse;
}
div.table div.table-list{
	width: 100%;
	margin-right: auto;
	margin-left: auto;
	border-collapse: collapse;
	display: table;
}
div.table div.table-list table{
	width: 100%;
	border-width: 1px;
	border-color: #65441B;
	border-style: solid;
	border-collapse: collapse;
}
div.table div.table-list table th{
	color: #65441B;
	text-align: center;
	vertical-align: middle;
	background-color: #DAC8AB;
	width: 30%;
	padding: 10px;
	border-width: 1px;
	border-color: #65441B;
	border-style: solid;
}
div.table div.table-list table td{
	width: 35%;
	padding: 10px;
	border-width: 1px;
	border-color: #65441B;
	border-style: solid;
}
div.table dl{
	padding-top: 10px;
	padding-bottom: 5px;
	border-bottom-width: 1px;
	border-collapse: collapse;
	display: table-row;
}
div.table dl dt{
	color: #65441B;
	letter-spacing: 5px;
	font-weight: bold;
	text-align: center;
	vertical-align: middle;
	background-color: #dac8ab;
	width: 30%;
	padding: 5px;
	border-width: 1px;
	border-color: #65441B;
	border-style: solid;
	border-collapse: collapse;
	display: table-cell;
}
div.table dl dd{
	color: #3a3a3a;
	vertical-align: middle;
	padding: 10px;
	border-width: 1px;
	border-color: #65441B;
	border-style: solid;
	border-collapse: collapse;
	display: table-cell;
	overflow: hidden;
}
table.table01 td {
	padding: 5px 10px;
}

/*reCAPTCHAロゴ非表示*/
.grecaptcha-badge { visibility: hidden; }