@charset "UTF-8";
/* 整足院 市川店 広告用LP（https://assist-seisokuin.jp/ichikawa/）
   PC設計1920px / SP設計375px（SPは後日）。単位は --u（1u = 10px @1920）で比例縮小。
   全スタイルを .page-ichikawa-ashi にスコープする（同ドメインに他店舗LPが並ぶ前提）。 */

html {
  scroll-behavior: smooth;
}

body {
  margin: 0;
}

.page-ichikawa-ashi {
  --u: min(calc(100vw / 192), 10px);

  --color-navy: #053361;
  --color-navy-deep: #04244a;
  --color-text: #14293d;
  --color-gray: #333333;
  --color-gray-2: #444444;
  --color-line: #05b857;
  --color-form: #ecd56f;
  --color-border: #d6e3ed;
  --color-white: #ffffff;

  --font-gothic: "Noto Sans JP", sans-serif;
  --font-num: "Montserrat", "Noto Sans JP", sans-serif;

  --radius-card: calc(2 * var(--u));
  --radius-btn: calc(1.4 * var(--u));
  --shadow-btn: 0 calc(1 * var(--u)) calc(1.4 * var(--u)) rgba(5, 31, 56, 0.1);

  --header-h: calc(12 * var(--u));

  color: var(--color-text);
  font-family: var(--font-gothic);
  background: var(--color-white);
  -webkit-font-smoothing: antialiased;
  overflow-x: clip;
}

@media (max-width: 768px) {
  .page-ichikawa-ashi {
    --u: calc(100vw / 37.5);
  }
}

.page-ichikawa-ashi *,
.page-ichikawa-ashi *::before,
.page-ichikawa-ashi *::after {
  box-sizing: border-box;
}

.page-ichikawa-ashi :where(h1, h2, h3, h4, p, ul, ol, figure, blockquote, dl, dd, table) {
  margin: 0;
}

.page-ichikawa-ashi :where(ul, ol) {
  padding: 0;
  list-style: none;
}

.page-ichikawa-ashi img {
  max-width: 100%;
  display: block;
}

.page-ichikawa-ashi a {
  text-decoration: none;
  color: inherit;
}

.page-ichikawa-ashi section {
  position: relative;
  scroll-margin-top: var(--header-h);
}

/* ---- 予約ボタン（LINE／フォーム）の配色だけ共通化。サイズは各セクションで指定 ---- */

.page-ichikawa-ashi .btn-line,
.page-ichikawa-ashi .btn-form {
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 700;
  border-radius: var(--radius-btn);
  transition: opacity 0.2s;
}

.page-ichikawa-ashi .btn-line {
  background: var(--color-line);
  color: var(--color-white);
}

.page-ichikawa-ashi .btn-form {
  background: var(--color-form);
  color: var(--color-navy-deep);
}

.page-ichikawa-ashi .btn-line:hover,
.page-ichikawa-ashi .btn-form:hover {
  opacity: 0.85;
}

/* ---- 表示出し分け ---- */

.page-ichikawa-ashi .sp-only {
  display: none;
}

@media (max-width: 768px) {
  .page-ichikawa-ashi .pc-only {
    display: none;
  }

  .page-ichikawa-ashi .sp-only {
    display: revert;
  }
}

.page-ichikawa-ashi .visually-hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
  white-space: nowrap;
}

/* ==== sec-access ==== */
/* ---- sec-access（9:1779） ---- */

.page-ichikawa-ashi .sec-access {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: calc(9.7 * var(--u));
  padding: calc(16 * var(--u)) calc(36 * var(--u));
  background: var(--color-white);
}

.page-ichikawa-ashi .sec-access__head {
  position: relative;
  text-align: center;
  font-weight: 700;
}

.page-ichikawa-ashi .sec-access__title {
  position: relative;
  z-index: 1;
  color: var(--color-navy);
  font-size: calc(5.3 * var(--u));
  line-height: calc(5.12 * var(--u));
  letter-spacing: -0.01em;
}

.page-ichikawa-ashi .sec-access__bg-en {
  position: absolute;
  left: 50%;
  bottom: calc(5.975 * var(--u));
  width: calc(71.6 * var(--u));
  transform: translate(-50%, 50%);
  color: rgba(23, 58, 114, 0.08);
  font-size: calc(15 * var(--u));
  line-height: calc(12 * var(--u));
  letter-spacing: 0.02em;
  white-space: nowrap;
  pointer-events: none;
}

.page-ichikawa-ashi .sec-access__body {
  display: flex;
  justify-content: space-between;
  align-items: stretch;
  width: calc(125.9 * var(--u));
}

/* 院情報テーブル */

.page-ichikawa-ashi .sec-access__table-wrap {
  flex-shrink: 0;
  overflow: hidden;
  border: 1px solid var(--color-border);
  border-radius: calc(2.2 * var(--u));
  box-shadow: 0 calc(0.8 * var(--u)) calc(2.4 * var(--u)) rgba(5, 31, 56, 0.07);
}

.page-ichikawa-ashi .sec-access__table {
  border-collapse: collapse;
  color: var(--color-text);
  font-size: calc(1.6 * var(--u));
  line-height: 1.65;
}

.page-ichikawa-ashi .sec-access__th-head {
  padding: calc(2.4 * var(--u)) 0;
  background: #14264f;
  color: var(--color-white);
  font-weight: 700;
  text-align: center;
}

.page-ichikawa-ashi .sec-access__th-head--content {
  padding-left: calc(2 * var(--u));
}

.page-ichikawa-ashi .sec-access__th,
.page-ichikawa-ashi .sec-access__td {
  padding: calc(2.4 * var(--u)) 0;
  border-top: 1px solid #d3dceb;
  vertical-align: middle;
}

.page-ichikawa-ashi .sec-access__th {
  width: calc(17.6 * var(--u));
  background: #f7f8f9;
  font-weight: 500;
  text-align: center;
}

.page-ichikawa-ashi .sec-access__td {
  width: calc(40.5 * var(--u));
  padding-left: calc(1.8 * var(--u));
  font-weight: 400;
  text-align: left;
}

.page-ichikawa-ashi .sec-access__tel {
  color: inherit;
}

/* 右カラム（地図＋予約方法） */

.page-ichikawa-ashi .sec-access__side {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  width: calc(57.9 * var(--u));
}

.page-ichikawa-ashi .sec-access__map {
  height: calc(38.9 * var(--u));
  overflow: hidden;
  background: var(--color-white);
  border: 1px solid var(--color-border);
  border-radius: calc(2.2 * var(--u));
  box-shadow: 0 calc(0.8 * var(--u)) calc(1.2 * var(--u)) rgba(5, 31, 56, 0.07);
}

.page-ichikawa-ashi .sec-access__map iframe {
  display: block;
  width: 100%;
  height: 100%;
  border: 0;
}

.page-ichikawa-ashi .sec-access__reserve {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: calc(0.7 * var(--u));
  padding: calc(1.6 * var(--u));
  background: #e8f3fc;
  border-radius: calc(2.2 * var(--u));
  box-shadow: 0 calc(0.4 * var(--u)) calc(0.83 * var(--u)) rgba(5, 31, 56, 0.07);
}

.page-ichikawa-ashi .sec-access__reserve-title {
  color: #062c6c;
  font-size: calc(1.7 * var(--u));
  font-weight: 700;
  line-height: 1.65;
}

.page-ichikawa-ashi .sec-access__reserve-list {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  padding: calc(1 * var(--u)) calc(8 * var(--u));
  background: var(--color-white);
  border-radius: calc(1.5 * var(--u));
  box-shadow: 0 calc(0.4 * var(--u)) calc(0.83 * var(--u)) rgba(5, 31, 56, 0.07);
}

.page-ichikawa-ashi .sec-access__reserve-item {
  position: relative;
}

.page-ichikawa-ashi .sec-access__reserve-item--line {
  padding-right: calc(3.2 * var(--u));
}

.page-ichikawa-ashi .sec-access__reserve-item--form {
  padding: 0 calc(5.7 * var(--u));
}

.page-ichikawa-ashi .sec-access__reserve-item--tel {
  padding-left: calc(3.2 * var(--u));
}

.page-ichikawa-ashi .sec-access__reserve-item--form::before,
.page-ichikawa-ashi .sec-access__reserve-item--tel::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  width: 1px;
  height: calc(5.9 * var(--u));
  background: #e3e6ea;
  transform: translateY(-50%);
}

.page-ichikawa-ashi .sec-access__reserve-link {
  display: flex;
  flex-direction: column;
  align-items: center;
  transition: opacity 0.2s;
}

.page-ichikawa-ashi .sec-access__reserve-link:hover {
  opacity: 0.8;
}

.page-ichikawa-ashi .sec-access__reserve-icon {
  width: calc(6.3 * var(--u));
  height: calc(6.2 * var(--u));
}

.page-ichikawa-ashi .sec-access__reserve-circle {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: calc(5.9 * var(--u));
  height: calc(5.9 * var(--u));
  border-radius: 50%;
}

