html body .contact-inquiry .contact-kind .contact-kind-option{display:flex;align-items:center;flex-wrap:wrap;gap:6px 10px;min-width:0;max-width:100%}html body .contact-inquiry .contact-kind .contact-kind-option label{flex:0 1 auto}html body .contact-inquiry .contact-consultation-meta{font-size:13px;line-height:1.6;font-weight:400;color:#59616a;white-space:nowrap}html body .white-contact.contact-inquiry .desk.contact .contact-consultation-fields{display:block;width:100%;min-width:0}html body .white-contact.contact-inquiry .desk.contact .contact-consultation-fields .contact-message-field{width:100%;min-width:0}html body .white-contact.contact-inquiry .desk.contact .contact-consultation-fields .contact-message-field textarea{box-sizing:border-box;width:100%;min-height:220px;height:clamp(220px,calc(100svh - 480px),380px);max-height:none;resize:vertical}html body .contact-inquiry .contact-topic-field{display:flex;flex-direction:column;gap:6px;margin:0;max-width:540px;font-size:15px;color:#00224e}html body .contact-inquiry .contact-topic-field select{width:100%;min-height:44px;padding:8px 12px;border:1px solid #a4b1bd;border-radius:4px;background:#fff;color:#343b42;font-size:16px}html body .contact-inquiry .contact-selected-topic{margin:0;color:#00224e;font-size:16px;line-height:1.7}html body .contact-inquiry .contact-login-help{margin-top:20px;font-size:14px;line-height:1.7}html body .contact-inquiry .contact-login-help summary{cursor:pointer;color:#00224e;text-decoration:underline;text-underline-offset:3px}html body .contact-inquiry .contact-login-help p{margin-top:10px}@media(min-width:961px){html body .contact-inquiry .contact-topic-field{display:grid;grid-template-columns:164px minmax(0,1fr);align-items:center;gap:16px;max-width:700px}}html body .contact-inquiry .consultation-preferences{border:1px solid #d7c9ae;padding:14px 16px 18px;margin:4px 0 18px;min-width:0;color:#00224e;background:#fcfbf8}html body .contact-inquiry .consultation-preferences legend{padding:0 6px;font-size:16px;font-weight:600}html body .contact-inquiry .consultation-preferences p{margin:0 0 16px;font-size:14px;line-height:1.8;color:#59616a}html body .contact-inquiry .consultation-preference-row{display:grid;grid-template-columns:110px minmax(150px,1fr) minmax(150px,1fr) auto;gap:12px;align-items:end;margin-top:12px}html body .contact-inquiry .consultation-preference-row strong{align-self:center;font-size:15px}html body .contact-inquiry .consultation-preference-row strong span{display:inline-block;margin-left:8px;font-size:12px;font-weight:400}html body .contact-inquiry .consultation-preference-row label{display:flex;flex-direction:column;gap:5px;font-size:13px;min-width:0}html body .contact-inquiry .consultation-preference-row input,html body .contact-inquiry .consultation-preference-row select{width:100%;min-width:0;box-sizing:border-box;min-height:44px;padding:8px 10px;border:1px solid #a4b1bd;border-radius:4px;background:white;color:#00224e;font-size:16px}html body .contact-inquiry .consultation-preference-row button{font-size:13px;min-height:40px}html body .contact-inquiry .consultation-preferences-review{white-space:pre-line;margin:6px 0 16px;line-height:1.8}@media(max-width:650px){html body .contact-inquiry .consultation-preference-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px 12px}html body .contact-inquiry .consultation-preference-row strong{grid-column:1/-1}html body .contact-inquiry .consultation-preference-row button{grid-column:2;justify-self:end}}html body .white-contact.contact-inquiry .desk.contact .consultation-date-field{display:flex;flex-direction:column;gap:5px;min-width:0;font-size:13px}html body .white-contact.contact-inquiry .desk.contact .consultation-date-trigger{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;min-width:0;min-height:44px;padding:8px 10px;border:1px solid #a4b1bd;border-radius:4px;background:#fff;color:#00224e;font:inherit;font-size:15px;text-align:left;cursor:pointer}html body .white-contact.contact-inquiry .desk.contact .consultation-date-trigger span{min-width:0}html body .white-contact.contact-inquiry .desk.contact .consultation-date-trigger svg{flex-shrink:0}html body .white-contact.contact-inquiry .desk.contact .consultation-date-dialog{box-sizing:border-box;width:min(370px,calc(100vw - 32px));max-width:none;max-height:calc(100dvh - 32px);margin:auto;padding:20px;border:1px solid #b4a27e;border-radius:10px;background:#fff;color:#00224e;box-shadow:0 16px 60px #001b3d33;overflow:auto}html body .white-contact.contact-inquiry .desk.contact .consultation-date-dialog::backdrop{background:#10243c66}html body .white-contact.contact-inquiry .desk.contact .consultation-date-dialog h3{margin:0 0 14px;font-size:17px;text-align:center}html body .white-contact.contact-inquiry .desk.contact .consultation-calendar-nav{display:grid;grid-template-columns:44px 1fr 44px;align-items:center;gap:10px;margin-bottom:8px;text-align:center}html body .white-contact.contact-inquiry .desk.contact .consultation-calendar-nav button{width:44px;min-height:40px;padding:0;border:1px solid #c6cfda;border-radius:5px;background:#fff;color:#00224e;font-size:26px;cursor:pointer}html body .white-contact.contact-inquiry .desk.contact .consultation-calendar-nav strong{font-size:17px}html body .white-contact.contact-inquiry .desk.contact .consultation-calendar{width:100%;table-layout:fixed;border-collapse:separate;border-spacing:2px}html body .white-contact.contact-inquiry .desk.contact .consultation-calendar th{height:30px;padding:0;border:0;background:#fff;color:#4a596a;font-size:13px;font-weight:500;text-align:center}html body .white-contact.contact-inquiry .desk.contact .consultation-calendar td{padding:0;border:0;background:#fff}html body .white-contact.contact-inquiry .desk.contact .consultation-calendar-day{width:100%;min-width:0;min-height:40px;padding:0;border:1px solid transparent;border-radius:5px;background:#fff;color:#00224e;font-size:15px;text-align:center;cursor:pointer}html body .white-contact.contact-inquiry .desk.contact .consultation-calendar-day:not(:disabled):hover{background:#f1ecdf}html body .white-contact.contact-inquiry .desk.contact .consultation-calendar-day[aria-current=date]{border-color:#9d885b}html body .white-contact.contact-inquiry .desk.contact .consultation-calendar-day.is-selected:not(:disabled){background:#00224e;color:#fff}html body .white-contact.contact-inquiry .desk.contact .consultation-calendar th.is-monday,html body .white-contact.contact-inquiry .desk.contact .consultation-calendar-day:disabled{background:#f1f2f3;color:#a1a6ac;cursor:not-allowed}html body .white-contact.contact-inquiry .desk.contact .consultation-calendar-nav button:disabled{opacity:.35;cursor:default}html body .white-contact.contact-inquiry .desk.contact .consultation-calendar-help{margin:12px 0;font-size:13px;line-height:1.6;text-align:center;color:#637080}html body .white-contact.contact-inquiry .desk.contact .consultation-calendar-close{display:block;width:100%;min-height:42px;padding:8px;border:1px solid #bdc8d4;border-radius:5px;background:#fff;color:#00224e;font-size:14px;cursor:pointer}html body .white-contact.contact-inquiry .desk.contact .consultation-date-field button:focus-visible{outline:3px solid #9d885b;outline-offset:2px}@media(max-width:380px){html body .white-contact.contact-inquiry .desk.contact .consultation-date-dialog{padding:14px}html body .white-contact.contact-inquiry .desk.contact .consultation-date-trigger{font-size:13px}}.desk{font-family:var(--font-noto-sans-jp),sans-serif;color:#234657;background:#f5f4ef;min-height:100vh;padding:40px;line-height:1.8}.desk *{box-sizing:border-box}.desk h1{font-size:32px;font-weight:700;letter-spacing:.04em;margin:4px 0 18px}.desk h2{font-size:23px;font-weight:700;margin:8px 0 14px}.desk h3{font-size:18px;font-weight:700;margin-bottom:12px}.desk a{color:#a2462e;text-decoration:underline}.desk p{margin:12px 0}.desk .eyebrow{color:#b24d30;letter-spacing:.14em;font-size:12px;font-weight:700}.desk .card{background:#fff;border:1px solid #dce2df;border-radius:12px;padding:28px;box-shadow:0 4px 20px #23465705}.desk label{display:block;font-size:14px;font-weight:600;margin:16px 0}.desk input,.desk select,.desk textarea{display:block;width:100%;background:#fff;border:1px solid #bac8c9;border-radius:6px;padding:12px;color:#234657;font:inherit;font-weight:400;margin-top:7px}.desk textarea{resize:vertical}.desk button{cursor:pointer;border:1px solid #b9c8cb;border-radius:6px;padding:9px 15px;background:#fff;font-size:14px;color:#234657}.desk button:hover{background:#eef4f4}.desk button:disabled{opacity:.5;cursor:wait}.desk button.primary{background:#b75134;color:white;border-color:#b75134;padding:12px 24px}.desk button.selected{background:#234657;color:white}.desk .actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.desk .hint{font-size:13px;color:#677c80}.desk .error{color:#9e3029;background:#fff0eb;border:1px solid #e6b4a4;border-radius:6px;padding:12px;font-size:14px}.desk .check{display:flex;gap:10px;align-items:center}.desk .check input{width:18px;margin:0}.contact{max-width:800px;margin:auto}.contact .card{margin-top:30px}.contact dl>div{padding:15px 0;border-bottom:1px solid #e6e9e7}.contact dt{font-size:13px;color:#687c80}.contact dd{white-space:pre-wrap;overflow-wrap:anywhere}.contact code{font-size:13px;overflow-wrap:anywhere}.desk-header{align-items:center}.desk-header,.desk-status{display:flex;justify-content:space-between}.desk-status{font-size:13px;padding:10px 0 22px;gap:16px}.mail-grid{display:grid;grid-template-columns:330px minmax(0,1fr);gap:24px;align-items:start}.desk .thread-list{padding:18px;max-height:85vh;overflow:auto}.desk .thread{display:flex;text-align:left;flex-direction:column;width:100%;gap:4px;margin:8px 0;padding:16px;border:1px solid #e4e8e5;overflow-wrap:anywhere}.desk .thread.active{border-left:4px solid #b75134;background:#f9f5ed}.desk .thread strong{font-size:15px}.desk .badge,.desk .thread small{font-size:11px;color:#667e80}.desk .assignment{display:flex;gap:20px}.desk .assignment label{flex:1}.desk .message{border-top:1px solid #e4e8e5;padding:20px 0}.desk .message.internal{background:#f7f4e7;padding:16px;margin:12px 0;border-radius:6px}.desk .message-meta{display:flex;justify-content:space-between;gap:12px;font-size:12px;color:#617b80}.desk .message-body{white-space:pre-wrap;overflow-wrap:anywhere;font-size:14px}.desk .reply-box{border-top:2px solid #234657;padding-top:24px;margin-top:24px}.desk .empty{padding:45px 10px;color:#6a7e83}.desk footer{padding:20px 0}.desk :focus-visible{outline:3px solid #dc916a;outline-offset:2px}@media(min-width:1500px){.inbox{padding:45px max(40px,calc((100vw - 1440px)/2))}}@media(max-width:850px){.desk{padding:20px}.mail-grid{grid-template-columns:1fr}.desk .thread-list{max-height:340px}.desk-header,.desk-status{align-items:start;flex-direction:column}.desk .card{padding:20px}.desk .message-meta{flex-direction:column;gap:4px}}.desk.contact{max-width:1000px;padding:20px 24px 28px;font-family:var(--font-noto-sans-jp,"Noto Sans JP"),"Yu Gothic",Meiryo,sans-serif;font-size:18px;line-height:1.55}.contact .contact-topline{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:6px 18px}.contact .contact-topline a{font-size:16px;padding:6px 0}.contact .contact-topline .eyebrow{margin:0;font-size:13px}.desk.contact h1{font-size:30px;margin:8px 0 6px}.contact .contact-intro{margin:0;font-size:18px}.desk.contact .card{padding:20px 24px;margin-top:16px}.contact form.card{display:flex;flex-direction:column;gap:12px}.desk.contact .contact-step{color:#a2462e;font-size:18px;font-weight:700;margin:0}.contact .contact-identity{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);gap:20px}.desk.contact label{font-size:17px;font-weight:600;margin:0}.desk.contact input,.desk.contact select,.desk.contact textarea{font-size:18px;line-height:1.5;padding:9px 12px;margin-top:5px;min-height:48px;border-color:#7d949c}.desk.contact textarea{min-height:128px;resize:vertical}.desk.contact .hint{color:#4d646c;font-size:16px;line-height:1.6;margin:0}.contact .contact-privacy{display:flex;flex-direction:column;gap:4px}.desk.contact .check{min-height:44px;align-items:center;cursor:pointer;gap:12px}.desk.contact .check input{width:22px;height:22px;min-height:22px;flex:0 0 22px;padding:0;margin:0;accent-color:#234657;cursor:pointer}.desk.contact .actions{gap:12px}.desk.contact button{min-height:50px;padding:11px 22px;font-size:18px}.desk.contact button.primary{padding:11px 26px}.desk.contact .error{font-size:17px;margin:0}.contact dl{margin:0}.contact dl>div{padding:10px 0}.contact dt{color:#4d646c;font-size:16px}.contact dd{font-size:18px;margin:4px 0 0}.contact code{font-size:16px}@media (max-width:700px){.desk.contact{padding:14px 14px 24px}.contact .contact-topline .eyebrow{font-size:12px;letter-spacing:.06em}.desk.contact h1{font-size:28px}.desk.contact .card{padding:18px 16px}.contact .contact-identity{grid-template-columns:minmax(0,1fr);gap:12px}.contact .actions button{flex:1 1 180px}}html body .white-contact .desk.contact .contact-privacy-link{color:#00224e;text-decoration:underline;text-underline-offset:.2em;text-decoration-thickness:1px}html body .white-contact .desk.contact .contact-privacy-link:hover{text-decoration-thickness:2px}html body .legal-readable-shell .privacy-policy-mobile article[id^=privacy-]{scroll-margin-top:20px}@media (min-width:961px){html body .white-contact{display:flex;flex-direction:column;min-height:100svh}html body .white-contact main.desk.contact{width:100%;max-width:1120px;flex:1 0 auto;min-height:0;margin:0 auto;padding:12px 28px 14px;line-height:1.5}html body .white-contact main.desk.contact h1{margin:0 0 12px;font-size:28px;line-height:1.4}html body .white-contact main.desk.contact .card{margin-top:0;padding:14px 20px}html body .white-contact main.desk.contact form.card[data-contact-step=edit]{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);grid-template-areas:"step step" "identity identity" "category message" "counseling message" "privacy privacy" "consent actions";column-gap:24px;row-gap:10px;align-items:start}html body .white-contact main.desk.contact [data-contact-step=edit] .contact-step{grid-area:step}html body .white-contact main.desk.contact [data-contact-step=edit] .contact-identity{grid-area:identity;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:24px}html body .white-contact main.desk.contact [data-contact-step=edit] .contact-category-field{grid-area:category}html body .white-contact main.desk.contact [data-contact-step=edit] .contact-counseling-hint{grid-area:counseling}html body .white-contact main.desk.contact [data-contact-step=edit] .contact-message-field{grid-area:message;align-self:stretch;display:flex;flex-direction:column;min-width:0}html body .white-contact main.desk.contact [data-contact-step=edit] .contact-message-field textarea{flex:1 1 auto;min-height:126px;height:126px;max-height:none}html body .white-contact main.desk.contact [data-contact-step=edit] .contact-privacy{display:contents}html body .white-contact main.desk.contact [data-contact-step=edit] .contact-privacy>.hint{grid-area:privacy}html body .white-contact main.desk.contact [data-contact-step=edit] .contact-privacy>.check{grid-area:consent;align-self:center}html body .white-contact main.desk.contact [data-contact-step=edit] .actions{grid-area:actions;justify-content:flex-end}html body .white-contact main.desk.contact [data-contact-step=edit] .error{grid-column:1/-1}html body .white-contact main.desk.contact label{font-size:16px;line-height:1.5}html body .white-contact main.desk.contact input,html body .white-contact main.desk.contact select,html body .white-contact main.desk.contact textarea{min-height:42px;margin-top:4px;padding:7px 10px;font-size:17px;line-height:1.5}html body .white-contact main.desk.contact .hint{font-size:15px;line-height:1.6}html body .white-contact main.desk.contact .check{min-height:42px;gap:10px}html body .white-contact main.desk.contact .check input{width:21px;height:21px;min-height:21px;margin:0;padding:0;flex:0 0 21px}html body .white-contact main.desk.contact button{min-height:44px;padding:8px 20px;font-size:17px}}html body .white-contact.contact-inquiry .desk.contact>.contact-intro{margin:0 0 16px;color:#59616a;font-size:16px;line-height:1.7;white-space:pre-line}html body .white-contact.contact-inquiry .desk.contact .contact-inquiry-form{display:flex;flex-direction:column;gap:12px}html body .white-contact.contact-inquiry .desk.contact .contact-message-field{display:flex;flex-direction:column;min-width:0}html body .white-contact.contact-inquiry .desk.contact .contact-message-field textarea{min-height:200px;height:260px;max-height:none;resize:vertical}html body .white-contact.contact-inquiry .desk.contact .contact-form-bottom{display:flex;align-items:center;justify-content:space-between;gap:10px 24px;flex-wrap:wrap}html body .white-contact.contact-inquiry .desk.contact .contact-form-bottom>.actions{margin-left:auto}html body .white-contact.contact-inquiry .desk.contact .contact-lesson-note{margin:0;color:#59616a;font-size:14px;line-height:1.6}html body .white-contact.contact-inquiry .desk.contact .contact-lesson-note a{color:#00224e;text-decoration:underline;text-underline-offset:.2em}html body .white-contact.contact-inquiry .desk.contact .contact-review-heading{margin:0;font-size:20px}html body .white-contact.contact-inquiry .desk.contact .contact-review-body{margin:0;white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.7}html body .white-contact.contact-inquiry .desk.contact .contact-access p{margin:0 0 12px}@media (min-width:961px){html body .white-contact.contact-inquiry .desk.contact .contact-message-field textarea{min-height:120px;height:clamp(120px,calc(100svh - 545px),380px)}}@media (max-width:700px){html body .white-contact.contact-inquiry .desk.contact .contact-form-bottom{align-items:stretch}html body .white-contact.contact-inquiry .desk.contact .contact-form-bottom>.actions{width:100%;margin-left:0}}html body .contact-inquiry .contact-kind{border:0;padding:0;margin:0;min-width:0}html body .contact-inquiry .contact-kind legend{font-size:14px;margin-bottom:8px}html body .contact-inquiry .contact-kind>div{display:flex;gap:12px;flex-wrap:wrap}html body .contact-inquiry .contact-kind label{display:flex;align-items:center;gap:8px;border:1px solid #d8dce2;border-radius:5px;padding:9px 16px;margin:0;font-size:15px;color:#00224e;cursor:pointer}html body .contact-inquiry .contact-kind label:has(input:checked){border-color:#00224e;background:#f0f3f7}html body .contact-inquiry .contact-kind input{width:16px;height:16px;margin:0;accent-color:#00224e}html body .contact-inquiry .contact-field-hint{font-size:13px;font-weight:400;color:#59616a;line-height:1.6;margin:0 0 5px}html body .contact-inquiry .contact-consultation-fields{display:grid;grid-template-columns:minmax(230px,.85fr) minmax(0,1.5fr);gap:24px}html body .contact-inquiry .contact-slot-field p{font-size:13px;line-height:1.7;color:#59616a;margin:8px 0}html body .contact-inquiry .contact-slot-field label{margin:0}html body .contact-inquiry .contact-slot-field select{width:100%;font-size:15px}html body .contact-inquiry .contact-refresh-slots{background:transparent;color:#00224e;border:0;text-decoration:underline;text-underline-offset:3px;font-size:13px;padding:3px 0}html body .white-contact.contact-inquiry .desk.contact .contact-consultation-fields textarea{min-height:110px;height:clamp(110px,calc(100svh - 545px),230px)}html body .contact-inquiry .contact-selected-date{margin:0;color:#00224e;font-weight:600}html body .white-contact.contact-inquiry .desk.contact .contact-kind input{min-height:16px;height:16px;width:16px;padding:0;margin:0;flex:0 0 16px}html body .white-contact.contact-inquiry .desk.contact .contact-consultation-fields .contact-message-field{grid-column:auto}html body .white-contact.contact-inquiry .desk.contact .contact-refresh-slots{min-height:28px;padding:2px 0;font-size:13px}html body .white-contact.contact-inquiry .desk.contact .primary{color:#e8c85a}@media(min-width:961px){html body .white-contact.contact-inquiry .desk.contact .contact-kind{position:relative;padding-left:180px;min-height:42px}html body .white-contact.contact-inquiry .desk.contact .contact-kind legend{position:absolute;left:0;top:11px;padding:0;margin:0;line-height:20px;font-size:14px}html body .white-contact.contact-inquiry .desk.contact .contact-kind label{padding:8px 15px;font-size:15px;line-height:24px}}@media(max-width:700px){html body .contact-inquiry .contact-consultation-fields{display:flex;flex-direction:column;gap:16px}html body .contact-inquiry .contact-kind>div{gap:8px}html body .contact-inquiry .contact-kind label{flex:1 1 auto;font-size:14px;padding:9px 10px}html body .white-contact.contact-inquiry .desk.contact .contact-consultation-fields textarea{min-height:130px;height:150px}}