@charset "shift_jis";
/* CSS Document */
* {
	margin:0;
	padding:0;
}
strong {
	font-weight:500;
}
.wf-notosansjapanese { font-family: "Noto Sans Japanese"; }
.smp_740 {
	display: none;
}
body {
	text-align:center;
	font-family: 'Makinas';
	font-size:18px;
	line-height:130%;
}
.aligncenter,
p.aligncenter {
	text-align:center;
}
.toppage h2 {
	color:#172A88;
	font-size:1.7777777777778rem;/* 32px */
	line-height:110%;
	font-weight:500;
	margin-bottom:35px;
}
.toppage h3 {
	color:#172A88;
	font-size:2.2222222222222rem;/* 40px */
	line-height:110%;
	font-weight:500;
	margin-bottom:35px;
}

.subpage h3 {
	color:#172A88;
	font-size:40px;
	line-height:110%;
	font-weight:500;
	min-width:260px;
	margin:auto auto 25px auto;
	display:inline-block;
	text-align:center;
	padding-top:5px;
	padding-left:20px;
	padding-right:20px;
}
.subpage h3::after {
	border-bottom:solid 2px #172A88;
	width:100%;
	content:"";
	position:relative;
	display:block;
	padding-top:25px;
}
.subpage .sub_texture h3 {
	color:#172A88;
}
.subpage .sub_texture h3::after {
	border-bottom:solid 2px #172A88;
}

ul,
.display_bl {
	display: block;
	letter-spacing: -0.6em;
	list-style-type: none;
}
li,
.display_in {
	letter-spacing: normal;
	display: inline-block;
	vertical-align: top;
	*display: inline;  
	*zoom: 1;
}
/* 画像設定 */
img {
	border:0;
	max-width:100%;
	height:auto;
	vertical-align: bottom;
}
img.alignright {
	float:right;
	padding-left:30px;
}
a {
}
a:hover {
}
a img
{
	background:none!important;
	border:0;
}
a:hover img
{
	opacity:0.6;
	filter:alpha(opacity=60);
	-ms-filter: "alpha( opacity=60 )";
	background:none!important;
}
a:hover img.none_alpha
{
	opacity:1;
	filter:alpha(opacity=100);
	-ms-filter: "alpha( opacity=100 )";
	background:none!important;
}

a.btn_link {
	background-color:#172A88;
	background-image: url(../images/icon_arrow_right.png);
	background-size:16px auto;
	background-position:95% center;
	background-repeat:no-repeat;
	min-width:300px;
	padding:15px 50px 15px 30px;
	box-sizing:border-box;
	color:#FFFFFF;
	font-size:1.1666666666667rem;
	line-height:100%;
	text-decoration:none;
	display: inline-block;
}
.btn_link_box {
	background-color:#172A88;
	background-image: url(../images/icon_arrow_right.png);
	background-size:16px auto;
	background-position:95% center;
	background-repeat:no-repeat;
	min-width:300px;
	padding:15px 50px 15px 30px;
	box-sizing:border-box;
	color:#FFFFFF;
	font-size:1.1666666666667rem;
	line-height:100%;
	text-decoration:none;
	display: inline-block;
}

