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

@media screen and (max-width:1280px){
.back{
    background-size: cover;
}
}

@media screen and (max-width:900px){
.visible-sp{
	display:block;
}
.hidden-sp{
	display:none !important;
}
body{
	font-size: 14px;
	line-height: 1.7;
}
.logo{
    line-height: 1;
    display: flex;
    align-items: center;
}
.logo img{
    width: 40vw;
}
.header_in{
	padding: 2vw 0 0 4vw;
}
.menu-trigger {	
	position: relative;
	top: 0px;
	right: 3%;
	display: inline-block;
    transition: all .4s;
    box-sizing: border-box;
    cursor: pointer;
    float: right;
    width: 50px;
    height: 50px;
    z-index: 2;
}
.menu-trigger.active{
	position: fixed;
	top: 10px;
}
.menu-trigger span {
    display: inline-block;
    transition: all .4s;
    box-sizing: border-box;
    cursor: pointer;
    float: right;
    position: absolute;
    background: #000;
    width: 30px;
    height: 2px;
    left: 0;
    right: 0;
    margin: auto;

}
.menu-trigger span:nth-of-type(1) {
    top: 15px;
}
.menu-trigger span:nth-of-type(2) {
    top: 0;
    bottom: 0;
}
.menu-trigger span:nth-of-type(3) {
    bottom: 15px;
}
.g-nav {
    display: none;
    position: fixed;
    top: 0;   
    left: 0;
    background: #fff;
    width: 100%;
    height: 100%;
    z-index: 1;
}
.g-nav .list {
	margin-top: 70px;
    padding: 20px;
}
.g-nav .list li{
	text-align: center;
	margin-bottom: 20px;
}
.g-nav .list li a {
    display: block;
    text-align: center;
    text-decoration: none;
    padding: 10px 0;
    font-weight: bold;
    font-size: 16px;
}
.g-nav .list li a.tel span{
	font-size: 28px;
	font-family: "Yu Mincho", "游明朝", "游明朝体", "	Hiragino Mincho ProN", "ヒラギノ明朝 ProN", "Hiragino Mincho Pro", "ヒラギノ明朝 Pro", "MS Mincho", "ＭＳ 明朝", "	MS PMincho", "ＭＳ Ｐ明朝", "Sawarabi Mincho";
}
.g-nav .list li a span.en{
    display: block;
    font-weight: normal;
    color: #808080;
    font-size: 12px;
}
.g-nav .list li.contact_btn a{
	border: 3px solid #FF830E;
	border-radius: 6px;
	padding: 7px 0;
	color: #FF830E;
	background-color: #fff;
}
.g-nav .list li.order_btn a{
	color: #fff;
	background-color: #FF830E;
	border-radius: 6px;
}
.header_btn a{
    width: 100%;
    height: auto;
    padding: 15px 0 !important;
}
.menu-trigger.active span:nth-of-type(1) {
    -webkit-transform: translateY(9px) rotate(-45deg);
    transform: translateY(9px) rotate(-45deg);
}

.menu-trigger.active span:nth-of-type(2) {
    opacity: 0;
}
.menu-trigger.active span:nth-of-type(3) {
    -webkit-transform: translateY(-9px) rotate(45deg);
    transform: translateY(-9px) rotate(45deg);
}

.contact_submit button{
    width: 300px;
    height: 55px;
    text-align: center;
    position: relative;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center;
    text-align: center;
    display: -ms-inline-flexbox;
    display: inline-flex;
    transition-duration: 0.2s;
}
.contact_submit button span{
    position: relative;
    z-index: 1;
    display: inline-block;
    font-weight: bold;
    font-size: 16px;
    letter-spacing: 0.1em;
    color: #fff;
    vertical-align: middle;
}
#fv{
    height: 196vw;
}
.fv_bg{
    height: 196vw;
    width: 100vw;
    background-position: top right;
    background-size: 100%;
    background-repeat: no-repeat;
}

.fv_txt {
    position: absolute;
    left: 10vw;
    top: 18vw;
    width: 80vw;
}
.fv_btn p{
    font-size: 12px;
}
.fv_img {
    position: absolute;
    width: 80vw;
    top: 74vw;
    right: 10vw;
}
.fv_btn {
    position: absolute;
    top: 154vw;
    left: 10vw;
    width: 80vw;
}
.fv_btn a{
    position: relative;
    padding: 4vw;
    top: 0px;
    left: 0px;
    right: 0px;
    bottom: 0px;
    display: block;
    box-sizing: border-box;
    text-align: center;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center;
    text-align: center;
    transition-duration: 0.2s;
}
.fv_btn a:before {
    content: "";
    display: block;
    position: absolute;
    border-radius: 10vw;
    top: 0px;
    left: 0px;
    right: 0px;
    bottom: 0px;
    -ms-transform: translate(0.8vw, 0.8vw);
    transform: translate(0.8vw, 0.8vw);
    background: url(../img/bg.png) left top;
    background-size: 8px 8px;
}
.fv_btn a:after {
    content: "";
    display: block;
    position: absolute;
    top: 0px;
    left: 0px;
    right: 0px;
    bottom: 0px;
    border-radius: 10vw;
    transition-duration: 0.2s;
    border: 2px solid #000;
}
.fv_btn a img{
    height: 4vw;
}
.fv_btn a span {
    position: relative;
    z-index: 1;
    display: inline-block;
    font-weight: bold;
    font-size: 4vw;
    letter-spacing: 0.1em;
    color: #fff;
    vertical-align: middle;
}


#concept {
    padding-top: 50px;
}
.title_txt{
    font-size: 24px;
}
.title{
    margin-bottom: 30px;
}
.concept_in{
    display: block;
}
.concept_img{
    width: 90%;
    margin: 0 auto;
}
.concept_txt{
    width: 90%;
    margin: 20px auto 0;
    font-size: 14px;
}
.back{
    padding-top: 64px;
    padding-bottom: 60px;
}
.point_subtxt{
    width: 90%;
    margin: 0 auto 30px;
    text-align: left;
}
.point_list{
    width: 70%;
    display: block;
    text-align: center;
}
.point_list li:nth-child(2){
    margin: 30px 0;
}
#point{
    padding-bottom: 80px;
}

#data .point_list li:nth-child(2){
    margin-top: 0;
}
#contact{
    padding: 60px 0 120px;
}
#contact:before{
    width: 30%;
}
.contact_in{
    width: 94%;
    padding: 30px 0 50px;
    border-radius: 5px;
}
.contact_div table th,.contact_div table td{
    display: block;
    width: 100%;
}
.contact_div table th{
    padding-top: 0;
    padding-bottom: 10px;
}
.contact_div table td{
    padding-top: 0;
    padding-bottom: 20px;
}
.contact_submit{
    bottom: -27px;
}
.company_info th,.company_info td{
    width: 100%;
    display: block;
    padding: 0;
}
.company_info th{
    padding-top: 20px;
    border-bottom: none;
    padding-bottom: 5px;
}
.company_info td{
    padding-bottom: 20px;
}
footer{
    padding: 60px 0 20px;
}
.copyright{
    font-size: 12px;
    margin-top: 30px;
}
footer:after{
    width: 40%;
}
.fixed_bottom{
    width: 40px;
    right: 15px;
    bottom: 15px;
}
footer:before,footer:after{
    width: 30vw;
    height: 20vw;
}
#thanks{
    font-size: 14px;
    padding: 100px 0;
}
	.contact_submit input.submit_btn{
		font-size: 16px;
		padding: 12px;
	}
}


