.g-wrapper li,
.g-wrapper dt,
.g-wrapper dd {
	font-size: 16px;
	color: #373737;
	font-family: "Noto Sans JP", "メイリオ", Meiryo, sans-serif;
	line-height: 1.6em;
}

/*----------------------------------------

新着情報

-----------------------------------------*/

.q-topics {
	padding: 200px 0 182px;/*もと382*/
}

.q-topics .topics-ttl {
//	padding: 173px 0;
}

.q-topics .topics-ttl .topics-h1-wrap .topics-h1-en {
	font-family: "Rajdhani", sans-serif;
	font-size: 15px;
	font-weight: 500;
	letter-spacing: 0.04em;
}

.q-topics .topics-ttl .topics-h1-wrap .topics-h1 {
	font-size: 26px;
	font-weight: bold;
	color: #373737;
	line-height: 1.4em;
	padding-bottom: 67px;
	/*margin-bottom: 71px;*/
	margin-bottom: 10px;
	position: relative;
}

/* --
.q-topics .topics-ttl .topics-h1-wrap .topics-h1::after {
	content: "";
	display: inline-block;
	position: absolute;
	width: 20px;
	height: 1px;
	bottom: 0;
	left: 0;
	background-color: #373737;
}
*/

.q-topics .topics-content {
//	margin-bottom: 130px;
}

.q-topics .topics-content .topics-block {
//	margin-bottom: 130px;
}

.q-topics .topics-content .topics-block p a {
	display: inline-block;
	color: #005A9D;
	text-decoration: underline;
}

.q-topics .topics-content .topics-block p a:hover {
	color: #FFDC00;
}

.q-topics .topics-content .topics-block p .link-otherpage {
	padding-right: 20px;
	position: relative; 
}

.q-topics .topics-content .topics-block p .link-otherpage::after {
	content: "";
	background-image: url('../img/cmn/ico-otherpage-black.svg'); 
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
	width: 14px; 
	height: 14px;
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
}

.q-topics .topics-content .topics-block p.link-otherpage:hover::after {
	color: #0056b3;
}


.q-topics .topics-content .topics-block .block-ttl {
	font-size: 26px;
	color: #005A9D;
	font-weight: bold;
	border-bottom: 1px solid #373737;
	padding-bottom: 15px;
	line-height: 1em;
	margin-bottom: 68px;
}

.q-topics .topics-content .topics-block .block-date {
	font-weight: bold;
	line-height: 1.87em;
	text-align: right;
}

.q-topics .topics-content .topics-block .content-wrap {
	margin-bottom: 48px;
}

.q-topics .topics-content .topics-block .content-exp {
	position: relative;
	padding-left: 25px;
}
.q-topics .topics-content .topics-block .content-exp::before {
	content: "";
	display: inline-block;
	position: absolute;
	width: 1px;
	height: 82px;
	top: 4px;
	left: 0;
	background-color: #373737;
}

.q-topics .topics-content .topics-block .content-exp .content-ttl-h3 {
	font-size: 22px;
	font-weight: bold;
	margin-bottom: 20px;
	line-height: 1.75em;
	color: #373737;
}

.q-topics .topics-content .topics-block .content-exp .content-ttl-h4 {
	font-size: 18px;
	color: #005A9D;
	font-weight: bold;
	position: relative;
	margin-bottom: 25px;
	padding-left: 18px;
	line-height: 1em;
}
.q-topics .topics-content .topics-block .content-exp .content-ttl-h4::before {
	content: "";
	display: inline-block;
	position: absolute;
	width: 14px;
	height: 1px;
	bottom: 0px;
	left: 0;
	background-color: #373737;
}

.q-topics .topics-content .topics-block .content-exp .content-ttl-h5 {
	font-size: 16px;
	font-weight: bold;
	margin-bottom: 20px;
	line-height: 1em;
	color: #373737;
}

.q-topics .topics-content .topics-block .content-txt {
	line-height: 1.87em;
	text-align: justify;
	margin-bottom: 1em;
}

.q-topics .topics-content .topics-block .topics-img {
	width: 800px;
	margin: 40px auto;
	display: block;
	text-align: center;
}

.q-topics .topics-content .topics-block dl.content-def {
	margin-bottom: 30px;
	color: #373737;
}

