@charset "UTF-8";

/* ----------------------------------------
//
// gutenberg
//
---------------------------------------- */

/**
 * .pg_post: サイトのフロント表示用（投稿ページ・固定ページ）
 * x.wp-block: 管理画面の記事編集画面用
 */

.pg_post {
	font-size: 1.4rem;
	line-height: 1.714;
}

.pg_post > :first-child {
	margin-top: 0;
}

.pg_post p,
p.wp-block {
	margin-top: 1.5em;
	margin-bottom: 1em;
}

/* 下線スタイルのカスタマイズ */
.pg_post span[style='text-decoration: underline;'] {
	text-decoration: underline wavy currentColor 1px !important;
	text-underline-offset: 3px;
}

.pg_post h1:not([class]), /* 記事タイトルに適用されることを防ぐため、`:not([class])`をつけている */
h1.wp-block{
	margin-bottom: 0.5em;
	padding-bottom: 15px;
	border-bottom: 2px solid #85b000;
	font-size: 2rem;
	font-weight: bold;
	line-height: 1.25;
}
.pg_post h2,
h2.wp-block {
	margin-bottom: 0.5em;
	padding-bottom: 12px;
	border-bottom: 1px solid #85b000;
	font-size: 1.9rem;
	font-weight: bold;
	line-height: 1.25;
}

.pg_post h2,
h2.wp-block {
	margin-top: 40px;
	margin-bottom: 20px;
}

.pg_post h3,
h3.wp-block {
	position: relative;
	margin-top: 35px;
	margin-bottom: 16px;
	padding-bottom: 10px;
	font-size: 1.8rem;
	font-weight: bold;
	line-height: 1.385;
}

.pg_post h3::after,
h3.wp-block::after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	width: 60px;
	height: 2px;
	background-color: #85b000;
}

.pg_post h4,
h4.wp-block{
	margin-top: 35px;
	border: 1px solid #ccc;
	font-size: 1.7rem;
	padding-top: 8px;
	padding-right: 10px;
	padding-bottom: 5px;
	padding-left: 10px;
	line-height: 1.385;
}
.pg_post h5,
h5.wp-block{
	margin-top: 32px;
	margin-bottom: -0.8em;
	font-size: 1.6rem;
	font-weight: bold;
	line-height: 1.375;
}

.pg_post h6,
h6.wp-block {
	margin-top: 28px;
	margin-bottom: -1em;
	font-size: 1.5rem;
	font-weight: bold;
	line-height: 1.375;
}

.pg_post ul:not([class]),
ul.wp-block:not(.has-background) {
	margin-top: 1.5em;
	margin-bottom: 1.5em;
	list-style: disc inside;
}

.pg_post ol:not([class]),
ol.wp-block:not(.has-background) {
	margin-top: 1.5em;
	margin-bottom: 1.5em;
	list-style: decimal inside;
}

.pg_post ul:not([class]) > li,
.pg_post ol:not([class]) > li,
ul.wp-block > li,
ol.wp-block > li {
	padding-left: 1.3em;
	line-height: 1.75;
	text-indent: -1.3em;
}

.has-background:not(._) {
	padding: 1.5em calc(1.5em * 1.5);
}

.wp-block-image {
	margin-top: 2em;
	margin-bottom: 2em;
}

.wp-block-image .alignleft,
.wp-block-image .aligncenter,
.wp-block-image .alignright {
	margin-right: auto;
	margin-left: auto;
	float: none;
}

.wp-block-image figcaption {
	font-size: 0.833em;
}

/* ----------------------------------------
// ギャラリー
---------------------------------------- */

.blocks-gallery-grid[class*='columns-'],
.wp-block-gallery[class*='columns-'] > .blocks-gallery-grid,
.wp-block-gallery.has-nested-images[class*='columns-'] {
	gap: 0;
	margin: -5px;
}

.blocks-gallery-grid[class*='columns-'] .blocks-gallery-image,
.blocks-gallery-grid[class*='columns-'] .blocks-gallery-item,
.wp-block-gallery[class*='columns-'] .blocks-gallery-image,
.wp-block-gallery[class*='columns-'] .blocks-gallery-item,
.wp-block-gallery.has-nested-images[class*='columns-'] figure.wp-block-image:not(#_) {
	flex-basis: 50%;
	flex-grow: 0;
	flex-shrink: 0;
	width: auto;
	margin: 0;
	padding: 5px;
}

.blocks-gallery-grid.columns-1,
.wp-block-gallery.columns-1 {
	margin: 0;
}

