*{margin:0}html{display:block}body{background-color:#f5f5f5}.App{width:100%}.container{display:flex;max-width:1200px;margin:20px auto;padding:0 20px;display:grid;grid-template-columns:1fr 2fr;gap:20px}.header{background-color:#8b1538;color:#fff;padding:15px 20px;display:flex;justify-content:space-between;align-items:flex-end;border-bottom:3px solid #6B0E2A}.header__title{font-size:20px;font-weight:700}.header__right{display:flex;gap:15px}.header__manual{display:inline-block}.header__userinfo{text-align:right}.userinfo__userprincipalname{text-decoration:underline;color:#fff;cursor:pointer;-webkit-user-select:none;user-select:none}.userinfo__userprincipalname:hover{opacity:.8}.header__menu-dropdown{display:none;position:absolute;background:#fff;border:1px solid #ddd;border-radius:8px;box-shadow:0 2px 8px #00000014;z-index:100;min-width:140px;padding:8px 0;flex-direction:column;-webkit-user-select:none;user-select:none}.header__menu-dropdown>*{display:block;background:none;text-align:left;padding:10px 20px;color:#7f2239;font-size:1em;cursor:pointer;text-decoration:none}.header__menu-dropdown>button{border:none}.header__menu-dropdown>*:hover{background:#ececec}.manual__link{display:block;padding:10px 20px;background-color:#a5a5a5;color:#fff;text-decoration:none;border-radius:5px;text-align:center}.manual__link:hover{background-color:#8c8c8c;color:#fff;transition:all .2s ease}.panel__left{background-color:#fff;border:2px solid #8B1538;border-radius:8px;padding:30px}.application__title{margin-bottom:25px;color:#8b1538;font-size:18px;font-weight:700;-webkit-user-select:none;user-select:none}.application__status-section{margin-bottom:25px}.status__label{font-weight:700;margin-bottom:10px;color:#333}.status__description{color:#666}.application__button-section{display:flex;justify-content:center;align-items:center;width:100%;margin-top:10px;padding:0 24px 16px;box-sizing:border-box}.application__button{display:flex;justify-content:center;align-items:center;text-decoration:none;background-color:#8b1538;color:#fff;padding:15px 30px;border:none;border-radius:5px;cursor:pointer;font-size:16px;min-width:160px;max-width:100%;width:auto;transition:background-color .3s;box-sizing:border-box}.application__button:hover{background-color:#6b0e2a}.panel__right{display:flex;flex-direction:column;gap:20px}.panel__header-row{display:flex;justify-content:space-between;background-color:#8b1538;align-items:center}.panel__header{font-weight:700;display:flex;justify-content:space-between;align-items:center;padding:20px;background-color:#8b1538;color:#fff;transition:background-color .3s;-webkit-user-select:none;user-select:none}.information__panel{background-color:#fff;border:2px solid #8B1538;border-radius:8px;overflow:hidden;min-height:300px;max-height:300px}.panel__value{padding:20px;transition:max-height .2s ease-out,opacity .2s ease-out;overflow:hidden;overflow-y:auto;max-height:200px}.panel__pagenation{display:flex;align-items:center;gap:8px}.panel__pagenation a{display:inline-block;width:auto;height:auto;min-width:0;background:none;color:#fff;font-size:20px;font-weight:700;text-decoration:none;border:none;border-radius:0;transition:color .2s;cursor:pointer;-webkit-user-select:none;user-select:none;margin:0 6px;padding:0 8px}.panel__pagenation a.active{color:#fff;cursor:pointer;pointer-events:auto}.panel__pagenation a.inactive,.panel__pagenation a.disabled,.panel__pagenation a[aria-disabled=true]{color:#a5a5a5;cursor:not-allowed;pointer-events:none}.panel__pagenation a:hover.active{color:#d32f2f}.panel__pagenation .page-info{font-size:16px;font-weight:700;color:#fff;margin:0 4px;min-width:48px;text-align:center;letter-spacing:1px}.information__item{display:flex;justify-content:space-between;align-items:center;padding:12px 0;border-bottom:1px solid #eee;gap:10px}.modal__date{margin-top:-10px;margin-bottom:3px}.modal__date_value{display:inline-block;border-radius:10px;background:#88223a;padding:3px 10px;font-size:12px;color:#fff}.information__title a{cursor:pointer;text-decoration:underline;color:#8b1538}.table{width:100%;border-collapse:collapse;margin-bottom:15px}.theader{display:table-header-group;vertical-align:middle;unicode-bidi:isolate;border-color:inherit}.table__row{display:table-row;vertical-align:inherit;unicode-bidi:isolate;border-color:inherit}.table__header{background-color:#8b1538;color:#fff;padding:12px 8px;text-align:center;font-weight:700;font-size:14px}.applicationrecord{background-color:#fff;border:2px solid #8B1538;border-radius:8px;overflow:hidden}.table td{padding:12px 8px;text-align:center;border-bottom:1px solid #ddd;font-size:14px}.modal__overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#00000080;z-index:9999;display:flex;justify-content:center;align-items:center}.modal__content{background-color:#fff;margin:10% auto;padding:30px;border:2px solid #8B1538;border-radius:8px;z-index:10000;width:80%;max-width:600px;position:relative}.modal__title{font-weight:700;font-size:18px;margin-bottom:18px;color:#8a1e3a;border-bottom:2px solid #8a1e3a;padding-bottom:10px;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;max-height:2.4em}.modal__body{white-space:pre-wrap;margin-bottom:24px;max-height:60vh;overflow-y:auto}.modal__close{display:block;background-color:#4a90e2;color:#fff;text-align:center;text-decoration:none;font-size:16px;padding:10px 20px;border-radius:8px;cursor:pointer;box-shadow:0 2px 4px #0003;transition:background-color .2s ease;margin:0 auto;width:100px}.modal__close:hover{background-color:#357abd;color:#e0e0e0;transition:all .2s ease}.application__form{background-color:#fff;border:2px solid #8B1538;border-radius:8px;padding:30px;margin:20px auto;max-width:800px}.form__header{text-align:center;font-size:20px;font-weight:700;color:#8b1538;margin-bottom:20px;padding-bottom:15px;border-bottom:2px solid #8B1538}.form__explain{text-align:center;margin-bottom:20px;color:#8b1538;font-weight:700}.form__label{font-weight:700;color:#333;margin-bottom:15px;display:block}.form__label__red{font-weight:700;color:#8b1538;margin-bottom:15px;display:block}.form__label__done{color:#333;margin-bottom:30px;line-height:1.8;text-align:center;display:block}.form__buttons{display:flex;justify-content:space-between;margin-top:30px;gap:10px}.form__button-back{background-color:#6c757d;color:#fff;text-decoration:none;padding:12px 24px;border:none;border-radius:5px;cursor:pointer;font-size:14px}.form__button-back:hover{background-color:#5a6268}.form__button-submit,.form__button-gotop{background-color:#8b1538;color:#fff;text-decoration:none;padding:12px 24px;border:none;border-radius:5px;cursor:pointer;font-size:14px;text-align:center}.form__button-submit.disabled{background-color:#ccc;color:#666;cursor:not-allowed;opacity:.6}.form__button-submit:hover,.form__button-gotop:hover{background-color:#6b0e2a}.form__buttons--center{justify-content:center!important}.checkbox__group{display:flex;flex-direction:column;gap:15px}.checkbox__item label{display:flex;align-items:center;gap:10px}.checkbox-item input[type=radio]{margin-top:3px;transform:scale(1.2)}.checkbox__text{color:#333;line-height:1.6}.checkbox__description{color:#666;font-size:14px;margin-top:5px}.other-input{width:100%;padding:10px;border:1px solid #ccc;border-radius:4px;font-size:14px;margin-top:10px}.error__page{background-color:#fff;border:2px solid #8B1538;border-radius:8px;padding:30px;margin:20px auto;max-width:800px}.error__header{text-align:center;font-size:20px;font-weight:700;color:#8b1538;margin-bottom:20px;padding-bottom:15px;border-bottom:2px solid #8B1538}.error__section{color:#333;margin-bottom:20px;text-align:center}.error__buttons--center{display:flex;justify-content:center;margin-top:20px}.error__button-gotop{background-color:#8b1538;color:#fff;text-decoration:none;padding:12px 24px;border:none;border-radius:5px;cursor:pointer;text-align:center}.error__button-gotop:hover{background-color:#6b0e2a}@media (max-width: 600px){.container{display:block!important;max-width:100%;padding:0 20px}.panel__left,.panel__right,.application__form{margin:10px 0;max-width:100%}.panel__header-row{flex-direction:row;align-items:center;display:flex;justify-content:space-between}.information__panel,.application__panel{border-radius:8px;background:#fff;margin-bottom:16px;box-shadow:0 2px 8px #8b153814;transition:box-shadow .3s,border-color .3s,min-height .3s;min-height:0;padding:0;max-height:initial}.information__panel.collapsed,.application__panel.collapsed{min-height:0!important;border-width:1px 1px 1px 1px;border-radius:8px;box-shadow:none;padding-bottom:0!important;margin-bottom:0!important}.header{padding:15px 20px;display:flex;justify-content:space-between;align-items:center}.header__right{display:flex;flex-direction:column;align-items:flex-end;gap:10px}.manual__link{font-size:14px}.header__title,.header__right{justify-content:space-between;overflow-wrap:anywhere;max-width:250px;　}.header__userinfo{gap:30px;font-size:14px}.panel__left,.panel__right>.information__panel{margin-bottom:15px;max-width:100%}.panel__right>.information__panel:last-child{margin-bottom:0}.information__panel.collapsed,.application__panel.collapsed{margin-bottom:15px!important}.panel__right>.information__panel.collapsed:last-child{margin-bottom:0!important}.panel__left{padding:0}.application__title{margin-bottom:0;padding:20px 0;font-size:16px;-webkit-user-select:none;user-select:none}.application__status-section{padding:10px 20px;margin-bottom:10px}.panel__value{padding:10px 20px;overflow:auto;max-height:inherit}.panel__header{padding:20px 0}.application__form{margin:20px}.panel__pagenation{gap:0}.panel__pagenation a{margin:0;padding:0 5px}.panel__right{gap:0}.table__header{display:none}.table tbody td{display:block;width:calc(100% - 16px);text-align:left}.table tbody td:before{border-radius:8px;display:inline-block;background:#8b1538;width:80px;padding:3px 0;margin-right:10px;text-align:center;color:#fff;font-size:12px}.table tbody td:nth-child(1){border-left:4px solid #8B1538;background:#f5f5f5;font-weight:700;color:#8b1538}.table tbody td:nth-child(2):before{content:"ステータス"}.table tbody td:nth-child(3):before{content:"申請日"}.table tbody td:nth-child(4):before{content:"利用期限"}.error__page{max-width:100%;margin:20px}}.collapsible{transition:max-height .3s cubic-bezier(.4,0,.2,1),opacity .3s cubic-bezier(.4,0,.2,1);overflow:hidden;max-height:2000px;opacity:1}.collapsible.collapsed{max-height:0!important;opacity:0;pointer-events:none;padding:0!important;margin:0!important}.collapse-toggle{background:none;border:none;color:#fff;font-size:22px;cursor:pointer;padding:0 8px;margin-left:8px;transition:color .2s;line-height:1;display:flex;align-items:center}.collapse-toggle:focus{outline:none}.information__panel .collapse-toggle,.application__panel .collapse-toggle{color:#fff!important}.panel__left .collapse-toggle{color:#8b1538!important}
