@charset "utf-8";

:root {
	
}

/* モバイル　ALL */
@media screen and (max-width: 425px) {
	:root {

		/* 共通 */
		--Padding: var(--Size_12);
		--Gap: var(--Size_08);
		--Padding_S: var(--Size_08);

		
		/* フッター */
		--Footer_justify-content: flex-end;
		--Footer_Padding: var(--Size_10) 6vw var(--Size_60);


		--Flex-direction_CRRR: column;
		--Flex-direction_CRCC: column;
		--Flex-direction_CCRR: column;
		--Flex-direction_RCCC: row;
		--Flex-direction_RRCC: row;
		--Flex-direction_CrRRR: column-reverse;

		--Flex-direction_CRRRRR: column;
		--Flex-direction_CCRRRR: column;
		--Flex-direction_RCCCCC: row;
		
	}
}

/* タブレット */
@media screen and (min-width:426px) and (max-width: 768px) {
	:root {

		/* 共通 */
		--Padding: var(--Size_12);
		--Gap: var(--Size_08);
		--Padding_S: var(--Size_08);
		
		/* フッター */
		--Footer_justify-content: flex-end;
		--Footer_Padding: var(--Size_10);
		
		/* アーティクル 右 */
		--Sns_display: none;
		
		
		--Flex-direction_CRRR: row;
		--Flex-direction_CRCC: row;
		--Flex-direction_CCRR: column;
		--Flex-direction_RRCC: row;
		--Flex-direction_CrRRR: row;

		--Flex-direction_CRRRRR: row;
		--Flex-direction_CCRRRR: column;
		--Flex-direction_RCCCCC: column;
		
	}
}

/* ノートパソコン */
@media screen and (min-width:769px) and ( max-width:1024px) {
	:root {

		/* 共通 */
		--Padding: var(--Size_12);
		--Gap: var(--Size_08);
		--Padding_S: var(--Size_08);

		/* フッター */
		--Footer_justify-content: flex-end;
		--Footer_Padding: var(--Size_10);
		
		/* アーティクル 右 */
		--Sns_flex-basis: var(--Size_120);
		--Sns_display: none;
		--Sns_DivWrap_position: fixed;
		--Sns_DivWrap_left: 0;
		--Sns_DivWrap_padding: var(--Size_60) var(--Size_10) var(--Size_40);
		
		
		--Flex-direction_CRRR: row;
		--Flex-direction_CRCC: column;
		--Flex-direction_CCRR: row;
		--Flex-direction_RRCC: column;
		--Flex-direction_CrRRR: row;

		--Flex-direction_CRRRRR: row;
		--Flex-direction_CCRRRR: row;
		--Flex-direction_RCCCCC: column;
		
	}
}

/* ノートパソコン L */
@media screen and (min-width:1025px) and ( max-width:1440px) {
	:root {

		/* 共通 */
		--Padding: calc( calc( 100% - 1024px) / 2);
		--Gap: var(--Size_08);
		--Padding_S: var(--Size_08);
		
		/* フッター */
		--Footer_justify-content: flex-end;
		--Footer_Padding: var(--Size_10);
		
		/* アーティクル 右 */
		--Sns_flex-basis: 20%;
		--Sns_display: block;
		--Sns_DivWrap_position: fixed;
		--Sns_DivWrap_left: 0;
		--Sns_DivWrap_padding: var(--Size_40) var(--Size_20) var(--Size_40);
		
		
		--Flex-direction_CRRR: row;
		--Flex-direction_CRCC: column;
		--Flex-direction_CCRR: row;
		--Flex-direction_RRCC: column;
		--Flex-direction_CrRRR: row;

		--Flex-direction_CRRRRR: row;
		--Flex-direction_CCRRRR: row;
		--Flex-direction_RCCCCC: column;

	}
}

