:root{
  --bg:#fffaf4;--gold:#f3c662;--gold-dark:#e3a93f;--gold-soft:#fdf1d6;
  --peach:#ffb4a2;--peach-dark:#ff9478;--peach-soft:#ffe9e3;
  --bluegreen:#a8dcd9;--bluegreen-dark:#82c4c1;--bluegreen-soft:#e3f6f4;
  --text:#6b5b50;--text-light:#b3a299;--white:#fff;
  --radius-md:20px;--radius-sm:14px;--shadow-soft:0 4px 16px rgba(230,170,120,0.10);
}
*{box-sizing:border-box;margin:0;padding:0;}
body{font-family:-apple-system,BlinkMacSystemFont,'Segoe UI','Hiragino Sans',sans-serif;color:var(--text);background:var(--bg);padding:1rem;line-height:1.9;font-size:16px;}
.wrap{max-width:640px;margin:0 auto;padding:1.2rem 0 4rem;}
.back-link{display:inline-block;margin-bottom:1rem;color:var(--peach-dark);text-decoration:none;font-size:0.92rem;}
h1{font-size:1.5rem;line-height:1.5;margin-bottom:0.8rem;color:#7a5c42;}
.lead{font-size:1rem;color:var(--text);background:var(--peach-soft);border-radius:var(--radius-sm);padding:1.1rem 1.2rem;margin-bottom:1.8rem;line-height:1.85;}
h2{font-size:1.18rem;line-height:1.5;color:#8a6b4f;margin:2rem 0 0.8rem;border-left:5px solid var(--peach);padding-left:0.7rem;}
p{margin-bottom:1rem;font-size:1rem;}
ul{margin:0 0 1.1rem;padding-left:1.3rem;}
li{margin-bottom:0.5rem;line-height:1.85;}
.callout{background:var(--bluegreen-soft);border-radius:var(--radius-sm);padding:1.1rem 1.2rem;margin:1.4rem 0;}
.callout .c-label{display:block;font-size:0.8rem;font-weight:800;color:var(--bluegreen-dark);margin-bottom:0.4rem;}
.callout p{margin:0;font-size:0.96rem;}
/* 掘り下げ導線 */
.dive{border-radius:var(--radius-md);background:linear-gradient(160deg,#2a2140,#3d2f57);color:#fff;padding:1.5rem 1.3rem;margin:2rem 0 1.5rem;box-shadow:0 10px 30px rgba(60,40,90,0.3);}
.dive .d-title{font-size:1.1rem;font-weight:900;line-height:1.6;margin-bottom:0.5rem;}
.dive .d-title span{color:#ffd98a;}
.dive .d-desc{font-size:0.92rem;line-height:1.85;color:#e6ddf0;margin-bottom:1rem;}
.dive-links{display:flex;flex-direction:column;gap:0.6rem;}
.dive-link{display:flex;align-items:center;gap:0.7rem;background:rgba(255,255,255,0.08);border:1px solid rgba(255,220,160,0.25);border-radius:14px;padding:1rem;text-decoration:none;color:#fff;}
.dive-link .dl-emoji{flex:none;font-size:1.3rem;}
.dive-link .dl-tx{flex:1;}
.dive-link .dl-tx b{display:block;font-size:1rem;font-weight:800;color:#ffe89a;}
.dive-link .dl-tx span{font-size:0.85rem;color:#d8cee8;line-height:1.5;}
.dive-link .dl-arrow{flex:none;color:#ffd98a;font-weight:900;}
/* FAQ */
.faq{margin-top:2rem;}
.faq details{background:var(--white);border:1px solid var(--gold-soft);border-radius:12px;padding:0;margin-bottom:0.7rem;overflow:hidden;box-shadow:var(--shadow-soft);}
.faq summary{cursor:pointer;font-weight:800;font-size:0.98rem;padding:1rem 1.1rem;list-style:none;display:flex;justify-content:space-between;gap:0.5rem;color:#8a6b4f;}
.faq summary::-webkit-details-marker{display:none;}
.faq summary::after{content:'＋';color:var(--peach-dark);flex:none;font-weight:900;}
.faq details[open] summary::after{content:'－';}
.faq details>p{padding:0 1.1rem 1.1rem;margin:0;font-size:0.95rem;}
.foot-note{font-size:0.8rem;color:var(--text-light);text-align:center;margin-top:2rem;line-height:1.7;}
.rel{margin-top:1.5rem;font-size:0.9rem;}
.rel a{color:var(--peach-dark);font-weight:700;}
@media(max-width:600px){
  h1{font-size:1.42rem;}
  h2{font-size:1.12rem;}
  .dive-link{padding:1.05rem;}
}
