@charset "utf-8";
@import 'bourbon';
@import url(https://fonts.googleapis.com/css?family=Roboto:400,500);

/* =========================
   合格者の声（VOICE）エリア
   ========================= */
.voice-section {
  padding: 60px 0;
  font-family: 'Noto Sans JP', sans-serif;
}

/* ▼ 全体のボックスデザイン */
.voice-box {
  background: #fff;
  border: 1px solid #eee;
  border-radius: 8px;
  box-shadow: 0 2px 4px rgba(0,0,0,0.08);
  overflow: hidden;
  position: relative;
}

/* =========================
   上部のピンク見出しエリア
   ========================= */
.voice-header {
  background: #fbdde5;          /* ピンク背景 */
  padding: 14px 20px;
  position: relative;
  display: flex;
  align-items: center;
  gap: 12px;
}

/* 吹き出しの下の三角部分 */
.voice-header::after {
  content: "";
  position: absolute;
  bottom: -12px;
  left: 60px;
  width: 20px;
  height: 12px;
  background: #fbdde5;
  clip-path: polygon(0 0, 100% 0, 50% 100%);
}

/* NEWタグ */
.voice-tag {
  background: #ed3868;
  color: #fff;
  font-weight: 700;
  font-size: 0.8rem;
  padding: 4px 10px;
  border-radius: 4px;
}

/* 見出しタイトル */
.voice-title {
  font-size: 1.2rem;
  font-weight: 700;
  color: #111;
  margin: 0;
}

/* =========================
   本文エリア
   ========================= */
.voice-body {
  padding: 25px 0;
}

/* 左側（プロフィール部分） */
.voice-profile {
  text-align: center;
  border-right: 1px solid #eee;
}
.voice-icon img {
  width: 120px;
  height: 120px;
  margin: 0 auto 10px;
  border-radius: 50%;
  background: #f5b6c6;         /* イラスト背景色 */
}
.voice-name {
  font-weight: 700;
  font-size: 1.1rem;
  margin-bottom: 4px;
}
.voice-info {
  color: #555;
  font-size: 0.9rem;
  margin-bottom: 8px;
}
.voice-label {
  display: inline-block;
  color: #ed3868;
  border: 1.5px solid #ed3868;
  padding: 4px 10px;
  border-radius: 20px;
  font-weight: 700;
  font-size: 0.85rem;
}

/* 右側（本文テキスト） */
.voice-text p {
  font-size: 0.95rem;
  line-height: 1.8;
  margin-bottom: 1em;
  padding-right: 28px;
  color: #222;
}

/* =========================
   RWD対応（スマホ）
   ========================= */
@media (max-width: 767px){
  /* ボックス全体を角丸に */
  .voice-box {
    border-radius: 6px;
  }

  /* ピンク見出し：縦方向レイアウト */
  .voice-header {
    flex-direction: column;
    align-items: flex-start;
    gap: 6px;
    padding: 12px 15px;
  }
  .voice-header::after {
    left: 30px;  /* 三角形位置を調整 */
  }
  .voice-title {
    font-size: 1rem;
    line-height: 1.4;
  }

  /* コンテンツ全体の余白 */
  .voice-body {
    padding: 20px;
  }

  /* プロフィールを上に、本文を下に */
  .voice-profile {
    border-right: none;
    border-bottom: 1px solid #eee;
    padding-bottom: 15px;
    margin-bottom: 15px;
  }
  .voice-icon img {
    width: 90px;
    height: 90px;
  }
  .voice-name { font-size: 1rem; }
  .voice-info { font-size: 0.85rem; }
  .voice-label { font-size: 0.8rem; }

  /* テキストの行間を少し狭く */
  .voice-text p {
    font-size: 0.9rem;
    line-height: 1.7;
    padding-right: 6px;
  }
}
/* =========================
   タグナビゲーションエリア
   ========================= */
.voice-tags {
  margin: 40px auto 60px;
}
.voice-tags ul {
  list-style: none;
  margin: 0;
  padding: 0;
  display: inline-flex;
  flex-wrap: wrap;
  gap: 10px;
}
.voice-tags li {
  display: inline-block;
}
.voice-tags a {
  display: inline-block;
  background: #f5f5f5;
  color: #555;
  border-radius: 25px;
  padding: 8px 18px;
  text-decoration: none;
  font-weight: 600;
  border: 1px solid #ddd;
  transition: all .2s ease;
}
.voice-tags a:hover {
  background: #e44e8d;
  color: #fff;
  border-color: #e44e8d;
}
.voice-tags a.active {
  background: #e44e8d;
  color: #fff;
  border-color: #e44e8d;
}

/* スマホ対応 */
@media (max-width: 767px){
  .voice-tags ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 8px;
  }
  .voice-tags a {
    font-size: 0.85rem;
    padding: 6px 12px;
  }
}