a.btn_link:hover,
a:hover .btn_link_box{
	background-color:#C5A05A;
}
.top_content_jigyo ul li a:hover {
	background-color:#172A88;
}
#stage,
#tower,
#steel {
	display:block;
	height:110px;
	margin-top:-110px;
}
/* ヘッダー */
header {
    background-color: #FFFFFF;
    width: 100%;
    position: relative;
    color: #000000;
	height:100px;
	position:fixed;
	width:100%;
	top:0;
	left:0;
	z-index:9999;
    box-shadow: 0 0 3px #000000;
	text-align: left;

}
header .head_logo_box {
	position:relative;
    top: 0;
    left: 20px;
    text-align: left;
    padding-top: 20px;
    padding-bottom: 20px;
	width:30%;
	vertical-align:middle;
}
header .head_logo_box h1 {
    margin: 0;
	font-size:0.8rem;
	line-height:100%;
	font-weight:500;
}
header .head_nav_box{
	width:70%;
	text-align:right;
	padding-right:0px;
	box-sizing:border-box;
	vertical-align:middle;
}
#main-nav {
	text-align:right;
}
.stellarnav li.header_tel {
	background:#0081E4;
	padding:28px 20px 27px 20px;
	
}
li.active {
	position:relative;
}
li.active a::before,
li.hover a:hover::before {
 border-bottom: 3px solid #172A88;
 content: "";
 display: block;
 margin-top: 20px;
 position: absolute;
 width: 68%;
 margin-left: auto;
 margin-right: auto;
 left: 0;
 right: 0;
 bottom:20px;
 -webkit-animation: fadeIn 2s ease 0s 1 normal;
 -moz-animation: fadeIn 2s ease 0s 1 normal;
 animation: fadeIn 2s ease 0s 1 normal;

}
li.header_tel a:hover::before {
	display:none;
}
table{
	margin:20px auto;
	border-top:1px solid #E9E9E9;
	border-collapse: collapse;
	width:96%;
	max-width:1240px;
}
table th,
table td {
	padding:15px 10px;
	box-sizing:border-box;
	text-align:left;
	border-bottom:1px solid #E9E9E9;
	background-color:#FFFFFF;
}
table th {
	font-weight:500;
	position:relative;
	box-sizing:border-box;
}
table th::after {
	content:"\f0da";
	font-family:FontAwesome;
	position:absolute;
	top:16px;
	right:5px;
	color:#BA8B40;
}
table.history{
	border:none;
	margin-bottom:70px;
}
.recruit_bb table.history{
	max-width:950px;
}
.recruit_bb table.history p{
	text-indent:-2.6rem;
	padding-left:2.6rem;
	margin:0;
}

table.work_d {
	border:none;
	margin-bottom:0px;
	margin-top:0;
}
table.work_d th::after {
    content: "\f0da";
    font-family: FontAwesome;
    position: absolute;
    top: 11px;
    right: 5px;
    color: #BA8B40;
}
table.history th,
table.history td,
table.work_d th,
table.work_d td {
	background-color:#FFFFFF;
	border:none;
}
table.work_d th,
table.work_d td {
	padding:10px;
	font-size:0.98rem;
}
table.work_d th{
	box-sizing:border-box;
	width:130px;
}

table.history tr,
table.work_d tr {
	overflow:hidden;
}
table.history tr:nth-child(odd) th,
table.history tr:nth-child(odd) td,
table.work_d tr:nth-child(odd) th,
table.work_d tr:nth-child(odd) td {
	background-color:#D1D4E7;
}
table.work_d tr td:nth-child(3){
	background-color:#172A88;
	box-sizing:border-box;
	border-bottom:1px solid;
	color:#FFFFFF;
	text-align:center;
}
#main_ph {
    width: 100%;
    padding-top: 99px;
}
.inner {
	max-width:1240px;
	width:98%;
	margin:auto;
}
.top_content_catch {
	max-width:1240px;
	width:100%;
	margin:auto;
	background-image:url(../images/top_bg_illa.png);
	background-repeat:no-repeat;
	background-position:center center;
	background-size:817px auto;
	padding:185px 1% 0 1%;
	min-height:505px;
	box-sizing:border-box;
}
.top_content_catch p {
	text-align:center;
	margin-bottom:35px;
}
.top_content_jigyo {
	background-color:#F3ECDE;
	position:relative;
	padding:50px 0 80px 0;
}
.top_content_jigyo::before {
	position: absolute;
	content:"";
	display:block;
	width:100%;
	background-image: url(../images/bg_before.png);
	background-repeat:repeat-x;
	background-position:center bottom;
	background-size:1440px auto;
	top:-49px;
	height:50px;
}
.top_content_jigyo ul {
	text-align:center;
}
.top_content_jigyo ul li {
	width:49.7%;
}
.top_content_jigyo ul li a {
	background-color:#0081E4;
	color:#FFF;
	text-decoration:none;
	display:block;
	width:100%;
	padding:0 0 45px 0;
	background-image:url(../images/icon_arrow_bottom.png);
	background-size:24px auto;
	background-position:center 95%;
	background-repeat:no-repeat;
	font-size:1.5rem;
	line-height:100%;
}
.top_content_jigyo ul li a span {
	display:block;
	padding-top:10px;
	text-align:center;
}
.top_content_jigyo ul li span.image_b {
	background-color:#FFF;
	padding:0;
}
.top_content_jigyo ul li:nth-child(2) {
	margin-left:1px;
}
.top_content_recruit {
	background-image: url(../images/top_contents_r_bg.jpg);
	background-position:center top;
	background-size:cover;
	background-repeat:no-repeat;
	box-sizing:border-box;
	font-size:1.4rem;
	line-height:2.3rem;
	color:#FFFFFF;
}
.top_content_recruit a {
	padding-top:100px;
	display:block;
	width:100%;
	box-sizing:border-box;
	height:100%;
	text-decoration:none;
	color:#FFF;
	min-height:499px;
}
.top_content_recruit p {
	padding:40px 0;
}
.recruit_bottom_ph li:nth-child(1){
	width:40%;
}
.recruit_bottom_ph li:nth-child(2){
	width:60%;
}