/* 2K以上 */
@media screen and (min-width:1441px) and ( max-width:2560px) {
	:root {

		/* 共通 */
		--Padding: calc( calc( 100% - 1440px) / 2);
		--Gap: var(--Size_08);
		--Padding_S: var(--Size_08);

		
		/* フッター */
		--Footer_justify-content: flex-end;
		--Footer_Padding: var(--Size_10);
		
		/* アーティクル 右 */
		--Sns_flex-basis: 20%;
		--Sns_display: block;
		--Sns_DivWrap_position: fixed;
		--Sns_DivWrap_left: 0;
		--Sns_DivWrap_padding: var(--Size_40) var(--Size_20) var(--Size_40);
		
		
		--Flex-direction_CRRR: row;
		--Flex-direction_CRCC: column;
		--Flex-direction_CCRR: row;
		--Flex-direction_RRCC: column;
		--Flex-direction_CrRRR: row;

		--Flex-direction_CRRRRR: row;
		--Flex-direction_CCRRRR: row;
		--Flex-direction_RCCCCC: column;

	}
}

/* 4K以上 */
@media screen and (min-width:2561px) {
	:root {

		/* 共通 */
		--Padding: calc( calc( 100% - 2560px) / 2);
		--Gap: var(--Size_08);
		--Padding_S: var(--Size_08);
		
		/* フッター */
		--Footer_justify-content: flex-end;
		--Footer_Padding: var(--Size_10);
		
		/* アーティクル 右 */
		--Sns_flex-basis: 20%;
		--Sns_display: block;
		--Sns_DivWrap_position: fixed;
		--Sns_DivWrap_left: 0;
		--Sns_DivWrap_padding: var(--Size_40) var(--Size_20) var(--Size_40);
		
		
		--Flex-direction_CRRR: row;
		--Flex-direction_CRCC: column;
		--Flex-direction_CCRR: row;
		--Flex-direction_RRCC: column;
		--Flex-direction_CrRRR: row;

		--Flex-direction_CRRRRR: row;
		--Flex-direction_CCRRRR: row;
		--Flex-direction_RCCCCC: column;

	}
}



/* Reset */

html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
	position: relative;
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 62.5%;
	font: inherit;
	vertical-align: baseline;
	font-family: 'Zen Kaku Gothic New', sans-serif;
}



article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
	display: block;
}


*,
*:before,
*:after {
	box-sizing: inherit;
}

html {
	margin: 0;
	padding: 0;
	max-width: 100%;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

body {
	margin: 0;
	padding: 0;
	font-size: var(--Size_12);
	color: var(--Color_FF);
	line-height: 1.5;
	background: var(--Color_1D100);
}

@keyframes fadeIn         { 0% { opacity: 0 } 100% { opacity: 1 } }
@-webkit-keyframes fadeIn { 0% { opacity: 0 } 100% { opacity: 1 } }




blockquote, q {
	quotes: none;
}

blockquote:before, blockquote:after, q:before, q:after {
	content: '';
	content: none;
}

p {
	padding: var(--Size_04) 0 var(--Size_20);
}

p, ol, ul, li, dl, th, td, dt, dd {
	font-size: var(--Size_10);
	color: var(--Color_FF);
	line-height: 1.6;
}

ol, ul {
	list-style: none;
}

span {
	font-size: var(--Size_10);
}

a {
	color: var(--Color_A);
	font-size: var(--Size_12);
	text-decoration: none;
	border: 0;
	transition: var(--Transition);
}

a:hover {
	opacity: 1;
}

figure {
	margin: 0;
}

sup {
	display: inline-block;
	color: var(--Color_A100);
	font-size: var(--Size_08);
	vertical-align: top;
}


	
h2 {
	position: relative;
	margin: var(--Size_20) 0 var(--Size_20);
	padding: 0 0 var(--Size_06);
	font-size: var(--Size_16);
	color: var(--Color_FF);
	font-weight: 100;
	letter-spacing: var(--Size_02);
	background-image: linear-gradient(to right, #f9dd4b 0%, #F88800 100%);
	background-repeat: no-repeat;
	background-size: 100% 1px;
	background-position: bottom;
}
	
h3 {
	position: relative;
	margin: 0 0 var(--Size_12);
	padding: 0 0 var(--Size_06);
	font-size: var(--Size_12);
	color: var(--Color_A);
	border-bottom: 1px var(--Color_5A080) solid;
}
	
h3 span {
	padding: 0 0 0 var(--Size_02);
	font-size: var(--Size_08);
	color: var(--Color_FF);
}




article, section, div,
h1, h2, h3, h4, h5, h6, p, span, b, i, a,
ol, ul, li, dl, dt, dd, table, tr, th, td,
input, textarea, select {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

img {
	vertical-align: bottom;
	object-fit: cover;
}








/* ローディングアニメーション */

#splash {
	position: fixed;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100vw;
	height: 100vh;
	height: 100dvh;
	z-index: 1001;
	text-align:center;
	color: var(--Color_FF100);
	background: var(--Color_A100);
}

#splash #container,
#splash #container::after {
	width: 10em;
	height: 10em;
	border-radius: var(--Border-radius_L);
}

#splash #container {
	position: relative;
	margin: 60px auto;
	font-size: 10px;
	text-indent: -9999em;
	border-top: 1.1em var(--Color_5A020) solid;
	border-right: 1.1em var(--Color_5A020) solid;
	border-bottom: 1.1em var(--Color_5A020) solid;
	border-left: 1.1em solid var(--Color_5A100);
	-webkit-transform: translateZ(0);
	-ms-transform: translateZ(0);
	transform: translateZ(0);
	-webkit-animation: load8 1.1s infinite linear;
	animation: load8 1.1s infinite linear;
}

