/* PMPro カスタムデザイン */
.c-pageTitle{
	display: none;
}

/* =========================================================
   PMPro 共通：メインボタンを統一
========================================================= */

.pmpro .pmpro_btn:not(.pmpro_btn-plain):not(.pmpro_btn-password-toggle),
.pmpro .button:not(.pmpro_btn-plain):not(.pmpro_btn-password-toggle),
.pmpro button[type="submit"]:not(.pmpro_btn-plain):not(.pmpro_btn-password-toggle),
.pmpro input[type="submit"],
.pmpro input[type="button"] {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;

  width: 259px;
  max-width: 100%;
  height: 37px;
  min-height: 37px;

  padding: 0 20px;
  border: 0;
  border-radius: 999px;
  background: var(--Blue, linear-gradient(92deg, #3F94E3 21.49%, #8229DA 84.72%));
  box-shadow: 0 3px 0 #4C0B9A;

  color: #fff;
  font-family: "M PLUS 1", sans-serif;
  font-size: var(--TextSize-H2, 18px);
  font-style: normal;
  font-weight: 700;
  line-height: 120%;
  letter-spacing: 0.72px;
  text-align: center;
  text-decoration: none;

  box-sizing: border-box;
  cursor: pointer;

  transform: translateY(0);
  transition:
    transform 0.12s ease,
    box-shadow 0.12s ease,
    opacity 0.2s ease;
	
	margin: 0 auto;
}

/* hover */
.pmpro .pmpro_btn:not(.pmpro_btn-plain):not(.pmpro_btn-password-toggle):hover,
.pmpro .button:not(.pmpro_btn-plain):not(.pmpro_btn-password-toggle):hover,
.pmpro button[type="submit"]:not(.pmpro_btn-plain):not(.pmpro_btn-password-toggle):hover,
.pmpro input[type="submit"]:hover,
.pmpro input[type="button"]:hover {
  color: #fff;
  opacity: .95;
  text-decoration: none;
}

/* 押し込み */
.pmpro .pmpro_btn:not(.pmpro_btn-plain):not(.pmpro_btn-password-toggle):active,
.pmpro .button:not(.pmpro_btn-plain):not(.pmpro_btn-password-toggle):active,
.pmpro button[type="submit"]:not(.pmpro_btn-plain):not(.pmpro_btn-password-toggle):active,
.pmpro input[type="submit"]:active,
.pmpro input[type="button"]:active {
  transform: translateY(3px);
  box-shadow: 0 0 0 #4C0B9A;
}

/* disabled */
.pmpro .pmpro_btn:disabled,
.pmpro .button:disabled,
.pmpro button:disabled,
.pmpro input[type="submit"]:disabled,
.pmpro input[type="button"]:disabled {
  opacity: .55;
  cursor: not-allowed;
}




/* =========================================================
   PMPro 共通：入力欄デザイン
========================================================= */

.pmpro input[type="text"],
.pmpro input[type="email"],
.pmpro input[type="password"],
.pmpro input[type="tel"],
.pmpro input[type="url"],
.pmpro input[type="number"],
.pmpro input[type="search"],
.pmpro select{
  width: 100%;
  height: 34px !important;
  padding: 0 12px !important;
  border-radius: 2px !important;
  border: 1px solid var(--IconColor-LightGray, #B8B8B8) !important;
  background: var(--Background-LightGray, #F8FAF9) !important;
  box-shadow: none !important;

  color: var(--TextColor-Primary, #646464);
  font-family: "M PLUS 1", sans-serif;
  font-size: var(--TextSize-Body, 14px);
  font-style: normal;
  font-weight: 400;
  line-height: 180%;
  letter-spacing: 0.042px;

  box-sizing: border-box;
}

/* textarea */
.pmpro textarea {
  width: 100%;
  min-height: 120px;
  padding: 10px 12px !important;
  border-radius: 2px !important;
  border: 1px solid var(--IconColor-LightGray, #B8B8B8) !important;
  background: var(--Background-LightGray, #F8FAF9) !important;
  box-shadow: none !important;

  color: var(--TextColor-Primary, #646464);
  font-family: "M PLUS 1", sans-serif;
  font-size: var(--TextSize-Body, 14px);
  font-style: normal;
  font-weight: 400;
  line-height: 180%;
  letter-spacing: 0.042px;

  box-sizing: border-box;
  resize: vertical;
}

/* フォーカス時 */
.pmpro input[type="text"]:focus,
.pmpro input[type="email"]:focus,
.pmpro input[type="password"]:focus,
.pmpro input[type="tel"]:focus,
.pmpro input[type="url"]:focus,
.pmpro input[type="number"]:focus,
.pmpro input[type="search"]:focus,
.pmpro select:focus,
.pmpro textarea:focus {
  outline: none !important;
  border-color: var(--Accent-Blue, #62A1FF) !important;
  background: var(--Background-LightGray, #F8FAF9) !important;
  box-shadow: 0 0 0 2px rgba(98, 161, 255, 0.18) !important;
}

/* placeholder */
.pmpro input::placeholder,
.pmpro textarea::placeholder {
  color: #B8B8B8;
  opacity: 1;
} 


.page-id-5815 .StripeElement,
.page-id-5815 #AccountNumber,
.page-id-5815 #Expiry,
.page-id-5815 #CVV {
  display: block !important;
  width: 100% !important;
  min-height: 34px !important;
  height: 34px !important;
  padding: 7px 12px !important;
  border-radius: 2px !important;
  border: 1px solid var(--IconColor-LightGray, #B8B8B8) !important;
  background: var(--Background-LightGray, #F8FAF9) !important;
  box-shadow: none !important;
  box-sizing: border-box !important;
  position: relative !important;
  z-index: 10 !important;
  pointer-events: auto !important;
}

.page-id-5815 .StripeElement iframe,
.page-id-5815 #AccountNumber iframe,
.page-id-5815 #Expiry iframe,
.page-id-5815 #CVV iframe {
  display: block !important;
  width: 100% !important;
  height: 20px !important;
  min-height: 20px !important;
  border: 0 !important;
  pointer-events: auto !important;
}








/* 文字の長さ分だけ上下ボーダーを付ける汎用クラス */
.ll-text-border-y {
	display: inline-block !important;
	width: fit-content !important;
	max-width: 100% !important;

	padding: 3px 0 !important;
	border-top: 1px solid var(--ll-border, #dcdcdc) !important;
	border-bottom: 1px solid var(--ll-border, #dcdcdc) !important;
}

/* 購入ページの上下ボーダー */
.page-id-5815 .pmpro_form_heading.pmpro_font-large{
	display: inline-block !important;
	width: fit-content !important;
	max-width: 100% !important;

	padding: 3px 0 !important;
	border-top: 1px solid var(--ll-border, #dcdcdc) !important;
	border-bottom: 1px solid var(--ll-border, #dcdcdc) !important;
}




















/* 必須項目のアスタリスクカラー変更 */
.pmpro_asterisk abbr, .pmpro_asterisk abbr[title]{
	color: #E12B2B!important;
}




/* PMPro 会員限定案内カード */

.pmpro_login_wrap .pmpro_card_content,
.pmpro_login_wrap .pmpro_card_actions{
	padding:10px 6px!important;
	
}


/* ログインページ page-id-5819 だけ下余白を消す */
body .page-id-5819 .l-content {
	margin-bottom: 0 !important;
}

.ll-pmpro-lock-card {
    width: min(100%, 500px);
    overflow: hidden;
    border: 1px solid #EDEDED;
    border-radius: 16px;
    background: #fff;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.14);
    color: #000;
    font-family: "M PLUS 1", sans-serif;
    margin: 0 auto;
}

.ll-pmpro-lock-card__main {
    padding: 33px 20px 30px;
    text-align: center;
}

.ll-pmpro-lock-card__title-row {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 15px;
    margin: 0 0 12px;
}

.ll-pmpro-lock-card__title {
    margin: 0;
    color: #000;
    font-size: var(--TextSize-H2, 18px);
    font-style: normal;
    font-weight: 700;
    line-height: 120%;
    /* 21.6px */
    letter-spacing: 0.72px;
}

.ll-pmpro-lock-card__character {
    display: block;
    width: 30px;
    height: auto;
    object-fit: contain;
    flex: 0 0 auto;
}

.ll-pmpro-lock-card__lead {
    margin: 0 0 8px;
    color: #000;
    font-size: var(--TextSize-Body, 14px);
    font-style: normal;
    font-weight: 400;
    line-height: 161%;
    /* 22.54px */
    letter-spacing: 0.042px;
}

.ll-pmpro-lock-card__price {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 28px;
    margin: 0 0 16px;
    color: #000;
    font-style: normal;
    line-height: 1;
}

.ll-pmpro-lock-card__price-label,
.ll-pmpro-lock-card__price-amount span {
    font-size: 14px;
    font-weight: 400;
    letter-spacing: 0.04em;
}

.ll-pmpro-lock-card__price-amount {
    display: inline-flex;
    align-items: baseline;
    gap: 2px;
    font-size: 18px;
    font-weight: 700;
    letter-spacing: 0.04em;
}

.ll-pmpro-lock-card__price-amount strong {
    font-size: 16px;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0.04em;
}

.ll-pmpro-lock-card__price-amount-yen {
    font-size: 14px !important;
    font-weight: 700 !important;
}

.ll-pmpro-lock-card__button {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 259px;
    height: 37px;
    padding: 12px 20px;
    border-radius: 999px;
    background: var(--Blue, linear-gradient(92deg, #3F94E3 21.49%, #8229DA 84.72%));
    color: #fff;
    font-size: var(--TextSize-H2, 18px);
    font-style: normal;
    font-weight: 700;
    line-height: 120%;
    /* 21.6px */
    letter-spacing: 0.72px;
    text-decoration: none;
    box-sizing: border-box;
    transition: transform .08s ease, box-shadow .08s ease, opacity .2s ease;
}

.ll-pmpro-lock-card__button:hover {
    color: #fff;
    opacity: .95;
    text-decoration: none;
}



.ll-pmpro-lock-card__login {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 24px;
    padding: 12px 22px 12px 15px;
    border-top: 1px solid #EDEDED;
    background: #F8F8F8;
    color: #000;
    font-size: var(--TextSize-Body, 14px);
    font-style: normal;
    font-weight: 400;
    line-height: 180%;
    /* 25.2px */
    letter-spacing: 0.042px;
    text-align: left;
}

.ll-pmpro-lock-card__login a {
    color: #62A1FF;
    font-weight: 700;
    text-decoration: underline;
    text-underline-offset: 4px;
    white-space: nowrap;
}




/* =========================================================
   PMPro ログインページ
========================================================= */

/* ログインページ全体 */
.pmpro_login_wrap {
    width: min(100%, 500px);
    margin: 0 auto;
    font-family: "M PLUS 1", sans-serif;
    color: #646464;
    box-shadow: none;
    border: 0;
    background: transparent;
}

.ll-pmpro-login-purchase {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

.ll-pmpro-login-purchase__button {
    margin: 0 auto;
}


/* ログインフォームの白いカード */
.pmpro_login_wrap form,
.pmpro_login_wrap #loginform {
    overflow: hidden;
    margin: 0 auto;
    padding: 32px;
    border: 1px solid #EDEDED;
    border-radius: 8px 8px 0 0;
    background: #fff;
    box-shadow: 0 4px 7px rgba(0, 0, 0, 0.14);
    box-sizing: border-box;
}

/* ラベル */
.pmpro_login_wrap label {
    display: block;
    margin: 0 0 8px;
    color: #646464;
    font-size: 14px;
    font-weight: 400;
    line-height: 180%;
    letter-spacing: 0.042px;
}

/* 入力欄 */
.pmpro_login_wrap input[type="text"],
.pmpro_login_wrap input[type="email"],
.pmpro_login_wrap input[type="password"] {
    width: 100%;
    height: 45px;
    padding: 0 12px;
    border: 1px solid #B8B8B8;
    border-radius: 2px;
    background: #F8FAF9;
    box-shadow: none;
    color: #333;
    font-size: 14px;
    box-sizing: border-box;
}

/* 各入力ブロック */
.pmpro_login_wrap .login-username,
.pmpro_login_wrap .login-password {
    margin: 0 0 26px;
}

/* パスワード行 */
.pmpro_login_wrap .login-password {
    position: relative;
}

/* 「パスワードの表示」ボタン */
.pmpro_login_wrap .pmpro_show_password,
.pmpro_login_wrap .pmpro_btn.pmpro_btn-plain,
.pmpro_login_wrap button[type="button"] {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    border: 0;
    background: transparent;
    box-shadow: none;
    color: #004B66;
    font-size: 14px;
    font-weight: 400;
    line-height: 1;
    text-decoration: none;
    cursor: pointer;
}

/* パスワード表示ボタンの既存アイコン調整 */
.pmpro_login_wrap .pmpro_show_password {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: #004B66;
    font-size: 14px;
    font-weight: 400;
    line-height: 1;
    background: transparent;
    border: 0;
    box-shadow: none;
    padding: 0;
}

.pmpro_form_field.pmpro_form_field-password{
	gap: 0;
}

.pmpro_login_wrap .pmpro_show_password svg,
.pmpro_login_wrap .pmpro_show_password img,
.pmpro_login_wrap .pmpro_show_password .dashicons {
    width: 24px;
    height: 24px;
    font-size: 24px;
}

/* チェックボックス行 */
.pmpro_login_wrap .login-remember {
    display: flex;
    align-items: center;
    margin: 0 0 32px;
    color: #646464;
    font-size: 14px;
    font-weight: 400;
    line-height: 180%;
    letter-spacing: 0.042px;
}

.pmpro_login_wrap .login-remember label {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    margin: 0;
    font-size: 14px;
}

/* チェックボックス */
.pmpro_login_wrap input[type="checkbox"] {
	position: relative;
	width: 18px;
	height: 18px;
	margin: 0;
	border: 1px solid #8B8B8B;
	border-radius: 2px;
	background: #fff;
	appearance: none;
	-webkit-appearance: none;
	cursor: pointer;
	box-sizing: border-box;
}

/* チェック時の背景 */
.pmpro_login_wrap input[type="checkbox"]:checked {
	border-color: #6AA7FF;
	background: #6AA7FF;
}

/* 白いチェックマーク */
.pmpro_login_wrap input[type="checkbox"]:checked::after {
    content: "";
    position: absolute;
    left: 5px;
    top: 0px;
    width: 7px;
    height: 13px;
    border: solid #fff;
    border-width: 0 3px 3px 0;
    transform: rotate(45deg);
}

/* ログインボタンの外側 */
.pmpro_login_wrap .login-submit {
    margin: 0;
    text-align: center;
}

/* ログインボタン */
.pmpro_login_wrap input[type="submit"],
.pmpro_login_wrap .login-submit .pmpro_btn,
.pmpro_login_wrap .login-submit .button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 246px;
	height: 37px;
	padding: 0 20px;
	border: 0!important;
	border-radius: 999px!important;
	background: var(--Blue, linear-gradient(92deg, #3F94E3 21.49%, #8229DA 84.72%));
	color: #fff;
	font-size: 18px;
	font-weight: 700;
	line-height: 120%;
	letter-spacing: 0.72px;
	text-decoration: none;
	cursor: pointer;
	box-sizing: border-box;
}

.pmpro_login_wrap input[type="submit"]:hover,
.pmpro_login_wrap .login-submit .pmpro_btn:hover,
.pmpro_login_wrap .login-submit .button:hover {
	color: #fff;
	opacity: .95;
}

.pmpro_section #loginform label:not(.pmpro_section #loginform .login-remember label) ,
.pmpro_section #loginform label:not(.pmpro_section #loginform .login-remember label) {
	font-weight: 400 !important;
}



/* パスワードの表示ボタンには、ログインボタン用の装飾を絶対に当てない */
.pmpro_login_wrap .pmpro_form_field-password-toggle .pmpro_btn,
.pmpro_login_wrap .pmpro_btn-password-toggle,
.pmpro_login_wrap .pmpro_btn-password-toggle-1,
.pmpro_login_wrap .pmpro_btn-plain {
	width: auto !important;
	height: auto !important;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
	color: #004B66 !important;
	font-size: 14px !important;
	font-weight: 400 !important;
	line-height: 1 !important;
	letter-spacing: 0 !important;
	text-decoration: none !important;
	transform: none !important;
}

.pmpro_section #loginform .login-submit .button {
    padding: 0 !important;
	width: 246px!important;
}

/* パスワードを忘れた方はこちら */
.pmpro_login_wrap .pmpro_actions_nav,
.pmpro_login_wrap .login_lost_password {
	width: 100%;
	margin: 0 auto;
	padding: 11px 20px;
	border: 1px solid #EDEDED;
	border-top: 1px solid #EDEDED;
	border-radius: 0 0 8px 8px;
	background: #F8F8F8;
	box-shadow: 0 4px 7px rgba(0, 0, 0, 0.14);
	text-align: center;
	box-sizing: border-box;
}

.pmpro_login_wrap form,
.pmpro_login_wrap #loginform {
	border-bottom: 0 !important;
	border-radius: 8px 8px 0 0 !important;
}

.pmpro_login_wrap form,
.pmpro_login_wrap #loginform,
.pmpro_login_wrap .pmpro_actions_nav,
.pmpro_login_wrap .login_lost_password {
	width: 100%;
	max-width: 500px;
}

.pmpro_login_wrap .pmpro_card_actions .pmpro_actions_nav {
	margin: 0 !important;
}

.pmpro_login_wrap .pmpro_actions_nav a,
.pmpro_login_wrap .login_lost_password a,
.pmpro_lost_password_wrap .pmpro_actions_nav a {
    color: #6AA7FF;
    font-size: 14px;
    font-weight: 700!important;
    text-decoration: underline;
    text-underline-offset: 4px;
}

/* 下部の購入案内エリア */
.ll-pmpro-login-purchase {
    margin: 40px calc(50% - 50vw) 0;
    padding: 27px 20px 37px;
    background: linear-gradient(24deg, rgba(245, 210, 255, 0.50) 24.69%, rgba(228, 195, 246, 0.50) 41.13%, rgba(190, 191, 255, 0.50) 60.31%, rgba(183, 206, 255, 0.50) 75.58%, rgba(169, 207, 255, 0.50) 93.94%);
    text-align: center;
}

.ll-pmpro-login-purchase__lead {
    margin: 0 0 5px;
    color: #646464;
    font-size: 14px;
    font-weight: 400;
    line-height: 180%;
    letter-spacing: 0.042px;
}

/* 下部の購入ボタン */
.ll-pmpro-login-purchase__button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 246px;
    height: 37px;
    padding: 0 20px;
    border: 1px solid #8229DA;
    border-radius: 999px;
    background: #fff;
    font-size: 18px;
    font-weight: 700;
    line-height: 120%;
    letter-spacing: 0.72px;
    text-decoration: none;
    box-sizing: border-box;
}

/* 購入ボタンの文字だけグラデーション */
.ll-pmpro-login-purchase__button span {
    background: var(--Blue, linear-gradient(92deg, #3F94E3 21.49%, #8229DA 84.72%));
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.ll-pmpro-login-purchase__button:hover {
    text-decoration: none;
    opacity: .95;
}




/* パスワード再設定 */

.pmpro_card.pmpro_lost_password_wrap {
    width: 100%;
    max-width: 500px;
    margin: 0 auto;
}




/* =========================================================
   PMPro 共通ボタン押し込みアニメーション
========================================================= */

.ll-pmpro-lock-card__button,
.pmpro_login_wrap input[type="submit"],
.pmpro_login_wrap .login-submit .pmpro_btn,
.pmpro_login_wrap .login-submit .button,
.ll-pmpro-login-purchase__button {
	box-shadow: 0 3px 0 #4C0B9A !important;
	transform: translateY(0);
	transition:
		transform 0.12s ease,
		box-shadow 0.12s ease,
		opacity 0.2s ease;
	will-change: transform;
}

.ll-pmpro-lock-card__button:active,
.pmpro_login_wrap input[type="submit"]:active,
.pmpro_login_wrap .login-submit .pmpro_btn:active,
.pmpro_login_wrap .login-submit .button:active,
.ll-pmpro-login-purchase__button:active {
	transform: translateY(3px);
	box-shadow: 0 0 0 #4C0B9A !important;
}

/* ログインページ：PMPro標準カードの外枠を消す */
.pmpro_card.pmpro_login_wrap {
    border: 0 !important;
    box-shadow: none !important;
    background: transparent !important;
    padding: 0 !important;
    margin: 0 auto !important;
}


/* PMProログイン：パスワード再設定エリアの標準背景を消す */
.pmpro_login_wrap .pmpro_card_actions,
.pmpro_card.pmpro_login_wrap .pmpro_card_actions {
	background: transparent !important;
	background-color: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
}

.pmpro_login_wrap .pmpro_card_content{
	padding-bottom: 0!important;
}

.pmpro_login_wrap .pmpro_card_actions{
	padding-top: 0!important;
}





.pmpro_section #loginform .input {
        height: 34px!important;
        border-radius: 2px!important;
        border: 1px solid var(--IconColor-LightGray, #B8B8B8)!important;
        background: var(--Background-LightGray, #F8FAF9)!important;
}




/* =========================================================
   PMPro カスタムマイページ
========================================================= */

.ll-pmpro-mypage {
	width: min(100%, 500px);
	margin: 0 auto;
	color: #646464;
	font-family: "M PLUS 1", sans-serif;
}

.ll-pmpro-mypage__profile {
	padding: 10px 30px 30px;
	background: #fff;
	text-align: center;
	margin-bottom: 0!important;
}

.ll-pmpro-mypage__logo {
	display: block;
	width: 160px;
	height: auto;
	margin: 0 auto 0;
	object-fit: contain;
}

.ll-pmpro-mypage__label {
	margin: 5px 0 32px;
	color: #646464;
	font-size: 12px;
	font-weight: 700;
	line-height: 120%;
	letter-spacing: 0.56px;
}

.ll-pmpro-mypage__user {
	display: flex;
	align-items: center;
	gap: 18px;
	text-align: left;
}

.ll-pmpro-mypage__avatar {
	width: 56px;
	height: 56px;
	border-radius: 50%;
	flex: 0 0 auto;
}

.ll-pmpro-mypage__email {
	min-width: 0;
	color: #646464;
	font-size: var(--TextSize-H2, 18px);
	font-style: normal;
	font-weight: 700;
	line-height: 120%;
	letter-spacing: 0.72px;
	word-break: break-all;
}

.ll-pmpro-mypage__menu-area {
	margin: 0 calc(50% - 50vw);
	padding: 44px 30px 42px;
	background: linear-gradient(24deg, rgba(245, 210, 255, 0.50) 24.69%, rgba(228, 195, 246, 0.50) 41.13%, rgba(190, 191, 255, 0.50) 60.31%, rgba(183, 206, 255, 0.50) 75.58%, rgba(169, 207, 255, 0.50) 93.94%);
}

.ll-pmpro-mypage__menu-card,
.ll-pmpro-mypage__menu-group {
	width: min(100%, 440px);
	margin: 0 auto;
	border-radius: 8px;
	background: #fff;
	box-shadow: 0 4px 15px rgba(0, 0, 0, 0.14);
	overflow: hidden;
}

.ll-pmpro-mypage__menu-card {
	display: flex;
	align-items: center;
	min-height: 56px;
	padding: 0 18px;
	box-sizing: border-box;
	color: #646464;
	text-decoration: none;
}

.ll-pmpro-mypage__menu-group {
	margin-top: 30px;
}

.ll-pmpro-mypage__menu-row {
	display: flex;
	align-items: center;
	min-height: 56px;
	padding: 0 18px;
	box-sizing: border-box;
	color: #646464;
	text-decoration: none;
}

.ll-pmpro-mypage__menu-row + .ll-pmpro-mypage__menu-row {
	border-top: 1px solid #EDEDED;
}

.ll-pmpro-mypage__menu-text {
	color: #646464;
	font-size: var(--TextSize-H2, 18px);
	font-style: normal;
	font-weight: 700;
	line-height: 120%;
	letter-spacing: 0.72px;
}

.ll-pmpro-mypage__icon {
	display: inline-block;
	width: 22px;
	height: 22px;
	margin-right: 14px;
	flex: 0 0 auto;
	background: linear-gradient(92deg, #3F94E3 21.49%, #8229DA 84.72%);
}

/* 保存した記事 */
.ll-pmpro-mypage__icon--bookmark {
	-webkit-mask: url("https://note.crap.jp/wp-content/uploads/bookmark-icon.svg") center / contain no-repeat;
	mask: url("https://note.crap.jp/wp-content/uploads/bookmark-icon.svg") center / contain no-repeat;
}

/* アカウント管理 */
.ll-pmpro-mypage__icon--user {
	-webkit-mask: url("https://note.crap.jp/wp-content/uploads/account-management-icon.svg") center / contain no-repeat;
	mask: url("https://note.crap.jp/wp-content/uploads/account-management-icon.svg") center / contain no-repeat;
}

/* 購入管理 */
.ll-pmpro-mypage__icon--receipt {
	-webkit-mask: url("https://note.crap.jp/wp-content/uploads/purchase-management-icon.svg") center / contain no-repeat;
	mask: url("https://note.crap.jp/wp-content/uploads/purchase-management-icon.svg") center / contain no-repeat;
}

.ll-pmpro-mypage__arrow {
	width: 12px;
	height: 12px;
	margin-left: auto;
	border-top: 2px solid #B8B8B8;
	border-right: 2px solid #B8B8B8;
	transform: rotate(45deg);
	flex: 0 0 auto;
}

.ll-pmpro-mypage__dig {
	padding: 44px 30px 54px;
	background: #fff;
	text-align: center;
}

.ll-pmpro-mypage__dig-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	min-width: 260px;
	height: 42px;
	padding: 0 18px;
	border: 1px solid #8B8B8B;
	border-radius: 999px;
	color: #646464;
	font-size: 16px;
	font-weight: 700;
	line-height: 120%;
	letter-spacing: 0.64px;
	text-decoration: none;
	box-sizing: border-box;
}

.ll-pmpro-mypage__dig-arrow {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 26px;
	height: 26px;
	border-radius: 50%;
	background: #8B8B8B;
	color: #fff;
	font-size: 18px;
	line-height: 1;
}























/* アカウント管理ページ */
.post_content h3:where(:not([class^="swell-block-"]):not(.faq_q):not(.p-postList__title))::before {
    height: 0px;
}

.post_content h2:where(:not([class^="swell-block-"]):not(.faq_q):not(.p-postList__title)) {
    border-top: none;
    border-bottom: none;
}

/* アカウント管理 見出しアイコン：上下中央揃え */
.page-id-5999 #pmpro_account-profile .pmpro_section_title {
  display: flex !important;
  align-items: center !important;
  gap: 14px !important;
  padding-left: 0 !important;
  line-height: 1.2 !important;
}
/* 以前の疑似要素アイコンを無効化 */
.page-id-5999 #pmpro_account-profile .pmpro_section_title::before {
  content: none !important;
  display: none !important;
}

/* アカウント管理 見出しアイコン */
.page-id-5999 #pmpro_account-profile .pmpro_section_title {
  display: block !important;
  padding-left: 46px !important;
  min-height: 30px !important;

  background-image: url("https://note.crap.jp/wp-content/uploads/account-management-icon.svg") !important;
  background-repeat: no-repeat !important;
  background-position: left center !important;
  background-size: 30px 30px !important;

  line-height: 1.2 !important;
}


.pmpro_section_title.pmpro_font-x-large{
color: var(--TextColor-Primary, #646464);
font-size: var(--TextSize-H1, 24px);
font-style: normal;
font-weight: 700;
line-height: normal;
letter-spacing: 0.48px;;
}

.pmpro_card_title.pmpro_font-large.pmpro_heading-with-avatar{
color: var(--TextColor-Primary, #646464);
font-size: var(--TextSize-H2, 18px);
font-style: normal;
font-weight: 700;
line-height: 120%; /* 21.6px */
letter-spacing: 0.72px;
}

.pmpro a {
  color: var(--Accent-Blue, #62A1FF) !important;
  font-size: var(--TextSize-Body, 14px) !important;
  font-style: normal !important;
  font-weight: 400;
  line-height: 180% !important;
  letter-spacing: 0.042px !important;
  text-decoration: none;
}


.account_logo{
	width: 156px;
	margin: 0 auto;
}

.page-id-5999 #pmpro_account-profile .pmpro_card_content{
	padding-bottom: 9px;
}

.page-id-5999 #pmpro_account-profile .pmpro_card_title{
	padding: 20px 24px 0;
	
}

		/* PCでは複製した箇条書きメニューを非表示 */
		.page-id-5999 .my-pmpro-mobile-profile-menu {
			display: none;
		}

		@media (max-width: 640px) {
			/* 元の横並びメニューはスマホだけ非表示 */
			.page-id-5999 #pmpro_account-profile .pmpro_card_actions,
			.page-id-5999 #pmpro_account-profile .pmpro_card_actionbar,
			.page-id-5999 #pmpro_account-profile .pmpro_actionlinks,
			.page-id-5999 #pmpro_account-profile .pmpro_card_footer {
				display: none !important;
			}

			/* スマホ用の箇条書きメニュー */
			.page-id-5999 #pmpro_account-profile .my-pmpro-mobile-profile-menu {
				display: block;
				margin: 0;
				padding: 20px 24px;
				list-style: disc;
				background: #f7f7f7;
				border-top: 1px solid #e5e7eb;
			}

			.page-id-5999 #pmpro_account-profile .my-pmpro-mobile-profile-menu li {
				margin: 0 0 5px 1.2em;
				padding: 0;
				line-height: 1.7;
			}

			.page-id-5999 #pmpro_account-profile .my-pmpro-mobile-profile-menu li:last-child {
				margin-bottom: 0;
			}

			.page-id-5999 #pmpro_account-profile .my-pmpro-mobile-profile-menu a {
				text-decoration: none;
			}
		}





































/* 購入履歴ページ */
/* PMPro 購入履歴：ステータス列を非表示 */
.page-id-5817 .pmpro_table_order-status,
.page-id-5994 .pmpro_table_order-status {
  display: none !important;
}


.page-id-5994 #pmpro_account-membership .pmpro_section_title,
.page-id-5994 #pmpro_account-orders .pmpro_section_title {
  display: block !important;
  padding-left: 34px !important;
  padding-top: 4px !important;
  padding-bottom: 4px !important;
  box-sizing: border-box !important;
  background-repeat: no-repeat !important;
  background-position: left calc(50% + 2px) !important;
  background-size: 24px 24px !important;

  line-height: 1.2 !important;
  overflow: visible !important;
}

.page-id-5994 #pmpro_account-membership .pmpro_section_title {
  background-image: url("https://note.crap.jp/wp-content/uploads/purchase-management-icon.svg") !important;
}

.page-id-5994 #pmpro_account-orders .pmpro_section_title {
  background-image: url("https://note.crap.jp/wp-content/uploads/purchase-management-icon2.svg") !important;
}

/* スマホ時：購読プランのアクションリンクを箇条書きにする */
@media (max-width: 600px) {
  .page-id-5994 #pmpro_account-membership .pmpro_card_actions {
    font-size: 0 !important; /* 区切り線の | を非表示にする */
    padding: 24px 32px 28px 54px !important;
  }

  .page-id-5994 #pmpro_account-membership .pmpro_card_actions a {
    display: list-item !important;
    list-style-type: disc !important;
    list-style-position: outside !important;

    color: var(--Accent-Blue, #62A1FF) !important;
    font-size: var(--TextSize-Body, 14px) !important;
    font-style: normal !important;
    font-weight: 400 !important;
    line-height: 180% !important;
    letter-spacing: 0.042px !important;
    text-decoration: none !important;

    margin: 0 0 10px 0 !important;
  }

  .page-id-5994 #pmpro_account-membership .pmpro_card_actions a::marker {
    color: #222;
  }

  .page-id-5994 #pmpro_account-membership .pmpro_card_actions a:last-child {
    margin-bottom: 0 !important;
  }
}

/* PMPro 購読プラン：「変更」リンクを非表示 */
.page-id-5994 #pmpro_account-membership .pmpro_card_action:has(#pmpro_actionlink-change),
.page-id-5994 #pmpro_account-membership .pmpro_card_action:has(#pmpro_actionlink-change) + .pmpro_card_action_separator {
  display: none !important;
}

/* 購入詳細ページ「有料」ステータス非表示 */
.pmpro_list_item_value.pmpro_tag.pmpro_tag-success{
	display: none;
}

.pmpro_card_content,
.pmpro_card_title{
	color: #646464!important;
}

/* 有効期限切れの場合の表示調整 */
.page-id-5994 .ll-expired-benefit-card .pmpro_card_title {
        padding: 20px 0;
	color: #646464;
    }

.page-id-5994 .pmpro_font-large {
        font-size: 18px!important;
    }


.page-id-5994 .pmpro_card_content{
	font-size: 14px;
}

.page-id-5994 .pmpro_table_order-date a{
	text-decoration: underline 1px #62A1FF;
	font-weight: 700;
}

.page-id-5994 #pmpro_account-orders .pmpro_table_order-level {
	font-weight: 700;
}
.page-id-5994 #pmpro_account-orders .pmpro_table_order-level::before {
	font-weight: 400;
}

.page-id-5994 #pmpro_account-orders .pmpro_table_order-amount {
	font-weight: 700;
}
.page-id-5994 #pmpro_account-orders .pmpro_table_order-amount::before {
	font-weight: 400;
}












