/* Personal Navi: scoped EdTech update. Existing movie/particle identity retained. */
.pn-home .p-top-content{width:min(1120px,calc(100% - 80px));padding:0}
.pn-home #jsi-content-home{display:grid;grid-template-columns:1.13fr 1fr;align-items:center;gap:28px;text-align:left}
.pn-home #jsi-content-home.u-hidden{display:none}
.pn-home .p-top-content-catchword__heading{font-size:clamp(32px,3.8vw,50px);line-height:1.55;letter-spacing:.04em;margin:14px 0 20px;color:#223f4c}
.pn-home .p-top-content-catchword__heading span{display:block;white-space:nowrap}
.pn-home-visual{width:100%;height:auto;border-radius:45% 40% 40% 40%;box-shadow:0 20px 90px #77c9d929;mix-blend-mode:multiply}
.pn-home-lead{font-size:16px;line-height:2;color:#344f5b}
.pn-label{display:flex;gap:16px;align-items:center;flex-wrap:wrap;font:14px/1.6 'HindMadurai',sans-serif;letter-spacing:.13em;color:#487c8c;margin-bottom:14px}
.pn-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:28px}
.pn-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:52px;padding:13px 22px;border:1px solid #72a7b5;background:#fffdfb;color:#254f5f;font-size:15px;line-height:1.6;text-align:center;letter-spacing:.02em;transition:background .2s,box-shadow .2s;cursor:pointer}
.pn-button:hover,.pn-button:focus-visible{background:#e3f4f8;box-shadow:0 5px 18px #72a7b528;outline:2px solid #8bc4d3;outline-offset:3px}
.pn-home .pn-actions{gap:10px;margin-top:24px}
.pn-home .pn-button{font-size:13px;padding:12px 14px;min-height:48px}
.pn-home-diagnosis{display:inline-block;margin-top:18px;font-size:13px;line-height:1.8;text-decoration:underline;text-underline-offset:5px;color:#3e6978;cursor:pointer}
.pn-updated .p-sub-fv__inner{height:400px;min-height:0}
.pn-updated .p-sub-fv__heading{font-size:clamp(36px,5vw,68px);line-height:1.4;letter-spacing:.07em;top:47%}
.pn-updated .p-sub-fv__sign{bottom:28px}
.pn-updated .p-sub-fv__sign__animate{height:24px;margin-top:12px}
.pn-updated .p-content__inner{width:min(940px,calc(100% - 240px));color:#294551}
.pn-section{padding:72px 0;border-bottom:1px solid #abcfd65c;scroll-margin-top:36px}
.pn-section:first-child{padding-top:35px}
.pn-title{font-size:clamp(26px,2.8vw,38px);line-height:1.65;letter-spacing:.035em;font-weight:400;margin:0 0 28px;text-wrap:balance}
.pn-lead{font-size:18px;line-height:2;letter-spacing:.015em;margin-bottom:25px;text-wrap:pretty}
.pn-copy{font-size:16px;line-height:2.05;letter-spacing:.015em;text-align:left;text-wrap:pretty}
.pn-copy p+p{margin-top:20px}
.pn-card-title{font-size:22px;line-height:1.7;margin:0 0 20px;text-wrap:balance}
.pn-theories{margin-top:40px;padding:28px 32px;background:#ffffffa8;border-left:2px solid #8dc6d4}
.pn-theory-list>div{display:grid;grid-template-columns:260px 1fr;align-items:center;gap:16px;padding:14px 0;border-top:1px solid #c9dfe5}
.pn-theory-list dt{font-size:15px;line-height:1.7}
.pn-theory-list dd{font-size:14px;line-height:1.85;color:#4c626b}
.pn-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:stretch}
.pn-card{display:flex;flex-direction:column;padding:30px 28px;background:linear-gradient(145deg,#fff,#f1fafce6);border:1px solid #c2dde3;scroll-margin-top:36px}
.pn-card .pn-actions{margin-top:auto;padding-top:28px}
.pn-card .pn-copy{font-size:15px}
.pn-card .pn-button{width:100%;font-size:14px;padding:12px}
.pn-faq{margin-top:28px;padding:24px 26px;background:#ffffffa8;border:1px solid #c9e0e6}
.pn-faq summary{font-size:16px;line-height:1.9;cursor:pointer;list-style-position:outside;margin-left:20px}
.pn-faq .pn-copy{margin-top:20px;font-size:15px}
.pn-badge{display:inline-flex;align-items:center;border:1px solid #81b8c7;border-radius:2px;letter-spacing:.05em;font:13px/1.6 'NotoSansJP',sans-serif;padding:2px 11px;color:#3b6c7b;background:#fff}
.pn-split{display:flex;flex-direction:column;gap:28px}
.pn-image{margin:0;max-width:100%;background:#f2fbff}
.pn-image img{display:block;width:100%;height:auto}
.pn-updated .p-section{margin-top:90px}
.pn-updated .p-section__title{font-size:40px;line-height:1.5;color:#79adbc}
.pn-company-philosophy{padding-bottom:70px;border-bottom:1px solid #b4d4dc}
.pn-company-philosophy__lead{font-size:36px;line-height:1.7;margin:30px 0 50px;color:#294551;text-wrap:balance}
.pn-company-mvv{display:grid;grid-template-columns:1fr 1fr;gap:34px;margin-bottom:50px}
.pn-company-mvv__item{border-top:2px solid #8dc6d4;padding-top:20px}
.pn-company-mvv__label{font:16px/1.6 'HindMadurai',sans-serif;letter-spacing:.1em;color:#4a7f8f;margin-bottom:12px}
.pn-company-mvv__text{font-size:20px;line-height:1.9;text-wrap:pretty}
.pn-company-mvv__text+p{margin-top:16px}
.pn-company-values{counter-reset:values}
.pn-company-values__item{counter-increment:values;position:relative;padding:24px 0 24px 52px;border-top:1px solid #c4dce2;text-align:left}
.pn-company-values__item:before{content:'0' counter(values);position:absolute;top:24px;left:0;font:22px/1.5 'HindMadurai',sans-serif;color:#75aab9}
.pn-company-values__title{font-size:18px;line-height:1.8;margin-bottom:7px;text-wrap:balance}
.pn-company-values__text{font-size:15px;line-height:1.9;color:#4a636d}
.pn-updated .pn-company-message{font-size:16px;line-height:2.1}
.pn-company-message p+p{margin-top:24px}
.pn-updated iframe{max-width:100%}
.pn-updated .p-message__img img{height:auto}
.pn-updated .p-content-bottom{padding:100px 0 65px}
@media(max-width:1100px){
.pn-updated .p-content__inner{width:calc(100% - 200px);margin-left:40px}
.pn-grid{gap:18px}.pn-card{padding:25px 22px}
.pn-theory-list>div{grid-template-columns:230px 1fr}
.pn-home .pn-button{font-size:12px;padding:11px 10px}
}
@media(max-width:767px){
.pn-home .p-top-content{width:calc(100% - 40px);top:46%}
.pn-home #jsi-content-home{display:flex;flex-direction:column;gap:18px;align-items:stretch}
.pn-home #jsi-content-home.u-hidden{display:none}
.pn-home .pn-label{font-size:11px;letter-spacing:.12em;margin-bottom:8px}
.pn-home .p-top-content-catchword__heading{font-size:30px;line-height:1.45;margin:0 0 14px}
.pn-home-lead{font-size:13px;line-height:1.9}
.pn-home .pn-actions{gap:8px;margin-top:18px;flex-wrap:nowrap}
.pn-home .pn-button{flex:1;font-size:12px;min-height:46px;padding:10px 8px;white-space:nowrap}
.pn-home-diagnosis{margin-top:12px;font-size:11px}
.pn-home-visual{height:135px;object-fit:cover;object-position:center;max-width:280px;align-self:center}
.pn-home .p-top__content__item__description__text{font-size:17px}
.pn-home .p-top__nav__link__item{font-size:14px}
.pn-updated .p-sub-fv__inner{height:290px}
.pn-updated .p-sub-fv__heading{top:40%;font-size:40px}
.pn-updated .p-sub-fv__sign{bottom:25px}
.pn-updated .p-content__inner{width:auto;margin:0 23px}
.pn-section{padding:50px 0}
.pn-section:first-child{padding-top:15px}
.pn-label{font-size:12px;gap:12px}
.pn-title{font-size:25px;line-height:1.65;margin-bottom:22px;letter-spacing:0}
.pn-lead{font-size:16px;line-height:1.95}
.pn-copy{font-size:15px;line-height:2}
.pn-card-title{font-size:21px}
.pn-theories{margin-top:28px;padding:24px 20px}
.pn-theory-list>div{display:block;padding:15px 0}
.pn-theory-list dt{font-size:14px;margin-bottom:5px}
.pn-theory-list dd{font-size:13px}
.pn-grid{grid-template-columns:1fr;gap:20px}
.pn-card{padding:28px 24px}
.pn-button{font-size:14px;padding:13px 17px;min-height:50px}
.pn-faq{padding:20px 18px}.pn-faq summary{font-size:14px}
.pn-badge{font-size:12px}
.pn-updated .p-section{margin-top:65px}
.pn-updated .p-section__title{font-size:32px;line-height:1.5}
.pn-updated .p-company__link__wrap{padding:0;flex-direction:row;flex-wrap:wrap;gap:22px}
.pn-updated .p-company__link{margin:0!important;width:auto!important}
.pn-company-philosophy__lead{font-size:26px;margin:24px 0 32px}
.pn-company-mvv{grid-template-columns:1fr;gap:32px;margin-bottom:35px}
.pn-company-mvv__text{font-size:19px;line-height:1.9}
.pn-company-values__item{padding:20px 0 20px 36px}
.pn-company-values__item:before{top:22px;font-size:18px}
.pn-company-values__title{font-size:16px}
.pn-company-values__text{font-size:14px}
.pn-updated .pn-company-message{font-size:15px;line-height:2}
.pn-updated .p-profile__list__item__description{overflow-wrap:anywhere}
.pn-updated .p-content-bottom{padding:65px 0 45px}
}
@media(max-width:380px){.pn-home .p-top-content{width:calc(100% - 32px)}.pn-home .pn-actions{flex-direction:column;gap:6px;align-items:stretch}.pn-home .pn-button{font-size:12px;min-height:38px;padding:7px 10px}.pn-home-visual{height:105px}.pn-title{font-size:23px}}
@media(max-height:740px) and (max-width:767px){.pn-home-visual{display:none}.pn-home .p-top-content{top:46%}}
@media(prefers-reduced-motion:reduce){.pn-home video{visibility:hidden}.pn-button{transition:none}}

/* Keep the fixed logo clear of reading text and anchor destinations. */
.pn-edtech .l-sub-header{height:90px;background:#fff;border-bottom:1px solid #d5e6eb80}
.pn-updated [id]{scroll-margin-top:110px}
@media(max-width:767px){.pn-edtech .l-sub-header{height:62px}.pn-updated [id]{scroll-margin-top:82px}}

.pn-company-philosophy__lead span,.pn-mission span{display:inline-block;white-space:nowrap}
.pn-updated .p-section__title{color:#4a8596}

.pn-vision span{display:inline-block;white-space:nowrap}

.pn-nowrap{white-space:nowrap}

/* Brand cyan remains the accent; foreground headings use a deeper tone. */
.pn-updated .p-sub-fv__heading{color:#2d6374}
.pn-service .p-sub-fv__heading{font-family:'NotoSansJP',sans-serif;font-weight:500;letter-spacing:.06em}
.pn-service .p-sub-fv__heading::after{content:'';display:block;width:52px;height:3px;background:#90cedd;margin:22px auto 0}
.pn-updated .p-sub-fv__sign__text{color:#3e7585}

.pn-ceo-profile{margin:26px 0 38px;padding:24px 28px;background:#ffffffd9;border-left:2px solid #90cedd;text-align:left}
.pn-ceo-profile h3{font-size:18px;line-height:1.8;margin-bottom:12px;color:#294551}
.pn-ceo-profile p{font-size:15px;line-height:2;color:#3b5662;text-wrap:pretty}
@media(max-width:767px){.pn-ceo-profile{padding:22px 20px}.pn-ceo-profile p{font-size:14px}}

/* Unified typeface across Japanese, Latin text and text animation layers. */
body.pn-home, body.pn-site {
  --pn-font-family: "NotoSansJP", "Hiragino Kaku Gothic ProN", "Yu Gothic", sans-serif;
  font-family: var(--pn-font-family);
}
body.pn-home .p-top-content-catchword__translate,
body.pn-home .p-top__content__item__title,
body.pn-home .p-top__content__item__link,
body.pn-home .p-top__nav__link__item,
body.pn-home .p-sub-fv__heading,
body.pn-home .p-sub-fv__sign__text,
body.pn-home .p-content-bottom__link,
body.pn-home .p-content-bottom__link>span::after,
body.pn-home .p-content-bottom__copy,
body.pn-home .p-company__link,
body.pn-home .p-company__link>span::after,
body.pn-home .p-service__heading__index,
body.pn-home .p-case__grid__content__index,
body.pn-home .p-top__header__headline__date,
body.pn-home .p-sub-header__spmenu__link,
body.pn-home .p-sub-header__nav__item,
body.pn-home .p-news__list__item__date,
body.pn-home .p-article__date,
body.pn-home .p-article__title,
body.pn-home .u-split__wrap>span::after,
body.pn-home .pn-label,
body.pn-home .pn-badge,
body.pn-home .pn-company-mvv__label,
body.pn-home .pn-company-values__item::before,
body.pn-home button,
body.pn-home input,
body.pn-home textarea,
body.pn-home select,
body.pn-home summary,
body.pn-site .p-top-content-catchword__translate,
body.pn-site .p-top__content__item__title,
body.pn-site .p-top__content__item__link,
body.pn-site .p-top__nav__link__item,
body.pn-site .p-sub-fv__heading,
body.pn-site .p-sub-fv__sign__text,
body.pn-site .p-content-bottom__link,
body.pn-site .p-content-bottom__link>span::after,
body.pn-site .p-content-bottom__copy,
body.pn-site .p-company__link,
body.pn-site .p-company__link>span::after,
body.pn-site .p-service__heading__index,
body.pn-site .p-case__grid__content__index,
body.pn-site .p-top__header__headline__date,
body.pn-site .p-sub-header__spmenu__link,
body.pn-site .p-sub-header__nav__item,
body.pn-site .p-news__list__item__date,
body.pn-site .p-article__date,
body.pn-site .p-article__title,
body.pn-site .u-split__wrap>span::after,
body.pn-site .pn-label,
body.pn-site .pn-badge,
body.pn-site .pn-company-mvv__label,
body.pn-site .pn-company-values__item::before,
body.pn-site button,
body.pn-site input,
body.pn-site textarea,
body.pn-site select,
body.pn-site summary {
  font-family: var(--pn-font-family);
}

/* Use the existing 48px pointer tracking with the original P brand mark. */
@media (hover:hover) and (pointer:fine) and (min-width:769px){
  body.pn-home .cursor,body.pn-site .cursor{
    width:48px;height:48px;border:0;border-radius:0;
    background:url('https://personal-navi.jp/wp-content/uploads/2024/12/favicon-1.png') center / 32px 32px no-repeat;
    filter:drop-shadow(0 1px 1px #fff) drop-shadow(0 0 3px #fff);
    pointer-events:none;transition:transform .15s ease;
  }
  body.pn-home .cursor.is-active,body.pn-site .cursor.is-active{transform:scale(1.12)}
  body.pn-home,body.pn-site,
  body.pn-home :is(a,button,input,textarea,select,label,summary,[role="button"]),
  body.pn-site :is(a,button,input,textarea,select,label,summary,[role="button"]){cursor:none}
}
@media (hover:none),(pointer:coarse),(max-width:768px){
  body.pn-home .cursor,body.pn-site .cursor{display:none}
  body.pn-home,body.pn-site{cursor:auto}
  body.pn-home a,body.pn-site a{cursor:pointer}
}
/* Light, steady chrome keeps the logo and navigation readable on every movie. */
.pn-home .p-top__header{position:fixed;background:linear-gradient(100deg,#f0f7fa,#ffffffed,#eef7f9);border-bottom:1px solid #c7dfe557}
.pn-home .p-top__header__headline{opacity:1!important;background:#ffffffba;border-radius:10px;color:#294551}
.pn-home .p-top__nav{width:100%;bottom:0;padding:19px 24px 21px;background:linear-gradient(100deg,#eff7f9,#ffffffed,#eef7fa);border-top:1px solid #c7dfe557;justify-content:center;align-items:center}
.pn-home .p-top__nav .p-top__nav__link__item{color:#294551!important}
.pn-home .p-top__nav .p-top__nav__link__item span{color:inherit}
.pn-home .p-top__nav .u-underline{border-bottom-color:#80b9c9;text-decoration-color:#80b9c9}
.pn-home .p-top-bg-slider__item{background:#eef6f9}
.pn-home .p-top-bg-slider__item__movie{width:100%;height:100%;min-width:0;object-fit:cover}
.pn-home .p-top-bg-seekbar{z-index:8}
@media(max-width:767px){
 .pn-home .p-top__nav{padding:15px 18px 17px}
 .pn-home .p-top__nav__link:not(:first-child){margin-top:14px}
}
/* The later movies keep the same light tone as the first synapse scene. */
.pn-home .p-top-bg-slider__item.u-bg-black .p-top-bg-slider__item__movie{opacity:.28}
.pn-home .p-top__content__item__title,
.pn-home .p-top__content__item__description__text{color:#294551}
.pn-home .p-top__content__item__link{color:#294551;border:1px solid #86b5c2;background:#ffffffd9;border-radius:10px;min-height:48px}
.pn-home .p-top__content__item__link:hover{background:#e4f4f8}
.pn-home .p-top__content__item__link>span::after{filter:brightness(0) opacity(.65)}
/* Keep generous separation after unifying the Latin headings with Noto Sans JP. */
.pn-home .p-top__content__item{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2.1fr);gap:48px;width:min(920px,100%);margin:0 auto;align-items:start}
.pn-home .p-top__content__item.u-hidden{display:none}
.pn-home .p-top__content__item__description{width:auto}
@media(max-width:1000px){
 .pn-home .p-top__content__item{display:block;max-width:660px}
 .pn-home .p-top__content__item__description{margin-top:20px}
}

.pn-home .p-top-bg-slider__item:not(.u-bg-black){background:transparent}
.pn-home .p-top-header__bg{width:100vw}
/* Append after personal-navi-edtech.css. Text content and unified typeface stay intact. */

/* The home illustration is removed in the template; give the message one clear column. */
.pn-home #jsi-content-home {
  display: block;
  text-align: center;
}
.pn-home #jsi-content-home.u-hidden { display: none; }
.pn-home .pn-home-intro { max-width: 760px; margin: 0 auto; }
.pn-home .pn-home-intro .pn-label { justify-content: center; margin-bottom: 16px; }
.pn-home .p-top-content-catchword__heading { margin: 18px 0 20px; line-height: 1.45; }
.pn-home .pn-home-lead { max-width: 640px; margin: 0 auto; text-wrap: balance; }
.pn-home .pn-actions { justify-content: center; gap: 12px; margin-top: 28px; }
.pn-home .pn-button { min-height: 48px; padding: 12px 22px; font-size: 14px; }
.pn-home .pn-home-diagnosis {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  margin-top: 12px;
  font-size: 13px;
  line-height: 1.8;
}

/* Moderate, consistent corners. Keep flat surfaces and the existing cyan accent. */
.pn-button,
.pn-home .p-top__content__item__link,
.pn-site .p-contact__submit > button,
.pn-site .p-contact__btn__wrap > a {
  border-radius: 10px;
}
.pn-button { background: #fff; border-color: #9db9c2; box-shadow: none; }
.pn-button:hover,
.pn-button:focus-visible { background: #f0f6f7; box-shadow: none; }
.pn-card,
.pn-faq,
.pn-theories,
.pn-ceo-profile {
  border: 1px solid #d2e0e4;
  border-radius: 14px;
  background: rgba(255, 255, 255, .94);
  box-shadow: none;
}
.pn-badge { border-radius: 6px; }
.pn-site .p-group__card,
.pn-site .p-case { border-radius: 14px; }
.pn-site .p-contact__input__text,
.pn-site .p-content__textarea,
.pn-site .p-contact select {
  border-radius: 10px;
}
.pn-site .p-contact__input__text,
.pn-site .p-contact select { min-height: 48px; }
.pn-site .p-contact__submit > button,
.pn-site .p-contact__btn__wrap > a { min-height: 48px; }

/* The background still moves; soften only the subpage particle layer. */
.pn-site .p-sub-header__bg {
  background-color: #f6f8f8;
  background-blend-mode: screen;
}
.pn-site .p-sub-header__bg canvas { opacity: .3; }

@media (max-width: 767px) {
  .pn-home .pn-home-intro { width: 100%; }
  .pn-home .pn-home-intro .pn-label { margin-bottom: 12px; }
  .pn-home .p-top-content-catchword__heading { margin: 0 0 16px; }
  .pn-home .pn-home-lead { font-size: 14px; line-height: 1.9; }
  .pn-home .pn-actions { gap: 10px; margin-top: 22px; }
  .pn-home .pn-button { min-height: 48px; padding: 11px 10px; font-size: 13px; }
  .pn-home .pn-home-diagnosis { margin-top: 8px; font-size: 12px; }
  .pn-card { padding: 26px 22px; }
  .pn-faq { padding: 20px 18px; }
  .pn-theories,
  .pn-ceo-profile { padding: 24px 20px; }
}

@media (max-width: 380px) {
  .pn-home .pn-actions { flex-direction: column; align-items: stretch; gap: 8px; }
  .pn-home .pn-button { width: 100%; min-height: 48px; padding: 11px 12px; font-size: 13px; }
  .pn-home .pn-home-lead { font-size: 13px; }
  .pn-home .pn-home-diagnosis { font-size: 11px; }
  .pn-card,
  .pn-theories,
  .pn-ceo-profile { padding-left: 18px; padding-right: 18px; }
}

/* Public report preview: a single, generous tap target with no login handoff. */
.pn-report-preview{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1fr);gap:36px;align-items:center;margin-top:32px;padding:30px;background:#eef5f6;border:1px solid #ccdee3;border-radius:18px;color:#294551;text-decoration:none}
.pn-report-preview:hover,.pn-report-preview:focus-visible{background:#e8f2f5;outline:2px solid #81b6c6;outline-offset:4px}
.pn-report-preview__sheet{display:flex;flex-direction:column;gap:18px;padding:28px 24px;border:1px solid #cfdee2;border-radius:12px;background:#fff;box-shadow:0 6px 18px #365f6810}
.pn-report-preview__sample{font-size:11px;letter-spacing:.14em;color:#5e7a83}
.pn-report-preview__sheet strong{font-size:20px;line-height:1.5;font-weight:500}
.pn-report-preview__line{font-size:12px;line-height:1.8;padding-top:12px;border-top:1px solid #dde6e9}
.pn-report-preview__tags{display:flex;gap:8px;flex-wrap:wrap;font-size:11px}
.pn-report-preview__tags>span{padding:5px 9px;border-radius:7px;background:#edf5f6}
.pn-report-preview__copy .pn-badge{margin-bottom:16px}
.pn-report-preview__copy .pn-card-title{font-size:22px;margin-bottom:14px}
.pn-report-preview__copy p{font-size:14px;line-height:1.95}
.pn-report-preview__link{display:inline-flex;gap:12px;align-items:center;min-height:48px;margin-top:14px;font-size:14px;text-decoration:underline;text-underline-offset:5px}
@media(max-width:1000px){.pn-report-preview{grid-template-columns:1fr;gap:24px;padding:24px}.pn-report-preview__sheet{max-width:420px;width:100%;margin:auto}}
@media(max-width:380px){.pn-report-preview{padding:18px}.pn-report-preview__copy .pn-card-title{font-size:20px}.pn-report-preview__sheet{padding:22px 18px}}
