/*
 * base css 
 * pc width 1000px fixed
 */

@media (max-width: 599px) {
}

@media (min-width: 600px) and (max-width:959px) {
}

@media (min-width: 960px) {
}

@media (max-width: 480px) {
}

@media (min-width: 481px) and (max-width:767px) {
}

@media (min-width: 768px) and (max-width:959px) {
}

@media (min-width: 960px) {
}

@media (max-width: 767px) {
}

@media (min-width: 768px) {
}


/* ---------------------------------------- common */

/* decott */

.decott {
	text-align: center;
}
.decott::before {
	content: "";
	display: inline-block;
	width: 3.5em;
	height: 1.75em;
	background: url( ../images/commons/slash-red.svg ) no-repeat center center;
	background-size contain;
}
.decott span {
	display: block;
	font-family: "Oswald", sans-serif;
	font-weight: 500;
	line-height: 1.2;
}
.decott small {
	display: block;
	font-weight: 600;
	line-height: 1.4;
}

@media (max-width: 767px) {

	.decott {
		margin: 0 0 2em;
	}
	.decott::before {
		width: 2.5em;
		height: 1.25em;
	}
	.decott span {
		font-size: clamp(2rem, 0.926rem + 5.37vw, 3.5rem);
	}
	.decott small {
		font-size: clamp(0.938rem, 0.714rem + 1.12vw, 1.25rem);
	}

}

@media (min-width: 768px) {

	.decott {
		margin: 0 0 3em;
	}
	.decott::before {
		width: 3.5em;
		height: 1.75em;
	}
	.decott span {
		font-size: clamp(3.125rem, -5.151rem + 17.24vw, 5.625rem);
	}
	.decott small {
		font-size: clamp(1.125rem, -1.358rem + 5.17vw, 1.875rem);
	}

}

/* other */

article p { line-height: 2; }
article p + p { margin: 1em 0 0; }
.lead {
	text-align: center;
	font-weight: 500;
	margin: 0 0 3.5em;
}

/* ---------------------------------------- innerNav */

@media (max-width: 767px) {

	#innerNav { display: none; }
}

@media (min-width: 768px) {

	#innerNav { margin: 0 0 5em; }
	#innerNav ul {
		display: flex;
		justify-content: center;
	}
	#innerNav ul li {
		border-bottom: 3px #a0a0a0 solid;
		padding: 0 2em;
	}
	#innerNav ul li a {
		display: block;
		font-weight: 500;
		padding: 0 0 1em;
		position: relative;
		-webkit-transition: all 0.3s ease-out;
		transition: all 0.3s ease-out;
	}
	#innerNav ul li a::after {
		content: "";
		display: block;
		width: 100%;
		height: 3px;
		background: #da1c1c;
		position: absolute;
		bottom: -3px;
		left: 0;
		visibility: hidden;
	}
	#innerNav ul li a:hover {
		color: #da1c1c;
	}
	#innerNav ul li a:hover::after {
		visibility: visible;
	}
}

/* ---------------------------------------- greeting */

#greeting figure { 
	text-align: center;
	margin: 3em 0 0; 
}
#greeting figcaption { margin: 1em 0 0; }

@media (max-width: 767px) {

	#greeting { 
		margin: 0 0 5em; 
	}
	#greeting .lead {
		color: #da1c1c;
		font-size: clamp(0.938rem, 0.714rem + 1.12vw, 1.25rem);
	}

}

@media (min-width: 768px) {

	#greeting { 
		padding: 0 1.5em;
		margin: 0 0 10em; 
	}
	#greeting .lead {
		color: #da1c1c;
		font-size: clamp(1rem, 0.172rem + 1.72vw, 1.25rem);
	}

}

/* ---------------------------------------- idea */

@media (max-width: 767px) {

	#idea { 
		margin: 0 0 5em; 
	}

}

@media (min-width: 768px) {

	#idea { 
		padding: 0 1.5em;
		margin: 0 0 10em; 
	}

}

#idea h2 + .inside {
	border-bottom: 1px #b5b5b5 solid;
	padding: 0 0 3em;
	margin: 0 0 1em;
}
#idea .inside p + ul { margin: 1em 0 0; }
#idea .inside p + ul li:not(:last-child){ margin: 0 0 .5em; }

