  @charset "utf-8";

@media only screen and (min-width: 0px) and (max-width: 1600px) {

#interview-title {
    height: 42.1875vw;
    padding-bottom: 6.25vw;
}
#interview-title .inner h1 {
    font-size: 2.75vw;
}
.contents #overview #property {
    left: 6.25vw;
}
.contents #overview #career .inner {
    padding-left: 26.63551401869159%;
}
.contents .interview .body.center {
    margin: -7.067137809187279% auto 0;
}
.contents .interview p.image-full img {
    height: 30.9375vw;
}

}


@media only screen and (min-width: 0px) and (max-width: 1500px) {

/* ────────────────────── *
 *                                              *
 * 職種紹介                                     *
 *                                              *
 * ────────────────────── */

.contents #job-detail {
    width: 82.12927756653992%;
}
/* 内容 */
.contents #job-detail .inner {
    padding: 7.407407407407407% 11.11111111111111%;
}

/* ────────────────────── *
 *                                              *
 * 社員紹介                                     *
 *                                              *
 * ────────────────────── */

.contents .interview .body.center {
    width: 82.12927756653992%;
    padding: 6.844106463878327% 9.125475285171103%;
}
.contents .interview .body.forward p.image {
    width: 38.78326996197719%;
    margin-right: 6.083650190114068%;
}
.contents .interview .body.reverse p.image {
    width: 47.90874524714829%;
    margin-left: 6.083650190114068%;
}
.contents .interview .body.forward .txt {
    width: 40.68441064638783%;
}
.contents .interview .body.reverse .txt {
    width: 40.68441064638783%;
}

}


@media only screen and (min-width: 0px) and (max-width: 750px) {

/* ────────────────────── *
 *                                              *
 * ページ共通                                   *
 *                                              *
 * ────────────────────── */

/* 見出し */
#title {
    height: 62.0rem;
}
.job-index #title {
    background: url("/saiyou/image/job/index/mainvisual-sp.jpg") no-repeat center center / cover;
}
.job-person-index #title {
    background: url("/saiyou/image/job/person-index/mainvisual-sp.jpg") no-repeat center center / cover;
}
#title .inner {
    text-align: center;
    width: 100%;
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}
#title .inner h1 {
    font-size: 6.4rem;
}
#title .inner p.en {
    font-size: 2.2rem;
}

/* ────────────────────── *
 *                                              *
 * 職種紹介                                     *
 *                                              *
 * ────────────────────── */

.job-index .contents {
    padding-top: 6.0rem;
}
.contents #job-detail {
    width: 67.0rem;
    margin: 0 auto 12.0rem;
}

/* ページネーション */
.contents #job-detail ul.pagination {
    font-size: 2.8rem;
}
.contents #job-detail ul.pagination li a {
    padding: 3.5rem;
}
.contents #job-detail ul.pagination li:nth-child(1) a {
    border: 0.2rem solid #f02832;
}
.contents #job-detail ul.pagination li:nth-child(2) a {
    border: 0.2rem solid #006ee1;
}
.contents #job-detail ul.pagination.position-top li a.active::after {
    border-width: 1.4rem 1.5rem 0 1.5rem;
}
.contents #job-detail ul.pagination.position-under li a.active::after {
    border-width: 0 1.5rem 1.4rem 1.5rem;
}

/* 内容 */
.contents #job-detail .inner {
    padding: 12.0rem 6.0rem 3.0rem;
}
.contents #job-detail .inner h2 {
    font-size: 4.6rem;
    margin: 0 auto 2.0rem;
}
.contents #job-detail .inner p.en {
    font-size: 2.0rem;
    margin: 0 auto 11.0rem;
}
.contents #job-detail .inner p.txt {
    font-size: 2.0rem;
    line-height: 2.1;
    margin: 0 auto 7.0rem;
}
.contents #job-detail .inner #genre {
    padding-bottom: 5.0rem;
    margin: 0 auto 1.5rem;
    position: relative;
    overflow: auto;
}
.contents #job-detail .inner #genre table {
    display: table;
    width: 126.2rem;
    border-spacing: 0;
    border-collapse: collapse;
}
.contents #job-detail .inner #genre table th {
    width: 28.7rem;
    position: sticky;
    position: -webkit-sticky;
    left: 0;
}
.contents #job-detail .inner #genre .ps__rail-x {
    background: #d7d7da;
    width: 55.0rem !important;
    height: 0.8rem;
    opacity: 1;
}
.contents #job-detail .inner #genre .ps__thumb-x {
    background: #006ee1;
    height: 0.8rem;
    bottom: 0;
}
.contents #job-detail .inner p.notice {
    font-size: 2.0rem;
    line-height: 1.75;
    font-feature-settings: "palt" 1;
    text-align: justify;
}

