@charset "UTF-8";

/* smb-boxのwidthが40vwになっているのを解除 */
.smb-box__background {
    width:auto;
    margin: auto;
}

/* ボタンの色調整 */
.is-style-snow-monkey-143790 span.smb-btn__label {
    color: #333;
}

/* 見出しの調整 */

body:not(.home) .p-entry-content h2:not(.c-entry-aside__title, .c-entry-summary__title, .smb-section__title) {
    font-size: 1.5rem !important;
        padding: 0.5rem 1rem;}

@media print, screen and (max-width: 639px) {
  body:not(.home) .p-entry-content h2:not(.c-entry-aside__title, .c-entry-summary__title, .smb-section__title) {
    font-size: 1.1rem !important;
}
}


.benefits .smb-box__background {
    width:auto;
    margin: auto;
}
.insight .smb-box__background {
    width:auto;
    margin: auto;
}

/* ヘッダー */
.home .l-1row-header__branding, .l-1row-header__content, .l-2row-header__row:first-child {
    padding-top: 10px !important;
}


.home .custom-logo{
  filter: brightness(0) invert(1);
}

    [data-scrolled=true] .home .custom-logo{
      filter: none;
    }

.l-header__content {
    padding-top: var(--_padding-2) !important;
}

body:not(.recruit) .c-header-content{
  display: none;
}


.home .l-1row-header .p-global-nav .c-navbar__item>a {
    font-size: 1rem;
    color: #ffffff;
    padding: 2px 1rem;
}

.recruit .l-1row-header .p-global-nav .c-navbar__item>a {
    font-size: 1rem;
    color: #ffffff;
    padding: 2px 1rem;
}

.l-1row-header .p-global-nav .c-navbar__item>a {
    font-size: 1rem;
    padding: 2px 1rem;
}

.p-global-nav .c-navbar__item a:hover {
    background: none;
}
.p-global-nav .c-navbar__item .c-navbar__subitem a:hover {
    color: #fff;
}
/* .c-navbar__item span {
    display: inline-block;
    text-decoration: none;
    position: relative;
    transition: .3s;
}

.c-navbar__item span::after {
    position: absolute;
    bottom: 0;
    left: 0;
    content: '';
    width: 0;
    height: 1px;
    background-color: #ffffff;
    transition: .3s;
}

.c-navbar__item span:hover::after {
    width: 100%;
} */

/* .current_page_item span::after {
    width: 100%;
} */

@media (min-width: 1024px) {
    [data-scrolled=true] .l-header--sticky-overlay-colored-lg .l-1row-header .p-global-nav .c-navbar__item>a {
      color: var(--wp--preset--color--sm-accent);
    }

        [data-scrolled=true] .sm-nav-menu-item-highlight a {
      color: #ffffff !important;
    }

}

.icon-instagram:before {
    font-size: 2.5rem;
}

/* .p-global-nav .c-navbar__item a:hover {
    color: #ffffff;
} */

.c-navbar__item span.icon-instagram:after{
  display: none;
}  



/* フッター */

.l-footer{
  background-image: url(/cms/wp-content/uploads/2025/06/img_bg_footer.jpg);
  background-size: cover;
  border-top: 0px;
}


.l-footer .l-footer-widget-area {
    background-color: transparent;
}

.l-footer-widget-area__item .wp-block-column{
  color: #ffffff;
  font-weight: bold;
}

.l-body .l-footer .c-copyright {
    background-color: transparent;
}

.footer_heading{
  font-size: 1.5rem;
  border-bottom: solid 1px #ffffff;
}

/* トップページ */
.top_mv_copy{
  position: relative;

}

.top_mv p{
  text-shadow: 0px 0px 5px rgba(104, 104, 104, 0.45);
  font-weight: bold;
}

