/*
Theme Name: grosse club
Author: grosse
Version: 1.0
*/

:root {
  --pmpro--color--base: transparent !important;
  --pmpro--color--contrast: #fff !important;
  --pmpro--color--accent: #efefef !important;
  --pmpro--color--accent--variation: #fff !important;
  --pmpro--color--border--variation: transparent !important;
  --pmpro--base--spacing--small: 6px !important;
  --pmpro--base--spacing--medium: 12px !important;
  --pmpro--base--spacing--large: 24px !important;
}

.grecaptcha-badge {
  visibility: hidden;
}
.p-login .p-login__button {
  border-top: 1px solid #fff;
  padding-top: 40px;
}
.p-login .p-login__button--submit {
  text-decoration: none;
  background: #eee;
  border: 1px solid #fff;
  color: #111;
  display: block;
  width: fit-content;
  margin: auto;
  padding: 10px 30px;
}
.pmpro_level_cost_text strong::after {
  content: "（税込）";
}
#pmpro_checkout_box-profile hr,
#pmpro_checkout_box-profile h2,
.pmpro_checkout_box-profile h2,
.pmpro_checkout_box- #birthday_div {
  display: none;
}
@media screen and (max-width: 939px) {
  #wpadminbar {
    position: fixed;
  }
  .admin-bar .l-header__nav,
  .admin-bar .l-header__nav--list-child {
    top: 110px;
    overflow: scroll;
    height: calc(100% - 110px);
  }
  .admin-bar .l-header__nav--list-child {
    top: 0;
  }
}
@media screen and (min-width: 940px) {
  .admin-bar .l-header__nav--list-child {
    top: 136px;
  }
  .l-header__nav--list-item:nth-child(2) .l-header__nav--list-child__inner {
    height: 420px;
  }
}

.mb60 {
  margin-bottom: 60px;
}

/* header　==================================== */
.c-platinum {
  color: #111e6c;
}
.l-header__form--logo--img {
  margin-bottom: 32px;
}
@media screen and (min-width: 940px) {
  .l-header-fixed__is-active {
    overflow: hidden;
  }
  .l-header {
    width: 100%;
  }
  .l-header__nav--list-parent.is-active + .l-header__nav--list-child {
    overflow-x: hidden;
    width: 100vw;
    margin: 0;
  }
  .l-header__nav--list-item:nth-child(4)
    .l-header__nav--list-parent.is-active
    + .l-header__nav--list-child {
    padding-bottom: 130px;
  }
  .l-header__nav form.pmpro_form .input,
  form.pmpro_form textarea,
  form.pmpro_form select,
  #loginform input[type="text"],
  #loginform input[type="password"] {
    max-width: 100%;
  }
  .l-header__nav--list-grade-parent {
    font-size: 18px;
  }
  #loginform {
    max-width: 400px;
    margin: 0 auto;
  }
}
@media screen and (max-width: 939px) {
  .l-header__nav {
    opacity: 1;
    transform: translateX(-100%);
    transition-duration: 0.3s;
    transition-delay: 0.3s;
  }
  .l-header-fixed__is-active .l-header__nav {
    transform: translateX(0);
    transition-duration: 0.3s;
    transition-delay: 0.3s;
  }
  .l-header__nav--list-child {
    position: fixed;
    transform: translate(100%, 0);
    transition-duration: 0.3s;
    transition-delay: 0.3s;
    top: 0;
  }
  .is-active + .l-header__nav--list-child {
    transform: translate(0, 0);
    transition-duration: 0.3s;
    transition-delay: 0.3s;
  }
  .l-header__nav--list-grade-child--dt {
    /* font-size: 1em; */
  }
  .l-header__nav--list-child__flex-content--text,
  .l-header__nav--list-grade-child--dd {
    /* font-size: .8em; */
  }
  .l-header__member-link.l-header__member-link--guest {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 100%;
  }
  .l-header__member-link.l-header__member-link--guest .l-header__member-img {
    margin-bottom: 7px;
  }
}
@media screen and (orientation: portrait) and (min-width: 940px) {
  .l-header__nav--list-item:nth-child(4)
    .l-header__nav--list-parent.is-active
    + .l-header__nav--list-child {
    padding-bottom: 0;
  }
}

