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

html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
    margin:0;
    padding:0;
    border:0;
    outline:0;
    font-size:100%;
    vertical-align:baseline;
    background:transparent;
}
body {
    line-height:1;
}
article,aside,details,figcaption,figure,
footer,header,hgroup,menu,nav,section {
    display:block;
}
nav ul {
    list-style:none;
}
blockquote, q {
    quotes:none;
}
blockquote:before, blockquote:after,
q:before, q:after {
    content:'';
    content:none;
}
a {
    margin:0;
    padding:0;
    font-size:100%;
    vertical-align:baseline;
    background:transparent;
}
table {
    border-collapse:collapse;
    border-spacing:0;
}
hr {
    display:block;
    height:1px;
    border:0;  
    border-top:1px solid #cccccc;
    margin:1em 0;
    padding:0;
}
input, select {
    vertical-align:middle;
}

/* Base Styles
–––––––––––––––––––––––––––––––––––––––––––––––––– */
*, *:before, *:after {
    box-sizing: border-box;
}
html {
    font-size: 62.5%;
}
body {
  font-size: 1.6rem;
  line-height: 1.6;
  font-weight: 400;
  font-family: 'Noto Sans JP', "游ゴシック Medium",YuGothic,YuGothicM,"Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",メイリオ,Meiryo,sans-serif;
  color: #333;
  -webkit-text-size-adjust: 100%;
}
li {
    list-style-type: none;
}
a {
    text-decoration: none;
}
iframe,img,object,svg,video {
    display:block;
    vertical-align:middle;
    max-width:100%;
}
sub {
    font-size: 80%;
    font-weight: 500;
}

/* Grid
–––––––––––––––––––––––––––––––––––––––––––––––––– */
#contents-area {
    /*background-color: #FFF;*/
    overflow: hidden;
}
.container {
    position: relative;
    /*width: 100%;*/
    max-width: 1080px;
    margin: 0 auto;
    padding: 0 20px;
    box-sizing: border-box;
}
@media screen and (max-width: 599px) {
  .container {
    width: 100%;
    padding: 0 20px;
}
}
section {
    padding: 0;
    margin: 60px 0;
}
@media screen and (max-width:599px) {
    section {
    margin: 40px 0 50px;
}
}

.full {
    position:relative;
	margin: 0 calc(50% - 50vw);
	padding: 60px calc(50vw - 50%) 60px;
    overflow:hidden;
    background: #E6EAEF;
    /*width: 100vw;*/
}

.text-wrap {
    width: 80%;
    margin: 0 auto;
}
@media screen and (max-width:599px) {
    .text-wrap {
        width: 100%;}    
}

/* Typography
–––––––––––––––––––––––––––––––––––––––––––––––––– */
h1, h2, h3, h4, h5, h6 {
  margin-top: 0; margin-bottom: 2rem; font-weight: 500;
}
h1 { font-size: 3.4rem; line-height: 1.4; }
h2 { font-size: 2.8rem; line-height: 1.4; }
h3 { font-size: 2.6rem; line-height: 1.4; }
h4 { font-size: 2.2rem; line-height: 1.5; }
h5 { font-size: 2.0rem; line-height: 1.5; }
h6 { font-size: 1.8rem; line-height: 1.5; }

@media screen and (max-width:599px) {
  h1 { font-size: 3rem; }
  h2 { font-size: 2.6rem; }
  h3 { font-size: 2.4rem; }
  h4 { font-size: 2.0rem; }
  h5 { font-size: 1.8rem; }
  h6 { font-size: 1.6rem; }
}

p {
    line-height: 1.8;
    margin-top: 0;
    letter-spacing: 0.1rem;
}
p.min {
    font-family: 'Noto Serf JP', "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", "Times New Roman", serif;
    font-weight: 500;
}
@media screen and (max-width:599px) {
    p {}
}

/* Links
–––––––––––––––––––––––––––––––––––––––––––––––––– */
a:link {
    /*color: #0000ee;*/
    transition-property: opacity;
    -webkit-transition-property: opacity;
    transition-duration: .5s;
    -webkit-transition-duration: .5s;}
a:hover {
    opacity: .8;}
p a {
    text-decoration: underline; }

