@charset "utf-8";
/*
Theme Name:mrp04-child
Template:mrp04
Version: 0.01
*/
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;700;900&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Cabin:wght@600;700&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Montserrat:wght@700&display=swap");
@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;0,500;0,600;0,700;1,300;1,400;1,500;1,600;1,700&display=swap');

/* --
テーマ編集での修正作業NG(バックスラッシュが消える)
-- */
/* ----------------------
全体
---------------------- */
html {
    font-size: 62.5%;
    overflow-x: hidden;
    /* -- iphone用 -- */
}

*,
*::before,
*::after {
    box-sizing: border-box;
    overflow-wrap: break-word;
    word-wrap: break-word;
}

body {
    font-family: "Noto Sans JP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "Meiryo UI", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    font-size: 1.6rem;
    letter-spacing: normal;
    overflow-x: hidden;
    counter-reset: number;
}

img {
    max-width: 100%;
    vertical-align: bottom;
}

.post a {
    transition: 0.5s color, 0.5s opacity, 0.5s background-color;
}

div.post a {
    text-decoration: underline;
}

div.post a:hover {
    text-decoration: underline;
}

body:not(.mobile) a[href^="tel:"] {
    pointer-events: none;
}

#editor-style a[href^="tel:"] {
    pointer-events: auto !important;
}

em {
    font-style: normal;
    font-weight: 700;
}

input[type="text"],
input[type="tel"],
input[type="email"],
input[type="submit"] {
    -webkit-appearance: none;
    border-radius: 0;
    margin: 0;
}

textarea {
    -webkit-appearance: none;
}

input,
textarea,
select {
    border-radius: 0;
    font-family: "Noto Sans JP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "Meiryo UI", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    font-size: 1.6rem;
    letter-spacing: normal;
}

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

    body,
    input,
    textarea,
    select {
        font-size: 1.5rem;
    }
}

/* -- body -- */
body.mobile {
    margin-top: 0;
}

body.mobile #mainImg,
body.mobile #breadcrumb {
    margin-top: 0;
}

@media screen and (max-width: 1023px) {
    body.mobile {
        margin-top: 60px;
    }

    body.mobile.home {
        margin-top: 0;
    }

    .mobile .page-template-page-nosidebar-fullthumb #thumbImg,
    .mobile .page-template-page-nosidebar-fullwidth #thumbImg {
        margin-top: 0;
    }
}

/* -- body終わり -- */
/* -- コンテンツ幅 -- */
#wrapper {
    max-width: 1200px;
    width: 90%;
    margin: 0 auto;
    padding: 11rem 0;
    box-sizing: content-box;
    overflow: visible;
}

#full-wrapper {
    width: 100%;
    margin: 0 auto;
    padding: 11rem 0;
    box-sizing: content-box;
    overflow: visible;
}

.home #full-wrapper {
    padding: 11rem 0 0 0;
}

#content {
    width: calc(100% - 250px);
    padding: 0;
}

.home #content {
    padding: 0;
}

#content.wide {
    width: 100%;
}

#full-wrapper #content {
    width: 100%;
}

#sidebar {
    width: 225px;
    padding: 0;
}

div.post {
    margin: 0;
    padding: 0;
    line-height: 1.875;
}

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

    #wrapper,
    #full-wrapper {
        padding: 8rem 0;
    }

    #content {
        padding: 0;
    }

    #sidebar {
        padding: 8rem 0;
    }
}

@media only screen and (max-width: 959px) {
    #content {
        width: 100%;
    }

    #sidebar {
        width: 100%;
        margin: 6rem 0 0;
        padding: 0;
    }
}

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

    #wrapper,
    #full-wrapper {
        padding: 5rem 0;
    }

    #content {
        padding: 0;
    }

    #sidebar {
        margin: 5rem 0 0;
        padding: 0;
    }

    div.post {
        line-height: 1.8;
    }
}

/* -- コンテンツ幅終わり -- */
/* -- パラグラフ -- */
div.post p {
    padding-bottom: 0;
    margin-bottom: 0;
}

div.post p+p {
    margin-top: 1em;
}

/* -- パラグラフ終わり -- */
/* -- リスト -- */
.post ul {
    margin: 0;
}

.post ul li:last-child {
    margin-bottom: 0;
}

.post ol li {
    list-style: none;
}

.post .comma_list li {
    display: inline-block;
    margin-bottom: 0;
}

.post .comma_list li::after {
    content: "、";
}

.post .comma_list li:last-child::after {
    content: none;
}

.post .indent_list li {
    margin-bottom: 0.5em;
    padding-left: 1em;
    text-indent: -1em;
}

.post .indent_list li::before {
    content: "・";
}

.post .kome_list li {
    margin-bottom: 0.5em;
    padding-left: 1em;
    text-indent: -1em;
}

.post .kome_list li::before {
    content: "※";
}

.post .hyphen_list {
    max-width: 900px;
    margin: 0 auto;
}

.post .hyphen_list li {
    position: relative;
    padding-left: 1.2em;
}

.post .hyphen_list li::before {
    content: "";
    display: inline-block;
    position: absolute;
    top: 0.8em;
    left: 0;
    background-color: #00814a;
    width: 8px;
    height: 2px;
    vertical-align: middle;
}

.post .line_list {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    max-width: 1000px;
    margin: 0 auto;
    column-count: 2;
}

.post .line_list li {
    display: flex;
    align-items: center;
    position: relative;
    width: 48%;
    border-bottom: 1px solid #194f29;
    margin: 0;
    padding: 8px 20px 12px;
    line-height: 1.6;
}

.post .line_list li:nth-child(n+3) {
    margin-top: 2rem;
}

.post .line_list li::before {
    content: '';
    display: block;
    position: absolute;
    left: 0;
    top: 50%;
    width: 3px;
    height: 18px;
    background-color: #194f29;
    transform: translateY(-50%);
}

@media screen and (max-width: 1023px) {
    .post .line_list li {
        width: 48.5%;
    }
}

@media screen and (max-width: 640px) {
    .post .line_list li {
        width: 100%;
        padding: 4px 15px 8px;
    }

    .post .line_list li {
        width: 100%;
    }

    .post .line_list li:nth-child(n+2) {
        margin-top: 1.6rem;
    }

    .post .line_list li::before {
        content: '';
        display: block;
        position: absolute;
        left: 0;
        /*top: 0;*/
        bottom: 0;
        width: 3px;
        background-color: #194f29;
    }
}

/* -- リスト終わり -- */
/* -- テーブル -- */
.post table {
    margin: 0 auto;
    font-size: 100%;
    border: none;
    word-break: break-all;
}

.post table th,
.post table td {
    border: none;
}

.post table th {
    position: relative;
}

.post table th::after {
    content: '';
    display: block;
    position: absolute;
    top: 7px;
    bottom: 7px;
    left: 0;
    right: 0;
    background-color: #d9ece4;
    z-index: -1;
}

.post table tr {
    border-top: 1px solid #999;
}

.post table tr:last-child {
    border-bottom: 1px solid #999;
}

.post table.responsive {
    max-width: none;
}

.post table.responsive th,
.post table.responsive td {
    padding: 25px;
    text-align: left;
}

.w23 {
    width: 23%;
}

.thstyle {
    width: 31.5%;
}

.post table.max1000 {
    max-width: 1000px;
}

.post table.border_table th,
.post table.border_table td {
    border: 1px solid #999;
}

.post table.border_table th::after {
    content: none;
}

@media only screen and (max-width: 640px) {
    .post table.responsive th {
        padding: 10px 8px 10px;
    }

    .post table.responsive td {
        padding: 4px 8px 10px;
    }

    .post table.responsive .thstyle {
        width: 100%;
    }
}

/* -- テーブル 終わり -- */
/* ----------------------
汎用クラス
---------------------- */
.on-350 {
    display: none;
}

.on-sp {
    display: none;
}

.on-tab {
    display: none;
}

.mb-16 {
    margin-bottom: 16rem !important;
}

.mb-10 {
    margin-bottom: 10rem !important;
}

.mb-9 {
    margin-bottom: 9rem !important;
}

.mb-8 {
    margin-bottom: 8rem !important;
}

.mb-7 {
    margin-bottom: 7rem !important;
}

.mb-6 {
    margin-bottom: 6rem !important;
}

.mb-5_6 {
    margin-bottom: 5.6rem !important;
}

.mb-5 {
    margin-bottom: 5rem !important;
}

.mb-4_8 {
    margin-bottom: 4.8rem !important;
}

.mb-4 {
    margin-bottom: 4rem !important;
}

.mb-3 {
    margin-bottom: 3rem !important;
}

.mb-2_4 {
    margin-bottom: 2.4rem !important;
}

.mb-2 {
    margin-bottom: 2rem !important;
}

.mb-1_6 {
    margin-bottom: 1.6rem !important;
}

.mb-1 {
    margin-bottom: 1rem !important;
}

.mb-0 {
    margin-bottom: 0 !important;
}

.pb-0 {
    padding-bottom: 0 !important;
}

.text-center {
    text-align: center !important;
}

.text-right {
    text-align: right !important;
}

.content_inner+.content_inner {
    margin-top: 12rem;
}

.fz-1_8 {
    font-size: 1.8rem;
}

.fw-b {
    font-weight: bold;
}

.kome {
    display: block;
    padding-left: 1em;
    text-indent: -1em;
}

@media screen and (max-width: 1023px) {
    .on-tab {
        display: block;
    }

    .off-tab {
        display: none;
    }

    .mb-16 {
        margin-bottom: 12rem !important;
    }

    .mb-10 {
        margin-bottom: 8rem !important;
    }

    .mb-9 {
        margin-bottom: 7.2rem !important;
    }

    .mb-8 {
        margin-bottom: 6.4rem !important;
    }

    .mb-7 {
        margin-bottom: 5.6rem !important;
    }

    .mb-6 {
        margin-bottom: 4.8rem !important;
    }

    .mb-5_6 {
        margin-bottom: 4.4rem !important;
    }

    .mb-5 {
        margin-bottom: 4rem !important;
    }

    .mb-4_8 {
        margin-bottom: 3.6rem !important;
    }

    .mb-4 {
        margin-bottom: 3.2rem !important;
    }

    .mb-3 {
        margin-bottom: 2.4rem !important;
    }

    .mb-2_4 {
        margin-bottom: 2rem !important;
    }

    .content_inner+.content_inner {
        margin-top: 8rem;
    }

    .fz-1_8 {
        font-size: 1.6rem;
    }
}

@media screen and (max-width: 767px) {
    .on-sp {
        display: block;
    }

    .off-sp {
        display: none;
    }

    .mb-16 {
        margin-bottom: 6rem !important;
    }

    .mb-10 {
        margin-bottom: 6rem !important;
    }

    .mb-9 {
        margin-bottom: 4.5rem !important;
    }

    .mb-8 {
        margin-bottom: 4rem !important;
    }

    .mb-7 {
        margin-bottom: 3.5rem !important;
    }

    .mb-6 {
        margin-bottom: 3rem !important;
    }

    .mb-5_6 {
        margin-bottom: 2.8rem !important;
    }

    .mb-5 {
        margin-bottom: 2.5rem !important;
    }

    .mb-4_8 {
        margin-bottom: 2.4rem !important;
    }

    .mb-4 {
        margin-bottom: 2rem !important;
    }

    .mb-2_4 {
        margin-bottom: 1.6rem !important;
    }

    .text-center {
        text-align: left !important;
    }

    .content_inner+.content_inner {
        margin-top: 5rem;
    }
}

@media screen and (max-width: 350px) {
    .on-350 {
        display: block;
    }
}

/* ----------------------
ボタン
---------------------- */
.linkBtn,
.post .linkBtn {
    display: block;
    position: static;
    background: none;
    border-radius: 0;
    margin: 0;
    padding: 0;
    line-height: 1.5;
    transition: none;
}

.linkBtn::after,
.post .linkBtn::after {
    content: none;
}

.linkBtn:hover,
.post .linkBtn:hover {
    background: none;
}

.linkBtn a,
.post .linkBtn a {
    display: block;
    position: relative;
    background: #00814a;
    background: linear-gradient(to right, #00814a, #236139);
    border-radius: 100px;
    max-width: 100%;
    width: 22rem;
    margin: 0;
    padding: 1.2em 1.5em;
    color: #fff;
    font-weight: 700;
    font-size: 1.3rem;
    text-align: center;
    line-height: 1.5;
    letter-spacing: 0.05em;
    text-decoration: none !important;
    transition: opacity 0.3s ease-in-out;
    overflow: hidden;
}

.linkBtn-s a,
.post .linkBtn-s a {
    width: 19rem;
    padding: 1.02em 1.32em;
    letter-spacing: 0.1em;
}

.linkBtn-ss a,
.post .linkBtn-ss a {
    width: 18rem;
    padding: 1.1em 1.4em;
    font-size: 1.1rem;
    letter-spacing: 0.1em;
}

.linkBtn a::after,
.post .linkBtn a::after {
    content: "";
    position: absolute;
    top: 0;
    left: -75%;
    width: 50%;
    height: 100%;
    background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.16) 100%);
    transform: skewX(-25deg);
}

.linkBtn a:hover,
.post .linkBtn a:hover {
    opacity: 0.6;
}

.linkBtn a:hover::after,
.post .linkBtn a:hover::after {
    animation: shine 0.6s;
}

@keyframes shine {
    100% {
        left: 125%;
    }
}

.linkBtn-2 a,
.post .linkBtn-2 a {
    display: block;
    position: relative;
    max-width: 900px;
    border: 4px solid #097946;
    margin: 0 auto;
    padding: 0.9em calc(1.2em + 30px);
    color: #097946;
    font-weight: 700;
    font-size: 2.3rem;
    text-align: center;
    line-height: 1.6;
    text-decoration: none !important;
    transition: background-color 0.3s ease-in-out, color 0.3s ease-in-out, border-color 0.3s ease-in-out;
}

.linkBtn-2 a::after,
.post .linkBtn-2 a::after {
    font-family: "Font Awesome 5 Free";
    /* content: "f105"; */
    position: absolute;
    right: 30px;
    top: 50%;
    transform: translateY(-50%);
    transition: right 0.3s ease-in-out;
    /* バージョンアップ文字化けの為修正・追加 */
    content: "\f105";
    font-weight: 900;
}

.linkBtn-2 a:hover,
.post .linkBtn-2 a:hover {
    background-color: rgba(0, 129, 74, 0.15);
}

.linkBtn-2 a:hover::after,
.post .linkBtn-2 a:hover::after {
    right: 15px;
}

.post .linkBtn-3 {
    border: none;
    margin: 0;
    padding: 0;
}

.post .linkBtn-3 {
    display: block;
    position: relative;
    border: 4px solid #097946;
    max-width: 500px;
    width: 100%;
    margin: 0 auto;
    padding: 1em calc(1.2em + 30px);
    color: #097946;
    font-weight: 700;
    font-size: 2.3rem;
    text-align: center;
    letter-spacing: normal;
    transition: background-color 0.3s ease-in-out, color 0.3s ease-in-out, border-color 0.3s ease-in-out !important;
}

.post .linkBtn-3::after {
    font-family: "Font Awesome 5 Free";
    /* content: "f078"; */
    position: absolute;
    right: 30px;
    top: 50%;
    transform: translateY(-50%);
    transition: right 0.3s ease-in-out;
    /* バージョンアップ後文字化けの為修正 */
    content: "\f078";
    font-weight: 900;
}

.post .linkBtn-3:hover {
    cursor: pointer;
    background-color: rgba(0, 129, 74, 0.15);
}

/* -- 複数ボタン -- */
.post .button-flex {
    display: flex;
    flex-wrap: wrap;
    margin: -10px -5px;
}

.post .button-flex>* {
    margin: 10px 5px;
}

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

    .linkBtn-2 a,
    .post .linkBtn-2 a {
        padding: 0.8em calc(1.2em + 20px);
        font-size: 1.8rem;
    }

    .linkBtn-2 a::after,
    .post .linkBtn-2 a::after {
        right: 20px;
    }

    .linkBtn-2 a:hover::after,
    .post .linkBtn-2 a:hover::after {
        right: 12px;
    }

    .post .linkBtn-3 {
        margin: 0;
    }

    .post .linkBtn-3 {
        width: 95%;
        padding: .8em calc(1.2em + 30px);
        font-size: 1.8rem;
    }

    .post .linkBtn-3::after {
        right: 20px;
    }

    /* -- 複数ボタン -- */
    .post .button-flex>* {
        width: 15.5rem;
    }

    .post .top_company .button-flex>* {
        width: 18rem;
    }
}

/* ----------------------
見出し
---------------------- */
/* -- h1 -- */
/* -- 通常 カテゴリー -- */
.post h1:not([class]) {
    margin: 0 0 6rem;
    font-weight: 500;
    font-size: 3.6rem;
    text-align: center;
    text-shadow: none;
    line-height: 1.5;
    letter-spacing: 0.2em;
    text-transform: uppercase;
}

.post h1 {
    padding: 0;
}

.post h1 span {
    padding: 0;
}

/* -- 投稿・サーチ・404 -- */
h1.title,
h2.title {
    background: none;
    margin: 0 0 5rem;
    padding: 0;
    font-family: "Cabin", "Noto Sans JP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "Meiryo UI", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    font-weight: 600;
    font-size: 2.5rem;
    text-align: center;
    line-height: 1.6;
    letter-spacing: 0.2em;
}

.single h1.title,
.error404 h1.title,
.category h1.title,
.archive h1.title {
    margin: 0 0 4rem;
    padding: 0;
    font-size: 2.6rem;
    text-align: left;
    line-height: 1.6;
}

/* -- アイキャッチ内 -- */
header h1.title {
    background: none;
    margin: 0;
    padding: 8rem 5% 9rem;
    font-weight: 700;
    font-size: 3.5rem;
    text-align: center;
    text-shadow: none;
    line-height: 1.5;
    letter-spacing: 0.03em;
    text-indent: 0.03em;
}

header#h1Header h1.title {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    background: none;
    height: 100%;
    margin: 0;
    font-weight: 500;
    font-size: 5rem;
    text-align: center;
    text-shadow: none;
    line-height: 1.5;
    letter-spacing: 0.12em;
    text-indent: 0.12em;
    text-shadow: 0px 0px 15px rgba(0, 0, 0, 0.55);
    text-transform: uppercase;
}

header#h1Header h1.title span.en {
    position: absolute;
    left: 0;
    bottom: 0;
    color: rgba(255, 255, 255, 0.35);
    font-size: 6.5vw;
    text-shadow: none;
    letter-spacing: 0.1em;
    text-indent: 0.1em;
    line-height: 0.7;
    font-style: italic;
}

b.single_subttl {
    display: inline-block;
    font-size: 1.5rem;
    padding-top: 1rem;
}

@media screen and (max-width: 1400px) {
    header#h1Header h1.title {
        font-size: 3.6vw;
    }
}

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

    /* -- アイキャッチ内 -- */
    header h1.title {
        padding: 6rem 5% 7rem;
    }

    header#h1Header h1.title {
        font-size: 3.9285vw;
    }

    /* -- 投稿・サーチ・404 -- */
    h1.title,
    h2.title {
        margin: 0 0 4rem;
        font-size: 2.2rem;
    }

    .single h1.title,
    .error404 h1.title,
    .category h1.title,
    .archive h1.title {
        margin: 0 0 3rem;
        font-size: 2rem;
        line-height: 1.65;
    }
}

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

    /* -- アイキャッチ内 -- */
    header h1.title {
        padding: 4rem 5%;
        font-size: 2.2rem;
    }

    header#h1Header h1.title {
        padding: 0 6%;
        font-size: 5.6vw;
    }

    /* -- 投稿・サーチ・404 -- */
    h1.title,
    h2.title {
        margin: 0 0 3rem;
        font-size: 2rem;
    }

    .single h1.title,
    .error404 h1.title,
    .category h1.title,
    .archive h1.title {
        margin: 0 0 2rem;
        font-size: 1.8rem;
        line-height: 1.7;
    }
}

/* -- h2 -- */
/* -- 通常 -- */
.post h2:not([class]),
.post .title-2 {
    position: relative;
    border: none;
    margin: 0 auto 6.5rem;
    padding: 0 0 1em;
    font-weight: 700;
    font-size: 3rem;
    text-align: center;
    line-height: 1.55;
    letter-spacing: 0.03em;
}

.post h2:not([class])::before,
.post .title-2::before {
    content: "";
    display: block;
    position: absolute;
    left: calc(50% - 50px);
    right: auto;
    top: auto;
    bottom: 0;
    background-color: #194f29;
    width: 100px;
    height: 3px;
    visibility: visible;
}

.post h2::before,
.post h2::after {
    content: none;
    visibility: visible;
}

.post h2 {
    background: none;
    border: none;
    border-radius: 0;
    padding: 0;
}

.post h2 span {
    margin: 0;
    padding: 0;
}

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

    /* -- h2 -- */
    /* -- 通常 -- */
    .post h2:not([class]),
    .post .title-2 {
        margin: 0 auto 5rem;
        font-size: 2.4rem;
        text-align: center;
        line-height: 1.6;
    }

    .post h2:not([class])::before,
    .post .title-2::before {
        left: calc(50% - 45px);
        width: 90px;
    }
}

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

    /* -- h2 -- */
    /* -- 通常 -- */
    .post h2:not([class]),
    .post .title-2 {
        margin: 0 auto 3rem;
        padding: 0 0 0.8em;
        font-size: 2rem;
        text-align: center;
        line-height: 1.6;
    }

    .post h2:not([class])::before,
    .post .title-2::before {
        left: calc(50% - 25px);
        width: 50px;
    }
}

