@charset "utf-8";
/* *************************************************************************************************************
 *	file name:		default.css
 *	Alteration:		2022.09		（2022新テンプレ合わせ。WidthCheckerForJs、printOnly等の削除、IE非対応、各種調整）
 *	style info:		全ページ共通のデフォルトCSS（物件用ベースCSS）
----------------------------------------------------------------------------------------------------------------
 *	< load >
 *	< COMMON > -  Normalize - Reset - CssCustomProperties - Setting - AddParts - etc
 *	< @KEYFRAMES >
 *	< STYLE_CSS >
 *	< BASE > - OuterWide - Module_Wrapper - Framework_Wrapper - Framework_Elements - Module_Elements
 *	< COMMON_LAST > - etc
----------------------------------------------------------------------------------------------------------------
 * {A}	物件メニューが入らないページもあるので余白設定は注意。margin,paddingは基本設定不可。設定する場合は物件メニューが入らない場合のことも考慮すること。
----------------------------------------------------------------------------------------------------------------
 * 01	「.contents」はバッティングするため使用不可。「.contbox」を使用する。
 * 02	カスタムプロパティ名「--ファイル名-要素クラス名等-内容-種類: xxx;」（例：--default-pageTheme-color-light: #ccc;）
----------------------------------------------------------------------------------------------------------------
@media screen and (min-width: 736.02px) {}
@media screen and (min-width: 1200.02px) {}
@media screen and (max-width: 1200px) {}
@media screen and (min-width: 736.02px) and (max-width: 1200px) {}
@media screen and (max-width: 736px) {}
@media screen and (max-width: 480px) {}
@media screen and (max-width: 320px) {}
************************************************************************************************************* */

/* ***************************************************************************************************
	load | @importより上にコード記述不可。
*************************************************************************************************** */
/* ----------------------------------------------------------------------------
 * フォント読込はHTMLにて。
-------------------------------------------------------------------------------
 * [ Noto Sans JP (400) ]
 * [ Noto Sans (100-900) ]
 * [ Noto Serif JP (400) ]
 * [ Noto Serif (100-900) ]
 * [ Cormorant Garamond (300-700) ]
 * [ Oswald (200-700) ]
 * [ Zen Old Mincho (400) ]
 * [ YakuHanJP_Noto ]
 * [ YakuHanMP_Noto ]
 * [ Cinzel ] テンプレに元々入ってるもの
 *
 * URL	:
 * 		https://fonts.google.com/share?selection.family=Crimson%20Text%7CItalianno%7CNoto%20Sans%7CNoto%20Sans%20JP%7CNoto%20Serif%7CNoto%20Serif%20JP
 * 		https://yakuhanjp.qranoko.jp
 * CODE	:
 * 		font-family: YakuHanMP_Noto, "Zen Old Mincho", 'Noto Serif JP', 'Noto Serif', serif;
 * 		font-family: "Cormorant Garamond", YakuHanMP_Noto, 'Noto Serif JP', 'Noto Serif', serif;
 * 		font-family: "Oswald", YakuHanMP_Noto, 'Noto Serif JP', 'Noto Serif', serif;
 * 		font-weight: 400;
 *
 * MEMO	: [ Yaku Han * ]のweightは[ Noto * JP ]と同様。
 */


/* ***************************************************************************************************
	COMMON
*************************************************************************************************** */

/* ============================================================================
	Normalize (ress v1.1.2 - v1.2.2)
-------------------------------------------------------------------------------
	[ress.css • v1.1.2]
	Author 	: Filipe Linhares
	License	: MIT License(https://opensource.org/licenses/mit-license.php)
	URL		: github.com/filipelinhares/ress
-------------------------------------------------------------------------------
	[2022.04] Adding | Several styles have been used and tuned.
============================================================================ */
/*html {box-sizing:border-box;-webkit-text-size-adjust:100%;}
*, ::before, ::after {background-repeat:no-repeat;box-sizing:inherit;}
::before, ::after {text-decoration:inherit;vertical-align:inherit;}
* {padding:0;margin:0;}
a {background-color:transparent;-webkit-text-decoration-skip:objects;}*/

/*input {border-radius:0;}
button,[type="button"],[type="reset"],[type="submit"],[role="button"] {cursor:pointer;}
[disabled] {cursor:default;}
textarea {overflow:auto;resize:vertical;}
button,input,optgroup,select,textarea {font:inherit;}
button {overflow:visible;}*/

/*img {border-style:none;}
progress {vertical-align:baseline;}
svg:not(:root) {overflow:hidden;}
audio, canvas, progress, video {display:inline-block;}*/

/*::-moz-selection {background-color:#b3d4fc;color:#000;text-shadow:none;}
::selection {background-color:#b3d4fc;color:#000;text-shadow:none;}
::-moz-selection {background-color:#2184f2;color:#fff;text-shadow:none;}
::selection {background-color:#2184f2;color:#fff;text-shadow:none;}*/


/* ============================================================================
	Reset 															2022.10
============================================================================ */
	/*details, main, menu, summary  {display:block;}*/			/* for IE11 */
	/*img {vertical-align:bottom;}*/							/* 余白対策 | base.cssとバッティングするためここは非表示 */
	/*ul, ol {list-style:none;}
	h1, h2, h3, h4, h5, h6 {font-size:1em;font-weight:normal;}
	table {border-collapse:collapse;border-spacing:0;}
	b, strong {font-weight:inherit;}
	small, figcaption {font:inherit;}*/
html {box-sizing:border-box;-webkit-text-size-adjust:100%;/*overflow-y:scroll;*/}
:where(main) ::before,
:where(main) ::after {text-decoration:inherit;vertical-align:inherit;box-sizing:inherit;}
:where(main) i,
:where(main) em {font-style:normal;}
:where(main) sub,
:where(main) sup {min-height:0.001vw;font-size:max(.9rem,63%);line-height:0;position:relative;vertical-align:baseline;}		/* for safari | font-sizeにclamp()使用時必須 */
:where(main) sub {bottom:-.25em;}
:where(main) sup {top:-.5em;}
:where(main small) sub {bottom:-.05em; font-size:max(.9rem,.91em);}
:where(main small) sup {top:-.1em; font-size:max(.9rem,.91em);}

:where(main) :is(h1, h2, h3, h4, h5, h6, b, strong, i, em) {
	font-weight: inherit;
}


