/*
Theme Name: MASAKI AUTOMOTIVE
Description: MASAKI AUTOMOTIVEの編集可能なブロックテーマ。
Version: 1.3.0
Requires at least: 6.6
Requires PHP: 7.4
Text Domain: masaki-automotive
*/
html{scroll-behavior:smooth}body{margin:0;background:#111;color:#f7f7f7;font-family:Arial,"Noto Sans JP",sans-serif;line-height:1.9}*{box-sizing:border-box}a{color:inherit;text-underline-offset:4px}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #c9a568;outline-offset:4px}.masaki-wrap{max-width:1180px;margin:auto;padding:0 28px}.masaki-header{border-bottom:1px solid #383838;padding:24px 0}.masaki-nav{display:flex;gap:24px;flex-wrap:wrap;font-size:14px}.masaki-hero{padding:70px 0 80px}.masaki-hero h1{font-size:clamp(2.3rem,5vw,4.5rem);line-height:1.45;letter-spacing:-.03em;margin:20px 0}.masaki-eyebrow{font-size:14px;letter-spacing:.18em;color:#c9a568}.masaki-section{padding:80px 0;border-top:1px solid #383838;scroll-margin-top:20px}.masaki-section h2{font-size:clamp(1.9rem,3vw,2.7rem);line-height:1.4;margin:12px 0 28px}.masaki-card{padding:28px;border:1px solid #444;background:#191919;height:100%}.masaki-card h3{font-size:23px;line-height:1.5}.masaki-card p{color:#ccc}.masaki-portrait img{display:block;width:100%;height:auto}.masaki-footer{padding:40px 0;color:#bbb;border-top:1px solid #444;font-size:14px}.masaki-store td{padding:16px 12px;border-color:#444!important}.masaki-store td:first-child{width:30%;color:#bbb}.wpcf7{max-width:760px}.wpcf7 label{display:block;font-size:16px;margin-bottom:18px}.wpcf7 input:not([type=checkbox]):not([type=submit]),.wpcf7 select,.wpcf7 textarea{display:block;width:100%;font:inherit;padding:12px;margin-top:8px;background:#fff;color:#111;border:1px solid #aaa;border-radius:0}.wpcf7 input[type=submit]{font:inherit;padding:16px 28px;border:0;background:#c9a568;color:#111;cursor:pointer}.wpcf7-not-valid-tip{color:#ffadad!important}.masaki-form-notice{padding:24px;border:1px solid #888}.wp-block-post-featured-image img{aspect-ratio:4/3;object-fit:cover}.wp-block-post-title{font-size:22px}.wp-block-button__link{border-radius:0;font-weight:700}.masaki-preview{background:#f4e7ce;color:#222;padding:12px 28px;font-size:14px}input,textarea,select{max-width:100%}@media(max-width:700px){.masaki-wrap{padding:0 20px}.masaki-header{padding:18px 0}.masaki-nav{gap:14px}.masaki-section{padding:52px 0}.masaki-hero{padding:40px 0}.masaki-store td{padding:12px 8px}.masaki-card{padding:22px}.masaki-hero .wp-block-columns{gap:32px}}

/* Photography-led layout */
body{background:#101112}.masaki-header{background:#101112;padding:18px 0}.masaki-header .wp-block-columns{align-items:center;margin:0}.masaki-header p{margin:0}.masaki-wrap{width:100%;max-width:1240px}.masaki-visual-hero{position:relative;isolation:isolate;padding:70px 40px;min-height:740px;overflow:hidden;display:flex;align-items:center}.masaki-visual-hero>.wp-block-cover__image-background{position:absolute;inset:0;height:100%;width:100%;object-fit:cover;object-position:58% 55%;z-index:-2}.masaki-visual-hero>.wp-block-cover__background{position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(0,0,0,.84) 0%,rgba(0,0,0,.65) 35%,rgba(0,0,0,.06) 80%),linear-gradient(0deg,rgba(0,0,0,.5),transparent 45%);opacity:1}.masaki-visual-hero .wp-block-cover__inner-container{width:100%;max-width:1184px;margin:auto}.masaki-hero-content{max-width:640px}.masaki-hero-content h1{font-size:clamp(3rem,6.1vw,5.7rem);line-height:1.24;letter-spacing:.025em;margin:24px 0 30px;font-weight:600}.masaki-hero-copy{font-size:18px;line-height:2.1;color:#eee;margin:0 0 30px}.masaki-hero-sign{margin-top:44px;letter-spacing:.2em;font-size:14px;color:#eee}.masaki-eyebrow{color:#c9a568;font-size:14px;letter-spacing:.19em}.masaki-section{padding-top:90px;padding-bottom:90px;border-top:0}.masaki-section h2{line-height:1.5;font-weight:600}.masaki-craft>.wp-block-columns{gap:70px;align-items:center}.masaki-craft-copy{max-width:650px}.masaki-craft-copy p{color:#b8b8b8}.masaki-craft-copy p.masaki-eyebrow{color:#c9a568}.masaki-polishing{margin:32px 0 0}.masaki-polishing img{width:100%;aspect-ratio:16/9;object-fit:cover}.masaki-craft-film{max-width:340px;margin:auto}.masaki-film{margin:0;background:#1c1c1c}.masaki-film video{display:block;width:100%;height:auto;aspect-ratio:512/910;object-fit:cover}.masaki-film-caption{font-size:14px;color:#bbb;margin:12px 0 0}.masaki-service-card{height:100%;background:#191b1c;overflow:hidden}.masaki-service-image{margin:0}.masaki-service-image img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;display:block}.masaki-service-body{padding:24px 28px 30px}.masaki-service-body h3{font-size:23px;margin:14px 0}.masaki-service-body p{font-size:16px;color:#bbb}.masaki-number{color:#c9a568!important;letter-spacing:.12em;font-size:14px!important;margin:0}.masaki-service-body p:last-child{margin-top:24px;color:#eee}.masaki-finish{padding-top:10px;padding-bottom:70px}.masaki-finish>.wp-block-columns{gap:24px;align-items:stretch}.masaki-finish .wp-block-column:first-child{flex-basis:70%}.masaki-finish .wp-block-column:last-child{flex-basis:30%;flex-grow:0}.masaki-finish-photo{position:relative;min-height:580px;height:100%;overflow:hidden}.masaki-finish-image{margin:0;height:100%}.masaki-finish-image img{display:block;position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:55% center}.masaki-finish-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.8),transparent 70%);pointer-events:none}.masaki-finish-copy{position:absolute;z-index:1;bottom:26px;left:32px;right:24px}.masaki-finish-copy h2{font-size:clamp(2rem,3.2vw,3rem);line-height:1.5;margin:10px 0}.masaki-finish-film{height:100%}.masaki-finish-film .masaki-film,.masaki-finish-film video{height:100%}.masaki-studio{margin:0 0 36px}.masaki-studio img{width:100%;max-height:520px;object-fit:cover;object-position:center 55%;display:block}.masaki-store td{overflow-wrap:anywhere}.masaki-footer{background:#0b0c0d}.wp-block-button__link{font-size:16px;padding:15px 25px!important}.wp-block-button__link:hover{background:#e5c78f}.wp-block-post-template{gap:30px}.masaki-section:target{scroll-margin-top:20px}@media(max-width:781px){.masaki-visual-hero{padding:50px 24px;min-height:700px!important;align-items:flex-end}.masaki-visual-hero>.wp-block-cover__image-background{object-position:56% center}.masaki-visual-hero>.wp-block-cover__background{background:linear-gradient(0deg,rgba(0,0,0,.95),rgba(0,0,0,.25) 95%)}.masaki-hero-content h1{font-size:clamp(2.8rem,10vw,4rem)}.masaki-hero-copy{font-size:16px}.masaki-hero-sign{margin-top:24px;font-size:13px}.masaki-craft>.wp-block-columns{gap:36px}.masaki-craft-film{max-width:380px;width:100%}.masaki-section{padding-top:60px;padding-bottom:60px}.masaki-service-body{padding:22px}.masaki-finish{padding-bottom:30px}.masaki-finish-photo{min-height:420px}.masaki-finish-film{max-width:380px;margin:auto}.masaki-finish-copy{left:22px;bottom:22px}.masaki-header .wp-block-columns{gap:12px}.masaki-header .wp-block-column{width:100%}.masaki-nav{font-size:14px;gap:12px}.masaki-studio img{aspect-ratio:4/3;height:auto}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

.wp-site-blocks{padding-top:0;padding-bottom:0}.wp-site-blocks>header,.wp-site-blocks>.masaki-visual-hero{margin-block-start:0}

/* Additional supplied photographs */
.masaki-new-materials{padding-bottom:35px}.masaki-new-materials>.wp-block-columns{align-items:center;gap:48px}.masaki-preparation{margin:0}.masaki-preparation img{width:100%;height:auto;display:block}.masaki-preparation-copy h3,.masaki-detail-copy h3{font-size:clamp(1.4rem,2.5vw,1.9rem);line-height:1.6;font-weight:500}.masaki-preparation-copy p,.masaki-detail-copy p{color:#bbb;font-size:16px}.masaki-comparison-wide{margin:40px 0}.masaki-comparison-wide img,.masaki-comparison-detail img{width:100%;height:auto;display:block;object-fit:contain}.masaki-comparison-detail{margin:0}.masaki-reference{margin-top:26px;padding:16px 0;border-top:1px solid #444;font-size:14px}.masaki-reference summary{cursor:pointer;color:#ddd}.masaki-reference-image{max-width:300px;margin:20px 0}.masaki-reference-image img{width:100%;height:auto}.masaki-reference p{font-size:14px!important}.masaki-reference summary:focus-visible{outline:3px solid #c9a568;outline-offset:4px}@media(max-width:781px){.masaki-new-materials>.wp-block-columns{gap:20px}.masaki-comparison-wide{margin:30px 0}.masaki-comparison-detail{margin-bottom:8px}}

/* Supplied brand marks */
.masaki-header-logo,.masaki-footer-logo,.masaki-hero-logo,.masaki-footer-portrait,.masaki-hero-portrait{margin:0}.masaki-header-logo{width:225px;max-width:100%}.masaki-header-logo img,.masaki-footer-logo img,.masaki-hero-logo img{width:100%;height:auto;display:block;filter:invert(1)}.masaki-header-logo a{display:block}.masaki-header-logo a:focus-visible{outline:3px solid #c9a568;outline-offset:6px}.masaki-hero-logo{width:300px;max-width:80%;margin:0 0 25px}.masaki-hero-content{max-width:640px}.masaki-hero-content h1{font-size:clamp(3rem,5.5vw,5rem);margin:18px 0 26px}.masaki-hero-emblem{position:absolute;right:6vw;bottom:42px;width:180px;border:1px solid #fff;background:#fff;box-shadow:0 10px 40px #0005}.masaki-hero-portrait img{display:block;width:100%;height:auto}.masaki-header .wp-block-column:first-child{flex:1}.masaki-header .wp-block-column:last-child{flex:2}.masaki-footer .wp-block-columns{align-items:center;gap:36px}.masaki-footer .wp-block-column:first-child{flex:0 0 175px}.masaki-footer-portrait{width:175px;max-width:100%;background:#fff}.masaki-footer-portrait img{width:100%;height:auto;display:block}.masaki-footer-logo{width:250px;margin-bottom:18px}.masaki-footer-info p{margin:8px 0}@media(max-width:781px){.masaki-header-logo{width:190px}.masaki-header .wp-block-columns{gap:18px}.masaki-hero-logo{width:220px;margin-bottom:20px}.masaki-visual-hero{padding-top:44px;padding-bottom:40px;min-height:740px!important}.masaki-hero-content h1{font-size:clamp(2.8rem,10vw,4rem)}.masaki-hero-emblem{position:static;width:130px;margin:26px 0 0}.masaki-hero-sign{margin-bottom:0}.masaki-footer .wp-block-columns{gap:24px}.masaki-footer .wp-block-column:first-child{flex-basis:auto}.masaki-footer-portrait{width:150px}.masaki-footer-logo{width:220px}}

/* Case-study slider */
:is(.masaki-slide-track,.masaki-case-slider>.masaki-slides,.masaki-case-slider>.wp-block-post-template){display:flex!important;gap:0!important;overflow-x:auto;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:#c9a568 #222;list-style:none;padding:0!important;margin:0!important;width:100%;max-width:100%;direction:ltr}:is(.masaki-slide-track,.masaki-case-slider>.masaki-slides,.masaki-case-slider>.wp-block-post-template)>*{flex:0 0 100%;width:100%;min-width:0;scroll-snap-align:start;box-sizing:border-box}:is(.masaki-slide-track,.masaki-case-slider>.masaki-slides,.masaki-case-slider>.wp-block-post-template)>li{display:grid;grid-template-columns:1.2fr 1fr;gap:0 30px;padding:28px;background:#191b1c;align-items:start}:is(.masaki-slide-track,.masaki-case-slider>.masaki-slides,.masaki-case-slider>.wp-block-post-template)>li .wp-block-post-featured-image{grid-row:span 2;margin:0}:is(.masaki-slide-track,.masaki-case-slider>.masaki-slides,.masaki-case-slider>.wp-block-post-template)>li .wp-block-post-featured-image img{aspect-ratio:4/3;object-fit:contain}:is(.masaki-slide-track,.masaki-case-slider>.masaki-slides,.masaki-case-slider>.wp-block-post-template)>li .wp-block-post-title{margin:0 0 16px;line-height:1.6}:is(.masaki-slide-track,.masaki-case-slider>.masaki-slides,.masaki-case-slider>.wp-block-post-template)>li .wp-block-post-excerpt{margin:0;font-size:16px}.masaki-slider-controls{display:flex;align-items:center;justify-content:flex-end;gap:20px;margin-top:18px}.masaki-slider-controls button{font:inherit;font-size:14px;border:1px solid #888;padding:10px 18px;color:#fff;background:transparent;cursor:pointer}.masaki-slider-controls button:hover:not(:disabled){border-color:#c9a568;color:#c9a568}.masaki-slider-controls button:disabled{opacity:.35;cursor:default}.masaki-slider-controls span{font-size:14px;min-width:50px;text-align:center;color:#ddd}.masaki-case-slider{max-width:100%;min-width:0}@media(max-width:781px){:is(.masaki-slide-track,.masaki-case-slider>.masaki-slides,.masaki-case-slider>.wp-block-post-template)>li{display:block;padding:20px}:is(.masaki-slide-track,.masaki-case-slider>.masaki-slides,.masaki-case-slider>.wp-block-post-template)>li .wp-block-post-featured-image{margin-bottom:20px}.masaki-slider-controls{justify-content:center;gap:12px}.masaki-slider-controls button{padding:10px 15px}}

/* Native touch scrolling remains available without JavaScript. */
:is(.masaki-slide-track,.masaki-case-slider>.masaki-slides,.masaki-case-slider>.wp-block-post-template){touch-action:pan-x pan-y pinch-zoom;-webkit-overflow-scrolling:touch}:is(.masaki-slide-track,.masaki-case-slider>.masaki-slides,.masaki-case-slider>.wp-block-post-template) img{-webkit-user-drag:none;user-select:none}:is(.masaki-slide-track,.masaki-case-slider>.masaki-slides,.masaki-case-slider>.wp-block-post-template):focus-visible{outline:2px solid #c9a568;outline-offset:4px}@media(max-width:781px){.masaki-case-slider:before{content:"写真を左右にスワイプして施工事例を見る ↔";display:block;color:#c9a568;font-size:13px;margin:0 0 14px;line-height:1.7}}

/* Keep case photos and text in normal document flow on small screens. */
.masaki-case>img{display:block;width:100%;height:auto;max-width:100%;object-fit:contain;align-self:start}
@media(max-width:781px){
.masaki-slides>.masaki-case{display:block;height:auto;align-self:stretch}
.masaki-case>img{position:static;height:auto;max-height:none;margin:0}
.masaki-case-copy{position:static;margin-top:22px;min-width:0}
.masaki-case-copy h3{margin-top:12px;overflow-wrap:anywhere}
.masaki-case-slider .wp-block-post-template>li{display:block;height:auto}
.masaki-case-slider .wp-block-post-featured-image{position:static;margin:0 0 22px}
.masaki-case-slider .wp-block-post-featured-image img{display:block;position:static;width:100%;height:auto;max-height:none;object-fit:contain}
}

.masaki-page{padding-top:65px;padding-bottom:85px}.masaki-page h1{font-size:clamp(2.1rem,5vw,3.8rem);line-height:1.4;margin:16px 0 24px}.masaki-page-lead{font-size:clamp(1.1rem,2vw,1.5rem);color:#ddd}.masaki-page-section{margin-top:52px;padding-top:36px;border-top:1px solid #444}.masaki-page h2{font-size:28px;line-height:1.5}.masaki-page h3{font-size:21px}.masaki-table-scroll{overflow-x:auto;max-width:100%;-webkit-overflow-scrolling:touch;margin:22px 0}.masaki-table-scroll table{min-width:850px;width:100%;border-collapse:collapse;font-size:15px;line-height:1.7}.masaki-table-scroll th,.masaki-table-scroll td{padding:16px 14px;border:1px solid #454545;vertical-align:top}.masaki-table-scroll thead{background:#9b783c;color:#fff}.masaki-table-scroll tbody th{font-weight:500;background:#1b1d1e;text-align:left;min-width:145px}.masaki-table-scroll td{white-space:nowrap}.masaki-note{color:#aaa;font-size:14px}.masaki-plan-feature{border-left:3px solid #c9a568;padding:25px 30px;background:#1b1d1e;margin:35px 0}.masaki-plan-feature span{font-size:14px;color:#c9a568}.masaki-plan-feature h2{margin:8px 0 14px}.masaki-company-details{display:grid;grid-template-columns:160px 1fr;margin:25px 0}.masaki-company-details dt,.masaki-company-details dd{margin:0;padding:22px 0;border-bottom:1px solid #444}.masaki-company-details dt{color:#c9a568}.masaki-greeting{max-width:850px}.masaki-greeting p{line-height:2.1;margin:24px 0}.masaki-signature{text-align:right;margin-top:36px!important}.masaki-page-actions{display:flex;gap:24px;align-items:center;flex-wrap:wrap;margin-top:35px}.masaki-secondary-link{padding:14px 22px;border:1px solid #c9a568;text-decoration:none}@media(max-width:781px){.masaki-page{padding-top:40px;padding-bottom:55px}.masaki-page h2{font-size:24px}.masaki-company-details{grid-template-columns:110px 1fr;font-size:16px}.masaki-page-section{margin-top:36px;padding-top:24px}.masaki-plan-feature{padding:20px}.masaki-page-actions{gap:18px}.masaki-page-actions .wp-block-button__link{text-align:center}.masaki-greeting p{font-size:16px}.masaki-table-scroll table{font-size:14px}}

.masaki-slider-controls{flex-wrap:wrap}.masaki-slider-controls .masaki-autoplay-toggle{border-color:#c9a568;color:#c9a568}@media(max-width:781px){.masaki-slider-controls{gap:8px}.masaki-slider-controls button{padding:10px;font-size:13px}}

/* Subtle one-time entrance for the first screen. */
@keyframes masaki-hero-reveal{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}
@keyframes masaki-hero-photo-settle{from{transform:scale(1.035)}to{transform:scale(1)}}
@media(prefers-reduced-motion:no-preference){
 .masaki-visual-hero>.wp-block-cover__image-background{animation:masaki-hero-photo-settle 12s ease-in-out infinite alternate both;transform-origin:58% 55%}
 .masaki-hero-content>.masaki-eyebrow,.masaki-hero-content>h1,.masaki-hero-content>.masaki-hero-copy,.masaki-hero-content>.wp-block-buttons,.masaki-hero-content>.masaki-hero-sign,.masaki-visual-hero .masaki-hero-emblem{animation:masaki-hero-reveal .9s cubic-bezier(.2,.7,.2,1) both}
 .masaki-hero-content>.masaki-eyebrow{animation-delay:.05s}
 .masaki-hero-content>h1{animation-delay:.18s}
 .masaki-hero-content>.masaki-hero-copy{animation-delay:.32s}
 .masaki-hero-content>.wp-block-buttons{animation-delay:.46s}
 .masaki-hero-content>.masaki-hero-sign{animation-delay:.6s}
 .masaki-visual-hero .masaki-hero-emblem{animation-delay:.5s}
 .masaki-hero-content .wp-block-button__link{transition:background-color .2s ease,transform .2s ease}
}
@media(hover:hover) and (prefers-reduced-motion:no-preference){.masaki-hero-content .wp-block-button__link:hover{transform:translateY(-2px)}}
@media(prefers-reduced-motion:reduce){.masaki-visual-hero>.wp-block-cover__image-background,.masaki-hero-content>*,.masaki-visual-hero .masaki-hero-emblem{animation:none;transform:none;opacity:1}.masaki-hero-content .wp-block-button__link{transition:none}}

/* Show the supplied exterior photograph without cropping. */
.masaki-studio img{width:100%;height:auto;max-height:none;aspect-ratio:auto;object-fit:contain}

/* Start the entrance after the hero image is ready; pause offscreen. */
.masaki-visual-hero.masaki-motion-waiting>.wp-block-cover__image-background,.masaki-visual-hero.masaki-motion-waiting .masaki-hero-content>*,.masaki-visual-hero.masaki-motion-waiting .masaki-hero-emblem{animation:none;opacity:1;transform:none}
.masaki-visual-hero.masaki-motion-paused>.wp-block-cover__image-background{animation-play-state:paused}

/* Dedicated FAQ page. */
.masaki-faq-page{max-width:980px}.masaki-faq-item{margin-top:36px;padding:30px;border:1px solid #3b3d3e;background:#191b1c}.masaki-faq-item h2{font-size:clamp(1.15rem,2.4vw,1.5rem);margin:0 0 22px;line-height:1.65;overflow-wrap:anywhere}.masaki-faq-item h2 span{color:#c9a568}.masaki-faq-answer p{margin:18px 0;color:#d3d3d3;line-height:2;overflow-wrap:anywhere}.masaki-faq-answer p:last-child{margin-bottom:0}.masaki-faq-answer strong{color:#fff}.masaki-faq-answer .masaki-note{font-size:14px;color:#aaa}.masaki-nav a{white-space:nowrap}@media(max-width:781px){.masaki-faq-item{padding:22px 18px;margin-top:24px}.masaki-faq-answer p{font-size:16px}.masaki-faq-page .masaki-page-lead{font-size:16px}}