.contents #job-detail .inner .flex {
    display: block;
}
.contents #job-detail .inner .flex .item {
    width: 100%;
    margin-bottom: 9.0rem;
}
.contents #job-detail .inner .flex .item dl dt {
    font-size: 3.6rem;
}
.contents #job-detail .inner .flex .item dl dt::after {
    height: 0.2rem;
}
.contents #job-detail .inner .flex .item dl dd {
    font-size: 2.4rem;
}
.contents #job-detail .inner .flex .item.full dl dd {
    display: block;
}
.contents #job-detail .inner .flex .item.full dl dd .left {
    width: 100%;
    margin-bottom: 4.0rem;
}
.contents #job-detail .inner .flex .item.full dl dd .right {
    width: 100%;
}
.contents #job-detail .inner .flex .item p.division {
    font-size: 2.0rem;
}

/* ────────────────────── *
 *                                              *
 * 社員紹介                                     *
 *                                              *
 * ────────────────────── */

/* 検索 */
.contents #search {
    background: #fff;
    width: 61.0rem;
    margin: -11.0rem auto 14.0rem;
}
.contents #search::before {
    width: calc(100% + 2.0rem);
    height: calc(100% + 2.0rem);
}
.contents #search dl.parent {
    margin-bottom: 5.0rem;
    display: block;
}
.contents #search dl.parent > dt {
    font-size: 2.4rem;
    text-align: center;
    width: 100%;
    padding: 2.5rem;
    display: block;
    position: relative;
}
.contents #search dl.parent > dt::before {
    content: "";
    background: #363746;
    width: 2.0rem;
    height: 0.4rem;
    position: absolute;
    right: 3.0rem;
    top: 50%;
    transform: translateY(-50%);
}
.contents #search dl.parent > dt::after {
    content: "";
    background: #363746;
    width: 0.4rem;
    height: 2.0rem;
    position: absolute;
    right: 3.8rem;
    top: 50%;
    transform: translateY(-50%);
    transition: opacity .5s, transform .5s;
}
.contents #search dl.parent > dt.open::after {
    opacity: 0;
    transform: translateY(-50%) rotate(90deg);
}
.contents #search dl.parent > dd {
    font-size: 2.4rem;
    line-height: 1.25;
    width: 100%;
    max-height: 0;
    padding: 0 1.5rem 0 1.5rem;
    margin-bottom: 0;
    transform-origin: top center;
    transform: scaleY(0);
    opacity: 0;
    visibility: hidden;
    transition: all .5s;
}
.contents #search dl.parent > dt.open + dd {
    max-height: 60.0rem;
    opacity: 1;
    visibility: visible;
    transform: scaleY(1);
    padding: 0 1.5rem 5.0rem 1.5rem;
}
.contents #search dl.parent > dd ul li {
    width: 40%;
    min-width: 0;
    margin-right: 0;
    margin-bottom: 2.0rem;
}
.contents #search dl.parent > dd ul li:nth-last-child(-n+2) {
    margin-bottom: 0;
}
.contents #search dl.parent > dd ul li:nth-child(4n) {
    margin-right: 0;
}
.contents #search dl.parent > dd ul li input[type=checkbox] + label {
    padding-left: 4.0rem;
    white-space: nowrap;
}
.contents #search dl.parent > dd ul li input[type=checkbox] + label:before {
    width: 3.0rem;
    height: 3.0rem;
    border: 0.2rem solid #4d4d4d;
}
.contents #search dl.parent > dd ul li input[type=checkbox]:checked + label:after {
    width: 3.0rem;
    height: 3.0rem;
}
.contents #search dl.parent > dd dl.child dt {
    font-weight: 500;
    width: 10.0rem;
    margin-bottom: 3.0rem;
}
.contents #search dl.parent > dd dl.child dt::after {
    width: 0.2rem;
}
.contents #search dl.parent > dd dl.child dd {
    width: calc(100% - 10.0rem);
    padding: 1.5rem 0 1.5rem 4.0rem;
    margin-bottom: 3.0rem;
}
.contents #search dl.parent > dd dl.child dd ul li {
    width: calc(100% / 2);
    margin-bottom: 2.0rem;
}
.contents #search dl.parent > dd dl.child dd.officework ul li:nth-child(1),
.contents #search dl.parent > dd dl.child dd.officework ul li:nth-child(4) {
    width: calc(100% / 2);
}
.contents #search dl.parent > dd dl.child dd.officework ul li:nth-child(2),
.contents #search dl.parent > dd dl.child dd.officework ul li:nth-child(5) {
    width: calc(100% / 2);
}
.contents #search dl.parent > dd dl.child dd.officework ul li:nth-child(3),
.contents #search dl.parent > dd dl.child dd.officework ul li:nth-child(6) {
    width: calc(100% / 2);
}
.contents #search dl.parent > dd dl.child dd.technology ul li {
    width: 100%;
}
.contents #search dl.parent > dd dl.child dd ul li:nth-last-child(-n+3) {
    margin-bottom: 2.0rem;
}
.contents #search dl.parent > dd dl.child dd ul li:nth-last-child(-n+2) {
    margin-bottom: 0;
}
.contents #search dl.parent > dd dl.child dd.technology ul li:nth-last-child(-n+2) {
    margin-bottom: 2.0rem;
}
.contents #search dl.parent > dd dl.child dd.technology ul li:nth-last-child(-n+1) {
    margin-bottom: 0;
}
.contents #search p button {
    font-size: 2.4rem;
    width: 32.0rem;
    padding: 2.5rem;
}

