@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&display=swap');

body{
  font-family: "Noto Sans JP", sans-serif;
	color: #222;
	font-size: 1.2rem;
}

a{
	text-decoration: none;
	color: #222;
}

a:hover{
	text-decoration: underline;
}

img{
	max-width: 100%;
}

p{
	line-height: 35px;
}

.lh45{
	line-height: 45px!important;
}

h1{
	font-size:1.2rem;
}

h2{
	font-size:1.2rem;
}

h2.title{
	background: #009263;
	color: #fff;
	padding: 20px;
	text-align: center;
	font-size: 1.5rem;
}

h2.from{
  position: relative;
  padding: 1rem 0.5rem;
  border-bottom: 6px solid #094;
}

h2.from:before {
  position: absolute;
  bottom: -6px;
  left: 0;
  width: 20%;
  height: 6px;
  content: '';
  background: #00cc5b;
}


h3.title {
  padding: 1rem 2rem;
  border-left: 6px double #f0f7f4;
  background: #007440;
	color: #fff;
}



h3.sub_title span{
	background: #079461;
	padding:5px 10px;
	color: #fff;
	text-align: center;
	display: inline-block;
	font-size: 1rem;
}

h3.sub_title2 span{
	background: #fff;
	padding:5px 10px;
	color: #079461;
	text-align: center;
	display: inline-block;
	font-size: 1rem;
}



small{
	color:#fff;
	display: block;
	text-align: center;
}

#header{
	width:100%;
	/*background:#333;*/
	color:#fff;
	text-align: left;
	padding: 20px;
}

section{
	padding:150px 0;
}

section.no_pd{
	padding:0 0 150px 0!important;
}

.container{
	max-width: 1200px;
	margin: 0 auto;
	padding: 0 20px;
}

.container2{
	max-width: 600px;
	margin: 0 auto;
	text-align: center;
}

.green{
	background: #007440;
	padding: 50px 0;
	min-height: 250px;
}



.between{
	display:flex;
	justify-content:space-between;
	position: absolute;
	top:100px;
	left:0;
}

.between2{
	display:flex;
	justify-content:space-between;
	gap:20px;
}

.flex{
	display:flex;
	justify-content:space-between;
	align-items: center;
}

.flex1{
	display:flex;
	gap:20px;
}

.flex1 .left_box{
	width:30%;
}

.flex1 .right_box{
	width:70%;
	text-align: left;
}

.flex1 .right_box p{
	line-height: 25px;
}

.around{
	display:flex;
	justify-content:space-around;
}

.flex div{
	width: 50%;
}

.flex .img{
	width: 40%;
}

.flex .txt{
	width: 60%;
}

.flex2{
	display:flex;
	justify-content: center;
	align-items: center
}

.flex2 .left_box{
	width:30%;
}

.flex2 .right_box{
	width:70%;
	text-align: left;
	padding: 50px 0;
}

.between2 div.box2{
	background: #fff;
	border: 10px solid #007440;
	padding: 50px;
	border-radius: 8px;
	width: 50%;
}

.between2 div.box2_1{
	padding: 30px 0;
	width: 50%;
}

.box1{
	background: #fff;
	border: 10px solid #007440;
	padding: 20px;
	border-radius: 8px;
	width: 32%;
}

.box3{
	background: #fff;
	padding: 20px;
	border-radius: 8px;
}

.box4{
	background: #fff;
	padding: 20px;
	border-radius: 8px;
	border: 10px solid #d3f2e7;
}

.light_green{
	background: #f0f7f4;
	margin-top: 100px;
}

.bg_light_green{
	background: #f0f7f4;
	padding: 50px;
}

.bg_light_green h2{
	font-size: 2.5rem;
	color: #009263;

}



/*section:nth-child(2n){
	background:#f3f3f3;
}*/

.main_area{
	width: 100%;
	background-size: cover;
}

#footer{
	background:#009263;
	padding:50px 0;
}

#footer a{
	color: #fff;
}

.mt10{margin-top: 10px;}
.mt20{margin-top: 20px;}
.mt30{margin-top: 30px;}
.mt40{margin-top: 40px;}
.mt50{margin-top: 50px;}
.mt60{margin-top: 60px;}
.mt70{margin-top: 70px;}
.mt80{margin-top: 80px;}
.mt90{margin-top: 90px;}
.mt100{margin-top: 100px;}

.pd50{padding: 50px 0;}
.pd50_1{padding: 50px;}

.center{text-align: center;}
.center2{margin: auto;}
.left{text-align: left;}
.right{text-align: right;}