/* GUEST ==================================== */
@media screen and (max-width: 767px) {
  .p-guest-kv__item--link,
  .p-guest-kv {
    height: 110vw;
    min-height: 400px;
  }
  .p-guest-slider__item--img,
  .p-guest-slider__grade {
    min-height: 200px;
    height: 61vw;
  }
  .p-guest-slider__grade-img {
    width: 86px;
  }
}

/* 会員購入手続き ==================================== */
.p-plan__ttl {
  font-weight: 700;
  margin: 1em 0 0 0;
}

#pmpro_mailing_lists {
  display: block;
  overflow: hidden;
  pointer-events: none;
  visibility: hidden;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: 0;
}

/* プロフィール ==================================== */
.pmpro_member_profile_edit-field-pmpromc_opt_in_list {
  display: block;
  overflow: hidden;
  pointer-events: none;
  visibility: hidden;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: 0;
}
.pmpro-member-profile-edit .pmpro_checkout_box-shipping h3 {
  font-weight: 700;
  margin-top: 32px;
  margin-bottom: 16px;
}
/* SALON　==================================== */
.p-salon-content-inner {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  max-width: 90vw;
  margin-left: auto;
  margin-right: auto;
}
.p-salon-movie__video video {
  width: 100%;
  height: 100%;
  max-height: 480px;
}
.p-salon-movie {
  margin-left: 1vw;
  margin-right: 1vw;
  position: relative;
  width: 100%;
  max-width: 43vw;
  margin-bottom: 4vw;
}
.p-salon-movie__video--thumbnail img {
  width: 100%;
}
@media screen and (max-width: 939px) {
  .p-salon-content-inner {
    display: block;
    max-width: 100vw;
  }
  .p-salon-movie__video video {
    width: auto;
  }
  .p-salon-time {
    right: 24px;
  }
  .p-salon-movie {
    padding: 0 16px;
    margin-left: auto;
    margin-right: auto;
    max-width: 100%;
    margin-bottom: 24px;
  }
}

/* CATALOG　==================================== */
.p-catalog-detailInfo--text {
  margin-bottom: 16px;
}
@media screen and (max-width: 939px) {
  .single-catalog_archive {
    overflow-x: hidden;
  }
}
.p-catalog-slider__grade-img {
  width: 300px;
}
.p-catalog-detailBuy__msg {
  margin-top: 24px;
}
@media screen and (max-width: 939px) {
  .p-catalog-detailImage--main {
    pointer-events: none;
  }
}
/* modal form */
.p-catalog-detailBuy--form {
  margin-top: 40px;
}
.p-catalog-detailBuy--form .wpcf7-form-control-wrap {
  width: 100%;
}
@media screen and (max-width: 939px) {
  .p-catalog-detailInfo--item input {
    font-size: 16px;
  }
  .modal__header .modal__close:before {
    color: #000;
  }
}
/* modal Grossé Coin */
.wpcf7-form-control-wrap input {
  -webkit-text-fill-color: #000;
  opacity: 1;
}
.wpcf7-form-control-wrap.amount {
  display: inline-block;
  background: none;
}
.p-catalog-detailInfo--item.amount-wrap input {
  width: auto;
}
.p-catalog-detailInfo--item.amount-wrap .p-catalog-detailInfo--item-dd {
  display: flex;
}
.wpcf7-form-control-wrap.amount input,
.wpcf7-form-control-wrap.amount input:focus {
  text-align: right;
  background: none;
  display: inline-block;
  pointer-events: none;
  border: none;
  outline: none;
  padding: 0;
  width: 48px;
}
.p-catalog-detailBuy--form .amount-wrap .wpcf7-form-control-wrap {
  width: 48px;
  text-align: left;
  margin-right: 4px;
}

/* FAQ ==================================== */
.p-faq__content .c-title-h3::before {
  content: "■";
  margin-right: 0.25em;
}

