/* 2026-09-17 公開サイト追加CSSから同期 */
.mk-trouble .mk-kicker,
.mk-trouble .mk-section-title,
.mk-support .mk-kicker,
.mk-support .mk-section-title,
.mk-support .mk-section-lead,
.mk-flow .mk-kicker,
.mk-flow .mk-section-title,
.mk-flow .mk-section-lead,
.mk-faq .mk-kicker,
.mk-faq .mk-section-title,
.mk-business-info .mk-kicker,
.mk-business-info .mk-section-title {
  text-align: center !important;
}

.mk-trouble-layout {
  width: min(1080px, 100%);
  margin: 30px auto 0;
}

.mk-site .mk-emphasis-line {
  width: min(980px, 100%);
  margin-inline: auto;
}

.mk-samples .mk-section-lead,
.mk-support .mk-section-lead,
.mk-flow .mk-section-lead {
  width: min(760px, 100%) !important;
  margin-inline: auto !important;
  text-align: center !important;
}

.mk-price-inner {
  text-align: center;
}

.mk-price .mk-section-lead {
  width: min(720px, 100%) !important;
  margin-inline: auto !important;
  text-align: center !important;
}

.mk-price-row {
  justify-content: center;
}

.mk-price .mk-note {
  width: min(700px, 100%);
  margin: 34px auto 0;
  text-align: left;
}

.mk-support-card {
  width: min(940px, 79%) !important;
  margin: 37px auto 0 !important;
}

.mk-faq-list {
  margin-top: 34px !important;
}

.mk-contact {
  min-height: 860px;
  padding-block: 118px;
}

.mk-contact-layout {
  text-align: center;
}

.mk-contact-layout > * {
  width: min(800px, 100%);
  max-width: none;
  margin-inline: auto;
}

.mk-contact-lead {
  margin-top: 22px;
}

.mk-contact-layout > p:not(.mk-kicker, .mk-contact-lead, .mk-contact-note) {
  margin-top: 14px;
}

.mk-contact-details {
  margin-top: 40px;
  text-align: left;
}

.mk-contact-details > summary {
  min-height: 88px;
}

.mk-social-actions {
  gap: 16px;
  margin-top: 18px;
}

.mk-social-actions .wp-block-button__link {
  min-height: 60px;
}

.mk-contact-note {
  margin-top: 26px;
}

.mk-business-layout {
  display: block;
}

.mk-business-card {
  grid-template-columns: minmax(190px, .85fr) minmax(280px, 1.4fr) minmax(240px, 1fr);
}

.mk-business-card .mk-business-item:nth-child(2),
.mk-business-card .mk-business-item:nth-child(3),
.mk-business-card .mk-business-item:nth-child(5) {
  border-left: 1px solid var(--mk-line);
}

.mk-business-card .mk-business-item:nth-child(n + 4) {
  border-top: 1px solid var(--mk-line);
}

.mk-site .mk-business-card .mk-business-area {
  grid-column: 2 / -1 !important;
}

.mk-business-hours-copy {
  font-size: .88rem !important;
  line-height: 1.75 !important;
}

.mk-business-hours-note {
  display: inline-block;
  margin-top: 2px;
  color: #65756c;
  font-size: .78rem;
}

.mk-business-phone a {
  display: inline-block;
  color: var(--mk-green-dark);
  font-size: clamp(1.2rem, 1.8vw, 1.55rem);
  font-weight: 800;
  letter-spacing: .035em;
  text-decoration-color: rgba(22, 88, 63, .35);
  text-underline-offset: 4px;
}

@media (max-width: 1100px) {
  .mk-support-card { width: 86% !important; }
}

@media (max-width: 760px) {
  .mk-support-card { width: 100% !important; }
  .mk-price-row {
    align-items: center;
  }

  .mk-business-card {
    grid-template-columns: 1fr;
  }

  .mk-business-card .mk-business-item:nth-child(3),
  .mk-business-card .mk-business-item:nth-child(5) {
    border-left: 0;
  }

  .mk-business-card .mk-business-item:nth-child(n + 2) {
    border-top: 1px solid var(--mk-line);
  }

  .mk-site .mk-business-card .mk-business-area,
  .mk-site .mk-business-card .mk-business-hours {
    grid-column: auto !important;
  }

  .mk-business-phone a {
    font-size: 1.16rem;
  }

  .mk-contact {
    min-height: auto;
    padding: 88px 0 94px;
  }

  .mk-contact-details {
    margin-top: 31px;
  }

  .mk-contact-details > summary {
    min-height: 74px;
  }

  .mk-social-actions {
    gap: 12px;
    margin-top: 14px;
  }

  .mk-social-actions .wp-block-button__link {
    min-height: 54px;
  }

  .mk-contact-note {
    margin-top: 22px;
  }
}

/* 公開画面でのテーマCSS優先度を調整 */
.mk-site .mk-contact {
  min-height: 860px !important;
  padding-block: 118px !important;
}
.mk-site .mk-contact-lead { margin-top: 22px !important; }
.mk-site .mk-contact-layout > p:not(.mk-kicker, .mk-contact-lead, .mk-contact-note) { margin-top: 14px !important; }
.mk-site .mk-contact-details { margin-top: 40px !important; }
.mk-site .mk-contact-details > summary { min-height: 88px !important; }
.mk-site .mk-social-actions { gap: 16px !important; margin-top: 18px !important; }
.mk-site .mk-social-actions .wp-block-button__link { min-height: 60px !important; }
.mk-site .mk-contact-note { margin-top: 26px !important; }

