.card-case{display:flex;flex-direction:column;height:100%;overflow:hidden;background-color:#fff;border-radius:8px;box-shadow:3px 3px 15px 0 rgba(0,0,0,.1);transition:box-shadow .3s ease}@media(hover: hover){.card-case:hover{box-shadow:6px 6px 24px 0 rgba(0,0,0,.18)}.card-case:hover .card-case__thumbnail img{transform:scale(1.05)}}.card-case__thumbnail{position:relative;aspect-ratio:340/183.929;min-height:0}.card-case__thumbnail::after{content:"";position:absolute;inset:10px 9px;border:1px solid #fff;border-radius:8px;pointer-events:none}@media(max-width: 959px){.card-case__thumbnail::after{inset:7px 6px}}.card-case__thumbnail img{width:100%;height:100%;object-fit:cover;transition:transform .4s ease}.card-case__noimage{display:flex;align-items:center;justify-content:center;width:100%;height:100%;background-color:#f5f5f5}.card-case__noimage img{width:40%;height:auto;object-fit:contain}.card-case__body{display:flex;flex:1;flex-direction:column;align-items:flex-start;padding:16px}.card-case__tag{display:inline-flex;align-items:center;justify-content:center;padding:0 8px;background-color:#ff4800;border-radius:2px;font-size:15px;font-weight:700;line-height:1.7;letter-spacing:.02em;color:#fff}@media(max-width: 959px){.card-case__tag{padding:2px 8px;font-size:13px;line-height:1.65}}.card-case__title{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden;margin-top:12px;font-size:22px;font-weight:700;line-height:1.6;letter-spacing:.02em;color:#111}@media(max-width: 959px){.card-case__title{margin-top:8px;font-size:18px;line-height:1.5}}.card-case__excerpt{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:5;overflow:hidden;margin-top:12px;font-size:15px;line-height:1.7;letter-spacing:.02em;color:#111}@media(max-width: 959px){.card-case__excerpt{margin-top:8px;font-size:14px;line-height:1.6}}.card-case__more{display:flex;align-items:center;gap:1px;align-self:flex-end;margin-top:auto;padding-top:8px;font-size:13px;line-height:1.65;letter-spacing:.02em;color:#0b3b99}.card-case__more svg{width:24px;height:24px}.case .page-header::before{background:url("../img/common/bg.webp") 0 14.1%/100% auto no-repeat}@media(max-width: 959px){.case .page-header::before{background:url("../img/common/page-header-bg-sp.webp") center/cover no-repeat}}.case .page-header::after{background:rgba(1,41,58,.4)}.case-list{padding:80px 0 120px}@media(max-width: 959px){.case-list{padding:56px 0}}@media(max-width: 959px){.case-list__inner{padding-inline:24px}}.case-list__heading{display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center}.case-list__heading::after{content:"";width:2px;height:30px;background-color:#ff4800}@media(max-width: 959px){.case-list__heading::after{height:20px}}.case-list__heading-en{font-family:"Roboto Condensed",sans-serif;font-style:italic;font-weight:700;font-size:16px;line-height:1.3;letter-spacing:.02em;color:#ff4800}@media(max-width: 959px){.case-list__heading-en{font-size:14px}}.case-list__heading-title{font-size:32px;font-weight:700;line-height:1.55;color:#111}@media(max-width: 959px){.case-list__heading-title{font-size:24px;line-height:1.45;letter-spacing:.02em;color:#01293a}}.case-list__filter{margin-top:44px}@media(max-width: 959px){.case-list__filter{margin-top:40px}}.case-list__filter-list{display:flex;flex-wrap:wrap;justify-content:flex-start;gap:24px;width:fit-content;margin-inline:auto}@media(max-width: 959px){.case-list__filter-list{gap:12px}}.case-list__filter-link{display:flex;align-items:center;justify-content:center;min-width:164px;padding:8px 36px;background-color:#f5f5f5;border:1px solid #01293a;border-radius:999px;font-size:15px;font-weight:700;line-height:1.7;letter-spacing:.02em;color:#01293a;transition:background-color .3s ease,color .3s ease}@media(max-width: 959px){.case-list__filter-link{width:100%;min-width:0;padding:6px 24px;background-color:#f1f5f9;font-size:13px;line-height:1.6}}@media(hover: hover){.case-list__filter-link:hover{background-color:#01293a;color:#fff}}.case-list__filter-link{white-space:nowrap}@media(max-width: 959px){.case-list__filter-link{width:auto}}.case-list__filter-link--current{background-color:#01293a;color:#fff}@media(max-width: 959px){.case-list__filter-link--current{background-color:#01293a;font-size:14px}}.case-list__items{display:grid;grid-template-columns:repeat(2, 1fr);gap:40px 32px;margin-top:64px}@media(max-width: 959px){.case-list__items{grid-template-columns:1fr;gap:24px;margin-top:32px}}.case-list__pagination{margin-top:64px}@media(max-width: 959px){.case-list__pagination{margin-top:32px}}.case-list__empty{margin-top:64px;font-size:15px;line-height:1.7;letter-spacing:.02em;text-align:center}@media(max-width: 959px){.case-list__empty{margin-top:32px;font-size:14px;line-height:1.6}}.case-single{padding:80px 0 120px}@media(max-width: 959px){.case-single{padding:32px 0 56px}}.case-single__inner{max-width:min(928px,64.4444444444vw)}@media(max-width: 959px){.case-single__inner{max-width:500px;padding-inline:24px}}.case-single__title{font-size:32px;font-weight:700;line-height:1.55;color:#111}@media(max-width: 959px){.case-single__title{font-size:24px;line-height:1.45;letter-spacing:.02em}}.case-single__tags{display:flex;flex-wrap:wrap;gap:20px;margin-top:20px}@media(max-width: 959px){.case-single__tags{gap:8px;margin-top:8px}}.case-single__tag{display:inline-flex;align-items:center;justify-content:center;padding:0 8px;background-color:#ff4800;border-radius:2px;font-size:15px;font-weight:700;line-height:1.7;letter-spacing:.02em;color:#fff}@media(max-width: 959px){.case-single__tag{padding:2px 8px;font-size:13px;line-height:1.65}}.case-single__thumbnail{margin-top:44px}@media(max-width: 959px){.case-single__thumbnail{margin-top:24px}}.case-single__thumbnail img{width:100%;height:auto;aspect-ratio:928/450;object-fit:cover}@media(max-width: 959px){.case-single__thumbnail img{aspect-ratio:342/195}}.case-single__content{margin-top:44px;font-size:15px;line-height:1.7;letter-spacing:.02em;color:#111}@media(max-width: 959px){.case-single__content{margin-top:24px;font-size:14px;line-height:1.6}}.case-single__content>*+*{margin-top:24px}@media(max-width: 959px){.case-single__content>*+*{margin-top:16px}}.case-single__content h2,.case-single__content h3,.case-single__content h4{font-size:20px;font-weight:700;line-height:1.6;letter-spacing:.02em}@media(max-width: 959px){.case-single__content h2,.case-single__content h3,.case-single__content h4{font-size:16px;line-height:1.5}}.case-single__content h2+p,.case-single__content h3+p,.case-single__content h4+p{margin-top:0}@media(max-width: 959px){.case-single__content h2+p,.case-single__content h3+p,.case-single__content h4+p{margin-top:4px}}.case-single__content>:is(h2,h3,h4)+:is(h2,h3,h4){margin-top:16px}.case-single__content hr{margin-top:44px;border:none;border-top:1px solid #b0b0b0}@media(max-width: 959px){.case-single__content hr{margin-top:24px}}.case-single__content hr+*{margin-top:44px}@media(max-width: 959px){.case-single__content hr+*{margin-top:24px}}.case-single__content a{color:#1851c1;text-decoration:underline;transition:color .3s ease}@media(hover: hover){.case-single__content a:hover{color:#ff4800}}.case-single__content img{max-width:100%;height:auto}.case-single__content ul,.case-single__content ol{padding-left:24px}.case-single__content ul li{list-style:disc}.case-single__content ol li{list-style:decimal}.case-single__content table{width:100%}.case-single__content table th,.case-single__content table td{padding:12px 16px;border:1px solid #ccc;text-align:left}.case-single__content table th{background-color:#f5f5f5;font-weight:700}.case-single__content blockquote{padding:16px 20px;background-color:#f5f5f5;border-left:3px solid #ccc}.case-single__back{display:flex;align-items:center;width:240px;height:46px;margin:64px auto 0;padding:12px 32px 12px 16px;background-color:#01293a;border:1px solid rgba(0,0,0,0);border-radius:4px;font-size:15px;font-weight:700;line-height:1.3;letter-spacing:.07em;color:#fff;transition:background-color .3s ease,color .3s ease,border-color .3s ease}@media(max-width: 959px){.case-single__back{margin-top:40px}}@media(hover: hover){.case-single__back:hover{background-color:#fff;color:#01293a;border-color:#01293a}}.case-single__back svg{flex-shrink:0;width:22px;height:22px}.case-single__back-label{flex:1;text-align:center}
