@charset "UTF-8";
/*
    Template: swell
    Theme Name: SWELL CHILD
    Theme URI: https://swell-theme.com/
    Description: SWELLの子テーマ
    Version: 1.0.0
    Author: LOOS WEB STUDIO
    Author URI: https://loos-web-studio.com/

    License: GNU General Public License
    License URI: http://www.gnu.org/licenses/gpl.html
*/

/* =========== 共通パーツ ========== */
/* セクションタイトル */
h2.wp-block-heading.section_title {
  font-size: 1.5rem;
  margin-bottom: 35px;
}

/* 共通ボタン */
.swell-block-button.white_btn.is-style-btn_normal a {
  border: 1px solid #b0cad5;
  background-color: #b0cad5;
  color: #fff;
  transition: all 0.3s ease;
}
.swell-block-button.white_btn.is-style-btn_normal a:hover {
  background-color: #ffffff;
}
.swell-block-button.white_btn.is-style-btn_normal a:hover span {
  color: #b0cad5 !important;
}

/* ========== ヘッダー ========== */
.-series .l-header__logo {
  padding: 0;
}

/* ヘッダーボタン */
.swell-block-button.header_btn a {
  border: 1px solid var(--the-btn-color);
  transition: all 0.3s ease;
}
.swell-block-button.header_btn a:hover {
  background-color: #fff;
  color: var(--the-btn-color);
}

@media not all and (min-width: 960px) {
  .-series .l-header__logo {
    padding: 0 2vw;
  }
}

/* ========== FVセクション ========== */
.p-mainVisual__textLayer {
  top: 40%;
}
.p-mainVisual__slideTitle,
.p-mainVisual__slideText {
  display: inline-block;
  text-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
  background-color: rgba(0, 0, 0, 0.3);
  padding: 0.2em;
  border-radius: 0.2em;
}
/* 親要素で右寄せ */
.p-mainVisual__textLayer {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-end; /* ←これで右寄せ */
  height: 100%;
  position: absolute;
  top: 40%;
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
  z-index: 3;
}
.p-mainVisual__slideText {
  margin-top: 0;
}

@media screen and (max-width: 960px) {
  .p-mainVisual__slideTitle {
    font-size: 1.5rem;
  }
}

@media screen and (max-width: 600px) {
  .p-mainVisual__textLayer {
    top: 37%;
  }
  .p-mainVisual__slideText {
    text-align: start;
  }
}

/* ========== aboutセクション ========== */
.about_section .swell-block-column.swl-has-mb--s.about_img_column {
  align-self: center;
}
.about_section figure.wp-block-image.about_img img {
  border-radius: 30px;
}

/* ========== worksセクション ========== */
.work_section .p-postList__thumb.c-postThumb {
  border-radius: 10px;
}
.work_section span.c-postThumb__cat.icon-folder {
  border-radius: 0 0 0 10px;
}

/* ========== job_descriptionセクション ========== */

@media screen and (max-width: 600px) {
  figure.wp-block-image.job_img img {
    box-sizing: border-box;
    max-width: 150px;
    width: 100% !important;
    height: 100% !important;
    vertical-align: bottom;
    border-radius: 50%;
    aspect-ratio: 1 / 1;
  }
}

/* ========== voiceセクション ========== */
.ti-widget.ti-goog .ti-review-item.ti-review-item > .ti-inner {
  background-color: #ffffff !important;
  background: #ffffff !important;
}

@media screen and (max-width: 960px) {
  .ti-widget.ti-goog .ti-col-2 .ti-review-item {
    max-width: 48% !important;
  }
}

/* ========== newsセクション ========== */

/* ========== SNSセクション ========== */

.swell-block-button.Instagram_btn a {
  background: linear-gradient(
    45deg,
    #feda75,
    #fa7e1e,
    #d62976,
    #962fbf,
    #4f5bd5
  );
  transition: opacity 0.3s ease;
}
.swell-block-button.Instagram_btn a:hover {
  opacity: 0.85;
}
.swell-block-button.x_btn a {
  transition: background-color 0.3s ease;
}
.swell-block-button.x_btn a:hover {
  background-color: #444;
}

/* ========== Q&Aセクション ========== */
.qa_section .swell-block-fullWide__inner.l-article {
  background-color: #fff;
  padding: 30px;
  border-radius: 30px;
}

h3.wp-block-heading.q\&a_sub_title {
  margin-bottom: 10px;
}

.qa_section .post_content thead td,
.post_content thead th {
  text-align: center;
}

.qa_section .sp_box .cap_box_ttl {
  background-color: #f1f9ee;
  border: 1px solid #dcdcdc;
  color: #333;
  font-weight: bold;
  border-radius: 30px 30px 0 0;
}
.qa_section .sp_box .cap_box_content {
  border: 1px solid #dcdcdc;
  border-radius: 0 0 30px 30px;
}

div#content {
  margin-bottom: 0 !important;
}

@media screen and (max-width: 960px) {
  .qa_section .swell-block-fullWide__inner.l-article {
    margin: 0 20px;
    padding: 30px 20px;
  }
}

/* ========== CTAセクション ========== */

div#before_footer_widget {
  margin-top: 0 !important;
}
.swell-block-fullWide.cta_section {
  background-image: url("/wp-content/uploads/2025/05/IMG_2203-1.jpg") !important;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  background-attachment: fixed;
}

.cta_section .swell-block-fullWide__inner.l-article {
  background-color: rgba(255, 255, 255, 0.8);
  padding: 30px;
  border-radius: 30px;
}

.cta_section h2.wp-block-heading.section_title.u-mb-30 {
  margin-bottom: 35px !important;
}
.cta_section .swell-block-column.line_text_column {
  align-self: center;
}
.cta_section .swell-block-columns__inner {
  row-gap: 40px;
}