.page-ichikawa-ashi .sec-access__reserve-circle--form {
  height: calc(6 * var(--u));
  background: radial-gradient(circle at 50% calc(2.95 * var(--u)), #2c71b1 calc(2.95 * var(--u)), transparent calc(2.95 * var(--u)));
  border-radius: 0;
}

.page-ichikawa-ashi .sec-access__reserve-form-img {
  position: absolute;
  top: calc(0.2 * var(--u));
  left: calc(0.1 * var(--u));
  width: calc(5.8 * var(--u));
  height: calc(5.8 * var(--u));
}

.page-ichikawa-ashi .sec-access__reserve-circle--tel {
  background: #103970;
}

.page-ichikawa-ashi .sec-access__reserve-tel-img {
  width: calc(3 * var(--u));
  height: calc(3.96 * var(--u));
  transform: rotate(-27.08deg);
}

.page-ichikawa-ashi .sec-access__reserve-label {
  color: #062c6c;
  font-size: calc(1.5 * var(--u));
  font-weight: 700;
  line-height: 1.65;
  white-space: nowrap;
}

.page-ichikawa-ashi .sec-access__reserve-label--form {
  font-size: calc(1.4 * var(--u));
  letter-spacing: -0.04em;
}

/* ==== sec-cause ==== */
/* ---- sec-cause（ROOT CAUSE / 6:144） ---- */

.page-ichikawa-ashi .sec-cause {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: calc(8 * var(--u));
  padding: calc(10 * var(--u)) 0 calc(10 * var(--u)) calc(37.2 * var(--u));
  background:
    linear-gradient(to bottom, rgba(255, 255, 255, 0), rgba(245, 245, 242, 0.5) 50%, #fffbf2),
    url("../img/sec-cause/cause-bg.webp") center / cover no-repeat;
  color: var(--color-navy);
  font-weight: 700;
  overflow-x: clip;
}

.page-ichikawa-ashi .sec-cause__bg-text {
  position: absolute;
  left: calc(62.45 * var(--u));
  top: calc(15.2 * var(--u));
  transform: translate(-50%, -50%);
  font-size: calc(14.589 * var(--u));
  line-height: calc(20.749 * var(--u));
  letter-spacing: calc(0.2918 * var(--u));
  color: rgba(234, 239, 242, 0.62);
  white-space: nowrap;
  pointer-events: none;
}

.page-ichikawa-ashi .sec-cause__main {
  position: relative;
  width: 100%;
}

.page-ichikawa-ashi .sec-cause__intro {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  margin-bottom: calc(-12 * var(--u));
}

.page-ichikawa-ashi .sec-cause__text {
  display: flex;
  flex-direction: column;
  gap: calc(5.1 * var(--u));
  padding-top: calc(4 * var(--u));
  white-space: nowrap;
}

.page-ichikawa-ashi .sec-cause__head {
  display: flex;
  flex-direction: column;
  gap: calc(1.6 * var(--u));
}

.page-ichikawa-ashi .sec-cause__label {
  font-size: calc(2 * var(--u));
  letter-spacing: calc(0.04 * var(--u));
  line-height: normal;
  color: var(--color-form);
}

.page-ichikawa-ashi .sec-cause__title {
  font-size: calc(3.6 * var(--u));
  line-height: calc(4.9 * var(--u));
  letter-spacing: calc(0.144 * var(--u));
}

.page-ichikawa-ashi .sec-cause__lead {
  font-size: calc(1.8 * var(--u));
  line-height: calc(3.36 * var(--u));
}

/* 写真（左角丸）＋つま先の切り抜きが写真の下辺からはみ出す */
.page-ichikawa-ashi .sec-cause__photo {
  position: relative;
  flex-shrink: 0;
  width: calc(78.4 * var(--u));
  height: calc(58.6 * var(--u));
}

.page-ichikawa-ashi .sec-cause__photo-frame {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: calc(50.9 * var(--u));
  overflow: hidden;
  border-radius: calc(2 * var(--u)) 0 0 calc(2 * var(--u));
}

.page-ichikawa-ashi .sec-cause__photo-img {
  position: absolute;
  left: calc(-10.8 * var(--u));
  top: calc(-0.9 * var(--u));
  width: calc(96.3 * var(--u));
  max-width: none;
  height: calc(68 * var(--u));
  object-fit: cover;
}

.page-ichikawa-ashi .sec-cause__toe {
  position: absolute;
  z-index: 2;
  left: calc(36.8 * var(--u));
  top: calc(41.7 * var(--u));
  width: calc(48.5 * var(--u));
  max-width: none;
  height: calc(16.9 * var(--u));
  object-fit: fill;
  /* 上端を写真へフェードさせて切れ目を消す（上端〜写真の下端までは写真と重なっている） */
  -webkit-mask-image: linear-gradient(to bottom, transparent 0, #000 calc(4 * var(--u)));
  mask-image: linear-gradient(to bottom, transparent 0, #000 calc(4 * var(--u)));
  filter: drop-shadow(0 calc(0.3 * var(--u)) calc(0.48 * var(--u)) rgba(5, 31, 56, 0.25));
  pointer-events: none;
}

/* 原因カード */
.page-ichikawa-ashi .sec-cause__list {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: flex-start;
  gap: calc(1.6 * var(--u));
}

.page-ichikawa-ashi .sec-cause__card {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: calc(1.5 * var(--u));
  width: calc(38.832 * var(--u));
  height: calc(32.034 * var(--u));
  padding: calc(2.2 * var(--u)) calc(3 * var(--u)) 0;
  background: var(--color-white);
  border: calc(0.17 * var(--u)) solid var(--color-border);
  border-top: calc(0.935 * var(--u)) solid var(--color-navy);
  border-radius: 0 0 calc(1.87 * var(--u)) calc(1.87 * var(--u));
  box-shadow: 0 calc(0.68 * var(--u)) calc(1.02 * var(--u)) rgba(5, 31, 56, 0.07);
}

.page-ichikawa-ashi .sec-cause__card-head {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: calc(0.68 * var(--u));
  width: 100%;
}

.page-ichikawa-ashi .sec-cause__badge {
  align-self: flex-start;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: calc(0.3 * var(--u));
  width: calc(6.3 * var(--u));
  height: calc(2.02 * var(--u));
  padding-top: calc(0.07 * var(--u));
  background: #e3f3fc;
  border: 1px solid rgba(5, 51, 97, 0.4);
  border-radius: calc(1.835 * var(--u));
  line-height: 1;
  white-space: nowrap;
}

.page-ichikawa-ashi .sec-cause__badge-label {
  font-size: calc(1.081 * var(--u));
}

.page-ichikawa-ashi .sec-cause__badge-num {
  font-family: var(--font-num);
  font-weight: 600;
  font-size: calc(1.204 * var(--u));
  letter-spacing: calc(0.06 * var(--u));
}

.page-ichikawa-ashi .sec-cause__card-title {
  font-size: calc(2.4 * var(--u));
  line-height: normal;
  letter-spacing: calc(0.144 * var(--u));
  white-space: nowrap;
  text-align: center;
}

.page-ichikawa-ashi .sec-cause__card-title-text {
  background: linear-gradient(rgba(236, 213, 111, 0.5), rgba(236, 213, 111, 0.5)) left bottom / 100% calc(1.36 * var(--u)) no-repeat;
}

.page-ichikawa-ashi .sec-cause__illust {
  position: relative;
  flex-shrink: 0;
  width: calc(30.781 * var(--u));
  height: calc(13.576 * var(--u));
  margin-top: calc(-1.2 * var(--u)); /* 見出しとの間隔 0.3u（カードの gap 1.5u を打ち消す） */
}

.page-ichikawa-ashi .sec-cause__illust img {
  position: absolute;
  max-width: none;
}

.page-ichikawa-ashi .sec-cause__illust-bg {
  left: 0;
  top: 0;
  width: 100%;
  height: calc(13.548 * var(--u));
}

.page-ichikawa-ashi .sec-cause__illust-foot {
  left: calc(4.582 * var(--u));
  top: calc(1.793 * var(--u));
  width: calc(20.123 * var(--u));
  height: calc(11.783 * var(--u));
  object-fit: cover;
}

.page-ichikawa-ashi .sec-cause__illust-accent {
  left: calc(22.074 * var(--u));
  top: calc(5.147 * var(--u));
  width: calc(3.869 * var(--u));
  height: calc(6.187 * var(--u));
  object-fit: cover;
  transform: rotate(-44.44deg);
}

.page-ichikawa-ashi .sec-cause__illust-sole {
  left: calc(5.37 * var(--u));
  top: calc(-0.016 * var(--u));
  width: calc(18.2 * var(--u));
  height: calc(15.1 * var(--u));
  object-fit: cover;
}

.page-ichikawa-ashi .sec-cause__illust-steps {
  left: calc(2.244 * var(--u));
  top: calc(-0.516 * var(--u));
  width: calc(23.8 * var(--u));
  height: calc(15.8 * var(--u));
  object-fit: cover;
}

.page-ichikawa-ashi .sec-cause__card-text {
  font-size: calc(1.6 * var(--u));
  line-height: calc(2.2 * var(--u));
  text-align: center;
  white-space: nowrap;
}

/* まとめ文 */
.page-ichikawa-ashi .sec-cause__summary {
  position: relative;
  width: calc(131.4 * var(--u));
  font-size: calc(3.7 * var(--u));
  line-height: calc(6.9 * var(--u));
  letter-spacing: calc(0.074 * var(--u));
  text-align: center;
}

/* ==== sec-concern ==== */
/* ---- sec-concern（「まだ歩けるから大丈夫」/ 7:326） ---- */

.page-ichikawa-ashi .sec-concern {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: calc(8 * var(--u));
  padding: calc(16 * var(--u)) calc(36 * var(--u));
  background: #fffbf2;
  color: var(--color-navy);
  font-weight: 700;
}

/* 傍点（Figmaは直径9pxの点を文字上8pxに配置） */
.page-ichikawa-ashi .sec-concern__title {
  padding-top: calc(1.7 * var(--u));
  font-size: calc(4.5 * var(--u));
  line-height: calc(5.12 * var(--u));
  text-align: center;
  white-space: nowrap;
}

.page-ichikawa-ashi .sec-concern__em {
  font-style: normal;
  -webkit-text-emphasis: filled dot var(--color-navy);
  text-emphasis: filled dot var(--color-navy);
  -webkit-text-emphasis-position: over right;
  text-emphasis-position: over right;
}

.page-ichikawa-ashi .sec-concern__body {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  width: 100%;
}

.page-ichikawa-ashi .sec-concern__text {
  font-size: calc(2.4 * var(--u));
  line-height: calc(4.5 * var(--u));
  white-space: nowrap;
}

.page-ichikawa-ashi .sec-concern__photo {
  position: relative;
  flex-shrink: 0;
  width: calc(45.372 * var(--u));
  height: calc(31.638 * var(--u));
  overflow: hidden;
  border-radius: calc(1.438 * var(--u));
}

.page-ichikawa-ashi .sec-concern__photo-img {
  position: absolute;
  left: calc(-2.496 * var(--u));
  top: calc(-2.253 * var(--u));
  width: calc(50.409 * var(--u));
  max-width: none;
  height: calc(33.606 * var(--u));
  object-fit: cover;
}

/* ==== sec-cta ==== */
/* CTA帯（7:349 = 基本形 / 6:2 = .sec-cta--know） */

.page-ichikawa-ashi .sec-cta {
  --cta-ring-y: calc(2.95 * var(--u));
  --cta-line-y: calc(1.8 * var(--u));
  display: flex;
  justify-content: center;
  padding: calc(9 * var(--u)) 0;
  background: #173a72;
}

.page-ichikawa-ashi .sec-cta--know {
  --cta-ring-y: calc(2.3 * var(--u));
  --cta-line-y: calc(1.35 * var(--u));
}

.page-ichikawa-ashi .sec-cta__inner {
  position: relative;
  width: calc(116.2 * var(--u));
}

.page-ichikawa-ashi .sec-cta__inner::before,
.page-ichikawa-ashi .sec-cta__inner::after {
  content: "";
  position: absolute;
  z-index: 0;
  border-radius: calc(3.5 * var(--u));
}

.page-ichikawa-ashi .sec-cta__inner::before {
  inset: calc(-1 * var(--cta-line-y)) calc(-1 * var(--u));
  border: 1px solid rgba(255, 255, 255, 0.8);
}

.page-ichikawa-ashi .sec-cta__inner::after {
  inset: calc(-1 * var(--cta-ring-y)) calc(-1.9 * var(--u));
  background: rgba(216, 227, 245, 0.6);
  box-shadow: calc(0.2 * var(--u)) calc(0.3 * var(--u)) calc(1.22 * var(--u)) calc(0.2 * var(--u)) #243c68;
}

.page-ichikawa-ashi .sec-cta__box {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: calc(2 * var(--u));
  padding: calc(4.5 * var(--u)) 0 calc(4 * var(--u));
  background: rgba(255, 255, 255, 0.94);
  border-radius: calc(3 * var(--u));
}

.page-ichikawa-ashi .sec-cta--know .sec-cta__box {
  gap: calc(4 * var(--u));
  padding: calc(6 * var(--u)) 0 calc(4.4 * var(--u));
}

.page-ichikawa-ashi .sec-cta__search {
  position: absolute;
  top: calc(3.7 * var(--u));
  left: calc(2.2 * var(--u));
  width: calc(40.7 * var(--u));
  height: auto;
  opacity: 0.14;
  pointer-events: none;
}

.page-ichikawa-ashi .sec-cta--know .sec-cta__search {
  top: calc(1.7 * var(--u));
  left: calc(4.3 * var(--u));
  width: calc(31.4 * var(--u));
}

.page-ichikawa-ashi .sec-cta__staff {
  position: absolute;
  right: calc(3.4 * var(--u));
  bottom: 0;
  width: calc(26 * var(--u));
  height: auto;
  filter: drop-shadow(0 calc(0.4 * var(--u)) calc(0.4 * var(--u)) rgba(0, 0, 0, 0.25));
  pointer-events: none;
}

.page-ichikawa-ashi .sec-cta--know .sec-cta__staff {
  right: calc(3.5 * var(--u));
  width: calc(25 * var(--u));
}

.page-ichikawa-ashi .sec-cta__text {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: calc(1.4 * var(--u));
  color: #173a72;
  font-weight: 700;
  text-align: center;
}

.page-ichikawa-ashi .sec-cta__title {
  font-size: calc(4.1 * var(--u));
  line-height: calc(5.3 * var(--u));
}

.page-ichikawa-ashi .sec-cta--know .sec-cta__title {
  line-height: calc(4.8 * var(--u));
}

.page-ichikawa-ashi .sec-cta__lead {
  font-size: calc(2 * var(--u));
  line-height: calc(3.2 * var(--u));
}

.page-ichikawa-ashi .sec-cta__btns {
  position: relative;
  display: flex;
  justify-content: center;
  gap: calc(2 * var(--u));
}

.page-ichikawa-ashi .sec-cta__btn {
  width: calc(35.2 * var(--u));
  height: calc(6.3 * var(--u));
  font-size: calc(1.9 * var(--u));
  box-shadow: var(--shadow-btn);
}

.page-ichikawa-ashi .sec-cta__note {
  position: relative;
  margin-top: calc(0.5 * var(--u));
  color: #16357f;
  font-size: calc(1.3 * var(--u));
  font-weight: 500;
  text-align: center;
}

/* ==== sec-faq ==== */
/* ---- sec-faq（9:1696） ---- */

.page-ichikawa-ashi .sec-faq {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: calc(10 * var(--u));
  padding: calc(17.5 * var(--u)) calc(36 * var(--u)) calc(21.1 * var(--u));
  background: #edf6fc;
}

.page-ichikawa-ashi .sec-faq__head {
  position: relative;
  text-align: center;
  font-weight: 700;
}

.page-ichikawa-ashi .sec-faq__title {
  position: relative;
  z-index: 1;
  color: var(--color-navy);
  font-size: calc(5.3 * var(--u));
  line-height: calc(5.12 * var(--u));
  letter-spacing: -0.01em;
}

.page-ichikawa-ashi .sec-faq__bg-en {
  position: absolute;
  left: 50%;
  bottom: calc(5.975 * var(--u));
  width: calc(71.6 * var(--u));
  transform: translate(-50%, 50%);
  color: rgba(23, 58, 114, 0.08);
  font-size: calc(15 * var(--u));
  line-height: calc(12 * var(--u));
  letter-spacing: 0.02em;
  white-space: nowrap;
  pointer-events: none;
}

.page-ichikawa-ashi .sec-faq__list {
  display: flex;
  flex-direction: column;
  gap: calc(4.36 * var(--u));
  width: calc(119.8 * var(--u));
}

.page-ichikawa-ashi .sec-faq__q {
  display: flex;
  align-items: center;
  gap: calc(3.27 * var(--u));
  padding: calc(2.18 * var(--u)) calc(3.27 * var(--u));
  background: var(--color-white);
  border-radius: calc(1.36 * var(--u));
  list-style: none;
  cursor: pointer;
}

.page-ichikawa-ashi .sec-faq__q::-webkit-details-marker {
  display: none;
}

.page-ichikawa-ashi .sec-faq__q-icon,
.page-ichikawa-ashi .sec-faq__a-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: calc(4.9 * var(--u));
  height: calc(4.9 * var(--u));
  border-radius: 50%;
  color: var(--color-white);
  font-family: var(--font-num);
  font-size: calc(2.18 * var(--u));
  font-weight: 600;
  line-height: 1;
}

.page-ichikawa-ashi .sec-faq__q-icon {
  background: var(--color-navy);
}

.page-ichikawa-ashi .sec-faq__a-icon {
  background: #f3bf1e;
}

.page-ichikawa-ashi .sec-faq__q-text {
  flex: 1 1 0;
  min-width: 0;
  color: var(--color-gray);
  font-size: calc(2.2 * var(--u));
  font-weight: 500;
  line-height: 1.7;
}

.page-ichikawa-ashi .sec-faq__toggle {
  position: relative;
  flex-shrink: 0;
  width: calc(2.18 * var(--u));
  height: calc(2.18 * var(--u));
}

.page-ichikawa-ashi .sec-faq__toggle::before,
.page-ichikawa-ashi .sec-faq__toggle::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  background: var(--color-navy);
  transform: translate(-50%, -50%);
}

.page-ichikawa-ashi .sec-faq__toggle::before {
  width: 100%;
  height: calc(0.272 * var(--u));
}

.page-ichikawa-ashi .sec-faq__toggle::after {
  width: calc(0.272 * var(--u));
  height: 100%;
  transition: transform 0.2s;
}

/* 閉じるアニメーション中（is-closing）は先に＋へ戻す */
.page-ichikawa-ashi .sec-faq__item[open]:not(.is-closing) .sec-faq__toggle::after {
  transform: translate(-50%, -50%) scaleY(0);
}

/* 高さアニメーション（main.js）で上の余白ごと伸縮させるため margin でなく padding */
.page-ichikawa-ashi .sec-faq__a {
  display: flex;
  align-items: flex-start;
  gap: calc(3.27 * var(--u));
  padding: calc(3.27 * var(--u)) calc(3.54 * var(--u)) 0;
}

.page-ichikawa-ashi .sec-faq__a-text {
  flex: 1 1 0;
  min-width: 0;
  color: var(--color-gray);
  font-size: calc(2.2 * var(--u));
  font-weight: 500;
  line-height: 1.8;
  letter-spacing: 0.04em;
}

/* ==== sec-flow ==== */
.page-ichikawa-ashi .sec-flow {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: calc(6.5 * var(--u));
  padding: calc(12 * var(--u)) 0 calc(16 * var(--u));
  background: #f1f8fd;
}

.page-ichikawa-ashi .sec-flow__title {
  font-size: calc(5.8 * var(--u));
  font-weight: 700;
  line-height: calc(5.12 * var(--u));
  color: var(--color-navy);
  text-align: center;
  white-space: nowrap;
}

.page-ichikawa-ashi .sec-flow__list {
  display: flex;
  justify-content: center;
  align-items: flex-start;
  width: 100%;
}

.page-ichikawa-ashi .sec-flow__item {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: calc(3 * var(--u));
  width: calc(30 * var(--u));
}

/* 矢羽根ラベル：clip-path で形を切り、影は親の drop-shadow で付ける */
.page-ichikawa-ashi .sec-flow__label {
  width: 100%;
  filter: drop-shadow(0 calc(0.52 * var(--u)) calc(0.65 * var(--u)) rgba(0, 0, 0, 0.15));
}

.page-ichikawa-ashi .sec-flow__label-inner {
  display: flex;
  align-items: baseline;
  height: calc(9.874 * var(--u));
  padding: calc(3.2 * var(--u)) 0 0 calc(3.1 * var(--u));
  background: #4188e1;
  clip-path: polygon(0 0, 91.5% 0, 100% 50%, 91.5% 100%, 0 100%, 6.6% 50%);
  font-weight: 900;
  line-height: 1;
  color: var(--color-white);
  text-shadow: 0 0 calc(1.3 * var(--u)) rgba(0, 83, 92, 0.3);
  white-space: nowrap;
}

.page-ichikawa-ashi .sec-flow__item--reserve .sec-flow__label-inner {
  clip-path: polygon(0 0, 91.5% 0, 100% 50%, 91.5% 100%, 0 100%);
}

.page-ichikawa-ashi .sec-flow__item--visit .sec-flow__label-inner {
  background: #347bd3;
}

.page-ichikawa-ashi .sec-flow__item--treatment .sec-flow__label-inner {
  background: #236ac1;
}

.page-ichikawa-ashi .sec-flow__item--next .sec-flow__label-inner {
  background: #1158b0;
}

.page-ichikawa-ashi .sec-flow__label-step {
  font-size: calc(2.3386 * var(--u));
  white-space: pre;
}

.page-ichikawa-ashi .sec-flow__label-num {
  font-size: calc(3.6378 * var(--u));
}

.page-ichikawa-ashi .sec-flow__card {
  display: flex;
  flex-direction: column;
  gap: calc(1.7 * var(--u));
  width: calc(27.2 * var(--u));
  height: calc(43.8 * var(--u));
  padding: calc(2.1 * var(--u)) calc(1.7 * var(--u));
  background: var(--color-white);
  border-radius: calc(0.78 * var(--u));
}

.page-ichikawa-ashi .sec-flow__card-media {
  position: relative;
  flex-shrink: 0;
  width: calc(23.3 * var(--u));
  height: calc(20.8 * var(--u));
  overflow: hidden;
}

.page-ichikawa-ashi .sec-flow__card-img {
  position: absolute;
  max-width: none;
  object-fit: cover;
}

.page-ichikawa-ashi .sec-flow__item--reserve .sec-flow__card-img {
  top: calc(-0.318 * var(--u));
  left: calc(-4.95 * var(--u));
  width: calc(31.6 * var(--u));
  height: calc(21.1 * var(--u));
}

.page-ichikawa-ashi .sec-flow__item--visit .sec-flow__card-img {
  top: calc(-3.7 * var(--u));
  left: calc(-12.5 * var(--u));
  width: calc(39.7 * var(--u));
  height: calc(26.4 * var(--u));
}

.page-ichikawa-ashi .sec-flow__item--treatment .sec-flow__card-img {
  top: calc(-2.1 * var(--u));
  left: calc(-10.9 * var(--u));
  width: calc(34.6 * var(--u));
  height: calc(23.1 * var(--u));
}

.page-ichikawa-ashi .sec-flow__item--next .sec-flow__card-img {
  top: 0;
  left: calc(-4.2 * var(--u));
  width: calc(31.2 * var(--u));
  height: calc(20.8 * var(--u));
}

.page-ichikawa-ashi .sec-flow__card-title {
  font-size: calc(2.1 * var(--u));
  font-weight: 700;
  line-height: 1.38;
  letter-spacing: calc(0.063 * var(--u));
  color: #4188e1;
}

.page-ichikawa-ashi .sec-flow__card-text {
  font-size: calc(1.6 * var(--u));
  font-weight: 400;
  line-height: calc(2.5 * var(--u));
  color: var(--color-gray-2);
}

/* ==== sec-footer ==== */
/* ---- sec-footer（9:1862） ---- */

.page-ichikawa-ashi .sec-footer {
  display: flex;
  flex-direction: column;
  gap: calc(2.4 * var(--u));
  padding: calc(8 * var(--u)) calc(12 * var(--u));
  background: var(--color-navy-deep);
  color: #c7d6e5;
  font-weight: 400;
}

.page-ichikawa-ashi .sec-footer__main {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
}

.page-ichikawa-ashi .sec-footer__logo {
  width: calc(34 * var(--u));
  height: calc(9.9 * var(--u));
}

.page-ichikawa-ashi .sec-footer__address {
  width: calc(38.5 * var(--u));
  padding-top: calc(1.47 * var(--u));
  font-size: calc(1.6 * var(--u));
  line-height: calc(2.66 * var(--u));
}

.page-ichikawa-ashi .sec-footer__tel {
  padding-top: calc(2.4 * var(--u));
  color: var(--color-white);
  font-size: calc(2.8 * var(--u));
  line-height: calc(3.38 * var(--u));
}

.page-ichikawa-ashi .sec-footer__hours {
  padding-top: calc(0.07 * var(--u));
  font-size: calc(1.6 * var(--u));
  line-height: calc(2.34 * var(--u));
}

.page-ichikawa-ashi .sec-footer__nav-list {
  display: grid;
  grid-auto-flow: column;
  grid-template-rows: repeat(5, auto);
  grid-auto-columns: max-content;
  gap: calc(1.6 * var(--u)) calc(4 * var(--u));
  font-size: calc(1.5 * var(--u));
  line-height: calc(2.66 * var(--u));
}

.page-ichikawa-ashi .sec-footer__nav-item a {
  white-space: nowrap;
  transition: color 0.2s;
}

.page-ichikawa-ashi .sec-footer__nav-item a:hover {
  color: var(--color-white);
}

.page-ichikawa-ashi .sec-footer__cta {
  display: flex;
  flex-direction: column;
  gap: calc(1.2 * var(--u));
  width: calc(30 * var(--u));
  padding-bottom: calc(7.877 * var(--u));
}

.page-ichikawa-ashi .sec-footer__btn {
  width: 100%;
  padding: calc(1.6 * var(--u));
  font-size: calc(2.2 * var(--u));
  line-height: normal;
  box-shadow: var(--shadow-btn);
}

.page-ichikawa-ashi .sec-footer__btn--form {
  background: #fac933;
}

.page-ichikawa-ashi .sec-footer__cta-note {
  padding-top: calc(0.2 * var(--u));
  font-size: calc(1.3 * var(--u));
  line-height: calc(2.16 * var(--u));
  text-align: center;
  white-space: nowrap;
}

.page-ichikawa-ashi .sec-footer__bottom {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding-top: calc(2.4 * var(--u));
  border-top: 1px solid #16357f;
  font-size: calc(1.1 * var(--u));
  line-height: calc(2.09 * var(--u));
}

.page-ichikawa-ashi .sec-footer__copy small {
  font-size: inherit;
}

/* ==== sec-gallery ==== */
/* お客様写真の横帯（6:118）右→左の無限ループ。2セット並べて -50% 移動 */

.page-ichikawa-ashi .sec-gallery {
  overflow: hidden;
  background: var(--color-white);
}

.page-ichikawa-ashi .sec-gallery__track {
  display: flex;
  width: max-content;
  animation: sec-gallery-loop 60s linear infinite;
}

.page-ichikawa-ashi .sec-gallery__list {
  display: flex;
  gap: calc(2 * var(--u));
  padding-right: calc(2 * var(--u));
}

.page-ichikawa-ashi .sec-gallery__item {
  flex-shrink: 0;
}

.page-ichikawa-ashi .sec-gallery__img {
  width: calc(36 * var(--u));
  height: calc(31.4 * var(--u));
  object-fit: cover;
}

@keyframes sec-gallery-loop {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(-50%);
  }
}

@media (prefers-reduced-motion: reduce) {
  .page-ichikawa-ashi .sec-gallery__track {
    animation: none;
  }
}

/* ==== sec-header ==== */
.page-ichikawa-ashi .sec-header {
  position: sticky;
  top: 0;
  z-index: 100;
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: var(--header-h);
  padding: 0 calc(5 * var(--u)) 0 calc(4.2 * var(--u));
  background: var(--color-white);
  border-top: 1px solid #d3dceb;
  border-bottom: 1px solid #d3dceb;
}

.page-ichikawa-ashi .sec-header__logo {
  display: flex;
  flex-direction: column;
  gap: calc(0.22 * var(--u));
  width: calc(34.9 * var(--u));
}

.page-ichikawa-ashi .sec-header__logo-catch {
  width: calc(24.94 * var(--u));
  height: auto;
  margin-left: calc(0.846 * var(--u));
}

.page-ichikawa-ashi .sec-header__logo-main {
  width: calc(34.74 * var(--u));
  height: auto;
}

.page-ichikawa-ashi .sec-header__nav {
  display: flex;
  align-items: center;
  gap: calc(1.6 * var(--u));
}

.page-ichikawa-ashi .sec-header__contact {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  min-width: calc(18.6 * var(--u));
  color: var(--color-navy);
  white-space: nowrap;
}

.page-ichikawa-ashi .sec-header__tel {
  display: flex;
  align-items: center;
}

.page-ichikawa-ashi .sec-header__tel-icon {
  width: calc(1.5 * var(--u));
  height: calc(2 * var(--u));
}

.page-ichikawa-ashi .sec-header__tel-num {
  font-size: calc(2.6 * var(--u));
  font-weight: 600;
  line-height: calc(2.04 * var(--u));
  letter-spacing: 0.01em;
}

.page-ichikawa-ashi .sec-header__hours {
  font-size: calc(1.5 * var(--u));
  font-weight: 700;
  line-height: 1.2;
  text-align: right;
}

.page-ichikawa-ashi .sec-header__btn {
  padding: calc(1.1 * var(--u)) calc(1.6 * var(--u));
  font-size: calc(1.6 * var(--u));
  line-height: 1.2;
  white-space: nowrap;
  box-shadow: var(--shadow-btn);
}

/* ==== sec-hero ==== */
.page-ichikawa-ashi .sec-hero {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  padding: calc(7.4 * var(--u)) calc(16 * var(--u)) calc(5.6 * var(--u));
  overflow: hidden;
  color: var(--color-navy);
}

.page-ichikawa-ashi .sec-hero__bg {
  position: absolute;
  inset: 0;
  pointer-events: none;
}

.page-ichikawa-ashi .sec-hero__bg-base {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  max-width: none;
  object-fit: cover;
}

/* 人物の切り抜きを下の全体写真に重ねる。Figma値（top -13.67%・幅100%）だと全体写真と
   数px食い違って輪郭が二重に見えたため、画像同士の位置合わせで求めた値に補正
   （縮小 0.99・右へ13px・下へ12px @1920。2026-10-16 鈴木指摘） */
.page-ichikawa-ashi .sec-hero__bg-photo {
  position: absolute;
  top: calc(-13.67% + 1.2 * var(--u));
  left: calc(1.3 * var(--u));
  width: 99%;
  height: calc(137.58% * 0.99);
  max-width: none;
  object-fit: cover;
}

.page-ichikawa-ashi .sec-hero__main {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: calc(9 * var(--u));
  padding-bottom: calc(10 * var(--u));
}

.page-ichikawa-ashi .sec-hero__copy {
  display: flex;
  flex-direction: column;
  gap: calc(6 * var(--u));
}

.page-ichikawa-ashi .sec-hero__label {
  width: calc(69.9 * var(--u));
  font-size: calc(3.5 * var(--u));
  font-weight: 700;
  line-height: calc(3.5773 * var(--u));
  letter-spacing: 0.04em;
}

.page-ichikawa-ashi .sec-hero__label-num {
  font-size: calc(4 * var(--u));
}

.page-ichikawa-ashi .sec-hero__copy-body {
  display: flex;
  flex-direction: column;
  gap: calc(2.3 * var(--u));
  white-space: nowrap;
}

.page-ichikawa-ashi .sec-hero__title {
  font-size: calc(8.4 * var(--u));
  font-weight: 900;
  line-height: 1.2;
  letter-spacing: 0.03em;
}

.page-ichikawa-ashi .sec-hero__lead {
  font-size: calc(2.8 * var(--u));
  font-weight: 700;
  line-height: calc(4.2 * var(--u));
  letter-spacing: 0.05em;
}

.page-ichikawa-ashi .sec-hero__badges {
  display: flex;
}

.page-ichikawa-ashi .sec-hero__badge {
  width: calc(25.64 * var(--u));
  height: calc(24.677 * var(--u));
}

.page-ichikawa-ashi .sec-hero__badge + .sec-hero__badge {
  margin-left: calc(-1.6 * var(--u));
}

.page-ichikawa-ashi .sec-hero__badge img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.page-ichikawa-ashi .sec-hero__side {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  align-self: stretch;
  flex-shrink: 0;
  width: calc(57.6 * var(--u));
}

.page-ichikawa-ashi .sec-hero__card {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: calc(1.2 * var(--u));
  padding: calc(2.6 * var(--u)) calc(2.4 * var(--u));
  background: var(--color-white);
  border: 1px solid var(--color-white);
  border-radius: calc(2.4 * var(--u));
  box-shadow: 0 calc(1.6 * var(--u)) calc(2.02 * var(--u)) rgba(5, 31, 56, 0.28);
}

.page-ichikawa-ashi .sec-hero__price {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
  padding: calc(2 * var(--u)) 0 calc(1.6 * var(--u));
  background: var(--color-white);
  border: 1px solid var(--color-border);
  border-radius: calc(2.2 * var(--u));
  box-shadow: 0 calc(0.8 * var(--u)) calc(1.2 * var(--u)) rgba(5, 31, 56, 0.07);
}

.page-ichikawa-ashi .sec-hero__price-inner {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  line-height: 1.2;
  text-align: center;
  white-space: nowrap;
}

.page-ichikawa-ashi .sec-hero__price-label,
.page-ichikawa-ashi .sec-hero__price-value {
  align-self: center;
  font-weight: 700;
  letter-spacing: calc(0.108 * var(--u));
}

.page-ichikawa-ashi .sec-hero__price-label {
  font-size: calc(1.8 * var(--u));
}

.page-ichikawa-ashi .sec-hero__price-first,
.page-ichikawa-ashi .sec-hero__price-yen {
  font-size: calc(3.3 * var(--u));
  font-weight: 900;
}

.page-ichikawa-ashi .sec-hero__price-first {
  letter-spacing: calc(0.132 * var(--u));
}

.page-ichikawa-ashi .sec-hero__price-num {
  font-family: var(--font-num);
  font-size: calc(6 * var(--u));
  font-weight: 700;
}

.page-ichikawa-ashi .sec-hero__price-tax {
  font-size: calc(2.5 * var(--u));
}

.page-ichikawa-ashi .sec-hero__price-paren {
  font-weight: 900;
}

.page-ichikawa-ashi .sec-hero__price-note {
  font-size: calc(1.4 * var(--u));
  font-weight: 400;
  color: var(--color-text);
}

.page-ichikawa-ashi .sec-hero__btn {
  width: 100%;
  padding: calc(1.8 * var(--u)) 0;
  font-size: calc(2.2 * var(--u));
  line-height: 1.2;
}

.page-ichikawa-ashi .sec-hero__card-note {
  font-size: calc(1.4 * var(--u));
  font-weight: 500;
  line-height: calc(2.34 * var(--u));
  color: var(--color-text);
  white-space: nowrap;
}

/* ==== sec-insight ==== */
.page-ichikawa-ashi .sec-insight {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: calc(4 * var(--u));
  padding: calc(13.6 * var(--u)) 0 calc(7.5 * var(--u));
  font-weight: 700;
  text-align: center;
}

.page-ichikawa-ashi .sec-insight__bg {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  max-width: none;
  object-fit: cover;
  pointer-events: none;
}

.page-ichikawa-ashi .sec-insight__arrow {
  position: absolute;
  top: calc(-2.68 * var(--u));
  left: 50%;
  width: calc(78.2 * var(--u));
  height: calc(13.7 * var(--u));
  object-fit: cover;
  transform: translateX(-50%);
  pointer-events: none;
}

.page-ichikawa-ashi .sec-insight__title {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: calc(1.6 * var(--u));
  font-weight: 700;
  line-height: 1.2;
  white-space: nowrap;
}

.page-ichikawa-ashi .sec-insight__title-pre {
  font-size: calc(4.5 * var(--u));
  color: #6c6a6a;
}

.page-ichikawa-ashi .sec-insight__band {
  display: flex;
  align-items: center;
  justify-content: center;
  width: calc(84 * var(--u));
  height: calc(9.8231 * var(--u));
  padding: 0 calc(1.5 * var(--u));
  background: #767676 url("../img/sec-insight/insight-band.webp") center / cover no-repeat;
  box-shadow: calc(0.352 * var(--u)) calc(0.47 * var(--u)) calc(0.763 * var(--u)) calc(0.235 * var(--u)) rgba(0, 0, 0, 0.15);
}

.page-ichikawa-ashi .sec-insight__band-text {
  font-size: calc(5.2 * var(--u));
  letter-spacing: 0.06em;
  color: var(--color-white);
}

.page-ichikawa-ashi .sec-insight__title-post {
  font-size: calc(4 * var(--u));
  color: #5b5959;
}

.page-ichikawa-ashi .sec-insight__lead {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  font-size: calc(3.6526 * var(--u));
  line-height: calc(7.2 * var(--u));
  letter-spacing: 0.03em;
  color: #173a72;
  text-shadow: 0 0 calc(0.7817 * var(--u)) rgba(255, 255, 255, 0.6), 0 0 calc(2.6579 * var(--u)) rgba(255, 255, 255, 0.29);
  white-space: nowrap;
}

.page-ichikawa-ashi .sec-insight__lead-line {
  position: relative;
  isolation: isolate;
}

.page-ichikawa-ashi .sec-insight__lead-line::before {
  content: "";
  position: absolute;
  left: 50%;
  z-index: -1;
  height: calc(2.2 * var(--u));
  background: rgba(236, 213, 111, 0.8);
  transform: translateX(-50%);
}

.page-ichikawa-ashi .sec-insight__lead-line--first::before {
  top: calc(5.397 * var(--u));
  width: calc(120 * var(--u));
}

.page-ichikawa-ashi .sec-insight__lead-line--second {
  padding-left: calc(3.6 * var(--u));
}

.page-ichikawa-ashi .sec-insight__lead-line--second::before {
  bottom: 0;
  left: calc(50% - 1.8 * var(--u) + 0.05 * var(--u));
  width: calc(87.5 * var(--u));
}

.page-ichikawa-ashi .sec-insight__lead-xl {
  font-size: calc(6 * var(--u));
  letter-spacing: 0.03em;
}

.page-ichikawa-ashi .sec-insight__lead-l {
  font-size: calc(4.8252 * var(--u));
}

.page-ichikawa-ashi .sec-insight__lead-xxl {
  font-size: calc(5.2 * var(--u));
}

/* ==== sec-media ==== */
.page-ichikawa-ashi .sec-media {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: calc(13.6 * var(--u));
  padding: calc(12 * var(--u)) calc(21.6 * var(--u)) calc(16 * var(--u)) calc(21.4 * var(--u));
  color: var(--color-navy);
  font-weight: 700;
  text-align: center;
}

.page-ichikawa-ashi .sec-media__bg {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  max-width: none;
  object-fit: cover;
  pointer-events: none;
}

.page-ichikawa-ashi .sec-media > :not(.sec-media__bg) {
  position: relative;
}

/* ---- テレビ ---- */

.page-ichikawa-ashi .sec-media__tv-block {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: calc(5.3 * var(--u));
  width: 100%;
}

.page-ichikawa-ashi .sec-media__tv-head {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: calc(6 * var(--u));
}

.page-ichikawa-ashi .sec-media__tv-title {
  display: flex;
  align-items: flex-end;
  justify-content: center;
  white-space: nowrap;
}

.page-ichikawa-ashi .sec-media__tv-text {
  display: flex;
  align-items: flex-end;
  padding-bottom: calc(1.6 * var(--u));
}

.page-ichikawa-ashi .sec-media__tv-lead {
  font-size: calc(5.109 * var(--u));
  line-height: calc(4.936 * var(--u));
  letter-spacing: -0.01em;
}

.page-ichikawa-ashi .sec-media__tv-program {
  position: relative;
  display: block;
}

.page-ichikawa-ashi .sec-media__tv-channel {
  position: absolute;
  left: calc(0.87 * var(--u));
  top: calc(-5.83 * var(--u));
  display: flex;
  align-items: center;
  font-size: calc(2.9 * var(--u));
  line-height: calc(1.911 * var(--u));
  letter-spacing: -0.072em;
  text-shadow: 0 calc(0.435 * var(--u)) calc(0.435 * var(--u)) rgba(255, 255, 255, 0.72);
}

.page-ichikawa-ashi .sec-media__tv-channel-big {
  font-size: calc(3 * var(--u));
}

.page-ichikawa-ashi .sec-media__tv-icon {
  width: calc(4.1 * var(--u));
  height: calc(3.9 * var(--u));
  margin-left: calc(0.4 * var(--u));
  object-fit: cover;
}

.page-ichikawa-ashi .sec-media__tv-em {
  display: block;
  color: #dd011d;
  font-size: calc(8.206 * var(--u));
  line-height: calc(5.227 * var(--u));
  letter-spacing: -0.01em;
  text-shadow: 0 calc(0.435 * var(--u)) calc(0.848 * var(--u)) rgba(255, 255, 255, 0.9);
  padding: 0 calc(0.6 * var(--u));
}

.page-ichikawa-ashi .sec-media__tv-em-sm {
  font-size: calc(6.579 * var(--u));
}

.page-ichikawa-ashi .sec-media__tv-mark {
  display: inline-block;
  width: calc(6.92 * var(--u));
  font-size: calc(11.369 * var(--u));
  line-height: calc(10.983 * var(--u));
  letter-spacing: -0.01em;
  transform: rotate(14.52deg);
}

.page-ichikawa-ashi .sec-media__tv-desc {
  font-size: calc(2.2 * var(--u));
  line-height: calc(2.925 * var(--u));
}

.page-ichikawa-ashi .sec-media__tv-wrap {
  position: relative;
  width: 100%;
  padding-left: calc(11.7 * var(--u));
}

/* テレビの右後ろの紺の箱（テレビが左端に37pxほど重なる） */
.page-ichikawa-ashi .sec-media__tv-plate {
  position: absolute;
  right: calc(14.748 * var(--u));
  bottom: calc(3.529 * var(--u));
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  gap: calc(1.6 * var(--u));
  text-align: left;
  width: calc(49.452 * var(--u));
  height: calc(33.924 * var(--u));
  padding-left: calc(6.5 * var(--u));
  background: var(--color-navy);
  color: var(--color-white);
  font-weight: 700;
  font-size: calc(4.2511 * var(--u));
  line-height: calc(4.1067 * var(--u));
  letter-spacing: -0.01em;
  white-space: nowrap;
}

.page-ichikawa-ashi .sec-media__tv-plate-row {
  display: block;
  transform: rotate(-0.42deg);
}

.page-ichikawa-ashi .sec-media__tv-plate-row--em {
  display: flex;
  align-items: baseline;
  padding-left: calc(1.5 * var(--u));
  line-height: normal;
}

.page-ichikawa-ashi .sec-media__tv-plate-row--last {
  padding-left: calc(5.5 * var(--u));
}

.page-ichikawa-ashi .sec-media__tv-plate-em {
  color: var(--color-form);
  font-size: calc(6.5876 * var(--u));
  line-height: normal;
  letter-spacing: -0.06em;
}

.page-ichikawa-ashi .sec-media__tv {
  position: relative;
  width: calc(76.8 * var(--u));
  height: calc(54.55 * var(--u));
  overflow: hidden;
}

.page-ichikawa-ashi .sec-media__tv-part {
  position: absolute;
  max-width: none;
}

.page-ichikawa-ashi .sec-media__tv-part--shadow {
  left: calc(5.89 * var(--u));
  top: calc(52.52 * var(--u));
  width: calc(45.37 * var(--u));
  height: calc(2.35 * var(--u));
  opacity: 0.46;
  mix-blend-mode: multiply;
}

.page-ichikawa-ashi .sec-media__tv-part--base {
  left: calc(25.18 * var(--u));
  top: calc(53.3 * var(--u));
  width: calc(26.43 * var(--u));
  height: calc(1.25 * var(--u));
}

.page-ichikawa-ashi .sec-media__tv-part--neck {
  left: calc(27.88 * var(--u));
  top: calc(44.85 * var(--u));
  width: calc(21.04 * var(--u));
  height: calc(8.46 * var(--u));
}

.page-ichikawa-ashi .sec-media__tv-part--neck-in {
  left: calc(28.93 * var(--u));
  top: calc(45.9 * var(--u));
  width: calc(18.98 * var(--u));
  height: calc(3.04 * var(--u));
}

.page-ichikawa-ashi .sec-media__tv-part--neck-foot {
  left: calc(27.88 * var(--u));
  top: calc(51.3 * var(--u));
  width: calc(21.04 * var(--u));
  height: calc(2 * var(--u));
}

.page-ichikawa-ashi .sec-media__tv-part--frame {
  left: 0;
  top: 0;
  width: calc(76.8 * var(--u));
  height: calc(45.99 * var(--u));
}

.page-ichikawa-ashi .sec-media__tv-screen {
  position: absolute;
  left: calc(1.67 * var(--u));
  top: calc(1.94 * var(--u));
  width: calc(73.56 * var(--u));
  height: calc(41.63 * var(--u));
  overflow: hidden;
}

.page-ichikawa-ashi .sec-media__tv-screen img {
  position: absolute;
  left: calc(-0.1 * var(--u));
  top: calc(-0.1 * var(--u));
  width: calc(74.44 * var(--u));
  height: calc(41.73 * var(--u));
  max-width: none;
  object-fit: fill;
}

/* ---- 雑誌・書籍 ---- */

.page-ichikawa-ashi .sec-media__press {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  width: calc(146.4 * var(--u));
}

.page-ichikawa-ashi .sec-media__press-item {
  display: flex;
  flex-direction: column;
  align-items: center;
}

.page-ichikawa-ashi .sec-media__press-head {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: calc(3 * var(--u));
  white-space: nowrap;
}

.page-ichikawa-ashi .sec-media__press-title {
  font-size: calc(6.2 * var(--u));
  line-height: calc(5.12 * var(--u));
}

.page-ichikawa-ashi .sec-media__press-title-sm {
  font-size: calc(5 * var(--u));
}

.page-ichikawa-ashi .sec-media__press-desc {
  font-size: calc(1.7 * var(--u));
  font-weight: 500;
  line-height: calc(2.925 * var(--u));
}

.page-ichikawa-ashi .sec-media__magazine {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: calc(2.4 * var(--u));
}

.page-ichikawa-ashi .sec-media__magazine-imgs {
  position: relative;
  width: calc(70.4 * var(--u));
  height: calc(53.9 * var(--u));
}

.page-ichikawa-ashi .sec-media__magazine-josei {
  width: calc(70.4 * var(--u));
  height: calc(28.1 * var(--u));
  object-fit: cover;
}

.page-ichikawa-ashi .sec-media__magazine-php {
  position: absolute;
  left: calc(7.5 * var(--u));
  top: calc(16.3 * var(--u));
  width: calc(56.5 * var(--u));
  height: calc(37.6 * var(--u));
  object-fit: cover;
}

.page-ichikawa-ashi .sec-media__caption {
  color: var(--color-text);
  font-size: calc(1.6 * var(--u));
  font-weight: 400;
  line-height: normal;
  white-space: nowrap;
}

.page-ichikawa-ashi .sec-media__caption--book {
  line-height: calc(2.925 * var(--u));
}

/* 書籍5冊の扇形。--x/--y は 551×519 の枠内での表紙中心（Figmaのpx値。÷10 して u 換算） */
.page-ichikawa-ashi .sec-media__books {
  position: relative;
  width: calc(61.72 * var(--u));
  height: calc(58.98 * var(--u));
}

.page-ichikawa-ashi .sec-media__books-inner {
  position: absolute;
  left: 50%;
  top: 50%;
  width: calc(55.11 * var(--u));
  height: calc(51.9 * var(--u));
  transform: translate(-50%, -50%) rotate(7.9deg);
}

.page-ichikawa-ashi .sec-media__book {
  position: absolute;
  left: calc((var(--x) - 201.5) / 10 * var(--u));
  top: calc((var(--y) - 249.5) / 10 * var(--u));
  width: calc(40.3 * var(--u));
  height: calc(49.9 * var(--u));
  max-width: none;
  object-fit: cover;
  box-shadow: calc(0.5 * var(--u)) calc(0.4 * var(--u)) calc(0.4 * var(--u)) rgba(0, 0, 0, 0.09);
  transform: rotate(var(--r));
}

/* ---- ラジオ ---- */

.page-ichikawa-ashi .sec-media__radio {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: calc(6.2 * var(--u));
}

.page-ichikawa-ashi .sec-media__radio-title {
  color: #14264f;
  font-size: calc(5.5 * var(--u));
  line-height: calc(5.635 * var(--u));
  white-space: nowrap;
}

.page-ichikawa-ashi .sec-media__radio-title-em {
  font-size: calc(6.824 * var(--u));
}

.page-ichikawa-ashi .sec-media__radio-photos {
  position: relative;
  width: calc(132.83 * var(--u));
  height: calc(64.6 * var(--u));
}

.page-ichikawa-ashi .sec-media__radio-photo,
.page-ichikawa-ashi .sec-media__radio-logo {
  position: absolute;
  max-width: none;
  object-fit: cover;
}

.page-ichikawa-ashi .sec-media__radio-photo {
  box-shadow: calc(0.8 * var(--u)) calc(0.5 * var(--u)) calc(1.5 * var(--u)) calc(0.5 * var(--u)) rgba(0, 0, 0, 0.13);
}

.page-ichikawa-ashi .sec-media__radio-photo--left {
  left: calc(1.69 * var(--u));
  top: calc(13.85 * var(--u));
  width: calc(64.6 * var(--u));
  height: calc(48.45 * var(--u));
  transform: rotate(-4.2deg);
}

.page-ichikawa-ashi .sec-media__radio-logo {
  left: calc(68 * var(--u));
  top: calc(44.98 * var(--u));
  width: calc(58.3 * var(--u));
  height: calc(13.9 * var(--u));
}

.page-ichikawa-ashi .sec-media__radio-photo--right {
  left: calc(63.9 * var(--u));
  top: calc(0.88 * var(--u));
  width: calc(68.4 * var(--u));
  height: calc(42.3 * var(--u));
  transform: rotate(1.48deg);
}

/* ==== sec-method ==== */
/* ---- sec-method（OUR APPROACH / 7:254） ---- */
/* 重なり順: 背景英字 < 写真 < 本文 < 特徴カード < テープ（DOM順＝描画順） */

.page-ichikawa-ashi .sec-method {
  display: flex;
  flex-direction: column;
  align-items: center;
  background: #fffbf2;
  color: var(--color-navy);
  font-weight: 700;
  overflow-x: clip;
}

.page-ichikawa-ashi .sec-method__intro {
  position: relative;
  display: flex;
  align-items: flex-start;
  gap: calc(6 * var(--u));
  width: 100%;
  padding-top: calc(5.3 * var(--u));
  margin-bottom: calc(-5 * var(--u));
}

.page-ichikawa-ashi .sec-method__bg-text {
  position: absolute;
  left: calc(118.85 * var(--u));
  top: calc(10.363 * var(--u));
  transform: translate(-50%, -50%);
  font-size: calc(14.589 * var(--u));
  line-height: calc(20.749 * var(--u));
  letter-spacing: calc(0.2918 * var(--u));
  color: rgba(254, 241, 210, 0.73);
  white-space: nowrap;
  pointer-events: none;
}

/* 写真（右角丸）。背景写真と手元の切り抜きを同じ枠で重ねる */
.page-ichikawa-ashi .sec-method__photo {
  position: relative;
  flex-shrink: 0;
  width: calc(78.5 * var(--u));
  height: calc(61.1 * var(--u));
  overflow: hidden;
  border-radius: 0 calc(2 * var(--u)) calc(2 * var(--u)) 0;
}

.page-ichikawa-ashi .sec-method__photo img {
  position: absolute;
  max-width: none;
  object-fit: cover;
}

.page-ichikawa-ashi .sec-method__photo-img {
  left: calc(-11.8 * var(--u));
  top: calc(-4.3 * var(--u));
  width: calc(136.6 * var(--u));
  height: calc(68.3 * var(--u));
}

.page-ichikawa-ashi .sec-method__photo-hand {
  left: calc(-15 * var(--u));
  top: calc(4.1 * var(--u));
  width: calc(60.7 * var(--u));
  height: calc(58.9 * var(--u));
}

.page-ichikawa-ashi .sec-method__text {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: calc(4 * var(--u));
  padding: calc(5 * var(--u)) 0;
}

.page-ichikawa-ashi .sec-method__head {
  display: flex;
  flex-direction: column;
  gap: calc(1.6 * var(--u));
  white-space: nowrap;
}

.page-ichikawa-ashi .sec-method__label {
  font-size: calc(2 * var(--u));
  letter-spacing: calc(0.04 * var(--u));
  line-height: normal;
  color: rgba(5, 51, 97, 0.28);
}

.page-ichikawa-ashi .sec-method__title {
  font-size: calc(3.6 * var(--u));
  line-height: calc(5.12 * var(--u));
}

.page-ichikawa-ashi .sec-method__lead {
  width: calc(73 * var(--u));
  font-size: calc(1.8 * var(--u));
  line-height: calc(3.36 * var(--u));
  text-shadow: calc(0.2 * var(--u)) calc(0.2 * var(--u)) calc(0.08 * var(--u)) rgba(255, 255, 255, 0.5);
}

/* 特徴カード */
.page-ichikawa-ashi .sec-method__list {
  position: relative;
  display: flex;
  align-items: flex-start;
  gap: calc(1.6 * var(--u));
}

.page-ichikawa-ashi .sec-method__card {
  display: flex;
  flex-direction: column;
  width: calc(38.8 * var(--u));
  height: calc(40.6 * var(--u));
  background: var(--color-white);
  border: 1px solid var(--color-form);
  border-radius: calc(2.2 * var(--u));
  box-shadow: 0 calc(0.8 * var(--u)) calc(1.2 * var(--u)) rgba(5, 31, 56, 0.07);
  overflow: hidden;
}

.page-ichikawa-ashi .sec-method__card-media {
  position: relative;
  flex-shrink: 0;
  height: calc(18 * var(--u));
  overflow: hidden;
}

.page-ichikawa-ashi .sec-method__card-img {
  position: absolute;
  left: calc(-0.1 * var(--u));
  top: calc(-3.9 * var(--u));
  width: calc(38.8 * var(--u));
  max-width: none;
  height: calc(25.9 * var(--u));
  object-fit: cover;
}

.page-ichikawa-ashi .sec-method__card-img--zoom {
  left: calc(-2.5 * var(--u));
  top: calc(-3.6 * var(--u));
  width: calc(43.2 * var(--u));
  height: calc(25.1 * var(--u));
}

.page-ichikawa-ashi .sec-method__card-img--family {
  left: calc(-1 * var(--u));
  top: calc(-3.8 * var(--u));
  width: calc(40.7 * var(--u));
  height: calc(29.3 * var(--u));
}

.page-ichikawa-ashi .sec-method__card-body {
  display: flex;
  flex-direction: column;
  gap: calc(2 * var(--u));
  padding: calc(2 * var(--u)) calc(2.4 * var(--u)) calc(2 * var(--u)) calc(2.8 * var(--u));
}

.page-ichikawa-ashi .sec-method__card-head {
  display: flex;
  flex-direction: column;
  gap: calc(1.7 * var(--u));
}

.page-ichikawa-ashi .sec-method__badge {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: calc(0.3 * var(--u));
  width: calc(6.4 * var(--u));
  height: calc(2.1 * var(--u));
  padding-top: calc(0.07 * var(--u));
  background: rgba(236, 213, 111, 0.22);
  border: 1px solid var(--color-form);
  border-radius: calc(1.835 * var(--u));
  font-size: calc(1.2 * var(--u));
  line-height: 1;
  white-space: nowrap;
}

.page-ichikawa-ashi .sec-method__badge-num {
  font-family: var(--font-num);
  font-weight: 600;
  letter-spacing: calc(0.06 * var(--u));
}

.page-ichikawa-ashi .sec-method__card-title {
  font-size: calc(2.4 * var(--u));
  line-height: normal;
  text-align: center;
  white-space: nowrap;
}

.page-ichikawa-ashi .sec-method__card-title-text {
  background: linear-gradient(rgba(236, 213, 111, 0.5), rgba(236, 213, 111, 0.5)) left bottom / 100% calc(1.3 * var(--u)) no-repeat;
}

.page-ichikawa-ashi .sec-method__card-text {
  font-size: calc(1.6 * var(--u));
  line-height: calc(2.2 * var(--u));
  text-align: center;
}

/* 写真から特徴カードへ斜めに横切るテープ（最前面） */
.page-ichikawa-ashi .sec-method__tape {
  position: absolute;
  left: calc(49.237 * var(--u));
  top: calc(53.642 * var(--u));
  width: calc(63.901 * var(--u));
  max-width: none;
  height: calc(17.316 * var(--u));
  object-fit: cover;
  transform: rotate(2.42deg);
  filter: drop-shadow(0 calc(0.4 * var(--u)) calc(0.33 * var(--u)) rgba(0, 0, 0, 0.09));
  pointer-events: none;
}

/* ==== sec-patent ==== */
.page-ichikawa-ashi .sec-patent {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: calc(7 * var(--u));
  padding: calc(11 * var(--u)) calc(36 * var(--u)) calc(12 * var(--u));
  overflow: hidden;
  color: var(--color-navy);
}

.page-ichikawa-ashi .sec-patent__bg {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  max-width: none;
  object-fit: cover;
  pointer-events: none;
}

.page-ichikawa-ashi .sec-patent__head,
.page-ichikawa-ashi .sec-patent__badges {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
}

.page-ichikawa-ashi .sec-patent__head {
  gap: calc(4 * var(--u));
  text-align: center;
}

.page-ichikawa-ashi .sec-patent__title {
  display: flex;
  flex-direction: column;
  align-items: center;
  font-size: calc(4.7 * var(--u));
  font-weight: 700;
  line-height: normal;
  letter-spacing: -0.01em;
}

.page-ichikawa-ashi .sec-patent__title-row {
  display: flex;
  align-items: baseline;
  justify-content: center;
  white-space: nowrap;
}

/* 金のグラデーション文字。text-shadow は background-clip:text と併用すると文字に被るため drop-shadow で代替 */
.page-ichikawa-ashi .sec-patent__title-em {
  font-family: "Noto Serif JP", serif;
  font-weight: 700;
  font-size: calc(11.3 * var(--u));
  letter-spacing: 0.01em;
  background-image: linear-gradient(-77.83deg, #895202 2.2%, #e5be55 90.02%);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  filter: drop-shadow(calc(1.1 * var(--u)) calc(0.4 * var(--u)) calc(1.68 * var(--u)) #ffffff);
}

.page-ichikawa-ashi .sec-patent__text {
  width: calc(79.6 * var(--u));
  font-size: calc(2.1 * var(--u));
  font-weight: 500;
  line-height: calc(3.36 * var(--u));
}

.page-ichikawa-ashi .sec-patent__badges {
  gap: calc(1.2 * var(--u));
}

.page-ichikawa-ashi .sec-patent__medals {
  display: flex;
  align-items: center;
  filter: drop-shadow(calc(0.2 * var(--u)) calc(0.3 * var(--u)) calc(0.465 * var(--u)) rgba(0, 0, 0, 0.27));
}

.page-ichikawa-ashi .sec-patent__medal {
  width: calc(21.1 * var(--u));
  height: calc(21.1 * var(--u));
  object-fit: cover;
}

.page-ichikawa-ashi .sec-patent__notes {
  width: calc(64 * var(--u));
  color: var(--color-text);
  font-size: calc(1.3 * var(--u));
  line-height: calc(2.47 * var(--u));
}

/* ==== sec-price ==== */
.page-ichikawa-ashi .sec-price {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: calc(8 * var(--u));
  padding: calc(19.4 * var(--u)) calc(36 * var(--u)) calc(13.5 * var(--u));
  background: var(--color-white);
}

.page-ichikawa-ashi .sec-price__head {
  position: relative;
  text-align: center;
}

.page-ichikawa-ashi .sec-price__title-en {
  position: absolute;
  left: 50%;
  bottom: calc(6.031 * var(--u));
  transform: translate(-50%, 50%);
  font-size: calc(15 * var(--u));
  font-weight: 700;
  line-height: 1;
  letter-spacing: calc(0.3 * var(--u));
  color: rgba(23, 58, 114, 0.08);
  white-space: nowrap;
  pointer-events: none;
}

.page-ichikawa-ashi .sec-price__title {
  position: relative;
  font-size: calc(5.3 * var(--u));
  font-weight: 700;
  line-height: calc(5.12 * var(--u));
  letter-spacing: calc(-0.053 * var(--u));
  color: var(--color-navy);
}

.page-ichikawa-ashi .sec-price__body {
  display: flex;
  flex-direction: column;
  gap: calc(5.4 * var(--u));
  width: 100%;
}

.page-ichikawa-ashi .sec-price__main {
  display: flex;
  flex-direction: column;
  gap: calc(4 * var(--u));
}

.page-ichikawa-ashi .sec-price__cards {
  display: flex;
  justify-content: space-between;
}

.page-ichikawa-ashi .sec-price__card {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: calc(1.4 * var(--u));
  width: calc(58.9 * var(--u));
  height: calc(14 * var(--u));
  background: var(--color-white);
  border: 2px solid rgba(97, 164, 112, 0.66);
  border-radius: calc(2.2 * var(--u));
  box-shadow: 0 calc(0.8 * var(--u)) calc(1.2 * var(--u)) rgba(5, 31, 56, 0.07);
}

.page-ichikawa-ashi .sec-price__card--regular {
  border-color: rgba(37, 104, 171, 0.66);
}

.page-ichikawa-ashi .sec-price__card-icon {
  position: relative;
  flex-shrink: 0;
  width: calc(11.5 * var(--u));
  height: calc(11.5 * var(--u));
  border-radius: 50%;
  background: #d6eacb;
}

.page-ichikawa-ashi .sec-price__card--regular .sec-price__card-icon {
  background: rgba(183, 223, 253, 0.62);
}

.page-ichikawa-ashi .sec-price__beginner {
  position: absolute;
  top: calc(1.8 * var(--u));
  left: calc(2.8 * var(--u));
  width: calc(6 * var(--u));
  height: calc(8.97 * var(--u));
}

.page-ichikawa-ashi .sec-price__beginner-outline {
  position: absolute;
  top: calc(0.13 * var(--u));
  left: calc(0.13 * var(--u));
  width: calc(5.61 * var(--u));
  height: calc(8.588 * var(--u));
}

.page-ichikawa-ashi .sec-price__beginner-mark {
  position: absolute;
  top: calc(0.516 * var(--u));
  left: calc(0.516 * var(--u));
  width: calc(4.838 * var(--u));
  height: calc(7.811 * var(--u));
}

.page-ichikawa-ashi .sec-price__calendar {
  position: absolute;
  top: calc(0.8 * var(--u));
  left: calc(0.3 * var(--u));
  width: calc(10.9 * var(--u));
  height: calc(10 * var(--u));
  object-fit: cover;
}

.page-ichikawa-ashi .sec-price__card-text {
  display: flex;
  flex-direction: column;
  align-items: center;
}

.page-ichikawa-ashi .sec-price__card-label {
  display: flex;
  align-items: center;
  justify-content: center;
  width: calc(32.9 * var(--u));
  height: calc(4 * var(--u));
  border-radius: calc(3 * var(--u));
  background: #61a470;
  font-size: calc(2.3 * var(--u));
  font-weight: 700;
  line-height: 1.65;
  letter-spacing: calc(0.46 * var(--u));
  color: var(--color-white);
}

.page-ichikawa-ashi .sec-price__card--regular .sec-price__card-label {
  background: #2568ab;
}

.page-ichikawa-ashi .sec-price__card-price {
  display: flex;
  align-items: baseline;
  line-height: calc(5.2 * var(--u));
  color: var(--color-navy-deep);
  white-space: nowrap;
}

.page-ichikawa-ashi .sec-price__card-num {
  font-family: var(--font-num);
  font-size: calc(5.3 * var(--u));
  font-weight: 700;
}

.page-ichikawa-ashi .sec-price__card-yen {
  font-size: calc(4.1 * var(--u));
  font-weight: 900;
}

.page-ichikawa-ashi .sec-price__card-tax {
  font-size: calc(3.1 * var(--u));
  font-weight: 800;
}

.page-ichikawa-ashi .sec-price__table {
  width: 100%;
  border: 1px solid #d6e3ed;
  border-collapse: separate;
  border-spacing: 0;
  border-radius: calc(2.2 * var(--u));
  overflow: hidden;
  box-shadow: 0 calc(0.8 * var(--u)) calc(2.4 * var(--u)) rgba(5, 31, 56, 0.07);
  color: var(--color-text);
  text-align: left;
}

.page-ichikawa-ashi .sec-price__table thead th {
  padding: calc(0.9 * var(--u)) 0 calc(0.9 * var(--u)) calc(2 * var(--u));
  background: #14264f;
  font-size: calc(1.6 * var(--u));
  font-weight: 500;
  line-height: 1.65;
  color: var(--color-white);
}

.page-ichikawa-ashi .sec-price__th-course {
  width: calc(94 * var(--u));
}

.page-ichikawa-ashi .sec-price__table tbody th,
.page-ichikawa-ashi .sec-price__table tbody td {
  padding: calc(1.4 * var(--u)) 0 calc(1.4 * var(--u)) calc(2 * var(--u));
  border-top: 1px solid #d3dceb;
  line-height: 1.65;
  white-space: nowrap;
}

.page-ichikawa-ashi .sec-price__table tbody th {
  font-size: calc(1.7 * var(--u));
  font-weight: 500;
}

.page-ichikawa-ashi .sec-price__table tbody td {
  font-size: calc(1.6 * var(--u));
  font-weight: 400;
}

.page-ichikawa-ashi .sec-price__table tbody tr:nth-child(even) {
  background: #f3f7fc;
}

.page-ichikawa-ashi .sec-price__table-num {
  font-family: var(--font-num);
  font-weight: 500;
}

.page-ichikawa-ashi .sec-price__guide {
  display: flex;
  flex-direction: column;
  gap: calc(1.2 * var(--u));
  color: var(--color-text);
}

.page-ichikawa-ashi .sec-price__guide-title {
  font-size: calc(2 * var(--u));
  font-weight: 700;
  line-height: normal;
}

.page-ichikawa-ashi .sec-price__guide-text {
  font-size: calc(1.7 * var(--u));
  font-weight: 500;
  line-height: 1.65;
}

.page-ichikawa-ashi .sec-price__notes {
  font-size: calc(1.4 * var(--u));
  font-weight: 400;
  line-height: 1.65;
  color: var(--color-text);
}

/* ==== sec-problem ==== */
.page-ichikawa-ashi .sec-problem {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: calc(7 * var(--u));
  padding: calc(10 * var(--u)) calc(36 * var(--u));
  background: #5f7185;
  overflow: hidden;
}

.page-ichikawa-ashi .sec-problem__bg {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  max-width: none;
  object-fit: cover;
  pointer-events: none;
}

.page-ichikawa-ashi .sec-problem__head {
  position: relative;
  display: flex;
  align-items: center;
}

.page-ichikawa-ashi .sec-problem__en {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  font-size: calc(22.5065 * var(--u));
  font-weight: 800;
  line-height: 1.2;
  letter-spacing: -0.02em;
  color: rgba(131, 133, 139, 0.39);
  white-space: nowrap;
  pointer-events: none;
}

.page-ichikawa-ashi .sec-problem__title {
  position: relative;
  display: flex;
  align-items: center;
  font-size: calc(4.2 * var(--u));
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: 0.04em;
  color: var(--color-white);
  text-shadow: 0 calc(0.4 * var(--u)) calc(0.38 * var(--u)) rgba(0, 0, 0, 0.21);
  white-space: nowrap;
}

.page-ichikawa-ashi .sec-problem__title-em {
  font-size: calc(5.3 * var(--u));
}

.page-ichikawa-ashi .sec-problem__title-em--yellow {
  color: var(--color-form);
}

.page-ichikawa-ashi .sec-problem__title-q {
  display: flex;
  align-items: center;
  justify-content: center;
  width: calc(8.3072 * var(--u));
  height: calc(9.6252 * var(--u));
  font-size: calc(11.5 * var(--u));
  font-weight: 500;
  line-height: calc(8.5139 * var(--u));
  letter-spacing: 0;
  text-shadow: 0 calc(0.6448 * var(--u)) calc(0.6125 * var(--u)) rgba(0, 0, 0, 0.21);
  transform: rotate(9.37deg);
}

.page-ichikawa-ashi .sec-problem__box {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
}

.page-ichikawa-ashi .sec-problem__box::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: calc(120 * var(--u));
  height: calc(36.8 * var(--u));
  background: #d9d9d9;
  transform: translate(-50%, -50%);
}

.page-ichikawa-ashi .sec-problem__list {
  position: relative;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: calc(2.7 * var(--u)) calc(7.1 * var(--u));
  width: calc(115 * var(--u));
  padding: calc(4.2 * var(--u)) calc(7 * var(--u));
  background: var(--color-white);
  border-radius: calc(1.4 * var(--u));
}

.page-ichikawa-ashi .sec-problem__item {
  display: flex;
  align-items: center;
  gap: calc(0.89 * var(--u));
  font-size: calc(2.3 * var(--u));
  font-weight: 700;
  line-height: calc(2.8 * var(--u));
  letter-spacing: 0.02em;
  color: var(--color-text);
  white-space: nowrap;
}

.page-ichikawa-ashi .sec-problem__item::before {
  content: "";
  flex-shrink: 0;
  width: calc(2.7333 * var(--u));
  height: calc(2.7333 * var(--u));
  background: url("../img/sec-problem/icon-check.svg") center / contain no-repeat;
}

.page-ichikawa-ashi .sec-problem__staff {
  position: absolute;
  top: calc(9.1 * var(--u));
  right: calc(20.467 * var(--u));
  width: calc(39.7333 * var(--u));
  height: calc(59.6 * var(--u));
  object-fit: cover;
  filter: drop-shadow(0 calc(0.4 * var(--u)) calc(0.4 * var(--u)) rgba(0, 0, 0, 0.25));
  pointer-events: none;
}

.page-ichikawa-ashi .sec-problem__moya {
  position: absolute;
  top: calc(6.2 * var(--u) + 0.285 * var(--u));
  right: calc(28.604 * var(--u) + 0.437 * var(--u));
  width: calc(5.3792 * var(--u));
  height: calc(7.8468 * var(--u));
  object-fit: cover;
  opacity: 0.5;
  transform: rotate(6.66deg);
  pointer-events: none;
}

.page-ichikawa-ashi .sec-problem__summary {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: calc(2.4 * var(--u));
  font-weight: 700;
  line-height: calc(3.2 * var(--u));
  color: var(--color-white);
  text-align: center;
  white-space: nowrap;
}

.page-ichikawa-ashi .sec-problem__summary-sub {
  font-size: calc(2.7 * var(--u));
}

.page-ichikawa-ashi .sec-problem__summary-main {
  font-size: calc(4.2 * var(--u));
  letter-spacing: 0.04em;
}

/* ==== sec-reason ==== */
/* sec-reason（Figma 9:652）COMMITMENTS 大切にしている8つのこと */

.page-ichikawa-ashi .sec-reason {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: calc(8 * var(--u));
  padding: calc(16 * var(--u)) calc(36 * var(--u)) calc(19 * var(--u));
  color: var(--color-navy);
  /* ベージュ地＋下部の四角装飾（Figmaの背景画像） */
  background: #fffaef url("../img/sec-reason/reason-bg.webp") center / cover no-repeat;
}

.page-ichikawa-ashi .sec-reason__head {
  position: relative;
  text-align: center;
  font-weight: 700;
}

.page-ichikawa-ashi .sec-reason__en {
  position: absolute;
  top: calc(-1.375 * var(--u));
  left: 50%;
  transform: translate(-50%, -50%);
  font-size: calc(15 * var(--u));
  line-height: 1;
  letter-spacing: calc(0.3 * var(--u));
  white-space: nowrap;
  color: rgba(254, 241, 210, 0.73);
  pointer-events: none;
}

.page-ichikawa-ashi .sec-reason__title {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: calc(1.6 * var(--u));
  color: var(--color-navy);
  font-weight: 700;
}

.page-ichikawa-ashi .sec-reason__title-sub {
  font-size: calc(2.5 * var(--u));
  line-height: normal;
  letter-spacing: 0.02em;
  white-space: nowrap;
}

.page-ichikawa-ashi .sec-reason__title-main {
  font-size: calc(5.3 * var(--u));
  line-height: normal;
  letter-spacing: 0.02em;
}

.page-ichikawa-ashi .sec-reason__list {
  display: grid;
  grid-template-columns: repeat(2, calc(59.1 * var(--u)));
  gap: calc(3 * var(--u)) calc(2 * var(--u));
}

.page-ichikawa-ashi .sec-reason__card {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: calc(3.2 * var(--u));
  height: calc(52 * var(--u));
  padding: calc(3.2 * var(--u));
  background: var(--color-white);
  border: 2px solid #fac72b;
  border-radius: var(--radius-card);
}

/* 写真：527×280 の枠で切り抜き（カード内幅より左右0.2u広い＝Figmaどおり） */
.page-ichikawa-ashi .sec-reason__visual {
  position: relative;
  flex-shrink: 0;
  width: calc(52.7 * var(--u));
  height: calc(28 * var(--u));
  margin: 0 calc(-0.2 * var(--u));
  overflow: hidden;
}

.page-ichikawa-ashi .sec-reason__img {
  position: absolute;
  max-width: none;
  object-fit: cover;
}

.page-ichikawa-ashi .sec-reason__img--01 {
  left: calc(-9.8 * var(--u));
  top: calc(-6.7 * var(--u));
  width: calc(63.4 * var(--u));
  height: calc(42.3 * var(--u));
}

.page-ichikawa-ashi .sec-reason__img--02 {
  left: calc(-0.9 * var(--u));
  top: calc(-6.796 * var(--u));
  width: calc(59.4 * var(--u));
  height: calc(39.6 * var(--u));
}

.page-ichikawa-ashi .sec-reason__img--03 {
  left: calc(-1.1 * var(--u));
  top: calc(-4.896 * var(--u));
  width: calc(55.4 * var(--u));
  height: calc(37 * var(--u));
}

.page-ichikawa-ashi .sec-reason__img--04 {
  left: calc(-1.7 * var(--u));
  top: calc(-7.096 * var(--u));
  width: calc(60.3 * var(--u));
  height: calc(40.2 * var(--u));
}

.page-ichikawa-ashi .sec-reason__img--05 {
  left: calc(-0.1 * var(--u));
  top: calc(-5.396 * var(--u));
  width: calc(53.7 * var(--u));
  height: calc(40.2 * var(--u));
}

.page-ichikawa-ashi .sec-reason__img--06 {
  left: calc(-15.3 * var(--u));
  top: calc(-15.396 * var(--u));
  width: calc(77.9 * var(--u));
  height: calc(50.4 * var(--u));
}

.page-ichikawa-ashi .sec-reason__img--07 {
  left: calc(-5.1 * var(--u));
  top: calc(-3.596 * var(--u));
  width: calc(65.8 * var(--u));
  height: calc(43.9 * var(--u));
}

.page-ichikawa-ashi .sec-reason__img--08 {
  left: calc(-0.5 * var(--u));
  top: calc(-4.096 * var(--u));
  width: calc(56.4 * var(--u));
  height: calc(37.6 * var(--u));
}

.page-ichikawa-ashi .sec-reason__num {
  position: absolute;
  left: calc(2 * var(--u));
  bottom: calc(4.675 * var(--u));
  transform: translateY(50%);
  font-family: var(--font-num);
  font-size: calc(13 * var(--u));
  font-weight: 500;
  line-height: normal;
  color: var(--color-white);
  text-shadow: calc(0.5 * var(--u)) calc(-0.2 * var(--u)) calc(0.68 * var(--u)) rgba(0, 0, 0, 0.08);
}

.page-ichikawa-ashi .sec-reason__content {
  display: flex;
  flex-direction: column;
  gap: calc(1.6 * var(--u));
}

.page-ichikawa-ashi .sec-reason__heading {
  font-size: calc(2.7 * var(--u));
  font-weight: 700;
  line-height: calc(2.88 * var(--u));
}

.page-ichikawa-ashi .sec-reason__text {
  font-size: calc(1.6 * var(--u));
  font-weight: 500;
  line-height: calc(2.925 * var(--u));
}

/* カード1の特許エンブレム */
.page-ichikawa-ashi .sec-reason__emblem {
  position: absolute;
  top: calc(21.8 * var(--u));
  right: calc(0.75 * var(--u));
  width: calc(17 * var(--u));
  height: calc(13.6 * var(--u));
}

.page-ichikawa-ashi .sec-reason__emblem-shadow {
  position: absolute;
  top: calc(11.6 * var(--u));
  left: calc(4.6 * var(--u));
  width: calc(8 * var(--u));
  height: calc(1.6 * var(--u));
}

.page-ichikawa-ashi .sec-reason__emblem-img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* ==== sec-record ==== */
.page-ichikawa-ashi .sec-record {
  overflow: hidden;
  padding: calc(20 * var(--u)) 0 calc(19 * var(--u));
}

.page-ichikawa-ashi .sec-record__bg {
  position: absolute;
  inset: 0;
  pointer-events: none;
}

.page-ichikawa-ashi .sec-record__bg-img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  max-width: none;
  object-fit: cover;
}

