@charset "UTF-8";

/* ここから追記 */



/* 追記
------------------ */

.accordion-p__content.js-accordion-target.-open:nth-of-type(2) h5.plan__details__table__title{
  margin-left: 1px !important;
  display: none !important;
}

/* トップ
------------------ */

.global_campaign{
      position: absolute;
      bottom:100px;
      right: 0;
      z-index: 9999;
}


/* 名古屋トップ
------------------ */

.global_campaign_002{
      position: absolute;
      top:85vh;
      right: 0;
      z-index: 9999;
}
/* ボードピラティス
------------------ */
.btn_util-bordpilates,
a.btn_util-bordpilates {
  color: #fff !important;
  border: 1px solid #26468b;
  background-color: #26468b;
}


.contents_wallbord{
  margin: 3vh auto;
}

.btn_util-wrap-tmp.btn_center {
    width: fit-content;
    margin: auto;

}

.img_wallbord{
  display: flex;
  justify-content: space-around;
}
.img_wallbord p{
    width: 320px;
}
.img_wallbord p img{
  width: 100%;
}

.contents-lead-title.helvetica.wallbord{
  color: #26468b !important;
}




  /* ========== オーバーレイ ========== */
  .popup-overlay {
    display: none;
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,0.4);
    z-index: 100;
  }

  /* ========== ポップアップ ========== */
  .popup {
    display: none;
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%) scale(0.96);
    width: min(500px, 92vw);
    max-height: 90vh;
    overflow-y: auto;
    background: #fff;
    border: 1px solid #e0e0e0;
    border-radius: 12px;
    z-index: 101;
    opacity: 0;
    transition: opacity 0.2s, transform 0.2s;
  }
  .popup.open {
    opacity: 1;
    transform: translate(-50%, -50%) scale(1);
  }

  /* 画像エリア */
  .popup-image {
    width: 100%;
    aspect-ratio: 16 / 9;
    object-fit: cover;
    border-radius: 12px 12px 0 0;
    display: block;
    background: #eee;
  }
  /* 画像なし時のプレースホルダー */
  .popup-image-placeholder {
    width: 100%;
    aspect-ratio: 16 / 9;
    background: #f0f0f0;
    border-radius: 12px 12px 0 0;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #bbb;
    font-size: 13px;
  }

  /* テキストエリア */
  .popup-body {
    padding: 20px 24px 24px;
  }
  .popup-close {
    position: absolute;
    top: 10px;
    right: 10px;
    background: rgba(0,0,0,0.4);
    border: none;
    cursor: pointer;
    font-size: 18px;
    color: #fff;
    width: 32px;
    height: 32px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    line-height: 1;
    transition: background 0.15s;
  }
  .popup-close:hover { background: rgba(0,0,0,0.65); }

  .popup-tag-wrap { margin-bottom: 10px; }
  .popup-tag {
    font-size: 11px;
    font-weight: 500;
    padding: 3px 10px;
    border-radius: 99px;
  }
  .popup-tag.yoga    { background: #E1F5EE; color: #0F6E56; }
  .popup-tag.pilates { background: #E6F1FB; color: #185FA5; }
  .popup-tag.pelvis  { background: #FAEEDA; color: #854F0B; }

  .popup-title {
    font-size: 17px;
    font-weight: 500;
    color: #222;
    margin: 0 0 8px;
    line-height: 1.4;
  }
  .popup-level {
    font-size: 12px;
    color: #888;
    margin: 0 0 12px;
  }
  .popup-desc {
    font-size: 13px;
    color: #333;
    line-height: 1.7;
    margin: 0 0 12px;
  }
  .popup-recommend {
    font-size: 12px;
    color: #666;
    background: #f6f6f6;
    border-radius: 8px;
    padding: 10px 12px;
    line-height: 1.6;
    margin: 0;
  }


  .popup-close {
    position: absolute;
    top: 10px;
    right: 10px;
    background: rgba(0, 0, 0, 0.4);
    border: none;
    cursor: pointer;
    font-size: 18px;
    color: #fff;
    width: 32px;
    height: 32px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    line-height: 1;
    transition: background 0.15s;
}
.ti-x:before {
    content: "×";
}

.monthly_plan__list__item.bordpilates_plan{
    background: #26468b;
    color: #fff;
}
.table_bordpilates{
    margin: 0 auto 2vh;
    text-align: center;

}
.table_bordpilates th{
  width: 500px;
    padding: 15px;
    background: #26468b;
    /* border:12px solid #fff; */
    color: #fff;
    font-size: 25px;
}
.table_bordpilates td{
  padding: 15px;
    color: #26468b;
    font-weight: bold;
    font-size: 25px;
    
    border:1px solid #26468b;
}
.table_bordpilates .mainprice{
    font-size: 6.5rem;
    font-weight: 400;
    line-height: 6rem;
}
.table_bordpilates_002{
  border-collapse: separate;
}
    
.table_bordpilates_002 th{
  padding: 15px 10px;
  background: #F8F8F5;
  font-weight: bold;
  white-space: nowrap;
}

.table_bordpilates_002 th.head{
  width: 45%;
  padding: 15px 10px;
  font-weight: bold;
  white-space: nowrap;
  background: #D8DDE5;
}

.table_bordpilates_002 tr td {
    padding: 20px;
    border-bottom: 1px solid #e5e5e5;
    border-right: 1px solid #e5e5e5;
    word-break: break-all;
}

.global_plunnav{
  max-width: 1000px;
  margin: 0 auto;
  display: flex;
  justify-content: space-around;
  flex-wrap: wrap;
  gap: 10px;
}
.global_plunnav li{
  width: 23%;
}

.global_plunnav a{
  padding: 14px 16px;
  letter-spacing: 0.04em;
  display: flex;
  justify-content: space-between;
  align-items: center;
  
  border: 1px solid #e0d8cc;
  border-radius: 3px;
  background: #faf8f4;
  font-size: 15px;
  text-decoration: none;
  transition: background 0.15s;
}
.global_plunnav a::after {
  content: "";
  width: 6px;
  height: 6px;
  border-top: 1.5px solid currentColor;
  border-right: 1.5px solid currentColor;
  transform: rotate(45deg);
  opacity: 0.6;
}
.global_plunnav a:hover {
  background: #f0e8da;
}

@media screen and (max-width: 800px) {
  .main_content-price .compare_plan {
    margin-bottom: 40px;
}

.compare_plan_002{
  overflow-x: scroll;
}
.table_bordpilates_002{
    width: 500px;
}
.compare_plan_002 .th-scroll{
    width: 10%;
    position: sticky;
    left: 0px;
    font-size: 1.2rem;
    vertical-align: middle;
    box-shadow: rgba(0, 0, 0, 0.06) 0px 1.9px 2.5px,
    rgba(0, 0, 0, 0.075) 0px 5px 6.1px,
    rgba(0, 0, 0, 0.086) 0px 10.1px 11.4px,
    rgba(0, 0, 0, 0.09) 0px 19.2px 19.8px,
    rgba(0, 0, 0, 0.1) 0px 38.4px 34.8px,
    rgba(0, 0, 0, 0.13) 0px 101px 74px;

}
  

.table_bordpilates_002 th.head{
  width: 30%;
}
.global_plunnav li{
  width: 48%;
}

.table_bordpilates th {
  font-size: 14px;
}
.table_bordpilates .intax_price {
font-size: 12px;
}
.table_bordpilates .mainprice {
  font-size: 28px;
}
}


.global_suggest_area{
    width: 100%;
    max-width: 1200px;
    margin: auto;
}
.main_content-welcome-programs .contents-block-effect-title {
    font-size: 2.5rem !important;
    line-height: 5rem;
    padding-top: 15px;
    margin-bottom: 60px;
}
.global_suggest_area h3{
  margin-bottom: 1vh;
  font-weight: bold;
}


.btn_flex {
    display: flex;
    justify-content: space-around;
}

    .btn_flex p {
    width: 350px;
}

    .btn_green {
    width: 100%;
    padding: 4px 4px;
    background: #18AA9B;
    border: 1px solid #f6f6f5;
    display: block;
    text-align: center;
    text-decoration: none !important;
    color: #fff;
}


    body .btn_green_002 {
    width: 100%;
    padding: 16px 4px;
    background: #18AA9B;
    border: 1px solid #f6f6f5;
    display: block;
    text-align: center;
    text-decoration: none !important;
    color: #fff !important;
    margin: 3vh auto;
    font-size: var(--global-f-base);
    border-radius: 50px;
    text-decoration: none !important;
}

   .btn_gray {
    width: 100%;
    padding: 4px 4px;
    background: #f6f6f5;
    border: 1px solid #f6f6f5;
    display: block;
    text-align: center;
    text-decoration: none !important;
    color: #000;
}

.global_campaign_studio{

    width: 700px;
    padding: 16px 4px;
    background: #18AA9B;
    border: 1px solid #f6f6f5;
    display: block;
    text-align: center;
    text-decoration: none !important;
    color: #fff !important;
    margin: 3vh auto;
    font-size: var(--global-f-base);
    border-radius: 50px;
    text-decoration: none !important;
  font-size: 30px;
}

section.banner-section.section {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
}

.global_campaign_003 a{
    width: 600px;
    padding: 10px 10px;
    border: 1px solid #26468b;
    background-color: #26468b;
    display: block;
    text-align: center;
    text-decoration: none !important;
    color: #fff !important;
    margin: 0 auto 3vh;
    font-size: var(--global-f-base);
    border-radius: 6px;
    text-decoration: none !important;
    font-size: 30px;

}


.main_content-welcome-programs .contents-block-lead.wallbord {
  background: url(../images/welcome/boardpilates/welcome-bg-wallboardpilates.jpg) no-repeat top center;
  background-size: cover;
}

@media screen and (max-width: 599px) {
  .main_content-welcome-programs .contents-block-lead.wallbord {
    background: url(../images/welcome/boardpilates/welcome-bg-wallboardpilates_sp.jpg) no-repeat top center;
    background-size: cover;
  }
}




/* ボードピラティス料金表
------------------ */

.board-pilates-plan {
   margin-top: 40px;
   margin-bottom: 40px;
   padding-top: 20px;
   padding-bottom: 20px;   
   border-top: 1px solid #e8e8e8;
   border-bottom: 1px solid #e8e8e8;
}
.board-pilates-table {
   width: 100%;
   border-collapse: collapse;
   font-size: 13px;
   line-height: 1.6;
}
.board-pilates-table th,
.board-pilates-table td {
   border: 1px solid #ddd;
   padding: 10px 14px;
   vertical-align: top;
}
.board-pilates-table thead th {
   background: #f5f5f5;
   font-weight: bold;
   text-align: center;
   font-size: 12px;
   color: #555;
}
.board-pilates-table .th-title {
   background: #fafafa;
   font-weight: bold;
   white-space: nowrap;
   width: 1%;
}
.board-pilates-table tbody tr:nth-child(even) td,
.board-pilates-table tbody tr:nth-child(even) th {
   background: #fafafa;
}
.board-tax {
   font-weight: bold;
   color: #333;
}

/* スマホ対応（768px以下） */
@media only screen and (max-width: 768px) {
   .board-pilates-table,
   .board-pilates-table thead,
   .board-pilates-table tbody,
   .board-pilates-table th,
   .board-pilates-table td,
   .board-pilates-table tr {
      display: block;
   }
   .board-pilates-table thead {
      display: none;
   }
   .board-pilates-table tbody tr {
      border: 1px solid #ddd;
      margin-bottom: 12px;
   }
   .board-pilates-table tbody th.th-title {
      background: #efefef;
      font-weight: bold;
      white-space: normal;
      width: auto;
      border-bottom: 1px solid #ddd;
   }
   .board-pilates-table tbody td {
      border: none;
      border-bottom: 1px solid #f0f0f0;
      padding: 8px 12px;
   }
   .board-pilates-table tbody td:last-child {
      border-bottom: none;
   }
   .board-pilates-table tbody td::before {
      display: block;
      font-size: 11px;
      color: #999;
      margin-bottom: 3px;
      font-weight: bold;
   }
   .board-pilates-table tbody tr td:nth-child(2)::before { content: "料金"; }
   .board-pilates-table tbody tr td:nth-child(3)::before { content: "yoggy air 特典"; }
   .board-pilates-table tbody tr td:nth-child(4)::before { content: "備考"; }


   .page_top .global_campaign a img{
     width: 150px;
   }
   
   .main_content-program.list .list-inner .star-pos {
   position: static !important;

}
  .main_content-program.list .list-inner .list-wrap dl{
    display: flex;
    align-items: center;
}

/* 名古屋トップ 768
------------------ */

.global_campaign_002{
      top:95vh;
}

.global_campaign_002 img{
      max-width: 150px;
}


.global_campaign_003 a{
    max-width: 95%;
    padding: 10px 10px;
    border: 1px solid #26468b;
    background-color: #26468b;
    display: block;
    text-align: center;
    text-decoration: none !important;
    color: #fff !important;
    margin: 0 auto 3vh;
    font-size: var(--global-f-base);
    border-radius: 6px;
    text-decoration: none !important;
    font-size: 18px;

}


}