@charset "utf-8";

/* ↓↓↓ #diversity ↓↓↓ */

#diversity .indexlead {
  padding: 45px 0 55px 0;
  font-size: 1.3rem;
  line-height: 2;
  text-align: justify;
  text-justify: inter-ideograph;
}

@media screen and (max-width: 750px) {
  #diversity .indexlead {
    padding: 30px 0 40px 0;
    line-height: 1.8;
  }
}

#diversity .mainbox{
  width: 100%;
  margin-top: 45px;
}

@media screen and (max-width: 750px) {
  #diversity  .mainbox {
    width: 100vw;
    margin: 20px calc(50% - 50vw) 0;
  }
}

#diversity  .mainbox .image {
  display: block;
  height: 100%;
}

#diversity  .mainbox .image img {
  display: block;
  margin: 0 auto;
}

#diversity .item-list {
  display: flex;
  flex-wrap: wrap;
  margin-top: 60px;
}

@media screen and (max-width: 750px) {
  #diversity .item-list {
    flex-direction: column;
  }
}

#diversity .item-list .item {
  width: 49.474%;
  height: 370px;
  margin-right: 1.054%;
  margin-bottom: 10px;
  background-color: #f2f2f2;
}

@media screen and (max-width: 750px) {
  #diversity .item-list .item {
    width: 100%;
    height: auto;
    margin-right: 0;
    margin-bottom: 10px;
  }
}

#diversity .item-list .item:hover {
  opacity: .7;
}

#diversity .item-list .item:nth-of-type(2n) {
  margin-right: 0;
}

#diversity .item-list .item a {
  width: 100%;
  height: 100%;
  position: relative;
  color: #333;
  text-decoration: none;
  display: block;
}

#diversity .item-list .item a:visited {
  color: #333;
  text-decoration: none;
}

#diversity .item-list .item a::after {
  content: '';
  position: absolute;
  right: 0;
  bottom: 0;
  width: 23px;
  height: 23px;
}

#diversity .item-list .item.-nolink a::after {
  background: url(../img/icn_s1.png)no-repeat;
}

#diversity .item-list .item.-outer a::after {
  background: url(../img/icn_s2.png)no-repeat;
}

#diversity .item-list .item .image {
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
}

#diversity  .item-list .item .propulsion {
  width: 100%;
  min-height: 230px;
  position: absolute;
  background: url(../img/div_idx01.jpg)no-repeat;
  background-size: cover;
}

#diversity  .item-list .item .training {
  width: 100%;
  min-height: 230px;
  position: absolute;
  background: url(../img/div_idx02.jpg)no-repeat;
  background-size: cover;
}

#diversity  .item-list .item .welfare {
  width: 100%;
  min-height: 230px;
  position: absolute;
  background: url(../img/div_idx03.jpg)no-repeat;
  background-size: cover;
}

@media screen and (max-width: 750px) {
  #diversity .item-list .item .propulsion,
  #diversity .item-list .item .training,
  #diversity .item-list .item .welfare {
    position: relative;
  }
}

@media screen and (max-width: 750px) {
  #diversity .item-list .item .image {
    width: 30%;
    position: relative;
    top: 0;
    left: 0;
    display: block;
  }
}

#diversity .item-list .item .group {
  flex: 1;
}

#diversity .item-list .item div {
  position: relative;
  top: 56%;
}

@media screen and (max-width: 750px) {
  #diversity  .item-list .item div {
    position: relative;
    top: -18px;
  }
}

#diversity .item-list .item div h3 {
  position: absolute;
  font-size: 2.0rem;
  line-height: 1.5em;
}

@media screen and (max-width: 1050px) {
  #diversity .item-list .item div h3 {
    font-size: calc((20 - 17) * ((100vw - 750px) / (1050 - 750)) + 17px);
  }
}

@media screen and (max-width: 750px) {
  #diversity .item-list .item h3 {
    margin-left: 0;
    padding-bottom: 10px;
    font-size: 1.7rem;
    line-height: 1;
  }
  #diversity .item-list .item h3 img{
    width: 80%;
  }
}

