@charset "UTF-8";
/*
Template: arkhe
Theme Name: Itoguchi
Theme URI: https://arkhe-theme.com/ja/
Description: Arkhe用子テーマ
*/


/* ========================================
   Benzai-Factory ヘッダーロゴ
   Arkhe 子テーマ用
======================================== */

/* ロゴ全体 */
.l-header .l-header__logo .c-headLogo {
    display: inline-flex;
    align-items: baseline;
    gap: clamp(8px, 1vw, 16px);

    font-family:
        "Yu Mincho",
        "Hiragino Mincho ProN",
        "Noto Serif JP",
        serif;

    /* HTMLにある「弁財工房」の文字 */
    font-size: clamp(13px, 1.15vw, 17px);
    font-weight: 500;
    letter-spacing: 0.08em;
    line-height: 1.25;

    color: #584838;
    text-decoration: none;
    white-space: nowrap;
}

/* 英字ロゴを先頭に追加 */
.l-header .l-header__logo .c-headLogo::before {
    content: "Benzai-Factory";

    display: inline-block;
    flex-shrink: 0;

    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(27px, 2.8vw, 44px);
    font-weight: 500;
    letter-spacing: -0.035em;
    line-height: 1.1;

    /* フォールバック色 */
    color: #795d39;

    /* シャンパンブロンズ */
    background-image: linear-gradient(
        115deg,
        #392c22 0%,
        #8e6b40 28%,
        #cbb185 48%,
        #967348 70%,
        #443327 100%
    );

    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.l-header .l-header__logo .c-headLogo:hover {
    opacity: 0.8;
}


body.home .benzai-content > .hero,
body.home .benzai-content > .texture-band {
    width: 100vw;
    max-width: none;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    box-sizing: border-box;
}

body.home .benzai-content > .hero > .container,
body.home .benzai-content > .texture-band > .container {
    width: min(100% - 40px, 1200px);
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
}

@media (max-width: 599px) {
    body.home .benzai-content > .hero > .container,
    body.home .benzai-content > .texture-band > .container {
        width: calc(100% - 32px);
    }
}

.l-footer__widgets {
    padding: 0;
}
p.ft-text {
    font-size: 0.7rem;
}
#block-7 {
    margin: 0;
    text-align: center;
}
.l-footer__foot {
    background: #3f3328;
    color: #fff;
}

@media (max-width: 999px) {
    .l-header .l-header__logo .c-headLogo {
        gap: 8px;
        font-size: 14px;
    }

    .l-header .l-header__logo .c-headLogo::before {
        font-size: clamp(25px, 3.6vw, 36px);
    }
}

@media (max-width: 599px) {
    .l-header .l-header__logo .c-headLogo {
        gap: 6px;
        font-size: 11px;
        letter-spacing: 0.03em;
    }

    .l-header .l-header__logo .c-headLogo::before {
        font-size: clamp(20px, 5vw, 27px);
        letter-spacing: -0.045em;
    }
}


/* ==========================================
   BENZAI - 固定ページ共通デザイン
   company / contact / その他固定ページ
========================================== */

body.page:not(.home) {
    --benzai-ink: #382e25;
    --benzai-brown: #65513d;
    --benzai-gold: #a18456;
    --benzai-line: #ddd2c0;
    --benzai-cream: #faf8f4;
}

/* ページ全体 */
body.page:not(.home) .l-content {
    background: linear-gradient(
        180deg,
        #ffffff 0%,
        #faf8f4 45%,
        #ffffff 100%
    );
}

/* コンテンツ幅 */
body.page:not(.home) .l-content__body {
    max-width: 1160px;
}

body.page:not(.home) .l-main {
    width: 100%;
    max-width: none;
}

/* パンくず */
body.page:not(.home) .p-breadcrumb {
    font-size: 12px;
    color: #887b6c;
}

/* ページタイトル */
body.page:not(.home) .p-page__title {
    position: relative;
    display: block;
    margin: 32px 0 48px;
    padding: 0 0 24px;
    border-bottom: 1px solid var(--benzai-line);
}

body.page:not(.home) .c-pageTitle__main {
    font-family:
        "Yu Mincho",
        "Hiragino Mincho ProN",
        "Noto Serif JP",
        serif;
    font-size: clamp(30px, 3.2vw, 44px);
    font-weight: 500;
    letter-spacing: 0.1em;
    line-height: 1.5;
    color: var(--benzai-ink);
}

/* タイトル下の装飾 */
body.page:not(.home) .p-page__title::after {
    content: "";
    display: block;
    position: absolute;
    left: 0;
    bottom: -1px;
    width: 76px;
    height: 2px;
    background: linear-gradient(
        90deg,
        #6e5333,
        #cbb387
    );
}

/* 本文全体 */
body.page:not(.home) .c-postContent {
    font-size: 16px;
    line-height: 2;
    letter-spacing: 0.025em;
    color: #4c433a;
    padding-bottom: 70px;
}

/* 見出し H2 */
body.page:not(.home) .c-postContent h2.wp-block-heading {
    font-family:
        "Yu Mincho",
        "Hiragino Mincho ProN",
        "Noto Serif JP",
        serif;
    font-size: clamp(23px, 2.3vw, 30px);
    font-weight: 500;
    letter-spacing: 0.055em;
    line-height: 1.5;
    color: var(--benzai-ink);

    margin: 68px 0 28px;
    padding: 0 0 16px;
    border-bottom: 1px solid var(--benzai-line);
}

/* 見出し H3 */
body.page:not(.home) .c-postContent h3.wp-block-heading {
    font-size: 20px;
    font-weight: 600;
    color: var(--benzai-brown);
    border-left: 3px solid var(--benzai-gold);
    padding-left: 14px;
    margin-top: 40px;
}

/* 段落 */
body.page:not(.home) .c-postContent p {
    margin-top: 0;
    margin-bottom: 1.5em;
    line-height: 2;
}

/* リンク */
body.page:not(.home) .c-postContent a:not(.wp-block-button__link) {
    color: #846335;
    text-decoration-color: #c8b18d;
    text-underline-offset: 4px;
    transition: color .2s ease;
}

body.page:not(.home) .c-postContent a:hover {
    color: #3d2b1e;
}

/* 写真＋テキストブロック */
body.page:not(.home) .c-postContent .wp-block-media-text {
    overflow: hidden;
    border: 1px solid #e4dbcf;
    border-radius: 4px;
    background: linear-gradient(
        135deg,
        #faf8f4 0%,
        #eee7dc 100%
    );
}

/* 写真 */
body.page:not(.home) .wp-block-media-text__media img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* 写真横の情報 */
body.page:not(.home) .wp-block-media-text__content {
    padding: clamp(24px, 4vw, 48px);
    font-size: 15px;
    line-height: 1.9;
}

/* 情報内の強調文字 */
body.page:not(.home) .wp-block-media-text__content strong {
    color: var(--benzai-ink);
    font-weight: 600;
}

/* スマートフォン */
@media (max-width: 599px) {
    body.page:not(.home) .l-content__body {
        padding-left: 20px;
        padding-right: 20px;
    }

    body.page:not(.home) .p-page__title {
        margin: 24px 0 32px;
        padding-bottom: 18px;
    }

    body.page:not(.home) .c-postContent {
        font-size: 15px;
        padding-bottom: 48px;
    }

    body.page:not(.home) .c-postContent h2.wp-block-heading {
        margin-top: 48px;
        margin-bottom: 22px;
    }

    body.page:not(.home) .wp-block-media-text__content {
        padding: 24px 20px;
    }
}