.blocks-gallery-grid.columns-1 .blocks-gallery-image,
.blocks-gallery-grid.columns-1 .blocks-gallery-item,
.wp-block-gallery.columns-1 .blocks-gallery-image,
.wp-block-gallery.columns-1 .blocks-gallery-item,
.wp-block-gallery.columns-1 figure.wp-block-image:not(#_) {
	flex-basis: 100%;
	padding: 0;
}

.blocks-gallery-grid[class*='columns-'] .blocks-gallery-image figure,
.blocks-gallery-grid[class*='columns-'] .blocks-gallery-item figure,
.wp-block-gallery[class*='columns-'] .blocks-gallery-image figure,
.wp-block-gallery[class*='columns-'] .blocks-gallery-item figure {
	position: relative;
}

.wp-block-gallery.has-nested-images[class*='columns-'] figure.wp-block-image:not(#_) {
	position: relative;
}

.wp-block-gallery.has-nested-images[class*='columns-'] figure.wp-block-image:not(#_) > figcaption {
	right: 5px;
	bottom: 5px;
	left: 5px;
	width: auto;
}

@media (min-width: 768px) {
	.blocks-gallery-grid[class*='columns-'],
	.wp-block-gallery[class*='columns-'] > .blocks-gallery-grid,
	.wp-block-gallery.has-nested-images[class*='columns-'] {
		margin: -10px;
	}

	.blocks-gallery-grid[class*='columns-'] .blocks-gallery-image,
	.blocks-gallery-grid[class*='columns-'] .blocks-gallery-item,
	.wp-block-gallery[class*='columns-'] .blocks-gallery-image,
	.wp-block-gallery[class*='columns-'] .blocks-gallery-item,
	.wp-block-gallery.has-nested-images[class*='columns-'] figure.wp-block-image:not(#_) {
		padding: 10px;
	}

	.blocks-gallery-grid.columns-3 .blocks-gallery-image,
	.blocks-gallery-grid.columns-3 .blocks-gallery-item,
	.wp-block-gallery.columns-3 .blocks-gallery-image,
	.wp-block-gallery.columns-3 .blocks-gallery-item,
	.wp-block-gallery.has-nested-images.columns-3 figure.wp-block-image:not(#_) {
		flex-basis: calc(100% / 3);
	}

	.blocks-gallery-grid.columns-4 .blocks-gallery-image,
	.blocks-gallery-grid.columns-4 .blocks-gallery-item,
	.wp-block-gallery.columns-4 .blocks-gallery-image,
	.wp-block-gallery.columns-4 .blocks-gallery-item,
	.wp-block-gallery.has-nested-images.columns-4 figure.wp-block-image:not(#_) {
		flex-basis: calc(100% / 4);
	}

	.blocks-gallery-grid.columns-5 .blocks-gallery-image,
	.blocks-gallery-grid.columns-5 .blocks-gallery-item,
	.wp-block-gallery.columns-5 .blocks-gallery-image,
	.wp-block-gallery.columns-5 .blocks-gallery-item,
	.wp-block-gallery.has-nested-images.columns-5 figure.wp-block-image:not(#_) {
		flex-basis: calc(100% / 5);
	}

	.blocks-gallery-grid.columns-6 .blocks-gallery-image,
	.blocks-gallery-grid.columns-6 .blocks-gallery-item,
	.wp-block-gallery.columns-6 .blocks-gallery-image,
	.wp-block-gallery.columns-6 .blocks-gallery-item,
	.wp-block-gallery.has-nested-images.columns-6 figure.wp-block-image:not(#_) {
		flex-basis: calc(100% / 6);
	}

	.blocks-gallery-grid.columns-7 .blocks-gallery-image,
	.blocks-gallery-grid.columns-7 .blocks-gallery-item,
	.wp-block-gallery.columns-7 .blocks-gallery-image,
	.wp-block-gallery.columns-7 .blocks-gallery-item,
	.wp-block-gallery.has-nested-images.columns-7 figure.wp-block-image:not(#_) {
		flex-basis: calc(100% / 7);
	}

	.blocks-gallery-grid.columns-8 .blocks-gallery-image,
	.blocks-gallery-grid.columns-8 .blocks-gallery-item,
	.wp-block-gallery.columns-8 .blocks-gallery-image,
	.wp-block-gallery.columns-8 .blocks-gallery-item,
	.wp-block-gallery.has-nested-images.columns-8 figure.wp-block-image:not(#_) {
		flex-basis: calc(100% / 8);
	}

	.wp-block-gallery.has-nested-images[class*='columns-'] figure.wp-block-image:not(#_) > figcaption {
		right: 10px;
		bottom: 10px;
		left: 10px;
	}
}

/* end ギャラリー */

.wp-block-table {
	margin-top: 2em;
	overflow-x: auto;
}

.wp-block-table table {
	white-space: nowrap;
}

