/* =========================================================
   PROJECT LIFE VALUE
   HOME専用CSS
   2026-08-18 会話内の確認済み差分を反映
   ========================================================= */


/* ---------------------------------------------------------
   HOMEではGrayish標準ヘッダーを非表示
--------------------------------------------------------- */

.front-top-page.skin-grayish .header-container {
    display: none !important;
}


/* ---------------------------------------------------------
   Cocoon側の余白をHOMEだけ解除
--------------------------------------------------------- */


.front-top-page #content,
.front-top-page #content-in,
.front-top-page .content-in,
.front-top-page #main,
.front-top-page .main {
    width: 100% !important;
    max-width: none !important;

    margin-top: 0 !important;
    margin-bottom: 0 !important;

    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

.front-top-page .article {
    margin-top: 0 !important;
    margin-bottom: 0 !important;

    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

/* ---------------------------------------------------------
   HOME全体
--------------------------------------------------------- */

.plv-home {
    width: 100vw;
    margin-left: calc(50% - 50vw);
    background: #ffffff;
    color: #222;
    overflow: hidden;
}

.plv-home *,
.plv-home *::before,
.plv-home *::after {
    box-sizing: border-box;
}


/* =========================================================
   HEADER
   ========================================================= */

.plv-header {
    width: 100%;
    height: 76px;
    background: rgba(255, 255, 255, 0.98);
    border-bottom: 1px solid #e8e4dd;
    position: relative;
    z-index: 10;
}

.plv-header__inner {
    width: calc(100% - 80px);
    max-width: 1240px;
    height: 100%;
    margin: 0 auto;

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


/* ブランド名 */

.plv-header__brand {
    display: flex;
    align-items: baseline;
    gap: 14px;

    color: #171717;
    text-decoration: none;
}

.plv-header__sub {
    font-family: "Yu Mincho", "Hiragino Mincho ProN", serif;
    font-size: 14px;
    letter-spacing: 0.05em;
}

.plv-header__name {
    font-family: "Yu Mincho", "Hiragino Mincho ProN", serif;
    font-size: 20px;
    letter-spacing: 0.12em;
}


/* ナビ */

.plv-header__nav {
    display: flex;
    align-items: center;
    gap: 38px;
}

.plv-header__nav a {
    position: relative;

    color: #252525;
    text-decoration: none;

    font-family: Georgia, "Times New Roman", serif;
    font-size: 15px;
    letter-spacing: 0.03em;

    transition: opacity 0.25s ease;
}

.plv-header__nav a:hover {
    opacity: 0.55;
}


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

.plv-hero {
    width: 100%;
    min-height: 440px;
    position: relative;
    display: flex;
    align-items: center;

    background-image:
        linear-gradient(
            90deg,
            rgba(7, 20, 31, 0.82) 0%,
            rgba(7, 20, 31, 0.48) 45%,
            rgba(7, 20, 31, 0.05) 75%
        ),
        url("../images/hero/hero-home.jpg");

    background-size: cover;
    background-position: center bottom;
    background-repeat: no-repeat;
}


.plv-hero__inner {
    position: relative;
    z-index: 2;

    width: calc(100% - 80px);
    max-width: 1240px;
    margin: 0 auto;

    padding: 55px 0 60px;
}


/* PROJECT LIFE VALUE */

.plv-hero__label {
    margin: 0 0 20px;

    color: #c9a05c;

    font-family: Georgia, "Times New Roman", serif;
    font-size: 16px;
    letter-spacing: 0.13em;
}


/* メインコピー */

.plv-hero__title {
    margin: 0 0 20px;

    color: #ffffff;

    font-family: "Yu Mincho", "Hiragino Mincho ProN", serif;
    font-size: clamp(42px, 4vw, 58px);
    font-weight: 400;

    line-height: 1.45;
    letter-spacing: 0.08em;
}


/* 説明文 */

.plv-hero__lead {
    margin: 0 0 28px;

    color: rgba(255, 255, 255, 0.92);

    font-family: "Yu Mincho", "Hiragino Mincho ProN", serif;
    font-size: 15px;

    line-height: 1.9;
    letter-spacing: 0.06em;
}


/* PROJECTボタン */

.plv-hero__button {
    width: 220px;
    height: 48px;

    padding: 0 22px;

    display: flex;
    align-items: center;
    justify-content: space-between;

    border: 1px solid rgba(255, 255, 255, 0.42);

    background: rgba(20, 43, 61, 0.88);

    color: #ffffff;
    text-decoration: none;

    font-family: "Yu Mincho", "Hiragino Mincho ProN", serif;
    font-size: 15px;
    letter-spacing: 0.08em;

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

.plv-hero__button:hover {
    background: rgba(33, 61, 81, 1);
    border-color: rgba(255, 255, 255, 0.8);
    color: #ffffff;
}


/* =========================================================
   タブレット以下
   ※本格レスポンシブはPC完成後に調整
   ========================================================= */

@media screen and (max-width: 900px) {

    .plv-header__inner {
        width: calc(100% - 40px);
    }

    .plv-header__nav {
        gap: 18px;
    }

    .plv-header__sub {
        display: none;
    }

    .plv-hero__inner {
        width: calc(100% - 50px);
    }

}

/* =========================================================
   PROJECT / STORY / MEDIA
   ========================================================= */

.plv-guide {
    width: 100%;
    padding: 18px 40px 22px;
    background: #f7f6f3;
}

.plv-guide__inner {
    width: 100%;
    max-width: 1240px;
    margin: 0 auto;

    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 14px;
}


/* カード */

.plv-guide-card {
    min-height: 138px;

    display: grid;
    grid-template-columns: 38% 62%;

    background: #ffffff;
    border: 1px solid #e4e0d9;

    color: #222;
    text-decoration: none;

    overflow: hidden;

    transition:
        transform 0.25s ease,
        box-shadow 0.25s ease;
}

.plv-guide-card:hover {
    transform: translateY(-3px);

    box-shadow:
        0 8px 24px rgba(0, 0, 0, 0.08);

    color: #222;
}


/* 左側の仮ビジュアル */

.plv-guide-card__visual {
    width: 100%;
    height: 100%;
    min-height: 100%;

    aspect-ratio: auto;

    align-self: stretch;

    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
}

/* PROJECT */

.plv-guide-card__visual--project {
    background-image: url("../images/cards/project.jpg");
    background-position: center center;
}


/* STORY */

.plv-guide-card__visual--story {
    background-image: url("../images/cards/story.jpg");
    background-position: center center;
}


/* PROFILE */

.plv-guide-card__visual--profile {
    background-image: url("../images/profile/profile-hero.jpg");
    background-position: center 28%;
}



/* 右側 */

.plv-guide-card__body {
    padding: 20px 18px;

    display: flex;
    gap: 12px;

    align-items: flex-start;
}

.plv-guide-card__icon {
    flex: 0 0 auto;

    width: 38px;
    height: 38px;

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

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

    color: #b58a45;

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

.plv-guide-card:hover .plv-guide-card__icon {
    background: #b58a45;
    color: #ffffff;

    transition:
        background 0.25s ease,
        color 0.25s ease;
}

/* 見出し */

.plv-guide-card__content h2 {
    margin: 0 0 8px;

    font-family: Georgia, "Times New Roman", serif;
    font-size: 24px;
    font-weight: 400;

    letter-spacing: 0.04em;
}


/* 説明 */

.plv-guide-card__content p {
    margin: 0 0 12px;

    font-family: "Yu Mincho", "Hiragino Mincho ProN", serif;
    font-size: 12px;

    line-height: 1.7;
}


/* 詳しく見る */

.plv-guide-card__more {
    color: #725c36;

    font-family: "Yu Mincho", "Hiragino Mincho ProN", serif;
    font-size: 12px;

    letter-spacing: 0.05em;
}

.plv-guide-card__more span {
    margin-left: 8px;
}

/* =========================================================
   STORY
   ========================================================= */

.plv-story {
    width: 100%;
    padding: 48px 40px 76px;

    background: #f8f6f1;
}

.plv-story__inner {
    width: 100%;
    max-width: 1240px;
    margin: 0 auto;
}


/* 見出し */

.plv-story__heading {
    margin-bottom: 52px;
    text-align: center;
}

.plv-story__label {
    margin: 0 0 12px;

    color: #b58a45;

    font-family: Georgia, "Times New Roman", serif;
    font-size: 15px;
    letter-spacing: 0.14em;
}

.plv-story__heading h2 {
    margin: 0 0 18px;

    color: #252525;

    font-family: "Yu Mincho", "Hiragino Mincho ProN", serif;
    font-size: 30px;
    font-weight: 400;

    line-height: 1.6;
    letter-spacing: 0.08em;
}

.plv-story__lead {
    margin: 0;

    color: #555;

    font-family: "Yu Mincho", "Hiragino Mincho ProN", serif;
    font-size: 13px;

    line-height: 1.9;
    letter-spacing: 0.05em;
}


/* タイムライン */

.plv-story__timeline {
    position: relative;

    display: grid;
    grid-template-columns: repeat(5, 1fr);

    margin-bottom: 48px;
}


/* 横線 */

.plv-story__timeline::before {
    content: "";

    position: absolute;
    top: 28px;
    left: 10%;
    right: 10%;

    height: 1px;

    background: #c8a76d;
}


/* 各項目 */

.plv-story-item {
    position: relative;
    z-index: 2;

    padding: 0 16px;

    text-align: center;
}


/* 円マーカー */

.plv-story-item__marker {
    width: 58px;
    height: 58px;

    margin: 0 auto 20px;

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

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

    background: #f8f6f1;
}

.plv-story-item__marker span {
    color: #ae8240;

    font-family: Georgia, serif;
    font-size: 13px;
    letter-spacing: 0.05em;
}


/* 年 */

.plv-story-item__year {
    margin: 0 0 8px;

    color: #a77c3c;

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

    letter-spacing: 0.04em;
}


/* タイトル */

.plv-story-item h3 {
    margin: 0 0 12px;

    color: #222;

    font-family: "Yu Mincho", "Hiragino Mincho ProN", serif;
    font-size: 15px;
    font-weight: 600;

    line-height: 1.6;
}


/* 本文 */

.plv-story-item__body > p:last-child {
    margin: 0;

    color: #555;

    font-family: "Yu Mincho", "Hiragino Mincho ProN", serif;
    font-size: 11px;

    line-height: 1.8;
}


/* STORY CTA */

.plv-story__cta {
    text-align: center;
}

.plv-story__cta a {
    width: 260px;
    height: 48px;

    margin: 0 auto;
    padding: 0 24px;

    display: flex;
    align-items: center;
    justify-content: space-between;

    background: #10283a;

    color: #ffffff;
    text-decoration: none;

    font-family: "Yu Mincho", "Hiragino Mincho ProN", serif;
    font-size: 14px;

    letter-spacing: 0.08em;

    transition: background 0.25s ease;
}

.plv-story__cta a:hover {
    background: #24445b;
    color: #ffffff;
}

/* =========================================================
   MEDIA
   ========================================================= */

.plv-media {
    width: 100%;
    padding: 52px 40px 70px;

    background: #ffffff;
}

.plv-media__inner {
    width: 100%;
    max-width: 1240px;
    margin: 0 auto;
}


/* 見出し */

.plv-media__heading {
    margin-bottom: 30px;

    display: flex;
    align-items: flex-end;
    justify-content: space-between;

    gap: 30px;
}

.plv-media__label {
    margin: 0 0 8px;

    color: #b58a45;

    font-family: Georgia, "Times New Roman", serif;
    font-size: 14px;
    letter-spacing: 0.14em;
}

.plv-media__heading h2 {
    margin: 0 0 8px;

    font-family: "Yu Mincho", "Hiragino Mincho ProN", serif;
    font-size: 26px;
    font-weight: 400;

    letter-spacing: 0.08em;
}

.plv-media__heading p {
    margin: 0;

    color: #666;

    font-family: "Yu Mincho", "Hiragino Mincho ProN", serif;
    font-size: 12px;

    line-height: 1.8;
}

.plv-media__heading > a {
    padding-bottom: 4px;

    color: #745d38;
    text-decoration: none;

    font-family: "Yu Mincho", "Hiragino Mincho ProN", serif;
    font-size: 12px;

    letter-spacing: 0.06em;
}

.plv-media__heading > a span {
    margin-left: 10px;
}


/* 7カード */

.plv-media__grid {
    display: grid;

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

    gap: 10px;
}


/* =========================================================
   MEDIA CARD
   ========================================================= */

.plv-media-card {
    min-height: 160px;
    padding: 24px 14px;

    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;

    border: 1px solid #ded8cf;
    background: #fcfbf8;

    text-align: center;

    transition:
        transform 0.25s ease,
        box-shadow 0.25s ease;
}

.plv-media-card:hover {
    transform: translateY(-3px);

    box-shadow:
        0 8px 22px rgba(0, 0, 0, 0.06);
}


/* アイコン */

.plv-media-card__icon {
    width: 44px;
    height: 44px;

    margin-bottom: 15px;

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

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

    color: #b58a45;

    font-size: 17px;
}

/* カテゴリー名 */

.plv-media-card__title {
    margin: 0 0 9px;

    color: #202020;

    font-family: "Yu Mincho", "Hiragino Mincho ProN", serif;
    font-size: 19px;
    font-weight: 400;

    line-height: 1.5;
    letter-spacing: 0.06em;
}


/* 補足 */

.plv-media-card__detail {
    margin: 0;

    color: #807569;

    font-family: "Yu Mincho", "Hiragino Mincho ProN", serif;
    font-size: 12px;

    line-height: 1.65;
    letter-spacing: 0.04em;
}

/* =========================================================
   BLOG
   ========================================================= */

.plv-blog {
    width: 100%;
    padding: 56px 40px 80px;

    background: #f8f6f1;
}

.plv-blog__inner {
    width: 100%;
    max-width: 1240px;
    margin: 0 auto;
}


/* 見出し */

.plv-blog__heading {
    margin-bottom: 34px;
}

.plv-blog__label {
    margin: 0 0 9px;

    color: #b58a45;

    font-family: Georgia, "Times New Roman", serif;
    font-size: 14px;
    letter-spacing: 0.14em;
}

.plv-blog__heading h2 {
    margin: 0 0 10px;

    font-family: "Yu Mincho", "Hiragino Mincho ProN", serif;
    font-size: 28px;
    font-weight: 400;

    line-height: 1.6;
    letter-spacing: 0.07em;
}

.plv-blog__heading > p:last-child {
    margin: 0;

    color: #666;

    font-family: "Yu Mincho", "Hiragino Mincho ProN", serif;
    font-size: 13px;

    line-height: 1.9;
}


/* =========================================================
   BLOG - 4 THEMES
   ========================================================= */

.plv-blog-themes {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));

    gap: 14px;

    margin-bottom: 58px;
}


/* カード */

.plv-blog-theme {
    min-height: 210px;

    display: grid;
    grid-template-columns: 36% 64%;

    overflow: hidden;

    border: 1px solid #dfdbd3;

    background: #ffffff;

    color: #222;
    text-decoration: none;

    transition:
        transform 0.25s ease,
        box-shadow 0.25s ease;
}


.plv-blog-theme:hover {
    transform: translateY(-3px);

    box-shadow:
        0 8px 24px rgba(0, 0, 0, 0.06);

    color: #222;
}


/* =========================================
   左側：画像
   ========================================= */

.plv-blog-theme__visual {
    position: relative;

    width: 100%;
    height: 100%;

    min-height: 210px;

    overflow: hidden;

    background: #eee9e1;
}


.plv-blog-theme__visual img {
    display: block;

    width: 100%;
    height: 100%;

    object-fit: cover;
    object-position: center center;

    transition: transform 0.4s ease;
}


.plv-blog-theme:hover .plv-blog-theme__visual img {
    transform: scale(1.035);
}


/* =========================================
   右側：テキスト
   ========================================= */

.plv-blog-theme__body {
    padding: 25px 26px 23px;

    display: flex;
    flex-direction: column;

    min-width: 0;
}


/* 英字ラベル */

.plv-blog-theme__label {
    margin: 0 0 10px;

    color: #ad8241;

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

    letter-spacing: 0.14em;
}


/* タイトル */

.plv-blog-theme h3 {
    margin: 0 0 11px;

    font-family: "Yu Mincho", "Hiragino Mincho ProN", serif;
    font-size: 20px;
    font-weight: 400;

    line-height: 1.5;
    letter-spacing: 0.05em;
}


/* 説明 */

.plv-blog-theme__text {
    margin: 0 0 18px;

    color: #666;

    font-family: "Yu Mincho", "Hiragino Mincho ProN", serif;
    font-size: 12px;

    line-height: 1.8;
}


/* テーマを見る */

.plv-blog-theme__more {
    margin-top: auto;

    color: #765e38;

    font-family: "Yu Mincho", "Hiragino Mincho ProN", serif;
    font-size: 11px;

    letter-spacing: 0.04em;
}


.plv-blog-theme__more span {
    margin-left: 9px;
}

/* =========================================================
   LATEST ARTICLES
   ========================================================= */

.plv-blog-latest__heading {
    margin-bottom: 22px;

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

.plv-blog-latest__heading p {
    margin: 0 0 5px;

    color: #b58a45;

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

    letter-spacing: 0.14em;
}

.plv-blog-latest__heading h3 {
    margin: 0;

    font-family: "Yu Mincho", "Hiragino Mincho ProN", serif;
    font-size: 22px;
    font-weight: 400;
}

.plv-blog-latest__heading > a {
    color: #765e38;
    text-decoration: none;

    font-family: "Yu Mincho", "Hiragino Mincho ProN", serif;
    font-size: 12px;
}

.plv-blog-latest__heading > a span {
    margin-left: 9px;
}


/* 最新2記事 */

.plv-blog-posts {
    display: grid;

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

    gap: 18px;
}

.plv-blog-post {
    min-width: 0;

    background: #ffffff;

    border: 1px solid #dfdbd3;
}

.plv-blog-post__link {
    height: 100%;

    display: block;

    color: #222;
    text-decoration: none;
}

.plv-blog-post__image {
    width: 100%;
    aspect-ratio: 16 / 9;

    overflow: hidden;

    background: #ddd;
}

.plv-blog-post__image img {
    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;

    transition: transform 0.35s ease;
}

.plv-blog-post:hover .plv-blog-post__image img {
    transform: scale(1.03);
}


/* アイキャッチが無い記事 */

.plv-blog-post__noimage {
    width: 100%;
    height: 100%;

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

    background:
        linear-gradient(
            135deg,
            #10283a 0%,
            #364e5e 65%,
            #b38a50 100%
        );

    color: rgba(255,255,255,0.86);

    font-family: Georgia, serif;
    font-size: 13px;

    letter-spacing: 0.12em;
}


/* 本文 */

.plv-blog-post__body {
    padding: 20px 20px 22px;
}

.plv-blog-post__meta {
    margin-bottom: 10px;

    display: flex;
    gap: 13px;

    color: #9a8b78;

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

    letter-spacing: 0.04em;
}

.plv-blog-post__body h3 {
    min-height: 44px;

    margin: 0 0 14px;

    font-family: "Yu Mincho", "Hiragino Mincho ProN", serif;
    font-size: 17px;
    font-weight: 400;

    line-height: 1.65;

    letter-spacing: 0.03em;
}

.plv-blog-post__more {
    color: #765e38;

    font-family: "Yu Mincho", "Hiragino Mincho ProN", serif;
    font-size: 11px;
}

.plv-blog-post__more span {
    margin-left: 8px;
}

/* =========================================================
   CONTACT CTA
   ========================================================= */

.plv-contact {
    width: 100%;
    padding: 30px 40px 38px;

    background: #eee9e0;
    border-top: 1px solid #ded8cf;
}

.plv-contact__inner {
    width: 100%;
    max-width: 1240px;
    margin: 0 auto;

    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 50px;
}

.plv-contact__message {
    flex: 1;
}

.plv-contact__label {
    margin: 0 0 7px;

    color: #b58a45;

    font-family: Georgia, "Times New Roman", serif;
    font-size: 11px;
    letter-spacing: 0.14em;
}

.plv-contact__message h2 {
    margin: 0 0 7px;

    color: #222;

    font-family: "Yu Mincho", "Hiragino Mincho ProN", serif;
    font-size: 20px;
    font-weight: 400;

    line-height: 1.6;
    letter-spacing: 0.05em;
}

.plv-contact__message > p:last-child {
    margin: 0;

    color: #666;

    font-family: "Yu Mincho", "Hiragino Mincho ProN", serif;
    font-size: 11px;

    line-height: 1.7;
}

.plv-contact__action {
    flex: 0 0 300px;
}

.plv-contact__action a {
    width: 100%;
    height: 52px;

    padding: 0 24px;

    display: flex;
    align-items: center;
    justify-content: space-between;

    background: #10283a;

    color: #ffffff;
    text-decoration: none;

    font-family: "Yu Mincho", "Hiragino Mincho ProN", serif;
    font-size: 14px;

    letter-spacing: 0.07em;

    transition: background 0.25s ease;
}

.plv-contact__action a:hover {
    background: #24445b;
    color: #ffffff;
}

/* =========================================================
   SECTION COMMON CTA
   STORY / MEDIA / BLOG
   ========================================================= */

.plv-section-cta {
    margin-top: 38px;
    text-align: center;
}

.plv-section-cta a {
    width: 260px;
    height: 48px;

    margin: 0 auto;
    padding: 0 24px;

    display: flex;
    align-items: center;
    justify-content: space-between;

    background: #10283a;

    color: #ffffff;
    text-decoration: none;

    font-family: "Yu Mincho", "Hiragino Mincho ProN", serif;
    font-size: 14px;
    letter-spacing: 0.08em;

    transition: background 0.25s ease;
}

.plv-section-cta a:hover {
    background: #24445b;
    color: #ffffff;
}

/* =========================================================
   MOBILE
   767px以下
   ========================================================= */

@media screen and (max-width: 767px) {

/* -----------------------------------------
   HEADER：スマホ
----------------------------------------- */

.plv-header {
    height: auto;
}

.plv-header__inner {
    width: calc(100% - 24px);
    height: auto;
    padding: 14px 0 12px;

    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 10px;
}

.plv-header__brand {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 3px;

    text-align: center;
}

/* ロト6で3億2千万円当てた男 */
.plv-header__sub {
    display: block !important;
    font-size: 11px;
    line-height: 1.4;
    letter-spacing: 0.03em;
    white-space: nowrap;
}

/* 久慈六郎 */
.plv-header__name {
    display: block;
    font-size: 16px;
    line-height: 1.4;
    letter-spacing: 0.12em;
    white-space: nowrap;
}

/* ナビ */
.plv-header__nav {
    width: 100%;
    display: flex;
    justify-content: center;
    flex-wrap: nowrap;
    gap: 13px;
}

.plv-header__nav a {
    font-size: 12px;
    white-space: nowrap;
    letter-spacing: 0;
}


    /* -----------------------------------------
       HERO
    ----------------------------------------- */

    .plv-hero {
        min-height: 560px;

        align-items: center;

        /*
           横長画像の人物側まで見えるように
           スマホでは表示位置を右へ移動
        */
        background-position: 72% center;

        /*
           スマホは背景の明暗差が大きいので
           文字を読みやすくする
        */
        background-image:
            linear-gradient(
                90deg,
                rgba(5, 17, 27, 0.90) 0%,
                rgba(5, 17, 27, 0.76) 55%,
                rgba(5, 17, 27, 0.42) 100%
            ),
            url("../images/hero/hero-home.jpg");
    }

    .plv-hero__inner {
        width: calc(100% - 48px);
        max-width: none;

        padding: 65px 0;
    }


    /* PROJECT LIFE VALUE */

    .plv-hero__label {
        margin-bottom: 22px;

        font-size: 14px;
        letter-spacing: 0.12em;
    }


    /* メインコピー */

    .plv-hero__title {
        margin-bottom: 24px;

        font-size: 30px;
        line-height: 1.55;
        letter-spacing: 0.03em;
    }


    /* 説明文 */

    .plv-hero__lead {
        margin-bottom: 30px;

        font-size: 14px;
        line-height: 1.9;
        letter-spacing: 0.03em;
    }

    .plv-hero__lead br {
        display: none;
    }


    /* ボタン */

    .plv-hero__button {
        width: 210px;
        height: 48px;

        font-size: 14px;
    }

/* -----------------------------------------
   STORY
----------------------------------------- */

.plv-story {
    padding: 44px 22px 58px;
}

.plv-story__heading {
    margin-bottom: 38px;
}

.plv-story__label {
    margin-bottom: 10px;
    font-size: 13px;
}

.plv-story__heading h2 {
    margin-bottom: 14px;

    font-size: 22px;
    line-height: 1.6;
    letter-spacing: 0.05em;
}

.plv-story__lead {
    font-size: 12px;
    line-height: 1.8;
}

.plv-story__lead br {
    display: none;
}


/* タイムラインを縦型へ */

.plv-story__timeline {
    display: block;

    margin-bottom: 38px;
    padding-left: 4px;
}


/* PC用横線を解除 */

.plv-story__timeline::before {
    top: 0;
    bottom: 0;
    left: 25px;
    right: auto;

    width: 1px;
    height: auto;

    background: #c8a76d;
}


/* 各項目 */

.plv-story-item {
    position: relative !important;
    min-height: 112px !important;

    padding: 0 0 22px 70px !important;

    text-align: left !important;
    z-index: 1 !important;
}

.plv-story-item:last-child {
    padding-bottom: 0;
}


/* マーカー */

.plv-story-item__marker {
    position: absolute;
    top: 0;
    left: 0;

    width: 50px;
    height: 50px;

    margin: 0;

    background: #f8f6f1;
}

.plv-story-item__marker span {
    font-size: 11px;
}

/* STORY 各年代のビジュアル */

.plv-story-item__visual {
    width: 132px;
    aspect-ratio: 1 / 1;

    margin: 0 auto 18px;

    overflow: hidden;

    background-color: #ffffff;
    border: 1px solid #ded8cf;
}


/* 1999・2005・2026 写真 */

.plv-story-item__visual--photo {
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}


/* 2006・2025 アイコン */

.plv-story-item__visual--icon {
    display: flex;
    align-items: center;
    justify-content: center;

    color: #b58a45;

    font-size: 42px;
}

/* 年 */

.plv-story-item__year {
    margin-bottom: 3px;

    font-size: 15px;
}


/* タイトル */

.plv-story-item h3 {
    margin-bottom: 5px;

    font-size: 14px;
}


/* 本文 */

.plv-story-item__body > p:last-child {
    font-size: 11px;
    line-height: 1.7;
}


/* スマホでは強制改行を解除 */

.plv-story-item__body br {
    display: none;
}


/* CTA */

.plv-story__cta a {
    width: 100%;
    max-width: 280px;
}

}

/* -----------------------------------------
   PROJECT / STORY / MEDIA
   SMARTPHONE
----------------------------------------- */

@media screen and (max-width: 767px) {

    .plv-guide {
        padding: 18px 14px 26px;
    }

    .plv-guide__inner {
        display: grid;
        grid-template-columns: 1fr;
        gap: 12px;
    }

    .plv-guide-card {
        min-height: 120px;
        grid-template-columns: 34% 66%;
    }

    .plv-guide-card__visual {
        width: 100%;
        height: 100%;
        min-height: 100%;

        aspect-ratio: auto;
        align-self: stretch;
    }

    .plv-guide-card__body {
        padding: 16px 14px;
        gap: 10px;
    }

    .plv-guide-card__icon {
        width: 34px;
        height: 34px;
        font-size: 13px;
    }

    .plv-guide-card__content h2 {
        margin-bottom: 5px;
        font-size: 21px;
    }

    .plv-guide-card__content p {
        margin-bottom: 8px;
        font-size: 11px;
        line-height: 1.6;
    }

    .plv-guide-card__more {
        font-size: 11px;
    }

}

/* =========================================================
   PROJECT / STORY / MEDIA
   PC版：横3列固定
   ========================================================= */

@media screen and (min-width: 768px) {

    .plv-guide {
        padding: 18px 14px 26px;
    }

    .plv-guide__inner {
        display: grid !important;
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
        gap: 14px;
    }

    .plv-guide-card {
        width: 100%;
        min-width: 0;

        min-height: 120px;
        grid-template-columns: 34% 66%;
    }

    .plv-guide-card__body {
        padding: 16px 14px;
        gap: 10px;
    }

    .plv-guide-card__icon {
        width: 34px;
        height: 34px;
        font-size: 13px;
    }

}

/* =========================================================
   STORY 年代ビジュアル
   SMARTPHONE
   ========================================================= */

@media screen and (max-width: 767px) {

    .plv-story-item__visual {
        width: 92px;
        height: 92px;

        margin: 0 0 12px;

        aspect-ratio: 1 / 1;
    }

    .plv-story-item__visual--icon {
        font-size: 30px;
    }

}

/* -----------------------------------------
   MEDIA
----------------------------------------- */

.plv-media {
    padding: 42px 18px 56px;
}

.plv-media__heading {
    margin-bottom: 24px;

    display: block;
}

.plv-media__heading h2 {
    font-size: 22px;
}

.plv-media__heading p {
    margin-bottom: 14px;

    font-size: 11px;
}

.plv-media__heading p br {
    display: none;
}

.plv-media__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));

    gap: 8px;
}

.plv-media-card {
    min-height: 105px;
    padding: 15px 8px;
}

.plv-media-card__logo {
    min-height: 34px;

    font-size: 17px;
}

.plv-media-card p {
    margin-top: 6px;

    font-size: 9px;
}

/* 最後のBOOKだけ横幅いっぱい */

.plv-media-card:last-child {
    grid-column: 1 / -1;
}

/* =========================================================
   MEDIA
   PC版：横7列固定
   ========================================================= */

@media screen and (min-width: 768px) {

    .plv-media__grid {
        display: grid !important;
        grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
        gap: 10px;
    }

    .plv-media-card {
        width: 100%;
        min-width: 0;
    }

    .plv-media-card:last-child {
        grid-column: auto !important;
    }

}

/* -----------------------------------------
   BLOG
----------------------------------------- */

.plv-blog {
    padding: 44px 18px 60px;
}

.plv-blog__heading {
    margin-bottom: 26px;
}

.plv-blog__heading h2 {
    font-size: 22px;
}

.plv-blog__heading > p:last-child {
    font-size: 12px;
}

.plv-blog__heading br {
    display: none;
}

/* =========================================
   BLOG 4テーマ - SMARTPHONE
   ========================================= */

.plv-blog-themes {
    grid-template-columns: 1fr;

    gap: 12px;

    margin-bottom: 44px;
}


.plv-blog-theme {
    min-height: 150px;

    grid-template-columns: 36% 64%;

    padding: 0;
}


.plv-blog-theme__visual {
    min-height: 150px;
}


.plv-blog-theme__body {
    padding: 17px 16px 16px;
}


.plv-blog-theme__label {
    margin-bottom: 6px;

    font-size: 9px;
}


.plv-blog-theme h3 {
    margin-bottom: 7px;

    font-size: 16px;

    line-height: 1.5;
}


.plv-blog-theme__text {
    margin-bottom: 10px;

    font-size: 10px;

    line-height: 1.65;
}


.plv-blog-theme__more {
    font-size: 10px;
}


/* 最新記事 */

.plv-blog-latest__heading {
    margin-bottom: 18px;
}

.plv-blog-latest__heading h3 {
    font-size: 20px;
}

.plv-blog-latest__heading > a {
    font-size: 10px;
}

.plv-blog-posts {
    grid-template-columns: 1fr;

    gap: 12px;
}

.plv-blog-post__body {
    padding: 17px 17px 19px;
}

.plv-blog-post__body h3 {
    min-height: 0;

    margin-bottom: 14px;

    font-size: 16px;
}

.plv-blog-post__meta {
    font-size: 9px;
}

.plv-section-cta {
    margin-top: 30px;
}

.plv-section-cta a {
    width: 100%;
    max-width: 280px;
}

/* =========================================================
   BLOG 最新記事
   PC版：2列固定
   ========================================================= */

@media screen and (min-width: 768px) {

    .plv-blog-posts {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 18px;
    }

    .plv-blog-post {
        width: 100%;
        min-width: 0;
    }

}

/* -----------------------------------------
   CONTACT CTA
----------------------------------------- */

.plv-contact {
    padding: 34px 22px 42px;
}

.plv-contact__inner {
    display: block;
}

.plv-contact__message {
    margin-bottom: 24px;
}

.plv-contact__message h2 {
    font-size: 19px;
}

.plv-contact__message h2 br,
.plv-contact__message > p:last-child br {
    display: none;
}

.plv-contact__message > p:last-child {
    font-size: 11px;
}

.plv-contact__action {
    width: 100%;
}

.plv-contact__action a {
    height: 52px;
}

/* =========================================================
   CONTACT
   PC版：左右配置固定
   ========================================================= */

@media screen and (min-width: 768px) {

    .plv-contact__inner {
        display: flex !important;
        align-items: center;
        justify-content: space-between;
        gap: 50px;
    }

    .plv-contact__message {
        flex: 1;
        margin-bottom: 0;
    }

    .plv-contact__action {
        flex: 0 0 300px;
        width: 300px;
    }

    .plv-contact__action a {
        width: 100%;
    }

}

/* =========================================================
   FINAL TYPOGRAPHY
   PC版：文字サイズ最終調整
   ========================================================= */

@media screen and (min-width: 768px) {

    /* -----------------------------------------
       Project / Story / Media 3カード
    ----------------------------------------- */

    .plv-guide-card__content h2 {
        font-size: 25px;
    }

    .plv-guide-card__content p {
        font-size: 13px;
        line-height: 1.75;
    }

    .plv-guide-card__more {
        font-size: 12px;
    }


    /* -----------------------------------------
       STORY
    ----------------------------------------- */

    .plv-story__lead {
        font-size: 14px;
    }

    .plv-story-item__year {
        font-size: 19px;
    }

    .plv-story-item h3 {
        font-size: 16px;
    }

    .plv-story-item__body > p:last-child {
        font-size: 12px;
        line-height: 1.85;
    }


    /* -----------------------------------------
       MEDIA
    ----------------------------------------- */

    .plv-media__heading p {
        font-size: 13px;
    }

    .plv-media-card__logo {
        font-size: 21px;
    }

    .plv-media-card p {
        font-size: 11px;
    }


    /* -----------------------------------------
       BLOG：4テーマ
    ----------------------------------------- */

    .plv-blog__heading > p:last-child {
        font-size: 14px;
    }

    .plv-blog-theme__label {
        font-size: 11px;
    }

    .plv-blog-theme h3 {
        font-size: 19px;
    }

    .plv-blog-theme__text {
        font-size: 13px;
        line-height: 1.8;
    }

    .plv-blog-theme__more {
        font-size: 12px;
    }


    /* -----------------------------------------
       BLOG：最新記事
    ----------------------------------------- */

    .plv-blog-post__meta {
        font-size: 11px;
    }

    .plv-blog-post__body h3 {
        font-size: 18px;
        line-height: 1.65;
    }

    .plv-blog-post__more {
        font-size: 12px;
    }


    /* -----------------------------------------
       CONTACT
    ----------------------------------------- */

    .plv-contact__message h2 {
        font-size: 22px;
    }

    .plv-contact__message > p:last-child {
        font-size: 13px;
        line-height: 1.75;
    }

}

/* =========================================================
   STORY TIMELINE FINAL
   PC / SMARTPHONE
   ========================================================= */


/* ---------------------------------------------------------
   PC
--------------------------------------------------------- */

@media screen and (min-width: 768px) {

    .plv-story__timeline {
        position: relative !important;

        display: grid !important;
        grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
        align-items: start !important;

        margin-bottom: 48px !important;
        padding: 0 !important;
    }


    /* 横線 */
    .plv-story__timeline::before {
        content: "" !important;

        position: absolute !important;

        top: 6px !important;
        left: 10% !important;
        right: 10% !important;
        bottom: auto !important;

        width: auto !important;
        height: 1px !important;

        background: #c8a76d !important;

        z-index: 0 !important;
    }


    .plv-story-item {
        position: relative !important;

        display: block !important;

        padding: 0 12px !important;

        text-align: center !important;

        z-index: 1 !important;
    }


    /* 横線上の○ */
    .plv-story-item::before {
        content: "" !important;

        display: block !important;

        position: absolute !important;

        top: 0 !important;
        left: 50% !important;

        width: 13px !important;
        height: 13px !important;

        transform: translateX(-50%) !important;

        box-sizing: border-box !important;

        border: 2px solid #c8a76d !important;
        border-radius: 50% !important;

        background: #f8f6f1 !important;

        z-index: 3 !important;
    }


    /* 写真・アイコン */
    .plv-story-item__visual {
        position: static !important;

        width: 126px !important;
        height: 126px !important;
        min-width: 126px !important;
        min-height: 126px !important;

        aspect-ratio: 1 / 1 !important;

        margin: 36px auto 18px !important;
        padding: 0 !important;

        overflow: hidden !important;

        border: 1px solid #ded8cf !important;

        box-sizing: border-box !important;
    }


    .plv-story-item__visual--photo {
        display: block !important;

        background-size: cover !important;
        background-position: center center !important;
        background-repeat: no-repeat !important;
    }


    .plv-story-item__visual--icon {
        display: flex !important;

        align-items: center !important;
        justify-content: center !important;

        background: #ffffff !important;

        color: #b58a45 !important;

        font-size: 40px !important;
    }

}


/* ---------------------------------------------------------
   SMARTPHONE
--------------------------------------------------------- */

@media screen and (max-width: 767px) {

    .plv-story__timeline {
        position: relative !important;

        display: block !important;

        margin-bottom: 38px !important;
        padding-left: 4px !important;
    }


    /* 縦線 */
    .plv-story__timeline::before {
        content: "" !important;

        position: absolute !important;

        top: 0 !important;
        bottom: 0 !important;

        left: 25px !important;
        right: auto !important;

        width: 1px !important;
        height: auto !important;

        background: #c8a76d !important;

        z-index: 0 !important;
    }


    .plv-story-item {
        position: relative !important;

        min-height: 112px !important;

        padding: 0 0 22px 70px !important;

        text-align: left !important;

        z-index: 1 !important;
    }


    .plv-story-item:last-child {
        padding-bottom: 0 !important;
    }


    /*
       縦線の中心が25px。
       ○は13pxなので
       25 - 6.5 ≒ 19px
    */

.plv-story-item::before {
    content: "" !important;

    display: block !important;

    position: absolute !important;

    /* 92px画像の縦中央に○を配置 */
    top: 40px !important;

    /* 縦線 left:25px の中心に合わせる */
    left: 14px !important;

    width: 13px !important;
    height: 13px !important;

    box-sizing: border-box !important;

    border: 2px solid #c8a76d !important;
    border-radius: 50% !important;

    background: #f8f6f1 !important;

    z-index: 3 !important;
}

    .plv-story-item__visual {
        width: 92px !important;
        height: 92px !important;

        min-width: 92px !important;
        min-height: 92px !important;

        aspect-ratio: 1 / 1 !important;

        margin: 0 0 2px !important;

        overflow: hidden !important;

        box-sizing: border-box !important;
    }


    .plv-story-item__visual--photo {
        background-size: cover !important;
        background-position: center center !important;
        background-repeat: no-repeat !important;
    }


    .plv-story-item__visual--icon {
        display: flex !important;

        align-items: center !important;
        justify-content: center !important;

        background: #ffffff !important;

        color: #b58a45 !important;

        font-size: 30px !important;
    }

}

/* =========================================================
   BLOG 4 THEMES
   PC FINAL
   ========================================================= */

@media screen and (min-width: 768px) {

    /* 2 × 2 */
    .plv-blog-themes {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;

        gap: 14px !important;

        margin-bottom: 58px !important;
    }


    /* 横長カード */
    .plv-blog-theme {
        display: grid !important;
        grid-template-columns: 36% 64% !important;

        min-height: 200px !important;

        padding: 0 !important;

        overflow: hidden !important;
    }


    /* 左画像 */
    .plv-blog-theme__visual {
        width: 100% !important;
        height: 200px !important;
        min-height: 200px !important;

        margin: 0 !important;
    }


    .plv-blog-theme__visual img {
        width: 100% !important;
        height: 100% !important;

        object-fit: cover !important;
        object-position: center center !important;
    }


    /* 右文章 */
    .plv-blog-theme__body {
        padding: 24px 25px 22px !important;

        display: flex !important;
        flex-direction: column !important;
    }


    .plv-blog-theme__label {
        margin-bottom: 9px !important;

        font-size: 11px !important;
    }


    .plv-blog-theme h3 {
        margin-bottom: 10px !important;

        font-size: 19px !important;
    }


    .plv-blog-theme__text {
        margin-bottom: 16px !important;

        font-size: 12px !important;
        line-height: 1.8 !important;
    }


    .plv-blog-theme__more {
        margin-top: auto !important;

        font-size: 11px !important;
    }

}
/* =========================================================
   HOME TYPOGRAPHY FINAL
   文字サイズ統一
   ========================================================= */


/* ---------------------------------------------------------
   PC
--------------------------------------------------------- */

@media screen and (min-width: 768px) {

    /* セクション英字ラベル */
    .plv-story__label,
    .plv-media__label,
    .plv-blog__label,
    .plv-contact__label {
        font-size: 13px !important;
    }


    /* STORY / MEDIA / BLOG 大見出し */
    .plv-story__heading h2,
    .plv-media__heading h2,
    .plv-blog__heading h2 {
        font-size: 28px !important;
        line-height: 1.6 !important;
    }


    /* 各セクション説明文 */
    .plv-story__lead,
    .plv-media__heading > p:last-child,
    .plv-blog__heading > p:last-child {
        font-size: 13px !important;
        line-height: 1.9 !important;
    }


    /* Project / Story / Media 3カード */
    .plv-guide-card__content h2 {
        font-size: 25px !important;
    }

    .plv-guide-card__content p {
        font-size: 13px !important;
        line-height: 1.75 !important;
    }

    .plv-guide-card__more {
        font-size: 12px !important;
    }


    /* STORY タイムライン */
    .plv-story-item__year {
        font-size: 19px !important;
    }

    .plv-story-item h3 {
        font-size: 17px !important;
    }

    .plv-story-item__body > p:last-child {
        font-size: 13px !important;
        line-height: 1.8 !important;
    }


    /* MEDIA 5カード */
    .plv-media-card__title {
        font-size: 19px !important;
    }

    .plv-media-card__detail {
        font-size: 12px !important;
        line-height: 1.65 !important;
    }


    /* BLOG 4カテゴリー */
    .plv-blog-theme h3 {
        font-size: 19px !important;
    }

    .plv-blog-theme__text {
        font-size: 13px !important;
        line-height: 1.8 !important;
    }

    .plv-blog-theme__more {
        font-size: 11px !important;
    }


    /* 最新記事 */
    .plv-blog-latest__heading h3 {
        font-size: 22px !important;
    }

    .plv-blog-post__body h3 {
        font-size: 18px !important;
    }

    .plv-blog-post__meta {
        font-size: 10px !important;
    }

    .plv-blog-post__more {
        font-size: 11px !important;
    }


    /* CONTACT */
    .plv-contact__label {
        font-size: 12px !important;
    }

    .plv-contact__message h2 {
        font-size: 22px !important;
    }

    .plv-contact__message > p:last-child {
        font-size: 12px !important;
        line-height: 1.8 !important;
    }


    /* 共通ボタン */
    .plv-section-cta a,
    .plv-contact__action a {
        font-size: 13px !important;
    }
}


/* ---------------------------------------------------------
   SMARTPHONE
--------------------------------------------------------- */

@media screen and (max-width: 767px) {

    /* セクション英字ラベル */
    .plv-story__label,
    .plv-media__label,
    .plv-blog__label,
    .plv-contact__label {
        font-size: 12px !important;
    }


    /* STORY / MEDIA / BLOG */
    .plv-story__heading h2,
    .plv-media__heading h2,
    .plv-blog__heading h2 {
        font-size: 24px !important;
        line-height: 1.6 !important;
    }


    .plv-story__lead,
    .plv-media__heading > p:last-child,
    .plv-blog__heading > p:last-child {
        font-size: 12px !important;
        line-height: 1.85 !important;
    }


    /* 3カード */
    .plv-guide-card__content h2 {
        font-size: 21px !important;
    }

    .plv-guide-card__content p {
        font-size: 11px !important;
        line-height: 1.7 !important;
    }

    .plv-guide-card__more {
        font-size: 11px !important;
    }


    /* STORY */
    .plv-story-item__year {
        font-size: 18px !important;
    }

    .plv-story-item h3 {
        font-size: 16px !important;
    }

    .plv-story-item__body > p:last-child {
        font-size: 12px !important;
        line-height: 1.8 !important;
    }


    /* MEDIA */
    .plv-media-card__title {
        font-size: 17px !important;
    }

    .plv-media-card__detail {
        font-size: 11px !important;
    }


    /* BLOGカテゴリー */
    .plv-blog-theme h3 {
        font-size: 16px !important;
    }

    .plv-blog-theme__text {
        font-size: 11px !important;
        line-height: 1.7 !important;
    }


    /* 最新記事 */
    .plv-blog-latest__heading h3 {
        font-size: 20px !important;
    }

    .plv-blog-post__body h3 {
        font-size: 16px !important;
    }


    /* CONTACT */
    .plv-contact__message h2 {
        font-size: 20px !important;
    }

    .plv-contact__message > p:last-child {
        font-size: 11px !important;
    }
}
/* =========================================================
   MOBILE FOOTER FINAL
   HOMEスマホ版フッター調整
   ========================================================= */

@media screen and (max-width: 767px) {

    /* -----------------------------------------
       フッター全体
    ----------------------------------------- */

    .front-top-page #footer {
        padding-bottom: 64px;
    }


    .front-top-page .footer-bottom {
        padding: 28px 16px 20px;
        text-align: center;
    }


    /* -----------------------------------------
       サイト名
       「久慈六郎」だけ次の行に落ちるのを防ぐ
    ----------------------------------------- */

 .front-top-page .footer-bottom-logo {
    width: 100%;
    margin-bottom: 16px;
    padding: 0 8px;

    text-align: center;
    overflow: visible;
}

.front-top-page .footer-bottom-logo a {
    display: block;

    width: 100%;
    max-width: 100%;

    white-space: normal !important;
    word-break: keep-all;
    overflow-wrap: normal;

    font-size: 12px;
    line-height: 1.8;
    letter-spacing: 0.04em;

    text-align: center;
}

    /* -----------------------------------------
       フッターメニュー
       3列 × 2段にして均等配置
    ----------------------------------------- */

    .front-top-page .navi-footer {
        width: 100%;
    }


    .front-top-page .menu-footer {
        width: 100%;

        margin: 0 auto 18px;
        padding: 0;

        display: grid;
        grid-template-columns: repeat(3, auto);

        justify-content: center;

        column-gap: 24px;
        row-gap: 10px;
    }


    .front-top-page .menu-footer li {
        margin: 0;
        padding: 0;
    }


    .front-top-page .menu-footer li a {
        padding: 0;

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

        white-space: nowrap;
    }


    /* -----------------------------------------
       コピーライト
    ----------------------------------------- */

    .front-top-page .copyright {
        margin-top: 0;

        font-size: 10px;
        line-height: 1.6;
        letter-spacing: 0.02em;

        text-align: center;

        white-space: nowrap;
    }

}

