@import "https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@400;500;600&family=Cormorant+Garamond:wght@400;500&display=swap";
.jpc{--ink:#0f2a52;--ink2:#46526a;--muted:#8b93a3;--gold:#2f6db3;--bg:#fafbfc;--line:#e3e7ee;--card:#fff;background:var(--bg);color:var(--ink);min-height:100vh;font-family:Hiragino Sans,Noto Sans JP,sans-serif;line-height:1.9}.jpc a{color:inherit}.jpc .wrap{max-width:1040px;margin:0 auto;padding:0 16px}.jpc .serif{font-family:Noto Serif JP,Hiragino Mincho ProN,serif}.jpc .en{letter-spacing:.32em;color:var(--gold);text-transform:uppercase;font-family:Cormorant Garamond,serif;font-size:13px}.jpc header.bar{z-index:10;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-bottom:1px solid var(--line);background:#faf8f4eb;position:sticky;top:0}.jpc header.bar .in{justify-content:space-between;align-items:center;height:64px;display:flex}.jpc .logo{letter-spacing:.12em;font-family:Cormorant Garamond,serif;font-size:22px;text-decoration:none}.jpc .logo small{letter-spacing:.2em;color:var(--muted);margin-top:-4px;font-family:Noto Serif JP,serif;font-size:10px;display:block}.jpc nav a{letter-spacing:.14em;color:var(--ink2);margin-left:22px;font-size:12.5px;text-decoration:none}.jpc nav a:hover{color:var(--gold)}.jpc section{border-bottom:1px solid var(--line);padding:96px 0}.jpc .hero{text-align:center;padding:132px 0 120px}.jpc .hero h1{letter-spacing:.14em;margin:22px 0 18px;font-size:40px;font-weight:500;line-height:1.7}.jpc .hero p{color:var(--ink2);letter-spacing:.08em;margin:0}.jpc .rule{background:var(--gold);width:48px;height:1px;margin:28px auto}.jpc h2{letter-spacing:.12em;margin:10px 0 36px;font-size:26px;font-weight:500}.jpc .lead{max-width:640px;color:var(--ink2);letter-spacing:.04em}.jpc .grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px;display:grid}.jpc .card{background:var(--card);border:1px solid var(--line);border-radius:4px;padding:28px 26px}.jpc .card h3{letter-spacing:.08em;margin:6px 0 10px;font-size:18px;font-weight:500}.jpc .card p{color:var(--ink2);margin:0;font-size:14px}.jpc .card .tag{color:var(--gold);letter-spacing:.2em;font-size:11.5px}.jpc table.co{border-collapse:collapse;width:100%;max-width:720px;font-size:14.5px}.jpc table.co th{text-align:left;width:170px;color:var(--ink2);border-bottom:1px solid var(--line);vertical-align:top;padding:16px 0;font-weight:500}.jpc table.co td{border-bottom:1px solid var(--line);padding:16px 0}.jpc .msg{max-width:680px}.jpc .msg .sign{text-align:right;letter-spacing:.1em;margin-top:26px}.jpc form.ct{gap:14px;max-width:640px;display:grid}.jpc form.ct label{color:var(--ink2);letter-spacing:.06em;gap:6px;font-size:13px;display:grid}.jpc form.ct input,.jpc form.ct textarea,.jpc form.ct select{font:inherit;border:1px solid var(--line);color:var(--ink);background:#fff;border-radius:3px;padding:12px 14px;font-size:15px}.jpc form.ct input:focus,.jpc form.ct textarea:focus,.jpc form.ct select:focus{border-color:var(--gold);outline:2px solid #a8894f59}.jpc .btn{background:var(--ink);color:#fff;letter-spacing:.2em;cursor:pointer;border:none;border-radius:2px;justify-self:start;padding:14px 38px;font-size:14px}.jpc .btn:disabled{opacity:.5}.jpc footer{text-align:center;color:var(--muted);letter-spacing:.08em;padding:44px 0 56px;font-size:12px}.jpc footer a{margin:0 10px}@media (max-width:720px){.jpc nav{display:none}.jpc section{padding:64px 0}.jpc .hero{padding:88px 0 80px}.jpc .hero h1{font-size:27px}.jpc h2{margin-bottom:26px;font-size:22px}.jpc table.co th{width:108px;font-size:13px}}.jpc .logo img{width:auto;height:30px;display:block}.jpc .hero .mark{width:64px;height:auto;margin:0 auto 10px;display:block}.jpc .card.photo{padding:0;overflow:hidden}.jpc .card.photo img{aspect-ratio:4/3;object-fit:cover;width:100%;display:block}.jpc .card.photo .body{padding:24px 26px 28px}.jpc .salons{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:14px;display:grid}.jpc .salon{border:1px solid var(--line);background:#fff;border-radius:4px;flex-direction:column;gap:4px;padding:20px 22px;display:flex}.jpc .salon .area{letter-spacing:.24em;color:var(--gold);font-family:Cormorant Garamond,serif;font-size:12px}.jpc .salon b{letter-spacing:.06em;font-family:Noto Serif JP,serif;font-size:16.5px;font-weight:500}.jpc .salon .addr{color:var(--ink2);font-size:13px;line-height:1.7}.jpc .salon a.rv{letter-spacing:.14em;border-bottom:1px solid var(--gold);color:var(--ink);align-self:flex-start;margin-top:8px;padding-bottom:2px;font-size:12.5px;text-decoration:none}.jpc .salon a.rv:hover{color:var(--gold)}.jpc footer{background:var(--ink);color:#ffffffb8}.jpc footer img{width:auto;height:40px;margin:0 auto 18px;display:block}.jpc footer a{color:#fff}
