@charset "UTF-8";

@media screen and (max-width: 800px){
	#main_wrap{
		overflow:hidden;
	}
	
    #company,
    #facility,
    #training,
    #recreation,
    #voice,
    #recruit{
        padding: 100px 0;
        text-align: center;
    }

    /*top*/
    #top h1{
        display: none;
        width: 90%; height: 120px;
        padding-top: 40px;
        background: rgba(0, 0, 0, 0.3);
        position: absolute;
        top: 0; bottom: 0; left: 0; right: 0;
        margin: auto;
        font-family: 'hannari';
        font-size: 25px;
        letter-spacing: -0.1em;
    }
    #top h1> span{
        font-size: 32px;
        vertical-align: bottom;
    }
    #top h1> span:first-child:before{
        content: "";
        display: inline-block;
        width: 20px; height: 20px;
        border-top: 1px solid #fff;
        border-left: 1px solid #fff;
        position: relative;
        top:-10px;
        left:10px;
    }
    #top h1> span:first-child:after{
        content: "";
        display: inline-block;
        width: 20px; height: 20px;
        border-bottom: 1px solid #fff;
        border-right: 1px solid #fff;
        position: relative;
        bottom:-10px;
        right:10px;
    }
    #top h1> span:nth-child(2){
        margin-left: -7px;
    }

    /*company*/
    #company br{display: none;}
    #company > h3{
        width: 180px;
        margin: 30px auto;
    }
    #company .motto{
        padding: 50px 0;
    }
    #company .motto > h4{
        width: 80%;
        margin: 0 auto;
        text-align: left;
    }
    #company .motto > p{
        text-align: left;
        margin-bottom: 2em;
    }
    #company .motto > p:last-child{ margin-bottom: 0; }

    #company .wrapper{
        width: 100%;
    }
    #company .presWrap{
        display: block;
        width: auto !important;
        margin: 0 auto;
    }
    #company .presWrap > div{
        width: 250px;
        height: 250px;
        margin: 0 auto 20px;
    }
    #company .presWrap:first-child h3{
        width: 200px;
        margin: 0 auto 30px;
        font-size: 25px;
    }
    #company .presWrap:last-child h3{
        text-align: center;
    }
    #company .presWrap:last-child > h4{
        width: 80%;
        margin: 0 auto 15px;
    }
    #company .presWrap:last-child > p{
        width: 80%;
        margin: 0 auto 30px;
    }
    #company .presWrap:last-child > p:last-child{ margin-bottom: 0; }

    /*facility*/
    #facility .imgWrap{
        display: block;
        width: 100%;
        margin-bottom:30px;
        font-size: 0;
    }
    #facility .imgWrap > section{
        display: inline-block;
        width: 50%;
        overflow: hidden;
        margin-bottom: 0;
    }
    #facility #map_canvas{
        width: 85%;
        margin-bottom:30px;
    }
    #facility section,
    #facility section p,
    #facility aside,
    #facility aside p{
        font-size: 13px;
        width: 300px;
        margin: 0 auto;
    }
    #facility .button{
        display: block;
        position: static;
        margin: 20px auto;
    }

    /*training*/
    #training p br{display: none;}
    #training h3 br{display: block;}
    #training .stepUp{
        width: 100%;
        height: auto;
    }
    #training .stepUp > h3,
    #training .stepUp > h3:nth-of-type(1),
    #training .stepUp > h3:nth-of-type(2){
        position: relative;
        top:0; left: auto;
        margin: 0 auto;
    }
    #training .stepUp > h3:nth-of-type(2){margin-bottom: 30px;}

    #training .stepUp > section{
        position: static;
        width: 300px;
        height: 100px !important;
        margin: 0 auto 10px;
        padding: 0;
        background: none !important;
        text-align: left;
    }
    #training .stepUp > section > *{
        display: inline-block;
        vertical-align: top;
    }
    #training .stepUp > section h5{
        margin-top: 10px;
    }
    #training .stepUp > section > div{
        width: 150px !important;
        height: 100px;
        text-align: center;
    }
    #training .stepUp section > p{
        width: 140px;
        height: 80px;
        padding: 20px 0 0 8px;
        font-size: 13px;
    }
    #training .stepUp > section:nth-of-type(1) > div{background: #2a8ef2;}
    #training .stepUp section:nth-of-type(1) > p{color: #2a8ef2;}
    #training .stepUp > section:nth-of-type(2) > div{background: #2375d8;}
    #training .stepUp section:nth-of-type(2) > p{color: #2375d8;}
    #training .stepUp > section:nth-of-type(3) > div{background: #1c5dba;}
    #training .stepUp section:nth-of-type(3) > p{color: #1c5dba;}
    #training .stepUp > section:nth-of-type(4) > div{background: #003399;}
    #training .stepUp section:nth-of-type(4) > p{color: #003399;}
    #training .stepUp > section:nth-of-type(5){display: none;}

    #training aside{
        display: block;
        width: 100%;
        height: auto;
    }
    #training aside h3{
        font-size: 25px;
        /*text-align: left;*/
    }
    #training aside h3,
    #training aside section p{
        width: 80%;
        margin: 30px auto;
    }
    #training aside > h3 br{display: none;}

    #training aside > div:nth-of-type(1),
    #training aside > div:nth-of-type(2),
    #training aside > div:nth-of-type(3),
    #training aside div{
        width: 250px;
        height: 250px;
        margin: 20px auto 0;
        position: static;
    }

    #training aside section{
        display: block;
        width: 100% !important;
    }
    #training aside section > div{
        width: 250px;
        height: 250px;
        margin: 0 auto;
    }

