@import "https://fonts.googleapis.com/css2?family=Montserrat:wght@400;700&family=Noto+Sans+JP:wght@400;500;700&display=swap";
body,
html {
  font-family: "Noto Sans JP", sans-serif;
  line-height: 1.6;
}
.p-subFv__title {
  font-weight: bold;
  padding-left: 50px;
  letter-spacing: 0.1em;
}
.p-subFv__title span {
  font-size: clamp(1.2rem, 1.8785vw + 0.8956rem, 3.3rem);
  display: block;
  margin-top: -6px;
  letter-spacing: 0.1em;
}
.c-sectionTitle {
  padding-top: clamp(5rem, 1.105vw + 4.5856rem, 6rem);
}
.c-sectionTitle .ja {
  font-size: clamp(2.4rem, 0.884vw + 2.0685rem, 3.2rem);
  font-weight: bold;
}
.p-breadcrumb__item:not(:last-child) {
  font-weight: bold;
}
#sec1 {
  padding: 135px 0 140px;
}
#sec1 .tt-h3 {
  display: flex;
}
#sec1 .tt-h3 span {
  font-family: "Montserrat", system-ui;
  font-size: clamp(1.6rem, 1.2685082873rem + 0.8839779006vw, 2.4rem);
  display: block;
  font-weight: bold;
}
#sec1 .tt-h3 span.num {
  display: flex;
  align-items: center;
  justify-content: center;
  background: #f2a7a7;
  color: #fff;
  width: 49px;
  height: 49px;
}
#sec1 .tt-h3 span.text {
  flex: 1;
  margin: 8px 0 0 11px;
}
#sec1 .set1 .chart {
  background: #fff;
  border: 1px solid #f2a7a7;
  margin-top: 20px;
  padding: 35px 20px;
}
#sec1 .set1 .chart .inner {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  max-width: 1030px;
  margin: 0 auto;
}
#sec1 .set1 .chart .inner .item {
  text-align: center;
  width: 3.9805825243%;
}
#sec1 .set1 .chart .inner .item * {
  font-family: "Montserrat", system-ui;
  font-weight: bold;
  font-size: clamp(0.5rem, 1.2155vw + 0.0442rem, 1.6rem);
}
#sec1 .set1 .chart .inner .item .column {
  background: #d97182;
  width: 100%;
}
#sec1 .set1 .chart .inner .item .year {
  margin-top: 8px;
}
#sec1 .set1 .chart .inner .item:nth-child(1) .column {
  height: 15px;
}
#sec1 .set1 .chart .inner .item:nth-child(2) .column {
  height: 18.5px;
}
#sec1 .set1 .chart .inner .item:nth-child(3) .column {
  height: 21.5px;
}
#sec1 .set1 .chart .inner .item:nth-child(4) .column {
  height: 31px;
}
#sec1 .set1 .chart .inner .item:nth-child(5) .column {
  height: 43px;
}
#sec1 .set1 .chart .inner .item:nth-child(6) .column {
  height: 40px;
}
#sec1 .set1 .chart .inner .item:nth-child(7) .column {
  height: 50.5px;
}
#sec1 .set1 .chart .inner .item:nth-child(8) .column {
  height: 63px;
}
#sec1 .set1 .chart .inner .item:nth-child(9) .column {
  height: 110.5px;
}
#sec1 .set1 .chart .inner .item:nth-child(10) .column {
  height: 129px;
}
#sec1 .set1 .chart .inner .item:nth-child(11) .column {
  height: 129px;
}
#sec1 .set1 .chart .inner .item:nth-child(12) .column {
  height: 145.5px;
}
#sec1 .set1 .chart .inner .item:nth-child(13) .column {
  height: 150px;
}
#sec1 .set1 .chart .inner .item:nth-child(14) .column {
  height: 187px;
}
#sec1 .set1 .chart .inner .item:nth-child(15) .column {
  height: 204px;
}
#sec1 .set2 {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  margin-top: 100px;
  row-gap: 100px;
}
#sec1 .set2 .item {
  width: 30.9364548495%;
}
#sec1 .set2 .item .photo {
  margin-top: 20px;
}
#sec1 .set2 .item .note {
  margin: 20px 4px 0 0;
  font-size: clamp(1rem, 0.221vw + 0.9171rem, 1.2rem);
  font-weight: 500;
}
@media screen and (min-width: 1050px) and (max-width: 1250px) {
  #sec1 .tt-h3 span {
    font-size: clamp(1.4rem, 0.6857vw + 1.1429rem, 2rem);
  }
}
@media screen and (max-width: 1049px) {
  #sec1 .set2 {
    margin-top: 40px;
    row-gap: 40px;
  }
  #sec1 .set2 .item {
    width: 48%;
  }
  #sec1 .set2 .item .tt-h3 {
    min-height: 70px;
  }
  #sec1 .set2 .item .photo {
    margin-top: 0px;
  }
  #sec1 .set2 .item .note {
    margin-top: 15px;
  }
}
@media screen and (max-width: 767px) {
  #sec1 {
    padding: 65px 0;
  }
  #sec1 .tt-h3 span.num {
    width: 40px;
    height: 40px;
  }
  #sec1 .set1 .chart {
    padding: 25px 10px;
  }
  #sec1 .set1 .chart .inner .item .year {
    margin-top: 5px;
  }
}
#training {
  padding: 151px 0 180px;
}
#training .c-sectionTitle .en {
  color: #fcf9f9;
}
#training .set {
  background: #fff;
  padding: 40px;
  margin-top: 56px;
}
#training .set .tt-h3 {
  border-bottom: 1px solid #d97182;
  font-weight: bold;
  padding-bottom: 18px;
}
#training .set .row {
  display: flex;
  justify-content: space-between;
  margin-top: 30px;
}
#training .set .row .photo {
  width: 47.1326164875%;
}
#training .set .row .gr-txt {
  width: 49.7311827957%;
}
#training .set .row .gr-txt .tt-h3-2 {
  font-weight: bold;
  color: #d97182;
}
#training .set .row .gr-txt .list {
  background: #f9f9f9;
  margin-top: 30px;
  padding: 28px;
  row-gap: 15px;
}
#training .set .row .gr-txt .list li {
  position: relative;
  -moz-column-gap: 0.5em;
  column-gap: 0.5em;
  display: grid;
  grid-template-columns: auto 1fr;
}
#training .set .row .gr-txt .list li * {
  font-size: clamp(1.2rem, 0.221vw + 1.1171rem, 1.4rem) !important;
  line-height: 25px;
}
#training .set .row .gr-txt .list li::before {
  background-image: url("../img/icon/icon_logo.svg");
  background-repeat: no-repeat;
  background-size: cover;
  content: "";
  height: 0.8888888889em;
  margin-block: calc(0.5lh - 0.5em);
  transform: translateY(1px);
  width: 1em;
}
#training .set .row .gr-txt .list li span {
  font-weight: 500;
}
#training .set1 .gr-txt .list {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
#training .set1 .gr-txt .list li {
  width: 50%;
}
#training .set1 .gr-txt .list li:nth-child(even) {
  width: 43.5%;
}
#training .set2 {
  margin-top: 100px;
}
#training .set2 .gr-txt .list li * {
  letter-spacing: -0.01em;
}
#training .set2 .gr-txt .list li + li {
  margin-top: 15px;
}
@media screen and (min-width: 768px) and (max-width: 950px) {
  #training .c-sectionTitle .en {
    font-size: 7.5789473684vw;
  }
  #training .set .row {
    display: block;
  }
  #training .set .row > * {
    margin: 0 auto;
    max-width: 555px;
    width: 100% !important;
  }
  #training .set .row .gr-txt {
    margin-top: 30px;
  }
}
@media screen and (max-width: 767px) {
  #training {
    padding: 65px 0;
  }
  #training .c-sectionTitle {
    padding-top: 0;
  }
  #training .c-sectionTitle .en {
    line-height: 1;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
  }
  #training .set {
    padding: 20px;
    margin-top: 65px;
  }
  #training .set .row {
    display: block;
    margin-top: 30px;
  }
  #training .set .row .photo {
    width: auto;
  }
  #training .set .row .gr-txt {
    width: auto;
    margin-top: 20px;
  }
  #training .set .row .gr-txt .list {
    margin-top: 20px;
    padding: 15px 5px;
    row-gap: 10px;
  }
  #training .set1 .gr-txt .list li {
    width: 100% !important;
  }
  #training .set2 {
    margin-top: 40px;
  }
  #training .set2 .gr-txt .list li + li {
    margin-top: 10px;
  }
}
#welfare .group1 {
  padding: 155px 0 100px;
}
#welfare .group1 .set {
  background: #fff;
  padding: 40px;
}
#welfare .group1 .set .tt-h3 {
  border-bottom: 2px solid #d97182;
  padding-bottom: 18px;
  font-weight: bold;
}
#welfare .group1 .set .row {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-top: 30px;
  row-gap: 30px;
}
#welfare .group1 .set .row .item {
  border: 1px solid #f2a7a7;
  width: 23.1182795699%;
}
#welfare .group1 .set1 {
  margin-top: 56px;
}
#welfare .group1 .set1 .row .item {
  padding: 0 15px 20px;
}
#welfare .group1 .set1 .row .item dt {
  min-height: 110px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-bottom: 2px dotted #e3d3b7;
  font-weight: bold;
  line-height: 1.9444444444;
}
#welfare .group1 .set1 .row .item dd {
  margin-top: 20px;
}
#welfare .group1 .set1 .sub-ttl {
  background: #f8f6f4;
  color: #d97182;
  font-weight: bold;
  margin-top: 40px;
  padding: 30px 20px;
}
#welfare .group1 .set2 {
  margin-top: 100px;
  padding-bottom: 10px;
}
#welfare .group1 .set2 .row .item {
  min-height: 110px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: bold;
  line-height: 1.6111111111;
}
#welfare .group1 .set2 .note {
  margin-top: 11px;
  font-size: clamp(1rem, 0.221vw + 0.9171rem, 1.2rem);
  font-weight: 500;
}
#welfare .group2 {
  padding: 100px 0;
}
#welfare .group2 .group-link {
  display: flex;
  justify-content: space-between;
}
#welfare .group2 .group-link li {
  width: 47.2408026756%;
}
@media screen and (min-width: 768px) and (max-width: 950px) {
  #welfare .group1 .set1 .row .item {
    width: calc(50% - 15px);
  }
  #welfare .group1 .set2 .row {
    justify-content: flex-start;
    -moz-column-gap: 5%;
    column-gap: 5%;
  }
  #welfare .group1 .set2 .row .item {
    width: 30%;
  }
}
@media screen and (max-width: 767px) {
  #welfare .group1 {
    padding: 65px 0;
  }
  #welfare .group1 .set {
    padding: 20px;
  }
  #welfare .group1 .set .row {
    margin-top: 20px;
    row-gap: 20px;
  }
  #welfare .group1 .set .row .item {
    width: calc(50% - 10px);
  }
  #welfare .group1 .set1 {
    margin-top: 40px;
  }
  #welfare .group1 .set1 .row .item {
    padding: 0 10px 10px;
  }
  #welfare .group1 .set1 .row .item dt {
    min-height: 90px;
  }
  #welfare .group1 .set1 .row .item dd {
    margin-top: 10px;
  }
  #welfare .group1 .set1 .sub-ttl {
    margin-top: 20px;
    padding: 20px;
  }
  #welfare .group1 .set2 {
    margin-top: 40px;
    padding-bottom: 10px;
  }
  #welfare .group1 .set2 .row .item {
    min-height: 90px;
  }
  #welfare .group2 {
    padding: 65px 0;
  }
  #welfare .group2 .group-link {
    display: block;
  }
  #welfare .group2 .group-link li {
    width: 100%;
  }
  #welfare .group2 .group-link li + li {
    margin-top: 30px;
  }
}

