﻿body {
    margin: 0px;
    font-family: 'Noto Sans JP', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro','メイリオ', 'Meiryo', '游ゴシック', 'Yu Gothic', 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
    -webkit-text-size-adjust: 100%;
}

input[type=text], input[type=password], textarea {
    font-family: 'Noto Sans JP', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro','メイリオ', 'Meiryo', '游ゴシック', 'Yu Gothic', 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
    background-color: #FFFFEE;
    padding: 6px 8px;
    border: 1px solid gray;
}

select {
    font-family: 'Noto Sans JP', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro','メイリオ', 'Meiryo', '游ゴシック', 'Yu Gothic', 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
    background-color: #FFFFEE;
    padding: 5px 2px;
    border: 1px solid gray;
}

    input[type=text]:focus {
        outline: 2px solid gray;
    }

    input[type=password]:focus {
        outline: 2px solid gray;
    }

    textarea:focus {
        outline: 2px solid gray;
    }

input[type=image]:focus {
    outline: none;
}

input[type=button]:focus {
    outline: none;
}

select:focus {
    outline: none;
}

input[id^='chk'] {
    transform:scale(1.6);
    margin:0 7px 0 2px;
}

input[id^='rad'] {
    transform: scale(1.5);
    margin: 0 8px 0 5px;
}

.title-bottom-line {
    border-bottom: 5px solid #00529F;
}

.div-main, .logo {
    width: 100%;
    max-width: 1280px;
    margin: 0 auto;
}

    .logo .col1 {
        text-align: center;
        width: 60%;        
    }

    .logo .col2 {
        width: auto;
        text-align: left;
        padding-left: 20px;
        line-height: 1.9em;
    }

    .logo img {
        width: 88%;
        vertical-align: bottom;
    }

    .logo .col3 img {
        width: 60%;
        min-width: 600px;
        vertical-align: bottom;
    }

.div-copyright {
    padding: 20px 0px;
    text-align: center;
}

.div-logo-1, .div-logo-2 {
    width: 98%;
    margin: 15px auto 10px auto;
    background-color: #E86D06;
    padding: 10px 0px;
    text-align: center;
    color: white;
    border-radius: 18px;
}

.div-logo-2 {
    width: 50%;
    min-width: 400px;
}

.div-login {
    width: 400px;    
    margin: 15px auto 5px auto;
    line-height: 2.2em;
}

    .div-login span {
        color: white;
        font-weight: bold;
        text-shadow: 2px 2px 1px #616C7A, -2px 2px 1px #616C7A, 2px -2px 1px #616C7A, -2px -2px 1px #616C7A, 2px 0px 1px #616C7A, 0px 2px 1px #616C7A, -2px 0px 1px #616C7A, 0px -2px 1px #616C7A;
    }

.div-login-err {
    width: 400px;
    margin: 0px auto;
}

    .div-login-err span {
        font-weight: bold;
        text-shadow: 2px 2px 1px white, -2px 2px 1px white, 2px -2px 1px white, -2px -2px 1px white, 2px 0px 1px white, 0px 2px 1px white, -2px 0px 1px white, 0px -2px 1px white;
    }


