﻿@charset "utf-8";
/*共通*/

html,
body {
    background: #fff;
    height: 100%;
    margin: 0;
    padding: 0;
    overflow-y: hidden;
}

body {
    font-family: Arial, "ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","MS PGothic","ＭＳ Ｐゴシック", sans-serif;
    font-size: 16px;
    line-height: 1.61;
    margin: 0;
    padding: 0;
    color: #333;
    background-color: #f2f2f2;
    /*文字サイズ自動調整をoff*/
    -webkit-text-size-adjust: 100%;
    -moz-text-size-adjust: 100%;
    -ms-text-size-adjust: 100%;
    -o-text-size-adjust: 100%;
    text-size-adjust: 100%;
}

ul, ol, dl {
    padding: 0;
    margin: 0;
    list-style: none;
}
/*リンク*/
a img {
    border: none;
}

a:link, a:visited {
    color: #333;
    text-decoration: none;
}

a:hover, a:active, a:focus {
    text-decoration: none;
}

.align_r {
    text-align: right !important;
}

.align_l {
    text-align: left !important;
}

.align_c {
    text-align: center !important;
}

.bold {
    font-weight: bold;
}

.red, .ermsg, .att {
    color: #F00;
}

.xx-small {
    font-size: xx-small;
}

img {
    max-width: 100%;
}
/*回り込み・解除*/

.float_l {
    float: left;
}

.float_r {
    float: right;
}

.clearFix {
    zoom: 100%;
}

    .clearFix:after {
        content: " ";
        clear: both;
        height: 0;
        display: block;
        visibility: hidden;
    }

.clear {
    clear: both;
}


/*レイアウト*/

header {
    background-color: #00b0f0;
    /*height: 100px;*/
}

#main {
    overflow: auto;
    width: 100%;
    height: auto;
    /*height:calc(100% - 380px);*/
    /*margin-bottom:120px;*/
    background-image: url(wall.jpeg);
    background-repeat: no-repeat;
    background-position: right bottom;
    -moz-background-size: contain;
    background-size: contain;
    position: relative;
    background-color: #fff;
}

footer {
    background-color: #f2f2f2;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
}

/*ヘッダー*/

header h1 {
    padding: 10px;
    margin: 0px;
    height: 40px;
    float: left;
    width: 158px;
}

header h2 {
    text-align: center;
    color: #fff;
    letter-spacing: 0.1em;
    margin: 0px;
    font-size: 250%;
    line-height: 1.5em;
}

header h3 {
    text-align: center;
    color: #fff;
    letter-spacing: 0.1em;
    margin: 0px;
    padding: 0px;
    font-size: 500%;
    line-height: 1em;
}

header .logo {
    /*margin-top: -80px;*/
    position: absolute;
}

header .logout {
    position: absolute;
    right:5px
}

header .title1 {
    text-align: center;
    color: #fff;
    letter-spacing: 0.1em;
    margin: 0px;
    font-size: 160%;
    line-height: 1.5em;
    padding-top: 5px;
}

header .title2 {
    text-align: center;
    color: #fff;
    letter-spacing: 0.1em;
    margin: 0px;
    padding: 0px;
    font-size: 256%;
    line-height: 1em;
    padding-bottom: 5px;
}

header .title3 {
    text-align: center;
    color: #fff;
    letter-spacing: 0.1em;
    margin: 0px;
    font-size: 200%;
    line-height: 1.5em;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    /*padding: 0 180px;*/
    padding: 5px 180px;
}

header dl {
    float: right;
    margin-right: 10px;
}

header dt {
    margin: 0px;
    padding: 0px;
}

    header dt img {
        vertical-align: bottom;
    }

header dd {
    margin: 0px 20px;
    padding: 0px;
    color: #fff;
    font-size: 70%;
    text-align: center;
}

header:after {
    content: " ";
    clear: both;
    height: 0;
    display: block;
    visibility: hidden;
}

#lnkLogout { /*ヘッダーのログアウトリンク*/
    float: right;
    color: #fff;
    font-weight: bold;
    position: relative;
    /*top: 20px;*/
    top: 10px;
    right: 10px;
    margin-right: 5px;
    width: 80px;
    text-align: right;
}

#lnkTopMenu {
    float: right;
    color: #fff;
    font-weight: bold;
    position: relative;
    top: 10px;
    right: 10px;
    margin-right: 5px;
    width: 80px;
    text-align: right;
}

#pnlLang{
    margin-top: -10px;
    margin-right: 5px;
    float: right;
}


/***** フッター *****/

footer {
    color: #0b9bd8;
}


    footer ul {
        list-style: none;
        margin: 0px 10px;
        /*float: left;*/
        text-align: center;
    }

    footer li {
        display: inline-block;
        text-align: center;
        font-size: 75%;
        font-size: 65%;
        /*padding: 10px 0px;*/
        width: 140px;
        min-height: 29px;
    }

        footer li img {
            display: block;
            margin: auto;
        }

        footer li a {
            color: #00b0f0 !important;
            display: block;
            padding: 10px 0px;
        }

        footer li a:hover {
            background-color: #dfdfdf;
            border-color: #00b0f0;
            color: #00b0f0;
        }

        footer li::before,
        footer li::after {
            position: absolute;
            z-index: -1;
            display: block;
            content: '';
        }

        footer li,
        footer li::before,
        footer li::after {
            -webkit-box-sizing: border-box;
            -moz-box-sizing: border-box;
            box-sizing: border-box;
            -webkit-transition: all .3s;
            transition: all .3s;
        }

address,
#address {
    color: #0070c0;
    text-align: center;
    margin-top: 10px;
    /*font-size: 70%;
	font-style: normal;
	margin-right: 1em;
	position: absolute;
	bottom: 0px;
	right: 0px;
	vertical-align: middle;*/
}

