/* Aichi LP — G2 hero and restrained, page-scoped editorial layout. */
body.sampo-aichi-lp-page {
  --aichi-navy: #0B2A5B;
  --aichi-teal: #18569e;
  --aichi-pale: #eaf3fc;
  --aichi-rule: #cdd8e0;
  /* The supplied introduction PHP delegates typography to an external stylesheet. */
  --aichi-mincho: "Noto Serif JP", "Yu Mincho", "YuMincho", "Hiragino Mincho ProN", "MS PMincho", serif;
  margin: 0; padding-bottom: calc(74px + env(safe-area-inset-bottom, 0px));
  background: #fff; color: var(--aichi-navy);
  font: 16px/1.85 "Noto Sans JP", "Yu Gothic", Meiryo, sans-serif;
}
body.sampo-aichi-lp-page .grecaptcha-badge { visibility: hidden !important; }
body.sampo-aichi-lp-page #a403 { display:block; width:100%; max-width:none; margin:0; padding:0; background:#fff; color:var(--aichi-navy); }
#a403 *, .sampo-aichi-lp-page .a403-footer * { box-sizing:border-box; }
body.sampo-aichi-lp-page #a403 > section { position:relative; display:block; width:100%; max-width:none; height:auto; min-height:0; margin:0; padding:80px 0 !important; border:0; border-radius:0; background:#fff; color:var(--aichi-navy); }
body.sampo-aichi-lp-page #a403 > section::before, body.sampo-aichi-lp-page #a403 > section::after { display:none !important; }
body.sampo-aichi-lp-page #a403 > section:nth-of-type(even) { background:var(--aichi-pale); }
body.sampo-aichi-lp-page #a403 .a403-wrap, .sampo-aichi-lp-page .a403-footer .a403-wrap { width:calc(100% - 80px); max-width:1200px; margin-inline:auto; }
#a403 :is(h1,h2,h3,h4) { margin:0; padding:0; border:0; background:none; color:inherit; line-height:1.5; letter-spacing:.025em; overflow-wrap:anywhere; }
#a403 :is(h1,h2) { font-family:var(--aichi-mincho); font-weight:500; }
#a403 h2 { font-size:clamp(28px,3vw,40px); margin-bottom:28px; }
#a403 h3 { font-size:21px; font-weight:600; }
#a403 h4 { font-size:17px; font-weight:600; }
#a403 :is(h1,h2,h3)::before, #a403 :is(h1,h2,h3)::after { display:none; }
#a403 p { margin:0; overflow-wrap:anywhere; }
#a403 p + p { margin-top:12px; }
#a403 ul { list-style:none; padding:0; margin:0; }
#a403 li { margin:0; }
#a403 figure { margin:0; min-width:0; }
#a403 img { display:block; max-width:100%; height:auto; }
#a403 a { color:inherit; text-decoration:none; }
#a403 :is(a,button,input,textarea,select,summary):focus-visible { outline:2px solid var(--aichi-teal); outline-offset:4px; }
#a403 a:hover { text-decoration:underline; text-underline-offset:5px; }
#a403 section { scroll-margin-top:20px; }
#a403 .a403-phrase { display:inline-block; max-width:100%; }
#a403 .a403-eyebrow { margin:0 0 12px; padding:0; background:none; border:0; border-radius:0; color:var(--aichi-teal); font-size:14px; letter-spacing:.1em; font-weight:600; }
#a403 .a403-lead { margin-bottom:30px; max-width:960px; }
#a403 :is(.a403-small,.a403-person,.a403-credentials,.a403-photo-note,.a403-recaptcha) { font-size:14px; line-height:1.8; }
#a403 .a403-photo-note { margin-top:5px; text-align:right; }
#a403 .a403-actions { display:flex; flex-wrap:wrap; align-items:center; gap:14px; margin:24px 0 16px; }
#a403 .a403-btn { display:inline-flex; align-items:center; justify-content:center; min-height:54px; padding:14px 26px; border:1px solid var(--aichi-navy); border-radius:4px; font-size:16px; font-weight:600; line-height:1.5; text-align:center; transition:opacity .2s; }
#a403 .a403-primary { color:#fff; background:var(--aichi-navy); }
#a403 .a403-secondary { color:var(--aichi-navy); background:#fff; }
#a403 .a403-btn:hover { opacity:.85; text-decoration:none; }
/* The first viewport: 64px masthead + 592px hero + proof band at 1366px. */
body.sampo-aichi-lp-page #a403 > .a403-hero { padding:0 !important; }
#a403 .a403-header { background:#fff; }
#a403 .a403-header .a403-wrap { display:flex; align-items:center; justify-content:space-between; min-height:64px; gap:16px; }
#a403 .a403-brand { font-family:var(--aichi-mincho); font-size:26px; font-weight:600; letter-spacing:.1em; }
#a403 .a403-header-phone { font-family:var(--aichi-mincho); font-size:20px; white-space:nowrap; }
#a403 .a403-hero-main { position:relative; display:flex; align-items:center; min-height:592px; padding:40px 0 44px; isolation:isolate; }
#a403 .a403-hero-background { position:absolute; inset:0; z-index:-2; }
#a403 .a403-hero-background img { width:100%; height:100%; object-fit:cover; object-position:center; }
#a403 .a403-hero-main::before { content:""; position:absolute; inset:0; z-index:-1; background:linear-gradient(90deg,rgba(255,255,255,.5),rgba(255,255,255,.14) 58%,transparent 80%); }
#a403 .a403-hero-copy { min-width:0; }
#a403 .a403-hero h1 { margin:0; font-size:clamp(44px,5.3vw,74px); line-height:1.4; letter-spacing:.04em; }
#a403 .a403-hero-region { display:block; margin-bottom:18px; font-size:22px; line-height:1.5; color:var(--aichi-teal); letter-spacing:.16em; }
#a403 .a403-hero-line { display:block; }
#a403 .a403-handline { position:relative; display:inline-block; }
#a403 .a403-hero-description { margin:24px 0; font-size:18px; line-height:1.8; }
#a403 .a403-hero-booking { display:flex; flex-wrap:wrap; align-items:center; gap:18px 28px; margin-top:25px; font-size:16px; }
#a403 .a403-hero-booking a { color:var(--aichi-teal); text-decoration:underline; text-underline-offset:7px; }
#a403 .a403-hero-booking span { padding-left:28px; border-left:1px solid var(--aichi-rule); }
#a403 .a403-hero-image-note { position:absolute; bottom:12px; right:20px; font-size:14px; padding:0 6px; background:rgba(255,255,255,.8); }
#a403 .a403-proof-band { background:#fff; border-bottom:1px solid var(--aichi-rule); }
#a403 .a403-proof-band ul { display:grid; grid-template-columns:1.5fr 1fr 1.2fr 1.1fr; align-items:center; min-height:86px; padding:18px 0; }
#a403 .a403-proof-band li { padding:0 18px; border-left:1px solid var(--aichi-rule); font-size:15px; text-align:center; line-height:1.7; }
#a403 .a403-proof-band li:first-child { padding-left:0; border-left:0; }
#a403 .a403-proof-band li:last-child { padding-right:0; }
#a403 .a403-proof-band strong { font-family:var(--aichi-mincho); font-size:23px; font-weight:500; white-space:nowrap; }
#a403 .a403-proof-band small { display:block; font-size:14px; }
#a403 .a403-proof-band li > span { display:inline-block; }
/* CF7 base: the contact form keeps all of its fields. */
#a403 .lpc-form { width:100%; padding:32px; border:1px solid var(--aichi-rule); border-radius:4px; background:#fff; }
#a403 .lpc-form form { display:block; margin:0; }
#a403 .lpc-form p { margin:0 0 18px; }
#a403 .lpc-form label { display:block; font-size:16px; line-height:1.7; }
#a403 .lpc-form :is(input:not([type=hidden]):not([type=checkbox]):not([type=radio]):not([type=submit]),textarea,select) { display:block; width:100%; min-width:0; margin-top:8px; padding:12px; border:1px solid var(--aichi-rule); border-radius:3px; background:#fff; color:var(--aichi-navy); font:inherit; }
#a403 .lpc-form :is(input[type=submit],button[type=submit]) { display:block; width:100%; min-height:54px; padding:14px 18px; border:1px solid var(--aichi-navy); border-radius:4px; background:var(--aichi-navy); color:#fff; font:600 16px/1.5 "Noto Sans JP","Yu Gothic",Meiryo,sans-serif; cursor:pointer; white-space:normal; }
#a403 .lpc-form .a403-field-badge { display:inline-block; position:static; margin-left:8px; padding:0 6px; background:var(--aichi-pale); color:var(--aichi-teal); font-size:14px; border-radius:0; }
#a403 .lpc-form .wpcf7-not-valid-tip { display:block; font-size:14px; line-height:1.5; margin-top:6px; }
#a403 .lpc-form .wpcf7-response-output { margin:16px 0 0; padding:12px; font-size:14px; line-height:1.7; overflow-wrap:anywhere; }
/* Only the FV instance reduces CF7 to company / email / submit. */
#a403 .lpc-form--fv { max-width:880px; padding:18px 22px; border:0; background:rgba(255,255,255,.94); box-shadow:0 6px 24px #0b2a5b0a; }
#a403 .lpc-form--fv form { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr) 244px; align-items:start; gap:10px 22px; }
#a403 .lpc-form--fv :is(.lpc-fields,.lpc-form-fields,.lpc-grid) { display:contents; }
#a403 .lpc-form--fv .lpc-field { min-width:0; margin:0; }
#a403 .lpc-form--fv .lpc-field:has([name="your-name"]), #a403 .lpc-form--fv .lpc-field:has([name="your-message"]), #a403 .lpc-form--fv .cfv2-message-examples { display:none !important; }
#a403 .lpc-form--fv .lpc-field label { font-size:14px; line-height:1.4; color:var(--aichi-navy); }
#a403 .lpc-form--fv :is(.lpc-req,.lpc-opt,label .is-optional) { display:none; }
#a403 .lpc-form--fv :is(p,label) { margin:0; }
#a403 .lpc-form--fv .wpcf7-form-control-wrap { display:block; }
#a403 .lpc-form--fv input:not([type=hidden]):not([type=submit]) { height:38px; margin:0; padding:5px 2px; border:0; border-bottom:1px solid #7c8da4; border-radius:0; background:transparent; font-size:16px; }
#a403 .lpc-form--fv .lpc-submit { position:relative; margin:0; min-width:0; align-self:start; }
#a403 .lpc-form--fv .wpcf7-spinner { position:absolute; right:2px; top:calc(100% + 2px); margin:0; }
#a403 .lpc-form--fv .wpcf7-response-output { grid-column:1 / -1; }
#a403 .lpc-form--fv :is(.recaptcha-note,.recaptcha-notice) { grid-column:1 / -1; font-size:14px; }
#a403 .lpc-form--fv form > :is(.wpcf7-response-output,p):empty { display:none; }
/* Fine rules and open space replace cards throughout. */
#a403 .a403-concerns-head { display:grid; grid-template-columns:1fr 300px; gap:50px; align-items:center; margin-bottom:32px; }
#a403 .a403-admin-concerns { margin-top:30px; }
#a403 .a403-admin-concerns h3 { font-size:17px; margin-bottom:16px; }
#a403 .a403-admin-concerns ul { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:30px; }
#a403 .a403-admin-concerns :is(strong,span) { display:block; font-size:14px; }
#a403 .a403-short-strip { display:flex; justify-content:space-between; align-items:center; gap:24px; margin-top:32px; padding-top:24px; border-top:1px solid var(--aichi-rule); }
#a403 .a403-short-strip .a403-btn { flex-shrink:0; }
#a403 .a403-reasons { display:grid; gap:36px; margin-top:38px; }
#a403 .a403-reason { display:grid; grid-template-columns:minmax(0,1fr) 330px; gap:60px; padding-bottom:36px; border-bottom:1px solid var(--aichi-rule); align-items:center; }
#a403 .a403-reason h3 { font-size:24px; margin-bottom:18px; }
#a403 .a403-reason-visual > figure img { width:100%; height:170px; object-fit:cover; }
#a403 .a403-credentials { margin-top:24px; }
#a403 .a403-cases { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr)); gap:32px; }
#a403 .a403-case { border-bottom:1px solid var(--aichi-rule); }
#a403 .a403-case-photo { width:100%; height:240px; object-fit:cover; }
#a403 .a403-case-copy { padding:26px 0; }
#a403 .a403-case h3 { margin:10px 0; }
#a403 blockquote { margin:24px 0; padding:0 0 0 18px; border:0; border-left:2px solid var(--aichi-teal); background:none; font:500 24px/1.7 var(--aichi-mincho); }
#a403 blockquote::before, #a403 blockquote::after { display:none; }
#a403 .a403-tags { display:flex; flex-wrap:wrap; gap:10px 18px; margin:18px 0; }
#a403 .a403-tags li { font-size:14px; color:var(--aichi-teal); }
#a403 .a403-text-link { display:inline-block; margin-top:20px; color:var(--aichi-teal); text-decoration:underline; text-underline-offset:6px; }
#a403 .a403-mid-cta { display:flex; justify-content:space-between; gap:36px; align-items:center; margin-top:24px; padding:32px 0; border-block:1px solid var(--aichi-rule); }
#a403 .a403-mid-cta h2 { font-size:30px; margin-bottom:12px; }
#a403 .a403-mid-cta .a403-actions { flex-direction:column; align-items:stretch; flex-shrink:0; }
#a403 .a403-price-card { margin:32px 0; }
#a403 table { width:100%; border-collapse:collapse; margin:24px 0; background:transparent; }
#a403 caption { text-align:left; font-size:14px; margin-bottom:12px; }
#a403 th, #a403 td { padding:16px 24px; border:0; border-bottom:1px solid var(--aichi-rule); text-align:left; }
#a403 thead { background:transparent; }
#a403 th { font-weight:500; }
#a403 td { font:500 38px/1.5 var(--aichi-mincho); }
#a403 .a403-price-total { margin-top:28px; padding-left:22px; border-left:2px solid var(--aichi-teal); }
#a403 .a403-price-total h3 { margin-bottom:12px; }
#a403 .a403-price-total a { text-decoration:underline; }
#a403 .a403-support-title { margin:36px 0 20px; }
#a403 .a403-supports { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:20px 30px; }
#a403 .a403-supports > div { padding:16px 0; border-top:1px solid var(--aichi-rule); }
#a403 .a403-supports p { font-size:14px; }
#a403 .a403-role-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:32px; margin:32px 0; }
#a403 .a403-role { padding:24px 0; border-block:1px solid var(--aichi-rule); }
#a403 .a403-flow-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:36px; }
#a403 .a403-flow-grid img { width:100%; height:170px; object-fit:cover; }
#a403 .a403-flow-grid article > div { padding:20px 0; }
#a403 .a403-flow-grid h3 { margin-bottom:14px; }
#a403 .a403-step-note { margin-top:18px; padding-top:12px; border-top:1px solid var(--aichi-rule); font-size:14px; color:var(--aichi-teal); }
#a403 .a403-faq-grid { display:grid; grid-template-columns:300px minmax(0,1fr); gap:64px; }
#a403 .a403-faq-image { max-width:260px; margin-top:24px; }
#a403 .a403-faq-list details { border-bottom:1px solid var(--aichi-rule); padding:22px 0; }
#a403 .a403-faq-list details:first-child { border-top:1px solid var(--aichi-rule); }
#a403 .a403-faq-list summary { cursor:pointer; font-weight:600; }
#a403 .a403-faq-list details p { margin-top:16px; }
body.sampo-aichi-lp-page #a403 > .aichi-cta { background:var(--aichi-navy); color:#fff; }
#a403 .a403-final > .a403-wrap { display:grid; grid-template-columns:minmax(0,1fr) 300px; gap:48px; align-items:center; }
#a403 .a403-final .a403-eyebrow { color:#fff; }
#a403 .a403-final .a403-primary { border-color:#fff; }
#a403 .a403-final-checks { display:flex; flex-wrap:wrap; gap:8px 22px; margin-top:22px; font-size:14px; }
#a403 .a403-final-scene img { width:100%; height:210px; object-fit:cover; }
#a403 .a403-final-scene figcaption { font-size:14px; margin-top:10px; }
#a403 .a403-final-scene small { font-size:14px; }
#a403 .a403-phone { display:flex; flex-wrap:wrap; align-items:center; gap:16px; margin:24px 0 12px; }
#a403 .a403-phone a { font:500 30px/1.5 var(--aichi-mincho); }
#a403 .a403-phone span, #a403 .a403-light-link { font-size:14px; }
#a403 .a403-light-link { text-decoration:underline; }
#a403 .a403-company-strip { display:flex; flex-wrap:wrap; justify-content:center; gap:10px 28px; padding:24px; border-bottom:1px solid var(--aichi-rule); font-size:14px; }
body.sampo-aichi-lp-page #a403 .a403-form-wrap { max-width:800px; }
#a403 .a403-form-checks { display:flex; flex-wrap:wrap; gap:8px 22px; margin:24px 0; font-size:14px; }
#a403 .a403-form-checks li::before { content:'✓'; color:var(--aichi-teal); margin-right:8px; }
#a403 .a403-recaptcha a { text-decoration:underline; }
#a403 .a403-erabu-grid > div { padding:22px 0; border-top:1px solid var(--aichi-rule); }
#a403 .a403-erabu-grid h4 { margin-bottom:10px; }
#a403 .a403-area-grid { display:grid; grid-template-columns:1fr 1fr; gap:48px; margin-top:32px; }
#a403 .a403-area-card { border-top:1px solid var(--aichi-rule); padding:26px 0; }
#a403 .a403-area-card h3 { margin-bottom:18px; }
#a403 .a403-map { width:100%; max-height:240px; object-fit:contain; margin-top:24px; }
.sampo-aichi-lp-page .a403-footer { padding:40px 0; background:var(--aichi-pale); color:var(--aichi-navy); }
.sampo-aichi-lp-page .a403-footer nav { display:flex; flex-wrap:wrap; gap:12px 24px; margin:24px 0; font-size:14px; }
.sampo-aichi-lp-page .a403-footer a { color:inherit; }
.sampo-aichi-lp-page .a403-footer p { font-size:14px; }
@media (min-width:761px) and (max-width:1050px) {
  #a403 .a403-hero-main { min-height:560px; }
  #a403 .a403-proof-band ul { grid-template-columns:1.35fr 1fr 1fr 1fr; }
  #a403 .a403-proof-band li { padding-inline:10px; font-size:14px; }
  #a403 .a403-reason { grid-template-columns:minmax(0,1fr) 280px; gap:30px; }
  #a403 .a403-mid-cta { display:block; }
  #a403 .a403-mid-cta .a403-actions { flex-direction:row; }
  #a403 .a403-final > .a403-wrap { grid-template-columns:minmax(0,1fr) 240px; gap:28px; }
}
@media (max-width:760px) {
  body.sampo-aichi-lp-page #a403 > section { padding:48px 0 !important; }
  body.sampo-aichi-lp-page #a403 .a403-wrap, .sampo-aichi-lp-page .a403-footer .a403-wrap { width:calc(100% - 40px); }
  #a403 h2 { font-size:28px; margin-bottom:24px; }
  #a403 h3 { font-size:20px; }
  #a403 .a403-header .a403-wrap { min-height:56px; gap:8px; }
  #a403 .a403-brand { font-size:19px; letter-spacing:.03em; }
  #a403 .a403-header-phone { font-size:15px; }
  #a403 .a403-hero-main { min-height:0; padding:30px 0 34px; }
  #a403 .a403-hero-main::before { background:rgba(255,255,255,.7); }
  #a403 .a403-hero-background img { object-position:center top; }
  #a403 .a403-hero h1 { font-size:clamp(28px,7.7vw,48px); letter-spacing:0; line-height:1.6; }
  #a403 .a403-hero-region { margin-bottom:16px; font-size:16px; letter-spacing:.08em; }
  #a403 .a403-hero-description { font-size:15px; line-height:1.8; margin:23px 0; }
  #a403 .lpc-form--fv { padding:18px; }
  #a403 .lpc-form--fv form { grid-template-columns:minmax(0,1fr); gap:16px; }
  #a403 .lpc-form--fv .lpc-submit { margin-top:2px; }
  #a403 .a403-hero-booking { gap:10px; margin-top:20px; font-size:14px; }
  #a403 .a403-hero-booking span { padding-left:0; border:0; width:100%; }
  #a403 .a403-hero-image-note { right:12px; bottom:6px; }
  #a403 .a403-proof-band ul { grid-template-columns:repeat(3,minmax(0,1fr)); padding:0 0 20px; }
  #a403 .a403-proof-band .a403-proof-price { grid-column:1 / -1; padding:18px 0; margin-bottom:18px; border-bottom:1px solid var(--aichi-rule); }
  #a403 .a403-proof-band li { font-size:14px; padding:0 7px; }
  #a403 .a403-proof-band li:nth-child(2) { border-left:0; padding-left:0; }
  #a403 .a403-proof-band small { font-size:14px; }
  #a403 .a403-proof-band li > span { display:block; }
  #a403 .a403-admin-concerns ul { grid-template-columns:1fr; gap:18px; }
  #a403 .a403-short-strip { flex-direction:column; align-items:stretch; }
  #a403 .a403-actions { display:grid; grid-template-columns:1fr; }
  #a403 .a403-btn { width:100%; padding:14px 16px; }
  #a403 .a403-reason { grid-template-columns:1fr; gap:22px; padding-bottom:28px; }
  #a403 .a403-reason h3 { font-size:22px; }
  #a403 .a403-reason-visual { max-width:350px; }
  #a403 .a403-cases { grid-template-columns:1fr; gap:32px; }
  #a403 .a403-case-photo { height:210px; }
  #a403 blockquote { font-size:22px; }
  #a403 .a403-mid-cta { display:block; padding:28px 0; }
  #a403 .a403-mid-cta h2 { font-size:27px; }
  #a403 th, #a403 td { padding:14px 8px; }
  #a403 td { font-size:32px; }
  #a403 .a403-supports { grid-template-columns:1fr 1fr; gap:12px 20px; }
  #a403 .a403-role-grid, #a403 .a403-flow-grid, #a403 .a403-area-grid, #a403 .a403-faq-grid { grid-template-columns:1fr; gap:26px; }
  #a403 .a403-role { padding:22px 0; border-bottom:0; }
  #a403 .a403-flow-grid img { height:170px; }
  #a403 .a403-faq-image { display:none; }
  body.sampo-aichi-lp-page #a403 .a403-final > .a403-wrap { grid-template-columns:1fr; gap:28px; }
  #a403 .a403-final-checks { display:grid; }
  #a403 .a403-final-scene img { height:160px; }
  #a403 .a403-company-strip { display:grid; justify-content:start; padding:24px 20px; }
  #a403 .lpc-form:not(.lpc-form--fv) { padding:22px 16px; }
  #a403 .a403-form-checks { display:grid; }
}
@media (prefers-reduced-motion:reduce) { #a403 *, #a403 *::before, #a403 *::after { scroll-behavior:auto !important; transition:none !important; animation:none !important; } }

/* v09448: 最初の画面の1行フォーム(CF7 の実際の構造に合わせる) */
#a403 .lpc-form--fv fieldset.hidden-fields-container { display:none; }
#a403 .lpc-form--fv form { grid-template-columns:minmax(0,1fr) minmax(0,1fr) 230px; align-items:end; gap:6px 22px; }
#a403 .lpc-form--fv .lpc-submit { display:contents; }
#a403 .lpc-form--fv .lpc-submit input[type=submit] { width:100%; height:44px; margin:0; padding:0 12px; }
#a403 .lpc-form--fv .lpc-submit :is(p,.cfv2-submit-note,.scw-form-note,small) { grid-column:1 / -1; margin:2px 0 0; font-size:12px; line-height:1.5; color:#5b6b80; white-space:normal; }
#a403 .lpc-form--fv .lpc-submit .wpcf7-spinner { display:none; }
@media (max-width:760px) {
  #a403 .lpc-form--fv form { grid-template-columns:minmax(0,1fr); gap:10px; }
}
#a403 .lpc-form--fv .lpc-submit > p:first-child { grid-column:auto; margin:0; }
#a403 .lpc-form--fv .lpc-submit > p:empty { display:none; }
#a403 .lpc-form--fv .lpc-submit .recaptcha-note { grid-column:1 / -1; text-align:left; }
#a403 .aichi-fv { padding-bottom:0 !important; }
@media (min-width:761px) {
  #a403 .aichi-fv h1 { margin-bottom:12px; }
  #a403 .lpc-form--fv { padding:12px 22px; }
}
#a403 .lpc-form fieldset.hidden-fields-container { display:none; }
#a403 .a403-cases { grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr)); }
#a403 .a403-mid-cta { padding:28px 32px; }
@media (max-width:760px) { #a403 .a403-mid-cta { padding:22px 0; } }

/* v09448: ワンポイントの絵(/introduction/ の悩みカードと同じ絵柄) */
#a403 .a403-point-img { display:block; width:100%; height:auto; aspect-ratio:2/1; object-fit:cover; background:#F2F7F8; }
#a403 .a403-price-head { display:grid; grid-template-columns:minmax(0,1fr) 260px; align-items:center; gap:32px; }
#a403 .a403-price-head h2 { margin:0; }
@media (max-width:760px) {
  #a403 .a403-price-head { grid-template-columns:minmax(0,1fr) 120px; gap:14px; }
}

/* Shared typography and spacing below the unchanged first viewport. */
#a403 > section:not(.aichi-fv) {
  --section-gap: 32px;
  font-feature-settings: "palt";
  line-break: strict;
  word-break: normal;
  overflow-wrap: break-word;
}
@supports (word-break: auto-phrase) {
  #a403 > section:not(.aichi-fv) { word-break: auto-phrase; }
}
#a403 > section:not(.aichi-fv) :is(h2,h3,h4) { text-wrap:balance; overflow-wrap:break-word; }
#a403 > section:not(.aichi-fv) h2 { font-size:40px; line-height:1.5; margin-bottom:var(--section-gap); }
#a403 > section:not(.aichi-fv) :is(h3,h4) { font-family:"Noto Sans JP","Yu Gothic",Meiryo,sans-serif; font-size:20px; font-weight:600; line-height:1.6; }
#a403 > section:not(.aichi-fv) :is(p,li,blockquote) { text-wrap:pretty; overflow-wrap:break-word; }
#a403 > section:not(.aichi-fv) p + p { margin-top:16px; }
#a403 > section:not(.aichi-fv) .a403-eyebrow { margin:0 0 16px; font-size:14px; line-height:1.6; font-weight:600; letter-spacing:.1em; }
#a403 > section:not(.aichi-fv) .a403-lead { margin-bottom:var(--section-gap); }
#a403 > section:not(.aichi-fv) :is(.a403-photo-note,.a403-small,.a403-person,.a403-credentials,.a403-recaptcha) { font-size:14px; line-height:1.8; }
#a403 > section:not(.aichi-fv) .a403-photo-note { margin-top:8px; }
#a403 > section:not(.aichi-fv) :is(.a403-supports h4,.a403-admin-concerns strong) { font-size:16px; font-weight:600; }
#a403 > section:not(.aichi-fv) blockquote { font:600 20px/1.8 "Noto Sans JP","Yu Gothic",Meiryo,sans-serif; margin:24px 0; padding-left:16px; }
#a403 > section:not(.aichi-fv) .a403-support-title { margin:32px 0 24px; }
#a403 .a403-concerns-head { margin-bottom:var(--section-gap); }
#a403 > section:not(.aichi-fv) :is(.a403-concerns-head,.a403-price-head) h2 { margin-bottom:0; }
#a403 .a403-concerns { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; }
#a403 .a403-concern { display:flex; flex-direction:column; min-width:0; border:1px solid var(--aichi-rule); background:#fff; box-shadow:none; }
#a403 .a403-concern .a403-point-img { width:100%; aspect-ratio:2/1; height:auto; object-fit:cover; }
#a403 .a403-concern > div { padding:24px; }
#a403 .a403-admin-concerns { margin-top:32px; }
#a403 .a403-admin-concerns h3 { margin-bottom:24px; }
#a403 .a403-admin-concerns ul { gap:32px; }
#a403 .a403-admin-concerns span { margin-top:8px; font-size:16px; }
#a403 .a403-reasons { gap:32px; margin-top:0; }
#a403 .a403-reason { grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:48px; padding-bottom:32px; }
#a403 .a403-reason h3 { margin-bottom:16px; }
#a403 .a403-reason-visual { width:100%; max-width:none; }
#a403 .a403-reason-visual > figure img { width:100%; height:auto; aspect-ratio:3/2; object-fit:cover; }
#a403 .a403-cases { grid-template-columns:repeat(auto-fit,minmax(min(100%,360px),1fr)); gap:32px; }
#a403 .a403-case-photo { height:auto; aspect-ratio:3/2; }
#a403 .a403-case-copy { padding:24px 0; }
#a403 .a403-tags { gap:8px 24px; margin:16px 0; }
#a403 .a403-mid-cta { margin-top:32px; padding:32px; gap:32px; }
#a403 .a403-price-card { margin:32px 0; }
#a403 .a403-price-intro { font-size:20px; line-height:1.6; white-space:nowrap; }
#a403 .a403-price-intro strong { font-size:inherit; font-weight:600; }
#a403 .a403-price-distance { font-size:16px; }
#a403 table { table-layout:fixed; margin:24px 0; }
#a403 caption { margin-bottom:16px; }
#a403 th, #a403 td { padding:16px 24px; }
#a403 td, #a403 thead th:last-child { text-align:right; }
#a403 td { font-family:inherit; font-size:32px; font-weight:500; font-variant-numeric:tabular-nums; font-feature-settings:"tnum"; white-space:nowrap; }
#a403 .a403-price-amount { display:inline-block; min-width:2ch; text-align:right; }
#a403 .a403-price-total { margin-top:32px; padding-left:24px; }
#a403 .a403-price-total h3 { margin-bottom:16px; }
#a403 .a403-supports { gap:16px 32px; }
#a403 .a403-supports > div { padding:16px 0; }
#a403 .a403-price-links { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px 32px; margin-top:32px; }
#a403 .a403-price-links a { display:block; padding:16px 0; border-bottom:1px solid var(--aichi-rule); color:var(--aichi-teal); font-size:14px; text-decoration:underline; text-underline-offset:5px; }
#a403 .a403-role-grid { margin:0 0 32px; gap:32px; }
#a403 .a403-role { padding:24px 0; }
#a403 .a403-role .a403-point-img { width:100%; height:auto; aspect-ratio:2/1; margin-bottom:24px; }
#a403 .a403-role .a403-point-photo { object-fit:contain; object-position:center; padding:16px; background:#edf1f3; }
#a403 .a403-role h3 { margin-bottom:16px; }
#a403 .aichi-taisei .a403-tags li { color:#526776; letter-spacing:.08em; }
#a403 .a403-flow-grid { gap:32px; }
#a403 .a403-flow-grid article { position:relative; min-width:0; }
#a403 .a403-flow-grid article:not(:last-child)::after { content:""; position:absolute; width:24px; height:1px; top:85px; right:-28px; background:var(--aichi-rule); }
#a403 .a403-flow-grid article > div { padding:24px 0 0; }
#a403 .a403-flow-grid h3 { margin-bottom:16px; }
#a403 .a403-step-note { margin-top:16px; padding-top:16px; }
#a403 .a403-faq-list details { padding:24px 0; }
#a403 .a403-erabu-grid > div { padding:24px 0; }
#a403 .a403-area-grid { gap:32px; }
#a403 .a403-area-card { padding:24px 0; }
body.sampo-aichi-lp-page #a403 .a403-form-wrap { max-width:800px; }
#a403 .a403-contact .lpc-form { padding:32px; border-radius:4px; box-shadow:none; }
#a403 .a403-contact .lpc-form p { margin-bottom:24px; }
#a403 .a403-contact .lpc-form :is(input,textarea,select) { max-width:100%; }
#a403 .a403-contact .lpc-form textarea { min-height:160px; resize:vertical; }
@media (max-width:760px) {
  #a403 > section:not(.aichi-fv) { --section-gap:24px; }
  #a403 > section:not(.aichi-fv) h2 { font-size:28px; }
  #a403 .a403-concerns, #a403 .a403-reason { grid-template-columns:minmax(0,1fr); gap:24px; }
  #a403 .a403-concern > div { padding:24px; }
  #a403 .a403-admin-concerns ul { gap:24px; }
  #a403 .a403-reason { padding-bottom:24px; }
  #a403 .a403-mid-cta { padding:24px 0; }
  #a403 .a403-price-head { grid-template-columns:minmax(0,1fr); gap:24px; }
  #a403 .a403-price-head .a403-point-img { width:160px; justify-self:end; }
  #a403 .a403-price-intro { font-size:16px; letter-spacing:0; }
  #a403 th, #a403 td { padding:16px 8px; }
  #a403 .a403-price-total { padding-left:16px; }
  #a403 .a403-supports { gap:16px; }
  #a403 .a403-price-links { gap:8px 16px; }
  #a403 .a403-role-grid, #a403 .a403-area-grid, #a403 .a403-faq-grid { gap:24px; }
  #a403 .a403-flow-grid { gap:48px; }
  #a403 .a403-flow-grid article:not(:last-child)::after { width:1px; height:24px; top:auto; bottom:-36px; left:50%; right:auto; }
  #a403 .a403-contact .lpc-form { padding:24px; }
}

/* v09448: 帯は客が選ぶ基準(KBF)に答える4つ(AICHI_KBF_USP_20261102.md) */
#a403 .a403-proof-band ul { grid-template-columns:repeat(4,minmax(0,1fr)); align-items:start; min-height:0; padding:18px 0; }
#a403 .a403-proof-band li { padding:0 22px; text-align:left; line-height:1.5; }
#a403 .a403-proof-band strong { display:block; font-family:var(--aichi-mincho); font-size:19px; font-weight:500; color:var(--aichi-navy); white-space:normal; }
#a403 .a403-proof-band small { display:block; margin-top:4px; font-size:13px; line-height:1.55; color:#4d5d72; }
#a403 .a403-proof-band .a403-proof-price { all:unset; }
@media (max-width:760px) {
  #a403 .a403-proof-band ul { grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px 0; padding:18px 0; }
  #a403 .a403-proof-band li { padding:0 12px; }
  #a403 .a403-proof-band li:nth-child(odd) { padding-left:0; border-left:0; }
  #a403 .a403-proof-band strong { font-size:16px; }
  #a403 .a403-proof-band small { font-size:12px; }
}

/* v09449: ボタンを押す場所として目立たせる(紺→オレンジ)。白文字のコントラスト 4.5 以上 */
body.sampo-aichi-lp-page { --aichi-cta:#C2500C; --aichi-cta-dark:#A84508; }
#a403 .a403-primary { background:var(--aichi-cta); border-color:var(--aichi-cta); font-weight:700; box-shadow:0 4px 12px rgba(194,80,12,.28); }
#a403 .a403-primary:hover { background:var(--aichi-cta-dark); opacity:1; }
#a403 .lpc-form :is(input[type=submit],button[type=submit]) { background:var(--aichi-cta); border-color:var(--aichi-cta); font-weight:700; box-shadow:0 4px 12px rgba(194,80,12,.28); }
#a403 .lpc-form :is(input[type=submit],button[type=submit]):hover { background:var(--aichi-cta-dark); }
#a403 .lpc-form--fv .lpc-submit input[type=submit] { height:54px; font-size:17px; }

/* v09450: 代表の写真を横長に(ほかの2枚と同じ大きさ) */
#a403 .a403-role .a403-point-photo { object-fit:cover; object-position:center; padding:0; background:none; }

/* Lower-page redesign: scoped to #price and the sections after it.
   Earlier rules are retained to preserve the approved upper half. */
body.sampo-aichi-lp-page #a403 > :is(#price,#taisei,#process-flow,#faq,.aichi-cta,#contact,#erabu,#area) { padding:88px 0 !important; }
body.sampo-aichi-lp-page #a403 > #price { background:#fff; }
#a403 #price .a403-price-head { display:block; }
#a403 #price .a403-price-head h2 { font-size:clamp(36px,4.2vw,56px); line-height:1.5; }
#a403 #price .a403-eyebrow { display:inline-block; padding-bottom:8px; border-bottom:1px solid #88a9cf; }
#a403 #price .a403-price-panels { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; margin-top:32px; }
#a403 #price .a403-price-panel { position:relative; isolation:isolate; overflow:hidden; min-width:0; padding:32px; border:1px solid #145483; border-radius:8px; background:#fff; text-align:center; box-shadow:0 4px 12px #0b2a5b08; }
#a403 #price .a403-price-panel-featured { background:#0a3458; color:#fff; }
#a403 #price .a403-price-panel::after { content:""; position:absolute; z-index:-1; width:120%; height:160%; right:-45%; bottom:-100%; border:1px solid #65b5d34d; border-radius:50%; transform:rotate(-25deg); box-shadow:0 0 0 24px #65b5d30a,0 0 0 48px #65b5d30a; }
#a403 #price .a403-price-panel h3 { display:flex; align-items:center; justify-content:center; gap:24px; font:500 30px/1.5 var(--aichi-mincho); }
#a403 #price .a403-price-panel h3::before,#a403 #price .a403-price-panel h3::after { content:""; display:block; width:48px; height:1px; background:#1c64b8; }
#a403 #price .a403-monthly { margin:16px 0; font:500 72px/1.2 var(--aichi-mincho); white-space:nowrap; letter-spacing:-.04em; }
#a403 #price .a403-monthly strong { font-size:1.55em; font-weight:500; letter-spacing:-.06em; }
#a403 #price .a403-price-breakdown { margin:16px 0 0; padding-top:16px; border-top:1px solid #8ab3c5; font:500 22px/1.6 var(--aichi-mincho); }
#a403 #price .a403-price-conditions { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); margin:24px 0; font-size:14px; text-align:center; }
#a403 #price .a403-price-conditions li { padding:0 16px; border-left:1px solid var(--aichi-rule); }
#a403 #price .a403-price-conditions li:first-child { border:0; }
#a403 #price .a403-price-notes { font-size:12px; color:#526776; line-height:1.9; }
#a403 #price .a403-price-total { margin:32px 0 24px; padding:32px; border:0; background:#eaf3fc; border-radius:8px; }
#a403 #price .a403-price-total h3,#a403 #price .a403-support-title { font:500 36px/1.5 var(--aichi-mincho); text-align:center; margin:0 0 24px; }
#a403 #price .a403-inclusions { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:32px; }
#a403 #price .a403-inclusions > div { display:flex; align-items:center; gap:24px; min-width:0; }
#a403 #price .a403-inclusions > div + div { border-left:1px solid #a9c2df; padding-left:32px; }
#a403 #price .a403-inclusions img { width:64px; height:64px; object-fit:contain; flex-shrink:0; }
#a403 #price .a403-inclusions h4 { color:#004da5; font:500 24px/1.5 var(--aichi-mincho); border-bottom:1px solid #8eadd1; padding-bottom:8px; margin-bottom:8px; }
#a403 #price .a403-inclusions p { font-size:14px; }
#a403 #price .a403-comparison-notes { color:#526776; font-size:14px; line-height:1.85; }
#a403 #price .a403-comparison-notes .a403-small { font-size:12px; }
#a403 #price .a403-comparison-notes a { text-decoration:underline; text-underline-offset:3px; }
#a403 #price .a403-support-title { margin-top:48px; }
#a403 #price .a403-supports { gap:16px; }
#a403 #price .a403-supports > div { display:flex; flex-direction:column; align-items:center; padding:24px 16px; border:0; border-radius:8px; background:#ecf8fc; text-align:center; }
#a403 #price .a403-supports > div:nth-child(4n+2),#a403 #price .a403-supports > div:nth-child(4n+4) { background:#fcf8eb; }
#a403 #price .a403-supports > div:nth-child(n+5) { background:#fcf8eb; }
#a403 #price .a403-supports > div:nth-child(6),#a403 #price .a403-supports > div:nth-child(8) { background:#ecf8fc; }
#a403 #price .a403-supports img { width:64px; height:64px; object-fit:contain; margin-bottom:16px; }
#a403 #price .a403-supports h4 { font:500 21px/1.5 var(--aichi-mincho); }
#a403 #price .a403-supports p { margin-top:8px; font-size:14px; color:#526776; }
#a403 #price .a403-price-action { margin:32px auto 0; text-align:center; }
#a403 #price .a403-price-action .a403-btn { width:min(100%,480px); min-height:72px; font:600 28px/1.5 var(--aichi-mincho); }
#a403 :is(#price,#taisei,#process-flow,#faq,.aichi-cta,#contact,#erabu,#area) .a403-btn { border-radius:8px; }
#a403 :is(#price,.aichi-cta,#area) .a403-primary { background:#c2500c; border-color:#c2500c; box-shadow:0 4px 12px #c2500c1a; }
#a403 :is(#price,.aichi-cta,#area) .a403-primary:hover { background:#a84508; }
#a403 #price .a403-price-links { margin-top:24px; gap:8px 32px; }
#a403 #price .a403-price-links a { padding:8px 0; }
#a403 #taisei .a403-role-grid { gap:24px; }
#a403 #taisei .a403-role { padding:0 0 24px; border:1px solid var(--aichi-rule); border-radius:8px; background:white; overflow:hidden; box-shadow:0 4px 12px #0b2a5b05; }
#a403 #taisei .a403-role > :not(img) { margin-left:24px; margin-right:24px; }
#a403 #taisei .a403-tags { gap:8px; }
#a403 #taisei .a403-tags li { border:1px solid #b8cbd3; border-radius:999px; padding:8px 16px; background:#fff; letter-spacing:0; }
body.sampo-aichi-lp-page #a403 > #process-flow { background:#eaf3fc; }
#a403 #process-flow h2,#a403 #process-flow > .a403-wrap > .a403-eyebrow { text-align:center; }
#a403 #process-flow .a403-flow-grid { gap:64px; }
#a403 #process-flow .a403-flow-grid article > div { padding:0; }
#a403 #process-flow .a403-step-number { color:#004da5; font:500 72px/1.2 var(--aichi-mincho); text-align:center; margin:0 0 16px; }
#a403 #process-flow h3 { text-align:center; font-family:var(--aichi-mincho); }
#a403 #process-flow .a403-flow-grid article:not(:last-child)::after { content:"→"; width:32px; height:auto; top:48px; right:-48px; background:none; color:#004da5; font:32px/1 serif; }
#a403 #faq .a403-faq-grid { grid-template-columns:minmax(0,1fr); gap:32px; }
#a403 #faq .a403-faq-list { display:grid; gap:16px; }
#a403 #faq details { padding:0; border:1px solid var(--aichi-rule); border-radius:8px; background:#fff; }
#a403 #faq summary { position:relative; padding:24px 64px 24px 24px; list-style:none; }
#a403 #faq summary::-webkit-details-marker { display:none; }
#a403 #faq summary::after { content:"+"; position:absolute; top:24px; right:24px; color:#004da5; font:24px/1.3 sans-serif; }
#a403 #faq details[open] summary::after { content:"−"; }
#a403 #faq details p { margin:0; padding:0 24px 24px; }
#a403 .aichi-cta .a403-final-scene img { border-radius:8px; }
body.sampo-aichi-lp-page #a403 #contact .a403-form-wrap { max-width:1200px; display:grid; grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr); align-items:start; gap:64px; }
#a403 #contact .a403-form-checks { display:grid; gap:8px; }
#a403 #contact .lpc-form { min-width:0; padding:32px; border-radius:8px; box-shadow:0 4px 16px #0b2a5b06; }
#a403 #contact .a403-recaptcha { font-size:12px; color:#526776; }
#a403 #erabu .a403-erabu-grid { display:grid; gap:16px; margin-bottom:24px; }
#a403 #erabu .a403-erabu-grid > div { padding:24px; border:1px solid var(--aichi-rule); border-radius:8px; background:#fff; }
#a403 :is(#erabu,#area) h2 { font-size:32px; }
#a403 #area .a403-area-card { padding:24px 0; }
#a403 #area .a403-wrap > p:has(> strong) { padding:16px 0; margin:0; border-bottom:1px solid #e3eaee; line-height:2; }
#a403 #area .a403-wrap > p > strong { display:block; font-weight:700; }
@media (max-width:760px) {
  body.sampo-aichi-lp-page #a403 > :is(#price,#taisei,#process-flow,#faq,.aichi-cta,#contact,#erabu,#area) { padding:56px 0 !important; }
  #a403 #price .a403-price-head h2 { font-size:32px; }
  #a403 #price .a403-price-panels,#a403 #price .a403-inclusions,#a403 #price .a403-supports,#a403 #price .a403-price-links { grid-template-columns:minmax(0,1fr); }
  #a403 #price .a403-price-panel { padding:24px 16px; }
  #a403 #price .a403-price-panel h3 { font-size:24px; gap:16px; }
  #a403 #price .a403-monthly { font-size:52px; }
  #a403 #price .a403-price-breakdown { font-size:18px; }
  #a403 #price .a403-price-conditions { grid-template-columns:minmax(0,1fr); gap:8px; text-align:left; }
  #a403 #price .a403-price-conditions li { padding:0; border:0; }
  #a403 #price .a403-price-total { padding:24px 16px; }
  #a403 #price .a403-price-total h3,#a403 #price .a403-support-title { font-size:26px; }
  #a403 #price .a403-inclusions { gap:24px; }
  #a403 #price .a403-inclusions > div { gap:16px; }
  #a403 #price .a403-inclusions > div + div { border-left:0; border-top:1px solid #a9c2df; padding:24px 0 0; }
  #a403 #price .a403-inclusions img { width:48px; height:48px; }
  #a403 #price .a403-inclusions h4 { font-size:20px; }
  #a403 #price .a403-supports > div { padding:24px; }
  #a403 #price .a403-price-action .a403-btn { font-size:24px; min-height:64px; }
  #a403 #process-flow .a403-flow-grid { gap:64px; }
  #a403 #process-flow .a403-step-number { font-size:56px; }
  #a403 #process-flow .a403-flow-grid article:not(:last-child)::after { content:"↓"; top:auto; bottom:-48px; right:auto; left:calc(50% - 16px); width:32px; height:32px; }
  #a403 #faq summary { padding:24px 48px 24px 16px; }
  #a403 #faq summary::after { right:16px; }
  #a403 #faq details p { padding:0 16px 24px; }
  body.sampo-aichi-lp-page #a403 #contact .a403-form-wrap { grid-template-columns:minmax(0,1fr); gap:32px; }
  #a403 #contact .lpc-form { padding:24px; }
  #a403 :is(#erabu,#area) h2 { font-size:28px; }
}

/* v09451: 左上は全ページ共通のマーク(他ページの .sc-brand と同じ見た目) */
#a403 .a403-brand { display:inline-flex; align-items:center; gap:10px; font-family:inherit; letter-spacing:0; color:var(--aichi-navy); text-decoration:none; min-width:0; }
#a403 .a403-brand-mark { width:38px; height:38px; flex:0 0 38px; object-fit:contain; }
#a403 .a403-brand-text { display:flex; flex-direction:column; line-height:1.2; min-width:0; }
#a403 .a403-brand-name { font-size:18px; font-weight:700; letter-spacing:.02em; white-space:nowrap; }
#a403 .a403-brand-tag { font-size:10px; font-weight:600; white-space:nowrap; }
/* 電話は押せる見た目に */
#a403 .a403-header-phone { display:inline-flex; align-items:center; gap:8px; min-height:44px; padding:0 16px; border:1.5px solid var(--aichi-navy); border-radius:8px; background:#fff; font-family:inherit; font-size:17px; font-weight:700; color:var(--aichi-navy); text-decoration:none; white-space:nowrap; transition:background .15s; }
#a403 .a403-header-phone:hover { background:#eef3f7; }
#a403 .a403-header-phone img { width:20px; height:20px; flex:0 0 20px; }
#a403 .a403-phone a { display:inline-flex; align-items:center; gap:10px; min-height:54px; padding:0 22px; border-radius:8px; background:#fff; color:var(--aichi-navy); font:700 22px/1 inherit; font-family:inherit; text-decoration:none; }
#a403 .a403-phone a img { width:22px; height:22px; flex:0 0 22px; }
/* 手書き線は画像 */
#a403 .a403-handline { position:relative; display:inline-block; }
#a403 .a403-handline-img { position:absolute; left:-3%; bottom:-.14em; width:106%; height:.16em; object-fit:fill; max-width:none; pointer-events:none; }
/* 困りごとの見出しは写真を消したので1列(2列のままだと iPhone で見出しが潰れる) */
#a403 .a403-concerns-head { display:block; }
/* フォームの枠を見やすく(カードと入力欄) */
#a403 .lpc-form--fv { border:1.5px solid var(--aichi-navy); border-radius:10px; background:#fff; box-shadow:0 10px 28px rgba(11,42,91,.14); }
#a403 .lpc-form input:not([type=hidden]):not([type=submit]), #a403 .lpc-form textarea { border:1.5px solid #5f7188 !important; border-radius:6px; background:#fff; padding:8px 12px !important; }
#a403 .lpc-form input:not([type=hidden]):not([type=submit]):focus, #a403 .lpc-form textarea:focus { border-color:var(--aichi-navy) !important; outline:2px solid rgba(24,86,158,.35); outline-offset:1px; }
#a403 .lpc-form--fv .lpc-field label { font-weight:700; }
/* 「送信前に」を消して1行に */
#a403 .lpc-form .recaptcha-note .recaptcha-note__text:first-child { display:none; }
#a403 .lpc-form--fv form { grid-template-columns:minmax(0,1fr) minmax(0,1fr) 248px; }
#a403 .lpc-form .recaptcha-note { white-space:nowrap; font-size:12px; }
#a403 .lpc-form .recaptcha-note span { display:inline; }
/* サポートのアイコンは白地の絵なのでカードの色になじませる */
#a403 .a403-supports img { mix-blend-mode:multiply; object-fit:contain; }
@media (max-width:760px) {
  #a403 .a403-header .a403-wrap { min-height:60px; gap:8px; }
  #a403 .a403-brand { gap:6px; }
  #a403 .a403-brand-mark { width:30px; height:30px; flex-basis:30px; }
  #a403 .a403-brand-name { font-size:14px; }
  #a403 .a403-brand-tag { display:none; }
  #a403 .a403-header-phone { min-height:40px; padding:0 10px; gap:5px; font-size:14px; }
  #a403 .a403-header-phone img { width:15px; height:15px; flex-basis:15px; }
  #a403 .a403-phone a { width:100%; justify-content:center; }
  #a403 .lpc-form--fv form { grid-template-columns:minmax(0,1fr) !important; gap:10px; }
  #a403 .lpc-form .recaptcha-note { white-space:normal; }
  /* サポートは2列で全体を短く */
  #a403 .a403-supports h4 { font-size:15px; letter-spacing:0; word-break:keep-all; overflow-wrap:anywhere; }
  #a403 .a403-supports { grid-template-columns:repeat(2,minmax(0,1fr)) !important; gap:10px !important; }
  #a403 .a403-supports > div { padding:14px 10px !important; }
  #a403 .a403-supports img { width:56px !important; height:56px !important; }
}

/* v09453: 社名は共通ヘッダー(.sc-brand)と同じ書体・太さ・色に */
#a403 .a403-brand { font-family:"Noto Sans JP","Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif !important; font-weight:800; }
#a403 .a403-brand-name { font-size:19px; font-weight:800; letter-spacing:normal; color:#0a2540; }
#a403 .a403-brand-tag { font-size:10px; font-weight:700; letter-spacing:.04em; color:#0b4d78; }
/* v09453: スマホはメインコピーのすぐ下に画像を大きく見せる */
@media (max-width:760px) {
  #a403 .a403-brand-name { font-size:18px; }
  #a403 .a403-brand-tag { display:block; font-size:9px; }
  #a403 .a403-hero-main { display:flex !important; flex-direction:column; align-items:stretch; padding:18px 0 28px !important; }
  #a403 .a403-hero-main::before { display:none !important; }
  #a403 .a403-hero-copy { display:contents !important; }
  #a403 .a403-hero-copy h1 { order:1; margin:0 20px 16px !important; }
  #a403 .a403-hero-background { order:2; position:relative !important; inset:auto !important; display:block !important; width:100% !important; height:232px !important; opacity:1 !important; z-index:0; }
  #a403 .a403-hero-description { order:3; margin:16px 20px !important; }
  #a403 .a403-hero-copy .lpc-form--fv { order:4; margin-left:20px !important; margin-right:20px !important; width:auto !important; }
  #a403 .a403-hero-booking { order:5; margin-left:20px !important; margin-right:20px !important; }
  #a403 .a403-hero-background img { position:static !important; display:block; width:100% !important; height:100% !important; object-fit:cover; object-position:center; opacity:1 !important; filter:none !important; mask-image:none !important; -webkit-mask-image:none !important; }
  #a403 .aichi-fv::before, #a403 .aichi-fv::after, #a403 .a403-hero-background::before, #a403 .a403-hero-background::after { display:none !important; }
  #a403 .aichi-fv { background:#fff !important; }
}

/* v09455: 帯は角田が Blog Floating Button の設定でこのページだけ外すので、帯のための下の余白を外す */
body.sampo-aichi-lp-page { padding-bottom:0 !important; }

/* v09460: 青をページの骨格に */
body.sampo-aichi-lp-page #a403 .a403-proof-band {
  background:#1960A8;
  border-bottom-color:#1960A8;
  color:#fff;
}
body.sampo-aichi-lp-page #a403 .a403-proof-band ul { padding-block:24px; }
body.sampo-aichi-lp-page #a403 .a403-proof-band li { border-left-color:rgba(255,255,255,.35); }
body.sampo-aichi-lp-page #a403 .a403-proof-band strong,
body.sampo-aichi-lp-page #a403 .a403-proof-band small { color:#fff; }

body.sampo-aichi-lp-page #a403 .a403-eyebrow,
body.sampo-aichi-lp-page #a403 #price .a403-eyebrow {
  display:block;
  padding:0;
  border:0;
  color:#1960A8;
  font-weight:700;
}
body.sampo-aichi-lp-page #a403 .a403-eyebrow::before {
  content:"";
  display:inline-block;
  width:24px;
  height:3px;
  margin-right:10px;
  vertical-align:middle;
  background:currentColor;
}