/* MEMBER　==================================== */
/* 会員購入手続き */
label[for="username"]::after {
  font-size: 11px;
  font-style: italic;
  font-weight: normal;
  letter-spacing: normal;
  content: "半角英数字でご入力ください";
  margin-left: 1em;
}
/* ログイン */
.pmpro_login_wrap {
  width: 460px;
  max-width: 100%;
  margin-bottom: 80px;
}
.pmpro_login_wrap h2 {
  text-indent: -9999px;
  height: 0;
  width: 0;
}
.pmpro_logged_in_welcome_wrap {
  text-align: center;
  margin: 60px 0;
}
.pmpro_logged_in_welcome_wrap .pmpro_member_display_name {
  margin-bottom: 80px;
}
/* 下層全体 */
form.pmpro_form .input {
  background-color: #fff;
  border: 2px solid #c6c6c6;
  border-radius: 8px;
  color: #000;
  padding: 8px;
  width: 100%;
  min-width: 240px;
  max-width: 400px;
}
form.pmpro_form .pmpro_submit {
  margin-top: 40px;
}
.pmpro_submit hr {
  display: none;
}
.pmpro_login_wrap input[type="text"],
.pmpro_login_wrap input[type="password"] {
  background-color: #fff;
  border: none;
  border-radius: 8px;
  border: solid 1px #000;
  color: #000;
  width: 100%;
  padding: 8px;
  margin-top: 4px;
}
.pmpro_login_wrap .login-submit {
  position: relative;
  cursor: pointer;
  padding-bottom: 20px;
}
.pmpro_login_wrap .login-submit:hover::after {
  text-decoration: none;
  opacity: 0.7;
}
.pmpro_login_wrap input[type="submit"] {
  position: absolute;
  z-index: 2;
  top: 0;
  left: 0;
  right: 0;
  opacity: 0;
  cursor: pointer;
  margin: auto;
}
.pmpro_login_wrap .login-submit::after {
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  right: 0;
  display: block;
  content: "LOGIN";
  border: none;
  cursor: pointer;
  background-color: #a8a8a8;
  border: none;
  border-radius: 8px;
  color: #000;
  display: inline-block;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.4;
  max-width: 100%;
  padding: 6px 16px;
  text-align: center;
  width: 100%;
}
/* TOP */
.p-login .pmpro_login_wrap input[type="text"],
.p-login .pmpro_login_wrap input[type="password"] {
  background-color: #fff;
  border: none;
  border-radius: 8px;
  color: #000;
  width: 100%;
  padding: 8px;
  margin-top: 4px;
}
@media screen and (max-width: 939px) {
  .pmpro_login_wrap form#loginform input[type="text"].input,
  .pmpro_login_wrap form#loginform input[type="password"].input {
    width: 100%;
    max-width: 100%;
  }
}
.p-login .pmpro_login_wrap .login-submit {
  position: relative;
  cursor: pointer;
  padding-bottom: 20px;
}
.p-login .pmpro_login_wrap .login-submit:hover::after {
  text-decoration: none;
  opacity: 0.7;
}
.p-login .pmpro_login_wrap input[type="submit"] {
  position: absolute;
  z-index: 2;
  top: 0;
  left: 0;
  right: 0;
  opacity: 0;
  cursor: pointer;
  width: auto;
  margin: auto;
}
.p-login .pmpro_login_wrap .login-submit::after {
  background: none;
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  right: 0;
  display: block;
  content: "LOGIN";
  font-size: 16px;
  font-weight: 400;
  border: none;
  color: #fff;
  cursor: pointer;
  font-family: Georgia, 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN",
    HGS明朝E, メイリオ, Meiryo, serif;
  line-height: 1.8;
  text-align: center;
  text-decoration: underline;
  transition: 0.3s;
  width: 70px;
  padding: 0;
  margin: auto;
}
.p-login .login-submit {
  text-align: center;
}
.pmpro_login_wrap hr {
  display: none;
}
.p-login .p-login__button--submit {
  font-size: 16px;
}
/* マイページ */
#pmpro_account .pmpro_box:first-child {
  border-top: none;
}
#pmpro_account .pmpro_box h3,
.p-maypage-h3 {
  font-size: 18px;
  font-weight: 700;
  margin-bottom: 16px;
}
.pmpro_table,
.mycred-table {
  width: 100%;
  margin-bottom: 16px;
}
.pmpro_table th,
.pmpro_table td,
.mycred-table th,
.mycred-table td {
  text-align: left;
}
.pmpro_table th,
.mycred-table th {
  background-color: #000;
  color: #fff;
  padding: 4px 8px;
  margin-bottom: 2em;
}
.pmpro_table td,
.mycred-table td {
  padding: 12px 8px;
}
.pmpro_table tr:nth-of-type(even) td,
.mycred-table tr:nth-of-type(even) td {
  background-color: #fbfbfb;
}
.pmpro_checkout-h3-name {
  font-size: 18px;
  font-weight: 700;
}
.pmpro_member_profile_edit-field.pmpro_member_profile_edit-field-.display_name {
  display: none;
}
.row.pagination-top,
.table-responsive tfoot {
  display: none;
}
/* メンバーシップのキャンセル */
.pmpro_cancel_wrap h2 {
  font-size: 18px;
  font-weight: 700;
  margin-bottom: 1em;
}
.pmpro_actionlinks {
  margin-top: 1em;
}
.pmpro_actions_nav {
  margin-top: 2em;
}
/* パスワードの紛失 */
.pmpro_lost_password-fields {
  margin-top: 2em;
}
.pmpro_lost_password_wrap hr {
  display: none;
}
.pmpro_lost_password-fields input {
  background-color: #fff;
  border: 2px solid #c6c6c6;
  border-radius: 8px;
  color: #000;
  padding: 8px;
  width: 100%;
  max-width: 400px;
}
.pmpro_actions_nav {
  margin-bottom: 2em;
}
.pmpro_lost_password_wrap form.pmpro_form .pmpro_submit {
  margin-top: 16px;
  margin-bottom: 40px;
}
.p-login .pmpro_actions_nav a {
  text-decoration: underline;
}
.p-login .pmpro_actions_nav a:hover {
  text-decoration: none;
}
/* PLAN　==================================== */
.pmpro_checkout-field.pmpro_checkout-field-bcountry {
  position: relative;
  width: 400px;
  max-width: 100%;
}
.pmpro_checkout-field.pmpro_checkout-field-bcountry::after {
  border-bottom: solid 1px #000;
  border-right: solid 1px #000;
  bottom: 0;
  content: "";
  display: inline-block;
  height: 8px;
  margin: auto;
  position: absolute;
  right: 1em;
  top: 20px;
  transform: rotate(45deg);
  width: 8px;
}
form.pmpro_form .pmpro_checkout-field.pmpro_checkout-field-bcountry select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background-color: #fff;
  border: 2px solid #c6c6c6;
  border-radius: 8px;
  color: #000;
  padding: 8px;
  width: 400px;
  max-width: 100%;
}
.pmpro_checkout-field.pmpro_checkout-field-bcountry .pmpro_asterisk {
  display: none;
}
.pmpro_checkout_gateway-stripe
  form.pmpro_form
  #pmpro_payment_information_fields
  .pmpro_checkout-fields {
  grid-template-columns: 1fr 1fr 3fr;
}
.pmpro_checkout_gateway-stripe
  form.pmpro_form
  #pmpro_payment_information_fields
  div#AccountNumber {
  background-color: #fff;
  border: 2px solid #c6c6c6;
  border-radius: 8px;
  color: #000;
  padding: 8px;
  width: 100%;
  max-width: 400px;
}
.pmpro_checkout_gateway-stripe
  form.pmpro_form
  #pmpro_payment_information_fields
  div#Expiry {
  background-color: #fff;
  border: 2px solid #c6c6c6;
  border-radius: 8px;
  color: #000;
  padding: 8px;
  width: 100%;
  max-width: 200px;
}
.pmpro_checkout_gateway-stripe
  form.pmpro_form
  #pmpro_payment_information_fields
  div#CVV {
  background-color: #fff;
  border: 2px solid #c6c6c6;
  border-radius: 8px;
  color: #000;
  padding: 8px;
  width: 100%;
  max-width: 100px;
}
/* 並び替え  */
/* フィールド群の親要素にflexを指定 */
.pmpro_checkout-fields {
  display: flex;
  flex-direction: column;
}
/* 各フィールドの並び順を相対値で設定 */
/* 姓 */
.pmpro_checkout-field-lastname,
.pmpro_checkout-field-blastname {
  order: 1;
}
/* 名 */
.pmpro_checkout-field-firstname,
.pmpro_checkout-field-bfirstname {
  order: 2;
}
/* 国 */
.pmpro_checkout-field-bcountry {
  order: 3;
}
/* 郵便番号 */
.pmpro_checkout-field-bzipcode {
  order: 4;
}
/* 都道府県 (または州) */
.pmpro_checkout-field-bstate {
  order: 5;
}
/* 市区町村 */
.pmpro_checkout-field-bcity {
  order: 6;
}
/* 住所１ */
.pmpro_checkout-field-baddress1 {
  order: 7;
}
/* 住所２ */
.pmpro_checkout-field-baddress2 {
  order: 8;
}
/* 電話番号 */
.pmpro_checkout-field-bphone {
  order: 9;
}
/* メールアドレス */
.pmpro_checkout-field-bemail {
  order: 10;
}
/* メールアドレス確認 */
.pmpro_checkout-field-bconfirmemail {
  order: 11;
}
/* CONTAACT　==================================== */
.wpcf7-spinner {
  display: none;
}
/* Q&A　======================================== */
.p-faq__list-item.is-active .p-faq__list--text {
  width: 100%;
}

