*{
    margin:0;
    padding:0;
    box-sizing: border-box;
}
.debug_area{
    width:100%;
    background: rgba(0, 0, 0, 0.9);
    color:white;
    padding:20px;
    position: fixed;
    top:0;
    left:0;
}
.login_page{
    display:block;
    width:100%;
    height: 100vh;
    background-size: cover !important;
    background: url(images/login_bg2.jpg);
}
.login_page.bg02{
    display:block;
    width:100%;
    height: 100vh;
    background-size:cover !important;
    background: url(images/login_bg3.jpg);
}
.login_page.bg04{
    display:block;
    width:100%;
    height: 100vh;
    background-size:cover !important;
    background: url(images/login_bg4.jpg);
}
.login_page.bg05{
    display:block;
    width:100%;
    height: 100vh;
    background-size:cover !important;
    background: url(images/login_bg5.jpg);
}
.login_inner{
    position: absolute;
    max-width:500px;
    top:0;
    bottom:0;
    right:0;
    left:0;
    margin:auto;
    height: 500px;
}
.login{
    background: rgba(255, 255, 255, 0.9);
    display: block;
    max-width:500px;
    height: 500px;
    padding:30px;
}
.icon{
    text-align: center;
}
.icon img{
    width:50px;
    height: auto;
}
.user{
    background: rgba(255, 255, 255, 0.9);
    display: block;
    position: absolute;
    width:440px;
    height: 500px;
    padding:30px;
    left:0;
}
h1{
    text-align: center;
    color:#0075a9;
    font-size:1.5em;
}
.login_page .login dl{
    display:flex;
    flex-wrap: wrap;
    margin-top: 20px;
}
.login_page .login dt{
    width:100%;
    padding:10px 10px 10px 10px;
    text-align: center;
}
.login_page .login dd{
    width:100%;
    padding:0 10px;
    text-align: center;
}
.login_page .login dd input{
    padding:8px;
}

h4{
    padding:10px 20px;
    background:#f0f3f8 ;
    margin: 10px 0;
    font-size: 1.2em;
    font-weight: normal;
}

.login_page .login .login_btn button{
    background:#0075a9 ;
    color:white;
    padding:12px 30px;
    border:none;
    width:200px;
    text-align: center;
    font-size:1.2em;
    display: block;
    margin:30px auto 0 auto;
    cursor: pointer;
}
.btn{
    background:#0075a9 ;
    color:white;
    padding:12px 20px;
    border:none;
    width:260px;
    text-align: center;
    font-size:1.2em;
    display: block;
    margin:30px auto 0 auto;
    cursor: pointer;
    text-decoration: none;
}


.enq_radio_area{
    font-size: 1.2em;
    line-height: 1.6em;
    padding:20px 0;
}

.enq_radio_area radio{
    margin-right: 0.8em;
}

.enq_new,
.enq_re{
    display: none;

}
.enq_new.active,
.enq_re.active{
    display: block;
}

