@charset "UTF-8";

/*-----header_link.html-----*/

.product_box {
	background: #f4f4f4;
}

.product_box > div {
	width: 100%;
	display: grid;
	grid-template-columns: repeat(5, 1fr);
	gap: 20px;
}

.product_box a {
	display: block;
	transition: .3s;
}

.product_box a:hover {
	opacity: 0.3;
}

.product_box > div a div {
	width: 100%;
	max-width: 250px;
	height: 50px;
	display: flex;
	justify-content: center;
	align-items: center;
	background: #fff;
	border-radius: 2px;
	border: 1px solid #ababc4;
}

.product_box img {
	width: auto;
	max-width: 90px;
	max-height: 45px;
	object-fit: contain;
}

/*-----header_link.html ここまで-----*/

.r {
	justify-content: space-around;
	gap: 30px 0;
}

.rt,
.rc {
	gap: 30px 0;
}

.rgap {
	gap: 30px 20px;
}

.col-5 img {
	max-height: 230px !important;
	object-fit: contain;
}

.title_box a {
	display: inline-block;
	margin: 0 0 30px;
	transition: .3s;
}

.title_box a:hover {
	opacity: 0.3;
}

.title_box img {
	width: 170px;
	max-width: 170px;
	height: 45px;
	object-fit: contain;
}

.title {
	font-size: 1.6rem;
	font-weight: normal;
	line-height: 1.5;
	position: relative;
	padding: 0 10px 10px;
	margin: 0 0 20px;
}

