@charset "UTF-8";

html {
  scroll-behavior: smooth;
}

.pageContent {
  position: relative;
  z-index: 1;
  padding: 0 1.5rem;
}

@media (min-width: 768px) {
  .pageContent_inner {
    max-width: 75rem;
    margin: auto;
  }
}

.bgGray {
  position: relative;
}

.bgGray::after {
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: -1;
    content: '';
    display: block;
    width: 100%;
    height: calc(100% - 1.5rem - 8rem);
    background-color: #f5f5f5;
  }

@media (min-width: 768px) {

.bgGray::after {
      height: calc(100% - 1.5rem - 10rem)
  }
    }

.bgGray.-high::after {
      height: calc(100% - 3rem);
    }

@media (min-width: 768px) {

.bgGray.-high::after {
        height: calc(100% - 5rem)
    }

.SingleContent{
    margin-left: 3rem;
    margin-right: 3rem;
  }
      }

.SingleContent-header{
  position: relative;
  padding-bottom: 0.75rem;
}

@media (min-width: 768px){

  .SingleContent-header{
    padding-bottom: 1rem;
  }
}

.SingleContent-header::before {
    content: '';
    display: block;
    position: absolute;
    bottom: 0;
    height: 1px;
    width: 100%;
    background: linear-gradient(90deg, #ef3920 0%, #f28d16 100%);
  }

.SingleContent-detail{
  margin-top: 1.5rem;
  display: grid;
  grid-template-columns: repeat(1, minmax(0, 1fr));
  gap: 1.5rem;
  font-size: .875rem;
}

@media (min-width: 768px){

  .SingleContent-detail{
    font-size: 1.125rem;
  }
}

.SingleContent-detail h3{
  margin-top: 1.25rem;
  border-radius: 0.375rem;
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  padding-left: 0.75rem;
  padding-right: 0.75rem;
  font-size: 1.125rem;
  font-weight: 900;
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity));
}

.SingleContent-detail h3:first-child{
  margin-top: 0px;
}

@media (min-width: 768px){

  .SingleContent-detail h3{
    margin-top: 2.5rem;
    padding-top: 1rem;
    padding-bottom: 1rem;
    padding-left: 1.5rem;
    padding-right: 1.5rem;
    font-size: 1.25rem;
  }
}