/* Buttons
–––––––––––––––––––––––––––––––––––––––––––––––––– */
.btn-arrow {
    padding: 1rem 0;
    color: #009944;
    text-align: center;
    text-decoration: none;
    background:  #FFF;
    border: 1px solid #009944;
    box-sizing: border-box;
    transition-property: opacity;
    -webkit-transition-property: opacity;
    transition-duration: .5s;
    -webkit-transition-duration: .5s;    
}
.btn-arrow::after {
    content: "";
    display: inline-block;
    width: 10px;
    height: 10px;
    margin: 0 5px;
    border-top: 2px solid #009944;
    border-right: 2px solid #009944;
    transform: rotate(45deg);
}
.btn-arrow:hover {
    opacity: .8;
}
.layoutwrap-top1 .item .btn-arrow span.pc {display: inline;}
@media screen and (max-width:599px) {
     .layoutwrap-top1 .item .btn-arrow {letter-spacing: normal;}
   /*.layoutwrap-top1 .item .btn-arrow span.pc {display: none;}*/
}
/* Lists
–––––––––––––––––––––––––––––––––––––––––––––––––– */
ul {
    list-style: circle inside; }
ol {
    list-style: decimal inside; }
ol, ul {
    padding-left: 0;
    margin-top: 0; }
ul ul,
ul ol,
ol ol,
ol ul {
    margin: 1.5rem 0 1.5rem 3rem;
    font-size: 90%; }
li {
    margin-bottom: 1rem; }