body.sampo-aichi-lp-page #a403 #price .a403-price-panel {
  background:#fff;
  border-color:#1960A8;
  color:#0B2A5B;
  box-shadow:none;
}
body.sampo-aichi-lp-page #a403 #price .a403-price-panel-featured {
  background:linear-gradient(120deg,#0F437F,#1960A8);
  color:#fff;
}
body.sampo-aichi-lp-page #a403 #price .a403-price-panel::after { display:none; }
body.sampo-aichi-lp-page #a403 #price .a403-price-panel h3::before,
body.sampo-aichi-lp-page #a403 #price .a403-price-panel h3::after { background:#2A7AC9; }
body.sampo-aichi-lp-page #a403 #price .a403-price-panel-featured h3::before,
body.sampo-aichi-lp-page #a403 #price .a403-price-panel-featured h3::after { background:#C9DDF2; }
body.sampo-aichi-lp-page #a403 #price .a403-price-breakdown { border-top-color:rgba(255,255,255,.4); }
body.sampo-aichi-lp-page #a403 #price .a403-supports > div {
  background:#EAF3FC;
  border:1px solid #C9DDF2;
}
body.sampo-aichi-lp-page #a403 #price .a403-inclusions h4 { color:#1960A8; border-bottom-color:#C9DDF2; }

