/* ==========================================================
   オンラインオリパ YES/NO診断チャート
   ========================================================== */

.oripa-chart {
  max-width: 720px;
  margin: 30px auto;
  padding: 28px;
  border-radius: 18px;
  background: #f0f6ff;
  border: 2px solid #bfd7ff;
  box-shadow: 0 4px 14px rgba(0, 0, 0, 0.08);
  text-align: center;
}

.oripa-chart h2 {
  font-size: 1.6em;
  color: #fff;
  background: #1176d4;
  margin: -28px -28px 24px -28px !important;
  padding: 24px 20px 20px !important;
  border-radius: 16px 16px 0 0;
}

.oripa-chart .lead {
  margin-bottom: 24px;
  font-weight: bold;
  color: #555;
}

.oripa-chart-main-image {
  display: block;
  max-width: 100%;
  height: auto;
  border-radius: 14px;
  margin: 0 auto 24px;
}

.oripa-chart .question-title {
  font-size: 1.25em;
  font-weight: bold;
  margin-bottom: 22px;
  color: #333;
}

.oripa-chart .answer-buttons {
  display: flex;
  gap: 16px;
  justify-content: center;
  flex-wrap: wrap;
}

.oripa-chart .answer-buttons button,
.oripa-chart .restart-btn,
.oripa-chart .result-link {
  padding: 13px 26px;
  border-radius: 999px;
  border: none;
  font-weight: bold;
  cursor: pointer;
  text-decoration: none;
  display: inline-block;
}

.oripa-chart .answer-buttons button {
  background: #4d8dff;
  color: #fff;
  transition: background-color 0.2s ease;
}

.oripa-chart .answer-buttons button:hover {
  background: #2f6fed;
}

.oripa-chart .start-btn {
  background: #2f6fed;
  color: #fff;
  font-size: 1.05em;
  padding: 14px 36px;
  transition: background-color 0.2s ease;
}

.oripa-chart .start-btn:hover {
  background: #1f52c9;
}

.oripa-chart .result-card {
  background: #fff;
  padding: 26px;
  border-radius: 16px;
  border: 2px solid #bfd7ff;
}

.oripa-chart .result-type {
  font-size: 1.5em;
  font-weight: bold;
  color: #2f6fed;
  margin-bottom: 12px;
}

.oripa-chart .result-service {
  display: inline-block;
  font-size: 1.25em;
  font-weight: bold;
  margin-bottom: 14px;
  background: linear-gradient(transparent 55%, #fff29b 55%);
}

.oripa-chart .result-text {
  line-height: 1.8;
  color: #444;
  margin-bottom: 22px;
}

.oripa-chart .result-points {
  text-align: left;
  background: #fffbe6;
  border: 1px solid #ffe58f;
  border-radius: 12px;
  padding: 14px 18px;
  margin-bottom: 22px;
}

.oripa-chart .result-points-title {
  font-weight: bold;
  color: #333;
  margin: 0 0 8px;
  font-size: 0.95em;
}

.oripa-chart .result-points ul {
  margin: 0;
  padding-left: 1.2em;
  list-style: disc;
  color: #444;
  line-height: 1.8;
}

.oripa-chart .result-link {
  background: #62d847;
  color: #fff;
  margin-bottom: 12px;
  transition: background-color 0.2s ease;
}

.oripa-chart .result-link:hover {
  background: #4bbf30;
  color: #fff;
}

.oripa-chart .restart-btn {
  background: #eee;
  color: #555;
  margin-top: 10px;
  transition: background-color 0.2s ease;
}

.oripa-chart .restart-btn:hover {
  background: #ddd;
}