/* -- h3 -- */
.post h3:not([class]),
.post .title-3 {
    border: none;
    margin: 0 auto 3rem;
    padding: 0;
    font-weight: 700;
    font-size: 2.8rem;
    text-align: left;
    line-height: 1.6;
    letter-spacing: 0.03em;
}

.post h3::before,
.post h3::after {
    content: none;
}

.post h3,
.post h3 span {
    padding: 0;
}

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

    .post h3:not([class]),
    .post .title-3 {
        margin: 0 auto 2rem;
        font-size: 2.4rem;
    }
}

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

    .post h3:not([class]),
    .post .title-3 {
        margin: 0 auto 1.5rem;
        font-size: 1.8rem;
    }
}

/* -- h4 -- */
.post h4:not([class]) {
    border: none;
    margin: 0 0 2.4rem;
    padding: 0;
    color: inherit;
    font-weight: 300;
    font-size: 2.2rem;
    line-height: 1.6;
}

.post h4::before {
    content: none;
}

/* -- h5 h6 -- */
.post h5:not([class]) {
    position: relative;
    border-bottom: 1px solid #b3b3b3;
    margin: 0 0 1.6rem;
    padding: 0 0 0.15em 0.5em;
    font-weight: 400;
    font-size: 2rem;
    line-height: 1.6;
    letter-spacing: 0.1em;
}

.post h6:not([class]) {
    margin: 0 0 1.6rem;
    font-size: 1.8rem;
    line-height: 1.6;
}

/* ----------------------
プリローダー・メインビジュアル・スライダー
---------------------- */
.mainImg {
    position: relative;
    width: 100%;
    max-height: 100vh;
    height: calc(56.25vw - 17px);
    min-height: calc(50vw - 17px);
    overflow: hidden;
}

.mainImg video {
    position: absolute;
    top: 50%;
    left: 50%;
    min-width: 100%;
    width: 100%;
    min-height: 100%;
    transform: translate(-50%, -50%);
}

@media screen and (min-width: 768px) {
    .main_sp {
        display: none;
    }
}

@media screen and (max-width: 767px) {
    .main_pc {
        display: none;
    }

    .mainImg {
        position: relative;
        width: 100%;
        max-height: 100vh;
        height: calc(160vw - 17px);
        min-height: calc(152vw - 17px);
        overflow: hidden;
    }

    .mobile .mainImg {
        height: 160vw;
        min-height: 152vw;
    }
}

.top_airline_logo_wrap {
    position: relative;
    height: 100px;
}

.top_airline_logo {
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    z-index: 10;
}

.showcase div#n2-ss-4 .n2-ss-showcase-overlay {
    cursor: default;
}

.showcase .n2-ss-align {
    min-width: 1920px;
    margin: 0 auto !important;
}

.showcase img {
    max-width: 210px !important;
    max-height: 50px !important;
}

.showcase a {
    pointer-events: none;
}

.showcase .logo-60 img {
    max-height: 60px !important;
}

.showcase div#n2-ss-4 .n2-ss-slide {
    cursor: default;
}

#loftloader-wrapper .loader-message {
    margin-top: 3%;
    padding: 0 8%;
}

@media only screen and (max-width: 767px) {
    #loftloader-wrapper .loader-inner {
        top: 42.8%;
    }

    #loftloader-wrapper .loader-message {
        margin-top: 7%;
        font-size: 16px;
    }
}

/* ----------------------
アニメーション
---------------------- */
@-webkit-keyframes fadeInLeft2 {
    from {
        opacity: 0;
        -webkit-transform: translate3d(-15%, 0, 0);
        transform: translate3d(-15%, 0, 0);
    }

    to {
        opacity: 1;
        -webkit-transform: none;
        transform: none;
    }
}

@keyframes fadeInLeft2 {
    from {
        opacity: 0;
        -webkit-transform: translate3d(-15%, 0, 0);
        transform: translate3d(-15%, 0, 0);
    }

    to {
        opacity: 1;
        -webkit-transform: none;
        transform: none;
    }
}

.fadeInLeft {
    -webkit-animation-name: fadeInLeft2;
    animation-name: fadeInLeft2;
}

@keyframes fadeInRight2 {
    from {
        opacity: 0;
        -webkit-transform: translate3d(15%, 0, 0);
        transform: translate3d(15%, 0, 0);
    }

    to {
        opacity: 1;
        -webkit-transform: none;
        transform: none;
    }
}

.fadeInRight {
    -webkit-animation-name: fadeInRight2;
    animation-name: fadeInRight2;
}

@media screen and (max-width: 767px) {
    .animated {
        animation-delay: 0s !important;
    }
}

/* ----------------------
共通
---------------------- */
.post .title-b {
    font-weight: 700;
    font-size: 5rem;
    line-height: 1.3;
}

.post .title-b span {
    display: inline-block;
}

.post .title-sb {
    margin: 0 0 2.5rem;
    font-weight: 700;
    font-size: 2.8rem;
    line-height: 1.6071;
    letter-spacing: 0.05em;
}

.post .title-ej {
    margin: 0 0 3rem;
    font-family: "Cabin", sans-serif;
    font-weight: 400;
    font-size: 2.8rem;
    line-height: 1.7307;
    letter-spacing: -0.03em;
}

.post .title-ej .en {
    display: block;
    letter-spacing: 0.01em;
}

.post .title-ej .ja {
    display: block;
    font-family: "Noto Sans JP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "Meiryo UI", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    font-weight: 900;
    font-size: 2.6rem;
}

.post .title-ej .ja span:not([class]) {
    display: inline-block;
}

.post .title-ej .en+.ja {
    margin-top: 1rem;
}

@media screen and (max-width: 1500px) {
    .post .title-b {
        font-size: 4rem;
        line-height: 1.35;
    }
}

@media screen and (max-width: 1200px) {
    .post .title-b {
        font-size: 3.5rem;
        line-height: 1.4;
    }

    .post .title-sb {
        margin: 0 0 2rem;
        font-size: 2.5rem;
    }

    .post .title-ej {
        margin: 0 0 2.5rem;
        font-size: 2.5rem;
    }

    .post .title-ej .ja {
        font-size: 2.2rem;
    }

    .post .title-ej .en+.ja {
        margin-top: 0.8rem;
    }
}

@media screen and (max-width: 767px) {
    .post .title-b {
        font-size: 2.4rem;
        line-height: 1.45;
    }

    .post .title-sb {
        margin: 0 0 1.5rem;
        font-size: 2rem;
    }

    .post .title-ej {
        margin: 0 0 2rem;
        font-size: 2rem;
    }

    .post .title-ej .ja {
        font-size: 1.8rem;
    }

    .post .title-ej .en+.ja {
        margin-top: 0.5rem;
    }
}

/* ----------------------
トップページ
---------------------- */
/* -- top_greeting -- */
.top_greeting_inner {
    position: relative;
    padding-top: 1px;
}

.top_greeting .top_greeting_box {
    background-color: rgba(255, 255, 255, 0.85);
    width: 51.1041%;
    min-width: 1030px;
}

.top_greeting .top_greeting_description {
    padding: 17rem 12% 22.5rem 15.9183%;
}

.top_greeting .top_greeting_bg {
    position: absolute;
    top: 100px;
    bottom: 100px;
    left: 130px;
    right: 130px;
    background-image: url(/struct/wp-content/uploads/map.png);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
    z-index: -1;
}

.top_greeting .title-b {
    margin: 0 0 4.5rem;
}

.top_greeting .top_greeting_text {
    margin: 0 0 5.5rem;
    line-height: 2;
}

.top_greeting .top_greeting_text {
    line-height: 2;
}

@media screen and (max-width: 1500px) {
    .top_greeting .top_greeting_box {
        min-width: 800px;
    }

    .top_greeting .top_greeting_bg {
        position: absolute;
        top: 5vw;
        bottom: 5vw;
        left: 8vw;
        right: 8vw;
    }

    .top_greeting .title-b {
        margin: 0 0 4rem;
    }

    .top_greeting .top_greeting_text {
        margin: 0 0 5rem;
    }
}

@media screen and (max-width: 1200px) {
    .top_greeting .top_greeting_box {
        min-width: 680px;
    }

    .top_greeting .top_greeting_description {
        padding: 14rem 10% 17rem 13%;
    }

    .top_greeting .top_greeting_bg {
        top: 3vw;
        bottom: 3vw;
        left: 0;
        right: 0;
        background-position: center;
    }

    .top_greeting .title-b {
        margin: 0 0 3.5rem;
    }

    .top_greeting .top_greeting_text {
        margin: 0 0 4.5rem;
    }
}

@media screen and (max-width: 1023px) {
    .top_greeting .top_greeting_box {
        width: 100%;
        min-width: 0;
        margin: 0 0 0;
    }

    .top_greeting .top_greeting_description {
        padding: 15% 10% 15% 10%;
    }

    .top_greeting .top_greeting_bg {
        top: 12vw;
        bottom: auto;
        left: auto;
        right: -10vw;
        background-position: center;
        width: 120%;
        padding-top: calc(48.7053% * 1.2);
    }

    .top_greeting .title-b {
        margin: 0 0 3.5rem;
    }

    .top_greeting .top_greeting_text {
        margin: 0 0 4.5rem;
    }
}

@media screen and (max-width: 767px) {
    .top_greeting .top_greeting_description {
        padding: 15% 7%;
    }

    .top_greeting .top_greeting_bg {
        top: 8vw;
        right: -15vw;
        width: 130%;
        padding-top: calc(48.7053% * 1.3);
    }

    .top_greeting .title-b {
        margin: 0 0 3rem;
    }

    .top_greeting .top_greeting_text {
        margin: 0 0 3.5rem;
    }
}

/* -- top_menu -- */
.top_menu .top_menu_flex {
    display: flex;
}

.top_menu .top_menu_flex>* {
    width: 50%;
    min-height: 0%;
}

.top_menu .top_menu_item {
    height: 100%;
    display: flex;
    flex-direction: column-reverse;
}

.top_menu .top_menu_image {
    min-height: 0%;
}

.top_menu .top_menu_image img {
    max-width: none;
    width: 100%;
}

.top_menu .top_menu_box {
    flex-grow: 1;
    display: flex;
    flex-direction: column;
    position: relative;
    background-color: #fff;
    box-shadow: 2px 8px 30px rgba(0, 0, 0, 0.1);
    max-width: 600px;
    width: 80%;
    margin: -20.8333% auto 0;
    padding: 65px 50px 50px;
    z-index: 1;
}

.top_menu .top_menu_text {
    margin: 0 0 6rem;
    font-size: 1.4rem;
    line-height: 1.7857;
    letter-spacing: -0.04em;
}

.top_menu .top_menu_box .linkBtn {
    margin-top: auto;
}

@media screen and (max-width: 1400px) {
    .top_menu .top_menu_box {
        width: 85%;
        margin: -15% auto 0;
        padding: 9% 8% 8%;
    }

    .top_menu .top_menu_text {
        margin: 0 0 5rem;
    }
}

@media screen and (max-width: 1023px) {
    .top_menu .top_menu_flex {
        flex-direction: column;
    }

    .top_menu .top_menu_flex>* {
        width: 100%;
    }

    .top_menu .top_menu_flex>*:nth-child(n + 2) {
        margin: 12% 0 0;
    }

    .top_menu .top_menu_item {
        min-height: 0%;
    }

    .top_menu .top_menu_box {
        max-width: 800px;
        width: 80%;
        margin: -20% auto 0;
        padding: 9% 8% 8%;
    }

    .top_menu .top_menu_text {}
}

@media screen and (max-width: 767px) {
    .top_menu .top_menu_box {
        width: 85%;
        margin: -15% auto 0;
        padding: 9% 8% 8%;
    }

    .top_menu .top_menu_text {
        margin: 0 0 2.5rem;
    }

    .top_menu .top_menu_item .linkBtn a {
        margin: 0 auto;
    }
}

/* -- top_company -- */
.top_company {
    margin: -130px 0 0;
}

.top_company .top_company_inner {
    position: relative;
    padding: calc(22.5rem + 130px) 0 22.5rem;
}

.top_company .top_company_description {
    max-width: 630px;
    margin: 0 0 0 13.0208%;
    background-color: #fff;
    box-shadow: 2px 8px 30px rgb(0 0 0 / 10%);
    padding: 65px 50px 50px;
}

.top_company_text {
    margin: 0 0 4.5rem;
    letter-spacing: -0.05em;
}

.top_company .top_company_image {
    position: absolute;
    top: calc(16.5rem + 130px);
    left: 587px;
    width: calc(100% - 587px);
    transform: translateY(-10%);
    z-index: -1;
}

.top_company .top_company_bg {
    position: absolute;
    top: 95px;
    bottom: 47px;
    left: 0;
    right: 0;
    background-image: url(/struct/wp-content/uploads/company_bg.png);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    padding: 100px 130px;
    z-index: -2;
}

@media screen and (max-width: 1700px) {
    .top_company .top_company_description {
        margin: 0 0 0 11%;
    }
}

@media screen and (max-width: 1400px) {
    .top_company .top_company_inner {
        position: relative;
        padding: calc(130px + 25%) 0 22.5rem;
    }

    .top_company .top_company_description {
        width: 50%;
        max-width: 500px;
        margin: 0 0 0 11%;
    }

    .top_company .top_company_image {
        top: calc(11% + 130px);
        left: 35%;
        width: calc(110% - 35%);
    }
}

@media screen and (max-width: 1200px) {
    .top_company .top_company_inner {
        position: relative;
        padding: calc(130px + 45%) 0 17rem;
    }

    .top_company .top_company_description {
        margin: 0 0 0 10%;
    }

    .top_company .top_company_image {
        top: calc(10% + 130px);
        left: 25%;
        width: calc(115% - 25%);
    }
}

@media screen and (max-width: 1023px) {
    .top_company .top_company_inner {
        position: relative;
        padding: calc(130px + 60%) 0 15%;
    }

    .top_company .top_company_description {
        width: 80%;
        max-width: none;
        margin: 0 auto;
    }

    .top_company_text {
        margin: 0 0 4rem;
    }

    .top_company .top_company_image {
        top: calc(10% + 130px);
        left: 15%;
        width: calc(115% - 15%);
    }
}

@media screen and (max-width: 767px) {
    .top_company .top_company_inner {
        position: relative;
        padding: calc(65px + 80%) 0 15%;
    }

    .top_company .top_company_description {
        width: 90%;
    }

    .top_company_text {
        margin: 0 0 3.5rem;
    }

    .top_company .top_company_image {
        top: calc(14% + 65px);
        left: 10%;
        width: calc(115% - 10%);
    }

    .top_company .button-flex {
        margin: 0 auto;
        justify-content: center;
    }
}

/* -- top_airline -- */
.top_airline::after {
    content: "";
    display: block;
    background-image: url(/struct/wp-content/uploads/parallax_sec.jpg);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    background-attachment: fixed;
    height: 31.25vw;
}

_::-webkit-full-page-media,
_:future,
:root .top_airline::after {
    background-attachment: scroll;
}

@media all and (-ms-high-contrast:none) {

    *::-ms-backdrop,
    .top_airline::after {
        background-attachment: scroll;
    }
}

.top_airline .top_airline_inner {
    background-color: #c1d4e5;
    background-image: url(/struct/wp-content/uploads/gsalogo_bg.jpg);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    padding: 8rem 0 11rem;
}

.top_airline .title-ej {
    color: #fff;
    font-size: 2.5rem;
    text-align: center;
}

@media screen and (max-width: 1023px) {
    .top_airline .top_airline_inner {
        padding: 6rem 0 8rem;
    }

    .top_airline .title-ej {
        font-size: 2rem;
    }
}

@media screen and (max-width: 767px) {
    .top_airline::after {
        max-height: 300px;
        height: 45vw;
    }

    .top_airline .top_airline_inner {
        padding: 3.5rem 0 4rem;
    }

    .top_airline .title-ej {
        font-size: 1.5rem;
    }
}

/* -- トップ　投稿 -- */
#front_bottom_content {
    max-width: 1118px;
    width: 90%;
    margin: 0 auto;
    padding: 11.5rem 0 11rem;
}

@media screen and (max-width: 1023px) {
    #front_bottom_content {
        padding: 9.5rem 0 9rem;
    }
}

@media screen and (max-width: 767px) {
    #front_bottom_content {
        padding: 12% 0 11%;
    }
}

/* -- top_recruit -- */
.front_recruit {
    background: url(/struct/wp-content/uploads/front_rec_bg03.jpg);
    padding: 10rem 0;
    background-size: cover;
    background-position: center top;
}

@media screen and (min-width: 961px) {
    .front_recruit {
        background-position-y: 20%;
    }
}

.front_recruit .inner {
    color: #ffffff;
    margin: 0 auto;
    padding: 10rem 0;
    width: 100%;
    max-width: 1400px;
    text-align: center;
}

.front_recruit .inner h2 {
    color: #ffffff;
}

@media screen and (max-width: 767px) {
    .front_recruit .inner {
        width: 90%;
    }

    .front_recruit .inner p {
        font-size: 1.2rem;
        text-align: left;
    }
}

/* ----------------------
下層　共通
---------------------- */
/* -- アイキャッチ -- */
#h1Header #thumb,
#thumbImg {
    position: relative;
    height: 20.8333vw;
    overflow: hidden;
}

#h1Header #thumb img,
#thumbImg img {
    position: absolute;
    max-width: none;
    width: auto;
    height: 100%;
    top: 0;
    left: 50%;
    margin: 0;
    transform: translateX(-50%);
}

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

    #h1Header #thumb,
    #thumbImg {
        position: relative;
        height: 400px;
        overflow: hidden;
    }

    #h1Header #thumb img,
    #thumbImg img {
        width: 100%;
        height: auto;
    }
}

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

    /* -- アイキャッチ -- */
    #h1Header #thumb,
    #thumbImg {
        height: 24.4379vw;
    }

    #h1Header #thumb img,
    #thumbImg img {
        margin-left: 0;
    }
}

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

    /* -- アイキャッチ -- */
    #h1Header #thumb,
    #thumbImg {
        min-height: 100px;
    }
}

/* -- line-title -- */
.post .line-title {
    margin: 0 0 7rem;
    text-align: center;
}

.post .line-title .en {
    display: block;
    margin: 0 0 0.1em;
    color: #194f29;
    font-family: "Cabin", sans-serif;
    font-weight: 400;
    font-size: 1.8rem;
    line-height: 1.7307;
}

.post .line-title .ja {
    display: block;
    margin: 0;
    font-weight: 700;
    font-size: 3.2rem;
    line-height: 1.6071;
    letter-spacing: 0.05em;
}

@media screen and (max-width: 1023px) {
    .post .line-title {
        margin: 0 0 5rem;
    }

    .post .line-title .en {
        font-size: 1.7rem;
    }

    .post .line-title .ja {
        font-size: 2.7rem;
    }
}

@media screen and (max-width: 767px) {
    .post .line-title {
        margin: 0 0 3rem;
    }

    .post .line-title .en {
        font-size: 1.4rem;
    }

    .post .line-title .ja {
        font-size: 2.2rem;
    }
}

/* -- green_title -- */
.post .green_title {
    margin: 0 0 2rem;
    color: #097946;
    font-weight: 700;
    font-size: 2.2rem;
    line-height: 1.7;
}

@media screen and (max-width: 1023px) {
    .post .green_title {
        margin: 0 0 1.5rem;
        font-size: 2rem;
    }
}

@media screen and (max-width: 767px) {
    .post .green_title {
        margin: 0 0 1.2rem;
        font-size: 1.7rem;
        line-height: 1.8;
    }
}

/* -- bg-green -- */
.post .bg-green {
    background-color: #d9ece4;
    padding: 4%;
}

/* -- lead -- */
.lead {
    font-weight: 500;
    font-size: 1.7rem;
    text-align: center;
    line-height: 2;
}

@media screen and (max-width: 1023px) {
    .lead {
        text-align: left;
    }
}

@media screen and (max-width: 767px) {
    .lead {
        font-size: 1.5rem;
    }
}

/* -- white_box -- */
.white_box_wrap {
    display: flex;
    align-items: flex-end;
    padding: 0 0 5rem;
}

.white_box_wrap.inner80 {
    margin-left: calc(((80vw - 100%) / 2) * -1);
    margin-right: calc(((80vw - 100%) / 2) * -1);
}

.white_box_wrap.no-end {
    align-items: flex-start;
}

.white_box_wrap-l {
    align-items: center;
    flex-direction: column;
    padding: 0;
}

.white_box_wrap+.white_box_wrap {
    margin-top: 13rem;
}

.white_box {
    background-color: #fff;
    box-shadow: 2px 8px 30px rgba(0, 0, 0, 0.1);
    width: 48%;
    margin: 15% -13% -5rem 0;
    padding: 65px 50px 50px;
    z-index: 1;
}

.white_box-l {
    width: 80%;
    margin: -10% auto 0;
    order: 2;
}

