main > div.inner {
	margin-top: 40px;
	background-color: #fff;
	padding: 2.5em 3em 3em 3em;
}
main .title-wrapper {
	background-color: #fff9e3;
	padding: .25em .75em;
	border-radius: 5px;
	position: relative;
	margin-bottom: 1.5em;
}
main .title-wrapper:before {
	content: "";
    position: absolute;
    top: 100%;
    left: 1.75em;
    margin-left: -15px;
    border: 10px solid transparent;
    border-top: 15px solid #fff9e3;
}
main h1 {
	color: #6f4b37;
	font-size: 1.8em;
}
main h1 + span {
    font-weight: normal;
    font-size: .75em;
	background-color: #fbb03b;
	border-radius: 1em;
	position: relative;
	top: -0.25em;
	padding: 0 1em;
}
.other-category {
	margin: 0 .25em 0 .5em;
}
.other-category, .other-category a {
	color: #e00;
}
.major-categories {
	margin: 1em 0 2em;
}
.major-categories li {
	float: left;
}
.major-categories a {
	display: block;
	font-size: .75em;
	border: 2px solid #efefef;
	padding: .25em .5em;
	text-decoration: none;
	color: inherit;
	font-weight: bold;
}
.major-categories a::before {
	font-family: "FontAwesome";
	content: "\f107";
	margin-right: 0.5em;
}
.major-categories::after {
	content: '';
	clear: both;
	display: block;
}
details {
	margin: .25em 0;
}
summary {
	display: block;
	list-style: none;
	background-color: #fbb03b;
	padding: .25em .5em .25em 2em;
	position: relative;
	font-weight: bold;
	border-radius: 5px;
	cursor: pointer;
}
summary::-webkit-details-marker {
	display: none;
}
details summary::before {
	content: "＋";
    display: inline-block;
    width: 1.5em;
    height: 1.5em;
    text-align: center;
    border-radius: 50%;
    margin-right: .5em;
	font-weight: bold;
	background-color: #fff;
	position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
    margin-left: -2em;
	font-size: .75em;
}
details[open] summary::before {
	content: "－";
}
.article-wrapper {
	display: flex;
	flex-wrap: wrap;
    padding: 1.5em 0;
    row-gap: 15px;
	justify-content: space-between;
}
.article-wrapper article {
	width: 45%;
	border: 2px solid #f9f9f9;
    padding: 1em;
	border-radius: 5px;
}
article h2 {
	font-size: 1em;
	position: relative;
	padding-left: 1em;
	border-left: 5px solid #2b6500;
}
article a {
	color: inherit;
	font-size: .75em;
}
article ul {
	padding-left: 1em;
}
article li {
	position: relative;
    padding: .5em 1em .5em 1.5em;
    border-bottom: 1px dotted;
}
article li::before {
    font-family: "FontAwesome";
    content: "\f0c1";
    display: inline-block;
    width: 1.5em;
    height: 1.5em;
    text-align: center;
    border-radius: 50%;
    margin-right: .5em;
	font-weight: bold;
	background-color: #bce3ff;
	color: #6489a3;
	position: absolute;
    top: 1em;
    margin-left: -2em;
	font-size: .75em;
	transform: rotate(90deg);
    display: inline-block;
}
@media screen and (max-width:980px) {
	main > div.inner {
		margin: 1em;
		padding: 1em;
	}
}

@media screen and (max-width:767px) {
	.major-categories li {
		float: none;
	}
	.major-categories a {
		padding: .75em .5em;
	}
	.major-categories {
		border: 2px solid #efefef;
	}
	.article-wrapper article {
		width: 100%;
	}
}