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

/*-------------------------------
 　　visual
---------------------------------*/
#wrap_mainvisual{
	text-align: center;
	background: #fff;
}
#wrap_mainvisual img{
	width: 100%;
	max-width: 1300px;	
	margin: 0 auto;
}
#wrap_na{
	position: relative;
}
#wrap_na .cover img{
	width: 100%;
	position: absolute;
    z-index: 0;
    bottom:-5px;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
}
@media screen and (max-width: 1400px) { 
img.visual {
    width: 100%;
}
}
@media screen and (max-width: 1200px) { 
#wrap_mainvisual img.visual{
    width: 100%;
}
#wrap_mainvisual .cover img{
	display: none;
}
}
#mainvisual {
    position: relative;
	max-width: 1300px;
	margin: 0 auto 0;
}
#mainvisual  .kenkyu{
    position: absolute;
	bottom: 25px;
	right: 45px;
	display: flex;
   align-items: flex-end; /* 下端で揃える */
}
#mainvisual  .name_kenkyu{
	text-align: left;
	color: #148764;
	margin-right: 20px;
	font-weight: 600;
	background: #fff;
}
#mainvisual  .name_kenkyu .n1{
	display: block;
	padding-left: 16px;
}
#mainvisual  .name_kenkyu .n2{
	display: block;
	font-size: 1.3em;
	margin-top: -5px;
}
#mainvisual  .btn_member a{
	margin-top: 0;
    margin-bottom: 5px;
	min-width: 150px;
}

/*-------------------------------
 　　top main
---------------------------------*/
#wrap_top_main{
    background: #fafafa;
    padding: 50px 0 50px;
}

/*-------------------------------
 　　pr
---------------------------------*/
.bx_pr a{
    background: #fff;
    text-align: center;
    padding: 10px 20px;
    border-radius: 5px;
    display: block;
    box-shadow: 2px 4px 10px 0px #064d90;
}
.bx_pr a:hover{
    opacity: 0.9;
    transition: .3s;
}
.bx_pr.pr1 a {
    border: 5px solid #c0f569;
}
.bx_pr.pr2 a {
    border: 5px solid #fce348;
}
.bx_pr.pr3 a {
    border: 5px solid #6ddde1;
}
@media screen and (max-width: 1200px) { 
.bx_pr img{
    width: 100%;
}
}

/*-------------------------------
 　　catch
---------------------------------*/
#wrap_catch{
    margin:50px auto 50px;
    text-align: center;
}
@media screen and (max-width: 780px) { 
#wrap_catch {
    margin: 10px auto 50px;
}
}
.catch1{
    font-size: 1.6rem;
    font-weight: 600;
    color: #333;
    font-family: 'Noto Sans JP', sans-serif;
}
.catch2{
    font-size: 1.1rem;
    font-weight: 500;
    color: #333333;
    font-family: 'Noto Sans JP', sans-serif;
    margin-bottom: 1.5em;
}
a:hover img#btn_top_about {
    opacity: 0.9;
}

/* se2 */
#wrap_top_se2{
padding: 100px 0;
background: #d2f1ff;
}

/*--------------------------
　 　responsive
--------------------------*/
.catch1 {
    font-size: clamp(20px, 3.4vw, 30px);
}

@media screen and (max-width: 780px) { 
#wrap_top_main {
    padding: 20px 0 20px;
}
.catch2 {
    font-size: 1.0rem;
}
#wrap_top_se2 {
    padding: 30px 0;
}
}

@media screen and (max-width: 1000px) { 
img.top_bnr{
    width: 100%;
    margin-bottom: 1em;
}
}

@media screen and (max-width: 575px) {
img#btn_top_about{
    max-width: 470px;
    width: 100%;
}
.bx_pr a{
    margin: 0 auto 20px;
}
.bx_pr img {
    width: 60%;
}
img.top_bnr {
    width: 80%;
}
}

