@charset "utf-8";
/* *************************************************************************************************************
 *	file name:		base.css
 *	Alteration:		2023.08
 *	style info:		物件用ベースCSS（モジュール、サイトフォーマット）
----------------------------------------------------------------------------------------------------------------
 *	< load >
 *	< COMMON > - Reset - CssCustomProperties - Setting - AddParts - OtherModule - Etc
 *	< @KEYFRAMES >
 *	< BASE > - NOSCRIPT - SITE_WRAPPER - SITE_HEADER - SITE_FOOTER
----------------------------------------------------------------------------------------------------------------
 * {A}	
----------------------------------------------------------------------------------------------------------------
 * 01	カスタムプロパティ名「--ファイル名-要素クラス名等-内容-種類: xxx;」（例：--base-pageTheme-color-light: #ccc;）
----------------------------------------------------------------------------------------------------------------
 * PCm	= 1390 以下
 * PCs	= 1200 以下
 * TB	= 900 以下
 * SP	= 600 以下
 * SPs	= 480 以下
 * SPss	= 359.08 以下
----------------------------------------------------------------------------------------------------------------
@media screen and (max-width: 1390px) {}
@media screen and (max-width: 1200px) {}
@media screen and (min-width: 900.02px) and (max-width: 1200px) {}
@media screen and (max-width: 900px) {}
@media screen and (max-width: 600px) {}
@media screen and (max-width: 480px) {}
@media screen and (max-width: 359.08px) {}
************************************************************************************************************* */

/* ***************************************************************************************************
	load | @importより上にコード記述不可。
*************************************************************************************************** */
/* ----------------------------------------------------------------------------
 * フォント読込はHTMLにて。
-------------------------------------------------------------------------------
 * [ Noto Serif JP (100,...,900) ]
 * [ Noto Serif (100,...,900) ]
  * [ Noto Sans JP (300,400) ]
 * [ Noto Sans (100,...,900) ]
  * [ Didact Gothic (400) ]
 * [ Playfair Display (400) ]
 * [ Oswald(300) ]
 * [ YakuHanJP ]
 * [ YakuHanMP ]
 *
 * URL	:
 * 		https://fonts.google.com/share?selection.family=Noto+Sans+JP:wght@100..900|Noto+Sans:ital,wght@0,100..900;1,100..900|Playfair+Display|Noto+Serif+JP:wght@300;400|Noto+Serif:wght@100..900
 * 		https://yakuhanjp.qranoko.jp
 * CODE	:
 * 		font-family: 'Noto Sans JP', 'Noto Sans', sans-serif;
 * 		font-family: 'Noto Serif JP', 'Noto Serif', serif;
 * 		font-family: "Didact Gothic", YakuHanJP, "Noto Sans JP", "Noto Sans", sans-serif;
 * 		font-family: "Playfair Display", serif;
 * 		font-family: "Oswald", YakuHanJP, "Noto Sans JP", "Noto Sans", sans-serif;
 * 		font-family: YakuHanJP, sans-serif;
 * 		font-family: YakuHanMP, serif;
 * 		font-weight: 400, 500, 600;
 */


/* ***************************************************************************************************
	COMMON
*************************************************************************************************** */

/* ============================================================================
	Reset 															2023.08
============================================================================ */
	/*details, main, menu, summary {display:block;}*/			/* for IE11 */
	/*table {border-collapse:collapse;border-spacing:0;}*/
	/*img {vertical-align:bottom;}*/							/* 余白対策 */
* {box-sizing:inherit;padding:0;margin:0;}
html {box-sizing:border-box;-webkit-text-size-adjust:100%;/*overflow-y:scroll;*/}
::before, ::after {box-sizing:inherit;text-decoration:inherit;vertical-align:inherit;}
ul, ol {list-style: none;}
i, em {font-style:normal;}
h1, h2, h3, h4, h5, h6, b, strong {font-weight: inherit;}

:where(.siteWrap) sub,
:where(.siteWrap) sup {min-height:0.001vw;font-size:max(.9rem,63%);line-height:0;position:relative;vertical-align:baseline;}		/* for safari | font-sizeにclamp()使用時必須 */
:where(.siteWrap) sub {bottom:-.25em;}
:where(.siteWrap) sup {top:-.5em;}
:where(.siteWrap small) sub {bottom:-.05em; font-size:max(.9rem,.91em);}
:where(.siteWrap small) sup {top:-.1em; font-size:max(.9rem,.91em);}


/* ============================================================================
	CssCustomProperties 											2022.04
============================================================================ */
/* SITE
---------------------------------------------------- */
	:root {
		/* フォント */
		--site-font_family-sans: YakuHanJP, "Noto Sans JP", "Noto Sans", YuGothic,'Hiragino Kaku Gothic ProN','Yu Gothic',Meiryo,sans-serif;
		--site-font_family-serif: YakuHanMP, 'Noto Serif JP', 'Noto Serif', YuMincho,'Hiragino Mincho ProN','Yu Mincho',serif;	
		--site-font_family-en_1: "Playfair Display", var(--site-font_family-serif);
		--site-font_family-en_2: "Didact Gothic", var(--site-font_family-sans);
		--site-font_family-en_3: "Oswald", var(--site-font_family-sans);
		--site-font_family-basic: var(--site-font_family-sans);
		--site-font_family-caption: var(--site-font_family-sans);
		/*--site-font_family-caption: var(--site-font_family-sans);*/
		
		/* テーマカラー */
		--site-themeColor-base:						255, 255, 255;	/* rgb | #ffffff| White */
		--site-themeColor-base_text:				0, 0, 0;	/* rgb | #000 | Black */ /* ※ -base を背景に使った場合の文字色 */
		
		--site-themeColor-main:						url("../images/share/bg01.jpg") top left / 100% auto repeat;
		--site-themeColor-main_text:				0, 0, 0;	/* rgb | #000 | Black */
		
		--site-themeColor-accent_1:					url("../images/share/bg02.jpg") top left / 100% auto repeat;
		--site-themeColor-accent_1_text:			255, 255, 255;	/* rgb | #ffffff | White */
		
		--site-themeColor-accent_2:					url("../images/share/bg03.jpg") top left / 100% auto repeat;
		--site-themeColor-accent_2_text:			0, 0, 0;	/* rgb | #000 | Black */
		
		/*--site-themeColor-text_dark:				0, 0, 0;*/		/* rgb | #000000 | Black */
		/*--site-themeColor-text_darkGray:			74, 74, 74;	*/	/* rgb | #4a4a4a | Dark_gray */
		
		/* カラーバリエーション */
		--site-variationColor-blackish:				0, 0, 0;		/* rgb | #000000 | 黒系 */
		--site-variationColor-whitish:				255, 255, 255;	/* rgb | #ffffff | 白系 */
		--site-variationColor-yellow:				194, 154, 36;	/* rgb | #c29a24 | 黄色系 */
		--site-variationColor-yellow_light:			220, 191, 100;	/* rgb | #dcbf64 | 黄色系 */
		--site-variationColor-yellow_dark:			152, 114, 24;	/* rgb | #987218 | 黄色系 */
		/*--site-variationColor-gradient_brown:		linear-gradient(to right, #997e5e 0%, #a98b69 50%, #997e5e 100%);*/ /* 茶グラデ */
		--site-variationColor-gray:					153, 153, 153;	/* rgb | #999999 | gray */
		--site-variationColor-darkGray:				80, 80, 80;		/* rgb | #505050 | darkGray */
		
		/* リンク用カラー（特定のボタンカラー） */
		--site-specificColor-req:					174, 156, 101;	/* rgb | #ae9c65 | 資料 */
		--site-specificColor-res:					194, 154, 36;	/* rgb | #c29a24 | 来場 */
		--site-specificColor-lim:					167, 110, 102;		/* rgb | #000000 | 限定 */
		--site-specificColor-gMap:					0, 0, 0;		/* rgb | #000000 | gMap */
		--site-specificColor-req_2:					167, 110, 102;	/* rgb | #a76e66 | 資料_2 */
		--site-specificColor-res_2:					167, 110, 102;	/* rgb | #a76e66 | 来場_2 */
		
		--site-specificColor-req-active:			209, 195, 154;	/* rgb | #d1c39a | 資料 active */
		--site-specificColor-res-active:			224, 189, 87;	/* rgb | #e0bd57 | 来場 active */
		--site-specificColor-lim-active:			196, 91, 80;		/* rgb | #555555 | 限定 active */
		--site-specificColor-gMap-active:			92, 92, 92;		/* rgb | #5c5c5c | gMap active */
		--site-specificColor-req_2-active:			196, 91, 80;	/* rgb | #c45b50 | 資料_2 active */
		--site-specificColor-res_2-active:			196, 91, 80;	/* rgb | #c45b50 | 来場_2 active */
		
		/* 幅 */
		--site-sizeContentWide-L:	100%;
		--site-sizeContentWide-XM:	94%;
		--site-sizeContentWide-M:	88%;	/* Mは600以下からSと同じ値になる */
		--site-sizeContentWide-S:	82.5%;
		--site-sizeMaxWidth-XL:		1920px;
		--site-sizeMaxWidth-L:		1600px;
		--site-sizeMaxWidth-XM:		1400px;
		--site-sizeMaxWidth-M:		1200px;
		--site-sizeMaxWidth-MM:		1100px;
		--site-sizeMaxWidth-S:		1000px;
		--site-sizeMaxWidth-XS:		 900px;
		--site-sizeMaxWidth-XXS:	 800px;
		--site-sizeMaxWidth-XXXS:	 700px;
		
		/* 余白 */
		--site-marpad-XXXL:			200px;
		--site-marpad-XXL:			150px;		/* 下げ幅大 */
		--site-marpad-XL:			120px;
		--site-marpad-L:			100px;
		--site-marpad-M:			80px;
		--site-marpad-S:			60px;
		--site-marpad-XS:			40px;
		--site-marpad-XXS:			30px;
		/*--site-marpad-XL-flexible:	100px;
		--site-marpad-L-flexible:	80px;
		--site-marpad-M-flexible:	60px;
		--site-marpad-S-flexible:	40px;*/
	/*	--site-marpad-XXXL:			clamp(140px, (140 / 1390 * 100%), 160px);
		--site-marpad-XXL:			clamp(120px, (120 / 1390 * 100%), 140px);
		--site-marpad-XL:			clamp(100px, (100 / 1390 * 100%), 120px);
		--site-marpad-L:			clamp(80px, (80 / 1390 * 100%), 100px);
		--site-marpad-M:			clamp(60px, (60 / 1390 * 100%), 80px);
		--site-marpad-S:			clamp(40px, (40 / 1390 * 100%), 50px);
		--site-marpad-XS:			clamp(20px, (20 / 1390 * 100%), 30px);
		--site-marpad-XXS:			clamp(15px, (15 / 1390 * 100%), 20px);*/
		
		/* スティッキー要素の高さ・余白 ※数値は要確認（ざっくり対応ver ※厳密にする場合はJSで） */
		--site-stickyHeader-height:			140px;
		/*--site-stickyConversionSP-height:	0px;*/
	}
	/* hover, current | リンク用カラー（特定のボタンカラー）一括設定する場合はここで設定 */
	/*@media (hover: hover) and (pointer: fine) {
		a[href]:hover {
			--site-specificColor-req: var(--site-specificColor-req-active);
			--site-specificColor-res: var(--site-specificColor-res-active);
			--site-specificColor-lim: var(--site-specificColor-lim-active);
			--site-specificColor-gMap: var(--site-specificColor-gMap-active);
		}
	}
	.is_current > a[href] {
			--site-specificColor-req: var(--site-specificColor-req-active);
			--site-specificColor-res: var(--site-specificColor-res-active);
			--site-specificColor-lim: var(--site-specificColor-lim-active);
			--site-specificColor-gMap: var(--site-specificColor-gMap-active);
	}*/
	
@media print, screen and (max-width: 1600px) { /*{belowPCs}*/
	:root {
		/* 余白 */
		--site-marpad-XXXL:			clamp(150px, (150 / 1400 * 100vw), 200px);
		--site-marpad-XXL:			clamp(120px, (120 / 1400 * 100vw), 150px);
		--site-marpad-XL:			clamp(100px, (100 / 1400 * 100vw), 120px);
		--site-marpad-L:			clamp(80px, (80 / 1400 * 100vw), 100px);
		--site-marpad-M:			clamp(70px, (70 / 1400 * 100vw), 80px);
		--site-marpad-S:			clamp(50px, (50 / 1400 * 100vw), 60px);	
	}
}	

@media screen and (max-width: 1200px) {
	:root {
		/* 幅 */
		--site-sizeContentWide-M:	var(--site-sizeContentWide-S);	/* Mは1200以下からSと同じ幅にする */
		--site-sizeMaxWidth-M:		var(--site-sizeMaxWidth-S);		/* Mは1200以下からSと同じ幅にする */
		/* 余白 */
		--site-marpad-XXXL:			clamp(100px, (100 / 900 * 100vw), 150px); /*150px*/
		--site-marpad-XXL:			clamp(80px, (80 / 900 * 100vw), 120px); /*120px*/
		--site-marpad-XL:			clamp(70px, (70 / 900 * 100vw), 100px); /*100px*/
		--site-marpad-L:			clamp(60px, (60 / 900 * 100vw), 80px);  /*80px*/
		--site-marpad-M:			clamp(40px, (40 / 900 * 100vw), 60px);  /*60px*/
		--site-marpad-S:			clamp(20px, (20 / 900 * 100vw), 40px);  /*40px*/
		--site-marpad-XS:			clamp(15px, (15 / 900 * 100vw), 30px);  /*30px*/
		--site-marpad-XXS:			clamp(10px, (10 / 900 * 100vw), 20px);  /*20px*/
		
		/* スティッキー要素の高さ・余白 ※数値は要確認（ざっくり対応ver ※厳密にする場合はJSで） */
		--site-stickyHeader-height:	clamp(120px, (120 / 1000 * 100vw), 140px) ;
	}
}

@media screen and (max-width: 900px) {
	:root {
		/* スティッキー要素の高さ・余白 ※数値は要確認（ざっくり対応ver ※厳密にする場合はJSで） */
		--site-stickyHeader-height:			60px;
		--site-stickyConversionSP-height:	60px;
	}
}
@media screen and (max-width: 600px) {
	:root {
		/* 幅 */
		--site-sizeContentWide-XM:	94.444444%;
		--site-sizeContentWide-M:	86.111111%;	/* Mは600以下からSと同じ値になる */
		--site-sizeContentWide-S:	86.111111%;
		/* 余白 */
		--site-marpad-XXXL:			clamp(80px, (80 / 480 * 100vw), 100px); /*100px*/
		--site-marpad-XXL:			clamp(60px, (60 / 480 * 100vw), 80px); /*80px*/
		--site-marpad-XL:			clamp(50px, (50 / 480 * 100vw), 70px); /*70px*/
		--site-marpad-L:			clamp(40px, (40 / 480 * 100vw), 60px); /*60px*/
		--site-marpad-M:			clamp(30px, (30 / 480 * 100vw), 40px); /*40px*/
		--site-marpad-S:			20px;
		--site-marpad-XS:			15px;
		--site-marpad-XXS:			10px;		
	}
}

