:root{--text-color-light: #393939;--text-color-lighter: #9f9f9f;--border-color: #d3d3d3;--primary-color: #dc2b19}body,html{background:#e5eff1;margin:0;padding:0;font-family:Inter,sans-serif;font-optical-sizing:auto;font-style:normal;font-size:16px}*{box-sizing:border-box}.appLoading{display:flex;align-items:center;justify-content:center;min-height:100vh;flex-flow:column;gap:24px}.appLoading img{max-width:120px;width:100%;height:auto;aspect-ratio:1/1}.app{padding:24px 24px 62px;background:#fff;min-height:100vh}.card{display:flex;align-items:center;justify-content:flex-start;gap:12px;border-radius:10px;background:#fff;padding:24px}.card .image{margin:-24px 12px -24px -24px;width:100px;align-self:stretch;border-right:1px solid var(--border-color)}@media (max-width: 436px){.card .image{display:none!important}}.card .image.image--noImage{display:flex;align-items:center;justify-content:center}.card .image.image--noImage img{width:48px;height:auto;aspect-ratio:1/1;object-fit:contain;filter:grayscale(1);opacity:.3}.card .image img{width:100%;height:100%;object-fit:cover;border-radius:10px 0 0 10px}.card .contents{flex-grow:1}.card .arrow{min-width:48px;width:48px;height:auto;aspect-ratio:1/1;display:flex;align-items:center;justify-content:center;margin-right:-12px;color:var(--primary-color)}.card .arrow svg{width:32px;height:auto;aspect-ratio:1/1}.appImage{width:calc(100% + 48px);height:min(33vh,300px);min-height:80px;margin:-24px -24px 24px}.appImage img{width:100%;height:100%;object-fit:cover}.routes{display:flex;flex-flow:column;gap:24px}.routes .route{border:1px solid var(--border-color);cursor:pointer}.routes .contents{display:flex;flex-flow:column;gap:8px}.routes .contents .title{font-weight:600}.routes .contents .tags{display:flex;align-items:center;flex-wrap:wrap;gap:12px}.routes .contents .tags .tag{display:flex;align-items:center;gap:4px}.routes .contents .tags .tag.tag-success{background:#c4ffc4;color:#007900;border-radius:40px;font-size:12px;padding:2px 6px}.routes .contents .tags .tag svg{width:14px;height:auto;aspect-ratio:1/1;color:var(--text-color-lighter)}.appHeader{display:flex;align-items:center;justify-content:space-between;position:absolute;top:0;left:0;width:100%;padding:12px 24px;z-index:99}.appHeader.appHeader--fixed{background:#fff;border-bottom:1px solid var(--border-color);position:fixed}.appHeader>:nth-of-type(1){color:var(--text-color-light)}.appHeader>:nth-of-type(1)>span{display:none}.appHeader>:nth-of-type(1),.appHeader>:nth-of-type(3){width:60px;min-width:60px}.appHeader>:nth-of-type(2){font-weight:600;text-align:center}.appHeader.dashboardAppHeader>:nth-of-type(2){display:flex;align-items:center;justify-content:flex-end;gap:8px}.appHeader>:nth-of-type(3){display:flex;align-items:center;justify-content:flex-end;gap:8px}.appHeader .back{display:flex;align-items:center;gap:4px;margin-left:-8px;cursor:pointer}.appHeader .title{width:calc(100vw - 168px);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.appHeaderSpace{height:48px}.appLogo{background:#fff;padding:6px;border-radius:10px;width:52px;height:auto}.appLogo img{width:40px;height:auto;aspect-ratio:1/1;object-fit:contain}.wifiIndicator{display:flex;align-items:center;justify-content:center;width:32px;height:auto;aspect-ratio:1/1;background:#fff;border-radius:4px}.wifiIndicator svg{width:22px;height:auto;aspect-ratio:1/1}.wifiIndicator.wifiIndicator--offline{color:red}h1{font-size:24px;height:auto;margin:0 0 24px}h2{font-size:20px;height:auto;margin:0 0 24px}.points{display:flex;flex-flow:column;gap:0;border:1px solid var(--border-color);border-radius:10px}.points>.point{padding:12px 24px;display:flex;flex-flow:row;align-items:center;cursor:pointer;gap:12px}.points>.point .checkmark{width:24px;height:auto;aspect-ratio:1/1;opacity:.5;color:green}.points>.point .title{flex-grow:1}.points>.point .title strong{font-weight:600}.points>.point .arrow{color:var(--primary-color)}.points>.point:not(:last-of-type){border-bottom:1px solid var(--border-color)}.pointDetail .question{font-size:20px;font-weight:600;display:flex;align-items:flex-start;gap:12px}.pointDetail .question>span>*:first-of-type{margin-top:0}.pointDetail .question svg{display:inline-flex}.pointDetail .image img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;border-radius:10px}.pointDetail .buttons{display:flex;align-items:center;justify-content:flex-end;margin:24px 0 0;gap:12px}.routeMap{display:flex;flex-flow:column;gap:24px;margin:0 0 48px}.routeMap>div:first-of-type{border-radius:10px}.point .text,.routeDetail .routeDescription,.pointDescription{line-height:24px;color:var(--text-color-light)}button,.btn{background:#fff;border-radius:10px;border:1px solid var(--border-color);outline:none;font-size:14px;-moz-appearance:none;appearance:none;-webkit-appearance:none;height:48px;font-weight:600;display:flex;align-items:center;justify-content:center;gap:8px;text-align:center;padding:6px 12px;color:#000;text-decoration:none;cursor:pointer}button svg,.btn svg{height:1em;width:auto;aspect-ratio:1/1}button[disabled],.btn[disabled]{opacity:.5;pointer-events:none}.btn.primary{background:#ffc8c2;border-color:#ffc8c2;color:var(--primary-color)}.btn.secondary{background:#fff;border-color:#d7d7d7;color:#3f3f3f}.btn.success{background:#29b029;border-color:#29b029;color:#fff}.languages{margin:0 0 24px;display:flex;gap:8px}.languages>*{flex:1}.languages .btn{align-items:center;justify-content:center}.languages .btn img{width:24px;height:auto;aspect-ratio:1/1;border-radius:50px;object-fit:cover}.drawer .toggler{background:#fff;border-color:transparent;border-radius:4px;position:relative;width:32px;height:auto;aspect-ratio:1/1;z-index:998}.drawer .toggler span{position:absolute;left:4px;width:calc(100% - 8px);background:#000;height:2px;opacity:1;transition:all .2s;transform-origin:center}.drawer .toggler span:nth-of-type(1){top:25%}.drawer .toggler span:nth-of-type(2){top:50%}.drawer .toggler span:nth-of-type(3){top:75%}.drawer .toggler.toggled span:nth-of-type(1){top:50%;transform:rotate(-45deg)}.drawer .toggler.toggled span:nth-of-type(2){opacity:0}.drawer .toggler.toggled span:nth-of-type(3){top:50%;transform:rotate(45deg)}.drawer .contents{position:fixed;top:0;right:0;height:100vh;width:calc(100vw - 48px);background:#fff;box-shadow:-2px 0 10px #0003;transform:translate(100%);transition:transform .3s ease;z-index:999;padding:56px 36px 36px}.drawer .contents .toggler{position:absolute;top:12px;right:24px}.drawer .contents .scrollable{overflow-y:auto;height:calc(100vh - 72px)}.drawer .contents.visible{transform:translate(0)}.drawer .contents .divider{height:1px;width:100%;background:var(--border-color);margin:24px 0}.drawer .contents ul{margin:0;padding:0;list-style-type:none;display:flex;flex-flow:column;align-items:flex-start;justify-content:flex-start;gap:24px}.drawer .contents ul a{text-decoration:underline;padding:6px 0;cursor:pointer;text-align:left;font-weight:600}.appHeader .wifiIndicator,.appHeader .drawer{width:32px}.alert{padding:24px;background:#fff0f0;border:1px solid #ff9191;color:#750707;border-radius:10px;margin:0 0 24px;display:flex;align-items:center;gap:24px}.infoWindowContents{width:160px;min-width:160px;display:flex;flex-flow:column;gap:12px}.infoWindowContents>*{margin:0}.infoWindowContents,.infoWindowContents h4{font-size:16px;font-weight:600}.infoWindowContents img{width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:10px}.answers{display:grid;grid-template-columns:1fr;gap:12px}.answers.disabled{opacity:.5}.answers label{border:1px solid var(--border-color);color:#000;border-radius:10px;padding:12px;display:flex;align-items:center;gap:12px;cursor:pointer}.completeRoute{display:flex;align-items:center;justify-content:flex-end;margin-top:24px}.summaryPoints{display:flex;flex-flow:column;gap:48px}.summaryPoints .summaryPoint{border:1px solid var(--border-color);padding:12px;border-radius:10px;display:flex;flex-flow:column;gap:12px}.summaryPoints .summaryPoint .title{font-size:14px;margin:0 0 6px;color:var(--text-color-light)}.summaryPoints .summaryPoint .question{font-size:16px;font-weight:600}.summaryPoints .summaryPoint .question>*{margin:0}.summaryPoints .summaryPoint .answers .answer{display:flex;align-items:center;justify-content:space-between;border:1px solid #e9e9e9;padding:8px 12px;border-radius:12px;min-height:32px}.summaryPoints .summaryPoint .answers .answer .indicator{width:20px;height:auto;aspect-ratio:1/1;display:flex;align-items:center;justify-content:center}.summaryPoints .summaryPoint .answers .answer svg{width:20px;height:auto;aspect-ratio:1/1}.summaryPoints .summaryPoint .answers .answer.isAnsweredCorrectly{background:#5ced4f;border-color:#5ced4f}.summaryPoints .summaryPoint .answers .answer.correct{background:#ceffca;border-color:#ceffca}.summaryPoints .summaryPoint .answers .answer.incorrect{background:#ffcece;border-color:#ffcece}.summaryPoints .summaryPointHead{display:flex;align-items:center;justify-content:space-between}.summaryPoints .summaryPointHead>div>.indicator.correct{color:#106b09}.summaryPoints .summaryPointHead>div>.indicator.incorrect{color:#d34545}.PWAInstallPrompt{position:fixed;bottom:16px;left:12px;width:calc(100% - 24px);display:flex;align-items:center;justify-content:space-between;gap:12px;background:#fff;border:1px solid var(--border-color);border-radius:12px;padding:12px 16px;box-shadow:0 4px 16px #0000001f;z-index:900}.PWAInstallPrompt .PWAInstallPrompt__text{display:flex;flex-flow:column;gap:2px;font-size:14px}.PWAInstallPrompt .PWAInstallPrompt__text strong{font-weight:600}.PWAInstallPrompt .PWAInstallPrompt__text span{color:var(--text-color-lighter)}.PWAInstallPrompt .PWAInstallPrompt__actions{display:flex;gap:8px;flex-shrink:0}.PWAInstallPrompt .PWAInstallPrompt__actions .btn{height:36px;font-size:13px;padding:4px 12px;white-space:nowrap}#partners{border-top:1px solid #f3f3f3;margin-top:24px;padding-top:24px}#partners .table{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:12px}#partners .cell{padding:0 12px;vertical-align:middle}#partners img{max-width:100%;height:35px;object-fit:contain}.googleMapMarkerLabel{position:relative;transform:translate(-50%,-43px);background-color:var(--primary-color);color:#fff;font-size:14px;font-weight:700;border-radius:50px;box-shadow:0 0 2px #00000080;white-space:nowrap;width:32px;height:auto;aspect-ratio:1 / 1;display:flex;align-items:center;justify-content:center;text-align:center;pointer-events:none}
