/* 採用ページ本文専用。既存header.php / footer.phpには適用しない */
#content {
    position: relative;
    isolation: isolate;
}

#content,
#content * {
    box-sizing: border-box;
}

#content img {
    max-width: 100%;
    height: auto;
}

/* 採用トップページ専用CSS
   既存のheader.php・footer.phpへ影響しないよう、すべて #content 内に限定しています。 */

@font-face {
    font-family: "Noto Sans JP";
    font-style: normal;
    font-display: swap;
    font-weight: 400;
    src: local("Noto Sans CJK JP Regular"),url(//fonts.gstatic.com/ea/notosansjp/v5/NotoSansJP-Regular.woff2) format("woff2"),url(//fonts.gstatic.com/ea/notosansjp/v5/NotoSansJP-Regular.woff) format("woff"),url(//fonts.gstatic.com/ea/notosansjp/v5/NotoSansJP-Regular.otf) format("opentype")
}@font-face {
    font-family: "Noto Sans JP";
    font-style: normal;
    font-display: swap;
    font-weight: 700;
    src: local("Noto Sans CJK JP Bold"),url(//fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Bold.woff2) format("woff2"),url(//fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Bold.woff) format("woff"),url(//fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Bold.otf) format("opentype")
}@-webkit-keyframes fadeIn {
    from {
        opacity: 0
    }

    to {
        opacity: 1
    }
}@keyframes fadeIn {
    from {
        opacity: 0
    }

    to {
        opacity: 1
    }
}@-webkit-keyframes into {
    from {
        opacity: 0
    }

    to {
        opacity: 1
    }
}@keyframes into {
    from {
        opacity: 0
    }

    to {
        opacity: 1
    }
}@-webkit-keyframes sc_on {
    from {
        padding-top: 5%
    }

    to {
        opacity: 1;
        padding-top: 0px
    }
}@keyframes sc_on {
    from {
        padding-top: 5%
    }

    to {
        opacity: 1;
        padding-top: 0px
    }
}@-webkit-keyframes slidein {
    from {
        transform: translate3d(-150%, 0, 0)
    }

    to {
        transform: translate3d(0%, 0, 0);
        opacity: 1
    }
}@keyframes slidein {
    from {
        transform: translate3d(-150%, 0, 0)
    }

    to {
        transform: translate3d(0%, 0, 0);
        opacity: 1
    }
}@-webkit-keyframes slidein2 {
    from {
        transform: translate3d(-200%, 0, 0)
    }

    to {
        transform: translate3d(0%, 0, 0);
        opacity: 1
    }
}@keyframes slidein2 {
    from {
        transform: translate3d(-200%, 0, 0)
    }

    to {
        transform: translate3d(0%, 0, 0);
        opacity: 1
    }
}@-webkit-keyframes slideout {
    from {
        transform: translate3d(0%, 0, 0)
    }

    to {
        transform: translate3d(101%, 0, 0)
    }
}@keyframes slideout {
    from {
        transform: translate3d(0%, 0, 0)
    }

    to {
        transform: translate3d(101%, 0, 0)
    }
}#content .mb-4, #content .my-4 {
    margin-bottom: 1.5rem !important
}#content .mb-7, #content .my-7 {
    margin-bottom: 6rem !important
}@media print{#content {
        zoom:0.6;-webkit-print-color-adjust: exact
    }#content div, #content ul, #content li {
        opacity: 1 !important
    }}@media print and (-ms-high-contrast: none){#content {
        zoom:1.8;width: 1200px;
        transform: scale(0.5);
        transform-origin: 0 0
    }}#content .w100 {
    width: 100%
}#content .icon_new {
    position: absolute;
    z-index: 1;
    color: #fff;
    background: #bc361a;
    padding: 6px 10px;
    font-size: 1.5rem;
    line-height: 1
}#content * {
    text-decoration: none;
    outline: none
}#content, #content, #content div, #content span, #content applet, #content object, #content iframe, #content h1, #content h2, #content h3, #content h4, #content h5, #content h6, #content p, #content blockquote, #content pre, #content a, #content abbr, #content acronym, #content address, #content big, #content cite, #content code, #content del, #content dfn, #content em, #content img, #content ins, #content kbd, #content q, #content s, #content samp, #content small, #content strike, #content strong, #content sub, #content sup, #content tt, #content var, #content b, #content u, #content i, #content center, #content dl, #content dt, #content dd, #content ol, #content ul, #content li, #content fieldset, #content form, #content label, #content legend, #content table, #content caption, #content tbody, #content tfoot, #content thead, #content tr, #content th, #content td, #content article, #content aside, #content canvas, #content details, #content embed, #content figure, #content figcaption, #content footer, #content header, #content hgroup, #content menu, #content nav, #content output, #content ruby, #content section, #content summary, #content time, #content mark, #content audio, #content video {
    margin: 0;
    padding: 0;
    border: 0;
    vertical-align: baseline
}#content article, #content aside, #content details, #content figcaption, #content figure, #content footer, #content header, #content hgroup, #content menu, #content nav, #content section {
    display: block
}#content ol, #content ul {
    list-style: none
}#content img {
    border: none;
    vertical-align: bottom;
    font-size: 0px;
    line-height: 0px;
    max-width: 100%;
    height: auto
}#content {
    overflow: auto;
    font-size: 62.5%
}#content {
    min-width: 100%;
    position: relative;
    overflow: hidden;
    word-wrap: break-word;
    overflow-wrap: break-word;
    -webkit-text-size-adjust: 100%
}#content a {
    color: #000;
    display: inline-block
}#content .block {
    display: block
}#content .cf {
    zoom:1}#content .cf:before, #content .cf:after {
    content: "";
    display: block;
    overflow: hidden;
    height: 0;
    clear: both
}#content *:not(br) {
    box-sizing: border-box;
    line-height: 1.6
}#content {
    font-size: 1.5rem;
    color: #000;
    font-family: "Noto Sans JP", "Hiragino Kaku Gothic Pro", "繝偵Λ繧ｮ繝手ｧ偵ざ Pro W3", "繝｡繧､繝ｪ繧ｪ", Meiryo, "�ｭ�ｳ �ｰ繧ｴ繧ｷ繝�け", sans-serif;
    font-weight: 300
}#content .site_width {
    width: 1200px;
    margin: auto
}#content .site_width_s {
    width: 980px;
    margin: auto
}#content {
    position: relative;
    margin: auto
}#content section {
    padding: 55px 0 55px
}#content .sec_ttl {
    opacity: 0;
    margin-bottom: 40px;
    padding: 16px;
    text-align: center;
    letter-spacing: 2px
}#content .sec_ttl .small {
    font-size: 1.4rem;
    color: #bababa
}#content .in-to {
    -webkit-animation-duration: 0.5s;
    animation-duration: 0.5s;
    -webkit-animation-name: into;
    animation-name: into;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards
}#content section .site_width, #content section .site_width_s {
    opacity: 0;
    padding-top: 5%
}#content .sc_on {
    -webkit-animation-duration: 1s;
    animation-duration: 1s;
    -webkit-animation-name: sc_on;
    animation-name: sc_on;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards
}#content .sub_ttl {
    font-size: 2rem;
    font-weight: 400;
    font-feature-settings: "palt";
    margin-bottom: 30px;
    letter-spacing: 2px;
    line-height: 48px
}#content .link_btn, #content .recrut_link_btn {
    width: 100%;
    padding: 136px 0 58px;
    text-align: center;
    background: #fff
}#content .link_btn a, #content .recrut_link_btn a {
    width: 418px;
    border: 1px solid #000;
    border-radius: 38px;
    padding: 20px 0;
    font-size: 1.8rem;
    font-weight: 400;
    position: relative;
    transition: 0.3s
}#content .link_btn a span.arrow, #content .recrut_link_btn a span.arrow {
    position: absolute;
    background: #000;
    transition: 0.3s
}#content .link_btn a span.arrow:nth-child(1), #content .recrut_link_btn a span.arrow:nth-child(1) {
    top: 36px;
    right: 35px;
    width: 53px;
    height: 1px
}#content .link_btn a span.arrow:nth-child(2), #content .recrut_link_btn a span.arrow:nth-child(2) {
    top: 28px;
    right: 40px;
    width: 1px;
    height: 12px;
    transform: rotate(-66deg)
}#content .link_btn a span.arrow:nth-child(3), #content .recrut_link_btn a span.arrow:nth-child(3) {
    top: 31px;
    right: 46px;
    width: 1px;
    height: 5px
}#content .link_btn a:hover {
    background: #434343;
    border: 1px solid #434343;
    transition: 0.3s;
    color: #fff
}#content .link_btn a:hover span.arrow, #content .recrut_link_btn a:hover span.arrow {
    background: #fff;
    transition: 0.3s
}#content .link_btn a:hover span.arrow:nth-child(1), #content .recrut_link_btn a:hover span.arrow:nth-child(1) {
    right: 23px;
    width: 65px
}#content .link_btn a:hover span.arrow:nth-child(2), #content .recrut_link_btn a:hover span.arrow:nth-child(2) {
    right: 28px
}#content .link_btn a:hover span.arrow:nth-child(3), #content .recrut_link_btn a:hover span.arrow:nth-child(3) {
    right: 34px
}#content .recrut_link_btn a {
    color: #fff;
    border: none;
    background-image: linear-gradient(to top right, #ff5263 0%, #ff7381 35%, #fcbd01 100%)
}#content .recrut_link_btn a span.arrow {
    background: #fff
}#content .recrut_link_btn a:hover {
    background-image: linear-gradient(to top right, #ff394c 0%, #ff5a6a 35%, #e3aa01 100%);
    transition: 0.3s
}#content .recrut_link_btn a:hover span.arrow {
    background: white
}#content #eyecatch.no-fixed {
    position: relative;
    z-index: 2;
    top: 0;
    background-color: #000000
}#content #eyecatch {
    top: 0;
    -webkit-animation-name: fadeIn;
    animation-name: fadeIn;
    -webkit-animation-duration: 1s;
    animation-duration: 1s;
    -webkit-animation-timing-function: cubic-bezier(1, 0.03, 0.25, 1);
    animation-timing-function: cubic-bezier(1, 0.03, 0.25, 1)
}#content #eyecatch .slick_wrapp {
    position: relative
}#content #eyecatch .slick_wrapp .copy_detail {
    position: absolute;
    bottom: 13%;
    left: 16px;
    font-size: 4.6rem;
    letter-spacing: 4px;
    z-index: 1
}@media only screen and (max-width: 1600px){#content #eyecatch .slick_wrapp .copy_detail {
        font-size:3.6rem
    }}@media only screen and (max-width: 1400px){#content #eyecatch .slick_wrapp .copy_detail {
        font-size:2.6rem
    }}#content #eyecatch .slick_wrapp .copy_detail .bg_white1 {
    padding-left: 15px;
    margin-bottom: -7%;
    color: #fff;
    opacity: 0
}#content #eyecatch .slick_wrapp .copy_detail .bg_white1 {
    padding-left: 15px;
    margin-bottom: -2%;
    color: #fff;
    opacity: 0
}#content #eyecatch .slick_wrapp .copy_detail .catch-in {
    position: relative;
    -webkit-animation-duration: 0.5s;
    animation-duration: 0.5s;
    -webkit-animation-name: slidein;
    animation-name: slidein;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards;
    display: inline-block;
    overflow: hidden
}#content #eyecatch .slick_wrapp .copy_detail .bg_white2 {
    margin-left: 89px;
    padding-left: 15px;
    color: #fff;
    opacity: 0
}#content #eyecatch .slick_wrapp .copy_detail .catch-in {
    position: relative;
    -webkit-animation-duration: 0.5s;
    animation-duration: 0.5s;
    -webkit-animation-name: slidein;
    animation-name: slidein;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards;
    display: inline-block;
    overflow: hidden
}#content #eyecatch .slick_wrapp .copy_detail .bg_white2 {
    margin-left: 89px;
    padding-left: 15px;
    color: #fff;
    opacity: 0
}#content #eyecatch .slick_wrapp .copy_detail .catch-in2 {
    -webkit-animation-duration: 1s;
    animation-duration: 1s;
    -webkit-animation-name: slidein2;
    animation-name: slidein2;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards;
    overflow: hidden
}#content #eyecatch .slick_wrapp .copy_detail .catch-in .after, #content #eyecatch .slick_wrapp .copy_detail .catch-in2 .after {
    content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    z-index: 100;
    display: block;
    top: 0;
    left: 0;
    background-color: #FFF;
    -webkit-animation-duration: 0.5s;
    animation-duration: 0.5s;
    -webkit-animation-name: slideout;
    animation-name: slideout;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards
}#content #eyecatch .slick_wrapp .copy_detail .catch-in .after {
    -webkit-animation-delay: 0.8s;
    animation-delay: 0.8s
}#content #eyecatch .slick_wrapp .copy_detail .catch-in2 .after {
    -webkit-animation-delay: 1s;
    animation-delay: 1s
}#content .about_sec {
    background: #fff;
}#content .about_sec .about_wrap {
    display: flex;
    align-items: flex-start
}#content .about_sec .about_wrap .images {
    width: 600px;
    min-width: 600px;
    height: 450px;
    overflow: hidden;
    margin-right: 45px
}#content .about_sec .about_wrap .images img {
    width: 100%;
    flex-shrink: 0
}#content .about_sec .about_wrap .textarea .more {
    margin-top: 36px;
    position: relative;
    padding-left: 258px
}#content .about_sec .about_wrap .textarea .more a {
    font-size: 1.6rem;
    width: 100%;
    transition: 0.3s
}#content .about_sec .about_wrap .textarea .more a span.arrow {
    position: absolute;
    background: #000;
    transition: 0.3s
}#content .about_sec .about_wrap .textarea .more a span.arrow:nth-child(1) {
    top: 18px;
    left: 0;
    width: 247px;
    height: 1px
}#content .about_sec .about_wrap .textarea .more a span.arrow:nth-child(2) {
    top: 5px;
    left: 237px;
    width: 1px;
    height: 20px;
    transform: rotate(-69deg)
}#content .about_sec .about_wrap .textarea .more a span.arrow:nth-child(3) {
    top: 11px;
    left: 228px;
    width: 1px;
    height: 7px
}#content .about_sec .about_wrap .textarea .more a:hover {
    margin-left: 18px;
    transition: 0.3s
}#content .about_sec .about_wrap .textarea .more a:hover span.arrow:nth-child(1) {
    width: 265px
}#content .about_sec .about_wrap .textarea .more a:hover span.arrow:nth-child(2) {
    left: 255px
}#content .about_sec .about_wrap .textarea .more a:hover span.arrow:nth-child(3) {
    left: 246px
}#content .interview_sec, #content .interview_list {
    background: #fff;
    padding: 55px 0 62px
}#content .interview_sec ul, #content .interview_list ul {
    text-align: center;
    display: flex;
    flex-wrap: wrap;
    justify-content: center
}#content .interview_sec ul li {
    width: 280px;
    position: relative
}#content .interview_sec ul li {
    transition: 0.5s
}#content .interview_sec ul li:hover {
    transform: translate(0, -10px)
}#content .interview_sec .site_width_s .interview_card {
    box-shadow: 0px 0px 10px 0px #989898
}#content .interview_sec .site_width_s .link_area {
    background-color: white;
    color: black;
    text-align: left;
    height: 120px;
    width: 280px
}#content .interview_sec .site_width_s .link_area .inner {
    width: 80%;
    margin: auto;
    padding: 10px 0;
    font-family: sans-serif
}#content .interview_sec .site_width_s .link_area .inner .join_y {
    font-size: 1.2rem;
    margin-bottom: 5px;
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    word-break: break-all
}#content .interview_sec .site_width_s .link_area .inner .name {
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    word-break: break-all
}#content .interview_sec .site_width_s .link_area .inner .position {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    word-break: break-all
}#content .interview_sec .site_width_s .interview-image {
    width: 280px;
    height: 280px;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover
}#content .interview_sec .site_width_s .with-li {
    flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%
}#content .jobs_sec, #content .jobs_list {
    background: #f2f2f2;
    padding: 117px 0 63px
}#content .jobs_sec ul.site_width_s, #content .jobs_list ul.site_width_s {
    display: flex;
    flex-wrap: wrap;
    justify-content: center
}#content .jobs_sec ul.site_width_s li, #content .jobs_list ul.site_width_s li {
    margin-right: 5px;
    width: calc((980px - 10px)/3);
    margin-bottom: 5px
}#content .jobs_sec ul.site_width_s li:nth-child(3n), #content .jobs_list ul.site_width_s li:nth-child(3n) {
    margin-right: 0
}#content .jobs_sec ul.site_width_s li:nth-child(1), #content .jobs_list ul.site_width_s li:nth-child(1) {
    margin-bottom: 5px;
    margin-right: 0
}#content .jobs_sec ul.site_width_s li:nth-child(2), #content .jobs_list ul.site_width_s li:nth-child(2) {
    margin-left: 5px;
    margin-right: 0
}#content .jobs_sec ul.site_width_s li:nth-child(3), #content .jobs_list ul.site_width_s li:nth-child(3) {
    margin-bottom: 5px;
    margin-left: 5px
}#content .jobs_sec ul.site_width_s li a, #content .jobs_list ul.site_width_s li a {
    background: #fff;
    width: 100%;
    padding: 36px;
    transition: 0.3s;
    position: relative
}#content .jobs_sec ul.site_width_s li a:before, #content .jobs_list ul.site_width_s li a:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    transition: 0.3s
}#content .jobs_sec ul.site_width_s li a .img_inner, #content .jobs_list ul.site_width_s li a .img_inner {
    width: 251px;
    height: 150px;
    overflow: hidden
}#content .jobs_sec ul.site_width_s li a img, #content .jobs_list ul.site_width_s li a img {
    position: relative;
    z-index: 2;
    left: 50%;
    top: 50%;
    width: auto;
    height: auto;
    min-width: 100%;
    min-height: 100%;
    transform: translate3d(-50%, -50%, 0);
    max-width: none
}#content .jobs_sec ul.site_width_s li a .job_title, #content .jobs_list ul.site_width_s li a .job_title {
    font-size: 1.5rem;
    font-weight: 400;
    margin: 23px 0;
    position: relative;
    z-index: 2
}#content .jobs_sec ul.site_width_s li a p, #content .jobs_list ul.site_width_s li a p {
    font-size: 1.1rem;
    position: relative;
    z-index: 2
}#content .jobs_sec ul.site_width_s li a:hover, #content .jobs_list ul.site_width_s li a:hover {
    transition: 0.3s;
    color: #fff
}#content .jobs_sec ul.site_width_s li a:hover:before, #content .jobs_list ul.site_width_s li a:hover:before {
    background: #434343;
    opacity: 1;
    transition: 0.3s
}#content .jobs_sec .link_btn, #content .jobs_list .link_btn {
    background: #f2f2f2;
    padding: 62px 0 75px
}