/* =========================================================
   SOCIAL LINKS
   CONTACT下 / FOOTER上
   ========================================================= */

.front-top-page .plv-social {
    width: 100%;
    padding: 42px 40px 46px;

    background: #ffffff;

    border-top: 1px solid #eeeae4;
}


.front-top-page .plv-social__inner {
    width: 100%;
    max-width: 1240px;

    margin: 0 auto;

    text-align: center;
}


/* -----------------------------------------
   見出し
----------------------------------------- */

.front-top-page .plv-social__heading {
    margin-bottom: 28px;
}


.front-top-page .plv-social__label {
    margin: 0 0 8px;

    color: #b58a45;

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

    letter-spacing: 0.16em;
}


.front-top-page .plv-social__heading h2 {
    margin: 0;

    color: #222;

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

    font-size: 21px;
    font-weight: 400;

    line-height: 1.6;
    letter-spacing: 0.06em;
}


/* -----------------------------------------
   5つのSNS
----------------------------------------- */

.front-top-page .plv-social__links {
    width: 100%;
    max-width: 620px;

    margin: 0 auto;

    display: grid;
    grid-template-columns: repeat(5, 1fr);

    gap: 20px;
}


.front-top-page .plv-social-link {
    display: flex;
    flex-direction: column;

    align-items: center;
    justify-content: flex-start;

    gap: 9px;

    color: #555;
    text-decoration: none;

    transition:
        color 0.25s ease,
        transform 0.25s ease;
}


