.category * {
	box-sizing: border-box;
}

.category {
	overflow: hidden;
	transition: height 500ms;
	max-width: 1000px;
	margin: 0 auto;
	font-size: 14px;
}

.category + .category {
	margin-top: 1.5rem;
}

.category__title {
	position: relative;
	padding: 1rem;
	padding-left: 1.25rem;
	font-weight: bold;
	cursor: pointer;
	user-select: none;
}

/* .category__title:hover {
	opacity: .75;
} */

.category__title::before {
	content: '笆ｶ';
	position: absolute;
	top: 1rem;
	left: 0;
	transform: scale(.75);
	transition: transform 500ms;
}

.category.is-expanded .category__title::before {
	transform: scale(.75) rotate(90deg);
}

.block {
	color: black;
	margin-bottom: 1rem;
	border-radius: 0.5rem;
	/* border: 2px solid #420F12; */
	border: 2px solid #DDD;
	overflow: hidden;
	transition: height 500ms;
}

.block ul {
	margin: 0;
	line-height: 1.6;
}

.block p {
	margin: 0;
	line-height: 1.6;
}

.block ul + P {
	margin-top: 0.1em;
}

.block p + p {
	margin-top: 0.1em;
}

.block__title {
	position: relative;
	padding: 1.25rem;
	padding-right: 2.6rem;
	line-height: 1.5rem;
	font-weight: bold;
	background-color: white;
	cursor: pointer;
	user-select: none;
	color: black;
}

/*.block__title:hover {
	opacity: .8;
} */

.block__title h4 {
	margin: 0;
	color: black;
	padding-left: 1.8em;
	text-indent: -1.8em;
	font-size: 16px;
}

.block__title::after {
	display: flex;
	align-items: center;
	justify-content: center;
	position: absolute;
	top: 32.5%;
	right: 10px;
	width: .75em;
	height: 100%;
	font-size: 1.17em;
	background: white;
}

.block.is-collapsed .block__title::after {
	content: '+';
	color: white;
	background: #A4A4A4;
	width: 20px;
	height: 20px;
	line-height: 20px;
	border-radius: 50%;
}

.block.is-expanded .block__title::after {
	content: '-';
	color: white;
	background: #A4A4A4;
	width: 20px;
	height: 20px;
	line-height: 20px;
	border-radius: 50%;
}

.block__content {
	padding: 1.75rem;
	background-color: white;
	padding-left: 3.45em;
	text-indent: 0;
}

.block__content p:first-of-type {
	text-indent: -1.95em;
}

.block.is-collapsed .block__content {
	padding: 1.75rem 1.75rem 0;
	padding-left: 3.45em;
}	

.block.is-expanded .block__content {
	padding: 0 1.75rem 1.75rem;
	padding-left: 3.45em;
}

.block__content li {
	margin-left: -1.5em;
	text-indent: 0;
}

.block__title .q {
	color: #067F7F;
}

.block__content .a {
	font-size: 1.125rem;
	font-weight: bold;
	color: #B71741;
}

@media screen and (max-width: 767px) {
	.category {
		font-size: 13px;
	}
}