@charset "UTF-8";
/* =========================================================
   Nēne LP  /  スマホ幅固定・PCは周囲に装飾を回す構成
   ========================================================= */

:root{
  --purple:#8C4898;
  --purple-d:#6B3175;
  --purple-l:#C08EBE;
  --purple-p:#F1E7F3;
  --yellow:#F6F062;
  --yellow-d:#DFD63A;
  --yellow-p:#FCFBE4;
  --orange:#F3981E;
  --green-l:#C0DB81;
  --ink:#1A1A1A;
  --ink-2:#6B6B70;
  --paper:#FFFDF6;
  --paper-2:#F7F3EA;
  --cream:#FAF7EC;
  --line:#E4DCCE;
  --line-green:#06C755;
  --gray-btn:#7C7C84;

  --phone:430px;
  --pad:24px;

  --f-round:"Zen Maru Gothic","Hiragino Maru Gothic ProN","Hiragino Sans",system-ui,sans-serif;
  --f-goth:"Zen Kaku Gothic New","Hiragino Sans","Noto Sans JP",system-ui,sans-serif;
}

*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;font-family:var(--f-goth);color:var(--ink);background:var(--purple-p);
  -webkit-font-smoothing:antialiased;overflow-x:hidden;
}
img{max-width:100%;display:block}
a{color:inherit}
button{font:inherit;color:inherit;border:0;background:none;cursor:pointer}
[hidden]{display:none!important}

