@charset "UTF-8";
/* ==========================================================================
   耳鼻咽喉科LP（/department/jibika/）  dept-lp.css の後に読み込み
   Figma：耳鼻咽喉科_PC 5600:1730（1440）／ SP 5600:2928（375）
   皮膚科（ティール）の共通部品を、ブルー×コーラルの配色に置き換え、耳鼻科専用の部品を追加
   ========================================================================== */

.dl--jibika, body.is-dept-lp .dl-ctab {
	--teal: #2b93b5; --teal-d: #1e7a99; --teal-l: #1e7a99; --coral: #f08a6e; --rose: #5dbccf;
	--blue: #1382cb; --pinkbar: #f6dd8f; --border: #cbeaf1; --green: #1e7a99;
	--j-light: #e5f4f8; --j-cell: #f0f9fb; --j-price: #e07a5f; --j-yellow: #fce080;
}
.dl--jibika { background: #f5faf9; }

/* ---------- FV ---------- */
.dl--jibika .dl-hero { background: linear-gradient(90deg, #eaf6f8 0%, #f5fafb 55%, #fff 100%); }
.dl--jibika .dl-hero__photo { left: 664px; top: -5px; width: 765px; height: 633px; }
.dl--jibika .dl-hero__fade--top { left: 540px; top: 0; width: 900px; height: 159px; background: linear-gradient(180deg, #f5fafb 0%, rgba(245,250,251,0) 100%); }
.dl--jibika .dl-hero__fade--left { left: 540px; width: 260px; background: linear-gradient(90deg, #f5fafb 0%, rgba(245,250,251,0) 100%); }
.dl--jibika .dl-hero__copy { left: 151px; top: 59px; gap: 23px; }
.dl--jibika .dl-hero__lead { align-self: flex-start; min-width: 0; width: 600px; font-size: 34px; line-height: 1.25; letter-spacing: 1.86px; color: #2e2a2e; }
.dl--jibika .dl-hero__lead em { font-size: 37px; color: var(--coral); }
.dl--jibika .dl-hero__lead small { font-size: 28px; font-weight: 700; }
.dl--jibika .dl-hero__lead mark { position: relative; z-index: 0; background: none; color: inherit; }
.dl--jibika .dl-hero__lead mark::before { content: ""; position: absolute; z-index: -1; left: -6px; right: -6px; bottom: 3px; height: 13px; border-radius: 2px; background: var(--j-yellow); }
.dl--jibika .dl-hero__catch { width: 600px; align-items: center; margin-top: 1px; white-space: nowrap; font-family: var(--f-mincho); font-weight: 700; text-align: center; }
.dl--jibika .dl-hero__catch .is-1, .dl--jibika .dl-hero__catch .is-2 { font-size: 80px; line-height: 1.11; letter-spacing: 3.2px; color: #1a6e8e; }
.dl--jibika .dl-hero__cta .dl-ctapair__cap { color: var(--teal-d); }
.dl--jibika .dl-hero__points li { background: #fffbea; border-color: var(--teal); text-align: center; }
.dl--jibika .dl-hero__points .is-c, .dl--jibika .dl-hero__points li:nth-child(2) .is-c { color: var(--coral); }
.dl--jibika .dl-hero__points .is-t, .dl--jibika .dl-hero__points li:nth-child(2) .is-t { color: var(--teal); }
.dl--jibika .dl-hero__points li:first-child b { font-size: 27px; }
.dl--jibika .dl-hero__points li:first-child small { font-size: 24px; }
.dl--jibika .dl-hero__points li:nth-child(2) b { font-size: 27px; }
.dl--jibika .dl-hero__points li:nth-child(2) small { font-size: 22px; }
.dl--jibika .dl-hero__points b.is-s { font-size: 18px; }
.dl--jibika .dl-hero__points li:nth-child(3) small { font-size: 22px; line-height: 1.2; }

/* ---------- 見出し ---------- */
.dl-lead--center { text-align: center; font-weight: 700; color: #444; }
.dl-h2--plain .dl-h2__bar { display: none; }
.dl--jibika .dl-h2--plain .dl-h2__ttl { font-size: 28px; }
.dl-anchor { position: absolute; top: 0; scroll-margin-top: 240px; }

/* ---------- できること・できないこと ---------- */
.dl-scope { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; align-items: start; }
.dl-scope__card { display: flex; flex-direction: column; gap: 16px; padding-bottom: 24px; background: #fff; border: 1px solid var(--border); border-radius: 12px; overflow: hidden; }
.dl-scope__head { display: flex; align-items: center; gap: 10px; padding: 16px 24px; background: var(--j-light); font-size: 20px; font-weight: 700; line-height: 1.4; color: var(--teal); }
.dl-scope__head i { display: flex; align-items: center; justify-content: center; flex-shrink: 0; width: 32px; height: 32px; border-radius: 50%; background: var(--teal); color: #fff; font-size: 18px; font-style: normal; line-height: 1; }
.dl-scope__card.is-cannot .dl-scope__head { background: #fdf1ec; color: var(--j-price); }
.dl-scope__card.is-cannot .dl-scope__head i { background: var(--j-price); }
.dl-scope__card ul { display: flex; flex-direction: column; gap: 16px; padding: 0 24px; }
.dl-scope__card li { display: flex; align-items: flex-start; gap: 10px; font-size: 16px; font-weight: 500; line-height: 1.6; color: #333; }
.dl-scope__card li i { flex-shrink: 0; font-style: normal; font-weight: 700; line-height: 1.6; color: var(--teal); }
.dl-scope__card.is-cannot li i { color: var(--j-price); }
.dl-scope__note { text-align: center; font-size: 15px; font-weight: 700; line-height: 1.6; color: var(--teal-d); }
#scope { padding-bottom: 0; }
.dl-symp-sec { padding-top: 40px; }

/* ---------- 相談できる症状 ---------- */
.dl--jibika .dl-symp li { gap: 0; padding: 10px 0 0; height: 172px; border-color: var(--border); }
.dl--jibika .dl-symp img { height: 96px; margin-bottom: 0; object-fit: contain; }
.dl--jibika .dl-symp h3 { padding-top: 8px; color: var(--rose); }
.dl--jibika .dl-symp p { padding: 3px 12px 12px; }
.dl--jibika .dl-note { font-size: 13px; color: #666; }

/* ---------- 診療費（1列の表） ---------- */
.dl-ptable--single, .dl-ptable--single th, .dl-ptable--single td { border-color: var(--j-light); }
.dl--jibika .dl-ptable tbody th { background: var(--j-cell); }
.dl--jibika .dl-ptable, .dl--jibika .dl-ptable th, .dl--jibika .dl-ptable td { border-color: var(--j-light); }
.dl-ptable--single strong { font-size: 20px; letter-spacing: .02em; color: var(--j-price); }
.dl--jibika .dl-ptable--opt td { color: #333; }
.dl--jibika .dl-ptable a { color: var(--teal-d); }
.dl-med__legend { margin-top: -16px; font-size: 15px; line-height: 1.7; color: #555; }
.dl--jibika .dl-med__list li { border-color: var(--border); }
.dl--jibika .dl-med__list li:hover { box-shadow: 0 2px 8px rgba(43,147,181,.18); }
.dl--jibika .dl-med__price, .dl--jibika .dl-med__price b { color: var(--j-price); }

/* ---------- 特長 ---------- */
.dl--jibika .dl-feat__card { border-color: var(--border); }
.dl--jibika .dl-feat__img { background: #f7f9fa; }
.dl--jibika .dl-feat__img img { position: static; width: 100%; height: 100%; object-fit: cover; }
.dl--jibika .dl-feat__txt { white-space: normal; }

/* ---------- よくある質問 ---------- */
.dl-faq { display: flex; flex-direction: column; gap: 14px; }
.dl-faq__item { display: flex; flex-direction: column; gap: 12px; padding: 22px 28px; background: #fff; border: 1px solid var(--border); border-radius: 14px; }
.dl-faq__q, .dl-faq__a { display: flex; align-items: flex-start; gap: 14px; line-height: 1.7; }
.dl-faq__q { font-size: 18px; font-weight: 700; color: #222; }
.dl-faq__a { font-size: 16px; color: #333; }
.dl-faq__q span, .dl-faq__a span { flex-shrink: 0; display: flex; align-items: center; justify-content: center; width: 32px; height: 32px; border-radius: 50%; color: #fff; font-size: 16px; font-weight: 700; line-height: 1; }
.dl-faq__q span { background: var(--teal); }
.dl-faq__a span { background: #e2b94f; }

/* ---------- 配送方法・診療時間 ---------- */
.dl--jibika .dl-hours__card { border-color: var(--border); }
.dl--jibika .dl-linenote { color: var(--teal-d); }

/* ---------- 医師 ---------- */
.dl--jibika .dl-doc__tags span { background: var(--j-light); color: var(--teal-d); }
.dl--jibika .dl-doc__career { background: var(--j-cell); }
#doctor { padding-bottom: 32px; }

/* ---------- すぐに受診してほしい症状 ---------- */
.dl-emg { display: flex; flex-direction: column; gap: 10px; padding: 28px 36px; background: #fff6f1; border: 1px solid #f2c9b8; border-radius: 16px; font-size: 16px; line-height: 1.8; color: #444; }
.dl-emg__ttl { font-size: 22px; font-weight: 700; line-height: 1.4; color: #c9705a; }
.dl-emg ul { margin: 0; padding: 0; list-style: none; }
.dl-emg li::before { content: "・"; }
.dl-emg a { color: #c9705a; font-weight: 700; text-decoration: underline; }
.dl-emg-sec { padding-top: 0; }
.dl-emg-sec::before { display: none; }

/* ==========================================================================
   SP（〜767px）  Figma 5600:2928
   ========================================================================== */
@media (max-width: 767px) {
	/* FV */
	.dl--jibika .dl-hero__stage { height: calc(var(--u) * 591); }
	.dl--jibika .dl-hero__photo { left: calc(var(--u) * 226); top: calc(var(--u) * -53); width: calc(var(--u) * 149); height: calc(var(--u) * 331); }
	.dl--jibika .dl-hero__fade--top { left: 0; top: 0; width: 100%; height: calc(var(--u) * 60); background: linear-gradient(180deg, #f5fafb 0%, rgba(245,250,251,0) 100%); }
	.dl--jibika .dl-hero__fade--left { left: calc(var(--u) * 200); top: 0; width: calc(var(--u) * 80); height: calc(var(--u) * 300); background: linear-gradient(90deg, #f5fafb 0%, rgba(245,250,251,0) 100%); }
	.dl--jibika .dl-hero__fade--bottom { left: calc(var(--u) * 200); top: calc(var(--u) * 210); width: calc(var(--u) * 175); height: calc(var(--u) * 80); background: linear-gradient(180deg, rgba(245,250,251,0) 0%, #f5fafb 100%); }
	.dl--jibika .dl-hero__lead { left: 0; right: 0; top: calc(var(--u) * 46); width: 100%; text-align: center; font-size: calc(var(--u) * 19); line-height: 1.45; letter-spacing: calc(var(--u) * .5); }
	.dl--jibika .dl-hero__lead em { font-size: calc(var(--u) * 21); }
	.dl--jibika .dl-hero__lead small { font-size: calc(var(--u) * 16); }
	.dl--jibika .dl-hero__lead mark::before { left: calc(var(--u) * -3); right: calc(var(--u) * -3); bottom: calc(var(--u) * 2); height: calc(var(--u) * 8); }
	.dl--jibika .dl-hero__catch { left: 0; right: 0; top: calc(var(--u) * 125); width: 100%; }
	.dl--jibika .dl-hero__catch .is-1, .dl--jibika .dl-hero__catch .is-2 { font-size: calc(var(--u) * 42); line-height: calc(var(--u) * 50); letter-spacing: calc(var(--u) * 1.6); }
	.dl--jibika .dl-hero__points { top: calc(var(--u) * 245); }
	.dl--jibika .dl-hero__points li:first-child b, .dl--jibika .dl-hero__points li:nth-child(2) b { font-size: calc(var(--u) * 18.9); }
	.dl--jibika .dl-hero__points li:first-child small { font-size: calc(var(--u) * 16.8); }
	.dl--jibika .dl-hero__points li:nth-child(2) small, .dl--jibika .dl-hero__points li:nth-child(3) small { font-size: calc(var(--u) * 15.4); }
	.dl--jibika .dl-hero__points b.is-s { font-size: calc(var(--u) * 12.6); }
	.dl--jibika .dl-hero__cta { top: calc(var(--u) * 371); }

	/* 見出し・本文 */
	.dl--jibika .dl-h2__ttl { font-size: 22px; }
	.dl--jibika .dl-h2--plain .dl-h2__ttl { font-size: 20px; }
	.dl-lead--center { text-align: left; font-weight: 400; }

	/* できること・できないこと */
	.dl-scope { grid-template-columns: 1fr; gap: 16px; }
	.dl-scope__head { padding: 12px 16px; font-size: 18px; }
	.dl-scope__head i { width: 28px; height: 28px; font-size: 16px; }
	.dl-scope__card { gap: 12px; padding-bottom: 18px; }
	.dl-scope__card ul { gap: 12px; padding: 0 16px; }
	.dl-scope__card li { font-size: 15px; }
	.dl-scope__note { text-align: left; font-size: 14px; }
	.dl-symp-sec { padding-top: 32px; }

	/* 症状 */
	.dl--jibika .dl-symp li { height: auto; padding-top: 10px; }
	.dl--jibika .dl-symp img { height: 72px; margin: 0 auto; }
	.dl--jibika .dl-symp p { padding: 3px 8px 12px; }

	/* 特長：SPは左にイラスト */
	.dl--jibika .dl-feat__img img { object-fit: contain; }

	/* 料金・FAQ・緊急時 */
	.dl-med__legend { margin-top: -20px; font-size: 14px; }
	.dl-ptable--single strong { font-size: 18px; }
	.dl-faq__item { padding: 16px; gap: 10px; }
	.dl-faq__q { font-size: 16px; gap: 10px; }
	.dl-faq__a { font-size: 15px; gap: 10px; }
	.dl-faq__q span, .dl-faq__a span { width: 26px; height: 26px; font-size: 14px; }
	.dl-emg { padding: 20px 16px; font-size: 15px; }
	.dl-emg__ttl { font-size: 18px; }
}
