@charset "utf-8";

body {
	background: #f6f6f6;
}

h3 {
	position: relative;
	margin: 50px 0 10px;
	padding-left: 0px;
	line-height: 1em;
	border-left: 0px solid var(--blue);
}

h3::before {
	content: ;
	position: absolute;
	bottom: 0;
	left: 0;
	width: 1em;
	height: 1px;
	background: #aaa;
}

@media (1281px <= width) {
	h3 {
		padding-bottom: 5px;
		font-size: 24px;
	}
}

@media (769px <= width <= 1280px) {
	h3 {
		font-size: 20px;
	}
}

@media (width <= 768px) {
	h3 {
		margin: 30px 0 10px;
		padding-bottom: 2px;
		font-size: 16px;
	}
}

/*----------------------------------------------------------------------> ▼ .wrap_table <----------*/

.wrap_table {
	padding: 40px 50px 50px;
	border: 1px solid #eee;
	border-radius: 5px;
	background: #fff;
}

.wrap_table h4 {
	padding-bottom: 5px;
	margin-bottom: 15px;
	border-bottom: 1px solid #ccc;
	text-align: center;
}

.wrap_table h4:not(:first-of-type) {
	margin-top: 50px;
}

@media (501px <= width <= 768px) {
	.wrap_table {
		padding: 25px 30px 30px;
	}
}

@media (width <= 500px) {
	.wrap_table {
		padding: 15px 15px 15px;
	}
	
	.group_a {
		padding: 17.5px 30px;
	}
}

/*----------------------------------------------------------------------> ▼ table.survey <----------*/

table.survey {
	width: ;
}

table.survey th,
table.survey td {
	padding: 5px 0;
}

table.survey tr:not(:last-of-type) {
	border-bottom: 1px solid #ccc;
}

/*------------------------------> ▼ .group_a <----------*/

@media (501px <= width) {
	.group_a table.survey th {
		max-width: 350px;
		width: 30%;
	}
	
	.group_a table.survey th {
		padding-right: 15px;
	}

	.group_a table.survey td {
		padding-left: 15px;
	}
}

@media (width <= 500px) {
	.group_a table.survey tr {
		border-bottom: 0;
	}
	
	.group_a table.survey tr {
		display: flex;
		flex-wrap: wrap;
	}
	
	.group_a table.survey th,
	.group_a table.survey td {
		width: 100%;
	}
	
	.group_a table.survey th {
		padding: 5px 0 0;
	}
	
	.group_a table.survey td {
		padding: 5px 0 5px;
	}
}

/*------------------------------> ▼ .group_b <----------*/

.group_b tr.item td {
	font-size: 0.8rem;
	letter-spacing: -0.015rem;
}

.group_b table.survey th {
	text-align: center;
	background: #f3f3f3;
}

.group_b table.survey:not(.visible_768) {
	table-layout: fixed;
}

.group_b table.survey:not(.visible_768) th,
.group_b table.survey:not(.visible_768) td {
	padding: 5px 10px;
}

.group_b table.survey:not(.visible_768) tr:nth-of-type(n + 3) td:not(:first-of-type)::after {
	content: ' 件';
	font-size: 1rem;
}

.group_b table.survey:not(.visible_768) tr:nth-of-type(2) td {
	vertical-align: top;
}

.group_b table.survey:not(.visible_768) tr:nth-of-type(2) td:last-of-type {
	padding-right: 0;
}

.group_b table.survey:not(.visible_768) tr:nth-of-type(n + 3) td {
	text-align: center;
}

.group_b table.survey:not(.visible_768) tr:first-of-type th:nth-of-type(n + 2),
.group_b table.survey:not(.visible_768) tr:nth-of-type(2) td:first-of-type,
.group_b table.survey:not(.visible_768) tr:nth-of-type(2) td:nth-of-type(3),
.group_b table.survey:not(.visible_768) tr:nth-of-type(n + 3) td:nth-of-type(2),
.group_b table.survey:not(.visible_768) tr:nth-of-type(n + 3) td:nth-of-type(4) {
	border-left: 3px double #ddd;
}

.group_b table.survey:not(.visible_768) tr:nth-of-type(2) td:nth-of-type(2),
.group_b table.survey:not(.visible_768) tr:nth-of-type(2) td:nth-of-type(n + 4),
.group_b table.survey:not(.visible_768) tr:nth-of-type(n + 3) td:nth-of-type(3),
.group_b table.survey:not(.visible_768) tr:nth-of-type(n + 3) td:nth-of-type(n + 5) {
	border-left: 1px solid #ccc;
}