body::before{
  content:"";position:fixed;inset:0;z-index:-2;
  background:
    radial-gradient(900px 620px at 12% 12%, #FCF3DC 0%, transparent 60%),
    radial-gradient(900px 620px at 88% 78%, #EBDCEE 0%, transparent 60%),
    linear-gradient(160deg,#F5EEF7 0%, #FCF8EE 55%, #F3E9F5 100%);
}
body::after{
  content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;
  background-image:
    linear-gradient(to right, rgba(140,72,152,.07) 1px, transparent 1px),
    linear-gradient(to bottom, rgba(140,72,152,.07) 1px, transparent 1px);
  background-size:34px 34px;
  -webkit-mask-image:radial-gradient(70% 60% at 50% 45%, transparent 35%, #000 100%);
          mask-image:radial-gradient(70% 60% at 50% 45%, transparent 35%, #000 100%);
}

/* ============ 本体：スマホ幅カラム ============ */
.phone{
  position:relative;width:100%;max-width:var(--phone);margin:0 auto;
  background:var(--paper);overflow:hidden;
  box-shadow:0 0 0 1px rgba(140,72,152,.10), 0 30px 80px -20px rgba(80,40,110,.28);
  padding-bottom:40px;
}
@media (min-width:900px){
  .phone{margin:26px auto;border-radius:30px}
}

/* ============ PC装飾：左右レール＋上下ティッカー ============ */
.stage-deco{display:none}
@media (min-width:900px){
  .stage-deco{display:block;position:fixed;inset:0;z-index:2;pointer-events:none}
  .stage-deco a{pointer-events:auto}
}
.rail{position:absolute;top:0;bottom:0;display:flex;flex-direction:column;justify-content:center}
.rail--left{left:0;width:calc(50% - var(--phone)/2);align-items:center;text-align:center;padding:0 24px}
.rail__logo{width:clamp(150px,15vw,240px);margin:0 auto}
.rail__sub{
  margin:20px 0 0;color:var(--ink);letter-spacing:.02em;
  font-family:var(--f-round);font-weight:700;
  font-size:clamp(15px,1.35vw,18px);line-height:1.95;
}
.rail__friends{display:flex;gap:14px;align-items:flex-end;justify-content:center;margin-top:24px}
.rail__friends img{width:clamp(56px,5vw,80px)}
.rail__friends img:first-child{animation:bob 4.6s ease-in-out infinite}
.rail__friends img:last-child{animation:bob 5.4s ease-in-out infinite;animation-delay:-2s}
@keyframes bob{0%,100%{transform:translateY(0) rotate(-2deg)}50%{transform:translateY(-6px) rotate(2deg)}}
@keyframes gentle-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-4px)}}

.rail--right{right:0;width:calc(50% - var(--phone)/2);flex-direction:row;justify-content:center;align-items:center;gap:10px}
.vlabel{
  position:relative;overflow:visible;
  writing-mode:vertical-rl;
  display:flex;align-items:center;justify-content:center;
  height:248px;box-sizing:border-box;
  font-family:var(--f-round);font-weight:700;font-size:13px;letter-spacing:.18em;
  text-decoration:none;color:var(--purple-d);
  background:rgba(255,255,255,.85);border:1.5px solid var(--purple-l);border-radius:999px;
  padding:16px 9px;transition:background .25s, transform .25s, color .25s;
}
.vlabel:hover{background:var(--purple);color:#fff;transform:translateY(-4px)}
.vlabel__peek{
  position:absolute;left:50%;width:62px;max-width:none;pointer-events:none;
  transform:translate(-50%,18px) scale(.72);opacity:0;
  transition:transform .36s cubic-bezier(.34,1.56,.64,1),opacity .18s;
}
.vlabel__peek--top{top:-52px}
.vlabel__peek--bottom{bottom:-54px}
.vlabel:hover .vlabel__peek,.vlabel:focus-visible .vlabel__peek{
  transform:translate(-50%,0) scale(1);opacity:1;
}

/* ============ 画面内追従UI ============ */
.fixed-rail{
  position:fixed;top:0;bottom:0;left:50%;transform:translateX(-50%);
  width:min(var(--phone),100%);z-index:40;pointer-events:none;
}
.fixed-rail > *{pointer-events:auto}

.ig{
  position:absolute;top:calc(64px + env(safe-area-inset-top,0px));right:12px;
  width:48px;height:48px;display:block;
}
.ig__disc{
  position:relative;z-index:2;width:100%;height:100%;display:grid;place-items:center;
  border-radius:50%;background:var(--purple);
  box-shadow:0 8px 20px -8px rgba(140,72,152,.7), 0 0 0 3px rgba(255,255,255,.9);
  transition:transform .25s, background .25s;
}
.ig__disc svg{width:28px;height:28px;fill:#fff}
.ig:hover .ig__disc,.ig:focus-visible .ig__disc{background:var(--purple-d);transform:scale(1.06)}
/* 後ろに隠れたモヤリー。ホバーで顔を出す */
.ig__peek{
  position:absolute;left:50%;top:50%;width:64px;z-index:1;pointer-events:none;
  max-width:none;
  transform:translate(-50%,-12%) scale(.72);opacity:0;
  transition:transform .42s cubic-bezier(.34,1.56,.64,1), opacity .18s;
}
.ig:hover .ig__peek,.ig:focus-visible .ig__peek,.ig.is-peek .ig__peek{
  transform:translate(-50%,-122%) scale(1);opacity:1;
}
@media (min-width:900px){
  .ig{top:72px;right:-96px;width:56px;height:56px}   /* 枠（スマホ幅カラム）の外へ */
  .ig__peek{width:72px}
}

/* ---- 追従ドック（LINE／メール＋お返事できる時間） ---- */
.dock{
  position:absolute;left:0;right:0;bottom:0;
  background:var(--paper);
  border-radius:22px 22px 0 0;
  box-shadow:0 -10px 30px -12px rgba(80,40,110,.35), 0 0 0 1px rgba(140,72,152,.10);
  padding-bottom:env(safe-area-inset-bottom,0px);
  transform:translateY(calc(100% + 56px));
  transition:transform .42s cubic-bezier(.4,0,.2,1);
}
.dock.is-shown{transform:none}
.dock__handle{
  display:flex;flex-direction:column;align-items:center;gap:2px;
  width:100%;padding:7px 0 5px;
}
.dock .btn--line{padding:14px;font-size:16px}
.dock__handle-bar{width:42px;height:4px;border-radius:2px;background:var(--line);transition:background .25s}
.dock__handle:hover .dock__handle-bar{background:var(--purple-l)}
.dock__handle-txt{
  font-family:var(--f-round);font-weight:700;font-size:11px;letter-spacing:.12em;color:var(--ink-2);
  display:flex;align-items:center;gap:4px;
}
.dock__handle-txt::before{
  content:"";width:0;height:0;
  border-left:4px solid transparent;border-right:4px solid transparent;
  border-top:5px solid currentColor;
}
.dock[data-state="closed"] .dock__handle-txt::before{
  border-top:0;border-bottom:5px solid currentColor;
}

.dock__body{
  position:relative;
  padding:0 18px 12px;
  overflow:hidden;
  transition:height .34s cubic-bezier(.4,0,.2,1), opacity .24s;
}
.dock[data-state="closed"] .dock__body{height:0!important;opacity:0;padding-top:0;padding-bottom:0}
.dock__friend{position:absolute;top:-38px;width:54px;z-index:1;pointer-events:none;transform-origin:50% 100%;transition:transform .35s cubic-bezier(.34,1.56,.64,1)}
.dock:hover .dock__friend--l{transform:scaleX(-1) translateY(-8px) rotate(6deg)}
.dock:hover .dock__friend--r{transform:translateY(-8px) rotate(-6deg)}
.dock__friend--l{left:14px;transform:scaleX(-1)}
.dock__friend--r{right:14px}
.dock__note{margin:6px 0 0;font-size:10.5px;line-height:1.6;color:var(--ink-2);text-align:center}
.dock__lead{
  margin:0 0 6px;text-align:center;
  font-family:var(--f-round);font-weight:700;font-size:13px;letter-spacing:.1em;color:var(--ink-2);
}
.dock__hours{
  margin-top:10px;padding-top:9px;border-top:1.5px dashed var(--line);text-align:center;
}
.dock__hours-ttl{
  margin:0 0 3px;font-family:var(--f-round);font-weight:900;font-size:12px;
  letter-spacing:.1em;color:var(--purple-d);
}
.dock__hours-body{margin:0;font-size:12px;line-height:1.6;color:var(--ink)}
.dock .btn--mail{margin-top:8px;padding:12px;font-size:14.5px}

/* ---- ＼LINEで／ の飾り ---- */
.dock__lead span,.talk__lead span{position:relative;padding:0 16px}
.dock__lead span::before,.dock__lead span::after,
.talk__lead span::before,.talk__lead span::after{
  content:"";position:absolute;top:50%;width:11px;height:1.5px;background:currentColor;
}
.dock__lead span::before,.talk__lead span::before{left:0;transform:translateY(-50%) rotate(62deg)}
.dock__lead span::after,.talk__lead span::after{right:0;transform:translateY(-50%) rotate(-62deg)}

/* ============ ボタンとキャラの一体化 ============ */
.btn-wrap{position:relative;display:block;padding-top:44px}
.btn-wrap .btn{position:relative;z-index:1}
.btn-wrap__chara{
  position:absolute;bottom:calc(100% - 44px - 16px);width:var(--w,50px);z-index:0;
  pointer-events:none;transform-origin:50% 100%;
  transition:transform .35s cubic-bezier(.34,1.56,.64,1);
  animation:bob 5.2s ease-in-out infinite;
}
.btn-wrap__chara--l{left:6%}
.btn-wrap__chara--c{left:50%;margin-left:calc(var(--w,50px) / -2)}
.btn-wrap__chara--r{right:6%;animation-delay:-2.4s}
/* ホバーで跳ねて手を振る */
.btn-wrap:hover .btn-wrap__chara,.btn-wrap:focus-within .btn-wrap__chara{
  animation:none;transform:translateY(-12px) rotate(-7deg);
}
.btn-wrap:hover .btn-wrap__chara--r,.btn-wrap:focus-within .btn-wrap__chara--r{transform:translateY(-10px) rotate(8deg)}
.btn-wrap:hover .btn-wrap__chara--c,.btn-wrap:focus-within .btn-wrap__chara--c{transform:translateY(-16px) scale(1.06)}
.btn-wrap--mail{padding-top:34px}
.btn-wrap--mail .btn-wrap__chara{bottom:calc(100% - 34px - 14px)}
.btn-wrap--footer{display:inline-block;padding-top:56px}
.btn-wrap--footer .btn-wrap__chara{bottom:calc(100% - 56px - 18px)}
.btn-wrap--footer .btn-wrap__chara--l{left:-14px}
.btn-wrap--footer .btn-wrap__chara--r{right:-14px}

/* ============ ボタン ============ */
.btn{
  display:flex;align-items:center;justify-content:center;gap:9px;
  font-family:var(--f-round);font-weight:700;text-decoration:none;border-radius:999px;
  transition:transform .2s, box-shadow .2s, background .2s;
}
.btn--line{
  width:100%;padding:16px;font-size:17px;letter-spacing:.04em;
  background:var(--line-green);color:#fff;box-shadow:0 8px 20px -6px rgba(6,199,85,.55);
}
.btn--line:hover{transform:translateY(-2px);box-shadow:0 12px 26px -6px rgba(6,199,85,.6)}
.btn--mail{
  width:100%;padding:14px;font-size:15.5px;letter-spacing:.04em;
  background:var(--gray-btn);color:#fff;box-shadow:0 7px 18px -8px rgba(40,40,50,.5);
}
.btn--mail:hover{transform:translateY(-2px);background:#6C6C74}
.btn__ico{width:22px;height:22px;fill:currentColor;flex:none}
.btn--ghost{
  display:inline-flex;text-align:center;line-height:1.5;padding:15px 40px;font-size:16px;
  background:#fff;color:var(--purple-d);border:2px solid var(--purple);box-shadow:0 6px 0 var(--purple-l);
}
.btn--ghost:hover{transform:translateY(3px);box-shadow:0 3px 0 var(--purple-l)}

/* ============ FV ============ */
.fv{position:relative;padding:0 0 26px;background:var(--paper);overflow:hidden}
.fv__scene{
  position:relative;height:clamp(370px,64vh,486px);overflow:hidden;
  background:linear-gradient(180deg,#EFE4F6 0%, #F3EAF4 46%, #FBF4E6 100%);
}
.fv__sky{position:absolute;left:0;right:0;bottom:340px;top:0}
.fv__sky::before{
  content:"";position:absolute;inset:0;
  background:url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='700' height='140' viewBox='0 0 700 140'%3E %3Cg fill='%23FFFFFF' opacity='.9'%3E %3Cellipse cx='90' cy='44' rx='54' ry='20'/%3E%3Cellipse cx='124' cy='34' rx='34' ry='16'/%3E %3Cellipse cx='330' cy='86' rx='42' ry='16'/%3E%3Cellipse cx='356' cy='78' rx='27' ry='12'/%3E %3Cellipse cx='560' cy='38' rx='48' ry='18'/%3E%3Cellipse cx='590' cy='30' rx='30' ry='14'/%3E %3C/g%3E%3C/svg%3E") repeat-x top left / 700px auto;
  opacity:.85;animation:drift 90s linear infinite;
}
.fv__skyline{
  position:absolute;left:0;right:0;bottom:204px;height:112px;z-index:1;opacity:.44;
  background:url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='720' height='112' viewBox='0 0 720 112'%3E%3Cg fill='%23C08EBE'%3E%3Crect x='0' y='48' width='54' height='64' rx='4'/%3E%3Crect x='72' y='22' width='42' height='90' rx='4'/%3E%3Crect x='132' y='58' width='66' height='54' rx='4'/%3E%3Crect x='222' y='36' width='48' height='76' rx='4'/%3E%3Crect x='292' y='8' width='66' height='104' rx='5'/%3E%3Crect x='382' y='50' width='78' height='62' rx='4'/%3E%3Crect x='486' y='28' width='50' height='84' rx='4'/%3E%3Crect x='558' y='60' width='64' height='52' rx='4'/%3E%3Crect x='646' y='18' width='48' height='94' rx='4'/%3E%3C/g%3E%3Cg fill='%23FFFDF6' opacity='.9'%3E%3Crect x='84' y='38' width='10' height='12' rx='2'/%3E%3Crect x='84' y='62' width='10' height='12' rx='2'/%3E%3Crect x='306' y='28' width='12' height='14' rx='2'/%3E%3Crect x='330' y='28' width='12' height='14' rx='2'/%3E%3Crect x='306' y='54' width='12' height='14' rx='2'/%3E%3Crect x='330' y='54' width='12' height='14' rx='2'/%3E%3Crect x='500' y='44' width='11' height='14' rx='2'/%3E%3C/g%3E%3Cg fill='%23C0DB81'%3E%3Ccircle cx='52' cy='91' r='16'/%3E%3Ccircle cx='190' cy='94' r='18'/%3E%3Ccircle cx='462' cy='92' r='17'/%3E%3Ccircle cx='625' cy='94' r='18'/%3E%3C/g%3E%3C/svg%3E") repeat-x bottom left / 720px 112px;
}
@keyframes drift{to{background-position:-700px 0}}

.fv__band{position:absolute;left:0;display:flex;width:max-content;animation:pan 58s linear infinite}
.fv__band.is-paused{animation-play-state:paused}
.fv__sky.is-paused::before{animation-play-state:paused}
@keyframes pan{to{transform:translateX(-50%)}}

.fv__band--far{bottom:204px;height:112px;opacity:.72;animation-duration:112s}
.fv__band--far .fv__strip{width:560px;background-image:url("assets/town-far.svg");background-size:560px 112px}
.fv__band--near{bottom:52px;height:340px;z-index:2}
.fv__band--near .fv__strip{width:2040px;background-image:url("assets/town-near.svg");background-size:2040px 340px}
.fv__strip{height:100%;flex:none;background-repeat:repeat-x;background-position:bottom left}

/* 街を歩くキャラクター */
.fv__band--crowd{bottom:62px;height:74px;z-index:5;animation-duration:58s}
.fv__crowd{position:relative;width:2040px;flex:none;height:100%}
.fv__crowd img{
  position:absolute;bottom:var(--y,0);left:var(--x);width:var(--w);
  transform:translateX(-50%);
  animation:bob 5.4s ease-in-out infinite;
}
.fv__crowd img:nth-child(2n){animation-duration:6.2s;animation-delay:-1.8s}
.fv__crowd img:nth-child(3n){animation-duration:4.8s;animation-delay:-3.1s}

.fv__ground{
  position:absolute;left:0;right:0;bottom:0;height:64px;z-index:4;
  background:linear-gradient(180deg,#EFE1C9 0%, #F9F1DF 44%, var(--paper) 100%);
}
.fv__ground::before{content:"";position:absolute;left:0;right:0;top:0;height:2px;background:rgba(140,72,152,.20)}

.fv__hero{position:absolute;left:50%;bottom:34px;transform:translateX(-50%);z-index:6;cursor:pointer}
.fv__moyari.is-hop{animation:hop .7s cubic-bezier(.3,1.4,.5,1)}
.fv__crowd img.is-hop{animation:hop .6s ease-out}
@keyframes hop{0%{transform:translateY(0)}35%{transform:translateY(-34px) rotate(-6deg)}70%{transform:translateY(0) rotate(3deg)}100%{transform:translateY(0)}}
.fv__moyari{
  width:clamp(112px,28vw,132px);animation:bob 4.6s ease-in-out infinite;
  filter:drop-shadow(0 14px 16px rgba(80,40,110,.20));
}
.fv__copy{position:relative;z-index:4;padding:22px var(--pad) 0;text-align:center}
.fv__logo{width:min(330px,88%);margin:0 auto}

/* ============ 共通セクション ============ */
.sec{padding:60px var(--pad);position:relative}
.sec--intro{padding-top:34px;padding-bottom:16px}
.sec--talk{padding-top:44px;padding-bottom:52px}
.sec--moya{background:var(--paper-2);border-radius:34px 34px 0 0;padding-top:56px}
.sec--poem{background:var(--paper-2);padding-top:10px}
.sec--about{background:var(--purple-p);border-radius:34px 34px 0 0;margin-top:-34px;padding-top:62px}
.sec--terrace{background:var(--paper);border-radius:34px 34px 0 0;margin-top:-34px;padding-top:62px;padding-bottom:26px}
.sec--kaigi{background:var(--paper);padding-top:56px;padding-bottom:26px}
.sec--chui{background:var(--yellow-p);border-radius:34px 34px 0 0;padding-top:56px;padding-bottom:40px}
.sec--madoguchi{background:var(--yellow-p);padding-top:10px}
.sec--footer{background:var(--purple);color:#fff;border-radius:34px 34px 0 0;text-align:center;padding-top:58px;padding-bottom:44px}

.sec__friend{
  position:absolute;top:-30px;right:18px;width:70px;z-index:3;
  animation:bob 5.2s ease-in-out infinite;
}

.h-main{
  font-family:var(--f-round);font-weight:900;
  font-size:clamp(23px,6.2vw,28px);line-height:1.5;letter-spacing:.02em;text-align:center;margin:0 0 10px;
}
.h-sub{text-align:center;font-size:13px;letter-spacing:.14em;color:var(--ink-2);margin:0 0 22px}
.h-serif{
  font-family:var(--f-round);font-weight:700;
  font-size:clamp(18px,4.8vw,21px);line-height:1.85;text-align:center;margin:0 0 40px;
}
.lead{text-align:center;font-size:15px;line-height:2.1;margin:0 0 26px;letter-spacing:.02em;text-wrap:balance}
.lead b{color:var(--purple-d);font-weight:700}
.sec--intro .lead{
  margin-bottom:0;
  font-family:var(--f-round);font-weight:700;
  font-size:clamp(17px,4.7vw,19px);line-height:2.05;letter-spacing:.01em;
}

/* ============ 相談ブロック（ページ内の実体） ============ */
.talk{
  position:relative;background:#fff;border-radius:26px;padding:20px 20px 24px;
  border:2px solid var(--yellow);box-shadow:0 14px 34px -20px rgba(80,40,110,.45);
}
.talk__lead{
  margin:6px 0 -30px;position:relative;z-index:1;text-align:center;
  font-family:var(--f-round);font-weight:700;font-size:14px;letter-spacing:.1em;color:var(--ink-2);
}
.talk__or{position:relative;margin:14px 0 -22px;z-index:1;text-align:center}
.talk__or::before{content:"";position:absolute;left:0;right:0;top:50%;height:1px;background:var(--line)}
.talk__or span{
  position:relative;background:#fff;padding:0 14px;
  font-size:12px;letter-spacing:.12em;color:var(--ink-2);
}
.talk__note{margin:9px 64px 0 0;font-size:11.5px;line-height:1.7;color:var(--ink-2);text-align:center}

.hours{
  position:relative;margin-top:22px;padding:22px 16px 18px;
  background:var(--yellow-p);border-radius:18px;text-align:center;
}
.hours__ttl{
  margin:0 0 9px;font-family:var(--f-round);font-weight:900;font-size:15px;
  letter-spacing:.08em;color:var(--purple-d);
}
.hours__days{margin:0 0 8px;font-family:var(--f-round);font-weight:700;font-size:15px;letter-spacing:.08em;line-height:1.7}
.hours__days em{font-style:normal;font-size:12px;font-weight:500;color:var(--ink-2)}
.hours__time{
  margin:0;font-family:var(--f-round);font-weight:900;
  font-size:clamp(22px,6.6vw,27px);letter-spacing:.02em;color:var(--purple-d);
}
.hours__time span{font-size:.7em;margin:0 2px;color:var(--ink-2)}

/* ============ 吹き出し ============ */
.bubbles{display:grid;gap:26px;margin-bottom:56px}
.bubble{position:relative;display:flex;align-items:flex-end;gap:10px}
.bubble--2{flex-direction:row-reverse}
.bubble__txt{
  margin:0;flex:1;background:#fff;border-radius:22px;padding:18px 20px;
  font-size:15px;font-weight:700;line-height:1.85;position:relative;text-align:center;
  box-shadow:0 6px 18px -8px rgba(80,40,110,.22);
}
.bubble__txt::after{
  content:"";position:absolute;bottom:14px;width:0;height:0;
  border-top:9px solid transparent;border-bottom:9px solid transparent;
}
.bubble--1 .bubble__txt::after,.bubble--3 .bubble__txt::after{right:-10px;border-left:11px solid #fff}
.bubble--2 .bubble__txt::after{left:-10px;border-right:11px solid #fff}
.bubble__chara{width:76px;flex:none;animation:bob 5.2s ease-in-out infinite}
.bubble--2 .bubble__chara{animation-delay:-1.6s}
.bubble--3 .bubble__chara{animation-delay:-3.2s}

/* ============ キャラ紹介 ============ */
.chara-card{text-align:center}
.chara-card__img{width:156px;margin:0 auto 10px;animation:bob 5s ease-in-out infinite}
.chara-card__name{font-family:var(--f-round);font-weight:900;font-size:20px;letter-spacing:.14em;margin:0 0 16px}
.chara-card__box{background:var(--purple-p);border-radius:20px;padding:20px 22px;border:1.5px dashed var(--purple-l)}
.chara-card__box p{margin:0;font-size:14px;line-height:2;text-align:left}

/* ============ ポエム ============ */
.poem{text-align:left;padding:26px 0 8px;width:fit-content;max-width:100%;margin:0 auto}
.poem p{font-family:var(--f-round);font-weight:500;font-size:15px;line-height:2.15;letter-spacing:.03em;margin:0 0 34px}
.poem__last{font-weight:700;color:var(--purple-d);border-top:1.5px solid var(--line);padding-top:30px;margin-bottom:0;width:100%}

/* ============ 【聴く/届ける/変えていく】カード ============ */
.cards{list-style:none;margin:0 0 42px;padding:0;display:grid;gap:12px}
.card{
  position:relative;background:#fff;border-radius:20px;padding:16px 18px 18px;
  box-shadow:0 5px 16px -10px rgba(80,40,110,.3);
}
.card__head{display:flex;align-items:center;gap:12px;margin-bottom:10px}
.card__ico{
  width:76px;height:76px;flex:none;object-fit:contain;object-position:center;
}
.card__ttl{margin:0;flex:1;font-size:14px;line-height:1.65;font-family:var(--f-round);font-weight:500}
.card__ttl b{color:var(--purple-d);font-weight:900}
.card__body{margin:0;padding-right:40px;font-size:13.5px;line-height:1.95;color:var(--ink-2)}
.card__more{
  position:absolute;right:14px;bottom:14px;
  width:30px;height:30px;border-radius:50%;background:var(--purple);
  transition:transform .2s, background .2s;
}
.card__more span::before,.card__more span::after{
  content:"";position:absolute;left:50%;top:50%;background:#fff;border-radius:1px;transform:translate(-50%,-50%);
}
.card__more span::before{width:13px;height:2.4px}
.card__more span::after{width:2.4px;height:13px}
.card__more:hover{transform:scale(1.1);background:var(--purple-d)}

/* ============ PJ全体像 図解（末広がり） ============ */
.zukai{margin:0 0 26px;padding:0}
.zukai__ttl{
  text-align:center;margin:0 0 22px;
  font-family:var(--f-round);font-weight:900;
  font-size:clamp(16px,4.4vw,18px);line-height:1.6;color:var(--purple-d);
}
.zukai__flow{list-style:none;margin:0;padding:0;display:grid;gap:34px;justify-items:center}

.zk{
  position:relative;width:100%;border-radius:22px;padding:16px 16px 18px;text-align:center;
}
.zk--1{width:76%;background:var(--yellow);}
.zk--2{width:88%;background:var(--purple-l);}
.zk--3{width:100%;background:var(--purple);color:#fff}

/* 下向きの矢印でつなぐ */
.zk::after{
  content:"";position:absolute;left:50%;bottom:-25px;transform:translateX(-50%);
  width:0;height:0;border-left:11px solid transparent;border-right:11px solid transparent;
  border-top:15px solid var(--purple-l);
}
.zk--3::after{display:none}

.zk__label{
  display:flex;align-items:center;justify-content:center;gap:8px;
  margin:0 0 12px;font-family:var(--f-round);font-weight:900;
  font-size:clamp(18px,5vw,21px);letter-spacing:.08em;
}
.zk__label img{width:44px;flex:none}

.zk__chips{
  list-style:none;margin:0 0 14px;padding:0;
  display:flex;flex-wrap:wrap;gap:7px;justify-content:center;
}
.zk__chips li{
  background:rgba(255,255,255,.92);color:var(--ink);border-radius:999px;
  padding:7px 14px;font-size:12px;line-height:1.5;font-weight:700;
  font-family:var(--f-round);
}
.zk__chips em{font-style:normal;font-weight:500;font-size:11px;color:var(--ink-2)}

.zk__txt{
  margin:0;font-size:12.5px;line-height:1.85;
  padding-top:12px;border-top:1.5px dashed rgba(26,26,26,.18);
}
.zk--3 .zk__txt{border-top-color:rgba(255,255,255,.4)}

/* ============ noteカルーセル ============ */
.carousel{position:relative;padding:0 0 46px;background:var(--paper)}
.carousel__track{
  display:flex;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;
  padding:8px var(--pad) 18px;scrollbar-width:none;
}
.carousel__track::-webkit-scrollbar{display:none}
.ncard{flex:0 0 74%;scroll-snap-align:center;text-decoration:none;display:grid;gap:9px}
.ncard__thumb{
  aspect-ratio:4/3;background:#fff;border:1.5px solid var(--line);border-radius:16px;
  display:grid;place-items:center;overflow:hidden;transition:transform .25s, box-shadow .25s;
}
.ncard__thumb img{width:100%;height:100%;object-fit:cover}
.ncard__date{
  font-size:11px;letter-spacing:.08em;color:var(--purple-d);
  font-family:var(--f-round);font-weight:700;padding:0 2px;margin-top:-3px;
}
.ncard__thumb em{font-style:normal;font-size:13px;color:var(--ink-2);letter-spacing:.08em}
.ncard:hover .ncard__thumb{transform:translateY(-4px);box-shadow:0 12px 24px -12px rgba(80,40,110,.4)}
.ncard__ttl{
  font-size:13px;line-height:1.6;color:var(--ink);padding:0 2px;
  display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;
}
.carousel__arw{
  position:absolute;top:36%;z-index:3;width:38px;height:38px;border-radius:50%;
  background:rgba(255,255,255,.92);box-shadow:0 4px 14px -6px rgba(80,40,110,.5);
}
.carousel__arw::before{
  content:"";position:absolute;left:50%;top:50%;width:9px;height:9px;
  border-top:2px solid var(--ink);border-right:2px solid var(--ink);
}
.carousel__arw--prev{left:6px}
.carousel__arw--prev::before{transform:translate(-40%,-50%) rotate(-135deg)}
.carousel__arw--next{right:6px}
.carousel__arw--next::before{transform:translate(-60%,-50%) rotate(45deg)}
.carousel__arw:disabled{opacity:.3;cursor:default}
.carousel__dots{display:flex;gap:7px;justify-content:center;margin-top:2px}
.carousel__dots button{width:8px;height:8px;border-radius:50%;background:var(--line);transition:background .25s, width .25s}
.carousel__dots button[aria-current="true"]{background:var(--purple);width:22px;border-radius:4px}

/* ============ 注意事項 ============ */
.notes{margin:0;padding:0;list-style:none}
.notes li{
  position:relative;padding-left:1.4em;font-size:13.5px;line-height:2;color:var(--ink);
  margin-bottom:14px;text-align:left;
}
.notes li::before{content:"※";position:absolute;left:0;color:var(--purple)}
.chui__friend{width:78px;margin:24px auto 0;animation:bob 5.4s ease-in-out infinite}

/* ============ ほかの相談窓口 ============ */
.mado{list-style:none;margin:0;padding:0;display:grid;gap:12px}
.mado__item{
  background:var(--cream);border:1px solid var(--line);border-radius:16px;
  padding:16px 18px;text-align:center;
}
.mado__name{margin:0 0 6px;font-family:var(--f-round);font-weight:700;font-size:14.5px;line-height:1.5}
.mado__link{
  display:inline-block;margin:0 0 6px;font-size:13px;color:#C7522F;
  text-decoration:underline;word-break:break-all;
}
.mado__link--tel{font-size:16px;font-weight:700;letter-spacing:.04em}
.mado__link--tel::before{content:"✆ ";text-decoration:none}
.mado__time{margin:0;font-size:12px;line-height:1.8;color:var(--ink-2)}
.mado__memo{margin:6px 0 0;font-size:12px;line-height:1.8}
.mado__friend{width:76px;margin:26px auto 0;animation:bob 5s ease-in-out infinite}

/* ============ フッター ============ */
.org{margin:0 0 20px;padding:0;display:grid;gap:10px;justify-content:center}
.org div{display:flex;gap:10px;align-items:baseline;justify-content:center;flex-wrap:wrap}
.org dt{font-size:12px;background:rgba(255,255,255,.2);border-radius:999px;padding:3px 12px;flex:none}
.org dd{margin:0;font-size:15px;font-family:var(--f-round);font-weight:700;letter-spacing:.02em}
.org__note{margin:0 0 30px;font-size:12.5px;line-height:1.95;opacity:.85}
.sec--footer .btn--ghost{background:#fff;color:var(--purple-d);border-color:#fff;box-shadow:0 6px 0 rgba(0,0,0,.18)}

/* ============ モーダル ============ */
.modal{position:fixed;inset:0;z-index:80;display:grid;place-items:center;padding:20px}
.modal__scrim{position:absolute;inset:0;background:rgba(26,26,26,.55);animation:fade .25s ease}
.modal__panel{
  position:relative;width:min(390px,100%);max-height:84vh;overflow-y:auto;
  background:var(--paper);border-radius:24px;padding:46px 24px 28px;
  box-shadow:0 30px 70px -20px rgba(0,0,0,.5);
  animation:pop .3s cubic-bezier(.2,.8,.3,1);
}
@keyframes fade{from{opacity:0}}
@keyframes pop{from{opacity:0;transform:translateY(16px) scale(.96)}}
.modal__close{
  position:absolute;top:12px;right:12px;width:34px;height:34px;border-radius:50%;
  background:var(--purple-p);transition:background .2s;
}
.modal__close::before,.modal__close::after{
  content:"";position:absolute;left:50%;top:50%;width:15px;height:2.4px;border-radius:2px;background:var(--purple-d);
}
.modal__close::before{transform:translate(-50%,-50%) rotate(45deg)}
.modal__close::after{transform:translate(-50%,-50%) rotate(-45deg)}
.modal__close:hover{background:var(--purple-l)}
.modal__chara{width:min(210px,72%);margin:0 auto 18px}
.modal__ttl{
  margin:0 0 14px;text-align:center;
  font-family:var(--f-round);font-weight:900;font-size:16px;line-height:1.6;color:var(--purple-d);
}
.modal__body{margin:0;font-size:14px;line-height:2.05;text-align:left}

body.is-locked{overflow:hidden}

/* ============ スクロール演出 ============ */
.js .reveal{opacity:0;transform:translateY(22px)}
.reveal{transition:opacity .7s ease, transform .7s cubic-bezier(.2,.7,.3,1)}
.reveal.is-in{opacity:1;transform:none}

@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .fv__band,.fv__sky::before,
  .fv__moyari,.fv__crowd img,.rail__friends img,.bubble__chara,.chara-card__img,
  .btn-wrap__chara,.ig__peek,.sec__friend,
  .chui__friend,.mado__friend{animation:none !important}
  .js .reveal,.reveal{opacity:1;transform:none;transition:none}
  .modal__scrim,.modal__panel{animation:none}
}

/* 2026-09-18 修正指示2／3 */
/* PJ全体像の図 */
.zukai__image{width:calc(100% + 24px);max-width:none;margin:0 -12px;height:auto;border-radius:14px}
.zukai__details{margin-top:20px;border-top:1px solid #c08ebe;border-bottom:1px solid #c08ebe}
.zukai__details summary{padding:16px 8px;font:700 15px var(--f-round);color:var(--purple-d);cursor:pointer}
.zukai__details[open] summary{margin-bottom:8px}
.zukai__details .zukai__flow{gap:16px;padding-bottom:20px}
.zukai__details .zk{width:100%;border-radius:16px}
.zukai__details .zk::after{display:none}

/* 2026-09-18 追加修正：空を詰めた遠景と、案内まわりの微かな動き */
.fv__skyline{bottom:180px;height:160px;background-size:720px 160px}
@media (prefers-reduced-motion:reduce){
  .logo-split__chara,.nest__ill{animation:none !important}
}

/* 2026-09-18 修正 B・C：空を詰めたKV／ロゴと図解はキャラだけが動く */

/* ---- B：キービジュアルの空を縦に詰める（街は下基準なので上だけが減る） ---- */
.fv__scene{height:clamp(350px,50vh,404px)}
.fv__sky{top:0;bottom:auto;height:96px}
.fv__sky::before{background-size:560px auto}

/* 2026-09-18：Nēneが見守る、安心して声をかけ合える街の子どもたち */
.fv__neighborhood-kids{
  position:absolute;left:max(10px,calc(50% - 196px));bottom:58px;z-index:5;
  width:clamp(120px,24vw,180px);height:auto;pointer-events:none;
  filter:drop-shadow(0 7px 9px rgba(80,40,110,.12));
  animation:neighborhood-kids-bob 7.4s ease-in-out infinite;animation-delay:-2.3s;
}
@keyframes neighborhood-kids-bob{0%,100%{transform:translateY(0)}50%{transform:translateY(-3px)}}
@media (prefers-reduced-motion:reduce){.fv__neighborhood-kids{animation:none !important}}

/* 2026-09-18：3人を個別の全身イラストとして、既存キャラ列へ混ぜる */
.fv__crowd img.fv__kid{filter:drop-shadow(0 3px 3px rgba(80,40,110,.08))}

/* ---- C1・C3：ロゴを「文字」と「キャラ」に分けて、キャラだけ動かす ---- */
.logo-split{position:relative;display:block}
.logo-split img{position:absolute;display:block;height:auto}
.logo-split--yoko{aspect-ratio:900 / 346}
.logo-split--yoko .logo-split__word {left:0;      top:23.99%;width:53.56%}
.logo-split--yoko .logo-split__chara{left:54.56%; top:0;     width:45.44%}
.logo-split--tate{aspect-ratio:437 / 620}
.logo-split--tate .logo-split__chara{left:0;      top:0;     width:100%}
.logo-split--tate .logo-split__word {left:2.52%;  top:66.13%;width:95.42%}
.logo-split__chara{
  transform-origin:50% 92%;
  animation:chara-sway 3.8s ease-in-out infinite;
}
.logo-split--tate .logo-split__chara{animation-duration:4.4s;animation-delay:-1.3s}
@keyframes chara-sway{
  0%,100%{transform:translateY(0) rotate(0)}
  25%    {transform:translateY(-5px) rotate(-3deg)}
  50%    {transform:translateY(0) rotate(0)}
  75%    {transform:translateY(-5px) rotate(3deg)}
}

/* ---- C2：入れ子の図（画像1枚をやめ、円・文字・イラストを分けて組む） ---- */
.nest{
  position:relative;container-type:inline-size;
  width:calc(100% + 24px);margin:0 -12px;aspect-ratio:1254 / 1224;
}
.nest__ring{position:absolute;border-radius:50%}
.nest__ring--3{left:1.1%; top:4.1%; width:97.4%;height:95.2%;background:#DABCEA;box-shadow:inset 0 0 0 2px #B98BC9}
.nest__ring--2{left:10.8%;top:37.2%;width:77.4%;height:60.5%;background:#BA7EC6}
.nest__ring--1{left:23.9%;top:67%;  width:48.2%;height:32.3%;background:#FCF648}
.nest__lbl{
  position:absolute;transform:translate(-50%,-50%);white-space:nowrap;
  font-family:var(--f-round);font-weight:900;font-size:6.4cqw;line-height:1;
  letter-spacing:.02em;color:#3B1140;
}
.nest__lbl--3{left:28.7%;top:25.3%}
.nest__lbl--2{left:30.7%;top:53.9%}
.nest__lbl--1{left:31.9%;top:80.9%}
.nest__ill{position:absolute;height:auto;transform-origin:50% 100%}
.nest__ill--change {left:50%;  top:4%;   width:32%;animation:ill-sway 4.6s ease-in-out infinite}
.nest__ill--deliver{left:49%;  top:41.5%;width:24%;animation:ill-bob 5.2s ease-in-out infinite;animation-delay:-1.6s}
.nest__ill--listen {left:44.5%;top:71%;  width:22%;animation:ill-bob 4.2s ease-in-out infinite;animation-delay:-2.8s}
@keyframes ill-bob{0%,100%{transform:translateY(0)}50%{transform:translateY(-4px)}}
@keyframes ill-sway{
  0%,100%{transform:translateY(0) rotate(0)}
  30%    {transform:translateY(-5px) rotate(-1.5deg)}
  70%    {transform:translateY(-3px) rotate(1.2deg)}
}

/* 2026-09-18 FV再配置：大きなモヤリーが街の上に跳ぶ → 左右にうつぼ・メレキチ → キャッチ → Nēne */
.fv__scene{height:clamp(400px,58vh,470px)}
.fv__neighborhood-kids{display:none}
.fv__hero{bottom:auto;top:clamp(56px,11vh,96px)}
.fv__moyari{width:clamp(230px,64vw,284px);filter:drop-shadow(0 18px 18px rgba(80,40,110,.16))}
.fv__side{
  position:absolute;bottom:60px;z-index:5;height:auto;
  filter:drop-shadow(0 4px 4px rgba(80,40,110,.10));
  animation:bob 5.4s ease-in-out infinite;
}
.fv__side--l{left:18%;width:clamp(44px,12vw,54px)}
.fv__side--r{right:12%;width:clamp(46px,13vw,58px);animation-duration:4.8s;animation-delay:-2.2s}
.fv__side.is-hop{animation:hop .6s ease-out}
.fv__copy{padding-top:26px}
.fv__tagline{
  margin:0 0 14px;font-family:var(--f-round);font-weight:700;
  font-size:clamp(17px,4.8vw,21px);letter-spacing:.14em;color:var(--ink);
}
.fv__word{margin:0 auto;width:min(310px,78%);line-height:0}
.fv__word img{display:block;width:100%;height:auto}
@media (prefers-reduced-motion:reduce){.fv__side{animation:none !important}}

/* 2026-09-18 修正 A〜C */
/* A：地面の線→キャッチの余白を80%に（90px→72px。地面64pxは固定なので上余白で詰める） */
.fv__copy{padding-top:8px}
/* B：大きなモヤリーを上端起点で120%に
   （これまでは img の max-width:100% で「シーン幅の50%」に抑えられていた → 60%へ） */
.fv__hero{width:60%}
.fv__moyari{width:100%;max-width:none}
/* C：Instagramアイコンを130%に */
.ig{width:62px;height:62px}
.ig__disc svg{width:36px;height:36px}
.ig__peek{width:83px}
@media (min-width:900px){
  .ig{width:73px;height:73px}
  .ig__peek{width:94px}
}

/* ============ 初回ローディング ============ */
.intro{display:none}
.intro-on{overflow:hidden}
.intro-on .intro{
  display:grid;place-items:center;position:fixed;inset:0;z-index:1000;
  background:#fff;cursor:pointer;
  transition:opacity .55s ease .1s, visibility 0s linear .65s;
}
.intro.is-out{opacity:0;visibility:hidden}
.intro.is-out .intro__inner{transform:scale(1.06);transition:transform .6s cubic-bezier(.3,.7,.3,1)}
.intro__inner{display:flex;flex-direction:column;align-items:center;width:min(250px,64vw)}

/* キャラ：上から落ちてきて、ぽよんと弾む */
.intro__chara-wrap{position:relative;width:78%;margin-bottom:14px}
.intro__chara{
  position:relative;z-index:2;display:block;width:100%;height:auto;
  transform-origin:50% 100%;opacity:0;
  animation:intro-drop 1s cubic-bezier(.3,.6,.4,1) .15s forwards,
            intro-wiggle 1.6s ease-in-out 1.3s infinite;
}
.intro.is-out .intro__chara{animation:intro-leap .55s cubic-bezier(.3,.6,.4,1) forwards}
@keyframes intro-drop{
  0%  {opacity:1;transform:translateY(-70vh) scale(.9,1.1)}
  45% {opacity:1;transform:translateY(0) scale(1,1)}
  55% {transform:translateY(0) scale(1.18,.8)}
  70% {transform:translateY(-22px) scale(.94,1.08)}
  84% {transform:translateY(0) scale(1.06,.94)}
  100%{opacity:1;transform:translateY(0) scale(1,1)}
}
@keyframes intro-wiggle{
  0%,100%{transform:rotate(0)} 25%{transform:rotate(-4deg)} 75%{transform:rotate(4deg)}
}
@keyframes intro-leap{
  0%{transform:scale(1.1,.88)} 40%{transform:translateY(-26px) scale(.95,1.06)} 100%{transform:translateY(-10px) scale(1)}
}
/* 足元の影：落ちてくるにつれて濃くなる */
.intro__shadow{
  position:absolute;left:50%;bottom:-6px;width:58%;height:12px;margin-left:-29%;
  border-radius:50%;background:rgba(140,72,152,.16);
  transform:scale(.2);opacity:0;animation:intro-shadow 1s ease-out .15s forwards;
}
@keyframes intro-shadow{0%{transform:scale(.2);opacity:0}45%{transform:scale(1.15);opacity:1}100%{transform:scale(1);opacity:1}}

/* 着地の瞬間にはじける丸（紫・黄・橙） */
.intro__pop{
  position:absolute;z-index:1;left:50%;top:58%;width:12px;height:12px;border-radius:50%;
  opacity:0;animation:intro-pop .8s cubic-bezier(.2,.8,.3,1) .62s forwards;
}
.intro__pop--1{background:#8C4898;--tx:-118px;--ty:-70px}
.intro__pop--2{background:#F6F062;--tx:112px;--ty:-84px;width:16px;height:16px;box-shadow:0 0 0 2px #1A1A1A inset}
.intro__pop--3{background:#F3981E;--tx:-96px;--ty:34px;width:9px;height:9px}
.intro__pop--4{background:#C08EBE;--tx:104px;--ty:28px}
.intro__pop--5{background:#F6F062;--tx:-40px;--ty:-128px;width:10px;height:10px;box-shadow:0 0 0 2px #1A1A1A inset}
.intro__pop--6{background:#8C4898;--tx:46px;--ty:-122px;width:8px;height:8px}
@keyframes intro-pop{
  0%  {opacity:1;transform:translate(-50%,-50%) scale(.3)}
  60% {opacity:1;transform:translate(calc(-50% + var(--tx)),calc(-50% + var(--ty))) scale(1)}
  100%{opacity:0;transform:translate(calc(-50% + var(--tx)*1.12),calc(-50% + var(--ty)*1.12)) scale(.6)}
}

/* ロゴタイプ：ぴょこっと出る */
.intro__word{
  display:block;width:100%;height:auto;opacity:0;transform-origin:50% 100%;
  animation:intro-word .6s cubic-bezier(.34,1.56,.64,1) .95s forwards;
}
@keyframes intro-word{0%{opacity:0;transform:translateY(18px) scale(.6,.4)}100%{opacity:1;transform:none}}
.intro__tag{
  margin:14px 0 0;font-family:var(--f-round);font-weight:700;font-size:14px;letter-spacing:.14em;
  color:var(--ink);white-space:nowrap;opacity:0;animation:intro-fade .6s ease 1.35s forwards;
}
@keyframes intro-fade{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}

@media (prefers-reduced-motion:reduce){
  .intro__chara,.intro__word,.intro__tag,.intro__shadow{animation:none !important;opacity:1;transform:none}
  .intro__pop{display:none}
}

/* ============ 不具合版のお知らせ（window.NENE_BUSY のときだけ出る） ============ */
.svc-note{
  position:relative;margin:0 0 22px;padding:16px 16px 16px;border-radius:18px;text-align:center;
  background:#FFF7E6;border:2px solid #F3C27A;
}
.svc-note__ttl{
  margin:0 0 8px;font-family:var(--f-round);font-weight:900;font-size:16px;line-height:1.55;color:#B8650A;
}
.svc-note__ttl::before{
  content:"!";display:inline-grid;place-items:center;width:20px;height:20px;margin-right:7px;
  border-radius:50%;background:#F3981E;color:#fff;font-size:13px;vertical-align:2px;
}
.svc-note__body{margin:0;font-size:13.5px;line-height:1.8;color:var(--ink)}
.svc-note__link{
  display:inline-flex;align-items:center;gap:4px;margin-top:12px;padding:10px 18px;border-radius:999px;white-space:nowrap;
  font-family:var(--f-round);font-weight:700;font-size:13.5px;text-decoration:none;
  background:var(--purple);color:#fff;box-shadow:0 6px 14px -6px rgba(140,72,152,.6);
}
.svc-note__link::after{content:"→"}
/* 追従ドック内はコンパクトに */
.svc-note--dock{margin:2px 0 10px;padding:10px 12px;border-radius:12px}
.svc-note--dock .svc-note__ttl{font-size:13px;margin-bottom:2px}
.svc-note--dock .svc-note__ttl br,.svc-note--dock .svc-note__body br{display:none}
.svc-note--dock .svc-note__ttl::before{width:17px;height:17px;font-size:11px}
.svc-note--dock .svc-note__body{font-size:11.5px;line-height:1.6}
.svc-note--dock .svc-note__link{margin-top:6px;padding:6px 14px;font-size:12px}

/* 押せなくなったボタン */
.btn.is-down,.btn.is-down:hover{
  cursor:not-allowed;pointer-events:none;transform:none;
  color:#8A8290;box-shadow:none;
  background:repeating-linear-gradient(135deg,#EEEAF0 0 10px,#E5E0E8 10px 20px);
  border:2px dashed #CFC6D4;
}
.btn.is-down .btn__ico{opacity:.55}
/* ドックは見出し＋案内ボタンだけ（本文と「LINEで」は省いて背を低く） */
.svc-note--dock .svc-note__body{display:none}
.svc-note--dock .svc-note__ttl{margin-bottom:0}
.svc-note--dock ~ .dock__lead{display:none}