/*　サブページ　*/
.cloum5_ph ul li {
	width:20%;
	padding:10px;
	box-sizing:border-box;
}
.cloum5_ph ul li img {
	box-sizing:border-box;
	border:4px solid #FFFFFF;
}
#content_sub {
	background-image: url(../images/sub_page_tt.png);
	background-repeat: no-repeat;
	background-position: center 100px;
	padding:98px 0 0 0;
}
#content_sub .inner {
	max-width:1240px;
	padding:50px 0;
	width:98%;
	margin:auto;
}
#content_sub .sub_texture .inner {
	padding:0px 0;
}
.page_p {
	padding:0;
	text-align:center;
	width:100%;
	margin-bottom:35px;
	height:30px;
}
.page_p ul {
	max-width:1240px;
	width:98%;
	margin-left:auto;
	margin-right:auto;
	color:#FFF;
	text-align:left;
	font-size:0.83rem;
	line-height:30px;
}
.page_p ul a {
	color:#FFF;
	text-decoration:underline;
}
.page_p ul a:hover{
	color:#FFF;
	text-decoration:none;
}
#content_sub h2 {
	font-size:2.3rem;/*40px*/
	line-height:150%;
	display:block;
	max-width:400px;
	width:100%;
	text-align:center;
	font-weight:500;
	color:#FFF;
	margin:auto auto 10px auto;
	background:#172A88;
	padding:30px 0;
}
#content_sub h2 span {
	display:block;
	text-align:center;
	font-size:1.1rem;/*20px*/
	line-height:110%;
	letter-spacing:0.3em;
}