.div-login-btn {
    width: 400px;
    margin: 20px auto 0 auto;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

    .div-login-btn .lnkbLogin {
        display: inline-block;
        width: 47%;
        text-align: center;
        padding: 10px 0px;
        border-radius: 5px;
        background-color: #C50018;
        color: white;
        border: 2px solid white;
    }

    .div-login-btn .lnkbNewReg {
        display: inline-block;
        width: 47%;
        text-align: center;
        padding: 10px 0px;
        border-radius: 5px;
        background-color: #254292;
        color: white;
        border: 2px solid white;
    }

.div-login-pwsend {
    width: 400px;
    margin: 15px auto;
    text-align: center;
}

    .div-login-pwsend .lnkPwSend {
        display: inline-block;
        width: 99%;
        text-align: center;
        padding: 10px 0px;
        border-radius: 5px;
        background-color: #254292;
        color: white;
        border: 2px solid white;
    }


    .div-login-btn a:link,
    .div-login-btn a:visited,
    .div-login-pwsend a:link,
    .div-login-pwsend a:visited {
        text-decoration: none;
    }

    .div-login-btn a:hover,
    .div-login-pwsend a:hover {
        text-decoration: none;
        border: 2px solid #9A9EA9;
    }


.div-pageall {
    text-align: left;
    line-height: 1.5em;
}

.div-disp-type1 {
    text-align: left;
    line-height: 1.8em;
    padding: 20px;
}

.div-disp-type2 {
    text-align: center;
    line-height: 2em;
    padding: 20px;
}

.div-page-error {    
    text-align: left;
    line-height: 1.8em;
}

.div-pagebottom {
    text-align: center;
    padding-top: 20px;
}

.div-head {
    border-bottom: 4px solid #00529F;
    padding: 20px 0px 10px 5px;
    font-weight: 600;
    color: #4d0707;
}

.div-contents {
    padding: 10px 5px;
    line-height: 1.8em;
}

.div-contents-disp {
    padding: 10px 20px;
    line-height: 1.8em;
    margin-bottom: 20px;
}

.div-rules {
    height: 150px;
    margin: 0px auto;
    padding: 8px 10px;
    border: 1px solid gray;
    overflow-y: scroll;    
}

.div-rules-agree {
    text-align: center;
    margin-top: 10px;    
}

.div-error {
    padding: 10px 0px 0px 3px;
}

.div-clear {
    clear: both;
}

.div-qrcode-map {
    width: 60%;
    margin: 0 auto;
    line-height: 1.8em;
}

    .div-qrcode-map img {
        width: 100%;
        margin: 10px auto;
    }

.div-qrcode-head {
    width: 60%;
    margin: 15px auto 0 auto;
    line-height: 1.8em;
}

    .div-qrcode-head img {
        width: 80%;
        max-width: 420px;
    }


.div-mypage {
    height: 100vh;
    min-height: 700px;
    background-image: url(../image/visitor/bg.png);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
}

    .div-mypage .div-pc-line1 {
        display: block !important;
        width: 70%;
        margin: 0 auto;
        text-align: center;
    }

        .div-mypage .div-pc-line1 img {
            width: 98%;
            max-width: 1650px;
            margin-top: 50px;
        }

    .div-mypage .div-pc-line2 {
        width: 600px;
        border-radius: 5px;
        margin: 20px auto;
        text-align: center;
        background-color: #616C7A;
        opacity: 0.8;
        line-height: 38px;
        padding: 15px 0px;
    }

        .div-mypage .div-pc-line2 span {
            color: white;
        }

    .div-mypage .div-sp-line1 {
        display: none !important;
    }


.table-qrcode {
    width: 60%;
    margin: 10px auto;
}

.table-qrcode td {
    text-align: center; 
    line-height: 2em;
}

    .table-qrcode .col-qrcode1 {
        width: 30%;
    }

    .table-qrcode .col-qrcode2 {
        width: auto;
    }

.tabel-entry-method1 {
    width: 60%;
    margin: 0px auto;
}

    .tabel-entry-method1 td {
        width: 33%;
        text-align: left;
        line-height: 1.8em;
    }

    .tabel-entry-method1 img {
        width: 90%;
        max-width: 200px
    }

.tabel-entry-method2 {
    width: 60%;
    margin: 10px auto 0 auto;
}

    .tabel-entry-method2 .entry-method2-col1 {
        width: 67%;
        text-align: left;
        line-height: 1.8em;
        padding-right: 10px;
    }

    .tabel-entry-method2 .entry-method2-col2 {
        width: auto;
        text-align: left;
        line-height: 1.8em;
    }

    .tabel-entry-method2 img {
        width: 90%;
        max-width: 200px
    }

.tabel-entry-corona {
    width: 60%;
    margin: 10px auto 0 auto;
}

    .tabel-entry-corona .entry-corona-col1 {
        width: 40%;
        text-align: left;
        line-height: 1.8em;
    }

    .tabel-entry-corona .entry-corona-col2{
        width: auto;
        text-align: left;
        line-height: 1.8em;
    }

    .tabel-entry-corona .entry-corona-col1 img,
    .tabel-entry-corona .entry-corona-col2 img {
        width: 96%;
    }

    #new-qrcode {
        margin: 0px auto;
    }

