@charset "UTF-8";
@font-face { font-family:"LAK Catalog Noto";src:url("./fonts/noto-sans-jp-catalog.woff2") format("woff2");font-style:normal;font-weight:100 900;font-display:swap; }
.catalog-page { font-family:"LAK Catalog Noto","Noto Sans JP","Yu Gothic",Meiryo,sans-serif; }
.catalog-main { padding-bottom:64px;color:#171b22;font-weight:500;--rf-ink:#171b22;--rf-muted:#171b22; }
.catalog-main :is(.rf-lead,.rf-eyebrow,.rf-page-label,.catalog-kicker) { color:#171b22; }
.catalog-hero { display:grid;grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);gap:64px;align-items:start;margin-top:49px; }
.catalog-intro { padding-top:16px; }
.catalog-intro h1 { font-size:36px;line-height:1.7;letter-spacing:-.045em; }
.catalog-intro .rf-lead { margin-top:22px!important; }
.catalog-mascot { display:block;width:300px;max-width:100%;height:auto;margin:27px auto 0; }
.catalog-panel { min-width:0;padding:30px 34px 25px;background:#fff;border:1px solid #dce6ef;border-top:4px solid #076ccc;border-radius:16px;box-shadow:0 12px 40px #173a5d0a; }
.catalog-kicker { color:#076ccc;font-size:10px;font-weight:800;letter-spacing:.15em; }
.catalog-panel h2 { font-size:30px;line-height:1.6;margin-top:5px;letter-spacing:-.02em; }
.catalog-cover { display:block;width:100%;height:auto;margin:22px 0;border:1px solid #e1e7ed;border-radius:4px; }
.catalog-description { font-size:16px;color:#171b22;line-height:1.9; }
.catalog-actions { display:grid;gap:13px;margin-top:19px; }
.catalog-actions :is(a,button) { display:flex;align-items:center;justify-content:center;gap:14px;min-height:60px;border-radius:8px;padding:15px 16px;text-decoration:none;font:inherit;font-size:22px;font-weight:750;line-height:1.6;text-align:center; }
.catalog-actions .catalog-primary { background:#076ccc;color:#fff;border:1px solid #076ccc;box-shadow:0 3px 0 #0455a5; }
.catalog-primary:hover { background:#095eac; }
.catalog-primary svg { flex:none;width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round; }
.catalog-actions button:disabled { cursor:not-allowed;opacity:.55;box-shadow:none; }
.catalog-products { margin-top:62px; }
.catalog-section-heading { display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:23px; }
.catalog-section-heading h2 { font-size:30px;line-height:1.65;margin-top:6px;letter-spacing:-.02em; }
.catalog-section-heading>p { font-size:12px;color:#171b22;padding-bottom:5px; }
.catalog-product-list { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px; }
.catalog-product { display:grid;grid-template-columns:1fr;align-content:start;gap:12px;border:1px solid #e0e7ee;border-left:5px solid var(--product-color);border-radius:8px;padding:19px 25px;background:#fff; }
.catalog-category { display:inline-flex;align-items:center;gap:7px;font-size:10px;color:#171b22;font-weight:650; }
.catalog-category::before { content:"";width:8px;height:8px;background:var(--product-color);border-radius:50%; }
.catalog-product h3 { font-size:19px;font-weight:750;line-height:1.6;letter-spacing:-.025em;margin-top:2px; }
.catalog-product>p { color:#171b22;font-size:14px;line-height:1.85; }
.catalog-product-links { display:flex;margin-top:4px; }
.catalog-product-links a { display:flex;align-items:center;justify-content:center;gap:22px;min-height:46px;padding:10px 20px;border:1px solid #076ccc;border-radius:7px;background:#f4f8fd;color:#171b22;text-decoration:none;font-size:14px;font-weight:700; }
.catalog-product-links a:hover { background:#e5f0fd; }
.catalog-trial { display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:24px;padding:30px 34px;background:#f5f9fd;border:1px solid #d9e5ef;border-radius:10px;margin-top:44px; }
.catalog-trial h2 { font-size:25px;line-height:1.7;margin-top:5px; }
.catalog-trial p:last-child { color:#171b22;font-size:17px;margin-top:12px; }
.catalog-trial .catalog-trial-button { display:inline-flex;align-items:center;justify-content:center;gap:16px;flex:none;min-height:88px;min-width:min(520px,100%);max-width:100%;border:2px solid #b88a00;border-radius:8px;background:#fff3bf;color:#171b22;padding:22px 40px;font-size:26px;font-weight:700;text-decoration:none;text-align:center;line-height:1.7; }
.catalog-keep { white-space:nowrap; }
.catalog-trial .catalog-trial-button:hover { background:#ffe89a; }
@media (max-width:1100px) {
  .catalog-hero { gap:34px; }
  .catalog-intro h1 { font-size:30px; }
  .catalog-panel { padding:26px; }
  .catalog-product { gap:12px;padding:18px 21px; }
  .catalog-trial { gap:20px; }
}
@media (max-width:900px) {
  .catalog-hero { grid-template-columns:1fr;gap:28px;margin-top:30px; }
  .catalog-intro { padding-top:0; }
  .catalog-intro h1 { font-size:36px; }
  .catalog-intro .rf-lead { max-width:none; }
  .catalog-mascot { width:200px;margin-top:22px; }
  .catalog-panel { width:100%;max-width:680px;margin:auto; }
  .catalog-section-heading { display:block; }
  .catalog-section-heading>p { margin-top:12px; }
}
@media (max-width:600px) {
  .catalog-main { padding-bottom:40px; }
  .catalog-hero { margin-top:26px; }
  .catalog-intro h1 { font-size:29px;line-height:1.7; }
  .catalog-intro .rf-lead { margin-top:18px!important; }
  .catalog-mascot { margin-top:19px; }
  .catalog-panel { padding:23px 20px 20px;border-radius:12px; }
  .catalog-panel h2 { font-size:26px; }
  .catalog-cover { margin:18px 0; }
  .catalog-description { font-size:15px; }
  .catalog-actions :is(a,button) { font-size:19px;gap:12px;padding:14px 10px; }
  .catalog-products { margin-top:39px; }
  .catalog-section-heading h2 { font-size:26px; }
  .catalog-section-heading>p { font-size:12px; }
  .catalog-product-list { grid-template-columns:1fr; }
  .catalog-product { grid-template-columns:1fr;gap:9px;padding:16px 18px;border-left-width:4px; }
  .catalog-product h3 { font-size:18px; }
  .catalog-product>p { font-size:13px; }
  .catalog-product-links { grid-column:auto;display:flex;justify-content:space-between;gap:12px; }
  .catalog-product-links a { min-height:46px;font-size:14px;gap:18px; }
  .catalog-trial { margin-top:30px;padding:24px 21px;gap:21px; }
  .catalog-trial h2 { font-size:22px; }
  .catalog-trial .catalog-trial-button { width:100%;font-size:23px;padding-inline:16px;gap:10px; }
}
@media (max-width:360px) { .catalog-intro h1 { font-size:25px; }.catalog-panel { padding-inline:16px; }.catalog-actions .catalog-primary { font-size:18px; } }

.catalog-intro .rf-page-label { font-size:20px; }
@media (max-width:600px) { .catalog-intro .rf-page-label { font-size:18px; }.catalog-trial p:last-child { font-size:16px; } }

.catalog-panel h2,.catalog-section-heading h2 { text-wrap:balance; }

.catalog-description-mobile { display:none; }
@media (max-width:600px) {
  .catalog-description-desktop { display:none; }
  .catalog-description-mobile { display:block;font-size:clamp(12px,3.8vw,15px); }
  .catalog-description-mobile>span { display:block;white-space:nowrap; }
}