/* 採用ページ内だけの基本設定 */
#content {
  position: relative;
  margin: 0 auto;
  color: #000;
  font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Yu Gothic", Meiryo, sans-serif;
  font-size: 1.5rem;
  font-weight: 300;
  overflow: hidden;
  word-wrap: break-word;
  overflow-wrap: break-word;
  -webkit-text-size-adjust: 100%;
}
#content, #content * { box-sizing: border-box; }
#content img { max-width: 100%; height: auto; }

/* =========================================================
   2026-07-30 表示サイズ修正
   既存サイトCSSによる縮小・幅上書きを解除し、元デザインへ戻す
========================================================= */
#content,
#content > .content,
#content section {
    zoom: 1 !important;
    transform: none !important;
}

#content {
    width: 100% !important;
    max-width: none !important;
    font-size: 15px !important;
}

#content .site_width_s {
    width: 980px !important;
    max-width: calc(100% - 40px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

#content .sec_ttl {
    margin-bottom: 55px !important;
    padding: 0 !important;
}

#content .sec_ttl .title {
    font-size: 34px !important;
    line-height: 1.35 !important;
    font-weight: 700 !important;
    letter-spacing: 3px !important;
}

#content .sec_ttl .small {
    display: block !important;
    margin-top: 8px !important;
    font-size: 14px !important;
    line-height: 1.4 !important;
    letter-spacing: 2px !important;
}

