@charset "UTF-8";
/* CSS変数 */
:root{
	/* ================== */
	/* カラー */
	--c-main: #1a0d7c;
	--c-main-strong: #222e8c;
	--c-main-dull: #315fa4;
	--c-main-light: #4790bd;

	--c-accent: #E3606E;

	--c-gray: #5e5e5e;
	--c-gray-pale:#eaeaea;
	--c-gray-light:#b2b2b2;

	--c-bk:#1b1b1b;
	--c-white:#ffffff;

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

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

	/* ================== */
	/* px to rem // 16px = 1rem = (16rem / 16) */
	/* ================== */
	/* テキスト */
	/* フォント */
	--baseFonts: "Helvetica Neue",Arial,"Hiragino Kaku Gothic ProN","Hiragino Sans",Meiryo,sans-serif;
	/* フォントウェイト */
	--bold: bold;
	--medium: 500;
	--normal: normal;
	/* 基準値 min-width320px max-width1280px */
	/* 10px to 12px */
	--txt-xs: clamp(0.625rem, 0.583rem + 0.21vw, 0.75rem);
	/* 12px to 14px */
	--txt-sm: clamp(0.75rem, 0.708rem + 0.21vw, 0.875rem);
	/* 15px to 16px */
	--txt-reg: clamp(0.938rem, 0.917rem + 0.1vw, 1rem);
	/* 18px to 20px */
	--txt-md: clamp(1.125rem, 1.083rem + 0.21vw, 1.25rem);
	/* 20px to 24px */
	--txt-lg: clamp(1.25rem, 1.167rem + 0.42vw, 1.5rem);
	/* 26px to 32px */
	--txt-xl: clamp(1.625rem, 1.5rem + 0.63vw, 2rem);
	/* 32px to 40px */
	--txt-2xl: clamp(2rem, 1.833rem + 0.83vw, 2.5rem);
	/* 32px to 70px */
	--txt-3xl: clamp(2rem, 1.208rem + 3.96vw, 4.375rem);

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

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

	/* スペース//主に左右 */
	--mp-lr-xs: min(2vw,calc(24rem/16));
	--mp-lr-sm: min(2vw,calc(32rem/16));
	--mp-lr-reg: min(4vw,calc(40rem/16));
	--mp-lr-md: min(4vw,calc(56rem/16));
	--mp-lr-lg: min(7vw,calc(64rem/16));

	/* width */
	--max-width: calc(1280rem/16);
	--fx-width: min(
		calc(100% - calc(var(--mp-lr-reg) * 2)),
		var(--max-width)
	);
	/* ツラ合わせ設定
	window幅 - コンテンツ幅 / 2 = 片側の余白値 */
	--head-match-mp: max(
		var(--mp-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);
}
/*-------------------------------*/

/* Tablet 959px */

/*------------------------------*/
@media(max-width: 959px){
:root{
	/* ================== */
	/* オブジェクト */
	/* margin */
	--mp-tb-xs: calc(24rem/16);
	--mp-tb-sm: calc(24rem/16);
	--mp-tb-reg: calc(32rem/16);
	--mp-tb-md: calc(40rem/16);
	--mp-tb-lg: calc(56rem/16);
	--mp-tb-xl: calc(64rem/16);
	--mp-tb-2xl: calc(80rem/16);
	}
}/*Tablet END*/
/*-------------------------------*/

/* Smartphone 559px */

/*------------------------------*/
@media(max-width:559px){
:root{
	/* ================== */
	/* オブジェクト */
	/* margin */
	--mp-tb-xs: calc(24rem/16);
	--mp-tb-sm: calc(24rem/16);
	--mp-tb-reg: calc(24rem/16);
	--mp-tb-md: calc(32rem/16);
	--mp-tb-lg: calc(40rem/16);
	--mp-tb-xl: calc(56rem/16);
	--mp-tb-2xl: calc(64rem/16);
	}
}/*Smartphone END*/