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

/*==========================
　　　　　　COMMON
==========================*/

.pc-style{
	display: none !important;
}

.t-style{
	display: none !important;
}

.pt-style{
	display: none !important;
}

p{
	font-size: 16px;
}

h2{
	margin: 0 0 30px 0;
	padding: 45px 0 0 20px;
	font-size: 32px;
}

h2 .ja{
	margin: 0 0 0 10px;
	font-size: 14px;
}


/*==========================
　　　　　　HEADER
==========================*/

/*____ドロワーメニュー____*/

#gnav{
	width: 100vw;
}

#gnav{
	padding: 100px 0 0 0;
}

#gnav li{
	width: 80vw;
}

#navbtn{
	width: 60px;
	height: 60px;
}

.ham-txt{
	top: 7px;
	left: 8px;
	font-size: 15px;
}

.ham{
	height: 2px;
	left: 10px;
}

.ham:nth-child(2){
	width: 40px;
	top: 32px;
}

.ham:nth-child(3){
	width: 30px;
	top: 42px;
}

.tapped .ham:nth-child(2){
	width: 30px;
	top:39px;
	left: 16px;
}

.tapped .ham:nth-child(3){
	top: 39px;
	left: 16px;
}

.headinner{
	width: 90vw;
}

/*==========================
　　　　　　MAIN
==========================*/

/*____共通____*/

section{
	padding: 40px 0;
}

.secinner{
	width: 90vw;
}

.secinner p, footer p{
	padding-left: 20px;
	line-height: 1.7em;
	box-sizing: border-box;
}

/*____トップページ____*/

#mv{
	background: url('../images/mv-m.jpg') no-repeat right top;
	background-size: cover;
}

#mv h1{
	width: 95vw;
	height: 23.75vw;
	position: absolute;
	top: 20vh;
	left: 0;
	right: 0;
	margin: 0 auto;
}

#mv .scroll {
	font-size: 15px;
}

#mv .scroll::after {
	width: 1px;
}

#about{
	background-size: 100vw 37.5vw;
}

#about h2{
	background-size: 55px 55px;
}

#service{
	background: url('../images/servicebg-m.jpg') no-repeat left top;
	background-size: cover;
}

#service .servicecontainer{
	width: 90vw;
	margin: 0 auto;
	padding: 40px 20px;
}

#service h2{
	background-size: 55px 55px;
}

#service .servicelist{
	margin: 0 0 20px 0;
}

#recruit h2{
	background-size: 55px 55px;
}

#company h2{
	background-size: 55px 55px;
}

#company table{
	width: 80vw;
	margin: 0 auto 20px auto;
	font-size: 15px;
}

#company table th{
	display: block;
	width: 80vw;
	padding: 0 10px;
	border-bottom: none;
	box-sizing: border-box;
}

#company table td{
	display: block;
	width: 80vw;
	margin: 0 0 15px 0;
	padding: 10px;
	border-bottom: 1px solid #777;
	line-height: 1.7em;
	box-sizing: border-box;
}

#company .map iframe{
	display: block;
	width: 80vw;
	height: 50vw;
	margin: 0 auto;
}


/*==========================
　　　　　　FOOTER
==========================*/

footer{
	padding: 40px 0;
}

footer .footinner{
	width: 90vw;
}

#contact h2{
	background-size: 55px 55px;
}

#contact .mt40{
	margin-top: 20px !important;
}

#contact dl{
	padding-left: 19px;
}

#contact dl dt{
	width: 90px;
	padding: 5px 0 0 0;
	font-size: 15px;
}

#contact dl dd{
	margin: 0;
	letter-spacing: 0.05em;
	font-family: 'Open Sans', sans-serif;
	font-size: 25px;
}

#contact .address{
	margin: 60px 0 0 0;
}

#contact .footlogo{
	width: 160px;
	height: 35px;
	margin: 0 0 10px 20px;
}

#contact .privacy{
	display: block;
	margin: 20px 0 0 20px;
}

footer .copy{
	margin: 0;
	padding: 0;
	font-size: 13px;
}

/*____ページトップ____*/

.pagetop{
	display:none;
}

.pagetop a{
	display: inline;
	padding: 0;
	position: fixed;
	vertical-align: bottom;
	right: 3%;
	bottom: 3%;
	z-index: 400;
}

.pagetop a img{
	width: 50px;
	height: 150px;
}