@charset "utf-8";
/*===========================
add
===========================*/
.p-ttl {
	 text-align: center;
	 font-size:1.2em;
	 font-weight: 700;
}
.p-ttl02 {
	 text-align: center;
	 font-size:1.2em;
	 padding-top:0.5em;
	 padding-bottom:0.5em;
	 border-bottom:0px solid var(--basic-color);
	 font-weight: 700;
	 background-color:#65a957;
	 color:#fff;
}
.p-ttl03 {
	 text-align: center;
	 font-size:1.1em;
	 padding-top:0.5em;
	 padding-bottom:0.5em;
	 font-weight: 700;
	 background-color:#FDF3EF;
}
.product-ttl {
	 text-align: left;
	 padding-left:1em;  
	 padding-bottom:0.7em;
	 font-size:1.2em;
	 border-bottom:1px dotted #999;
	 font-weight: bold;
}
@media only screen and (max-width: 768px) {
.p-ttl {
	 text-align: left;
	 font-size:1.0em;
}
	.p-ttl02 {
		font-size:1.0em;
	}
	.p-ttl03 {
		font-size:1.0em;
	}
.produc-ttl {
	 font-size:1.0em;
}
}
.tx-flex {
	 text-align: center;
}
@media only screen and (max-width: 768px) {
.tx-flex {
	 text-align: left;
}
}
.pc-disp {
    display:block;
}
.sp-disp {
    display:none; 
}
@media only screen and (max-width: 768px) {
.pc-disp {
    display:none;
}
.sp-disp {
    display:block; 
}
}

.box-sd {
    padding: 2em;
    background-color: #fff;
    border: 1px solid #999;
    box-sizing: border-box;
}
.box-sd02 {
    padding: 3em;
    background-color: rgba(255,255,255,1.0);
    border: 0px solid #999;
    box-sizing: border-box;
	  box-shadow: 0px 1px 2px 0px rgb(0 0 0 / 10%), 0px 3px 7px 0px rgb(0 0 0 / 8%), 0px 5px 14px 0px rgb(0 0 0 / 6%);
}
.box-sd03 {
    padding: 4em 4em 4em 4em;
    background-color: rgba(255,255,255,0.5);
    color: #333;
    border: 0px solid #999;
    box-shadow: 0px 1px 3px 0px rgb(0 0 0 / 10%), 0px 3px 7px 0px rgb(0 0 0 / 8%), 0px 5px 14px 0px rgb(0 0 0 / 6%);
    box-sizing: border-box;
}

@media only screen and (max-width: 768px) {
.box-sd,.box-sd02,.box-sd03 {
    padding: 1.2em;
    box-sizing: border-box;
}

}
.box-wrap {
    background: #fcfaf5;
    box-sizing: border-box;
}
.box-ttl {
	text-align:center !important;
	background:var(--basic-color);
	padding:0.6em;
	color:#fff;
	margin-bottom:0px !important;
	display:flex;
	align-items:center;
	justify-content:center;
}
.box-cnt {
	width:100%;
	margin:0px auto 0em;
	padding:1.2em 1.8em 1.8em 1.8em;
	box-sizing:border-box;
}
.box-cnt02 {
	width:100%;
	margin:0px auto 0em;
	padding:0.3em 0.5em 0.3em 0.5em;
	box-sizing:border-box;
}
ul.bnr-list {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    gap: 1%;
}
ul.bnr-list li{
	margin-top: 2%;
}
@media only screen and (max-width: 768px) {
ul.bnr-list li {
		margin-top:1em;
	}
}

.txtBnrLnk a {
    display: flex;
    justify-content: space-between;
    align-items: center;
    text-align: center;
    text-decoration: none;
    width: auto;
    margin: auto;
    padding: 0.5em 4em 0.5em 1.0em;
    background: #268413;
    color: #fff;
    text-shadow: none;
    border-radius: 5px;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    position: relative;
    transition: 0.5s;
    font-size: 1.0em;
    font-weight: 600;
}
.txtBnrLnk a::before {
    content: '';
    position: absolute;
    top: calc(50% - 2px);
    right: 1em;
    transform: translateY(calc(-50% - 2px)) rotate(45deg);
    width: 8px;
    height: 1px;
    background: #fff;
}
.txtBnrLnk a::after {
    content: '';
    position: absolute;
    top: 50%;
    right: 1em;
    transform: translateY(-50%);
    width: 30px;
    height: 1px;
    background: #fff;
}
.txtBnrLnk a:hover {
	cursor:pointer;
    filter: alpha(opacity=80);
    -ms-filter: "alpha(opacity=80)"; 
    -moz-opacity:0.9; 
    -khtml-opacity: 0.9; 
    opacity:0.8;
    zoom:1;
	transition: all 0.3s ease;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
}
.txtBnrLnk a:hover::before {
	content: '';
	position: absolute;
	top: calc(50% - 2px);
	right: 1px;
	transform: translateY(calc(-50% - 2px)) rotate(45deg);
	width: 10px;
	height: 1px;
	background: #fff;
		transition: 0.5s;
}
.txtBnrLnk a:hover::after{
	content: '';
	position: absolute;
	top: 50%;
	right: 1px;
	transform: translateY(-50%);
	width: 40px;
	height: 1px;
	background:#fff;
		transition: 0.5s;
}
.tbl-1 th{
	width:26%;
	padding: 0.25em 0.3em;
	line-height:1.6;
}
.tbl-1 td {
	padding: 0.25em 0.3em;
	line-height:1.6;
}
.tbl-2 th{
	width:45%;
	padding: 0.25em 0.3em !important;
	line-height:1.6;
}
.tbl-2 td {
	padding: 0.25em 0.3em !important;
	line-height:1.6;
}
.tbl-5 th{
	width:33%;
}
.line-pd {
	line-height:1.4;
}
.line-a  {
	line-height:2.0;
	letter-spacing:0.1;
	font-size:1.2em;
	font-weight:500;
}
@media only screen and (max-width: 768px) {
.line-a  {
	line-height:1.6;
	font-size:1.0em;
}
.txtBnrLnk a {
    padding: 0.3em 4em 0.4em 1.0em;;
    transition: 0.5s;
	font-size:1.0em;
	max-width:200px;
	line-height: 1.1;
	font-weight: 600;
}

}
.h2-ttl {
	margin-bottom:1em;
}
.h2-ttl:after  {
    content: '';
    position: absolute;
    bottom: -20px;
    display: inline-block;
    width: 0px;
    height: 0px;
    left: 0%;
    transform: translateX(-0%);
    background-color: var(--basic-color);
}
.h3-ttl,.h3-ttl-rt {
	position: relative;
	margin-bottom: 1.0em;
}
.h3-ttl:after,.h3-ttl-rt:after {
    bottom: 0px;
    width: 0px;
    height: 0px;
    left: 0%;
    transform: translateX(-0%);
    border-radius: 0px;
    -webkit-border-radius: 0px;
    -moz-border-radius: 0px;
}
.h3-ttl {
		text-align: center;
	border-bottom:1px solid var(--basic-color);
	padding-bottom:0.5em;
}
.h3-ttl-rt {
	text-align: left;
	border-bottom:1px solid var(--basic-color);
	padding-bottom:0.5em;
	padding-left:20px;
}
@media only screen and (max-width: 768px) {
.h3-ttl-rt {
	padding-left:10px;
}
}
.tbl-6 th,.tbl-6 td {
	line-height: 1.6;
}