@charset "UTF-8";

/* ========================================================
/pilates/  About Pilates
======================================================== */
.about_pilates_page_head::before {
  background-image: url(/imgs/pilates/pilates_bg_sp.jpg);
}

/* コンテンツ */
.ap_box {
  padding: 3em 0;
}
.ap_cont {
  padding: 0 0 3em;
}
.ap_ttl_box {
  padding: 0 0 4em;
}
.ap_lead {
  padding: 0.1em 0.7em;
  margin: 0 0 0.8em;
  font-size: 1.4em;
  background: transparent;
  border-left: solid 3px var(--color-pink);
}
.ap_ttl {
  font-size: 2em;
  padding: 1.4em 0 1.5em 1em;
  position: relative;
  /* display: inline-block; */
}
.ap_ttl::before {
  content: "";
  width: 20px;
  height: 30px;
  position: absolute;
  display: inline-block;
  border-left: solid 1px var(--color-black);
  border-top: solid 1px var(--color-black);
  top: 0;
  left: 0;
}
.ap_ttl_ja {
  display: block;
}
.ap_ttl_en {
  font-size: 0.8em;
  font-weight: 400;
  color: var(--color-grey2);
}
.ap_txt_box li {
  padding: 0 0 3em;
}
.ap_txt {
  font-size: 1.2em;
  letter-spacing: 0.1em;
  line-height: 1.7em;
  display: block;
}
.ap_txt._pa {
  padding: 1.5em 0 0;
}
.ap_img_box img {
  object-fit: cover;
  width: 100%;
  aspect-ratio: 1 / 1;
}

/* 生徒様の声 */
.user_voice_block {
  background-color: #ffffffbf;
  overflow: hidden;
}
.user_txt {
  border-top: 1px solid var(--color-grey2);
  border-bottom: 1px solid var(--color-grey2);
  padding: 1.5em 0 1.5em 0.5em;
  font-size: 1.2em;
  line-height: 1.8em;
}
.user_txt._left {
  padding: 1.5em 0 1.5em 7em;
}
.user_name {
  display: block;
  color: var(--color-grey2);
  padding: 1em 0;
  font-size: 1em;
}
.user_name._left {
  padding: 1em 0 0 8em;
}
.user_voice_li {
  position: relative;
  padding: 2em 0;
}
.user_img_right,
.user_img_left {
  position: absolute;
  width: 45%;
  bottom: 2em;
}
.user_img_right {
  right: -3em;
}
.user_img_left {
  left: -3em;
}

@media (min-width: 769px) {
  .about_pilates_page_head::before {
    background-image: url(/imgs/pilates/pilates_bg_pc.jpg);
  }

  .ap_box {
    display: flex;
    justify-content: space-between;
    position: inherit;
    padding: 3em 0 8em;
  }
  .ap_box:nth-child(2) {
    flex-direction: row-reverse;
  }
  .ap_cont {
    width: 50%;
  }
  .ap_img_box {
    width: 45%;
  }
  .ap_img_box img {
    height: 90%;
    position: absolute;
    right: -6em;
    top: 3em;
  }
  .ap_img_box._02 img {
    right: 6em;
    top: .5em;
  }

  .user_voice_ul {
    display: flex;
    justify-content: space-between;
    width: 100%;
  }
  .user_txt._left {
    padding: 1.5em 0 1.5em 0.5em;
  }
  .user_name,
  .user_name._left {
    padding: 1em 0 0 .7em;
  }
  .user_img_left {
    left: inherit;
    right: -2em;
  }
  .user_voice_li {
    width: 30%;
  }
  .blog_ap_block{
    padding: 8em 0 5em;
  }
  .user_voice_block{
    padding: 5em 0 6em;
  }
}


/* ========================================================
PICK UP LESSON
======================================================== */

.program_page .beg_head_block {
  padding: 2em 0 6em;
  border-bottom: 1px solid var(--color-grey);
}
.program_sec_ttl {
  font-size: 2.6rem;
  font-weight: 400;
  padding: 0.5rem 0 1rem;
  letter-spacing: 1.2px;
  color: var(--color-black);
  border-top: 1px solid var(--color-grey2);
  /* border-bottom: 1px solid var(--color-grey2); */
}

