@import url('https://fonts.googleapis.com/earlyaccess/notosanskr.css'); 
@charset "utf-8";
















:root {
  --ink: #183f35;
  --ink-soft: #30574c;
  --moss: #6f8778;
  --mist: #e9eee8;
  --paper: #f6f3ed;
  --paper-deep: #ece6db;
  --sand: #d5c2a2;
  --clay: #b76b44;
  --line: rgba(24, 63, 53, 0.16);
  --white: #fffdf9;
  --serif: "Iowan Old Style", "Noto Serif KR", "Batang", Georgia, serif;
  --sans: "Pretendard", "Noto Sans KR", "Apple SD Gothic Neo", Arial, sans-serif;
  --shadow: 0 22px 50px rgba(24, 63, 53, 0.12);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; background: var(--paper); color: var(--ink); font-family: var(--sans); font-size: 16px; line-height: 1.6; overflow-x: hidden; }
body::before { content: ""; position: fixed; inset: 0; pointer-events: none; z-index: 10; opacity: .33; background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.08'/%3E%3C/svg%3E"); }
a { color: inherit; text-decoration: none; }
button { font: inherit; }
img { display: block; width: 100%; }
.section-shell { width: min(1280px, calc(100% )); margin-inline: auto;     }
.hero-title {
        background: linear-gradient(90deg, rgba(15, 47, 39, .86), rgba(15, 47, 39, .3)), linear-gradient(0deg, rgba(12, 37, 31, .6), transparent 64%);}
.skip-link { position: fixed; z-index: 100; top: -50px; left: 20px; padding: 10px 14px; background: var(--ink); color: white; transition: top .2s; }
.skip-link:focus { top: 12px; }
.hero h1, .hero-lead strong, .hero-status strong { color: #fff; }
.hero-lead, .hero-status, .eyebrow { color: rgba(255,255,255,.75); }
.hero .text-link { color: #fff; border-color: #fff; }
.hero .button-primary { background: #fff; color: var(--ink); }
.site-header { position: relative; z-index: 20; background: rgba(246, 243, 237, .92); border-bottom: 1px solid transparent; transition: border-color .25s, box-shadow .25s; }
.site-header.is-scrolled { position: sticky; top: 0; border-color: var(--line); box-shadow: 0 6px 20px rgba(26, 60, 49, .06); backdrop-filter: blur(12px); }
.header-inner { width: min(1340px, calc(100% - 56px)); height: 92px; margin: auto; display: flex; align-items: center; justify-content: space-between; gap: 28px; }
.brand { display: inline-flex; align-items: center; gap: 10px; color: var(--ink); flex: 0 0 auto; }
.brand-mark { width: 37px; height: 37px; }
.brand span { display: grid; line-height: 1.15; }
.brand strong { font-family: var(--serif); font-size: 20px; letter-spacing: -.08em; font-weight: 700; }
.brand small { margin-top: 4px; font-size: 7px; font-weight: 700; letter-spacing: .12em; color: var(--moss); }
.desktop-nav { display: flex; align-items: center; gap: clamp(20px, 3vw, 46px); margin-left: auto; }
.desktop-nav a { position: relative; padding: 6px 0; color: #3d554d; font-size: 14px; letter-spacing: -.03em; }
.desktop-nav a::after { content: ""; position: absolute; left: 0; bottom: 0; width: 0; height: 1px; background: var(--clay); transition: width .25s; }
.desktop-nav a:hover::after, .desktop-nav a:focus-visible::after { width: 100%; }
.header-call { display: flex; align-items: center; gap: 10px; padding-left: 26px; border-left: 1px solid var(--line); }
.phone-icon { width: 30px; height: 30px; display: grid; place-items: center; border-radius: 50%; background: var(--ink); color: white; font-weight: 700; transform: rotate(-40deg); }
.header-call span:last-child { display: grid; line-height: 1.25; }
.header-call small { color: var(--moss); font-size: 10px; letter-spacing: .08em; }
.header-call strong { margin-top: 2px; font-size: 14px; letter-spacing: -.03em; }
.menu-button, .mobile-nav { display: none; }

.hero { min-height: 640px; display: grid; grid-template-columns: 1.03fr .97fr; align-items: center; gap: 50px; padding-top: 88px; padding-bottom: 90px; position: relative; }

.eyebrow { display: flex; align-items: center; gap: 9px; margin: 0 0 20px; color: var(--white); font-size: 10px; font-weight: 800; letter-spacing: .17em; }
.eyebrow span { width: 26px; height: 1px; background: currentColor; }
.hero h1, h2 { margin: 0; font-family: var(--serif); font-weight: 500; letter-spacing: -.085em; line-height: 1.2; }
.hero h1 { font-size: clamp(43px, 5.1vw, 75px); }
.hero h1 em, h2 em { color: #e68925; font-style: normal; text-shadow: 2px 2px 6px rgba(255, 255, 255, .8);}
.hero-lead { margin: 26px 0 31px; color: #ffffff; font-size: 16px; letter-spacing: -.045em; line-height: 1.85; }
.hero-lead strong { color: var(--ink); font-weight: 700; }
.hero-actions { display: flex; align-items: center; gap: 27px; }
.button { display: inline-flex; align-items: center; justify-content: center; gap: 24px; min-height: 56px; padding: 0 21px; font-size: 14px; font-weight: 700; letter-spacing: -.04em; transition: transform .2s, background .2s; }
.button:hover { transform: translateY(-3px); }
.button-primary { background: var(--ink); color: #fff; box-shadow: 0 11px 20px rgba(24,63,53,.16); border-radius: 999px; padding: 0 28px;  }
.button-primary span { font-size: 18px; font-weight: 400; }
.text-link { padding-bottom: 5px; border-bottom: 1px solid var(--ink); font-size: 13px; font-weight: 700; }
.text-link span { margin-left: 7px; color: var(--clay); }
.text-link {
  display: inline-flex;
  align-items: center;
  min-height: 56px;
  padding: 0 26px;
  border: 1px solid var(--ink);
  border-radius: 999px;
  font-size: 13px;
  font-weight: 700;
}
.hero-status { display: flex; align-items: center; gap: 10px; margin-top: 52px; color: #ffffff; font-size: 12px; }
.status-dot { width: 8px; height: 8px; flex: 0 0 auto; border-radius: 50%; background: #4eae73; box-shadow: 0 0 0 5px rgba(78,174,115,.12); }
.hero-status div { display: grid; line-height: 1.35; }
.hero-status strong { font-size: 13px; color: var(--white); }
.hero-status small { margin-top: 2px; font-size: 11px; }
.status-line { width: 1px; height: 25px; margin-inline: 4px; background: var(--line); }
.status-note { color: var(--white); }
.hero-visual { height: 505px; position: relative; }
.hero-arc { position: absolute; top: -25px; right: -70px; width: 400px; height: 400px; border: 1px solid rgba(183,107,68,.35); border-radius: 50%; }
.photo-frame { overflow: hidden; }
.hero-photo { position: absolute; right: 51px; top: 0; width: min(82%, 390px); height: 465px; border-radius: 220px 220px 8px 8px; box-shadow: var(--shadow); background: #e6e2dc; }
.hero-photo::after { content: ""; position: absolute; inset: 0; background: linear-gradient(135deg, rgba(255,255,255,.18), transparent 60%); pointer-events: none; }
.hero-photo img { height: 100%; object-fit: cover; object-position: center top; filter: saturate(.8) contrast(.97); }
.doctor-note { position: absolute; bottom: 1px; left: 10px; display: flex; align-items: flex-start; gap: 9px; padding: 16px 18px; background: var(--paper); box-shadow: 0 15px 35px rgba(24,63,53,.12); transform: rotate(-4deg); }
.note-star { color: var(--clay); font-size: 20px; line-height: 1; }
.doctor-note p { margin: 0; color: #657870; font-size: 12px; line-height: 1.5; letter-spacing: -.05em; }
.doctor-note strong { color: var(--ink); font-size: 14px; }
.hero-orbit { position: absolute; border-radius: 50%; }
.orbit-one { width: 13px; height: 13px; top: 107px; right: 8px; background: var(--clay); }
.orbit-two { width: 33px; height: 33px; bottom: 70px; right: 15px; border: 1px solid var(--moss); }

.quickbar-wrap { position: relative; z-index: 5; background: var(--mist); }
.quickbar { min-height: 108px; display: grid; grid-template-columns: 1fr 1fr auto; align-items: stretch; }
.quickbar article { display: flex; align-items: center; gap: 15px; padding: 24px 28px 24px 2px; border-right: 1px solid rgba(24,63,53,.17); }
.quickbar article + article { padding-left: 30px; }
.quickbar svg { width: 28px; height: 28px; stroke: var(--clay); fill: none; stroke-width: 1.5; }
.quickbar div { display: grid; line-height: 1.35; }
.quickbar small { color: var(--moss); font-size: 10px; font-weight: 800; letter-spacing: .1em; }
.quickbar strong { margin-top: 5px; font-size: 13px; letter-spacing: -.05em; }
.quick-call { display: flex; align-items: center; gap: 13px; padding-left: 30px; color: var(--ink); }
.quick-call span { font-size: 11px; color: var(--moss); }
.quick-call strong { font-size: 17px; letter-spacing: -.05em; }
.quick-call b { display: grid; place-items: center; width: 28px; height: 28px; border: 1px solid var(--moss); border-radius: 50%; font-weight: 400; }

.intro { padding-top: 145px; padding-bottom: 138px; }
.section-heading h2, .gallery-header h2, .guide-content h2, .visit-copy h2, .review-heading h2 { font-size: clamp(35px, 4.2vw, 59px); }
.intro-grid { display: grid; grid-template-columns: .72fr 1.28fr; gap: 80px; margin-top: 66px; }
.intro-text { padding-top: 7px; }
.intro-text p { max-width: 300px; margin: 0; color: #61746c; font-size: 15px; line-height: 1.9; letter-spacing: -.055em; }
.round-arrow-link { display: inline-flex; align-items: center; gap: 16px; margin-top: 31px; font-size: 13px; font-weight: 800; }
.round-arrow-link span { display: grid; place-items: center; width: 31px; height: 31px; border: 1px solid var(--ink); border-radius: 50%; transition: transform .2s, background .2s, color .2s; }
.round-arrow-link:hover span { transform: translateX(4px); background: var(--ink); color: white; }
.condition-list { border-top: 1px solid var(--line); }
.condition-card { min-height: 108px; display: grid; grid-template-columns: 53px 1fr 30px; align-items: center; gap: 10px; border-bottom: 1px solid var(--line); transition: padding .25s, background .25s; }
.condition-card:hover { padding-inline: 17px; background: #ede9e0; }
.condition-no { color: var(--clay); font-family: var(--serif); font-size: 16px; }
.condition-card h3 { margin: 0; font-family: var(--serif); font-size: 23px; font-weight: 500; letter-spacing: -.075em; line-height: 1.3; }
.condition-card p { margin: 7px 0 0; color: #6c7c75; font-size: 12px; letter-spacing: -.045em; }
.condition-arrow { color: var(--moss); font-size: 21px; }
.specialties { display: grid; grid-template-columns: 132px 1fr; gap: 20px; margin-top: 82px; padding-top: 23px; border-top: 1px solid var(--line); }
.specialties > p { margin: 6px 0 0; color: var(--moss); font-size: 11px; font-weight: 800; letter-spacing: .11em; }
.specialty-tags { display: flex; flex-wrap: wrap; gap: 9px 8px; }
.specialty-tags span { padding: 7px 12px; border: 1px solid rgba(24,63,53,.2); border-radius: 50px; color: #466258; font-size: 12px; letter-spacing: -.045em; }

.story-section { position: relative; color: var(--white); background: var(--ink); overflow: hidden; }
.story-section::before { content: ""; position: absolute; right: -11vw; top: -32vw; width: 62vw; height: 62vw; border: 1px solid rgba(213,194,162,.22); border-radius: 50%; }
.story-section::after { content: ""; position: absolute; right: 16vw; bottom: -16px; width: 10px; height: 10px; border: 1px solid rgba(255,255,255,.6); border-radius: 50%; }
.story-inner { min-height: 708px; display: grid; grid-template-columns: 105px 1fr 172px; gap: 44px; padding-top: 116px; padding-bottom: 110px; position: relative; z-index: 1; }
.story-aside { position: relative; }
.vertical-copy { margin: 0; writing-mode: vertical-rl; color: rgba(255,255,255,.5); font-size: 9px; font-weight: 700; letter-spacing: .18em; }
.story-count { position: absolute; bottom: 0; left: 0; color: var(--sand); font-family: var(--serif); font-size: 52px; }
.eyebrow.light { color: #c7d1c9; }
.story-content h2 { max-width: 660px; font-size: clamp(37px, 4.4vw, 62px); color: white; }
.story-content h2 em { color: var(--sand); }
.story-lead { max-width: 540px; margin: 32px 0 50px; color: #c6d3ca; font-size: 15px; letter-spacing: -.055em; line-height: 1.95; }
.story-points { display: grid; grid-template-columns: repeat(3, 1fr); border-top: 1px solid rgba(255,255,255,.25); }
.story-points > div { padding: 20px 19px 0 0; }
.story-points > div + div { padding-left: 18px; border-left: 1px solid rgba(255,255,255,.2); }
.story-points span { color: var(--sand); font-family: var(--serif); font-size: 17px; }
.story-points p { margin: 11px 0 0; color: #c1cdc5; font-size: 12px; line-height: 1.75; letter-spacing: -.04em; }
.story-points strong { color: white; font-size: 14px; }
.story-quote { align-self: end; position: relative; padding: 20px 0 0 28px; border-left: 1px solid var(--sand); }
.story-quote span { position: absolute; top: -26px; left: 18px; color: var(--sand); font-family: var(--serif); font-size: 58px; }
.story-quote p { margin: 0; color: var(--sand); font-family: var(--serif); font-size: 21px; line-height: 1.4; letter-spacing: -.08em; }

.gallery-section { padding-top: 143px; padding-bottom: 150px; }
.gallery-header { display: flex; justify-content: space-between; align-items: end; margin-bottom: 58px; }
.gallery-header > p { margin: 0 18px 13px 0; color: var(--moss); font-size: 11px; line-height: 1.65; text-align: right; }
.gallery-header > p span { color: var(--clay); font-size: 17px; }
.gallery-grid { display: grid; grid-template-columns: 1.08fr .65fr 1.14fr; grid-template-rows: 210px 250px; gap: 16px; }
.gallery-item { position: relative; overflow: hidden; padding: 0; border: 0; background: #d6d5cd; cursor: zoom-in; text-align: left; }
.gallery-item img { height: 100%; object-fit: cover; transition: transform .6s ease; filter: saturate(.78) contrast(.98); }
.gallery-item::after { content: ""; position: absolute; inset: 0; background: linear-gradient(0deg, rgba(12,37,31,.63), transparent 52%); opacity: .65; transition: opacity .3s; }
.gallery-item span { position: absolute; z-index: 1; bottom: 15px; left: 16px; color: white; font-size: 12px; letter-spacing: -.04em; opacity: .94; }
.gallery-item:hover img, .gallery-item:focus-visible img { transform: scale(1.07); }
.gallery-item:hover::after { opacity: .95; }
.item-doctors { grid-row: span 2; }
.item-door { grid-column: 2; }
.item-reception { grid-row: 2; grid-column: 2 / span 2; }
.item-building { grid-column: 3; grid-row: 1; }
.item-address { display: none; }

.review-section { background: #d9e1da; overflow: hidden; }
.review-inner { display: grid; grid-template-columns: .89fr 1.11fr; gap: 85px; padding-top: 125px; padding-bottom: 128px; padding-left: 20px; }
.review-heading h2 { color: var(--ink); }
.review-heading h2 em { color: var(--clay); }
.review-stats { display: flex; gap: 39px; margin-top: 52px; }
.review-stats div { display: grid; }
.review-stats strong { font-family: var(--serif); font-size: 51px; font-weight: 500; letter-spacing: -.08em; line-height: 1; }
.review-stats span { margin-top: 8px; color: var(--moss); font-size: 10px; font-weight: 700; letter-spacing: .07em; }
.review-cards { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; align-content: start; padding-top: 28px; }
.review-card { min-height: 218px; display: flex; flex-direction: column; justify-content: space-between; padding: 28px; background: var(--white); box-shadow: 0 18px 30px rgba(24,63,53,.07); }
.review-card.offset { margin-top: 52px; background: #fbf1df; }
.stars { color: var(--clay); font-size: 12px; letter-spacing: .14em; }
.review-card blockquote { margin: 26px 0; color: var(--ink); font-family: var(--serif); font-size: 22px; letter-spacing: -.07em; line-height: 1.5; }
.review-card footer { display: grid; gap: 2px; color: #5d7269; font-size: 11px; }
.review-card footer span { color: var(--ink); font-weight: 700; }
.review-card footer small { font-size: 10px; }
.review-scribble { grid-column: span 2; justify-self: end; width: 270px; margin-top: -4px; padding: 8px 4px; transform: rotate(-5deg); color: var(--clay); }
.review-scribble span { font-family: cursive; font-size: 22px; }
.review-scribble p { margin: 2px 0; font-family: var(--serif); font-size: 16px; line-height: 1.4; letter-spacing: -.08em; }

.guide-section { display: grid; grid-template-columns: .84fr 1.16fr; gap: clamp(50px, 9vw, 126px); padding-top: 150px; padding-bottom: 145px;padding-left: 20px; }
.guide-photo { align-self: center; position: relative; padding: 22px 0 30px 30px; }
.guide-photo::before { content: ""; position: absolute; left: 0; top: 0; width: 68%; height: 86%; border: 1px solid var(--sand); }
.guide-photo img { position: relative; height: 365px; object-fit: cover; filter: saturate(.75); }
.guide-photo p { position: absolute; z-index: 1; bottom: 0; right: -29px; margin: 0; padding: 10px 15px; background: var(--paper); color: var(--moss); font-size: 9px; font-weight: 800; letter-spacing: .13em; }
.guide-photo p span { margin-left: 9px; color: var(--clay); font-family: var(--serif); font-size: 16px; }
.guide-content { padding-top: 18px; }
.visit-steps { margin: 46px 0 0; padding: 0; list-style: none; border-top: 1px solid var(--line); }
.visit-steps li { display: grid; grid-template-columns: 55px 1fr; gap: 8px; padding: 20px 0; border-bottom: 1px solid var(--line); }
.visit-steps li > span { color: var(--clay); font-family: var(--serif); font-size: 16px; }
.visit-steps strong { font-family: var(--serif); font-size: 20px; font-weight: 500; letter-spacing: -.065em; }
.visit-steps p { margin: 5px 0 0; color: var(--moss); font-size: 12px; letter-spacing: -.045em; }
.guide-note { display: grid; grid-template-columns: 44px 1fr; gap: 12px; margin-top: 28px; padding: 15px 16px; background: #e9e5db; }
.guide-note span { color: var(--clay); font-size: 10px; font-weight: 800; letter-spacing: .08em; }
.guide-note p { margin: 0; color: #617069; font-size: 11px; line-height: 1.65; letter-spacing: -.04em; }

.visit-section { padding: 120px 20px; background: #f1ede4; }
.visit-inner { display: grid; grid-template-columns: .95fr 1.05fr; gap: 70px; align-items: center; }
.visit-copy h2 em { color: var(--clay); }
.visit-copy > p:not(.eyebrow) { margin: 29px 0 31px; color: #60746b; font-size: 15px; letter-spacing: -.055em; line-height: 1.9; }
.visit-address { display: flex; align-items: center; gap: 12px; padding: 17px 0; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.map-pin { display: grid; place-items: center; width: 31px; height: 31px; border: 1px solid var(--clay); border-radius: 50%; color: var(--clay); font-size: 17px; }
.visit-address div { display: grid; }
.visit-address small { color: var(--moss); font-size: 9px; font-weight: 800; letter-spacing: .12em; }
.visit-address strong { margin-top: 3px; font-size: 14px; letter-spacing: -.05em; }
.visit-links { display: flex; align-items: center; gap: 23px; margin-top: 27px; }
.plain-call { display: grid; line-height: 1.3; }
.plain-call small { color: var(--moss); font-size: 10px; letter-spacing: .07em; }
.plain-call strong { margin-top: 4px; font-size: 16px; }
.map-card { min-height: 390px; position: relative; overflow: hidden; background: #dce3d6; border: 1px solid rgba(24,63,53,.13); }
.map-grain { position: absolute; inset: 0; opacity: .28; background-image: radial-gradient(#799083 1px, transparent 1px); background-size: 12px 12px; }
.road { position: absolute; background: #faf9f4; box-shadow: 0 0 0 1px rgba(90,108,98,.12); }
.road-a { width: 130%; height: 44px; top: 55%; left: -15%; transform: rotate(-18deg); }
.road-b { width: 45px; height: 125%; left: 51%; top: -14%; transform: rotate(22deg); }
.road-c { width: 98%; height: 26px; top: 23%; left: 13%; transform: rotate(6deg); }
.road-d { width: 28px; height: 52%; right: 16%; bottom: -4%; transform: rotate(-40deg); }
.school-label { position: absolute; top: 64px; left: 58px; color: #647a6c; font-size: 13px; font-weight: 700; line-height: 1.35; }
.school-label::before { content: ""; position: absolute; left: -17px; top: 4px; width: 10px; height: 10px; border: 2px solid #76917e; border-radius: 50%; }
.school-label small { font-size: 10px; font-weight: 500; }
.clinic-pin { position: absolute; top: 53%; left: 49%; display: flex; align-items: center; gap: 13px; transform: translate(-15%, -50%); }
.pulse { position: relative; width: 18px; height: 18px; border: 5px solid var(--clay); border-radius: 50%; background: #fae8d6; box-shadow: 0 0 0 8px rgba(183,107,68,.15); }
.clinic-pin div { display: grid; min-width: 104px; padding: 10px 13px; background: var(--ink); color: white; box-shadow: 0 10px 22px rgba(24,63,53,.2); }
.clinic-pin b { font-size: 13px; letter-spacing: -.06em; }
.clinic-pin small { margin-top: 1px; color: #cbd8cf; font-size: 9px; }
.map-caption { position: absolute; right: 18px; bottom: 16px; margin: 0; color: #62776c; font-size: 10px; letter-spacing: -.03em; }

.site-footer { background: var(--ink); color: white; }
.footer-inner { display: grid; grid-template-columns: 1.1fr .9fr auto; gap: 50px; padding-top: 75px; padding-bottom: 60px; }
.footer-brand .brand { color: white; }
.footer-brand .brand small { color: #b8c9bd; }
.footer-brand > p { margin: 22px 0 0; color: #b4c4ba; font-size: 13px; line-height: 1.8; letter-spacing: -.04em; }
.footer-info { padding-top: 6px; }
.footer-info p { margin: 0 0 10px; color: #d9e4dc; font-size: 12px; }
.footer-info p span { display: inline-block; width: 42px; color: #94ad9d; font-size: 10px; font-weight: 700; letter-spacing: .06em; }
.footer-info a { text-decoration: underline; text-underline-offset: 3px; }
.footer-call { align-self: start; display: grid; min-width: 201px; padding: 17px 17px 15px; border: 1px solid rgba(255,255,255,.35); position: relative; }
.footer-call small { color: #afc6b7; font-size: 10px; font-weight: 700; letter-spacing: .07em; }
.footer-call strong { margin-top: 3px; font-size: 19px; letter-spacing: -.05em; }
.footer-call span { position: absolute; right: 16px; top: 23px; color: var(--sand); font-size: 19px; }
.footer-bottom { display: flex; align-items: center; justify-content: space-between; min-height: 55px; border-top: 1px solid rgba(255,255,255,.18); color: #8fa899; font-size: 9px; letter-spacing: .05em; }
.footer-bottom a { color: #d1dfd5; }
.mobile-call-bar { display: none; }

.lightbox { width: min(850px, calc(100% - 30px)); padding: 0; border: 0; background: transparent; overflow: visible; }
.lightbox::backdrop { background: rgba(14, 34, 29, .82); backdrop-filter: blur(4px); }
.lightbox figure { margin: 0; background: var(--paper); box-shadow: 0 30px 70px rgba(0,0,0,.3); }
.lightbox img { max-height: min(72vh, 700px); object-fit: contain; background: #1c332c; }
.lightbox figcaption { padding: 13px 16px; color: var(--ink); font-size: 13px; }
.lightbox-close { position: absolute; right: -13px; top: -13px; width: 36px; height: 36px; border: 0; border-radius: 50%; background: var(--clay); color: white; font-size: 26px; line-height: 1; cursor: pointer; }

.reveal { opacity: 0; transform: translateY(20px); transition: opacity .65s ease, transform .65s ease; }
.reveal.is-visible { opacity: 1; transform: translateY(0); }
.reveal-delay { transition-delay: .12s; }
.reveal-delay-2 { transition-delay: .24s; }

.hero-status.is-closed .status-dot { background: #9aa59f; box-shadow: 0 0 0 5px rgba(154,165,159,.15); }
.quickbar .hours { grid-template-columns: auto auto; column-gap: 12px; row-gap: 3px; align-items: baseline; }
.quickbar .hours strong { margin-top: 0; white-space: nowrap; }
@media (max-width: 900px) {
  .section-shell { width: min(100% );  min-height: 683px;}
  .header-inner { width: min(100% - 40px, 760px); height: 76px; }
  .desktop-nav, .header-call { display: none; }
  .menu-button { display: grid; gap: 6px; width: 37px; height: 37px; padding: 8px 3px; border: 0; background: transparent; cursor: pointer; }
  .menu-button span { width: 27px; height: 1.5px; background: var(--ink); transition: transform .2s; }
  .menu-button.is-open span:first-child { transform: translateY(3.75px) rotate(45deg); }
  .menu-button.is-open span:last-child { transform: translateY(-3.75px) rotate(-45deg); }
  .mobile-nav { position: absolute; top: 76px; left: 0; right: 0; padding: 10px 20px 22px; background: var(--paper); border-bottom: 1px solid var(--line); box-shadow: 0 12px 22px rgba(24,63,53,.08); }
  .mobile-nav.is-open { display: grid; }
  .mobile-nav a { padding: 12px 6px; border-bottom: 1px solid var(--line); font-size: 14px; }
  .mobile-nav .mobile-nav-call { display: flex; justify-content: space-between; margin-top: 12px; padding: 14px 15px; border: 0; background: var(--ink); color: white; }
  .hero { min-height: 0; grid-template-columns: 1fr; gap: 37px; padding-top: 68px; padding-bottom: 70px; min-height: 683px; align-content: center; }
  .hero-visual { display: none;}
  .hero-photo { height: 405px; right: 10%; }
  .hero-arc { right: -12px; width: 340px; height: 340px; }
  .doctor-note { left: 1%; }
  .orbit-one { right: 4%; }
  .quickbar { grid-template-columns: 1fr 1fr; }
  .quickbar article { padding-right: 15px; }
  .quickbar article + article { padding-left: 18px; border-right: 0; }
  .quick-call { grid-column: 1 / -1; justify-content: center; min-height: 58px; padding: 0; border-top: 1px solid rgba(24,63,53,.17); }
  .intro { padding-top: 105px; padding-bottom: 100px; }
  .intro-grid { grid-template-columns: 1fr; gap: 40px; margin-top: 45px; }
  .intro-text p { max-width: 510px; }
  .story-inner { min-height: 0; grid-template-columns: 55px 1fr; gap: 27px; padding-top: 92px; padding-bottom: 83px; }
  .story-quote { display: none; }
  .story-points { max-width: 610px; }
  .gallery-section { padding-top: 104px; padding-bottom: 105px; }
  .review-inner { grid-template-columns: 1fr; gap: 35px; padding-top: 95px; padding-bottom: 95px;padding-left: 20px; }
  .review-cards { max-width: 620px; padding-top: 0; }
  .guide-section { grid-template-columns: .75fr 1.25fr; gap: 45px; padding-top: 105px; padding-bottom: 105px; }
  .guide-photo img { height: 320px; }
  .visit-section { padding: 95px 20px; }
  .visit-inner { grid-template-columns: 1fr; gap: 55px; }
  .map-card { min-height: 350px; }
  .footer-inner { grid-template-columns: 1fr 1fr; }
  .footer-call { grid-column: span 2; justify-self: start; }
  .quickbar article { padding-top: 16px; padding-bottom: 16px; }
  .quick-call { min-height: 50px; }
}

@media (max-width: 600px) {
  body { padding-bottom: 68px; }
  .section-shell { width: calc(100% ); min-height: 683px; }
  .brand strong { font-size: 18px; }
  .hero { padding-top: 52px; min-height: 683px; align-content: center;}
  .hero h1 { font-size: clamp(39px, 11vw, 52px); }
  .hero-lead { font-size: 14px; line-height: 1.8; }
  .hero-actions { align-items: flex-start; flex-direction: column; gap: 17px; }
  .button { min-height: 53px; }
  .hero-status { margin-top: 37px; flex-wrap: wrap; gap: 8px; }
  .status-line, .status-note { display: none; }
  .hero-visual { display: none; }
  .hero-photo { width: 76%; height: 345px; right: 8%; }
  .hero-arc { width: 290px; height: 290px; right: -32px; top: -20px; }
  .doctor-note { bottom: -8px; padding: 12px; }
  .doctor-note p { font-size: 10px; }
  .doctor-note strong { font-size: 12px; }
  .quickbar { width: 100%; grid-template-columns: 1fr; }
  .quickbar article { min-height: 76px; padding: 14px 20px; border-right: 0; border-bottom: 1px solid rgba(24,63,53,.17); }
  .quickbar article + article { padding-left: 20px; }
  .quick-call { min-height: 59px; }
  .section-heading h2, .gallery-header h2, .guide-content h2, .visit-copy h2, .review-heading h2 { font-size: 36px; }
  .intro { padding-top: 82px; padding-bottom: 82px;padding-left: 20px;padding-right: 30px; }
  .condition-card { grid-template-columns: 34px 1fr 22px; min-height: 118px; }
  .condition-card h3 { font-size: 19px; }
  .condition-card p { font-size: 11px; line-height: 1.55; }
  .specialties { grid-template-columns: 1fr; gap: 11px; margin-top: 55px; }
  .story-inner { grid-template-columns: 1fr; padding-top: 74px; }
  .story-aside { display: none; }
  .story-content h2 { font-size: 37px; }
  .story-lead { margin-top: 25px; margin-bottom: 38px; font-size: 14px; }
  .story-points { grid-template-columns: 1fr; }
  .story-points > div { display: grid; grid-template-columns: 42px 1fr; gap: 8px; padding: 14px 0; }
  .story-points > div + div { padding-left: 0; border-left: 0; border-top: 1px solid rgba(255,255,255,.16); }
  .story-points p { margin: 0; }
  .gallery-header { align-items: start; margin-bottom: 35px; }
  .gallery-header > p { display: none; }
  .gallery-grid { grid-template-columns: 1fr 1fr; grid-template-rows: 230px 160px 160px; gap: 10px; }
  .item-doctors { grid-row: span 2; }
  .item-door { grid-column: 2; grid-row: 1; }
  .item-reception { grid-column: 2; grid-row: 2; }
  .item-building { grid-column: span 2; grid-row: 3; }
  .gallery-item span { bottom: 10px; left: 11px; font-size: 10px; }
  .review-inner { padding-top: 78px; padding-bottom: 80px; padding-left: 20px;}
  .review-stats { margin-top: 33px; }
  .review-stats strong { font-size: 45px; }
  .review-cards { grid-template-columns: 1fr; gap: 13px; }
  .review-card { min-height: 182px; padding: 23px; }
  .review-card.offset { margin-top: 0; }
  .review-scribble { display: none; }
  .guide-section { grid-template-columns: 1fr; gap: 45px; padding-top: 83px; padding-bottom: 83px; }
  .guide-photo { width: calc(100% - 14px); padding-left: 20px; }
  .guide-photo img { height: 268px; }
  .guide-photo p { right: -15px; }
  .visit-section { padding-top: 82px; padding-bottom: 84px; padding-left:20px;}
  .visit-copy > p:not(.eyebrow) { font-size: 14px; }
  .visit-links { align-items: stretch; flex-direction: column; gap: 17px; }
  .visit-links .button { width: 100%; }
  .map-card { min-height: 300px; }
  .school-label { left: 33px; top: 49px; font-size: 11px; }
  .clinic-pin { left: 45%; }
  .site-footer { padding-bottom: 3px; }
  .footer-inner { grid-template-columns: 1fr; gap: 33px; padding-top: 55px; padding-bottom: 38px; }
  .footer-call { grid-column: auto; width: 100%; }
  .footer-bottom { padding: 15px 0; min-height: 0; }
  .footer-bottom p { max-width: 230px; margin: 0; font-size: 8px; line-height: 1.5; }
  .mobile-call-bar { position: fixed; z-index: 30; bottom: 0; left: 0; right: 0; min-height: 68px; display: flex; align-items: center; gap: 9px; padding: 0 18px; background: var(--ink); color: white; box-shadow: 0 -6px 18px rgba(0,0,0,.16); font-size: 12px; }
  .mobile-call-icon { display: grid; place-items: center; width: 28px; height: 28px; border: 1px solid rgba(255,255,255,.4); border-radius: 50%; color: var(--sand); font-size: 14px; }
  .mobile-call-bar strong { margin-left: auto; color: var(--sand); font-size: 13px; }
  
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { transition-duration: .01ms !important; animation-duration: .01ms !important; }
  .reveal { opacity: 1; transform: none; }
}





























/* 초기화 */
html {overflow-y:scroll;height:100%;min-width:320px}
body {margin:0;padding:0;font-size:0.813em;;height:100%;font-family: 'Noto Sans KR', AppleSDGothicNeo-Regular,'Malgun Gothic','맑은 고딕',dotum,'돋움',sans-serif;}
html, h1, h2, h3, h4, h5, h6, form, fieldset, img {margin:0;padding:0;border:0}
h1, h2, h3, h4, h5, h6 {font-size:1em}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {display:block}
legend {position:absolute;font-size:0;line-height:0;text-indent:-9999em;overflow:hidden}
input, button {margin:0;padding:0;font-size:1em;font-family: 'Noto Sans KR', AppleSDGothicNeo-Regular,'Malgun Gothic','맑은 고딕',dotum,'돋움',sans-serif;}
button {cursor:pointer}
input[type=text], input[type=password], input[type=submit], input[type=image], button {font-size:1em;-webkit-appearance:none}
textarea, select,button {font-size:1em;font-family:'Noto Sans KR', AppleSDGothicNeo-Regular,'Malgun Gothic','맑은 고딕',dotum,'돋움',sans-serif;}
textarea {border-radius:0;-webkit-appearance:none}
select {margin:0;background:none}
p {margin:0;padding:0;word-break:break-all}
hr {display:none}
pre {overflow-x:scroll;font-size:1.1em}
a {color:#000;text-decoration:none}
ul,li,dl,dt,dd{padding:0;margin:0}
ul{list-style:none;}

*, :after, :before {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

/* 팝업레이어 */
#hd_pop {z-index:1000;position:relative;margin:0 auto;width:100%;height:0}
#hd_pop h2 {position:absolute;font-size:0;text-indent:-9999em;line-height:0;overflow:hidden}
.hd_pops {position:absolute;border:1px solid #e9e9e9;background:#fff;}
.hd_pops img{max-width:100%;height:auto}
.hd_pops_con {}
.hd_pops_footer {padding:10px 0;background:#000;color:#fff;text-align:right}
.hd_pops_footer button {margin-right:5px;padding:5px 10px;border:0;background:#393939;color:#fff}

/* 상단 레이아웃 */
#hd{text-align:center;width:100%;background:#fff;position:relative;z-index:99;height:85px;
box-shadow: 0px 3px 6px 3px rgba(0,0,0,0.06);
transition: 0.3s all ease-in-out;
-webkit-transition: 0.3s all ease-in-out;
-moz-transition: 0.3s all ease-in-out;
-o-transition: 0.3s all ease-in-out;}
#hd:after {display:block;visibility:hidden;clear:both;content:""}
#hd:before{content:'';position:absolute;bottom:0;left:0;background:#fff;background:rgba(255,255,255,0.5);width:100%;height:1px}
#hd_h1 {position:absolute;font-size:0;text-indent:-9999em;line-height:0;overflow:hidden}
#hd_wrapper{margin:0 auto;max-width:1280px;position:relative; display: flex; align-items: center;}

#logo {position:absolute;top:0;left:0}
#logo a{display:block;padding:0px;height:85px;

transition: 0.3s all ease-in-out;
-webkit-transition: 0.3s all ease-in-out;
-moz-transition: 0.3s all ease-in-out;
-o-transition: 0.3s all ease-in-out;
-ms-transition: 0.3s all ease-in-out}
#logo img{height:100%;width:auto;}

#gnb_empty {padding:20px 0;color:#fff;text-align:center;line-height:2em}
#gnb_empty a {display:inline;text-decoration:underline}

#hd.fixed{position:fixed;top:0;left:0}


#gnb {display:inline-block;vertical-align:top;text-align:right;margin-left: auto; float: none; width: auto;margin-right: 200px;}
#gnb:after {display:block;visibility:hidden;clear:both;content:""}
.gnb_wr{max-width:1280px;padding-right:200px;margin:0 auto;position:relative;}
#gnb a {display:block}
.gnb_1dli{position:relative;float:left;line-height:40px;padding:0 15px}
.gnb_1dli:after {display:block;visibility:hidden;clear:both;content:""}
.gnb_1dli button{float:left;border:0;width:20px;height:85px;overflow:hidden;border:0;background:url(../img/mobile/gnb_bg2.png) no-repeat 50% 50%;background-size:10px ;text-indent:-9999px}
.gnb_1da {position:relative;float:left;line-height:45px;margin:20px 0;font-size:1.154em;font-weight:bold}
#gnb_1dul { display: flex; gap: 32px; margin: 0; padding: 0; list-style: none; }
.gnb_2dul {display:none;position:absolute;top:85px;left:0;min-width:100%;z-index:99; text-align:left;min-width: 195px; white-space: nowrap;border-radius: 2px;background: #fff;
-webkit-box-shadow: 0 6px 12px rgba(0,0,0,0.175);
box-shadow: 0 6px 12px rgba(0,0,0,0.175);
transition: 0.3s all ease-in-out;
-webkit-transition: 0.3s all ease-in-out;
-moz-transition: 0.3s all ease-in-out;
-o-transition: 0.3s all ease-in-out;
-ms-transition: 0.3s all ease-in-out;}
.gnb_1dli:hover .gnb_2dul {display:block}
.gnb_1dli:hover .gnb_1da{color:#5166d8;}
.gnb_1dli:hover .gnb_1da:before{background:#2677df;}
.gnb_2da {width: 100%;padding:0 15px;font-size: 13px;color: #a8a6b0;display: inline-block;float: left;position: relative;font-weight:normal;white-space: nowrap;; border-top: 1px solid rgba(0,0,0,0.03);
transition: 0.3s all ease-in-out;
-webkit-transition: 0.3s all ease-in-out;
-moz-transition: 0.3s all ease-in-out;
-o-transition: 0.3s all ease-in-out;
-ms-transition: 0.3s all ease-in-out}
.gnb_2da:hover{color: #5166d8; background: #fafafa;}
.gnb_2da:active { background: #eaecf7;color:#5166d8}

#hd_btn{position:absolute;top:0;right:0;text-align:center;}
#hd_btn button{;width:42px;border:0;background:transparent;height:85px;float:left}

#hd_sch{z-index:10;display:none;position:absolute;top:0;left:0;background:#fff;width:100%;height:85px}
#hd_sch .sch_wr{}
#hd_sch #sch_stx {background:none;border:0;width:100%;height:85px;padding:0 80px;;font-size:1.385em}
#hd_sch #sch_stx:focus{outline:0;border-bottom:2px solid #5166d8;}
#hd_sch #sch_submit{background:none;border:0;position:absolute;top:0;left:0;height:85px;width:85px;font-size:18px;}
#hd_sch .btn_close{position:absolute;top:0;right:0;width:85px;height:85px;border:0;background:none;font-size:20px;color:#aaa}
#hd_sch .btn_close:hover{color:#000}

/*전체메뉴*/
#al_menu{display:none;position:fixed;top:0;left:0;width:100%;height:100%;text-align:left}
#al_menu .bg{background: rgba(0,0,0,0.5);width:100%;height:100%}  
#al_menu .menu_wr{position:absolute;top:0;left:0;background:#fff;width:100%; }
#al_menu .btn_close{position:absolute;top:0;right:0;background:none;border:0;width:100px;height:100px;font-size:20px;outline:0;color:#aaa}
#al_menu .btn_close:hover{color:#000}

#hd {
  position: sticky;
  top: 0;
  z-index: 1000;
  background: #fff; /* 배경이 없으면 아래 내용이 비쳐 보여요 */
}
@media (min-width: 970px){
    .btn_menu_op{display:none}
    #menu{max-width: 1280px; margin: 0 auto; padding: 110px 40px;}
    #menu:after {display:block;visibility:hidden;clear:both;content:""}
    #menu .menu_li h2{padding-bottom: 26px;font-weight: 500; font-size: 1.5em;color: #000;text-align: left;border-bottom: 1px solid #ddd;}
    #menu .menu_li{float:left;width:25%;padding:20px}    
    #menu .menu_li:nth-child(4n+1){clear:both}
    #menu .sub_menu {margin:15px 0}
    #menu .sub_menu li a{color: #666;font-weight: 400;padding-left:10px;line-height:20px;margin:5px 0;display:block;position:relative;}
    #menu .sub_menu li a:before{content:'';width:3px;height:3px;background:#5166d8;position:absolute;top:50%;left:0;margin-top:-1px}
 }
.mobile-logo a img {width:110px;height: 85px;}

@media (max-width: 969px){
    #hd{height:55px}
    #gnb {display:none}
    #logo a{padding: 0px;height: 55px;}
    #hd_btn button{width:38px;height:55px}
    #hd_sch #sch_submit{width:55px;height:55px}
    #hd_sch #sch_stx{padding:0 55px;height:55px}

    #hd_sch {height:55px}
		.mobile-logo {margin-top:55px;}
		.mobile-logo a img {width:100%; height:100%}
    #al_menu .menu_wr{position:absolute;top:0;left:0;height:100%;width:300px;max-height:100%;overflow-y:auto}
    #al_menu .btn_close{width:100%;background:#f3f3f3;height:55px;padding-right:20px;text-align:right}
    #menu{padding:35px 25px 30px 30px}
    #menu .menu_li{margin:15px 0;position:relative;} 
    #menu .menu_li h2{font-weight: 500; font-size: 1.25em;line-height:30px;color: #000;text-align: left}
    #menu .btn_menu_op{position:absolute;top:0;right:0;width:20px;height:30px;border:0;background:transparent;}
    #menu .sub_menu{display:none;margin-top:10px;}
    #menu .sub_menu li a{position:relative;display:block;line-height:20px;margin:10px 0;padding-left:15px}
    #menu .sub_menu li a:before{content:'';width:3px;height:3px;background:#5166d8;position:absolute;top:50%;left:5px;margin-top:-1px}
    #hd_sch .btn_close{width:55px;height:55px}

}


/*아이콘*/
.search-icon{display:inline-block;width:19px;height:19px;border:2px solid #000;border-radius:50px}
.search-icon:before{ content: "";position: absolute; width: 10px;height: 2px;background-color: #000;
-webkit-transform: rotate(45deg);
-ms-transform: rotate(45deg);
transform: rotate(45deg);
margin-top: 15px;
margin-left: 5px;margin-left:11px \0/IE9}
.menu-icon{display:inline-block;width:20px;height:2px;background:#000;position:relative;vertical-align:middle}
.menu-icon:before{position:absolute;top:-7px;left:0;width:100%;background:#000;height:2px;content:'';}
.menu-icon:after{position:absolute;bottom:-7px;left:0;width:100%;background:#000;height:2px;content:'';}

 @media (max-width: 969px){
    .search-icon{display:inline-block;width:17px;height:17px;border:2px solid #000;border-radius:50px}
    .search-icon:before{ content: "";position: absolute; width: 6px;height: 2px;background-color: #000;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
    margin-top: 14px;
    margin-left: 6px;;margin-left:12px \0/IE}
    .menu-icon{display:inline-block;width:18px;height:2px;background:#000;position:relative;vertical-align:middle}
    .menu-icon:before{position:absolute;top:-6px;left:0;width:100%;background:#000;height:2px;content:'';}
    .menu-icon:after{position:absolute;bottom:-6px;left:0;width:100%;background:#000;height:2px;content:'';}
 }

/* 중간 레이아웃 */
#wrapper {}
#wrapper:after {display:block;visibility:hidden;clear:both;content:""}
#container {position:relative;min-height:300px}
#container:after {display:block;visibility:hidden;clear:both;content:""}
#container_title {position:relative;font-weight:bold;background:#fff;color:#333; text-align:center;z-index:9;line-height:300px;color:#fff;font-size:2.5em;
background: rgba(74,210,212,0.5);
background: -moz-linear-gradient(-45deg, rgba(74,210,212,0.5) 0%, rgba(38,118,223,0.5) 100%);
background: -webkit-gradient(left top, right bottom, color-stop(0%, rgba(74,210,212,0.5)), color-stop(100%, rgba(38,118,223,0.5)));
background: -webkit-linear-gradient(-45deg, rgba(74,210,212,0.5) 0%, rgba(38,118,223,0.5) 100%);
background: -o-linear-gradient(-45deg, rgba(74,210,212,0.5) 0%, rgba(38,118,223,0.5) 100%);
background: -ms-linear-gradient(-45deg, rgba(74,210,212,0.5) 0%, rgba(38,118,223,0.5) 100%);
background: linear-gradient(135deg, rgba(74,210,212,0.5) 0%, rgba(38,118,223,0.5) 100%);
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#4ad2d4', endColorstr='#2676df', GradientType=1 );}

#container>p{display:none;}

.idx_rs{background:#7fa18e;color:#fff;margin:-40px auto 0 ;max-width:1280px;position:relative;z-index:10;padding: 20px 30px;line-height:40px}
.idx_rs:after {display:block;visibility:hidden;clear:both;content:""}

.idx_con{margin: 0 auto;max-width:1280px;text-align:left;}
.idx_con ul{border-left:1px solid #f1f1f1}
.idx_con ul:after {display:block;visibility:hidden;clear:both;content:""}
.idx_con li{float:left;width:33.333%;padding:10% 5%;border-right:1px solid #f1f1f1}
.idx_con li:hover{}
.idx_con li h2{color:#4ad1d4}
.idx_con li h2 i{font-size:40px;margin-bottom:10px}
.idx_con li h2 span{display:block;font-size:1.385em }
.idx_con li p{margin:20px 0 40px;color:#9a9a9a;font-size:1.077em;line-height:1.5em;font-weight:300 }
.idx_con li a{display:inline-block;color:#4ad1d4;text-decoration:underline;font-weight:300}

.idx_lt{position:relative;margin:0 auto;max-width:1280px}
.idx_lt:after {display:block;visibility:hidden;clear:both;content:""}
.idx_lt .lt_wr{float:left;width:33.333%;padding:40px;position:relative;z-index:2}
.idx_lt .lt_wr h2{font-size:1.538em;margin-bottom:20px}
.idx_lt .lt_wr .tel{font-size:2.615em;;display:block}
.idx_lt .lt_wr p{color:#7d7d7d;margin:10px 0 20px}
.idx_lt .bg{position:absolute;top:0;left:0;width:100%;height:100%;border-right:1px solid #f1f1f1;z-index:1}
.idx_lt .bg span{float:left;display:block;width:100%;height:100%;width:33.333%;border-left:1px solid #f1f1f1;}

.time li{line-height:35px;font-size:1.077em;text-align:right;}
.time li:after {display:block;visibility:hidden;clear:both;content:""}
.time i{color:#39c9df;margin-right:5px;}
.time strong{float:left;font-weight:500}

 @media (min-width: 970px){
    .idx_rs h2{float:left;margin-right:30px;font-size:1.231em}
    .idx_rs h2 i{margin-right:8px}
    .idx_rs .tel{float:left;font-size:1.231em;font-weight:900}
    .idx_rs .online-btn{float:right;}
    .idx_rs .online-btn a{float:left;display:inline-block;padding:0 30px;background:#fff;margin-left:20px;border-radius:30px;color:#2677df;font-size:1.231em;font-weight:900}
    .idx_rs .online-btn p{float:left}
    .idx_rs .online-btn2{float:right;}
    .idx_rs .online-btn2 a{float:left;display:inline-block;padding:0px;background:#fff;margin-left:20px;color:#2677df;font-size:1.231em;font-weight:900}
    .idx_rs .online-btn2 p{float:left}
}
 @media (max-width: 969px){
    .idx_con li{width:100%;padding:30px;border-bottom:1px solid #f3f3f3 }
    .idx_con li h2 i{font-size:24px;}
    .idx_lt_wr .lt{width:100%}
    #container_title {line-height:150px;font-size:1.5em}

    .idx_rs{padding:30px;margin-top:0px;line-height:25px}
    .idx_rs h2{;margin-right:30px;font-size:1.154em}
    .idx_rs h2 i{margin-right:8px}
    .idx_rs .tel{float:left;font-size:1.5em;font-weight:900;margin:10px 0}
    .idx_rs .online-btn{clear:both;}
    .idx_rs .online-btn a{margin-top:10px;display:block;padding:0 30px;background:#fff;border-radius:30px;color:#2677df;font-size:1.231em;font-weight:900;text-align:center;line-height:40px}
		
    .idx_rs .online-btn2{clear:both;}
    .idx_rs .online-btn2 a{margin-top:10px;display:block;padding:0px;background:#fff;color:#2677df;font-size:1.231em;font-weight:900;text-align:center;line-height:40px}
    .idx_lt .lt_wr{width:100%;padding: 30px; border-bottom: 1px solid #f3f3f3;}
    .idx_lt .bg{display:none}
    .idx_lt .lt_wr h2{margin-bottom:10px;font-size:1.231em}
    .idx_lt .lt_wr .tel{font-size:1.5em}
 }

/* 하단 레이아웃 */
#ft {background:#495057;text-align:center;line-height:20px}
.ft_wr{margin:0 auto;max-width:1280px;padding:40px 20px}
.ft_wr:after {display:block;visibility:hidden;clear:both;content:""}
#ft h1 {width:0;height:0;font-size:0;line-height:0;overflow:hidden}
#ft p {margin:0;padding:10px 0}

#ft_company {float:left}
#ft_company a {display:inline-block;padding:0 10px;border-left:1px solid #575757;color:#b9b9b9;font-weight:400;font-size:1.077em}
#ft_copy {float:right;color:#b9b9b9}
#ft_copy b {color:inherit}
#ft_copy a {color:inherit;text-decoration:none}

#top_btn {position:fixed;bottom:10px;right:10px;width:40px;height:40px;background:#000;opacity:0.3;border-radius:30px;color:#fff;text-align:center;font-size:15px;z-index:99;border:0}
#top_btn:hover{opacity:1}
#device_change {display:block;line-height:40px;border:1px solid #3a3a3a;border-radius:2em;color:#777;font-size:1em;text-decoration:none;text-align:center}

 @media (max-width: 969px){
    .ft_wr{padding:30px 20px 20px}
    #ft_copy{width:100%;}
   
     #ft_company {width:100%}

}

/* 체크박스 */
.all_chk,.bo_chk {position:relative}
.all_chk label .chk_img, .bo_chk label .chk_img{margin-top:2px;display:inline-block;height:15px;text-indent:-9999px;width:15px;background:#fff;border:1px solid #aab3c1;border-radius:3px;;vertical-align:top;
-webkit-box-shadow:inset 5px 5px 3px #f0f0f3;
-moz-box-shadow:inset 5px 5px 3px #f0f0f3;
box-shadow:inset 5px 5px 3px #f0f0f3}

.bo_chk label.click_on .chk_img, .all_chk label.click_on .chk_img{background:url('../img/input_chk.png') 50% 50% no-repeat #2677df;border-color:#2677df;
-webkit-box-shadow:none;
-moz-box-shadow:none;
box-shadow:none}


.bo_chk input, .all_chk input {position:absolute;top:0;left:0;width:1px;height:1px;opacity:0;outline:0;z-index:9}

/* 게시물 선택복사 선택이동 */
#copymove {}
.copymove_current {float:right;color:#ff3061}
.copymove_currentbg {background:#f4f4f4}
#copymove .tbl_head01{margin-top:10px}
#copymove td{background:#fff}
#copymove .win_btn{margin:10px}

/* 화면낭독기 사용자용 */
#hd_login_msg {position:absolute;top:0;left:0;width:0;height:0;overflow:hidden}
.msg_sound_only, .sound_only {display:inline-block;position:absolute;top:0;left:0;margin:0 !important;padding:0 !important;width:1px !important;height:1px !important;font-size:0 !important;line-height:0 !important;overflow:hidden}

/* 본문 바로가기 */
.to_content a {z-index:100000;position:absolute;top:0;left:0;width:0;height:0;font-size:0;line-height:0;overflow:hidden}

/* 이미지 등비율 리사이징 */
.img_fix {width:100%;height:auto}

/* 캡챠 자동등록(입력)방지 기본 -pc */
#captcha {position:relative}
#captcha legend {position:absolute;margin:0;padding:0;font-size:0;line-height:0;text-indent:-9999em;overflow:hidden;}
#captcha #captcha_img {height:40px;border:1px solid #898989;;vertical-align:top;padding:0;margin:0}
#captcha #captcha_mp3 {margin:0;padding:0;width:40px;height:40px;border:0;background:transparent;vertical-align:middle;overflow:hidden;cursor:pointer;width:40px;height:40px;background:url('../../../img/captcha2.png') no-repeat;text-indent:-999px;;border-radius:3px}
#captcha #captcha_reload {margin:0;padding:0;width:40px;height:40px;border:0;background:transparent;vertical-align:middle;overflow:hidden;cursor:pointer;background:url('../../../img/captcha2.png') no-repeat  0 -40px;text-indent:-999px;border-radius:3px}
#captcha #captcha_key {margin:0 0 0 3px;padding:0 5px;width:90px;height:40px;border:1px solid #ccc;background:#fff;font-size:1.333em;font-weight:bold;text-align:center;border-radius:3px;vertical-align:top}
#captcha #captcha_info {display:block;margin:3px 0 5px ;font-size:0.95em;letter-spacing:-0.1em}

/* 캡챠 자동등록(입력)방지 기본 - mobile */
#captcha.m_captcha audio {display:block;margin:0 0 5px}

/* 구글리캡챠 크기 조정 scale */
#captcha.recaptcha{width:213px;height:55px;overflow:hidden}
#rc-imageselect, .g-recaptcha {transform:scale(0.7);-webkit-transform:scale(0.7);transform-origin:0 0;-webkit-transform-origin:0 0;}

/* ckeditor 태그 기본값 */
#bo_v_con ul{display: block;list-style-type: disc;margin-top: 1em;margin-bottom: 1em;margin-left: 0;margin-right: 0;padding-left: 40px;}
#bo_v_con ol{display: block;list-style-type: decimal;margin-top: 1em;margin-bottom: 1em;margin-left: 0;margin-right: 0;padding-left: 40px;}
#bo_v_con li{display: list-item;}

/*단축키일람 */
.cke_sc{text-align:right}
.btn_cke_sc{background:#333;color:#fff;padding:5px;border:none}
.cke_sc_def {margin:0 0 5px;padding:10px;border:1px solid #ccc;background:#f7f7f7;text-align:center}
.cke_sc_def dl{margin:0 0 5px;text-align:left;zoom:1}
.cke_sc_def dl:after {display:block;visibility:hidden;clear:both;content:""}
.cke_sc_def dt, .cke_sc_def dd {float:left;margin:0;padding:5px 0;border-bottom:1px solid #e9e9e9}
.cke_sc_def dt {width:50%;font-weight:bold}
.cke_sc_def dd {width:50%}
.btn_cke_sc_close{background:#333;padding:5px;border:none;color:#fff}

/* 버튼 */
.btn_s{display:inline-block;height:33px;line-height:30px;border-radius:30px;padding: 0 15px
;transition: 0.3s all ease-in-out;
-webkit-transition: 0.3s all ease-in-out;
-moz-transition: 0.3s all ease-in-out;
-o-transition: 0.3s all ease-in-out;
-ms-transition: 0.3s all ease-in-out}
.btn_m{display:inline-block;height:40px;line-height:38px;border-radius:30px;padding: 0 15px
;transition: 0.3s all ease-in-out;
-webkit-transition: 0.3s all ease-in-out;
-moz-transition: 0.3s all ease-in-out;
-o-transition: 0.3s all ease-in-out;
-ms-transition: 0.3s all ease-in-out}
.btn_l{display:inline-block;;height:50px;line-height:48px;border-radius:30px;padding: 0 25px; font-weight:700;font-size:	1.154em;
transition: 0.3s all ease-in-out;
-webkit-transition: 0.3s all ease-in-out;
-moz-transition: 0.3s all ease-in-out;
-o-transition: 0.3s all ease-in-out;
-ms-transition: 0.3s all ease-in-out}

a.btn01 {display:inline-block;background:#eee;color:#444;text-decoration:none;vertical-align:middle}
a.btn01:focus, a.btn01:hover {text-decoration:none}
button.btn01 {display:inline-block;margin:0;padding:7px;border:1px solid #ccc;background:#fafafa;color:#000;text-decoration:none}
a.btn02 {display:inline-block;border:1px solid #3b3c3f;background:#4b545e;color:#fff;text-decoration:none;vertical-align:middle}
a.btn02:focus, .btn02:hover {text-decoration:none}
button.btn02 {display:inline-block;margin:0;padding:7px;border:1px solid #3b3c3f;background:#4b545e;color:#fff;text-decoration:none}
.btn_confirm {text-align:center} /* 서식단계 진행 */
.btn_submit {display:inline-block;border:1px solid transparent;background:#2677df;color:#fff;text-decoration:none;vertical-align:middle;}
.btn_submit:hover {background:#0456ec}
a.btn_cancel {display:inline-block;background:#ddd;color:#444;text-decoration:none;vertical-align:middle}
button.btn_cancel {display:inline-block;;border:1px solid #ccc;background:#fafafa;color:#000;vertical-align:top;text-decoration:none}
a.btn_frmline, button.btn_frmline {display:inline-block;padding:0 5px;;border:0;background:#333;color:#fff;letter-spacing:-0.1em;text-decoration:none;vertical-align:top} /* 우편번호검색버튼 등 */
button.btn_frmline {font-size:1em}

/* 게시판용 버튼 */
a.btn_b01,.btn_b01 {display:inline-block;background:#eee;border:1px solid transparent;color:#6b6b6b;text-decoration:none;vertical-align:middle}
.btn_b01:hover, .btn_b01:hover {background:#f8f8f8;color:#000}
a.btn_b02 ,.btn_b02{display:inline-block;border:1px solid transparent;background:#2677df;color:#fff;text-decoration:none;vertical-align:middle;}
a.btn_b02:hover, .btn_b02:hover {background:#0456ec}
a.btn_b03, .btn_b03 {display:inline-block;line-height:28px;border:1px solid #ed6478;color:#ed6478;background:none;text-decoration:none;vertical-align:middle}
a.btn_b03:hover, .btn_b03:hover {}
a.btn_admin {display:inline-block;background:#ff0000;color:#fff;font-size:16px;text-decoration:none;vertical-align:middle;border-radius:30px;line-height:40px;width:40px;text-align:center;} /* 관리자 전용 버튼 */
a.btn_admin:focus, a.btn_admin:hover  {color:#fff;background:#db0000}

/* 기본테이블 */
.tbl_wrap {margin:0 10px 10px}
.tbl_wrap table {width:100%;border-collapse:collapse;border-spacing:0}
.tbl_wrap caption {padding:10px 0;color:#4b8b99;font-weight:bold;text-align:left}

.tbl_head01 {}
.tbl_head01 caption {padding:0 0 10px;color:#777;text-align:left}
.tbl_head01 thead th {padding:12px 0;border:1px solid #cacaca;background:#d9d9da;color:#383838;font-size:0.95em;text-align:center;letter-spacing:-0.1em}
.tbl_head01 thead a {color:#383838}
.tbl_head01 thead th input {vertical-align:top} /* middle 로 하면 게시판 읽기에서 목록 사용시 체크박스 라인 깨짐 */
.tbl_head01 tfoot th {border-top:1px solid #666;border-bottom:1px solid #666;background:#484848;color:#fff}
.tbl_head01 tfoot td {border-color:#e3e3e5;background:#484848;color:#fff;font-weight:bold;text-align:center}
.tbl_head01 tbody th {padding:5px 0;border-top:1px solid #e9e9e9;border-bottom:1px solid #e9e9e9}
.tbl_head01 td {padding:5px;border:1px solid #e3e3e5;line-height:1.5em;word-break:break-all}

.tbl_head02 {}
.tbl_head02 caption {padding:0 0 10px;color:#777;text-align:left}
.tbl_head02 thead th {padding:5px 0;border-top:1px solid #d1dee2;border-bottom:1px solid #d1dee2;background:#e5ecef;color:#383838;font-size:0.95em;text-align:center;letter-spacing:-0.1em}
.tbl_head02 thead a {color:#383838}
.tbl_head02 thead th input {vertical-align:top} /* middle 로 하면 게시판 읽기에서 목록 사용시 체크박스 라인 깨짐 */
.tbl_head02 tfoot th {border-top:1px solid #666;border-bottom:1px solid #666;background:#484848;color:#fff}
.tbl_head02 tfoot td {background:#484848;color:#fff;font-weight:bold;text-align:center}
.tbl_head02 tbody th {padding:5px 0;border-top:1px solid #e9e9e9;border-bottom:1px solid #e9e9e9}
.tbl_head02 td {padding:5px 3px;border-top:1px solid #e9e9e9;border-bottom:1px solid #e9e9e9;line-height:1.4em;word-break:break-all}

/* 기본리스트 */
.list_01{padding: 15px;}
.list_01 li{background:#fff;border-radius:3px;padding:10px ;border:1px solid #efefef;margin-bottom:5px}

/* 기본폼 */
.form_01{margin:20px}
.form_01 .write_div{margin:5px 0;position:relative}
.form_01 li{margin:5px 0;position:relative;list-style:none}
 textarea, .frm_input {border:1px solid #d0d4df;background:#fff;color:#000;vertical-align:middle;border-radius:3px;padding:0 10px;height:40px;
 -webkit-box-shadow: inset 2px 2px 2px #f3f3f3;
-moz-box-shadow: inset 2px 2px 2px #f3f3f3;
box-shadow:inset 2px 2px 2px #f3f3f3}
textarea {width:100%;height:200px;padding:10px}
textarea:focus, .frm_input:focus{outline:none;background:#f3f3f3}
.frm_input {height:40px;}
.full_input{width:100%} 
.form_01 .frm_file {display:block;margin-bottom:5px;width:100%}
.form_01 select{height:40px;border-radius:3px;background-color:#fff}
.form_01 .frm_info{font-size:0.92em;color:#4162ff;text-align:left;margin:3px 0 10px;display:block;line-height:1.3em}

/* 자료 없는 목록 */
.empty_table {padding:100px 0 !important;color:#777;text-align:center}
.empty_list {padding:20px 0 !important;text-align:center}

/* 필수입력 */
.required, textarea.required {background-image:url('../img/require.png')  !important;background-repeat:no-repeat   !important;background-position:right top  !important;}

/* 테이블 항목별 정의 */
.td_board {width:120px;text-align:center}
.td_category {width:80px;text-align:center}
.td_chk {width:30px;text-align:center}
.td_date {width:60px;text-align:center}
.td_datetime {width:150px;text-align:center}
.td_group {width:100px;text-align:center}
.td_mb_id {width:100px;text-align:center}
.td_mng {width:80px;text-align:center}
.td_name {width:100px;text-align:left}
.td_nick {width:100px;text-align:center}
.td_num {width:50px;text-align:center}
.td_numbig {width:80px;text-align:center}
.td_stat {width:60px;text-align:center}

.txt_active {color:#5d910b}
.txt_done {color:#e8180c}
.txt_expired {color:#999}
.txt_rdy {color:#8abc2a}

/* 새창 기본 스타일 */
.new_win {}
.new_win #win_title {font-size: 1.2em;font-weight: bold;height: 50px;padding: 10px;line-height: 30px;
-webkit-box-shadow:  2px 2px 5px #eee;
-moz-box-shadow:  2px 2px 5px #eee;
box-shadow: 2px 2px 5px #eee
}
.new_win #win_title .sv {font-size:0.75em;line-height:1.2em}
.new_win_con{margin:20px}

.new_win .win_ul {margin:20px}
.new_win .win_ul li {display:inline-block;}
.new_win .win_ul li a {display: block;line-height: 24px;padding: 0 10px;}
.new_win .win_ul li .selected {background: #4162ff;color: #fff;border-radius: 13px;
-webkit-box-shadow: 0 0 5px rgba(65,98,255,0.8);
-moz-box-shadow: 0 0 5px rgba(65,98,255,0.8);
box-shadow: 0 0 8px rgba(65,98,255,0.8);}

.new_win .win_desc {margin:5px 0;font-size:0.92em;color:#4162ff}
.new_win .win_btn {clear:both;margin:10px 0;text-align:center}
.new_win .win_btn a {display:inline-block;height:40px;line-height:40px;font-weight:bold}
.new_win .win_btn .btn_close {display:inline-block;padding:0 10px;border:0;background:#c6c6d2;color:#666;text-decoration:none;font-weight:bold;height:40px;margin:10px 0}
.new_win .win_btn .btn_submit {width:100%;height:40px;line-height:40px;;margin:0 0 20px;display:inline-block;font-weight:bold}

/* 검색결과 색상 */
.sch_word {color:#00c4ac}

/* 사이드뷰 */
.sv_wrap {display:inline-block;position:relative;font-weight:normal;line-height:20px}
.sv_wrap .sv {z-index:1000;width:100px;display:none;margin:5px 0 0;font-size:0.92em;background:#333;text-align:left;
-webkit-box-shadow: 2px 2px 3px 0px rgba(0,0,0,0.2);
-moz-box-shadow: 2px 2px 3px 0px rgba(0,0,0,0.2);
box-shadow: 2px 2px 3px 0px rgba(0,0,0,0.2);}
.sv_wrap .sv:before{content: "";position: absolute;top: -6px;left: 15px;width: 0;height: 0;border-style: solid;border-width: 0 6px 6px 6px;border-color: transparent transparent #333 transparent;}
.sv_wrap .sv a {display:inline-block;width:100px;margin:0;padding:0  10px;line-height:30px;font-weight:normal;color:#bbb }
.sv_wrap .sv a:hover{background:#000;color:#fff}
.sv_member{color:#333;font-weight:400;}
.sv_member img{vertical-align:top}
.sv_on {display:block !important;position:absolute;top:23px;left:0px;width:auto;height:auto}
.sv_nojs .sv {display:block}

/* 페이징 */
.pg_wrap {clear:both;margin:30px 0;text-align:center}
.pg {display:inline-block }
.pg_page, .pg_current {display:inline-block;padding:0 13px;height:35px;color:#959595;line-height:35px;vertical-align:middle}
.pg a:focus, .pg a:hover {text-decoration:none;background-color:#f8f8f8; }
.pg_page {background:#eee;}
.pg_start {background:url(../img/btn_first.gif) no-repeat 50% 50% #eee;width:35px;height:35px ;text-indent:-999px;overflow:hidden}
.pg_prev {background:url(../img/btn_prev.gif) no-repeat 50% 50% #eee;width:35px;height:35px ;text-indent:-999px;overflow:hidden}
.pg_next {background:url(../img/btn_next.gif) no-repeat 50% 50% #eee;width:35px;height:35px ;text-indent:-999px;overflow:hidden}
.pg_end {background:url(../img/btn_end.gif) no-repeat 50% 50% #eee;width:35px;height:35px ;text-indent:-999px;overflow:hidden}
.pg_current {display:inline-block;background:#494949;color:#fff;font-weight:normal;line-height:35px;}

