body{
     height: 100vh;
	  background-image: url("../01_img/bg.jpg"), url("../01_img/bg.jpg"); /* 背景画像を指定し、反転用に同じ画像を2つ指定 */
	  background-repeat: repeat-y, repeat-y; /* 縦方向に繰り返し */
	  background-position: top, bottom;
}
link[rel="icon"] {
    display: initial; /* もとのディスプレイプロパティに戻す */
}
link[rel="apple-touch-icon"] {
    display: initial; /* もとのディスプレイプロパティに戻す */
}
img{width:100%;
}
input{
	display: none;
}

label{
	display: none;
}

.S_list label{
	display: block;
}
.contentTitle{
	display: none;
}
.container{
}

#home .logo{
	width:30%;
	text-align: center;
	margin: 100px auto;
	margin-top: 200px;
}

#home .menu{
	width:80%;
	max-width: 800px;
	margin: 0px auto;
	text-align: center;
}

#home .menu a{
	display: block;
	width:20%;
	max-width: 150px;
	margin:0.5%;
	padding: 2.62%;
	text-align: center;
	float: left;
	background: rgba(255,255,255,0.7);
	font-size:min(2vw,20px);
	color:black;
	border-bottom: solid 4px black;
	overflow: hidden;
	text-decoration: none;
}

#content .logo{
	width:11%;
	text-align: center;
	margin-top: 10px;
	margin-left: 50px;
	float: left;

}

#content .menu{
	width:80%;
	max-width: 800px;
	float: right;
	text-align: center;
	margin-top: 10px;
	margin-right: 50px;
}

#content .menu a{
	display: block;
	width:20%;
	max-width: 150px;
	margin:0.5%;
	padding: 2.62%;
	text-align: center;
	float: left;
	background: rgba(255,255,255,0.7);
	font-size:min(2vw,20px);
	color:black;
	border-bottom: solid 4px black;
	overflow: hidden;
	text-decoration: none;
}

#service .service {
	border-bottom: solid 4px rgb(140,196,86)!important;
}

#product .product {
	border-bottom: solid 4px rgb(140,196,86)!important;
}

#contact .contact {
	border-bottom: solid 4px rgb(140,196,86)!important;
}

#company .company {
	border-bottom: solid 4px rgb(140,196,86)!important;
}
#companyP .company {
	border-bottom: solid 4px rgb(140,196,86)!important;
}

.menu a:hover{
	border-bottom: solid 8px rgb(140,196,86)!important;
	transition: border-bottom .2s;
}

#service .wrap{
	clear: both;
	width:100%;
	margin:200px auto;
	text-align: center;
	padding-top: 100px;
}

#service .wrap img{
	width:100%;
}

#service .S_list{
	padding: 30px;
	width:15%;
	height: 60vh;
	margin:0vw 1vw;
	background:rgba(255,255,255,.77);
	display: inline-block;
}

#service .coment{
	width:100%;
	height: 60%;
}

#service .S_list a{
	display: block;
	width:80%;
	max-width: 150px;
	margin:0 auto;
	padding: 2.62%;
	text-align: center;
	background: rgba(255,255,255,1);
	font-size:min(2vw,20px);
	color:black;
	border-bottom: solid 4px black;
	text-decoration: none;	
}	

#service .S_list .t {
	margin-top:1vw;
	font-size: 1.2vw;
	font-weight: bold;
}	

#service .S_list .c {
	margin-top:1vw;
	font-size: 1vw;
	line-height: 3vh;
}	

#product .wrap{
	clear: both;
	width:100%;
	margin:200px auto;
	text-align: center;
	padding-top: 100px;
	padding-bottom: 100px;
}
}

#product .wrap img{
	width:100%;
}

#product .S_list{
	padding: 30px;
	width:15%;
	height: 29vh;
	margin:1vw 1vw;
	background:rgba(255,255,255,.77);
	display: inline-block;
}

#product .coment{
	width:100%;
	height: 30%;
}

#product .S_list a{
	display: block;
    width: 80%;
    max-width: 150px;
    margin: 00.5vw auto;
    padding: 2.62%;
    text-align: center;
    background: rgba(140, 196, 86, 1);
    font-size: min(2vw,20px);
    color: white;
    text-decoration: none;
}	