.program_sec_ttl.en {
  display: block;
  line-height: 1.2;
  font-weight: 400;
}
.program_sec_ttl .ja {
  display: block;
  font-size: 0.45em;
  font-weight: 500;
  /* margin-top: 0.3em; */
  /* color: #666; */
}
.program_sec_ttl .ja::before {
  content: "\eb7b";
  font-family: "remixicon" !important;
  font-style: normal;
  font-size: 1.5em;
  color: var(--color-pink);
  padding-right: 0.2em;
  -webkit-font-smoothing: antialiased;
}
.program_sec_ttl .ja::after {
  content: "\ea4e";
  font-family: "remixicon" !important;
  font-style: normal;
  font-size: 2em;
  color: var(--color-grey);
  -webkit-font-smoothing: antialiased;
  position: absolute;
  right: 0;
}
._open .program_sec_ttl .ja::after {
  content: "\ea4e";
  transform: rotate(-0.25turn);
  transition: .5s;
}
.program_sec {
  padding: 0;
}
.program_sec._level ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  width: 92%;
  gap: 1em;
  padding: 1em 0;
  margin: 0 auto;
}
.program_sec._level li {
  border: 0.8px solid var(--color-black);
  background-color: #ffffff4d;
  /* width: 48%; */
  padding: 1em;
  padding: 1em 2em 1.5em;
  font-size: 1.15em;
  border-radius: 1em;
  border-radius: 0.4em;
}
.program_sec._level li span {
  font-size: 0.6em;
  display: block;
  font-weight: 300;
  letter-spacing: 2px;
  font-weight: bold;
}
.program_lead {
  font-size: 2rem;
  font-weight: 400;
  text-align: center;
  padding: 0 0 0.5em;
}
.program_lead_desc {
  font-size: 1.15rem;
  letter-spacing: 0;
  line-height: 1.9;
  padding: 1.5em 0 1em;
  position: relative;
  z-index: 10;
}
.program_lead_desc._l {
  font-size: 1.5rem;
  font-weight: 600;
  margin: 0;
  padding: 0;
}
.program_head_ttl {
  font-size: 1.5em;
  /* padding: 1.5em 0; */
  line-height: 1.8;
}
.program_head_ttl .tline {
  display: block;
  padding: 0 0 1em;
}
.program_block {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  padding: 2em 0;
  gap: 1em;
}
.program_box {
  width: 100%;
  transition: opacity 0.5s;
  font-size: 1.3rem;
}
.program_box_ttl {
  padding: 1em 0 0.5em;
  font-size: 1.8em;
  font-weight: 500;
}
.program_ttl {
  font-size: 1.6em;
  font-weight: 400;
}
.program_img_box {
  aspect-ratio: 3 / 2;
  border-radius: 0.2em;
  overflow: hidden;
  margin-bottom: 0.1em;
  position: relative;
}
.dancer_img {
  object-fit: cover;
  height: 100%;
}
.program_class {
  font-size: 0.5em;
  line-height: 1.6;
  padding: 0 0 1em;
}
.program_detail_box {
  /* text-align: center; */
  letter-spacing: 0.02em;
  padding: 0.5em 0;
  text-align: center;
}
.blog-category-list{
  display: none;
}
/* .program_lead_wrap{
  display: none;
} */
._open .program_lead_wrap{
  display: inline;
}

@media (min-width: 769px) {
  .blog-category-list,
  .blogpost-school-link {
    margin: 3em 0;
  }
  .blog-category-list li a,
  .blogpost-school-link li a {
    /* display: block; */
    position: relative;
    padding: 0.5em 0;
    /* border-bottom: 1px dashed #ccc; */
    line-height: 1.4;
    font-size: 1.2rem;
    font-weight: 400;
    color: var(--color-black);
  }
  .blog-category-list li::before {
    content: "\eb7b";
    font-family: "remixicon" !important;
    font-style: normal;
    font-size: 1.6em;
    color: var(--color-pink);
    padding-right: 0.2em;
    -webkit-font-smoothing: antialiased;
  }
  .blog-category-list a.active,
  .blog-category-list li a:hover,
  .blogpost-school-link li a:hover {
    /* text-decoration:underline; */
    color: var(--color-pink);
  }
  .blog-category-list li i,
  .blogpost-school-link li i {
    position: absolute;
    right: 0;
    top: 0;
    bottom: 0;
    margin: auto;
    height: fit-content;
    filter: var(--filter-wg);
  }

  .blog_pc_wrap {
    display: flex;
    justify-content: space-between;
  }
  .blog_pc_left_block {
    display: inline;
    position: sticky;
    top: 8rem;
    width: 28em;
    height: fit-content;
  }
  .blog_pc_right_block {
    width: 60%;
    /* padding: 3.8em 0 2em; */
  }
  .program_box {
    width: 45%;
  }
  .program_sec {
    padding: 6em 0 0;
  }
  .program_sec_ttl {
    font-size: 3.2rem;
  }
  .program_sec_ttl.en {
    font-size: 1.2em;
  }
  .program_block {
    padding: 1.5em 1em 0;
    gap: 8%;
    justify-content: space-between;
  }
  .program_detail_box {
    padding: 1em 0;
  }
  .program_lead {
    font-size: 1.6rem;
    font-weight: 400;
    text-align: center;
    padding: 0 0 0.5em;
  }
  .program_sec._level ul {
    padding: 2em 0 0em;
  }
  .program_sec._level li {
    width: 31%;
    font-size: 1em;
    transition: 0.5s;
  }
  .program_sec._level li:hover {
    border: 0.8px solid var(--color-pink);
    /* background-color: var(--color-pink); */
    color: var(--color-pink);
    /* color: var(--color-white); */
    transition: ease 0.5s;
    margin: -0.2em 0 0.2em;
  }
  .program_sec._level li span {
    font-weight: bold;
  }
  .blog-category-list {
    display: inline;
  }
  .program_lead_wrap{
    display: inline;
  }
}
