@charset "UTF-8";
/*■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/
/* レスポンシブ */
/*■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/
/*
@media only screen and (max-width: 64.063em) {
}
@media only screen and (max-width: 40.063em) {
}

*/
/*-------------------------------------------
会員サイト用CSS(BEM記法)
-------------------------------------------*/
html,
body {
  margin: 0;
  padding: 0;
  height: 100%;
}

h1 {
  margin: 0;
}

body {
  font-family: "Noto Sans JP Regular", "Noto Sans JP", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif !important;
  font-weight: 700;
}

.h1,
.h2,
.h3,
.h4,
.h5,
.h6,
h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: "Noto Sans JP Regular", "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif !important;
  font-weight: 700;
}

.page-wrapper {
  display: flex;
  flex-direction: column;
  min-height: 100vh;
}

.main-content {
  flex: 1;
  display: block;
  height: 100vh;
  padding: 50px 20px;
}

.main-content__long {
  height: 100%;
}

@media screen and (max-width: 768px) {
  .main-content {
    margin-top: 0;
    padding: 0;
  }
}
/*-------------------------------------------
ALL
-------------------------------------------*/
.main-wrap {
  display: grid;
  grid-template-areas: "header" "nav" "content" "sidebar" "ad" "footer";
  min-height: 100vh;
}

#wpmem_login, #wpmem_msg, #wpmem_reg, .wpmem_msg {
  width: 100%;
}

.main-head {
  grid-area: header;
  margin-bottom: 0;
}

.content {
  grid-area: content;
  padding: 0 50px 30px 50px; /* 上の余白をなくす */
}

.main-nav {
  display: none;
  grid-area: nav;
}

.side {
  grid-area: sidebar;
  height: 100vh;
}

.ad {
  grid-area: ad;
}

.main-footer {
  grid-area: footer;
  background: #333;
  color: #fff;
  display: grid;
  justify-content: center;
  align-items: center;
}

@media (width < 821px) {
  .content {
    padding: 30px 20px;
  }
}
@media (min-width: 821px) {
  .main-wrap {
    grid-template-columns: 1fr 4fr 1fr;
    grid-template-areas: "header header  header" "nav    content sidebar" "nav    content ad" "footer footer  footer";
  }
  nav ul {
    flex-direction: column !important;
  }
}
body {
  display: grid;
  grid-template-rows: auto 1fr auto;
  grid-template-columns: 100%;
  min-height: 100vh;
}

.main-navigation {
  border-bottom: none;
}

h1 {
  font-size: 1.5rem;
}

.content__heading {
  padding: 0.5em 0.7em;
  border-left: 5px solid #00a42c;
  border-bottom: 3px solid #d2d2d2;
  background-color: #f2f2f2;
  color: #333333;
  margin-bottom: 50px;
}

.content__heading2 {
  padding: 0 0.4em 0.2em;
  border-bottom: 3px solid #00a42c;
  background-color: #ffffff;
  color: #333333;
  margin-bottom: 20px;
  font-size: 1.3rem;
}

.link-text {
  font-size: 0.875rem;
  text-align: center;
  margin-bottom: 10px;
}

#wpmem_login .button_div,
#wpmem_login .profile__body,
#wpmem_login .link-text {
  text-align: center !important;
  margin-bottom: 20px;
}

input[type=submit] {
  display: block !important;
  border-color: #00A42C !important;
  background: #00A42C !important;
  color: #fff !important;
  font-size: 1rem !important;
  line-height: 1 !important;
  width: 180px !important;
  padding: 10px !important;
  margin: 0 auto !important;
}

input[type=submit]:hover {
  border-color: #00A42C !important;
  background: #fff !important;
  color: #00A42C !important;
  cursor: pointer !important;
}

/*-------------------------------------------
ナビメニュー
-------------------------------------------*/
.members-limited-nav {
  background: #eee;
  display: block;
  width: 100%;
  height: 100vh;
  padding: 50px 0;
}
.members-limited-nav ul li a {
  font-size: 1rem;
}

.members-limited-nav__long {
  height: 100%;
  background: #eee;
  display: block;
  width: 100%;
  padding: 50px 0;
}
.members-limited-nav__long ul li a {
  font-size: 1rem;
}

@media (max-width: 768px) {
  .members-limited-nav,
  .members-limited-nav__long {
    padding: 0;
    justify-content: center;
    display: block;
    width: 100%;
    height: -moz-fit-content;
    height: fit-content;
  }
}
#mega-menu-wrap-menu-membership #mega-menu-menu-membership {
  display: flex;
}