.q-topics .topics-content .topics-block .content-cnt {
	counter-reset: number;
	margin-bottom: 20px;
}

.q-topics .topics-content .topics-block .content-cnt li {
	position: relative;
	padding-left: 2em;
	margin-bottom: 10px;
	line-height: 1.5;
	font-size: 1rem;
}
.q-topics .topics-content .topics-block .content-cnt li::before {
	counter-increment: number;
	content: counter(number) '.';
	position: absolute;
	top: 0;
	left: 0.5em;
	line-height: 1.5;
	font-weight: bold;
}

.q-topics .topics-content .topics-block .content-lst {
	margin-bottom: 1em;
}

.q-topics .topics-content .topics-block .content-lst li {
	position: relative;
	padding-left: 2em;
	margin-bottom: 10px;
	line-height: 1.5;
	font-size: 1rem;
}
.q-topics .topics-content .topics-block .content-lst li::before {
	content: '・';
	position: absolute;
	top: 0;
	left: 0;
	font-size: 1.5em;
	line-height: 1;
	font-weight: bold;
}

.q-topics .topics-content .topics-block .content-def dt {
	font-size: 18px;
	font-weight: bold;
}

.q-topics .topics-content .topics-block .content-def dd {
	margin-bottom: 1em;
	line-height: 1.5em;
}

.q-topics .topics-content .topics-block .content-up {
	display: flex;
	flex-direction: column;
}

.q-topics .topics-content .topics-block .content-up .content-item a {
	display: flex;
	padding: 20px 15px;
	border-bottom: 1px solid #ededed;
	transition: background-color 0.3s ease;
}

.q-topics .topics-content .topics-block .content-up a:hover {
	background-color: #ededed;
}

.q-topics .topics-content .topics-block .content-up a:hover span {
	opacity: 0.6;
}

.q-topics .topics-content .topics-block .content-up .topics-date {
	width: 10em;
	white-space: nowrap;
}

.q-topics .topics-content .topics-block .content-up .topics-txt span {
	text-decoration: underline;
	color: #005a9d;
}

.q-topics .entry-btn {
	width: 500px;
	height: 100px;
	margin: 0 auto 40px;
}

.q-topics .entry-btn a {
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 40px;
	background-color: #FFDC00;
	border-radius: 100px;
	transition: background-color 0.5s;
}

.q-topics .entry-btn a:hover {
	background-color: #373737;
}

.q-topics .entry-btn a:hover .txt {
	color: #fff;
}

.q-topics .entry-btn a:hover .ico-otherpage {
	stroke: #fff;
}

.q-topics .entry-btn a .txt {
	color: #373737;
	font-size: 17px;
	letter-spacing: -0.02em;
	transition: color 0.5s;
}

.q-topics .entry-btn a .ico-otherpage {
	stroke: #373737;
	transition: stroke 0.5s;
	width: 22px;
	height: 16px;
	fill: none;
}

.q-topics .contact-btn {
	width: calc(100% + 40px);
	height: 200px;
	margin-left: -20px;
	margin-right: -20px;
	margin-bottom: 40px;
}

.q-topics .contact-btn a {
	height: 100%;
	border-radius: 200px;
	background-color: #373737;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: background-color 0.5s;
}

.q-topics .contact-btn a:hover {
	background-color: #FFDC00;
}

.q-topics .contact-btn a:hover .contact-txt,
.q-topics .contact-btn a:hover .mail {
	color: #373737;
}

.q-topics .contact-btn a:hover .icon-mail {
	stroke: #373737;
}

.q-topics .contact-btn a .contact-txt {
	font-size: 17px;
	color: #fff;
	line-height: 1.76em;
	transition: color 0.5s;
}

.q-topics .contact-btn a .mail {
	margin-left: 3em;
	color: #fff;
	font-size: 17px;
	transition: color 0.5s;
}

.q-topics .contact-btn a .icon-mail {
	stroke: #fff;
	width: 22px;
	transition: stroke 0.5s;
	vertical-align: middle;
	margin-left: 1em;
}

.q-topics .contact-btn a .icon-mail .icon-svg {
	fill: none;
	stroke-linecap: round;
	stroke-linejoin: round;
}

.q-topics .content-link {
	text-align: right;
}

.q-topics .content-link a {
	line-height: 1.4em;
}

