@charset "UTF-8";
/* SENWA 新デザイン 共通スタイル（背景・ヘッダー・トークン）— 全ページ共通 */

/* 日本語フォント: 無心（MODI工場・商用/埋め込みOK） */
@font-face{
  font-family:"Mushin";
  src:url("./fonts/mushin.otf") format("opentype");
  font-weight:400;
  font-display:swap;
}

:root{
  --c-text:#111111;
  --c-accent:#2B2B2B;
  --c-main:#D9D8D3;
}

*{box-sizing:border-box}

/* 共通背景（温かみグレーのストライプ/扇状グラデ・モノトーン） */
body{
  margin:0;min-height:100vh;
  font-family:"Mushin","Zen Kaku Gothic New",system-ui,-apple-system,"Segoe UI",sans-serif;
  letter-spacing:.04em;
  color:var(--c-text);
  background:
    repeating-linear-gradient(90deg,#1110 0 1px,#0000 0 5vw) -2.5vw 0 / 100% 60%,
    linear-gradient(#11111114,#0000 30% 70%,#1111110a) 50% 0% / 100% 60%,
    linear-gradient(hsl(45deg 6% 70%) 0 0) 50% 0% / 5vw 60%,
    linear-gradient(hsl(45deg 6% 73%) 0 0) 50% 0% / 15vw 60%,
    linear-gradient(hsl(45deg 6% 76%) 0 0) 50% 0% / 25vw 60%,
    linear-gradient(hsl(45deg 6% 79%) 0 0) 50% 0% / 35vw 60%,
    linear-gradient(hsl(45deg 6% 82%) 0 0) 50% 0% / 45vw 60%,
    linear-gradient(hsl(45deg 6% 85%) 0 0) 50% 0% / 55vw 60%,
    linear-gradient(hsl(45deg 6% 88%) 0 0) 50% 0% / 65vw 60%,
    linear-gradient(hsl(45deg 6% 91%) 0 0) 50% 0% / 75vw 60%,
    linear-gradient(hsl(45deg 6% 94%) 0 0) 50% 0% / 85vw 60%,
    linear-gradient(hsl(45deg 6% 96%) 0 0) 50% 0% / 95vw 60%,
    linear-gradient(hsl(45deg 6% 98%) 0 0) 50% 0% / 105vw 60%,
    radial-gradient(100vw 50vw,#11111114,#0000),
    conic-gradient(from 170.5deg at 50% calc(60% - 14.8vw),hsl(45deg 6% 70%) 19deg,#0000 0) 0 100% / 100vw 100%,
    conic-gradient(from 153deg   at 50% calc(60% - 14.8vw),hsl(45deg 6% 73%) 54deg,#0000 0),
    conic-gradient(from 140deg   at 50% calc(60% - 14.8vw),hsl(45deg 6% 76%) 80deg,#0000 0),
    conic-gradient(from 130deg   at 50% calc(60% - 14.8vw),hsl(45deg 6% 79%) 100deg,#0000 0),
    conic-gradient(from 123deg   at 50% calc(60% - 14.8vw),hsl(45deg 6% 82%) 114deg,#0000 0),
    conic-gradient(from 118.5deg at 50% calc(60% - 14.8vw),hsl(45deg 6% 85%) 123deg,#0000 0),
    conic-gradient(from 114.5deg at 50% calc(60% - 14.8vw),hsl(45deg 6% 88%) 131deg,#0000 0),
    conic-gradient(from 111.5deg at 50% calc(60% - 14.8vw),hsl(45deg 6% 91%) 137deg,#0000 0),
    conic-gradient(from 109.2deg at 50% calc(60% - 14.8vw),hsl(45deg 6% 94%) 141.6deg,#0000 0),
    conic-gradient(from 107.3deg at 50% calc(60% - 14.8vw),hsl(45deg 6% 96%) 145.3deg,#0000 0),
    hsl(45deg 6% 98%);
  background-repeat:no-repeat;
  background-attachment:fixed;
}

/* 共通ヘッダーバー */
.site-header{position:fixed;top:0;left:0;right:0;padding:.65rem 2rem;text-align:center;z-index:120;pointer-events:none}
/* iframe内（めくり表示）ではヘッダー複製を隠す（親TOPのヘッダーを使用） */
body.is-embedded .site-header{display:none}
.site-header .bar{
  pointer-events:auto;
  margin:0 auto;max-width:fit-content;
  font-family:"Heebo",sans-serif;font-size:.82rem;letter-spacing:.02em;
  color:rgba(17,17,17,.7);background:rgba(217,216,211,.7);
  padding:.4em 1em;border-radius:999px;backdrop-filter:blur(4px);
}
.bar-logo{height:1.85em;width:auto;vertical-align:middle;margin-right:.45em;position:relative;top:-.06em}
.company-link{color:inherit;text-decoration:none;font-weight:600;transition:color .25s}
.company-link:hover{color:#000;text-decoration:underline}
.author-link{
  color:rgba(17,17,17,.7);text-decoration:none;padding:.1em .5em;border-radius:4px;
  background:rgba(255,255,255,.5);transition:all .3s ease;font-weight:600;
}
.author-link:hover{color:#000;background:#fff;box-shadow:0 2px 8px rgba(17,17,17,.15)}
.author-link:focus-visible{outline:2px solid rgba(17,17,17,.5);outline-offset:2px;color:#000;background:#fff}
@media (max-width:600px){
  .site-header{padding:.5rem .8rem}
  .site-header .bar{font-size:.68rem;padding:.4em .9em;white-space:nowrap}
  .bar-logo{height:1.6em;margin-right:.35em}
  .bar-sep,.author-link{display:none}   /* スマホではPrivacy Policyと区切りを非表示 */
}