/* 決済内容詳細ページ */

.page-id-5817 .pmpro_card_actions {
	display: none;
}


.parent-pageid-5812 .pmpro_actions_nav:not(#pmpro_login .pmpro_actions_nav) {
	display: none;
}

#pmpro_order_single-items h3.pmpro_font-large {
  position: relative;
  margin: 32px auto 44px;
  padding: 32px 0 0 0!important;

  color: #55d78f;
  font-size: 18px;
  font-weight: 800;
  line-height: 1.35;
  letter-spacing: 0.08em;
	
  background: transparent;
  border: none;
}

/* チェックマーク画像 */
#pmpro_order_single-items h3.pmpro_font-large::before {
  content: "";
  position: absolute;
  top: 0;
  left: 12px;
  transform: translateX(-50%);

  width: 26px;
  height: 26px;

  background-image: url("https://note.crap.jp/wp-content/uploads/invoice-check.svg");
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}

/* スマホ調整 */
@media (max-width: 480px) {
  #pmpro_order_single-items h3.pmpro_font-large {
    font-size: 32px;
    padding-top: 68px;
    margin-top: 28px;
  }

  #pmpro_order_single-items h3.pmpro_font-large::before {
    width: 54px;
    height: 54px;
  }
}



/* =========================================================
   マイページ：お気に入り記事一覧
========================================================= */