.white_box .white_box_title {
    margin: 0 0 2.5rem;
    font-weight: 700;
    font-size: 2.8rem;
    line-height: 1.6071;
    letter-spacing: 0.05em;
}

.white_box_wrap-r {
    flex-direction: row-reverse;
}

.white_box_wrap-r .white_box {
    margin-right: 0 !important;
    margin-left: -20%;
    margin-top: 7%;
}

.white_box_image {
    width: 65%;
    margin: 0;
}

.right-figure .white_box_image {
    text-align: right;
}

.white_box_image-l {
    width: 100%;
    min-height: 0%;
    margin: 0 auto;
    order: 1;
}

.post .white_box_list {
    margin: 0;
}

.post .white_box_list li {
    width: 85%;
    margin: 0 0 8rem;
}

.post .white_box_list li:nth-child(odd) {
    margin-left: auto;
}

.post .white_box_list_item {
    background-color: #fff;
    box-shadow: 2px 7px 29px rgba(0, 0, 0, 0.1);
    border-left: 4px solid #194f29;
    margin: 0;
    padding: 50px;
}

.map_box {
    background-image: url(/struct/wp-content/uploads/map_h.png);
    background-size: cover;
}

.flexbox {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: space-between;
}

.flexbox.stretch {
    align-items: stretch;
}

.flexbox.reverse {
    flex-direction: row-reverse;
}

.w30 {
    width: 30%;
}

.w40 {
    width: 40%;
}

.w50 {
    width: 47%;
}

.w60 {
    width: 55%;
}

.w70 {
    width: 65%;
}

@media screen and (max-width: 1023px) {
    .white_box_wrap {
        flex-direction: column-reverse;
        padding: 0;
        margin: 0 calc(50% - 50vw);
    }

    .white_box_wrap-l {
        align-items: center;
        flex-direction: column;
        padding: 0;
    }

    .white_box_wrap+.white_box_wrap {
        margin-top: 12%;
    }

    .white_box {
        max-width: 800px;
        width: 80%;
        margin: -5rem auto 0;
        padding: 8%;
        z-index: 1;
    }

    .white_box-l {
        width: 80%;
        margin: -10% auto 0;
        order: 2;
    }

    .white_box .white_box_title {
        margin: 0 0 1.8rem;
        font-size: 2.5rem;
    }

    .white_box_wrap-r {
        flex-direction: column-reverse;
    }

    .white_box_wrap-r .white_box {
        margin-right: auto !important;
        margin-left: auto;
    }

    .white_box_image {
        width: 100%;
        min-height: 0%;
        text-align: center;
    }

    .white_box_image-l {
        width: 100%;
        margin: 0 auto;
    }

    .post .white_box_list li {
        width: 90%;
        margin: 0 0 6rem;
    }

    .post .white_box_list_item {
        padding: 7%;
    }
}

@media screen and (max-width: 767px) {
    .white_box_wrap+.white_box_wrap {
        margin-top: 12%;
    }

    .white_box {
        width: 85%;
        margin: -4rem auto 0;
    }

    .white_box .white_box_title {
        margin: 0 0 1.3rem;
        font-size: 2rem;
    }

    .white_box_wrap-r {
        flex-direction: column-reverse;
    }

    .white_box_wrap-r .white_box {
        margin-right: auto;
        margin-left: auto;
    }

    .post .white_box_list {
        width: 94%;
        margin: 0 auto;
    }

    .post .white_box_list li {
        width: 100%;
        margin: 0 0 6rem;
    }

    .post .white_box_list_item {
        padding: 8%;
    }

    .flexbox.sp-reverse {
        flex-direction: column-reverse;
    }

    .w30,
    .w40,
    .w50,
    .w60,
    .w70 {
        width: 100%;
        min-height: 0%;
    }
}

/* -- アコーディオン -- */
#interview .vision_accordion {
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    font-size: inherit;
    font-weight: inherit;
    line-height: inherit;
}

#interview .accordion_heading {
    display: table;
    align-items: center;
    border: none !important;
    border-radius: 0;
    background: none !important;
    max-width: 552px;
    width: 100%;
    min-height: 0;
    margin: 0 auto;
    padding: 0 !important;
    color: inherit;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 400 !important;
    font-size: 2.2rem;
    line-height: 1.5;
}

#interview .ui-accordion-header-active {
    margin-bottom: 0;
}

#interview .ui-accordion .ui-accordion-content {
    border: none !important;
    border-radius: 0;
    background: #fff !important;
    width: auto;
    margin: 0 -50px;
    padding: 4rem 50px 0 50px;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: inherit;
    font-size: inherit;
    line-height: inherit;
    overflow: hidden;
}

#interview .accordion_content_flex {
    display: flex;
    align-items: center;
    position: relative;
}

#interview .accordion_content p {
    font-size: 1.6rem;
    line-height: 1.8125;
}

#interview .warranty_box+.warranty_box {
    margin: 4rem 0 0;
}

#interview .warranty_text+.warranty_text {
    margin: 3rem 0 0;
}

#interview .warranty_list li {
    padding-left: 1.2em;
    text-indent: -1.2em;
}

.post .ac {
    display: block;
    margin: 0 auto;
    color: #006440;
    text-align: center;
    text-decoration: none;
    transition: opacity .5s;
    cursor: pointer;
}

.post .ac-box input {
    display: none;
}

.post .ac-box input:checked+.ac-text {
    height: auto;
    margin-top: 4rem;
    overflow: visible;
    opacity: 1;
    transition: height .8s, margin-top .5s;
}

.post .ac-box .ac-text {
    height: 0;
    transition: height .8s, opacity .8s, margin-top .5s;
    overflow: hidden;
    opacity: 0;
}

@media screen and (max-width: 767px) {
    #interview .ui-accordion .ui-accordion-content {
        border: none !important;
        border-radius: 0;
        background: #fff !important;
        width: auto;
        margin: 0 -50px;
        padding: 2rem 50px 0 50px;
        font-family: 'Noto Sans JP', sans-serif;
        font-weight: inherit;
        font-size: inherit;
        line-height: inherit;
        overflow: hidden;
    }

    .post .ac {
        margin: 0 auto;
    }

    .post .ac-box input:checked+.ac-text {
        height: auto;
        margin-top: 2rem;
        overflow: visible;
        opacity: 1;
    }
}

/* ----------------------
下層　国際貨物事業
---------------------- */
#freight .freight_lead_box {
    display: flex;
    justify-content: space-between;
}

#freight .lead {
    width: 48%;
    font-weight: 400;
    text-align: left;
}

#freight .white_box {
    width: 55%;
    min-height: 350px;
    margin-right: -20%;
    margin-top: 8%;
    background-color: rgba(255, 255, 255, 0.7);
}

#freight .white_box_image {
    align-self: flex-start;
}

#freight .service_title {
    background: none;
    margin: 0 0 5rem;
    padding: 0;
    font-family: "Cabin", "Noto Sans JP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "Meiryo UI", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    font-weight: 600;
    font-size: 2.8rem;
    text-align: center;
    line-height: 1.6;
    letter-spacing: 0.2em;
}

#freight .gsa_list {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

#freight .gsa_list>li {
    width: 48%;
    margin: 0;
}

#freight .gsa_list>li:nth-of-type(n+3) {
    margin: 8rem 0 0;
}

#freight .gsa_list_item {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    height: 100%;
}

#freight .gsa_list_image {
    width: 100%;
    min-height: 0%;
    text-align: center;
    order: 1;
}

#freight .gsa_list_box {
    flex-grow: 1;
    display: flex;
    flex-direction: column;
    background-color: #fff;
    box-shadow: 2px 8px 30px rgba(0, 0, 0, 0.1);
    width: 100%;
    margin: -18% auto 0;
    padding: 32px 25px 35px 25px;
    z-index: 1;
    order: 2;
}

#freight .gsa_list_title {
    margin: 0 auto 1.8rem;
    font-family: "Cabin", sans-serif;
    font-weight: 700;
    font-size: 2.4rem;
    text-align: center;
    line-height: 1.5;
    letter-spacing: 0.1em;
}

#freight .indent_list {
    font-size: 1.5rem;
}

#freight .indent_list li {
    margin-bottom: .6em;
}

@media screen and (max-width: 1400px) {
    #freight .white_box {
        min-height: 0;
    }
}

@media screen and (max-width: 1023px) {
    #freight .freight_lead_box {
        display: flex;
        flex-direction: column;
    }

    #freight .lead {
        width: 100%;
    }

    #freight .white_box {
        width: 80%;
        margin: -5rem auto 0;
    }

    #freight .gsa_list>li {
        width: 47%;
    }

    #freight .gsa_list>li:nth-of-type(n+3) {
        margin: 6rem 0 0;
    }

    #freight .gsa_list_box {
        padding: 25px 5% 22px;
    }

    #freight .gsa_list_title {
        margin: 0 auto 1.5rem;
        font-size: 2.1rem;
    }

    #freight .indent_list {
        font-size: 1.4rem;
    }
}

@media screen and (max-width: 767px) {
    #freight .freight_lead_box {
        display: flex;
        flex-direction: column;
    }

    #freight .white_box {
        width: 90%;
        margin: -8% auto 0;
    }

    #freight .white_box_wrap.inner80 {
        margin-left: calc(((90vw - 100%) / 2) * -1);
        margin-right: calc(((90vw - 100%) / 2) * -1);
    }

    #freight .gsa_list>li {
        width: 100%;
    }

    #freight .gsa_list>li:nth-of-type(n+2) {
        margin: 4rem 0 0;
    }

    #freight .gsa_list_box {
        padding: 7% 4% 5%;
    }

    #freight .gsa_list_title {
        margin: 0 auto 1rem;
        font-size: 1.9rem;
    }

    #freight .indent_list {
        font-size: 1.4rem;
    }
}

/* ----------------------
下層　トップメッセージ
---------------------- */
.page-greeting #wrapper {
    padding-bottom: 0;
}

#message .message_catch-1 {
    margin: 0 calc(50% - 50vw) 6rem;
}

#message .message_catch_text {
    font-weight: 700;
    margin: 0 0 7rem;
}

#message .message_catch_text .bg {
    display: inline-block;
    background-color: #eee;
}

#message .message_catch_text-1 {
    margin: 0 0 40px;
    font-size: 36px;
    line-height: 1.25;
}

#message .message_catch_text-1 .bg {
    padding: 0.12em 0.25em 0.13em;
}

#message .message_catch_text-1 p+p {
    margin-top: 0.3em;
}

#message .message_catch_text-2 {
    margin: 0;
    font-size: 18px;
    text-align: right;
    line-height: 1.7;
    letter-spacing: 0.1em;
}

#message .message_catch_text-2 .bg {
    background-color: #fff;
}

#message .message_catch_text-2 .bg {
    padding: 0.3em 0.6em 0.35em;
}

#message .message_catch_text-2 .small {
    font-size: .8em;
}

#message .message_catch_text-2 .big {
    font-size: 1.7em;
}

#message .message_catch_text-2 .small-e {
    font-size: .95em;
}

#message .message_catch_text-2 .big-e {
    font-size: 1.5em;
}

#message .message_catch_text-2 img {
    display: inline-block;
    width: 160px;
    margin-top: .5em;
}

#message .message_catch_text-2 p+p {
    margin-top: .15em;
}

#message .message_catch-1 .message_catch_image {
    text-align: right;
}

#message .message_list {
    display: flex;
    justify-content: space-between;
    padding: 0 0 2rem;
    margin: 0 calc(50% - 50vw);
}

#message .message_list li {
    width: calc(33.3333% - 1px);
    margin: 0;
}

#message .message_list_image {
    width: 100%;
    min-height: 0%;
    text-align: center;
}

#message .message_catch-2 {
    display: flex;
    justify-content: space-between;
    margin: 0 0 14rem calc(50% - 50vw);
}

#message .message_catch-2 .message_catch_image {
    width: 42.3077%;
    min-width: 500px;
}

#message .message_catch-2 .message_lead {
    width: 50.5897%;
    margin: 0 0 0 6%;
    padding: 2% 0 0;
}

#message .message_bottom_image {
    margin: 0 calc(50% - 50vw);
}

@media screen and (max-width: 1600px) {
    #message .message_catch_text-1 {
        margin: 0 0 3.2vw;
        font-size: 2.4vw;
    }

    #message .message_catch_text-2 {
        font-size: 17px;
    }

    #message .message_catch-1 .message_catch_image {
        width: 93%;
        margin-left: auto;
    }
}

@media screen and (max-width: 1280px) {
    #message .message_catch_text-1 {
        font-size: 2.5vw;
        line-height: 1.4;
    }

    #message .message_catch_text-2 img {
        display: inline-block;
        width: 150px;
        margin-top: .5em;
    }
}

@media screen and (max-width: 1023px) {
    #message .message_catch-1 {
        margin: 0 calc(50% - 50vw) 5rem;
    }

    #message .message_catch_text-1 p+p {
        margin-top: 0.35em;
    }

    #message .message_catch_text {
        margin: 0 0 5rem;
    }

    #message .message_catch_text-1 {
        margin: 0 0 calc(3.2vw * 1.1);
        font-size: calc(2.5vw * 1.1);
        line-height: 1.4;
    }

    #message .message_catch_text-2 {
        font-size: 16px;
    }

    #message .message_catch_text-2 img {
        width: 140px;
    }

    #message .message_catch-2 {
        flex-direction: column;
        margin: 0 0 12rem 0;
    }

    #message .message_catch-2 .message_catch_image {
        width: 70%;
        min-height: 0%;
        margin: 0 0 6rem calc(50% - 50vw);
    }

    #message .message_catch-2 .message_lead {
        width: 100%;
        margin: 0;
        padding: 0;
    }
}

@media screen and (max-width: 767px) {
    #message .message_catch-1 {
        margin: 0 calc(50% - 50vw) 4rem;
    }

    #message .message_catch_text {
        margin: 0 0 4rem;
    }

    #message .message_catch_text-1 {
        background-color: #eee;
        margin: 0 0 calc(3.2vw * 1.2);
        padding: 2% 4%;
        font-size: calc(2.5vw * 1.65);
        line-height: 1.7;
    }

    #message .message_catch_text-1 .bg {
        padding: 0;
    }

    #message .message_catch_text-1 p+p {
        margin-top: 0;
    }

    #message .message_catch_text-2 {
        font-size: 10px;
    }

    #message .message_catch_text-2 img {
        width: 100px;
    }

    #message .message_catch-1 .message_catch_image {
        width: 100%;
    }

    #message .message_list {
        padding: 0 0 1rem;
    }

    #message .message_catch-2 {
        flex-direction: column;
        margin: 0 0 5rem 0;
    }

    #message .message_catch-2 .message_catch_image {
        width: 100%;
        margin: 0 0 4rem calc(50% - 50vw);
    }

    #message .message_catch-2 .message_lead {
        width: 100%;
        padding: 0;
    }

    #message .message_bottom_image {
        position: relative;
        margin: 0 calc(50% - 50vw);
        height: 40vw;
    }

    #message .message_bottom_image img {
        position: absolute;
        top: 0;
        bottom: 0;
        left: 50%;
        max-width: none;
        width: auto;
        height: 100%;
        transform: translateX(-50%);
    }
}

/* ----------------------
下層　派遣事業
---------------------- */
#dispatch .dispatch_catch {
    position: relative;
    margin: 0 calc(50% - 50vw) 11rem 0;
}

#dispatch .dispatch_catch_text {
    padding: 9.8947% 0 3.5%;
    font-family: "Montserrat", "Noto Sans JP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "Meiryo UI", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    font-weight: 700;
}

#dispatch .dispatch_catch_text .bg {
    display: inline-block;
    background-color: #fff;
}

#dispatch .dispatch_catch_text .big {
    font-size: 1.1666em;
}

#dispatch .dispatch_catch_text-1 {
    margin: 0 0 44px;
    font-size: 30px;
    line-height: 1.4;
    letter-spacing: 0.1em;
}

#dispatch .dispatch_catch_text-1 .bg {
    padding: 0.4em 0.6em 0.35em;
}

#dispatch .dispatch_catch_text-2 {
    margin: 0 0 28px;
    font-size: 50px;
    line-height: 1.2;
}

#dispatch .dispatch_catch_text-2 .bg {
    padding: 0.12em 0.25em 0.13em;
}

#dispatch .dispatch_catch_text-2 p+p {
    margin-top: 0.15em;
}

#dispatch .dispatch_catch_text-3 {
    font-size: 40px;
    line-height: 1.5;
    letter-spacing: 0.05em;
}

#dispatch .dispatch_catch_text-3 .bg {
    padding: 0.22em 0.37em 0.26em;
}

#dispatch .dispatch_catch_image {
    position: absolute;
    right: 0;
    top: 0;
    bottom: 23px;
    left: 12.1794%;
    text-align: right;
    overflow: hidden;
    z-index: -1;
}

#dispatch .dispatch_catch_image img {
    position: absolute;
    top: 0;
    right: 0;
    max-width: none;
    width: auto;
    height: 100%;
}

#dispatch .dispatch_lead {
    margin: 0 0 9rem;
}

#dispatch .dispatch_number_list {
    display: flex;
    justify-content: center;
    max-width: 1100px;
    margin: 0 auto 12rem;
}

#dispatch .dispatch_number_list li {
    width: 25%;
    margin: 0;
    padding: 0 40px;
}

#dispatch .dispatch_number_list_bg_wrap {
    margin: 0 0 2.5rem;
}

#dispatch .dispatch_number_list_bg {
    position: relative;
    background: #094aa0;
    background: linear-gradient(120deg, #094aa0 20%, #232d61);
    border-radius: 100%;
    padding-top: 100%;
}

#dispatch .dispatch_number_list_bg::before {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background: linear-gradient(125deg, rgba(255, 255, 255, 0) 60%, rgba(255, 255, 255, .05) 60%, rgba(255, 255, 255, 0));
    border-radius: 100%;
}

#dispatch .dispatch_number_list_num {
    position: absolute;
    top: 50%;
    left: 50%;
    color: #fff;
    font-family: "Montserrat", "Noto Sans JP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "Meiryo UI", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    font-size: 65px;
    line-height: 1.1;
    transform: translate(-45%, -50%);
}

#dispatch .dispatch_number_list_num.text {
    top: 49%;
    font-family: "Noto Sans JP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "Meiryo UI", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    font-weight: 700;
    font-size: 50px;
    letter-spacing: .04em;
    white-space: nowrap;
    transform: translate(-50%, -50%);
}

#dispatch .dispatch_number_list_num .bottom {
    margin-left: 0.25em;
    font-size: 0.45em;
}

#dispatch .dispatch_number_list_num .middle {
    margin-left: 0;
    font-size: 0.7em;
    line-height: .75;
    vertical-align: super;
}

#dispatch .dispatch_number_list_description {
    margin: 0 -20px;
}

#dispatch .dispatch_number_list_title {
    color: #013f92;
    text-align: center;
}

#dispatch .dispatch_number_list_text {
    margin: 0;
    text-align: center;
}

#dispatch .dispatch_staff_voice {
    border: 2px solid #d9e5f3;
    max-width: 900px;
    margin: 0 auto 7rem;
    padding: 0 4% 4%;
}

#dispatch .dispatch_staff_voice_image_wrap {
    display: flex;
    justify-content: space-between;
    max-width: 750px;
    margin: 0 auto;
}

#dispatch .dispatch_staff_voice_description {
    margin: 0 0 3rem;
}

#dispatch .dispatch_staff_voice_title {
    position: relative;
    background-color: #d9e5f3;
    margin: -1.2em auto 4rem;
    padding: 0.55em 3em;
    font-weight: 700;
    font-size: 2.4rem;
    text-align: center;
    line-height: 1.65;
}

#dispatch .dispatch_staff_voice_title::before {
    content: '';
    display: block;
    position: absolute;
    top: -6rem;
    right: 160px;
    left: auto;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0 0 6rem 150px;
    border-color: transparent transparent #d9e5f3 transparent;
    transform: skewX(-30deg);
}

#dispatch .dispatch_staff_voice_title span {
    color: #013f92;
    font-weight: 700;
    font-size: 0.8em;
}

#dispatch .dispatch_staff_voice_text {
    display: table;
    margin: 0 auto;
}

#dispatch .dispatch_staff_voice_image {
    width: calc(50% - 2px);
}

#dispatch .dispatch_list {
    display: flex;
    justify-content: space-between;
    position: relative;
    padding: 1rem 0;
    margin: 0;
}

#dispatch .dispatch_list::before {
    content: "";
    display: block;
    position: absolute;
    top: 9rem;
    bottom: 0;
    left: 0;
    right: 0;
    background-image: url(/wp-content/uploads/haken_bgpic.jpg);
    background-repeat: no-repeat;
    background-size: cover;
    margin: 0 calc(50% - 50vw);
    z-index: -1;
}

#dispatch .dispatch_list li {
    width: 31.6666%;
    margin: 0;
}

#dispatch .dispatch_list_item {
    display: flex;
    flex-direction: column-reverse;
    align-items: center;
    height: 100%;
}

#dispatch .dispatch_list_image {
    width: 100%;
    min-height: 0%;
    text-align: center;
}

