@charset "UTF-8";
/* ----------------------------------------------
スライダーイメージ
------------------------------------------------*/
#container.lower_page #topImage div.image_area {
  background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0.3)), to(rgba(0, 0, 0, 0.3))), url(../image/topImage.jpg);
  background-image: linear-gradient(rgba(0, 0, 0, 0.3), rgba(0, 0, 0, 0.3)), url(../image/topImage.jpg);
}

/* ----------------------------------------------

PC設定

------------------------------------------------*/
@media all and (min-width: 768px) {
  #container.lower_page #contents .recruit .requirement {
    margin-bottom: 90px;
  }
  #container.lower_page #contents .recruit .requirement .button_area {
    margin-bottom: calc(90px * 0.7);
  }
  #container.lower_page #contents .recruit .requirement .button_area .plant_area, #container.lower_page #contents .recruit .requirement .button_area .agency_area {
    margin-bottom: 2rem;
  }
  #container.lower_page #contents .recruit .requirement .button_area .plant_area .title, #container.lower_page #contents .recruit .requirement .button_area .agency_area .title {
    font-size: calc(16px * 1.75);
    margin-bottom: 0.5em;
  }
  #container.lower_page #contents .recruit .requirement .button_area .plant_area .tab, #container.lower_page #contents .recruit .requirement .button_area .agency_area .tab {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    max-width: 1000px;
    width: 100%;
    margin: 0 auto;
  }
  #container.lower_page #contents .recruit .requirement .button_area .plant_area .tab .tab_button, #container.lower_page #contents .recruit .requirement .button_area .agency_area .tab .tab_button {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    font-size: calc(16px * 1.25);
    cursor: pointer;
    padding: 0.5em 0em;
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
  }
  #container.lower_page #contents .recruit .requirement .button_area .plant_area .tab .tab_button::after, #container.lower_page #contents .recruit .requirement .button_area .agency_area .tab .tab_button::after {
    content: url(../image/arrow_b.svg);
    display: block;
    width: 20px;
    margin-left: 1rem;
  }
}

@media all and (min-width: 768px) and (min-width: 768px) and (max-width: 1400px) {
  #container.lower_page #contents .recruit .requirement .button_area .plant_area .tab, #container.lower_page #contents .recruit .requirement .button_area .agency_area .tab {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  #container.lower_page #contents .recruit .requirement .button_area .plant_area .tab .tab_button, #container.lower_page #contents .recruit .requirement .button_area .agency_area .tab .tab_button {
    width: 100%;
  }
}