.sub_texture {
	background-color:#F3ECDE;
	position:relative;
	padding:50px 0 80px 0;
	margin-top:50px;
	margin-bottom:50px;
}
.sub_texture.last{
	margin-bottom:0;
}
.sub_texture::before {
	position: absolute;
	content:"";
	display:block;
	width:100%;
	background-image: url(../images/bg_before.png);
	background-repeat:repeat-x;
	background-position:center bottom;
	background-size:1440px auto;
	top:-49px;
	height:50px;
}
.sub_texture::after {
	position: absolute;
	content:"";
	display:block;
	width:100%;
	background-image: url(../images/bg_after.png);
	background-repeat:repeat-x;
	background-position:center bottom;
	background-size:1440px auto;
	bottom:-49px;
	height:50px;
}
.sub_texture.last::after {
	display:none!important;
}
.gaiyo_left,
.gaiyo_right {
	width:50%;
	box-sizing:border-box;
	padding-top:20px;
}
.gaiyo_left {
	padding-right:0px;
	padding-left:35px;
}
.gaiyo_right {
	padding-right:35px;
	padding-left:35px;
}
.gaiyo_right ul li {
	width:100%;
	margin-bottom:30px
}
.gaiyo_left table {
	margin:0 auto;
}
.ph_jigyo_01 {
	background-image: url(../images/jigyo_ph000.jpg);
	background-repeat: no-repeat;
	background-position: center center;
	background-size:cover;
	width:100%;
	box-sizing:border-box;
	padding-left:50%;
	min-height:435px;
	margin-bottom:35px;
}
.txt_1 {
    background-image: url(../images/bg_black-01.png);
    background-repeat: repeat;
    background-position: center center;
    color: #FFF;
    text-align: center;
    width: 100%;
    padding: 50px 20px;
    min-height: 435px;
    box-sizing: border-box;
	position:relative;
}
.txt_1 p {
    position: absolute;
    margin: auto;
    top: 0;
    bottom: 0;
    height:200px;
    left: 0;
    right: 0;
	font-size:1.2rem;
	line-height:180%;
}
.ggmap {
	position: relative;
	padding-bottom: 75%;
	padding-top: 30px;
	height: 0;
	overflow: hidden;
	width:98%;
	margin:auto;
}
.ggmap iframe, .ggmap object, .ggmap embed {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
/*　フッター　*/
footer {
	background-color:#0081E4;
	background-image:url(../images/footer_bg.png);
	background-position:right center;
	background-repeat:no-repeat;
	background-size:auto 100%;
	box-sizing:border-box;
	padding:50px 0 0 0;
	color:#FFF;
	text-shadow: 0 0 6px #0081E4;
	font-family: "Noto Sans Japanese";
}
footer strong {
    font-size: 1.6rem;
    line-height: 200%;
    font-weight: 800;
   }
footer p {
	text-align:left;
	display:block;
	padding-left:60px;
	box-sizing:border-box;
	position:relative;
}
footer p::before {
	display:block;
	content:"";
	background-image:url(../images/footer_logo.png);
	background-size:50px auto;
	background-repeat:no-repeat;
	width:50px;
	height:60px;
	top:0;
	left:0;
	position: absolute;
}
#copyright {
	padding-top:50px;
	color:#FFFFFF;
	text-align:left;
	font-size:0.8rem;
	max-width:1240px;
	width:98%;
	margin:0 auto;
}
.work_ph li {
	width:50%;
	box-sizing:border-box;
	padding:20px;
	margin-bottom:30px;
}
.work_ph li img {
	margin-bottom:10px;
}
.work_ph li strong {
	display:block;
	color:#BA8B40;
	font-size:1.6rem;/*25px*/
	line-height:120%;
	border-left:solid 6px;
	padding-left:20px;
	padding-top:5px;
	text-align:left;
}
.work_box .work_left,
.work_box .work_right{
	width:50%;
	box-sizing:border-box;
}
.work_box .work_left{
	padding-right:20px;
}
.work_box .work_right{
	padding-left:20px;
}
.recruit_top_ph {
	background-image: url(../images/recruit_main_ph.jpg);
	background-repeat: no-repeat;
	background-position: center center;
	background-size:cover;
	height:0;
	padding-top:30%;
	position:relative;
}
/*.recruit_top_ph::before {
	content:"";
	background-image: url(../images/bg_black-02.png);
    background-repeat: repeat;
    background-position: center center;
	display:block;
	width:100%;
	height:100%;
	position:absolute;
	z-index:99;
	top: 0;
}*/
.recruit_top_ph img {
	position:absolute;
	z-index:100;
	margin:auto;
	top:0;
	bottom:0;
	left:0;
	right:0;
}
.tx25 {
	font-size:1.4rem;/*25px*/
	line-height:150%;
}
.tx40 {
	font-size:2.3rem;/*40px*/
	line-height:150%;
}
/* テキスト装飾 */
.tx_red {
	color: #C00;
}
.tx_blue {
	color:#03C;
}
.tx_green {
	color:#093;
}

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