@media print, screen and (max-width: 640px) {
  p.top_mv_copy-s span{
    letter-spacing: 0 !important;
  }
}
.top_mv_copy::after{
  content: "";
  position: absolute;
  bottom: -10px;
  left: 0;
  width: 15%;
  /* border-bottom: solid 2px #ffffff; */
  background-color: #ffffff; /* 線色 */
  border-radius: 2px; /* 線幅の半分 */
  height: 4px; /* 線幅 */


}

@media print, screen and (max-width: 640px) {
    .home .wp-block-column {
        letter-spacing: 0 ;
    }
}

.home h2:not(.smb-section__title){
  position: relative;
  color: #192350;
}

.home h2:not(.smb-section__title)::after{
  content: "";
  position: absolute;
  bottom: -10px;
  left: 0;
  width: 200px;
  /* border-bottom: solid 2px #192350; */
    background-color: #192350; /* 線色 */
  border-radius: 1px; /* 線幅の半分 */
  height: 2px; /* 線幅 */
}

/* ボタンの調整 */
@media print, screen and (max-width: 640px) {
    .smb-btn{
        font-size: 1rem;
        padding-left: 0;
        padding-right: 0;
    }
}


/* 上をぴったり */
.home.page .l-contents__inner:first-child {
    padding-top:0;
    margin-top: 0 !important;
}


.wp-block-column.top_2column_right{
    margin-right: max(20px, calc((100vw - 1080px) / 2));    
}

@media print, screen and (max-width: 1023px) {
.wp-block-column.top_2column_right{
    margin-right: 0;
    padding: 1rem;
    letter-spacing: 0 !important;
}
}



.top_mv {
  min-height: 80vh;
}

@media print, screen and (max-width: 1023px) {
.top_mv {
  min-height: 20vh;
    clip-path: none
}
/* span{
  letter-spacing: 0 !important;
} */
}

.top_section_service .smb-btn-wrapper.is-style-ghost .smb-btn {
    --smb-btn--color: var(--smb-btn--style--ghost--color);
    background-color: #0000;
    border: 3px solid var(--smb-btn--style--ghost--border-color);
}

.top_section_service  span.smb-btn__label {
    display: flex;
    align-items: center;
    gap: 10px;
}
.home .is-style-ghost:hover {
transition: 0.3s;
background: none;
}

.is-style-ghost:hover {
    background: transparent;
    transform: translateY(-2px);
}

.btn_top_white .smb-btn::after {
  background-color: #187d38;
}

.btn_top_white span.smb-btn__label{
    color: #ffffff;
}

.top_section_case .smb-section__title:after {
background-color: #ffffff; 
}

.top_section_case .c-entry-summary--result.c-entry-summary--type-result {
    background-color: #192350;
    color: #ffffff;
}

.top_section_case .c-entry-summary:hover {
    background:#192350;
}

.top_section_case .c-entries--panel .c-entry-summary__body {
    padding: 0 1rem;
}

.top_section_case .c-entry-summary__figure {
    margin-bottom: 10px;
}

body:not(.single-news) li.c-meta__item.c-meta__item--published {
  display: block;
  min-width: 115px;
}

.top_section_news .c-entry-summary__body {
    display: flex;
    flex-direction: row-reverse;
    justify-content: flex-end;
    gap: 1rem;
}

@media print, screen and (max-width: 639px) {
.top_section_news .c-entry-summary__body {
    flex-direction: column-reverse;

}
}

.top_section_news .c-entries--text2 .c-entry-summary__meta {
    margin-top: 0;
}

.top_section_news .c-entry-summary__term {
    background-color: #ffffff;
    color: #187d38;
    border: solid 1px #187d38;
    min-width: 80px;
    text-align: center;
    display: inline-block;
    font-weight: 700;
    --_font-size-level: -2;
    font-size: var(--_font-size);
    line-height: var(--_line-height);
    padding: calc(var(--_padding-2) * .5) var(--_padding-2);
}

.top_section_news .c-entry-summary:hover {
    background: none;
}





/* 数字で見る */
body.insight .p-entry-content h3:not(.c-entry-aside__title, .c-entry-summary__title, .smb-section__title) {
font-size: 2rem;
}