/*recreation*/
    #recreation h3 br{display: block;}
    #recreation h3{
        width: 210px;
    }
    #recreation p{
        width: 80%;
        text-align: left;
    }
    #recreation p br{display: none;}
    #recreation article{
        width: 100%;
        height: auto;
    }
    #recreation article:nth-of-type(1){
        margin-bottom: 40px;
    }
    #recreation article:last-child h3{
        width: auto;
    }
    #recreation article > div:nth-of-type(1),
    #recreation article > div:nth-of-type(2),
    #recreation article > div:nth-of-type(3),
    #recreation article div{
        width: 250px;
        height: 250px;
        margin: 20px auto 0;
        position: static;
    }
    /*voice*/
    #voice article{
        display: block;
        /*margin: 0 auto 50px;*/
    }
    #voice article section{
        display: block;
    }
    #voice article section:first-of-type,
    #voice article section:last-of-type{
        width: 100%;
        padding-right: 0;
    }
    #voice article section h3,
    #voice article section h4{
        text-align: center;
        margin-bottom: 20px;
    }
    #voice article section div{
        width: 250px;
        height: 250px;
        margin: 0 auto;
        /*border-radius: 50%;
        overflow: hidden;*/
    }
    #voice article section span{
        display: block;
        width: 80%;
        margin: 0 auto 1em;
        font-size: 15px;
        font-weight: bold;
    }
    #voice article section p{
        margin: 0 auto 3em;
    }
    #voice article section p br{
        display: none;
    }

    /*recruit*/
    #recruit article dl:nth-child(3){
        height: auto;
    }
    #recruit .wrapper,
    #recruit .recWrap1,
    #recruit .recWrap2{
        display: block;
        width: 100%;
    }
    #recruit article{
        display: block;
        width: 80%;
        margin: 0 auto 20px;
    }
    #recruit article.career,
    #recruit article.recCom:last-child{
        padding-left: 0;
    }
    #recruit article dl,
    #recruit article dt,
    #recruit article dd{
        display: block;
        width: 100%;
        height: auto;
        padding-bottom: 10px;
    }
    #recruit article dd{
        margin-top: 5px;
    }
    #recruit article ul{
        position: relative;
        left:20px;
        width: 90%;
    }
    /*only recWrap1*/
    #recruit .recWrap1 article dl:last-child dd{
        width: 205px;
        height: 200px;
        margin: 10px auto 0;
        color: rgba(0, 0, 0, 0);
    }
    #recruit .recWrap1{ margin-bottom: 0; }

    #recruit .newgrad dl:last-child dd{background: url('../img/rec_flow01smp.png');}
    #recruit .career dl:last-child dd{background: url('../img/rec_flow02smp.png');}
    #recruit .newgrad dl:last-child dd,
    #recruit .career dl:last-child dd{
        background-repeat: no-repeat;
        background-position: center center;
        background-size: cover;
    }

    /*footer*/
    footer nav > ul{
        display: block;
        width: 220px;
        height: auto;
        padding: 0;
    }
    footer nav > ul li,
    footer nav > ul li:first-child,
    footer nav li a{
        display: block;
        width: 220px !important;
        height: 60px;
        border-left:none;
    }
    footer nav > ul li{ border-bottom: 1px solid rgba(255, 255, 255, 0.5); }
    footer nav .button{
        height: 60px;
        padding-top: 24px;
    }
}
