@charset "UTF-8";
/* +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
　company
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
#sec-company-philosophy {
  background-size: cover;
  background-position: 50% 0;
  background-image: url(../images/bg_company.jpg);
  text-align: center;
}
#sec-company-philosophy .sec-inner {
  max-width: 1120px;
  margin-left: auto;
  margin-right: auto;
  padding-top: 100px;
  padding-bottom: 100px;
}
#sec-company-philosophy h3 {
  margin-bottom: 30px;
  font-size: 42px;
  line-height: 1.4;
  font-family: 'Noto Serif JP', serif;
  font-weight: 900;
  -webkit-font-smoothing: antialiased;
  color: #222528;
}
#sec-company-philosophy h4 {
  margin-bottom: 60px;
  font-size: 28px;
  line-height: 1.5;
  font-family: 'Noto Serif JP', serif;
  font-weight: 900;
  -webkit-font-smoothing: antialiased;
  color: #222528;
}
#sec-company-philosophy .txt-copy {
  margin-top: 30px;
  font-size: 16px;
  line-height: 2.25;
}


#sec-company-philosophy-2024 .sec-inner {
  margin-left: auto;
  margin-right: auto;
  padding-top: 100px;
  padding-bottom: 100px;
}
#sec-company-philosophy-2024 .sec-inner .mission-box {
  display: flex;
  justify-content: space-between;
}
#sec-company-philosophy-2024 .sec-inner .mission-left {
  display: table;
  width: 40%;
  margin: 0 1rem;
}
#sec-company-philosophy-2024 .sec-inner .mission-left h3 {
  display: table-cell;
  vertical-align: middle;
  font-size: 42px;
  line-height: 1.4;
  font-weight: 900;
  -webkit-font-smoothing: antialiased;
  color: #222528;
  text-align: center;
}
#sec-company-philosophy-2024 .sec-inner .mission-left h3 span {
  display: block;
  margin-bottom: 5px;
  font-weight: 400;
  color: #57b53c;
  font-size: 25px;
  letter-spacing: 0.05em;
}
#sec-company-philosophy-2024 .sec-inner .mission-right {
  width: 60%;
  margin: 0 1rem;
}
#sec-company-philosophy-2024 .sec-inner .mission-right h6 {
  font-size: 28px;
  line-height: 1.5;
}
#sec-company-philosophy-2024 .sec-inner .mission-right .txt-copy {
  margin-top: 1rem;
  font-size: 16px;
  line-height: 2.25;
}
#sec-company-philosophy-2024 .sec-inner .philosophy-img {
  margin: 6rem 0 0;
}
#sec-company-philosophy-2024 .sec-inner .vision-box {
  display: flex;
  justify-content: space-between;
}
#sec-company-philosophy-2024 .sec-inner .vision-left {
  color: #FFF;
  width: 70%;
  background-size: cover;
  background-position: 50% 0;
  background-image: url(../images/philosophy-2024-bg.jpg);
  padding: 6rem 6rem;
}
#sec-company-philosophy-2024 .sec-inner .vision-left .inner {
  width: 100%;
  margin: 0 auto;
}
#sec-company-philosophy-2024 .sec-inner .vision-left h6 {
  display: block;
  margin-bottom: 5px;
  font-weight: 400;
  font-size: 25px;
  letter-spacing: 0.05em;
}
#sec-company-philosophy-2024 .sec-inner .vision-left h3 {
  font-size: 42px;
  line-height: 1.4;
  font-weight: 900;
  -webkit-font-smoothing: antialiased;
}
#sec-company-philosophy-2024 .sec-inner .vision-left h3 span {
  display: block;
  margin-bottom: 5px;
  font-weight: 400;
  font-size: 25px;
  letter-spacing: 0.05em;
}
#sec-company-philosophy-2024 .sec-inner .vision-left p {
  font-size: 16px;
  letter-spacing: 1px;
  line-height: 2.25;
  margin-top: 1rem;
}

#sec-company-philosophy-2024 .sec-inner .credo-right {
  width: 30%;
  border-bottom: solid 1px #d9dde1;
  background-color: #f1f3f4;
  padding: 6rem 6rem;
}
#sec-company-philosophy-2024 .sec-inner .credo-right h3 span {
  display: block;
  color: #57b53c;
  margin-bottom: 5px;
  font-weight: 400;
  font-size: 25px;
  letter-spacing: 0.05em;
}
#sec-company-philosophy-2024 .sec-inner .credo-right ul {
  width: 100%;
  margin: 0 auto;
}
#sec-company-philosophy-2024 .sec-inner .credo-right ul li h6 {
  font-size: 25px;
  font-weight: 900;
  line-height: 1.75;
}
#sec-company-philosophy-2024 .sec-inner .credo-right ul li span {
  display: block;
  font-size: 16px;
  font-weight: 400;
}
@media screen and (max-width: 1280px) {

  #sec-company-philosophy-2024 .sec-inner .mission-box {
    display: block;
  }
  #sec-company-philosophy-2024 .sec-inner .mission-left {
    width: 100%;
    margin: 0;
  }
  #sec-company-philosophy-2024 .sec-inner .mission-right {
    width: 100%;
    margin: 3rem 0;
    text-align: center;
  }
  #sec-company-philosophy-2024 .sec-inner .vision-box {
    display: block;
  }
  #sec-company-philosophy-2024 .sec-inner .vision-left {
    width: 100%;
    padding: 6rem 0;
    text-align: center;
  }
  #sec-company-philosophy-2024 .sec-inner .credo-right {
    width: 100%;
    padding: 6rem 0;
    text-align: center;
  }
  #sec-company-philosophy-2024 .sec-inner .credo-right ul li {
    margin-bottom: 1rem;
  }



}
#sec-company-slogan {
  text-align: center;
}
#sec-company-slogan .sec-inner {
  max-width: 1120px;
  margin-left: auto;
  margin-right: auto;
  padding-bottom: 100px;
}
#sec-company-slogan h3 {
  font-family: 'Noto Serif JP', serif;
  margin-bottom: 40px;
  font-size: 42px;
  line-height: 1.4;
  font-weight: 900;
  color: #222528;
  -webkit-font-smoothing: antialiased;
}
#sec-company-slogan .txt-copy {
  font-family: 'Noto Serif JP', serif;
  margin-top: 30px;
  font-size: 20px;
  line-height: 2;
}

.box-company-tbl {
  width: 1120px;
  margin: 50px auto 0;
}
.box-company-tbl table.tbl th, .box-company-tbl table.tbl td {
  padding: 10px 20px;
}

.box-company-access {
  position: relative;
  margin-top: 50px;
  border-top: solid 1px #d9dde1;
  border-bottom: solid 1px #d9dde1;
}
.box-company-access > ul h4 {
    color: #68bb50;
    font-size: 20px;
    letter-spacing: 4px;
    margin-top: 30px;
}
.box-company-access > ul {
  position: absolute;
  left: 50%;
  width: 550px;
  margin-left: -550px;
  padding: 10px 0 0;
}

.box-company-access > ul li {
  margin-top: 30px;
}

.box-company-access > ul li a {
  color: #68bb50;
}

.box-company-access > ul li a:hover {
  text-decoration: underline;
}

.box-company-access > ul li dt {
  min-height: 40px;
  padding-left: 40px;
  background: url(../../common/images/icon_map.png) no-repeat 0 center;
  background-size: 26px auto;
  font-size: 18px;
  line-height: 40px;
  color: #222528;
}

.box-company-access > ul li dd {
  margin-top: 15px;
  font-size: 14px;
  line-height: 1.7;
}

.box-company-access #box-gmap {
  position: relative;
  width: 50%;
  height: 800px;
  left: 50%;
}

.box-company-access #box-gmap img {
  max-width: inherit;
}

/* for retina */
@media screen and (-webkit-min-device-pixel-ratio: 2), (-webkit-min-device-pixel-ratio: 2), (min-resolution: 2dppx) {
  .box-company-access > ul li dt {
    background-image: url(../../common/images/icon_map@2x.png);
  }
}
/* +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
　company/greeting
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
#sec-company-greeting-01 {
  margin-top: 100px;
  position: relative;
  width: 100%;
  height: 480px;
  background-repeat: no-repeat;
  background-position: center 0;
  background-size: cover;
  background-image: url(../images/bg_mv.jpg);
}

#sec-company-greeting-01 .sec-inner {
  position: absolute;
  width: 510px;
  top: 80px;
  left: 20%;
}

#sec-company-greeting-01 h3 {
  font-size: 42px;
  color: #222528;
  font-weight: normal;
  line-height: 1.4;
}

#sec-company-greeting-01 .txt-copy {
  margin-top: 30px;
  font-size: 16px;
  line-height: 2.4;
}

#sec-company-greeting-01 .txt-name {
  text-align: right;
  margin-top: 40px;
  margin-right: 30px;
}

#sec-company-greeting-02 {
  padding: 80px 0;
  position: relative;
  width: 100%;
  text-align: center;
}

#sec-company-greeting-02 .sec-inner {
  width: 740px;
  margin: 0 auto;
  text-align: left;
}

#sec-company-greeting-02 h3 {
  font-size: 36px;
  color: #222528;
  font-weight: normal;
  line-height: 1.4;
}

#sec-company-greeting-02 .txt-copy {
  margin-top: 26px;
  font-size: 16px;
  line-height: 2.7;
}

#sec-company-greeting-03 {
  padding: 80px 0;
  position: relative;
  width: 100%;
  text-align: center;
  background-color: #f9f9f9;
}

#sec-company-greeting-03 .sec-inner {
  width: 740px;
  margin: 0 auto;
  text-align: left;
}

#sec-company-greeting-03 h3 {
  font-size: 36px;
  color: #222528;
  font-weight: normal;
  line-height: 1.4;
}

#sec-company-greeting-03 .txt-copy {
  margin-top: 26px;
  font-size: 16px;
  line-height: 2.7;
}

#sec-company-greeting-04 {
  padding: 80px 0;
  position: relative;
  width: 100%;
  text-align: center;
}

#sec-company-greeting-04 .sec-inner {
  width: 740px;
  margin: 0 auto;
  text-align: left;
}

#sec-company-greeting-04 h3 {
  font-size: 36px;
  color: #222528;
  font-weight: normal;
  line-height: 1.4;
}

#sec-company-greeting-04 .txt-copy {
  margin-top: 26px;
  font-size: 16px;
  line-height: 2.7;
}

#sec-company-greeting-05 {
  padding: 80px 0;
  position: relative;
  width: 100%;
  text-align: center;
  background-color: #f9f9f9;
}

#sec-company-greeting-05 .sec-inner {
  width: 740px;
  margin: 0 auto;
  text-align: left;
}

#sec-company-greeting-05 h3 {
  font-size: 36px;
  color: #222528;
  font-weight: normal;
  line-height: 1.4;
}

#sec-company-greeting-05 h3.logo-icon {
  margin-top: 80px;
}

#sec-company-greeting-05 .txt-copy {
  margin-top: 26px;
  font-size: 16px;
  line-height: 2.7;
}

.company-award-sec-h {
  text-align: center;
  font-size: 2.2rem;
}

.company-award-historyTable th,
.company-award-historyTable td {
  padding: 10px 20px;
}

.company-award-awardTable th,
.company-award-awardTable td {
  padding: 10px 20px;
}

.company-award-historyTable th,
.company-award-awardTable th {
  width: 160px;
}

.manager-staffItem {
  overflow: hidden;
  width: 1120px;
  margin: 0 auto 60px;
}

.manager-staffItem.item01 {
  margin-top: 100px;
}

.manager-staffItem-pho {
  float: left;
  width: 50%;
}

.manager-staffItem-txtWrap {
  float: right;
  width: 44%;
  margin-top: 0;
  padding: 0 1rem;
}

.manager-staffItem-role {
  margin-bottom: 0.3em;
  line-height: 1.4;
}

.manager-staffItem-name {
  margin-bottom: 1rem;
  font-weight: normal;
}

.manager-staffItem-name .jp {
  font-size: 1.9rem;
  margin-right: 10px;
}

.manager-staffItem-history-h {
  font-size: 1.5rem;
  font-weight: normal;
  margin-bottom: 0.5em;
}

.manager-staffItem-txt {
  font-size: 14px;
  line-height: 1.5;
  text-align: justify;
}

.manager-sec02 {
  background: #F9F9F9;
  padding: 76px 0;
}

.manager-sec02-in {
  width: 1120px;
  margin: 0 auto;
  overflow: hidden;
}

.manager-sec02 .manager-staffItem {
  float: left;
  width: 540px;
  margin-bottom: 80px;
}

.manager-sec02 .manager-staffItem:nth-child(2n+1) {
  clear: left;
  margin-right: 40px;
}

.outline-logo {
  background: #F9F9F9;
  padding: 75px 0;
  margin-top: 90px;
}

.outline-logo-in {
  width: 970px;
  margin: 0 auto;
  overflow: hidden;
}

.outline-logo-head {
  text-align: center;
  margin-bottom: 50px;
}

.outline-logo-h {
  font-weight: normal;
  font-size: 2rem;
  margin-bottom: 1em;
}

.outline-logo-lead {
  margin-bottom: 1.5em;
}

.outline-logo-head-btn {
  width: 470px;
  margin: 0 auto;
  display: block;
}

.outline-logo-head-btn img {
  vertical-align: middle;
}

.outline-logo-color {
  margin-bottom: 50px;
}

.outline-logo-dl-h {
  border-left: 4px solid #D9DEE2;
  padding-left: 20px;
  font-weight: normal;
  font-size: 1.5rem;
  margin-bottom: 1em;
}

.outline-logo-dl-h span {
  font-size: 1.0rem;
}

.outline-logo-dl-img {
  background: #fff;
  border: 1px solid #D9DEE2;
  display: table;
  width: 456px;
  height: 235px;
  margin-bottom: 1em;
}

.outline-logo-dl-in {
  display: table-cell;
  text-align: center;
  vertical-align: middle;
  width: 100%;
  height: 100%;
}

.outline-logo-color .outline-logo-dl-img {
  float: left;
}

.outline-logo-color-in {
  overflow: hidden;
}

.outline-logo-color-txtWrap {
  float: right;
  width: 465px;
}

.outline-logo-dl-name {
  font-weight: normal;
  font-size: 1.1rem;
  margin-top: 0.6em;
  font-weight: bold;
}

.outline-logo-dl-name:before {
  content: "";
  width: 20px;
  height: 20px;
  border-radius: 50%;
  margin-right: 10px;
  display: inline-block;
}

.outline-logo-color .outline-logo-dl-name:before {
  background: #5BB43C;
}

.outline-logo-mono .outline-logo-dl-name:before {
  background: #231815;
}

.outline-logo-type .outline-logo-dl-name:before {
  background: #3e3a39;
}

.outline-logo-dl-name {
  margin-bottom: 1em;
}

.outline-logo-dl-txt {
  margin-bottom: 1em;
  line-height: 1.6;
}

.outline-logo-dl-btnList {
  overflow: hidden;
}

.outline-logo-dl-btnItem {
  float: left;
  margin-right: 15px;
}

.outline-logo-dl-btnItem a {
  width: 120px;
}

.outline-logo-dl-btnItem img {
  vertical-align: middle;
}

.outline-logo-dlSec {
  float: left;
  width: 468px;
  margin-bottom: 5em;
}

.outline-logo-dlSec:nth-child(2n) {
  float: right;
}

.outline-logo-mono-txtWrap,
.outline-logo-outline-txtWrap {
  overflow: hidden;
}

.outline-logo-dlSec .outline-logo-dl-name {
  float: left;
}

.outline-logo-dlSec .outline-logo-dl-btnList {
  float: right;
}

.outline-logo-isolation-img {
  text-align: center;
}
/* +++20210426追加 +++ */

