@charset "UTF-8";
/*=============================================*/
/*Common Base*/
/*=============================================*/
.page_base {
  padding-bottom: 200px;
}
@media (max-width: 768px) {
  .page_base {
    padding-bottom: 100px;
  }
}

.aside.page_aside .simple_link {
  row-gap: 20px;
}
.aside.page_aside .simple_link .item {
  width: calc((100% - 40px) / 3);
}
@media (max-width: 1024px) {
  .aside.page_aside .simple_link .item {
    width: calc((100% - 20px) / 2);
  }
}
@media (max-width: 768px) {
  .aside.page_aside .simple_link .item {
    width: 100%;
  }
}
.aside.page_aside .simple_link a {
  padding: 30px;
}
@media (max-width: 768px) {
  .aside.page_aside .simple_link a {
    padding: 20px;
  }
}
.aside.page_aside .simple_link a .text {
  font-size: clamp(1.6rem, 1.8vw, 1.8rem);
}

/********************************************/
/* page_ttl */
/********************************************/
.page_company_block .company::before {
  background: url(../img/company/head-company.webp) no-repeat center/cover;
}
@media (max-width: 768px) {
  .page_company_block .company::before {
    background: url(../img/company/head-company-sp.webp) no-repeat center/cover;
  }
}

.page_esg_block .esg::before {
  background: url(../img/esg/head-esg.webp) no-repeat center/cover;
}
@media (max-width: 768px) {
  .page_esg_block .esg::before {
    background: url(../img/esg/head-esg-sp.webp) no-repeat center/cover;
  }
}

.page_reasons_block .reasons::before {
  background: url(../img/reasons/head-reason.webp) no-repeat center/cover;
}
@media (max-width: 768px) {
  .page_reasons_block .reasons::before {
    background: url(../img/reasons/head-reason-sp.webp) no-repeat center/cover;
  }
}

.page_business_block .business::before {
  background: url(../img/business/head-business.webp) no-repeat center/cover;
}
@media (max-width: 768px) {
  .page_business_block .business::before {
    background: url(../img/business/head-business-sp.webp) no-repeat center/cover;
  }
}

.page_business_block .business::before {
  background: url(../img/business/head-business.webp) no-repeat center/cover;
}
@media (max-width: 768px) {
  .page_business_block .business::before {
    background: url(../img/business/head-business-sp.webp) no-repeat center/cover;
  }
}

.page_works_block .works::before {
  background: url(../img/works/head-works.webp) no-repeat center/cover;
}
@media (max-width: 768px) {
  .page_works_block .works::before {
    background: url(../img/works/head-works-sp.webp) no-repeat center/cover;
  }
}

.mod-page_head .privacy::before,
.page_contact_block .contact::before,
.page_single_block .news::before,
.page_news_block .news::before {
  background: url(../img/common/head-common.webp) no-repeat center/cover;
}
@media (max-width: 768px) {
  .mod-page_head .privacy::before,
  .page_contact_block .contact::before,
  .page_single_block .news::before,
  .page_news_block .news::before {
    background: url(../img/common/head-common-sp.webp) no-repeat center/cover;
  }
}

.page_pelp_block .pelp::before {
  background: url(../img/pelp/head-esg.webp) no-repeat center/cover;
}
@media (max-width: 768px) {
  .page_pelp_block .pelp::before {
    background: url(../img/pelp/head-esg-sp.webp) no-repeat center/cover;
  }
}

/********************************************/
/* company */
/********************************************/
.page_company_block .message .container {
  display: flex;
  flex-wrap: wrap;
  column-gap: 5%;
  row-gap: 30px;
}
.page_company_block .message .container .img {
  width: 45%;
}
@media (max-width: 768px) {
  .page_company_block .message .container .img {
    width: 100%;
  }
}
.page_company_block .message .container .right {
  width: 50%;
}
@media (max-width: 768px) {
  .page_company_block .message .container .right {
    width: 100%;
  }
}

.page_company_block .message .inner_title {
  font-size: clamp(1.8rem, 2vw, 2.5rem);
  font-weight: 700;
}
.page_company_block .message .name {
  display: block;
  text-align: right;
  font-size: clamp(1.6rem, 2.2vw, 2.3rem);
  font-weight: 500;
}
.page_company_block .message .name small {
  font-size: clamp(1.4rem, 1.6vw, 1.8rem);
  padding-right: 20px;
  font-weight: 500;
}

.page_company_block .qualification .main_width {
  max-width: 900px;
}
.page_company_block .qualification table th, .page_company_block .qualification table td {
  padding: 12px 15px;
}
@media (max-width: 768px) {
  .page_company_block .qualification table th, .page_company_block .qualification table td {
    padding: 10px 8px;
  }
}
@media (max-width: 768px) {
  .page_company_block .qualification table th {
    width: 70%;
  }
}
@media (max-width: 768px) {
  .page_company_block .qualification table td {
    text-align: center;
    width: 30%;
  }
}

.page_company_block .history .mod-history_list {
  margin-bottom: 80px;
  padding: 20px;
  border: 1px solid #e8f3f0;
}

.page_company_block .history .bg-secondary_light {
  padding: 100px 30px;
}
@media (max-width: 768px) {
  .page_company_block .history .bg-secondary_light {
    padding: 50px 15px;
  }
}
.page_company_block .history .bg-secondary_light .description {
  font-size: clamp(1.4rem, 1.6vw, 1.8rem);
  font-weight: 500;
  text-align: center;
}