#diversity .item-list .item p {
  font-size: 1.3rem;
  line-height: 2;
  padding-top: 13%;
  padding-left: 3.5%;
  padding-right: 3.5%;
  text-align: justify;
  text-justify: inter-ideograph;
}

@media screen and (max-width: 750px) {
  #diversity .item-list .item p {
    padding-top: 12.5%;
    padding-right: 3.5%;
    flex: 1;
    line-height: 1.8;
  }
}

/* ↑↑↑ #diversity ↑↑↑ */

/* ↓↓↓ #propulsion ↓↓↓ */
#propulsion .title {
  color: #008803;
  font-size: 2.4rem;
  padding-bottom: 20px;
  line-height: 1.4em;
}

@media screen and (max-width: 750px) {
  #propulsion .title {
    font-size: 1.8rem;
    padding-bottom: 15px;
  }
}

#propulsion .subtitle1 {
  color: #008803;
  font-size: 1.8rem;
  padding-bottom: 10px;
}

#propulsion .subtitle2 {
  font-size: 1.6rem;
  padding-bottom: 10px;
  line-height: 1.4em;
}

@media screen and (max-width: 750px) {
  #propulsion .subtitle2 {
    font-size: 1.4rem;
    padding-bottom: 5px;
  }
}

#propulsion .text {
  font-size: 1.3rem;
  line-height: 2;
  text-align: justify;
  text-justify: inter-ideograph;
}

@media screen and (max-width: 750px) {
  #propulsion .text {
    line-height: 1.82;
  }
}

#propulsion .btn_dai {
  margin-top: 5px;
}

@media screen and (max-width: 750px) {
  #propulsion .btn_dai {
    display: none;
  }
}

#propulsion .box1 {
  margin-top: 45px;
}

@media screen and (max-width: 750px) {
  #propulsion .box1 {
    margin-top: 20px;
  }
}

#propulsion .box2 {
  margin-top: 70px;
  padding: 70px 0;
  border-top: #008803 solid 1px;
  border-bottom: #008803 solid 1px;
}

@media screen and (max-width: 750px) {
  #propulsion .box2 {
    margin-top: 40px;
    padding: 40px 0;
  }
}

#propulsion .box2 .group1 {
  margin-top: 40px;
  display: flex;
  justify-content: space-between;
}

@media screen and (max-width: 750px) {
  #propulsion .box2 .group1 {
    margin-top: 20px;
    flex-direction: column;
  }
}

#propulsion .box2 .group1 .left {
  width: 64%;
}

#propulsion .box2 .group1 .right {
  width: 31%;
}

@media screen and (max-width: 750px) {

  #propulsion .box2 .group1 .right,
  #propulsion .box2 .group1 .left {
    width: 100%;
  }

  #propulsion .box2 .group1 .right {
    margin-top: 20px;
  }
}

#propulsion .box2 .group1 .right figure {
  display: block;
  border: #000 solid 1px;
}

#propulsion .box2 .group2 {
  margin-top: 40px;
}

#propulsion .box2 .group2 .links {
  padding-left: 12px;
  margin-top: 15px;
  padding-top: 4px;
  line-height: 100%;
  background-image: url(../img/icn_txtlink.png);
  background-position: left center;
  background-repeat: no-repeat;
}

#propulsion .box2 .group2 .links a {
  color: #333;
  text-decoration: underline;
}

#propulsion .box2 .group2 .links a:hover {
  text-decoration: none;
}

#propulsion .box3 {
  padding: 60px 0;
}

@media screen and (max-width: 750px) {
  #propulsion .box3 {
    padding: 30px 0;
  }
}

#propulsion .box3 .group1 {
  margin-top: 40px;
}

#propulsion .box3 .group1 ul {
  margin: 15px 0;
}

#propulsion .box3 .group1 ul li {
  padding: 2px 0;
  text-indent: -1em;
  padding-left: 1em;
}

#propulsion .box3 .group2 {
  margin-top: 40px;
  padding: 0 20px 10px 20px;
  display: flex;
  justify-content: center;
}

