@charset "utf-8";

.sp {
    display: none
}

.pc {
    display: block
}
.br-sp {
	display: none;
}
.br-pc {
	display: bloc;
}
@media screen and (max-width : 512px ){
    .sp {
        display: block
    }

    .pc {
        display: none
    }
	.br-sp { display:block; }
	.br-pc { display:none; }
    body {
        width: 100%;
        min-width: 100%;
        position: relative;
        left: 0;
        overflow-x: hidden;
    }
	.bg_fixed {
	}
	#main{
		padding-top: 12.5vw;
	}
    .container {
        width: 100%;
    }
    #header {
        width: 100%;
		height: auto;
    }

    #header .header_inner {
		position:relative;
		width:100%;
		height: 12.5vw;
		padding: 0;
    }
	#header .header_inner #h_logo {
		position: relative;
		float: left;
		width: 30vw;
		top: 50%;
		left: 6.28vw;
		margin: 0;
		transform: translateY(-50%);
		text-align: center;
	}
	#h_logo img {
    width: 100%;
    height: auto;
    vertical-align: middle;
	}
	header .language {
		left: 43.5vw;
		right: auto;
		top: 50%;
		transform: translateY(-50%);
	}
	header .language li a {
		font-size: 1.5vw;
		line-height: 6.52vw;
		width: 7.85vw;
	}
	header .btn_contact {
		width: 14.25vw;
		margin-top: 0;
		margin-right: 14.25vw;
		background: #f48000;
		text-align: center;
		height: 12.5vw;
	}
	header .btn_contact img {
		height: 20px;
		vertical-align: middle;
	}
	header .btn_contact_tel {
		float: right;
		width: 14.25vw;
		margin-top: 0;
		margin-right: 0vw;
		background: #009f41;
		text-align: center;
		height: 12.5vw;
		margin-right: 1px; 
	}
	header .btn_contact_tel a {
		height: 12.5vw;
		line-height: 12.5vw;
		padding-left:0;
		border: none;
	}
	header .btn_contact_tel img {
		height: 20px;
		vertical-align: middle;
	}
	header .btn_contact_tel.ico img {
		width: 40%;
		height: 50%;
	}
	header .btn_contact a {
		height: 12.5vw;
		line-height: 12.5vw;
		padding-left:0;
		border: none;
		background-image: none;
	}
	header #h_tel {
		display: none;
	}
/* Toggle Button */
    #nav-toggle {
        display: block;
        position: absolute;
        right:0;
        top: 0;
		width: 14.25vw;
        height: 100%;
		padding: 0;
        cursor: pointer;
        z-index: 101;
        box-sizing: border-box;
		background: #3c3c3c;
    }
    #nav-toggle p {
		position: absolute;
		top: 8.65vw;
		left: 50%;
		transform: translateX(-50%);
		color: #fff;
		font-size: 1.1rem;
		line-height: 1;
		text-align: center;
		font-weight: bold;
    }
    #nav-toggle span {
        display: block;
        position: absolute;
        height: 0.625vw;
        width: 6.25vw;
        background: #fff;
        left: 50%;
		margin-left: -3.125vw;
        -webkit-transition: .35s ease-in-out;
        -moz-transition: .35s ease-in-out;
        transition: .35s ease-in-out;
    }
    #nav-toggle span:nth-child(1) {
        top: 3.125vw;
    }
    #nav-toggle span:nth-child(2) {
        top: 5.93vw;
    }
    #nav-toggle span:nth-child(3) {
		top: 8.75vw;
    }
    #panel {
        position: relative;
    }
    #spnav {
        position: fixed;
	/* 開いてないときは画面外に配置 */
		top: 0;
        right: -100%;
        width: 100%;
		height: 100%;
        z-index: 100;
		background-color: #3c3c3c;
        overflow: scroll;
    	-webkit-transition:.5s ease-in-out; /*transitionで動きを*/
    	-moz-transition:.5s ease-in-out;
    	transition:.5s ease-in-out;
    }
	#spnav .head {
		display: table;
		width: 100%;
		height: 14.04vw;
		border-bottom: 1px solid #141414;
	}
	#spnav .head p{
		display: table-cell;
		vertical-align: middle;
		font-size: 2.8rem;
		color: #fff;
		padding: 0 5.43%;
	}
	.open .site-wrap {
		position: fixed;
	}
/* #nav-toggle 切り替えアニメーション */
    .open #nav-toggle span:nth-child(1) {
		top: 50%;
		margin-left: -2.67vw;
        -webkit-transform: rotate(315deg);
        -moz-transform: rotate(315deg);
        transform: rotate(315deg);
    }

    .open #nav-toggle span:nth-child(2) {
        width: 0;
    }
    .open #nav-toggle span:nth-child(3) {
		top: 50%;
		margin-left: -2.67vw;
        -webkit-transform: rotate(-315deg);
        -moz-transform: rotate(-315deg);
        transform: rotate(-315deg);
    }