/* CTAボタン */
.cta_section .swell-block-button.tel_btn a,
.cta_section .swell-block-button.mail_btn a {
  width: 340px;
  max-width: 100%;
  padding: 10px;
  border: 1px solid var(--the-btn-color);
  transition: all 0.3s ease;
}
.cta_section .swell-block-button.tel_btn a:hover,
.cta_section .swell-block-button.mail_btn a:hover {
  background-color: #fff;
  color: var(--the-btn-color);
}

@media screen and (max-width: 960px) {
  .cta_section .swell-block-fullWide__inner.l-article {
    margin: 0 20px !important;
  }
}

@media screen and (max-width: 600px) {
  .cta_section .swell-block-columns__inner {
    row-gap: 20px;
  }
}

/* ========== フッター ========== */
li.c-iconList__item.-rss {
  display: none;
}

@media screen and (max-width: 600px) {
  .l-footer__nav {
    display: block;
    text-align: center;
  }
}

/* ========== ドロワーメニュー ========== */
.p-spMenu__body::before {
  content: "";
  display: block;
  width: 115px;
  height: 70px;
  left: -20px;
  background: url("/wp-content/uploads/2025/05/c957b7835fcdd10325727658b2cb0b8f.jpg")
    no-repeat center / contain;
  margin-bottom: 10px;
  position: relative;
  z-index: 10;
}

/* ========== 下層ページ ========== */
/* 共通パーツ */
.c-pageTitle {
  text-align: center;
  text-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
}
@media screen and (max-width: 600px) {
  .c-pageTitle {
    font-size: 1.5rem;
  }
}

/* ========== 業務内容・各種料金ページ(page-id-11) =========== */
/* ========== 各種業務内容 ========== */
.page-id-11 .swell-block-column.swl-has-mb--s.about_page_table_column,
.page-id-11 .swell-block-column.swl-has-mb--s.about_page_img_column {
  align-self: center;
}

.page-id-11 h3.about_page_table_title {
  font-size: 1.25rem;
  margin-bottom: 5px;
}

.page-id-11 figure.wp-block-image.about_page_column_img img {
  border-radius: 30px;
}

/* ========== 国家資格セクション ========== */
.page-id-11
  .national_qualification_section
  .swell-block-column.national_qualification_text_column {
  align-self: center;
}
.page-id-11
  .national_qualification_section
  figure.wp-block-image.national_qualification_column_img
  img {
  border-radius: 30px;
}

/* ========== 会社概要セクション ========== */
.page-id-11
  .swell-block-fullWide.company_information_section
  .swell-block-fullWide__inner.l-article {
  background-color: #fff;
  border-radius: 30px;
  padding: 20px;
}

@media screen and (max-width: 960px) {
  .page-id-11
    .swell-block-fullWide.company_information_section
    .swell-block-fullWide__inner.l-article {
    margin: 0 20px;
  }
}

@media screen and (max-width: 600px) {
  .page-id-11
    .swell-block-fullWide.company_information_section
    .swell-block-fullWide__inner.l-article {
    padding: 20px 15px;
    margin: 0 10px;
  }

  .page-id-11
    .swell-block-fullWide.company_information_section
    table
    tr
    td:first-child,
  .page-id-11
    .swell-block-fullWide.company_information_section
    table
    tr
    th:first-child {
    white-space: nowrap;
  }

  .page-id-11
    .swell-block-fullWide.company_information_section
    table
    tr
    td:last-child,
  .page-id-11
    .swell-block-fullWide.company_information_section
    table
    tr
    th:last-child {
    width: 75%;
  }
}

/* ========== お問い合わせページ(page-id-13) ========== */
form#snow-monkey-form-337 {
  margin-top: 5rem;
}

.wp-block-snow-monkey-forms-item.smf-item {
  margin-bottom: 1rem;
}

.page-id-13
  .smf-progress-tracker__item[aria-current="true"]
  .smf-progress-tracker__item__number {
  background-color: #388db7;
}

/* お問い合わせページボタン */
.page-id-13 .smf-action {
  text-align: center;
}
.page-id-13 .smf-action .smf-button-control__control {
  margin-top: 3rem;
  border-radius: 20px;
  background-color: #388db7;
  background-image: none;
  color: #fff;
  border: 1px solid #388db7;
  transition: all 0.3s ease;
}
.page-id-13 .smf-action .smf-button-control__control:hover {
  background-color: #fff;
  color: #388db7;
}

.page-id-13 div#content {
  margin: 0 auto 6em !important;
}

@media screen and (max-width: 600px) {
  .page-id-13 p.contact_page_text,
  .page-id-13 p.recruit_text {
    text-align: start;
  }
}

/* ========== 投稿ページ共通ページ ========== */
.category .c-pageTitle,
.archive .c-pageTitle {
  text-shadow: none;
}

.category .p-breadcrumb.-bg-on,
.archive .p-breadcrumb.-bg-on,
.single .p-breadcrumb.-bg-on {
  background-color: #fff !important;
}

.category div#content,
.archive div#content,
.single div#content {
  margin: 0 auto 6em !important;
}

/* ========== 工事実績(category) ========== */

/* ========== プライバシーポリシー(page-id-15) ========== */
.page-id-15 .swell-block-button.contact_btn a {
  border: 1px solid var(--the-btn-color);
  transition: all 0.3s ease;
}
.page-id-15 .swell-block-button.contact_btn a:hover {
  background-color: #fff;
  color: var(--the-btn-color);
}
.page-id-15 div#content {
  margin: 0 auto 6em !important;
}
