/*
Theme Name: INSHOKU Dynamic Pro
Theme URI: https://www.inshoku.biz/
Author: HONG KONG JCBO LIMITED
Description: 飲食店開業支援、不動産、中国調達を統合したINSHOKU.BIZ専用WordPressテーマ。
Version: 2.4.0
Requires at least: 6.4
Requires PHP: 8.0
Text Domain: inshoku
*/
:root{--ink:#17231f;--green:#163d32;--green2:#285d4d;--gold:#c6a36a;--cream:#f5f1e9;--paper:#fff;--muted:#65716d;--line:#dde5e1;--shadow:0 24px 70px rgba(8,31,24,.13);--radius:22px;--wrap:min(1180px,calc(100% - 40px))}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Noto Sans JP",sans-serif;line-height:1.8;background:#fff}.site-header img,main img,.site-footer img{max-width:100%;height:auto}a{color:inherit;text-decoration:none}.wrap{width:var(--wrap);margin:auto}.site-header{position:fixed;z-index:1000;inset:0 0 auto;color:#fff;transition:.35s}.site-header.scrolled{background:rgba(8,30,24,.95);backdrop-filter:blur(14px);box-shadow:0 8px 32px rgba(0,0,0,.18)}.nav{min-height:84px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{font-weight:900;font-size:25px;letter-spacing:.03em}.brand small{display:block;font-size:10px;font-weight:600;letter-spacing:.12em;opacity:.78}.menu{list-style:none;display:flex;gap:22px;align-items:center;margin:0;padding:0}.menu a{font-size:14px;font-weight:800}.menu a:hover{color:var(--gold)}.nav-toggle{display:none;background:none;border:1px solid rgba(255,255,255,.4);color:#fff;border-radius:10px;padding:8px 12px;font-size:20px}.inshoku-main-hero{min-height:860px;display:grid;align-items:end;color:#fff;position:relative;background:linear-gradient(95deg,rgba(6,28,22,.91),rgba(8,25,20,.26)),var(--hero) center/cover no-repeat}.inshoku-main-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(5,22,17,.78),transparent 50%)}.inshoku-hero-inner{position:relative;z-index:2;padding:190px 0 115px;max-width:980px}.eyebrow{display:inline-flex;align-items:center;gap:12px;text-transform:uppercase;letter-spacing:.18em;font-size:12px;font-weight:900;color:var(--gold)}.eyebrow:before{content:"";width:42px;height:1px;background:currentColor}.inshoku-main-hero h1,.page-hero h1{font-size:clamp(45px,7vw,92px);line-height:1.06;letter-spacing:-.045em;margin:22px 0 28px}.lead{font-size:clamp(18px,2vw,24px);max-width:820px;color:rgba(255,255,255,.86)}.actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:34px}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:54px;padding:0 27px;border-radius:999px;font-weight:900;border:1px solid transparent;transition:.25s}.btn.primary{background:var(--gold);color:#13231d}.btn.outline{border-color:rgba(255,255,255,.65);color:#fff}.btn.green{background:var(--green);color:#fff}.btn:hover{transform:translateY(-3px);box-shadow:0 14px 30px rgba(0,0,0,.18)}.section{padding:105px 0}.cream{background:var(--cream)}.dark{background:var(--green);color:#fff}.section h2{font-size:clamp(34px,4.8vw,62px);line-height:1.2;letter-spacing:-.035em;margin:20px 0 28px}.section h3{font-size:22px;line-height:1.4}.muted{color:var(--muted)}.dark .muted{color:rgba(255,255,255,.73)}.grid2,.grid3,.grid4{display:grid;gap:32px}.grid2{grid-template-columns:repeat(2,minmax(0,1fr));align-items:center}.grid3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid4{grid-template-columns:repeat(4,minmax(0,1fr))}.photo{width:100%;border-radius:var(--radius);box-shadow:var(--shadow);object-fit:cover;min-height:420px}.card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:32px;box-shadow:0 12px 40px rgba(15,43,35,.06);transition:.3s}.card:hover{transform:translateY(-7px);box-shadow:var(--shadow)}.card .num{font-size:52px;font-weight:900;color:rgba(23,61,50,.13)}.visual-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;grid-template-rows:260px 260px;gap:18px}.visual-card{position:relative;overflow:hidden;border-radius:20px}.visual-card:first-child{grid-row:1/3}.visual-card img{width:100%;height:100%;object-fit:cover;transition:.5s}.visual-card:hover img{transform:scale(1.06)}.caption{position:absolute;left:0;right:0;bottom:0;padding:48px 24px 22px;color:#fff;background:linear-gradient(transparent,rgba(7,28,22,.9))}.caption small{display:block;opacity:.78}.steps{display:grid;grid-template-columns:repeat(5,1fr);gap:16px;counter-reset:step}.step{background:#fff;border-radius:18px;padding:28px 20px;border:1px solid var(--line)}.step:before{counter-increment:step;content:"0" counter(step);font-size:34px;font-weight:900;color:rgba(23,61,50,.17)}.scope-strip{background:#0c251d;color:#fff;padding:50px 0}.scope-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.scope-item{padding:32px;border:1px solid rgba(255,255,255,.15);border-radius:20px}.scope-item strong{font-size:25px;display:block}.property-search{background:#fff;padding:28px;border-radius:22px;box-shadow:var(--shadow);display:grid;grid-template-columns:1.2fr 1fr .8fr .8fr auto;gap:12px;margin-top:-65px;position:relative;z-index:5}.property-search input,.property-search select,.inshoku-form input,.inshoku-form textarea,.inshoku-form select{width:100%;border:1px solid var(--line);border-radius:12px;padding:14px;background:#fff}.listing-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:27px}.listing-card{border-radius:20px;overflow:hidden;border:1px solid var(--line);background:#fff}.listing-card img{width:100%;height:235px;object-fit:cover}.listing-body{padding:23px}.meta-row{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0}.tag{font-size:12px;padding:6px 10px;border-radius:999px;background:var(--cream);font-weight:800}.price{font-size:22px;font-weight:900;color:var(--green)}.page-hero{padding:190px 0 100px;color:#fff;background:linear-gradient(90deg,rgba(8,30,24,.89),rgba(8,30,24,.28)),var(--hero) center/cover;min-height:570px;display:flex;align-items:end}.breadcrumbs{font-size:13px;opacity:.75}.list{padding-left:1.2em}.list li{margin:.7em 0}.note{padding:22px 25px;border-left:5px solid var(--gold);background:#fff;border-radius:0 14px 14px 0}.table{width:100%;border-collapse:collapse;background:#fff;border-radius:18px;overflow:hidden}.table th,.table td{padding:18px 20px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}.table th{width:210px;background:#f2f6f3}.faq details{background:#fff;border:1px solid var(--line);border-radius:16px;padding:0 24px;margin:14px 0}.faq summary{cursor:pointer;font-weight:900;padding:22px 0}.mapframe{width:100%;height:460px;border:0;border-radius:22px}.cta{background:linear-gradient(130deg,#153d31,#09251d);color:#fff}.contactbox{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.15);padding:30px;border-radius:20px}.contactline{padding:14px 0;border-bottom:1px solid rgba(255,255,255,.14)}.contactline small{display:block;opacity:.7}.contactline b{font-size:18px}.site-footer{background:#071b15;color:#fff;padding:72px 0 24px}.footgrid{display:grid;grid-template-columns:1.7fr 1fr 1fr 1.2fr;gap:40px}.site-footer a{display:block;color:rgba(255,255,255,.75);margin:8px 0}.legal{border-top:1px solid rgba(255,255,255,.12);margin-top:48px;padding-top:22px;color:rgba(255,255,255,.55);font-size:12px}.social-float{position:fixed;right:18px;bottom:18px;z-index:999;display:flex;flex-direction:column;gap:10px}.social-float a{width:52px;height:52px;border-radius:50%;display:grid;place-items:center;color:#fff;background:var(--green);box-shadow:0 8px 24px rgba(0,0,0,.22);font-weight:900}.reveal{opacity:0;transform:translateY(28px);transition:.75s}.reveal.is-visible{opacity:1;transform:none}.page-content{padding:85px 0}.page-content h2{font-size:36px}.qr-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.qr-box{background:#fff;padding:22px;border-radius:18px;text-align:center}.qr-box img{max-width:180px}.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.stat{padding:26px;border-radius:18px;background:#fff;border:1px solid var(--line)}.stat b{font-size:34px;display:block;color:var(--green)}
@media(max-width:980px){.menu{display:none;position:absolute;top:84px;left:20px;right:20px;background:#102f26;padding:20px;border-radius:18px;flex-direction:column;align-items:flex-start}.menu.open{display:flex}.nav-toggle{display:block}.grid3,.grid4,.listing-grid,.stat-grid{grid-template-columns:repeat(2,1fr)}.steps{grid-template-columns:repeat(2,1fr)}.property-search{grid-template-columns:1fr 1fr}.visual-grid{grid-template-columns:1fr 1fr}.visual-card:first-child{grid-row:auto}.footgrid{grid-template-columns:1fr 1fr}}
@media(max-width:680px){:root{--wrap:min(100% - 28px,1180px)}.section{padding:72px 0}.inshoku-main-hero{min-height:760px}.inshoku-hero-inner{padding-bottom:75px}.grid2,.grid3,.grid4,.listing-grid,.scope-grid,.property-search,.visual-grid,.footgrid,.qr-grid,.stat-grid{grid-template-columns:1fr}.steps{grid-template-columns:1fr}.visual-card{height:260px}.photo{min-height:300px}.table th,.table td{display:block;width:100%}.social-float{right:10px;bottom:10px}.social-float a{width:46px;height:46px}.page-hero{min-height:500px}}

/* v2.2 compatibility: isolate hero from other plugins/themes */
body.inshoku-dynamic-pro-home .inshoku-main-hero{width:100%!important;max-width:none!important;min-width:0!important;float:none!important;clear:both!important;margin:0!important;overflow:hidden!important;display:grid!important;position:relative!important;}
body.inshoku-dynamic-pro-home .inshoku-main-hero>*{position:relative;z-index:2;}
body.inshoku-dynamic-pro-home main{width:100%!important;max-width:none!important;float:none!important;display:block!important;}
body.inshoku-dynamic-pro-home .inshoku-main-hero img{float:none!important;}
.qr-grid:empty{display:none}.qr-box{border:1px solid var(--line);box-shadow:0 8px 25px rgba(0,0,0,.08)}.qr-box b{display:block;margin-top:10px;color:var(--ink)}
@media(max-width:680px){body.inshoku-dynamic-pro-home .inshoku-main-hero{min-height:760px!important;}}

/* v2.3 WordPress admin-bar isolation */
#wpadminbar,#wpadminbar *{box-sizing:content-box;}
#wpadminbar img{max-width:none!important;min-width:0!important;margin:0!important;padding:0!important;border-radius:0!important;box-shadow:none!important;float:none!important;position:static!important;transform:none!important;}
#wpadminbar #wp-admin-bar-my-account.with-avatar>.ab-item img,#wpadminbar .quicklinks li.with-avatar>a img{width:18px!important;height:18px!important;max-width:18px!important;max-height:18px!important;object-fit:cover!important;border-radius:50%!important;}
#wpadminbar #wp-admin-bar-user-info .avatar{width:64px!important;height:64px!important;max-width:64px!important;max-height:64px!important;object-fit:cover!important;border-radius:50%!important;position:absolute!important;left:15px!important;top:15px!important;}
#wpadminbar #wp-admin-bar-user-info{min-height:64px!important;}
#wpadminbar #wp-admin-bar-user-info .display-name,#wpadminbar #wp-admin-bar-user-info .username{height:auto!important;line-height:1.5!important;}
#wpadminbar .ab-sub-wrapper{max-width:320px!important;}
#wpadminbar #wp-admin-bar-my-account .ab-sub-wrapper{width:270px!important;}
@media(max-width:782px){#wpadminbar #wp-admin-bar-my-account.with-avatar>.ab-item img{width:26px!important;height:26px!important;max-width:26px!important;max-height:26px!important;}}

/* v2.4: completely remove WordPress admin-bar avatar/profile images on the front end. */
#wpadminbar #wp-admin-bar-my-account.with-avatar > .ab-item img,
#wpadminbar #wp-admin-bar-user-info .avatar,
#wpadminbar .quicklinks li.with-avatar > a img,
#wpadminbar img.avatar,
#wpadminbar img.gravatar {
  display:none !important;
  visibility:hidden !important;
  width:0 !important;
  height:0 !important;
  min-width:0 !important;
  min-height:0 !important;
  max-width:0 !important;
  max-height:0 !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  transform:none !important;
}
#wpadminbar #wp-admin-bar-user-info .ab-item {
  min-height:72px !important;
  padding-left:16px !important;
}
#wpadminbar #wp-admin-bar-user-info .display-name,
#wpadminbar #wp-admin-bar-user-info .username {
  margin-left:0 !important;
}
#wpadminbar #wp-admin-bar-my-account > .ab-item {
  padding-left:10px !important;
}