body.insight .p-entry-content h3:not(.c-entry-aside__title, .c-entry-summary__title, .smb-section__title)::after {
display: none;
}

body.insight .p-entry-content h3:not(.c-entry-aside__title, .c-entry-summary__title, .smb-section__title)::before {
display: none;
}

body.insight .p-entry-content h4:not(.c-entry-aside__title, .c-entry-summary__title, .smb-section__title) {
border-bottom: 0;
background: none;
}

.insight_box-blue {
  box-shadow: 4px 4px #192350;
}


.insight_box-red {
  box-shadow: 4px 4px #D63232;
}


.insight_box-yellow {
  box-shadow: 4px 4px #D69D32;
}


.insight_box-green {
  box-shadow: 4px 4px #2A883A;
}


.insight .wp-block-columns .smb-box {
  min-height: 716px;
}

@media print, screen and (max-width: 639px) {
.insight .wp-block-columns .smb-box {
  min-height: auto; /* スマホでは min-height を解除 */
}
}

/* ネストされた .smb-box に min-height を適用しない */
.insight .wp-block-columns .smb-box .smb-box {
  min-height: auto; /* 明示的に min-height を解除 */
}

.insight .smb-box .smb-box {
  min-height: auto; /* 明示的に min-height を解除 */
}

@media print, screen and (max-width: 639px) {
  .insight .smb-box {
    padding: 1rem 0.8rem;
  }
}

.insight .smb-box p {
  line-height: 3rem;
}

@media print, screen and (max-width: 639px) {
  .insight .smb-box p {
    line-height: 1.5rem;
  }
}

.insight .insight_label_gender {
  padding: 0;
  /* max-width: fit-content;
  min-width: 90px; */
  height: 30px;
  border-radius: 4px;
}

@media print, screen and (max-width: 639px) {
  .insight .insight_label_gender {
    max-width: 100%;
  }
}

.insight p.insight_label_gender {
  line-height: 30px;
  font-weight: bold;
}

@media print, screen and (max-width: 1023px) {
  .insight_6cl .sme-line-height {
    display: inline-block;
    font-size: 40px;
  }
}

.insight_6cl .wp-block-columns {
  flex-wrap: wrap; /* 子要素を折り返す */
}

@media print, screen and (max-width: 639px) {
  .insight_6cl .wp-block-column {
    flex: 0 0 50%; /* 100% / 2 = 50% */
    max-width: 45%;
  }
}

@media print, screen and (max-width: 1023px) {
  .insight_3cl span.sme-line-height {
    display: inline-block;
    font-size: 40px !important;
    letter-spacing: 0;
  }
}
@media print, screen and (max-width: 1023px) {
  .insight_3cl.insight_gakubu span.sme-line-height {
    display: inline-block;
    font-size: 20px !important;
    letter-spacing: 0;
  }
}

.insight_3cl .wp-block-columns {
  flex-wrap: wrap; /* 子要素を折り返す */
}

@media print, screen and (max-width: 639px) {
  .insight_3cl .wp-block-column {
    flex: 0 0 33%; /* 100% / 3 = 33% */
    max-width: 27%;
  }
}


/* 募集要項 */

.job a{
  color: #187d38;
}

.job .c-prev-next-nav a{
  color: #ffffff;
}

/* .job table{
  border-width: 0 !important;
} */
.btn-entry a.smb-btn{
  background-color: #187d38;
  color: #ffffff;
  font-weight: bold;
  padding: 0.5rem 3rem;
}
@media print, screen and (max-width: 639px) {
  .wp-container-core-group-is-layout-0545aeb0 > :where(:not(.alignleft):not(.alignright):not(.alignfull)){
    max-width: 100% !important;
  }
}
@media print, screen and (max-width: 639px) {
  .wp-block-flexible-table-block-table.wp-block-flexible-table-block-table>table tr th {
    border-bottom: 0;
  }
    .wp-block-flexible-table-block-table.wp-block-flexible-table-block-table>table tr:not(:last-child) td {
    border-bottom: 0;
  }

  th {
    background-color: #dbdbdb !important;
    border-width: 0 !important;
  }
.job_flow .is-layout-flex {
    flex-wrap: nowrap;
            padding: 12px;
}

.job_flow figure.wp-block-image.aligncenter.size-full {
    margin-top: 10px;
}

.job_flow .is-layout-constrained{
    margin-top: 10px;
}
.job_flow h2{
    margin-bottom: 2rem;
  }
}