body.sampo-aichi-lp-page #a403 > .aichi-cta {
  background:linear-gradient(120deg,#0F437F,#1960A8);
  color:#fff;
}
body.sampo-aichi-lp-page #a403 .aichi-cta .a403-eyebrow { color:#fff; }
body.sampo-aichi-lp-page #a403 #process-flow .a403-step-number,
body.sampo-aichi-lp-page #a403 #process-flow .a403-step-note,
body.sampo-aichi-lp-page #a403 #process-flow .a403-flow-grid article:not(:last-child)::after,
body.sampo-aichi-lp-page #a403 #faq summary::after { color:#1960A8; }

body.sampo-aichi-lp-page #a403 .a403-mid-cta {
  padding:32px;
  border:1px solid #C9DDF2;
  border-left:5px solid #1960A8;
  border-radius:8px;
  background:#fff;
}
body.sampo-aichi-lp-page #a403 .a403-mid-cta > div { min-width:0; }
body.sampo-aichi-lp-page #a403 > #taisei,
body.sampo-aichi-lp-page #a403 > #faq { background:#EAF3FC; }
body.sampo-aichi-lp-page #a403 > #process-flow { background:#fff; }

@media (max-width:760px) {
  body.sampo-aichi-lp-page #a403 .a403-proof-band ul { padding-block:20px; }
  body.sampo-aichi-lp-page #a403 .a403-proof-band li:nth-child(even) {
    padding-left:12px;
    border-left:1px solid rgba(255,255,255,.35);
  }
  body.sampo-aichi-lp-page #a403 .a403-mid-cta { padding:24px 16px; }
  body.sampo-aichi-lp-page #a403 .a403-mid-cta .a403-actions { flex-direction:column; align-items:stretch; }
  body.sampo-aichi-lp-page #a403 .a403-mid-cta .a403-btn { width:100%; min-width:0; padding-inline:12px; }
}

