
  
  body{margin:0;background:var(--surface-100);color:var(--ink);font-family:var(--font-jp);}
  a{color:inherit;text-decoration:none;}
  .btn-ghost{display:inline-flex;align-items:center;gap:8px;padding:12px 24px;border-radius:4px;border:1px solid var(--border);color:var(--ink);font-weight:500;font-size:15px;background:transparent;cursor:pointer;}
  .btn-primary{display:inline-flex;align-items:center;gap:8px;padding:14px 28px;border-radius:4px;background:linear-gradient(135deg,var(--pts-green-deep),var(--brand-blue));color:#ffffff;font-weight:700;font-size:16px;border:none;cursor:pointer;}
  .data-row{display:grid;grid-template-columns:200px 1fr;padding:16px 0;border-bottom:1px solid var(--border);font-size:15px;}
  .value-item{flex:1;text-align:center;padding:0 24px;border-left:1px solid var(--border);}
  .value-item:first-child{border-left:none;}
  .nav-dd{position:relative;display:flex;align-items:center;}
  .nav-dd-trigger{display:flex;align-items:center;gap:6px;}
  .nav-dd-trigger svg{transition:transform .2s ease;}
  .nav-dd:hover .nav-dd-trigger svg,.nav-dd:focus-within .nav-dd-trigger svg{transform:rotate(180deg);}
  .nav-dd-menu{position:absolute;top:100%;left:50%;transform:translateX(-50%);padding-top:16px;display:none;z-index:30;}
  .nav-dd:hover .nav-dd-menu,.nav-dd:focus-within .nav-dd-menu{display:block;}
  .nav-dd-panel{background:#FFFFFF;border:1px solid var(--border);border-radius:10px;box-shadow:0 12px 28px -12px rgba(22,35,61,0.2);padding:8px;min-width:200px;display:flex;flex-direction:column;}
  .nav-dd-panel a{padding:10px 14px;border-radius:6px;font-size:15px;color:var(--ink);white-space:nowrap;}
  .nav-dd-panel a:hover{background:var(--surface-200);}
  .c-head{background:#FAFAF8 url(../img/up-6465c5bc21.webp) right center/cover no-repeat;position:relative;overflow:hidden;}
  .c-head-fx{position:absolute;inset:0;width:100%;height:100%;}
  @media (prefers-reduced-motion:reduce){.c-head-fx g{display:none;}}
  .c-head-inner{position:relative;z-index:1;max-width:1120px;margin:0 auto;padding:72px 40px 64px;display:flex;flex-direction:column;gap:8px;box-sizing:border-box;}
  .c-eyebrow{font-family:"Outfit",var(--font-heading);font-size:14px;font-weight:600;letter-spacing:0.16em;color:var(--pts-teal-deep);}
  .c-h2{margin:0;font-family:var(--font-heading);font-size:28px;text-align:center;}
  .c-mission{font-family:"Noto Serif JP","Yu Mincho",serif;font-size:42px;font-weight:700;line-height:1.6;letter-spacing:0.06em;margin:0;}
  .c-sec-head{display:flex;flex-direction:column;align-items:center;gap:4px;text-align:center;}
  .c-en{font-family:"Outfit",var(--font-heading);font-size:56px;font-weight:600;line-height:1.1;letter-spacing:0.04em;background:linear-gradient(90deg,#0F7C5C,#0B7F86 45%,#1461D2);-webkit-background-clip:text;background-clip:text;color:transparent;}
  .c-ja{margin:0;font-family:var(--font-heading);font-size:16px;font-weight:700;color:var(--ink-secondary);letter-spacing:0.1em;}
  .c-vision{border-radius:24px;padding:56px 40px;text-align:center;background:linear-gradient(115deg,#E6F8EE,#E2F6F6 50%,#E3ECFA);box-sizing:border-box;display:flex;flex-direction:column;gap:16px;}
  .c-vision p{margin:0;font-family:var(--font-heading);font-size:24px;font-weight:700;line-height:1.8;}
  .c-values{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));background:#FFFFFF;border:1px solid var(--pts-tint-border);border-radius:16px;}
  .c-value{display:flex;flex-direction:column;align-items:center;gap:12px;padding:36px 20px;}
  .c-value + .c-value{border-left:1px solid var(--pts-tint-border);}
  .c-value b{font-family:"Noto Serif JP","Yu Mincho",serif;font-size:30px;font-weight:700;letter-spacing:0.08em;}
  .c-num{font-family:"Outfit",var(--font-heading);font-size:14px;font-weight:600;letter-spacing:0.1em;color:var(--pts-teal-deep);}
  .c-table{border-top:1px solid var(--pts-tint-border);}
  .c-row{display:grid;grid-template-columns:200px 1fr;border-bottom:1px solid var(--pts-tint-border);}
  .c-row > div{padding:20px 24px;font-size:15px;line-height:1.8;}
  .c-row > div:first-child{background:var(--pts-tint);font-weight:700;}
  .c-badges{display:flex;flex-wrap:wrap;justify-content:center;gap:16px;}
  .c-badge{display:flex;align-items:center;gap:14px;padding:16px 22px;border:1px solid var(--pts-tint-border);border-radius:14px;background:#FFFFFF;}
  .c-badge-mark{width:56px;height:56px;border-radius:10px;background:var(--pts-tint);border:1px dashed var(--pts-tint-border);display:flex;align-items:center;justify-content:center;text-align:center;font-size:10px;color:var(--ink-secondary);line-height:1.3;}
  .c-tl{position:relative;display:flex;flex-direction:column;gap:0;padding-left:40px;}
  .c-tl::before{content:"";position:absolute;left:11px;top:10px;bottom:10px;width:3px;border-radius:2px;background:linear-gradient(180deg,#2ED68A,#22C3C9 50%,#3D7FDB);}
  .c-tl-item{position:relative;padding:0 0 40px;}
  .c-tl-item:last-child{padding-bottom:0;}
  .c-tl-item::before{content:"";position:absolute;left:-36px;top:6px;width:18px;height:18px;border-radius:50%;background:#FFFFFF;border:3px solid var(--pts-teal-deep);box-sizing:border-box;}
  .c-year{font-family:"Outfit",var(--font-heading);font-size:32px;font-weight:600;color:var(--pts-teal-deep);line-height:1.2;}
  .c-tl-title{font-size:18px;font-weight:700;margin:6px 0 10px;}
  .c-tl ul{margin:0;padding-left:1.2em;display:flex;flex-direction:column;gap:4px;font-size:15px;line-height:1.8;color:var(--ink-secondary);}
  .c-access{display:grid;grid-template-columns:1fr 1fr;gap:24px;}
  .c-office{background:#FFFFFF;border:1px solid var(--pts-tint-border);border-radius:16px;overflow:hidden;display:flex;flex-direction:column;}
  .c-office-photo{aspect-ratio:16/9;background-size:cover;background-position:center;}
  .c-office-body{padding:24px;display:flex;flex-direction:column;gap:10px;}
  .c-map{background:var(--pts-tint);border-radius:10px;height:180px;display:flex;align-items:center;justify-content:center;color:var(--ink-secondary);font-size:13px;margin-top:6px;}
  @media (max-width:767px){
    .c-head-inner{padding:48px 20px;}
    .c-mission{font-size:28px;}
    .c-en{font-size:40px;}
    .c-vision p{font-size:18px;}
    .c-values,.c-access{grid-template-columns:1fr;}
    .c-value + .c-value{border-left:none;border-top:1px solid var(--pts-tint-border);}
    .c-row{grid-template-columns:1fr;}
  }
  .c-mvv{border-top:1px solid var(--pts-tint-border);}
  .c-mvv-row{display:grid;grid-template-columns:280px 1fr;gap:40px;align-items:center;padding:48px 0;border-bottom:1px solid var(--pts-tint-border);}
  .c-mvv-label{display:flex;flex-direction:column;gap:6px;}
  .c-mvv-label .c-en{font-size:44px;}
  .c-mvv-label .c-ja{font-size:14px;text-align:left;}
  .c-mvv-main{margin:0;font-family:var(--font-heading);font-size:34px;font-weight:700;line-height:1.6;letter-spacing:0.02em;}
  .c-mvv-sub{margin:10px 0 0;font-size:17px;font-weight:500;color:var(--ink-secondary);}
  .c-mvv-values{display:flex;flex-wrap:wrap;gap:12px;}
  .c-mvv-values span{padding:12px 28px;border-radius:9999px;background:var(--pts-tint);border:1px solid var(--pts-tint-border);font-size:22px;font-weight:700;}
  @media (max-width:767px){ .c-mvv-row{grid-template-columns:1fr;gap:16px;padding:36px 0;} .c-mvv-main{font-size:24px;} .c-mvv-label .c-en{font-size:34px;} }
  .c-table2{display:grid;grid-template-columns:1fr 1fr;column-gap:32px;border-top:none;}
  .c-table2 .c-row{grid-template-columns:120px 1fr;border-top:1px solid var(--pts-tint-border);border-bottom:none;}
  .c-table2 .c-row > div{padding:14px 16px;font-size:14px;}
  .c-table2 .c-row > div:first-child{background:transparent;color:var(--ink-secondary);font-weight:700;}
  .c-ai{display:inline-block;margin-right:6px;padding:0 7px;border-radius:4px;background:linear-gradient(90deg,#0F7C5C,#0B7F86);color:#FFFFFF;font-family:"Outfit",var(--font-heading);font-size:11px;font-weight:600;line-height:18px;vertical-align:1px;}
  .c-h{display:grid;grid-template-columns:1fr 1fr 1.6fr 0.9fr 1.2fr 1.3fr;grid-template-rows:auto 28px auto;column-gap:20px;}
  .c-h-col.top{grid-row:1;align-self:end;padding-bottom:18px;}
  .c-h-col.bottom{grid-row:3;align-self:start;padding-top:18px;}
  .c-h-col{position:relative;}
  .c-h-col.top::after,.c-h-col.bottom::after{content:"";position:absolute;left:14px;width:2px;height:18px;background:var(--pts-tint-border);}
  .c-h-col.top::after{bottom:0;}
  .c-h-col.bottom::after{top:0;}
  .c-h-line{grid-row:2;grid-column:1 / -1;align-self:center;height:6px;border-radius:3px;background:linear-gradient(90deg,#3D7FDB,#22C3C9 45%,#2ED68A);}
  .c-h-dot{grid-row:2;align-self:center;justify-self:start;margin-left:6px;width:18px;height:18px;border-radius:50%;background:#FFFFFF;border:3px solid var(--pts-teal-deep);box-sizing:border-box;z-index:1;}
  .c-h-card{display:flex;flex-direction:column;}
  .c-h-card .c-year{font-size:26px;}
  .c-h-card .c-tl-title{font-size:15px;margin:4px 0 8px;line-height:1.6;}
  .c-h-card ul{margin:0;padding-left:1.1em;display:flex;flex-direction:column;gap:4px;font-size:13px;line-height:1.7;color:var(--ink-secondary);}
  .c-h-next{display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap;padding:28px 32px;border-radius:16px;background:linear-gradient(115deg,#E6F8EE,#E2F6F6 50%,#E3ECFA);}
  .c-h-prods{display:flex;flex-wrap:wrap;gap:12px;}
  .c-h-prods a{display:flex;box-shadow:0 6px 16px -12px rgba(22,35,61,0.3);align-items:flex-end;gap:6px;padding:12px 18px;border-radius:10px;background:#FFFFFF;border:1px solid var(--pts-tint-border);}
  @media (max-width:1023px){
    .c-h{display:flex;flex-direction:column;gap:28px;padding-left:36px;position:relative;}
    .c-h-line{position:absolute;left:10px;top:0;bottom:0;width:4px;height:auto;background:linear-gradient(180deg,#3D7FDB,#22C3C9 45%,#2ED68A);}
    .c-h-dot{display:none;}
    .c-h-col.top,.c-h-col.bottom{padding:0;}
    .c-h-col::after{display:none;}
    .c-h-col{order:var(--o);}
    .c-table2{grid-template-columns:1fr;}
  }
  .c-table1{max-width:760px;margin:0 auto;width:100%;}
  .c-table1 .c-row{grid-template-columns:160px 1fr;}
  .c-table1 .c-row > div{padding:16px 20px;font-size:15px;}
  .c-table1 .c-row > div:first-child{background:transparent;color:var(--ink-secondary);font-weight:700;}
  .c-map-link{display:inline-flex;align-items:center;gap:4px;margin-left:8px;font-size:13px;font-weight:700;color:var(--pts-teal-deep);text-decoration:underline;text-underline-offset:3px;}
  .c-mission-wrap{max-width:1000px;margin:0 auto;display:flex;flex-direction:column;align-items:center;text-align:center;gap:20px;}
  .c-mission-main{margin:0;font-family:var(--font-heading);font-size:48px;font-weight:700;line-height:1.45;letter-spacing:0.02em;}
  .c-mission-line{width:64px;height:4px;border-radius:2px;background:linear-gradient(90deg,#2ED68A,#22C3C9,#3D7FDB);}
  .c-mission-sub{margin:0;font-size:18px;font-weight:500;color:var(--ink-secondary);}
  @media (max-width:767px){ .c-mission-main{font-size:30px;} }

  .g-hdr-in{gap:16px;}
  .sp-nav{display:none;}
  .sp-nav summary{list-style:none;display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:10px;border:1px solid var(--pts-tint-border);background:#FFFFFF;color:var(--ink);cursor:pointer;}
  .sp-nav summary::-webkit-details-marker{display:none;}
  .sp-nav .sp-close{display:none;}
  .sp-nav[open] .sp-open{display:none;}
  .sp-nav[open] .sp-close{display:block;}
  .sp-panel{position:absolute;left:0;right:0;top:100%;background:#FFFFFF;border-bottom:1px solid var(--pts-tint-border);box-shadow:0 16px 32px -16px rgba(22,35,61,0.25);padding:8px 20px 24px;display:flex;flex-direction:column;max-height:calc(100vh - 72px);overflow-y:auto;box-sizing:border-box;}
  .sp-panel a{display:flex;align-items:center;justify-content:space-between;min-height:52px;border-bottom:1px solid var(--pts-tint-border);font-size:16px;font-weight:500;color:var(--ink);}
  .sp-panel a.sp-sub{padding-left:20px;font-size:15px;color:var(--ink-secondary);}
  .sp-panel .sp-label{padding:18px 0 6px;font-family:"Outfit",var(--font-heading);font-size:12px;font-weight:600;letter-spacing:.16em;color:var(--pts-teal-deep);}
  .sp-panel .sp-cta{margin-top:20px;justify-content:center;border:none;border-radius:4px;background:linear-gradient(135deg,var(--pts-green-deep),var(--brand-blue));color:#FFFFFF;font-weight:700;}
  @media (max-width:1023px){
    .g-nav,.g-contact{display:none !important;}
    .sp-nav{display:block;}
    .g-hdr-in{padding:14px 20px !important;}
  }

  .c-mission-en{font-family:"Outfit",var(--font-heading);font-weight:600;font-size:56px;line-height:1.15;letter-spacing:0.02em;background:linear-gradient(90deg,#0F7C5C,#0B7F86 45%,#1461D2);-webkit-background-clip:text;background-clip:text;color:transparent;}
  @media (max-width:767px){ .c-mission-en{font-size:32px;} }

/* --- WordPress 用の追加 --- */
.admin-bar .site-header{top:32px !important;}
@media (max-width:782px){ .admin-bar .site-header{top:46px !important;} }
.g-nav a[aria-current="page"]{color:var(--ink) !important;font-weight:700;}
.nav-dd-panel a[aria-current="page"]{font-weight:700;}
.sp-panel a[aria-current="page"]{color:var(--pts-teal-deep);font-weight:700;}
.n-pager .dots{width:40px;height:40px;display:flex;align-items:center;justify-content:center;color:var(--ink-secondary);}
.n-body img{max-width:100%;height:auto;}
.n-body > *:first-child{margin-top:0;}
.n-pager > *{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;border:1px solid var(--pts-tint-border);background:#FFFFFF;font-family:"Outfit",var(--font-heading);font-size:15px;box-sizing:border-box;color:var(--ink);}
.n-pager > .on{background:var(--pts-teal-deep);border-color:transparent;color:#FFFFFF;}
.n-pager > .dots{border:none;background:none;}


/* --- 重要なボタン：マウスを乗せると色が流れる --- */
.btn-primary{background:linear-gradient(90deg,var(--pts-green-deep) 0%,var(--brand-blue) 50%,var(--pts-green-deep) 100%);background-size:200% 100%;background-position:0 0;transition:background-position .6s ease,box-shadow .3s ease;}
.btn-primary:hover{background-position:100% 0;box-shadow:0 8px 20px -10px rgba(22,35,61,0.45);}
@media (prefers-reduced-motion:reduce){ .btn-primary{transition:none;} }

/* --- 沿革：スクロールで線が伸び、年ごとのカードが順番に浮かび上がる（JSが動いたときだけ） --- */
.rvh .c-h-line{transform:scaleX(0);transform-origin:left center;}
.rvh .c-h-dot{opacity:0;transform:scale(.4);}
.rvh .c-h-col{opacity:0;}
.rvh .c-h-col.top{transform:translateY(18px);}
.rvh .c-h-col.bottom{transform:translateY(-18px);}
.rvh.rv-ready .c-h-line{transition:transform 1.4s cubic-bezier(.3,.7,.2,1);}
.rvh.rv-ready .c-h-dot{transition:opacity .4s ease,transform .5s cubic-bezier(.3,1.5,.5,1);}
.rvh.rv-ready .c-h-col{transition:opacity .8s ease,transform .8s cubic-bezier(.2,.7,.2,1);transition-delay:calc(var(--o) * .2s + .3s);}
.rvh.rv-ready .c-h-dot:nth-of-type(1){transition-delay:.25s;}
.rvh.rv-ready .c-h-dot:nth-of-type(2){transition-delay:.45s;}
.rvh.rv-ready .c-h-dot:nth-of-type(3){transition-delay:.65s;}
.rvh.rv-ready .c-h-dot:nth-of-type(4){transition-delay:.85s;}
.rvh.rv-ready .c-h-dot:nth-of-type(5){transition-delay:1.05s;}
.rvh.rv-ready .c-h-dot:nth-of-type(6){transition-delay:1.25s;}
.rvh.is-in .c-h-line{transform:scaleX(1);}
.rvh.is-in .c-h-dot{opacity:1;transform:scale(1);}
.rvh.is-in .c-h-col{opacity:1;transform:none;}

/* サブのボタン：押せそうに見える立体感（マウスを乗せると沈む） */
.btn-ghost{box-shadow:0 2px 0 #B5D6D4;transition:transform .15s ease,box-shadow .15s ease;}
.btn-ghost:hover,.btn-ghost:active{transform:translateY(2px);box-shadow:0 0 0 #B5D6D4;}

/* グローバルメニューの「お問い合わせ」だけ、影と沈みを1pxに */
.btn-ghost.g-contact{box-shadow:0 1px 0 #B5D6D4;}
.btn-ghost.g-contact:hover,.btn-ghost.g-contact:active{transform:translateY(1px);box-shadow:0 0 0 #B5D6D4;}