/* Misc
–––––––––––––––––––––––––––––––––––––––––––––––––– */
hr {
    margin-top: 3rem;
    margin-bottom: 3.5rem;
    border-width: 0;
    border-top: 1px solid #E1E1E1; }


/* Clearing
–––––––––––––––––––––––––––––––––––––––––––––––––– */
.container:after
 {
    content: "";
    display: table;
    clear: both; }
.key-visual-container:after
 {
    content: "";
    display: table;
    clear: both; }

/* Header Footer
–––––––––––––––––––––––––––––––––––––––––––––––––– */
header{
    padding: 40px 0 12px;
    background-color: #FFF;
}
@media screen and (max-width:599px) {
    header{
    margin: 0;
}
}
.header {
	display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    padding: 8px 0;
}
@media screen and (max-width:889px) {
   .header {
	display: none;
}
}

.logo {width: 96px; margin: 0 0 0 20px; padding: 0;}
.logo img {width: 100%; height: auto;}

.logo-sp  {display: none;}

@media screen and (max-width:889px) {
    .logo {display: none;}
    .logo-sp  { display: inline-block; }
    .logo-sp img {max-width: 100%; height: 40px;margin: 9px 0 0 20px; padding: 0;}
}

.footer {width: 100%; text-align: center; background: #444444; color: #FFF; padding: 30px 0; font-weight: 400;}
.footer .footer-title {font-weight: 500; padding: 0; margin: 0 0 8px 0; letter-spacing: 0.2rem;}
.footer .footer-add {font-size: 1.6rem;}
.footer .footer-copy {font-size: 1.3rem; letter-spacing: 0.2rem;}
.footer .footer-text {font-size: 1.6rem; margin: 30px 0 10px 0; font-weight: 500;}
.footer a {color: #FFF;}
@media screen and (max-width:599px) {
    .footer .footer-text {font-size: 1.5rem; margin: 0 0 10px 0; line-height: 1.4;}
}

/* Navigation
–––––––––––––––––––––––––––––––––––––––––––––––––– */
nav.g-nav {
  justify-content: flex-end;
  flex-wrap: wrap;
  width: calc(100% - 120px); /*logo幅*/
}
nav.g-nav ul {
    list-style: none;
    margin: 0;
    display: flex;
    justify-content: flex-end;
    font-size: 1.4rem;
}
nav.g-nav ul li {
    margin: 0;
    padding: 0;
    width: 11%;
}
nav.g-nav li + li {
  border-left: 1px solid #aaaaaa;
}
nav.g-nav ul li a {
    color: #333;
    text-decoration: none;
    display: flex;
    flex-direction: column;
    text-align: center;
}
.footer .footer-nav {
    display: flex;
    margin: 0 auto;
    padding: 0;
    width: 70%;
    font-size: 1.3rem;
}
.footer .footer-nav li {
    list-style-type: none;
    flex-grow: 1;
    text-align: center;
    margin: 0;
    padding: 0;
}
.footer .footer-nav li + li {
  border-left: 1px solid #FFF;
}
.footer .footer-nav li a {
    display: block;
    color:#FFF;
    text-decoration: none;
}
@media screen and (max-width:768px) {
.footer .footer-nav { display: none;}
}

/* Parts Styles
–––––––––––––––––––––––––––––––––––––––––––––––––– */
.bg-gray {background: #E6EAEF;}
.center {text-align: center;}
@media screen and (max-width:599px) {
    .center-sp {text-align: left;}
}
.item-center {display: block; margin: 0 auto;}
.right {text-align: right;}
.txt-bold {font-weight: 500;}
.txt-red {color: #DF002C;}
.txt-blk {color: #333;}
.txt-mark {background: linear-gradient(transparent 60%, #ffff66 60%);}
.mt10 {margin-top: 10px;}
.mb10 {margin-bottom: 10px;}
.mt20 {margin-top: 20px;}
.mb20 {margin-bottom: 20px;}
.mt30 {margin-top: 30px;}
.mb30 {margin-bottom: 30px;}
.mt40 {margin-top: 40px;}
.mb40 {margin-bottom: 40px;}
.mt50 {margin-top: 50px;}
.mb50 {margin-bottom: 50px;}
.mt60 {margin-top: 60px;}
.mb60 {margin-bottom: 60px;}
.pt10 {padding-top: 10px;}
.pb10 {padding-bottom: 10px;}
.pt20 {padding-top: 20px;}
.pb20 {padding-bottom: 20px;}
.pt30 {padding-top: 30px;}
.pb30 {padding-bottom: 30px;}
.pt40 {padding-top: 40px;}
.pb40 {padding-bottom: 40px;}
.pt50 {padding-top: 50px;}
.pb50 {padding-bottom: 50px;}
.pt60 {padding-top: 60px;}
.pb60 {padding-bottom: 60px;}
.p-just p {text-align: justify;}
.p-indent p {text-indent:1em; margin-bottom: 0;}
.p-indent p:last-child {margin-bottom: 10px;}
.cap {font-size: 86%; line-height: 1.5;}
.ss {font-size: 74%;}
.comment {line-height: 1.5;}
.pdf::before{content: "";
 display: inline-block;
 width: 16px;
 height: 16px;
 background-image:url("../images/pdf.svg");
 background-size: contain;
 vertical-align: middle;
 margin-right: 3px;
}
.pc {display: block;}
.tb {display: none;}
.sp{display: none;}
.hd {
  position: absolute;
  top: -9999px;
  left: -9999px;
}
@media screen and (max-width:768px) {
    .tb {display: block;}
}
@media screen and (max-width:599px) {
    .sp{display: block;}
    .pc {display: none;}
}

.map iframe {height: 500px;}
@media screen and (max-width:599px) {
    .map iframe {height: 300px;}
}

/*　H Style
–––––––––––––––––––––––––––––––––––––––––––––––––– */
#pagetitle-area {
    height: 220px;
    width: 100%;
    /*background-color: #333;*/
    background-repeat:no-repeat;
    background-position:10% center;
    background-size:cover;
    text-align:center;
}
#pagetitle-area.hitoism {
    background-image:url(../images/hitoism_bg.jpg);
}
#pagetitle-area.kankyoism {
    background-image:url(../images/kankyoism_bg.jpg);
}
#pagetitle-area.tsukuruism {
    background-image:url(../images/tsukuruism_bg.jpg);
}
#pagetitle-area.company {
    background-image:url(../images/company_bg.jpg);
}
#pagetitle-area.recruit {
    background-image:url(../images/recruit_bg.jpg);
}
#pagetitle-area h1.content-title {
    text-shadow: 0 0 6px #BBB;
}
#pagetitle-area.hitoism h1.content-title {
    color: #FFF;
}
#pagetitle-area.kankyoism h1.content-title {
    color: #FFF;
}
#pagetitle-area.tsukuruism h1.content-title {
    color: #FFF;
}
#pagetitle-area.company h1.content-title {
    color: #FFF;
}
#pagetitle-area h1.content-title {line-height: 220px;}

