:root{--text:#2a1b1b;--wine:#7b2e2e;--gold:#c5a572}body,html{margin:0;padding:0;color:var(--text);font-family:ui-sans-serif,system-ui,-apple-system,Hiragino Kaku Gothic ProN,Meiryo,Segoe UI,Roboto,sans-serif;max-width:100vw;overflow-x:hidden}html{height:100%;scrollbar-width:none;-ms-overflow-style:none}html::-webkit-scrollbar{display:none}body{min-height:100%;background:linear-gradient(180deg,#fff8fb,#ffeef5 55%,#ffdfe9);background-repeat:no-repeat;background-attachment:fixed;background-size:100% 100%}body:after,body:before{content:none!important}a{color:inherit;text-decoration:none}.container{padding:24px}.card{background:#ffffffee;border:1px solid #ead9c0;border-radius:14px;padding:16px;box-shadow:0 2px 8px #0000000a}.h1{font-size:28px;margin:0 0 12px}.h2{font-size:22px;margin:18px 0 8px}.footer{border-top:1px solid #f0d0d8;background:linear-gradient(135deg,#fffafc,#fff5f8);text-align:center;padding:24px 16px;color:#8b6f6f;font-size:14px;margin-top:60px}.input,select,textarea{width:100%;padding:10px;border:1px solid #d9c7ac;border-radius:10px;box-sizing:border-box}.btn{background:var(--wine);color:#fff;border:none;padding:10px 16px;border-radius:12px;cursor:pointer;position:relative;transition:transform .04s ease,opacity .2s ease;box-sizing:border-box}.btn:hover{transform:translateY(-1px)}.btn:active{transform:translateY(0)}.btn.secondary{background:#fff;color:var(--wine);border:1px solid var(--wine)}.btn.primary{background:var(--wine);color:#fff}.btn.danger{background:#dc2626;border-color:#dc2626}.btn.small{padding:6px 10px;font-size:12px;border-radius:8px}@keyframes iconSpin{to{transform:translate(-50%,-50%) rotate(1turn)}}@keyframes heroFadeInZoom{0%{opacity:0;transform:scale(1.08)}to{opacity:1;transform:scale(1)}}@keyframes textSlideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}a[aria-busy=true]{position:relative;pointer-events:none;opacity:.95}a[aria-busy=true]:after{content:"";position:absolute;left:50%;top:50%;width:20px;height:20px;transform:translate(-50%,-50%);background-image:url(/music019.png);background-size:contain;background-repeat:no-repeat;animation:iconSpin 1.5s linear infinite;filter:drop-shadow(0 0 2px rgba(123,46,46,.35))}.btn[aria-busy=true],.is-loading{pointer-events:none;opacity:.95}.btn[aria-busy=true]:after,.is-loading:after{content:"";position:absolute;left:50%;top:50%;width:22px;height:22px;transform:translate(-50%,-50%);background-image:url(/music019.png);background-size:contain;background-repeat:no-repeat;animation:iconSpin 1.5s linear infinite;filter:drop-shadow(0 0 2px rgba(255,255,255,.7))}.notes-layer{position:fixed;inset:0;pointer-events:none;z-index:-1}.notes-layer img{position:absolute;opacity:.08;filter:saturate(90%)}@keyframes navSlideDown{0%{transform:translateY(-100%);opacity:0}to{transform:translateY(0);opacity:1}}.nav.nav-intro{position:fixed;left:0;right:0;top:0;animation:navSlideDown .65s cubic-bezier(.22,1,.36,1) 2s both}body.intro-locked{overflow:hidden;position:fixed;width:100%;top:0}.nav{position:-webkit-sticky;position:sticky;top:0;z-index:100;background:#fff;border-bottom:1px solid #f0d0d8;box-shadow:0 2px 8px rgba(123,46,46,.06)}.navinner{max-width:1200px;margin:0 auto;padding:14px 24px;justify-content:space-between;gap:20px}.nav .brand,.navinner{display:flex;align-items:center}.nav .brand{font-size:20px;font-weight:700;color:var(--wine);white-space:nowrap;transition:color .3s ease;gap:6px}.nav .brand:hover{color:var(--gold)}.nav .menu{display:flex;flex-wrap:nowrap;gap:8px;font-size:15px}.nav .menu a{padding:10px 18px;color:#5a4a4a;font-weight:600;border-radius:10px;transition:all .3s ease;white-space:nowrap;border:2px solid transparent}.nav .menu a:hover{background:linear-gradient(135deg,#fff7ec,#ffe6c7);border-color:var(--gold);color:var(--wine);transform:translateY(-2px);box-shadow:0 4px 12px hsla(37,42%,61%,.2)}.container{max-width:960px;margin:0 auto;padding:24px 16px 40px}.card{background:#fff;border:1px solid #f0d0d8;border-radius:16px;padding:28px 24px;box-shadow:0 2px 12px rgba(123,46,46,.06)}.grid{display:grid}.flex{display:flex;align-items:center}.muted{font-size:13px;color:#6b7280;margin-bottom:4px}.card-title{font-size:18px;font-weight:700;color:var(--wine);margin:0 0 16px}.tableWrap{overflow-x:auto;margin-top:8px}.btn,.card .btn{display:inline-block;margin-top:8px}table{width:100%;border-collapse:collapse}td,th{padding:6px 8px;vertical-align:middle}.mypage-layout{display:flex;align-items:flex-start;gap:24px}.mypage-main{flex:2 1;min-width:0}.mypage-side{flex:1 1;min-width:220px}@media (max-width:768px){.navinner{padding:12px 16px;gap:12px}.nav .brand{font-size:18px}.nav .menu{gap:6px;font-size:14px;overflow-x:auto;width:100%}.nav .menu a{padding:8px 14px;font-size:13px}.container{padding:16px 12px 28px}.card{padding:20px 18px}.btn,.card .btn{width:100%;text-align:center;margin-top:10px}.btn.small{width:auto;margin-top:0}.mypage-layout{flex-direction:column}.mypage-side{width:100%;min-width:0}table{font-size:.8rem}td,th{padding:4px 6px;word-break:break-word}}@media (max-width:480px){.navinner{padding:10px 12px;gap:6px;flex-wrap:wrap}.nav .brand{font-size:16px}.nav .menu{font-size:13px;gap:4px;width:100%;overflow-x:auto;flex-wrap:nowrap}.nav .menu a{padding:6px 12px;font-size:12px}.container{padding-inline:8px}.card{padding:16px 14px}}.hero-visual{background-position:50%}@media (max-width:768px){.hero-visual{background-position:25%}}.admin-page button:disabled{animation:none!important;background-image:none!important}:root{--press-duration:140ms;--press-ease:cubic-bezier(.2,.8,.2,1);--press-raise-shadow:0 6px 12px rgba(0,0,0,.12);--press-hover-shadow:0 4px 10px rgba(0,0,0,.1);--press-pressed-shadow:0 2px 6px rgba(0,0,0,.14);--press-translate-hover:1px;--press-translate-down:2px;--press-scale-hover:.997;--press-scale-down:.992}.btn,.button,[role=button],a.btn,a.button,button,input[type=button],input[type=reset],input[type=submit]{transition:transform var(--press-duration) var(--press-ease),box-shadow var(--press-duration) var(--press-ease),filter var(--press-duration) var(--press-ease);will-change:transform,box-shadow;cursor:pointer;box-shadow:var(--press-raise-shadow)}.btn:hover,.button:hover,[role=button]:hover,a.btn:hover,a.button:hover,button:hover,input[type=button]:hover,input[type=reset]:hover,input[type=submit]:hover{transform:translateY(var(--press-translate-hover)) scale(var(--press-scale-hover));box-shadow:var(--press-hover-shadow)}.btn:active,.button:active,[role=button]:active,a.btn:active,a.button:active,button:active,input[type=button]:active,input[type=reset]:active,input[type=submit]:active{transform:translateY(var(--press-translate-down)) scale(var(--press-scale-down));box-shadow:var(--press-pressed-shadow);filter:brightness(.98)}.btn:focus-visible,.button:focus-visible,[role=button]:focus-visible,a.btn:focus-visible,a.button:focus-visible,button:focus-visible,input[type=button]:focus-visible,input[type=reset]:focus-visible,input[type=submit]:focus-visible{outline:2px solid rgba(0,120,255,.7);outline-offset:2px}.btn[disabled],.button[disabled],[aria-disabled=true],button[disabled],input[type=button][disabled],input[type=reset][disabled],input[type=submit][disabled]{cursor:not-allowed;pointer-events:none;transform:none!important;box-shadow:none!important;filter:grayscale(.1) brightness(.97)}.no-press,.no-press *{transition:none!important;transform:none!important;box-shadow:none!important}@media (prefers-reduced-motion:reduce){.btn,.button,[role=button],a.btn,a.button,button,input[type=button],input[type=reset],input[type=submit]{transition:none}}