@media all and (min-width: 768px) {
  #container.lower_page #contents .recruit .requirement .button_area .plant_area.plant_area .tab_button, #container.lower_page #contents .recruit .requirement .button_area .agency_area.plant_area .tab_button {
    border: 1px solid #0068b6;
  }
  #container.lower_page #contents .recruit .requirement .button_area .plant_area.agency_area .tab_button, #container.lower_page #contents .recruit .requirement .button_area .agency_area.agency_area .tab_button {
    border: 1px solid #facccf;
  }
  #container.lower_page #contents .recruit .requirement .recruit_table h3 {
    font-size: calc(16px * 1.5);
    margin-bottom: 0.5em;
  }
  #container.lower_page #contents .recruit .requirement .recruit_table h3 .small {
    font-size: calc(16px * 1.25);
  }
  #container.lower_page #contents .recruit .requirement .recruit_table h3 .class {
    font-size: calc(16px * 1.5);
    padding: 0.3em 0.5em;
    border: #000 solid 1px;
    border-radius: 10px;
    margin: 0 1rem;
  }
  #container.lower_page #contents .recruit .requirement .recruit_table h3 .bold {
    font-weight: bold;
  }
  #container.lower_page #contents .recruit .requirement .recruit_table dl {
    border: 1px solid #efefef;
  }
  #container.lower_page #contents .recruit .requirement .recruit_table dl div {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
  }
  #container.lower_page #contents .recruit .requirement .recruit_table dl div:not(:last-of-type) {
    border-bottom: 1px #cccccc dashed;
  }
  #container.lower_page #contents .recruit .requirement .recruit_table dl div dt {
    font-size: calc(16px * 1.125);
    background-color: #efefef;
    padding: 1.5rem;
    width: 20%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  #container.lower_page #contents .recruit .requirement .recruit_table dl div dt span {
    font-size: calc(16px * 1.125);
    display: inline-block;
    font-weight: bold;
  }
  #container.lower_page #contents .recruit .requirement .recruit_table dl div dd {
    padding: 1.5rem;
    width: 80%;
  }
  #container.lower_page #contents .recruit .requirement .recruit_table dl div dd span {
    display: block;
  }
  #container.lower_page #contents .recruit .requirement .recruit_table dl div dd span.bold {
    font-size: calc(16px * 1.125);
    font-weight: bold;
    text-decoration: underline;
  }
  #container.lower_page #contents .recruit > div .flow {
    margin-bottom: 90px;
  }
  #container.lower_page #contents .recruit > div .flow .flowbox {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    margin-bottom: 2rem;
  }
  #container.lower_page #contents .recruit > div .flow .flowbox .boxinner {
    padding: 1rem 0.5em;
    background: rgba(204, 204, 204, 0.1);
    border: #ccc 1px solid;
    border-radius: 20px;
    width: 22%;
  }
  #container.lower_page #contents .recruit > div .flow .flowbox .boxinner h3 {
    font-size: calc(16px * 1.25);
    margin-bottom: 0.5em;
    text-align: center;
  }
  #container.lower_page #contents .recruit > div .flow .flowbox .boxinner p {
    font-size: calc(16px * 1.125);
    background-color: #fff;
    border-radius: 20px;
    padding: 1em;
    min-height: 190px;
  }
  #container.lower_page #contents .recruit > div .flow .flowbox .boxinner:first-of-type {
    border: 1px solid #0066cc;
    background-color: rgba(0, 102, 204, 0.1);
  }
  #container.lower_page #contents .recruit > div .flow .flowbox .boxinner:last-of-type {
    border: 1px solid #e50012;
    background-color: rgba(229, 0, 18, 0.1);
  }
  #container.lower_page #contents .recruit > div .flow .flowbox .arrow {
    content: url(../image/arrow_right.svg);
    width: 20px;
  }
  #container.lower_page #contents .recruit > div .flow .annotation {
    max-width: 1000px;
    margin: 0 auto 2rem;
  }
  #container.lower_page #contents .recruit > div .flow .annotation p {
    font-size: calc(16px * 1.125);
    text-indent: 1em;
    margin-bottom: 1rem;
  }
  #container.lower_page #contents .recruit > div .flow .annotation p::after {
    content: "";
    display: block;
    width: 100px;
    height: 5px;
    background-color: #ccc;
  }
  #container.lower_page #contents .recruit > div .flow .gray_bg {
    padding: 90px 0;
    background-color: #fafafa;
  }
  #container.lower_page #contents .recruit > div .flow .gray_bg .point {
    margin-bottom: 90px;
  }
  #container.lower_page #contents .recruit > div .flow .gray_bg .point .flexbox {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    max-width: 1000px;
    margin: 0 auto calc(2rem * 2);
  }
  #container.lower_page #contents .recruit > div .flow .gray_bg .point .flexbox .textarea {
    width: 60%;
  }
  #container.lower_page #contents .recruit > div .flow .gray_bg .point .flexbox .textarea h3 {
    font-size: calc(16px * 1.25);
    text-decoration: underline;
    text-align: center;
    margin-bottom: 1em;
  }
  #container.lower_page #contents .recruit > div .flow .gray_bg .point .flexbox .textarea h3 span {
    display: inline-block;
    text-decoration: underline;
  }
  #container.lower_page #contents .recruit > div .flow .gray_bg .point .flexbox .textarea p span {
    display: block;
  }
  #container.lower_page #contents .recruit > div .flow .gray_bg .point .flexbox figure {
    width: 30%;
  }
  #container.lower_page #contents .recruit > div .flow .gray_bg .point .flexbox figure figcaption {
    font-size: 14px;
  }
  #container.lower_page #contents .recruit > div .flow .gray_bg .point .flexbox.reverse {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
  }
  #container.lower_page #contents .recruit > div .flow .gray_bg .point_list {
    background-color: #fff;
    padding: 2rem 0;
    margin-bottom: 90px;
    width: 100%;
  }
  #container.lower_page #contents .recruit > div .flow .gray_bg .point_list dl {
    max-width: 1000px;
    margin: 0 auto;
  }
  #container.lower_page #contents .recruit > div .flow .gray_bg .point_list dl dt {
    font-size: calc(16px * 1.125);
  }
  #container.lower_page #contents .recruit > div .flow .gray_bg .point_list dl dt .red {
    color: red;
  }
  #container.lower_page #contents .recruit > div .flow .gray_bg .point_list dl dd {
    margin-bottom: 1em;
  }
}