/* #spnav スライドアニメーション */
    .open #spnav {
		display: block;
		top: 0;
    }
    #spnav ul {
        float: none;
        list-style: none;
    }

    #spnav ul li {
        float: none;
    }

    #spnav ul li a {
        display: block;
        position: relative;
        text-decoration: none;
        text-align: left;
		font-size: 1.8rem;
		padding-bottom: 7px;
		line-height: 57px;
		padding-left: 36px;
		color: #fff;
		border-top: 1px solid #565656;
		border-bottom: 1px solid #141414;
    }
	#spnav ul li a::before,
	#spnav ul li a::after {
		position: absolute;
		content: '';
		display: block;
	}
	#spnav ul li a::before {
		top: 50%;
		left: 5.43%;
		margin-top: -7px;
		width: 0;
		height: 0;
		border-style: solid;
		border-width: 4.5px 0 4.5px 8px;
		border-color: transparent transparent transparent #ff9900;
	}
	#spnav ul li a::after {
		bottom: 0;
		left: 0;
		width: 100%;
		height: 7px;
		background: #2f2f2f;
	}
    #spnav .child {
        display: none;
    }
    #spnav ul ul li a {
        display: block;
        background: #ebebeb;
    }
    #spnav .spnav {
        margin: 0;
    }
    #spnav .spnav li {
        border-bottom: 1px solid #fff;
    }
	#footer {
		background: #e0e0e0;
    	margin-bottom: 40px;
	}
	#footer .page-top {
		z-index: 2;
		top: -20px;
		right: 4.58%;
		width: 40px;
		height: 40px;
	}
	#footer .page-top a {
		width: 40px;
		height: 40px;
	}
	#footer .footer {
		/*padding: 6.03vw 7.24vw;*/
		padding: 0;
	}
	#footer .logo_side {
		float: none;
	}
	#footer .logo {
		float: left;
		width: 21.73vw;
	}
	#footer .address {
		padding-left: 23vw;
		font-size: 2.05vw;
	}
	#footer .contact_side {
		float: none;
	}
	#footer .contact_side .tel {
		font-size: 6.52vw;
		background-size:5.91vw auto;
		padding-left: 6.0vw;
		margin: 0;
		letter-spacing: -0.02em;
	}
	#footer .contact_side .btn_contact {
		width: 37.80vw;
	}
	#footer .contact_side .btn_contact a {
		background-position: 8.69vw center;
	}
	#footer #fnav {
		padding: 0;
		background-color: #f48000;
	}
	#fnav ul.sp {
	}
	#fnav ul.sp li {
		width: 48%;
		border-right: 0;
		margin: 1% 1%;
		float: left;
		line-height: 50px;
		background-color: #222222;
		text-align: center;
		color: #f48000;
	}
		#fnav ul.sp li a {
		color: #f48000;
		display: block;
	}
	
	/*ページトップ
**********************************************/

#footer .page-top {
	top: -30px;
	right: 0;
	width: 100%;
	height: 50px;
	text-align: center;
}
#footer .page-top a{
	display: block;
	width: 100%;
	height: 50px;
	background: #eee;
}
#footer .page-top a::before{
	display: block;
	content: '';
	position: absolute;
	top: 50%;
	left: calc(50% - 60px) ;
	width: 15px;
	height: 15px;
	margin-top: -5px;
	margin-left: -8px;
	border-right: 4px solid #383838;
	border-bottom: 4px solid #383838;
	-webkit-transform: rotate(-135deg);
	transform: rotate(-135deg);
}
#footer .page-top p {
    color: #383838;
    font-weight: bold;
    line-height: 50px;
    font-size: 18px;
    padding-left: 20px;
	}
#copyright {
	background: #f48000;
	color: #fff;
	line-height: 50px;
	text-align: center;
	font-size: 18px;
}
.contact {
    width: 100%;
    margin: 0 auto ;
    padding: 0px 0 0px;
    overflow: hidden;
	background-color: #FFFFFF;
}
.contact .ft_btn_box {
	width: 90%;
	margin: 0 auto;
	}
.contact .ft_btn {
	background-color: #FFFFFF;
	text-align: center;
	float: left;
	width: 48%;
	background-color: #FFFFFF;
	border: 2px solid #f48000;
	line-height: 40px;
	margin-right: 4%;
	border-radius: 10px;
	display: table-cell;
	}
.contact .ft_btn:nth-child(2){
	margin-right: 0%;
	}
.contact .ft_btn img {
	height: 20px;
	vertical-align: middle;
	}
.contact2 {
    width: 100%;
    margin: 0 auto ;
    padding: 15px 0 15px;
    overflow: hidden;
	background-color: #222222;
}
.contact2 .ft_btn_box {
	width: 90%;
	margin: 0 auto;
	}
.contact2 .ft_btn {
	background-color: #222222;
	text-align: center;
	float: left;
	width: 48%;
	background-color: #222222;
	border: 2px solid #f48000;
	line-height: 40px;
	margin-right: 4%;
	border-radius: 10px;
	display: table-cell;
	}
.contact2 .ft_btn:nth-child(2){
	margin-right: 0%;
	}
.contact2 .ft_btn img {
	height: 20px;
	vertical-align: middle;
	}
} 
