@charset "UTF-8";
/* CSS変数 */
:root{
	/* ================== */
	/* カラー */
	--color-main:#d45d35;
	--color-bk-main: #505a5f;
	--color-bg: #F1E9DC;
	--color-main-bg: #FAF8EB;

	--color-data: #008080;
	--color-master: #b22222;

	--color-th: #dfeecf;
	--color-msg-bg: #eaffea;

	--color-gray-pale:#dedede;
	--color-gray-paler: #f0f0f0;
	--color-gray: #727272;
	--color-gray-strong: #505050;
	--color-bk-strong:#1b1b1b;
	--color-white:#ffffff;

	/* テキストリンク */
	--color-link: #298ecf;
	--color-link--hover: #c9751b;

	/* scroll bar */
	--color-scroll-bar: #4b6572;
	--color-scroll-bar-body: #053A5C;

	/* ================== */
	/* px to rem // 16px = 1rem = (16rem / 16) */
	--size-8px: calc(8rem / 16);
	--size-12px: calc(12rem / 16);
	--size-14px: calc(14rem / 16);
	--size-16px: calc(16rem / 16);
	--size-18px: calc(18rem / 16);
	--size-24px: calc(24rem / 16);
	--size-32px: calc(32rem / 16);
	--size-40px: calc(40rem / 16);
	--size-48px: calc(48rem / 16);
	--size-56px: calc(56rem / 16);
	--size-64px: calc(64rem / 16);
	--size-80px: calc(80rem / 16);
	--size-88px: calc(88rem / 16);
	--size-100px: calc(100rem / 16);
	--size-120px: calc(120rem / 16);
	--size-180px: calc(180rem / 16);
	--size-240px: calc(240rem / 16);
	--size-280px: calc(280rem / 16);
	/* 559px 34.9375rem */
	/* 959px 59.9375rem */

	/* ================== */
	/* テキスト */
	/* フォント */
	--baseFonts: "Helvetica Neue",Arial,"Hiragino Kaku Gothic ProN","Hiragino Sans",Meiryo,sans-serif;
	/* フォントウェイト */
	--bold: bold;
	--medium: 500;
	--normal: normal;
	/* 基準値 min-width320px max-width1200px */
	/* 10px to 12px */
	--txt-xs: clamp(0.625rem, 0.58rem + 0.23vw, 0.75rem);
	/* 12px to 14px */
	--txt-sm: clamp(0.75rem, 0.705rem + 0.23vw, 0.875rem);
	/* 15px to 16px */
	--txt-reg: clamp(0.938rem, 0.915rem + 0.11vw, 1rem);
	/* 15px to 18px */
	--txt-md: clamp(0.938rem, 0.869rem + 0.34vw, 1.125rem);
	/* 20px to 24px */
	--txt-lg: clamp(1.25rem, 1.159rem + 0.45vw, 1.5rem);
	/* 24px to 32px */
	--txt-xl: clamp(1.5rem, 1.333rem + 0.83vw, 2rem);
	/* 32px to 40px */
	--txt-2xl: clamp(2rem, 1.818rem + 0.91vw, 2.5rem);
	/* 32px to 70px */
	--txt-3xl: clamp(2rem, 1.136rem + 4.32vw, 4.375rem);

	/* clamp fall back */
	--txt-xs--ie: calc(12rem / 16);
	--txt-sm--ie: calc(14rem / 16);
	--txt-reg--ie: calc(16rem / 16);
	--txt-md--ie: calc(18rem / 16);
	--txt-lg--ie: calc(24rem / 16);
	--txt-xl--ie: calc(32rem / 16);
	--txt-2xl--ie: calc(40rem / 16);
	--txt-3xl--ie: calc(70rem / 16);

	/* line-height */
	--line-height-xs:1.2;
	--line-height-sm:1.4;
	--line-height-reg:1.5;
	--line-height-md:1.7;
	--line-height-lg:2;

	/* ================== */
	/* オブジェクト */
	/* margin//主に上下 */
	--space-tb-xs: var(--size-24px);
	--space-tb-sm: var(--size-32px);
	--space-tb-reg: var(--size-40px);
	--space-tb-md: var(--size-56px);
	--space-tb-lg: var(--size-64px);
	--space-tb-xl: var(--size-80px);
	--space-tb-2xl: var(--size-120px);

	/* スペース//主に左右 */
	--space-lr-xs: min(2vw,var(--size-24px));
	--space-lr-sm: min(2vw,var(--size-32px));
	--space-lr-reg: min(4vw,var(--size-40px));
	--space-lr-md: min(4vw,var(--size-56px));
	--space-lr-lg: min(7vw,var(--size-64px));

	/* width */
	--max-width: calc(1280rem/16);
	--flexible-width: min(
		calc(100% - calc(var(--space-lr-reg) * 2)),
		var(--max-width)
	);
	/* ツラ合わせ設定
	window幅 - コンテンツ幅 / 2 = 片側の余白値 */
	--head-match-space: max(
		var(--space-lr-reg),
		calc(calc(100% - var(--max-width))/2)
	);

	/* height */
	--height-100vh: calc(var(--vh, 1vh) * 100);

	/* ================== */
	/* イージング */
	/* linear */
	/* 均等 */
	--linear:cubic-bezier(0.0, 0.0, 1.0, 1.0);

	/* easeInSine */
	--easeInSine:cubic-bezier(.47, 0, .745, .715);
	/* easeOutSine */
	--easeOutSine:cubic-bezier(.39, .575, .565, 1);
	/* easeInOutSine */
	--easeInOutSine:cubic-bezier(.445, .05, .55, .95);

	/* easeInQuad */
	--easeInQuad:cubic-bezier(.55, .085, .68, .53);
	/* easeOutQuad */
	--easeOutQuad:cubic-bezier(.25, .46, .45, .94);
	/* easeInOutQuad */
	--easeInOutQuad:cubic-bezier(.455, .03, .515, .955);

	/* easeInCubic */
	--easeInCubic:cubic-bezier(.55, .055, .675, .19);
	/* easeOutCubic */
	--easeOutCubic:cubic-bezier(.215, .61, .355, 1);
	/* easeInOutCubic */
	--easeInOutCubic:cubic-bezier(.645, .045, .355, 1);

	/* easeInQuart */
	--easeInQuart:cubic-bezier(.895, .03, .685, .22);
	/* easeOutQuart */
	--easeOutQuart:cubic-bezier(.165, .84, .44, 1);
	/* easeInOutQuart */
	--easeInOutQuart:cubic-bezier(.77, 0, .175, 1);

	/* easeInQuint */
	--easeInQuint:cubic-bezier(.755, .05, .855, .06);
	/* easeOutQuint */
	--easeOutQuint:cubic-bezier(.23, 1, .32, 1);
	/* easeInOutQuint */
	--easeInOutQuint:cubic-bezier(.86, 0, .07, 1);

	/* easeInExpo */
	--easeInExpo:cubic-bezier(.95, .05, .795, .035);
	/* easeOutExpo */
	--easeOutExpo:cubic-bezier(.19, 1, .22, 1);
	/* easeInOutExpo */
	--easeInOutExpo:cubic-bezier(1, 0, 0, 1);

	/* easeInCirc */
	--easeInCirc:cubic-bezier(.6, .04, .98, .335);
	/* easeOutCirc */
	--easeOutCirc:cubic-bezier(.075, .82, .165, 1);
	/* easeInOutCirc */
	--easeInOutCirc:cubic-bezier(.785, .135, .15, .86);

	/* 戻る動き//慣性スクロールのバウンドみたいな感じ */
	/* easeInBack */
	--easeInBack:cubic-bezier(.6, -0.28, .735, .045);
	/* easeOutBack */
	--easeOutBack:cubic-bezier(.175, .885, .32, 1.275);
	/* easeInOutBack */
	--easeInOutBack:cubic-bezier(.68, -0.55, .265, 1.55);
}
/* Dark Mode */
/* @media(prefers-color-scheme: dark) {
	:root{
		--color-main:#0d517b;
		--color-main-soft: #1e6388;
		--color-main-pale: #3385a5;
		--color-main-strong:#022239;

		--color-accent: #c96b74;
		--color-base: #c2c2c2;
	}
} */
/*-------------------------------*/