/* 一覧 */
.contents #person-list {
    width: 48.0rem;
    margin: 0 auto 12.0rem;
    display: block;
}
.contents #person-list .list {
    width: 100%;
    margin: 0 auto 5.0rem;
}
.contents #person-list .list:last-of-type {
    margin: 0 auto;
}
.contents #person-list .list .image {
    margin-bottom: 2.0rem;
}
.contents #person-list .list .image dl {
    font-size: 2.6rem;
    padding: 2.5rem;
}
.contents #person-list .list .image dl dt {
    padding-right: 3.0rem;
    margin-right: 3.0rem;
}
.contents #person-list .list .image dl dt::after {
    width: 0.2rem;
    height: calc(100% + 2.0rem);
}
.contents #person-list .list dl.name dt {
    font-size: 2.8rem;
    margin-bottom: 1.5rem;
}
.contents #person-list .list dl.name dd {
    font-size: 2.0rem;
    letter-spacing: 0.1em;
}

/* 次のコンテンツ */
.contents #next-contents {
    padding: 9.0rem 0 11.0rem;
}
.contents #next-contents .inner {
    width: 67.0rem;
}
.contents #next-contents .inner h2 {
    font-size: 7.6rem;
}
.contents #next-contents .inner #next-list {
    display: block;
}
.contents #next-contents .inner #next-list .list {
    width: 100%;
    margin-bottom: 3.0rem;
}
.contents #next-contents .inner #next-list .list:last-of-type {
    margin-bottom: 0;
}
.contents #next-contents .inner #next-list .list p.cname {
    font-size: 3.2rem;
    padding: 0 7.0rem 0 5.0rem;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
}
.contents #next-contents .inner #next-list .list p.cname::after {
    border-width: 1.0rem 0 1.0rem 2.0rem;
    right: 3.0rem;
}

/* 他のインタビュー */
.contents #next-contents.other-interviews .inner {
    width: 100%;
}
.contents #next-contents.other-interviews .inner h2 {
    letter-spacing: 0.01em;
}
.contents #next-contents.other-interviews .inner #next-list {
    width: 61.0rem;
    margin: 0 auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}
