@charset "UTF-8";


@media only screen and (max-width: 767px) {
/* common 
-------------------------------------------------------------*/
* {
  -webkit-text-size-adjust: 100%;
  line-height: 150%;
}

body#recruit_page   { font-size: 14px; }
#recruit_page  *{max-width : 100%;}


.box_size{width :100% ; margin: auto; max-width: 90%;}


#container{/*background: #fff; */padding: 0 0 20px 0; text-align: center;}
#recruit_page #container.career{background: #292929; padding: 20px 0; text-align: center;}

.w_height{
	height : 100vh;
}


#p_list{display: none;}

.st01{font-size : 24px; color : #333;
	font-family: "ヒラギノ明朝 ProN ","Hiragino Mincho ProN",Georgia,游明朝,"Yu Mincho",YuMincho,HGS明朝E,メイリオ,Meiryo,serif;
	line-height : 1.5;
	margin-bottom : 5%; text-align : center; display : inline-block;
	border-bottom: solid 3px #aad400;
	position: relative;
	font-weight : normal;
	letter-spacing: 2px;
}
.st01:after {
position: absolute;
content: " ";
display: block;
border-bottom: solid 3px #078207;
bottom: -3px;
width: 20%;
}
.st01:first-letter{
  color:#aad400;
  font-size:200%;
}

#recruit_page #container.career .st01{color:  white; border-bottom: solid 3px #e0e0b1;}
#recruit_page #container.career .st01:after {border-bottom: solid 3px #f26612;}
#recruit_page #container.career .st01:first-letter{color:#f26612;}


.st02{
	font-size : 24px; 
	font-family: "ヒラギノ明朝 ProN ","Hiragino Mincho ProN",Georgia,游明朝,"Yu Mincho",YuMincho,HGS明朝E,メイリオ,Meiryo,serif;
	line-height : 1.5;
	margin-bottom : 40px; text-align : center; display : inline-block;
	border-bottom: solid 3px #aad400;
	position: relative;
	font-weight : normal;
	letter-spacing: 2px;
}
.st02:after {
position: absolute;
content: " ";
display: block;
border-bottom: solid 3px #078207;
bottom: -3px;
width: 20%;
}


#recruit_page #container.career .st02{border-bottom: solid 3px #aaa;}
#recruit_page #container.career .st02:after{border-bottom: solid 3px #f26612;}

.align_c{text-align : center;}
.st03{
	position: relative;
	display: inline-block;
	padding: 0 55px;
	font-family: "ヒラギノ明朝 ProN ","Hiragino Mincho ProN",Georgia,游明朝,"Yu Mincho",YuMincho,HGS明朝E,メイリオ,Meiryo,serif;
	font-size : 18px;  
	margin : 0 auto 20px;
}

.st03:before, .st03:after{
/* content: ''; */
position: absolute;
top: 50%;
display: inline-block;
width: 45px;
height: 1px;
background-color: black;
}

.st03:before {left:0;}
.st03:after {right: 0;}

.st05{font-size : 18px; margin : 20px 0 10px ; font-weight : bold;}

.st06{font-size : 18px; margin : 0 0 30px ; padding : 6px; font-weight : normal; text-align : center ; border : solid #aaa 1px ; border-radius : 8px;}

.more_btn {
	text-align: center;
	display: block;
}
.more_btn a {
	display: inline-block;
	color : #1c3350;
	border: #4e6582 solid 2px;
	min-width: 260px;
	border-radius: 10px;
	font-size: 14px;
	position: relative;
	background: white;
	padding : 24px 0;
}
.more_btn a span{display: block; color : #aaa; font-size: 10px;}
.more_btn a i {
	position: absolute;
	right: 10px;
	top : 50%;
	margin-top: -9px;
	color : #4e6582;
	font-size: 20px;
}
.more_btn a:hover {
	background: #517ab2;
	color: white;
	text-decoration: none;
	-webkit-transition: all .3s;
	transition: all .3;
}


.banner_link2 {
	text-align: center;
	display: block;
	text-align: center;
}

.banner_link2 a{
	min-width : 90% ;
	background: white;
	display: table;
	border-radius: 10px;
	margin: 0 auto;
	box-sizing: border-box;
	padding-bottom : 10px;
	text-align: center;

}
.banner_link2 a:hover{text-decoration: none; opacity: 0.7;}
.banner_link2 a span{display: block; width: 100%;}
.banner_link2 a span.link_page{background: #da7716; color : white; padding : 10px 0; text-align: center; font-size: 24px;
	border-radius: 10px 10px 0 0 ; margin-bottom: 10px;}
.banner_link2 a span.link_en{vertical-align: middle; font-size: 12px; color: #495c73;}
.banner_link2 a span.link_en i{color : #da7716 ; font-size : 14px; margin-left : 6px;}



#recruit_page .banner_link2 a img{border : solid 1px #aaa;}


.banner_link4{text-align : center;}
.banner_link4　li{display: block; margin-bottom : 20px;}
.banner_link4 a {
	width : 90%;
	margin : 0 auto;
	text-align : left;
	display:block;
	color : #1c3350;
	border: #4e6582 solid 2px;
	border-radius: 10px;
	font-size: 20px;
	position: relative;
	background: white;
	padding : 12px;
	text-decoration : none;
	margin-bottom : 20px;
}
.banner_link4 a:hover{text-decoration : none!important;}

.banner_link4 a span{ color : #aaa; font-size: 12px;  display:block;}
.banner_link4 a i {
	position: absolute;
	right: 10px;
	top : 50%;
	margin-top: -9px;
	color : #4e6582;
	font-size: 20px;
}
.banner_link4 a:hover {
	background: #517ab2;
	color: white;
	text-decoration: none;
	-webkit-transition: all .3s;
	transition: all .3;
}


/*リンクなし*/
.banner_link4 p {
	width : 90%;
	margin : 0 auto;
	text-align : left;
	display:block;
	color : #1c3350;
	border: #4e6582 solid 2px;
	border-radius: 10px;
	font-size: 20px;
	position: relative;
	background: #eaeaea;
	padding : 12px;
	text-decoration : none;
	margin-bottom : 20px;
}

.banner_link4 p span{ color : #aaa; font-size: 12px;  display:block;}




.b_sp{margin-bottom: 40px;}

.b_sp2{margin-bottom:20px;}
/*
#pagetop{
    z-index: 777S;
    background: #566d8a;
    display: inline-block;
    color: white;
	font-size: 30px;
    text-align: center;
    line-height: 40px;
    position: fixed;
    right: 10px;
    bottom: 20px;
    width: 40px;
    height: 40px;
    border-radius: 30px;
    margin-bottom : 50px;
}

#pagetop a{
color: white;
display: block;
}

#pagetop.stop{position: absolute; right : 10px; bottom : 10px; margin : 0;}

*/


#recruit_page #pagetop{
    z-index: 9999!important;
    background: #566d8a;
    display: inline-block;
    color: white;
    font-size: 30px;
    text-align: center;
    line-height: 40px;
    position: fixed;
    right: 20px;
    bottom: 20px;
    width: 40px;
    height: 40px;
    border-radius: 30px;
}

#recruit_page #pagetop a{
color: white;
display: block;
}
#recruit_page #pagetop.stop{position: absolute; right : 20px; bottom : 20px;}

#recruit_page a{
	transition-duration: 0.3s;	/*変化に掛かる時間*/
}
#recruit_page a:hover{
	transition-duration: 0.3s;	/*変化に掛かる時間*/
}




a{
	transition-duration: 0.3s;	/*変化に掛かる時間*/
}
a:hover{
	transition-duration: 0.3s;	/*変化に掛かる時間*/
}

/* header 
-------------------------------------------------------------*/
#hd_box{position: fixed; top:0; left: 0; width: 100%; z-index: 9999;}
#header{background-color: rgba(255,255,255,0.9); padding: 0 3%;box-shadow:0px 0px 3px 3px #aaaaaa; }
#g_navi{z-index: 9999;}
#g_navi h1{float : left; max-width : 30%;}
#g_navi h1 img{display: block; width: 100%;}
/*
#g_navi nav{display: none;}
*/
#g_navi_menu{display: none;}
#sp_menu{float : right; font-size :9vw; line-height: 1;}

#sp_menu .fa-times{display: block;}
#sp_menu .fa-bars{display: none;}

#sp_menu.open .fa-bars{display: block;}
#sp_menu.open .fa-times{display: none;}

.close{display: none;}

#sub_navi{display: none;}


#sp_pull_menu{
	background-color: rgba(28,51,80,0.7); 
	text-align: center;
	margin : auto;
	display: none;
	opacity: 0;
  z-index: 9999;

}
#sp_pull_menu.open{
	display: block; 
	opacity: 1;

      animation-duration: 0.5s;
      animation-name: fade-in;
      -moz-animation-duration: 0.5s;
      -moz-animation-name: fade-in;
      -webkit-animation-duration: 0.5s;
      -webkit-animation-name: fade-in;
}
#sp_pull_menu a{color : white; display: block; padding : 20px 0;} 
#sp_pull_menu a:hover{text-decoration: none; background : #1c3350;}

#sp_pull_menu li{font-size : 22px;border-bottom: dotted #eaeaea 1px ;}
#sp_pull_menu li:last-child{border-bottom : 0; margin-bottom : 80px; padding-bottom: 0;}

#sp_pull_menu ul{overflow: scroll; height :100vh; }
/*
 * html, body {
  overflow: auto;
  height: 100%;
}*/
body.fixed{ overflow: hidden;}

.breadcrumbs{display : none;}


/* side 
-------------------------------------------------------------*/
#recruit_page{padding-bottom : 100px;}
#cr{text-align : center; padding-top : 5px;}

#side_btn{position: fixed; left : 0; bottom : 0; text-align:  center; width : 100%; z-index: 4444;}
#side_btn li{width: 45%; margin : 0 2%; display: inline-block; }
#side_btn li a{border-radius: 10px 10px 0 0px; display: block; color : white; padding : 15px 0; position: relative; text-align : center; background : #566d8a; border-radius : 6px 6px 0 0;}
#side_btn li a span{ display: block; opacity: 0.6; font-size: 10px;}
#side_btn li a i{position: absolute; right : 3px; top : 50%; margin-top : -0.5em;}
#side_btn li a:hover{opacity: 0.7; text-decoration: none;}
#side_btn li#side_contact a{background : #212529;}
#side_btn li#side_recruit a{background : #566d8a;}
/*
body#recruit_page #side_btn #side_recruit{display: none; width: 80%;}
body#contact_page #side_btn #side_contact{display: none; width: 80%;}
body#recruit_page #side_btn #side_contact{ width: 80%;}
body#contact_page #side_btn #side_recruit{width: 80%;}
*/


#side_btn{display: none;　opacity: 0;}
#side_btn.open{
	display: block; 
	opacity: 1;
      animation-duration: 0.5s;
      animation-name: fade-in;
      -moz-animation-duration: 0.5s;
      -moz-animation-name: fade-in;
      -webkit-animation-duration: 0.5s;
      -webkit-animation-name: fade-in;

}

