/* frame strucrure + foundamental tag property */

/* ▼▼▼ ローディング画面 ▼▼▼ */
	@-webkit-keyframes ball-scale-ripple-multiple
	{
		  0% { 	-webkit-transform:scale(0.1); 	transform:scale(0.1); 	opacity:1; }
		 70% { 	-webkit-transform:scale(1); 	transform:scale(1); 	opacity:0.7; }
		100% { 	opacity:0; }
	}
	@keyframes ball-scale-ripple-multiple { 0% { 	-webkit-transform:scale(0.1); 	transform:scale(0.1); 	opacity:1; }
		 70% { 	-webkit-transform:scale(1); 	transform:scale(1); 	opacity:0.7; }
		100% { 	opacity:0; }
	}
	#loading										{ width:100vw; height:100vh; transition:all 0.5s; background-color:#e9eef4; position:fixed; top:0; left:0; z-index:9999; margin:0; }
	.loader											{ width:57px; height:57px; margin:200px auto; animation:sk-scaleout 1s infinite ease-in-out; }
	.loaded											{ opacity:0; visibility:hidden; }
	.ball-scale-ripple-multiple						{ position:relative; -webkit-transform:translateY(-25px); transform:translateY(-25px); }
	.ball-scale-ripple-multiple > div:nth-child(0)	{ -webkit-animation-delay:-0.8s; animation-delay:-0.8s; }
	.ball-scale-ripple-multiple > div:nth-child(1)	{ -webkit-animation-delay:-0.6s; animation-delay:-0.6s; }
	.ball-scale-ripple-multiple > div:nth-child(2)	{ -webkit-animation-delay:-0.4s; animation-delay:-0.4s; }
	.ball-scale-ripple-multiple > div:nth-child(3)	{ -webkit-animation-delay:-0.2s; animation-delay:-0.2s; }
	.ball-scale-ripple-multiple > div				{ -webkit-animation-fill-mode:both; animation-fill-mode:both; position:absolute; width:50px; height:50px; border-radius:100%; border:2px solid #fff8db; -webkit-animation:ball-scale-ripple-multiple 1.25s 0s infinite cubic-bezier(0.21, 0.53, 0.56, 0.8); animation:ball-scale-ripple-multiple 1.25s 0s infinite cubic-bezier(0.21, 0.53, 0.56, 0.8); }
/* ▲▲▲ ここまで、ローディング画面 ▲▲▲ */



body				{ width:100%; height:100%; font-family:"Noto Sans JP", sans-serif; font-optical-sizing:auto; font-size:3vw; }
h1,h2,h3,p 			{ margin:0; line-height:1.8em; }
header				{ width:100%; padding:5px 10px 6px 10px; margin:0 auto; box-sizing:border-box; position:relative; }
footer				{ line-height:1; background:#000000; color:#ffffff; box-sizing:border-box; padding:0 0 40px; }
/*
hr					{ margin:0; }
aside				{ width:100%; padding:10px; margin:25px auto; box-sizing:border-box; position:relative; }
section				{ width:100%; padding:0 10px 10px 10px; margin:0 auto 2em; box-sizing:border-box; position:relative; }
section h2			{ font-size:4vw; padding:0.25em 0 0.25em 0.5em; margin:0.75em 0 0.75em 0; position:relative; background:var(--subColor); color:#ffffff; border-radius:8px; }
section h3			{ font-size:3.5vw; color:var(--subColor); line-height:1; box-sizing:border-box; border-left:4px solid; border-bottom:1px solid; margin:0.2em 0; padding:0.25em; }
*/



aside h2			{ font-size:4vw; color:#039; border-bottom:1px solid #039; margin:0.2em 0; }
#mainTitle			{ margin:0 auto; }
#mainTitle h1		{ line-height:3px; }
#headerVenueWrap	{ margin-top:0; font-size:1em; }
#headerVenueWrap p	{ line-height:1.25em; }
#nav_switch			{ font-size:7vw; position:fixed; top:10px; right:10px; z-index:10; }
#nav_close_button	{ display:none; }
#sns_buttons		{ display:none; }
#top_button			{ display:none; }

@media screen and (min-width:1000px)
{
	body							{ font-size:16px; }
	#nav_switch						{ display:none; }
	section h2						{ font-size:20px; }
	aside h2						{ font-size:32px; }
	section h3						{ font-size:1.25em; }
	#sns_buttons					{ display:block; position:fixed; bottom:3em; right:calc(50% + 510px); }
	#top_button						{ display:block; position:fixed; width:50px; height:50px; bottom:3em; left:calc(50% + 510px); cursor:pointer; }
	#top_button svg circle			{ fill:var(--subColor); transition:0.3s; }
	#top_button svg circle:hover	{ opacity:0.7; }
	.inner_1000						{ width:1000px; position:relative; margin:0 auto; box-sizing:border-box; }
	#formButtonResp					{ display:none; }
}

/*実績*/
.archiveWrap		{ width:745px; margin:0 auto; }
.archive			{ width:100%; display:flex; flex-wrap:wrap; }
.archive2018,
.archiveSendai		{ margin-right:50px; }
.archive2018 img,
.archiveSendai img,
.archive2017 img	{ width:215px; margin-bottom:10px; }
.form_btn_wrap		{ position:fixed; right:10px; top:120px; z-index:1001; }
.form_btn_wrap a	{ display:block; margin:0.25rem 0; width:11.5rem; padding:0; font-size:1.25rem; text-decoration:none; color:#fff; border-radius:5px; transition:0.3s; box-shadow:2px 2px 3px rgba(0, 0, 0, 0.5); }

@media screen and (max-width:599px){ .form_btn_wrap a { width:60vw; } }

.form_btn_wrap a:nth-child(1)	{ background-color:red; }
.form_btn_wrap a:nth-child(2)	{ background-color:#00b050; }
.form_btn_wrap a:nth-child(3)	{ background-color:#6699ff; }
.form_btn_wrap a:hover			{ opacity:0.8; }
.form_btn_wrap a p				{ text-align:center; }
.contentParent					{ display:flex; flex-wrap:wrap; margin:0 auto; width:720px; }
.contentWrap					{ width:165px; height:120px; margin:5px; border:2.5px solid #0069ac; position:relative; }
.contentWrapDouble,
.contentWrapDoubleGreen			{ width:345px; height:120px; margin:5px; position:relative; }
.contentWrapDouble				{ border:2.5px solid #0069ac; }
.contentWrapDoubleGreen			{ border:2.5px solid #7cba28; }
.contentTitle					{ width:165px; font-size:16px; height:24.5px; line-height:22px; background-color:#0069ac; color:#ffffff; font-weight:bold; text-indent:0.25em; }
.contentTitleDouble,
.contentTitleDoubleGreen		{ width:345px; height:24.5px; line-height:22px; color:#ffffff; font-weight:bold; text-indent:0.25em; }
.contentTitleDouble				{ background-color:#0069ac; font-size:16px; }
.contentTitleDoubleGreen		{ background-color:#7cba28; font-size:20px; line-height:20px; }
.contentPara					{ padding:0.25em; font-size:12px; text-align:justify; font-feature-settings:"palt" 1; }
.contentParaGreen				{ font-size:15px; line-height:16px; padding:0.25em; }
.contentWrap img,
.contentWrapDouble img,
.contentWrapDoubleGreen img		{ position:absolute; bottom:5px; right:5px; z-index:-1; }
.newMark						{ position:absolute; bottom:5px; left:5px; z-index:-1; }

@media screen and (max-width:999px)
{
	nav								{ right:-100%; height:100%; }
	#mainTitle a					{ margin-top:7px; margin-bottom:7px; }
	#mainTitle						{ margin-top:7px; }
	#headerVenueWrap				{ margin-bottom:7px; }
	header							{ padding:5px 10px 0 10px; }
	.form_btn_wrap					{ display:flex; top:25px; right:10%; }
	.form_btn_wrap a:nth-child(1)	{ margin-right:1em; }
}

@media screen and (max-width:989px)
{
	.form_btn_wrap					{ left:50%; transform:translate(-50%, 5vw); }
	.form_btn_wrap					{ top:4vw!important; right:initial; }
}
@media screen and (max-width:760px)
{
	.archiveWrap					{ width:480px; }
	.archiveSendai					{ margin-right:0; }
}
@media screen and (max-width:719px) { .contentParent	{ width:540px; } }
@media screen and (max-width:589px) { .form_btn_wrap	{ flex-direction:column; }}
@media screen and (min-width:550px) { .pcDispNone		{ display:none; }}
@media screen and (max-width:549px) { .contentParent	{ width:360px; } .spDisNone { display:none; } }
@media screen and (max-width:499px) { .archiveWrap		{ width:215px; }}
@media screen and (max-width:360px) { .contentParent	{ width:360px; transform:scale(0.88888);	margin-top:-80px; 	margin-bottom:-80px; 	margin-left:-10px; } .spDisNone { display:none; } }
@media screen and (max-width:349px) { .contentParent	{ width:360px; transform:scale(0.8);		margin-top:-140px; 	margin-bottom:-140px; 	margin-left:-15px; } .spDisNone { display:none; } }
@media screen and (max-width:339px) { .contentParent	{ width:360px; transform:scale(0.75);		margin-top:-175px; 	margin-bottom:-175px; 	margin-left:-30px; } .spDisNone { display:none; } }

/* 共通向けcss */
.c-flexBlock {
	display: flex;
}
.p-flexBlockRow {
	flex-direction: row;
}
.p-row15 {
	gap: 0 15px;
}
.p-strikethrough {
	position: relative;
	display: inline-block;
}
.p-strikethrough::after {
	content: "";
	position: absolute;
	left: 0;
	top: 30%;
	width: 100%;
	height: 3px;
	background-color: #000;
	@media screen and (max-width:768px) {
		top: 45%;
		width: 35%;
		height: 2px;
	}
}
.firetech .schdl .prcss {
	position: relative;
	@media screen and (max-width:768px) {
		margin-top: 50px;
	}
}