/* Opt-in Japanese consultation components. No global layout or tracking changes. */
.jp-consult{box-sizing:border-box;min-width:0;max-width:100%;color:var(--ink,#362e26);overflow-wrap:anywhere}
.jp-consult p{margin:0 0 14px;line-height:1.85}
.jp-consult p:last-child{margin-bottom:0}
.jp-consult--inline{margin:28px 0;padding:15px 20px;border-left:3px solid #a68a65;background:#fcf8f0;font-size:15px}
.jp-consult .jp-consult-link{display:inline-flex;align-items:center;min-height:44px;max-width:100%;font-weight:700;line-height:1.65;white-space:normal;overflow-wrap:anywhere;text-underline-offset:4px}
.jp-consult--inline .jp-consult-link,.jp-consult--list .jp-consult-link{color:#714e37;text-decoration:underline}
.jp-consult--card{margin:40px 0;padding:30px;border:1px solid #d8c6b0;border-radius:12px;background:#faf5ec}
.jp-consult.jp-consult--card>h2{font-size:clamp(21px,2.5vw,25px);line-height:1.55;margin:0 0 16px;padding:0;border:0;letter-spacing:0}
.jp-consult--compact{padding:24px;font-size:15px}
.jp-consult.jp-consult--compact>h2{font-size:21px}
.jp-consult .jp-consult-link.button{justify-content:center;text-align:center;min-height:48px;padding:12px 22px;background:#714e37;color:#fff;border:1px solid #714e37;border-radius:8px;text-decoration:none;font-size:16px;box-shadow:none}
.jp-consult .jp-consult-link:focus-visible{outline:3px solid #a5773e;outline-offset:4px}
.jp-consult .jp-consult-link:hover{text-decoration:underline}
.jp-consult .jp-consult-conditions{font-size:15px;color:#614e3f}
.jp-consult .jp-consult-note{font-size:13px;color:#695b4c;line-height:1.8;margin-top:16px}
.jp-consult-list-wrap{margin-top:24px;margin-bottom:50px}
.jp-consult--list{border-top:1px solid #d8c6b0;padding:22px 0;font-size:15px}
.jp-consult-fee-note{margin:20px 0;padding:16px 20px;border-left:3px solid #a68a65;background:#faf5ec;font-size:15px;line-height:1.85}
@media(max-width:600px){
 .jp-consult--card{padding:20px 16px;margin:30px 0}
 .jp-consult--inline{padding:14px 16px;margin:24px 0}
 .jp-consult .jp-consult-link.button{display:flex;width:100%;min-width:0;padding:12px;font-size:15px}
 .jp-consult.jp-consult--card>h2{font-size:21px}
 .jp-consult.jp-consult--compact>h2{font-size:20px}
 .jp-consult--card p{font-size:15px}
 .jp-consult--card .jp-consult-note{font-size:13px}
 .jp-consult-fee-note{padding:14px 16px}
}