@media all and (min-width: 768px) and (min-width: 768px) and (max-width: 1400px) {
  #container.lower_page #contents .recruit > div .flow .gray_bg .point_list {
    padding: 2rem 1rem;
  }
}

@media all and (min-width: 768px) {
  #container.lower_page #contents .recruit > div .flow .gray_bg .document {
    background-color: #fff;
    padding: 2rem 0;
  }
  #container.lower_page #contents .recruit > div .flow .gray_bg .document .title {
    font-size: calc(16px * 1.125);
    margin-bottom: 2rem;
    text-align: center;
  }
  #container.lower_page #contents .recruit > div .flow .gray_bg .document .address {
    text-align: center;
  }
  #container.lower_page #contents .recruit > div .flow .gray_bg .document .address span {
    display: inline-block;
  }
  #container.lower_page #contents .recruit > div .flow .gray_bg .document .address span.br {
    display: block;
  }
  #container.lower_page #contents .recruit > div .flow .gray_bg .document .under {
    text-align: center;
    text-decoration: underline;
    margin: 2rem 0;
  }
  #container.lower_page #contents .recruit > div .flow .gray_bg .document .button2 {
    width: 70%;
    margin-left: auto;
    margin-right: auto;
    background-color: #3590ff;
    border-radius: 20px;
    -webkit-box-shadow: 5px 5px 5px rgba(204, 204, 204, 0.1);
            box-shadow: 5px 5px 5px rgba(204, 204, 204, 0.1);
    min-width: 555px;
  }
  #container.lower_page #contents .recruit > div .flow .gray_bg .document .button2 a {
    display: block;
    width: 100%;
    height: 100%;
    padding: 0.5em 0.5em;
    color: #000;
    background-color: none;
    font-size: calc(14.4px * 1.5);
    text-align: center;
  }
  #container.lower_page #contents .recruit > div .flow .gray_bg .document .button2 a span {
    color: #fff;
    font-weight: lighter;
  }
  #container.lower_page #contents .recruit > div .interview .flexbox {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    margin: 0 auto calc(2rem * 2);
    max-width: 1100px;
  }
  #container.lower_page #contents .recruit > div .interview .flexbox .textarea {
    width: 60%;
    background-color: #fafafa;
    padding: calc(2rem * 2) calc(2rem * 1.5);
  }
  #container.lower_page #contents .recruit > div .interview .flexbox .textarea .text {
    display: block;
  }
  #container.lower_page #contents .recruit > div .interview .flexbox .textarea .button {
    border: 1.5px solid #000;
    z-index: 10;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    margin: 2rem auto 0;
    position: relative;
  }
  #container.lower_page #contents .recruit > div .interview .flexbox .textarea .button a {
    font-size: calc(16px * 1.25);
    display: block;
    width: 100%;
    height: 100%;
    padding: 0.5em 2em;
    color: #000;
    background-color: none;
  }
  #container.lower_page #contents .recruit > div .interview .flexbox figure {
    width: 40%;
  }
}

@media all and (min-width: 768px) and (min-width: 768px) and (max-width: 1400px) {
  #container.lower_page #contents .recruit > div .interview .flexbox {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  #container.lower_page #contents .recruit > div .interview .flexbox .textarea {
    width: 80%;
    background-color: #fafafa;
    padding: calc(2rem * 2) calc(2rem * 1.5);
  }
  #container.lower_page #contents .recruit > div .interview .flexbox .textarea .text {
    display: block;
  }
  #container.lower_page #contents .recruit > div .interview .flexbox .textarea .button {
    border: 1.5px solid #000;
    z-index: 10;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    margin: 2rem auto 0;
    position: relative;
  }
  #container.lower_page #contents .recruit > div .interview .flexbox .textarea .button a {
    font-size: calc(16px * 1.25);
    display: block;
    width: 100%;
    height: 100%;
    padding: 0.5em 2em;
    color: #000;
    background-color: none;
  }
  #container.lower_page #contents .recruit > div .interview .flexbox figure {
    width: 80%;
  }
}