.SingleContent-detail h3 {
    background: linear-gradient(90deg, #ef3920 0%, #f28d16 100%);
  }

.SingleContent-detail h4{
  position: relative;
  margin-top: 1.5rem;
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  padding-left: 1.5rem;
  font-size: 1rem;
  font-weight: 900;
}

.SingleContent-detail h4:first-child{
  margin-top: 0px;
}

@media (min-width: 768px){

  .SingleContent-detail h4{
    font-size: 1.125rem;
  }
}

.SingleContent-detail h4::before {
      position: absolute;
      top: 0;
      left: 0;
      display: block;
      content: "";
      width: 0.5rem;
      height: 100%;
      background: linear-gradient(179.67deg, #ef3920 -9.65%, #f28d16 102.62%);
    }

.SingleContent-detail h5{
  margin-top: 1.5rem;
  font-size: 1rem;
  font-weight: 700;
}

.SingleContent-detail h5:first-child{
  margin-top: 0px;
}

@media (min-width: 768px){

  .SingleContent-detail h5{
    font-size: 1.125rem;
  }
}

.SingleContent-detail p {
    line-height: 1.7;
  }

.SingleContent-detail ul{
  margin-left: 1.5rem;
  list-style-position: outside;
  list-style-type: disc;
}

.SingleContent-detail ol{
  margin-left: 1.5rem;
  list-style-position: outside;
  list-style-type: decimal;
}

.SingleContent-detail li{
  margin-top: 0.5rem;
}

.SingleContent-detail li:first-child{
  margin-top: 0px;
}

.SingleContent-detail .media{
  aspect-ratio: 16 / 9;
  width: 100%;
    max-width: 50rem;
}

.SingleContent-detail .media iframe{
  height: 100%;
  width: 100%;
}

.SingleContent-detail .img{
  max-width: 100%;
}

.SingleContent-detail .img img{
  width: auto;
  max-width: 100%;
}

.SingleContent-detail .column2{
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}

@media (min-width: 768px){

  .SingleContent-detail .column2{
    flex-direction: row;
  }

  .SingleContent-detail .column2 .column2_text{
    flex: 1 1 auto;
  }

  .SingleContent-detail .column2 .img{
    flex: 0 0 40%;
  }
}

.SingleContent-detail .column2 + .column2{
  margin-top: 3rem;
}

@media (min-width: 768px){

  .SingleContent-detail .column2 + .column2{
    flex-direction: row-reverse;
  }
}

.Table {

}

.Table_wrap{
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  padding-top: 0.75rem;
  padding-bottom: 0.75rem;
  border-bottom: 1px solid #D9D9D9;
}

.Table_wrap dt{
  font-size: 0.8125rem;
  font-weight: 500;
}

.Table_wrap dd{
  font-size: .875rem;
}

@media (min-width: 768px) {

.Table_wrap{
    flex-direction: row;
    gap: 2rem;
    padding-top: 1.5rem;
    padding-bottom: 1.5rem;
    padding-left: 1rem;
    padding-right: 1rem;
  }

    .Table_wrap dt{
    font-size: .875rem;
  }
    .Table_wrap dd{
    font-size: 1.125rem;
  }
  }

.subHeading1 {
  position: relative;
  border-top: 1px solid #E6E6E6;
  padding-top: 1.5rem;
}

.subHeading1 h2,.subHeading1 h3,.subHeading1 h4,.subHeading1 h5,.subHeading1 h6 {
    font-size: 1.25rem;
    font-weight: bold;
    line-height: 1;
  }

@media (min-width: 768px) {

.subHeading1 h2,.subHeading1 h3,.subHeading1 h4,.subHeading1 h5,.subHeading1 h6 {
      font-size: 2rem
  }
    }

.subHeading1::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 4.5rem;
    height: 0.25rem;
    background: linear-gradient(90deg, #EF3920 0%, #F28D16 100%);
  }

@media (min-width: 768px) {

.subHeading1::after {
      width: 6.5rem
  }
    }

.subHeading2 {
  display: grid;
  line-height: 1.2;
  gap: 0.5rem;
  justify-content: flex-start;
}

@media (min-width: 768px) {

.subHeading2 {
    gap: 1rem
}
  }

.subHeading2 span {
    font-weight: 500;
    font-size: 0.6875rem;
    font-family: "Roboto", sans-serif;
    display: grid;
    grid-template-columns: auto auto auto;
    align-items: center;
    justify-content: center;
    gap: 1rem;
    text-align: center;
  }

@media (min-width: 768px) {

.subHeading2 span {
      font-size: 0.8125rem
  }
    }

.subHeading2 span::before {
      display: block;
      content: "";
      width: 1.5rem;
      height: 0.0625rem;
      background: #1a1a1a;
    }

.subHeading2 h2,.subHeading2 h3,.subHeading2 h4,.subHeading2 h5,.subHeading2 h6 {
    font-weight: 900;
    font-size: 1.625rem;
    text-align: center;
    position: relative;
  }

.subHeading2 h2 strong, .subHeading2 h3 strong, .subHeading2 h4 strong, .subHeading2 h5 strong, .subHeading2 h6 strong {
      position: relative;
      font-weight: 900;
      background: linear-gradient(90deg, #ef3920 0%, #f28d16 100%) no-repeat left bottom;
      background-size: 100% 30%;
    }

@media (min-width: 768px) {

.subHeading2 h2,.subHeading2 h3,.subHeading2 h4,.subHeading2 h5,.subHeading2 h6 {
      font-size: 3.3125rem;
      text-align: left
  }
    }

/* hoverでテキストに下線アニメーション */

.linkLine .linkLine__target {
    background: linear-gradient(to bottom, rgba(255,255,255,0) 92%, #000 100%);
    background-repeat: no-repeat;
    background-position: left bottom;
    background-size: 0% 100%;
    transition: background-size 0.7s cubic-bezier(0.23, 1, 0.32, 1);
  }

.linkLine:hover .linkLine__target {
      background-size: 100% 100%;
    }

/* hoverで画像のscale変更アニメーション */

.linkScale .linkScale__target {
    transition: transform 0.7s cubic-bezier(0.23, 1, 0.32, 1);
  }

.linkScale:hover .linkScale__target {
      transform: scale(1.05);
    }

/* カード内に別のリンクがある場合 */

.linkCard {
  position: relative;

}

.linkCard .linkCard__link::before {
      content:"";
      position: absolute;
      inset: 0;
    }

.linkCard .linkCard__other {
    position: relative;
    z-index: 2;
  }

/* .Shop archives */

.ankerList{
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
}

@media (min-width: 768px){

  .ankerList{
    gap: 1rem;
  }
}

.ankerList-item{
  font-size: 0.8125rem;
  line-height: 1;
}

@media (min-width: 768px){

  .ankerList-item{
    font-size: .875rem;
  }
}

.ankerList-item a{
  display: flex;
  align-items: center;
  gap: 0.5rem;
  white-space: nowrap;
  border-radius: 9999px;
  border-width: 1px;
  border-style: solid;
  --tw-border-opacity: 1;
  border-color: rgb(26 26 26 / var(--tw-border-opacity));
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  padding-left: 1rem;
  padding-right: 1rem;
  --tw-text-opacity: 1;
  color: rgb(26 26 26 / var(--tw-text-opacity));
  text-decoration-line: none;
}

@media (min-width: 768px){

  .ankerList-item a{
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }
}

.ankerList-item a {
    transition: all 0.7s cubic-bezier(0.23, 1, 0.32, 1);
  }

.ankerList-item a i{
  flex: 0,0,.5rem;
}

@media (min-width: 768px){

  .ankerList-item a i{
    flex: 0,0,.75rem;
  }
}

.ankerList-item a i img{
  width: 0.5rem;
}

@media (min-width: 768px){

  .ankerList-item a i img{
    width: 0.75rem;
  }
}

.ankerList-item a i img {
        transition: filter 0.7s cubic-bezier(0.23, 1, 0.32, 1);
      }

.ankerList-item a:hover{
  --tw-bg-opacity: 1;
  background-color: rgb(26 26 26 / var(--tw-bg-opacity));
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity));
}

.ankerList-item a:hover i img {
          filter: invert(100%);
        }

.shopCard a{
  --tw-text-opacity: 1;
  color: rgb(26 26 26 / var(--tw-text-opacity));
  text-decoration-line: none;
}

.shopCard-thumb{
  aspect-ratio: 368/260;
  overflow: hidden;
  border-radius: 0.5rem;
}

.shopCard-thumb img{
  min-height: 100%;
  min-width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}

.shopCard-name{
  margin-top: 1rem;
  display: flex;
  align-items: center;
  gap: 0.25rem;
}

@media (min-width: 768px){

  .shopCard-name{
    gap: 0.5rem;
  }
}

.shopCard-name img{
  height: 1.25rem;
  width: 1.25rem;
}

@media (min-width: 768px){

  .shopCard-name img{
    height: 1.5rem;
    width: 1.5rem;
  }
}

.shopCard-name__text{
  align-items: flex-end;
  gap: 0.25rem;
}

@media (min-width: 768px){

  .shopCard-name__text{
    display: flex;
    gap: 0.5rem;
  }
}

.shopCard-name__text b{
  font-size: .875rem;
}

@media (min-width: 768px){

  .shopCard-name__text b{
    font-size: 1.25rem;
  }
}

.shopCard-name__text span{
  font-size: 0.6875rem;
}

@media (min-width: 768px){

  .shopCard-name__text span{
    font-size: .875rem;
  }
}

.shopCard-data{
  margin-top: 0.75rem;
  font-size: 0.6875rem;
  line-height: 1.25rem;
}

@media (min-width: 768px){

  .shopCard-data{
    margin-top: 1rem;
    font-size: .875rem;
    line-height: 1.75rem;
  }
}

/* Shop page */

.ShopKVarea{
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}

@media (min-width: 768px) {

.ShopKVarea{
    gap: 1rem;
  }
  }

@media (min-width: 640px) {

.ShopKVarea{
    flex-direction: row;
  }
  }

.shopKV {
  flex: 1 1 auto;
  margin: auto;
}

.shopKV__viewport {
  overflow: hidden;
}

.shopKV__container {
  backface-visibility: hidden;
  display: flex;
  touch-action: pan-y pinch-zoom;
  margin-left: calc(1rem * -1);
}

.shopKV__slide {
  flex: 0 0 100%;
  /*height: 10rem;*/
  min-width: 0;
  padding-left: 1rem;
}

@media (min-width: 768px) {

.shopKV__slide {
    /*height: 25rem;*/
    border-radius: 0.5rem
}
  }

.shopKV__slide img,
.shopKV-thumbs__slide img{
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
  aspect-ratio: 4/3;
}

.shopKV__slide img {
  border-radius: 0.5rem;
}

@media (min-width: 640px) {

.shopKV-thumbs {
    flex: 0 0 30%
}
  }

.shopKV-thumbs__container {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  gap: .5rem;
}

@media (min-width: 640px) {

.shopKV-thumbs__container {
    grid-template-columns: 1fr 1fr
}
  }

@media (min-width: 768px) {

.shopKV-thumbs__container {
    gap: 1rem
}
  }

.shopKV-thumbs__slide {
  position: relative;
  min-width: 0;
  cursor: pointer;

}

.shopKV-thumbs__slide img {
  border-radius: 0.25rem;
}

.shopKV-thumbs__slide--selected::after {
  content: '';
  position: absolute;
  bottom: -0.25rem;
  left: 0;
  right: 0;
  display: block;
  width: 0.75rem;
  height: 0.125rem;
  margin: auto;
  background-color: #1A1A1A;
}

@media (min-width: 768px) {

.shopKV-thumbs__slide--selected::after {
    bottom: -0.5rem;
    width: 1rem;
    height: 0.25rem
}
  }

.shopData {
  margin-top: 1.5rem;
}

@media (min-width: 768px) {

.shopData {
    display: flex;
    -moz-column-gap: 4.5rem;
         column-gap: 4.5rem
    /*margin-top: 3.5rem;*/
}
  }

.shopData-text {
  background-color: #FFFFFF;
  border-radius: 8px;
  font-size: 0.875rem;
}

.shopData-text dl div {
      display: flex;
      flex-direction: column;
      padding: 1.5rem;
      border-bottom: 1px solid #f5f5f5;
    }

.shopData-text dl div dt {
        font-size: 0.75rem;
        font-weight: 500;
      }

.shopData-text dl div dd {
        flex: auto;
        margin-top: 0.5rem;
        font-weight: 400;
      }

@media (min-width: 768px) {

.shopData-text {
    width: 36rem
}
      .shopData-text dl div {
        flex-direction: row;
        align-items: center;
        -moz-column-gap: 1.5rem;
             column-gap: 1.5rem;
        padding: 1.5rem 2.5rem;
      }

        .shopData-text dl div dt {
          flex:0 0 6.5rem;
          font-size: inherit;


        }
        .shopData-text dl div dd {
          flex: auto;
          margin-top: 0;
        }
  }

.shopData-map {
  margin-top: 1.5rem;
}

.shopData-map iframe {
    width: 100%;
    height: 20rem;
  }

@media (min-width: 768px) {

.shopData-map {
    flex: auto;
    margin-top: 0
}

    .shopData-map iframe {
     height: 30rem;
    }
  }

.trainerCard a{
  --tw-text-opacity: 1;
  color: rgb(26 26 26 / var(--tw-text-opacity));
  text-decoration-line: none;
}

.trainerCard-thumb{
  aspect-ratio: 360/510;
  overflow: hidden;
  border-radius: 0.5rem;
}

.trainerCard-thumb img{
  min-height: 100%;
  min-width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}

.trainerCard-name{
  margin-top: 0.5rem;
  text-align: center;
  font-size: 0.8125rem;
  font-weight: 500;
}

@media (min-width: 768px){

  .trainerCard-name{
    font-size: 1.125rem;
  }
}

.Trainers .TrainerProfile {
    padding-top: 3.5rem;
  }

@media (min-width: 768px) {

.Trainers .TrainerProfile {
      padding-top: 7rem
  }

.TrainerProfile {
    display: flex;
    margin: 0 3.5rem
}
    .TrainerProfile:nth-child(odd) {
      flex-direction: row-reverse;
    }

.TrainerPhotos {
    flex: 0 0 22.5rem
}

.TrainerData {
    flex: auto
}
    }

.TrainerData-name {
  display: flex;
  align-items: center;
  -moz-column-gap: 1.25rem;
       column-gap: 1.25rem;
  padding-bottom: 1.25rem;
  border-bottom: 1px solid #1a1a1a;
}

@media (min-width: 768px) {

.TrainerData-name {
    -moz-column-gap: 1.5rem;
         column-gap: 1.5rem;
    padding-bottom: 2.5rem
}
    .TrainerProfile:nth-child(even) .TrainerData-name {
      padding-right: 7rem;
    }
    .TrainerProfile:nth-child(odd) .TrainerData-name {
      padding-left: 7rem;
    }
  }

.TrainerData-name__icon {
  flex: 0 0 4.5rem;
  width: 4.5rem;
  height: 4.5rem;
  border-radius: 50%;
  overflow: hidden;
}

@media (min-width: 768px) {

.TrainerData-name__icon {
    flex: 0 0 6.5rem;
    width: 6.5rem;
    height: 6.5rem
}
  }

.TrainerData-name__icon img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
    -o-object-position: center;
       object-position: center;
  }

.TrainerData-name__name span {
    display: block;
    font-family: Roboto, sans-serif;
    font-size: 0.75rem;
    font-weight: 500;
    line-height: 1;
    letter-spacing: 0.08em;
  }

.TrainerData-name__name b {
    display: block;
    font-size: 1.5rem;
    font-weight: bold;
  }

@media (min-width: 768px) {
    .TrainerData-name__name span {
      font-size: 0.875rem;
    }
    .TrainerData-name__name b {
      font-size:2.5rem;
    }
  }

.TrainerData-status {
  margin-top: 1.25rem;
  font-size: 0.75rem;
}

@media (min-width: 768px) {

.TrainerData-status {
    margin-top: 2.5rem;
    font-size: 1rem
}
  }

.TrainerData-text {
  display: grid;
  grid-row-gap: 1rem;
  margin-top: 1.5rem;
  padding: 1.15rem;
  background-color: #ffffff;
  font-size: 0.875rem;
  border-radius: 0.5rem;
}

@media (min-width: 768px) {

.TrainerData-text {
    margin-top: 2.5rem;
    padding: 2.5rem;
    font-size: 1rem
}
    .TrainerProfile:nth-child(even) .TrainerData-status,
    .TrainerProfile:nth-child(even) .TrainerData-text{
      margin-right: 7rem;
    }
    .TrainerProfile:nth-child(odd) .TrainerData-status,
    .TrainerProfile:nth-child(odd) .TrainerData-text{
      margin-left: 7rem;
    }
  }

.TrainerPhotos {
  max-width: 22.5rem;
  width: 65vw;
  aspect-ratio: 22.5/33.375;
  margin: 2.5rem auto 0;
}

@media (min-width: 768px) {

.TrainerPhotos {
    width: 22.5rem;
    height: calc(31.875rem + 1.5rem);
    margin-top: 0
}
  }

.TrainerPhotos__viewport {
  overflow: hidden;
}

.TrainerPhotos__container {
  backface-visibility: hidden;
  display: flex;
  touch-action: pan-y pinch-zoom;
}

.TrainerPhotos-item {
  flex: 0 0 65vw;
  min-width: 0;
}

@media (min-width: 768px) {

.TrainerPhotos-item {
    flex: 0 0 22.5rem
}
  }

.TrainerPhotos-item img {
    -o-object-fit: cover;
       object-fit: cover;
    -o-object-position: center;
       object-position: center;
    min-width: 100%;
    min-height: 100%;
    border-radius: 0.5rem;
  }

.TrainerPhotos__dots {
  display: flex;
  flex-wrap: nowrap;
  justify-content: center;
  align-items: center;
  -moz-column-gap: 0.5rem;
       column-gap: 0.5rem;
  margin: 1rem auto 0;
}

.TrainerPhotos__dot {
  -webkit-tap-highlight-color: gray;
  -webkit-appearance: none;
  -moz-appearance: none;
       appearance: none;
  background-color: transparent;
  touch-action: manipulation;
  display: inline-flex;
  text-decoration: none;
  cursor: pointer;
  border: 0;
  padding: 0;
  margin: 0;
  width: 0.5rem;
  height: 0.5rem;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
}

.TrainerPhotos__dot::after {
  background-color: #d9d9d9;
  width: 0.5rem;
  height: 0.5rem;
  border-radius: 50%;
  display: flex;
  align-items: center;
  content: '';
}

.TrainerPhotos__dot--selected::after {
  background-color: #1a1a1a;

}

.labCard a{
  --tw-text-opacity: 1;
  color: rgb(26 26 26 / var(--tw-text-opacity));
  text-decoration-line: none;
}

.labCard-thumb{
  aspect-ratio: 368/260;
  overflow: hidden;
  border-radius: 0.5rem;
}

.labCard-thumb img{
  min-height: 100%;
  min-width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}

.labCard-text{
  margin-top: 1rem;
}

.labCard-text__time{
  font-size: 0.6875rem;
}

@media (min-width: 768px){

  .labCard-text__time{
    font-size: .875rem;
  }
}

.labCard-text__title{
  margin-top: 0.5rem;
  font-size: 0.8125rem;
}

@media (min-width: 768px){

  .labCard-text__title{
    font-size: 1.25rem;
  }
}

.labCard-text__text{
  margin-top: 0.5rem;
  font-size: 0.6875rem;
  line-height: 1rem;
  --tw-text-opacity: 1;
  color: rgb(128 128 128 / var(--tw-text-opacity));
}

@media (min-width: 768px){

  .labCard-text__text{
    margin-top: 1rem;
    font-size: .875rem;
    line-height: 1.25rem;
  }
}

.Form_box{
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.75rem;
  padding-top: 1.5rem;
  padding-bottom: 1.5rem;
}

@media (min-width: 768px){

  .Form_box{
    padding-left: 1.5rem;
    padding-right: 1.5rem;
    flex-direction: row;
    gap: 1.5rem;
  }
}

.Form_box{
  border-bottom: 1px solid #D9D9D9;
}

.Form_box.-noline {
    border-bottom: none;
  }

.Form_box small{
  font-size: 0.8125rem;
  --tw-text-opacity: 1;
  color: rgb(128 128 128 / var(--tw-text-opacity));
}

.Form_box a{
  color: inherit;
}

.Form_box .wpcf7-not-valid-tip{
  font-size: .875rem;
  --tw-text-opacity: 1;
  color: rgb(220 38 38 / var(--tw-text-opacity));
}

.Form_box .wpcf7-form-control-wrap .wpcf7-not-valid{
  --tw-bg-opacity: 1;
  background-color: rgb(254 242 242 / var(--tw-bg-opacity));
}

.Form_box__label{
  font-size: .875rem;
  font-weight: 500;
}

@media (min-width: 768px) {

.Form_box__label{
    flex: 0 0 240px;
    font-size: 1rem;
  }

.Form_box__input{
    width: 100%;
  }
  }

.Form_box__input input,.Form_box__input textarea,.Form_box__input select{
  width: 100%;
  border-radius: 0.375rem;
  border-width: 1px;
  border-style: solid;
  --tw-border-opacity: 1;
  border-color: rgb(128 128 128 / var(--tw-border-opacity));
  padding: 0.5rem;
}

@media (min-width: 768px) {

.Form_box__input{
    flex: 1 1 auto;
  }
  }

.Form_button{
  position: relative;
  margin-top: 2rem;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
}

@media (min-width: 768px){

  .Form_button{
    gap: 1.5rem;
  }
}

.Form_button input{
  margin-left: 0.5rem;
  margin-right: 0.5rem;
  display: inline-flex;
  width: 10rem;
  cursor: pointer;
  align-items: center;
  justify-content: center;
  border-radius: 9999px;
  border-width: 1px;
  --tw-bg-opacity: 1;
  background-color: rgb(26 26 26 / var(--tw-bg-opacity));
  padding: 0.75rem;
  font-size: 1.25rem;
  font-weight: 700;
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity));
    transition: all 0.4s cubic-bezier(0.23, 1, 0.32, 1);
}