@media screen and (max-width: 910px) {
    .catch2 {
		max-width: 600px;
		text-align: justify;
		margin: 0 auto 20px;
    }
	.catch2 br{
		display: none;
    }
}
@media screen and (max-width: 480px) {
    .catch2 {
        text-align: left;
    }
}

/*------------------
　 top group
-------------------*/
#wrap_bx_pr{
    margin: 0 0 20px;
}
.wrap_bx_group1 {
    padding: 10px;
    margin: 0 auto 0px;
}

@media screen and (min-width: 781px) {
#wrap_bx_pr{
	display: flex;
}
.wrap_bx_group1 {
    width: 33.3%;
}
}

@media screen and (max-width: 780px) {
.wrap_bx_group1 {
    width: 100%;
    max-width: 500px;
    margin: 0 auto 0px;
}
}

.bx_group {
    background: #2ba782;
    padding: 25px 35px;
	margin-bottom: 50px;
    border-radius: 15px;
    color: #fff;
 }
 .bx_group h3 {
    border: none;
    background: none;
    border-bottom: 1px solid #fff;
    padding: 0 0 15px;
    font-size: 1.2em;
    font-weight: 400;
    text-align: center;
    margin: 0 0 10px;
    color: #fff;
 }
  .bx_group .btn_link {
    text-align: center;
	margin: 0;
}
 .bx_group .btn_link a {
    background: #fffec3;
    display: inline-block;
    color: #2ba782;
    line-height: 1;
    text-align: center;
    text-decoration: none;
    font-size: 0.85em;
    padding: 8px 2em;
    border-radius: 50px;
    margin: 0 auto;
}
.bx_group .btn_link a:hover {
    background: #fffc64;
}
.wrap_bx_group {
    position: relative;
}
.wrap_bx_group .icon.gr1 {
    position: absolute;
    bottom: -50px;
    left: 15px;
}
.wrap_bx_group .icon.gr2 {
    position: absolute;
    bottom: -30px;
    right: 15px;
}
.wrap_bx_group .icon.gr3 {
    position: absolute;
    bottom: -50px;
    right: 10px;
}

/*------------------
　 #se2
-------------------*/
#wrap_top_se2{
	text-align: center;
}
#wrap_top_se2 h2{
	text-align: center;
	margin: 0 0 2em;
	padding: 0;
	border: none;
	font-size: clamp(18px, 4.2vw, 24px);
	line-height: 1.5;
}
.bx_more {
    background: #fff;
    max-width: 800px;
    margin: 0 auto 30px;
    border: 2px solid #2ba782;
    padding: 30px 20px;
}
.bx_more h3 {
    font-size: clamp(20px, 4.2vw, 23px);
	margin: 0 0 1em;
    padding: 0;
    border: none;
    background: none;
    letter-spacing: 0.08em;
}
.bx_more p {
	text-align: left;
}
.bx_more p.txt_c {
	text-align: center;
}
.bx_more .btn_link{
text-align: center;
} 
.bx_more .btn_link a {
    background: #2ba782;
    display: inline-block;
    color: #fff;
    line-height: 1;
    text-align: center;
    text-decoration: none;
    font-size: 0.85em;
    padding: 8px 2em;
    border-radius: 50px;
    margin: 0 auto;
}
.bx_more .btn_link a:hover {
    background: #0a8560;
}
.bx_more .bx_r img{
    width: 100%;
	max-width: 200px;
}

@media screen and (min-width: 600px) {
.bx_more {
	display: block;
	padding: 40px;
}
.bx_more .bx_l {
   /* width: 60%;*/
}
.bx_more .bx_r {
  /*  width: 40%;*/
	padding: 10px 20px;
}
}

/*------------------
　 #se3
-------------------*/
#wrap_top_se3 {
    padding: 50px 0;
}
#wrap_top_se3 h2 {
    font-size: clamp(20px, 4.2vw, 24px);
	line-height: 1.5;
}

@media screen and (max-width: 600px) {
	#wrap_top_se3 {
    padding: 20px 0 0;
}
}

