/* HARITA おすすめ表示 */
.hos-in{margin:28px 0;padding:12px 14px 14px;border-radius:14px;background:linear-gradient(135deg,#14213d 0%,#22345e 100%);color:#fff;box-shadow:0 10px 24px -14px rgba(20,33,61,.7);animation:hosPop .45s ease both}
@keyframes hosPop{from{transform:translateY(8px);opacity:.4}to{transform:none;opacity:1}}
.hos-in__lab{display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:12px;font-weight:700;letter-spacing:.1em;color:#f0c79d;margin:0 0 8px}
.hos-in .hos-ng{background:none;border:1px solid rgba(255,255,255,.25);color:#c3cde3;font-size:11px;border-radius:99px;padding:2px 10px;cursor:pointer;letter-spacing:0;line-height:1.6}
.hos-in .hos-ng:hover{border-color:#f0c79d;color:#fff}
.hos-in__card{display:grid !important;grid-template-columns:150px minmax(0,1fr);gap:14px;align-items:center;color:#fff !important;text-decoration:none !important}
.hos-in__th{display:block;aspect-ratio:1200/630;border-radius:9px;overflow:hidden;background:#2b3c66}
.hos-in__th img{width:100%;height:100%;object-fit:cover;display:block;margin:0 !important;transition:transform .3s}
.hos-in__card:hover .hos-in__th img{transform:scale(1.05)}
.hos-in__tx{min-width:0;display:block}
.hos-in__tx b{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;font-size:15px;line-height:1.55;color:#fff}
.hos-in__card:hover b{text-decoration:underline;text-underline-offset:3px}
.hos-why{display:inline-block;font-size:11px;font-weight:700;border-radius:99px;padding:1px 9px;margin:0 0 4px;background:rgba(240,199,157,.18);color:#f0c79d;line-height:1.7}
.hos-in__done{font-size:13px;color:#c3cde3;padding:6px 2px}
@media (max-width:600px){.hos-in__card{grid-template-columns:108px minmax(0,1fr);gap:10px}.hos-in__tx b{font-size:13.5px}}

.hos-bar{position:fixed;left:10px;right:10px;bottom:10px;z-index:9990;background:#fff;border:1px solid #d9dfea;border-radius:16px;box-shadow:0 12px 30px -8px rgba(15,25,50,.38);padding:9px 10px;transform:translateY(160%);transition:transform .45s cubic-bezier(.2,.9,.3,1.2);margin-left:env(safe-area-inset-left,0px);margin-right:env(safe-area-inset-right,0px)}
.hos-bar.is-on{transform:none}
.hos-bar__in{display:flex;align-items:center;gap:10px;color:#18213a !important;text-decoration:none !important}
.hos-bar__th{width:72px;flex:none;aspect-ratio:1200/630;border-radius:7px;overflow:hidden;background:#e6eaf2;display:block}
.hos-bar__th img{width:100%;height:100%;object-fit:cover;display:block;margin:0 !important}
.hos-bar__tx{min-width:0;flex:1;display:block}
.hos-bar__k{display:block;font-size:10.5px;font-weight:700;color:#8e5520;line-height:1.5;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.hos-bar__tx b{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:12.5px;line-height:1.45}
.hos-bar__go{flex:none;background:#14213d;color:#fff;border-radius:10px;padding:8px 11px;font-weight:700;font-size:12px}
.hos-bar__x{position:absolute;top:-10px;right:-4px;width:24px;height:24px;border-radius:50%;border:1px solid #d9dfea;background:#fff;color:#5d6680;font-size:13px;line-height:1;padding:0;cursor:pointer}
@media (prefers-reduced-motion:reduce){.hos-in,.hos-bar{animation:none;transition:none}}

/* トップ「あなたへ」 */
.hos-fy .hos-fy__re{background:none;border:1px solid #d9dfea;color:#14213d;font-size:12px;font-weight:700;border-radius:99px;padding:3px 12px;cursor:pointer;white-space:nowrap}
.hos-fy .hos-fy__re:hover{border-color:#b87333;color:#8e5520}
.hos-fy__sub{font-size:12px;color:#6b7590;margin:2px 0 10px !important;padding:0}
#hap .hos-fy__sub{padding:0 16px}
.hos-fy .hos-why{background:#fbf1e6;color:#8e5520;font-style:normal}
.hos-fy .hap-card .hos-why{margin-top:4px}
.hos-fy .hos-more{flex:none;align-self:stretch;min-width:120px;border:1.5px dashed #c9d2e3;background:#f6f8fc;color:#14213d;border-radius:12px;font-weight:700;font-size:13px;cursor:pointer;scroll-snap-align:start}
/* PC */
#main-contents-one > .hos-fy:not(.hap-sec){background:#fff;border:1px solid #dfe7f1;border-radius:16px;padding:18px 20px 20px;margin:0 0 24px;box-shadow:0 6px 18px -12px rgba(20,33,61,.35)}
.hos-fy__hd{display:flex;align-items:center;justify-content:space-between;gap:10px}
.hos-fy__hd h2{margin:0 !important;padding:0 0 0 12px !important;font-size:20px !important;font-weight:900;color:#14213d !important;border:0 !important;border-left:5px solid #b87333 !important;background:none !important;line-height:1.4}
.hos-fy__hd h2::before,.hos-fy__hd h2::after{display:none !important}
.hos-fy__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.hos-fy__grid .hos-card{display:block;color:#18213a !important;text-decoration:none !important}
.hos-fy__grid .hap-cv{display:block;aspect-ratio:1200/630;border-radius:10px;overflow:hidden;background:#e6eaf2}
.hos-fy__grid .hap-cv img{width:100%;height:100%;object-fit:cover;display:block;margin:0 !important;transition:transform .3s}
.hos-fy__grid .hos-card:hover img{transform:scale(1.05)}
.hos-fy__grid b{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;font-size:13.5px;line-height:1.55;margin-top:8px}
.hos-fy__grid .hos-why{display:inline-block}
@media (max-width:1000px){.hos-fy__grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