@-webkit-keyframes load8 {
	0% {
		-webkit-transform: rotate(0deg);
		transform: rotate(0deg);
	}
	100% {
		-webkit-transform: rotate(360deg);
		transform: rotate(360deg);
	}
}

@keyframes load8 {
	0% {
		-webkit-transform: rotate(0deg);
		transform: rotate(0deg);
	}
	100% {
		-webkit-transform: rotate(360deg);
		transform: rotate(360deg);
	}
}










/* コンテンツ */

body {
	& article {
		& main {
			position: relative;
			padding: calc( var(--Size_10) * 6.4 ) var(--Padding) calc( var(--Size_10) * 3.6 );
			& section {
			}
		}
		& main:before {
			content: '';
			position: fixed;
			bottom: 0;
			right: 0;
			width: 100%;
			height: 100lvh;
			background: url('https://jspark.tokyo/common/img/mens1.png');
			background-repeat: no-repeat;
			background-position: right bottom;
			background-size: auto 100%;
		}
	}
}

body#event {
	& article {
		& main {
			padding: 0;
			& section {
				height: 100vh;
				& iframe {
					height: 100vh;
					& #center {
						padding: calc( var(--Size_10) * 6.4 ) var(--Padding)  var(--Padding) calc( var(--Size_10) * 3.6 );
					}
				}
			}
		}
	}
}

#center {
	padding: calc( var(--Size_10) * 6.4 ) var(--Padding) 0;
}

article::before {
	content: "";
	display: block;
	position: fixed;
	top: 0;
	left: 0;
	z-index: -1;
	width: 100%;
	height: 100vh;
	height: 100dvh;
	background-image: url("https://jspark.tokyo/data/wp-content/uploads/2021/07/background.jpg");
	background-repeat: no-repeat;
	background-position: 50% 100%;
	background-size: cover;
}

body#toppage article::before {
	content: "";
	display: block;
	position: fixed;
	top: 0;
	left: 0;
	z-index: -1;
	width: 100%;
	height: 100vh;
	height: 100dvh;
	background: url("https://jspark.tokyo/data/wp-content/uploads/2022/06/concrete2.jpg");
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
}





/* ページ用コンテンツ */












body#page article section#center p.m0 {
	margin: 0 0 1vw;
}






/* フッター */

footer {
	display: flex;
	padding: 0 var(--Padding) var(--Gap);
	& p {
		padding: var(--Gap);
		width: 100%;
		font-size: var(--Size_10);
		color: var(--Color_FF);
		background: var(--Color_1D100);
		border-radius: var(--Border-radius_S);
	}
}

body#toppage footer ul {
	display: none;
}

footer ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
}

footer ul li a {
	margin: 0 0 0 var(--Size_10);
	color: var(--Color_FF);
	line-height: 1;
}

footer ul li a i {
	font-size: var(--Size_16);
}

footer ul li a:hover {
	color: var(--Color_A);
}