/* ----------------------------------------------

pad設定

------------------------------------------------*/
@media all and (min-width: 520px) and (max-width: 768px) {
  #container.lower_page #contents .recruit .requirement {
    margin-bottom: 70px;
  }
  #container.lower_page #contents .recruit .requirement .button_area {
    margin-bottom: calc(70px * 0.7);
  }
  #container.lower_page #contents .recruit .requirement .button_area .plant_area, #container.lower_page #contents .recruit .requirement .button_area .agency_area {
    margin-bottom: 1.5rem;
  }
  #container.lower_page #contents .recruit .requirement .button_area .plant_area .title, #container.lower_page #contents .recruit .requirement .button_area .agency_area .title {
    font-size: calc(14.4px * 1.75);
    margin-bottom: 0.5em;
  }
  #container.lower_page #contents .recruit .requirement .button_area .plant_area .tab, #container.lower_page #contents .recruit .requirement .button_area .agency_area .tab {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    width: 100%;
    margin: 0 auto;
  }
  #container.lower_page #contents .recruit .requirement .button_area .plant_area .tab .tab_button, #container.lower_page #contents .recruit .requirement .button_area .agency_area .tab .tab_button {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    font-size: calc(14.4px * 1.25);
    cursor: pointer;
    padding: 0.5em 0em;
    width: 100%;
  }
  #container.lower_page #contents .recruit .requirement .button_area .plant_area .tab .tab_button::after, #container.lower_page #contents .recruit .requirement .button_area .agency_area .tab .tab_button::after {
    content: url(../image/arrow_b.svg);
    display: block;
    width: 20px;
    margin-left: 1rem;
  }
  #container.lower_page #contents .recruit .requirement .button_area .plant_area.plant_area .tab_button, #container.lower_page #contents .recruit .requirement .button_area .agency_area.plant_area .tab_button {
    border: 1px solid #0068b6;
  }
  #container.lower_page #contents .recruit .requirement .button_area .plant_area.agency_area .tab_button, #container.lower_page #contents .recruit .requirement .button_area .agency_area.agency_area .tab_button {
    border: 1px solid #facccf;
  }
  #container.lower_page #contents .recruit .requirement .recruit_table h3 {
    font-size: calc(14.4px * 1.5);
    margin-bottom: 0.3em;
  }
  #container.lower_page #contents .recruit .requirement .recruit_table h3 .small {
    font-size: calc(14.4px * 1.25);
  }
  #container.lower_page #contents .recruit .requirement .recruit_table h3 .class {
    font-size: calc(14.4px * 1.5);
    padding: 0.3em 0.5em;
    border: #000 solid 1px;
    border-radius: 10px;
    margin: 0 1rem;
  }
  #container.lower_page #contents .recruit .requirement .recruit_table h3 .bold {
    font-weight: bold;
    display: block;
  }
  #container.lower_page #contents .recruit .requirement .recruit_table dl {
    border: 1px solid #efefef;
  }
  #container.lower_page #contents .recruit .requirement .recruit_table dl div {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
  }
  #container.lower_page #contents .recruit .requirement .recruit_table dl div:not(:last-of-type) {
    border-bottom: 1px #cccccc dashed;
  }
  #container.lower_page #contents .recruit .requirement .recruit_table dl div dt {
    font-size: calc(14.4px * 1.125);
    background-color: #efefef;
    padding: 1.5rem;
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  #container.lower_page #contents .recruit .requirement .recruit_table dl div dt span {
    font-size: calc(14.4px * 1.125);
    display: inline-block;
    font-weight: bold;
  }
  #container.lower_page #contents .recruit .requirement .recruit_table dl div dd {
    padding: 1.5rem;
    width: 100%;
  }
  #container.lower_page #contents .recruit .requirement .recruit_table dl div dd span {
    display: block;
  }
  #container.lower_page #contents .recruit .requirement .recruit_table dl div dd span.bold {
    font-size: calc(14.4px * 1.125);
    font-weight: bold;
    text-decoration: underline;
  }
  #container.lower_page #contents .recruit > div .flow {
    margin-bottom: 70px;
  }
  #container.lower_page #contents .recruit > div .flow .flowbox {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    margin-bottom: 1.5rem;
  }
  #container.lower_page #contents .recruit > div .flow .flowbox .boxinner {
    padding: 1rem 0.5em;
    background: rgba(204, 204, 204, 0.1);
    border: #ccc 1px solid;
    border-radius: 20px;
    width: 100%;
    margin-bottom: 0.5rem;
  }
  #container.lower_page #contents .recruit > div .flow .flowbox .boxinner h3 {
    font-size: calc(14.4px * 1.25);
    margin-bottom: 0.5em;
    text-align: center;
  }
  #container.lower_page #contents .recruit > div .flow .flowbox .boxinner p {
    font-size: calc(14.4px * 1.125);
    background-color: #fff;
    border-radius: 20px;
    padding: 1em;
    min-height: auto;
  }
  #container.lower_page #contents .recruit > div .flow .flowbox .boxinner:first-of-type {
    border: 1px solid #0066cc;
    background-color: rgba(0, 102, 204, 0.1);
  }
  #container.lower_page #contents .recruit > div .flow .flowbox .boxinner:last-of-type {
    border: 1px solid #e50012;
    background-color: rgba(229, 0, 18, 0.1);
  }
  #container.lower_page #contents .recruit > div .flow .flowbox .arrow {
    content: url(../image/arrow_right.svg);
    width: 20px;
    margin-bottom: 0.5rem;
    -webkit-transform: rotate(90deg);
            transform: rotate(90deg);
    -webkit-transform-origin: 50%,50%,0;
            transform-origin: 50%,50%,0;
  }
  #container.lower_page #contents .recruit > div .flow .annotation {
    max-width: 1000px;
    margin: 0 auto 1.5rem;
  }
  #container.lower_page #contents .recruit > div .flow .annotation p {
    font-size: calc(14.4px * 1.125);
    text-indent: 1em;
    margin-bottom: 1rem;
  }
  #container.lower_page #contents .recruit > div .flow .annotation p::after {
    content: "";
    display: block;
    width: 100px;
    height: 5px;
    background-color: #ccc;
  }
  #container.lower_page #contents .recruit > div .flow .gray_bg {
    padding: 70px 0;
    background-color: #fafafa;
  }
  #container.lower_page #contents .recruit > div .flow .gray_bg .point {
    margin-bottom: 70px;
  }
  #container.lower_page #contents .recruit > div .flow .gray_bg .point .flexbox {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
    max-width: 1000px;
    margin: 0 auto calc(1.5rem * 2);
  }
  #container.lower_page #contents .recruit > div .flow .gray_bg .point .flexbox .textarea {
    width: 100%;
  }
  #container.lower_page #contents .recruit > div .flow .gray_bg .point .flexbox .textarea h3 {
    font-size: calc(14.4px * 1.25);
    text-decoration: underline;
    text-align: center;
    margin-bottom: 1em;
  }
  #container.lower_page #contents .recruit > div .flow .gray_bg .point .flexbox .textarea h3 span {
    display: inline-block;
    text-decoration: underline;
  }
  #container.lower_page #contents .recruit > div .flow .gray_bg .point .flexbox .textarea p span {
    display: block;
  }
  #container.lower_page #contents .recruit > div .flow .gray_bg .point .flexbox figure {
    width: 80%;
    margin-bottom: 1rem;
  }
  #container.lower_page #contents .recruit > div .flow .gray_bg .point .flexbox figure figcaption {
    font-size: 14px;
  }
  #container.lower_page #contents .recruit > div .flow .gray_bg .point_list {
    background-color: #fff;
    padding: 1.5rem 1rem;
    margin-bottom: 70px;
    width: 100%;
  }
  #container.lower_page #contents .recruit > div .flow .gray_bg .point_list dl {
    max-width: 1000px;
    margin: 0 auto;
  }
  #container.lower_page #contents .recruit > div .flow .gray_bg .point_list dl dt {
    font-size: calc(14.4px * 1.125);
  }
  #container.lower_page #contents .recruit > div .flow .gray_bg .point_list dl dt .red {
    color: red;
  }
  #container.lower_page #contents .recruit > div .flow .gray_bg .point_list dl dd {
    margin-bottom: 1em;
  }
  #container.lower_page #contents .recruit > div .flow .gray_bg .document {
    background-color: #fff;
    padding: 1.5rem 0;
  }
  #container.lower_page #contents .recruit > div .flow .gray_bg .document .title {
    font-size: calc(14.4px * 1.125);
    margin-bottom: 1.5rem;
    text-align: center;
  }
  #container.lower_page #contents .recruit > div .flow .gray_bg .document .address {
    text-align: center;
  }
  #container.lower_page #contents .recruit > div .flow .gray_bg .document .address span {
    display: inline-block;
  }
  #container.lower_page #contents .recruit > div .flow .gray_bg .document .address span.br {
    display: block;
  }
  #container.lower_page #contents .recruit > div .flow .gray_bg .document .under {
    text-align: center;
    text-decoration: underline;
    margin: 1.5rem 0;
  }
  #container.lower_page #contents .recruit > div .flow .gray_bg .document .button2 {
    width: 90%;
    margin-left: auto;
    margin-right: auto;
    background-color: #3590ff;
    border-radius: 20px;
    -webkit-box-shadow: 5px 5px 5px rgba(204, 204, 204, 0.1);
            box-shadow: 5px 5px 5px rgba(204, 204, 204, 0.1);
  }
  #container.lower_page #contents .recruit > div .flow .gray_bg .document .button2 a {
    display: block;
    width: 100%;
    height: 100%;
    padding: 0.5em 0.5em;
    color: #000;
    background-color: none;
    font-size: calc(14.4px * 1.5);
    text-align: center;
  }
  #container.lower_page #contents .recruit > div .flow .gray_bg .document .button2 a span {
    color: #fff;
    font-weight: lighter;
    display: block;
  }
  #container.lower_page #contents .recruit > div .interview .flexbox {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
    margin: 0 auto calc(1.5rem * 2);
  }
  #container.lower_page #contents .recruit > div .interview .flexbox .textarea {
    width: 100%;
    background-color: #fafafa;
    padding: calc(1.5rem * 2) calc(1.5rem * 1.5);
  }
  #container.lower_page #contents .recruit > div .interview .flexbox .textarea .text {
    display: block;
  }
  #container.lower_page #contents .recruit > div .interview .flexbox .textarea .button {
    border: 1.5px solid #000;
    z-index: 10;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    margin: 1.5rem auto 0;
    position: relative;
  }
  #container.lower_page #contents .recruit > div .interview .flexbox .textarea .button a {
    font-size: calc(14.4px * 1.25);
    display: block;
    width: 100%;
    height: 100%;
    padding: 0.5em 2em;
    color: #000;
    background-color: none;
  }
  #container.lower_page #contents .recruit > div .interview .flexbox figure {
    width: 100%;
  }
}