.contents #next-contents.other-interviews .inner #next-list .index {
    width: 10.0rem;
}
.contents #next-contents.other-interviews .inner #next-list .index p.image {
    width: 7.0rem;
    margin: 0 auto 1.5rem;
}
.contents #next-contents.other-interviews .inner #next-list .index p.txt {
    font-size: 2.4rem;
}
.contents #next-contents.other-interviews .inner #next-list .list {
    width: 17.0rem;
    margin-bottom: 0;
    -ms-flex-item-align: start;
    align-self: flex-start;
}
.contents #next-contents.other-interviews .inner #next-list .list a {
    display: block;
}
.contents #next-contents.other-interviews .inner #next-list .list p.image {
    width: 100%;
}
.contents #next-contents.other-interviews .inner #next-list .list .data {
    width: 100%;
}
.contents #next-contents.other-interviews .inner #next-list .list a:hover .data {
    opacity: 0.8;
}
.contents #next-contents.other-interviews .inner #next-list .list .data dl.division {
    font-size: 2.4rem;
    padding: 1.5rem 2.0rem 2.5rem;
    margin-bottom: 0;
    display: block;
}
.contents #next-contents.other-interviews .inner #next-list .list .data dl.division dt {
    font-size: 2.2rem;
    padding-right: 0;
    padding-bottom: 1.5rem;
    margin-right: 0;
    margin-bottom: 1.5rem;
    border-bottom: 0.2rem solid #fff;
}
.contents #next-contents.other-interviews .inner #next-list .list .data dl.division dd {
    line-height: 1.5;
}
.contents #next-contents.other-interviews .inner #next-list .list .data dl.division dt::after {
    content: none;
}
.contents #next-contents.other-interviews .inner #next-list .list .data dl.name {
    display: none;
}

/* プロジェクトへのリンク */
.contents #next-contents .inner #next-list .list.link-project p.cname {
    font-size: 2.8rem;
    padding: 0 7rem 0 4rem;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}
.contents #next-contents .inner #next-list .list.link-project p.cname span.en {
    font-size: 2.0rem;
}

/* ────────────────────── *
 *                                              *
 * インタビュー                                 *
 *                                              *
 * ────────────────────── */

/* タイトル */
#interview-title {
    color: #363746;
    height: auto;
    min-height: 64.0rem;
    padding-top: 64.0rem;
    padding-bottom: 0;
    margin: 0 auto 7.0rem;
}
.job-person-nakayama #interview-title {
    background: url("/saiyou/image/job/person-nakayama/mainvisual-sp.jpg") no-repeat top center / contain;
}
.job-person-yoshioka #interview-title {
    background: url("/saiyou/image/job/person-yoshioka/mainvisual-sp.jpg") no-repeat top center / contain;
}
.job-person-tanaka #interview-title {
    background: url("/saiyou/image/job/person-tanaka/mainvisual-sp.jpg") no-repeat top center / contain;
}
.job-person-adachi #interview-title {
    background: url("/saiyou/image/job/person-adachi/mainvisual-sp.jpg") no-repeat top center / contain;
}
.job-person-miura #interview-title {
    background: url("/saiyou/image/job/person-miura/mainvisual-sp.jpg") no-repeat top center / contain;
}
.job-person-yangkiwook #interview-title {
    background: url("/saiyou/image/job/person-yangkiwook/mainvisual-sp.jpg") no-repeat top center / contain;
}
.job-person-yanglingling #interview-title {
    background: url("/saiyou/image/job/person-yanglingling/mainvisual-sp.jpg") no-repeat top center / contain;
}
.job-person-iwase #interview-title {
    background: url("/saiyou/image/job/person-iwase/mainvisual-sp.jpg") no-repeat top center / contain;
}
.job-person-sato #interview-title {
    background: url("/saiyou/image/job/person-sato/mainvisual-sp.jpg") no-repeat top center / contain;
}
.job-person-tate #interview-title {
    background: url("/saiyou/image/job/person-tate/mainvisual-sp.jpg") no-repeat top center / contain;
}
.job-person-miyamoto #interview-title {
    background: url("/saiyou/image/job/person-miyamoto/mainvisual-sp.jpg") no-repeat top center / contain;
}
.job-person-izumiyama #interview-title {
    background: url("/saiyou/image/job/person-izumiyama/mainvisual-sp.jpg") no-repeat top center / contain;
}
.job-person-sasaki #interview-title {
    background: url("/saiyou/image/job/person-sasaki/mainvisual-sp.jpg") no-repeat top center / contain;
}
#interview-title .inner {
    background: #fff;
    padding: 5.0rem;
    height: auto;
    display: block;
}
#interview-title .inner p.en {
    font-size: 2.2rem;
    margin-bottom: 4.0rem;
}
#interview-title .inner h1 {
    font-size: 5.2rem;
}