table {
    border-collapse: collapse;
    width: 100%;
}

    table td {
        padding: 0px;
        text-align: center;
        line-height: 2.2em;
    }

.table-input-type1 {
    margin-bottom: 20px;
}

    .table-input-type1 .td-comb {
        text-align: left;
        padding-left: 20px;
        border-bottom: none;
    }

    .table-input-type1 .td-name {
        width: 20%;
        text-align: left;
        padding-left: 20px;
        border-top: 1px solid #c2bfbf;
        border-bottom: 1px solid #c2bfbf;
    }

.table-input-type1 .td-name-q {
    width: 30%;
    text-align: left;
    padding-left: 20px;
    border-top: 1px solid #c2bfbf;
    border-bottom: 1px solid #c2bfbf;
}

.table-input-type1 .td-must {
    width: 5%;
    text-align: left;
    border-top: 1px solid #c2bfbf;
    border-bottom: 1px solid #c2bfbf;
}

.table-input-type1 .td-input {
    width: auto;
    text-align: left;
    padding: 30px 0px 20px 10px;
    border-top: 1px solid #c2bfbf;
    border-bottom: 1px solid #c2bfbf;
}

.table-input-type1 .td-name-disp {
    width: 25%;
    text-align: left;
    padding: 20px 0px 20px 20px;
    border-top: 1px solid #c2bfbf;
    border-bottom: 1px solid #c2bfbf;
}

.table-input-type1 .td-input-disp {
    width: auto;
    text-align: left;
    padding: 20px 0px 20px 10px;
    border-top: 1px solid #c2bfbf;
    border-bottom: 1px solid #c2bfbf;
}

.table-input-type2 {
    width: 80%;
}

    .table-input-type2 th {        
        height: 30px;
        background-color: lightgoldenrodyellow;
        border: 1px solid gray;
        text-align: center;
        font-weight: normal;
    }

    .table-input-type2 td {
        height: 30px;
        border: 1px solid gray;
        text-align: center;
        padding: 0px 0px;
    }

.table-input-type2-disp th {
    text-align: center;
    padding: 15px 0px;
    font-weight: normal;
    border-bottom: 1px solid #c2bfbf;
}

.table-input-type2-disp td {
    text-align: center;
    padding: 3px;
    border-bottom: 1px solid #c2bfbf;
}

.table-input-type2-disp .td-left {
    text-align: left;
}

.tr-top-line {
    border-top: 3px solid gray;
}

.tr-bottom-line {    
    border-bottom: 3px solid gray;
}

.tableMenu {
    width: 100%;
    margin: 10px auto;    
}

.td-listmenu {
    width: 20%;
    text-align: center;
}

.div-menubutton {
    display: inline-block;
    vertical-align: top;    
    padding-top: 30px;
    height: 150px;
    width: 230px;
    background-color: lightgray;
    line-height: 23px;
}

    .div-menubutton img {
        height: 75px;
        margin-bottom: 10px;
    }

.category-list td {
    width: 50%;
    text-align: left;    
}

.category-list-disp td {
    padding: 3px;
    text-align: center;
    font-weight: normal;
    border-bottom: 1px solid lightgray;
}

.handcursor {
    cursor: pointer;
    background-color: powderblue;
    padding: 3px 10px;
}

    .handcursor:hover {
        opacity: 0.7;
    }

    .td-must img {
        vertical-align: middle;
    }

.btn-img {
    width: 50%;
    max-width: 260px;
}

img {
    border-style: none;
}

.img-bottom {
    vertical-align: bottom;
}

.img-top {
    vertical-align: text-top;
}

.img-middle {
    vertical-align: middle;
}

img[id^="imgerr"] {
    width: 23px;
    vertical-align: text-top;
}

.finger {
    height: 21px;
    vertical-align: text-top;
}

.upMsg {
    position: absolute;
    top: 23px;
    left: 230px;
}

.text_center {
    text-align: center;
}

.letter-left {
    padding-left: 22px;
}

a:link {
    color: #cc3f2f;
    text-decoration: underline;
}

