@charset "utf-8";

:where(.main-contents) h1,
:where(.main-contents) h2,
:where(.main-contents) h3,
:where(.main-contents) h4,
:where(.main-contents) h5,
:where(.main-contents) h6 {
	font-weight: 600;
	font-family: var(--serif);
}

:where(.main-contents) ul {
	padding-left: 1.5em;
}

:where(.main-contents) figure {
	display: block;
	margin-left: 0;
	margin-right: 0;
}

:where(.main-contents) figure > * {
	margin-top: 10px;
}

:where(.main-contents) figure > *:first-child {
	margin-top: 0;
}

:where(.main-contents) img {
	display: block;
	width: 100%;
}

:where(.main-contents) .ui-accordion--trigger {
	position: sticky;
	top: 0;
	display: flex;
	align-items: center;
	padding: 25px 0;
	font-size: 1.6rem;
	background-color: var(--color-bg);
	z-index: 1;
}

:where(.main-contents) .ui-accordion--trigger > * {
	margin-top: 0;
}

:where(.main-contents) .uia--show .ui-accordion--trigger {
	color: #fff;
	background-color: #a8a2a2;
	border-radius: 0;
	padding-left: 15px;
}

:where(.main-contents) .ui-accordion--contents-inner {
	padding: 20px 0 40px;
}


.intro {
	width: calc(100% / 0.9);
	transform: scaleX(0.9);
	transform-origin: left top;
	font-family: var(--serif);
	font-size: 140%;
	font-feature-settings: "palt";
	text-align: justify;
}


.section__ttl {
	margin-top: 0;
	font-weight: bold;
	font-size: 120%;
	background-color: var(--color-txt);
	color: #fff;
	padding: 10px 10px;
	border-radius: 3px;
}

.section__ttl.h-dot {
	padding-left: 25px;
}

.section__ttl.h-dot:before {
	left: 10px;
	width: 0.25em;
	height: 1.5em;
	border-radius: 2px;
}


.subsection-header__ttl {
	border-top: 1px solid rgba(0,0,0,0.6);
	margin-bottom: 1em;
	padding-top: 1em;
}


.subsection {
	
}

.subsection > * {
	
}

.subsection > *:first-child {
	margin-top: 0;
}

.subsection__ttl {
	font-size: 110%;
}



@media all and (min-width: 768px) {
	
}

@media all and (min-width: 1280px) {
	
}


.graph {
	box-sizing: border-box;
	padding: 8px;
	border: 1px solid rgba(0,0,0,0.2);
	border-radius: 5px;
}

@media all and (min-width: 1280px) {
	.graph {
		padding: 30px;
	}
}




.listblocks {
	
}

.listblocks__item  {
	margin-left: 0;
	padding-top: 20px;
	padding-left: 20px;
	border-left: 1px solid rgba(0,0,0,0.2);
	border-top: 1px solid rgba(0,0,0,0.2);
	box-sizing: border-box;
}

.listblocks__item ul {
	font-size: 90%;
}

@media all and (min-width: 1280px) {
	.listblocks {
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
	}
	
	.listblocks__item {
		width: calc(50% - 20px);
	}
}






.imgs {
	display: grid;
	grid-gap: 50px 20px;
	grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
	margin-top: 1.5em;
}

.imgs__item {
	width: auto;
}

.imgs__item img {
	display: block;
	width: 100%;
	border-radius: 3px;
}

.imgs__caption {
	font-size: 85%;
}

@media all and (min-width: 768px) {
	.imgs {
		column-gap: 20px;
	}
	
	.imgs__item:first-child,
	.imgs__item {
		width: auto;
	}
}
