@charset "utf-8";
@import url("../../assets/css/contact.css?v=20240329");
@import url("../../assets/css/gallery.css");
@import url("../../assets/css/big_icon.css");
@import url("../../assets/css/title.css");
@import url("../../assets/css/secondlayer.css");
@import url("../../assets/plugin/lightbox/css/lightbox.css");
/* CSS Document */
/*========= header下線 ===============*/
.gnavi__pc-style ul li:nth-child(2) {
	border-bottom: solid #000 1px;
}
/*========= トップ ===============*/
.secondary_b {
	font-weight: 500;
	font-size: 1.4em;
	line-height: 1.7em;
	margin-top: 1em;
	margin-bottom: 0.5em;
}
.secondary_b br {
	display: none;
}
@media print, screen and (min-width: 768px) {
	.secondary_b {
		width: 48%;
	}
	.secondary_b br {
		display: block;
}
}
@media screen and (min-width: 1024px) {
	.secondary_b {
		font-size: 1.6em;
	}
}
@media print, screen and (min-width: 1900px) {
	.secondary_b {
		font-size: 1.9em;
		line-height: 1.8em;
	}
}
/*========= ごあいさつ ===============*/
.greeting {
	width: 100%;
	margin: 4em auto 0;
}
.greeting .secondary_title {
	width: 80%;
}
.secondary_article {
	max-width: 1400px;
	margin: 0 auto;
	width: 80%;
}
.secondary_article p {
	width: 98%;
	line-height: 1.8em;
	text-indent: 1em;
	margin: 0 auto;
}
.article_inner {
	display: block;
	width: 80%;
	margin: 2em auto 0;
}
.article_flex p {
	line-height: 1.6em;
	text-indent: 1em;
}
.article_flex {
	position: relative;
	width: 100%;
}
.article_flex figure {
	position: relative;
	width: 75%;
	height: 60%;
	margin: 2em  0 4em auto;
	max-width: 430px;
}
.article_flex figure img{
	max-width: 1400px;
	width: 100%;
	object-fit: cover;
	display: block;
}
.article_flex figure::after {
	content: "";
	position: absolute;
	display: block;
	top: 15%;
	right: 10%;
	width: 100%;
	 padding-top: 65%;
	background: #CDE5CA;
	z-index: -1;
}
.name_img {
	position: relative;
	margin: 4em auto;
}
.name_flex{
margin-top: 2em;
text-align: right;
}
.name_flex p{
	margin: 1em 0;
}
.name_flex img{
	max-width: 250px;
	width: 60%;
		height:auto;
}
@media print, screen and (min-width: 768px) {
	.greeting {
		width: 90%;
	}
	.greeting .secondary_title {
		width: 100%;
}
	.secondary_article {
		width: 97%;
	}
	.secondary_article p {
		width: 100%;
		line-height: 2.2em;
	}
	.article_flex {
		margin: 2em auto;
		display: flex;
		width: 97%;
		justify-content: space-between;
	}
	.article_flex p {
		line-height: 2.2em;
	}
	.article_flex figure {
		max-width: none;
		width: 40%;
	}
	.article_inner {
		width: 50%;
		margin: 1.5em 0 0;
		line-height: 2.2em;
	}
	.name_img {
		margin-bottom: 0;
	}
	
.name_flex{
	display: flex;
	align-items: center;
	justify-content: flex-end;
}
	.name_flex p{
	text-align: right;
	margin: 0 2em 0 0; 
}
	.name_flex img{
	max-width: 300px;
	width: 100%;
}
}
@media print, screen and (min-width: 1024px) {
	.greeting {
		margin-top: 9em;
		max-width: 1400px;
	}
	.name_img {
		margin-top: 6em;
	}

	.secondary_article p,.article_flex p {
		font-size: 1.1em;
		line-height: 2.3em;
	}
	.article_inner p:nth-child(2) {
		margin-top: 2.5em;
	}
}
@media print, screen and (min-width: 1400px) {

	.article_flex {
		margin-bottom: 8em;
	}
	.article_inner {
		width: 45%;
	}
	.article_flex figure {
		width: 45%;
	}
}
/*========= 経営理念 ===============*/
.philosophy {
	margin-top: 6em;
}
.philosophy ul {
	width: 100%;
	margin: 2em auto;
}
.philosophy ul li {
	font-family: 'HannariMincho-Regular';
	font-size: 1.2em;
	line-height: 1.8em;
	width: 98%;
	margin: 0.5em auto;
}
.philosophy ul li span {
		border-bottom: solid 2px #FFEE53;
	padding-bottom: 0.2em;
}
@media screen and (min-width: 768px) {
	.philosophy ul {
		width: 85%;
		margin: 2em auto;
}
	.philosophy ul li{
		font-size: 1.5em;
		width: 100%;
	}
}
@media screen and (min-width: 1024px) {
	.philosophy {
	margin-top: 9em;
}
	.philosophy ul li{
		font-size: 2em;
		width: 100%;
		line-height: 2em;
	}
}
/*=========基本方針=========*/
.Basic_policy ul {
	width: 100%;
	margin: 0 auto;
}
.Basic_policy ul li {
	display: flex;
	align-items: top;
	justify-content: space-between;
	margin: 2em auto;
}
.Basic_policy ul li p {
	width: 90%;
	line-height: 1.6em;
}
.Basic_policy ul li span {
	position: relative;
	margin-right: 0.5em;
	font-size: 1em;
	font-weight: 300;
	text-align: center;
	line-height: 39px;
	width: 39px;
	height: 39px;
	color: #FFF;
}
.Basic_policy ul li span::after {
	position: absolute;
	content: "";
	top: 50%;
	left: 50%;
	width: 100%;
	height: 100%;
	-webkit-transform: translate(-50%, -50%); /* Safari用 */
	transform: translate(-50%, -50%);
	background: #1E841E;
	z-index: -1;
}
@media screen and (min-width: 460px) {
	.Basic_policy ul li {
	align-items: center;
}
}
@media screen and (min-width: 768px) {
	.Basic_policy ul {
		width: 85%;
	}
	.Basic_policy ul li {
		margin: 2.5em auto;
	}
	.Basic_policy ul li span {
		line-height: 42px;
		width: 42px;
		height: 42px;
	}
}
@media screen and (min-width: 1024px) {
	.Basic_policy ul li {
		justify-content: flex-start;
	}
	.Basic_policy ul li p {
		font-size: 1.3em;
		line-height: 1.5em;
	}
	.Basic_policy ul li span {
		font-size: 1.3em;
		line-height: 50px;
		margin-right: 1em;
		width: 50px;
		height: 50px;
	}
}
/*=========GALLERY=========*/
/*.green_padding {
	padding: 10% 0;
}
.green_back::after {
	top: -1%;
	left: -40%;
	width: 210%;
	height: 102%;
}*/
.main_contents {
  width: 80%;
  margin-left: auto;
  margin-right: auto;
}