/********************************************/
/* esg */
/********************************************/
.page_esg_block .mod-ankerlink {
  max-width: 800px;
  margin-left: auto;
  margin-right: auto;
}

.page_esg_block .basic_policy {
  margin-bottom: 150px;
}
@media (max-width: 768px) {
  .page_esg_block .basic_policy {
    margin-bottom: 80px;
  }
}
.page_esg_block .basic_policy .esg_img img {
  margin: auto;
}
.page_esg_block .basic_policy .bg-grad_light {
  padding: 55px;
}
@media (max-width: 768px) {
  .page_esg_block .basic_policy .bg-grad_light {
    padding: 25px;
  }
}
.page_esg_block .basic_policy .bg-grad_light .inner_title {
  position: relative;
  margin-bottom: 40px;
  padding-bottom: 20px;
  text-align: center;
  font-size: clamp(1.8rem, 2.4vw, 3rem);
  font-weight: 700;
}
@media (max-width: 768px) {
  .page_esg_block .basic_policy .bg-grad_light .inner_title {
    margin-bottom: 25px;
    padding-bottom: 10px;
  }
}
.page_esg_block .basic_policy .bg-grad_light .inner_title::after {
  position: absolute;
  bottom: 0;
  left: 50%;
  width: 60px;
  height: 4px;
  background-color: #b9d000;
  content: "";
  transform: translateX(-50%);
}
@media (max-width: 768px) {
  .page_esg_block .basic_policy .bg-grad_light .inner_title::after {
    width: 30px;
    height: 2px;
  }
}
.page_esg_block .basic_policy .policy_list li:not(:last-child) {
  margin-bottom: 40px;
}
@media (max-width: 768px) {
  .page_esg_block .basic_policy .policy_list li:not(:last-child) {
    margin-bottom: 20px;
  }
}
.page_esg_block .basic_policy .policy_list .list_title {
  position: relative;
  font-size: clamp(1.6rem, 1.8vw, 2.4rem);
  font-weight: 700;
  margin-bottom: 10px;
  padding-left: 25px;
  color: #42a088;
}
@media (max-width: 768px) {
  .page_esg_block .basic_policy .policy_list .list_title {
    padding-left: 15px;
  }
}
.page_esg_block .basic_policy .policy_list .list_title::before {
  position: absolute;
  left: 0;
  top: 50%;
  content: "";
  width: 10px;
  height: 10px;
  background-color: #f18c9d;
  transform: translateY(-50%);
  border-radius: 50%;
}
@media (max-width: 768px) {
  .page_esg_block .basic_policy .policy_list .list_title::before {
    width: 7px;
    height: 7px;
  }
}

.page_esg_block .initiatives .block.mb {
  margin-bottom: 200px;
}
@media (max-width: 768px) {
  .page_esg_block .initiatives .block.mb {
    margin-bottom: 80px;
  }
}
.page_esg_block .initiatives .block_head {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  column-gap: 20px;
  row-gap: 10px;
  margin-bottom: 40px;
  padding: 20px;
}
@media (max-width: 768px) {
  .page_esg_block .initiatives .block_head {
    padding: 10px;
  }
}
.page_esg_block .initiatives .block_head .ja {
  display: block;
  font-size: clamp(1.4rem, 1.6vw, 1.8rem);
  font-weight: 700;
  color: #fff;
}
.page_esg_block .initiatives .block_head .en {
  display: block;
  line-height: 1.2;
  font-size: clamp(2rem, 2.3vw, 3rem);
  color: #fff;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
}
.page_esg_block .initiatives .block_head .en:first-letter {
  font-size: clamp(3rem, 3.8vw, 5rem);
}
.page_esg_block .initiatives .block_head .img_length {
  display: flex;
  gap: 10px;
}
@media (max-width: 768px) {
  .page_esg_block .initiatives .block_head .img_length img {
    display: block;
    max-width: 50px;
  }
}
.page_esg_block .initiatives .certificate {
  max-width: 600px;
  margin-left: auto;
  margin-right: auto;
}
.page_esg_block .initiatives p.caption {
  padding-bottom: 20px;
  font-size: clamp(2rem, 2.4vw, 3rem);
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
}

.tmp-column_box .tmp_list .item {
  display: flex;
  flex-wrap: wrap;
  column-gap: 5%;
  row-gap: 30px;
}
.tmp-column_box .tmp_list .item:not(:last-child) {
  margin-bottom: 200px;
}
@media (max-width: 768px) {
  .tmp-column_box .tmp_list .item:not(:last-child) {
    margin-bottom: 80px;
  }
}
.tmp-column_box .tmp_list .item figure.img {
  width: 40%;
}
@media (max-width: 768px) {
  .tmp-column_box .tmp_list .item figure.img {
    width: 100%;
  }
}
.tmp-column_box .tmp_list .item .txt_area {
  position: relative;
  width: 55%;
}
@media (max-width: 768px) {
  .tmp-column_box .tmp_list .item .txt_area {
    width: 100%;
  }
}
.tmp-column_box .tmp_list .item .txt_area::before {
  position: absolute;
  left: -20%;
  top: -20%;
  content: "";
  width: 250px;
  height: 250px;
  background-color: #e8f3f0;
  z-index: -1;
}
@media (max-width: 768px) {
  .tmp-column_box .tmp_list .item .txt_area::before {
    width: 200px;
    height: 150px;
    left: -10%;
    top: -110px;
  }
}