@media screen and (max-width: 750px) {
  #propulsion .box3 .group2 {
    margin-top: 20px;
    padding: 0 0 10px 0;
    flex-direction: column;
  }
}

#propulsion .box3 .group2 figure {
  display: block;
  border: #000 solid 1px;
}

#propulsion .box3 .group2 .left {
  margin-right: 20px;
}

@media screen and (max-width: 750px) {
  #propulsion .box3 .group2 .left {
    margin-right: 0;
    margin-bottom: 20px;
  }
}

#propulsion .box3 .links {
  margin-top: 15px;
  padding-top: 4px;
  line-height: 100%;
}

#propulsion .box3 .links a {
  color: #333;
  text-decoration: underline;
}

#propulsion .box3 .links a:hover {
  text-decoration: none;
}

#propulsion .box4 {
  padding: 60px 0;
  border-top: 1px solid #008803;
}

@media screen and (max-width: 750px) {
  #propulsion .box4 {
    padding: 30px 0;
  }
}

#propulsion .box4 .subtitle1 {
  margin-top: 40px;
}

@media screen and (max-width: 750px) {
  #propulsion .box4 .subtitle1 {
    margin-top: 20px;
  }
}

#propulsion .box4 .group1 {
  width: 90%;
  margin: 40px auto 0 auto;
  padding: 25px 35px 20px 35px;
  background-color: #e6f3e6;
  display: flex;
}

@media screen and (max-width: 750px) {
  #propulsion .box4 .group1 {
    width: 100%;
    margin: 20px auto 0 auto;
    padding: 15px 15px 10px 15px;
    flex-direction: column;
  }
}

#propulsion .box4 .group1 .item {
  margin-right: 40px;
}

@media screen and (max-width: 750px) {
  #propulsion .box4 .group1 .item {
    margin-right: 0;
    margin-bottom: 20px;
  }
}

#propulsion .box4 .group1 .item:last-of-type {
  margin-right: 0;
}

@media screen and (max-width: 750px) {
  #propulsion .box4 .group1 .item:last-of-type {
    margin-bottom: 0;
  }
}

#propulsion .box4 .group1 h4 {
  color: #008803;
  font-size: 1.8rem;
  padding-bottom: 10px;
  line-height: 1.4em;
}

@media screen and (max-width: 750px) {
  #propulsion .box4 .group1 h4 {
    font-size: 1.6rem;
  }
}

#propulsion .box4 .group1 ul {
  padding-left: 24px;
}

#propulsion .box4 .group1 ul li {
  margin-bottom: 10px;
  font-size: 1.3rem;
  line-height: 1.6;
}

#propulsion .box4 .group1 ul li:last-of-type {
  margin-bottom: 0;
}

#propulsion .box4 .group1 ul li h5 {
  width: 100%;
  display: block;
  font-weight: bold;
}

#propulsion .box4 .group2 {
  width: 31%;
  margin: 40px auto 0 auto;
}

@media screen and (max-width: 750px) {
  #propulsion .box4 .group2 {
    width: 100%;
    margin: 20px auto 0 auto;
  }
}

#propulsion .box4 .group2 figure {
  display: block;
  border: #000 solid 1px;
}

#propulsion .box4 .group3 {
  margin-top: 40px;
  padding-bottom: 30px;
  border-top: 1px dotted #d6d6d6;
  border-bottom: 1px dotted #d6d6d6;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}

@media screen and (max-width: 750px) {
  #propulsion .box4 .group3 {
    margin-top: 20px;
    padding-bottom: 30px;
    flex-direction: column;
  }
}

#propulsion .box4 .group3 .subtitle1 {
  width: 100%;
  margin-top: 30px;
}

#propulsion .box4 .group3 .item {
  width: 48.422%;
}

@media screen and (max-width: 750px) {
  #propulsion .box4 .group3 .item {
    width: 100%;
  }
}

#propulsion .box4 .group3 .item.-imags {
  display: flex;
  align-items: flex-start;
}

