@charset "UTF-8";
@font-face { font-family:"LAK Forms Noto";src:url("./fonts/noto-sans-jp-forms.woff2") format("woff2");font-style:normal;font-weight:100 900;font-display:swap; }
.raku-form-page { margin:0;background:#fff;color:#202b38;font-family:"LAK Forms Noto","Noto Sans JP","Yu Gothic",Meiryo,sans-serif;font-size:16px;line-height:1.85;text-size-adjust:100%; }
.rf-main { --rf-blue:#076ccc;--rf-yellow:#ffcf24;--rf-ink:#202b38;--rf-muted:#536476;--rf-line:#dae3ec; background:linear-gradient(180deg,#f5f9fd 0,#fff 640px);padding-bottom:72px; }
.rf-main *, .rf-main *::before, .rf-main *::after { box-sizing:border-box; }
.rf-main [hidden] { display:none!important; }
.rf-main h1,.rf-main h2,.rf-main h3,.rf-main p,.rf-main ul,.rf-main ol { margin:0; }
.rf-main a { color:var(--rf-blue);text-underline-offset:4px; }
.rf-main :where(a,button,input,textarea,[tabindex]):focus-visible,.rf-skip:focus-visible { outline:3px solid #076ccc;outline-offset:4px; }
.rf-main :where(input,textarea):focus { border-color:var(--rf-blue);box-shadow:0 0 0 3px #076ccc1a; }
.rf-container { width:min(1184px,calc(100% - 80px));margin-inline:auto; }
.rf-breadcrumb { padding-top:25px;color:var(--rf-muted);font-size:12px; }
.rf-breadcrumb ol { display:flex;flex-wrap:wrap;align-items:center;gap:7px 12px;padding:0;list-style:none; }
.rf-breadcrumb li+li::before { content:"›";margin-right:12px;color:#718296; }
.rf-breadcrumb a { color:var(--rf-muted); }
.rf-layout { display:grid;grid-template-columns:minmax(0, .82fr) minmax(0, 1.18fr);gap:64px;align-items:start;margin-top:49px; }
.rf-intro { padding-top:16px; }
.rf-eyebrow { display:flex;align-items:center;gap:9px;color:#526579;font-size:12px;font-weight:650;letter-spacing:.03em; }
.rf-eyebrow>span { display:inline-block;width:19px;height:5px;background:var(--rf-yellow);border-radius:10px; }
.rf-page-label { margin-top:26px!important;font-size:14px;color:var(--rf-blue);font-weight:750;letter-spacing:.07em; }
.rf-main h1 { margin-top:14px;font-size:clamp(29px,2.7vw,38px);line-height:1.65;letter-spacing:-.035em;font-weight:800; }
.rf-main h1 span { background:linear-gradient(transparent 76%,#ffe47a 76%,#ffe47a 94%,transparent 94%); }
.raku-form-page--download h1 span { background:linear-gradient(transparent 76%,#c9e6ff 76%,#c9e6ff 94%,transparent 94%); }
.rf-lead { margin-top:24px!important;font-size:16px;line-height:2;color:#475a6c;max-width:29em; }
.rf-flow { margin-top:42px; }
.rf-flow h2 { font-size:17px;font-weight:750; }
.rf-flow ol { padding:21px 0 0;list-style:none; }
.rf-flow li { display:flex;align-items:center;gap:19px;padding:13px 0;font-size:15px;font-weight:600; }
.rf-flow-number { display:flex;align-items:center;justify-content:center;flex:0 0 64px;min-height:30px;border-radius:5px;background:#eaf3fc;color:#0763b6;font-size:12px;letter-spacing:.04em;font-weight:800; }
.rf-mascot { width:min(300px,100%);margin:24px auto 0; }
.rf-mascot img { display:block;width:100%;height:auto; }
.rf-form-panel { background:#fff;border:1px solid #e0e8ef;border-top:4px solid var(--rf-yellow);border-radius:16px;box-shadow:0 12px 40px #173a5d0a;padding:34px 36px 32px;min-width:0; }
.raku-form-page--download .rf-form-panel { border-top-color:var(--rf-blue); }
.rf-section-kicker { color:var(--rf-blue);font-size:10px;letter-spacing:.17em;font-weight:800; }
.rf-panel-head h2 { font-size:28px;font-weight:800;line-height:1.6;margin-top:5px;letter-spacing:-.025em; }
.rf-notice { font-size:14px;padding:16px;background:#fff6df; }
.rf-main fieldset { border:0;margin:0;padding:0;min-width:0; }
.rf-main #request-fields { margin-top:28px; }
.rf-products>legend,.rf-customer h3 { width:100%;font-size:17px;font-weight:750;line-height:1.6; }
.rf-step-num { display:inline-block;font-size:12px;font-weight:750;color:var(--rf-blue);vertical-align:middle;margin-right:10px; }
.rf-badge { display:inline-block;border-radius:4px;padding:1px 7px;font-size:10px;font-weight:700;line-height:1.8;vertical-align:middle;white-space:nowrap;letter-spacing:.02em; }
.rf-badge--required { background:#e9f2fc;color:#095caa; }
.rf-badge--optional { background:#eff2f5;color:#647184; }
.rf-products .rf-badge { margin-left:8px; }
.rf-hint { color:var(--rf-muted);font-size:12px;line-height:1.8;margin-top:7px!important; }
.rf-product-list { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:16px; }
.rf-product { display:flex;align-items:flex-start;gap:10px;position:relative;min-height:76px;border:1px solid #cfdae5;border-radius:8px;padding:12px 15px;cursor:pointer;transition:background-color .15s,border-color .15s; }
.rf-product:hover { background:#f7fbff;border-color:#81add4; }
.rf-product:has(input:checked) { background:#f0f7ff;border-color:#076ccc;box-shadow:inset 0 0 0 1px #076ccc; }
.rf-product:has(input:focus-visible) { outline:3px solid #076ccc;outline-offset:3px; }
.rf-main input[type=checkbox] { flex:0 0 21px;width:21px;height:21px;min-height:21px;margin:0;accent-color:var(--rf-blue);cursor:pointer; }
.rf-product-copy { display:grid;gap:1px;min-width:0; }
.rf-product-copy strong { font-size:15px;font-weight:750;line-height:1.7; }
.rf-product-copy>span { color:var(--rf-muted);font-size:12px;line-height:1.7; }
.rf-selected-mark { display:none;margin-left:auto;flex-shrink:0;font-size:10px;font-weight:700;color:#0763b6;visibility:hidden; }
.rf-product:has(input:checked) .rf-selected-mark { visibility:visible; }
.rf-selection-count { font-size:11px;text-align:right;color:var(--rf-muted);margin-top:8px!important; }
.rf-customer { border-top:1px solid var(--rf-line);margin-top:27px;padding-top:26px; }
.rf-field { margin-top:22px; }
.rf-field>label { display:flex;align-items:baseline;flex-wrap:wrap;gap:6px 10px;font-weight:650;font-size:14px;line-height:1.8; }
.rf-field input,.rf-field textarea { display:block;width:100%;border:1px solid #b8c6d3;border-radius:6px;background:#fff;font:inherit;color:var(--rf-ink);font-size:16px;padding:12px 14px;min-height:52px;margin-top:9px;line-height:1.65; }
.rf-field textarea { resize:vertical;min-height:126px; }
.rf-field input::placeholder,.rf-field textarea::placeholder { color:#7c8998;font-size:14px;opacity:1; }
.rf-main [aria-invalid=true]:is(input,textarea) { border-color:#b93434;background:#fffafa; }
.rf-products[aria-invalid=true] .rf-product { border-color:#c66d6d; }
.rf-error { margin-top:6px!important;color:#ad2525;font-size:12px;font-weight:600; }
.rf-error-summary { border:1px solid #cc6868;border-left:4px solid #b93434;background:#fff7f7;border-radius:6px;padding:16px 18px;margin-bottom:25px;font-size:13px; }
.rf-error-summary p { font-weight:700; }
.rf-error-summary ul { padding-left:20px;margin-top:8px; }
.rf-error-summary a { color:#a52a2a; }
.rf-result { background:#f0f7ff;border:1px solid #b6d4ed;border-radius:8px;padding:18px;margin-bottom:24px;font-size:14px; }
.rf-result[data-state=error] { background:#fff7f7;border-color:#dca4a4;color:#8f2525; }
.rf-result[data-state=success] { background:#edf8f2;border-color:#8ebda3;color:#1f6140; }
.rf-consent-block { border-top:1px solid var(--rf-line);margin-top:29px;padding-top:23px; }
.rf-consent { display:flex;align-items:flex-start;gap:12px;margin-top:8px; }
.rf-consent input { margin-top:7px!important; }
.rf-consent label { display:block;font-size:13px;line-height:1.9;cursor:pointer;min-height:48px;padding:3px 0; }
.rf-consent a { font-weight:650; }
.rf-submit { display:flex;align-items:center;justify-content:center;gap:14px;width:100%;min-height:62px;border:0;border-radius:8px;background:var(--rf-yellow);color:#202b38;font:inherit;font-weight:750;font-size:16px;line-height:1.65;padding:16px 18px;margin-top:25px;cursor:pointer;box-shadow:0 3px 0 #d5ae20; }
.rf-submit>span:first-child { flex:1; }
.rf-submit>span:last-child { font-size:21px;line-height:1; }
.rf-submit:hover { background:#ffd94a; }
.raku-form-page--download .rf-submit { background:#076ccc;color:white;box-shadow:0 3px 0 #0455a5; }
.raku-form-page--download .rf-submit:hover { background:#095eac; }
.rf-submit:disabled { cursor:default;opacity:.65;box-shadow:none; }
.rf-alternate { display:flex;justify-content:center;text-align:center;align-items:center;gap:24px;max-width:850px;margin:58px auto 0;padding:28px 35px;border:1px solid #d9e5ef;border-radius:10px;background:#f7fafe; }
.rf-alternate a { display:inline-flex;align-items:center;justify-content:center;gap:24px;min-height:52px;min-width:220px;max-width:100%;padding:12px 24px;margin-top:14px;border:1px solid #076ccc;border-radius:8px;background:#fff;color:#076ccc;font-size:17px;font-weight:750;text-decoration:none; }
.rf-alternate a:hover { background:#eaf3ff; }
.rf-sr-only { position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip-path:inset(50%);white-space:nowrap!important;border:0!important; }
.rf-skip { position:absolute;top:8px;left:10px;transform:translateY(-180%);background:white;padding:10px 16px;color:#076ccc;z-index:50; }
.rf-skip:focus { transform:none; }
@media (max-width:1100px) {
  .rf-container { width:calc(100% - 56px); }
  .rf-layout { gap:34px;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); }
  .rf-form-panel { padding:28px; }
  .rf-main h1 { font-size:30px; }
  .rf-panel-head h2 { font-size:26px; }
}
@media (max-width:900px) {
  .rf-intro { display:flex;flex-direction:column; }
  .rf-mascot { order:1;width:min(200px,100%); }
  .rf-layout { grid-template-columns:1fr;gap:34px;margin-top:26px; }
  .rf-intro { padding-top:4px; }
  .rf-main h1 { font-size:36px; }
  .rf-lead { max-width:none; }
  .rf-page-label { margin-top:20px!important; }
  .rf-flow { margin-top:30px; }
  .rf-flow ol { display:grid;grid-template-columns:repeat(3,1fr);gap:18px;padding-top:13px; }
  .rf-flow li { flex-direction:column;align-items:flex-start;gap:8px; }
  .rf-flow-number { flex-basis:auto;min-width:64px; }
  .rf-form-panel { max-width:680px;width:100%;margin-inline:auto;padding:32px; }
  .rf-alternate { margin-top:38px; }
}
@media (max-width:600px) {
  .rf-main { padding-bottom:40px;background:linear-gradient(180deg,#f5f9fd 0,#fff 620px); }
  .rf-container { width:calc(100% - 40px); }
  .rf-breadcrumb { font-size:10px;padding-top:18px; }
  .rf-breadcrumb ol { gap:5px 7px; }
  .rf-breadcrumb li+li::before { margin-right:7px; }
  .rf-layout { margin-top:24px;gap:28px; }
  .rf-eyebrow { font-size:10px;gap:7px; }
  .rf-page-label { font-size:12px;margin-top:23px!important; }
  .rf-main h1 { font-size:29px;line-height:1.65;margin-top:12px; }
  .rf-lead { font-size:14px;line-height:1.95;margin-top:18px!important; }
  .rf-flow h2 { font-size:15px; }
  .rf-flow ol { display:block;padding-top:11px; }
  .rf-flow li { flex-direction:row;align-items:center;font-size:13px;gap:15px;padding:8px 0; }
  .rf-flow-number { min-height:28px;font-size:10px; }
  .rf-form-panel { padding:24px 20px;border-radius:12px; }
  .rf-panel-head h2 { font-size:24px; }
  .rf-products>legend,.rf-customer h3 { font-size:16px; }
  .rf-main #request-fields { margin-top:24px; }
  .rf-product { flex-direction:column;gap:6px;padding:11px;min-height:77px; }
  .rf-product-copy strong { font-size:15px; }
  .rf-product-copy>span { font-size:12px; }
  .rf-selected-mark { display:none; }
  .rf-field { margin-top:20px; }
  .rf-field>label { font-size:13px; }
  .rf-submit { font-size:14px;min-height:64px;padding:15px 12px;gap:6px; }
  .rf-consent label { font-size:12px; }
  .rf-alternate { display:block;padding:23px 22px; }
  .rf-alternate a { font-size:15px;gap:18px; }
}
@media (max-width:360px) {
  .rf-container { width:calc(100% - 32px); }
  .rf-form-panel { padding:22px 15px; }
  .rf-main h1 { font-size:25px; }
  .rf-panel-head h2 { font-size:22px; }
  .rf-submit { font-size:13px; }
}
@media (prefers-reduced-motion:reduce) { .rf-main * { transition:none!important;scroll-behavior:auto!important; } }

/* Trial typography: keep catalog and shared site shell unaffected. */
.raku-form-page--trial .rf-main h1 { font-size:clamp(34px,3.2vw,46px); }
.raku-form-page--trial .rf-lead { color:#171b22;font-size:18px; }
.raku-form-page--trial .rf-page-label { font-size:18px; }
.raku-form-page--trial .rf-panel-head h2 { font-size:32px;text-wrap:balance; }
.raku-form-page--trial :is(.rf-products>legend,.rf-customer h3) { font-size:22px; }
.raku-form-page--trial :is(.rf-hint,.rf-product-copy>span,.rf-selection-count) { color:#171b22;font-size:14px; }
.raku-form-page--trial .rf-field>label { font-size:16px; }
.raku-form-page--trial .rf-alternate a { font-size:22px;min-height:64px;min-width:240px;padding:15px 28px; }
@media (max-width:600px) {
  .raku-form-page--trial .rf-main h1 { font-size:33px; }
  .raku-form-page--trial .rf-lead { font-size:16px; }
  .raku-form-page--trial .rf-page-label { font-size:16px; }
  .raku-form-page--trial .rf-panel-head h2 { font-size:28px; }
  .raku-form-page--trial :is(.rf-products>legend,.rf-customer h3) { font-size:20px; }
  .raku-form-page--trial :is(.rf-hint,.rf-product-copy>span,.rf-selection-count) { font-size:13px; }
  .raku-form-page--trial .rf-field>label { font-size:15px; }
  .raku-form-page--trial .rf-alternate a { font-size:20px;padding-inline:18px;min-width:0;width:100%; }
}
@media (max-width:360px) {
  .raku-form-page--trial .rf-main h1 { font-size:30px; }
  .raku-form-page--trial .rf-panel-head h2 { font-size:26px; }
}

.raku-form-page--trial .rf-alternate h2 { color:#171b22;font-size:28px;font-weight:800;line-height:1.6;text-wrap:balance; }
.raku-form-page--trial .rf-submit { font-size:22px; }
@media (max-width:600px) {
  .raku-form-page--trial .rf-alternate h2 { font-size:24px; }
  .raku-form-page--trial .rf-submit { font-size:20px; }
}

@media (max-width:600px) {
  .raku-form-page--trial .rf-mobile-line { display:block;white-space:nowrap; }
  .raku-form-page--trial .rf-submit { position:relative;padding-inline:10px; }
  .raku-form-page--trial .rf-submit>span:last-child { position:absolute;right:10px;bottom:18px;font-size:20px; }
}