/* 社員インタビュー */
#content .interview_sec {
    padding: 58px 0 100px !important;
}

#content .interview_sec ul.site_width_s {
    display: flex !important;
    flex-wrap: nowrap !important;
    justify-content: space-between !important;
    align-items: stretch !important;
    gap: 0 !important;
}

#content .interview_sec ul.site_width_s > li.with-li {
    flex: 0 0 280px !important;
    width: 280px !important;
    max-width: 280px !important;
    margin: 0 !important;
}

#content .interview_sec .interview_card {
    display: block !important;
    width: 280px !important;
    min-width: 280px !important;
    box-shadow: 0 2px 12px rgba(0, 0, 0, .28) !important;
}

#content .interview_sec .interview-image {
    width: 280px !important;
    height: 280px !important;
    min-height: 280px !important;
    background-size: cover !important;
    background-position: center center !important;
}

#content .interview_sec .link_area {
    width: 280px !important;
    height: 120px !important;
}

#content .interview_sec .link_area .inner {
    width: auto !important;
    padding: 10px 28px 14px !important;
}

#content .interview_sec .join_y {
    font-size: 12px !important;
    line-height: 1.5 !important;
}

#content .interview_sec .name {
    margin-top: 3px !important;
    font-size: 18px !important;
    line-height: 1.5 !important;
    font-weight: 700 !important;
}