.mk-site .mk-business-layout { display: block !important; }
.mk-site .mk-business-card {
  grid-template-columns: minmax(190px, .85fr) minmax(280px, 1.4fr) minmax(240px, 1fr) !important;
}
.mk-site .mk-business-card > .mk-business-item {
  border-left: 0 !important;
  border-top: 0 !important;
}
.mk-site .mk-business-card > .mk-business-item:nth-child(2),
.mk-site .mk-business-card > .mk-business-item:nth-child(3),
.mk-site .mk-business-card > .mk-business-item:nth-child(5) {
  border-left: 1px solid var(--mk-line) !important;
}
.mk-site .mk-business-card > .mk-business-item:nth-child(n + 4) {
  border-top: 1px solid var(--mk-line) !important;
}

@media (max-width: 760px) {
  .mk-site .mk-business-card { grid-template-columns: 1fr !important; }
  .mk-site .mk-business-card > .mk-business-item { border-left: 0 !important; }
  .mk-site .mk-business-card > .mk-business-item:nth-child(n + 2) { border-top: 1px solid var(--mk-line) !important; }
  .mk-site .mk-contact { min-height: auto !important; padding: 88px 0 94px !important; }
  .mk-site .mk-contact-details { margin-top: 31px !important; }
  .mk-site .mk-contact-details > summary { min-height: 74px !important; }
  .mk-site .mk-social-actions { gap: 12px !important; margin-top: 14px !important; }
  .mk-site .mk-social-actions .wp-block-button__link { min-height: 54px !important; }
  .mk-site .mk-contact-note { margin-top: 22px !important; }
}

/* 中間幅で事業者情報カードの右端が欠けるのを防ぐ */
@media (min-width: 761px) and (max-width: 840px) {
  .mk-site .mk-business-card { grid-template-columns: 1fr !important; }
  .mk-site .mk-business-card > .mk-business-item { border-left: 0 !important; }
  .mk-site .mk-business-card > .mk-business-item:nth-child(n + 2) { border-top: 1px solid var(--mk-line) !important; }
  .mk-site .mk-business-card .mk-business-area,
  .mk-site .mk-business-card .mk-business-hours { grid-column: auto !important; }
}

/* 広い画面でも文章ブロックをセクション中央に固定 */
.mk-site .mk-trouble-layout,
.mk-site .mk-emphasis-line,
.mk-site .mk-samples .mk-section-lead,
.mk-site .mk-price .mk-section-lead,
.mk-site .mk-price .mk-note,
.mk-site .mk-support .mk-section-lead,
.mk-site .mk-flow .mk-section-lead,
.mk-site .mk-contact-layout > * {
  margin-left: auto !important;
  margin-right: auto !important;
}

.mk-site .mk-trouble .mk-trouble-layout.mk-trouble-layout,
.mk-site .mk-trouble .mk-emphasis-line.mk-emphasis-line,
.mk-site .mk-contact .mk-contact-layout.mk-contact-layout > * {
  margin-left: auto !important;
  margin-right: auto !important;
}

/* 固定幅の説明文を広い画面でも中央に維持 */
.mk-site .mk-samples.mk-samples .mk-section-lead.mk-section-lead,
.mk-site .mk-price.mk-price .mk-section-lead.mk-section-lead,
.mk-site .mk-price.mk-price .mk-note.mk-note,
.mk-site .mk-support.mk-support .mk-section-lead.mk-section-lead,
.mk-site .mk-flow.mk-flow .mk-section-lead.mk-section-lead {
  margin-left: auto !important;
  margin-right: auto !important;
}

/* サポートカードを広い画面でもセクション中央に固定 */
.mk-site .mk-support.mk-support .mk-support-card.mk-support-card {
  margin-left: auto !important;
  margin-right: auto !important;
}

/* 2026-09-18 スマホメニュー全画面表示の修正 */
@media (max-width: 840px) {
  .mk-header {
    -webkit-backdrop-filter: none !important;
    backdrop-filter: none !important;
  }
}

/* 2026-09-18 ナビゲーション・スマホ表示調整 */
.mk-contact-details > summary > span::after {
  border-right: 0 !important;
  border-left: 2px solid currentColor !important;
  transform: rotate(-45deg) !important;
}

/* v0.4.2: 制作価格の金額と税込表記をスマートフォン内に収める */
@media (max-width: 767px) {
  .mk-site .mk-price-value {
    display: flex !important;
    width: 100% !important;
    justify-content: center !important;
    align-items: baseline !important;
    gap: 5px !important;
    white-space: nowrap !important;
  }

  .mk-site .mk-price-value > strong,
  .mk-site .mk-price-value > span {
    grid-column: auto !important;
    justify-self: auto !important;
  }
}

@media (max-width: 600px) {
  .mk-site .mk-price-row {
    width: 100% !important;
    align-items: center !important;
  }

  .mk-site .mk-price-row > .mk-price-label,
  .mk-site .mk-price-row > .mk-price-value {
    margin-left: auto !important;
    margin-right: auto !important;
  }

  .mk-site .mk-support-price {
    display: grid !important;
    width: 100% !important;
    grid-template-columns: auto auto !important;
    grid-template-areas:
      "label label"
      "optional price" !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 8px !important;
  }

  .mk-site .mk-support-price > .mk-price-label {
    grid-area: label !important;
    justify-self: center !important;
  }

  .mk-site .mk-support-price > .mk-optional {
    grid-area: optional !important;
    justify-self: end !important;
  }

  .mk-site .mk-support-price > .mk-support-value {
    grid-area: price !important;
    justify-self: start !important;
  }

  .mk-site .mk-support-value strong {
    font-size: clamp(2rem, 10vw, 2.7rem) !important;
  }

  .mk-site .mk-support-value span {
    font-size: clamp(0.72rem, 3.6vw, 0.9rem) !important;
  }

  .mk-site .mk-flow-item > .mk-step-number {
    left: 50% !important;
    transform: translateX(-50%) !important;
  }
}