/* 下層ページ */
.img_crop_liquid img {
    border-radius: 44% 70% 70% 42% / 30% 37% 73% 80%;
    aspect-ratio: 4 / 3;
    ;
}

.childpage_mv .smb-section-with-bgimage__bgimage img, .smb-section-with-bgimage__bgimage video {
    object-fit: contain;
    aspect-ratio: 1920 / 1080;
}

body:not(.home) .p-entry-content h2:not(.c-entry-aside__title, .c-entry-summary__title, .smb-section__title) {
    font-size: 1.5rem !important;
        padding: 0.5rem 1rem;}

@media print, screen and (max-width: 639px) {
  body:not(.home) .p-entry-content h2:not(.c-entry-aside__title, .c-entry-summary__title, .smb-section__title) {
    font-size: 1.1rem !important;
}
}

/* こんな会社 */

@media print, screen and (min-width: 639px) {
#foogallery-gallery-3096 .fg-image {
    width: 300px !important;
}

}
/* 先輩の声 */
.image_senpai img{
    border-radius: 30% 70% 70% 30% / 30% 30% 70% 70%;
}

.smb-faq__item__question__body {
    color: #192350;
    padding-left: 0.2rem;
    position: relative;
    font-style: italic;
}

.smb-faq__item__question__body::before {
    content: "ー";
    position: absolute;
    left: -1.5rem;
    top: 0;
    font-weight: bold;
    color: #192350;
}

.ds_tailwind{
  box-shadow: rgba(0, 0, 0, 0.1) 0px 10px 15px -3px, rgba(0, 0, 0, 0.05) 0px 4px 6px -2px;
}

@media print, screen and (max-width: 640px) {
    .home .wp-block-column {
        font-size: 1rem;
    }
}

/* 移住支援 */
.wp-block-columns.ui_slider_column{
    max-width: 1280px;
    margin: auto;
}


/* 採用ページトップ */
@media (min-width: 1024px) {
    [data-scrolled=true] .recruit .l-header--sticky-overlay-colored-lg {
      display:none;
    }
}

.recruit .l-contents__inner:first-child{
    padding-top: 0 !important;
}

.recruit_mv p{
font-family: "UDDigiKyokasho Pro", serif;
font-weight: normal;
font-size: 2rem;
letter-spacing: 0.08em;
line-height: 50px;
color: #fff;
text-shadow: 0px 0px 10px #000;
}

@media print, screen and (max-width: 639px) {
.recruit_mv p{
  font-size: 1.8rem;
  letter-spacing: 0.02em;

}
}


.recruit .l-header--sticky-overlay-colored-lg .c-hamburger-btn__bar {
  background-color: #ffffff;
}

@media print, screen and (max-width: 1023px) {
.recruit .l-header--sticky-overlay-colored-lg .c-hamburger-btn__bar {
  background-color: #333;
}
}


.recruit .c-hamburger-btn__label{
  display: none;
}

.recruit .c-hamburger-btn[aria-expanded="false"] {
    border: 2px solid #fff;
    padding: 10px;
    border-radius: 50%;
}
@media print, screen and (max-width: 639px) {
  .recruit .c-hamburger-btn[aria-expanded="false"] {
      border: 0;
  }
}

.c-hamburger-btn__bar {
    height: 2px;
}



.recruit .custom-logo{
  filter: brightness(0) invert(1);
}

@media print, screen and (max-width: 1023px) {
  .recruit .custom-logo{
    filter: none;
  }
}
/* 
.recruit .l-simple-header__row {
        padding-top: 10px;
} */