.Form_button input:focus-visible {
      outline: 2px solid #1a1a1a;
    }

.Form_button input:hover{
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity));
  --tw-text-opacity: 1;
  color: rgb(26 26 26 / var(--tw-text-opacity));
}

.Form_button .wpcf7-spinner {
     position: absolute;
   }

.pageContent .wpcf7 form .wpcf7-response-output{
  margin-top: 1.5rem;
  border-width: 0px;
  text-align: center;
  font-size: 1rem;
  --tw-text-opacity: 1;
  color: rgb(220 38 38 / var(--tw-text-opacity));
}

.pageContent .screen-reader-response{
  padding-bottom: 1.5rem;
}

.pageContent .screen-reader-response p{
  text-align: center;
  font-size: 1rem;
}

.pageContent .screen-reader-response ul{
  display: none;
}

.pageContent .require{
  margin-left: 0.5rem;
  padding-left: 0.25rem;
  padding-right: 0.25rem;
  font-size: 0.8125rem;
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity));
    background: linear-gradient(90deg, #ef3920 0%, #f28d16 100%);
}

.Installment {

}

.Installment_box {
  border: 1px solid #E6E6E6;
  border-radius: 0.5rem;
  padding-top: 2rem;
  padding-bottom: 2rem;
  padding-left: 1.5rem;
  padding-right: 1.5rem;
}