#content .interview_sec .position {
    margin-top: 2px !important;
    font-size: 13px !important;
    line-height: 1.6 !important;
}

/* 募集一覧 */
#content .jobs_sec {
    padding: 108px 0 58px !important;
    background: #f2f2f2 !important;
}

#content .jobs_sec ul.site_width_s {
    display: flex !important;
    flex-wrap: nowrap !important;
    justify-content: center !important;
    align-items: stretch !important;
    gap: 5px !important;
}

#content .jobs_sec ul.site_width_s > li {
    position: relative !important;
    flex: 0 0 325px !important;
    width: 325px !important;
    max-width: 325px !important;
    margin: 0 !important;
}

#content .jobs_sec ul.site_width_s > li > a {
    display: block !important;
    width: 325px !important;
    min-height: 409px !important;
    padding: 36px !important;
    background: #fff !important;
}

#content .jobs_sec .img_inner {
    width: 253px !important;
    height: 151px !important;
}

#content .jobs_sec .img_inner img {
    width: 100% !important;
    height: 100% !important;
    min-width: 100% !important;
    min-height: 100% !important;
    object-fit: cover !important;
}

#content .jobs_sec .job_title {
    margin: 22px 0 16px !important;
    font-size: 15px !important;
    line-height: 1.65 !important;
    font-weight: 400 !important;
}

#content .jobs_sec li p {
    font-size: 11px !important;
    line-height: 1.65 !important;
}

#content .jobs_sec .icon_new {
    top: 0 !important;
    left: 0 !important;
    padding: 5px 8px !important;
    font-size: 12px !important;
}

#content .jobs_sec .link_btn {
    padding: 67px 0 10px !important;
    background: #f2f2f2 !important;
}

#content .jobs_sec .link_btn a {
    width: 418px !important;
    padding: 20px 0 !important;
    font-size: 18px !important;
}

/* PC幅が狭い場合のみ、比率を保ちながら横幅へ収める */
@media only screen and (max-width: 1020px) and (min-width: 769px) {
    #content .site_width_s {
        max-width: calc(100% - 48px) !important;
    }

    #content .interview_sec ul.site_width_s {
        gap: 24px !important;
    }

    #content .interview_sec ul.site_width_s > li.with-li,
    #content .interview_sec .interview_card,
    #content .interview_sec .interview-image,
    #content .interview_sec .link_area {
        width: calc((100vw - 96px) / 3) !important;
        min-width: 0 !important;
        max-width: none !important;
        flex-basis: calc((100vw - 96px) / 3) !important;
    }

    #content .interview_sec .interview-image {
        height: calc((100vw - 96px) / 3) !important;
        min-height: 0 !important;
    }

    #content .jobs_sec ul.site_width_s > li,
    #content .jobs_sec ul.site_width_s > li > a {
        width: calc((100vw - 58px) / 3) !important;
        max-width: none !important;
        flex-basis: calc((100vw - 58px) / 3) !important;
    }

    #content .jobs_sec .img_inner {
        width: 100% !important;
    }
}

@media only screen and (max-width: 768px) {
    #content .sec_ttl .title {
        font-size: 25px !important;
    }

    #content .interview_sec ul.site_width_s,
    #content .jobs_sec ul.site_width_s {
        flex-wrap: wrap !important;
        gap: 24px !important;
    }

    #content .interview_sec ul.site_width_s > li.with-li,
    #content .interview_sec .interview_card,
    #content .interview_sec .interview-image,
    #content .interview_sec .link_area {
        width: min(100%, 320px) !important;
        min-width: 0 !important;
        max-width: 320px !important;
        flex-basis: 320px !important;
    }

    #content .interview_sec .interview-image {
        height: 320px !important;
        min-height: 0 !important;
    }

    #content .jobs_sec ul.site_width_s > li,
    #content .jobs_sec ul.site_width_s > li > a {
        width: min(100%, 325px) !important;
        max-width: 325px !important;
        flex-basis: 325px !important;
    }

    #content .jobs_sec .link_btn a {
        width: calc(100% - 40px) !important;
        max-width: 418px !important;
    }
}

/* 制度・環境・文化 */
#content #culture-id-pc {
    background: #f2f2f2 !important;
}

/* =========================================================
   採用トップページ レスポンシブ最終調整
   基準：
   PC        1021px以上
   タブレット 671px～1020px
   スマホ     670px以下
========================================================= */

/* 制度・環境・文化の背景 */
#content #culture-id-pc {
    background-color: #f2f2f2 !important;
}

/* 共通の横幅設定 */
#content .site_width {
    width: 1200px !important;
    max-width: calc(100% - 40px) !important;
    margin-right: auto !important;
    margin-left: auto !important;
}

#content .site_width_s {
    width: 980px !important;
    max-width: calc(100% - 40px) !important;
    margin-right: auto !important;
    margin-left: auto !important;
}

/* ファーストビュー */
#content #eyecatch {
    width: 100% !important;
    overflow: hidden !important;
}

#content #eyecatch .slick_wrapp {
    position: relative !important;
    width: 100% !important;
    background: #000 !important;
}

#content #eyecatch .slick_wrapp > div,
#content #eyecatch .slick_wrapp .li {
    width: 100% !important;
}

#content #eyecatch .slick_wrapp .li img {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    height: auto !important;
}

/* About・Culture */
#content .about_sec .about_wrap {
    display: flex !important;
    align-items: flex-start !important;
    justify-content: center !important;
}

#content .about_sec .about_wrap .images {
    flex: 0 0 600px !important;
    width: 600px !important;
    min-width: 600px !important;
    height: 450px !important;
    margin-right: 45px !important;
    overflow: hidden !important;
}

#content .about_sec .about_wrap .images img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
}

#content .about_sec .about_wrap .textarea {
    flex: 1 1 auto !important;
    width: auto !important;
    min-width: 0 !important;
}

#content .about_sec .simple_format {
    font-size: 15px !important;
    line-height: 2 !important;
}

/* =========================================================
   タブレット
   671px～1020px
========================================================= */