.tmp-column_box .tmp_list .inner_title {
  margin-bottom: 20px;
  padding-bottom: 20px;
  border-bottom: 1px solid #e8f3f0;
}
.tmp-column_box .tmp_list .inner_title span {
  display: block;
  font-size: clamp(1.7rem, 1.9vw, 2.4rem);
  font-weight: 700;
}

.page_esg_block .initiatives .bg-grad_light.governance {
  max-width: 1060px;
  margin-top: 150px;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 200px;
  padding: 50px;
}
@media (max-width: 768px) {
  .page_esg_block .initiatives .bg-grad_light.governance {
    margin-top: 80px;
    margin-bottom: 80px;
    padding: 20px;
  }
}
.page_esg_block .initiatives .bg-grad_light.governance .inner_title {
  position: relative;
  display: block;
  margin-bottom: 40px;
  padding-bottom: 20px;
  font-size: clamp(2rem, 2.3vw, 3rem);
  font-weight: 700;
  text-align: center;
}
.page_esg_block .initiatives .bg-grad_light.governance .inner_title::after {
  position: absolute;
  bottom: 0;
  left: 50%;
  content: "";
  width: 5%;
  height: 3px;
  background-color: #b9d000;
  transform: translateX(-50%);
}
@media (max-width: 768px) {
  .page_esg_block .initiatives .bg-grad_light.governance .inner_title::after {
    width: 10%;
  }
}
.page_esg_block .initiatives .bg-grad_light.governance .container {
  display: flex;
  column-gap: 5%;
  row-gap: 20px;
}
@media (max-width: 768px) {
  .page_esg_block .initiatives .bg-grad_light.governance .container {
    flex-wrap: wrap;
  }
}
.page_esg_block .initiatives .bg-grad_light.governance .container .img {
  max-width: 200px;
}
@media (max-width: 768px) {
  .page_esg_block .initiatives .bg-grad_light.governance .container .img {
    max-width: 150px;
    margin-left: auto;
    margin-right: auto;
  }
}

/********************************************/
/* reasons */
/********************************************/
.page_reasons_block section.reasons .block {
  display: flex;
  flex-wrap: wrap;
  column-gap: 5%;
  row-gap: 30px;
  margin-bottom: 200px;
}
@media (max-width: 768px) {
  .page_reasons_block section.reasons .block {
    margin-bottom: 80px;
  }
}
.page_reasons_block section.reasons .block:nth-of-type(3) {
  margin-bottom: 0;
}
.page_reasons_block section.reasons .block .img {
  width: 40%;
}
@media (max-width: 768px) {
  .page_reasons_block section.reasons .block .img {
    width: 100%;
  }
}
.page_reasons_block section.reasons .block .text_area {
  width: 55%;
}
@media (max-width: 768px) {
  .page_reasons_block section.reasons .block .text_area {
    width: 100%;
  }
}
.page_reasons_block section.reasons .block .mod-common_btn {
  max-width: 320px;
  margin-left: auto;
}
@media (max-width: 768px) {
  .page_reasons_block section.reasons .block .mod-common_btn {
    max-width: 280px;
    margin-left: auto;
    margin-right: auto;
  }
}
.page_reasons_block section.reasons .block.reverse {
  flex-direction: row-reverse;
}

.page_reasons_block section.reasons {
  padding-top: 150px;
  counter-reset: num;
}
.page_reasons_block section.reasons .text_area .title {
  position: relative;
  font-size: clamp(1.8rem, 2.4vw, 3rem);
  font-weight: 700;
  counter-increment: num;
  z-index: 1;
}
.page_reasons_block section.reasons .text_area .title::before {
  position: absolute;
  left: -30px;
  top: -10px;
  content: counter(num, decimal-leading-zero);
  font-size: clamp(5rem, 3.8vw, 7rem);
  font-family: "Montserrat", sans-serif;
  font-weight: 700;
  font-style: normal;
  line-height: 1;
  color: #42a088;
  opacity: 0.4;
  z-index: -1;
}
@media (max-width: 768px) {
  .page_reasons_block section.reasons .text_area .title::before {
    left: -10px;
    top: -10px;
  }
}

.page_reasons_block section.reasons .reverse .mod-common_btn {
  margin-left: 0;
  margin-right: auto;
}
@media (max-width: 768px) {
  .page_reasons_block section.reasons .reverse .mod-common_btn {
    margin: auto;
  }
}

