@charset "UTF-8";
* {
  margin: 0;
  padding: 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
    font-feature-settings: "palt";
}

body {
  font-size: 62.5%;
  line-height: 1.8rem;
  font-family:"Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif";  width: 100%;
}
img {
  width: 100%;
}
ul li {
  list-style: none;
}
a {
  text-decoration: none;
}


.mb_xxsmall {margin-bottom:5px !important;}
.mb_xsmall {margin-bottom:10px !important;}
.mb_small {margin-bottom:15px !important;}
.mb_medium {margin-bottom:30px !important;}
.mb_large {margin-bottom:50px !important;}
.mb_xlarge {margin-bottom:80px !important;}
.mb_xxlarge {margin-bottom:100px !important;}


.pt_small {line-height:3.5em;}


body .mv {
  /*background: url(../images/mv.png);
  background-size: cover;
  background-position: center, center;*/
    background:#000;
  width: 100%;
  padding-top: 56.25%;
  position: relative;
  margin: 0 auto;
}


@media all and (max-width:560px) {
body .mv {
  /*background: url(../images/mv.png);
  background-size: cover;
  background-position: center, center;*/
    background:#000;
  width: 100%;
  padding-top: 75%;
  position: relative;
  margin: 0 auto;
}   
}


#youtube-area{
    position: absolute;
    z-index: 1;/*最背面に設定*/
    top: 0;
    right:0;
    left:0;
    bottom:0;
    overflow: hidden;
 	opacity: 0;    
}

#youtube-area.appear {
	animation-name:PageAnimeAppear;
	animation-duration:.5s;
	animation-fill-mode:forwards;
}


@keyframes PageAnimeAppear{
	0% {
	opacity: 0;
	}
	100% {
	opacity: 1;
}
}


#youtube {
/*天地中央配置*/
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
/*縦横幅指定*/
  width: 177.77777778vh; /* 16:9 の幅→16 ÷ 9＝ 177.77% */
  height: 56.25vw; /* 16:9の幅 → 9 ÷ 16 = 56.25% */
  min-height: 100%;
  min-width: 100%;
}


/*youtubeがクリックされないためのマスク*/
#youtube-mask{
    position: absolute;
    z-index: 2;/*下から2番目に表示*/
    top:0;
    width:100%;
    height: 100%;
}


.mv_header {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
}

.mv_logo {
  float: left;
  padding-left: 80px;
  padding-top: 20px;
}

.mv_nav {
  float: right;
  margin-right: 80px;
}

ul.menu li {
  float: left;
  list-style: none;
 padding-top: 45px;
  padding-right: 60px;
}

li.menu a {
  color: #fff;
  text-decoration: none;
}
li.menu > a {
  color: #000;
  text-decoration: none;
}


li.menu > a:hover {
    color:#FFF;
}


.nav_btn {
  background-color: #006c2e;
  border: 1px solid #fff;
  padding-top: 10px;
  padding-right: 20px;
  padding-left: 20px;
  padding-bottom: 10px;
}

a:hover {
  opacity: 0.6;
  transition: 0.3s;
}

.mv_txt {
  position: absolute;
  font-size: 4.5em;
  line-height: 4.8rem;
  font-weight: bold;
  bottom: 150px;
  left: 80px;
  color: white;
    z-index:10;
}

@media only screen and (max-width: 1200px) {
  .mv_txt {
    font-size: 3.8em;
    line-height: 4.2rem;
    bottom: 100px;
  }
}
@media (max-width:960px){
  .mv_txt {
    font-size: 2.6em;
    line-height: 3.2rem;
    bottom: 60px;
  }
}
@media (max-width:768px){
.mv_txt {
  left: 40px;
  font-size: 2.4em;
  line-height: 2.8rem;
  bottom: 45px;
}
li.menu > a {
  color: #fff;
  text-decoration: none;
}

}
@media (max-width:460px){
  .mv_txt {
    font-size: 1.8em;
    line-height: 2.4rem;
    bottom: 20px;
    left: 30px;
  }
  
  }
  

body .wrapper {
  width: 100%;
  margin: 0 auto;
}


.block_banner {
  padding: 100px 0 50px;
  max-width: 1080px;
  width: 98%;
  margin: 0 auto;
}


@media all and (max-width:560px) {
.block_banner {
  padding: 30px 0 0;
  max-width: 1080px;
  width: 96%;
  margin: 0 auto;
}
}


.news_top {
  padding: 100px 30px;
  max-width: 1080px;
  width: 98%;
  margin: 0 auto;
}

.ttl {
  text-align: center;
}

.ttl h2 {
  font-size: 36px;
  color: #007130;
  font-weight: 300;
}

.ttl p {
  font-size: 18px;
  margin-top: 25px;
}

.news_box {
  margin-top: 90px;
}

.news_box ul li {
  list-style: none;
}


@media all and (max-width:560px) {
.news_box {
  margin-top: 40px;
}    
}


.news_box ul li a {
  padding: 0 0 20px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
  font-size: 20px;
  text-decoration: none;
  color: #333;
}

@media only screen and (max-width: 768px) {
  .news_box ul li a {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    font-size: 16px;
  }
}

.news_box ul li a time {
  font-size: 20px;
  color: #007130;
}

@media only screen and (max-width: 768px) {
  .news_box ul li a time {
    font-size: 16px;
  }
}

.news_box ul li a .tag {
  background-color: #e5e5e5;
  font-size: 16px;
  margin: 0 50px;
  padding: 3px 0px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 90px;
  text-align: center;
  vertical-align: center;
}

@media only screen and (max-width: 768px) {
 .news_box ul li a .tag {
    margin: 0 15px;
  }
}

@media only screen and (max-width: 480px) {
  .news_box ul li a .tag {
    padding: 0;
  }
}

