@charset "utf-8";


.flx0, .flx, .flx1 {
	color:#676767;
	font-size:3vw;
}
.flx0[secTitle] {
	background:none;
	margin:0;
	padding:3em 0;
}
.flx0[secTitle] .inner {
	height:auto;
}
@media screen and (min-width:540px) {
	.flx0,
	.flx,
	.flx1 {
		font-size:14px;
	}
}
.flx0[sec01] .outer .top {
	font-size:150%;
}
.flx0[sec01] .inner {
	border:1px solid #ddd;
	border-radius:10px;
	font-size:120%;
	width:90%;
}
.flx0[sec01] .outer h3 {
	font-size:80%;
}
.flx0[sec01] .inner h3 {
	font-size:80%;
	margin-bottom:.5em;
}
.flx0[sec01] .inner p {
	margin-bottom:1em;
	word-break:break-all;
	font-size:80%;
}
.flx0[sec01] .outer .top {
	font-size:150%;
	font-weight:700;
}
.flx0[sec01] .inner p[x2] {
	font-size:100%;
}
.flx0[sec01] .inner h3:before {
	content:'●';
}

.flx0[sec02] .outer h3 {
	font-size:150%;
	font-weight:700;
}
.flx0[sec02] .outer > div > div:nth-of-type(1) {
	word-break:break-all;
}
.flx0[sec02] .outer > div > div:nth-of-type(1) > span {
	display:inline-block;
}
.flx0[sec02] .outer > div > div:nth-of-type(2) {
	font-size:75%;
}
.flx0[sec02] .outer > div > div:nth-of-type(2):before {
	content:'(※)';
	color:#f00;
}
.flx0[sec02] .inner input[type='text'],
.flx0[sec02] .inner input[type='tel'],
.flx0[sec02] .inner input[type='email'] {
	border:1px solid #666;
	text-align:left;
}
.flx0[sec02] .inner label {
	display:inline-block;
	padding:0 .5em;
}
.flx0[sec02] .inner input[type='button'] {
	background-color:#555;
	color:#fff;
	font-size:120%;
	padding:.5em;
	border-radius:5px;
	min-width:150px;
}
.flx0[sec02] .inner input[type='button']:disabled {
	background-color:#55555555;
}
.flx0[sec02] .inner label > input {
	display:none;
}
.flx0[sec02] .inner label > span {
	display:inline;
}
.flx0[sec02] .inner label > span:before {
	content:'○';
}
.flx0[sec02] .inner label > input:checked + span:before {
	content:'●';
}
.flx0[sec02] .form th:not([about]):after {
	#content:'(※)';
	#font-size:75%;
	#color:#f00;
}
.flx0[sec02] .form th[about]:after {
	content:'(任意)';
	font-size:75%;
}
.flx0[sec02] .inner > div > div > div {
	text-align:center;
	padding:.5em 0;
}
.flx0[sec02] .form + div input {
	width:100%;
	margin:0 0 2px;
}
@media screen and (min-width:540px) {
	.flx0[sec02] .form + div input {
		width:auto;
	}
}
.flx0[sec02] .inner input[type='button']:not(:disabled).submit {
	background-image:linear-gradient(to bottom, #127cc7, #00000073);
}


.fileSizeMater {
	position:relative;
}

table.form tr > *.fileSizeMater {
	padding:1px;
}
.fileSizeMater div {
	position:relative;
	height:20px;
	width:0%;
	transition-property:all;
	transition-duration:0.5s;
	transition-timing-function:ease-out;
}
.fileSizeMater:before {
	content:'';
	position:absolute;
	top:0;
	left:0;
	right:0;
	bottom:0;
	background-color:#000000bb;
}
.fileSizeMater p {
	position:absolute;
	top:0;
	left:0;
	right:0;
	bottom:0;
	width:fit-content;
	height:fit-content;
	line-height:1;
	margin:auto;
	color:#fff;
	text-shadow:0 0 3px black;
	z-index:2;
}
.darkBack {
	position:fixed;
	top:0;
	left:0;
	right:0;
	bottom:0;
	width:100%;
	height:100%;
	z-index:9;
	background-image:linear-gradient(to bottom, #000000ee, #00000088);
}
.darkBack .prog {
	position:absolute;
	top:0;
	left:0;
	right:0;
	bottom:0;
	width:250px;
	height:60px;
	margin:auto;
	background:#fff;
	border-radius:10px;
	box-shadow:0 10px 10px #000000;
}
.darkBack .prog > div {
	position:absolute;
	left:10px;
	right:10px;
	bottom:10px;
	height:10px;
	border:1px solid #888888;
	padding:1px;
}
.darkBack .prog > div > div {
	background:#0099ff;
	width:0%;
	height:100%;
	transition-property:all;
	transition-duration:0.2s;
	transition-timing-function:ease-out;
}
.darkBack .prog > span {
	position:absolute;
	left:0;
	right:0;
	bottom:50%;
	width:fit-content;
	height:fit-content;
	margin:auto;
}