#product .S_list .t {
	margin-top:1vw;
	font-size: 1.2vw;
	font-weight: bold;
}	

#product .S_list .c {
	margin-top:1vw;
	font-size: 1vw;
}


#company .wrap{
	clear: both;
	width:100%;
	margin:200px auto;
	text-align: center;
	padding-top: 100px;
}

#company .wrap img{
	width:30%;
	float: left;
}

#company .S_list{
	padding: 30px;
	width: 77%;
	height: 66vh;
	margin:0vw 1vw;
	background:rgba(255,255,255,.77);
	display: inline-block;
}

#company .coment{
	width:100%;
	height: 25%;
}

#company .S_list a{
	display: block;
	width:77%;
	margin:10px auto;
	padding: 1%;
	text-align: center;
	background: rgba(255,255,255,1);
	font-size:min(2vw,20px);
	color:black;
	text-decoration: none;	
	clear: both;
	display: flow-root;
}


#company .S_list .t {
	margin-top:1vw;
	font-size: 1.2vw;
	font-weight: bold;
}	

#company .S_list .c {
	margin-top:1vw;
	font-size: 1vw;
}

#company .S_list .c2 {
	margin-top: 4vw;
    font-size: 2vw;
    float: right;
    padding-right: 120px;
}

#companyP .wrap{
	clear: both;
	width:100%;
	margin:200px auto;
	text-align: center;
	padding-top: 100px;
}

#companyP .wrap img{
	width:30%;
	float: left;
}

#companyP .S_list{
	padding: 30px;
	width: 77%;
	height: 66vh;
	margin:0vw 1vw;
	background:rgba(255,255,255,.77);
	display: inline-block;
}

#companyP .coment{
	width:100%;
	height: 25%;
}

#companyP .S_list a{
	display: block;
	width:77%;
	margin:10px auto;
	padding: 1%;
	text-align: center;
	background: rgba(255,255,255,1);
	font-size:min(2vw,20px);
	color:black;
	text-decoration: none;	
	clear: both;
	display: flow-root;
}


#companyP .S_list .t {
	margin-top:1vw;
	font-size: 1.2vw;
	font-weight: bold;
}	

#companyP .S_list .c {
    margin-top: 1vw;
    font-size: 1vw;
    /* text-align: left; */
    border-bottom: solid 4px black;
}

#companyP .S_list .c2 {

    font-size: 1.5vw;
    text-align: left;
    
}
#companyP .S_list .c3 {

	margin-top: 1vw;
    
}



#contact .wrap{
	clear: both;
	width:100%;
	margin:200px auto;
	text-align: center;
	padding-top: 100px;
}

#contact .wrap img{
	width:30%;
	float: left;
}

#contact .S_list{
	padding: 30px;
	width: 77%;
	height: 66vh;
	margin:0vw 1vw;
	background:rgba(255,255,255,.77);
	display: inline-block;
}

#contact .coment{
	width:100%;
	height: 25%;
}

#contact .S_list a{
	display: block;
	width:77%;
	margin:10px auto;
	padding: 1%;
	text-align: center;
	background: rgba(255,255,255,1);
	font-size:min(2vw,20px);
	color:black;
	text-decoration: none;	
	clear: both;
	display: flow-root;
}


#contact .S_list .t {
	margin-top:1vw;
	font-size: 1.2vw;
	font-weight: bold;
}	

#contact .S_list .c {
    margin-top: 1vw;
    font-size: 1vw;
    /* text-align: left; */
    border-bottom: solid 4px black;
}

#contact .S_list .c2 {

    font-size: 1.5vw;
    text-align: left;
    
}
#contact .S_list .c3 {

	margin-top: 1vw;
    
}



footer{
	clear: both;
	width:100%;
	text-align: center;
	color: white;
	background: rgb(235,94,0);
	padding-top: 10px;
	padding-bottom: 10px;
	margin-top: 50px;
	position: fixed; 
	bottom: 0; 
	}

