.line-teaser{display:inline-block;margin-top:20px;color:#fff;background:#08783c;padding:10px 18px;font-size:15px;font-weight:700}.line-service{padding:80px max(24px,calc((100% - 1280px)/2));background:#f0f8f3;border-top:5px solid #07813c}.line-intro h2,.guide-section h2{font-size:clamp(27px,3vw,40px);line-height:1.5;color:#0b2942;margin:12px 0 20px}.line-intro .section-label{color:#08783c}.line-service p,.guide-page p{font-size:16px;line-height:1.9}.line-benefits{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:32px 0}.line-benefits article{background:white;border-top:3px solid #17894b;padding:28px}.line-benefits h3{font-size:21px}.line-benefits small{font-size:14px;color:#157746}.line-benefits mark{background:#ffe8a3;padding:4px 10px;color:#5c4700}.line-benefits a,.line-actions>a{font-size:16px;text-decoration:underline}.line-button{background:#087c3c;color:#fff;border:0;padding:18px 24px;font:700 16px 'Noto Sans JP',sans-serif;cursor:pointer;min-height:48px;border-radius:4px}.line-actions{display:flex;gap:28px;align-items:center;flex-wrap:wrap}.parking-options{grid-template-columns:repeat(3,minmax(0,1fr))!important}.large-note{font-size:16px;margin:24px 0 0}.guide-hero{background:#0b2942;color:white;padding:64px max(24px,calc((100% - 1280px)/2))}.guide-hero h1{font-size:clamp(32px,4vw,56px);line-height:1.45;margin:16px 0}.guide-nav{display:flex;flex-wrap:wrap;gap:12px;margin-top:32px}.guide-nav a{padding:14px 20px;background:white;color:#0b2942;font-size:16px}.guide-section{padding:64px max(24px,calc((100% - 1280px)/2));scroll-margin-top:110px}.guide-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}.rate-card{padding:28px;background:white;border:1px solid #d4dfe7;border-top:4px solid #1c5d9f;scroll-margin-top:110px}.rate-card h3{font-size:28px;line-height:1.5;margin:10px 0}.rate-card small{font-size:13px;letter-spacing:.08em;color:#b52c26}.hours-highlight{padding:14px;background:#eaf3fb;font-weight:700;font-size:21px!important}.hours-list{margin:16px 0}.hours-list div{display:flex;justify-content:space-between;gap:12px;padding:8px 12px;background:#edf3f7;margin-bottom:4px;font-size:16px}.hours-list dd{margin:0;font-weight:700}.guide-page table{border-collapse:collapse;width:100%;font-size:16px;margin:24px 0}.guide-page td,.guide-page th{padding:14px 10px;text-align:left;border-bottom:1px solid #d2dce4;line-height:1.7}.guide-page th{background:#f1f5f8;font-weight:600}.rate-card table{font-size:14px}.rate-card td:last-child{font-weight:700;color:#b93027}.vehicle-section{background:#f0f5f8}.table-scroll{overflow-x:auto}.vehicle-section table{background:white}.vehicle-section thead th{background:#0b2942;color:white}.help-strip{margin-top:28px;border-left:4px solid #1c5d9f;padding:28px;background:#fff;display:flex;align-items:center;gap:24px;flex-wrap:wrap}.help-strip h3{font-size:22px}.help-strip p{margin:8px 0}.help-strip>a{font-size:20px}.large-info{background:#fafafa}.large-info h2{font-size:25px}.guide-page a:not(.logo){text-underline-offset:4px}.guide-section article>a,.large-info>a{font-size:16px;color:#124e84;text-decoration:underline}.points-note{background:#fff1c5;padding:14px 20px}.access-preview{background:#0b2942;color:white}.access-preview h2{color:white}.access-preview article{padding:28px;border:1px solid #698091}.access-preview h3{font-size:24px}.access-preview article>a{color:white}.review-note{max-width:1280px;margin:24px auto;padding:12px 24px;background:#fff6dc;font-size:14px!important}.guide-page .ai-float{z-index:1000}button:focus-visible,a:focus-visible{outline:3px solid #e49c00;outline-offset:4px}
@media(max-width:900px){.guide-columns,.line-benefits{grid-template-columns:1fr}.guide-page .header nav{display:none}.guide-page .header nav.open{display:flex}.line-service,.guide-section{padding:48px 24px}.rate-card{padding:24px}.parking-options{grid-template-columns:1fr!important}}
@media(max-width:480px){.guide-hero{padding:40px 20px}.guide-nav{display:grid;grid-template-columns:1fr 1fr}.guide-nav a{padding:12px;font-size:14px}.rate-card{padding:18px 12px}.rate-card table{font-size:14px}.guide-page td,.guide-page th{padding:12px 6px}.line-button{width:100%}.line-actions{align-items:stretch}.hero .hero-inner{padding-bottom:36px}.line-teaser{font-size:14px}.guide-page .review-bar{font-size:12px}}
/* Let enlarged text and the LINE entry grow within the hero. */
.hero{height:auto;min-height:650px}.hero-inner{height:auto;min-height:650px;padding-bottom:48px}.hero-buttons,.line-teaser{flex-shrink:0}@media(max-width:680px){.hero,.hero-inner{height:auto;min-height:610px}.hero-inner{padding-top:40px;padding-bottom:40px}}

/* Compact entry to the full LINE service details. */
.line-banner-wrap{padding:24px max(24px,calc((100% - 1280px)/2));background:#fff}
.line-banner{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:24px 32px;background:#087c3c;color:#fff;text-decoration:none;border-radius:4px}
.line-banner strong{display:block;font-size:clamp(19px,2vw,24px);line-height:1.6}
.line-banner p{margin:6px 0 0;font-size:16px;line-height:1.7}
.line-banner-link{flex-shrink:0;padding:12px 18px;border:1px solid #fff;border-radius:4px;font-size:16px;font-weight:700}
.line-banner:hover{background:#066832}
#line-service{scroll-margin-top:110px}
@media(max-width:680px){.line-banner{align-items:flex-start;flex-direction:column;gap:16px;padding:22px}.line-banner-wrap{padding:20px 24px}.line-banner-link{font-size:14px;padding:10px 14px}}

.parking-compare{position:relative}.guide-anchor{position:absolute;top:0;scroll-margin-top:110px}.parking-overview{table-layout:fixed}.parking-overview thead th{background:#0b2942;color:#fff}.parking-overview th:first-child{width:20%}.parking-overview td{vertical-align:top}.parking-overview a{color:#124e84;font-weight:700;text-decoration:underline}.compare-note{color:#485d70}.parking-detail{border-top:1px solid #d4dfe7}.parking-detail>small{color:#b52c26;letter-spacing:.08em;font-size:14px}.parking-detail h3{font-size:22px;color:#0b2942;margin:0 0 18px}.size-panel{background:#edf3f7;padding:28px;margin:24px 0 32px;border-left:4px solid #1c5d9f}.size-facts{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin:0 0 20px}.size-facts div{padding:14px;background:white}.size-facts dt{font-size:14px;color:#485d70}.size-facts dd{margin:6px 0 0;font-size:20px;font-weight:700;color:#0b2942}.size-panel p{margin-bottom:0}.parking-rates{max-width:960px}.parking-rates td:last-child{font-weight:700;color:#b93027}.parking-rates .hours-list{max-width:620px}.parking-overview td,.parking-overview th{overflow-wrap:anywhere}@media(max-width:680px){.size-panel{padding:20px 16px}.size-facts{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.size-facts dd{font-size:18px}.guide-page .parking-overview{font-size:14px}.guide-page .parking-overview td,.guide-page .parking-overview th{padding:14px 7px}.parking-overview th:first-child{width:19%}.parking-detail h2{font-size:27px}}
