/* ==================================================
   Fluent CSS
================================================== */


/* ==================================================
   FluentCart
================================================== */

/* Quicksand の半角括弧を避ける */
.fct-cart-drawer-header, .fct_checkout .fct_summary_label, .fct-thank-you-page-body-content .no-print p, .fct-thank-you-page-order-items-body .fct-thank-you-page-order-items-total-label, .fct-thank-you-page-body-inner .thankyou-ps, .fct-customer-dashboard-app-container .fct-customer-dashboard-main-content::after {
	font-family: "游ゴシック体", "Yu Gothic", YuGothic, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif !important;
}

/* 通知（PR）を非表示 */
body.is-fluentcart .before-content-notice {
	display: none;
}

/* グローバルエラー通知（トースト通知）非表示 */
.toastify.toastify-top.toastify-right {
  display: none !important;
}
/* ボタン調整 */
.fct-product-card button, .fct-product-view-button, .fluent-cart-direct-checkout-button {
	display: flex;
	align-items: center;
	justify-content: center;
}
.fct-product-card button:hover, .fct-product-view-button:hover, .fluent-cart-direct-checkout-button:hover {
	opacity: 0.8;
}
/* フォーム入力欄調整 */
.fct_checkout input[type=email], .fct_checkout input[type=number], .fct_checkout input[type=password], .fct_checkout input[type=reset], .fct_checkout input[type=search], .fct_checkout input[type=tel], .fct_checkout input[type=text], .fct_checkout input[type=url], .fct_checkout input, .fct_checkout select, .fct_checkout textarea {
	padding: 11px 16px 10px;
}

/* Store Index */

/* 表示されるアイテムがない時 */
.fluent-cart-shop-no-result-found {
	display: none;
}

/* トップ（ショップ）ページ */
.fct-shop-filter-toggle-button {
	position: absolute;
	top: 0.7rem;
	right: 4vw;
	padding: 1rem 0;
	font-weight: bold;
	opacity: 0.3;
}
.fct-shop-product-search {
	margin-bottom: 20px;
}
.fct-shop-product-search input {
	padding: 8px 12px 6.5px 36px;
}
.fct-shop-product-search .fct-search-icon, .fct-shop-product-search .fct-search-clear {
	margin-top: 1.5px;
}
.fct-shop-item-collapse-wrap {
	display: none !important;
}
.fct-shop-filter-item .fct-shop-checkbox-group-inner {
	padding: 10px 0;
}
.fct-shop-filter-item .fct-shop-checkbox-group-inner .fct-shop-checkbox span:not(.checkmark) {
	margin-top: 1px;
}
.fct-shop-view-switcher {
	display: none !important;
}
.fct-products-wrapper .fct-products-wrapper-inner {
	gap: 30px;
}
.post_content .fct-product-card .fct-product-card-image-wrap {
	margin-top: -4px !important;
}
.post_content .fct-product-card h3 {
	margin: 0;
	padding: 8px 12px;
	border: none;
}
.post_content .fct-product-card h3 a:hover {
	text-decoration: none;
}

.fct-shop-paginator {
	flex-direction: column;
	margin-top: 3.5rem;
}
.fct-shop-per-page-selector {
	display: none;
}
.fct-shop-paginator .fct-shop-paginator-pager {
	border: none;
	padding: 0;
}
.fct-shop-paginator .fct-shop-paginator-pager button {
	max-height: 25px;
	min-width: 25px;
	margin: 0 2px;
	border: 0;
}
.fct-shop-paginator .fct-shop-paginator-pager button:hover {
	background: none;
	opacity: 0.7;
}
.fct-shop-paginator .fct-shop-paginator-pager button {
	color: var(--cs-gray75);
}
.fct-shop-paginator .fct-shop-paginator-pager button.active, .fct-shop-paginator .fct-shop-paginator-pager li.active button {
	background: none;
	color: var(--fct-shop-paginator-items-color);
	font-weight: bold;
}

