/* イエセリ 物件LP（枚方市尊延寺5丁目） */
:root{--navy:#1b3a5b;--navy-d:#12293f;--blue:#2f6fb0;--or:#ee7d0e;--or-d:#cf6a00;--bg:#f2f6fb;--line:#dbe4ee;--tx:#1f2d3d;--mu:#62708a;--red:#c2410c;--ok:#1f8a5b;
 --num:"Roboto","Noto Sans JP",sans-serif;--ease:cubic-bezier(.22,1,.36,1)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:70px}
body{margin:0;font-family:"Noto Sans JP","Hiragino Sans","Yu Gothic",sans-serif;color:var(--tx);background:var(--bg);line-height:1.75;font-size:15.5px;overflow-x:clip}
img{max-width:100%;display:block}a{color:inherit}
.wrap{width:min(1160px,100%);margin:0 auto;padding:0 20px}
.num{font-family:var(--num);font-variant-numeric:tabular-nums}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font:inherit;font-weight:800;text-decoration:none;border:0;border-radius:10px;padding:13px 22px;cursor:pointer;transition:transform .3s var(--ease),box-shadow .3s,filter .3s;position:relative;overflow:hidden}
.btn:hover{transform:translateY(-2px)}
.btn.or{background:var(--or);color:#fff;box-shadow:0 10px 24px rgba(238,125,14,.3)}
.btn.or::after{content:"";position:absolute;top:0;bottom:0;left:-60%;width:40%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.45),transparent);transform:skewX(-20deg);animation:shine 3.6s ease-in-out infinite}
@keyframes shine{0%,55%{left:-60%}100%{left:130%}}
.btn.nv{background:var(--navy);color:#fff}
.btn.ln{background:#fff;color:var(--navy);border:2px solid var(--navy)}
.btn.lg{padding:16px 28px;font-size:17px}
.btn[disabled]{opacity:.5;cursor:not-allowed;transform:none}
.tag{display:inline-block;font-size:12px;font-weight:800;border-radius:6px;padding:3px 9px;background:#e7eef6;color:var(--navy)}
.tag.w{background:#fff1e6;color:var(--red)}.tag.g{background:#e6f5ee;color:var(--ok)}
.src{display:inline-block;font-size:10.5px;font-weight:700;color:var(--mu);border:1px solid var(--line);border-radius:4px;padding:0 5px;margin-left:6px;vertical-align:1px;white-space:nowrap}

/* ヘッダー */
.hd{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.96);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.hd .wrap{display:flex;align-items:center;gap:16px;height:64px}
.hd .lg img{height:42px;width:auto}
.hd nav{display:flex;gap:2px;margin-left:auto}
.hd nav a{text-decoration:none;font-size:13.5px;font-weight:700;padding:8px 10px;border-radius:99px;white-space:nowrap}
.hd nav a:hover{background:var(--bg)}
.hd .btn{padding:10px 16px;font-size:14px;white-space:nowrap}
.prog{position:fixed;left:0;right:0;top:0;height:3px;z-index:60;pointer-events:none}.prog i{display:block;height:100%;background:linear-gradient(90deg,var(--blue),var(--or));transform-origin:0 50%;transform:scaleX(var(--sp,0))}

/* ファーストビュー */
.fv{position:relative;color:#fff;background:var(--navy-d);overflow:hidden;isolation:isolate}
.fv-bg{position:absolute;inset:0;z-index:-1}
.fv-bg img{width:100%;height:100%;object-fit:cover;animation:kb 22s ease-in-out infinite alternate;opacity:.55}
.fv-bg::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(13,30,52,.96) 0%,rgba(13,30,52,.82) 48%,rgba(13,30,52,.35) 100%)}
@keyframes kb{from{transform:scale(1.02)}to{transform:scale(1.12)}}
.fv .wrap{display:grid;grid-template-columns:1.15fr .85fr;gap:36px;align-items:center;padding-top:56px;padding-bottom:56px}
.fv .kick{display:inline-flex;align-items:center;gap:8px;background:#fff;color:var(--navy);font-weight:800;font-size:13px;border-radius:8px;padding:5px 12px 5px 6px;margin:0 0 16px}
.fv .kick b{background:var(--or);color:#fff;border-radius:5px;padding:2px 8px;font-size:12px}
.fv h1{font-size:clamp(28px,4vw,46px);line-height:1.3;margin:0 0 12px;text-shadow:0 2px 14px rgba(0,0,0,.3)}
.fv h1 small{display:block;font-size:.42em;font-weight:700;opacity:.85;letter-spacing:.04em;margin-bottom:4px}
.fv .tags{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 22px}
.fv .tags span{font-size:12.5px;font-weight:700;border:1px solid rgba(255,255,255,.45);border-radius:99px;padding:3px 12px;background:rgba(255,255,255,.08)}
.fv .tags span.w{border-color:#ffb27a;color:#ffd0ad}
.facts{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:0;padding:0;list-style:none}
.facts li{background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.2);border-radius:12px;padding:10px 12px;backdrop-filter:blur(6px)}
.facts small{display:block;font-size:11px;font-weight:700;opacity:.75}
.facts b{font:800 20px/1.3 var(--num)}.facts b i{font-style:normal;font-size:12px;margin-left:2px;opacity:.85}
.panel{background:#fff;color:var(--tx);border-radius:18px;padding:24px;box-shadow:0 30px 60px rgba(0,0,0,.35);position:relative}
.panel::before{content:"";position:absolute;inset:-2px;border-radius:20px;z-index:-1;background:conic-gradient(from var(--ang,0deg),transparent 0 70%,#ffcf3f 80%,var(--or) 90%,transparent 100%);animation:spin 5s linear infinite}
@property --ang{syntax:"<angle>";inherits:false;initial-value:0deg}@keyframes spin{to{--ang:360deg}}
.panel .lab{font-size:12.5px;font-weight:800;color:var(--mu)}
.panel .price{font:800 54px/1.05 var(--num);color:var(--or);margin:2px 0 4px}.panel .price i{font-style:normal;font-size:20px;margin-left:4px}
.panel .ph{display:block;font-size:12.5px;color:var(--mu);margin-bottom:14px}
.cdn{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin:6px 0 14px}
.cdn div{background:var(--navy);color:#fff;border-radius:10px;text-align:center;padding:8px 0}
.cdn b{display:block;font:800 26px/1.1 var(--num)}.cdn small{font-size:10.5px;opacity:.8}
.live{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:14px}
.live div{border:1px solid var(--line);border-radius:10px;padding:8px 12px}
.live small{display:block;font-size:11.5px;color:var(--mu);font-weight:700}
.live b{font:800 24px var(--num);color:var(--navy)}.live b i{font-style:normal;font-size:12px;margin-left:2px}
.panel .btns{display:grid;gap:8px}
.panel .nt{font-size:11.5px;color:var(--mu);margin:10px 0 0;line-height:1.6}

/* セクション共通 */
.sec{padding:80px 0}.sec.wh{background:#fff}
.eb{font:800 12px/1 var(--num);letter-spacing:.24em;color:var(--blue);margin:0 0 12px}
.h2{font-size:clamp(24px,3vw,34px);line-height:1.4;margin:0 0 14px;color:var(--navy)}
.h2::after{content:"";display:block;width:46px;height:4px;border-radius:2px;background:var(--or);margin-top:14px;transform:scaleX(0);transform-origin:0 50%;transition:transform .9s var(--ease) .2s}
.h2.in::after{transform:none}
.lead{color:var(--mu);max-width:46em;margin:0 0 34px}
.rv{opacity:0;transform:translateY(24px);transition:opacity .8s ease,transform .8s var(--ease)}.rv.in{opacity:1;transform:none}

/* 写真 */
.gal{display:grid;grid-template-columns:2fr 1fr 1fr;grid-auto-rows:170px;gap:8px}
.gal button{border:0;padding:0;border-radius:12px;overflow:hidden;cursor:zoom-in;position:relative;background:#ddd}
.gal button img{width:100%;height:100%;object-fit:cover;transition:transform 1s var(--ease)}
.gal button:hover img{transform:scale(1.06)}
.gal button span{position:absolute;left:8px;bottom:8px;font-size:11.5px;font-weight:700;background:rgba(13,30,52,.75);color:#fff;border-radius:6px;padding:2px 8px}
.gal button:first-child{grid-row:span 2}
.gal .more{display:none}
.gal.open .more{display:block}
.galbtn{margin-top:14px;text-align:center}
.lb{position:fixed;inset:0;z-index:100;background:rgba(5,12,22,.92);display:none;align-items:center;justify-content:center;flex-direction:column;padding:20px}
.lb.on{display:flex}
.lb img{max-height:80vh;max-width:min(1200px,100%);border-radius:8px}
.lb p{color:#fff;margin:10px 0 0;font-weight:700}
.lb .x,.lb .pv,.lb .nx{position:absolute;background:rgba(255,255,255,.15);color:#fff;border:0;width:48px;height:48px;border-radius:50%;font-size:22px;cursor:pointer}
.lb .x{top:16px;right:16px}.lb .pv{left:16px;top:50%}.lb .nx{right:16px;top:50%}

/* 概要の表 */
.two{display:grid;grid-template-columns:1fr 1fr;gap:22px;align-items:start}
.tbl{width:100%;border-collapse:collapse;background:#fff;border-radius:14px;overflow:hidden;border:1px solid var(--line)}
.tbl caption{text-align:left;font-weight:800;color:var(--navy);padding:0 0 8px;font-size:16px}
.tbl th,.tbl td{border-bottom:1px solid var(--line);padding:10px 14px;text-align:left;vertical-align:top;font-size:14.5px}
.tbl th{width:34%;background:#f6f9fc;color:#4b5b6e;font-weight:700;font-size:13.5px}
.tbl tr:last-child th,.tbl tr:last-child td{border-bottom:0}
.tbl .sub{display:block;font-size:12.5px;color:var(--mu)}

/* 告知事項 */
.alert{background:#fff;border:2px solid #f3c7a6;border-radius:18px;padding:26px 28px;position:relative}
.alert h3{margin:0 0 12px;color:var(--red);font-size:19px;display:flex;align-items:center;gap:8px}
.alert ul{margin:0;padding:0;list-style:none;display:grid;gap:10px}
.alert li{display:grid;grid-template-columns:150px 1fr;gap:12px;border-bottom:1px dashed var(--line);padding-bottom:10px}
.alert li:last-child{border-bottom:0;padding-bottom:0}
.alert li b{color:var(--navy);font-size:14px}
.alert li span{font-size:14.5px}
.rebuild{margin-top:22px;background:var(--navy);color:#dbe4ee;border-radius:18px;padding:26px 28px;display:grid;grid-template-columns:1fr 1fr;gap:26px}
.rebuild h3{color:#fff;margin:0 0 10px;font-size:19px}
.rebuild p{margin:0 0 10px;font-size:14.5px}
.rebuild ul{margin:0;padding:0;list-style:none;display:grid;gap:8px}
.rebuild li{background:rgba(255,255,255,.08);border-radius:10px;padding:10px 14px;font-size:14px}
.rebuild li b{color:#ffcf3f}

/* 資料 */
.docs{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}
.doc{background:#fff;border:1px solid var(--line);border-radius:14px;overflow:hidden;text-decoration:none;display:flex;flex-direction:column;transition:transform .4s var(--ease),box-shadow .4s}
.doc:hover{transform:translateY(-5px);box-shadow:0 18px 36px rgba(15,40,80,.13)}
.doc .th{height:150px;background:#eef2f6;overflow:hidden;border-bottom:1px solid var(--line)}
.doc .th img{width:100%;height:100%;object-fit:cover;object-position:top}
.doc .bd{padding:10px 12px 12px;display:flex;flex-direction:column;gap:4px;flex:1}
.doc b{font-size:13.5px;line-height:1.45;color:var(--navy)}
.doc small{font-size:11.5px;color:var(--mu)}
.doc .dl{margin-top:auto;font-size:12.5px;font-weight:800;color:var(--or)}
.dlall{margin-top:16px;display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.dlall small{color:var(--mu)}

/* 相場 */
.kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:22px}
.kpi{background:#fff;border:1px solid var(--line);border-radius:14px;padding:16px 18px}
.kpi small{display:block;font-size:12px;font-weight:700;color:var(--mu)}
.kpi b{display:block;font:800 30px/1.2 var(--num);color:var(--navy);margin:4px 0}.kpi b i{font-style:normal;font-size:13px;margin-left:3px}
.kpi em{font-style:normal;font-size:12px;color:var(--mu)}
.kpi.gd b{color:var(--ok)}.kpi.dn b{color:var(--red)}
.card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:22px 24px}
.card h3{margin:0 0 4px;font-size:17px;color:var(--navy)}
.card .cap{font-size:12.5px;color:var(--mu);margin:0 0 12px}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.chart{width:100%;height:auto;display:block}
.mini{width:100%;border-collapse:collapse;font-size:13.5px}
.mini th,.mini td{border-bottom:1px solid var(--line);padding:7px 8px;text-align:left}
.mini th{font-size:12px;color:var(--mu);font-weight:700;background:#f6f9fc}
.mini td.r,.mini th.r{text-align:right;font-variant-numeric:tabular-nums}
.mini tr.hl td{background:#fff4e8;font-weight:700}
.note{font-size:12px;color:var(--mu);margin:10px 0 0;line-height:1.7}
.yield{width:100%;border-collapse:collapse;text-align:center;font-variant-numeric:tabular-nums}
.yield th,.yield td{border:1px solid var(--line);padding:9px 6px;font-size:14px}
.yield th{background:var(--navy);color:#fff;font-size:12.5px}
.yield td.h{background:#fff4e8;font-weight:800;color:var(--or-d)}
.mapw{border-radius:14px;overflow:hidden;border:1px solid var(--line);position:relative}
.mapw img{width:100%}

/* スケジュール */
.tl{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.tl li{background:#fff;border:1px solid var(--line);border-radius:14px;padding:16px 18px;position:relative}
.tl li small{display:block;font:800 12px var(--num);color:var(--blue);letter-spacing:.08em}
.tl li b{display:block;font-size:16px;color:var(--navy);margin:4px 0}
.tl li span{font-size:13.5px;color:var(--mu)}
.tl li.now{border-color:var(--or);box-shadow:0 0 0 3px rgba(238,125,14,.15)}
.rules{margin-top:18px;display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.rules div{background:var(--navy);color:#cfd8e3;border-radius:14px;padding:16px 18px;font-size:13.5px}
.rules b{display:block;color:#fff;font-size:15px;margin-bottom:4px}

/* フォーム */
.fbox{background:#fff;border:1px solid var(--line);border-radius:20px;padding:28px;box-shadow:0 20px 50px rgba(15,40,80,.08)}
.fgrid{display:grid;grid-template-columns:1fr 1fr;gap:12px 16px}
.fgrid .full{grid-column:1/-1}
.f label,.fl{display:block;font-weight:700;font-size:13.5px;margin-bottom:4px}
.req{font-style:normal;font-size:10.5px;background:var(--or);color:#fff;border-radius:4px;padding:1px 6px;margin-left:6px;vertical-align:1px}
.f input,.f select,.f textarea{width:100%;font:inherit;font-size:16px;padding:11px 13px;border:1.5px solid #c8d4e2;border-radius:10px;background:#fbfcfe}
.f input:focus,.f select:focus,.f textarea:focus{outline:none;border-color:var(--blue);box-shadow:0 0 0 3px rgba(47,111,176,.15)}
.f .amt{position:relative}.f .amt input{font:800 30px var(--num);text-align:right;padding-right:60px}
.f .amt span{position:absolute;right:16px;top:50%;transform:translateY(-50%);font-weight:800;color:var(--mu)}
.f .chk{display:flex;gap:8px;align-items:flex-start;font-weight:500;font-size:14px;background:var(--bg);border-radius:10px;padding:10px 12px}
.f .chk input{width:20px;height:20px;flex:0 0 20px;margin-top:2px}
.up{border:2px dashed #b7c6d8;border-radius:14px;padding:16px;text-align:center;background:#f8fbfe;cursor:pointer;position:relative;transition:border-color .3s,background .3s}
.up:hover{border-color:var(--blue);background:#f0f6fd}
.up input{position:absolute;inset:0;opacity:0;cursor:pointer}
.up b{display:block;color:var(--navy)}.up small{color:var(--mu)}
.up .pv{display:none;max-height:140px;margin:10px auto 0;border-radius:8px}
.up.has .pv{display:block}
.cal{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}
.cal .dw{font-size:11.5px;text-align:center;color:var(--mu);font-weight:700}
.cal button{font:inherit;border:1px solid var(--line);background:#fff;border-radius:10px;padding:6px 0;cursor:pointer;line-height:1.2}
.cal button b{display:block;font:800 16px var(--num)}.cal button small{font-size:10.5px;color:var(--ok);font-weight:700}
.cal button[disabled]{background:#f1f3f6;color:#a7b1bd;cursor:not-allowed}.cal button[disabled] small{color:#a7b1bd}
.cal button[aria-pressed=true]{background:var(--navy);color:#fff;border-color:var(--navy)}.cal button[aria-pressed=true] small{color:#ffcf3f}
.slots{display:flex;flex-wrap:wrap;gap:8px}
.slots button{font:inherit;font-weight:700;border:1.5px solid var(--line);background:#fff;border-radius:99px;padding:8px 16px;cursor:pointer}
.slots button[disabled]{text-decoration:line-through;color:#a7b1bd;cursor:not-allowed;background:#f1f3f6}
.slots button[aria-pressed=true]{background:var(--or);border-color:var(--or);color:#fff}
.msg{display:none;margin-top:14px;border-radius:12px;padding:14px 16px;font-size:14.5px}
.msg.ok{display:block;background:#e9f7f0;border:1px solid #a6dcc2;color:#14532d}
.msg.ng{display:block;background:#fff4f2;border:1px solid #f5c2b8;color:#9a2d16}
.fsec{display:grid;grid-template-columns:.8fr 1.2fr;gap:30px;align-items:start}
.fside h3{margin:0 0 10px;color:var(--navy)}
.fside ul{margin:0;padding:0 0 0 1.1em;font-size:14px;color:#3d4c5e}
.fside li{margin-bottom:6px}

/* フッター */
.ft{background:var(--navy-d);color:#9fb0c4;font-size:13px;padding:40px 0 100px}
.ft img{height:44px;width:auto;margin-bottom:10px}
.spbar{display:none}

@media (max-width:1020px){
  .fv .wrap,.two,.grid2,.rebuild,.fsec{grid-template-columns:1fr}
  .docs{grid-template-columns:repeat(3,1fr)}
  .kpis{grid-template-columns:1fr 1fr}
  .tl,.rules{grid-template-columns:1fr 1fr}
  .hd nav{display:none}.hd .btn{margin-left:auto}
}
@media (max-width:700px){
  body{font-size:15px}
  .wrap{padding:0 16px}
  .hd .wrap{height:58px}.hd .lg img{height:34px}
  .hd .btn.ln{display:none}
  .fv .wrap{padding-top:28px;padding-bottom:30px;gap:20px}
  .fv-bg::after{background:linear-gradient(180deg,rgba(13,30,52,.75),rgba(13,30,52,.95) 55%)}
  .facts{grid-template-columns:1fr 1fr 1fr}.facts li{padding:8px}.facts b{font-size:16px}.facts small{font-size:10px}
  .panel{padding:18px}.panel .price{font-size:44px}
  .cdn b{font-size:22px}
  .sec{padding:56px 0}
  .gal{grid-template-columns:1fr 1fr;grid-auto-rows:120px}.gal button:first-child{grid-column:span 2;grid-row:span 2}
  .alert{padding:20px 18px}.alert li{grid-template-columns:1fr;gap:2px}
  .rebuild{padding:22px 18px}
  .docs{grid-template-columns:1fr 1fr}.doc .th{height:110px}
  .kpis{grid-template-columns:1fr 1fr}.kpi b{font-size:24px}
  .tl,.rules{grid-template-columns:1fr}
  .fbox{padding:20px 16px}.fgrid{grid-template-columns:1fr}
  .tbl th{width:38%}.tbl th,.tbl td{padding:9px 10px;font-size:13.5px}
  .card{padding:18px 16px}
  .spbar{display:grid;grid-template-columns:1fr 1fr;position:fixed;left:0;right:0;bottom:0;z-index:60;box-shadow:0 -6px 20px rgba(0,0,0,.15)}
  .spbar a{text-align:center;text-decoration:none;font-weight:800;padding:15px 6px;color:#fff;background:var(--navy)}.spbar a.o{background:var(--or)}
}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}.rv{opacity:1;transform:none}}
@media (max-width:700px){.gal:not(.open) button:nth-child(8){display:none}.mini{font-size:12.5px}.mini th,.mini td{padding:6px 5px}.yield th,.yield td{font-size:12.5px;padding:7px 3px}}