@media screen and (max-width: 912px) {
    body {
        height: 100vh;
        background-image: url("../01_img/bg.jpg");
        background-size: cover;
        background-position: center center;
    }
    label{
    	display: block;
    }

	#content .logo{
	width:29%;
	text-align: center;
	margin-top: 10px;
	margin-left: 50px;
	float: left;
	}

    #content .mButton{
	display: block;
	position: absolute;
	top: 30px;
    right: 0px;
	width:108px;
	}

	#content .menu{
	width:100%;
	max-width:100%;
	text-align: center;
	margin: 0 auto;
	position: fixed;
    right: -1500px;
    top:150px;
    background: rgba(255,255,255,1);
    padding-bottom: 20px;
    transition: right .2s;
	}


	#content .menu a {
	width:18%;
	}

	#menu-btn-check:checked ~ .menu{
	right: 0px;	
	transition: right .2s;
	}
	#home .logo{
	width:60%;
	}

	#home .menu{
	width:100%;
	max-width: 100%;
	margin: 0px auto;
	text-align: center;
	}

    #home .menu a{
	width:30% ;
	max-width:50%;
	margin:4.5%;
	padding: 4.5%;
	border-bottom: solid 3px black;
	}

	#service .wrap{
	clear: both;
	width:100%;
	margin:1vh auto;
	text-align: center;
	padding-top: 1vh;
	}

	#service .S_list{
	padding: 8px;
	width:45%;
	height: 30vh;
	margin:0vw 1vw;
	margin-top: 1vw;
	background:rgba(255,255,255,.77);
	display: inline-block;
	}

	#service .S_list .c {
    display:none;
	}

	#service .coment{
	width:100%;
	height: 15%;
	}

	#service .S_list .t {
    margin-top: 1vw;
    font-size: 2.2vw;
    font-weight: bold;
	}

	#product .wrap{
	clear: both;
	width:100%;
	margin:1vh auto;
	text-align: center;
	padding-top: 1vh;
	}

	#product .S_list{
	padding: 8px;
	width:45%;
	height: 24vh;
	margin:0vw 1vw;
	margin-top: 1vw;
	background:rgba(255,255,255,.77);
	display: inline-block;
	}

	#product .S_list .c {
    margin-top: 1vw;
    font-size: 2vw;
	}

	#product .coment{
	width:100%;
	height: 15%;
	}

	#product .S_list .t {
    margin-top: 1vw;
    font-size: 2.2vw;
    font-weight: bold;
	}

	#company .wrap{
	clear: both;
	width:100%;
	margin:200px auto;
	text-align: center;
	padding-top: 40px;
	}

	#company .wrap img{
	width:50%;
	float: left;
	}

	#company .S_list .t {
	margin-top:1vw;
	font-size: 3.2vw;
	font-weight: bold;
	}	

	#company .S_list .c {
    margin-top: 2.5vw;
    font-size: 2vw;
	}

	#company .S_list .c2 {
    margin-top: 6vw;
    font-size: 3vw;
    float: right;
    padding-right: 30px;
    }
	#companyP .S_list .t {
    margin-top: 1vw;
    font-size: 3.2vw;
    font-weight: bold;
	}
	#companyP .S_list .c {
    margin-top: 5vw;
    font-size: 2vw;
    /* text-align: left; */
    border-bottom: solid 4px black;
    padding: 1vw;
	}

	#companyP .S_list .c2 {
    font-size: 2vw;
    text-align: left;
    }
	#companyP .S_list .c3 {

	margin-top: 1vh;
    
	}

	#contact .wrap{
	clear: both;
	width:100%;
	margin:200px auto;
	text-align: center;
	padding-top: 40px;
	}
	#contact .S_list .t {
	margin-top:1vw;
	font-size: 3.2vw;
	font-weight: bold;
	}	



	footer{
	color: white;
	background: rgb(235,94,0);
	padding-top: 10px;
	padding-bottom: 10px;
	margin-top: 50px;
	position: fixed; 
	bottom: 0; 
	font-size:min(3vw,40px);

	}
}