@media only screen and (min-width: 671px) and (max-width: 1020px) {

    /* 全体 */
    #content {
        font-size: 15px !important;
    }

    #content section {
        padding: 70px 0 !important;
    }

    #content .site_width,
    #content .site_width_s {
        width: calc(100% - 48px) !important;
        max-width: none !important;
    }

    /* セクションタイトル */
    #content .sec_ttl {
        margin-bottom: 45px !important;
        padding: 0 !important;
    }

    #content .sec_ttl .title {
        font-size: 32px !important;
        line-height: 1.4 !important;
        letter-spacing: 3px !important;
    }

    #content .sec_ttl .small {
        margin-top: 7px !important;
        font-size: 14px !important;
    }

    /* ファーストビュー */
    #content #eyecatch .slick_wrapp .copy_detail {
        bottom: 8% !important;
        left: 20px !important;
        font-size: clamp(22px, 3.4vw, 34px) !important;
        line-height: 1.5 !important;
        letter-spacing: 3px !important;
    }

    #content #eyecatch .slick_wrapp .copy_detail .bg_white2 {
        margin-left: 45px !important;
    }

    /* About・Culture */
    #content .about_sec .about_wrap {
        align-items: flex-start !important;
    }

    #content .about_sec .about_wrap .images {
        flex: 0 0 48% !important;
        width: 48% !important;
        min-width: 0 !important;
        height: auto !important;
        aspect-ratio: 4 / 3 !important;
        margin-right: 4% !important;
    }

    #content .about_sec .about_wrap .textarea {
        flex: 0 0 48% !important;
        width: 48% !important;
    }

    #content .sub_ttl {
        margin: 0 0 20px !important;
        font-size: 24px !important;
        line-height: 1.6 !important;
        letter-spacing: 2px !important;
    }

    #content .about_sec .simple_format {
        font-size: 14px !important;
        line-height: 1.9 !important;
    }

    #content .about_sec .about_wrap .textarea .more {
        margin-top: 28px !important;
        padding-left: 42% !important;
    }

    #content .about_sec .about_wrap .textarea .more a {
        font-size: 15px !important;
    }

    #content .about_sec .about_wrap .textarea .more a span.arrow:nth-child(1) {
        width: calc(42% - 12px) !important;
    }

    #content .about_sec .about_wrap .textarea .more a span.arrow:nth-child(2) {
        left: calc(42% - 22px) !important;
    }

    #content .about_sec .about_wrap .textarea .more a span.arrow:nth-child(3) {
        left: calc(42% - 31px) !important;
    }

    /* 社員インタビュー */
    #content .interview_sec {
        padding: 70px 0 90px !important;
    }

    #content .interview_sec ul.site_width_s {
        display: grid !important;
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
        gap: 22px !important;
        width: calc(100% - 48px) !important;
    }

    #content .interview_sec ul.site_width_s > li.with-li {
        width: 100% !important;
        max-width: none !important;
        margin: 0 !important;
    }

    #content .interview_sec .interview_card {
        display: block !important;
        width: 100% !important;
        min-width: 0 !important;
    }

    #content .interview_sec .interview-image {
        width: 100% !important;
        height: auto !important;
        min-height: 0 !important;
        aspect-ratio: 1 / 1 !important;
    }

    #content .interview_sec .link_area {
        width: 100% !important;
        height: 128px !important;
    }

    #content .interview_sec .link_area .inner {
        padding: 13px 20px !important;
    }

    /* 募集一覧 */
    #content .jobs_sec {
        padding: 85px 0 60px !important;
    }

    #content .jobs_sec ul.site_width_s {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 325px)) !important;
        justify-content: center !important;
        gap: 10px !important;
    }

    #content .jobs_sec ul.site_width_s > li {
        width: 100% !important;
        max-width: 325px !important;
        margin: 0 !important;
    }

    #content .jobs_sec ul.site_width_s > li > a {
        display: block !important;
        width: 100% !important;
        min-height: 409px !important;
        padding: 36px !important;
    }

    #content .jobs_sec .img_inner {
        width: 100% !important;
        height: auto !important;
        aspect-ratio: 251 / 150 !important;
    }

    #content .jobs_sec .link_btn {
        padding: 60px 0 10px !important;
    }
}

