@charset "UTF-8";
/* CSS Document */


/* ========================================
   Back to Top Button
   ======================================== */
.js-back-to-top {
	/* 固定表示 */
	position: fixed;
	right: 20px;       /* 右から20px */
	bottom: 20px;      /* 下から20px */
	z-index: 1000;     /* 最前面に表示（他の要素の上に重ねる） */
	
	/* デザイン */
	display: flex;         /* 中央寄せのためにflexboxを使う */
	flex-direction: column;
	justify-content: center;
	align-items: center;
	width: 50px;           /* 幅 */
	height: 50px;          /* 高さ */
	border-radius: 50%;    /* 真円にする */
	background-color: rgba(156,156,156,0.80); /* 青色の背景 */
	color: #fff;           /* 文字色を白に */
	font-size: 12px;       /* 文字サイズ */
	font-family: "Jost", sans-serif;
	font-weight: 400;     /* 太字 */
	line-height: 1;
	border: none;          /* 枠線をなくす */
	cursor: pointer;       /* カーソルをポインターに */
	box-shadow: 0 2px 10px rgba(0, 0, 0, 0.2); /* 影をつけて浮遊感 */

	/* 初期状態（隠れている） */
	opacity: 0;           /* 完全透明 */
	visibility: hidden;   /* クリックもできない */
	transform: translateY(20px); /* 少し下から現れるように */

	/* 表示/非表示のアニメーション */
	transition: opacity 0.3s ease, visibility 0.3s ease, transform 0.3s ease;
}

.js-back-to-top::before{
	content: '\e5c7';
	font-family: 'Material Icons';
	font-size: 30px;
	font-weight: 300;
	margin: -10px 0 -7px;
}

/* 表示された時 */
.js-back-to-top.is-show {
	opacity: 1;           /* 不透明にする */
	visibility: visible;  /* クリックできるようにする */
	transform: translateY(0); /* 定位置に戻る */
}

/* ホバー時のスタイル */
.js-back-to-top:hover {
	background-color: #777; /* 濃い色に変化 */
	box-shadow: 0 4px 15px rgba(0, 0, 0, 0.3); /* 影を強く */
}

/* スマホ表示時の調整 (任意) */
@media (max-width: 768px) {
  .js-back-to-top {
    right: 15px;
    bottom: 15px;
    width: 45px;
    height: 45px;
    font-size: 12px;
  }
}



/* Library Separator=========================================================

　 Breadcrumb NavXT プラグイン パンくずリスト

----------------------------------------------------------------------------*/

/*wrap*/
.breadcrumbs{
	max-width: 1100px;
	margin: 0 auto;
	padding-left: 20px;
	padding-right: 20px;}

/*基本スタイル*/
.breadcrumbs{
	font-size: 1rem;
	padding: 10px 20px;
	font-weight: 600;
	color: #222222;
	margin-bottom: 50px;}

/*リンク文字*/
.breadcrumbs a{
	font-weight: normal;}

