/* Figma-accurate middle LP sections: cases / reasons / comparison / CTA1 / recommendations */

.cases,
.reasons,
.cta-panel--first,
.recommendations {
  box-sizing: border-box;
}


/* ---------- 導入事例 (PC) ---------- */
.cases {
  position: relative;
  height: calc(2412 / 14.4 * 1cqw);
  min-height: 0;
  padding: 0;
  overflow: hidden;
  background: #036533 url("../assets/case-study-bg.svg") center / cover no-repeat;
  color: #fff;
}

.cases .section-heading {
  position: absolute;
  top: calc(123 / 14.4 * 1cqw);
  left: calc(120 / 14.4 * 1cqw);
  width: calc(1200 / 14.4 * 1cqw);
  height: calc(213 / 14.4 * 1cqw);
  margin: 0;
  color: #fff;
  text-align: center;
}

.cases .section-heading::after {
  position: absolute;
  top: calc(135 / 14.4 * 1cqw);
  left: 50%;
  width: calc(657 / 14.4 * 1cqw);
  height: calc(2 / 14.4 * 1cqw);
  background: rgba(255,255,255,.8);
  content: "";
  transform: translateX(-50%);
}

.cases .section-heading__eyebrow {
  margin: 0;
  color: #fff;
  font-size: calc(27 / 14.4 * 1cqw);
  font-weight: 700;
  line-height: calc(39 / 27);
}

.cases .section-heading h2 {
  margin: calc(9 / 14.4 * 1cqw) 0 0;
  color: #fff;
  font-size: calc(42 / 14.4 * 1cqw);
  font-weight: 500;
  letter-spacing: .04em;
  line-height: 1.35;
}

.cases .section-heading > p:last-child {
  position: absolute;
  top: calc(159 / 14.4 * 1cqw);
  left: 0;
  width: 100%;
  margin: 0;
  color: #fff;
  font-size: calc(18 / 14.4 * 1cqw);
  font-weight: 500;
  letter-spacing: .04em;
  line-height: 1.5;
}
.cases-copy-sp { display:none; }

.case-list {
  position: absolute;
  top: calc(450 / 14.4 * 1cqw);
  left: 0;
  display: flex;
  width: 100%;
  flex-direction: column;
  gap: calc(60 / 14.4 * 1cqw);
}

.case-card {
  position: relative;
  isolation: isolate;
  display: block;
  width: 100%;
  height: calc(553 / 14.4 * 1cqw);
  min-height: 0;
}

.case-card__photo {
  position: absolute;
  top: 0;
  left: 0;
  width: calc(829 / 14.4 * 1cqw);
  height: calc(535 / 14.4 * 1cqw);
  overflow: hidden;
  background-color: transparent;
  background-image: url("../assets/case/figma-case1.png");
  background-position: calc(-50 / 14.4 * 1cqw) calc(-119 / 14.4 * 1cqw);
  background-size: calc(879 / 14.4 * 1cqw) calc(654 / 14.4 * 1cqw);
  background-repeat: no-repeat;
}

.case-card--02 .case-card__photo {
  background-image: url("../assets/case/figma-case2.png");
  background-position: calc(-56 / 14.4 * 1cqw) calc(-55 / 14.4 * 1cqw);
  background-size: calc(885 / 14.4 * 1cqw) calc(590 / 14.4 * 1cqw);
}

.case-card--03 .case-card__photo {
  background-image: url("../assets/case/figma-case3.png");
  background-position: calc(-166 / 14.4 * 1cqw) calc(-128 / 14.4 * 1cqw);
  background-size: calc(995 / 14.4 * 1cqw) calc(663 / 14.4 * 1cqw);
}

.case-card__photo::after {
  position: absolute;
  right: auto;
  bottom: 0;
  left: calc(153 / 14.4 * 1cqw);
  width: calc(529 / 14.4 * 1cqw);
  height: calc(59 / 14.4 * 1cqw);
  background: #004c2c;
  clip-path: polygon(10% 0,100% 0,100% 100%,0 100%);
  content: "";
}

.case-card__photo > span {
  position: absolute;
  top: calc(10 / 14.4 * 1cqw);
  left: calc(721 / 14.4 * 1cqw);
  z-index: 6;
  display: flex;
  width: calc(108 / 14.4 * 1cqw);
  height: calc(55 / 14.4 * 1cqw);
  gap: calc(4 / 14.4 * 1cqw);
  align-items: center;
  color: #fff;
  font-family: "DIN Condensed","Arial Narrow","Helvetica Neue Condensed",sans-serif;
  font-size: calc(20 / 14.4 * 1cqw);
  font-weight: 700;
  letter-spacing: .18em;
  line-height: 1;
  text-shadow: 0 calc(1 / 14.4 * 1cqw) calc(4.5 / 14.4 * 1cqw) rgba(0,0,0,.25);
  white-space: nowrap;
}

.case-card__photo > span b {
  font-family: "DIN 2014","DIN Alternate",Inter,sans-serif;
  font-size: calc(44 / 14.4 * 1cqw);
  letter-spacing: 0;
}

.case-card__photo > div {
  position: absolute;
  right: auto;
  bottom: calc(11 / 14.4 * 1cqw);
  left: calc(365 / 14.4 * 1cqw);
  z-index: 2;
  display: flex;
  width: calc(298 / 14.4 * 1cqw);
  gap: calc(19 / 14.4 * 1cqw);
  align-items: end;
  color: #ddd;
  white-space: nowrap;
}

.case-card--02 .case-card__photo > div {
  bottom: calc(14 / 14.4 * 1cqw);
  left: calc(309 / 14.4 * 1cqw);
  width: calc(377 / 14.4 * 1cqw);
}
.case-card--02 .case-card__photo > div strong {
  flex: 0 0 calc(192 / 14.4 * 1cqw);
  width: calc(192 / 14.4 * 1cqw);
}
.case-card--02 .case-card__photo > div small {
  position: absolute;
  top: calc(4 / 14.4 * 1cqw);
  left: calc(192 / 14.4 * 1cqw);
  width: calc(185 / 14.4 * 1cqw);
  white-space: normal;
}
.case-card--03 .case-card__photo > div {
  bottom: calc(14 / 14.4 * 1cqw);
  left: calc(270 / 14.4 * 1cqw);
  width: calc(416 / 14.4 * 1cqw);
}
.case-card--03 .case-card__photo > div strong {
  flex: 0 0 calc(240 / 14.4 * 1cqw);
  width: calc(240 / 14.4 * 1cqw);
}
.case-card--03 .case-card__photo > div small {
  position: absolute;
  top: calc(4 / 14.4 * 1cqw);
  left: calc(231 / 14.4 * 1cqw);
  width: calc(185 / 14.4 * 1cqw);
  white-space: normal;
}

.case-card__photo strong {
  font-size: calc(24 / 14.4 * 1cqw);
  font-weight: 500;
  letter-spacing: .03em;
  line-height: 1.4;
}