.enq_form_content{
    max-width: 1000px;
    width:98%;
    margin:20px auto;
}
.enq_form_content h1{
    margin:1em auto;
}
.enq_form_box01{
    max-width: 1000px;
    width:98%;
    margin:0 auto;
    padding:30px;
    border-radius: 5px;
    border:1px solid #ccc;
    font-size: 1.1em;
    margin-bottom: 2em;
}
.enq_form_box02{
    padding:10px;
}
.enq_form_box02 h2{
    padding:10px 10px 10px 20px ;
    border-left:8px solid #ffa752;
    background:#ffe9d4;
    font-size: 1.3em;
    color:#dd7a19;
    margin-bottom: 1em;
}
.enq_st_01{
    font-weight: 800;
    text-align: center;
    margin-bottom: 1em;
}
.enq_st_02{
    text-decoration: underline 1px solid tomato;
}
.enq_st_03{
    text-align: right;
}
.form_q{
    padding:10px;
    background: #eee;
    /* text-indent: -3.1em;
    padding-left: 3.6em; */
}
.form_q2{
    padding:10px;
    background: #eee;
    /* text-indent: -4.7em;
    padding-left: 5.2em; */
}
.form_q .flexbox,
.form_q2 .flexbox{
    align-items: center;
}
.form_q .flexbox .den,
.form_q2 .flexbox .den{
    background: #666;
    display: inline-block;
    color:white;
    padding:3px 6px;
}
.form_q .flexbox .den2,
.form_q2 .flexbox .den2{
    background: #3d4689;
    display: inline-block;
    color:white;
    padding:3px 6px;
}
.form_q .flexbox .den3,
.form_q2 .flexbox .den3{
    background: #ee5a46;
    display: inline-block;
    color:white;
    padding:3px 6px;
}
.form_q .flexbox .den4,
.form_q2 .flexbox .den4{
    background: #3d893f;
    display: inline-block;
    color:white;
    padding:3px 6px;
}
.form_q .flexbox > div:nth-child(1),
.form_q2 .flexbox > div:nth-child(1){
    padding-right:5px;
    border-right:1px dashed #ccc;
    margin-right: 2%;
    text-align: center;
    height: 100%;
    width:10%;
}
.form_q .flexbox > div:nth-child(2),
.form_q2 .flexbox > div:nth-child(2){

    width:88%;
}
.form_q span,.form_q2 span{
    font-weight: 500;
    font-size: 1.3em;
    margin-right: 0.8em;
}
.form_a,
.form_a2{
    padding:10px 10px 20px 10px;
}
.form_a label{
    display: block;
    padding:3px 0;
}
.form_a input[type="radio"],
.form_a input[type="checkbox"]{
    margin-right: 0.5em;
    padding:5px;
}
.form_a input[type="number"],
.form_a2 input[type="number"]{
    padding:5px;
    width:60px;
    margin:0 1em;
}
.form_a .den,
.form_a2 .den{
    background: #ffeda6;
    padding:3px 6px;
    display: inline-block;
}
.form_a .den3,
.form_a2 .den3{
    background: #ee5a46;
    padding:3px 6px;
    display: inline-block;
    color:white;
}
.form_a input[type="text"]{
    padding:5px;
}
.form_a span{
    padding:3px;
}
.form_a input[type=radio]:checked + span,
.form_a input[type=checkbox]:checked + span{
    background: pink;
    padding:3px;
}
.form_a select{
    padding:3px;
    font-size: 1.2em;
    max-width: 100%;
}
.form_a input[type="text"]{
    padding:8px;
    max-width: 100%;
    min-width: 60%;
}
.form_a2 label{
    display: block;
    position: relative;
    padding: 5;
}
.form_a .flex label{
    display: inline-block;
    position: relative;
    padding: 5;
    margin-right:3px;
}
.form_a2 input[type=radio]:checked + span{
    display: block;
    position: absolute;
    width:100%;
    top:0;
    left:0;
    height: 100%;
    background: pink;
    z-index: -1;
}
.form_a_st_01{
    border:1px solid #ccc;
    background: #e7dcd2;
    padding:10px;
    margin:10px 0;
    display: inline-block;
}
.form_a table,
.form_a2 table{
    width: 100%;
    border-top:1px solid #ccc;
    border-left:1px solid #ccc;
    margin: 20px auto;
    border-collapse:collapse;
    border-spacing:0px;
    font-size:0.9em;
}
.form_a table th,
.form_a table td,
.form_a2 table th,
.form_a2 table td{
    padding:3px 6px;
    text-align: center;
    border-bottom:1px solid #ccc;
    border-right:1px solid #ccc;
}
.form_a table th span,
.form_a2 table th span{
    font-size:0.9em;
    color:#999;
    font-weight: normal;
}
.form_a table td:nth-child(1),
.form_a2 table td:nth-child(1){
    text-align: left;
}
.form_a table.st02 td:nth-child(1),
.form_a2 table.st02 td:nth-child(1){
    text-align: left;
}
.form_a table.st02 td:nth-child(2),
.form_a2 table.st02 td:nth-child(2){
    text-align: center;
}
.form_a textarea{
    width:100%;
    min-height:200px;
    padding:5px;
}

#forma_num5,
#forma_num16,
#forma_num17,
#forma_num18,
#forma_num19,
#forma_num27,
#forma_num26,
#forma_num28,
#forma_num30,
#forma_num31,
#forma_num33,
#forma_num36,
#formb_num11,
#formb_num12,
#formc_num4,
#formc_num5,
#formc_num21,
#formd_num13,
#forms01_num4,
#forms01_num10,
#forms01_num13,
#forms01_num17,
#forms02_num2,
#forms02_num3,
#forms02_num4,
#forms02_num5,
#forms02_num6,
#forms02_num7,
#forms02_num8,
#forms02_num9,
#forms02_num10,
#forms02_num11{
    height: 0;
    opacity: 0;
    transition: all 0.5s ease-in-out;
    display: none;
}
#forma_num5.active,
#forma_num16.active,
#forma_num17.active,
#forma_num18.active,
#forma_num19.active,
#forma_num27.active,
#forma_num26.active,
#forma_num28.active,
#forma_num30.active,
#forma_num31.active,
#forma_num33.active,
#forma_num36.active,
#formb_num11.active,
#formb_num12.active,
#formc_num4.active,
#formc_num5.active,
#formc_num21.active,
#formd_num13.active,
#forms01_num4.active,
#forms01_num10.active,
#forms01_num13.active,
#forms01_num17.active,
#forms02_num2.active,
#forms02_num3.active,
#forms02_num4.active,
#forms02_num5.active,
#forms02_num6.active,
#forms02_num7.active,
#forms02_num8.active,
#forms02_num9.active,
#forms02_num10.active,
#forms02_num11.active{
    display: block;
    opacity: 1;
    height: auto;
}