.title:after {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 2px;
	content: '';
	border-radius: 3px;
	background-image: -webkit-gradient(linear, right top, left top, from(#2af598), to(#009efd));
	background-image: -webkit-linear-gradient(right, #2af598 0%, #009efd 100%);
	background-image: linear-gradient(to left, #2af598 0%, #009efd 100%);
}

.naiyo {
	font-size: 1.6rem;
	font-weight: normal;
	border-bottom: 1px solid #ccc;
	padding: 10px 60px 20px 20px;
	margin: 0 0 20px;
}

img.thum {
	max-width: 300px;
	object-fit: contain;
	margin: auto;
	display: flex;
}

img.thum_small {
	max-width: 150px;
	object-fit: contain;
	margin: auto;
	display: flex;
}

img.thum_medium {
	max-width: 200px;
	object-fit: contain;
	margin: auto;
	display: flex;
}

a.text_link {
	color: #00863C;
	position: relative;
	transition: .3s;
}

a.text_link:hover {
	color: #00863C;
	opacity: 0.3;
}

a.text_link::after {
	font-family: "Font Awesome 5 Free";
	content: "\f101";
	font-weight: 900;
	margin: 0 0 0 10px;
}

.qr .qrimg {
	max-width: 40px !important;
}

.qr td img {
	padding: 0px;
	margin: 0px;
	text-align: center;
}

.qr table,
.qr td,
.qr th {
	border: 1px solid #a8a8a8;
	border-collapse: collapse;
	line-height: 17px;
	font-size: 12px;
	color: #000;
}

.qr td,
th {
	padding: 3px;
	height: 25px;
	vertical-align: middle;
	text-align: left;
}

.qr .cent {
	text-align: center;
}

.qr th {
	background: #f0e6cc;
}

.pay {
	background-color: #faeded;
	border: 0;
	box-shadow: inset 0 0 0 1px #787878;
	color: #910f18 !important;
	cursor: pointer;
	font-family: "Roboto";
	font-size: 1.0em;
	height: 3.0em;
	letter-spacing: 0.075em;
	line-height: 3.0em;
	padding: 0 2.25em;
	text-align: center;
	white-space: nowrap;
}

.accordion .content {
	opacity: 0;
	max-height: 0;
	overflow: hidden;
	padding: 0;
	transition: all .2s ease .15s;
}

.accordion .content.active {
	opacity: 1;
	max-height: 100%;
	padding: 10px 0 0;
	margin: 0 0 30px;
	transition: all .35s ease .15s;
}

.accordion .content > div {
	margin: 0 0 30px;
}

.accordion .content > div:last-of-type {
	border-bottom: 1px solid #ccc;
	padding: 0 0 20px;
	margin: 0;
}

.accordion a.title_btn .naiyo {
	display: block;
	position: relative;
	transition: 0.3s;
}

.accordion a.title_btn .naiyo:hover,
.accordion a.title_btn.active .naiyo {
	color: #5fbcfa;
	background: #F5FAF7;
	cursor: pointer;
}

.accordion a.title_btn .naiyo::after {
	content: "+";
	display: flex;
	justify-content: center;
	color: #ccc;
	font-size: 3.3rem;
	font-weight: 400;
	align-items: center;
	width: 24px;
	height: 24px;
	border-radius: 50%;
	border: 1px solid #ccc;
	position: absolute;
	bottom: 50%;
	right: 20px;
	padding: 5px;
	margin: 0 0 -17px 0;
}

.accordion a.title_btn .naiyo:hover::after {
	color: #5fbcfa;
	border: 1px solid #5fbcfa;
}

.accordion a.title_btn.active .naiyo::after {
	content: "-";
	color: #5fbcfa;
	font-size: 2.5rem;
	font-weight: 600;
	border: 1px solid #5fbcfa;
}

.detail_box a {
	color: #00863C;
	transition: 0.3s;
}

.detail_box a:hover {
	color: #00863C;
	opacity: 0.3;
}

.detail_box h4 {
	font-weight: bold;
	margin: 0 0 5px 0;
}

.detail_box ul {
	margin-bottom: 1rem;
}

.detail_box ul.mb-sp {
	margin-bottom: 0;
}

.detail_box ul.mb-no {
	margin-bottom: 0;
}

.detail_box ul li {
	list-style-type: disc;
	line-height: 1.5;
	margin: 0 0 1rem 2rem;
}

.detail_box ul li:last-of-type {
	margin: 0 0 0 2rem;
}

.detail_box ul.sublist {
	margin: 0 0 0 1rem;
}

.detail_box ul.sublist li {
	list-style-type: none;
	position: relative;
}

.detail_box ul.sublist li::before {
	content: '・';
	position: absolute;
	margin: 0 0 0 -1rem;
}

.bottom_line {
	border-bottom: 1px solid #ccc;
	padding: 0 0 30px;
	margin: 0 0 30px;
}

.w_250 {
	width: 100%;
	max-width: 250px !important;
}

.text_sup {
	font-size: 1.1rem;
	vertical-align: super;
}

.text_small {
	font-size: 1.1rem;
	line-height: 1.5;
}

.tbonly {
	display: none;
}

.vup_box {
	text-align: right;
}

.vup_box a {
	color: #444;
	border: 1px solid #ccc;
	border-radius: 50px;
	position: relative;
	padding: 5px 10px;
	margin: 0;
}

.vup_box a:hover {
	color: #444;
	text-decoration: none;
}

.pdf_icon a {
	color: #444692;
}

.pdf_icon a:hover {
	text-decoration: underline;
}

.pdf_icon a::after,
.vup_box a::after {
	font-family: "Font Awesome 5 Free";
	content: "\f101";
	font-weight: 900;
	margin: 0 0 0 5px;
}

.fancybox__caption {
	text-align: center;
}

.img_border {
	border: 1px solid #ccc;
	padding: 5px;
}

@media screen and (max-width: 767px) {
	.vup_box {
		text-align: center;
		margin: 2rem 0 0 0;
	}
}

@media screen and (max-width:1024px) {

	.naiyo {
		line-height: 1.5;
		padding: 10px 60px 10px 20px;
		margin: 0 0 10px;
	}

	.tbonly {
		display: block;
	}

}

@media screen and (max-width:767px) {

	/*-----header_link.html-----*/

	.product_box > div {
		grid-template-columns: repeat(2, 1fr);
	}

	.product_box > div a div {
		margin: 0 auto 5px;
	}

	/*-----header_link.html ここまで-----*/

	.title_box h2 {
		font-size: 2.6rem;
	}

	.detail_box ul.mb-sp {
		margin-bottom: 2rem;
	}

	.mb-20-sp {
		margin-bottom: 2rem !important;
	}

}
/* ʂ̃nCCgX^C */
.highlight {
  background-color: yellow;
  font-weight: bold;
}
/* {bNX̃X^C */
#search-container {
  padding: 20px 0;
}
#searchInput {
  width: 100%;
  padding: 5px 40px 5px 15px; /* ACRƔȂ悤ɉEɗ]m */
  font-size: 16px;
  border: 1px solid #ccc;
  border-radius: 4px;
  box-sizing: border-box; /* padding܂߂width100% */
  /* SVGwi摜ƂėpAACR\ */
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="%23888" class="bi bi-search" viewBox="0 0 16 16"><path d="M11.742 10.344a6.5 6.5 0 1 0-1.397 1.398h-.001c.03.04.062.078.098.115l3.85 3.85a1 1 0 0 0 1.415-1.414l-3.85-3.85a1.007 1.007 0 0 0-.115-.1zM12 6.5a5.5 5.5 0 1 1-11 0 5.5 5.5 0 0 1 11 0z"/></svg>');
  background-repeat: no-repeat;
  background-position: right 15px center;
  background-size: 16px 16px;
}