@media screen and (max-width:599px) {
    #pagetitle-area {
    margin-top: 0;
    height: 140px;
}
    #pagetitle-area h1.content-title {line-height: 140px;}
}

h1.content-title {letter-spacing: 0.5rem; text-align: center; margin: 0;}

h2.content-title {letter-spacing: 0.3rem; margin: 20px 0 40px; }
h2.content-title {position: relative; display: block; text-align: center;}
h2.content-title:before {content: ''; position: absolute; left: 50%; bottom: -15px; display: inline-block;
  width: 40px; height: 2px; -webkit-transform: translateX(-50%); transform: translateX(-50%); background-color: #009944; /*border-radius: 2px;*/}
h3.content-title {letter-spacing: 0.1rem; margin: 20px 0 30px;}
h4.content-title {letter-spacing: 0.1rem; margin: 20px 0 30px;}
h5.content-title {letter-spacing: 0.1rem; margin: 20px 0 30px;}

.top h2.content-title {font-size: 2.4rem; text-align: center; padding: 0; border: none; margin: 0;}

/*　Table Style
–––––––––––––––––––––––––––––––––––––––––––––––––– */
table td.center {
	text-align: center;
}
table.nomal-table {
	border-collapse: collapse;
	border-spacing: 0;
	border: solid 1px #ccc;
	width: 100%;
}
table.nomal-table td,
table.nomal-table th {
	padding: 3px;
	font-weight: 400;
}
table.nomal-table td {
	border: solid 1px #ccc;
}
table.nomal-table th {
	background: #444444;
	border: solid 1px #fff;
	color: #fff;
}

@media screen and (max-width:599px){
    table.nomal-table {
	margin: 0 auto;
	width: 96%;
}
    table.nomal-table td,
    table.nomal-table th {
	padding: 5px;
}
}

/*　Page top
–––––––––––––––––––––––––––––––––––––––––––––––––– */
#pageTop {
  position: fixed;
  bottom: 20px;
  right: 20px;
}
#pageTop a {
  display: block;
  z-index: 99999;
  padding: 8px 0 0 0px;
  border-radius: 30px;
  width: 50px;
  height: 50px;
  background-color: #BBBBBB;
  color: #fff;
  text-decoration: none;
  text-align: center;
}
#pageTop a:hover {
  text-decoration: none;
  opacity: 0.7;
}
.arrow-top {
  display: inline-block;
  width: 20px;
  height: 20px;
  margin: 11px;
  border-top: 4px solid #FFF;
  border-left: 4px solid #FFF;
  transform: rotate(45deg);
}
/*　Top Slider
–––––––––––––––––––––––––––––––––––––––––––––––––– */
.key-visual-container {
    position: relative;
    width: 100%;
    margin: 0 auto;
    padding: 0;
    box-sizing: border-box;
}
.key-visual {
    padding: 0;
    margin: 0;
}
/*.key-visual {
    position:relative;
	margin: 0 calc(50% - 50vw);
	padding: 0 calc(50vw - 50%) 0;
    overflow:hidden;
    background: #E6EAEF;
}
.swiper-button-prev,
.swiper-container-rtl .swiper-button-next {
  background-image: url("../images/l-arrow.svg");
}
.swiper-button-next,
.swiper-container-rtl .swiper-button-prev {
  background-image: url("../images/r-arrow.svg");
}*/
.swiper-pagination-bullet {
  background: #EDEDED;
  opacity: .4;
}
.swiper-pagination-bullet-active {
  background: #EDEDED;
    opacity: 1;
}
@keyframes zoomUp {
  0% {
    transform: scale(1);
  }
  100% {
    transform: scale(1.15);
  }
}
.swiper-slide-active .slide-img,
.swiper-slide-duplicate-active .slide-img,
.swiper-slide-prev .slide-img{
  animation: zoomUp 10s linear 0s 1 normal both;  
}

.slide-img img {width: 100%; height: 380px; object-fit: cover;}
.slide-img img.sp {display: none;}

@media screen and  (max-width: 599px) {
    .key-visual {padding: 0; margin: 0;}
    .top-slider {width: 100%;}
    .slide-img img {width: 100%; height: auto; object-fit: contain;}
    .slide-img img.sp {display: block;}
    .slide-img img.pc {display: none;}
}