@keyframes fade-in {
      0% {
        display: none;
        opacity: 0;
      }

      1% {
        display: block;
        opacity: 0;
      }

      100% {
        display: block;
        opacity: 1;
      }
    }

    @-moz-keyframes fade-in {
      0% {
        display: none;
        opacity: 0;
      }

      1% {
        display: block;
        opacity: 0;
      }

      100% {
        display: block;
        opacity: 1;
      }
    }

    @-webkit-keyframes fade-in {
      0% {
        display: none;
        opacity: 0;
      }

      1% {
        display: block;
        opacity: 0;
      }

      100% {
        display: block;
        opacity: 1;
      }
    }


/* footer 
-------------------------------------------------------------*/
#recruit_page #sns_box{background : #d8d8d8; text-align:  center; padding : 35px 0; }
#recruit_page #sns_box ul{text-align: center;}
#recruit_page #sns_box li {display: inline-block; margin : 0 4px;}
#recruit_page #sns_box li a:hover{opacity: 0.6;}

#recruit_page #footer {background: #27313d; color : white;}
#recruit_page #footer a{color : white;}

#recruit_page #footer .box_size{}
#recruit_page #footer .box_size .company_data{text-align : center; padding : 35px 5%;}

#recruit_page #footer .box_size .company_data img{margin-bottom : 10px;}
#recruit_page #footer .box_size .company_data dt{font-size : 18px; margin-bottom : 10px;}
#recruit_page #footer .box_size .company_data dd{font-size : 14px; text-align: left; }