.group-company-title {
  font-size: 28px;
  text-align: center;
  letter-spacing: 4px;
  margin-left: 2px;
  margin-top: 35px;
  color: #222528;
}
.group-company-box {
  width: 1120px;
  margin: 0 auto;
  margin-top: 60px;
}
.group-company-contents {
  display: flex;
  margin-bottom: 32px;
}
.group-company-contents figure a {
  -webkit-transition: opacity 0.3s ease;
  -moz-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}
.group-company-contents figure a:hover {
	opacity: 0.7;
	text-decoration: none;
}
.group-company-contents div {
  width: 764px;
  margin-left: 32px;
}
.group-company-contents div h4 {
  font-size: 20px;
  margin-bottom: 16px;
  color: #222528;
}
.group-company-contents div p {
  margin-bottom: 16px;
  line-height: 1.4;
  text-align: justify;
}
.group-company-contents div p span {
  background-color: #68bb50;
  color: #FFF;
  padding: 0px 12px 1px;
  margin-right: 16px;
}
.group-company-contents div p a {
  color: #68bb50;
}
.group-company-contents div p a:hover {
  text-decoration: underline;
}

/* +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
　welfare
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
.company-welfare-sec {
  margin-bottom: 100px;
}
.welfare-title {
  font-size: 24px;
  text-align: center;
  font-weight: normal;
  letter-spacing: 4px;
  margin-left: 2px;
}
.company-welfare-sec .box-company-tbl .table-inner .tbl tr th {
  padding: 10px 20px;
  width: 260PX;
  height: 90px;
  vertical-align: middle;
}
.company-welfare-sec .box-company-tbl .table-inner .tbl tr td {
  padding: 10px 20px;
  vertical-align: middle;
}

.welfare-bg {
  background-size: cover;
  background-position: 50% 0px;
  background-image: url(../images/welfare-bg.jpg);
  padding: 100px 0;
}
.childcare-box {
  display: flex;
  padding-top: 50px;
  width: 980px;
  margin: 0 auto;
  padding-left: 32px;
  flex-wrap: wrap;
}
.childcare-box .childcare-cnt {
  padding-right: 32px;
  text-align: center;
  width: 294px;
  margin-bottom: 50px;
}
.childcare-box .childcare-cnt h5 {
  font-size: 18px;
  padding-bottom: 16px;
  border-bottom: solid 1px #4d5963;
  letter-spacing: 2px;
}
.childcare-box .childcare-cnt p {
  margin-top: 16px;
  line-height: 24px;
  text-align: justify;
}
.operating-officer-pho {
  text-align: center;
  margin-bottom: 44px;
}
/* +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
sdgs
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
.company-sdgs-sec {
  margin-bottom: 100px;
}
.company-sdgs-sec .sdgs-img {
  text-align: center;
  margin: 32px 0;
}
.company-sdgs-sec .sdgs-title {
  font-size: 20px;
  text-align: center;
  font-weight: normal;
  letter-spacing: 4px;
  margin-left: 2px;
}
.company-sdgs-sec .sdgs-text {
  text-align: center;
  margin: 32px 0;
  line-height: 2.25;
}
.company-sdgs-sec h3 {
  margin-bottom: 30px;
  font-size: 42px;
  line-height: 1.4;
  font-weight: normal;
  text-align: center;
}
.sdgs-case {
  width: auto;
  max-width: 990px;
  margin-left: auto;
  margin-right: auto;
  padding-right: 30px;
}
.sdgs-case .sdgs-case-inner {
  display: flex;
}
.sdgs-case .sdgs-case-inner .sdgs-case-box {
  width: 300px;
  margin: 0 0 0 30px;
}
.sdgs-case .sdgs-case-inner .sdgs-case-box img {
}
.sdgs-case .sdgs-case-inner .sdgs-case-box h5 {
  font-size: 20px;
  margin: 25px 0 10px;
  text-align: center;
  font-weight: 100;
}
.sdgs-case .sdgs-case-inner .sdgs-case-box p {
  font-size: 14px;
  line-height: 1.7;
  margin-top: 10px;
  margin-bottom: 30px;
  height: 150px;
  text-align: justify;
}
.sdgs-top-message {
  width: 960px;
  margin: 0 auto;
  background: no-repeat center/contain url(../images/SDGs-message-bg.jpg);
  background-position: right bottom;
  padding-top: 60px;
}
.sdgs-top-message .sdgs-top-message-inner {
  width: 620px;
  height: 400px;
  font-size: 14px;
  background-color: rgba(220, 245, 240, 0.9);
  padding: 60px 32px;
  color: #000;
}
.sdgs-top-message .sdgs-top-message-inner p {
  line-height: 1.7;
  text-align: justify;
}
.company-sdgs-sec .top-message-title {
  font-weight: bold;
  margin-bottom: 60px;
}
.irisawa-sign {
  text-align: right;
  margin-top: 16px;
}

/* +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
moving
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */

