@charset "UTF-8";
/**
 *
 * マイページ
 * /m_xxxxx/ページ
 * 
**/
#main.mypage_main {
  padding: 0 0 0 24px;
  width: 75%;
  order: 5;
}

#side.mypage_side {
  width: 25%;
  max-width: none;
  order: 0;
}

@media (max-width: 767.98px) {
  #main.mypage_main {
    width: 100%;
    padding: 16px 0 0;
    order: 0;
  }
  #side.mypage_side {
    width: 100%;
    padding: 0 0 16px;
    margin: 16px 0 0;
    order: 1;
  }
}
/**
 * .mypage_wrap
 * /m_xxxxx/ページ マイページのラッパー
**/
.mypage_wrap {
  display: flex;
  flex-flow: row wrap;
  justify-content: center;
  align-content: flex-start;
  align-item: flex-start;
  border: solid 1px #e7e6e6;
  background-color: #fff;
  padding: 28px;
  margin: 0 0 28px 0;
}

.mypage_wrap.history_wrap {
  background: rgba(0, 0, 0, 0.03);
  border: none;
  border-radius: 16px;
}

.mypage_wrap.history_wrap .search_result_wrap {
  width: 100%;
}

.mypage_wrap.history_wrap .grade_parts .grade_parts_score {
  padding-right: 0;
}

@media (max-width: 767.98px) {
  .mypage_wrap {
    background-color: unset;
    border: none;
    box-shadow: none;
    font-size: 14px;
    padding: 0;
  }
  .mypage_wrap.history_wrap {
    padding: 0;
  }
}

/**
 * .mypage_wrap
 * /m_xxxxx/ページ マイページ タイトル
**/
.mypage_title {
  display: flex;
  align-items: center;
  font-size: 28px;
  font-weight: 700;
  line-height: 1;
  margin: 0 0 25px;
}

@media (max-width: 767.98px) {
  .mypage_title {
    font-size: 16px;
    line-height: 1.5;
    padding: 0 3%;
    margin: 0 0 8px;
  }
}

/**
 * .mypage_reserve_table
 * /m_xxxxx/ページ 予約履歴
**/
.mypage_reserve_table {
  width: 100%;
  font-size: 16px;
  border-collapse: collapse;
  background: #fff;
}
.mypage_reserve_table tr:first-child {
  background: var(--site-c-gray);
  color: #fff;
}
@media (max-width: 767.98px) {
  .mypage_reserve_table {
    display: block;
    background: transparent;
    font-size: 14px;
  }
  .mypage_reserve_table thead,
  .mypage_reserve_table tbody,
  .mypage_reserve_table tfoot {
    display: block;
  }
  .mypage_reserve_table tr {
    display: block;
    background: #fff;
  }
  .mypage_reserve_table *+tr {
    margin-top: 20px;
  }
  .mypage_reserve_table tr:first-child {
    display: none;
  }
  .mypage_reserve_table tr:first-child+tr {
    margin-top: 0;
  }
}

.mypage_reserve_table tr th {
  border: solid 1px rgba(255, 255, 255, 0.18);
  font-size: 13px;
  font-weight: 700;
  font-feature-settings: "palt";
  text-align: center;
  vertical-align: middle;
  padding: 12px 8px;
  min-width: 30px;
}
.mypage_reserve_table tr td {
  border: solid 1px var(--site-border-c);
  font-size: 13px;
  font-weight: 500;
  font-feature-settings: "palt";
  text-align: left;
  vertical-align: middle;
  padding: 8px;
}
.mypage_reserve_table tr .mypage_reserve_table__title {
  text-align: left;
  width: 18em;
}
.mypage_reserve_table tr .mypage_reserve_table__info {
  text-align: left;
  width: auto;
}
.mypage_reserve_table tr .mypage_reserve_table__edit {
  text-align: center;
  width: 128px;
}
@media (max-width: 767.98px) {
  .mypage_reserve_table tr th,
  .mypage_reserve_table tr td {
    display: block;
  }
  .mypage_reserve_table tr *+th,
  .mypage_reserve_table tr *+td {
    margin-top: -1px;
  }
  .mypage_reserve_table tr [data-sp-th]::before {
    content: attr(data-sp-th);
    display: block;
    background: var(--site-c-black);
    color: #fff;
    font-weight: 700;
    font-size: 13px;
    line-height: 1.4;
    margin: 0 0 4px;
    padding: 4px;
  }
  .mypage_reserve_table tr .mypage_reserve_table__title {
    width: auto;
  }
  .mypage_reserve_table tr .mypage_reserve_table__info {
    width: auto;
  }
  .mypage_reserve_table tr .mypage_reserve_table__edit {
    width: auto;
  }
}