#dispatch .dispatch_list_box {
    flex-grow: 1;
    display: flex;
    flex-direction: column;
    background-color: #fff;
    box-shadow: 2px 8px 30px rgba(0, 0, 0, 0.1);
    width: 84.2105%;
    margin: -24% auto 0;
    padding: 40px 20px;
    z-index: 1;
}

#dispatch .dispatch_list_title {
    margin: 0 auto 1.2rem;
    font-weight: 700;
    font-size: 1.7rem;
    text-align: center;
    line-height: 1.7;
}

#dispatch .dispatch_list_box .linkBtn {
    margin-top: auto;
}

#dispatch .dispatch_list_box .linkBtn a {
    width: 16rem;
    margin: 0 auto;
}

#dispatch .dispatch_info {
    max-width: 900px;
    margin: 0 auto;
}

@media screen and (max-width: 1600px) {
    #dispatch .dispatch_catch_text-1 {
        margin: 0 0 2.75vw;
        font-size: 1.875vw;
    }

    #dispatch .dispatch_catch_text-2 {
        margin: 0 0 1.75vw;
        font-size: 3.15vw;
    }

    #dispatch .dispatch_catch_text-3 {
        font-size: 2.5vw;
    }

    #dispatch .dispatch_catch_image img {
        right: 50%;
        transform: translateX(50%);
    }
}

@media screen and (max-width: 1280px) {
    #dispatch .dispatch_catch_text-1 {
        margin: 0 0 calc(2.75vw * 1.2);
        font-size: calc(1.875vw * 1.2);
    }

    #dispatch .dispatch_catch_text-2 {
        margin: 0 0 calc(1.75vw * 1.2);
        font-size: calc(3.15vw * 1.2);
    }

    #dispatch .dispatch_catch_text-3 {
        font-size: calc(2.5vw * 1.2);
    }

    #dispatch .dispatch_number_list li {
        padding: 0 30px;
    }

    #dispatch .dispatch_number_list_description {
        margin: 0 -15px;
    }

    #dispatch .dispatch_number_list_num {
        font-size: 5vw;
    }

    #dispatch .dispatch_number_list_num.text {
        font-size: 4vw;
    }
}

@media screen and (max-width: 1023px) {
    #dispatch .dispatch_catch {
        margin: 0 calc(50% - 50vw) 9rem 0;
    }

    #dispatch .dispatch_catch_text {
        padding: 15% 0 2%;
    }

    #dispatch .dispatch_catch_text-1 {
        margin: 0 0 calc(2.75vw * 1.4);
        font-size: calc(1.875vw * 1.4);
    }

    #dispatch .dispatch_catch_text-2 {
        margin: 0 0 calc(1.75vw * 1.4);
        font-size: calc(3.15vw * 1.4);
    }

    #dispatch .dispatch_catch_text-2 p+p {
        margin-top: 0.25em;
    }

    #dispatch .dispatch_catch_text-3 {
        font-size: calc(2.5vw * 1.4);
    }

    #dispatch .dispatch_catch_image {
        bottom: 0;
        left: 12%;
    }

    #dispatch .dispatch_lead {
        margin: 0 0 7rem;
    }

    #dispatch .dispatch_number_list {
        margin: 0 auto 10rem;
    }

    #dispatch .dispatch_number_list li {
        width: 30%;
        padding: 0 3.2%;
    }

    #dispatch .dispatch_number_list-2 li {
        width: 25%;
        padding: 0 2.2%;
    }

    #dispatch .dispatch_number_list_description {
        margin: 0;
    }

    #dispatch .dispatch_number_list_bg_wrap {
        margin: 0 0 2.2rem;
    }

    #dispatch .dispatch_number_list-1 .dispatch_number_list_num {
        font-size: 7vw;
    }

    #dispatch .dispatch_number_list-1 .dispatch_number_list_num.text {
        font-size: 5.6vw;
    }

    #dispatch .dispatch_staff_voice {
        margin: 0 auto 5rem;
    }

    #dispatch .dispatch_staff_voice_description {
        margin: 0 0 2.5rem;
    }

    #dispatch .dispatch_staff_voice_title {
        margin: -1.2em auto 3rem;
        padding: 0.5em 2em;
        font-size: 2.2rem;
        line-height: 1.7;
    }

    #dispatch .dispatch_staff_voice_title::before {
        top: -5rem;
        right: 20%;
        border-width: 0 0 5rem 150px;
    }

    #dispatch .dispatch_list {
        justify-content: center;
        flex-wrap: wrap;
    }

    #dispatch .dispatch_list::before {
        top: 120px;
        bottom: 120px;
    }

    #dispatch .dispatch_list li {
        width: 45%;
        margin: 0 2.5%;
    }

    #dispatch .dispatch_list li:nth-child(3) {
        margin-top: 5%;
    }

    #dispatch .dispatch_list_box {
        width: 85%;
        padding: 9% 8%;
    }
}

@media screen and (max-width: 767px) {
    #dispatch .dispatch_catch {
        margin: 0 calc(50% - 50vw) 7rem 0;
    }

    #dispatch .dispatch_catch_text {
        padding: 55% 0 0;
        transform: translateY(2rem);
    }

    #dispatch .dispatch_catch_text-1 {
        margin: 0 0 calc(2.75vw * 1.8);
        font-size: calc(1.875vw * 1.8);
    }

    #dispatch .dispatch_catch_text-2 {
        margin: 0 0 calc(1.75vw * 1.8);
        font-size: calc(3.15vw * 1.8);
    }

    #dispatch .dispatch_catch_text-2 p+p {
        margin-top: 0.25em;
    }

    #dispatch .dispatch_catch_text-3 {
        font-size: calc(2.5vw * 1.8);
    }

    #dispatch .dispatch_catch_image {
        left: 10%;
    }

    #dispatch .dispatch_catch_image img {
        right: -38%;
        transform: translateX(0);
    }

    #dispatch .dispatch_lead {
        margin: 0 0 5rem;
    }

    #dispatch .dispatch_number_list {
        flex-direction: column;
        justify-content: center;
        max-width: 550px;
        margin: 0 auto 5rem;
    }

    #dispatch .dispatch_number_list-1 {
        margin-bottom: 6rem;
    }

    #dispatch .dispatch_number_list li {
        width: 100%;
        margin: 0;
        padding: 0;
    }

    #dispatch .dispatch_number_list li+li {
        margin-top: 2rem;
    }

    #dispatch .dispatch_number_list .dispatch_number_list_item {
        display: flex;
        align-items: center;
    }

    #dispatch .dispatch_number_list_bg_wrap {
        align-self: flex-start;
        width: 30%;
        margin: 0;
    }

    #dispatch .dispatch_number_list-1 .dispatch_number_list_num,
    #dispatch .dispatch_number_list_num {
        font-size: 7.8vw;
    }

    #dispatch .dispatch_number_list_num.text {
        font-size: 5.8vw;
        line-height: 1.15;
    }

    #dispatch .dispatch_number_list_description {
        width: 63%;
        margin: 0 0 0 7%;
    }

    #dispatch .dispatch_number_list_title {
        text-align: left;
    }

    #dispatch .dispatch_number_list_text {
        text-align: left;
    }

    #dispatch .dispatch_staff_voice {
        margin: 0 auto 3rem;
    }

    #dispatch .dispatch_staff_voice_description {
        margin: 0 0 2rem;
    }

    #dispatch .dispatch_staff_voice_title {
        margin: -1.2em auto 2rem;
        padding: 0.3em 1.5em;
        font-size: 1.8rem;
        line-height: 1.75;
    }

    #dispatch .dispatch_staff_voice_title::before {
        content: none;
    }

    #dispatch .dispatch_list {
        max-width: 380px;
        width: 90%;
        flex-direction: column;
        margin: 0 auto;
    }

    #dispatch .dispatch_list::before {
        top: auto;
        bottom: 0;
        height: 200px;
    }

    #dispatch .dispatch_list li {
        width: 100%;
        margin: 0;
    }

    #dispatch .dispatch_list li:nth-child(n + 2) {
        margin-top: 12%;
    }

    #dispatch .dispatch_list_box {
        width: 85%;
        padding: 9% 8%;
    }

    #dispatch .dispatch_list_title {
        margin: 0 auto 1.5rem;
        font-size: 1.6rem;
    }
}

/* ----------------------
下層　先輩インタビュー
---------------------- */
#interview {
    max-width: 1100px;
    margin: 0 auto;
}

#interview .interview_box {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin: 0 auto 9rem;
}

#interview .interview_box_description {
    width: 45%;
    margin: 0 0 3rem;
    padding: 0;
}

#interview .interview_box_title {
    margin: 0 0 3rem;
    font-family: "Cabin", sans-serif;
    font-weight: 700;
    font-size: 7rem;
    line-height: 1;
}

#interview .interview_box_title .small {
    color: #ddd;
    font-size: 4rem;
}

#interview .interview_box_text {
    border-bottom: 1px solid #194f29;
    padding: 0 0 3rem;
    margin: 0 0 3rem;
    font-weight: 700;
    font-size: 3rem;
    line-height: 1.6;
}

#interview .interview_box_company {
    margin: 0 0 .8rem;
}

#interview .interview_box_name {
    margin: 0;
    font-weight: 700;
    font-size: 2rem;
}

#interview .interview_box_image {
    width: 45%;
}

#interview .interview_box_image img {
    max-width: none;
    width: 100%;
}

#interview .interview_qa_list_wrap,
#interview .interview_flow_list_wrap {
    margin: 0 auto;
    padding: 0 50px;
}

#interview .interview_qa_list_wrap::before,
#interview .interview_flow_list_wrap::before {
    display: block;
    margin: 0 0 6rem -1em;
    padding: 4rem 0 0;
    color: #d9ece4;
    font-style: italic;
    font-family: "Cabin", sans-serif;
    font-size: 80px;
    line-height: 1;
}

#interview .interview_qa_list_wrap::before {
    content: 'Questions and Answers';
}

#interview .interview_flow_list_wrap::before {
    content: 'One day flow';
    margin-bottom: 8rem;
}

#interview .interview_qa_list {
    margin: 0 auto 8rem;
}

#interview .interview_qa_list dt {
    display: flex;
    align-items: flex-start;
    margin: 0 0 1rem;
    font-size: 2.4rem;
    line-height: 1.55;
}

#interview .interview_qa_list dt::before {
    content: 'Q' '. ';
    margin: 0 .2em 0 0;
    color: #194f29;
    font-family: "Cabin", sans-serif;
    font-size: 1.2em;
    letter-spacing: 0.05em;
    line-height: 1.4;
}

#interview .interview_qa_list dd {
    margin: 0 0 4rem;
    padding: 0;
}

#interview .interview_qa_list dd:last-child {
    margin-bottom: 0;
}

#interview .interview_flow_list {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: space-between;
    position: relative;
    margin: 0 auto;
}

#interview .interview_flow_list::after {
    content: '';
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
    left: calc(10rem + 40px);
    background-color: #ddd;
    width: 2px;
}

#interview .interview_flow_list dt {
    flex-shrink: 0;
    position: relative;
    width: 10rem;
    background-color: #d9ece4;
    margin: 0 80px 0 0;
    padding: .2em .5em;
    font-size: 1.8rem;
    line-height: 1.5;
    text-align: center;
}

#interview .interview_flow_list dt::before {
    content: "";
    display: block;
    position: absolute;
    top: calc(50% - 5px);
    left: calc(10rem + 40px - 4px);
    background-color: #194f29;
    border-radius: 100%;
    width: 10px;
    height: 10px;
    z-index: 1;
}

#interview .interview_flow_list dt::after {
    content: '';
    display: block;
    position: absolute;
    top: calc(50% - 5px);
    right: -15px;
    border-style: solid;
    border-width: 5px 0 5px 16px;
    border-color: transparent transparent transparent #d9ece4;
    width: 0;
    height: 0;
}

#interview .interview_flow_list dd {
    width: calc(100% - 10rem - 80px);
    margin: 0 0 3.2rem;
    padding: 0;
}

#interview .interview_flow_list dd:last-child {
    margin-bottom: 0;
}

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

    #interview .interview_qa_list_wrap::before,
    #interview .interview_flow_list_wrap::before {
        margin: 0 0 6rem -50px;
    }
}

@media screen and (max-width: 1023px) {
    #interview .interview_box {
        margin: 0 auto 7rem;
    }

    #interview .interview_box_description {
        width: 46%;
        margin: 0 0 1rem;
    }

    #interview .interview_box_title {
        margin: 0 0 2.5rem;
        font-size: 6rem;
    }

    #interview .interview_box_title .small {
        font-size: 3.2rem;
    }

    #interview .interview_box_text {
        padding: 0 0 2.5rem;
        margin: 0 0 2.5rem;
        font-size: 2.6rem;
    }

    #interview .interview_box_company {
        margin: 0 0 .6rem;
    }

    #interview .interview_box_name {
        font-size: 1.8rem;
    }

    #interview .interview_qa_list_wrap,
    #interview .interview_flow_list_wrap {
        padding: 0 20px;
    }

    #interview .interview_qa_list_wrap::before,
    #interview .interview_flow_list_wrap::before {
        margin: 0 0 5rem calc(-20px - 2%);
        padding: 3rem 0 0;
        font-size: 8.5vw;
    }

    #interview .interview_flow_list_wrap::before {
        margin-bottom: 6rem;
    }

    #interview .interview_qa_list {
        margin: 0 auto 6rem;
    }

    #interview .interview_qa_list dt {
        font-size: 2.2rem;
    }

    #interview .interview_qa_list dd {
        margin: 0 0 3rem;
    }

    #interview .interview_flow_list dd {
        margin: 0 0 3rem;
    }
}

@media screen and (max-width: 767px) {
    #interview .interview_box {
        flex-direction: column-reverse;
        margin: 0 auto 4rem;
    }

    #interview .interview_box_description {
        width: 100%;
        margin: 0;
    }

    #interview .interview_box_title {
        margin: 0 0 1.5rem;
        font-size: 3.5rem;
    }

    #interview .interview_box_title .small {
        font-size: 2.2rem;
    }

    #interview .interview_box_text {
        padding: 0 0 2rem;
        margin: 0 0 2rem;
        font-size: 2rem;
    }

    #interview .interview_box_name {
        font-size: 1.6rem;
    }

    #interview .interview_box_image {
        max-width: 400px;
        width: 90%;
        min-height: 0%;
        margin: 0 0 3rem;
    }

    #interview .interview_qa_list_wrap,
    #interview .interview_flow_list_wrap {
        padding: 0;
    }

    #interview .interview_qa_list_wrap::before,
    #interview .interview_flow_list_wrap::before {
        margin: 0 0 2rem -3%;
        padding: 2rem 0 0;
    }

    #interview .interview_flow_list_wrap::before {
        margin-bottom: 3rem;
    }

    #interview .interview_qa_list {
        margin: 0 auto 3rem;
    }

    #interview .interview_qa_list dt {
        margin: 0 0 .8rem;
        font-size: 1.8rem;
        line-height: 1.8;
    }

    #interview .interview_qa_list dt::before {
        line-height: 1.7;
    }

    #interview .interview_qa_list dd {
        margin: 0 0 2.5rem;
    }

    #interview .interview_flow_list::after {
        content: '';
        display: block;
        position: absolute;
        top: 0;
        bottom: 0;
        left: calc(7rem + 20px);
        background-color: #ddd;
        width: 2px;
    }

    #interview .interview_flow_list dt {
        width: 7rem;
        margin: 0 40px 0 0;
        padding: .3em .5em;
        font-size: 1.5rem;
        text-align: center;
    }

    #interview .interview_flow_list dt::before {
        top: calc(50% - 4px);
        left: calc(7rem + 20px - 3px);
        width: 8px;
        height: 8px;
    }

    #interview .interview_flow_list dt::after {
        top: calc(50% - 4px);
        right: -10px;
        border-width: 4px 0 4px 10px;
    }

    #interview .interview_flow_list dd {
        width: calc(100% - 7rem - 40px);
        margin: 0 0 2rem;
    }
}

/* ----------------------
下層　契約エアライン様ご紹介
---------------------- */
#contract .contract_bg {
    position: relative;
    padding: 10rem 0;
}

#contract .contract_bg::before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background-color: #c1d4e5;
    background-image: url(/struct/wp-content/uploads/logo_bg.jpg);
    background-attachment: fixed;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    margin: 0 calc(50% - 50vw);
    z-index: -1;
}

_::-webkit-full-page-media,
_:future,
:root #contract .contract_bg::before {
    background-attachment: scroll;
}

@media all and (-ms-high-contrast:none) {

    *::-ms-backdrop,
    #contract .contract_bg::before {
        background-attachment: scroll;
    }
}

#contract .title-ej {
    margin: 0 auto 6rem;
    color: #fff;
    text-align: center;
}

#contract .contract_list_box {
    background-color: rgba(255, 255, 255, 0.5);
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
    padding: 7.5%;
}

/* -- ギャラリー -- */
.sub_page .gallery {
    margin: 0;
    padding: 0;
}

.sub_page .gallery-columns-3 {
    display: flex;
    flex-wrap: wrap;
}

.sub_page .gallery-columns-3 .gallery-item {
    position: relative;
    float: none;
    margin: 0 !important;
    padding: 0 !important;
    text-align: center;
    width: 27.6666% !important;
}

.sub_page .gallery-columns-3 .gallery-item:not(:nth-of-type(3n + 1)) {
    margin-left: 8.5% !important;
}

.sub_page .gallery-columns-3 .gallery-item:nth-of-type(n + 4) {
    margin-top: 6.8% !important;
}

.sub_page .gallery-columns-3 .gallery-icon {
    margin: 0;
    padding-bottom: 50%;
    overflow: hidden;
}

.sub_page .gallery-columns-3 .gallery-icon a {
    display: flex;
    align-items: center;
    justify-content: center;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
}

.sub_page .gallery-columns-3 .gallery-icon a[href^="#"] {
    pointer-events: none;
}

#editor-style .sub_page .gallery-columns-3 .gallery-icon a[href^="#"] {
    pointer-events: auto !important;
}

.sub_page .gallery-columns-3 .gallery-icon img {
    position: absolute;
    top: 50%;
    left: 50%;
    max-width: 100%;
    width: auto;
    max-height: 100%;
    transform: translate(-50%, -50%);
}

.sub_page .gallery-columns-3 .gallery br[style] {
    display: none;
}

/* -- エディター用 -- */
.sub_page .wpview {
    margin-bottom: 0;
}

@media screen and (max-width: 1023px) {
    #contract .contract_bg {
        position: relative;
        padding: 8rem 0;
    }

    #contract .contract_list_box {
        padding: 6%;
    }

    #contract .title-ej {
        margin: 0 auto 3rem;
    }
}

@media screen and (max-width: 767px) {
    #contract .contract_bg {
        position: relative;
        padding: 5rem 0;
    }

    #contract .contract_list_box {
        padding: 7% 7.5%;
    }

    #contract .title-ej {
        margin: 0 auto 1.5rem;
    }

    /* -- ギャラリー -- */
    .sub_page .gallery-columns-3 .gallery-item {
        position: relative;
        float: none;
        margin: 0 !important;
        padding: 0 !important;
        text-align: center;
        width: 44.5% !important;
    }

    .sub_page .gallery-columns-3 .gallery-item:not(:nth-of-type(3n + 1)) {
        margin-left: 0% !important;
    }

    .sub_page .gallery-columns-3 .gallery-item:not(:nth-of-type(2n + 1)) {
        margin-left: 11% !important;
    }

    .sub_page .gallery-columns-3 .gallery-item:nth-of-type(n + 3) {
        margin-top: 8% !important;
    }

    .sub_page .gallery-columns-3 .gallery-icon {
        margin: 0;
        padding-bottom: 50%;
        overflow: hidden;
    }

    .sub_page .gallery-columns-3 .gallery-icon a {
        display: flex;
        align-items: center;
        justify-content: center;
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
    }

    .sub_page .gallery-columns-3 .gallery-icon img {
        position: absolute;
        top: 50%;
        left: 50%;
        max-width: 100%;
        width: auto;
        max-height: 100%;
        transform: translate(-50%, -50%);
    }

    .sub_page .gallery-columns-3 .gallery br[style] {
        display: none;
    }
}

/* ----------------------
下層　会社概要
---------------------- */
.bg-parallax:before {
    content: "";
    display: block;
    background-image: url(/struct/wp-content/uploads/parallax_com.jpg);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    background-attachment: fixed;
    height: 31.25vw;
    margin: 0 calc(50% - 50vw) 11rem;
}

@media screen and (max-width: 768px) {
    .bg-parallax:before {
        background-attachment: scroll;
    }
}

@media all and (-ms-high-contrast:none) {
    .bg-parallax:before {
        background-attachment: scroll;
    }
}

.sub_page+.sub_page {
    padding: 11rem 0;
}

.map_flex {
    display: flex;
    justify-content: space-between;
}

.map_flex_item {
    width: 48%;
}

.map_text {
    margin: 2.5rem 0 0;
}

.map_title {
    margin: 0 0 1rem 0;
    font-weight: 700;
    font-size: 2.2rem;
    letter-spacing: 0.03em;
    color: #194f29;
}

.map_address {
    margin: 0;
    color: #666;
    font-size: 1.4rem;
}

.map {
    height: 400px;
}

.map iframe {
    width: 100%;
    height: 100%;
}

/* -- エディター用 -- */
#editor-style .map span {
    width: 100%;
    height: 100%;
}

