@charset "utf-8";
/** |READ ME| **********************************************************************************************************

"Top"

Cascading Style Sheet Setting File

Ver.20240111

------------------------------------------------------------------------------------------------------------------------

/** |01. Reset | >> ********************************************************************************* >> START **/

*{margin:0;padding:0;list-style:none;}
table {border-collapse:collapse;border-spacing:0;border:0;}
fieldset,img {border:0;}
address,caption,cite,code,dfn,em,th,var {font-style:normal;font-weight:normal;}
em{font-style:normal;font-weight:bold;}
ol,ul {list-style:none;margin:auto;padding:0;font-family:heisei-kaku-gothic-std,"游ゴシック体", "Yu Gothic",'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', Meiryo, メイリオ,arial, helvetica, sans-serif;}
caption,th {text-align:left;}
h1,h2,h3,h4,h5,h6 {font-size:100%;font-weight:normal;}
small{font-weight:400;}
q:before,q:after {content:'';}
abbr,acronym {border:0;}
a img {border:none;outline:none;}
img {border:none;font-size:0;line-height:0;vertical-align:bottom;}
iframe{margin:0px;padding:0px;border:none;}
html{width:100%;height:100%;}
body{background:transparent;width:100%;height:100%;text-align:center;letter-spacing:0.05em;font-size:14px;line-height:150%;color:#333333;font-family:heisei-kaku-gothic-std,"游ゴシック体", "Yu Gothic",'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', Meiryo, メイリオ,arial, helvetica, sans-serif;}

/** |01. Reset | << ********************************************************************************* << END **/

/** |02. Common | >> ********************************************************************************* >> START **/

a{color:#333333;text-decoration:none;}
a:hover{text-decoration:none;opacity:0.9;transition:0.3s ease-in-out;}
.cmn-frm{position:relative;margin:auto;padding:0 20px;max-width:1140px;}
.cmn-frm::after{content:" ";display:block;height:0;font-size:0;clear:both;visibility:hidden;}
.pc-block{display:block !important;}
.sp-block{display:none !important;}
.pc-inline{display:inline !important;}
.sp-inline{display:none !important;}
#content-wrap{padding:0;}
@media (max-width:800px){
    .cmn-frm{padding:0 20px;}
	.pc-block{display:none !important;}
	.sp-block{display:block !important;}
	.pc-inline{display:none !important;}
	.sp-inline{display:inline !important;}
	#content-wrap{padding:0;}
}

/** |02. Common | << ********************************************************************************* << END **/

/** |03. Header | >> ********************************************************************************* >> START **/
#header {position: relative;}

.hed-log {
position: absolute;
top: 0px;
left: 0px;
width: 177px;
height: 177px;
z-index: 1;
}
.hed-log img {
    display: block;
    width: 100%;
}

@media(max-width:640px){
.hed-log {
top: 0;
left: 0;
overflow: hidden;
height: 60px;
width: 120px;
}
.hed-log img {
transform: translateY(-50%);
position: absolute;
top: 50%;
}
}
/** |03. Header | << ********************************************************************************* << END **/

/** |04. Footer | >> ********************************************************************************* >> START **/
.fot-cop {
    color: #000000;
    padding: 20px;
    display: flex;
    justify-content: space-between;
}

.fot-cop a {
    color: #000;
    padding-left: 15px;
    position: relative;
}

.fot-cop a:hover {
    color: #000;
}
.fot-link-icon {
    position: absolute;
    top: 2px;
    left: 0;
    display: block;
    width: 10px;
    height: 10px;
}
.fot-link-icon img {
    display: block;
    width: 100%;
}

.fot-cop-lst {
    display: flex;
    margin: 0;
}

.fot-cop-lst li + li {
    margin: 0 0 0 30px;
}
.fot-cop a {
    display: block;
    font-size: 14px;
    padding: 0 0 0 18px;
    position: relative;
    text-align: left;
}
.fot-cop a::before {
    content: "";
    display: block;
    position: absolute;
    left: 0;
    top: 4px;
    width: 10px;
    height: 10px;
    background: url(/recruit/engineer/img/fot-blank-ico.png)no-repeat center;
    background-size: cover;
} 

.fot-cop-cpy {
    font-size: 13px;
}

@media(max-width:640px){  
    .fot-cop {
        display: block;
    }
    .fot-cop-lst {
        display: flex;
        justify-content: center;
        width: 100%;
    }
    .fot-cop a {
        text-align: left;
    }
    .fot-cop-cpy {
        padding: 15% 0 0;
        width: 100%;
        font-size: 10px;
    }
}
/** |04. Footer | << ********************************************************************************* << END **/

.top-mai {
}
.top-mai-bg-wrap {
    max-width: 1400px;
    box-sizing: border-box;
    padding: 60px 60px 0;
    margin: auto;
}
.top-mai-bg {
    position: relative;
    height: 700px;
    width: 100%;
    background: url(/recruit/engineer/img/main-img.jpg)no-repeat center;
    background-size: cover; 
}
.top-mai-ttl {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 5%;
    margin: auto;
    max-width: 500px;
    width: 90%;
}

@media(max-width:640px){
    .top-mai {
        padding-top: 60px;
    }
    .top-mai-bg-wrap {
    max-width: 1400px;
    box-sizing: border-box;
    padding: 0;
    margin: auto;
}
.top-mai-bg {
    position: relative;
    height: auto;
    width: 100%;
    padding: 113.33% 0 0 0;
    background: url(/recruit/engineer/img/main-img-sp.jpg)no-repeat center;
    background-size: cover; 
}
.top-mai-ttl {
    position: absolute;
    left: 0;
    right: 0;
    bottom: auto;
    top: 5%;
    width: 80%;
}
.top-mai-ttl img {
    display: block;
    width: 100%;
}
}

.top-abt {
    padding: 120px 0 60px;
}
.top-abt-intro-txt {
    font-size: 20px;
    text-align: center;
    margin-bottom: 90px;
}
.top-abt-box {
    display: flex;
    justify-content: space-between;
}
.top-abt-box + .top-abt-box {
    margin-top: 60px;
}
.top-abt-t-box {
    text-align: left;
    width: 49%;
    box-sizing: border-box;
    padding: 0 50px;
}

.top-abt-t-box-ttl {
    font-size: 25px;
    font-weight: bold;
    color: #E21414;
    margin-bottom: 50px;
}
.top-abt-t-box-txt {
    font-size: 16px;
    line-height: 2;
}
.top-abt-i-box {
    width: 51%;
}
.top-abt-i-box img {
    display: block;
    width: 100%;
}

@media(max-width:640px){
  .top-abt {
    padding: 15% 0 7%;
}
.top-abt-intro-txt {
    font-size: 16px;
    line-height: 1.6;
    text-align: center;
    margin-bottom: 50px;
}
.top-abt-box {
    display: block;
}
.top-abt-t-box {
    width:100%;
    padding: 30px 0px 0;
}
.top-abt-t-box-txt {
    font-size: 14px;
    }
.top-abt-t-box-ttl {
font-size: 20px;
margin-bottom: 15px;
}
.top-abt-i-box {
    width: 100%;
}  
}
.top-int {
    padding: 120px 0 60px;
}
.top-int-ttl {
    text-align: center;
    font-size: 32px;
    color: #E21414;
    margin-bottom: 100px;
}
.top-int-box {
    display: flex;
    justify-content: space-between;
}
.top-int-box + .top-int-box {
    margin-top: 130px;
}
.top-int-t-box {
    text-align: left;
    width: 69%;
    box-sizing: border-box;
    padding: 0 50px;
}
.top-int-t-box-ttl {
    font-size: 22px;
    font-weight: bold;
    margin-bottom: 30px;
    line-height: 1.5;
}
.top-int-t-box-txt {
    font-size: 16px;
    line-height: 2;
}
.top-int-t-box-name {
    font-size: 14px;
    text-align: left;
    margin-top: 15px;
}
.top-int-t-box-name span {
    color: #ccc;
}
.top-int-i-box {
    width: 31%;
}
.top-int-i-box img {
    display: block;
    width: 100%;
}
@media(max-width:640px){
  .top-int {
    padding: 15% 0 7%;
}
.top-int-ttl {
    font-size: 22px;
    margin-bottom: 10%;
}
    .top-int-box {
    display: flex;
    flex-wrap: wrap;
    flex-direction: column-reverse;
}
    .top-int-box + .top-int-box {
        border-top: 1px solid #CCCCCC;
        margin-top: 50px;
        padding-top: 50px;
    }
    .top-int-t-box {
        width: 100%;
        padding: 0 0 30px;
    }
    .top-int-t-box-ttl {
font-size: 20px;
margin-bottom: 20px;
}
.top-int-t-box-txt {
    font-size: 14px;
}
.top-int-t-box-name {
    font-size: 12px;
    margin-top: 10px;
}
    .top-int-i-box {
    width: 80%;
    margin: auto;
}
}

.top-req {
    padding: 120px 0 60px;
}
.top-req-ttl {
    text-align: center;
    font-size: 32px;
    color: #E21414;
    margin-bottom: 100px;
}
.req-box-wrap {
    margin: auto;
}
.req-box {
    display: flex;
    text-align: left;
    border-bottom: 1px solid #eee;
    color: #333;
    line-height: 1.8;
}
.req-box:first-child {
    border-top: 1px solid #eee;
}
.req-box dt {
    width: 320px;
    font-size: 16px;
    font-weight: bold;
    background: #F8F8F8;
    padding: 30px 40px;
    box-sizing: border-box;
}
.req-box dd {
    font-size: 14px;
    padding: 30px 10px 30px 100px;
    box-sizing: border-box;
    width: calc(100% - 320px);
}
.req-box dd small {
    display: block;
}
.req-box dd ul li {
    line-height: 1.4;
}
.req-box dd ul li + li {
    margin-top: 10px;
}
.top-req-btn-wrap {
    max-width: 400px;
    margin: 130px auto 60px;
}
.top-req-btn {
    background: #F53232;
    color: #fff;
    font-size: 18px;
    font-weight: bold;
    display: block;
    width: 100%;
    line-height: 80px;
    border-radius: 5px;
}

@media(max-width:640px){
.top-req-ttl {
    font-size: 22px;
    margin-bottom: 10%;
}
  .top-req {
    padding: 15% 0 5%;
}
.req-box-wrap {
    margin: auto;
}
.req-box {
    display: block;
    padding: 7% 0;
}
.req-box dt {
       width: 100%;
    margin-bottom: 2%;
    background: none;
    padding: 0;
}   
.req-box dd {
    font-size: 14px;
    padding: 0px;
    width: 100%;
}
.top-req-btn {
    line-height: 70px;
}
.top-req-btn-wrap {
    max-width: 100%;
    margin: 15% auto 0;
}
}