#idea .inside p + ul li dl {
	display: table;
	width: 100%;
}
#idea .inside p + ul li dl > * {
	display: table-cell;
	vertical-align: middle;
}
#idea .inside p + ul li dl dt { 
	width: 2.25em;
	color: #da1c1c; 
}
#idea .inside p + ul li dl dt span {
	font-family: "Oswald", sans-serif;
	font-weight: 500;
}

@media (max-width: 767px) {

	#idea .inside p + ul li dl dt {
		font-size: clamp(1.625rem, 0.797rem + 1.72vw, 1.875rem);
	}
	#idea .inside p + ul li dl dd {
		font-size: clamp(0.875rem, 0.047rem + 1.72vw, 1.125rem);
		line-height: 1.6;
	}
}

@media (min-width: 768px) {

	#idea .inside p + ul li dl dt {
		font-size: clamp(1.125rem, -1.358rem + 5.17vw, 1.875rem);
	}
	#idea .inside p + ul li dl dd {
		font-size: clamp(0.875rem, 0.047rem + 1.72vw, 1.125rem);
		line-height: 1.4;
	}

}

/* ---------------------------------------- outline */

#outline table { width: 100%; }
#outline table th, #outline td.column-1 {
	color: #da1c1c;
	border-top: 1px #da1c1c solid !important;
	border-bottom: 1px #da1c1c solid !important;
}
#outline table td:not(.ep):not(#tablepress-101 .column-2) {
	border-top: 1px #000 solid;
	border-bottom: 1px #000 solid;
}
#outline table th,
#outline table td {
	line-height: 1.8;
	padding: 1em;
}

@media (max-width: 767px) {

	#outline { 
		margin: 0 0 5em; 
	}

	#outline table { border-top: 1px #000 solid; }
	#outline table td.ep, #tablepress-101 td.column-2 {
		display: none;
	}
	#outline table th {
		border-top: none;
		border-bottom: 1px #000 solid;
	}
	#outline table td:not(.ep):not(#tablepress-101 .column-2) {
		border-top: none;
	}
	#outline table th,
	#outline table td {
		display: block;
	}


}

@media (min-width: 768px) {

	#outline { 
		padding: 0 1.5em;
		margin: 0 0 10em; 
	}
	#outline table td.ep, #tablepress-101 td.column-2 { width: 1.5em; }

}

/* ---------------------------------------- organization */

@media (max-width: 767px) {

	#organization { 
		margin: 0 0 5em; 
	}

}

@media (min-width: 768px) {

	#organization { 
		padding: 0 1.5em;
		margin: 0 0 10em; 
	}

}

#organization figure {
	text-align: center;
	border: 1px #a0a0a0 solid;
	border-radius: 10px;
	padding: 1em;
	margin: 0 0 2em;
}

#organization ol {
	list-style-type: none;
	line-height: 2;
	margin: 1em 0;
}
#organization ol > li {
  counter-increment: cnt;
}
#organization ol > li:before {
  content: "("counter(cnt) ") ";
}
#organization ol > li:before {
  content: counter(cnt) ") ";
}

/* ---------------------------------------- association */

@media (max-width: 767px) {

	#association { 
		margin: 0 0 5em; 
	}

}

@media (min-width: 768px) {

	#association { 
		padding: 0 1.5em;
		margin: 0 0 10em; 
	}

}

/* ---------------------------------------- settlement */

@media (max-width: 767px) {

	#settlement { 
		margin: 0 0 5em; 
	}

}

@media (min-width: 768px) {

	#settlement { 
		padding: 0 1.5em;
	}

}

.pagelink.pdfs { text-align: center; }
.pagelink.pdfs a {
	display: inline-block;
	min-width: 320px;
	color: #fff;
	background: #000 url( ../images/commons/pdf.svg ) no-repeat center left 1em;
	background-size: auto 1.5em;
	padding: 1em 1em 1em 3em;
	-webkit-transition: all 0.3s ease-out;
	transition: all 0.3s ease-out;
}
.pagelink.pdfs a img {
	width: auto;
	height: 1.5em;
}
.pagelink.pdfs a:hover {
	background: #da1c1c url( ../images/commons/pdf.svg ) no-repeat center left 1em;
	background-size: auto 1.5em;
}

@media (max-width: 480px) {
	.pagelink.pdfs a {
		width: 100%;
	}
}
