@charset "UTF-8";
.cont_ttl_02 .cont_ttl_02_in{
  display: inline-flex;
  padding: 59px 0 0 107px;
}
.cont_ttl_02 .cont_ttl_02_in .txt_sub {
  font-size: 1.7rem;
    color: #005400;
    margin: 10px 0 0 10px;
    display: block;
    font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}

@media screen and (max-width: 768px) {
/* 768pxまでの幅の場合に適応される */
.cont_ttl_02 .cont_ttl_02_in{
  display: block;
  padding: 8% 0 7% 0;
}
.cont_ttl_02 .cont_ttl_02_in p{
  text-align: center;
}
.cont_ttl_02 .cont_ttl_02_in .txt_sub {
    margin: 1% 0 0 0;
}
.cont_ttl_02 .cont_ttl_02_in .txt_sub span{
  display: none;
}
}
.wrap.btg {
  padding: 40px 0 50px;
}
.txt_brd:before, .txt_brd:after {
	content: "";
	flex-grow: 1;
	border-top: 2px solid #fff;
	display: block;
}
.txt_brd:before {
	margin-right: .4em;
}
.txt_brd:after {
	margin-left: .4em;
}
.cont_ttl_01 .sub_txt {
  font-size: 1.4rem;
  line-height: 2em;
}
.cont_ttl_uline p{
  margin: 0 0 20px;
  padding: 0 0 20px;
  border-bottom: 1px solid #005400;
  text-align: left;
  font-size: 1.7rem;
  color: #005400;
}
.cont_ttl_uline p a{
  color: #005400;
}
.cont_ttl_uline p span {
  font-size: 2rem;
  margin: 0 0.3em 0 0;
}
.smap_link {
  margin: 45px 0 0;
}
.smap_link ul {
  display: flex;
  flex-wrap: wrap;
	width:100%;
  margin: 0 0 20px;
}
.smap_link ul li{
  width: 25%;
  text-align: left;
}

.smap_link ul li a{
  color: #666464;
  font-size: 1.5rem;
  line-height: 2.5em;
}
.smap_link ul li:last-child a{
  margin: 0 0 0 0;
}
.link_in .wrap{
  padding: 20px 0 0;
  display: flex;
  flex-wrap: wrap;
}
.link_in .wrap ul {
  width: 25%;
  text-align: left;
}
.link_in .wrap ul:last-child {
  width: 50%;
}
.link_in .wrap ul:last-child li ul{
  width: 100%;
}
.link_in ul li a {
    color: #666464;
    font-size: 1.5rem;
    line-height: 2.5em;
}
.link_in .wrap ul li ul{
  width: 100% !important;
}
.link_in .wrap ul li ul li a::before{
  content: "---";
  margin: 0 10px 0 0;
}
.sec02 {
  margin: 40px 0 70px;
}
@media screen and (max-width: 768px) {


.wrap.btg{
  width: 92%;
}
/* 768pxまでの幅の場合に適応される */
.cont_ttl_uline p {
  font-size: 1.6rem;
  line-height: 1.5em;
  padding: 0 0 3%;
  margin-bottom: 3%;
}
.cont_ttl_uline p span{
  margin: 0 0.2em 0 0;
}
.cont_ttl_01 {
  padding: 30px 0 20px;
}
.cont_ttl_01 p img {
  width: 70%;
  margin: 0 15%;
}
.txt_brd {
  font-size: 1.5rem;
  width: 40%;
  margin: 4% 30% 1%;
}
.link_btn {
  margin: 0 0 7%;
}
.link_btn ul {
  display: block;
  width: 108%;
  margin: 0 -4%;
}
.link_btn ul li {
    display: block;
}
.link_btn ul li a {
  margin: 0 0 1% 0;
}
.smap_link {
  margin: 0 0 0;
}
.smap_link ul{
  margin-bottom: 3%;
  display: block;
}
.smap_link ul li {
  display: inline-block;
  width: auto;
  position: relative;
  padding-right: 0.5em;
  margin-right: 1.5em;
}
.smap_link ul li::after {
  content: "/";
  font-size: 1.3rem;
  margin: 0 0 0 10%;

  position: absolute;
  top: 50%;
  margin-top: -.4rem;
  right: -0.8em;
}
.smap_link ul li a{
  font-size: 1.3rem;
}
.smap_link ul li a::after {
  display: none;
}
.smap_link ul li:last-child a::after {
  content: "";
  margin: 0 0 0 0;
}
.sec02 {
  margin: 0 0 6%;
}
.sec02_txt_link ul li::after {
  margin: 0 15px;
}
.link_in .wrap{
  display: block;
  padding-top: 0;
}
.link_in .wrap ul {
  width: 100% !important;
}
}
@media screen and (max-width: 320px) {
/* 320pxまでの幅の場合に適応される */
.txt_brd {
  font-size: 1.5rem;
  width: 50%;
  margin: 4% 25 1%;
}
}

@media screen and (max-width: 768px) {
/* 768pxまでの幅の場合に適応される */
.sp_sub_txt {
  margin: 7% 0 3%;
}
.sp_sub_txt .sub_txt{
  font-size: 1.4rem;
  color: #005400;
  text-align: center;
  line-height: 1.5em;
}
}


.cont_ttl p{
  margin: 0 0 30px;
  text-align: center;
  font-size: 3rem;
}
.cont_ttl p{
  line-height: 1em;
  padding: 1.5rem 0;
}
@media screen and (max-width: 768px) {
/* 768pxまでの幅の場合に適応される */
.cont_ttl p{
  font-size: 2rem;
}
}

.sec01 {
  padding: 0 0 0;
}

.sec01_img ul{
  display: inline-flex;
  flex-wrap: wrap;
}
.sec01_img ul li{
  width: 205px;
  height: 190px;
  margin: 0 24.6px 0 0;
}
.sec01_img ul li a{
  display: block;
}
.sec01_img ul li a span{
  height: 148px;
  margin: 0 0 12px;
  display: flex;
  justify-content: center;
  align-items: center;
  border: 1px solid #005400;
}
.sec01_img ul li a img{
  z-index: -999;
}
.sec01_img ul li a p{
font-size: 1.2rem;
}
.sec01_img ul li:nth-child(4n){
  margin: 0 0 0 0;
}

@media screen and (max-width: 768px) {
/* 768pxまでの幅の場合に適応される */
.sec01 {
    padding: 1% 0 6%;
}
.sec01_img ul li {
  width: 48%;
  height: 190px;
  margin: 0 4% 0 0;
}
.sec01_img ul li:nth-child(2n) {
  margin: 0 0 0 0;
}
}
.sec02_txt_link ul li {
  float: left;
}
.sec02_txt_link ul li::after {
  content: "/";
  margin: 0 20px;
  font-size: 1.5em;
}
.sec02_txt_link ul li:last-child::after {
  content: "";
}
.sec02_txt_link ul li a{
  color: #666464;
  font-size: 1.5rem;
  line-height: 2em;
}

@media screen and (max-width: 1024px) {
/* 1024pxまでの幅の場合に適応される */

}
@media screen and (max-width: 768px) {
/* 768pxまでの幅の場合に適応される */

}
@media screen and (max-width: 480px) {
/* 480pxまでの幅の場合に適応される */

}
@media screen and (max-width: 320px) {
/* 320pxまでの幅の場合に適応される */

}
