/* NEXTぷれいす 作り直しで足したスタイル（今のテーマ style.css の色・書体に合わせる）
   元：migration/mirror/overrides/sites/next.place-grp.com/wp-content/themes/next-place/assets/css/np.css */

/* メニュー（ヘッダーの2段目） */
.np-gnav{border-top:1px solid #f3e3c8;margin-top:10px}
.np-gnav ul{display:flex;gap:4px;list-style:none;margin:0 auto;padding:6px 12px 0;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;max-width:1120px}
.np-gnav ul::-webkit-scrollbar{display:none}
.np-gnav a{display:block;white-space:nowrap;padding:6px 10px;font-size:13px;font-weight:700;color:#313131;text-decoration:none;border-radius:20px}
.np-gnav a:hover,.np-gnav a[aria-current="page"]{color:#ed6c00;background:#fff8e5}
.fv{padding-top:118px}
.page_fv{margin-top:78px}
@media(min-width:768px){.np-gnav ul{justify-content:center;gap:8px}.np-gnav a{font-size:14px;padding:6px 14px}.fv{padding-top:148px}.page_fv{margin-top:108px}}
@media(min-width:1160px){.np-gnav{margin-top:14px}}

/* 下層ページの見出し帯（お問い合わせページと同じ .page_fv を使う） */
.np-page .page_fv{padding:40px 20px 36px;background:#fff8e5}
.np-page .page_fv_title{font-size:clamp(24px,5.6vw,38px);line-height:1.4;font-family:"Zen Kaku Gothic Antique",sans-serif;font-weight:900;text-wrap:balance}
.np-page .page_fv_lead{max-width:760px;margin:0 auto;font-size:15px;line-height:1.9;text-align:left}
@media(min-width:768px){.np-page .page_fv{padding:64px 20px 56px}.np-page .page_fv_lead{text-align:center;font-size:16px}}

/* パンくず */
.np-breadcrumb{max-width:1120px;margin:0 auto;padding:12px 20px 0;font-size:12px;line-height:1.6;color:#666}
.np-breadcrumb ol{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:4px}
.np-breadcrumb li+li::before{content:"›";margin-right:4px;color:#bbb}
.np-breadcrumb a{color:#666}

/* 本文 */
.np-article{max-width:860px;margin:0 auto;padding:28px 20px 64px;font-size:16px;line-height:1.95;color:#313131}
.np-article>*+*{margin-top:16px}
.np-article h2{font-family:"Zen Kaku Gothic Antique",sans-serif;font-weight:900;font-size:clamp(20px,4.6vw,27px);line-height:1.5;color:#ed6c00;margin-top:56px;padding-left:14px;border-left:6px solid #f8b62d;text-wrap:balance}
.np-article h2:first-child{margin-top:0}
.np-article h3{font-weight:700;font-size:clamp(17px,3.8vw,20px);line-height:1.6;margin-top:36px;padding-bottom:6px;border-bottom:2px solid #ffecbe}
.np-article ul,.np-article ol{padding-left:1.4em}
.np-article li+li{margin-top:6px}
.np-article strong{color:#ed6c00}
.np-article a{color:#ed6c00;text-decoration:underline}
.np-article table{width:100%;border-collapse:collapse;font-size:15px;line-height:1.7}
.np-article th,.np-article td{border:1px solid #f0dcb8;padding:10px 12px;text-align:left;vertical-align:top}
.np-article th{background:#fff8e5;white-space:nowrap}
.np-table-wrap{overflow-x:auto}
.np-meta{font-size:13px;color:#666}

/* 枠・カード */
.np-box{background:#fff8e5;padding:20px 22px}
.np-box>*+*{margin-top:10px}
.np-box-title{font-weight:700;color:#ed6c00}
.np-points{display:grid;grid-template-columns:1fr;gap:12px;max-width:960px;margin:0 auto 40px;padding:0;list-style:none}
.np-article .np-points{margin:16px 0 0;padding:0}
.np-points li,.np-article .np-points li+li{background:#fff8e5;padding:16px 18px;line-height:1.7;margin:0}
.np-points strong{display:block;color:#ed6c00;margin-bottom:4px}
.np-cards{display:grid;grid-template-columns:1fr;gap:14px;list-style:none;padding:0}
.np-article .np-cards{padding:0}
.np-cards li,.np-article .np-cards li+li,.np-article .np-steps>li+li{margin:0}
.np-cards a{display:block;height:100%;background:#fff;box-shadow:5px 5px 5px rgba(0,0,0,.12);border-top:4px solid #ed6c00;padding:18px 20px;color:#313131;text-decoration:none;line-height:1.7}
.np-cards a:hover{background:#fffaf0}
.np-cards .np-card-title{display:block;font-weight:700;font-size:17px;color:#ed6c00;margin-bottom:6px}
.np-cards .np-card-more{display:block;margin-top:8px;font-size:14px;font-weight:700;color:#ed6c00}
.np-steps{list-style:none;padding:0;counter-reset:s}
.np-article .np-steps{padding:0}
.np-steps>li{counter-increment:s;position:relative;padding:4px 0 18px 56px;margin:0}
.np-steps>li::before{content:counter(s);position:absolute;left:0;top:0;width:40px;height:40px;border-radius:50%;background:#ed6c00;color:#fff;font-family:"Libre Caslon Text",serif;font-weight:700;font-size:20px;display:flex;align-items:center;justify-content:center}
.np-steps>li::after{content:"";position:absolute;left:19px;top:44px;bottom:4px;width:2px;background:#f8b62d}
.np-steps>li:last-child::after{display:none}
.np-steps .np-step-title{display:block;font-weight:700;font-size:17px;line-height:1.6}
.np-quote{border-left:4px solid #f8b62d;padding:6px 0 6px 16px;color:#555}
.np-case-head{display:inline-block;background:#ed6c00;color:#fff;font-family:"Libre Caslon Text",serif;font-weight:700;padding:4px 18px;border-radius:30px;font-size:15px}
.np-related{border-top:2px solid #ffecbe;padding-top:24px;margin-top:48px}
.np-related-title{font-weight:700;margin-bottom:8px}
@media(min-width:768px){.np-points{grid-template-columns:repeat(2,1fr)}.np-points--3{grid-template-columns:repeat(3,1fr)}.np-cards{grid-template-columns:repeat(2,1fr)}.np-cards--3{grid-template-columns:repeat(3,1fr)}}

/* トップで足した部品 */
.np-message{text-align:center;font-weight:700;font-size:clamp(16px,3.6vw,22px);line-height:1.8;margin-top:48px}
.np-message strong{color:#ed6c00}
.np-lead{max-width:800px;margin:0 auto 32px;line-height:1.9}
.np-lead p+p{margin-top:12px}
.np-lead--box{background:#fff;box-shadow:5px 5px 5px rgba(0,0,0,.15);padding:24px 20px;margin-top:48px;margin-bottom:0}
.np-lead--box .np-subtitle{margin-top:0}
.np-eyebrow{text-align:center;color:#ed6c00;font-weight:700;letter-spacing:.1em;margin-bottom:36px}
.np-subtitle{font-family:"Zen Kaku Gothic Antique",sans-serif;font-weight:900;font-size:clamp(18px,4vw,24px);text-align:center;color:#ed6c00;margin:48px 0 16px}
.np-note{max-width:800px;margin:20px auto 0;font-size:14px;line-height:1.8}
.np-small{display:block;font-size:12px;line-height:1.6;margin-top:8px;color:#555}
.np-cases .sec-10-detail dd{line-height:1.7}
.np-more{text-align:center;margin-top:28px}
.np-more a{display:inline-block;border:2px solid #ed6c00;color:#ed6c00;background:#fff;font-weight:700;padding:12px 32px;border-radius:40px;text-decoration:none}
.np-more a:hover{background:#ed6c00;color:#fff}
@media(min-width:768px){.np-lead--box{padding:32px 40px}}

/* 下層ページの相談の帯 */
.np-cta{background:#ed6c00;color:#fff;text-align:center;padding:48px 20px}
.np-cta-title{font-family:"Zen Kaku Gothic Antique",sans-serif;font-weight:900;font-size:clamp(20px,4.8vw,30px);line-height:1.5;text-wrap:balance}
.np-cta-text{margin:12px auto 24px;max-width:640px;line-height:1.8}
.np-cta-btns{display:flex;flex-direction:column;gap:12px;align-items:center}
.np-cta-btns a{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-width:260px;background:#fff;color:#ed6c00;font-weight:700;font-size:17px;padding:14px 28px;border-radius:40px;text-decoration:none}
.np-cta-btns a img{width:20px;height:20px;filter:invert(48%) sepia(93%) saturate(2000%) hue-rotate(5deg)}
.np-cta-tel{margin-top:18px;font-size:14px}
.np-cta-tel strong{font-size:22px;letter-spacing:.04em}
@media(min-width:768px){.np-cta{padding:64px 20px}.np-cta-btns{flex-direction:row;justify-content:center}}

/* 下層ページで元のデザインの写真・イラスト・部品を使う */
.np-hero-illust{display:block;margin:0 auto 14px;width:auto;max-width:150px;max-height:130px;height:auto}
.np-hero-photo{max-width:1120px;margin:20px auto 0;padding:0 20px}
.np-hero-photo img{display:block;width:100%;height:auto;aspect-ratio:16/7;object-fit:cover}
@media(max-width:767px){.np-hero-photo img{aspect-ratio:4/3}}
.np-wide{margin:24px -20px;max-width:none}
.np-article .np-wide.sec-01,.np-article .np-wide.sec-03,.np-article .np-wide.sec-07{padding:8px 20px}
.np-article .np-wide ul,.np-article .np-wide ol{padding-left:0}
.np-article .np-wide li+li{margin-top:0}
.np-article .np-wide .sec-01-list,.np-article .np-wide .sec-03-list{margin-top:0}
.np-article .sec-05 .office-slider{margin-top:8px}
.np-article .sec-05 img{width:100%;height:auto}
.np-card-icon{float:right;width:64px;height:auto;margin:0 0 8px 12px}
.np-figure{margin:20px 0}
.np-figure img{display:block;width:100%;height:auto}
.np-figure figcaption{font-size:13px;color:#666;margin-top:6px}
@media(min-width:900px){.np-wide{margin-left:-80px;margin-right:-80px}}
