@font-face{font-family:Noto Sans JP;font-style:normal;font-display:swap;font-weight:400;src:url(../fonts/noto-sans-jp-400.woff2) format("woff2")}@font-face{font-family:Noto Sans JP;font-style:normal;font-display:swap;font-weight:700;src:url(../fonts/noto-sans-jp-700.woff2) format("woff2")}

html{-webkit-text-size-adjust:100%;text-size-adjust:100%}html:has(body.app:not(.admin_shell_page)){height:100%;height:100dvh;overflow:hidden}*{margin:0;box-sizing:border-box}:root{--font-sans: "Noto Sans JP", ui-sans-serif, system-ui, -apple-system, "Hiragino Sans", "Yu Gothic", "Meiryo", sans-serif;--app-header-height: 12.8vw ;--app-section-gap: calc(100vw * 20 / 375);--app-btn-shadow: 0 .8vw calc(100vw * 4 / 375) rgba(17, 24, 39, .06), 0 1.6vw calc(100vw * 14 / 375) rgba(17, 24, 39, .1), 0 calc(100vw * 10 / 375) calc(100vw * 22 / 375) rgba(17, 24, 39, .12);--app-btn-shadow-hover: 0 calc(100vw * 4 / 375) 1.6vw rgba(17, 24, 39, .08), 0 calc(100vw * 8 / 375) 4.8vw rgba(17, 24, 39, .12), 0 calc(100vw * 14 / 375) calc(100vw * 28 / 375) rgba(17, 24, 39, .14)}body{font-family:var(--font-sans)}body.app{display:flex;flex-direction:column;min-height:100vh;min-height:100dvh;background-color:#f9fafb;color:#182c5b}body.app:not(.admin_shell_page){height:100%;height:100dvh;min-height:0;overflow:hidden}.app_header{position:fixed;top:0;left:0;right:0;align-self:stretch;flex-shrink:0;z-index:1205;width:100%;min-height:12.8vw;border-bottom:calc(100vw * 1 / 375) solid rgba(17,24,39,.1);background-color:#ed7051}body.app:not(.admin_shell_page)>main.app_main{flex:1 1 auto;min-height:0;overflow-x:hidden;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;padding-top:var(--app-header-height)!important}.hamburger{position:absolute;top:3.2vw;left:calc(100vw * 16 / 375);z-index:1201;display:flex;flex-direction:column;justify-content:space-between;width:calc(100vw * 32 / 375);height:6.4vw;border:none;background:none;cursor:pointer}.hamburger span{display:block;width:100%;height:.8vw;margin:0;border-radius:calc(100vw * 2 / 375);background:#fff;flex-shrink:0;transform-origin:center;-webkit-backface-visibility:hidden;backface-visibility:hidden;transition:transform .3s ease,opacity .3s ease,visibility .3s ease}.hamburger.is-open span:nth-child(1),.hamburger.is-open span:nth-child(3){position:absolute;top:50%;left:0;margin-top:-.4vw}.hamburger.is-open span:nth-child(1){transform:rotate(45deg)}.hamburger.is-open span:nth-child(2){opacity:0;visibility:hidden}.hamburger.is-open span:nth-child(3){transform:rotate(-45deg)}.hamburger_menu{position:fixed;top:var(--app-header-height);left:0;z-index:10050;width:100%;height:calc(100vh - var(--app-header-height));height:calc(100dvh - var(--app-header-height));visibility:hidden;opacity:0;transition:opacity .2s ease,visibility .2s ease}body.app.has-sp-tabbar .hamburger_menu{height:calc(100dvh - var(--app-header-height) - var(--app-tabbar-height) - env(safe-area-inset-bottom,0px))}.hamburger_menu.is-open{visibility:visible;opacity:1}.hamburger_backdrop{position:absolute;inset:0;margin:0;padding:0;width:100%;border:0;background:#11182747;cursor:pointer}.hamburger_panel{--menu-navy: #939393;--hamburger-outer-w: 64.8vw ;--hamburger-outer-h: calc(100vw * 523 / 375);--hamburger-inner-w: calc(100vw * 203 / 375);--hamburger-inner-h: 128.8vw ;--hamburger-pad: calc(100vw * 20 / 375);position:absolute;top:calc(100vw * 10 / 375);bottom:3.2vw;left:calc(100vw * 10 / 375);overflow:hidden;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;box-sizing:border-box;width:min(var(--hamburger-outer-w),96.8vw);max-width:min(64.8vw,96.8vw);max-height:var(--hamburger-outer-h);height:auto;padding:var(--hamburger-pad);border:none;border-radius:calc(100vw * 8 / 375);box-shadow:calc(100vw * 4 / 375) 1.6vw 4.8vw #11182724,calc(100vw * 2 / 375) calc(100vw * 2 / 375) calc(100vw * 8 / 375) #11182714;background:#fff;transform:translate(-100%) translate(-6.4vw);transition:transform .28s cubic-bezier(.22,1,.36,1)}.hamburger_menu.is-open .hamburger_panel{transform:translate(0)}.hamburger_menu_list{list-style:none;flex:1 1 auto;overflow:hidden;display:flex;flex-direction:column;box-sizing:border-box;width:min(var(--hamburger-inner-w),100%);min-height:0;max-height:var(--hamburger-inner-h);margin:0;padding:0;border:calc(100vw * 1 / 375) solid var(--menu-navy);border-radius:calc(100vw * 8 / 375);background:#fff}.hamburger_menu_list li{flex-shrink:0}.hamburger_menu_list li:not(:last-child){border-bottom:calc(100vw * 1 / 375) solid #e8eaed}.hamburger_menu_list li:last-child{border-bottom:0;margin-top:auto}.hamburger_menu_list a{display:block;font-family:var(--font-sans);font-size:calc(100vw * 17 / 375);font-weight:400;line-height:1.35;letter-spacing:.02em;text-decoration:none;color:#334155;padding:calc(100vw * 16 / 375) calc(100vw * 20 / 375)}.hamburger_menu_list a.employee_hamburger_link{display:flex;align-items:center;box-sizing:border-box;min-height:calc(100vw * 52 / 375);gap:calc(100vw * 16 / 375);padding:calc(100vw * 14 / 375) 3.2vw}.employee_hamburger_icon_cell{display:flex;align-items:center;justify-content:center;flex-shrink:0;box-sizing:border-box;width:8vw;height:8vw}.employee_hamburger_icon{display:block;flex-shrink:0;width:calc(100vw * 20 / 375);height:calc(100vw * 20 / 375);object-fit:contain}.employee_hamburger_icon.employee_hamburger_icon--menu_feature{width:8vw;height:8vw}.employee_hamburger_label{flex:1;min-width:0;line-height:1.35;word-break:keep-all}.app_header_inner{display:flex;align-items:center;justify-content:center;max-width:320vw;height:12.8vw;margin:0 auto;padding:0 calc(100vw * 20 / 375)}.app_logo{font-size:6.4vw;font-weight:700;color:#fff}.app_main{flex:1;width:100%;max-width:480vw;margin:0 auto;padding:var(--app-section-gap);background:#f6f3f1}.app_footer{flex-shrink:0;background-color:#ed7051}.app_footer_inner{display:flex;align-items:center;justify-content:center;min-height:5vh}.app_footer_inner a{display:flex;align-items:center;justify-content:center;gap:calc(100vw * 10 / 375);font-size:calc(100vw * 16 / 375);text-decoration:none;color:#fff}.app_footer_inner img{width:8vw}body.app .sp_tabbar>.sp_tabbar_item:not(:last-child){position:relative}body.app .sp_tabbar>.sp_tabbar_item:not(:last-child):after{content:"";position:absolute;top:50%;right:0;width:calc(100vw * 1 / 375);height:calc(100vw * 32 / 375);background:#ffffffa6;transform:translateY(-50%);pointer-events:none}@media screen and (max-width: 768px){.app_logo{font-size:calc(100vw * 20 / 375);color:#fff}.hamburger_panel{left:0;width:min(var(--hamburger-outer-w),calc(100vw - calc(100vw * 16 / 375)));max-width:min(64.8vw,calc(100vw - calc(100vw * 16 / 375)))}.hamburger_menu_list{border-radius:2.4vw}.hamburger_menu_list a{font-size:calc(100vw * 16 / 375);padding:4vw 4.8vw}}

footer{background-color:#ed7051}.auth{height:100vh}.auth_footer{min-height:5vh;display:flex;align-items:center;justify-content:center}.auth_footer_link{display:flex}.auth_footer_link a{display:flex;align-items:center;justify-content:center;gap:10px;color:#fff;text-decoration:none;font-size:16px}.auth_footer_link img{width:30px}

.app_toast{position:fixed;left:50%;bottom:calc(19.2vw + env(safe-area-inset-bottom,0px));z-index:2400;box-sizing:border-box;width:calc(100vw * 280 / 375);max-width:calc(100vw - 32px);margin:0;padding:calc(100vw * 8 / 375) 3.2vw;border:0;border-radius:calc(100vw * 8 / 375);background:#182c5beb;font-family:inherit;font-size:calc(100vw * 14 / 375);font-weight:700;line-height:1.4;color:#fff;text-align:center;white-space:pre-line;pointer-events:none;opacity:0;visibility:hidden;transform:translate(-50%,8px);transition:opacity .2s ease,transform .2s ease,visibility .2s ease}.app_toast.is-visible{opacity:1;visibility:visible;transform:translate(-50%)}@media (min-width: 769px){.app_toast{bottom:32px;width:320px;padding:10px 16px;border-radius:8px;font-size:14px}}

.app_top_fab{position:fixed;inset:auto 16px calc(16px + env(safe-area-inset-bottom,0px)) auto;z-index:1001;width:45px;height:45px;padding:0;margin:0;border:none;border-radius:50%;background:transparent;cursor:pointer;display:block;box-sizing:border-box;opacity:0;visibility:hidden;pointer-events:none;-webkit-tap-highlight-color:transparent;transition:opacity .2s ease}.app_top_fab__img{display:block;width:45px;height:45px;object-fit:contain;pointer-events:none}body.app:has(.sp_tabbar) .app_top_fab{inset:auto 16px calc(72px + env(safe-area-inset-bottom,0px)) auto}body.auth .app_top_fab{inset:auto 16px calc(16px + env(safe-area-inset-bottom,0px)) auto;z-index:1100}