version {
    font-size: 70%;
    text-align: right;
    font-style: normal;
    margin-right: 1em;
    position: absolute;
    bottom: 0px;
    right: 0px;
    vertical-align: middle;
}

/*****  ボタンコントロール *****/

.btn::before,
.btn::after {
    position: absolute;
    z-index: -1;
    display: block;
    content: '';
}

.btn,
.btn::before,
.btn::after {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-transition: all .3s;
    transition: all .3s;
}


.require {
    color: Red;
}

#enquiry .btn,
#confirm .btn,
#complete .btn {
    font-size: 180%;
    clear: both;
    color: #fff;
    background: #00b0f0;
    border: solid 1px #00b0f0;
    padding: 5px 0px;
    text-decoration: none;
    width: 200px;
    margin: 10px auto 50px;
    display: block;
    cursor: pointer;
    text-align: center;
}

    #enquiry .btn:hover,
    #confirm .btn:hover,
    #complete .btn:hover {
        background-color: #fff;
        border-color: #00b0f0;
        color: #00b0f0;
    }

/***** メッセージ画面 *****/

#message {
    width: 600px;
    color: #0070c0;
    position: relative;
    top: 30px;
    right: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    height: auto;
    text-align: center;
}

.msg {
    color: #953735;
    font-size: 180%;
    letter-spacing: 2px;
    margin-bottom: 20px;
}

#message .btn {
    font-size: 180%;
    clear: both;
    color: #fff;
    background: #00b0f0;
    border: solid 1px #00b0f0;
    padding: 5px 0px;
    text-decoration: none;
    width: 200px;
    margin: 10px auto 50px;
    display: block;
    cursor: pointer;
    text-align: center;
}

    #message .btn:hover {
        background-color: #fff;
        border-color: #00b0f0;
        color: #00b0f0;
    }

/***** インフォメーション画面 *****/

#Info {
    width: 80%;
    color: #0070c0;
    position: relative;
    top: 30px;
    right: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    height: auto;
    text-align: left;
}

/***** 通知（お知らせ）情報 *****/

.notice {
	position: relative;
	color: black;
	border: solid 1px #ec6941;
	line-height: 1.4;
	padding: 1rem;
	margin: 2em;
	border-radius: 0 5px 5px 5px;
}
.notice:after {
	position: absolute;
	content: url(../images/icon_info.png) ' Information';
	background: #ec6941;
	left: 0px;
	bottom: 100%;
	color: #fff;
	border-radius: 5px 5px 0 0;
	padding: 3px 7px 1px;
	font-size: 1rem;
	line-height: 1;
	letter-spacing: 0.05em
}
.notice ul, .notice ul li:last-child {
	margin-bottom: 0px !important;
}

/***************************************
                スマホ  
***************************************/

@media screen and (max-width: 480px) {

    body {
        overflow-y: auto;
    }

    header {
        /*height: 140px;*/
        height: 110px;
    }

        header dl {
            /*width: 30%;*/
            margin-right: 0;
        }

        header dt {
            width: 100px;
        }

        header dd {
            font-size: xx-small;
            margin: 0 0;
        }

        header h1 {
            margin-bottom: 0px;
            height: 30px;
            width: 50%;
        }

            header h1 img {
                max-width: 100%;
            }

        header h2 {
            font-size: 115%;
            /*font-size: 150%;*/
        }

        header h3 {
            font-size: 220%;
            /*font-size: 300%;*/
            margin-bottom: 20px;
        }

        header .logo {
            /*margin-top: -125px;*/
        }
        
            header .logo .imgClassNK {
                display: flex;
                width: auto;
            }

        header .title1 {
            font-size: 115%;
            /*padding-top: 50px;*/
            padding-top: 30px;
        }

        header .title2 {
            font-size: 220%;
            margin-bottom: 10px;
        }
        
        header .title3 {
            font-size: 140%;
            /*padding-top: 50px;*/
            margin: 0px;
            padding: 0;
            padding-top: 10px;
        }

    .imgClassNK {
        width: 110px;
        position: relative;
    }

    #lnkLogout {
        font-size: smaller;
        top: 10px;
        margin-right: 0px;
        /*right: 20px;*/
    }
    
    #lnkTopMenu {
        font-size: smaller;
        top: 10px;
        margin-right: 0px;
    }

    footer {
        background-color: #f2f2f2;
        position: relative;
        bottom: 0;
        left: 0;
        width: 100%;
    }

        footer ul {
            margin: 0px auto;
            float: none;
            /*height: 120px;*/
        }

        footer li {
            padding: 3% 5% 5%;
            vertical-align: top;
            width: 30%;
            font-size: xx-small;
        }

    #main {
        height: auto;
        overflow: hidden;
        padding-bottom: 50px;
        min-height: 210px;
    }

    address,
    #address {
        float: none;
        height: 1.8em;
        width: 100%;
        font-size: xx-small;
    }

    version {
        float: none;
        height: 1.8em;
        width: 100%;
        font-size: xx-small;
    }

    #login .btn,
    #result .btn,
    #enquiry .btn,
    #confirm .btn,
    #complete .btn,
    #package .btn,
    #list .btn,
    #message .btn {
        font-size: medium;
        padding: 10px 0px;
        width: 135px;
        margin: 20px auto 20px;
    }

    #message {
        width: 90%;
    }


    /* 解像度が低い場合は非表示 */
    .dtEmpty {
        display: none;
        visibility: hidden;
    }

    /*メッセージ画面*/

    .msg {
        font-size: 100%;
    }
}

input[type='checkbox']:hover
{
    cursor: pointer;
}