main{
    inline-size:calc(100% - 2rem);
    max-inline-size:50rem;
    margin-block:2rem;
    background:white;
    border:solid black 1px;
    box-shadow:0 0 4px rgba(0,0,0,0.3);
    padding:2rem;
    box-sizing:border-box;


}
.type_box{
    display:flex;
    justify-content: flex-end;
}
.type_box > img{
    block-size:2.5rem;
    margin-inline-start:.75rem;
}

h1{
    font-size:2.25rem;
    display:block;
    inline-size:100%;
    box-sizing:border-box;
    padding-inline:2rem;
    padding-block:1.5rem;
    border:1px solid black;
    background:#EFF1F5;
    margin-block:.75rem;


}
p{
    padding-block:.5rem;
}

h2{
    display:block;
    font-size:1.5rem;
    padding:.5rem;
    border-bottom:solid 4px #EFF1F5;
    margin-block-end:1.5rem;
    margin-block-start:.5rem;
}
.company_content{
    padding:.7rem;
}

h3{
    display:block;
    margin-block:.5rem;
    font-size:1.25rem;
}
h3:before{
    content:"■";
    color:royalblue;
}

.p_image{
    display:flex;
    flex-direction: row-reverse;
    justify-content: flex-end;
}
.p_image img{
    inline-size:15rem;
    align-self:flex-start;
    margin-inline-end:1rem;

}
.p_image p{
    padding-block:0;
    line-height:1.7;
    color:rgba(0,0,0,0.9);
}

.recruit_detail{
    inline-size:calc(100% + 4rem + 2px);
    margin-inline-start:calc(-2rem - 1px);
    margin-block-end:-2rem;

}

.tab_box{
    display:flex;
    position:relative;
    z-index:2;

}
.tab{
    inline-size:50%;
    background:#C7D1DB;
    border:solid 1px black;
    cursor:pointer;
}
.tab_active{
    background:#EFF1F5;
    border-block-end:solid 1px #EFF1F5;
}
.tab_invalid{
    pointer-events:none;
    background:darkgray;
    cursor:none;
	opacity:0.3;
}
.tab:nth-child(1){
    margin-inline-end:.25rem;
}
.tab:nth-child(2){
    margin-inline-start:.25rem;
}
.tab h3{
    text-align:center;
    line-height:1;
}
.tab h3:before{
    content:"";
}
.tab small{
    font-size:.75rem;
    
}
.recruit_content{
    position:relative;
    border-block-start:1px solid black;
    background:#EFF1F5;
    margin-block-start:-1px;
    padding:2rem;
}

.content_line{
    display:flex;
    justify-content: space-between;
	margin-block-end:.75rem;
}

.blue_attention{
    padding:.75rem;
    background:rgb(60, 91, 185);
    color:white;
    text-align:left;
    padding-inline-start:4rem;
    position:relative;
	margin-block-end:2rem;
	margin-block-start:-1rem;
}
.blue_attention:before{
    content:"";
    position:absolute;
    inline-size:2.5rem;
    block-size:2.5rem;
    left:1rem;
    top:50%;
    transform:translateY(-50%);
    background-image:url(../img/attention.png);
    background-size:contain;
    background-repeat: no-repeat;
}
.line_title{
    inline-size:8rem;
    block-size:3rem;
    color:white;
    background-color:#9FA9BD;
    display:flex;
    flex-direction: column;
    justify-content: center;
    text-align:center;
    margin-block:.5rem;
}
.line_content{
    inline-size:calc(100% - 8.5rem);
    flex-direction:column;
    display:flex;
    justify-content:center;
}