/**
 * Theme Name: Blocksy Child
 * Description: Blocksy Child theme
 * Author: Creative Themes
 * Template: blocksy
 * Text Domain: blocksy
 */
/**
 * Theme Name: Blocksy Child
 * Description: Blocksy Child theme
 * Author: Creative Themes
 * Template: blocksy
 * Text Domain: blocksy
 */


/* google rechap */
.grecaptcha-badge {
    display: none !important;
}

/*　グローバル調整 */
/* 初期状態（矢印にアニメーションを設定） */
.ct-menu-link .ct-icon-container {
  transition: transform 0.3s ease;
}

/* ホバー時に少し右へ移動 */
.ct-menu-link:hover .ct-icon-container {
  transform: translateX(4px); /* 右へ4pxスライド */
}

/* アイコンの位置調整 */
.menu-item .ct-icon-container {
    order: -1;
    margin-right: 8px;
    margin-left: 0px !important;
}


.custom-single-product-description {
    background: #fff;
    margin-top: 3em;
}


.custom-single-product-description-inner {
    width: 90%;
    max-width: 1120px;
    margin: auto;
}


.custom-single-product-description > h2 {
    text-align: center;
    font-weight: 400;
    font-size: 14px;
    border-bottom: 1px solid #ddd;
    padding-bottom: 1em;
    padding-top: 1em;
    background: #f1ede8;
    margin-bottom: 3em;
}

div#copyright {
    background: #121212;
    text-align: center;
    border-top: 1px solid #333;
    padding: 1em 0;
    color: #b5b5b5;
    font-size: 85%;
}

div#copyright .fujitaka-copyright {
    padding: 1em;
    color: #fff;
    font-size: 120%;
}

div#copyright a {
    color: #b5b5b5;
}

div#copyright .g-reCAPTCHA a {text-decoration: underline;}

.holiday-information {
    padding-bottom: 1em;
}
.ct-product-sku::before {
  content: "no.";
  margin-right: 0.25em; /* スペース調整 */
}

html[data-color-mode="dark"] .invert-logo {
    filter: invert(1) brightness(1.1) saturate(0);
}


/* パンくず調整 */


/* ブログヘッダー調整 */

/*  商品ページ */
.single .ct-breadcrumbs {
    border-bottom: 1px solid var(--theme-palette-color-6);
    padding-bottom: 1em;
}

.findstock {
    border: 1px solid var(--theme-palette-color-4);
    border-radius: 4px;
    padding: .5em 1em;
    display: block;
    max-width: 250px;
    margin: 1.5em 0 1em;
    color: var(--theme-palette-color-4);
    text-align:center;
}


a.reset_variations {
    margin-left: 1em;
}

/* 商品ページ バリエーション調整 */
[data-swatches-type=color] .ct-swatch, [data-swatches-type=image] .ct-swatch, [data-swatches-type=mixed] .ct-swatch {
    border: 1px solid var(--swatch-border-color, var(--theme-border-color))!important;
	padding:0!important;
}

.variation-image-gallery {
    display: flex;
    gap: 5px;
    text-align: center;
}
.variation-image-gallery .v_image_box {
    flex: 1 1 25%;        /* 幅25%を上限とする */
    max-width: 25%;       /* 幅100%防止 */
    box-sizing: border-box;
    text-align: center;
}
.ct-inline-variations form.variations_form table.variations tr th {
    align-content: center;
    padding-top: 0;
}
.ct-swatch-container.ct-out-of-stock .ct-swatch {
  position: relative;
  overflow: visible; /* はみ出しOK */
}

/* 黒線 + 白いぼかし（光彩） */
.ct-swatch-container.ct-out-of-stock .ct-swatch::before {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  width: 160%;
  height: 2px;
  background-color: #000;
  transform: translate(-50%, -50%) rotate(45deg);
  transform-origin: center;
  pointer-events: none;
  box-shadow: 0 0 2px 1px rgba(255, 255, 255, 0.8); /* ←ここが白シャドウ */
}
/* スワッチ自体に relative を指定 */
body.single-product .ct-swatch-container .ct-swatch {
  position: relative;
}

