@charset "UTF-8";
	* { margin: 0; padding: 0; box-sizing: border-box; }

/*.leg-body{ background: #1a6875;    padding: 40px 24px;}*/

    /* ==============================
       ヘッダー
    ============================== */
    .header {  display: flex; align-items: center; justify-content: space-between; padding: 10px 16px; background: #fff; border-bottom: 1px solid #f0f0f0; position: sticky; top: 0; z-index: 100;    }
    .logo-area { display: flex; flex-direction: column; line-height: 1.1; }
    .logo-area .logo-en { font-size: 9px; color: #aaa; letter-spacing: 0.15em; }
    .logo-area .logo-mark { font-size: 15px; font-weight: bold; color: #333; letter-spacing: 0.1em; }
    .hamburger { font-size: 22px; color: #555; }
    .header-cta {  background: #3bb8c8; color: #fff; font-size: 11px; padding: 10px 14px; border: none; font-weight: bold; letter-spacing: 0.05em; cursor: pointer; border-radius: 2px;    }

    /* ==============================
       FV
    ============================== */
    .fv {  width: 100%; height: 138vw; position: relative; overflow: hidden; background: #fff;    }
		.fv .photo { position: absolute; inset: 0; background: url('../images/trialleg/head.jpg') center top / cover no-repeat; }
		.fv .photo-01 { position: absolute; inset: 0; background: url('../images/trialleg/head-01.jpg') center top / contain no-repeat; }
		.fv .photo-02 { position: absolute; inset: 0; background: url('../images/trialleg/head-02.jpg') center top / contain no-repeat #f2eee0; }
		.fv img {max-width: 100%; height: auto;}
    .fv .overlay {  position: absolute; inset: 0; background:linear-gradient(to bottom,  rgba(255,255,255,0.0) 0%,  rgba(255,255,255,0.0) 50%,  rgba(255,255,255,0.75) 75%,  rgba(255,255,255,1.0) 100%);    }
    .fv .photo-note {  position: absolute; top: 8px; right: 8px; background: rgba(255,200,0,0.85); color: #333; font-size: 9px; padding: 3px 7px; border-radius: 3px; z-index: 20; font-weight: bold;    }
    .fv .logo {  position: absolute; top: 18px; left: 18px; z-index: 10; color: #1a6875; font-size: 11px; letter-spacing: 0.2em; font-weight: 700;    }
    .fv .main-copy {  position: absolute; top: 46px; left: 18px; right: 18px; z-index: 10; color: #1a1a1a; font-size: 22px; font-weight: 900; line-height: 1.55; letter-spacing: 0.02em;    }
    .fv .main-copy .accent {  display: block; color: #3bb8c8; font-size: 20px;    }
    .fv .sub-service {  position: absolute; top: 210px; left: 18px; z-index: 10; color: #555; font-size: 10px; letter-spacing: 0.08em; border-left: 2px solid #3bb8c8; padding-left: 8px;    }
    .fv .bottom-area {  position: absolute; bottom: 0; left: 0; right: 0; padding: 20px 18px 22px; z-index: 10;    }
    .fv .price-block {  display: flex; align-items: baseline; gap: 4px; margin-bottom: 6px;    }
    .fv .price-label {  background: #f3f8f9; color: #1a6875; font-size: 10px; padding: 3px 8px; border-radius: 2px; border: 1px solid #b8dce4;    }
    .fv .price-num {  color: #1a1a1a; font-size: 36px; font-weight: 900; letter-spacing: -0.02em; line-height: 1;    }
    .fv .price-yen { color: #1a1a1a; font-size: 16px; font-weight: 700; }
    .fv .cta-btn {  display: block; background: linear-gradient(135deg, #3bb8c8, #2a98a8); color: #fff; text-align: center; font-size: 13px; font-weight: 900; padding: 17px 16px; border-radius: 3px; letter-spacing: 0.05em; margin-bottom: 8px; box-shadow: 0 4px 16px rgba(59,184,200,0.35);    }
    .fv .cta-sub {  text-align: center; color: #888; font-size: 11px; letter-spacing: 0.05em;    }

    /* ==============================
       BAハイライト（ブリッジ含む）
    ============================== */
    .ba-bridge {  background: #1a6875; padding: 24px 20px; text-align: center;    }
    .ba-bridge .bb-small {  font-size: 12px; color: rgba(255,255,255,0.55); letter-spacing: 0.08em; margin-bottom: 8px;    }
    .ba-bridge .bb-big {  font-size: 19px; font-weight: 900; color: #fff; line-height: 1.6;    }
    .ba-bridge .bb-big em { font-style: normal; color: #a0d4dc; }

    .ba-highlight {  background: #fff; padding: 28px 20px 32px;    }
    .ba-highlight .bah-img {  width: 100%; height: auto; border-radius: 10px; overflow: hidden; margin-bottom: 20px;    }
    .ba-highlight .bah-img img { width: 100%; height: auto; display: block; }
    .ba-highlight .bah-profile {  display: flex; align-items: center; gap: 8px; margin-bottom: 14px;    }
    .ba-highlight .bah-profile .badge {  background: #1a6875; color: #fff; font-size: 10px; padding: 3px 10px; border-radius: 2px;    }
    .ba-highlight .bah-profile .pname { font-size: 11px; color: #888; }
    .ba-highlight .bah-metrics { display: flex; gap: 10px; margin-bottom: 16px; }
    .ba-highlight .bah-metric {  flex: 1; background: #f3f8f9; border-radius: 10px; padding: 12px 6px; text-align: center;    }
    .ba-highlight .bah-metric .part { font-size: 10px; color: #999; margin-bottom: 4px; }
    .ba-highlight .bah-metric .value { font-size: 22px; font-weight: 900; color: #3bb8c8; line-height: 1; }
    .ba-highlight .bah-metric .unit { font-size: 12px; color: #3bb8c8; }
    .ba-highlight .bah-voice {  background: #faf9f8; border-radius: 8px; padding: 16px; border-left: 3px solid #b8dce4;    }
    .ba-highlight .bah-voice p { font-size: 13px; color: #444; line-height: 1.9; }
    .ba-highlight .bah-voice p strong { color: #1a1a1a; }
    .ba-highlight .more-link {  text-align: center; margin-top: 20px; font-size: 12px; color: #888; letter-spacing: 0.05em;    }
    .ba-highlight .more-link span {  display: inline-block; border-bottom: 1px solid #ccc; padding-bottom: 1px;    }
    /* フォント共通ルール */
    .sec02 .eyebrow, .sec03 .lead .eyebrow, .sec-ba .sec-eyebrow,
    .sec04 .lead .eyebrow, .sec05 .big-number .eyebrow, .sec06 .lead .eyebrow,
    .sec07 .lead .eyebrow, .sec08 .lead .eyebrow, .sec09 .lead .eyebrow,
    .sec10 .lead .eyebrow, .sec-final-cta .fc-eyebrow {  font-family: 'Cormorant Garamond', serif; font-size: 11px !important; letter-spacing: 0.25em !important; font-weight: 400;    }
    .ba-bridge .bb-big, .to-next .q-big,
    .sec-ba .sec-title { font-family: 'Playfair Display', serif; }

    .to-next {  background: #f3f8f9; padding: 24px 20px; text-align: center;    }
    .to-next .q { font-size: 13px; color: #666; margin-bottom: 8px; }
    .to-next .q-big { font-size: 17px; font-weight: 900; color: #1a1a1a; line-height: 1.7; }
    .to-next .q-big em { font-style: normal; color: #3bb8c8; }
    .to-next .q-big .sub { font-size: 14px; font-weight: 700; color: #888; display: block; margin-top: 4px; }
    .to-next .to-next-bridge { font-size: 13px; color: #888; margin-top: 16px; }

    /* ==============================
       ② 悩み共感
    ============================== */
    .sec02 { background: #fff; padding: 32px 20px 36px; }
    .sec02 .eyebrow {  font-size: 12px; color: #888; letter-spacing: 0.05em; text-align: center; margin-bottom: 14px; display: block;    }
    .sec02 .title {  font-size: 18px; font-weight: 900; color: #1a1a1a; text-align: center; line-height: 1.65; margin-bottom: 24px;    }
    .sec02 .title em { font-style: normal; color: #1a1a1a; }
    .sec02 .subtitle {  font-size: 12px; color: #999; text-align: center; margin-bottom: 28px; line-height: 1.7;    }
    .sec02 .img-area {  width: 100%; height: 150px; border-radius: 10px; overflow: hidden; margin-bottom: 28px;    }
    .sec02 .img-area img { width: 100%; height: 100%; object-fit: cover; display: block; }
    .sec02 .checklist { list-style: none; margin-bottom: 28px; }
    .sec02 .checklist li {  display: flex; align-items: center; gap: 12px; padding: 14px 0; border-bottom: 1px solid #f0f0f0; font-size: 14px; color: #222; line-height: 1.5;    }
    .sec02 .checklist li:first-child { border-top: 1px solid #f0f0f0; }
    .sec02 .check-icon {  width: 22px; height: 22px; border-radius: 50%; background: #1a6875; display: flex; align-items: center; justify-content: center; flex-shrink: 0; font-size: 11px; color: #fff;    }
    .sec02 .sign-box {  background: transparent; padding: 16px 0 8px; text-align: center; margin-bottom: 8px;    }
    .sec02 .sign-box .sign-label {  font-size: 12px; color: #999; margin-bottom: 10px;    }
    .sec02 .sign-box .sign-main {  font-size: 32px; font-weight: 900; color: #1a1a1a; line-height: 1.3;    }
    .sec02 .sign-box .sign-main em { font-style: normal; color: #3bb8c8; display: block; }
    .sec02 .sign-box .sign-sub {  font-size: 13px; color: #888; margin-top: 10px; line-height: 1.6;    }

    /* ==============================
       ③ 挫折/原因
    ============================== */
    .sec03 { background: #f3f8f9; padding: 40px 20px 40px; }
    .sec03 .lead { text-align: center; margin-bottom: 24px; }
    .sec03 .lead .eyebrow {  font-size: 9px; color: #bbb; letter-spacing: 0.3em; display: block; margin-bottom: 10px;    }
    .sec03 .lead .title { font-size: 17px; font-weight: 900; color: #1a1a1a; line-height: 1.65; }
    .sec03 .lead .title em { font-style: normal; color: #3bb8c8; }
    .sec03 .tried-label {  font-size: 11px; color: #aaa; letter-spacing: 0.1em; text-align: center; margin-bottom: 12px;    }
    .sec03 .tried-list { list-style: none; margin-bottom: 28px; }
    .sec03 .tried-list li {  display: flex; align-items: stretch; background: #fff; border-radius: 10px; overflow: hidden; margin-bottom: 10px;    }
    .sec03 .tried-list li.reverse { flex-direction: row-reverse; }
    .sec03 .tried-list .photo {  width: 120px; flex-shrink: 0; overflow: hidden; min-height: 100px;    }
   /* .sec03 .tried-list .photo img { width: 100%; height: 100%; object-fit: cover; display: block; }*/
    .sec03 .tried-list .text-col {  flex: 1; padding: 16px 14px; display: flex; flex-direction: column; justify-content: center; gap: 8px;    }
    .sec03 .tried-list .action { font-size: 14px; font-weight: 700; color: #2a2a2a; line-height: 1.4; }
    .sec03 .tried-list .arrow { font-size: 10px; color: #ccc; }
    .sec03 .tried-list .result {  font-size: 12px; color: #b05050; background: rgba(176,80,80,0.08); padding: 4px 10px; border-radius: 20px; display: inline-block; align-self: flex-start;    }

    .sec03 .img-overlay-wrap {  position: relative; width: 100%; height: 220px; border-radius: 10px; overflow: hidden; margin-bottom: 24px;    }
    .sec03 .img-overlay-wrap img {  width: 100%; height: 100%; object-fit: cover; display: block;    }
    .sec03 .img-overlay-wrap::after {  content: ''; position: absolute; inset: 0; background: rgba(0,0,0,0.45);    }
    .sec03 .img-overlay-text {  position: absolute; inset: 0; z-index: 1; display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; font-size: 26px; font-weight: 900; color: #fff; line-height: 1.6;    }
    .sec03 .img-overlay-text em { font-style: normal; color: #a0d4dc; display: block; }
    .sec03 .cause-wrap { background: #fff; border-radius: 10px; padding: 24px 20px; margin-bottom: 0; }
    .sec03 .cause-wrap .c-reset { font-size: 20px; font-weight: 900; color: #3bb8c8; text-align: center; line-height: 1.6; margin-bottom: 16px; }
    .sec03 .cause-wrap p { font-size: 13px; color: #555; line-height: 2; text-align: center; margin-bottom: 10px; }
    .sec03 .cause-wrap p strong { color: #1a1a1a; }
    .sec03 .cause-key {  font-size: 30px; font-weight: 900; color: #1a1a1a; text-align: center; line-height: 1.4; padding: 18px 0 0; border-top: 1px solid #eee; margin-top: 8px;    }
    .sec03 .cause-key em { font-style: normal; color: #3bb8c8; }
    .sec03 .bridge03 {  background: #1a6875; border-radius: 0 0 10px 10px; text-align: center; padding: 20px; margin-bottom: 24px;    }
    .sec03 .bridge03 .b-small { font-size: 12px; color: rgba(255,255,255,0.5); margin-bottom: 8px; }
    .sec03 .bridge03 .b-big { font-size: 20px; font-weight: 900; color: #a0d4dc; line-height: 1.6; }

    /* ==============================
       フルBA（3枚スライダー）
    ============================== */
    .sec-ba { background: #fff; padding: 36px 20px 40px; }
    .sec-ba .sec-eyebrow {  font-size: 9px; color: #bbb; letter-spacing: 0.3em; text-align: center; display: block; margin-bottom: 8px;    }
    .sec-ba .sec-title {  font-size: 18px; font-weight: 900; color: #1a1a1a; text-align: center; line-height: 1.6; margin-bottom: 6px;    }
    .sec-ba .sec-sub { font-size: 12px; color: #999; text-align: center; margin-bottom: 20px; }
    .swipe-hint { text-align: center; font-size: 11px; color: #bbb; margin-bottom: 16px; letter-spacing: 0.05em; }
    .ba-slider-wrap { position: relative; margin: 0 -20px 8px; }
    .ba-slider {  display: flex; overflow-x: auto; scroll-snap-type: x mandatory; -webkit-overflow-scrolling: touch; gap: 12px; padding: 0 20px 12px; scrollbar-width: none;    }
    .ba-slider::-webkit-scrollbar { display: none; }
    .ba-card {  flex: 0 0 310px; border: 1px solid #f0f0f0; border-radius: 12px; overflow: hidden; scroll-snap-align: start; background: #fff;    }
    .ba-card .voice { padding: 18px 18px 14px; background: #faf9f8; border-bottom: 1px solid #f0f0f0; height: 160px; overflow: hidden; }
    .ba-card .voice p { font-size: 13px; color: #333; line-height: 1.9; }
    .ba-card .voice p strong { color: #1a1a1a; }
    .ba-card .ba-img {  height: 300px; overflow: hidden; border-bottom: 1px solid #eee;    }
    /*.ba-card .ba-img img { width: 100%; height: 100%; object-fit: cover; display: block; }*/
    .ba-card .ba-data { padding: 14px 18px; background: #fff; }
    .ba-card .ba-data .profile {  font-size: 11px; color: #888; margin-bottom: 10px; display: flex; align-items: center; gap: 8px;    }
    .ba-card .ba-data .profile span {  background: #1a6875; color: #fff; font-size: 10px; padding: 2px 8px; border-radius: 2px;    }
    .ba-card .ba-data .metrics { display: flex; gap: 8px; }
    .ba-card .ba-data .metric {  flex: 1; text-align: center; background: #f3f8f9; border-radius: 8px; padding: 10px 6px;    }
    .ba-card .ba-data .metric .part { font-size: 10px; color: #888; margin-bottom: 4px; }
    .ba-card .ba-data .metric .value { font-size: 18px; font-weight: 900; color: #3bb8c8; line-height: 1; }
    .ba-card .ba-data .metric .unit { font-size: 11px; color: #3bb8c8; }
    .ba-dots { display: flex; justify-content: center; gap: 6px; margin-bottom: 20px; }
    .ba-dots .dot { width: 6px; height: 6px; border-radius: 50%; background: #ddd; }
    .ba-dots .dot.active { background: #1a6875; width: 18px; border-radius: 3px; }
    .disclaimer { font-size: 10px; color: #bbb; text-align: center; margin-top: 4px; padding-top: 16px; }

    /* ==============================
       ④ ソリューション
    ============================== */
    .sec04 { background: #fff; padding: 44px 20px 44px; }
    .sec04 .lead { text-align: center; margin-bottom: 28px; }
    .sec04 .lead .eyebrow { font-size: 9px; color: #bbb; letter-spacing: 0.3em; display: block; margin-bottom: 10px; }
    .sec04 .lead .title { font-size: 17px; font-weight: 900; color: #1a1a1a; line-height: 1.7; }
    .sec04 .lead .title em { font-style: normal; color: #3bb8c8; }
    .sec04 .img-area {  width: 100%; height: 180px; border-radius: 10px; overflow: hidden; margin-bottom: 32px;    }
    .sec04 .img-area img { width: 100%; height: 100%; object-fit: cover; display: block; }
    .sec04 .service-intro { font-size: 13px; color: #555; text-align: center; margin-bottom: 20px; line-height: 1.8; }
    .sec04 .service-label { font-size: 13px; color: #555; text-align: center; margin-bottom: 20px; line-height: 1.7; }
    .sec04 .service-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 12px; margin-bottom: 12px; }
    .sec04 .service-grid-bottom {  display: grid; grid-template-columns: repeat(2,1fr); gap: 12px; margin-bottom: 28px; padding: 0 40px;    }
    .sec04 .service-item {  display: flex; flex-direction: column; background: #f3f8f9; border-radius: 10px; overflow: hidden;    }
    .sec04 .service-item .s-icon {  width: 100%; height: 64px; overflow: hidden; flex-shrink: 0;    }
    .sec04 .service-item .s-icon img {  width: 100%; height: 100%; object-fit: cover; display: block;    }
    .sec04 .service-item .s-name { font-size: 11px; font-weight: 700; color: #2a2a2a; text-align: center; line-height: 1.4; padding: 8px 6px 10px; }
    .sec04 .unity-line {  text-align: center; font-size: 15px; font-weight: 700; color: #1a1a1a; margin-bottom: 32px; padding: 16px; background: #f3f8f9; border-radius: 8px; line-height: 1.8;    }
    .sec04 .unity-line em { font-style: normal; color: #3bb8c8; font-size: 20px; display: block; margin-top: 2px; }
    .sec04 .unity-line span { display: block; font-size: 11px; color: #999; font-weight: 400; margin-bottom: 6px; }
    .sec04 .dakara-wrap { background: #1a6875; border-radius: 10px; padding: 28px 20px; }
    .sec04 .dakara-item {  display: flex; align-items: center; gap: 16px; padding: 14px 0; border-bottom: 1px solid rgba(255,255,255,0.1);    }
    .sec04 .dakara-item:last-child { border-bottom: none; }
    .sec04 .dakara-item .d-num {  font-size: 11px; color: rgba(255,255,255,0.4); font-weight: 300; letter-spacing: 0.1em; flex-shrink: 0; width: 28px; text-align: center;    }
    .sec04 .dakara-item .d-text { font-size: 18px; font-weight: 900; color: #fff; letter-spacing: 0.02em; }
    .sec04 .dakara-item .d-text em {  display: block; font-size: 12px; font-style: normal; font-weight: 400; color: rgba(255,255,255,0.5); margin-top: 3px;    }

    /* ==============================
       ⑤ 顧客満足度
    ============================== */
    .sec05 { background: #fff; padding: 44px 20px 44px; }
    .sec05 .big-number { text-align: center; margin-bottom: 32px; }
    .sec05 .big-number .eyebrow { font-size: 9px; color: #bbb; letter-spacing: 0.3em; display: block; margin-bottom: 12px; }
    .sec05 .big-number .num { font-size: 72px; font-weight: 900; color: #1a1a1a; line-height: 1; letter-spacing: -0.02em; }
    .sec05 .big-number .num span { font-size: 32px; }
    .sec05 .big-number .label { font-size: 13px; color: #666; margin-top: 6px; letter-spacing: 0.05em; }
    .sec05 .big-number .sub { font-size: 11px; color: #bbb; margin-top: 4px; }
    .sec05 .satisfaction-bars { background: #f3f8f9; border-radius: 12px; padding: 20px 18px; margin-bottom: 28px; }
    .sec05 .satisfaction-bars .bar-title { font-size: 11px; color: #999; letter-spacing: 0.1em; margin-bottom: 14px; text-align: center; }
    .sec05 .bar-item { display: flex; align-items: center; gap: 10px; margin-bottom: 10px; }
    .sec05 .bar-item:last-child { margin-bottom: 0; }
    .sec05 .bar-item .bar-label { font-size: 11px; color: #555; width: 80px; flex-shrink: 0; line-height: 1.3; }
    .sec05 .bar-item .bar-track { flex: 1; height: 8px; background: #e8e4e0; border-radius: 4px; overflow: hidden; }
    .sec05 .bar-item .bar-fill { height: 100%; background: #3bb8c8; border-radius: 4px; }
    .sec05 .bar-item .bar-pct { font-size: 12px; font-weight: 700; color: #3bb8c8; width: 36px; text-align: right; flex-shrink: 0; }
    .sec05 .voice-label { font-size: 11px; color: #aaa; letter-spacing: 0.1em; text-align: center; margin-bottom: 12px; }
    .sec05 .voice-slider-wrap { margin: 0 -20px 8px; }
    .sec05 .voice-slider {  display: flex; overflow-x: auto; scroll-snap-type: x mandatory; -webkit-overflow-scrolling: touch; gap: 10px; padding: 0 20px 12px; scrollbar-width: none;    }
    .sec05 .voice-slider::-webkit-scrollbar { display: none; }
    .sec05 .voice-card {  flex: 0 0 280px; scroll-snap-align: start; background: #f3f8f9; border-radius: 12px; padding: 18px 16px;    }
    .sec05 .voice-card .vc-profile { display: flex; align-items: center; gap: 10px; margin-bottom: 12px; }
    .sec05 .voice-card .vc-avatar {  width: 48px; height: 64px; border-radius: 6px; overflow: hidden; flex-shrink: 0;    }
    .sec05 .voice-card .vc-avatar img { width: 100%; height: 100%; object-fit: cover; display: block; }
    .sec05 .voice-card .vc-name { font-size: 11px; color: #888; line-height: 1.5; }
    .sec05 .voice-card .vc-name strong { display: block; font-size: 13px; color: #1a1a1a; }
    .sec05 .voice-card .vc-stars { font-size: 13px; color: #e8a020; margin-bottom: 10px; letter-spacing: 2px; }
    .sec05 .voice-card .vc-text { font-size: 12px; color: #444; line-height: 1.9; }
    .sec05 .voice-card .vc-text strong { color: #1a1a1a; }
    .sec05 .disclaimer2 { font-size: 10px; color: #ccc; text-align: center; }

    /* ==============================
       ⑥ CTA①
    ============================== */
    .sec06 { background: #1a6875; padding: 44px 24px 40px; }
    .sec06 .lead { text-align: center; margin-bottom: 28px; }
    .sec06 .lead .eyebrow { font-size: 9px; color: rgba(255,255,255,0.4); letter-spacing: 0.3em; display: block; margin-bottom: 12px; }
    .sec06 .lead .title { font-size: 20px; font-weight: 900; color: #fff; line-height: 1.65; }
    .sec06 .lead .title em { font-style: normal; color: #a0d4dc; }
    .sec06 .trial-card {  background: rgba(255,255,255,0.06); border: 1px solid rgba(255,255,255,0.12); border-radius: 12px; padding: 22px 18px; margin-bottom: 24px;    }
    .sec06 .trial-card .card-title { font-size: 11px; color: rgba(255,255,255,0.45); letter-spacing: 0.15em; margin-bottom: 14px; text-align: center; }
    .sec06 .trial-card .item-list { list-style: none; }
    .sec06 .trial-card .item-list li {  display: flex; align-items: center; gap: 10px; font-size: 13px; color: rgba(255,255,255,0.85); padding: 9px 0; border-bottom: 1px solid rgba(255,255,255,0.08); line-height: 1.4;    }
    .sec06 .trial-card .item-list li:last-child { border-bottom: none; }
    .sec06 .trial-card .item-list .dot { width: 6px; height: 6px; border-radius: 50%; background: #a0d4dc; flex-shrink: 0; }
    .sec06 .price-block { text-align: center; margin-bottom: 20px; }
    .sec06 .price-block .price-label { font-size: 11px; color: rgba(255,255,255,0.5); letter-spacing: 0.12em; margin-bottom: 8px; }
    .sec06 .price-block .price-original { font-size: 13px; color: rgba(255,255,255,0.35); text-decoration: line-through; margin-bottom: 4px; }
    .sec06 .price-block .price-main { font-size: 48px; font-weight: 900; color: #fff; line-height: 1; letter-spacing: -0.02em; }
    .sec06 .price-block .price-main span { font-size: 18px; font-weight: 400; }
    .sec06 .price-block .price-note { font-size: 11px; color: rgba(255,255,255,0.4); margin-top: 6px; }
    .sec06 .slots {  background: rgba(59,184,200,0.10); border: 1px solid rgba(59,184,200,0.3); border-radius: 8px; padding: 10px 16px; text-align: center; margin-bottom: 20px;    }
    .sec06 .slots p { font-size: 12px; color: #a0d4dc; letter-spacing: 0.05em; }
    .sec06 .slots p strong { font-size: 15px; }
    .sec06 .cta-btn {  display: block; width: 100%; background: #3bb8c8; color: #fff; font-size: 16px; font-weight: 900; text-align: center; padding: 18px 0; border-radius: 50px; letter-spacing: 0.05em; margin-bottom: 10px; text-decoration: none; line-height: 1.4; box-shadow: 0 6px 24px rgba(59,184,200,0.45);    }
    .sec06 .cta-btn .btn-sub { display: block; font-size: 11px; font-weight: 400; margin-top: 3px; opacity: 0.7; }
    .sec06 .cta-btn-sub {  display: block; width: 100%; background: transparent; color: rgba(255,255,255,0.8); font-size: 14px; font-weight: 700; text-align: center; padding: 14px 0; border-radius: 50px; letter-spacing: 0.05em; margin-bottom: 12px; text-decoration: none; line-height: 1.4; border: 1px solid rgba(255,255,255,0.3);    }
    .sec06 .reassure { text-align: center; }
    .sec06 .reassure p { font-size: 12px; color: rgba(255,255,255,0.4); line-height: 1.9; }
    .sec06 .reassure p strong { color: rgba(255,255,255,0.7); }

    /* ==============================
       ⑦ なぜ変化が出るのか
    ============================== */
    .sec07 { background: #fff; padding: 44px 20px 44px; }
    .sec07 .lead { text-align: center; margin-bottom: 28px; }
    .sec07 .lead .eyebrow { font-size: 9px; color: #bbb; letter-spacing: 0.3em; display: block; margin-bottom: 12px; }
    .sec07 .lead .title { font-size: 19px; font-weight: 900; color: #1a1a1a; line-height: 1.65; }
    .sec07 .lead .title em { font-style: normal; color: #3bb8c8; }
    .sec07 .lead .subtitle { font-size: 13px; color: #666; margin-top: 10px; line-height: 1.8; }
    .sec07 .compare { display: flex; align-items: center; gap: 8px; margin-bottom: 24px; }
    .sec07 .compare .c-box { flex: 1; border-radius: 10px; padding: 14px 10px; text-align: center; }
    .sec07 .compare .c-box.before { background: #f5f5f5; border: 1px solid #eee; }
    .sec07 .compare .c-box.after  { background: #1a6875; }
    .sec07 .compare .c-label { font-size: 9px; letter-spacing: 0.15em; margin-bottom: 6px; display: block; }
    .sec07 .compare .c-box.before .c-label { color: #bbb; }
    .sec07 .compare .c-box.after  .c-label { color: rgba(255,255,255,0.4); }
    .sec07 .compare .c-main { font-size: 14px; font-weight: 900; line-height: 1.5; }
    .sec07 .compare .c-box.before .c-main { color: #aaa; }
    .sec07 .compare .c-box.after  .c-main { color: #fff; }
    .sec07 .compare .c-sub { font-size: 10px; margin-top: 4px; line-height: 1.5; }
    .sec07 .compare .c-box.before .c-sub { color: #bbb; }
    .sec07 .compare .c-box.after  .c-sub { color: rgba(255,255,255,0.5); }
    .sec07 .compare .arrow { font-size: 20px; color: #3bb8c8; flex-shrink: 0; }
    .sec07 .impact-line {  text-align: center; font-size: 16px; font-weight: 900; color: #1a1a1a; line-height: 1.7; margin-bottom: 28px; padding: 16px; background: #f3f8f9; border-radius: 10px;    }
    .sec07 .impact-line em { font-style: normal; color: #3bb8c8; }
    .sec07 .service-list { list-style: none; margin-bottom: 28px; }
    .sec07 .service-list li {  display: flex; align-items: stretch; background: #f3f8f9; border-radius: 10px; overflow: hidden; margin-bottom: 10px;    }
    .sec07 .service-list li.reverse { flex-direction: row-reverse; }
    .sec07 .service-list .s-photo {  width: 110px; flex-shrink: 0; overflow: hidden; min-height: 100px;    }
   /* .sec07 .service-list .s-photo img { width: 100%; height: 100%; object-fit: cover; display: block; }*/
    .sec07 .service-list .s-body {  flex: 1; padding: 16px 14px; display: flex; flex-direction: column; justify-content: center; gap: 5px;    }
    .sec07 .service-list .s-name { font-size: 13px; font-weight: 900; color: #1a1a1a; }
    .sec07 .service-list .s-desc { font-size: 11px; color: #666; line-height: 1.7; }
    .sec07 .formula { display: flex; align-items: center; justify-content: center; gap: 12px; margin-bottom: 20px; }
    .sec07 .formula .f-item { text-align: center; flex: 1; }
    .sec07 .formula .f-icon { width: 80px; height: 80px; border-radius: 8px; overflow: hidden; margin: 0 auto 8px; display: block; }
    .sec07 .formula .f-icon img { width: 100%; height: 100%; object-fit: cover; display: block; }
    .sec07 .formula .f-label { font-size: 13px; font-weight: 900; color: #1a1a1a; }
    .sec07 .formula .f-x { font-size: 24px; font-weight: 900; color: #3bb8c8; flex-shrink: 0; }
    .sec07 .closing { text-align: center; padding: 16px; background: #1a6875; border-radius: 10px; }
    .sec07 .closing p { font-size: 13px; color: rgba(255,255,255,0.65); line-height: 1.9; }
    .sec07 .closing strong { display: block; font-size: 16px; color: #fff; font-weight: 900; margin-top: 8px; }

    /* ==============================
       ⑧ 体験の流れ
    ============================== */
    .sec08 { background: #f3f8f9; padding: 44px 20px; }
    .sec08 .lead { text-align: center; margin-bottom: 32px; }
    .sec08 .lead .eyebrow { font-size: 9px; color: #bbb; letter-spacing: 0.3em; display: block; margin-bottom: 10px; }
    .sec08 .lead .title { font-size: 19px; font-weight: 900; color: #1a1a1a; line-height: 1.6; }
    .sec08 .flow-list { list-style: none; }
    .sec08 .flow-item {  display: flex; align-items: stretch; background: #fff; border-radius: 12px; overflow: hidden; margin-bottom: 12px;    }
    .sec08 .flow-num {  width: 56px; flex-shrink: 0; background: #1a6875; display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 12px 0;    }
    .sec08 .flow-num .num-en { font-size: 8px; color: rgba(255,255,255,0.4); letter-spacing: 0.1em; }
    .sec08 .flow-num .num-main { font-size: 22px; font-weight: 900; color: #fff; line-height: 1; }
    .sec08 .flow-body { flex: 1; padding: 16px 14px; }
    .sec08 .flow-body .f-title { font-size: 14px; font-weight: 900; color: #1a1a1a; margin-bottom: 6px; }
    .sec08 .flow-body .f-text { font-size: 12px; color: #666; line-height: 1.8; }
    .sec08 .flow-img {  width: 80px; flex-shrink: 0; overflow: hidden; min-height: 80px;    }
   /* .sec08 .flow-img img { width: 100%; height: 100%; object-fit: cover; display: block; }*/

    /* ==============================
       ⑨ サポーター紹介
    ============================== */
    .sec09 { background: #fff; padding: 44px 20px; }
    .sec09 .lead { text-align: center; margin-bottom: 32px; }
    .sec09 .lead .eyebrow { font-size: 9px; color: #bbb; letter-spacing: 0.3em; display: block; margin-bottom: 10px; }
    .sec09 .lead .title { font-size: 19px; font-weight: 900; color: #1a1a1a; line-height: 1.6; }
    .sec09 .supporter-list { list-style: none; }
    .sec09 .supporter-item {  display: flex; align-items: stretch; border-radius: 12px; overflow: hidden; margin-bottom: 12px; background: #f3f8f9;    }
    .sec09 .supporter-item.reverse { flex-direction: row-reverse; }
    .sec09 .sup-photo {  width: 100px; flex-shrink: 0; overflow: hidden; min-height: 100px;    }
   /* .sec09 .sup-photo img { width: 100%; height: 100%; object-fit: cover; display: block; }*/
    .sec09 .sup-body { flex: 1; padding: 16px 14px; display: flex; flex-direction: column; justify-content: center; gap: 6px; }
    .sec09 .sup-role { font-size: 9px; color: #bbb; letter-spacing: 0.2em; }
    .sec09 .sup-name { font-size: 15px; font-weight: 900; color: #1a1a1a; }
    .sec09 .sup-text { font-size: 11px; color: #666; line-height: 1.7; }

    /* ==============================
       ⑩ 選ばれる理由
    ============================== */
    .sec10 { background: #f3f8f9; padding: 44px 20px; }
    .sec10 .lead { text-align: center; margin-bottom: 32px; }
    .sec10 .lead .eyebrow { font-size: 9px; color: #bbb; letter-spacing: 0.3em; display: block; margin-bottom: 10px; }
    .sec10 .lead .title { font-size: 17px; font-weight: 900; color: #1a1a1a; line-height: 1.7; }
    .sec10 .lead .title em { font-style: normal; color: #3bb8c8; }
    .sec10 .reason-list { list-style: none; }
    .sec10 .reason-item {  display: block; background: #fff; border-radius: 12px; margin-bottom: 14px; overflow: hidden;    }
    .sec10 .reason-item .r-photo {  width: 100%; height: 140px; overflow: hidden;    }
    .sec10 .reason-item .r-photo img { width: 100%; height: 100%; object-fit: cover; object-position: center 20%; display: block; }
    .sec10 .reason-list li:nth-child(1) .r-photo img { object-position: center 40%; }
    .sec10 .reason-list li:nth-child(3) .r-photo img { object-position: center 10%; }
    .sec10 .reason-item .r-content {  display: flex; align-items: flex-start; gap: 14px; padding: 16px 16px 18px;    }
    .sec10 .reason-item .r-num {  font-size: 22px; font-weight: 900; color: #b8dce4; line-height: 1; flex-shrink: 0; padding-top: 2px;    }
    .sec10 .reason-item .r-body { flex: 1; }
    .sec10 .reason-item .r-title { font-size: 14px; font-weight: 900; color: #1a1a1a; margin-bottom: 6px; }
    .sec10 .reason-item .r-catch { font-size: 13px; font-weight: 700; color: #1a1a1a; line-height: 1.6; margin-bottom: 8px; }
    .sec10 .reason-item .r-text { font-size: 12px; color: #666; line-height: 1.8; }
    .sec10 .reason-item .r-note { font-size: 10px; color: #aaa; margin-top: 6px; }

    /* ==============================
       最終CTA
    ============================== */
    .sec-final-cta { background: #1a6875; padding: 48px 24px 52px; text-align: center; }
    .sec-final-cta .fc-eyebrow { font-size: 9px; color: rgba(255,255,255,0.4); letter-spacing: 0.3em; display: block; margin-bottom: 16px; }
    .sec-final-cta .fc-lead { font-size: 13px; color: rgba(255,255,255,0.65); line-height: 1.9; margin-bottom: 24px; }
    .sec-final-cta .fc-lead strong { display: block; font-size: 18px; color: #fff; font-weight: 900; margin-top: 6px; }
    .sec-final-cta .fc-course {  background: rgba(255,255,255,0.06); border: 1px solid rgba(255,255,255,0.12); border-radius: 12px; padding: 20px 18px; margin-bottom: 24px;    }
    .sec-final-cta .fc-course-title { font-size: 11px; color: rgba(255,255,255,0.45); letter-spacing: 0.15em; margin-bottom: 8px; }
    .sec-final-cta .fc-course-name { font-size: 18px; font-weight: 900; color: #fff; margin-bottom: 16px; line-height: 1.4; }
    .sec-final-cta .fc-price-wrap { display: flex; align-items: center; justify-content: center; gap: 12px; }
    .sec-final-cta .fc-price-original { font-size: 13px; color: rgba(255,255,255,0.35); text-decoration: line-through; }
    .sec-final-cta .fc-price-badge {  background: #3bb8c8; color: #fff; font-size: 10px; font-weight: 700; padding: 3px 8px; border-radius: 2px;    }
    .sec-final-cta .fc-price-main { font-size: 42px; font-weight: 900; color: #fff; line-height: 1; }
    .sec-final-cta .fc-price-main span { font-size: 16px; font-weight: 400; }
    .sec-final-cta .fc-slots {  background: rgba(59,184,200,0.10); border: 1px solid rgba(59,184,200,0.3); border-radius: 8px; padding: 10px 16px; margin-bottom: 20px;    }
    .sec-final-cta .fc-slots p { font-size: 12px; color: #a0d4dc; }
    .sec-final-cta .fc-slots p strong { font-size: 15px; }
    .sec-final-cta .fc-btn {  display: block; width: 100%; background: #3bb8c8; color: #fff; font-size: 16px; font-weight: 900; padding: 18px 0; border-radius: 50px; letter-spacing: 0.05em; margin-bottom: 10px; text-decoration: none; line-height: 1.4; box-shadow: 0 6px 24px rgba(59,184,200,0.45);    }
    .sec-final-cta .fc-btn .btn-sub { display: block; font-size: 11px; font-weight: 400; margin-top: 3px; opacity: 0.7; }
    .sec-final-cta .fc-btn-sub {  display: block; width: 100%; background: transparent; color: rgba(255,255,255,0.8); font-size: 14px; font-weight: 700; text-align: center; padding: 14px 0; border-radius: 50px; letter-spacing: 0.05em; margin-bottom: 12px; text-decoration: none; line-height: 1.4; border: 1px solid rgba(255,255,255,0.3);    }
    .sec-final-cta .fc-reassure { font-size: 12px; color: rgba(255,255,255,0.4); line-height: 1.9; }
    .sec-final-cta .fc-reassure strong { color: rgba(255,255,255,0.7); }

    /* 返金保証 */
    .guarantee {  background: linear-gradient(160deg, #1a6875 0%, #10505c 100%); padding: 44px 24px; text-align: center;    }
    .guarantee .g-badge {  border: 2px solid #a0d4dc; border-radius: 50%; width: 110px; height: 110px; display: flex; flex-direction: column; align-items: center; justify-content: center; margin: 0 auto 20px; gap: 2px; box-shadow: 0 0 0 6px rgba(240,216,168,0.08), 0 0 32px rgba(59,184,200,0.10);    }
    .guarantee .g-badge .g-days {  font-size: 36px; font-weight: 900; color: #a0d4dc; line-height: 1;    }
    .guarantee .g-badge .g-badge-text {  font-size: 9px; color: #a0d4dc; letter-spacing: 0.05em; line-height: 1.3; text-align: center;    }
    .guarantee .g-title {  font-size: 20px; font-weight: 900; color: #fff; line-height: 1.6; margin-bottom: 14px;    }
    .guarantee .g-title em { font-style: normal; color: #a0d4dc; }
    .guarantee .g-text {  font-size: 13px; color: rgba(255,255,255,0.7); line-height: 1.9; margin-bottom: 12px;    }
    .guarantee .g-note { font-size: 10px; color: rgba(255,255,255,0.35); line-height: 1.7; }

/* PC-size 
======================================================================================*/
@media screen and (min-width: 736px) {

	.phone { width: 375px; margin: 0 auto; background: #fff; overflow: hidden; border-radius: 12px; box-shadow: 0 12px 48px rgba(0,0,0,0.6); }
	.fv {  height: 495px; }

/* end
======================================================================================*/
}

