@charset "UTF-8";
/* ブレイクポイント
   ========================================================================== */
/* フォント
   ========================================================================== */
/* 色
   ========================================================================== */
/* レビューに関するスタイル設定
   ========================================================================== */
/* 絞り込み
   ====================================== */
.review-filter__block {
  display: flex;
  flex-direction: column;
  align-items: center; }
.review-filter__select {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 1em;
  margin-bottom: 20px; }
  .review-filter__select select {
    flex: 0 0 calc(50% - 0.5em);
    display: inline-block;
    padding: 0 1em 0 .5em;
    outline: none;
    cursor: pointer; }
    .review-filter__select select option {
      font-size: 1.2rem; }
.review-filter__btn {
  display: flex;
  gap: 20px; }
  .review-filter__btn button,
  .review-filter__btn a {
    line-height: 1;
    padding: .5em 1em;
    transition: .3s; }
    @media (hover: hover) {
      .review-filter__btn button:hover,
      .review-filter__btn a:hover {
        opacity: .6; } }
  .review-filter__btn button {
    background-color: #000;
    color: #fff;
    border: 1px solid #000;
    appearance: none;
    outline: none;
    box-shadow: none;
    cursor: pointer; }
  .review-filter__btn a {
    display: inline-block;
    background-color: #f4f4f4;
    border: 1px solid #ccc; }
@media (min-width: 768px) {
  .review-filter__block {
    align-items: center; }
  .review-filter__select {
    flex-wrap: nowrap;
    margin: 0 20px 0 0; }
    .review-filter__select select {
      flex: 1 1 auto;
      padding: 0 1em; }
      .review-filter__select select option {
        font-size: 1.6rem; }
  .review-filter__btn {
    margin-top: 20px; } }
@media (min-width: 1025px) {
  .review-filter__block {
    flex-direction: row;
    justify-content: flex-start;
    align-items: center; }
  .review-filter__select {
    margin: 0 40px 0 0; }
    .review-filter__select select {
      padding: 0 1em; }
      .review-filter__select select option {
        font-size: 1.8rem; }
  .review-filter__btn {
    margin-top: 0; } }

/* レビュー一覧
   ====================================== */
.review-list {
  margin-top: 40px; }
  .review-list .review-item {
    padding: 20px;
    margin-top: 20px;
    border: 1px solid #ccc; }
    .review-list .review-item.review-coach {
      border: 2px solid;
      border-image: linear-gradient(to right, #a8ce29, #cddc09) 1; }
    .review-list .review-item .review-meta {
      display: flex;
      flex-direction: column; }
    .review-list .review-item .profile__ttl {
      font-weight: bold;
      display: flex;
      margin-bottom: 20px; }
      .review-list .review-item .profile__ttl figure {
        margin-right: 20px; }
        .review-list .review-item .profile__ttl figure img {
          width: 60px; }
      .review-list .review-item .profile__ttl div {
        flex: 1; }
        .review-list .review-item .profile__ttl div > span {
          display: flex;
          align-items: center; }
    .review-list .review-item .profile__tag {
      background: linear-gradient(to right, #a8ce29, #cddc09);
      color: #fff;
      font-size: 1.2rem;
      font-weight: bold;
      padding: .1em .5em;
      margin-left: 10px; }
    .review-list .review-item .feedback {
      margin-top: 1em; }
      .review-list .review-item .feedback .review-meta {
        margin-top: 1em; }
      .review-list .review-item .feedback__comment {
        margin-top: 1em; }
  @media (min-width: 768px) {
    .review-list {
      margin-top: 0; }
      .review-list .review-item {
        display: flex;
        padding: 30px;
        margin-top: 30px; }
        .review-list .review-item.review-coach {
          border-width: 3px; }
        .review-list .review-item figure {
          margin-right: 30px; }
          .review-list .review-item figure img {
            width: 160px; }
        .review-list .review-item__conts {
          flex: 1; }
        .review-list .review-item .review-meta {
          flex-direction: row;
          gap: 2em; }
          .review-list .review-item .review-meta.first {
            margin-top: 0; }
        .review-list .review-item .profile__ttl {
          display: block;
          margin-bottom: 0; }
          .review-list .review-item .profile__ttl figure {
            display: none; }
          .review-list .review-item .profile__ttl div {
            display: flex; }
        .review-list .review-item .profile__tag {
          font-size: 1.4rem;
          padding: .025em .5em;
          margin: 0 10px; } }
  @media (min-width: 1025px) {
    .review-list .review-item {
      padding: 40px;
      margin-top: 40px; }
      .review-list .review-item figure {
        margin-right: 40px; } }

.star-rating .star.filled {
  color: #b39733; }
.star-rating .star.empty {
  color: #ccc; }

/* レビューが無い場合
   ====================================== */
.review-none {
  margin-top: 2em; }