/* ----------------------------------------------

sp設定

------------------------------------------------*/
@media all and (max-width: 520px) {
  #container.lower_page #contents .recruit .requirement {
    margin-bottom: 45px;
  }
  #container.lower_page #contents .recruit .requirement .button_area {
    margin-bottom: calc(45px * 0.7);
  }
  #container.lower_page #contents .recruit .requirement .button_area .plant_area, #container.lower_page #contents .recruit .requirement .button_area .agency_area {
    margin-bottom: 1rem;
  }
  #container.lower_page #contents .recruit .requirement .button_area .plant_area .title, #container.lower_page #contents .recruit .requirement .button_area .agency_area .title {
    font-size: calc(12.8px * 1.75);
    margin-bottom: 0.5em;
  }
  #container.lower_page #contents .recruit .requirement .button_area .plant_area .tab, #container.lower_page #contents .recruit .requirement .button_area .agency_area .tab {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    width: 100%;
    margin: 0 auto;
  }
  #container.lower_page #contents .recruit .requirement .button_area .plant_area .tab .tab_button, #container.lower_page #contents .recruit .requirement .button_area .agency_area .tab .tab_button {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    font-size: calc(12.8px * 1.25);
    cursor: pointer;
    padding: 0.5em 0em;
    width: 100%;
  }
  #container.lower_page #contents .recruit .requirement .button_area .plant_area .tab .tab_button::after, #container.lower_page #contents .recruit .requirement .button_area .agency_area .tab .tab_button::after {
    content: url(../image/arrow_b.svg);
    display: block;
    width: 20px;
    margin-left: 1rem;
  }
  #container.lower_page #contents .recruit .requirement .button_area .plant_area.plant_area .tab_button, #container.lower_page #contents .recruit .requirement .button_area .agency_area.plant_area .tab_button {
    border: 1px solid #0068b6;
  }
  #container.lower_page #contents .recruit .requirement .button_area .plant_area.agency_area .tab_button, #container.lower_page #contents .recruit .requirement .button_area .agency_area.agency_area .tab_button {
    border: 1px solid #facccf;
  }
  #container.lower_page #contents .recruit .requirement .recruit_table h3 {
    font-size: calc(12.8px * 1.5);
    margin-bottom: 0.3em;
  }
  #container.lower_page #contents .recruit .requirement .recruit_table h3 .small {
    font-size: calc(12.8px * 1.25);
  }
  #container.lower_page #contents .recruit .requirement .recruit_table h3 .class {
    font-size: calc(12.8px * 1.5);
    padding: 0.3em 0.5em;
    border: #000 solid 1px;
    border-radius: 10px;
    margin: 0 1rem;
  }
  #container.lower_page #contents .recruit .requirement .recruit_table h3 .bold {
    font-weight: bold;
    display: block;
  }
  #container.lower_page #contents .recruit .requirement .recruit_table dl {
    border: 1px solid #efefef;
  }
  #container.lower_page #contents .recruit .requirement .recruit_table dl div {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
  }
  #container.lower_page #contents .recruit .requirement .recruit_table dl div:not(:last-of-type) {
    border-bottom: 1px #cccccc dashed;
  }
  #container.lower_page #contents .recruit .requirement .recruit_table dl div dt {
    font-size: calc(12.8px * 1.125);
    background-color: #efefef;
    padding: 1.5rem;
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  #container.lower_page #contents .recruit .requirement .recruit_table dl div dt span {
    font-size: calc(12.8px * 1.125);
    display: inline-block;
    font-weight: bold;
  }
  #container.lower_page #contents .recruit .requirement .recruit_table dl div dd {
    padding: 1.5rem;
    width: 100%;
  }
  #container.lower_page #contents .recruit .requirement .recruit_table dl div dd span {
    display: block;
  }
  #container.lower_page #contents .recruit .requirement .recruit_table dl div dd span.bold {
    font-size: calc(12.8px * 1.125);
    font-weight: bold;
    text-decoration: underline;
  }
  #container.lower_page #contents .recruit > div .flow {
    margin-bottom: 45px;
  }
  #container.lower_page #contents .recruit > div .flow .flowbox {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    margin-bottom: 1rem;
  }
  #container.lower_page #contents .recruit > div .flow .flowbox .boxinner {
    padding: 1rem 0.5em;
    background: rgba(204, 204, 204, 0.1);
    border: #ccc 1px solid;
    border-radius: 20px;
    width: 100%;
    margin-bottom: 0.5rem;
  }
  #container.lower_page #contents .recruit > div .flow .flowbox .boxinner h3 {
    font-size: calc(12.8px * 1.25);
    margin-bottom: 0.5em;
    text-align: center;
  }
  #container.lower_page #contents .recruit > div .flow .flowbox .boxinner p {
    font-size: calc(12.8px * 1.125);
    background-color: #fff;
    border-radius: 20px;
    padding: 1em;
    min-height: auto;
  }
  #container.lower_page #contents .recruit > div .flow .flowbox .boxinner:first-of-type {
    border: 1px solid #0066cc;
    background-color: rgba(0, 102, 204, 0.1);
  }
  #container.lower_page #contents .recruit > div .flow .flowbox .boxinner:last-of-type {
    border: 1px solid #e50012;
    background-color: rgba(229, 0, 18, 0.1);
  }
  #container.lower_page #contents .recruit > div .flow .flowbox .arrow {
    content: url(../image/arrow_right.svg);
    width: 20px;
    margin-bottom: 0.5rem;
    -webkit-transform: rotate(90deg);
            transform: rotate(90deg);
    -webkit-transform-origin: 50%,50%,0;
            transform-origin: 50%,50%,0;
  }
  #container.lower_page #contents .recruit > div .flow .annotation {
    max-width: 1000px;
    margin: 0 auto 1rem;
  }
  #container.lower_page #contents .recruit > div .flow .annotation p {
    font-size: calc(12.8px * 1.125);
    text-indent: 1em;
    margin-bottom: 1rem;
  }
  #container.lower_page #contents .recruit > div .flow .annotation p::after {
    content: "";
    display: block;
    width: 100px;
    height: 5px;
    background-color: #ccc;
  }
  #container.lower_page #contents .recruit > div .flow .gray_bg {
    padding: 45px 0;
    background-color: #fafafa;
  }
  #container.lower_page #contents .recruit > div .flow .gray_bg .point {
    margin-bottom: 45px;
  }
  #container.lower_page #contents .recruit > div .flow .gray_bg .point .flexbox {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
    max-width: 1000px;
    margin: 0 auto calc(1rem * 2);
  }
  #container.lower_page #contents .recruit > div .flow .gray_bg .point .flexbox .textarea {
    width: 100%;
  }
  #container.lower_page #contents .recruit > div .flow .gray_bg .point .flexbox .textarea h3 {
    font-size: calc(12.8px * 1.25);
    text-decoration: underline;
    text-align: center;
    margin-bottom: 1em;
  }
  #container.lower_page #contents .recruit > div .flow .gray_bg .point .flexbox .textarea h3 span {
    display: inline-block;
    text-decoration: underline;
  }
  #container.lower_page #contents .recruit > div .flow .gray_bg .point .flexbox .textarea p span {
    display: block;
  }
  #container.lower_page #contents .recruit > div .flow .gray_bg .point .flexbox figure {
    width: 80%;
    margin-bottom: 1rem;
  }
  #container.lower_page #contents .recruit > div .flow .gray_bg .point .flexbox figure figcaption {
    font-size: 14px;
  }
  #container.lower_page #contents .recruit > div .flow .gray_bg .point_list {
    background-color: #fff;
    padding: 1rem 1rem;
    margin-bottom: 45px;
    width: 100%;
  }
  #container.lower_page #contents .recruit > div .flow .gray_bg .point_list dl {
    max-width: 1000px;
    margin: 0 auto;
  }
  #container.lower_page #contents .recruit > div .flow .gray_bg .point_list dl dt {
    font-size: calc(12.8px * 1.125);
  }
  #container.lower_page #contents .recruit > div .flow .gray_bg .point_list dl dt .red {
    color: red;
  }
  #container.lower_page #contents .recruit > div .flow .gray_bg .point_list dl dd {
    margin-bottom: 1em;
  }
  #container.lower_page #contents .recruit > div .flow .gray_bg .document {
    background-color: #fff;
    padding: 1rem 0;
  }
  #container.lower_page #contents .recruit > div .flow .gray_bg .document .title {
    font-size: calc(12.8px * 1.125);
    margin-bottom: 1rem;
    text-align: center;
  }
  #container.lower_page #contents .recruit > div .flow .gray_bg .document .address {
    text-align: center;
  }
  #container.lower_page #contents .recruit > div .flow .gray_bg .document .address span {
    display: inline-block;
  }
  #container.lower_page #contents .recruit > div .flow .gray_bg .document .address span.br {
    display: block;
  }
  #container.lower_page #contents .recruit > div .flow .gray_bg .document .under {
    text-align: center;
    text-decoration: underline;
    margin: 1rem 0;
  }
  #container.lower_page #contents .recruit > div .flow .gray_bg .document .button2 {
    width: 90%;
    margin-left: auto;
    margin-right: auto;
    background-color: #3590ff;
    border-radius: 20px;
    -webkit-box-shadow: 5px 5px 5px rgba(204, 204, 204, 0.1);
            box-shadow: 5px 5px 5px rgba(204, 204, 204, 0.1);
  }
  #container.lower_page #contents .recruit > div .flow .gray_bg .document .button2 a {
    display: block;
    width: 100%;
    height: 100%;
    padding: 0.5em 0.5em;
    color: #000;
    background-color: none;
    font-size: calc(12.8px * 1.5);
    text-align: center;
  }
  #container.lower_page #contents .recruit > div .flow .gray_bg .document .button2 a span {
    color: #fff;
    font-weight: lighter;
    display: block;
  }
  #container.lower_page #contents .recruit > div .interview .flexbox {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
    margin: 0 auto calc(1rem * 2);
  }
  #container.lower_page #contents .recruit > div .interview .flexbox .textarea {
    width: 100%;
    background-color: #fafafa;
    padding: calc(1rem * 2) calc(1rem * 1.5);
  }
  #container.lower_page #contents .recruit > div .interview .flexbox .textarea .text {
    display: block;
  }
  #container.lower_page #contents .recruit > div .interview .flexbox .textarea .button {
    border: 1.5px solid #000;
    z-index: 10;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    margin: 1rem auto 0;
    position: relative;
  }
  #container.lower_page #contents .recruit > div .interview .flexbox .textarea .button a {
    font-size: calc(12.8px * 1.25);
    display: block;
    width: 100%;
    height: 100%;
    padding: 0.5em 2em;
    color: #000;
    background-color: none;
  }
  #container.lower_page #contents .recruit > div .interview .flexbox figure {
    width: 100%;
  }
}

/* ----------------------------------------------

タブ表示

------------------------------------------------*/
#container.lower_page #contents .recruit .requirement .button_area .plant_area .tab .tab_button.action {
  color: #fff;
  background-color: #0068b6;
}

#container.lower_page #contents .recruit .requirement .button_area .plant_area .tab .tab_button.action::after {
  content: url(../image/arrow_w.svg);
}

#container.lower_page #contents .recruit .requirement .button_area .agency_area .tab .tab_button.action {
  color: #666;
  background-color: #facccf;
}

#container.lower_page #contents .recruit .requirement .button_area .agency_area .tab .tab_button.action::after {
  content: url(../image/arrow_g.svg);
}
