@charset "utf-8";

.cntr {
	display:block;
	overflow:auto;
	height:25em;
	width:100%;
#	white-space:pre-wrap;
}
.cntr .ins {
	padding:1em;
}

.ruleList {
	display:block;
	counter-reset:step;
	padding:0;
}

.cntr .ins .sarea {
	padding:0;
}

table.contact + input[type='button'] {
	z-index:3;
}

.ruleList .item {
	display:flex;
	flex-flow:column;
	gap:1em;
	padding:.5em 0;
}
.ruleList .item:nth-child(even) {
	background-color:#eee;
}
.ruleList .item .title {
	display:flex;
	gap:1em;
	justify-content:flex-start;
	#width:10em;
}
.ruleList .item .title > * {
	margin:auto 0;
}
.ruleList .item .title b {
	display:block;/*
	width:2.2em;
	height:2.2em;
	border-radius:1.1em;
	justify-content:center;
	place-items:center;
	background-color:var(--color2);
	color:#fff;
	font-size:200%;*/
}
.ruleList .item .title b:after {
	counter-increment:step;
	content:'第'counter(step)'条';
	width:fit-content;
	height:fit-content;
	display:block;
}
.ruleList .item .title h3 {
	display:block;
	width:fit-content;
}

.ruleList .item .bloc {
	width:100%;
	display:flex;
	flex-flow:column;
	justify-content:center;
	padding:0 1em 1em;
}
.ruleList .item ul {
	list-style:unset;
	padding-left:1em;
}
.ruleList :where(.item ol) {
	padding-left:1em;
}
.ruleList strong {
	position:relative;
	display:inline-block;
	font-weight:normal;
}
.ruleList strong:before {
	position:absolute;
	display:block;
	content:'';
	inset:.5em -.6em .1em;
	transform: skewY(.3deg);
	background-color:#ff0;
	mix-blend-mode:multiply;
}
.ruleList .addr {
	position:relative;
	padding:1em 2em;
	width:fit-content;
}
.ruleList .addr h4 {
	font-weight:bold;
}
.ruleList .addr:before {
	content:'';
	position:absolute;
	inset:.3em;
	background-color:#f2f2f9;
	border-radius:1em;
}
.ruleList .addr > * {
	position:relative;
	display:block;
}



.fileSizeMater {
	position:relative;
}

form *.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;
}

form[sec02] .submit {
	position:sticky;
	position:-webkit-sticky;
	bottom:5.5em;
}

.accp {
	display:block;
	padding:2em 1em;
	text-align:center;
	cursor:pointer;
}
.accp input {
	display:none;
}
.accp div {
	position:relative;
	display:inline-block;
}
.accp div:before {
	content:'';
	display:inline-block;
	width:1.5em;
	height:1.5em;
	border:1px solid #666;
	border-radius:.2em;
	margin-right:.5em;
	vertical-align:bottom;
}
.accp div:after {
	position:absolute;
	content:'';
	display:block;
	width:1.5em;
	height:1em;
	inset:0 auto 0 0;
	border:.3em solid var(--color2);
	border-color:#00000000 #00000000 var(--color2) var(--color2);
	#margin:auto;
	transform-origin:center center;
	transform:scale(1.3) rotate(-45deg);
}
.accp input:not(:checked) ~ div:after {
	opacity:.15;
}
.accp:hover input:not(:checked) ~ div:after {
	opacity:.3;
}