.mypage_reserve_table__name {
  display: flex;
  flex-flow: row wrap;
  justify-content: flex-start;
  align-content: center;
  align-items: center;
  font-weight: 700;
  font-size: 14px;
  line-height: 1.4;
  font-feature-settings: "palt";
  letter-spacing: 0.1ex;
  gap: 4px 1ex;
}
.mypage_reserve_table__name>span {
  display: block;
}
.mypage_reserve_table__name>address {
  display: inline-block;
  color: var(--site-c-gray);
  font-weight: 500;
  font-size: 12px;
}
@media (max-width: 767.98px) {
  .mypage_reserve_table__name>address {
    font-size: 10px;
    letter-spacing: 0.2ex;
  }
}

.mypage_reserve_table__memo {
  border-radius: 4px;
  border: solid 1px var(--site-border-c);
  color: var(--font-c);
  font-size: 12px;
  line-height: 1.4;
  padding: 8px 12px;
}
*+.mypage_reserve_table__memo {
  margin-top: 8px;
}
.mypage_reserve_table__memo a {
  color: var(--font-c-link);
  font-size: 13px;
}
.mypage_reserve_table .btn {
  font-size: 13px;
  height: 36px;
  padding: 0 8px;
}


/**
 * .mypage_kuchikomi_table
 * /m_xxxxx/ページ 予約履歴
**/
.mypage_kuchikomi_table {
  width: 100%;
  font-size: 16px;
  border-collapse: collapse;
  background: #fff;
}
.mypage_kuchikomi_table tr:first-child {
  background: var(--site-c-gray);
  color: #fff;
}
@media (max-width: 767.98px) {
  .mypage_kuchikomi_table {
    display: block;
    background: transparent;
    font-size: 14px;
  }
  .mypage_kuchikomi_table thead,
  .mypage_kuchikomi_table tbody,
  .mypage_kuchikomi_table tfoot {
    display: block;
  }
  .mypage_kuchikomi_table tr {
    display: block;
    background: #fff;
  }
  .mypage_kuchikomi_table *+tr {
    margin-top: 20px;
  }
  .mypage_kuchikomi_table tr:first-child {
    display: none;
  }
  .mypage_kuchikomi_table tr:first-child+tr {
    margin-top: 0;
  }
}

