@charset "UTF-8";
/* CSS Document */

body {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
}


div.wrapContents {
	background: none;
}

/*共通*/
.box1500 {
	max-width: 1500px;
	margin: 0 auto;
}

.box1200 {
	max-width: 1200px;
	margin: 0 auto;
}

.Box {
	padding: 0 20px
}

span,
.Box1 .itemArea01 .right p,
.Box3 .itemArea02 h3,
.Box2 .itemArea02 dl dt p,
.Box .bl h2,
.Box8 .itemArea02 h2 {
	color: #006e39;
}

.Box1, 
.Box2 li,
.Box3 li,
.Box9 {
	background-color: #efe2db; 
}  

.Box .item
{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	padding: 70px 50px 20px;
}
.Box .itemArea00 {
	padding: 0 50px 20px;
}
.Box .item .left {
	width: calc(50% - 30px);
}

.Box .item .right {
	width: calc(50% - 30px);
}

.left,
.right {
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.Box2 .itemArea02 ul,
.Box3 .itemArea02 ul {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	padding-top: 30px;
}

.Box2 .itemArea02 ul li,
.Box3 .itemArea02 ul li {
	width: calc(33.3% - 40px);
	margin-bottom: 30px;
}  

.Box .bl .right .textArea {
	padding: 0 40px;	
}

.Box .bl .right h2 {
	font-size: min(4.5vw,35px);
	padding-bottom: 20px;
}

.Box .bl .right p {
    font-size: min(3.5vw,19px);
}

.Box .bl ul li dl {
	padding: 30px 2vw;
}

.Box .bl ul li dl dt {
	padding-bottom: 30px;
}

.Box .bl ul li dl dd {
    font-size: min(3.2vw,17px);
}

/*mainArea*/
.mainArea {
	height: 660px;
	background-image: url(../img/main_01.webp);
	background-repeat: no-repeat;
	background-size: contain;
	max-width: 1300px;
	margin: 0 auto;
	position: relative;
}

.mainArea h1 {
	position: absolute;
	top: 30vh;
	right: 5%;
	font-size: min(5vw,42px);
	padding-left: 30px;
	text-shadow: 1px 1px 2px white;
}


/*Box1*/
.Box1 .itemArea01 .left img {
	margin: 0 auto;
	width: 90%;
	display: block;
}

.Box1 .itemArea01 .right p {
	font-size: 23px;
	line-height: 1.5;
	padding-bottom: 35px;
}

.Box1 .itemArea02 .right img {
	margin: 0 auto;
	width: 80%;
	display: block;
}

.Box1 .itemArea02 .left p {
	font-size: min(4vw,21px);
	padding: 10px 0px;
}


/*Box2*/
.Box2Bg {
	height: 30vw;
	background-image: url(../img/box2_Bg.webp);
	background-repeat: no-repeat;
	background-size: cover;
}

.Box2 .itemArea02 ul li {
	border-radius: 10px;
	min-height: 460px;
}

.Box2 .itemArea02 ul li dl dt img {
	width: 50%;
	display: block;
	margin: 0 auto;
}

.Box2 .itemArea02 ul li dl dt p{
	font-size: min(5.5vw,30px);
  font-weight: 500;
  position: relative;
	padding-bottom: 15px;
  text-align: center;
	line-height: 1.2;
}

.Box2 .itemArea02 ul li dl dt p::after {
  content: '';
  position: absolute;
  left: 50%;
  bottom: -10px;
  width: 40px;
  height: 5px;
  transform: translateX(-50%);
  background-color: #006e39;
}


/*Box3*/
.Box3 .itemArea02 ul li {
	border-radius: 10px;
	min-height: 300px;
	/*padding: 40px 0 0;*/
}


.Box3 .itemArea02 ul li dl dt img {
	width: 50%;
	display: block;
	margin: 0 auto;
}

.Box3 .itemArea02 h3 {
	font-size: min(4.5vw,35px);
	text-align: left;
	margin: 0;
	padding-bottom: 20px;
}

.Box3 .itemArea02 p{
	font-size: min(3.5vw,19px);
	max-width: 820px;
}


/*Box7*/
.Box7 .itemArea01 img {
	max-width: 260px;
	display: block;
	margin: 0 auto;
	padding-bottom: 40px;
}
   
.Box7 .itemArea01 p {
	font-size: min(5vw, 33px);
    text-align: center;
    padding-top: 50px;
    padding-bottom: 100px;
    letter-spacing: -0.5px;
}

.Box7 .itemArea02 {
	text-align: center;
}

.Box7 .itemArea02 img {
	padding-bottom: 80px;
}

.Box7 .itemArea02 h2 {
	font-size: min(3vw,36px);
    text-align: center;
    background-color: #006e39;
    color: #FFF;
    line-height: 1.2;
    padding: 6px 16px 11px;
    display: inline-block;
    margin-bottom: 100px;
}

.Box7 .itemArea02 p {
	font-size: min(3.5vw,23px);
	text-align: center;
	font-weight: 500;
	line-height: 1.7;
	max-width: 800px;
	margin: 0 auto;
	padding: 0 20px;
}


/*Box8*/
.Box8 .itemArea02 h2 {
	font-size: min(4.5vw,35px);
	text-align: left;
	margin: 0;
	padding-bottom: 20px;
}

.Box8 .itemArea02 .textArea {
	padding-bottom: 50px;
}

.Box8 .itemArea02 p{
	font-size: min(3.5vw,19px);
	padding-bottom: 30px;
}

.Box8 .itemArea02 dl {
  display: flex;
	padding-bottom: 50px;
}

.Box8 .itemArea02 dl dt {
	width: fit-content;
	font-weight: bold;
	padding-bottom: 20px;
}

.Box8 .itemArea02 dl dd {
	width: 50%;
	margin-left: 0;
	display: flex;
	flex-direction: column;
	justify-content: center;
	padding-left: 50px;
}

.Box8 .itemArea02 a {
	background-color: #006e39;
	border-radius: 50px;
	color: white;
	text-decoration: none;
	text-align: center;
	max-width: 140px;
	padding: 11px 80px;
	font-size: min(4vw,23px);
	transition: all 0.3s;
}

.Box8 .itemArea02 a:hover {
	opacity: .6;
}

.Box8Bg {
	height: 30vw;
	background-image: url("../img/box8_Bg.webp");
	background-repeat: no-repeat;
	background-size: cover;
	background-position: bottom;
}

/*Box9*/
.Box9 {
	padding-bottom: 300px;
}

.Box9 picture img {
	max-width: 1100px;
	display: block;
	margin: 0 auto;
}


@media screen and (max-width: 1000px) {
	.pc_only {
		display: none;
}
	.mainArea {
		height: 80vh;
		background-size: cover;
		background-position: bottom left -21px;
	}
	.mainArea h1 {
		background: rgb(255 255 255 / 80%);
		bottom: 60px;
		top: inherit;
		right: inherit;
		width: 80%;
		text-shadow: none;
		padding-top: 10px;
        padding-bottom: 10px;
	}
	
	.Box {
		padding: 0 20px;
	}
	
	.Box .item {
		padding: 20px 6vw;
		flex-direction: column;
	}
	
	.Box .item .left {
		width: 100%;
	}
	
	.Box .item .right {
		width: 100%;
		margin-top: 20px;
	}
	
	.Box1 .itemArea01 .right p {
		line-height: 1.2;
		padding: 20px 0;
	}
	
	.Box3 .itemArea02 .textArea {
		padding: 10px 6vw;
	}
	
	.Box .bl .right .textArea {
		padding: 20px 0 0;
	}
	
	.Box7 .itemArea02 p {
		text-align: left;
		padding-bottom: 30px;
	}
		
	.Box8Bg {
		min-height: 200px;
	}
			
	.Box8 .itemArea02 {
		padding: 0px 6vw
	}
	
	.Box8 .itemArea02 .textArea {
		padding-bottom: 30px;
	}
	
	.Box8 .itemArea02 dl {
		display: block;
	}
	
	.Box8 .itemArea02 dl dt {
		width: 100%;
	}
	
	.Box8 .itemArea02 dl dd {
		padding: 0px;
		width: 100%;
	}
	
	.Box8 .itemArea02  dl dd a {
		font-size: min(4vw,23px);
	}

}

@media screen and (max-width: 767px) {
	
	.Box2 .itemArea02 ul,
	.Box3 .itemArea02 ul  {
		display: block;
		padding: 0 20px;
	}
	
	.Box2 .itemArea02 ul li,
	.Box3 .itemArea02 ul li{
		width: 100%;
		min-height: 200px;
		padding: 30px 0px;
	}
	
	.Box2 .itemArea02 ul li dl dt img
	.Box3 .itemArea02 ul li dl dt img{
		width: 30%;
	}
	
	.Box7 .itemArea01 p,
	.Box7 .itemArea02 img {
		padding-bottom: 30px;
	}
	
	.Box7 .itemArea02 h2 {
		margin-bottom: 30px;
	}
	
	.Box9 picture img {
		width: 280px;
		padding-bottom: 20px;
	}
}

@media screen and (max-width: 600px) {
	.Box8 .itemArea02 a {
		max-width: initial;
	}
	.Box .bl ul li dl dd {
		padding: 0 2vw;
	}
}