a:visited {
    color: #cc3f2f;
    text-decoration: underline;
}

a:hover {
    color: #9c1b0c;
    text-decoration: none;
}

.lnkbutton {
    display: inline-block;    
    text-align: center;
    height: 50px;
    line-height: 50px;    
}

/*#lnkbSendPwd {
    width: 40%;
    min-width: 300px;
    background-color: #2054B8;
    color: white;
    text-decoration: none;
}*/

#lnkbSave {
    width: 18%;
    min-width: 200px;
    background-color: #2054B8;
    border-radius: 10px;
    color: white;
    text-decoration: none;
}

#lnkbBack {
    width: 18%;
    min-width: 200px;
    background-color: #505050;
    border-radius: 10px;
    color: white;
    text-decoration: none;
}


.font-size-small-3 {    
    font-size: 0.7em;
}

.font-size-small-2 {    
    font-size: 0.8em;
}

.font-size-small-1 {    
    font-size: 0.9em;
}

.font-size-normal {    
    font-size: 1em;
}

.font-size-large-1 {    
    font-size: 1.2em;
    font-weight: 500;
}

.font-size-large-2 {    
    font-size: 1.4em;
    font-weight: 600;
}

.font-check-error-normal {    
    font-size: 1em;
    font-weight: 600;
    color: #CC0000;
}

.font-check-error-large-1 {
    font-size: 1.2em;
    font-weight: 600;
    color: #CC0000;
}

#txtPostNo {
    min-width: 70px;
}

.font-attention {
    color: #CC0000;
}

.bottom-margin {
    margin-bottom: 10px;
}