/* v09460: 青と白。淡い青のイラストが映えるよう、イラストのある面は白に(角田「背景も白つかっていいから」) */
body.sampo-aichi-lp-page #a403 > :is(#nayami,#case,#taisei,#faq,#contact,#area){background:#fff}
body.sampo-aichi-lp-page #a403 > :is(#reason,#price,#process-flow,#erabu){background:#EAF3FC}
body.sampo-aichi-lp-page #a403 #price :is(.a403-supports > div,.a403-price-total){background:#fff}

/* v09463: 動き(JS が sc-m-pre を付けたものだけ隠す。動きを減らす設定では JS が付けない) */
body.sampo-aichi-lp-page #a403 .sc-m-pre{opacity:0 !important;translate:0 18px !important;transition:none !important}
body.sampo-aichi-lp-page #a403 .sc-m-in{opacity:1;translate:0 0;transition:opacity .6s ease,translate .6s cubic-bezier(.16,.84,.24,1) !important;transition-delay:calc(var(--sc-m-i,0)*90ms) !important}
body.sampo-aichi-lp-page #a403 .sc-m-pre .a403-step-number{scale:.55;opacity:0}
body.sampo-aichi-lp-page #a403 .sc-m-in .a403-step-number{transition:scale .5s cubic-bezier(.2,1.5,.4,1) .15s,opacity .3s ease .15s}
body.sampo-aichi-lp-page #a403 .a403-handline-img{animation:sc-draw .9s cubic-bezier(.3,.7,.3,1) .4s both}
@keyframes sc-draw{from{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0 0 0 0)}}
body.sampo-aichi-lp-page #a403 a.a403-primary.sc-shine{position:relative;overflow:hidden}
body.sampo-aichi-lp-page #a403 a.a403-primary.sc-shine::after{content:"";position:absolute;top:0;bottom:0;left:-45%;width:35%;background:linear-gradient(105deg,transparent,rgba(255,255,255,.5),transparent);pointer-events:none;animation:sc-shine 1.1s ease .3s 1 both}
@keyframes sc-shine{from{left:-45%}to{left:115%}}
body.sampo-aichi-lp-page #a403 .a403-faq-list details[open] > p{animation:sc-faq .35s ease both}
@keyframes sc-faq{from{opacity:0;translate:0 -6px}to{opacity:1;translate:0 0}}
@media (hover:hover) and (pointer:fine){
body.sampo-aichi-lp-page #a403 :is(.scintro-issue-card,.a403-role,.a403-area-card,#price .a403-price-panel,#price .a403-supports > div,.a403-erabu-grid > div){transition:translate .2s ease,box-shadow .2s ease}
body.sampo-aichi-lp-page #a403 :is(.scintro-issue-card,.a403-role,.a403-area-card,#price .a403-price-panel,#price .a403-supports > div,.a403-erabu-grid > div):hover{translate:0 -3px;box-shadow:0 10px 24px #0b2a5b14}
}
@media print{body.sampo-aichi-lp-page #a403 .sc-m-pre{opacity:1 !important;translate:none !important}}

/* v09463: 悩みの章(/introduction/ と同じ) */
#a403 .a403-intro-issue .scintro-icon-img{display: block;flex: 0 0 auto;object-fit: cover;border-radius: 50%}
#a403 .a403-intro-issue .scintro-icon-img--summary{width: 130px;height: 130px}
#a403 .a403-intro-issue .scintro-icon-img--issue{width: 92px;height: 92px;margin: 0px auto 18px}
#a403 .a403-intro-issue .scintro-sec3{position: relative;box-sizing: border-box;min-height: 1500px;padding: 25px 28px 27px;overflow: hidden;background: linear-gradient(rgba(255, 255, 255, 0.88) 0%, rgba(255, 255, 255, 0.98) 31%, rgb(255, 255, 255) 100%), linear-gradient(90deg, rgb(229, 237, 246) 0%, rgb(255, 255, 255) 28%, rgb(255, 255, 255) 72%, rgb(229, 237, 246) 100%);color: rgb(0, 28, 76)}
#a403 .a403-intro-issue .scintro-sec3__photo{position: absolute;z-index: 0;top: 0px;width: 305px;height: 272px;object-fit: cover;opacity: 0.24;filter: grayscale(1);pointer-events: none}
#a403 .a403-intro-issue .scintro-sec3__photo--left{left: 0px;object-position: 30% center}
#a403 .a403-intro-issue .scintro-sec3__photo--right{right: 0px;object-position: 100% center}
#a403 .a403-intro-issue .scintro-sec3__badge{position: relative;z-index: 2;display: flex;align-items: center;justify-content: center;width: 144px;height: 29px;margin: 0px auto;border-radius: 15px;background: rgb(0, 28, 76);color: rgb(255, 255, 255);font-size: 15px;font-weight: 900;letter-spacing: 0.12em}
#a403 .a403-intro-issue .scintro-sec3__lead{position: relative;z-index: 2;display: flex;align-items: center;justify-content: center;gap: 31px;margin: 18px 0px 6px;color: rgb(0, 28, 76);font-size: 24px;font-weight: 900;letter-spacing: 0.05em}
#a403 .a403-intro-issue .scintro-sec3__lead::before,#a403 .a403-intro-issue .scintro-sec3__lead::after{content: "";width: 45px;height: 1px;background: rgb(0, 28, 76);opacity: 0.65}
#a403 .a403-intro-issue .scintro-sec3__title{position: relative;z-index: 2;margin: 0px;color: rgb(0, 28, 76);font-family: "Yu Mincho", "Hiragino Mincho ProN", "Noto Serif JP", serif;font-size: 55px;font-weight: 900;line-height: 1.35;letter-spacing: 0.025em;text-align: center}
#a403 .a403-intro-issue .scintro-sec3__title em{position: relative;color: rgb(24, 86, 158);font-style: normal}
#a403 .a403-intro-issue .scintro-sec3__title em::after{content: "";position: absolute;left: -6px;right: -6px;bottom: -10px;height: 8px;border-top: 3px solid rgba(24, 86, 158, 0.75);border-radius: 50%}
#a403 .a403-intro-issue .scintro-sec3__scribble{position: absolute;z-index: 2;top: 41px;width: 78px;height: 54px;border: 2.5px solid rgb(22, 90, 167);border-radius: 48% 44% 51% 45%;opacity: 0.9;filter: drop-shadow(rgba(22, 90, 167, 0.25) 0px 2px 6px)}
#a403 .a403-intro-issue .scintro-sec3__scribble::before,#a403 .a403-intro-issue .scintro-sec3__scribble::after{content: "";position: absolute;inset: -7px 5px 3px -3px;border: 2.5px solid rgb(22, 90, 167);border-radius: 51% 41% 44% 53%;transform: rotate(26deg)}
#a403 .a403-intro-issue .scintro-sec3__scribble::after{inset: 3px -8px -5px 5px;transform: rotate(-31deg)}
#a403 .a403-intro-issue .scintro-sec3__scribble--left{left: 213px;transform: rotate(-15deg)}
#a403 .a403-intro-issue .scintro-sec3__scribble--right{right: 242px;transform: rotate(15deg)}
#a403 .a403-intro-issue .scintro-sec3__sidecopy{position: absolute;z-index: 2;margin: 0px;color: rgb(0, 28, 76);font-size: 18px;font-weight: 700;line-height: 1.45;letter-spacing: 0.05em;transform: rotate(-8deg)}
#a403 .a403-intro-issue .scintro-sec3__sidecopy::after{content: "";position: absolute;left: -3px;right: -15px;bottom: -8px;height: 7px;border-top: 2px solid rgb(0, 28, 76);border-radius: 50%}
#a403 .a403-intro-issue .scintro-sec3__sidecopy--left{left: 214px;top: 170px}
#a403 .a403-intro-issue .scintro-sec3__sidecopy--right{right: 198px;top: 184px;transform: rotate(5deg)}
#a403 .a403-intro-issue .scintro-sec3__cards{position: relative;z-index: 2;display: grid;grid-template-columns: repeat(6, minmax(0px, 1fr));gap: 24px;width: min(1220px, 100%);margin: 46px auto 0px}
#a403 .a403-intro-issue .scintro-sec3__cards .scintro-issue-card{grid-column: span 2}
#a403 .a403-intro-issue .scintro-sec3__cards .scintro-issue-card:nth-child(4){grid-column: 2 / span 2}
#a403 .a403-intro-issue .scintro-sec3__cards .scintro-issue-card:nth-child(5){grid-column: 4 / span 2}
#a403 .a403-intro-issue .scintro-issue-card{box-sizing: border-box;height: 468px;padding: 20px 18px 17px;border-radius: 9px;background: rgba(255, 255, 255, 0.94);box-shadow: rgba(0, 38, 87, 0.12) 0px 12px 30px;overflow: hidden}
#a403 .a403-intro-issue .scintro-issue-card h3{margin: 0px;min-height: 67px;color: rgb(0, 28, 76);font-size: 20px;font-weight: 900;line-height: 1.55;text-align: center}
#a403 .a403-intro-issue .scintro-issue-photo{height: 154px;margin-top: 14px;overflow: hidden;border-radius: 2px;background: rgb(232, 238, 242)}
#a403 .a403-intro-issue .scintro-issue-photo img{display: block;width: 100%;height: 100%;object-fit: cover;filter: saturate(0.88)}
#a403 .a403-intro-issue .scintro-issue-card ul{margin: 18px 0px 0px;padding: 0px;list-style: none}
#a403 .a403-intro-issue .scintro-issue-card li{position: relative;margin-bottom: 13px;padding-left: 25px;color: rgb(0, 28, 76);font-size: 13px;font-weight: 900;line-height: 1.45}
#a403 .a403-intro-issue .scintro-issue-card li::before{content: "";position: absolute;left: 0px;top: 1px;width: 15px;height: 15px;border-radius: 50%;background: rgb(24, 86, 158)}
#a403 .a403-intro-issue .scintro-issue-card li::after{content: "";position: absolute;left: 5px;top: 4px;width: 4px;height: 7px;border-right: 2px solid rgb(255, 255, 255);border-bottom: 2px solid rgb(255, 255, 255);transform: rotate(45deg)}
#a403 .a403-intro-issue .scintro-sec3__bottom{position: relative;z-index: 2;display: grid;grid-template-columns: 1fr;gap: 104px;align-items: start;width: min(1260px, 100%);margin: 56px auto 0px}
#a403 .a403-intro-issue .scintro-sec3__message{max-width: 820px;justify-self: center;padding-bottom: 0px;color: rgb(0, 28, 76);font-family: "Yu Mincho", "Hiragino Mincho ProN", "Noto Serif JP", serif;text-align: center}
#a403 .a403-intro-issue .scintro-sec3__message p{margin: 0px 0px 32px;font-size: 36px;font-weight: 900;line-height: 1.9;letter-spacing: 0.04em}
#a403 .a403-intro-issue .scintro-sec3__message p:last-child{margin-bottom: 0px}
#a403 .a403-intro-issue .scintro-sec3__message em{position: relative;color: rgb(24, 86, 158);font-style: normal}
#a403 .a403-intro-issue .scintro-sec3__message em::after{content: "";position: absolute;left: -3px;right: -3px;bottom: -9px;height: 7px;border-top: 2px solid rgba(24, 86, 158, 0.75);border-radius: 50%}
#a403 .a403-intro-issue .scintro-sec3__reason{position: relative;display: grid;grid-template-columns: 1fr;gap: 40px;box-sizing: border-box;justify-self: center;width: min(1080px, 100%);min-height: 0px;margin-top: 0px;padding: 68px 48px 56px;border: 1px solid rgb(24, 86, 158);border-radius: 14px;background: rgba(255, 255, 255, 0.92)}
#a403 .a403-intro-issue .scintro-sec3__reason-badge{position: absolute;left: 28px;top: -24px;display: flex;align-items: center;justify-content: center;width: 168px;height: 48px;border-radius: 24px;background: rgb(0, 28, 76);color: rgb(255, 255, 255);font-size: 19px;font-weight: 900}
#a403 .a403-intro-issue .scintro-sec3__reason-main{display: flex;align-items: center;justify-content: center;gap: 28px;padding: 0px 0px 36px;border-bottom: 1px solid rgb(184, 198, 214)}
#a403 .a403-intro-issue .scintro-sec3__reason-main p{margin: 0px;color: rgb(0, 28, 76);font-size: 24px;font-weight: 900;line-height: 1.85}
#a403 .a403-intro-issue .scintro-sec3__reason ul{margin: 0px auto;padding: 0px;width: max-content;max-width: 100%;list-style: none}
#a403 .a403-intro-issue .scintro-sec3__reason li{position: relative;margin-bottom: 26px;padding-left: 54px;color: rgb(0, 28, 76);font-size: 24px;font-weight: 900;line-height: 1.45}
#a403 .a403-intro-issue .scintro-sec3__reason li:last-child{margin-bottom: 0px}
#a403 .a403-intro-issue .scintro-sec3__reason li::before{content: "";position: absolute;left: 0px;top: 2px;width: 38px;height: 38px;border-radius: 50%;background: rgb(24, 86, 158)}
#a403 .a403-intro-issue .scintro-sec3__reason li::after{content: "";position: absolute;left: 14px;top: 12px;width: 9px;height: 16px;border-right: 3px solid rgb(255, 255, 255);border-bottom: 3px solid rgb(255, 255, 255);transform: rotate(45deg)}
#a403 .a403-intro-issue .scintro-sec3__reason strong{color: rgb(24, 86, 158);font-size: 44px;line-height: 1}
@media (max-width: 900px){#a403 .a403-intro-issue .scintro-sec3{padding: 36px 18px}}
@media (max-width: 900px){#a403 .a403-intro-issue .scintro-sec3__title{font-size: 36px}}
@media (max-width: 900px){#a403 .a403-intro-issue .scintro-sec3__cards,#a403 .a403-intro-issue .scintro-sec3__bottom,#a403 .a403-intro-issue .scintro-sec3__reason{grid-template-columns: 1fr}}
@media (max-width: 900px){#a403 .a403-intro-issue .scintro-sec3__cards .scintro-issue-card,#a403 .a403-intro-issue .scintro-sec3__cards .scintro-issue-card:nth-child(4),#a403 .a403-intro-issue .scintro-sec3__cards .scintro-issue-card:nth-child(5){grid-column: 1 / -1}}
@media (max-width: 900px){#a403 .a403-intro-issue .scintro-sec3__photo,#a403 .a403-intro-issue .scintro-sec3__scribble,#a403 .a403-intro-issue .scintro-sec3__sidecopy{display: none}}
@media (max-width: 900px){#a403 .a403-intro-issue .scintro-sec3__reason-main{border-right: 0px;border-bottom: 1px solid rgb(184, 198, 214);padding: 0px 0px 22px}}
@media (min-width: 769px){#a403 .a403-intro-issue .scintro-sec3{padding: 160px clamp(48px, 6vw, 120px)}}
@media (hover: hover){#a403 .a403-intro-issue .scintro-issue-card:hover{transform: translateY(-8px);box-shadow: rgba(8, 70, 100, 0.16) 0px 24px 56px}}
@media (min-width: 769px){#a403 .a403-intro-issue .scintro-sec3__photo{width: clamp(300px, 26vw, 380px);height: clamp(264px, 23vw, 336px);border-radius: 20px;box-shadow: rgba(0, 33, 66, 0.18) 0px 32px 64px}}
@media (min-width: 769px){#a403 .a403-intro-issue .scintro-sec3__sidecopy{padding: 10px 18px;background: rgba(255, 255, 255, 0.96);border-radius: 10px;box-shadow: rgba(0, 33, 66, 0.1) 0px 6px 18px;white-space: nowrap}}
@media (min-width: 769px){#a403 .a403-intro-issue .scintro-sec3__photo--left{top: clamp(420px, 32vw, 500px);right: auto;left: calc(50% - clamp(340px, 28vw, 420px));object-position: 35% center}}
@media (min-width: 769px){#a403 .a403-intro-issue .scintro-sec3__photo--right{top: clamp(580px, 42vw, 680px);right: auto;left: calc(50% - clamp(20px, 2vw, 40px));object-position: 60% center}}
@media (min-width: 769px){#a403 .a403-intro-issue .scintro-sec3__scribble--left{top: clamp(400px, 30vw, 480px);left: calc(50% - clamp(120px, 10vw, 160px))}}
@media (min-width: 769px){#a403 .a403-intro-issue .scintro-sec3__scribble--right{top: clamp(560px, 40vw, 660px);right: auto;left: calc(50% + clamp(220px, 18vw, 280px))}}
@media (min-width: 769px){#a403 .a403-intro-issue .scintro-sec3__sidecopy--left{top: clamp(640px, 46vw, 740px);left: calc(50% - clamp(130px, 12vw, 180px));transform: rotate(-2deg)}}
@media (min-width: 769px){#a403 .a403-intro-issue .scintro-sec3__sidecopy--right{top: clamp(800px, 56vw, 920px);right: auto;left: calc(50% + clamp(220px, 19vw, 290px));transform: rotate(3deg)}}
@media (min-width: 769px){#a403 .a403-intro-issue .scintro-sec3__cards{margin-top: clamp(700px, 52vw, 860px);gap: 32px;max-width: 1200px;margin-inline: auto}}
@media (min-width: 769px){#a403 .a403-intro-issue .scintro-sec3__cards .scintro-issue-card{position: relative;display: flex;flex-direction: column;align-items: stretch;padding: 0px 0px 32px;overflow: hidden;border: 1px solid rgb(227, 237, 242);border-radius: 18px;background: rgb(255, 255, 255);box-shadow: rgba(8, 70, 100, 0.08) 0px 18px 44px}}
@media (min-width: 769px){#a403 .a403-intro-issue .scintro-sec3__cards .scintro-issue-card .scintro-issue-photo{order: -1;width: 100%;height: clamp(180px, 14vw, 220px);margin: 0px;overflow: hidden}}
@media (min-width: 769px){#a403 .a403-intro-issue .scintro-sec3__cards .scintro-issue-card .scintro-issue-photo img{width: 100%;height: 100%;object-fit: cover;display: block}}
@media (min-width: 769px) and (hover: hover){#a403 .a403-intro-issue .scintro-sec3__cards .scintro-issue-card:hover .scintro-issue-photo img{transform: scale(1.05)}}
@media (min-width: 769px){#a403 .a403-intro-issue .scintro-sec3__cards .scintro-issue-card .scintro-icon-img--issue{display: none}}
@media (min-width: 769px){#a403 .a403-intro-issue .scintro-sec3__cards .scintro-issue-card h3{margin: 28px 28px 20px;color: rgb(0, 28, 76);font-size: clamp(17px, 1.4vw, 20px);font-weight: 900;line-height: 1.55;text-align: center;letter-spacing: 0.02em}}
@media (min-width: 769px){#a403 .a403-intro-issue .scintro-sec3__cards .scintro-issue-card ul{margin: 0px 28px;padding: 20px 0px 0px;border-top: 1px solid rgb(227, 237, 242);list-style: none;display: grid;gap: 12px}}
@media (min-width: 769px){#a403 .a403-intro-issue .scintro-sec3__cards .scintro-issue-card ul li{color: rgb(43, 63, 93);font-size: 14px;font-weight: 700;line-height: 1.65;letter-spacing: 0.02em}}
@media (min-width: 769px){#a403 .a403-intro-issue .scintro-sec3__bottom{margin-top: clamp(96px, 10vw, 160px)}}
@media (min-width: 769px){#a403 .a403-intro-issue .scintro-sec3__message{max-width: min(1180px, -80px + 100vw);margin: 0px auto;padding: clamp(64px, 7vw, 112px) clamp(32px, 4vw, 64px);text-align: center}}
@media (min-width: 769px){#a403 .a403-intro-issue .scintro-sec3__message p{margin: 0px;font-family: "Yu Mincho", "Hiragino Mincho ProN", "Noto Serif JP", serif;font-size: clamp(28px, 2.6vw, 40px);font-weight: 800;line-height: 1.75;letter-spacing: 0.02em}}
@media (min-width: 769px){#a403 .a403-intro-issue .scintro-sec3__message p:first-child{white-space: nowrap;font-size: clamp(30px, 3.7vw, 46px);letter-spacing: 0.01em}}
@media (min-width: 769px){#a403 .a403-intro-issue .scintro-sec3__message p + p{margin-top: clamp(40px, 4vw, 64px)}}
@media (min-width: 769px){#a403 .a403-intro-issue .scintro-sec3__reason{margin-top: clamp(64px, 7vw, 120px)}}
@media (max-width: 768px){#a403 .a403-intro-issue .scintro-sec3__message p:first-child{white-space: normal}}
#a403 .a403-intro-issue .scintro-sec3__reason ul li strong{display: inline-block}
@media (max-width: 640px){#a403 .a403-intro-issue .scintro-sec3__reason{width: 100% !important;max-width: 100% !important;min-width: 0px !important;margin: 40px auto 0px !important;padding: 54px 20px 28px !important;overflow: hidden !important}}
@media (max-width: 640px){#a403 .a403-intro-issue .scintro-sec3__reason-badge{left: 20px !important;top: -22px !important;width: min(180px, 100% - 40px) !important;height: 46px !important;font-size: 18px !important}}
@media (max-width: 640px){#a403 .a403-intro-issue .scintro-sec3__reason-main{display: grid !important;grid-template-columns: 1fr !important;justify-items: center !important;gap: 16px !important;width: 100% !important;min-width: 0px !important;padding: 0px 0px 24px !important;text-align: center !important}}
@media (max-width: 640px){#a403 .a403-intro-issue .scintro-sec3__reason-main .scintro-icon-img--summary{width: 86px !important;height: 86px !important;margin: 0px auto !important}}
@media (max-width: 640px){#a403 .a403-intro-issue .scintro-sec3__reason-main p{width: 100% !important;min-width: 0px !important;margin: 0px !important;font-size: clamp(18px, 5.2vw, 22px) !important;line-height: 1.75 !important;letter-spacing: 0px !important;word-break: keep-all !important;overflow-wrap: anywhere !important}}
@media (max-width: 640px){#a403 .a403-intro-issue .scintro-sec3__reason-main p br{display: none !important}}
@media (max-width: 640px){#a403 .a403-intro-issue .scintro-sec3__reason ul{width: 100% !important;max-width: 100% !important;margin: 0px !important;padding: 0px !important}}
@media (max-width: 640px){#a403 .a403-intro-issue .scintro-sec3__reason li{display: block !important;position: relative !important;min-width: 0px !important;margin: 0px 0px 18px !important;padding: 2px 0px 0px 48px !important;font-size: clamp(16px, 4.5vw, 20px) !important;line-height: 1.45 !important;letter-spacing: 0px !important;word-break: keep-all !important;overflow-wrap: anywhere !important}}
@media (max-width: 640px){#a403 .a403-intro-issue .scintro-sec3__reason li::before,#a403 .a403-intro-issue .scintro-sec3__reason li::after{position: absolute !important}}
@media (max-width: 640px){#a403 .a403-intro-issue .scintro-sec3__reason li::before{left: 0px !important;top: 0.12em !important;width: 38px !important;height: 38px !important}}
@media (max-width: 640px){#a403 .a403-intro-issue .scintro-sec3__reason li::after{left: 13px !important;top: calc(0.12em + 10px) !important;width: 9px !important;height: 16px !important;margin-left: 0px !important}}
@media (max-width: 640px){#a403 .a403-intro-issue .scintro-sec3__reason li b,#a403 .a403-intro-issue .scintro-sec3__reason li strong{display: inline !important;min-width: 0px !important}}
@media (max-width: 640px){#a403 .a403-intro-issue .scintro-sec3__reason strong{font-size: 1.35em !important;line-height: 1 !important;vertical-align: baseline !important}}
@media (max-width: 640px){#a403 .a403-intro-issue .scintro-sec3__reason{overflow: visible !important}}
#a403 .a403-intro-issue.a403-intro-issue .scintro-page > section,#a403 .a403-intro-issue .scintro-page > section{display: block;width: 100%}
@media (max-width: 640px){#a403 .a403-intro-issue.a403-intro-issue .scintro-sec3__message p,#a403 .a403-intro-issue.a403-intro-issue .scintro-sec3__message p:first-child{font-size: 19px !important;line-height: 1.9 !important;letter-spacing: 0.01em !important}}
#a403 .a403-intro-issue.a403-intro-issue .scintro-sec3__badge,#a403 .a403-intro-issue.a403-intro-issue .scintro-sec3__lead,#a403 .a403-intro-issue.a403-intro-issue .scintro-sec3__title,#a403 .a403-intro-issue.a403-intro-issue .scintro-sec3__cards > *,#a403 .a403-intro-issue.a403-intro-issue .scintro-sec3__message p,#a403 .a403-intro-issue.a403-intro-issue .scintro-sec3__reason .scintro-sec3__reason-badge,#a403 .a403-intro-issue.a403-intro-issue .scintro-sec3__reason .scintro-sec3__reason-main,#a403 .a403-intro-issue.a403-intro-issue .scintro-sec3__reason ul li{visibility: visible !important}
#a403 .a403-intro-issue.a403-intro-issue .scintro-sec3{min-height: 0px !important;padding: clamp(72px, 7vw, 112px) clamp(22px, 4vw, 56px) clamp(76px, 8vw, 126px) !important;overflow: hidden !important}
#a403 .a403-intro-issue.a403-intro-issue .scintro-sec3__title{font-size: clamp(38px, 4.8vw, 68px) !important;line-height: 1.25 !important}
#a403 .a403-intro-issue.a403-intro-issue .scintro-sec3__title em::after{bottom: -12px !important;height: 10px !important}
@media (max-width: 768px){#a403 .a403-intro-issue.a403-intro-issue .scintro-sec3{padding-top: 50px !important}}
@media (max-width: 768px){#a403 .a403-intro-issue.a403-intro-issue .scintro-sec3__title{font-size: clamp(34px, 10vw, 44px) !important}}
#a403 .a403-intro-issue.a403-intro-issue .scintro-sec3__badge,#a403 .a403-intro-issue.a403-intro-issue .scintro-sec3__lead,#a403 .a403-intro-issue.a403-intro-issue .scintro-sec3__title{visibility: visible !important}
#a403 .a403-intro-issue.a403-intro-issue .scintro-sec3__badge,#a403 .a403-intro-issue.a403-intro-issue .scintro-sec3__lead,#a403 .a403-intro-issue.a403-intro-issue .scintro-sec3__title{visibility: visible !important}
#a403 .a403-intro-issue.a403-intro-issue .scintro-sec3__badge,#a403 .a403-intro-issue.a403-intro-issue .scintro-sec3__lead,#a403 .a403-intro-issue.a403-intro-issue .scintro-sec3__title,#a403 .a403-intro-issue.a403-intro-issue .scintro-sec3__message p,#a403 .a403-intro-issue.a403-intro-issue .scintro-sec3__reason-badge,#a403 .a403-intro-issue.a403-intro-issue .scintro-sec3__reason-main,#a403 .a403-intro-issue.a403-intro-issue .scintro-sec3__reason li{opacity: 1 !important;visibility: visible !important;transform: none !important;filter: none !important}
#a403 .a403-intro-issue.a403-intro-issue .scintro-sec3,#a403 .a403-intro-issue.a403-intro-issue .scintro-sec3__badge,#a403 .a403-intro-issue.a403-intro-issue .scintro-sec3__lead,#a403 .a403-intro-issue.a403-intro-issue .scintro-sec3__title,#a403 .a403-intro-issue.a403-intro-issue .scintro-sec3__cards > *,#a403 .a403-intro-issue.a403-intro-issue .scintro-sec3__message p,#a403 .a403-intro-issue.a403-intro-issue .scintro-sec3__reason-badge,#a403 .a403-intro-issue.a403-intro-issue .scintro-sec3__reason-main,#a403 .a403-intro-issue.a403-intro-issue .scintro-sec3__reason li{opacity: 1 !important;visibility: visible !important;transform: none !important;filter: none !important}
#a403 .a403-intro-issue .scintro-sec3__message .scintro-sec3__ln{display: block}
#a403 .a403-intro-issue .scintro-sec3__message .scintro-sec3__ln-sp{display: inline}
@media (max-width: 900px){#a403 .a403-intro-issue.a403-intro-issue .scintro-sec3__message em::after{display: none !important}}
@media (max-width: 900px){#a403 .a403-intro-issue .scintro-sec3__message .scintro-sec3__ln-sp{display: block}}
@media (max-width: 600px){#a403 .a403-intro-issue.a403-intro-issue .scintro-sec3__message p{word-break: keep-all;overflow-wrap: normal;font-size: clamp(15px, 4.7vw, 20px) !important}}
#a403 .a403-intro-issue.a403-intro-issue .scintro-issue-photo{background: rgb(242, 247, 248)}
#a403 .a403-intro-issue.a403-intro-issue .scintro-issue-photo img{object-fit: contain !important}
#a403 .a403-intro-issue{font-family:"Noto Sans JP","Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,system-ui,sans-serif;line-height:1.75}
#a403 .a403-intro-issue,#a403 .a403-intro-issue *{font-feature-settings:normal}
#a403 .a403-intro-issue :is(.scintro-sec3__photo,.scintro-sec3__scribble,.scintro-sec3__sidecopy){opacity:1;transform:none;filter:none}
#a403 .a403-intro-issue .scintro-sec3__title{margin-bottom:0}
#a403 .a403-intro-issue .scintro-sec3__sidecopy{margin-top:0}
#a403 .a403-intro-issue .scintro-issue-card h3{font-family:inherit}
@media (max-width:600px){#a403 .a403-intro-issue{font-size:14.04px}#a403 .a403-intro-issue .scintro-issue-card h3{letter-spacing:normal}}
@media (min-width:769px) and (max-width:900px){#a403 .a403-intro-issue.a403-intro-issue .scintro-sec3__cards{margin-top:46px}}
