
:root{
  --sumi:#231815; --sub:#666666; --faint:#999999; --line:#DDDDDD; --soft:#EEEEEE; --white:#FFFFFF;
  --suou:#9E3D3F; --error:#CC0000;
  --serif:'Noto Serif JP','Hiragino Mincho ProN','Yu Mincho',serif;
  --sans:'Noto Sans JP','Hiragino Sans','Yu Gothic',Arial,sans-serif;
}.bwp *{box-sizing:border-box}.bwp p, .bwp h1, .bwp h2, .bwp h3, .bwp h4, .bwp h5, .bwp h6, .bwp figcaption, .bwp blockquote, .bwp caption, .bwp li, .bwp dd, .bwp dt, .bwp summary{text-wrap:wrap}.bwp{margin:0;display:block;background:var(--white);color:var(--sumi);font-family:var(--sans);font-weight:300;
  font-size:17px;line-height:2;-webkit-font-smoothing:antialiased;letter-spacing:.02em}.bwp img{display:block;max-width:100%}.bwp a{color:var(--sumi);text-decoration:underline;text-decoration-color:var(--suou);text-underline-offset:.28em;text-decoration-thickness:1px}.bwp a:hover{text-decoration-thickness:2px}.bwp h1, .bwp h2, .bwp h3, .bwp h4{font-family:var(--serif);font-weight:600;color:var(--sumi);margin:0}.bwp p{margin:0 0 1.2em}.bwp strong{font-weight:500}.bwp .in{max-width:1080px;margin:0 auto;padding:0 clamp(20px,5vw,56px)}.bwp .narrow{max-width:720px}.bwp section{padding:clamp(72px,10vw,128px) 0}.bwp section + section{padding-top:0}.bwp /* ── 蘇芳の一滴：区分の見出し ── */
.kicker{display:flex;align-items:center;gap:12px;font-size:13px;letter-spacing:.3em;color:var(--sub);margin-bottom:28px;font-weight:400}.bwp .kicker::before{content:"";width:6px;height:6px;background:var(--suou);flex:none}.bwp h2{font-size:clamp(28px,3.6vw,40px);letter-spacing:.06em;line-height:1.6;margin-bottom:28px}.bwp h2 .kk{margin-left:-.5em}.bwp h2 .kt{margin-right:-.5em}
@media (max-width:640px){.bwp h2{font-size:26px;letter-spacing:.04em}}.bwp .lead{font-size:17px;color:var(--sumi);max-width:640px}.bwp .cap{font-size:14px;color:var(--faint);letter-spacing:.06em;line-height:1.9;margin-top:12px}.bwp /* ── ヘッダー ── */
header.site{display:flex;justify-content:space-between;align-items:center;padding:18px clamp(20px,5vw,56px);border-bottom:1px solid var(--line)}.bwp /* 上に固定して「相談する」をいつも見えるところに（9/26 森さん案・本体のグロナビと同じふるまい） */
header.site{position:sticky;top:0;z-index:50;background:var(--white)}.bwp header.site .logo{font-family:var(--serif);font-size:15px;letter-spacing:.18em;font-weight:600;text-decoration:none}.bwp header.site .logo small{display:block;font-family:var(--sans);font-weight:300;font-size:11px;letter-spacing:.2em;color:var(--sub);margin-top:2px}.bwp header.site nav{display:flex;align-items:center;gap:22px}.bwp header.site nav a{font-size:13px;text-decoration:none;letter-spacing:.08em}
@media (max-width:640px){.bwp header.site nav a:not(.btn){display:none}}.bwp /* ── S1 ヒーロー：写真は写真、文字は文字 ── */
/* ヒーロー：四つの事務所の家が、ゆっくり溶け合いながら入れ替わる */
.hero .slides{position:relative;height:clamp(360px,62vh,720px);overflow:hidden;background:var(--soft)}.bwp .hero .slides img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transform:scale(1.02) translateZ(0);
  transition:opacity 2s cubic-bezier(.4,0,.2,1);will-change:opacity,transform;backface-visibility:hidden}.bwp .hero .slides img.on{opacity:1;z-index:2}.bwp .hero .slides img.was{opacity:0;z-index:1}
