/* ========================================
📌 ヘッダー関連スタイル調整
- ロゴ部分の上下paddingを削除
======================================== */
.l-header__logo {
  padding-top: 10px !important;
  padding-bottom: 0px !important;
}


.c-gnav > .menu-item > a {
  justify-content: end; /* 下寄せ */
  padding-bottom: 20px; /* 下余白の調整（必要に応じて） */
}

/* 追従メニューの高さを少し狭く */
.l-fixHeader__inner.l-container {
  height: 80px !important;
  min-height: 80px !important; /* Swellがmin-heightを持っている場合に備えて */
  line-height: 80px;           /* 中央揃えしたい場合（任意） */
}



/* ========================================
📌 Adobe Fonts 設定
======================================== */

/* セクションタイトル用：FOT-Seurat ProN */
h1, h2, h3, .section-title, .p-heading {
  font-family: "fot-seurat-pron", sans-serif;
  font-weight: 600;
  font-style: normal;
}

/* 本文用：A-OTF-Jun-Pro */
body,
p,
li,
.p-entry__content {
  font-family: "a-otf-jun-pro", sans-serif;
  font-weight: 300;
  font-style: normal;
}


/* ==================================================
📌 ドット区切り線（Dot Divider / Background版）
- ドットの色・大きさ・間隔をクラスで完全制御
- 使用例:
  <hr class="dotted-divider dotted-divider--pink dotted-divider--large dotted-divider--wide">
================================================== */

/* -------------------------------
✅ 共通スタイル（ベース）
------------------------------- */
hr.dotted-divider {
  border: none;
  margin: 2em auto;
  width: 100%;
  max-width: 100% !important;
  background-repeat: repeat-x;
  background-position: center;
  display: block;

  /* カスタムプロパティ（デフォルト値） */
  --dot-color: #000;
  --dot-size: 5px;
  --dot-gap: 15px;

  /* ドットを正円で描画 */
  background-image: radial-gradient(circle, var(--dot-color) var(--dot-size), transparent var(--dot-size));
  background-size: calc(var(--dot-size) * 2 + var(--dot-gap)) calc(var(--dot-size) * 2);
  height: calc(var(--dot-size) * 2);
}

/* -------------------------------
🎨 カラーバリエーション
------------------------------- */
hr.dotted-divider--orange { --dot-color: #df542f; }
hr.dotted-divider--pink   { --dot-color: #e36c9e; }
hr.dotted-divider--blue   { --dot-color: #2196f3; }
hr.dotted-divider--green  { --dot-color: #4caf50; }
hr.dotted-divider--grey  { --dot-color: #58595B; }

/* -------------------------------
🔠 ドットサイズ（直径）
------------------------------- */
hr.dotted-divider--3px  { --dot-size: 3px; }
hr.dotted-divider--4px { --dot-size: 4px; }
hr.dotted-divider--medium { --dot-size: 5px; }
hr.dotted-divider--large  { --dot-size: 7px; }

/* -------------------------------
📏 ドット間隔（ドット同士の横の距離）
------------------------------- */
hr.dotted-divider--narrow1 { --dot-gap: 4.4px; }
hr.dotted-divider--narrow2 { --dot-gap: 5px; }
hr.dotted-divider--normal { --dot-gap: 16px; }
hr.dotted-divider--wide   { --dot-gap: 27px; }


/* ==================================================
📌 オリジナルフッター
================================================== */

/* 親ブロック：位置基準 + 幅制限 */
.origin-footer-wrap {
	position: relative;
	margin: 0 auto;
	padding: 0 3em;
	color: #F15A29; /* text color */
}

/* テキスト */
.company-and-address {
	margin-left: 65px; /* 必要に応じて調整 */	
}

/* 会社名下部ライン */
.origin-footer-divider {
	border: none;
	height: 1.5px;
	width: 30rem;
	margin-bottom: 8px !important;
	background-color: #F15A29 !important;
	display: block;
}

.footer-nav {
  display: flex;
  justify-content: center;
  align-items: center;
  list-style: none;
  padding: 0;
  margin: 1em auto;
  width: 100%;
  max-width: 960px; /* フッター内で中央に収めたい幅を調整 */
}

.footer-nav li {
  flex: 1;                  /* 各項目の幅を均等に */
  text-align: center;       /* テキストを中央寄せ */
  position: relative;
}

.footer-nav a {
  color: #F15A29;
  text-decoration: none;
  font-weight: 500;
  display: inline-block;
}

/* 区切り線 */
.footer-nav li:not(:last-child)::after {
  content: "";
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  height: 1.2em;
  border-right: 1px dashed #F15A29;
  opacity: 0.8;
}



/* イルカ画像：右上方向にかぶせるように調整 */
.before-footer-dolphin {
  position: absolute;
  left: 50%;                     /* 画面の中央を基準に */
  transform: translateX(10px);  /* 右に200pxずらす */
  bottom: 25px;
  height: auto;
  z-index: 1;
  pointer-events: none;
}