.page-ichikawa-ashi .sec-record__veil {
  position: absolute;
  inset: 0;
  background: rgba(255, 255, 255, 0.81);
}

.page-ichikawa-ashi .sec-record__glow {
  position: absolute;
  top: calc(6.18 * var(--u));
  left: 50%;
  width: calc(146.25 * var(--u));
  height: calc(72.84 * var(--u));
  max-width: none;
  transform: translateX(-50%);
}

/* 紙吹雪（--x/--y＝1920幅での中心座標、--w/--h＝サイズ。いずれもFigmaのpx値のまま書き、ここで ÷10 して u 換算。--t は回転・反転） */
.page-ichikawa-ashi .sec-record__confetti {
  position: absolute;
  inset: 0;
  pointer-events: none;
}

.page-ichikawa-ashi .sec-record__piece {
  position: absolute;
  left: calc(50% + (var(--x) - 960) / 10 * var(--u));
  top: calc(var(--y) / 10 * var(--u));
  width: calc(var(--w) / 10 * var(--u));
  height: calc(var(--h) / 10 * var(--u));
  transform: translate(-50%, -50%) var(--t, rotate(0deg));
}

.page-ichikawa-ashi .sec-record__piece img {
  position: absolute;
  left: var(--il, 0%);
  top: var(--it, 0%);
  width: var(--iw, 100%);
  height: var(--ih, 100%);
  max-width: none;
}

