@charset "UTF-8";
/* CSS Document */



body {
    background-color: black !important;
    display: block;
    margin: 0 !important;
    padding: 0 !important;
    background: #000;
    font-family: "Sawarabi Mincho";
    color: #FFF;
}
header {
    max-width: 1440px;
    min-width: 1024px;
    margin: auto;
    padding: 0;
}


h2 {
    font-size: 100%;
    font-family: "M PLUS 1p";
    margin-top: 2.5em;
}

section {
    max-width: 1440px;
    min-width: 1024px;
    height: 814px;
    margin: auto;
    padding: 0;
}

#top section {
    background: url("../images/top.jpg") no-repeat;
    background-size: contain;
    background-position: top;
}
#company section {
    background: url("../images/company.jpg") no-repeat;
    background-size: contain;
    background-position: top;
}
#access section {
    background: url("../images/access.jpg") no-repeat;
    background-size: contain;
    background-position: top;
}

#top p {
}

article {
    width: 49%;
    margin-left: 45.5%;
}
#access article,
#company article {
    width: 49%;
    margin-left: 31%;
}

/** NAVI **/
section nav {
    margin-bottom: 2em;
    font-family: "M PLUS 1p";
    letter-spacing: 0.15em !important;
}

nav ul {
    display: flex;
    padding-top: 1em;
}
nav ul li {
    margin-right: 1.12em;
    list-style: none;
    color: #fff;
    display: inline-block;
    text-decoration: none;
}
nav li a:hover,
#access nav ul li.access,
#company nav ul li.company,
#top nav ul li.top {
    border-bottom: solid 3px rgba(255,0,4,1.00);
}

nav li a {
    color: #fff;
    display: inline-block;
    text-decoration: none;
}

#company p {
    line-height: 1.5;
}
#company dl {
}
#company dt {
    width: 15%;
    float: left;
}
#company dd {
    width: 70%;
    margin-left: 15%;
}


#page-top {
    position: fixed;
    bottom: 100px;
    right: 50px;
    margin: 0;
    padding: 0;
    z-index: 500;
}

.spp,
.sp{
	display:none;
}
.pc {
	display: block;
}



@media screen and (max-width: 768px) {
    .spp,
    .sp{
        display: block !important;
    }
    .pc {
        display: none !important;
    }
    
    
    #sp-navi-btn ,
    #sp-navi-btn span {
    	display: block;
    	transition: all .3s;
    }
    #sp-navi-btn {
    	display: block;
    	width: 45px;
    	height: 32px;
    	position: relative;
    	top: -3px;
        right: 0;
        bottom: 10px;
        left: -40px;
        margin: auto;
    }
    #sp-navi-btn span {
    	position: absolute;
    	left: 0;
    	width: 100%;
    	height: 5px;
    }
    #sp-navi-btn span:nth-of-type(1) {
    	top: 0px;
    	background-color: #184093;
    }
    #sp-navi-btn span:nth-of-type(2) {
    	top: 10px;
    	background-color: #ff9c00;
    }
    #sp-navi-btn span:nth-of-type(3) {
    	top: 20px;
    	background-color: #184093;
    }
    #sp-navi-btn.open span:nth-of-type(1) {
    	-webkit-transform: translateY(10px) rotate(-45deg);
    	transform: translateY(10px) rotate(-45deg);
    	background-color: #535353;
    }
    #sp-navi-btn.open span:nth-of-type(2) {
    	opacity: 0;
    }
    #sp-navi-btn.open span:nth-of-type(3) {
    	-webkit-transform: translateY(-10px) rotate(45deg);
    	transform: translateY(-10px) rotate(45deg);
    	background-color: #535353;
    }
    #sp-navi-btn p.menu:before {
		position: absolute;
		content: "MENU";
		color: #666;
		font-size: 180%;
		left: 120%;
		top: -3px;
        line-height: 1;
	}
	#sp-navi-btn.open p.menu:before {
		content: "Close"
	}


    nav {
        margin: 0;
        height: 50px;
        width: 100%;
        left: 0;
    }
    nav.sp {
        border-top: solid 1px #184093;
        border-bottom: solid 1px #184093;
        position: relative;
        background-color: #FFF;
    }
    nav ul.nv {
        display: none;
        padding: 0;
/*        position: absolute;
*/        top: 2px;
        left: 0;
        width: 100%;
        height: auto;
        z-index: 999999;
    }
    nav.sp ul li {
        line-height: 52px !important;
        display: block;
        border-bottom: 1px solid #FFF;
        background: #184093;
        width: 100%;
        position: relative;
    }
    nav ul li a {
        padding: 0 1.3em !important;
        width:  100%;
        color: #FFF;
        display: block;
        box-sizing: border-box;
    }
    nav ul li {
        border-left: none;
    }
    nav ul li:last-child {
        border-right: none;
    }

    #sub1 {
        padding: 0 1.3em;
		width: 100%;
		color: #FFF;
		box-sizing: border-box;
    }
    #sub1::before {
        font-family: "Font Awesome 5 Free";
		content: "\f067";
		font-size: 120%;
		font-weight: 900;
		color: #FFF;
		position: absolute;
		right: 18px;
		top: 0;
    }
    #sub1.open::before {
        font-family: "Font Awesome 5 Free";
		content: "\f068";
		font-size: 120%;
		font-weight: 900;
		color: #FFF;
		position: absolute;
		right: 18px;
		top: 0;
    }
    nav ul ul#material {
        display: none;
        width: 100%;
    }
    nav ul ul#material li {
		box-sizing: border-box;
		background: #006ac6;
		width: 100%;
		display: block;
		border-bottom: solid 1px #FFF;
        padding-left: 1em;

    }

    
}