@media screen and (max-width: 750px) {
  #propulsion .box4 .group3 .item.-imags {
    padding-top: 10px;
  }
}

#propulsion .box4 .group3 .item.-imags img {
  display: block;
  margin-right: 1px;
}

@media screen and (max-width: 750px) {
  #propulsion .box4 .group3 .item.-imags img {
    width: 50%;
  }
}

#propulsion .box4 .group3 .item.-imags img:last-of-type {
  margin-right: 0;
}

#propulsion .box5 {
  padding: 60px 0;
  border-top: 1px solid #008803;
}

@media screen and (max-width: 750px) {
  #propulsion .box5 {
    padding: 30px 0;
  }
}

#propulsion .box5 .group1 {
  display: flex;
  justify-content: space-between;
}

@media screen and (max-width: 750px) {
  #propulsion .box5 .group1 {
    flex-direction: column;
  }
}

#propulsion .box5 .group1 .text {
  width: 43.1579%;
}

@media screen and (max-width: 750px) {
  #propulsion .box5 .group1 .text {
    width: 100%;
  }
}

#propulsion .box5 .group1 .images {
  width: 53.369%;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}

@media screen and (max-width: 750px) {
  #propulsion .box5 .group1 .images {
    width: 100%;
    margin-top: 10px;
  }
}

#propulsion .box5 .group1 .images img {
  margin-right: 1px;
}

@media screen and (max-width: 750px) {
  #propulsion .box5 .group1 .images img {
    width: 33%;
  }
}

#propulsion .box5 .group1 .images img:last-of-type {
  margin-right: 0;
}

#propulsion .box5 .group1 .images .cap {
  width: 100%;
  padding-top: 6px;
  font-size: 1.2rem;
  line-height: 1.5em;
}

#propulsion .box6 {
  padding: 60px 0;
  border-top: 1px solid #008803;
}

@media screen and (max-width: 750px) {
  #propulsion .box6 {
    padding: 30px 0;
  }
}

#propulsion .box6 .group1 {
  display: flex;
  justify-content: space-between;
}

@media screen and (max-width: 750px) {
  #propulsion .box6 .group1 {
    flex-direction: column;
  }
}

#propulsion .box6 .group1 .text {
  width: 43.1579%;
}

@media screen and (max-width: 750px) {
  #propulsion .box6 .group1 .text {
    width: 100%;
  }
}

#propulsion .box6 .group1 .table {
  width: 53.369%;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}

@media screen and (max-width: 750px) {
  #propulsion .box6 .group1 .table {
    width: 100%;
    margin-top: 10px;
  }
}

#propulsion .box6 .group1 .table .head,
#propulsion .box6 .group1 .table .cons {
  width: 50%;
  font-size: 1.3rem;
  line-height: 1.4;
  text-align: center;
  display: flex;
  justify-content: center;
  align-items: center;
  border: 1px solid #000;
}

#propulsion .box6 .group1 .table .head {
  height: 49px;
  background-color: #f9cfc5;
}

#propulsion .box6 .group1 .table .cons {
  height: 67px;
}

#propulsion .box6 .group1 .table .cap {
  width: 100%;
  padding-top: 6px;
  font-size: 1.2rem;
  line-height: 1.5em;
  text-align: right;
}

#propulsion .box6 .group1 .table div:nth-of-type(2),
#propulsion .box6 .group1 .table div:nth-of-type(4) {
  border-left: 0;
}

#propulsion .box6 .group1 .table div:nth-of-type(1),
#propulsion .box6 .group1 .table div:nth-of-type(2) {
  border-bottom: 0px;
}

#propulsion .box7 {
  padding: 60px 0;
  border-top: 1px solid #008803;
}

@media screen and (max-width: 750px) {
  #propulsion .box7 {
    padding: 30px 0;
  }
}

#propulsion .box7 .links {
  margin-top: 5px;
}

#propulsion .box7 .links a {
  color: #333;
  text-decoration: underline;
}

#propulsion .box7 .links a:hover {
  text-decoration: none;
}

#propulsion .box8 {
  padding: 60px 0;
  border-top: 1px solid #008803;
}