.page-id-5857 .ll-favorite-learning {
  max-width: 800px;
  margin: 0 auto;
  padding: 0 0 80px;
  color: #646464;
  font-family: "M PLUS 1", sans-serif;
}

/* 見出し */
.page-id-5857 .ll-favorite-learning .ll-full-list-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  margin: 0 0 32px;
}

.page-id-5857 .ll-favorite-learning .ll-full-list-head__title {
  display: block;
  margin: 0;
  padding: 4px 0 4px 34px;
  color: #646464;
  font-size: 24px;
  font-weight: 700;
  line-height: 1.25;
  letter-spacing: .03em;
  background-image: url("https://note.crap.jp/wp-content/uploads/bookmark-icon.svg");
  background-repeat: no-repeat;
  background-position: left calc(50% + 2px);
  background-size: 24px 24px;
  box-sizing: border-box;
}

.page-id-5857 .ll-favorite-learning .ll-full-list-head__count {
  flex: 0 0 auto;
  color: #646464;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.2;
  white-space: nowrap;
}

/* カード */
.page-id-5857 .ll-favorite-learning .learning-card {
  margin: 0;
  padding: 16px 0 18px;
  border-bottom: 1px solid #EDEDED;
  background: #fff;
  box-sizing: border-box;
}

.page-id-5857 .ll-favorite-learning .learning-card__main {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 32.5%;
  gap: 16px;
  align-items: start;
}

