/* ゆるっとウェルネスくらぶ 申込ページ。FUサイト共通クラス(.fu-section, .fu-wrap, .fu-paper 等)を土台に、固有の見た目だけ .club- で追加する */
.club{word-break:keep-all;line-break:strict}
.club p,.club h1,.club h2,.club h3,.club li,.club td{word-break:auto-phrase}
.club h1,.club h2,.club h3{text-wrap:balance}
.club p,.club li{text-wrap:pretty}
.club .fu-brand{display:flex;flex-direction:column;line-height:1.2;font-family:"Yu Mincho","Hiragino Mincho ProN",Georgia,serif;color:var(--navy);text-decoration:none}
.club .fu-brand small{font-size:.7rem;letter-spacing:.1em;color:var(--gold)}
.club-sp{display:none}
@media(max-width:700px){.club-sp{display:inline}}

.club-hero{text-align:center;padding:0 0 36px;background:linear-gradient(180deg,#fbf6ee 0%,#fff 100%)}
.club-hero h1{font-family:"Yu Mincho","Hiragino Mincho ProN",Georgia,serif;font-size:clamp(1.6rem,4.6vw,2.6rem);line-height:1.5;color:var(--navy);margin:12px 0 20px}
.club-hero .fu-lead{max-width:680px;margin-inline:auto}
.club-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

.club-hero-visual{position:relative;width:100%;overflow:hidden;line-height:0;background:#eef5ea}
.club-hero-img{display:block;width:100%;height:auto;animation:club-hero-breathe 16s ease-in-out infinite,club-hero-fadein 1.1s ease-out both}
.club-hero-shine{position:absolute;inset:0;pointer-events:none;background:linear-gradient(115deg,transparent 35%,rgba(255,255,255,.55) 48%,rgba(255,255,255,.08) 58%,transparent 70%);background-size:220% 220%;background-position:-40% -40%;mix-blend-mode:screen;animation:club-hero-shine 6.5s ease-in-out 1.1s infinite}
.club-hero-copy{margin-top:30px}
@keyframes club-hero-breathe{0%,100%{transform:scale(1)}50%{transform:scale(1.045)}}
@keyframes club-hero-fadein{from{opacity:0;transform:scale(1.03) translateY(10px)}to{opacity:1;transform:scale(1) translateY(0)}}
@keyframes club-hero-shine{0%{background-position:-40% -40%}45%,100%{background-position:140% 140%}}
@media(prefers-reduced-motion:reduce){.club-hero-img{animation:club-hero-fadein .6s ease-out both}.club-hero-shine{display:none}}
.club-eyebrow{font-size:.85rem;letter-spacing:.08em;color:var(--gold);font-weight:700;margin:0}
.club-badge{display:inline-block;margin:10px auto 0;padding:6px 16px;border-radius:999px;background:#c80020;color:#fff;font-size:.8rem;font-weight:800;letter-spacing:.04em}
.club-price{margin:24px 0 8px}
.club-price strong{font-size:2.2rem;color:var(--navy);margin-right:.3em}
.club-price span{font-size:.85rem;color:var(--muted)}

.club-btn{display:inline-block;box-sizing:border-box;max-width:100%;padding:18px 32px;border:none;border-radius:12px;cursor:pointer;
  font-size:1.05rem;font-weight:800;letter-spacing:.02em;color:#fff;text-decoration:none;text-align:center;
  background:linear-gradient(180deg,#d6b27a 0%,#bd9152 55%,#94692f 100%);box-shadow:0 5px 0 #6e4d22,0 12px 22px rgba(60,40,10,.25)}
.club-btn:hover{filter:brightness(1.05)}
.club .club-btn,.club .club-btn:visited{color:#fff;text-shadow:0 1px 1px rgba(0,0,0,.25)}
.club-btn:active{transform:translateY(4px);box-shadow:0 1px 0 #6e4d22}
.club-btn-line{background:linear-gradient(180deg,#12d768 0%,#06c755 55%,#04a648 100%);box-shadow:0 5px 0 #04893f,0 12px 24px rgba(6,199,85,.3)}
.club-btn-line:active{box-shadow:0 1px 0 #04893f}

.club-list{list-style:none;padding:0;margin:24px 0;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}
.club-list li{padding:14px;background:#fff;border:1px solid var(--line);border-radius:12px;display:flex;align-items:center;gap:14px;box-shadow:0 8px 20px rgba(30,40,20,.04)}
.club-list-img{flex:0 0 108px;width:108px;height:81px;border-radius:9px;overflow:hidden;line-height:0}
.club-list-img img{width:100%;height:100%;object-fit:cover;display:block}
.club-list-text{display:flex;flex-direction:column;gap:4px}
.club-list li strong{color:var(--navy)}
.club-list li span span{color:var(--muted);font-size:.92rem}
@media(max-width:480px){.club-list-img{flex-basis:84px;width:84px;height:63px}}

.club-steps{list-style:none;counter-reset:club;padding:0;margin:24px 0;display:grid;gap:18px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}
.club-steps li{counter-increment:club;position:relative;padding:16px 18px 18px;background:#fff;border:1px solid var(--line);border-radius:12px;overflow:hidden}
.club-step-img{display:block;margin:-16px -18px 14px;line-height:0}
.club-step-img img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;display:block}
.club-steps li::before{content:counter(club);position:absolute;left:14px;top:14px;width:30px;height:30px;border-radius:50%;background:var(--navy);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:.85rem;box-shadow:0 2px 8px rgba(0,0,0,.25);z-index:1}
.club-steps strong{display:block;color:var(--navy);margin-bottom:4px}
.club-steps span{color:var(--muted)}
.club-note{font-size:.85rem;color:var(--muted)}

.club-ranks{list-style:none;padding:0;margin:24px 0;display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}
.club-rank{padding:18px;background:#fff;border:1px solid var(--line);border-radius:12px;text-align:center}
.club-rank-img{display:block;width:84px;height:84px;margin:0 auto 12px;line-height:0}
.club-rank-img img{width:100%;height:100%;object-fit:contain;display:block}
.club-rank-head{text-align:left}
.club-rank-head{display:flex;align-items:baseline;justify-content:space-between;gap:8px;margin-bottom:10px;padding-bottom:10px;border-bottom:1px solid var(--line)}
.club-rank-name{font-family:"Yu Mincho","Hiragino Mincho ProN",Georgia,serif;font-size:1.3rem;color:var(--navy)}
.club-rank-when{font-size:.8rem;color:var(--muted)}
.club-rank-perks{list-style:none;padding:0;margin:0;display:grid;gap:8px;font-size:.92rem;color:var(--navy)}
.club-rank-perks li{padding-left:1.1em;position:relative}
.club-rank-perks li::before{content:"・";position:absolute;left:0}

.club-faq{border-bottom:1px solid var(--line);padding:14px 0}
.club-faq summary{cursor:pointer;font-weight:700;color:var(--navy)}
.club-faq p{margin:10px 0 0}

.club-confirm{width:100%;border-collapse:collapse;margin:20px 0;background:#fff}
.club-confirm th,.club-confirm td{border:1px solid var(--line);padding:12px 14px;text-align:left;vertical-align:top;line-height:1.7}
.club-confirm th{width:30%;background:#faf7f1;color:var(--navy);font-weight:700}
@media(max-width:600px){.club-confirm th,.club-confirm td{display:block;width:auto}.club-confirm th{border-bottom:none}}
.club-apply-form{text-align:center;margin-top:24px}
.club-agree{display:block;margin:0 0 18px;font-weight:700}
.club-agree input{width:1.2em;height:1.2em;vertical-align:-.2em;margin-right:.4em}
.club-closed{text-align:center;padding:18px;background:#fff;border:1px dashed var(--gold);border-radius:10px}
.club-pending{color:var(--muted)}
.club-law-title{font-size:1.6rem;color:var(--navy)}
.club-thanks{max-width:720px}
.club-footer{text-align:center;font-size:.85rem}