.swiper-cover {position: absolute; z-index: 1000; left: 0; right: 0; max-width: 1080px; margin: 0 auto;}
.swiper-cover img {position: relative; width: auto; height: 300px; top: 35px; left: 5%;} 
@media screen and  (max-width: 599px) {
    .swiper-cover {width: 100%; margin: 0;}
    .swiper-cover img {width: 55%; height: auto; top: 40px; left: 10%;}
}
.ofi-img {
  object-fit: cover;
  object-position: bottom;
  font-family: 'object-fit: cover; object-position: bottom;';
}
/*　Page In
–––––––––––––––––––––––––––––––––––––––––––––––––– */
.page-in {

  opacity: 0;
  transition-duration: 2600ms;
  transition-property: opacity;
}

/*　Scroll Fade In
–––––––––––––––––––––––––––––––––––––––––––––––––– */
.fade-in {
  opacity: 0;
  transition-duration: 1000ms;
  transition-property: opacity, transform;
}
.fade-in-up {
  transform: translate(0, 50px);
}
.fade-in-down {
  transform: translate(0, -50px);
}
.fade-in-left {
  transform: translate(-50px, 0);
}
.fade-in-right {
  transform: translate(50px, 0);
}
.scroll-in {
  opacity: 1;
  transform: translate(0, 0);
}

/*　layoutwrap-top1
–––––––––––––––––––––––––––––––––––––––––––––––––– */
.layoutwrap-top1 {
    width: 90%;
    margin: 30px auto;
    display: flex;
    justify-content: space-between;
}

.layoutwrap-top1 .item {
    width: 30%;
    text-align: center;
}
.layoutwrap-top1 .item img {
    width: 80%;
    display: inline-block;
    margin: 20px 0;
}
.layoutwrap-top1 .item p {
    width: 100%;
    padding: 10px 0;
}

@media screen and (max-width:1024px) {
}
@media screen and (max-width:599px){
    .layoutwrap-top1 {
        width: 100%;
        flex-direction: column;
}
    .layoutwrap-top1 .item {
        width: 100%;
        background: #E3F4E3;
        border-radius: 16px;
        padding: 15px;
        margin: 10px 0;
}
    .layoutwrap-top1 .item a{
        width: 100%;
        display: flex;
        justify-content: center;
        align-items: center;
}
    .layoutwrap-top1 .item img {
        width: 36%;
        margin: 0 10px 0 0;
}
    .layoutwrap-top1 .item p {
        font-size: 1.4rem;
}
}

/*　layoutwrap-top2
–––––––––––––––––––––––––––––––––––––––––––––––––– */
.layoutwrap-top2 {
    width: 90%;
    margin: 0 auto;
    padding: 30px 0;
    display: flex;
    justify-content: space-between;
    align-items: center;
    border-top: 1px #333 solid;
}
.layoutwrap-top2 .box1 {
    flex-basis: 35%;
    padding: 0 30px;
    border-right: 1px #333 solid;
}
.layoutwrap-top2 .box1 img{
    width: 90px;
    margin: 0 auto;
}
.layoutwrap-top2 .box2 {
    flex-basis: 65%;
    padding: 10px 20px;
}
.layoutwrap-top2 .box2 h4 {
    margin-left: 20px;
}
.layoutwrap-top-energy {
    display: flex;
    flex-wrap: wrap;
}
.layoutwrap-top-energy .item1 {
    width: 35%;
    flex-grow: 0;
    margin: 0 0 20px 20px;
}
.layoutwrap-top-energy .item2 {
    padding-left: 20px;
}
.layoutwrap-top-energy .item2 .top-energy-text {
    color: #FFF;
    font-size: 1.6rem;
    padding: 5px 14px; 
    display: inline-block;
}
.layoutwrap-top-energy .item2 .top-energy-text span span {
    color: #333;
    background: #FFF;
    margin: 2px;
    font-weight: 700;
    font-size: 2rem;
}
.layoutwrap-top-energy .item2 .top-energy-text.bg01 {
    background: #EC6F00;
}
.layoutwrap-top-energy .item2 .top-energy-text.bg02 {
    background: #E3007F;
}
.layoutwrap-top-energy .item2 .comment {
    margin: 3px 0 10px 0;
    line-height: 1.4;
}
@media screen and (max-width:599px){
    .layoutwrap-top2 {
        width: 90%;
        flex-direction: column;
        border-top: 1px #333 solid;
}
    .layoutwrap-top2 .box1 {
        padding: 0;
        border-bottom: 1px #333 solid;
        border-right: none;
        padding-bottom: 20px;
}
    .layoutwrap-top2 .box2 {
        padding: 30px 0 0 0;
        border-left: none;
}
    .layoutwrap-top2 .box2 h4 {
    margin-left: 0;
}
    .layoutwrap-top-energy {
        flex-direction: column;
}
    .layoutwrap-top-energy .item1 {
        width: 100%;
        margin: 0 0 20px 0;
}
    .layoutwrap-top-energy .item2 {
        width: 100%;
        text-align: center;
        padding-left: 0;
}
}