.page-id-5857 .ll-favorite-learning .learning-card__content {
  min-width: 0;
}

/* 未読・既読 */
.page-id-5857 .ll-favorite-learning .learning-card__status {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin: 0 0 8px;
  padding: 2px 5px;
  border-radius: 4px;
  color: #fff;
  font-size: 12px;
  font-weight: 500;
  line-height: 1.2;
  letter-spacing: .02em;
}

.page-id-5857 .ll-favorite-learning .learning-card__status.is-unread {
  background: #FF6674;
}

.page-id-5857 .ll-favorite-learning .learning-card__status.is-read {
  background: #5CA8FF;
}

/* タイトル */
.page-id-5857 .ll-favorite-learning .learning-card__title {
  margin: 0 0 6px;
  padding-left: 0;
  color: #646464;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.35;
  letter-spacing: .02em;
}

.page-id-5857 .ll-favorite-learning .learning-card__title a {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  color: inherit;
  text-decoration: none;
}

/* 保存数・いいね */
.page-id-5857 .ll-favorite-learning .learning-card__stats {
  display: flex;
  align-items: center;
  gap: 0;
  min-width: 0;
  margin: 0;
  color: #B8B8B8;
  font-size: 12px;
  font-weight: 500;
  line-height: 1.2;
}

/* しおりマークと保存数テキストの間隔 */
.page-id-5857 .ll-favorite-learning .learning-card__save-count-text {
  margin-left: 6px;
  margin-right: 18px;
}

/* ハート側は余計な左余白を持たせない */
.page-id-5857 .ll-favorite-learning .learning-card__favorite-button {
  margin-left: 0;
}

.page-id-5857 .ll-favorite-learning .learning-card__save-remove-button,
.page-id-5857 .ll-favorite-learning .learning-card__favorite-button {
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-width: 0;
  width: auto;
  height: auto;
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  color: #B8B8B8;
  font: inherit;
  line-height: inherit;
  white-space: nowrap;
  cursor: pointer;
  appearance: none;
  -webkit-appearance: none;
}

.page-id-5857 .ll-favorite-learning .learning-card__save-remove-button:hover,
.page-id-5857 .ll-favorite-learning .learning-card__save-remove-button:focus,
.page-id-5857 .ll-favorite-learning .learning-card__save-remove-button:active,
.page-id-5857 .ll-favorite-learning .learning-card__favorite-button:hover,
.page-id-5857 .ll-favorite-learning .learning-card__favorite-button:focus,
.page-id-5857 .ll-favorite-learning .learning-card__favorite-button:active,
.page-id-5857 .ll-favorite-learning .learning-card__favorite-button:disabled {
  border: 0;
  background: transparent;
  box-shadow: none;
  opacity: 1;
}

.page-id-5857 .ll-favorite-learning .learning-card__save-count-text {
  overflow: hidden;
  color: #B8B8B8;
  font-size: 12px;
  font-weight: 500;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.page-id-5857 .ll-favorite-learning .learning-card__favorite-button [data-ll-card-favorite-count] {
  color: #B8B8B8;
  font-size: 12px;
  font-weight: 500;
}

/* しおりアイコン */
.page-id-5857 .ll-favorite-learning .learning-card__bookmark-icon {
  display: inline-block;
  flex: 0 0 16px;
  width: 16px;
  height: 18px;
  background-color: #118238;
  clip-path: none;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 14 20'%3E%3Cpath fill='black' d='M2 0h10a2 2 0 0 1 2 2v17.1a.8.8 0 0 1-1.25.66L7 16l-5.75 3.76A.8.8 0 0 1 0 19.1V2a2 2 0 0 1 2-2Z'/%3E%3C/svg%3E") center / contain no-repeat;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 14 20'%3E%3Cpath fill='black' d='M2 0h10a2 2 0 0 1 2 2v17.1a.8.8 0 0 1-1.25.66L7 16l-5.75 3.76A.8.8 0 0 1 0 19.1V2a2 2 0 0 1 2-2Z'/%3E%3C/svg%3E") center / contain no-repeat;
}

/* ハートアイコン */
.page-id-5857 .ll-favorite-learning .learning-card__heart-icon {
  display: inline-block;
  flex: 0 0 18px;
  width: 18px;
  height: 18px;
  background-color: #B8B8B8;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 22 20'%3E%3Cpath fill='black' d='M11 19.4l-1.36-1.23C4.8 13.78 1.6 10.88 1.6 7.33 1.6 4.43 3.87 2.2 6.75 2.2c1.63 0 3.2.76 4.25 1.96A5.6 5.6 0 0 1 15.25 2.2c2.88 0 5.15 2.23 5.15 5.13 0 3.55-3.2 6.45-8.04 10.84L11 19.4Zm0-2.7.15-.14c4.47-4.05 7.25-6.58 7.25-9.23 0-1.8-1.35-3.13-3.15-3.13-1.39 0-2.74.89-3.22 2.12h-2.06C9.49 5.09 8.14 4.2 6.75 4.2 4.95 4.2 3.6 5.53 3.6 7.33c0 2.65 2.78 5.18 7.25 9.23l.15.14Z'/%3E%3C/svg%3E") center / contain no-repeat;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 22 20'%3E%3Cpath fill='black' d='M11 19.4l-1.36-1.23C4.8 13.78 1.6 10.88 1.6 7.33 1.6 4.43 3.87 2.2 6.75 2.2c1.63 0 3.2.76 4.25 1.96A5.6 5.6 0 0 1 15.25 2.2c2.88 0 5.15 2.23 5.15 5.13 0 3.55-3.2 6.45-8.04 10.84L11 19.4Zm0-2.7.15-.14c4.47-4.05 7.25-6.58 7.25-9.23 0-1.8-1.35-3.13-3.15-3.13-1.39 0-2.74.89-3.22 2.12h-2.06C9.49 5.09 8.14 4.2 6.75 4.2 4.95 4.2 3.6 5.53 3.6 7.33c0 2.65 2.78 5.18 7.25 9.23l.15.14Z'/%3E%3C/svg%3E") center / contain no-repeat;
}

.page-id-5857 .ll-favorite-learning .learning-card__favorite-button.is-active .learning-card__heart-icon {
  background-color: #E52C2C;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 22 20'%3E%3Cpath fill='black' d='M11 19.4l-1.36-1.23C4.8 13.78 1.6 10.88 1.6 7.33 1.6 4.43 3.87 2.2 6.75 2.2c1.63 0 3.2.76 4.25 1.96A5.6 5.6 0 0 1 15.25 2.2c2.88 0 5.15 2.23 5.15 5.13 0 3.55-3.2 6.45-8.04 10.84L11 19.4Z'/%3E%3C/svg%3E") center / contain no-repeat;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 22 20'%3E%3Cpath fill='black' d='M11 19.4l-1.36-1.23C4.8 13.78 1.6 10.88 1.6 7.33 1.6 4.43 3.87 2.2 6.75 2.2c1.63 0 3.2.76 4.25 1.96A5.6 5.6 0 0 1 15.25 2.2c2.88 0 5.15 2.23 5.15 5.13 0 3.55-3.2 6.45-8.04 10.84L11 19.4Z'/%3E%3C/svg%3E") center / contain no-repeat;
}

/* Favoriteプラグイン本体ボタンは非表示 */
.page-id-5857 .ll-favorite-learning .learning-card__save-plugin-button {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  opacity: 0;
  pointer-events: none;
}

/* サムネイル */
.page-id-5857 .ll-favorite-learning .learning-card__thumb {
  display: block;
  width: 100%;
  aspect-ratio: 222 / 116;
  align-self: center;
  border-radius: 2px;
  background: #F4F5F7;
  overflow: hidden;
  text-decoration: none;
}

.page-id-5857 .ll-favorite-learning .learning-card__thumb img,
.page-id-5857 .ll-favorite-learning .learning-card__thumb .no-image {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center center;
}

.page-id-5857 .ll-favorite-learning .learning-card__thumb .no-image {
  background: #F4F5F7;
}

/* タグ */
.page-id-5857 .ll-favorite-learning .learning-card__tags {
  display: flex;
  flex-wrap: nowrap;
  gap: 10px;
  margin: 12px -20px 0 0;
  padding: 0 20px 0 0;
  list-style: none;
  overflow-x: auto;
  overflow-y: hidden;
  white-space: nowrap;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
  -webkit-mask-image: linear-gradient(
    to right,
    #000 0,
    #000 calc(100% - 48px),
    transparent 100%
  );
  mask-image: linear-gradient(
    to right,
    #000 0,
    #000 calc(100% - 48px),
    transparent 100%
  );
}

.page-id-5857 .ll-favorite-learning .learning-card__tags::-webkit-scrollbar {
  display: none;
}

.page-id-5857 .ll-favorite-learning .learning-card__tags li {
  flex: 0 0 auto;
  display: block;
  min-height: 0;
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  list-style: none;
}

.page-id-5857 .ll-favorite-learning .learning-card__tags a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 30px;
  padding: 4px 14px;
  border: 1px solid #EDEDED;
  border-radius: 999px;
  background: #fff;
  color: #646464;
  font-size: 12px;
  font-weight: 500;
  line-height: 1.2;
  text-decoration: none;
  white-space: nowrap;
}