.q-topics .content-link .arrow {
	padding-left: 15px;
	width: 21px;
	height: 11px;
	fill: none;
	stroke: #373737;
	font-weight: bold;
}



@media (max-width: 828px) {
.g-wrapper dt,
.g-wrapper dd {
	font-size: 32px;
	line-height: 1.87em;
}

.q-topics {
	padding: 240px 0 350px;
}

.q-topics .topics-ttl {
//	padding: 40px 0;
}

.q-topics .topics-ttl .topics-h1-wrap .topics-h1-en {
	font-size: 32px;
}

.q-topics .topics-ttl .topics-h1-wrap .topics-h1 {
	padding-bottom: 64px;
	margin-bottom: 60px;
	font-size: 42px;
}
.q-topics .topics-ttl .topics-h1-wrap .topics-h1::after {
	width: 32px;
}

.q-topics .topics-content {
//	margin-bottom: 40px;
}

.q-topics .topics-content .topics-block {
//	margin-bottom: 40px;
}

.q-topics .topics-content .topics-block:last-of-type {
	margin-bottom: 0;
}

.q-topics .topics-content .topics-block p .link-otherpage {
	padding-right: 40px;
}

.q-topics .topics-content .topics-block p .link-otherpage::after {
	width: 30px; 
	height: 30px;
}

.q-topics .topics-content .topics-block .topics-detail-wrap {
	margin: 0;
}

.q-topics .topics-content .topics-block .content-lead {
	margin-bottom: 1em;
}

.q-topics .topics-content .topics-block .content-exp {
	width: 100%;
}

.q-topics .topics-content .topics-block .block-ttl {
	font-size: 42px;
	margin-bottom: 68px;
	padding-bottom: 12px;
}

.q-topics .topics-content .topics-block .block-date {
	line-height: 1.75em;
}

.q-topics .topics-content .topics-block .content-wrap {
	margin-bottom: 80px;
}

.q-topics .topics-content .topics-block .content-lead {
	margin-bottom: 1em;
}

.q-topics .topics-content .topics-block .content-exp {
	padding-left: 22px;
}

.q-topics .topics-content .topics-block .content-exp::before {
	height: 100px;
}

.q-topics .topics-content .topics-block .content-exp .content-ttl-h3 {
	margin-bottom: 6px;
	font-size: 36px;
}

.q-topics .topics-content .topics-block .content-exp .content-ttl-h4 {
	margin-bottom: 36px;
	font-size: 36px;
	padding-left: 44px;
}

.q-topics .topics-content .topics-block .content-exp .content-ttl-h4::before {
	width: 36px;
}

.q-topics .topics-content .topics-block .content-exp .content-ttl-h5 {
	margin-bottom: 6px;
	font-size: 32px;
}

.q-topics .topics-content .topics-block .content-txt {
	line-height: 1.75em;
}

.q-topics .topics-content .topics-block .topics-img {
	width: calc(100% + 40px);
	margin-left: -10px;
	margin-right: -30px;
}

.q-topics .topics-content .topics-block .content-cnt li,
.q-topics .topics-content .topics-block .content-lst li {
	font-size: 32px;
}

.q-topics .topics-content .topics-block .content-def dt {
	font-size: 36px;
}

.q-topics .topics-content .topics-block .content-def dd {
	line-height: 1.8em;
}

.q-topics .topics-content .topics-block .content-up .content-item a {
	flex-direction: column;
}

.q-topics .topics-content .topics-block .content-up .topics-date {
	margin-bottom: 5px;
}

.q-topics .entry-btn {
	width: 100%;
}

.q-topics .entry-btn a .txt {
	font-size: 32px;
	line-height: 1.4em;
}

.q-topics .entry-btn a .ico-otherpage {
	width: 55px;
	height: 38px;
}

.q-topics .contact-btn {
	width: calc(100% + 60px);
	margin-left: -30px;
	margin-right: -30px;
	height: 282px;
}

.q-topics .contact-btn a .contact-txt {
	font-size: 30px;
}

.q-topics .contact-btn a .mail {
	font-size: 30px;
}

.q-topics .contact-btn a .mail {
	display: block;
	margin-left: auto;
}

.q-topics .contact-btn a .icon-mail {
	width: 44px;
	margin-left: 0.5em;
}

.q-topics .content-link .arrow {
	width: 38px;
	height: 29px;
}

}
