.faqPage{background:var(--paper);color:var(--ink)}
.faqPage .siteHeader{background:#151513}
.faqPage .topnav>a.active{color:#e3bf53}

.faqHero{padding:181px 6vw 49px;background:#e8e4d6 url('../images/event/faq-hero-natural-light.webp') center 68%/cover no-repeat;color:#f7f5ef;border-bottom:1px solid rgba(17,17,15,.16)}
.faqHeroInner{display:grid;grid-template-columns:.92fr 1.08fr;gap:7vw;align-items:end;max-width:1320px;margin:auto}
.faqHero small{font-size:8px;font-weight:700;letter-spacing:.2em;color:#f2ead4}
.faqHero h1{font:400 clamp(72px,9vw,128px)/.78 Georgia,serif;letter-spacing:-.055em;margin:22px 0 0}
.faqHeroCopy h2{font:500 clamp(22px,2.2vw,31px)/1.45 Georgia,"Yu Mincho",serif;margin:0 0 13px}
.faqHeroCopy p{max-width:560px;margin:0;font-size:11px;font-weight:600;line-height:2;color:#f7f5ef}
.faqHero small,.faqHero h1,.faqHeroCopy h2,.faqHeroCopy p{text-shadow:0 2px 10px rgba(0,0,0,.3)}

/* about.html の HALL GUIDE と同じレイアウト・サイドナビを使用 */
.faqLayout{background:#f2efe8}
.faqMain{min-width:0}
.faqSection{scroll-margin-top:26px}
.faqSectionHead h2{max-width:none;font-size:clamp(28px,2.25vw,36px);line-height:1.2;letter-spacing:-.025em;white-space:nowrap}
#faq-equipment .faqSectionHead h2{font-size:clamp(27px,2.05vw,33px);letter-spacing:-.045em}
.faqRows{border-top:1px solid var(--ink)}
.faqItem{padding:23px 0 22px;border-bottom:1px solid var(--line)}
.faqItem h4{margin:0}
.faqItem button{display:block;width:100%;padding:0;border:0;background:transparent;color:inherit;text-align:left;cursor:default;pointer-events:none}
.faqItem button>span{font:600 16px/1.65 Georgia,"Yu Mincho",serif}
.faqItem button>span:before{content:"Q.";display:inline-block;margin-right:14px;color:#94743b;font-family:Georgia,serif}
.faqItem button i{display:none}
.faqAnswer{display:block}
.faqAnswer>div{overflow:visible}
.faqAnswer p{max-width:850px;margin:11px 0 0;padding-left:31px;font-size:11px;line-height:2;color:#5f5a53}
.faqAnswer p strong{color:#171715}
.relatedLinks{display:flex;flex-wrap:wrap;gap:9px 25px;margin:13px 0 0;padding-left:31px}
.relatedLinks a{display:inline-flex;gap:18px;padding-bottom:4px;border-bottom:1px solid #9b7b3f;font-size:9px;font-weight:700;color:#6c592f}
.relatedLinks a span{color:#a98b50}

.questionsContact{max-width:1320px;margin:0 auto;padding:48px 6vw 52px;display:grid;grid-template-columns:1fr .72fr;gap:7vw;align-items:end;border-top:1px solid var(--ink)}
.questionsContact small{font-size:8px;letter-spacing:.2em;color:#9b7b3f}
.questionsContact h2{font:500 clamp(20px,1.65vw,25px)/1.55 Georgia,"Yu Mincho",serif;margin:12px 0 0;white-space:nowrap}
.questionsContact>a{display:flex;justify-content:space-between;align-items:center;padding:14px 0;border-top:1px solid var(--ink);border-bottom:1px solid var(--ink);font-size:10px;font-weight:700}
.questionsContact>a b{font:400 15px Georgia,serif;color:#9b7b3f}

.eventFooter{background:#11110f;color:#e9e5dd}
.eventFooterMain{padding:38px 6vw 34px;display:grid;grid-template-columns:1fr 1fr;gap:8vw}
.eventFooterMain small{display:block;font-size:7px;letter-spacing:.17em;color:#a7894e}
.eventFooterMain strong{display:block;font:500 17px/1.55 Georgia,"Yu Mincho",serif;margin:10px 0}
.eventFooterMain p{font-size:8px;color:#8f8980}
.eventFooterMain nav{display:grid;grid-template-columns:1fr 1fr;align-content:start}
.eventFooterMain nav a{padding:9px 0;border-bottom:1px solid rgba(255,255,255,.14);font-size:9px;color:#c8c2b9}
.eventFooterMain nav a:nth-child(odd){margin-right:24px}
.eventFooterMain nav a[aria-current="page"]{color:#d7bc7b}
.eventFooterBottom{display:flex;justify-content:space-between;padding:14px 6vw;border-top:1px solid rgba(255,255,255,.1);font-size:7px;letter-spacing:.15em;color:#777168}

@media(max-width:980px){.faqHero{padding-top:151px}}

@media(min-width:621px){
  .faqSection:not(:last-child){padding-bottom:70px}
  .faqSection+.faqSection{padding-top:64px}
}

@media(max-width:620px){
  .faqHero{padding:111px 18px 29px;background-position:88% 62%}
  .faqHeroInner{grid-template-columns:1fr;gap:22px}
  .faqHero h1{font-size:58px;margin-top:12px}
  .faqHeroCopy h2{font-size:18px;margin-bottom:7px}
  .faqHeroCopy p{font-size:9.5px;line-height:1.75}
  .faqSection{scroll-margin-top:58px}
  .faqSectionHead h2,#faq-equipment .faqSectionHead h2{font-size:clamp(21px,6.2vw,24px);letter-spacing:-.04em;white-space:nowrap}
  .faqItem{padding:0}
  .faqItem button{display:grid;grid-template-columns:minmax(0,1fr) 20px;gap:12px;align-items:center;min-height:56px;padding:11px 0;cursor:pointer;pointer-events:auto}
  .faqItem button>span{font-size:12px;line-height:1.55}
  .faqItem button>span:before{margin-right:8px}
  .faqItem button i{display:block;text-align:center;font:normal 15px/1 Arial,sans-serif;color:#8a6e39}
  .faqAnswer{display:grid;grid-template-rows:0fr;transition:grid-template-rows .22s ease}
  .faqAnswer>div{overflow:hidden}
  .faqItem.isOpen .faqAnswer{grid-template-rows:1fr}
  .faqAnswer p{margin:0;padding:0 24px 11px 20px;font-size:9.5px;line-height:1.8}
  .relatedLinks{gap:8px 17px;margin:0;padding:0 24px 15px 20px}
  .relatedLinks a{gap:11px;font-size:8px;padding-bottom:3px}
  .questionsContact{padding:35px 18px 39px;display:block}
  .questionsContact h2{font-size:18px;line-height:1.65;margin-top:9px;white-space:normal}
  .questionsContact>a{margin-top:25px;padding:12px 0;font-size:9px}
  .eventFooterMain{grid-template-columns:1fr;padding:30px 18px 27px;gap:25px}
  .eventFooterMain nav{grid-template-columns:1fr 1fr}
  .eventFooterBottom{padding:13px 18px}
}

@media(prefers-reduced-motion:reduce){.faqAnswer{transition:none}}

/* 2026-09-11 smartphone FAQ readability without added vertical looseness */
@media(max-width:620px){
  .faqItem button{min-height:54px;padding:9px 0}
  .faqItem button>span{font-size:15px;line-height:1.5}
  .faqAnswer p{padding:0 22px 11px 20px;font-size:14px;line-height:1.75}
  .relatedLinks{gap:7px 16px;margin:0;padding:0 22px 13px 20px}
  .relatedLinks a{gap:10px;font-size:13px;line-height:1.5;padding-bottom:2px}
}