@media screen and (max-width: 750px) {
  #propulsion .box8 {
    padding: 30px 0;
  }
}

@media screen and (max-width: 750px) {
  #propulsion .box8 .subtitle1 {
    font-size: 1.6rem;
  }
}

#propulsion .box8 .group1 {
  display: flex;
}

#propulsion .box8 .group1 .item:nth-of-type(1) {
  flex: 1;
}

#propulsion .box8 .group1 .item:nth-of-type(2) {
  width: 99px;
}

#propulsion .box8 .group2 {
  margin-top: 50px;
  padding-top: 40px;
  padding-bottom: 40px;
  border-top: 1px dotted #d6d6d6;
  border-bottom: 1px dotted #d6d6d6;
}

#propulsion .box8 .group3 {
  padding-top: 40px;
  padding-bottom: 40px;
}

#propulsion .box8 .group4 {
  padding-top: 40px;
  padding-bottom: 40px;
  border-top: 1px dotted #d6d6d6;
  border-bottom: 1px dotted #d6d6d6;
}

#propulsion .box8 .group5 {
  padding-top: 40px;
  padding-bottom: 40px;
}

#propulsion .box8 .group6 {
  padding-top: 40px;
  padding-bottom: 40px;
  border-top: 1px dotted #d6d6d6;
  display: flex;
  justify-content: space-between;
}

@media screen and (max-width: 750px) {
  #propulsion .box8 .group6 {
    padding-top: 20px;
    padding-bottom: 20px;
    flex-direction: column;
  }
}

#propulsion .box8 .group6 .item:nth-of-type(1) {
  flex: 1;
}

#propulsion .box8 .group6 .item:nth-of-type(2) {
  width: 153px;
  margin-left: 50px;
}

@media screen and (max-width: 750px) {
  #propulsion .box8 .group6 .item:nth-of-type(2) {
    margin: 10px auto 0 auto;
  }
}

/* ↑↑↑ #propulsion ↑↑↑ */

/* ↓↓↓ #training ↓↓↓ */

#training .text {
  font-size: 1.3rem;
  line-height: 2;
  text-align: justify;
  text-justify: inter-ideograph;
}

#training .mainbox {
  margin-top: 45px;
}

#training .ikuseimenu {
  display: flex;
}

@media screen and (max-width: 750px) {
  #training .ikuseimenu {
    flex-direction: column;
  }
}

#training .ikuseimenu .menu {
  width: 50%;
  height: 60px;
}

@media screen and (max-width: 750px) {
  #training .ikuseimenu .menu {
    width: 100%;
  }
}

#training .ikuseimenu .menu:first-of-type {
  margin-right: 1px;
}

@media screen and (max-width: 750px) {
  #training .ikuseimenu .menu:first-of-type {
    margin: 20px 0 1px 0;
  }
}

#training .ikuseimenu .menu a {
  width: 100%;
  height: 100%;
  background-color: #008803;
  display: flex;
  justify-content: center;
  align-items: center;
}

#training .ikuseimenu .menu a:hover {
  background-color: #084905;
}

#training .title {
  color: #008803;
  font-size: 2.4rem;
  padding-bottom: 20px;
  line-height: 1.4em;
}

#training .box1 {
  margin-top: 45px;
}

#training .box1 .inner {
  display: flex;
  justify-content: space-between;
}

@media screen and (max-width: 750px) {
  #training .box1 .inner {
    flex-direction: column;
  }
}

#training .box1 .inner .text {
  width: 48.5%;
}

@media screen and (max-width: 750px) {
  #training .box1 .inner .text {
    width: 100%;
  }
}

#training .box2 {
  margin-top: 110px;
}

@media screen and (max-width: 750px) {
  #training .box2 {
    margin-top: 20px;
  }
}

#training .box2 .item {
  padding: 40px 35px;
  margin-bottom: 1px;
  position: relative;
  background-color: #e6e6e6;
}

@media screen and (max-width: 750px) {
  #training .box2 .item {
    padding: 20px 15px;
  }
}

