/*
Theme Name: mytheme
Author: Shota Nakajima
Version: 1.5.0
*/

/* ========== Reset ========== */
html, body { margin: 0; padding: 0; }
* { box-sizing: border-box; }
img { max-width: 100%; height: auto; display: block; }
body {
  font-family: 'Noto Sans JP','Poppins',sans-serif;
  color: #fff;
  background: #000;
}

/* ========== Theme Vars ========== */
:root{
  --black:#000;
  --white:#fff;
  --yellow:#FFB800;
  --gray:#333;
}

/* ========== Header ========== */
.site-header{ background:var(--black); border-bottom:1px solid rgba(255,255,255,.08); }
.site-header .container{
  max-width:1440px; margin:0 auto; padding:18px 2px;
  display:flex; align-items:center; justify-content:space-between;
}
.site-logo a{
  color:#fff; text-decoration:none;
  font-family:"Poppins",sans-serif; font-weight:700; letter-spacing:.05em; font-size:20px;
}
.main-nav ul{ list-style:none; display:flex; gap:50px; margin:0; padding:0; }
.main-nav a{ color:#fff; text-decoration:none; font-weight:700; transition:.2s; }
.main-nav a:hover{ opacity:.7; }

/* ========== Hero ========== */
.hero{
  position:relative; overflow:hidden;
  min-height:82vh; display:grid; place-items:center;
  text-align:center; padding:72px 20px; background:#000;
}
/* 背景の光は使わない */
.hero::before{ display:none; }

.hero-inner{ max-width:820px; margin:0 auto; }

/* サブコピー */
.hero-sublead{
  margin-bottom:1;
  color:#fff; font-weight:900; font-size:25px; letter-spacing:.02em;
}
/* タイトル（後光なし） */
.hero-title{
  margin-top:0;
  font-family:"Poppins",sans-serif; font-weight:800;
  font-size:72px; line-height:1.1; letter-spacing:.01em;
  white-space:nowrap; overflow-wrap:normal; word-break:keep-all; max-width:100vw;
  text-shadow:none;
}
/* CTA */
.cta{
  display:inline-block; padding:10px 60px;
  border:2px solid var(--yellow); border-radius:10px;
  color:#fff; text-decoration:none; font-weight:900;
  filter:drop-shadow(0 4px 18px rgba(255,184,0,.25));
  transition:transform .18s ease, background .18s ease, color .18s ease;
}
.cta:hover{ background:var(--yellow); color:#000; transform:translateY(-2px); }

/* ========== “にじみ上がる”演出（上下移動なし・光なし） ========== */
.hero-sublead,
.hero-title,
.cta{
  opacity:0;
  filter:blur(14px) brightness(.9);
  will-change: opacity, filter;
  animation:bleedInHero 1.4s ease-out forwards;
}
/* 登場の順番 */
.hero-sublead{ animation-delay:.15s; }
.hero-title  { animation-delay:.40s; }
.cta         { animation-delay:.80s; }

/* ユニークキー名で競合回避 */
@keyframes bleedInHero{
  0%   { opacity:0;   filter:blur(18px) brightness(.85); }
  45%  { opacity:.7;  filter:blur(9px)  brightness(1);   }
  100% { opacity:1;   filter:blur(0)    brightness(1);   }
}

/* ========== Responsive ========== */
@media (max-width:768px){
  .hero{ padding:56px 16px; min-height:70vh; }
  .hero-sublead{ font-size:18px; }
  .hero-title{ font-size:40px; }
  .cta{ padding:12px 22px; }
}

/* ===== Header：ロゴ＆ナビ hoverカラー ===== */

/* ロゴ hover */
.site-logo a {
  color: #fff;
  transition: color .25s ease;
}
.site-logo a:hover {
  color: var(--yellow); /* ← 好きな色に変更可 */
}

/* ナビ hover */
.main-nav a {
  color: #fff;
  transition: color .25s ease;
}
.main-nav a:hover {
  color: var(--yellow); /* ← 好きな色に変更可 */
  opacity: 1;           /* ← 前の透明効果を打ち消す */
}