.front-top-page .plv-social-link:hover {
    color: #b58a45;

    transform: translateY(-2px);
}


/* -----------------------------------------
   丸アイコン
----------------------------------------- */

.front-top-page .plv-social-link__icon {
    width: 46px;
    height: 46px;

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

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

    background: #ffffff;

    color: #6d604e;

    font-size: 19px;

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


.front-top-page .plv-social-link:hover
.plv-social-link__icon {
    background: #10283a;

    border-color: #10283a;

    color: #ffffff;
}


/* X */

.front-top-page .plv-social-link__icon--x {
    font-family: Arial, sans-serif;

    font-size: 17px;
    font-weight: 500;
}


/* note */

.front-top-page .plv-social-link__icon--note {
    font-family: Arial, sans-serif;

    font-size: 20px;
    font-weight: 700;
}


/* TikTok
   現在のFont Awesomeで表示されないため代用 */

.front-top-page
.plv-social-link:first-child
.plv-social-link__icon i {
    display: none;
}


.front-top-page
.plv-social-link:first-child
.plv-social-link__icon::before {
    content: "♪";

    font-family: Arial, sans-serif;

    font-size: 21px;
    font-weight: 700;
}


/* -----------------------------------------
   SNS名
----------------------------------------- */

.front-top-page .plv-social-link__name {
    color: inherit;

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

    font-size: 11px;

    letter-spacing: 0.03em;
}


/* =========================================================
   SOCIAL LINKS
   SMARTPHONE
   ========================================================= */

@media screen and (max-width: 767px) {

    .front-top-page .plv-social {
        padding: 34px 16px 36px;
    }


    .front-top-page .plv-social__heading {
        margin-bottom: 24px;
    }


    .front-top-page .plv-social__label {
        font-size: 10px;
    }


    .front-top-page .plv-social__heading h2 {
        font-size: 18px;
    }


    .front-top-page .plv-social__links {
        max-width: 360px;

        gap: 7px;
    }


    .front-top-page .plv-social-link {
        gap: 7px;
    }


    .front-top-page .plv-social-link__icon {
        width: 40px;
        height: 40px;

        font-size: 17px;
    }


    .front-top-page
    .plv-social-link:first-child
    .plv-social-link__icon::before {
        font-size: 19px;
    }


    .front-top-page .plv-social-link__icon--x {
        font-size: 15px;
    }


    .front-top-page .plv-social-link__icon--note {
        font-size: 18px;
    }


    .front-top-page .plv-social-link__name {
        font-size: 9px;
    }

}

/* =========================================================
   FINAL SMALL TEXT ADJUSTMENT
   BLOG META / SOCIAL NAME
   ========================================================= */

/* BLOG：日付・カテゴリー */
.front-top-page .plv-blog-post__meta {
    font-size: 12px !important;
}


/* SNS：TikTok / Instagram / X / note / YouTube */
.front-top-page .plv-social-link__name {
    font-size: 12px;
}


/* スマホ */
@media screen and (max-width: 767px) {

    .front-top-page .plv-blog-post__meta {
        font-size: 11px !important;
    }

    .front-top-page .plv-social-link__name {
        font-size: 10px;
    }

}

.plv-media-card {
    color: inherit;
    text-decoration: none;
}

.plv-media-card:hover,
.plv-media-card:focus {
    color: inherit;
    text-decoration: none;
}