﻿        body {
            font-family: 'Noto Sans JP', 'Hiragino Kaku Gothic ProN', 'Meiryo', sans-serif;
            font-size: 18px;
            line-height: 1.8;
            color: #333;
            margin: 0;
            padding: 0;
            background-color: #fcfaf8;
        }
        img {
            max-width: 100%;
            height: auto;
            vertical-align: bottom;
        }
        .container {
            max-width: 800px;
            margin: 0 auto;
            background-color: #fff;
            box-shadow: 0 0 15px rgba(0,0,0,0.05);
        }
        .fv {
            width: 100%;
            max-width: none;
            margin: 0;
            padding: 0;
            position: relative;
        }
        .fv-header {
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 80px;
            background: rgba(255, 255, 255, 0.8);
            z-index: 2;
            display: flex;
            align-items: center;
            justify-content: center;
            box-sizing: border-box;
            padding: 0 20px;
        }
        .fv-header-logo {
            display: flex;
            align-items: center;
            justify-content: center;
            width: 100%;
            height: 100%;
            padding: 2px 0;
            box-sizing: border-box;
            line-height: 0;
            text-align: center;
        }
        .fv-header-logo img {
            width: auto;
            max-width: min(95%, 520px);
            max-height: 100%;
            height: auto;
            display: block;
            margin: 0 auto;
            object-fit: contain;
            transform: scale(0.92);
            transform-origin: center center;
        }
        .fv picture {
            display: block;
            width: 100%;
        }
        .fv .fv-main {
            width: 100%;
            max-width: none;
            display: block;
        }
        .cv-btn-group {
            display: block;
            width: fit-content;
            max-width: 100%;
            margin: 0 auto;
            line-height: normal;
        }
        .fv-btn-group {
            position: absolute;
            left: 50%;
            bottom: 50px;
            transform: translateX(-50%);
            z-index: 1;
            width: fit-content;
            max-width: 100%;
            margin: 0;
        }
        .cv-btn-note {
            display: block;
            width: 100%;
            margin: 3px 0 0;
            padding: 0;
            text-align: right;
            font-size: 13px;
            line-height: 1.35;
            color: #444;
            letter-spacing: 0.02em;
            white-space: nowrap;
            box-sizing: border-box;
            text-shadow: 0 0 1px #fff,
                         0 0 2px #fff,
                         0 0 3px #fff,
                         0 0 4px rgba(255, 255, 255, 1),
                         0 0 5px rgba(255, 255, 255, 0.95),
                         0 1px 2px rgba(255, 255, 255, 1);
        }
        .fv-btn-group .cv-btn-note {
            color: #333333;
        }
        .fv-btn {
            position: relative;
            display: block;
            line-height: 0;
            overflow: hidden;
            border-radius: 6px;
            opacity: 1;
            transition: opacity 0.35s ease, transform 0.35s ease;
        }
        @media (min-width: 769px) {
            .fv-btn:hover {
                opacity: 0.9;
                transform: translateY(-5px);
            }
        }
        .fv-btn::after,
        .sec-cta-btn::after {
            content: "";
            position: absolute;
            top: -25%;
            left: 0;
            width: 40%;
            height: 150%;
            background: linear-gradient(
                90deg,
                transparent 0%,
                rgba(255, 255, 255, 0.15) 28%,
                rgba(255, 255, 255, 0.75) 50%,
                rgba(255, 255, 255, 0.15) 72%,
                transparent 100%
            );
            transform: skewX(-42deg) translateX(-200%);
            animation: btn-kiran 5s linear infinite;
            pointer-events: none;
            z-index: 1;
        }
        @keyframes btn-kiran {
            0%, 18% {
                transform: skewX(-42deg) translateX(-200%);
            }
            58% {
                transform: skewX(-42deg) translateX(320%);
            }
            59%, 100% {
                transform: skewX(-42deg) translateX(-200%);
            }
        }
        .fv-btn img {
            width: auto;
            max-width: 100%;
            height: auto;
            display: block;
        }
        .sec01 {
            position: relative;
            width: 100%;
            max-width: none;
            margin: 0;
            background-color: #d8cfc4;
            min-height: calc(min(42vw, 500px) + 200px);
        }
        .sec01.lazy-bg-loaded {
            background: url(img/sec01_bg.png) center center / cover no-repeat;
        }
        .sec01::before {
            content: "";
            position: absolute;
            inset: 0;
            background: linear-gradient(180deg, rgba(60, 45, 35, 0.15) 0%, rgba(60, 45, 35, 0.35) 100%);
            pointer-events: none;
        }
        .sec01-inner {
            position: relative;
            z-index: 1;
            max-width: 960px;
            width: 100%;
            margin: 0 auto;
            min-height: calc(min(42vw, 500px) + 200px);
            padding: 100px 0;
            box-sizing: border-box;
        }
        .sec01-copy {
            position: absolute;
            top: 50%;
            left: 50%;
            transform: translateY(-50%);
            width: 50%;
            max-width: 770px;
            line-height: 0;
            box-sizing: border-box;
            padding-right: 20px;
        }
        .sec01-copy picture {
            display: block;
            width: 100%;
        }
        .sec01-copy img {
            width: 100%;
            max-width: 770px;
            height: auto;
            display: block;
        }
        .sec02 {
            width: 100%;
            background-color: #cfcfcf;
            padding: 70px 20px 80px;
            box-sizing: border-box;
        }
        .sec02-inner {
            max-width: 960px;
            width: 100%;
            margin: 0 auto;
        }
        .sec02-heading {
            text-align: center;
            font-family: "Noto Serif JP", "Yu Mincho", "Hiragino Mincho ProN", serif;
            font-size: 39px;
            font-weight: 500;
            color: #333;
            line-height: 1.55;
            margin: 0 0 28px;
            letter-spacing: 0.06em;
        }
        .sec02-heading-line2 {
            display: block;
            margin-top: 0.2em;
        }
        .sec02-divider {
            border: none;
            height: 1px;
            max-width: 900px;
            margin: 0 auto 48px;
            background: #3a3a3a;
        }
        .sec02-cards {
            display: grid;
            grid-template-columns: repeat(3, 1fr);
            gap: 28px;
            max-width: 100%;
            margin: 0 auto 56px;
        }
        .sec02-card {
            position: relative;
            background: #fff;
            border-radius: 0;
            padding: 22px 18px 28px;
            box-shadow: 0 4px 16px rgba(80, 60, 40, 0.08);
            text-align: center;
        }
        .sec02-card::after {
            content: "";
            position: absolute;
            left: 50%;
            bottom: -12px;
            transform: translateX(-50%);
            border-left: 14px solid transparent;
            border-right: 14px solid transparent;
            border-top: 14px solid #fff;
            filter: drop-shadow(0 4px 4px rgba(80, 60, 40, 0.06));
        }
        .sec02-card-title {
            font-size: 18px;
            font-weight: 600;
            color: #333;
            line-height: 1.75;
            margin: 0 0 16px;
        }
        .sec02-card img {
            width: 100%;
            max-width: 220px;
            height: auto;
            display: block;
            margin: 0 auto;
        }
        .sec02-footer {
            text-align: center;
            font-family: "Noto Serif JP", "Yu Mincho", "Hiragino Mincho ProN", serif;
        }
        .sec02-footer p:not(.sec02-footer-highlight) {
            display: block;
            text-align: center;
            margin: 0 0 0.6em;
            font-size: 22px;
            font-weight: 500;
            color: #333;
            line-height: 1.9;
        }
        .sec02-footer p.sec02-footer-highlight {
            display: block;
            text-align: center;
            font-size: 39px;
            font-weight: 500;
            color: #a67c52;
            line-height: 1.55;
            letter-spacing: 0.06em;
            margin: 0.4em 0 0.6em;
        }
        .sec02-footer-highlight-line {
            display: inline;
            background: linear-gradient(transparent 68%, #fff 68%);
            box-decoration-break: clone;
            -webkit-box-decoration-break: clone;
            text-shadow: 0 0 8px #fff,
                         0 0 16px #fff,
                         0 0 24px rgba(255, 255, 255, 1),
                         0 2px 8px rgba(255, 255, 255, 1);
        }
        .sec03 {
            width: 100%;
            background-color: #5a4a3a;
            padding: 64px 20px 80px;
            box-sizing: border-box;
            color: #fff;
            content-visibility: auto;
            contain-intrinsic-size: auto 600px;
        }
        .sec03.lazy-bg-loaded {
            background: url(img/sec03_bg.png) center center / cover no-repeat;
        }
        .sec03-inner {
            max-width: 960px;
            width: 100%;
            margin: 0 auto;
        }
        .sec03-tit {
            margin: 0 0 16px;
            text-align: center;
            line-height: 0;
        }
        .sec03-tit img {
            width: auto;
            max-width: min(920px, 100%);
            height: auto;
            display: block;
            margin: 0 auto;
        }
        .sec03-body {
            display: flex;
            align-items: center;
            gap: 36px 48px;
        }
        .sec03-text {
            flex: 1;
            min-width: 0;
        }
        .sec03-text > p {
            display: block;
            text-align: left;
            font-size: 18px;
            line-height: 2.1;
            color: #000;
            margin: 0 0 2em;
            text-shadow: 0 0 1px #fff,
                         0 0 2px #fff,
                         0 0 3px #fff,
                         0 0 4px #fff,
                         0 0 5px #fff,
                         0 1px 2px #fff,
                         1px 0 2px #fff,
                         -1px 0 2px #fff,
                         0 -1px 2px #fff;
        }
        .sec03-text > p:last-of-type {
            margin-bottom: 0;
        }
        .sec03-visual {
            flex: 0 0 min(38vw, 360px);
            align-self: center;
        }
        .sec03-img {
            width: 100%;
            aspect-ratio: 1;
            border-radius: 50%;
            object-fit: cover;
            display: block;
        }
        .sec03-callout {
            background: rgba(255, 255, 255, 0.9);
            border: 1px solid #e1d3c7;
            padding: 26px 28px 30px;
            margin-top: 36px;
            text-align: center;
        }
        .sec03-callout-lead {
            display: block;
            text-align: center;
            font-size: 18px;
            color: #333;
            line-height: 1.9;
            margin: 0;
        }
        .sec03-callout-main {
            display: block;
            text-align: center;
            margin: 0.6em 0 0;
            line-height: 1.55;
        }
        .sec03-callout-em {
            font-family: "Noto Serif JP", "Yu Mincho", "Hiragino Mincho ProN", serif;
            font-size: 39px;
            font-weight: 500;
            color: #a67c52;
            letter-spacing: 0.06em;
        }
        .sec03-callout-end {
            font-size: 18px;
            color: #333;
        }
        .sec04 {
            width: 100%;
            background-color: #ffffff;
            padding: 70px 20px 80px;
            content-visibility: auto;
            contain-intrinsic-size: auto 600px;
            box-sizing: border-box;
        }
        .sec04-inner {
            max-width: 960px;
            width: 100%;
            margin: 0 auto;
        }
        .sec04-en {
            margin: 0 0 8px;
            text-align: center;
            font-family: "Great Vibes", cursive;
            font-size: 32px;
            color: #888;
            line-height: 1.2;
        }
        .sec04-heading {
            margin: 0 0 28px;
            text-align: center;
            font-family: "Noto Serif JP", "Yu Mincho", "Hiragino Mincho ProN", serif;
            font-size: 39px;
            font-weight: 500;
            color: #333;
            line-height: 1.55;
            letter-spacing: 0.06em;
        }
        .sec04-accent {
            color: #555;
        }
        .sec04-heading .sec04-accent,
        .sec04-intro-text .sec04-accent {
            color: #a67c52;
        }
        .sec04-divider {
            border: none;
            height: 1px;
            max-width: 900px;
            margin: 0 auto 48px;
            background: #3a3a3a;
        }
        .sec04-intro {
            display: flex;
            align-items: center;
            gap: 32px 40px;
            margin-bottom: 48px;
        }
        .sec04-intro-text {
            flex: 4;
            min-width: 0;
        }
        .sec04-intro-text p {
            display: block;
            text-align: left;
            font-size: 18px;
            line-height: 2.1;
            color: #333;
            margin: 0 0 1.6em;
        }
        .sec04-intro-text p:last-child {
            margin-bottom: 0;
        }
        .sec04-intro-text .sec04-accent {
            font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Meiryo", sans-serif;
        }
        .sec04-intro-visual {
            flex: 4;
            min-width: 0;
        }
        .sec04-intro-visual img {
            width: 100%;
            height: auto;
            display: block;
        }
        .sec04-cards {
            display: grid;
            grid-template-columns: repeat(2, 1fr);
            gap: 32px;
            margin-bottom: 56px;
        }
        .sec04-card {
            overflow: hidden;
            border-radius: 0;
            box-shadow: 0 4px 16px rgba(80, 60, 40, 0.08);
        }
        .sec04-card > img {
            width: 100%;
            height: auto;
            display: block;
            vertical-align: bottom;
        }
        .sec04-card-body {
            position: relative;
            background: #cfcfcf;
            padding: 22px 24px 32px;
            text-align: center;
        }
        .sec04-card-heading {
            display: block;
            font-family: "Noto Serif JP", "Yu Mincho", "Hiragino Mincho ProN", serif;
            font-size: 22px;
            font-weight: 500;
            color: #333;
            margin: 0 0 1em;
            line-height: 1.7;
        }
        .sec04-card-heading .sec04-accent {
            font-weight: 600;
        }
        .sec04-card-text {
            display: block;
            font-size: 18px;
            color: #333;
            line-height: 2;
            margin: 0;
            text-align: left;
        }
        .sec04-sparkle {
            position: absolute;
            right: 14px;
            bottom: 12px;
            color: #999;
            font-size: 18px;
            letter-spacing: 0.15em;
            line-height: 1;
        }
        .sec04-footer {
            text-align: center;
            font-family: "Noto Serif JP", "Yu Mincho", "Hiragino Mincho ProN", serif;
        }
        .sec04-footer p:not(.sec04-footer-highlight) {
            display: block;
            text-align: center;
            margin: 0 0 0.5em;
            font-size: 22px;
            font-weight: 500;
            color: #333;
            line-height: 1.9;
        }
        .sec04-footer p.sec04-footer-highlight {
            display: block;
            text-align: center;
            font-size: 39px;
            font-weight: 500;
            color: #a67c52;
            line-height: 1.55;
            letter-spacing: 0.06em;
            margin: 0.3em 0 0.4em;
        }
        .sec06 {
            width: 100%;
            background-color: #f0ebe4;
            padding: 70px 20px 150px;
            box-sizing: border-box;
            content-visibility: auto;
            contain-intrinsic-size: auto 500px;
        }
        .sec06.lazy-bg-loaded {
            background: url(img/sec06_bg1.png) center center / cover no-repeat;
        }
        .sec06-inner {
            max-width: 960px;
            width: 100%;
            margin: 0 auto;
        }
        .sec06-copy {
            width: min(67.6%, 650px);
            color: #1f1f1f;
            display: flex;
            flex-direction: column;
            align-items: flex-start;
        }
        .sec06-copy p {
            display: block;
            text-align: left;
            margin-left: 0;
            margin-right: 0;
        }
        .sec06-lead {
            margin: 0 0 36px;
            font-family: "Noto Serif JP", "Yu Mincho", "Hiragino Mincho ProN", serif;
            font-size: 54px;
            line-height: 1.7;
            letter-spacing: 0.06em;
        }
        .sec06-lead-line {
            display: block;
        }
        .sec06-lead-line--sub {
            font-size: 0.82em;
        }
        .sec06-accent {
            color: #8f7a66;
        }
        .sec06-lead .sec06-accent,
        .sec06-body .sec06-accent {
            color: #a67c52;
        }
        .sec06-body {
            margin: 0;
            font-size: 18px;
            line-height: 2;
            letter-spacing: 0.03em;
        }
        .sec06-body + .sec06-body {
            margin-top: 1.4em;
        }
        .sec02-br-sp,
        .sec06-comma,
        .sec06-br-sp,
        .sec-cta-br-sp,
        .sec11-br-sp {
            display: none;
        }
        .sec-cta {
            width: 100%;
            background-color: #e8e2da;
            padding: 60px 20px;
            box-sizing: border-box;
            content-visibility: auto;
            contain-intrinsic-size: auto 300px;
        }
        .sec-cta.lazy-bg-loaded {
            background: url(img/cta_bg.png) center center / cover no-repeat;
        }
        .sec-cta-inner {
            max-width: 960px;
            width: 100%;
            margin: 0 auto;
            display: flex;
            justify-content: center;
        }
        .sec-cta-box {
            width: min(100%, 920px);
            background: rgba(255, 255, 255, 0.86);
            border: 3px double rgba(70, 70, 70, 0.55);
            padding: 26px 34px 20px;
            box-sizing: border-box;
            text-align: center;
        }
        .sec-cta-badges {
            margin-bottom: 14px;
            line-height: 1;
        }
        .sec-cta-badge {
            display: inline-block;
            margin: 0 0.12em;
            padding: 0.14em 0.35em;
            background: #d7d7d7;
            color: #3a3a3a;
            font-family: "Noto Serif JP", "Yu Mincho", "Hiragino Mincho ProN", serif;
            font-size: 40px;
            font-weight: 500;
            letter-spacing: 0.04em;
        }
        .sec-cta-title {
            display: block;
            margin: 0 0 18px;
            text-align: center;
            font-family: "Noto Serif JP", "Yu Mincho", "Hiragino Mincho ProN", serif;
            font-size: 52px;
            font-weight: 500;
            color: #2e2e2e;
            line-height: 1.45;
            letter-spacing: 0.05em;
        }
        .sec-cta .cv-btn-group {
            width: min(100%, 700px);
            margin-bottom: 10px;
        }
        .sec-cta-btn {
            position: relative;
            display: block;
            width: 100%;
            margin: 0;
            text-align: center;
            text-decoration: none;
            box-sizing: border-box;
            line-height: 0;
            overflow: hidden;
            border-radius: 6px;
            opacity: 1;
            transition: opacity 0.35s ease, transform 0.35s ease;
        }
        .sec-cta-btn:hover {
            opacity: 0.9;
            transform: translateY(-5px);
        }
        .sec-cta-btn img {
            width: 100%;
            height: auto;
            display: block;
        }
        .sec-cta-note {
            display: block;
            margin: 0;
            text-align: center;
            font-size: 18px;
            color: #444;
            letter-spacing: 0.02em;
        }
        .sec07 {
            position: relative;
            width: 100%;
            padding: 74px 20px 88px;
            box-sizing: border-box;
            background-color: #f8f8f8;
            content-visibility: auto;
            contain-intrinsic-size: auto 500px;
        }
        .sec07::before {
            content: "";
            position: absolute;
            inset: 0;
            opacity: 0.8;
            pointer-events: none;
        }
        .sec07.lazy-bg-loaded::before {
            background: url(img/sec07_bg.png) center center / cover no-repeat;
        }
        .sec07-inner {
            position: relative;
            z-index: 1;
            max-width: 960px;
            width: 100%;
            margin: 0 auto;
        }
        .sec07-heading {
            position: relative;
            z-index: 2;
            margin: 0 0 32px;
            text-align: center;
            font-family: "Noto Serif JP", "Yu Mincho", "Hiragino Mincho ProN", serif;
            font-size: 39px;
            font-weight: 500;
            color: #262626;
            line-height: 1.55;
            letter-spacing: 0.06em;
            text-shadow: 0 2px 6px rgba(255, 255, 255, 0.9),
                         0 0 14px rgba(255, 255, 255, 0.55);
        }
        .sec07-accent {
            color: #a67c52;
            font-size: 1.5em;
            letter-spacing: 0.06em;
        }
        .sec07-accent-mark {
            color: #262626;
            font-size: 1.12em;
            line-height: 1;
            vertical-align: baseline;
        }
        .sec07-panel {
            width: 100%;
            max-width: 860px;
            margin: 0 auto 32px;
            background: rgba(255, 255, 255, 0.88);
            padding: 34px 72px 30px;
            box-sizing: border-box;
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 28px;
        }
        .sec07-body {
            display: flex;
            align-items: flex-start;
            justify-content: space-between;
            gap: 30px;
        }
        .sec07-left {
            flex: 0 0 48%;
        }
        .sec07-copy {
            margin: 0;
            display: block;
            text-align: left;
            font-size: 18px;
            line-height: 1.85;
            color: #1f1f1f;
            letter-spacing: 0.03em;
        }
        .sec07-copy + .sec07-copy {
            margin-top: 0.45em;
        }
        .sec07-list {
            margin: 0.7em 0 0.9em;
            padding-left: 1.1em;
            text-align: left;
        }
        .sec07-list li {
            font-size: 18px;
            line-height: 1.65;
            margin: 0.2em 0;
        }
        .sec07-right {
            flex: 0 0 48%;
            line-height: 0;
        }
        .sec07-right img {
            width: 70%;
            height: auto;
            display: block;
            margin: 0 auto;
        }
        .sec07-bottom {
            position: relative;
            z-index: 2;
            margin: 0;
            display: block;
            text-align: center;
            font-size: 18px;
            line-height: 1.8;
            color: #262626;
            letter-spacing: 0.03em;
            text-shadow: 0 2px 6px rgba(255, 255, 255, 0.9),
                         0 0 14px rgba(255, 255, 255, 0.55);
        }
        .sec07-bottom strong {
            color: #8f6f4d;
            font-size: 1.5em;
            font-weight: 600;
            background: linear-gradient(transparent 68%, rgba(191, 173, 143, 0.45) 68%);
            text-shadow: 0 2px 6px rgba(255, 255, 255, 0.9),
                         0 0 14px rgba(255, 255, 255, 0.55);
        }
        .sec07-br-sp {
            display: none;
        }
        .sec08 {
            width: 100%;
            background: #f6f6f6;
            padding: 74px 20px 86px;
            box-sizing: border-box;
        }
        .sec08-inner {
            max-width: 960px;
            width: 100%;
            margin: 0 auto;
        }
        .sec08-heading {
            margin: 0 0 42px;
            text-align: center;
            font-family: "Noto Serif JP", "Yu Mincho", "Hiragino Mincho ProN", serif;
            font-size: 39px;
            font-weight: 500;
            color: #252525;
            line-height: 1.55;
            letter-spacing: 0.06em;
        }
        .sec08-heading .sec08-accent {
            color: #a67c52;
        }
        .sec08-list {
            margin-bottom: 46px;
        }
        .sec08-row {
            display: grid;
            grid-template-columns: 1fr 1fr;
            gap: 20px 18px;
            align-items: start;
            margin-bottom: 28px;
        }
        .sec08-row--reverse .sec08-text {
            grid-column: 2;
        }
        .sec08-row--reverse .sec08-img {
            grid-column: 1;
            grid-row: 1;
        }
        .sec08-text {
            padding-right: 14px;
        }
        .sec08-point {
            display: block;
            margin: 0 0 0.2em;
            font-family: "Noto Serif JP", "Yu Mincho", "Hiragino Mincho ProN", serif;
            font-size: 22px;
            color: #a67c52;
            line-height: 1.3;
            text-align: left;
        }
        .sec08-title {
            display: block;
            margin: 0;
            padding-bottom: 0.24em;
            border-bottom: 1px solid #bfbfbf;
            font-size: 24px;
            font-weight: 500;
            color: #222;
            line-height: 1.55;
            text-align: left;
        }
        .sec08-desc {
            margin: 0.75em 0 0;
            display: block;
            font-size: 18px;
            color: #222;
            line-height: 1.7;
            text-align: left;
        }
        .sec08-img img {
            width: 100%;
            height: auto;
            display: block;
        }
        .sec08-summary {
            position: relative;
            width: 100%;
            max-width: 860px;
            margin: 0 auto;
            border: 1px solid #d2d2d2;
            background-color: rgba(255, 255, 255, 0.88);
            padding: 20px 18px 12px 40px;
            min-height: 280px;
            overflow: hidden;
            box-sizing: border-box;
        }
        .sec08-summary::after {
            content: "";
            position: absolute;
            right: 0;
            bottom: 0;
            width: 50%;
            min-width: 280px;
            height: 100%;
            min-height: 260px;
            pointer-events: none;
            z-index: 0;
        }
        .sec08-summary.lazy-bg-loaded::after {
            background: url(img/sec08_img04.png) no-repeat right bottom;
            background-size: auto 100%;
        }
        .sec08-summary::before {
            content: "";
            position: absolute;
            inset: 0;
            width: 52%;
            background: linear-gradient(
                90deg,
                rgba(255, 255, 255, 0.94) 0%,
                rgba(255, 255, 255, 0.78) 48%,
                rgba(255, 255, 255, 0.4) 72%,
                transparent 100%
            );
            pointer-events: none;
            z-index: 1;
        }
        .sec08-summary-head,
        .sec08-summary-body {
            position: relative;
            z-index: 2;
        }
        .sec08-summary-head {
            width: 100%;
            margin: 0 0 18px;
            padding: 0 8px 0 0;
            box-sizing: border-box;
            text-align: left;
        }
        .sec08-summary-visual {
            display: none;
        }
        .sec08-summary-title {
            display: block;
            margin: 0;
            text-align: left;
            font-size: 18px;
            color: #222;
            line-height: 1.5;
        }
        .sec08-summary-body {
            max-width: 64%;
            padding: 4px 0 8px 0;
        }
        .sec08-summary-title strong {
            color: #9b7c57;
            font-size: 2em;
            font-family: "Noto Serif JP", "Yu Mincho", "Hiragino Mincho ProN", serif;
            font-weight: 600;
            letter-spacing: 0.04em;
        }
        .sec08-benefits {
            margin: 0;
            padding: 0;
            list-style: none;
        }
        .sec08-benefits li {
            display: flex;
            align-items: center;
            gap: 8px;
            margin: 0;
            padding: 8px 0;
            border-bottom: 1px solid #ececec;
            font-size: 18px;
            color: #222;
            line-height: 1.5;
            text-align: left;
        }
        .sec08-icon {
            display: inline-block;
            flex-shrink: 0;
            width: 1.35em;
            height: 1.35em;
            background: url(img/sec08_icon_leaf.svg) no-repeat center / contain;
        }
        .sec09 {
            width: 100%;
            background: #fff;
            padding: 74px 20px 86px;
            box-sizing: border-box;
        }
        .sec09-inner {
            max-width: 960px;
            width: 100%;
            margin: 0 auto;
        }
        .sec09-heading {
            width: 100%;
            max-width: 100%;
            margin: 0 0 20px;
            padding: 0;
            box-sizing: border-box;
            text-align: center;
            font-family: "Noto Serif JP", "Yu Mincho", "Hiragino Mincho ProN", serif;
            font-size: 39px;
            font-weight: 500;
            line-height: 1.5;
            letter-spacing: 0.04em;
            color: #252525;
        }
        .sec09-heading-line {
            display: block;
        }
        .sec09-heading-em {
            font-size: 1.3em;
            line-height: 1.45;
        }
        .sec09-heading-em-accent {
            color: #86a030;
        }
        .sec09-divider {
            border: none;
            height: 1px;
            max-width: 900px;
            margin: 0 auto 34px;
            background: #3a3a3a;
        }
        .sec09-body {
            display: flex;
            align-items: flex-start;
            justify-content: space-between;
            gap: 12px;
        }
        .sec09-copy {
            flex: 0 1 45%;
            max-width: 45%;
        }
        .sec09-steps {
            margin: 0 0 22px;
            padding: 0;
            list-style: none;
        }
        .sec09-step-item {
            margin-bottom: 16px;
        }
        .sec09-step {
            display: block;
            width: 100%;
            border-radius: 4px;
            background: #d1e29f;
            border: 1px solid #b8cc7a;
            font-size: 24px;
            line-height: 1.5;
            letter-spacing: 0.08em;
            color: #222;
            text-align: center;
            padding: 12px 14px;
            box-sizing: border-box;
        }
        .sec09-step-num {
            display: block;
            font-size: 0.55em;
            font-weight: 600;
            letter-spacing: 0.1em;
            margin-bottom: 0.25em;
            color: #333;
        }
        .sec09-arrow {
            display: block;
            margin-top: 2px;
            text-align: center;
            font-size: 20px;
            color: #222;
            line-height: 1;
        }
        .sec09-note {
            margin: 0;
            font-size: 33px;
            line-height: 1.65;
            color: #222;
            text-align: left;
        }
        .sec09-note p {
            margin: 0;
            display: block;
        }
        .sec09-visual {
            flex: 0 1 43%;
            max-width: 420px;
        }
        .sec09-visual img {
            width: 100%;
            height: auto;
            display: block;
        }
        .sec10 {
            width: 100%;
            background-color: #f8f8f8;
            padding: 74px 20px 88px;
            box-sizing: border-box;
            content-visibility: auto;
            contain-intrinsic-size: auto 500px;
        }
        .sec10.lazy-bg-loaded {
            background: #f8f8f8 url(img/sec10_bg.png) center center / cover no-repeat;
        }
        .sec10-inner {
            max-width: 960px;
            margin: 0 auto;
            box-sizing: border-box;
            min-height: 520px;
        }
        .sec10-heading {
            margin: 0 0 42px;
            text-align: center;
            font-family: "Noto Serif JP", "Yu Mincho", "Hiragino Mincho ProN", serif;
            font-size: 39px;
            font-weight: 500;
            line-height: 1.55;
            letter-spacing: 0.06em;
            color: #262626;
            text-shadow: 0 2px 6px rgba(255, 255, 255, 0.95),
                         0 0 14px rgba(255, 255, 255, 0.65),
                         0 0 24px rgba(255, 255, 255, 0.45);
        }
        .sec10-heading .sec10-em {
            color: #a67c52;
            background: linear-gradient(transparent 68%, rgba(191, 173, 143, 0.45) 68%);
            padding: 0 0.06em;
        }
        .sec10-body {
            display: flex;
            align-items: flex-start;
            justify-content: flex-start;
        }
        .sec10-copy {
            flex: 0 0 50%;
            max-width: 480px;
            text-align: left;
            color: #1f1f1f;
        }
        .sec10-text {
            margin: 0 0 1.1em;
            display: block;
            font-size: 18px;
            line-height: 1.85;
            color: #1f1f1f;
            letter-spacing: 0.03em;
            text-shadow: 0 2px 6px rgba(255, 255, 255, 0.95),
                         0 0 14px rgba(255, 255, 255, 0.65),
                         0 0 24px rgba(255, 255, 255, 0.45);
        }
        .sec10-text:last-child {
            margin-bottom: 0;
        }
        .sec10-expert-card {
            margin-top: 28px;
            display: flex;
            justify-content: flex-end;
            box-sizing: border-box;
        }
        .sec10-expert-name-box {
            display: inline-block;
            min-width: 9.5em;
            padding: 10px 18px 12px;
            border: 1px solid #222;
            background: #fff;
            box-sizing: border-box;
        }
        .sec10-expert-role {
            margin: 0 0 6px;
            display: block;
            font-size: 16px;
            letter-spacing: 0.08em;
            color: #1f1f1f;
            line-height: 1.35;
        }
        .sec10-expert-name {
            margin: 0;
            display: block;
            font-size: 18px;
            line-height: 1.35;
            color: #1f1f1f;
            text-align: center;
        }
        .sec11 {
            width: 100%;
            background-color: #f8f8f8;
            padding: 64px 20px 80px;
            box-sizing: border-box;
            content-visibility: auto;
            contain-intrinsic-size: auto 500px;
        }
        .sec11.lazy-bg-loaded {
            background: #f8f8f8 url(img/sec11_bg.png) no-repeat center center;
            background-size: cover;
        }
        .sec11-inner {
            max-width: 960px;
            margin: 0 auto;
            box-sizing: border-box;
        }
        .sec11-lead-box {
            max-width: 860px;
            margin: 0 auto 48px;
            padding: 22px 28px;
            background: rgba(255, 255, 255, 0.96);
            box-shadow: 0 4px 20px rgba(80, 60, 40, 0.12);
            box-sizing: border-box;
        }
        .sec11-lead {
            margin: 0;
            display: block;
            text-align: center;
            font-family: "Noto Serif JP", "Yu Mincho", "Hiragino Mincho ProN", serif;
            font-size: 39px;
            font-weight: 500;
            line-height: 1.55;
            letter-spacing: 0.06em;
            color: #262626;
        }
        .sec11-em {
            color: #a67c52;
            background: linear-gradient(transparent 68%, rgba(191, 173, 143, 0.45) 68%);
            padding: 0 0.06em;
        }
        .sec11-body {
            display: flex;
            align-items: center;
            justify-content: flex-end;
            gap: 24px;
            min-height: 380px;
        }
        .sec11-spacer {
            flex: 1 1 46%;
            min-height: 1px;
        }
        .sec11-copy {
            flex: 0 1 48%;
            max-width: 460px;
            text-align: left;
            color: #262626;
        }
        .sec11-quote,
        .sec11-text {
            text-shadow: 0 2px 6px rgba(255, 255, 255, 0.95),
                         0 0 14px rgba(255, 255, 255, 0.65),
                         0 0 24px rgba(255, 255, 255, 0.45);
        }
        .sec11-quote {
            margin: 0 0 1.2em;
            display: block;
            font-family: "Noto Serif JP", "Yu Mincho", "Hiragino Mincho ProN", serif;
            font-size: 28px;
            font-weight: 500;
            line-height: 1.65;
            letter-spacing: 0.04em;
            color: #262626;
        }
        .sec11-text {
            margin: 0 0 1.1em;
            display: block;
            font-size: 18px;
            line-height: 1.85;
            letter-spacing: 0.03em;
            color: #262626;
        }
        .sec11-text:last-child {
            margin-bottom: 0;
        }
        .floating-banner {
            position: fixed;
            bottom: 0;
            left: 0;
            right: 0;
            z-index: 100;
            padding: 10px 20px 14px;
            background: rgba(255, 255, 255, 0.8);
            box-shadow: 0 -2px 16px rgba(0, 0, 0, 0.1);
            box-sizing: border-box;
            transform: translateY(100%);
            transition: transform 0.3s ease, visibility 0.3s ease;
            pointer-events: none;
            visibility: hidden;
        }
        .floating-banner.is-visible {
            transform: translateY(0);
            pointer-events: auto;
            visibility: visible;
        }
        .floating-banner-link {
            display: block;
            width: min(100%, 700px);
            margin: 0 auto;
            line-height: 0;
            text-decoration: none;
        }
        .floating-banner-link picture {
            display: block;
            width: 100%;
        }
        .floating-banner-link img {
            width: 100%;
            height: auto;
            display: block;
        }
        .lp-footer {
            width: 100%;
            background: #3a3a3a;
            padding: 44px 20px 28px;
            box-sizing: border-box;
            color: #f5f5f5;
        }
        .lp-footer-inner {
            max-width: 960px;
            margin: 0 auto;
            text-align: center;
        }
        .lp-footer-logo {
            display: block;
            margin: 0 auto 22px;
            line-height: 0;
        }
        .lp-footer-logo img {
            width: min(100%, 320px);
            height: auto;
            display: block;
            margin: 0 auto;
        }
        .lp-footer-nav {
            margin: 0 0 20px;
            padding: 0;
            list-style: none;
            display: flex;
            flex-wrap: wrap;
            justify-content: center;
            gap: 8px 24px;
        }
        .lp-footer-nav a {
            font-size: 18px;
            color: #f0f0f0;
            text-decoration: none;
            letter-spacing: 0.03em;
        }
        .lp-footer-nav a:hover {
            text-decoration: underline;
        }
        .lp-footer-copy {
            margin: 0;
            display: block;
            text-align: center;
            font-size: 18px;
            color: #d8d8d8;
            letter-spacing: 0.02em;
        }
        section {
            padding: 60px 20px;
            text-align: center;
        }
        h2 {
            font-size: 24px;
            color: #8c6e5e;
            margin-bottom: 30px;
            font-weight: bold;
        }
        p {
            font-size: 18px;
            margin-bottom: 20px;
            text-align: left;
            display: inline-block;
        }
        .text-center {
            text-align: center;
        }
        .text-center p {
            text-align: center;
        }
        .image-placeholder {
            width: 100%;
            height: 250px;
            background-color: #e9e4e0;
            display: flex;
            align-items: center;
            justify-content: center;
            color: #999;
            margin: 30px 0;
            border-radius: 0;
        }
        .cta-box {
            background-color: #f7f2ed;
            padding: 40px 20px;
            margin: 40px 0;
            border-radius: 0;
            border: 2px solid #e1d3c7;
        }
        .cta-btn {
            display: inline-block;
            background-color: #4a4a4a;
            color: #fff;
            font-size: 20px;
            font-weight: bold;
            text-decoration: none;
            padding: 20px 40px;
            border-radius: 40px;
            box-shadow: 0 4px 10px rgba(0,0,0,0.2);
            transition: all 0.3s;
            margin: 20px 0 10px;
            width: 90%;
            max-width: 500px;
            box-sizing: border-box;
        }
        .cta-btn:hover {
            transform: translateY(-2px);
            box-shadow: 0 6px 15px rgba(0,0,0,0.25);
            background-color: #333;
        }
        .cta-note {
            font-size: 18px;
            color: #666;
        }
        .features {
            text-align: left;
            padding: 0 20px;
        }
        .feature-item {
            margin-bottom: 40px;
        }
        .feature-title {
            font-size: 18px;
            font-weight: bold;
            color: #8c6e5e;
            border-left: 5px solid #8c6e5e;
            padding-left: 15px;
            margin-bottom: 15px;
        }
        .check-list {
            text-align: left;
            display: inline-block;
            background: #fff;
            padding: 20px 30px;
            border-radius: 0;
            border: 1px solid #ddd;
        }
        .check-list li {
            margin-bottom: 10px;
            list-style-type: none;
            position: relative;
        }
        .check-list li::before {
            content: "✓";
            color: #8c6e5e;
            position: absolute;
            left: -20px;
        }
        @media (max-width: 768px) {
            .fv-header {
                height: 56px;
                background: rgba(255, 255, 255, 0.92);
                padding: 0 12px;
            }
            .fv-header-logo {
                padding: 2px 0;
            }
            .fv-header-logo img {
                max-width: min(92%, 360px);
                transform: scale(0.95);
            }
            .fv-btn-group {
                bottom: 2%;
                width: 84.8%;
                max-width: 636px;
            }
            .fv-btn picture {
                display: block;
                width: 100%;
            }
            .fv-btn img {
                width: 100%;
                max-width: 100%;
            }
            .cv-btn-note {
                font-size: 11px;
                margin-top: 2px;
            }
            .sec-cta .cv-btn-note {
                text-align: center;
            }
            section {
                padding: 40px 15px;
            }
            h2 {
                font-size: 20px;
            }
            p {
                font-size: 18px;
            }
            .cta-btn {
                font-size: 18px;
                padding: 15px 20px;
            }
            .sec01.lazy-bg-loaded {
                background-image: url(img/sec01_bg_sp.png);
                background-size: 100% auto;
                background-position: center top;
                background-repeat: no-repeat;
                min-height: 0;
                aspect-ratio: 750 / 1420;
            }
            .sec01::before {
                display: none;
            }
            .sec01-inner {
                min-height: 100%;
                padding: 0;
            }
            .sec01-copy {
                top: 66%;
                left: 50%;
                transform: translate(-50%, -50%);
                width: 93.7%;
                max-width: 703px;
                padding-right: 0;
            }
            .sec01-copy img {
                width: 100%;
                max-width: 100%;
            }
            .sec02 {
                padding: 50px 16px 60px;
            }
            .sec02-heading {
                font-size: 28.6px;
            }
            .sec02-cards {
                grid-template-columns: 1fr;
                gap: 36px;
                max-width: 360px;
            }
            .sec02-footer p:not(.sec02-footer-highlight) {
                font-size: 18px;
            }
            .sec02-footer p.sec02-footer-highlight {
                font-size: 28.6px;
                line-height: 1.65;
            }
            .sec02-footer-highlight-line {
                padding: 0 0.15em;
                background: linear-gradient(transparent 62%, #fff 62%);
                text-shadow: 0 0 6px rgba(255, 255, 255, 0.95),
                             0 0 12px rgba(255, 255, 255, 0.85);
            }
            .sec02-br-sp {
                display: block;
            }
            .sec03-br-pc,
            .sec04-br-pc {
                display: none;
            }
            .sec03 {
                padding: 0;
                min-height: 0;
                aspect-ratio: 750 / 1730;
            }
            .sec03.lazy-bg-loaded {
                background: url(img/sec03_bg_sp.png) center top / 100% auto no-repeat;
            }
            .sec03-inner {
                padding: 48px 16px 42%;
                min-height: 100%;
                box-sizing: border-box;
            }
            .sec03-tit {
                margin-bottom: 20px;
            }
            .sec03-tit img {
                width: 100%;
                max-width: 100%;
            }
            .sec03-body {
                flex-direction: column;
                align-items: stretch;
                gap: 0;
            }
            .sec03-text {
                width: 100%;
            }
            .sec03-text > p {
                font-size: 16px;
                line-height: 2;
                margin-bottom: 1.8em;
            }
            .sec03-text > p:last-of-type {
                margin-bottom: 2.4em;
            }
            .sec03-callout {
                margin-top: 8px;
                padding: 22px 16px 26px;
                width: 100%;
                box-sizing: border-box;
            }
            .sec03-callout-em {
                font-size: 28.6px;
            }
            .sec03-visual {
                display: none;
            }
            .sec04 {
                padding: 50px 16px 60px;
            }
            .sec04-heading {
                font-size: 28.6px;
            }
            .sec04-en {
                font-size: 28px;
            }
            .sec04-intro {
                flex-direction: column;
            }
            .sec04-intro-visual {
                flex: none;
                width: min(540px, 100%);
            }
            .sec04-cards {
                grid-template-columns: 1fr;
                gap: 28px;
            }
            .sec04-card-heading {
                font-size: 20px;
            }
            .sec04-footer p:not(.sec04-footer-highlight) {
                font-size: 18px;
            }
            .sec04-footer p.sec04-footer-highlight {
                font-size: 28.6px;
            }
            .sec06 {
                padding: 32px 16px 56px;
                min-height: 0;
                aspect-ratio: 750 / 1067;
                box-sizing: border-box;
                display: flex;
                align-items: flex-start;
            }
            .sec06.lazy-bg-loaded {
                background: url(img/sec05_bg1_sp.png) center top / 100% auto no-repeat;
            }
            .sec06-inner {
                width: 100%;
            }
            .sec06-copy {
                width: 72%;
                max-width: none;
                padding-top: 0;
            }
            .sec06-copy p {
                white-space: normal;
            }
            .sec06-lead {
                font-size: clamp(24px, 7vw, 34px);
                margin: 8vw 0 67px;
                line-height: 1.55;
                text-shadow: 0 0 10px #fff,
                             0 0 20px #fff,
                             0 0 30px rgba(255, 255, 255, 1),
                             0 2px 10px rgba(255, 255, 255, 1),
                             0 0 10px #fff,
                             0 0 20px #fff,
                             0 0 30px rgba(255, 255, 255, 1),
                             0 2px 10px rgba(255, 255, 255, 1);
            }
            .sec06-lead-line {
                white-space: nowrap;
            }
            .sec06-lead-line--sub {
                font-size: 0.82em;
            }
            .sec06-comma {
                display: none;
            }
            .sec06-br-sp {
                display: block;
            }
            .sec06-body {
                font-size: 15px;
                line-height: 2;
                text-shadow: 0 0 10px rgba(255, 255, 255, 0.95),
                             0 1px 4px rgba(255, 255, 255, 0.85);
            }
            .sec06-body + .sec06-body {
                margin-top: 2em;
            }
            .sec-cta {
                padding: 44px 16px;
            }
            .sec-cta-box {
                padding: 20px 14px 16px;
            }
            .sec-cta-badge {
                font-size: 28.6px;
            }
            .sec-cta-title {
                font-size: 28.8px;
                white-space: normal;
            }
            .sec-cta-title-line1 {
                white-space: nowrap;
            }
            .sec-cta-br-sp {
                display: block;
            }
            .sec-cta-btn {
                width: 100%;
            }
            .sec-cta .cv-btn-group {
                width: 100%;
            }
            .floating-banner {
                padding: 8px 16px 10px;
            }
            .floating-banner-link {
                width: 84.8%;
                max-width: 636px;
            }
            .sec07 {
                padding: 48px 16px 56px;
            }
            .sec07.lazy-bg-loaded::before {
                background: url(img/sec07_bg_sp.png) center top / cover no-repeat;
                opacity: 0.9;
            }
            .sec07-heading {
                font-size: clamp(20px, 5.6vw, 28.6px);
                margin-bottom: 24px;
                line-height: 1.6;
            }
            .sec07-accent {
                font-size: 1.5em;
            }
            .sec07-br-sp {
                display: block;
            }
            .sec07-panel {
                flex-direction: column;
                align-items: stretch;
                max-width: none;
                padding: 22px 18px 24px;
                margin: 0 auto 28px;
            }
            .sec07-left,
            .sec07-right {
                flex: none;
                width: 100%;
                max-width: none;
            }
            .sec07-right {
                margin-top: 20px;
            }
            .sec07-right img {
                width: min(100%, 300px);
            }
            .sec07-copy {
                font-size: 16px;
                line-height: 1.9;
            }
            .sec07-list {
                margin: 0.8em 0 1em;
            }
            .sec07-list li {
                font-size: 16px;
            }
            .sec07-bottom {
                font-size: 16px;
                line-height: 1.85;
            }
            .sec07-bottom-lead {
                display: inline;
                background: linear-gradient(transparent 68%, rgba(191, 173, 143, 0.45) 68%);
                letter-spacing: -0.06em;
                white-space: nowrap;
                font-size: clamp(13px, 3.7vw, 16px);
            }
            .sec07-bottom strong {
                display: block;
                font-size: clamp(22px, 6.4vw, 28px);
                margin: 0.15em 0;
                background: none;
            }
            .sec08 {
                padding: 54px 16px 62px;
            }
            .sec08-heading {
                font-size: 28.6px;
                margin-bottom: 30px;
            }
            .sec08-row,
            .sec08-row--reverse .sec08-text,
            .sec08-row--reverse .sec08-img {
                display: block;
                grid-column: auto;
                grid-row: auto;
            }
            .sec08-text {
                padding-right: 0;
                margin-bottom: 14px;
            }
            .sec08-point {
                font-size: 20px;
            }
            .sec08-summary {
                display: flex;
                flex-direction: column;
                max-width: 100%;
                min-height: 0;
                padding: 18px 14px 0;
            }
            .sec08-summary::before,
            .sec08-summary::after {
                display: none;
            }
            .sec08-summary-head {
                order: 1;
                margin-bottom: 14px;
                padding: 0 4px 0 0;
            }
            .sec08-summary-body {
                order: 2;
                max-width: 100%;
                padding: 4px 0 4px 0;
            }
            .sec08-summary-visual {
                display: block;
                order: 3;
                margin: 0 -14px;
                width: calc(100% + 28px);
                line-height: 0;
            }
            .sec08-summary-visual img {
                width: 100%;
                height: auto;
                display: block;
            }
            .sec08-summary-title {
                font-size: clamp(19px, 5.4vw, 22px);
                line-height: 1.55;
                text-align: center;
            }
            .sec08-summary-title-lead {
                font-size: 0.9em;
            }
            .sec08-summary-title strong {
                font-size: 1.38em;
            }
            .sec08-benefits li {
                min-width: 0;
                font-size: 16px;
            }
            .sec08-title {
                font-size: 22px;
            }
            .sec09 {
                padding: 56px 16px 64px;
            }
            .sec09-heading {
                font-size: clamp(17px, 7.6vw, 23px);
                line-height: 1.5;
                margin-bottom: 20px;
                padding: 0 16px;
            }
            .sec09-divider {
                margin-bottom: 24px;
            }
            .sec09-heading-line {
                display: block;
                white-space: nowrap;
            }
            .sec09-heading-em {
                font-size: 1.4em;
            }
            .sec09-body {
                flex-direction: column;
                align-items: center;
                gap: 16px;
            }
            .sec09-copy {
                flex: none;
                width: 85%;
                max-width: 85%;
            }
            .sec09-visual {
                flex: none;
                width: 100%;
                max-width: 520px;
            }
            .sec09-step {
                font-size: 19px;
                line-height: 1.55;
                letter-spacing: 0.05em;
                padding: 11px 12px;
            }
            .sec09-step-item {
                margin-bottom: 18px;
            }
            .sec09-note {
                font-size: 24px;
            }
            .sec10 {
                padding: 44px 16px 0;
                box-sizing: border-box;
            }
            .sec10.lazy-bg-loaded {
                background: #fff url(img/sec10_bg_sp.png) no-repeat center bottom;
                background-size: 100% auto;
            }
            .sec10-inner {
                min-height: 0;
                padding-bottom: 17vw;
            }
            .sec10-heading {
                font-size: clamp(20px, 5.8vw, 28.6px);
                margin-bottom: 24px;
                line-height: 1.6;
            }
            .sec10-body {
                display: block;
            }
            .sec10-copy {
                flex: none;
                width: 100%;
                max-width: none;
            }
            .sec10-text {
                font-size: 16px;
                line-height: 1.85;
                margin-bottom: 1em;
            }
            .sec10-expert-card {
                margin-top: 250px;
                justify-content: flex-start;
            }
            .sec10-expert-name-box {
                min-width: 8.5em;
                padding: 8px 14px 10px;
            }
            .sec10-expert-role {
                font-size: 14px;
            }
            .sec10-expert-name {
                font-size: 16px;
            }
            .sec11-br-sp {
                display: block;
            }
            .sec11-br-pc {
                display: none;
            }
            .sec11 {
                padding: 24px 16px 48px;
                background-color: #fff;
                box-sizing: border-box;
            }
            .sec11.lazy-bg-loaded {
                background-image: url(img/sec11_bg_sp.png);
                background-repeat: no-repeat;
                background-position: center top;
                background-size: 100% auto;
            }
            .sec11-lead-box {
                position: relative;
                z-index: 2;
                margin: 0 0 12px;
                padding: 18px 16px;
                background: rgba(255, 255, 255, 0.96);
                box-shadow: 0 2px 12px rgba(80, 60, 40, 0.08);
            }
            .sec11-lead {
                font-size: clamp(20px, 5.8vw, 28.6px);
                line-height: 1.6;
            }
            .sec11-body {
                display: flex;
                flex-direction: column;
                align-items: stretch;
                min-height: 0;
                background: none;
                padding: 0;
                box-sizing: border-box;
            }
            .sec11-spacer {
                display: none;
            }
            .sec11-copy {
                flex: none;
                width: 100%;
                max-width: none;
            }
            .sec11-quote {
                margin-top: 84vw;
                margin-bottom: 1.2em;
                font-size: clamp(18px, 5vw, 22px);
                line-height: 1.65;
                text-align: left;
                text-shadow: 0 2px 6px rgba(255, 255, 255, 0.95),
                             0 0 14px rgba(255, 255, 255, 0.65);
            }
            .sec11-text {
                font-size: 16px;
                line-height: 1.85;
                text-align: left;
                text-shadow: none;
            }
            .lp-footer {
                padding: 36px 16px 24px;
            }
            .lp-footer-nav {
                flex-direction: column;
                gap: 4px;
            }
            .lp-footer-nav li {
                line-height: 1.3;
            }
            .lp-footer-nav a {
                font-size: 14px;
                line-height: 1.3;
            }
            .lp-footer-copy {
                font-size: 13px;
            }
        }