@charset "UTF-8";
.trainer {
  position: relative;
  width: 100%;
  height: 100%;
}
.trainer__top {
  position: relative;
}
.trainer__top--bg {
  min-height: 208px;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: right;
     object-position: right;
}
@media (max-width: 767px) {
  .trainer__top--bg {
    min-height: 100%;
  }
}
.trainer__title {
  font-size: 26px;
  font-weight: bold;
  line-height: 1.462;
  color: white;
}
.trainer__title > span {
  word-break: keep-all;
}
@media (max-width: 767px) {
  .trainer__title {
    font-size: 24px;
    line-height: 1.5;
  }
}
.trainer__mv {
  position: absolute;
  top: 50%;
  width: 100%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
@media (max-width: 767px) {
  .trainer__mv {
    top: 50%;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
  }
}
.trainer__mv--contents {
  width: calc(100% - 60px);
  max-width: 1160px;
  height: 100%;
  padding: 32px 0px 41px;
  margin: auto;
}
@media (max-width: 767px) {
  .trainer__mv--contents {
    width: calc(100% - 32px);
    padding: 0px;
  }
}
.trainer__contents {
  width: calc(100% - 60px);
  max-width: 1160px;
  margin: auto;
}
@media (max-width: 767px) {
  .trainer__contents {
    width: 100%;
  }
}
.trainer__introduce {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin: 64px 0;
}
@media (max-width: 767px) {
  .trainer__introduce {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    padding: 0px 16px;
    margin: 40px 0;
  }
}
.trainer__introduce--imgarea {
  position: relative;
}
.trainer__introduce--imgarea:after {
  position: absolute;
  top: 8px;
  left: 4px;
  width: 79px;
  content: "";
  background: url("/images/personal_training/logo_personal.png") no-repeat 0 0/contain;
}
@media (min-width: 768px) {
  .trainer__introduce--imgarea:after {
    height: 52px;
  }
}
@media (max-width: 767px) {
  .trainer__introduce--imgarea:after {
    top: 2%;
    left: 2.35%;
    width: 21%;
    aspect-ratio: 3/2;
  }
}
.trainer__introduce--img {
  aspect-ratio: 3/4;
  border-radius: 10px;
  -o-object-fit: cover;
     object-fit: cover;
}
@media (min-width: 768px) {
  .trainer__introduce--img {
    width: 345px;
  }
}
@media (max-width: 767px) {
  .trainer__introduce--img {
    width: 100%;
  }
}
@media (min-width: 768px) {
  .trainer__introduce--text {
    width: calc(100% - 345px);
    padding-left: 40px;
  }
}
.trainer__introduce--text-jobTitle {
  font-size: 14px;
  color: #545f6d;
}
@media (max-width: 767px) {
  .trainer__introduce--text-jobTitle {
    margin-top: 14px;
  }
}
.trainer__introduce--text-name {
  font-size: 24px;
  font-weight: bold;
  line-height: 1.5;
  color: #333;
}
@media (max-width: 767px) {
  .trainer__introduce--text-name {
    font-size: 22px;
  }
}
.trainer__introduce--text-kana {
  font-size: 12px;
  font-weight: 500;
}
.trainer__introduce--text-description {
  margin-top: 20px;
  margin-bottom: 24px;
  font-size: 14px;
  line-height: 1.714;
  color: #333;
  white-space: pre-wrap;
}
@media (max-width: 767px) {
  .trainer__introduce--text-description {
    margin-top: 16px;
  }
}
.trainer__introduce--btnarea {
  max-width: 776px;
  margin-right: auto;
  margin-left: auto;
}
@media (min-width: 992px) {
  .trainer__introduce--btnarea {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}
@media (max-width: 767px) {
  .trainer__introduce--btnarea {
    max-width: 386px;
  }
}
.trainer__introduce--btnarea-center {
  max-width: 760px;
  margin-right: auto;
  margin-left: auto;
}
@media (min-width: 768px) {
  .trainer__introduce--btnarea-center {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}
@media (max-width: 767px) {
  .trainer__introduce--btnarea-center {
    max-width: 386px;
  }
}
.trainer__introduce--btn {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 100%;
  max-width: 640px;
  height: 51px;
  padding-bottom: 2px;
  margin-right: auto;
  margin-left: auto;
  font-size: 1.8rem;
  font-weight: 700;
  color: #fff;
  border-radius: 58px;
  background: #fe6f6b;
  background: -webkit-gradient(linear, left top, right top, from(#fe6f6b), to(#ff3833));
  background: linear-gradient(to right, #fe6f6b 0%, #ff3833 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr="$start-color", endColorstr="$end-color",GradientType=1 );
}
@media (max-width: 991px) {
  .trainer__introduce--btn {
    font-size: 1.6rem;
  }
}
@media (max-width: 767px) {
  .trainer__introduce--btn {
    height: 48px;
  }
}
.trainer__introduce--btn:after {
  position: absolute;
  top: 0;
  right: 18px;
  bottom: 0;
  width: 6px;
  height: 10px;
  margin: auto 0;
  content: "";
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%227.001%22%20height%3D%2212%22%20viewBox%3D%220%200%207.001%2012%22%3E%20%3Cpath%20id%3D%22%E3%83%91%E3%82%B9_648%22%20data-name%3D%22%E3%83%91%E3%82%B9%20648%22%20d%3D%22M2%2C0a1%2C1%2C0%2C0%2C1-.707-.293l-5-5a1%2C1%2C0%2C0%2C1%2C0-1.414l5-5a1%2C1%2C0%2C0%2C1%2C1.414%2C0%2C1%2C1%2C0%2C0%2C1%2C0%2C1.414L-1.586-6%2C2.708-1.706a1%2C1%2C0%2C0%2C1%2C0%2C1.414A1%2C1%2C0%2C0%2C1%2C2%2C0Z%22%20transform%3D%22translate(3.001)%20rotate(180)%22%20fill%3D%22%23fff%22%2F%3E%3C%2Fsvg%3E");
  background-repeat: no-repeat;
  background-size: contain;
}
.trainer__review {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-top: 4px;
}
@media (max-width: 767px) {
  .trainer__review {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 8px;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    margin-top: 8px;
  }
}
.trainer__review--row {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.trainer__review--number {
  font-size: 18px;
  font-style: normal;
  font-weight: 700;
  line-height: 100%;
}
.trainer__review--star {
  width: 84px;
  -o-object-fit: contain;
     object-fit: contain;
  margin: 0 4px;
}
.trainer__review--link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 12px;
  font-style: normal;
  font-weight: 400;
  line-height: 100%;
  color: #3FA8EF;
}
.trainer__review--link-count {
  font-size: 14px;
  font-style: normal;
  font-weight: 500;
  line-height: 100%; /* 14px */
  color: #3FA8EF;
  text-decoration-line: underline;
  text-decoration-thickness: auto;
  text-decoration-style: solid;
  text-underline-position: from-font;
  text-underline-offset: auto;
  -webkit-text-decoration-skip: ink;
          text-decoration-skip-ink: auto;
}
.trainer__review--text {
  margin-left: 10px;
  font-size: 12px;
  line-height: 150%;
  color: #545f6d;
}
@media (max-width: 767px) {
  .trainer__review--text {
    margin-left: 0;
  }
}
@media (max-width: 767px) {
  .trainer__appeal {
    padding: 0px 16px;
  }
}
.trainer__appeal--contents {
  width: 50%;
  max-width: 560px;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
}
@media (max-width: 767px) {
  .trainer__appeal--contents {
    width: 100%;
    max-width: 100%;
  }
}
.trainer__appeal--youtube iframe {
  width: 100%;
  height: 100%;
  aspect-ratio: 16/9;
  margin-top: 48px;
  border-radius: 5px;
}
@media (max-width: 767px) {
  .trainer__appeal--youtube iframe {
    margin-top: 33px;
  }
}
.trainer__appeal--top {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 64px;
}
@media (max-width: 767px) {
  .trainer__appeal--top {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    margin-bottom: 40px;
  }
}
.trainer__appeal--teaching {
  margin-left: 40px;
}
@media (max-width: 767px) {
  .trainer__appeal--teaching {
    margin-top: 24px;
    margin-left: 0px;
  }
}
.trainer__appeal--teaching-title {
  margin-bottom: 8px;
  font-size: 18px;
  font-weight: bold;
  line-height: 1.45;
}
@media (max-width: 767px) {
  .trainer__appeal--teaching-title {
    font-size: 18px;
    line-height: 1.5;
  }
}
.trainer__appeal--teaching-content {
  font-size: 16px;
  line-height: 1.75;
  white-space: pre-wrap;
}
@media (max-width: 767px) {
  .trainer__appeal--teaching-content {
    font-size: 14px;
  }
}
.trainer__appeal--message {
  margin-bottom: 40px;
}
.trainer__profile--wrapper {
  padding-top: 64px;
}
@media (max-width: 767px) {
  .trainer__profile--wrapper {
    padding: 40px 16px 0;
    margin-top: 40px;
  }
}
.trainer__profile--title {
  margin-bottom: 16px;
  font-size: 20px;
  font-weight: bold;
  line-height: 1.45;
}
@media (max-width: 767px) {
  .trainer__profile--title {
    font-size: 18px;
    line-height: 1.5;
  }
}
.trainer__profile--subTitle {
  margin-bottom: 8px;
  font-size: 18px;
  font-weight: bold;
  line-height: 1.75;
}
.trainer__profile--text {
  font-size: 16px;
  line-height: 1.75;
  white-space: pre-line;
}
@media (max-width: 767px) {
  .trainer__profile--text {
    font-size: 14px;
  }
}
.trainer__profile--text:not(:last-child) {
  margin-bottom: 40px;
}
.trainer__profile--history, .trainer__profile--col {
  width: 50%;
}
@media (max-width: 767px) {
  .trainer__profile--history, .trainer__profile--col {
    width: 100%;
  }
}
.trainer__profile--col {
  padding-left: 20px;
}
@media (max-width: 767px) {
  .trainer__profile--col {
    padding-top: 20px;
    padding-left: 0px;
    border-top: 1px solid #cccccc;
  }
}
.trainer__profile--history {
  padding-right: 20px;
  border-right: 1px solid #cccccc;
}
@media (max-width: 767px) {
  .trainer__profile--history {
    padding-right: 0px;
    margin-bottom: 20px;
    border-right: none;
  }
}
.trainer__profile--hobby {
  margin-top: 20px;
}
.trainer__notice {
  padding: 40px;
  margin-top: 64px;
  background-color: #eeeeee;
  border-radius: 5px;
}
@media (max-width: 767px) {
  .trainer__notice {
    padding: 20px;
    margin-top: 40px;
  }
}
.trainer__notice--wrapper {
  width: calc(100% - 60px);
  max-width: 1160px;
  margin: auto;
}
@media (max-width: 767px) {
  .trainer__notice--wrapper {
    width: 100%;
    padding: 0px 16px;
  }
}
.trainer__notice--title {
  margin-bottom: 15px;
  font-size: 20px;
  font-weight: bold;
  line-height: 1.25;
}
@media (max-width: 767px) {
  .trainer__notice--title {
    font-size: 18px;
    line-height: 1.389;
  }
}
.trainer__notice--text {
  font-size: 16px;
  line-height: 1.75;
  white-space: pre-line;
}
@media (max-width: 767px) {
  .trainer__notice--text {
    font-size: 14px;
  }
}
.trainer__schedule {
  width: 100%;
  margin-bottom: 40px;
  table-layout: fixed;
}
@media (max-width: 767px) {
  .trainer__schedule {
    margin-bottom: 20px;
  }
}
.trainer__schedule tr {
  height: 32px;
}
.trainer__schedule th {
  font-weight: bold;
}
.trainer__schedule td {
  padding: 0px 5px;
  font-weight: 400;
}
.trainer__schedule th, .trainer__schedule td {
  font-size: 14px;
  text-align: center;
  vertical-align: middle;
  border: 1px solid #eeeeee;
}
@media (max-width: 767px) {
  .trainer__schedule th, .trainer__schedule td {
    font-size: 12px;
  }
}
.trainer__schedule th:first-of-type, .trainer__schedule td:first-of-type {
  border-left: none;
}
.trainer__schedule th:last-of-type, .trainer__schedule td:last-of-type {
  border-right: none;
}
@media (max-width: 767px) {
  .trainer__schedule {
    padding: 0px 16px 16px;
    border-top: none;
  }
}
.trainer__schedule--wrapper {
  width: calc(100% - 60px);
  max-width: 1160px;
  margin: 64px auto 0px;
}
@media (max-width: 767px) {
  .trainer__schedule--wrapper {
    width: 100%;
    padding: 0px 16px;
    margin-top: 40px;
  }
}
.trainer__schedule--title {
  margin-bottom: 8px;
  font-size: 14px;
  font-weight: bold;
  line-height: 1.75;
}
@media (max-width: 767px) {
  .trainer__schedule--title {
    font-size: 12px;
    line-height: 2.042;
  }
}
.trainer__schedule--true, .trainer__schedule--false {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 26px;
  height: 26px;
  margin-right: auto;
  margin-left: auto;
  border-radius: 50%;
}
@media (min-width: 768px) {
  .trainer__schedule--true, .trainer__schedule--false {
    padding-bottom: 1px;
  }
}
.trainer__schedule--true {
  color: #fff;
  background-color: #fe6f6b;
}
.trainer__tripGyms {
  width: calc(100% - 60px);
  max-width: 1160px;
  margin-bottom: 40px;
}
@media (max-width: 767px) {
  .trainer__tripGyms {
    width: 100%;
    padding: 0px 16px;
    margin-top: 40px;
    margin-bottom: 0px;
  }
}
.trainer__tripGyms--title {
  margin-bottom: 8px;
  font-size: 20px;
  font-weight: bold;
  line-height: 1.75;
}
@media (max-width: 767px) {
  .trainer__tripGyms--title {
    margin-bottom: 16px;
  }
}
.trainer__reservation {
  margin-bottom: 120px;
}
@media (max-width: 767px) {
  .trainer__reservation {
    padding: 0 16px;
    margin-bottom: 80px;
  }
}
.trainer__plan {
  position: relative;
  width: calc(100% - 60px);
  max-width: 1160px;
  margin: 0 auto 40px;
}
@media (max-width: 767px) {
  .trainer__plan {
    width: 100%;
    margin-bottom: 30px;
  }
}
.trainer__plan--trial {
  margin-bottom: 27px;
}
@media (max-width: 767px) {
  .trainer__plan--trial {
    margin-bottom: 24px;
  }
}
.trainer__plan--trial .trainer__plan--card {
  -webkit-box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.1);
          box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.1);
}
.trainer__plan--trial .trainer__plan--card-title {
  font-size: 20px;
  font-style: normal;
  font-weight: 900;
  line-height: 150%;
  color: white;
  background-color: #FD6812;
}
@media (max-width: 767px) {
  .trainer__plan--trial .trainer__plan--card-title {
    margin-top: 0;
    font-size: 18px;
  }
}
.trainer__plan--trial .trainer__plan--card-info {
  border: 1px solid #FD6812;
  border-radius: 0 0 5px 5px;
}
.trainer__plan--list {
  display: none;
}
.trainer__plan--list.active {
  display: block;
}
.trainer__plan--tab {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -ms-flex-item-align: stretch;
      align-self: stretch;
  padding: 4px;
  margin-bottom: 28px;
  background: #FFF;
  border-radius: 100px;
}
.trainer__plan--tab-button {
  width: 50%;
  height: 48px;
  font-size: 18px;
  font-style: normal;
  font-weight: 400;
  line-height: 175%;
  color: #333;
  text-align: center;
  border-radius: 65px;
}
@media (max-width: 767px) {
  .trainer__plan--tab-button {
    height: 44px;
    font-size: 16px;
  }
}
.trainer__plan--tab-button.active {
  color: white;
  background-color: #333;
}
.trainer__plan--tab-button:hover {
  cursor: pointer;
  opacity: 0.7;
}
.trainer__plan--title {
  margin-bottom: 8px;
  font-size: 20px;
  font-weight: bold;
  line-height: 1.5;
}
@media (max-width: 767px) {
  .trainer__plan--title {
    padding: 0 16px;
    font-size: 18px;
  }
}
.trainer__plan--title span {
  font-size: 18px;
  font-weight: 400;
  -webkit-font-feature-settings: normal;
          font-feature-settings: normal;
  color: #545f6d;
}
@media (max-width: 767px) {
  .trainer__plan--title span {
    font-size: 16px;
  }
}
.trainer__plan--subTitle {
  margin-bottom: 8px;
  font-size: 18px;
  line-height: 1.5;
}
@media (max-width: 767px) {
  .trainer__plan--subTitle {
    margin-bottom: 8px;
    font-size: 16px;
  }
}
.trainer__plan--subTitle:not(:first-of-type) {
  margin-top: 27px;
}
.trainer__plan--contents {
  padding: 30px 40px;
  background-color: #eeeeee;
  border-radius: 10px;
}
@media (max-width: 767px) {
  .trainer__plan--contents {
    padding: 24px 16px;
    border-radius: 0px;
  }
}
.trainer__plan--card {
  position: relative;
  display: block;
  overflow: hidden;
  color: #333;
  cursor: pointer;
  background-color: white;
  border-radius: 5px;
}
.trainer__plan--card:not(:last-child) {
  margin-bottom: 18px;
}
.trainer__plan--card.official {
  position: relative;
  background: transparent;
}
.trainer__plan--card.official:before, .trainer__plan--card.official:after {
  content: "";
  position: absolute;
}
.trainer__plan--card.official:before {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border-radius: 5px;
  background: -webkit-gradient(linear, left top, right top, from(#07adfa), to(#ec4ce7));
  background: linear-gradient(90deg, #07adfa 0%, #ec4ce7 100%);
}
.trainer__plan--card.official:after {
  top: 2px;
  left: 2px;
  width: calc(100% - 4px);
  height: calc(100% - 4px);
  border-radius: 5px;
  background: #fff;
}
.trainer__plan--card-title {
  padding: 12px 16px 15px;
  font-size: 18px;
  font-weight: bold;
  line-height: 1.5;
}
@media (max-width: 767px) {
  .trainer__plan--card-title {
    padding: 16px;
    margin-top: 8px;
    font-size: 16px;
    font-weight: bold;
  }
}
.trainer__plan--card-title.official {
  position: relative;
  z-index: 1;
  color: #fff;
  background: -webkit-gradient(linear, left top, right top, from(#07adfa), to(#ec4ce7));
  background: linear-gradient(90deg, #07adfa 0%, #ec4ce7 100%);
}
.trainer__plan--card.greenBar:after {
  position: absolute;
  top: 0;
  width: 100%;
  height: 5px;
  content: "";
  background-color: #87DBCA;
  border-radius: 5px 5px 0px 0px;
}
.trainer__plan--card-info {
  padding: 8px 16px 16px;
  border-top: 1px solid #eeeeee;
}
.trainer__plan--card-info.official {
  position: relative;
  z-index: 1;
  border: 0;
}
.trainer__plan--card-info-description {
  margin-top: 8px;
  font-size: 14px;
  line-height: 1.429;
  color: #545f6d;
}
@media (max-width: 767px) {
  .trainer__plan--card-info-description {
    font-size: 12px;
    line-height: 1.75;
  }
}
.trainer__plan--card-info-time {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-top: 8px;
  font-size: 16px;
  line-height: 1.5;
}
@media (max-width: 767px) {
  .trainer__plan--card-info-time {
    font-size: 14px;
  }
}
.trainer__plan--card-info-time:before {
  display: inline-block;
  width: 18px;
  height: 18px;
  margin-right: 8px;
  content: "";
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2219%22%20height%3D%2219%22%20viewBox%3D%220%200%2019%2019%22%3E%20%3Cg%20id%3D%22%E3%82%B0%E3%83%AB%E3%83%BC%E3%83%97_2021%22%20data-name%3D%22%E3%82%B0%E3%83%AB%E3%83%BC%E3%83%97%202021%22%20transform%3D%22translate(0.5%200.5)%22%3E%20%3Cpath%20id%3D%22%E3%83%91%E3%82%B9_407%22%20data-name%3D%22%E3%83%91%E3%82%B9%20407%22%20d%3D%22M638.567%2C282.518l2.332%2C4.04H644%22%20transform%3D%22translate(-632.281%20-276.818)%22%20fill%3D%22none%22%20stroke%3D%22%23545f6d%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%20stroke-width%3D%221%22%2F%3E%20%3Ccircle%20id%3D%22%E6%A5%95%E5%86%86%E5%BD%A2_74%22%20data-name%3D%22%E6%A5%95%E5%86%86%E5%BD%A2%2074%22%20cx%3D%229%22%20cy%3D%229%22%20r%3D%229%22%20fill%3D%22none%22%20stroke%3D%22%23545f6d%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%20stroke-width%3D%221%22%2F%3E%20%3C%2Fg%3E%3C%2Fsvg%3E");
  background-size: contain;
}
@media (max-width: 767px) {
  .trainer__plan--card-info-time:before {
    margin-right: 5px;
  }
}
.trainer__plan--card-info-point {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-right: 8px;
  font-size: 16px;
  font-weight: bold;
  line-height: 1;
  color: #fe6f6b;
}
@media (max-width: 767px) {
  .trainer__plan--card-info-point {
    font-size: 16px;
    line-height: 1.75;
  }
}
.trainer__plan--card-info-point:before {
  display: inline-block;
  width: 18px;
  height: 18px;
  margin-right: 8px;
  content: "";
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2219%22%20height%3D%2219%22%20viewBox%3D%220%200%2019%2019%22%3E%20%3Cg%20id%3D%22%E3%82%B0%E3%83%AB%E3%83%BC%E3%83%97_2240%22%20data-name%3D%22%E3%82%B0%E3%83%AB%E3%83%BC%E3%83%97%202240%22%20transform%3D%22translate(0.5%200.5)%22%3E%20%3Ccircle%20id%3D%22%E6%A5%95%E5%86%86%E5%BD%A2_82%22%20data-name%3D%22%E6%A5%95%E5%86%86%E5%BD%A2%2082%22%20cx%3D%229%22%20cy%3D%229%22%20r%3D%229%22%20fill%3D%22none%22%20stroke%3D%22%23545f6d%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%20stroke-width%3D%221%22%2F%3E%20%3Cpath%20id%3D%22%E3%83%91%E3%82%B9_419%22%20data-name%3D%22%E3%83%91%E3%82%B9%20419%22%20d%3D%22M15.184%2C9.066A2.132%2C2.132%2C0%2C0%2C0%2C13.265%2C8H11.132a2.132%2C2.132%2C0%2C1%2C0%2C0%2C4.265h2.132a2.132%2C2.132%2C0%2C0%2C1%2C0%2C4.265H11.132a2.132%2C2.132%2C0%2C0%2C1-1.919-1.066%22%20transform%3D%22translate(-3.193%20-3.456)%22%20fill%3D%22none%22%20stroke%3D%22%23545f6d%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%20stroke-width%3D%221%22%2F%3E%20%3Cpath%20id%3D%22%E3%83%91%E3%82%B9_420%22%20data-name%3D%22%E3%83%91%E3%82%B9%20420%22%20d%3D%22M12%2C6V8.085m0%2C8.339v2.085%22%20transform%3D%22translate(-2.995%20-3.452)%22%20fill%3D%22none%22%20stroke%3D%22%23545f6d%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%20stroke-width%3D%221%22%2F%3E%20%3C%2Fg%3E%3C%2Fsvg%3E");
  background-size: contain;
}
@media (max-width: 767px) {
  .trainer__plan--card-info-point:before {
    margin-right: 5px;
  }
}
.trainer__plan--card-info-pointWrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-top: 8px;
}
.trainer__plan--card-info-point-description {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  font-size: 14px;
  font-weight: 400;
  color: #333;
}
.trainer__plan--card-info-point-large {
  font-size: 22px;
}
.trainer__plan--card-info-point-normal {
  font-weight: 400;
}
.trainer__trial {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: calc(100% - 60px);
  max-width: 1160px;
  padding: 33px 0 30px;
  margin: auto;
  margin-bottom: 64px;
  background-color: #eeeeee;
  border-radius: 5px;
}
@media (max-width: 767px) {
  .trainer__trial {
    width: 100%;
    margin-bottom: 40px;
    border-radius: 0px;
  }
}
.trainer__trial--title {
  font-size: 18px;
  font-weight: bold;
  line-height: 1.5;
}
@media (max-width: 767px) {
  .trainer__trial--title {
    font-size: 16px;
  }
}
.trainer__trial--button {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 250px;
  height: 40px;
  margin-top: 16px;
  font-size: 14px;
  font-weight: bold;
  line-height: 1.429;
  color: white;
  background: -webkit-gradient(linear, left top, right top, from(#FE6D69), to(#FF3A35));
  background: linear-gradient(to right, #FE6D69, #FF3A35);
  border-radius: 100px;
}
.trainer__trial--button:after {
  position: absolute;
  right: 15px;
  width: 7px;
  height: 12px;
  content: "";
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%227.001%22%20height%3D%2212%22%20viewBox%3D%220%200%207.001%2012%22%3E%20%3Cpath%20id%3D%22%E3%83%91%E3%82%B9_4887%22%20data-name%3D%22%E3%83%91%E3%82%B9%204887%22%20d%3D%22M2%2C0a1%2C1%2C0%2C0%2C1-.707-.293l-5-5a1%2C1%2C0%2C0%2C1%2C0-1.414l5-5a1%2C1%2C0%2C0%2C1%2C1.414%2C0%2C1%2C1%2C0%2C0%2C1%2C0%2C1.414L-1.586-6%2C2.708-1.706a1%2C1%2C0%2C0%2C1%2C0%2C1.414A1%2C1%2C0%2C0%2C1%2C2%2C0Z%22%20transform%3D%22translate(3.001%200)%20rotate(180)%22%20fill%3D%22%23fff%22%2F%3E%3C%2Fsvg%3E");
}
.trainer__following {
  position: fixed;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 2;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin: 0 auto;
  visibility: hidden;
  opacity: 0;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.trainer__following.line {
  gap: 4px;
  padding: 4px;
}
.trainer__following.message {
  gap: 4px;
  padding: 15px;
}
@media (max-width: 767px) {
  .trainer__following.message {
    gap: 8px;
  }
}
.trainer__following.active {
  visibility: visible;
  opacity: 1;
}
.trainer__following.absolute {
  visibility: hidden;
  opacity: 0;
}
.trainer__following--btn {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 220px;
  height: 40px;
  font-size: 14px;
  color: white;
  background-color: #333;
  border-radius: 100px;
  -webkit-transition: 0s;
  transition: 0s;
}
@media (max-width: 767px) {
  .trainer__following--btn {
    padding-right: 6px;
    font-size: 1.2rem;
    line-height: 1.2;
    text-align: center;
  }
}
.trainer__following--btn.summary:after {
  position: absolute;
  right: 12px;
  width: 12px;
  height: 7px;
  content: "";
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2212%22%20height%3D%227.001%22%20viewBox%3D%220%200%2012%207.001%22%3E%20%3Cpath%20id%3D%22%E3%83%91%E3%82%B9_4889%22%20data-name%3D%22%E3%83%91%E3%82%B9%204889%22%20d%3D%22M2%2C0a1%2C1%2C0%2C0%2C1-.707-.293l-5-5a1%2C1%2C0%2C0%2C1%2C0-1.414l5-5a1%2C1%2C0%2C0%2C1%2C1.414%2C0%2C1%2C1%2C0%2C0%2C1%2C0%2C1.414L-1.586-6%2C2.708-1.706a1%2C1%2C0%2C0%2C1%2C0%2C1.414A1%2C1%2C0%2C0%2C1%2C2%2C0Z%22%20transform%3D%22translate(0%204)%20rotate(90)%22%20fill%3D%22%23fff%22%2F%3E%3C%2Fsvg%3E");
  background-repeat: no-repeat;
}
@media (max-width: 767px) {
  .trainer__following--btn.summary:after {
    width: 8px;
    height: 5px;
    background-size: contain;
  }
}
.trainer__following--btn.plan:after {
  position: absolute;
  right: 12px;
  width: 12px;
  height: 7px;
  content: "";
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2212%22%20height%3D%227.001%22%20viewBox%3D%220%200%2012%207.001%22%3E%20%3Cpath%20id%3D%22%E3%83%91%E3%82%B9_4890%22%20data-name%3D%22%E3%83%91%E3%82%B9%204890%22%20d%3D%22M2%2C0a1%2C1%2C0%2C0%2C1-.707-.293l-5-5a1%2C1%2C0%2C0%2C1%2C0-1.414l5-5a1%2C1%2C0%2C0%2C1%2C1.414%2C0%2C1%2C1%2C0%2C0%2C1%2C0%2C1.414L-1.586-6%2C2.708-1.706a1%2C1%2C0%2C0%2C1%2C0%2C1.414A1%2C1%2C0%2C0%2C1%2C2%2C0Z%22%20transform%3D%22translate(12%203.001)%20rotate(-90)%22%20fill%3D%22%23fff%22%2F%3E%3C%2Fsvg%3E");
  background-repeat: no-repeat;
}
@media (max-width: 767px) {
  .trainer__following--btn.plan:after {
    width: 8px;
    height: 5px;
    background-size: contain;
  }
}
.trainer__following--btn.counseling {
  font-weight: bold;
  background: -webkit-gradient(linear, left top, right top, from(#FE6D69), to(#FF3A35));
  background: linear-gradient(to right, #FE6D69, #FF3A35);
}
.trainer__following--btn.counseling:after {
  position: absolute;
  right: 15px;
  width: 7px;
  height: 12px;
  content: "";
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%227.001%22%20height%3D%2212%22%20viewBox%3D%220%200%207.001%2012%22%3E%20%3Cpath%20id%3D%22%E3%83%91%E3%82%B9_4891%22%20data-name%3D%22%E3%83%91%E3%82%B9%204891%22%20d%3D%22M2%2C0a1%2C1%2C0%2C0%2C1-.707-.293l-5-5a1%2C1%2C0%2C0%2C1%2C0-1.414l5-5a1%2C1%2C0%2C0%2C1%2C1.414%2C0%2C1%2C1%2C0%2C0%2C1%2C0%2C1.414L-1.586-6%2C2.708-1.706a1%2C1%2C0%2C0%2C1%2C0%2C1.414A1%2C1%2C0%2C0%2C1%2C2%2C0Z%22%20transform%3D%22translate(3.001%200)%20rotate(180)%22%20fill%3D%22%23fff%22%2F%3E%3C%2Fsvg%3E");
}
@media (max-width: 767px) {
  .trainer__following--btn.counseling:after {
    right: 12px;
    width: 5px;
    height: 8px;
    background-size: contain;
  }
}
.trainer__followGuide, .trainer__followRoundGuide {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 18.61%;
  min-width: 268px;
  padding: 10px 0;
  font-family: "Noto Sans JP", "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", "Yu Gothic", Meiryo, sans-serif;
  font-size: 18px;
  font-style: normal;
  font-weight: 700;
  line-height: 130%;
  color: #FF710C;
  text-align: center;
  word-break: keep-all;
  background: white;
  border: 1px solid #FF710C;
}
@media (max-width: 767px) {
  .trainer__followGuide, .trainer__followRoundGuide {
    padding: 10px 18px;
  }
}
.trainer__followGuide:hover, .trainer__followRoundGuide:hover {
  cursor: pointer;
  opacity: 0.7;
}
.trainer__followGuide {
  border-radius: 10px;
}
@media (max-width: 767px) {
  .trainer__followGuide {
    width: 21.33%;
    min-width: 80px;
    font-size: 14px;
  }
}
.trainer__followRoundGuide {
  border-radius: 999px;
}
@media (max-width: 767px) {
  .trainer__followRoundGuide {
    width: 60px;
    min-width: 60px;
    font-size: 12px;
  }
}
.trainer__message {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 100%;
  height: 51px;
  font-family: "Noto Sans JP", "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", "Yu Gothic", Meiryo, sans-serif;
  font-size: 18px;
  font-style: normal;
  font-weight: 700;
  line-height: 150%;
  color: white;
  background: -webkit-gradient(linear, left top, right top, from(#FE6D69), color-stop(70%, #FF3A35));
  background: linear-gradient(90deg, #FE6D69 0%, #FF3A35 70%);
  border: 1px solid white;
  border-radius: 58px;
}
@media (max-width: 767px) {
  .trainer__message {
    height: 60px;
    font-size: 16px;
  }
}
.trainer__message:hover {
  cursor: pointer;
  opacity: 0.7;
}
.trainer__message:after {
  position: absolute;
  top: 50%;
  right: 16px;
  width: 5.196px;
  height: 8.911px;
  content: "";
  background-image: url('data:image/svg+xml,<svg width="6" height="9" viewBox="0 0 6 9" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M0.803571 8.25893C0.803571 8.1875 0.839285 8.10714 0.892857 8.05357L4.40179 4.54464L0.892857 1.03571C0.839285 0.982141 0.803571 0.901785 0.803571 0.830357C0.803571 0.758928 0.839285 0.678571 0.892857 0.624999L1.33929 0.178571C1.39286 0.124999 1.47321 0.0892849 1.54464 0.0892849C1.61607 0.0892849 1.69643 0.124999 1.75 0.178571L5.91071 4.33928C5.96429 4.39286 6 4.47321 6 4.54464C6 4.61607 5.96429 4.69643 5.91071 4.75L1.75 8.91071C1.69643 8.96428 1.61607 9 1.54464 9C1.47321 9 1.39286 8.96428 1.33929 8.91071L0.892857 8.46428C0.839285 8.41071 0.803571 8.33928 0.803571 8.25893Z" fill="white"/></svg>');
  background-repeat: no-repeat;
  background-position: center;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
.trainer__anchor {
  position: absolute;
}
@media (max-width: 767px) {
  .trainer__anchor {
    top: -70px;
  }
}
.trainer__anchor--wrapper {
  position: relative;
}
.trainer__lesson {
  width: calc(100% - 60px);
  max-width: 1160px;
  margin: auto;
  margin-bottom: 120px;
}
@media (max-width: 767px) {
  .trainer__lesson {
    width: 100%;
    margin-bottom: 80spx;
  }
}
.trainer__lesson--trainer {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media (max-width: 767px) {
  .trainer__lesson--trainer {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    padding: 0px 16px;
  }
}
.trainer__lesson--trainer-name {
  margin-bottom: 15px;
  font-size: 24px;
  font-weight: bold;
  line-height: 1.5;
}
@media (max-width: 767px) {
  .trainer__lesson--trainer-name {
    margin-top: 15px;
    font-size: 22px;
  }
}
.trainer__lesson--trainer-description {
  font-size: 16px;
  line-height: 1.75;
}
@media (max-width: 767px) {
  .trainer__lesson--trainer-description {
    font-size: 14px;
  }
}
.trainer__lesson--trainer-sns {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-top: 16px;
}
@media (max-width: 767px) {
  .trainer__lesson--trainer-sns {
    margin-top: 20px;
  }
}
.trainer__lesson--trainer-sns > a {
  display: block;
  width: 24px;
  height: 24px;
}
@media (max-width: 767px) {
  .trainer__lesson--trainer-sns > a {
    width: 30px;
    height: 30px;
  }
}
.trainer__lesson--trainer-sns > a:not(:first-child) {
  margin-left: 12px;
}
@media (max-width: 767px) {
  .trainer__lesson--trainer-sns > a:not(:first-child) {
    margin-left: 20px;
  }
}
.trainer__lesson--img {
  width: 281px;
  border-radius: 5px;
}
@media (min-width: 768px) {
  .trainer__lesson--img {
    margin-right: 20px;
  }
}
@media (max-width: 767px) {
  .trainer__lesson--img {
    width: 100%;
  }
}

.notes {
  -webkit-font-feature-settings: normal;
          font-feature-settings: normal;
  color: #545f6d;
}
@media (min-width: 992px) {
  .notes {
    width: 49.743%;
  }
}
.notes--small {
  -webkit-font-feature-settings: normal;
          font-feature-settings: normal;
  color: #545f6d;
}
@media (min-width: 768px) {
  .notes--small {
    max-width: 370px;
    width: 49.743%;
  }
}
.notes__list {
  font-size: 1rem;
  text-indent: 0;
  padding-left: 0;
}
.notes__list:before {
  content: "※";
}

.tag {
  display: block;
  max-width: -webkit-fill-available;
  border-radius: 40px;
  background: -webkit-gradient(linear, left top, right top, from(#02B2FA), color-stop(52.17%, #6C63F9), to(#F14BE6));
  background: linear-gradient(90deg, #02B2FA 0%, #6C63F9 52.17%, #F14BE6 100%);
  color: white;
  padding: 3px 12px;
  font-size: 12px;
  font-style: normal;
  font-weight: 500;
  line-height: normal;
  overflow: hidden;
  word-break: keep-all;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.tags {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 4px;
  margin-top: 10px;
}
@media (max-width: 767px) {
  .tags {
    margin-top: 8px;
  }
}

.review {
  margin-bottom: 64px;
}
@media (max-width: 767px) {
  .review {
    padding: 0 16px;
    margin-bottom: 40px;
  }
}
.review__title {
  margin-bottom: 21px;
  font-size: 20px;
  font-weight: 700;
}
@media (max-width: 767px) {
  .review__title {
    font-size: 18px;
  }
}
.review__inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media (max-width: 767px) {
  .review__inner {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 17px;
  }
}
.review__info {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  min-width: 290px;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
}
@media (max-width: 767px) {
  .review__info {
    min-width: auto;
  }
}
.review__info--number {
  font-size: 28px;
  font-weight: 700;
  line-height: 100%;
}
@media (max-width: 767px) {
  .review__info--number {
    font-size: 24px;
  }
}
.review__info--number-text {
  font-size: 16px;
  font-weight: 700;
}
.review__info--star {
  width: 92.87px;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  -o-object-fit: contain;
     object-fit: contain;
  margin: 0 8px;
}
.review__info--text {
  font-size: 14px;
  font-weight: 400;
  color: #8d99aa;
}
@media (max-width: 767px) {
  .review__info--text {
    font-size: 12px;
  }
}
.review__info--text-large {
  font-size: 16px;
  font-weight: 500;
  color: #8d99aa;
}
@media (max-width: 767px) {
  .review__info--text-large {
    font-size: 14px;
  }
}