/* スマホ */
/* @media (max-width: 480px) {
  .page-id-5857 .ll-favorite-learning {
    padding: 0 20px 80px;
  }

  .page-id-5857 .ll-favorite-learning .ll-full-list-head {
    margin-bottom: 24px;
  }

  .page-id-5857 .ll-favorite-learning .learning-card__main {
    grid-template-columns: minmax(0, 1fr) 33%;
    gap: 14px;
  }

  .page-id-5857 .ll-favorite-learning .learning-card__stats {
    gap: 14px;
  }
} */





















/* =========================================================
   PMPro チェックアウトページ page-id-5815
========================================================= */

.page-id-5815 {
  --ll-checkout-card-width: 440px;
  --ll-checkout-page-width: 500px;
  --ll-checkout-text: #646464;
  --ll-checkout-border: #EDEDED;
  --ll-checkout-light-bg: #F8F8F8;
  --ll-checkout-input-bg: #F8FAF9;
  --ll-checkout-blue: #62A1FF;
  --ll-checkout-red: #FF6674;
  --ll-checkout-shadow: 0 4px 15px rgba(0, 0, 0, 0.14);
  --ll-checkout-gradient-bg: linear-gradient(
    24deg,
    rgba(245, 210, 255, 0.50) 24.69%,
    rgba(228, 195, 246, 0.50) 41.13%,
    rgba(190, 191, 255, 0.50) 60.31%,
    rgba(183, 206, 255, 0.50) 75.58%,
    rgba(169, 207, 255, 0.50) 93.94%
  );
}

/* ページ周り */
.page-id-5815 .c-pageTitle,
.page-id-5815 #breadcrumb {
  display: none;
}

.page-id-5815 .l-content {
  max-width: none;
  margin: 0 auto;
  padding: 0;
}

.page-id-5815 .l-mainContent,
.page-id-5815 .l-article,
.page-id-5815 .post_content {
  width: 100%;
  max-width: none;
}

.page-id-5815 .pmpro {
  width: 100%;
  max-width: var(--ll-checkout-page-width);
  margin: 0 auto;
  padding: 30px 24px 70px;
  color: var(--ll-checkout-text);
  font-family: "M PLUS 1", sans-serif;
  box-sizing: border-box;
}

/* 上部ロゴ：JSで追加する想定 */
.page-id-5815 .ll-pmpro-checkout-logo {
  display: flex;
  flex-direction: column;
  align-items: center;
  margin: 0 0 26px;
  text-align: center;
}

.page-id-5815 .ll-pmpro-checkout-logo img {
  display: block;
  width: 156px;
  height: auto;
  margin: 0 auto 2px;
}

.page-id-5815 .ll-pmpro-checkout-logo span {
  color: var(--ll-checkout-text);
  font-size: var(--TextSize-Body, 14px);
  font-weight: 700;
  line-height: 120%;
  letter-spacing: 0.56px;
}

/* PMPro標準余白リセット */
.page-id-5815 .pmpro_form,
.page-id-5815 .pmpro_form_fieldset {
  margin: 0;
  padding: 0;
  border: 0;
}


/* =========================================================
   ご注文内容
========================================================= */

.page-id-5815 #pmpro_pricing_fields {
  width: 100%;
  max-width: var(--ll-checkout-card-width);
  margin: 0 auto 34px;
}

.page-id-5815 #pmpro_pricing_fields .pmpro_card_title {
  margin: 0;
  padding: 21px 44px 14px;
  border-bottom: 1px solid var(--ll-checkout-border);
  color: var(--ll-checkout-text);
  font-size: var(--TextSize-H2, 18px);
  font-style: normal;
  font-weight: 700;
  line-height: 120%;
  letter-spacing: 0.72px;
}

.page-id-5815 #pmpro_pricing_fields .pmpro_card_content {
  padding: 22px 37px 25px;
}

.page-id-5815 #pmpro_pricing_fields p {
  margin: 0 0 10px;
  color: var(--ll-checkout-text);
  font-size: var(--TextSize-Body, 14px);
  font-style: normal;
  font-weight: 400;
  line-height: 180%;
  letter-spacing: 0.042px;
}

.page-id-5815 #pmpro_pricing_fields p:last-child {
  margin-bottom: 0;
}

.page-id-5815 #pmpro_pricing_fields strong {
  font-weight: 700;
}

/* 上部の割引コード案内は非表示 */
.page-id-5815 #pmpro_pricing_fields > .pmpro_card_actions {
  display: none;
}

/* =========================================================
   グラデーション背景エリア
   アカウント登録 + お支払い情報をひと続きにする
========================================================= */

.page-id-5815 .ll-pmpro-checkout-gradient-area {
  margin: 0 calc(50% - 50vw);
  padding: 32px 24px 34px;
  background: var(--ll-checkout-gradient-bg);
  box-sizing: border-box;
}

.page-id-5815 #pmpro_user_fields,
.page-id-5815 #pmpro_payment_information_fields,
.page-id-5815 #pmpro_billing_address_fields {
  width: 100%;
  margin: 0;
  padding: 0;
  background: transparent;
}

.page-id-5815 #pmpro_user_fields {
  margin-bottom: 30px;
}

.page-id-5815 #pmpro_payment_information_fields {
  margin-bottom: 0;
}

.page-id-5815 #pmpro_user_fields .pmpro_card,
.page-id-5815 #pmpro_payment_information_fields .pmpro_card {
  width: 100%;
  max-width: var(--ll-checkout-card-width);
  margin: 0 auto;
}

.page-id-5815 #pmpro_user_fields .pmpro_card_content,
.page-id-5815 #pmpro_payment_information_fields .pmpro_card_content {
  padding: 32px 37px 34px;
}

/* =========================================================
   セクション見出し
========================================================= */

.page-id-5815 .pmpro_form_legend {
  display: block;
  width: 100%;
  margin: 0;
  padding: 0;
}

.page-id-5815 .pmpro_form_heading {
  position: inherit;
  display: inline-block;
  margin: 0 0 28px;
  padding-top: 10px;
  color: var(--ll-checkout-text);
  font-size: var(--TextSize-H2, 18px);
  font-style: normal;
  font-weight: 700;
  line-height: 120%;
  letter-spacing: 0.72px;
}



/* アカウント登録説明文：JSで追加 */
.page-id-5815 .ll-checkout-user-lead {
  margin: 8px 0 30px!important;
  color: var(--ll-checkout-text);
  font-size: var(--TextSize-Body, 14px);
  font-style: normal;
  font-weight: 400;
  line-height: 180%;
  letter-spacing: 0.042px;
}

.page-id-5815 .ll-checkout-user-lead strong {
  font-weight: 700;
}

.page-id-5815 .ll-checkout-user-lead-green {
  color: #2FBF71;
}

.page-id-5815 #pmpro_account_loggedin {
	font-size:14px!important;
}

/* =========================================================
   フォーム共通
========================================================= */

/* PMPro標準の2カラムを1カラム化 */
.page-id-5815 #pmpro_user_fields .pmpro_cols-2,
.page-id-5815 #pmpro_user_fields .pmpro_cols-3,
.page-id-5815 #pmpro_payment_information_fields .pmpro_cols-2,
.page-id-5815 #pmpro_payment_information_fields .pmpro_cols-3,
.page-id-5815 #pmpro_user_fields .pmpro_form_fields,
.page-id-5815 #pmpro_payment_information_fields .pmpro_form_fields {
  display: block;
  width: 100%;
}

/* 各フィールド */
.page-id-5815 #pmpro_user_fields .pmpro_form_field,
.page-id-5815 #pmpro_payment_information_fields .pmpro_form_field {
  display: block;
  width: 100%;
  max-width: 100%;
  flex: 0 0 100%;
  margin: 0 0 22px!important;
  box-sizing: border-box;
}

/* ラベル */
.page-id-5815 .pmpro_form_label {
  display: block;
  width: 100%;
  margin: 0px;
  color: var(--ll-checkout-text);
  font-size: var(--TextSize-Body, 14px);
  font-style: normal;
  font-weight: 400;
  line-height: 180%;
  letter-spacing: 0.042px;
  box-sizing: border-box;
}

.page-id-5815 .pmpro_form_field-password > .pmpro_form_label {
    padding-right: 0px!important;
}

/* 必須マークはPMPro標準だけを使う */
.page-id-5815 .pmpro_form_label::after {
  content: none;
}

.page-id-5815 .pmpro_form_input-required,
.page-id-5815 .pmpro_asterisk {
  color: var(--ll-checkout-red);
  font-weight: 700;
  margin-left: 2px;
}


/* =========================================================
   パスワード欄
========================================================= */


.page-id-5815 .pmpro_form_field-password > .pmpro_form_label {
  padding-right: 150px;
}

.page-id-5815 .pmpro_form_field-password-toggle {
  top: 0;
  right: 0;
  width: auto;
  max-width: none;
  min-width: max-content;
  white-space: nowrap;
  z-index: 2;
}

.page-id-5815 .pmpro_btn-password-toggle,
.page-id-5815 .pmpro_form_field-password-toggle .pmpro_btn,
.page-id-5815 .pmpro_form_field-password-toggle button {
  display: inline-flex !important;
  align-items: center;
  gap: 6px;
  width: auto !important;
  max-width: none;
  height: auto !important;
  min-height: 0;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0;
  background: transparent !important;
  box-shadow: none !important;
  color: #004B66 !important;
  font-size: var(--TextSize-Body, 14px) !important;
  font-style: normal;
  font-weight: 700 !important;
  line-height: 180% !important;
  letter-spacing: 0.042px;
  white-space: nowrap;
  writing-mode: horizontal-tb;
  text-orientation: mixed;
}

.page-id-5815 .pmpro_btn-password-toggle svg {
  width: 20px;
  height: 20px;
  stroke: #004B66;
}

.page-id-5815 .my-pmpro-password-policy-note {
  clear: both;
  width: 100%;
  margin: -8px 0 24px;
  color: var(--ll-checkout-text);
  font-size: var(--TextSize-Tiny, 12px) !important;
  font-style: normal;
  font-weight: 500;
  line-height: 120% !important;
  letter-spacing: 0.24px;
}

