/*
Theme Name: Positive Change Consulting
Theme URI: https://positivechange.jp/
Author: Positive Change Consulting
Description: 株式会社ポジティブチェンジコンサルティングのコーポレートサイト用・軽量クラシックテーマ。
Version: 1.0.0
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: pcc
*/

*{box-sizing:border-box;margin:0;padding:0;}
:root{--navy:#1B2F4D;--navy2:#2c4263;--orange:#E07B33;--teal:#155249;--teal2:#234a40;--sage:#9DBEA6;--ink:#33414f;--sub:#5d6770;--line:#dde3de;--bg:#eef0ee;--paper:#fff;--ease:cubic-bezier(.22,1,.36,1);
  
  --orange-ink:#A8551A;--sage-ink:#B4CFBC;--sub-strong:#5E6660;
  
  --cta-bg:#9DBEA6;--cta-fg:#1B2F4D;--cta-border:#1B2F4D;
  
  --badge-bg:#E07B33;--badge-fg:#1B2F4D;
  
  --hair:#cfd7d0;--hair-d:rgba(255,255,255,.16);--hair-ui:#69796F;}
html{scroll-behavior:smooth;}
body{background:var(--bg);font-family:'Zen Kaku Gothic New',sans-serif;color:var(--ink);-webkit-font-smoothing:antialiased;}
img{max-width:100%;height:auto;display:block;}
picture{display:block;}
.en{font-family:'Red Hat Display',sans-serif;font-feature-settings:"tnum";}
.wrap{max-width:1040px;margin:0 auto;padding:0 40px;}
.full{width:100%;}
.lbl{font-size:13px;font-weight:800;letter-spacing:4px;color:var(--orange-ink);margin:0 0 12px;}
.h,.hero-h{text-wrap:balance;}
.h{font-size:32px;font-weight:900;color:var(--navy);line-height:1.35;letter-spacing:.5px;margin:0;}

.h .ac,.ac{color:var(--navy);border-bottom:4px solid var(--orange);padding-bottom:1px;}

.h[style*="color:#fff"] .ac,[style*="color:#fff"] .ac{color:inherit;}
.lead{font-size:17px;line-height:1.95;color:var(--ink);font-weight:500;text-wrap:pretty;}
.body{font-size:16px;line-height:1.95;color:var(--ink);text-wrap:pretty;}
.btn{display:inline-block;background:var(--cta-bg);color:var(--cta-fg);border:2px solid var(--cta-border);font-weight:900;font-size:17px;padding:17px 38px;border-radius:9px;text-decoration:none;letter-spacing:.5px;position:relative;overflow:hidden;transition:transform .25s var(--ease),box-shadow .25s var(--ease);}
.btn:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(27,47,77,.26);}
.btn .sheen{position:absolute;top:0;left:-130%;width:60%;height:100%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.35),transparent);transform:skewX(-18deg);}
.btn:hover .sheen{animation:sheen .85s var(--ease);}
@keyframes sheen{to{left:140%;}}
.ghost{display:inline-block;border:2px solid var(--navy);color:var(--navy);font-weight:800;font-size:15px;padding:13px 26px;border-radius:9px;text-decoration:none;transition:background .25s,color .25s;}
.ghost:hover{background:var(--navy);color:#fff;}
.nav{display:flex;align-items:center;gap:26px;font-size:15px;font-weight:700;color:#33414f;}
.navbtn{display:none;}
.nav span{position:relative;cursor:pointer;}
.nav span::after{content:"";position:absolute;left:0;bottom:-6px;width:100%;height:2px;background:var(--orange);transform:scaleX(0);transform-origin:left;transition:transform .3s var(--ease);}
.nav span:hover::after,.nav span.on::after{transform:scaleX(1);}
#prog{position:fixed;top:0;left:0;height:3px;width:0;background:var(--orange);z-index:60;transition:width .08s linear;}
.rv{opacity:0;transform:translateY(24px);transition:opacity .7s var(--ease),transform .7s var(--ease);}
.rv.in{opacity:1;transform:none;}
.rv.d1{transition-delay:.08s;}.rv.d2{transition-delay:.16s;}.rv.d3{transition-delay:.24s;}
.q{display:flex;gap:11px;align-items:flex-start;font-size:15.5px;color:#33414f;line-height:1.7;margin:0 0 11px;}
.q:before{content:"";flex-shrink:0;width:22px;height:22px;margin-top:1px;background:url("data:image/svg+xml;charset=utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M12 2.5 L22.5 21 L1.5 21 Z' fill='%23E2A23A' stroke='%23C2851F' stroke-width='1.2' stroke-linejoin='round'/><rect x='11' y='9' width='2' height='6.2' fill='%23fff'/><circle cx='12' cy='18' r='1.2' fill='%23fff'/></svg>") center/contain no-repeat;}
.rcard{position:relative;background:var(--paper);border:1px solid #c8d3cb;border-radius:13px;padding:26px 26px;overflow:hidden;transition:transform .3s var(--ease),box-shadow .3s var(--ease),border-color .3s;}
.rcard:hover{transform:translateY(-5px);box-shadow:0 14px 32px rgba(27,47,77,.12);border-color:var(--orange);}
.rcard .rn{position:absolute;top:10px;right:18px;font-family:'Red Hat Display';font-weight:900;font-size:58px;line-height:1;color:rgba(21,82,73,.07);}
.rcard .rt{font-size:18px;font-weight:900;color:var(--teal);margin:0 0 8px;line-height:1.4;position:relative;}
.rcard .rd{font-size:14.5px;color:var(--sub);line-height:1.85;margin:0;position:relative;}
.stp{display:flex;gap:18px;align-items:flex-start;position:relative;padding:0 0 26px;}
.stp:last-child{padding-bottom:0;}
.stp::before{content:"";position:absolute;left:14px;top:34px;bottom:-2px;width:2px;background:#e6d8c8;}
.stp:last-child::before{display:none;}
.stp .sn{position:relative;z-index:1;flex-shrink:0;width:30px;height:30px;border-radius:50%;background:var(--badge-bg);color:var(--badge-fg);font-family:'Red Hat Display';font-weight:800;font-size:14px;display:flex;align-items:center;justify-content:center;}
.stp .sn svg{width:16px;height:16px;}
.stp .ss{font-size:15px;color:#33414f;line-height:1.7;padding-top:4px;}
.draw{stroke-dasharray:1200;stroke-dashoffset:1200;transition:stroke-dashoffset 1.6s var(--ease);}
.draw.in{stroke-dashoffset:0;}
.crumb{color:inherit;text-decoration:none;} .crumb:hover{color:var(--orange-ink);text-decoration:underline;}
@keyframes hping{0%{r:13;opacity:.95;}100%{r:42;opacity:0;}}
@keyframes hglow{0%,100%{filter:drop-shadow(0 0 6px rgba(224,123,51,.85));}50%{filter:drop-shadow(0 0 16px rgba(224,123,51,1)) drop-shadow(0 0 6px rgba(255,206,160,.95));}}
#hlogo{opacity:0;transform-box:fill-box;transform-origin:center;}
#hdot.arrived{animation:hglow 1.8s ease-in-out infinite;}
#hring.arrived{animation:hping 1.2s ease-out 1;}

.hero-grid{
  --hgw: min(39vw, 500px);                        
  --hgright: 3vw;                                 
  --wrapright: min(100vw - 40px, 50vw + 480px);   
  
  --hgpull: calc(26px + 0.074 * var(--hgw));
  display:grid;
  grid-template-columns:minmax(0,1fr) max(0px, calc(var(--wrapright) - (100vw - var(--hgright) - var(--hgw)) - var(--hgpull)));
  align-items:end;
  gap:32px;                                       
}

.cut-top{clip-path:polygon(0 26px,16% 10px,29% 17px,52% 0,71% 9px,100% 0,100% 100%,0 100%);}
.cut-btm{clip-path:polygon(0 0,100% 0,100% calc(100% - 26px),71% calc(100% - 9px),52% 100%,29% calc(100% - 17px),16% calc(100% - 10px),0 calc(100% - 26px));}

.mini-ridge{display:inline-block;vertical-align:middle;width:30px;height:19px;margin:0 0 2px 8px;flex-shrink:0;}
.mini-ridge path{stroke:#5E8C7B;stroke-width:3.4;fill:none;stroke-linecap:round;stroke-linejoin:round;}
.mini-ridge circle{fill:var(--orange);}

.ed{display:grid;grid-template-columns:4fr 8fr;gap:60px;align-items:start;}
.ed>*{min-width:0;}
.ed-side{position:sticky;top:104px;}

.lbl-jp{font-size:13px;font-weight:900;letter-spacing:.09em;color:var(--sage-ink);margin:0 0 9px;line-height:1.6;}
.textlink{color:var(--orange-ink);font-weight:900;text-decoration:none;border-bottom:1px solid rgba(168,85,26,.35);padding-bottom:2px;transition:border-color .25s;}
.textlink:hover{border-bottom-color:var(--orange);}

header.site{position:sticky;top:0;z-index:40;background:rgba(255,255,255,.93);
            backdrop-filter:saturate(1.1) blur(7px);-webkit-backdrop-filter:saturate(1.1) blur(7px);
            border-bottom:1px solid #e3e7e3;}
header.site>.wrap{display:flex;justify-content:space-between;align-items:center;height:74px;}
.nav .navcta{background:var(--cta-bg);color:var(--cta-fg);border:2px solid var(--cta-border);padding:9px 18px;
             border-radius:8px;text-decoration:none;font-size:14px;font-weight:800;}

footer.site{background:var(--navy);color:#fff;margin-top:72px;overflow:hidden;}
footer.site>.wrap{position:relative;z-index:2;padding-top:76px;padding-bottom:34px;}
.foot-tag{font-size:clamp(30px,5.2vw,66px);font-weight:900;line-height:1.2;letter-spacing:-.024em;margin:0 0 8px;color:#fff;}
.foot-tag .o{color:var(--orange);}

.foot-ridge-w{position:relative;display:block;margin:26px 0 46px;}
.foot-ridge{display:block;width:100%;height:56px;margin:0;}
.foot-ridge-w::after{content:"";position:absolute;right:calc(1.845% - 6px);top:2.2px;width:12px;height:12px;border-radius:50%;background:var(--orange);}
.foot-cols{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:30px;align-items:start;
           border-top:1px solid var(--hair-d);padding-top:34px;}
.foot-cols>*{min-width:0;}
.foot-co{color:var(--orange);font-weight:700;font-size:15px;margin:0 0 8px;}
.foot-ad{color:#aebccc;font-size:13px;line-height:1.85;margin:0;}
.foot-k{font-family:'Red Hat Display',sans-serif;font-size:13px;font-weight:800;letter-spacing:.24em;
        color:var(--sage-ink);margin:0 0 14px;}
.foot-nav{display:flex;flex-direction:column;gap:11px;font-size:13.5px;}
.foot-nav a{color:#9DBEA6;text-decoration:none;width:fit-content;border-bottom:1px solid transparent;transition:border-color .25s;}
.foot-nav a:hover{border-bottom-color:var(--orange);}
.foot-c{color:#9DB0CC;font-size:13px;margin:38px 0 0;text-align:center;
        border-top:1px solid var(--hair-d);padding-top:20px;font-family:'Red Hat Display',sans-serif;letter-spacing:.04em;}
@media(max-width:880px){
  .ed{grid-template-columns:1fr;gap:30px;}
  .ed-side{position:static;}
  .foot-cols{grid-template-columns:1fr 1fr;gap:28px 24px;}
}

@media(max-width:560px){
  .foot-cols{grid-template-columns:1fr;}
}

@media(max-width:860px){
  .wrap{padding:0 20px;} .h{font-size:25px;} .hero-h{font-size:32px!important;}
  .grid2{grid-template-columns:1fr!important;}
  .grid3-top{grid-template-columns:1fr!important;}
  .navbtn{display:flex;flex-direction:column;justify-content:center;gap:6px;width:44px;height:44px;background:transparent;border:none;cursor:pointer;padding:0;}
  .navbtn span{display:block;width:26px;height:2.5px;background:var(--navy);border-radius:2px;margin:0 auto;transition:transform .3s var(--ease),opacity .2s;}
  .navbtn.open span:nth-child(1){transform:translateY(8.5px) rotate(45deg);}
  .navbtn.open span:nth-child(2){opacity:0;}
  .navbtn.open span:nth-child(3){transform:translateY(-8.5px) rotate(-45deg);}
  .nav{position:absolute;top:100%;left:0;right:0;flex-direction:column;align-items:stretch;gap:0;background:#fff;border-top:1px solid #e3e7e3;border-bottom:1px solid #e3e7e3;box-shadow:0 14px 26px rgba(27,47,77,.10);padding:6px 0;display:none;}
  .nav.open{display:flex;}
  .nav a{padding:14px 22px;}
  
  .hero-grid{grid-template-columns:minmax(0,1fr);gap:0;}
  #hsvg{position:relative!important;right:auto!important;left:auto!important;top:auto!important;bottom:auto!important;width:82%!important;max-width:300px!important;height:auto!important;opacity:1!important;display:block!important;margin:18px auto 0!important;}
}

@media(prefers-reduced-motion:reduce){
  .rv{opacity:1!important;transform:none!important;transition:none!important;}
  
  footer .draw{stroke-dashoffset:0!important;transition:none!important;}
}

.pccform .flbl{margin:16px 0 6px;font-size:13px;font-weight:700;color:var(--navy);}

.pccform input[type=text],.pccform input[type=email],.pccform input[type=tel],.pccform input[type=url],
.pccform input[type=number],.pccform select,.pccform textarea{width:100%;box-sizing:border-box;font:inherit;font-family:inherit;color:#33414f;background:#fff;border:1px solid #cdd4cf;border-radius:7px;padding:12px 14px;min-height:49px;appearance:none;-webkit-appearance:none;}

.pccform select{padding-right:40px;background-image:url("data:image/svg+xml;charset=utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8'><path d='M1 1.5 L6 6.5 L11 1.5' fill='none' stroke='%231B2F4D' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/></svg>");background-repeat:no-repeat;background-position:right 15px center;background-size:12px 8px;cursor:pointer;}
.pccform textarea{min-height:120px;resize:vertical;}
.pccform input[type=text]:focus,.pccform input[type=email]:focus,.pccform input[type=tel]:focus,
.pccform select:focus,.pccform textarea:focus{outline:none;border-color:var(--orange);box-shadow:0 0 0 3px rgba(224,123,51,.14);}

.pccform .flbl-area{margin:12px 0 4px;font-size:13px;font-weight:700;color:var(--sub);}
.pccform .wpcf7-checkbox{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px;}

.pccform .wpcf7-checkbox .wpcf7-list-item{margin:0;display:inline-flex;align-items:center;gap:6px;background:#f4f6f4;border:1px solid #d8ded9;border-radius:8px;padding:8px 13px;font-size:13.5px;color:#33414f;}
.pccform input.wpcf7-submit{background:var(--cta-bg);color:var(--cta-fg);border:2px solid var(--cta-border);border-radius:9px;padding:15px 42px;font-family:inherit;font-weight:900;font-size:16px;letter-spacing:.5px;cursor:pointer;transition:transform .25s,box-shadow .25s;}
.pccform input.wpcf7-submit:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(27,47,77,.26);}
.wpcf7 .wpcf7-response-output{border-radius:8px;margin:18px 0 0;padding:12px 16px;font-size:14px;}
.wpcf7-not-valid-tip{color:#c0392b;font-size:13px;margin-top:4px;}

.pcc-hp{position:absolute!important;left:-9999px!important;top:auto!important;width:1px;height:1px;overflow:hidden;}

h1,h2,h3,h4,.h,.hero-h{text-wrap:balance;}
p,li,dd,figcaption,.lead,.body,.sd{text-wrap:pretty;}

header.site>.wrap,
footer.site>.wrap{max-width:1180px;}