/* ============================================================================
	CssCustomProperties 											2022.04
============================================================================ */
/* SITE
---------------------------------------------------- */
	:root {
		/* フォント */
		--site-font_family-sans: YakuHanJP_Noto, 'Noto Sans JP', 'Noto Sans', YuGothic,'Hiragino Kaku Gothic ProN','Yu Gothic',Meiryo,sans-serif;
		--site-font_family-serif: YakuHanMP_Noto, "Zen Old Mincho", 'Noto Serif JP', 'Noto Serif', YuMincho,'Hiragino Mincho ProN','Yu Mincho',serif;
		--site-font_family-en_1: "Cormorant Garamond", var(--site-font_family-serif);
		--site-font_family-en_2: "Oswald", var(--site-font_family-serif);
		--site-font_family-basic: var(--site-font_family-serif);
		--site-font_family-caption: var(--site-font_family-sans);
		
		/* テーマカラー */
		--site-themeColor-base:						14, 21, 48;		/* rgb | #0e1530 | navy */
		--site-themeColor-base_text:				190, 186, 187;	/* rgb | #bebabb | Gray */
		--site-themeColor-main:						30, 36, 60;		/* rgb | #1e243c | light navy */
		--site-themeColor-main_text:				169, 170, 176;	/* rgb | #a9aab0 | Gray */
		--site-themeColor-sub:						0, 0, 0;		/* rgb | #000000 | Black */
		--site-themeColor-sub_text:					194, 205, 219;	/* rgb | #c2cddb | Light_grayish_blue */
		--site-themeColor-accent_1:					156, 151, 127;	/* rgb | #9c977f | grayish gold */
		--site-themeColor-accent_2:					185, 163, 104;	/* rgb | #b9a368 | gold */
		--site-themeColor-accent_1_text:			238, 238, 238;	/* rgb | #eeeeee | Gray */ /* ※ accent_1 を背景に使った場合の文字色 */
		/* カラーバリエーション */
		--site-variationColor-heading-dark:			var(--site-themeColor-accent_1);
		--site-variationColor-heading-light:		255, 182, 193;	/* rgb | #ffb6c1 | Light_pink */
		--site-variationColor-gradient_gold:		linear-gradient(to right, #a09053 0%, #c6bb92 50%, #a09053 100%); /* 金グラデ */
		/*--site-variationColor-pattern_dark:			url("../images/share/bg_01.jpg") center center repeat fixed;*/ /* 暗パターン */
		/* リンク用カラー */
		/*--site-linkColor-basic:						255, 255, 255;
		--site-linkColor-basic-reverse:				0, 0, 0;*/
		
		/* 幅 */
		--site-sizeContentWide-L:	100%;
		--site-sizeContentWide-XM:	94%;		/* XMは736以下からLと同じ幅にする */
		--site-sizeContentWide-M:	88%;		/* Mは736以下からSと同じ幅にする */
		--site-sizeContentWide-S:	86.111%;
		--site-sizeMaxWidth-L:		1900px;
		--site-sizeMaxWidth-XM:		1440px;
		--site-sizeMaxWidth-M:		1260px;		/* Mは736以下からSと同じ幅にする */
		--site-sizeMaxWidth-S:		1000px;
		
		/* 余白 */
		--site-marpad-XXXL:			150px;
		--site-marpad-XXL:			150px;		/* 736以下の下げ幅大 */
		--site-marpad-XL:			120px;
		--site-marpad-L:			100px;
		--site-marpad-M:			80px;
		--site-marpad-S:			60px;
		--site-marpad-XS:			40px;
		--site-marpad-XXS:			20px;
	}
	/* hover, focus, current */
	/*@media (hover: hover) and (pointer: fine) {
		a[href]:hover {
			--site-linkColor-basic: var(--site-linkColor-basic-active);
			--site-linkColor-basic-reverse: var(--site-linkColor-basic-reverse-active);
		}
	}
	a[href]:focus-visible,
	.is_current > a[href] {
		--site-linkColor-basic: var(--site-linkColor-basic-active);
		--site-linkColor-basic-reverse: var(--site-linkColor-basic-reverse-active);
	}*/
@media screen and (max-width: 1200px) {
	:root {
		/* スティッキーヘッダー分の余白 ※数値は要確認（ざっくり対応ver ※厳密にする場合はJSで） */
		--site-stickyHeader-height:	64px;
	}
}
@media screen and (max-width: 736px) {
	:root {
		/* カラーバリエーション */
		--site-variationColor-pattern_dark:			url("../images/share/bg_01.jpg") center center / 1500px auto repeat fixed; /* 暗パターン */
		/* 幅 */
		--site-sizeContentWide-XM:	100%;		/* XMは736以下からLと同じ幅にする */
		--site-sizeContentWide-M:	86.111%;	/* Mは736以下からSと同じ幅にする */
		--site-sizeMaxWidth-M:		1000px;		/* Mは736以下からSと同じ幅にする */
		/* 余白 */
		--site-marpad-XXXL:			120px;
		--site-marpad-XXL:			100px;		/* 736以下の下げ幅大 */
		--site-marpad-XL:			100px;
		--site-marpad-L:			80px;
		--site-marpad-M:			60px;
		--site-marpad-S:			40px;
		--site-marpad-XS:			30px;
		/*--site-marpad-XXS:			15px;*/
	}
}


@media screen and (-webkit-min-device-pixel-ratio: 0) and (min-resolution: .001dpcm) {
	img {
		image-rendering: -webkit-optimize-contrast;
	}
}

/* DEFAULT
---------------------------------------------------- */
	:root {
		/* イージング */
		--default-easing-easeInOutQuint:		cubic-bezier(.83, 0, .17, 1);
		--default-easing-easeInOutCubic:		cubic-bezier(.65, 0, .35, 1);
		--default-easing-easeOutQuint:			cubic-bezier(.22, 1, .36, 1);
	}

/* 文字サイズ可変CSS
------------------------------------------------------
- [--M-fluidFontSize-fontSize:]と[font-size:]は書き換えなしでそのまま使用する。
------------------------------------------------------
[例]：文字サイズ[1.85rem~2.4rem]・ビューポート[320~980]
font-size: clamp(最小文字, calc(最小文字 + (1vw - ビューポート最小幅のrem値) * (100 * (文字可変量) / (ビューポート可変量))), 最大文字);
font-size: clamp(1.85rem, calc(1.85rem + (1vw - .32rem) * (100 * (24 - 18.5) / (980 - 320))), 2.4rem);
	↓
.xxxxx {
	--M-fluidFontSize-max-fontsize: 24;
	--M-fluidFontSize-min-fontsize: 18.5;
	--M-fluidFontSize-max-viewport: 980;
	--M-fluidFontSize-min-viewport: 320;
	--M-fluidFontSize-fontSize: clamp( var(--M-fluidFontSize-min-fontsize) * .1rem, (var(--M-fluidFontSize-min-fontsize) * .1rem) + (1vw - (var(--M-fluidFontSize-min-viewport) / 100 * .1rem)) * (100 * (var(--M-fluidFontSize-max-fontsize) - var(--M-fluidFontSize-min-fontsize)) / (var(--M-fluidFontSize-max-viewport) - var(--M-fluidFontSize-min-viewport))), var(--M-fluidFontSize-max-fontsize) * .1rem );

	min-height: 0.001vw;	// for safari | font-sizeにclamp()使用時必須 //
	font-size: var(--M-fluidFontSize-fontSize);
}
---------------------------------------------------- */


/* ============================================================================
	Setting
============================================================================ */
/* html */
	/*html {font-size:.625em;}*/										/* base.cssとバッティングするためここは非表示 ※問題があれば再検討 */

/* Img */
	:where(main) img,
	:where(main) object[data-obj-roleimg*="roleImg"] {					/* base.cssとバッティングするためmain要素の中のimg,objectとする */
		max-width: 100%;
		/*height: auto;*/												/* base.cssとバッティングするためここは非表示 */
		vertical-align: bottom;											/* 余白対策 */
	}
	:where(main) a object[data-obj-roleimg*="_link"] {					/* リンクが効かなくなる仕様の解除 | 例：<a href="#"><object data="xxx.svg" data-obj-roleimg="roleImg_link"></object></a> */
		pointer-events: none;
	}

/* svg */
	:where(main) svg:not(:root) {
		overflow: hidden;
	}
	:where(main) img[src$=".svg"],
	:where(main) img[src$=".svgz"],
	:where(main) object[data-obj-roleimg*="roleImg"][data$=".svg"],
	:where(main) object[data-obj-roleimg*="roleImg"][data$=".svgz"] {	/* for IE11 | ※親要素に幅指定必須 (Width specification is mandatory for parent element.) */
		width: 100%;
	}

/* form */
:where(main) :is(button, input, select, textarea) {
	font: inherit;
}

/* ---------------------------------
	Text Base
--------------------------------- */
	main {
		position: relative;
		min-height: 0.001vw;		/* for safari | font-sizeにclamp()使用時必須 */
		line-height: 2.2;
		color: rgba(var(--site-themeColor-base_text), 1);
		font-family: var(--site-font_family-basic);
		font-optical-sizing: auto;
		font-weight: 400;
		font-size: clamp(1.3rem, (14 / 1000 * 100vw), 1.4rem); /* ww1000以下から小さくなる */
		/*font-size: 1.6rem;*/
		letter-spacing: .04em;
		background: rgba(var(--site-themeColor-base), 1);
	}
body.brandP main {
	color: inherit;
	background: inherit;
}
		main > * {
			position: relative;
			z-index: 3;
		}
	main::before {
		pointer-events: none;
		content: "";
		position: fixed;
		z-index: 1;
		top: 0;
		left: 0;
		display: block;
		width: 100%;
		height: 100vh;
		background: url("../images/share/bg_contents.jpg") left 132px no-repeat;
		mix-blend-mode: color-burn;
	}
	.search-wrap, .box-bukken, .area-user-footer-wrap, .footer-property {
		position: relative;
		z-index: 2;
	}
	.fontSizeReset {
		min-height: 0.001vw;		/* for safari | font-sizeにclamp()使用時必須 */
		font-size: clamp(1.3rem, (14 / 1000 * 100vw), 1.4rem); /* ww1000以下から小さくなる */
		/*font-size: 1.6rem;*/
	}
	small, figcaption {
		line-height: 1.5;
		color: inherit;
		font-family: var(--site-font_family-caption);
		font-size: 1.1rem;
		letter-spacing: .04em;
		/*opacity: .92;*/ /* 気持ち軽くする(不要なら削除) */
	}
@media screen and (max-width: 1200px) {
	main::before {
		background-position: left top;
		background-size: contain;
	}
}
@media screen and (max-width: 736px) {
	main {
		font-size: 1.325rem;
	}
	.fontSizeReset {
		font-size: 1.325rem;
	}
	small, figcaption {
		font-size: 1rem;
	}
}

/* Font Family */
	.fontSerif,
	.fontSerifBox * {
		font-family: var(--site-font_family-serif);
	}
	.breadcrumbBox,
	.fontSans,
	.fontSansBox * {
		font-family: var(--site-font_family-sans);
	}
	.fontEn01,
	.fontEn01Box * {
		font-family: var(--site-font_family-en_1);
	}
	.fontEn02,
	.fontEn02Box * {
		font-family: var(--site-font_family-en_2);
	}

/* Text */
	.txtSizeInherit {	font-size: inherit;}
	.txtSizeLLL {		font-size: 1.5em;}
	.txtSizeLL {		font-size: 1.35em;}
	.txtSizeL {			font-size: 1.15em;}
	.txtSizeS {			font-size: 0.93em;}
	.txtSizeSS {		font-size: 0.85em;}
	.txtSizeSSS {		font-size: 0.65em;}
	.txtSize1rem {		font-size: 1rem;}
	.txtSize09rem {		font-size: .9rem;}

	.txtColorInherit {color:inherit;}
	.txtColorBk {color: #000 !important;} /*黒系*/
	.txtColorWh {color: #fff !important;} /*白系*/
	.txtColorGr {color: #767676 !important;} /*灰系*/
	.txtColor01 {color: #990011 !important;} /*暗赤系*/
	.txtColor02 {color: #c7000a !important;} /*明赤系*/
	.txtColor03 {color: #dec774 !important;} /*明黄系*/
	.txtColor04 {color: #aa9477 !important;} /*暗黄系*/

	.txtColor_basetxt {	color: rgba(var(--site-themeColor-base_text), 1) !important;}
	.txtColor_maintxt {	color: rgba(var(--site-themeColor-main_text), 1) !important;}
	.txtColor_subtxt {	color: rgba(var(--site-themeColor-sub_text), 1) !important;}
	.txtColor_accent_1 {color: rgba(var(--site-themeColor-accent_1), 1) !important;}
	.txtColor_accent_2 {color: rgba(var(--site-themeColor-accent_2), 1) !important;}
	.txtColor_accent_3 {color: rgba(var(--site-themeColor-accent_3), 1) !important;}

	.emphasis {font-weight:bold;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;}

	.EmParentheses {margin-left:-.5em;margin-right:-.5em;}
	.EmParenthesesL {margin-left:-.5em;}
	.EmParenthesesR {margin-right:-.5em;}
	.EmParenthesesH {margin-left:-.25em;margin-right:-.25em;}/* Half */
	.EmParenthesesHL {margin-left:-.25em;}
	.EmParenthesesHR {margin-right:-.25em;}

	.ptHeading sub {bottom:-.1em;margin-right:.1em; font-size:max(.9rem,.55em);}
	.ptHeading sup {top:-.6em;margin-right:.1em; font-size:max(.9rem,.55em);}

/* Small Text */
	small.bl,
	small.bltr,
	small.blPCtrSPtl {display:block;/*line-height:1.4;*/margin-top:.35em;}
	small.bltr,
	small.blPCtrSPtl {text-align:right;}
	small .punc {margin-right:-.5em;}/* punctuation mark（約物）｜※inline-block内の文末使用は不可。inline-block自身への使用は可。 */
	
	.captionWrap {display:block;/*line-height:1.7;*/}
	.captionWrap small {display:inline-block;line-height: 1.7;/*font-size:1.1rem;*/letter-spacing:.07em;}
@media screen and (max-width: 736px) {
	small.blPCtrSPtl {text-align:left;}
	/*.captionWrap small {font-size:1rem;}*/
}

/* Imgcap | 例:	 <p class="imgcapParent"><img><small class="imgcap bk">caption</small></p>	 <p class="imgcapParent"><img><small class="imgcap"><span class="wh">caption</span></small></p> */
	.imgcapParent {
		position: relative;
	}
	.imgcap, .imgcapkeep {
		display: block;
		position: absolute;
		bottom: 0;
		right: 0;
		line-height: 1.5;
		padding: 5px 10px;
	}
	.imgcap.bg, .imgcapkeep.bg {
		padding: 2px 6px;
	}
	.imgcap > span,
	.imgcapkeep > span {
		display: inline-block;
	}
	.imgcap.wh, .imgcapkeep.wh {color:#ffffff;text-shadow:0 0 3px rgba(0,0,0,.3);}
	.imgcap.bk, .imgcapkeep.bk {color:#202020;text-shadow:0 0 3px rgba(255,255,255,.3);}
	.imgcap.gr, .imgcapkeep.gr {color:#767676;text-shadow:0 0 3px rgba(255,255,255,.3);}
	.imgcap .wh, .imgcapkeep .wh {color:#ffffff;text-shadow:0 0 5px rgba(0,0,0,.9), 0 0 4px rgba(0,0,0,.9), 0 0 3px rgba(0,0,0,1), 0 0 2px rgba(0,0,0,1);}
	.imgcap .bk, .imgcapkeep .bk {color:#202020;text-shadow:0 0 9px rgba(255,255,255,.9), 0 0 9px rgba(255,255,255,.9), 0 0 5px rgba(255,255,255,.5), 0 0 2px rgba(255,255,255,.5), 0 0 1px rgba(255,255,255,.5), 0px 1px 1px rgba(255,255,255,.5), 0px -1px 1px rgba(255,255,255,.5), 1px 0px 1px rgba(255,255,255,.5), -1px 0px 1px rgba(255,255,255,.5), 1px 1px 1px rgba(255,255,255,.5), -1px 1px 1px rgba(255,255,255,.5), 1px -1px 1px rgba(255,255,255,.5), -1px -1px 1px rgba(255,255,255,.5), .5px .5px .5px rgba(255,255,255,.7);}
	.imgcap .gr, .imgcapkeep .gr {color:#767676;text-shadow:0 0 9px rgba(255,255,255,.9), 0 0 9px rgba(255,255,255,.9), 0 0 5px rgba(255,255,255,.5), 0 0 2px rgba(255,255,255,.5), 0 0 1px rgba(255,255,255,.5), 0px 1px 1px rgba(255,255,255,.5), 0px -1px 1px rgba(255,255,255,.5), 1px 0px 1px rgba(255,255,255,.5), -1px 0px 1px rgba(255,255,255,.5), 1px 1px 1px rgba(255,255,255,.5), -1px 1px 1px rgba(255,255,255,.5), 1px -1px 1px rgba(255,255,255,.5), -1px -1px 1px rgba(255,255,255,.5), .5px .5px .5px rgba(255,255,255,.7);}
	.imgcap.wh.bg, .imgcapkeep.wh.bg {background-color:rgba(0,0,0,.5);text-shadow:none;}
	.imgcap.bk.bg, .imgcapkeep.bk.bg {background-color:rgba(255,255,255,.6);text-shadow:none;}
	.imgcap.gr.bg, .imgcapkeep.gr.bg {background-color:rgba(255,255,255,.6);text-shadow:none;}
@media screen and (max-width: 736px) {
	.imgcap {
		position: static;
		padding: .3em .5em 0;
	}
	.imgcap.wh,
	.imgcap.bk,
	.imgcap.gr,
	.imgcap > span {
		display: block;
		color: inherit;
		text-shadow: none!important;
		margin: .3em 0 0;
	}
	.imgcap.wh.bg,
	.imgcap.bk.bg,
	.imgcap.gr.bg {
		background-color: transparent;
	}
}

/* Bgcap | （~=スペース区切り毎の正確な値） | content 内に「\A」で改行可能。 white-space:pre; 必須。 */
	[data-bgcap-parent] {
		position: relative;
		/*background-image: ; 各ページ用CSSで設定*/
		background-position: center center;
		background-size: cover;
		background-repeat: no-repeat;
	}
	[data-bgcap-parent]::after {
		/*content: ""; 各ページ用CSSで設定*/
		display: block;
		position: absolute;
		bottom: 0;
		right: 0;
		line-height: 1.5;
		font-family: var(--site-font_family-caption);
		color: inherit;
		font-size: 1.1rem;
		letter-spacing: .04em;
		white-space: pre;
		padding: 5px 10px;
		opacity: .8; /* 気持ち軽くする(不要なら削除) */
	}
	[data-bgcap-parent~="topLeft"]::after {		top: 0;	left: 0;}
	[data-bgcap-parent~="topRight"]::after {	top: 0; right: 0;}
	[data-bgcap-parent~="bottomLeft"]::after {	bottom: 0; left: 0;}
	[data-bgcap-parent~="bottomRight"]::after {	bottom: 0; right: 0;}
	[data-bgcap-parent~="wh"]::after {
		color:#ffffff;text-shadow:0 0 3px rgba(0,0,0,.3);
	}
	[data-bgcap-parent~="bk"]::after {
		color:#202020;text-shadow:0 0 3px rgba(255,255,255,.3);
	}
	[data-bgcap-parent~="bg"]::after {
		text-shadow:none; padding: 2px 6px;
	}
	[data-bgcap-parent~="wh"][data-bgcap-parent~="bg"]::after {
		background-color:rgba(0,0,0,.5);
	}
	[data-bgcap-parent~="bk"][data-bgcap-parent~="bg"]::after {
		background-color:rgba(255,255,255,.6);
	}
	[data-bgcap-parent~="1rem"]::after {
		font-size: 1rem;
	}
	[data-bgcap-parent~="09rem"]::after {
		font-size: .9rem;
	}
	[data-bgcap-parent~="08rem"]::after {
		font-size: .8rem;
	}
@media screen and (max-width: 736px) {
	[data-bgcap-parent]::after {
		font-size: 1rem;
	}
	[data-bgcap-parent~="1rem"]::after {
		font-size: 1rem;
	}
	[data-bgcap-parent~="09rem"]::after {
		font-size: .9rem;
	}
	[data-bgcap-parent~="08rem"]::after {
		font-size: .8rem;
	}
}

/* Symbol List */
	/* ul.symList>li.symItem*2>div.sym+div.symItemText */
	.symList > .symItem {display:flex;width:100%;}
	.symList > .symItem::before,
	.symList > .symItem .sym {display:block;white-space:nowrap;padding-right:.25em;}
	.symList > .symItem .symItemText {flex:1 1;display:block;}
	.symList[data-star-symlist-styletype="circleFill"] > .symItem::before { content: "●";}
	.symList[data-star-symlist-styletype="squareFill"] > .symItem::before { content: "■";}
	.symList[data-star-symlist-styletype="squareLine"] > .symItem::before { content: "□";}
	
	/* small.symList-kome>span.symItem*2>span.sym{※}+span.symItemText{xxx}>br */
	.symList-kome {display:block!important;}
	.symList-kome .symItem {display:flex;width:100%;}
	.symList-kome .sym {display:block;white-space:nowrap;padding-right:.25em;}
	.symList-kome .symItemText {flex:1 1;display:block;}
	
	/* small.symList-kome>span.symItem.legendBox>(i*3>img[src="xxx"][alt="xxx色"][width="000"][height="000"])+(i*3>{XXXxxxxxx})+br */
	.symList-kome .legendBox {display:flex;flex-wrap:wrap;justify-content:flex-start;margin-top:.2em;margin-bottom:.2em;}
	.symList-kome .legendBox i {display:inline-block;margin-right:1.5em;}
	.symList-kome .legendBox img {vertical-align:middle;line-height:1;margin-right:4px; margin-top:-3px; height:1em;}
	.symList-kome .legendBox img.outframe {margin-right:6px;}
	.symList-kome .legendBox br:last-child {display: none;}

/* ---------------------------------
	Link
--------------------------------- */
	/* ----- tmplリセット ----- */
	:where(main) a {
		color: inherit;
		text-decoration: none;
	}
	:where(main) a .inbl {
		color: inherit;
		text-decoration: inherit;
	}
	:where(main) a:hover {
		text-decoration: none; /* base.cssのリセット */
	}
	/* ----- 汎用：文字色青・下線付き ----- */
	a.txtLink,
	.txtLink a {
		/*color: #4d92ff!important;*/
		text-decoration: underline !important;
	}
	/* ----- 汎用：hover時_透過フェード ----- */
	a.hover,
	.hover a,
	.hoverItem {
		transition: opacity .15s ease-out;
	}
	@media (hover: hover) and (pointer: fine) {
		a.txtLink:hover,
		.txtLink a:hover {
			text-decoration: none !important;
		}
		a.hover:hover,
		.hover a:hover,
		.hoverItem:hover {
			opacity: .63;
		}
	}
	a.txtLink:focus-visible,
	.txtLink a:focus-visible {
		text-decoration: none !important;
	}
	a.hover:focus-visible,
	.hover a:focus-visible,
	.hoverItem:focus-visible {
		opacity: .63;
	}

/* ---------------------------------
	Button
--------------------------------- */
	/* ボタン要素のスタイルリセット | button.M_btnReset */
	.M_btnReset {
		-webkit-appearance: none;
		-moz-appearance: none;
		appearance: none;
		color: inherit;
		font: inherit;
		background: transparent;
		border: none;
		border-radius: 0;
		cursor: pointer;
	}


/* ============================================================================
	AddParts
-------------------------------------------------------------------------------
	* generalBtnUnit
	- btn_XXX
	* [data-buttonicon]
	- simpleArrow_tri
	- simpleArrow_cir
	- ico_plus
	- bgico_
	* M_shinyEffect
	* generalColBox
	* js_swipeMe
============================================================================ */

/* generalBtnUnit													2022.09
---------------------------------------------------------------------------
- 汎用ボタン
- 例：<a href="xxx" class="generalBtnUnit">XXX</a>
- 例：<a href="xxx" class="generalBtnUnit btnS">XXX</a>
- 例：<a href="xxx" class="generalBtnUnit_bgGradient">XXX</a>
- 例：<button type="button" class="generalBtnUnit">XXX</button>
------------------------------------------------------------------------ */
	[class*="generalBtnUnit"] {
		display: block;
		position: relative;
		/*z-index: 0;*/								/* for Safari.（border-radius時必須） */
		width: 90%;
		max-width: 500px;
		line-height: 1.3;
		font-size: 1.06667em;
		text-align: center;
		text-decoration: none;
		letter-spacing: .1em;
		margin: 0 auto;
		padding: calc(9px + .45em) 1em;			/* [data-buttonicon]が入る場合は後述で再設定 */
		outline: 1px solid rgba(255, 255, 255, .10);
		outline-offset: -1px;
		box-sizing: border-box;
	}
	[class*="generalBtnUnit"] .en {
		display: block;
		line-height: 1.1;
		font-family: var(--site-font_family-en_1);
		font-size: 1.125em;
		font-style: italic;
		letter-spacing: .15em;
		margin-bottom: .4em;
	}
	[class*="generalBtnUnit"] .ja {}
	[class*="generalBtnUnit"] .inbl {	text-decoration: inherit;}
	[class*="generalBtnUnit"] .kana {	letter-spacing: -.06em;}
	[class*="generalBtnUnit"] .kochira {}
	
	/* btn000 */
	[class*="generalBtnUnit"].btnL {
		max-width: 700px;
		font-size: 1.3em;
	}
	[class*="generalBtnUnit"].btnS {
		max-width: 300px;
		font-size: inherit;
	}
	/* 角丸 */
	.is_generalBtnUnit_round {
		overflow: hidden;
		border-radius: 10em;
	}
	/* hover（共通） */
	[class*="generalBtnUnit"][href],
	button:not([disabled])[class*="generalBtnUnit"] {
		transition: color .18s ease-out, background .18s ease-out, border .18s ease-out, box-shadow .18s ease-out, opacity .18s ease-out;
	}
	/*@media (hover: hover) and (pointer: fine) {
		[class*="generalBtnUnit"][href]:hover,
		button:not([disabled])[class*="generalBtnUnit"]:hover {
			box-shadow: 0 8px 9px -9px rgba(0, 0, 0, .4);
		}
	}
	[class*="generalBtnUnit"][href]:focus-visible,
	button:not([disabled])[class*="generalBtnUnit"]:focus-visible {
		box-shadow: 0 8px 9px -9px rgba(0, 0, 0, .4);
	}*/
	/* ---------------------------------
		単色
	--------------------------------- */
	.generalBtnUnit {
		background: rgba(255, 255, 255, .1);
		box-shadow: 0 0 27px rgba(255, 255, 255, .1) inset;
	}
	.generalBtnUnit,
	.generalBtnUnit:active,
	.generalBtnUnit:focus {							/* base.cssのリセット */
		color: #fff;
	}
	@media (hover: hover) and (pointer: fine) {
		.generalBtnUnit[href]:hover,
		button:not([disabled]).generalBtnUnit:hover {
			box-shadow: 0 0 50px rgba(255, 255, 255, .2) inset;
			/*background: rgba(33,33,33, .9);*/
		}
	}
	.generalBtnUnit[href]:focus-visible,
	button:not([disabled]).generalBtnUnit:focus-visible {
		/*background: rgba(33,33,33, .9);*/
	}
	/* ---------------------------------
		枠線
	--------------------------------- */
	.generalBtnUnit_border {
		background: transparent;
		box-shadow: 0 0 0 1px rgba(255, 255, 255, .5) inset;
	}
	.generalBtnUnit_border,
	.generalBtnUnit_border:active,
	.generalBtnUnit_border:focus {					/* base.cssのリセット */
		color: rgba(255, 255, 255, .9);
	}
	@media (hover: hover) and (pointer: fine) {
		.generalBtnUnit_border[href]:hover,
		button:not([disabled]).generalBtnUnit_border:hover {
			color: rgba(var(--site-themeColor-base),1);
			background: rgba(255, 255, 255, .8);
		}
		.generalBtnUnit_border[href]:hover [data-buttonicon^="simpleArrow_ku"]::after,
		button:not([disabled]).generalBtnUnit_border:hover [data-buttonicon^="simpleArrow_ku"]::after {
			border-color: rgba(var(--site-themeColor-base),1);
		}
	}
	.generalBtnUnit_border[href]:focus-visible,
	button:not([disabled]).generalBtnUnit_border:focus-visible {
		color: #ddd;
		background: rgba(33,33,33, .9);
	}
	/* ---------------------------------
		グラデーション | hover時にグラデを透過させる場合（::before 使用の為、[data-buttonicon="simpleArrow_cir_*"]関連の直接使用不可）
	--------------------------------- */
	.generalBtnUnit_bgGradient {
		background: #a09053;						/* ベースカラー(ONカラー) */
	}
	.generalBtnUnit_bgGradient,
	.generalBtnUnit_bgGradient:active,
	.generalBtnUnit_bgGradient:focus {				/* base.cssのリセット */
		color: #fff;
	}
	.generalBtnUnit_bgGradient::before {
		content:"";display:block;position:absolute;top:0;right:0;z-index:0;width:100%;height:100%;
		background: var(--site-variationColor-gradient_gold);
		opacity: 1;
		transition: opacity .18s ease-out;
	}
	.generalBtnUnit_bgGradient .label {
		position: relative;
		z-index: 3;
	}
	@media (hover: hover) and (pointer: fine) {
		.generalBtnUnit_bgGradient[href]:hover::before,
		button:not([disabled]).generalBtnUnit_bgGradient:hover::before {
			opacity: .33;
		}
	}
	.generalBtnUnit_bgGradient[href]:focus-visible::before,
		button:not([disabled]).generalBtnUnit_bgGradient:focus-visible::before {
		opacity: .33;
	}
	/* ---------------------------------
		グラデーション | hover時にグラデをスライドさせる場合
	--------------------------------- */
/*	.generalBtnUnit_bgGradient {
		background: linear-gradient(to right, red 0%, violet 30%, violet 50%, blue 90%) right center / 200% auto no-repeat;
		transition: background .3s ease-out, box-shadow .18s ease-out;
	}
	.generalBtnUnit_bgGradient,
	.generalBtnUnit_bgGradient:active,
	.generalBtnUnit_bgGradient:focus {				// base.cssのリセット //
		color: #fff;
	}
	@media (hover: hover) and (pointer: fine) {
		.generalBtnUnit_bgGradient[href]:hover,
		button:not([disabled]).generalBtnUnit_bgGradient:hover {
			background-position: left center;
		}
	}
	.generalBtnUnit_bgGradient[href]:focus-visible,
	button:not([disabled]).generalBtnUnit_bgGradient:focus-visible {
		background-position: left center;
	}*/
@media screen and (max-width: 1200px) {
	[class*="generalBtnUnit"] {
		letter-spacing: .07em;
	}
	[class*="generalBtnUnit"].btnL {
		font-size: 1.2em;
	}
}
@media screen and (max-width: 736px) {
	[class*="generalBtnUnit"] {
		font-size: 1.01695em;
		letter-spacing: .03em;
		padding-top:	calc(9px + .4em);
		padding-bottom:	calc(9px + .4em);
	}
	[class*="generalBtnUnit"].btnL {
		max-width: 500px;
		font-size: 1.11em;
	}
	[class*="generalBtnUnit"] .en {
		letter-spacing: .07em;
	}
}
@media screen and (max-width: 480px) {
	[class*="generalBtnUnit"] {
		width: 100%;
		max-width: 280px;
		font-size: 1em;
	}
	/*[class*="generalBtnUnit"] .en {
		font-size: 1rem;
	}
	[class*="generalBtnUnit"] .ja {
		font-size: 1.3rem;
	}*/
}

/* btn_XXX | 特定のボタンカラー
---------------------------------------------------- */
	/* -- req, res, lim, att, gMap -- */
	/*:is(.btn_req, .btn_res, .btn_lim, .btn_att, .gMapLink) [class*="generalBtnUnit"][href] {
		color: #fff;
		transition: color .18s ease-out, background .18s ease-out, border .18s ease-out, box-shadow .18s ease-out, opacity .18s ease-out;
	}*/
	
	/* -- req,res,lim,att,gMap -- */
	/* ベースカラー */
	.btn_req [class*="generalBtnUnit"] {	background: url("../images/share/bg_btn.jpg") no-repeat center center / 100% auto; }
	.btn_res [class*="generalBtnUnit"] {	background: #0f0; }
	.btn_lim [class*="generalBtnUnit"] {	background: #00f; }
	.btn_att [class*="generalBtnUnit"] {	background: #ff0; }
	.gMapLink [class*="generalBtnUnit"] {/*	background: #f0f; */}
	/* hover */
	@media (hover: hover) and (pointer: fine) {
			.btn_req [class*="generalBtnUnit"][href]:hover {	background-size: 130% auto;}
			.btn_res [class*="generalBtnUnit"][href]:hover {	color: #000; background: #cfc; }
			.btn_lim [class*="generalBtnUnit"][href]:hover {	color: #000; background: #ccf; }
			.btn_att [class*="generalBtnUnit"][href]:hover {	color: #000; background: #ffc; }
			.gMapLink [class*="generalBtnUnit"][href]:hover {/*	color: #000; background: #fcf; */}
	}
	.btn_req [class*="generalBtnUnit"][href]:focus-visible {	color: #000; background: #fcc; }
	.btn_res [class*="generalBtnUnit"][href]:focus-visible {	color: #000; background: #cfc; }
	.btn_lim [class*="generalBtnUnit"][href]:focus-visible {	color: #000; background: #ccf; }
	.btn_att [class*="generalBtnUnit"][href]:focus-visible {	color: #000; background: #ffc; }
	.gMapLink [class*="generalBtnUnit"][href]:focus-visible {/*	color: #000; background: #fcf; */}
	
	/* -- noticeBtn -- */
	.btn_touroku [class*="generalBtnUnit"] {
	}

@media screen and (max-width: 480px) {
	/*.btn_req [class*="generalBtnUnit"] .kochira,
	.btn_res [class*="generalBtnUnit"] .kochira,
	.btn_lim [class*="generalBtnUnit"] .kochira,
	.btn_att [class*="generalBtnUnit"] .kochira,
	.gMapLink [class*="generalBtnUnit"] .kochira {
		display: block;
	}*/
}


/* [data-buttonicon]												2022.09
---------------------------------------------------------------------------
- [generalBtnUnit]につけるのが前提だが、個別に親要素の設定をすれば汎用使用も可能。
- 「span.ico」タイプ
- 例：<a href="xxx" class="generalBtnUnit" data-buttonicon="bgico_arrow_M"><span class="label">XXX</span><span class="ico"></span></a>
------------------------------------------------------------------------ */

/* ボタンアイコン系の共通設定
---------------------------------------------------- */
	[data-buttonicon] {
		--default-dataButtonIcon-padding-lr: .25em + 5px;		/* ボタンアイコン系の共通の余白 */
	}
@media screen and (max-width: 736px) {
	[data-buttonicon] {
		--default-dataButtonIcon-padding-lr: .5em + 2px;
	}
}

/* simpleArrow_tri
-------------------------------------------------------
- 三角アイコン。ボタン右端に固定したarrow。
- カスタムデータ属性（^= と = の違いに注意。^=先頭の値）
- 例：<a href="xxx" class="generalBtnUnit" data-buttonicon="simpleArrow_tri01">三角__右向き</a>
- 例：<a href="xxx" class="generalBtnUnit" data-buttonicon="simpleArrow_tri01_b">三角__下向き</a>
---------------------------------------------------- */
	[data-buttonicon^="simpleArrow_tri"]::after {
		content: "";
		display: block;
		position: absolute;
		top: 0;
		bottom: 0;
		left: auto;
		right: 18px;
		width: 0;
		height: 0;
		margin: auto;
		border-style: solid;
		border-width: 8px 0 8px 7px;
		border-color: transparent transparent transparent #fff;
	}
	[data-buttonicon="simpleArrow_tri01_b"]::after {
		right: 14px;
		border-width: 7px 8px 0 8px;
		border-color: #fff transparent transparent transparent;
	}
	/* -- Individual -- */
	[class*="generalBtnUnit"][data-buttonicon^="simpleArrow_tri"] {
		padding-left:	calc(var(--default-dataButtonIcon-padding-lr) + 14px + (8px * 2));
		padding-right:	calc(var(--default-dataButtonIcon-padding-lr) + 14px + (8px * 2));
	}
	[class*="generalBtnUnit"].btnL[data-buttonicon^="simpleArrow_tri"] {
		padding-left:	calc(var(--default-dataButtonIcon-padding-lr) + 33px + (8px * 2));
		padding-right:	calc(var(--default-dataButtonIcon-padding-lr) + 33px + (8px * 2));
	}
	[class*="generalBtnUnit"].btnL[data-buttonicon^="simpleArrow_tri"]::after {
		right: 33px;
	}
	[class*="generalBtnUnit"].btnL[data-buttonicon="simpleArrow_tri01_b"]::after {
		right: 29px;
	}
	[class*="generalBtnUnit"].btnS[data-buttonicon^="simpleArrow_tri"]::after {
		border-width: 6px 0 6px 5px;
	}
	[class*="generalBtnUnit"].btnS[data-buttonicon="simpleArrow_tri01_b"]::after {
		border-width: 5px 6px 0 6px;
	}
@media screen and (max-width: 736px) {
	[class*="generalBtnUnit"][data-buttonicon^="simpleArrow_tri"],
	[class*="generalBtnUnit"].btnL[data-buttonicon^="simpleArrow_tri"] {
		padding-left:	calc(var(--default-dataButtonIcon-padding-lr) + 10px + (7px * 2));
		padding-right:	calc(var(--default-dataButtonIcon-padding-lr) + 10px + (7px * 2));
	}
	[data-buttonicon^="simpleArrow_tri"]::after,
	[class*="generalBtnUnit"].btnL[data-buttonicon^="simpleArrow_tri"]::after {
		right: 13px;
		border-width: 7px 0 7px 6px;
	}
	[data-buttonicon="simpleArrow_tri01_b"]::after,
	[class*="generalBtnUnit"].btnL[data-buttonicon="simpleArrow_tri01_b"]::after {
		right: 10px;
		border-width: 6px 7px 0 7px;
	}
}

/* simpleArrow_ku
-------------------------------------------------------
- くの字アイコン。ボタン右端に固定したarrow。
- カスタムデータ属性（^= と = の違いに注意。^=先頭の値）
- 例：<a href="xxx" class="generalBtnUnit" data-buttonicon="simpleArrow_ku">くの字__右向き</a>
- 例：<a href="xxx" class="generalBtnUnit" data-buttonicon="simpleArrow_ku_b">くの字__下向き</a>
---------------------------------------------------- */
	[data-buttonicon^="simpleArrow_ku"]::after {
		content: "";
		display: block;
		position: absolute;
		top: 0;
		bottom: 0;
		left: auto;
		right: 18px;
		width: 10px;
		height: 10px;
		margin: auto;
		border-style: solid;
		border-width: 0 1px 1px 0;
		border-color: #fff;
		transform: rotate(-45deg);
	}
	[data-buttonicon="simpleArrow_ku_b"]::after {
		transform: rotate(45deg);
	}
@media screen and (max-width: 736px) {
	[data-buttonicon^="simpleArrow_ku"]::after {
		right: 7px;
		width: 7px;
		height: 7px;
	}
}

/* simpleArrow_cir
-------------------------------------------------------
- 丸背景に[三角]または[くの字]アイコン。ボタン右端に固定したarrow。
- カスタムデータ属性（^= と = の違いに注意。^=先頭の値）
- 例：<a href="xxx" class="generalBtnUnit" data-buttonicon="simpleArrow_cir_tri">丸付き三角__右向き</a>
- 例：<a href="xxx" class="generalBtnUnit" data-buttonicon="simpleArrow_cir_ku">丸付きくの字__右向き</a>
---------------------------------------------------- */
	[data-buttonicon^="simpleArrow_cir"]::before,
	[data-buttonicon^="simpleArrow_cir"]::after {
		content: ""; display: block; position: absolute; top: 0; bottom: 0; left: 0; right: 0; margin: auto;
	}
	[data-buttonicon^="simpleArrow_cir"]::before {
		left: auto;
		right: 15px;
		width: 14px;
		height: 14px;
		border-radius: 50%;
		background: #fff;
	}
	[data-buttonicon="simpleArrow_cir_tri"]::after {
		left: auto;
		right: 15px; /*13px,21px*/
		width: 4px;
		height: 4px;
		border: 4px solid transparent;
		border-left: 4px solid #737070;
	}
	[data-buttonicon="simpleArrow_cir_ku"]::after {
		left: auto;
		right: 20px; /*18px,26px*/
		width: 6px;
		height: 6px;
		border: 1px solid #737070;
		border-width: 1px 1px 0 0;
		transform: rotate(45deg);
	}
	/* -- Individual -- */
	[class*="generalBtnUnit"][data-buttonicon^="simpleArrow_cir"] {		/* simpleArrow_tri と同じ値にしている（変更可） */
		padding-left:	calc(var(--default-dataButtonIcon-padding-lr) + 15px + 14px);
		padding-right:	calc(var(--default-dataButtonIcon-padding-lr) + 15px + 14px);
	}
	[class*="generalBtnUnit"].btnL[data-buttonicon^="simpleArrow_cir"] {	/* simpleArrow_tri と同じ値にしている（変更可） */
		padding-left:	calc(var(--default-dataButtonIcon-padding-lr) + 33px + (8px * 2));
		padding-right:	calc(var(--default-dataButtonIcon-padding-lr) + 33px + (8px * 2));
	}
	[class*="generalBtnUnit"].btnL[data-buttonicon^="simpleArrow_cir"]::before {
		right: 30px;
	}
	[class*="generalBtnUnit"].btnL[data-buttonicon="simpleArrow_cir_tri"]::after {
		right: 30px;
	}
	[class*="generalBtnUnit"].btnL[data-buttonicon="simpleArrow_cir_ku"]::after  {
		right: 35px;
	}
@media screen and (max-width: 736px) {
	[class*="generalBtnUnit"][data-buttonicon^="simpleArrow_cir"],
	[class*="generalBtnUnit"].btnL[data-buttonicon^="simpleArrow_cir"] {	/* simpleArrow_tri と同じ値にしている（変更可） */
		padding-left:	calc(var(--default-dataButtonIcon-padding-lr) + 10px + (7px * 2));
		padding-right:	calc(var(--default-dataButtonIcon-padding-lr) + 10px + (7px * 2));
	}
	[data-buttonicon^="simpleArrow_cir"]::before,
	[class*="generalBtnUnit"].btnL[data-buttonicon^="simpleArrow_cir"]::before {
		right: 10px;
	}
	[data-buttonicon="simpleArrow_cir_tri"]::after,
	[class*="generalBtnUnit"].btnL[data-buttonicon="simpleArrow_cir_tri"]::after {
		right: 10px;
	}
	[data-buttonicon="simpleArrow_cir_ku"]::after,
	[class*="generalBtnUnit"].btnL[data-buttonicon="simpleArrow_cir_ku"]::after  {
		right: 15px;
	}
}

/* ico_plus
-------------------------------------------------------
- 背景画像の矢印アイコン。ボタン右端に固定した＋アイコン。
- setting.jsの「slideToggleFocus」と連携(.active)。
- カスタムデータ属性（^= と = の違いに注意。^=先頭の値）
- 例：<button type="button" class="generalBtnUnit js_slideToggleFocusBtn" aria-controls="xxx" data-buttonicon="ico_plus"><span class="label" data-button-text-show="開く" data-button-text-hide="閉じる">開く</span><span class="ico"></span></button>
---------------------------------------------------- */
	[data-buttonicon^="ico_plus"] {
		--default-dataButtonIcon-icoPlus_-right:			20px;	/* 右端からの距離（初期値） */
		--default-dataButtonIcon-icoPlus_-width:			15px;	/* アイコン幅（初期値） */
		--default-dataButtonIcon-icoPlus_-height:			var(--default-dataButtonIcon-icoPlus_-width); /* アイコン高さ（初期値はアイコン幅と同じ） */
		--default-dataButtonIcon-icoPlus_-padding-adjust:	0px;	/* 微調整 */
	}
	[class*="generalBtnUnit"][data-buttonicon^="ico_plus"] {		/* calc(文字からアイコンまでの余白 + 右端からの距離 + アイコン幅 + 微調整); */
		padding-left:	calc(var(--default-dataButtonIcon-padding-lr) + var(--default-dataButtonIcon-icoPlus_-right) + var(--default-dataButtonIcon-icoPlus_-width) + var(--default-dataButtonIcon-icoPlus_-padding-adjust));
		padding-right:	calc(var(--default-dataButtonIcon-padding-lr) + var(--default-dataButtonIcon-icoPlus_-right) + var(--default-dataButtonIcon-icoPlus_-width) + var(--default-dataButtonIcon-icoPlus_-padding-adjust));
	}
	[data-buttonicon^="ico_plus"] .ico {
		display: block;
		position: absolute;
		top: 0;
		bottom: 0;
		left: auto;
		right: var(--default-dataButtonIcon-icoPlus_-right);
		width: var(--default-dataButtonIcon-icoPlus_-width);
		height: var(--default-dataButtonIcon-icoPlus_-height);
		margin: auto;
		opacity: .89;
	}
	[data-buttonicon^="ico_plus"] .ico::before,
	[data-buttonicon^="ico_plus"] .ico::after {
		content: "";
		display: block;
		position: absolute; top: calc(50% - .5px); left: 0;
		width: 100%;
		height: 1px;
		background: currentColor;
	}
	[data-buttonicon^="ico_plus"] .ico::after {
		transform: rotate(90deg);
		transition: all .3s ease-out;
	}
	.active[data-buttonicon^="ico_plus"] .ico::after {
		transform: scale(.01) rotate(90deg);
	}
@media screen and (max-width: 736px) {
	[data-buttonicon^="ico_plus"] {
		--default-dataButtonIcon-icoPlus_-right:			16px;
		--default-dataButtonIcon-icoPlus_-width:			13px;
	}
}
@media screen and (max-width: 480px) {
	[data-buttonicon^="ico_plus"] {
		--default-dataButtonIcon-icoPlus_-right:			12px;
		--default-dataButtonIcon-icoPlus_-width:			11px;
	}
}

/* bgico_
-------------------------------------------------------
- 背景画像の矢印アイコン。ボタン右端に固定したarrow。
- カスタムデータ属性（^= と = の違いに注意。^=先頭の値）
- 例：<a href="xxx" class="generalBtnUnit" data-buttonicon="bgico_arrow_M"><span class="label">XXX</span><span class="ico"></span></a>
- 例：<a href="xxx" class="generalBtnUnit" data-buttonicon="bgico_circleArrow_M"><span class="label">XXX</span><span class="ico"></span></a>
- 例：<a href="xxx" class="generalBtnUnit btnS" data-buttonicon="bgico_returnArrow"><span class="label">プラン一覧に戻る</span><span class="ico"></span></a>
---------------------------------------------------- */
	[data-buttonicon^="bgico_"] {
		--default-dataButtonIcon-bgico_-right:			14px;	/* 右端からの距離（初期値） */
		--default-dataButtonIcon-bgico_-width:			20px;	/* アイコン幅（初期値） */
		--default-dataButtonIcon-bgico_-height:			var(--default-dataButtonIcon-bgico_-width); /* アイコン高さ（初期値はアイコン幅と同じ） */
		--default-dataButtonIcon-bgico_-padding-adjust:	5px;	/* 微調整 */
	}
	[data-buttonicon^="bgico_"] span.ico {
		display: block;
		position: absolute;
		top: 0;
		bottom: 0;
		left: auto;
		right: var(--default-dataButtonIcon-bgico_-right);
		width: var(--default-dataButtonIcon-bgico_-width);
		height: var(--default-dataButtonIcon-bgico_-height);
		background: center center / contain no-repeat;
		margin: auto;
	}
	[data-buttonicon^="bgico_"] {		/* calc(文字からアイコンまでの余白 + 右端からの距離 + アイコン幅 + 微調整); */
		padding-left:	calc(var(--default-dataButtonIcon-padding-lr) + var(--default-dataButtonIcon-bgico_-right) + var(--default-dataButtonIcon-bgico_-width) + var(--default-dataButtonIcon-bgico_-padding-adjust));
		padding-right:	calc(var(--default-dataButtonIcon-padding-lr) + var(--default-dataButtonIcon-bgico_-right) + var(--default-dataButtonIcon-bgico_-width) + var(--default-dataButtonIcon-bgico_-padding-adjust));
	}
	
	/* -- Individual -- */
	[data-buttonicon="bgico_arrow_M"] {
		--default-dataButtonIcon-bgico_-right:			10px;
		--default-dataButtonIcon-bgico_-width:			16px;
	}
	[data-buttonicon="bgico_circleArrow_M"] {
		--default-dataButtonIcon-bgico_-right:			14px;
		--default-dataButtonIcon-bgico_-width:			19.7px;
	}
	[data-buttonicon="bgico_circleArrow_L"] {
		--default-dataButtonIcon-bgico_-right:			14px;
		--default-dataButtonIcon-bgico_-width:			23px;
	}
	[data-buttonicon="bgico_returnArrow"] {
		--default-dataButtonIcon-bgico_-right:			12px;
		--default-dataButtonIcon-bgico_-width:			23px;
		--default-dataButtonIcon-bgico_-height:			17.8618px;
	}
	
	[data-buttonicon="bgico_arrow_M"] span.ico {
		background-image: url("../images/share/ico_arr_r_gr.svg");
	}
	[data-buttonicon="bgico_arrow_M"] span.ico.wh {
		background-image: url("../images/share/ico_arr_r_wh.svg");
	}
	[data-buttonicon*="bgico_circleArrow_"] span.ico {
		background: url("../images/share/ico_arr_r_gr.svg") 55% center / auto 50% no-repeat;
		border: 1px solid #ccc;
		border-radius: 100%;
	}
	[data-buttonicon="bgico_returnArrow"] span.ico {
		background-image: url("../images/share/ico_arr_return.svg");
	}
	
@media screen and (max-width: 736px) {
	[data-buttonicon^="bgico_"] {
		--default-dataButtonIcon-bgico_-padding-adjust:	2px;
	}
	[data-buttonicon="bgico_circleArrow_M"] {
		--default-dataButtonIcon-bgico_-right:			11px;
		--default-dataButtonIcon-bgico_-width:			16px;
	}
	[data-buttonicon="bgico_circleArrow_L"] {
		--default-dataButtonIcon-bgico_-right:			11px;
		--default-dataButtonIcon-bgico_-width:			19px;
	}
	[data-buttonicon="bgico_returnArrow"] {
		--default-dataButtonIcon-bgico_-right:			11px;
		--default-dataButtonIcon-bgico_-width:			20px;
		--default-dataButtonIcon-bgico_-height:			15px;
	}
	
	[data-buttonicon*="bgico_circleArrow_"] span.ico {
		border-width: .8px;
	}
}
@media screen and (max-width: 480px) {
	[data-buttonicon="bgico_circleArrow_M"],
	[data-buttonicon="bgico_circleArrow_L"],
	[data-buttonicon="bgico_returnArrow"] {
		--default-dataButtonIcon-bgico_-right:			8px;
	}
}


/* M_shinyEffect 													2022.09
---------------------------------------------------------------------------
- 光が走るエフェクト
- 横長コンテンツ専用（横長～正方形まで）（※縦長コンテンツは[padding-top:calc(長辺/短辺*100%);]で個々に設定）
- 親要素に position:relative; 必須。
---------------------------------------------------------------------------
a.generalBtnUnit>(span.label{xxx}+span.M_shinyEffect_toRight)
a.generalBtnUnit[data-m-shinyeffect="toRight__after"]>(span.label{xxx})
------------------------------------------------------------------------ */
	.M_shinyEffect_toRight {
		display: block;
		position: absolute;
		inset: 0;
		z-index: 0;
		overflow: hidden;
		background: transparent;
		pointer-events: none;
	}
	[data-m-shinyeffect] {
		position: relative;
		overflow: hidden;
	}
	.M_shinyEffect_toRight::before,
	[data-m-shinyeffect="toRight__before"]::before,
	[data-m-shinyeffect="toRight__after"]::after {
		content: "";
		position: absolute;
		inset: 0;
		z-index: 0;
		height: 0;
		width: 100%;
		padding-top: 100%;
		background: rgba(255, 255, 255, .7);
		transform: translate(-100%, -100%) rotate(-45deg) scale(1);
		transform-origin: center center;
		animation: 4.5s ease-out infinite ANIME-M_shinyEffect_toRight;
		pointer-events: none;
	}
@keyframes ANIME-M_shinyEffect_toRight {
	0% {		transform: translate(-100%, -100%) rotate(-45deg) scale(1); opacity: 1;}
	15% {		transform: translate(-100%, -100%) rotate(-45deg) scale(4);}
	30%, 100% {	transform: translate(-100%, -100%) rotate(-45deg) scale(4); opacity: 0;}
}


/* generalColBox													2022.09
---------------------------------------------------------------------------
- シンプルver
- 子要素の上左右にマージンを設定。親ボックスで上左右のマージン相殺
- .wrapper に overflow:hidden; が入っているため、ここでoverflowは設定していない
- カスタムデータ属性（~=スペース区切り毎の正確な値）
- 各ページ用CSSで、ユニーククラスに対してであればカスタムプロパティの値を変更可
	- × .generalColBox {		--default-generalColBox-margin-t: 30px;}
	- ○ .generalColBox.xxxBox {	--default-generalColBox-margin-t: 30px;}
	- ○ .xxxBox {				--default-generalColBox-margin-t: 30px;}
---------------------------------------------------------------------------
div.generalColBox[data-colbox-size="maxCol3 toCol1_SP"]>(div.xxx{xxx})*3
------------------------------------------------------------------------ */
	.generalColBox {
		--default-generalColBox-margin-t:	15px;
		--default-generalColBox-margin-lr:	10px;
		display: flex;
		flex-wrap: wrap;
		margin-top:		calc(var(--default-generalColBox-margin-t) * -2);
		margin-left:	calc(var(--default-generalColBox-margin-lr) * -1);
		margin-right:	calc(var(--default-generalColBox-margin-lr) * -1);
	}
	.generalColBox.sMargin {
		--default-generalColBox-margin-t:	10px;
		--default-generalColBox-margin-lr:	1px;
	}
	.generalColBox > * {
		margin-top:		calc(var(--default-generalColBox-margin-t) * 2);
		margin-left:	var(--default-generalColBox-margin-lr);
		margin-right:	var(--default-generalColBox-margin-lr);
	}
	[data-colbox-size~="maxCol1"] > * {		width: calc(100% - (var(--default-generalColBox-margin-lr) * 2));}
	[data-colbox-size~="maxCol2"] > * {		width: calc(50% - (var(--default-generalColBox-margin-lr) * 2));}
	[data-colbox-size~="maxCol3"] > * {		width: calc(33.333% - (var(--default-generalColBox-margin-lr) * 2));}
	[data-colbox-size~="maxCol4"] > * {		width: calc(25% - (var(--default-generalColBox-margin-lr) * 2));}
@media screen and (max-width: 1200px) {
	[data-colbox-size~="toCol1_TB"] > * {	width: calc(100% - (var(--default-generalColBox-margin-lr) * 2));}
	[data-colbox-size~="toCol2_TB"] > * {	width: calc(50% - (var(--default-generalColBox-margin-lr) * 2));}
	[data-colbox-size~="toCol3_TB"] > * {	width: calc(33.333% - (var(--default-generalColBox-margin-lr) * 2));}
	[data-colbox-size~="toCol4_TB"] > * {	width: calc(25% - (var(--default-generalColBox-margin-lr) * 2));}
}
@media screen and (max-width: 1050px) {
	[data-colbox-size~="toCol1_TBs"] > * {	width: calc(100% - (var(--default-generalColBox-margin-lr) * 2));}
	[data-colbox-size~="toCol2_TBs"] > * {	width: calc(50% - (var(--default-generalColBox-margin-lr) * 2));}
	[data-colbox-size~="toCol3_TBs"] > * {	width: calc(33.333% - (var(--default-generalColBox-margin-lr) * 2));}
	[data-colbox-size~="toCol4_TBs"] > * {	width: calc(25% - (var(--default-generalColBox-margin-lr) * 2));}
}
@media screen and (max-width: 736px) {
	[data-colbox-size~="toCol1_SP"] > * {	width: calc(100% - (var(--default-generalColBox-margin-lr) * 2));}
	[data-colbox-size~="toCol2_SP"] > * {	width: calc(50% - (var(--default-generalColBox-margin-lr) * 2));}
	[data-colbox-size~="toCol3_SP"] > * {	width: calc(33.333% - (var(--default-generalColBox-margin-lr) * 2));}
	[data-colbox-size~="toCol4_SP"] > * {	width: calc(25% - (var(--default-generalColBox-margin-lr) * 2));}
}
@media screen and (max-width: 480px) {
	[data-colbox-size~="toCol1_SPs"] > * {	width: calc(100% - (var(--default-generalColBox-margin-lr) * 2));}
	[data-colbox-size~="toCol2_SPs"] > * {	width: calc(50% - (var(--default-generalColBox-margin-lr) * 2));}
	[data-colbox-size~="toCol3_SPs"] > * {	width: calc(33.333% - (var(--default-generalColBox-margin-lr) * 2));}
	[data-colbox-size~="toCol4_SPs"] > * {	width: calc(25% - (var(--default-generalColBox-margin-lr) * 2));}
}


/* js_swipeMe
---------------------------------------------------------------------------
- スワイプを促すアイコンを表示させる。
---------------------------------------------------------------------------
- (JS)		setting.jsの「js_swipeMe」と連携
- (HTML)	スクロールしたい要素の親に「(div).js_swipeMe」を指定する。「.js_swipeMe[data-js_swipeme-maxwidth="000"]」でメディアクエリの値も設定可能（000＝単位なし数値）
- (CSS)		[data-js_swipeme-maxwidth]を設定しない場合は、各ページCSS内の必要なタイミングで設定する（下記参考に。メディアクエリは自由）
---------------------------------------------------------------------------
div.xxx>div.js_swipeMe[data-js_swipeme-maxwidth="000"](>div.yyyPicBox>img)+small.bltr.mt05em
---------------------------------------------------------------------------
// -------------
	スワイプ
-------------- //
@media screen and (max-width: 736px) {
	.xxx .js_swipeMeIcon,
	.xxx .js_swipeMeInnerBoxOverlay { display: block;}
	.xxx .js_swipeMeInnerBox { overflow-x: scroll;}
	.xxx .js_swipeMeInnerBox img {max-width: none; padding: 7px;}
	.xxx .js_swipeMeInnerBoxOverlay,
	.xxx .js_swipeMeInnerBox img {width: 160%;}
}
@media screen and (max-width: 480px) {
	.xxx .js_swipeMeInnerBoxOverlay,
	.xxx .js_swipeMeInnerBox img { width: 180%;}
}
------------------------------------------------------------------------ */
	.js_swipeMe {
		position: relative;
		z-index: 0;
	}
	.js_swipeMeIcon { /* ※各ページCSS内のタイミングで block にする */
		display: none; position: absolute; top: 0; bottom: 0; left: 0; right: 0; z-index: 1;
		width: 60px;
		height: 60px;
		margin: auto;
		background: url("../images/share/ico_swipe.svg") 50% center / contain no-repeat;
		animation: 1.1s ease-in-out .2s infinite alternate both js_swipeMeIcon_motion;
	}
	.js_swipeMeInnerBox {
		display: block;
		position: relative;
		width: 100%;
		-webkit-overflow-scrolling: touch;
	}
	.js_swipeMeInnerBoxOverlay { /* ※各ページCSS内のタイミングで block にする */
		display: none; position: absolute; top: 0; left: 0; width: 100%; height: 100%;
		background: rgba(0, 0, 0, .35);
	}
	/* [data-js_swipeme-maxwidth]でメディアクエリを設定した場合の初期値 */
	.js_swipeMe_active .js_swipeMeIcon,
	.js_swipeMe_active .js_swipeMeInnerBoxOverlay { display: block;}
	.js_swipeMe_active .js_swipeMeInnerBox { overflow-x: scroll;}
	.js_swipeMe_active .js_swipeMeInnerBox img {max-width: none;}
	.js_swipeMe_active .js_swipeMeInnerBoxOverlay,
	.js_swipeMe_active .js_swipeMeInnerBox img {width: 200%;}
/* =================================
	@KEYFRAMES
================================= */
@keyframes js_swipeMeIcon_motion {
	0% {	transform: translateX(-20px);}
	100% {	transform: translateX(20px);}
}


/* simpleShowTarget_v3 | setting.js									2022.10
---------------------------------------------------------------------------
div[data-js_show_target="blur"]
div[data-js_show_target_suite="blur"]>div[data-js_show_target_suite_descendant="000ms"]
---------------------------------------------------------------------------
- 対象要素とビューポートが交差したら(=要素が画面に入ったら)関数を実行する（≒inview）
	- 動作例：
	- <div data-js_show_target="blur"> → <div data-js_show_target="blur" data-js_show_target-passed="blur">
- カスタムデータ属性（^= と = の違いに注意。^=先頭の値）
---------------------------------------------------------------------------
- 「単独設定（通常通り）」と「一揃い（スイート）」の2種類を用意。
	- 「単独設定」はターゲット（[data-js_show_target]を設定した要素）自身がアニメーションする。
	- 「一揃い」はターゲット（[data-js_show_target_suite]を設定した要素）の“子孫要素”がアニメーションする。
		- 子孫要素のdata属性の値でディレイ秒数を設定できる。設定したくない場合は値を空にする。（[data-js_show_target_suite_descendant="300ms"] ＝ 300ミリ秒遅延）
---------------------------------------------------------------------------
- 2022.04	開始時の opacity を0より少し高くすることでスクロールを促す（但しChromeはバグがあるため0とする。※CSSハック）
------------------------------------------------------------------------ */
@media screen {
	/* ----------------------------------------------------
		共通設定
	---------------------------------------------------- */
	/* 開始時、初期値 ========== */
	[data-js_show_target],
	[data-js_show_target_suite_descendant] {
		--default-jsShowTarget-transition-opacity:		opacity 1500ms ease-out 300ms;
		--default-jsShowTarget-transition-translate:	transform 1250ms ease-out 100ms;
		--default-jsShowTarget-transition-blur:			filter 1000ms ease-out 200ms;
		opacity: .05;
	}
	_:lang(x)::-internal-media-controls-overlay-cast-button, /* CSSハック */
	[data-js_show_target],
	[data-js_show_target_suite_descendant] {	/* for Chrome. | Chromeでは「transform + opacity」で「transition (animation) のフェードイン」をするときに、「開始時の opacity が 0 以外」では正しくフェードしないバグがある模様。 */
		opacity: 0;
	}
	/* 終了時 ================== */
	[data-js_show_target-passed],
	[data-js_show_target_suite-passed] :where([data-js_show_target_suite_descendant]) {
		opacity: 1;
	}
	/* ----------------------------------------------------
		単独設定（通常）
	-------------------------------------------------------
	フェードイン、上へスライド、ブラー、
	ストレッチレフト、ストレッチライト
	---------------------------------------------------- */
	[data-js_show_target="fadeIn"] {				transition: var(--default-jsShowTarget-transition-opacity);}

	[data-js_show_target="fadeIn_slowly"] {			transition: opacity 2500ms ease-out 100ms;}

	[data-js_show_target^="toTop"] {				transition: var(--default-jsShowTarget-transition-opacity), var(--default-jsShowTarget-transition-translate);}
	[data-js_show_target="toTop20"] {				transform: translateY(20px);}
	[data-js_show_target="toTop30"] {				transform: translateY(30px);}
	[data-js_show_target="toTop40"] {				transform: translateY(40px);}
	[data-js_show_target-passed^="toTop"] {			transform: translateY(0);}

	[data-js_show_target="blur"] {					opacity: .7; filter: blur(6px); transition: var(--default-jsShowTarget-transition-opacity), var(--default-jsShowTarget-transition-blur);}
	[data-js_show_target-passed="blur"] {			opacity: 1; filter: blur(0);}

	[data-js_show_target="blur_slowly"] {			opacity: .7; filter: blur(6px); transition: var(--default-jsShowTarget-transition-opacity), filter 2000ms ease-out 600ms;}
	[data-js_show_target-passed="blur_slowly"] {	opacity: 1; filter: blur(0);}

	[data-js_show_target="fadeInStretchLeft"],
	[data-js_show_target="fadeInStretchRight"] {		opacity: 0; transition: opacity 500ms, clip-path 1000ms; transition-delay: 30ms; transition-timing-function: var(--default-easing-easeInOutCubic, ease-in-out);}
	[data-js_show_target="fadeInStretchLeft"] {			clip-path: inset(0 100% 0 0);}
	[data-js_show_target="fadeInStretchRight"] {		clip-path: inset(0 0 0 100%);}
	[data-js_show_target-passed="fadeInStretchLeft"],
	[data-js_show_target-passed="fadeInStretchRight"] {opacity: 1; clip-path: inset(0 0 0 0);}

	[data-js_show_target="fadeInStretchTop"],
	[data-js_show_target="fadeInStretchBottom"] {		opacity: 0; transition: opacity 500ms, clip-path 1000ms; transition-delay: 100ms; transition-timing-function: var(--default-easing-easeInOutCubic, ease-in-out);}
	[data-js_show_target="fadeInStretchTop"] {			clip-path: inset(100% 0 0 0);}
	[data-js_show_target="fadeInStretchBottom"] {		clip-path: inset(0 0 100% 0);}
	[data-js_show_target-passed="fadeInStretchTop"],
	[data-js_show_target-passed="fadeInStretchBottom"] {opacity: 1; clip-path: inset(0 0 0 0);}
	/* ----------------------------------------------------
		一揃い(suite) | 子孫要素にスタイルを設定する
	-------------------------------------------------------
	フェードイン、上へスライド
	---------------------------------------------------- */
	[data-js_show_target_suite="fadeIn"] :where([data-js_show_target_suite_descendant]) {			transition: var(--default-jsShowTarget-transition-opacity);}

	[data-js_show_target_suite="fadeIn_slowly"] :where([data-js_show_target_suite_descendant]) {	transition: opacity 2500ms ease-out 100ms;}

	[data-js_show_target_suite^="toTop"] :where([data-js_show_target_suite_descendant]) {			transition: var(--default-jsShowTarget-transition-opacity), var(--default-jsShowTarget-transition-translate);}
	[data-js_show_target_suite="toTop20"] :where([data-js_show_target_suite_descendant]) {			transform: translateY(20px);}
	[data-js_show_target_suite="toTop30"] :where([data-js_show_target_suite_descendant]) {			transform: translateY(30px);}
	[data-js_show_target_suite="toTop40"] :where([data-js_show_target_suite_descendant]) {			transform: translateY(40px);}
	[data-js_show_target_suite-passed^="toTop"] :where([data-js_show_target_suite_descendant]) {	transform: translateY(0);}

	[data-js_show_target_suite="fadeInStretchLeft"] :where([data-js_show_target_suite_descendant]) ,
	[data-js_show_target_suite="fadeInStretchRight"] :where([data-js_show_target_suite_descendant])  {		opacity: 0; transition: opacity 500ms, clip-path 1000ms; transition-delay: 100ms; transition-timing-function: var(--default-easing-easeInOutCubic, ease-in-out);}
	[data-js_show_target_suite="fadeInStretchLeft"] :where([data-js_show_target_suite_descendant])  {		clip-path: inset(0 100% 0 0);}
	[data-js_show_target_suite="fadeInStretchRight"] :where([data-js_show_target_suite_descendant])  {		clip-path: inset(0 0 0 100%);}
	[data-js_show_target_suite-passed="fadeInStretchLeft"] :where([data-js_show_target_suite_descendant]) ,
	[data-js_show_target_suite-passed="fadeInStretchRight"] :where([data-js_show_target_suite_descendant])  {opacity: 1; clip-path: inset(0 0 0 0);}

	[data-js_show_target_suite="fadeInStretchTop"] :where([data-js_show_target_suite_descendant]) ,
	[data-js_show_target_suite="fadeInStretchBottom"] :where([data-js_show_target_suite_descendant])  {		opacity: 0; transition: opacity 500ms, clip-path 1000ms; transition-delay: 100ms; transition-timing-function: var(--default-easing-easeInOutCubic, ease-in-out);}
	[data-js_show_target_suite="fadeInStretchTop"] :where([data-js_show_target_suite_descendant])  {		clip-path: inset(100% 0 0 0);}
	[data-js_show_target_suite="fadeInStretchBottom"] :where([data-js_show_target_suite_descendant])  {		clip-path: inset(0 0 100% 0);}
	[data-js_show_target_suite-passed="fadeInStretchTop"] :where([data-js_show_target_suite_descendant]) ,
	[data-js_show_target_suite-passed="fadeInStretchBottom"] :where([data-js_show_target_suite_descendant])  {opacity: 1; clip-path: inset(0 0 0 0);}

}


/* ============================================================================
	etc
============================================================================ */
.clearfix::after {content:"";display:block;clear:both;}
.clear{clear:both !important;}
.dispNone{display:none;}
.dispNoneImp{display:none!important;}
.dispInline{display:inline;}
.inbl{display:inline-block;}
.bl{display:block;}
.bltc{display:block;text-align:center;}
.blImp{display:block !important;}
.noWrap{white-space:nowrap;}
.tj{text-align:justify !important;text-justify:inter-ideograph !important;/* for IE */}.tj *{display:inline !important;}
.tc{text-align:center !important}.tl{text-align:left !important}.tr{text-align:right !important}
.fl{float:left !important}.fr{float:right !important}.fn{float:none !important}
/* letterSpacing */
.lettsp0	{letter-spacing: 0 !important;}
.lettsp002	{letter-spacing: .02em !important;}
.lettsp003	{letter-spacing: .03em !important;}
.lettsp005	{letter-spacing: .05em !important;}
.lettsp007	{letter-spacing: .07em !important;}
.lettsp01	{letter-spacing: .1em !important;}
.lettsp015	{letter-spacing: .15em !important;}
.lettsp02	{letter-spacing: .2em !important;}
/* margin, padding | Legacy */
.mt005em{margin-top: .05em!important}	.mr005em{margin-right: .05em!important}		.mb005em{margin-bottom: .05em!important}	.ml005em{margin-left: .05em!important}			.pt005em{padding-top: .05em!important}	.pr005em{padding-right: .05em!important}	.pb005em{padding-bottom: .05em!important}	.pl005em{padding-left: .05em!important}
.mt01em	{margin-top: .1em!important}	.mr01em	{margin-right: .1em!important}		.mb01em	{margin-bottom: .1em!important}		.ml01em	{margin-left: .1em!important}			.pt01em	{padding-top: .1em!important}	.pr01em	{padding-right: .1em!important}		.pb01em	{padding-bottom: .1em!important}	.pl01em	{padding-left: .1em!important}
.mt02em	{margin-top: .2em!important}	.mr02em	{margin-right: .2em!important}		.mb02em	{margin-bottom: .2em!important}		.ml02em	{margin-left: .2em!important}			.pt02em	{padding-top: .2em!important}	.pr02em	{padding-right: .2em!important}		.pb02em	{padding-bottom: .2em!important}	.pl02em	{padding-left: .2em!important}
.mt03em	{margin-top: .3em!important}	.mr03em	{margin-right: .3em!important}		.mb03em	{margin-bottom: .3em!important}		.ml03em	{margin-left: .3em!important}			.pt03em	{padding-top: .3em!important}	.pr03em	{padding-right: .3em!important}		.pb03em	{padding-bottom: .3em!important}	.pl03em	{padding-left: .3em!important}
.mt04em	{margin-top: .4em!important}	.mr04em	{margin-right: .4em!important}		.mb04em	{margin-bottom: .4em!important}		.ml04em	{margin-left: .4em!important}			.pt04em	{padding-top: .4em!important}	.pr04em	{padding-right: .4em!important}		.pb04em	{padding-bottom: .4em!important}	.pl04em	{padding-left: .4em!important}
.mt05em	{margin-top: .5em!important}	.mr05em	{margin-right: .5em!important}		.mb05em	{margin-bottom: .5em!important}		.ml05em	{margin-left: .5em!important}			.pt05em	{padding-top: .5em!important}	.pr05em	{padding-right: .5em!important}		.pb05em	{padding-bottom: .5em!important}	.pl05em	{padding-left: .5em!important}
.mt06em	{margin-top: .6em!important}	.mr06em	{margin-right: .6em!important}		.mb06em	{margin-bottom: .6em!important}		.ml06em	{margin-left: .6em!important}			.pt06em	{padding-top: .6em!important}	.pr06em	{padding-right: .6em!important}		.pb06em	{padding-bottom: .6em!important}	.pl06em	{padding-left: .6em!important}
.mt07em	{margin-top: .7em!important}	.mr07em	{margin-right: .7em!important}		.mb07em	{margin-bottom: .7em!important}		.ml07em	{margin-left: .7em!important}			.pt07em	{padding-top: .7em!important}	.pr07em	{padding-right: .7em!important}		.pb07em	{padding-bottom: .7em!important}	.pl07em	{padding-left: .7em!important}
.mt08em	{margin-top: .8em!important}	.mr08em	{margin-right: .8em!important}		.mb08em	{margin-bottom: .8em!important}		.ml08em	{margin-left: .8em!important}			.pt08em	{padding-top: .8em!important}	.pr08em	{padding-right: .8em!important}		.pb08em	{padding-bottom: .8em!important}	.pl08em	{padding-left: .8em!important}
.mt09em	{margin-top: .9em!important}	.mr09em	{margin-right: .9em!important}		.mb09em	{margin-bottom: .9em!important}		.ml09em	{margin-left: .9em!important}			.pt09em	{padding-top: .9em!important}	.pr09em	{padding-right: .9em!important}		.pb09em	{padding-bottom: .9em!important}	.pl09em	{padding-left: .9em!important}
.mt1em	{margin-top: 1em!important}		.mr1em	{margin-right: 1em!important}		.mb1em	{margin-bottom: 1em!important}		.ml1em	{margin-left: 1em!important}			.pt1em	{padding-top: 1em!important}	.pr1em	{padding-right: 1em!important}		.pb1em	{padding-bottom: 1em!important}		.pl1em	{padding-left: 1em!important}
.mt1_5em{margin-top: 1.5em!important}	.mr1_5em{margin-right: 1.5em!important}		.mb1_5em{margin-bottom: 1.5em!important}	.ml1_5em{margin-left: 1.5em!important}			.pt1_5em{padding-top: 1.5em!important}	.pr1_5em{padding-right: 1.5em!important}	.pb1_5em{padding-bottom: 1.5em!important}	.pl1_5em{padding-left: 1.5em!important}
.mt2em	{margin-top: 2em!important}		.mr2em	{margin-right: 2em!important}		.mb2em	{margin-bottom: 2em!important}		.ml2em	{margin-left: 2em!important}			.pt2em	{padding-top: 2em!important}	.pr2em	{padding-right: 2em!important}		.pb2em	{padding-bottom: 2em!important}		.pl2em	{padding-left: 2em!important}
.mt2_5em{margin-top: 2.5em!important}	.mr2_5em{margin-right: 2.5em!important}		.mb2_5em{margin-bottom: 2.5em!important}	.ml2_5em{margin-left: 2.5em!important}			.pt2_5em{padding-top: 2.5em!important}	.pr2_5em{padding-right: 2.5em!important}	.pb2_5em{padding-bottom: 2.5em!important}	.pl2_5em{padding-left: 2.5em!important}
.mt3em	{margin-top: 3em!important}		.mr3em	{margin-right: 3em!important}		.mb3em	{margin-bottom: 3em!important}		.ml3em	{margin-left: 3em!important}			.pt3em	{padding-top: 3em!important}	.pr3em	{padding-right: 3em!important}		.pb3em	{padding-bottom: 3em!important}		.pl3em	{padding-left: 3em!important}
.mt3_5em{margin-top: 3.5em!important}	.mr3_5em{margin-right: 3.5em!important}		.mb3_5em{margin-bottom: 3.5em!important}	.ml3_5em{margin-left: 3.5em!important}			.pt3_5em{padding-top: 3.5em!important}	.pr3_5em{padding-right: 3.5em!important}	.pb3_5em{padding-bottom: 3.5em!important}	.pl3_5em{padding-left: 3.5em!important}
.mt4em	{margin-top: 4em!important}		.mr4em	{margin-right: 4em!important}		.mb4em	{margin-bottom: 4em!important}		.ml4em	{margin-left: 4em!important}			.pt4em	{padding-top: 4em!important}	.pr4em	{padding-right: 4em!important}		.pb4em	{padding-bottom: 4em!important}		.pl4em	{padding-left: 4em!important}
.mt4_5em{margin-top: 4.5em!important}	.mr4_5em{margin-right: 4.5em!important}		.mb4_5em{margin-bottom: 4.5em!important}	.ml4_5em{margin-left: 4.5em!important}			.pt4_5em{padding-top: 4.5em!important}	.pr4_5em{padding-right: 4.5em!important}	.pb4_5em{padding-bottom: 4.5em!important}	.pl4_5em{padding-left: 4.5em!important}
.mt5em	{margin-top: 5em!important}		.mr5em	{margin-right: 5em!important}		.mb5em	{margin-bottom: 5em!important}		.ml5em	{margin-left: 5em!important}			.pt5em	{padding-top: 5em!important}	.pr5em	{padding-right: 5em!important}		.pb5em	{padding-bottom: 5em!important}		.pl5em	{padding-left: 5em!important}
.mt5_5em{margin-top: 5.5em!important}	.mr5_5em{margin-right: 5.5em!important}		.mb5_5em{margin-bottom: 5.5em!important}	.ml5_5em{margin-left: 5.5em!important}			.pt5_5em{padding-top: 5.5em!important}	.pr5_5em{padding-right: 5.5em!important}	.pb5_5em{padding-bottom: 5.5em!important}	.pl5_5em{padding-left: 5.5em!important}
.mt6em	{margin-top: 6em!important}		.mr6em	{margin-right: 6em!important}		.mb6em	{margin-bottom: 6em!important}		.ml6em	{margin-left: 6em!important}			.pt6em	{padding-top: 6em!important}	.pr6em	{padding-right: 6em!important}		.pb6em	{padding-bottom: 6em!important}		.pl6em	{padding-left: 6em!important}
.mt6_5em{margin-top: 6.5em!important}	.mr6_5em{margin-right: 6.5em!important}		.mb6_5em{margin-bottom: 6.5em!important}	.ml6_5em{margin-left: 6.5em!important}			.pt6_5em{padding-top: 6.5em!important}	.pr6_5em{padding-right: 6.5em!important}	.pb6_5em{padding-bottom: 6.5em!important}	.pl6_5em{padding-left: 6.5em!important}
.mt7em	{margin-top: 7em!important}		.mr7em	{margin-right: 7em!important}		.mb7em	{margin-bottom: 7em!important}		.ml7em	{margin-left: 7em!important}			.pt7em	{padding-top: 7em!important}	.pr7em	{padding-right: 7em!important}		.pb7em	{padding-bottom: 7em!important}		.pl7em	{padding-left: 7em!important}
.mt7_5em{margin-top: 7.5em!important}	.mr7_5em{margin-right: 7.5em!important}		.mb7_5em{margin-bottom: 7.5em!important}	.ml7_5em{margin-left: 7.5em!important}			.pt7_5em{padding-top: 7.5em!important}	.pr7_5em{padding-right: 7.5em!important}	.pb7_5em{padding-bottom: 7.5em!important}	.pl7_5em{padding-left: 7.5em!important}
.mt8em	{margin-top: 8em!important}		.mr8em	{margin-right: 8em!important}		.mb8em	{margin-bottom: 8em!important}		.ml8em	{margin-left: 8em!important}			.pt8em	{padding-top: 8em!important}	.pr8em	{padding-right: 8em!important}		.pb8em	{padding-bottom: 8em!important}		.pl8em	{padding-left: 8em!important}
.mt8_5em{margin-top: 8.5em!important}	.mr8_5em{margin-right: 8.5em!important}		.mb8_5em{margin-bottom: 8.5em!important}	.ml8_5em{margin-left: 8.5em!important}			.pt8_5em{padding-top: 8.5em!important}	.pr8_5em{padding-right: 8.5em!important}	.pb8_5em{padding-bottom: 8.5em!important}	.pl8_5em{padding-left: 8.5em!important}
.mt9em	{margin-top: 9em!important}		.mr9em	{margin-right: 9em!important}		.mb9em	{margin-bottom: 9em!important}		.ml9em	{margin-left: 9em!important}			.pt9em	{padding-top: 9em!important}	.pr9em	{padding-right: 9em!important}		.pb9em	{padding-bottom: 9em!important}		.pl9em	{padding-left: 9em!important}
.mt9_5em{margin-top: 9.5em!important}	.mr9_5em{margin-right: 9.5em!important}		.mb9_5em{margin-bottom: 9.5em!important}	.ml9_5em{margin-left: 9.5em!important}			.pt9_5em{padding-top: 9.5em!important}	.pr9_5em{padding-right: 9.5em!important}	.pb9_5em{padding-bottom: 9.5em!important}	.pl9_5em{padding-left: 9.5em!important}
.mt5	{margin-top: 5px!important}		.mr5	{margin-right: 5px!important}		.mb5	{margin-bottom: 5px!important}		.ml5	{margin-left: 5px!important}			.pt5	{padding-top: 5px!important}	.pr5	{padding-right: 5px!important}		.pb5	{padding-bottom: 5px!important}		.pl5	{padding-left: 5px!important}
.mt10	{margin-top: 10px!important}	.mr10	{margin-right: 10px!important}		.mb10	{margin-bottom: 10px!important}		.ml10	{margin-left: 10px!important}			.pt10	{padding-top: 10px!important}	.pr10	{padding-right: 10px!important}		.pb10	{padding-bottom: 10px!important}	.pl10	{padding-left: 10px!important}
.mt15	{margin-top: 15px!important}	.mr15	{margin-right: 15px!important}		.mb15	{margin-bottom: 15px!important}		.ml15	{margin-left: 15px!important}			.pt15	{padding-top: 15px!important}	.pr15	{padding-right: 15px!important}		.pb15	{padding-bottom: 15px!important}	.pl15	{padding-left: 15px!important}
.mt20	{margin-top: 20px!important}	.mr20	{margin-right: 20px!important}		.mb20	{margin-bottom: 20px!important}		.ml20	{margin-left: 20px!important}			.pt20	{padding-top: 20px!important}	.pr20	{padding-right: 20px!important}		.pb20	{padding-bottom: 20px!important}	.pl20	{padding-left: 20px!important}
.mt25	{margin-top: 25px!important}	.mr25	{margin-right: 25px!important}		.mb25	{margin-bottom: 25px!important}		.ml25	{margin-left: 25px!important}			.pt25	{padding-top: 25px!important}	.pr25	{padding-right: 25px!important}		.pb25	{padding-bottom: 25px!important}	.pl25	{padding-left: 25px!important}
.mt30	{margin-top: 30px!important}	.mr30	{margin-right: 30px!important}		.mb30	{margin-bottom: 30px!important}		.ml30	{margin-left: 30px!important}			.pt30	{padding-top: 30px!important}	.pr30	{padding-right: 30px!important}		.pb30	{padding-bottom: 30px!important}	.pl30	{padding-left: 30px!important}
.mt35	{margin-top: 35px!important}	.mr35	{margin-right: 35px!important}		.mb35	{margin-bottom: 35px!important}		.ml35	{margin-left: 35px!important}			.pt35	{padding-top: 35px!important}	.pr35	{padding-right: 35px!important}		.pb35	{padding-bottom: 35px!important}	.pl35	{padding-left: 35px!important}
.mt40	{margin-top: 40px!important}	.mr40	{margin-right: 40px!important}		.mb40	{margin-bottom: 40px!important}		.ml40	{margin-left: 40px!important}			.pt40	{padding-top: 40px!important}	.pr40	{padding-right: 40px!important}		.pb40	{padding-bottom: 40px!important}	.pl40	{padding-left: 40px!important}
.mtAuto	{margin-top: auto!important}	.mrAuto	{margin-right: auto!important}		.mbAuto	{margin-bottom: auto!important}		.mlAuto	{margin-left: auto!important}			.ptAuto	{padding-top: auto!important}	.prAuto	{padding-right: auto!important}		.pbAuto	{padding-bottom: auto!important}	.plAuto	{padding-left: auto!important}
.mt0	{margin-top: 0!important}		.mr0	{margin-right: 0!important}			.mb0	{margin-bottom: 0!important}		.ml0	{margin-left: 0!important}				.pt0	{padding-top: 0!important}		.pr0	{padding-right: 0!important}		.pb0	{padding-bottom: 0!important}		.pl0	{padding-left: 0!important}

/* cliphidden | 構造上は存在するが表示させない要素 */
.cliphidden { position: absolute; clip: rect(1px, 1px, 1px, 1px); clip-path: inset(0px 0px 99.99% 99.99%); overflow: hidden; width: 1px; height: 1px; white-space: nowrap; padding: 0; border: 0; }




/* ***************************************************************************************************
	@KEYFRAMES
*************************************************************************************************** */

/* ----------------------------------------------------------------------------
	fade
-------------------------------------------------------------------------------
	例	{ animation: .7s ease-out both M_fadeIn__0_1; }
	例	{ animation: 2s cubic-bezier(.25, .46, .45, .94) .3s both M_fadeIn__0_1; }
	例	{ animation: 1.1s ease-out 0s infinite alternate both M_fadeIn__0_1; }
---------------------------------------------------------------------------- */
@keyframes M_fadeIn__0_1 {
	0% {opacity: 0}
	100% {opacity: 1}
}
@keyframes M_fadeIn__1_0 {
	0% {opacity: 1}
	100% {opacity: 0}
}
@keyframes M_fadeInUp__20px {
	0% {opacity: 0; transform: translateY(20px);}
	65% {opacity: 1;}
	100% {opacity: 1; transform: translateY(0);}
}
@keyframes M_width__0_100per {
	0% {	width: 0;}
	100% {	width: 100%;}
}
@keyframes M_height__0_100per {
	0% {	height: 0;}
	100% {	height: 100%;}
}
@keyframes M_stretchLeft {
	0% {	opacity: 0;	clip-path: inset(0 100% 0 0);}
	100% {	opacity: 1;	clip-path: inset(0 0 0 0);}
}
@keyframes M_stretchLeft__0_50_100{
	0% {	opacity: 0;	clip-path: inset(0 100% 0 0);}
	50% {	opacity: 1;}
	100% {	opacity: 1;	clip-path: inset(0 0 0 0);}
}




/* ***************************************************************************************************
	STYLE_CSS | style.css
*************************************************************************************************** */

/* wrapper
---------------------------------------------------------- */
@media print, screen and (min-width: 736.02px) {
	.l-property-temp .wrapper {
		overflow: unset;
		/*min-width: 1200px;*/
	}
}

/* コンタクトエリア、H1タイトル
---------------------------------------------------------- */
	.ttl-property-main .pageName {
		display: inline-block;
	}
	body.indexP .ttl-property-main .pageName {
		display: none;
	}
	.box-bukken-contact {
		letter-spacing: .05em;
	}
@media screen and (max-width: 736px) {
	.ttl-property-main .pageName,
	.ttl-property-main .inbl {
		display: inline;
	}
}

/* holiday | コンタクトエリア内
-------------------------------------------------------------
<p class="box-bukken-contact-text">営業時間xxx<br><small class="holiday"><em>HOLIDAY_ANNOUNCE</em></small></p>
-------------------------------------------------------------
[SAMPLE]
color: #bc254e;	// 赤_明るい背景用
color: #f09ab2;	// 赤_暗い背景用
color: #dec774;	// 黄_暗い背景用
---------------------------------------------------------- */
	.box-bukken-contact-text .holiday {
		display: inline-block;
		color: #f1ced8;
		font-family: inherit;
		letter-spacing: .05em;
		padding: 1px 5px;
		margin-top: 10px;
		border: 1px solid currentColor;
	}
	.box-bukken-contact-text .holiday a {
		color: inherit;
	}
	.box-bukken-contact-text .holiday .kokuchi {
		display: block;
		margin-top: 0.2em;
		padding: 0.3em 0.5em;
		border-top: 1px dotted currentColor;
	}
/* bukkenContactTtl_note | コンタクトエリア内
-------------------------------------------------------------
<p class="box-bukken-contact-title">お問い合わせは○○○<em class="bukkenContactTtl_note">NOTETEXT_NOTETEXT<br>※NOTENOTENOTENOTENOTENOTE</em></p>
---------------------------------------------------------- */
	.box-bukken-contact-title .bukkenContactTtl_note,
	.box-bukken-contact-tel .bukkenContactTel_note {
		display: block;
		line-height: 1.5;
		font-size: 1.1rem;
		margin-top: .25em;
	}
	.box-bukken-contact-tel .bukkenContactTel_note {
		padding-top: 1em;
		padding-bottom: .5em;
	}
@media screen and (max-width: 480px) {
	.box-bukken-contact-title .bukkenContactTtl_note,
	.box-bukken-contact-tel .bukkenContactTel_note {
		font-size: 1rem;
		margin-top: .35em;
	}
	.box-bukken-contact-tel .bukkenContactTel_note {
		padding-top: 1.5em;
	}
}




/* ***************************************************************************************************
	BASE
*************************************************************************************************** */

/* ============================================================================
	ボディ、サイトラッパー、メインの初期値設定。
============================================================================ */
	/*
	main {
		animation: 1s cubic-bezier(.25, .46, .45, .94) .3s both M_fadeIn__0_1;
	}
	*/
@media screen and (max-width: 1200px) {
	main { margin-top: var(--site-stickyHeader-height); }	/* スティッキーヘッダー分の余白（ざっくり対応ver ※厳密にする場合はJSで） */
}


/* ============================================================================
	OuterWide
-------------------------------------------------------------------------------
	ヘッダー、ページテーマ、フッター、コンテナ、コンテンツ類の初期値設定。
============================================================================ */
	
	/* ---------------- margin */
	.pageThemeWrap,
	.pageThemeWrapHeader,
	.pageThemeHeader,
	.breadcrumbBox,
	.container,
	.contbox,
	[class*="sizeContentWide"],
	[class*="sizeMaxWidth"] {
		margin-left: auto;
		margin-right: auto;
	}
	
	/* ---------------- width */
	/* OUTER */
	.pageThemeWrap,
	.pageThemeWrapHeader,
	.pageTheme,
	.container {
		width: 100%;
	}
	/* INNER */
	.breadcrumbBox {
		width: 100%;
	}
	.pageThemeHeader,
	.contbox {
		width: var(--site-sizeContentWide-M);		/* 88% */
		max-width: var(--site-sizeMaxWidth-M);		/* 1260px */
	}
	/* OVERWRITE */ /* 上書き指定の為必ず最後に記述する。 */
	.sizeContentWideL {
		width: var(--site-sizeContentWide-L);		/* 100% */
		max-width: var(--site-sizeMaxWidth-L);		/* 1900px */
	}
	.sizeContentWideXM {
		width: var(--site-sizeContentWide-XM);		/* 94% */
		max-width: var(--site-sizeMaxWidth-XM);		/* 1440px */
	}
	.sizeContentWideM {
		width: var(--site-sizeContentWide-M);		/* 88% */
		max-width: var(--site-sizeMaxWidth-M);		/* 1260px */
	}
	.sizeContentWideS {
		width: var(--site-sizeContentWide-S);		/* 86.111% */
		max-width: var(--site-sizeMaxWidth-S);		/* 1000px */
	}
	.sizeMaxWidthL {
		max-width: var(--site-sizeMaxWidth-L);		/* =1900px */
	}
	.sizeMaxWidthXM {
		max-width: var(--site-sizeMaxWidth-XM);		/* =1440px */
	}
	.sizeMaxWidthM {
		max-width: var(--site-sizeMaxWidth-M);		/* =1260px */
	}
	.sizeMaxWidthS {
		max-width: var(--site-sizeMaxWidth-S);		/* =1000px */
	}
	/* stickoutFullbox */ /* 固定幅のボックスをはみ出して、ウィンドウ幅いっぱいに広げる */
	.stickoutFullbox {
		margin-left:	calc(-50vw + 50%);
		margin-right:	calc(-50vw + 50%);
							/*opacity: .5; box-shadow: 0 0 0 10px red inset, 0 0 5px 10px red;*/
	}
	.stickoutFullbox img.stickoutFullboxPic,
	.stickoutFullbox .stickoutFullboxPic img {
		width: 100%;
		max-width: none;
	}
/* ------------------------ reset */ /* contents類の入れ子は100%にリセットする。 */
	.contbox .contbox/*,
	.contbox [class*="sizeContentWide"],
	[class*="sizeContentWide"] .contbox*/ {
		width: 100%;
		max-width: none;
	}


/* ============================================================================
	Module_Wrapper
-------------------------------------------------------------------------------
	コンテナ、コンテントボックス、
	フィーチャーコンテント(特別)、背景色チェンジ
============================================================================ */

	/* container
	----------------------- */
	.container {
		padding: var(--site-marpad-XL) 0;
	}
	.container + .container {
		padding-top: 0;
	}
	/*.pageThemeHeaderContainer + .container {
		padding-top: 0;
	}*/
	
	/* contbox
	----------------------- */
	
	/* featuredContent
	----------------------- */
	.featuredContent_01 {
		padding: clamp(40px, (40 / 737 * 100vw), 80px);
	}
	.featuredContent_02 {
		padding: clamp(40px, (40 / 737 * 100vw), 80px); /* SP時上下余白多め */
	}
	
	/* bgColor
	----------------------- */
	.bgColorWh {		background: #fff;}						/* 白 */
	.bgColorWhOpa {		background: rgba(255, 255, 255, .3);}	/* 白（透過） */
	.bgColorBk {		background: #000;}						/* 黒 */
	.bgColorBkOpa {		background: rgba(0, 0, 0, .4);}			/* 黒（透過） */
	
	.bgColor_base {		color: rgba(var(--site-themeColor-base_text), 1); background: rgba(var(--site-themeColor-base), 1);}
	.bgColor_main {		color: rgba(var(--site-themeColor-main_text), .8); background: rgba(var(--site-themeColor-main), 1);}
	.bgColor_sub {		color: rgba(var(--site-themeColor-sub_text), 1); background: rgba(var(--site-themeColor-sub), 1);}
	.bgColor_accent_1 {	color: rgba(var(--site-themeColor-accent_1_text), 1); background: rgba(var(--site-themeColor-accent_1), 1);}
	
	.bgColor01 {		background: #c2cddb;}
	.bgColor02 {		background: #d4cec8;}
	
	.bgPattern01 {		background: #020202 var(--site-variationColor-pattern_dark);}	/* 暗パターン */

@media screen and (max-width: 736px) {
	.container {
		padding: var(--site-marpad-S) 0 var(--site-marpad-L);
	}
	/* featuredContent
	----------------------- */
	.featuredContent_01 {
		padding: clamp(28px, (28 / 320 * 100vw), 35px);
	}
	.featuredContent_02 {
		padding: clamp(40px, (40 / 320 * 100vw), 47px) clamp(28px, (28 / 320 * 100vw), 35px);
	}
}


/* ============================================================================
	Framework_Wrapper
============================================================================ */

/* mainElementHeaderWrap
------------------------------------------------------------------------ */
	.mainElementHeaderWrap {
	}
	.mainElementHeaderBox {
		position: relative;
		z-index: 0;
		width: 100%;
		color: #fff;
	}
	/*.mainElementHeaderBox[data-main_element_header_box-height="L"] {
		min-height: clamp(200px, (520 / 1900 * 100vw), 520px);
	}
	.mainElementHeaderBox[data-main_element_header_box-height="S"] {
		min-height: clamp(180px, (200 / 1200 * 100vw), 200px);
	}*/
	.mainElementHeaderBox .imgcapkeep {
		z-index: 1;
	}
	/* pPic
	---------------------------------------------------- */
	.pPicBox {
		overflow: hidden;
	}
	.pPic {
		width: 100%;
		max-width: none;
	}
	/* pTtl
	---------------------------------------------------- */
	.pTtlWrap {
		position: relative;
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		align-items: center;
		align-content: center;
		min-height: 0.001vw;				/* for safari | font-sizeにclamp()使用時必須 */
		line-height: 1.8;
		color: #FFF;
		font-family: var(--site-font_family-en_1);
		font-size: 1.2em;
		text-align: center;
		background: url("../images/share/bg_header.png") center -10vw no-repeat;
		padding-bottom: 50px;
	}
	.pTtlWrap.noImg {
		padding: var(--site-marpad-S) 0  var(--site-marpad-XXS);
	}
	/*.mainElementHeaderBox[data-main_element_header_box-height="L"] .pTtlWrap {
		font-size: clamp(3rem, (65 / 1900 * 100vw), 6.5rem);
	}
	.mainElementHeaderBox[data-main_element_header_box-height="S"] .pTtlWrap {
		font-size: clamp(2.8rem, (40 / 1200 * 100vw), 4rem);
	}*/
	.pTtlBox {
	}
	.pTtlBox .pTtl {
	}
	.pTtlBox .pTtl.en {
		display: inline-block;
		line-height: 1.8;
		letter-spacing: 0.05em;
		font-size: 5.0em;
		font-variant-caps: small-caps;
		font-weight: 700;
		font-family: var(--site-font_family-en_1);
		background: var(--site-variationColor-gradient_gold);
		-webkit-background-clip: text;
		-webkit-text-fill-color: transparent;
		background-clip: text;
	}
	.pTtlBox .pTtl.ja {
		font-family: var(--site-font_family-serif);
		line-height: 1.2;
		letter-spacing: .2em;
	}
	.pLeadTxtBox {
		width: 100%;
		font-family: var(--site-font_family-serif);
		letter-spacing: .2em;
		margin-top: .5em;
	}
	.pLeadTxtBox .pLeadTxt {
	}
	.pTtlWrap .scrollIcon {
		position: absolute;
		bottom: 0;
		left: 50%;
		transform: translateX(-50%);
		font-family: var(--site-font_family-en_1);
		font-variant-caps: all-petite-caps;
	}
	.pTtlWrap .scrollIcon::before {
		opacity: 0;
		content: "";
		position: absolute;
		bottom: 6vw;
		left: calc(50% - 4px);
		display: block;
		width: 7px;
		height: 7px;
		background: #FFF;
		border-radius: 50%;
		animation: 2.5s scrollIcon;
		animation-iteration-count: 100;
	}
	.pTtlWrap .scrollIcon::after {
		content: "";
		display: block;
		width: 1px;
		height: 6vw;
		background: #FFF;
		margin: 15px auto 0;
	}

@keyframes scrollIcon {
	0% {	transform: translateY(0); opacity: 0;	}
	10% {	transform: translateY(0); opacity: 1;	}
	50% {	transform: translateY(0); opacity: 1;	}
	99% {	transform: translateY(50px); opacity: 0;	}	
	100% {	transform: translateY(0px); opacity: 0;	}	
}

@media screen and (min-width: 1200.02px) {
}
@media screen and (min-width: 1050.02px) {
	.mainElementHeaderBox {
		display: flex;
	}
	.pPicBox, .pTtlWrap {
		width: 50%;
		margin: 0 auto;
	}
}
@media screen and (max-width: 1050px) {
	.pTtlWrap {
		padding-top: 10vh;
		padding-bottom: 0;
	}
	.pTtlWrap .scrollIcon {
		z-index: 100;
		position: relative;
		transform: translateX(0);
		left: auto;
		margin-top: 50px;
	}
}
@media screen and (max-width: 736px) {
	.mainElementHeaderWrap {
	}
	/*.mainElementHeaderBox[data-main_element_header_box-height="L"] {
		min-height: 200px;
	}
	.mainElementHeaderBox[data-main_element_header_box-height="S"] {
		min-height: 180px;
	}*/
	.pPic {
	}
	.pTtlWrap {
		font-size: 3vw;
		background-position: center 60%;
	}
	.pTtlBox .pTtl.en {
		font-size: 4.0em;
	}
}


/* pageThemeWrap
------------------------------------------------------------------------ */
	/* pageThemeWrap
	----------------------- */
	.pageThemeWrap {
		background: linear-gradient(to right, rgba(255, 255, 255, .1) 0%, rgba(255, 255, 255, 0) 100%);
	}
	
	/* pageThemeWrapHeader
	----------------------- */
	.pageThemeWrapHeader {}
	
	/* pageTheme
	----------------------- */
	.pageTheme {
	}
	.pageTheme + .pageTheme {
		margin-top: var(--site-marpad-XXL);
	}
	
	/* catHeaderImg
	----------------------- */
	.catHeaderImg {
		position: relative;
	}
	.catHeaderImg .catName {
		position: absolute;
		bottom: 0;
		left: 50%;
		transform: translateX(-50%);
		color: rgba(12, 10, 32, .5);
		line-height: .63;
		font-family: var(--site-font_family-en_1);
		mix-blend-mode: color-burn;

		--M-fluidFontSize-max-fontsize: 150;
		--M-fluidFontSize-min-fontsize: 60;
		--M-fluidFontSize-max-viewport: 1440;
		--M-fluidFontSize-min-viewport: 320;
		--M-fluidFontSize-fontSize: clamp( var(--M-fluidFontSize-min-fontsize) * .1rem, (var(--M-fluidFontSize-min-fontsize) * .1rem) + (1vw - (var(--M-fluidFontSize-min-viewport) / 100 * .1rem)) * (100 * (var(--M-fluidFontSize-max-fontsize) - var(--M-fluidFontSize-min-fontsize)) / (var(--M-fluidFontSize-max-viewport) - var(--M-fluidFontSize-min-viewport))), var(--M-fluidFontSize-max-fontsize) * .1rem );

		min-height: 0.001vw;	/*// for safari | font-sizeにclamp()使用時必須 //*/
		font-size: var(--M-fluidFontSize-fontSize);
	}
	.catHeaderImg .imgcapkeep {
		top: 0;
		right: 0;
		left: auto;
		bottom: auto;
	}
	
	/* pageThemeHeader
	----------------------- */
	.pageThemeHeaderContainer {
		display: flex;
		gap: clamp(40px, (60 / 1260 * 100vw), 60px);
		width: var(--site-sizeContentWide-M);
		max-width: var(--site-sizeMaxWidth-M);
		margin: 0 auto;
		margin-bottom:  clamp(30px, (60 / 1000 * 100vw), 60px) ;
		padding-top: clamp(40px, (60 / 1000 * 100vw), 75px);
	}
	.pageThemeHeader {}
	
	.pageThemeHeaderLeadTxtBox {
	}

	.pageThemeHeaderPic img {
		width: 100%;
		height: 100%;
		object-fit: cover;
	}

@media screen and (min-width: 1050.02px) {
	.pageThemeHeaderContainer {
	}
}
@media screen and (max-width: 1050px) {
	.pageThemeHeaderContainer {
		flex-direction: column;
	}
	.pageThemeHeaderPic {
		order: -1;
	}
	.catHeaderImg.noImgSP {
		display: none;
	}
}
@media screen and (max-width: 736px) {
	.pageThemeHeader {
		width: 98%;
	}
	.pageThemeHeaderContainer {
		padding-top: 60px;
	}
	.pageThemeHeaderLeadTxtBox {
	}
}


/* breadcrumbBox
------------------------------------------------------------------------ */
	.breadcrumbBox {
		line-height: 1.8;
		color: inherit;
		font-size: 1rem;
		letter-spacing: .05em;
		padding: 0;
	}
	.breadcrumbBox ol {
		display: flex;
		flex-wrap: wrap;
		justify-content: flex-end;
		margin: 0;
		padding: .7em 1em;
	}
	.breadcrumbBox li {
		opacity: .6;
	}
	.breadcrumbBox li:not(:last-child)::after {
		content: "＞";
		margin: 0 .35em 0 .5em;
	}
	.breadcrumbBox li.current {
		font-weight: bold;
		opacity: .85;
	}
	.breadcrumbBox li a {
		border-bottom: 1px solid transparent;
		transition: border .05s ease-out;
	}
	@media (hover: hover) and (pointer: fine) {
		.breadcrumbBox li a:hover {
			border-bottom-color: currentColor;
		}
	}
	.breadcrumbBox li a:focus-visible {
		border-bottom-color: currentColor;
	}
@media screen and (max-width: 736px) {
	.breadcrumbBox {
		word-break: break-all;
		letter-spacing: .02em;
	}
	.breadcrumbBox ol {
		display: block;
		padding: 1.1em .8em;
	}
	.breadcrumbBox li {
		display: inline;
	}
}


/* mainElementFooterWrap
------------------------------------------------------------------------ */
	.mainElementFooterWrap {}

/* pageLastCaptionWrap
---------------------------------------------------- */
	.pageLastCaptionWrap {
		color: rgba(var(--site-themeColor-main_text), 1);
		background: rgba(var(--site-themeColor-main), 1);
		padding: 60px 0;
	}
	.pageLastCaptionWrap a {
		display: inline-block;
		/*color: #841517;*/
		text-decoration: underline;
		transition:background .08s ease-out, opacity .08s ease-out; /* opacityも設定しておくこと */
		margin: 0 0.2em;
	}
	@media (hover: hover) and (pointer: fine) {
		.pageLastCaptionWrap a:hover {
			text-decoration: underline;
			background: rgba(150, 150, 150, .15);
		}
	}
	.pageLastCaptionWrap a:focus-visible {
		text-decoration: underline;
		background: rgba(150, 150, 150, .15);
	}

@media screen and (max-width: 736px) {
	.pageLastCaptionWrap {
		padding: var(--site-marpad-S) 0;
	}
}

/* footerPaginationWrap							2022.10
-------------------------------------------------------
- ボタン内の空白文字・インラインブロックによる改行を無効（brは可能）。英字10～13文字程度が上限。
- 左向き矢印を基本設定とし、右向き矢印は「矢印の向きを反転」させて再現
- カスタムプロパティ使用
---------------------------------------------------- */
	.footerPaginationWrap {
		--default-footerPaginationWrap-letterSp: .02em;
		
		line-height: 1.2;
		color: #000;
		font-family: var(--site-font_family-en_1);
		font-size: 1.2em;
		letter-spacing: var(--default-footerPaginationWrap-letterSp);
		white-space: nowrap;				/* 改行無効 */
		background: #fff;
	}
	.footerPagination {
		display: flex;
		justify-content: space-between;
		position: relative;
	}
	/*.footerPagination::after {
		content: "";
		display: block;
		position: absolute;
		inset: 0;
		z-index: 0;
		width: 0;
		height: 1.14285em;
		margin: auto;
		border-left: 1px solid #999;
		transform: rotate(30deg);
		pointer-events: none;
	}*/
	.footerPaginationBtn {
		flex: 0 0 50%;
		display: flex;
	}
	.footerPaginationBtn a {
		flex: 1;
		display: flex;
		justify-content: center;
		align-items: center;
		position: relative;
		overflow: hidden;
		z-index: 0;
		color: rgba(var(--site-themeColor-accent_1), 1);
		font-family: var(--site-font_family-en_1);
		font-size: 2vw;
		font-variant-caps: small-caps;
		padding: 1.25em 40px;
		background: rgba(var(--site-themeColor-main), 1);
		transition: background .18s ease-out;
	}
	.footerPaginationBtn .label {
		position: relative;
		z-index: 1;
		padding: 0 .7em;
		/*margin-right: calc(var(--default-footerPaginationWrap-letterSp) * -1);*/ /* 微調整 */
	}
	/*.footerPaginationBtn .arrow {
		--default-footerPaginationBtnArrow-width-clamp_min: 30px;
		--default-footerPaginationBtnArrow-width-clamp_val: 120px;
		--default-footerPaginationBtnArrow-width-clamp_max: 120px;
		--default-footerPaginationBtnArrow-hoverWidthDiff: 0;
		width: clamp(
			( var(--default-footerPaginationBtnArrow-width-clamp_min) + (var(--default-footerPaginationBtnArrow-hoverWidthDiff) * 1px) ),
			( var(--default-footerPaginationBtnArrow-width-clamp_val) + (var(--default-footerPaginationBtnArrow-hoverWidthDiff) * 1px) ),
			( var(--default-footerPaginationBtnArrow-width-clamp_max) + (var(--default-footerPaginationBtnArrow-hoverWidthDiff) * 1px) )
		);
		padding-top: .4em;
		border-bottom: 1px solid currentColor;
		transition: width .18s ease-out, margin .18s ease-out;
	}
	.footerPaginationBtn .arrow::after {
		content: "";
		display: block;
		position: relative;
		bottom: -1px;
		width: 23px;
		width: clamp(12px, 2.5vw, 23px);
		border-bottom: 1px solid currentColor;
		transform-origin: left bottom;
		transform: rotate(-35deg);
	}*/
	.footerPaginationBtn a::after {
		opacity: .8;
		content: "";
		position: absolute;
		top: 0;
		left: 0;
		display: block;
		width: 100%;
		height: 100%;
		background: no-repeat center center / 100% auto;
		transition: background 0.5s ease, opacity 0.5s ease;
		mix-blend-mode: multiply;
	}
	.footerPaginationBtn a.Top::after {			background-image: url("../images/share/footer-index.jpg");}
	.footerPaginationBtn a.Location::after {	background-image: url("../images/share/footer-location.jpg");}
	.footerPaginationBtn a.Access::after {		background-image: url("../images/share/footer-access.jpg");}
	.footerPaginationBtn a.Roomplan::after {	background-image: url("../images/share/footer-plan.jpg");}
	.footerPaginationBtn a.Equipment::after {	background-image: url("../images/share/footer-equipment.jpg");}
	.footerPaginationBtn a.Map::after {			background-image: url("../images/share/footer-map.jpg");}
	
	/* -- Individual -- */
	/* ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////
	 -	flex-direction: row-reverse;											… 文字・矢印の位置をリバース（nextだけ）
	 -	transform: scale(-1, 1);												… 矢印の向きを反転（nextだけ）
	 -	calc(var(--default-footerPaginationBtnArrow-hoverWidthDiff) * -1px);	… 矢印_水平線が伸びる量を相殺する
	/////////////////////////////////////////////////////////////////////////////////////////////////////////////////// */
	.footerPaginationBtn_prev a {		/*padding-left: 0;*/}
	.footerPaginationBtn_next a {		/*padding-right: 0; flex-direction: row-reverse;*/}
	/*.footerPaginationBtn_prev .label {	padding-right: 0;}
	.footerPaginationBtn_next .label {	padding-left: 0;}*/
	/*.footerPaginationBtn_prev .arrow {	margin-left: calc(var(--default-footerPaginationBtnArrow-hoverWidthDiff) * -1px);}
	.footerPaginationBtn_next .arrow {	margin-right: calc(var(--default-footerPaginationBtnArrow-hoverWidthDiff) * -1px); transform: scale(-1, 1); }*/

	/* hover */
	@media (hover: hover) and (pointer: fine) {
		.footerPaginationBtn a:hover {
			background-color: rgba(var(--site-themeColor-main), .77);
		}
		.footerPaginationBtn a:hover .arrow {
			--default-footerPaginationBtnArrow-hoverWidthDiff: 10; /* hover時に矢印_水平線が伸びる量（単位不要）（例:「10」を設定すると、矢印_水平線が10px伸びる） */
		}
		.footerPaginationBtn a:hover::after {
			opacity: .9;
			background-size: 105% auto;
		}
	}
	.footerPaginationBtn a:focus-visible {
		background-color: rgba(var(--site-themeColor-main), .77);
	}
	.footerPaginationBtn a:focus-visible .arrow {
		--default-footerPaginationBtnArrow-hoverWidthDiff: 10; /* hover時に矢印_水平線が伸びる量（単位不要）（例:「10」を設定すると、矢印_水平線が10px伸びる） */
	}

@media screen and (max-width: 736px) {
	.footerPaginationBtn a {
		padding: 1.25em 10px;
		font-size: 5vw;
	}
	.footerPaginationBtn .arrow {
		--default-footerPaginationBtnArrow-width-clamp_val: 10vw;
	}
}


/* fNavWrap										2022.10
-------------------------------------------------------
- ul以下はJSで生成（setting.js）
- 物件メニューが入らないページもあるので余白設定は注意（.fNavWrap は {A} margin,paddingは基本設定不可）
- 擬似要素は用途が決まっています（li::before、li::after、a::before、a::after）
-------------------------------------------------------
- 例：<ul><li class="indNav is-new"><a href="../" class="is-current" data-end-date="xxx">トップ</a></li></ul>
---------------------------------------------------- */
/* 共通設定 ----- */
	.fNavWrap {
		min-height: 0.001vw;		/* for safari | font-sizeにclamp()使用時必須 */
		line-height: 1.35;
		color: rgba(var(--site-themeColor-sub_text), 1);
		font-family: var(--site-font_family-sans);
		font-size: 1.4rem;
		letter-spacing: .03em;
		text-align: center;
		background: rgba(var(--site-themeColor-sub), 1);
		/* {A} margin,paddingは基本設定不可 */
	}
	.fNav {} /* margin,paddingつけるならココ!! */
	
	.fNav ul {}
	
	.fNav li {
		position: relative;
	}
	.fNav a {
		position: relative;
		color: inherit;
	}
	
/* PC時の設定 ----- */
	.fNavWrap {
	}
	.fNav {
		width: 94%;
		margin: 0 auto;
	}
	.fNav ul {
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		align-items: center;
		padding-top: 6px;
		padding-bottom: 6px;
	}
	.fNav li {
		padding: 6px 0;
	}
	.fNav li::before,
	.fNav li::after { /* 区切りライン（｜｜） */
		content: "";
		display: block;
		position: absolute; top: 0; bottom: 0;
		width: 0;
		height: 1.1em;
		margin: auto;
		border-left: 1px solid #3f4672;
	}
	.fNav li::before {	left: -1px; }
	.fNav li::after {	right: 0; }
	
	.fNav a {
		display: block;
		padding: 9px 1.4em;
	}
	.fNav li.is-new a::before {} /* NEWマーク */
	.fNav a[href]::after { /* currentライン（＿） */
		content: "";
		display: block;
		width: 100%;
		height: 0;
		margin: 0 auto;
		border-bottom: 1px solid transparent;
		transform: translateY(4px);
		transition: border .18s ease-out;
	}
	/* -- placeholder, hover, current -- */
	.fNav a:not([href]) {
		color: rgba(255, 255, 255, .3);
	}
	@media (hover: hover) and (pointer: fine) {
		.fNav a[href]:not(.is-current):hover::after {
			border-color: #fff;
		}
	}
	.fNav a[href]:not(.is-current):focus-visible::after {
		border-color: #fff;
	}
	.fNav a.is-current::after {
		border-color: #fff;
	}
	/* -- Individual -- */
	.fNav .braNav br {
		display: none;
	}

/* SP時の設定 ----- */
@media screen and (max-width: 736px) {
	.fNavWrap {
		font-size: clamp(1rem, (13 / 736 * 100vw), 1.3rem);
		letter-spacing: .03em;
		/* {A} margin,paddingは基本設定不可 */
	}
	.fNav {
		width: auto;
		max-width: none;
		margin: auto;
	}
	.fNav ul {
		display: flex;
		flex-wrap: wrap;
		justify-content: flex-start;
		align-items: stretch;
		padding: 0;
	}
	.fNav li {
		display: flex;
		width: 33.333%;
		padding: 0;
		border: 0 solid rgba(255, 255, 255, .13);
		border-width: 0 1px 1px 0;
	}
		/* /////////////////////////////////////////////////////////////////////////////////////
			3カラムで欠けがある場合下線を消す。※2カラムになる場合はメディアクエリを分けること
			li:nth-child(3n+2):last-child			= 1つ欠けの場合の最後の子要素
			li:nth-child(3n+1):nth-last-of-type(2)	= 1つ欠けの場合の最後から2番目の子要素
			li:nth-child(3n+1):last-child			= 2つ欠けの場合の最後の子要素
		///////////////////////////////////////////////////////////////////////////////////// */
		.fNav li:nth-child(3n+2):last-child,
		.fNav li:nth-child(3n+1):nth-last-of-type(2),
		.fNav li:nth-child(3n+1):last-child {
			border-bottom: none;
		}
	.fNav li::before,
	.fNav li::after {
		display: none;
	}
	
	.fNav a {
		display: flex;
		justify-content: center;
		align-items: center;
		width: 100%;
		min-height: 3.5em;
		padding: 15px .75em;
		transition: color .18s ease-out, background .18s ease-out;
	}
	.fNav li.is-new a::before { /* NEWマーク */
		content: "NEW";
		display: block;
		position: absolute;
		top: 2px;
		right: 3px;
		line-height: 1;
		color: #fff;
		font-size: 10px;
		background: #b42d43;
		padding: .25em;
		transform: scale(.9);
		transform-origin: top right;
	}
	.fNav a[href]::after {
		display: none;
	}
	/* -- placeholder, hover, current -- */
	.fNav a:not([href]) {
		color: rgba(255, 255, 255, .3);
	}
	.fNav a[href]:not(.is-current):focus-visible {
		background-color: rgba(255, 255, 255, .08);
	}
	.fNav a.is-current {
		background-color: rgba(255, 255, 255, .17);
	}
	/* -- プラウドについて・プラウドシーズンについて -- */
	.fNav .braNav a {
		color: #fff !important;
		/*background-color: #000066 !important;*/
		background-color: #9F8758 !important;
	}
	.fNav .braNav a[href]:not(.is-current):focus-visible {
		/*background-color: #222299 !important;*/
		background-color: #bc9852 !important;
	}
	.fNav .braNav a.is-current {
		color: #fff !important;
	}
	.fNav .braNav a:not([href]) {
		color: rgba(255, 255, 255, .3) !important;
	}
}
@media screen and (max-width: 480px) {
	/* -- Individual -- */
	.fNav .braNav br {
		display: inline;
	}
}


/* pageBottomFreeSpaceWrap
------------------------------------------------------------------------ */
/* pageBottomBtnWrap
---------------------------------------------------- */
	.pageBottomBtnWrap {
		text-align: center;
		background: rgba(180, 180, 180, .6);
		margin: 0 auto 0;
		padding: 20px 1vw;
	}
	.pageBottomBtnBox {
		display: flex;
		flex-wrap: wrap;
		/*justify-content: center;*/
		width: 100%;
		max-width: 1060px; /* feeling. */
		margin: 0 auto;
	}
	.pageBottomBtnBox > * {
		display: flex;
		flex-basis: 50%;
	}
	.pageBottomBtnBox [class*="generalBtnUnit"] {
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		align-items: center;
		width: calc(100% - (10px * 2));
		max-width: none;
		margin: 10px;
	}
	/* -- Individual -- */
	/*.pageBottomBtnBox .btn_req { flex-basis: 33%;}
	.pageBottomBtnBox .btn_res { flex-basis: 33%;}
	.pageBottomBtnBox .btn_lim { flex-basis: 33%;}*/
	
@media screen and (max-width: 736px) {
	.pageBottomBtnBox {
		justify-content: center;
	}
	.pageBottomBtnBox > * {
		flex-basis: 94%;
		max-width: 500px;
	}
	.pageBottomBtnBox [class*="generalBtnUnit"] {
		width: calc(100% - (5px * 2));
		margin: 5px;
	}
}




/* ============================================================================
	Framework_Elements
============================================================================ */

/* ptHeading
------------------------------------------------------------------------ */
	.ptHeading .hTxt,
	[class*="hTxtStyh"] {
		display: block;
		/*min-height: 0.001vw;*/				/* for safari | font-sizeにclamp()使用時必須 */
		line-height: 1.75;
		color: inherit;
		/*color: rgba(var(--site-variationColor-heading-light), 1);*/
		/*text-align: center;*/
		letter-spacing: .1em;
		padding: 0;
	}
	.ptHeading .hTxt .kana,
	[class*="hTxtStyh"] .kana {
		letter-spacing: -.05em;
		margin-right: .05em;
	}
	/* -- */
	:where(h2).ptHeading .hTxt,
	.hTxtStyh2 {
		color: #FFF;
		text-align: left;
		font-size: 1.15em;
		line-height: 2.1;
		margin-bottom: calc(15px + .7em);
	}
	:where(h3).ptHeading .hTxt,
	.hTxtStyh3 {
		position: relative;
		color: #FFF;
		font-size: 1.3em;
		margin-bottom: calc(15px + .7em);
		padding: 0.5em 0;
		padding-left: 1.5em;
	}
	:where(h3).ptHeading .hTxt::before,
	.hTxtStyh3::before {
		content: "";
		position: absolute;
		top: 0;
		left: 0;
		display: block;
		width: 2px;
		height: 100%;
		background: linear-gradient(to bottom, #a09053 0%, #c6bb92 50%, #a09053 100%);;
	}
	:where(h4).ptHeading .hTxt,
	.hTxtStyh4 {
		color: #FFF;
		font-size: 1.16em;
		margin-bottom: calc(15px + .7em);
	}
	:where(h5).ptHeading .hTxt,
	:where(h6).ptHeading .hTxt,
	.hTxtStyh5,
	.hTxtStyh6 {
		font-size: 1.8rem;
		margin-bottom: .85em;
	}
	/*.ptHeading .hWord + .hTxt,
	.ptHeading .hWord + [class*="hTxtStyh"] {
		margin-top: 16px;
	}*/
	/* hWord
	--------------------------------- */
	.ptHeading .hWord {
		display: inline-block;
		line-height: 1.4;
		font-size: 4.7em;
		font-variant-caps: small-caps;
		font-weight: 600;
		font-family: var(--site-font_family-en_1);
		background: var(--site-variationColor-gradient_gold);
		-webkit-background-clip: text;
		-webkit-text-fill-color: transparent;
		background-clip: text;	
	}
	/*.ptHeading .hWord.en {
		font-family: var(--site-font_family-en_1);
		font-size: 2.6rem;
		text-transform: uppercase;
		letter-spacing: .15em;
	}*/
	.ptHeading .hWord .ja {
		display: block;
		color: rgba(var(--site-themeColor-base_text), 1);
		font-family: var(--site-font_family-basic);
		font-size: 1.6rem;
		font-weight: 400;
		letter-spacing: .12em;
		-webkit-text-fill-color: initial;
	}
@media screen and (max-width: 736px) {
	.ptHeading .hTxt,
	[class*="hTxtStyh"] {
		/*text-align: left;*/
		letter-spacing: .05em;
	}
	:where(h2).ptHeading .hTxt,
	.hTxtStyh2 {
		letter-spacing: .01em;
		font-size: 3.7vw;
		margin-bottom: .8em;
	}
	:where(h3).ptHeading .hTxt,
	.hTxtStyh3 {
		font-size: 3.4vw;
	}
	:where(h4).ptHeading .hTxt,
	.hTxtStyh4 {
		font-size: 1.7rem;
	}
	:where(h5).ptHeading .hTxt,
	:where(h6).ptHeading .hTxt,
	.hTxtStyh5,
	.hTxtStyh6 {
		font-size: 1.5rem;
	}
	.ptHeading .hWord {
		font-size: 9vw;
	}
}




/* ============================================================================
	Module_Elements
============================================================================ */

/* noticeWrap | 全ページ共通用（基本的に書き換えない。調整は後述の「is_noticeWrap_all」へ）
------------------------------------------------------------------------ */
/* noticeItem
---------------------------------------------------- */
	.noticeWrap .noticeItem {
		width: 94%;
		/*max-width: 1200px;*/
		margin: 100px auto 0;
		padding: 1px;
	}
	/*.noticeWrap .noticeItem:not(:first-child)::before {
		content: "";
		display: block;
		width: 100%;
		height: 0;
		border: 0 solid rgba(200,200,200,.2);
		border-width: 1px 0 0;
		border-image: linear-gradient(to right, rgba(200,200,200,0) 0%, rgba(200,200,200,0) 3%, rgba(200,200,200,.3) 25%, rgba(200,200,200,.3) 75%, rgba(200,200,200,0) 97%, rgba(200,200,200,0) 100%) 1;
		transform: translateY(-40px);
	}
	.noticeWrap .is_noticeItem_noBd.noticeItem::before {
		display: none;
	}*/
	.noticeWrap .noticeItem .kana {
		letter-spacing: -.02em;
	}
	.noticeWrap .noticeItem a,
	.noticeWrap .noticeItem a .inbl {
		text-decoration: none;
	}
	/* 文字サイズ調整
	----------------------- */
	/* noticeItem ----- */
	.noticeWrap .noticeItem {
		--default-noticeItem-fontsize:			22;
		--default-noticeItem-fontsize-first:	22; /* --default-noticeItem-fontsize と同じ値を設定する。変数の代入は不可。 */
		line-height: 1.6;
		font-size: calc(var(--default-noticeItem-fontsize) * .1rem);
		text-align: center;
		letter-spacing: .07em; /*.06em|.09em*/
	}
	.noticeWrap .noticeItem small {
		display: inline-block;
		/*line-height: 1.3;*/
		color: inherit;
		/*font-size: .75em;*/
		/*margin-top: .5em;*/
	}
	.noticeWrap .noticeItem :is(.txtLLL, .txtLL, .txtL, .txtM, .txtS, .txtSS, .txtSSS) {
		--default-noticeItem-fontsize-coefficient: 1em; /* 係数（倍率の調整＆単位を付けるための値） */
	}
	.noticeWrap .noticeItem :is(.txtLLL, .txtLL, .txtL, .txtM) {
		font-size: calc(var(--default-noticeItem-txt-fontsize) / var(--default-noticeItem-fontsize) * var(--default-noticeItem-fontsize-coefficient));
	}
	.noticeWrap .noticeItem :is(.txtS, .txtSS, .txtSSS) {
		font-size: max((var(--default-noticeItem-txt-fontsize) / var(--default-noticeItem-fontsize) * var(--default-noticeItem-fontsize-coefficient)), var(--default-noticeItem-txt-min-fontsize));
	}
	/* txtL ----- */
	.noticeWrap .noticeItem .txtLLL {
		--default-noticeItem-txt-fontsize:		38;
		line-height: 1.5;
		letter-spacing: .045em;
	}
	.noticeWrap .noticeItem .txtLL {
		--default-noticeItem-txt-fontsize:		34;
		line-height: 1.5;
		letter-spacing: .045em;
	}
	.noticeWrap .noticeItem .txtL {
		--default-noticeItem-txt-fontsize:		30;
		letter-spacing: .06em;
	}
	/* txtM ----- */
	.noticeWrap .noticeItem .txtM {
		--default-noticeItem-txt-fontsize:		26;
	}
	/* txtS ----- */
	.noticeWrap .noticeItem .txtS {
		--default-noticeItem-txt-fontsize:		19;
		--default-noticeItem-txt-min-fontsize:	1.45rem;
	}
	.noticeWrap .noticeItem .txtSS {
		--default-noticeItem-txt-fontsize:		16;
		--default-noticeItem-txt-min-fontsize:	1.3rem;
	}
	.noticeWrap .noticeItem .txtSSS {
		--default-noticeItem-txt-fontsize:		14;
		--default-noticeItem-txt-min-fontsize:	1.25rem;
	}
	/* letterSpacing ----- */
	.noticeWrap .noticeItem .letterSpacingL {
		letter-spacing: .26em;
	}
	/* color ----- */
	/* base.cssで設定済み。 .txtColor01 等
	*/
@media screen and (max-width: 736px) {
	.noticeWrap .noticeItem {
		--default-noticeItem-fontsize: 17;
		margin-top: 80px;
	}
	.noticeWrap .noticeItem :is(.txtLLL, .txtLL, .txtL, .txtM, .txtS, .txtSS, .txtSSS) { /* 親のフォントサイズに合わせた倍率を算出 */
		--default-noticeItem-fontsize-coefficient: calc(var(--default-noticeItem-fontsize) / var(--default-noticeItem-fontsize-first) * 1em);
	}
}
@media screen and (max-width: 480px) {
	.noticeWrap .noticeItem {
		--default-noticeItem-fontsize: 16;
	}
	.noticeWrap .noticeItem :is(.txtLLL, .txtLL, .txtL, .txtM, .txtS, .txtSS, .txtSSS) { /* 仕切り直し */
		--default-noticeItem-fontsize-coefficient: 1em;
	}
	.noticeWrap .noticeItem .txtLLL {
		--default-noticeItem-txt-fontsize:		23;
	}
	.noticeWrap .noticeItem .txtLL {
		--default-noticeItem-txt-fontsize:		20;
	}
	.noticeWrap .noticeItem .txtL {
		--default-noticeItem-txt-fontsize:		18.25;
	}
	.noticeWrap .noticeItem .txtM {
		--default-noticeItem-txt-fontsize:		17;
	}
	.noticeWrap .noticeItem .txtS {
		--default-noticeItem-txt-fontsize:		14.25;
		--default-noticeItem-txt-min-fontsize:	1.27rem;
	}
	.noticeWrap .noticeItem .txtSS {
		--default-noticeItem-txt-fontsize:		13;
		--default-noticeItem-txt-min-fontsize:	1.2rem;
	}
	.noticeWrap .noticeItem .txtSSS {
		--default-noticeItem-txt-fontsize:		11.75;
		--default-noticeItem-txt-min-fontsize:	1.12rem;
	}
}


/* noticeBtnBox
---------------------------------------------------- */
	.noticeBtnBox {
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		align-items: center;
		max-width: 800px; /* feeling. */
		margin-top: 32px;
		margin-left: auto;
		margin-right: auto;
	}
	.noticeBtnBox .noticeBtn {
		flex: 0 0 clamp(300px ,(50% - (7px * 2)), 450px);
		margin-top: 15px;
		margin: 12px 7px 0;
	}
	.noticeBtnBox .noticeBtn [class*="generalBtnUnit"] {
		width: 100%;
		font-size: 1.7rem;
	}
	.noticeBtnBox .noticeBtn .lowerPhrase {
		display: inline-block;
	}
@media screen and (max-width: 1200px) {
	.noticeBtnBox {
		display: block;
		margin-top: 20px;
	}
	.noticeBtnBox .noticeBtn {
		flex: 0 0 100%;
		margin-right: 0;
		margin-left: 0;
	}
}
@media screen and (max-width: 736px) {
	.noticeBtnBox {
		margin-top: 15px;
	}
	.noticeBtnBox .noticeBtn {
		margin-top: 10px;
	}
}
@media screen and (max-width: 480px) {
	.noticeBtnBox .noticeBtn [class*="generalBtnUnit"] {
		font-size: 1.5rem;
	}
}
@media screen and (max-width: 370px) {
	.noticeBtnBox .noticeBtn [class*="generalBtnUnit"] {
		font-size: 1.42rem;
	}
}
@media screen and (max-width: 359px) {
	.noticeBtnBox .noticeBtn .lowerPhrase {
		display: block;
	}
}


/* holiday | noticeWrap内
-------------------------------------------------------
[SAMPLE]
color: #bc254e;	// 赤_明るい背景用
color: #f09ab2;	// 赤_暗い背景用
color: #dec774;	// 黄_暗い背景用
---------------------------------------------------- */
	.noticeWrap .holidayWrap .holiday {
		display: block;
		width: 80%;
		color: rgba(241, 206, 216, .8);
		font-family: inherit;
		font-size: 1.4rem;
		margin: 0;
		padding: 1.5em 0;
		border: solid rgba(241, 206, 216, .8);
		border-width: 1px 0;
	}
@media screen and (max-width: 736px) {
	.noticeWrap .holidayWrap .holiday {
		font-size: 1.3rem;
	}
}


/* is_noticeWrap_all （ページ下部に共通で掲載する場合で、トップページを除外したい場合等）
------------------------------------------------------------------------ */
	/*.is_noticeWrap_all.noticeWrap .noticeItem {
	}
	.is_noticeWrap_all.noticeWrap .noticeItem {
	}*/



/* lNav_Module
---------------------------------------------------------------------------
- [.lNavWrap]は入れ子にしないことが前提です。
- [data-lnav-position=""]で余白を変更可能。
- [data-lnav-option="label"]ラベルフレーム付きはSP時に必ず1カラムになります。
- [data-lnav_name="yyy"]はラベルフレームに表示する文言を入れます。
- 全ボタンの高さを揃えたい場合はJSにて調整を。
- 細かい設定は各ページ用CSSで設定を。
---------------------------------------------------------------------------
div.lNavWrap[data-lnav-option="label" data-lnav-position="top"]>nav.lNav[data-lnav_name="●/ PAGE MENU /" aria-label="●xxxメニュー"]>ul>li.ln01*4>a>span.ln{01lNav}
------------------------------------------------------------------------ */

/* lNavWrap
---------------------------------------------------- */
	.lNavWrap {
		position: relative;
		--default-lNavWrap-li-padding-lr: 30px;
		width: 100%;
		text-align: center;
		line-height: 1.25;
		font-size: 1.0em;
		margin: 0 auto;
		/*padding: 0;*/
	}
@media screen and (min-width: 736.02px) {
	.lNavWrap {
		position: sticky;
		top: 132px;
		padding: 20px 0 20px;
		z-index: 150;
	}
	.lNavWrap.sticky {
		background: linear-gradient(to bottom, rgba(0, 0, 23 ,.6) 50%, transparent 100%);
	}
}
@media screen and (min-width: 736.02px) and (max-width: 1260px) {
	.lNavWrap {
		top: 0px;
	}
	.lNavWrap.sticky {
		background: linear-gradient(to bottom, rgba(0, 0, 23 ,.6) 50%, transparent 100%);
	}
}

	.lNavWrap::before {
		content: "";
		position: absolute;
		z-index: 0;
		top: 50%;
		left: 0;
		display: block;
		width: 100%;
		height: 1px;
		background: rgba(var(--site-themeColor-accent_1),.4);
	}
	.lNavWrap[data-lnav-position="top"] {		margin: 60px auto 100px;}
	.lNavWrap[data-lnav-position="bottom"] {	margin: 60px auto;}

	.lNavWrap:first-child {
		margin-top: 0 !important;
	}
	
	.lNavWrap ul {
		position: relative;
		z-index: 2;
		display: inline-flex;
		justify-content: center;
		flex-wrap: wrap;
		max-width: var(--site-sizeMaxWidth-M);
		margin: 0 auto;
		padding: 0;
		background: url("../images/share/bg_btn.jpg") no-repeat center center / 100% auto;
		outline: 1px solid rgba(255, 255, 255, .10);
		outline-offset: -1px;
		
		
		/*width: 100%;*/
		/*box-shadow: 0 0 20px 8px rgba(var(--site-themeColor-main),1);*/
	}
	.lNavWrap li {
		flex-grow: 0;
		display: flex;
		/*width: 33.333%;*/
		text-align: center;
		margin: 0;
		/*transition: padding .2s ease;*/
		
		/*flex-grow: 1;*/
	}
	.lNavWrap li:not(:first-child) {
		border-left: 1px solid rgba(var(--site-themeColor-base),1);
	}
	.lNavWrap li a {
		display: flex;
		justify-content: center;
		align-items: center;
		position: relative;
		z-index: 0;
		width: 100%;
		min-width: 150px;
		color: #fff;
		text-decoration: none;
		margin: 0 auto;
		padding: .18em 24px .2em 14px;
		border: 1px solid transparent;
		transition: color .18s ease-out, background .18s ease-out, border .18s ease-out, box-shadow .18s ease-out, opacity .18s ease-out;
		
		font-size: 1.2em;
	}
	.lNavWrap li:not(.is-current) a::after {
		content: "";
		display: block;
		position: absolute;
		top: 0;
		bottom: 0;
		left: auto;
		right: 5px;
		width: 0;
		height: 0;
		margin: auto;
		border-style: solid;
		border-width: 6px 5px 0px 6px;
		border-color: #fff transparent transparent transparent;
	}
	.lNavWrap li a .ln {
		display: inline-block;
		position: relative;
		z-index: 1;
	}
	.lNavWrap li a .ln .en {
		font-family: var(--site-font_family-en_1);
	}
	.lNavWrap li a .ln .sml {
		display: inline-block;
		line-height: inherit;
		color: inherit;
		font-family: inherit;
		font-size: .77em;
		margin-top: 1px;
	}
	/* -- placeholder, hover, current -- */
	.lNavWrap li a:not([href]) {
		color: rgba(255, 255, 255, .4);
		opacity: .32;
	}
	.lNavWrap li:not(.is-current) a:not([href])::after {
		opacity: 0;
	}
	@media (hover: hover) and (pointer: fine) {
		.lNavWrap li:not(.is-current) a[href]:hover {
			background: rgba(0, 0, 0, .2);
			backdrop-filter: blur(10px);
			transition: all 0.3s;
		}
	}
	.lNavWrap li:not(.is-current) a[href]:focus-visible {
			background: rgba(0, 0, 0, .2);
			backdrop-filter: blur(10px);
			transition: all 0.3s;
	}
	/*.lNavWrap li.is-current a {
		color: #191919;
		background: #fff;
		border-color: #bbb;
		transition: all .18s ease-out;
	}*/
	
@media screen and (max-width: 1400px) {
}
@media screen and (max-width: 736px) {
	.lNavWrap {
		font-size: 1.2em;
	}
	.lNavWrap[data-lnav-position="top"] {
		margin-top: 0;
		margin-bottom: var(--site-marpad-S);
	}
	.lNavWrap ul {
		display: flex;
		width: 100%;
		justify-content: space-between;
	}
	.lNavWrap li {
		width: 50%;
		padding: 4px;
		border-bottom: 1px solid rgba(var(--site-themeColor-base),1);
	}
	.lNavWrap li:not(:first-child) {		border-left: 0px solid rgba(var(--site-themeColor-base),1);	}
	.lNavWrap li:nth-of-type(2n+1) {		border-right: 1px solid rgba(var(--site-themeColor-base),1);	}
	.lNavWrap li a {
	}
	.lNavWrap li:not(.is-current) a::after {
	}
}
@media screen and (max-width: 520px) {
	.lNavWrap {
		font-size: 1.1em;
	}
	/*.lNavWrap li a {
		min-height: 80px;
	}*/
}

/* is_lNavWrap_labelFrame | SP時ラベルフレーム付き　（透過背景ver）
---------------------------------------------------- */
/*@media screen and (max-width: 736px) {
	.lNavWrap[data-lnav-option="label"] {
		width: 98%;
		font-size: 1.175em;
		padding: 0;
	}
	.lNavWrap[data-lnav-option="label"][data-lnav-position="top"] {
		padding-top:	80px;
		padding-bottom:	50px;
	}
	.lNavWrap[data-lnav-option="label"][data-lnav-position="bottom"] {
		padding-top:	80px;
		padding-bottom:	30px;
	}
	.lNavWrap[data-lnav-option="label"] .lNav {
		position: relative;
		text-align: center;
	}
	.lNavWrap[data-lnav-option="label"] .lNav::before {
		content: attr(data-lnav_name);
		display: inline-flex;
		flex-wrap: nowrap;
		justify-content: center;
		align-items: center;
		line-height: 1;
		color: #999;
		font-family: var(--site-font_family-en_1);
		font-size: 1.3rem;
		text-align: center;
		text-indent: .2em;
		letter-spacing: .2em;
		margin: auto;
		padding: 1em;
	}
	.lNavWrap[data-lnav-option="label"] ul {
		position: relative;
		width: 100%;
		background: #999;
		padding: 1.1em 0;
		border-radius: 10px;
	}
	.lNavWrap[data-lnav-option="label"] li {
		width: 94%;
		margin: 0 auto;
		padding: .3em 0;
	}
	.lNavWrap[data-lnav-option="label"] li a {
		padding: .9em 26px;
	}
}
@media screen and (max-width: 520px) {
	.lNavWrap[data-lnav-option="label"] {
		font-size: 1.1em;
	}
	.lNavWrap[data-lnav-option="label"] li a {
		min-height: 1px;
	}
}*/



/* sideNavWrap
---------------------------------------------------------------------------*/
.sideNavWrap {
	display: none;
}
/*@media screen and (min-width: 1260.02px) {
	.sideNavWrap {
		display: block;
		position: absolute;
		height: 100% !important;
	}
	.sideNavWrap ul {
		font-size: 0.8vw;
		position: sticky;
		z-index: 1000;
		top: 150px;
		padding: 0 0 3em;
	}
	.sideNavWrap ul li {
		margin-bottom: 10px;
	}
	.sideNavWrap ul li a {
		position: relative;
		display: flex;
		align-items: center;
		justify-content: flex-start;
		line-height: 1.4;
		column-gap: 5px;
		color: rgba(255, 255, 255, .9);
		padding-left: 8px;
		border-left: 5px solid rgba(var(--site-themeColor-accent_2),1);
		border-left-width: 0px;
		transition: border 0.1s ease, color 0.3s ease;
	}
	.sideNavWrap ul li a .inbl {
		display: block;
	}
	.sideNavWrap ul li.is-current a {
		color: rgba(var(--site-themeColor-accent_2),1);
		border-left-width: 3px;
	}
}*/

/* M_separatorWrapper | 親の幅にかかわらず、ウィンドウ幅いっぱいのセパレータラッパー
---------------------------------------------------------------------------
- 例：
header.M_separatorWrapper_isImg>(div.M_separatorWrapperContentBox>div.heading>(small.smlTxt)+(h3.hTxt))+(p.M_separatorWrapper_isImg_PicBox>(span.pic>img[src][decoding="async"][alt][width][height])+(small.imgcapkeep))
header.M_separatorWrapper_isBg>(div.M_separatorWrapperContentBox>div.heading>(small.smlTxt)+(h3.hTxt))
------------------------------------------------------------------------ */
	[class*="M_separatorWrapper_is"] {
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		align-items: center;
		position: relative;
		z-index: 0;
		line-height: 1.75;
		margin-left:	calc(-50vw + 50%);
		margin-right:	calc(-50vw + 50%);
		padding: 2em calc(1em + 9px); /* 上下はキャプションを考慮。左右はwindowsのスライドバー幅を考慮（ざっくり対応ver ※厳密にする場合はJSで） */
	}
	.M_separatorWrapper_isImg {
		color: #fff;
		background: #000;
	}
	.M_separatorWrapper_isBg {
		color: #fff;
		background: #000 center center / cover no-repeat;
		/*background-image: url("xxx"); 各ページ用CSSで設定 */
	}
	/* キャプション */
	.M_separatorWrapper_isImg_PicBox .imgcapkeep,
	.M_separatorWrapper_isBg::after {
		/*content: "image photo"; 各ページ用CSSで設定 */
		padding: 8px calc(10px + 9px); /* 左右はwindowsのスライドバー幅を考慮（ざっくり対応ver ※厳密にする場合はJSで） */
		opacity: .85;
	}
	/* コンテンツエリア
	--------------------------------- */
	.M_separatorWrapperContentBox {
		position: relative;
		z-index: 1;
	}
	.M_separatorWrapperContentBox .heading {
		width: 100%;
		font-size: 2.6rem;
		text-align: center;
		letter-spacing: .07em;
	}
	.M_separatorWrapperContentBox .heading .smlTxt,
	.M_separatorWrapperContentBox .heading .hTxt {
		display: block;
		width: 100%;
		line-height:	inherit;
		color:			inherit;
		font-family:	inherit;
		font-size:		inherit;
/*		padding: 0 1em;*/
	}
	.M_separatorWrapperContentBox .heading .smlTxt {
		font-size: .538em;
		letter-spacing: .125em;
	}
	.M_separatorWrapperContentBox .heading .hTxt::after {
		content: "";
		display: block;
		width: 102px;
		height: 1px;
		background: #fff;
		margin: .75em auto 0;
	}
	/* HTML画像配置
	--------------------------------- */
	.M_separatorWrapper_isImg_PicBox,
	.M_separatorWrapper_isImg_PicBox .pic,
	.M_separatorWrapper_isImg_PicBox .pic img {
		position: absolute;
		top: 0;
		left: 0;
		z-index: 0;
		width: 100%;
		height: 100%;
	}
	.M_separatorWrapper_isImg_PicBox .pic img {
		object-fit: cover;
	}
@media screen and (max-width: 1200px) {
	[class*="M_separatorWrapper_is"] {
		min-height: 210px;
		line-height: 1.5;
	}
	.M_separatorWrapperContentBox .heading {
		font-size: 2.15rem;
	}
}
@media screen and (max-width: 736px) {
	[class*="M_separatorWrapper_is"] {
		min-height: 160px;
	}
	.M_separatorWrapperContentBox .heading {
		font-size: 1.85rem;
		letter-spacing: .04em;
	}
	.M_separatorWrapperContentBox .heading .smlTxt {
		font-size: .6em;
	}
}





/* ▼━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
-----------デジタルライブラリーモーダル----------- */
/* ------------------------------------------------------------------------
/* =======================================================================================
	COMMON
======================================================================================= */
/* ------------------------------------------------------------------------
 decoLine01
------------------------------------------------------------------------ */
	.guideSection .decoLine01 {
		border:0 solid #666;
		border-width:1px 0;
	}
/* ------------------------------------------------------------------------
 enTtl
------------------------------------------------------------------------ */
	.guideSection .enTtl {
		text-align: center;
		--M-fluidFontSize-max-fontsize: 30;
		--M-fluidFontSize-min-fontsize: 20;
		--M-fluidFontSize-max-viewport: 1920;
		--M-fluidFontSize-min-viewport: 1200;
		min-height: 0.001vw; /* for safari | font-sizeにclamp()使用時必須 */
		font-size: clamp(
			calc(var(--M-fluidFontSize-min-fontsize) * .1rem),
			calc(calc(var(--M-fluidFontSize-min-fontsize) * .1rem) + (1vw - calc(var(--M-fluidFontSize-min-viewport) / 100 * .1rem)) * (100 * (var(--M-fluidFontSize-max-fontsize) - var(--M-fluidFontSize-min-fontsize)) / (var(--M-fluidFontSize-max-viewport) - var(--M-fluidFontSize-min-viewport)))),
			calc(var(--M-fluidFontSize-max-fontsize) * .1rem)
		);
		font-family: var(--site-font_family-en_1);
		color: rgba(var(--site-themeColor-main), 1);
		line-height: 1.2;
	}
	
@media screen and (max-width: 1200px) { /*{belowTB}*/
	.guideSection .enTtl {
		text-align: center;
		--M-fluidFontSize-max-fontsize: 20;
		--M-fluidFontSize-min-fontsize: 25;
		--M-fluidFontSize-max-viewport: 1200;
		--M-fluidFontSize-min-viewport: 736;
	}
}	

/* ------------------------------------------------------------------------
	 myPageSection
------------------------------------------------------------------------ */
	.myPageSection .myPageWrap {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		align-items: center;
	}
	.myPageSection .myPageWrap .txtBox {
		width: 50%;
	}
	.myPageSection .myPageWrap .picBox {
		width: 40%;
	}
	
/*txtBox*/
	.myPageSection .myPageWrap .txtBox .decoLine01 {
		padding:1em 0;
	}
	.myPageSection .myPageWrap .txtBox .jaTtl {
		position: relative;
		margin-bottom:1.5em;
		--M-fluidFontSize-max-fontsize: 26;
		--M-fluidFontSize-min-fontsize: 20;
		--M-fluidFontSize-max-viewport: 1920;
		--M-fluidFontSize-min-viewport: 736;
		min-height: 0.001vw; /* for safari | font-sizeにclamp()使用時必須 */
		font-size: clamp(
			calc(var(--M-fluidFontSize-min-fontsize) * .1rem),
			calc(calc(var(--M-fluidFontSize-min-fontsize) * .1rem) + (1vw - calc(var(--M-fluidFontSize-min-viewport) / 100 * .1rem)) * (100 * (var(--M-fluidFontSize-max-fontsize) - var(--M-fluidFontSize-min-fontsize)) / (var(--M-fluidFontSize-max-viewport) - var(--M-fluidFontSize-min-viewport)))),
			calc(var(--M-fluidFontSize-max-fontsize) * .1rem)
		);
		font-family: var(--site-font_family-serif);
	}	
	.myPageSection .myPageWrap .txtBox .jaTtl::after {
		position: absolute;
		content: "";
		left: 50%;
		transform: translateX(-50%);
		bottom: -1.2em;
		width: 40px;
		height: 1px;
		background: #555;
	}	
	.myPageSection .myPageWrap .txtBox .txt {
		padding-top:1.2em;
		text-align: center;
	}	
	
@media screen and (max-width: 1200px) { /*{belowTB}*/
	.myPageSection .contbox {
		padding: clamp(40px, (40 / 736 * 100vw), 60px) ;
	}
}
@media screen and (max-width: 900px) {
	.myPageSection .contbox {
		padding: clamp(30px, (30 / 480 * 100vw), 40px) ;
	}
	.myPageSection .myPageWrap .txtBox {
		width: 100%;
	}
	.myPageSection .myPageWrap .picBox {
		width: 100%;
		margin-top:1.5em;
	}
	.myPageSection .myPageWrap .picBox p {
		margin-left:auto;
		margin-right:auto;
		max-width:300px;
	}
}
@media screen and (max-width: 736px) { /*{SP}*/
	.myPageSection .contbox {
		padding: 0;
	}
}






/* ------------------------------------------------------------------------
 flowSection
------------------------------------------------------------------------ */
	.flowSection {
		 background: #eee;
		padding-top: var(--site-marpad-S) !important;
	}
	.flowSection .decoLine01 {
		padding:1.6em 3em;
	}
	
	.flowSection [class*="generalBtnUnit"][href] {
		text-decoration: none;
	}
	

@media screen and (max-width: 736px) { /*{SP}*/
	.flowSection .decoLine01 {
		padding:1.6em 1em;
	}

}

/*flowWrap-----------------------------*/
	.flowWrap {
		display: flex;
		flex-wrap: wrap;
		background: #fff;
	}
	.flowWrap .headingBox {
		width: 32%;
		padding: clamp(30px, (30 / 1200 * 100vw), 40px);
	}
	.flowWrap .detailBox {
		width: 68%;
		padding: clamp(30px, (30 / 1200 * 100vw), 40px);
	}
	
@media screen and (max-width: 1050px) { /*{belowTBs}*/
	.flowWrap .headingBox {
		width: 100%;
		padding: clamp(10px, (10 / 736 * 100vw), 20px) 20px;
	}
	.flowWrap .detailBox {
		width: 100%;
	}
}	
@media screen and (max-width: 736px) { /*{SP}*/
	.flowWrap .detailBox {
		padding: clamp(25px, (25 / 736 * 100vw), 30px);
	}
}


	
/*headingBox---*/
	.flowWrap .headingBox {
		display: flex;
		align-items: center;
		color:#fff;
		background: rgba(var(--site-themeColor-main),1);
	}
	.flowWrap .headingBox .headingUnit {
		display: flex;
		align-items: center;
		width: 100%;
	}
	.flowWrap .headingBox .headingUnit .num {
		margin-right:0.3em;
		--M-fluidFontSize-max-fontsize: 60;
		--M-fluidFontSize-min-fontsize: 50;
		--M-fluidFontSize-max-viewport: 1600;
		--M-fluidFontSize-min-viewport: 1050;
		min-height: 0.001vw; /* for safari | font-sizeにclamp()使用時必須 */
		font-size: clamp(
			calc(var(--M-fluidFontSize-min-fontsize) * .1rem),
			calc(calc(var(--M-fluidFontSize-min-fontsize) * .1rem) + (1vw - calc(var(--M-fluidFontSize-min-viewport) / 100 * .1rem)) * (100 * (var(--M-fluidFontSize-max-fontsize) - var(--M-fluidFontSize-min-fontsize)) / (var(--M-fluidFontSize-max-viewport) - var(--M-fluidFontSize-min-viewport)))),
			calc(var(--M-fluidFontSize-max-fontsize) * .1rem)
		);
		font-family: var(--site-font_family-serif);
		font-style: italic;
		line-height: 1;
		color: rgba(var(--site-variationColor-gold_2), 1);
	}
	.flowWrap .headingBox .headingUnit .ttl {
		font-size:1.2em;
		font-family: var(--site-font_family-serif);
		line-height: 1.6;
	}
	
/*detailBox---*/
	.flowWrap .detailBox {
		display: flex;
		flex-wrap: wrap;
		align-items: center;
	}
	.flowWrap .detailBox .detailUnit {
		width: 100%;
		line-height: 1.6;
	}



/*個別-----*/
/*01*/
	.flowWrap.step01 .detailBox .detailElement {
		display: flex;
		justify-content: space-between;
		align-items: center;
	}
	.flowWrap.step01 .detailBox .detailElement .txt {
		padding-right:2em;
	}
	.flowWrap.step01 .detailBox .detailElement .btn_req .generalBtnUnit {
		width: 100%;
		min-width: 250px;
		padding-top:20px;
		padding-bottom:20px;
		margin-right:0;
		margin-left:auto;
		--M-fluidFontSize-max-fontsize: 14;
		--M-fluidFontSize-min-fontsize: 12;
	}

@media screen and (max-width: 736px) { /*{SP}*/
	.flowWrap.step01 .detailBox .detailElement {
		flex-wrap: wrap;
	}
	.flowWrap.step01 .detailBox .detailElement .txt {
		width: 100%;
		padding-right: 0em;
		margin-bottom:1em;
	}
	.flowWrap.step01 .detailBox .detailElement .btn_req {
		width: 100%;
	}
	.flowWrap.step01 .detailBox .detailElement .btn_req .generalBtnUnit {
		margin-right:auto;
		min-width:auto;

	}
}	

/*03*/
	.flowWrap.step03 .detailBox .detailElement {
		display: flex;
		justify-content: space-between;
		align-items: center;
	}
	.flowWrap.step03 .detailBox .detailElement .txt {
		padding-right:2em;
	}
	.flowWrap.step03 .detailBox .detailElement .pic {
		min-width:300px;
	}
	
@media screen and (max-width: 736px) { /*{SP}*/
	.flowWrap.step03 .detailBox .detailElement {
		flex-wrap: wrap;
	}
	.flowWrap.step03 .detailBox .detailElement .txt {
		width: 100%;
		margin-bottom:1em;
		padding-right:0;

	}
	.flowWrap.step03 .detailBox .detailElement .pic {
		width: 100%;
		min-width:auto;
		text-align: center;
	}
}


/*04*/
	.flowWrap.step04 .detailBox .detailElement {
		display: flex;
		justify-content: space-between;
		align-items: center;
	}
	.flowWrap.step04 .detailBox .detailElement .txt {
		padding-right:2em;
	}
	.flowWrap.step04 .detailBox .detailElement .pic {
		min-width:300px;
	}
	
@media screen and (max-width: 736px) { /*{SP}*/
	.flowWrap.step04 .detailBox .detailElement {
		flex-wrap: wrap;
	}
	.flowWrap.step04 .detailBox .detailElement .txt {
		width: 100%;
		margin-bottom:1em;
		padding-right:0;
	}
	.flowWrap.step04 .detailBox .detailElement .pic {
		width: 100%;
		min-width:auto;
		text-align: center;
	}
}


/*arrow	*/
	.flowWrap:not(:last-of-type) {
	  position: relative;
	  margin-bottom:60px;
	}
	.flowWrap:not(:last-of-type)::after {
	  content: "";
	  display: block;
	  position: absolute;
	  bottom: -40px;
	  left: 50%;
	  width: 0;
	  height: 0;
	  transform: translateX(-50%);
	  border: 30px solid transparent;
	  border-top: 20px solid #373b3c;
	  border-bottom-width: 0;
	}

/* ▲━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ -->














/* ***************************************************************************************************
	COMMON_LAST
*************************************************************************************************** */
/* ============================================================================
	etc
============================================================================ */
/* margin, padding | ~=スペース区切り毎の正確な値 | mt,mr,mb,ml,pt,pr,pb,pl,ptb,plr */
[data-marpad~="mtXXXL"]	{margin-top:var(--site-marpad-XXXL)}	[data-marpad~="mrXXXL"]	{margin-right:var(--site-marpad-XXXL)}	[data-marpad~="mbXXXL"]	{margin-bottom:var(--site-marpad-XXXL)}	[data-marpad~="mlXXXL"]	{margin-left:var(--site-marpad-XXXL)}		[data-marpad~="ptXXXL"]	{padding-top:var(--site-marpad-XXXL)}	[data-marpad~="prXXXL"]	{padding-right:var(--site-marpad-XXXL)}	[data-marpad~="pbXXXL"]	{padding-bottom:var(--site-marpad-XXXL)}	[data-marpad~="plXXXL"]	{padding-left:var(--site-marpad-XXXL)}	[data-marpad~="ptbXXXL"]	{padding-top:var(--site-marpad-XXXL);padding-bottom:var(--site-marpad-XXXL)}	[data-marpad~="plrXXXL"]	{padding-right:var(--site-marpad-XXXL);padding-left:var(--site-marpad-XXXL)}
[data-marpad~="mtXXL"]	{margin-top:var(--site-marpad-XXL)}		[data-marpad~="mrXXL"]	{margin-right:var(--site-marpad-XXL)}	[data-marpad~="mbXXL"]	{margin-bottom:var(--site-marpad-XXL)}	[data-marpad~="mlXXL"]	{margin-left:var(--site-marpad-XXL)}		[data-marpad~="ptXXL"]	{padding-top:var(--site-marpad-XXL)}	[data-marpad~="prXXL"]	{padding-right:var(--site-marpad-XXL)}	[data-marpad~="pbXXL"]	{padding-bottom:var(--site-marpad-XXL)}		[data-marpad~="plXXL"]	{padding-left:var(--site-marpad-XXL)}	[data-marpad~="ptbXXL"]		{padding-top:var(--site-marpad-XXL);padding-bottom:var(--site-marpad-XXL)}		[data-marpad~="plrXXL"]		{padding-right:var(--site-marpad-XXL);padding-left:var(--site-marpad-XXL)}
[data-marpad~="mtXL"]	{margin-top:var(--site-marpad-XL)}		[data-marpad~="mrXL"]	{margin-right:var(--site-marpad-XL)}	[data-marpad~="mbXL"]	{margin-bottom:var(--site-marpad-XL)}	[data-marpad~="mlXL"]	{margin-left:var(--site-marpad-XL)}			[data-marpad~="ptXL"]	{padding-top:var(--site-marpad-XL)}		[data-marpad~="prXL"]	{padding-right:var(--site-marpad-XL)}	[data-marpad~="pbXL"]	{padding-bottom:var(--site-marpad-XL)}		[data-marpad~="plXL"]	{padding-left:var(--site-marpad-XL)}	[data-marpad~="ptbXL"]		{padding-top:var(--site-marpad-XL);padding-bottom:var(--site-marpad-XL)}		[data-marpad~="plrXL"]		{padding-right:var(--site-marpad-XL);padding-left:var(--site-marpad-XL)}
[data-marpad~="mtL"]	{margin-top:var(--site-marpad-L)}		[data-marpad~="mrL"]	{margin-right:var(--site-marpad-L)}		[data-marpad~="mbL"]	{margin-bottom:var(--site-marpad-L)}	[data-marpad~="mlL"]	{margin-left:var(--site-marpad-L)}			[data-marpad~="ptL"]	{padding-top:var(--site-marpad-L)}		[data-marpad~="prL"]	{padding-right:var(--site-marpad-L)}	[data-marpad~="pbL"]	{padding-bottom:var(--site-marpad-L)}		[data-marpad~="plL"]	{padding-left:var(--site-marpad-L)}		[data-marpad~="ptbL"]		{padding-top:var(--site-marpad-L);padding-bottom:var(--site-marpad-L)}			[data-marpad~="plrL"]		{padding-right:var(--site-marpad-L);padding-left:var(--site-marpad-L)}
[data-marpad~="mtM"]	{margin-top:var(--site-marpad-M)}		[data-marpad~="mrM"]	{margin-right:var(--site-marpad-M)}		[data-marpad~="mbM"]	{margin-bottom:var(--site-marpad-M)}	[data-marpad~="mlM"]	{margin-left:var(--site-marpad-M)}			[data-marpad~="ptM"]	{padding-top:var(--site-marpad-M)}		[data-marpad~="prM"]	{padding-right:var(--site-marpad-M)}	[data-marpad~="pbM"]	{padding-bottom:var(--site-marpad-M)}		[data-marpad~="plM"]	{padding-left:var(--site-marpad-M)}		[data-marpad~="ptbM"]		{padding-top:var(--site-marpad-M);padding-bottom:var(--site-marpad-M)}			[data-marpad~="plrM"]		{padding-right:var(--site-marpad-M);padding-left:var(--site-marpad-M)}
[data-marpad~="mtS"]	{margin-top:var(--site-marpad-S)}		[data-marpad~="mrS"]	{margin-right:var(--site-marpad-S)}		[data-marpad~="mbS"]	{margin-bottom:var(--site-marpad-S)}	[data-marpad~="mlS"]	{margin-left:var(--site-marpad-S)}			[data-marpad~="ptS"]	{padding-top:var(--site-marpad-S)}		[data-marpad~="prS"]	{padding-right:var(--site-marpad-S)}	[data-marpad~="pbS"]	{padding-bottom:var(--site-marpad-S)}		[data-marpad~="plS"]	{padding-left:var(--site-marpad-S)}		[data-marpad~="ptbS"]		{padding-top:var(--site-marpad-S);padding-bottom:var(--site-marpad-S)}			[data-marpad~="plrS"]		{padding-right:var(--site-marpad-S);padding-left:var(--site-marpad-S)}
[data-marpad~="mtXS"]	{margin-top:var(--site-marpad-XS)}		[data-marpad~="mrXS"]	{margin-right:var(--site-marpad-XS)}	[data-marpad~="mbXS"]	{margin-bottom:var(--site-marpad-XS)}	[data-marpad~="mlXS"]	{margin-left:var(--site-marpad-XS)}			[data-marpad~="ptXS"]	{padding-top:var(--site-marpad-XS)}		[data-marpad~="prXS"]	{padding-right:var(--site-marpad-XS)}	[data-marpad~="pbXS"]	{padding-bottom:var(--site-marpad-XS)}		[data-marpad~="plXS"]	{padding-left:var(--site-marpad-XS)}	[data-marpad~="ptbXS"]		{padding-top:var(--site-marpad-XS);padding-bottom:var(--site-marpad-XS)}		[data-marpad~="plrXS"]		{padding-right:var(--site-marpad-XS);padding-left:var(--site-marpad-XS)}
[data-marpad~="mtXXS"]	{margin-top:var(--site-marpad-XXS)}		[data-marpad~="mrXXS"]	{margin-right:var(--site-marpad-XXS)}	[data-marpad~="mbXXS"]	{margin-bottom:var(--site-marpad-XXS)}	[data-marpad~="mlXXS"]	{margin-left:var(--site-marpad-XXS)}		[data-marpad~="ptXXS"]	{padding-top:var(--site-marpad-XXS)}	[data-marpad~="prXXS"]	{padding-right:var(--site-marpad-XXS)}	[data-marpad~="pbXXS"]	{padding-bottom:var(--site-marpad-XXS)}		[data-marpad~="plXXS"]	{padding-left:var(--site-marpad-XXS)}	[data-marpad~="ptbXXS"]		{padding-top:var(--site-marpad-XXS);padding-bottom:var(--site-marpad-XXS)}		[data-marpad~="plrXXS"]		{padding-right:var(--site-marpad-XXS);padding-left:var(--site-marpad-XXS)}

[data-marpad~="mt1px"]	{margin-top:1px}	[data-marpad~="mr1px"]	{margin-right:1px}	[data-marpad~="mb1px"]	{margin-bottom:1px}	[data-marpad~="ml1px"]	{margin-left:1px}		[data-marpad~="pt1px"]	{padding-top:1px}	[data-marpad~="pr1px"]	{padding-right:1px}	[data-marpad~="pb1px"]	{padding-bottom:1px}	[data-marpad~="pl1px"]	{padding-left:1px}		[data-marpad~="ptb1px"]	{padding-top:1px;padding-bottom:1px}	[data-marpad~="plr1px"]	{padding-right:1px;padding-left:1px}
[data-marpad~="mt1em"]	{margin-top:1em}	[data-marpad~="mr1em"]	{margin-right:1em}	[data-marpad~="mb1em"]	{margin-bottom:1em}	[data-marpad~="ml1em"]	{margin-left:1em}		[data-marpad~="pt1em"]	{padding-top:1em}	[data-marpad~="pr1em"]	{padding-right:1em}	[data-marpad~="pb1em"]	{padding-bottom:1em}	[data-marpad~="pl1em"]	{padding-left:1em}		[data-marpad~="ptb1em"]	{padding-top:1em;padding-bottom:1em}	[data-marpad~="plr1em"]	{padding-right:1em;padding-left:1em}
[data-marpad~="mt2em"]	{margin-top:2em}	[data-marpad~="mr2em"]	{margin-right:2em}	[data-marpad~="mb2em"]	{margin-bottom:2em}	[data-marpad~="ml2em"]	{margin-left:2em}		[data-marpad~="pt2em"]	{padding-top:2em}	[data-marpad~="pr2em"]	{padding-right:2em}	[data-marpad~="pb2em"]	{padding-bottom:2em}	[data-marpad~="pl2em"]	{padding-left:2em}		[data-marpad~="ptb2em"]	{padding-top:2em;padding-bottom:2em}	[data-marpad~="plr2em"]	{padding-right:2em;padding-left:2em}
[data-marpad~="mt0"]	{margin-top:0}		[data-marpad~="mr0"]	{margin-right:0}	[data-marpad~="mb0"]	{margin-bottom:0}	[data-marpad~="ml0"]	{margin-left:0}			[data-marpad~="pt0"]	{padding-top:0}		[data-marpad~="pr0"]	{padding-right:0}	[data-marpad~="pb0"]	{padding-bottom:0}		[data-marpad~="pl0"]	{padding-left:0}		[data-marpad~="ptb0"]	{padding-top:0;padding-bottom:0}		[data-marpad~="plr0"]	{padding-right:0;padding-left:0}
