@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;600;700&family=Noto+Serif+JP:wght@400;500;600;700&display=swap');
:root{--navy:#071b35;--gold:#e6c27a;--cream:#f7f3ea;--ink:#102846;--pink:#fbf0f2;--max:1180px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:'Noto Sans JP',sans-serif;line-height:1.8}a{text-decoration:none;color:inherit}
.header{height:76px;background:var(--navy);color:white;display:flex;align-items:center;padding:0 4vw;gap:30px;position:sticky;top:0;z-index:20}
.logo{display:flex;flex-direction:column;line-height:1;min-width:155px}.logo b{font:26px Georgia,serif;letter-spacing:.04em}.logo small{font-size:10px;letter-spacing:.2em;margin-top:7px}
nav{display:flex;align-items:center;gap:22px;margin-left:auto;font-size:13px;white-space:nowrap}nav a:hover{color:var(--gold)}nav .cta{background:var(--gold);color:var(--navy);padding:11px 22px;border-radius:25px;font-weight:700}.menu{display:none;background:none;color:white;border:0;font-size:24px}
.hero{min-height:650px;background:url('images/hero-tarot.jpg') center 54%/cover no-repeat;position:relative;color:white;display:flex;align-items:center}.shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,17,35,.9),rgba(3,17,35,.63) 42%,rgba(3,17,35,.12) 78%)}.heroText{position:relative;z-index:1;margin-left:8vw;width:540px}.eyebrow,.kicker{font-family:'Noto Serif JP',serif;letter-spacing:.12em}.eyebrow{font-size:18px}.hero h1{font:500 clamp(50px,6vw,78px) 'Noto Serif JP',serif;letter-spacing:.15em;margin:0 0 15px}.record{font-family:'Noto Serif JP',serif;font-size:20px}.hero hr{width:100px;margin:20px 0;border:0;border-top:1px solid #fff8}.tagline{font:24px/1.9 'Noto Serif JP',serif}.heroNote{position:absolute;right:6vw;bottom:35px;text-align:right;font:13px/1.9 'Noto Serif JP',serif;z-index:1}
.button{display:inline-flex;align-items:center;justify-content:center;border-radius:28px;padding:10px 24px;margin:8px 8px 0 0;font-size:13px;font-weight:700;border:1px solid transparent}.gold{background:var(--gold);color:var(--navy)}.navy{background:var(--navy);color:#fff}.white{background:#fff;color:var(--ink);border-color:#ddd}.outline{border-color:#b99758;background:transparent}.wrap{width:min(var(--max),90%);margin:auto}h2{font:600 32px/1.4 'Noto Serif JP',serif;letter-spacing:.07em;margin:0 0 12px}.kicker{font-size:12px;text-transform:uppercase;color:#b18b4c;margin:0 0 2px}
.about{padding:70px 0;background:#fffdf8}.aboutGrid,.personalGrid,.learnGrid,.mstarGrid,.twoCol{display:grid;grid-template-columns:1fr 1fr;gap:45px;align-items:center}.aboutVisual{min-height:250px;background:linear-gradient(120deg,#eee7d8,#f7f3ea);display:flex;align-items:center;justify-content:center;flex-direction:column;color:#8c7854}.aboutVisual span{font:12px Georgia;letter-spacing:.25em}.aboutVisual b{font:28px 'Noto Serif JP',serif;margin-top:8px}
.personal{padding:60px 0;background:var(--pink)}.personal h2{font-size:40px}.lead{font:19px 'Noto Serif JP',serif}.message{text-align:center;font:20px/2 'Noto Serif JP',serif;color:#655564}.message i{font:17px Georgia}
.learn{background:#edf3f8}.learnGrid{grid-template-columns:32% 1fr}.learnVisual{min-height:280px;background:linear-gradient(135deg,#092446,#1d4d76);display:flex;align-items:center;justify-content:center;color:var(--gold);font-size:70px}.learnText{padding:40px 0}.chips{display:flex;gap:8px;flex-wrap:wrap;margin:18px 0}.chips span{font-size:12px;border:1px solid #c5d0db;border-radius:18px;padding:4px 12px;background:#ffffff88}
.study{padding:62px 0;background:linear-gradient(135deg,#061a33,#0d3157);color:#fff}.study .kicker{color:var(--gold)}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin-top:25px}.cards a{border:1px solid #ffffff22;background:#ffffff08;padding:25px;min-height:175px}.cards a:hover{background:#ffffff12}.cards b{color:var(--gold);font-size:28px}.cards h3{font:600 19px 'Noto Serif JP',serif;margin:8px 0}.cards p{font-size:13px;color:#fffd}.studyButton{float:right;margin-top:-53px}
.mstar{padding:45px 0;background:#fffdf8}.mstarVisual{height:175px;background:linear-gradient(135deg,#dfeaf3,#f6f3e9);display:flex;align-items:center;justify-content:center;color:#32618b;font-size:55px}
.latest,.voice{padding:40px 0}.latest{background:var(--cream)}.photoPlaceholder{height:150px;background:linear-gradient(135deg,#e2dbcc,#f7f3ea);display:flex;align-items:center;justify-content:center;color:#a38e68;font:13px Georgia;letter-spacing:.2em}.photoPlaceholder.soft{background:linear-gradient(135deg,#b9cad8,#edf4fa)}.links{display:flex;gap:25px;font-weight:600}.links a{border-bottom:1px solid #b99758}
.final{background:linear-gradient(135deg,#061a33,#0d3157);color:white;text-align:center;padding:48px 20px}.final p{font:17px 'Noto Serif JP',serif}
footer{background:#06172d;color:white;padding:20px 4vw;display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;font-size:12px}footer a{margin-right:20px}
@media(max-width:900px){nav{gap:12px;font-size:11px}.logo{min-width:120px}.heroText{margin-left:6vw}.heroNote{right:4vw}.cards{grid-template-columns:1fr}.studyButton{float:none;margin-top:25px}}
@media(max-width:700px){.header{height:66px;padding:0 20px}.menu{display:block;margin-left:auto}.header nav{display:none;position:absolute;left:0;right:0;top:66px;background:var(--navy);padding:12px 20px;flex-direction:column;align-items:stretch}.header nav.open{display:flex}.header nav a{padding:10px;border-bottom:1px solid #ffffff18}.header nav .cta{text-align:center;margin-top:8px}.hero{min-height:640px;background-position:62% center}.heroText{margin-left:22px;width:calc(100% - 44px);align-self:flex-start;padding-top:70px}.eyebrow{font-size:13px}.hero h1{font-size:45px}.record{font-size:15px}.tagline{font-size:19px}.heroNote{left:22px;right:auto;bottom:22px;text-align:left;font-size:10px}.aboutGrid,.personalGrid,.learnGrid,.mstarGrid,.twoCol{grid-template-columns:1fr}.learnVisual{min-height:180px}.learnText{padding:35px 0}.personal h2{font-size:34px}.message{text-align:left}.about{padding:55px 0}}

/* =========================
   公式note 最新記事
   ========================= */

.note-list {
  list-style: none;
  margin: 28px 0 22px;
  padding: 0;
}

.note-item {
  margin: 0;
  padding: 0;
  border-top: 1px solid var(--line);
}

.note-item:last-child {
  border-bottom: 1px solid var(--line);
}

/* 記事全体をリンクにする */
.note-article-link {
  display: block;
  position: relative;
  padding: 18px 90px 18px 0;
  color: var(--navy);
  text-decoration: none;
  transition:
    background-color .25s ease,
    padding-left .25s ease;
}

/* 日付 */
.note-date {
  display: block;
  margin-bottom: 5px;
  font-size: 11px;
  letter-spacing: .08em;
  color: var(--gold);
}

/* 記事タイトル */
.note-title {
  display: block;
  font-family: "Noto Serif JP", serif;
  font-size: 15px;
  line-height: 1.8;
  color: var(--navy);
}

/* 「記事を読む →」 */
.note-read {
  position: absolute;
  right: 0;
  bottom: 18px;
  font-size: 12px;
  letter-spacing: .05em;
  color: var(--gold);
  white-space: nowrap;
  transition: color .25s ease;
}

/* PC：マウスを乗せたとき */
.note-article-link:hover {
  padding-left: 8px;
  background: rgba(201, 164, 92, .06);
}

.note-article-link:hover .note-title {
  text-decoration: underline;
  text-underline-offset: 4px;
}

.note-article-link:hover .note-read {
  color: var(--navy);
}

/* RSS取得エラー */
.note-error {
  padding: 18px 0;
  color: var(--muted);
  font-size: 13px;
}

/* note一覧へのリンク */
.latest-note .text-link {
  display: inline-block;
  margin-top: 8px;
  color: var(--navy);
  text-decoration: none;
  font-size: 13px;
  border-bottom: 1px solid var(--gold);
  padding-bottom: 3px;
  transition: color .25s ease;
}

.latest-note .text-link:hover {
  color: var(--gold);
}


/* =========================
   スマートフォン
   ========================= */

@media (max-width: 600px) {

  .note-list {
    margin-top: 22px;
  }

  .note-article-link {
    padding: 16px 0 17px;
  }

  .note-title {
    font-size: 14px;
    line-height: 1.8;
  }

  .note-read {
    position: static;
    display: block;
    margin-top: 8px;
    font-size: 11px;
  }

}