@charset "UTF-8";
/*-----------------------

         COMMON

-----------------------*/
#siEntryForm .display-block a {
  text-decoration: underline;
  color: var(--mainColor);
}
.box-footer p a {
  text-decoration: underline;
  color: var(--mainColor);
}
.portfolio-item .card .card-title a {
  font-size: clamp(1.8rem, 1.7029126214rem + 0.2588996764vw, 2.2rem);
  font-weight: 600;
  line-height: 1.4;
  color: var(--mainColor);
}
.portfolio-item .card .card-title div {
  margin-top: 1rem;
}
/* SHOPログインのリンク */
.shop-panel-body .subtext a {
  text-decoration: underline;
  color: var(--mainColor);
}
/* 退会フォームの件名インデント */
.defect-page p {
  padding-left: 15px;
}
/* SHOPのカテゴリのリンク表示 */
.breadcrumb a {
  color: var(--mainColor);
}
.breadcrumb a:hover {
  text-decoration: underline;
}
.product-category a {
  color: var(--mainColor);
}
.product-category a:hover {
  text-decoration: underline;
}
/* マイページタイムラインのリンク */
.timeline > li > .timeline-item > .timeline-header a {
  color: var(--mainColor);
}
.timeline > li > .timeline-item > .timeline-header a:hover {
  text-decoration: underline;
}
/* コンテンツの前後ページ */
.body-shelf-list .flex-c, .body-info-detail .flex-c {
  flex-direction: row;
}
/* 再生リストチェックボックス */
.body-shelf-comment input[type="checkbox"] {
  -webkit-appearance: auto;
  -moz-appearance: auto;
  appearance: auto;
  border-radius: 0;
  margin-top: 0.8rem;
}
.container {
  margin-bottom: clamp(4rem, 2.5437rem + 6.2136vw, 10rem);
}
/* パスワードの大きさ調整 */
input[type=password] {
  font-size: 16px;
  transform: scale(1.0);
}
/* アンケートフォームのマージン調整 */
.body-form-detail .answer .form-control {
  margin-left: 0.5rem;
}
/* アンケートフォームのマージン調整 */
.body-form-detail [data-event="file-text"] {
  margin-left: 0.5rem;
}
/* プロフィールのマージン調整 */
.body-profile-edit .content .row .col-lg-3:nth-child(2) {
  margin-top: 0;
}
/* フォームの選択アライン */
.body-form-detail th.quantity {
  text-align: center;
}
/* コンテンツ紹介 */
.cat-Area ul {
  display: flex;
  gap: 1.5rem;
  gap: 4rem 1.5rem;
  flex-wrap: wrap;
}
.page-list-contents .col-lg-12.detail.fr-element.fr-view .cat-Area ul li a {
  color: var(--mainColor);
  background: #fff;
  border: solid 2px var(--mainColor);
  font-weight: 500;
  font-size: clamp(1.4rem, 1.206rem + 0.518vw, 2.2rem);
  padding: 1rem 2rem;
  border-radius: 3rem;
  letter-spacing: 0.05em;
}
.page-list-contents .col-lg-12.detail.fr-element.fr-view .cat-Area ul li.current a {
  color: #fff;
  background: var(--mainColor);
  border: solid 2px var(--mainColor);
  white-space: nowrap;
}
.cat-Area dl {
  margin: clamp(1.5rem, 1.015rem + 1.294vw, 3.5rem) 0 clamp(2rem, 1.515rem + 1.294vw, 4rem);
  align-items: center;
}
.cat-Area dt, .cat-Area dd {
  font-size: clamp(1.8rem, 1.46rem + 0.906vw, 3.2rem);
  font-weight: 700;
}
.cat-Area dd {
  color: var(--mainColor);
  position: relative;
  font-size: clamp(2.2rem, 1.86rem + 0.906vw, 3.6rem);
}
.cat-Area dd::before {
  content: "：";
  padding: 0 0.1em;
  color: var(--baseColor);
}
.contents_Wrap .box {
  /* background: #FBEED3; */
  background: #FFF0F5;
  padding: 4rem;
  border-radius: 1.5rem;
  text-align: center;
  display: flex;
  flex-direction: column;
}
.contents_Wrap .box.page-152 {
  background: #FFF0F5;
}
.contents_Wrap .box .cat {
  display: flex;
  gap: 1rem;
  align-items: center;
  margin-bottom: 1.5rem;
}
.contents_Wrap .box .cat p {
  font-size: clamp(1.2rem, 0.957rem + 0.647vw, 2.2rem);
  font-weight: 500;
  color: #fff;
  background: var(--mainColor);
  white-space: nowrap;
  padding: 0.3rem 1.5rem;
  border-radius: 3rem;
}
.contents_Wrap .box .contents-ttl {
  font-weight: 700;
  letter-spacing: 0.025em;
  font-size: clamp(2.6rem, 2.066rem + 1.424vw, 4.8rem);
  text-align: justify;
}
.contents_Wrap .box .contents-ttl2 {
  font-weight: 700;
  letter-spacing: 0.025em;
  font-size: clamp(1.8rem, 1.606rem + 0.518vw, 2.6rem);
  position: relative;
  margin: 3.5rem 0 1.5rem;
  text-align: justify;
}
.contents_Wrap .box .contents-ttl2::before {
  content: "\025a0";
  margin-right: 0.5rem;
}
.contents_Wrap .box figure {
  overflow: hidden;
  aspect-ratio: 7/4;
  border-radius: 1rem;
  margin: 2rem 0;
}
.contents_Wrap .box figure img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.contents_Wrap .box .text-area p {
  font-size: clamp(1.4rem, 1.351rem + 0.129vw, 1.6rem);
  letter-spacing: 0.025em;
  line-height: 1.5;
}
.contents_Wrap .box .photoWrap {
  gap: 1rem;
  flex-wrap: wrap;
}
.contents_Wrap .box .photoWrap .box2 {
  width: calc((100% - 3rem) / 4);
}
.contents_Wrap .box .photoWrap .box2 a .flex {
  flex-direction: column;
  justify-content: center;
}
.contents_Wrap .box .photoWrap .box2 .name {
  font-size: clamp(1.4rem, 1.351rem + 0.129vw, 1.6rem);
  letter-spacing: 0.025em;
  line-height: 1.5;
  width: 7em;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  text-align: center;
}
.contents_Wrap .box .photoWrap .box2 p.photo {
  border-radius: 50%;
  overflow: hidden;
  aspect-ratio: 1/1;
}
.contents_Wrap .box .photoWrap .box2 p.photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.contents_Wrap .box .text-area p:not(:last-child) {
  margin-bottom: 1.5em;
}
.contents_Wrap .box .navigatorWrap {
  margin-bottom: 8rem;
}
.contents_Wrap .box .btnG {
  width: 100%;
  gap: 2rem;
  margin-top: 1rem;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  bottom: -3.4rem;
  align-items: flex-end;
}
.contents_Wrap .box .btnG .flex-c {
  flex-direction: column;
  width: 55%;
}
.contents_Wrap .box .btnG p.arrow_box2 {
  margin-bottom: 1rem;
}
.archive-btn, .live-btn {
  display: inline-block;
  color: #fff;
  font-weight: bold;
  letter-spacing: 0.025em;
  border-radius: 1rem;
  border: solid 3px #fff;
}
.archive-btn a, .live-btn a {
  padding: 0 2.8rem;
  display: block;
  width: 100%;
  height: 100%;
}
.archive-btn {
  background: #F0C465;
  font-size: clamp(1.6rem, 1.551rem + 0.129vw, 1.8rem);
}
.archive-btn {
  display: flex;
  align-items: center;
  height: 6.8rem;
}
.archive-btn a {
  padding-top: 0.3rem;
}
.archive-btn img {
  vertical-align: sub;
}
.live-btn {
  background: var(--mainColor);
  width: 100%;
  font-size: clamp(1.6rem, 1.503rem + 0.259vw, 2rem);
  height: 6.8rem;
}
.live-btn a {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  height: 6rem;
  /* padding: 0 4rem; */
  padding: 0 1rem;
}
.live-btn a::after {
  content: "";
  display: block;
  position: absolute;
  right: 1em;
  top: 50%;
  transform: translateY(-50%);
  background: url("../img/arrow-r3.webp") no-repeat center center/cover;
  width: 1.1rem;
  height: 1.8rem;
}
/*吹き出し*/
.arrow_box {
  position: relative;
  width: 100%;
  height: 4rem;
  padding: 0 2rem;
  text-align: center;
  border: 3px solid #fff;
  color: #fff;
  font-size: clamp(1.4rem, 1.303rem + 0.259vw, 1.6rem);
  font-weight: bold;
  border-radius: 2rem;
  -webkit-border-radius: 2rem;
  -moz-border-radius: 2rem;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 3px 3px 3px rgba(77, 77, 77, 0.3);
  z-index: 5;
  white-space: nowrap;
  background: var(--mainColor);
  margin-bottom: 0.7rem;
}
.arrow_box:after, .arrow_box:before {
  border: solid transparent;
  content: '';
  height: 0;
  width: 0;
  pointer-events: none;
  position: absolute;
  top: 100%;
  left: 50%;
}
.arrow_box:after {
  border-color: rgba(247, 221, 51, 0);
  border-top-width: 20px;
  border-bottom-width: 20px;
  border-left-width: 12px;
  border-right-width: 12px;
  margin-left: -12px;
  margin-top: -4px;
  border-top-color: var(--mainColor);
}
.arrow_box:before {
  border-color: rgba(30, 144, 255, 0);
  border-top-width: 20px;
  border-bottom-width: 14px;
  border-left-width: 14px;
  border-right-width: 14px;
  margin-left: -14px;
  margin-top: 1px;
  margin-top: 0;
  border-top-color: #fff;
}
.page-list-contents .col-lg-12.detail.fr-element.fr-view a {
  text-decoration: none;
  color: #fff;
}
/* 受講一覧 */
.attend-circle {
  width: 80px;
  ;
  height: 80px;
  ;
  border-radius: 50%;
  border: 2px solid #e05a97;
  display: flex;
  justify-content: center;
  align-items: center;
  font-weight: 700;
  font-size: 1.4rem;
  text-decoration: none;
  background: #fff url("/img/mental-attend.webp") center/65% no-repeat;
  color: #e05a97;
  transition: transform .15s ease, filter .15s ease;
}
.plan-circle {
  width: 80px;
  ;
  height: 80px;
  ;
  border-radius: 50%;
  border: 2px solid #bbbbbb;
  display: flex;
  justify-content: center;
  align-items: center;
  font-weight: 700;
  font-size: 1.4rem;
  text-decoration: none;
  background: #fff url("/img/mental-plan.webp") center/65% no-repeat;
  color: #bbbbbb;
  transition: transform .15s ease, filter .15s ease;
}
.reserve-circle {
  width: 80px;
  ;
  height: 80px;
  ;
  border-radius: 50%;
  border: 2px solid #4aa685;
  display: flex;
  justify-content: center;
  align-items: center;
  font-weight: 700;
  font-size: 1.4rem;
  text-decoration: none;
  background: #fff url("/img/mental-reserve.webp") center/65% no-repeat;
  color: #4aa685;
  transition: transform .15s ease, filter .15s ease;
}
.attend-circle:hover {
  color: #e05a97;
  filter: none;
  transform: none;
}
.reserve-circle:hover {
  color: #4aa685;
  filter: none;
  transform: none;
}
.hdr__contactlink_2 {
  background-color: var(--mainColor);
  color: var(--colorW);
  font-size: 1.8rem;
  letter-spacing: 0.05em;
  border-radius: calc(infinity * 1px);
  line-height: 1;
  padding: 0.5rem 4.2rem;
}
.hdr__contactlink_2:hover {
  color: var(--colorW);
}
.hdr__contactlink:focus {
  color: var(--colorW);
}
.hdr__contactlink_2:focus {
  color: var(--colorW);
}
.body-page-list-contents .textArea a {
  text-decoration: underline !important;
  color: var(--mainColor) !important;
}
/*.body-page-list-info .catArea a {
  text-decoration: none !important;
  color: #fff !important;
}*/
/*-----------暫定対応----------------*/
.primary-ttl__area {
  max-width: 124.6rem;
  width: auto !important;
  padding: 4rem 0;
  margin-bottom: 0;
}
/*-----------暫定対応----------------*/
/* 1日体験セミナーで埋め込みが表示されない問題を調整 */
.fr-view .fr-video {
  position: static;
}
/*----------0914最終調整----------*/
header .navi .flex {
  gap: 3rem;
}
header nav ul > li a {
  font-size: 1.7rem;
}
.hdr__contactlink_2 {
  font-size: 1.7rem;
  padding: 0.5rem 3rem;
}
.hdr__contactlink {
  font-size: 1.7rem;
  padding: 0.5rem 3rem;
}
.hdr__logo {
  width: 26.552083vw;
}
.hero__flex {
  align-items: center;
}
.primary-ttl__en--large {
  font-size: clamp(5.4rem, 2.342rem + 8.155vw, 18rem);
}
.instructors::before {
  bottom: -2.5vw;
}
.primary-ttl--large {
  margin-top: 3rem;
}
.instructors::before {
  bottom: -2vw;
}
/*----------よくある質問（faq.css作る？）----------*/
/*-----カテゴリ矢印-----*/
.faq-wrap .accordion_one .accordion_header .i_box {
  display: flex;
  justify-content: center;
  align-items: center;
  position: absolute;
  top: 0.8em;
  right: 1%;
  width: 4rem;
  height: 4rem;
  margin-top: -2rem;
  box-sizing: border-box;
  transform-origin: center center;
  transition-duration: 0.2s;
}
.faq-wrap .accordion_one .accordion_header .i_box .one_i {
  display: block;
  width: 1.8rem;
  height: 1.8rem;
  -webkit-transform: rotate(0deg);
  transform: rotate(0deg);
  transform-origin: center center;
  transition-duration: 0.2s;
  position: relative;
}
.faq-wrap .accordion_one .accordion_header .i_box .one_i::before {
  content: "" !important;
  display: block !important;
  width: 2rem !important;
  height: 0.2rem !important;
  background-color: var(--mainColor) !important;
  position: absolute !important;
  top: 50% !important;
  left: 50% !important;
  transform: translate(-50%, -50%) rotate(0deg) !important;
}
.faq-wrap .accordion_one .accordion_header.open .i_box {
  -webkit-transform: rotate(-180deg);
  transform: rotate(-180deg);
}
.faq-wrap .accordion_one .accordion_header.open .i_box .one_i {
  transform: rotate(45deg) !important;
}
.faq-wrap .accordion_one .accordion_header.open .i_box .one_i::after {
  display: block !important;
  content: "" !important;
  width: 2rem !important;
  height: 0.2rem !important;
  background-color: var(--mainColor) !important;
  position: absolute !important;
  top: 50% !important;
  left: 50% !important;
  transform: translate(-50%, -50%) rotate(90deg) !important;
}
/*.faq-wrap .accordion_one .accordion_inner .answer {
  padding-bottom: 1rem;
}*/
.faq-wrap .accordion_one .accordion_header.faq {
  border-radius: 0 !important;
  padding-top: 0;
  margin-top: 2rem;
}
.faq-wrap .accordion_one .accordion_header.answer {
  border: none !important;
  padding: 0;
  margin-bottom: 0;
}
.faq-wrap .accordion_one .accordion_header.cat {
  font-size: clamp(1.7rem, 1.579rem + 0.324vw, 2.2rem);
  color: var(--baseColor);
  padding-left: clamp(0.5rem, 0.379rem + 0.324vw, 1rem);
  margin-top: clamp(2rem, 1.757rem + 0.647vw, 3rem);
}
.faq-wrap .accordion_one .accordion_header.cat::before {
  content: none;
}
.faq-wrap .accordion_one .accordion_inner {
  margin-bottom: 3rem;
}
.faq-wrap .accordion_one .accordion_header:not(:last-child) {
  margin-bottom: 1rem;
  margin-top: 3rem;
}
/* 折り返し復活＋長文/URLも割る */
.accordion_one p, .accordion_one p * {
  white-space: normal !important;
  overflow-wrap: anywhere;
  word-break: break-word; /* 互換用 */
}
/* A : を左列、<p>群を右列に縦積み */
.faq-wrap .accordion_one .accordion_inner .answer {
  display: grid;
  grid-template-columns: auto 1fr; /* 左=ラベル / 右=本文 */
  column-gap: .6em;
  align-items: start;
  position: relative; /* 既存の指定はそのままでOK */
  font-size: clamp(1.4rem, calc(1.3029126214rem + 0.2588996764vw), 1.8rem);
}
.faq-wrap .accordion_one .accordion_inner .answer::before {
  content: "A : ";
  font-weight: 500;
  line-height: 1;
  grid-column: 1;
  grid-row: 1; /* 先頭行に配置（十分） */
}
.faq-wrap .accordion_one .accordion_inner .answer > p {
  grid-column: 2; /* すべて右列に配置＝縦積みになる */
  margin: 0 0.2em; /* 段落間の余白を整える */
}
/* 折り返しの復活（前に入れてた指定は継続でOK） */
.accordion_one p, .accordion_one p * {
  white-space: normal !important;
  overflow-wrap: anywhere;
  word-break: break-word;
}
/*----------よくある質問（faq.css作る？）----------*/
/*----------  ↓↓↓↓↓↓↓↓↓↓  最終的に、form.css / column.css / login.css / accout.css を編集  ↓↓↓↓↓↓↓↓↓↓  ----------*/
.col-lg-12.detail.fr-element.fr-view a {
  text-decoration: none;
}
.body-form-detail .box-footer a:not(header a, footer a, .sns-detail a) {
  text-decoration: underline;
  color: var(--mainColor);
}
.pager p a.current {
  color: #fff !important;
}
.body-page-list-blog .catArea li a, .body-page-list-voice .catArea li a, .body-page-list-news .catArea li a, .body-page-list-info .catArea li a {
  color: var(--mainColor) !important;
  border: 1px solid var(--mainColor);
  background-color: var(--colorW);
}
.body-page-list-blog .catArea li a.active, .body-page-list-voice .catArea li a.active, .body-page-list-news .catArea li a.active, .body-page-list-info .catArea li a.active {
  color: var(--colorW) !important;
  border: 1px solid var(--mainColor);
  background-color: var(--mainColor);
}
.loginBtn .img-circle {
  width: 30px;
  height: 30px;
}
.profile-user-img {
  width: 80%;
  max-width: 20rem;
  text-align: center;
}
.body-kouza-detail .single span{
	padding: 0.5rem;
    font-size: clamp(1.2rem, 1.152rem + 0.129vw, 1.4rem);
}
@media screen and (max-width:559px) {
  .pager .flex-c {
    flex-direction: row;
  }
  .btn {
    margin: 1rem 0;
  }
  .profile-user-img {
    margin: 0 auto !important;
  }
  .body-kouza-detail .btn-success {
    margin-bottom: 1rem !important;
  }
  .card-detail-page .btn-primary {
    margin-top: 1rem!important;
  }
}
/*----------  ↑↑↑↑↑↑↑↑↑↑  最終的に、form.css / column.css / login.css / accout.css を編集 ↑↑↑↑↑↑↑↑↑↑  ----------*/
.page-header .badge.bgred {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  max-width: 15rem;
  padding: 0.3em 0.8em;
  line-height: 1;
}
header .navi .flex {
  margin-top: 1.1vw;
}
.page-header {
  line-height: 1.5;
}
/*-----vomeo動画調整-----*/
.salon-about__youtube {
  position: relative;
  width: 600px; /* 固定幅 */
  height: 338px; /* 16:9 */
  margin-inline: auto; /* 中央寄せ（任意） */
  padding: 0 !important; /* エディタの inline padding を無効化 */
}
.salon-about__youtube iframe {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  border: 0;
}
/*-----vomeo動画調整-----*/
/*-----掲示板調整-----*/
/*一覧ページ*/
.body-news .color-main {
  font-size: 1.7em;
  color: var(--mainColor);
  margin-bottom: 0.6em;
}
input, select, textarea, button, label, .body-form-pay [class^="icon-"], .body-form-pay [class*=" icon-"], .body-kouza-pay [class^="icon-"], .body-kouza-pay [class*=" icon-"] {
  font-family: "Shippori Mincho B1", serif !important;
}
.body-kouza-detail .entry [class^="icon-"] {
  font-family: "Shippori Mincho B1", serif !important
}
@media only screen and (max-width: 559px) {
  .body-news .color-main {
    font-size: 1.4em;
    margin-bottom: 0.3em;
  }
}
.body-news .catArea {
  margin-bottom: 2.5em;
}
@media only screen and (max-width: 559px) {
  .body-news .catArea {
    margin-bottom: 1.5em;
  }
}
.body-news .catArea .flex {
  flex-wrap: wrap;
}
.body-news .catArea li a {
  font-size: 1em;
  color: var(--mainColor);
  padding: 0.2em 1em;
  border: 1px solid var(--mainColor);
  display: inline-block;
  margin-right: 0.7em;
  margin-bottom: 0.7em;
}
@media only screen and (max-width: 559px) {
  .body-news .catArea li a {
    font-size: 0.875em;
    padding: 0 0.7em;
    margin-right: 0.6em;
    margin-bottom: 0.6em;
  }
}
.body-news .catArea li a {
  color: var(--colorW);
  border: none;
  background-color: var(--mainColor);
}
.body-news .box .cms-label {
  font-size: 0.875em;
  color: var(--colorW);
  background-color: var(--mainColor);
  padding: 0.1em 0.75em;
  display: inline-block;
  margin-bottom: 0.2em;
  margin-right: 0.4em;
}
@media only screen and (max-width: 559px) {
  .body-news .box .cms-label {
    font-size: 0.75em;
    padding: 0 0.4em;
    margin-bottom: 0.05em;
    margin-right: 0.1em;
  }
}
.body-news .box figure {
  margin-bottom: 0.6em;
}
@media only screen and (max-width: 559px) {
  .body-news .box figure {
    margin-bottom: 0.1em;
  }
}
.body-news .box .date {
  font-size: 1em;
  color: var(--base50Color);
}
@media only screen and (max-width: 559px) {
  .body-news .box .date {
    font-size: 0.75em;
  }
}
.body-news .box .contents-text {
  font-size: 1.25em;
  line-height: 1.5;
  overflow: hidden;
  display: -webkit-box;
  text-overflow: ellipsis;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  /* ブラウザがサポートしていない場合のフェールセーフ */
  max-height: 6rem;
}
@media only screen and (max-width: 559px) {
  .body-news .box .contents-text {
    font-size: 0.875em;
    line-height: 1.3;
  }
}
@media only screen and (max-width: 559px) {
  .body-news .flex {
    flex-direction: row;
  }
  .body-news .contents3Wrap {
    gap: 1em;
  }
  .body-news .contents3Wrap > li, .body-news .contents3Wrap > div {
    width: calc((100% - 1em) / 2);
  }
  .body-news .imgWrap {
    margin-bottom: 0.1em;
  }
}
.body-news .catArea li a {
  color: var(--mainColor) !important;
  border: 1px solid var(--mainColor);
  background-color: var(--colorW);
}
.body-news .catArea li a.active {
  color: var(--colorW) !important;
  border: 1px solid var(--mainColor);
  background-color: var(--mainColor);
}
.body-news .box-footer p a {
  text-decoration: none;
}
.body-news .input-group .form-control {
  height: inherit;
}
/*-----掲示板調整-----*/
.order__agcat--pink {
  background-color: var(--main80Color);
}
.order__agcat {
  color: var(--colorW);
  width: fit-content;
  border-radius: 5px;
  font-size: clamp(1.0rem, calc(1.3514563107rem + 0.1294498382vw), 1.2rem);
  line-height: 1;
  padding: 1rem 2rem;
  margin-top: 0.5rem;
  margin-bottom: 1rem;
}
.order__agcat a {
  color: var(--colorW);
}
#siEntryForm label > .icon-checkbox-input ~ .icon-checkbox-icon::before {
  content: "\f372";
  font-family: "Ionicons";
  color: #696969;
  font-size: 17px;
  display: inline-block;
  width: 12px;
  font-weight: bold;
}
#siEntryForm label > .icon-checkbox-input:checked ~ .icon-checkbox-icon::before {
  content: "\f373";
}
.page-detail-contents .textArea p {
  margin-bottom: 5rem;
}
h1.modal-title, h2.modal-title, h3.modal-title, h4.modal-title, h5.modal-title, h6.modal-title {
  font-family: "Shippori Mincho B1", serif;
}
.body-kouza-detail .entry [class^="icon-"] {
  font-family: "Shippori Mincho B1", serif;
}
@media screen and (min-width: 1441px) and (max-width: 1919px) {
  header .navi .flex {
    margin-top: 3.2vw;
  }
  header .right-Area {
    padding-top: 2.7rem;
  }
  .drawer--right .drawer-hamburger, .drawer--right.drawer-open .drawer-hamburger {
    top: 2.7rem;
  }
}
@media screen and (max-width:1440px) {}
/*@media screen and (max-width:1369px) {
  body.account-page .container, body.account-page .wrapper {
    width: 1170px !important;
  }
}*/
@media screen and (max-width:1368px) {}
@media screen and (max-width:1280px) {}
@media screen and (max-width:1024px) {}
@media screen and (max-width:559px) {
  body.account-page .container, body.account-page .wrapper {
    width: 100% !important;
  }
  .contents2Wrap > li, .contents2Wrap > div {
    width: 100%;
  }
  .page-list-contents .flex, .page-list-contents .flex-c, .page-list-contents .flex-e {
    flex-direction: row;
  }
  .archive-div {
    text-align: center;
  }
  .arrow_box {
    position: relative;
    width: 100%;
    height: 4rem;
    padding: 0 2rem;
    text-align: center;
    border: 3px solid #fff;
    color: #fff;
    font-size: clamp(0.8rem, 1.303rem + 0.259vw, 1.0rem);
    font-weight: bold;
    border-radius: 2rem;
    -webkit-border-radius: 2rem;
    -moz-border-radius: 2rem;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 3px 3px 3px rgba(77, 77, 77, 0.3);
    z-index: 5;
    white-space: nowrap;
    background: var(--mainColor);
    margin-bottom: 0.7rem;
  }
  /*-----------暫定対応----------------*/
  .primary-ttl__area {
    width: 100%;
    padding: 0;
  }
  .page-header .badge.bgred {
    max-width: 8rem;
  }
  /*-----------暫定対応----------------*/
  .hdr__logo {
    width: 23.8rem;
  }
  .hero {
    padding-top: 6.283rem;
  }
  .content-header {
    padding-top: 6.283rem;
  }
  .salon-hero {
    padding-top: 15rem;
    margin-bottom: 14rem;
  }
  .hero__item:first-child {
    height: 82vh;
  }
  .hero__flex {
    align-items: start;
  }
  .instructors__flexwrap {
    margin-top: 2rem;
  }
  .guide__carditem--01 {
    margin-top: 2rem;
  }
  .content-header {
    margin-bottom: 3rem;
  }
  .o-drawer__wrap {
    padding-top: 4rem;
  }
  .drawer--right .drawer-nav .flex-c {
    gap: 3rem;
  }
  /*----------よくある質問----------*/
  .faq-wrap .accordion_one .accordion_header.answer {
    padding: 0.5rem 1rem;
  }
  .faq-wrap .accordion_one .accordion_header {
    padding-right: 4.5rem;
  }
  .faq-wrap .accordion_one .accordion_inner {
    padding: 1.4rem 2rem;
    margin-bottom: 1.5rem;
  }
  .faq-wrap .accordion_one .accordion_header:not(:last-child) {
    margin-top: 2rem;
  }
  /*----------よくある質問----------*/
  /*-----vimeo動画調整-----*/
  .salon-about__youtube {
    width: 100%;
    height: auto; /* 幅基準に高さを決める */
    aspect-ratio: 16 / 9; /* 16:9 を維持 */
  }
  /*-----vimeo動画調整-----*/
  /*-----ドロワー追加ボタン-----*/
  .sp-cta {
    display: block;
    width: 100%;
    margin-inline: auto;
  }
  .sp-cta__list {
    display: flex;
    gap: 12px;
    justify-content: center; /* 1個のとき中央寄せ */
    list-style: none;
    margin: 0;
    padding: 0;
  }
  .sp-cta__item {
    flex: 1; /* 2個なら等幅で横並び */
    min-width: 0;
  }
  /* 子が1個だけのときにだけ幅50%＆中央寄せ */
  .sp-cta__item:only-child {
    flex: 0 0 50%;
    margin-inline: auto;
  }
  .sp-cta__btn {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 50px;
    border-radius: 30px;
    text-decoration: none;
    font-size: 1.4rem;
    font-weight: 600;
    color: #fff;
  }
  .sp-cta__btn--salon {
    background: var(--mainColor);
  }
  .sp-cta__btn--contact {
    background: var(--subColor);
  }
  .sp-cta__btn:active {
    opacity: .9;
  } /* タップ時の軽いフィードバック */
  .sp-cta__btn:focus-visible {
    outline: 2px solid currentColor;
    outline-offset: 2px;
  }
  /*-----ドロワー追加ボタン-----*/
  .mypage-list {
    top: 3.6rem;
    max-width: 30rem;
  }
  .login-page .panel {
    margin-top: 8.5rem;
  }
  #siEntryForm label > .icon-checkbox-icon {
    text-indent: 0em;
    margin-left: 0em;
  }
}
@media screen and (max-width:375px) {}
@media screen and (max-width:361px) {}