:root{--cw-red:#f03748;--cw-dark:#13202f;--cw-text:#13202f;--cw-sub:#555;--cw-muted:#888;--cw-bg:#fff;--cw-bg-alt:#f6f6f6;--cw-border:#e1e3e6;--cw-yellow:#ffbe2e;--cw-font:"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","Hiragino Sans","メイリオ",Meiryo,"ＭＳ Ｐゴシック",sans-serif;--cw-max:1100px;}*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}html{font-size:16px;scroll-behavior:smooth;-webkit-font-smoothing:antialiased;}body{font-family:var(--cw-font);color:var(--cw-text);line-height:1.8;background:var(--cw-bg);}a{color:var(--cw-red);text-decoration:none;}a:hover{text-decoration:underline;}img{max-width:100%;height:auto;display:block;}::selection{background:#fde;}.container{max-width:var(--cw-max);margin:0 auto;padding:0 30px;}.section{padding:80px 0;}.section--alt{background:var(--cw-bg-alt);}.tc{text-align:center;}.header{background:#fff;padding:0;position:sticky;top:0;z-index:1000;border-bottom:1px solid var(--cw-border);height:72px;}.header__inner{display:flex;align-items:center;justify-content:space-between;height:72px;}.header__logo{display:flex;align-items:center;gap:10px;font-size:0;}.header__logo-mark{width:28px;height:28px;background:var(--cw-red);border-radius:6px;display:flex;align-items:center;justify-content:center;}.header__logo-mark svg{width:18px;height:18px;}.header__logo-text{font-size:1.15rem;font-weight:700;color:var(--cw-dark);letter-spacing:-0.3px;}.header__nav{display:flex;align-items:center;gap:0;}.header__nav a{color:var(--cw-dark);font-size:0.82rem;font-weight:500;padding:0 16px;height:72px;display:flex;align-items:center;transition:color 0.15s;text-decoration:none;border-bottom:2px solid transparent;}.header__nav a:hover{color:var(--cw-red);border-bottom-color:var(--cw-red);text-decoration:none;}.header__cta{background:#fff;color:var(--cw-red) !important;padding:7px 20px;border-radius:6px;font-size:0.75rem;font-weight:700;height:auto;border-bottom:none !important;margin-left:8px;border:1.5px solid var(--cw-red) !important;}.header__cta:hover{background:var(--cw-red);color:#fff !important;text-decoration:none;}.hero{padding:48px 0 40px;min-height:440px;}.hero__grid{display:grid;grid-template-columns:1fr 420px;gap:40px;align-items:center;}.hero__top-text{font-size:0.95rem;color:var(--cw-dark);line-height:1.7;margin-bottom:8px;}.hero__title{font-size:2.6rem;font-weight:900;color:var(--cw-dark);line-height:1.25;letter-spacing:-1px;margin-bottom:8px;}.hero__em{color:var(--cw-red);}.hero__desc{font-size:0.88rem;color:var(--cw-dark);line-height:1.75;margin-bottom:28px;}.hero__btns{display:flex;flex-direction:column;gap:12px;max-width:400px;}.btn{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;font-weight:700;border-radius:50px;transition:all 0.2s;cursor:pointer;position:relative;font-family:var(--cw-font);}.btn:hover{text-decoration:none;}.btn--hero{font-size:0.92rem;padding:13px 0;width:100%;border-radius:50px;}.btn--md{font-size:0.88rem;padding:12px 28px;}.btn--sm{font-size:0.82rem;padding:10px 22px;}.btn--red{background:var(--cw-red);color:#fff;border:2px solid var(--cw-red);}.btn--red:hover{background:#d42f3e;border-color:#d42f3e;}.btn--white{background:#fff;color:var(--cw-red);border:2px solid var(--cw-red);}.btn--white:hover{background:#fff5f5;}.btn--black{background:var(--cw-dark);color:#fff;border:2px solid var(--cw-dark);}.btn--black:hover{background:#0a1520;}.btn--icon::after{content:' ›';font-size:1.1em;}.btn--block{width:100%;}.hero__visual{text-align:center;}.hero__visual img{width:100%;max-width:400px;margin:0 auto;border-radius:16px;}.client{padding:24px 0;border-top:1px solid var(--cw-border);border-bottom:1px solid var(--cw-border);text-align:center;}.client__heading{font-size:0.82rem;color:var(--cw-muted);margin-bottom:4px;}.client__number{display:flex;align-items:baseline;justify-content:center;gap:4px;}.client__big{font-size:4rem;font-weight:900;color:var(--cw-dark);line-height:1;letter-spacing:-3px;}.client__unit{font-size:1rem;font-weight:700;color:var(--cw-dark);}.client__note{font-size:0.7rem;color:var(--cw-muted);margin-top:4px;}.summary{padding:80px 0;}.summary__grid{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center;}.summary__title{font-size:1.6rem;font-weight:800;color:var(--cw-dark);line-height:1.4;margin-bottom:16px;}.summary__desc{font-size:0.88rem;line-height:1.75;color:var(--cw-sub);}.summary__img img{border-radius:12px;}.feature{padding:60px 0;}.feature__heading{text-align:center;margin-bottom:48px;}.feature__heading h2{font-size:1.5rem;font-weight:800;color:var(--cw-dark);margin-bottom:0;}.feature__heading h2::before{display:none;}.feature__list{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;}.feature__item{text-align:center;padding:28px 16px;background:#fff;border:1px solid var(--cw-border);border-radius:15px;}.feature__item:hover{box-shadow:0 4px 20px rgba(0,0,0,0.06);}.feature__icon{width:48px;height:48px;margin:0 auto 14px;}.feature__icon img{width:100%;height:100%;object-fit:contain;}.feature__name{font-size:0.92rem;font-weight:700;color:var(--cw-dark);margin-bottom:6px;}.feature__note{font-size:0.78rem;color:var(--cw-muted);line-height:1.55;}.ranking{padding:80px 0;background:var(--cw-bg-alt);}.ranking__heading{text-align:center;margin-bottom:40px;}.ranking__heading h2{font-size:1.5rem;font-weight:800;color:var(--cw-dark);}.ranking__heading h2::before{display:none;}.ranking__heading p{font-size:0.82rem;color:var(--cw-muted);}.rank-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;}.rank-card{background:#fff;border-radius:15px;overflow:hidden;box-shadow:0 1px 6px rgba(0,0,0,0.04);transition:all 0.25s;display:flex;flex-direction:column;}.rank-card:hover{box-shadow:0 6px 28px rgba(0,0,0,0.1);transform:translateY(-3px);}.rank-card__badge{padding:8px 16px;display:flex;align-items:center;background:#fff;}.rank-icon{font-size:1.6rem;line-height:1;}.rank-icon-img{width:48px;height:48px;object-fit:contain;}.rank-icon-img{width:48px;height:48px;object-fit:contain;}.rank-card__badge--4 .rank-icon{width:28px;height:28px;background:#9CA3AF;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:0.85rem;font-weight:800;}.rank-card__banner{width:100%;overflow:hidden;}.rank-card__banner img{width:100%;height:100px;object-fit:cover;}.rank-card__banner{width:100%;overflow:hidden;}.rank-card__banner img{width:100%;height:120px;object-fit:cover;}.rank-card__body{padding:20px 18px;flex:1;display:flex;flex-direction:column;}.rank-card__name{font-size:1rem;font-weight:800;color:var(--cw-dark);margin-bottom:6px;}.rank-card__sub{font-size:0.75rem;color:var(--cw-muted);margin-bottom:12px;line-height:1.4;}.rank-card__specs{flex:1;margin-bottom:14px;}.rank-card__row{display:flex;justify-content:space-between;padding:6px 0;border-bottom:1px solid #f0f0f0;font-size:0.78rem;}.rank-card__row:last-child{border:none;}.rank-card__k{color:var(--cw-muted);}.rank-card__v{color:var(--cw-dark);font-weight:600;}.rank-card__cta{display:block;background:var(--cw-red);color:#fff;text-align:center;padding:11px;border-radius:50px;font-size:0.78rem;font-weight:700;text-decoration:none;}.rank-card__cta:hover{background:#d42f3e;text-decoration:none;}.cause{padding:80px 0;}.cause__heading{text-align:center;margin-bottom:48px;}.cause__heading h2{font-size:1.5rem;font-weight:800;color:var(--cw-dark);}.cause__heading h2::before{display:none;}.cause__item{display:grid;grid-template-columns:320px 1fr;gap:48px;align-items:center;margin-bottom:60px;}.cause__item:nth-child(even){grid-template-columns:1fr 320px;}.cause__item:nth-child(even) .cause__img{order:2;}.cause__img img{border-radius:15px;width:320px;}.cause__label{display:block;font-size:0.75rem;font-weight:700;color:var(--cw-red);margin-bottom:8px;letter-spacing:1px;}.cause__label span{font-size:1.2rem;}.cause__title{font-size:1.25rem;font-weight:800;color:var(--cw-dark);line-height:1.45;margin-bottom:12px;}.cause__title .em{color:var(--cw-red);}.cause__text{font-size:0.88rem;color:var(--cw-sub);line-height:1.75;margin-bottom:16px;}.cause__link{font-size:0.82rem;color:var(--cw-dark);font-weight:600;display:inline-flex;align-items:center;gap:4px;}.cause__link::after{content:' →';}.cta-mid{padding:48px 0;text-align:center;}.cta-mid__btns{display:flex;justify-content:center;gap:16px;flex-wrap:wrap;}.detail{background:#fff;border:1px solid var(--cw-border);border-radius:15px;padding:36px;margin-top:0;}.detail__head{display:flex;align-items:center;gap:14px;margin-bottom:16px;}.detail__badge{background:var(--cw-red);color:#fff;font-size:0.75rem;font-weight:700;padding:5px 14px;border-radius:50px;}.detail__name{font-size:1.2rem;font-weight:800;color:var(--cw-dark);}.detail__list{list-style:none;margin:0 0 20px;padding:0;}.detail__list li{padding:6px 0 6px 24px;position:relative;font-size:0.88rem;color:var(--cw-sub);}.detail__list li::before{content:'✓';position:absolute;left:0;color:var(--cw-red);font-weight:700;}.info-box{background:#fff5f5;border-left:4px solid var(--cw-red);padding:20px 24px;border-radius:0 15px 15px 0;}.info-box strong{color:var(--cw-red);font-size:0.88rem;display:block;margin-bottom:4px;}.info-box p{font-size:0.82rem;color:var(--cw-sub);margin:0;}.faq{padding:80px 0;background:var(--cw-bg-alt);}.faq__heading{text-align:center;margin-bottom:40px;}.faq__heading h2{font-size:1.5rem;font-weight:800;color:var(--cw-dark);}.faq__heading h2::before{display:none;}.faq-list{max-width:740px;margin:0 auto;}.faq-item{background:#fff;border-radius:10px;margin-bottom:12px;padding:20px 24px;border:1px solid var(--cw-border);}.faq-q{font-weight:700;color:var(--cw-dark);font-size:0.92rem;display:flex;align-items:flex-start;gap:12px;}.faq-badge{background:var(--cw-red);color:#fff;font-size:0.65rem;font-weight:800;min-width:26px;height:26px;display:flex;align-items:center;justify-content:center;border-radius:6px;flex-shrink:0;}.faq-a{padding:10px 0 0 38px;font-size:0.82rem;color:var(--cw-sub);line-height:1.7;}.columns{padding:80px 0;}.columns__heading{text-align:center;margin-bottom:40px;}.columns__heading h2{font-size:1.5rem;font-weight:800;color:var(--cw-dark);}.columns__heading h2::before{display:none;}.col-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;}.col-card{background:#fff;border:1px solid var(--cw-border);border-radius:10px;padding:20px;display:block;color:var(--cw-dark);text-decoration:none;}.col-card:hover{box-shadow:0 4px 16px rgba(0,0,0,0.06);border-color:var(--cw-red);text-decoration:none;}.col-card__cat{font-size:0.62rem;color:var(--cw-red);font-weight:700;letter-spacing:1px;margin-bottom:6px;}.col-card__title{font-size:0.88rem;font-weight:600;line-height:1.5;}.footer{background:var(--cw-dark);color:#999;padding:48px 0 24px;font-size:0.78rem;}.footer a{color:#999;text-decoration:none;}.footer a:hover{color:#fff;text-decoration:none;}.footer__grid{display:flex;justify-content:space-between;flex-wrap:wrap;gap:32px;}.footer__brand{font-size:1rem;font-weight:700;color:#fff;margin-bottom:8px;}.footer__links{display:flex;gap:24px;flex-wrap:wrap;}.footer__copy{margin-top:32px;text-align:center;padding-top:20px;border-top:1px solid #2a3440;color:#666;}h2{font-size:1.3rem;color:var(--cw-dark);font-weight:700;margin:40px 0 14px;}h2::before{content:'';display:inline-block;width:4px;height:1em;background:var(--cw-red);margin-right:10px;vertical-align:middle;border-radius:2px;}h3{font-size:1.05rem;font-weight:600;margin:24px 0 10px;}p{margin-bottom:16px;}@media (max-width:1024px){.rank-grid{grid-template-columns:repeat(2,1fr);}.hero__grid{grid-template-columns:1fr 1fr;}}@media (max-width:768px){.header{height:56px;}.header__inner{height:56px;padding:0 12px;}.header__logo-text{font-size:0.92rem;}.header__nav a:not(.header__cta){display:none;}.header__cta{display:none !important;}.hero{padding:32px 0 24px;min-height:auto;}.hero__grid{grid-template-columns:1fr;}.hero__visual{order:-1;}.hero__visual img{max-width:280px;margin:0 auto;}.hero__title{font-size:1.75rem;}.hero__btns{max-width:100%;}.client__big{font-size:3rem;}.summary__grid{grid-template-columns:1fr;}.feature__list{grid-template-columns:repeat(2,1fr);}.rank-grid{grid-template-columns:1fr;max-width:360px;margin:0 auto;}.cause__item,.cause__item:nth-child(even){grid-template-columns:1fr;gap:20px;}.cause__item:nth-child(even) .cause__img{order:0;}.cause__img img{width:100%;max-width:280px;margin:0 auto;}.faq-list{max-width:100%;}.col-grid{grid-template-columns:1fr;}.section{padding:56px 0;}.footer__grid{flex-direction:column;}}@media (max-width:480px){.hero__title{font-size:1.4rem;}.feature__list{grid-template-columns:1fr;}.rank-grid{max-width:100%;}}.disclaimer-bar{background:#f0f7f3;text-align:center;padding:6px 16px;font-size:11px;color:#888;}

/* === SEO強化: section-summary === */
.section-summary {
  background: var(--cw-bg-alt, #f8f9fa);
  border-left: 4px solid var(--cw-red, #c41e3a);
  border-radius: 0 8px 8px 0;
  padding: 1rem 1.25rem;
  margin: 0.75rem 0 1.5rem;
}
.section-summary ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
.section-summary li {
  position: relative;
  padding: 0.35rem 0 0.35rem 1.5rem;
  font-size: 0.93rem;
  line-height: 1.7;
  color: var(--cw-text, #333);
}
.section-summary li::before {
  content: '▸';
  position: absolute;
  left: 0;
  color: var(--cw-red, #c41e3a);
  font-weight: 700;
}

/* === SEO強化: user-voices === */
.user-voices {
  max-width: var(--cw-max, 800px);
  margin: 2.5rem auto;
  padding: 2rem;
  background: #fff;
  border: 1px solid var(--cw-border, #e0e0e0);
  border-radius: 12px;
}
.user-voices h2 {
  font-size: 1.3rem;
  font-weight: 900;
  color: var(--cw-red, #c41e3a);
  margin-bottom: 1.25rem;
}
.voice-card {
  background: var(--cw-bg-alt, #fafafa);
  border: 1px solid var(--cw-border, #eee);
  border-radius: 10px;
  padding: 1rem 1.25rem;
  margin-bottom: 0.75rem;
}
.voice-meta {
  font-size: 0.82rem;
  color: var(--cw-red, #c41e3a);
  font-weight: 700;
  margin-bottom: 0.4rem;
}
.voice-card > p:last-child {
  margin: 0;
  line-height: 1.7;
}
.voice-note {
  font-size: 0.8rem;
  color: #999;
  margin-top: 12px;
}

/* === 中央寄せ: BODY直下の要素 === */
body > .point-box { max-width: 880px; margin-left: auto; margin-right: auto; padding-left: 20px; padding-right: 20px; }
body > .user-voices { margin-left: auto; margin-right: auto; }
body > .section { max-width: 880px; margin-left: auto; margin-right: auto; }