/* print　====================================== */
@media print {
  .l-header-hamburger__btn,
  .l-header__nav,
  .l-header__links {
    display: none;
  }
}

.js-catalog-amount {
  visibility: hidden;
}

.is__ended::before {
  content: "会員受付をしておりません。";
  display: flex;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  align-items: center;
  justify-content: center;
  color: #fff;
  font-weight: bold;
  font-size: 18px;
  background-color: rgba(0, 0, 0, 0.5);
}

/**
  20241127 pmpro
*/
.p-login {
  padding-block: 60px;
}

.p-login .pmpro_section {
  color: #fff;
}
.pmpro
  .pmpro_section:has(#loginform)
  .pmpro_card_content:not(
    .widget .pmpro_section:has(#loginform) .pmpro_card_content
  ),
.pmpro .pmpro_section:has(.pmpro_form) .pmpro_card_content,
.pmpro .pmpro_card_content,
.pmpro .pmpro_card_actions {
  padding: 0;
}
.pmpro_actions_nav {
  margin-top: 2em;
}
.pmpro .pmpro_form_field-user_email {
  width: 100%;
}

#pmpro_form_fieldset-mailchimp-opt-in,
.pmpro_asterisk,
#pmpro_form_fieldset-profile .pmpro_form_heading {
  display: none !important;
}
.pmpro_form_field-password-toggle .pmpro_btn,
.pmpro_section #loginform .login-submit .button {
  visibility: hidden !important;
}
.pmpro
  .pmpro_section
  #loginform
  label:not(.pmpro_section #loginform .login-remember label) {
  font-weight: 700;
}
.pmpro .pmpro_form_input,
.pmpro .pmpro_btn,
.pmpro .pmpro_section #loginform .input {
  background-color: #fff !important;
  color: #000;
  padding: 8px;
  box-shadow: none;
}

