@charset "UTF-8";
/* CSS Document */

#snav {
	overflow: hidden;
}

#li_snav {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 0 3em;
}

#li_snav li {
	font-size: var(--fs18);
}

#li_snav li a {
	display: block;

	padding-bottom: 1.8em;
	position: relative;
}

#li_snav li.current a {
	color: #777777;
}

#li_snav li a::after {
	content: '';
	display: block;
	width: 0;
	height: 0;
	border-style: solid;
	border-right: 5px solid transparent;
	border-left: 5px solid transparent;
	border-bottom: 8px solid #CCCCCC;
	border-top: 0;

	position: absolute;
	bottom: -10px;
	left: 50%;
	transform: translate(-50%, 0);
	transition: 0.3s;
}

#li_snav li a:hover {
	color: #777777;
}

#li_snav li.current a::after,
#li_snav li a:hover::after {
	/* border-bottom-color: #EC6C00; */
	bottom: 0;
	/* transform: translate(0, -4px); */
}


/*  */

#topics_path {
	margin-top: 0;
}

/*  */


#container img {
	width: 100%;
	height: auto;
}

/*  */

section[id^="sec_"] {

	& h2,
	& h3 {
		font-size: var(--fs28);
		position: relative;
		line-height: 1.2;
		border-left: 3px solid #EC6C00;
		padding: 6px 0 6px 8px;
		font-feature-settings: "palt" 1;
		letter-spacing: 0.05em;
		text-align: left;
	}

	/* & h3::before {
        content: '';
        display: block;
        width: 2px;
        height: 100%;
        background-color: #EC6C00;
    } */

	& p {
		font-size: var(--fs16);
		margin-bottom: 1em;
		line-height: 2.0;
	}

	& h2+p,
	& h3+p {
		margin-top: 1.8em;
	}

	& img {
		width: 100%;
		height: auto;
	}

	& a {
		color: #3955B7;
		text-decoration: underline;
	}

}

section[id^="sec_"]:not(:first-child) {
	margin-top: 80px;
}

/*  */

@media screen and (max-width: 768px) {

	section[id^="sec_"] {

		& h2,
		& h3 {
			font-size: 4.375vw;
			/* 14px */

		}

		& p {
			font-size: 3.75vw;
			/* 12px */
			margin-bottom: 0.8em;
			line-height: 1.8;
		}

		& h2+p,
		& h3+p {
			margin-top: 1.2em;
		}

	}

	section[id^="sec_"]:not(:first-child) {
		margin-top: 8vw;
	}












	/* /sp */
}










/*  */