/* =========================================================
   アカウント登録下部ログイン案内
========================================================= */

.page-id-5815 #pmpro_user_fields .pmpro_card_actions {
  margin: 0;
  padding: 20px 44px;
  border-top: 1px solid var(--ll-checkout-border);
  background: var(--ll-checkout-light-bg);
  color: var(--ll-checkout-text);
  font-size: var(--TextSize-Body, 14px);
  font-style: normal;
  font-weight: 400;
  line-height: 180%;
  letter-spacing: 0.042px;
}

.page-id-5815 #pmpro_user_fields .pmpro_card_actions a {
  color: var(--Accent-Blue, #62A1FF);
  font-weight: 700;
  text-decoration: underline;
  text-underline-offset: 4px;
}

/* =========================================================
   お支払い情報
========================================================= */

.page-id-5815 #pmpro_payment_information_fields .pmpro_payment-account-number,
.page-id-5815 #pmpro_payment_information_fields .pmpro_payment-expiration,
.page-id-5815 #pmpro_payment_information_fields .pmpro_payment-cvv {
  display: block;
  width: 100%;
  max-width: 100%;
}

/* =========================================================
   割引コード欄
========================================================= */

.page-id-5815 #pmpro_payment_information_fields .pmpro_payment-discount-code {
  display: block;
  width: auto;
  max-width: none;
/*   margin: 26px -44px -34px; */
/*   padding: 20px 44px; */
/*   border-top: 1px solid var(--ll-checkout-border); */
/*   background: var(--ll-checkout-light-bg); */
  box-sizing: border-box;
}

.page-id-5815 #pmpro_payment_information_fields .pmpro_payment-discount-code .pmpro_form_label {
  display: block;
  margin: 0 0 10px;
  color: var(--ll-checkout-text);
  font-size: var(--TextSize-Body, 14px);
  font-style: normal;
  font-weight: 700;
  line-height: 180%;
  letter-spacing: 0.042px;
}

.page-id-5815 #pmpro_payment_information_fields .pmpro_payment-discount-code .pmpro_form_fields-inline {
  display: flex;
  align-items: center;
  gap: 8px;
  width: 100%;
  max-width: 100%;
  flex-wrap: nowrap;
}

.page-id-5815 #pmpro_discount_code {
  width: 100px !important;
  max-width: 100px !important;
  flex: 0 0 100px;
  height: 34px !important;
  margin: 0;
}

.page-id-5815 #discount_code_button,
.page-id-5815 .pmpro_btn-submit-discount-code {
  flex: 1 1 auto;
  width: 259px !important;
  max-width: 259px;
  height: 37px !important;
  min-height: 37px;
  margin: 0;
  padding: 0 20px !important;
}

@media (max-width: 520px) {
/*   .page-id-5815 #pmpro_payment_information_fields .pmpro_payment-discount-code {
    margin-left: -44px;
    margin-right: -44px;
    padding-left: 44px;
    padding-right: 44px;
  } */

  .page-id-5815 #discount_code_button,
  .page-id-5815 .pmpro_btn-submit-discount-code {
    width: auto !important;
    max-width: none;
  }
}

/* =========================================================
   利用規約
========================================================= */

.page-id-5815 .my-pmpro-terms-agreement {
  width: 100%;
  max-width: var(--ll-checkout-card-width);
  margin: 34px auto 28px;
  padding: 20px;
  border-radius: 8px;
  background: var(--ll-checkout-light-bg);
  box-sizing: border-box;
}

.page-id-5815 .my-pmpro-terms-label {
  display: flex;
  align-items: center;
  gap: 10px;
  color: var(--ll-checkout-text);
  font-size: var(--TextSize-Body, 14px);
  font-style: normal;
  font-weight: 700;
  line-height: 180%;
  letter-spacing: 0.042px;
}

.page-id-5815 .my-pmpro-terms-label input[type="checkbox"] {
  position: relative;
  width: 20px;
  height: 20px;
  margin: 0;
  flex: 0 0 20px;
  border: 1px solid #8B8B8B;
  border-radius: 2px;
  background: #fff;
  appearance: none;
  -webkit-appearance: none;
}

.page-id-5815 .my-pmpro-terms-label input[type="checkbox"]:checked {
  border-color: var(--ll-checkout-blue);
  background: var(--ll-checkout-blue);
}

.page-id-5815 .my-pmpro-terms-label input[type="checkbox"]:checked::after {
  content: "";
  position: absolute;
  left: 6px;
  top: 2px;
  width: 6px;
  height: 12px;
  border: solid #fff;
  border-width: 0 2px 2px 0;
  transform: rotate(45deg);
}

.page-id-5815 .my-pmpro-terms-label a {
  color: var(--Accent-Blue, #62A1FF);
  font-weight: 700;
  text-decoration: underline;
  text-underline-offset: 4px;
}

.page-id-5815 .my-pmpro-terms-error {
  margin: 10px 0 0;
  color: #b32d2e;
  font-size: var(--TextSize-Tiny, 12px);
  font-weight: 700;
  line-height: 120%;
  letter-spacing: 0.24px;
}

/* =========================================================
   ボタン
========================================================= */

.page-id-5815 .pmpro_form_submit {
  max-width: var(--ll-checkout-card-width);
  margin: 0 auto 30px!important;
  text-align: center;
display: block!important;
}

.page-id-5815 #pmpro_submit_span {
  display: block;
}

.page-id-5815 #pmpro_btn-submit,
.page-id-5815 .pmpro_btn-submit-discount-code {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 259px;
  max-width: 100%;
  height: 37px;
  min-height: 37px;
  padding: 0 20px;
  border: 0 !important;
  border-radius: 999px !important;
  background: var(--Blue, linear-gradient(92deg, #3F94E3 21.49%, #8229DA 84.72%)) !important;
  box-shadow: 0 3px 0 #4C0B9A !important;
  color: #fff !important;
  font-size: var(--TextSize-H2, 18px);
  font-style: normal;
  font-weight: 700;
  line-height: 120%;
  letter-spacing: 0.72px;
  text-align: center;
  text-decoration: none;
  box-sizing: border-box;
  cursor: pointer;
  transition: transform .12s ease, box-shadow .12s ease, opacity .2s ease;
}

.page-id-5815 #pmpro_btn-submit:hover,
.page-id-5815 .pmpro_btn-submit-discount-code:hover {
  color: #fff !important;
  opacity: .95;
  text-decoration: none;
}

.page-id-5815 #pmpro_btn-submit:active,
.page-id-5815 .pmpro_btn-submit-discount-code:active {
  transform: translateY(3px);
  box-shadow: 0 0 0 #4C0B9A !important;
}

.page-id-5815 #pmpro_btn-submit.my-pmpro-submit-disabled {
  opacity: .45 !important;
  filter: none;
}

.page-id-5815 #pmpro_processing_message {
  margin-top: 12px;
  color: var(--ll-checkout-text);
  font-size: var(--TextSize-Tiny, 12px);
  font-weight: 500;
  line-height: 120%;
  letter-spacing: 0.24px;
}

/* エラー */
.page-id-5815 .pmpro_message {
  max-width: var(--ll-checkout-card-width);
  margin: 0 auto 20px;
  font-size: var(--TextSize-Body, 14px);
  line-height: 180%;
  letter-spacing: 0.042px;
}



/* =========================================================
   購入完了ページ
========================================================= */

.parent-pageid-5815,
.parent-pageid-5815 p{
	color: #646464!important;
}

.parent-pageid-5815 .pmpro_card_actions {
	display: none;
}

.parent-pageid-5815 .pmpro_actions_nav:not(#pmpro_login .pmpro_actions_nav) {
	display: none;
}








/* =========================================================
   スマホ
========================================================= */

@media (max-width: 520px) {
  .page-id-5815 .pmpro {
    max-width: none;
    padding: 28px 24px 64px;
  }

  .page-id-5815 #pmpro_pricing_fields,
  .page-id-5815 #pmpro_user_fields .pmpro_card,
  .page-id-5815 #pmpro_payment_information_fields .pmpro_card,
  .page-id-5815 .my-pmpro-terms-agreement,
  .page-id-5815 .pmpro_form_submit {
    max-width: 100%;
  }

  .page-id-5815 #pmpro_pricing_fields .pmpro_card_title,
  .page-id-5815 #pmpro_pricing_fields .pmpro_card_content,
  .page-id-5815 #pmpro_user_fields .pmpro_card_content,
  .page-id-5815 #pmpro_payment_information_fields .pmpro_card_content,
  .page-id-5815 #pmpro_user_fields .pmpro_card_actions {
    padding-left: 34px;
    padding-right: 34px;
  }

}
























/* =========================================================
   PMPro プロフィール写真変更画面
========================================================= */

#pmpro_change_avatar {
  max-width: 500px;
  margin: 0 auto;
  color: #646464;
  font-family: "M PLUS 1", sans-serif;
}

#pmpro_change_avatar .pmpro_card {
  overflow: hidden;
  border: 1px solid #EDEDED;
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.14);
}

#pmpro_change_avatar .pmpro_card_content {
  padding: 42px 40px 46px;
  box-sizing: border-box;
}

#pmpro_change_avatar .pmpro_form_heading {
  max-width: 320px;
  margin: 0 auto 34px;
  color: #222;
  font-size: var(--TextSize-H1, 24px);
  font-weight: 700;
  line-height: 130%;
  letter-spacing: 0.72px;
}

#pmpro_change_avatar .pmpro_form_field-pmpro_avatar {
  text-align: center;
}

#pmpro_change_avatar .pmpro_form_field-file-preview {
  margin: 0 auto 18px;
  text-align: center;
}

#pmpro_change_avatar #pmpro_avatar_preview {
  display: block;
  width: 112px;
  height: 112px;
  margin: 0 auto;
  border-radius: 50%;
  object-fit: cover;
  object-position: center;
  background: #F8FAF9;
}

/* 現在のファイル名は非表示 */
#pmpro_change_avatar .pmpro_form_field-file-name.pmpro_file_pmpro_avatar_name {
  display: none;
}

/* =========================================================
   削除・交換・削除取り消し
========================================================= */

#pmpro_change_avatar .pmpro_form_field-file-actions {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 28px;
  margin: 18px auto 0;
  text-align: center;
}

/* PMProのJSが show/hide するので display には !important を付けない */
#pmpro_change_avatar #pmpro_delete_file_pmpro_avatar_button,
#pmpro_change_avatar #pmpro_replace_file_pmpro_avatar_button,
#pmpro_change_avatar #pmpro_cancel_change_file_pmpro_avatar_button {
  width: auto !important;
  min-width: 0 !important;
  max-width: none !important;
  height: auto !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  font-size: var(--TextSize-Body, 14px) !important;
  font-weight: 700 !important;
  line-height: 180% !important;
  letter-spacing: 0.042px !important;
  text-decoration: underline !important;
  text-underline-offset: 4px;
  cursor: pointer !important;
  transform: none !important;
}

#pmpro_change_avatar #pmpro_delete_file_pmpro_avatar_button {
  color: #E15B5B !important;
}

#pmpro_change_avatar #pmpro_replace_file_pmpro_avatar_button,
#pmpro_change_avatar #pmpro_cancel_change_file_pmpro_avatar_button {
  color: var(--Accent-Blue, #62A1FF) !important;
}