.flexbox{
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
}
.flexbox .flex{
    width:100%;
    margin:2% auto;
    border:1px solid #ccc;
    padding:10px;
    border-radius: 3px;
    text-align: center;
}
.flexbox .flex2{
    width:96%;
    margin:2%;
    border:1px solid #ccc;
    padding:10px;
    border-radius: 3px;
    text-align: center;
}

.id_pass_st01{
    padding:30px 0;
}
.id_pass_st01 .btn{
    background: #0075a9;
    color:white;
    text-decoration: none;
    padding:8px;
    width:100%;
    margin:40px auto 0 auto;
}
.login_page .login .id_pass_st01 dl{
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    border-top:1px solid #ccc;
    border-left:1px solid #ccc;
    margin-bottom: 10px;;
}
.login_page .login .id_pass_st01 dl dt{
    background: #ddd8c9;
    width:30%;
    padding:10px;
    border-right:1px dotted #ccc;
    border-bottom:1px solid #ccc;
}
.login_page .login .id_pass_st01 dl dd{
    background: #fcfcfc;
    width:70%;
    padding:10px;
    border-right:1px solid #ccc;
    border-bottom:1px solid #ccc;
}
ol,ul{
    margin-left: 2em;
    font-size: 1.1em;;
}

input.re_btn{
    width:100px;
    height: 100px;
    border-radius: 0 5px 5px 0;
    position: fixed;
    bottom:20px;
    left:0;
    border:none;
    background: #0075a9;
    color:white;
    text-align: center;
    z-index:100;
}
input.comple_btn{
    width:300px;
    padding:20px;
    display: block;
    color:white;
    background:#0075a9;
    font-weight: 700;
    font-size: 1.2em;
    border:none;
    margin:20px auto;
    z-index:100;
    text-align: center;
}

input.comple_btn2{
    width:300px;
    padding:20px;
    display: block;
    color:white;
    background:#666;
    font-weight: 700;
    font-size: 1.2em;
    border:none;
    margin:20px auto;
    z-index:100;
    text-align: center;
}

input.re_btn:disabled{

    background: #ccc;
    color:#666;
}
input.comple_btn:disabled{
    background: #ccc;
    color:#666;
}
.ex{
    background:#f4ffee;
    padding:10px;
    border-radius: 5px;
    border:1px solid #9abe88;
    margin: 20px auto;
}
.ex p{
    margin-bottom: 1em;
}
.ex p b{
    color:#416625;
    display: block;
}
#forma_num41_kome1,
#forma_num41_kome2{
    font-size: 0.9em;
    color:#666;
    margin-left: 1em;
}
#formb_num4_kome1{
    font-size: 0.9em;
    color:#666;
    margin-left: 1em;
}

#forma_num28 table tr td:nth-child(3n+1){
    width:70%;
}
#forma_num28 table tr td:nth-child(2n),
#forma_num28 table tr td:nth-child(3n){
    width:15%;
}
#formc_num9 table tr td,
#formc_num10 table tr td,
#formc_num11 table tr td{
    width:18%;
}
#formc_num9 table tr td:nth-child(6n+1),
#formc_num10 table tr td:nth-child(6n+1),
#formc_num11 table tr td:nth-child(6n+1){
    width:28%;
}
#formc_num13 table tr td{
    width:20%;
}
#formc_num13 table tr td:nth-child(3n+1){
    width:60%;
}
#formb_num7 table tr td{
    width:20%;
}
#formb_num7 table tr td:nth-child(3n+1){
    width:20%;
    text-align: center;
}
#formb_num7 table tr td:nth-child(2n){
    width:20%;
    text-align: center;
}
#formb_num7 table tr td:nth-child(3n){
    width:60%;
    text-align: left;
}
#formb_num3 input{
    padding:2px;
}