.pmpro .pmpro_btn:hover,
.pmpro .pmpro_btn:focus {
  color: #000;
  box-shadow: none;
}

.pmpro .pmpro_btn:hover,
.pmpro .pmpro_btn:focus {
  opacity: 0.6;
}

.pmpro .pmpro_section:first-of-type {
  margin-bottom: 0;
}
.pmpro_actions_nav {
  text-align: center;
}

.pmpro {
  color: #111;
}

.pmpro .pmpro_cols-2 > * {
  width: 100%;
}
#pmpro_user_fields .pmpro_form_heading,
.pmpro .pmpro_form_field-display_name {
  display: none !important;
}
/* mypage */
.pmpro .pmpro_card {
  box-shadow: none;
}
.pmpro .pmpro_card_content + .pmpro_card_actions {
  margin-top: 1em;
  background-color: transparent;
}
.pmpro .pmpro_card_title {
  color: #111;
  padding: 0;
}

.pmpro .pmpro_btn-submit-update-profile,
.pmpro .pmpro_level .pmpro_btn,
.pmpro .pmpro_form_submit .pmpro_btn-submit {
  background-color: #efefef !important;
  border: 1px solid #d6d6d6;
}
.pmpro_btn-outline {
  opacity: 0.6;
}

.pmpro [id^="pmpro_paypal"] .pmpro_btn-submit-checkout-paypal {
  background-color: #ffc439 !important;
}
.pmpro .pmpro_form_submit .pmpro_btn-cancel {
  border: none;
  text-decoration: underline;
}

.pmpro .mycred-table thead th,
.pmpro .pmpro_table thead th,
.pmpro .pmpro_table tbody th {
  background-color: #111;
  margin-bottom: 0;
}

#pmpro_account-membership-1 .pmpro_card_title {
  color: #800000;
}
#pmpro_account-membership-2 .pmpro_card_title {
  color: #111e6c;
}
#pmpro_account-membership-3 .pmpro_card_title {
  color: #c19a6b;
}
#pmpro_account-membership-3 .pmpro_card_title {
  color: #bc8f8f;
}