/*　img-layoutwrap
–––––––––––––––––––––––––––––––––––––––––––––––––– */
.img-layoutwrap {
    width: 90%;
    margin: 30px auto 40px;
    display: flex;
}
.img-layoutwrap .item {
    flex: 1;
    margin: 8px;
}
@media screen and (max-width:599px){
    .img-layoutwrap {
    width: 90%;
    flex-direction: column;
}
}

/*　img-layoutwrap-2
–––––––––––––––––––––––––––––––––––––––––––––––––– */
.img-layoutwrap-2 {
    width: 70%;
    margin: 30px auto 40px;
    display: flex;
}
.img-layoutwrap-2 .box1 {
    margin: 8px;
}
.img-layoutwrap-2 .box2 {
    flex-basis: 330px;
    margin: 8px;
}
.img-layoutwrap-2 .box2 .item {
    text-align: center;
}
.img-layoutwrap-2 .box2 img {
    width: 100%;
}

@media screen and (max-width:599px){
    .img-layoutwrap-2 {
        width: 90%;
        flex-direction: column;
}
    .img-layoutwrap-2 .box2 {
        display: flex;
        flex-direction: row;
        flex-basis: auto;
}
    .img-layoutwrap-2 .box2 .item:first-child{
        margin-right: 8px;
}
    .img-layoutwrap-2 .box2 .item:last-child{
        margin-left: 8px;
}
}


/*　layoutwrap-sdgs
–––––––––––––––––––––––––––––––––––––––––––––––––– */
.sdgs {
    background: #FFF;
    width: 80%;
    margin: 0 auto;
    padding: 40px 30px 30px;
    border-radius: 18px;
    box-sizing: border-box;
}
.s-logo-box {
    margin: 0 auto 20px;
}
.s-logo-box img{
    margin: 0 auto;
}
.layoutwrap-sdgs {
    display: flex;
    justify-content: space-around;
    flex-wrap: wrap;
}
.layoutwrap-sdgs .box {
    margin: 20px 30px;
    width: 300px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;  
}
.layoutwrap-sdgs .box div + div{
    margin-top: 10px;
}
.layoutwrap-sdgs .box .sdgs-icon img {
    width: 80px;
    height: auto;
    display: inline-block;
    margin-top: 15px;
}
.layoutwrap-sdgs .box .sdgs-icon img + img {
    margin-left: 8px;
}
.layoutwrap-sdgs .box div .sdgs-icon {
    text-align: center;
}

@media screen and (max-width:599px) {
    .sdgs {
        width: 95%;
        padding: 40px 10px 30px;
}
    .LR-layoutwrap-sdgs {
        flex-direction: column;
        margin: 0;
}
    .LR-layoutwrap-sdgs .box {
        width: 100%;
        margin: 20px 0;
}
    .LR-layoutwrap-sdgs .box div:first-child {
        height: auto;
}
    .layoutwrap-sdgs .box div img {
    width: 60px;
    height: auto;
}
}

