@charset "UTF-8";

/* =========================
   POLICY PAGE – MYTHOS WHITE
========================= */

.policy-page{
  background:#fff;
  color:#111;
}

/* HERO */

.policy-hero{
  padding:140px 20px 100px;
  text-align:center;
  border-bottom:1px solid rgba(0,0,0,.06);
}

.policy-title{
  font-family:var(--font-en,"Cinzel",serif);
  font-size:clamp(28px,3vw,42px);
  letter-spacing:.28em;
  font-weight:400;
  margin:0 0 16px;
}

.policy-sub{
  font-family:var(--font-en,"Cinzel",serif);
  font-size:12px;
  letter-spacing:.3em;
  color:rgba(0,0,0,.5);
}

/* CONTENT */

.policy-content{
  padding:100px 20px 140px;
}

.policy-container{
  max-width:820px;
  margin:0 auto;
}

/* 見出し */

.policy-container h2{
  font-family:var(--font-en,"Cinzel",serif);
  font-size:18px;
  letter-spacing:.22em;
  margin:0 0 40px;
  padding-bottom:14px;
  border-bottom:1px solid #c8a24a; /* MYTHOS gold */
}

.policy-container h3{
  font-family:var(--font-en,"Cinzel",serif);
  font-size:14px;
  letter-spacing:.18em;
  margin:60px 0 16px;
}

/* 本文 */

.policy-container p{
  font-family:var(--font-jp,"Noto Serif JP",serif);
  font-size:14px;
  line-height:2.2;
  letter-spacing:.04em;
  color:rgba(0,0,0,.75);
  margin:0 0 18px;
}

.policy-last{
  margin-top:60px;
  font-size:12px;
  letter-spacing:.12em;
  color:rgba(0,0,0,.5);
}

/* SP */

@media(max-width:768px){

  .policy-hero{
    padding:120px 20px 80px;
  }

  .policy-content{
    padding:80px 20px 120px;
  }

  .policy-container h3{
    margin:48px 0 14px;
  }

}

document.addEventListener("DOMContentLoaded", () => {
  const targets = document.querySelectorAll(".policy-hero__inner, .policy-container");
  if (!targets.length) return;

  const io = new IntersectionObserver((entries) => {
    entries.forEach((e) => {
      if (e.isIntersecting) {
        e.target.classList.add("is-inview");
        io.unobserve(e.target);
      }
    });
  }, { threshold: 0.12, rootMargin: "0px 0px -8% 0px" });

  targets.forEach((el) => io.observe(el));
});