header .head_logo_box {
    left: 0px;
    text-align: left;
    padding-top: 20px;
    padding-bottom: 20px;
    width: 50%;
    margin-right: 50%;
    position: absolute;
    z-index: 99999999;
}
header .head_nav_box {
    width: 100%;
    text-align: right;
    padding-right: 0px;
    box-sizing: border-box;
    vertical-align: middle;
    position: absolute;
    z-index: 999999;
    right: 0;
}
.gaiyo_left,
.gaiyo_right,
.work_box .work_left,
.work_box .work_right{
	width:100%;
	box-sizing:border-box;
	padding-right:0;
	padding-left:0px;
}
.work_right table.work_d tr:nth-child(odd) th,
.work_right table.work_d tr:nth-child(odd) td {
	background-color:#FFFFFF;
}
.work_right table.work_d tr:nth-child(even) th,
.work_right table.work_d tr:nth-child(even) td {
	background-color:#D1D4E7;
}
.work_right table.work_d tr:nth-child(even) td:nth-child(3),
.work_right table.work_d tr:nth-child(odd) td:nth-child(3){
	background-color:#172A88;
	box-sizing:border-box;
	border-bottom:1px solid;
	color:#FFFFFF;
	text-align:center;
}
}
@media only screen and (max-width :890px) {
.ph_jigyo_01 {
    background-image: url(../images/jigyo_ph000_smp.jpg);
    background-size: 100% auto;
    padding-left: 0;
    padding-top: 70.32%;
    min-height: none;
    background-position: center top;
}
.txt_1 {
    min-height: auto;
}
.txt_1 p {
    position: relative;
    margin: auto;
    top: auto;
    bottom: auto;
    height: auto;
    left: auto;
    right: auto;
}
.cloum5_ph ul {
	text-align:left;
}
.cloum5_ph ul li {
    width: 33.3%;
    padding: 10px;
    box-sizing: border-box;
}
.recruit_bottom_ph li:nth-child(1),
.recruit_bottom_ph li:nth-child(2){
	width:100%;
}

table.work_d th{
	width:200px;
}
table.work_d th,
table.work_d td {
	padding:10px;
	font-size:1.2rem;
}
.recruit_top_ph {
	background-image: url(../images/recruit_main_ph_smp.jpg);
	background-repeat: no-repeat;
	background-position: center center;
	background-size:cover;
	height:0;
	padding-top:73%;
	position:relative;
}

}

@media only screen and (max-width :740px) {
.smp_740 {
	display: inherit;
}
.pc_740 {
	display: none;
}

.top_content_jigyo ul li,
.top_content_jigyo ul li:nth-child(2)  {
	width:96%;
	margin-left:2%;
	margin-right:2%;
	margin-bottom:20px;
}
.top_content_jigyo ul li a span {
    display: block;
    padding-top: 20px;
    text-align: center;
    padding-bottom: 10px;
}
.work_ph li {
    width: 100%;
    box-sizing: border-box;
    padding: 20px;
    margin-bottom: 30px;
}
table.work_d th, table.work_d td {
    padding: 10px 5px;
    font-size: 1.1rem;
}
table.work_d th {
    width: 140px;
}
.recruit_bb table.history {
	width:100%;
	display: block;
	letter-spacing: -0.6em;
	list-style-type: none;
	border:1px solid #E3E3E3;
    font-size: 1.1rem;
}
.recruit_bb table.history tr:nth-child(odd) th,
.recruit_bb table.history tr:nth-child(even) th{
	background-color:#D1D4E7;
}
.recruit_bb table.history tr th::after{
	display:none;
}
.recruit_bb table.history tr:nth-child(odd) td,
.recruit_bb table.history tr:nth-child(even) td {
	background-color:#FFFFFF;
}
.recruit_bb table.history tbody,
.recruit_bb table.history tr,
.recruit_bb table.history th,
.recruit_bb table.history td {
	letter-spacing: normal;
	display: inline-block;
	vertical-align: top;
	*display: inline;  
	*zoom: 1;
	width:100%;
	box-sizing:border-box;
}
}

@media only screen and (max-width :560px) {
.pc_560 {
	display:none;
}
.br::before {
	content: "\A" ;
	white-space: pre ;
}
header .head_logo_box {
    width: 70%;
    margin-right: 30%;
    position: absolute;
    z-index: 99999999;
}
.top_content_catch {
    background-size: auto 100%;
    padding:265px 1% 105px 1%;
    min-height: inherit;
    box-sizing: border-box;
}
table.history th {
	width:120px;
}
.txt_1 p {
    font-size: 1.2rem;
    line-height: 130%;
}
.tx25 {
    font-size: 1.5rem;
    line-height: 1.8rem;
}
}
@keyframes fadeIn {
    0% {opacity: 0;}
    100% {opacity: 1;}
}

@-webkit-keyframes fadeIn {
    0% {opacity: 0}
    100% {opacity: 1}
}