/*　layoutwrap-kankyo1
–––––––––––––––––––––––––––––––––––––––––––––––––– */
.layoutwrap-kankyo1 {
    font-size: 1.8rem;
    font-weight: 500;
    width: 80%;
    margin: 30px auto 40px;
    padding: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    border-top: 1px #009944 solid;
    border-bottom: 1px #009944 solid;
}
.layoutwrap-kankyo1 .box1 {
    margin: 0 20px;
}
.layoutwrap-kankyo1 .box2 {
    flex: 1;
    margin: 0 0 0 10px;
}
.layoutwrap-kankyo1 .box2 ul{
    margin: 0;
}
.layoutwrap-kankyo1 .box2 li{
    padding: 0 0 5px 10px;
    margin: 0;
    border-bottom: 1px #009944 solid;
}
.layoutwrap-kankyo1 .box2 li span {
    color: #009944;
    font-size: 2.4rem;
    margin-right: 1rem;
}
.layoutwrap-kankyo1 .box2 li:last-child{
    border-bottom: 0;
}
@media screen and (max-width:599px){
    .layoutwrap-kankyo1 {
    flex-direction: column;
        width: 100%;
        padding: 20px 0 10px;
}
    .layoutwrap-kankyo1 .box2 {
    margin: 0 10px;
}
}
.circle {
  color: #009944;
  border-radius: 50%;
  width: 130px;
  height: 130px;
  text-align: center;
  line-height: 130px;
  border: 1px #009944 solid;
}

/*　layoutwrap-kankyo2
–––––––––––––––––––––––––––––––––––––––––––––––––– */
.layoutwrap-kankyo2 {
    width: 60%;
    margin: 0 auto 40px;
    padding: 0;
    border-bottom: 1px #009944 solid;
}
.layoutwrap-kankyo2 dl {
    display: flex;
    border-top: 1px #009944 solid;
    margin: 0;
    padding: 0;
}
.layoutwrap-kankyo2 dt {
    flex-basis: 20%;
    margin: 0;
    padding:10px;
}
.layoutwrap-kankyo2 dd {
    margin: 0;
    padding:10px;
}
.layoutwrap-kankyo2 dd.item1 {
    flex-basis: 20%;
    padding-right: 10px;
    padding-left: 10px;
    border-left: 1px #009944 solid;
    border-right: 1px #009944 solid;
}
.layoutwrap-kankyo2 dd.item2 {
    flex-basis: 60%;
    padding-right: 0px;
    padding-left: 10px;
}

@media screen and (max-width:599px){
    .layoutwrap-kankyo2 {
        width: 90%;
        margin: 0 auto 0;
        padding: 0;
        border: 0;
}
    .layoutwrap-kankyo2 dl {
    display: flex;
    flex-direction: column;
}
    .layoutwrap-kankyo2 dt {
    color: #FFF;
    background: #009944;   
    margin: 0;
    padding: 6px 10px;
}
    .layoutwrap-kankyo2 dd {
    margin: 5px 0 0 0;
    padding: 0;
    border:0;
}
    .layoutwrap-kankyo2 dd.item1 {
    border:0;
}
    .layoutwrap-kankyo2 dd.item2 {
    margin: 0 0 20px 0;
}
}

/*　layoutwrap-tsukuru1
–––––––––––––––––––––––––––––––––––––––––––––––––– */
.layoutwrap-tsukuru1 h5 {
    font-size: 1.6rem;
    background: #D8E698;
    padding: 5px;
    text-align: center;
}

.layoutwrap-tsukuru1 {
    width: 90%;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
 
}
.layoutwrap-tsukuru1 .box{
     flex-basis: 48%;
    padding: 15px;
 
}
@media screen and (max-width:599px){
    .layoutwrap-tsukuru1 {
    width: 100%;
    margin: 0 auto;
    flex-direction: column;
 
}
}

/*　layoutwrap-tsukuru2
–––––––––––––––––––––––––––––––––––––––––––––––––– */
.layoutwrap-tsukuru2 {
    width: 100%;
    display: flex;
    justify-content: space-between;
    margin-bottom: 10px; 
}
.layoutwrap-tsukuru2 .box{
    padding: 0;
 }
.layoutwrap-tsukuru2 .box p {
    font-size: 1.4rem;
}


/*　Underline Layout
–––––––––––––––––––––––––––––––––––––––––––––––––– */
.underline-layout {
    width: 80%;
    margin: 0 auto;
    padding: 0 30px 30px;
}