/* アーカイブ（カテゴリー／ブランド）ページ */
body.is-fluentcart .archive[class*="tax-product-"] #content > div {
	margin: 0 !important;
	padding: 3rem;
}
body.is-fluentcart .archive[class*="tax-product-"] .fct-archive-title {
	font-size: 1.5em;
}
body.is-fluentcart .archive[class*="tax-product-"] .fct-shop-sorting-container {
	margin: 0 0 1rem;
}
body.is-fluentcart .archive[class*="tax-product-"] .fct-shop-sorting-container .fct-sorting-toggle {
	font-size: 14px;
	color: #888;
}

/* Item */

.single-fluent-products .p-articleHead.c-postTitle .c-postTitle__ttl {
	padding: 0;
	border: none;
}
.single-fluent-products .post_content {
	margin: 0;
}
.fct-single-product-page {
	display: block;
	margin-bottom: 2em;
}
.fct-product-gallery-wrapper.thumb-pos-bottom .fct-gallery-thumb-controls[data-all-gallery-images="[]"] {
	margin-top: 0;
}
.fct-product-gallery-thumb img {
	display: block;
	object-fit: contain;
	background: #000;
}
/* SKU（商品識別コード）をフロントで非表示 */
.fct-single-product-page .fct-product-sku {
	display: none;
}
/* サブスク商品 */
.fct-product-item-price.fluent-cart-product-variation-content .fct-product-payment-type {
	border-radius: 8px;
	border-width: 1px;
	border-style: solid;
	border-color: var(--fct-single-product-border-color);
	padding: 8px 15px 8px 15px;
	text-align: justify;
}
.fct-product-item-price.fluent-cart-product-variation-content .fct-product-payment-type::after {
	content: "サブスクリプションは購入日基準です。例えば『月間サブスク』の場合、初月は購入日から起算して1か月間（例：1/15にご購入の場合は2/15頃が更新予定日）となります。購入の時期やタイミングにより初月の期間や受けられるサービスに差が生じることはありません。";
	display: block;
	font-size: 12px;
	line-height: 1.5;
	color: var(--cs-gray75);
	white-space: pre-line;
	margin-top: 3px;
}

.fct-product-list-container .fct-product-list-heading {
	margin: 1em 0;
}
.fct-product-list-container .fct-product-list .fct-product-card h3, .fct-product-list-container .fct-product-list .fct-product-card .fct-product-card-prices {
	font-size: 15px;
}
.fct-product-list-container .fct-product-list .fct-product-card p.fct-product-card-excerpt {
	display: none;
}
.single-fluent-products .c-shareBtns {
	margin: 2em 0 0;
}

/* Cart */

body.is-fluentcart .page-cart .post_content {
	margin-top: 2em;
}
.post_content .fluent-cart-cart-empty-content {
	padding: 2em 0;
}
.post_content .fct-cart-drawer-list-content {
	padding-left: 0;
}
.post_content .fct-cart-page h2 {
	padding: 0;
	margin: 0;
}
.post_content .fct-cart-page h3 {
	padding: 0;
	border: none;
}
.post_content .fct-cart-page .fct-cart-total-wrapper {
	margin: 1em 1em 2.5em 1em;
}
.post_content .fct-cart-page .fluent-cart-cart-cart-button-wrap {
	justify-content: center;
}
.post_content .fct-cart-page .fluent-cart-cart-cart-button-wrap a.checkout-button {
	display: block;
	width: 250px;
	padding: 10px 0;
	margin: auto;
	background: #111;
	color: #FFF;
	font-size: 14px;
	text-decoration: none;
	text-align: center;
}
.post_content .fct-cart-page .fluent-cart-cart-cart-button-wrap a.checkout-button:hover {
	background: #333;
	opacity: 1 !important;
}
.fct-cart-item .fct-cart-item-details .fct-cart-item-title a:hover, .fluent-cart-cart-empty-content-text a:hover {
	text-decoration-line: none !important;
}

/* Checkout */

body.is-fluentcart .page-checkout .post_content {
	margin-top: 2em;
}
.post_content .fct_checkout_form .fct_checkout_form_section .fct_form_section_header {
	margin-top: 24px !important;
}