#formd_num14 table tr td:nth-child(1){
    width:70%;
}
#formd_num14 table tr td:nth-child(2),
#formd_num14 table tr td:nth-child(3),
#formd_num14 table tr td:nth-child(4){
    width:10%;
}

#formd_num16 dl {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    border-top:1px solid #666;
    border-left:1px solid #666;
    margin:10px 0;
}
#formd_num16 dl dt{
    width:40%;
    padding:5px;
    font-size: 0.9em;;
    background: #f7f0e7;
    border-right:1px dashed #666;
    border-bottom:1px solid #666;
}
#formd_num16 dl dd{
    width:60%;
    padding:5px;
    font-size: 0.9em;;
    background: #FFF;
    border-right:1px solid #666;
    border-bottom:1px solid #666;
}


.err_01_32{
    color:tomato;
    padding:10px;
    display:block;
    border:2px solid tomato;
    font-weight:bold;
}
.output_content{
    max-width: 1400px;
    margin:0 auto;
}
dl.output {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    border-top:1px solid #666;
    border-left:1px solid #666;
    margin:2em;
}
dl.output dt{
    width:50%;
    padding:5px;
    font-size: 0.9em;;
    background: #ccc;
    border-right:1px dashed #666;
    border-bottom:1px solid #666;
}
dl.output dd{
    width:50%;
    padding:5px;
    font-size: 0.9em;;
    background: #FFF;
    border-right:1px solid #666;
    border-bottom:1px solid #666;
}
.para2 label{
    width:48%;
}
.para2 label:nth-child(odd){
    margin-right: 2%;
}
.para2 label:nth-child(even){
    margin-left: 2%;
}
.para3 label{
    width:32%;
}
.para3 label:nth-child(3n+1){
    margin-right: 2%;
}
.para3 label:nth-child(3n){
    margin-left: 2%;
}

