:root{--color-primary:#e8456a;--color-secondary:#ff8c42;--color-line:#06C755;--color-bg:#fff8f9;--color-white:#ffffff;--color-text:#333333;--color-text-sub:#666666;--color-text-mute:#aaaaaa;--color-border:#f0f0f0;--grad-primary:linear-gradient(
135deg, #e8456a 0%, #ff8c42 100%);--radius-card:14px;--radius-btn:50px;--shadow-card:0 4px 20px rgba(232,69,106,0.1);--font-main:'Noto Sans JP', 'Hiragino Sans', 'Hiragino Kaku Gothic ProN', 'Meiryo', sans-serif;}
*, *::before, *::after{box-sizing:border-box;margin:0;padding:0;}
html{font-size:16px;}
body{font-family:var(--font-main);background:var(--color-bg);color:var(--color-text);line-height:1.6;-webkit-font-smoothing:antialiased;}
img, video{max-width:100%;display:block;}
a{text-decoration:none;color:inherit;}
ul{list-style:none;}
button{font-family:var(--font-main);cursor:pointer;}
.container{max-width:560px;margin:0 auto;padding:0 16px;}
.affiliate-notice{text-align:center;font-size:11px;color:var(--color-text-mute);background:#f9f9f9;padding:6px 0;border-bottom:1px solid var(--color-border);}
.site-header{background:var(--color-white);box-shadow:0 2px 8px rgba(232,69,106,0.08);position:sticky;top:0;z-index:100;}
.site-header__inner{display:flex;justify-content:space-between;align-items:center;padding:14px 20px;max-width:560px;margin:0 auto;}
.site-header__logo{font-weight:800;font-size:1.1rem;background:var(--grad-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;}
.site-header__label{font-size:11px;color:var(--color-text-mute);}
.site-footer{background:var(--color-white);border-top:1px solid var(--color-border);padding:20px 16px;text-align:center;}
.site-footer__nav{display:flex;flex-wrap:wrap;gap:14px;justify-content:center;margin-bottom:12px;}
.site-footer__nav a{font-size:12px;color:var(--color-text-mute);}
.site-footer__copy{font-size:11px;color:var(--color-text-mute);}
.btn-primary{display:block;background:var(--grad-primary);color:var(--color-white);font-weight:800;font-size:16px;padding:18px 20px;border-radius:var(--radius-btn);text-align:center;border:none;animation:pulse 2s infinite;box-shadow:0 4px 20px rgba(232,69,106,0.3);transition:opacity 0.2s;}
.btn-primary:hover{opacity:0.9;}
.btn-secondary{display:block;background:var(--color-white);color:var(--color-primary);font-weight:700;font-size:15px;padding:16px 20px;border-radius:var(--radius-btn);text-align:center;border:2px solid var(--color-primary);}
.btn-line{display:block;background:var(--color-line);color:var(--color-white);font-weight:800;font-size:15px;padding:16px 20px;border-radius:var(--radius-btn);text-align:center;border:none;}
.btn-note{font-size:11px;color:var(--color-text-mute);text-align:center;margin-top:8px;}
.card{background:var(--color-white);border-radius:var(--radius-card);padding:20px 16px;border:1.5px solid var(--color-border);box-shadow:var(--shadow-card);}
.badge{display:inline-block;font-size:11px;font-weight:700;padding:4px 12px;border-radius:20px;}
.badge--primary{background:#fff0f3;color:var(--color-primary);border:1px solid #f4c0d1;}
.badge--green{background:#f0fff4;color:#085041;border:1px solid #06C755;}
@keyframes pulse{0%,100%{box-shadow:0 4px 20px rgba(232,69,106,0.3);}
50%{box-shadow:0 4px 32px rgba(232,69,106,0.6);}
}
@keyframes fadeInUp{from{opacity:0;transform:translateY(20px);}
to{opacity:1;transform:translateY(0);}
}
@keyframes popIn{0%{transform:scale(0);opacity:0;}
100%{transform:scale(1);opacity:1;}
}
@keyframes dotBlink{0%,100%{opacity:0.2;transform:scale(0.8);}
50%{opacity:1;transform:scale(1.2);}
}
.fade-in-up{animation:fadeInUp 0.5s ease both;}
.score-bar-bg{height:6px;background:#f0f0f0;border-radius:3px;overflow:hidden;}
.score-bar-fill{height:100%;background:var(--grad-primary);border-radius:3px;width:0%;transition:width 0.8s ease;}
.text-gradient{background:var(--grad-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;}
.editorial-policy{background:#f9f9f9;border-radius:8px;border:1px solid #eee;padding:14px 16px;margin-top:16px;}
.editorial-policy__title{font-size:12px;font-weight:700;color:#333;margin-bottom:6px;}
.editorial-policy__text{font-size:11px;color:#888;line-height:1.7;}
.support-page{background:#fff;color:#333;font-family:var(--font-main);}
.support-header{border-bottom:1px solid #f0f0f0;padding:20px 24px;display:flex;justify-content:space-between;align-items:center;max-width:720px;margin:0 auto;}
.support-header__logo{font-weight:800;font-size:1rem;background:linear-gradient(135deg,#e8456a,#ff8c42);-webkit-background-clip:text;-webkit-text-fill-color:transparent;text-decoration:none;letter-spacing:.02em;}
.support-header__back{font-size:12px;color:#aaa;text-decoration:none;display:flex;align-items:center;gap:4px;transition:color 0.2s;}
.support-header__back:hover{color:#e8456a;}
.support-main{max-width:680px;margin:0 auto;padding:56px 24px 80px;}
.support-page-head{margin-bottom:56px;padding-bottom:28px;border-bottom:1px solid #f0f0f0;}
.support-page-head__label{font-size:11px;font-weight:700;color:#e8456a;letter-spacing:.12em;text-transform:uppercase;margin-bottom:12px;display:block;}
.support-page-head__title{font-size:1.8rem;font-weight:800;color:#1a1a1a;line-height:1.3;margin-bottom:12px;letter-spacing:-.01em;}
.support-page-head__desc{font-size:14px;color:#888;line-height:1.8;}
.support-section{margin-bottom:52px;}
.support-section__title{font-size:13px;font-weight:700;color:#e8456a;letter-spacing:.1em;text-transform:uppercase;margin-bottom:16px;display:flex;align-items:center;gap:10px;}
.support-section__title::after{content:'';flex:1;height:1px;background:#f0f0f0;}
.support-section__body{font-size:14px;color:#444;line-height:2;}
.support-section__body p{margin-bottom:16px;}
.support-section__body p:last-child{margin-bottom:0;}
.support-section__body a{color:#e8456a;text-decoration:underline;text-underline-offset:3px;}
.info-card{background:#fafafa;border-radius:12px;padding:24px;margin-top:8px;}
.info-card__row{display:flex;gap:16px;padding:12px 0;border-bottom:1px solid #f0f0f0;font-size:14px;}
.info-card__row:last-child{border-bottom:none;}
.info-card__label{width:120px;flex-shrink:0;color:#999;font-size:12px;font-weight:500;padding-top:1px;}
.info-card__value{color:#333;flex:1;line-height:1.6;}
.info-card__value a{color:#e8456a;}
.highlight-box{border-left:3px solid #e8456a;padding:16px 20px;background:#fff8f9;border-radius:0 8px 8px 0;font-size:14px;color:#444;line-height:1.8;margin:16px 0;}
.support-updated{font-size:12px;color:#bbb;text-align:right;margin-top:48px;padding-top:24px;border-top:1px solid #f0f0f0;}
.support-footer{border-top:1px solid #f0f0f0;padding:32px 24px;text-align:center;}
.support-footer__nav{display:flex;flex-wrap:wrap;gap:20px;justify-content:center;margin-bottom:16px;}
.support-footer__nav a{font-size:12px;color:#aaa;text-decoration:none;transition:color 0.2s;}
.support-footer__nav a:hover{color:#e8456a;}
.support-footer__copy{font-size:11px;color:#ccc;letter-spacing:.04em;}
.contact-form-new{margin-top:8px;}
.form-group{margin-bottom:28px;}
.form-label{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:700;color:#333;margin-bottom:8px;}
.form-required{font-size:10px;background:#e8456a;color:#fff;padding:2px 6px;border-radius:3px;font-weight:500;}
.form-optional{font-size:10px;background:#f0f0f0;color:#999;padding:2px 6px;border-radius:3px;font-weight:500;}
.form-input{width:100%;padding:14px 16px;border:1.5px solid #e8e8e8;border-radius:8px;font-size:14px;font-family:var(--font-main);color:#333;background:#fff;transition:border-color 0.2s;box-sizing:border-box;-webkit-appearance:none;}
.form-input:focus{outline:none;border-color:#e8456a;box-shadow:0 0 0 3px rgba(232,69,106,0.08);}
.form-textarea{width:100%;padding:14px 16px;border:1.5px solid #e8e8e8;border-radius:8px;font-size:14px;font-family:var(--font-main);color:#333;background:#fff;resize:vertical;min-height:160px;transition:border-color 0.2s;box-sizing:border-box;-webkit-appearance:none;}
.form-textarea:focus{outline:none;border-color:#e8456a;box-shadow:0 0 0 3px rgba(232,69,106,0.08);}
.form-hint{font-size:12px;color:#aaa;margin-top:6px;}
.form-submit-wrap{margin-top:36px;}
.form-submit-btn{width:100%;padding:18px;background:linear-gradient(135deg,#e8456a,#ff8c42);color:#fff;font-size:15px;font-weight:800;border:none;border-radius:50px;cursor:pointer;font-family:var(--font-main);letter-spacing:.04em;transition:opacity 0.2s;}
.form-submit-btn:hover{opacity:0.9;}
.form-submit-btn:disabled{opacity:0.5;cursor:not-allowed;}
.form-result{margin-top:20px;padding:16px;border-radius:8px;font-size:13px;text-align:center;display:none;}
.form-result--success{display:block;background:#e8f5e9;color:#2e7d32;border:1px solid #a5d6a7;}
.form-result--error{display:block;background:#fce4ec;color:#c62828;border:1px solid #ef9a9a;}