@media (min-width: 768px){

  .Installment_box{
    padding-top: 3.5rem;
    padding-bottom: 3.5rem;
    padding-left: 104px;
    padding-right: 104px;
  }
}

.Installment_box h3{
  text-align: center;
  font-size: 1.125rem;
  font-weight: 900;
}

@media (min-width: 768px){

  .Installment_box h3{
    font-size: 1.625rem;
  }
}

.Installment_box > p{
  margin-top: 1.5rem;
  font-size: .875rem;
  line-height: 1.75rem;
}

@media (min-width: 768px){

  .Installment_box > p{
    font-size: 1rem;
  }
}

.Installment_box__card{
  margin-top: 1.5rem;
  padding-top: 1.5rem;
  padding-bottom: 1.5rem;
  padding-left: 1.5rem;
  padding-right: 1.5rem;
}

@media (min-width: 768px){

  .Installment_box__card{
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1.5rem;
    padding-left: 2.5rem;
    padding-right: 2.5rem;
  }
}

.Installment_box__card {
  background-color: #F5F5F5;
}

.Installment_box__card figure{
  margin-top: 1.25rem;
  margin-bottom: 0px;
  flex-grow: 0;
}

@media (min-width: 768px){

  .Installment_box__card figure{
    margin-top: 0px;
  }
}