.page-ichikawa-ashi .sec-record__piece--faint {
  opacity: 0.49;
}

.page-ichikawa-ashi .sec-record__piece--blur {
  filter: blur(calc(0.21 * var(--u)));
}

.page-ichikawa-ashi .sec-record__inner {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: calc(5.2 * var(--u));
}

.page-ichikawa-ashi .sec-record__head {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: calc(2.4 * var(--u));
  color: var(--color-navy);
  font-weight: 700;
  text-align: center;
}

.page-ichikawa-ashi .sec-record__title {
  font-size: calc(5.8 * var(--u));
  line-height: calc(7.6 * var(--u));
  letter-spacing: -0.01em;
}

.page-ichikawa-ashi .sec-record__lead {
  font-size: calc(2 * var(--u));
  line-height: calc(2.925 * var(--u));
}

.page-ichikawa-ashi .sec-record__stats {
  display: flex;
  gap: calc(8 * var(--u));
}

/* 月桂樹の枠 421×185。数字・単位・ラベルは Figma の配置を絶対座標で再現 */
.page-ichikawa-ashi .sec-record__stat {
  position: relative;
  width: calc(42.1 * var(--u));
  height: calc(18.5 * var(--u));
  overflow: hidden;
  font-weight: 700;
  text-align: center;
}