.btn {
  background: -webkit-gradient(linear, left top, left bottom, from(#2fb383), to(#18a86b));
  background: linear-gradient(#2fb383, #18a86b);
  width: 40%;
  text-align: center;
  margin: 50px auto 0;
  height: 70px;
}

@media only screen and (max-width: 768px) {
  .btn {
    width: 65.6%;
  }
}

@media only screen and (max-width: 480px) {
  .btn {
    width: 96%;
  }
}

.btn a {
  color: #fff;
  line-height: 70px;
  font-size: 20px;
  text-decoration: none;
  text-align: center;
  font-weight: 300;
}
.btn-li a {
  color: #fff;
  line-height: 70px;
  font-size: 20px;
  text-decoration: none;
  text-align: center;
  font-weight: 300;
  padding: 20px 65px;
}

.fa-bars {
  padding-right: 20px;
}


body section .service {
  background-color: #f5f9ea;
  width: 100%;
  margin: 0 auto;
}

body section .service .service_inner {
  max-width: 1080px;
  width: 100%;
  margin: 0 auto;
  padding: 100px 0 120px;
}


@media all and (max-width:560px) {
body section .service .service_inner {
  max-width: 1080px;
  width: 100%;
  margin: 0 auto;
  padding: 50px 0 60px;
}    
}


body section .service .service_inner .ttl {
  text-align: center;
}

body section .service .service_inner .ttl h2 {
  font-size: 36px;
  color: #007130;
  font-weight: 300;
}

body section .service .service_inner .ttl p {
  font-size: 18px;
  margin-top: 25px;
}

.service_box {
  margin: 50px auto 0;
  max-width: 1080px;
  width: 96%;
  position: relative;
  padding: 30px 0;
  height: 400px;
}

.service_img {
  width: 60%;
  position: absolute;
  right: 0;
  top: 0;
}


.service_txt {
  position: absolute;
  left: 0;
  top: 5%;
  width: 46.8%;
  background-color: #fff;
  padding: 45px 30px 45px 30px;
  border-top: 2px solid #23ad76;
}


.service_txt h3 {
  font-size: 26px;
  font-weight: bold;
}

.service_txt p {
  font-size: 18px;
  margin: 25px 0 30px;
}

@media all and (max-width:560px) {
.service_txt p br {
    display:none;
}
}


.service_img02 {
  width: 60%;
  position: absolute;
  left: 0;
  top: 0;
}

.service_txt02 {
  position: absolute;
  left: 53%;
  top: 5%;
  width: 46.8%;
  background-color: #fff;
  padding: 45px 40px 45px 30px;
  border-top: 2px solid #23ad76;

}

body section .service .service_inner .service_box .service_txt .btn {
  background: -webkit-gradient(linear, left top, left bottom, from(#2fb383), to(#18a86b));
  background: linear-gradient(#2fb383, #18a86b);
  text-align: center;
  display: inline-block;
  padding: 0;
  width: 260px;
    margin:30px auto 0;
}
.service_list {
  margin-top: 55px;
}
.service_list ul {
  display: flex;
  justify-content: space-between;
  width: 96%;
  margin: 0 auto;
}
.service_list ul li {
  width: 48%;
}
.service_txt-li {
  background-color: #fff;
  padding: 44px 70px 50px 30px;
  border-bottom: 2px solid #23ad76;
  margin-top: -10px;
}
.service_txt-li h3{
  font-size: 26px;
  font-weight: bold;

}
.service_txt-li p {
  font-size: 18px;
  margin: 25px 0 30px;

}
.btn-li {
  background: -webkit-gradient(linear, left top, left bottom, from(#2fb383), to(#18a86b));
  background: linear-gradient(#2fb383, #18a86b);
  text-align: center;
  display: inline-block;
  padding: 0;

}



@media only screen and (max-width: 768px) {
  body section .service .service_inner .service_box .service_txt .btn {
    width: 65.6%;
  }
}

@media only screen and (max-width: 560px) {
  body section .service .service_inner .service_box .service_txt .btn {
    width: 96%;
  }
}

@media (max-width:1200px) {
  .service_txt p {
    font-size: 18px;
    margin: 25px 0;
  }
  .service_txt {
    padding: 30px 15px 30px 30px;
  }
}
@media (max-width:960px) {
  .service_txt p {
    font-size: 16px;
    margin: 25px 0;
  }
  
.service_txt {
  padding:30px 20px 30px 20px;
  position: static;
  width: 96%;
  margin: 0 auto;
}
.service_txt h3 {
  font-size: 24px;
}
.service_img {
  width: 96%;
  margin: 0 auto;
  position: static;
}
.service_img02 {
  width: 96%;
  margin: 0 auto;
  position: static;
}
.service_txt02 {
  padding:30px 20px 30px 20px;
  position: static;
  width: 96%;
  margin: 0 auto;
}
.service_box {
  height: auto;
  margin: 20px auto 0;
}

}

.category {
  margin: 75px auto 155px;
  max-width: 1080px;
  width: 100%;
}


.category a {
    display:block;
    width:100%;
    margin:0 auto 30px;
}


.block_category {
    width:100%;
    display:table;
}


.category_txt {
    display:table-cell;
    width:50%;
    background-color: #2fb383;
    text-align:center;
    padding:0 10px 50px;
}


.category_txt h3 {
  color: #fff;
  font-size: 26px;
  padding-top: 45px;
  font-weight: 300;
  text-align: center;
}


.category_txt .subttl {
  font-size: 16px;
  text-align: center;
  color: #fff;
  padding-top:15px;
}

.category_txt .list-txt {
  padding: 20px 45px 0;
  font-size: 20px;
  color: #ffff;
}

@media all and (max-width:560px) {
.list-txt br {
    display:none;
}
}

.category_txt .list-btn {
    width:50%;
    margin:30px auto 0;
    background:#FFF;
    color:#2bb07f;
    text-align:center;
    padding:1em;
    font-size: 16px;
}

.category_img {
    display:table-cell;
    width:50%;
}


.category_img.bg_gallery {
    background:url("../images/gallery.jpg") no-repeat center center;
    background-size:cover;
}

.category_img.bg_recruit {
    background:url("../images/recruit.jpg") no-repeat center center;
    background-size:cover;
}

.category_img.bg_sdgs {
    background:url("../images/SDGS.jpg") no-repeat center center;
    background-size:cover;
}


@media all and (max-width:560px) {
.category {
  margin: 50px auto 60px;
  max-width: 1080px;
  width: 100%;
}
    
    
.block_category {
    width:96%;
    display:block;
    margin:0 auto;
}


.category_txt {
    display:block;
    width:100%;
    background-color: #2fb383;
    text-align:center;
    padding:0 10px 50px;
}
    
.category_txt .list-txt {
  padding: 20px 0 0;
  font-size: 20px;
  color: #ffff;
}

.category_img {
    display:block;
    width:100%;
    height:200px;
}
}



.contents {
  margin-top: 220px;
  margin-bottom: 130px;
}
@media (max-width:768px) {
  .contents {
    margin-top: 120px;
      margin-bottom:70px;
  }
}

.location {
  margin: 155px auto 145px;
  width: 100%;
  max-width: 1080px;
}


@media all and (max-width:560px) {
.location {
  margin: 50px auto 60px;
  width: 100%;
  max-width: 1080px;
}
}


.ttl {
  text-align: center;
}

.ttl h2 {
  font-size: 36px;
  color: #007130;
  font-weight: 300;
}

.ttl p {
  font-size: 18px;
  margin-top: 25px;
}
.location-list ul {
  display: flex;
  width: 100%;
  max-width: 1080px;
  justify-content: space-between;
  flex-wrap: wrap;
}
.location-list ul li {
  width: 48.5%;
}
.location-in-box {
  margin: 90px 0 0;
}

@media all and (max-width:560px) {
.location-in-box {
  margin: 30px 0 50px;
}
}


.location-txt h3 {
  font-size: 24px;
  margin: 20px 0;
  font-weight: 300;
}
.location-txt p span {
  font-size: 16px;
}
.location-txt p {
  font-size: 21px;
}
.location_btn {
  width: 100%;
  justify-content: space-between;
  display: flex;
    flex-wrap: wrap;
}


.img_office .location_btn {
  width: 100%;
  justify-content:flex-end;
  display: flex;
}


.location_btn a {
  color: #2bb17f;
    display:block;
}
.location-txt {
  padding-bottom: 40px;
}
.lo_btn-detail {
  width: 48%;
  border: 1px solid #25ae79;
  color: #2bb17f;
  font-size: 18px;
  font-weight: 600;
}
.lo_btn-map {
  width: 48%;
  border: 1px solid #25ae79;
  color: #2bb17f;
  font-size: 18px;
  font-weight: 600;
}
.lo_btn {
  display: block;
}
@media (max-width:1200px) {
  .list-l ,  .list-r-02{
    height: 281.25px;
  }
  .category ul li h3  {
    padding-top: 35px;
  }
  .location {
    width: 96%;
  }
}
@media (max-width:960px) {
  .category ul li {
    flex-direction: column;
    margin: 0 auto 50px;
    width: 96%;
  }
  .list-r , .list-r-02 {
    width: 96%;
    margin: 0 auto;

  }
  .list-l , .list-l-02{
    width: 96%;
    margin: 0 auto;
  }
  .list-txt {
    margin: 0 auto;
    width: 96%;
  }
  .list-r-02 {
    margin: -12px auto 0;
    width: 96%;
  }
  .order1 {
    order: 1;
  }
  .order2 {
    order: 2;
    margin-top: -12px;

  }
  .order3 {
    order: 3;
  }
  .order4 {
    order: 4;
    margin-top: -12px;
  }
  .location-list ul {
    flex-direction: column;
    margin: 0 auto 50px;
    width: 100%;

  }
  .location-list ul li {
    width: 100%;
  }
  .service_txt {
    margin-top: -12px;
    border-top: none;
    border-bottom: 2px solid #23ad76;
    text-align: center;
  }
  .service_box {
    padding: 30px 0;
  }
  .service_list ul {
    flex-direction: column;
  }
  .service_list ul li {
    width: 100%;
    margin: 0 auto;
  }
  .service_list ul li:first-child {
    margin-bottom: 70px;
  }
  .service_txt-li p {
    font-size: 16px;
    margin: 25px 0;
  }
  
.service_txt-li {
  padding:30px 20px 30px 20px;
  text-align: center;
}
.service_txt-li h3 {
  font-size: 24px;
}
}
@media (max-width:768px) {
  .btn-li {
    width: 65.6%;
  }
  .category ul li h3 {
    font-size: 24px;
    padding-top: 30px;
  }
  .list-txt {
  padding: 20px;
  font-size: 18px;
  }
  .subttl {
    padding-top: 8px;
  }
}
@media (max-width:560px) {
.service_box {
    padding: 10px 0;
  }
    
.service_list {
    margin-top: 30px;
}
    
.service_list ul li:first-child {
    margin-bottom: 40px;
  }
    
  .btn-li {
      width: 96%;
  }
  .category ul li h3 {
    font-size: 22px;
    padding-top: 25px;
  }
  .subttl {
    padding-top: 0px;
  }
  .list-txt {
    padding: 15px;
    font-size: 16px;
  }
  .location-txt p span {
    font-size: 12px;
  }
  .location-txt p {
    font-size: 20px;
  }
  .location-txt h3 {
    font-size: 20px;
    margin: 15px 0;
  }
  .location_btn {
    width:100%;
  }
  .lo_btn-detail {
    width: 100%;
    font-size: 16px;
    margin-bottom: 10px;
  }
  .lo_btn-map {
    width: 100%;
    font-size: 16px;
  }
}

.footer_menu {
    background-color: #2fb383;
}
.footer_menu-inner {
  padding-top: 80px;
  color: #fff;
  display: flex;
  max-width: 1080px;
  width: 100%;
  justify-content: space-between;
  margin: 0 auto;
}
.footer_menu-01 ul li:first-child {
  font-size: 18px;
  font-weight: 500;
  padding-left: -20px;
  
}
.footer_menu-02 ul li:first-child {
  font-size: 18px;
  font-weight: 500;
}
.footer_menu-03 ul li:first-child {
  font-size: 17px;
  font-weight: 500;
}
.footer_menu-04 {
  font-size: 17px;
  font-weight: bold;
}
.footer_menu-inner ul li a {
  color: #fff;
  font-size: 15px;
  font-weight: 300;
}
.footer_menu-01 ul li:nth-child(n+2) {
  padding: 10px 0 0 20px;
  font-size: 15px;
}
.footer_menu-02 ul li:nth-child(n+2) {
  padding: 10px 0 0 20px;
  font-size: 15px;
}
.footer_menu-03 ul li:nth-child(n+2) {
  padding: 10px 0 0 20px;
  font-size: 15px;
}
.footer_menu-04 {
  padding-top: -20px;
}
.footer_menu-04 ul li {
  padding-bottom: 10px;
}
.footer_menu-04 ul li a {
  font-size: 17px;
  font-weight: 500;
}
.adress {
  text-align: center;
  margin: 0 auto;
  color: #fff;
  padding-top: 100px;

}
.adress h4 {
  font-size: 21px;
}
.add {
  font-size: 21px;
  font-weight: 300;
  padding-top: 30px;
}
.tell {
  font-size: 24px;
  font-weight: 600;
  padding-top: 15px;
}
.policy {
  font-size: 14px;
  padding: 10px 0;
  color: #fff;
}
.policy a {
  color: #fff;
  font-weight: 300;
}

footer {
  background-color: #259858;
  width: 100%;
  margin: 0 auto;
}
.footerlogo {
  text-align: center;
  padding: 25px 0 5px;
  width: 110px;
  margin: 0 auto;
}
footer p {
  font-size: 12px;
  text-align: center;
  color: #fff;
}


/*新着情報*/
.sub_header {
  color: #000;
  height: 100px;
}
.sub_logo {
  float: left;
  padding-left: 0px;
  padding-top: 20px;
}
.submenu li a{
  color: #000;
  text-decoration: none;
  font-size: 1.8em;
  font-weight: 600;
}
.submenu {
  overflow: hidden;
}
.submenu li {
  float: left;
  list-style: none;
  padding-top: 45px;
   padding-right: 60px;
 
}
.sub_nav {
  float: right;
  margin-right: 80px;
}
.submenu li a.nav_btn {
  color: #fff;
}
.news_section {
  max-width: 1080px;
  margin: 0 auto;
  width: 96%;
}

.sub_bg-ttl {
  position: relative;
}
.sub_ttl {
  font-size: 60px;
  position: absolute;
  font-weight: 600;
  left: 0;
  bottom:10%;
}
.breadcrumb {
  margin: 0;
  padding: 0;
  list-style: none;
  padding-left:5px;
  padding-top: 40px;
  padding-bottom: 15px;
}

@media (max-width: 460px) {
  .breadcrumb {
    padding-left: 0;
    padding-top: 7px;
    padding-bottom: 7px;
  }
}

.breadcrumb li {
  display: inline;
  /*横に並ぶように*/
  list-style: none;
  font-size: 15px;
  color: #626262;
}

@media (max-width: 460px) {
  .breadcrumb li {
    font-size: 11px;
  }
}

.breadcrumb li:after {
  /* >を表示*/
  content: '>';
  padding: 0 0.2em;
  color: #333333;
}

.breadcrumb li:last-child:after {
  content: '';
}

.breadcrumb li a {
  text-decoration: none;
  color: #22834e;
  /*色*/
}

.breadcrumb li a:hover {
  text-decoration: underline;
}

.news {
  text-align: left;
  padding: 0 10px ;
}

.news_txt {
  margin: 70px auto 120px;
  width: 100%;
  max-width: 1080px;
  padding-left: 20px;
}

.news_txt dl dt {
  font-size: 20px;
  float: left;
  color: #007130;
}

@media (max-width: 768px) {
  .news_txt dl dt {
    font-size: 14px;
  }
}

.news_txt dl span {
  background-color: #E8E8E8;
  float: left;
  margin: 0 45px;
  padding: 0.1rem 0;
  font-size: 16px;
  width: 90px;
  text-align: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  height: 30px;
  line-height: 30px;
}

@media (max-width: 768px) {
  .news_txt dl span {
    margin: 0 10px;
    font-size: 11px;
  }
}

.news_txt dl .sp_br {
  display: none;
}

@media (max-width: 768px) {
  .news_txt dl .sp_br {
    display: block;
  }
}

.news .news_txt dl dd {
  font-size: 15px;
  font-family: 'Noto Sans JP', sans-serif;
  margin-bottom: 15px;
  text-align: left;
}

@media (max-width: 768px) {
  .news_txt dl dd {
    margin-bottom: 30px;
    font-size: 14px;
    margin-top: 5px;
  }
}

.nav-links{
  padding:2em;
  display:flex;
  justify-content:center;
  margin-bottom: 300px;
}
.page-numbers{
  width:50px;
  height:50px;
  margin:2px;
  line-height:50px;
  text-align:center;
  font-size:14px;
  font-weight:bold;
  text-decoration:none;
  color:#222;
  transition:.3s;
}
.page-numbers:hover {
  opacity: 0.6;
  transition: 00.3s;
  cursor: pointer;
}
.current{
  background: #37b2ab;
  color: #fff;
}
.dots{
  background:none;
}
@media (max-width:1280px) {
  .footer_menu-inner {
    width: 96%;
  }
}
@media (max-width:960px) {
  .footer_menu-inner ul li a {
    font-size: 16px;
  }
  .footer_menu-03 ul li:first-child  {
    font-size: 20px;
  }
  .footer_menu-02 ul li:first-child {
    font-size: 20px;

  }
  .footer_menu-01 ul li:first-child  {
    font-size: 20px;
  }
  .footer_menu-04 ul li a {
    font-size: 20px;
  }
  
}
@media (max-width:768px) {
  .sub_ttl {
    font-size: 45px;
  }
  .footer_menu-inner {
    display: none;
  }
  .adress {
    padding-top: 30px;
  }
}
@media (max-width:480px) {
  .sub_ttl {
    font-size: 24px;
    bottom: 2%;
  }
  .adress h4 {
    font-size: 18px;
  }
  .add {
    font-size: 16px;
    padding-top: 20px;
  }
  .tell {
    font-size: 18px;
    padding-top: 5px;
  }
  .policy {
    font-size: 10px;
    padding: 5px 0 10px;
  }
  .footerlogo {
    padding: 15px 0;
  }
}

.news_topics {
  max-width: 1080px;
  width: 96%;
  margin: 0 auto;
}
.news_topics h2 {
  color: #006c2e;
  font-size: 24px;
  font-weight: 300;
  border-bottom: 1px solid #ddd;
  padding-bottom: 15px;
}
.topics_txt {
  padding-left: 0;
  margin: 15px auto 45px;
}
.news_detail {
  padding-top: 40px;
  font-size: 12px;
}
.news_adress {
  padding-top: 40px;
  font-size: 20px;
  line-height: 1.8em;
}
.email {
  padding-left: 120px;
  font-size: 20px;
  font-weight: 300;
}
.news_img {
  width: 60.9%;
  margin-top: 45px;
}
.news_btn {
  background: linear-gradient(#2fb383, #18a86b);
  margin: 70px auto 100px;
  width: 40%;
  text-align: center;
}

.recruit_body .news_btn {
  background: linear-gradient(#2fb383, #18a86b);
  margin: 20px auto 100px;
  width: 40%;
  text-align: center;
}


.news_btn a {
  font-size: 20px;
  color: #fff;
  font-weight: 300;
  padding: 20px 0;
  display: block;
}
.attention {
  text-align: right;
}
.attention a{
	color: #000;
  font-size: 20px;
  font-weight: 300;
  text-align: right;
  padding: 10px 0 10px 50px;
  background: url(../images/attention.png) no-repeat left;
  background-size: contain;
}
.sp_br {
  display: none;
}
@media (max-width:768px) {
  .news_btn {
    width: 50%;
  }
  .news_btn a {
    font-size: 18px;
  }
}
@media (max-width:560px) {
  .news_btn {
    width: 96%;
    margin: 30px auto 60px;
  }
.news_btn a {
font-size: 16px;
}
.news_topics h2 {
  font-size: 20px;
}
.sp_br {
  display: block;
}
.news_detail {
  font-size: 16px;
}
.news_adress {
  font-size: 16px;
}
.email {
  font-size: 16px;
  padding-left: 0px;
}
.news_img {
  width: 100%;
}
.attention a {
  font-size: 12px;
}
.news_top {
  padding: 40px 5px;
}
}
.fixed_btn {
  width: 60px;
  height: 60px;
  position: fixed;
  bottom: 10px;
  right: 10px;
  background: #007130;
  cursor: pointer;
  display: block;
  text-decoration: none;
  color: #fff;
  box-shadow:5px 5px 5px #222;
}

@media (max-width: 560px) {
  .fixed_btn a {
    width: 45px;
    height: 45px;
  }
}


.fixed_btn .arrow02::after {
  content: '';
  width: 15px;
  height: 15px;
  border: 0;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  position: absolute;
  bottom: 20px;
  right: 22px;
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}

@media (max-width: 560px) {
  .fixed_btn .arrow02::after {
    border-top: 3px solid #fff;
    border-right: 3px solid #fff;
    right: 20px;
    bottom: 15px;
  }
}
.lo_btn {
  font-size: 18px;
}

.arrow{
  position: relative;
  display: inline;
  color: #000;
  vertical-align: middle;
  text-decoration: none;
  padding: 20px 0 20px 20px;
}

.arrow::after{
  content:"";
  display:block;
  position:absolute;
  width: 15px;
  height: 1px;
  background: #2bb17f;
    right:20px;
    top:50%;
    transform:translateY(-50%);
}


.news_detail-body {
  margin: 0 auto 120px;
  width: 96%;
  max-width: 1080px;
}

.greetings_contents {
  margin: 0 auto;
  max-width: 1080px;
  width: 96%;

}
.gre_box {
  overflow: hidden;
  width: 100%;
  margin: 88px auto 300px;
}
.gre_img {
  width: 48%;
  float: left;
}
.gre_txt {
  width: 48%;
  float: right;
}
.gre_txt p {
  font-size: 18px;
  padding-bottom: 50px;
}
.signature {
  font-size: 18px;
  margin-top: 30px;
}
.signature ul {
  display: flex;
  float: right;

}
.signature ul li {
  padding-left: 20px;
}
@media (max-width:960px) {
  .gre_txt p {
    font-size: 16px;
    padding-bottom: 20px;
  }
}
@media (max-width:460px) {
  .gre_txt {
    width: 98%;
  }
  .gre_img {
    width: 84%;
    margin: 0 auto;
    float: none;
  }
}

.arrow03{
  position: relative;
  display: inline-block;
  padding: 0 0 0 16px;
  color: #000;
  vertical-align: middle;
  text-decoration: none;
  font-size: 15px;
}
.arrow03::before,
.arrow03::after{
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  content: "";
  vertical-align: middle;
}

.arrow03::before{
  left: -4px;
  width: 8px;
  height: 8px;
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.sitemap {
  padding-right: 5px;
}
.privacy {
  padding-left: 5px;
}
p.news_article {
  font-size: 16px;
}
section.links_body {
  width: 96%;
  max-width: 1080px;
  margin: 0 auto;
}

section.links_body ul {
  display: flex;
  width: 100%;
  flex-wrap: wrap;
  justify-content: space-between;
}
section.links_body ul li {
  width: 31.5%;
  margin-bottom: 70px;
}
.link_box-p {
  font-size: 16px;
  text-align: center;
}
.asr_ttl {
  color: #006c2e;
  font-size: 24px;
  font-weight: 300;
  padding-bottom: 15px;
}

.asr_ttl span {
  display:inline;
}

.asr_body {
  width: 96%;
  max-width: 1080px;
  margin: 0 auto;
  overflow: hidden;
}
.asr-p {
  font-size: 18px;
  border-bottom: 1px solid #027f34;
  text-align: right;
  display: inline;
  float: right;
  margin-top: 20px;
}
.asr-p a {
  color: #027f34;
}
@media (max-width:460px) {
  section.links_body ul li {
    width: 48%;}
    .link_box-p {
      font-size: 14px;
    }
    .news_topics h2 {
      font-size: 20px;
    }
    
    .asr_ttl span {
  display:block;
}
    
    .asr-p a {
      font-size: 14px;
    }
    
}
.aboutus_body {
  max-width: 1080px;
  width: 96%;
  margin: 0 auto;
}
.aboutus_table {
  border-collapse: collapse;
  
}
.aboutus_table th{
  font-size: 18px;
  font-weight: normal;
  width: 350px;
  padding-left: 20px;
  text-align: left;
  padding: 15px 0 15px 20px;

}
.aboutus_table td {
  font-size: 18px;
  width: 930px;
  padding: 15px 0;

}
.aboutus_table td p {
  font-size: 18px;
}
.aboutus_table tr:nth-child(odd) {
  background:#f7f7f7;
}
.aboutus_btn {
  background: -webkit-gradient(linear, left top, left bottom, from(#2fb383), to(#18a86b));
  background: linear-gradient(#2fb383, #18a86b);
  display: inline-block;
  padding: 15px 0;
  width: 260px;
  color: #fff;
  text-align: center;
  margin: 30px 0 30px 15px;
}
.aboutus_btn a {
  color: #fff;
}
@media (max-width:460px) {
  .aboutus_table th{
    font-size: 16px;
    background-color: #f7f7f7;
    display: block;
    padding: 15px 0 15px 20px;

  }
  .aboutus_table td {
    font-size: 16px;
    padding-left: 20px;
    display: block;
    background-color: #fff;
    width: 96%;
  }
  .aboutus_table td p {
    font-size: 16px;
  }
  .aboutus_table tr:nth-child(odd) {
    background:none;
  }
}

/*沿革*/
.history_body {
  max-width: 1080px;
  width: 96%;
  margin: 0 auto;
}
.table-scroll {
  width: 100%;
}
.history_body table {
  border-collapse:collapse;
  max-width: 1080px;
  width: 100%;
  margin: 0 auto;
  table-layout: fixed;
}

.history_body table tr {
  border-bottom: 1px solid #dcdcdc;
}
.history_body table tr td {
  font-size: 18px;
  vertical-align: middle;
}
.history_body table tr td.col {
  color: #5d9951;
  vertical-align: top;
  width: 10%;
  padding-left: 30px;
  font-size: 24px;
  padding-top: 15px;
}
.history_body table tr td ul li p {
  font-size: 18px;
}
.br_pc {
  display: none;
}
.history_body table tr td.month {
  width: 10%;
  text-align: center;
  font-size: 24px;
  padding: 15px 0;
}
.history_p {
  width: 80%;
  padding: 15px 0;

}
.history_body table tr.history_bor-n {
  border-bottom: none;
}

@media (max-width:960px) {
  .history_body table tr td {
    font-size: 16px;
  }
  .history_body table tr td.col {
    font-size: 21px;

  }
  .history_body table tr td.month {
    font-size: 21px;
  }
}
@media (max-width:768px) {
  .history_body table tr td.col {
    padding-left: 15px;
  }
  .history_body table tr td.col {
    font-size: 21px;
    width: 20%;
  }
  .history_body table tr td.month {
    font-size: 21px;
    width: 20%;
  }
}
@media (max-width:460px) {
  .table-scroll {
    overflow: scroll;
  }
  
 .history_body table {
    width: 200%;
  }

  .history_body table tr td.col {
    font-size: 18px;
  }
  td.history_p {
    font-size: 14px;
  }
  .history_body table tr td.month {
    font-size: 18px;
  }
  .sp_br {
    display: block;
  }

}
.td_p {
  float: left;
}
.td_month {
  float: left;
}
.history_body ul li {
  overflow: hidden;
}
.period {
  float: left;
  font-size: 24px;
  color: #5d9951;

}
.history_p span {
  padding: 0 30px;
  font-size: 24px;
}
.history_p ul li {
  font-size: 18px;

}

/*動画ギャラリーページ*/
.movie_body {
  max-width: 1080px;
  width: 96%;
  margin: 0 auto;
}
.movie_body h2 {
  font-size: 30px;
  color: #006c2e;
  font-weight: normal;
}
.youtube {
  margin: 35px 0 100px;
  text-align: center;
}
@media (max-width:460px) {
  .youtube {
    margin: 35px 0 100px;
    text-align: center;
    position: relative;
    width: 100%;
    padding-top: 56.25%;
  }
  .youtube iframe {
    position: absolute;
    top: 0;
    right: 0;
    width: 100%;
    height: 100%;
  }
  
}

/*プライバシーポリシー*/
.privacy_body {
  max-width: 1080px;
  width: 96%;
  margin: 0 auto;
}
.privacy_box-01 {
  overflow: hidden;
}
.privacy_box-01 h2 {
  color: #006c2e;
  font-size: 21px;
  font-weight: normal;
  padding-bottom: 40px;
}
.privacy_box-01 h2.top_subttl {
  font-size: 30px;
    padding-top:5px;
}
.privacy_box-01 p {
  font-size: 18px;
  padding-bottom: 85px;
}
.basic_policy-link {
  color: #448aca;
  border-bottom: 1px solid #448aca;
}
.privacy_box-01 ol {
  counter-reset: my-counter;
  list-style: none;
  padding: 0;
  margin: 0;
}
.privacy_box-01 ol li {
  font-size: 18px;
  position: relative;
  padding-left: 45px;
  padding-bottom: 45px;
}
.privacy_box-01 ol li::before {
  content: counter(my-counter);
  counter-increment: my-counter;
  background-color: #006c2e;
  border-radius: 50%;
  position: absolute;
  top: -5px;
  left: 0;
  width: 39px;
  height: 39px;
  display: flex;
  justify-content: center;
  align-items: center;
  color: #fff;
  font-size: 85%;
  line-height: 1;
}
.privacy_box-02 {
  font-size: 18px;
  float: right;
  text-align: right;
}
p.pr_adress {
  padding-bottom: 25px;
}
@media (max-width:460px) {
  .privacy_box-01 p {
    font-size: 16px;
  }
  .privacy_box-01 h2 {
    font-size: 23px;
    padding-bottom: 20px;
  }
  .privacy_box-01 ol li {
    font-size: 16px;
    padding-bottom: 35px;
    padding-left: 35px;

  }
  .privacy_box-01 ol li::before {
    width: 30px;
    height: 30px;
  }
  .privacy_box-02 {
    font-size: 14px;
  }
}
/*保有車両紹介*/
.machinary_body {
  max-width: 1080px;
  width: 96%;
  margin: 0 auto;
}
.machinary_ttl {
  margin-bottom: 100px;
}
.machinary_ttl h2 {
  font-size: 30px;
  color: #006c2e;
  font-weight: normal;
}
.machinary_ttl p {
  font-size: 18px;
}
.machinary_box {
  max-width: 1080px;
  width: 100%;
  margin: 0 auto 40px;
  overflow: hidden;
}
.machinary_box-img {
  width: 39%;
  float: left;
}
.machinary_box-p {
  width: 61%;
  float: right;
  padding-top: 120px;
  padding-left: 60px;
}
.machinary_box-p h3 {
  font-size: 21px;
  font-weight: normal;

}
.machinary_box-p h3 span {
  color: #006c2e;
  font-weight: normal;

}
.machinary_box-p p {
  font-size: 18px;
}
@media (max-width:768px) {
  .machinary_box-p {
    padding-top: 45px;
    padding-left: 25px;
  }
  .machinary_box-p h3 {
    font-size: 20px;
  }
  .machinary_box-p p {
    font-size: 16px;
  }
  
}
@media (max-width:460px) {
  .machinary_box-img {
    width: 100%;
    float: none;
  }
  .machinary_box-p {
    width: 100%;
    float: none;
  }
  .machinary_box-p {
    padding-top: 10px;
    padding-left: 5px;
  }
  .machinary_ttl p {
    font-size: 16px;
  }
  .machinary_ttl h2 {
    font-size: 20px;
  }
  .machinary_ttl {
    margin-bottom: 70px;
  }
  .machinary_box-p h3 {
    padding-bottom: 5px;
  }
}

/*設備一覧*/
.facility_body {
  max-width: 1080px;
  width: 100%;
  margin: 0 auto;
}
.facility_ttl {
  font-size: 30px;
  color: #006c2e;
  font-weight: normal;
  margin-bottom: 30px;
}
.facility_flex {
  margin-bottom: 100px;
}
.facility_flex ul {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.facility_flex ul li {
  width: 48%;
  margin-bottom: 35px;
}
.facility_box-p {
  background: #2fb382;
  color: #fff;
  font-size: 24px;
  padding: 10px 20px;
}
.facility_ttl02 {
  font-size: 24px;
}
@media (max-width:960px) {
  .facility_body {
    width: 96%;
  }
  .facility_flex ul li {
    width: 100%;
  }
}
@media (max-width:460px) {
  .facility_ttl {
    font-size: 20px;
    margin-bottom: 40px;
  }
  .facility_box-p {
    font-size: 18px;
    padding: 5px 10px;
  }
  .facility_flex {
    margin-bottom: 60px;
  }
  .facility_ttl02 {
    font-size: 18px;
  }
  .facility_flex ul li {
    margin-bottom: 15px;
  }
}

/*金属加工処理事業*/
.project_top {
  background: url(../images/mataltop.jpg);
  padding-top: 32%;
  background-position: right;
  background-repeat: no-repeat;
  background-size: 83.33%;
}
.project_contents {
  max-width: 1080px;
  width: 96%;
  margin: 100px auto 0;
}
.project_contents h3 {
  color: #006c2e;
  font-size: 30px;
  font-weight: normal;
  text-align: left;
  padding-top: 25px;
}
.project_contents p {
  font-size: 18px;
  font-weight: normal;
  max-width: 1000px;
  padding-top: 25px;
  line-height: 30px;
  margin-bottom: 100px;
}

@media (max-width:768px) {
  .project_contents h3 {
    font-size: 22px;
  }
  .project_contents p {
    font-size: 16px;
    padding-top: 15px;

  }
}
/*スライド*/
@-webkit-keyframes loop_wrap {
  0% {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
  to {
    -webkit-transform: translateX(-200%);
            transform: translateX(-200%);
  }
}
@keyframes loop_wrap {
  0% {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
  to {
    -webkit-transform: translateX(-200%);
            transform: translateX(-200%);
  }
}

.slider img {
  width: 100%;
  /*スライダー内の画像を横幅100%に*/
  height: auto;
}

.slick-slider {
  margin: 0;
  padding: 0;
}

/*slickのJSで書かれるタグ内、スライド左右の余白調整*/
.slider .slick-slide {
  margin: 0 10px;
  /*スライド左右の余白調整*/
}

.figure_ex {
  max-width: 1080px;
  margin: 150px auto 0;
  width: 96%;
}
.figure_ex h3 {
  font-size: 30px;
  color: #006c2e;
  font-weight: normal;
  line-height: 40px;
}
.figure_ex p {
  font-size: 18px;
  font-weight: 18px;
  padding-top:40px;
}
@media (max-width:768px) {
  .figure_ex h3 {
    font-size: 20px;
    line-height: 30px;
  }
  .figure_ex p {
    font-size: 14px;
  }
}



.metal_top {
  background: url(../images/mataltop.jpg);
  padding-top: 32%;
  background-position: right;
  background-repeat: no-repeat;
  background-size: 83.33%;
    position:relative;
}


.metal_top::before {
    content:"";
    display:block;
    width: 83.33%;
    background:#cce9fd;
    position:absolute;
    top:80px;
    bottom:-80px;
    left:0;
    z-index:-1;
}



.car_top {
  background: url(../images/cartop.jpg);
  padding-top: 32%;
  background-position: right;
  background-repeat: no-repeat;
  background-size: 83.33%;
    position:relative;
}


.car_top::before {
    content:"";
    display:block;
    width: 83.33%;
    background:#ebd0cc;
    position:absolute;
    top:80px;
    bottom:-80px;
    left:0;
    z-index:-1;
}


.recycle_top {
  background: url(../images/recycletop.jpg);
  padding-top: 32%;
  background-position: right;
  background-repeat: no-repeat;
  background-size: 83.33%;
    position:relative;
}

.recycle_top::before {
    content:"";
    display:block;
    width: 83.33%;
    background:#c3d8d9;
    position:absolute;
    top:80px;
    bottom:-80px;
    left:0;
    z-index:-1;
}



.industry_top {
  background: url(../images/industrytop.jpg);
  padding-top: 32%;
  background-position: right;
  background-repeat: no-repeat;
  background-size: 83.33%;
    position:relative;
}


.industry_top::before {
    content:"";
    display:block;
    width: 83.33%;
    background:#fff9cf;
    position:absolute;
    top:80px;
    bottom:-80px;
    left:0;
    z-index:-1;
}


.others_top {
  background: url(../images/otherstopjpg.jpg);
  padding-top: 32%;
  background-position: right;
  background-repeat: no-repeat;
  background-size: 83.33%;
    position:relative;
}


.others_top::before {
    content:"";
    display:block;
    width: 83.33%;
    background:#ede7c8;
    position:absolute;
    top:80px;
    bottom:-80px;
    left:0;
    z-index:-1;
}


.homedevice_top {
  background: url(../images/hometop.jpg);
  padding-top: 32%;
  background-position: right;
  background-repeat: no-repeat;
  background-size: 83.33%;
    position:relative;
}


.homedevice_top::before {
    content:"";
    display:block;
    width: 83.33%;
    background:#e9f8e7;
    position:absolute;
    top:80px;
    bottom:-80px;
    left:0;
    z-index:-1;
}


@media all and (max-width:560px) {
.figure_ex {
  max-width: 1080px;
  margin: 50px auto 0;
  width: 96%;
}
    
.project_contents {
  max-width: 1080px;
  width: 96%;
  margin: 30px auto 0;
}
    
    
.metal_top {
  background: url(../images/mataltop.jpg);
  padding-top: 32%;
  background-position: right;
  background-repeat: no-repeat;
  background-size: 95%;
    position:relative;
}


.metal_top::before {
    content:"";
    display:block;
    width: 83.33%;
    background:#cce9fd;
    position:absolute;
    top:30px;
    bottom:-30px;
    left:0;
    z-index:-1;
}



.car_top {
  background: url(../images/cartop.jpg);
  padding-top: 32%;
  background-position: right;
  background-repeat: no-repeat;
  background-size: 95%;
    position:relative;
}


.car_top::before {
    content:"";
    display:block;
    width: 83.33%;
    background:#ebd0cc;
    position:absolute;
    top:30px;
    bottom:-30px;
    left:0;
    z-index:-1;
}
    
    
.recycle_top {
  background: url(../images/recycletop.jpg);
  padding-top: 32%;
  background-position: right;
  background-repeat: no-repeat;
  background-size: 95%;
    position:relative;
}

.recycle_top::before {
    content:"";
    display:block;
    width: 83.33%;
    background:#c3d8d9;
    position:absolute;
    top:30px;
    bottom:-30px;
    left:0;
    z-index:-1;
}
    
    
.industry_top {
  background: url(../images/industrytop.jpg);
  padding-top: 32%;
  background-position: right;
  background-repeat: no-repeat;
  background-size: 95%;
    position:relative;
}


.industry_top::before {
    content:"";
    display:block;
    width: 83.33%;
    background:#fff9cf;
    position:absolute;
    top:30px;
    bottom:-30px;
    left:0;
    z-index:-1;
}


.others_top {
  background: url(../images/otherstopjpg.jpg);
  padding-top: 32%;
  background-position: right;
  background-repeat: no-repeat;
  background-size: 95%;
    position:relative;
}


.others_top::before {
    content:"";
    display:block;
    width: 83.33%;
    background:#ede7c8;
    position:absolute;
    top:30px;
    bottom:-30px;
    left:0;
    z-index:-1;
}


.homedevice_top {
  background: url(../images/hometop.jpg);
  padding-top: 32%;
  background-position: right;
  background-repeat: no-repeat;
  background-size: 95%;
    position:relative;
}


.homedevice_top::before {
    content:"";
    display:block;
    width: 83.33%;
    background:#e9f8e7;
    position:absolute;
    top:30px;
    bottom:-30px;
    left:0;
    z-index:-1;
}
    
}


.home_bx {
  max-width: 1080px;
  width: 96%;
  margin: 150px auto 0;
}
.home_bx h2 {
  font-weight: normal;
  font-size: 30px;
  color: #006c2e;
  text-align: center;
}
.home_list-box ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  width: 100%;
  margin-top: 70px;
}
.home_list-box ul li {
  width: 31%;
  border: 1px solid #006c2e;
  text-align: center;
  padding:35px 0;
}
.home_list-box ul li h3 {
  font-size: 24px;
  color: #006c2e;
  font-weight: normal;
}
.home_list-box ul li h4 {
  font-size: 18px;
  padding-top: 25px;

}
.home_list-box ul li p {
  font-size: 18px;
  font-weight: normal;
}
@media (max-width:768px) {
  .home_list-box ul li {
    width: 100%;
    margin-bottom: 15px;
  }
  .home_bx h2 {
    font-size: 22px;
  }
  .home_list-box ul li h3 {
    font-size: 20px;
  }
  .home_list-box ul li p {
    font-size: 16px;
  }
}

/*採用制度*/
.recruit_body {
  margin: 100px auto 0;
  max-width: 1080px;
  width: 96%;
}
.recruit_ttl {
  font-size: 30px;
  color: #006c2e;
  font-weight: normal;
  margin:0 0 50px;
    line-height:1.6;
}
.recruit_ttl02 {
  font-size: 24px;
  color: #006c2e;
  font-weight: normal;
    text-align:center;
    margin:0 0 20px;
}


@media all and (max-width:560px) {
.recruit_body {
  margin: 50px auto 0;
  max-width: 1080px;
  width: 96%;
}
    
    
.recruit_ttl {
  font-size: 23px;
  color: #006c2e;
  font-weight: normal;
  margin:0 0 50px;
    line-height:1.6;
}
.recruit_ttl02 {
  font-size: 18px;
  color: #006c2e;
  font-weight: normal;
    text-align:center;
    margin:0 0 20px;
}    
}



.ta-c {
  text-align:center;
}

/*環境への取り組み*/
.en_box-02 {
  float: right;
  font-size: 18px;
}
.signature02 {
  margin-top: 35px;
  float: right;
}
.signature02 ul {
  flex-wrap: wrap;
  width: 320px;
  justify-content: end;
  margin: 0 auto;
}
.signature02 ul li {
  width: 48%;
}
.en_box {
  margin: 100px auto 0;
  max-width: 1000px;
}
.en_box p {
  font-size: 18px;
  text-align: right;

}
.en_box h2 {
  font-size: 21px;
  color: #006c2e;
  font-weight: normal;
}
.en_box-top ul {
  max-width: 1000px;
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  margin-top: 10px;
}
.en_box-top ul:last-child {
  border-bottom: 1px solid #dcdcdc;
}
.en_box-top ul li {
  border-top: 1px solid #dcdcdc;
  padding: 25px 0;
  font-size: 18px;

}
.en_box-top ul li:nth-child(odd) {
  width: 12.5%;
  text-align: center;
  font-weight: bold;
}
.en_box-top ul li:nth-child(even) {
  width: 87.5%;
}
.en_box-figure table {
    width: 100%;
    border-collapse:collapse;
    border-spacing: 0;
    border:none;
    border-top:1px solid #CCC;
    border-left:1px solid #CCC;
}
.en_box-figure table thead tr th {
  background-color: #f1f2f2;
  font-size: 18px;
  padding: 15px 0;
    font-weight:600;
    border-bottom:1px solid #CCC;
    border-right:1px solid #CCC;
}
.en_box-figure table tbody tr td {
  text-align: center;
  font-size: 18px;
  padding: 15px 0;
    border-bottom:1px solid #CCC;
    border-right:1px solid #CCC;
}
.t-head01 {
  width: 28%;
}
.t-head02 {
  width: 30%;
}
.t-head03 {
  width: 41.7%;
}
.en_box-pdf {
  margin-top: 100px;
}
.en_box-pdf h2 {
  font-size: 21px;
  color: #006c2e;
  font-weight: normal;
}
@media (max-width:560px) {
  .signature02 ul li {
    font-size: 14px;
  }
  .signature02 ul {
    width: 280px;
  }
  .en_box p {
    font-size: 14px;
  }
  .en_box-top ul li {
    font-size: 16px;
  }
  .en_box-top ul li:nth-child(odd) {
    width: 27.5%;
  }
  .en_box-top ul li:nth-child(even) {
    width: 72.5%;
  }
    
    .en_box-figure table {
        width:200%;
    }
}

.homerecycle {
  max-width: 1080px;
  width: 96%;
  margin: 0 auto;
}
.homerecycle h2 {
  color: #006c2e;
  font-size: 30px;
  font-weight: normal;
}
.homerecycle_flex {
  margin-top: 50px;
}
.homerecycle_flex ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  width: 100%;
}
.home_list-bottom ul li {
  width: 31%;
}
.homerecycle_flex-box {
  width: 48%;
  border: 1px solid #006c2e;
  padding: 0 15px 75px;
  margin-bottom: 40px;
}
.home_list-top {
  text-align: center;
  padding-bottom: 40px;
}
.home_list-img01 {
  width: 82%;
  padding-top: 80px;
}
.home_list-img02 {
  width: 24%;
  padding-top: 60px;
}
.home_list-img03 {
  width: 30%;
  padding-top: 60px;
}
.home_list-img04 {
  padding-top: 40px;
  width: 60%;
}
.home_list-top p {
  font-size: 18px;
  color: #006c2e;
  font-weight: normal;
  text-align: center;
}
.percent_ttl {
  font-size: 18px;
  padding-bottom: 15px;
  text-align: center;
}
.percent {
  font-size: 33px;
  color: #006c2e;
  font-weight: bold;
  border-top: 1px solid #dcdcdc;
  padding-top: 20px;
  text-align: center;
}
.home_list-p {
  text-align: right;
  font-size: 18px;
}
.homerecycle_figure {
  margin-top: 135px;
}
.homerecycle_figure h2 {
  font-size: 30px;
  font-weight: normal;
  color: #006c2e;
  padding-bottom: 35px;
}
.homerecycle_figure02 table tr th {
  font-size: 16px;
  padding: 15px 0;
    border-bottom:1px solid #CCC;
    border-right:1px solid #CCC;
}
.homerecycle_figure02 table tr td {
  font-size: 16px;
  padding: 15px 0;
  text-align: center;
    border-bottom:1px solid #CCC;
    border-right:1px solid #CCC;
}
@media (max-width:960px) {
  .homerecycle_flex-box {
    width: 100%;
    margin: 0 auto 20px;
  }
}
@media (max-width:460px) {
  .percent_ttl {
    font-size: 13px;
  }
  .percent {
    font-size: 28px;
  }
  .home_list-p {
    font-size: 14px;
  }
  .homerecycle h2 {
    font-size: 22px;
  }
  .homerecycle_figure h2 {
    font-size: 22px;
  }
  .homerecycle_figure02 {
    overflow: scroll;
  }
}

.list_certificate {
    width:100%;
    max-width:940px;
    margin:0 auto 100px;
    display:flex;
    flex-wrap:wrap;
    justify-content: space-between;
}


.list_certificate li {
    width:42.5%;
    text-align:center;
    font-size:1.8em;
}


.list_certificate li a {
    display:block;
    width:100%;
    color:#000;
}


.list_certificate li img {
    width:100%;
    padding:0 0 10px;
}


@media all and (max-width:560px) {
.list_certificate li {
    width:100%;
    text-align:center;
} 
    
.list_certificate li:first-child {
    margin:0 0 30px;
}
}



/* 取り扱い品目 */
.item_body {
    width:96%;
    max-width:1080px;
    margin:0 auto;
}


.list_item {
    width:100%;
    margin:0 auto 30px;
    display:flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    font-size:1.6em;
}


.list_item li {
    width:32%;
    padding:1em;
    margin:0 2% 20px 0;
    text-align:center;
    background:#f5f9ea;
    border:1px solid #CCC;
    border-radius:2px;
}


.list_item li:nth-child(even) {
    margin:0 2% 20px 0;
}


.list_item li:nth-child(3n) {
    margin:0 0 20px;
}

.list_item li.x2 {
    width:66%;
    padding:1em;
    margin:0 2% 20px 0;
    text-align:center;
    background:#f5f9ea;
    border:1px solid #CCC;
    border-radius:2px;
}

.list_item li.last_cell {
    width:32%;
    padding:1em;
    margin:0 0 20px 0;
    text-align:center;
    background:#f5f9ea;
    border:1px solid #CCC;
    border-radius:2px;
}


@media all and (max-width:768px) {
.list_item {
    width:100%;
    margin:0 auto 80px;
    display:flex;
    flex-wrap: wrap;
    justify-content: flex-start;
}


.list_item li {
    width:48%;
    padding:1em;
    margin:0 4% 20px 0;
    text-align:center;
    background:#f5f9ea;
    border:1px solid #CCC;
    border-radius:2px;
}
    
    
.list_item li:nth-child(3n) {
    margin:0 4% 20px 0;
} 


.list_item li:nth-child(even) {
    margin:0 0 20px;
}
    
.list_item li.x2 {
    width:48%;
    padding:1em;
    margin:0 0 20px 0;
    text-align:center;
    background:#f5f9ea;
    border:1px solid #CCC;
    border-radius:2px;
}

.list_item li.last_cell {
    width:48%;
    padding:1em;
    margin:0 4% 20px 0;
    text-align:center;
    background:#f5f9ea;
    border:1px solid #CCC;
    border-radius:2px;
}
}


.txt_red {
    color:#f00;
}


.list_order {
    margin:0 0 20px 20px;
    padding:0 0 0 20px;
    font-size:1.6em;
}


.list_order li {
    list-style:disc;
}

.table_wrap {
    width:100%;
    padding:0;
}


.tbl_item {
    width:100%;
    border:none;
    border-top:1px solid #CCC;
    border-left:1px solid #CCC;
    border-collapse: collapse;
}


@media all and (max-width:560px) {
.table_wrap {
    width:100%;
    padding:10px;
    overflow: scroll;
}


.tbl_item {
    width:150%;
    border:none;
    border-top:1px solid #CCC;
    border-left:1px solid #CCC;
    border-collapse: collapse;
}    
}


.tbl_item th, .tbl_item td {
    padding:1em;
    font-size:1.6em;
    border-bottom:1px solid #CCC;
    border-right:1px solid #CCC;
}


.tbl_item th {
    text-align:center;
    background:#2fb383;
    color:#FFF;
    font-weight:600;
}


.tbl_item th.boldColor {
    text-align:center;
    background:#006c2e;
}


.tbl_item tr:nth-child(odd) td {
    background:#f5f9ea;
}


.tbl_item tr:nth-child(even) td {
    background:#fff;
}


.tbl_item.ta-c td,
td.ta-c {
    text-align:center;
}


/* 許認可一覧 */
.certificate_body {
    width:96%;
    max-width:1080px;
    margin:0 auto;
}


.certificate_ttl {
    font-size:1.8em;
    color:#00601e;
    margin:0 0 20px;
    font-weight:500;
}


.h3_certificate {
    font-size:1.6em;
    margin:0 0 10px;
    font-weight:500;
}


.align-right {
    text-align: right;
}


.tbl_certificate {
    width:100%;
    border:none;
    border-top:1px solid #CCC;
    border-left:1px solid #CCC;
    border-collapse: collapse;
}


.tbl_certificate th, .tbl_certificate td {
    padding:1em;
    font-size:1.6em;
    border-bottom:1px solid #CCC;
    border-right:1px solid #CCC;
    text-align:center;
}


.tbl_certificate th {
    background:#f5f5f5;
}


/* sdgs */
.sdgs_body {
    width:96%;
    max-width:1080px;
    margin:0 auto;
}


.sdgs_ttl {
    font-size:2.4em;
    color:#00601e;
    margin:0 0 50px;
    font-weight:500;
}


.icons_sdgs {
    width:100%;
    margin:0 auto 50px;
}


.icons_sdgs img {
    width:100%;
}


.list_sdgs_icons {
    width:100%;
    max-width:650px;
    margin:0 auto 70px;
}


.list_sdgs_icons img {
    width:100%;
}


.h3_sdgs {
    font-size:2.1em;
    text-align:center;
    margin:0 auto 50px;
    font-weight:500;
}


.h4_sdgs {
    font-size:2em;
    color:#00601e;
    margin:0 0 10px;
    font-weight:500;
}


.def_sdgs {
    width:100%;
    margin:0 auto 50px;
}


.def_sdgs dt {
    font-size:1.8em;
    font-weight:500;
    color:#006c2e;
}


.def_sdgs dd {
    font-size:1.6em;
    padding:0 0 30px;
}


.list_activities {
    list-style:none;
    margin:0 auto 50px;
    font-size:1.6em;
}


.list_activities li {
    padding:5px 0 5px 30px;
    position:relative;
}


.list_activities li::before {
    content:"";
    display:block;
    width:0;
    height:0;
    border-left:7px solid #00601e;
    border-top:5px solid transparent;
    border-bottom:5px solid transparent;
    position:absolute;
    top:14px;
    left:10px;
}


/* 契約から処分の流れ */
.flow_body {
    width:96%;
    max-width:1080px;
    margin:0 auto;
}

.block_flow {
    width:100%;
    display:flex;
    flex-wrap:wrap;
    justify-content: space-between;
}


.box_step {
    width:150px;
    padding:0 0 50px;
    position:relative;
    background:transparent;
}


.box_step2 {
    width:150px;
    padding:0 0 50px;
    position:relative;
    background:transparent;
}


.box_step::before {
    content:"";
    display:block;
    width:1px;
    min-height:1px;
    background:#00601e;
    position:absolute;
    left:50%;
    top:0;
    bottom:0;
    z-index:-1;
}

.circle_step {
    width:150px;
    height:150px;
    border-radius: 50%;
    color:#FFF;
    text-align:center;
    font-size:1.8em;
    padding:1.8em 0 0;
}


.circle_step span {
    font-size:2.1em;
    padding:15px 0 0;
    display:block;
    font-weight:bold;
}


.circle_step.step01 {background:#6daa7d;}
.circle_step.step02 {background:#53ad73;}
.circle_step.step03 {background:#259858;}
.circle_step.step04 {background:#1f8048;}
.circle_step.step05 {background:#007118;}
.circle_step.step06 {background:#015809;}


.box_text {
    width:calc(100% - 180px);
}



.box_text h3 {
    font-size:2.1em;
    font-weight:500;
    margin:0 0 15px;
}



.flow_detail {
    display:table;
    width:100%;
}


.flow_img {
    width:18%;
    display:table-cell;
    text-align:center;
    vertical-align: middle;
}


.flow_img img {
    max-width:100px;
}



.flow_txt {
    width:82%;
    display:table-cell;
    text-align:left;
    vertical-align: middle;
    font-size:1.8em;
    padding:0 0 0 10px;
}


@media all and (max-width:560px) {
.box_step {
    width:80px;
    padding:0 0 50px;
    position:relative;
    background:transparent;
}


.box_step::before {
    content:"";
    display:block;
    width:1px;
    min-height:1px;
    background:#00601e;
    position:absolute;
    left:50%;
    top:0;
    bottom:0;
    z-index:-1;
}

.circle_step {
    width:80px;
    height:80px;
    border-radius: 50%;
    color:#FFF;
    text-align:center;
    font-size:1.6em;
    padding:.7em 0 0;
}


.circle_step span {
    font-size:1.8em;
    padding:0 0;
    display:block;
    font-weight:bold;
}
    
.box_text {
    width:calc(100% - 90px);
}
    
.flow_img {
    width:25%;
    display:table-cell;
    text-align:center;
    vertical-align: top;
}
    
.flow_txt {
    width:75%;
    display:table-cell;
    text-align:left;
    vertical-align: middle;
    font-size:1.4em;
    line-height:1.6;
    padding:0 0 50px 10px;
}
}


/* 処理工程 */
.img_process01,
.img_process02 {
    width:100%;
    text-align:center;
    margin:0 auto 80px;
}

.img_process01 img {
    width:100%;
    margin:0 auto;
}

.img_process02 img {
    width:100%;
    max-width:900px;
    margin:0 auto;
}


/* 事業所一覧 */
.location_body {
    width:96%;
    max-width:1080px;
    margin:0 auto;
}


.recycle_ttl {
    font-size:2.4em;
    padding:0 0 15px;
    border-bottom:1px solid #000;
    margin:0 0 15px;
    font-weight:600;
}


.location_ttl {
    font-size:3em;
    color:#00601e;
    margin:0 0 30px;
    font-weight:400;
    line-height:1.6em;
}


.anchor_location {
    width:100%;
    margin:0 auto 100px;
    display:flex;
    flex-wrap: wrap;
    justify-content: space-between;
}


.anchor_location li {
    width:23%;
}


.anchor_location li a {
    display:block;
    width:100%;
    font-size:2em;
    text-align:center;
    padding:1.2em 1em 2em;
    border:1px solid #006c2e;
    color:#006c2e;
    position:relative;
        height: 100%;
}


.anchor_location li a::before {
    display:block;
    content:"";
    border-bottom:1px solid #006c2e;
    border-left:1px solid #006c2e;
    width:13px;
    height:13px;
    position:absolute;
    bottom:20px;
    left:50%;
    transform:translateX(-50%) rotate(-45deg);
}


@media all and (max-width:768px) {
.location_ttl {
    font-size:2.1em;
    color:#00601e;
    margin:0 0 10px;
    font-weight:500;
}
    
    
.anchor_location {
    width:100%;
    margin:0 auto 50px;
    display:flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
    
.anchor_location li {
    width:49%;
    margin:0 0 10px;
}
    
.anchor_location li a {
    display:block;
    width:100%;
    font-size:1.6em;
    text-align:center;
    padding:1.2em .3em 2em;
    border:1px solid #006c2e;
    color:#006c2e;
    position:relative;
    
}
}



.block_location {
    width:100%;
    margin:0 auto 150px;
    display:flex;
    flex-wrap: wrap;
    justify-content: space-between;
}


.img_office {
    width:48%;
    margin:0;
}


.img_office img {
    width:100%;
    padding:0 0 20px;
}


.btnArea {
    width:100%;
    text-align:right;
}


.info_office {
    width:48%;
}


.h4_location {
    text-align:center;
    color:#FFF;
    background:#006c2e;
    font-size:2em;
    font-weight:600;
    padding:.5em;
    margin:0 0 20px;
}


@media all and (max-width:768px) {
.img_office {
    width:100%;
    margin:0 0 20px;
}
    
.info_office {
    width:100%;
}
}


/* 1カラムギャラリー */
.block_1col_img img {
    width:100%;
}


/* 2カラムギャラリー */
.block_2col_img {
    width:100%;
    display:flex;
    margin:0 auto 15px;
    flex-wrap: wrap;
    justify-content: space-between;
}


.block_2col_img div {
    width:49%;
    margin:0 0 15px;
}


.block_2col_img div img {
    width:100%;
    vertical-align: bottom;
}


@media all and (max-width:560px) {
.block_2col_img div {
    width:100%;
    margin:0 0 10px;
}   
}


.block_2col_img2 {
    width:100%;
    display:flex;
    margin:0 auto 15px;
    flex-wrap: wrap;
    justify-content: space-between;
}


.block_2col_img2 div {
    width:40%;
    margin:0 0 15px;
}

@media all and (min-width:561px) {
	.block_2col_img2.left > div:first-child {
	    width:65%;
	}
	.block_2col_img2.left > div:last-child {
	    width:30%;
	}
}


.block_2col_img2 div img {
    width:100%;
    vertical-align: bottom;
}


@media all and (max-width:560px) {
.block_2col_img2 div {
    width:100%;
    margin:0 0 20px;
}   
}


/* サイトマップ */
.sitemap_body {
  max-width: 1080px;
  width: 96%;
  margin: 0 auto;
}


.flex_sitemap {
    width:100%;
    display:flex;
    flex-wrap:wrap;
    justify-content: space-between;
}


.flex_sitemap div {
    width:50%;
    margin:0;
}


@media all and (max-width:560px) {
.flex_sitemap div {
    width:100%;
    margin:0 0 30px;
}    
}


.sitemap_body h3 {
    font-size:3em;
    color:#00601e;
    margin:0 0 30px;
    font-weight:400;
}


.sitemap_body ul {
    margin:0 0 70px;
}


.sitemap_body ul li {
    font-size:1.6em;
    padding:.5em 0 .5em 30px;
    position:relative;
}


.sitemap_body ul li::before {
    display:block;
    content:"";
    width:0;
    height:0;
    border-left:7px solid #00601e;
    border-top:7px solid transparent;
    border-bottom:7px solid transparent;
    position:absolute;
    left:10px;
    top:15px;
}


.sitemap_body ul li a {
    color:#000;
}



/* 20221220追加 */
.container_wlb {
    width:96%;
    max-width:1080px;
    margin:0 auto;
    text-align:center;  
}


.container_wlb .news_btn {
    background:#FFF;
    margin: 20px auto 100px;
    width: 80%;
    display:flex;
    flex-wrap: wrap;
    justify-content: space-between;
}


.container_wlb .news_btn a {
    display:block;
    width:40%;
    background: linear-gradient(#2fb383, #18a86b);
}


@media all and (max-width:560px) {
.container_wlb .news_btn a {
    display:block;
    width:45%;
    background: linear-gradient(#2fb383, #18a86b);
}    
}