#confirm{
    position: fixed;
    z-index: 100;
    background: rgba(0, 0, 0, 0.9);
    height: 100vh;
    overflow: auto;
    width:100%;
    top:0;
}
#confirm #confirm_area{
    width:1000px;
    margin:20px auto;
    background: #FFF;
    padding:30px;
}
#confirm dl{
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    border-top:1px solid #ccc;
    border-left:1px solid #ccc;
}
#confirm dl dt{
    width:50%;
    padding:5px;
    background: #efefef;
    border-right:1px dashed #ccc;
    border-bottom:1px solid #ccc;
}
#confirm dl dd{
    width:50%;
    padding:5px;
    border-right:1px solid #ccc;
    border-bottom:1px solid #ccc;
}
dl.sports_dl{
    border-top:1px solid #ccc;
    border-left:1px solid #ccc;
}
dl.sports_dl dt{
    width:20%;
    border-right:1px solid #ccc;
    border-bottom:1px solid #ccc;
    padding:10px;
    background: #f7f5f1;
}
dl.sports_dl dd{
    width:80%;
    border-right:1px solid #ccc;
    border-bottom:1px solid #ccc;
    padding:10px;
}
.form_a dl.sports_dl dd input[type="text"].sports_dl_input_s01{
    min-width: 100px;
}
@media screen and (max-width: 800px) {
    body{
        font-size: 0.8em;
    }
    h1{
        text-align: center;
        color:#0075a9;
        font-size:1.3em;
    }
    .login_inner{
        position: relative;
        width:100%;
        top:0;
        bottom:0;
        right:0;
        left:0;
        margin:auto;
        height: auto;
        padding:10px;
    }
    .login{
        background: rgba(255, 255, 255, 0.9);
        display: block;
        position: relative;
        width:100%;
        height: auto;
        padding:30px;
        right:0;
        margin:10px 0 0 0;
    }
    .user{
        background: rgba(255, 255, 255, 0.9);
        display: block;
        position: relative;
        width:100%;
        height: auto;
        padding:30px;
        left:0;
    }
    .login dt{
        width:100%;
        padding:18px 10px 10px 10px;
        text-align: center;

    }
    .login dd{
        width:100%;
        padding:0 10px;
        text-align: center;
    }
    .enq_form_box01 {
        max-width: 1000px;
        width: 98%;
        margin: 0 auto;
        padding: 10px;
        border-radius: 5px;
        border: 1px solid #ccc;
        font-size: 1em;
        margin-bottom: 2em;
    }
    .form_a,
    .form_a2{
        padding:5px 2px 10px 2px;
    }
    .form_q .flexbox > div:nth-child(1),
    .form_q2 .flexbox > div:nth-child(1){
        padding-right:5px;
        border-right:none;
        border-bottom:1px dashed #ccc;
        margin-right: 0;
        text-align: center;
        height: auto;
        margin-bottom: 5px;
        width:100%;
    }
    .form_q .flexbox > div:nth-child(2),
    .form_q2 .flexbox > div:nth-child(2){

        width:100%;
    }
    .form_a table th,
    .form_a table td,
    .form_a2 table th,
    .form_a2 table td{
        font-size: 0.8em;
    }
    .enq_form_box02 h2 {
        padding: 6px 6px 6px 12px;
        border-left: 5px solid #ffa752;
        background: #ffe9d4;
        font-size: 1.1em;
        color: #dd7a19;
        margin-bottom: 1em;
    }
    ol, ul {
        margin-left: 2em;
        font-size: 0.9em;
    }
    .table_outer{
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }
    .table_outer table{
        min-width: 480px;
    }
    input.re_btn{
        width:70px;
        height:60px;
        border-radius: 5px 0 0 5px;
        position: fixed;
        bottom:20px;
        left:inherit;
        right:0;
        border:none;
        background: #0075a9;
        color:white;
        border:2px solid #FFF;
        text-align: center;
        font-size: 0.8em;
    }
    table{
        margin:0;
    }
    table tr th.fixed,
    table tr td.fixed{
        /*少しサイズを調整*/
        background: #eee;
        border-bottom: 1px solid #FFF;
        z-index: 2;
        /*先頭列を左に固定*/
        position:sticky;
        left:0;
    }
    table tr th.fixed.w40,
    table tr td.fixed.w40{
        width:40px;
    }
    table tr th.fixed.w120,
    table tr td.fixed.w120{
        width:120px;
    }
    table tr th.fixed2,
    table tr td.fixed2{
        /*少しサイズを調整*/
        width:10%;
        background: #eee;
        border-bottom: 1px solid #FFF;
        z-index: 2;
        
 
        /*先頭列を左に固定*/
        position:sticky;
        left:0;

    }
    table tr th.fixed3,
    table tr td.fixed3{
        /*少しサイズを調整*/
        width:10%;
        background: #eee;
        border-bottom: 1px solid #FFF;
        z-index: 2;
        


        /*先頭列を左に固定*/
        position:sticky;
        left:10%;

    }
    #forma_num28 table tr td:nth-child(3n + 1){
        width: 200px;
    }
    #forma_num28 table tr td:nth-child(2n), 
    #forma_num28 table tr td:nth-child(3n) {
        width: inherit;
    }
    #formb_num7 table tr td:nth-child(3n+1){
        width:10%;
    }
    #formb_num7 table tr td:nth-child(2n){
        width:10%;
    }
    #formb_num7 table tr td:nth-child(3n){
        width:80%;
    }
    .form_a input[type="radio"],
    .form_a input[type="checkbox"]{
        margin-right: 0.5em;
        padding:1px;
    }
    .form_a input[type="number"],
    .form_a2 input[type="number"]{
        padding:1px;
        width:30px;
        margin:0 1em;
    }

    #formd_num3 .para2 label,
    #formd_num13 .para2 label,
    #formd_num15 .para2 label{
        width:96%;
    }
    #formd_num3 .para2 label:nth-child(odd),
    #formd_num13 .para2 label:nth-child(odd),
    #formd_num15 .para2 label:nth-child(odd){
        margin:0 2% 0 2%;
    }
    #formd_num3 .para2 label:nth-child(even),
    #formd_num13 .para2 label:nth-child(even),
    #formd_num15 .para2 label:nth-child(even){
        margin:0 2% 0 2%;
    }
    .para3 label{
        width:32%;
    }
    .para3 label:nth-child(3n+1){
        margin-right: 2%;
    }
    .para3 label:nth-child(3n){
        margin-left: 2%;
    }
    #formd_num17 select{
        width:80px;
    }
    #formd_num17 option{
        width:80px;
    }
    #confirm #confirm_area{
        width:100%;
        margin:10px auto;
        background: #FFF;
        padding:10px;
    }
    #confirm dl{
        display: flex;
        flex-direction: row;
        flex-wrap: wrap;
        border-top:1px solid #ccc;
        border-left:1px solid #ccc;
    }
    #confirm dl dt{
        width:100%;
        padding:5px;
        background: #efefef;
        border-right:1px solid #ccc;
        border-bottom:1px solid #ccc;
    }
    #confirm dl dd{
        width:100%;
        padding:5px;
        border-right:1px solid #ccc;
        border-bottom:1px solid #ccc;
    }

}
