body {
    position: relative;
    font-family: "Noto Sans JP", serif;
}
/* 管理バーの高さ分（PC） */
body .admin-bar #header {
  top: 32px;
}
 /* スマホ表示時の管理バーの高さ */
@media screen and (max-width: 782px) {
    body .admin-bar #header {
      top: 46px;
    }
  }
.l-content {
    max-width: unset;
    padding-left: 0;
    padding-right: 0;
    margin-bottom: 0;
    z-index: unset;
    padding-top: 100px !important;
    display: block;
}
@media only screen and (max-width: 980px) {
    .l-content {
        padding-top: 90px !important;
    }
}
@media only screen and (max-width: 680px) {
    .l-content {
        padding-top: 85px !important;
    }
}
.l-article {
    max-width: unset;
}
.c-pageTitle {
    display: none;
}
.l-mainContent__inner>.post_content {
    margin: 0;
    padding: 0;
}
h2, h3, h4, h5, h6 {
    all: unset;
    /* すべてのスタイルをリセット */
}
img {
    width: 100%;
}
.pc {
    display: block !important;
  }
  .pc_tab {
    display: block;
  }
  .sp {
    display: none !important;
  }
  .tab_only {
    display: none !important;
  }
  .sp_only {
    display: none !important;
  }
  
  @media only screen and (max-width: 980px) {
    .pc {
      display: none !important;
    }
    .sp {
      display: block !important;
    }
    .tab_only {
      display: block !important;
    }
  }
  
  @media only screen and (max-width: 680px) {
    .pc_tab {
      display: none !important;
    }
    .sp_only {
      display: block !important;
    }
    .tab_only {
      display: none !important;
    }
  }
.pc_br {
    display: inline;
}
.pc_tab_br {
    display: inline;
}
.tab_only_br {
    display: none;
}
.sp_br {
    display: none;
}
.sp_only_br {
    display: none;
}
@media only screen and (max-width: 980px) {
    .sp_br {
        display: inline;
    }
    .tab_only_br {
        display: inline;
    }
    .pc_br {
        display: none;
    }
}
@media only screen and (max-width: 680px) {
    .sp_only_br {
        display: inline;
    }
    .pc_tab_br {
        display: none;
    }
    .tab_only_br {
        display: none;
    }
}
/* 共通ここから */
.section_inner {
    max-width: 1180px;
    width: 100%;
    margin: auto;
}
@media only screen and (max-width: 1250px) {
    .section_inner {
        padding: 0 20px;
    }
}
.section_main_title,
.section_sub_title {
    display: block;
    font-weight: bold;
    color: #03C75A!important;
    text-align: center;
    letter-spacing: 0.1em;
    margin: 0!important;
}
.section_main_title {
    font-size: 40px!important;
    margin-bottom: 30px!important;
}
.section_sub_title {
    font-size: 24px!important;
    margin-bottom: 15px!important;
}
.section_main_text {
    font-size: 20px;
    font-weight: bold;
    color: #03C75A;
    line-height: 1.9;
    letter-spacing: 0.1em;
}
.section_text {
    font-size: 16px;
    font-weight: 500;
    color: #333;
    line-height: 2;
    letter-spacing: 0.1em;
}
@media only screen and (max-width: 980px) {
    .section_main_title {
        font-size: 36px!important;
    }
    .section_sub_title {
        font-size: 22px!important;
    }
}
@media only screen and (max-width: 680px) {
    .section_main_title {
        font-size: 32px!important;
    }
    .section_sub_title {
        font-size: 20px!important;
    }
}
.more_btn {
    text-align: center;
}
.more_btn_link {
    position: relative;
    display: block;
    padding: 25px 0;
    width: 100%;
    border: 3px solid #4C826B;
    border-radius: 50px;
    background-color: #fff;
    font-size: 24px;
    font-weight: 900;
    letter-spacing: 0.1em;
    color: #4C826B;
}
.more_btn_link:hover {
    background-color: #4C826B;
    color: #fff;
}
.more_btn_link::after {
    position: absolute;
    content: "";
    top: 0;
    bottom: 0;
    right: 25px;
    margin: auto;
    width: 17px;
    height: 17px;
    background-image: url("/wp-content/uploads/2025/04/arrow_icon_green.webp");
    background-size: cover;
}
.more_btn_link:hover::after {
    background-image: url("/wp-content/uploads/2025/04/arrow_icon_white.webp");
}
.green {
    color: #4C826B!important;
}

.yellow_more_btn_link {
    display: block;
    width: 100%;
    padding: 25px 0;
    border: 3px solid #FFA12A;
    border-radius: 50px;
    background-color: #FFA12A;
    color: #fff;
    font-size: 24px;
    font-weight: 900;
    letter-spacing: 0.1em;
}
.yellow_more_btn_link:hover {
    background-color: #fff;
    color: #FFA12A;
}
.border_btn {
    max-width: 380px;
}
.border_btn_link {
    width: 100%;
    padding: 25px 0;
    border: 3px solid #4C826B;
    border-radius: 10px;
    background-color: #fff;
    color: #4C826B;
    font-size: 20px;
    font-weight: 900;
    letter-spacing: 0.1em;
    text-align: center;
    display: flex;
    justify-content: center;
    align-items: center;
}
.border_btn_link:hover {
    background-color: #4C826B;
    color: #fff;
}
@media only screen and (max-width: 980px) {
    .more_btn_link,
    .yellow_more_btn_link {
        padding: 15px 0;
        font-size: 20px;
    }
}
@media only screen and (max-width: 680px) {
    .more_btn_link,
    .yellow_more_btn_link {
        font-size: 16px;
    }
}
.wrapper {
    padding-top: 100px;
}
/* 共通ここまで */
/* メインビジュアルここから */
.mv {
    padding: 100px 0 80px;
    background-color: rgba(84,189,130,0.15);
}
.mv_inner {
    position: relative;
    max-width: 1180px;
    width: 100%;
    margin: auto;
}
.mv_text_box {
    position: relative;
    padding-top: 40px;
    z-index: 2;
}
.mv_title {
    margin-bottom: 25px;
}
.mv_title h1 {
    display: block;
    color: #4C826B;
    font-size: 48px!important;
    font-weight: bold;
    letter-spacing: 0.05em;
    line-height: 1.6!important;
}
.mv_title h1 span {
    display: inline-block;
    background-color: rgba(255,255,255,0.97);
    padding: 0 10px;
}
.mv_text_container {
    margin-bottom: 75px;
}
.mv_text:last-child {
    margin-top: 5px;
}
.mv_text p {
    display: inline-block;
    padding: 4px 12px;
    background-color: #4C826B;
    color: #fff;
    font-size: 22px;
    font-weight: bold;
    line-height: 1.72;
}
.mv_more_btn {
    text-align: center;
}
.mv_more_btn_link {
    display: block;
    background-color: #FFA12A;
    border: 3px solid #FFA12A;
    color: #fff;
    border-radius: 60px;
    padding: 25px 0;
    max-width: 455px;
    width: 100%;
    font-size: 28px;
    font-weight: bold;
}
.mv_more_btn_link:hover {
    background-color: #fff;
    color: #FFA12A;
}
.mv_more_btn_link span {
    position: relative;
    padding-left: 60px;
}
.mv_more_btn_link span::after {
    position: absolute;
    content: "";
    top: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    width: 40px;
    height: 30px;
    background-image: url("/wp-content/uploads/2025/04/mail_icon_white.webp");
    background-size: cover;
}
.mv_more_btn_link:hover span::after {
    background-image: url("/wp-content/uploads/2025/04/mail_icon_yellow.webp");
}
.mv_img {
    position: absolute;
    top: 0;
    right: 0;
    max-width: 710px;
    width: 70%;
    aspect-ratio: 71 / 43;
    z-index: 1;
}
.mv_img img {
    width: 100%;
}
@media only screen and (max-width: 1250px) {
    .mv_inner {
        padding: 0 20px;
    }
    .mv_img {
        right: 20px;
    }
}
@media only screen and (max-width: 980px) {
    .mv {
        padding: 80px 0 50px;
    }
    .mv_title_container {
        position: relative;
    }
    .mv_title {
        margin-bottom: 0px;
    }
    .mv_title h1 {
        font-size: 36px!important;
    }
    .mv_text_container {
        margin-bottom: 50px;
    }
    .mv_text_box {
        padding: 0;
    }
    .mv_text p {
        font-size: 20px;
    }
    .mv_img {
        position: static;
        margin: auto;
        width: 80%;
        margin-top: -30px;
        margin-bottom: 30px;
    }
    .mv_more_btn_link {
        padding: 15px 0;
        font-size: 24px;
        margin: auto;
    }
    .mv_more_btn_link span {
        padding-left: 40px;
    }
    .mv_more_btn_link span::after {
        width: 30px;
        height: 20px;
    }
}
@media only screen and (max-width: 680px) {
    .mv {
        padding: 40px 0 35px;
    }
    .mv_title_container {
        margin-bottom: 0px;
    }
    .mv_title {
        margin-bottom: 5px;
    }
    .mv_title:last-child {
        margin-bottom: 0;
    }
    .mv_title h1 {
        font-size: 25px!important;
    }
    .mv_title h1 span {
        padding: 0 5px;
    }
    .mv_img {
        margin-top: -10px;
    }
    .mv_text_container {
        margin-bottom: 40px;
    }
    .mv_text p {
        font-size: 16px;
    }
    .mv_more_btn_link {
        font-size: 16px;
    }
    .mv_more_btn_link span {
        padding-left: 30px;
    }
    .mv_more_btn_link span::after {
        width: 23px;
        height: 17px;
    }
}
/* メインビジュアルここまで */
/* top_aboutここから */
.top_about {
    padding: 55px 0;
}
.top_about_container {
    position: relative;
    text-align: center;
    background-color: #03C75A;
    padding: 55px 0;
    box-shadow: 4px 4px 4px 4px rgba(0, 0, 0, 0.07);
    border-radius: 50px;
}
.top_about_container::before {
    position: absolute;
    content: "";
    left: 70px;
    bottom: 30px;
    width: 160px;
    height: 210px;
    background-image: url("/wp-content/uploads/2025/04/top_about_bg_1.webp");
    background-size: cover;
}
.top_about_container::after {
    position: absolute;
    content: "";
    right: 70px;
    bottom: 30px;
    width: 160px;
    height: 210px;
    background-image: url("/wp-content/uploads/2025/04/top_about_bg_2.webp");
    background-size: cover;

}
.top_section_sub_title {
    font-family: "Ubuntu", serif;
    display: block;
    font-size: 24px!important;
    font-weight: bold;
    letter-spacing: 0.1em;
    line-height: 1.4!important;
    margin: 0!important;
    margin-bottom: 5px!important;
}
.top_section_main_title {
    display: block;
    font-size: 48px!important;
    font-weight: bold;
    letter-spacing: 0.1em;
    line-height: 1.25!important;
    margin: 0!important;
    margin-bottom: 30px!important;
}
.top_about .top_section_sub_title,
.top_about .top_section_main_title {
    color: #fff;
}
.top_about_main_text {
    font-size: 28px;
    font-weight: bold;
    line-height: 1.4;
    letter-spacing: 0.1em;
    color: #fff;
    margin-bottom: 30px;
}
.top_about_sub_text {
    font-size: 20px;
    line-height: 1.75;
    letter-spacing: 0.05em;
    color: #fff;
    padding-bottom: 50px;
}

