/* =========================================================
   工房がつくる家具
   PC専用 / 最大幅750px
========================================================= */

.kobo-made,
.kobo-made * {
    box-sizing: border-box;
}

.kobo-made {
    width: 100%;
    max-width: 750px;

    margin: 0 auto 38px;
    padding: 0 0 28px;

    background: #f3f1ec;

    color: #2b2621;
}

.kobo-made a {
    color: inherit;
}


/* =========================================================
   HERO CARD
========================================================= */

.kobo-made__hero-card {
    position: relative;

    width: calc(100% - 20px);
    max-width: 730px;

    margin: 10px auto 0;

    overflow: hidden;

    border-radius: 26px;

    /* 元画像比率に近い16:9で表示 */
    aspect-ratio: 16 / 9;

    background: #e9e4dc;
}


/* =========================================================
   HERO IMAGE
========================================================= */

.kobo-made__hero-picture {
    position: absolute;
    inset: 0;

    display: block;

    width: 100%;
    height: 100%;
}

.kobo-made__hero-image {
    display: block;

    width: 100%;
    height: 100%;

    object-fit: cover;

    /* TVボードとキャビネットが見える位置 */
    object-position: 61% center;

    /* PC用高解像度画像をそのまま使用 */
    image-rendering: auto;

    filter: none;
    transform: none;
    backface-visibility: visible;
}


/* =========================================================
   HERO OVERLAY
========================================================= */

.kobo-made__hero-overlay {
    position: relative;
    z-index: 2;

    width: 100%;
    height: 100%;

    display: flex;
    align-items: stretch;
    justify-content: space-between;
}


/* =========================================================
   LEFT TEXT PANEL
========================================================= */

.kobo-made__hero-panel {
    width: 42%;
    min-width: 0;

    padding: 30px 22px 24px;

    background:
        linear-gradient(
            90deg,
            rgba(248, 246, 241, 0.96) 0%,
            rgba(248, 246, 241, 0.91) 72%,
            rgba(248, 246, 241, 0.30) 100%
        );

    /* 背景画像そのものをぼかさない */
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
}

.kobo-made__eyebrow {
    margin: 0 0 16px;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 9px;
    line-height: 1.4;

    letter-spacing: 0.18em;

    color: #766b5f;
}

.kobo-made__title {
    margin: 0;

    font-family:
        "Yu Mincho",
        "YuMincho",
        "Hiragino Mincho ProN",
        "Hiragino Mincho Pro",
        serif;

    font-size: 32px;
    line-height: 1.5;

    letter-spacing: 0.04em;

    font-weight: 500;

    color: #2a241f;
}

.kobo-made__lead {
    margin: 16px 0 0;

    font-family:
        "Yu Mincho",
        "YuMincho",
        "Hiragino Mincho ProN",
        serif;

    font-size: 11px;
    line-height: 1.9;

    color: #564f48;
}


/* =========================================================
   HERO BUTTON
========================================================= */

.kobo-made__hero-button {
    display: inline-flex;
    align-items: center;
    justify-content: space-between;

    width: 205px;
    max-width: 100%;

    margin-top: 18px;
    padding: 12px 13px;

    border: 1px solid #4b443d;

    background: rgba(255, 255, 255, 0.84);

    color: #29241f;

    text-decoration: none;

    font-size: 10px;
    line-height: 1.4;

    letter-spacing: 0.03em;

    transition:
        background 0.2s ease,
        color 0.2s ease,
        transform 0.2s ease;
}

.kobo-made__hero-button:hover {
    background: #2f2924;
    color: #fff;

    transform: translateY(-1px);
}

.kobo-made__hero-button:focus-visible {
    outline: 2px solid #5f554b;
    outline-offset: 3px;
}

.kobo-made__arrow {
    flex: 0 0 auto;

    margin-left: 10px;

    font-size: 15px;
    line-height: 1;
}


/* =========================================================
   VERTICAL COPY
========================================================= */