.wp-block-table thead {
	border-bottom: none;
}

.wp-block-table th {
	padding: 0.5em;
	border: 1px solid #ccc;
}

.wp-block-table td {
	padding: 0.5em;
	border: 1px solid #ccc;
}

.wp-block-table figcaption {
	margin-top: 0.5em;
	font-size: 0.833em;
	line-height: 1.5;
}

/* 「スタイル：ストライプ」の場合
---------------------------------------- */

.wp-block-table.is-style-stripes {
	border-bottom: none;
}

.wp-block-table.is-style-stripes tbody tr:nth-child(odd) {
	background-color: #f1f2eb;
}

.wp-block-table.is-style-stripes th,
.wp-block-table.is-style-stripes td {
	border: 1px solid #ccc;
}

.wp-block-table.is-style-stripes th {
	background-color: transparent;
}

.wp-block-table.is-style-stripes td:first-child {
	background-color: transparent;
}

/* end 「スタイル：ストライプ」の場合 */

.wp-block-separator:not(#_) {
	max-width: 25%;
	margin-top: 2em;
	margin-bottom: 2em;
	border-bottom: 1px solid #ccc;
	opacity: 1;
}

.wp-block-embed {
	display: block;
	margin-top: 2em;
	margin-bottom: 2em;
}

.wp-block-embed:not(#_) {
	max-width: 100%;
}

.wp-block-embed.alignleft > .wp-block-embed__wrapper {
	text-align: left;
}

.wp-block-embed.aligncenter > .wp-block-embed__wrapper {
	text-align: center;
}

.wp-block-embed.alignright > .wp-block-embed__wrapper {
	text-align: right;
}

.wp-block-embed.aligncenter .twitter-tweet {
	margin-right: auto;
	margin-left: auto;
}

.wp-block-columns:last-child {
	margin-bottom: 0;
}

.wp-block-column {
	margin-bottom: 0;
}

.wp-block-column:last-child {
	margin-bottom: 0;
}

.wp-block-column > *:last-child {
	margin-bottom: 0;
}

.wp-block-media-text {
	margin-top: 2em;
	margin-bottom: 2em;
}

.wp-block-media-text .wp-block-media-text__content {
	align-self: flex-start;
	padding: 0;
}

.wp-block-media-text .wp-block-media-text__content *:not(#_) {
	margin-top: 1.125em;
	margin-bottom: 0.75em;
}

@media (min-width: 768px) {
	.pg_post {
		font-size: 1.8rem;
		line-height: 1.778;
	}

	.pg_post h1:not([class]),
	h1.wp-block{
		padding-bottom: 20px;
		border-bottom-width: 4px;
		font-size: 3rem;
		line-height: 1.25;
	}
	.pg_post h2,
	h2.wp-block{
		padding-bottom: 14px;
		border-bottom-width: 2px;
		font-size: 2.8rem;
		line-height: 1.25;
		margin-top: 70px;
		margin-bottom: 40px;
	}

	.pg_post h3,
	h3.wp-block {
		padding-bottom: 12px;
		margin-top: 50px;
		margin-bottom: 25px;
		font-size: 2.6rem;
	}

	.pg_post h3::after,
	h3.wp-block::after {
		height: 4px;
	}
	.pg_post h4,
	h4.wp-block{
		margin-top: 50px;
		font-size: 2.4rem;
		padding-top: 11px;
		padding-right: 20px;
		padding-bottom: 8px;
		padding-left: 20px;
	}

	.pg_post h5,
	h5.wp-block{
		margin-top: 40px;
		margin-bottom: -10px;
		font-size: 2.2rem;
	}
	.pg_post h6,
	h6.wp-block {
		margin-top:30px;
		margin-bottom: -14px;
		font-size: 2rem;
	}

	.pg_post ul:not([class]) > li,
	.pg_post ol:not([class]) > li,
	ul.wp-block > li,
	ol.wp-block > li {
		line-height: 2;
	}

	.wp-block-table table {
		white-space: normal;
	}

	.wp-block-separator:not(#_) {
		margin-top: 3em;
		margin-bottom: 3em;
	}

	.wp-block-image .alignleft {
		margin: 0.5em 2em 0.5em 0;
		float: left;
	}

	.wp-block-image .alignright {
		margin: 0.5em 0 0.5em 2em;
		float: right;
	}

	.wp-block-column {
		margin-bottom: 0;
	}

	.wp-block-media-text .wp-block-media-text__media {
		padding-right: 4%;
	}

	.wp-block-media-text .wp-block-media-text__content {
		padding-left: 4%;
	}

	.wp-block-media-text.has-media-on-the-right .wp-block-media-text__media {
		padding-right: 0;
		padding-left: 4%;
	}

	.wp-block-media-text.has-media-on-the-right .wp-block-media-text__content {
		padding-right: 4%;
		padding-left: 0;
	}

	.wp-block-media-text .wp-block-media-text__content *:not(#_) {
		margin-top: 0;
	}
}

