/* P01 white/red presentation candidate. Scope prevents admin/editor leakage. */
.p01-design{--p01-red:#e60012;--p01-ink:#171717;--p01-border:#e4e5e7;--p01-tint:#fff7f8;color:var(--p01-ink);background:#fff;font-family:"Noto Sans JP","Yu Gothic",Meiryo,sans-serif;line-height:1.85}
.p01-design *{box-sizing:border-box}
.p01-design a{text-underline-offset:.2em}
/* Leave Cocoon component link colors intact, including dark labels and footer. */
.p01-design :where(.entry-content a:not([class]),.p01-list-link,.p01-review-nav a){color:#bf0010}
.p01-design .skip-link,.p01-design .skip-link:visited{color:#fff;background:#000}
.p01-design a:focus-visible,.p01-design summary:focus-visible,.p01-design input:focus-visible,.p01-design textarea:focus-visible,.p01-design button:focus-visible{outline:3px solid #155bc0;outline-offset:4px}
.p01-design img{max-width:100%;height:auto}
.p01-design .p01-header{max-width:1440px;margin:auto;display:flex;align-items:center;gap:28px;padding:22px 28px;border-bottom:1px solid var(--p01-border)}
.p01-design .p01-logo{display:block;flex:0 0 235px}
.p01-design .p01-logo img{display:block;width:235px;height:auto}
.p01-design .p01-nav{display:flex;align-items:center;flex-wrap:wrap;gap:10px 20px;margin-left:auto;font-size:14px}
.p01-design .p01-nav a{color:var(--p01-ink);text-decoration:none;padding:8px 0}
.p01-design .p01-nav a:hover{color:var(--p01-red)}
.p01-design .p01-mobile-menu{display:none}
.p01-design #content-in,.p01-design .p01-layout{max-width:1280px;margin:0 auto;display:grid;grid-template-columns:minmax(0,1fr) 290px;align-items:start;gap:32px;padding:32px 28px 60px}
.p01-design #main,.p01-design .p01-main{min-width:0;width:auto;margin:0;padding:0;background:#fff;border:0;float:none}
.p01-design #sidebar{width:auto;margin:0;padding:0;float:none;min-width:0}
.p01-design .p01-rail{display:grid;gap:16px;padding:12px;background:#f6f6f6}
.p01-design .p01-banner{display:block;line-height:0;background:white;border-radius:3px;overflow:hidden}
.p01-design .p01-banner img{display:block;width:100%;height:auto;object-fit:contain}
.p01-design .article{padding:0;min-width:0;margin:0}
.p01-design .article-header{padding:0;border:0}
.p01-design .entry-title{font-weight:700;font-size:clamp(26px,3.2vw,42px);line-height:1.5;letter-spacing:.025em;border-left:6px solid var(--p01-red);padding-left:18px;margin:16px 0 28px}
.p01-design .entry-content{font-size:16px;overflow-wrap:anywhere}
.p01-design .entry-content h2,.p01-design .p01-heading{background:none;border:0;border-left:5px solid var(--p01-red);font-size:clamp(22px,2.2vw,30px);font-weight:700;line-height:1.5;padding:0 0 0 15px;margin:44px 0 22px}
.p01-design .entry-content h3{background:none;border:0;border-left:4px solid var(--p01-red);padding:4px 12px;font-size:21px;margin:32px 0 16px}
.p01-design .entry-content p{margin:0 0 1.5em}
.p01-design .entry-content table{width:100%;border-collapse:collapse;font-size:15px;max-width:100%}
.p01-design .entry-content th,.p01-design .entry-content td{border:1px solid var(--p01-border);padding:12px;overflow-wrap:anywhere}
.p01-design .entry-content th{background:#f3f3f3}
.p01-design .entry-content iframe{max-width:100%}
.p01-design .elementor-section>.elementor-container{max-width:100%}
.p01-design .elementor-widget-wrap{gap:0}
.p01-design .p01-property-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin:0 0 32px}
.p01-design .p01-property-grid>.elementor-column{width:auto!important;min-width:0;border:1px solid var(--p01-border);border-radius:4px;padding:12px;background:#fff}
.p01-design .p01-property-grid .elementor-image img{width:100%;aspect-ratio:4/3;object-fit:cover}
.p01-design .p01-property-grid .elementor-widget-container{padding:0!important}
.p01-design .p01-about{padding:6px 0 18px}
.p01-design .p01-recommended{margin:28px 0 48px;padding:0}
.p01-design .p01-feature-card{display:grid;grid-template-columns:180px minmax(0,1fr);align-items:center;gap:24px;padding:18px;border:1px solid var(--p01-border);border-radius:4px;color:var(--p01-ink);text-decoration:none}
.p01-design .p01-feature-card img{width:100%;aspect-ratio:16/9;object-fit:contain;background:#f6f6f6}
.p01-design .p01-feature-card time{font-size:13px;color:#555}
.p01-design .p01-feature-card strong{display:block;font-size:19px;line-height:1.65;margin-top:8px}
.p01-design .p01-feature-card:not(:has(img)){grid-template-columns:1fr}
.p01-design .p01-list-link{display:table;margin:22px auto 0;border:1px solid var(--p01-red);padding:10px 35px;border-radius:4px;text-decoration:none;font-weight:700}
.p01-design .p01-list-link:hover{background:var(--p01-tint)}
.p01-design .p01-service-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin:24px 0}
.p01-design .p01-service-card{padding:20px;border:1px solid var(--p01-border);border-radius:4px;min-width:0}
.p01-design .p01-service-card h3{margin:0 0 18px}
.p01-design .p01-sale-rent{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:32px 0}
.p01-design .p01-footer{background:#222;color:#fff;padding:30px max(24px,calc((100vw - 1224px)/2));display:flex;align-items:center;flex-wrap:wrap;gap:24px}
.p01-design .p01-footer a{color:#fff}
.p01-design .p01-footer img{width:235px;height:auto}
.p01-design .p01-footer nav{display:flex;flex-wrap:wrap;gap:10px 20px;font-size:13px}
.p01-design .p01-preview-note{margin:0;background:#fff4d6;padding:10px 24px;font-size:13px;color:#3d321b}
.p01-design .p01-review-nav{max-width:1280px;margin:20px auto;padding:20px;display:flex;gap:12px;flex-wrap:wrap}
.p01-design .p01-skip{position:absolute;left:-10000px}
.p01-design .p01-skip:focus{left:10px;top:10px;background:#fff;z-index:9999;padding:12px}
.p01-design.p01-chrome-ready #header-container,.p01-design.p01-chrome-ready #navi,.p01-design.p01-chrome-ready .mobile-menu-buttons{display:none}
.p01-design.p01-chrome-ready #footer-in>.footer-bottom{display:none}
.p01-design .entry-card-wrap,.p01-design .related-entry-card-wrap{border:1px solid var(--p01-border);border-radius:4px;margin-bottom:20px;padding:12px}
.p01-design .pagination .current{background:var(--p01-red);color:#fff}
.p01-design .wpcf7 input:not([type=checkbox]):not([type=radio]),.p01-design .wpcf7 textarea,.p01-design .wpcf7 select{max-width:100%;font:inherit;border:1px solid #999;border-radius:3px;padding:10px}
.p01-design .wpcf7 input[type=submit]{background:#cf0011;color:#fff;border:0;min-height:48px;padding:12px 40px}
@media(max-width:1000px){
.p01-design .p01-header{padding:16px 20px}.p01-design .p01-header>.p01-nav{display:none}
.p01-design .p01-mobile-menu{display:block;margin-left:auto}.p01-design .p01-mobile-menu summary{cursor:pointer;padding:10px;min-height:44px}
.p01-design .p01-mobile-menu .p01-nav{display:grid;position:absolute;left:0;right:0;background:white;z-index:1000;padding:24px;box-shadow:0 8px 18px #0002}
.p01-design #content-in,.p01-design .p01-layout{grid-template-columns:minmax(0,1fr) 245px;gap:24px;padding:24px 20px}
}
@media(max-width:760px){
.p01-design .p01-logo{flex-basis:190px}.p01-design .p01-logo img{width:190px}
.p01-design #content-in,.p01-design .p01-layout{grid-template-columns:minmax(0,1fr);padding:20px 18px 40px}
.p01-design .p01-rail{grid-template-columns:1fr 1fr;align-items:start;padding:12px;gap:12px}
.p01-design .p01-rail .p01-banner:last-child{grid-column:1/-1;max-width:440px;justify-self:center;width:100%}
.p01-design .p01-property-grid{grid-template-columns:1fr;gap:20px}
.p01-design .p01-feature-card{grid-template-columns:1fr;gap:14px}
.p01-design .p01-feature-card img{max-height:240px}
.p01-design .p01-service-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.p01-design .p01-footer{padding:28px 20px}
.p01-design .elementor-column{max-width:100%}
.p01-design .entry-content table{display:block;overflow-x:auto}
}
@media(prefers-reduced-motion:reduce){.p01-design *{scroll-behavior:auto!important;transition:none!important}}

.p01-design .p01-service-figure{margin:0 0 18px}.p01-design .p01-service-figure img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:contain}.p01-design .p01-service-figure figcaption{font-size:14px;color:#333;margin-top:6px}
/* R3 explicit title and mobile presentation policy */
.p01-design.page.page-id-1739 #main .entry-title{display:none}
.p01-design.page.page-id-2 #main .entry-title,
.p01-design.page.page-id-168 #main .entry-title,
.p01-design.page.page-id-2359 #main .entry-title,
.p01-design.page.page-id-173 #main .entry-title,
.p01-design.page.page-id-2366 #main .entry-title,
.p01-design.page.page-id-166 #main .entry-title,
.p01-design.page.page-id-177 #main .entry-title{display:block}
.p01-design .p01-mobile-column{display:none}
@media(max-width:1000px){
.p01-design .p01-header{gap:12px}
.p01-design .p01-mobile-column{display:flex;flex-direction:column;align-items:center;justify-content:center;margin-left:auto;min-width:44px;min-height:44px;color:#171717;text-decoration:none;font-size:12px;line-height:1.4}
.p01-design .p01-mobile-menu{margin-left:0;flex:0 0 auto}
.p01-design .p01-mobile-menu summary{padding:10px 4px}
}
@media(max-width:760px){
.p01-design .p01-logo{flex:0 1 190px;min-width:90px}
.p01-design .p01-logo img{width:100%;max-width:190px}
.p01-design .p01-service-card{padding:10px;overflow-wrap:anywhere}
.p01-design .p01-service-card h3{font-size:18px;padding-left:8px}
.p01-design .p01-service-card p{font-size:14px}
}
@media(max-width:400px){
.p01-design .p01-service-grid{grid-template-columns:minmax(0,1fr)}
.p01-design .p01-service-card h3{word-break:keep-all;overflow-wrap:normal}
}