.page_reasons_block .flow {
  padding-top: 200px;
}
.page_reasons_block .flow .pc_only {
  display: block;
  margin: auto;
}
@media (max-width: 768px) {
  .page_reasons_block .flow {
    padding: 80px 0;
  }
}
.page_reasons_block .flow .bg-secondary_light {
  padding: 80px 0;
}
@media (max-width: 768px) {
  .page_reasons_block .flow .bg-secondary_light {
    padding: 50px 0;
  }
}
.page_reasons_block .flow .container {
  display: flex;
  flex-wrap: wrap;
  column-gap: 5%;
  row-gap: 40px;
}
.page_reasons_block .flow .container .left {
  width: 55%;
}
@media (max-width: 768px) {
  .page_reasons_block .flow .container .left {
    width: 100%;
  }
}
.page_reasons_block .flow .container .img {
  width: 40%;
}
@media (max-width: 768px) {
  .page_reasons_block .flow .container .img {
    width: 100%;
  }
}
.page_reasons_block .flow .title {
  position: relative;
  font-size: clamp(2.1rem, 2.5vw, 3rem);
  padding-bottom: 10px;
  margin-bottom: 50px;
}
@media (max-width: 768px) {
  .page_reasons_block .flow .title {
    margin-bottom: 25px;
  }
}
.page_reasons_block .flow .title::before {
  position: absolute;
  left: 0;
  bottom: 0;
  content: "";
  width: 10%;
  height: 4px;
  background-color: #b9d000;
}
@media (max-width: 768px) {
  .page_reasons_block .flow .title::before {
    height: 2px;
  }
}
.page_reasons_block .flow .inner_title {
  font-size: clamp(1.6rem, 2vw, 2.4rem);
  font-weight: 700;
}

/********************************************/
/* business */
/********************************************/
.page_business {
  padding-bottom: 0;
}

.page_business_block .mod-page_head {
  margin-bottom: 0;
}
.page_business_block .bg-color {
  position: relative;
  padding: 120px 0;
}
@media (max-width: 768px) {
  .page_business_block .bg-color {
    padding: 60px 0;
  }
}

.page_business_block .activities {
  margin-top: 150px;
}
@media (max-width: 768px) {
  .page_business_block .activities {
    margin-top: 80px;
  }
}

.page_business_block .activities .service_list .contents {
  display: flex;
  flex-wrap: wrap;
  column-gap: 3%;
  row-gap: 10px;
}
.page_business_block .activities .service_list .contents:not(:last-child) {
  margin-bottom: 120px;
}
@media (max-width: 768px) {
  .page_business_block .activities .service_list .contents:not(:last-child) {
    margin-bottom: 60px;
  }
}
.page_business_block .activities .service_list .contents .img {
  width: 45%;
}
@media (max-width: 768px) {
  .page_business_block .activities .service_list .contents .img {
    width: 100%;
  }
}
.page_business_block .activities .service_list .contents .text_area {
  width: 52%;
}
@media (max-width: 768px) {
  .page_business_block .activities .service_list .contents .text_area {
    width: 100%;
  }
}

.page_business_block .activities .service_list .text_area .inner_title {
  padding-bottom: 20px;
  font-size: clamp(2rem, 2.4vw, 3.5rem);
  font-weight: 700;
  letter-spacing: 0.15em;
  text-align: left;
  color: #42a088;
}
@media (max-width: 768px) {
  .page_business_block .activities .service_list .text_area .inner_title {
    padding-bottom: 0;
  }
}
.page_business_block .activities .service_list .bg-white {
  padding: 20px 25px;
  border-radius: 20px;
  background-color: #e8f3f0;
}
@media (max-width: 768px) {
  .page_business_block .activities .service_list .bg-white {
    padding: 10px;
    border-radius: 10px;
  }
}
.page_business_block .activities .service_list .bg-white dl {
  display: flex;
  flex-wrap: wrap;
  column-gap: 20px;
}
@media (max-width: 768px) {
  .page_business_block .activities .service_list .bg-white dl {
    flex-direction: column;
  }
}
.page_business_block .activities .service_list .bg-white dt {
  font-size: clamp(1.3rem, 1.3vw, 1.5rem);
  color: #42a088;
  font-weight: 700;
}
@media (max-width: 768px) {
  .page_business_block .activities .service_list .bg-white dt {
    display: block;
  }
}
.page_business_block .activities .service_list .bg-white dd {
  font-size: clamp(1.3rem, 1.3vw, 1.5rem);
}
@media (max-width: 768px) {
  .page_business_block .activities .service_list .bg-white dd {
    display: block;
  }
}

.page_business_block .activities .target {
  margin-bottom: 150px;
  padding: 40px 50px;
}
@media (max-width: 768px) {
  .page_business_block .activities .target {
    margin-bottom: 80px;
    padding: 30px 20px;
  }
}
.page_business_block .activities .target .target_title {
  padding-bottom: 30px;
  font-size: clamp(1.6rem, 2.3vw, 2.4rem);
  font-weight: 700;
  color: #fff;
  text-align: center;
}
.page_business_block .activities .target ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  column-gap: 5%;
  row-gap: 30px;
}
.page_business_block .activities .target ul li {
  width: 16%;
}
@media (max-width: 768px) {
  .page_business_block .activities .target ul li {
    width: 30%;
  }
}
.page_business_block .activities .target figcaption {
  padding-top: 10px;
  font-size: clamp(1.4rem, 1.6vw, 1.6rem);
  text-align: center;
  color: #fff;
}

/********************************************/
/* works */
/********************************************/
.page_works_block .works .img_length {
  display: flex;
  gap: 10px;
  margin-bottom: 100px;
}
@media (max-width: 768px) {
  .page_works_block .works .img_length {
    overflow: scroll;
    margin-bottom: 50px;
  }
}
@media (max-width: 768px) {
  .page_works_block .works .img_length img {
    display: block;
    max-width: 300px;
  }
}

