@charset "UTF-8";
/*
 * FILE_INDEX
 * 概要: ユーティリティクラス集 — 表示切替・スペーシング・装飾ヘルパー
 * INDEX:
 *   IDX:010 file-header
 *   IDX:020 pc-hidden
 *   IDX:030 sm-hidden
 *   IDX:040 xl-hidden
 *   IDX:050 sp-hidden
 *   IDX:060 space-contact
 *   IDX:070 decoration-utilities
 *   IDX:080 wp-layout-flex
 *   IDX:090 nowrap
 * 編集チートシート:
 *   レスポンシブ表示切替 → IDX:020-050
 *   余白調整 → IDX:060
 *   WP上書き装飾 → IDX:070-080
 * 依存:
 *   01_variables.css (CSS custom properties)
 * 注意:
 *   !important 多用 — WPコア・テーマ上書き目的
 */

/* IDX:010 file-header */
/* ==========================================================================
   04_utilities.css
   - u-* visibility / spacing utilities
   - Extracted from style.css lines 2569-2612. Original order preserved.
   ========================================================================== */

/* IDX:020 pc-hidden */
.u-pc-hidden {
  display: none !important;
}
@media (max-width: 768px) {
  .u-pc-hidden {
    display: block !important;
  }
}

/* IDX:030 sm-hidden */
.u-sm-hidden {
  display: none;
}
@media (max-width: 450px) {
  .u-sm-hidden {
    display: initial;
  }
}

/* IDX:040 xl-hidden */
.u-xl-hidden {
  display: none;
}
@media (max-width: 1200px) {
  .u-xl-hidden {
    display: initial;
  }
}

/* IDX:050 sp-hidden */
.u-sp-hidden {
  display: initial;
}
@media (max-width: 768px) {
  .u-sp-hidden {
    display: none !important;
  }
}

/* IDX:060 space-contact */
.u-space-contact {
  margin-top: 8rem;
}
@media (max-width: 768px) {
  .u-space-contact {
    margin-top: 10.6666666667rem;
  }
}

/* IDX:070 decoration-utilities */
/* [WP override G] Decoration utilities */
.link-emphasize, .link-emphasize a { color: #505050 !important; text-decoration: underline !important; }
.link-emphasize a:hover { color: #b6b6b6 !important; opacity: 1 !important; }
.line-color-green { color: #00B900 !important; }

/* IDX:080 wp-layout-flex */
/* [WP override G] WP core layout replacement */
.is-layout-flex { display: flex; flex-wrap: nowrap; justify-content: space-between; }

/* IDX:090 nowrap */
.nowrap {
  white-space: nowrap;
}