#training .box2 .item:nth-of-type(2n) {
  background-color: #f2f2f2;
}

#training .box2 .item h3 {
  margin-bottom: 10px;
  font-size: 2.4rem;
  color: #008803;
}

#training .box2 .item .group {
  display: flex;
}

@media screen and (max-width: 750px) {
  #training .box2 .item .group {
    flex-direction: column-reverse;
  }
}

#training .box2 .item .group .text {
  flex: 1;
}

#training .box2 .item .group .img {
  width: 216px;
  margin-left: 5.682%;
}

@media screen and (max-width: 750px) {
  #training .box2 .item .group .img {
    width: 100%;
    margin-left: 0;
    margin-bottom: 10px;
  }
}

#training .box3 {
  margin-top: 80px;
}

@media screen and (max-width: 750px) {
  #training .box3 {
    margin-top: 20px;
  }
}

#training .box3 .title {
  padding-bottom: 10px;
}

#training .box3 .text {
  margin-bottom: 20px;
}

#training .box3 .item {
  padding: 40px 35px;
  margin-bottom: 1px;
  position: relative;
  background-color: #fff3f0;
}

@media screen and (max-width: 750px) {
  #training .box3 .item {
    padding: 20px 15px;
  }
}

#training .box3 .item.area {
  background-color: #e6f5f9;
}

#training .box3 .item.job {
  background-color: #fcf3e8;
}

#training .box3 .item h3 {
  margin-bottom: 10px;
  font-size: 2.4rem;
  color: #ff917d;
}

#training .box3 .item.area h3 {
  color: #0097c1;
}

#training .box3 .item.job h3 {
  color: #e0871e;
}

#training .box3 .item .group {
  display: flex;
}

@media screen and (max-width: 750px) {
  #training .box3 .item .group {
    flex-direction: column-reverse;
  }
}

#training .box3 .item .group .text {
  flex: 1;
}

#training .box3 .item .group .img {
  width: 216px;
  margin-left: 5.682%;
}

@media screen and (max-width: 750px) {
  #training .box3 .item .group .img {
    width: 100%;
    margin-left: 0;
    margin-bottom: 10px;
  }
}

/* ↑↑↑ #training ↑↑↑ */

/* ↓↓↓ #training ↓↓↓ */

#welfare .indexlead,
#welfare .text {
  font-size: 1.3rem;
  line-height: 2;
  text-align: justify;
  text-justify: inter-ideograph;
}

#welfare .indexlead {
  letter-spacing: 0.06em;
  line-height: 2;
  margin-top: 45px;
}
@media screen and (max-width: 750px) {
  #welfare .indexlead {
    line-height: 1.42857;
    margin-top: 24px;
  }
}
#welfare .indexlead .caption {
  display: inline-block;
  margin-bottom: 20px;
  padding-top: 5px;
  padding: 5px 10px 0 20px;
  font-size: 2.2rem;
  font-weight: bold;
  letter-spacing: 1px;
  color: #fff;
  background-color: #008803;
  position: relative;
}
@media screen and (max-width: 750px) {
  #welfare .indexlead .caption {
    font-size: 1.8rem;
  }
}
#welfare .indexlead .caption::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 7px;
  height: 100%;
  background-color: #000;
}
#welfare .indexlead .green_txt {
  font-size: 1.4rem;
  font-weight: bold;
  color: #008803;
}
#welfare .indexlead .markup_txt {
  max-width: 520px;
  font-size: 1.4rem;
  font-weight: bold;
  text-align: left;
  color: #fff;
  background-color: #008803;
  border-radius: 9999px;
  padding: 8px 16px;
}
#welfare :is(.markup_txt,.markup) .-yellow {
  color: #FFFF50;
  display: inline-block;
}
#welfare .indexlead .markup_txt .num_indent {
  position: relative;
  display: block;
  padding-left: 1em;
}
#welfare .indexlead .markup_txt .num {
  position: absolute;
  top: 0;
  left: 0;
}
#welfare .indexlead .markup_txt+.markup_txt {
  margin-top: 8px;
}
#welfare .indexlead .txt {
  line-height: 2;
}