/* FluentCart チェックアウト注釈を無効化：無効化番号02
.fct-heandro-billing-email-notice {
	margin: 12px 0;
	font-size: 12px;
	line-height: 1.5;
	color: var(--cs-gray75);
}
*/

/* 請求先住所フォーム並び替え */
#billing_address_section_section > .fct_form_section_body > .fct_checkout_input_group {
	display: flex;
	flex-direction: column;
}
#billing_address_section_section .fct_checkout_input_group #fct_wrapper_billing_country { order: 1; }
#billing_address_section_section .fct_checkout_input_group #billing_state_wrapper { order: 2; }
#billing_address_section_section .fct_checkout_input_group .fct_checkout_city_postcode { order: 3; }
#billing_address_section_section .fct_checkout_input_group #fct_wrapper_billing_address_1 { order: 4; }
#billing_address_section_section .fct_checkout_input_group #fct_wrapper_billing_address_2 { order: 5; }

/* 配送先住所フォーム並び替え */
#shipping_address_section_section > .fct_form_section_body > .fct_checkout_input_group {
	display: flex;
	flex-direction: column;
}
#shipping_address_section_section .fct_checkout_input_group #fct_wrapper_shipping_country { order: 1; }
#shipping_address_section_section .fct_checkout_input_group #shipping_state_wrapper { order: 2; }
#shipping_address_section_section .fct_checkout_input_group .fct_checkout_city_postcode { order: 3; }
#shipping_address_section_section .fct_checkout_input_group #fct_wrapper_shipping_address_1 { order: 4; }
#shipping_address_section_section .fct_checkout_input_group #fct_wrapper_shipping_address_2 { order: 5; }

#shipping_address_section_section .fct_checkout_input_group .fct_form_sub_section_wrapper .fct_input_wrapper:first-child input {
	border-radius: 0;
}
#shipping_address_section_section .fct_checkout_input_group .fct_form_sub_section_wrapper .fct_input_wrapper:last-child input {
	border-radius: 0;
}
#shipping_address_section_section .fct_checkout_input_group #fct_wrapper_shipping_address_1 #shipping_address_1 {
	border-top: 0.5px;
}
#shipping_address_section_section .fct_checkout_input_group #fct_wrapper_shipping_address_1 #shipping_address_1 {
	border-bottom-left-radius: 8px;
	border-bottom-right-radius: 8px;
	box-shadow: inset 0 -1px 0 var(--fct-checkout-border-color);
}

/* 追加請求先住所フォーム並び替え */
.fct_add_new_address_form > #billing_address_section_section > .fct_form_section_body > .fct_checkout_input_group {
	display: flex;
	flex-direction: column;
}
.additional-address-field .fct_checkout_input_group #billing_label_wrapper { order: 1 !important; }
.additional-address-field .fct_checkout_input_group #billing_first_name_wrapper { order: 2 !important; }
.additional-address-field .fct_checkout_input_group #billing_country_wrapper { order: 3 !important; }
.additional-address-field .fct_checkout_input_group #billing_state_wrapper { order: 4 !important; }
.additional-address-field .fct_checkout_input_group #billing_city_zip_section { order: 5 !important; }
.additional-address-field .fct_checkout_input_group #billing_address_1_wrapper { order: 6 !important; }
.additional-address-field .fct_checkout_input_group #billing_address_2_wrapper { order: 7 !important; }

.additional-address-field .fct_checkout_input_group #billing_first_name_wrapper, /* 氏名 */
.additional-address-field .fct_checkout_input_group #billing_name_wrapper { /* 会社名 */
	display: none;
}

/* 追加配送先住所フォーム並び替え */
.fct_add_new_address_form > #shipping_address_section_section > .fct_form_section_body > .fct_checkout_input_group {
	display: flex;
	flex-direction: column;
}
.additional-address-field .fct_checkout_input_group #shipping_label_wrapper { order: 1 !important; }
.additional-address-field .fct_checkout_input_group #shipping_first_name_wrapper { order: 2 !important; }
.additional-address-field .fct_checkout_input_group #shipping_country_wrapper { order: 3 !important; }
.additional-address-field .fct_checkout_input_group #shipping_state_wrapper { order: 4 !important; }
.additional-address-field .fct_checkout_input_group #shipping_city_zip_section { order: 5 !important; }
.additional-address-field .fct_checkout_input_group #shipping_address_1_wrapper { order: 6 !important; }
.additional-address-field .fct_checkout_input_group #shipping_address_2_wrapper { order: 7 !important; }