/*-------------------------------
 		link-godaigan
---------------------------------*/
.wrap_godai {
    background: #fff4df;
    padding: 50px;
    margin: 0px auto 50px;
	max-width: 1000px;
	position: relative;
}
.wrap_godai h2 {
	border-bottom: 4px solid #2ba782;
    text-align: center;
	max-width: 400px;
    margin: 20px auto 20px;
	letter-spacing: 0.05em;
}
.wrap_bx_ganken {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	margin-top: 30px;
}
.bx_ganken{
    margin: 0 20px 20px;
    width: calc((100% - 100px) / 2);
    text-align: left;
}
.bx_ganken .inner{
    border: 3px solid #2ba782;
    background: #fff;
	border-radius: 10px;
    padding: 40px 40px;
}
.bx_ganken a .inner:hover{
	border-radius: 10px;
	background: #2ba782;
}
.bx_ganken a .inner:hover p{
	color: #fff;
}
.bx_ganken a{
	text-decoration: none;
}
.bx_ganken p{
	font-weight: 600;
    line-height: 1;
    margin: 0;
	color: #333;
	font-size: clamp(18px, 4.2vw, 24px);
}
.bx_ganken.gan1 p:before {
 content: "";
  display: inline-block;
  width: 60px;
  height: 60px;
  margin: -3px 20px 0 0;
  background: url("../images/top/icon_gan1.png") no-repeat;
  background-size: contain;
  vertical-align: middle;
}
.bx_ganken.gan2 p:before {
 content: "";
  display: inline-block;
  width: 60px;
  height: 60px;
  margin: -3px 20px 0 0;
  background: url("../images/top/icon_gan2.png") no-repeat;
  background-size: contain;
  vertical-align: middle;
}
.bx_ganken.gan3 p:before {
 content: "";
  display: inline-block;
  width: 60px;
  height: 60px;
  margin: -3px 20px 0 0;
  background: url("../images/top/icon_gan3.png") no-repeat;
  background-size: contain;
  vertical-align: middle;
}
.bx_ganken.gan4 p:before {
 content: "";
  display: inline-block;
  width: 60px;
  height: 60px;
  margin: -3px 20px 0 0;
  background: url("../images/top/icon_gan4.png") no-repeat;
  background-size: contain;
  vertical-align: middle;
}
.bx_ganken.gan5 p:before {
 content: "";
  display: inline-block;
  width: 60px;
  height: 60px;
  margin: -3px 20px 0 0;
  background: url("../images/top/icon_gan5.png") no-repeat;
  background-size: contain;
  vertical-align: middle;
}
.wrap_godai .comment {
    position: absolute;
    right: 10px;
    bottom: 0;
	text-align: center;
}
.wrap_godai .comment img{
width: 80%;
}

.bx_ganken.gan6{
border: none;
background: none;
}

@media screen and (max-width: 980px) {
	.wrap_godai {
    padding: 20px;
	margin: 0 -20px 0;
}
	.bx_ganken .inner {
    padding: 40px 20px;
}
}

@media screen and (max-width: 780px) {
.wrap_godai {
	padding: 20px;
}
.bx_ganken{
    width: 100%;
    max-width: 300px;
    margin: 0 auto 20px;
}
.bx_ganken .inner{
    padding: 20px 20px;
}
.wrap_godai {
    padding-bottom: 200px;
	margin: 0 -20px 0;
}
}
/* add */
.wrap_douga.wide {
    max-width: 900px;
}
.wrap_godai {
    background: none !important;
}
#wrap_top_se3 {
    background: #fff4df;
}
/* 自治体へ*/
.jichitai {
    margin: 0 auto 30px;
    max-width: 900px;
    font-size: 1.2em;
	font-size: clamp(15px, 2.8vw, 19px);
    font-weight: 600;
    letter-spacing: 0.05em;
    text-align: left;
    background: #fff;
    padding: 12px 32px;
}