/* =========================================================
   スマートフォン
   670px以下
========================================================= */

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

    /* 全体 */
    #content {
        width: 100% !important;
        min-width: 0 !important;
        font-size: 4vw !important;
        overflow: hidden !important;
    }

    #content section {
        width: 100% !important;
        padding: 12vw 0 !important;
    }

    #content .site_width {
        width: 95% !important;
        max-width: none !important;
        margin-right: auto !important;
        margin-left: auto !important;
    }

    #content .site_width_s {
        width: 85% !important;
        max-width: none !important;
        margin-right: auto !important;
        margin-left: auto !important;
    }

    /* スクロールアニメーションの余白による横崩れ防止 */
    #content section .site_width,
    #content section .site_width_s {
        padding-top: 0 !important;
    }

    #content .sc_on {
        padding-top: 0 !important;
    }

    /* セクションタイトル */
    #content .sec_ttl {
        margin-bottom: 8vw !important;
        padding: 0 !important;
        text-align: center !important;
    }

    #content .sec_ttl .title {
        font-size: 8vw !important;
        line-height: 1.35 !important;
        font-weight: 400 !important;
        letter-spacing: 2px !important;
    }

    #content .sec_ttl .small {
        display: block !important;
        margin-top: 2vw !important;
        font-size: 4vw !important;
        line-height: 1.4 !important;
        letter-spacing: 1px !important;
    }

    /* ファーストビュー */
    #content #eyecatch {
        width: 100% !important;
        margin: 0 !important;
        background: #000 !important;
    }

    #content #eyecatch .slick_wrapp {
        width: 100% !important;
        overflow: hidden !important;
    }

    #content #eyecatch .slick_wrapp > div,
    #content #eyecatch .slick_wrapp .li {
        width: 100% !important;
    }

    /* 横長画像の比率を維持 */
    #content #eyecatch .slick_wrapp .li img {
        display: block !important;
        width: 100% !important;
        max-width: none !important;
        height: auto !important;
        object-fit: contain !important;
    }

    #content #eyecatch .slick_wrapp .copy_detail {
        bottom: 5% !important;
        left: 2vw !important;
        width: calc(100% - 4vw) !important;
        font-size: 4vw !important;
        line-height: 1.65 !important;
        letter-spacing: 1px !important;
    }

    #content #eyecatch .slick_wrapp .copy_detail .bg_white1 {
        padding-left: 0 !important;
        margin-bottom: -1vw !important;
    }

    #content #eyecatch .slick_wrapp .copy_detail .bg_white2 {
        margin-left: 8vw !important;
        padding-left: 0 !important;
    }

    /* About・Culture */
    #content .about_sec {
        padding: 12vw 0 15vw !important;
    }

    #content #about-id-pc {
        background: #fff !important;
    }

    #content #culture-id-pc {
        background: #f2f2f2 !important;
    }

    #content .about_sec .about_wrap {
        display: block !important;
        width: 100% !important;
    }

    #content .about_sec .about_wrap .images {
        display: block !important;
        width: 100% !important;
        min-width: 0 !important;
        height: auto !important;
        margin: 0 !important;
        aspect-ratio: auto !important;
    }

    #content .about_sec .about_wrap .images img {
        display: block !important;
        width: 100% !important;
        height: auto !important;
        object-fit: contain !important;
    }

    #content .about_sec .about_wrap .textarea {
        display: block !important;
        width: 95% !important;
        margin: 0 auto !important;
    }

    #content .sub_ttl {
        margin: 10vw 0 4vw !important;
        font-size: 6vw !important;
        line-height: 1.55 !important;
        font-weight: 700 !important;
        text-align: center !important;
        letter-spacing: 1px !important;
    }

    #content .about_sec .simple_format {
        font-size: 4vw !important;
        line-height: 1.9 !important;
        text-align: left !important;
    }

    /* moreリンク */
    #content .about_sec .about_wrap .textarea .more {
        width: 100% !important;
        margin-top: 8vw !important;
        padding-left: 0 !important;
        text-align: center !important;
    }

    #content .about_sec .about_wrap .textarea .more a {
        display: inline-block !important;
        width: 55vw !important;
        padding: 3vw 0 !important;
        font-size: 4.6vw !important;
        font-weight: 700 !important;
        text-align: center !important;
        position: relative !important;
    }

    #content .about_sec .about_wrap .textarea .more a span.arrow:nth-child(1) {
        top: 7vw !important;
        left: 0 !important;
        width: 18vw !important;
        height: 1px !important;
    }

    #content .about_sec .about_wrap .textarea .more a span.arrow:nth-child(2) {
        top: 4.7vw !important;
        left: 16.5vw !important;
        width: 1px !important;
        height: 3.5vw !important;
    }

    #content .about_sec .about_wrap .textarea .more a span.arrow:nth-child(3) {
        top: 5.8vw !important;
        left: 15vw !important;
        width: 1px !important;
        height: 1.4vw !important;
    }

    /* 社員インタビュー */
    #content .interview_sec {
        padding: 12vw 0 17vw !important;
        background: #fff !important;
    }

    #content .interview_sec .mb-7 {
        margin-bottom: 0 !important;
    }

    #content .interview_sec ul.site_width_s {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 7vw !important;
        width: 85% !important;
        max-width: none !important;
    }

    #content .interview_sec ul.site_width_s > li.with-li {
        display: block !important;
        width: 100% !important;
        max-width: none !important;
        margin: 0 !important;
    }

    #content .interview_sec ul.site_width_s > li.with-li:hover {
        transform: none !important;
    }

    #content .interview_sec .interview_card {
        display: block !important;
        width: 100% !important;
        min-width: 0 !important;
        box-shadow: 0 0 5px rgba(0, 0, 0, 0.4) !important;
    }

    #content .interview_sec .interview-image {
        display: block !important;
        width: 100% !important;
        height: auto !important;
        min-height: 0 !important;
        aspect-ratio: 1 / 1 !important;
        background-size: cover !important;
        background-position: center center !important;
    }

    #content .interview_sec .link_area {
        display: block !important;
        width: 100% !important;
        height: auto !important;
        min-height: 130px !important;
    }

    #content .interview_sec .link_area .inner {
        width: 80% !important;
        margin: 0 auto !important;
        padding: 12px 0 16px !important;
    }

    #content .interview_sec .join_y {
        display: block !important;
        margin-bottom: 5px !important;
        font-size: 3.2vw !important;
        line-height: 1.5 !important;
    }

    #content .interview_sec .name {
        margin: 0 !important;
        font-size: 5vw !important;
        line-height: 1.5 !important;
    }

    #content .interview_sec .position {
        margin-top: 1vw !important;
        font-size: 3.5vw !important;
        line-height: 1.6 !important;
    }

    /* 募集一覧 */
    #content .jobs_sec {
        padding: 12vw 0 0 !important;
        background: #f2f2f2 !important;
    }

    #content .jobs_sec ul.site_width_s {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 3vw !important;
        width: 85% !important;
        max-width: none !important;
    }

    #content .jobs_sec ul.site_width_s > li {
        display: block !important;
        width: 100% !important;
        max-width: none !important;
        margin: 0 !important;
    }

    #content .jobs_sec ul.site_width_s > li > a {
        display: block !important;
        width: 100% !important;
        min-height: 0 !important;
        padding: 5vw !important;
        background: #fff !important;
    }

    #content .jobs_sec .img_inner {
        display: block !important;
        width: 100% !important;
        height: 50vw !important;
        overflow: hidden !important;
    }

    #content .jobs_sec .img_inner img {
        display: block !important;
        width: 100% !important;
        height: 100% !important;
        min-width: 100% !important;
        min-height: 100% !important;
        object-fit: cover !important;
        position: static !important;
        transform: none !important;
    }

    #content .jobs_sec .job_title {
        margin: 4vw 0 !important;
        font-size: 5.2vw !important;
        line-height: 1.5 !important;
        letter-spacing: 1px !important;
        font-weight: 400 !important;
    }

    #content .jobs_sec li p {
        font-size: 3.7vw !important;
        line-height: 1.7 !important;
    }

    #content .jobs_sec .icon_new {
        top: 0 !important;
        left: 0 !important;
        padding: 1.5vw 2.5vw !important;
        font-size: 3.5vw !important;
    }

    /* 他の求人を見る */
    #content .jobs_sec .link_btn {
        width: 100% !important;
        padding: 12vw 0 18vw !important;
        background: #f2f2f2 !important;
    }

    /* 下部の募集一覧ボタン */
    #content .recrut_link_btn {
        width: 100% !important;
        padding: 8vw 0 !important;
        background: #fff !important;
    }

    #content .link_btn a,
    #content .recrut_link_btn a {
        display: inline-block !important;
        width: 78vw !important;
        max-width: none !important;
        padding: 4vw 0 !important;
        border-radius: 100px !important;
        font-size: 4vw !important;
        line-height: 1.5 !important;
        font-weight: 500 !important;
    }

    #content .link_btn a span.arrow:nth-child(1),
    #content .recrut_link_btn a span.arrow:nth-child(1) {
        top: 7vw !important;
        right: 6vw !important;
        width: 12vw !important;
        height: 1px !important;
    }

    #content .link_btn a span.arrow:nth-child(2),
    #content .recrut_link_btn a span.arrow:nth-child(2) {
        top: 5vw !important;
        right: 7.3vw !important;
        width: 1px !important;
        height: 2.8vw !important;
    }

    #content .link_btn a span.arrow:nth-child(3),
    #content .recrut_link_btn a span.arrow:nth-child(3) {
        top: 5.8vw !important;
        right: 8.8vw !important;
        width: 1px !important;
        height: 1.2vw !important;
    }
}

/* =========================================================
   小さいスマートフォン
   430px以下
========================================================= */

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

    #content .site_width_s {
        width: 88% !important;
    }

    #content .sec_ttl .title {
        font-size: 7.5vw !important;
    }

    #content #eyecatch .slick_wrapp .copy_detail {
        font-size: 3.8vw !important;
        letter-spacing: 0.5px !important;
    }

    #content .sub_ttl {
        font-size: 5.8vw !important;
    }

    #content .about_sec .simple_format {
        font-size: 3.8vw !important;
    }

    #content .interview_sec ul.site_width_s,
    #content .jobs_sec ul.site_width_s {
        width: 88% !important;
    }

    #content .jobs_sec .job_title {
        font-size: 5vw !important;
    }

    #content .jobs_sec li p {
        font-size: 3.6vw !important;
    }
}

/* =========================================================
   社員インタビュー 自動スライダー
========================================================= */

#content .interview-slider {
    width: 100%;
    position: relative;
    overflow: hidden;
}

#content .interview-slider-viewport {
    width: 100%;
    overflow: hidden;
}

#content .interview-slider-track {
    display: flex !important;
    flex-wrap: nowrap !important;
    justify-content: flex-start !important;
    align-items: stretch !important;
    gap: 20px !important;
    width: auto !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 12px 0 !important;
    transition: transform 0.7s ease;
    will-change: transform;
}

#content .interview-slider-track > li.with-li {
    flex: 0 0 280px !important;
    width: 280px !important;
    max-width: 280px !important;
    margin: 0 !important;
}

#content .interview-slider-track .interview_card {
    display: block !important;
    width: 280px !important;
    min-width: 280px !important;
}

#content .interview-slider-track .interview-image {
    width: 280px !important;
    height: 280px !important;
}

#content .interview-slider-track .link_area {
    width: 280px !important;
}