.group_b table.visible_768 th,
.group_b table.visible_768 td {
	padding: 5px 0;
	text-align: center;
}

.group_b table.visible_768 td {
	font-size: 12px;
}

.group_b table.visible_768 tr td:first-of-type {
	text-align: left;
	font-size: 12px;
}

.group_b table.visible_768 tr th:nth-of-type(2),
.group_b table.visible_768 tr:nth-of-type(n + 2) td:nth-of-type(2) {
	border-left: 3px double #ccc;
}

.group_b table.visible_768 tr:nth-of-type(n + 2) td:nth-of-type(n + 3) {
	border-left: 1px solid #ccc;
}

.group_b table.visible_768 tr:last-of-type td:first-of-type {
	width: 45%;
}

.group_b table.visible_768 tr:last-of-type td:nth-of-type(n + 2) {
	width: 13.75%;
}

.group_b table.visible_768 tr:nth-of-type(n + 3):not(:nth-of-type(6)) td:not(:first-of-type)::after {
	content: ' 件';
}

@media (1025px <= width) {
	.group_b table.survey:not(.visible_768) tr:last-of-type td {
		width: calc(100% / 6);
	}
}

@media (width <= 768px) {
	.group_b table.visible_768 {
		display: table;
	}
	
	.group_b table.visible_768 tr th:last-of-type {
		width: 50%;
	}
}

/*------------------------------> ▼ .group_c <----------*/

.group_c table.survey tr th:not(:first-of-type),
.group_c table.survey tr td:not(:first-of-type) {
	border-left: 3px double #ccc;
}


.group_c table.survey th {
	text-align: center;
	background: #f3f3f3;
}

.group_c table.survey td {
	text-align: center;
}

.group_c table.survey div {
	text-align: center;
}

.group_c table.survey div::after {
	content: '名';
}

@media (768px <= width) {
	.group_c table.survey span {
		display: block;
		font-size: 0.8rem;
	}
}
	
@media (width <= 767px) {
	.group_c table.visible_768 {
		display: table;
	}
	
	.group_c table.visible_768 tr th:last-of-type {
		width: calc(100% / 4);
	}
	
	.group_c table.survey span {
		font-size: ;
	}
}

/*----------------------------------------------------------------------> ▼ .license <----------*/

.license {
	display: flex;
	flex-wrap: wrap;
}

.license li {
	padding: 15px 0;
	background: #f3f3f3;
	border: 1px solid #eee;
	border-radius: var(--border_radius);
}

@media (769px <= width) {
	.license li {
		width: calc((100% - 45px) / 4);
	}
	
	.license li:nth-of-type(n + 2) {
		margin-left: 15px;
	}
}

@media (501px <= width <= 768px) {
	.license li {
		width: calc((100% - 15px) / 2);
	}
	
	.license li:nth-of-type(2n) {
		margin-left: 15px;
	}
	
	.license li:nth-of-type(n + 3) {
		margin-top: 15px;
	}
}

@media (width <= 500px) {
	.license li {
		width: 100%;
	}
	
	.license li:nth-of-type(n + 2) {
		margin-top: 15px;
	}
}

.license div {
	text-align: center;
}

.license li div:first-of-type {
	margin-top: 5px;
	line-height: 1.25em;
	min-height: 4em;
}

.license li div:first-of-type span {
	display: block;
	font-size: 0.8rem;
}

.license li div:last-of-type {
	line-height: 1em;
	font-family: HelveticaCond-M;
	font-weight: bold;
}

.license li div:last-of-type::after {
	content: ' 名';
	font-weight: normal;
	font-size: 1rem;
}

@media (1025px <= width) {
	.license li div:last-of-type {
		font-size: 2.5rem;
	}
}

@media (501px <= width <= 1024px) {
	.license li div:last-of-type {
		font-size: 2rem;
	}
}

@media (width <= 500px) {
	.license li div:first-of-type {
		min-height: 3em;
		font-weight: ;
		font-size: 1.25rem;
	}
	
	.license li div:first-of-type span {
		font-size: 0.9rem;
		font-weight: ;
	}
	
	.license li div:last-of-type {
		font-size: 2rem;
	}
}