/* Tablet 959px */

/*------------------------------*/
@media(max-width: 959px){
:root{
	/* ================== */
	/* テキスト */
	/* clamp fall back */
	--txt-xs--ie: calc(12rem / 16);
	--txt-sm--ie: calc(14rem / 16);
	--txt-reg--ie: calc(16rem / 16);
	--txt-md--ie: calc(18rem / 16);
	--txt-lg--ie: calc(20rem / 16);
	--txt-xl--ie: calc(28rem / 16);
	--txt-2xl--ie: calc(32rem / 16);
	--txt-3xl--ie: calc(48rem / 16);
	/* ================== */
	/* オブジェクト */
	/* margin */
	--space-tb-xs: var(--size-24px);
	--space-tb-sm: var(--size-24px);
	--space-tb-reg: var(--size-32px);
	--space-tb-md: var(--size-40px);
	--space-tb-lg: var(--size-56px);
	--space-tb-xl: var(--size-64px);
	--space-tb-2xl: var(--size-80px);
}
}/*Tablet END*/
/*-------------------------------*/

/* Smartphone 559px */

/*------------------------------*/
@media(max-width:559px){
:root{
	/* ================== */
	/* テキスト */
	/* clamp fall back */
	--txt-xs--ie: calc(10rem / 16);
	--txt-sm--ie: calc(12rem / 16);
	--txt-reg--ie: calc(15rem / 16);
	--txt-md--ie: calc(15rem / 16);
	--txt-lg--ie: calc(20rem / 16);
	--txt-xl--ie: calc(26rem / 16);
	--txt-2xl--ie: calc(32rem / 16);
	--txt-3xl--ie: calc(32rem / 16);
	/* ================== */
	/* オブジェクト */
	/* margin */
	--space-tb-xs: var(--size-24px);
	--space-tb-sm: var(--size-24px);
	--space-tb-reg: var(--size-24px);
	--space-tb-md: var(--size-32px);
	--space-tb-lg: var(--size-40px);
	--space-tb-xl: var(--size-56px);
	--space-tb-2xl: var(--size-64px);
}
}/*Smartphone END*/