#recruit_page #footer .map_link a{background : white; color : #27313d; font-size: 12px; padding : 2px 10px;}
#recruit_page #footer .map_link a:hover{opacity: 0.6; text-decoration: none;}
#recruit_page .sitemap {}

.sp_sitemap {padding:0 5% 10px; text-align: left;}
.sp_sitemap ul:before{content: "|"}
.sp_sitemap li:after{content: "|"}
.sp_sitemap li{display: inline-block; text-align: center;}
.sp_sitemap li a{color : white; padding: 0 10px; text-decoration: underline;}

#recruit_page #copyright{background: white; padding : 20px 0; text-align: center; font-size: 12px; padding-bottom : 80px;}

/* layout 
-------------------------------------------------------------*/


#page{padding-top : 55px;}

#hd_box{position: fixed; top:0; left: 0; width: 100%; z-index: 9999; height : 55px; background : white;}
#hd_box #new_header{padding-top : 10px;}
#new_pull_menu{
	background-color: rgba(28,51,80,0.9); 
	text-align: center;
	margin : auto;
	display: none;
	opacity: 0;
  z-index: 9999;
	height : calc(100vh - 55px);
	position:fixed;
	top : 55px;
	left : 0;
	width : 100%;
	box-sizing:border-box;
}
#new_pull_menu.open{
	display: block; 
	opacity: 1;
      animation-duration: 0.5s;
      animation-name: fade-in;
      -moz-animation-duration: 0.5s;
      -moz-animation-name: fade-in;
      -webkit-animation-duration: 0.5s;
      -webkit-animation-name: fade-in;
}
#new_pull_menu a{color : white; padding : 10px 0; display:inline-block; width : 90%;} 
#new_pull_menu .pull{position : relative; width : 100%; display : block; }