@media screen and (max-width: 460px) {
  #welfare .group1 .set1 .row .item {
    width: 100%;
  }
}

#entry {
  padding: 78px 0 100px;
}
#entry .txt {
  margin-top: 55px;
}
#entry .group {
  border: 2px solid #f2a7a7;
  background: #fff;
  border-radius: 10px;
  margin-top: 38px;
  padding: 37px 20px 40px;
}
#entry .group .inner {
  position: relative;
  display: flex;
  justify-content: space-between;
  max-width: 888px;
  margin: 0 auto;
  -moz-column-gap: 30px;
  column-gap: 30px;
}
#entry .group .inner::before {
  content: "";
  position: absolute;
  border-left: 2px dotted #e3d3b7;
  left: 50%;
  transform: translateX(-50%);
  top: 0;
  bottom: 0;
}
#entry .group .inner .item {
  max-width: 344px;
  width: 100%;
}
#entry .group .inner .item dt {
  color: #d97182;
  font-weight: bold;
}
#entry .group .inner .item dd {
  margin-top: 15px;
}
#entry .group .inner .item dd .logo {
  width: 100%;
}
#entry .group .inner .item dd .logo + .logo {
  margin-top: 28px;
}
@media screen and (max-width: 767px) {
  #entry {
    padding: 65px 0;
  }
  #entry .txt {
    margin-top: 30px;
  }
  #entry .group {
    margin-top: 30px;
    padding: 20px;
  }
}
.l-cta__contact_btn .c-btn {
  color: #755139;
  border: 2px solid rgba(0, 0, 0, 0);
  font-weight: bold;
}
.l-cta__contact_btn .c-btn::after {
  background-color: #755139;
  margin-top: clamp(0rem, -2.2099vw + 0.8287rem, -2rem);
  width: clamp(1.5rem, 0.3315vw + 1.3757rem, 1.8rem);
  height: clamp(1.5rem, 0.3315vw + 1.3757rem, 1.8rem);
}
.l-cta__contact_btn .c-btn:hover {
  border-color: #755139;
}