/* PCでは中央に3枚表示 */
@media only screen and (min-width: 1021px) {
    #content .interview-slider-viewport {
        width: 880px;
        margin: 0 auto;
    }
}

/* タブレットでは2枚表示 */
@media only screen and (min-width: 671px) and (max-width: 1020px) {
    #content .interview-slider-viewport {
        width: calc(100% - 48px);
        margin: 0 auto;
    }

    #content .interview-slider-track {
        gap: 20px !important;
    }

    #content .interview-slider-track > li.with-li {
        flex: 0 0 calc((100vw - 116px) / 2) !important;
        width: calc((100vw - 116px) / 2) !important;
        max-width: none !important;
    }

    #content .interview-slider-track .interview_card,
    #content .interview-slider-track .interview-image,
    #content .interview-slider-track .link_area {
        width: 100% !important;
        min-width: 0 !important;
    }

    #content .interview-slider-track .interview-image {
        height: auto !important;
        aspect-ratio: 1 / 1;
    }
}

/* スマホでは左右のカードが少し見える */
@media only screen and (max-width: 670px) {
    #content .interview-slider {
        overflow: hidden !important;
    }

    #content .interview-slider-viewport {
        width: 100% !important;
        overflow: visible !important;
    }

    #content .interview-slider-track {
        display: flex !important;
        grid-template-columns: none !important;
        gap: 3vw !important;
        width: auto !important;
        padding: 2vw 0 4vw !important;
        transition: transform 0.6s ease !important;
    }

    #content .interview-slider-track > li.with-li {
        flex: 0 0 76vw !important;
        width: 76vw !important;
        max-width: 76vw !important;
        margin: 0 !important;
    }

    #content .interview-slider-track .interview_card {
        width: 76vw !important;
        min-width: 76vw !important;
    }

    #content .interview-slider-track .interview-image {
        width: 76vw !important;
        height: 76vw !important;
        aspect-ratio: auto !important;
    }

    #content .interview-slider-track .link_area {
        width: 76vw !important;
        min-height: 26vw !important;
    }

    #content .interview-slider-track .link_area .inner {
        width: 80% !important;
        padding: 3vw 0 4vw !important;
    }

    #content .interview-slider-track > li.with-li:hover {
        transform: none !important;
    }
}

/* ページ送りドット */
#content .interview-slider-dots {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 8px;
    margin-top: 24px;
}

#content .interview-slider-dots button {
    display: block;
    width: 8px;
    height: 8px;
    padding: 0;
    border: 0;
    border-radius: 50%;
    background: #c8c8c8;
    cursor: pointer;
    transition: 0.3s;
}

#content .interview-slider-dots button.is-active {
    width: 20px;
    border-radius: 10px;
    background: #333;
}

@media only screen and (max-width: 670px) {
    #content .interview-slider-dots {
        gap: 2vw;
        margin-top: 3vw;
    }

    #content .interview-slider-dots button {
        width: 2vw;
        height: 2vw;
    }

    #content .interview-slider-dots button.is-active {
        width: 6vw;
    }
}

/* =========================================================
   社員インタビュースライダー
   スマホのみ適用
========================================================= */

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

    #content #interview-id-pc .interview-slider {
        position: relative !important;
        width: 100% !important;
        overflow: hidden !important;
    }

    #content #interview-id-pc .interview-slider-viewport {
        width: 100% !important;
        overflow: hidden !important;
    }

    #content #interview-id-pc ul.interview-slider-track {
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: nowrap !important;
        grid-template-columns: none !important;
        justify-content: flex-start !important;
        align-items: stretch !important;
        gap: 3vw !important;

        width: max-content !important;
        max-width: none !important;
        margin: 0 !important;
        padding: 2vw 0 4vw !important;

        transition: transform 0.65s ease !important;
        will-change: transform;
    }

    #content #interview-id-pc ul.interview-slider-track > li.with-li {
        display: block !important;
        float: none !important;
        flex: 0 0 76vw !important;

        width: 76vw !important;
        min-width: 76vw !important;
        max-width: 76vw !important;
        height: auto !important;

        margin: 0 !important;
        overflow: visible !important;
    }

    #content #interview-id-pc .interview-slider-track .interview_card {
        display: block !important;
        width: 76vw !important;
        min-width: 76vw !important;
        height: auto !important;
    }

    #content #interview-id-pc .interview-slider-track .interview-image {
        display: block !important;
        width: 76vw !important;
        height: 76vw !important;
    }

    #content #interview-id-pc .interview-slider-track .link_area {
        display: block !important;
        width: 76vw !important;
        height: auto !important;
        min-height: 26vw !important;
    }
}

@media only screen and (min-width: 671px) {

    #content #interview-id-pc .interview-slider,
    #content #interview-id-pc .interview-slider-viewport {
        width: 100% !important;
        overflow: visible !important;
    }

    #content #interview-id-pc ul.interview-slider-track {
        display: flex !important;
        flex-wrap: nowrap !important;
        justify-content: space-between !important;
        gap: 0 !important;

        width: 980px !important;
        max-width: calc(100% - 40px) !important;
        margin: 0 auto !important;
        padding: 0 !important;

        transform: none !important;
        transition: none !important;
    }

    #content #interview-id-pc ul.interview-slider-track > li.with-li {
        flex: 0 0 280px !important;
        width: 280px !important;
        min-width: 280px !important;
        max-width: 280px !important;
        margin: 0 !important;
    }

    #content #interview-id-pc .interview-slider-dots {
        display: none !important;
    }
}

/* =========================================================
   社員インタビュー
   PC：3枚固定／スマホ：自動スライド
========================================================= */

/* PC */
@media only screen and (min-width: 671px) {

    #content #interview-id-pc .interview-slider {
        width: 100% !important;
        overflow: visible !important;
    }

    #content #interview-id-pc .interview-slider-viewport {
        width: 100% !important;
        overflow: visible !important;
    }

    #content #interview-id-pc ul.interview-slider-track {
        display: flex !important;
        flex-wrap: nowrap !important;
        justify-content: space-between !important;
        gap: 0 !important;

        width: 980px !important;
        max-width: calc(100% - 40px) !important;
        margin: 0 auto !important;
        padding: 0 !important;

        transform: none !important;
        transition: none !important;
    }

    #content #interview-id-pc ul.interview-slider-track > li.with-li {
        float: none !important;
        flex: 0 0 280px !important;
        width: 280px !important;
        min-width: 280px !important;
        max-width: 280px !important;
        height: auto !important;
        margin: 0 !important;
    }

    #content #interview-id-pc .interview_card,
    #content #interview-id-pc .interview-image,
    #content #interview-id-pc .link_area {
        width: 280px !important;
    }

    #content #interview-id-pc .interview-image {
        height: 280px !important;
    }

    #content #interview-id-pc .link_area {
        height: 120px !important;
    }

    #content #interview-id-pc .interview-slider-dots {
        display: none !important;
    }
}