.additional-address-field .fct_checkout_input_group #shipping_name_wrapper { /* 会社名 */
	display: none;
}
.fct_add_new_address_form #shipping_city_zip_section .fct_checkout_input_group {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}
.fct_add_new_address_form #shipping_city_zip_section .fct_input_wrapper:first-child input {
	border-radius: 0;
}
.fct_add_new_address_form #shipping_city_zip_section .fct_input_wrapper:last-child input {
	border-radius: 0;
	border-left-width: 0;
}
.additional-address-field .fct_checkout_input_group #shipping_address_1_wrapper #shipping_address_1 {
	border-bottom-left-radius: 8px;
	border-bottom-right-radius: 8px;
	box-shadow: inset 0 -1px 0 var(--fct-checkout-border-color);
}

.fct_address_wrapper .fct_address_modal_open_btn:hover {
	text-decoration-line: none;
}
.fct_address_selector .fct_address_selector_info span {
	display: inline-block;
	vertical-align: middle;
	margin-top: -3px;
	padding: 3px 6px;
}

.fct_address_wrapper p {
	margin: 0;
	padding: 2px 0 0;
}
.fct_address_wrapper p span {
	vertical-align: middle;
	margin-top: -4px;
}
.fct_address_selector {
	gap: 2px;
	padding: 12px 18px 10px;
	justify-content: center;
}

/* 「別の住所に発送する」を非表示で配送先住所フォームを常時表示 */
.fct_ship_to_different_wrapper {
	display: none;
}
.fct_checkout_form_section#shipping_address_section_section {
	display: block !important;
}

.post_content .fluent-cart-checkout-page #shipping_methods .fct-empty-state {
	color: rgb(240 68 56 / var(--tw-text-opacity, 1));
}
.post_content .fct_form_section_body:has(.fct_checkout_agree_terms) {
	margin-top: 24px !important;
}
.post_content .fct_form_section_body .fct_checkout_agree_terms a:hover {
	opacity: 0.8;
}

.post_content .fct_payment_methods_list .fct_payment_method_offline_payment {
	margin: 25px 0 25px 0 !important;
}
.fct_payment_method_stripe::before {
	content: "クレジットカード";
	position: absolute;
	top: -24px;
	right: 5px;
	color: var(--cs-gray75);
	font-size: 18px;
	z-index: -1;
}
.fct_payment_method_offline_payment::before {
	content: "銀行振込";
	position: absolute;
	top: -24px;
	right: 5px;
	color: var(--cs-gray75);
	font-size: 18px;
	z-index: -1;
}
.fct_payment_method_offline_payment.fct_payment_method_logo .fct_payment_method_instructions {
	padding: 0 20px 12px 20px;
	text-align: justify;
}
.fct_payment_method_offline_payment.fct_payment_method_logo .fct_payment_method_instructions p {
	color: var(--cs-gray75);
}

.fct_checkout_form_section h4 {
	margin: 0;
	padding: 0;
	border: none;
}
.fct_summary .fct_toggle_content svg {
	top: -2px;
}
.fct_checkout_form_section .fct_line_item {
	padding: 20px 0 20px 0;
}
.fct_checkout_form_section .fct_line_item:first-child {
	padding-top: 10px;
}
.fct_checkout_form_section .fct_line_item .fct_line_item_price {
	display: flex;
	padding-top: 2px;
}
ul.fct_summary_items_list {
	gap: 0;
}
ul.fct_summary_items_list li {
	margin: 0;
	line-height: 2.5;
}
.fct_coupon_field {
	margin-top: 5px;
}
ul.fct_summary_items_list .fct_summary_items_total {
	margin-top: 20px;
	padding-top: 20px;
	line-height: 1.8;
}
.fct_line_item .fct_item_title a:hover, .fct_coupon .fct_coupon_toggle a:hover {
	opacity: 0.8;
	text-decoration-line: none;
}
#order_notes_wrapper textarea {
	padding: 12px;
}