.Installment_box__card figure figcaption{
  font-size: 0.6875rem;
}

@media (min-width: 768px){

  .Installment_box__card figure figcaption{
    font-size: 0.8125rem;
  }
}

.Installment_box__card figure img{
  margin-top: 1rem;
  width: 100%;
  max-width: 336px;
}

.Installment_box__card h4{
  flex: 1 1 auto;
  font-size: .875rem;
  font-weight: 700;
}

@media (min-width: 768px){

  .Installment_box__card h4{
    font-size: 1.125rem;
    line-height: 1.75rem;
  }
}

.Installment_memo{
  margin-top: 1rem;
}

.Installment_memo small{
  display: block;
  font-size: 0.6875rem;
  line-height: 1.25rem;
}

.\!fixed{
  position: fixed !important;
}

.fixed{
  position: fixed;
}

.absolute{
  position: absolute;
}

.relative{
  position: relative;
}

.-top-5{
  top: -1.25rem;
}

.-mt-10{
  margin-top: -2.5rem;
}

.mt-10{
  margin-top: 2.5rem;
}

.mt-12{
  margin-top: 3rem;
}

.mt-14{
  margin-top: 3.5rem;
}

.mt-20{
  margin-top: 5rem;
}

.mt-3{
  margin-top: 0.75rem;
}

