@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
*/
/* Contrast guardrails for Fire Equipment M&A Center */
.sma-site,
.l-mainContent,
.post_content {
  color: #14273d !important;
}

.sma-site .sma-section,
.sma-site .sma-section.soft,
.sma-site .sma-section.ivory,
.sma-site .sma-logo-showcase,
.sma-site .sma-card,
.sma-site .sma-point,
.sma-site .sma-topic,
.sma-site .sma-formwrap,
.sma-site .sma-note,
.sma-site .sma-field-band,
.sma-site .sma-field-words div,
.sma-site .sma-fee-compare__item,
.sma-site .sma-metric,
.post_content {
  color: #14273d !important;
}

.sma-site .sma-section h1,
.sma-site .sma-section h2,
.sma-site .sma-section h3,
.sma-site .sma-card h3,
.sma-site .sma-point b,
.sma-site .sma-topic,
.sma-site .sma-field-words b,
.sma-site .sma-fee-compare__item b,
.post_content h1,
.post_content h2,
.post_content h3,
.post_content h4,
.c-postTitle__ttl {
  color: #071d34 !important;
}

.sma-site .sma-copy,
.sma-site .sma-card p,
.sma-site .sma-card li,
.sma-site .sma-point span,
.sma-site .sma-topic small,
.sma-site .sma-note,
.sma-site .sma-field-band p,
.sma-site .sma-field-words span,
.post_content p,
.post_content li,
.post_content td,
.post_content th {
  color: #34495f !important;
}

.sma-site .sma-label,
.sma-site .sma-fee-compare__item span {
  color: #b72d2f !important;
}

.sma-site .sma-top,
.sma-site .sma-hero,
.sma-site .sma-subhero,
.sma-site .sma-cta,
.sma-site .sma-footer,
.sma-site .sma-mobile-cta .sma-btn.navy {
  color: #ffffff !important;
}

.sma-site .sma-top *,
.sma-site .sma-hero h1,
.sma-site .sma-hero .sma-lead,
.sma-site .sma-subhero h1,
.sma-site .sma-subhero p,
.sma-site .sma-cta h2,
.sma-site .sma-cta .sma-copy,
.sma-site .sma-btn.navy,
.sma-site .sma-btn.red {
  color: #ffffff !important;
}

.sma-site .sma-footer b,
.sma-site .sma-footer strong {
  color: #ffffff !important;
}

.sma-site .sma-footer p,
.sma-site .sma-footer li,
.sma-site .sma-footer a,
.sma-site .sma-copybar {
  color: #dfe8f1 !important;
}

.sma-site .sma-pill,
.sma-site .sma-fee-hero,
.sma-site .sma-fee-hero strong,
.sma-site .sma-btn.gold,
.sma-site .sma-btn.white,
.sma-site .sma-menu a {
  color: #071d34 !important;
}

.sma-site .sma-fee-hero__badge,
.sma-site .sma-card .mark,
.sma-site .sma-flow .sma-card::before {
  color: #ffffff !important;
}

.sma-site input,
.sma-site textarea,
.sma-site select,
.sma-cf7-ux input,
.sma-cf7-ux textarea,
.sma-cf7-ux select {
  background: #ffffff !important;
  color: #10283f !important;
}

.sma-site input::placeholder,
.sma-site textarea::placeholder,
.sma-cf7-ux input::placeholder,
.sma-cf7-ux textarea::placeholder {
  color: #7b8794 !important;
  opacity: 1 !important;
}

.post_content a:not(.sma-btn),
.l-mainContent a:not(.sma-btn) {
  color: #0b4f7a !important;
}

.l-sidebar:empty {
  display: none !important;
}
/* Contrast refinements after visual check */
.sma-site .sma-hero .sma-label,
.sma-site .sma-subhero .sma-label,
.sma-site .sma-cta .sma-label {
  color: #f2c76b !important;
}

.post_content h2 {
  color: #ffffff !important;
}

.post_content h2 a,
.post_content h2 span {
  color: #ffffff !important;
}

.sma-site .sma-section h2,
.sma-site .sma-field-band h3,
.sma-site .sma-card h3 {
  color: #071d34 !important;
}
/* Company page contrast fixes */
.sma-site .sub,
.sma-site section.sub {
  background: linear-gradient(90deg, #071d34, #153d63) !important;
  color: #ffffff !important;
}

.sma-site .sub h1,
.sma-site .sub p,
.sma-site section.sub h1,
.sma-site section.sub p {
  color: #ffffff !important;
}

.sma-site .sub .k,
.sma-site section.sub .k {
  color: #f2c76b !important;
}

.sma-site .ttl {
  color: #071d34 !important;
}

.sma-site .table th,
.sma-site .table td {
  color: #10283f !important;
}

/* Mobile company profile readability */
@media (max-width: 640px) {
  .sma-site .table {
    width: 100% !important;
    table-layout: fixed !important;
  }

  .sma-site .table th,
  .sma-site .table td {
    display: block !important;
    width: 100% !important;
    box-sizing: border-box !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
    word-break: normal !important;
    line-height: 1.85 !important;
  }

  .sma-site .table td a {
    overflow-wrap: anywhere !important;
  }

  .sma-site .sub p {
    font-size: 16px !important;
    line-height: 2 !important;
    overflow-wrap: anywhere !important;
  }
}

/* Mobile company profile final tuning */
@media (max-width: 640px) {
  .sma-site,
  .sma-site * {
    letter-spacing: 0 !important;
  }

  .sma-site .sub p {
    max-width: 100% !important;
    font-size: 15px !important;
    line-height: 2 !important;
    word-break: normal !important;
    overflow-wrap: anywhere !important;
  }

  .sma-site .sec {
    overflow: hidden !important;
  }

  .sma-site .table {
    display: block !important;
    max-width: 100% !important;
    overflow: visible !important;
  }

  .sma-site .table tbody,
  .sma-site .table tr,
  .sma-site .table th,
  .sma-site .table td {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
  }

  .sma-site .table th,
  .sma-site .table td {
    padding: 17px 12px !important;
    font-size: 14px !important;
    line-height: 1.85 !important;
    white-space: normal !important;
    word-break: break-all !important;
    overflow-wrap: anywhere !important;
  }
}

/* Mobile viewport containment for company profile */
@media (max-width: 640px) {
  .sma-site .sma-inner {
    width: calc(100vw - 28px) !important;
    max-width: calc(100vw - 28px) !important;
    min-width: 0 !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  .sma-site .table,
  .sma-site .table tbody,
  .sma-site .table tr,
  .sma-site .table th,
  .sma-site .table td {
    min-width: 0 !important;
    max-width: calc(100vw - 28px) !important;
  }

  .sma-site .table th,
  .sma-site .table td {
    width: calc(100vw - 28px) !important;
  }
}