/* 「メモを残す」を非表示 */
.fct_order_note {
	display: none;
}

/* Receipt */

.post_content h1#fct-not-found-title {
	font-size: 1em;
}

/* オフラインペイメントのメッセージがある場合（クラス .thankyou-ps は自分で当てる） */
.fct-thank-you-page-body-inner:has(.thankyou-ps) {
	padding: 20px 20px 8px;
}
.fct-thank-you-page-body-content .no-print .no-print-title, .fct-thank-you-page-body-content .no-print p a {
	display: none;
}
.fct-thank-you-page-body-content .no-print p {
	display: inline-block;
	position: relative;
	font-weight: bold;
}
/* 「保留中」の場合のみ適用 */
body.is-fluentcart:has(.fct-thank-you-page-header[style*="#fff3cd"]) .fct-thank-you-page-body-content-inner .no-print p::after {
	content: "";
	position: absolute;
	right: 0;
	top: 0;
	width: 1ch;
	height: 100%;
	background-color: #fff;
}
.fct-thank-you-page-order-items-body .fct-thank-you-page-order-items-total-total .fct-thank-you-page-order-items-total-value {
	font-weight: bold;
}
/* 「注文確定」の場合のみ適用 */
body.is-fluentcart:has(.fct-thank-you-page-header[style*="#d4edda"]) .fct-thank-you-page-body-content-inner div:has(> .thankyou-ps) {
	display: none;
}
.fct-thank-you-page-footer .fct-thank-you-page-download-receipt-button {
	display: none !important;
}

/* Account */

/* 未ログイン時表示ページ：FluentAuth「Login or Signup Forms Shortcodes」無効時 */
.fct_auth_message h2 {
	font-size: 1em;
	color: #333;
	padding: 0;
	margin: 0;
	background: none;
	border: none;
}
.fct_auth_message h2::before {
	content: none;
}
.fct_auth_message h2::after {
	content: "してください";
}
.fct_auth_message p {
	padding: 0 0 1em;
}

/* 未ログイン時表示ページ：FluentAuth「Login or Signup Forms Shortcodes」有効時 */
.fct_auth_wrap h4 {
	display: none;
}
.fls_login_wrapper, .fls_reset_pass_wrapper {
	max-width: none !important;
	line-height: 1;
}
.fls_login_wrapper form#loginform .input, .fls_reset_pass_wrapper .fls_reset_pass_form input {
	margin-top: 10px !important;
	line-height: 1.5;
}
.fls_login_wrapper form#loginform .input::placeholder, .fls_reset_pass_wrapper .fls_reset_pass_form input::placeholder {
	color: transparent;
}
.fls_login_wrapper #fls_2fa_form label, .fls_login_wrapper form#loginform label {
	display: inline-flex !important;
	align-items: center;
	gap: 5px;
	line-height: 1;
}
.fls_login_wrapper input#wp-submit, .fls_reset_pass_wrapper .fls_reset_pass_form #fls_reset_pass {
	background: #111 !important;
	padding: 15px !important;
}
.fls_login_wrapper input#wp-submit:hover, .fls_reset_pass_wrapper .fls_reset_pass_form #fls_reset_pass:hover {
	background: #333 !important;
}
.fls_login_wrapper .error.text-danger {
	color: #f44336;
	font-size: 1em;
	margin: 15px 0;
	text-align: center;
}

/* ビジーカーソル対策 */
.fct-customer-root-container {
	cursor: default;
}
.fct-customer-root-container a,
.fct-customer-root-container button {
	cursor: pointer !important;
}

