/* 承認デザインに、更新機能・スライダー・ページ本文の表示を接続します。 */
[hidden]{display:none!important}.screen-reader-text{position:absolute!important;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.brand-dot{color:#d8ac34}.bp-hero>.bp-slider:before{display:none}.bp-slider{min-width:0}.bp-slides{position:relative;overflow:hidden;border-radius:10px;background:#e8eee2}.bp-hero .bp-slider img,.bp-slider video{display:block;width:100%;height:450px;object-fit:cover;object-position:65% center;border-radius:10px}.bp-slider-controls{display:flex;align-items:center;justify-content:center;gap:14px;margin-top:14px;min-height:40px}.bp-slider-controls button{font:inherit;cursor:pointer;background:transparent;color:#245949;border:1px solid #b6c8b8;border-radius:6px;min-width:40px;min-height:40px}.bp-slider-controls>button[data-prev],.bp-slider-controls>button[data-next]{font-size:24px;line-height:1}.bp-slider-dots{display:flex;gap:6px}.bp-slider-dots button{min-width:28px;min-height:36px;border:0;position:relative}.bp-slider-dots button:after{content:"";display:block;width:8px;height:8px;margin:auto;background:#bbcbb9;border-radius:50%}.bp-slider-dots button[aria-pressed=true]:after{background:#245949}.bp-slider-controls button.bp-slider-pause{font-size:11px;padding:6px 10px}.bp-green .bp-section-heading h2:before{display:none}.bp-rays{display:block;width:52px;height:34px;color:#d9ae43;margin:0 auto 14px;animation:bp-ray-breathe 4.5s ease-in-out infinite;transform-origin:50% 100%}.bp-trainer-name{font-size:13px!important;color:#326454!important;font-weight:600;margin:0 0 16px!important}.bp-about .bp-kicker{display:none}.bp-concern-icon{height:112px}.bp-concern-icon img{height:112px;width:172px;object-fit:contain}.bp-service{position:relative;overflow:hidden;min-height:190px;display:flex;align-items:center;background:#e9efdf!important}.bp-service-menu{background:#f1ebd9!important}.bp-service-copy{position:relative;z-index:1;width:100%}.bp-service-menu .bp-service-copy{padding-right:100px}.bp-service h3{gap:12px}.bp-menu-dog{position:absolute;right:-10px;bottom:-5px;width:155px;height:155px;opacity:.9}.bp-service-menu h3 span{display:none}.bp-area-art{position:absolute;right:-40px;top:50%;transform:translateY(-50%);width:290px!important;height:290px!important;opacity:.65;pointer-events:none}.bp-service-area .bp-service-copy{padding-right:65px}.bp-service-area:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#e9efdf 8%,transparent 100%);pointer-events:none}.bp-contact-wrap{background:#dce6d4!important;color:#234c3e!important;position:relative;overflow:hidden}.bp-contact{position:relative}.bp-contact h2{color:#234c3e}.bp-contact p{color:#40564b!important}.bp-contact .bp-rays{margin:0 0 14px}.bp-contact .button{background:#2b6351!important;color:#fff!important;position:relative;z-index:1}.bp-contact-dot{position:absolute;width:170px;height:170px;border-radius:50%;background:#f3df9d;opacity:.45;right:180px;bottom:-90px;pointer-events:none}.bp-green .bp-contact-wrap{border-radius:0}.footer-main{display:grid;grid-template-columns:1.3fr 1fr;gap:40px;padding-top:12px}.footer-brand{font-size:18px}.footer-main p{font-size:12px;margin:10px 0;color:#526255}.footer-main .menu{display:grid;grid-template-columns:1fr 1fr;gap:14px}.footer-main .menu a{font-size:12px}.footer-bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid #dae0d1;margin-top:26px;padding-top:20px;font-size:11px}.page-heading{padding:20px 0 36px;margin:0;border-bottom:1px solid #e0e6d8}.page-heading h1{font-size:clamp(28px,4vw,44px);margin:12px 0}.page-heading>p{font-size:12px}.content-area>.entry-content,.content-area article>.entry-content{padding-top:28px}.entry-content h2{font-size:28px;line-height:1.55;border-left:4px solid #d8b247;padding-left:16px;margin:48px 0 24px}.entry-content h3{font-size:21px;margin-top:30px}.entry-content p{line-height:2}.entry-content .wp-block-columns{gap:28px}.entry-content .wp-block-group.has-background{padding:24px;border-radius:8px}.entry-content figure{margin:24px 0}.entry-content figure img{border-radius:8px}.entry-content .wp-block-table{overflow-x:auto}.entry-content .wp-block-table th,.entry-content .wp-block-table td{border:1px solid #d6decc;padding:16px}.entry-content details{border-bottom:1px solid #d9e2ce;padding:18px 4px}.entry-content summary{font-weight:650;cursor:pointer;line-height:1.8}.entry-content details p{font-size:15px;margin-bottom:4px}.entry-content .wp-block-button__link{border-radius:6px;background:#2b6351}.entry-content .is-layout-constrained>.alignwide{max-width:100%}.entry-content .wp-block-list{padding-left:1.4em}.bp-news li{display:flex;gap:22px;padding:15px 0;border-bottom:1px solid #d9e2ce;list-style:none}.bp-news ul{padding:0}.bp-news time{font-size:13px;flex-shrink:0}.bp-news a{font-size:15px}.wpcf7 label{display:block;margin-bottom:22px}.wpcf7-form-control-wrap{display:block;margin-top:8px}.wpcf7-acceptance .wpcf7-list-item{margin:0}.wpcf7 .wpcf7-acceptance label{font-size:14px}.wpcf7 input[type=submit]{border-radius:6px;background:#2b6351}.wpcf7-spinner{vertical-align:middle}.wpcf7 .wpcf7-response-output{margin:20px 0;padding:18px}.wpcf7-not-valid-tip{font-size:13px}.entry-content .has-small-font-size{font-size:13px!important}.bp-prices{margin-top:28px}.bp-local-note{background:#fbf0cf;padding:16px;border-radius:8px;font-size:13px}
@keyframes bp-ray-breathe{0%,65%,100%{transform:scale(1);opacity:1}80%{transform:scale(1.08);opacity:.75}}
@media(max-width:1000px){.bp-hero .bp-slider img,.bp-slider video{height:380px}.bp-service-menu .bp-service-copy{padding-right:55px}.bp-menu-dog{width:115px;height:115px;opacity:.5}}
@media(max-width:680px){.bp-hero .bp-slider img,.bp-slider video{height:280px}.bp-slider-controls{gap:8px}.bp-slider-dots button{min-width:24px}.bp-slider-controls button.bp-slider-pause{font-size:10px}.bp-rays{margin-left:0}.bp-concern-icon{height:100px}.bp-concern-icon img{height:100px}.bp-service-menu .bp-service-copy{padding-right:80px}.bp-menu-dog{width:140px;height:140px;opacity:.85}.bp-service-area .bp-service-copy{padding-right:40px}.bp-contact-dot{right:-30px}.footer-main{grid-template-columns:1fr;gap:20px}.footer-main .menu{gap:14px}.footer-bottom{flex-wrap:wrap}.entry-content h2{font-size:23px;margin-top:36px}.entry-content .wp-block-table th,.entry-content .wp-block-table td{padding:10px;font-size:14px}.bp-news li{display:block}.bp-news time{display:block}.site-footer{padding-block:30px}.bp-service h3{font-size:23px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

.bp-menu-photo{border-radius:8px;object-fit:cover}.bp-hero .bp-slider img{aspect-ratio:auto}

/* 写真下の操作欄を隠し、キーボードで必要なときだけ停止操作を表示します。 */
.bp-slider{position:relative}
.bp-slider-controls{position:absolute!important;width:1px!important;height:1px!important;min-height:0!important;overflow:hidden;clip-path:inset(50%);margin:0!important;bottom:10px;right:10px}
.bp-slider-controls:focus-within{width:auto!important;height:auto!important;overflow:visible;clip-path:none;background:#fffdf7;padding:4px;border-radius:6px;z-index:3}
.bp-slider-controls [data-prev],.bp-slider-controls [data-next],.bp-slider-controls .bp-slider-dots{display:none}
.bp-menu-dalmatian{width:132px;height:176px;right:8px;bottom:0;object-fit:contain;object-position:center bottom;opacity:1;mix-blend-mode:multiply}
@media(max-width:1000px){.bp-menu-dalmatian{width:115px;height:154px;opacity:1}.bp-service-menu .bp-service-copy{padding-right:110px}}
@media(max-width:680px){.bp-menu-dalmatian{width:110px;height:147px;right:3px}.bp-service-menu .bp-service-copy{padding-right:100px}}

.bp-menu-dalmatian{mix-blend-mode:normal}

/* 2026年10月12日：注釈の調整 */
.bp-trainer-name-mobile{display:none}
.bp-contact-heading{width:fit-content;max-width:100%}
.bp-contact-heading .bp-rays{margin:0 auto 14px}
.bp-contact-actions{position:relative;z-index:2;flex-shrink:0;text-align:center}
.bp-contact-phone{margin:16px 0 0!important}
.bp-contact-phone a{font-size:20px;font-weight:600;text-underline-offset:5px}
.bp-contact-phone small{display:block;font-size:11px;margin-top:4px}
.bp-menu-dog{opacity:1!important;mix-blend-mode:normal;filter:none;z-index:2}
.bp-menu-dalmatian{width:160px;height:200px;right:4px;bottom:0}
.bp-service-menu .bp-service-copy{padding-right:140px}
.bp-service-area h3 span{display:none}
.bp-area-art{opacity:1;right:-25px;width:310px!important;height:310px!important}
.bp-service-area:after{background:linear-gradient(90deg,#e9efdf 0%,#e9efdf00 58%)}
.bp-concern-icon{height:145px}.bp-concern-icon img{width:210px;height:145px}
.footer-main .menu{gap:10px;padding:0;list-style:none}
.footer-main .menu a{display:flex;align-items:center;min-height:48px;padding:10px 14px;border-radius:8px;background:#eaf0e3;text-decoration:none;transition:transform .2s,background .2s}
.footer-main .menu li:nth-child(3n+2) a{background:#f2ecd9}
.footer-main .menu a:hover,.footer-main .menu a:focus-visible{background:#dce7cd;transform:translateY(-2px)}
.bp-slider.is-enhanced .bp-slides{height:450px}
.bp-slider.is-enhanced .bp-slide{position:absolute;inset:0;opacity:0;transition:opacity var(--bp-slide-duration,700ms) ease,transform var(--bp-slide-duration,700ms) ease}
.bp-slider.is-enhanced .bp-slide.is-active{opacity:1;transform:translateX(0);z-index:1}
.bp-slider[data-transition=slide] .bp-slide{transform:translateX(100%)}
.bp-slider[data-transition=slide] .bp-slide.is-leaving{transform:translateX(-100%)}
.bp-slider[data-transition=none] .bp-slide{transition:none}
@media(max-width:1000px){
 .menu-toggle{border-radius:8px!important;position:relative;z-index:10002}
 .bp-menu-open{overflow:hidden}
 .has-js #site-navigation.is-open{display:flex!important;position:fixed;inset:0;z-index:10001;width:100%;height:100dvh;background:rgba(255,253,247,.8);padding:100px 24px 32px;overflow-y:auto;align-items:flex-start;justify-content:center;backdrop-filter:blur(8px)}
 #site-navigation.is-open .menu{display:flex;flex-direction:column;gap:12px;width:min(100%,440px);margin:0;padding:0}
 #site-navigation.is-open .menu li{width:100%}
 #site-navigation.is-open .menu a{display:block;padding:17px 20px;background:#e4ecd8;border-radius:8px;text-decoration:none}
 #site-navigation.is-open .menu li:nth-child(even) a{background:#f1e7cb}
 .bp-menu-open .menu-toggle{position:fixed;top:22px;right:24px;background:#fffdf7}
 .admin-bar.bp-menu-open .menu-toggle{top:68px}
 .admin-bar #site-navigation.is-open{padding-top:130px}
 .bp-slider.is-enhanced .bp-slides{height:380px}
}
@media(max-width:680px){
 .bp-section-heading{text-align:center!important}.bp-section-heading .bp-rays{margin:0 auto 14px}
 .bp-trainer-name-mobile{display:block}.bp-trainer-name-desktop{display:none}
 .bp-contact-heading{margin-inline:auto;text-align:center}.bp-contact-heading .bp-rays{margin:0 auto 14px}
 .bp-contact-actions{text-align:left;width:fit-content}.bp-contact-phone{text-align:center}
 .bp-menu-dalmatian{width:138px;height:180px;right:0}
 .bp-service-menu .bp-service-copy{padding-right:120px}
 .bp-service-menu h3{font-size:21px}
 .bp-area-art{right:-45px;width:285px!important;height:285px!important}
 .bp-slider.is-enhanced .bp-slides{height:280px}
 .bp-concern-icon{height:135px}.bp-concern-icon img{height:135px;width:200px}
}

/* 本文は標準ブロックで更新できる下層ページ。 */
.bp-concerns-section{padding-block:24px!important}.bp-hero{padding-bottom:30px}
@media(max-width:680px){.bp-concern{text-align:center}.bp-concern-icon{text-align:center}.bp-concern-icon img{margin-inline:auto}.bp-concerns-section{padding-block:14px!important}.bp-about{padding-top:26px}.bp-concern p br{display:none}}
.bp-inner-page{padding-top:32px}.bp-inner-page .page-heading{position:relative;border:0;background:#e9f0e3;border-radius:10px;padding:26px 32px;margin-bottom:40px;overflow:hidden}
.bp-inner-page .page-heading:after{content:"";position:absolute;width:180px;height:180px;border-radius:50%;background:#f3e5b5;right:5%;top:22px;opacity:.65;pointer-events:none}
.bp-inner-page .page-heading h1{position:relative;z-index:1;font-size:clamp(28px,4vw,44px);margin:10px 0;line-height:1.5}
.bp-breadcrumb{position:relative;z-index:1;font-size:11px!important;letter-spacing:.08em}
.bp-inner-page .entry-content{max-width:1080px;padding-top:0!important}
.bp-inner-page .entry-content>p:first-child{max-width:800px;font-size:17px;margin:0 auto 34px}
.bp-inner-page .bp-panel{padding:30px;border-radius:10px;background:#edf2e8;margin:28px 0;min-width:0}
.bp-inner-page .bp-panel:nth-child(even){background:#f3efdf}
.bp-inner-page .bp-panel h2{border:0;padding:0;margin:0 0 20px;line-height:1.55;font-size:27px}
.bp-inner-page .bp-panel h3{margin:0 0 12px;font-size:20px}
.bp-inner-page .bp-panel p:last-child,.bp-inner-page .bp-panel figure:last-child{margin-bottom:0}
.bp-inner-page .bp-two-columns{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin:28px 0;align-items:start}
.bp-inner-page .bp-two-columns>.bp-panel{margin:0;height:100%}
.bp-profile-intro{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center;margin:0 0 40px!important}
.bp-profile-intro figure{margin:0}.bp-profile-intro img{width:100%;height:360px;object-fit:cover}
.bp-profile-intro h2{border:0!important;padding:0!important;margin:0 0 20px!important;font-size:30px!important}
.bp-credentials ul{list-style:none;padding:0!important;display:grid;gap:12px}.bp-credentials li{position:relative;padding:18px 18px 18px 48px;background:#fffdf7;border-radius:8px;font-weight:600}
.bp-credentials li:before{content:"✓";position:absolute;left:19px;color:#35705b}
.bp-price-card .wp-block-table{margin:12px 0 20px;background:#fffdf7;border-radius:8px;overflow:hidden}
.bp-price-card table{table-layout:auto}.bp-price-card th,.bp-price-card td{padding:12px!important;font-size:14px;border:0!important}
.bp-price-card tbody td:nth-child(2){font-size:24px;font-weight:750;white-space:nowrap;color:#22644e}
.bp-flow{counter-reset:bp-step}.bp-flow .bp-step{position:relative;background:#fffdf7;border-radius:8px;padding:24px 24px 24px 64px;margin:14px 0;counter-increment:bp-step}
.bp-flow .bp-step:before{content:counter(bp-step,decimal-leading-zero);position:absolute;left:20px;top:25px;color:#a38d3c;font-size:21px;font-weight:750}
.bp-flow .bp-step p{margin:0;font-size:15px}
.bp-inner-page .wp-block-table th{background:#dfe9d7}.bp-inner-page .wp-block-table td{background:#fffdf7}.bp-inner-page .wp-block-table tr:nth-child(even) td{background:#f7f7ef}
.bp-inner-page .wp-block-table th:first-child,.bp-inner-page .wp-block-table td:first-child{width:22%}
.bp-area-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:30px;align-items:center}
.bp-area-regions ul{display:flex;flex-wrap:wrap;gap:10px;list-style:none;padding:0!important}.bp-area-regions li{background:#fffdf7;border-radius:8px;padding:12px 16px;font-weight:600}
.bp-area-map{background:#fffdf7;border-radius:10px;padding:16px;margin:0!important}.bp-area-map svg{display:block;width:100%;height:auto}.bp-area-map figcaption{font-size:12px;margin:10px 6px 0;color:#546654;line-height:1.7}
.bp-map-legend{font-size:12px;text-align:center}.bp-original-map summary{cursor:pointer;font-weight:650}.bp-original-map img{width:100%;height:auto}
.bp-contact-layout{display:grid;grid-template-columns:.75fr 1.25fr;gap:30px;align-items:start;margin-top:30px!important}
.bp-contact-layout>.bp-panel{margin:0}.bp-contact-telephone{background:#e5eddd!important}.bp-contact-telephone a[href^="tel:"]{display:block;font-size:clamp(23px,3vw,30px);font-weight:750;text-underline-offset:5px}
.bp-contact-form{background:#fffdf7!important;border:1px solid #dce4d6;box-shadow:0 8px 32px #183e3708}
.bp-contact-form .wpcf7{margin-top:24px}.bp-contact-form .wpcf7 label{font-size:14px;font-weight:600;margin-bottom:20px}.bp-contact-form .wpcf7 input,.bp-contact-form .wpcf7 textarea{background:#f7f8f3;border-radius:6px}
.bp-contact-form .wpcf7 textarea{min-height:180px}.bp-contact-form .wpcf7 input[type=submit]{width:100%;color:#fff;padding:16px}
.bp-privacy{font-size:14px;background:#f5f5ed!important}.bp-privacy h2{font-size:21px!important}
.bp-faq details{background:#fffdf7;border:1px solid #d9e3cf;border-radius:8px;margin:12px 0;padding:18px 20px}.bp-faq summary{font-size:16px}.bp-faq details[open]{border-color:#8aa880}.bp-faq details p{font-size:14px}
.bp-about-photo{margin:0}.bp-about-photo img{width:100%;max-height:340px;object-fit:cover}.bp-about-lead{font-size:19px!important;font-weight:650}
@media(max-width:800px){.bp-inner-page .page-heading{padding:22px;margin-bottom:28px}.bp-profile-intro,.bp-inner-page .bp-two-columns,.bp-area-grid,.bp-contact-layout{grid-template-columns:1fr;gap:20px}.bp-inner-page .bp-panel{padding:24px}.bp-profile-intro{gap:24px}.bp-profile-intro img{height:300px}.bp-inner-page .bp-panel h2{font-size:24px}.bp-contact-telephone a[href^="tel:"]{font-size:28px}.bp-inner-page .entry-content>p:first-child{font-size:16px}.bp-inner-page .bp-panel .wp-block-table td,.bp-inner-page .bp-panel .wp-block-table th{font-size:13px}.bp-price-card tbody td:nth-child(2){font-size:23px!important}.bp-flow .bp-step{padding:20px 18px 20px 55px}.bp-flow .bp-step:before{left:16px;top:20px}}
.bp-contact-form .wpcf7 input[type=submit]{background:#2b6351!important;color:#fff!important}.bp-contact-form .wpcf7 input[type=submit]:disabled{opacity:.5}

.bp-area-map iframe{display:block;width:100%;height:410px;border:0;border-radius:6px}@media(max-width:759px){.bp-area-map iframe{height:350px}}

/* トップの円を外し、下端を緩やかな波で区切る。 */
.bp-hero>div:first-child::before,.bp-hero>div:first-child::after{content:none!important}
.bp-hero-wrap{background:#f5f4eb}.bp-hero-wave{display:block;width:100%;height:44px;fill:var(--paper);margin-top:-1px}.bp-concerns .bp-concern:nth-child(2){background:#f8dfbd}
@media(max-width:759px){.bp-hero-wave{height:28px}}

.bp-hero>div::before{content:none!important}

/* 地域の一覧を上段、イラスト地図を下段に配置。 */
.bp-area-grid{grid-template-columns:1fr;align-items:start;gap:20px}.bp-area-regions ul{margin-bottom:0}.bp-area-illustration{padding:12px}.bp-area-illustration svg{width:100%;max-width:820px;margin-inline:auto}.bp-area-illustration figcaption{max-width:800px;margin:12px auto 4px}@media(max-width:759px){.bp-area-illustration{padding:6px}.bp-area-regions li{padding:10px 12px}}

.bp-area-illustration img{display:block;width:100%;max-width:820px;height:auto;margin-inline:auto}

/* HOMEを外した高さを上部余白として残す。 */
.bp-inner-page .page-heading{padding-top:58px}.bp-payment{background:#e9f0e3!important}.bp-payment-methods{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.bp-payment-method{padding:24px;background:#fffdf7;border-radius:8px;min-width:0}.bp-payment-method h3{font-size:20px;margin:0 0 18px}.bp-payment-method ul{display:flex;flex-wrap:wrap;gap:8px;list-style:none;padding:0!important;margin:0}.bp-payment-method li{font-size:13px;background:#edf2e8;border-radius:6px;padding:7px 10px;overflow-wrap:anywhere}.bp-payment-note{font-size:13px!important;margin-bottom:0}@media(max-width:800px){.bp-inner-page .page-heading{padding-top:46px}.bp-payment-methods{grid-template-columns:1fr;gap:14px}.bp-payment-method{padding:20px}}

/* 決済方法を伝える線画イラスト。 */
.bp-payment-method::before{content:"";display:block;width:104px;height:98px;margin:0 0 14px;background:center/contain no-repeat}.bp-payment-method:nth-child(1)::before{background-image:url('../payment/card.svg')}.bp-payment-method:nth-child(2)::before{background-image:url('../payment/contactless.svg')}.bp-payment-method:nth-child(3)::before{background-image:url('../payment/qr.svg')}@media(max-width:800px){.bp-payment-method{display:grid;grid-template-columns:76px minmax(0,1fr);column-gap:16px}.bp-payment-method::before{grid-column:1;grid-row:1/3;width:76px;height:76px;margin:0;align-self:center}.bp-payment-method h3,.bp-payment-method ul{grid-column:2}.bp-payment-method h3{font-size:18px;margin-bottom:12px}}

/* プロフィールの資格と歩みを左右に配置。本文の編集内容はそのまま使う。 */
.bp-page-profile .entry-content{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}.bp-page-profile .entry-content>*{grid-column:1/-1;margin-block:0!important}.bp-page-profile .entry-content>.bp-panel:nth-of-type(2),.bp-page-profile .entry-content>.bp-panel:nth-of-type(3){grid-column:auto}
/* お問い合わせ欄の左右を中央寄りにまとめる。 */
.bp-contact-wrap .bp-contact{display:grid;grid-template-columns:1.4fr 1fr;gap:48px;max-width:1000px;text-align:center;align-items:center}.bp-contact-wrap .bp-contact-heading{width:100%;text-align:center}.bp-contact-wrap .bp-contact-heading .bp-rays{margin-inline:auto}.bp-contact-wrap .bp-contact-actions{justify-self:center;width:fit-content;text-align:center;margin-inline:auto}.bp-contact-wrap .bp-contact p{text-align:center}
@media(max-width:800px){.bp-page-profile .entry-content{grid-template-columns:1fr;gap:24px}.bp-contact-wrap .bp-contact{grid-template-columns:1fr;gap:26px;max-width:620px;padding-inline:16px}.bp-contact-wrap .bp-contact-actions .button{margin-top:0}.bp-contact-wrap .bp-contact>div:first-child{min-width:0}.bp-contact-wrap .bp-contact h2{font-size:clamp(23px,5vw,28px)}}

/* 左の犬をカード下端で切り、カード内からのぞく胸像に。 */
.bp-service-menu .bp-service-copy{padding-left:170px;padding-right:0}.bp-service-menu .bp-menu-dog{left:-6px;right:auto;bottom:-25px;width:210px;height:210px;object-fit:contain;object-position:left bottom;pointer-events:none}.bp-service-menu{min-height:210px}.bp-service-menu h3{font-size:24px}@media(max-width:1000px){.bp-service-menu .bp-service-copy{padding-left:142px}.bp-service-menu .bp-menu-dog{width:180px;height:196px;bottom:-20px;left:-8px}.bp-service-menu h3{font-size:22px}}@media(max-width:680px){.bp-service-menu .bp-service-copy{padding-left:118px;padding-right:0}.bp-service-menu .bp-menu-dog{width:151px;height:168px;bottom:-18px;left:-6px}.bp-service-menu h3{font-size:21px}.bp-service-menu{min-height:190px}}

/* 各固定ページの見出しをコンパクトにし、犬を右側からのぞかせる。 */
.bp-inner-page .page-heading{min-height:130px;padding:26px 190px 26px 28px;display:flex;align-items:center;margin-bottom:28px}.bp-inner-page .page-heading h1{margin:0;font-size:clamp(28px,3.4vw,42px);line-height:1.4}.bp-inner-page .page-heading::after{content:none}.bp-heading-dog{position:absolute;right:20px;bottom:-13px;width:160px;height:145px;object-fit:contain;object-position:center bottom;z-index:1;pointer-events:none}.bp-heading-border{background-size:200% 200%;background-position:0 0;background-repeat:no-repeat;height:155px}.bp-heading-pair{width:185px;right:8px}.bp-map-scroll{overflow:hidden}.bp-map-hint{display:none}.bp-original-map{display:none!important}.bp-contact-telephone p:has(a[href^="tel:"]){text-align:center}.bp-contact-telephone p:has(a[href^="tel:"]) a{text-align:center}
/* 手順ごとの線画を既存の流れへ添える。 */
.bp-flow .bp-step{padding-right:186px;min-height:160px}.bp-flow .bp-step::after{content:"";position:absolute;right:18px;top:50%;transform:translateY(-50%);width:145px;height:115px;background:center/contain no-repeat}.bp-flow:has(#counseling-flow) .bp-step:nth-of-type(1)::after{background-image:url('../flow/inquiry.webp')}.bp-flow:has(#counseling-flow) .bp-step:nth-of-type(2)::after{background-image:url('../flow/counseling.webp')}.bp-flow:has(#training-flow) .bp-step:nth-of-type(1)::after{background-image:url('../flow/goal.webp')}.bp-flow:has(#training-flow) .bp-step:nth-of-type(2)::after{background-image:url('../flow/practice.webp')}.bp-flow:has(#training-flow) .bp-step:nth-of-type(3)::after{background-image:url('../flow/review.webp')}.bp-flow:has(#training-flow) .bp-step:nth-of-type(4)::after{background-image:url('../flow/continue.webp')}
@media(max-width:800px){.bp-inner-page{padding-top:20px}.bp-inner-page .page-heading{min-height:108px;padding:18px 118px 18px 18px;margin-bottom:24px}.bp-inner-page .page-heading h1{font-size:clamp(23px,5vw,28px)}.bp-heading-dog{right:5px;width:108px;height:103px;bottom:-10px}.bp-heading-border{width:108px;height:108px}.bp-heading-pair{width:122px;right:0}.bp-page-area .bp-area-illustration{width:100vw;max-width:none;margin-inline:calc(50% - 50vw)!important;padding:0;border-radius:0}.bp-map-scroll{overflow-x:auto;overscroll-behavior-x:contain}.bp-map-scroll img{width:600px;min-width:600px;max-width:none;border-radius:0!important}.bp-map-hint{display:block;font-size:13px!important;text-align:center;margin:8px 12px!important}.bp-area-illustration figcaption{font-size:14px;margin:12px 16px!important}.bp-contact-form{padding:18px!important}.bp-contact-form .wpcf7{margin-top:16px}.bp-contact-form .wpcf7 p{margin-block:0 12px}.bp-contact-form .wpcf7 label{margin-bottom:0;line-height:1.6}.bp-contact-form .wpcf7-form-control-wrap{margin-top:6px}.bp-contact-form .wpcf7 input{padding:10px;min-height:44px}.bp-contact-form .wpcf7 textarea{min-height:125px;height:125px;padding:10px}.bp-contact-form .wpcf7 .wpcf7-acceptance label{font-size:13px}.bp-flow .bp-step{padding:82px 18px 18px;min-height:0}.bp-flow .bp-step::after{top:8px;right:14px;transform:none;width:94px;height:74px}.bp-flow .bp-step::before{top:22px;left:18px}.bp-flow .bp-step p{font-size:14px;line-height:1.8}.bp-flow .bp-step h3{font-size:18px}}
.bp-heading-shiba{object-fit:cover;object-position:center top}
/* 犬の背景に淡い黄色の円を重ねる。 */
.bp-inner-page .page-heading::after{content:"";position:absolute;width:188px;height:188px;border-radius:50%;background:#f1e6b9;opacity:.8;right:9px;top:18px;z-index:0;pointer-events:none}.bp-inner-page .page-heading h1{z-index:1}.bp-heading-shiba{object-fit:contain;object-position:center bottom;width:144px;height:145px;right:23px;bottom:-22px}@media(max-width:800px){.bp-inner-page .page-heading::after{width:128px;height:128px;right:-5px;top:18px}.bp-heading-shiba{width:104px;height:124px;right:7px;bottom:-22px}}
/* トップ写真を、左側が大きく丸く膨らむ非対称の枠へ。 */
.bp-hero .bp-slides{border-radius:10px;overflow:hidden;isolation:isolate}.bp-hero .bp-slider .bp-slide img,.bp-hero .bp-slider .bp-slide video{border-radius:0}@media(max-width:680px){.bp-hero .bp-slides{border-radius:10px}}
/* 手順番号は本文の見出しに統一。 */
.bp-flow .bp-step::before{content:none}.bp-flow .bp-step{padding-left:24px;padding-right:225px;min-height:190px}.bp-flow .bp-step::after{width:180px;height:155px;right:20px}@media(max-width:800px){.bp-flow .bp-step{padding:168px 18px 18px;min-height:0}.bp-flow .bp-step::after{width:174px;height:145px;top:10px;right:calc(50% - 87px);transform:none}}

@media(max-width:800px){.bp-flow .bp-step{padding-top:180px}.bp-flow .bp-step::after{width:214px;height:160px;right:calc(50% - 107px)}}

/* 独立した流れページの見出し。 */
.bp-heading-shepherd{width:150px;height:150px;right:22px;bottom:-16px}.bp-page-flow .page-heading h1{font-size:clamp(24px,3vw,34px);max-width:800px}.bp-flow-links a{font-weight:700}@media(max-width:800px){.bp-heading-shepherd{width:108px;height:120px;right:6px;bottom:-14px}.bp-page-flow .page-heading h1{font-size:21px;line-height:1.45}.bp-page-flow .page-heading{min-height:120px}}

.bp-page-flow .page-heading h1 span{display:inline-block;white-space:nowrap}@media(max-width:800px){.bp-page-flow .page-heading h1{font-size:18px}}

/* 電話の案内を個人情報の説明後へ。 */
.bp-page-contact .bp-contact-layout{grid-template-columns:1fr}.bp-page-contact .entry-content>.bp-contact-telephone{margin-top:28px}.bp-heading-doodle{width:150px;height:145px;right:22px;bottom:-17px}.bp-heading-poodle-shiba{width:190px;height:145px;right:4px;bottom:-16px}.bp-service-menu .bp-menu-poodle-shiba{width:190px;height:180px;object-fit:contain;object-position:center bottom;left:5px;bottom:-20px;right:auto}@media(max-width:800px){.bp-heading-doodle{width:108px;height:115px;right:6px;bottom:-12px}.bp-heading-poodle-shiba{width:130px;height:112px;right:0;bottom:-12px}.bp-page-about .page-heading{padding-right:140px}.bp-service-menu .bp-menu-poodle-shiba{width:130px;height:140px;left:0;bottom:-16px}.bp-page-contact .entry-content>.bp-contact-telephone{margin-top:20px}}
.bp-concern-icon img[src$="/walk-companion.webp"]{transform:scaleX(-1)}