#welfare .box1 {
  margin-top: 64px;
}

#welfare .box1 .title {
  padding-bottom: 10px;
  line-height: 1.4em;
  font-size: 1.7rem;
  color: #008803;
}
#welfare .box1 .markup {
  text-align: center;
  color: #fff;
  background-color: #008803;
  border-radius: 9999px;
  padding: 18px 45px;
}
#welfare .box1 .title+.markup {
  margin-top: 35px;
}
#welfare .box1 .system_container+.markup {
  margin-top: 35px;
}
@media screen and (max-width: 750px) {
  #welfare .box1 .title+.markup {
    margin-top: 38px;
  }
  #welfare .box1 .system_container+.markup {
    margin-top: 40px;
  }
}
#welfare .box1 .markup .head {
  font-size: 1.6rem;
  font-weight: bold;
}
#welfare .box1 .markup .txt {
  font-size: 1.4rem;
  display: block;
  margin-top: 4px;
}
#welfare .box1 .system_container {
  margin-top: 48px;
}
@media screen and (max-width: 750px) {
  #welfare .box1 .system_container {
    margin-top: 40px;
  }
}
#welfare .box1 .system_container .cont_heaed {
  font-size: 1.6rem;
  font-weight: bold;
  text-align: center;
  color: #008803;
  background-color: #CCE7CD;
  border-radius: 9999px;
  padding: 24px;
}
@media screen and (max-width: 750px) {
  #welfare .box1 .system_container .cont_heaed {
    padding: 14px 24px;
  }
}
#welfare .box1 .wb {
  display: inline-block;
}
#welfare .box1 .system_container .system_grid {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
  margin-top: 16px;
}
#welfare .box1 .system_grid .unit {
  width: calc((100% - 16px)/2);
  border-radius: 14px;
  background-color: var(--system_bg);
  padding: 38px min(6.666666666666667vw,64px);
}
#welfare .box1 .system_grid .unit.-long {
  width: 100%;
}
@media screen and (max-width: 750px) { 
  #welfare .box1 .system_grid :is(.unit,.unit.-long) {
    width: 100%;
  }
}
#welfare .box1 .system_grid .unit.-orange {
  --system_bg: #ffe9d2;
  --system_color: #ff921e;
}
#welfare .box1 .system_grid .unit.-blue {
  --system_bg: #cceaf2;
  --system_color: #0096be;
}
#welfare .box1 .system_grid .unit.-brown {
  --system_bg: #f2e6cc;
  --system_color: #be8200;
}
#welfare .box1 .system_grid .unit.-bluegreen {
  --system_bg: #e4f7f1;
  --system_color: #7ad6bb;
}
#welfare .box1 .system_grid .unit.-l_blue {
  --system_bg: #dcf4fc;
  --system_color: #50c8f0;
}
#welfare .box1 .system_grid .unit.-purple {
  --system_bg: #f2e4ee;
  --system_color: #be78aa;
}
#welfare .box1 .system_grid .unit.-green {
  --system_bg: #cce7cd;
  --system_color: #008803;
}
#welfare .box1 .system_grid .unit.-l_green {
  --system_bg: #e4f4d9;
  --system_color: #7ac843;
}
#welfare .box1 .system_grid .unit.-red {
  --system_bg: #fae6e2;
  --system_color: #e6826e;
}
#welfare .box1 .system_grid .unit.-yellow {
  --system_bg: #fff9dc;
  --system_color: #ff921e;
}
#welfare .box1 .system_grid .unit .system_head {
  font-size: 1.8rem;
  font-weight: bold;
  color: var(--system_color);
}
#welfare .box1 .system_grid .unit .system_inner {
  display: flex;
  flex-wrap: wrap;
  gap: 30px 16px;
  margin-top: 20px;
}
#welfare .box1 .system_grid .unit .system_inner.-flex {
  flex-direction: row-reverse;
  gap: 0 min(6.25vw,60px);
}
@media screen and (max-width: 750px) {
  #welfare .box1 .system_grid .unit :is(.system_inner,.system_inner.-flex) {
    flex-direction: column;
  }
}
#welfare .box1 .system_grid .unit .system_block {
  width: 100%;
}
#welfare .box1 .system_grid .unit .system_block.-three_column {
  width: calc((100% - 16px*2)/3);
}
#welfare .box1 .system_grid .unit .system_block.-two_column {
  width: calc((100% - 16px)/2);
}
@media screen and (max-width: 750px) { 
  #welfare .box1 .system_grid .unit :is(.system_block,.system_block.-three_column,.system_block.-two_column) {
    width: 100%;
  }
}
#welfare .box1 .system_grid .unit img {
  width: 100%;
  height: auto;
}
#welfare .box1 .system_grid .unit .system_inner.-flex .img {
  width: min(100%,300px);
  flex-shrink: 0;
}
#welfare .box1 .system_grid .unit .ttl {
  font-size: 1.6rem;
  font-weight: bold;
  letter-spacing: 0.06em;
  color: var(--system_color);
}
#welfare .box1 .system_grid .unit .img+.ttl {
  margin-top: 14px;
}
#welfare .box1 .system_grid .unit .txt_group {
  flex: 1;
}
#welfare .box1 .system_grid .unit .txt {
  font-size: 1.4rem;
  line-height: 2;
  letter-spacing: 0.06em;
  text-align: justify;
}
@media screen and (max-width: 750px) {
  #welfare .box1 .system_grid .unit .txt {
    line-height: 1.42857;
  }
}
#welfare .box1 .system_grid .unit .system_head+.txt {
  margin-top: 20px;
}
#welfare .box1 .system_grid .unit :is(.img+.txt,.img+.txt_group) {
  margin-top: 14px;
}
#welfare .box1 .system_grid .unit .ttl+.txt {
  margin-top: 8px;
}