.moving-message-box {
  max-width: 960px;
  margin: 0 auto;
}
.moving-img-list {
  display: flex;
  justify-content: space-between;
  margin-top: 16px;
}
.moving-img-list img {
  width: 24%;
}
.moving-text-box {
  margin: 64px 0;
  display: flex;
}
.moving-text-box img {
  max-width: 280px;
}
.moving-text-box .moving-text {
  text-align: justify;
  line-height: 28px;
  margin-left: 32px;
}
.moving-boss {
  text-align: right;
  letter-spacing: 4px;
}
.caress-gmap-box {
  margin: 200px 0 0;
}

/* +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
20220323
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */

.company-bnr {
    border-top: solid 1px #dadfe4;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}
.company-bnr > li {
    width: calc(100% / 3);
}
.company-bnr > li a {
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
  position: relative;
  display: block;
  height: 240px;
  background-position: 50% 0;
  background-size: cover;
}
.company-bnr > li a:hover {
  opacity: 0.7;
  text-decoration: none;
}
.company-bnr > li a.manager {
  background-image: url(../images/img-manager.jpg);
}
.company-bnr > li a.history {
  background-image: url(../images/img-history.jpg);
}
.company-bnr > li a.award {
  background-image: url(../images/img-award.jpg);
}
.company-bnr-text {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  text-shadow: #fff 0 0 22px;
  line-height: 1.4;
}
.company-bnr-text .en {
  font-weight: 400;
  letter-spacing: .05em;
  font-size: 28px;
  color: #57b53c;
}
.company-bnr-text .ja {
  font-size: 16px;
  -webkit-columns: #222528;
     -moz-columns: #222528;
          columns: #222528;
}