/* =========================================================
   削除時 / 交換時 の表示を分ける
========================================================= */

/* キャンセルボタンの元テキストを消す */
#pmpro_change_avatar #pmpro_cancel_change_file_pmpro_avatar_button {
  font-size: 0 !important;
}

/* 交換時：アップロード欄が表示されている時 */
#pmpro_change_avatar
.pmpro_form_field-pmpro_avatar:has(#pmpro_file_pmpro_avatar_upload:not([style*="display: none"]):not([hidden]))
#pmpro_cancel_change_file_pmpro_avatar_button::before {
  content: "交換を取り消す";
  font-size: var(--TextSize-Body, 14px);
}

/* 削除時：キャンセルボタンは表示されているが、アップロード欄は表示されていない時 */
#pmpro_change_avatar
.pmpro_form_field-pmpro_avatar:has(#pmpro_cancel_change_file_pmpro_avatar_button:not([style*="display: none"])):not(:has(#pmpro_file_pmpro_avatar_upload:not([style*="display: none"]):not([hidden])))
#pmpro_cancel_change_file_pmpro_avatar_button::before {
  content: "削除を取り消す";
  font-size: var(--TextSize-Body, 14px);
}

/* 削除時だけ画像を薄くする */
#pmpro_change_avatar
.pmpro_form_field-pmpro_avatar:has(#pmpro_cancel_change_file_pmpro_avatar_button:not([style*="display: none"])):not(:has(#pmpro_file_pmpro_avatar_upload:not([style*="display: none"]):not([hidden])))
#pmpro_avatar_preview {
  opacity: .35;
  filter: grayscale(1);
}

/* 削除時だけ注意文を出す */
#pmpro_change_avatar
.pmpro_form_field-pmpro_avatar:has(#pmpro_cancel_change_file_pmpro_avatar_button:not([style*="display: none"])):not(:has(#pmpro_file_pmpro_avatar_upload:not([style*="display: none"]):not([hidden])))::after {
  content: "プロフィール写真を削除します。よろしければ、下の「変更を保存する」を押してください。";
  display: block;
  max-width: 320px;
  margin: 16px auto 0;
  padding: 10px 14px;
  border-radius: 6px;
  background: #FFF5F5;
  color: #E15B5B;
  font-size: var(--TextSize-Tiny, 12px);
  font-weight: 700;
  line-height: 160%;
  letter-spacing: 0.24px;
}

/* =========================================================
   交換時に出るアップロード欄
========================================================= */

#pmpro_change_avatar #pmpro_file_pmpro_avatar_upload {
  margin: 24px auto 0;
  text-align: left;
}

#pmpro_change_avatar #pmpro_file_pmpro_avatar_upload .pmpro_form_label {
  display: block;
  margin: 0 0 8px;
  color: #646464;
  font-size: var(--TextSize-Body, 14px);
  font-weight: 700;
  line-height: 180%;
  letter-spacing: 0.042px;
}

#pmpro_change_avatar #pmpro_avatar {
  width: 100%;
  height: auto !important;
  padding: 10px 12px !important;
  border: 1px solid var(--IconColor-LightGray, #B8B8B8) !important;
  border-radius: 2px !important;
  background: var(--Background-LightGray, #F8FAF9) !important;
  color: #646464;
  font-size: var(--TextSize-Body, 14px);
  box-shadow: none !important;
  box-sizing: border-box;
}

#pmpro_change_avatar .pmpro_form_hint {
  margin: 8px 0 0;
  color: #8B8B8B;
  font-size: var(--TextSize-Tiny, 12px);
  font-weight: 500;
  line-height: 120%;
  letter-spacing: 0.24px;
}

/* =========================================================
   保存・画面下キャンセル
========================================================= */

#pmpro_change_avatar .pmpro_spacer {
  display: none;
}

#pmpro_change_avatar .pmpro_form_submit {
  margin: 56px auto 0;
  text-align: center;
}

#pmpro_change_avatar .pmpro_btn-submit-change-avatar {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  width: 259px !important;
  min-width: 259px !important;
  height: 37px !important;
  min-height: 37px !important;
  margin: 0 auto 22px !important;
  padding: 0 20px !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: var(--Blue, linear-gradient(92deg, #3F94E3 21.49%, #8229DA 84.72%)) !important;
  box-shadow: 0 3px 0 #4C0B9A !important;
  color: #fff !important;
  font-size: var(--TextSize-H2, 18px) !important;
  font-weight: 700 !important;
  line-height: 120% !important;
  letter-spacing: 0.72px !important;
  text-align: center;
  text-decoration: none !important;
  cursor: pointer;
}

#pmpro_change_avatar .pmpro_form_submit .pmpro_btn-cancel {
  display: block !important;
  width: fit-content !important;
  min-width: 0 !important;
  height: auto !important;
  min-height: 0 !important;
  margin: 0 auto !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: #8B8B8B !important;
  font-size: var(--TextSize-Body, 14px) !important;
  font-weight: 700 !important;
  line-height: 180% !important;
  letter-spacing: 0.042px !important;
  text-align: center;
  text-decoration: underline !important;
  text-underline-offset: 4px;
  transform: none !important;
  cursor: pointer;
}

@media (max-width: 520px) {
  #pmpro_change_avatar .pmpro_card_content {
    padding: 34px 32px 40px;
  }

  #pmpro_change_avatar .pmpro_form_heading {
    max-width: 100%;
  }

  #pmpro_change_avatar .pmpro_form_field-file-actions {
    gap: 22px;
  }
}

















































/* =========================================================
   PMPro 支払い方法変更ページ
   対象: .ll-pmpro-billing
   目標デザイン反映版
========================================================= */

.ll-pmpro-billing {
	--ll-card-width: 560px;
	--ll-card-side-gap: 56px;
	--ll-main-text: #62666a;
	--ll-sub-text: #666a6d;
	--ll-border: #dddddd;
	--ll-box-bg: #f7f7f7;
	--ll-blue: #66a6ff;
	--ll-purple: #7f25e9;

	width: 100%;
	max-width: none !important;
	margin: 0 auto !important;
	padding: 0 !important;
	color: var(--ll-main-text) !important;
	font-size: 14px;
	line-height: 1.8;
	box-sizing: border-box;
}

.ll-pmpro-billing *,
.ll-pmpro-billing *::before,
.ll-pmpro-billing *::after {
	box-sizing: border-box;
}

/* PMPro標準の大枠リセット */
.ll-pmpro-billing .pmpro,
.ll-pmpro-billing .pmpro_section,
.ll-pmpro-billing #pmpro_billing-1,
.ll-pmpro-billing [id^="pmpro_billing-"],
.ll-pmpro-billing #pmpro_level-1,
.ll-pmpro-billing [id^="pmpro_level-"] {
	margin: 0;
	padding: 0;
	border: 0;
/* 	background: transparent !important; */
	box-shadow: none !important;
}

/* =========================================================
   ご契約情報カード
========================================================= */

.ll-pmpro-billing .ll-billing-contract-card {
	width: min(var(--ll-card-width), calc(100% - var(--ll-card-side-gap))) !important;
	max-width: var(--ll-card-width) !important;
	margin: 0px auto 66px !important;
	padding: 0 !important;
	background: #fff !important;
	border: 0 !important;
	border-radius: 6px !important;
	box-shadow: 0 3px 14px rgba(0, 0, 0, 0.18) !important;
	overflow: hidden !important;
}

.ll-pmpro-billing .ll-billing-contract-card .pmpro_card_title {
	display: block !important;
	visibility: visible !important;
	height: auto !important;
	margin: 0 !important;
	padding: 25px 37px 6px !important;
	border: 0 !important;
	border-bottom: 1px solid var(--ll-border) !important;
	background: transparent !important;
	box-shadow: none !important;
	color: var(--ll-main-text) !important;
	font-size: 18px !important;
	font-weight: 700 !important;
	line-height: 1.35 !important;
	letter-spacing: 0.02em !important;
	text-indent: 0 !important;
	overflow: visible !important;
}

.ll-pmpro-billing .ll-billing-contract-card .pmpro_card_title::before,
.ll-pmpro-billing .ll-billing-contract-card .pmpro_card_title::after {
	content: none !important;
}

.ll-pmpro-billing .ll-billing-contract-card .pmpro_card_content {
	margin: 0 !important;
	padding: 26px 37px 40px !important;
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
}

.ll-pmpro-billing .ll-billing-contract-card .pmpro_list {
	display: block !important;
	margin: 0 !important;
	padding: 0 !important;
	list-style: none !important;
}

.ll-pmpro-billing .ll-billing-contract-card .pmpro_list_item {
	display: block !important;
	margin: 0 0 22px !important;
	padding: 0 !important;
	border: 0 !important;
	background: transparent !important;
}

.ll-pmpro-billing .ll-billing-contract-card .pmpro_list_item:last-child {
	margin-bottom: 0 !important;
}

.ll-pmpro-billing .ll-billing-contract-card .pmpro_list_item_label {
	display: block !important;
	margin: 0 0 3px !important;
	color: var(--ll-sub-text) !important;
	font-size: 14px !important;
	font-weight: 400 !important;
	line-height: 1.45 !important;
}

.ll-pmpro-billing .ll-billing-contract-card .pmpro_list_item_value {
	display: block !important;
	color: var(--ll-main-text) !important;
	font-size: 14px !important;
	font-weight: 700 !important;
	line-height: 1.5 !important;
}

.ll-pmpro-billing .ll-contract-login-divider {
	border: 0 !important;
	border-top: 1px solid var(--ll-border) !important;
	margin: 20px 0 21px !important;
	padding: 0 !important;
	height: 0 !important;
}

.ll-pmpro-billing .ll-contract-login-message {
	margin: 0 !important;
	padding: 0 !important;
	color: var(--ll-main-text) !important;
	font-size: 14px !important;
	font-weight: 400 !important;
	line-height: 1.9 !important;
	letter-spacing: 0.01em !important;
}

.ll-pmpro-billing .ll-contract-login-message strong {
	font-weight: 700 !important;
}

.ll-pmpro-billing .ll-contract-login-message a {
	color: #66a6ff !important;
	font-weight: 700 !important;
	text-decoration: underline !important;
	text-underline-offset: 3px !important;
}

/* =========================================================
   お支払い方法変更エリア
========================================================= */

.ll-pmpro-billing .ll-billing-payment-area {
	width: auto !important;
	max-width: none !important;
	margin: 0 calc(50% - 50vw) 40px!important;
	padding: 46px 0 58px !important;
	background: linear-gradient(24deg, rgba(245, 210, 255, 0.50) 24.69%, rgba(228, 195, 246, 0.50) 41.13%, rgba(190, 191, 255, 0.50) 60.31%, rgba(183, 206, 255, 0.50) 75.58%, rgba(169, 207, 255, 0.50) 93.94%); !important;
	border: 0 !important;
	box-shadow: none !important;
}