@media screen and (max-width: 600px) {
    body {
    height: 100vh;
    background-image: url("../01_img/bg.jpg");
    background-size: cover;
    background-position: center center;
	}
   #content .mButton{
	display: block;
	position: absolute;
	top: 30px;
    right: 0px;
	width:88px;
	}

	#content .menu{
	width:100%;
	text-align: center;
	margin: 0 auto;
	position: fixed;
    right: -600px;
    top:150px;
    background: rgba(255,255,255,1);
    padding-bottom: 20px;
    transition: right .2s;
	}


	#content .menu a{
	display: block;
	width:80%;
	max-width: 80%;
	margin:0.5%;
	padding: 5%;
	text-align: center;
	float: none;
	font-size:min(10vw,20px);
	background: rgba(255,255,255,1);
	overflow: hidden;
	display: inline-block;
	}

	.contentTitle{
	display: block;
	width:50%;
	margin:0 auto;
	margin-top:16vh;
	padding: 2.62%;
	text-align: center;
	background: rgba(255,255,255,0.7);
	font-size:min(4vw,20px);
	color:black;
	border-bottom: solid 4px rgb(140,196,86);
	clear: both;

	}

	#home .logo{
	width:80%;
	text-align: center;
	margin: 7vh auto;
	margin-top: 7vh;
	}

	#home .menu{
	width:90%;
	max-width: 100%;
	margin: 0px auto;
	text-align: center;
	}

    #home .menu a{
	width:80% !important;
	max-width: 100vw;
	margin:4.5%;
	padding: 4.5%;
	font-size:min(7vw,70px);
	border-bottom: solid 3px black;
	}
	
	#content .logo{
	width:39%;
	position: absolute;
	top: 30px;
    left: 0px;
	
	}

	#service .wrap{
	clear: both;
	width:100%;
	margin:1vh auto;
	text-align: center;
	padding-top: 1vh;
	}

	#service .S_list{
	padding: 8px;
	width:41%;
	height: 24vh;
	margin:0vw 1vw;
	margin-top: 1vw;
	background:rgba(255,255,255,.77);
	display: inline-block;
	}

	#service .coment{
	width:100%;
	height: 25%;
	}

	#product .wrap{
	clear: both;
	width:100%;
	margin:1vh auto;
	text-align: center;
	padding-top: 1vh;
	}

	#product .S_list{
	padding: 8px;
	width:41%;
	height: 19vh;
	margin:0vw 1vw;
	margin-top: 1vw;
	background:rgba(255,255,255,.77);
	display: inline-block;
	}

	#product .coment{
	width:100%;
	height: 25%;
	}

	#company .wrap{
	clear: both;
	width:100%;
	margin:1vh auto;
	text-align: center;
	padding-top: 1vh;
	}

	#company .wrap img{
	width:50%;
	float: left;
	}

	#company .S_list .t {
	margin-top:1vw;
	font-size: 4.4vw;
	font-weight: bold;
	}	


	#company .S_list .c {
    margin-top: 3.5vw;
    font-size: 3vw;
	}

	#company .S_list .c2 {
    margin-top: 6vw;
    font-size: 4vw;
    float: right;
    padding-right: 30px;
    }

    #company .S_list{
	padding: 30px;
	width: 77%;
	height: 45vh;
	margin:0vw 1vw;
	background:rgba(255,255,255,.77);
	display: inline-block;
	}
    #company .S_list a{
	display: block;
	width:99%;
	margin:10px auto;
	padding: 1%;
	text-align: center;
	background: rgba(255,255,255,1);
	font-size:min(2vw,20px);
	color:black;
	text-decoration: none;	
	clear: both;
	display: flow-root;
}
#company .coment {
    width: 100%;
    height: 25%;
    margin-bottom: 8vw;
}

	#companyP .wrap{
	clear: both;
	width:100%;
	margin:1vh auto;
	text-align: center;
	padding-top: 1vh;
	}

	#companyP .S_list {
    padding: 30px;
    width: 77%;
    height: 55vh;
    margin: 0vw 1vw;
    background: rgba(255,255,255,.77);
    display: inline-block;
	}

	#contact .wrap{
	clear: both;
	width:100%;
	margin:1vh auto;
	text-align: center;
	padding-top: 1vh;
	}

	#contact .S_list {
    padding: 30px;
    width: 77%;
    height: 55vh;
    margin: 0vw 1vw;
    background: rgba(255,255,255,.77);
    display: inline-block;
	}

	#contact .S_list .t {
	margin-top:1vw;
	font-size: 3.2vw;
	font-weight: bold;
	}	



	footer{
	color: white;
	background: rgb(235,94,0);
	padding-top: 10px;
	padding-bottom: 10px;
	margin-top: 50px;
	position: fixed; 
	bottom: 0; 
	font-size:min(3vw,40px);
	}

	

}