.page_works_block .works .works_list {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 5%;
  row-gap: 30px;
}
.page_works_block .works .works_list .item {
  text-align: center;
  width: 30%;
}
@media (max-width: 580px) {
  .page_works_block .works .works_list .item {
    width: 100%;
  }
}
.page_works_block .works .works_list .img img {
  display: block;
  margin-bottom: 10px;
  max-width: 210px;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
}
@media (max-width: 768px) {
  .page_works_block .works .works_list .img img {
    max-width: 150px;
    margin-bottom: 5px;
  }
}
.page_works_block .works .works_list .img figcaption {
  font-size: clamp(2.4rem, 2.2vw, 3rem);
  font-weight: 700;
  line-height: 1.3;
}
.page_works_block .works .works_list .title {
  font-size: clamp(1.8rem, 2.3vw, 2.5rem);
  color: #42a088;
  font-weight: 700;
}
.page_works_block .works .works_list .title .num {
  font-size: clamp(2.4rem, 3.3vw, 3.4rem);
}

/********************************************/
/* news */
/********************************************/
.page_news_block .container {
  display: flex;
  flex-wrap: wrap;
  column-gap: 5%;
}
.page_news_block .container .sidebar {
  width: 20%;
  padding-right: 20px;
  border-right: 1px solid #e8f3f0;
}
@media (max-width: 1024px) {
  .page_news_block .container .sidebar {
    width: 100%;
    border-right: none;
    margin-bottom: 30px;
  }
}
.page_news_block .container .post_list {
  width: 75%;
}
@media (max-width: 1024px) {
  .page_news_block .container .post_list {
    width: 100%;
  }
}

.page_news_block .sidebar .ac-half_title {
  margin-bottom: 10px;
}
.page_news_block .sidebar .ac-half_title .text {
  font-size: clamp(1.6rem, 1.7vw, 2rem);
  padding-left: 20px;
  font-weight: 700;
}
.page_news_block .sidebar .ac-half_title .text::before,
.page_news_block .sidebar .ac-half_title .text::after {
  width: 10px;
  height: 10px;
}
@media (max-width: 1024px) {
  .page_news_block .sidebar .scrolled {
    overflow-x: scroll;
  }
}
@media (max-width: 1024px) {
  .page_news_block .sidebar .category_list {
    display: flex;
    width: max-content;
    column-gap: 10px;
  }
}
@media (max-width: 1024px) {
  .page_news_block .sidebar .category_list .item {
    width: max-content;
  }
}
.page_news_block .sidebar .category_list .item:not(:last-child) {
  margin-bottom: 10px;
}
@media (max-width: 1024px) {
  .page_news_block .sidebar .category_list .item:not(:last-child) {
    margin-bottom: 0;
  }
}
.page_news_block .sidebar .category_list .item a {
  font-size: clamp(1.2rem, 1.5vw, 1.4rem);
  font-weight: 500;
}
@media (max-width: 1024px) {
  .page_news_block .sidebar .category_list .item a {
    display: inline-block;
    padding: 8px 15px;
    border: 1px solid #e8f3f0;
    background-color: #63b09c;
    border-radius: 40px;
    color: #fff;
  }
}

.page_news_block .post_list .post:last-child {
  border-bottom: 1px solid #e8f3f0;
}
.page_news_block .post_list .post:not(:first-child) {
  border-top: 1px solid #e8f3f0;
}
.page_news_block .post_list .post a {
  position: relative;
  display: block;
  padding: 30px 0;
  padding-right: 50px;
  transition: all 0.3s;
}
.page_news_block .post_list .post a::after {
  position: absolute;
  right: 0;
  top: 50%;
  content: "";
  width: 40px;
  height: 40px;
  background: url(../img/ico/ico-circle-secondary.svg) no-repeat center/contain;
  transform: translateY(-50%) scale(1);
  transition: all 0.3s;
}
@media (max-width: 1024px) {
  .page_news_block .post_list .post a::after {
    width: 30px;
    height: 30px;
  }
}
.page_news_block .post_list .post a:hover::after {
  transform: translateY(-50%) scale(1.1);
}
.page_news_block .post_list .post a:hover .post_title {
  color: #42a088;
}
@media (max-width: 768px) {
  .page_news_block .post_list .post a {
    padding: 20px 0;
    padding-right: 40px;
  }
}
.page_news_block .post_list .box {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  column-gap: 20px;
  row-gap: 10px;
  margin-bottom: 20px;
}
@media (max-width: 768px) {
  .page_news_block .post_list .box {
    flex-direction: column;
    align-items: flex-start;
  }
}
.page_news_block .post_list .box .date {
  font-size: clamp(1.4rem, 1.5vw, 1.6rem);
  font-weight: 500;
}
.page_news_block .post_list .box .cats {
  display: inline-flex;
  flex-wrap: wrap;
  column-gap: 10px;
  row-gap: 5px;
}
.page_news_block .post_list .box .cats .cat {
  display: inline-block;
  padding: 3px 10px;
  border: 1px solid #e8f3f0;
  font-size: clamp(1.4rem, 1.5vw, 1.6rem);
}
.page_news_block .post_list .post_title {
  font-size: clamp(1.6rem, 1.8vw, 2rem);
  font-weight: 700;
  transition: all 0.3s;
}