.mypage_kuchikomi_table tr th {
  border: solid 1px rgba(255, 255, 255, 0.18);
  font-size: 13px;
  font-weight: 700;
  font-feature-settings: "palt";
  text-align: center;
  vertical-align: middle;
  padding: 12px 8px;
  min-width: 30px;
}
.mypage_kuchikomi_table tr td {
  border: solid 1px var(--site-border-c);
  font-size: 13px;
  font-weight: 500;
  font-feature-settings: "palt";
  text-align: left;
  vertical-align: middle;
  padding: 8px;
}
.mypage_kuchikomi_table tr .mypage_kuchikomi_table__title {
  text-align: left;
  width: 18em;
}
.mypage_kuchikomi_table tr .mypage_kuchikomi_table__desc {
  text-align: left;
  width: auto;
}
.mypage_kuchikomi_table tr .mypage_kuchikomi_table__date {
  text-align: center;
  width: 128px;
}
.mypage_kuchikomi_table tr .mypage_kuchikomi_table__eval {
  text-align: center;
  width: 72px;
}
.mypage_kuchikomi_table tr .mypage_kuchikomi_table__edit {
  text-align: center;
  width: 72px;
}
@media (max-width: 767.98px) {
  .mypage_kuchikomi_table tr th,
  .mypage_kuchikomi_table tr td {
    display: block;
  }
  .mypage_kuchikomi_table tr *+th,
  .mypage_kuchikomi_table tr *+td {
    margin-top: -1px;
  }
  .mypage_kuchikomi_table tr [data-sp-th]::before {
    content: attr(data-sp-th);
    display: block;
    background: var(--site-c-black);
    color: #fff;
    font-weight: 700;
    font-size: 13px;
    line-height: 1.4;
    margin: 0 0 4px;
    padding: 4px;
  }
  .mypage_kuchikomi_table tr .mypage_kuchikomi_table__title {
    width: auto;
  }
  .mypage_kuchikomi_table tr .mypage_kuchikomi_table__desc {
    width: auto;
  }
  .mypage_kuchikomi_table tr .mypage_kuchikomi_table__date {
    width: auto;
  }
  .mypage_kuchikomi_table tr .mypage_kuchikomi_table__eval {
    width: auto;
  }
  .mypage_kuchikomi_table tr .mypage_kuchikomi_table__edit {
    width: auto;
  }
}

.mypage_kuchikomi_table__name {
  display: flex;
  flex-flow: row wrap;
  justify-content: flex-start;
  align-content: center;
  align-items: center;
  font-weight: 700;
  font-size: 14px;
  line-height: 1.4;
  font-feature-settings: "palt";
  letter-spacing: 0.1ex;
  gap: 4px 1ex;
}
.mypage_kuchikomi_table__name>span {
  display: block;
}


/**
 * .mypage_wrap .paging
 * /m_xxxxx/ページ ページャー
**/
.mypage_wrap .paging {
  color: rgba(0, 0, 0, 0.56);
  font-size: 12px;
  font-weight: 500;
  margin-top: 16px;
}

/**
* .mypage_side_head
* /m_xxxxx/ページ サイドナビ タイトル
**/
.mypage_side_head {
  background: #fff;
  text-align: center;
  padding: 16px;
}

.mypage_side_head > span:first-child {
  color: var(--font-c);
  font-size: 16px;
  font-weight: 700;
  line-height: 16px;
  margin-left: 5px;
}

.mypage_side_head > span {
  font-size: 12px;
  font-weight: 400;
  line-height: 16px;
}

.mypage_side_head > span > a {
  padding: 0 2px;
  color: var(--site-c-sub);
  text-decoration: underline;
}

@media (max-width: 767.98px) {
  .mypage_side_head {
    margin-left: -16px;
    margin-right: -16px;
  }
}
/**
* .mypage_side_list
* /m_xxxxx/ページ サイドナビ メニュー
**/
.mypage_side_list {
  margin-bottom: 28px;
}

.mypage_side_list > li {
  margin: 0;
  font-size: 13px;
  font-weight: 500;
  letter-spacing: 0.1ex;
}

@media (max-width: 767.98px) {
  .mypage_side_list {
    margin-left: -16px;
    margin-right: -16px;
  }
}
.mypage_side_list > li > a {
  display: block;
  padding: 12px 20px;
  background: #fff;
  position: relative;
}

.mypage_side_list > li + li > a {
  border-top: 1px solid var(--site-border-c);
}

.mypage_side_list > li > a::after {
  content: "";
  margin-top: -4px;
  top: 50%;
  right: 20px;
  width: 8px;
  height: 8px;
  position: absolute;
  border-top: 1px solid var(--site-border-c);
  border-right: 1px solid var(--site-border-c);
  transform: rotate(45deg);
}

.mypage_side_list > li > .active {
  background: var(--site-c-gray);
  color: #fff;
}

.mypage_side_list > li + li > .active {
  border-top: none;
}