/* 情報 */
.contents #overview {
    margin: 0 auto 9.0rem;
}
.contents #overview #property {
    background: #fff;
    width: 64.0rem;
    padding-bottom: 5.0rem;
    position: relative;
    top: auto;
    left: auto;
}
.contents #overview #property dl.division {
    font-size: 4.0rem;
    padding: 3.0rem 4.0rem;
    margin-bottom: 4.0rem;
}
.contents #overview #property dl.division dt {
    padding-right: 5.0rem;
    margin-right: 5.0rem;
}
.contents #overview #property dl.division dt::after {
    width: 0.2rem;
}
.contents #overview #property dl.name {
    margin: 0 5.0rem 2.5rem;
}
.contents #overview #property dl.name dt {
    font-size: 3.6rem;
    margin-bottom: 2.0rem;
}
.contents #overview #property dl.name dd {
    font-size: 2.0rem;
}
.contents #overview #property p {
    font-size: 2.6rem;
    margin: 0 5.0rem;
}
.contents #overview #career {
    padding: 23.0rem 6.5rem 14.0rem;
    margin-top: -16.0rem;
}
.contents #overview #career::before {
    content: none;
}
.contents #overview #career .inner {
    max-width: none;
    padding-left: 0;
    display: block;
}
.contents #overview #career .inner p.en {
    font-size: 2.8rem;
    margin-right: 0;
    margin-bottom: 7.0rem;
}
.contents #overview #career .inner table {
    font-size: 2.6rem;
    width: 100%;
}
.contents #overview #career .inner table th {
    padding-bottom: 5.0rem;
}
.contents #overview #career .inner table th::after {
    width: 0.2rem;
    bottom: 1.0rem;
    left: 3.0rem;
}
.contents #overview #career .inner table td {
    padding-left: 3.0rem;
    padding-bottom: 5.0rem;
}
.contents #overview #career .inner table td span.read {
    font-size: 2.2rem;
    line-height: 1.8;
}

/* インタビュー */
.contents .interview .body {
    margin-bottom: 13.0rem;
    display: block;
}
.contents .interview .body.center {
    width: 67.0rem;
    padding: 7.0rem;
    margin: -13.0rem auto 0;
}

/* インタビュー画像 */
.contents .interview .body.forward p.image {
    width: 61.0rem;
    margin-right: 0;
    margin-bottom: 7.0rem;
}
.contents .interview .body.reverse p.image {
    width: 63.0rem;
    margin-left: auto;
    margin-bottom: 7.0rem;
}

/* インタビューテキスト */
.contents .interview .body.forward .txt {
    width: 64.0rem;
    padding: 0;
    margin: 0 auto;
}
.contents .interview .body.reverse .txt {
    width: 64.0rem;
    padding: 0;
    margin: 0 auto;
}

.contents .interview .body .txt h2 {
    font-size: 4.2rem;
    line-height: 1.428571428571429;
    padding-left: 4.6rem;
    margin-bottom: 6.0rem;
}
.contents .interview .body .txt h2::before {
    width: 0.6rem;
}
.contents .interview .body .txt p {
    font-size: 2.4rem;
    line-height: 2.083333333333333;
}
.contents .interview .body .txt p sub {
    font-size: 2.4rem;
    display: inline-block;
    transform: scale(0.6);
    vertical-align: -0.4rem;
}
.contents .interview p.image-full img {
    height: auto;
}

/* オフ＆スケジュール */
.contents #personal {
    display: block;
}
.contents #personal .item {
    width: 100%;
    padding: 9.0rem 6.0rem;
}
.contents #personal .item h3 {
    font-size: 3.4rem;
    padding: 4.0rem;
    margin: 0 auto 9.0rem;
}
.contents #personal .item#off h3 {
    border: 0.4rem solid #363746;
}
.contents #personal .item#schedule h3 {
    border: 0.4rem solid #fff;
}
.contents #personal .item h3::before {
    content: "";
    width: 5.0rem;
    height: 5.0rem;
    bottom: -2.8rem;
}
.contents #personal .item h3::after {
    content: "";
    width: 0.4rem;
    height: 6.0rem;
    bottom: -4.0rem;
}

/* オフの過ごし方 */
.contents #personal .item#off p.txt {
    font-size: 2.4rem;
    line-height: 2.083333333333333;
    margin-bottom: 6.0rem;
}
.contents #personal .item#off p.image {
    width: 51.0rem;
}

/* 一日のスケジュール */
.contents #personal .item#schedule dl dt {
    font-size: 2.8rem;
    width: 8.0rem;
}
.contents #personal .item#schedule dl dt::after {
    width: 0.2rem;
    height: calc(100% - 6.0rem);
    top: 4.0rem;
    transform: translateX(-50%);
}
.contents #personal .item#schedule dl dd {
    font-size: 2.4rem;
    width: calc(100% - 8.0rem);
    margin-bottom: 4.0rem;
}

}
