.archive-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:38px}.archive-head h2{font-size:clamp(2rem,3.3vw,3.6rem);margin:0}.filter-pills{display:flex;gap:8px;flex-wrap:wrap}.filter-pills button{border:1px solid #ccc;background:#fff;padding:9px 15px;border-radius:30px;font-weight:700}.filter-pills button.active{background:var(--red);border-color:var(--red);color:#fff}.post-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.post-card{background:#f6f5f1}.post-thumb{height:220px;background:linear-gradient(145deg,#30333a,#101115);position:relative}.post-thumb:after,.event-thumb:after{content:attr(data-label);position:absolute;inset:0;display:grid;place-items:center;color:#888;font:600 .75rem Oswald;letter-spacing:.15em}.post-body{padding:28px}.post-body>span{font-size:.7rem;color:var(--red);font-weight:800}.post-body h3{font-size:1.15rem;line-height:1.55}.post-body p{font-size:.78rem;color:#666}.post-body a{font-size:.78rem;font-weight:800}.pagination{display:flex;justify-content:center;gap:8px;margin-top:45px}.pagination>*{width:42px;height:42px;border:1px solid #ccc;display:grid;place-items:center;font-size:.76rem}.pagination b{background:var(--red);color:#fff;border-color:var(--red)}.pagination a:last-child{width:auto;padding:0 18px}.result-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.result-cards article{background:#24262b;padding:38px;border-top:5px solid var(--red);min-height:320px}.result-cards time{font:700 2.4rem Oswald;color:var(--red)}.result-cards small{display:block;color:#888;font:600 .68rem Oswald;letter-spacing:.13em;margin-top:20px}.result-cards h3{font-size:1.4rem}.result-cards p{font-size:.8rem;color:#aaa}.result-cards a{font-size:.76rem;font-weight:800}.year-links{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid #ccc}.year-links a{padding:28px;border-right:1px solid #ccc;font:700 1.7rem Oswald}.year-links span{float:right;color:var(--red)}.event-list article{display:grid;grid-template-columns:110px 260px 1fr;gap:30px;align-items:center;padding:28px 0;border-bottom:1px solid #ccc}.event-date{display:flex;gap:10px;align-items:center}.event-date b{font:700 3rem Oswald;color:var(--red)}.event-date span{font:600 .7rem Oswald;line-height:1.4}.event-thumb{height:160px;background:linear-gradient(145deg,#33363c,#111216);position:relative}.event-list small{color:var(--red);font:600 .68rem Oswald;letter-spacing:.14em}.event-list h3{font-size:1.3rem;margin:5px 0}.event-list p{font-size:.8rem;color:#666}.event-list a{font-size:.78rem;font-weight:800}.legal{max-width:1060px;margin:auto}.legal-intro{font-size:1.1rem;font-weight:600;border-left:5px solid var(--red);padding:15px 25px;background:#f4f2ed;margin-bottom:55px}.legal h2{font-size:1.25rem;margin:45px 0 12px}.legal>p{color:#555}.legal aside{margin-top:45px;background:#f4f2ed;padding:20px;font-size:.75rem}.legal-table{width:100%;border-collapse:collapse}.legal-table th,.legal-table td{border-bottom:1px solid #ccc;padding:20px;text-align:left;vertical-align:top}.legal-table th{width:28%;background:#f4f2ed;font-size:.82rem}.legal-table td{font-size:.85rem}.schedule-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.schedule-grid article{background:#24262b;padding:34px;border-top:5px solid var(--red);min-height:210px}.schedule-grid span{font:600 .7rem Oswald;letter-spacing:.15em;color:var(--red)}.schedule-grid p{font-size:.8rem;color:#aaa}.map-placeholder{height:340px;background:#e7e5df;display:grid;place-items:center;font:600 .8rem Oswald;letter-spacing:.2em;color:#999}.price-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.price-grid article{border:1px solid #ccc;padding:36px;position:relative}.price-grid article>span{font-weight:800}.price-grid strong{display:block;font:700 3rem Oswald;margin:24px 0}.price-grid strong small{font:600 .8rem "Noto Sans JP"}.price-grid p{color:#666;font-size:.8rem}.price-grid .recommended{border:3px solid var(--red)}.price-grid .recommended>b{position:absolute;left:-3px;right:-3px;top:-30px;height:30px;background:var(--red);color:#fff;text-align:center;font:600 .7rem/30px Oswald;letter-spacing:.14em}.fee-table{display:grid;grid-template-columns:1fr 1fr}.fee-table div{padding:24px;border-bottom:1px solid #444;display:grid;grid-template-columns:1fr auto;gap:10px}.fee-table small{grid-column:1/-1;color:#888}.booking-layout{display:grid;grid-template-columns:40% 60%;gap:7vw}.mini-steps>div{display:flex;gap:18px;border-bottom:1px solid #ccc;padding:18px 0}.mini-steps b{font:700 1.7rem Oswald;color:var(--red)}.mini-steps p{margin:0;font-size:.8rem}.form-card{background:#f4f2ed;color:var(--ink);padding:38px}.form-card h2{margin-top:0}.form-card>label,.form-card fieldset{display:block;margin-bottom:22px;font-weight:700;font-size:.82rem}.form-card label>span,.form-card legend>span{background:var(--red);color:#fff;font-size:.62rem;padding:3px 6px;margin-left:8px}.form-card input[type=text],.form-card input[type=email],.form-card select,.form-card textarea{width:100%;border:1px solid #bbb;background:#fff;padding:14px;margin-top:8px;font:500 .9rem "Noto Sans JP"}.form-card fieldset{border:0;padding:0}.form-card fieldset label{font-weight:500;margin-right:20px}.form-card button{width:100%;border:0;background:var(--red);color:#fff;padding:18px;font-weight:800}.form-note{font-size:.7rem;color:#777}.contact-options{display:grid;grid-template-columns:1fr 1fr;gap:20px}.contact-options article{border:1px solid #ccc;padding:45px}.contact-options article>span{font:600 .7rem Oswald;color:var(--red);letter-spacing:.15em}.qr-placeholder{width:150px;height:150px;background:#e7e5df;display:grid;place-items:center;color:#999;font:600 .7rem Oswald;letter-spacing:.15em;margin:25px 0}.big-phone{font:700 2.8rem Oswald;color:var(--red);display:block;margin:30px 0}
@media(max-width:900px){.archive-head{display:block}.filter-pills{margin-top:20px}.post-grid,.result-cards,.schedule-grid,.price-grid{grid-template-columns:1fr}.event-list article{grid-template-columns:80px 1fr}.event-thumb{grid-column:1/-1}.year-links{grid-template-columns:1fr 1fr}.booking-layout,.contact-options{grid-template-columns:1fr}.legal-table th,.legal-table td{display:block;width:100%}.legal-table th{border-bottom:0;padding-bottom:6px}.legal-table td{padding-top:8px}.fee-table{grid-template-columns:1fr}}@media(max-width:520px){.year-links{grid-template-columns:1fr}.event-list article{grid-template-columns:1fr}.form-card{padding:25px}.big-phone{font-size:2.2rem}}
.legal ul{color:#555;padding-left:1.4em}.legal li{margin:.45em 0}.legal .policy-updated{margin-top:48px;font-size:.82rem;color:#777}
