/* Phase 3 forms: existing HubSpot/PHP markup and callbacks are retained. */
body.pf2026 .pf-forms{background:#fff}
body.pf2026 .pf-forms .pf-form-section{position:static;width:100%;height:auto;margin:0;padding:64px 0 84px;background:var(--pf-bg)}
body.pf2026 .pf-forms .pf-form-wrap{width:100%;max-width:1080px;margin:auto;padding:0 max(32px,var(--pf-rail-safe)) 0 32px!important}
body.pf2026 .pf-forms .pf-form-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:40px;margin:0;align-items:start}
body.pf2026 .pf-forms .pf-form-grid>div{width:auto;min-width:0;padding:0}
body.pf2026 .pf-forms .pf-form-grid>.pf-form-panel{background:#fff;padding:32px;border:1px solid var(--pf-line);border-top:5px solid var(--pf-blue);border-radius:20px;box-shadow:0 12px 36px #053a8810}
body.pf2026 .pf-forms .pf-form-aside h3{font-size:24px;line-height:1.6;margin:0 0 20px}
body.pf2026 .pf-forms .pf-form-aside .txt{padding:0;margin:0 0 24px}
body.pf2026 .pf-forms .pf-form-aside .txt li{font-size:15px;font-weight:400;line-height:1.9;margin-bottom:12px}
body.pf2026 .pf-forms .pf-form-aside .top-img{display:block;width:auto;max-width:100%;max-height:320px;margin:24px auto;object-fit:contain}
body.pf2026 .pf-forms .pf-form-aside .img-group{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:28px 0;align-items:center}
body.pf2026 .pf-documents .pf-form-aside .img-group{grid-template-columns:repeat(3,minmax(0,1fr))}
body.pf2026 .pf-forms .pf-form-aside .img-group img{position:static;width:100%;height:auto;margin:0!important;border:1px solid var(--pf-line);border-radius:12px;box-shadow:0 4px 14px #053a8810}
body.pf2026 .pf-forms .learning-material{padding:24px;background:#fff;border:1px solid var(--pf-line);border-radius:20px;margin-top:28px;font-size:14px;line-height:1.9}
body.pf2026 .pf-forms .learning-title{display:block;color:var(--pf-navy);font-size:20px}
body.pf2026 .pf-forms .learning-material img{width:22px;height:22px;flex:none;margin-top:4px}
body.pf2026 .pf-forms .guide-row{margin:28px 0 0;padding:16px;background:var(--pf-cream);border-radius:16px;border:1px solid #f1dc94}
body.pf2026 .pf-forms .guide-row h4{font-size:15px;line-height:1.8}
body.pf2026 .pf-forms .guide-row a{flex:none}
body.pf2026 .pf-forms .guide-row img{width:36px;height:auto}
body.pf2026 .pf-forms .pf-form-panel form{width:100%;max-width:none;margin:0;padding:0}
body.pf2026 .pf-forms .pf-form-panel :is(iframe,.hbspt-form){display:block;width:100%!important;max-width:100%;border:0}
body.pf2026 .pf-forms .pf-form-panel :is(fieldset,.hs-form-field){max-width:100%;min-width:0}
body.pf2026 .pf-forms .pf-form-panel .row{margin-left:0;margin-right:0}
body.pf2026 .pf-forms .pf-form-panel .row>[class*="col-"]{padding-left:0;padding-right:0}
body.pf2026 .pf-forms .pf-form-panel :is(.input-box-div,.row6){margin:0 0 24px;padding:0}
body.pf2026 .pf-forms .pf-form-panel :is(h3,label){font-size:15px;line-height:1.7;font-weight:700;color:var(--pf-ink);margin:0}
body.pf2026 .pf-forms .pf-form-panel h3{display:inline}
body.pf2026 .pf-forms .pf-form-panel h5{font-size:13px;line-height:1.9;font-weight:400;color:var(--pf-sub)}
body.pf2026 .pf-forms .pf-form-panel :is(input:not([type=hidden]):not([type=checkbox]):not([type=radio]):not([type=submit]),select,textarea){display:block;width:100%;max-width:100%;min-width:0;min-height:46px;border:1px solid #b8c9dc;border-radius:10px;padding:11px 12px;background:#fff;font:inherit;font-size:16px;line-height:1.6;color:var(--pf-ink);box-shadow:none}
body.pf2026 .pf-forms .pf-form-panel textarea{min-height:180px;resize:vertical}
body.pf2026 .pf-forms .pf-form-panel .input-row{gap:12px}
body.pf2026 .pf-forms .pf-form-panel .input-row>div{width:calc((100% - 12px)/2);padding:0}
body.pf2026 .pf-forms .pf-form-panel .badge{display:inline-block;background:#b42332;color:#fff;padding:3px 8px;font-size:11px;font-weight:700;line-height:1.6;border-radius:6px;vertical-align:middle}
body.pf2026 .pf-forms .pf-form-panel :is(.text-danger,.hs-error-msgs){display:block;color:#b42332!important;font-size:13px;line-height:1.7;margin-top:6px}
body.pf2026 .pf-forms .pf-form-panel .check-label{gap:10px;align-items:flex-start!important}
body.pf2026 .pf-forms .pf-form-panel :is(input[type=checkbox],input[type=radio]){flex:none;width:18px;height:18px;margin:3px 0 0;accent-color:var(--pf-navy)}
body.pf2026 .pf-forms :is(input,textarea,select,button):focus-visible{outline:3px solid var(--pf-blue);outline-offset:3px}
body.pf2026 .pf-forms :is(.primary-btn,.btn-pigeon-primary,.hs-button){display:inline-flex;align-items:center;justify-content:center;gap:8px;width:auto;max-width:100%;min-height:48px;padding:12px 24px;border:2px solid var(--pf-yellow);border-radius:999px;background:var(--pf-yellow);color:var(--pf-ink);font-size:15px;font-weight:800;line-height:1.6;text-decoration:none;white-space:normal}
body.pf2026 .pf-forms .pf-form-panel .form-submit-btn{width:100%;margin-top:24px!important}
body.pf2026 .pf-forms :is(.primary-btn,.btn-pigeon-primary,.hs-button):hover{background:#ffda68;border-color:#ffda68;box-shadow:0 5px 18px #053a881c}
body.pf2026 .pf-forms button:disabled{opacity:.65;cursor:wait}
body.pf2026 .pf-forms .pf-form-complete{padding-left:32px;padding-right:max(32px,var(--pf-rail-safe))}
body.pf2026 .pf-forms .pf-form-complete>div{max-width:1016px;width:100%;margin:auto;padding:32px!important;background:#fff;border:1px solid var(--pf-line);border-radius:20px}
body.pf2026 .pf-forms .complete-page{width:100%;max-width:960px}
body.pf2026 .pf-forms .complete-page h3{font-size:24px;line-height:1.7;margin-bottom:24px}
body.pf2026 .pf-forms .complete-page :is(p,li){line-height:1.9;font-weight:400}
body.pf2026 .pf-forms .complete-page ul.txt{padding:0}
/* Legacy common CSS also arrives through the shared header stylesheets. */
body.pf2026 .pf-forms .complete-text{margin:24px 0;font-size:18px;line-height:2;text-align:center;color:var(--pf-navy)}
body.pf2026 .pf-forms .pf-form-complete img.img-fluid{width:100%;height:auto}
body.pf2026 .pf-forms .meetings-iframe-container{width:100%;margin-top:24px}
body.pf2026 .pf-forms .meetings-iframe-container iframe{width:100%;max-width:100%;border:0}
body.pf2026 .pf-forms .bg-download{background:var(--pf-bg);border-radius:16px}
body.pf2026 .pf-forms .complete-div{max-width:780px;width:100%;padding:24px!important;text-align:center}
body.pf2026 .pf-forms .download-material{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
body.pf2026 .pf-forms .download-material>div{margin:0!important;min-width:0}
body.pf2026 .pf-forms .download-material .item{height:100%;padding:24px;border:1px solid var(--pf-line);border-radius:16px;background:#fff}
body.pf2026 .pf-forms .download-material .item>img{display:block;width:100%;height:180px;object-fit:contain;margin:0 auto 20px}
body.pf2026 .pf-forms .download-material .item-title{font-size:18px;font-weight:800;color:var(--pf-navy)}
body.pf2026 .pf-forms .download-material .content{font-size:14px}
body.pf2026 .pf-online1 .pf-info-article>div+div{margin-top:64px}
body.pf2026 .pf-online1 .pf-info-article :is(.container-xl,.container-lg,.container-fluid,.pc-container){width:100%;max-width:none;padding:0!important;margin:0}
body.pf2026 .pf-online1 .pf-info-article .row{margin-left:0;margin-right:0}
body.pf2026 .pf-online1 .pf-info-article h3{font-size:26px;margin-bottom:24px}
body.pf2026 .pf-online1 .pf-info-article :is(h5,h6){font-size:16px;line-height:1.9}
body.pf2026 .pf-online1 .follow-section{margin-top:32px!important;padding:28px!important;background:var(--pf-bg);border-radius:20px}
body.pf2026 .pf-online1 .detail-row{align-items:flex-start;margin-top:20px}
body.pf2026 .pf-online1 .detail-row img{max-width:38px;height:24px}
body.pf2026 .pf-online1 .info-row>div{gap:16px;padding:24px!important;border:1px solid var(--pf-line);border-radius:16px}
body.pf2026 .pf-online1 .info-row img{height:180px;object-fit:contain}
body.pf2026 .pf-online1 .img-number{font-size:32px;font-weight:800;color:var(--pf-blue)}
body.pf2026 .pf-online1 .faq{padding:20px;border-bottom:1px solid var(--pf-line)}
body.pf2026 .pf-online1 .question{display:flex;align-items:baseline;gap:20px}
body.pf2026 .pf-online1 .question button{appearance:none;min-width:0;margin:0 0 1rem;padding:0;border:0;border-radius:0;background:none;font:inherit;font-size:16px;line-height:1.9;color:var(--pf-sub);text-align:left;cursor:pointer}
body.pf2026 .pf-online1 .answer{padding:12px 0;font-size:15px}
@media(max-width:900px){
 body.pf2026 .pf-forms .pf-form-grid{grid-template-columns:minmax(0,1fr);gap:32px}
 body.pf2026 .pf-forms .pf-form-aside .img-group{max-width:480px;margin-left:auto;margin-right:auto}
}
@media(max-width:900px){
 body.pf2026 .pf-trial .pf-form-grid{grid-template-columns:minmax(0,1fr)}
 body.pf2026 .pf-trial .pf-form-panel{order:-1}
}
@media(max-width:767px){
 body.pf2026 .pf-forms .pf-form-section{padding:40px 0}
 body.pf2026 .pf-forms .pf-form-wrap{padding:0 20px!important}
 body.pf2026 .pf-forms .pf-form-grid>.pf-form-panel{padding:24px 20px}
 body.pf2026 .pf-forms .pf-form-aside h3{font-size:22px}
 body.pf2026 .pf-forms .learning-material{padding:20px}
 body.pf2026 .pf-forms .pf-form-complete{padding-left:20px;padding-right:20px}
 body.pf2026 .pf-forms .pf-form-complete>div{padding:20px!important}
 body.pf2026 .pf-forms .complete-page h3{font-size:20px}
 body.pf2026 .pf-forms .complete-div{padding:20px 0!important}
 body.pf2026 .pf-forms .download-material{grid-template-columns:minmax(0,1fr)}
 body.pf2026 .pf-forms .complete-text{font-size:16px}
 body.pf2026 .pf-online1 .pf-info-article>div+div{margin-top:40px}
}
body.pf2026 .pf-forms .pf-form-hero-action{padding-bottom:40px}
body.pf2026 .pf-online1 .logo-container>div{display:flex;align-items:center;justify-content:center;padding:16px;border:1px solid var(--pf-line);border-radius:12px;background:#fff;min-width:0}
/* 相談ページのロゴにも共通の48px上限と縦横比維持を適用する。 */
body.pf2026 .pf-online1 .logo-container img{max-height:48px;max-width:100%;width:auto;height:auto;object-fit:contain}
body.pf2026 .pf-forms .icon-download{display:inline-block;flex:none;width:20px;height:20px;background:currentColor;mask:url('/assets/icons/download.svg') center/contain no-repeat;-webkit-mask:url('/assets/icons/download.svg') center/contain no-repeat}
body.pf2026 .pf-online1 #pigeon-cloud-partners{height:auto;min-height:0;margin-bottom:0;padding:64px 0 80px}
body.pf2026 .pf-online1 .pf-reservation-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
body.pf2026 .pf-online1 .pf-reservation-cards>div{width:auto;margin:0!important}
body.pf2026 .pf-online1 .pf-reservation-cards>div>img{display:block;margin:0 auto}
body.pf2026 .pf-online1 .pf-reservation-cards>div>p{margin:0;color:var(--pf-sub);font-size:15px;font-weight:400;line-height:1.9}
body.pf2026 .pf-online1 .pf-reservation-cards>div>.btn{margin-top:auto}
body.pf2026:has(.pf-online1 #pigeon-cloud-online) .grecaptcha-badge{visibility:hidden!important}
body.pf2026 .pf-online1 .pf-recaptcha-notice{margin:14px 0 0;color:var(--pf-muted);font-size:11px;line-height:1.6}
body.pf2026 .pf-online1 .pf-recaptcha-notice a{color:var(--pf-blue);text-decoration:underline}
@media(max-width:767px){
 body.pf2026 .pf-online1 #pigeon-cloud-partners{padding:40px 0 56px}
 body.pf2026 .pf-online1 .pf-reservation-cards{grid-template-columns:minmax(0,1fr);gap:20px}
}