@media print, screen and (min-width: 768px) {
/*	.green_padding {
		padding: 8% 0 5%;
	}
	.green_back::after {
		top: -3%;
		left: -32%;
		width: 200%;
		height: 105%;
	}*/
	.main_contents {
		width: 90%;
		max-width: 1400px;
	}
}
@media screen and (min-width: 1024px) {
/*	.green_padding {
		margin-bottom: 1em;
	}*/
}
@media screen and (min-width: 1300px) {
	/*.green_back::after {
		left: -50%;
		width: 300%;
		height: 106%;
		top: -5%;
	}*/
}
/*=========３つの取り組み=========*/
.three {
	margin-top: 0;
	margin-bottom: 0;
}
.three ul {
	max-width: 430px;
	margin: 0 auto;
}
.three ul li {
	list-style: none;
	margin: 1em auto;
	display: block;
	position: relative;
	text-align: center;
}
.three h3 {
	height: 4em;
	padding: 1.2em 1em 0.5em 2em;
	margin: 0 1em 0 4em;
	display:block;
	text-align: left;
	position: relative;
	font-size: 0.8em;
	color: #1E841E;	
	background-color: #EFF5DC;
}

.three h3::before {
	content: "";
	background: url("../images/attempt01_sp.svg") no-repeat;
	width: 100%;
	height: 100%;
	position: absolute;
	left: -3em;
	top: 0;
	z-index: 1;
}
.three h3 span{
	position: absolute;
	left:-2.5em;
	top: 10%;
	font-weight: normal;
	font-size: 1.7em;
}
.attempt_flex_p{
	position: relative;
	z-index: -2;
	top: -0.8em;
	width: 100%;
	height: auto;
	padding: 2em 1em;
	border: solid #1E841E 1px;
	border-radius: 10px;
	display: flex;
	justify-content: center;
	align-items: center;
}
.three p {
	display: inline-block;
	font-size:1em;	
}
.three p br {
	display: block;
	margin-bottom: 1em;
}
@media screen and (max-width: 343px) {
	.three li:first-child h3 {
	padding: 0.5em 1em 0.5em 2em;	
	}
}
@media screen and (min-width: 415px) {
.three h3 {
	height: auto;
	padding: 1em 2em 1em 3em;
	margin: 0 2em 0 5em;
	font-size: 1em;
}

	.three p {
	top:-0.7em;
}
	.attempt_flex_p{
		top: -1em;
		}
}
@media screen and (min-width: 510px) {
	.three h3 {
	padding: 1em 2em 1em 3em;
	margin: 0 2em 0 5em;
}
	.three h3 span{
		left:-2.7em;
}	
}
@media print, screen and (min-width: 768px) {
	.three ul h3 br {
		display: none;
	}
	.three ul {
		max-width: none;
	}
	.three h3 {
		display: inline-block;
		font-size: 0.9em;
		padding: 1em 2em 1em 2em;
		margin: 0 0 0 2.7em;
	}
	.three p {
		font-size: 1.1em;
		
	}

	.attempt_flex {
		display: flex;
		justify-content: space-between;
	}
	.three ul li {
		margin: 1.5em auto;
	}

	.three ul li {
		width: 47%;
		max-width: 530px;
	}
		.attempt_flex_p{
	padding: 3em 1em;
	top: -0.6em;
	height: 10em;
}
	.three p br {
		margin-bottom: 0;
	}
}
@media print, screen and (min-width: 930px) {
	.three h3 {
		font-size: 1.1em;
	}
}
@media print, screen and (min-width: 1024px) {
.three {
	margin-top: 5em;
}
	.three ul li {
		width: 47%;
		max-width: 601px;
	}
	.three h3 {
		padding: 1em 2em 1em 3em;
	}
	.three h3::before {
	left: -2em;
}
		.three h3 span{
	left:-2.2em;
}
	.three p {
		font-size: 1.3em;
	}
		.attempt_flex_p{
	top: -0.8em;
}
}
@media print, screen and (min-width: 1400px) {
.three h3 {
	font-size: 1.4em;
}
	.attempt_flex_p{
	top: -1em;
}
}
@media print{
    .green_padding {
        break-inside: avoid;
    }
}
/*section:nth-child(5) ul li h3::before {
	counter-increment: number;
	content: counter(number,decimal-leading-zero);
	color: #1E841E;
	font-size: 1.5em;
	font-weight: bold;
	position: absolute;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	left: 0;
	top: 0;
}
section:nth-child(5) ul li::after {
	content: "";
	position: absolute;
	top: 0;
	left: 52%;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	width: 90%;
	max-width: 326px;
	height: 55px;
	background: url("../images/sticky.svg") no-repeat;
	background-size: cover;
	z-index: -1;
}

section:nth-child(5) ul li p::before {
	position: absolute;
	content: "";
	width: 100%;
	height: 100%;
	top: 0.8em;
	left: 0;
	z-index: -2;
}*/