/*
Theme Name: くらしサポート 大大
Theme URI: https://kurashi-daidai.com/
Author: mtree design
Author URI: https://kurashi-daidai.com/
Description: 春日井市・小牧市・守山区の生活サポート「くらしサポート 大大（だいだい）」公式サイト用テーマ。自作クラシックテーマ。お知らせ（投稿）機能のみCMS化。
Version: 2.13.0
Requires at least: 6.0
Requires PHP: 8.1
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: kurashi-daidai
*/

/* =========================================================
   Design Tokens  （ロゴ確定後にHEXを差し替え：2章参照）
   ========================================================= */
:root {
  /* Color — Brand */
  --c-green:        #0a9c57;   /* メイングリーン */
  --c-green-dark:   #087944;   /* 濃グリーン（ホバー・見出し） */
  --c-green-mid:    #009546;
  --c-green-light:  #e6f6ef;   /* 淡グリーン背景 */
  --c-green-pale:   #edf2ef;   /* さらに淡いグリーン背景 */
  --c-orange:       #ef8a38;   /* アクセント（電話・CTAボタン） */
  --c-orange-dark:  #e6873b;   /* オレンジ ホバー */
  --c-orange-pale:  #ffedd4;   /* 淡オレンジ背景 */

  /* Color — Base */
  --c-text:         #23342d;   /* 基本テキスト（濃グリーン寄りの黒） */
  --c-text-muted:   #6b7280;   /* 補足テキスト */
  --c-bg:           #ffffff;
  --c-bg-soft:      #f2f4f2;   /* セクション交互の淡い背景 */
  --c-cream:        #fff9f1;   /* お知らせ・FAQ セクション背景 */
  --c-border:       #d3dbd6;

  /* Typography */
  --font-base: "Noto Sans JP", system-ui, sans-serif;
  --fz-base: 1.6rem;           /* 16px 相当（html font-size:62.5%運用） */

  /* Layout */
  --content-max: 1120px;       /* コンテンツ最大幅 */
  --content-pad: 20px;         /* SP左右パディング */
  --header-h: 72px;            /* SPヘッダー高さ */

  /* Radius / Shadow */
  --radius: 10px;
  --radius-lg: 20px;
  --radius-pill: 999px;
  --shadow: 0 2px 12px rgba(16,173,94,.10);
  --shadow-card: 0 6px 24px rgba(35,52,45,.08);

  /* Motion */
  --ease: cubic-bezier(.16,.68,.43,.99);
  --dur: .6s;
}

@media (min-width: 1024px) {
  :root { --header-h: 80px; }
}

/* =========================================================
   Reset  （素のCSS・軽量リセット）
   ========================================================= */
*, *::before, *::after { box-sizing: border-box; }
* { margin: 0; }
html {
  font-size: 62.5%;            /* 1rem = 10px */
  -webkit-text-size-adjust: 100%;
  scroll-behavior: smooth;
}
body {
  font-family: var(--font-base);
  font-size: var(--fz-base);
  line-height: 1.8;
  color: var(--c-text);
  background: var(--c-bg);
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}
img, picture, svg, video { display: block; max-width: 100%; height: auto; }
svg { fill: currentColor; }
input, button, textarea, select { font: inherit; color: inherit; }
button { cursor: pointer; background: none; border: none; }
a { color: inherit; text-decoration: none; }
ul, ol { list-style: none; padding: 0; }
h1, h2, h3, h4 { line-height: 1.4; font-weight: 700; }
table { border-collapse: collapse; width: 100%; }

/* アンカースクロールのヘッダー分オフセット */
:target { scroll-margin-top: calc(var(--header-h) + 16px); }

/* prefers-reduced-motion */
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after {
    animation-duration: .001ms !important;
    transition-duration: .001ms !important;
    animation-iteration-count: 1 !important;
  }
}

/* アクセシビリティ：視覚的に隠す */
.u-visually-hidden {
  position: absolute !important;
  width: 1px; height: 1px;
  padding: 0; margin: -1px;
  overflow: hidden; clip: rect(0 0 0 0);
  white-space: nowrap; border: 0;
}
.skip-link {
  position: absolute; left: -9999px; top: 0; z-index: 1000;
  background: var(--c-green); color: #fff; padding: 8px 16px;
}
.skip-link:focus { left: 8px; top: 8px; border-radius: 6px; }
