/* ===== /wagamamaprivacy わがままプライバシーレース ===== */

#main .content-block,
#main .content-block * { box-sizing:border-box; }#main .content-block img { max-width:100%; height:auto; }#main h1:where(:not(.as-h2)) {
  clear:both;
  margin:018px 0 18px;
  padding:8px 15px 11px;
  color:#26313a;
  font-size:26px;
  line-height:1.4;
}#main h2,
#main h1.as-h2 {
  clear:both;
  margin:18px 0 18px;
  padding:0 0 10px;
  background:none;
  border:0;
  border-bottom:3px solid #227c78;
  border-radius:0;
  color:#26313a;
  font-size:23px;
  line-height:1.45;
}#main h3 {
  clear:both;
  margin:10px 0 10px;
  padding:0;
  background:none;
  border:0;
  color:#26313a;
  font-size:21px;
  line-height:1.5;
}#main h3::first-letter { border:0; padding-left:0; }/* HERO：標準テンプレートでは画像なし1カラム */
#main .content-block .hero-inner,
#main .content-block #privacy-hero {
  display:block !important;
  width:100% !important;
  max-width:100% !important;
  margin:0 0 42px !important;
  padding:28px 24px 32px !important;
  background:linear-gradient(140deg,#fff 0%,#edf7f5 62%,#f6edef 100%);
  border:1px solid #e3e8eb;
  border-radius:18px;
  float:none !important;
  clear:both !important;
}#main .content-block .hero-inner > div,
#main .content-block #privacy-hero > div {
  display:block !important;
  width:100% !important;
  max-width:100% !important;
  margin:0 !important;
  padding:0 !important;
  float:none !important;
}#main .content-block .hero-inner > br,
#main .content-block #privacy-hero > br,
#main .content-block .hero-points > br,
#main .content-block .cta-row > br {
  display:none !important;
}#main .content-block .eyebrow,
#main .content-block .privacy-eyebrow {
  display:inline-flex;
  align-items:center;
  margin:0 0 14px;
  padding:6px 12px;
  background:#fff;
  border:1px solid #d8e7e4;
  border-radius:999px;
  color:#17615e;
  font-size:13px;
  font-weight:800;
}#main .content-block .lead,
#main .content-block .privacy-lead {
  width:100% !important;
  max-width:100% !important;
  margin:0 0 20px !important;
  padding:0 !important;
  color:#4f5b63;
  font-size:18px;
  line-height:1.9;
}#main .content-block .hero-points,
#main .content-block .privacy-points {
  display:flex !important;
  flex-direction:row !important;
  flex-wrap:nowrap !important;
  gap:8px !important;
  width:100% !important;
  margin:20px 0 22px !important;
  padding:0 !important;
}#main .content-block .hero-points > div,
#main .content-block .privacy-points > div {
  flex:1 1 0 !important;
  min-width:0 !important;
  padding:12px 8px !important;
  background:#fff;
  border:1px solid #e3e8eb;
  border-radius:12px;
  text-align:center;
  font-size:13px;
  font-weight:800;
}#main .content-block .cta-row,
#main .content-block .privacy-cta {
  display:flex !important;
  flex-wrap:wrap !important;
  gap:10px !important;
  margin:0 !important;
}#main .content-block .btn,
#main .content-block .privacy-btn {
  display:inline-flex !important;
  align-items:center;
  justify-content:center;
  padding:13px 18px;
  border-radius:10px;
  font-weight:900;
}#main .content-block .btn.primary,
#main .content-block .privacy-btn.primary {
  background:#227c78;
  color:#fff;
}#main .content-block .btn.secondary,
#main .content-block .privacy-btn.secondary {
  background:#fff;
  border:1px solid #cdd8d8;
  color:#17615e;
}#main .content-block .kicker {
  margin:0 0 7px;
  color:#227c78;
  font-size:12px;
  font-weight:900;
  letter-spacing:.12em;
}#main .content-block .answer-box {
  padding:24px;
  background:#fff;
  border:1px solid #e3e8eb;
  border-radius:18px;
  box-shadow:0 14px 34px rgba(26,54,62,.09);
}#main .content-block .answer-grid {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
  margin:20px 0 0;
}#main .content-block .answer {
  padding:17px;
  background:#e9f4f2;
  border-radius:14px;
}#main .content-block .answer strong {
  display:block;
  margin:0 0 4px;
  color:#17615e;
  font-size:17px;
}#main .content-block .answer span {
  color:#58666e;
  font-size:14px;
}#main .content-block .caution {
  margin:20px 0 0;
  padding:17px 19px;
  background:#fff3ef;
  border:1px solid #efd5cd;
  border-left:5px solid #8f4d40;
  border-radius:0 14px 14px 0;
}#main .content-block .caution p {
  margin:5px 0 0 !important;
  padding:0 !important;
  color:#6b5954;
  font-size:14px;
}#main .content-block .proof-grid,
#main .content-block .fabric-grid {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:16px;
}#main .content-block .photo-card,
#main .content-block .fabric {
  overflow:hidden;
  background:#fff;
  border:1px solid #e3e8eb;
  border-radius:16px;
  box-shadow:0 14px 34px rgba(26,54,62,.07);
}#main .content-block .photo-card img,
#main .content-block .fabric img {
  width:100%;
  aspect-ratio:4/3;
  object-fit:cover;
}#main .content-block .photo-card .body,
#main .content-block .fabric .body { padding:16px; }#main .content-block .photo-card .label {
  color:#227c78;
  font-size:12px;
  font-weight:900;
}#main .content-block .photo-card p {
  margin:0 !important;
  padding:0 !important;
  color:#5f6b75;
  font-size:14px;
}#main .content-block .result {
  margin:18px 0 0;
  padding:18px;
  background:#eef8f6;
  border:1px solid #cfe7e2;
  border-radius:16px;
}#main .content-block .compare-wrap {
  overflow:auto;
  background:#fff;
  border:1px solid #e3e8eb;
  border-radius:16px;
}#main .content-block .compare-wrap table {
  width:100%;
  min-width:760px;
  border-collapse:collapse;
}#main .content-block .compare-wrap th,
#main .content-block .compare-wrap td {
  padding:13px 11px;
  border-right:1px solid #e3e8eb;
  border-bottom:1px solid #e3e8eb;
  text-align:center;
  font-size:14px;
}#main .content-block .compare-wrap th { background:#edf5f3; }#main .content-block .good { color:#17615e; font-weight:900; }#main .content-block .mid { color:#8a6a36; font-weight:900; }#main .content-block .bad { color:#9a5550; font-weight:900; }#main .content-block .feature-grid {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
}#main .content-block .feature {
  padding:20px;
  background:#fff;
  border:1px solid #e3e8eb;
  border-radius:16px;
}#main .content-block .feature .num {
  width:34px;
  height:34px;
  display:grid;
  place-items:center;
  margin:0 0 12px;
  background:#e9f4f2;
  border-radius:50%;
  color:#17615e;
  font-weight:900;
}#main .content-block .feature p {
  margin:0 !important;
  padding:0 !important;
  color:#5f6b75;
  font-size:14px;
}#main .content-block .video {
  position:relative;
  width:100%;
  padding-top:56.25%;
  overflow:hidden;
  background:#111;
  border-radius:18px;
}#main .content-block .video iframe {
  position:absolute;
  inset:0;
  width:100% !important;
  height:100% !important;
  border:0;
}#main .content-block .tags,
#main .content-block .sample-list {
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  margin:10px 0;
}#main .content-block .tag,
#main .content-block .sample-list span {
  padding:4px 9px;
  background:#f1f4f4;
  border-radius:999px;
  color:#546168;
  font-size:12px;
  font-weight:800;
}#main .content-block .voices {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
}#main .content-block .voice {
  overflow:hidden;
  background:#fff;
  border:1px solid #e3e8eb;
  border-radius:16px;
}#main .content-block .voice img {
  width:100%;
  aspect-ratio:4/3;
  object-fit:cover;
}#main .content-block .voice .body { padding:17px; }#main .content-block .voice .place {
  color:#227c78;
  font-size:12px;
  font-weight:900;
}#main .content-block .voice blockquote {
  margin:8px 0 0;
  color:#4d5a62;
  font-size:14px;
}#main .content-block .sample-box {
  display:grid;
  grid-template-columns:1fr auto;
  gap:18px;
  align-items:center;
  padding:24px;
  background:linear-gradient(135deg,#e8f5f2,#f9f1f2);
  border:1px solid #d7e5e2;
  border-radius:18px;
}#main .content-block .sample-box p {
  margin:5px 0 0 !important;
  padding:0 !important;
  color:#58666e;
}#main .content-block .price-row {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
}#main .content-block .price-card {
  padding:15px;
  background:#f8faf9;
  border:1px solid #e3e8eb;
  border-radius:13px;
  text-align:center;
}#main .content-block .faq {
  display:grid;
  gap:10px;
}#main .content-block .faq details {
  padding:15px 17px;
  background:#fff;
  border:1px solid #e3e8eb;
  border-radius:12px;
}#main .content-block .faq summary { cursor:pointer; font-weight:900; }#main .content-block .faq p {
  margin:12px 0 0 !important;
  padding:0 !important;
  color:#56636b;
  font-size:14px;
}#main .content-block .final-cta {
  padding:32px 24px;
  background:#263b3d;
  border-radius:20px;
  color:#fff;
  text-align:center;
}#main .content-block .final-cta h2,
#main .content-block .final-cta h1.as-h2 { color:#fff; border:0; }#main .content-block .final-cta p {
  margin:0 auto 20px !important;
  padding:0 !important;
  color:#d6e2e1;
}

