/* Cookie の案内と設定画面（全ページ共通）。サイトの色（紺・金・薄い青）でそろえる */
.ck-banner{position:fixed;left:12px;right:12px;bottom:12px;z-index:20;max-width:520px;margin:0 auto;padding:14px 16px;background:#fff;border:1px solid #e3e7f0;border-radius:16px;box-shadow:0 8px 32px rgba(15,27,61,.18);color:#0f1b3d;font-family:"Hiragino Sans","Noto Sans JP",system-ui,sans-serif;animation:ck-up .4s cubic-bezier(.2,1,.3,1)}
.ck-banner p{margin:0 0 12px;font-size:12.5px;line-height:1.7;color:#4a5370}
@keyframes ck-up{from{transform:translateY(16px);opacity:0}to{transform:none;opacity:1}}
.ck-actions{display:flex;gap:8px;align-items:center;justify-content:flex-end;flex-wrap:wrap}
.ck-actions button{font:inherit;font-size:13px;font-weight:700;height:38px;padding:0 16px;border-radius:10px;border:0;cursor:pointer;transition:transform .15s ease,background-color .2s ease}
.ck-actions button:active{transform:scale(.95)}
.ck-main{color:#fff;background:linear-gradient(135deg,#0f1b3d 0%,#1b3a82 60%,#3a62b8 100%)}
.ck-sub{color:#0f1b3d;background:#e9edf6}
.ck-link{color:#4a5370;background:none;text-decoration:underline;padding:0 8px!important;margin-right:auto}
.ck-modal{position:fixed;inset:0;z-index:30;display:flex;align-items:center;justify-content:center;padding:16px;background:rgba(15,27,61,.45);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);font-family:"Hiragino Sans","Noto Sans JP",system-ui,sans-serif;color:#0f1b3d}
.ck-card{width:100%;max-width:440px;max-height:92vh;overflow:auto;background:#fff;border-radius:22px;padding:22px 20px 18px;box-shadow:0 24px 64px rgba(15,27,61,.35);animation:ck-pop .3s cubic-bezier(.2,1.2,.4,1)}
@keyframes ck-pop{from{transform:scale(.94);opacity:0}to{transform:none;opacity:1}}
.ck-card h2{margin:0 0 4px;font-size:18px}
.ck-lead{margin:0 0 6px;font-size:12.5px;color:#4a5370}
.ck-row{display:flex;gap:14px;align-items:flex-start;justify-content:space-between;padding:14px 0;border-top:1px solid #e3e7f0}
.ck-text b{font-size:14px}
.ck-text p{margin:4px 0;font-size:12.5px;line-height:1.7;color:#4a5370}
.ck-text small{font-size:11px;color:#6b7385}
.ck-note{margin:2px 0 14px;font-size:11.5px;line-height:1.7;color:#6b7385;border-top:1px solid #e3e7f0;padding-top:12px}
.ck-note a{color:#0f1b3d}
/* オン・オフのスイッチ */
.ck-switch{position:relative;flex:0 0 auto;width:46px;height:28px;margin-top:2px}
.ck-switch input{position:absolute;opacity:0;inset:0;width:100%;height:100%;margin:0;cursor:pointer}
.ck-switch span{position:absolute;inset:0;border-radius:99px;background:#c9d2e6;transition:background-color .25s ease;pointer-events:none}
.ck-switch span::after{content:"";position:absolute;top:3px;left:3px;width:22px;height:22px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(15,27,61,.3);transition:transform .3s cubic-bezier(.3,1.4,.5,1)}
.ck-switch input:checked+span{background:#1b3a82}
.ck-switch input:checked+span::after{transform:translateX(18px)}
.ck-switch input:disabled+span{opacity:.55}
.ck-switch input:focus-visible+span{outline:2px solid #3a62b8;outline-offset:2px}
@media (prefers-reduced-motion:reduce){.ck-banner,.ck-card{animation:none}.ck-switch span,.ck-switch span::after{transition:none}}