/* ----------------------------------------
//
// 目次表示用
//
---------------------------------------- */

.pg_post > ol.box3,
.pg_post > ul.box3,
ol.wp-block.box3,
ul.wp-block.box3 {
	display: inline-block;
	padding: 1em;
	padding-right: 2em;
	border: 1px solid #ccc;

}

.pg_post > ol.box3,
ol.wp-block.box3 {
	list-style: decimal inside;
}

.pg_post > ul.box3,
ul.wp-block.box3 {
	list-style: disc inside;
}

.pg_post > ul.box3 ul:not(#_),
ul.wp-block.box3 ul:not(#_) {
	margin-top: 0;
	margin-bottom: 0;
	padding-left: 0.25em;
	list-style-type: circle;
}

.pg_post > ol.box3 li,
.pg_post > ul.box3 li,
ul.wp-block.box3 li,
ol.wp-block.box3 li {
	padding-left: 1.3em;
	line-height: 1.75;
	text-indent: -1.3em;
}

@media (min-width: 768px) {
	.pg_post > ol.box3 li,
	.pg_post > ul.box3 li,
	ul.wp-block.box3 li,
	ol.wp-block.box3 li {
		line-height: 2;
	}
}

/* end 目次表示用 */

/* ----------------------------------------
//
// 投稿埋め込み用
//
---------------------------------------- */

.wp_embededPost {
	max-height: 200px;
	padding: 15px;
	overflow-y: auto;
	border: 1px solid #ccc;
}

p.wp_embededPost_error {
	margin-top: 0;
	margin-bottom: 0;
	color: #f33;
	font-weight: bold;
}

/* end 投稿埋め込み用 */

/* ----------------------------------------
//
// 投稿下部記事一覧
//
---------------------------------------- */

.pg_post .bl_pg_btnWrap {
	display: flex;
	justify-content: center;
	line-height: 1;
}

.pg_post .bl_pg_btn {
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 1em;
	background-color: rgb(133, 176, 0);
    color: #fff;
	font-size: 18px;
}

/* end 投稿下部記事一覧 */

/* ----------------------------------------
//
// Elementor
//
---------------------------------------- */

.elementor *:not(._._) {
	font-family: inherit;
}

/* 一時的な修正 */
.elementor-image-box-wrapper {
	margin-bottom: 50px;
	column-gap: 50px;
}

.elementor-toc__header-title {
	flex-grow: 0 !important;
	margin-top: 0 !important;
	margin-bottom: 0 !important;
}

/* end 一時的な修正 */

.elementor :is(h1,h2,h3,h4,h5,h6, ._._) {
	color: #212121;
}

.elementor p {
	margin-top: 1.5em;
	margin-bottom: 1em;
}

.elementor h1:not([class]) {
	margin-top: 1.245em;
	margin-bottom: 0.83em;
	padding-bottom: 0.5em;
	border-bottom: 1px solid #ccc;
	font-size: 2rem;
	font-weight: 900;
	line-height: 1.5;
}

.elementor h2 {
	margin-top: 1.245em;
	margin-bottom: 0.83em;
	padding: 0;
	border: none;
	font-size: 2rem;
	font-weight: 900;
	line-height: 1.5;
}

.elementor h3 {
	margin-top: 1.5em;
	margin-bottom: 1em;
	padding-top: 0.5em;
	padding-right: 0;
	padding-bottom: 0.5em;
	padding-left: 0.75em;
	border-left: 4px solid #d3dd00;
	font-size: 1.8rem;
	font-weight: 900;
	line-height: 1.5;
}

.elementor h3::after {
	content: none;
}

.elementor h4 {
	margin-top: 1.995em;
	margin-bottom: 1.33em;
	padding: 0.75em;
	border: 1px solid #ccc;
	font-size: 1.6rem;
	font-weight: 900;
	line-height: 1.5;
}

.elementor h5 {
	margin-top: 2.505em;
	margin-bottom: 1.67em;
	font-weight: 900;
	line-height: 1.5;
}

.elementor h6 {
	margin-top: 1.5em;
	margin-bottom: 1em;
	font-weight: 700;
	line-height: 1.5;
}

@media (min-width: 768px) {
	.elementor h1:not([class]) {
		font-size: 3.2rem;
	}

	.elementor h2 {
		font-size: 2.4rem;
	}

	.elementor h3 {
		font-size: 2rem;
	}

	.elementor h4 {
		font-size: 1.8rem;
	}
}

/* end Elementor */