/* スマホ */
@media only screen and (max-width: 670px) {

    #content #interview-id-pc {
        overflow: hidden !important;
    }

    #content #interview-id-pc .interview-slider {
        position: relative !important;
        width: 100% !important;
        overflow: hidden !important;
    }

    #content #interview-id-pc .interview-slider-viewport {
        width: 100% !important;
        overflow-x: auto !important;
        overflow-y: hidden !important;

        scroll-snap-type: x mandatory;
        scroll-behavior: smooth;
        -webkit-overflow-scrolling: touch;

        scrollbar-width: none;
    }

    #content #interview-id-pc .interview-slider-viewport::-webkit-scrollbar {
        display: none;
    }

    #content #interview-id-pc ul.interview-slider-track {
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: nowrap !important;
        grid-template-columns: none !important;
        justify-content: flex-start !important;
        align-items: stretch !important;

        gap: 4vw !important;
        width: max-content !important;
        max-width: none !important;

        /*
         * 78vwのカードを画面中央へ配置する余白
         * (100vw - 78vw) ÷ 2 = 11vw
         */
        margin: 0 !important;
        padding: 2vw 11vw 5vw !important;

        transform: none !important;
        transition: none !important;
    }

    #content #interview-id-pc ul.interview-slider-track > li.with-li {
        display: block !important;
        float: none !important;

        flex: 0 0 78vw !important;
        width: 78vw !important;
        min-width: 78vw !important;
        max-width: 78vw !important;
        height: auto !important;

        margin: 0 !important;
        overflow: visible !important;

        scroll-snap-align: center;
        scroll-snap-stop: always;
    }

    #content #interview-id-pc .interview_card {
        display: block !important;
        width: 78vw !important;
        min-width: 78vw !important;
        height: auto !important;
        background: #fff !important;
    }

    #content #interview-id-pc .interview-image {
        display: block !important;
        width: 78vw !important;
        height: 78vw !important;
        min-height: 0 !important;

        background-size: cover !important;
        background-position: center center !important;
        background-repeat: no-repeat !important;
    }

    #content #interview-id-pc .link_area {
        display: block !important;
        width: 78vw !important;
        height: auto !important;
        min-height: 29vw !important;
        background: #fff !important;
    }

    #content #interview-id-pc .link_area .inner {
        width: auto !important;
        margin: 0 !important;
        padding: 3vw 5vw 4vw !important;
    }

    #content #interview-id-pc .join_y {
        display: block !important;
        margin: 0 0 1vw !important;
        font-size: 2.8vw !important;
        line-height: 1.5 !important;
    }

    #content #interview-id-pc .name {
        margin: 0 !important;
        font-size: 4.8vw !important;
        line-height: 1.5 !important;
        font-weight: 700 !important;
    }

    #content #interview-id-pc .position {
        margin-top: 1vw !important;
        font-size: 3.2vw !important;
        line-height: 1.6 !important;
    }

    #content #interview-id-pc ul.interview-slider-track > li:hover {
        transform: none !important;
    }

    /* ドット */
    #content #interview-id-pc .interview-slider-dots {
        display: flex !important;
        justify-content: center !important;
        align-items: center !important;
        gap: 2vw !important;
        margin-top: 2vw !important;
    }

    #content #interview-id-pc .interview-slider-dots button {
        width: 2vw !important;
        height: 2vw !important;
        min-width: 0 !important;
        padding: 0 !important;
        border: 0 !important;
        border-radius: 50% !important;
        background: #ccc !important;
    }

    #content #interview-id-pc .interview-slider-dots button.is-active {
        width: 6vw !important;
        border-radius: 10px !important;
        background: #333 !important;
    }
}



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

    #content.top-page .jobs_list {
        width: 100%;
        padding: 14vw 0;
    }

    #content.top-page .jobs_list .jobs-slider,
    #content.top-page .jobs_list .jobs-slider-viewport {
        width: 100%;
        overflow: visible;
    }

    #content.top-page .jobs_list .jobs-slider-track {
        display: block;
        width: 92%;
        margin: 0 auto;
        padding: 0;
    }

    #content.top-page .jobs_list .jobs-slider-track > li {
        width: 100%;
        max-width: none;
        margin: 0 0 5vw;
        background: #fff;
    }

    #content.top-page .jobs_list .jobs-slider-track > li > a {
        display: block;
        width: 100%;
        padding: 5vw;
        box-sizing: border-box;
    }

    #content.top-page .jobs_list .img_inner {
        width: 100%;
        aspect-ratio: 16 / 10;
        overflow: hidden;
    }

    #content.top-page .jobs_list .img_inner img {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }

    #content.top-page .jobs_list .job_title {
        margin: 5vw 0 4vw;
        font-size: 4.2vw;
        line-height: 1.65;
        letter-spacing: 0;
    }

    #content.top-page .jobs_list .job_detail,
    #content.top-page .jobs_list .job_employment,
    #content.top-page .jobs_list .job_area {
        margin: 1vw 0 0;
        font-size: 3.2vw;
        line-height: 1.6;
    }
}


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

    #job-id-pc .jobs-slider-track {
        display: block !important;
        width: 92% !important;
        margin: 0 auto !important;
    }

    #job-id-pc .jobs-slider-track > li {
        width: 100% !important;
        max-width: none !important;
        margin: 0 0 5vw !important;
    }

    #job-id-pc .jobs-slider-track > li > a {
        display: block !important;
        width: 100% !important;
        padding: 5vw !important;
        box-sizing: border-box !important;
    }

    #job-id-pc .img_inner {
        width: 100% !important;
        aspect-ratio: 16 / 10 !important;
    }

    #job-id-pc .img_inner img {
        width: 100% !important;
        height: 100% !important;
        object-fit: cover !important;
    }

    #job-id-pc .job_title {
        margin: 5vw 0 4vw !important;
        font-size: 4.2vw !important;
        line-height: 1.65 !important;
        letter-spacing: 0 !important;
    }

    #job-id-pc .job_detail,
    #job-id-pc .job_employment,
    #job-id-pc .job_area {
        font-size: 3.2vw !important;
        line-height: 1.6 !important;
    }
}


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

    #job-id-pc .jobs-slider-track {
        display: block !important;
        width: 92% !important;
        margin: 0 auto !important;
    }

    #job-id-pc .jobs-slider-track > li {
        width: 100% !important;
        max-width: none !important;
        margin: 0 0 5vw !important;
    }

    #job-id-pc .jobs-slider-track > li > a {
        display: block !important;
        width: 100% !important;
        padding: 5vw !important;
        box-sizing: border-box !important;
    }

    #job-id-pc .img_inner {
        width: 100% !important;
        aspect-ratio: 16 / 10 !important;
    }

    #job-id-pc .img_inner img {
        width: 100% !important;
        height: 100% !important;
        object-fit: cover !important;
    }

    #job-id-pc .job_title {
        margin: 5vw 0 4vw !important;
        font-size: 4.2vw !important;
        line-height: 1.65 !important;
        letter-spacing: 0 !important;
    }

    #job-id-pc .job_detail,
    #job-id-pc .job_employment,
    #job-id-pc .job_area {
        font-size: 3.2vw !important;
        line-height: 1.6 !important;
    }
}


@media (max-width:670px){

    #job-id-pc .slick-track{
        width:100% !important;
        transform:none !important;
    }

    #job-id-pc .slick-slide{
        width:100% !important;
        margin:0 !important;
        padding:0 16px !important;
        box-sizing:border-box;
    }

    #job-id-pc .slick-slide > div{
        width:100%;
    }

    #job-id-pc li{
        width:100% !important;
    }

    #job-id-pc li a{
        display:block;
        width:100%;
    }
}