@media screen and (max-width: 1023px) {
    .map_text {
        margin: 2.2rem 0 0;
    }

    .map_title {
        margin: 0 0 .8rem 0;
        font-size: 1.8rem;
    }

    .map_address {
        font-size: 1.3rem;
    }

    .map {
        height: 28vw;
    }
}

@media screen and (max-width: 767px) {
    .map_flex {
        display: flex;
        flex-direction: column;
    }

    .map_flex_item {
        width: 100%;
    }

    .map_flex_item+.map_flex_item {
        margin-top: 3.5rem;
    }

    .map_text {
        margin: 1.5rem 0 0;
    }

    .map_title {
        margin: 0 0 .7rem 0;
        font-size: 1.8rem;
    }

    .map_address {
        font-size: 1.2rem;
    }

    .map {
        max-height: 300px;
        height: 60vw;
    }

    .sub_page+.sub_page {
        padding: 5rem 0;
    }

    .bg-parallax:before {
        margin-bottom: 5rem;
    }

    .bg-parallax:before::after {
        max-height: 300px;
        height: 45vw;
    }
}

/* ----------------------
下層　改正派遣法に基づくマージン率等の公開について
---------------------- */
#disclosure {
    max-width: 960px;
    margin: 0 auto;
}

#disclosure .content_inner+.content_inner {
    margin-top: 5.5rem;
}

#disclosure h2 {
    margin: 0 0 1.5rem;
    padding: 0;
    font-size: 1.7rem;
    text-align: left;
}

#disclosure h2::before {
    content: none;
}

#disclosure table {
    min-width: 720px;
    table-layout: fixed;
}

#disclosure .formula_table {
    border-collapse: separate;
    border-spacing: 30px 0;
    width: auto;
    margin: 20px auto;
}

#disclosure .formula_table tr {
    border: none;
}

#disclosure .formula_table th::after {
    content: none;
}

#disclosure .formula_table th,
#disclosure .formula_table td {
    padding: 10px 0;
    vertical-align: middle;
    text-align: center;
}

#disclosure ul li {
    margin: 0;
}

#disclosure ul li+li {
    margin-top: 0.5em;
}

/* -- スクロールヒント -- */
.js-scrollable {
    /* padding: 20px 5px; */
}

.scroll-hint-icon {
    height: 90px;
}

/* -- スクロールヒントここまで -- */
@media only screen and (max-width: 767px) {
    #disclosure .content_inner+.content_inner {
        margin-top: 3rem;
    }

    #disclosure h2 {
        margin: 0 0 1rem;
        padding: 0;
        font-size: 1.6rem;
        text-align: left;
    }
}

/* ----------------------
下層　会社案内
---------------------- */
#aboutus .aboutus_list {
    display: flex;
    justify-content: space-between;
    position: relative;
    padding: 0 0 2rem;
    max-width: 1600px;
    width: 90%;
    margin: 0 auto;
}

#aboutus .aboutus_list::before {
    content: "";
    display: block;
    position: absolute;
    top: 9rem;
    bottom: 0;
    left: 0;
    right: 0;
    background-image: url(/wp-content/uploads/haken_bgpic.jpg);
    background-repeat: no-repeat;
    background-size: cover;
    margin: 0 calc(50% - 50vw);
    z-index: -1;
}

#aboutus .aboutus_list li {
    width: 31.6666%;
    margin: 0;
}

#aboutus .aboutus_list_item {
    display: flex;
    flex-direction: column-reverse;
    align-items: center;
    height: 100%;
}

#aboutus .aboutus_list_image {
    width: 100%;
    min-height: 0%;
    text-align: center;
}

#aboutus .aboutus_list_box {
    flex-grow: 1;
    display: flex;
    flex-direction: column;
    background-color: #fff;
    box-shadow: 2px 8px 30px rgba(0, 0, 0, 0.1);
    width: 84.2105%;
    margin: -14% auto 0;
    padding: 40px 20px;
    z-index: 1;
}

#aboutus .aboutus_list_title {
    margin: 0 auto 1.2rem;
    font-weight: 700;
    font-size: 1.7rem;
    text-align: center;
    line-height: 1.7;
}

#aboutus .aboutus_list_box .linkBtn {
    margin-top: auto;
}

#aboutus .aboutus_list_box .linkBtn a {
    width: 16rem;
    margin: 0 auto;
}

@media screen and (max-width: 1023px) {
    #aboutus .aboutus_list {
        justify-content: center;
        flex-wrap: wrap;
        padding: 0 0 2rem;
        margin: 0 auto;
    }

    #aboutus .aboutus_list::before {
        top: 120px;
        bottom: 120px;
    }

    #aboutus .aboutus_list li {
        width: 45%;
        margin: 0 2.5%;
    }

    #aboutus .aboutus_list li:nth-child(3) {
        margin-top: 5%;
    }

    #aboutus .aboutus_list_box {
        width: 85%;
        padding: 9% 8%;
    }
}

@media screen and (max-width: 767px) {
    #aboutus .aboutus_list {
        max-width: 380px;
        flex-direction: column;
        padding: 0 0 1rem;
        margin: 0 auto;
    }

    #aboutus .aboutus_list::before {
        top: auto;
        bottom: 0;
        height: 200px;
    }

    #aboutus .aboutus_list li {
        width: 100%;
        margin: 0;
    }

    #aboutus .aboutus_list li:nth-child(n + 2) {
        margin-top: 12%;
    }

    #aboutus .aboutus_list_box {
        width: 85%;
        padding: 9% 8%;
    }

    #aboutus .aboutus_list_title {
        margin: 0 auto 1.5rem;
        font-size: 1.6rem;
    }
}

/* ----------------------
下層　沿革
---------------------- */
#history .history_table {
    position: relative;
    overflow: hidden;
}

#history .history_table tr {
    border: none;
}

#history .history_table tr.tr-top {
    border-top: 1px solid #a6b9b1;
}

#history .history_table th,
#history .history_table td {
    padding: 10px;
}

#history .history_table th {
    position: relative;
    width: calc(2.6em + 35px);
    background-color: transparent;
    border-right: 2px solid #ddd;
    border-bottom: none;
    padding: 35px 35px 40px 0;
    color: #85bfa7;
    font-weight: 700;
    font-size: 58px;
    line-height: .8;
    vertical-align: top;
    white-space: nowrap;
}

#history .history_table th::after {
    content: "";
    display: block;
    position: absolute;
    top: 59px;
    right: -6px;
    left: auto;
    background-color: #194f29;
    border-radius: 100%;
    width: 9px;
    height: 9px;
    z-index: 1;
}

#history .history_table td:nth-of-type(1) {
    padding-left: 55px;
    color: #194f29;
    font-weight: 700;
    text-align: right;
    white-space: nowrap;
}

#history .history_table th+td,
#history .history_table th+td+td {
    padding-top: 48px;
}

#history .history_table th+td {
    position: relative;
}

#history .history_table th+td::before {
    content: '';
    display: block;
    position: absolute;
    left: 0;
    top: 62px;
    border: 1px dashed #194f29;
    width: 30px;
    height: 0;
}

#history .history_table tr.tr-bottom td {
    padding-bottom: 48px;
}

@media screen and (max-width: 1023px) {
    #history .history_table th {
        padding: 32px 35px 37px 0;
        font-size: 45px;
    }

    #history .history_table th::after {
        top: 52px;
    }

    #history .history_table th+td::before {
        top: 55px;
    }

    #history .history_table th+td,
    #history .history_table th+td+td {
        padding-top: 40px;
    }

    #history .history_table tr.tr-bottom td {
        padding-bottom: 40px;
    }
}

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

    #history .history_table th,
    #history .history_table td {
        padding: 10px 7px;
    }

    #history .history_table th {
        width: calc(2.6em + 15px);
        padding: 25px 15px 28px 0;
        font-size: 24px;
    }

    #history .history_table th::after {
        top: 33px;
        right: -4px;
        width: 7px;
        height: 7px;
    }

    #history .history_table td {
        font-size: 1.4rem;
    }

    #history .history_table td:nth-of-type(1) {
        padding-left: 30px;
    }

    #history .history_table th+td::before {
        top: 35px;
        width: 18px;
    }

    #history .history_table th+td,
    #history .history_table th+td+td {
        padding-top: 23px;
    }

    #history .history_table tr.tr-bottom td {
        padding-bottom: 23px;
    }
}

/* ----------------------
下層　貿易事務とは
---------------------- */
.page-trade-affairs #wrapper {
    padding-bottom: 0;
}

#trade-affairs .trade_lead {
    position: relative;
    background-image: url(/struct/wp-content/uploads/ta_img01-1.jpg);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    min-height: 28.6458vw;
    margin: 0 calc(50% - 50vw);
    padding: 152px 10%;
}

#trade-affairs .trade_lead::before {
    content: '';
    display: block;
    position: absolute;
    top: 0;
    left: calc(50% - 630px);
    width: 864px;
    height: 184px;
    background-image: url(/struct/wp-content/uploads/ta_img01-02.png);
    background-repeat: no-repeat;
    background-size: contain;
}

#trade-affairs .trade_lead_box {
    background-color: rgba(255, 255, 255, .85);
    max-width: 900px;
    margin: 0 auto;
    padding: 80px 2%;
    font-weight: 500;
    font-size: 1.4rem;
    text-align: center;
    line-height: 2.2857;
    letter-spacing: -0.02em;
}

#trade-affairs .trade_lead_box span {
    display: inline-block;
}

#trade-affairs .trade_flow_list {
    display: flex;
    max-width: 1090px;
    margin: 0 auto;
}

#trade-affairs .trade_flow_list li {
    width: 12.844%;
    margin: 0;
}

#trade-affairs .trade_flow_list li:not(:nth-child(6n+1)) {
    margin-left: 4.5872%;
}

#trade-affairs .trade_flow_list_image {
    position: relative;
    margin: 0 0 1.5rem;
    text-align: center;
}

#trade-affairs .trade_flow_list li:not(:nth-child(6n+1)) .trade_flow_list_image::before {
    content: '';
    display: block;
    position: absolute;
    top: calc(50% - 8px);
    left: calc(-21% - 8px);
    width: 17px;
    height: 17px;
    border-top: 4px solid #23614c;
    border-right: 4px solid #23614c;
    transform-origin: center;
    transform: rotate(45deg);
}

#trade-affairs .trade_flow_list_text {
    font-weight: 700;
    text-align: center;
}

#trade-affairs .trade_career_image {
    max-width: 870px;
    margin: 0 auto;
}

#trade-affairs h3 {
    padding-left: 15px;
    border-left: 3px solid #194f29;
    box-sizing: border-box;
}

#trade-affairs p+p.gray_box {
    margin-top: 1.5em;
}

#trade-affairs .gray_box_wrap {
    display: flex;
    align-items: center;
    background-color: #eee;
    height: 100%;
    padding: 4%;
}

#trade-affairs .gray_box_wrap-p5 {
    padding: 6% 8%;
}

#trade-affairs .hyphen_list {
    font-size: 1.5rem;
}

#trade-affairs .gray_box {
    background-color: #eee;
    padding: 2% 3%;
}

#trade-affairs .hyphen_list {
    max-width: 100%;
    column-count: 1;
}

#trade-affairs .hyphen_list li::before {
    width: 10px;
    height: 3px;
}

#trade-affairs .front_recruit {
    margin: 0 calc(50% - 50vw);
}

#trade-affairs .trade_recruit .front_recruit {
    background-image: url(/struct/wp-content/uploads/trade_rec_bg.jpg);
}

@media screen and (max-width: 1400px) {
    #trade-affairs .trade_lead::before {
        top: 152px;
        left: calc(50% - 45vw);
        width: 61.7142vw;
        height: 13.1428vw;
        transform: translateY(-80%);
    }
}

@media screen and (max-width: 1023px) {
    #trade-affairs .trade_lead {
        min-height: 24vw;
        margin: 0 calc(50% - 50vw);
        padding: 8.5714vw 12%;
    }

    #trade-affairs .trade_lead::before {
        top: 8.5714vw;
        left: calc(50% - 45vw);
        width: 61.7142vw;
        height: 13.1428vw;
        transform: translateY(-80%);
    }

    #trade-affairs .trade_lead_box {
        max-width: 680px;
        margin: 0 auto;
        padding: 4.5vw 8%;
    }

    #trade-affairs .trade_flow_list {
        flex-wrap: wrap;
        max-width: 500px;
    }

    #trade-affairs .trade_flow_list li {
        width: 28%;
        margin: 0;
    }

    #trade-affairs .trade_flow_list li:not(:nth-child(6n+1)) {
        margin-left: 0;
    }

    #trade-affairs .trade_flow_list li:not(:nth-child(3n+1)) {
        margin-left: 8%;
    }

    #trade-affairs .trade_flow_list li:nth-child(n+4) {
        margin-top: 8%;
    }

    #trade-affairs .trade_flow_list li:not(:nth-child(6n+1)) .trade_flow_list_image::before {
        content: none;
    }

    #trade-affairs .trade_flow_list li:not(:nth-child(3n+1)) .trade_flow_list_image::before {
        content: '';
        display: block;
        position: absolute;
        top: calc(50% - 8px);
        left: calc(-18% - 8px);
        width: 17px;
        height: 17px;
        border-top: 4px solid #23614c;
        border-right: 4px solid #23614c;
        transform-origin: center;
        transform: rotate(45deg);
    }
}

@media screen and (max-width: 767px) {
    #trade-affairs .trade_lead {
        background: none;
        min-height: 0;
        margin: 0 calc(50% - 50vw);
        padding: 0 25px;
    }

    #trade-affairs .trade_lead::before {
        position: static;
        width: 100vw;
        height: 92.5333vw;
        background-image: url(/struct/wp-content/uploads/ta01_sp.png);
        background-repeat: no-repeat;
        background-size: contain;
        margin: 0 calc(50% - 50vw);
        transform: translateY(0);
    }

    #trade-affairs .trade_lead_box {
        position: relative;
        max-width: 680px;
        margin: -18.6666vw auto 0;
        padding: 6% 8%;
        font-weight: 500;
        font-size: 1.3rem;
        text-align: center;
        line-height: 2.222;
        letter-spacing: -0.02em;
        z-index: 5;
    }

    #trade-affairs .trade_flow_list li {
        width: 28%;
        margin: 0;
    }

    #trade-affairs .trade_flow_list li:not(:nth-child(6n+1)) {
        margin-left: 0;
    }

    #trade-affairs .trade_flow_list li:not(:nth-child(3n+1)) {
        margin-left: 8%;
    }

    #trade-affairs .trade_flow_list li:nth-child(n+4) {
        margin-top: 7%;
    }

    #trade-affairs .trade_flow_list_image {
        margin: 0 0 1rem;
    }

    #trade-affairs .trade_flow_list li:not(:nth-child(3n+1)) .trade_flow_list_image::before {
        top: calc(50% - 5px);
        left: calc(-17% - 5px);
        width: 10px;
        height: 10px;
        border-top: 3px solid #23614c;
        border-right: 3px solid #23614c;
    }

    #trade-affairs .trade_flow_list_text {
        font-size: 1.3rem;
        line-height: 1.5;
    }

    #trade-affairs .gray_box_wrap-p5 {
        padding: 4%;
    }

    #trade-affairs p+p.gray_box {
        margin-top: 1em;
    }

    #trade-affairs .text-box {
        margin-bottom: 2rem;
    }
}

@media screen and (max-width: 359px) {
    #trade-affairs .trade_lead_box {
        text-align: left;
    }

    #trade-affairs .trade_lead_box span {
        display: inline;
    }

    #trade-affairs .trade_lead br[class] {
        display: none !important;
    }
}

/* ----------------------
下層　スタッフ募集の企業様へ
---------------------- */
#to-companies .full-g {
    margin: 0 calc(50% - 50vw);
    width: 100vw;
    padding: 8rem calc(50vw - 50% + 2%);
    background: #eee;
    margin-top: 8rem;
}

#to-companies .w-box {
    background: #fff;
    height: 14rem;
    display: flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    border-left: 4px solid #194f29;
    box-shadow: 2px 8px 30px rgba(0, 0, 0, 0.1);
    padding: 4%;
}

#to-companies .w-box02 {
    background: #fff;
    box-sizing: border-box;
    padding: 4%;
    border: 3px solid #097946;
    margin-top: 5rem;
}

#to-companies .big-text {
    font-size: 2.8rem;
    font-weight: 600;
    letter-spacing: 1px;
    padding-left: 3px;
}

#to-companies h2.bk-green {
    margin: 0 auto calc(3rem + (1vw - 0.38rem) * 5.9829);
    /*--3rem-6.5rem--*/
    padding: .3em 4% .4em;
    font-weight: 700;
    font-size: calc(2.2rem + (1vw - 0.38rem) * 0.5246);
    /*--2.2rem-3rem--*/
    text-align: center;
    line-height: 1.55;
    letter-spacing: 0.03em;
    background: #194f29;
    color: #fff;
}

#to-companies .box-ttl {
    font-size: 2.4rem;
    color: #097946;
    font-weight: 600;
}

#to-companies .kome_list {
    margin-top: 1rem;
}

#to-companies .hyphen_list {
    margin-bottom: calc(3rem + (1vw - 0.38rem) * -1.7094);
    /*--2rem-3rem--*/
    column-count: 1;
}

#to-companies .hyphen_list li {
    margin: 0 0 .5em;
    font-size: calc(1.8rem + (1vw - 0.38rem) * 0.3934);
    /*--1.8rem-2.4rem--*/
    font-weight: 600;
}

#to-companies .hyphen_list li:last-child {
    margin-bottom: 0;
}

#to-companies .hyphen_list li::before {
    width: 14px;
    height: 4px;
}

#to-companies .img-box {
    width: 100%;
    max-width: 640px;
    margin: 0 auto;
}

#to-companies .voice_list {
    margin: 0 auto;
}

#to-companies .voice_list_item_top {
    display: flex;
    flex-direction: row-reverse;
    justify-content: space-between;
    align-items: center;
    margin: 0 0 3rem;
}

#to-companies .voice_list_title_wrap {
    width: calc(95% - 120px);
}

#to-companies .voice_list_icon {
    align-self: flex-start;
    width: 120px;
}

#to-companies .voice_list_name {
    font-weight: 700;
}

#to-companies .voice_list_text {
    line-height: 1.875;
}

@media screen and (max-width: 1023px) {
    #to-companies .big-text {
        padding-left: 0;
    }

    #to-companies .voice_list_item_top {
        margin: 0 0 2.5rem;
    }
}

@media screen and (max-width: 960px) {
    #to-companies .box-ttl {
        font-size: 2.2rem;
    }

    #to-companies .w-box02 {
        width: 100%;
    }
}

@media screen and (max-width: 767px) {
    #to-companies .w-box {
        margin-top: 20px;
        height: 100px;
    }

    #to-companies .big-text {
        font-size: calc(1.8rem + (1vw - 0.38rem) * 0.3419);
        padding-left: 3px;
        /*--1.8rem-2rem--*/
    }

    #to-companies .box-ttl {
        font-size: 2rem;
    }

    #to-companies .text-box {
        margin-bottom: 2rem;
    }

    #to-companies .w-box02 {
        padding: 6%;
    }

    #to-companies .voice_list {
        max-width: 500px;
        margin: 0 auto;
    }

    #to-companies .voice_list_item_top {
        flex-direction: column-reverse;
        justify-content: space-between;
        align-items: center;
        margin: 0 0 1.2rem;
    }

    #to-companies .voice_list_title_wrap {
        width: 100%;
    }

    #to-companies .voice_list_icon {
        align-self: flex-start;
        max-width: 40%;
        width: 120px;
        margin: 0 auto 1.8rem;
    }
}

/* ----------------------
下層　よくあるご質問
---------------------- */
#faq .qa-wrap {
    border-top: 1px solid #194f29;
}

#faq .qa-wrap .question,
#faq .qa-wrap .answer {
    position: relative;
    padding: 20px 20px 20px 80px;
    font-size: calc(1.6rem + (1vw - 0.38rem) * 0.1311);
    /*--1.6rem-1.8rem--*/
}

#faq .qa-wrap .question {
    color: #194f29;
    background: #eee;
}

#faq .qa-wrap .question:before {
    content: "Q";
    display: flex;
    position: absolute;
    width: 36px;
    height: 34px;
    align-items: center;
    justify-content: center;
    background: #194f29;
    color: #fff;
    left: 30px;
    top: 20px;
}

#faq .qa-wrap .answer:before {
    content: "A";
    display: flex;
    position: absolute;
    width: 36px;
    height: 34px;
    align-items: center;
    justify-content: center;
    background: #fff;
    border: 2px solid #194f29;
    color: #194f29;
    left: 30px;
    top: 20px;
}

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

    #faq .qa-wrap .question,
    #faq .qa-wrap .answer {
        padding: 20px 20px 20px 70px;
    }

    #faq .qa-wrap .question:before,
    #faq .qa-wrap .answer:before {
        left: 20px;
    }
}

/* ----------------------
下層　お問い合わせ
---------------------- */
.post table .privacy_cell-1 th,
.post table .privacy_cell-1 td {
    padding: 35px 20px 0;
}

.post table .privacy_cell-2 {
    border-top: none;
}