.bold{font-weight: bold;}
.txt_white{color:#fff;}
.txt_green{color: #009263;}

.fs15{font-size: 1.8rem;}


.relative{position: relative;}


.grid-container2 {
  display: grid;
  gap: 30px;
  grid-template-columns: repeat(2, 1fr);
}

.grid-container3 {
  display: grid;
  gap: 30px;
  grid-template-columns: repeat(3, 1fr);
}

.office{
	border: 2px solid #fff;
	text-align: center;
	padding: 35px 30px;
}

.col-head-type1 {
  border-collapse: collapse;
  width: 100%;
table-layout: fixed;
word-break: break-all;
word-wrap: break-all;
font-weight: 500;
}




.col-head-type1 td {
  padding: 20px 50px;
  background: #fcfcfc;
	border-bottom: 1px solid #fff;

}

.col-head-type1 th {
  text-align: center;
  width: 40%;
  padding: 20px;
  background: #007440;
  font-weight: 500;
	color: #fff;
	border-bottom: 1px solid #fff;

}

.col-head-type1 tr:last-child {
	border:none;

}

.col-head-type2 {
  border-collapse: collapse;
  width: 100%;
table-layout: fixed;
word-break: break-all;
word-wrap: break-all;
font-weight: 500;
}




.col-head-type2 td {
  border-bottom: 1px solid #ccc;
  border-top: 1px solid #ccc;
  border-left: 1px solid #ccc;
  padding: 20px 50px;
  background: #fff;

}

.col-head-type2 th {
  text-align: center;
  width: 30%;
  border-top: 1px solid #ccc;
border-bottom: 1px solid #ccc;
  padding: 20px;
  background: #fff;
  font-weight: 500;

}

.btn,
a.btn,
button.btn {
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.5;
  position: relative;
  display: inline-block;
  padding: .5rem 4rem;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  text-align: center;
  vertical-align: middle;
  text-decoration: none;
  letter-spacing: 0.1em;
  color: #212529;
  border-radius: 0.5rem;
}

a.btn--orange {
  color: #fff;
  background-color: #eb6100;
}

a.btn--orange:hover {
  color: #fff;
  background: #f56500;
}

a.btn-c {
  font-size: 1rem;
  position: relative;
  padding: 1.5rem 2rem 1.5rem 2rem;
  border-radius: 100vh;
}

a.btn-c i.fa {
  margin-right: 1rem;
}

a.btn-border {
	/*border-top: 2px solid #007440;
	border-bottom: 2px solid #007440;*/
  border-radius: 0;
  background: #f0f7f4;
	width: 100%;
	text-align: left!important;
	font-size: 1.2rem;
	font-weight: normal;
	padding: 15px 30px;
}

a.btn-border:hover {
  color: #fff;
  background: #f56500;
	/*border-top: 2px solid #f0f7f4;
	border-bottom: 2px solid #f0f7f4;*/
}

input,
textarea{
  background: #fff;
  border: 1px solid #ccc;
  border-radius: 5px;
  width: 100%;
}



[type="submit"] {
  width: 30%;
  text-align: center;
  padding: 20px;
  color: #fff;
  border-radius: 5px;
  background: #EB6100;
}

.grecaptcha-badge { visibility: hidden; }

.policy_box{
  width: 100%;
  height: 200px;
  padding: 50px;
  overflow-y: scroll;
  border: 1px solid #bfbfbf;
  border-radius: 5px;
}

ul.num{
  margin-left: 20px;
}

ul.num li{
  list-style: decimal;
  margin-bottom: 10px;
}

ul.num li ul{
  margin-left: 20px;
}

ul.num li ul li{
  list-style: disc;
  margin-bottom: 5px;
}

@media (max-width: 1024px) {
	.between{display:block;position: static;}
	.between2{display:block;}
	.flex{display:block;}
  .flex1{display:block;}
	.around{display:block;margin-bottom:10px;text-align:center;}
	.box1{width: 100%;}
	.box2{width: 100%!important;}
	.box2_1{width: 100%!important;}
	.flex div{width: 100%!important;}
  .left_box{width: 100%!important;}
  .right_box{width: 100%!important;text-align: center;}
  .right_box p{text-align: center!important;}
	.m20{margin-top: 20px;}
	.light_green{margin-top: 0;	}
	.right{text-align: center;}
	section{padding:80px 0;}
	.grid-container2 { grid-template-columns: repeat(1, 1fr);}
	.grid-container3 { grid-template-columns: repeat(1, 1fr);}
	.flex .img{text-align: center;}
	.col-head-type1 tr,
	.col-head-type1 th,
	.col-head-type1 td {
		display: block;
		width: auto;
	}

	.col-head-type1 tr:first-child {
		border-top: 1px solid #dbe1e8;

	}

	.col-head-type1 th{
		text-align: center;
		color: #fff;
		border: none;
		width: 100%;
	}

	.col-head-type1 td {
		text-align: center;
		border: none;
	}

  .office{
  	text-align: center;
  	padding: 15px;
  }

  [type="submit"] {
    width: 50%;
  }
}