/********************************************/
/* news_single */
/********************************************/
.page_single_block .details {
  display: flex;
  align-items: center;
  column-gap: 20px;
  margin-bottom: 30px;
}
@media (max-width: 768px) {
  .page_single_block .details {
    flex-direction: column;
    align-items: flex-start;
    row-gap: 10px;
  }
}
.page_single_block .details .date {
  font-size: clamp(1.4rem, 1.5vw, 1.6rem);
  font-weight: 500;
}
.page_single_block .details .cats {
  display: inline-flex;
  flex-wrap: wrap;
  column-gap: 10px;
  row-gap: 5px;
}
.page_single_block .details .cats .cat {
  display: inline-block;
  padding: 3px 10px;
  border: 1px solid #e8f3f0;
  font-size: clamp(1.4rem, 1.5vw, 1.6rem);
}

.page_single_block .post_title {
  font-size: clamp(1.8rem, 2.3vw, 2.4rem);
  font-weight: 700;
  padding-bottom: 40px;
}
.page_single_block .single_pagination {
  display: flex;
  justify-content: space-between;
  margin-top: 150px;
  margin-bottom: 80px;
  margin-left: auto;
  margin-right: auto;
}
.page_single_block .single_pagination .prev {
  padding-left: 50px;
}
@media (max-width: 768px) {
  .page_single_block .single_pagination .prev {
    padding-left: 40px;
  }
}
.page_single_block .single_pagination .next {
  padding-right: 50px;
}
@media (max-width: 768px) {
  .page_single_block .single_pagination .next {
    padding-right: 40px;
  }
}
.page_single_block .single_pagination .prev,
.page_single_block .single_pagination .next {
  position: relative;
  display: inline-block;
  font-size: clamp(1.5rem, 1.7vw, 1.8rem);
  font-weight: 700;
  transition: all 0.3s;
}
.page_single_block .single_pagination .prev::before,
.page_single_block .single_pagination .next::before {
  position: absolute;
  top: 50%;
  content: "";
  width: 40px;
  height: 40px;
  background: url(../img/ico/ico-circle-arrow-right.svg) no-repeat center/contain;
  transform: translateY(-50%) scale(1);
}
@media (max-width: 768px) {
  .page_single_block .single_pagination .prev::before,
  .page_single_block .single_pagination .next::before {
    width: 30px;
    height: 30px;
  }
}
.page_single_block .single_pagination .prev:hover,
.page_single_block .single_pagination .next:hover {
  color: #42a088;
}
.page_single_block .single_pagination .next::before {
  right: 0;
}
.page_single_block .single_pagination .prev::before {
  left: 0;
  transform: translateY(-50%) rotate(-180deg);
}
.page_single_block .mod-common_btn {
  max-width: 300px;
  margin-left: auto;
  margin-right: auto;
}

/********************************************/
/* contatct */
/********************************************/
.page_contact_block .tel_box {
  max-width: 800px;
  margin-right: auto;
  margin-left: auto;
  padding: 50px;
  background-color: #e8f3f0;
  border-radius: 40px;
}
@media (max-width: 768px) {
  .page_contact_block .tel_box {
    padding: 20px 20px;
  }
}
.page_contact_block .tel_box .num {
  position: relative;
  display: inline-block;
  padding-left: 30px;
  font-size: clamp(2.3rem, 3.6vw, 3rem);
  font-family: "Oswald", sans-serif;
  font-weight: 700;
}
@media (max-width: 768px) {
  .page_contact_block .tel_box .num {
    padding-left: 15px;
  }
}
.page_contact_block .tel_box .num::before {
  position: absolute;
  left: -20px;
  top: 50%;
  content: "";
  width: 40px;
  height: 40px;
  background: url(../img/ico/ico-tel.svg) no-repeat center/contain;
  transform: translateY(-50%);
}
@media (max-width: 768px) {
  .page_contact_block .tel_box .num::before {
    width: 25px;
    height: 25px;
  }
}

/********************************************/
/* recruit - interview */
/********************************************/
.page_interview_block .description {
  margin-top: 100px;
  display: block;
  margin-bottom: 150px;
  font-size: clamp(1.6rem, 2.1vw, 2.6rem);
  font-weight: 700;
}
@media (max-width: 768px) {
  .page_interview_block .description {
    margin-bottom: 80px;
    margin-top: 60px;
  }
}

.page_interview_block .interview {
  padding-bottom: 200px;
}
@media (max-width: 768px) {
  .page_interview_block .interview {
    padding-bottom: 80px;
  }
}
.page_interview_block .interview .block.mb {
  margin-bottom: 200px;
}
@media (max-width: 768px) {
  .page_interview_block .interview .block.mb {
    margin-bottom: 80px;
  }
}
.page_interview_block .interview .container {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 50px;
}
.page_interview_block .interview .container .left {
  width: 40%;
  background: linear-gradient(-185deg, rgb(66, 160, 136) 0%, rgb(185, 208, 0) 100%);
}
@media (max-width: 768px) {
  .page_interview_block .interview .container .left {
    width: 100%;
    order: 2;
  }
}
.page_interview_block .interview .container .img {
  width: 60%;
}
@media (max-width: 768px) {
  .page_interview_block .interview .container .img {
    width: 100%;
    order: 1;
  }
}