@media (prefers-reduced-motion:no-preference){.bwp .hero .slides img.on, .bwp .hero .slides img.was{animation:heroDrift 7s linear both}.bwp .hero .slides img.was{animation-play-state:paused}
  @keyframes heroDrift{from{transform:scale(1.02) translateZ(0)}to{transform:scale(1.07) translateZ(0)}}
}
@media (prefers-reduced-motion:reduce){.bwp .hero .slides img{transition:none;transform:none}}.bwp .hero .decl{text-align:center;padding:clamp(56px,8vw,104px) 20px clamp(40px,6vw,72px)}.bwp .hero .kick{font-size:13.5px;letter-spacing:.32em;color:var(--sub);margin-bottom:26px;font-weight:400}
@media (max-width:640px){.bwp .hero .kick{letter-spacing:.2em}}.bwp .hero h1{font-size:clamp(30px,4.6vw,50px);letter-spacing:.14em;line-height:1.7;font-weight:600;margin-bottom:22px}.bwp .hero .sub{font-size:15.5px;letter-spacing:.14em;color:var(--sub)}.bwp .hero .sub br, .bwp .hero h1 br, .bwp br.m{display:none}
@media (max-width:640px){.bwp .hero .sub br, .bwp .hero h1 br, .bwp br.m{display:inline}}.bwp /* ── 二段組 ── */
.two{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(32px,5vw,64px);align-items:start}.bwp .two.rev{grid-template-columns:.9fr 1.1fr}
@media (max-width:820px){.bwp .two, .bwp .two.rev{grid-template-columns:1fr}}.bwp .tall{width:100%;height:clamp(360px,48vw,560px);object-fit:cover}.bwp /* ── S3 納まり ── */
.three{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:44px}.bwp .three img{width:100%;height:auto;aspect-ratio:3/4;object-fit:cover}
@media (max-width:640px){.bwp .three{grid-template-columns:1fr 1fr}.bwp .three figure:last-child{grid-column:span 2}.bwp .three figure:last-child img{aspect-ratio:3/2}}.bwp figure{margin:0}.bwp figcaption{font-size:15px;color:var(--sub);margin-top:10px;line-height:1.9;letter-spacing:.04em}.bwp /* ── S4 協業実績：B 案の写真配置（全幅・一社ずつ大きく） ── */
.works{margin-top:56px}.bwp .works figure{margin:0 0 clamp(56px,7vw,88px)}.bwp .works figure img{width:100%;height:clamp(300px,58vw,640px);object-fit:cover}.bwp .works figcaption{text-align:center;margin-top:22px}.bwp .works .nm{font-family:var(--serif);font-size:18px;letter-spacing:.2em;color:var(--sumi);font-weight:500}
@media (max-width:640px){.bwp .works .nm{font-size:17px;letter-spacing:.08em}}.bwp .works .mt{font-size:15px;color:var(--sub);letter-spacing:.1em;margin-top:6px}.bwp .works .mt span + span::before{content:"／";margin:0 .5em;color:var(--faint)}.bwp /* 外部リンク＝下線なし・↗。内側の動作（蘇芳の下線）と役を分ける */
.works .mt a.ext{color:var(--sub);text-decoration:none}.bwp .works .mt a.ext::after{content:"↗";margin-left:.3em;font-size:.85em}.bwp .works .mt a.ext:hover, .bwp .works .mt a.ext:focus-visible{color:var(--sumi);text-decoration:underline;text-decoration-color:var(--line)}
@media (max-width:640px){.bwp .works .mt > span{display:block}.bwp .works .mt > span + span::before{content:none}}.bwp /* 雑誌のように、その家の写真が面で広がる */
.works details.more{margin-top:18px}.bwp .works details.more > summary{list-style:none;cursor:pointer;display:inline-flex;align-items:center;gap:10px;font-size:14.5px;letter-spacing:.14em;color:var(--sumi);padding:6px 0;border-bottom:1px solid var(--suou)}.bwp .works details.more > summary::-webkit-details-marker{display:none}.bwp .works details.more > summary::before{content:"＋";font-size:13px;color:var(--sub);width:14px;text-align:center}.bwp .works details.more[open] > summary::before{content:"－"}.bwp .works details.more > summary .open-l{display:inline}.bwp .works details.more > summary .close-l{display:none}.bwp .works details.more[open] > summary .open-l{display:none}.bwp .works details.more[open] > summary .close-l{display:inline}.bwp .works .mag{display:grid;grid-template-columns:2fr 1fr 1fr;grid-template-rows:auto auto;gap:14px;margin-top:22px;text-align:left}.bwp .works .mag img{width:100%;height:100%;object-fit:cover;display:block}.bwp .works .mag figure:nth-child(1){grid-row:1/3;min-height:0}.bwp .works .mag figure:nth-child(2), .bwp .works .mag figure:nth-child(3){aspect-ratio:1}.bwp .works .mag figure:nth-child(4){grid-column:2/4;aspect-ratio:2/1}.bwp .works .mag figure{margin:0;overflow:hidden}.bwp .works .mag figure img, .bwp .works > figure > img{cursor:zoom-in}.bwp /* 大きく見る：墨の幕の上に一枚。左右に送れる */
.lb{border:0;padding:0;background:transparent;max-width:100vw;max-height:100vh;width:100vw;height:100vh;margin:0}.lb::backdrop{background:rgba(35,24,21,.94)}.lb .stage{position:fixed;inset:0;display:grid;grid-template-rows:1fr auto;align-items:center;justify-items:center;padding:56px 72px 28px}.lb img{max-width:100%;max-height:calc(100vh - 140px);object-fit:contain;display:block;box-shadow:0 20px 60px rgba(0,0,0,.35)}.lb .lbcap{color:rgba(255,255,255,.78);font-size:15px;letter-spacing:.12em;margin-top:18px;text-align:center;line-height:1.9}.lb .lbcap b{font-family:var(--serif);font-weight:500;color:#fff;letter-spacing:.2em;display:block;font-size:14px}.lb button{position:fixed;appearance:none;background:transparent;border:0;color:#fff;cursor:pointer;font:inherit;padding:16px;opacity:.75;transition:opacity .2s}.lb button:hover, .lb button:focus-visible{opacity:1;outline:none}.lb .x{top:10px;right:14px;font-size:26px;line-height:1}.lb .prev, .lb .next{top:50%;transform:translateY(-50%);width:56px;height:80px;display:grid;place-items:center}.lb .prev{left:8px}.lb .next{right:8px}.lb .prev::before, .lb .next::before{content:"";width:14px;height:14px;border-top:1px solid #fff;border-right:1px solid #fff;display:block}.lb .prev::before{transform:rotate(-135deg)}.lb .next::before{transform:rotate(45deg)}.lb .n{position:fixed;left:50%;top:18px;transform:translateX(-50%);color:rgba(255,255,255,.6);font-size:12px;letter-spacing:.2em;font-variant-numeric:tabular-nums}
@media (max-width:640px){.lb .stage{padding:48px 12px 20px}.lb img{max-height:calc(100vh - 150px)}.lb .prev, .lb .next{top:auto;bottom:6px;transform:none;height:48px}}
@media (prefers-reduced-motion:no-preference){.lb[open] img{animation:lbin .35s ease both}@keyframes lbin{from{opacity:0;transform:scale(.985)}to{opacity:1;transform:none}}}.bwp .works .mag + .cap{text-align:left}
@media (prefers-reduced-motion:no-preference){.bwp .works details.more[open] .mag{animation:magin .5s ease both}@keyframes magin{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}}
@media (max-width:640px){.bwp .works .mag{grid-template-columns:1fr 1fr;grid-template-rows:auto}.bwp .works .mag figure:nth-child(1){grid-column:1/3;grid-row:auto;aspect-ratio:3/2}.bwp .works .mag figure:nth-child(4){grid-column:1/3}}.bwp /* ── 読みもの ── */
.reads{margin-top:24px}.bwp .reads h3{font-family:var(--serif);font-size:18px;letter-spacing:.12em;color:var(--sumi);font-weight:500;margin-bottom:24px;padding-top:28px;border-top:1px solid var(--line)}.bwp .artgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
@media (max-width:820px){.bwp .artgrid{grid-template-columns:1fr}}.bwp .art{border:1px solid var(--line);background:var(--white)}.bwp .art img{width:100%;height:auto;aspect-ratio:16/10;object-fit:cover}.bwp .art .pad{padding:22px 24px 26px}.bwp .art h4{font-size:18px;letter-spacing:.04em;line-height:1.7;margin-bottom:10px}.bwp .art p{font-size:17px;color:var(--sub);line-height:2;margin:0}.bwp .art details{margin-top:14px}.bwp .art summary{cursor:pointer;font-size:14.5px;letter-spacing:.1em;list-style:none;display:inline-block;
  border-bottom:1px solid var(--suou);padding-bottom:2px}.bwp .art summary::-webkit-details-marker{display:none}.bwp .art details[open] summary{color:var(--sub);border-color:var(--line)}.bwp .art .full{font-size:17px;color:var(--sumi);line-height:2.1;margin-top:18px}.bwp .art .full p{color:var(--sumi);margin:0 0 1em}.bwp /* ── 設計士の声：縦組みの引用（この区画だけ組み方向を変える） ── */
.voices{margin-top:clamp(56px,7vw,88px);border-top:1px solid var(--line);padding-top:clamp(28px,4vw,40px)}.bwp .voices h3{font-family:var(--serif);font-size:18px;letter-spacing:.12em;color:var(--sumi);font-weight:500;margin-bottom:36px}.bwp /* 声が増えたら横に流れる棚：2つまでは並び、3つ目から端が覗いて横スクロール */
.vgrid{display:flex;gap:clamp(56px,6vw,88px);overflow-x:auto;scroll-snap-type:x proximity;padding-bottom:18px;scrollbar-width:thin;scrollbar-color:var(--line) transparent;-webkit-overflow-scrolling:touch;cursor:grab}.bwp .vgrid.dragging{cursor:grabbing;scroll-snap-type:none}.bwp .vgrid.dragging *{user-select:none}.bwp .vgrid::-webkit-scrollbar{height:4px}.bwp .vgrid::-webkit-scrollbar-thumb{background:var(--line)}.bwp .vgrid::-webkit-scrollbar-track{background:transparent}.bwp .vgrid > .voice{flex:0 0 auto;max-width:min(620px,100%);scroll-snap-align:start}.bwp .vhead{display:flex;justify-content:space-between;align-items:baseline;gap:16px;margin-bottom:36px}.bwp .vhead h3{margin-bottom:0}.bwp .vnav{display:none;gap:8px}.bwp .voices.has-more .vnav{display:flex}.bwp .vnav button{appearance:none;background:transparent;border:0;width:36px;height:36px;cursor:pointer;display:grid;place-items:center;color:var(--sub);transition:color .2s;padding:0}.bwp .vnav button:hover, .bwp .vnav button:focus-visible{color:var(--suou);outline:none}.bwp .vnav button::before{content:"";width:9px;height:9px;border-top:1px solid currentColor;border-right:1px solid currentColor;display:block}.bwp .vnav .prev::before{transform:rotate(-135deg);margin-left:4px}.bwp .vnav .next::before{transform:rotate(45deg);margin-right:4px}.bwp .vhint{font-size:12px;color:var(--faint);letter-spacing:.1em;margin-top:6px;display:none}.bwp .vhint::after{content:"→";margin-left:.4em}.bwp .voices.has-more .vhint{display:block}.bwp .voice{position:relative;display:grid;grid-template-columns:auto 168px;gap:24px;align-items:stretch;min-width:0;padding:38px 40px 42px}.bwp /* 鉤括弧の角：左上に「、右下に」 */
.voice::before, .bwp .voice::after{content:"";position:absolute;width:28px;height:28px;border:0 solid var(--sumi);pointer-events:none}.bwp .voice::before{top:0;left:0;border-top-width:1px;border-left-width:1px}.bwp .voice::after{right:0;bottom:0;border-bottom-width:1px;border-right-width:1px}.bwp .voice .vt{writing-mode:vertical-rl;text-orientation:mixed;height:clamp(300px,34vw,420px);display:flex;flex-direction:column;align-items:flex-start;gap:0;width:max-content;max-width:400px}.bwp .voice .q{font-family:var(--serif);font-size:clamp(17px,1.9vw,22px);letter-spacing:.14em;line-height:2.2;font-weight:500;margin-left:14px}.bwp .voice .q::first-letter{color:var(--suou)}.bwp .voice .more{font-size:16.5px;color:var(--sub);letter-spacing:.1em;line-height:2.1}.bwp .voice .side img{width:100%;height:auto;aspect-ratio:3/4;object-fit:cover}.bwp .voice .a{font-size:15px;color:var(--sub);margin-top:12px;letter-spacing:.06em;line-height:1.9}.bwp .voices .note{font-size:12px;color:var(--faint);margin-top:40px}
@media (max-width:820px){.bwp .vgrid{gap:24px;scroll-snap-type:x mandatory;scroll-padding-left:0}.bwp .vgrid > .voice{flex:0 0 min(420px,86%);max-width:none}.bwp .voice .vt{width:auto;max-width:none}.bwp .voice{grid-template-columns:1fr;gap:16px;align-content:start;padding:34px 32px 36px}.bwp .voice::before, .bwp .voice::after{width:22px;height:22px}.bwp .voice .vt{writing-mode:horizontal-tb;height:auto;display:block}.bwp .voice .q{margin-left:0;font-size:19px;line-height:1.9}.bwp .voice .more{margin-top:10px}.bwp .voice .side{display:grid;grid-template-columns:96px 1fr;gap:16px;align-items:end}.bwp .voice .side img{aspect-ratio:1}.bwp .voice .a{margin-top:0}
}.bwp /* ── S5 お約束 ── */
.promise{list-style:none;margin:0;padding:0}.bwp .promise li{border-bottom:1px solid var(--line);padding:22px 0;display:grid;grid-template-columns:44px 1fr;gap:6px 0}.bwp .promise .no{font-family:var(--serif);font-size:13px;letter-spacing:.1em;color:var(--sub);padding-top:4px}.bwp .promise .k{font-weight:500;font-size:18px;letter-spacing:.04em}.bwp .promise.care .no{font-family:var(--sans);font-weight:500;color:var(--suou);letter-spacing:.14em}.bwp .promise .d{grid-column:2;font-size:17px;color:var(--sub);line-height:1.95}.bwp /* ── S6 監督 ── */
.person{display:grid;grid-template-columns:320px 1fr;gap:clamp(32px,5vw,64px);align-items:start}
@media (max-width:820px){.bwp .person{grid-template-columns:1fr}.bwp .person img{max-width:360px}}.bwp .person img{width:100%;height:auto}.bwp .person .txt p{font-size:17px;line-height:2.1}.bwp .person .sig{margin-top:22px;font-size:15px;color:var(--sub);letter-spacing:.06em;line-height:1.9}.bwp .person .sig b{font-family:var(--serif);font-weight:600;color:var(--sumi);font-size:16px;letter-spacing:.12em;display:block}.bwp /* ── S7 FAQ ── */
.faq{max-width:780px}.bwp .faq details{border-bottom:1px solid var(--line)}.bwp .faq summary{cursor:pointer;list-style:none;padding:24px 0;font-family:var(--serif);font-weight:600;font-size:18px;letter-spacing:.03em;line-height:1.7;display:grid;grid-template-columns:32px 1fr 24px;gap:8px;align-items:start}.bwp .faq summary::-webkit-details-marker{display:none}.bwp .faq summary .qm{font-size:13px;letter-spacing:.1em;color:var(--sub);padding-top:4px;font-family:var(--sans);font-weight:400}.bwp .faq summary .pm{font-family:var(--sans);font-weight:300;color:var(--sub);text-align:right}.bwp .faq details[open] .pm{transform:rotate(45deg);transform-origin:center}.bwp .faq .a{font-size:17px;line-height:2.1;color:var(--sumi);padding:0 0 26px 40px}.bwp /* ── S8 会社概要・お問い合わせ ── */
.s8grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(40px,6vw,80px);align-items:start}
@media (max-width:820px){.bwp .s8grid{grid-template-columns:1fr}}.bwp .dl{margin:26px 0 0;font-size:16px}.bwp .dl div{display:grid;grid-template-columns:140px 1fr;gap:12px;border-bottom:1px solid var(--line);padding:10px 0}.bwp .dl dt{color:var(--sub);font-size:15px}.bwp .dl dd{margin:0}.bwp .s8 img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;margin-top:32px}.bwp .lead2{font-family:var(--serif);font-size:clamp(24px,2.8vw,28px);letter-spacing:.08em;font-weight:600;margin-bottom:14px}.bwp form{margin-top:8px}.bwp label{display:block;font-size:15px;color:var(--sub);letter-spacing:.08em;margin:18px 0 6px}.bwp label .req{color:var(--suou);margin-left:.4em;font-size:11px}.bwp input, .bwp select, .bwp textarea{width:100%;border:1px solid var(--line);background:var(--white);color:var(--sumi);font:inherit;font-size:15px;padding:10px 12px;border-radius:0}.bwp input:focus, .bwp select:focus, .bwp textarea:focus{outline:2px solid var(--suou);outline-offset:1px;border-color:var(--sumi)}.bwp textarea{min-height:140px;resize:vertical}.bwp /* ── ボタン：現行 HP の c-link と同じ動き（墨の面・細い山形・hover で白が左から満ちる） ── */
.btn{position:relative;z-index:0;display:inline-flex;justify-content:center;align-items:center;min-width:min(335px,100%);padding:22px 48px 22px 24px;
  background:var(--sumi);color:var(--white);border:1px solid var(--sumi);font:inherit;font-size:15px;letter-spacing:.14em;text-decoration:none;cursor:pointer;
  transition:color .5s ease}.bwp .btn::before{content:"";position:absolute;z-index:-1;top:0;left:0;width:0;height:100%;background:var(--white);transition:width .3s ease-in-out}.bwp .btn::after{content:"";position:absolute;top:50%;right:17px;width:8px;height:16px;margin-top:-8px;background:no-repeat 50% 50%/100% 100%;transition:all .5s ease;
  background-image:url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 9 17' width='9' height='17'%3E%3Cpath d='M.707.707l8 8-8 8' fill='none' stroke='%23fff' stroke-linecap='square'/%3E%3C/svg%3E")}.bwp .btn:hover, .bwp .btn:focus-visible{color:var(--sumi);outline:none}.bwp .btn:hover::before, .bwp .btn:focus-visible::before{width:100%}.bwp .btn:hover::after, .bwp .btn:focus-visible::after{background-image:url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 9 17' width='9' height='17'%3E%3Cpath d='M.707.707l8 8-8 8' fill='none' stroke='%23231815' stroke-linecap='square'/%3E%3C/svg%3E")}.bwp .btn:focus-visible{box-shadow:0 0 0 2px var(--white),0 0 0 3px var(--suou)}.bwp /* 線のボタン（ヘッダーの「相談する」）：白地に墨の線、hover で墨が左から満ちる */
.btn.line{background:transparent;color:var(--sumi);min-width:0;padding:10px 34px 10px 16px;font-size:13px}.bwp .btn.line::before{background:var(--sumi)}.bwp .btn.line::after{background-image:url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 9 17' width='9' height='17'%3E%3Cpath d='M.707.707l8 8-8 8' fill='none' stroke='%23231815' stroke-linecap='square'/%3E%3C/svg%3E");right:12px;width:6px;height:12px;margin-top:-6px}.bwp .btn.line:hover, .bwp .btn.line:focus-visible{color:var(--white)}.bwp .btn.line:hover::after, .bwp .btn.line:focus-visible::after{background-image:url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 9 17' width='9' height='17'%3E%3Cpath d='M.707.707l8 8-8 8' fill='none' stroke='%23fff' stroke-linecap='square'/%3E%3C/svg%3E")}
@media (prefers-reduced-motion:reduce){.bwp .btn, .bwp .btn::before, .bwp .btn::after{transition:none}}.bwp /* Contact Form 7 の中身に当てる（差し込み時） */
.btn input.wpcf7-submit{appearance:none;background:transparent;border:0;color:inherit;font:inherit;letter-spacing:inherit;padding:0;cursor:pointer;width:auto}.bwp .btn:has(>input.wpcf7-submit){padding:0}.bwp .btn:has(>input.wpcf7-submit) input.wpcf7-submit{flex:1 1 auto;align-self:stretch;padding:22px 48px 22px 24px}.bwp .btn:has(>input.wpcf7-submit:focus-visible){box-shadow:0 0 0 2px var(--white),0 0 0 3px var(--suou)}.bwp .btn:has(>input.wpcf7-submit:focus-visible)::before{width:100%}.bwp .btn:has(>input.wpcf7-submit:focus-visible){color:var(--sumi)}.bwp .btn input.wpcf7-submit:focus-visible{outline:none}.bwp .wpcf7-form.submitting .btn{opacity:.55;pointer-events:none}.bwp .wpcf7-form-control-wrap{display:block}.bwp .wpcf7-not-valid-tip{display:block;font-size:12px;color:var(--error);margin-top:6px}.bwp .wpcf7 form .wpcf7-response-output{margin:18px 0 0;padding:12px 14px;border:1px solid var(--line);font-size:13.5px;color:var(--sumi)}.bwp .wpcf7-spinner{display:none}.bwp .tel{margin-top:28px;padding-top:24px;border-top:1px solid var(--line);font-size:15px;color:var(--sub);line-height:2}.bwp .tel a{font-family:var(--serif);font-size:22px;letter-spacing:.08em;text-decoration:none;color:var(--sumi);display:inline-block;margin-top:4px}.bwp .tel a:hover{color:var(--suou)}.bwp .privacy{font-size:12px;color:var(--faint);margin-top:14px;line-height:1.9}.bwp footer.site{border-top:1px solid var(--line);margin-top:clamp(56px,8vw,96px);padding:28px clamp(20px,5vw,56px) 40px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;font-size:12px;color:var(--sub);letter-spacing:.1em}.bwp footer.site a{text-decoration:none}.bwp /* 合言葉の画面（WordPress の保護に従う時だけ表示） */
.bwp-gate{min-height:70vh;display:grid;place-items:center;padding:60px 20px}.bwp-gate-in{max-width:440px;width:100%}.bwp-gate h1{font-size:clamp(22px,3vw,28px);letter-spacing:.08em;line-height:1.7;margin:0 0 14px}.bwp-gate p{font-size:17px;color:var(--sub)}.bwp-gate form{margin-top:18px}.bwp-gate form p{margin:0}.bwp-gate label{display:block;font-size:15px;color:var(--sub);letter-spacing:.08em;margin-bottom:6px}.bwp-gate input:not([type="submit"]){width:100%;border:1px solid var(--line);padding:10px 12px;font:inherit;font-size:15px;margin-bottom:14px}.bwp-gate input[type="submit"]{appearance:none;background:var(--sumi);color:var(--white);border:1px solid var(--sumi);padding:12px 32px;font:inherit;font-size:14px;letter-spacing:.14em;cursor:pointer}.bwp-gate input[type="submit"]:hover{background:var(--white);color:var(--sumi)}.bwp /* ═══ プレビュー用：確認事項の札（公開時はこの節ごと削除） ═══ */
.pv-bar{position:sticky;top:0;z-index:20;background:var(--sumi);color:#fff;font-size:12.5px;letter-spacing:.06em;padding:9px clamp(16px,4vw,40px);display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;font-weight:300}.bwp .pv-bar b{font-weight:500;margin-right:14px}.bwp .pv-bar button{font:inherit;font-size:12px;letter-spacing:.06em;background:transparent;color:#fff;border:1px solid rgba(255,255,255,.55);padding:4px 12px;cursor:pointer}.bwp .pv-bar button[aria-pressed="true"]{background:#fff;color:var(--sumi)}.bwp .chk{position:relative;display:inline}.bwp .chk .tag{display:inline-flex;align-items:center;justify-content:center;vertical-align:super;font-size:10px;line-height:1;min-width:18px;height:18px;padding:0 5px;border:1px solid var(--suou);color:var(--suou);border-radius:9px;margin-left:4px;cursor:help;font-family:var(--sans);font-weight:500;letter-spacing:0;background:#fff}.bwp .chk .tip{display:none;position:absolute;left:0;top:100%;z-index:10;background:#fff;color:var(--sumi);border:1px solid var(--suou);padding:10px 14px;font-size:12.5px;line-height:1.8;width:min(320px,80vw);letter-spacing:.02em;font-family:var(--sans);font-weight:300;text-align:left;box-shadow:0 4px 18px rgba(0,0,0,.08)}.bwp .chk:hover .tip, .bwp .chk:focus-within .tip{display:block}.bwp.pv-off .chk .tag, .bwp.pv-off .chk .tip, .bwp.pv-off .pv-list{display:none}.bwp .pv-list{max-width:1080px;margin:0 auto;padding:22px clamp(20px,5vw,56px);border:1px dashed var(--suou);margin-top:28px;font-size:13px;line-height:1.9}.bwp .pv-list h3{font-family:var(--sans);font-weight:500;font-size:13px;letter-spacing:.2em;color:var(--suou);margin-bottom:10px}.bwp .pv-list ol{margin:0;padding-left:0;list-style:none}.bwp .pv-list li{margin:2px 0}.bwp .pv-list li b{font-weight:500}.bwp .pv-btns{margin-top:22px;padding-top:18px;border-top:1px dashed var(--suou)}.bwp .pv-btns-h{font-weight:500;margin-bottom:6px}.bwp .pv-btn-row{display:grid;grid-template-columns:minmax(200px,1fr) auto;gap:20px;align-items:center;padding:16px 0;border-top:1px solid var(--line)}
@media (max-width:640px){.bwp .pv-btn-row{grid-template-columns:1fr}}.bwp .pv-btn-lab{font-size:12.5px;color:var(--sub);line-height:1.9}.bwp .pv-btn-lab b{display:block;color:var(--sumi);font-weight:500}.bwp .pv-btn-lab b + b{display:inline;margin-left:.5em}.bwp .pv-btn-note{font-size:12px;color:var(--faint);margin-top:14px}.bwp .btn.line.big{min-width:min(335px,100%);padding:22px 48px 22px 24px;font-size:15px}.bwp .btn.line.big::after{right:17px;width:8px;height:16px;margin-top:-8px}.bwp .tx{display:inline-block;position:relative;font-size:15px;letter-spacing:.14em;color:var(--sumi);text-decoration:none;border-bottom:1px solid var(--sumi);padding:6px 40px 6px 0;transition:padding .3s ease,border-color .3s ease}.bwp .tx::after{content:"";position:absolute;right:10px;top:50%;width:8px;height:16px;margin-top:-8px;background:no-repeat 50% 50%/100% 100%;transition:right .3s ease;background-image:url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 9 17'%3E%3Cpath d='M.707.707l8 8-8 8' fill='none' stroke='%23231815' stroke-linecap='square'/%3E%3C/svg%3E")}.bwp .tx:hover, .bwp .tx:focus-visible{border-color:var(--suou);padding-right:56px;outline:none}.bwp .tx:hover::after, .bwp .tx:focus-visible::after{right:4px}
