/* 語源由来マニア99 - level selection, stage progress and quiz UI */
.g99-adventure{background:#f9fbfc;color:#263b4c;padding:31px 0 72px}
.g99-adventure>.g99-container{max-width:1170px}
.g99-adventure-hero{position:relative;isolation:isolate;display:flex;align-items:center;justify-content:space-between;gap:24px;overflow:hidden;min-height:301px;padding:42px clamp(24px,5vw,58px);border-radius:25px;background:linear-gradient(102deg,rgba(18,61,81,.98) 3%,rgba(28,89,107,.93) 53%,rgba(25,94,111,.48) 100%),url('../quest-map.svg') center/cover no-repeat;border:4px solid #fff;box-shadow:0 11px 24px #22405023,inset 0 -8px 0 #e6bf78}
.g99-adventure-hero:after{content:"✦";position:absolute;top:12px;right:22px;color:#fee3a8;font-size:38px;opacity:.8}
.g99-adventure-hero__copy{position:relative;z-index:1;max-width:665px}
.g99-adventure-hero__eyebrow{display:inline-block;margin:0 0 10px;font-family:Georgia,serif;font-size:12px;letter-spacing:.19em;font-weight:900;color:#ffe4aa}
.g99-adventure-hero h1{font:900 clamp(33px,4.5vw,53px)/1.36 "Hiragino Mincho ProN","Yu Mincho",serif!important;color:white!important;margin:0 0 16px!important;padding:0!important;background:none!important;border:0!important;box-shadow:none!important;text-shadow:0 2px 3px #153a427e;letter-spacing:-.035em}
.g99-adventure-hero h1 em{font-style:normal;color:#ffe08b}
.g99-adventure-hero p{color:#eff5f5;font-size:16px;font-weight:800;line-height:1.75;margin:0}
.g99-adventure-hero__link{margin-top:20px;display:inline-flex;align-items:center;gap:10px;border-radius:999px;padding:11px 23px;background:#f8d997;color:#654228!important;font-size:14px;font-weight:900;border:2px solid #fff6d9;box-shadow:0 4px 0 #b5874d}
.g99-adventure-hero__link:hover{background:#ffefc1;transform:translateY(-2px)}
.g99-adventure-hero__badge{position:relative;z-index:1;flex-shrink:0;display:flex;align-items:center;justify-content:center;flex-direction:column;width:160px;height:160px;border-radius:50%;border:9px solid #f0b65b;background:radial-gradient(circle at 32% 20%,#ffeab4,#e4a654 68%,#c88239);box-shadow:inset 0 0 0 4px #fff1c8,0 10px 18px #00283a55;transform:rotate(10deg)}
.g99-adventure-hero__badge span{font-size:12px;line-height:1.25;color:#653e29;text-align:center;font-weight:900}
.g99-adventure-hero__badge strong{font:900 63px/.95 Georgia,serif;color:#a73c48;text-shadow:0 2px #fff4d7}
.g99-progress-card{padding:23px 25px;border:1px solid #dbe7e7;border-radius:17px;box-shadow:0 7px 20px #23475a0d;background:#fff;margin:26px 0 45px}
.g99-progress-card__top{display:flex;align-items:center;gap:14px;margin-bottom:17px}
.g99-progress-card__seal{font-size:40px;line-height:1}
.g99-progress-card__info{flex:1}
.g99-progress-card__info h2{font:900 23px/1.5 "Hiragino Mincho ProN","Yu Mincho",serif!important;color:#254a5b!important;margin:0 0 4px!important;padding:0!important;border:0!important;background:none!important;box-shadow:none!important}
.g99-progress-card__info p{margin:0;color:#4f6a72;font-size:14px}
.g99-progress-card__count{display:flex;align-items:baseline;gap:3px;white-space:nowrap;color:#556c76}
.g99-progress-card__count strong{font:900 42px Georgia,serif;color:#c7475a}
.g99-progress-card__count span{font-weight:800;font-size:14px}
.g99-progress-card__track{height:14px;background:#ebf0f0;border-radius:999px;overflow:hidden;border:1px solid #dce5e4}
.g99-progress-card__track span{display:block;height:100%;width:0;background:linear-gradient(90deg,#4db89c,#e4ba60);border-radius:999px;transition:width .4s;min-width:0}
.g99-progress-card .g99-small-note{margin:10px 0 0;font-size:12px;color:#5e7580}
.g99-adventure-section-heading{text-align:center;margin:0 0 25px;scroll-margin-top:35px}
.g99-adventure-section-heading__label{display:block;color:#d24c59;font:900 13px Georgia,serif;letter-spacing:.15em;margin:0 0 9px}
.g99-adventure-section-heading h2{font:900 clamp(26px,3vw,36px)/1.5 "Hiragino Mincho ProN","Yu Mincho",serif!important;color:#254a5b!important;margin:0 0 9px!important;padding:0!important;border:0!important;background:none!important;box-shadow:none!important}
.g99-adventure-section-heading p{font-size:14px;color:#607786;line-height:1.75;margin:0}
.g99-chapters{display:grid;gap:12px}
.g99-chapter{border:1px solid #e2e6e7;border-radius:17px;overflow:hidden;background:#fff;box-shadow:0 5px 12px #224b5c0c}
.g99-chapter[open]{border-color:#c5dedd;box-shadow:0 9px 25px #1d597417}
.g99-chapter__head{display:flex;align-items:center;gap:16px;padding:16px 21px;cursor:pointer;list-style:none;min-height:82px;background:linear-gradient(110deg,#fffdfa,#f2f9fb)}
.g99-chapter__head::-webkit-details-marker{display:none}
.g99-chapter__head:hover{background:#eaf5fa}
.g99-chapter[open] .g99-chapter__head{border-bottom:1px solid #e2e9e8;background:linear-gradient(110deg,#fff9ef,#f0fbf8)}
.g99-chapter__icon{display:flex;align-items:center;justify-content:center;width:50px;height:50px;flex:0 0 50px;font-size:30px;border-radius:14px;background:#fff;border:1px solid #e8e9e3}
.g99-chapter__name{flex:1;min-width:0}
.g99-chapter__name strong{display:block;color:#244756;font:900 clamp(17px,1.8vw,22px)/1.4 "Hiragino Mincho ProN","Yu Mincho",serif}
.g99-chapter__name small{display:block;color:#5c7581;font-size:12px;font-weight:700;line-height:1.5;margin-top:4px}
.g99-chapter__range{font:900 14px Georgia,serif;color:#b95758;background:#fff1eb;padding:6px 13px;border-radius:99px;white-space:nowrap}
.g99-chapter__chevron{font-size:30px;color:#406b77;transition:transform .2s;line-height:1;display:inline-block}
.g99-chapter[open] .g99-chapter__chevron{transform:rotate(180deg)}
.g99-adventure-level-grid{padding:19px;grid-template-columns:repeat(9,minmax(0,1fr));gap:9px}
.g99-adventure-level{border:1px solid #dce3e7;border-radius:12px;background:#f5f7f8;padding:9px 3px;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:76px;color:#607079;font-weight:900;transition:transform .2s,border-color .2s,background .2s;line-height:1.35}
.g99-adventure-level__num{font-size:16px;font-weight:900}
.g99-adventure-level small{font-size:10px;font-weight:800;color:#71838c;white-space:nowrap;margin-top:5px}
.g99-adventure-level--upcoming{background:#f5f6f6;border-color:#eaedef;color:#839095}
button.g99-adventure-level--locked{opacity:1;background:#f0f1f2;border:1px dashed #cbd4d8;color:#889197;cursor:not-allowed}
button.g99-adventure-level--ready{background:#fff0dd;border:2px solid #eab86a;color:#985329;box-shadow:0 3px 0 #e8d2b4}
button.g99-adventure-level--ready:hover{transform:translateY(-3px);background:#ffdfb3}
button.g99-adventure-level--complete{background:#e5f6eb;border:2px solid #88c6a3;color:#246748;box-shadow:0 3px 0 #cce7d3}
button.g99-adventure-level--chosen{outline:3px solid #d7656c;outline-offset:3px}
.g99-adventure .g99-ad-slot{margin:32px auto}
.g99-adventure-quiz{margin:34px 0 25px;background:#fff;border:2px solid #d7e4e4;border-top:7px solid #cf455c;border-radius:19px;box-shadow:0 10px 25px #27485b0e;padding:29px 32px;scroll-margin-top:24px}
.g99-adventure-quiz .g99-quiz-box__header{display:flex;gap:9px;align-items:center}
.g99-adventure-quiz .g99-quiz-box__header span{font-size:14px;color:#b93c57;font-weight:900;letter-spacing:.03em}
.g99-adventure-quiz .g99-quiz-box__header strong{font-size:13px;color:#526e7a}
.g99-adventure-quiz h2{font:900 27px/1.55 "Hiragino Mincho ProN","Yu Mincho",serif!important;color:#244959!important;background:none!important;border:0!important;margin:10px 0 11px!important;padding:0!important;box-shadow:none!important}
.g99-adventure-quiz .g99-small-note{font-size:13px;color:#5d737b}
.g99-adventure-quiz__question-track{height:9px;background:#e9eff1;border-radius:999px;overflow:hidden;margin:18px 0 25px}
.g99-adventure-quiz__question-track span{display:block;width:0;height:100%;background:linear-gradient(90deg,#efb663,#e35a69);border-radius:999px;transition:width .3s}
.g99-adventure-quiz .g99-question{font-size:21px;line-height:1.75;margin:17px 0 21px;color:#203d4e}
.g99-adventure-quiz .g99-answer-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}
.g99-adventure-quiz .g99-answer-grid button{border:2px solid #d6e6e6;border-radius:13px;color:#244a5c;background:#fff;min-height:63px;padding:13px 17px;text-align:left;font-size:16px;font-weight:800;line-height:1.55}
.g99-adventure-quiz .g99-answer-grid button:hover:not(:disabled){border-color:#6eafa6;background:#edf8f5}
.g99-adventure-quiz .g99-answer-grid button.g99-correct{border-color:#3b9c74;background:#e3f5e8;color:#175538}
.g99-adventure-quiz .g99-answer-grid button.g99-wrong{border-color:#d2625c;background:#fff0ee;color:#852b25}
.g99-adventure-quiz .g99-explanation{padding:19px 22px;background:#f4f9f7;border:1px solid #ccdfdc;color:#294b50}
.g99-adventure-quiz .g99-explanation strong{color:#266658;font-size:17px}
.g99-adventure-quiz .g99-explanation p{margin:7px 0;line-height:1.85}
.g99-adventure-study-link{display:inline-block;font-weight:900;font-size:14px;color:#136f8e;margin-top:7px;text-decoration:underline!important;text-underline-offset:3px}
.g99-adventure-quiz .g99-quiz-actions{display:flex;flex-wrap:wrap;gap:13px;margin-top:20px}
.g99-adventure-result-badge{display:inline-block;font-size:18px;font-weight:900;color:#a63a52;background:#fff0e2;padding:5px 13px;border-radius:99px;margin:10px 0 3px}
.g99-adventure-result-title{font:900 26px/1.4 "Hiragino Mincho ProN","Yu Mincho",serif;color:#244f5c;margin:12px 0}
.g99-adventure-review,.g99-adventure-source{background:#fff;border:1px solid #dfe7e6;border-radius:15px;padding:23px;margin:24px 0}
.g99-adventure-review h2,.g99-adventure-source h2{font:900 21px/1.5 "Hiragino Mincho ProN","Yu Mincho",serif!important;margin:0 0 10px!important;color:#274c5e!important}
.g99-adventure-review ul{margin:15px 0;padding-left:23px}
.g99-adventure-review li{margin:12px 0;padding:12px 16px;background:#f7fafb;border:1px solid #e3ebeb;border-radius:10px;line-height:1.75;list-style:none}
.g99-adventure-review li strong{display:block;font-size:14px;color:#234c61}
.g99-adventure-review li p{font-size:14px;margin:7px 0}
.g99-adventure-review li a{font-size:13px;font-weight:800}
.g99-adventure-review button{background:#eff2f2;color:#41616c;padding:10px 17px;border:1px solid #d8e2e2;border-radius:9px;font-weight:900}
.g99-adventure-source p{font-size:14px;line-height:1.9;margin:10px 0;color:#4d6771}
.g99-adventure [hidden]{display:none!important}
@media(max-width:950px){.g99-adventure-level-grid{grid-template-columns:repeat(6,minmax(0,1fr))}}
@media(max-width:700px){
.g99-adventure{padding:17px 0 45px}.g99-adventure>.g99-container{padding:0 13px}
.g99-adventure-hero{min-height:273px;padding:30px 22px;border-radius:16px;gap:12px}
.g99-adventure-hero h1{font-size:clamp(27px,6.5vw,36px)!important}
.g99-adventure-hero__eyebrow{font-size:10px}
.g99-adventure-hero p{font-size:13px}
.g99-adventure-hero__badge{width:95px;height:95px;border-width:6px}
.g99-adventure-hero__badge strong{font-size:37px}.g99-adventure-hero__badge span{font-size:9px}
.g99-progress-card{margin:17px 0 35px;padding:17px 14px}
.g99-progress-card__seal{font-size:31px}
.g99-progress-card__info h2{font-size:20px!important}.g99-progress-card__info p{font-size:12px}
.g99-progress-card__count strong{font-size:33px}.g99-progress-card__count span{font-size:11px}
.g99-adventure-section-heading h2{font-size:25px!important}.g99-adventure-section-heading p{font-size:13px}
.g99-chapters{gap:10px}.g99-chapter{border-radius:12px}
.g99-chapter__head{gap:10px;padding:13px 12px;min-height:73px}
.g99-chapter__icon{width:40px;height:40px;flex-basis:40px;font-size:24px}
.g99-chapter__name strong{font-size:16px}.g99-chapter__name small{font-size:11px}
.g99-chapter__range{font-size:11px;padding:5px 8px}
.g99-chapter__chevron{font-size:23px}
.g99-adventure-level-grid{grid-template-columns:repeat(5,minmax(0,1fr));padding:12px;gap:8px}
.g99-adventure-level{min-height:71px;border-radius:9px}.g99-adventure-level__num{font-size:14px}
.g99-adventure-level small{font-size:9px}
.g99-adventure-quiz{padding:22px 16px;border-radius:14px;margin:24px 0}
.g99-adventure-quiz h2{font-size:23px!important}
.g99-adventure-quiz .g99-question{font-size:19px}
.g99-adventure-quiz .g99-answer-grid{grid-template-columns:1fr;gap:10px}
.g99-adventure-quiz .g99-answer-grid button{font-size:16px;min-height:57px;padding:12px}
.g99-adventure-review,.g99-adventure-source{padding:19px 15px}
}
@media(max-width:370px){
.g99-adventure-hero{padding:22px 14px}.g99-adventure-hero__badge{width:80px;height:80px}.g99-adventure-hero__badge strong{font-size:30px}
.g99-adventure-level-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.g99-chapter__head{gap:7px}.g99-chapter__range{display:none}
}