.underline-layout dl {
  width: 100%;
box-sizing: border-box;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
 background: #FFFFFF;
}

.underline-layout dt {
  margin: 0;
  padding: 20px 30px;
  flex-basis: 25%;
  border-bottom: 2px solid #009944;
}

.underline-layout dd {
  margin: 0;
  padding: 20px 30px;
  flex-basis: 75%;
  border-bottom: 1px solid #6f6f6f;
}

@media screen and (max-width:599px) {
    .underline-layout {
        width: 100%;
        padding: 0;
}
    .underline-layout dl {
        flex-direction: column;
        margin-bottom: 20px;
}
    .underline-layout dt {
        width: 100%;
        color: #FFF;
        padding: 5px 15px;
        background: #009944;
        border-bottom: none;
}    
    .underline-layout dd {
        width: 100%;
        padding: 10px 15px;
        border-bottom: none;
} 
}

/*　Underline Layout Recruit
–––––––––––––––––––––––––––––––––––––––––––––––––– */
.underline-layout-recruit {
    width: 80%;
    margin: 0 auto;
    padding: 0 30px;
}
.underline-layout-recruit dl {
  width: 100%;
box-sizing: border-box;
  margin: 0 auto;
  display: flex;
  border-top: 1px solid #009944;    
}
.underline-layout-recruit dl:last-child {
  border-bottom: 1px solid #009944;    
}
.underline-layout-recruit dt {
  margin: 0;
  padding: 20px;
  flex-basis: 25%;
}
.underline-layout-recruit dd {
  margin: 0;
  padding:0;
    width: 100%;
}
.underline-layout-recruit dd dl{
    border-top: none;
    display: flex;
    justify-content: space-between;
    border-bottom: 1px solid #009944;
    margin: 0;
    padding: 0;
}  
.underline-layout-recruit dd dl:last-child {
 border-bottom: none;
}

.underline-layout-recruit dd dl dt {
  margin: 0;
  padding: 15px;
 flex-basis: 35%;
}
.underline-layout-recruit dd dl dt::before {
	font-weight: 700;
	content: "●";
    color: #009944;
}
.underline-layout-recruit dd dl dd {
  margin: 0;
  padding: 15px;
 flex-basis: 65%;
}

@media screen and (max-width:599px) {
    .underline-layout-recruit {
        width: 100%;
        padding: 0;
}
    .underline-layout-recruit dl {
        flex-direction: column;
        margin-bottom: 20px;
}
    .underline-layout-recruit dt {
        width: 100%;
        color: #FFF;
        background: #009944;   
        margin: 0;
        padding: 6px 10px;
}    
    .underline-layout-recruit dd {
        width: 100%;
        padding: 0;
        border-bottom: none;  
}
    .underline-layout-recruit dd dl dt {
        padding: 10px 5px 0;
        color: #333;
        font-weight: 500;
        background: none;
        border-top: none;
}
    .underline-layout-recruit dd dl dd {
        padding: 0px 5px 10px;
        margin-left: 1em;
        color: #333;
        background: none;
        border-bottom: none;
}
}

/*　Chenge Color
–––––––––––––––––––––––––––––––––––––––––––––––––– */
a:link {color: #009944;}
#g-nav {border-bottom-color:#777777;}
.footer {background-color: #444444;}


/*　Unique Css
–––––––––––––––––––––––––––––––––––––––––––––––––– */
img.img-w50 {width: 50%; margin: 0 auto;}
img.img-w70 {width: 70%; margin: 0 auto;}
@media screen and (max-width:599px){
    img.img-w50 {width: 100%;}
    img.img-w70 {width: 100%;}
}
.top h2 {text-align: center; margin: 30px 0;}
.message {font-size: 2rem;}
.sdgs h5 {color: #FFF; background: #589135; padding: 7px; text-align: center;}
.sdgs h6 {border-bottom: 1px #333 solid; text-align: center;}
.arrow{padding-left:1.5em; text-indent:-0.6em; line-height: 1.4;}
.arrow-color { color: #009944; margin: 0px;}

/*　250311追加
–––––––––––––––––––––––––––––––––––––––––––––––––– */
.securitytext {
margin-inline: calc(50% - 50vw);
padding-inline:20px;
width: 100vw;
}