.page_interview_block .interview .left {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  padding: 20px 20px 50px 20px;
}
@media (max-width: 768px) {
  .page_interview_block .interview .left {
    padding-bottom: 25px;
  }
}
.page_interview_block .interview .left .num {
  display: block;
  line-height: 1;
  font-size: clamp(4rem, 5.8vw, 7rem);
  font-family: "Montserrat", sans-serif;
  font-weight: 700;
  font-style: normal;
  letter-spacing: 0.05em;
}
@media (max-width: 768px) {
  .page_interview_block .interview .left .num {
    padding-bottom: 24px;
  }
}
.page_interview_block .interview .left .num sup {
  font-size: clamp(2rem, 2.5vw, 4rem);
}
.page_interview_block .interview .left .position {
  font-size: clamp(1.4rem, 1.8vw, 2rem);
  font-weight: 700;
  line-height: 1.5;
}
.page_interview_block .interview .left .name {
  font-size: clamp(2.3rem, 2.9vw, 3.5rem);
  font-weight: 700;
}

.page_interview_block .details {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
  max-width: 900px;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 50px;
  padding: 30px;
  background-color: #e8f3f0;
}
@media (max-width: 768px) {
  .page_interview_block .details {
    margin-bottom: 30px;
    padding: 20px;
  }
}
.page_interview_block .details .inner_title {
  padding-bottom: 10px;
  font-size: 1.4rem;
  font-weight: 500;
  color: #42a088;
}
.page_interview_block .details .skill, .page_interview_block .details .work {
  width: calc((100% - 20px) / 2);
}
@media (max-width: 768px) {
  .page_interview_block .details .skill, .page_interview_block .details .work {
    width: 100%;
  }
}
.page_interview_block .details li {
  position: relative;
  padding-left: 20px;
  font-size: 1.4rem;
}
.page_interview_block .details li::before {
  position: absolute;
  left: 0;
  top: 0;
  content: "●";
  color: #42a088;
}

.page_interview_block .fa_container {
  margin-bottom: 80px;
}
@media (max-width: 768px) {
  .page_interview_block .fa_container {
    margin-bottom: 50px;
  }
}
.page_interview_block .fa_container .question:not(:last-child) {
  margin-bottom: 70px;
}
@media (max-width: 768px) {
  .page_interview_block .fa_container .question:not(:last-child) {
    margin-bottom: 40px;
  }
}
.page_interview_block .fa_container .inner_title {
  display: block;
  position: relative;
  padding-left: 35px;
  margin-bottom: 20px;
  font-size: clamp(1.6rem, 1.9vw, 2.4rem);
  font-weight: 700;
  color: #42a088;
}
@media (max-width: 768px) {
  .page_interview_block .fa_container .inner_title {
    padding-left: 25px;
    margin-bottom: 10px;
  }
}
.page_interview_block .fa_container .inner_title::before {
  position: absolute;
  left: 0;
  top: 0;
  content: "Q.";
  line-height: 1.4;
  font-size: clamp(2rem, 2.4vw, 3rem);
  font-weight: 700;
  color: #f18c9d;
}
.page_interview_block .fa_container p {
  font-weight: 500;
}

.page_interview_block .stepup .common_title {
  margin-bottom: 100px;
  background: linear-gradient(-185deg, rgb(66, 160, 136) 0%, rgb(185, 208, 0) 100%);
}
@media (max-width: 768px) {
  .page_interview_block .stepup .common_title {
    margin-bottom: 50px;
  }
}
.page_interview_block .stepup .common_title .title {
  font-size: clamp(2.3rem, 2.9vw, 4rem);
  font-weight: 700;
  color: #fff;
  text-align: center;
  letter-spacing: 0.05em;
}
@media (max-width: 480px) {
  .page_interview_block .stepup .scrolled {
    overflow-x: scroll;
  }
}
@media (max-width: 480px) {
  .page_interview_block .stepup .img {
    width: 600px;
  }
}

/********************************************/
/* recruit - benefits */
/********************************************/
.page_benefits_block .description {
  display: block;
  margin-top: 100px;
  margin-bottom: 150px;
  font-size: clamp(1.6rem, 2.1vw, 2.6rem);
  font-weight: 700;
}
@media (max-width: 768px) {
  .page_benefits_block .description {
    margin-top: 60px;
    margin-bottom: 80px;
  }
}

.page_benefits_block .common_title {
  margin-bottom: 60px;
  background: linear-gradient(-185deg, rgb(66, 160, 136) 0%, rgb(185, 208, 0) 100%);
}
@media (max-width: 768px) {
  .page_benefits_block .common_title {
    margin-bottom: 30px;
  }
}
.page_benefits_block .common_title .title {
  font-size: clamp(2.3rem, 2.9vw, 4rem);
  font-weight: 700;
  color: #fff;
  text-align: center;
  letter-spacing: 0.05em;
}

.page_benefits_block .benefits {
  margin-bottom: 150px;
}
@media (max-width: 768px) {
  .page_benefits_block .benefits {
    margin-bottom: 80px;
  }
}
.page_benefits_block .benefits .benefits_list {
  max-width: 1000px;
  margin-left: auto;
  margin-right: auto;
}
.page_benefits_block .benefits dl {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  column-gap: 2%;
  row-gap: 5px;
}
.page_benefits_block .benefits dl:not(:last-of-type) {
  margin-bottom: 25px;
}
.page_benefits_block .benefits dl dt {
  position: relative;
  width: 20%;
  padding-left: 35px;
  font-size: clamp(1.5rem, 1.7vw, 1.8rem);
  font-weight: 700;
  color: #42a088;
}
@media (max-width: 768px) {
  .page_benefits_block .benefits dl dt {
    padding-left: 25px;
    width: 100%;
  }
}
.page_benefits_block .benefits dl dt::before {
  position: absolute;
  left: 0;
  top: 6px;
  content: "";
  width: 18px;
  height: 18px;
  background: url(../img/recruit-benefits/ico-check.svg) no-repeat center/contain;
}
@media (max-width: 768px) {
  .page_benefits_block .benefits dl dt::before {
    width: 15px;
    height: 15px;
  }
}
.page_benefits_block .benefits dl dd {
  width: 78%;
}
@media (max-width: 768px) {
  .page_benefits_block .benefits dl dd {
    width: 100%;
  }
}

