@charset "utf-8";
:root{--color-text:#252525;--color-sub:#66615b;--color-muted:#8a8379;--color-bg:#fffdf9;--color-bg-soft:#f7f1e8;--color-bg-warm:#fff7ec;--color-main:#f0831e;--color-main-dark:#d86f13;--color-accent:#2f8f6b;--color-line:#eadfce;--color-white:#fff;--shadow-soft:0 18px 50px rgba(84,62,34,.12);--shadow-card:0 12px 32px rgba(84,62,34,.10);--radius-xl:32px;--radius-lg:24px;--radius-md:16px;--max:1120px;--header-height:78px;--font-ja:'Hiragino Sans','Hiragino Kaku Gothic ProN','Yu Gothic','YuGothic','Meiryo',sans-serif}*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:calc(var(--header-height) + 14px)}body{margin:0;color:var(--color-text);font-family:var(--font-ja);font-size:16px;line-height:1.85;letter-spacing:.03em;background:var(--color-bg);overflow-x:hidden}img,svg,video,iframe{max-width:100%;vertical-align:middle}img,video{height:auto}a{color:inherit;text-decoration:none}p,h1,h2,h3{margin:0}ul,ol{margin:0;padding:0}li{list-style:none}strong{font-weight:800}.skip-link{position:fixed;top:8px;left:8px;z-index:9999;padding:10px 14px;color:#fff;background:#252525;border-radius:999px;transform:translateY(-140%);transition:.2s}.skip-link:focus{transform:translateY(0)}
.section{padding:96px 24px}.section__inner{width:min(100%,var(--max));margin:0 auto}.section-heading{max-width:760px;margin-bottom:42px}.section-heading--center{margin-inline:auto;text-align:center}.eyebrow{display:inline-flex;align-items:center;gap:8px;margin-bottom:14px;color:var(--color-main-dark);font-size:13px;font-weight:800;line-height:1.4;letter-spacing:.16em}.eyebrow::before{content:"";display:block;width:28px;height:2px;background:currentColor;border-radius:999px}.section-heading h2,.intro-photo h2,.authority h2,.message h2,.contact h2{font-size:clamp(30px,4vw,48px);line-height:1.42;letter-spacing:.04em}.section-heading p,.intro-photo p{margin-top:16px;color:var(--color-sub)}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:56px;padding:14px 24px;border:1px solid transparent;border-radius:999px;font-weight:800;line-height:1.35;text-align:center;transition:.2s}.btn:hover,.btn:focus-visible{transform:translateY(-2px)}.btn--primary{color:#fff;background:linear-gradient(135deg,var(--color-main),#f6a23e);box-shadow:0 12px 28px rgba(240,131,30,.28)}.btn--secondary{color:var(--color-main-dark);background:#fff;border-color:var(--color-line)}.sp-only{display:none}
.site-header{position:sticky;top:0;z-index:1000;height:var(--header-height);background:rgba(255,253,249,.88);border-bottom:1px solid rgba(234,223,206,.8);backdrop-filter:blur(18px)}.site-header__inner{display:flex;align-items:center;justify-content:space-between;width:min(100%,1180px);height:100%;margin:0 auto;padding:0 24px;gap:24px}.site-logo{display:inline-flex;align-items:center;gap:12px;min-width:max-content}.site-logo__mark{display:grid;place-items:center;width:46px;height:46px;color:#fff;font-size:15px;font-weight:900;background:var(--color-main);border-radius:50%;box-shadow:0 10px 24px rgba(240,131,30,.22)}.site-logo__text{display:grid;line-height:1.2}.site-logo__text span{font-size:17px;font-weight:900}.site-logo__text small{margin-top:4px;color:var(--color-muted);font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.site-nav{display:flex;align-items:center;justify-content:center;gap:clamp(14px,2vw,28px);margin-left:auto;color:var(--color-sub);font-size:14px;font-weight:800}.site-nav a{position:relative}.site-nav a::after{content:"";position:absolute;right:0;bottom:-8px;left:0;height:2px;background:var(--color-main);border-radius:999px;transform:scaleX(0);transition:.2s}.site-nav a:hover::after{transform:scaleX(1)}.header-cta{display:inline-flex;align-items:center;justify-content:center;min-width:116px;min-height:44px;padding:10px 18px;color:#fff;font-size:14px;font-weight:900;background:var(--color-main);border-radius:999px;box-shadow:0 10px 22px rgba(240,131,30,.22)}
.hero{position:relative;min-height:calc(100svh - var(--header-height));padding:82px 24px 90px;overflow:hidden}.hero__bg{position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 12% 18%,rgba(240,131,30,.16),transparent 28%),radial-gradient(circle at 92% 18%,rgba(47,143,107,.13),transparent 24%),linear-gradient(180deg,#fff9f0 0%,#fffdf9 100%)}.hero__inner{position:relative;display:grid;grid-template-columns:minmax(0,1.03fr) minmax(380px,.97fr);align-items:center;gap:58px;width:min(100%,var(--max));margin:0 auto}.hero h1{font-size:clamp(38px,5.2vw,64px);font-weight:900;line-height:1.24;letter-spacing:.035em}.hero h1 span{color:var(--color-main-dark)}.hero__lead{max-width:660px;margin-top:24px;color:var(--color-sub);font-size:17px}.hero__actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:34px}.hero__points{display:flex;flex-wrap:wrap;gap:10px;margin-top:30px}.hero__points li{padding:10px 15px;color:var(--color-sub);font-size:14px;font-weight:800;background:rgba(255,255,255,.78);border:1px solid var(--color-line);border-radius:999px}.hero__points strong{color:var(--color-main-dark)}.hero__visual{position:relative;min-height:610px}.hero-collage{position:relative;height:610px}.hero-collage figure{position:absolute;margin:0;overflow:hidden;background:var(--color-bg-soft);border:9px solid #fff;box-shadow:var(--shadow-soft)}.hero-collage img{width:100%;height:100%;object-fit:cover}.hero-collage__main{top:42px;right:10px;width:74%;height:450px;border-radius:36px}.hero-collage__sub{width:42%;height:180px;border-radius:28px}.hero-collage__sub--one{top:0;left:0}.hero-collage__sub--two{right:0;bottom:0}.floating-proof{position:absolute;display:grid;place-items:center;width:132px;height:132px;text-align:center;background:rgba(255,255,255,.92);border:1px solid rgba(234,223,206,.9);border-radius:50%;box-shadow:var(--shadow-card)}.floating-proof strong{color:var(--color-main-dark);font-size:28px;line-height:1.1}.floating-proof span{color:var(--color-sub);font-size:12px;font-weight:800}.floating-proof--one{top:220px;left:0}.floating-proof--two{right:-6px;bottom:120px}
.intro-photo{background:#fff}.intro-photo__inner{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:52px;width:min(100%,var(--max));margin:0 auto}.intro-photo figure{margin:0;overflow:hidden;border-radius:var(--radius-xl);box-shadow:var(--shadow-soft)}.intro-photo img{width:100%;height:430px;object-fit:cover}
.problem{background:var(--color-bg)}.problem-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.problem-card{min-height:250px;padding:28px 22px;background:#fff;border:1px solid var(--color-line);border-radius:var(--radius-lg);box-shadow:0 10px 28px rgba(84,62,34,.06)}.problem-card span{color:var(--color-main-dark);font-size:13px;font-weight:900;letter-spacing:.12em}.problem-card h3{margin-top:16px;font-size:20px;line-height:1.48}.problem-card p{margin-top:12px;color:var(--color-sub);font-size:14px}
.results{background:linear-gradient(180deg,var(--color-bg) 0%,var(--color-bg-warm) 100%)}.result-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.result-card{overflow:hidden;background:#fff;border:1px solid var(--color-line);border-radius:var(--radius-lg);box-shadow:var(--shadow-card)}.result-card--featured{grid-column:span 2}.result-card__image{overflow:hidden;height:220px;background:var(--color-bg-soft)}.result-card--featured .result-card__image{height:280px}.result-card__image img{width:100%;height:100%;object-fit:cover;transition:.35s}.result-card:hover .result-card__image img{transform:scale(1.04)}.result-card__body{padding:24px}.result-card__label{color:var(--color-main-dark);font-size:13px;font-weight:900}.result-card h3{margin-top:8px;font-size:22px;line-height:1.5}.result-card p:last-child{margin-top:12px;color:var(--color-sub);font-size:14px}.section-cta{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:38px;padding:28px 32px;background:#fff;border:1px solid var(--color-line);border-radius:var(--radius-lg);box-shadow:var(--shadow-card)}.section-cta p{font-size:18px;font-weight:900}
.authority{color:#fff;background:linear-gradient(135deg,rgba(37,37,37,.92),rgba(81,55,25,.88)),var(--color-text)}.authority .eyebrow{color:#ffd7a6}.authority__inner{display:grid;grid-template-columns:.95fr 1.05fr;align-items:center;gap:52px}.authority__content p:not(.eyebrow){margin-top:20px;color:rgba(255,255,255,.82)}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.stat-card{min-height:180px;padding:24px 16px;text-align:center;background:rgba(255,255,255,.11);border:1px solid rgba(255,255,255,.18);border-radius:var(--radius-lg);backdrop-filter:blur(12px)}.stat-card span{display:block;color:rgba(255,255,255,.76);font-size:13px;font-weight:800}.stat-card strong{display:block;margin-top:18px;color:#ffd7a6;font-size:clamp(34px,4vw,52px);line-height:1.1}
.movie{background:#fff}.movie-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.movie-card{overflow:hidden;background:var(--color-bg);border:1px solid var(--color-line);border-radius:var(--radius-lg);box-shadow:var(--shadow-card)}.movie-card video{display:block;width:100%;aspect-ratio:9/16;object-fit:cover;background:#1f1f1f}.movie-card__body{padding:18px}.movie-card__label{color:var(--color-main-dark);font-size:12px;font-weight:900;letter-spacing:.12em}.movie-card h3{margin-top:6px;font-size:17px;line-height:1.5}
.reels{background:var(--color-bg-soft)}.reel-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.reel-card{position:relative;display:flex;flex-direction:column;justify-content:flex-end;min-height:320px;padding:26px;overflow:hidden;color:#fff;background:linear-gradient(180deg,rgba(37,37,37,.05),rgba(37,37,37,.66)),linear-gradient(135deg,rgba(240,131,30,.88),rgba(47,143,107,.72));border-radius:var(--radius-lg);box-shadow:var(--shadow-card);transition:.2s}.reel-card:hover{transform:translateY(-4px)}.reel-card::before{content:"▶";position:absolute;top:22px;right:22px;display:grid;place-items:center;width:48px;height:48px;color:var(--color-main-dark);background:rgba(255,255,255,.9);border-radius:50%}.reel-card__num{font-size:32px;font-weight:900;line-height:1.2}.reel-card__text{margin-top:8px;font-size:14px;font-weight:800}
.reason{background:#fff}.reason-list{display:grid;gap:18px}.reason-item{display:grid;grid-template-columns:90px 1fr;gap:24px;padding:30px;background:var(--color-bg);border:1px solid var(--color-line);border-radius:var(--radius-lg);box-shadow:var(--shadow-card)}.reason-item__num{display:grid;place-items:center;width:76px;height:76px;color:#fff;font-size:15px;font-weight:900;background:var(--color-main);border-radius:50%}.reason-item h3{font-size:24px;line-height:1.5}.reason-item p{margin-top:12px;color:var(--color-sub)}
.service{background:var(--color-bg)}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.service-card{padding:28px 22px;background:#fff;border:1px solid var(--color-line);border-radius:var(--radius-lg);box-shadow:0 10px 28px rgba(84,62,34,.06)}.service-card h3{font-size:20px;line-height:1.48}.service-card p{margin-top:12px;color:var(--color-sub);font-size:14px}.price-note{margin-top:30px;padding:30px;background:linear-gradient(135deg,#fff8ed,#fff);border:1px solid var(--color-line);border-radius:var(--radius-lg)}.price-note h3{font-size:22px}.price-note p{margin-top:12px;color:var(--color-sub)}
.voice{background:var(--color-bg-warm)}.voice-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.voice-card{position:relative;padding:32px;background:#fff;border:1px solid var(--color-line);border-radius:var(--radius-lg);box-shadow:var(--shadow-card)}.voice-card::before{content:"“";display:block;margin-bottom:8px;color:rgba(240,131,30,.24);font-size:64px;font-family:Georgia,serif;line-height:.7}.voice-card p{font-size:17px;font-weight:700;line-height:1.9}
.flow{background:#fff}.flow-list{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.flow-list li{position:relative;padding:30px 22px;background:var(--color-bg-soft);border:1px solid var(--color-line);border-radius:var(--radius-lg)}.flow-list li::after{content:"";position:absolute;top:50%;right:-18px;width:18px;height:2px;background:var(--color-line)}.flow-list li:last-child::after{display:none}.flow-list span{color:var(--color-main-dark);font-size:12px;font-weight:900;letter-spacing:.13em}.flow-list h3{margin-top:12px;font-size:19px;line-height:1.48}.flow-list p{margin-top:10px;color:var(--color-sub);font-size:14px}
.faq{background:var(--color-bg)}.faq-list{max-width:900px;margin:0 auto}.faq-list details{background:#fff;border:1px solid var(--color-line);border-radius:var(--radius-md);box-shadow:0 8px 24px rgba(84,62,34,.06)}.faq-list details+details{margin-top:14px}.faq-list summary{position:relative;padding:22px 58px 22px 24px;font-weight:900;cursor:pointer;list-style:none}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary::before{content:"Q";display:inline-grid;place-items:center;width:28px;height:28px;margin-right:10px;color:#fff;font-size:13px;background:var(--color-main);border-radius:50%}.faq-list summary::after{content:"+";position:absolute;top:50%;right:24px;color:var(--color-main-dark);font-size:26px;line-height:1;transform:translateY(-50%)}.faq-list details[open] summary::after{content:"−"}.faq-list details p{padding:0 24px 24px 62px;color:var(--color-sub)}
.message{background:#fff}.message__inner{display:grid;grid-template-columns:.85fr 1.15fr;align-items:center;gap:52px}.message__photo{overflow:hidden;border-radius:var(--radius-xl);box-shadow:var(--shadow-soft)}.message__photo img{width:100%;height:440px;object-fit:cover}.message__content p:not(.eyebrow){margin-top:18px;color:var(--color-sub)}.message__note{padding:16px 18px;color:var(--color-main-dark)!important;font-size:14px;font-weight:800;background:var(--color-bg-warm);border:1px solid var(--color-line);border-radius:var(--radius-md)}
.contact{background:radial-gradient(circle at 18% 0%,rgba(240,131,30,.14),transparent 32%),linear-gradient(180deg,#fffdf9,#fff7ec)}.contact-box{width:min(100%,760px);margin:0 auto;overflow:hidden;background:#fff;border:1px solid var(--color-line);border-radius:var(--radius-xl);box-shadow:var(--shadow-soft)}.contact-box iframe{display:block;width:100%;height:1376px;background:#fff}.contact-sub{display:grid;justify-items:center;gap:14px;margin-top:24px;text-align:center}.contact-sub p{color:var(--color-sub);font-size:14px}
.site-footer{padding:52px 24px 96px;color:rgba(255,255,255,.72);background:#252525}.site-footer__inner{width:min(100%,var(--max));margin:0 auto;text-align:center}.site-footer__logo{color:#fff;font-size:20px;font-weight:900}.site-footer__inner>p:not(.site-footer__logo){margin-top:8px}.site-footer__links{display:flex;justify-content:center;gap:18px;margin:22px 0}.site-footer__links a{color:#fff;font-weight:800;text-decoration:underline;text-underline-offset:4px}.mobile-fixed-cta{display:none}
@media (max-width:1080px){.site-nav{display:none}.hero__inner,.intro-photo__inner,.authority__inner,.message__inner{grid-template-columns:1fr}.hero__visual{min-height:560px}.hero-collage{max-width:620px;margin:0 auto}.problem-grid,.service-grid,.flow-list,.movie-grid{grid-template-columns:repeat(2,1fr)}.result-grid{grid-template-columns:repeat(2,1fr)}.result-card--featured{grid-column:span 2}.stats,.reel-grid{grid-template-columns:repeat(3,1fr)}.flow-list li::after{display:none}}
@media (max-width:760px){:root{--header-height:66px}body{font-size:15px;line-height:1.8;padding-bottom:72px}.sp-only{display:inline}.section{padding:68px 18px}.section-heading{margin-bottom:30px}.section-heading h2,.intro-photo h2,.authority h2,.message h2,.contact h2{font-size:clamp(26px,8vw,34px);line-height:1.46}.section-heading--center{text-align:left}.site-header__inner{padding:0 16px}.site-logo__mark{width:42px;height:42px;font-size:13px}.site-logo__text small{display:none}.header-cta{min-width:94px;min-height:40px;padding:9px 14px;font-size:13px}.hero{min-height:auto;padding:58px 18px 64px}.hero__inner{gap:36px}.hero h1{font-size:clamp(33px,9.5vw,44px)}.hero__lead{margin-top:20px;font-size:15px}.hero__actions{display:grid;gap:12px}.btn{width:100%;min-height:54px}.hero__points{display:grid;grid-template-columns:1fr;gap:8px}.hero__points li{text-align:center}.hero__visual{min-height:465px}.hero-collage{height:465px}.hero-collage figure{border-width:6px}.hero-collage__main{top:52px;right:0;width:82%;height:310px;border-radius:28px}.hero-collage__sub{width:46%;height:132px;border-radius:22px}.hero-collage__sub--one{top:0;left:0}.hero-collage__sub--two{right:10px;bottom:0}.floating-proof{width:106px;height:106px}.floating-proof strong{font-size:22px}.floating-proof--one{top:216px;left:-2px}.floating-proof--two{right:-2px;bottom:70px}.intro-photo img{height:270px}.problem-grid,.result-grid,.service-grid,.stats,.reel-grid,.voice-grid,.flow-list,.movie-grid{grid-template-columns:1fr}.problem-card{min-height:auto}.result-card--featured{grid-column:auto}.result-card__image,.result-card--featured .result-card__image{height:210px}.section-cta{display:grid;padding:24px;text-align:center}.stat-card{min-height:138px}.movie-card video{aspect-ratio:4/5}.reel-card{min-height:220px}.reason-item{grid-template-columns:1fr;gap:16px;padding:24px}.reason-item__num{width:62px;height:62px;font-size:13px}.reason-item h3{font-size:21px}.voice-card{padding:26px 22px}.voice-card p{font-size:16px}.faq-list summary{padding:20px 48px 20px 18px}.faq-list summary::after{right:18px}.faq-list details p{padding:0 18px 22px}.message__photo img{height:300px}.contact-box{border-radius:22px}.contact-box iframe{height:1400px}.site-footer{padding-bottom:116px}.mobile-fixed-cta{position:fixed;right:14px;bottom:14px;left:14px;z-index:1100;display:block}.mobile-fixed-cta a{display:flex;align-items:center;justify-content:center;min-height:56px;padding:14px 18px;color:#fff;font-weight:900;text-align:center;background:linear-gradient(135deg,var(--color-main),#f6a23e);border-radius:999px;box-shadow:0 14px 34px rgba(240,131,30,.38)}}
@media (max-width:390px){.site-logo__text span{font-size:15px}.header-cta{min-width:84px;padding-inline:12px}.hero h1{font-size:31px}.floating-proof{width:96px;height:96px}.floating-proof strong{font-size:20px}}
@media print{.site-header,.mobile-fixed-cta,.site-footer,video,iframe{display:none}body{color:#000;background:#fff;padding:0}.section,.hero{padding:32px 0}.btn{border:1px solid #000;box-shadow:none}}


/* =========================================================
  Reel thumbnail image cards
========================================================= */

.reel-grid--with-images .reel-card {
  position: relative;
  min-height: 360px;
  padding: 0;
  overflow: hidden;
  background: #1f1f1f;
  border-radius: var(--radius-lg);
  isolation: isolate;
}

.reel-grid--with-images .reel-card::before {
  content: none;
}

.reel-grid--with-images .reel-card img {
  position: absolute;
  inset: 0;
  z-index: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.35s ease;
}

.reel-grid--with-images .reel-card:hover img,
.reel-grid--with-images .reel-card:focus-visible img {
  transform: scale(1.05);
}

.reel-card__overlay {
  position: absolute;
  inset: 0;
  z-index: 1;
  background:
    linear-gradient(180deg, rgba(37, 37, 37, 0.02) 0%, rgba(37, 37, 37, 0.18) 42%, rgba(37, 37, 37, 0.82) 100%),
    radial-gradient(circle at center, rgba(0, 0, 0, 0.02), rgba(0, 0, 0, 0.16));
  pointer-events: none;
}

.reel-card__play {
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 2;
  display: grid;
  place-items: center;
  width: 64px;
  height: 64px;
  color: #fff;
  font-size: 22px;
  line-height: 1;
  text-indent: 3px;
  background: rgba(0, 0, 0, 0.44);
  border: 1px solid rgba(255, 255, 255, 0.36);
  border-radius: 50%;
  backdrop-filter: blur(4px);
  transform: translate(-50%, -50%);
  transition: background-color 0.2s ease, transform 0.2s ease;
}

.reel-grid--with-images .reel-card:hover .reel-card__play,
.reel-grid--with-images .reel-card:focus-visible .reel-card__play {
  background: rgba(240, 131, 30, 0.9);
  transform: translate(-50%, -50%) scale(1.06);
}

.reel-card__content {
  position: relative;
  z-index: 3;
  display: block;
  width: 100%;
  margin-top: auto;
  padding: 26px;
}

.reel-grid--with-images .reel-card__num,
.reel-grid--with-images .reel-card__text {
  display: block;
  text-shadow: 0 2px 12px rgba(0, 0, 0, 0.32);
}

@media (max-width: 760px) {
  .reel-grid--with-images .reel-card {
    min-height: 330px;
  }

  .reel-card__play {
    width: 58px;
    height: 58px;
    font-size: 20px;
  }
}


/* =========================================================
  WordPress dynamic blog list
========================================================= */
.blog {
  background: #fff;
}
.blog-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 22px;
}
.blog-card a {
  display: grid;
  height: 100%;
  overflow: hidden;
  color: inherit;
  background: #fff;
  border: 1px solid var(--color-line);
  border-radius: var(--radius-lg);
  box-shadow: var(--shadow-card);
  transition: transform .2s ease, box-shadow .2s ease;
}
.blog-card a:hover,
.blog-card a:focus-visible {
  transform: translateY(-3px);
  box-shadow: 0 20px 46px rgba(84,62,34,.14);
}
.blog-card figure {
  overflow: hidden;
  aspect-ratio: 16 / 10;
  background: var(--color-bg-soft);
}
.blog-card img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.blog-card__body {
  display: grid;
  gap: 10px;
  padding: 22px;
}
.blog-card time {
  color: var(--color-main-dark);
  font-size: 13px;
  font-weight: 900;
  letter-spacing: .08em;
}
.blog-card h3 {
  color: var(--color-text);
  font-size: 20px;
  line-height: 1.5;
}
.blog-card p {
  color: var(--color-sub);
  font-size: 14px;
  line-height: 1.8;
}
.blog-empty {
  grid-column: 1 / -1;
  padding: 28px;
  text-align: center;
  background: #fff;
  border: 1px solid var(--color-line);
  border-radius: var(--radius-md);
}
body.admin-bar .site-header {
  top: 32px;
}
@media (max-width: 782px) {
  body.admin-bar .site-header {
    top: 46px;
  }
}
@media (max-width: 760px) {
  .blog-grid {
    grid-template-columns: 1fr;
  }
  .blog-card__body {
    padding: 20px;
  }
}


/* =========================================================
  Blog archive button
========================================================= */
.blog-more {
  display: flex;
  justify-content: center;
  margin-top: 36px;
  text-align: center;
}

.blog-more__btn {
  min-width: min(100%, 320px);
  justify-content: center;
}

@media (max-width: 760px) {
  .blog-more {
    margin-top: 28px;
  }

  .blog-more__btn {
    width: 100%;
    max-width: 360px;
  }
}

/* =========================================================
  Blog button / RESULTS 2x2 Fix
========================================================= */

/* ブログ一覧ページボタン：中央寄せ・マージントップ調整 */
.blog-more {
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  width: 100% !important;
  margin-top: 48px !important;
  text-align: center !important;
}

.blog-more__btn,
.blog-more .btn,
.blog-more a {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: auto !important;
  min-width: 280px !important;
  max-width: 100% !important;
  margin-left: auto !important;
  margin-right: auto !important;
  text-align: center !important;
}

/* RESULTS：PCで2×2の均等配置 */
.results .result-grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 44px !important;
  align-items: stretch !important;
  width: 100% !important;
  max-width: 1000px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

.results .result-card,
.results .result-card--featured {
  grid-column: auto !important;
  display: flex !important;
  flex-direction: column !important;
  width: 100% !important;
  height: 100% !important;
  overflow: hidden !important;
  background: #fff !important;
  border: 1px solid var(--color-line) !important;
  border-radius: var(--radius-lg) !important;
  box-shadow: var(--shadow-card) !important;
}

.results .result-card__image,
.results .result-card--featured .result-card__image {
  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  aspect-ratio: 4 / 3 !important;
  overflow: hidden !important;
  background: #fff !important;
}

.results .result-card__image img,
.results .result-card--featured .result-card__image img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center center !important;
  margin: 0 auto !important;
  transform: none !important;
}

.results .result-card:hover .result-card__image img {
  transform: none !important;
}

.results .result-card__body {
  flex: 1 1 auto !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: flex-start !important;
  padding: 26px 24px !important;
}

.results .result-card__label {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: fit-content !important;
  max-width: 100% !important;
  padding: 6px 14px !important;
  color: #fff !important;
  font-size: 13px !important;
  font-weight: 900 !important;
  line-height: 1.35 !important;
  background: var(--color-main) !important;
  border-radius: 999px !important;
}

.results .result-card h3 {
  margin-top: 14px !important;
  font-size: clamp(22px, 2.6vw, 30px) !important;
  line-height: 1.45 !important;
}

.results .result-card p:last-child {
  margin-top: 12px !important;
  font-size: 15px !important;
  line-height: 1.8 !important;
}

/* SP：1列表示 */
@media (max-width: 760px) {
  .blog-more {
    margin-top: 36px !important;
  }

  .blog-more__btn,
  .blog-more .btn,
  .blog-more a {
    width: min(100%, 360px) !important;
    min-width: 0 !important;
  }

  .results .result-grid {
    grid-template-columns: 1fr !important;
    gap: 42px !important;
    max-width: 100% !important;
  }

  .results .result-card__body {
    padding: 24px 20px !important;
  }

  .results .result-card h3 {
    font-size: 23px !important;
  }
}

/* =========================================================
  Blog Button Center / RESULTS 2x2 No Crop Final Fix
========================================================= */

/* ブログ一覧ボタン：カードとの間にしっかり余白を入れて中央寄せ */
.blog-more {
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  width: 100% !important;
  margin-top: 60px !important;
  margin-bottom: 0 !important;
  text-align: center !important;
}

.blog-more__btn,
.blog-more .btn,
.blog-more a {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: auto !important;
  min-width: 300px !important;
  max-width: 100% !important;
  margin-left: auto !important;
  margin-right: auto !important;
  text-align: center !important;
}

/* RESULTS：PCでは2×2の均等配置 */
.results .result-grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 46px !important;
  align-items: stretch !important;
  width: 100% !important;
  max-width: 1000px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

.results .result-card,
.results .result-card--featured {
  grid-column: auto !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: flex-start !important;
  width: 100% !important;
  height: 100% !important;
  overflow: visible !important;
  background: #fff !important;
  border: 1px solid var(--color-line) !important;
  border-radius: var(--radius-lg) !important;
  box-shadow: var(--shadow-card) !important;
}

/* 画像枠：比率は揃えつつ、画像全体が必ず見える設定 */
.results .result-card__image,
.results .result-card--featured .result-card__image {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  aspect-ratio: 4 / 3 !important;
  padding: 0 !important;
  overflow: hidden !important;
  background: #fff !important;
  border-radius: var(--radius-lg) var(--radius-lg) 0 0 !important;
}

.results .result-card__image img,
.results .result-card--featured .result-card__image img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  max-width: 100% !important;
  max-height: 100% !important;
  object-fit: contain !important;
  object-position: center center !important;
  margin: 0 auto !important;
  transform: none !important;
}

.results .result-card:hover .result-card__image img,
.results .result-card--featured:hover .result-card__image img {
  transform: none !important;
}

.results .result-card__body {
  flex: 1 1 auto !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: flex-start !important;
  width: 100% !important;
  padding: 26px 24px !important;
  box-sizing: border-box !important;
}

.results .result-card__label {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: fit-content !important;
  max-width: 100% !important;
  padding: 6px 14px !important;
  color: #fff !important;
  font-size: 13px !important;
  font-weight: 900 !important;
  line-height: 1.35 !important;
  background: var(--color-main) !important;
  border-radius: 999px !important;
}

.results .result-card h3 {
  margin-top: 14px !important;
  font-size: clamp(22px, 2.5vw, 30px) !important;
  line-height: 1.45 !important;
}

.results .result-card p:last-child {
  margin-top: 12px !important;
  font-size: 15px !important;
  line-height: 1.8 !important;
}

/* タブレット以下：1列で崩れないように */
@media (max-width: 760px) {
  .blog-more {
    margin-top: 44px !important;
  }

  .blog-more__btn,
  .blog-more .btn,
  .blog-more a {
    width: min(100%, 360px) !important;
    min-width: 0 !important;
  }

  .results .result-grid {
    grid-template-columns: 1fr !important;
    gap: 44px !important;
    max-width: 100% !important;
  }

  .results .result-card,
  .results .result-card--featured {
    width: 100% !important;
    max-width: 100% !important;
  }

  .results .result-card__image,
  .results .result-card--featured .result-card__image {
    aspect-ratio: 4 / 3 !important;
  }

  .results .result-card__body {
    padding: 24px 20px !important;
  }

  .results .result-card h3 {
    font-size: 23px !important;
  }
}



/* =========================================================
  FINAL STRONG FIX 2026-07
  Blog button center / RESULTS 2x2 / No image crop
========================================================= */

/* ブログ一覧ボタン：中央寄せ・カードとの余白 */
.lp-blog-more,
.blog-more {
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 56px auto 0 !important;
  padding: 0 !important;
  text-align: center !important;
  clear: both !important;
}

.lp-blog-more__btn,
.blog-more__btn,
.blog-more .btn,
.blog-more a {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: auto !important;
  min-width: 280px !important;
  max-width: min(100%, 420px) !important;
  margin: 0 auto !important;
  text-align: center !important;
  float: none !important;
}

/* ブログカード一覧とボタンの間を確実に空ける */
.blog-list + .blog-more,
.blog-cards + .blog-more,
.post-list + .blog-more,
.latest-posts + .blog-more,
.lp-blog-more {
  margin-top: 56px !important;
}

/* RESULTS全体の横幅 */
.lp-results-strong .wrap,
.results .wrap,
.results--large-images .wrap {
  width: min(100%, 1080px) !important;
  max-width: 1080px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 24px !important;
  padding-right: 24px !important;
  box-sizing: border-box !important;
  overflow: visible !important;
}

/* RESULTS：PCは必ず2カラム×2行の均等配置 */
.lp-results-grid,
.lp-results-strong .result-list,
.results .result-list,
.results--large-images .result-list {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  grid-auto-rows: auto !important;
  gap: 48px 36px !important;
  align-items: stretch !important;
  justify-items: stretch !important;
  width: 100% !important;
  max-width: 100% !important;
  margin-left: auto !important;
  margin-right: auto !important;
  box-sizing: border-box !important;
}

/* RESULTS：カード均等 */
.lp-results-strong .result-card,
.results .result-card,
.results--large-images .result-card {
  display: flex !important;
  flex-direction: column !important;
  width: 100% !important;
  max-width: 100% !important;
  height: 100% !important;
  min-width: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
  gap: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  overflow: visible !important;
  box-sizing: border-box !important;
  transform: none !important;
}

/* RESULTS：画像枠。切らずに全体表示 */
.lp-results-strong .result-card figure,
.results .result-card figure,
.results--large-images .result-card figure {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  max-width: 100% !important;
  aspect-ratio: 4 / 3 !important;
  margin: 0 0 18px 0 !important;
  padding: 0 !important;
  overflow: visible !important;
  background: #fff !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  box-sizing: border-box !important;
  transform: none !important;
}

/* RESULTS：画像そのもの。上下左右トリミング禁止 */
.lp-results-strong .result-card figure img,
.results .result-card figure img,
.results--large-images .result-card figure img,
.lp-results-strong .result-card img,
.results .result-card img,
.results--large-images .result-card img {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  height: 100% !important;
  max-height: 100% !important;
  object-fit: contain !important;
  object-position: center center !important;
  margin: 0 auto !important;
  padding: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  background: transparent !important;
  box-sizing: border-box !important;
}

/* RESULTS：説明カード */
.lp-results-strong .result-card > div,
.results .result-card > div,
.results--large-images .result-card > div {
  flex: 1 1 auto !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: flex-start !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 28px 24px !important;
  background: #fff !important;
  border: 1px solid #f3d9df !important;
  border-radius: 26px !important;
  box-shadow: 0 14px 34px rgba(65, 42, 30, 0.08) !important;
  box-sizing: border-box !important;
  overflow: visible !important;
}

/* RESULTS：店名ラベルは白文字維持 */
.lp-results-strong .result-label,
.results .result-label,
.results .result-card .result-label {
  color: #fff !important;
  background: var(--pink, #d85c86) !important;
}

/* PCで見出しが大きすぎて崩れる場合の調整 */
@media (min-width: 761px) {
  .lp-results-strong .result-card h3,
  .results .result-card h3,
  .results--large-images .result-card h3 {
    font-size: clamp(24px, 2.3vw, 34px) !important;
    line-height: 1.42 !important;
  }

  .lp-results-strong .result-card p:not(.result-label),
  .results .result-card p:not(.result-label),
  .results--large-images .result-card p:not(.result-label) {
    font-size: 18px !important;
    line-height: 1.8 !important;
  }
}

/* SP：1列表示、画像全体表示 */
@media (max-width: 760px) {
  .lp-blog-more,
  .blog-more {
    margin-top: 42px !important;
  }

  .lp-blog-more__btn,
  .blog-more__btn,
  .blog-more .btn,
  .blog-more a {
    width: min(100%, 360px) !important;
    min-width: 0 !important;
  }

  .lp-results-strong .wrap,
  .results .wrap,
  .results--large-images .wrap {
    width: 100% !important;
    max-width: 100% !important;
    padding-left: 14px !important;
    padding-right: 14px !important;
  }

  .lp-results-grid,
  .lp-results-strong .result-list,
  .results .result-list,
  .results--large-images .result-list {
    grid-template-columns: 1fr !important;
    gap: 52px !important;
  }

  .lp-results-strong .result-card figure,
  .results .result-card figure,
  .results--large-images .result-card figure {
    aspect-ratio: 4 / 3 !important;
    margin-bottom: 16px !important;
  }

  .lp-results-strong .result-card > div,
  .results .result-card > div,
  .results--large-images .result-card > div {
    padding: 24px 18px !important;
    border-radius: 24px !important;
  }

  .lp-results-strong .result-card h3,
  .results .result-card h3,
  .results--large-images .result-card h3 {
    font-size: 24px !important;
    line-height: 1.45 !important;
  }
}



/* =========================================================
  FINAL FIX FROM UPLOADED ZIP 2026-07-14
  ブログボタン中央寄せ / RESULTS 2×2 / 画像全体表示
========================================================= */

/* ブログ一覧ページのボタン：中央寄せ＋ブログカードとの余白 */
.blog .blog-more,
.lp-blog-more,
.blog-more {
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  width: 100% !important;
  margin: 56px auto 0 !important;
  padding: 0 !important;
  text-align: center !important;
  float: none !important;
  clear: both !important;
}

.blog-grid + .blog-more,
.blog-grid + .lp-blog-more,
.blog .blog-grid + .blog-more,
.blog .blog-grid + .lp-blog-more {
  margin-top: 56px !important;
}

.blog .blog-more__btn,
.lp-blog-more__btn,
.blog-more__btn,
.blog-more .btn,
.blog-more a {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: auto !important;
  min-width: 300px !important;
  max-width: min(100%, 420px) !important;
  margin-left: auto !important;
  margin-right: auto !important;
  text-align: center !important;
  float: none !important;
}

/* RESULTS：PCで2カラム×2行の均等配置 */
.results .section__inner {
  width: min(100%, 1080px) !important;
  max-width: 1080px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  box-sizing: border-box !important;
}

.results .result-grid,
.results .lp-results-grid,
.lp-results-2x2 .result-grid,
.lp-results-2x2 .lp-results-grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  grid-auto-flow: row !important;
  gap: 44px 34px !important;
  align-items: stretch !important;
  justify-items: stretch !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 auto !important;
  padding: 0 !important;
  box-sizing: border-box !important;
}

/* RESULTS：各カードを均等な高さに */
.results .result-card,
.lp-results-2x2 .result-card {
  display: flex !important;
  flex-direction: column !important;
  justify-content: flex-start !important;
  width: 100% !important;
  max-width: 100% !important;
  height: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: visible !important;
  box-sizing: border-box !important;
}

/* RESULTS：画像枠は4:3、上下左右を切らない */
.results .result-card__image,
.lp-results-2x2 .result-card__image {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 4 / 3 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: visible !important;
  background: #fff !important;
  border-radius: var(--radius-lg, 28px) var(--radius-lg, 28px) 0 0 !important;
  box-sizing: border-box !important;
}

/* RESULTS：画像そのものは object-fit:contain で全体表示 */
.results .result-card__image img,
.lp-results-2x2 .result-card__image img,
.results .result-card img,
.lp-results-2x2 .result-card img {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  height: 100% !important;
  max-height: 100% !important;
  object-fit: contain !important;
  object-position: center center !important;
  margin: 0 auto !important;
  padding: 0 !important;
  transform: none !important;
  transition: none !important;
  box-sizing: border-box !important;
}

/* hover時の拡大で画像が切れるのを防止 */
.results .result-card:hover .result-card__image img,
.lp-results-2x2 .result-card:hover .result-card__image img {
  transform: none !important;
}

/* RESULTS：説明部分も均等に */
.results .result-card__body,
.lp-results-2x2 .result-card__body {
  flex: 1 1 auto !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: flex-start !important;
  width: 100% !important;
  box-sizing: border-box !important;
}

/* SPは1カラムで自然に表示 */
@media (max-width: 760px) {
  .blog .blog-more,
  .lp-blog-more,
  .blog-more {
    margin-top: 42px !important;
  }

  .blog .blog-more__btn,
  .lp-blog-more__btn,
  .blog-more__btn,
  .blog-more .btn,
  .blog-more a {
    width: min(100%, 360px) !important;
    min-width: 0 !important;
  }

  .results .result-grid,
  .results .lp-results-grid,
  .lp-results-2x2 .result-grid,
  .lp-results-2x2 .lp-results-grid {
    grid-template-columns: 1fr !important;
    gap: 42px !important;
  }

  .results .result-card__image,
  .lp-results-2x2 .result-card__image {
    aspect-ratio: 4 / 3 !important;
  }
}

/* =========================================================
  HOMEPAGE STYLE UPDATE 2026-07-17
  ベージュ×ブラウン基調 / プロフィール追加 / ロゴ反映
========================================================= */
:root{
  --color-text:#4a3327;
  --color-sub:#76685d;
  --color-muted:#998b80;
  --color-bg:#fffaf3;
  --color-bg-soft:#f3eadf;
  --color-bg-warm:#efe2d4;
  --color-main:#5a3825;
  --color-main-dark:#4a2f21;
  --color-accent:#c99a6b;
  --color-line:#e5d5c5;
  --color-white:#fff;
  --shadow-soft:0 20px 55px rgba(83,58,39,.14);
  --shadow-card:0 14px 34px rgba(83,58,39,.10);
  --radius-xl:34px;
  --radius-lg:26px;
  --radius-md:18px;
}
body.iijan-mikawa-lp{background:linear-gradient(180deg,#fffaf3 0%,#f7efe6 100%) !important;}
.section{position:relative;}
.section:nth-of-type(even){background:rgba(255,255,255,.38);}
.eyebrow{color:var(--color-main) !important;}
.btn--primary,.header-cta,.mobile-fixed-cta a{background:var(--color-main) !important;box-shadow:0 14px 30px rgba(74,47,33,.24) !important;}
.btn--secondary{color:var(--color-main) !important;border-color:var(--color-line) !important;background:#fff !important;}
.site-header{background:rgba(255,250,243,.92) !important;border-bottom:1px solid rgba(229,213,197,.9) !important;}
.site-logo--image{min-width:0 !important;}
.site-logo__img{display:block;width:clamp(150px,18vw,230px);height:auto;}
.site-nav{color:#645247 !important;}
.site-nav a::after{background:var(--color-main) !important;}
.hero{background:linear-gradient(135deg,#fffaf3 0%,#f0e2d3 100%) !important;}
.hero__bg{background:radial-gradient(circle at 12% 12%,rgba(201,154,107,.22),transparent 26%),radial-gradient(circle at 92% 15%,rgba(90,56,37,.13),transparent 28%),linear-gradient(180deg,#fffaf3 0%,#f7efe6 100%) !important;}
.hero::before,.hero::after{content:"";position:absolute;z-index:0;border-radius:999px;background:#eadccf;opacity:.9;pointer-events:none;}
.hero::before{width:330px;height:330px;right:-110px;top:-90px;}
.hero::after{width:420px;height:210px;left:-130px;bottom:-80px;}
.hero__inner{z-index:1;}
.hero-brand-card{display:inline-grid;gap:10px;max-width:390px;margin-bottom:20px;padding:14px 18px;background:#fff;border:1px solid var(--color-line);border-radius:24px;box-shadow:var(--shadow-card);}
.hero-brand-card img{width:min(100%,300px);height:auto;}
.hero-brand-card span{display:inline-flex;justify-content:center;align-items:center;width:fit-content;padding:7px 16px;color:#fff;font-weight:900;font-size:14px;line-height:1.35;background:var(--color-main);border-radius:999px;}
.hero h1 span{color:var(--color-main) !important;}
.hero__points li{background:#fff !important;border:1px solid var(--color-line) !important;}
.hero-profile-card{position:relative;z-index:2;display:flex;align-items:center;gap:14px;width:min(100%,430px);margin:0 auto 20px;padding:16px 18px;background:rgba(255,255,255,.94);border:1px solid var(--color-line);border-radius:26px;box-shadow:var(--shadow-card);}
.hero-profile-card img{width:76px;height:76px;object-fit:contain;}
.hero-profile-card div{display:grid;gap:4px;}
.hero-profile-card strong{font-size:21px;color:var(--color-main);}
.hero-profile-card span{font-size:13px;font-weight:800;color:var(--color-sub);}
.hero-collage__main,.hero-collage__sub{border-color:#fff !important;box-shadow:0 20px 46px rgba(83,58,39,.18) !important;}
.floating-proof{background:#fff !important;border:1px solid var(--color-line) !important;color:var(--color-main) !important;}
.intro-photo{background:#fffaf3 !important;}
.intro-photo__inner{border:1px solid var(--color-line);background:#fff !important;box-shadow:var(--shadow-soft);}

/* PROFILE */
.profile{background:linear-gradient(180deg,#f3eadf 0%,#fffaf3 100%) !important;overflow:hidden;}
.profile::before{content:"";position:absolute;right:-120px;top:48px;width:300px;height:300px;background:#e6d7c8;border-radius:48% 52% 45% 55%;opacity:.65;}
.profile-hero{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1.2fr) minmax(220px,.8fr);align-items:center;gap:36px;margin-bottom:34px;padding:38px;background:#fff;border:1px solid var(--color-line);border-radius:var(--radius-xl);box-shadow:var(--shadow-card);}
.profile-hero h2{font-size:clamp(30px,4vw,48px);line-height:1.38;color:var(--color-main);}
.profile-hero p:not(.eyebrow){margin-top:16px;color:var(--color-sub);}
.profile-hero__logo{display:flex;align-items:center;justify-content:center;margin:0;min-height:260px;background:#fffaf3;border:1px dashed #d8c6b5;border-radius:28px;overflow:hidden;}
.profile-hero__logo img{width:min(100%,250px);height:auto;object-fit:contain;}
.profile-grid{position:relative;z-index:1;display:grid;grid-template-columns:1.3fr .85fr .85fr;gap:22px;align-items:stretch;}
.profile-card{position:relative;padding:28px;background:#fff;border:1px solid var(--color-line);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);overflow:hidden;}
.profile-card::before{content:"";position:absolute;right:-42px;top:-52px;width:120px;height:120px;background:#efe2d4;border-radius:50%;}
.profile-card h3{position:relative;margin-bottom:18px;color:var(--color-main);font-size:22px;line-height:1.45;}
.company-list{position:relative;display:grid;gap:0;margin:0;}
.company-list div{display:grid;grid-template-columns:116px minmax(0,1fr);gap:18px;padding:14px 0;border-top:1px solid var(--color-line);}
.company-list div:first-child{border-top:0;}
.company-list dt{color:var(--color-muted);font-size:13px;font-weight:900;letter-spacing:.08em;}
.company-list dd{margin:0;color:var(--color-text);font-weight:800;line-height:1.7;}
.company-list dd span{color:var(--color-sub);font-size:14px;font-weight:700;}
.profile-list{position:relative;display:grid;gap:12px;}
.profile-list li{position:relative;padding-left:22px;color:var(--color-sub);font-weight:800;line-height:1.7;}
.profile-list li::before{content:"";position:absolute;left:0;top:.72em;width:9px;height:9px;background:var(--color-accent);border-radius:50%;}
.profile-list--media li{font-size:18px;color:var(--color-text);}
.profile-mini-logo{position:relative;margin-top:22px;padding:18px;text-align:center;background:#fffaf3;border:1px solid var(--color-line);border-radius:22px;}
.profile-mini-logo img{width:120px;height:auto;}

/* BLOG BUTTON */
.blog .blog-more,.lp-blog-more,.blog-more{display:flex !important;justify-content:center !important;align-items:center !important;width:100% !important;margin:58px auto 0 !important;text-align:center !important;}
.blog-grid + .blog-more,.blog-grid + .lp-blog-more{margin-top:58px !important;}
.blog-more__btn,.lp-blog-more__btn{margin-left:auto !important;margin-right:auto !important;min-width:300px !important;}

/* RESULTS */
.results{background:linear-gradient(180deg,#fffaf3 0%,#f3eadf 100%) !important;}
.results .section__inner{width:min(100%,1080px) !important;max-width:1080px !important;}
.results .result-grid,.lp-results-2x2 .result-grid,.lp-results-grid{display:grid !important;grid-template-columns:repeat(2,minmax(0,1fr)) !important;gap:44px 34px !important;align-items:stretch !important;}
.results .result-card{display:flex !important;flex-direction:column !important;height:100% !important;overflow:hidden !important;background:#fff !important;border:1px solid var(--color-line) !important;border-radius:var(--radius-lg) !important;box-shadow:var(--shadow-card) !important;}
.results .result-card__image{display:flex !important;align-items:center !important;justify-content:center !important;width:100% !important;height:auto !important;aspect-ratio:4/3 !important;padding:0 !important;margin:0 !important;background:#fff !important;overflow:hidden !important;}
.results .result-card__image img{width:100% !important;height:100% !important;object-fit:contain !important;object-position:center !important;transform:none !important;transition:none !important;}
.results .result-card:hover .result-card__image img{transform:none !important;}
.results .result-card__body{flex:1 1 auto !important;display:flex !important;flex-direction:column !important;justify-content:flex-start !important;}
.result-card__label{display:inline-flex;width:fit-content;margin-bottom:8px;padding:6px 12px;color:#fff !important;background:var(--color-main) !important;border-radius:999px;font-size:13px;font-weight:900;}

/* SERVICE */
.service{background:#fffaf3 !important;}
.service-grid--website{grid-template-columns:repeat(3,1fr) !important;}
.service-card{background:#fff !important;border-color:var(--color-line) !important;}
.service-card span{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;margin-bottom:14px;color:#fff;background:var(--color-main);border-radius:50%;font-size:13px;font-weight:900;letter-spacing:.08em;}
.service-card h3{color:var(--color-main) !important;}
.price-note{background:#fff !important;border-color:var(--color-line) !important;}

.site-footer{background:#4a3327 !important;}
.site-footer__logo img{width:min(100%,260px);height:auto;filter:drop-shadow(0 8px 18px rgba(0,0,0,.18));}

@media (max-width: 980px){
  .profile-grid{grid-template-columns:1fr 1fr;}
  .profile-card--overview{grid-column:1/-1;}
  .service-grid--website{grid-template-columns:repeat(2,1fr) !important;}
}
@media (max-width: 760px){
  .site-logo__img{width:155px;}
  .site-nav{display:none !important;}
  .header-cta{min-width:auto;}
  .hero{padding-top:52px !important;}
  .hero-brand-card{margin-inline:auto;}
  .hero-brand-card span{width:100%;font-size:13px;}
  .hero-profile-card{margin-bottom:16px;}
  .profile-hero{grid-template-columns:1fr;padding:26px 20px;}
  .profile-hero__logo{min-height:190px;}
  .profile-hero__logo img{width:190px;}
  .profile-grid{grid-template-columns:1fr;}
  .company-list div{grid-template-columns:1fr;gap:4px;padding:13px 0;}
  .results .result-grid,.lp-results-2x2 .result-grid,.lp-results-grid{grid-template-columns:1fr !important;gap:42px !important;}
  .service-grid--website{grid-template-columns:1fr !important;}
}



/* =========================================================
  DETAIL FIX 2026-07-17
  細部修正：ヒーロー/LOCAL MEDIA/PROFILE/RESULTS/CONTACT/FOOTER/SP余白
========================================================= */

/* CTAボタン：落ち着いたピンク系に変更 */
.btn--primary,
.header-cta,
.mobile-fixed-cta a {
  color: #fff !important;
  background: linear-gradient(135deg, #c9788d 0%, #b96579 100%) !important;
  border-color: transparent !important;
  box-shadow: 0 12px 28px rgba(185, 101, 121, 0.28) !important;
}

.btn--primary:hover,
.btn--primary:focus-visible,
.header-cta:hover,
.header-cta:focus-visible,
.mobile-fixed-cta a:hover,
.mobile-fixed-cta a:focus-visible {
  background: linear-gradient(135deg, #d18498 0%, #bd6a7f 100%) !important;
}

/* Instagram PR / Promotion Movie：追加ロゴカードは非表示 */
.hero-brand-card {
  display: none !important;
}

/* 56.3万・完売の文字を円の中央に */
.floating-proof {
  display: grid !important;
  place-items: center !important;
  align-content: center !important;
  justify-content: center !important;
  text-align: center !important;
  padding: 0 !important;
  box-sizing: border-box !important;
}

.floating-proof strong,
.floating-proof span {
  display: block !important;
  width: 100% !important;
  margin: 0 !important;
  text-align: center !important;
  line-height: 1.15 !important;
}

.floating-proof span {
  margin-top: 6px !important;
}

/* LOCAL MEDIA：白バックと枠を削除 */
.intro-photo {
  background: #fffaf3 !important;
}

.intro-photo__inner {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  border-radius: 0 !important;
  padding: 0 !important;
}

/* RESULTS：各クライアントを1つのカード枠に統一 */
.results .section__inner {
  width: min(100%, 1080px) !important;
  max-width: 1080px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

.results .result-grid,
.results .lp-results-grid,
.lp-results-2x2 .result-grid,
.lp-results-2x2 .lp-results-grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 34px !important;
  align-items: stretch !important;
}

.results .result-card,
.lp-results-2x2 .result-card {
  display: flex !important;
  flex-direction: column !important;
  height: 100% !important;
  overflow: hidden !important;
  background: #fff !important;
  border: 1px solid var(--color-line) !important;
  border-radius: var(--radius-lg) !important;
  box-shadow: var(--shadow-card) !important;
}

.results .result-card__image,
.lp-results-2x2 .result-card__image {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 4 / 3 !important;
  padding: 14px !important;
  overflow: hidden !important;
  background: #fff !important;
  box-sizing: border-box !important;
}

.results .result-card__image img,
.lp-results-2x2 .result-card__image img {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  height: 100% !important;
  max-height: 100% !important;
  object-fit: contain !important;
  object-position: center center !important;
  margin: 0 auto !important;
  transform: none !important;
  transition: none !important;
}

.results .result-card:hover .result-card__image img,
.lp-results-2x2 .result-card:hover .result-card__image img {
  transform: none !important;
}

.results .result-card__body,
.lp-results-2x2 .result-card__body {
  flex: 1 1 auto !important;
  padding: 24px !important;
  background: #fff !important;
  border-top: 1px solid var(--color-line) !important;
}

/* MEDIA POWER：英字見出しを白に */
.authority .eyebrow {
  color: #fff !important;
}

.authority .eyebrow::before {
  background: #fff !important;
}

/* REASON：枠内背景を白に */
.reason-item {
  background: #fff !important;
}

/* CONTACT：Googleフォームを最後まで表示しやすく調整 */
.contact-box {
  overflow: visible !important;
}

.contact-box iframe {
  display: block !important;
  width: 100% !important;
  height: 1850px !important;
  overflow: hidden !important;
}

/* フッター：丸型ロゴを大きめに、下部余白を調整 */
.site-footer {
  padding: 44px 24px 30px !important;
}

.site-footer__logo {
  margin: 0 auto !important;
}

.site-footer__logo img {
  display: block !important;
  width: 150px !important;
  height: 150px !important;
  object-fit: contain !important;
  margin: 0 auto 14px !important;
  border-radius: 50% !important;
}

.site-footer__inner > p:not(.site-footer__logo) {
  margin-top: 6px !important;
}

.site-footer__links {
  margin: 18px 0 14px !important;
}

.site-footer small {
  display: block !important;
  margin-top: 8px !important;
}

/* スマホ：各コンテンツ間の余白を狭める */
@media (max-width: 760px) {
  body {
    padding-bottom: 66px !important;
  }

  .section {
    padding: 46px 18px !important;
  }

  .hero {
    padding: 46px 18px 48px !important;
  }

  .section-heading {
    margin-bottom: 22px !important;
  }

  .intro-photo__inner,
  .profile-hero,
  .message__inner {
    gap: 22px !important;
  }

  .profile-hero {
    padding: 24px 20px !important;
    margin-bottom: 22px !important;
  }

  .profile-grid,
  .blog-grid,
  .problem-grid,
  .result-grid,
  .movie-grid,
  .reel-grid,
  .reason-list,
  .service-grid,
  .voice-grid,
  .flow-list,
  .faq-list {
    gap: 20px !important;
  }

  .blog-more,
  .lp-blog-more {
    margin-top: 30px !important;
  }

  .section-cta {
    margin-top: 26px !important;
    padding: 22px 18px !important;
  }

  .results .result-grid,
  .results .lp-results-grid,
  .lp-results-2x2 .result-grid,
  .lp-results-2x2 .lp-results-grid {
    grid-template-columns: 1fr !important;
    gap: 28px !important;
  }

  .results .result-card__image,
  .lp-results-2x2 .result-card__image {
    padding: 10px !important;
  }

  .contact-box iframe {
    height: 1980px !important;
  }

  .site-footer {
    padding: 36px 18px 22px !important;
  }

  .site-footer__logo img {
    width: 130px !important;
    height: 130px !important;
  }

  .mobile-fixed-cta a {
    min-height: 58px !important;
    font-size: 15px !important;
  }
}



/* =========================================================
  FINAL REPAIR 2026-07-17
  指定箇所だけを最終上書き：反映優先
========================================================= */

/* ヘッダー：横長ロゴへ戻す */
body.iijan-mikawa-lp .site-header .site-logo--image {
  min-width: 0 !important;
  width: auto !important;
}

body.iijan-mikawa-lp .site-header .site-logo__img {
  display: block !important;
  width: clamp(170px, 18vw, 240px) !important;
  max-width: 240px !important;
  height: auto !important;
  object-fit: contain !important;
  border-radius: 0 !important;
}

/* Instagram PR / Promotion Movie：56.3万・完売を円の中央へ */
body.iijan-mikawa-lp .floating-proof {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
  padding: 0 !important;
  box-sizing: border-box !important;
  line-height: 1 !important;
}

body.iijan-mikawa-lp .floating-proof strong,
body.iijan-mikawa-lp .floating-proof span {
  display: block !important;
  width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  text-align: center !important;
  line-height: 1.12 !important;
  transform: translateY(8px) !important;
}

body.iijan-mikawa-lp .floating-proof strong {
  margin-top: 0 !important;
  margin-bottom: 6px !important;
}

body.iijan-mikawa-lp .floating-proof span {
  margin-top: 0 !important;
}

/* LOCAL MEDIA：白バック・枠・影を完全に削除 */
body.iijan-mikawa-lp .intro-photo {
  background: #fffaf3 !important;
}

body.iijan-mikawa-lp .intro-photo__inner {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  outline: none !important;
  border-radius: 0 !important;
  padding: 0 !important;
}

body.iijan-mikawa-lp .intro-photo figure {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  outline: none !important;
}

/* RESULTS：画像と本文を分けず、各クライアントを1つのカード枠にする */
body.iijan-mikawa-lp .results .section__inner {
  width: min(100%, 1080px) !important;
  max-width: 1080px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

body.iijan-mikawa-lp .results .result-grid,
body.iijan-mikawa-lp .results .lp-results-grid,
body.iijan-mikawa-lp .lp-results-2x2 .result-grid,
body.iijan-mikawa-lp .lp-results-2x2 .lp-results-grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 34px !important;
  align-items: stretch !important;
  justify-items: stretch !important;
}

body.iijan-mikawa-lp .results .result-card,
body.iijan-mikawa-lp .lp-results-2x2 .result-card {
  display: flex !important;
  flex-direction: column !important;
  height: 100% !important;
  overflow: hidden !important;
  background: #fff !important;
  border: 1px solid #eadfce !important;
  border-radius: 28px !important;
  box-shadow: 0 18px 46px rgba(74, 47, 33, 0.10) !important;
  padding: 0 !important;
}

/* 以前の「子divごとに枠を付ける指定」を打ち消す */
body.iijan-mikawa-lp .results .result-card > div,
body.iijan-mikawa-lp .lp-results-2x2 .result-card > div {
  border: none !important;
  box-shadow: none !important;
  border-radius: 0 !important;
  margin: 0 !important;
  max-width: none !important;
}

/* 画像枠 */
body.iijan-mikawa-lp .results .result-card__image,
body.iijan-mikawa-lp .lp-results-2x2 .result-card__image {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 4 / 3 !important;
  padding: 14px !important;
  background: #fff !important;
  overflow: hidden !important;
  box-sizing: border-box !important;
}

/* 画像は上下左右を切らずに全体表示 */
body.iijan-mikawa-lp .results .result-card__image img,
body.iijan-mikawa-lp .lp-results-2x2 .result-card__image img {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  height: 100% !important;
  max-height: 100% !important;
  object-fit: contain !important;
  object-position: center center !important;
  transform: none !important;
  transition: none !important;
}

body.iijan-mikawa-lp .results .result-card:hover .result-card__image img,
body.iijan-mikawa-lp .lp-results-2x2 .result-card:hover .result-card__image img {
  transform: none !important;
}

body.iijan-mikawa-lp .results .result-card__body,
body.iijan-mikawa-lp .lp-results-2x2 .result-card__body {
  flex: 1 1 auto !important;
  padding: 24px !important;
  background: #fff !important;
  border-top: 1px solid #eadfce !important;
}

/* MEDIA POWER：英字ラベルと横線を白に */
body.iijan-mikawa-lp .authority .eyebrow,
body.iijan-mikawa-lp .authority .section-heading .eyebrow,
body.iijan-mikawa-lp section.authority p.eyebrow {
  color: #fff !important;
}

body.iijan-mikawa-lp .authority .eyebrow::before,
body.iijan-mikawa-lp section.authority p.eyebrow::before {
  background: #fff !important;
  color: #fff !important;
}

/* CONTACT：フォームをスクロールなしで最後まで表示しやすくする */
body.iijan-mikawa-lp .contact-box {
  overflow: visible !important;
  max-height: none !important;
}

body.iijan-mikawa-lp .contact-box iframe {
  display: block !important;
  width: 100% !important;
  height: 2400px !important;
  min-height: 2400px !important;
  max-height: none !important;
  overflow: hidden !important;
}

/* 無料相談ボタン：落ち着いたピンク系で目立たせる */
body.iijan-mikawa-lp .btn--primary,
body.iijan-mikawa-lp .header-cta,
body.iijan-mikawa-lp .mobile-fixed-cta a {
  color: #fff !important;
  background: linear-gradient(135deg, #c77b8f 0%, #b8647b 100%) !important;
  border-color: transparent !important;
  box-shadow: 0 14px 30px rgba(184, 100, 123, 0.30) !important;
}

body.iijan-mikawa-lp .btn--primary:hover,
body.iijan-mikawa-lp .btn--primary:focus-visible,
body.iijan-mikawa-lp .header-cta:hover,
body.iijan-mikawa-lp .header-cta:focus-visible,
body.iijan-mikawa-lp .mobile-fixed-cta a:hover,
body.iijan-mikawa-lp .mobile-fixed-cta a:focus-visible {
  background: linear-gradient(135deg, #d28a9d 0%, #bf6f84 100%) !important;
}

/* フッター：丸型ロゴ、コピーライト下余白を縮小 */
body.iijan-mikawa-lp .site-footer {
  padding: 42px 24px 18px !important;
  margin-bottom: 0 !important;
}

body.iijan-mikawa-lp .site-footer__inner {
  padding-bottom: 0 !important;
  margin-bottom: 0 !important;
}

body.iijan-mikawa-lp .site-footer__logo {
  margin: 0 auto 10px !important;
}

body.iijan-mikawa-lp .site-footer__logo img {
  display: block !important;
  width: 150px !important;
  height: 150px !important;
  max-width: 150px !important;
  object-fit: contain !important;
  margin: 0 auto !important;
  border-radius: 50% !important;
}

body.iijan-mikawa-lp .site-footer__links {
  margin: 16px 0 10px !important;
}

body.iijan-mikawa-lp .site-footer small {
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
  line-height: 1.4 !important;
}

/* スマホ：各コンテンツ間の余白を狭める */
@media (max-width: 760px) {
  body.iijan-mikawa-lp .section {
    padding-top: 38px !important;
    padding-bottom: 38px !important;
  }

  body.iijan-mikawa-lp .hero {
    padding-top: 38px !important;
    padding-bottom: 42px !important;
  }

  body.iijan-mikawa-lp .section-heading {
    margin-bottom: 20px !important;
  }

  body.iijan-mikawa-lp .hero__lead {
    margin-top: 16px !important;
  }

  body.iijan-mikawa-lp .hero__actions,
  body.iijan-mikawa-lp .hero__points {
    margin-top: 22px !important;
  }

  body.iijan-mikawa-lp .intro-photo__inner,
  body.iijan-mikawa-lp .profile-hero,
  body.iijan-mikawa-lp .message__inner,
  body.iijan-mikawa-lp .authority__inner {
    gap: 22px !important;
  }

  body.iijan-mikawa-lp .blog-grid,
  body.iijan-mikawa-lp .problem-grid,
  body.iijan-mikawa-lp .result-grid,
  body.iijan-mikawa-lp .movie-grid,
  body.iijan-mikawa-lp .reel-grid,
  body.iijan-mikawa-lp .reason-list,
  body.iijan-mikawa-lp .service-grid,
  body.iijan-mikawa-lp .voice-grid,
  body.iijan-mikawa-lp .flow-list,
  body.iijan-mikawa-lp .faq-list {
    gap: 20px !important;
  }

  body.iijan-mikawa-lp .blog-more,
  body.iijan-mikawa-lp .lp-blog-more {
    margin-top: 28px !important;
  }

  body.iijan-mikawa-lp .section-cta {
    margin-top: 24px !important;
    padding: 20px 18px !important;
  }

  body.iijan-mikawa-lp .results .result-grid,
  body.iijan-mikawa-lp .results .lp-results-grid,
  body.iijan-mikawa-lp .lp-results-2x2 .result-grid,
  body.iijan-mikawa-lp .lp-results-2x2 .lp-results-grid {
    grid-template-columns: 1fr !important;
    gap: 26px !important;
  }

  body.iijan-mikawa-lp .results .result-card__image,
  body.iijan-mikawa-lp .lp-results-2x2 .result-card__image {
    padding: 10px !important;
  }

  body.iijan-mikawa-lp .floating-proof strong,
  body.iijan-mikawa-lp .floating-proof span {
    transform: translateY(6px) !important;
  }

  body.iijan-mikawa-lp .contact-box iframe {
    height: 2600px !important;
    min-height: 2600px !important;
  }

  body.iijan-mikawa-lp .site-header .site-logo__img {
    width: 155px !important;
    max-width: 155px !important;
  }

  body.iijan-mikawa-lp .site-footer {
    padding: 32px 18px 14px !important;
  }

  body.iijan-mikawa-lp .site-footer__logo img {
    width: 128px !important;
    height: 128px !important;
    max-width: 128px !important;
  }

  body.iijan-mikawa-lp .mobile-fixed-cta a {
    min-height: 58px !important;
    font-size: 15px !important;
  }
}



/* =========================================================
  FIX ONLY 01: Instagram PR / Promotion Movie 円内文字位置
========================================================= */

body.iijan-mikawa-lp .floating-proof {
  position: absolute !important;
  display: block !important;
  padding: 0 !important;
  text-align: center !important;
  box-sizing: border-box !important;
}

body.iijan-mikawa-lp .floating-proof__inner {
  position: absolute !important;
  top: 55% !important;
  left: 50% !important;
  width: 100% !important;
  padding: 0 8px !important;
  transform: translate(-50%, -50%) !important;
  text-align: center !important;
  box-sizing: border-box !important;
}

body.iijan-mikawa-lp .floating-proof__inner strong,
body.iijan-mikawa-lp .floating-proof__inner span {
  display: block !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  text-align: center !important;
  transform: none !important;
}

body.iijan-mikawa-lp .floating-proof__inner strong {
  line-height: 1.05 !important;
  margin-bottom: 7px !important;
}

body.iijan-mikawa-lp .floating-proof__inner span {
  line-height: 1.2 !important;
}

@media (max-width: 760px) {
  body.iijan-mikawa-lp .floating-proof__inner {
    top: 56% !important;
  }

  body.iijan-mikawa-lp .floating-proof__inner strong {
    margin-bottom: 5px !important;
  }
}


/* =========================================================
  FIX ONLY 02: 円内の小さな文字を途中改行させない
========================================================= */

body.iijan-mikawa-lp .floating-proof__inner {
  width: 100% !important;
  padding-left: 4px !important;
  padding-right: 4px !important;
}

body.iijan-mikawa-lp .floating-proof__inner span {
  white-space: nowrap !important;
  word-break: keep-all !important;
  overflow-wrap: normal !important;
  line-break: strict !important;
  letter-spacing: 0 !important;
  font-size: clamp(11px, 1.15vw, 14px) !important;
}

@media (max-width: 760px) {
  body.iijan-mikawa-lp .floating-proof__inner span {
    white-space: nowrap !important;
    word-break: keep-all !important;
    font-size: 11px !important;
    letter-spacing: -0.02em !important;
  }
}

/* ヒーロー見出しの途中改行防止 */
body.iijan-mikawa-lp .hero h1 {
  font-size: clamp(32px, 5vw, 64px) !important;
  line-height: 1.25 !important;
  letter-spacing: -0.04em !important;
}

body.iijan-mikawa-lp .hero h1 .hero-title-line {
  display: inline-block !important;
}

body.iijan-mikawa-lp .hero h1 .hero-title-line--nowrap {
  white-space: nowrap !important;
  word-break: keep-all !important;
  overflow-wrap: normal !important;
}

@media (max-width: 760px) {
  body.iijan-mikawa-lp .hero h1 {
    font-size: clamp(30px, 8.3vw, 42px) !important;
    line-height: 1.28 !important;
    letter-spacing: -0.06em !important;
  }
}

@media (max-width: 390px) {
  body.iijan-mikawa-lp .hero h1 {
    font-size: 30px !important;
    letter-spacing: -0.07em !important;
  }
}



/* ヒーロー見出し：さらに小さく調整 */
body.iijan-mikawa-lp .hero h1,
body.iijan-mikawa-lp .hero-title-fixed {
  font-size: clamp(30px, 3.1vw, 44px) !important;
  line-height: 1.32 !important;
  letter-spacing: -0.04em !important;
  max-width: 100% !important;
}

body.iijan-mikawa-lp .hero-title-fixed .hero-title-line {
  display: inline-block !important;
}

body.iijan-mikawa-lp .hero-title-fixed .hero-title-line--nowrap {
  white-space: nowrap !important;
  word-break: keep-all !important;
  overflow-wrap: normal !important;
}

@media (max-width: 1024px) {
  body.iijan-mikawa-lp .hero h1,
  body.iijan-mikawa-lp .hero-title-fixed {
    font-size: clamp(28px, 3.8vw, 38px) !important;
    line-height: 1.34 !important;
    letter-spacing: -0.05em !important;
  }
}

@media (max-width: 760px) {
  body.iijan-mikawa-lp .hero h1,
  body.iijan-mikawa-lp .hero-title-fixed {
    font-size: clamp(23px, 6.2vw, 30px) !important;
    line-height: 1.38 !important;
    letter-spacing: -0.055em !important;
  }
}

@media (max-width: 390px) {
  body.iijan-mikawa-lp .hero h1,
  body.iijan-mikawa-lp .hero-title-fixed {
    font-size: 23px !important;
    line-height: 1.4 !important;
    letter-spacing: -0.06em !important;
  }
}