/*=======スマホ対応CSS===============================================================================================================================*/
@media screen and (max-width: 640px) {

    input[id^='chk'] {
        transform: scale(1.3);
        margin: 0px 5px 2px 2px;
        vertical-align: middle;
    }

    input[id^='rad'] {
        transform: scale(1.2);
        margin: 0px 5px 3px 5px;
        vertical-align: middle;
    }

    .div-main, .logo {
        width: 97%;
        margin: 0 auto;
    }

        .logo .col1 {
            display: inline-block;
            width: 100%;
            text-align: center;
        }

        .logo .col2 {
            display: inline-block;
            width: 100%;
            line-height: 1.8em;
            padding-left: 5px;
        }

        .logo img {
            width: 98%;
        }

        .logo .col3 img {
            width: 98%;
            min-width: 350px;
        }

    .div-logo-2 {
        width: 90%;
        min-width: 300px;
    }

    .div-login {
        width: 80%;
        min-width: 300px;
        margin: 10px auto 0px auto;
        line-height: 30px;
    }



    .div-qrcode-map {
        width: 100%;        
        line-height: 1.5em;
    }

    .div-qrcode-head {
        width: 98%;        
        line-height: 1.5em;
    }

        .div-qrcode-head img {
            width: 80%;
            max-width: 350px;
        }

    table td {
        line-height: 1.5em;
    }

    .table-qrcode {
        width: 100%;
    }

        .table-qrcode .col-qrcode1,
        .table-qrcode .col-qrcode2 {
            display: block;
            width: 100%;
            margin: 0 auto;
            line-height: 1.5em;
        }

    .tabel-entry-method1 {
        width: 100%;        
    }

        .tabel-entry-method1 td {
            display: block;
            width: 100%;
            margin: 0 auto;            
            line-height: 1.5em;
        }

        .tabel-entry-method1 img {
            width: 70%;
            max-width: 200px;
        }

    .tabel-entry-method2 {
        width: 100%;
        margin-top: 0px;
    }

        .tabel-entry-method2 .entry-method2-col1,
        .tabel-entry-method2 .entry-method2-col2 {
            display: block;
            width: 98%;
            margin: 0 auto;
            line-height: 1.5em;
            padding-right: 0px;
        }

        .tabel-entry-method2 img {
            width: 80%;
            max-width: 220px
        }

    .tabel-entry-corona {
        width: 100%;        
    }

        .tabel-entry-corona .entry-corona-col1,
        .tabel-entry-corona .entry-corona-col2 {
            display: block;
            width: 98%;
            margin: 0 auto;
            line-height: 1.5em;
        }

            .tabel-entry-corona .entry-corona-col1 img,
            .tabel-entry-corona .entry-corona-col2 img {
                width: 90%;
                max-width: 320px
            }

    .table-input-type1 .td-name,
    .table-input-type1 .td-name-disp {
        display: inline-block;
        width: 60%;
        padding: 5px 10px;
        border: none;
        font-weight: bold;
    }

    .table-input-type1 .td-must {
        display: inline-block;
        padding: 10px;
        border: none;
    }

    .table-input-type1 .td-input,
    .table-input-type1 .td-input-disp {
        display: inline-block;
        width: 95%;
        padding: 0px 0px 5px 10px;
        border-top: none;
    }

    .input-control:before {
        content: "\A";
        white-space: pre;
    }

    .tableDeadline {
        width: 100%;
    }

    .table-input-type2 {
        width: 100%;
    }

    .category-list {
        width: 100%;
    }

        .category-list tr {
            width: 100%;
        }

        .category-list td {
            display: block;
            width: 100%;
            padding: 0px 0px 5px 5px;
            text-align: left;
        }

    .td-listmenu {
        display: inline-block;
        width: 100%;
        text-align: center;
        padding: 10px 0px;
    }

    .div-menubutton {
        padding-top: 20px;
        height: 120px;
        width: 320px;
        line-height: 21px;
    }

        .div-menubutton img {
            height: 55px;
            margin-bottom: 3px;
        }

    .div-head {
        padding: 10px 0px 5px 5px;
    }

    .div-contents {
        padding: 10px 2px 0px 10px;
        line-height: 1.5em;
    }

    .div-contents-disp {
        padding: 10px;
        line-height: 1.5em;
        margin-bottom: 10px;
    }

    .div-error {
        padding: 5px 0px 0px 3px;
    }

    .div-disp-type1 {
        text-align: left;
        line-height: 1.5em;
        padding: 10px;
    }

    .div-disp-type2 {
        text-align: center;
        line-height: 1.5em;
        padding: 10px;
    }

    .btn-img {
        width: 40%;
        max-width: 250px;
    }

    #txtPostNo {
        min-width: 90px;
    }

    .upMsg {
        position: absolute;
        top: 10px;
        left: 195px;
    }

    #lnkbSave {
        width: 45%;
        min-width: 150px;
    }

    #lnkbBack {
        width: 45%;
        min-width: 150px;
    }

    .font-size-small-3 {        
        font-size: 12px;
    }

    .font-size-small-2 {        
        font-size: 13px;
    }

    .font-size-small-1 {        
        font-size: 14px;
    }

    .font-size-normal {        
        font-size: 15px;
    }

    .font-size-large-1 {        
        font-size: 16px;
        font-weight: 500;
    }

    .font-size-large-2 {        
        font-size: 18px;
        font-weight: 600;
    }

    .font-check-error-normal {        
        font-size: 15px;
        font-weight: 600;
        color: red;
    }


    .div-mypage .div-sp-line1 {
        display: block !important;
        width: 100%;
        margin: 0 auto;
        text-align: center;
        padding-top: 10px;
    }

        .div-mypage .div-sp-line1 img {
            width: 90%;
        }

            .div-mypage .div-sp-line1 .img-small {
                width: 80%;
            }

    .div-mypage .div-pc-line2 {
        width: 95%;
        border-radius: 5px;
        margin: 5px auto;
        text-align: center;
        background-color: #616C7A;
        opacity: 0.8;
        line-height: 23px;
        padding: 5px 0px;
    }

        .div-mypage .div-pc-line2 .font-size-large-2 {
            font-size: 14px;
        }

        .div-mypage .div-pc-line2 .font-size-large-1 {
            font-size: 14px;
        }

        .div-mypage .div-pc-line1 {
            display: none !important;
        }

    .div-login-err {
        width: 80%;
        min-width: 300px;
        margin: 0px auto;
    }

    .div-login-btn {
        width: 80%;
        min-width: 300px;
        margin: 10px auto 0 auto;
    }

    .div-login-pwsend {
        width: 80%;
        min-width: 300px;        
        margin: 15px auto;        
    }
}
