/* CSS Document */

/** Q&Aのベース **/
.main_sec_inner.qa {
	max-width: 1100px;
}
@media screen and (max-width: 767px) {
.main_sec_inner.qa {
	padding: 0 8px;
}
}


.main_sec_inner.qa h3{	
	font-size: var(--txt-size-xl);
	font-weight: bold;
	color: var(--color-main);
	margin-bottom: 0.8em;
	margin-top: 2em;
	display: flex;
	align-items: center;
}
.main_sec_inner.qa h3:first-child {	
	margin-top: 0em;
}

.main_sec_inner.qa h3::before{
	content: "";
	aspect-ratio: 1 / 1;
	height: var(--txt-size-xl);
	background-image: url("../img/ball_subcolor.svg");
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	opacity: 0.9;
	display: block;
}
.main_sec_inner.qa h4{
	font-size: var(--txt-size-l);
	font-weight: bold;
	margin-bottom: 0.8em;
	margin-top: 2em;
	position: relative;
	z-index: 1;	
	padding-left: 25px;
}
.main_sec_inner.qa h4:first-child {	
	margin-top: 0em;
}

.main_sec_inner.qa h4::before{
	content: "";
	height: 2px;
	width: 20px;
	background-color: var(--color-text);
	position: absolute;
	top: 50%;
	left: 0px;
  transform: translateY(-50%);
}




.main_sec_inner.qa .result_count {
	font-size: var(--txt-size-m);
	font-weight: bold;
	margin: 0;
	line-height: 1;
	padding: 10px 25px;
	border-radius: 99px;
	background-color: var(--color-text);
	color: #fff;
	display: inline-block;
}
.main_sec_inner.qa .result_count span {
	font-size: var(--txt-size-xl);
}

/** カテゴリー検索ボックス**/
.qa_search_box {
	position: relative;
	width: 100%;
/*
	padding: 15px 30px;
	
	background-color: #fff;
	border:3px solid var(--color-text);
	box-shadow: 5px 5px 0px var(--color-text);
*/
}

@media screen and (max-width: 767px) {
}

.category_list {
	display: grid;
  grid-template-columns: repeat(3, 1fr); /* 列固定 */	
	gap:15px;
	
}
@media screen and (max-width: 767px) {
.category_list {
  grid-template-columns: repeat(1, 1fr); /* 列固定 */	
}
}

.category_list a,
.category_list div {
	font-size: var(--txt-size-m);
	background-color: var(--color-text);
	padding: 16px;
	border-radius: 99px;
	font-weight: bold;
	color: #fff;
	text-decoration: none;
	cursor: pointer;
  transition: all 0.3s ease;
	line-height: 1;
	display: flex;
	align-items: center;
	position: relative;
	gap:8px;
}
.category_list a::before,
.category_list div::before {
	content: "";
	width: 18px;
	height: 18px;
	background-image: url("../img/arrow_right_circle.svg");
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	display: block;
}
.category_list a.pdf_link {
	background-color: #bb1000;
	padding: 13px 16px;
}
.category_list a.pdf_link::after {
	content: "";
	width: 24px;
	height: 24px;
	background-image: url("../img/pdf.svg");
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	display: block;
}
.category_list a.pdf_link:hover {
	background-color: #ee0100;
}



.category_list a.current,
.category_list a:hover,
.category_list div.current,
.category_list div:hover {
	background-color: var(--color-main);
/*	color: var(--color-text);*/
}

/** QAの表示部分（アコーディオン） **/
.qa_item {
	background-color: #fff;
	border: 2px solid var(--color-text);
	box-shadow: 5px 5px 0px var(--color-text);
	padding: 14px;
	cursor: pointer;
  transition: all 0.3s ease;margin-bottom: 30px;
}
@media screen and (max-width: 767px) {
.qa_item {
	padding: 10px;
	}
}

.qa_item.open {
	background-color: #fffcf0;
}
.qa_item .info {	
	font-weight: bold;
	display: flex;
	gap:8px;
	position: relative;
	line-height: 1;
	align-items: center;
}



.qa_item .info::before {
	content: "";
	width: 22px;
	height: 22px;
	display: block;
	background-image: url("../img/circle-plus-solid-full.svg");
	background-repeat: no-repeat;
	background-size: contain;
	background-position: center;
}
.qa_item.open .info::before {
	background-image: url("../img/circle-minus-solid-full.svg");
}
.qa_item .info .id {
	font-size: 22px;
	color: var(--color-main);
}
.qa_item .info .card {
	font-size: 22px;
}
@media screen and (max-width: 767px) {
.qa_item .info {	
	flex-wrap: wrap;
}
.qa_item .info .card {
	font-size: 18px;
	width: 100%;
}
}



.qa_item .info .date {
	font-weight: normal;
	opacity: 0.6;
}
.qa_item .que,
.qa_item .ans {
	padding-top: 14px;
	font-size: var(--txt-size-l);
	font-weight: bold;
}
.qa_item .ans {
	border-top: 2px dotted #666;
	margin-top: 14px;
	display: none;
}
.qa_item.open .ans {
	display: block;
}