#welfare .box9 {
  margin-top: 80px;
  padding-top: 70px;
  border-top: #66b868 solid 1px;
}

#welfare .box9 .title {
  display: inline-block;
  height: 49px;
  margin-bottom: 20px;
  padding-top: 5px;
  padding: 10px 10px 0 20px;
  font-size: 2.2rem;
  font-weight: bold;
  letter-spacing: 1px;
  color: #fff;
  background-color: #008803;
  position: relative;
}

#welfare .box9 .title::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 7px;
  height: 100%;
  background-color: #000;
}

#welfare .box9 .group {
  display: flex;
}

@media screen and (max-width: 750px) {
  #welfare .box9 .group {
    flex-direction: column;
  }
}

#welfare .box9 .group .left {
  flex: 1;
  margin-right: 60px;
}

@media screen and (max-width: 750px) {
  #welfare .box9 .group .left {
    width: 100%;
    flex: 0;
    margin-right: 0;
  }
}

#welfare .box9 .group .left .subtitle {
  display: block;
  padding-bottom: 10px;
  font-size: 1.8rem;
  font-style: normal;
  font-weight: bold;
  color: #008803;
}

@media screen and (max-width: 750px) {
  #welfare .box9 .group .left .subtitle {
    font-size: 1.6rem;
  }
}

#welfare .box9 .group .left .subtitle.-head {
  padding-bottom: 20px;
  font-size: 2.2rem;
}

@media screen and (max-width: 750px) {
  #welfare .box9 .group .left .subtitle.-head {
    padding-top: 10px;
    padding-bottom: 10px;
    font-size: 1.6rem;
  }
}

#welfare .box9 .group .left .subtitle.-head2 {
  margin-top: 40px;
}

@media screen and (max-width: 750px) {
  #welfare .box9 .group .left .subtitle.-head2 {
    margin-top: 20px;
  }
}

#welfare .box9 .group .right {
  width: 39.475%;
}

@media screen and (max-width: 750px) {
  #welfare .box9 .group .right {
    width: 100%;
    margin-top: 32px;
  }
}

#welfare .box9 .wide-image {
  display: block;
  margin-top: 30px;
}

/* ↑↑↑ #training ↑↑↑ */