.case-card__photo small {
  padding-bottom: calc(3 / 14.4 * 1cqw);
  font-size: calc(13 / 14.4 * 1cqw);
  font-weight: 400;
  line-height: 1.3;
}
.case-card__photo small.case-card__meta { padding:0; font-size:0; line-height:0; text-align:center; }
.case-card__photo small.case-card__meta span { display:block; font-size:calc(14 / 14.4 * 1cqw); line-height:1; }
.case-card__photo small.case-card__meta span + span { font-size:calc(12 / 14.4 * 1cqw); }

.case-card__body {
  position: absolute;
  top: calc(69 / 14.4 * 1cqw);
  left: calc(682 / 14.4 * 1cqw);
  z-index: 3;
  width: calc(692 / 14.4 * 1cqw);
  height: calc(484 / 14.4 * 1cqw);
  margin: 0;
  padding: 0;
  border: 0;
  background: rgba(3,101,51,.66);
  box-shadow: none;
  color: #fff;
}

.case-card__results {
  position: absolute;
  top: calc(3 / 14.4 * 1cqw);
  left: calc(20 / 14.4 * 1cqw);
  display: grid;
  width: calc(511 / 14.4 * 1cqw);
  height: calc(136 / 14.4 * 1cqw);
  min-height: 0;
  grid-template-columns: calc(234 / 14.4 * 1cqw) calc(214 / 14.4 * 1cqw);
  column-gap: calc(63 / 14.4 * 1cqw);
  align-items: start;
  color: var(--orange);
}

.case-card__results::after {
  position: absolute;
  top: calc(35 / 14.4 * 1cqw);
  left: calc(277 / 14.4 * 1cqw);
  width: calc(2 / 14.4 * 1cqw);
  height: calc(92 / 14.4 * 1cqw);
  background: var(--orange);
  content: "";
  transform: rotate(31deg);
  transform-origin: center;
}

.case-card__results > div {
  color: var(--orange);
  text-align: right;
}

.case-card__results strong,
.case-card__results b,
.case-card__results i,
.case-card__results small {
  font-style: normal;
  font-weight: 700;
}

.case-card__results strong {
  display: block;
  color: var(--orange);
  line-height: 1.55;
  white-space: nowrap;
}

.case-card__results b { font-family: Inter,sans-serif; font-size: calc(64 / 14.4 * 1cqw); }
.case-card__results i { font-size: calc(32 / 14.4 * 1cqw); }
.case-card__results small { margin-right: .12em; font-size: calc(17 / 14.4 * 1cqw); }
.case-card__results > div > span {
  display: block;
  margin-top: calc(-23 / 14.4 * 1cqw);
  color: #fff;
  font-size: calc(20 / 14.4 * 1cqw);
  font-weight: 700;
  line-height: 1.56;
}

.case-card__results .case-card__result-label {
  padding-top: calc(20 / 14.4 * 1cqw);
  text-align: center;
}
.case-card__results .case-card__result-label > span {
  margin: 0;
  font-size: calc(20 / 14.4 * 1cqw);
}
.case-card__results .case-card__result-label b {
  color: var(--orange);
  font-family: "Noto Sans JP",sans-serif;
  font-size: calc(48 / 14.4 * 1cqw);
  line-height: 1.15;
}

.case-card__body ul {
  position: absolute;
  top: calc(149 / 14.4 * 1cqw);
  left: calc(38 / 14.4 * 1cqw);
  display: block;
  width: calc(461 / 14.4 * 1cqw);
  margin: 0;
  padding: 0;
  color: #fff;
  font-family: "Hiragino Sans","Hiragino Kaku Gothic ProN","Noto Sans JP",sans-serif;
  font-size: calc(18 / 14.4 * 1cqw);
  font-weight: 600;
  line-height: 2.3;
  list-style: none;
}

.case-card__body li {
  position: relative;
  padding-left: calc(27 / 14.4 * 1cqw);
}

.case-card__body li::before {
  position: absolute;
  top: calc(9.5 / 14.4 * 1cqw);
  left: 0;
  width: calc(18 / 14.4 * 1cqw);
  height: calc(19.5 / 14.4 * 1cqw);
  background: center / 100% 100% no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='19.5' viewBox='0 0 18 19.5'%3E%3Crect x='.75' y='1.75' width='14.5' height='14.5' fill='white' stroke='%23f5aa17' stroke-width='1.5'/%3E%3Cpath d='M1.4 7.9 6.5 14 17.1.8' fill='none' stroke='%23f5aa17' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  content: "";
}

.case-card__body p {
  position: absolute;
  top: calc(294 / 14.4 * 1cqw);
  left: calc(38 / 14.4 * 1cqw);
  width: calc(599 / 14.4 * 1cqw);
  margin: 0;
  color: #fff;
  font-size: calc(14 / 14.4 * 1cqw);
  font-weight: 400;
  letter-spacing: .04em;
  line-height: 1.5;
}
.case-card--02 .case-card__body p { top: calc(335 / 14.4 * 1cqw); }

/* ---------- 選ばれる理由 + 比較表 (PC) ---------- */
.reasons {
  position: relative;
  height: calc(2090 / 14.4 * 1cqw);
  min-height: 0;
  padding: 0;
  overflow: hidden;
  background: #fff;
  font-family: "Hiragino Sans","Noto Sans JP",sans-serif;
}

.reasons::before {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: calc(1731 / 14.4 * 1cqw);
  background: url("../assets/reasons/background-pc.png") top center / 100% 100% no-repeat;
  content: "";
}

.reasons__inner {
  position: absolute;
  top: calc(127 / 14.4 * 1cqw);
  left: calc(172 / 14.4 * 1cqw);
  z-index: 1;
  width: calc(1028 / 14.4 * 1cqw) !important;
  height: calc(947 / 14.4 * 1cqw);
  margin: 0;
}

.reasons .section-heading {
  position: relative;
  left: calc(6 / 14.4 * 1cqw);
  width: calc(875 / 14.4 * 1cqw);
  height: calc(112 / 14.4 * 1cqw);
  text-align: left;
}

.reasons .section-heading::after {
  position: absolute;
  top: calc(14 / 14.4 * 1cqw);
  left: calc(346 / 14.4 * 1cqw);
  width: calc(529 / 14.4 * 1cqw);
  height: calc(83 / 14.4 * 1cqw);
  background: url("../assets/reasons/heading-line-pc.png") left top / 100% 100% no-repeat;
  z-index: 1;
  content: "";
  opacity: 1;
}

.reasons .section-heading h2 {
  position: relative;
  z-index: 2;
  color: #02361b;
  font-size: calc(42 / 14.4 * 1cqw);
  font-weight: 700;
  letter-spacing: .08em;
  line-height: 1.2;
}
.reasons .section-heading h2 span { font-size: calc(50 / 14.4 * 1cqw); }

.reason-grid {
  position: absolute;
  isolation: isolate;
  top: calc(179 / 14.4 * 1cqw);
  left: 0;
  display: grid;
  width: calc(1028 / 14.4 * 1cqw);
  height: calc(768 / 14.4 * 1cqw);
  margin: 0;
  padding: 0;
  grid-template-columns: repeat(4,calc(240 / 14.4 * 1cqw)) !important;
  grid-template-rows: repeat(3,calc(240 / 14.4 * 1cqw));
  grid-auto-rows: calc(240 / 14.4 * 1cqw) !important;
  gap: calc(24 / 14.4 * 1cqw);
  list-style: none;
}

