*{box-sizing:border-box;margin:0;padding:0}body{font-family:-apple-system,BlinkMacSystemFont,"Hiragino Kaku Gothic ProN","Hiragino Sans","Noto Sans JP","Yu Gothic",Meiryo,sans-serif;background-color:#f7f7f7;color:#333;line-height:1.6;display:flex;flex-direction:column;justify-content:space-between;height:100vh}a{color:#06c;text-decoration:none}a:hover{text-decoration:underline}.page{max-width:960px;min-width:960px}.header{height:90px;display:flex;align-items:center;justify-content:center}.header .space{flex-grow:1}.center{display:flex;justify-content:center;padding-top:30px;flex-grow:1}.center .tag{font-weight:700;display:flex;font-size:20px;align-items:center}.center .tag::before{content:" ";width:5px;background:#06c;height:24px;display:block;border-radius:2px;margin-right:10px}.center .description{margin:20px 0}.center .content-header{font-weight:700}.center .agreement-content{margin:20px 0;border:2px solid #e2e2e2;border-radius:3px;overflow-y:auto;max-height:calc(100vh - 500px);padding:10px;font-size:15px;white-space:pre-wrap}.check-box label{display:flex;align-items:center;margin-bottom:20px;max-width:200px}.check-box label:hover{cursor:pointer}.check-box input{width:20px;height:20px;margin-right:10px}.btn-group{width:100%;display:flex;justify-content:space-around}.btn-group .btn{width:280px;height:45px;border-radius:4px;background-color:#274cb6;color:#fff;display:flex;align-items:center;justify-content:center}.btn-group .btn.disabled{background-color:gray}.btn-group .btn:hover{cursor:pointer}.footer{height:30px;display:flex;align-items:center;font-size:14px;justify-content:center}.loading::after{content:"";display:inline-block;width:3ch;text-align:left;margin-left:.25em;animation:dots 2s steps(4,end) infinite}.message-box{font-size:18px}@keyframes dots{0%{content:"."}33%{content:".."}66%{content:"..."}100%{content:"...."}}@media screen and (max-width:960px){.page{min-width:unset;padding:0 14px}.header{justify-content:flex-start}.center{padding-top:14px}.center .description{margin:14px 0}.center .agreement-content{margin:10px 0 14px 0}}@media screen and (max-width:600px){.btn-group{flex-direction:column-reverse}.btn-group .btn{width:100%;margin-top:14px}.footer{height:140px}}.hidden{display:none!important}#error-page{display:flex;padding-top:15vh;justify-content:center}#error-page .title{font-size:60px}#error-page #error-msg{white-space:pre-line}.error-icon{min-width:80px;height:80px;border-radius:50%;font-size:60px;color:gray;border:5px solid gray;display:flex;justify-content:center;align-items:center;margin-right:20px}.error-msg span{font-size:14px;color:gray}