.post table .privacy_cell-2 th,
.post table .privacy_cell-2 td {
    padding: 35px 20px;
}

#contact,
#entry {
    max-width: 1100px;
    margin: 0 auto;
}

#contact table,
#entry table {
    table-layout: fixed;
    margin: 0 auto 4rem;
}

#contact table th,
#entry table th {
    background-color: transparent;
    width: 30%;
}

#contact table th::after,
#entry table th::after {
    content: none;
}

.contact_privacy {
    border: 1px solid #ddd;
    height: 220px;
    margin: 2rem 0 0;
    padding: 20px 25px;
    overflow-y: scroll;
}

.contact_privacy #privacy {
    max-width: none;
}

.wpcf7-form {
    padding: 0;
}

span.wpcf7-list-item {
    margin: 0 1em 0 0;
}

div.wpcf7 .ajax-loader {
    display: block;
    margin: 8px auto 0;
}

.wpcf7-not-valid-tip {
    margin-top: 5px;
}

#contact .sendBtn,
#entry .sendBtn {
    text-align: center;
}

#contact .sendBtn input[type="submit"],
#entry .sendBtn input[type="submit"] {
    background: #00814a;
    background: linear-gradient(to right, #00814a, #236139);
    border-radius: 100px;
    max-width: 80%;
    width: 190px;
    padding: 2rem 1em;
    font-size: 1.6rem;
    letter-spacing: 0.14em;
    line-height: 1;
    transition: opacity 0.3s ease-in-out;
}

#contact .sendBtn input[type="submit"]:hover,
#entry .sendBtn input[type="submit"]:hover {
    opacity: 0.6;
}

@media screen and (max-width: 767px) {
    #contact table {
        margin: 0 0 3.2rem;
    }
}

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

    .post table .privacy_cell-1 th,
    .post table .privacy_cell-1 td {
        padding: 12px 8px 0;
    }

    .post table .privacy_cell-2 th {
        padding: 10px 8px 4px;
    }

    .post table .privacy_cell-2 td {
        padding: 4px 8px 10px;
    }

    .contact_privacy {
        height: 180px;
        margin: 1.5rem 0 1rem;
        padding: 10px;
        font-size: 1.3rem;
    }
}

/* ----------------------
下層　エントリー
---------------------- */
#entry .flex01 {
    display: flex;
    align-items: center;
    padding: 4px 0;
}

#entry .flex01>span:nth-child(1) {
    flex-shrink: 0;
}

#entry .flex01>span:nth-child(2) {
    flex-grow: 1;
    margin-left: 10px;
}

#entry .flex02 {
    display: flex;
    align-items: center;
    border-bottom: 1px solid #eee;
    margin-bottom: 6px;
    padding-bottom: 2px;
}

#entry .flex02>span:nth-child(1) {
    flex-shrink: 0;
    width: 150px;
}

@media screen and (max-width: 640px) {
    #entry .flex02 {
        align-items: flex-start;
    }

    #entry .flex02>span:nth-child(1) {
        width: 140px;
        padding-right: 15px;
        margin: 5px 0;
    }
}

/* ----------------------
下層　プライバシーポリシー
---------------------- */
#privacy {
    max-width: 960px;
    margin: 0 auto;
}

#privacy .content_inner+.content_inner {
    margin-top: 5.5rem;
}

#privacy h2 {
    margin: 0 0 2rem;
    padding: 0;
    font-size: 2.2rem;
    text-align: left;
}

#privacy h2::before {
    content: none;
}

#privacy ol {
    margin: 0;
}

#privacy ol li {
    list-style: decimal;
    list-style-position: inside;
    padding-left: 1.2em;
    text-indent: -1.2em;
}

@media only screen and (max-width: 767px) {
    #privacy .content_inner+.content_inner {
        margin-top: 3rem;
    }

    #privacy h2 {
        margin: 0 0 1rem;
        padding: 0;
        font-size: 1.8rem;
        text-align: left;
    }
}

/* ----------------------
下層　サイトマップ
---------------------- */
.post ul#sitemap_list,
.post ul.sitemap_list {
    max-width: 960px;
    margin: 0 auto;
}

.post ul#sitemap_list br,
.post ul.sitemap_list br {
    display: none;
}

.post ul#sitemap_list li,
.post ul.sitemap_list li {
    position: relative;
    margin: 0 0 1em;
    padding: 0 0 0 1.2em;
    text-indent: -1.2em;
}

.post ul#sitemap_list li::before,
.post ul.sitemap_list li::before {
    content: "・ ";
    display: inline;
    background: none;
    width: auto;
    height: auto;
    color: #194f29;
    font-weight: bold;
}

.post ul#sitemap_list ul.children,
.post ul.sitemap_list ul.children {
    margin: 1em 0 0 1em;
}

/* ----------------------
投稿一覧
---------------------- */
.post .front_alinkBtn,
.front_alinkBtn {
    margin-top: 4rem;
}

.post .front_alinkBtn a,
.front_alinkBtn a {
    margin: 0 auto;
}

.listTitle .frontlist a {
    background: none;
    color: inherit;
    transition: color 0.5s;
}

.listTitle .frontlist a:hover {
    color: #236139;
}

.postlist a {
    transition: 0.5s opacity;
}

.postlist a:hover {
    color: inherit;
    opacity: 0.7;
}

ul.post,
.post2b,
.post4b,
.postlist {
    margin: 0 auto;
    padding: 0;
    font-size: 1.5rem;
}

ul.post li,
.post2b li,
.post4b li,
.postlist li {
    font-size: inherit;
}

.ul.post .time,
.post2b .time,
.post4b .time,
.postlist .time {
    font-size: 100%;
}

.postlist .ttls,
.postlist .date {
    font-size: 100%;
}

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

    .post .front_alinkBtn,
    .front_alinkBtn {
        margin-top: 3rem;
    }

    ul.post,
    .post2b,
    .post4b,
    .postlist {
        width: 100%;
        margin: 0 auto;
        padding: 0;
        font-size: 1.4rem;
    }
}

/* -- postlist -- */
.postlist {
    background: none;
    border: none;
    margin: 0;
}

.postlist li {
    border-bottom: 1px dotted #ccc;
    line-height: 1.5;
    margin: 0;
    padding: 20px 0;
}

.postlist li:first-child {
    border-top: 1px dotted #ccc;
}

@media only screen and (max-width: 767px) {
    .postlist li {
        padding: 16px 0;
    }
}

/* -- post_text -- */
.postlist .post_text {
    display: flex;
    align-items: center;
    width: 100%;
    margin: 0;
    padding: 0;
}

ul.post .post_text {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    margin: 0;
}

.post4b_text,
.post2b_text {
    display: flex;
    flex-direction: column;
}

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

    .post4b_text70,
    .post2b_text70 {
        width: 66%;
        margin-right: 0;
    }
}

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

    .post4b_text70,
    .post2b_text70 {
        margin-right: 0;
    }
}

@media only screen and (max-width: 767px) {
    .postlist .post_text {
        flex-wrap: wrap;
    }
}

@media only screen and (max-width: 640px) {
    #content ul.post .post_text {
        width: 100%;
    }

    #content .post4b_text70,
    #content .post2b_text70 {
        width: 65%;
        margin: 0;
    }
}

/* -- cat-loop bottom-loop -- */
h2.top-loop,
h2.bottom-loop,
h2.cat-loop {
    width: 100%;
    margin: 0 0 0.8rem;
    padding: 0;
    font-size: 1.5rem;
    text-overflow: clip;
    line-height: 1.6;
    white-space: normal;
    font-weight: normal;
}

h2.top-loop a,
h2.bottom-loop a,
h2.cat-loop a {
    font-size: inherit;
    letter-spacing: inherit;
    line-height: inherit;
    transition: opacity 0.3s;
}

h2.top-loop a:hover,
h2.bottom-loop a:hover,
h2.cat-loop a:hover {
    opacity: 0.6;
}

.post4b h2.top-loop,
.post4b h2.bottom-loop,
.post4b h2.cat-loop,
.post2b h2.top-loop,
.post2b h2.bottom-loop,
.post2b h2.cat-loop {
    order: 2;
}

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

    h2.top-loop,
    h2.bottom-loop,
    h2.cat-loop {
        font-size: 1.6rem;
    }
}

/* -- time -- */
ul.post .time,
.postlist .time,
.post2b .time,
.post4b .time {
    max-width: 100%;
    background: none;
    border-radius: 0;
    margin: 0 0 1.2rem;
    padding: 0;
    color: #999;
    font-size: 1.2rem;
    line-height: 1.5;
    letter-spacing: 0.01em;
}

.postlist .time {
    margin: 0 30px 0 0;
    white-space: nowrap;
    order: 2;
}

.postlist .time a {
    display: inline-block;
    background-color: #236139;
    width: 82px;
    padding: 3px 18px 4px;
    font-weight: 700;
    font-size: 1.1rem;
    text-align: center;
    text-decoration: none !important;
}

.postlist .time a:hover {
    color: #fff;
    opacity: 1;
}

ul.post .time {
    display: inline-block;
}

.post2b .time,
.post4b .time {
    order: 1;
}

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

    .post2b .time,
    .post4b .time {
        margin-bottom: 0.8rem;
    }
}

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

    .post .time,
    .postlist .time,
    .post2b .time,
    .post4b .time {
        margin: 0 0 1rem;
        font-size: 1.2rem;
    }

    .postlist .time {
        margin: 0;
    }
}

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

    ul.post .time,
    .post2b .time,
    .post4b .time {
        margin: -5px 0 0;
    }
}

/* -- cat -- */
ul.post .cat,
.post2b .cat,
.post4b .cat {
    margin: 0 0 0 10px;
}

ul.post .cat a,
.post2b .cat a,
.post4b .cat a {
    display: inline-block;
    background-color: #236139;
    width: 82px;
    padding: 3px 18px 4px;
    font-weight: 700;
    font-size: 1.1rem;
    text-align: center;
}

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

    ul.post .cat a,
    .post2b .cat a,
    .post4b .cat a {
        background-color: #236139;
        width: 72px;
        margin: 5px 0;
        padding: 2px 14px 3px;
        font-size: 1rem;
    }
}

/* -- .post_link -- */
.post_link,
.post2b_link,
.post4b_link {
    display: none;
}

/* -- postlistのみ -- */
/* -- date -- */
.postlist .date {
    margin: 0 30px 0 0;
    padding: 0;
    order: 1;
}

@media only screen and (max-width: 767px) {
    .postlist .date {
        margin: 0 10px 0 0;
    }
}

/* -- ttl -- */
.postlist .ttls {
    margin: 0;
    padding: 0;
    overflow: hidden;
    white-space: inherit;
    text-overflow: inherit;
    order: 3;
}

.postlist .ttls a {
    color: inherit;
    text-decoration: none !important;
}

@media only screen and (max-width: 767px) {
    .postlist .ttls {
        display: block;
        width: 100%;
        margin: 1rem 0 0 !important;
    }
}

/* -- postlistのみ 終わり -- */
/* -- post_img -- */
ul.post .post_img {
    position: relative;
    height: 0;
    min-height: 0%;
    padding-top: 22.0171%;
    overflow: hidden;
    z-index: 1;
}

ul.post .post_img img {
    position: absolute;
    top: 50%;
    left: 50%;
    width: auto;
    height: 100%;
    transform: translate(-50%, -50%);
}

.post4b .post4b_img,
.post2b .post2b_img {
    position: relative;
    max-width: none;
    height: 0;
    min-height: 0%;
    margin-bottom: 2.5rem;
    padding-top: 63.253%;
    overflow: hidden;
    z-index: 1;
}

.post4b .post4b_img img,
.post2b .post2b_img img {
    position: absolute;
    top: 50%;
    left: 50%;
    max-width: none;
    width: 100%;
    height: auto;
    transform: translate(-50%, -50%);
}

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

    .post4b .post4b_img,
    .post2b .post2b_img {
        width: 31%;
        margin-bottom: 1rem;
        padding-top: 22.0171%;
    }
}

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

    .post4b .post4b_img,
    .post2b .post2b_img {
        margin-bottom: 1rem;
        padding-top: 22.0171%;
    }
}

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

    #content ul.post .post_img,
    #content .post4b_img,
    #content .post2b_img {
        max-width: none;
        float: none;
        width: 100%;
        min-height: 0%;
        margin: 0 auto 1rem;
        padding-top: 70.8222%;
    }

    #content ul.post .post_img img {
        max-width: none;
    }

    #content .post4b .post4b_img,
    #content .post2b .post2b_img {
        width: 31%;
        margin: 0 0 1rem;
        padding-top: 22.0171%;
    }
}

/* -- post_contents -- */
li .post_contents {
    max-width: 100%;
    margin: 0 0 3rem;
    padding: 0;
    font-size: 1.3rem;
    line-height: 1.923;
}

li .post4b_contents,
li .post2b_contents {
    max-width: 100%;
    margin-bottom: 0;
    font-size: 1.3rem;
    line-height: 1.923;
    order: 3;
    display: -webkit-box;
    overflow: hidden;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
}

@media only screen and (max-width: 640px) {
    li .post_contents {
        margin: 0 0 2rem;
    }

    li .post4b_contents,
    li .post2b_contents {
        display: none;
    }
}

/* -- ul.post -- */
ul.post li {
    display: flex;
    justify-content: space-between;
    margin-bottom: 5%;
}

ul.post li.clearfix:after {
    content: none;
}

@media only screen and (max-width: 640px) {
    ul.post li {
        flex-direction: column;
        margin-bottom: 8%;
    }
}

/* -- 2b -- */
.post2b {
    display: flex;
    flex-wrap: wrap;
}

.post2b li {
    display: flex;
    flex-direction: column;
    border: none !important;
    margin: 0 0 4% 3%;
    padding: 0 0 0 0;
    line-height: inherit;
    width: 48.5%;
}

.post2b li:nth-child(2n + 1) {
    margin-left: 0;
}

.post2b li.clearfix:after {
    content: none;
}

@media only screen and (max-width: 799px) {
    .post2b li {
        flex-direction: row;
        justify-content: space-between;
        width: 100%;
        margin-bottom: 5%;
        margin-left: 0;
    }
}

@media only screen and (max-width: 640px) {
    .post2b li {
        flex-direction: column;
        justify-content: flex-start;
        margin-bottom: 8%;
    }
}

/* -- 4b 3つに変更 -- */
.post4b {
    display: flex;
    flex-wrap: wrap;
    padding: 0;
}

.post4b li {
    display: flex;
    flex-direction: column;
    border: none !important;
    margin: 0 0 0 5.4563%;
    padding: 0 0 0 0;
    line-height: inherit;
    width: 29.6958%;
}

.post4b li:nth-child(3n + 1) {
    margin-left: 0;
}

.post4b li:nth-child(n + 4) {
    margin-top: 5%;
}

.post4b li.clearfix:after {
    content: none;
}

@media only screen and (max-width: 959px) {
    .post4b li {
        flex-direction: row;
        width: 100%;
        margin: 0;
    }

    .post4b li:nth-child(4n + 1) {
        margin-left: 0;
    }

    .post4b li:nth-child(n + 2) {
        margin-top: 5%;
    }
}

@media only screen and (max-width: 799px) {
    .post4b li {
        flex-direction: row;
        width: 100%;
        margin: 0;
    }

    .post4b li:nth-child(4n + 1) {
        margin-left: 0;
    }

    .post4b li:nth-child(n + 2) {
        margin-top: 5%;
    }
}

@media only screen and (max-width: 640px) {
    .post4b li {
        flex-direction: row;
        justify-content: space-between;
        width: 100%;
        margin: 0;
    }

    .post4b li:nth-child(4n + 1) {
        margin-left: 0;
    }

    .post4b li:nth-child(n + 2) {
        margin-top: 5%;
    }
}

/* -- pagenav dateLabel -- */
.dateLabel {
    margin: 4rem 0 6rem;
}

.pagenav {
    margin: 8rem 0 0;
}

.pagenav a {
    transition: opacity 0.5s;
}

.pagenav a:hover {
    opacity: 0.7;
}

@media only screen and (max-width: 767px) {
    .dateLabel {
        margin: 1.5rem 0 3rem;
    }

    .pagenav {
        margin: 4rem 0 0;
    }
}

/* ----------------------
パンくず
---------------------- */
#breadcrumb {
    position: relative;
    max-width: 1200px;
    width: 90%;
    margin: 0 auto;
    padding: 18px 0;
}

#breadcrumb::before {
    content: "";
    display: block;
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    background-color: #f5f5f5;
    max-width: 1300px;
    width: 90vw;
    margin: 0 calc(50% - 50vw);
    z-index: -1;
}

#breadcrumb br {
    display: none;
}

#breadcrumb ul {
    max-width: 840px;
    width: 100%;
    margin: 0;
    padding: 0;
    overflow: hidden;
}

#breadcrumb ul li {
    font-size: 1.1rem;
    line-height: 1.5;
    letter-spacing: normal;
    color: #666;
}

#breadcrumb ul li a {
    color: inherit;
}

#breadcrumb ul li:first-child {
    margin-left: 0;
}

ul li span.en {
    display: none;
}

@media screen and (max-width: 1023px) {
    #breadcrumb {
        padding: 14px 0;
    }

    #breadcrumb ul {
        max-width: none;
        width: 80vw;
        margin: 0;
        padding: 0;
        overflow: hidden;
    }
}

@media screen and (max-width: 767px) {
    #breadcrumb {
        padding: 10px 0;
    }

    #breadcrumb::before {
        width: 95vw;
    }

    #breadcrumb ul {
        width: 85vw;
    }

    #breadcrumb ul li {
        font-size: 1rem;
    }
}

/* ----------------------
ハンバーガーメニュー調整
---------------------- */
nav#mainNav a.menu {
    border: 1px solid #ddd;
}

nav#mainNav a#menu span {
    font-family: "Cabin", sans-serif;
    color: #111;
    margin-top: -40px;
}

.spmenu #menu span,
.spmenu #menu span:before,
.spmenu #menu span:after {
    border-radius: 0;
}

nav#mainNav a.menu:before {
    font-family: "Font Awesome 5 Brands", "Font Awesome 5 Free";
    color: #111;
}

.spmenu #menu p {
    bottom: -2px;
    font-size: 10px;
    letter-spacing: normal;
}

.mobile #header .logo .spmenu {
    background: none;
}

@media screen and (min-width: 1024px) {
    .spmenu {
        display: none;
    }
}

@media (max-width: 1023px) {
    .mobile nav#mainNav .panel>ul {
        overflow-y: scroll;
        max-height: calc(100vh - 85px - 64px);
    }
}

/* ----------------------
トップへ戻る調整
---------------------- */
#scrollUp {
    bottom: 47px !important;
    width: 55px;
    height: 55px;
    line-height: 49px;
    opacity: 1 !important;
    transition: opacity 0.2s ease-in-out;
}

.icon-up-open:before {
    font-family: "Font Awesome 5 Brands", "Font Awesome 5 Free";
    font-weight: 900;
    /* content: "f062"; */
    font-size: 20px;
    /* -webkit-font-smoothing: antialiased;
  -webkit-text-stroke-color: #444;
  -webkit-text-stroke-width: 1px; */
    /* バージョンアップ後文字化けの為修正 */
    content: "\f062";
}

#scrollUp:hover {
    opacity: 0.7 !important;
}

@media only screen and (max-width: 767px) {
    #scrollUp {
        bottom: 87px !important;
        width: 40px;
        height: 40px;
        line-height: 35px;
    }
}

/* ----------------------
header
---------------------- */
/* -- PC・SP共通 -- */
.bg .inner {
    width: auto;
}

#header {
    z-index: 9999;
}

