@charset "UTF-8";
/*
	* CMSスタイルシート
	* エディターに関するスタイル
	* ver1
	* Copyright (C) ●●など
	* 更新履歴
		└ 
*/
/* ////////////////////////////////////////////////////////////////////////////////////////////////////
	CMS
//////////////////////////////////////////////////////////////////////////////////////////////////// */
:root{
	/* cmsの余白設定 */
	--cmsSpace_small: 10px;
	--cmsSpace_medium: 30px;
	--cmsSpace_minusMedium: -30px;
	--cmsSpace_large: 50px;
	--cmsSpace_minusLarge: -50px;
	--gradient-blue-deep: linear-gradient(to right, #bbdbfc, #a0c5f8);
	--gradient-blue-deep2: linear-gradient(to right, #ccdff9, #006ebf);
	--skyBlue: #a1c5f8;
	--skyBlue2: #deebfa;
}
/* ******************************************************************************************
	必須設定
****************************************************************************************** */
.aligncenter { display: block;margin: 0 auto; }
.alignright { float: right; }
.alignleft { float: left; }
.st_editor{
	/* 最後の要素のmargin-bottom相殺 */
	margin-bottom: var(--cmsSpace_minusMedium);
}
.st_editor a:not([class]){
	/* aタグにクラスが付いていなければinlineにする */
	display: inline;/* common.cssのinline-blockリセット */
	color: #2271b1;
}
.st_editor::after {
	/* ブロックの最後で画像を左右寄せにした場合回り込み対策 */
	content: "";
	display: block;
	clear: both;
 }
/* ******************************************************************************************
	初期設定（サイトによって適宜修正）
****************************************************************************************** */
/* ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	改行設定
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
.st_editor{
	/* ボックス内に収まらない場合の折り返し設定 */
	overflow-wrap: anywhere;
	/* 文章内の単語がどの位置で折り返すかの設定 */
	word-break: break-all;
	/* 文章の禁則処理の設定 */
	/* line-break: strict; */
}
/* ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	見出しブロック
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
/* ======================================================================
	共通スタイル
====================================================================== */
.st_editor h2, .st_editor h3, .st_editor h4, .st_editor h5, .st_editor h6{
	color: var(--black);
	font-weight: bold;
	letter-spacing: 1px;
	font-size: var(--fontSize20);
}
@media screen and (max-width:992px){
	.st_editor h2, .st_editor h3, .st_editor h4, .st_editor h5, .st_editor h6{
		font-size: var(--fontSize18);
	}
}
/* ======================================================================
	H1
====================================================================== */
.st_editor h1{
	position: relative;
	text-align: center;
	padding-bottom: 20px;
	font-size: var(--fontSize22);
	margin-bottom: clamp(30px, calc(56 / var(--vw-base) * 100vw), 56px);/* 最小30px, 最大56px */
}
.st_editor h1::after{
	content: "";
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translateX(-50%);
	width: 50px;
	height: 10px;
	margin: auto;
	background: var(--gradient-blue-deep2);
}
@media screen and (max-width:992px){
	.st_editor h1::after{
		width: 50px;
		height: 5px;
	}
}
/* ======================================================================
	H2
====================================================================== */
.st_editor h2{
	position: relative;
	padding: 20px 20px 20px 45px;
	background: var(--gradient-blue-deep);
	font-weight: bold;
}
.st_editor h2::after{
	content: "";
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
	left: 23px;
	width: 5px;
	height: 30px;
	margin: auto;
	background-color:#fff;
	border-radius: 3px;
}
/* ======================================================================
	H3
====================================================================== */
.st_editor h3{
	position: relative;
	width: 100%;
	padding: 17px 17px 17px 17px;
	background: var(--gradient-blue);
	border-left: 7px solid var(--skyBlue);
}
/* ======================================================================
	H4
====================================================================== */
.st_editor h4{
	position: relative;
	padding: 14px 8px;
}
.st_editor h4::after{
	content: "";
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100%;
	height: 5px; /* 線の太さ */
	background: linear-gradient(to right, #eaf4fb, #d7e7fa); /* 好きなグラデーションに */
}
/* ======================================================================
	H5
====================================================================== */
.st_editor h5{
	position: relative;
	padding: 10px 10px 10px calc(40px + 20px)!important;/* 基準幅分 + 余白 */
	
}
.st_editor h5::after{
	content: "";
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
	left: 40px;
	width: 12px;
	height: 12px;
	margin: auto;
	background-color: #a1c5f8;
}
@media screen and (max-width:992px){
	.st_editor h5{
		padding: 10px 10px 10px calc(20px + 20px)!important;
	}
	.st_editor h5::after{
		left: 20px;
		width: 12px;
		height: 12px;
	}
}
/* ======================================================================
	H6
====================================================================== */
.st_editor h6{
	padding: 10px 10px 10px 40px!important;
}
@media screen and (max-width:992px){
	.st_editor h6{
		padding: 10px 10px 10px 20px!important;
	}
}
/* ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	ボタンブロック
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
/* ======================================================================
	デフォルトボタン設定
====================================================================== */
.st_editor .wp-block-button__link{
	display: inline-block;
	color: #fff;
	font-weight: bold;
}
/* ======================================================================
	オリジナルボタン
====================================================================== */
.st_editor .is-style-el_btn_normal > a{
	display: inline-block;
	position: relative;
	padding: 10px;
	border-radius: 5px;
	background-color: var(--mainColor);
	color: #fff;
	font-weight: bold;
	font-size: 1.125rem;
	text-decoration: none;
	text-align: center;
}
/* ======================================================================
	ダウンロードボタン
====================================================================== */
.wp-block-file .wp-block-file__button{
	display: inline-block;
	box-sizing: border-box;
	padding: .3rem 1rem;
	border: 1px solid rgb(0 0 0 / 20%);
	border-radius: 5px;
	box-shadow: 2px 2px 1px 0px #ccc;
	background-color: #fff;
	color: var(--black);
	font-size: .9rem;
	text-decoration: none;
}
.wp-block-file__button + .fileInfo{
	/* ダウンロードボタンのファイルサイズ非表示 */
	display: none;
}
/* ******************************************************************************************
	YouTube,googlemapの初期値のサイズ設定
	max-widthを適宜変更
****************************************************************************************** */
/* YouTube,googlemap 埋め込みの際「cms_media」が付与される */
/* YouTube,googlemap レスポンシブ対応 */
.cms_media{
	position: relative;
	width: 100%;
	/* max-width: 500px; */
	aspect-ratio: 3/2;
}
/* 配置を中央寄せにした場合 */
.aligncenter .cms_media{
	margin-right: auto;
	margin-left: auto;
}
/* 配置を右または左にした場合 */
.wp-block-embed.alignleft .cms_media, .wp-block-embed.alignright .cms_media{
	/* max-width: 500px; */
}
.wp-block-columns .cms_media{
	/* カラムブロック内の場合 */
	width: 100%;
}
.cms_media iframe{
	position: absolute;
	top: 0;
	right: 0;
	width: 100% !important;
	height: 100% !important;
}
/* ******************************************************************************************
	余白（マージン）
****************************************************************************************** */
/* ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	見出し
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
/* ======================================================================
	margin-top
====================================================================== */
.st_editor > * + h2{
	margin-top: var(--cmsSpace_large);
}
.st_editor > * + h3{
	margin-top: var(--cmsSpace_large);
}
.st_editor > * + h4{
	margin-top: var(--cmsSpace_medium);
}
@media screen and (max-width: 576px){
	.st_editor > * + h3{
		margin-top: var(--cmsSpace_medium);
	}
}
/* ======================================================================
	margin-bottom
====================================================================== */
.st_editor :is(h2,h3,h4,h5,h6){
	margin-bottom: var(--cmsSpace_medium);
}
@media screen and (max-width:992px){
	.st_editor :is(h2,h3,h4,h5,h6){
		margin-bottom: var(--cmsSpace_small);
	}
}
/* ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	テキスト関係
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
/* ======================================================================
	段落、リスト、引用、コード、詳細、整形済みテキスト、プルクオート、テーブル、詩
====================================================================== */
.st_editor :is(
	p,
	ul,
	ol,
	.wp-block-quote,
	.wp-block-code,
	.wp-block-details,
	.wp-block-preformatted,
	.wp-block-pullquote,
	.wp-block-table,
	.wp-block-verse
){margin-bottom: var(--cmsSpace_medium);}
/* ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	メディア
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
/* ======================================================================
	画像、ギャラリー、音声、カバー、ファイル、動画、WP VRプラグイン、YouTube、GoogleMap埋め込み
====================================================================== */
.st_editor :is(
	.wp-block-image,
	.wp-block-gallery,
	.wp-block-audio,
	.wp-block-cover,
	.wp-block-file,
	.wp-block-video,
	.wpvr-cardboard,
	.cms_media
){margin-bottom: var(--cmsSpace_medium);}
/* ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	デザイン
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
/* ======================================================================
	グループ、ボタン、続き、ページ区切り、区切り
====================================================================== */
.st_editor :is(
	.wp-block-group,
	.wp-block-button,
	.wp-block-more,
	.wp-block-nextpage,
	.wp-block-separator
){margin-bottom: var(--cmsSpace_medium);}
/* ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	包括系ブロック
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
/* ======================================================================
	カラム
====================================================================== */
.st_editor .wp-block-columns{
	margin-bottom: 0;
}
.st_editor .wp-block-column{
	margin-bottom: var(--cmsSpace_medium);
}
.st_editor .wp-block-column > *:last-child{
	/* 個別カラムの最後の要素のmargin-bottom相殺 */
	margin-bottom: 0;
}
/* ======================================================================
	メディアとテキスト
====================================================================== */
.st_editor .wp-block-media-text .wp-block-media-text__content{
	margin-bottom: var(--cmsSpace_minusMedium);
}
.st_editor .wp-block-media-text{
	margin-bottom: var(--cmsSpace_large);
}
@media screen and (max-width: 768px){
	.st_editor .wp-block-media-text.is-stacked-on-mobile{
		gap: var(--cmsSpace_medium);
	}
	.st_editor .wp-block-media-text.is-stacked-on-mobile .wp-block-media-text__content{
		padding: 0;
	}
}
/* ******************************************************************************************
	余白（パディング）
****************************************************************************************** */
/* ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	コンテンツ左右の余白
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
/* .st_editor  > *:not(h1):not(h2):not(h3):not(h4):not(h5):not(h6) { */
.st_editor  > *:not(h1):not(h2):not(h3) {
  padding-left: 40px;
  padding-right: 40px;
}
@media screen and (max-width:992px){
	.st_editor  > *:not(h1):not(h2):not(h3) {
		padding-left: 20px;
		padding-right: 20px;
	}	
}
/* ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	背景色選択時
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
.st_editor .has-background{
	padding: 2em;
}
/* ボタンの背景色の場合初期値にする */
.st_editor .wp-block-button__link.has-background{
	padding: calc(.667em + 2px) calc(1.333em + 2px);
}
/* 画像の上にテキスト追加した際の左右の余白 */
.st_editor .wp-block-cover, .st_editor .wp-block-cover-image{
	padding: 2em;
}
@media screen and (max-width: 576px){
	.st_editor .has-background{
		padding: 2em 1em;
	}
	.st_editor .wp-block-cover, .st_editor .wp-block-cover-image{
		padding: 1em;
	}
}
/* ******************************************************************************************
	リンク
****************************************************************************************** */
.st_editor a{
	color: var(--black);
	text-decoration: underline;
	position: relative;/* pdf等アイコンの基準設定 */
}
.st_editor a[href^="tel:"]{
	text-decoration: none;
}
/*ページ内リンクのジャンプ先がグローバルナビに隠れないようにする*/
/* .st_editor a.anchor{ display: block;padding-top: 4rem;margin-top: -4rem; } */
@media screen and (max-width: 768px){
	.st_editor a[href^="tel:"]{
		text-decoration: underline;
	}
}
/* ******************************************************************************************
	リストブロック
****************************************************************************************** */
/* リストが入れ子の場合、margin-bottom削除 */
.st_editor .wp-block-list .wp-block-list{
	margin-bottom: 0;
}
/* list-style領域確保 */
.st_editor ul, .st_editor ol{
	padding-left: 2em;
}
/* 順序付きの場合数字 */
.st_editor ol{
	list-style-type: decimal;
}
/* 第1階層（塗りつぶしの丸） */
.st_editor ul > li{
	list-style-type: disc;
}
/* 第2階層（塗りつぶしなしの丸） */
.st_editor ul > li > ul > li{
	list-style-type: circle;
}
/* 第3階層（塗りつぶしの四角） */
.st_editor ul > li > ul > li > ul > li{
	list-style-type: square;
}
/* list-style調整 */
.st_editor ul > li::marker{
	color: var(--mainColor);
	font-size: 1.125rem;
}
/* list-style調整 */
.st_editor ol > li::marker{
	font-size: 1rem;
}
/* ヘルパーCSS【hp_listStyleNone】行頭スタイルを消す */
.st_editor .hp_listStyleNone li{
	list-style-type: none;
}



/* ******************************************************************************************
	メディアとテキストブロック
****************************************************************************************** */
.st_editor .wp-block-media-text .wp-block-media-text__content{
	padding: 0;
	padding-right: 5%;
}
.st_editor .wp-block-media-text__media + .wp-block-media-text__content{
	padding-right: 0;
	padding-left: 5%;
}
.st_editor .wp-block-media-text__media img, .st_editor  .wp-block-media-text__media video{
	/* スマホ版の時画像本来の大きさにする */
	width: initial;
	max-width: 100%;
}
/* ******************************************************************************************
	画像ブロック
****************************************************************************************** */
/* 画像本来の大きさにする */
.st_editor .wp-block-image img{
	width: initial;
}
/* キャプション */
.st_editor .wp-caption{
	padding: .75rem;
	border-radius: 4px;
}
.st_editor .wp-caption-text{
	margin: .5rem 0 0 0;
	text-align: center;
}
.st_editor .wp-block-gallery.has-nested-images figure.wp-block-image figcaption{
/* デフォルトmarginをリセット */
	margin-top: 0;

/* デフォルトpaddingを再定義 */
	padding: 8px;
	/* デフォルト背景を再定義 */
	background: initial;
	background-color: rgb(0 0 0 / 70%);
}
@media screen and (max-width: 768px){
	.wp-block-gallery.has-nested-images figure.wp-block-image figcaption{
		pointer-events: none;/* スマホ版の時キャプションが重なり画像リンクが押せないため */
	}
}
/* ******************************************************************************************
	詩ブロック
****************************************************************************************** */
.wp-block-verse{
	overflow: auto;
	padding: 20px;
	background-color: #f5f5f5;
}
/* ******************************************************************************************
	音声ブロック
****************************************************************************************** */
.wp-block-audio figcaption{
	margin-top: 0;
	font-size: .75rem;
	text-align: center;
}
/* ******************************************************************************************
	ファイルブロック
****************************************************************************************** */
/* デフォルトスタイルリセット */
.st_editor .wp-block-file:not(.wp-element-button){
	font-size: 1rem;
}
/* ******************************************************************************************
	引用ブロック
****************************************************************************************** */
.wp-block-quote{
	position: relative;
	padding: 1rem 1.5rem;
}
.wp-block-quote, .wp-block-quote p{
	font-style: italic;
}
/* ******************************************************************************************
	カラムブロック
****************************************************************************************** */
@media screen and (max-width: 781px){
	.st_editor div[class^="wp-container-"]{
		gap: 0;
	}
	.st_editor .wp-block-columns.is-not-stacked-on-mobile.is-layout-flex{
		gap: 1rem;/* スマホ時、縦並びしない場合のカラム間余白調整 */
	}
	.st_editor .wp-block-columns.is-layout-flex{
		gap: 0rem;/* スマホ時、縦並びカラム間の余白調整 */
	}
}
/* ******************************************************************************************
	ギャラリーブロック
****************************************************************************************** */
/* 奇数対策 */
.st_editor :is(
	.blocks-gallery-grid .blocks-gallery-image,
	.blocks-gallery-grid .blocks-gallery-item,
	.wp-block-gallery .blocks-gallery-image,
	.wp-block-gallery .blocks-gallery-item,
	.wp-block-gallery .wp-block-image
){flex-grow: 0 !important;}
/* 角丸適用時キャプション黒文字対策 */
.st_editor .wp-block-gallery .is-style-rounded{
	color: #fff;
}
/* ******************************************************************************************
	インラインコード
****************************************************************************************** */
.st_editor .wp-block-code{
	background-color: #f5f4f4;
	padding: 20px;
	border-radius: 0;
	font-size: 15px;
}
/* ******************************************************************************************
	詳細ブロック
****************************************************************************************** */
.st_editor .wp-block-details > summary::marker{
	color: var(--mainColor);
	font-size: 1.125rem;
}
/* ******************************************************************************************
	パスワード保護
****************************************************************************************** */
[id^="pwbox"]{
	/* セレクタ名の前方一致 */
	/* パスワード入力ボックス余白 */
	padding: 2px 10px;
	background-color: #fff;
}
label[for^="pwbox"] + input[type="submit"]{
	margin-left: 0;
	padding: 2px 10px;
	border: 1px solid rgb(0 0 0 / 20%);
}
/* ////////////////////////////////////////////////////////////////////////////////////////////////////
	cms > アイコン表示
//////////////////////////////////////////////////////////////////////////////////////////////////// */
.st_editor a[target="_blank"]:not([class]){
	/* アイコン領域確保 */
	padding-right: 20px;
}
.st_editor a[target="_blank"]:not([class]):after{
	/* 新しいタブで開くリンクにクラスが付いていなければ表示させる */
	content: "\f35d"; /*blankアイコン*/
	color: #aaa;
	font-weight: bold;
	font-size: .7rem;
	font-family: "Font Awesome 5 Free";
	position: absolute;
	bottom: -3px;
	right: 0;
}
.st_editor a[download]:after{
	content: "\f56d";
	display: inline-block;
	padding-left: .45rem;
	font-weight: bold;
	font-size: 1rem;
	font-family: "Font Awesome 5 Free";
}
/* アイコン領域確保 */
.st_editor :is(
	a[href$=".pdf"],
	a[href$=".xlsx"],
	a[href$=".xlsx"],
	a[href$=".xlsm"],
	a[href$=".xlsb"],
	a[href$=".xltx"],
	a[href$=".xltm"],
	a[href$=".xls"],
	a[href$=".xlt"],
	a[href$=".xml"],
	a[href$=".xlam"],
	a[href$=".xla"],
	a[href$=".xlw"],
	a[href$=".xlr"],
	a[href$=".zip"],
	a[href$=".doc"],
	a[href$=".docm"],
	a[href$=".docx"],
	a[href$=".dot"],
	){
	padding-left: calc(15px + 5px);/* アイコン幅 + 余白 */
}
/* アイコン位置調整 */
.st_editor :is(
	a[href$=".pdf"],
	a[href$=".zip"],
	a[href$=".txt"],
	a[href$=".xlsx"],
	a[href$=".xlsm"],
	a[href$=".xlsb"],
	a[href$=".xltx"],
	a[href$=".xltm"],
	a[href$=".xls"],
	a[href$=".xlt"],
	a[href$=".xml"],
	a[href$=".xlam"],
	a[href$=".xla"],
	a[href$=".xlw"],
	a[href$=".xlr"],
	a[href$=".doc"],
	a[href$=".docm"],
	a[href$=".docx"],
	a[href$=".dot"]
):before{
	position: absolute;
	top: calc(50% + 3px);/* 中央値 + 微調整 */
	left: 0px;
	transform: translateY(-50%);
	font-weight: bold;
	font-size: 1rem;
	font-family: "Font Awesome 5 Free";
	}
.st_editor a[href$=".pdf"]:before{
	content: "\f1c1"; /*pdfアイコン*/
	color: #ff2116;
}
.st_editor a[href$=".zip"]:before{
	content: "\f1c6"; /*zipアイコン*/
	color: #444;
}
.st_editor a[href$=".txt"]:before{
	content: "\f15c"; /*txtアイコン*/
	color: #444;
}
/* ダウンロードボタンのbefore、アイコン非表示 */
.wp-block-file__button::before{
	display: none;
}
 /* excelアイコン */
.st_editor :is(
	a[href$=".xlsx"],
	a[href$=".xlsm"],
	a[href$=".xlsb"],
	a[href$=".xltx"],
	a[href$=".xltm"],
	a[href$=".xls"],
	a[href$=".xlt"],
	a[href$=".xml"],
	a[href$=".xlam"],
	a[href$=".xla"],
	a[href$=".xlw"],
	a[href$=".xlr"]
):before{
		content: "\f1c3";
		color: #107c41;

	}
/* wordアイコン */
.st_editor :is(
	a[href$=".doc"],
	a[href$=".docm"],
	a[href$=".docx"],
	a[href$=".dot"]
):before{
		content: "\f1c2";
		color: #185abd;
}
/* ファイルサイズ */
.fileInfo{
	margin-left: 15px;
	color: #888;
}