@charset "UTF-8";

body{background:url(../images/background.jpg) no-repeat -80px top;background-size:cover;}
.mb30{margin:bottom:30px;}
.for_pc{display:none;}
.for_mo{display:block;}

.wall{width:100%;height:100%;text-align:center;}
h1 span{display:none;}



.greeting{
/*
	background:url(../images/2_background.jpg) no-repeat 50% 0 fixed;
	background-size:cover;
*/
	padding-top:20%;
	width:100%;
	height:100%;
}
.greeting_logo{margin-bottom:64px;}
.greeting_txt{margin:0 20px;margin-bottom:64px;font-size:12px;line-height:34px;text-align:left;}
.greeting_name{font-size:16px;}



/*=====================
*
* nav
*
======================*/
ul.headerNav_ul li img { width:45px;}
.spnavi { margin:-16px 0 0 0;}
.spnavi li { margin:0;}


.spnavi > li + li {
	margin-left: 7px;
}

@media screen and (max-width: 360px) {
ul.headerNav_ul li img { width:40px;}
.spnavi > li + li {
	margin-left: 5px;
}
}



/*=====================
*
* movie
*
======================*/
.movie video{max-width:100%;}
#movie{position: absolute;right: 0;bottom: 0;top: 0;right: 0;width: 100%;height: 100%;background-size: 100% 100%;
    background-image: /* our video */;
    background-position: center center;
    background-size: contain;
    object-fit: cover;
    z-index: 3;}
.layer{position: absolute;z-index: 4;width: 100%;left: 0;top: 43%;}



.first_title{color:#2c2422;font-size:180px;line-height:2;font-weight:900;

}
.first_title span{font-size:24px;}


/*=====================
*
* 事業案内
*
======================*/
/*.service{

	background:url(../images/3_background.jpg) no-repeat 50% 0;

	background:#fff;
	background-size:cover;
	padding-top:64px;
	color:#000;
}
*/
.service_box{max-width:100%;margin:0 auto;}