/*ホバー*/
.breadcrumbs a:hover{
	color:#45909C;}

/*span囲みで出力なので、span間に疑似クラスで記号をいれる*/
.breadcrumbs span + span::before{
	content: ">";
	vertical-align: 2px;
	padding: 0 5px;
	color: #ABABAB}


/* Library Separator=========================================================

　WP Pagenavi プラグイン ページャー

----------------------------------------------------------------------------*/
.wp-pagenavi{
	line-height: 1;
	text-align: center;
	padding-top: 50px;
}
.wp-pagenavi .pages{
	font-size: 1.2rem;
	padding-right: 10px;
}
.wp-pagenavi .current,
.wp-pagenavi a{
	display: inline-block;
	background: #EEEEEE;
	border-radius: 3px;
	padding: 5px 10px;
	margin-right: 3px;
	margin-bottom: 10px;
}
.wp-pagenavi .current{
	background: #91C6CE;
	color: #FFF;
}

/* Library Separator=========================================================

　プラグイン Simple Lightbox ズーム時のキャプション表示テキスト整形

============================================================================*/
.slb_data_content{
	padding-top: 0.5em!important;
}
.slb_data_title,
.slb_group_status{
	font-size: 1.2rem!important;
	font-weight: normal!important;
	font-style: normal!important;
}
.slb_group_status{
	padding-left: 1em!important;
	color: #777!important;
}
.slb_data_desc{
	margin-top: 0!important;
}

/* Library Separator=========================================================

　reCAPTCHAのバッジ隠した時（Google公認）に表示すべき内容のスタイル

============================================================================*/
.recaptcha_policy {
  padding: 10px;
  margin: 0;
  text-align: center;
  font-size: 1.2rem !important;
  color: #444 !important;}

.recaptcha_policy a {
  font-size: 1.2rem !important;
  color: #00B5EE !important;}

/* reCAPTCHAバッジを隠す */
.grecaptcha-badge { visibility: hidden; }


/* Library Separator=========================================================

　 エントリー（編集エリア全体）

============================================================================*/
.entry{
	font-size: 1.5rem;
}
.entry a{
	color: var(--link-color);
}
.entry a:hover{
	text-decoration: underline;
}


.entry p{
	margin: 1em 0;
	line-height: 1.8;
}

.entry h2,.entry h3,.entry h4,.entry h5,.entry h6{ font-feature-settings: "palt" 1;}

.page .entry h2{
	font-size: clamp( 2rem , 3.5vw , 3rem);
	font-weight: 500;
	color: #FFF;
	background-color: var(--main-color);
	padding: 0.4em 0.75em;
	margin: 3em 0 1em;
	position: relative;
}
.page .entry h2::before{
	content: '';
	display: block;
	position: absolute;
	background: #FFEE15;
	width: 4.5em;
	height: clamp( 4px , 1vw , 8px);
	top: 0;
	left: 0;
}

.single .entry h2{
	font-size: clamp( 2rem , 3.5vw , 2.0rem);
	font-weight: 500;
	color: #FFF;
	background-color: var(--main-color);
	padding: 0.5em 0.5em;
	margin: 2em 0 1em;
	position: relative;
}

.entry h3{
	color:var(--main-color);
	font-size: 1.6rem;
	margin: 4em 0 2em;
	background: #F2F2F2;
	line-height: 1.4;
	padding: 1em;
	border-left:2px solid var(--main-color);
}

.page .entry h4{
	font-size: clamp( 1.8rem , 3.0vw , 2.4rem);
	color: var(--main-color);
	margin: 1.5em 0 0.5em;}

.single .entry h4{
	font-size: clamp( 1.4rem , 2.0vw , 1.6rem);
	color: var(--main-color);
	margin: 1em 0 0.5em;}

.entry h5{
	font-size: 1.5rem;
	margin: 1.5em 0 0.5em;}

.entry h6{
	font-size: 1.5rem;
	margin: 1.5em 0 0.5em;}


/*リスト形式----------------------**/
.entry ul,
.entry ol{
	margin: 1em 0;}

.entry ul li,
.entry ol li{
	line-height: 1.6;
	margin: 0.4em 0;}

.entry ul li{
	padding-left: 1em;
	text-indent: -1em;}

.entry ul li::before{
	content: '・';
	font-family: "Osaka-mono", "MS Gothic", "monospace";}

.entry ol li{
	list-style: decimal;
	margin-left: 1.5em;}


/*★リスト形式（コメ印）----------------------*/
.entry ul.kome li{
	font-size: 90%;
	color: #616161;}

.entry ul.kome li::before{
	content: '※'!important;}


/*写真ブロックとそのキャプション　----------------------*/
.entry .wp-block-image{
	margin-top: 1em;
	margin-bottom: 2em;}

.entry .wp-block-image figcaption{
	font-size: 1.2rem;
	color: #4C4C4C;
	padding-top: 0.5em;
	text-align: center;}

.entry .wp-block-image .aligncenter figcaption{
	text-align: center;}
.entry .wp-block-image .alignright figcaption{
	text-align: right;}


/*テーブルとそのキャプション　----------------------*/

/*クラシックエディターでのテーブル対応をしつつ、後半はデフォルトのテーブルを設定*/
.entry table{
	font-size: 90%;
}

.entry table th,
.entry table td{
	border: 1px solid #999;
	padding: 1em;}

.entry table th{
	background: #F0F0F0;}

.entry .wp-block-table{
	margin: 1em 0;}

.entry .wp-block-table th{
	background: transparent;}

.entry .wp-block-table thead{
	border-bottom: 2px solid;}

.entry .wp-block-table tfoot{
	border-top: 2px solid;}

.entry .wp-block-table figcaption{
	font-size: 1.2rem;
	color: #4C4C4C;
	text-align: center;
	padding: 0.75em 0;}

/*==テーブル横スクロール対応==*/
.yoko-scroll{
	overflow-x: auto;
	white-space: nowrap;
}


/*ギャラリーとそのキャプション　----------------------*/
.entry .wp-block-gallery{
	margin: 1em 0;}

.entry .wp-block-gallery .wp-block-image{
	margin: 0;
}

.entry .blocks-gallery-caption{
	font-size: 1.2rem;
	color: #4C4C4C;
	text-align: center;
	padding: 0.75em 0;}


/*区切り線HR----------------------*/

.entry .wp-block-separator{
	width: 30%;
	margin: 50px auto;
	background: #BABABA;
	height: 1px;
	border: none;
}
.entry .wp-block-separator.is-style-wide{
	width: 100%;
}

/*引用----------------------*/
.entry .wp-block-quote{
	margin: 3em 0;
	border-left: 2px solid #999;
	padding: 0.5em 1em 0.5em 2em;
}
.entry .wp-block-quote p{
	margin: 0;
	font-family: serif;
}
.entry .wp-block-quote cite{
	display: block;
	margin: 0.75em 0 0 0;
	font-size: 90%;
	font-family: serif;
}

/*コード----------------------*/
.entry .wp-block-code{
	margin: 1em 0;
	padding: 2em;
	font-size: 90%;
	font-family: "Osaka-mono", "MS Gothic", "monospace";
	background-color: #F7F7F7;
}

/*整形テキスト------------------*/
.entry .wp-block-preformatted{
	line-height: 1.8;
	margin: 1em 0;
}

/*プルクオート-------------------*/
.entry .wp-block-pullquote{
	margin: 3em 0;
	border-top: 2px solid #333;
	border-bottom: 2px solid #333;
	font-family: serif;
	padding-left: 1em;
	padding-right: 1em;
}

/*ポエム-------------------*/
.entry .wp-block-verse{
	font-size: 95%;
	margin: 2em 0;
	line-height: 2;
	letter-spacing: 0.075em;
}

/*ファイル------------------*/
.entry .wp-block-file{
	margin: 1em 0;
	font-size: 1em;
}
.entry .wp-block-file::before{
	content: "・";
}
.entry .wp-block-file__button{
	padding: 0 2em!important;
	line-height: 2.4;
	display: inline-block;
	font-size: 0.65em;
	vertical-align: 0.2em;
}
.entry .wp-block-file__button:hover{
	opacity: 0.6;}

.wp-block-file:not(.wp-element-button){
	font-size: 1em!important;
}

/*ボタン------------------*/
.entry .wp-block-button{
	margin: 1em 0;
}
.entry .wp-element-button,
.entry .wp-element-button:hover{
	color: #FFF;
}

.entry .wp-block-button:hover{
	opacity: 0.6;
	
}
.entry a.wp-element-button:hover{
	text-decoration: none!important;
}

.entry .wp-block-button__link{
	background-color: var(--main-color);
	font-size: 1em;
	padding-right: 3em;
	position: relative;
}
.entry .wp-block-button__link:after{
	content: '\e5e1';
	position: absolute;
	font-family: 'Material Icons';
	font-size: 0.9em;
	top: 50%;
	right: 1em;
	transform: translateY(-50%);
}


@media (min-width:450px){
	.entry{
		font-size: 1.6rem;
	}
}
/*========================================
	PDFにアイコンをつける
========================================*/
/*
.entry a[href$=".pdf"]::after {
	content: '\f1c1';
	font-family: "Font Awesome 6 Free";
	font-size: 100%;
	font-weight: 100;
	color: #AF0201;
	margin-left: 5px;
}

.entry a[href$=".docx"]::after {
	content: '\f1c2';
	font-family: "Font Awesome 6 Free";
	font-size: 100%;
	font-weight: 100;
	color: #1757BD;
	margin-left: 5px;
}

.entry a[href$=".xlsx"]::after {
	content: '\f1c3';
	font-family: "Font Awesome 6 Free";
	font-size: 100%;
	font-weight: 100;
	color: #207547;
	margin-left: 5px;
}
*/

/*ファイルのダウンロードボタンにはアイコンを付けない*/
.entry a.wp-block-file__button[href$=".pdf"]::after,
.entry a.wp-block-file__button[href$=".docx"]::after,
.entry a.wp-block-file__button[href$=".xlsx"]::after{
	content: none;
}