.kobo-made__vertical {
    position: absolute;
    z-index: 3;

    top: 25px;
    right: 20px;

    margin: 0;

    writing-mode: vertical-rl;

    font-family:
        "Yu Mincho",
        "YuMincho",
        "Hiragino Mincho ProN",
        serif;

    font-size: 11px;
    line-height: 1.8;

    letter-spacing: 0.10em;

    color: #544a40;

    text-shadow:
        0 0 10px rgba(255, 255, 255, 0.45);
}


/* =========================================================
   CATEGORY
========================================================= */

.kobo-made__category-section {
    padding: 24px 12px 14px;

    scroll-margin-top: 18px;
}

.kobo-made__category-head {
    margin: 0 0 16px;

    text-align: center;
}

.kobo-made__category-en {
    margin: 0 0 7px;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 9px;
    line-height: 1;

    letter-spacing: 0.18em;

    color: #9a8f82;
}

.kobo-made__category-head h2 {
    margin: 0;

    font-family:
        "Yu Mincho",
        "YuMincho",
        "Hiragino Mincho ProN",
        serif;

    font-size: 20px;
    line-height: 1.5;

    font-weight: 500;

    color: #2d2823;
}

.kobo-made__category-head > p:last-child {
    margin: 7px 0 0;

    font-size: 11px;
    line-height: 1.7;

    color: #766d64;
}


/* =========================================================
   CATEGORY GRID
   PC幅750pxでは2列
========================================================= */

.kobo-made__categories {
    display: grid;

    grid-template-columns:
        repeat(2, minmax(0, 1fr));

    gap: 12px;
}


/* =========================================================
   CATEGORY CARD
========================================================= */

.kobo-made-card {
    display: block;

    min-width: 0;

    overflow: hidden;

    border: 1px solid #ddd7ce;

    background: #fff;

    text-decoration: none;

    transition:
        transform 0.2s ease,
        border-color 0.2s ease,
        box-shadow 0.2s ease;
}

.kobo-made-card:hover {
    transform: translateY(-2px);

    border-color: #c8beaf;

    box-shadow:
        0 8px 18px rgba(55, 45, 34, 0.08);
}

.kobo-made-card:focus-visible {
    outline: 2px solid #5f554b;
    outline-offset: 3px;
}


/* =========================================================
   CATEGORY IMAGE
========================================================= */

.kobo-made-card__image-wrap {
    width: 100%;

    aspect-ratio: 4 / 3;

    overflow: hidden;

    background: #eee9e2;
}

.kobo-made-card__image {
    display: block;

    width: 100%;
    height: 100%;

    object-fit: cover;

    image-rendering: auto;

    transition:
        transform 0.35s ease;
}

.kobo-made-card:hover
.kobo-made-card__image {
    transform: scale(1.03);
}


/* =========================================================
   CATEGORY BODY
========================================================= */

.kobo-made-card__body {
    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 8px;

    min-height: 72px;

    padding: 11px 13px;
}

.kobo-made-card__text {
    min-width: 0;
}

.kobo-made-card__en {
    display: block;

    margin: 0 0 5px;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 8px;
    line-height: 1;

    letter-spacing: 0.12em;

    color: #9a9186;
}

.kobo-made-card__body h3 {
    margin: 0;

    font-size: 14px;
    line-height: 1.45;

    font-weight: 600;

    color: #302b26;
}


/* =========================================================
   CARD ARROW
========================================================= */

.kobo-made-card__arrow {
    flex: 0 0 auto;

    display: inline-flex;
    align-items: center;
    justify-content: center;

    width: 26px;
    height: 26px;

    border: 1px solid #ddd4c8;
    border-radius: 50%;

    font-size: 12px;
    line-height: 1;

    color: #4c453d;

    transition:
        background 0.2s ease,
        color 0.2s ease,
        border-color 0.2s ease;
}

.kobo-made-card:hover
.kobo-made-card__arrow {
    background: #302b26;
    border-color: #302b26;

    color: #fff;
}