.mt-4{
  margin-top: 1rem;
}

.mt-6{
  margin-top: 1.5rem;
}

.mt-8{
  margin-top: 2rem;
}

.flex{
  display: flex;
}

.grid{
  display: grid;
}

.hidden{
  display: none;
}

.aspect-\[368\/260\]{
  aspect-ratio: 368/260;
}

.h-10{
  height: 2.5rem;
}

.min-h-full{
  min-height: 100%;
}

.w-16{
  width: 4rem;
}

.min-w-full{
  min-width: 100%;
}

.resize{
  resize: both;
}

.grid-cols-1{
  grid-template-columns: repeat(1, minmax(0, 1fr));
}

.grid-cols-2{
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.place-content-center{
  place-content: center;
}

.items-center{
  align-items: center;
}

.gap-14{
  gap: 3.5rem;
}

.gap-2{
  gap: 0.5rem;
}

.gap-6{
  gap: 1.5rem;
}

.gap-7{
  gap: 1.75rem;
}

.overflow-hidden{
  overflow: hidden;
}

.rounded-lg{
  border-radius: 0.5rem;
}

.bg-black{
  --tw-bg-opacity: 1;
  background-color: rgb(26 26 26 / var(--tw-bg-opacity));
}

.object-cover{
  -o-object-fit: cover;
     object-fit: cover;
}

.object-center{
  -o-object-position: center;
     object-position: center;
}

.px-7{
  padding-left: 1.75rem;
  padding-right: 1.75rem;
}

.py-10{
  padding-top: 2.5rem;
  padding-bottom: 2.5rem;
}

.text-center{
  text-align: center;
}

.text-right{
  text-align: right;
}

.font-en{
  font-family: Roboto, sans-serif;
}

.text-3xl{
  font-size: 1.875rem;
  line-height: 2.25rem;
}

.text-base{
  font-size: 1rem;
}

.text-sm{
  font-size: .875rem;
}

.text-xl{
  font-size: 1.25rem;
}

.text-xxs{
  font-size: 0.6875rem;
}

.font-black{
  font-weight: 900;
}

.font-bold{
  font-weight: 700;
}

.not-italic{
  font-style: normal;
}

.leading-7{
  line-height: 1.75rem;
}

.tracking-wider{
  letter-spacing: 0.05em;
}

.text-white{
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity));
}