body.recruit .p-entry-content h3:after{
  background-image: none !important;
}

body.recruit .p-entry-content h3:before{
  background-image: none !important;
}

.spider>.spider__arrow {
    position: absolute;
    top: calc(50% - var(--spider--arrow-button-size) / 2);
    z-index: 1;
    background-color: #ffffff;
    border-radius: 50%;
}

.spider__arrow[data-direction=next]:before {
    border-right: 1px solid #187d38;
    border-top: 1px solid #187d38;
    right: calc(55% - var(--spider--arrow-size) / 2);
}
.spider__arrow[data-direction=prev]:before {
    border-left: 1px solid #187d38;
    border-bottom: 1px solid #187d38;
    left: calc(55% - var(--spider--arrow-size) / 2);
}

.recruit_job_carousel .c-entry-summary__figure {
    border-radius: 40px 0px;
    aspect-ratio: 1 / 1;
}

.recruit_job_carousel .c-entry-summary__body {
    position: absolute;
    bottom: 57px;
    right: 0;
    background-color: #192350;
    color: #fff;
    min-width: 210px;
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0.5rem;
}

.recruit_job_carousel  .c-entry-summary__header {
    margin-bottom: 0;
}

.btn_white .smb-btn::before {
border: 1px solid #187d38;
}

.btn_white .smb-btn::after {
  background-color: #187d38;
}


.recruit_heading_p_bg img{
  object-fit: contain;
}

/* 採用トップ内数字で見るセクション */
.insight_box_2cl .wp-block-columns:before{
    content: "";
    border: 2px dashed #d3d3d3;
} 

.recruit .insight_box_2cl{
  padding: 102px 2rem;
} 

@media print, screen and (max-width: 783px) {
.recruit .insight_box_2cl{
  padding: var(--wp--preset--spacing--40);;
} 
}

@media print, screen and (max-width: 783px) {
  .insight_box_2cl .wp-block-columns:before{
    width: 100%;
  } 
}


.insight_box_2cl .wp-block-column:first-child{
order: -1;
}

.recruit_flex_kankyo p {
  display: block;
  width: 100%;
  padding: 1rem;
  position: relative;

}

.recruit_flex_kankyo p a {
text-decoration: none;
}


/* .recruit_flex_kankyo p::after {
  content: "";
  position: absolute;
  top: 26px;
  left: 30%;
  width: 1rem;
  height: 1rem;
  border-top: 2px solid #2A883A;
  border-right: 2px solid #2A883A;
  transform: rotate(45deg);
} */

.recruit_flex_kankyo p:not(:last-child) {
  border-bottom: 1px solid #2A883A;
}

.section_recruit_kankyo {
    border-radius:0 0 120px 0 ;
    background-color: #fff;
    z-index: 1;
}

@media print, screen and (max-width: 639px) {
.section_recruit_kankyo {
    border-radius:0 0 60px 0 ;
}
}

.c-entry__content .section_recruit_senpai {
    margin-top: -100px !important;
}

@media print, screen and (max-width: 639px) {
.c-entry__content .section_recruit_senpai {
    margin-top: -50px !important;
}
}

.header_flex-container span.icon-instagram {
    color: #ffffff;
}


.header_flex-container {
    display: flex;
    flex-direction: row;
     gap: 1rem;
    align-items: center;
    justify-content: center;
}

.header_flex-container button {
    width: 120px;
    height: 46px;
    background: #2a883a;
    color: #ffffff;
    opacity: 1;
    filter: drop-shadow(4px 4px 0px #fff);
    border-radius: 38px 0;
    border: 0;
    font-weight: bold;
    font-size: 14px;
    letter-spacing: 0.1em;
    padding: 0 1rem;
    cursor: pointer;
}

.header_flex-container a:where(:not(.wp-element-button))
 {
    text-decoration: none;
    display: flex;
}

.recruit  .l-header:not(.l-header--left) .c-row__col {
    padding-right: 0;
}