.page-ichikawa-ashi .sec-record__laurel {
  position: absolute;
  top: 0;
  width: calc(11.9 * var(--u));
  height: calc(18.5 * var(--u));
  object-fit: cover;
}

.page-ichikawa-ashi .sec-record__laurel--left {
  left: 0;
  transform: scaleX(-1);
}

.page-ichikawa-ashi .sec-record__laurel--right {
  left: calc(30.2 * var(--u));
}

.page-ichikawa-ashi .sec-record__stat-label {
  position: absolute;
  left: calc(11.6 * var(--u));
  top: calc(-2.4 * var(--u));
  width: calc(20.9 * var(--u));
  font-size: calc(3.207 * var(--u));
  line-height: calc(7.814 * var(--u));
  letter-spacing: 0.04em;
  background-image: linear-gradient(243.57deg, #e5b849 13.03%, #ac772f 92.18%);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}

.page-ichikawa-ashi .sec-record__stat-num {
  position: absolute;
  left: calc(8.6 * var(--u));
  top: calc(6.45 * var(--u));
  width: calc(17.5 * var(--u));
  color: #e5b849;
  font-size: calc(13 * var(--u));
  line-height: calc(11.66 * var(--u));
  letter-spacing: -0.04em;
}

.page-ichikawa-ashi .sec-record__stat-unit {
  position: absolute;
  left: calc(23.44 * var(--u));
  top: calc(10.71 * var(--u));
  width: calc(9.21 * var(--u));
  color: #bb9537;
  font-size: calc(3.207 * var(--u));
  line-height: calc(7.814 * var(--u));
  letter-spacing: 0.04em;
}

.page-ichikawa-ashi .sec-record__stat--treat .sec-record__stat-num {
  left: calc(6.6 * var(--u));
}

.page-ichikawa-ashi .sec-record__stat--treat .sec-record__stat-unit {
  left: calc(20.7 * var(--u));
  width: calc(17.2 * var(--u));
  letter-spacing: -0.01em;
}

/* ==== sec-staff ==== */
.page-ichikawa-ashi .sec-staff {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: calc(5.2 * var(--u));
  padding: calc(16 * var(--u)) calc(36 * var(--u));
  background-color: var(--color-white);
  background-image:
    linear-gradient(rgba(23, 58, 114, 0.06) 1px, transparent 1px),
    linear-gradient(90deg, rgba(23, 58, 114, 0.06) 1px, transparent 1px);
  background-size: calc(1.5 * var(--u)) calc(1.5 * var(--u));
}

.page-ichikawa-ashi .sec-staff__head {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: calc(3.2 * var(--u));
  color: var(--color-navy);
  text-align: center;
}

.page-ichikawa-ashi .sec-staff__title-wrap {
  position: relative;
}

.page-ichikawa-ashi .sec-staff__title-en {
  position: absolute;
  left: 50%;
  bottom: calc(5.975 * var(--u));
  transform: translate(-50%, 50%);
  font-size: calc(15 * var(--u));
  font-weight: 700;
  line-height: 1;
  letter-spacing: calc(0.3 * var(--u));
  color: rgba(23, 58, 114, 0.08);
  white-space: nowrap;
  pointer-events: none;
}

.page-ichikawa-ashi .sec-staff__title {
  position: relative;
  font-size: calc(5.3 * var(--u));
  font-weight: 700;
  line-height: calc(5.12 * var(--u));
  letter-spacing: calc(-0.053 * var(--u));
}

.page-ichikawa-ashi .sec-staff__lead {
  font-size: calc(2.4 * var(--u));
  font-weight: 500;
  line-height: calc(2.925 * var(--u));
  white-space: nowrap;
}

.page-ichikawa-ashi .sec-staff__list {
  display: flex;
  flex-direction: column;
  gap: calc(5.2 * var(--u));
  width: 100%;
}

.page-ichikawa-ashi .sec-staff__card {
  display: flex;
  align-items: center;
  gap: calc(2.5 * var(--u));
  padding: calc(4 * var(--u));
  background: var(--color-white);
  border-radius: var(--radius-card);
  box-shadow: 0 calc(1 * var(--u)) calc(2.8 * var(--u)) rgba(5, 26, 51, 0.08);
  overflow: hidden;
}

.page-ichikawa-ashi .sec-staff__card-media {
  position: relative;
  flex-shrink: 0;
  overflow: hidden;
}

.page-ichikawa-ashi .sec-staff__card-img {
  position: absolute;
  max-width: none;
  object-fit: cover;
}

.page-ichikawa-ashi .sec-staff__card--nakadai .sec-staff__card-media {
  width: calc(25.5 * var(--u));
  height: calc(31.6 * var(--u));
}

.page-ichikawa-ashi .sec-staff__card--nakadai .sec-staff__card-img {
  top: calc(-3.6 * var(--u));
  left: calc(-19.3 * var(--u));
  width: calc(65.2 * var(--u));
  height: calc(43.5 * var(--u));
}

.page-ichikawa-ashi .sec-staff__card--okada .sec-staff__card-media {
  width: calc(25.3 * var(--u));
  height: calc(37.6 * var(--u));
}

.page-ichikawa-ashi .sec-staff__card--okada .sec-staff__card-img {
  top: calc(-3.8 * var(--u));
  left: calc(-18.5 * var(--u));
  width: calc(63.1 * var(--u));
  height: calc(42.1 * var(--u));
}

.page-ichikawa-ashi .sec-staff__card-body {
  display: flex;
  flex: 1 0 0;
  flex-direction: column;
  gap: calc(3.2 * var(--u));
  min-width: 0;
  color: var(--color-text);
}

.page-ichikawa-ashi .sec-staff__card-meta {
  display: flex;
  flex-direction: column;
  gap: calc(0.8 * var(--u));
  white-space: nowrap;
}

.page-ichikawa-ashi .sec-staff__card-qual {
  font-size: calc(1.4 * var(--u));
  font-weight: 500;
  line-height: calc(2.52 * var(--u));
}

.page-ichikawa-ashi .sec-staff__card-name {
  font-size: calc(2.5 * var(--u));
  font-weight: 700;
  line-height: calc(3.15 * var(--u));
}

.page-ichikawa-ashi .sec-staff__card-text {
  width: calc(82.4 * var(--u));
  font-size: calc(1.8 * var(--u));
  font-weight: 500;
  line-height: calc(3.1 * var(--u));
}

.page-ichikawa-ashi .sec-staff__card-career {
  display: flex;
  flex-direction: column;
  gap: calc(0.6 * var(--u));
  font-weight: 400;
}

.page-ichikawa-ashi .sec-staff__card-career-title {
  font-size: calc(1.7 * var(--u));
  line-height: normal;
}

.page-ichikawa-ashi .sec-staff__card-career-text {
  font-size: calc(1.6 * var(--u));
  line-height: calc(2.73 * var(--u));
}

/* ==== sec-step ==== */
/* sec-step（Figma 7:367）FLOW 初回施術の流れ */

.page-ichikawa-ashi .sec-step {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: calc(9.5 * var(--u));
  padding: calc(16 * var(--u)) calc(36 * var(--u));
  background: rgba(237, 246, 252, 0.8);
  color: var(--color-navy);
}

.page-ichikawa-ashi .sec-step__head {
  position: relative;
  width: calc(42.9 * var(--u));
  text-align: center;
  font-weight: 700;
}

.page-ichikawa-ashi .sec-step__title {
  font-size: calc(5.3 * var(--u));
  line-height: calc(5.12 * var(--u));
  letter-spacing: -0.01em;
  color: var(--color-navy);
}

.page-ichikawa-ashi .sec-step__en {
  position: absolute;
  top: calc(-0.855 * var(--u));
  left: 50%;
  transform: translate(-50%, -50%);
  font-size: calc(15 * var(--u));
  line-height: 1;
  letter-spacing: calc(0.3 * var(--u));
  white-space: nowrap;
  color: rgba(23, 58, 114, 0.08);
  pointer-events: none;
}

.page-ichikawa-ashi .sec-step__body {
  display: flex;
  flex-direction: column;
  gap: calc(4.4 * var(--u));
  width: 100%;
}

.page-ichikawa-ashi .sec-step__list {
  display: flex;
  flex-direction: column;
  gap: calc(9 * var(--u));
}

.page-ichikawa-ashi .sec-step__item {
  position: relative;
}

.page-ichikawa-ashi .sec-step__card {
  display: flex;
  flex-direction: column;
  gap: calc(1.5 * var(--u));
  height: calc(18 * var(--u));
  padding: calc(1.6 * var(--u)) 0 0 calc(34.8 * var(--u));
  background: var(--color-white);
  border-radius: var(--radius-card);
  box-shadow: 0 calc(0.8 * var(--u)) calc(1.2 * var(--u)) rgba(5, 31, 56, 0.07);
  font-weight: 700;
  white-space: nowrap;
}

.page-ichikawa-ashi .sec-step__label {
  font-size: calc(1.6 * var(--u));
  font-weight: 500;
  line-height: 1.21;
}

.page-ichikawa-ashi .sec-step__heading {
  margin-top: calc(-1.5 * var(--u));
  font-size: calc(3 * var(--u));
  line-height: 1.21;
}

.page-ichikawa-ashi .sec-step__text {
  font-size: calc(1.6 * var(--u));
  line-height: calc(2.7 * var(--u));
}

/* 写真：325×215 の角丸マスク。中の画像はFigmaの配置どおりにずらして切り抜く */
.page-ichikawa-ashi .sec-step__photo {
  position: absolute;
  z-index: 1;
  top: calc(-1.775 * var(--u));
  left: 0;
  width: calc(32.5 * var(--u));
  height: calc(21.5 * var(--u));
  overflow: hidden;
  border-radius: var(--radius-card);
  box-shadow: 0 calc(0.4 * var(--u)) calc(0.4 * var(--u)) rgba(0, 0, 0, 0.1);
}

.page-ichikawa-ashi .sec-step__photo-img {
  position: absolute;
  max-width: none;
  object-fit: cover;
}

.page-ichikawa-ashi .sec-step__photo-img--01 {
  left: calc(-1.4 * var(--u));
  top: calc(-2.8 * var(--u));
  width: calc(41.5 * var(--u));
  height: calc(27.7 * var(--u));
}

.page-ichikawa-ashi .sec-step__photo-img--02 {
  left: calc(-0.5 * var(--u));
  top: calc(0.4 * var(--u));
  width: calc(36 * var(--u));
  height: calc(24 * var(--u));
}

.page-ichikawa-ashi .sec-step__photo-img--03 {
  left: calc(-2.3 * var(--u));
  top: calc(-0.5 * var(--u));
  width: calc(44.5 * var(--u));
  height: calc(29.7 * var(--u));
}

.page-ichikawa-ashi .sec-step__photo-img--04 {
  left: 0;
  top: calc(-1.8 * var(--u));
  width: calc(36.5 * var(--u));
  height: calc(24.3 * var(--u));
}

.page-ichikawa-ashi .sec-step__photo-img--05 {
  left: calc(-1.6 * var(--u));
  top: calc(-2 * var(--u));
  width: calc(38.6 * var(--u));
  height: calc(25.7 * var(--u));
}

.page-ichikawa-ashi .sec-step__photo-img--06 {
  left: calc(-3.2 * var(--u));
  top: calc(-1.6 * var(--u));
  width: calc(40.4 * var(--u));
  height: calc(26.9 * var(--u));
}

/* step番号の丸バッジ＋外周の細線リング */
.page-ichikawa-ashi .sec-step__badge {
  position: absolute;
  z-index: 2;
  top: calc(-4.6 * var(--u));
  left: calc(-1.55 * var(--u));
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: calc(9 * var(--u));
  height: calc(9 * var(--u));
  border-radius: 50%;
  background: var(--color-navy);
  color: var(--color-white);
  font-family: var(--font-num);
  text-align: center;
}

.page-ichikawa-ashi .sec-step__badge::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: calc(10.7 * var(--u));
  height: calc(10.7 * var(--u));
  border: 1px solid var(--color-navy);
  border-radius: 50%;
  transform: translate(-50%, -50%);
  filter: drop-shadow(calc(0.2 * var(--u)) calc(0.3 * var(--u)) calc(0.2 * var(--u)) rgba(5, 51, 97, 0.18));
}

.page-ichikawa-ashi .sec-step__badge-label {
  margin-bottom: calc(-1 * var(--u));
  font-size: calc(1.5 * var(--u));
  font-weight: 500;
  line-height: 1.22;
  opacity: 0.96;
}

.page-ichikawa-ashi .sec-step__badge-num {
  font-size: calc(5 * var(--u));
  font-weight: 500;
  line-height: 1.22;
  letter-spacing: calc(-0.15 * var(--u));
}

.page-ichikawa-ashi .sec-step__note {
  width: calc(120 * var(--u));
  font-size: calc(1.6 * var(--u));
  font-weight: 500;
  line-height: calc(2.85 * var(--u));
}

/* ==== sec-suisen ==== */
.page-ichikawa-ashi .sec-suisen {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: calc(5 * var(--u));
  padding: calc(14 * var(--u)) calc(36 * var(--u)) calc(16 * var(--u));
  background: #edf6fc;
  color: var(--color-navy);
}

.page-ichikawa-ashi .sec-suisen__main {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: calc(6 * var(--u));
  width: 100%;
}

.page-ichikawa-ashi .sec-suisen__head {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: calc(3.2 * var(--u));
  text-align: center;
  white-space: nowrap;
}

.page-ichikawa-ashi .sec-suisen__title {
  font-size: calc(5.8 * var(--u));
  font-weight: 700;
  line-height: calc(5.12 * var(--u));
  letter-spacing: -0.01em;
}

.page-ichikawa-ashi .sec-suisen__lead {
  font-size: calc(2.4 * var(--u));
  font-weight: 500;
  line-height: calc(2.925 * var(--u));
}

/* ---- 医師の推薦カード ---- */

.page-ichikawa-ashi .sec-suisen__doctor {
  display: flex;
  flex-direction: column;
  gap: calc(2 * var(--u));
  width: 100%;
}

.page-ichikawa-ashi .sec-suisen__card {
  display: flex;
  align-items: flex-start;
  justify-content: center;
  gap: calc(5 * var(--u));
  padding: calc(4.2 * var(--u)) calc(3.2 * var(--u));
  background: var(--color-white);
  border: 1px solid var(--color-border);
  border-radius: calc(2.2 * var(--u));
  box-shadow: 0 calc(0.8 * var(--u)) calc(1.2 * var(--u)) rgba(5, 31, 56, 0.07);
}

.page-ichikawa-ashi .sec-suisen__card-photo {
  position: relative;
  flex: none;
  width: calc(16 * var(--u));
  height: calc(24.6 * var(--u));
  overflow: hidden;
}

.page-ichikawa-ashi .sec-suisen__card-photo img {
  position: absolute;
  left: calc(-2 * var(--u));
  top: calc(-2.4 * var(--u));
  width: calc(20 * var(--u));
  height: calc(30 * var(--u));
  max-width: none;
  object-fit: cover;
}

.page-ichikawa-ashi .sec-suisen__card-body {
  display: flex;
  flex: 1;
  min-width: 0;
  flex-direction: column;
  gap: calc(1.2 * var(--u));
}

.page-ichikawa-ashi .sec-suisen__card-head {
  display: flex;
  flex-direction: column;
  gap: calc(0.8 * var(--u));
}

.page-ichikawa-ashi .sec-suisen__card-name {
  font-size: calc(1.5 * var(--u));
  font-weight: 500;
  line-height: normal;
}

.page-ichikawa-ashi .sec-suisen__card-title {
  font-size: calc(2.1 * var(--u));
  font-weight: 700;
  line-height: calc(3.2 * var(--u));
}

.page-ichikawa-ashi .sec-suisen__card-text {
  color: var(--color-text);
  font-size: calc(1.7 * var(--u));
  font-weight: 500;
  line-height: calc(2.925 * var(--u));
}

.page-ichikawa-ashi .sec-suisen__note {
  font-size: calc(1.6 * var(--u));
  font-weight: 500;
  line-height: normal;
}

/* ---- その他の専門家 ---- */

.page-ichikawa-ashi .sec-suisen__others {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: calc(4 * var(--u));
}

.page-ichikawa-ashi .sec-suisen__sub-title {
  font-size: calc(4.1 * var(--u));
  font-weight: 700;
  line-height: calc(5.12 * var(--u));
  text-align: center;
  white-space: nowrap;
}

.page-ichikawa-ashi .sec-suisen__list {
  display: flex;
  align-items: flex-start;
  gap: calc(3 * var(--u));
}

.page-ichikawa-ashi .sec-suisen__expert {
  width: calc(29 * var(--u));
  border-radius: 0 0 calc(3 * var(--u)) calc(3 * var(--u));
  box-shadow: calc(0.5 * var(--u)) calc(1 * var(--u)) calc(0.44 * var(--u)) rgba(0, 0, 0, 0.07);
}

.page-ichikawa-ashi .sec-suisen__expert-photo {
  position: relative;
  height: calc(28.9 * var(--u));
  overflow: hidden;
}

.page-ichikawa-ashi .sec-suisen__expert-photo img {
  position: absolute;
  left: calc(var(--l) / 10 * var(--u));
  top: calc(var(--t) / 10 * var(--u));
  width: calc(var(--w) / 10 * var(--u));
  height: calc(var(--h) / 10 * var(--u));
  max-width: none;
  object-fit: cover;
}

.page-ichikawa-ashi .sec-suisen__expert-plate {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: calc(0.8 * var(--u));
  height: calc(13.4 * var(--u));
  background: var(--color-navy);
  border-radius: 0 0 calc(3 * var(--u)) calc(3 * var(--u));
  color: var(--color-white);
  font-weight: 700;
  text-align: center;
  white-space: nowrap;
}

.page-ichikawa-ashi .sec-suisen__expert-role {
  width: calc(24.2 * var(--u));
  padding-bottom: calc(0.8 * var(--u));
  border-bottom: 1px solid rgba(255, 255, 255, 0.5);
  font-size: calc(2 * var(--u));
  line-height: normal;
}

.page-ichikawa-ashi .sec-suisen__expert-role--lg {
  font-size: calc(2.2 * var(--u));
}

.page-ichikawa-ashi .sec-suisen__expert-role-sub {
  display: block;
  font-size: calc(1.3 * var(--u));
}

.page-ichikawa-ashi .sec-suisen__expert-name {
  font-size: calc(2.9 * var(--u));
  line-height: normal;
}

.page-ichikawa-ashi .sec-suisen__expert-honor {
  font-size: calc(2.4 * var(--u));
}

/* ==== sec-symptom ==== */
/* sec-symptom（Figma 7:476）COURSES お悩み別のコース */

.page-ichikawa-ashi .sec-symptom {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: calc(5.2 * var(--u));
  padding: calc(16 * var(--u)) calc(36 * var(--u));
  color: var(--color-navy);
  /* 方眼（Figmaの背景画像をCSSで再現） */
  background-color: var(--color-white);
  background-image:
    linear-gradient(rgba(5, 45, 100, 0.06) 1px, transparent 1px),
    linear-gradient(90deg, rgba(5, 45, 100, 0.06) 1px, transparent 1px);
  background-size: calc(1.47 * var(--u)) calc(1.47 * var(--u));
}

.page-ichikawa-ashi .sec-symptom__head {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: calc(3.2 * var(--u));
  text-align: center;
}

.page-ichikawa-ashi .sec-symptom__title-wrap {
  position: relative;
  font-weight: 700;
}

.page-ichikawa-ashi .sec-symptom__title {
  font-size: calc(5.3 * var(--u));
  line-height: calc(5.12 * var(--u));
  letter-spacing: -0.01em;
  color: var(--color-navy);
}

.page-ichikawa-ashi .sec-symptom__en {
  position: absolute;
  top: calc(-0.855 * var(--u));
  left: 50%;
  transform: translate(-50%, -50%);
  font-size: calc(15 * var(--u));
  line-height: 1;
  letter-spacing: calc(0.3 * var(--u));
  white-space: nowrap;
  color: rgba(23, 58, 114, 0.08);
  pointer-events: none;
}

.page-ichikawa-ashi .sec-symptom__lead {
  font-size: calc(2.2 * var(--u));
  font-weight: 500;
  line-height: calc(3.5 * var(--u));
  white-space: nowrap;
}

.page-ichikawa-ashi .sec-symptom__body {
  display: flex;
  flex-direction: column;
  gap: calc(2 * var(--u));
}

.page-ichikawa-ashi .sec-symptom__list {
  display: grid;
  grid-template-columns: repeat(3, calc(38.7 * var(--u)));
  align-items: start;
  gap: calc(2.5 * var(--u)) calc(2 * var(--u));
}

.page-ichikawa-ashi .sec-symptom__card {
  display: flex;
  flex-direction: column;
  gap: calc(2.85 * var(--u));
  min-height: calc(42 * var(--u));
  padding-bottom: calc(2.85 * var(--u));
  background: var(--color-white);
  border: 1px solid var(--color-border);
  border-radius: calc(2.2 * var(--u));
  box-shadow: 0 calc(0.8 * var(--u)) calc(1.2 * var(--u)) rgba(5, 31, 56, 0.07);
  overflow: hidden;
}

.page-ichikawa-ashi .sec-symptom__visual {
  position: relative;
  height: calc(22.4 * var(--u));
  overflow: hidden;
}

/* イラストはFigmaの配置どおりにずらして枠で切り抜く */
.page-ichikawa-ashi .sec-symptom__img {
  position: absolute;
  max-width: none;
  object-fit: cover;
}

.page-ichikawa-ashi .sec-symptom__img--01 {
  left: calc(-2.012 * var(--u));
  top: calc(0.4 * var(--u));
  width: calc(40.312 * var(--u));
  height: calc(23.8657 * var(--u));
}

.page-ichikawa-ashi .sec-symptom__img--02 {
  left: 0;
  top: calc(-0.2 * var(--u));
  width: calc(38.6 * var(--u));
  height: calc(25.7 * var(--u));
}

.page-ichikawa-ashi .sec-symptom__img--03 {
  left: calc(4.6 * var(--u));
  top: calc(2.9 * var(--u));
  width: calc(31.3 * var(--u));
  height: calc(20.9 * var(--u));
}

.page-ichikawa-ashi .sec-symptom__img--04 {
  left: calc(-0.9 * var(--u));
  top: calc(0.9 * var(--u));
  width: calc(39.7 * var(--u));
  height: calc(29.8 * var(--u));
}

.page-ichikawa-ashi .sec-symptom__img--05 {
  left: calc(4.5 * var(--u));
  top: calc(2.7 * var(--u));
  width: calc(27.5 * var(--u));
  height: calc(20.6 * var(--u));
}

.page-ichikawa-ashi .sec-symptom__img--06 {
  left: calc(5 * var(--u));
  top: 0;
  width: calc(28.1 * var(--u));
  height: calc(42.1 * var(--u));
}

.page-ichikawa-ashi .sec-symptom__img--07 {
  left: calc(-0.3 * var(--u));
  top: calc(1.4 * var(--u));
  width: calc(42 * var(--u));
  height: calc(34.8 * var(--u));
}

.page-ichikawa-ashi .sec-symptom__img--08 {
  left: calc(4.6 * var(--u));
  top: calc(-0.2 * var(--u));
  width: calc(28.3 * var(--u));
  height: calc(28.3 * var(--u));
}

.page-ichikawa-ashi .sec-symptom__img--09 {
  left: calc(2.4 * var(--u));
  top: calc(2 * var(--u));
  width: calc(33.8 * var(--u));
  height: calc(21.7 * var(--u));
  object-fit: fill;
  object-position: bottom;
}

.page-ichikawa-ashi .sec-symptom__label {
  position: absolute;
  bottom: 0;
  left: 0;
  padding: calc(0.9 * var(--u)) calc(1.8 * var(--u));
  background: var(--color-navy);
  border-radius: 0 calc(1.642 * var(--u)) 0 0;
  color: var(--color-white);
  font-size: calc(1.8888 * var(--u));
  font-weight: 700;
  line-height: 1.45;
  letter-spacing: 0.04em;
  white-space: nowrap;
}

.page-ichikawa-ashi .sec-symptom__text {
  padding: 0 calc(2.4 * var(--u));
  font-size: calc(1.7 * var(--u));
  font-weight: 500;
  line-height: calc(2.73 * var(--u));
}

/* 黄色マーカー（行の下半分） */
.page-ichikawa-ashi .sec-symptom__marker {
  color: inherit;
  background: linear-gradient(transparent 55%, rgba(236, 213, 111, 0.5) 55%);
  -webkit-box-decoration-break: clone;
  box-decoration-break: clone;
}

.page-ichikawa-ashi .sec-symptom__note {
  width: calc(120 * var(--u));
  font-size: calc(1.6 * var(--u));
  font-weight: 500;
  line-height: calc(2.85 * var(--u));
}

/* ==== sec-voice ==== */
/* お客様の声（6:23 ＋ もっとみる展開分 9:1915） */

.page-ichikawa-ashi .sec-voice {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: calc(8 * var(--u));
  padding: calc(18 * var(--u)) 0 calc(10.4 * var(--u));
  background: #eaeff2;
  overflow: hidden;
}

.page-ichikawa-ashi .sec-voice__confetti {
  position: absolute;
  z-index: 2;
  height: auto;
  pointer-events: none;
}

.page-ichikawa-ashi .sec-voice__confetti--left {
  top: calc(2.4 * var(--u));
  left: calc(10.4 * var(--u));
  width: calc(30.1 * var(--u));
}

.page-ichikawa-ashi .sec-voice__confetti--right {
  top: calc(4.5 * var(--u));
  right: calc(8.9 * var(--u));
  width: calc(31.2 * var(--u));
}

.page-ichikawa-ashi .sec-voice__head {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: calc(1.6 * var(--u));
  color: var(--color-navy);
  font-weight: 700;
  text-align: center;
}

.page-ichikawa-ashi .sec-voice__title-wrap {
  position: relative;
}

.page-ichikawa-ashi .sec-voice__bg-text {
  position: absolute;
  top: 0;
  left: 50%;
  transform: translate(-50%, -50%);
  color: rgba(23, 58, 114, 0.08);
  font-size: calc(15 * var(--u));
  line-height: 1;
  letter-spacing: calc(0.3 * var(--u));
  white-space: nowrap;
  pointer-events: none;
}

.page-ichikawa-ashi .sec-voice__title {
  position: relative;
  font-size: calc(4.2 * var(--u));
  line-height: calc(6 * var(--u));
  letter-spacing: calc(-0.042 * var(--u));
  white-space: nowrap;
}

.page-ichikawa-ashi .sec-voice__title-lg {
  font-size: calc(5.3 * var(--u));
}

.page-ichikawa-ashi .sec-voice__lead {
  font-size: calc(2 * var(--u));
  line-height: calc(2.85 * var(--u));
  white-space: nowrap;
}

.page-ichikawa-ashi .sec-voice__body {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: calc(3.7 * var(--u));
  width: calc(120 * var(--u));
}

.page-ichikawa-ashi .sec-voice__list,
.page-ichikawa-ashi .sec-voice__more:not([hidden]) {
  display: flex;
  flex-direction: column;
  gap: calc(3.7 * var(--u));
}

.page-ichikawa-ashi .sec-voice__more[hidden] {
  display: none;
}

/* 親の gap を打ち消して padding に置き換える＝開閉の高さアニメーション（main.js）に余白も含める */
.page-ichikawa-ashi .sec-voice__more {
  margin-top: calc(-3.7 * var(--u));
  padding-top: calc(3.7 * var(--u));
}

.page-ichikawa-ashi .sec-voice__card {
  display: flex;
  align-items: center;
  gap: calc(3.2 * var(--u));
  padding: calc(3.2 * var(--u));
  background: var(--color-white);
  border-radius: var(--radius-card);
  box-shadow: 0 calc(1 * var(--u)) calc(1.4 * var(--u)) rgba(5, 26, 51, 0.25);
  color: var(--color-text);
}

.page-ichikawa-ashi .sec-voice__card-img {
  flex-shrink: 0;
  width: calc(16 * var(--u));
  height: auto;
  border-radius: calc(1.8 * var(--u));
}

.page-ichikawa-ashi .sec-voice__card-text {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: calc(0.8 * var(--u));
}

.page-ichikawa-ashi .sec-voice__card-meta {
  font-size: calc(1.5 * var(--u));
  font-weight: 700;
}

.page-ichikawa-ashi .sec-voice__card-title {
  font-size: calc(2 * var(--u));
  font-weight: 700;
  line-height: calc(2.72 * var(--u));
}

.page-ichikawa-ashi .sec-voice__card-desc {
  font-size: calc(1.8 * var(--u));
  font-weight: 500;
  line-height: calc(2.66 * var(--u));
}

.page-ichikawa-ashi .sec-voice__note {
  margin-top: calc(-0.7 * var(--u));
  color: var(--color-text);
  font-size: calc(1.4 * var(--u));
  font-weight: 400;
}

.page-ichikawa-ashi .sec-voice__more-btn {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: calc(1.9 * var(--u));
  width: calc(76.2 * var(--u));
  padding: calc(1.6 * var(--u)) 0;
  border: 0;
  border-radius: calc(3 * var(--u));
  background: #012855;
  color: var(--color-white);
  font-family: inherit;
  font-size: calc(2.2 * var(--u));
  font-weight: 700;
  letter-spacing: calc(0.154 * var(--u));
  cursor: pointer;
  transition: opacity 0.2s;
}

.page-ichikawa-ashi .sec-voice__more-btn:hover {
  opacity: 0.85;
}

.page-ichikawa-ashi .sec-voice__more-btn-icon {
  display: inline-block;
  font-size: calc(1.3 * var(--u));
  letter-spacing: 0;
  transition: transform 0.2s;
}

.page-ichikawa-ashi .sec-voice__more-btn[aria-expanded="true"] .sec-voice__more-btn-icon {
  transform: rotate(180deg);
}