@media (min-width: 640px){

  .sm\:grid-cols-2{
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .sm\:grid-cols-3{
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (min-width: 768px){

  .md\:mx-12{
    margin-left: 3rem;
    margin-right: 3rem;
  }

  .md\:mt-14{
    margin-top: 3.5rem;
  }

  .md\:mt-16{
    margin-top: 4rem;
  }

  .md\:mt-20{
    margin-top: 5rem;
  }

  .md\:mt-24{
    margin-top: 6rem;
  }

  .md\:mt-28{
    margin-top: 7rem;
  }

  .md\:mt-40{
    margin-top: 10rem;
  }

  .md\:mt-6{
    margin-top: 1.5rem;
  }

  .md\:w-40{
    width: 10rem;
  }

  .md\:grid-cols-3{
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .md\:grid-cols-4{
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  .md\:gap-10{
    gap: 2.5rem;
  }

  .md\:gap-14{
    gap: 3.5rem;
  }

  .md\:px-14{
    padding-left: 3.5rem;
    padding-right: 3.5rem;
  }

  .md\:px-6{
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }

  .md\:py-20{
    padding-top: 5rem;
    padding-bottom: 5rem;
  }

  .md\:text-3xl{
    font-size: 1.875rem;
    line-height: 2.25rem;
  }

  .md\:text-sm{
    font-size: .875rem;
  }
}