/*#header .header_language {
	pointer-events: none !important;
}*/
@media screen and (min-width: 1024px) {

    /* -- ヘッダー -- */
    #header {
        width: 100%;
        position: static;
        margin: auto;
        overflow: visible;
    }

    .home #header {
        position: absolute;
    }

    #header .inner,
    #header-layout,
    #header .logo,
    #header .sticky-logo,
    #header .logo a,
    #header .header__nav-contact,
    nav#mainNav,
    #mainNav .inner,
    nav div.panel,
    nav#mainNav ul,
    nav#mainNav ul li,
    nav#mainNav ul li a,
    #header ul.header__contact,
    #header ul.header__contact li,
    #header ul.header__contact li a {
        height: 100%;
        float: none;
    }

    #header .inner {
        width: 100%;
    }

    #header>.inner {
        background: rgba(255, 255, 255, 0.4);
    }

    #header-layout {
        width: 100%;
        max-width: none;
        display: flex;
        flex-direction: row;
        align-items: center;
        justify-content: space-between;
        padding: 20px;
    }

    /* -- ロゴ -- */
    #header .logo {
        display: block;
        line-height: 0;
        padding: 0;
    }

    #header .logo a {
        display: flex;
        align-items: center;
    }

    #header .logo img {
        width: auto;
        height: auto;
        max-width: 100% !important;
        max-height: 40px !important;
    }

    .mobile #header .logo {
        display: flex;
        align-items: center;
    }

    body.mobile #header .logo .mark {
        height: auto;
    }

    /* -- スティッキーロゴ -- */
    /* -- グローバルナビ -- */
    nav#mainNav {
        background: none;
        height: auto;
        margin: 0 30px 0 0;
    }

    nav#mainNav ul,
    #header .header__nav-contact {
        display: flex;
        flex-direction: row;
    }

    nav#mainNav ul li {
        position: relative;
        margin: 0 0 0 20px;
        z-index: 5;
    }

    nav#mainNav ul li br {
        display: none;
    }

    nav#mainNav ul li a {
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        font-weight: 700;
        font-size: 1.4rem;
        margin: 0;
        padding: 5px;
    }

    nav#mainNav ul li a b {
        font-weight: 700;
    }

    nav#mainNav ul ul.sub-menu {
        height: auto;
        padding: 20px 0 0;
        left: 50% !important;
        font-size: 500px;
        transform: translateX(-50%);
        z-index: -1;
    }

    nav#mainNav ul li:hover ul.sub-menu {
        top: 100%;
    }

    nav#mainNav ul li li a,
    nav#mainNav ul li.current-menu-item li a,
    nav#mainNav ul li.current-menu-ancestor li a,
    nav#mainNav ul li li.current-menu-item li a {
        background: rgba(255, 255, 255, 0.7);
    }

    nav#mainNav ul li li a:hover,
    nav#mainNav ul li li.current-menu-item a,
    nav#mainNav ul li li.current-menu-item li a:hover,
    nav#mainNav ul li.current-menu-item li a:hover,
    nav#mainNav ul li.current-menu-ancestor li.current-menu-item a,
    nav#mainNav ul li.current-menu-ancestor li a:hover {
        background: rgba(238, 238, 238, 0.7);
    }

    nav#mainNav ul li ul.sub-menu li a,
    nav#mainNav ul li ul.sub-menu li a:hover,
    nav#mainNav ul li.current-menu-item ul.sub-menu li a,
    nav#mainNav ul li ul.sub-menu li.current-menu-item a {
        border-right: 1px solid rgba(221, 221, 221, 0.7);
        border-left: 1px solid rgba(221, 221, 221, 0.7);
        padding: 15px;
    }

    nav#mainNav ul li ul.sub-menu li:first-child a {
        border-top: 1px solid rgba(238, 238, 238, 0.7);
    }

    nav#mainNav ul li ul.sub-menu li:last-child a {
        border-bottom: 1px solid rgba(221, 221, 221, 0.7);
    }

    /* -- 翻訳 -- */
    #header ul.header__contact {
        display: flex;
        flex-direction: row;
        align-items: center;
    }

    #header .header_language {
        display: table;
        position: relative;
    }

    #header .header_language>div {
        display: flex;
        align-items: center;
    }

    #header .header_language label {
        border: 1px solid #111;
        padding: 12px 23px;
        font-family: "Cabin", sans-serif;
        font-size: 1.3rem;
        line-height: 1;
        cursor: pointer;
    }

    #header .header_language label::before {
        font-family: "Font Awesome 5 Brands", "Font Awesome 5 Free";
        font-weight: 900;
        /* content: 'f0ac'; */
        display: inline-block;
        margin: 0 6px 0 0;
        /* バージョンアップ後文字化けの為修正 */
        content: "\f0ac";
    }

    #header .header_language input#show-translator {
        display: none;
    }

    #header .translator_box {
        display: none;
        position: absolute;
        right: 0;
        bottom: -15px;
        background: #ddd;
        border-radius: 5px;
        min-width: calc(48px + 8.4rem);
        padding: 10px 20px;
        transform: translateY(100%);
        z-index: 5;
    }

    #header .translator_box::before {
        content: '';
        position: absolute;
        border-width: 0 10px 12px 10px;
        border-color: transparent transparent #ddd transparent;
        border-style: solid;
        top: -11px;
        left: calc(50% - 10px);
        z-index: 5;
    }

    #header .header_language input#show-translator:checked+.translator_box {
        display: block;
    }

    /*#header .header_language:hover .translator_box{
		display: block;
	}*/
    #header .bogo-language-switcher li {
        font-size: 1.4rem;
    }

    #header .bogo-language-switcher li+li {
        margin-top: .2em;
    }

    #header .bogo-language-switcher li span {
        margin-right: 5px;
    }

    .mobile #header .header_language label {
        border: 1px solid #111;
        margin: 0 0 0 30px;
        padding: 10px;
        line-height: 1;
        cursor: pointer;
    }

    .mobile #header .header_language label::before {
        font-family: "Font Awesome 5 Brands", "Font Awesome 5 Free";
        font-weight: 900;
        /* content: "f0ac"; */
        display: inline-block;
        margin: 0;
        font-size: 18px;
        /* バージョンアップ後文字化けの為修正 */
        content: "\f0ac";
    }

    /* -- スティッキーヘッダー -- */
    .sticky-header .site-header {
        z-index: 9999;
    }

    .sticky-header #header>.inner {
        height: auto;
        background: rgba(255, 255, 255, 0.7);
        border-bottom: 1px solid #ddd;
    }

    .sticky-header nav#mainNav {
        background: none;
    }
}

/* -- レスポンシブ -- */
@media screen and (min-width: 1024px) and (max-width: 1200px) {

    /* -- ロゴ -- */
    #header .logo img {
        width: auto;
        height: auto;
        max-width: 100% !important;
        max-height: 25px !important;
    }

    nav#mainNav ul li {
        margin: 0 0 0 15px;
    }
}

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

    #header h1,
    #header .description,
    #header-upper h1,
    #header-upper .description {
        display: block;
        float: none;
        text-align: center;
        padding: 20px 0 10px;
    }

    #header .inner {
        width: 100%;
    }

    #header-layout {
        padding: 0;
    }

    #header .logo {
        display: block;
        text-align: center;
        margin: 20px auto;
        padding: 0;
    }

    #header .logo img {
        max-height: 30px !important;
    }

    .mobile #header .logo .mark {
        width: calc(100% - 100px);
        padding: 12px 20px 12px 12px;
        text-align: left;
    }

    nav#mainNav ul li a,
    nav#mainNav ul li.current-menu-item li a {
        padding: 12px 10px;
    }

    /* -- レスポンシブ__ヘッダー -- */
    .mobile #header {
        background: rgba(255, 255, 255, 0.4);
        z-index: 9999;
    }

    .mobile.sticky-header #header {
        background: rgba(255, 255, 255, 0.7);
    }

    /* -- .mobileではない時の1023px以下 -- */
    body:not(.mobile) .header__nav-contact {
        display: flex;
        flex-direction: column;
        align-items: center;
    }

    body:not(.mobile) .header_language {
        order: 1;
        margin: 0 auto 15px;
    }

    body:not(.mobile) nav#mainNav {
        width: 100%;
        order: 2;
    }

    /* -- 翻訳 -- */
    #header {
        overflow: visible;
    }

    #header ul.header__contact {
        display: flex;
        flex-direction: row;
        align-items: center;
    }

    #header .header_language {
        display: table-cell !important;
        position: relative;
        border: none;
        height: 60px;
        width: 50px;
        margin: 0;
        vertical-align: middle;
        text-align: center;
        line-height: 1;
    }

    #header .header_language>div {
        display: flex;
        align-items: center;
        justify-content: center;
    }

    #header .header_language label {
        padding: 10px 7px;
        line-height: 1;
        cursor: pointer;
    }

    #header .header_language label::before {
        font-family: "Font Awesome 5 Brands", "Font Awesome 5 Free";
        font-weight: 900;
        /* content: "f0ac"; */
        display: inline-block;
        margin: 0;
        font-size: 24px;
        /* バージョンアップ後文字化けの為修正 */
        content: "\f0ac";
    }

    #header .header_language input#show-translator {
        display: none;
    }

    #header .translator_box {
        display: none;
        position: absolute;
        right: -10px;
        bottom: -15px;
        background: #ddd;
        border-radius: 5px;
        max-width: 95vw;
        width: 120px;
        min-width: 0;
        padding: 15px 15px;
        transform: translateY(100%);
        z-index: 5;
    }

    #header .translator_box::before {
        content: '';
        position: absolute;
        border-width: 0 10px 12px 10px;
        border-color: transparent transparent #ddd transparent;
        border-style: solid;
        top: -11px;
        left: auto;
        right: 25px;
        z-index: 5;
    }

    #header .header_language input#show-translator:checked+.translator_box {
        display: block;
    }

    #header .bogo-language-switcher {
        padding: 0;
    }

    #header .bogo-language-switcher li {
        font-size: 1.4rem;
        text-align: left;
    }

    #header .bogo-language-switcher li+li {
        margin-top: .8em;
    }

    #header .bogo-language-switcher li span {
        margin-right: 5px;
    }

    body:not(.mobile) #header .header_language {
        display: block;
        width: auto;
        height: auto;
        margin-bottom: 20px;
    }

    body:not(.mobile) #header .header_language label {
        display: flex;
        border: 1px solid #111;
        padding: 12px 23px;
        font-family: "Cabin", sans-serif;
        font-size: 1.3rem;
        line-height: 1;
        cursor: pointer;
    }

    body:not(.mobile) #header .header_language label::before {
        font-family: "Font Awesome 5 Brands", "Font Awesome 5 Free";
        font-weight: 900;
        font-size: 1.3rem;
        /* content: "f0ac"; */
        display: inline-block;
        margin: 0 6px 0 0;
        /* バージョンアップ後文字化けの為修正 */
        content: "\f0ac";
    }

    body:not(.mobile) #header .translator_box {
        min-width: calc(48px + 8.4rem);
        right: 0;
    }

    body:not(.mobile) #header .translator_box::before {
        content: '';
        position: absolute;
        right: auto;
        left: calc(50% - 10px);
    }
}

/* ----------------------
footer
---------------------- */
/* -- reset -- */
#footer {
    padding: 0;
}

#footer ul {
    padding: 0;
    font-size: 100%;
}

#footer ul li {
    margin: 0;
    padding: 0;
}

#footer ul li::before {
    content: none;
}

#footer ul li:last-child::before {
    content: none;
}

/* -- reset終わり -- */
#footer .footer_top_inner {
    max-width: 1160px;
    width: 90%;
    margin: 0 auto;
    padding: 7.2rem 0 6.8rem;
}

#footer .footer_flex {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

#footer #footer_logo {
    max-width: 462px;
    margin: 2rem 40px 2rem 0;
}

#footer #footer_logo img {
    max-width: 462px;
}

#footer .footer_right {
    display: flex;
    align-items: center;
}

#footer .footnav {
    margin: 2rem auto;
    float: none;
}

#footer .footnav ul {
    display: flex;
    flex-wrap: wrap;
    margin: 0 18px 0 0;
}

#footer .footnav ul li {
    position: relative;
    margin: 0;
    padding: 6px;
    font-weight: 700;
    font-size: 1.2rem;
}

footer .footnav ul li+li {
    margin-left: -1px;
}

#footer .footnav ul li::after {
    content: "";
    display: block;
    position: absolute;
    right: 0;
    top: 50%;
    bottom: 0;
    background: #111;
    width: 1px;
    height: calc(1.4rem * 0.9);
    transform: rotate(10deg) translateY(-50%);
    transform-origin: center;
}

#footer .footnav ul li:last-child:after {
    content: none;
}

#footer .footnav ul li a {
    display: block;
    padding: 0 6px;
    overflow: hidden;
    text-decoration: none;
}

#footer .footnav ul li a:hover {
    text-decoration: underline;
}

#footer .footer_contact a {
    display: flex;
    justify-content: center;
    align-items: center;
}

#footer .footer_contact a::before {
    /* content: "f0e0"; */
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    display: block;
    margin: 0 5px 0 0;
    font-size: 1.4rem;
    line-height: 1;
    transform: translateY(0.11em);
    /* バージョンアップ後文字化けの為修正 */
    content: "\f0e0";
}

#copyright {
    padding: 3.5rem 5%;
    font-size: 1.1rem;
    line-height: 1.5;
    letter-spacing: 0.05em;
}

@media screen and (max-width: 1200px) {
    #footer .footer_top_inner {
        padding: 6.2rem 0 5.8rem;
    }

    #footer .footer_flex {
        flex-direction: column;
    }

    #footer #footer_logo {
        min-height: 0%;
    }

    #footer .footer_right {
        align-self: flex-end;
    }
}

@media screen and (max-width: 1023px) {
    #footer .footer_top_inner {
        padding: 5.2rem 0 4.8rem;
    }

    #footer .footer_flex {
        flex-direction: column;
        align-items: center;
    }

    #footer #footer_logo {
        max-width: 370px;
        margin: 0 0 3.5rem;
    }

    #footer #footer_logo img {
        max-width: 370px;
    }

    #footer .footer_right {
        align-self: center;
    }

    #footer .footnav {
        margin: 0 auto;
    }

    #copyright {
        padding: 2.5rem 5%;
    }
}

@media screen and (max-width: 767px) {
    #footer .footer_top_inner {
        padding: 3.5rem 0 2.8rem;
    }

    #footer #footer_logo {
        max-width: 260px;
        width: 90%;
        margin: 0 0 3.5rem;
    }

    #footer #footer_logo img {
        max-width: 260px;
        width: 100%;
    }

    #footer .footer_right {
        flex-direction: column-reverse;
    }

    #footer .footnav {
        margin: 0 auto;
    }

    #footer .footer_contact {
        margin: 0 0 1.5rem;
    }

    #copyright {
        padding: 1rem 5%;
        font-size: 1rem;
    }
}

/*en-US*/
.en-US #MESY_FTMFM_footer_bar-wrapper {
    height: 0px !important;
    display: none;
}

.en-US #MESY_FTMFM_margin_bottom {
    height: 0 !important;
}

.linkBtn-ss a,
.post .linkBtn-ss a {
    margin: auto;
}

.linkBtn-ss a,
.post .linkBtn-ss a {
    margin: auto;
}

/* ----------------------
下層　派遣事業
---------------------- */
div#n2-ss-7 {
    width: 100% !important;
}

.dispatch_mainimg .maincopy {
    font-size: min(calc(1.6rem + (1vw - 1.92rem) * 0.6950), 1.6rem) !important;
    /*1.6-0.8(1920-769)*/
    letter-spacing: min(calc(3rem + (1vw - 1.92rem) * 1.7376), 3rem) !important;
    /*3-1(1920-769)*/
}

.dispatch_mainimg .subcopy {
    font-size: min(calc(1.6rem + (1vw - 1.92rem) * 0.6950), 1.6rem) !important;
    /*1.6-0.8(1920-769)*/
    letter-spacing: min(calc(0.5rem + (1vw - 1.92rem) * 0.2606), 0.5rem) !important;
    /*0.5-0.2(1920-769)*/
}

.recruit_entrybtn {
    position: fixed;
    right: 0;
    z-index: 100;
    background: #34ffaa;
    height: auto;
    transition: all ease 0.6s;
    padding-inline: min(calc(2rem + (1vw - 1.92rem) * 0.4344), 2rem);
    padding-block: min(calc(8rem + (1vw - 1.92rem) * 3.2362), 8rem);
    bottom: 140px;

    &:hover {
        opacity: 0.7;
    }
}

div.recruit_entrybtn a {
    text-decoration: none;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 100%;
    text-align: center;
    line-height: 1.4;
    font-size: min(calc(1.6rem + (1vw - 1.92rem) * 0.2606), 1.6rem);
    font-weight: 600;
    position: relative;
    padding-bottom: min(calc(3rem + (1vw - 1.92rem) * 0.3236), 3rem);

    &:hover {
        text-decoration: none;
    }

    &::after {
        /* content: 'f138'; */
        font-family: 'Font Awesome 5 Free';
        position: absolute;
        bottom: 0;
        /* バージョンアップ後文字化けの為修正 */
        content: "\f138";
        font-weight: 900;
    }
}

.p_dis_header {
    background: url(/struct/wp-content/uploads/business_bg.jpg) no-repeat center;
    background-size: cover;
    text-align: center;
    padding-block: min(calc(16rem + (1vw - 1.92rem) * 9.5569), 16rem);
    /*16-5(1920-769)*/
}

.page_dispatch_wrap h1.ttls {
    font-size: 18px;
    font-weight: 400;
    letter-spacing: 5px;
    margin: 0;

    &.cc_wh {
        color: #fff;
    }
}

.page_dispatch_wrap h1.ttls .entxts {
    display: block;
    font-family: "Cormorant Garamond", serif;
    font-size: min(calc(12rem + (1vw - 1.92rem) * 5.2129), 12rem);
    /*12-6(1920-769)*/
    font-weight: 300;
    letter-spacing: 0;
    padding-bottom: min(calc(2rem + (1vw - 1.92rem) * 0.8688), 2rem);
    /*2-1(1920-769)*/
}

.p_dis_header .navigation_list {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    max-width: 930px;
    width: min(930px, 90%);
    margin-inline: auto;
    gap: 15px;
    margin-block: min(calc(7rem + (1vw - 1.92rem) * 1.7376), 7rem);
    /*7-5(1920-769)*/
}

.p_dis_header .navigation_list li {
    margin: 0;
    background-color: #222;
    text-align: left;
    position: relative;
    transition: all ease 0.6s;

    &::before {
        /* content: 'f054'; */
        font-family: "Font Awesome 5 Free";
        color: #fff;
        /* font-weight: 600; */
        display: inline-block;
        position: absolute;
        right: 20px;
        top: 50%;
        transform: translateY(-50%);
        /* バージョンアップ後文字化けの為修正 */
        content: "\f054";
        font-weight: 400;
    }

    &:hover {
        opacity: 0.7;
    }

    & a {
        color: #fff;
        text-decoration: none;
        width: 100%;
        height: 100%;
        display: grid;
        padding: 20px;
        font-size: 1.8rem;
    }
}

.p_dis_gallery {
    max-width: 1280px;
    width: min(1280px, 90%);
    margin-inline: auto;
}

.p_dis_gallery .gallery {
    gap: 20px;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}

.p_dis_gallery .gallery .gallery-item {
    float: none !important;
    margin: 0 !important;
    /*background: #fff;
	padding-block: 10px;
	box-shadow: rgba(100, 100, 111, 0.2) 0px 7px 29px 0px;*/
    width: calc((100% / 5) - 20px) !important;
    filter: drop-shadow(0px 7px 29px rgba(0, 0, 0, 0.2));
}

.pdis_strengths {
    position: relative;
    width: 100%;
    padding-top: 15rem;

    &::before {
        content: "";
        background: url(/struct/wp-content/uploads/strength_bg.jpg) no-repeat;
        width: 100%;
        height: 570px;
        top: 0;
        left: 50%;
        transform: translateX(-50%);
        position: absolute;
        z-index: -1;
        background-size: cover;
    }
}

ul.pdis_strengths_list {
    max-width: 1200px;
    width: min(1200px, 90%);
    margin-inline: auto;
    margin-top: min(calc(10rem + (1vw - 1.92rem) * 5.2129), 10rem) !important;
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(calc((100% / 3) - 30px), 1fr));
    gap: 50px 30px;

    & li {
        margin: 0;
    }
}

ul.pdis_strengths_list li figure {
    box-shadow: rgba(100, 100, 111, 0.2) 0px 7px 29px 0px;
}

ul.pdis_strengths_list li h2 {
    font-size: min(calc(2.4rem + (1vw - 1.92rem) * 0.6950), 2.4rem);
    font-weight: bold;
    margin: 0;
    padding-block: 30px 20px;

    & p.txts {
        font-size: 1.5rem;
        font-weight: 500;
    }
}

ul.pdis_strengths_list li p.txts {
    font-size: min(calc(1.6rem + (1vw - 1.92rem) * 0.2606), 1.6rem);
}

.pdis_staffvoice {
    background: url(/struct/wp-content/uploads/staffvoice_bgmap.png) no-repeat;
    background-position: center top;
    background-size: contain;
    padding-top: min(calc(15rem + (1vw - 1.92rem) * 6.9505), 15rem);
    display: flex;
    align-items: center;
    gap: min(calc(15rem + (1vw - 1.92rem) * 9.5569), 15rem);
}

.pdis_staffvoice .detailswrap {
    padding-right: 3%;
}

.pdis_staffvoice figure {
    width: 50%;
}

.pdis_staffvoice h1.ttls span.entxts {
    font-size: min(calc(10rem + (1vw - 1.92rem) * 5.2129), 10rem);
}

.pdis_staffvoice p.leadttls {
    font-size: min(calc(2.8rem + (1vw - 1.92rem) * 0.9557), 2.8rem);
    font-weight: 600;
    padding-block: min(calc(6rem + (1vw - 1.92rem) * 2.6064), 6rem) min(calc(4rem + (1vw - 1.92rem) * 1.7376), 4rem);
}

ul.pdis_staffvoice_list {
    display: flex;
    flex-direction: column;
    row-gap: min(calc(2rem + (1vw - 1.92rem) * 0.8688), 2rem);
}

ul.pdis_staffvoice_list li {
    font-size: min(calc(1.5rem + (1vw - 1.92rem) * 0.4344), 1.5rem);
    font-weight: 600;
    position: relative;
    border-bottom: 2px solid #383838;
    padding-bottom: min(calc(1.5rem + (1vw - 1.92rem) * 0.4344), 1.5rem);
    margin: 0;

    &::before {
        content: '';
        width: 10px;
        height: 3px;
        background: #22633a;
        display: inline-block;
        transform: translateY(-3px);
        margin-right: 10px;
    }
}

