@charset "utf-8";
    .global-alert-overlay {
        position: fixed;
        top: 0; left: 0;
        width: 100%; height: 100%;
        background: rgba(0,0,0,0.45);
        z-index: 100000;
        display: flex;
        justify-content: center;
        align-items: center;
    }
    .global-alert-modal {
        background: #fff;
        border-radius: 10px;
        padding: 30px 35px 25px;
        max-width: 420px;
        width: 85%;
        box-shadow: 0 6px 30px rgba(0,0,0,0.25);
        position: relative;
        text-align: center;
        animation: globalAlertFadeIn 0.2s ease;
    }
    @keyframes globalAlertFadeIn {
        from { opacity: 0; transform: scale(0.92); }
        to   { opacity: 1; transform: scale(1); }
    }
    .global-alert-close-btn {
        position: absolute;
        top: 8px; right: 12px;
        border: none; background: none;
        font-size: 24px; line-height: 1;
        cursor: pointer; color: #888;
        padding: 0;
    }
    .global-alert-close-btn:hover {
        color: #333;
    }
    .global-alert-message {
        font-size: 15px;
        color: #333;
        line-height: 1.7;
        margin: 10px 0 20px;
        white-space: pre-wrap;
        word-break: break-word;
    }
    .global-alert-ok-btn {
        background: #E1F5FE;
        color: #003366;
        border: #76A5D0 solid 1px;
        border-radius: 5px;
        padding: 8px 36px;
        font-size: 14px;
        cursor: pointer;
        transition: background 0.15s;
    }
    .global-alert-ok-btn:hover {
        background: #a2c6e7;
        color: #000;
    }
    .input-form-area {
        flex-direction: column;
        gap: 10px;
        margin: 0 auto; 
        text-align: center; 
    }
    .privew-area {
        margin: 0 auto; 
        text-align: center; 
    }

    .privew-area .privew-ticket-name {
        font: normal normal normal 18px Hiragino Kaku Gothic ProN;
        letter-spacing: 0px;
        color: #333333;
        opacity: 1;
        margin-bottom: 10px; 
        font-weight: 700;
        text-align: center;
        max-width: 689px;
        margin:auto;
    }

    
    .privew-ticket-img {
        margin-top: 10px;
        max-width: 273px;
        max-height: 372px;
        display: inline-block; 
        cursor: pointer; 
        transition: transform 0.3s ease; 
    }

    
    .privew-ticket-img img {
        max-width: 100%;
        height: auto;
        display: block;
    }

    .image-modal-overlay {
        background-color: rgba(0, 0, 0, 0.85); 
        z-index: 9999;
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        display: none; 
        justify-content: center;
        align-items: center;
        overflow: auto;
        scrollbar-gutter: stable;
    }
    .image-modal-overlay::-webkit-scrollbar {
        width: 7px;
    }
    .image-modal-overlay::-webkit-scrollbar-track {
        background: #eee;
    }
    .image-modal-overlay::-webkit-scrollbar-thumb {
        background: #bbb;
        border-radius: 3px;
    }

    
    .image-modal-overlay img {
        display: block;
        margin: 20px auto;
        object-fit: contain;
    }

    
    .image-modal-overlay.active {
        display: block;
    }

    .input-form{
        max-width: 689px;
        margin: 0 auto; 
        text-align: left; 
    }
    .input-title {
        display: inline-table;
        background: #F6E8D6 0% 0% no-repeat padding-box;
        width: 100%;
        height: 43px;       
        line-height: 43px;  
        margin-bottom: 20px;
        font-weight: 800;
        padding-left: 10px;
        box-sizing: border-box;

    }
    
    .oneinput-input{
        display: flex;
        line-height: 32px;
        flex-wrap: wrap;
        margin-top: 20px;
        margin-bottom: 20px;
    }

    .oneinput-input .ismust{
        color: red;
        font-size: 12px;
        white-space: nowrap;
        
    }
    .oneinput-input .input-left{
        font-weight: 800;
        margin-right: 32px;
        min-width: 185px;
        max-width: 185px;
        display: flex;
        flex-wrap: wrap;
        word-break: break-all;
        white-space: normal;
    }
   
    .input-wrapper{
        flex: 1; 
        min-width: 0;
        display: flex;
        flex-wrap: wrap; 
        align-items: center; 
        gap: 5px; 
    }

    .input-wrapper input{
        background: #FFFFFF 0% 0% no-repeat padding-box;
        border: 1px solid #707070;
        box-sizing: border-box;
        width: 100%;
        flex: 1;
        min-width: 50px;   
        height: 32px;      
    }

  
    .input-wrapper input::-webkit-input-placeholder {
        font-size: 13px; 
    }
    .input-wrapper input::-moz-placeholder {
        font-size: 13px;
    }
    .input-wrapper input:-ms-input-placeholder {
        font-size: 13px;
    }
 
    
    .input-hints {
        margin-top: 5px;       
        font-size: 12px;       
        line-height: 1.5;      
        color: #333333;           
        width: 100%;           
    }

    
    .hint-error {
        color: #FF0404;            
        font-weight: bold;     
        display: block;        
        display: none;
    }

    .form-error-message{
        font-size: 12px;
    }

    
    .hint-info {
        display: block;        
    }

    .foot-button {
        display: flex;
        flex-wrap: wrap;      
        justify-content: center; 
        gap: 15px;             
        margin-top: 30px;
        padding: 0 10px;       
    }

   
    .foot-button > a {
        background: #E1F5FE 0% 0% no-repeat padding-box;
        border: 1px solid #76A5D0;
        border-radius: 5px;
        cursor: pointer;
        text-align: center;
        min-width: 120px;      
        padding: 10px 15px;    
        word-break: keep-all;  
        white-space: normal;   
        line-height: 1.4;      
        flex: 1 1 auto;        
        max-width: 300px;      
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        text-decoration: underline;
        color: #003366 !important;
    }

    .foot-button a:hover {
        background-color: #A2C6E7;
        color: #000 !important;
    }

    .input-error-overlay{
        position: fixed;
        inset: 0;
        background: rgba(0, 0, 0, 0.5);
        z-index: 20000;
        display: flex;
        justify-content: center;
        align-items: center;
        padding: 20px;
    }
    .input-error-modal{
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        background: #fff; 
        width: min(90%, 470px); 
        padding: 25px;
        border-radius: 8px; 
        box-shadow: 0 4px 15px rgba(0,0,0,0.2);
    }
    .input-error-title{
        margin: 0 0 15px 0; 
        color: #d9534f; 
        font-size: 18px;
        border-bottom: 1px solid #eee; 
        padding-bottom: 10px;
    }
    .input-error-list{
        margin: 0; 
        padding-left: 20px; 
        color: #333; 
        font-size: 14px;
        max-height: 300px; 
        overflow-y: auto;
    }
    .input-error-close-btn{
        margin-top: 20px; 
        padding: 8px 20px; 
        background: #E1F5FE 0% 0% no-repeat padding-box;
        color: #003366; 
        border: 1px solid #76A5D0;
        border-radius: 5px; 
        cursor: pointer;
        float: right; 
        text-decoration: underline;
    }

    .input-error-close-btn:hover {
        background-color: #A2C6E7;
        color: #000 !important;

    }
    p.page-top-link a {
        background-position:left center;
        display:inline-block;
        line-height:1.8;
        min-height:24px;
    }


    @media (max-width: 768px) {
        .privew-area .privew-ticket-name {
            text-align: left;
        }
        .oneinput-input .input-left {
            margin-right: 20px;
        }
        .input-wrapper input::-webkit-input-placeholder {
            font-size: 12px; 
        }
        .input-wrapper input::-moz-placeholder {
            font-size: 12px;
        }
        .input-wrapper input:-ms-input-placeholder {
            font-size: 12px;
        }
    }


    @media (max-width: 480px) {
        .input-form {
            padding: 0 10px; 
            box-sizing: border-box;
        }

        .oneinput-input {
            flex-direction: column;
            align-items: flex-start;
            margin-top: 15px;
            margin-bottom: 15px;
        }

        .oneinput-area .input-title{
            margin-bottom: 0;
        }

        .oneinput-input .input-left {
            font-weight: 800;
            width: 100%;
            max-width: 100%;
            min-width: auto;
            margin-right: 0;
            word-break: break-all;
        }

        .input-wrapper {
            width: 100%;
        }

        .input-wrapper input {
            height: 40px;
            font-size: 16px;
        }

        .input-wrapper input::-webkit-input-placeholder {
            font-size: 12px; 
        }
        .input-wrapper input::-moz-placeholder {
            font-size: 12px;
        }
        .input-wrapper input:-ms-input-placeholder {
            font-size: 12px;
        }

        .foot-button > a {
            width: 100%;
            max-width: none;
            margin-bottom: 10px;
        }
    }