/* MODULE
---------------------------------------------------- */
	:root {
		/* イージング */
		--M-easing-easeInOutQuint:		cubic-bezier(.83, 0, .17, 1);
		--M-easing-easeInOutCubic:		cubic-bezier(.65, 0, .35, 1);
		--M-easing-easeOutQuint:		cubic-bezier(.22, 1, .36, 1);
		/* my */
		--M-easing-myEaseInBack_01:		cubic-bezier(.98, -0.64, .46, .94);
		--M-easing-myEaseOutBack_01:	cubic-bezier(.4, .2, .1, 1.5);
	}

/* 文字サイズ可変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;}

/* Img */
	:where(.siteWrap) img,
	:where(.siteWrap) object[data-obj-roleimg*="roleImg"] {
		max-width: 100%;
		height: auto;
		vertical-align: bottom;												/* 余白対策 */
	}
	:where(.siteWrap) a object[data-obj-roleimg*="_link"] {					/* リンクが効かなくなる仕様の解除 | 例：<a href="#"><object data="xxx.svg" data-obj-roleimg="roleImg_link"></object></a> */
		pointer-events: none;
	}

/* svg */
	:where(.siteWrap) svg:not(:root) {
		overflow: hidden;
	}
	:where(.siteWrap) img[src$=".svg"],
	:where(.siteWrap) img[src$=".svgz"],
	:where(.siteWrap) object[data-obj-roleimg*="roleImg"][data$=".svg"],
	:where(.siteWrap) object[data-obj-roleimg*="roleImg"][data$=".svgz"] {	/* for IE11 | ※親要素に幅指定必須 (Width specification is mandatory for parent element.) */
		width: 100%;
	}

/* form */
:where(.siteWrap) :is(button, input, select, textarea) {
	font: inherit;
}

/* ---------------------------------
	Text Base
--------------------------------- */
	body {
		color: rgba(var(--site-themeColor-base_text), 1);
		/*background: rgba(var(--site-themeColor-base), 1);*/
		background: rgba(var(--site-themeColor-accent_1), 1);

	}
	body,
	main,
	.fontSizeReset {
		--M-fluidFontSize-max-fontsize: 15.5;
		--M-fluidFontSize-min-fontsize: 13;
		--M-fluidFontSize-max-viewport: 1200;
		--M-fluidFontSize-min-viewport: 700;
		--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()使用時必須 */
		line-height: 1.85;
		font-family: var(--site-font_family-basic);
		/*font-size: 1.6rem;*/
		font-size: var(--M-fluidFontSize-fontSize);
		font-weight: 400;
		letter-spacing: .09em;
	}
	small, figcaption {
		line-height: 1.5;
		color: inherit;
		font-family: var(--site-font_family-caption);
		font-size: 1rem;
		letter-spacing: .04em;
		font-weight: 400;
		/*opacity: .92;*/ /* 気持ち軽くする(不要なら削除) */
	}
@media screen and (max-width: 600px) {
	body,
	main,
	.fontSizeReset {
		font-size: 1.3rem;
	}
	small, figcaption {
		font-size: 0.9rem;
	}
}

/* Font Family */
	.fontSerif,
	.fontSerifBox * {
		font-family: var(--site-font_family-serif);
	}
	.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);
	}
	.fontEn03,
	.fontEn03Box * {
		font-family: var(--site-font_family-en_3);
	}
	

/* 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: rgba(var(--site-variationColor-blackish), 1) !important;} /*黒系*/
	.txtColorWh {color: rgba(var(--site-variationColor-whitish), 1) !important;} /*白系*/
	.txtColorYe {color: rgba(var(--site-variationColor-yellow), 1) !important;} /*黄色系*/
	.txtColorYe02 {color: rgba(var(--site-variationColor-yellow_light), 1) !important;} /*黄色系*/
	.txtColorYe03 {color: rgba(var(--site-variationColor-yellow_dark), 1) !important;} /*黄色系*/
	.txtColorGr {color: rgba(var(--site-variationColor-gray), 1) !important;} /*灰系*/
	.txtColorGr02 {color: rgba(var(--site-variationColor-darkGray), 1) !important;} /*灰系*/
	.txtColor01 {color: #8f0018 !important;} /*暗赤系*/
	.txtColor02 {color: #ca0022 !important;} /*明赤系*/
	.txtColor03 {color: #9e8d4d !important;} /*暗黄系*/
	.txtColor04 {color: #e1c96e !important;} /*明黄系*/
	.txtColor05 {color: #4f1815 !important;} /*赤茶系*/
	

	.txtColor_basetxt {	color: rgba(var(--site-themeColor-base_text), 1) !important;}
	.txtColor_maintxt {	color: rgba(var(--site-themeColor-main_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.blPCtrTBtl,
	small.blPCtrSPtl {display:block;/*line-height:1.4;*/margin-top:.35em;}
	small.bltr,
	small.blPCtrTBtl,
	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.6;font-size:1.15rem;letter-spacing:.07em;}
@media screen and (max-width: 900px) {
	small.blPCtrTBtl {text-align:left;}
}
@media screen and (max-width: 600px) {
	.captionWrap small {font-size:1.1rem;}
	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;
	}
	.imgcapkeep.is_imgcapkeep_bottom_right {inset: auto 0 0 auto;}
	.imgcapkeep.is_imgcapkeep_bottom_left {	inset: auto auto 0 0;}
	.imgcapkeep.is_imgcapkeep_top_right {	inset: 0 0 auto auto;}
	.imgcapkeep.is_imgcapkeep_top_left {	inset: 0 auto auto 0;}
	.imgcap.wh, .imgcapkeep.wh {color:rgba(var(--site-variationColor-whitish), 1);text-shadow:0 0 3px rgba(0,0,0,.3);}
	.imgcap.bk, .imgcapkeep.bk {color:rgba(var(--site-variationColor-blackish), 1);text-shadow:0 0 3px rgba(255,255,255,.3);}
	.imgcap.gr, .imgcapkeep.gr {color:rgba(var(--site-variationColor-grayish), 1);text-shadow:0 0 3px rgba(255,255,255,.3);}
	.imgcap .wh, .imgcapkeep .wh {color:rgba(var(--site-variationColor-whitish), 1);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:rgba(var(--site-variationColor-blackish), 1);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:rgba(var(--site-variationColor-grayish), 1);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: 600px) {
	.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.08rem;
		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:rgba(var(--site-variationColor-whitish), 1);text-shadow:0 0 3px rgba(0,0,0,.3);
	}
	[data-bgcap-parent~="bk"]::after {
		color:rgba(var(--site-variationColor-blackish), 1);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: 600px) {
	[data-bgcap-parent]::after {
		font-size: 1.05rem;
	}
	[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%;padding:.1em 0;}
	.symList-kome .sym {display:block;white-space:nowrap;padding-right:.25em;}
	.symList-kome .symItemText {flex:1 1;display:block;}
	.symList-kome span.symItemInnerLineBreakItem {/*width: 100%;*/}	/* 「.symItem」または「.legendBox i」の兄弟要素。HTMLの改行したい位置に要素を追加し、任意のメディアクエリのタイミングにこのスタイルを追加する。 */
	
	/* legendBox | 2023.09 変更（注：white-space:nowrap;） */
	/* 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:.4em;margin-bottom:.4em;*/}
	.symList-kome .legendBox i {display:flex;align-items:center;white-space:nowrap;margin-right:1.35em;padding:.4em 0;}
	.symList-kome .legendBox img {line-height:1;margin-right:3px; /*height:1.5em;*/}
	.symList-kome .legendBox img.walldoor {margin-right:5px;}
	.symList-kome .legendBox img.outframe {margin-right:5px;}
	.symList-kome .legendBox img.centerOpenSash {margin-right:5px;}
	.symList-kome .legendBox br:last-child {display: none;}

@media screen and (max-width: 900px) {
	.symList-kome span.symItemInnerLineBreakItem_TBSP {width: 100%;}
}
@media screen and (max-width: 600px) {
	.symList-kome span.symItemInnerLineBreakItem_SP {width: 100%;}
}
@media screen and (max-width: 480px) {
	.symList-kome span.symItemInnerLineBreakItem_SPs {width: 100%;}
}


/*img multiply	*/
	.imgMultiply { mix-blend-mode: multiply;}
	

/* align */
	.tcl {
		margin-inline: auto;
		max-inline-size: max-content;
	}
	.tcPCTBtlSP {
		text-align: center;
	}
@media screen and (max-width: 600px) {
	.tcPCTBtlSP {
		text-align: left;
	}
	.tlSP {
		text-align: left!important;
	}
}

/* ---------------------------------
	Link
--------------------------------- */
	/* ----- tmplリセット ----- */
	:where(.siteWrap) a {
		color: inherit;
		text-decoration: none;
	}
	:where(.siteWrap) a .inbl {
		color: inherit;
		text-decoration: inherit;
	}
	/* ----- 汎用：文字色青・下線付き ----- */
	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;
		}
	}

/* ---------------------------------
	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
	* M_css_scrollMe
	* simpleShowTarget_v3
============================================================================ */

/* 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"] {
		--base-generalBtnUnit-boxShadow: 0 0 0 0 rgba(0, 0, 0, 0);	/* 「枠線」との調整で使用 */
		display: block;
		position: relative;
		z-index: 0;								/* for Safari.（border-radius時必須） */
		width: 90%;
		max-width: 450px;
		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]が入る場合は後述で再設定 */
		box-shadow: var(--base-generalBtnUnit-boxShadow);
	}
	[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]:where(:hover),
		button:not([disabled])[class*="generalBtnUnit"]:where(:hover) {
			--base-generalBtnUnit-boxShadow: 0 8px 9px -9px rgba(0, 0, 0, .4);
		}*/
	}
	/* ---------------------------------
		単色
	--------------------------------- */
	.generalBtnUnit {
		background: #000;
	}
	.generalBtnUnit {
		color: #fff;
	}
	@media (hover: hover) and (pointer: fine) {
		.generalBtnUnit[href]:where(:hover),
		button:not([disabled]).generalBtnUnit:where(:hover) {
			background: #3c3c3c;
		}
	}
	/* ---------------------------------
		枠線
	--------------------------------- */
	.generalBtnUnit_border {
		background: transparent;
		box-shadow: 0 0 0 1px #000 inset, var(--base-generalBtnUnit-boxShadow);
	}
	.generalBtnUnit_border {
		color: #000;
	}
	@media (hover: hover) and (pointer: fine) {
		.generalBtnUnit_border[href]:where(:hover),
		button:not([disabled]).generalBtnUnit_border:where(:hover) {
			color: #fff;
			background: #555;
		}
	}
	/* ---------------------------------
		グラデーション | hover時にグラデを透過させる場合（::before 使用の為、[data-buttonicon="simpleArrow_cir_*"]関連の直接使用不可）
	--------------------------------- */
	.generalBtnUnit_bgGradient {
		background: #939393;						/* ベースカラー(ONカラー) */
	}
	.generalBtnUnit_bgGradient {
		color: #fff;
	}
	.generalBtnUnit_bgGradient::before {
		content:"";display:block;position:absolute;top:0;right:0;z-index:0;width:100%;height:100%;
		background: linear-gradient(to right, rgba(0,0,0, .34) 0%, rgba(0,0,0,0) 45%, rgba(0,0,0,0) 55%, rgba(0,0,0, .34) 100%);
		opacity: 1;
		transition: opacity .18s ease-out;
	}
	.generalBtnUnit_bgGradient .label {
		position: relative;
		z-index: 3;
	}
	@media (hover: hover) and (pointer: fine) {
		.generalBtnUnit_bgGradient[href]:where(:hover)::before,
		button:not([disabled]).generalBtnUnit_bgGradient:where(:hover)::before {
			opacity: .33;
		}
	}
@media screen and (max-width: 1200px) {
	[class*="generalBtnUnit"] {
		letter-spacing: .07em;
	}
	[class*="generalBtnUnit"].btnL {
		font-size: 1.2em;
	}
}
@media screen and (max-width: 600px) {
	[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;
	}
}

/* btn_XXX | 特定のボタンカラー
---------------------------------------------------- */
	/* -- req, res, lim, gMap -- 
	----------------------------
	 *	ボタンカラーが原色で表示される場合 'CssCustomProperties' が設定されていない可能性があります（代替色が表示されている状態）。
	---------------------------- */
	/* ベースカラー */
	.btn_req [class*="generalBtnUnit"] {	background: url("../images/share/bg_btntxture01.jpg") top center no-repeat; background-size:100% auto;}
	.btn_req_2 [class*="generalBtnUnit"] {	background: rgba(var(--site-specificColor-req_2 , 255,0,0), 1); }
	.btn_res [class*="generalBtnUnit"] {	background: url("../images/share/bg_btntxture02.jpg") top center no-repeat; background-size:100% auto;}
	.btn_res_2 [class*="generalBtnUnit"] {	background: rgba(var(--site-specificColor-res_2 , 0,255,0), 1); }
	.btn_lim [class*="generalBtnUnit"] {	background: rgba(var(--site-specificColor-lim , 0,0,255), 1); }
	.gMapLink [class*="generalBtnUnit"] {	background: rgba(var(--site-specificColor-gMap , 255,0,255), 1); }
	
	
	.btn_req [class*="generalBtnUnit"]::before,
	.btn_res [class*="generalBtnUnit"]::before {
		position: absolute;
		top:0;
		left:0;
		content:"";
		display:block;
		height:100%;
		width:100%;
		background: #fff;
		opacity: 0;
		transition: opacity .18s ease-out 0s;
	}
	
	@media (hover: hover) and (pointer: fine) {
		.btn_req [class*="generalBtnUnit"][href]:hover::before,
		.btn_res [class*="generalBtnUnit"][href]:hover::before {
			opacity: .3;
		}
		:is(.btn_req, .btn_req_2, .btn_res, .btn_res_2, .btn_lim, .gMapLink) [class*="generalBtnUnit"][href]:hover {
			/*--site-specificColor-req: var(--site-specificColor-req-active);*/
			--site-specificColor-req_2: var(--site-specificColor-req_2-active);
			/*--site-specificColor-res: var(--site-specificColor-res-active);*/
			--site-specificColor-res_2: var(--site-specificColor-res_2-active);
			--site-specificColor-lim: var(--site-specificColor-lim-active);
			--site-specificColor-gMap: var(--site-specificColor-gMap-active);
		}
	}

	/* -- noticeBtn -- */
	/*.btn_XXXXX [class*="generalBtnUnit"] {
	}
	@media (hover: hover) and (pointer: fine) {
	}*/

@media screen and (max-width: 480px) {
	/*.btn_req [class*="generalBtnUnit"] .kochira,
	.btn_req_2 [class*="generalBtnUnit"] .kochira,
	.btn_res [class*="generalBtnUnit"] .kochira,
	.btn_res_2 [class*="generalBtnUnit"] .kochira,
	.btn_lim [class*="generalBtnUnit"] .kochira,
	.gMapLink [class*="generalBtnUnit"] .kochira {
		display: block;
	}*/
}

.noticeBtnBox.btLine .holiday {
	color: #af4154;
	
}


/* [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] {
		--base-dataButtonIcon-padding-lr: .25em + 5px;		/* ボタンアイコン系の共通の余白 */
	}
@media screen and (max-width: 600px) {
	[data-buttonicon] {
		--base-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_d">三角__下向き</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: 5px 0 5px 12px;
		border-color: transparent transparent transparent #fff;
	}
	[data-buttonicon="simpleArrow_tri01_d"]::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(--base-dataButtonIcon-padding-lr) + 14px + (8px * 2));
		padding-right:	calc(var(--base-dataButtonIcon-padding-lr) + 14px + (8px * 2));
	}
	[class*="generalBtnUnit"].btnL[data-buttonicon^="simpleArrow_tri"] {
		padding-left:	calc(var(--base-dataButtonIcon-padding-lr) + 33px + (8px * 2));
		padding-right:	calc(var(--base-dataButtonIcon-padding-lr) + 33px + (8px * 2));
	}
	[class*="generalBtnUnit"].btnL[data-buttonicon^="simpleArrow_tri"]::after {
		right: 33px;
	}
	[class*="generalBtnUnit"].btnL[data-buttonicon="simpleArrow_tri01_d"]::after {
		right: 29px;
	}
	[class*="generalBtnUnit"].btnS[data-buttonicon^="simpleArrow_tri"]::after {
		border-width: 6px 0 6px 5px;
	}
	[class*="generalBtnUnit"].btnS[data-buttonicon="simpleArrow_tri01_d"]::after {
		border-width: 5px 6px 0 6px;
	}
