@charset "utf-8";

/* .bread */
.bread{
	background-color:#f8f8f8;
}

@media screen and (max-width:768px){
	.bread{
		padding-bottom:5%;
		background-color:#fff;
	}
}


/* .cont */
.cont{
	padding-top:min(3%,40px);
}
.cont .cont_wrapper{
	padding:min(9%,120px) min(9%,150px)
}

@media screen and (max-width:768px){
	.cont{
		padding-bottom:3%;
	}
	.cont .cont_wrapper{
		width:94%;
		padding:9% 5%;
	}
}



/* #news_list */
#news_list{
}
#news_list .cont_wrapper .news{
	margin-top:0;
	border-top:2px solid #005431;
}

@media screen and (max-width:768px){
	#news_list .cont_wrapper .news{
		margin-top:0;
		border-top:2px solid #005431;
	}
}


/* #entry */
#entry{
	text-align:left;
}
#entry .cont_wrapper h1 .small{
	display:block;
	margin-bottom:1em;
	font-size:13px;
	letter-spacing:0.1em;
}
#entry .cont_wrapper h1 .large{
	line-height:1.4;
	display:block;
	font-size:min(3.1vw,40px);
	letter-spacing:0.015em;
}
#entry .cont_wrapper h1 .large:after{
	content:'';
	display:block;
	width:2.5em;
	height:min(0.4vw,5px);
	margin-top:0.5em;
	background:linear-gradient(90deg,#009245,#005431);
}

#entry .cont_wrapper  figure{
	margin-top:min(7%,70px);
}
#entry .cont_wrapper  h2{
	line-height:1.5;
	margin-top:min(7%,70px);
	padding:0.8em 1.5em;
	font-size:min(2vw,25px);
	letter-spacing:0.09em;
	background-color:#f8f8f8;
	position:relative;
}
#entry .cont_wrapper  h2:before{
	content:'';
	display:block;
	width:min(0.4vw,5px);
	height:100%;
	background:linear-gradient(#005431,#009245);
	position:absolute;
	left:0;
	top:0;
}

#entry .cont_wrapper  h3{
	line-height:1.5;
	margin-top:min(7%,70px);
	padding-bottom:0.5em;
	font-size:min(1.9vw,24px);
	letter-spacing:0.09em;
	border-bottom:2px solid #005431;
}

#entry .cont_wrapper  h4{
	line-height:1.5;
	margin-top:min(7%,70px);
	padding-left:1.2em;
	text-indent:-1.2em;
	font-size:min(1.7vw,22px);
}
#entry .cont_wrapper  h4:before{
	content:'';
	display:inline-block;
	vertical-align:0.1em;
	width:0.7em;
	height:0.7em;
	margin-right:0.5em;
	background-color:#005431;
	border-radius:50%;
}

#entry .cont_wrapper p{
	margin-top:1.9em;
}

#entry .cont_wrapper table{
	width:100%;
	margin-top:min(7%,70px);
	border:1px solid #005431;
}
#entry .cont_wrapper table tr:nth-child(n+2){
	border-top:1px solid #e6e6e6;
}
#entry .cont_wrapper table th,
#entry .cont_wrapper table td{
	padding:2em;
	font-family: "Noto Sans JP", sans-serif;
}
#entry .cont_wrapper table th{
	color:#fff;
	background-color:#005431;
	text-align:center;
}

.single_thumbnail {
  aspect-ratio: 16 / 9; /* 任意の比率、例えば16:9 */
	margin-bottom: min(7%, 70px);
}
.single_thumbnail img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  margin-bottom: 20px;
}


@media screen and (max-width:768px){
	#entry .cont_wrapper h1 .small{
		font-size:2.4vw;
	}
	#entry .cont_wrapper h1 .large{
		font-size:5.5vw;
	}
	#entry .cont_wrapper h1 .large:after{
		width:3.5em;
		height:0.9vw;
	}

	#entry .cont_wrapper  figure{
		margin-top:12%;
	}
	#entry .cont_wrapper  h2{
		line-height:1.5;
		margin-top:12%;
		padding:0.6em 1.2em;
		font-size:4.5vw;
	}
	#entry .cont_wrapper  h2:before{
		width:0.7vw;
	}

	#entry .cont_wrapper h3{
		margin-top:12%;
		font-size:4.2vw;
	}

	#entry .cont_wrapper  h4{
		margin-top:12%;
		font-size:4vw;
	}

	#entry .cont_wrapper p{
		margin-top:1.5em;
	}

	#entry .cont_wrapper table{
		width:100%;
		margin-top:12%;
	}
	#entry .cont_wrapper table th,
	#entry .cont_wrapper table td{
		padding:1em;
	}
}