.page_benefits_block .training {
  counter-reset: num;
}
.page_benefits_block .training .bg-secondary_light {
  padding: 40px;
}
@media (max-width: 768px) {
  .page_benefits_block .training .bg-secondary_light {
    padding: 25px;
  }
}
.page_benefits_block .training .inner_title {
  position: relative;
  padding-left: 120px;
  counter-increment: num;
  font-size: clamp(1.8rem, 2.5vw, 3rem);
  font-weight: 700;
  letter-spacing: 0.01em;
  margin-bottom: 30px;
}
@media (max-width: 768px) {
  .page_benefits_block .training .inner_title {
    padding-left: 60px;
  }
}
.page_benefits_block .training .inner_title::before {
  position: absolute;
  left: 0;
  top: 50%;
  content: counter(num, decimal-leading-zero);
  font-size: clamp(3.5rem, 6.4vw, 7rem);
  color: #63b09c;
  font-family: "Montserrat", sans-serif;
  font-weight: 700;
  font-style: normal;
  transform: translateY(-50%);
}
.page_benefits_block .training .inner_title::after {
  position: absolute;
  bottom: -10px;
  left: 0;
  content: "";
  width: 45px;
  height: 3px;
  background-color: #b9d000;
}
@media (max-width: 768px) {
  .page_benefits_block .training .inner_title::after {
    width: 30px;
    height: 2px;
    bottom: -5px;
  }
}

/********************************************/
/* pelp */
/********************************************/
.page_pelp_block .pelp_fv .title {
  padding-bottom: 30px;
  font-size: clamp(1.6rem, 1.7vw, 1.8rem);
  font-weight: 500;
}

.page_pelp_block .about .bg-gray {
  padding: 100px 0;
}
@media (max-width: 768px) {
  .page_pelp_block .about .bg-gray {
    padding: 60px 0;
  }
}
.page_pelp_block .about .title {
  position: relative;
  display: inline-block;
  margin-bottom: 100px;
  padding-left: 60px;
  font-size: clamp(2rem, 3.1vw, 3.2rem);
  font-weight: 700;
  color: #3175d6;
}
.page_pelp_block .about .title::before {
  position: absolute;
  right: 85%;
  top: 50%;
  content: "";
  width: 150px;
  height: 140px;
  background: url(../img/pelp/pelp_about_pct.webp) no-repeat center/contain;
  transform: translateY(-50%);
}
@media (max-width: 768px) {
  .page_pelp_block .about .title {
    margin-bottom: 50px;
    padding-left: 30px;
  }
  .page_pelp_block .about .title::before {
    width: 60px;
    height: 50px;
    right: 90%;
  }
}
.page_pelp_block .about .flex {
  display: flex;
  flex-wrap: wrap;
  column-gap: 3%;
  row-gap: 20px;
}
.page_pelp_block .about .flex li {
  width: 31.3333333333%;
  padding: 32px;
  border: 1px solid #3175d6;
  background-color: #fff;
}
@media (max-width: 768px) {
  .page_pelp_block .about .flex li {
    width: 100%;
    padding: 20px;
  }
}
.page_pelp_block .about .inner_title {
  padding-bottom: 10px;
  border-bottom: 1px solid #3175d6;
  font-size: clamp(1.6rem, 2vw, 2rem);
  font-weight: 700;
}
.page_pelp_block .about .txt_base {
  padding-top: 10px;
}

.page_pelp_block .flow {
  padding-top: 120px;
}
@media (max-width: 768px) {
  .page_pelp_block .flow {
    padding-top: 60px;
  }
}

.page_pelp_block .flow .details {
  display: flex;
  column-gap: 10px;
  max-width: 1000px;
  margin-left: auto;
  margin-right: auto;
  border: 2px #009c34 solid;
}
@media (max-width: 768px) {
  .page_pelp_block .flow .details {
    padding: 20px 30px;
    display: block;
  }
}
.page_pelp_block .flow .details .img {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 20px;
  background-color: #019c36;
}
@media (max-width: 768px) {
  .page_pelp_block .flow .details .img {
    display: block;
    margin-bottom: 30px;
  }
}
.page_pelp_block .flow .details img {
  display: block;
  max-width: 238px;
  margin-left: auto;
  margin-right: auto;
}
.page_pelp_block .flow .details .text_area {
  padding: 20px;
}
@media (max-width: 768px) {
  .page_pelp_block .flow .details .text_area {
    padding: 0;
  }
}
.page_pelp_block .flow .details .title {
  font-size: clamp(1.6rem, 1.9vw, 2rem);
  font-weight: 500;
  color: #019c36;
}/*# sourceMappingURL=page.css.map */