@media screen and (max-width: 600px) {
	[class*="generalBtnUnit"][data-buttonicon^="simpleArrow_tri"],
	[class*="generalBtnUnit"].btnL[data-buttonicon^="simpleArrow_tri"] {
		padding-left:	calc(var(--base-dataButtonIcon-padding-lr) + 10px + (7px * 2));
		padding-right:	calc(var(--base-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_d"]::after,
	[class*="generalBtnUnit"].btnL[data-buttonicon="simpleArrow_tri01_d"]::after {
		right: 10px;
		border-width: 6px 7px 0 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(--base-dataButtonIcon-padding-lr) + 15px + 14px);
		padding-right:	calc(var(--base-dataButtonIcon-padding-lr) + 15px + 14px);
	}
	[class*="generalBtnUnit"].btnL[data-buttonicon^="simpleArrow_cir"] {	/* simpleArrow_tri と同じ値にしている（変更可） */
		padding-left:	calc(var(--base-dataButtonIcon-padding-lr) + 33px + (8px * 2));
		padding-right:	calc(var(--base-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: 600px) {
	[class*="generalBtnUnit"][data-buttonicon^="simpleArrow_cir"],
	[class*="generalBtnUnit"].btnL[data-buttonicon^="simpleArrow_cir"] {	/* simpleArrow_tri と同じ値にしている（変更可） */
		padding-left:	calc(var(--base-dataButtonIcon-padding-lr) + 10px + (7px * 2));
		padding-right:	calc(var(--base-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"] {
		--base-dataButtonIcon-icoPlus_-right:			20px;	/* 右端からの距離（初期値） */
		--base-dataButtonIcon-icoPlus_-width:			15px;	/* アイコン幅（初期値） */
		--base-dataButtonIcon-icoPlus_-height:			var(--base-dataButtonIcon-icoPlus_-width); /* アイコン高さ（初期値はアイコン幅と同じ） */
		--base-dataButtonIcon-icoPlus_-padding-adjust:	0px;	/* 微調整 */
	}
	[class*="generalBtnUnit"][data-buttonicon^="ico_plus"] {		/* calc(文字からアイコンまでの余白 + 右端からの距離 + アイコン幅 + 微調整); */
		padding-left:	calc(var(--base-dataButtonIcon-padding-lr) + var(--base-dataButtonIcon-icoPlus_-right) + var(--base-dataButtonIcon-icoPlus_-width) + var(--base-dataButtonIcon-icoPlus_-padding-adjust));
		padding-right:	calc(var(--base-dataButtonIcon-padding-lr) + var(--base-dataButtonIcon-icoPlus_-right) + var(--base-dataButtonIcon-icoPlus_-width) + var(--base-dataButtonIcon-icoPlus_-padding-adjust));
	}
	[data-buttonicon^="ico_plus"] .ico {
		display: block;
		position: absolute;
		top: 0;
		bottom: 0;
		left: auto;
		right: var(--base-dataButtonIcon-icoPlus_-right);
		width: var(--base-dataButtonIcon-icoPlus_-width);
		height: var(--base-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: 600px) {
	[data-buttonicon^="ico_plus"] {
		--base-dataButtonIcon-icoPlus_-right:			16px;
		--base-dataButtonIcon-icoPlus_-width:			13px;
	}
}
@media screen and (max-width: 480px) {
	[data-buttonicon^="ico_plus"] {
		--base-dataButtonIcon-icoPlus_-right:			12px;
		--base-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_"] {
		--base-dataButtonIcon-bgico_-right:				14px;	/* 右端からの距離（初期値） */
		--base-dataButtonIcon-bgico_-width:				20px;	/* アイコン幅（初期値） */
		--base-dataButtonIcon-bgico_-height:			var(--base-dataButtonIcon-bgico_-width); /* アイコン高さ（初期値はアイコン幅と同じ） */
		--base-dataButtonIcon-bgico_-padding-adjust:	5px;	/* 微調整 */
	}
	[data-buttonicon^="bgico_"] span.ico {
		display: block;
		position: absolute;
		top: 0;
		bottom: 0;
		left: auto;
		right: var(--base-dataButtonIcon-bgico_-right);
		width: var(--base-dataButtonIcon-bgico_-width);
		height: var(--base-dataButtonIcon-bgico_-height);
		background: center center / contain no-repeat;
		margin: auto;
	}
	[data-buttonicon^="bgico_"] {		/* calc(文字からアイコンまでの余白 + 右端からの距離 + アイコン幅 + 微調整); */
		padding-left:	calc(var(--base-dataButtonIcon-padding-lr) + var(--base-dataButtonIcon-bgico_-right) + var(--base-dataButtonIcon-bgico_-width) + var(--base-dataButtonIcon-bgico_-padding-adjust));
		padding-right:	calc(var(--base-dataButtonIcon-padding-lr) + var(--base-dataButtonIcon-bgico_-right) + var(--base-dataButtonIcon-bgico_-width) + var(--base-dataButtonIcon-bgico_-padding-adjust));
	}
	
	/* -- Individual -- */
	[data-buttonicon="bgico_arrow_M"] {
		--base-dataButtonIcon-bgico_-right:				16px;
		--base-dataButtonIcon-bgico_-width:				16px;
	}
	[data-buttonicon="bgico_circleArrow_M"] {
		--base-dataButtonIcon-bgico_-right:				14px;
		--base-dataButtonIcon-bgico_-width:				19.7px;
	}
	[data-buttonicon="bgico_circleArrow_L"] {
		--base-dataButtonIcon-bgico_-right:				14px;
		--base-dataButtonIcon-bgico_-width:				23px;
	}
	[data-buttonicon="bgico_returnArrow"] {
		--base-dataButtonIcon-bgico_-right:				12px;
		--base-dataButtonIcon-bgico_-width:				23px;
		--base-dataButtonIcon-bgico_-height:			17.8618px;
	}
	
	[data-buttonicon="bgico_arrow_M"] span.ico {
		background-image: url("../images/share/ico_arrow_01_right.svg");
	}
	[data-buttonicon="bgico_arrow_M"] span.ico.wh {
		background-image: url("../images/share/ico_arrow_02_right.svg");
	}
	[data-buttonicon*="bgico_circleArrow_"] span.ico {
		background: url("../images/share/ico_arrow_01_right.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: 600px) {
	[data-buttonicon^="bgico_"] {
		--base-dataButtonIcon-bgico_-padding-adjust:	2px;
	}
	[data-buttonicon="bgico_arrow_M"] {
		--base-dataButtonIcon-bgico_-right:				11px;
		--base-dataButtonIcon-bgico_-width:				14px;
	}
	[data-buttonicon="bgico_circleArrow_M"] {
		--base-dataButtonIcon-bgico_-right:				11px;
		--base-dataButtonIcon-bgico_-width:				16px;
	}
	[data-buttonicon="bgico_circleArrow_L"] {
		--base-dataButtonIcon-bgico_-right:				11px;
		--base-dataButtonIcon-bgico_-width:				19px;
	}
	[data-buttonicon="bgico_returnArrow"] {
		--base-dataButtonIcon-bgico_-right:				11px;
		--base-dataButtonIcon-bgico_-width:				20px;
		--base-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"] {
		--base-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													2023.08
---------------------------------------------------------------------------
- シンプルver
- 上下左右の余白はgap（row-gap、column-gap）使用
- カスタムデータ属性（~=スペース区切り毎の正確な値）
- 各ページ用CSSで、ユニーククラスに対してであればカスタムプロパティの値を変更可
	- × .generalColBox {		--base-generalColBox-margin-row: 30px;}
	- ○ .generalColBox.xxxBox {	--base-generalColBox-margin-row: 30px;}
	- ○ .xxxBox {				--base-generalColBox-margin-row: 30px;}
---------------------------------------------------------------------------
div.generalColBox[data-colbox-size="maxCol3 toCol1_SP"]>(div.xxx{xxx})*3
------------------------------------------------------------------------ */
	.generalColBox {
		--base-generalColBox-margin-row:	60px;
		--base-generalColBox-margin-column:	60px;
		display: flex;
		flex-wrap: wrap;
		gap: var(--base-generalColBox-margin-row) var(--base-generalColBox-margin-column);
	}
@media screen and (max-width: 1200px) { /*{belowTB}*/
	.generalColBox {
		--base-generalColBox-margin-row:	clamp(40px, (50 / 900 * 100vw), 60px);
		--base-generalColBox-margin-column:	clamp(40px, (50 / 900 * 100vw), 60px);
	}
}
	
	[data-colbox-size~="maxCol1"] > * {		width: 100%;}
	[data-colbox-size~="maxCol2"] > * {		width: calc((100% - (var(--base-generalColBox-margin-column) * 1)) / 2);}
	[data-colbox-size~="maxCol3"] > * {		width: calc((100% - (var(--base-generalColBox-margin-column) * 2)) / 3);}
	[data-colbox-size~="maxCol4"] > * {		width: calc((100% - (var(--base-generalColBox-margin-column) * 3)) / 4);}
@media screen and (max-width: 1200px) {
	[data-colbox-size~="toCol1_PCs"] > * {	width: 100%;}
	[data-colbox-size~="toCol2_PCs"] > * {	width: calc((100% - (var(--base-generalColBox-margin-column) * 1)) / 2);}
	[data-colbox-size~="toCol3_PCs"] > * {	width: calc((100% - (var(--base-generalColBox-margin-column) * 2)) / 3);}
	[data-colbox-size~="toCol4_PCs"] > * {	width: calc((100% - (var(--base-generalColBox-margin-column) * 3)) / 4);}
}
@media screen and (max-width: 900px) {
	[data-colbox-size~="toCol1_TB"] > * {	width: 100%;}
	[data-colbox-size~="toCol2_TB"] > * {	width: calc((100% - (var(--base-generalColBox-margin-column) * 1)) / 2);}
	[data-colbox-size~="toCol3_TB"] > * {	width: calc((100% - (var(--base-generalColBox-margin-column) * 2)) / 3);}
	[data-colbox-size~="toCol4_TB"] > * {	width: calc((100% - (var(--base-generalColBox-margin-column) * 3)) / 4);}
}
@media screen and (max-width: 600px) {
	[data-colbox-size~="toCol1_SP"] > * {	width: 100%;}
	[data-colbox-size~="toCol2_SP"] > * {	width: calc((100% - (var(--base-generalColBox-margin-column) * 1)) / 2);}
	[data-colbox-size~="toCol3_SP"] > * {	width: calc((100% - (var(--base-generalColBox-margin-column) * 2)) / 3);}
	[data-colbox-size~="toCol4_SP"] > * {	width: calc((100% - (var(--base-generalColBox-margin-column) * 3)) / 4);}
}
@media screen and (max-width: 480px) {
	[data-colbox-size~="toCol1_SPs"] > * {	width: 100%;}
	[data-colbox-size~="toCol2_SPs"] > * {	width: calc((100% - (var(--base-generalColBox-margin-column) * 1)) / 2);}
	[data-colbox-size~="toCol3_SPs"] > * {	width: calc((100% - (var(--base-generalColBox-margin-column) * 2)) / 3);}
	[data-colbox-size~="toCol4_SPs"] > * {	width: calc((100% - (var(--base-generalColBox-margin-column) * 3)) / 4);}
}








/* js_swipeMe														2023.09
---------------------------------------------------------------------------
- 2022.07 設定一新
- 2023.09 設定一新。[data-js_swipeme-maxwidth]設定必須。「スワイプアイテムの初期表示位置」関連追加。
---------------------------------------------------------------------------
- スワイプを促すアイコンを表示させる。
---------------------------------------------------------------------------
- setting.jsの「jsSwipeMe (swipeIcon)」と連携
- [data-js_swipeme-maxwidth] で、メディアクエリの値を設定すること。（必須）
- [data-js_swipeme-position] で、スワイプアイテムの初期表示位置を設定可能。（指定可能な値はJS参照）
---------------------------------------------------------------------------
div.xxx>(div.js_swipeMe[data-js_swipeme-maxwidth="000"][data-js_swipeme-position=""]>div.yyyPic>img)+small.bltr
---------------------------------------------------------------------------
// -------------
	スワイプ
-------------- //
@media screen and (max-width: 600px) {
	.xxx .js_swipeMeIcon,
	.xxx .js_swipeMeInnerBoxOverlay { display: block;}
	.xxx .js_swipeMeInnerBox { overflow-x: scroll;}
	.xxx .js_swipeMeInnerBox img {width: 100%; max-width: none;}
	.xxx .js_swipeMeInnerBoxOverlay,
	.xxx .js_swipeMeSwipeItem {width: 160%;}
	.xxx .js_swipeMeSwipeItem > * {padding: 20px;}
}
@media screen and (max-width: 480px) {
	.xxx .js_swipeMeInnerBoxOverlay,
	.xxx .js_swipeMeSwipeItem {width: 180%;}
}
------------------------------------------------------------------------ */
	.js_swipeMe {
		position: relative;
		z-index: 0;
	}
	.js_swipeMeIcon { /* 初期値は display: none; としている */
		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;
		z-index: 0;
		width: 100%;
		-webkit-overflow-scrolling: touch;
	}
	.js_swipeMeInnerBoxOverlay { /* 初期値は display: none; としている */
		display: none; position: absolute; top: 0; left: 0; z-index: 1; 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 {width: 100%; max-width: none;}
	.js_swipeMe_active .js_swipeMeInnerBoxOverlay,
	.js_swipeMe_active .js_swipeMeSwipeItem {width: 200%;}
	.js_swipeMe_active .js_swipeMeSwipeItem > * {padding: 20px;}

@keyframes js_swipeMeIcon_motion {
	0% {	transform: translateX(-20px);}
	100% {	transform: translateX(20px);}
}


/* M_css_scrollMe | v1.0											2023.09
---------------------------------------------------------------------------
- スクロールを促すアイコンを表示させる。
- 使用するタイミングで「.M_css_scrollMe」を display: block; にする。
- 「.M_css_scrollMe」に幅は設定してもしなくてもよい（width: 80px; | flex: 0 0 max(80px, 25vw); など）。
- スクロールアイテム要素を右寄せにするJS追加（右から左へスクロール）。
- （補足：今回未対応だがJSで追加設定を書けば「tabindex="0"」も設定可能）
---------------------------------------------------------------------------
div.xxx>div.M_css_scrollMe>div.M_css_scrollMeInnerBox>((p.labelBox[aria-label="スクロール移動ができます"]>span.label{Scroll}+span.arrow)+div.handIcon)
------------------------------------------------------------------------ */
/*
	.M_css_scrollMe {
		display: none;
		line-height: 1.2;
		color: #999;
		font-family: var(--site-font_family-sans, sans-serif);
		font-size: 1.5rem;
		letter-spacing: .02em;
	}
	.M_css_scrollMeInnerBox {
		position: relative;
		z-index: 0;
		width: 5.3em;
		margin-left: auto;
		margin-right: auto;
		padding: .6em;
	}
	.M_css_scrollMe .labelBox {}
	.M_css_scrollMe .label {
		display: block;
		padding-right: 1em;
	}
	.M_css_scrollMe .arrow {
		display: block;
		position: relative;
		margin-bottom: .35em;
		border-bottom: 1px solid currentColor;
	}
	.M_css_scrollMe .arrow::before {
		content: "";
		position: absolute;
		inset: auto 0 -1px auto;
		display: block;
		width: 1em;
		border-bottom: 1px solid currentColor;
		transform: rotate(45deg) skewX(-45deg);
		transform-origin: right bottom;
	}
	.M_css_scrollMe .handIcon {
		display: block;
		width: 2em;
		aspect-ratio: 29 / 35;
		background: url("../images/share/ico_scrollme.svg") center center / contain no-repeat;
		animation: 3s ease-in-out .2s infinite both css_scrollMeIcon_motion;
	}
@keyframes css_scrollMeIcon_motion {
	0% {		opacity: 1; transform: translateX(100%);}
	35%, 48% {	opacity: 1; transform: translateX(0);}
	60% {		opacity: 0; transform: translateX(0);}
	85% {		opacity: 0; transform: translateX(100%);}
	95%, 100% {		opacity: 1; transform: translateX(100%);}
}
*/


/* 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] {
		--base-jsShowTarget-transition-opacity:		opacity 1000ms ease-out 100ms;
		--base-jsShowTarget-transition-translate:	transform 600ms ease-in-out 50ms;
		--base-jsShowTarget-transition-blur:		filter 700ms ease-out 200ms;
		/*opacity: .05;*/
		opacity: 0;
	}
	_: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;
	}
	/* ----------------------------------------------------
		単独設定（通常）
	-------------------------------------------------------
	 * 2023.09	データ属性の値を変更、設定を追加
	-------------------------------------------------------
	フェードイン、上へスライド、ブラー、
	ストレッチレフト、ストレッチライト
	---------------------------------------------------- */
	[data-js_show_target="fadeIn"] {				transition: var(--base-jsShowTarget-transition-opacity);}

	[data-js_show_target="fadeIn_slowly"] {			transition: opacity 2500ms ease-out 100ms;}

	[data-js_show_target^="moveUp"] {				transition: var(--base-jsShowTarget-transition-opacity), var(--base-jsShowTarget-transition-translate);}
	[data-js_show_target="moveUp20"] {				transform: translateY(20px);}
	[data-js_show_target="moveUp30"] {				transform: translateY(30px);}
	[data-js_show_target="moveUp40"] {				transform: translateY(40px);}
	[data-js_show_target-passed^="moveUp"] {		transform: translateY(0);}

	[data-js_show_target^="moveDown"] {				transition: var(--base-jsShowTarget-transition-opacity), var(--base-jsShowTarget-transition-translate);}
	[data-js_show_target="moveDown20"] {			transform: translateY(-20px);}
	[data-js_show_target="moveDown30"] {			transform: translateY(-30px);}
	[data-js_show_target="moveDown40"] {			transform: translateY(-40px);}
	[data-js_show_target-passed^="moveDown"] {		transform: translateY(0);}

	[data-js_show_target^="moveLeft"] {				transition: var(--base-jsShowTarget-transition-opacity), var(--base-jsShowTarget-transition-translate);}
	[data-js_show_target="moveLeft20"] {			transform: translateX(20px);}
	[data-js_show_target="moveLeft30"] {			transform: translateX(30px);}
	[data-js_show_target="moveLeft40"] {			transform: translateX(40px);}
	[data-js_show_target-passed^="moveLeft"] {		transform: translateX(0);}

	[data-js_show_target^="moveRight"] {			transition: var(--base-jsShowTarget-transition-opacity), var(--base-jsShowTarget-transition-translate);}
	[data-js_show_target="moveRight20"] {			transform: translateX(-20px);}
	[data-js_show_target="moveRight30"] {			transform: translateX(-30px);}
	[data-js_show_target="moveRight40"] {			transform: translateX(-40px);}
	[data-js_show_target-passed^="moveRight"] {		transform: translateX(0);}

	[data-js_show_target="blur"] {					opacity: .7; filter: blur(6px); transition: var(--base-jsShowTarget-transition-opacity), var(--base-jsShowTarget-transition-blur);}
	[data-js_show_target-passed="blur"] {			opacity: 1; filter: blur(0);}

	[data-js_show_target="blur_opacity0"] {			opacity: 0; filter: blur(6px); transition: var(--base-jsShowTarget-transition-opacity), var(--base-jsShowTarget-transition-blur);}
	[data-js_show_target-passed="blur_opacity0"] {	opacity: 1; filter: blur(0);}

	[data-js_show_target="blur_slowly"] {			opacity: .7; filter: blur(6px); transition: var(--base-jsShowTarget-transition-opacity), filter 2000ms ease-out 600ms;}
	[data-js_show_target-passed="blur_slowly"] {	opacity: 1; filter: blur(0);}

	[data-js_show_target="blur_slowly_opacity0"] {			opacity: 0; filter: blur(6px); transition: var(--base-jsShowTarget-transition-opacity), filter 2000ms ease-out 600ms;}
	[data-js_show_target-passed="blur_slowly_opacity0"] {	opacity: 1; filter: blur(0);}

	[data-js_show_target="fadeInStretchCenter"],
	[data-js_show_target="fadeInStretchLeft"],
	[data-js_show_target="fadeInStretchRight"] {		opacity: 0; transition: opacity 500ms, clip-path 1000ms; transition-delay: 100ms; transition-timing-function: ease-out;}
	[data-js_show_target="fadeInStretchCenter"] {		clip-path: inset(0 50% 0 50%);}
	[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="fadeInStretchCenter"],
	[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="fadeInStretchUp"],
	[data-js_show_target="fadeInStretchDown"] {			opacity: 0; transition: opacity 500ms, clip-path 1000ms; transition-delay: 100ms; transition-timing-function: ease-out;}
	[data-js_show_target="fadeInStretchUp"] {			clip-path: inset(100% 0 0 0);}
	[data-js_show_target="fadeInStretchDown"] {			clip-path: inset(0 0 100% 0);}
	[data-js_show_target-passed="fadeInStretchUp"],
	[data-js_show_target-passed="fadeInStretchDown"] {	opacity: 1; clip-path: inset(0 0 0 0);}
	
	[data-js_show_target="fadeInCircleOut"] {		    opacity: 0; clip-path: circle(0% at 50% 50%); transition: opacity 500ms, clip-path 2200ms; transition-delay: 100ms; transition-timing-function: ease-out;}
	[data-js_show_target-passed="fadeInCircleOut"] {	opacity: 1; clip-path: circle(100% at 50% 50%);}
	

	[data-js_show_target="fadeIn_scaleGetBigger_blur"] {		opacity: 0;	transform: scale(.5); filter: blur(10px);}
	[data-js_show_target-passed="fadeIn_scaleGetBigger_blur"] {	animation: 700ms ease both M_fadeIn_and_scaleGetBigger_and_blur;}

	[data-js_show_target="fadeIn_scaleGetBigger_blur myEaseOutBack"] {			opacity: 0;	transform: scale(.5); filter: blur(10px);}
	[data-js_show_target-passed="fadeIn_scaleGetBigger_blur myEaseOutBack"] {	animation: 700ms var(--M-easing-myEaseOutBack_01) both M_fadeIn_and_scaleGetBigger_and_blur;}


	/* ----------------------------------------------------
		一揃い(suite) | 子孫要素にスタイルを設定する
	-------------------------------------------------------
	フェードイン、上へスライド
	---------------------------------------------------- */
	[data-js_show_target_suite="fadeIn"] :where([data-js_show_target_suite_descendant]) {			transition: var(--base-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^="moveUp"] :where([data-js_show_target_suite_descendant]) {			transition: var(--base-jsShowTarget-transition-opacity), var(--base-jsShowTarget-transition-translate);}
	[data-js_show_target_suite="moveUp20"] :where([data-js_show_target_suite_descendant]) {			transform: translateY(20px);}
	[data-js_show_target_suite="moveUp30"] :where([data-js_show_target_suite_descendant]) {			transform: translateY(30px);}
	[data-js_show_target_suite="moveUp40"] :where([data-js_show_target_suite_descendant]) {			transform: translateY(40px);}
	[data-js_show_target_suite-passed^="moveUp"] :where([data-js_show_target_suite_descendant]) {	transform: translateY(0);}

	[data-js_show_target_suite^="moveLeft"] :where([data-js_show_target_suite_descendant]) {		transition: var(--base-jsShowTarget-transition-opacity), var(--base-jsShowTarget-transition-translate);}
	[data-js_show_target_suite="moveLeft20"] :where([data-js_show_target_suite_descendant]) {		transform: translateX(20px);}
	[data-js_show_target_suite="moveLeft30"] :where([data-js_show_target_suite_descendant]) {		transform: translateX(30px);}
	[data-js_show_target_suite="moveLeft40"] :where([data-js_show_target_suite_descendant]) {		transform: translateX(40px);}
	[data-js_show_target_suite-passed^="moveLeft"] :where([data-js_show_target_suite_descendant]) {	transform: translateX(0);}

}


/* ============================================================================
	OtherModule
-------------------------------------------------------------------------------
	* noticeWrap
	- is_noticeWrap_all
============================================================================ */

/* noticeWrap | 全ページ共通用（基本的に書き換えない。調整は後述の「is_noticeWrap_all」へ）
------------------------------------------------------------------------ */
/* noticeItem
---------------------------------------------------- */
	.noticeWrap .noticeItem {
		margin-top: 4em;
	}
	.noticeWrap .noticeItem .kana {
		letter-spacing: -.02em;
	}
	.noticeWrap .noticeItem a,
	.noticeWrap .noticeItem a .inbl {
		text-decoration: none;
	}
	.noticeWrap .noticeItem .marker {
		background: linear-gradient(to top, rgba(255, 255, 255, 0) .06em, rgba(255, 255, 205, .75) .06em, rgba(255, 255, 205, .75) .6em, rgba(255, 255, 255, 0) .6em);
	}
	/* 文字サイズ調整
	----------------------- */
	/* noticeItem ----- */
	.noticeWrap .noticeItem {
		display: block;
		position: relative;
		/*line-height: 1.3;*/
		line-height: 1.8;
		text-align: center;
	}
	.noticeWrap .noticeItem small {
		display: inline-block;
		color: inherit;
	}
	.noticeWrap .noticeItem .annotation {
		display: block;
		line-height: 1.55;
		font-size: 1.6rem;
		letter-spacing: .1em;
		margin-top: 1em;
	}
	.noticeWrap .noticeItem .txtLLL {
		font-size: 3.9rem;
	}
	.noticeWrap .noticeItem .txtLL {
		font-size: 3.2rem;
	}
	.noticeWrap .noticeItem .txtL {
		font-size: 2.7rem;
	}
	.noticeWrap .noticeItem .txtM {
		font-size: 2.2rem;
	}
	.noticeWrap .noticeItem .txtS {
		font-size: 1.8rem;
	}
	.noticeWrap .noticeItem .txtXS {
		font-size: 1.6rem;
	}
	/* letterSpacing ----- */
	.noticeWrap .noticeItem .letterSpacingLL {
		letter-spacing: .26em;
	}
	.noticeWrap .noticeItem .letterSpacingL {
		letter-spacing: .18em;
	}
@media screen and (max-width: 900px) {
	.noticeWrap .noticeItem .annotation {
		font-size: 1.4rem;
		letter-spacing: .08em;
	}
	.noticeWrap .noticeItem .txtLLL {
		font-size: 3rem;
	}
	.noticeWrap .noticeItem .txtLL {
		font-size: 2.7rem;
	}
	.noticeWrap .noticeItem .txtL {
		font-size: 2.4rem;
	}
	.noticeWrap .noticeItem .txtM {
		font-size: 2rem;
	}
	.noticeWrap .noticeItem .txtS {
		font-size: 1.6rem;
	}
	.noticeWrap .noticeItem .txtXS {
		font-size: 1.4rem;
	}
}
@media screen and (max-width: 480px) {
	.noticeWrap .noticeItem .annotation {
		font-size: 1.1rem;
		margin-top: .8em;
	}
	.noticeWrap .noticeItem .txtLLL {
		font-size: 2.4rem;
	}
	.noticeWrap .noticeItem .txtLL {
		font-size: 2.1rem;
	}
	.noticeWrap .noticeItem .txtL {
		font-size: 1.8rem;
	}
	.noticeWrap .noticeItem .txtM {
		font-size: 1.6rem;
	}
	.noticeWrap .noticeItem .txtS {
		font-size: 1.4rem;
	}
	.noticeWrap .noticeItem .txtXS {
		font-size: 1.35rem;
	}
}

/* noticeBtnBox
---------------------------------------------------- */
	.noticeBtnBox {
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		align-items: center;
		gap: 20px 10px;
		max-width: calc((450px * 2) + 10px); /* =(子要素の最大幅 * 個数) + gap(column-gap) */
		margin-top: 1.875em;
		margin-left: auto;
		margin-right: auto;
	}
	.noticeBtnBox .noticeBtn {
		flex: 0 0 clamp(300px ,((100% - 10px) / 2), 450px);
	}
	.noticeBtnBox .noticeBtn [class*="generalBtnUnit"] {
		width: 100%;
		font-size: 1.6rem;
		padding-top:	calc(18px + .225em);
		padding-bottom:	calc(18px + .325em);
	}
	.noticeBtnBox .noticeBtn .lowerPhrase {
		display: inline-block;
	}
@media screen and (max-width: 900px) {
	.noticeBtnBox {
		gap: 15px 10px;
	}
	.noticeBtnBox .noticeBtn {
		flex: 0 0 100%;
	}
	.noticeBtnBox .noticeBtn [class*="generalBtnUnit"] {
		width: 90%;
		max-width: 400px;
		font-size: 1.8rem;
	}
}
@media screen and (max-width: 480px) {
	.noticeBtnBox {
		gap: 10px;
	}
	.noticeBtnBox .noticeBtn [class*="generalBtnUnit"] {
		max-width: 350px;
		font-size: 1.5rem;
	}
}
@media screen and (max-width: 359.08px) {
	.noticeBtnBox .noticeBtn [class*="generalBtnUnit"] {
		font-size: 1.42rem;
	}
	.noticeBtnBox .noticeBtn .lowerPhrase {
		display: block;
	}
}

/* holiday | noticeWrap内
---------------------------------------------------- */
	.noticeWrap .holidayWrap .holiday {
		display: block;
		text-align: center;
		margin: 0 auto;
		padding: 2em 0;
	}
	.noticeWrap .holidayWrap .holiday .holidayInner {
		display: inline-block;
		color: #af4154;
		font-family: inherit;
		font-size: 1.4rem;
		text-align: left;
		letter-spacing: .05em;
		padding: .45em 1.1em .5em;
		border: 1px solid currentColor;
	}
@media screen and (max-width: 600px) {
	.noticeWrap .holidayWrap .holiday .holidayInner {
		font-size: 1.3rem;
	}
}

/* is_noticeWrap_all ［調整用］
------------------------------------------------------------------------ */
	/* 共通の設定
	---------------------------------------------------- */
	.noticeWrap .btLine {
		padding-bottom: 3em;
		border-bottom: 1px solid rgba(0, 0, 0, .2);
	}
	.noticeWrap .offer {
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
		max-width: calc((450px * 2) + 10px);
		font-size: 1.8rem;
		margin: 0 auto;
		padding: 0.5em 0.8em;
		background: rgba(255, 255, 255, .3);
	}
	.noticeWrap .offerList {
		text-align: left;
		margin: 0 auto;
	}
	.noticeWrap .offerList li::before {
		content: "・";
	}
	
@media screen and (max-width: 1200px) {
	.noticeWrap .offer {
	}
	.noticeWrap .offerList {
		font-size: 0.7em;
		margin-top: 0.5em;
	}
}
	/* ページ下部の共通部分のみ適用したい場合
	---------------------------------------------------- */
	.is_noticeWrap_all.noticeWrap {}
	
	/* トップページのみ適用したい場合
	---------------------------------------------------- */
	:not(.is_noticeWrap_all).noticeWrap {
	}
	:not(.is_noticeWrap_all).noticeWrap .is_notIndex {
		display: none;
	}


/* ============================================================================
	Display
============================================================================ */
@media screen and (min-width: 1200.02px) {
	.TBSP, .TB, .TBl, .TBs, .SP, .SPs {				display:none;}
	.PCTB, .PC, .PCs {								display:inherit;}
	.PCTB_inline, .PC_inline {						display:inline !important;}
	.PCTB_inbl, .PC_inbl {							display:inline-block !important;}
	.PC_bl {										display:block !important;}
	.PCTB_none, .PC_none {							display:none !important;}
}
@media screen and (min-width: 1600.02px) {
	.PCs {											display:none;}
	.PCl {											display:inherit;}
	.PCl_inline {									display:inline !important;}
	.PCl_inbl {										display:inline-block !important;}
	.PCl_bl {										display:block !important;}
	.PCl_none {										display:none !important;}
}
@media screen and (min-width: 600.02px) and (max-width: 1200px) {
	.PCl, .PC, .PCs, .SP, .SPs {					display:none;}
	.PCTB, .TBSP, .TB, .TBl, .TBs {					display:inherit;}
	.PCTB_inline, .TB_inline {						display:inline !important;}
	.PCTB_inbl, .TBSP_inbl, .TB_inbl {				display:inline-block !important;}
	.TB_bl {										display:block !important;}
	.PCTB_none, .TBSP_none, .TB_none {				display:none !important;}
}
@media screen and (max-width: 600px) {
	.PCTB, .PCl, .PC, .PCs, .TB, .TBl, .TBs, .SPs {	display:none;}
	.TBSP, .SP {									display:inherit;}
	.SP_inline {									display:inline !important;}
	.TBSP_inbl, .SP_inbl {							display:inline-block !important;}
	.SP_bl {										display:block !important;}
	.TBSP_none, .SP_none {							display:none !important;}
}
@media screen and (max-width: 480px) {
	.SPs {											display:inherit;}
	.SPs_inline {									display:inline !important;}
	.SPs_inbl {										display:inline-block !important;}
	.SPs_bl {										display:block !important;}
	.SPs_none {										display:none !important;}
}


/* ============================================================================
	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}
/* lineHeight */
.lhXL	{line-height: 1.9 !important;}
.lhL	{line-height: 1.75 !important;}
.lhXM	{line-height: 1.6 !important;}
.lhM	{line-height: 1.5 !important;}
.lhS	{line-height: 1.35 !important;}
.lhXS	{line-height: 1.3 !important;}
/* letterSpacing */
.lettsp0	{letter-spacing: 0 !important;}
.lettsp001	{letter-spacing: .01em !important;}
.lettsp002	{letter-spacing: .02em !important;}
.lettsp003	{letter-spacing: .03em !important;}
.lettsp004	{letter-spacing: .04em !important;}
.lettsp005	{letter-spacing: .05em !important;}
.lettsp006	{letter-spacing: .06em !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}
.mt015em{margin-top: .15em!important}	.mr015em{margin-right: .15em!important}		.mb015em{margin-bottom: .15em!important}	.ml015em{margin-left: .15em!important}			.pt015em{padding-top: .15em!important}	.pr015em{padding-right: .15em!important}	.pb015em{padding-bottom: .15em!important}	.pl015em{padding-left: .15em!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_25em{margin-top: 1.25em!important}	.mr1_25em{margin-right: 1.25em!important}	.mb1_25em{margin-bottom: 1.25em!important}	.ml1_25em{margin-left: 1.25em!important}		.pt1_25em{padding-top: 1.25em!important}.pr1_25em{padding-right: 1.25em!important}	.pb1_25em{padding-bottom: 1.25em!important}	.pl1_25em{padding-left: 1.25em!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}

/* margin, padding | ~=スペース区切り毎の正確な値 | mt,mr,mb,ml,pt,pr,pb,pl,ptb,plr | !importantつき（2023.09追加） */
[data-marpad~="mtXXXL"]	{margin-top:var(--site-marpad-XXXL)!important}	[data-marpad~="mrXXXL"]	{margin-right:var(--site-marpad-XXXL)!important}	[data-marpad~="mbXXXL"]	{margin-bottom:var(--site-marpad-XXXL)!important}	[data-marpad~="mlXXXL"]	{margin-left:var(--site-marpad-XXXL)!important}		[data-marpad~="ptXXXL"]	{padding-top:var(--site-marpad-XXXL)!important}		[data-marpad~="prXXXL"]	{padding-right:var(--site-marpad-XXXL)!important}	[data-marpad~="pbXXXL"]	{padding-bottom:var(--site-marpad-XXXL)!important}	[data-marpad~="plXXXL"]	{padding-left:var(--site-marpad-XXXL)!important}	[data-marpad~="ptbXXXL"]{padding-top:var(--site-marpad-XXXL)!important;padding-bottom:var(--site-marpad-XXXL)!important}	[data-marpad~="plrXXXL"]{padding-right:var(--site-marpad-XXXL)!important;padding-left:var(--site-marpad-XXXL)!important}
[data-marpad~="mtXXL"]	{margin-top:var(--site-marpad-XXL)!important}	[data-marpad~="mrXXL"]	{margin-right:var(--site-marpad-XXL)!important}		[data-marpad~="mbXXL"]	{margin-bottom:var(--site-marpad-XXL)!important}	[data-marpad~="mlXXL"]	{margin-left:var(--site-marpad-XXL)!important}		[data-marpad~="ptXXL"]	{padding-top:var(--site-marpad-XXL)!important}		[data-marpad~="prXXL"]	{padding-right:var(--site-marpad-XXL)!important}	[data-marpad~="pbXXL"]	{padding-bottom:var(--site-marpad-XXL)!important}	[data-marpad~="plXXL"]	{padding-left:var(--site-marpad-XXL)!important}		[data-marpad~="ptbXXL"]	{padding-top:var(--site-marpad-XXL)!important;padding-bottom:var(--site-marpad-XXL)!important}	[data-marpad~="plrXXL"]	{padding-right:var(--site-marpad-XXL)!important;padding-left:var(--site-marpad-XXL)!important}
[data-marpad~="mtXL"]	{margin-top:var(--site-marpad-XL)!important}	[data-marpad~="mrXL"]	{margin-right:var(--site-marpad-XL)!important}		[data-marpad~="mbXL"]	{margin-bottom:var(--site-marpad-XL)!important}		[data-marpad~="mlXL"]	{margin-left:var(--site-marpad-XL)!important}		[data-marpad~="ptXL"]	{padding-top:var(--site-marpad-XL)!important}		[data-marpad~="prXL"]	{padding-right:var(--site-marpad-XL)!important}		[data-marpad~="pbXL"]	{padding-bottom:var(--site-marpad-XL)!important}	[data-marpad~="plXL"]	{padding-left:var(--site-marpad-XL)!important}		[data-marpad~="ptbXL"]	{padding-top:var(--site-marpad-XL)!important;padding-bottom:var(--site-marpad-XL)!important}		[data-marpad~="plrXL"]	{padding-right:var(--site-marpad-XL)!important;padding-left:var(--site-marpad-XL)!important}
[data-marpad~="mtL"]	{margin-top:var(--site-marpad-L)!important}		[data-marpad~="mrL"]	{margin-right:var(--site-marpad-L)!important}		[data-marpad~="mbL"]	{margin-bottom:var(--site-marpad-L)!important}		[data-marpad~="mlL"]	{margin-left:var(--site-marpad-L)!important}		[data-marpad~="ptL"]	{padding-top:var(--site-marpad-L)!important}		[data-marpad~="prL"]	{padding-right:var(--site-marpad-L)!important}		[data-marpad~="pbL"]	{padding-bottom:var(--site-marpad-L)!important}		[data-marpad~="plL"]	{padding-left:var(--site-marpad-L)!important}		[data-marpad~="ptbL"]	{padding-top:var(--site-marpad-L)!important;padding-bottom:var(--site-marpad-L)!important}		[data-marpad~="plrL"]	{padding-right:var(--site-marpad-L)!important;padding-left:var(--site-marpad-L)!important}
[data-marpad~="mtM"]	{margin-top:var(--site-marpad-M)!important}		[data-marpad~="mrM"]	{margin-right:var(--site-marpad-M)!important}		[data-marpad~="mbM"]	{margin-bottom:var(--site-marpad-M)!important}		[data-marpad~="mlM"]	{margin-left:var(--site-marpad-M)!important}		[data-marpad~="ptM"]	{padding-top:var(--site-marpad-M)!important}		[data-marpad~="prM"]	{padding-right:var(--site-marpad-M)!important}		[data-marpad~="pbM"]	{padding-bottom:var(--site-marpad-M)!important}		[data-marpad~="plM"]	{padding-left:var(--site-marpad-M)!important}		[data-marpad~="ptbM"]	{padding-top:var(--site-marpad-M)!important;padding-bottom:var(--site-marpad-M)!important}		[data-marpad~="plrM"]	{padding-right:var(--site-marpad-M)!important;padding-left:var(--site-marpad-M)!important}
[data-marpad~="mtS"]	{margin-top:var(--site-marpad-S)!important}		[data-marpad~="mrS"]	{margin-right:var(--site-marpad-S)!important}		[data-marpad~="mbS"]	{margin-bottom:var(--site-marpad-S)!important}		[data-marpad~="mlS"]	{margin-left:var(--site-marpad-S)!important}		[data-marpad~="ptS"]	{padding-top:var(--site-marpad-S)!important}		[data-marpad~="prS"]	{padding-right:var(--site-marpad-S)!important}		[data-marpad~="pbS"]	{padding-bottom:var(--site-marpad-S)!important}		[data-marpad~="plS"]	{padding-left:var(--site-marpad-S)!important}		[data-marpad~="ptbS"]	{padding-top:var(--site-marpad-S)!important;padding-bottom:var(--site-marpad-S)!important}		[data-marpad~="plrS"]	{padding-right:var(--site-marpad-S)!important;padding-left:var(--site-marpad-S)!important}
[data-marpad~="mtXS"]	{margin-top:var(--site-marpad-XS)!important}	[data-marpad~="mrXS"]	{margin-right:var(--site-marpad-XS)!important}		[data-marpad~="mbXS"]	{margin-bottom:var(--site-marpad-XS)!important}		[data-marpad~="mlXS"]	{margin-left:var(--site-marpad-XS)!important}		[data-marpad~="ptXS"]	{padding-top:var(--site-marpad-XS)!important}		[data-marpad~="prXS"]	{padding-right:var(--site-marpad-XS)!important}		[data-marpad~="pbXS"]	{padding-bottom:var(--site-marpad-XS)!important}	[data-marpad~="plXS"]	{padding-left:var(--site-marpad-XS)!important}		[data-marpad~="ptbXS"]	{padding-top:var(--site-marpad-XS)!important;padding-bottom:var(--site-marpad-XS)!important}		[data-marpad~="plrXS"]	{padding-right:var(--site-marpad-XS)!important;padding-left:var(--site-marpad-XS)!important}
[data-marpad~="mtXXS"]	{margin-top:var(--site-marpad-XXS)!important}	[data-marpad~="mrXXS"]	{margin-right:var(--site-marpad-XXS)!important}		[data-marpad~="mbXXS"]	{margin-bottom:var(--site-marpad-XXS)!important}	[data-marpad~="mlXXS"]	{margin-left:var(--site-marpad-XXS)!important}		[data-marpad~="ptXXS"]	{padding-top:var(--site-marpad-XXS)!important}		[data-marpad~="prXXS"]	{padding-right:var(--site-marpad-XXS)!important}	[data-marpad~="pbXXS"]	{padding-bottom:var(--site-marpad-XXS)!important}	[data-marpad~="plXXS"]	{padding-left:var(--site-marpad-XXS)!important}		[data-marpad~="ptbXXS"]	{padding-top:var(--site-marpad-XXS)!important;padding-bottom:var(--site-marpad-XXS)!important}	[data-marpad~="plrXXS"]	{padding-right:var(--site-marpad-XXS)!important;padding-left:var(--site-marpad-XXS)!important}
[data-marpad~="mt1px"]	{margin-top:1px!important}	[data-marpad~="mr1px"]	{margin-right:1px!important}	[data-marpad~="mb1px"]	{margin-bottom:1px!important}	[data-marpad~="ml1px"]	{margin-left:1px!important}		[data-marpad~="pt1px"]	{padding-top:1px!important}	[data-marpad~="pr1px"]	{padding-right:1px!important}	[data-marpad~="pb1px"]	{padding-bottom:1px!important}	[data-marpad~="pl1px"]	{padding-left:1px!important}	[data-marpad~="ptb1px"]	{padding-top:1px!important;padding-bottom:1px!important}	[data-marpad~="plr1px"]	{padding-right:1px!important;padding-left:1px!important}
[data-marpad~="mt1em"]	{margin-top:1em!important}	[data-marpad~="mr1em"]	{margin-right:1em!important}	[data-marpad~="mb1em"]	{margin-bottom:1em!important}	[data-marpad~="ml1em"]	{margin-left:1em!important}		[data-marpad~="pt1em"]	{padding-top:1em!important}	[data-marpad~="pr1em"]	{padding-right:1em!important}	[data-marpad~="pb1em"]	{padding-bottom:1em!important}	[data-marpad~="pl1em"]	{padding-left:1em!important}	[data-marpad~="ptb1em"]	{padding-top:1em!important;padding-bottom:1em!important}	[data-marpad~="plr1em"]	{padding-right:1em!important;padding-left:1em!important}
[data-marpad~="mt2em"]	{margin-top:2em!important}	[data-marpad~="mr2em"]	{margin-right:2em!important}	[data-marpad~="mb2em"]	{margin-bottom:2em!important}	[data-marpad~="ml2em"]	{margin-left:2em!important}		[data-marpad~="pt2em"]	{padding-top:2em!important}	[data-marpad~="pr2em"]	{padding-right:2em!important}	[data-marpad~="pb2em"]	{padding-bottom:2em!important}	[data-marpad~="pl2em"]	{padding-left:2em!important}	[data-marpad~="ptb2em"]	{padding-top:2em!important;padding-bottom:2em!important}	[data-marpad~="plr2em"]	{padding-right:2em!important;padding-left:2em!important}
[data-marpad~="mt0"]	{margin-top:0!important}	[data-marpad~="mr0"]	{margin-right:0!important}		[data-marpad~="mb0"]	{margin-bottom:0!important}		[data-marpad~="ml0"]	{margin-left:0!important}		[data-marpad~="pt0"]	{padding-top:0!important}	[data-marpad~="pr0"]	{padding-right:0!important}		[data-marpad~="pb0"]	{padding-bottom:0!important}	[data-marpad~="pl0"]	{padding-left:0!important}		[data-marpad~="ptb0"]	{padding-top:0!important;padding-bottom:0!important}		[data-marpad~="plr0"]	{padding-right:0!important;padding-left:0!important}
[data-marpad~="mtXL_flexible"]	{margin-top:var(--site-marpad-XL-flexible)!important}		[data-marpad~="mrXL_flexible"]	{margin-right:var(--site-marpad-XL-flexible)!important}		[data-marpad~="mbXL_flexible"]	{margin-bottom:var(--site-marpad-XL-flexible)!important}	[data-marpad~="mlXL_flexible"]	{margin-left:var(--site-marpad-XL-flexible)!important}		[data-marpad~="ptXL_flexible"]	{padding-top:var(--site-marpad-XL-flexible)!important}		[data-marpad~="prXL_flexible"]	{padding-right:var(--site-marpad-XL-flexible)!important}	[data-marpad~="pbXL_flexible"]	{padding-bottom:var(--site-marpad-XL-flexible)!important}		[data-marpad~="plXL_flexible"]	{padding-left:var(--site-marpad-XL-flexible)!important}		[data-marpad~="ptbXL_flexible"]	{padding-top:var(--site-marpad-XL-flexible)!important;padding-bottom:var(--site-marpad-XL-flexible)!important}		[data-marpad~="plrXL_flexible"]	{padding-right:var(--site-marpad-XL-flexible)!important;padding-left:var(--site-marpad-XL-flexible)!important}
[data-marpad~="mtL_flexible"]	{margin-top:var(--site-marpad-L-flexible)!important}		[data-marpad~="mrL_flexible"]	{margin-right:var(--site-marpad-L-flexible)!important}		[data-marpad~="mbL_flexible"]	{margin-bottom:var(--site-marpad-L-flexible)!important}		[data-marpad~="mlL_flexible"]	{margin-left:var(--site-marpad-L-flexible)!important}		[data-marpad~="ptL_flexible"]	{padding-top:var(--site-marpad-L-flexible)!important}		[data-marpad~="prL_flexible"]	{padding-right:var(--site-marpad-L-flexible)!important}		[data-marpad~="pbL_flexible"]	{padding-bottom:var(--site-marpad-L-flexible)!important}		[data-marpad~="plL_flexible"]	{padding-left:var(--site-marpad-L-flexible)!important}		[data-marpad~="ptbL_flexible"]	{padding-top:var(--site-marpad-L-flexible)!important;padding-bottom:var(--site-marpad-L-flexible)!important}		[data-marpad~="plrL_flexible"]	{padding-right:var(--site-marpad-L-flexible)!important;padding-left:var(--site-marpad-L-flexible)!important}
[data-marpad~="mtM_flexible"]	{margin-top:var(--site-marpad-M-flexible)!important}		[data-marpad~="mrM_flexible"]	{margin-right:var(--site-marpad-M-flexible)!important}		[data-marpad~="mbM_flexible"]	{margin-bottom:var(--site-marpad-M-flexible)!important}		[data-marpad~="mlM_flexible"]	{margin-left:var(--site-marpad-M-flexible)!important}		[data-marpad~="ptM_flexible"]	{padding-top:var(--site-marpad-M-flexible)!important}		[data-marpad~="prM_flexible"]	{padding-right:var(--site-marpad-M-flexible)!important}		[data-marpad~="pbM_flexible"]	{padding-bottom:var(--site-marpad-M-flexible)!important}		[data-marpad~="plM_flexible"]	{padding-left:var(--site-marpad-M-flexible)!important}		[data-marpad~="ptbM_flexible"]	{padding-top:var(--site-marpad-M-flexible)!important;padding-bottom:var(--site-marpad-M-flexible)!important}		[data-marpad~="plrM_flexible"]	{padding-right:var(--site-marpad-M-flexible)!important;padding-left:var(--site-marpad-M-flexible)!important}
[data-marpad~="mtS_flexible"]	{margin-top:var(--site-marpad-S-flexible)!important}		[data-marpad~="mrS_flexible"]	{margin-right:var(--site-marpad-S-flexible)!important}		[data-marpad~="mbS_flexible"]	{margin-bottom:var(--site-marpad-S-flexible)!important}		[data-marpad~="mlS_flexible"]	{margin-left:var(--site-marpad-S-flexible)!important}		[data-marpad~="ptS_flexible"]	{padding-top:var(--site-marpad-S-flexible)!important}		[data-marpad~="prS_flexible"]	{padding-right:var(--site-marpad-S-flexible)!important}		[data-marpad~="pbS_flexible"]	{padding-bottom:var(--site-marpad-S-flexible)!important}		[data-marpad~="plS_flexible"]	{padding-left:var(--site-marpad-S-flexible)!important}		[data-marpad~="ptbS_flexible"]	{padding-top:var(--site-marpad-S-flexible)!important;padding-bottom:var(--site-marpad-S-flexible)!important}		[data-marpad~="plrS_flexible"]	{padding-right:var(--site-marpad-S-flexible)!important;padding-left:var(--site-marpad-S-flexible)!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_fadeIn_and_scaleGetBigger_and_blur {
	0% {	opacity: 0;	transform: scale(.5); filter: blur(10px);}
	100% {	opacity: 1;	transform: scale(1); filter: blur(0px);}
}


/* ***************************************************************************************************
	BASE
*************************************************************************************************** */

/* ======================================================================================
	NOSCRIPT
====================================================================================== */
	.noscript_jsOnGuidance {
		position: absolute;
		top: 0;
		left: 0;
		z-index: 10000;
		width: 100%;
		color: #000;
		line-height: 1.75;
		font-size: 16px;
		text-align: center;
		letter-spacing: .07em;
		background: rgba(255, 255, 255, .9);
		padding: 1.7em;
		border: 4px double #000;
	}



/* ======================================================================================
	SITE_WRAPPER | ボディ、サイトラッパー
====================================================================================== */
	body.is_drawerMenu_gNav_active {
		overflow: hidden;
	}
	.siteWrap {
	}



/* ======================================================================================
	SITE_HEADER
====================================================================================== */
/* //////////////////////////////////////////////////////////////////////////////////
 * 先祖要素に backdrop-filter を設定すると、子孫要素の position: fixed; が効かなくなる点に注意。
////////////////////////////////////////////////////////////////////////////////// */
	.siteHeaderWrap {
		--base-siteHeaderWrap-bgBokeh-background: 255, 255, 255;
		--base-siteHeaderWrap-bgBokeh-backdropFilter: blur(4px) saturate(150%);
		position: fixed;
		top: 0;
		left: 0;
		z-index: 999;
		width: 100%;
		height: var(--site-stickyHeader-height);
		overflow: hidden;
		color: rgba(var(--site-variationColor-yellow), 1);


	}
	.siteHeaderWrap::before { /* ぼかし背景 */
		content: "";
		position: absolute;
		inset: 0;
		z-index: -1;
		background: var(--site-themeColor-accent_1);
		opacity: 1;
		transition: opacity .8s ease-out;
	}
	body.winScrolledShort .siteHeaderWrap {
		/*background: rgba(0,0,0,.6);*/
	}
	body.winScrolledShort .siteHeaderWrap::before {
		/*opacity: 0.5;*/	/* setting.js | WinScrolledObserver | 「とても少しスクロールしたら」ヘッダーの背景色を表示する */
	}
	.siteHeader {
		display: flex;
		flex-direction: column;
		justify-content: space-between;
		width: 96%;
		max-width: 1200px;
		height: var(--site-stickyHeader-height);
		margin-left: auto;
		margin-right: auto;
	}
@media screen and (max-width: 900px) {
	.siteHeaderWrap {
		position: absolute;
		height: auto;
		overflow: visible;
		
	}
	.siteHeaderWrap::before {
		/*content: none;*/
		background: linear-gradient(to bottom, rgba(0,0,0,.8) 0%, rgba(0,0,0,.0) 100%);
		/*-webkit-backdrop-filter: var(--base-siteHeaderWrap-bgBokeh-backdropFilter);*/
		/*backdrop-filter: var(--base-siteHeaderWrap-bgBokeh-backdropFilter);*/
	}
	.changeLogo .siteHeaderWrap::before {
		background: linear-gradient(to bottom, rgba(255,255,255,.8) 0%, rgba(255,255,255,.0) 100%);
	}
	
	.siteHeader {
		width: 100%;
	}
}


/* siteHeaderLogoWrap
------------------------------------------------------------------------ */
	.siteHeaderLogoWrap {
		display: flex;
		justify-content: space-between;
		align-items: center;
		margin-top: 15px;
				/*			background: hotpink;*/
	}
	/* siteHeaderLogo
	---------------------------------------------------- */
	.siteHeaderLogo {
		flex: 0 0 35%;
		display: flex;
		justify-content: flex-start;
		align-items: center;
		position: relative;
		/*max-width: clamp(320px, (340 / 1200 * 100vw), 340px);
		height: 35px;*/
		max-width: clamp(300px, (300 / 1200 * 100vw), 300px);
		height: 19px;
		line-height: 1;
		font-size: inherit;
	}
	.siteHeaderLogo img {
		position: absolute;
		inset: 0;
		width: 100%;
		max-width: none;
		height: 100%;
		object-fit: contain;
		object-position: left center;
	}

	/* hNavWrap
	---------------------------------------------------- */
	.hNavWrap {
		flex: 0 1 auto;
		display: flex;
		align-items: center; /* SP時に解除すること */
				/*			background: tan;*/
	}
	.hNav {
		display: flex;
		justify-content: flex-end;
		/*column-gap: min((28 / 1366 * 100vw), 28px);*/
	}
	.hNav li {
		display: flex;
		--M-fluidFontSize-max-fontsize: 13;
		--M-fluidFontSize-min-fontsize: 11;
		--M-fluidFontSize-max-viewport: 1200;
		--M-fluidFontSize-min-viewport: 900;
		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)
		);
		letter-spacing: .07em;
	}
	
	
	.hNav li:where([data-hnav-li="bgColor"]) + li:where([data-hnav-li="bgColor"]) {
		margin-left:2px;
	}
	/*.hNav li.reqNav {
		margin-right:2px;
	}*/
	.hNav li a {
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		align-items: center;
		position: relative;
		z-index: 0;
		padding: .5em 0;
	}
	.hNav li:where([data-hnav-li="text"]) a {
		color:#fff;
		padding-left: .2em;
		padding-right: .2em;
		margin-right: min((10 / 1200 * 100vw), 40px);
		line-height: 1.35;
	}
	.hNav li:where([data-hnav-li="bgColor"]) a {
		color: #fff;
		background-color: #000;
		/*padding-left: 4em;
		padding-right: 4em;*/
	}
	.hNav li a::before {
		content: "icon-pic";
		display: none;
	}
	.hNav li a::after {
		content: none; /* icon-new */
		display: block;
		position: absolute;
		top: 0;
		left: 0;
		right: auto;
		z-index: 1;
		line-height: 1.35;
		/*color: rgba(var(--site-variationColor-yellow), 1);*/
		color: #fff;
		font-family: var(--site-font_family-en_1);
		font-size: 1rem;
		text-align: center;
		/*font-weight: bold;*/
		letter-spacing: -.01em;
		background: #cf0e3b;
		transform-origin: center bottom;
	}
	.hNav li:where([data-hnav-li="text"]) a::after {
		transform: scale(.9) translateY(calc(-100% + .4em));
	}
	.hNav li:where([data-hnav-li="bgColor"]) a::after {
		/*transform: scale(.9) translateY(-100%);*/
		top: 0;
		left: revert;
		right: 0;
		/*transform: scale(.9);*/
		font-size: 1.05rem;
		transform-origin: right top;
		padding: 0 .5em;
	}
	.hNav li.is_new a::after {		content: "NEW";}
	.hNav li.is_update a::after {	content: "UPDATE";}
	
	.hNav li a > div {
		flex: 0 0 100%;
	}
	.hNav li a > div::after { /* hover, current 用 */
		content: "";
		position: absolute;
		z-index: -1;
		transform: scaleX(0);
		transform-origin: right top;
	}
	.hNav li:where([data-hnav-li="text"]) a > div::after { /* 下線 */
		inset: auto 0 0;
		border-bottom: 1px solid currentColor;
		transition: transform .2s var(--M-easing-easeInOutQuint);
	}
	.hNav li:where([data-hnav-li="bgColor"]) a > div::after { /* 背景色 */
		inset: 0;
		background-color: #666;
		transition: transform .25s var(--M-easing-easeInOutQuint);
	}
	/* -- Individual -- */
	.hNav li:where(.telNav) {
		display: none;
	}
	/* off色 */
	.hNav li:where(.reqNav) a {		background-color: rgba(var(--site-specificColor-req), 1); padding-left: 1.25em; padding-right: 1.25em;}
	.hNav li:where(.resNav) a {		background-color: rgba(var(--site-specificColor-res), 1); padding-left: 2.75em; padding-right: 2.75em;}
	.hNav li:where(.limNav) a {		background-color: rgba(var(--site-specificColor-lim), 1); padding-left: 1.05em; padding-right: 1.05em;}
	.hNav li:where(.limNav.is_new) a {	padding-left: 1.55em; padding-right: 1.55em;} /* [NEWアイコン]の幅をできるだけ確保 */
	/* on色 */
	.hNav li:where(.reqNav) a > div::after {	background-color: rgba(var(--site-specificColor-req-active), 1);}
	.hNav li:where(.resNav) a > div::after {	background-color: rgba(var(--site-specificColor-res-active), 1);}
	.hNav li:where(.limNav) a > div::after {	background-color: rgba(var(--site-specificColor-lim-active), 1);}
	
	/* -- hover, current -- */
	@media (hover: hover) and (pointer: fine) {
		.hNav li a[href]:hover > div::after {
			transform: scaleX(1);
			transform-origin: left top;
		}
	}
	.hNav li.is_current a > div::after {
		transform: scaleX(1);
		transform-origin: left top;
	}
	/* -- placeholder -- */
	.hNav li:where([data-hnav-li="text"]) a:not([href]) {
		opacity: .25;
	}
	.hNav li:where([data-hnav-li="bgColor"]) a:not([href]) {
		opacity: .11;
	}
	/* drawerBtn_gNavWrap
	---------------------------------------------------- */
	.drawerBtn_gNavWrap {
		display: none;
	}
@media screen and (min-width: 900.02px) {
/* //////////////////////////////////////////////////////////////////////////////////
 * setting.js | WinScrolledObserver | PC時のトップページのみ「とても少しスクロールしたら」ヘッダーロゴを標準サイズにする（小さくする）
////////////////////////////////////////////////////////////////////////////////// */
	/*body.indexP .siteHeaderLogo {
		transition: height .2s ease-out;
	}
	body.indexP:not(.winScrolledVeryShort) .siteHeaderLogo {
		height: 50px;
	}*/
	
/* //////////////////////////////////////////////////////////////////////////////////
 * setting.js | WinScrolledObserver | PC時のみ「とても少しスクロールしたら」グロナビを表示する（[!]ユーザビリティ注：非表示の間、グロナビはタブ移動ができなくなる）
////////////////////////////////////////////////////////////////////////////////// */
	body.indexP .gNavWrap {
		/*visibility: hidden;*/
		/*opacity: 0;*/
		/*transition: visibility 0s ease-out .3s, opacity .3s ease-out;*/
	}
	body.indexP.winScrolledVeryShort .gNavWrap {
		/*visibility: visible;*/
		/*opacity: 1;*/
		/*transition: visibility 0s ease-out, opacity .3s ease-out;*/
	}
	
	body .siteHeaderLogo {
		transition: all .2s ease-out;
		max-width: clamp(240px, (240 / 900 * 100vw), 350px);
	}
	body:not(.winScrolledShort) .siteHeaderLogo {
		/*max-width:400px;*/
	/*	max-width: clamp(240px, (240 / 900 * 100vw), 350px);*/
		height: 50px;
	}
	
	body .siteHeader,
	body .siteHeaderWrap {
		transition: height .3s ease-out;
	}
	body.winScrolledShort .siteHeader,
	body.winScrolledShort .siteHeaderWrap {
		--site-stickyHeader-height:			95px;
		transition: height .3s ease-out;
	}
	body.winScrolledShort .siteHeaderLogoWrap {
		/*margin-top:5px;*/
		margin-top:7px;
	}
	
	body.winScrolledShort .hNav li:where([data-hnav-li="bgColor"]) a {
	  padding-top: 0em;	
	  padding-bottom: 0em;	
	}
	body.winScrolledShort .hNav:has( li.is_new) li:where([data-hnav-li="bgColor"]) a {
	  padding-top: 6px; /* [NEWアイコン]の高さをできるだけ確保 */
	  padding-bottom: 6px;
	}
	body.winScrolledShort .gNav li a {
	padding: .3em var(--base-gNav-a-pad-lr);
	}
	
	
	/* hNavWrap
	---------------------------------------------------- */
	.hNav li:where([data-hnav-li="text"]) a {
		  position: relative;
	}
	.hNav li:where([data-hnav-li="text"]) a::before {
		content: "";
		display: block;
		position: absolute;
		top: 50%;
		left: 0;
		width: 0;
		height: 0;
		transform: translateY(-50%);
		border-style: solid;
		border-top: 3px solid transparent;
		border-bottom: 3px solid transparent;
		border-left: 9px solid rgba(255,255,255,.8);
		border-right: 0;
	}
	.hNav li:where([data-hnav-li="text"]) a > div {
		padding-left:12px;
	}
	.hNav li.mapNav {
		letter-spacing: -0.08em;
	}
	
	/* 2506 変更分 */
	.hNav li.mapNav .sp_map{ display: none;	}
	.hNav li.mapNav .pc_map{ display: block;	}
	/* 2506 変更分END */
	
}
@media screen and (max-width: 900px) {
	.siteHeaderLogoWrap {
		align-items: center;
		height: var(--site-stickyHeader-height);
		margin-top: 0;
		padding-left: 17px;
	}
	/* siteHeaderLogo
	---------------------------------------------------- */
	.siteHeaderLogo {
		flex: 0 0 calc(100% - var(--site-stickyHeader-height) - 15px);
		/*height: 38px;
		transform: translateY(6px);*/
		/*height: clamp(15px, (15 / 600 * 100vw), 20px) ;*/
		height: clamp(15px, (15 / 600 * 100vw), 18px) ;
		transform: translateY(1px);
	}
	/* hNavWrap
	---------------------------------------------------- */
	.hNavWrap {
		align-items: stretch;
		position: fixed;
		bottom: 0;
		left: 0;
		z-index: 997;
		width: 100%;
		height: var(--site-stickyConversionSP-height);
	}
	.hNav {
		flex: 0 0 100%;
		justify-content: space-between;
		column-gap: 0;
		background: rgba(255, 255, 255, .35);
	}
	.hNav li {
		flex: 1 1;
		display: flex;
		line-height: 1.2;
		font-size: 1.1rem;
		letter-spacing: .03em;
		margin-left: 0;
	}
	.hNav li:where([data-hnav-li="bgColor"]) + li:where([data-hnav-li="bgColor"]) {
		margin-left: 0;
	}
	/*.hNav li.reqNav {
		margin-right: 0;
	}*/	
	.hNav li:nth-of-type(n+2) {
		/*border-left: 1px solid #fff;*/
		margin-left: 1px;
	}
	.hNav li a {
		flex: 1 1 100%;
		text-align: center;
		padding: .4em .8em;
	}
	/*.hNav li.outNav,
	.hNav li.mapNav { display: none;}*/
	
	
	/* 2506 変更分 */
	.hNav li.outNav,
	.hNav li.limNav { display: none;}
	.hNav li.mapNav { order: 4;}
	.hNav li.mapNav .sp_map{ display: block;	}
	.hNav li.mapNav .pc_map{ display: none;	}
	/* 2506 変更分END */
	
	
	
	.hNav li:where([data-hnav-li="text"]) a {
		color: rgba(var(--site-variationColor-yellow_light), 1);

		background: #798b96;
		margin-right: 0;
	}
	.hNav li:where([data-hnav-li="bgColor"]) a {
		color: rgba(var(--site-variationColor-yellow_light), 1);
	}
	.hNav li a::before {
		display: block;
		content: "";
		width: 20px;
		height: 20px;
	}
	.hNav li a::after { /* icon-new */
		left: 0;
		right: auto;
		color: #fff;
		background: #aa0;
		padding: .1em .15em .05em;
		transform: scale(.85);
		transform-origin: left top;
	}
	.hNav li a > div {
		flex: 0 0 100%;
	}
	.hNav li a > div::after { /* 一旦削除 */
		content: none;
	}
	/* -- hover, current -- */
	/*.hNav li.is_current a > div::after {
		content: "";
		position: absolute;
		inset: 0;
		z-index: -1;
		background: radial-gradient(circle at center -60%, rgba(255, 255, 255, .53) 0%, rgba(255, 255, 255, 0) 77%);
		border: none;
		transform: scaleX(1);
		transition: none;
	}*/
	/* -- Individual -- */
	.hNav li.telNav a::before { background-image: url("../images/share/hnav_ico_tel.svg"); }
	.hNav li.outNav a::before { background-image: url("../images/share/hnav_ico_out.svg"); }
	.hNav li.mapNav a::before { background-image: url("../images/share/hnav_ico_map.svg"); }
	.hNav li.reqNav a::before { background-image: url("../images/share/hnav_ico_req.svg"); }
	.hNav li.resNav a::before { background-image: url("../images/share/hnav_ico_res.svg"); }
	.hNav li.limNav a::before { background-image: url("../images/share/hnav_ico_lim.svg"); }

	/* off色 */
	.hNav li:where(.telNav) a {		background-color: #565452;}
	.hNav li:where(.reqNav) a {		background-color: #372e29;}
	.hNav li:where(.resNav) a {		background-color: #10100f;}
	.hNav li:where(.mapNav) a {		background-color: #331616;}



	/* -- placeholder -- */
	.hNav li a:not([href]) {
		opacity: 1;
	}
	.hNav li a:not([href])::before,
	.hNav li a:not([href]) > div {
		opacity: .25;
	}

	/* drawerBtn_gNavWrap
	---------------------------------------------------- */
	.drawerBtn_gNavWrap {
		display: flex;
		position: fixed;
		top: 0;
		right: 0;
		z-index: 999;
		height: var(--site-stickyHeader-height);
		aspect-ratio: 1;
	}
	.drawerBtn_gNavWrap button {
		/* clear */
		-webkit-appearance: none;
		-moz-appearance: none;
		appearance: none;
		color: #000;
		font: inherit;
		background: transparent;
		border: none;
		border-radius: 0;
		cursor: pointer;
		
		/* reset */
		flex: 1 1 100%;
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		align-items: flex-end;
		align-content: center;
		background: rgba(var(--base-siteHeaderWrap-bgBokeh-background), 1);
		padding: 9px 0;
		/*-webkit-backdrop-filter: var(--base-siteHeaderWrap-bgBokeh-backdropFilter);*/
		/*backdrop-filter: var(--base-siteHeaderWrap-bgBokeh-backdropFilter);*/
		transition: background .2s ease;
	}
	.drawerBtn_gNavWrap button[aria-expanded="true"] {
		color: #fff;
		background: transparent;
		-webkit-backdrop-filter: none;
		backdrop-filter: none;
	}
	@media (hover: hover) and (pointer: fine) {
		.drawerBtn_gNavWrap button:hover {
			background: rgba(var(--base-siteHeaderWrap-bgBokeh-background), .7);
		}
		.drawerBtn_gNavWrap button[aria-expanded="true"]:hover {
			background: rgba(0, 0, 0, .04);
		}
	}
	.drawerBtn_gNavWrap button .line {
		flex: 0 0 55%;
		display: block;
		position: relative;
		height: 7px;
		margin: 0 auto;
	}
			/* ≡ ライン */
			.drawerBtn_gNavWrap button .line::before,
			.drawerBtn_gNavWrap button .line::after {
				content: "";
				display: block;
				position: absolute;
				inset: 0;
				width: 100%;
				height: 1px;
				background: currentColor;
				transition: transform .18s ease-in-out;
			}
			.drawerBtn_gNavWrap button .line::before {	transform: translateY(-4.5px);}
			.drawerBtn_gNavWrap button .line::after {	transform: translateY(4.5px);}
			/* × ライン （グロナビアクティブ時） */
			.drawerBtn_gNavWrap button[aria-expanded="true"] .line::before,
			.drawerBtn_gNavWrap button[aria-expanded="true"] .line::after {
			}
			.drawerBtn_gNavWrap button[aria-expanded="true"] .line::before {	transform: rotate(45deg);}
			.drawerBtn_gNavWrap button[aria-expanded="true"] .line::after {		transform: rotate(-45deg);}
	
	.drawerBtn_gNavWrap button .label {
		flex: 1 1 100%;
		display: block;
		line-height: 1;
		font-family: var(--site-font_family-en_1);
		font-size: 1rem;
		font-weight: 600;
		text-align: center;
		text-transform: uppercase;
		letter-spacing: .12em;
		margin-top: 12px;
		padding: 0 .3em;
	}
}
@media screen and (max-width: 600px) {
	/* hNavWrap
	---------------------------------------------------- */
	.hNav li {
		font-size: 1rem;
		letter-spacing: .02em;
	}
	.hNav li a {
		padding: .4em;
	}
}
@media screen and (max-width: 359.08px) {
	/* hNavWrap
	---------------------------------------------------- */
	.hNav li {
		font-size: .9rem;
		letter-spacing: 0em;
	}
}


/* gNavWrap
------------------------------------------------------------------------ */
	.gNavWrap {
		margin-bottom: 10px;
	}
	.gNav {
		display: flex;
		justify-content: center;
	}
	.gNav li {
		flex: 1 1 auto;
		display: flex;
		position: relative;
		z-index: 0;
		text-align: center;
		letter-spacing: normal;
	}
	.gNav li:where(:nth-of-type(1))::before,
	.gNav li::after {
		content: "";
		position: absolute;
		z-index: 1;
		width: 1px;
		height: 1.8em;
		background: currentColor;
		margin: auto;
	}
	.gNav li:where(:nth-of-type(1))::before {
		inset: 0 auto 0 0;
	}
	.gNav li::after {
		inset: 0 0 0 auto;
	}
	.gNav li a {
		--base-gNav-a-pad-lr: 9px;
		flex: 0 0 100%;
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		align-items: center;
		position: relative;
		z-index: 0;
		padding: .6em var(--base-gNav-a-pad-lr);
	}
	.gNav li a::before {
		content: none; /* icon-new */
		display: inline-block;
		position: absolute;
		/*top: 0.5em;*/
		top: -1em;
		left: auto;
		right: auto;
		z-index: 1;
		padding:2px 6px;
		line-height: 1.1;
		color: #fff;
		font-family: var(--site-font_family-en_1);
		font-size: 1.1rem;
		letter-spacing: -.01em;
		background: #cf0e3b;
		
	}
	.gNav li.is_new a::before {		content: "NEW";}
	.gNav li.is_update a::before {	content: "UPDATE";}
	
	.gNav li a > div {
		flex: 0 0 100%;
	}
	.gNav li .en {
		display: block;
		--M-fluidFontSize-max-fontsize: 16;
		--M-fluidFontSize-min-fontsize: 12;
		--M-fluidFontSize-max-viewport: 1300;
		--M-fluidFontSize-min-viewport: 901;
		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);
		letter-spacing: 0.08em;
		line-height: 1;
	}
	
	.gNav li .ja {
		display: block;
		margin-top:0.5em;
		--M-fluidFontSize-max-fontsize: 11;
		--M-fluidFontSize-min-fontsize: 9;
		--M-fluidFontSize-max-viewport: 1300;
		--M-fluidFontSize-min-viewport: 901;
		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-weight: 400;
		letter-spacing: 0.08em;
		line-height: 1;
		color:#ece1c0;
	}
	
	.gNav li a > div::after { /* hover, current 用 */
		content: "";
		position: absolute;
		z-index: -1;
		inset: auto 0 0;
		width: min((80% - (var(--base-gNav-a-pad-lr) * 2)), 60px);
		margin: 0 auto;
		border-bottom: 1px solid currentColor;
		transform: scaleX(0);
		transform-origin: right top;
		transition: transform .2s var(--M-easing-easeInOutQuint);
	}
	/* -- Individual -- */
	.gNav li:where(.outNav, .mapNav, .limNav) {
		display: none;
	}
	/* -- hover, current -- */
	@media (hover: hover) and (pointer: fine) {
		.gNav li a[href]:hover > div::after {
			transform: scaleX(1);
			transform-origin: left top;
		}
	}
	.gNav li.is_current a > div::after {
		transform: scaleX(1);
		transform-origin: left top;
	}
	/* -- placeholder -- */
	.gNav li a:not([href]) {
		opacity: .25;
	}



@media screen and (max-width: 900px) {
/* //////////////////////////////////////////////////////////////////////////////////
 * .gNavWrap			：背景カバーの役割有
 * .gNavWrap::before	：背景カバーの色
 * .gNav				：横からスライド表示
 * .gNav li a			：メニューボタンと重ならないように右余白設ける
////////////////////////////////////////////////////////////////////////////////// */
	.gNavWrap {
		display: block;
		position: fixed;
		inset: 0;
		z-index: 998;
		height: 100lvh;
		overflow-x: hidden;
		overflow-y: scroll;
		overscroll-behavior-y: none; /* none=バウンドしない */
		background: transparent;
		margin-bottom: 0;
	}
	.gNavWrap[aria-hidden="true"] {
		visibility: hidden;
		opacity: 0;
		transition: visibility 0s ease calc(.4s + .1s),
					opacity .4s ease;
	}
	.gNavWrap[aria-hidden="false"] {
		visibility: visible;
		opacity: 1;
		transition: visibility 0s ease,
					opacity .4s ease;
	}
	.gNavWrap[aria-hidden="false"]::before {
		content: "";
		display: block;
		position: fixed;
		inset: 0;
		z-index: -1;
		width: 100%;
		background: rgba(239, 240, 238, .7);
	}
	.gNav {
		display: block;
		position: absolute;
		top: 0;
		right: 0;
		z-index: 1;
		width: min(72.222vw, 380px);
		min-height: calc(100lvh + 1px); /* min-heightを100lvhより大きくすることで背面コンテンツのスクロールを抑制 */
		color: rgba(var(--site-themeColor-accent_1_text), 1);
		background: var(--site-themeColor-accent_1);
		padding: calc(var(--site-stickyHeader-height) + 10px)
				20px
				calc(var(--site-stickyConversionSP-height) + (var(--site-stickyHeader-height) + 10px));
		transform-origin: right top;
		transition: right .6s ease;
	}
	.gNavWrap[aria-hidden="true"] .gNav {
		right: -100%;
	}
	.gNavWrap[aria-hidden="false"] .gNav {
		right: 0;
	}
	.gNav li {
		display: block;
		width: 100%;
		font-size: 1.6rem;
		text-align: left;
		letter-spacing: .06em;
		margin-bottom: .6em;
	}
	.gNav li .ja {
		display: block;
		font-size: 1.5rem;
		letter-spacing: 0.08em;
		line-height: 1;
		color: #fff;
	}
	.gNav li .en {
		display: block;
		font-family: var(--site-font_family-en_1);
		color:#cc3;
		/*font-weight: bold;*/
	}
	
	.gNav li::before,
	.gNav li::after {
		content: none;
	}
	.gNav li a {
		--base-gNav-a-pad-lr: 1vw;
		display: block;
		width: 100%;
		padding: .75em var(--site-stickyHeader-height) .7em var(--base-gNav-a-pad-lr);
	}
	.gNav li a::before { /* icon-new */
		position: relative;
		magrin-bottom:3px;
		/*top: 3px;*/
		/*left: var(--base-gNav-a-pad-lr);*/
	}
	.gNav li a > div {
		width: 100%;
	}
	.gNav li a > div::after { /* hover, current 用 */
		bottom: 4px;
		width: min(80%, 50px);
		margin: 0 var(--base-gNav-a-pad-lr);
	}
	/* -- Individual -- */
	.gNav li:where(.outNav, .mapNav, .limNav) {
		display: block;
	}
	/* -- hover, current -- */
	@media (hover: hover) and (pointer: fine) {
		.gNav li a[href]:hover > div::after {
			transform: scaleX(1);
			transform-origin: left top;
		}
	}
	.gNav li.is_current a > div::after {
		transform: scaleX(1);
		transform-origin: left top;
	}
	/* -- placeholder -- */
	.gNav li a:not([href]) {
		opacity: .3;
	}
}
@media screen and (min-width: 600.02px) and (max-width: 900px) {
	/* フローティングバナーでナビゲーションが隠れてしまうので回避策 */
	body.indexP .siteWrap:has( #js_floatingBanner_bn01) .gNav {
		--index-floatingBanner_bn01-height-feeling: 100px;
		padding-bottom: calc(var(--site-stickyConversionSP-height) + (var(--site-stickyHeader-height) + 10px) + var(--index-floatingBanner_bn01-height-feeling));
	}
}
@media screen and (max-width: 359.08px) {
	.gNav {
		width: 87vw;
	}
}





/* ======================================================================================
	SITE_FOOTER
====================================================================================== */
	.siteFooterWrap {
		background: #f1ede8;
	}
@media screen and (max-width: 900px) {
	.siteFooterWrap {
		padding-bottom: var(--site-stickyConversionSP-height);
	}
}





/* siteFooter
------------------------------------------------------------------------ */
	.siteFooter {
		--base-siteFooter-descendantElem-pad-lr: clamp(20px, 5.5vw, 50px);
	}
	.siteFooter > * {
		padding-left:	var(--base-siteFooter-descendantElem-pad-lr);
		padding-right:	var(--base-siteFooter-descendantElem-pad-lr);
	}
	
	/* contactAddress
	---------------------------------------------------- */
	.contactAddress {
		min-height: 0.001vw;				/* for safari | font-sizeにclamp()使用時必須 */
		line-height: 1.4;
		font-size: clamp(1.2rem, (14.2 / 600 * 100vw), 1.42rem);
		font-style: normal;
		text-align: center;
		letter-spacing: .06em;
		padding-top: 45px;
		padding-bottom: 45px;
		padding-left:	calc(var(--base-siteFooter-descendantElem-pad-lr) + .8em);
		padding-right:	calc(var(--base-siteFooter-descendantElem-pad-lr) + .8em);
		border-bottom: 1px solid #000;
	}
	.contactAddressInner {
		display: inline-flex;
		flex-direction: column;
		align-items: flex-start;
		text-align: left;
	}
	.contactAddress .nameBox { /* 2024.02 一式追加 */
		width: 100%;
		line-height: 1.5;
		text-align: center;
		letter-spacing: .02em;
		margin-bottom: 2px;
	}
	.contactAddress .nameBox :is(.txt, .post) {
		display: block;
	}
	.contactAddress .nameBox :is(.name) {
		display: inline-block;
	}
	.contactAddress .nameBox .name {
		margin: 0 -.1em;
	}
	.contactAddress .telBox {
		padding: 1em 0 .33em;
		margin:0 auto;
	}
	.contactAddress .telBox a {
		display: inline-block;
		min-height: 0.001vw;				/* for safari | font-sizeにclamp()使用時必須 */
		overflow: hidden;
		line-height: 1;
		font-size: clamp(3rem, (44 / 600 * 100vw), 4.4rem);
		font-family: var(--site-font_family-en_3);
		font-weight: 500;
		/*line-height: .9;
		font-family: var(--site-font_family-en_1);
		font-size: clamp(3.8rem, (53 / 600 * 100vw), 5.3rem);
		text-shadow: 0 0 1px rgba(var(--site-themeColor-base_text), .1), 0 0 1px rgba(var(--site-themeColor-base_text), .3);*/
	}
	.contactAddress .telBox strong {
		display: flex;
		justify-content: center;
		align-items: baseline;
	}
	.contactAddress .telBox .ttl {
		height: .57em;
		margin-left: 1px;
		margin-right: .19em;
	}
	.contactAddress .telBox .ttl img {
		display: block;
		width: auto;
		max-width: none;
		height: 100%;
	}
	.contactAddress .telBox .value {
		letter-spacing: clamp(.095em, (6 / 900 * 100vw), .14em);
		/*letter-spacing: -.007em;
		transform: translateY(.04em);*/
	}
	.contactAddress .timeBox {
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		width: 100%;
		font-size: .91em;
	}
	.contactAddress .timeBox > * {
		display: flex;
		align-items: baseline;
	}
	.contactAddress .timeBox > *:not(:last-of-type) {
		margin-right: 1em;
	}
	.contactAddress .timeBox .ttl {
		letter-spacing: .1em;
		white-space: nowrap;
		/*padding-right: .2em;*/
	}
	.contactAddress .timeBox .valueWrap,
	.contactAddress .timeBox .valueWrap > * {
		display: inline;
	}
	/*.contactAddress .timeBox .valueWrap > *:not(:last-of-type)::after {
		content: "／";
		margin: 0 .2em;
	}*/
	.contactAddress .timeBox .closed .except {
		font: inherit;
		margin-left: .5em;
	}
	/* holiday | footer内 | .footHolidayWrap にはスタイル設定禁止 */
	.contactAddress .noteBox .footHolidayWrap .holiday {
		margin-top: 1.5em;
	}
	.contactAddress .noteBox .footHolidayWrap .holiday .holidayInner {
		display: inline-block;
		line-height: 1.55;
		color: #af4154;
		text-align: center;
		padding: .525em 1em .8em;
		border: 1px solid currentColor;
	}
	.contactAddress .noteBox .footHolidayWrap .holiday .holidayInner .ttl {
		display: block;
		font-size: 1.17em;
		letter-spacing: .07em;
		margin-bottom: .15em;
	}
	
	/* footCorpLink
	---------------------------------------------------- */
	.footCorpLink {
	}
	
	.footCorpLink .footCorpLinkBox {
		max-width:1100px;
		margin-left:auto;
		margin-right:auto;
	}
	.footCorpLink ul {
		width: 100%;
		margin-top:30px;
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		gap: 3.2%;
	}
	.footCorpLink li {
		margin-bottom:1em;
	}
	.footCorpLink a {
		display: inline-block;
        vertical-align: top;
	}
	.footCorpLink .txt {
		display: block;
		padding-bottom:0.7em;
		--M-fluidFontSize-max-fontsize: 11;
		--M-fluidFontSize-min-fontsize: 10;
		--M-fluidFontSize-max-viewport: 1200;
		--M-fluidFontSize-min-viewport: 600;
		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)
		);
	}
	.footCorpLink ul li .corpLogo {
		display: block;
	}
	.footCorpLink ul li .corpLogo img {
		width: 100%;
		height: auto;
		display: block;
	}
	
	/* -- Individual -- */
	.footCorpLink .toray        { width: 33.33%;}
	.footCorpLink .kintetsu     { width: 12.546%;}
	.footCorpLink .daiwa        { width: 13.637%;}
	.footCorpLink .kanachu      { width: 15.455%;}
	.footCorpLink .keio         { width:  11.637%;}
	.footCorpLink .haseko       { width: 15.546%;}
	.footCorpLink .torayhausing { width: 18.465%;}
	
	.footCorpLink .toray .torayLayout{ max-width: 370px;}
	.footCorpLink .kintetsu img 	{ max-width: 138px;}
	.footCorpLink .daiwa img    	{ max-width:150px;}
	.footCorpLink .kanachu img  	{ max-width: 170px;}
	.footCorpLink .keio img     	{ max-width:  128px;}
	.footCorpLink .haseko img   	{ max-width: 171px;}
	.footCorpLink .torayhausing img { max-width: 203px;}
	
	/*torayLayout*/
	.footCorpLink .torayLayout {
		width: 100%;
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		align-items:flex-end;
	}
	.footCorpLink .torayLayout > span:nth-of-type(1) {
		width: 50.92%;
	}
	.footCorpLink .torayLayout > span:nth-of-type(2) {
		width: 49.08%;
	}
	.footCorpLink .torayLayout .corpLogo {
		align-items: center;
	}
	.footCorpLink .torayLayout .corpLogo > span {
		display: inherit;
		padding-right:1.8em;
		margin-right:0.35em;
		border-right:1px solid #ccc;
	}
	
	
@media screen and (max-width: 900px) {
	.footCorpLink ul {
		gap: 2%;
	}
	.footCorpLink .footCorpLinkBox {
		max-width:700px;
	}

	.footCorpLink .toray        { width: 100%;}
	.footCorpLink .kintetsu     { width: 32%;}
	.footCorpLink .daiwa        { width: 32%;}
	.footCorpLink .kanachu      { width: 32%;}
	.footCorpLink .keio         { width: 32%;}
	.footCorpLink .haseko       { width: 32%;}
	.footCorpLink .torayhausing { width: 32%;}
}

@media screen and (max-width: 600px) {
	.footCorpLink .txt {
		text-align: left;
	}
	.footCorpLink .toray        { width: 100%; text-align: center;}
	.footCorpLink .kintetsu     { width: 45%;}
	.footCorpLink .daiwa        { width: 45%;}
	.footCorpLink .kanachu      { width: 45%;}
	.footCorpLink .keio         { width: 45%;}
	.footCorpLink .haseko       { width: 45%;}
	.footCorpLink .torayhausing { width: 45%;}
	
	/* -- 1カラムver -- */
	/*.footCorpLink ul li {
		display: inline-block;
		text-align: center;
	}
	.footCorpLink .txt {
		text-align: left;
	}
	.footCorpLink .toray        { width: 100%;}
	.footCorpLink .kintetsu     { width: 100%;}
	.footCorpLink .daiwa        { width: 100%;}
	.footCorpLink .kanachu      { width: 100%;}
	.footCorpLink .keio         { width: 100%;}
	.footCorpLink .haseko       { width: 100%;}
	.footCorpLink .torayhausing { width: 100%;}*/
}
	
	
	/* copyright
	---------------------------------------------------- */
	.copyright {
		--M-fluidFontSize-max-fontsize: 11.25;
		--M-fluidFontSize-min-fontsize: 10;
		--M-fluidFontSize-max-viewport: 600;
		--M-fluidFontSize-min-viewport: 480;
		--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 );
		display: block;
		min-height: 0.001vw;				/* for safari | font-sizeにclamp()使用時必須 */
		font-size: var(--M-fluidFontSize-fontSize);
		text-align: center;
		letter-spacing: .02em;
		padding: 60px 1em;
	}
@media screen and (max-width: 600px) {
	.contactAddress {
		letter-spacing: .03em;
	}
}
@media screen and (max-width: 359.08px) {
	/* contactAddress
	---------------------------------------------------- */
	.contactAddress .telBox a {
		font-size: min((35 / 359 * 100vw), 3.5rem);
	}
	.contactAddress .telBox .value {
		letter-spacing: .05em;
	}
	.contactAddress .timeBox {
		flex-wrap: wrap;
	}
	
	/* footCorpLink
	---------------------------------------------------- */
	.footCorpLink dl {
		--M-fluidFontSize-max-fontsize: 13;
		--M-fluidFontSize-min-fontsize: 10;
		--M-fluidFontSize-max-viewport: 359;
		--M-fluidFontSize-min-viewport: 250;
	}
}



/* lastPagetop
------------------------------------------------------------------------ */
	.lastPagetop {
		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; 
	}
@media screen and (max-width: 900px) {
	.lastPagetop {
		position: static;
		clip: auto;
		clip-path: none;
		overflow: visible;
		width: 100%;
		height: auto;
		margin-top: -30px;
		padding-bottom: 30px;
	}
	.lastPagetop a {
		display: flex;
		justify-content: center;
		align-items: center;
		width: clamp(45px, (50 / 600 * 100vw), 60px);
		aspect-ratio: 1;
		background: #fff;
		border-radius: 100%;
		margin: 0 auto;
	}
	.lastPagetop a img {
		display: block;
		width: 42.222%;
		max-width: none;
		height: auto;
	}
}








/* ウィンドウサイズ確認表示 */
/*
body::before {content: "[PC]1390より大";display: flex;align-items: center;position: fixed;inset: 0 auto;color: red;font-size: 2em;font-weight: bold;text-shadow: 0 0 2px #000, 0 0 5px #000, 0 0 10px #000;border-left: 10px solid red;opacity: .5;pointer-events: none; }
@media screen and (max-width: 1390px) {	body::before {content: "[PCm]1390 以下";border-left: 10px solid green;color:green;} }
@media screen and (max-width: 1200px) {	body::before {content: "[PCs]1200 以下";border-left: 10px solid blue;color:royalblue;} }
@media screen and (max-width: 900px) {	body::before {content: "[TB]900 以下";border-left: 10px solid yellow;color:orange;} }
@media screen and (max-width: 600px) {	body::before {content: "[SP]600 以下";border-left: 10px solid magenta;color:magenta;} }
@media screen and (max-width: 480px) {	body::before {content: "[SPs]480 以下";border-left: 10px solid cyan;color:cyan;} }
*/