.white{background:#fff;color:#000;}
.black{background:#000;color:#fff;}

.service .box_3{
	max-width:100%;
	margin:0 auto;
}
.service .box_3 img{max-width:100%;vertical-align:bottom;}
.service .box_3 span{width:90%;margin:0 auto;}
.service .box_3 .title{
	font-size:16px;
	background:url(../images/3_line.png) no-repeat center 60px;
	background-size:100%;
	padding:30px 10px 10px;
}
.service .box_3 span{display:inline;}
.service .box_3 p span{display:block;}

.service .box_3 .title1 span{background:none;background-size:32px;font-weight:bold;padding:5px 0 5px 5px;}
.service .box_3 .title2 span{background:url(../images/3_icon_2.png) no-repeat 0 0;background-size:32px;font-weight:bold;padding:5px 0 5px 40px;}
.service .box_3 .title3 span{background:url(../images/3_icon_3.png) no-repeat 0 0;background-size:26px;font-weight:bold;padding:5px 0 5px 30px;}
.service .box_3 .title4 span{background:url(../images/3_icon_4.png) no-repeat 0 0;background-size:49px;font-weight:bold;padding:5px 0 5px 55px;}
.service .box_3 .title5 span{background:url(../images/3_icon_5.png) no-repeat 0 0;background-size:37px;font-weight:bold;padding:5px 0 5px 45px;}

.service .box_3 p{font-size:12px;text-align:left;margin-top:2px;}

.service_txt_r,.service_txt_l { float:none; width:96%; max-width:96%; margin:0 2%;}


.ser_box { padding:0 0 30px 0;}
.ser_box ul { width:100%;}
.ser_box li { background:#3b6146; color:#fff; padding:8px 5px; float:left; width:90%; margin:0 5% 2% 5%; font-size:80%; border-radius: 6px; -webkit-border-radius: 6px; -moz-border-radius: 6px; box-sizing: border-box;}


/*=====================
*
* リクルート 
*
======================*/
.recruit{
	background:url(../images/4_background.jpg) no-repeat 50% 0;
	background-size:cover;
	padding-top:64px;
	color:#000;
}
.recruit .h2{color:#000;}

.recruit .voice{background:url(../images/4_line.png) no-repeat center;background-size:100%;color:#fff;max-width:100%;text-align:center;margin:0 auto;margin-top:64px;margin-bottom:16px;font-size:20px;}

.recruit .box{max-width:90%;margin:0 auto;}
.recruit .box_2{float:none;width:95%;margin:20px;margin-left:0;box-sizing:border-box;}
.recruit .box_2 + .box_2{float:none;margin-right:0;margin-top:50px;}
.recruit .box_2 table,.recruit .box_2 p{text-align:left;font-size:12px;}
.recruit .box_2 table th{width:20%;vertical-align:top;}

.recruit .title{background: url(../images/3_line.png) no-repeat center 40px;background-size: 100%;padding:10px;font-size:16px;font-weight:bold;}

/*=====================
*
* 会社概要
*
======================*/
.aboutus{
	background:url(../images/4_background.jpg) no-repeat 50% 0;
	background-size:cover;
	padding-top:64px;
	color:#000;
	max-width:100%;
	margin:0 auto;
}
.aboutus .h2{color:#000;}
.aboutus .map{float:none;border:none;padding:2px;margin-right:0;
position: relative;
padding-bottom: 56.25%;
padding-top: 30px;
height: 0;
overflow: hidden;
}
.aboutus .map iframe,
.aboutus .map object,
.aboutus .map embed {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
border:0 !important;
}
.aboutus .aboutus_txt{float:none;margin-bottom:10px;}
.aboutus .box{width:90%;margin:0 auto 50px;}
.aboutus table{font-size:12px;text-align:left;}
.aboutus table th{vertical-align:top;width:80px;}



/*=====================
*
* お問い合わせ
*
======================*/
.contact{
	background:url(../images/6_background.jpg) no-repeat 50% 0;
	background-size:cover;
	padding-top:64px;
	color:#000;
	max-width:100%;
	margin:0 auto;
}
.contact_box p{margin:10px;}
.contact .h2{color:#fff;}

.contact form dl {
    max-width: 100%;
    margin: 0 auto;
    font-size: 13px;
}
form dl dt, form dl dd {
    display:block;
    padding: 20px 0 0;
    margin-bottom: 1px;
    width: 100%;
    text-align:left;
    color:#fff;
}
form span.for_mo {
    float: left;
    margin-right: 10px;
    padding: 3px 9px;
}
form {width:90%;margin: 0 auto;}
form span.required {background: #dd4607;color: #fff;font-size: 10px;padding: 3px 9px 2px;}
form span {float: right;}
form dl dd {padding: 10px 5px;width:100%;margin-left: 0;box-sizing: border-box;}
form input, textarea {width: 100%;font-size: 14px;padding: 6px;border: 1px solid #ddd;}
form textarea.otoiawase {height: 150px;vertical-align: top;}

input.btn_next,button.btn_next{cursor: pointer;display: block;width: 280px;height: 60px;border: none;text-indent: -9999px;margin: 60px auto 40px;background: url(../images/6_button.png) no-repeat 0 0;background-size: cover;}
input.btn_next:hover, input.btn_submit:hover, input.btn_back:hover, input.goback:hover, input.submit:hover{opacity: 0.8;filter: alpha(opacity=80);-ms-filter:"alpha(opacity=80)";-moz-opacity: 0.8;-khtml-opacity: 0.8;}
input.btn_next2,button.btn_next2{cursor: pointer;display: block;width: 280px;height: 60px;border: none;text-indent: -9999px;margin: 60px auto 40px;background: url(../images/7_button.png) no-repeat 0 0;background-size: cover;}
input.btn_next2:hover, input.btn_submit:hover, input.btn_back:hover, input.goback:hover, input.submit:hover{opacity: 0.8;filter: alpha(opacity=80);-ms-filter:"alpha(opacity=80)";-moz-opacity: 0.8;-khtml-opacity: 0.8;}


/*=====================
*
* 特定商取引法に基づく表記
*
======================*/
.act{
	background:#fff;
	padding-top:64px;
	color:#000;
	max-width:100%;
	margin:0 auto;
}
.act h2{font-size:23px;}
.act .h2{color:#007bc3;}
.act .h2 p{margin-bottom:64px;}
.act .act_dl{margin:20px auto;font-size:12px;max-width:90%;}
.act .act_dl dt,.act_dl dd{text-align:left;float:none;}
.act .act_dl dt{width:100%;font-weight:bold;}
.act .act_dl dd{margin-left:1em;}




/*=====================
*
* footer
*
======================*/


/*=====================
*
* arrow nav
*
======================*/
.indexBlock_arrow {position: fixed;width:40px;height:40px;bottom:40px;left:50%;margin-left:-20px;cursor: pointer;z-index: 20000;opacity: 1;}




@media screen and (min-width: 768px) {
.for_pc{display:block;}
.for_mo{display:none;}

body{background:url(../images/background.jpg) no-repeat;background-size:cover;}

.pc_con { display:none!important;}
.sp_con { display: block!important;}

.h2{color:#000;}

.greeting_txt{margin:0 20px;margin-bottom:64px;font-size:16px;line-height:34px;text-align:center;}
.greeting_name{font-size:18px;}

/*=====================
*
* movie
*
======================*/



.first_title{color:#2c2422;font-size:130px;line-height:0;font-weight:900; position:relative; width:1000px; text-align:right;}
.first_title_box { width:400px; position:absolute; right:0; top:100px; line-height:0!important; text-align:left!important;}
.first_title_box img { width:100%;}

.first_title_box p{font-size:14px; font-weight:normal; line-height:24px!important; text-align:left!important; margin-top:10px;}


/*=====================
*
* 事業案内
*
======================*/
/*
.service_box{width:1100px;margin:0 auto;}
.service .box_3{
	float:left;
	width:300px;
	margin:18px 32px;
}
*/

.service{
	background:#fff;
	background-size:cover;
	padding-top:80px;
	color:#fff;
}
.service_box{max-width:100%;margin:0 auto;}
.service .box_3{
	max-width:100%;
	margin:0 auto;
	position:relative;
}
.service .box_3 img{max-width:100%;vertical-align:top;}

.service .box_3 .title{
	font-size:16px;
	background:url(../images/3_line.png) no-repeat center 40px;
	background-size:100%;
	padding:10px;
	font-weight:bold;
}



.service .box_3 p{font-size:12px;text-align:left;margin-top:10px;}

.service_txt_r{position:absolute;top:50px;right:0;max-width:500px;margin-right:100px;}
.service_txt_l{position:absolute;top:50px;left:0;max-width:500px;margin-left:100px;}
.service .fc_black{color:#000;}


.ser_box { padding:0 0 0 0;}
.ser_box ul { width:100%;}
.ser_box li { background:#3b6146; color:#fff; padding:8px 5px; float:left; width:31%; margin:0 1% 2% 1%; font-size:75%; border-radius: 4px; -webkit-border-radius: 4px; -moz-border-radius: 4px; box-sizing: border-box;}


/*=====================
*
* リクルート 
*
======================*/
.recruit{padding-top:128px;}
.recruit .box_2{float:left;width:45%;margin:20px 0;box-sizing:border-box;}
.recruit .box_2 + .box_2{float:right;margin-right:0;margin-top:20px;}

.recruit .box{width:70%;margin:0 auto;}
.recruit .box_2{float:left;width:45%;margin:20px;box-sizing:border-box;}
.recruit .box_2 + .box_2{float:left;margin-right:0;}
.recruit .box_2 table,.recruit .box_2 p{text-align:left;font-size:12px;}
.recruit .box_2 table th{width:20%;vertical-align:top;}

.recruit .voice{background:url(../images/4_line.png) no-repeat center;background-size:100%;color:#fff;width:360px;text-align:center;margin:0 auto;margin-top:30px;margin-bottom:16px;font-size:20px;font-weight:bold;}


/*=====================
*
* 会社概要
*
======================*/
/*
.aboutus{
	background:url(../images/4_background.jpg) no-repeat 50% 0;
	background-size:cover;
	padding-top:128px;
	color:#000;
	max-width:100%;
	margin:0 auto;
	height:100%;
}
.aboutus .aboutus_txt{float:right;width:300px;}
.aboutus .map{float:left;width:600px;border:1px solid #999;padding:2px;margin-right:0px;height:450px;width:600px;}
.aboutus .box{width:950px;margin:0 auto 50px;}
*/

/*=====================
*
* お問い合わせ
*
======================*/
.contact{
	background:url(../images/6_background.jpg) no-repeat 50% 0;
	background-size:cover;
	padding-top:128px;
	color:#000;
	max-width:100%;
	margin:0 auto;
}
.contact .h2{color:#fff;}

.contact form dl {
    max-width: 100%;
    margin: 0 auto;
    font-size: 13px;
}
form dl dt, form dl dd {
    display:inline-table;
    padding: 20px 0;
    margin-bottom: 1px;
    width: 200px;
    text-align:left;
    color:#fff;
}
form {width: 70%;margin: 0 auto;}
form span.required {background: #dd4607;color: #fff;font-size: 10px;padding: 3px 9px 2px;}
form span {float: right;}
form dl dd {padding: 10px;width:50%;margin-left: 0;box-sizing: border-box;}
form input, textarea {width: 100%;font-size: 14px;padding: 6px;border: 1px solid #ddd; box-sizing:border-box;}
form textarea.otoiawase {height: 150px;vertical-align: top; box-sizing:border-box;}

input.btn_next{cursor: pointer;display: block;width: 277px;height: 58px;border: none;text-indent: -9999px;margin: 60px auto 40px;background: url(../images/6_button.png) no-repeat 0 0;background-size: cover;}
input.btn_next:hover, input.btn_submit:hover, input.btn_back:hover, input.goback:hover, input.submit:hover{opacity: 0.8;filter: alpha(opacity=80);-ms-filter:"alpha(opacity=80)";-moz-opacity: 0.8;-khtml-opacity: 0.8;}
input.btn_next2{cursor: pointer;display: block;width: 277px;height: 58px;border: none;text-indent: -9999px;margin: 60px auto 40px;background: url(../images/7_button.png) no-repeat 0 0;background-size: cover;}
input.btn_next2:hover, input.btn_submit:hover, input.btn_back:hover, input.goback:hover, input.submit:hover{opacity: 0.8;filter: alpha(opacity=80);-ms-filter:"alpha(opacity=80)";-moz-opacity: 0.8;-khtml-opacity: 0.8;}
/*=====================
*
* 特定商取引法に基づく表記
*
======================*/
.act{
	background:#fff;
	padding-top:128px;
	color:#000;
	width:100%;
	margin:0 auto;
}
.act h2{font-size:30px;}
.act .h2{color:#007bc3;}
.act .h2 p{margin-bottom:64px;}
.act .act_dl{margin:0 auto;font-size:12px;max-width:50%;}
.act .act_dl dt,.act_dl dd{text-align:left;float:left;}
.act .act_dl dt{width:30%;font-weight:bold;}
.act .act_dl dd{margin-left:0;}


/*=====================
*
* footer
*
======================*/
/*footer{background:#2e2623;color:#fff;font-size:12px;text-align:center;height:64px;line-height:64px;margin-top:0;/*position:fixed; width:100%;z-index:10000; display:block;}*/

/*=====================
*
* arrow nav
*
======================*/
.indexBlock_arrow {position:fixed;width:60px;height:60px;bottom:40px;left:50%;margin-left:-30px;cursor: pointer;z-index: 20000;opacity: 1;}

}


/*=====================
*
* common
*
======================*/



.inner {width: auto; max-width: 1200px; margin: 0 auto 0 auto; color:#333;}
.h2 { width: 100%; margin:0 0 0 0;}
.h2 h2 { font-size:44.5px; text-align:left; line-height:40px; font-weight:800;}
.h2 h2 span { display:block; font-size:16px; text-align:left; font-weight:normal;}


.header_inner h1 { display:none;}



/* service */
.service { background:#fff url(../images/service_bg.png) no-repeat right bottom; padding:100px 0 175px 0;}
.service .left { float:left; width:300px; margin:0 10% 0 0;}
.service .right { float:right; width:60%; margin:0 0 0 0; text-align: left;}

.service .h2 {background:url(../images/about_pan.png) no-repeat left top; height:170px; padding-left:40px;}

p.txt { line-height:220%;}
.img_logo { margin-bottom:120px!important;}


/* about */
.aboutus { background:#f0eceb url(../images/about_bg.png) no-repeat right bottom; padding:100px 0 120px 0;}
.aboutus .h2 {background:url(../images/about2_pan.png) no-repeat right top; height:150px; padding-left:40px;}

.aboutus .list3 {}
.aboutus .list3 ul { width:1050px; margin:0 auto 30px auto;}
.aboutus .list3 li { float:left; width:250px; margin:0 50px 0 50px; font-size:110%; font-weight:500;}
.aboutus .list3 li img { width:100%;}

.aboutus_t { font-size:120%; font-weight:bold; margin:15px 0; text-align: left;}
.aboutus_text { font-size:80%; text-align: left;}


/* recruit */
.recruit { background:#fff; padding:100px 0 80px 0;}
.recruit .left { float:left; width:300px; margin:0 10% 0 0;}
.recruit .right { float:right; width:60%; margin:0 0 0 0; text-align: left;}

.recruit .h2 {background:url(../images/recruit_pan.png) no-repeat left top; height:170px; padding-left:40px;}

.txt_l { float:left; width:47.5%; margin:0 2.5% 0 0; line-height:200%;}
.txt_r { float:right; width:47.5%; margin:0 0 0 2.5%; line-height:200%;}
.btn_box { margin-top:62px; text-align:right; float:right;}


/* footer */
footer{background:#2e2623; color:#fff; padding:30px 0 15px 0; text-align:left;}
footer .flogo { width:180px; float:left;}
footer .flogo img { width:100%;}
footer ul { float:right; width:50%; margin-top:5px;}
footer ul li { float:left; width:auto; margin-right:50px; position: relative; box-sizing:border-box;}
footer ul li a { color:#fff; text-decoration:none;}
footer ul li:before{
content: "";
width:1px;
border-right: 1px solid #fff;
position: absolute;
right: -25px;
top: 0;
bottom: 0;
}

/* 下層共通 */
body.page { background:none;}
.page .header_inner h1 { display: block;}
.page .header_inner h1 {width:120px; margin-top:-4px; margin-left:10px; float:left;}
.page .header_inner h1 img { width:100%;}

.page .detail_h { height:600px; text-align:center; position:relative;}
/*.page .detail_h h2 { position: absolute; top:50%; left:50%; transform: translate(-50%, -50%); -webkit-transform: translate(-50%, -50%); -ms-transform: translate(-50%, -50%);}*/
.h2box { position: absolute; top:50%; left:10%; transform: translate(0%, -50%); -webkit-transform: translate(0%, -50%); -ms-transform: translate(0%, -50%); text-align:left;}
.page .detail_h { color:#fff;}
.page .detail_h h2 { color:#fff; font-size:36px;}
.page .detail_h h2 span {background:url(../images/page-line.gif) no-repeat right 50%; padding-right:100px; font-size:50%;}
.page .h2box p.txt { margin:40px 0 0 0; line-height:180%; font-size:14px;}

.detail_h.aboutpage { background:url(../about/img/bg.jpg) no-repeat 50% 50%;}
.detail_h.contentpage { background:url(../content/img/bg.jpg) no-repeat 50% 50%;}
.detail_h.contactpage { background:url(../contact/img/bg.jpg) no-repeat 50% 50%;}

.panlist { padding:15px 0; font-size:13px; border-bottom:1px solid #ddd;}
.panlist a { text-decoration:none;}
.panlist a:hover { text-decoration:underline;}

.page section.pagepd { padding:70px 0;}
.page section.bg { background:#f0eceb;}


/* about */
table{
	border-collapse	: collapse;
	border-spacing	: 0px;
}
th,td	{text-align:left; vertical-align:middle;}
caption	{text-align:left;}

table.about_tbl1 { width:100%; margin-top:30px;}
table.about_tbl1 th { text-align:center; width:50%;}
table.about_tbl1 td {}
table.about_tbl1 th img { width:70%; max-width:220px;}
table.about_tbl1 h3.h3title { font-size:32px; font-weight:800; margin:0 0 15px 0;}
table.about_tbl1 td p {  font-size:21px; line-height:180%; margin-bottom:40px;}

table.about_tbl2 { width:800px; margin:50px auto 50px auto; color:#000;}
table.about_tbl2 th,table.about_tbl2 td { border:1px solid #555; padding:18px 10px; font-weight:normal; vertical-align:middle;}
table.about_tbl2 th {width:30%; text-align:center;}
table.about_tbl2 td {}


/* content */
.bgimg { background:#fff url(../images/service_bg.png) no-repeat right bottom; padding:100px 0 175px 0;}
table.content_tbl1 { width:100%; margin:30px 0 80px 0;}
table.content_tbl1 th { text-align:center; width:25%; padding:20px;}
table.content_tbl1 th.content1 {background:url(../content/img/img2.png) no-repeat 50% 50%; background-size: contain;}
table.content_tbl1 th.content2 {background:url(../content/img/img1.png) no-repeat 50% 50%; background-size: contain;}
table.content_tbl1 th.content3 {background:url(../content/img/img3.png) no-repeat 50% 50%; background-size: contain;}
table.content_tbl1 td { padding:20px;}
table.content_tbl1 td.contentimg { width:30%;}
table.content_tbl1 td img { width:100%;}

table.content_tbl1 h3.h3title { background:#2c2422; color:#fff; padding:13px 15px; text-align:left; font-size:18px;
 	border-radius: 6px;
	-webkit-border-radius: 6px;
	-moz-border-radius: 6px; margin-bottom:15px;}
table.content_tbl1 h3.h3title span { font-size:140%; margin-right:5px;}
table.content_tbl1 p { line-height:150%;}


/* contact */
.contact_box { background:#f4f4f4; padding:50px 70px 70px 70px; width:600px; margin:0 auto 50px auto;}
table.contact_tbl { width:100%;}
table.contact_tbl th,table.contact_tbl td { padding:25px 0; border-bottom:1px solid #000; box-sizing:border-box;}
table.contact_tbl th { width:25%;}
table.contact_tbl td {}

.contacttitle { text-align:center; font-size:46px; font-weight:800; margin: 50px auto 20px auto;}

section.f_bg { background:url(../contact/img/f_bg.png) no-repeat 50% 50%; background-size: cover; height:400p; padding:80px 0; text-align:center;}
.mailtitle { color:#fff; font-size:24px; font-weight:800; margin-bottom:40px;}
ul.contact_mail { width:1000px; margin:0 auto 0 auto;}
ul.contact_mail li { width:50%; float:left; padding:15px 30px; box-sizing:border-box; height:132px;}
ul.contact_mail li.contact_left { background:#fff; color:#000;}
ul.contact_mail li.contact_right { background:#2e2623; color:#fff; font-size:140%; font-weight:bold; display:table;}
ul.contact_mail li.contact_right p {display: table-cell; vertical-align:middle;}
ul.contact_mail li.contact_right p a { color:#fff; text-decoration:none; padding:80px;}
ul.contact_mail li.contact_right p a:hover { color:#fff; text-decoration:none;}
.contact_left table { width:100%;}
.contact_left table th,.contact_left table td { padding:5px; vertical-align:bottom;}
.contact_left table th { line-height:200%; font-size:110%;}
.contact_left table th span { display:block; font-size:32px; font-weight:800;}
.contact_left table td { font-size:14px; text-align:center;}


@media screen and (max-width: 768px) {
.inner {width: 90%; max-width: 90%; margin: 0 5%; color:#333;}


.header { height:55px;}
.header_inner h1 { display: block; width:120px; margin-top:-5px; margin-left:10px;}
.header_inner h1 img { width:100%;}

.first_title{color:#2c2422;font-size:40px;line-height:0;font-weight:900; position:relative; width:auto; text-align: center;}
.first_title_box { width:75%; margin:50px 12.5% auto 12.5%; position: static; line-height:0!important; text-align:left!important;}
.first_title_box img { width:100%;}

.first_title_box p{font-size:14px; font-weight:normal; line-height:24px!important; text-align:left!important; margin-top:15px;}




.service { background:#fff url(../images/service_bg.png) no-repeat right bottom; padding:70px 0 20px 0;}
.service .left { float:none; width:100%; margin:0 0 30px 0;}
.service .right { float:none; width:100%; margin:0 0 0 0;}
.service .h2 {background:none; height:auto; padding-left:0; }

.h2 { width: 100%; margin:0 0 30px 0;}
.h2 h2 { font-size:26px; text-align:left; line-height:25px; font-weight:800;}
.h2 h2 span { display:block; font-size:12px; text-align:left; font-weight:normal;}

.service .img_c300 { width:50%; margin:auto;}
.img_logo { margin-bottom:30px!important;}	
p.txt { line-height:180%;}

.aboutus { background:#f0eceb url(../images/about_bg.png) no-repeat right bottom; padding:70px 0 100px 0;}
.aboutus .h2 {background:none; height:auto; padding-left:0;}
.aboutus .list3 ul { width:auto; margin:0 auto 30px auto;}
.aboutus .list3 li { float:none; width:80%; margin:0 10% 20px 10%; font-size:100%; font-weight:500;}


/* recruit */
.recruit { background:#fff; padding:70px 0 60px 0;}
.recruit .left { float:none; width:auto; margin:0 0 30px 0;}
.recruit .right { float:none; width:auto; margin:0 0 0 0; text-align: left;}
.recruit .img_c300 { width:50%; margin:auto;}

.recruit .h2 {background:none; height:auto; padding-left:0px;}

.txt_l { float:none; width:80%; margin:0 10% 20px 10%; line-height:200%;}
.txt_r { float:none; width:80%; margin:0 10% 0 10%; line-height:200%;}
.btn_box { margin-top:30px; text-align:center; float:none;}


/* footer */
footer{background:#2e2623; color:#fff; padding:30px 0 15px 0; text-align:left; box-sizing:border-box;}
footer .inner { width:80%; margin:0 10%; box-sizing:border-box;}
footer .flogo { width:40%; float:none; margin:30px 30% 0 30%;}
footer .flogo img { width:100%;}
footer ul { float:none; width:100%; margin-top:5px; box-sizing:border-box;}
footer ul li { float:left; width:46%; margin:0 2% 8% 2%; position: static; box-sizing:border-box;}
footer ul li a { color:#fff; text-decoration:none; box-sizing:border-box;}
footer ul li:before{
content: "";
width:1px;
border-right:none;
position: static;
right: 0;
top: 0;
bottom: 0;
}


.wrapper {
  height: 100%;
  overflow-x: hidden;
  position: relative;
}
.overlay {
  content: "";
  display: block;
  width: 0;
  height: 0;
  background-color: rgba(0, 0, 0, 0.5);
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
  opacity: 0;
  transition: opacity .5s;
}
.overlay.open {
  width: 100%;
  height: 100%;
  opacity: 1;
}
main {
  height: 100%;
  min-height: 100vh;
  padding: 0 50px;
  background-color: #eee;
  transition: all .5s;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
main.open {
  transform: translateX(-250px);
}
main h1 {
  text-align: center;
  font-weight: 500;
}
main p {
  text-align: center;
}
.menu-trigger {
  display: inline-block;
  width: 30px;
  height: 28px;
  vertical-align: middle;
  cursor: pointer;
  position: fixed;
  top: 13px;
  right: 20px;
  z-index: 999999;
/*   transform: translateX(0);
  transition: transform .5s;
 */}
/* .menu-trigger.active {
  transform: translateX(-250px);
}
 */.menu-trigger span {
  display: inline-block;
  box-sizing: border-box;
  position: absolute;
  left: 0;
  width: 100%;
  height: 4px;
  background-color: #000;
  transition: all .5s;
}
.menu-trigger.active span {
  background-color: #fff;
}
.menu-trigger span:nth-of-type(1) {
  top: 0;
}
.menu-trigger.active span:nth-of-type(1) {
  transform: translateY(12px) rotate(-45deg);
}
.menu-trigger span:nth-of-type(2) {
  top: 12px;
}
.menu-trigger.active span:nth-of-type(2) {
  opacity: 0;
}
.menu-trigger span:nth-of-type(3) {
  bottom: 0;
}
.menu-trigger.active span:nth-of-type(3) {
  transform: translateY(-12px) rotate(45deg);
}

nav {
  width: 250px;
  height: 100%;
  padding-top: 100px;
  background-color: rgb(255, 255, 255, 0.8);
  position: fixed;
  top: 0;
  right: 0;
  z-index: 10;
  transform: translate(250px);
  transition: all .5s;
}
nav.open {
  transform: translateZ(0);
}
nav li {
  color: #fff;
  text-align: center;
  padding: 10px 0;
}

.menu-trigger {
  transform: translateX(0);
}
.menu-trigger.active {
  transform: translateX(-250px);
}


/* 下層共通 */

.header { position:fixed!important; top:0;}

body.page { background:none;}
.page .header_inner h1 { display: block;}
.page .header_inner h1 {width:120px; margin-top:-4px; margin-left:10px; float:left;}
.page .header_inner h1 img { width:100%;}

.page .detail_h { height:450px; text-align:center; position:relative;}
.h2box { width:70%; position: absolute; top:50%; left:50%; transform: translate(-50%, -50%); -webkit-transform: translate(-50%, -50%); -ms-transform: translate(-50%, -50%); text-align:left;}
.page .detail_h { color:#fff;}
.page .detail_h h2 { color:#fff; font-size:24px;}
.page .detail_h h2 span {background:url(../images/page-line.gif) no-repeat right 50%; padding-right:30px; font-size:50%; background-size:30% auto;}
.page .h2box p.txt { margin:25px 0 0 0; line-height:180%; font-size:12px;}





.detail_h.aboutpage { background:url(../about/img/bg.jpg) no-repeat 50% bottom; background-size:cover;}
.detail_h.contentpage { background:url(../content/img/bg.jpg) no-repeat 50% 50%; background-size:cover;}
.detail_h.contactpage { background:url(../contact/img/bg.jpg) no-repeat 50% 50%; background-size:cover;}

/* about */

table.about_tbl1 { width:100%; margin-top:50px;}
table.about_tbl1 th { text-align:center; width:100%; display:block;}
table.about_tbl1 td {width:100%; display:block;}
table.about_tbl1 th img { width:50%; max-width:220px; margin-bottom:30px;}
table.about_tbl1 h3.h3title { font-size:26px; font-weight:800; margin:0 0 15px 0;}
table.about_tbl1 td p {  font-size:18px; line-height:180%; margin-bottom:40px;}

table.about_tbl2 { width:100%; margin:50px 0%; font-size:90%;}
table.about_tbl2 th,table.about_tbl2 td { border:1px solid #555; padding:15px 5px; font-weight:normal; vertical-align:middle;}
table.about_tbl2 th {width:30%; text-align:center;}
table.about_tbl2 td {}


/* content */
.bgimg { background:#fff url(../images/service_bg.png) no-repeat right bottom; padding:100px 0 175px 0; background-size: contain;}
table.content_tbl1 { width:90%; margin:30px 5% 50px 5%;}
table.content_tbl1 th { display:none;}
table.content_tbl1 td { width:100%; display:block; box-sizing:border-box; padding:10px;}
table.content_tbl1 td.contentimg { width:100%;}
table.content_tbl1 td img { width:100%;}

table.content_tbl1 h3.h3title { background:#2c2422; color:#fff; padding:10px 10px; text-align:left; font-size:16px;
 	border-radius: 6px;
	-webkit-border-radius: 6px;
	-moz-border-radius: 6px; margin-bottom:15px;}
table.content_tbl1 h3.h3title span { font-size:140%; margin-right:5px;}
table.content_tbl1 p { line-height:160%; font-size:90%;}


/* contact */
.contact_box { background:#f4f4f4; padding:20px 40px 40px 40px; width:100%; margin:0 auto 50px auto; box-sizing:border-box;}
table.contact_tbl { width:100%;}
table.contact_tbl th,table.contact_tbl td { padding:3px 0; border-bottom:none; box-sizing:border-box; width:100%; display:block;}
table.contact_tbl th { padding-top:15px;}
table.contact_tbl td { padding-bottom:10px; margin-bottom:10px;}

.contacttitle { text-align:center; font-size:36px; font-weight:800; margin: 50px auto 20px auto;}

section.f_bg { background:url(../contact/img/f_bg.png) no-repeat 50% 50%; background-size: cover; height:auto; padding:50px 0; text-align:center;}
.mailtitle { color:#fff; font-size:24px; font-weight:800; margin-bottom:40px; line-height:160%;}
ul.contact_mail { width:90%; margin:0 5% 0 5%;}
ul.contact_mail li { width:100%; float:none; padding:15px 15px; box-sizing:border-box; height:auto; text-align:center;}
ul.contact_mail li.contact_left { background:#fff; color:#000; text-align:center;}
ul.contact_mail li.contact_right { background:#2e2623; color:#fff; font-size:100%; font-weight:bold; display:table; padding:50px 0;}
ul.contact_mail li.contact_right p {display: table-cell; vertical-align:middle;}
ul.contact_mail li.contact_right p a {padding:40px 20px;}
.contact_left table { margin:0; padding:0; width:100%;}
.contact_left table th,.contact_left table td { padding:5px; vertical-align:bottom; width:100%; display:block;}
.contact_left table th { line-height:200%; font-size:100%; text-align:center;}
.contact_left table th span { display:block; font-size:24px; font-weight:800;}
.contact_left table td { font-size:14px; text-align:center;}


}

@media screen and (max-width: 292px) {
	.first_title{color:#2c2422;font-size:30px;line-height:0;font-weight:900; position:relative; width:auto; text-align: center;}

	#greetment{font-size:14px;}

	input.btn_next, button.btn_next{background-size:80%; border:none;}

	table.about_tbl1 td p{font-size:14px;}

	.page .detail_h h2{font-size:18px;}

	.mailtitle{font-size:20px;}

	.for_280{display:block;}
	
	ul.contact_mail li.contact_right{font-size:14px;}
}


/* テキストカラー */
.bk {color:#333!important;}
.green {color:#006633!important;}
.blue {color:#000099!important;}
.red { color:#CC0000!important;}
.redb { color:#CC0000!important; font-weight:500;}
.red2 { color:#ff0000!important;}

/* テキストサイズ */
.t50 { font-size:50%!important;}
.t60 { font-size:60%!important;}
.t70 { font-size:70%!important;}
.t80 { font-size:80%!important;}
.t90 { font-size:90%!important;}
.t120 { font-size:120%!important;}
.t130 { font-size:130%!important;}
.t140 { font-size:140%!important;}
.t150 { font-size:150%!important;}
.t160 { font-size:160%!important;}

/* ライン */
.tline { border-top:1px #ccc solid; padding-top:10px;}
.tline_d { border-top:1px #ccc dotted; padding-top:10px;}
.bline { border-bottom:1px #ccc solid; padding-bottom:10px;}
.bline_d { border-bottom:1px #aaa dotted;}
.line_t{text-decoration: line-through;}

a:hover img {
 *zoom: 1;
	cursor:pointer;
    -webkit-transition: all 0.6s ease;
    -moz-transition: all 0.6s ease;
    -o-transition: all 0.6s ease;
    transition: all  0.6s ease;
	}

.noto100 {font-weight:100;}
.noto200 {font-weight:200;}
.noto300 {font-weight:300;}
.noto400 {font-weight:400;}
.noto500 {font-weight:500;}
.noto600 {font-weight:600;}
.noto700 {font-weight:700;}
.noto800 {font-weight:800;}
.noto900 {font-weight:900;}



/* =====================================
 画像
===================================== */
img.rab {
	border-radius: 6px;
	-webkit-border-radius: 6px;
	-moz-border-radius: 6px;
}
.img_c { width:95%; margin:0 auto 20px auto;}
.img_c200 { width:auto; max-width:200px;  margin:0 auto 0 auto;}
.img_c330 { width:auto; max-width:330px;  margin:0 auto 0 auto;}
.img_c300 { width:auto; max-width:300px;  margin:0 auto 0 auto;}
.img_c370 { width:auto; max-width:370px;  margin:0 auto 0 auto;}
.img_c800 { width:auto; max-width:800px;  margin:0 auto 0 auto;}
.img_l { width:50%; margin:0 30px 20px 0; float:left;}
.img_l300 { width:35%; margin:0 5% 20px 0; float:left; max-width:300px;}
.img_c700 { width:auto; max-width:700px;  margin:0 auto 0 auto;}

.img_c700 img,
.img_c330 img,
.img_c300 img,
.img_c370 img,
.img_c800 img,
.img_c365 img,
.img_c490 img,
.img_c200 img,
.img_l300 img,
.img_c500 img,
.img_c534 img,
.img_c530 img,
.img_c300 img,
.img_c640 img,
.img_c550 img,
.img_c632 img,
.img_c img,
.img_l264 img,
.img_r img,
.img_l img {width:100%!important;}


/* =====================================
 テーブル
===================================== */
table td a { text-decoration:underline; color:#0099FF;}
table td a:hover { text-decoration:none; color:#0099FF;}

table.tbl1 { width:100%; font-size:95%; }
table.tbl1 th,table.tbl1 td { border:1px solid #ccc; padding:10px;  box-sizing: border-box;}
table.tbl1 th { background:#eee; width:25%; text-align:left; vertical-align:middle;}
table.tbl1 td {line-height:150%;}
table.tbl1 td img { }
table.tbl1 th span { font-size:70%; color:#ff0000;}

table.tbl2 { width:100%; font-size:95%; color:#555;}
table.tbl2 th,table.tbl2 td { border:1px solid #ccc; padding:10px;}
table.tbl2 th { background:#eee; width:25%;}
table.tbl2 td {}

table.tbl3 { width:100%; font-size:90%;}
table.tbl3 th,table.tbl3 td { border:1px solid #ddd; padding:5px;  box-sizing: border-box;}
table.tbl3 th { background:#006633; color:#fff; text-align:center;}
table.tbl3 td img { }
table.tbl3 tr:nth-child(2n+1) {
background: #f5f5f5;
}
table.tbl3_off tr:nth-child(2n+1) {
background: #fff;
}
table.tbl3_off td { vertical-align:middle;}

table.tbl4 { width:100%; font-size:90%;}
table.tbl4 th,table.tbl4 td { border:1px solid #ddd; padding:5px;  box-sizing: border-box; vertical-align:middle;}
table.tbl4 th { background:#006633; color:#fff; text-align:center;}
table.tbl4 td img { }
table.tbl4 tr:nth-child(2n+1) {
background: #f5f5f5;
}

table.tbl5 { width:100%; font-size:90%;}
table.tbl5 th,table.tbl5 td { border:1px solid #ddd; padding:3px;  box-sizing: border-box; vertical-align:middle; text-align:center;}
table.tbl5 th { background:#336633; color:#fff; text-align:center;}
table.tbl5 td img { }
table.tbl5 tr:nth-child(2n+1) {

}

table.tbl6 { width:100%; font-size:90%;}
table.tbl6 th,table.tbl6 td { border:1px solid #ddd; padding:3px;  box-sizing: border-box; vertical-align:middle; text-align:center;}
table.tbl6 td input.w20 { width:20%;}
table.tbl6 th { background:#336633; color:#fff; text-align:center;}
table.tbl6 td img { }
table.tbl6 tr:nth-child(2n+1) {

}

/* =====================================
 6. 汎用プロパティ
===================================== */

.fl { float: left;}
.fr { float: right;}

.mt05 { margin-top: 5px !important;}
.mt10 { margin-top: 10px !important;}
.mt15 { margin-top: 15px !important;}
.mt20 { margin-top: 20px !important;}
.mt25 { margin-top: 25px !important;}
.mt30 { margin-top: 30px !important;}
.mt35 { margin-top: 35px !important;}
.mt40 { margin-top: 40px !important;}
.mt45 { margin-top: 45px !important;}
.mt50 { margin-top: 50px !important;}

.mr05 { margin-right: 5px !important;}
.mr10 { margin-right: 10px !important;}
.mr15 { margin-right: 15px !important;}
.mr20 { margin-right: 20px !important;}
.mr25 { margin-right: 25px !important;}
.mr30 { margin-right: 30px !important;}
.mr35 { margin-right: 35px !important;}
.mr40 { margin-right: 40px !important;}
.mr45 { margin-right: 45px !important;}
.mr50 { margin-right: 50px !important;}

.mb05 { margin-bottom: 5px !important;}
.mb10 { margin-bottom: 10px !important;}
.mb15 { margin-bottom: 15px !important;}
.mb20 { margin-bottom: 20px !important;}
.mb25 { margin-bottom: 25px !important;}
.mb30 { margin-bottom: 30px !important;}
.mb35 { margin-bottom: 35px !important;}
.mb40 { margin-bottom: 40px !important;}
.mb45 { margin-bottom: 45px !important;}
.mb50 { margin-bottom: 50px !important;}
.mb60 { margin-bottom: 60px !important;}
.mb70 { margin-bottom: 70px !important;}
.mb80 { margin-bottom: 80px !important;}
.mb90 { margin-bottom: 90px !important;}
.mb100 { margin-bottom: 100px !important;}

.ml05 { margin-left: 5px !important;}
.ml10 { margin-left: 10px !important;}
.ml15 { margin-left: 15px !important;}
.ml20 { margin-left: 20px !important;}
.ml25 { margin-left: 25px !important;}
.ml30 { margin-left: 30px !important;}
.ml35 { margin-left: 35px !important;}
.ml40 { margin-left: 40px !important;}
.ml45 { margin-left: 45px !important;}
.ml50 { margin-left: 50px !important;}

.pt05 { padding-top: 5px !important;}
.pt10 { padding-top: 10px !important;}
.pt15 { padding-top: 15px !important;}
.pt20 { padding-top: 20px !important;}
.pt25 { padding-top: 25px !important;}
.pt30 { padding-top: 30px !important;}
.pt35 { padding-top: 35px !important;}
.pt40 { padding-top: 40px !important;}
.pt45 { padding-top: 45px !important;}
.pt50 { padding-top: 50px !important;}
.pt100 { padding-top: 100px !important;}
.pt150 { padding-top: 150px !important;}
.pt200 { padding-top: 200px !important;}

.pr05 { padding-right: 5px !important;}
.pr10 { padding-right: 10px !important;}
.pr15 { padding-right: 15px !important;}
.pr20 { padding-right: 20px !important;}
.pr25 { padding-right: 25px !important;}
.pr30 { padding-right: 30px !important;}
.pr35 { padding-right: 35px !important;}
.pr40 { padding-right: 40px !important;}
.pr45 { padding-right: 45px !important;}
.pr50 { padding-right: 50px !important;}

.pb05 { padding-bottom: 5px !important;}
.pb10 { padding-bottom: 10px !important;}
.pb15 { padding-bottom: 15px !important;}
.pb20 { padding-bottom: 20px !important;}
.pb25 { padding-bottom: 25px !important;}
.pb30 { padding-bottom: 30px !important;}
.pb35 { padding-bottom: 35px !important;}
.pb40 { padding-bottom: 40px !important;}
.pb45 { padding-bottom: 45px !important;}
.pb50 { padding-bottom: 50px !important;}
.pb100 { padding-bottom: 100px !important;}

.pl05 { padding-left: 5px !important;}
.pl10 { padding-left: 10px !important;}
.pl15 { padding-left: 15px !important;}
.pl20 { padding-left: 20px !important;}
.pl25 { padding-left: 25px !important;}
.pl30 { padding-left: 30px !important;}
.pl35 { padding-left: 35px !important;}
.pl40 { padding-left: 40px !important;}
.pl45 { padding-left: 45px !important;}
.pl50 { padding-left: 50px !important;}

.tal { text-align:left;}
.tac { text-align:center;}
.tar { text-align:right;}

a:hover img {
	filter: alpha(opacity=70);
	/* Safari Opera */
	opacity:0.70;
	/* Firefox Netscape */
	-moz-opacity:0.70;
}

/*
 map
---------------------------------------------------------------------- */
.gmap {
	position: relative;
	padding-bottom: 50%; /* これが縦横比 */
	height: 0;
	overflow: hidden;
	overflow-y : hidden !important;
	margin-left: 0;
	margin-right: 0;
}
.gmap iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100% !important;
	height: 100% !important;
 border:0 !important;
 overflow-y : hidden !important;
}



/*
 ボタン
---------------------------------------------------------------------- */
.btn {
}

.btn a {
	display: block;
	padding: 15px 5px 15px 5px;
	font-size:90%;
	width:300px;
	margin:auto;
	box-sizing:border-box;
	text-align: center;
	color:#fff;
	background: #2c2422;
	position:relative;
	text-decoration:none;
	border-radius: 3px;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;

}
.btn a:active {/*ボタンを押したとき*/
    -ms-transform: translateY(4px);
    -webkit-transform: translateY(4px);
    transform: translateY(4px);/*下に動く*/
    border-bottom: none;/*線を消す*/
}
.btn_detail70 { width:70%; margin:0 auto;}


.btn a:hover {
	color:#fff;
	text-decoration: none;
	opacity: 0.8;
	filter: alpha(opacity=80);
	-ms-filter: "alpha( opacity=80 )";
	
 *zoom: 1;
	cursor:pointer;
    -webkit-transition: all 0.6s ease;
    -moz-transition: all 0.6s ease;
    -o-transition: all 0.6s ease;
    transition: all  0.6s ease;
	
	
}
.arrow{
    position: relative;
    display: inline-block;
    padding: 0 0 0 16px;
    color: #000;
    vertical-align: middle;
    text-decoration: none;
    font-size: 15px;
}
.arrow::before,
.arrow::after{
    position: absolute;
    top: 0;
    bottom: 0;
    right: 15px;
    margin: auto;
    content: "";
    vertical-align: middle;
}
.sample2-2::before{
    width: 12px;
    height: 2px;
    background: #fff;
    -webkit-transform: rotate(135deg);
    transform: rotate(135deg);
}
.sample2-2::after{
    right: 16px;
    width: 8px;
    height: 8px;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
}


/*
 list
---------------------------------------------------------------------- */



@media only screen and (max-width: 768px) {

.pc_con { display:none!important;}
.sp_con { display: block!important;}

.img_l300 { width:auto; margin:0 auto 20px auto; float:none; max-width:300px;}

.btn a {

	width:200px;


}

}


/*
 ページトップ
------------------------------------------------------- */
#pagetop {
	width: 100%;
	height: 0;
	text-align: right;
	margin-right: auto;
	margin-left: auto;
	padding-bottom:0px;
	z-index: 99999;
}

#page-top {
	position: fixed;
	bottom: 0px;
	right: 0px;
	font-size: 100%;
	z-index: 9999;
}
#page-top a {

	text-decoration: none;

	width: 50px;
	height:50px;

	display: block;
		filter: alpha(opacity=80);
    /* Safari Opera */
    opacity:0.80;
    /* Firefox Netscape */
    -moz-opacity:0.80;
}
#page-top a img { width:100%;}
#page-top a:hover {

}

a[href^="tel:"] {
	pointer-events: none;
	cursor:text;
}

@media screen and (max-width: 767px) {
a[href^="tel:"] {
	pointer-events: auto;
	cursor:pointer;
}
}

 /* 全画面表示 */
.mainv {
  height: 100vh;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;

}