/* ダッシュボード全般 */
.fct_customer_profile_wrap {
	margin: 0;
}
.fct-customer-root-container h2 {
	padding: 0;
	margin: 0;
	background: none;
	border: none;
}
.fct-customer-root-container h4 {
	padding: 0;
	border: none;
}
.fct-customer-root-container .fct-customer-dashboard-app-container a, .fct-customer-root-container .fct-customer-dashboard-app-container a:hover {
	text-decoration-line: none !important;
}
.fct-customer-root-container .fct-customer-dashboard-header .is-link, .fct-customer-dashboard-main-content .el-button.is-text.underline-link-button {
	text-decoration-line: none !important;
}

/* メニューバー */
.fct-customer-dashboard-customer-info-content h3 {
	padding: 1px 0;
	margin: 0 !important;
	border: none;
}

/* 購入履歴 */
.fct-customer-orders-items .fct-action-link-btn {
	top: 1px !important;
}
.fct-customer-orders-items:not(:has(.fct-action-link-btn)) {
	flex-direction: column;
}
/* 検索ボックス */
.fct-customer-dashboard-main-content .el-input__wrapper {
	padding: 5px 10px 3px !important;
}
/* UTC表示時間対策 */
.fct-customer-dashboard-main-content .invoice-id-date span.text {
	display: none;
}
.fct-customer-dashboard-app-container .fct-customer-dashboard-main-content::after {
	content: "※時間表示は協定世界時(UTC)を基準にしています";
	position: absolute;
	bottom: 5px;
	right: 5px;
	font-size: 12px;
	line-height: 1;
	color: var(--cs-gray75);
	-webkit-font-smoothing: antialiased !important;
}
.fct-customer-dashboard-app-container .fct-customer-dashboard-main-content {
	padding: 20px 20px 40px 20px;
}

/* 購入概要 */
.fct-customer-dashboard-single-order-wrap h3 {
	padding: 0;
	margin: 0 0 4px 0;
	border: none;
}
/* 領収書ボタン */
.fct-customer-dashboard-single-order-wrap .underline-link-button:hover {
	color: rgb(47 52 72 / var(--tw-text-opacity, 1)) !important;
}
/* 「請求先住所を編集」ボタンを非表示 */
.fct-customer-dashboard-single-order-wrap .el-dropdown.fct-more-option-wrap {
	display: none;
}

/* サブスクリプション概要 */
.fct-customer-dashboard-single-subcription-wrap .fct-customer-dashboard-content-table-item .right-content {
	align-self: flex-start;
}
.fct-customer-dashboard-main-content .el-button.is-text.underline-link-button {
	padding: 4px !important;
}
/* 「請求先住所を編集」ボタンを非表示 */
.fct-customer-dashboard-single-subcription-wrap .el-dropdown.fct-more-option-wrap {
	display: none;
}

/* プロフィール */
.fct-customer-dashboard-user-profile .fct-form-container h3.form-heading {
	padding: 0;
	border: none;
}
.fct-customer-dashboard-user-profile #account-details div:nth-of-type(2) {
	display: none;
}
/* メールアドレス変更リンク等を挿入 */
.fct-form-container[aria-labelledby="account-details-heading"] {
	border: none;
	margin-bottom: 0;
	padding-bottom: 0;
}
.fct-heandro-account-email {
	text-align: right;
	line-height: 1;
	padding: 12px 3px 17px;
	border-bottom: 1px solid rgb(234 236 240 / var(--tw-border-opacity, 1));
}
.fct-heandro-account-email a {
	color: #555;
	font-size: 0.8em;
}
.fct-heandro-account-reload {
	text-align: right;
	line-height: 1;
	padding: 12px 0 15px;
}
.fct-heandro-account-reload p {
	color: var(--cs-gray75);
	font-size: 12px !important;
}
/* 住所追加欄を非表示 */
.fct-form-container[aria-labelledby="address-section-title-billing"], .fct-form-container[aria-labelledby="address-section-title-shipping"] {
	display: none;
}
.fct-customer-dashboard-user-profile .fct-customer-address-block {
	margin: 0 0 15px 0;
}

/* Other */

.fct-not-found-container {
	text-align: center;
}


/* ==================================================
   FluentComunity
================================================== */

body.fcom_headless_page #common-footer {
	display: none;
}