.reason-grid li {
  position: relative;
  z-index: 1;
  isolation: isolate;
  display: block;
  min-height: 0 !important;
  padding: 0;
  overflow: hidden;
  border: calc(2 / 14.4 * 1cqw) solid #e9e9e9 !important;
  border-radius: calc(5 / 14.4 * 1cqw) !important;
  background: #fff;
  box-shadow: 0 0 calc(26.5 / 14.4 * 1cqw) rgba(0,0,0,.05) !important;
  color: #1a1a1a;
  text-align: center;
}

.reason-grid li b,
.reason-grid li small {
  font-style: normal;
  font-weight: 600;
}
.reason-grid li em { color: var(--green); font-style:normal; font-weight:700; }
.reason-grid li small { display:inline; margin:0; color:#1a1a1a; }
.reason-grid li b { z-index:3; }
.reason-grid li img { position: absolute; z-index:2; display: block; object-fit: contain; }

.reason-grid__lead {
  grid-column: span 2;
  width: calc(500 / 14.4 * 1cqw);
  background: #fff !important;
  color: #1a1a1a !important;
  text-align: center !important;
}
.reason-grid__lead b {
  position: absolute;
  top: calc(39 / 14.4 * 1cqw);
  left: 0;
  width: 100%;
  font-size: calc(36 / 14.4 * 1cqw);
  line-height: 1.3;
}
.reason-grid__lead em { font-size: calc(57 / 14.4 * 1cqw); line-height: 1.1; }
.reason-grid li.reason-grid__lead small { font-size:calc(33 / 14.4 * 1cqw); line-height:1.6; }

.reason-grid__logistics img { top: calc(19 / 14.4 * 1cqw); left: calc(31 / 14.4 * 1cqw); width: calc(177 / 14.4 * 1cqw); height: calc(133 / 14.4 * 1cqw); }
.reason-grid__logistics,
.reason-grid__free,
.reason-grid__release,
.reason-grid__support { transform:translateX(calc(-4 / 14.4 * 1cqw)); }
.reason-grid__logistics b { position:absolute; top:calc(132 / 14.4 * 1cqw); left:0; width:100%; font-size:calc(16 / 14.4 * 1cqw); line-height:1.45; }
.reason-grid__logistics em { font-size:calc(40 / 14.4 * 1cqw); }

.reason-grid__free b { position:absolute; top:calc(28 / 14.4 * 1cqw); left:0; width:100%; font-size:calc(16 / 14.4 * 1cqw); line-height:1.35; }
.reason-grid__free em { font-size:calc(40 / 14.4 * 1cqw); }
.reason-grid__free img { top:calc(107 / 14.4 * 1cqw); left:calc(62 / 14.4 * 1cqw); width:calc(119 / 14.4 * 1cqw); height:calc(119 / 14.4 * 1cqw); }

.reason-grid__review img { top:calc(20 / 14.4 * 1cqw); left:calc(49 / 14.4 * 1cqw); width:calc(133 / 14.4 * 1cqw); height:calc(99 / 14.4 * 1cqw); }
.reason-grid__review b { position:absolute; top:calc(126 / 14.4 * 1cqw); left:0; width:100%; font-size:calc(16 / 14.4 * 1cqw); line-height:1.45; }
.reason-grid__review em { font-size:calc(40 / 14.4 * 1cqw); }
.reason-grid li.reason-grid__review small { font-size:calc(16 / 14.4 * 1cqw); line-height:1.6; }

.reason-grid__release b { position:absolute; top:calc(41 / 14.4 * 1cqw); left:0; width:100%; font-size:calc(31 / 14.4 * 1cqw); line-height:1.37; }
.reason-grid__release em { font-size:calc(42 / 14.4 * 1cqw); }
.reason-grid li.reason-grid__release small { font-size:calc(31 / 14.4 * 1cqw); line-height:1.6; }

.reason-grid__map,
.reason-grid__finance,
.reason-grid__support { width:calc(500 / 14.4 * 1cqw); grid-column: span 2; }
.reason-grid__map img { top:calc(24 / 14.4 * 1cqw); left:calc(83 / 14.4 * 1cqw); width:calc(200 / 14.4 * 1cqw); height:calc(204 / 14.4 * 1cqw); }
.reason-grid__map b { position:absolute; top:calc(24 / 14.4 * 1cqw); left:calc(322 / 14.4 * 1cqw); width:calc(112 / 14.4 * 1cqw); font-size:0; line-height:0; white-space:nowrap; }
.reason-grid__map em { display:block; font-size:calc(48 / 14.4 * 1cqw); line-height:1.17; letter-spacing:calc(1.92 / 14.4 * 1cqw); }
.reason-grid li.reason-grid__map small { display:block; font-size:calc(16 / 14.4 * 1cqw); line-height:1.8; }

.reason-grid__finance b { position:absolute; top:calc(50 / 14.4 * 1cqw); left:calc(48 / 14.4 * 1cqw); width:calc(176 / 14.4 * 1cqw); font-size:calc(27 / 14.4 * 1cqw); line-height:1.25; }
.reason-grid__finance em { font-size:calc(42 / 14.4 * 1cqw); }
.reason-grid li.reason-grid__finance small { font-size:calc(27 / 14.4 * 1cqw); line-height:1.52; }
.reason-grid__finance img { top:calc(49 / 14.4 * 1cqw); left:calc(299 / 14.4 * 1cqw); width:calc(137 / 14.4 * 1cqw); height:calc(139 / 14.4 * 1cqw); }

.reason-grid__support b { position:absolute; top:calc(60 / 14.4 * 1cqw); left:0; width:100%; font-size:calc(36 / 14.4 * 1cqw); line-height:1.35; }
.reason-grid__support em { font-size:calc(57 / 14.4 * 1cqw); }

.comparison {
  position: absolute;
  top: calc(1290 / 14.4 * 1cqw);
  left: 0;
  z-index: 1;
  width: 100%;
  height: calc(589 / 14.4 * 1cqw);
  margin: 0;
}
.comparison::before { display:none; }
.comparison .section-heading { position:static; width:100%; height:auto; text-align:center; }
.comparison .section-heading::after { display:none; }
.comparison .section-heading h2 { color:#02361b; font-size:calc(42 / 14.4 * 1cqw); line-height:1.4; }
.comparison .section-heading h2 span { display:inline; font-size:calc(50 / 14.4 * 1cqw); }
.comparison__scroll {
  position: absolute;
  top: calc(115 / 14.4 * 1cqw);
  left: calc(244 / 14.4 * 1cqw);
  width: calc(952 / 14.4 * 1cqw);
  height: calc(474 / 14.4 * 1cqw);
  margin: 0;
  padding: 0;
  overflow: visible;
}
.comparison__scroll::before {
  position: absolute;
  top: 0;
  left: calc(214 / 14.4 * 1cqw);
  z-index: 2;
  box-sizing: border-box;
  width: calc(260 / 14.4 * 1cqw);
  height: calc(474 / 14.4 * 1cqw);
  border: calc(3 / 14.4 * 1cqw) solid var(--green);
  border-radius: calc(15 / 14.4 * 1cqw);
  background: transparent;
  content: "";
}
.comparison table {
  position: absolute;
  top: calc(25 / 14.4 * 1cqw);
  left: 0;
  z-index: 1;
  width: calc(952 / 14.4 * 1cqw);
  min-width: 0;
  height: calc(437 / 14.4 * 1cqw);
  table-layout: fixed;
  border-spacing: 0;
  border-collapse: separate;
  border-radius: calc(20 / 14.4 * 1cqw);
  background: #fff;
  box-shadow: 0 0 calc(9 / 14.4 * 1cqw) rgba(0,0,0,.25);
  overflow: hidden;
  font-size: calc(16 / 14.4 * 1cqw);
  text-align: center;
}
.comparison tr > :nth-child(1) { width:calc(214 / 14.4 * 1cqw); }
.comparison tr > :nth-child(2) { width:calc(260 / 14.4 * 1cqw); }
.comparison tr > :nth-child(3) { width:calc(255 / 14.4 * 1cqw); }
.comparison tr > :nth-child(4) { width:calc(223 / 14.4 * 1cqw); }
.comparison th,.comparison td { height:calc(77 / 14.4 * 1cqw); padding:calc(8 / 14.4 * 1cqw); border-bottom:1px solid #d9d9d9; vertical-align:middle; }
.comparison thead th { height:calc(120 / 14.4 * 1cqw); background:#bdbdbd; color:#111; font-size:calc(16 / 14.4 * 1cqw); }
.comparison tbody th { color:var(--green); font-size:calc(19 / 14.4 * 1cqw); }
.comparison td b {
  display: block;
  width: calc(25 / 14.4 * 1cqw);
  height: calc(25 / 14.4 * 1cqw);
  margin: 0 auto;
  border: 0;
  border-radius: 0;
  color: #777;
  font-size: calc(25 / 14.4 * 1cqw);
  font-weight: 400;
  line-height: 1;
}
.comparison td.comparison__tralico b { color:var(--green); }
.comparison td:nth-child(4) b { width:calc(20 / 14.4 * 1cqw); height:calc(25 / 14.4 * 1cqw); font-size:calc(25 / 14.4 * 1cqw); }
.comparison__tralico { position:relative; z-index:3; border:0; background:#ecf5f0; color:var(--green); font-weight:700; }
.comparison thead .comparison__tralico { border:0; border-radius:0; background:#ecf5f0; }
.comparison tbody tr:last-child .comparison__tralico { border:0; border-radius:0; }
.comparison__tralico img { width:calc(207 / 14.4 * 1cqw); vertical-align:middle; }

/* ---------- CTA1 (PC) ---------- */
.cta-panel--first {
  position: relative;
  height: calc(740 / 14.4 * 1cqw);
  min-height: 0;
  padding: 0;
  overflow: hidden;
  background: #1b1b1b;
  color: #fff;
  text-align: center;
}
.cta-panel--first h2 {
  position: absolute;
  top: calc(132 / 14.4 * 1cqw);
  left: calc(141 / 14.4 * 1cqw);
  width: calc(1179 / 14.4 * 1cqw);
  height: calc(124 / 14.4 * 1cqw);
  margin: 0;
  font-size: 0;
  font-weight: 800;
  letter-spacing: .04em;
  line-height: 1.6;
}
.cta-panel--first h2 small,
.cta-panel--first h2 strong { display:block; font-weight:800; }
.cta-panel--first h2 strong > span { display:inline; color:inherit; }
.cta-panel--first h2 small { font-size:calc(33 / 14.4 * 1cqw); }
.cta-panel--first h2 strong { font-size:calc(42 / 14.4 * 1cqw); }
.cta-panel--first h2 em { color:var(--orange); font-style:normal; }
.cta-panel--first h2::after {
  position: absolute;
  top: calc(132 / 14.4 * 1cqw);
  left: 50%;
  display: block;
  width: calc(603 / 14.4 * 1cqw);
  height: calc(18 / 14.4 * 1cqw);
  margin: 0;
  border: 0;
  background: url("../assets/cta-line-pc.png") center / 100% 100% no-repeat;
  content: "";
  transform: translateX(-50%);
}
.cta-panel--first .cta-buttons {
  position:absolute;
  top:calc(339 / 14.4 * 1cqw);
  left:calc(204 / 14.4 * 1cqw);
  display:flex;
  width:calc(1032 / 14.4 * 1cqw);
  gap:calc(72 / 14.4 * 1cqw);
  margin:0;
}
.cta-panel--first .button { width:calc(480 / 14.4 * 1cqw); height:calc(114 / 14.4 * 1cqw); border-radius:calc(5 / 14.4 * 1cqw); }
.cta-panel--first .button--phone { border:calc(1 / 14.4 * 1cqw) solid var(--orange); background:rgba(67,44,0,.88); box-shadow:none; }
.cta-panel--first .button--phone small { font-family:"Noto Sans JP",sans-serif; font-size:calc(18 / 14.4 * 1cqw); font-weight:400; line-height:normal; letter-spacing:0; }
.cta-panel--first .button--phone strong { margin-top:0; font-family:"DIN 2014","DIN Alternate",Inter,sans-serif; font-size:calc(51 / 14.4 * 1cqw); font-weight:700; line-height:normal; letter-spacing:0; }
.cta-panel--first .button--contact { position:relative; gap:0; background:linear-gradient(#e3ac08,#f57200); font-family:"Hiragino Sans","Hiragino Kaku Gothic ProN","Noto Sans JP",sans-serif; font-size:calc(30 / 14.4 * 1cqw); font-weight:600; line-height:normal; letter-spacing:calc(2.1 / 14.4 * 1cqw); box-shadow:none; }
.cta-panel--first .button--contact span { position:absolute; right:calc(12 / 14.4 * 1cqw); font-size:calc(25 / 14.4 * 1cqw); }
.cta-panel--first > p { position:absolute; top:calc(510 / 14.4 * 1cqw); left:0; width:100%; margin:0; font-size:calc(16 / 14.4 * 1cqw); font-weight:400; }

/* ---------- おすすめ (PC) ---------- */
.recommendations {
  position: relative;
  z-index: 2;
  display: block;
  height: calc(1045 / 14.4 * 1cqw);
  min-height: 0;
  margin: calc(-103 / 14.4 * 1cqw) 0 0;
  padding: 0;
  overflow: hidden;
  border-radius: calc(90 / 14.4 * 1cqw) calc(90 / 14.4 * 1cqw) 0 0;
  background: var(--green);
  color: #fff;
}
.recommendations::before { display:none; }
.recommendations .section-heading { position:absolute; top:calc(121 / 14.4 * 1cqw); left:calc(120 / 14.4 * 1cqw); z-index:2; width:calc(1200 / 14.4 * 1cqw); text-align:center; }
.recommendations .section-heading h2 { color:#fff; font-size:calc(39 / 14.4 * 1cqw); font-weight:700; letter-spacing:.06em; line-height:1; }
.recommendations .section-heading h2 span { display:inline; }
.recommendations ul {
  position:absolute;
  top:calc(247 / 14.4 * 1cqw);
  left:calc(214 / 14.4 * 1cqw);
  z-index:1;
  display:grid;
  width:calc(1013 / 14.4 * 1cqw);
  height:calc(620 / 14.4 * 1cqw);
  margin:0;
  padding:0;
  grid-template-columns:repeat(3,calc(327 / 14.4 * 1cqw));
  grid-template-rows:repeat(2,calc(302 / 14.4 * 1cqw));
  gap:calc(16 / 14.4 * 1cqw);
  list-style:none;
}
.recommendations li {
  position:relative;
  display:block;
  width:calc(327 / 14.4 * 1cqw);
  height:calc(302 / 14.4 * 1cqw);
  padding:0;
  overflow:visible;
  border-radius:calc(10 / 14.4 * 1cqw);
  background:#65ae89;
}
.recommendations li::before { display:none; }
.recommendations li img { position:absolute; display:block; width:auto; height:auto; object-fit:contain; }
.recommendations li span { position:absolute; left:0; display:block; width:100%; margin:0; color:#fff; font-size:calc(24 / 14.4 * 1cqw); font-weight:700; line-height:1.45; text-align:center; }
.recommendations li:nth-child(-n+3) span { top:calc(230 / 14.4 * 1cqw); }
.recommendations li:nth-child(n+4) span { top:calc(200 / 14.4 * 1cqw); }
.recommendations li:nth-child(1) img { top:calc(72 / 14.4 * 1cqw); left:calc(48 / 14.4 * 1cqw); width:calc(240 / 14.4 * 1cqw); height:calc(113 / 14.4 * 1cqw); }
.recommendations li:nth-child(2) img { top:calc(53 / 14.4 * 1cqw); left:calc(57 / 14.4 * 1cqw); width:calc(235 / 14.4 * 1cqw); height:calc(171 / 14.4 * 1cqw); }
.recommendations li:nth-child(3) img { top:calc(42 / 14.4 * 1cqw); left:calc(52 / 14.4 * 1cqw); width:calc(223 / 14.4 * 1cqw); height:calc(167 / 14.4 * 1cqw); }
.recommendations li:nth-child(4) img { top:calc(17 / 14.4 * 1cqw); left:calc(41 / 14.4 * 1cqw); width:calc(302 / 14.4 * 1cqw); height:calc(201 / 14.4 * 1cqw); }
.recommendations li:nth-child(5) img { top:calc(29 / 14.4 * 1cqw); left:calc(67 / 14.4 * 1cqw); width:calc(179 / 14.4 * 1cqw); height:calc(158 / 14.4 * 1cqw); }
.recommendations li:nth-child(6) img { top:calc(28 / 14.4 * 1cqw); left:calc(133 / 14.4 * 1cqw); width:calc(62 / 14.4 * 1cqw); height:calc(163 / 14.4 * 1cqw); }

/* Match Figma's plain textarea edge; hide the browser-native resize grip. */
.contact-form textarea { resize:none; }

@media (max-width: 767px) {
  /* ---------- 導入事例 (SP) ---------- */
  .cases { height:calc(3444 / 3.75 * 1cqw); min-height:0; padding:0; }
  .cases .section-heading { top:calc(74 / 3.75 * 1cqw); left:0; width:100%; height:calc(280 / 3.75 * 1cqw); }
  .cases .section-heading::after { top:calc(125 / 3.75 * 1cqw); width:calc(224 / 3.75 * 1cqw); height:calc(2 / 3.75 * 1cqw); }
  .cases .section-heading__eyebrow { font-size:calc(22 / 3.75 * 1cqw); line-height:calc(39 / 22); }
  .cases .section-heading h2 { margin:0; font-size:calc(38 / 3.75 * 1cqw); line-height:1.35; }
  .cases .section-heading > p:last-child { top:calc(159 / 3.75 * 1cqw); width:100%; padding:0; font-size:calc(16 / 3.75 * 1cqw); line-height:1.5; }
  .cases-copy-pc { display:none; }
  .cases-copy-sp { display:inline; }
  .case-list { top:calc(424 / 3.75 * 1cqw); display:block; width:100%; }
  .case-card { left:calc(18 / 3.75 * 1cqw); width:calc(368 / 3.75 * 1cqw); height:calc(922.5 / 3.75 * 1cqw); }
  .case-card--02 { width:calc(388 / 3.75 * 1cqw); height:calc(899 / 3.75 * 1cqw); margin-top:calc(69.5 / 3.75 * 1cqw); }
  .case-card--03 { width:calc(368 / 3.75 * 1cqw); height:calc(909 / 3.75 * 1cqw); margin-top:calc(94 / 3.75 * 1cqw); }
  .case-card__photo { top:0; left:0; width:calc(368 / 3.75 * 1cqw); height:calc(283 / 3.75 * 1cqw); background-position:center; background-size:cover; }
  .case-card--02 .case-card__photo { width:calc(388 / 3.75 * 1cqw); background-position:center; background-size:cover; }
  .case-card--03 .case-card__photo { width:calc(357 / 3.75 * 1cqw); background-position:center; background-size:cover; }
  .case-card__photo::after { bottom:0; left:calc(10 / 3.75 * 1cqw); width:calc(347 / 3.75 * 1cqw); height:calc(41 / 3.75 * 1cqw); clip-path:polygon(10% 0,100% 0,100% 100%,0 100%); }
  .case-card--03 .case-card__photo::after { left:0; width:calc(357 / 3.75 * 1cqw); }
  .case-card__photo > span { top:0; left:0; isolation:isolate; display:flex; align-items:center; gap:calc(5 / 3.75 * 1cqw); width:calc(156.5 / 3.75 * 1cqw); height:calc(47 / 3.75 * 1cqw); padding-left:calc(13 / 3.75 * 1cqw); background:transparent; font-size:calc(20 / 3.75 * 1cqw); letter-spacing:.16em; clip-path:none; }
  .case-card__photo > span::before { position:absolute; top:0; left:0; z-index:-1; width:calc(156.5 / 3.75 * 1cqw); height:calc(41 / 3.75 * 1cqw); clip-path:polygon(0 0,100% 0,72% 100%,0 100%); background:#004c2c; content:""; }
  .case-card__photo > span b { position:absolute; top:0; left:calc(64 / 3.75 * 1cqw); display:flex; align-items:center; width:calc(108 / 3.75 * 1cqw); height:calc(47 / 3.75 * 1cqw); font-size:calc(36 / 3.75 * 1cqw); }
  .case-card__photo > div { bottom:calc(4 / 3.75 * 1cqw); left:calc(57 / 3.75 * 1cqw); width:calc(282 / 3.75 * 1cqw); gap:calc(8 / 3.75 * 1cqw); justify-content:flex-start; }
  .case-card--02 .case-card__photo > div { bottom:calc(7 / 3.75 * 1cqw); left:calc(58 / 3.75 * 1cqw); width:calc(296 / 3.75 * 1cqw); }
  .case-card--02 .case-card__photo > div strong { flex:0 0 calc(198 / 3.75 * 1cqw); width:calc(198 / 3.75 * 1cqw); font-size:calc(20 / 3.75 * 1cqw); letter-spacing:0; }
  .case-card--02 .case-card__photo > div small { top:calc(3 / 3.75 * 1cqw); left:calc(157 / 3.75 * 1cqw); width:calc(139 / 3.75 * 1cqw); text-align:center; white-space:normal; }
  .case-card--03 .case-card__photo > div { bottom:calc(7 / 3.75 * 1cqw); left:calc(26 / 3.75 * 1cqw); width:calc(328 / 3.75 * 1cqw); }
  .case-card--03 .case-card__photo > div strong { flex:0 0 calc(210 / 3.75 * 1cqw); width:calc(210 / 3.75 * 1cqw); font-size:calc(20 / 3.75 * 1cqw); letter-spacing:0; }
  .case-card--03 .case-card__photo > div small { top:calc(3 / 3.75 * 1cqw); left:calc(189 / 3.75 * 1cqw); width:calc(139 / 3.75 * 1cqw); text-align:center; }
  .case-card__photo small.case-card__meta span { font-size:calc(11 / 3.75 * 1cqw); line-height:calc(14 / 11); }
  .case-card__photo small.case-card__meta span + span { font-size:calc(10 / 3.75 * 1cqw); line-height:1.4; }
  .case-card__photo strong { font-size:calc(24 / 3.75 * 1cqw); }
  .case-card__photo small { font-size:calc(14 / 3.75 * 1cqw); }
  .case-card__body { top:calc(265 / 3.75 * 1cqw); left:0; width:calc(357 / 3.75 * 1cqw); height:calc(657.5 / 3.75 * 1cqw); min-height:0; margin:0; padding:0; background:linear-gradient(to bottom,transparent 0 calc(18 / 3.75 * 1cqw),rgba(3,101,51,.8) calc(18 / 3.75 * 1cqw)); }
  .case-card--02 .case-card__body { height:calc(634 / 3.75 * 1cqw); }
  .case-card--03 .case-card__body { height:calc(644 / 3.75 * 1cqw); }
  .case-card__results { top:0; left:0; display:block; width:100%; height:calc(227 / 3.75 * 1cqw); }
  .case-card__results { isolation:isolate; }
  .case-card__results::after { top:calc(54 / 3.75 * 1cqw); left:calc(139 / 3.75 * 1cqw); z-index:1; width:calc(2 / 3.75 * 1cqw); height:calc(218 / 3.75 * 1cqw); transform:rotate(62deg); }
  .case-card__results > div { position:absolute; z-index:2; width:calc(175 / 3.75 * 1cqw); }
  .case-card__results > div:first-child { top:calc(45.5 / 3.75 * 1cqw); left:calc(10 / 3.75 * 1cqw); }
  .case-card__results > div:nth-child(2) { top:calc(114.5 / 3.75 * 1cqw); left:calc(125 / 3.75 * 1cqw); width:calc(214 / 3.75 * 1cqw); }
  .case-card__results strong { line-height:1.7; }
  .case-card__results > div:not(.case-card__result-label) strong { line-height:2; }
  .case-card__results b { font-size:calc(42 / 3.75 * 1cqw); }
  .case-card__results i { font-size:calc(32 / 3.75 * 1cqw); }
  .case-card__results small { font-size:calc(17 / 3.75 * 1cqw); }
  .case-card__results > div > span { margin-top:calc(-19 / 3.75 * 1cqw); font-size:calc(20 / 3.75 * 1cqw); line-height:1.56; }
  .case-card__results > div.case-card__result-label { top:calc(130 / 3.75 * 1cqw); padding:0; z-index:3; }
  .case-card__results .case-card__result-label > span,
  .case-card__results .case-card__result-label > strong { position:relative; z-index:1; width:max-content; margin-right:auto; margin-left:auto; padding:0 calc(2 / 3.75 * 1cqw); background:#036533; }
  .case-card__results .case-card__result-label > span { font-size:calc(20 / 3.75 * 1cqw); }
  .case-card__results .case-card__result-label b { font-size:calc(42 / 3.75 * 1cqw); }
  .case-card__body ul { top:calc(227 / 3.75 * 1cqw); left:calc(18 / 3.75 * 1cqw); width:calc(339 / 3.75 * 1cqw); font-size:calc(14 / 3.75 * 1cqw); line-height:2.3; }
  .case-card__body li { padding-left:calc(29 / 3.75 * 1cqw); }
  .case-card__body li::before { top:calc(4.5 / 3.75 * 1cqw); width:calc(18 / 3.75 * 1cqw); height:calc(19.5 / 3.75 * 1cqw); }
  .case-card__body p { top:calc(344 / 3.75 * 1cqw); left:calc(15 / 3.75 * 1cqw); width:calc(324 / 3.75 * 1cqw); font-size:calc(14 / 3.75 * 1cqw); letter-spacing:.02em; line-height:1.5; }
  .case-card--02 .case-card__body p { top:calc(370 / 3.75 * 1cqw); }
  .case-card--03 .case-card__body p { top:calc(338 / 3.75 * 1cqw); }

  /* ---------- 選ばれる理由 + 比較表 (SP) ---------- */
  .reasons { height:calc(2028 / 3.75 * 1cqw); min-height:0; padding:0; background:#fff; }
  .reasons::before { top:calc(219 / 3.75 * 1cqw); left:0; width:100%; height:calc(646 / 3.75 * 1cqw); background:url("../assets/reasons/background-sp.png") top center / 100% 100% no-repeat; }
  .reasons__inner { top:0; left:0; width:100% !important; height:calc(1277 / 3.75 * 1cqw); }
  .reasons .section-heading { position:absolute; top:calc(86 / 3.75 * 1cqw); left:calc(18 / 3.75 * 1cqw); width:calc(339 / 3.75 * 1cqw); height:calc(112 / 3.75 * 1cqw); }
  .reasons .section-heading::after { top:calc(4 / 3.75 * 1cqw); left:calc(244 / 3.75 * 1cqw); width:calc(113 / 3.75 * 1cqw); height:calc(83 / 3.75 * 1cqw); background-image:url("../assets/reasons/heading-line-sp.png"); }
  .reasons .section-heading h2 { font-size:calc(32 / 3.75 * 1cqw); line-height:1.2; }
  .reasons .section-heading h2 span { font-size:calc(42 / 3.75 * 1cqw); }
  .reason-grid { top:calc(252 / 3.75 * 1cqw); left:calc(18 / 3.75 * 1cqw); width:calc(339 / 3.75 * 1cqw); height:calc(955 / 3.75 * 1cqw); grid-template-columns:repeat(2,calc(163 / 3.75 * 1cqw)) !important; grid-template-rows:calc(141 / 3.75 * 1cqw) calc(163 / 3.75 * 1cqw) calc(141 / 3.75 * 1cqw) calc(163 / 3.75 * 1cqw) calc(141 / 3.75 * 1cqw) calc(141 / 3.75 * 1cqw); grid-auto-rows:auto !important; gap:calc(13 / 3.75 * 1cqw); }
  .reason-grid li { border-width:calc(2 / 3.75 * 1cqw) !important; border-radius:calc(5 / 3.75 * 1cqw) !important; }
  .reason-grid__lead { order:1; grid-column:span 2; }
  .reason-grid__logistics { order:2; }
  .reason-grid__free { order:3; }
  .reason-grid__map { order:4; grid-column:span 2; }
  .reason-grid__review { order:5; }
  .reason-grid__release { order:6; }
  .reason-grid__finance { order:7; grid-column:span 2; }
  .reason-grid__support { order:8; grid-column:span 2; }
  .reason-grid__lead,
  .reason-grid__map,
  .reason-grid__finance,
  .reason-grid__support { width:auto; }
  .reason-grid__logistics,
  .reason-grid__free,
  .reason-grid__release,
  .reason-grid__support { transform:none; }
  .reason-grid__lead b { top:calc(20 / 3.75 * 1cqw); font-size:calc(24 / 3.75 * 1cqw); line-height:normal; }
  .reason-grid__lead em { font-size:calc(32 / 3.75 * 1cqw); line-height:1.19; }
  .reason-grid li.reason-grid__lead small { font-size:calc(24 / 3.75 * 1cqw); line-height:1.31; }
  .reason-grid__logistics img { top:calc(15 / 3.75 * 1cqw); left:calc(25 / 3.75 * 1cqw); width:calc(120 / 3.75 * 1cqw); height:calc(90 / 3.75 * 1cqw); }
  .reason-grid__logistics b { top:calc(100 / 3.75 * 1cqw); font-size:calc(16 / 3.75 * 1cqw); line-height:1.1; }
  .reason-grid__logistics em { font-size:calc(24 / 3.75 * 1cqw); line-height:1.1; }
  .reason-grid__free b { top:calc(25 / 3.75 * 1cqw); font-size:calc(16 / 3.75 * 1cqw); line-height:1.1; }
  .reason-grid__free em { font-size:calc(24 / 3.75 * 1cqw); line-height:1.1; }
  .reason-grid__free img { top:calc(75 / 3.75 * 1cqw); left:calc(42 / 3.75 * 1cqw); width:calc(81 / 3.75 * 1cqw); height:calc(81 / 3.75 * 1cqw); }
  .reason-grid li.reason-grid__map img { top:0; left:calc(37 / 3.75 * 1cqw); width:calc(156 / 3.75 * 1cqw); height:calc(132 / 3.75 * 1cqw); object-fit:fill; }
  .reason-grid__map b { top:calc(-2 / 3.75 * 1cqw); left:calc(174 / 3.75 * 1cqw); z-index:2; width:calc(163 / 3.75 * 1cqw); font-size:0; line-height:0; }
  .reason-grid__map em { font-size:calc(30 / 3.75 * 1cqw); line-height:1.19; letter-spacing:0; }
  .reason-grid li.reason-grid__map small { font-size:calc(12 / 3.75 * 1cqw); line-height:1.63; white-space:nowrap; }
  .reason-grid__review img { top:calc(11 / 3.75 * 1cqw); left:calc(31 / 3.75 * 1cqw); width:calc(99 / 3.75 * 1cqw); height:calc(74 / 3.75 * 1cqw); }
  .reason-grid__review b { top:calc(90 / 3.75 * 1cqw); font-size:calc(14 / 3.75 * 1cqw); line-height:1.1; }
  .reason-grid__review em { font-size:calc(24 / 3.75 * 1cqw); line-height:1.18; }
  .reason-grid li.reason-grid__review small { font-size:calc(13 / 3.75 * 1cqw); line-height:1.45; }
  .reason-grid__release b { top:calc(26 / 3.75 * 1cqw); font-size:calc(27 / 3.75 * 1cqw); line-height:1.37; }
  .reason-grid__release em { font-size:calc(27 / 3.75 * 1cqw); line-height:1.37; }
  .reason-grid li.reason-grid__release small { font-size:calc(27 / 3.75 * 1cqw); line-height:1.42; }
  .reason-grid__finance b { top:calc(10 / 3.75 * 1cqw); left:calc(17 / 3.75 * 1cqw); width:calc(163 / 3.75 * 1cqw); font-size:calc(13 / 3.75 * 1cqw); line-height:1; }
  .reason-grid__finance em { font-size:calc(30 / 3.75 * 1cqw); line-height:1.35; }
  .reason-grid li.reason-grid__finance small { font-size:calc(13 / 3.75 * 1cqw); line-height:1.93; }
  .reason-grid__finance img { top:calc(10 / 3.75 * 1cqw); left:calc(194 / 3.75 * 1cqw); width:calc(119 / 3.75 * 1cqw); height:calc(121 / 3.75 * 1cqw); }
  .reason-grid__support b { top:calc(35 / 3.75 * 1cqw); font-size:calc(24 / 3.75 * 1cqw); line-height:normal; }
  .reason-grid__support em { font-size:calc(32 / 3.75 * 1cqw); line-height:1.19; }
  .comparison { top:calc(1277 / 3.75 * 1cqw); height:calc(751 / 3.75 * 1cqw); }
  .comparison::before { position:absolute; inset:0; z-index:-1; display:block; background:url("../assets/reasons/comparison-background-sp.png") center / 100% 100% no-repeat; content:""; }
  .comparison .section-heading { position:absolute; top:calc(45 / 3.75 * 1cqw); left:calc(18 / 3.75 * 1cqw); width:calc(339 / 3.75 * 1cqw); }
  .comparison .section-heading h2 { font-size:calc(32 / 3.75 * 1cqw); line-height:1.2; }
  .comparison .section-heading h2 span { display:block; font-size:calc(42 / 3.75 * 1cqw); }
  .comparison__scroll { top:calc(152 / 3.75 * 1cqw); left:calc(18 / 3.75 * 1cqw); width:calc(357 / 3.75 * 1cqw); height:calc(474 / 3.75 * 1cqw); overflow-x:auto; overflow-y:hidden; overscroll-behavior-inline:contain; scrollbar-width:none; -webkit-overflow-scrolling:touch; touch-action:pan-x pan-y; }
  .comparison__scroll::-webkit-scrollbar { display:none; }
  .comparison__scroll::after { position:absolute; top:calc(178 / 3.75 * 1cqw); left:calc(90 / 3.75 * 1cqw); z-index:10; width:calc(150 / 3.75 * 1cqw); height:calc(150 / 3.75 * 1cqw); border-radius:calc(20 / 3.75 * 1cqw); background:url("../assets/scroll-hint-sp.png") center/contain no-repeat; content:""; opacity:1; pointer-events:none; transition:opacity .2s ease,visibility 0s linear .2s; visibility:visible; }
  .comparison__scroll.has-scrolled::after { opacity:0; visibility:hidden; }
  .comparison__scroll.is-scrolled::after { display:none; }
  .comparison__scroll::before { left:calc(214 / 3.75 * 1cqw); width:calc(260 / 3.75 * 1cqw); height:calc(474 / 3.75 * 1cqw); border-width:calc(3 / 3.75 * 1cqw); border-radius:calc(15 / 3.75 * 1cqw); }
  .comparison table { top:calc(25 / 3.75 * 1cqw); width:calc(952 / 3.75 * 1cqw); min-width:calc(952 / 3.75 * 1cqw); height:calc(437 / 3.75 * 1cqw); border-radius:calc(20 / 3.75 * 1cqw); font-size:calc(16 / 3.75 * 1cqw); }
  .comparison tr > :nth-child(1) { width:calc(214 / 3.75 * 1cqw); }
  .comparison tr > :nth-child(2) { width:calc(260 / 3.75 * 1cqw); }
  .comparison tr > :nth-child(3) { width:calc(255 / 3.75 * 1cqw); }
  .comparison tr > :nth-child(4) { width:calc(223 / 3.75 * 1cqw); }
  .comparison th,.comparison td { height:calc(77 / 3.75 * 1cqw); padding:calc(8 / 3.75 * 1cqw); }
  .comparison thead th { height:calc(120 / 3.75 * 1cqw); font-size:calc(16 / 3.75 * 1cqw); }
  .comparison tbody th { font-size:calc(19 / 3.75 * 1cqw); }
  .comparison td b { width:calc(25 / 3.75 * 1cqw); height:calc(25 / 3.75 * 1cqw); font-size:calc(25 / 3.75 * 1cqw); }
  .comparison td:nth-child(4) b { width:calc(20 / 3.75 * 1cqw); height:calc(25 / 3.75 * 1cqw); font-size:calc(25 / 3.75 * 1cqw); }
  .comparison__tralico { border-right-width:calc(3 / 3.75 * 1cqw); border-left-width:calc(3 / 3.75 * 1cqw); }
  .comparison thead .comparison__tralico { border-top-width:calc(3 / 3.75 * 1cqw); }
  .comparison tbody tr:last-child .comparison__tralico { border-bottom-width:calc(3 / 3.75 * 1cqw); }
  .comparison__tralico img { width:calc(207 / 3.75 * 1cqw); }

  /* ---------- CTA1 (SP) ---------- */
  .cta-panel--first { height:calc(746 / 3.75 * 1cqw); min-height:0; padding:0; background:#1b1b1b; }
  .cta-panel--first h2 { top:calc(93 / 3.75 * 1cqw); left:0; width:100%; height:calc(140 / 3.75 * 1cqw); }
  .cta-panel--first h2 small { font-size:calc(24 / 3.75 * 1cqw); }
  .cta-panel--first h2 strong { font-size:calc(31 / 3.75 * 1cqw); }
  .cta-panel--first h2 strong em { font-size:calc(34 / 3.75 * 1cqw); }
  .cta-panel--first h2 strong > span { display:block; }
  .cta-panel--first h2::after { top:calc(178 / 3.75 * 1cqw); width:calc(315 / 3.75 * 1cqw); height:calc(19 / 3.75 * 1cqw); background-image:url("../assets/cta-line-sp.png"); }
  .cta-panel--first .cta-buttons { top:calc(336 / 3.75 * 1cqw); left:calc(26 / 3.75 * 1cqw); display:block; width:calc(323 / 3.75 * 1cqw); }
  .cta-panel--first .button { width:calc(323 / 3.75 * 1cqw); height:calc(105 / 3.75 * 1cqw); margin:0; border-radius:calc(5 / 3.75 * 1cqw); }
  .cta-panel--first .button--phone { border-width:calc(1 / 3.75 * 1cqw); }
  .cta-panel--first .button--phone small { font-size:calc(15 / 3.75 * 1cqw); }
  .cta-panel--first .button--phone strong { font-size:calc(37 / 3.75 * 1cqw); }
  .cta-panel--first .button--contact { margin-top:calc(25 / 3.75 * 1cqw); font-size:calc(21 / 3.75 * 1cqw); letter-spacing:calc(1.47 / 3.75 * 1cqw); }
  .cta-panel--first .button--contact span { right:calc(9 / 3.75 * 1cqw); font-size:calc(18 / 3.75 * 1cqw); }
  .cta-panel--first > p { top:calc(590 / 3.75 * 1cqw); font-size:calc(12 / 3.75 * 1cqw); }

  /* ---------- おすすめ (SP) ---------- */
  .recommendations { height:calc(1943 / 3.75 * 1cqw); min-height:0; margin:calc(-56 / 3.75 * 1cqw) 0 0; padding:0; border-radius:calc(50 / 3.75 * 1cqw) calc(50 / 3.75 * 1cqw) 0 0; }
  .recommendations::before { position:absolute; top:calc(254 / 3.75 * 1cqw); left:calc(59 / 3.75 * 1cqw); z-index:0; display:block; width:calc(225 / 3.75 * 1cqw); height:calc(1556 / 3.75 * 1cqw); background:url("../assets/recommendations/path-sp.png") center / 100% 100% no-repeat; content:""; pointer-events:none; transform:none; }
  .recommendations .section-heading { top:calc(69 / 3.75 * 1cqw); left:0; width:100%; }
  .recommendations .section-heading h2 { font-size:calc(29 / 3.75 * 1cqw); line-height:1.45; }
  .recommendations .section-heading h2 span { display:block; }
  .recommendations ul { top:calc(204 / 3.75 * 1cqw); left:calc(50 / 3.75 * 1cqw); width:calc(275 / 3.75 * 1cqw); height:calc(1649 / 3.75 * 1cqw); grid-template-columns:calc(275 / 3.75 * 1cqw); grid-template-rows:repeat(6,calc(254 / 3.75 * 1cqw)); gap:calc(25 / 3.75 * 1cqw); }
  .recommendations li { width:calc(275 / 3.75 * 1cqw); height:calc(254 / 3.75 * 1cqw); border-radius:calc(10 / 3.75 * 1cqw); overflow:visible; }
  .recommendations li span { font-size:calc(18 / 3.75 * 1cqw); line-height:1.45; }
  .recommendations li:nth-child(-n+3) span { top:calc(194 / 3.75 * 1cqw); }
  .recommendations li:nth-child(n+4) span { top:calc(169 / 3.75 * 1cqw); }
  .recommendations li:nth-child(1) img { top:calc(61 / 3.75 * 1cqw); left:calc(41 / 3.75 * 1cqw); width:calc(203 / 3.75 * 1cqw); height:calc(95 / 3.75 * 1cqw); }
  .recommendations li:nth-child(2) img { top:calc(41 / 3.75 * 1cqw); left:calc(40 / 3.75 * 1cqw); width:calc(211 / 3.75 * 1cqw); height:calc(158 / 3.75 * 1cqw); }
  .recommendations li:nth-child(3) img { top:calc(35 / 3.75 * 1cqw); left:calc(43 / 3.75 * 1cqw); width:calc(188 / 3.75 * 1cqw); height:calc(141 / 3.75 * 1cqw); }
  .recommendations li:nth-child(4) img { top:calc(14 / 3.75 * 1cqw); left:calc(34 / 3.75 * 1cqw); width:calc(241 / 3.75 * 1cqw); height:calc(170 / 3.75 * 1cqw); }
  .recommendations li:nth-child(5) img { top:calc(24 / 3.75 * 1cqw); left:calc(56 / 3.75 * 1cqw); width:calc(151 / 3.75 * 1cqw); height:calc(134 / 3.75 * 1cqw); }
  .recommendations li:nth-child(6) img { top:calc(23 / 3.75 * 1cqw); left:calc(111 / 3.75 * 1cqw); width:calc(52 / 3.75 * 1cqw); height:calc(137 / 3.75 * 1cqw); }
}
