@charset "UTF-8";
/* **************************************


     追加


***************************************/
/*最小値:$value+0.2 → 可変（$value + 0.625vw（画面幅320px:2px, 800px:5px, 1200px:7.5px,2560px:12px））→ 最大値:$value + 1.2*/
/*最小値:$value+0.2 → 可変（$value + 0.625vw（画面幅320px:2px, 800px:5px, 1200px:7.5px,2560px:12px））→ 最大値:$value + 1.2*/
/* =============================================================================


     fitness


============================================================================= */
.main {
  background: #202020;
  color: #fff;
}

.submv {
  background: transparent url(../asset/images/fitness/mv.jpg) no-repeat top center/cover;
}

.main {
  background: #202020;
  color: #fff;
}

.driving-btnlist {
  margin-top: 80px;
}

/* =============================================================================


    point


============================================================================= */
.fitness {
  /* background: transparent url(../asset/images/fitness/bg.jpg) no-repeat top / contain; */
  position: relative;
}

.fitness:before {
  background: -webkit-gradient(linear, left top, left bottom, from(#3a1e12), color-stop(#4e2a1a), to(#3a1e12));
  background: linear-gradient(to bottom, #3a1e12, #4e2a1a, #3a1e12);
  content: "";
  height: calc(57vw);
  left: 50%;
  position: absolute;
  top: 0;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: 100%;
}

.fitness-content {
  background: #fff;
  border-radius: 10px;
  color: #202020;
  margin: auto;
  max-width: 1000px;
  overflow: hidden;
  padding: 80px;
}

.fitness-content + .fitness-content {
  margin-top: 100px;
}

.fitness-head {
  text-align: center;
}

.point-logo {
  margin: auto;
  max-width: 240px;
}

.point-itemttlbox {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}

.point-itemnum {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  color: #B20026;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  font-family: "Oswald", sans-serif;
  font-weight: bold;
  line-height: 1;
}

.point-itemnum span {
  font-size: 5rem;
}

.trial-ttl {
  color: #B20026;
  font-family: "Oswald", sans-serif;
  font-size: clamp(7.4rem, calc(7.2rem + (0.625vw * 1)), 8.4rem);
  font-weight: bold;
  line-height: 1;
  text-align: center;
}

.trial-head {
  font-size: clamp(3.8rem, calc(3.6rem + (0.625vw * 1)), 4.8rem);
  font-weight: bold;
  line-height: 1.2;
  margin-top: 40px;
  text-align: center;
}

.trial-box {
  margin-top: 40px;
}

.trial-box-head {
  border-bottom: 1px solid #202020;
  border-top: 1px solid #202020;
  font-size: 2.8rem;
  padding: 0.5em 0;
  text-align: center;
}

.trial-box-content {
  gap: 30px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-top: 30px;
}

.trial-box-img {
  width: calc(60% - 30px);
}

.trial-box-txtbox {
  width: 40%;
}

.trial-box-ttl {
  font-size: 2.8rem;
  font-weight: bold;
  line-height: 1.3;
}

.trial-box-txt {
  font-size: 1.6rem;
  margin-top: 1em;
}

.trial-box-txt._c {
  text-align: center;
}

.trial-txt {
  font-size: 1.8rem;
  margin-top: 1em;
  text-align: left;
}

.point-itemttl {
  font-size: clamp(2.2rem, calc(2rem + (0.625vw * 1)), 3.2rem);
  font-weight: bold;
  line-height: 1.2;
  margin-left: 1em;
}

.point-item {
  margin-top: 48px;
}

.point-itemtxt {
  font-size: 1.8rem;
  margin-top: 1em;
}

.reserve {
  margin-top: 80px;
  padding: 40px 0;
  position: relative;
  z-index: 1;
}

.reserve:before {
  background: #F5EFC8;
  content: "";
  height: 100%;
  left: 50%;
  position: absolute;
  top: 0;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: calc(100% + 160px);
  z-index: -1;
}

.reserve .head-ttl-jp {
  letter-spacing: -0.05em;
}

.reserve-tel {
  -webkit-box-align: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
  color: #b20026;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-family: "Oswald", sans-serif;
  font-size: clamp(3.4rem, calc(3.2rem + (0.625vw * 1)), 4.4rem);
  font-weight: bold;
  justify-self: center;
  line-height: 1;
  margin-top: 10px;
  -webkit-transition: 0.2s;
  transition: 0.2s;
}

.reserve-tel:hover {
  opacity: 0.7;
}

.reserve-tel span {
  font-size: clamp(5.4rem, calc(5.2rem + (0.625vw * 1)), 6.4rem);
}

.reserve-tel-span {
  font-size: 1.8rem;
  margin-top: 8px;
  text-align: center;
}

.hogureru-btnbox {
  margin-top: 28px;
  text-align: right;
}

.hogureru-btnbox2 {
  margin-top: 28px;
  text-align: center;
}
.caution {
  gap: 30px;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  position: relative;
  z-index: 1;
}

.caution:before {
  background: #B20026;
  content: "";
  height: calc(100% + 80px);
  left: 50%;
  position: absolute;
  top: 0;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: calc(100% + 160px);
  z-index: -1;
}

.caution-img {
  margin-top: -10px;
  min-width: 150px;
  width: 150px;
}

.caution-txt {
  color: #fff;
}

.caution-txt span {
  font-size: clamp(2.8rem, calc(2.6rem + (0.625vw * 1)), 3.8rem);
}

.caution-txt span > span {
  text-decoration: underline;
}

/* =============================================================================


     fitness

============================================================================= */
.inst-content {
  gap: 48px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin: 60px auto 0;
  margin-top: 60px;
  max-width: 1100px;
}

.inst-img {
  max-width: 320px;
  width: calc(35% - 24px);
}

.inst-txtbox {
  width: calc(50% - 24px);
}

.inst-name {
  font-size: clamp(2.8rem, calc(2.6rem + (0.625vw * 1)), 3.8rem);
  font-weight: bold;
}

.inst-nametxt {
  font-size: 1.8rem;
}

.inst-ttl {
  font-size: clamp(2.2rem, calc(2rem + (0.625vw * 1)), 3.2rem);
  font-weight: bold;
  margin-top: 1em;
}

.inst-txt {
  font-size: 1.6rem;
}

/* =============================================================================


    machine


============================================================================= */
.machine-contents {
  gap: 60px;
  color: #fff;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-template-rows: auto;
  margin: 64px auto 0;
  max-width: 1100px;
}

.machine-ttl {
  font-size: clamp(2.8rem, calc(2.6rem + (0.625vw * 1)), 3.8rem);
  font-weight: bold;
}

.machine-ttl span {
  font-size: 1.6rem;
}

.machine-ttl-center {
    text-align: center;
}

.machine-list {
  margin-top: 10px;
}

.machine-item {
  font-size: 1.8rem;
  padding-left: 1em;
  text-indent: -1em;
}

.machine-name {
  color: #fff;
  font-size: clamp(2rem, calc(1.8rem + (0.625vw * 1)), 3rem);
  font-weight: bold;
  margin-top: 0.5em;
}

/* =============================================================================


    guide


============================================================================= */
.guide-container {
  margin: 64px auto 0;
  max-width: 880px;
}

.tablebox {
  margin-top: 60px;
}

.member-table,
.time-table,
.price-table {
  background: #fff;
  border-collapse: collapse;
  font-size: 1.8rem;
  font-weight: bold;
  position: relative;
}

.member-table th,
.time-table th,
.price-table th {
  background: #e6e6e6;
  font-size: 2.4rem;
  text-align: center;
}

.member-table th,
.member-table td,
.time-table th,
.time-table td,
.price-table th,
.price-table td {
  border-bottom: 1px solid #202020;
  border-top: 1px solid #202020;
  padding: 0.5em 8px;
  text-align: center;
  vertical-align: middle;
}

.member-table .en-item,
.time-table .en-item,
.price-table .en-item {
  line-height: 1.2;
}

.member-table .en-item + .en-item,
.time-table .en-item + .en-item,
.price-table .en-item + .en-item {
  margin-left: 10px;
}

.member-table .en-item .entxt,
.time-table .en-item .entxt,
.price-table .en-item .entxt {
  font-family: "Oswald", sans-serif;
  font-size: 3.2rem;
  margin-left: 5px;
  margin-right: 5px;
}

.member-table .en,
.time-table .en,
.price-table .en {
  font-family: "Oswald", sans-serif;
  font-size: 2.4rem;
  margin-right: 5px;
}

.member-table .sm,
.time-table .sm,
.price-table .sm {
  font-size: 1.4rem;
}

.member-table .arrow,
.time-table .arrow,
.price-table .arrow {
  display: inline-block;
  height: 15px;
  margin: 0 10px;
  position: relative;
  width: 15px;
}

.member-table .arrow:before,
.time-table .arrow:before,
.price-table .arrow:before {
  -webkit-transform: translate(-50%, -50%);
  background: #000;
  -webkit-clip-path: polygon(100% 50%, 0 0, 0 100%);
          clip-path: polygon(100% 50%, 0 0, 0 100%);
  content: "";
  height: 100%;
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
}

.member-table .yen-jp,
.time-table .yen-jp,
.price-table .yen-jp {
  margin-right: 20px;
}

.member-tablebox {
  position: relative;
}

.time-table colgroup col:nth-child(1),
.time-table colgroup col:nth-child(4) {
  width: 10%;
}

.member-table colgroup col:nth-child(1),
.member-table colgroup col:nth-child(4) {
  width: 15%;
}

.member-table td {
  text-align: left;
}

.price-table {
  color: #202020;
}

.price-tablebox {
  position: relative;
}

.price-table-txtbox {
  margin-top: 16px;
}

.price-table-txt {
  padding-left: 1em;
  text-indent: -1em;
}

.price-table-coupon {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background: #fec716;
  border-radius: 50%;
  color: #202020;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-size: 2.8rem;
  height: 110px;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  position: absolute;
  right: calc(25% - 80px);
  text-align: center;
  top: -30px;
  width: 110px;
  z-index: 1;
}

.price-table-coupon:before {
  background: inherit;
  bottom: 0px;
  -webkit-clip-path: polygon(100% 100%, 100% 0, 0 0);
          clip-path: polygon(100% 100%, 100% 0, 0 0);
  content: "";
  height: 30%;
  left: 0;
  position: absolute;
  right: 15px;
  -webkit-transform: matrix(0.21, 0.98, -0.98, 0.21, 0, 0);
          transform: matrix(0.21, 0.98, -0.98, 0.21, 0, 0);
  width: 30%;
  z-index: -1;
}

.guide-imgs {
  gap: 60px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-top: 40px;
}

@media (max-width: 1228px){
  .fitness-content {
    padding: 80px 50px;
  }
  .trial-ttl {
    font-size: clamp(6.4rem, calc(6.2rem + (0.625vw * 1)), 7.4rem);
  }
  .trial-head {
    font-size: clamp(3rem, calc(2.8rem + (0.625vw * 1)), 4rem);
  }
  .trial-box-head {
    font-size: 2.4rem;
  }
  .trial-box-ttl {
    font-size: 2.4rem;
  }
  .caution-txt span {
    font-size: clamp(2.2rem, calc(2rem + (0.625vw * 1)), 3.2rem);
  }
  .machine-contents {
    gap: 60px 40px;
  }
  .machine-ttl {
    font-size: clamp(2.4rem, calc(2.2rem + (0.625vw * 1)), 3.4rem);
  }
  .machine-item {
    font-size: 1.6rem;
  }
  .member-table,
  .time-table,
  .price-table {
    font-size: 1.6rem;
  }
  .member-table th,
  .time-table th,
  .price-table th {
    font-size: 2rem;
  }
  .member-table .en-item .entxt,
  .time-table .en-item .entxt,
  .price-table .en-item .entxt {
    font-size: 2.8rem;
  }
  .member-table .en,
  .time-table .en,
  .price-table .en {
    font-size: 2rem;
  }
  .member-table .arrow,
  .time-table .arrow,
  .price-table .arrow {
    height: 12px;
    margin: 0 8px;
    width: 12px;
  }
  .price-table-coupon {
    font-size: 2.2rem;
    height: clamp(40px, 10vw, 100px);
    right: calc(25% - 80px);
    top: -2vw;
    width: clamp(40px, 10vw, 100px);
  }
  .guide-imgs {
    gap: 60px 40px;
  }
}

@media (max-width: 767px){
  .fitness-content {
    padding: 40px 20px;
  }
  .fitness-content + .fitness-content {
    margin-top: 40px;
  }
  .point-itemttlbox {
    gap: 10px;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .point-itemnum span {
    font-size: 4rem;
  }
  .trial-ttl {
    font-size: clamp(4.4rem, calc(4.2rem + (0.625vw * 1)), 5.4rem);
  }
  .trial-head {
    font-size: clamp(2.4rem, calc(2.2rem + (0.625vw * 1)), 3.4rem);
  }
  .trial-box-head {
    font-size: 1.8rem;
  }
  .trial-box-content {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .trial-box-img {
    width: 100%;
  }
  .trial-box-txtbox {
    width: 100%;
  }
  .trial-box-ttl {
    font-size: 2rem;
  }
  .trial-box-txt {
    font-size: 1.4rem;
  }
  .trial-txt {
    font-size: 1.4rem;
  }
  .point-itemttl {
    font-size: 2rem;
    margin-left: 0;
    width: 100%;
  }
  .point-itemtxt {
    font-size: 1.4rem;
  }
  .reserve-tel span {
    font-size: clamp(4.4rem, calc(4.2rem + (0.625vw * 1)), 5.4rem);
  }
  .reserve-tel {
    font-size: clamp(2.4rem, calc(2.2rem + (0.625vw * 1)), 3.4rem);
  }
  .reserve-tel-span {
    font-size: 1.4rem;
  }
  .caution {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .caution-txt span {
    font-size: clamp(1.9rem, calc(1.7rem + (0.625vw * 1)), 2.9rem);
  }
  .inst-content {
    gap: 30px;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    margin-top: 40px;
  }
  .inst-img {
    margin: auto;
    width: 60%;
  }
  .inst-txtbox {
    width: 100%;
  }
  .inst-name {
    font-size: clamp(1.8rem, calc(1.6rem + (0.625vw * 1)), 2.8rem);
  }
  .inst-nametxt {
    font-size: 1.4rem;
  }
  .inst-ttl {
    font-size: clamp(1.6rem, calc(1.4rem + (0.625vw * 1)), 2.6rem);
  }
  .inst-txt {
    font-size: 1.4rem;
  }
  .machine-contents {
    gap: 40px;
    grid-template-columns: repeat(1, 1fr);
    grid-template-rows: auto;
    margin-top: 40px;
  }
  .machine-ttl {
    font-size: clamp(1.9rem, calc(1.7rem + (0.625vw * 1)), 2.9rem);
  }
  .machine-ttl span {
    font-size: 1.4rem;
  }
  .machine-item {
    font-size: 1.4rem;
  }
  .machine-name {
    font-size: 1.6rem;
  }
  .member-table,
  .time-table,
  .price-table {
    font-size: 1.1rem;
  }
  .member-table th,
  .time-table th,
  .price-table th {
    font-size: 1.5rem;
  }
  .member-table th,
  .member-table td,
  .time-table th,
  .time-table td,
  .price-table th,
  .price-table td {
    letter-spacing: -0.04em;
    padding: 0.5em 4px;
  }
  .member-table .en-item .entxt,
  .time-table .en-item .entxt,
  .price-table .en-item .entxt {
    font-size: 1.8rem;
    margin-left: 2px;
    margin-right: 2px;
  }
  .member-table .en,
  .time-table .en,
  .price-table .en {
    font-size: 1.4rem;
  }
  .member-table .sm,
  .time-table .sm,
  .price-table .sm {
    font-size: 1rem;
  }
  .member-table .arrow,
  .time-table .arrow,
  .price-table .arrow {
    margin: 4px 0px;
  }
  .member-table .arrow:before,
  .time-table .arrow:before,
  .price-table .arrow:before {
    -webkit-clip-path: polygon(100% 0, 0 0, 50% 100%);
            clip-path: polygon(100% 0, 0 0, 50% 100%);
  }
  .member-table .yen-jp,
  .time-table .yen-jp,
  .price-table .yen-jp {
    margin-right: 2px;
  }
  .time-table colgroup col:nth-child(1),
  .time-table colgroup col:nth-child(4) {
    width: 1%;
  }
  .member-table colgroup col:nth-child(1),
  .member-table colgroup col:nth-child(4) {
    width: 1%;
  }
  .price-table-txtbox {
    font-size: 1.2rem;
  }
  .price-table-coupon {
    font-size: clamp(1rem, 2vw, 2rem);
    height: clamp(40px, 10vw, 60px);
    left: calc(50% + 100px);
    right: auto;
    top: 0px;
    width: clamp(40px, 10vw, 60px);
  }
  .guide-imgs {
    gap: 10px;
  }
}


/*# sourceMappingURL=fitness.css.map*/