@import"https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;700&family=Outfit:wght@400;600;700&display=swap";:root{--font-base: "Noto Sans JP", sans-serif;--font-en: "Outfit", sans-serif;--bg-main: #0b0f19;--bg-card: rgba(17, 24, 39, .7);--bg-card-hover: rgba(31, 41, 55, .85);--primary-glow: rgba(0, 180, 216, .15);--text-main: #f3f4f6;--text-muted: #9ca3af;--text-inverse: #111827;--accent-blue: #00b4d8;--accent-navy: #1a365d;--accent-purple: #7209b7;--cta-orange: #ff7a59;--cta-hover: #ff5e3a;--border-light: rgba(255, 255, 255, .08);--border-focus: rgba(0, 180, 216, .5);--gradient-brand: linear-gradient(135deg, #00b4d8 0%, #1a365d 100%);--gradient-cta: linear-gradient(135deg, #ff7a59 0%, #ff5e3a 100%);--gradient-glass: linear-gradient(135deg, rgba(255, 255, 255, .05) 0%, rgba(255, 255, 255, .01) 100%);--shadow-premium: 0 8px 32px 0 rgba(0, 0, 0, .37);--radius-lg: 16px;--radius-md: 8px;--transition-smooth: all .3s cubic-bezier(.4, 0, .2, 1)}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-base);background-color:var(--bg-main);color:var(--text-main);line-height:1.6;overflow-x:hidden;background-image:radial-gradient(at 0% 0%,rgba(0,180,216,.05) 0px,transparent 50%),radial-gradient(at 100% 100%,rgba(114,9,183,.05) 0px,transparent 50%);background-attachment:fixed}a{color:var(--accent-blue);text-decoration:none;transition:var(--transition-smooth)}a:hover{color:#4cc9f0}ul{list-style:none}img{max-width:100%;height:auto;display:block}h1,h2,h3,h4{font-weight:700;letter-spacing:-.02em;line-height:1.3}.font-en{font-family:var(--font-en)}.container{max-width:1200px;margin:0 auto;padding:0 24px}header{position:sticky;top:0;z-index:100;background:#0b0f19b3;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--border-light)}.header-container{display:flex;justify-content:space-between;align-items:center;height:80px}.logo a{font-family:var(--font-en);font-size:24px;font-weight:700;color:var(--text-main);display:flex;align-items:center;gap:8px}.logo span{background:var(--gradient-brand);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.nav-links{display:flex;gap:32px;align-items:center}.nav-links a{font-size:15px;font-weight:500;color:var(--text-muted)}.nav-links a:hover,.nav-links a.active{color:var(--text-main)}.nav-cta{background:var(--gradient-cta);color:var(--text-inverse)!important;padding:10px 20px;border-radius:30px;font-weight:700!important;box-shadow:0 4px 15px #ff7a594d}.nav-cta:hover{transform:translateY(-2px);box-shadow:0 6px 20px #ff7a5966}.mobile-menu-toggle{display:none;background:none;border:none;color:var(--text-main);font-size:24px;cursor:pointer}.hero{padding:100px 0 60px;text-align:center;position:relative}.hero-tag{display:inline-block;padding:6px 16px;border-radius:50px;background:#00b4d81a;border:1px solid rgba(0,180,216,.2);color:var(--accent-blue);font-size:14px;font-weight:700;margin-bottom:24px}.hero h1{font-size:48px;margin-bottom:24px;line-height:1.2}.hero h1 span{background:var(--gradient-brand);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.hero p{font-size:18px;color:var(--text-muted);max-width:600px;margin:0 auto 40px}.hero-ctas{display:flex;gap:16px;justify-content:center;flex-wrap:wrap}.btn{display:inline-block;padding:14px 28px;border-radius:var(--radius-md);font-weight:700;transition:var(--transition-smooth);cursor:pointer;border:none}.btn-primary{background:var(--gradient-cta);color:var(--text-inverse);box-shadow:0 4px 15px #ff7a594d}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 6px 20px #ff7a5980;color:var(--text-inverse)}.btn-secondary{background:#ffffff0d;border:1px solid var(--border-light);color:var(--text-main)}.btn-secondary:hover{background:#ffffff1a;border-color:var(--accent-blue)}.main-layout{display:grid;grid-template-columns:1fr 320px;gap:48px;padding:60px 0}.main-content{min-width:0}.sidebar{display:flex;flex-direction:flex-start;flex-direction:column;gap:40px}.sidebar-widget{background:var(--gradient-glass);border:1px solid var(--border-light);border-radius:var(--radius-lg);padding:24px;box-shadow:var(--shadow-premium)}.sidebar-widget h3{font-size:18px;margin-bottom:20px;border-left:4px solid var(--accent-blue);padding-left:12px}.widget-sim-cta{text-align:center;background:linear-gradient(180deg,#1a365d66,#0b0f19cc);border-color:#00b4d84d}.widget-sim-cta p{color:var(--text-muted);font-size:14px;margin-bottom:20px}.glass-card{background:var(--gradient-glass);border:1px solid var(--border-light);border-radius:var(--radius-lg);padding:32px;box-shadow:var(--shadow-premium);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.grid-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:24px;margin-bottom:40px}.article-card{background:var(--bg-card);border:1px solid var(--border-light);border-radius:var(--radius-lg);overflow:hidden;transition:var(--transition-smooth)}.article-card:hover{transform:translateY(-6px);background:var(--bg-card-hover);border-color:#00b4d84d;box-shadow:0 12px 30px #00b4d81a}.card-img-wrap{width:100%;aspect-ratio:16/9;background:linear-gradient(135deg,#1e293b,#0f172a);position:relative;display:flex;align-items:center;justify-content:center}.card-category{position:absolute;top:16px;left:16px;background:#0b0f19cc;border:1px solid var(--border-light);padding:4px 12px;border-radius:30px;font-size:12px;font-weight:700;color:var(--accent-blue)}.card-content{padding:24px}.card-date{font-family:var(--font-en);font-size:12px;color:var(--text-muted);margin-bottom:8px}.card-title{font-size:18px;margin-bottom:12px}.card-title a{color:var(--text-main)}.card-title a:hover{color:var(--accent-blue)}.card-excerpt{font-size:14px;color:var(--text-muted);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.section-title{font-size:32px;margin-bottom:16px;position:relative;display:inline-block}.section-title:after{content:"";position:absolute;bottom:-8px;left:0;width:60px;height:4px;background:var(--gradient-brand);border-radius:2px}.table-meta{color:var(--text-muted);font-size:14px;margin-bottom:24px;display:flex;gap:24px}.table-meta span strong{color:var(--text-main)}.table-responsive{overflow-x:auto;border-radius:var(--radius-lg);border:1px solid var(--border-light);background:var(--bg-card);margin-bottom:40px}table.comparison-table{width:100%;border-collapse:collapse;text-align:left;font-size:15px}.comparison-table th,.comparison-table td{padding:20px 24px;border-bottom:1px solid var(--border-light);vertical-align:middle}.comparison-table th{background:#0f172acc;font-weight:700;color:var(--text-main)}.comparison-table tr:last-child th,.comparison-table tr:last-child td{border-bottom:none}.carrier-header{display:flex;align-items:center;gap:12px}.carrier-logo-dummy{width:36px;height:36px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;font-weight:700;color:var(--text-inverse);font-size:14px}.logo-rakuten{background:#bf007f;color:#fff}.logo-linemo{background:#0f6;color:#000}.logo-povo{background:#ff0;color:#000}.logo-uq{background:red;color:#fff}.logo-ymobile{background:#f03;color:#fff}.carrier-name{font-weight:700;font-size:16px}.price-cell{font-size:18px;font-weight:700;color:var(--text-main);overflow-wrap:anywhere}.price-sub{display:block;font-size:12px;color:var(--text-muted);font-weight:400}.badge{display:inline-block;padding:4px 10px;border-radius:4px;font-size:12px;font-weight:700}.badge-speed{background:#00b4d826;color:var(--accent-blue)}.badge-support{background:#7209b726;color:#b5179e}.badge-light{background:#ffffff14;color:var(--text-muted)}.table-cta{background:var(--gradient-cta);color:var(--text-inverse)!important;font-weight:700;padding:8px 16px;border-radius:var(--radius-md);font-size:13px;display:inline-block;text-align:center;box-shadow:0 4px 12px #ff7a5933}.table-cta:hover{transform:translateY(-2px);box-shadow:0 6px 16px #ff7a5966}.table-cta[aria-disabled=true]{background:#ffffff0f;border:1px solid var(--border-light);box-shadow:none;color:var(--text-muted)!important;cursor:default}.table-cta[aria-disabled=true]:hover{transform:none;box-shadow:none}.official-link-actions{margin-top:20px}.official-link-btn{display:inline-flex;align-items:center;justify-content:center;text-align:center}.official-link-panel{margin-top:28px;padding:24px;border:1px solid rgba(0,180,216,.22);border-radius:var(--radius-md);background:#00b4d80d}.official-link-panel h2{font-size:20px;margin-bottom:10px}.official-link-panel p{color:var(--text-muted);font-size:14px;margin-bottom:18px}.official-link-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}.simulator-wrapper{max-width:800px;margin:0 auto}.sim-progress-bar-wrap{width:100%;height:6px;background:#ffffff0d;border-radius:10px;margin-bottom:40px;overflow:hidden}.sim-progress-bar{height:100%;width:25%;background:var(--gradient-brand);transition:width .4s ease}.sim-step{display:none}.sim-step.active{display:block;animation:fadeIn .5s ease forwards}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.sim-title{font-size:24px;margin-bottom:24px;text-align:center}.sim-options{display:grid;grid-template-columns:1fr;gap:16px;margin-bottom:32px}.sim-option-card{background:#ffffff05;border:1px solid var(--border-light);border-radius:var(--radius-lg);padding:20px 24px;cursor:pointer;transition:var(--transition-smooth);display:flex;align-items:center;gap:16px}.sim-option-card:hover{background:#ffffff0d;border-color:var(--accent-blue);transform:translate(4px)}.sim-option-card.selected{background:#00b4d814;border-color:var(--accent-blue);box-shadow:0 0 15px #00b4d833}.sim-radio-circle{width:20px;height:20px;border-radius:50%;border:2px solid var(--border-light);display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:var(--transition-smooth)}.sim-option-card.selected .sim-radio-circle{border-color:var(--accent-blue)}.sim-option-card.selected .sim-radio-circle:after{content:"";width:10px;height:10px;border-radius:50%;background:var(--accent-blue)}.sim-option-text{flex-grow:1}.sim-option-title{font-weight:700;font-size:16px;margin-bottom:4px}.sim-option-desc{font-size:13px;color:var(--text-muted)}.sim-navigation{display:flex;justify-content:space-between;gap:16px}.sim-navigation .btn{flex:1;max-width:200px}.result-header{text-align:center;margin-bottom:40px}.result-header h2{font-size:28px;margin-bottom:12px}.result-card-premium{background:linear-gradient(135deg,#1a365d80,#0f172acc);border:1.5px solid rgba(0,180,216,.3);box-shadow:0 10px 40px #00b4d826;border-radius:var(--radius-lg);padding:32px;margin-bottom:40px;position:relative;overflow:hidden;overflow-wrap:anywhere}.result-card-premium:before{content:"候補";position:absolute;top:20px;right:-30px;background:var(--gradient-cta);color:var(--text-inverse);font-weight:700;font-size:11px;padding:6px 36px;transform:rotate(45deg)}.result-top-info{display:flex;align-items:center;gap:16px;margin-bottom:24px}.result-carrier-badge{width:48px;height:48px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;font-weight:700;color:#fff;font-size:18px}.result-carrier-name{font-size:24px;font-weight:700}.result-features{display:grid;grid-template-columns:1fr;gap:16px;margin-bottom:32px}@media (min-width: 600px){.result-features{grid-template-columns:repeat(2,1fr)}}.result-feature-item{background:#ffffff08;padding:16px;border-radius:var(--radius-md);border:1px solid var(--border-light);min-width:0}.result-feature-label{font-size:12px;color:var(--text-muted);margin-bottom:4px}.result-feature-value{font-size:18px;font-weight:700;overflow-wrap:anywhere}.result-description{color:var(--text-muted);margin-bottom:32px;font-size:15px}.result-actions{display:flex;gap:16px;flex-wrap:wrap}.result-actions .btn{flex:1;min-width:200px;text-align:center}.article-header{margin-bottom:40px}.article-category{display:inline-block;color:var(--accent-blue);font-weight:700;font-size:14px;margin-bottom:12px}.article-header h1{font-size:36px;margin-bottom:16px}.article-meta{display:flex;gap:20px;color:var(--text-muted);font-size:14px}.article-body{font-size:16px;line-height:1.8}.article-body h2{font-size:24px;margin:40px 0 20px;padding-bottom:8px;border-bottom:2px solid var(--border-light);position:relative}.article-body h2:before{content:"";position:absolute;bottom:-2px;left:0;width:40px;height:2px;background:var(--accent-blue)}.article-body h3{font-size:20px;margin:30px 0 16px}.article-body p{margin-bottom:20px}.article-body ul{list-style:disc;margin:0 0 20px 24px}.article-body li{margin-bottom:8px}.callout-box{background:#00b4d80d;border-left:4px solid var(--accent-blue);padding:24px;border-radius:0 var(--radius-md) var(--radius-md) 0;margin:30px 0}.callout-box-title{font-weight:700;margin-bottom:8px;color:var(--text-main)}.form-group{margin-bottom:24px}.form-group label{display:block;font-weight:500;margin-bottom:8px;font-size:14px}.form-control{width:100%;background:#ffffff05;border:1px solid var(--border-light);border-radius:var(--radius-md);padding:12px 16px;color:var(--text-main);font-family:var(--font-base);font-size:15px;transition:var(--transition-smooth)}.form-control:focus{outline:none;border-color:var(--border-focus);box-shadow:0 0 10px #00b4d833}textarea.form-control{min-height:150px;resize:vertical}.hp-field{display:none!important;tab-index:-1;autocomplete:off}footer{background:#070a11;border-top:1px solid var(--border-light);padding:60px 0 30px;margin-top:80px}.footer-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:40px;margin-bottom:40px}.footer-widget h4{font-size:16px;margin-bottom:20px;color:var(--text-main)}.footer-widget ul{display:flex;flex-direction:column;gap:12px}.footer-widget a{font-size:14px;color:var(--text-muted)}.footer-widget a:hover{color:var(--accent-blue)}.footer-bottom{border-top:1px solid var(--border-light);padding-top:30px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:20px;color:var(--text-muted);font-size:13px}@media (max-width: 992px){.main-layout{grid-template-columns:1fr;gap:40px}.sidebar{grid-row:2}}@media (max-width: 768px){.header-container{height:70px}.nav-links{display:none}.mobile-menu-toggle{display:block}.hero h1{font-size:32px}.hero p{font-size:16px}.btn{width:100%;text-align:center}.glass-card{padding:24px 18px}.comparison-table th,.comparison-table td{padding:16px}.result-card-premium{padding:28px 18px}.result-carrier-name{font-size:20px}.sim-navigation{flex-direction:column}.sim-navigation .btn{max-width:none;width:100%}}