.top_about .more_btn_link {
    max-width: 300px;
    margin: auto;
}
@media only screen and (max-width: 1250px) {
    .top_about_container::after,
    .top_about_container::before {
        width: 150px;
        height: 180px;
    }
}
@media only screen and (max-width: 980px) {
    .top_about_container {
        padding-left: 15px;
        padding-right: 15px;
    }
    .top_section_sub_title {
        font-size: 22px!important;
    }
    .top_section_main_title {
        font-size: 40px!important;
        margin-bottom: 20px!important;
    }
    .top_about_main_text {
        font-size: 24px;
    }
    .top_about_sub_text {
        font-size: 18px;
        padding-bottom: 80px;
    }
    .top_about_container::after {
        right: 20px;
    }
    .top_about_container::before {
        left: 20px;
    }
}
@media only screen and (max-width: 680px) {
    .top_about {
        padding: 30px 0;
    }
    .top_about_container {
        padding-top: 30px;
        padding-bottom: 40px;
    }
    .top_section_sub_title {
        font-size: 20px!important;
    }
    .top_section_main_title {
        font-size: 36px!important;
        margin-bottom: 20px!important;
    }
    .top_about_main_text {
        font-size: 18px;
    }
    .top_about_sub_text {
        font-size: 14px;
        text-align: left;
        padding-bottom: 185px;
    }
    .top_about_container::after,
    .top_about_container::before {
        width: 100px;
        height: 130px;
        bottom: 125px;
    }
    .top_about_container::after {
        right: 20%;
    }
    .top_about_container::before {
        left: 20%;
    }
}
@media only screen and (max-width: 500px) {
    .top_about_container::after {
        right: 20px;
    }
    .top_about_container::before {
        left: 20px;
    }
    .top_about_main_text {
        font-size: 17px;
    }
}
/* top_aboutここまで */
/* top_serviceここから */
.top_service {
    padding: 60px 0 80px;
    background-color: #03C75A;
}
.top_service .top_section_sub_title {
    text-align: center;
    color: #fff;
}
.top_service .top_section_main_title {
    text-align: center;
    color: #fff;
    margin-bottom: 20px!important;
}
.top_service_text {
    text-align: center;
    font-size: 20px;
    color: #fff;
    margin-bottom: 50px;
}
.top_service .more_btn_link {
    max-width: 520px;
    margin: auto;
    padding-left: 30px;
}
.top_service .more_btn_link::after {
    left: 55px;
    right: unset;
    width: 21px;
    height: 22px;
    background-image: url("/wp-content/uploads/2025/04/triangle_icon_green.webp");
}
.top_service .more_btn_link:hover::after {
    background-image: url("/wp-content/uploads/2025/04/triangle_icon_white.webp");
}
@media only screen and (max-width: 980px) {
    .top_service {
        padding: 50px 0 60px;
    }
}
@media only screen and (max-width: 680px) {
    .top_service {
        padding: 50px 0;
    }
    .top_service .more_btn_link {
        font-size: 17px;
    }
    .top_service .more_btn_link::after {
        left: 22px;
        width: 17px;
        height: 20px;
    }
}
/* top_serviceここまで */
/* top_newsここから */
.top_news {
    background-color: #fff;
    padding: 75px 0;
}
.top_news_container {
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.top_news_title_box {
    max-width: 240px;
    width: 24%;
}
.top_news .top_section_sub_title {
    color: #4C826B;
    text-align: left;
    margin-bottom: 10px!important;
}
.top_news .top_section_main_title {
    color: #4C826B;
    text-align: left;
    margin-bottom: 30px!important;
}
.top_news .more_btn_link {
    padding: 20px 0;
    font-size: 20px;
}
.top_news_list {
    max-width: 870px;
    width: 75%;
}
.top_news_item {
    border-bottom: 0.5px solid #000;
}
.top_news_item_link {
    padding: 24px 10px;
    display: flex;
    gap: 35px;
}
.top_news_item_link:hover {
    opacity: 0.6;
}
.top_news_item_meta {
    display: flex;
    align-items: center;
    gap: 45px;
}
.top_news_item_date {
    font-size: 20px;
    font-weight: 500;
    color: #000;
}
.top_news_item_tag_list {
    display: flex;
    gap: 10px;
}
.top_news_item_tag {
    display: block;
    padding: 2px 30px;
    background-color: #03C75A;
    border: 1px solid #03C75A;
    color: #fff;
    font-size: 12px;
    font-weight: bold;
}
.top_news_item_tag:hover {
    background-color: #fff;
    color: #03C75A;
}
.top_news_item_title {
    font-size: 20px!important;
    font-weight: 500;
    line-height: 1.2;
    color: #000;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
@media only screen and (max-width: 1200px) {
    .top_news_item_link {
        gap: 20px;
    }
    .top_news_item_meta {
        gap: 20px;
    }
}
@media only screen and (max-width: 980px) {
    .top_news {
        padding: 50px 0;
    }
    .top_news_container {
        flex-direction: column;
    }
    .top_news_title_box {
        width: 100%;
        max-width: unset;
    }
    .top_news .top_section_sub_title,
    .top_news .top_section_main_title {
        text-align: center;
    }
    .top_news_list {
        max-width: unset;
        width: 100%;
        margin-bottom: 30px;
    }
    .top_news_item_meta {

    }
    .top_news_item_link {
        flex-direction: column;
        gap: 10px;
    }
    .top_news_item_date,
    .top_news_item_title {
        font-size: 18px;
    }
    .top_news .more_btn_link {
        max-width: 300px;
        width: 100%;
        padding: 15px 0;
    }
}
@media only screen and (max-width: 680px) {
    .top_news .more_btn {
        width: 300px;
    }
    .top_news .more_btn_link {
        font-size: 16px;
    }
}
/* top_newsここまで */
/* top_recruitここから */
.top_recruit {
    padding: 65px 0 85px;
    background-color: rgba(84, 189, 130, 0.15);
}
.top_recruit .section_inner {
    position: relative;
}
.top_recruit_container {
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.top_recruit_title_box {
    max-width: 415px;
    width: 50%;
}
.top_recruit .top_section_sub_title {
    margin-bottom: 15px!important;
}
.top_recruit .top_section_main_title {
    margin-bottom: 30px!important;
}
.top_recruit_text {
    font-size: 20px;
    font-weight: 500;
    letter-spacing: 0.1em;
    line-height: 1.5;
    color: #333;
    margin-bottom: 65px;
}
.top_recruit .more_btn_link {
    max-width: 300px;
}
.top_recruit_img {
    max-width: 520px;
    width: 45%;
}
@media only screen and (max-width: 980px) {
    .top_recruit {
        padding: 60px 0;
    }
    .top_recruit_text {
        margin-bottom: 30px;
    }

}
@media only screen and (max-width: 680px) {
    .top_recruit {
        padding: 50px 0;
    }
    .top_recruit_container {
        flex-direction: column;
    }
    .top_recruit .more_btn {
        width: 300px;
    }
    .top_recruit_title_box {
        max-width: unset;
        width: 100%;
        text-align: center;
    }
    .top_recruit_text {
        margin-bottom: 20px;
    }
    .top_recruit_img {
        max-width: unset;
        width: 80%;
        margin-bottom: 20px;
    }
}
/* top_recruitここまで */
/* contact_secここから */
.contact_sec {
    padding: 90px 0 100px;
    background-color: #03C75A;
}
.contact_sec_container {
    padding: 65px 0 70px;
    background-color: #fff;
    border-radius: 20px;
    text-align: center;
}
.contact_sec_container_inner {
    max-width: 965px;
    width: 100%;
    margin: auto;
}
.contact_sec_title {
    display: block;
    font-size: 40px!important;
    font-weight: bold;
    letter-spacing: 0.1em;
    color: #4C826B;
    line-height: 1.1!important;
    margin-bottom: 40px!important;
}
.contact_sec_text {
    font-size: 20px;
    font-weight: 500;
    letter-spacing: 0.1em;
    line-height: 1.5;
    margin-bottom: 55px;
}
.contact_sec_list {
    display: flex;
    justify-content: space-between;
    gap: 25px;
}
.contact_sec_item {
    width: 50%;
    border: 3px solid #509873;
    background-color: #E4EBE4;
    border-radius: 20px;
    padding: 24px 20px 30px;
    display: flex;
    flex-direction: column;
}
.contact_sec_item_title {
    font-size: 28px!important;
    font-weight: bold;
    letter-spacing: 0.1em;
    color: #333333;
    margin-bottom: 20px!important;
}
.contact_sec_item_number {
    display: block;
    font-size: 40px;
    font-weight: bold;
    color: #FFA12A;
    margin-bottom: 20px;
}
.contact_sec_item_number:hover {
    opacity: 0.6;
}
.contact_sec_item_number span {
    position: relative;
    text-decoration: underline;
    padding-left: 50px;
}
.contact_sec_item_number span::before {
    position: absolute;
    content: "";
    top: 5px;
    bottom: 0;
    left: 0;
    margin: auto;
    width: 40px;
    height: 40px;
    background-image: url("/wp-content/uploads/2025/04/tel_icon_yellow.webp");
    background-size: cover;
}

.contact_sec_item_time {
    font-size: 20px;
    font-weight: 500;
    color: #333;
}
.contact_sec .yellow_more_btn {
    margin-top: auto;
}
.contact_sec .yellow_more_btn_link {
    max-width: 300px;
    margin: auto;
}
.contact_sec .yellow_more_btn_link span {
    position: relative;
    padding-left: 40px;
}
.contact_sec .yellow_more_btn_link span::before {
    position: absolute;
    content: "";
    top: 5px;
    bottom: 0;
    left: 0;
    margin: auto;
    width: 24px;
    height: 17px;
    background-image: url("/wp-content/uploads/2025/04/mail_icon_white.webp");
    background-size: cover;
}
.contact_sec .yellow_more_btn_link:hover span::before {
    background-image: url("/wp-content/uploads/2025/04/mail_icon_yellow.webp");
}
@media only screen and (max-width: 1100px) {
    .contact_sec_container_inner {
        padding: 0 20px;
    }
}
@media only screen and (max-width: 980px) {
    .contact_sec {
        padding: 70px 0;
    }
    .contact_sec_container {
        padding: 50px 0 60px;
    }
    .contact_sec_title {
        font-size: 36px!important;
    }
    .contact_sec_text {
        margin-bottom: 40px;
    }
    .contact_sec_item_title {
        font-size: 24px!important;
    }
    .contact_sec_item_number {
        font-size: 36px;
    }
    .contact_sec_item_number span::before {
        width: 30px;
        height: 30px;
    }
}
@media only screen and (max-width: 680px) {
    .contact_sec {
        padding: 50px 0;
    }
    .contact_sec_container {
        padding: 30px 0 40px;
    }
    .contact_sec_title {
        font-size: 32px!important;
        margin-bottom: 15px!important;
    }
    .contact_sec_text {
        font-size: 18px;
        margin-bottom: 30px;
    }
    .contact_sec_list {
        flex-direction: column;
    }
    .contact_sec_item {
        width: 100%;
    }
    .contact_sec_item_title {
        font-size: 20px;
        margin-bottom: 15px!important;
    }
    .contact_sec_item_number {
        font-size: 28px;
        margin-bottom: 10px;
    }
    .contact_sec_item_number span {
        padding-left: 40px;
    }
    .contact_sec_item_number span::before {
        width: 30px;
        height: 30px;
    }
}
/* contact_secここまで */
/* サービスここから */
.page_mv {
    background-color: rgba(0, 153, 61, 0.10);
    padding: 95px 0 60px;
}
.page_mv_inner {
    position: relative;
    max-width: 1180px;
    width: 100%;
    margin: auto;
}
.page_mv_text_box {
    position: relative;
    z-index: 2;
}
.page_mv_title {
    margin-bottom: 55px;
}
.page_mv_title h1 {
    color: #fff;
    display: block;
    font-size: 40px!important;
    font-weight: bold;
    line-height: 1.2!important;
    margin-bottom: 10px!important;
}
.page_mv_title h1:last-child {
    margin-bottom: 0;
}
.page_mv_title h1 span {
    display: inline-block;
    background-color: #4C826B;
    padding: 5px 10px;
}
.page_mv_title h1 .text_dots {
    padding: 0;
    -webkit-text-emphasis: filled;
    text-emphasis: filled;
}
.page_mv_circle_container {
    display: flex;
    gap: 10px;
    margin-bottom: 55px;
}
.page_mv_circle {
    width: 170px;
}
.page_mv_img {
    position: absolute;
    top: 55px;
    bottom: 0;
    right: 0;
    margin: auto;
    max-width: 570px;
    width: 70%;
    aspect-ratio: 3 / 2;
    z-index: 1;
}
.page_mv_img img {
    width: 100%;
}
.page_mv_more_btn {
}
.page_mv_more_btn_link {
    display: block;
    border: 2px solid #FFA12A;
    background-color: #FFA12A;
    padding: 25px 0;
    max-width: 455px;
    font-size: 28px;
    font-weight: bold;
    text-align: center;
    color: #fff;
    border-radius: 60px;
}
.page_mv_more_btn_link:hover {
    background-color: #fff;
    color: #FFA12A;
}
@media only screen and (max-width: 1250px) {
    .page_mv_inner {
        padding: 0 20px;
    }
    .page_mv_img {
        right: 20px;
    }
}
@media only screen and (max-width: 980px) {
    .page_mv {
        padding: 70px 0 40px;
    }
    .page_mv_title {
        margin-bottom: 30px;
    }
    .page_mv_title h1 {
        font-size: 36px!important;
    }
    .page_mv_circle_container {
        margin-bottom: 150px;
    }
    .page_mv_circle {
        width: 120px;
    }
    .page_mv_more_btn_link {
        padding: 15px 0;
        font-size: 24px;
        max-width: 350px;
    }
    .page_mv_img {
        width: 55%;
        top: unset;
        bottom: 55px;
    }
}

@media only screen and (max-width: 680px) {
    .page_mv {
        padding: 50px 0 30px;
    }
    .page_mv_title h1 {
        font-size: 32px!important;
    }
    .page_mv_circle_container {
        margin-bottom: 20px;
    }
    .page_mv_img {
        position: static;
        width: 100%;
        margin-bottom: 30px;
    }
    .page_mv_more_btn_link {
        margin: auto;
        font-size: 20px;
    }

}
/* 導入実績 */
.achievements {
    padding: 30px 0;
}
.achievements_list {
    display: none;
}
.achievements_title {
    display: block;
    color: #333;
    text-align: center;
    font-size: 36px!important;
    font-weight: bold;
    line-height: 1.2!important;
    margin-bottom: 15px!important;
}
.achievements .achievements_text {
    color: #333;
    text-align: center;
    font-size: 24px;
    font-weight: bold;
}
.achievements_list {
    margin-top: 30px;
}
.achievements .slick-slide {
    margin: 0 25px;
}
@media only screen and (max-width: 980px) {
    .achievements_title {
        font-size: 32px!important;
    }
    .achievements .achievements_text {
        font-size: 22px;
    }
}

@media only screen and (max-width: 680px) {
    .achievements_title {
        font-size: 28px!important;
    }
    .achievements .achievements_text {
        font-size: 20px;
    }

}
/* このようなお悩みありませんか？ */
.problem {
    padding: 70px 0 50px;
    background-color: #F7F7F7;
}
.problem .section_main_title {
    color: #333!important;
    margin-bottom: 80px!important;
}
.problem_container {
    display: flex;
    justify-content: space-between;
}
.problem_text_container {
    max-width: 770px;
    width: 70%;
}
.problem_text_container_inner {
    padding: 33px 110px 33px 40px;
    background-image: url("/wp-content/uploads/2025/04/problem_text_container_bg_img.webp");
    background-size: 100% 100%;
}
.problem_list {
    padding-left: 0!important;
    list-style: none;
}
.problem_list li {
    position: relative;
    padding: 3px 0;
    padding-left: 2.5em;
    font-size: 18px;
    font-weight: bold;
    color: #333;
    margin-top: 0;
    margin-bottom: 15px;
}
.problem_list li:last-child {
    margin-bottom: 0;
}
.problem_list li::before {
    position: absolute;
    content: "\e86c";
    font-family: 'Material Icons';
    font-size: 32px;
    line-height: 1;
    color: #03C75A;
    left: 0;
    top: 0;
    /* background-image: url("/wp-content/uploads/2025/04/check_icon_blue.webp");
    background-size: cover;
    width: 32px;
    height: 32px; */
}
.problem_container_img {
    max-width: 270px;
    width: 30%;
}
@media only screen and (max-width: 980px) {
    .problem {
        padding: 60px 0 40px;
    }
    .problem .section_main_title {
        margin-bottom: 50px!important;
    }
    .problem_text_container_inner {
        padding: 20px 80px 20px 30px;
    }
    .problem_container_img {
        display: flex;
        align-items: center;
    }
    .problem_list li {
        padding-left: 1.5em;
    }
    .problem_list li::before {
        /* width: 20px;
        height: 20px; */
        font-size: 20px;
        top: 8px;
    }
}
@media only screen and (max-width: 680px) {
    .problem {
        padding: 50px 0 30px;
    }
    .problem .section_main_title {
        margin-bottom: 30px!important;
    }
    .problem_container {
        flex-direction: column;
    }
    .problem_text_container_inner {
        padding: 30px 20px 65px 20px;
        background-image: url("/wp-content/uploads/2025/04/problem_text_container_bg_img_sp.webp");
    }
    .problem_text_container {
        max-width: unset;
        width: 100%;
        margin-bottom: 15px;
    }
    .problem_container_img {
        width: 55%;
        margin: auto;
    }
}
.problem_bottom {
    position: relative;
    padding: 65px 0;
    background-color: #F7F7F7;
}
.problem_bottom_bg {
    position: absolute;
    content: "";
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    background-image: url("/wp-content/uploads/2025/04/problem_bottom_bg.webp");
    background-size: 100% 100%;
}
.problem_bottom_text_container {
    position: relative;
    text-align: center;
}
.problem_bottom_text {
    font-size: 24px;
    font-weight: bold;
    text-align: center;
    color: #fff;
    margin-bottom: 35px;
}
.problem_bottom_title {
    position: relative;
    display: inline-block!important;
    font-size: 32px!important;
    font-weight: bold;
    text-align: center;
    color: #fff;
    padding-bottom: 10px!important;
    background: linear-gradient(transparent 90%, #FFF500 0);
    background-repeat: no-repeat;
    background-size: 100% 100%;
}
.problem_bottom_title img {
    width: 270px;
    margin-right: 5px;
    vertical-align: baseline;
}
.problem_bottom_title span {
    font-size: 36px;
    color: #FFF500;
}

@media only screen and (max-width: 980px) {
    .problem_bottom_bg {
        background-size: 100% 100%;
    }
    .problem_bottom_title span {
        font-size: 32px;
    }
}
@media only screen and (max-width: 680px) {
    .problem_bottom_text {
        font-size: 22px;
        margin-bottom: 15px;
    }
    .problem_bottom_title {
        display: inline!important;
        line-height: 1.45;
        padding-bottom: 3px!important;
    }
    .problem_bottom_title img {
        width: 185px;
    }
    .problem_bottom_title span {
        font-size: 28px;
    }
    .problem_bottom_bg {
        background-image: url("/wp-content/uploads/2025/04/problem_bottom_bg_sp.webp");
    }
}
/* 弊社が選ばれる理由 */
.reason {
    padding: 100px 0 85px;
}
.reason .section_main_title {
    color: #03C75A!important;
    margin-bottom: 30px!important;
}
.reason_title {
    display: block;
    font-size: 28px!important;
    font-weight: bold;
    color: #333;
    margin-bottom: 75px!important;
}
.reason_container {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 45px 0px;
}
.reason_item {
    display: flex;
    flex-direction: column;
    max-width: 380px;
    width: calc(100% / 3 - 10px);
}
.reason_item_number {
    font-size: 40px;
    font-weight: bold;
    text-align: center;
    color: #03C75A;
    line-height: 1;
}
.reason_item_container {
    border-radius: 20px;
    border: 3px solid #54BD82;
    background-color: rgba(0, 153, 61, 0.10);;
    padding: 30px 20px 25px;
    display: flex;
    flex-direction: column;
    height: 100%;
}
.reason_item_title {
    font-size: 22px!important;
    font-weight: bold;
    line-height: 1.45!important;
    color: #333;
    display: flex;
    align-items: center;
    justify-content: center;
    height: 64px;
    margin-bottom: 15px!important;
}
.reason_item_text {
    font-size: 16px;
    line-height: 1.45;
    color: #333;
    flex: 1;
}

@media only screen and (max-width: 980px) {
    .reason {
        padding: 80px 0 60px;
    }
    .reason_title {
        font-size: 26px!important;
        margin-bottom: 60px!important;
    }
    .reason_container {
        gap: 30px 0;
    }
    .reason_item {
        width: calc(100% / 2 - 20px);
    }
}

@media only screen and (max-width: 680px) {
    .reason {
        padding: 50px 0 30px;
    }
    .reason_title {
        font-size: 24px!important;
        margin-bottom: 50px!important;
    }
    .reason_container {
        gap: 20px 0;
    }
    .reason_item {
        width: 100%;
        margin: auto;
    }
    .reason_item_title {
        font-size: 18px!important;
        height: unset;
    }
}
/* 機種ラインナップ */
.lineup {
    background-color: rgba(0, 153, 61, 0.10);
    padding: 80px 0 110px;
}
.lineup_title {
    display: block;
    text-align: center;
    font-size: 36px!important;
    font-weight: bold;
    color: #333;
    margin-bottom: 80px!important;
}
.lineup_container {
    max-width: 1000px;
    width: 100%;
    margin: auto;
}
.lineup_item {
    display: flex;
    justify-content: space-between;
    margin-bottom: 40px;
}
.lineup_item:last-child {
    margin-bottom: 0;
}
.lineup_item_img {
    max-width: 290px;
    width: 30%;
}
.lineup_item_text_container {
    position: relative;
    width: 65%;
    padding-left: 35px;
    padding-top: 15px;
    padding-bottom: 15px;
}
.lineup_item_text_container::before {
    position: absolute;
    content: "";
    left: 0;
    top: 0;
    width: 10px;
    height: 100%;
    background-color: #03C75A;
}
.lineup_item_tag_list {
    display: flex;
    flex-wrap: wrap;
    gap: 15px;
    margin-bottom: 15px;
}
.lineup_item_tag {
    width: 95px;
    padding: 8px 0;
    border-radius: 5px;
    text-align: center;
    background-color: #03C75A;
    color: #fff;
    font-size: 20px;
    font-weight: bold;
    letter-spacing: 0.1em;
}
.lineup_item_title {
    display: block;
    font-size: 36px!important;
    font-weight: bold;
    color: #333!important;
    margin-bottom: 15px!important;
}
.lineup_item_text {
    font-size: 20px;
    font-weight: 500;
    line-height: 1.3;
    color: #333;
}


@media only screen and (max-width: 980px) {
    .lineup {
        padding: 60px 0 80px;
    }
    .lineup_title {
        font-size: 36px!important;
    }
    .lineup_item_tag_list {
        gap: 10px;
    }
    .lineup_item_tag {
        width: 67px;
        padding: 5px 0;
        font-size: 13px;
    }
    .lineup_item_title {
        font-size: 30px!important;
    }
    .lineup_item_text {
        font-size: 18px;
    }

}

@media only screen and (max-width: 680px) {
    .lineup {
        padding: 65px 0 50px;
    }
    .lineup_title {
        font-size: 36px!important;
        margin-bottom: 70px!important;
    }
    .lineup_item {
        flex-direction: column;
    }
    .lineup_item_text_container {
        width: 100%;
        padding-bottom: 10px;
        padding-top: 10px;
    }
    .lineup_item_img {
        width: 80%;
        margin: auto;
        margin-bottom: 20px;
    }
    .lineup_item_text_container::before {
        /* height: 10px;
        width: 100%;
        top: unset;
        bottom: 0; */
    }
    .lineup_item_tag {
        padding: 3px 0;
        font-size: 16px;
    }
    .lineup_item_title {
        font-size: 24px!important;
    }
    .lineup_item_text {
        font-size: 16px;
    }
}

/* headerここから */
#header {
    position: fixed;
    background: #fff;
    top: 0;
    z-index: 999999;
    width: 100%;
    box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.10);
}
.header_inner {
    padding: 25px;
    max-width: 1440px;
    width: 100%;
    margin: auto;
}
.header_container {
    width: 100%;
    display: flex;
    justify-content: space-between;
}
.header_logo {
    width: 250px;
}
.header_nav {
    max-width: 705px;
    width: 80%;
    display: flex;
    justify-content: space-between;
}
.header_nav_menu {
    max-width: 300px;
    width: 45%;
    display: flex;
    justify-content: space-between;
}
.header_nav_menu_item {
    color: #4C826B;
    font-size: 16px;
    font-weight: bold;
}
.header_nav_menu_item_link {
    position: relative;
    display: flex;
    align-items: center;
    height: 100%;
}
.header_right_nav {
    width: 52%;
    display: flex;
    justify-content: space-between;
    gap: 20px;
    margin-left: 45px;
}
.header_contact_item,
.header_recruit_item {
    width: 50%;
}

.header_contact_link {
    display: block;
    text-align: center;
    width: 175px;
    padding: 13px 0;
    border-radius: 30px;
    color: #fff;
    font-size: 16px;
    font-weight: bold;
}
.header_recruit_item .header_contact_link {
    border: 2px solid #03C75A;
    background-color: #03C75A;
}
.header_recruit_item .header_contact_link:hover {
    background-color: #fff;
    color: #03C75A;
}
.header_contact_link {
    background-color: #FFA12A;
    border: 2px solid #FFA12A;
}
.header_contact_link:hover {
    background-color: #fff;
    color: #FFA12A;
}
.header_contact_link span {
    position: relative;
    padding-left: 25px;
}
.header_contact_link span::before {
    position: absolute;
    content: "";
    top: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    width: 21px;
    height: 16px;
    background-image: url("/wp-content/uploads/2025/04/mail_icon_white.webp");
    background-size: cover;
}
.header_contact_link:hover span::before {
    background-image: url("/wp-content/uploads/2025/04/mail_icon_yellow.webp");
}
.header_recruit_item .header_contact_link span {
    padding-left: 0;
}
.header_recruit_item .header_contact_link span::before {
    display: none;
}
@media only screen and (max-width: 1200px) {
    .header_nav {
        justify-content: right;
    }
    .header_nav_menu {
        justify-content: space-around;
    }
    .header_right_nav {
        margin-left: 20px;
    }
}
@media only screen and (max-width: 980px) {
    .header_nav {
        display: none;
    }
    .header_logo {
        width: 200px;
    }
    .header_right_nav {
        margin-left: 30px;
    }
    .header_contact_item {
        width: 100%;
        margin: 10px 0;
    }
    .header_contact_item:last-child {
        margin-bottom: 0;
    }
    .header_contact_item,
    .header_recruit_item {
        width: 100%;
    }
    .header_recruit_item {
        margin-bottom: 20px;
    }
}
@media only screen and (max-width: 680px) {
    .header_logo {
        width: 180px;
    }
}
/* headerここまで */
/* footerここから */
.footer {
    position: relative;
    padding: 80px 0 25px;
    background-color: #fff;
}
.footer a:hover {
    opacity: 0.6;
}
.footer_inner {
    display: flex;
    justify-content: space-between;
    gap: 20px;
    margin-bottom: 90px;
}
.footer_left {
    width: 50%;
}
.footer_logo {
    max-width: 250px;
    width: 100%;
    margin-bottom: 30px;
}
.footer_logo_link {
    display: block;
}
.footer_base {
    font-size: 16px;
    font-weight: 500;
    letter-spacing: 0.1em;
    line-height: 1.2;
    color: #333;
}
.footer_right {
    display: flex;
    width: 50%;
}
.footer_nav_menu {
    width: 50%;
}
.footer_nav_menu_item {
    width: 180px;
    margin-bottom: 15px;
}
.footer_nav_menu_item:last-child {
    margin-bottom: 0;
}
.footer_nav_menu_item_link {
    font-size: 16px;
    font-weight: 500;
    color: #333;
}
.footer_copyright {
    text-align: center;
    font-size: 12px;
    font-weight: 500;
    letter-spacing: 0.1em;
    color: #333;
}
@media only screen and (max-width: 980px) {
    .footer {
        padding-top: 60px;
    }
    .footer_inner {
        flex-direction: column;
        text-align: center;
        margin-bottom: 30px;
    }
    .footer_left,
    .footer_right,
    .footer_nav_menu,
    .footer_nav_menu_item {
        width: 100%;
    }
    .footer_right {
        margin-bottom: 30px;
    }
    .footer_nav_menu:first-child {
        margin-bottom: 15px;
    }
    .footer_logo {
        margin: auto;
        margin-bottom: 30px;
    }
    .footer_right {
        flex-direction: column;
    }
}
@media only screen and (max-width: 680px) {
    .footer {
        padding-top: 35px;
    }
    .footer_logo {
        width: 90%;
    }

}
/* footerここまで */
/* お知らせ一覧ここから */
.page_title_area {
    padding: 85px 0;
    background-color: #03C75A;
    color: #fff;
    text-align: center;
}
.page_sub_title {
    display: block;
    background-color: #03C75A!important;
    color: #fff!important;
    font-size: 20px!important;
    font-weight: bold;
    margin: 0!important;
    padding: 0!important;
    margin-bottom: 10px!important;
}
.page_main_title {
    display: block;
    font-size: 40px!important;
    font-weight: bold;
}
.page_title_area_text {
    margin-top: 25px;
    font-size: 20px;
    font-weight: 500;
    color: #fff;
    text-align: center;
}
@media only screen and (max-width: 980px) {
    .page_title_area {
        padding: 50px 0;
    }
    .page_title_inner {
        padding: 0 20px;
    }
    .page_sub_title {
        font-size: 18px!important;
    }
    .page_main_title {
        font-size: 36px!important;
    }

}
@media only screen and (max-width: 680px) {
    .page_title_area {
        padding: 30px 0;
    }
    .page_sub_title {
        font-size: 16px!important;
    }
    .page_main_title {
        font-size: 32px!important;
    }
}
.news_list {
    padding: 100px 0;
}
.news_list_inner {
    max-width: 780px;
    width: 100%;
    margin: auto;
}
.news_list_container {
    position: relative;
    padding-bottom: 100px;
}
.news_item {
    border-top: 1px solid #BCBCBC;
}
.news_item:last-child {
    border-bottom: 1px solid #BCBCBC;
}
.news_item_link {
    padding: 24px 0;
    display: flex;
    gap: 35px;
}
.news_item_link:hover {
    opacity: 0.6;
}
.news_item_meta {
    display: flex;
    align-items: center;
    gap: 45px;
}
.news_item_date {
    font-size: 20px;
    font-weight: 500;
    color: #000;
}
.news_item_tag_list {
    display: flex;
    gap: 10px;
}
.news_item_tag {
    display: block;
    padding: 2px 30px;
    background-color: #fff;
    border: 1px solid #03C75A;
    color: #03C75A;
    font-size: 12px;
    font-weight: bold;
}
.news_item_tag:hover {
    background-color: #03C75A;
    color: #fff;
}
.news_item_title {
    font-size: 20px!important;
    font-weight: 500!important;
    line-height: 1.2;
    letter-spacing: 0.1em;
    color: #000;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

ul.page-numbers {
    position: absolute;
    background-color: transparent;
    right: 0;
    left: 0;
    bottom: 0;
    margin: auto;
    display: flex;
    justify-content: center;
    box-shadow: none;
}
ul.page-numbers:hover {
    background-color: transparent;
}
.page-numbers a:hover {
    opacity: 0.6;
}
.current.page-numbers {
    border-bottom: 2px solid #03C75A;
    background-color: #fff;
    color: #7A7A7A;
    margin: 0;
}

.page-numbers .page-numbers {
    margin: 0;
    color: #333;
    background-color: transparent;
}

.page-numbers.next,
.page-numbers.prev {
    box-shadow: unset;
    border-bottom: 2px solid #F7F7F7;
    color: #7A7A7A;
}
@media only screen and (max-width: 1200px) {
    .news_item_link {
        gap: 20px;
    }
    .news_item_meta {
        gap: 20px;
    }
}
@media only screen and (max-width: 980px) {
    .news_list {
        padding: 80px 0;
    }
    .news_list_inner {
        padding: 0 20px;
    }
    .news_container {
        flex-direction: column;
    }
    .news_title_box {
        width: 100%;
        max-width: unset;
    }
    .news .section_sub_title,
    .news .section_main_title {
        text-align: center;
    }
    .news_list {
        max-width: unset;
        width: 100%;
        margin-bottom: 30px;
    }
    .news_item_meta {

    }
    .news_item_link {
        flex-direction: column;
        gap: 10px;
    }
    .news .more_btn_link {
        width: 240px;
    }
}
@media only screen and (max-width: 680px) {
    .news_list {
        padding: 50px 0;
    }
    
}
/* お知らせ一覧ここまで */
/* お知らせ詳細ここから */
.news_details {
    padding: 50px 0 115px;
}
.news_details_inner {
    max-width: 780px;
    width: 100%;
    margin: auto;
}
.news_details_main_title {
    display: block;
    font-size: 32px!important;
    font-weight: bold;
    line-height: 1.2;
    margin-bottom: 50px!important;
}
.news_details_sub_title {
    display: block;
    font-size: 16px!important;
    font-weight: bold;
    color: #7A7A7A;
    line-height: 1.2;
    margin-bottom: 40px!important;
}
.news_details .news_item_tag_list {
    margin-bottom: 30px;
}
.news_date {
    color: #7a7a7a;
    display: flex;
    font-size: 16px;
    font-weight: 400;
    margin-bottom: 50px;
}
.news_details_heading_img {
    width: 100%;
    margin: auto;
    margin-bottom: 20px;
}
.news_details_heading_img img {
    aspect-ratio: 16/9;
    object-fit: contain;
}
.news_details h2 {
    display: block;
    font-size: 32px;
    font-weight: bold;
    color: #000;
    padding-left: 15px;
    border-left: 5px solid #54BD82;
    margin-bottom: 30px;
}
.news_details h3 {
    display: block;
    font-size: 28px;
    font-weight: bold;
    color: #000;
    padding-bottom: 15px;
    border-bottom: 1px solid #7A7A7A;
    margin-bottom: 20px;
}
.news_details .post-content p {
    font-size: 16px;
    line-height: 1.75;
    letter-spacing: 0.1em;
    color: #000;
    margin-bottom: 30px;
}
.news_details .more_btn_link {
    max-width: 250px;
    margin: auto;
}

@media only screen and (max-width: 980px) {
    .news_details {
        padding: 30px 0 80px;
    }
    .news_details_inner {
        padding: 0 20px;
    }
}
@media only screen and (max-width: 680px) {
    .news_details {
        padding: 30px 0 50px;
    }
}
/* パンくず */
.breadcrumb {
    display: flex;
    gap: 16px;
    margin-bottom: 30px;
    color: #747474;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}

.breadcrumb_list {
    align-items: flex-start;
    display: flex;
    flex-wrap: wrap;
    gap: 0 14px;
    margin: auto;
    max-width: 1180px;
    width: 100%;
}

.breadcrumb_item {
    align-items: center;
    color: #9f9f9f;
    display: inline-flex;
    font-size: 14px;
    letter-spacing: .1em;
    margin: 0;
    position: relative;
}

.breadcrumb_item:after {
    background-image: url("/wp-content/uploads/2024/06/breadcrumb_arrow.svg");
    background-size: cover;
    content: "";
    display: block;
    height: 10px;
    margin-left: 9px;
    width: 5px;
}

.breadcrumb_item:last-child:after {
    display: none
}

.breadcrumb_text {
    align-items: center;
    color: inherit;
    display: block;
    display: inline-flex;
    text-decoration: none;
    white-space: nowrap;
}
/* テキスト */
.news_details p {
    font-size: 16px;
    line-height: 1.75;
    letter-spacing: 0.1em;
}
.news_details_heading_2 {
    position: relative;
    display: block;
    font-size: 32px;
    font-weight: bold;
    padding-left: 15px;
    margin-bottom: 30px;
}
.news_details_heading_2::before {
    position: absolute;
    content: "";
    left: 0;
    top: 0;
    width: 5px;
    height: 100%;
    background-color: #54BD82;
}
.news_details_heading_3 {
    display: block;
    font-size: 32px;
    font-weight: bold;
    padding-bottom: 15px;
    border-bottom: 1px solid #7A7A7A;
    margin-bottom: 50px;
}
@media only screen and (max-width: 980px) {
    .news_details_heading_2,
    .news_details_heading_3 {
        font-size: 30px;
    }
}
@media only screen and (max-width: 680px) {
    .news_details_heading_2,
    .news_details_heading_3 {
        font-size: 28px;
    }
}
/* 関連記事 */
/* .post-navigation {
    display: flex;
    justify-content: space-between;
    margin-top: 20px;
}
.post-navigation .prev-post,
.post-navigation .next-post {
    position: relative;
    width: 45%;
}
.prev-post a, .next-post a {
    flex-direction: column;
}
.next-post a::before,
.prev-post a::before {
    position: absolute;
    content: "";
    border-bottom: 1px solid;
    border-color: #fff;
    top: 50%;
    width: 7px;
    height: 7px;
} */
 /* 前後記事 */
.post-navigation {
    display: flex;
    justify-content: space-between;
    margin-top: 20px;
}

.post-navigation .prev-post,
.post-navigation .next-post {
    position: relative;
    width: 45%;
}

.prev-post a {
    padding-left: 15px;
    text-align: left;
    border-left: 15px solid #03C75A;
}

.next-post a {
    padding-right: 15px;
    text-align: right;
    border-right: 15px solid #03C75A;
}

.prev-post a,
.next-post a {
    height: 60px;
    display: flex;
    align-items: center;
    font-size: 12px;
    line-height: 1.5;
    color: #333;
}

.prev-post a:hover,
.next-post a:hover {
    opacity: 0.6;
}

.prev-post a {
    justify-content: left;
}

.next-post a {
    justify-content: right;
}

.next-post a::before,
.prev-post a::before {
    position: absolute;
    content: "";
    border-bottom: 1px solid;
    border-color: #fff;
    top: 50%;
    width: 7px;
    height: 7px;

}

.next-post a::before {
    border-right: 1px solid;
    border-color: #fff;
    right: 4px;
    -webkit-transform: rotate(-45deg) translateY(-50%);
    transform: rotate(-45deg) translateY(-50%);
}

.prev-post a::before {
    border-left: 1px solid;
    border-color: #fff;
    left: 4px;
    -webkit-transform: rotate(45deg) translateY(-50%);
    transform: rotate(45deg) translateY(-50%);
}
.next-post a span,
.prev-post a span {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
}
.next-post a span:first-child,
.prev-post a span:first-child {
    margin-right: auto;
    width: 70%;
}
.next-post a span:first-child {
    margin-right: unset;
    margin-left: auto;
}
.next-post a span:last-child,
.prev-post a span:last-child {
    width: 100%;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.navigation_post_img {
    width: 20%;
}
.navigation_post_img img {
    aspect-ratio: 16/9;
    object-fit: contain;
}
@media only screen and (max-width: 680px) {
    .post-navigation {
        flex-direction: column;
        gap: 20px;
    }
    .post-navigation .prev-post,
    .post-navigation .next-post {
        width: 100%;
    }
}
/* お知らせ詳細ここまで */
/* プライバシーポリシーここから */
.privacy_container {
    padding-left: 0!important;
}
.privacy_title_base {
    text-align: right;
    font-size: 20px;
    font-weight: 500;
    letter-spacing: 0.05em;
    margin-bottom: 50px;
}
.privacy_title {
    font-size: 24px!important;
    font-weight: bold;
    line-height: 1.15;
    letter-spacing: 0.1em;
    margin-bottom: 20px!important;
}
.privacy_list {
    list-style: disc;
    font-size: 16px;
    font-weight: 500;
    line-height: 1.4;
    letter-spacing: 0.1em;
    margin-bottom: 30px!important;
}
.privacy_text {
    font-size: 16px;
    font-weight: 500;
    line-height: 1.4;
    letter-spacing: 0.1em;
    margin-bottom: 30px;
}
@media only screen and (max-width: 980px) {
    .privacy_title_base {
        font-size: 18px;
        margin-bottom: 30px;
    }
}
@media only screen and (max-width: 680px) {
    .privacy_title_base {
        margin-bottom: 20px;
    }
    .privacy_title {
        font-size: 20px!important;
        margin-bottom: 10px!important;
    }
    .privacy_list,
    .privacy_text {
        margin-bottom: 20px!important;
    }
}
/* プライバシーポリシーここまで */
/* 特定商取引に基づく表記ここから */
.tokushouhou_container {
    padding: 110px 0 140px;
}
.tokushouhou_table {
    background-color: #fff;
    width: 100%;
}
.tokushouhou_table th,
.tokushouhou_table td {
    border: 1px solid #D9D9D9!important;
}
.tokushouhou_table th {
    background-color: #03C75A!important;
    padding: 16px;
    text-align: center;
    font-weight: bold;
    width: 290px;
    vertical-align: middle;
}
.tokushouhou_table th h3 {
    color: #fff!important;
    font-size: 16px;
}
.tokushouhou_table td {
    padding: 16px 38px;
    font-size: 16px;
    font-weight: 500;
    color: #333;
    vertical-align: middle;
}
@media only screen and (max-width: 980px) {
    .tokushouhou_container {
        padding: 80px 0 100px;
    }
    .policy_container {
        padding: 50px 0 80px;
    }
    .tokushouhou_table th {
        width: 200px;
    }
}
@media only screen and (max-width: 680px) {
    .tokushouhou_container {
        padding: 50px 0 80px;
    }
    .tokushouhou_table th,
    .tokushouhou_table td {
        display: block;
        padding: 15px 20px;
        width: 100%;
    }
    .tokushouhou_table th h3 {
        font-size: 20px;
    }
    .tokushouhou_table td {
        font-size: 18px;
    }
}
/* 特定商取引に基づく表記ここまで */
/* お問い合わせここから */
.contact_page_sec {
    padding: 70px 0 120px;
    background-color: #ffffff;
  }
  
  .contact_sec_inner {
    max-width: 800px;
    width: 100%;
    margin: auto;
  }
  .contact_btn_container {
    display: flex;
    justify-content: space-between;
    margin-bottom: 35px;
  }
  .contact_btn_container .border_btn {
    width: calc(100% / 2 - 20px);
    display: flex;
  }
  .contact_btn_container .border_btn p {
    display: flex;
    width: 100%;
  }
  .contact_title {
    font-size: 18px!important;
    font-weight: 500;
    line-height: 1.45;
    letter-spacing: 0.2em;
    margin-bottom: 50px!important;
  }
  
  .contact_text {
    font-size: 18px;
    font-weight: 500;
    line-height: 1.8;
    letter-spacing: 0.2em;
    margin-bottom: 60px;
  }
  
  .contact_box {
    margin-bottom: 20px;
  }
  .contact_box_flex {
    display: flex;
    gap: 10px;
  }
  .contact_box_flex .contact_box_flex {
    width: 50%;
    margin-bottom: 20px;
  }
  .contact_name_box,
  .contact_box_title {
    font-size: 16px;
    font-weight: bold;
    letter-spacing: 0.1em;
    margin-bottom: 12px;
    line-height: 1.45;
  }
  
  .contact_box_title label {
    display: flex;
    align-items: center;
    gap: 10px;
  }
  
  .label-req {
    font-size: 12px;
    font-weight: bold;
    letter-spacing: 0.1em;
    color: #fff;
    background-color: #CC0000;
    padding: 1px 6px;
    display: inline-block;
    height: 19px;
  }
  .contact_name_box {
    display: flex;
    justify-content: space-between;
      align-items: center;
    width: 90px;
    gap: 10px;
    margin-bottom: 0;
  }
  .contact_name_input {
    width: calc(100% - 90px);
  }
  .policy_agree {}
  
  .agree {
    margin-bottom: 18px;
  }
  
  .agree a {
    text-decoration: underline;
  }
  
  .agree a:hover {
    color: #888888;
  }
  .contact_box .more_btn {
    margin-top: 40px;
  }
  @media only screen and (max-width: 980px) {
    .contact_page_sec {
      padding: 40px 0 100px;
    }
  }
  
  @media only screen and (max-width: 680px) {
    .contact_page_sec {
      padding: 30px 0 80px;
    }
    .contact_btn_container {
        flex-direction: column;
        gap: 20px;
    }
    .contact_btn_container .border_btn {
        width: 100%;
        margin: auto;
    }
    .contact_name_box {
      justify-content: left;
      gap: 5px;
    }
    .contact_box_flex {
      flex-direction: column;
      gap: 20px 10px;
      margin-bottom: 20px;
    }
    .contact_box_flex .contact_box_title {
      margin-bottom: 0;
    }
    .contact_box_flex .contact_box_flex {
      flex-direction: row;
      align-items: center;
      margin-bottom: 0;
    }
    .contact_box_flex .contact_box_flex:first-child,
    .contact_box_flex .contact_box_flex:last-child,
    .contact_box_flex .contact_input {
      width: 100%;
  
    }
  }
  
  /* お問い合わせ内容 */
  .inquiry {
    margin-bottom: 20px;
  }
  
  .wpcf7-form-control {
    display: flex;
    flex-direction: column;
    width: 100%;
  }
  
  .wpcf7-list-item {
    margin-left: 0;
  }
  .contact_name_input input,
  .contact_input input,
  .contact_input textarea {
    background-color: #fff;
    border: 1px solid #000;
  }
  .recruit_birth p,
  .recruit_birth {
    display: flex;
    align-items: center;
    gap: 10px;
  }
  .recruit_birth_day {
    width: 25px;
  }
  .contact_sec_inner .wpcf7-form-control {
    padding: 7px 5px;
  }
  .recruit_birth .wpcf7-form-control-wrap {
    background-color: #fff;
    border: 1px solid #000;
  }
  .wpcf7-list-item input {
    display: none;
  }
  
  .form-control {}
  
  .btn-submit {
    height: 60px;
    max-width: 380px;
    width: 100%;
    font-size: 20px;
    font-weight: 500;
    color: #fff;
    background-color: #03C75A;
    border: 1px solid #03C75A;
    text-decoration: none;
    display: block;
    text-align: center;
    border-radius: 20px !important;
    text-align: center;
    margin: auto;
  }
  .btn-submit:hover {
    background-color: #fff;
    color: #03C75A;
  }
  @media only screen and (max-width: 850px) {
    .contact_sec_inner {
      padding: 0 20px;
    }
  }
  
  @media only screen and (max-width: 680px) {
    .inquiry {
      margin-bottom: 30px;
    }
  }
  
  /* ラベル文字の左側の余白：チェックボックの枠が入るスペース＋ラベル文字との余白 */
  .policy_agree input+span,
  .contact_koumoku input+span {
    padding-left: 28px;
    display: inline-block;
    position: relative;
  }
  
  /* チェックボックスの枠とチェックマークの共通書式 */
  .policy_agree input+span::after,
  .policy_agree input+span::before,
  .contact_koumoku input+span::after,
  .contact_koumoku input+span::before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
  }
  
  /* チェックボックスの枠 */
  .policy_agree input+span::before,
  .contact_koumoku input+span::before {
    border: 1px solid #aaaaaa;
    background-color: #ffffff;
    height: 20px;
    width: 20px;
    border-radius: 50%;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
  }
  
  /* チェックマークにチェックが付いていない時 */
  .policy_agree input+span::after,
  .contact_koumoku input+span::after {
    border: none;
    background-color: #0F82D3;
    border-radius: 50%;
    height: 12px;
    width: 12px;
    left: 4px;
    top: 50%;
    transform: translateY(-50%);
    display: none;
  }
  
  /* チェックマークにチェックが付いた時 */
  .policy_agree input:checked+span::after,
  .contact_koumoku input:checked+span::after {
    display: block;
  }
/* 会社概要ここから */
.philosophy {
    padding: 65px 0 75px;
}
.philosophy_main_text {
    margin-bottom: 25px;
}
.philosophy .section_text {
    max-width: 800px;
    margin: auto;
}
.policy {
    padding: 70px 0 75px;
    background-color: #F7F7F7;
}
.policy .section_main_title {
    margin-bottom: 25px!important;
}
.policy_text {
    max-width: 600px;
    width: 100%;
    margin: auto;
    font-size: 20px;
    font-weight: bold;
    letter-spacing: 0.1em;
    line-height: 1.9;
    color: #03C75A;
}
.department {
    background-color: rgba(0, 153, 61, 0.10);
    padding: 70px 0 60px;
}
.department .section_main_title {
    margin-bottom: 55px!important;
}
.department_container {
    max-width: 900px;
    width: 100%;
    margin: auto;
}
.department_item {
    background-color: #fff;
    border-radius: 30px;
    margin-bottom: 50px;
}
.department_item:last-child {
    margin-bottom: 0;
}
.department_item_inner {
    padding: 50px 40px 30px;
}
.department_item_main_title {
    display: block;
    font-size: 40px!important;
    font-weight: bold;
    text-align: center!important;
    color: #03C75A!important;
    margin-bottom: 40px!important;
}
.department_item_sub_title {
    display: block;
    font-size: 24px!important;
    font-weight: bold;
    color: #03C75A!important;
    padding: 0!important;
    border-left: unset!important;
    margin-bottom: 25px!important;
}
.department_item_list {
    list-style: none;
    padding: 0!important;
    margin-bottom: 5px;
}
.department_item_list li {
    position: relative;
    padding-left: 1em;
    font-size: 16px;
    font-weight: 500;
    color: #333;
    margin: 0;
    letter-spacing: 0.1em;
    line-height: 2;
}
.department_item_list li::before {
    position: absolute;
    content: "・";
    font-size: 16px;
    font-weight: 500;
    color: #333;
    left: 0;
    top: 0;
}
.department_item_text {
    font-size: 16px;
    font-weight: 500;
    color: #333;
    line-height: 2;
}
.company_message {
    padding: 70px 0;
}
.company_message .section_main_title {
    margin-bottom: 70px!important;
}
.company_message_container {
    display: flex;
    justify-content: space-between;
}
.company_message_text_container {
    max-width: 580px;
    width: 55%;
}
.company_message_title {
    display: block;
    font-size: 28px!important;
    font-weight: bold;
    color: #333!important;
    margin-bottom: 30px!important;
}
.company_message_text {
    font-size: 20px;
    line-height: 1.5;
    letter-spacing: 0.1em;
    color: #333;
}
.company_message_img_container {
    width: 40%;
    max-width: 415px;
    padding-right: 35px;
    padding-top: 30px;
}
.company_message_img {
    max-width: 380px;
    position: relative;
}
.company_message_img img {
    border-radius: 20px;
    position: relative;
    aspect-ratio: 1/1;
    z-index: 2;
}
.company_message_img:after {
    content: "";
    width: 100%;
    height: 100%;
    max-width: 380px;
    position: absolute;
    right: -35px;
    bottom: -45px;
    background-color: #54BD82;
    border-radius: 20px;
    z-index: 1;
}
.company_about {
    padding: 80px 0 140px;
}
.company_about_container {
    padding: 130px 0 50px;
    border-radius: 30px;
    border: 1px solid rgba(188, 188, 188, 0.28);
    background: #fff;
    box-shadow: 4px 4px 8px 0px rgba(43, 58, 44, 0.15);
}
.company_about_container_inner {
    max-width: 900px;
    width: 100%;
    margin: auto;
}
.company_about_title {
    display: block;
    font-size: 32px!important;
    font-weight: bold;
    text-align: center;
    margin-bottom: 55px!important;
}
.company_about_table {
    width: 100%;
}
.company_about_table th {
    padding: 23px 0;
    padding-left: 8px;
    border-bottom: 2px solid #03C75A!important;
    width: 180px;
    font-size: 20px;
    font-weight: bold;
    color: #000;
}
.company_about_table th h4 {
    padding: 0!important;
    border: unset!important;
}
.company_about_table td {
    padding: 23px 0;
    padding-left: 50px;
    border-bottom: 1px solid #BEBEBE!important;
    font-size: 20px;
    color: #000;
    line-height: 1.5;
}
.company_about_table tr:last-child th,
.company_about_table tr:last-child td {
    border: unset!important;
}
.company_about_table td p {
    margin: 0;
}
.company_about_table .company_adress {
    margin-bottom: 25px;
}
.company_about_table .company_adress a {
    text-decoration: underline;
}
.company_about_table .company_adress a:hover {
    opacity: 0.6;
}
.company_about_table .company_adress:last-child {
    margin-bottom: 0;
}
.company_about_table .company_adress p {
    margin-bottom: 30px;
}
.company_about_table .company_adress iframe {
    display: block;
    width: 100%;
}
@media only screen and (max-width: 980px) {
    .philosophy {
        padding: 50px 0;
    }
    .policy {
        padding: 50px 0;
    }
    .department {
        padding: 50px 0;
    }
    .department_item_main_title {
        font-size: 36px!important;
        margin-bottom: 30px!important;
    }
    .company_message {
        padding: 60px 0;
    }
    .company_about_container {
        padding: 80px 0 40px;
    }
    .company_message .section_main_title {
        margin-bottom: 50px!important;
    }
    .company_message_title {
        font-size: 26px!important;
    }
    .company_message_text {
        font-size: 18px;
    }
    .company_about {
        padding: 50px 0 100px;
    }
    .company_about_title {
        margin-bottom: 40px!important;
    }
    .company_about_container_inner {
        padding: 0 20px;
    }
    .company_about_table th,
    .company_about_table td {
        display: block;
    }
    .company_about_table th {
        padding-left: 10px;
    }
    .company_about_table td {
        width: 100%;
    }
    .company_about_table tr:last-child th {
        border-bottom: 2px solid #03C75A!important;
    }
}
@media only screen and (max-width: 680px) {
    .philosophy {
        padding: 30px 0;
    }
    .policy {
        padding: 30px 0;
    }
    .department {
        padding: 30px 0;
    }
    .department .section_main_title {
        margin-bottom: 30px!important;
    }
    .department_item_inner {
        padding: 30px 20px;
    }
    .department_item_main_title {
        font-size: 32px!important;
        margin-bottom: 20px!important;
    }
    .company_message {
        padding: 50px 0;
    }
    .company_message .section_main_title {
        margin-bottom: 30px!important;
    }
    .company_message_title {
        font-size: 24px!important;
    }
    .company_message_text {
        font-size: 16px;
    }
    .company_message_container {
        flex-direction: column-reverse;
        gap: 70px;
    }
    .company_message_text_container {
        max-width: unset;
        width: 100%;
        margin: auto;
    }
    .company_message_img_container {
        padding-top: 0;
        width: 100%;
        margin: auto;
    }
    .company_about {
        padding: 30px 0 70px;
    }
    .company_about_title {
        margin-bottom: 30px!important;
    }
    .company_about_container {
        padding: 50px 0 30px;
    }
    .company_about_table th {
        width: 185px;
        padding: 10px 0;
    }
    .company_about_table td {
        padding: 10px 0;
        padding-left: 8px;
    }
    .company_about_table .company_adress {
        margin-bottom: 25px;
    }
    .company_about_table .company_adress p {
        margin-bottom: 20px;
    }
}
/* プライバシーポリシーここから */
.privacy {
    padding: 60px 0 120px;
  }
  .privacy_title {
    display: block;
    font-size: 24px!important;
    font-weight: bold;
    line-height: 1.15!important;
    letter-spacing: 0.1em;
    color: #333!important;
    margin: 0!important;
    margin-bottom: 20px!important;
  }
  .privacy_title_right {
    font-size: 20px;
    font-weight: 500;
    line-height: 1.6;
    letter-spacing: 0.05em;
    margin-bottom: 55px;
  }
  .privacy_text {
    font-size: 16px;
    font-weight: 500;
    color: #333;
    margin-bottom: 35px;
  }
  .privacy_text a {
    text-decoration: underline;
  }
  .privacy_list {
    padding: 0!important;
    margin-bottom: 35px;
  }
  
  .privacy_list li {
    list-style: none;
    position: relative;
    padding-left: 1.5em;
    margin: 0;
  }
  
  .privacy_list li::before {
    content: "・";
    position: absolute;
    left: 0;
  }
  
  @media only screen and (max-width: 980px) {
    .privacy {
        padding: 40px 0 80px;
    }
    .privacy_title {
        font-size: 22px!important;
    }
    .privacy_title_right {
        margin-bottom: 40px;
    }
  }
  @media only screen and (max-width: 680px) {
    .privacy {
        padding: 30px 0 50px;
    }
    .privacy_title {
        font-size: 20px!important;
        margin-bottom: 20px!important;
    }
    .privacy_title_right {
        margin-bottom: 30px;
    }
    .privacy_text {
        margin-bottom: 20px;
    }
  }
  /* プライバシーポリシーここまで */
/* リクルートここから */
/* リクルートFV */
.recruit_fv_inner {
    max-width: 1440px;
    width: 100%;
    margin: auto;
}
/* スライド */
.recruit_fv .recruit_fv_img {
    margin: 0 !important;
    padding: 0 !important;
    max-height: 700px;
    height: 48vw!important;
  }
  
  /* スライド内の画像 */
  .recruit_fv_img img {
    display: block;
    width: 100%;
    height: auto;
    margin: 0;
    padding: 0;
  }
.recruit_fv .slick-dots {
    bottom: 35px;
    display: flex;
    justify-content: center;
    gap: 25px;
}
.recruit_fv .slick-dots li {
    width: 15px;
    height: 15px;
    margin: 0;
    padding: 0;
}
.recruit_fv .slick-dots li button {
}
.recruit_fv .slick-dots li button:before {
    content: "";
    width: 15px;
    height: 15px;
    background-color: #D9D9D9;
    opacity: 1;
    border-radius: 50%;
}
.recruit_fv .slick-dots li.slick-active button:before {
    background-color: #03C75A;
    opacity: 1;
}
@media only screen and (max-width: 680px) {

}
/* リクルート_ご挨拶 */
.recruit_message {
    padding: 70px 0 90px;
}
.recruit_message .top_section_sub_title,
.recruit_message .top_section_main_title {
    color: #03C75A;
    text-align: center;
}
.recruit_message .top_section_sub_title {
    margin-bottom: 10px!important;
}
.recruit_message_container {
    margin-top: 60px;
    display: flex;
    justify-content: space-between;
}
.recruit_message_img_container {
    width: 40%;
    max-width: 425px;
    padding-right: 45px;
    padding-top: 50px;
}
.recruit_message_img {
    max-width: 380px;
    position: relative;
}
.recruit_message_img img {
    border-radius: 20px;
    position: relative;
    aspect-ratio: 1/1;
    z-index: 2;
}
.recruit_message_img:after {
    content: "";
    width: 100%;
    height: 100%;
    max-width: 380px;
    position: absolute;
    right: -45px;
    bottom: -45px;
    background-color: #9DD8B7;
    border-radius: 20px;
    z-index: 1;
}
.recruit_message_text_container {
    max-width: 635px;
    width: 55%;
}
.recruit_message_text_item {
    margin-bottom: 45px;
}
.recruit_message_text_item:last-child {
    margin-bottom: 0;
}
.recruit_message_title {
    display: block;
    color: #03C75A;
    font-size: 28px!important;
    font-weight: bold;
    line-height: 1!important;
    letter-spacing: 0.1em;
    margin-bottom: 22px!important;
}
.recruit_message_text {
    font-size: 20px;
    line-height: 1.5;
    letter-spacing: 0.1em;
}

@media only screen and (max-width: 980px) {
    .recruit_message {
        padding: 60px 0 80px;
    }
    .recruit_message_container {
        flex-direction: column;
    }
    .recruit_message_img_container {
        width: 100%;
        margin: auto;
        padding-top: 0;
        padding-bottom: 75px;
    }
    .recruit_message_text_container {
        max-width: unset;
        width: 100%;
    }
    .recruit_message_text {
        font-size: 18px;
    }
    .recruit_message_title {
        font-size: 26px!important;
    }
}

@media only screen and (max-width: 680px) {
    .recruit_message {
        padding: 30px 0 50px;
    }
    .recruit_message_title {
        font-size: 24px!important;
    }
    .recruit_message_text {
        font-size: 16px;
    }
}
/* 社員リンク */
.recruit_employee_introduction {
    padding: 65px 0 85px;
    background-color: rgba(84, 189, 130, 0.15);
}
.recruit_employee_introduction .top_recruit_title_box {
    width: 40%;
}
.recruit_employee_introduction .top_section_sub_title {
    margin-bottom: 15px !important;
}
.recruit_employee_introduction .top_section_main_title {
    margin-bottom: 30px !important;
}
.recruit_employee_introduction .top_recruit_img {
    max-width: 640px;
    width: 55%;
}
@media only screen and (max-width: 980px) {
    .employee_about {
        padding: 80px 0;
    }
    .employee_about_item_title {
        width: calc(100% - 40px);
    }
    .employee_about_item_title span {
        font-size: 24px;
    }
}
@media only screen and (max-width: 680px) {
    .recruit_employee_introduction .top_recruit_title_box {
        max-width: unset;
        width: 100%;
        text-align: center;
    }
    .recruit_employee_introduction .top_recruit_img {
        max-width: unset;
        width: 80%;
        margin-bottom: 20px;
    }
    .recruit_employee_introduction .more_btn {
        width: 300px;
    }
}
/* 募集職種 */
.recruit_type {
    padding: 70px 0 90px;
    background-color: #F7F7F7;
}

.recruit_type .top_section_sub_title,
.recruit_type .top_section_main_title {
    color: #03C75A;
    text-align: center;
}
.recruit_type_container{
    max-width: 1050px;
    width: 100%;
    margin: auto;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 25px;
}
.recruit_type_item {
    max-width: 490px;
    width: calc(100% / 2 - 20px);
    border-radius: 20px;
    background-color: #fff;
    box-shadow: 0px 4px 8px 0px rgba(49, 69, 51, 0.25);
    display: flex;
}
.recruit_type_item_inner {
    padding: 22px 35px 30px;
    display: flex;
    flex-direction: column;
    width: 100%;
}
.recruit_type_item_title {
    max-width: 245px;
    width: 100%;
    margin: auto;
    margin-bottom: 25px;
    background-color: #03C75A;
    padding: 9px 0;
    border-radius: 50px;
    color: #fff;
    text-align: center;
    font-size: 20px;
    font-weight: bold;
    letter-spacing: 0.1em;
}
.recruit_type_item_text {
    color: #333;
    font-size: 16px;
    line-height: 1.6;
    flex: 1;
}
@media only screen and (max-width: 1100px) {
    .recruit_type_container{
        padding: 0 20px;
    }
}
@media only screen and (max-width: 980px) {
    .recruit_type {
        padding: 50px 0 80px;
    }
    .recruit_type_item_inner {
        padding: 20px;
    }
    .recruit_type_item_title {
        margin-bottom: 20px;
    }
}
@media only screen and (max-width: 680px) {
    .recruit_type {
        padding: 30px 0 50px;
    }
    .recruit_type_container{
        flex-direction: column;
    }
    .recruit_type_item {
        width: 100%;
        margin: auto;
    }
    .recruit_type_item_inner {
        width: 100%;
    }
}
/* 募集職種 */
.application_flow,
.recruit_flow {
    padding: 70px 0;
}
.application_flow .top_section_sub_title,
.application_flow .top_section_main_title,
.recruit_flow .top_section_sub_title,
.recruit_flow .top_section_main_title {
    color: #03C75A;
    text-align: center;
}
.recruit_flow .top_section_main_title {
    margin-bottom: 65px!important;
}
.application_flow .top_section_main_title {
    margin-bottom: 55px!important;
}
.application_flow_text {
    font-size: 20px;
    text-align: center;
    color: #333;
    margin-bottom: 65px;
}
.application_flow_text a {
    color: #03C75A;
    text-decoration: underline;
}
.flow_box {
    max-width: 870px;
    width: 100%;
    margin: auto;
    background: #03C75A;
    border-radius: 30px;
    margin-bottom: 23px;
}
.flow_box:last-child {
    margin-bottom: 0;
}
.flow_box_flex {
    max-width: 725px;
    width: 100%;
    margin: 0 auto;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 20px 0;
    gap: 70px;
}

.flow_img {
    width: 30%;
    max-width: 190px;
}

.flow_text_box {
    width: 70%;
    display: flex;
    flex-flow: column;
    justify-content: center;
}

.flow_title {
    width: 170px;
    background: #fff;
    margin-bottom: 16px;
    text-align: left;
    border-radius: 30px;
    margin-right: auto;
}

.flow_title p {
    padding: 7px 0;
    font-size: 24px;
    font-weight: bold;
    color: #4C826B;
    text-align: center;
    margin: 0;
}

.flow_sub_title {
    color: #fff;
    font-size: 24px;
    font-weight: bold;
    margin-right: auto;
    letter-spacing: unset;
}

.flow_text {
    margin-top: 10px;
    color: #fff;
    font-size: 16px;
    font-weight: 400;
}
.application_flow .flow_text {
    font-size: 20px;
}
.flow_triangle {
    width: 80px;
    margin: auto;
    margin-bottom: 23px;
}
@media only screen and (max-width: 980px) {
    .application_flow,
    .recruit_flow {
        padding: 50px 0;
    }
    .recruit_flow {
        padding: 50px 0;
    }
    .flow_box_flex {
        gap: 30px;
        padding-top: 30px;
        padding-bottom: 30px;
        padding-left: 20px;
        padding-right: 20px;
    }

    .flow_sub_title {
        font-size: 20px;
    }

    .flow_text {
        font-size: 14px;
    }
}
@media only screen and (max-width: 680px) {
    .application_flow,
    .recruit_flow {
        padding: 30px 0;
    }
    .flow_box_flex {
        gap: 20px;
    }
    .flow_title p {
        padding: 2px 0;
    }
    .flow_sub_title {
        font-size: 18px;
    }

    .flow_img img {
        width: 100%;
    }
}
/* よくある質問 */
.faq {
    background-color: #F7F7F7;
    padding: 70px 0 120px;
}
.faq .top_section_sub_title,
.faq .top_section_main_title {
    color: #03C75A;
    text-align: center;
}
.faq .top_section_main_title {
    margin-bottom: 55px;
}
.faq_item {
    margin-bottom: 30px;
    background-color: #fff;
    border-radius: 30px;
}
.faq_item:last-child {
    margin-bottom: 0;
}
.faq_item .faq_item_title_container {
    display: flex;
    justify-content: space-between;
    align-items: center;
    position: relative;
    padding: 30px 100px;
    color: #333333;
    font-weight: 600;
    cursor: pointer;
}
.faq_item_title_icon {
    position: absolute;
    content: "";
    font-family: "Poppins", sans-serif;
    font-size: 32px;
    font-weight: bold;
    left: 22px;
    top: 0;
    bottom: 0;
    display: flex;
    align-items: center;
    margin: auto;
    color: #03C75A;
}
.faq_item .faq_item_title_container::-webkit-details-marker {
    display: none;
}
.faq_item .faq_item_title_container:before,
.faq_item .faq_item_title_container::after {
    content: "";
    position: absolute;
    background-color: #03C75A;
    border-radius: 5px;
    width: 3px;
    bottom: 0;
    height: 15px;
    margin: auto 0;
    top: 0;
    transition: transform .3s;
}
.faq_item .faq_item_title_container:before {
    position: absolute;
    right: 30px;
    rotate: 90deg;
}
.faq_item .faq_item_title_container::after {
    right: 30px;
    transition: rotate .3s;
}
.faq_item[open] .faq_item_title_container::after {
    rotate: 90deg;
}
.faq_item_title {
    font-family: "Poppins", sans-serif;
    font-size: 20px;
    font-weight: bold;
    color: #03C75A;
    line-height: 1.5;
}
.faq_item .faq_item_content {
    transform: translateY(-10px);
    opacity: 0;
    margin: 0;
    padding: 0 100px 45px;
    color: #333333;
    transition: transform .5s;
    font-size: 16px;
    font-weight: 500;
    line-height: 1.6;
    color: #333;
}

.faq_item[open] .faq_item_content {
    transform: none;
    opacity: 1;
}
@media only screen and (max-width: 980px) {
    .faq {
        padding: 60px 0 80px;
    }
    .faq_item .faq_item_title_container,
    .faq_item .faq_item_content {
        padding-left: 80px;
        padding-right: 80px;
    }
    .faq_item_title_icon {
        font-size: 28px;
    }
}
@media only screen and (max-width: 680px) {
    .faq {
        padding: 40px 0 60px;
    }
    .faq_item .faq_item_title_container,
    .faq_item .faq_item_content {
        padding-left: 60px;
        padding-right: 50px;
    }
    .faq_item_title_icon {
        font-size: 24px;
    }
    .faq_item_title {
        font-size: 16px;
    }
    .faq_item .faq_item_content {
        font-size: 14px;
        padding-bottom: 30px;
    }
}
/* 社員紹介 */
.employee_introduction_sec {
    padding: 85px 0 95px;
}
.introduction_list_container {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 45px 0;
}
.introduction_list_container::before,
.introduction_list_container::after {
    content: "";
    max-width: 360px;
    width: calc(100% / 3 - 20px);
}
.introduction_list_container::before {
    order: 1;
}
.introduction_item {
    display: flex;
    flex-direction: column;
    max-width: 360px;
    width: calc(100% / 3 - 20px);
    background-color: #fff;
    border-radius: 20px;
    overflow: hidden;
    box-shadow: 0px 4px 8px 0px rgba(25, 31, 27, 0.15);
}
.introduction_item_img img {
    object-fit: contain;
    aspect-ratio: 18 / 19;
}
.introduction_item_text_container {
    display: flex;
    flex-direction: column;
    height: 100%;
    padding: 25px 25px 20px;
}
.introduction_item_info {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    flex: 1;
}
.introduction_item_message {
    font-size: 18px;
    font-weight: bold;
    line-height: 1.65;
    color: #333;
    margin-bottom: 15px;
}
.introduction_item_title {
    color: #6E6E6E;
    font-size: 14px;
    font-weight: bold;
    line-height: 1.2;
    text-align: center;
}
.introduction_item_link_area {
    position: relative;
    display: block;
    max-width: 265px;
    width: 100%;
    margin: auto;
    margin-top: 20px;
    min-height: 55px;
}
.introduction_item_link {
    display: block;
    text-align: center;
    border: 3px solid #4C826B;
    border-radius: 50px;
    background-color: #fff;
    color: #4C826B;
    padding: 13px 0;
    font-size: 16px;
    font-weight: 900;
    line-height: 1.2;
    letter-spacing: 0.1em;
}
.introduction_item_link:hover {
    background-color: #4C826B;
    color: #fff;
}
@media only screen and (max-width: 980px) {
    .introduction_list_container {
        justify-content: space-around;
    }
    .introduction_list_container::before,
    .introduction_list_container::after,
    .introduction_item {
        width: calc(100% / 2 - 20px);
    }

}
@media only screen and (max-width: 680px) {
    .introduction_list_container::before,
    .introduction_list_container::after {
        display: none;
    }
    .introduction_item {
        width: 80%;
        margin: auto;
    }
    .introduction_item_text_container {
        padding: 15px 20px;
    }
    .introduction_item_link_area {
        min-height: unset;
    }
}
/* 社員インタビュー一覧 */
.interview_list_sec {
    padding: 85px 0 95px;
}
.interview_list_container {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 45px 0;
}
.interview_list_container::before,
.interview_list_container::after {
    content: "";
    max-width: 360px;
    width: calc(100% / 3 - 20px);
}
.interview_list_container::before {
    order: 1;
}
.interview_item {
    display: flex;
    max-width: 360px;
    width: calc(100% / 3 - 20px);
    background-color: #fff;
    border-radius: 20px;
    overflow: hidden;
    box-shadow: 0px 4px 8px 0px rgba(25, 31, 27, 0.15);
}
.interview_item_link {
    width: 100%;
    display: flex;
    flex-direction: column;
}
.interview_item_link:hover {
    opacity: 0.6;
}
.interview_item_img img {
    object-fit: contain;
    aspect-ratio: 18 / 19;
}
.interview_item_info {
    padding: 25px 25px 20px;
    display: flex;
    flex-direction: column;
    flex: 1;
}
.interview_item_message {
    font-size: 18px;
    font-weight: bold;
    line-height: 1.65;
    color: #333;
    margin-bottom: 15px;
}
.interview_item_title {
    color: #6E6E6E;
    font-size: 14px;
    font-weight: bold;
    line-height: 1.2;
    text-align: center;
    margin-top: auto;
}
@media only screen and (max-width: 980px) {
    .interview_list_container {
        justify-content: space-around;
    }
    .interview_list_container::before,
    .interview_list_container::after,
    .interview_item {
        width: calc(100% / 2 - 20px);
    }

}
@media only screen and (max-width: 680px) {
    .interview_list_container::before,
    .interview_list_container::after {
        display: none;
    }
    .interview_item {
        width: 80%;
        margin: auto;
    }
    .interview_item_info {
        padding: 15px 20px;
    }
}
/* 社員インタビュー詳細 */
/* 社員インタビュー詳細FV */
.interview_detail_fv {
    position: relative;
}
.interview_detail_fv_inner {
    position: relative;
    max-width: 1440px;
    width: 100%;
    margin: auto;
}
.interview_detail_fv_img {
    width: 100%;
    max-height: 700px;
    height: 48.62vw;
}
.interview_detail_fv_container {
    position: absolute;
    max-width: 740px;
    width: 52vw;
    right: 0;
    /* bottom: 40px; */
    bottom: 2.78vw;
    /* padding: 60px 80px 65px; */
    padding: 4.17vw 5.56vw 4.52vw;
    background-color: #03C75A;
}
.idf_title {
    display: block;
    font-size: 2.5vw !important;
    font-weight: bold;
    line-height: 1.55!important;
    letter-spacing: 0.1em;
    color: #fff!important;
    margin-bottom: 2.08vw !important;
}
.idf_text {
    font-size: 1.39vw;
    font-weight: bold;
    color: #fff;
}
@media only screen and (min-width: 1440px) {
    .interview_detail_fv_container {
        padding: 60px 80px 65px;
        bottom: 40px;
    }
    .idf_title {
        font-size: 36px!important;
        margin-bottom: 30px!important;
    }
    .idf_text {
        font-size: 20px!important;
    }
}
/* 社員インタビュー詳細内容 */
.interview_detail {
    padding: 80px 0 90px;
}
.interview_detail_inner {
    max-width: 880px;
    width: 100%;
    margin: auto;
}
.interview_detail h2 {
    display: block;
    font-size: 24px!important;
    font-weight: bold;
    line-height: 1.15!important;
    letter-spacing: 0.1em;
    color: #03C75A;
    margin-bottom: 20px!important;
}
.interview_detail h3 {
    position: relative;
    display: block;
    font-size: 20px!important;
    font-weight: bold;
    line-height: 1.15!important;
    letter-spacing: 0.1em;
    padding-bottom: 10px;
    margin-bottom: 20px!important;
}
.interview_detail h3::before,
.interview_detail h3::after {
    position: absolute;
    content: "";
    left: 0;
    bottom: 0;
    height: 2px;
}
.interview_detail h3::before {
    width: 30%;
    background-color: #03C75A;
    z-index: 2;
}
.interview_detail h3::after {
    width: 100%;
    background-color: #eee;
    z-index: 1;
}
.interview_detail p {
    font-size: 16px;
    line-height: 1.9;
    letter-spacing: 0.1em;
    color: #000;
    margin-bottom: 40px;
}
.interview_detail_img {
    margin-bottom: 60px!important;
    border-radius: 20px!important;
}
.related_interviews {
    padding: 60px 0 80px;
}
.related_interviews .top_section_sub_title {
    text-align: center;
    margin-bottom: 10px!important;
}
.related_interviews .top_section_main_title {
    text-align: center;
    margin-bottom: 75px!important;
}
.interview_item_summary {
    font-size: 18px;
}
@media only screen and (max-width: 980px) {
    .interview_detail {
        padding: 60px 0 70px;
    }
    .interview_detail_inner {
        padding: 0 20px;
    }
    .interview_detail_title {
        font-size: 22px!important;
    }
    .interview_detail_img {
        margin-bottom: 40px;
    }
    .related_interviews {
        padding: 50px 0;
    }
    .related_interviews .top_section_main_title {
        margin-bottom: 50px!important;
    }
}
@media only screen and (max-width: 680px) {
    .interview_detail {
        padding: 40px 0 50px;
    }
    .interview_detail_fv_img {
        margin-bottom: 20px;
    }
    .interview_detail_fv_container {
        position: static;
        max-width: unset;
        width: 90%;
        margin: auto;
        padding: 30px 20px;
    }
    .idf_title {
        font-size: 24px!important;
        margin-bottom: 20px!important;
    }
    .idf_text {
        font-size: 16px;
    }
    .interview_detail_title {
        font-size: 20px!important;
    }
    .interview_detail_img,
    .interview_detail_text {
        margin-bottom: 30px;
    }
    .related_interviews {
        padding: 30px 0;
    }
    .related_interviews .top_section_main_title {
        margin-bottom: 30px!important;
    }
}

/* スケジュール */
.schedule {
    padding: 65px 0 90px;
    background-color: #F7F7F7;
}
.schedule_sub_title {
    display: block;
    text-align: center;
    font-size: 20px!important;
    font-weight: bold;
    color: #03C75A;
    margin-bottom: 5px!important;
}
.schedule_main_title {
    display: block;
    text-align: center;
    font-size: 64px!important;
    font-weight: bold;
    color: #03C75A;
    margin-bottom: 65px!important;
}
.schedule_table table {
    width: 100%;
}
.schedule_table tr {
    position: relative;
}
.schedule_table td:first-child {
    position: relative;
    min-width: unset!important;
    width: 160px;
    padding: 15px 10px 15px 30px;
    font-size: 16px;
    font-weight: bold;
    color: #03C75A;
    text-align: center;
    border: unset;
}
.schedule_table td:last-child::before {
    position: absolute;
    content: "";
    left: 0;
    top: 22px;
    width: 15px;
    height: 15px;
    background-color: #03C75A;
    border-radius: 50%;
}
.schedule_table td:last-child::after {
    position: absolute;
    content: "";
    width: 3px;
    height: 100%;
    top: 0;
    left: 6px;
    background-color: #03C75A;
}
.schedule_table td:last-child {
    position: relative;
    font-size: 16px;
    font-weight: bold;
    color: #03C75A;
    padding: 15px 30px 15px 50px;
    border: unset;
}
.schedule_table tr:first-child td:last-child::after {
    height: 50%;
    top: unset;
    bottom: 0;
}
.schedule_table tr:last-child td:last-child::after {
    height: 50%;
    top: 0;
}
@media only screen and (max-width: 980px) {
    .schedule {
        padding: 50px 0 70px;
    }
    .schedule_main_title {
        font-size: 48px!important;
        margin-bottom: 40px!important;
    }

}
@media only screen and (max-width: 680px) {
    .schedule {
        padding: 30px 0 50px;
    }
    .schedule_main_title {
        font-size: 40px!important;
        margin-bottom: 30px!important;
    }
    .schedule_table td:first-child {
        width: 100px;
    }
    .schedule_table tr:first-child td:last-child::after {
        height: calc(100% - 35px);
        bottom: 0px;
    }
    .schedule_table tr:last-child td:last-child::after {
        height: 25px;
    }
    .schedule_table td:last-child {
        padding: 15px 30px 15px 30px;
    }

}

.slick-slide {
    margin: 0 !important;
    padding: 0 !important;
    line-height: 0;
  }
  
  .slick-list {
    margin: 0 !important;
    padding: 0 !important;
    line-height: 0;
  }
  .achievements_list {
    display: block;
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
    line-height: 0;
  }
  .achievements_list .slick-slide {
    height: 65px;
    display: flex!important;
    align-items: center;
    justify-content: center;
  }
  /* slick スライダーの親要素 */
 .slick-list {
    line-height: 0; /* インライン要素による下の隙間を除去 */
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
  }
  .c-fixBtn {
    border: 1px solid #03C75A !important;
    color: #03C75A !important;
  }
  .c-fixBtn:hover {
    background-color: #03C75A !important;
  }
  .not_found {
    padding: 50px 0;
  }
  .not_found .top_section_sub_title {
    margin-bottom: 30px!important;
  }
  .not_found_btn {
    max-width: 300px;
    margin: auto;
  }