#new_pull_menu .pull:after{
		content: "▼";
    position: absolute; right : 0; top : 50%;
	margin-top : -0.5em;
	font-size : 16px;
	color : white;
	}
#new_pull_menu .pull.active:after{
		content: "△";
    position: absolute; right : 0; top : 50%;
	margin-top : -0.5em;
	font-size : 16px;
	color : white;
	}



#new_pull_menu li{font-size : 16px;border-bottom: dotted #eaeaea 1px ; text-align : left;}
#new_pull_menu li ul {margin-bottom : 40px;}
#new_pull_menu li ul li{border-bottom : 0; margin-left : 20px; }

#new_pull_menu li ul li:before{content:"- ";  color : white;}
#new_pull_menu li ul{display:none;}

#new_pull_menu ul.scroll{
	overflow-y: auto;
height : 90%; 
    padding: 0 20px 30px;}


body.fixed{ 
overflow : hidden;
	height : 100%;
	position:fixed;
}

#recruit_page #hd_box{padding : 0 5%;}

#recruit_page #sub_navi {background : rgba(28,51,80,0.9);  display:block; top: 55px; padding: 10px; left : 0; position : absolute; left : 0; opacity : 1; transition: all 0.3s; }
#recruit_page #sub_navi  a{color : white;}
#recruit_page #sub_navi  li{display : inline-block; font-size : 100%; margin : 0 10px 10px;}
#recruit_page #sub_navi.close{ opacity : 0; transition: all 0.3s; }

#g_navi h1 img{display: block; max-height : 35px; width : auto;}
#sp_menu{font-size : 35px;}

/* 全体footer 
-------------------------------------------------------------*/
#sns_box{
	 background: #d8d8d8;
    text-align: center;
    padding: 35px 0;
}

.clear{overflow: hidden;}
.clear:after{content: "";display: block;clear: both;height: 1px;overflow: hidden;}
* html .clear{height: 1em;overflow: visible;}

#new_footer {background: #27313d; color : white;  padding-top : 20px; } 
#new_footer a{color : white;padding-bottom: 10px;display: inline-block;}

#new_footer .box_size{width : 96%; margin : 0 auto;} 
#new_footer .box_size .company_data{ text-align : left; padding : 20px 0; font-size : 12px; }
#new_footer .box_size .company_data br{display:none;}

#new_footer .box_size .company_data img{margin-bottom : 10px; margin : 0 auto; display:block; max-width : 50%;}
#new_footer .box_size .company_data dl dt{font-size : 18px; margin-bottom : 10px;}
#new_footer .box_size .company_data dl dd{font-size : 14px; margin:0; padding : 0; }

#new_footer .map_link a{background : white; color : #27313d; font-size: 12px; padding : 2px 10px;}
#new_footer .map_link a:hover{opacity: 0.6; text-decoration: none;}
#new_footer .sitemap {padding : 10px; margin : 0; }
#new_footer .sitemap ul.f_l{width : 100%; }
#new_footer .sitemap li{display:block; margin : 0 0 10px; width : auto;}
#new_footer .sitemap li a:before{content:"- "; }
#new_footer .sitemap li span{border-bottom : solid #fff 1px; display:block; position:relative;
}
#new_footer .sitemap li.switch span:after{
		content: "▼";
    position: absolute; right : 0; top : 0;
	font-size : 10px;
	}
#new_footer .sitemap li.switch span.active:after{
		content: "▲";
    position: absolute; right : 0; top : 0;
	font-size : 10px;
	}
#new_footer .sitemap li.switch ul li span:after{
		content: "▽";
    position: absolute; right : 0; top : 0;
	font-size : 10px;
	}
#new_footer .sitemap li.switch ul li span.active:after{
		content: "△";
    position: absolute; right : 0; top : 0;
	font-size : 10px;
	}
#new_footer .sitemap li ul li span{border : 0; display:block; }
#new_footer .sitemap li ul{padding-top : 10px;
      transition: all 0.3s;
      opacity: 0;
		display:none;
	}
#new_footer .sitemap li ul.active{
		opacity: 1; 
		display:block;
	}
#new_footer .sitemap li ul li ul{margin : 0px;}
#new_footer .sitemap li ul li{list-style-type : disc; padding : 0 0 0 1em; margin : 0 0 5px; }
#new_footer .sitemap li ul li a{display:block; text-indent: -0.7em;}
#new_footer .sp_sitemap{display: none;}


copyright #cr{font-size : 10px; padding : 10px 0;}
#new_footer .box_size .company_data dl dt{text-align : center;}

}