@import url('https://fonts.googleapis.com/css2?family=Shippori+Mincho:wght@500;600;700&family=Noto+Sans+JP:wght@400;500;700&display=swap');
:root{--navy:#16304d;--navyd:#0f2338;--navydd:#0b1c2e;--brass:#a07d43;--brassl:#c9a86f;--bg:#f5f6f8;--line:#e5e8ec;--ink:#212b36;--sub:#5a6773}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{margin:0;font-family:"Noto Sans JP",system-ui,sans-serif;color:var(--ink);background:#fff;line-height:1.7;-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}
a{color:var(--navy);text-decoration:none}
a:hover{color:var(--brass)}
#content{width:100%;max-width:none;margin:0;padding:0}
#sidebar{display:none!important}
.shk-footer-var{max-width:1160px;margin:0 auto;padding:0 24px}
.shk-footer-var:empty{display:none}

/* ===== HEADER ===== */
.shk-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.93);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.shk-header-in{max-width:1160px;margin:0 auto;padding:0 24px;min-height:70px;display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}
.shk-logo{display:flex;flex-direction:column;line-height:1.15;padding:12px 0}
.shk-logo b{font-family:'Shippori Mincho',serif;font-weight:600;font-size:20px;letter-spacing:.1em;color:var(--navy)}
.shk-logo small{font-size:9px;letter-spacing:.3em;color:var(--brass)}
.shk-menu ul{list-style:none;display:flex;flex-wrap:wrap;gap:8px 26px;margin:0;padding:0}
.shk-menu li{margin:0}
.shk-menu a{font-size:13.5px;font-weight:500;color:#33414f}
.shk-menu a:hover{color:var(--brass)}

/* ===== SECTION BASE ===== */
.shk-in{max-width:1160px;margin:0 auto;padding:0 24px}
.shk-eyebrow{display:inline-flex;align-items:center;gap:12px;font-size:11.5px;letter-spacing:.26em;color:var(--brass);font-weight:600}
.shk-eyebrow.light{color:var(--brassl)}
.shk-eyebrow i{width:34px;height:1px;background:currentColor;display:inline-block}
.shk-title{font-family:'Shippori Mincho',serif;font-weight:600;font-size:32px;line-height:1.4;letter-spacing:.04em;color:var(--navy);margin:14px 0 12px}
.shk-lead{font-size:14.5px;line-height:1.95;color:var(--sub);margin:0}

/* ===== HERO ===== */
.shk-hero{position:relative;background:var(--navyd);color:#fff;overflow:hidden}
.shk-hero:before{content:"";position:absolute;inset:0;background:radial-gradient(120% 90% at 84% 12%,rgba(160,125,67,.18),transparent 55%)}
.shk-hero-in{position:relative;max-width:1160px;margin:0 auto;padding:74px 24px;display:grid;grid-template-columns:1.08fr .92fr;gap:48px;align-items:center}
.shk-hero h1{font-family:'Shippori Mincho',serif;font-weight:600;font-size:44px;line-height:1.46;letter-spacing:.03em;margin:26px 0 24px;color:#fff}
.shk-hero .shk-lead{color:rgba(255,255,255,.8);max-width:460px;margin-bottom:34px}
.shk-btn{display:inline-flex;align-items:center;gap:10px;background:var(--brass);color:#fff;font-size:14px;font-weight:500;padding:15px 32px;border-radius:2px}
.shk-btn:hover{color:#fff;opacity:.92}
.shk-btn-ghost{display:inline-flex;align-items:center;gap:10px;color:#fff;font-size:15px;font-weight:500;padding:15px 30px;border-radius:2px;border:1px solid rgba(255,255,255,.4)}
.shk-btn-ghost:hover{color:#fff;background:rgba(255,255,255,.08)}
.shk-hero-photo{min-height:320px;height:100%;background:url('https://u.jimcdn.com/cms/o/scfd3726fb79b305f/userlayout/img/hero-jpg.png?t=1783412075') center/cover no-repeat,repeating-linear-gradient(135deg,rgba(255,255,255,.05) 0 12px,rgba(255,255,255,.02) 12px 24px);border:1px solid rgba(255,255,255,.14)}

/* ===== TRUST ===== */
.shk-trust{background:var(--navy);color:#fff}
.shk-trust-in{max-width:1160px;margin:0 auto;padding:28px 24px;display:flex;flex-wrap:wrap;justify-content:space-between;gap:22px 32px}
.shk-stat{display:flex;align-items:center;gap:12px}
.shk-stat b{font-family:'Shippori Mincho',serif;font-size:24px;color:var(--brassl);font-weight:600;line-height:1.2}
.shk-stat b span{font-size:13px}
.shk-stat small{font-size:12px;color:rgba(255,255,255,.72);line-height:1.4}

/* ===== QUOTE ===== */
.shk-quote{background:var(--bg);padding:80px 24px;text-align:center}
.shk-quote .mk{font-family:'Shippori Mincho',serif;font-size:60px;color:var(--brassl);line-height:.6;display:block;margin-bottom:8px}
.shk-quote p{font-family:'Shippori Mincho',serif;font-weight:500;font-size:24px;line-height:1.85;letter-spacing:.03em;color:var(--navy);margin:0 0 22px}
.shk-quote .em{color:var(--brass)}
.shk-quote cite{font-style:normal;font-size:13px;letter-spacing:.06em;color:var(--sub)}

/* ===== BELIEF / FLOW ===== */
.shk-belief{background:#fff;padding:84px 24px}
.shk-belief .head{text-align:center;margin-bottom:44px}
.shk-flow{max-width:900px;margin:0 auto;display:grid;grid-template-columns:1fr auto 1fr auto 1fr auto 1fr;align-items:center}
.shk-step{text-align:center;padding:18px 8px}
.shk-step .c{width:52px;height:52px;margin:0 auto 14px;border:1px solid var(--brassl);border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:'Shippori Mincho',serif;color:var(--brass)}
.shk-step.goal .c{background:var(--navy);color:var(--brassl);border-color:var(--navy)}
.shk-step p{margin:0;font-size:14px;font-weight:600;color:var(--navy);line-height:1.5}
.shk-arrow{color:var(--brassl);font-size:18px;text-align:center}
.shk-tags{margin-top:40px;text-align:center}
.shk-tags .cap{font-size:13px;color:var(--sub);margin:0 0 14px}
.shk-tags .row{display:flex;flex-wrap:wrap;justify-content:center;gap:10px}
.shk-tag{font-size:13px;font-weight:500;color:#33414f;border:1px solid var(--line);background:var(--bg);padding:8px 18px;border-radius:999px}

/* ===== SERVICES ===== */
.shk-do{background:var(--bg);padding:84px 24px}
.shk-do .head{margin-bottom:40px}
.shk-cards3{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.shk-card{background:#fff;border:1px solid var(--line);border-top:3px solid var(--brass);padding:32px 26px}
.shk-card .num{font-family:ui-monospace,monospace;font-size:12px;color:var(--brass)}
.shk-card h3{font-family:'Shippori Mincho',serif;font-weight:600;font-size:19px;margin:12px 0 6px;color:var(--navy)}
.shk-card .force{margin:0 0 14px;font-size:12px;color:var(--brass);font-weight:500}
.shk-card p{margin:0;font-size:13.5px;line-height:1.8;color:#4a5560}
.shk-chain{margin-top:28px;background:var(--navy);border-radius:4px;padding:26px 32px;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:12px 20px}
.shk-chain span{font-size:14px;font-weight:600;color:#fff}
.shk-chain b{font-family:'Shippori Mincho',serif;font-size:19px;color:var(--brassl);margin:0 4px}
.shk-chain .ar{color:var(--brassl)}

/* ===== CASE ===== */
.shk-case{background:#fff;padding:84px 24px}
.shk-case .head{margin-bottom:36px}
.shk-cards4{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.shk-cc{background:var(--bg);border:1px solid var(--line);padding:24px 20px;border-radius:3px}
.shk-cc .lb{font-size:11px;letter-spacing:.14em;color:var(--brass);font-weight:600}
.shk-cc p{margin:10px 0 0;font-size:13.5px;line-height:1.8;color:#33414f;font-weight:500}
.shk-cc.result{background:var(--navy)}
.shk-cc.result .lb{color:var(--brassl)}
.shk-cc.result p{color:#fff}

/* ===== WORRIES ===== */
.shk-worry{background:var(--bg);padding:84px 24px}
.shk-worry .head{text-align:center;margin-bottom:40px}
.shk-worry-list{max-width:900px;margin:0 auto;display:flex;flex-direction:column;gap:12px}
.shk-wi{display:flex;align-items:center;gap:18px;background:#fff;border:1px solid var(--line);padding:20px 26px;border-radius:3px}
.shk-wi .n{font-family:'Shippori Mincho',serif;font-size:18px;color:var(--brassl);font-weight:600;flex:none;width:24px}
.shk-wi p{margin:0;font-size:15px;font-weight:500}
.shk-wi .em{color:var(--navy)}
.shk-worry .end{max-width:900px;margin:32px auto 0;text-align:center;font-size:15px;line-height:1.9;color:#33414f}
.shk-worry .end b{color:var(--navy)}

/* ===== VISION ===== */
.shk-vision{position:relative;background:var(--navyd);color:#fff;overflow:hidden}
.shk-vision:before{content:"";position:absolute;inset:0;background:radial-gradient(110% 100% at 85% 20%,rgba(160,125,67,.14),transparent 55%)}
.shk-vision-in{position:relative;max-width:820px;margin:0 auto;padding:72px 24px}
.shk-vision-photo{width:100%;max-width:288px;margin:0 auto;aspect-ratio:4/5;background:url('https://u.jimcdn.com/cms/o/scfd3726fb79b305f/userlayout/img/profile-1.png?t=1783411967') center 18%/cover no-repeat;-webkit-mask-image:radial-gradient(ellipse 70% 72% at 50% 42%,#000 52%,rgba(0,0,0,0) 100%);mask-image:radial-gradient(ellipse 70% 72% at 50% 42%,#000 52%,rgba(0,0,0,0) 100%)}
.shk-vision h2{font-family:'Shippori Mincho',serif;font-weight:500;font-size:24px;line-height:1.7;letter-spacing:.03em;margin:16px 0 26px;color:#fff}
.shk-vision .txt{font-size:14px;line-height:2;color:rgba(255,255,255,.78);margin:0 0 26px}
.shk-vlist{display:flex;flex-direction:column;gap:12px}
.shk-vi{display:flex;align-items:center;gap:14px;border-top:1px solid rgba(255,255,255,.12);padding-top:14px}
.shk-vi i{font-family:'Shippori Mincho',serif;color:var(--brassl);flex:none;font-style:normal}
.shk-vi span{font-size:15px;font-weight:500}

/* ===== PROFILE ===== */
.shk-prof{background:#fff;padding:84px 24px}
.shk-prof-in{max-width:1000px;margin:0 auto;display:grid;grid-template-columns:.9fr 1.1fr;gap:48px;align-items:center}
.shk-prof-photo{width:100%;border:1px solid var(--brassl);aspect-ratio:4/5;background:url('https://u.jimcdn.com/cms/o/scfd3726fb79b305f/userlayout/img/profile-2.png?t=1783411920') center/cover no-repeat,var(--line)}
.shk-prof h2{font-family:'Shippori Mincho',serif;font-weight:600;font-size:30px;letter-spacing:.04em;margin:14px 0 4px;color:var(--navy)}
.shk-prof .role{margin:0 0 24px;font-size:13px;letter-spacing:.06em;color:var(--sub)}
.shk-prof .bio{margin:0 0 26px;font-size:14.5px;line-height:2;color:#3a4652}
.shk-prof-stats{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.shk-chip{display:flex;align-items:center;gap:10px;background:var(--bg);border:1px solid var(--line);padding:13px 16px;border-radius:3px}
.shk-chip i{width:6px;height:6px;background:var(--brass);border-radius:50%;flex:none}
.shk-chip span{font-size:13px;color:#33414f}

/* ===== CONTACT ===== */
.shk-contact{position:relative;background:var(--navy);color:#fff;padding:84px 24px;overflow:hidden;text-align:center}
.shk-contact:before{content:"";position:absolute;inset:0;background:radial-gradient(100% 120% at 15% 20%,rgba(160,125,67,.16),transparent 55%)}
.shk-contact-in{position:relative;max-width:720px;margin:0 auto}
.shk-contact h2{font-family:'Shippori Mincho',serif;font-weight:600;font-size:32px;line-height:1.5;letter-spacing:.04em;margin:16px 0 20px;color:#fff}
.shk-contact .txt{margin:0 0 34px;font-size:15px;line-height:2;color:rgba(255,255,255,.82)}
.shk-btn-row{display:flex;justify-content:center;gap:14px;flex-wrap:wrap}
.shk-contact .tel{margin:24px 0 0;font-size:13px;color:rgba(255,255,255,.62)}

/* ===== FOOTER ===== */
.shk-footer{background:var(--navydd);color:rgba(255,255,255,.72)}
.shk-footer-in{max-width:1160px;margin:0 auto;padding:52px 24px 30px;display:flex;flex-wrap:wrap;justify-content:space-between;gap:28px;border-bottom:1px solid rgba(255,255,255,.1)}
.shk-footer .fj{font-family:'Shippori Mincho',serif;font-weight:600;font-size:20px;letter-spacing:.08em;color:#fff}
.shk-footer .fe{font-size:9px;letter-spacing:.3em;color:var(--brass);margin-bottom:12px}
.shk-footer .addr{margin:0;font-size:13px;line-height:1.9}
.shk-footer .fmenu ul{list-style:none;display:flex;gap:24px;flex-wrap:wrap;margin:0;padding:0}
.shk-footer .fmenu a{font-size:13px;color:rgba(255,255,255,.72)}
.shk-footer .fmenu a:hover{color:var(--brass)}
.shk-copy{max-width:1160px;margin:0 auto;padding:18px 24px 0;font-size:11.5px;color:rgba(255,255,255,.45);letter-spacing:.04em}

/* ===== RESPONSIVE ===== */
@media(max-width:860px){
 .shk-hero-in,.shk-vision-in,.shk-prof-in{grid-template-columns:1fr}
 .shk-hero h1{font-size:32px}
 .shk-cards3{grid-template-columns:1fr}
 .shk-cards4{grid-template-columns:1fr 1fr}
 .shk-flow{grid-template-columns:1fr 1fr;gap:8px}
 .shk-arrow{display:none}
 .shk-title{font-size:26px}
}
@media(max-width:520px){
 .shk-cards4{grid-template-columns:1fr}
 .shk-prof-stats{grid-template-columns:1fr}
 .shk-quote p{font-size:20px}
}