/* セクション見出し */
.post_content .ll-pmpro-billing .ll-billing-payment-title,
.ll-pmpro-billing .ll-billing-payment-title {
	display: flex !important;
	align-items: center !important;
	justify-content: flex-start !important;
	gap: 7px !important;
	visibility: visible !important;
	width: min(var(--ll-card-width), calc(100% - var(--ll-card-side-gap))) !important;
	max-width: var(--ll-card-width) !important;
	height: auto !important;
	min-height: 0 !important;
	margin: 0 auto 26px !important;
	padding: 0 !important;
	border: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
	color: var(--ll-main-text) !important;
	font-size: 24px !important;
	font-weight: 700 !important;
	line-height: 1.3 !important;
	letter-spacing: 0.02em !important;
	text-align: left !important;
	text-indent: 0 !important;
	overflow: visible !important;
	white-space: normal !important;
}


.ll-pmpro-billing .ll-billing-payment-title::after {
	content: none !important;
}

/* 白いフォームカード */
.ll-pmpro-billing .ll-billing-payment-card {
	width: min(var(--ll-card-width), calc(100% - var(--ll-card-side-gap))) !important;
	max-width: var(--ll-card-width) !important;
	margin: 0 auto !important;
	padding: 40px 37px 54px !important;
	background: #fff !important;
	border: 0 !important;
	border-radius: 6px !important;
	box-shadow: 0 3px 14px rgba(0, 0, 0, 0.18) !important;
}

/* =========================================================
   現在のお支払い情報
========================================================= */

.ll-pmpro-billing .ll-current-payment-heading,
.ll-pmpro-billing .ll-new-payment-heading {
	display: inline-block !important;
	visibility: visible !important;
	height: auto !important;
	margin: 5px 0 24px !important;
	background: transparent !important;
	box-shadow: none !important;
	color: var(--ll-main-text) !important;
	font-size: 18px !important;
	font-weight: 600 !important;
	line-height: 1.35 !important;
	letter-spacing: 0.72px !important;
	text-indent: 0 !important;
	overflow: visible !important;
}

.ll-pmpro-billing .ll-current-payment-heading::before,
.ll-pmpro-billing .ll-current-payment-heading::after,
.ll-pmpro-billing .ll-new-payment-heading::before,
.ll-pmpro-billing .ll-new-payment-heading::after {
	content: none !important;
}

.ll-pmpro-billing .my-pmpro-current-card-box,
.ll-pmpro-billing .ll-current-payment-box {
	display: block !important;
	visibility: visible !important;
	margin: 0 0 40px !important;
	padding: 32px 19px 38px !important;
	background: var(--ll-box-bg) !important;
	border: 0 !important;
	border-radius: 8px !important;
	box-shadow: none !important;
	color: var(--ll-main-text) !important;
}

.ll-pmpro-billing .my-pmpro-current-card-title,
.ll-pmpro-billing .ll-current-payment-box h2,
.ll-pmpro-billing .ll-current-payment-box h3,
.ll-pmpro-billing .ll-current-payment-box h4,
.ll-pmpro-billing .ll-current-payment-box legend {
	display: none !important;
}

.ll-pmpro-billing .my-pmpro-current-card-grid {
	display: grid !important;
	grid-template-columns: 1fr !important;
	gap: 22px !important;
	margin: 0 0 24px !important;
	padding: 0 !important;
}

.ll-pmpro-billing .my-pmpro-current-card-label {
	margin: 0 0 3px !important;
	color: var(--ll-sub-text) !important;
	font-size: 14px !important;
	font-weight: 400 !important;
	line-height: 1.5 !important;
}

.ll-pmpro-billing .my-pmpro-current-card-value {
	margin: 0 !important;
	color: var(--ll-main-text) !important;
	font-size: 14px !important;
	font-weight: 700 !important;
	line-height: 1.5 !important;
}

.ll-pmpro-billing .my-pmpro-current-card-note {
	margin: 0 !important;
	padding: 0 !important;
	color: var(--ll-sub-text) !important;
	font-size: 14px !important;
	font-weight: 400 !important;
	line-height: 1.9 !important;
	letter-spacing: 0.01em !important;
}

/* =========================================================
   新たなお支払い情報
========================================================= */


/* PMProフォーム内部リセット */
.ll-pmpro-billing .ll-billing-payment-card form,
.ll-pmpro-billing .ll-billing-payment-card form.pmpro_card,
.ll-pmpro-billing .ll-billing-payment-card .pmpro_card,
.ll-pmpro-billing .ll-billing-payment-card .pmpro_card_content,
.ll-pmpro-billing .ll-billing-payment-card fieldset,
.ll-pmpro-billing .ll-billing-payment-card legend {
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
}

.ll-pmpro-billing .ll-billing-payment-card legend,
.ll-pmpro-billing .ll-billing-payment-card .pmpro_form_legend,
.ll-pmpro-billing .ll-billing-payment-card .pmpro_form_heading {
	display: none !important;
}

.ll-pmpro-billing .pmpro_form_fields,
.ll-pmpro-billing .pmpro_cols-2 {
	display: block !important;
	margin: 0 !important;
	padding: 0 !important;
}

/* フィールド */
.ll-pmpro-billing .pmpro_form_field {
	display: block !important;
	margin: 0 0 28px !important;
	padding: 0 !important;
	border: 0 !important;
	background: transparent !important;
}

.ll-pmpro-billing .pmpro_form_label,
.ll-pmpro-billing label {
	display: block !important;
	margin: 0 0 6px !important;
	padding: 0 !important;
	color: var(--ll-main-text) !important;
	font-size: 14px !important;
	font-weight: 400 !important;
	line-height: 1.45 !important;
	letter-spacing: 0.01em !important;
}

.ll-pmpro-billing .ll-required,
.ll-pmpro-billing abbr.required,
.ll-pmpro-billing .pmpro_required {
	color: #e65050 !important;
	font-weight: 400 !important;
	text-decoration: none !important;
}

/* 入力欄 */
/* .ll-pmpro-billing #AccountNumber,
.ll-pmpro-billing #Expiry,
.ll-pmpro-billing #CVV,
.ll-pmpro-billing .StripeElement,
.ll-pmpro-billing input[type="text"],
.ll-pmpro-billing input[type="tel"],
.ll-pmpro-billing input[type="email"],
.ll-pmpro-billing input[type="number"],
.ll-pmpro-billing input[type="password"],
.ll-pmpro-billing select {
	width: 100% !important;
	min-height: 54px !important;
	padding: 12px 14px !important;
	border: 1px solid #e4e4e4 !important;
	border-radius: 2px !important;
	background: #fff !important;
	color: var(--ll-main-text) !important;
	font-size: 14px !important;
	font-weight: 400 !important;
	line-height: 1.45 !important;
	box-shadow: none !important;
	appearance: auto !important;
}

.ll-pmpro-billing input::placeholder,
.ll-pmpro-billing .StripeElement--empty,
.ll-pmpro-billing .StripeElement::placeholder {
	color: #b9b9b9 !important;
	opacity: 1 !important;
} */

/* 標準カード有効期限が月/年の2セレクトで出る場合の崩れ防止 */
.ll-pmpro-billing .pmpro_payment-expiration select {
	display: inline-block !important;
	width: calc(50% - 10px) !important;
	vertical-align: middle !important;
}

/* 送信エリア */
.ll-pmpro-billing .pmpro_form_submit {
	margin: 20px 0 5px !important;
	padding: 0 !important;
	text-align: center !important;
}

/* 変更するボタン */
/* .ll-pmpro-billing #pmpro_btn-submit,
.ll-pmpro-billing input[type="submit"],
.ll-pmpro-billing button[type="submit"],
.ll-pmpro-billing .pmpro_btn-submit,
.ll-pmpro-billing .pmpro_btn-submit-checkout {
	display: block !important;
	visibility: visible !important;
	width: 404px !important;
	max-width: 100% !important;
	height: 64px !important;
	min-height: 64px !important;
	margin: 39px auto 0 !important;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 999px !important;
	background: linear-gradient(90deg, #45a6ee 0%, #8b21e5 100%) !important;
	box-shadow: 0 6px 0 #55189c !important;
	color: #fff !important;
	-webkit-text-fill-color: #fff !important;
	font-size: 28px !important;
	font-weight: 700 !important;
	line-height: 64px !important;
	letter-spacing: 0.04em !important;
	text-align: center !important;
	text-indent: 0 !important;
	cursor: pointer !important;
	appearance: none !important;
	opacity: 1 !important;
	overflow: visible !important;
}
 */
/* .ll-pmpro-billing #pmpro_btn-submit:disabled,
.ll-pmpro-billing input[type="submit"]:disabled,
.ll-pmpro-billing button[type="submit"]:disabled {
	opacity: 0.75 !important;
	-webkit-text-fill-color: #fff !important;
} */

/* キャンセル削除 */
.ll-pmpro-billing .pmpro_btn-cancel,
.ll-pmpro-billing input[name="cancel"],
.ll-pmpro-billing input[value="キャンセル"],
.ll-pmpro-billing button[value="キャンセル"],
.ll-pmpro-billing a[href*="cancel"] {
	display: none !important;
}

/* 下部ナビ */
.ll-pmpro-billing .pmpro_actions_nav,
.ll-pmpro-billing .pmpro_actions_nav-left,
.ll-pmpro-billing .pmpro_actions_nav-right {
	margin: 18px 0 0 !important;
	padding: 0 !important;
	text-align: center !important;
}

.ll-pmpro-billing .pmpro_actions_nav a {
	color: #66a6ff !important;
	font-size: 14px !important;
	font-weight: 700 !important;
	text-decoration: none !important;
}



/* =========================================================
   v3補強: hook出力/Stripe出力でも赤枠相当のブロックを表示
========================================================= */

.ll-pmpro-billing .ll-billing-payment-title {
	position: relative !important;
}

.ll-pmpro-billing #my-pmpro-current-card-box[hidden],
.ll-pmpro-billing .ll-current-payment-box[hidden] {
	display: block !important;
}

.ll-pmpro-billing .ll-billing-payment-card > .ll-current-payment-heading,
.ll-pmpro-billing .ll-billing-payment-card .ll-new-payment-heading {
	display: inline-block !important;
	visibility: visible !important;
	opacity: 1 !important;
}

.ll-pmpro-billing .ll-current-payment-box .my-pmpro-current-card-grid,
.ll-pmpro-billing #my-pmpro-current-card-box .my-pmpro-current-card-grid {
	display: grid !important;
	grid-template-columns: 1fr !important;
}

.ll-pmpro-billing .ll-current-payment-box p:last-child,
.ll-pmpro-billing #my-pmpro-current-card-box p:last-child {
	margin-bottom: 0 !important;
}





/* =========================================================
   解約ページ
========================================================= */

.pmpro_btn.pmpro_btn-cancel{
	color: #fff!important;
	font-size: 18px!important;
}

.cancel-submit-btn{
	border-radius: 50px!important;
border: 1px solid var(--Blue, #3F94E3)!important;

background: var(--Theme-White, #FFF)!important;
}

.cancel-submit-btn span {
background: var(--Blue, linear-gradient(92deg, #3F94E3 21.49%, #8229DA 84.72%))!important;
background-clip: text!important;
-webkit-background-clip: text!important;
-webkit-text-fill-color: transparent!important;
}

#pmpro_cancel .pmpro_card_content{
	color: #646464;
}

#pmpro_cancel .pmpro_form_submit{
	gap: 24px;
}