.pdis_faq {
    background: url(/struct/wp-content/uploads/faqsec_bgpic.png) no-repeat;
    background-position: right top;
    padding-block: min(calc(13rem + (1vw - 1.92rem) * 5.2129), 13rem) min(calc(14rem + (1vw - 1.92rem) * 6.0817), 14rem);
}

.pdis_faq .faq_list {
    max-width: 1100px;
    width: min(1100px, 90%);
    margin-inline: auto;
    margin-block: 60px 70px;
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.pdis_faq .faq_list dl {
    background: #fff;
    box-shadow: rgba(100, 100, 111, 0.2) 0px 7px 29px 0px;
    padding: 20px;
}

.pdis_faq .faq_list dl dt {
    position: relative;
    display: flex;
    min-height: 60px;
    padding-left: 80px;
    align-items: center;
    font-size: min(calc(1.8rem + (1vw - 1.92rem) * 0.1738), 1.8rem);
    font-weight: 800;
    padding-right: 40px;
    cursor: pointer;
    transition: all ease 0.6s;

    &::before {
        content: 'Q';
        background-color: #236139;
        width: 60px;
        height: 60px;
        font-size: 2.4rem;
        color: #fff;
        font-family: "Cabin";
        display: flex;
        justify-content: center;
        align-items: center;
        position: absolute;
        left: 0;
    }

    &::after {
        /* content: 'f077'; */
        font-family: 'Font Awesome 5 Free';
        position: absolute;
        right: 10px;
        /* バージョンアップ後文字化けの為修正 */
        content: "\f077";
        font-weight: 900;
    }

    &:hover {
        opacity: 0.8;

        &::after {
            /* content: 'f078'; */
            /* バージョンアップ後文字化けの為修正 */
            font-family: 'Font Awesome 5 Free';
            content: "\f078";
            font-weight: 900;
        }
    }
}

.pdis_faq .faq_list dl dd {
    position: relative;
    display: flex;
    min-height: 60px;
    padding-left: 80px;
    margin-top: 10px;
    padding-bottom: 0;
    display: none;

    &::before {
        content: 'A';
        background-color: #a2a2a2;
        width: 60px;
        height: 60px;
        font-size: 2.4rem;
        color: #fff;
        font-family: "Cabin";
        display: flex;
        align-items: center;
        justify-content: center;
        position: absolute;
        left: 0;
    }
}

.linkBtn.center a {
    margin-inline: auto;
}

.pdis_interview {
    background-color: #e4e9e7;
    padding-block: min(calc(12rem + (1vw - 1.92rem) * 4.3440), 12rem) min(calc(14rem + (1vw - 1.92rem) * 6.0817), 14rem);
}

.interview_slide {
    margin-block: min(calc(8rem + (1vw - 1.92rem) * 2.6064), 8rem) min(calc(7rem + (1vw - 1.92rem) * 1.7376), 7rem);
}

.pdis_instagram {
    max-width: 1530px;
    width: min(1530px, 90%);
    margin-inline: auto;
    padding-block: min(calc(12rem + (1vw - 1.92rem) * 4.3440), 12rem);
}

.pdis_instagram h1.ttls span.entxts {
    font-size: min(calc(10rem + (1vw - 1.92rem) * 4.3440), 10rem);
}

.pdis_instagram .instawrap {
    margin-top: 5rem;
}

.pdis_information {
    background: url(/struct/wp-content/uploads/page_information_bgpic.jpg) no-repeat;
    padding-block: min(calc(10rem + (1vw - 1.92rem) * 4.3440), 10rem);
    background-position: center;
    background-size: cover;
}

.pdis_information .inners {
    background: rgba(255, 255, 255, 0.8);
    padding-block: min(calc(10rem + (1vw - 1.92rem) * 4.3440), 10rem);
}

.pdis_information h1.ttls span.entxts {
    font-size: min(calc(10rem + (1vw - 1.92rem) * 4.3440), 10rem);
}

.pdis_information .information_wrap {
    max-width: 900px;
    width: min(900px, 90%);
    margin-inline: auto;
    margin-top: min(calc(6rem + (1vw - 1.92rem) * 1.7376), 6rem);
}

.pdis_information .information_wrap .listTitle {
    display: none;
}

@media screen and (max-width: 768px) {
    div#n2-ss-7 {
        width: 100vw !important;
    }

    .dispatch_mainimg .maincopy {
        font-size: 2vw !important;
        letter-spacing: 1.6vw !important;
    }

    .dispatch_mainimg .subcopy {
        font-size: 2.2vw !important;
        letter-spacing: 0.5vw !important;
    }

    .p_dis_header {
        padding-block: 4rem;
    }

    .page_dispatch_wrap h1.ttls {
        font-size: 1.5rem;

        & .entxts {
            font-size: 3rem;
        }
    }

    .p_dis_header .navigation_list {
        grid-template-columns: repeat(2, 1fr);
        gap: 10px;
        margin-block: 30px 20px;
    }

    .p_dis_header .navigation_list li {
        margin: 0;
        background-color: #222;
        text-align: left;
        position: relative;
        transition: all ease 0.6s;
    }

    .p_dis_gallery .gallery {
        gap: 10px;
        justify-content: flex-start;
    }

    .p_dis_gallery .gallery .gallery-item {
        width: calc((100% / 3) - 10px) !important;
    }

    .pdis_strengths {
        padding-top: 3rem;
    }

    ul.pdis_strengths_list {
        grid-template-columns: repeat(2, 1fr);
        gap: 30px 10px;
    }

    ul.pdis_strengths_list li h2 {
        font-size: 1.3rem;
        padding-block: 20px 10px;
        line-height: 1.5;
    }

    ul.pdis_strengths_list li p.txts {
        font-size: 1.1rem;
    }

    .pdis_staffvoice {
        flex-direction: column-reverse;
        text-align: center;
        gap: 30px 0;
        padding-bottom: 20px;
    }

    .pdis_staffvoice .detailswrap {
        padding: 0;
        width: 90%;
    }

    .pdis_staffvoice h1.ttls span.entxts {
        font-size: 3rem;
    }

    .pdis_staffvoice p.leadttls {
        font-size: 1.6rem;
        padding-block: 2.5rem 2rem;
    }

    ul.pdis_staffvoice_list {
        text-align: left;
        row-gap: 1.5rem;

        & li {
            font-size: 1.1rem;
            padding-left: 20px;
            border-bottom-width: 1px;

            &::before {
                position: absolute;
                left: 0;
                top: 50%;
                transform: translateY(-5px);
            }
        }
    }

    .pdis_staffvoice figure {
        width: 90%;
    }

    .pdis_faq {
        background-size: contain;
        padding-block: 30px 50px;
    }

    .pdis_faq .faq_list {
        margin-block: 30px;
        gap: 10px;
    }

    .pdis_faq .faq_list dl {
        padding: 15px;
    }

    .pdis_faq .faq_list dl dt {
        min-height: 40px;
        padding-left: 50px;
        font-size: 1.3rem;

        &::before {
            width: 40px;
            height: 40px;
            font-size: 2rem;
        }
    }

    .pdis_faq .faq_list dl dd {
        min-height: 40px;
        padding-left: 50px;
        font-size: 1.2rem;

        &::before {
            width: 40px;
            height: 40px;
            font-size: 2rem;
        }
    }

    .pdis_instagram {
        text-align: center;
    }
}

/* ----------------------
下層　先輩インタビュー（一覧）
---------------------- */
.interview_archive_wrap .inners {
    width: min(1200px, 90%);
    margin-inline: auto;
    max-width: 1200px;
    padding-bottom: min(calc(10rem + (1vw - 1.92rem) * 3.2362), 10rem);
}

.interview_archive_wrap h2.ttls {
    font-size: 18px;
    font-weight: 400;
    letter-spacing: 5px;
    margin: 0;
    text-align: center;

    & .entxts {
        display: block;
        font-family: "Cormorant Garamond", serif;
        font-size: min(calc(12rem + (1vw - 1.92rem) * 5.2129), 12rem);
        /*12-6(1920-769)*/
        font-weight: 300;
        letter-spacing: 0;
        padding-bottom: min(calc(2rem + (1vw - 1.92rem) * 0.8688), 2rem);
        /*2-1(1920-769)*/
    }
}

.interview_archive_wrap p.leadtxts {
    text-align: center;
    padding-block: min(calc(5rem + (1vw - 1.92rem) * 1.7376), 5rem) min(calc(8rem + (1vw - 1.92rem) * 4.3440), 8rem);
    font-size: min(calc(2rem + (1vw - 1.92rem) * 0.4531), 2rem);
    font-weight: 600;
}

ul.interview_archive_list {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 50px;

    & figure {
        aspect-ratio: 3 / 3.5;
        overflow: hidden;
        margin-bottom: 2rem;

        & img {
            object-fit: cover;
            width: 100%;
            height: 100%;
        }
    }

    & p.nameabout {
        margin-block: 0 1rem;
        display: flex;
        gap: 0.7rem;
        font-weight: 600;
        font-size: min(calc(1.6rem + (1vw - 1.92rem) * 0.1942), 1.6rem);
    }

    & p.companygroup {
        font-size: 1.2rem;
        margin-bottom: 0.5rem;
    }

    & p.interview_ttls {
        margin: 0;
        font-size: min(calc(1.6rem + (1vw - 1.92rem) * 0.1942), 1.6rem);
        font-weight: 600;
        line-height: 1.6;
    }
}

ul.interview_archive_list li {
    margin: 0;
}

.interview_archive_botnavi {
    border-top: 1px solid #ccc;
    padding-top: min(calc(10rem + (1vw - 1.92rem) * 3.2362), 10rem);
}

.interview_archive_botnavi .inners {
    width: min(1000px, 90%);
    margin-inline: auto;
    max-width: 1000px;
}

.interview_archive_botnavi ul.other_navi {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;

    & li {
        background: #333;
        margin: 0;
        position: relative;
        transition: all ease 0.6s;

        & a {
            color: #fff;
            text-decoration: none;
            display: flex;
            align-items: center;
            width: 100%;
            height: 100%;
            padding: 2rem 2rem;
        }

        &::after {
            /* content: 'f054'; */
            position: absolute;
            right: 20px;
            top: 50%;
            transform: translateY(-50%);
            color: #fff;
            font-family: 'Font Awesome 5 Free';
            /* font-weight: 600; */
            pointer-events: none;
            /* バージョンアップ後文字化けの為修正 */
            content: "\f054";
            font-weight: 400;

        }

        &:hover {
            opacity: 0.7;
        }
    }
}

.interview_archive_botnavi ul.entry_navi {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
    margin-top: 20px;

    & li {
        margin: 0;
        background: #34ffaa;
        position: relative;
        transition: all ease 0.6s;

        & a {
            text-decoration: none;
            display: flex;
            align-items: center;
            width: 100%;
            height: 100%;
            padding: 2rem 2rem;
        }

        &::after {
            /* content: 'f054'; */
            position: absolute;
            right: 20px;
            top: 50%;
            transform: translateY(-50%);
            color: #333;
            font-family: 'Font Awesome 5 Free';
            /* font-weight: 600; */
            pointer-events: none;
            /* バージョンアップ後文字化けの為修正 */
            content: "\f054";
            font-weight: 400;
        }

        &:hover {
            opacity: 0.7;
        }
    }
}

@media screen and (max-width: 768px) {
    ul.interview_archive_list {
        grid-template-columns: repeat(2, 1fr);
        gap: 30px 5%;
    }

    .interview_archive_botnavi ul.other_navi {
        grid-template-columns: 1fr;
        gap: 10px;
    }

    .interview_archive_botnavi ul.entry_navi {
        grid-template-columns: 1fr;
        gap: 10px;
        margin-top: 10px;
    }
}

/* ----------------------
下層　先輩インタビュー（詳細）
---------------------- */
.interview_single_header {
    border-bottom: 1px solid #ccc;
    padding-bottom: min(calc(10rem + (1vw - 1.92rem) * 3.2362), 10rem);
    /*10-5(1920-375)*/
    margin-bottom: min(calc(10rem + (1vw - 1.92rem) * 3.2362), 10rem);
    /*10-5(1920-375)*/
}

.interview_single_header .inners {
    max-width: 1200px;
    width: min(1200px, 90%);
    margin-inline: auto;
}

.interview_single_header .aboutbox {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: min(calc(6rem + (1vw - 1.92rem) * 1.9417), 6rem);
    position: relative;
}

.interview_single_header .aboutbox .details {
    width: 55%;

    & p.about_ttl {
        font-size: min(calc(3.5rem + (1vw - 1.92rem) * 1.4770), 3.5rem);
        /*3.5-1.8(1920-769)*/
        font-weight: 600;
        border-bottom: 1px solid #ccc;
        padding-bottom: 3rem;
        margin-bottom: 3rem;
    }

    & p.about_group {
        margin-block: 0 0.5rem;
        font-size: 1.5rem;
    }

    & p.about_name {
        margin: 0;
        display: flex;
        gap: 1rem;
        font-size: min(calc(2rem + (1vw - 1.92rem) * 0.1738), 2rem);
        font-weight: 600;
    }
}

.interview_single_header .aboutbox figure {
    width: 40%;
}

.interview_single_header .profilebox {
    background: #eee;
    display: flex;
    padding: min(calc(4rem + (1vw - 1.92rem) * 0.6472), 4rem);
    justify-content: space-between;
}

.interview_single_header .profilebox .details {
    width: 65%;

    & p.ttls {
        border-bottom: 1px solid #ccc;
        padding-bottom: min(calc(2rem + (1vw - 1.92rem) * 0.8688), 2rem);
        margin-bottom: min(calc(2rem + (1vw - 1.92rem) * 0.8688), 2rem);
        font-size: min(calc(2.5rem + (1vw - 1.92rem) * 0.4344), 2.5rem);
    }

    & p.txts {
        font-size: min(calc(1.5rem + (1vw - 1.92rem) * 0.1942), 1.5rem);
    }
}

.interview_single_header .profilebox figure {
    width: 30%;
}

.interview_single_comment {
    padding-bottom: min(calc(10rem + (1vw - 1.92rem) * 3.2362), 10rem);
    /*10-5(1920-375)*/
}

.interview_single_wrap h2.ttls {
    font-size: 18px;
    font-weight: 400;
    letter-spacing: 5px;
    margin: 0;
    text-align: center;

    & .entxts {
        display: block;
        font-family: "Cormorant Garamond", serif;
        font-size: min(calc(12rem + (1vw - 1.92rem) * 5.2129), 12rem);
        /*12-6(1920-769)*/
        font-weight: 300;
        letter-spacing: 0;
        padding-bottom: min(calc(2rem + (1vw - 1.92rem) * 0.8688), 2rem);
        /*2-1(1920-769)*/
    }
}

.interview_single_comment .inners {
    max-width: 1200px;
    width: min(1200px, 90%);
    margin-inline: auto;
    padding-top: min(calc(7rem + (1vw - 1.92rem) * 1.9417), 7rem);
}

.interview_single_comment dl+dl {
    margin-top: min(calc(4rem + (1vw - 1.92rem) * 0.7767), 4rem);
    /*4-2.8(1920-375)*/
}

.interview_single_comment dt {
    font-size: min(calc(2.2rem + (1vw - 1.92rem) * 0.2589), 2.2rem);
    border-bottom: 1px solid #ccc;
    padding-bottom: 1.5rem;
    margin-bottom: 1.5rem;
}

.interview_single_comment dd {
    padding: 0;
    font-size: min(calc(1.7rem + (1vw - 1.92rem) * 0.1942), 1.7rem);
}

.interview_single_schedule {
    padding-bottom: min(calc(10rem + (1vw - 1.92rem) * 3.2362), 10rem);
    border-top: 1px solid #ccc;
    padding-top: min(calc(10rem + (1vw - 1.92rem) * 3.2362), 10rem);
}

.interview_single_schedule .inners {
    width: min(1200px, 90%);
    max-width: 1200px;
    margin-inline: auto;
    padding-top: 5rem;
}

.interview_archive_botnavi .linkBtn {
    margin-bottom: min(calc(10rem + (1vw - 1.92rem) * 3.2362), 10rem);
}

.interview_archive_botnavi .linkBtn a {
    margin-inline: auto;
}

.interview_archive_botnavi .pagenav {
    margin-block: 0 5rem;
    width: 90%;
    margin-inline: auto;
}

@media screen and (max-width: 768px) {
    .interview_single_header .aboutbox {
        flex-direction: column;
        justify-content: flex-start;
        align-items: flex-start;
        gap: 3rem;
    }

    .interview_single_header .aboutbox .details {
        width: 100%;

        & p.about_ttl {
            font-size: 2.1rem;
            padding: 0;
            margin: 0;
            border: none;
        }

        & p.about_group {
            position: absolute;
            background: rgba(255, 255, 255, 0.9);
            padding: 0.5rem 1rem;
            font-weight: 600;
            margin: 0;
            bottom: 82px;
            box-shadow: rgba(149, 157, 165, 0.2) 0px 8px 24px;
        }

        & p.about_name {
            position: absolute;
            background: rgba(255, 255, 255, 0.9);
            padding: 0.5rem 1rem;
            font-weight: 600;
            margin: 0;
            bottom: 30px;
            box-shadow: rgba(149, 157, 165, 0.2) 0px 8px 24px;
        }
    }

    .interview_single_header .aboutbox figure {
        width: 70%;
        margin-left: auto;
    }

    .interview_single_header .profilebox {
        flex-direction: column;
        gap: 2rem;
    }

    .interview_single_header .profilebox .details,
    .interview_single_header .profilebox figure {
        width: 100%;
    }
}

/*--------------------
flow01
--------------------*/
.flowlist {
    padding-left: 10rem;
    position: relative;
}

.flowlist::before {
    content: "";
    width: 15px;
    height: 100%;
    background: #eee;
    margin-left: -8px;
    display: block;
    position: absolute;
    top: 0;
    left: 10rem;
}

.flowlist>li {
    position: relative;
}

.flowlist>li:not(:last-child) {
    margin-bottom: 8vh;
}

.flowlist>li .icon {
    font-size: 1.6rem;
    color: #fff;
    background: #000000;
    padding: 0.8rem 2rem;
    display: block;
    position: absolute;
    top: 0;
    left: -13rem;
    z-index: 100;
    font-style: italic;
}

.flowlist>li .icon::after {
    content: "";
    border-style: solid;
    border-width: 5px 0 5px 10px;
    border-color: transparent transparent transparent #000000;
    position: absolute;
    top: 50%;
    left: 100%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

.flowlist>li dl {
    padding-left: 7rem;
    position: relative;
    padding-top: 0.7rem;
}

.flowlist>li dl::before,
.flowlist>li dl::after {
    content: "";
    display: block;
    position: absolute;
    top: 20px;
}

.flowlist>li dl::before {
    width: 7px;
    height: 7px;
    margin-top: 0;
    background: #1A1A1A;
    border-radius: 50%;
    left: -4px;
}

.flowlist>li dl::after {
    width: 50px;
    border-bottom: 1px dashed #999;
    position: absolute;
    left: 5px;
    top: 2.3rem;
}

.flowlist>li dl dt {
    margin-bottom: 0.5rem;
    font-weight: 600;
    font-size: 1.6rem;
}

@media (max-width: 768px) {
    .flowlist>li .icon {
        font-size: 1.2rem;
    }

    .flowlist {
        padding-left: 10rem;
    }

    .flowlist>li .icon {
        left: -11rem;
    }

    .flowlist::before {
        left: 10rem;
    }

    .flowlist>li dl {
        padding-left: 4.5rem;
    }

    .flowlist>li dl::after {
        width: 30px;
    }

    .flowlist>li dl dt {
        font-size: 1.4rem;
    }
}

/* ----------------------
下層　エントリー※追記
---------------------- */
.entry_pages+.entry_pages {
    margin-top: min(calc(10rem + (1vw - 1.92rem) * 3.2362), 10rem);
}

.pdis_faq.entry_pages {
    background: none;
    padding-block: 0;
}

.entry_pages h2.ttls {
    font-size: min(calc(2.8rem + (1vw - 1.92rem) * 0.5178), 2.8rem);
    /*2.8-2(1920-375)*/
    font-weight: 600;
    padding-bottom: min(calc(3rem + (1vw - 1.92rem) * 0.6472), 3rem);
    margin-bottom: min(calc(5rem + (1vw - 1.92rem) * 1.2945), 5rem);

    &::after {
        content: '';
        background: #333;
        width: 100px;
        height: 1px;
        position: absolute;
        left: 50%;
        transform: translateX(-50%);
        bottom: 0;
    }
}

.pdis_faq.entry_pages .faq_list {
    max-width: 100%;
    width: 100%;
    margin-block: 0;
}

.pdis_faq.entry_pages .faq_list dl dt {
    font-weight: 600;
}

/*バージョンアップCF7送信スピナーによるテキストずれ対応*/
.wpcf7-spinner {
    position: absolute !important;
    margin: 0 !important;
}

/*Content Copy Protection & No Right Click*/
html {
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

img {
    pointer-events: none;
    -webkit-touch-callout: none;
}

a img {
    pointer-events: auto;
}

.front_recruit {
    position: relative;

    &::before {
        content: "";
        position: absolute;
        display: block;
        width: 100%;
        height: 100%;
        background-color: #444;
        opacity: 0.8;
    }

    .inner {
        p {
            position: relative;
        }
    }
}