/* 有効スワッチのみチェックマーク表示 */
body.single-product .ct-swatch-container.active:not(.ct-out-of-stock) .ct-swatch::after {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  width: 14px;
  height: 14px;
  background: url('https://fujitaka-japan.com/wp-content/uploads/2025/06/check.svg') no-repeat center center;
  background-size: contain;
  transform: translate(-50%, -50%);
  filter: brightness(0) invert(1) drop-shadow(0 0 2px #000);
  pointer-events: none;
  z-index: 2;
}

/* 在庫切れスワッチには非表示 */
body.single-product .ct-swatch-container.ct-out-of-stock.active .ct-swatch::after {
  display: none !important;
}
.ct-card-variation-swatches .ct-swatch::after{
	display: none!important;
}
.attr-pa_sc::after {
    content: '※対象色のみ';
    font-size: 12px;
    margin-left: 1em;
}

/* タブ調整 */
.ct-accordion-tab ol{
    padding-left: 1em;
}


.ct-accordion-tab {
    font-size: 15px;
}

.ct-accordion-tab button {
    font-size: 22px;
}

button.ct-accordion-heading {
    font-size: 15px;
}


/*  SEO */
.single-product div.product .summary-top-box{
    justify-content: left!important;
}
.cmn-s-archive.container h2 {
    margin: 80px 0;
    font-weight: 600;
    font-size: 20px;
}

.cmn-s-archive {
    padding-bottom: 100px;
    border-top: 1px solid #ccc;
    max-width: 1100px;
    margin: 50px auto;
}
.cmn-s-archive h3 a{
	color:#333;
}
.cmn-s-archive-title {
    font-size: 16px;
    font-weight: 400;
    font-family: Inter;
    margin-bottom: 40px;
    text-align: center;
}

.cmn-s-archive-box {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 40px;
}

.cmn-s-archive-box img {
    width: 500px;
    max-width: 100%;
}

.cmn-s-archive-box-text {
    width: calc(100% - 352px - 40px);
	margin-left:1em;
}

.cmn-s-archive-box-text h3 {
    font-family: Inter;
    font-size: 14px;
    font-weight: 400;
    margin-bottom: 20px;
}

.cmn-s-archive-btn-wrap {
    text-align: center;
}

.cmn-s-archive-btn {
    color: #fff;
    border: none;
    background-color: #00c1cf;
    background-image: -webkit-linear-gradient(left, #00c1cf 0%, #5472d2 50%, #00c1cf 100%);
    background-image: linear-gradient(to right, #00c1cf 0%, #5472d2 50%, #00c1cf 100%);
    -webkit-transition: all .2s ease-in-out;
    transition: all .2s ease-in-out;
    background-size: 200% 100%;
    padding: 14px 48px 14px 20px;
    display: inline-block;
    border-radius: 5px;
    box-sizing: border-box;
    cursor: pointer;
    word-wrap: break-word;
    position: relative;
}

.cmn-s-archive-btn::after {
    content: '';
    display: block;
    width: 8px;
    height: 8px;
    border-top: 2px solid #fff;
    border-left: 2px solid #fff;
}

.cmn-s-archive-btn::after {
    position: absolute;
    right: 20px;
    top: 6px;
    top: 50%;
    transform: translate(0, -50%) rotate(135deg);
}


.cmn-s-archive-btn:hover {
    color: #fff;
    background-color: #5472d2;
    border: none;
    background-position: 100% 0;
}

.cmn-h3-text {
    font-size: 14px;
}
/* ドロワー */
.ct-panel-content-inner .ct-color-switch {
    position: absolute;
    left: 18px;
    top: 18px;
}
/* シリーズページボタン */
.swiper-slide-inner .elementor-button.elementor-slide-button.elementor-size-sm {
    background: #000!important;
    color: #fff!important;
    min-width: 150px;
    font-size: 20px;
    line-height: 1.6em;
}


/* 20250227 商品一覧ハッシュタグ */
.tag__box {
    margin-bottom: .5em;
}
.tag__box .hashtag {
    color: #767676;
    font-size: 14px;
    margin-right: 1em;
    border-bottom: 2px solid #dedcd1;
    font-family: "Inter", "Noto Sans JP";
    padding-right: unset;
}

/* 20250305 フッターコンセプトテキスト */
.f-concept-txt {
    font-size: 13px;
}


.custom-subcategories h2 {
    font-size: 20px;
}

.custom-subcategories a {
    color: #222;
    font-size: 15px;
}

.custom-subcategories a img {
    border-radius: 10px;
    margin-bottom: 0.5em;
}


/*** -----------------------------------------------------------------------スマホ---------------------------------------------------------------------------------***/
@media (max-width: 768px) {
	.ct-inline-variations form.variations_form table.variations tr {
		display: block;
	}
	.ct-inline-variations form.variations_form table.variations tr td {
		width: 100%!important;
		margin-top: 1em;
	}

	/**   SEO ***/
	
    .f-concept-txt {
        text-align: left;
    }
    .f-concept-txt-br {
        display: none;
    }
    .cmn-s-archive.container h2 {
        margin: 30px 0;
    font-size: 13px;
    }
    .cmn-s-archive {
        padding-bottom: 100px;
    }

    .cmn-s-archive-box {
        width: 100%;
        display: block;
        margin-bottom: 40px;
    }

    .cmn-s-archive-box img {
        width: 100%;
    }

    .cmn-s-archive-box-text {
        width: 100%;
		margin-left:0;
    }

    .cmn-s-archive-title {
        font-size: 14px;
    }

    .cmn-s-archive-box-text h3 {
        font-size: 12px;
    }

    .cmn-h3-text {
        font-size: 12px;
    }

	.single .ct-breadcrumbs {
		display:none;
	}
	.ct-floating-bar .ct-container {
		margin-left: 110px;
		margin-right: 15px;
	}
}

/*** ----------------------------------------------ダークモード調整 ----------------------------***/
html[data-color-mode="dark"] .custom-single-product-description {
	background: transparent; /* ダークモード調整 */
}

html[data-color-mode="dark"] .custom-single-product-description > h2 {
    background: #333;
    border-bottom: 1px solid #555;
}
