/* page-docs.css - page-specific styles */

h2{font-size:clamp(1.05rem, 0.85rem + 2.2vw, 1.9rem);}

/* Header hamburger: square button, dark purple background, white lines */
  .c-hamburger--header{
    width:40px; height:40px;
    background:var(--purple-900);
    border-radius:8px;
  }

.c-hamburger--header span{
    left:10px; right:10px;
    background:#fff;
  }

.c-hamburger--header span:nth-child(1){top:13px;}

.c-hamburger--header span:nth-child(2){top:19px;}

.c-hamburger--header span:nth-child(3){top:25px;}

.c-hamburger--header.is-open span:nth-child(1){top:19px; transform:rotate(45deg);}

.c-hamburger--header.is-open span:nth-child(3){top:19px; transform:rotate(-45deg);}

@media(max-width:768px){
    .l-submenu__inner{display:none;}
    .c-hamburger--header{display:flex; align-items:center; justify-content:center;}
    .l-submenu{background:transparent; border-bottom:none;}
    .l-submenu.is-menu-open{background:var(--purple-900); border-bottom:1px solid rgba(255,255,255,.08);}
  }

.c-kv__placeholder .u-wrap{
    display:flex;
  }

.c-mechanism .c-eyebrow{color:var(--yellow);}

.c-mechanism .c-eyebrow::before{background:var(--yellow);}

.c-mini-cta .c-btn-group{max-width:640px; margin:0 auto;}

.c-callout .c-eyebrow{justify-content:center; color:var(--yellow); font-size:1.05rem; font-weight:700;}

.c-callout .c-eyebrow::before{display:none;}

@keyframes spin{from{transform:rotate(0deg);}to{transform:rotate(360deg);}}

/* ---------- Anchor offset for sticky header ---------- */
  section[id]{scroll-margin-top:118px;}

/* ---------- Fixed bottom CTA (PC + Mobile) ---------- */
  body{padding-bottom:132px;}

.c-fixed-cta__photo{display:none;}

.c-fixed-cta__caption{display:none;}

@media(min-width:1100px){
    .c-fixed-cta__buttons{max-width:600px; margin:0 auto;}
    .c-fixed-cta__photo{
      display:block;
      position:absolute;
      left:calc(50% + 300px - 16px); bottom:-10px;
      pointer-events:none;
    }
    .c-fixed-cta__photo img{width:150px; height:auto; display:block;}
    .c-fixed-cta__caption{
      display:block;
      position:absolute;
      left:calc(50% + 300px - 16px + 158px);
      bottom:20px;
      width:106px;
      margin:0;
      font-size:.6rem;
      font-weight:700;
      color:var(--ink-soft);
      line-height:1.5;
      text-align:left;
      white-space:nowrap;
      pointer-events:none;
    }
  }

/* ---------- Docs (著作権・免責について) content ---------- */
  .c-legal{max-width:760px; margin:0 auto;}

.c-legal h2{
    font-size:1.25rem;
    margin:44px 0 18px;
  }

.c-legal h2:first-of-type{margin-top:36px;}

.c-legal p{margin:0; color:var(--ink-soft); font-size:.95rem;}

.c-legal p + p{margin-top:16px;}

.c-legal__list{
    margin:0 0 16px;
    padding-left:1.4em;
    color:var(--ink-soft);
    font-size:.95rem;
  }

.c-legal__list li + li{margin-top:8px;}

/* ---------- Utility classes (inline style removal) ---------- */
  .u-hidden-frame{display:none;visibility:hidden;}

.c-eyebrow--center{justify-content:center;}