@media screen and (max-width:787px) {#main .content-block .hero-inner,
#main .content-block #privacy-hero {
    width:94% !important;
    margin:0 auto 30px !important;
    padding:24px 16px 28px !important;
  }#main .content-block .lead,
#main .content-block .privacy-lead {
    font-size:16px !important;
    line-height:1.8 !important;
  }#main .content-block .hero-points,
#main .content-block .privacy-points,
#main .content-block .answer-grid,
#main .content-block .feature-grid,
#main .content-block .voices,
#main .content-block .price-row,
#main .content-block .proof-grid,
#main .content-block .fabric-grid,
#main .content-block .sample-box {
    display:block !important;
  }#main .content-block .hero-points > div,
#main .content-block .privacy-points > div,
#main .content-block .answer,
#main .content-block .feature,
#main .content-block .voice,
#main .content-block .photo-card,
#main .content-block .fabric,
#main .content-block .price-card {
    display:block !important;
    width:100% !important;
    max-width:100% !important;
    margin:0 0 12px !important;
    float:none !important;
  }#main .content-block .cta-row,
#main .content-block .privacy-cta {
    display:block !important;
  }#main .content-block .cta-row .btn,
#main .content-block .privacy-cta .privacy-btn {
    display:flex !important;
    width:100% !important;
    margin:0 0 9px !important;
  }
}