/*-------------------------------------------
ヘッダー
-------------------------------------------*/
.site-header {
  display: block;
}

.site-header-inline {
  max-width: 100%;
  justify-content: space-between;
}

.site-logo {
  max-width: -moz-fit-content;
  max-width: 300px;
  width: 100%;
  padding: 10px 0;
  align-items: center;
  margin-left: 20px;
}

.site-logo {
  display: flex;
  max-width: -moz-fit-content;
  max-width: fit-content;
  width: 100%;
  padding: 10px 0;
  align-items: center;
}

.site-logo .site-logo-img {
  height: 50px;
  display: flex;
  justify-content: center;
}

.site-logo img {
  width: 95%;
}

.site-logo-caption {
  border-radius: 20px;
  color: #333;
  margin: 0 5px;
  font-size: 0.8rem;
  font-weight: bold;
}

.loginout-button {
  background: #333;
  width: 130px;
  padding: 10px;
  margin: 0 20px;
  text-align: center;
  border-radius: 3px;
}
.loginout-button a {
  color: #fff;
}

#rmp_menu_trigger-14802,
#rmp_menu_trigger-197214 {
  display: none;
}

@media (width < 768px) {
  .site-logo {
    max-width: 200px;
    display: block;
    text-align: center;
  }
  .content-area {
    padding-top: 0;
  }
  .loginout-button {
    margin: 0 auto;
    font-size: 0.8rem;
  }
}
/*-------------------------------------------
フッター
-------------------------------------------*/
.site-info {
  margin-top: 0 !important;
  padding: 20px 0;
  display: grid;
  justify-content: center;
  align-items: center;
}

/*-------------------------------------------
ログイン前ページ
-------------------------------------------*/
.content-login {
  max-width: 350px;
  width: 100%;
  margin: 0 auto;
}

/*-------------------------------------------
ログイン後ページ
-------------------------------------------*/
.login_status {
  text-align: center;
  line-height: 2;
}

/*-------------------------------------------
会員サイトトップ
-------------------------------------------*/
.content-grid {
  display: grid;
  gap: 20px;
  grid-template-columns: 1fr 1fr;
  margin-bottom: 50px;
}

.content-grid__item {
  max-width: -moz-fit-content;
  max-width: fit-content;
  width: 100%;
  box-shadow: 3px 6px 6px rgba(0, 0, 0, 0.2), 0 0 2px 0 #fff;
}

.content-grid__item:hover {
  opacity: 0.7;
}

@media (width < 768px) {
  .content-grid {
    display: grid;
    grid-template-columns: 1fr;
  }
}
/*-------------------------------------------
会員登録ページ
-------------------------------------------*/
.content-registration {
  max-width: 1000px;
  width: 100%;
  margin: 0 auto;
  display: grid;
  align-items: center;
  justify-items: center;
}
.content-registration ul li {
  margin-bottom: 20px;
}

[type=checkbox] + label[for], [type=radio] + label[for] {
  cursor: revert;
}

[type=checkbox] + label, [type=radio] + label {
  margin-left: 0;
  margin-right: 1rem;
}

/*-------------------------------------------
プロフィールページ
-------------------------------------------*/
label[for=current_pass] {
  visibility: hidden; /* 元のテキストを非表示にする */
  position: relative;
}

label[for=current_pass]::after {
  content: "現在のパスワードを確認"; /* 新しいテキスト */
  visibility: visible;
  position: absolute;
  left: 0;
  top: 0;
  color: inherit; /* 元の色を引き継ぐ */
  font-size: inherit; /* 元のサイズを引き継ぐ */
  line-height: 1; /* 元の行間を引き継ぐ */
}

/*-------------------------------------------
eラーニングページ
-------------------------------------------*/
.content-el {
  margin-bottom: 50px;
}

.content-el-inline {
  display: grid;
  gap: 20px;
  grid-template-columns: 1fr 1fr;
}

.content-el-back {
  text-align: center;
}

.content-el-group {
  display: grid;
  gap: 30px;
  grid-template-columns: 1fr 1fr 1fr;
  margin-bottom: 20px;
}

@media (width < 768px) {
  .content-el-group {
    display: grid;
    gap: 10px;
    grid-template-columns: 1fr;
  }
  .content-el-inline {
    grid-template-columns: 1fr;
  }
}/*# sourceMappingURL=membership.css.map */