@charset "UTF-8";
.wp-block-group {
    gap: 0 0.5em;
    padding: 2rem;
}
@media (max-width: 767px) {
    .wp-block-group {
        padding: 0;
    }
}
.wp-block-group #toc_container {
    width: calc(100% + 4rem) !important;
    margin-left: -2rem;
    margin-right: -2rem;
}
@media (max-width: 767px) {
    .wp-block-group #toc_container {
        width: 100% !important;
        margin-left: 0;
        margin-right: 0;
    }
}

.block-editor__container .wp-block-spacer {
    border: 1px dashed #e1e1e1;
}

.wp-block-spacer[style="height:1px"] {
    height: 0.1rem !important;
}
.wp-block-spacer[style="height:2px"] {
    height: 0.2rem !important;
}
.wp-block-spacer[style="height:3px"] {
    height: 0.3rem !important;
}
.wp-block-spacer[style="height:4px"] {
    height: 0.4rem !important;
}
.wp-block-spacer[style="height:5px"] {
    height: 0.5rem !important;
}
.wp-block-spacer[style="height:6px"] {
    height: 0.6rem !important;
}
.wp-block-spacer[style="height:7px"] {
    height: 0.7rem !important;
}
.wp-block-spacer[style="height:8px"] {
    height: 0.8rem !important;
}
.wp-block-spacer[style="height:9px"] {
    height: 0.9rem !important;
}
.wp-block-spacer[style="height:10px"] {
    height: 1rem !important;
}
.wp-block-spacer[style="height:11px"] {
    height: 1.1rem !important;
}
.wp-block-spacer[style="height:12px"] {
    height: 1.2rem !important;
}
.wp-block-spacer[style="height:13px"] {
    height: 1.3rem !important;
}
.wp-block-spacer[style="height:14px"] {
    height: 1.4rem !important;
}
.wp-block-spacer[style="height:15px"] {
    height: 1.5rem !important;
}
.wp-block-spacer[style="height:16px"] {
    height: 1.6rem !important;
}
.wp-block-spacer[style="height:17px"] {
    height: 1.7rem !important;
}
.wp-block-spacer[style="height:18px"] {
    height: 1.8rem !important;
}
.wp-block-spacer[style="height:19px"] {
    height: 1.9rem !important;
}
.wp-block-spacer[style="height:20px"] {
    height: 2rem !important;
}
.wp-block-spacer[style="height:21px"] {
    height: 2.1rem !important;
}
.wp-block-spacer[style="height:22px"] {
    height: 2.2rem !important;
}
.wp-block-spacer[style="height:23px"] {
    height: 2.3rem !important;
}
.wp-block-spacer[style="height:24px"] {
    height: 2.4rem !important;
}
.wp-block-spacer[style="height:25px"] {
    height: 2.5rem !important;
}
.wp-block-spacer[style="height:26px"] {
    height: 2.6rem !important;
}
.wp-block-spacer[style="height:27px"] {
    height: 2.7rem !important;
}
.wp-block-spacer[style="height:28px"] {
    height: 2.8rem !important;
}
.wp-block-spacer[style="height:29px"] {
    height: 2.9rem !important;
}
.wp-block-spacer[style="height:30px"] {
    height: 3rem !important;
}
.wp-block-spacer[style="height:31px"] {
    height: 3.1rem !important;
}
.wp-block-spacer[style="height:32px"] {
    height: 3.2rem !important;
}
.wp-block-spacer[style="height:33px"] {
    height: 3.3rem !important;
}
.wp-block-spacer[style="height:34px"] {
    height: 3.4rem !important;
}
.wp-block-spacer[style="height:35px"] {
    height: 3.5rem !important;
}
.wp-block-spacer[style="height:36px"] {
    height: 3.6rem !important;
}
.wp-block-spacer[style="height:37px"] {
    height: 3.7rem !important;
}
.wp-block-spacer[style="height:38px"] {
    height: 3.8rem !important;
}
.wp-block-spacer[style="height:39px"] {
    height: 3.9rem !important;
}
.wp-block-spacer[style="height:40px"] {
    height: 4rem !important;
}
.wp-block-spacer[style="height:41px"] {
    height: 4.1rem !important;
}
.wp-block-spacer[style="height:42px"] {
    height: 4.2rem !important;
}
.wp-block-spacer[style="height:43px"] {
    height: 4.3rem !important;
}
.wp-block-spacer[style="height:44px"] {
    height: 4.4rem !important;
}
.wp-block-spacer[style="height:45px"] {
    height: 4.5rem !important;
}
.wp-block-spacer[style="height:46px"] {
    height: 4.6rem !important;
}
.wp-block-spacer[style="height:47px"] {
    height: 4.7rem !important;
}
.wp-block-spacer[style="height:48px"] {
    height: 4.8rem !important;
}
.wp-block-spacer[style="height:49px"] {
    height: 4.9rem !important;
}
.wp-block-spacer[style="height:50px"] {
    height: 5rem !important;
}
.wp-block-spacer[style="height:51px"] {
    height: 5.1rem !important;
}
.wp-block-spacer[style="height:52px"] {
    height: 5.2rem !important;
}
.wp-block-spacer[style="height:53px"] {
    height: 5.3rem !important;
}
.wp-block-spacer[style="height:54px"] {
    height: 5.4rem !important;
}
.wp-block-spacer[style="height:55px"] {
    height: 5.5rem !important;
}
.wp-block-spacer[style="height:56px"] {
    height: 5.6rem !important;
}
.wp-block-spacer[style="height:57px"] {
    height: 5.7rem !important;
}
.wp-block-spacer[style="height:58px"] {
    height: 5.8rem !important;
}
.wp-block-spacer[style="height:59px"] {
    height: 5.9rem !important;
}
.wp-block-spacer[style="height:60px"] {
    height: 6rem !important;
}
.wp-block-spacer[style="height:61px"] {
    height: 6.1rem !important;
}
.wp-block-spacer[style="height:62px"] {
    height: 6.2rem !important;
}
.wp-block-spacer[style="height:63px"] {
    height: 6.3rem !important;
}
.wp-block-spacer[style="height:64px"] {
    height: 6.4rem !important;
}
.wp-block-spacer[style="height:65px"] {
    height: 6.5rem !important;
}
.wp-block-spacer[style="height:66px"] {
    height: 6.6rem !important;
}
.wp-block-spacer[style="height:67px"] {
    height: 6.7rem !important;
}
.wp-block-spacer[style="height:68px"] {
    height: 6.8rem !important;
}
.wp-block-spacer[style="height:69px"] {
    height: 6.9rem !important;
}
.wp-block-spacer[style="height:70px"] {
    height: 7rem !important;
}
.wp-block-spacer[style="height:71px"] {
    height: 7.1rem !important;
}
.wp-block-spacer[style="height:72px"] {
    height: 7.2rem !important;
}
.wp-block-spacer[style="height:73px"] {
    height: 7.3rem !important;
}
.wp-block-spacer[style="height:74px"] {
    height: 7.4rem !important;
}
.wp-block-spacer[style="height:75px"] {
    height: 7.5rem !important;
}
.wp-block-spacer[style="height:76px"] {
    height: 7.6rem !important;
}
.wp-block-spacer[style="height:77px"] {
    height: 7.7rem !important;
}
.wp-block-spacer[style="height:78px"] {
    height: 7.8rem !important;
}
.wp-block-spacer[style="height:79px"] {
    height: 7.9rem !important;
}
.wp-block-spacer[style="height:80px"] {
    height: 8rem !important;
}
.wp-block-spacer[style="height:81px"] {
    height: 8.1rem !important;
}
.wp-block-spacer[style="height:82px"] {
    height: 8.2rem !important;
}
.wp-block-spacer[style="height:83px"] {
    height: 8.3rem !important;
}
.wp-block-spacer[style="height:84px"] {
    height: 8.4rem !important;
}
.wp-block-spacer[style="height:85px"] {
    height: 8.5rem !important;
}
.wp-block-spacer[style="height:86px"] {
    height: 8.6rem !important;
}
.wp-block-spacer[style="height:87px"] {
    height: 8.7rem !important;
}
.wp-block-spacer[style="height:88px"] {
    height: 8.8rem !important;
}
.wp-block-spacer[style="height:89px"] {
    height: 8.9rem !important;
}
.wp-block-spacer[style="height:90px"] {
    height: 9rem !important;
}
.wp-block-spacer[style="height:91px"] {
    height: 9.1rem !important;
}
.wp-block-spacer[style="height:92px"] {
    height: 9.2rem !important;
}
.wp-block-spacer[style="height:93px"] {
    height: 9.3rem !important;
}
.wp-block-spacer[style="height:94px"] {
    height: 9.4rem !important;
}
.wp-block-spacer[style="height:95px"] {
    height: 9.5rem !important;
}
.wp-block-spacer[style="height:96px"] {
    height: 9.6rem !important;
}
.wp-block-spacer[style="height:97px"] {
    height: 9.7rem !important;
}
.wp-block-spacer[style="height:98px"] {
    height: 9.8rem !important;
}
.wp-block-spacer[style="height:99px"] {
    height: 9.9rem !important;
}
.wp-block-spacer[style="height:100px"] {
    height: 10rem !important;
}

/* =======================================

web font

 ======================================= */
@font-face {
    font-family: "Anta";
    src: url("../font/Anta/Anta-Regular.woff") format("woff");
}
/* =======================================

reset

 ======================================= */
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, font, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td {
    margin: 0;
    padding: 0;
    border: 0;
    vertical-align: baseline;
    font-style: inherit;
    font-size: inherit;
    font-weight: inherit;
    line-height: inherit;
    letter-spacing: inherit;
    word-break: break-all;
    word-wrap: break-word;
}

html {
    font-size: 62.5%;
    line-height: 1.4em;
    text-align: left;
    color: #000000;
    -webkit-text-size-adjust: none;
}

img {
    vertical-align: text-bottom;
    -ms-interpolation-mode: bicubic;
}

a {
    -webkit-tap-highlight-color: transparent;
}

strong {
    font-weight: bold;
}

ol, ul {
    list-style: none;
}

table {
    border-collapse: collapse;
    border-spacing: 0;
}

caption, th, td {
    font-weight: normal;
    text-align: left;
    vertical-align: top;
}

blockquote:before, blockquote:after, q:before, q:after {
    content: "";
}

blockquote, q {
    quotes: "" "";
}

a:focus {
    /*\*/
    /*overflow: hidden;*/
    /**/
}

option {
    padding-right: 10px;
}

/* ------------------------------
	HTML5 ELEMENTS
------------------------------ */
header, article, aside, section, footer, nav, menu, details, hgroup, summary {
    display: block;
    margin: 0;
    padding: 0;
    border: 0;
    vertical-align: baseline;
    font-family: inherit;
    font-style: inherit;
    font-size: inherit;
    font-weight: inherit;
    line-height: inherit;
}

/* ------------------------------
	HTML Living Standard
------------------------------ */
figure, figcaption {
    display: block;
    margin: 0;
    padding: 0;
    border: 0;
    vertical-align: baseline;
    font-family: inherit;
    font-style: inherit;
    font-size: inherit;
    font-weight: inherit;
    line-height: inherit;
}

/* ------------------------------
	ohter
------------------------------ */
* {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
}

/* =======================================

基本設定

======================================= */
:root {
    font-size: 0.625vw;
}
@media (max-width: 767px) {
    :root {
        font-size: 2.5641025641vw;
    }
}
:root {
    --custom-rem:(100vw / 160);
}
@media (max-width: 1440px) and (min-width: 1331px) {
    :root {
        --custom-rem:(100vw / 133.1);
    }
}
@media (max-width: 1330px) and (min-width: 1061px) {
    :root {
        --custom-rem:(100vw / 106.1);
    }
}
@media (max-width: 1060px) and (min-width: 768px) {
    :root {
        --custom-rem:(100vw / 76.9);
    }
}
@media (max-width: 767px) {
    :root {
        --custom-rem:(100vw / 39);
    }
}

body {
    width: 100%;
    height: auto;
    font-size: 1.6rem;
    line-height: 1.8;
    color: #13161B;
    font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
    font-weight: 500;
    position: relative;
}
@media (max-width: 767px) {
    body {
        font-size: 1.6rem;
    }
}
body._orverflow, body.showroom_modal_open, body._door_operating {
    overflow: hidden;
}

/* =======================================

共通設定

======================================= */
img {
    max-width: 100%;
    height: auto;
}

a:link, a:visited, a:active {
    text-decoration: none;
    color: inherit;
}
@media (max-width: 767px) {
    a:hover {
        text-decoration: none;
        color: inherit;
    }
}
@media (min-width: 768px) {
    a:not(.no_hover) {
        -webkit-transition: 0.3s;
        transition: 0.3s;
    }
    a:not(.no_hover):hover {
        opacity: 0.7;
    }
}
@media (min-width: 768px) {
    a.ico {
        -webkit-transition: cubic-bezier(0.4, 0, 0.2, 1) 0.3s;
        transition: opacity cubic-bezier(0.4, 0, 0.2, 1) 0.3s;
    }
    a.ico:hover {
        opacity: 0.7;
    }
}

p {
    text-align: justify;
    text-justify: inter-ideograph;
}

/* 基本ボックス設定
------------------------------- */
.container {
    width: 100%;
    overflow: hidden;
}

.wrap_out, .wrap_main {
    width: 100%;
    height: auto;
}

.wrap_in, .base {
    width: 132rem;
    max-width: 100%;
    height: auto;
    margin: 0 auto;
    padding: 0 2rem;
}
@media (max-width: 767px) {
    .wrap_in, .base {
        padding: 0 3rem;
    }
}

.section_wrapper {
    overflow: hidden;
    position: relative;
}

/* text
------------------------------- */
.desc {
    font-size: 1.6rem;
    font-weight: 500;
    line-height: 1.95;
    letter-spacing: 0.04em;
}
@media (max-width: 767px) {
    .desc {
        font-size: 1.4rem;
        line-height: 1.95;
    }
}

.notes {
    font-size: 1.6rem;
    font-weight: 500;
    line-height: 1.55;
    letter-spacing: 0.04em;
}
@media (max-width: 767px) {
    .notes {
        font-size: 1.4rem;
    }
}

.comingsoon {
    font-size: 1.8rem;
    font-weight: 500;
    line-height: 1.55;
    letter-spacing: 0.04em;
    text-align: center;
    padding: 1em;
    margin: 0 0 0;
}
@media (max-width: 767px) {
    .comingsoon {
        font-size: 1.6rem;
    }
}

.section_ttl {
    margin-bottom: 7.2rem;
}
@media (max-width: 767px) {
    .section_ttl {
        margin-bottom: 5.6rem;
    }
}
.section_ttl--eng {
    display: block;
    height: 4.4rem;
}
@media (max-width: 767px) {
    .section_ttl--eng {
        height: 3.3rem;
    }
}
.section_ttl--eng img {
    display: block;
    width: auto;
    height: 100%;
}
.section_ttl--ttl {
    font-size: 5.6rem;
    font-weight: 700;
    line-height: 1.55;
    letter-spacing: 0.04em;
    margin-top: 0.4rem;
}
@media (max-width: 767px) {
    .section_ttl--ttl {
        font-size: 3rem;
        margin-top: 0.8rem;
    }
}

.ttl_border {
    font-size: 2.2rem;
    font-weight: 700;
    line-height: 1.55;
    letter-spacing: 0.04em;
    border-bottom: 1px solid #D9D9D9;
    padding: 0 0 2.4rem;
    margin: 0 0 3.2rem;
    position: relative;
}
@media (max-width: 767px) {
    .ttl_border {
        font-size: 1.6rem;
        padding: 0 0 1.5rem;
        margin: 0 0 1.6rem;
    }
}
.ttl_border::after {
    content: "";
    display: block;
    width: 5.2rem;
    height: 1px;
    background: linear-gradient(90deg, #38AEE6 -6.88%, #005296 121%);
    position: absolute;
    left: 0px;
    bottom: -1px;
}

.section_head {
    display: flex;
    align-items: flex-end;
    justify-content: flex-end;
    flex-wrap: wrap;
    border-bottom: 1px solid #D9D9D9;
    padding-right: 10.4rem;
    padding-bottom: 3.3rem;
    margin-bottom: 4rem;
    position: relative;
}
@media (max-width: 767px) {
    .section_head {
        border-bottom: 0;
        padding-right: 0;
        margin-bottom: 0;
    }
}
.section_head::after {
    content: "";
    display: block;
    width: 5.2rem;
    height: 1px;
    background: linear-gradient(90deg, #38AEE6 -6.88%, #005296 121%);
    position: absolute;
    left: 0px;
    bottom: -1px;
}
@media (max-width: 767px) {
    .section_head::after {
        display: none;
    }
}
.section_head--item {
    flex-grow: 1;
}
@media (max-width: 767px) {
    .section_head--item {
        border-bottom: 1px solid #D9D9D9;
        position: relative;
        padding-bottom: 3.2rem;
        margin-bottom: 2.4rem;
    }
    .section_head--item::after {
        content: "";
        display: block;
        width: 5.2rem;
        height: 1px;
        background: linear-gradient(90deg, #38AEE6 -6.88%, #005296 121%);
        position: absolute;
        left: 0px;
        bottom: -1px;
    }
}
.section_head--eng {
    display: block;
    height: 4.4rem;
}
@media (max-width: 767px) {
    .section_head--eng {
        height: 3.3rem;
    }
}
.section_head--eng img {
    display: block;
    width: auto;
    height: 100%;
}
.section_head--blksub {
    display: block;
    width: fit-content;
    font-size: 1.4rem;
    font-weight: 700;
    line-height: 1.55;
    letter-spacing: 0.04em;
    text-align: left;
    color: #fff;
    border-radius: 0.4rem;
    background-color: #13161B;
    padding: 1rem 1.6rem;
    margin: 0 0 3.2rem;
}
@media (max-width: 767px) {
    .section_head--blksub {
        font-size: 1.2rem;
        margin: 0 0 2.4rem;
    }
}
.section_head--ttl {
    font-size: 4rem;
    font-weight: 700;
    line-height: 1.55;
    letter-spacing: 0.04em;
}
@media (max-width: 767px) {
    .section_head--ttl {
        font-size: 2.6rem;
        margin-top: 0.2rem;
    }
}
.section_head .text_link {
    flex-shrink: 1;
    margin-bottom: 1rem;
}
@media (max-width: 767px) {
    .section_head .text_link {
        margin-top: 1rem;
        margin-bottom: 0;
    }
}
.section_head.small {
    padding-right: 0;
    padding-bottom: 3.2rem;
    margin-bottom: 3.2rem;
}
@media (max-width: 767px) {
    .section_head.small {
        border-bottom: 0;
        padding-right: 0;
        padding-bottom: 0;
        margin-bottom: 3.2rem;
    }
}
.section_head.small .section_head--eng {
    height: 4.4rem;
    margin-bottom: 0;
}
@media (max-width: 767px) {
    .section_head.small .section_head--eng {
        height: 3.4rem;
        margin-bottom: 0.4rem;
    }
}
.section_head.small .section_head--ttl {
    font-size: 3.2rem;
}
@media (max-width: 767px) {
    .section_head.small .section_head--ttl {
        font-size: 2.2rem;
        margin-top: 0.6rem;
    }
}
@media (max-width: 767px) {
    .section_head.small .section_head--item {
        padding-bottom: 2.4rem;
        margin-bottom: 0;
    }
}
.section_head.hus_desc {
    padding-right: 0;
}
.section_head.hus_desc .section_head--item {
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
    flex-wrap: wrap;
}
@media (max-width: 767px) {
    .section_head.hus_desc .section_head--item {
        display: block;
    }
}
.section_head.hus_desc .section_head--item .section_head--eng {
    width: 100%;
}
.section_head.hus_desc .section_head--item .section_head--ttl {
    width: 70.9rem;
}
@media (max-width: 767px) {
    .section_head.hus_desc .section_head--item .section_head--ttl {
        width: 100%;
    }
}
.section_head.hus_desc .section_head--item .desc {
    width: calc(100% - 70.9rem);
}
@media (max-width: 767px) {
    .section_head.hus_desc .section_head--item .desc {
        width: 100%;
        font-size: 1.4rem;
        margin: 2.4rem 0 0;
    }
}
.section_head.horizontal {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    flex-wrap: nowrap;
    gap: 2.4rem;
    border-bottom: 0;
    padding: 0;
}
@media (max-width: 767px) {
    .section_head.horizontal {
        flex-wrap: wrap;
        gap: 2.5rem;
        border-bottom: 0;
        margin-bottom: 2.4rem;
    }
}
.section_head.horizontal::after {
    display: none;
}
@media (max-width: 767px) {
    .section_head.horizontal::after {
        display: none;
    }
}
@media (min-width: 768px) {
    .section_head.horizontal .section_head--item {
        flex-shrink: 0;
        flex-grow: 0;
        display: flex;
        align-items: center;
        justify-content: flex-start;
        flex-wrap: nowrap;
        gap: 2.45rem;
    }
}
@media (max-width: 767px) {
    .section_head.horizontal .section_head--item {
        border-bottom: 0;
        padding-bottom: 0;
        margin-bottom: 0;
    }
    .section_head.horizontal .section_head--item::after {
        display: none;
    }
}
.section_head.horizontal .section_head--item .section_head--eng {
    flex-shrink: 0;
}
.section_head.horizontal .section_head--item .section_head--ttl {
    flex-grow: 1;
}
.section_head.horizontal .section_head--horizontal_line {
    flex-grow: 1;
}
@media (max-width: 767px) {
    .section_head.horizontal .section_head--horizontal_line {
        width: 100%;
    }
}
.section_head--horizontal_line {
    display: block;
    position: relative;
}
.section_head--horizontal_line::before {
    content: "";
    display: block;
    width: 100%;
    height: 1px;
    background-color: #D9D9D9;
    position: absolute;
    bottom: 0;
    left: 0;
}
.section_head--horizontal_line::after {
    content: "";
    display: block;
    width: 5.2rem;
    height: 1px;
    background: linear-gradient(90deg, #38AEE6 -6.88%, #005296 121%);
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: 1;
}

.section_head_small {
    margin: 0 0 2.4rem;
}
.section_head_small .accent_ttl {
    min-height: 3.2rem;
    font-size: 1.6rem;
    padding-left: 3.4rem;
}
.section_head_small .accent_ttl::before {
    width: 3.072rem;
    height: 3.2rem;
    aspect-ratio: auto;
    background-size: 100% auto;
}
.section_head_small--ttl {
    font-size: 2.4rem;
    font-weight: 700;
    line-height: 1.55;
    letter-spacing: 0.04em;
    text-align: left;
    padding: 0 0 0;
    margin: 0 0 0;
}

.tag {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    height: 2.9rem;
    font-size: 1.2rem;
    font-weight: 500;
    line-height: 1.55;
    letter-spacing: 0.04em;
    background-color: #D9D9D9;
    border-radius: 0.4rem;
    padding: 0.5rem 0.8rem;
}
@media (max-width: 767px) {
    .tag {
        font-size: 1rem;
    }
}

.accent_ttl {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    flex-wrap: wrap;
    min-height: 4.4rem;
    font-family: "Anta", sans-serif;
    font-size: 2.4rem;
    font-weight: 400;
    line-height: 1.55;
    letter-spacing: 0.04em;
    padding: 0.1rem 0 0 5.2rem;
    margin: 0 0 0;
    position: relative;
}
@media (max-width: 767px) {
    .accent_ttl {
        min-height: 3.6rem;
        font-size: 1.8rem;
        padding: 0 0 0 4rem;
    }
}
.accent_ttl::before {
    content: "";
    display: block;
    width: 4.4rem;
    aspect-ratio: 1/1;
    box-sizing: border-box;
    background: transparent url(../img/icon/accent_mark.svg) no-repeat center/4.22rem auto;
    position: absolute;
    top: 0;
    left: 0;
}
@media (max-width: 767px) {
    .accent_ttl::before {
        width: 3.6rem;
        background-size: 3.46rem auto;
    }
}

.date {
    font-family: "Anta", sans-serif;
    font-size: 1.2rem;
    font-weight: 400;
    line-height: 1.55;
    letter-spacing: 0.04em;
    text-align: left;
}
@media (max-width: 767px) {
    .date {
        font-size: 1rem;
    }
}

.new_mark {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    min-width: 5.7rem;
    min-height: 3.3rem;
    font-family: "Anta", sans-serif;
    font-size: 1.2rem;
    font-weight: 400;
    line-height: 1.12;
    letter-spacing: 0.04em;
    color: #fff;
    background-color: #13161B;
    border-radius: 0.6rem;
    padding: 0.5rem 1.05rem;
    margin: 0 0 0;
}
@media (max-width: 767px) {
    .new_mark {
        min-height: 2.8rem;
    }
}

/* box
------------------------------- */
.link_card {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    padding: 6rem 12rem;
    position: relative;
    overflow: hidden;
}
@media (max-width: 767px) {
    .link_card {
        padding: 3rem;
    }
}
.link_card--item {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 3.2rem;
    width: 100%;
    position: relative;
    z-index: 1;
}
@media (max-width: 767px) {
    .link_card--item {
        gap: 0.8rem;
    }
}
.link_card--item--text {
    max-width: calc(100% - 4.8rem);
}
@media (max-width: 767px) {
    .link_card--item--text {
        max-width: calc(100% - 4.4rem);
    }
}
.link_card--item--text--img {
    display: block;
    width: auto;
    height: 2.2rem;
    margin-bottom: 0.8rem;
}
@media (max-width: 767px) {
    .link_card--item--text--img {
        height: 2.8rem;
        margin-bottom: 0.4rem;
    }
}
.link_card--item--text--img img {
    display: block;
    width: auto;
    height: 100%;
}
.link_card--item--text--ttl {
    font-size: 2.4rem;
    font-weight: 700;
    line-height: 1.8;
    letter-spacing: 0.04em;
    color: #fff;
}
@media (max-width: 767px) {
    .link_card--item--text--ttl {
        font-size: 1.4rem;
        line-height: 1.55;
        letter-spacing: 0.04em;
        text-align: center;
    }
}
.link_card--item--btn {
    width: 4.8rem;
}
@media (max-width: 767px) {
    .link_card--item--btn {
        width: 3.6rem;
    }
}
.link_card--item--btn .btn_oval_arrow {
    width: 100%;
}
.link_card--item .desc {
    width: calc(100% - 4.8rem);
    color: #fff;
}
@media (max-width: 767px) {
    .link_card--item .desc {
        width: 100%;
    }
}
.link_card--img {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
}
.link_card--img::after {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.8);
    -webkit-transition: 0.4s;
    transition: 0.4s;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 0;
}
.link_card--img img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    -webkit-transition: 0.4s;
    transition: 0.4s;
}
.link_card.large .link_card--item--text--ttl {
    font-size: 3.2rem;
}
@media (max-width: 767px) {
    .link_card.large .link_card--item--text--ttl {
        font-size: 2.2rem;
        line-height: 1.55;
    }
}
@media (max-width: 767px) {
    .link_card:not(.large) {
        padding: 1rem;
    }
    .link_card:not(.large) .link_card--item {
        justify-content: center;
        gap: 1.2rem;
    }
    .link_card:not(.large) .link_card--item--text {
        width: 100%;
        max-width: 100%;
    }
    .link_card:not(.large) .link_card--item--text--img {
        width: 100%;
        margin-bottom: 0.8rem;
    }
    .link_card:not(.large) .link_card--item--text--img img {
        height: 2.8rem;
        margin: 0 auto;
    }
}

@media (min-width: 768px) {
    .link_card .link_card--img {
        overflow: hidden;
    }
    .link_card .link_card--img img {
        -webkit-transition: 0.4s ease;
        transition: 0.4s ease;
    }
    .link_card .link_card--item--text, .link_card .btn_oval_arrow {
        -webkit-transition: 0.4s ease;
        transition: 0.4s ease;
    }
    .link_card:hover .link_card--img img {
        transform: scale(1.05);
    }
    .link_card:hover .link_card--item--text {
        -webkit-transform: translateX(1rem);
        transform: translateX(1rem);
    }
    .link_card:hover .btn_oval_arrow {
        transform: scale(0.9);
    }
    .link_card:hover .btn_oval_arrow::after {
        animation: loop-move 0.4s ease-out forwards;
        animation-iteration-count: 1;
    }
}

.new_release_section {
    padding: 12rem 0 15.2rem;
}
@media (max-width: 767px) {
    .new_release_section {
        padding: 4rem 0 9.6rem;
    }
}
.new_release_section .base {
    width: 144rem;
}

.new_release {
    display: flex;
    width: 140rem;
    padding-left: 4rem;
    justify-content: center;
    align-items: flex-start;
    gap: 2rem;
}
@media (max-width: 767px) {
    .new_release {
        flex-wrap: wrap;
        gap: 5.8rem;
        width: 100%;
        padding-left: 0;
    }
}
.new_release--ttl {
    flex-shrink: 0;
    width: 44rem;
}
@media (max-width: 767px) {
    .new_release--ttl {
        width: 100%;
    }
    .new_release--ttl .section_head {
        margin-bottom: 3.4rem;
    }
    .new_release--ttl .section_head--ttl {
        font-size: 2.6rem !important;
        margin-top: 0 !important;
    }
    .new_release--ttl .text_link {
        margin-left: auto;
    }
    .new_release--ttl .text_link .link_card--item--btn {
        width: 3.2rem;
    }
}
.new_release--item {
    flex-grow: 1;
}
@media (max-width: 767px) {
    .new_release--item {
        width: 100%;
    }
}

@media (min-width: 768px) {
    .new_release_section.title_large .new_release--ttl {
        width: 38rem;
    }
}
@media (min-width: 768px) {
    .new_release_section.title_large .new_release--ttl .section_head {
        margin-bottom: 4.2rem;
    }
}
@media (max-width: 767px) {
    .new_release_section.title_large .new_release--ttl .section_head--item {
        padding-bottom: 2.1rem;
    }
}
.new_release_section.title_large .new_release--ttl .section_head--ttl {
    font-size: 4rem;
}
@media (max-width: 767px) {
    .new_release_section.title_large .new_release--ttl .section_head--ttl {
        font-size: 2.6rem;
    }
}
@media (min-width: 768px) {
    .new_release_section.title_large .pickup_card--head--btn {
        flex-grow: 0;
        padding-right: 2rem;
    }
}

.pickup_icon {
    display: flex;
    padding: 0.4rem 2rem;
    flex-direction: column;
    align-items: center;
    gap: 1rem;
    font-size: 1.4rem;
    font-weight: 700;
    line-height: 1.55;
    color: #fff;
    letter-spacing: 0.04em;
    border-bottom-right-radius: 0.8rem;
    background: linear-gradient(180deg, #38AEE6 0%, #005296 100%);
}
@media (max-width: 767px) {
    .pickup_icon {
        font-size: 1rem;
        border-bottom-right-radius: 0.4rem;
        padding: 0.2rem 0.8rem;
    }
}

.pickup_card {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 1rem;
}
.pickup_card + .pickup_card {
    margin-top: 2rem;
}
@media (max-width: 767px) {
    .pickup_card + .pickup_card {
        margin-top: 3.2rem;
    }
}
.pickup_card--head {
    flex-shrink: 0;
    display: flex;
    padding: 0 2rem;
    align-items: center;
    gap: 2.4rem;
    align-self: stretch;
}
@media (max-width: 767px) {
    .pickup_card--head {
        gap: 0.8rem;
        padding: 0;
    }
}
.pickup_card--head--img {
    flex-shrink: 0;
    width: 23.8rem;
    aspect-ratio: 238/130;
    border-radius: 0.8rem;
    position: relative;
    overflow: hidden;
}
@media (max-width: 767px) {
    .pickup_card--head--img {
        width: 15rem;
        border-radius: 0.4rem;
    }
}
.pickup_card--head--img img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    -webkit-transition: 0.3s ease;
    transition: 0.3s ease;
}
.pickup_card--head--img .pickup_icon {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
}
.pickup_card--head--item {
    flex-grow: 1;
    -webkit-transition: opacity 0.4s ease;
    transition: opacity 0.4s ease;
}
@media (max-width: 767px) {
    .pickup_card--head--item {
        padding-left: 0.4rem;
    }
}
.pickup_card--head--item .date {
    margin-bottom: 0.8rem;
}
@media (max-width: 767px) {
    .pickup_card--head--item .date {
        display: block;
        margin-bottom: 0;
    }
}
.pickup_card--head--item--ttl {
    font-size: 2.2rem;
    font-weight: 700;
    line-height: 1.55;
    letter-spacing: 0.04em;
    text-align: left;
    padding: 0 0 2.4rem;
    margin: 0 0 0;
    position: relative;
}
@media (max-width: 767px) {
    .pickup_card--head--item--ttl {
        font-size: 1.6rem;
        padding: 0 0 1.2rem;
    }
}
.pickup_card--head--item--ttl .inner {
    display: block;
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}
.pickup_card--head--item--ttl::before {
    content: "";
    display: block;
    width: 100%;
    height: 1px;
    background-color: #D9D9D9;
    position: absolute;
    bottom: 0;
    left: 0;
}
.pickup_card--head--item--ttl::after {
    content: "";
    display: block;
    width: 5.2rem;
    height: 1px;
    background: linear-gradient(90deg, #38AEE6 -6.88%, #005296 121%);
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: 1;
}
.pickup_card--head--btn {
    flex-grow: 1;
}
@media (max-width: 767px) {
    .pickup_card--head--btn .btn_oval_arrow {
        width: 3rem;
    }
}
.pickup_card--head--btn .btn_oval_arrow {
    -webkit-transition: 0.4s ease;
    transition: 0.4s ease;
}
.pickup_card--footer {
    display: flex;
    padding: 0 2rem;
    flex-direction: column;
    align-items: flex-start;
    gap: 1.6rem;
    align-self: stretch;
}
@media (max-width: 767px) {
    .pickup_card--footer {
        flex-direction: row-reverse;
        padding: 0;
    }
}
.pickup_card--footer .desc {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
    font-size: 1.6rem;
    font-weight: 500;
    line-height: 1.95;
    letter-spacing: 0.04em;
    text-align: left;
    padding: 0 2rem 0 0;
    margin: 0 0 0;
    -webkit-transition: opacity 0.4s ease;
    transition: opacity 0.4s ease;
}
@media (max-width: 767px) {
    .pickup_card--footer .desc {
        flex-grow: 1;
        font-size: 1.2rem;
        padding: 0;
    }
}
.pickup_card--footer .archive_list--card--meta {
    justify-content: flex-end;
    width: 100%;
    padding-right: 1.6rem;
    margin: 0;
}
@media (max-width: 767px) {
    .pickup_card--footer .archive_list--card--meta {
        flex-shrink: 0;
        justify-content: start;
        width: 15rem;
        padding-right: 0;
    }
}
@media (min-width: 768px) {
    .pickup_card:hover {
        opacity: 1 !important;
    }
    .pickup_card:hover .pickup_card--head--img img {
        transform: scale(1.1);
    }
    .pickup_card:hover .pickup_card--head--item, .pickup_card:hover .pickup_card--footer .desc {
        opacity: 0.6;
    }
    .pickup_card:hover .btn_oval_arrow {
        transform: scale(0.9);
    }
    .pickup_card:hover .btn_oval_arrow::after {
        animation: loop-move 0.4s ease-out forwards;
        animation-iteration-count: 1;
    }
    .pickup_card:hover .btn_oval_arrow.down::after {
        animation: loop-move-vertical 0.4s ease-out forwards;
        animation-iteration-count: 1;
    }
}

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

投稿

---------------------------------------- */
/* 一覧
------------------------------- */
.archive_ex, .archive_ex.info_ex {
    padding: 8rem 0 4rem;
}
@media (max-width: 767px) {
    .archive_ex, .archive_ex.info_ex {
        padding: 4.8rem 0 4rem;
    }
}
@media (max-width: 767px) {
    .archive_ex .section_head, .archive_ex.info_ex .section_head {
        padding-bottom: 1.7rem;
    }
}

.archive_section {
    padding: 4rem 0 8rem;
}
@media (max-width: 767px) {
    .archive_section {
        padding: 5rem 0 8rem;
    }
}

.category_nav {
    display: flex;
    align-items: stretch;
    justify-content: flex-start;
    flex-wrap: wrap;
    gap: 1.8rem;
    margin-bottom: 4.8rem;
}
@media (max-width: 767px) {
    .category_nav {
        gap: 1.7rem 0.8rem;
        margin-bottom: 3.2rem;
    }
}
.category_nav .tag {
    height: 3.7rem;
    font-size: 1.4rem;
    font-weight: 700;
    padding: 0.6rem 2.4rem;
    background: #F5F5F5;
}
@media (min-width: 768px) {
    .category_nav .tag:not(.active):hover {
        opacity: 1 !important;
        background-color: #D9D9D9;
    }
}
@media (max-width: 767px) {
    .category_nav .tag {
        height: 3.4rem;
        font-size: 1.2rem;
        padding: 0.6rem 2.4rem;
    }
}
.category_nav .active .tag {
    pointer-events: none;
    background-color: #13161B;
    color: #fff !important;
}

.archive_list {
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
    flex-wrap: wrap;
    gap: 4.8rem;
    padding: 0 0 4rem;
}
.archive_list--item {
    width: 38rem;
}
@media (max-width: 767px) {
    .archive_list--item {
        width: 100%;
        width: 32rem;
    }
}
.archive_list--card {
    display: block;
}
@media (min-width: 768px) {
    .archive_list--card:hover {
        opacity: 1 !important;
    }
    .archive_list--card:hover img {
        transform: scale(1.1);
    }
}
.archive_list--card--img {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    aspect-ratio: 380/220;
    border-radius: 0.8rem;
    overflow: hidden;
}
.archive_list--card--img img {
    display: block;
    -webkit-transition: ease-in 0.3s;
    transition: ease-in 0.3s;
    width: auto;
    height: auto;
    max-width: 100%;
    max-height: 100%;
}
.archive_list--card--item {
    padding-top: 1.2rem;
}
@media (max-width: 767px) {
    .archive_list--card--item {
        padding-top: 0.5rem;
    }
}
.archive_list--card--date {
    display: block;
    font-family: "Anta", sans-serif;
    font-size: 1.2rem;
    font-weight: 100;
    line-height: 1.55;
    letter-spacing: 0.04em;
    padding: 0.75rem 0;
}
.archive_list--card--ttl {
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 1.95;
    letter-spacing: 0.04em;
    margin: 1.2rem 0 0;
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}
@media (max-width: 767px) {
    .archive_list--card--ttl {
        font-size: 1.4rem;
        line-height: 1.55;
        margin: 0;
    }
}
.archive_list--card--meta {
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
    flex-wrap: wrap;
    gap: 0.4rem;
    margin-top: 1.6rem;
}
@media (max-width: 767px) {
    .archive_list--card--meta {
        justify-content: flex-end;
    }
}
.archive_list--card--meta .tag {
    background-color: #F5F5F5;
}
@media (max-width: 767px) {
    .archive_list--card--meta .tag {
        height: 2.5rem;
    }
}

/* 詳細
------------------------------- */
.single_section {
    margin-top: 2.4rem;
    margin-top: 1.6rem;
}
.single_section .base {
    width: 144.4rem;
}
@media (max-width: 767px) {
    .single_section .base {
        padding: 0 2.5rem;
    }
}
.single_section--column {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    flex-wrap: nowrap;
    gap: 6.4rem;
}
@media (max-width: 767px) {
    .single_section--column {
        flex-wrap: wrap;
    }
}
.single_section--column--main {
    flex-grow: 1;
}
@media (max-width: 767px) {
    .single_section--column--main {
        width: 100%;
    }
}
.single_section--column--side {
    flex-shrink: 0;
    width: 40rem;
}
@media (max-width: 767px) {
    .single_section--column--side {
        width: 100%;
    }
}

.side_tax_list {
    border-top: 1px solid #D9D9D9;
    margin-bottom: 5.6rem;
}
.side_tax_list--item {
    border-bottom: 1px solid #D9D9D9;
    padding-bottom: 1.6rem;
}
.side_tax_list--item a {
    display: block;
    font-size: 2rem;
    font-weight: 500;
    line-height: 1.55;
    letter-spacing: 0.04em;
    text-align: left;
    margin: 0 0 0;
    padding: 3rem 2rem 0;
}
.side_tax_list--item a .eng {
    display: block;
    font-size: 1.4rem;
    line-height: 1.55;
    letter-spacing: 0.04em;
    color: #005296;
}

.side_bnr_list--item + .side_bnr_list--item {
    margin: 1.6rem 0 0;
}

.bnr_hus_btn {
    display: block;
    border-radius: 0.8rem;
    overflow: hidden;
    position: relative;
}
@media (max-width: 767px) {
    .bnr_hus_btn {
        border-radius: 0.4rem;
    }
}
.bnr_hus_btn img {
    display: block;
    width: 100%;
}
.bnr_hus_btn .btn_oval_arrow {
    position: absolute;
    bottom: 0.8rem;
    right: 1.2rem;
}
@media (max-width: 767px) {
    .bnr_hus_btn .btn_oval_arrow {
        width: 3rem;
        bottom: 0.4rem;
        right: 0.4rem;
    }
}

.single_article {
    padding: 0 3.2rem 0 0.8rem;
}
@media (max-width: 767px) {
    .single_article {
        padding: 0;
    }
}
.single_article--meta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    margin: 0 0 2.4rem;
}
@media (max-width: 767px) {
    .single_article--meta {
        display: block;
        margin: 0 0 1.6rem;
    }
}
.single_article--meta--item {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    flex-wrap: wrap;
    gap: 1.6rem;
}
@media (max-width: 767px) {
    .single_article--meta--item {
        width: 100%;
    }
}
.single_article--meta--tag {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    flex-wrap: wrap;
    gap: 0.4rem;
}
@media (max-width: 767px) {
    .single_article--meta--tag {
        width: 100%;
    }
    .single_article--meta--tag .archive_list--card--meta {
        margin: 0;
    }
}
.single_article--ttl {
    font-size: 4rem;
    font-weight: 700;
    line-height: 1.55;
    letter-spacing: 0.04em;
    text-align: left;
    padding: 0 0 2.4rem;
    margin: 0 0 1.6rem;
    position: relative;
}
@media (max-width: 767px) {
    .single_article--ttl {
        font-size: 2.6rem;
        padding: 0 0 3.2rem;
    }
}
.single_article--ttl::before {
    content: "";
    display: block;
    width: 100%;
    height: 1px;
    background-color: #D9D9D9;
    position: absolute;
    bottom: 0;
    left: 0;
}
.single_article--ttl::after {
    content: "";
    display: block;
    width: 5.2rem;
    height: 1px;
    background: linear-gradient(90deg, #38AEE6 -6.88%, #005296 121%);
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: 1;
}

#toc_container {
    border-radius: 0.8rem;
    border: 0 !important;
    background: #F5F5F5 !important;
    padding: 4rem 6.4rem 6.4rem;
    margin: 0 0 4.8rem;
}
@media (max-width: 767px) {
    #toc_container {
        padding: 0.2rem 1rem 1.6rem 1rem;
        margin: 0 0 2.4rem;
    }
}
#toc_container .toc_title {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 3.2rem;
    font-size: 2.4rem;
    font-weight: 500;
    line-height: 1.55;
    letter-spacing: 0.04em;
}
@media (max-width: 767px) {
    #toc_container .toc_title {
        font-size: 2rem;
        padding: 0.8rem 0;
    }
}
#toc_container .toc_title .toc_toggle a {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 1.6rem;
    text-decoration: none !important;
    font-size: 1.6rem;
    font-weight: 500;
}
@media (max-width: 767px) {
    #toc_container .toc_title .toc_toggle a {
        font-size: 1.4rem;
    }
}
#toc_container .toc_title .toc_toggle a::after {
    content: "";
    display: block;
    width: 2.41rem;
    aspect-ratio: 1/1;
    background: transparent url(../img/icon/close_icon.svg) no-repeat center/100% auto;
}
@media (max-width: 767px) {
    #toc_container .toc_title .toc_toggle a::after {
        width: 2.4rem;
    }
}
#toc_container .toc_title .toc_toggle .toc_brackets {
    display: none !important;
}
#toc_container.contracted {
    padding: 2.4rem 6.4rem 2.4rem;
}
@media (max-width: 767px) {
    #toc_container.contracted {
        padding: 0.2rem 1rem;
    }
}
#toc_container.contracted .toc_title .toc_toggle a::after {
    background-image: url(../img/icon/double-left-small-icon.svg);
    transform: rotate(180deg);
}
#toc_container .toc_list {
    border-radius: 1.2rem;
    background-color: #fff !important;
    padding: 4rem 2.4rem;
    margin: 1.6rem 0 0;
}
@media (max-width: 767px) {
    #toc_container .toc_list {
        padding: 2.4rem 1.8rem;
        margin: 0;
    }
}
#toc_container .toc_list > li {
    position: relative;
    margin: 0 1.6rem;
    padding: 0;
}
@media (max-width: 767px) {
    #toc_container .toc_list > li {
        margin: 0;
    }
}
#toc_container .toc_list > li + li {
    margin-top: 2.4rem;
}
#toc_container .toc_list > li > a {
    display: block;
    font-size: 1.8rem;
    font-weight: 700;
    line-height: 1.55;
    letter-spacing: 0.04em;
    padding: 0 0 0 3.4rem;
    position: relative;
}
@media (max-width: 767px) {
    #toc_container .toc_list > li > a {
        font-size: 1.6rem;
    }
}
#toc_container .toc_list > li > a::before {
    content: "";
    display: block;
    width: 2.4rem;
    aspect-ratio: 1/1.2;
    background: transparent url(../img/icon/accent_mark.svg) no-repeat center/100% auto;
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    left: 0;
}
#toc_container .toc_list > li > a + ul {
    padding: 0.8rem 0 0;
}
@media (max-width: 767px) {
    #toc_container .toc_list > li > a + ul {
        padding: 0.6rem 0 0;
    }
}
#toc_container .toc_list > li ul {
    padding: 0;
    margin: 0 0 0 -1rem;
}
#toc_container .toc_list > li ul li {
    padding: 0 0 0 2.6rem;
    margin: 0;
    position: relative;
}
@media (max-width: 767px) {
    #toc_container .toc_list > li ul li {
        padding: 0 0 0 2rem;
    }
}
#toc_container .toc_list > li ul li + li {
    margin: 0.4rem 0 0;
}
#toc_container .toc_list > li ul li > a {
    display: block;
    font-size: 1.8rem;
    font-weight: 500;
    line-height: 1.55;
    letter-spacing: 0.04em;
    padding: 0 0 0 2.6rem;
    position: relative;
}
@media (max-width: 767px) {
    #toc_container .toc_list > li ul li > a {
        font-size: 1.6rem;
    }
}
#toc_container .toc_list > li ul li > a::before {
    content: "";
    display: block;
    width: 2.4rem;
    aspect-ratio: 1/1.2;
    background: transparent url(../img/icon/dot_icon.svg) no-repeat center/1rem auto;
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    left: 0;
}
#toc_container .toc_list > li ul li > a + ul {
    padding: 0.8rem 0 0;
}
@media (max-width: 767px) {
    #toc_container .toc_list > li ul li > a + ul {
        padding: 0.4rem 0 0;
    }
}
#toc_container .toc_list > li ul li ul li > a {
    font-size: 1.6rem;
}
@media (max-width: 767px) {
    #toc_container .toc_list > li ul li ul li > a {
        font-size: 1.4rem;
    }
}
#toc_container .toc_list > li ul li ul li > a::before {
    aspect-ratio: 1/1.1;
}

.related_section {
    padding: 8rem 0;
}
@media (max-width: 767px) {
    .related_section {
        padding: 6.4rem 0;
    }
}
.related_section .base {
    width: 132rem;
}
@media (min-width: 768px) {
    .related_section .base {
        padding: 0 2.4rem;
    }
}
.related_section .section_head.small {
    margin-bottom: 4rem;
}
@media (max-width: 767px) {
    .related_section .section_head.small {
        margin-bottom: 5.4rem;
    }
}
@media (max-width: 767px) {
    .related_section .section_head.small .section_head--item {
        margin-bottom: 2.4rem;
    }
}

.related_list .archive_list {
    padding: 0 1.8rem;
}
@media (max-width: 767px) {
    .related_list .archive_list {
        gap: 4rem;
        padding: 0 0.5rem;
    }
}

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

ポップアップ

---------------------------------------- */
.js_popup {
    display: none;
}

.js_popup_open {
    cursor: pointer;
}
@media (min-width: 768px) {
    .js_popup_open {
        -webkit-transition: 0.4s;
        transition: 0.4s;
    }
    .js_popup_open:hover {
        opacity: 0.7;
    }
}

/* =======================================

etc

 ======================================= */
/* 横並びリスト
------------------------------- */
ul.many_rows {
    display: block;
    height: auto;
    overflow: hidden;
}
ul.many_rows > li {
    display: block;
    height: auto;
    float: left;
}
ul.two_rows {
    display: block;
    height: auto;
    overflow: hidden;
}
ul.two_rows > li {
    display: block;
    height: auto;
    float: left;
}
ul.two_rows > li:nth-child(2n+2) {
    float: right;
}
ul.three_rows {
    display: block;
    height: auto;
    overflow: hidden;
}
ul.three_rows > li {
    display: block;
    height: auto;
    float: left;
}
ul.three_rows > li:nth-child(3n+2) {
    margin-right: 0;
}
ul.three_rows > li:nth-child(3n+3) {
    float: right;
    margin-right: 0;
}

/*テーブルブロック
------------------------------- */
.table_block {
    display: table;
    table-layout: fixed;
    width: 100%;
}
.table_block > .table_block--cell {
    display: table-cell;
    width: 50%;
    text-align: center;
    vertical-align: middle;
}
@media (max-width: 767px) {
    .table_block._sp_tate {
        display: block;
        table-layout: auto;
    }
    .table_block._sp_tate > .table_block--cell {
        display: block;
        width: 100%;
    }
}

/* flex box
------------------------------- */
.flex_block {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
}

/* 画像ブロック
------------------------------- */
.img_block {
    display: block;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
}
.img_block::after {
    content: "";
    display: block;
    padding-top: 100%;
}

/* object-fit
------------------------------- */
.fit_img {
    display: block;
    object-fit: cover;
    width: 100%;
    height: 100%;
}

@media all and (-ms-high-contrast: none) {
    .fit_img {
        object-fit: cover;
        font-family: "object-fit: cover;";
    }
}
/* ラインマーカー
------------------------------- */
.linemk {
    background: linear-gradient(transparent 70%, #fccb0f 70%);
}

/* その他
------------------------------- */
.tk_shdw {
    text-shadow: 1px 1px 5px rgba(0, 0, 0, 0.5), 1px 0px 5px rgba(0, 0, 0, 0.5), 0px 1px 5px rgba(0, 0, 0, 0.5), 0px 0px 5px rgba(0, 0, 0, 0.5), -1px -1px 5px rgba(0, 0, 0, 0.5), -1px 0px 5px rgba(0, 0, 0, 0.5), 0px -1px 5px rgba(0, 0, 0, 0.5);
}

.tk_shdw_1 {
    text-shadow: 1px 1px 3px rgba(0, 0, 0, 0.5), 1px 0px 3px rgba(0, 0, 0, 0.5), 0px 1px 3px rgba(0, 0, 0, 0.5), 0px 0px 3px rgba(0, 0, 0, 0.5), -1px -1px 3px rgba(0, 0, 0, 0.5), -1px 0px 3px rgba(0, 0, 0, 0.5), 0px -1px 3px rgba(0, 0, 0, 0.5);
}

/* =======================================

ボタン

 ======================================= */
.btn_wrap {
    text-align: center;
    padding: 3rem;
}

@media (max-width: 767px) {
    .btn_wrap {
        padding: 5vw 0;
    }
}
/* btnA
------------------------------- */
.btnA {
    display: inline-block;
    min-width: 15.8rem;
    padding: 0 1rem;
}
.btnA > a {
    display: block;
    height: 4rem;
    font-size: 1.6rem;
    line-height: 3.6rem;
    background: url("../img/parts/arrow_02.png") right 1.2rem center no-repeat;
    -webkit-background-size: 0.8rem auto;
    background-size: 0.8rem auto;
    border: 0.2rem solid #ccc;
    -moz-border-radius: 0.5rem;
    -webkit-border-radius: 0.5rem;
    border-radius: 0.5rem;
    transform: rotate(0.028deg);
    -o-transform: rotate(0.028deg);
    -ms-transform: rotate(0.028deg);
    -moz-transform: rotate(0.028deg);
    -webkit-transform: rotate(0.028deg);
}

@media (max-width: 767px) {
    .btnA {
        min-width: 40vw;
        padding: 0 1.3vw;
    }
    .btnA > a {
        display: block;
        width: 100%;
        height: 9.3vw;
        font-size: 3.733vw;
        line-height: -webkit-calc(9.3vw - 2px);
        line-height: calc(9.3vw - 2px);
        background: url("../img/parts/arrow_02.png") right 2.7vw center no-repeat #fff;
        -webkit-background-size: 1.6vw auto;
        background-size: 1.6vw auto;
    }
}
/* btnB
------------------------------- */
.btnB {
    display: inline-block;
    width: 20rem;
    padding: 0 1rem;
}
.btnB > a {
    display: block;
    padding-right: 1.2rem;
    height: 4rem;
    font-size: 1.6rem;
    line-height: 3.8rem;
    background: url("../img/parts/arrow_02.png") right 1.2rem center no-repeat;
    -webkit-background-size: 0.8rem auto;
    background-size: 0.8rem auto;
    border: 0.1rem solid #ccc;
}

@media (max-width: 767px) {
    .btnB {
        width: 45vw;
        padding: 0 1.3vw;
    }
    .btnB > a {
        display: block;
        width: 100%;
        padding-right: 4.5vw;
        height: 9.3vw;
        font-size: 3.2vw;
        line-height: -webkit-calc(9.3vw - 2px);
        line-height: calc(9.3vw - 2px);
        background: url("../img/parts/arrow_02.png") right 2.7vw center no-repeat #fff;
        -webkit-background-size: 1.6vw auto;
        background-size: 1.6vw auto;
        border: 1px solid #ccc;
    }
}
/* btnC
------------------------------- */
.btnC {
    display: inline-block;
    min-width: 16.7rem;
    height: 3rem;
    font-size: 1.6rem;
    line-height: 2rem;
    color: #fff;
    text-align: center;
    padding: 0.5rem 1rem;
    background-color: #ccc;
    -moz-border-radius: 0.5rem;
    -webkit-border-radius: 0.5rem;
    border-radius: 0.5rem;
}
.btnC.date {
    background-color: transparent;
    color: #333;
    text-align: left;
    min-width: 0;
    padding-left: 0;
    font-weight: bold;
}

@media (max-width: 767px) {
    .btnC {
        display: inline-block;
        min-width: 37vw;
        height: 5.3vw;
        font-size: 3.7vw;
        line-height: 5.3vw;
        color: #fff;
        text-align: center;
        padding: 0 3vw;
        background-color: #ccc;
        -moz-border-radius: 5px;
        -webkit-border-radius: 5px;
        border-radius: 5px;
    }
}
/* btn top
------------------------------- */
.btn_top {
    text-align: center;
}
.btn_top a {
    display: inline-block;
    padding: 1em 2.5em;
    line-height: 1;
    border: 1px solid #0066cc;
    text-decoration: none;
}
@media (max-width: 767px) {
    .btn_top a {
        font-size: 3.6vw;
    }
}

/* LINK
------------------------------- */
.add_arrow::after {
    content: "▶";
    color: #104070;
    margin-left: 1rem;
    font-size: 0.8em;
    display: inline-block;
}

.add_pdf::after {
    content: "";
    display: inline-block;
    width: 1em;
    height: 1em;
    margin-left: 0.3em;
    margin-right: 0.2em;
    background-image: url("../img/parts/icon-pdf.png");
    background-size: auto 98%;
    background-position: 0 center;
    background-repeat: no-repeat;
    transform: rotate(-0.028deg);
    -o-transform: rotate(-0.028deg);
    -ms-transform: rotate(-0.028deg);
    -moz-transform: rotate(-0.028deg);
    -webkit-transform: rotate(-0.028deg);
    vertical-align: middle;
}

@media (min-width: 768px) {
    .hov_unln {
        position: relative;
        display: inline-block !important;
    }
    .hov_unln::before {
        position: absolute;
        bottom: 0rem;
        left: 0;
        content: "";
        width: 100%;
        height: 0.2rem;
        background: #ccc;
        transform: scale(0, 1);
        transform-origin: left top;
        transition: transform 0.3s;
    }
    .hov_unln:hover::before {
        transform: scale(1, 1);
    }
}
.hov_unln.add_arrow::before, .hov_unln.add_pdf::before {
    width: -webkit-calc(100% - 1em - 1rem);
    width: calc(100% - 1rem - 0.8em);
}

/* btn-01
------------------------------- */
.link_ttl {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: nowrap;
    border-bottom: 1px solid #D9D9D9;
    padding-bottom: 2.4rem;
}
@media (max-width: 767px) {
    .link_ttl {
        padding-bottom: 2.2rem;
    }
}
.link_ttl--ttl {
    flex-grow: 1;
    display: block;
    width: auto;
}
.link_ttl--ttl img {
    display: block;
    width: auto;
    height: 2.7rem;
}
.link_ttl .btn_oval_arrow {
    flex-shrink: 0;
}

@media (min-width: 768px) {
    .link_ttl .link_ttl--ttl, .link_ttl .btn_oval_arrow {
        -webkit-transition: 0.4s ease;
        transition: 0.4s ease;
    }
    .link_ttl:hover {
        opacity: 1 !important;
    }
    .link_ttl:hover .link_ttl--ttl {
        -webkit-transform: translateX(1rem);
        transform: translateX(1rem);
    }
    .link_ttl:hover .btn_oval_arrow {
        transform: scale(0.9);
    }
    .link_ttl:hover .btn_oval_arrow::after {
        animation: loop-move 0.4s ease-out forwards;
        animation-iteration-count: 1;
    }
    .link_ttl:hover .btn_oval_arrow.up::after {
        animation: loop-move-vertical-up 0.4s ease-out forwards;
        animation-iteration-count: 1;
    }
}

.btn_oval_arrow {
    display: block;
    width: 4.8rem;
    aspect-ratio: 1/1;
    border-radius: 10rem;
    background: linear-gradient(90deg, #38AEE6 -6.88%, #005296 121%);
    box-shadow: 0px 0px 0.4rem rgba(0, 0, 0, 0.25);
    position: relative;
    overflow: hidden;
}
@media (max-width: 767px) {
    .btn_oval_arrow {
        width: 3.6rem;
    }
}
.btn_oval_arrow::after {
    content: "";
    display: block;
    width: 1.35rem;
    aspect-ratio: 135/115;
    background: transparent url(../img/icon/arrow-wh.svg) no-repeat center/100% 100%;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translateY(-50%) translateX(-50%);
    transform: translateY(-50%) translateX(-50%);
}
@media (max-width: 767px) {
    .btn_oval_arrow::after {
        width: 1.012rem;
    }
}
.btn_oval_arrow.prev::after {
    background-image: url(../img/icon/arrow-wh-left.svg);
}
.btn_oval_arrow.up {
    background: linear-gradient(180deg, #38AEE6 0%, #005296 100%);
}
.btn_oval_arrow.up::after {
    width: 1.15rem;
    aspect-ratio: 115/135;
    background-image: url(../img/icon/arrow-wh-vertical.svg);
}
@media (max-width: 767px) {
    .btn_oval_arrow.up::after {
        width: 0.862rem;
    }
}
.btn_oval_arrow.down::after {
    width: 1.15rem;
    aspect-ratio: 115/135;
    background-image: url(../img/icon/arrow-wh-down.svg);
}
@media (max-width: 767px) {
    .btn_oval_arrow.down::after {
        width: 0.862rem;
    }
}
.btn_oval_arrow.reverse::after {
    -webkit-transform: translateY(-50%) translateX(-50%) rotate(180deg);
    transform: translateY(-50%) translateX(-50%) rotate(180deg);
}
.btn_oval_arrow.double::after {
    width: 4rem;
    aspect-ratio: 1/1;
    background-image: url(../img/icon/angles_wh.svg);
}
.btn_oval_arrow.pdf::after {
    width: 1.3rem;
    aspect-ratio: 13/15;
    background-image: url(../img/icon/pdf_icon.svg);
}
@media (max-width: 767px) {
    .btn_oval_arrow.popup {
        width: 3.6rem !important;
    }
}
.btn_oval_arrow.popup::after {
    width: 2.4rem;
    aspect-ratio: 24/24;
    background-image: url(../img/icon/popup_icon.svg.svg);
}
@media (max-width: 767px) {
    .btn_oval_arrow.popup::after {
        width: 1.8rem;
    }
}

.text_link {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: nowrap;
    gap: 2rem;
    width: fit-content;
}
@media (max-width: 767px) {
    .text_link {
        gap: 0.8rem;
    }
}
.text_link--ttl {
    font-size: 1.4rem;
    font-weight: 700;
    line-height: 1.55;
    letter-spacing: 0.04em;
    padding: 0 0.8rem 0.8rem;
    position: relative;
}
@media (max-width: 767px) {
    .text_link--ttl {
        font-size: 1.2rem;
    }
}
.text_link--ttl::after {
    content: "";
    display: block;
    width: 100%;
    border-bottom: 1px solid #13161B;
    position: absolute;
    bottom: 0;
    left: 0;
    transform-origin: right;
    -webkit-transition: 0.3s ease;
    transition: 0.3s ease;
}
.text_link .btn_oval_arrow {
    width: 4.8rem;
}
@media (max-width: 767px) {
    .text_link .btn_oval_arrow {
        width: 3.2rem;
    }
}

@media (min-width: 768px) {
    .text_link .btn_oval_arrow {
        -webkit-transition: 0.4s ease;
        transition: 0.4s ease;
    }
    .text_link:hover {
        opacity: 1 !important;
    }
    .text_link:hover .text_link--ttl::after {
        transform: scaleX(0);
    }
    .text_link:hover .btn_oval_arrow {
        transform: scale(0.9);
    }
    .text_link:hover .btn_oval_arrow::after {
        animation: loop-move 0.4s ease-out forwards;
        animation-iteration-count: 1;
    }
    .text_link:hover .btn_oval_arrow.down::after {
        animation: loop-move-vertical 0.4s ease-out forwards;
        animation-iteration-count: 1;
    }
}

.btn_square {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    width: 28.8rem;
    min-height: 6.1rem;
    font-weight: 700 !important;
    font-size: 1.6rem;
    line-height: 1.55;
    letter-spacing: 0.04em;
    color: #FFFFFF !important;
    background: linear-gradient(180deg, #38AEE6 0%, #005296 100%);
    border: 1px solid #E6E6E6;
    box-shadow: 0.2rem 0.2rem 0.2rem rgba(0, 0, 0, 0.15);
    border-radius: 0.4rem;
    padding: 1.2rem 1.6rem 1.2rem 3.2rem;
    position: relative;
    z-index: 1;
    -webkit-transition: 0.4s ease !important;
    transition: 0.4s ease !important;
}
@media (max-width: 767px) {
    .btn_square {
        min-height: 5.4rem;
        font-size: 1.4rem;
        padding: 1.2rem 3rem 1.2rem 2.2rem;
    }
}
.btn_square::before {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    background: #fff;
    -webkit-transition: 0.4s ease !important;
    transition: 0.4s ease !important;
    opacity: 0;
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
}
.btn_square::after {
    content: "";
    display: block;
    width: 1.687rem;
    aspect-ratio: 16.87/14.37;
    background: transparent url(../img/icon/arrow-wh-blue.svg) no-repeat center right 0/auto 100%;
    -webkit-transition: 0.4s ease !important;
    transition: 0.4s ease !important;
}
@media (max-width: 767px) {
    .btn_square::after {
        background: transparent url(../img/icon/arrow-wh.svg) no-repeat center/100% 100%;
    }
}
@media (min-width: 768px) {
    .btn_square:hover {
        opacity: 1 !important;
        color: #13161B !important;
    }
    .btn_square:hover::before {
        opacity: 1;
    }
    .btn_square:hover::after {
        background-position: center left 0;
    }
}
.btn_square.wht {
    background: #fff;
    color: #13161B !important;
}
.btn_square.wht::before {
    background: linear-gradient(180deg, #38AEE6 0%, #005296 100%);
}
.btn_square.wht::after {
    background-image: url(../img/icon/arrow-blue-wh.svg);
}
@media (max-width: 767px) {
    .btn_square.wht::after {
        background-image: url(../img/icon/arrow-blue.svg);
    }
}
@media (min-width: 768px) {
    .btn_square.wht:hover {
        color: #fff !important;
    }
}
.btn_square.reverse {
    flex-direction: row-reverse;
    justify-content: flex-end;
    gap: 1.2rem;
}
.btn_square.reverse::after {
    transform: rotate(180deg);
}

.btn-01 {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 1.038rem;
    width: 11rem;
    height: 100%;
    background: linear-gradient(180deg, #38AEE6 0%, #005296 100%);
}
.btn-01::after {
    content: "";
    display: block;
    width: 1.125rem;
    aspect-ratio: 11.25/9.58;
    background: transparent url(../img/icon/arrow-wh.svg) no-repeat center/100% 100%;
}

/* =======================================

ヘッダー

 ======================================= */
.header_wrap {
    width: 100%;
    position: sticky;
    top: 0;
    z-index: 1000;
}

.header {
    width: 100%;
}
.header--top {
    display: flex;
    align-items: stretch;
    justify-content: flex-start;
    flex-wrap: nowrap;
    gap: 0.1rem;
    gap: calc(var(--custom-rem) * 0.1);
    width: 100%;
    height: 6.3rem;
    height: calc(var(--custom-rem) * 6.3);
    background-color: #D9D9D9;
    border-bottom: 0.1rem solid #D9D9D9;
    border-bottom: calc(var(--custom-rem) * 0.1) solid #D9D9D9;
}
@media (max-width: 767px) {
    .header--top {
        height: 5.2rem;
        height: calc(var(--custom-rem) * 5.2);
        border-bottom: 0;
    }
}
.header--top--logo {
    flex-shrink: 0;
    width: 12.1rem;
    width: calc(var(--custom-rem) * 12.1);
    height: 100%;
    background-color: #13161B;
}
.header--top--logo a {
    display: block;
    width: 100%;
    height: 100%;
}
.header--top--logo img {
    display: block;
    width: auto;
    height: 100%;
    margin: 0 auto;
}
.header--top--navi {
    flex-grow: 1;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    flex-wrap: nowrap;
    gap: 3.2rem;
    gap: calc(var(--custom-rem) * 3.2);
    height: 100%;
    background-color: #13161B;
    padding: 0 2.4rem;
    padding: 0 calc(var(--custom-rem) * 2.4);
}
@media (max-width: 767px) {
    .header--top--navi {
        justify-content: space-between;
        gap: 1rem;
        gap: calc(var(--custom-rem) * 1);
        padding: 0 0.8rem;
        padding: 0 calc(var(--custom-rem) * 0.8);
    }
}
.header--top--navi--ttl {
    width: 29.9rem;
    width: calc(var(--custom-rem) * 29.9);
    font-size: 1.6rem;
    font-size: calc(var(--custom-rem) * 1.6);
    font-weight: 700;
    line-height: 1.55;
    color: #fff;
    letter-spacing: 0.04em;
}
.header--top--navi--list {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    flex-wrap: nowrap;
    gap: 3.2rem;
    gap: calc(var(--custom-rem) * 3.2);
}
@media (max-width: 767px) {
    .header--top--navi--list {
        gap: 2rem;
        gap: calc(var(--custom-rem) * 2);
    }
}
.header--top--navi--list .item {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: nowrap;
    gap: 0.8rem;
    gap: calc(var(--custom-rem) * 0.8);
}
@media (max-width: 767px) {
    .header--top--navi--list .item {
        gap: 1.2rem;
        gap: calc(var(--custom-rem) * 1.2);
    }
}
.header--top--navi--list .item .accent {
    display: block;
    width: auto;
    height: 3rem;
    height: calc(var(--custom-rem) * 3);
}
@media (max-width: 767px) {
    .header--top--navi--list .item .accent {
        height: 2.4rem;
        height: calc(var(--custom-rem) * 2.4);
        margin-right: 0.4rem;
        margin-right: calc(var(--custom-rem) * 0.4);
    }
}
.header--top--navi--list .item .ico {
    display: block;
    width: 4rem;
    width: calc(var(--custom-rem) * 4);
}
@media (max-width: 767px) {
    .header--top--navi--list .item .ico {
        width: 3.8rem;
        width: calc(var(--custom-rem) * 3.8);
    }
}
.header--top--navi--list .item .ico img {
    display: block;
    width: 100%;
    height: 100%;
}
.header--top--navi--list .item.menu_btn_wrap {
    width: 4rem;
    width: calc(var(--custom-rem) * 4);
}
.header--top--navi--list .item.menu_btn_wrap .menu_btn {
    width: 2rem;
    width: calc(var(--custom-rem) * 2);
    height: 1.423rem;
    height: calc(var(--custom-rem) * 1.423);
}
.header--top--navi--list .item.menu_btn_wrap .menu_btn::after {
    width: 1.4rem;
    width: calc(var(--custom-rem) * 1.4);
    left: 0.6rem;
    left: calc(var(--custom-rem) * 0.6);
}
.header--top--bnr {
    flex-shrink: 0;
    width: auto;
    height: 100%;
}
.header--top--bnr a {
    display: block;
    width: 100%;
    height: 100%;
}
.header--top--bnr a img {
    display: block;
    width: auto;
    height: 100%;
}
.header--btm {
    display: flex;
    align-items: stretch;
    justify-content: space-between;
    flex-wrap: wrap;
    height: 3.8rem;
    height: calc(var(--custom-rem) * 3.8);
}
.header--btm--item {
    height: 100%;
    background-color: #D9D9D9;
    font-size: 1.4rem;
    font-size: calc(var(--custom-rem) * 1.4);
    font-weight: 700;
    line-height: 1.55;
    letter-spacing: 0.04em;
    color: #fff;
    clip-path: polygon(0 0, 100% 0, calc(100% - 3.8rem) 100%, 0% 100%);
}
.header--btm--item a {
    font-weight: 700;
}
.header--btm--list {
    display: flex;
    align-items: stretch;
    justify-content: space-between;
    flex-wrap: nowrap;
    gap: 0.1rem;
    gap: calc(var(--custom-rem) * 0.1);
    height: 100%;
}
.header--btm--list .item {
    height: 100%;
}
.header--btm--list .btn {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 0.7rem;
    gap: calc(var(--custom-rem) * 0.7);
    width: 12.1rem;
    width: calc(var(--custom-rem) * 12.1);
    height: 100%;
    background-color: #13161B;
}
.header--btm--list .btn img {
    display: block;
    width: 2.4rem;
    width: calc(var(--custom-rem) * 2.4);
}
.header--btm--list .link {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 1.038rem;
    gap: calc(var(--custom-rem) * 1.038);
    width: 11rem;
    width: calc(var(--custom-rem) * 11);
    height: 100%;
    background: linear-gradient(180deg, #38AEE6 0%, #005296 100%);
}
.header--btm--list .link::after {
    content: "";
    display: block;
    width: 1.125rem;
    width: calc(var(--custom-rem) * 1.125);
    aspect-ratio: 11.25/9.58;
    background: transparent url(../img/icon/arrow-wh.svg) no-repeat center/100% 100%;
}
.header--btm--list .link.wide {
    width: 20rem;
    width: calc(var(--custom-rem) * 20);
}
.header--btm--list .link.last {
    width: 14.8rem;
    width: calc(var(--custom-rem) * 14.8);
    padding-right: 3.8rem;
    padding-right: calc(var(--custom-rem) * 3.8);
}
.header--btm--item.menu {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    flex-wrap: wrap;
    width: 17.1rem;
    width: calc(var(--custom-rem) * 17.1);
    gap: 0.4rem;
    gap: calc(var(--custom-rem) * 0.4);
    background-color: #13161B;
    padding-left: 3.3rem;
    padding-left: calc(var(--custom-rem) * 3.3);
    clip-path: polygon(2.1rem 0, 100% 0, 100% 100%, 0 100%);
    clip-path: polygon(calc(var(--custom-rem) * 2.1) 0, 100% 0, 100% 100%, 0 100%);
}
.header--btm--item.menu .desc {
    font-weight: 700;
    font-size: 1.4rem;
    font-size: calc(var(--custom-rem) * 1.4);
    position: relative;
}

/*メニューボタン*/
.menu_btn {
    position: relative;
    width: 1.6rem;
    width: calc(var(--custom-rem) * 1.6);
    height: 1.2rem;
    height: calc(var(--custom-rem) * 1.2);
    background-color: transparent;
}
.menu_btn--child {
    display: block;
    width: 100%;
    position: absolute;
    top: 50%;
    right: 0;
    -webkit-transform: translateY(-50%) translateX(0);
    transform: translateY(-50%) translateX(0);
}
.menu_btn--child::before {
    content: "";
    display: block;
    width: 100%;
    height: calc(var(--custom-rem) * 0.13);
    background-color: #fff;
    -webkit-transition: 0.6s;
    transition: 0.6s;
}
.menu_btn::before {
    content: "";
    display: block;
    width: 100%;
    height: calc(var(--custom-rem) * 0.13);
    position: absolute;
    top: 0;
    left: 0;
    background-color: #fff;
    -webkit-transition: 0.6s;
    transition: 0.6s;
}
.menu_btn::after {
    content: "";
    display: block;
    width: 100%;
    height: calc(var(--custom-rem) * 0.13);
    position: absolute;
    bottom: 0;
    left: 0;
    background-color: #fff;
    -webkit-transition: 0.6s;
    transition: 0.6s;
}
._menu_open .menu_btn .menu_btn--child::before {
    width: 0;
    opacity: 0;
}
._menu_open .menu_btn::before {
    width: 100%;
    top: 50%;
    -webkit-transform: rotate(45deg) translateY(-50%);
    transform: rotate(45deg) translateY(-50%);
}
._menu_open .menu_btn::after {
    width: 100% !important;
    top: 50%;
    bottom: auto;
    left: 0 !important;
    -webkit-transform: rotate(-45deg) translateY(-50%);
    transform: rotate(-45deg) translateY(-50%);
}

.header--btm--item.menu .text_close {
    -webkit-transition: 0.4s;
    transition: 0.4s;
}
._menu_open .header--btm--item.menu .text_close {
    opacity: 0;
}
.header--btm--item.menu .text_open {
    display: block;
    letter-spacing: 0;
    text-align: left;
    white-space: nowrap;
    -webkit-transition: 0.4s;
    transition: 0.4s;
    position: absolute;
    top: 0;
    right: 0;
    opacity: 0;
    pointer-events: none;
}
._menu_open .header--btm--item.menu .text_open {
    opacity: 1;
}

@media (max-width: 1440px) and (min-width: 1331px) {
    .header--top--navi {
        gap: calc(var(--custom-rem) * 1);
        padding: 0 calc(var(--custom-rem) * 1);
    }
    .header--top--navi--ttl {
        flex-shrink: 0;
        width: auto;
        font-size: calc(var(--custom-rem) * 1.4);
    }
    .header--top--navi--list {
        flex-grow: 1;
        gap: calc(var(--custom-rem) * 1);
    }
    .header--top--navi--list .item {
        gap: calc(var(--custom-rem) * 0.4);
    }
    .header--top--navi--list .item .accent {
        margin-right: 0.4rem;
    }
    .header--top--navi--list .item .ico {
        width: calc(var(--custom-rem) * 2.9333);
    }
    .header--btm--list .btn img {
        width: calc(var(--custom-rem) * 2);
    }
    .header--btm--item.menu .desc {
        font-size: calc(var(--custom-rem) * 1.4);
    }
}
@media (max-width: 1330px) and (min-width: 1061px) {
    .header--top--navi {
        padding: calc(var(--custom-rem) * 1);
    }
    .header--top--navi--ttl {
        display: none !important;
    }
    .header--top--navi--list {
        flex-grow: 1;
        gap: calc(var(--custom-rem) * 1);
    }
    .header--top--navi--list .item {
        gap: calc(var(--custom-rem) * 0.4);
    }
    .header--top--navi--list .item .accent {
        margin-right: 0.4rem;
    }
    .header--top--navi--list .item .ico {
        width: calc(var(--custom-rem) * 3.2);
    }
    .header--btm--list .btn img {
        width: calc(var(--custom-rem) * 2);
    }
    .header--btm--item.menu .desc {
        font-size: calc(var(--custom-rem) * 1.4);
    }
}
@media (max-width: 1060px) and (min-width: 768px) {
    .header--top--navi {
        padding: calc(var(--custom-rem) * 1);
    }
    .header--top--navi--ttl {
        display: none !important;
    }
    .header--top--navi--list {
        gap: calc(var(--custom-rem) * 0.8);
    }
    .header--top--navi--list .item {
        gap: calc(var(--custom-rem) * 0.4);
    }
    .header--top--navi--list .item .accent {
        display: none;
    }
    .header--top--navi--list .item .ico {
        width: calc(var(--custom-rem) * 3.2);
    }
    .header--btm--item {
        clip-path: none;
    }
    .header--btm--list .item:not(.first) {
        display: none;
    }
    .header--btm--list .btn {
        gap: calc(var(--custom-rem) * 1.1);
    }
    .header--btm--list .btn img {
        width: calc(var(--custom-rem) * 2);
    }
    .header--btm--item.menu .desc {
        font-size: calc(var(--custom-rem) * 1.4);
    }
}
/* ----------------------------------------

メガメニュー

---------------------------------------- */
#js_menu, #over_ray {
    display: none;
}

@media (min-width: 768px) {
    .js_menu_btn {
        cursor: pointer;
        -webkit-transition: 0.4s;
        transition: 0.4s;
    }
    .js_menu_btn:hover {
        opacity: 0.7;
    }
}

.mega_menu_title a {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: nowrap;
}
.mega_menu_title .inner {
    flex-grow: 1;
    display: block;
}
.mega_menu_title .inner .eng {
    display: block;
    width: 100%;
    font-family: "Anta", sans-serif;
    font-size: 2.4rem;
    font-weight: 400;
    line-height: 1.2;
    letter-spacing: 0.03em;
    text-align: left;
    padding: 0 0 0;
    margin: 0 0 0;
}
@media (max-width: 767px) {
    .mega_menu_title .inner .eng {
        font-size: 1.3rem;
        line-height: 1.55;
        letter-spacing: 0.04em;
    }
}
.mega_menu_title .btn_oval_arrow {
    width: 2.8rem;
}
@media (max-width: 767px) {
    .mega_menu_title .btn_oval_arrow {
        width: 2.4rem;
    }
}
.mega_menu_title .btn_oval_arrow::after {
    background-size: 0.9rem auto;
}
@media (max-width: 767px) {
    .mega_menu_title .btn_oval_arrow::after {
        background-size: 0.8rem auto;
    }
}
@media (max-width: 767px) {
    .mega_menu_title.hus_img {
        padding: 0 !important;
    }
    .mega_menu_title.hus_img a {
        aspect-ratio: 16/6.7;
        color: #fff;
        border-radius: 0.4rem;
        border: 1px solid #E6E6E6;
        box-shadow: 2px 2px 2px 0 rgba(0, 0, 0, 0.15);
        padding: 1.5rem 1rem 1.6rem 1rem;
        position: relative;
        overflow: hidden;
    }
    .mega_menu_title.hus_img .image {
        width: 100%;
        height: 100%;
        position: absolute;
        top: 0;
        left: 0;
        background-color: #13161B;
    }
    .mega_menu_title.hus_img .image img {
        display: block;
        width: 100%;
        height: 100%;
        object-fit: cover;
        opacity: 0.4;
    }
    .mega_menu_title.hus_img .inner {
        position: relative;
        z-index: 1;
    }
    .mega_menu_title.hus_img .inner .eng {
        font-size: 1.6rem;
    }
    .mega_menu_title.hus_img .inner .bdr_mark_ttl {
        font-size: 1.1rem;
        line-height: 1.55;
        letter-spacing: 0.04em;
        margin: -0.6rem 0 0;
        padding: 0;
        opacity: 0.8;
    }
    .mega_menu_title.hus_img .inner .bdr_mark_ttl::before {
        display: none;
    }
}

.bdr_mark_ttl {
    display: block;
    font-size: 1.4rem;
    font-weight: 500;
    line-height: 1.2;
    letter-spacing: 0.03em;
    text-align: left;
    padding: 0.2rem 0 0.2rem 2.8rem;
    margin: 0 0 0;
    position: relative;
}
@media (max-width: 767px) {
    .bdr_mark_ttl {
        padding: 0.2rem 0 0.2rem 2.4rem;
    }
}
.bdr_mark_ttl::before {
    content: "";
    display: block;
    width: 1rem;
    height: 1px;
    background-color: #13161B;
    position: absolute;
    top: 50%;
    left: 0.5rem;
    -webkit-transform: translateY(-50%) translateX(0);
    transform: translateY(-50%) translateX(0);
}

.mega_menu {
    width: 100%;
    background: #FFF;
    padding: 10.1rem 0 0;
    padding: calc(var(--custom-rem) * 10.1) 0 0;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 999;
}
@media (max-width: 767px) {
    .mega_menu {
        height: 100dvh;
        padding: 0;
    }
}
.mega_menu--inner {
    padding: 4.9rem 0 4.8rem;
    box-shadow: 0 0.4rem 0.4rem 0 rgba(0, 0, 0, 0.25);
}
@media (max-width: 767px) {
    .mega_menu--inner {
        height: 100%;
        overflow-y: scroll;
        padding: 8.4rem 0 0;
    }
}
.mega_menu .base {
    width: 144rem;
}
.mega_menu--go_back {
    margin: 0 0 2.4rem;
}
.mega_menu--go_back a {
    display: block;
    width: 100%;
}
.mega_menu--go_back img {
    display: block;
    width: 100%;
}
.mega_menu--header {
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
    flex-wrap: wrap;
    position: relative;
    padding: 0 0 4.2rem;
}
@media (min-width: 768px) {
    .mega_menu--header::before {
        content: "";
        display: block;
        width: 100%;
        height: 1px;
        background-color: #D9D9D9;
        position: absolute;
        bottom: 0;
        left: 0;
    }
    .mega_menu--header::after {
        content: "";
        display: block;
        width: 5.2rem;
        height: 1px;
        background: linear-gradient(90deg, #38AEE6 -6.88%, #005296 121%);
        position: absolute;
        bottom: 0;
        left: 0;
        z-index: 1;
    }
}
@media (max-width: 767px) {
    .mega_menu--header {
        gap: 2.4rem;
        padding: 0;
    }
}
.mega_menu--header--item {
    width: 50%;
}
@media (max-width: 767px) {
    .mega_menu--header--item {
        width: 100%;
    }
}
.mega_menu--header--column {
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
    flex-wrap: nowrap;
    gap: 4rem;
}
@media (max-width: 767px) {
    .mega_menu--header--column {
        align-items: center;
        justify-content: space-between;
        flex-wrap: wrap;
        gap: 1.2rem 0;
    }
}
@media (min-width: 768px) {
    .mega_menu--header--column.align_center {
        align-items: center;
    }
}
@media (min-width: 768px) {
    .mega_menu--header--column.hus_bdr {
        padding-bottom: 3.5rem;
        margin-bottom: 3.5rem;
        position: relative;
    }
    .mega_menu--header--column.hus_bdr::before {
        content: "";
        display: block;
        width: 100%;
        height: 1px;
        background-color: #D9D9D9;
        position: absolute;
        bottom: 0;
        left: 0;
    }
    .mega_menu--header--column.hus_bdr::after {
        content: "";
        display: block;
        width: 5.2rem;
        height: 1px;
        background: linear-gradient(90deg, #38AEE6 -6.88%, #005296 121%);
        position: absolute;
        bottom: 0;
        left: 0;
        z-index: 1;
    }
}
@media (max-width: 767px) {
    .mega_menu--header--column.hus_bdr {
        margin-bottom: 2.4rem;
    }
}
.mega_menu--header--column--ttl {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    flex-wrap: nowrap;
    gap: 1.6rem;
    width: 100%;
}
.mega_menu--header--column--ttl .title {
    flex-shrink: 0;
    display: block;
    font-family: "Anta", sans-serif;
    font-size: 2rem;
    font-weight: 400;
    line-height: 1.2;
    letter-spacing: 0.03em;
    text-align: left;
    padding: 0 0 0;
    margin: 0 0 0;
}
.mega_menu--header--column--ttl .line {
    flex-grow: 1;
    display: block;
    width: 100%;
    height: 1px;
    position: relative;
}
.mega_menu--header--column--ttl .line::before {
    content: "";
    display: block;
    width: 100%;
    height: 1px;
    background-color: #D9D9D9;
    position: absolute;
    bottom: 0;
    left: 0;
}
.mega_menu--header--column--ttl .line::after {
    content: "";
    display: block;
    width: 5.2rem;
    height: 1px;
    background: linear-gradient(90deg, #38AEE6 -6.88%, #005296 121%);
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: 1;
}
.mega_menu--header--column--img {
    flex-shrink: 0;
    width: 25.7rem;
}
@media (max-width: 767px) {
    .mega_menu--header--column--img {
        width: 16rem;
        padding: 0.6rem 1rem 0.6rem;
        border-radius: 0.4rem;
        border: 1px solid #E6E6E6;
        background: #FFF;
        box-shadow: 2px 2px 2px 0 rgba(0, 0, 0, 0.15);
    }
}
@media (min-width: 768px) {
    .mega_menu--header--column--img.small {
        width: 16rem;
    }
}
.mega_menu--header--column--img .image {
    width: 14rem;
    height: 10rem;
    border-radius: 0.4rem;
    overflow: hidden;
}
.mega_menu--header--column--img .image.small {
    height: 6.4rem;
}
.mega_menu--header--column--img .image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
@media (max-width: 767px) {
    .mega_menu--header--column--img .mega_menu_title {
        margin-top: 0.6rem;
    }
}
@media (max-width: 767px) {
    .mega_menu--header--column--img .mega_menu_title .bdr_mark_ttl {
        font-size: 0.9rem;
        font-weight: 600;
        line-height: 1.55;
        letter-spacing: 0.04em;
        padding: 0;
        margin-top: -0.1rem;
        opacity: 0.5;
    }
    .mega_menu--header--column--img .mega_menu_title .bdr_mark_ttl::before {
        display: none;
    }
}
.mega_menu--header--column--item {
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
    flex-wrap: wrap;
    gap: 1.9rem 3.2rem;
    flex-grow: 1;
    padding: 0 4rem 0 0;
}
@media (max-width: 767px) {
    .mega_menu--header--column--item {
        gap: 1.1rem;
        flex-grow: 0;
        width: 16rem;
        padding: 0;
    }
}
@media (min-width: 768px) {
    .mega_menu--header--column--item.small {
        padding: 0 2rem 0 0;
    }
}
@media (max-width: 767px) {
    .mega_menu--header--column--item > li {
        width: 100%;
    }
}
.mega_menu--header--column--item .bdr_mark_ttl {
    min-width: 14.3rem;
}
@media (max-width: 767px) {
    .mega_menu--header--column--item .bdr_mark_ttl {
        width: 100%;
        min-width: 0;
    }
}
.mega_menu--footer {
    padding: 4.2rem 0 0;
}
@media (max-width: 767px) {
    .mega_menu--footer {
        padding-top: 2.4rem;
    }
}
.mega_menu--footer--column {
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
    flex-wrap: wrap;
    gap: 12rem;
}
@media (max-width: 767px) {
    .mega_menu--footer--column {
        justify-content: space-between;
        gap: 1.3rem 0;
    }
}
.mega_menu--footer .mega_menu_title {
    min-width: 16rem;
}
@media (max-width: 767px) {
    .mega_menu--footer .mega_menu_title {
        width: 100%;
        min-width: 0;
        padding-right: 0.8rem;
    }
    .mega_menu--footer .mega_menu_title.hus_img {
        width: 16rem;
        margin-bottom: 1.1rem;
    }
    .mega_menu--footer .mega_menu_title:not(.hus_img) .inner {
        display: flex;
        align-items: center;
        justify-content: flex-start;
        flex-wrap: nowrap;
    }
    .mega_menu--footer .mega_menu_title:not(.hus_img) .inner .eng {
        flex-shrink: 0;
        width: fit-content;
        font-size: 2rem;
        line-height: 1.2;
        letter-spacing: 0.03em;
    }
    .mega_menu--footer .mega_menu_title:not(.hus_img) .inner .bdr_mark_ttl {
        flex-grow: 1;
        font-size: 1.1rem;
        line-height: 1.2;
        letter-spacing: 0.03em;
        opacity: 0.5;
    }
}
.mega_menu--social {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 1.6rem;
    margin: 2.4rem 0 8rem;
    padding: 2.4rem 0 3.2rem;
    position: relative;
}
.mega_menu--social::before {
    content: "";
    display: block;
    width: 100%;
    height: 1px;
    background-color: #D9D9D9;
    position: absolute;
    top: 0;
    left: 0;
}
.mega_menu--social::after {
    content: "";
    display: block;
    width: 5.2rem;
    height: 1px;
    background: linear-gradient(90deg, #38AEE6 -6.88%, #005296 121%);
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
}
.mega_menu--social .title {
    font-family: "Anta", sans-serif;
    font-size: 1.7rem;
    font-weight: 400;
    line-height: 1.2;
    letter-spacing: 0.03em;
    text-align: left;
    padding: 0 0 0;
    margin: 0 0 0;
}
.mega_menu--social .list {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 0.8rem;
}
.mega_menu--social .list a {
    display: block;
    width: 3.2rem;
}
.mega_menu--social .list a img {
    display: block;
    width: 100%;
}

.over_ray {
    width: 100%;
    height: 100dvh;
    background-color: rgba(0, 0, 0, 0.4);
    position: fixed;
    top: 0;
    left: 0;
    z-index: 998;
}

/* =======================================

フッター

 ======================================= */
.footer {
    background-color: #292D32;
}
.footer--top {
    display: flex;
    align-items: stretch;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 1px;
    background-color: #D9D9D9;
}
.footer--top--item {
    width: calc((100% - 1px) / 2);
    height: 56rem;
}
@media (max-width: 767px) {
    .footer--top--item {
        width: 100%;
        height: 22rem;
    }
}
.footer--top--item .link_card {
    width: 100%;
    height: 100%;
}
.footer--top--item.row {
    display: flex;
    align-items: center;
    align-content: space-between;
    justify-content: flex-start;
    flex-wrap: wrap;
}
@media (max-width: 767px) {
    .footer--top--item.row {
        justify-content: space-between;
        height: 18.4rem;
    }
}
.footer--top--item.row .link_card {
    height: calc((100% - 1px) / 2);
}
@media (max-width: 767px) {
    .footer--top--item.row .link_card {
        width: calc((100% - 1px) / 2);
        height: 100%;
    }
}
.footer--main {
    border-bottom: 1px solid #13161B;
    padding: 12rem 0 8rem;
}
@media (max-width: 767px) {
    .footer--main {
        padding: 4.8rem 0;
    }
}
.footer--main .base {
    width: 134.8rem;
    padding-left: 3rem;
    padding-right: 3rem;
}
.footer--nav {
    margin: 6.1rem auto 7.9rem;
    padding: 0 4rem;
}
@media (max-width: 767px) {
    .footer--nav {
        margin: 3.2rem auto 4rem;
        padding: 0;
    }
}
.footer--nav--list {
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
    flex-wrap: wrap;
    gap: 7.3rem 10.4rem;
}
@media (max-width: 767px) {
    .footer--nav--list {
        justify-content: space-between;
        gap: 1.6rem 0;
    }
}
.footer--nav--list--item {
    width: calc((100% - 1px - 31.2rem) / 4);
    color: #fff;
}
@media (max-width: 767px) {
    .footer--nav--list--item {
        width: 17rem;
    }
    .footer--nav--list--item:nth-child(even) {
        width: 13rem;
    }
    .footer--nav--list--item.wide {
        width: 100% !important;
    }
}
.footer--nav--list--ttl {
    display: block;
    font-family: "Anta", sans-serif;
    font-size: 2.4rem;
    font-weight: 400;
    line-height: 1.2;
    letter-spacing: 0.03em;
    color: #fff;
    margin-top: 4.8rem;
    margin-bottom: 3.95rem;
}
@media (max-width: 767px) {
    .footer--nav--list--ttl {
        font-size: 2rem;
        margin: 0;
        padding: 2rem 0 2.3rem;
    }
}
.footer--nav--list--ttl:first-child {
    margin-top: 0;
}
.footer--nav--list--ttl.small {
    font-size: 2rem;
    margin-top: 5.2rem;
}
.footer--nav--list--ttl a {
    color: #fff;
}
.footer--nav--list--link {
    display: block;
    font-size: 1.4rem;
    font-weight: 500;
    line-height: 1.2;
    letter-spacing: 0.03em;
    padding-left: 2.8rem;
    position: relative;
}
@media (max-width: 767px) {
    .footer--nav--list--link {
        padding-left: 2.4rem;
    }
}
.footer--nav--list--link + .footer--nav--list--link {
    margin-top: 2.3rem;
}
@media (max-width: 767px) {
    .footer--nav--list--link + .footer--nav--list--link {
        margin-top: 1.5rem;
    }
}
.footer--nav--list--link::before {
    content: "";
    display: block;
    width: 2rem;
    aspect-ratio: 1/1;
    background: transparent url(../img/icon/border-icon.svg) no-repeat center/1rem auto;
    position: absolute;
    top: 0;
    left: 0;
}
@media (max-width: 767px) {
    .footer--nav--list--link::before {
        height: 100%;
        aspect-ratio: auto;
    }
}
.footer--nav--list--link.hus_ico {
    padding-right: 2.8rem;
}
.footer--nav--list--link.hus_ico::after {
    content: "";
    display: block;
    width: 2rem;
    aspect-ratio: 1/1;
    background: transparent url(../img/icon/link-icon.svg) no-repeat center top 0.4rem/1.6rem auto;
    position: absolute;
    bottom: 0;
    right: 0;
}
@media (max-width: 767px) {
    .footer--nav--list--link.hus_ico::after {
        background: transparent url(../img/icon/link-icon.svg) no-repeat center center/2rem auto;
        height: 100%;
        aspect-ratio: auto;
    }
}
.footer--nav--list--bnr {
    margin-top: 2.8rem;
}
.footer--nav--list--bnr--img {
    display: block;
    width: 100%;
}
.footer--bottom {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    border-top: 1px solid #D9D9D9;
    padding: 5.6rem 3.8rem 0;
}
@media (max-width: 767px) {
    .footer--bottom {
        gap: 4rem;
        padding: 4rem 0 0;
    }
}
.footer--bottom--copy {
    display: block;
    font-family: "Anta", sans-serif;
    font-size: 1.4rem;
    font-weight: 400;
    line-height: 1.2;
    letter-spacing: 0.03em;
    color: #fff;
}
@media (max-width: 767px) {
    .footer--bottom--copy {
        order: 2;
    }
}
.footer--bottom--item {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    flex-wrap: wrap;
    gap: 4.8rem;
    color: #fff;
}
@media (max-width: 767px) {
    .footer--bottom--item {
        order: 1;
    }
}
.footer--bottom--item--sns {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 1.6rem;
}
.footer--bottom--item--sns .text {
    font-family: "Anta", sans-serif;
    font-size: 1.4rem;
    font-weight: 400;
    line-height: 1.2;
}
.footer--bottom--item--sns .ico {
    display: block;
    width: 2.4rem;
}
.footer--bottom--item--sns .ico img {
    display: block;
    width: 100%;
}
.footer--bottom--item--link {
    display: block;
    font-family: "Anta", sans-serif;
    font-size: 1.4rem;
    font-weight: 400;
    line-height: 1.2;
    color: #fff;
}

/* スクローラー
------------------------------- */
.scroller {
    display: block;
    width: 4rem;
    aspect-ratio: 1/1;
    border-radius: 4rem;
    box-shadow: 0 0 0 2px #fff;
    background-color: #005296;
    overflow: hidden;
    position: fixed;
    bottom: 3rem;
    right: 3rem;
    z-index: 1000;
}
@media (max-width: 767px) {
    .scroller {
        width: 10vw;
        border-radius: 10vw;
        bottom: 2vw;
        right: 2vw;
    }
}
.scroller::after {
    content: "\f176";
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    font-size: 2rem;
    color: #fff;
    line-height: 1;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translateY(-50%) translateX(-50%);
    transform: translateY(-50%) translateX(-50%);
}
.scroller--child {
    display: block;
    width: 100%;
    display: none;
}

/* ポップアップ
------------------------------- */
.footer_popup {
    width: 100%;
    height: 100dvh;
    background: rgba(255, 255, 255, 0.88);
    backdrop-filter: blur(4px);
    position: fixed;
    top: 0;
    left: 0;
    z-index: 1000;
}
.footer_popup--inner {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    max-width: 144rem;
    height: 100%;
    margin: 0 auto;
    padding: 2rem 0;
    overflow-y: scroll;
    -ms-overflow-style: none;
    scrollbar-width: none;
}
.footer_popup--inner::-webkit-scrollbar {
    display: none;
}
.footer_popup--base {
    max-width: 100%;
    padding: 5.45rem 0;
    position: relative;
}
@media (max-width: 767px) {
    .footer_popup--base {
        padding: 4.7rem 0;
    }
}
.footer_popup--btn {
    width: 8.8rem;
    filter: invert(100%);
    position: absolute;
    top: 0;
    right: 2rem;
    cursor: pointer;
}
@media (min-width: 768px) {
    .footer_popup--btn {
        -webkit-transition: 0.4s;
        transition: 0.4s;
    }
    .footer_popup--btn:hover {
        opacity: 0.7;
    }
}
@media (max-width: 767px) {
    .footer_popup--btn {
        right: 0rem;
    }
}
.footer_popup--btn img {
    display: block;
    width: 100%;
}
.footer_popup .sponsor {
    background: transparent;
    padding: 0;
}
.footer_popup .sponsor--column {
    position: relative;
}

.float_bnr {
    display: none;
    width: 21.5rem;
    position: fixed;
    bottom: 2.2rem;
    right: 2.2rem;
    z-index: 1000;
}
@media (max-width: 767px) {
    .float_bnr {
        display: none !important;
    }
}
.float_bnr .icon {
    display: block;
    width: 2.4rem;
    position: absolute;
    top: -1.2rem;
    right: -1.2rem;
    z-index: 1;
    cursor: pointer;
}
.float_bnr a {
    display: block;
    width: 100%;
}
.float_bnr a img {
    display: block;
    width: 100%;
    border-radius: 0.351rem;
    box-shadow: 0 3.51px 3.51px 0 rgba(0, 0, 0, 0.25);
}

/* float cta
------------------------------- */
.float_cta {
    width: 100%;
    position: fixed;
    bottom: 0;
    left: 0;
    z-index: 1001;
    -webkit-transition: 0.4s ease;
    transition: 0.4s ease;
    -webkit-transform: translateY(100%);
    transform: translateY(100%);
}
.float_cta.is-active {
    -webkit-transform: translateY(0);
    transform: translateY(0);
}
._menu_open .float_cta {
    z-index: 990;
}
.float_cta--column {
    display: flex;
    align-items: stretch;
    justify-content: center;
    flex-wrap: nowrap;
    width: 100%;
    height: 4.4rem;
}
.float_cta--column--item {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 0.8rem;
    height: 100%;
}
.float_cta--column--item img {
    display: block;
}
.float_cta--column--item.u_btn {
    flex-grow: 1;
    width: calc((100% - 5rem) / 2);
    background-color: #fff;
}
.float_cta--column--item.u_btn.u_tel {
    background: var(--100, linear-gradient(180deg, #38AEE6 0%, #005296 100%));
}
.float_cta--column--item.u_btn .u_img {
    display: block;
}
.float_cta--column--item.u_btn .u_img img {
    width: auto;
    height: 2.2rem;
}
.float_cta--column--item .u_text {
    display: block;
    font-size: 1.1rem;
    font-weight: 500;
    line-height: 1.05;
    letter-spacing: 0.04em;
    color: #fff;
    padding-top: 0.3rem;
}
.float_cta--column--item.u_pagetop {
    flex-shrink: 0;
    width: 5rem;
    background-color: #13161B;
    padding-bottom: 0.4rem;
}
.float_cta--column--item.u_pagetop img {
    width: 2.7rem;
}

/* =======================================

 スライダー

 ======================================= */
/* slick
------------------------------- */
#slider, .js_slide, .js_smooth_slide_vertical, .js_slide_smooth, .js_showroom_slide, .js_showroom_slide_nav {
    opacity: 0;
    -webkit-transition: 1.2s ease 0.6s;
    transition: 1.2s ease 0.6s;
}
#slider.slick-initialized, .js_slide.slick-initialized, .js_smooth_slide_vertical.slick-initialized, .js_slide_smooth.slick-initialized, .js_showroom_slide.slick-initialized, .js_showroom_slide_nav.slick-initialized {
    opacity: 1;
}

@media (max-width: 767px) {
    .js_slide_sp {
        opacity: 0;
        -webkit-transition: 1.2s ease 0.6s;
        transition: 1.2s ease 0.6s;
    }
    .js_slide_sp.slick-initialized {
        opacity: 1;
    }
}
#slider .slider_in img {
    width: 100%;
}

.slick-arrow:not(.slick-disabled) {
    cursor: pointer;
}
@media (min-width: 768px) {
    .slick-arrow:not(.slick-disabled) {
        -webkit-transition: 0.3s;
        transition: 0.3s;
    }
    .slick-arrow:not(.slick-disabled):hover {
        opacity: 0.7;
    }
}

.slick-dots {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 1.2rem;
    width: fit-content;
    text-align: center;
}
.slick-dots li {
    display: block;
    vertical-align: middle;
}
.slick-dots button {
    display: block;
    padding: 0;
    margin: 0;
    font-size: 0;
    width: 0.6rem;
    height: 0.6rem;
    background-color: #13161B;
    border: 0;
    border-radius: 0.8rem;
    opacity: 0.3;
    cursor: pointer;
}
.slick-dots .slick-active button {
    background-color: #13161B;
    opacity: 1;
}

/* =======================================

メインビジュアル

 ======================================= */
/* SLIDER
------------------------------- */
/* slick */
#slider {
    margin-bottom: 11.2rem;
}
#slider .slider_in {
    width: 100rem;
}
@media (max-width: 767px) {
    #slider {
        margin-bottom: 5rem;
    }
    #slider .slider_in {
        width: 100vw;
    }
}

/* swiper */
.mv_slide_wrap {
    overflow: hidden;
}

.mv_slide {
    width: 100%;
    margin: 0 auto 10rem;
    overflow: visible;
}
.mv_slide--in {
    width: 80rem !important;
}
.mv_slide .swiper-button-prev, .mv_slide .swiper-button-next {
    width: calc((100% - 80rem) / 2);
}
.mv_slide .swiper-button-prev::after, .mv_slide .swiper-button-next::after {
    font-size: 5rem;
    color: #fff;
    text-shadow: 0 0 0.3rem #000;
}
.mv_slide .swiper-pagination {
    top: 100%;
    bottom: auto;
}
@media (max-width: 767px) {
    .mv_slide--in {
        width: 100vw;
    }
    .mv_slide .swiper-button-prev, .mv_slide .swiper-button-next {
        width: 5rem;
    }
}

/* 下層用MV
------------------------------- */
.page_header--inner {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    flex-wrap: wrap;
    min-height: 20.2rem;
    padding: 2rem 0 2rem;
    position: relative;
}
@media (max-width: 767px) {
    .page_header--inner {
        min-height: 12.6rem;
        padding: 1.2rem 0 1.6rem;
    }
}
.page_header--bg {
    width: 100%;
    height: 100%;
    overflow: hidden;
    position: absolute;
    top: 0;
    left: 0;
}
.page_header--bg::before {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.4);
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
}
.page_header--bg::after {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    background: url(../img/icon/black-triple-squares.svg) 0% 0%/3px 3px repeat;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
}
.page_header--bg img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.page_header--ttl {
    font-size: 4rem;
    font-weight: 700;
    line-height: 1.55;
    letter-spacing: 0.04em;
}
@media (max-width: 767px) {
    .page_header--ttl {
        font-size: 2.6rem;
        margin-top: -1rem;
    }
}
.page_header .base {
    width: 134rem;
    color: #fff;
    position: relative;
    z-index: 2;
}
@media (max-width: 767px) {
    .page_header .base {
        padding: 0 2.5rem;
    }
}
.page_header.wide .base {
    width: 144rem;
}
@media (max-width: 767px) {
    .page_header.wide .page_header--inner {
        padding: 2.4rem 0 3.3rem;
    }
}
@media (max-width: 767px) {
    .page_header.wide .page_header--ttl {
        margin-top: -0.6rem;
    }
}
.page_header.title_wht .base {
    width: auto;
    min-width: 45rem;
    min-height: 15.8rem;
    color: #13161B;
    background-color: #fff;
    padding: 2rem 4rem 2rem 8.8rem;
    position: absolute;
    top: 0;
    left: 0;
}
@media (max-width: 767px) {
    .page_header.title_wht .base {
        min-width: 24rem;
        min-height: 8.6rem;
        padding: 0.8rem 4rem 0.8rem 2.5rem;
    }
}
.page_header.title_wht .page_header--inner {
    height: 42.6rem;
    position: relative;
}
@media (max-width: 767px) {
    .page_header.title_wht .page_header--inner {
        height: 34.5rem;
    }
}
.page_header.title_wht .page_header--ttl {
    font-size: 4.8rem;
}
@media (max-width: 767px) {
    .page_header.title_wht .page_header--ttl {
        font-size: 2.6rem;
        margin-top: -1rem;
    }
}

.breadcrumbs_wrap {
    max-width: 144rem;
    font-size: 1.4rem;
    font-weight: 500;
    line-height: 1.55;
    letter-spacing: 0.056rem;
    padding: 0.7rem 2rem;
    margin: 0 auto;
}
@media (max-width: 767px) {
    .breadcrumbs_wrap {
        padding: 0.6rem 2.5rem;
    }
}
.breadcrumbs_wrap.bg_gray {
    max-width: 100%;
    background-color: #F5F5F5;
    position: relative;
    z-index: 1;
}
.breadcrumbs_wrap.bg_gray .breadcrumbs {
    max-width: 140rem;
    margin: 0 auto;
}

.breadcrumbs {
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
    flex-wrap: nowrap;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.breadcrumbs li {
    flex-shrink: 0;
    display: inline-block;
    font-size: 0;
    padding-right: 1.6rem;
    position: relative;
}
@media (max-width: 767px) {
    .breadcrumbs li {
        padding-right: 0.6rem;
    }
}
.breadcrumbs li:last-child {
    flex-grow: 1;
}
.breadcrumbs li + li {
    padding-left: 1.6rem;
}
@media (max-width: 767px) {
    .breadcrumbs li + li {
        padding-left: 0.9rem;
    }
}
.breadcrumbs li + li::before {
    content: "";
    display: block;
    width: 0.6rem;
    aspect-ratio: 1/1;
    border-top: 1px solid #13161B;
    border-right: 1px solid #13161B;
    position: absolute;
    top: 50%;
    left: 0;
    -webkit-transform: translateY(-50%) translateX(-75%) rotate(45deg);
    transform: translateY(-50%) translateX(-75%) 　rotate(45deg);
}
@media (max-width: 767px) {
    .breadcrumbs li + li::before {
        width: 0.4rem;
    }
}
.breadcrumbs li span {
    display: block;
    font-size: 1.4rem;
    font-weight: 500;
    line-height: 1.55;
    letter-spacing: 0.05em;
    color: rgba(19, 22, 27, 0.5);
    padding: 0 0 0;
    margin: 0 0 0;
    text-align: left;
}
@media (max-width: 767px) {
    .breadcrumbs li span {
        font-size: 1.2rem;
    }
}
.breadcrumbs li a {
    color: #13161B !important;
}
.breadcrumbs li a span {
    color: #13161B !important;
}

/* =======================================

 お問い合わせ

 ======================================= */
.form_flow {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    flex-wrap: wrap;
    gap: 0.8rem;
}
@media (max-width: 767px) {
    .form_flow {
        gap: 0.3rem;
        margin-right: -2rem;
    }
}
.form_flow--item {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    height: 4rem;
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 1.55;
    letter-spacing: 0.04em;
    text-align: left;
    padding: 0 0 0;
    margin: 0 0 0;
    border-radius: 0.4rem;
    background-color: #F5F5F5;
    padding: 0.4rem 1.6rem;
}
@media (max-width: 767px) {
    .form_flow--item {
        font-size: 1.4rem;
        height: 3.7rem;
        padding: 0.2rem 1.2rem;
    }
}
.form_flow--img {
    width: 2.4rem;
}
.form_flow--img img {
    display: block;
    width: 100%;
}

.defo_screen .form_flow--item.flow_01 {
    color: #fff;
    background-color: #13161B;
}

.verification_screen .form_flow--item.flow_02 {
    color: #fff;
    background-color: #13161B;
}

body:not(.defo_screen):not(.verification_screen) .form_flow--item.flow_03 {
    color: #fff;
    background-color: #13161B;
}

.form_desc {
    font-size: 1.5rem;
    font-weight: 500;
    line-height: 1.5833333333;
    margin: 0 0 2.4rem;
}

body:not(.verification_screen) .confirm_on {
    display: none !important;
}
body:not(.verification_screen) textarea:not(.type_input) {
    min-height: 13.4rem;
}

.verification_screen .confirm_off {
    display: none !important;
}

.add_confirm_form {
    position: relative;
}
.add_confirm_form::before {
    content: "";
    width: 8rem;
    height: 8rem;
    border: 3px solid #fb5b53;
    border-top: 3px solid transparent;
    border-radius: 50%;
    animation: spin 0.5s linear 0s infinite;
    position: fixed;
    top: 50%;
    left: 50%;
    z-index: 1;
    margin-top: -4rem;
    margin-left: -4rem;
    transition: 0.6s;
    opacity: 0;
    display: none;
}
.add_confirm_loading .add_confirm_form::before {
    opacity: 1;
    display: block;
}
.add_confirm_form .wpcf7-form {
    opacity: 0;
}
.defo_screen .add_confirm_form .wpcf7-form {
    opacity: 1;
}
.edit_screen .add_confirm_form .wpcf7-form, .verification_screen .add_confirm_form .wpcf7-form {
    animation: fadein 0.8s ease both;
}

@keyframes fadein {
    0% {
        opacity: 0;
    }
    50% {
        opacity: 0;
    }
    100% {
        opacity: 1;
    }
}
@keyframes spin {
    from {
        transform: rotate(0);
    }
    to {
        transform: rotate(359deg);
    }
}
.form_edit .wpcf7-list-item {
    margin: 0;
}
@media (min-width: 768px) {
    .form_edit .wpcf7-form-control-wrap {
        display: block;
    }
}
.form_edit dl {
    width: 100%;
    font-size: 1.8rem;
    line-height: 1.55;
    letter-spacing: 0.04em;
}
@media (max-width: 767px) {
    .form_edit dl {
        font-size: 1.6rem;
    }
}
.form_edit dl + dl {
    margin-top: 4rem;
}
@media (max-width: 767px) {
    .form_edit dl + dl {
        margin-top: 3.2rem;
    }
}
.form_edit dl dt {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    flex-wrap: wrap;
    min-height: 2.8rem;
    font-weight: 700;
    letter-spacing: 0.04em;
    margin-bottom: 1.2rem;
}
@media (max-width: 767px) {
    .form_edit dl dt {
        min-height: 2.7rem;
        margin-bottom: 1.2rem;
    }
}
.form_edit dl dt .hissu {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    flex-wrap: wrap;
    gap: 1.6rem;
}
.form_edit dl dt .hissu::after {
    content: "必須";
    display: block;
    font-size: 1.2rem;
    font-weight: 700;
    line-height: 1.55;
    letter-spacing: 0.04em;
    color: #fff;
    border-radius: 0.4rem;
    background-color: #E62629;
    padding: 0.4rem 1.6rem;
    box-sizing: border-box;
}
.form_edit dl dt .ninni {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    flex-wrap: wrap;
    gap: 1.6rem;
}
.form_edit dl dt .ninni::after {
    content: "任意";
    display: block;
    font-size: 1.2rem;
    font-weight: 700;
    line-height: 1.55;
    letter-spacing: 0.04em;
    color: #13161B;
    border-radius: 0.4rem;
    background-color: #F5F5F5;
    padding: 0.4rem 1.6rem;
    box-sizing: border-box;
}
.form_edit dl dd {
    font-size: 1.4rem;
    font-weight: 500;
}
.form_edit dl dd .wpcf7-radio {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    flex-wrap: wrap;
    gap: 2.3rem;
    font-size: 1.8rem;
    margin-top: 1.6rem;
}
@media (max-width: 767px) {
    .form_edit dl dd .wpcf7-radio {
        font-size: 1.4rem;
        gap: 1.3rem 2.3rem;
    }
}
.form_edit dl dd.zip {
    width: 25.8rem;
}
.form_edit dl + .form_edit--column {
    margin-top: 4rem;
}
@media (max-width: 767px) {
    .form_edit dl + .form_edit--column {
        margin-top: 3.2rem;
    }
}
.form_edit--column {
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
    flex-wrap: wrap;
    gap: 1.6rem;
}
.form_edit--column + .form_edit--column,
.form_edit--column + dl {
    margin-top: 4rem;
}
@media (max-width: 767px) {
    .form_edit--column + .form_edit--column,
    .form_edit--column + dl {
        margin-top: 3.2rem;
    }
}
.form_edit--column dl + dl {
    margin-top: 0;
}
.form_edit--column dl {
    width: calc((100% - 1.6rem) / 2);
}
.form_edit--column dl.small {
    width: calc((100% - 1px - 3.2rem) / 3);
}
@media (max-width: 767px) {
    .form_edit--column dl.small {
        width: 100%;
    }
}
@media (max-width: 767px) {
    .form_edit--column.sp_wide dl {
        width: 100%;
    }
}
.form_edit .year_month_day {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    flex-wrap: wrap;
    gap: 2.4rem;
}
@media (max-width: 767px) {
    .form_edit .year_month_day {
        gap: 2.6rem;
    }
}
.form_edit .year_month_day .year, .form_edit .year_month_day .month, .form_edit .year_month_day .day {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    flex-wrap: nowrap;
    gap: 1.2rem;
}
.form_edit .year_month_day .year > .wpcf7-form-control-wrap, .form_edit .year_month_day .month > .wpcf7-form-control-wrap, .form_edit .year_month_day .day > .wpcf7-form-control-wrap {
    display: block;
    flex-grow: 1;
}
.form_edit .year_month_day .year .title, .form_edit .year_month_day .month .title, .form_edit .year_month_day .day .title {
    flex-shrink: 0;
    display: block;
    font-size: 1.8rem;
    font-weight: 500;
    line-height: 1.55;
    letter-spacing: 0.04em;
}
.form_edit .year_month_day .year {
    width: 25.8rem;
}
@media (max-width: 767px) {
    .form_edit .year_month_day .year {
        width: 26rem;
    }
}
.form_edit .year_month_day .month {
    width: 22.8rem;
}
@media (max-width: 767px) {
    .form_edit .year_month_day .month {
        width: 26rem;
    }
}
.form_edit .year_month_day .day {
    width: 22.8rem;
}
@media (max-width: 767px) {
    .form_edit .year_month_day .day {
        width: 26rem;
    }
}
.form_edit .file {
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
    flex-wrap: wrap;
    gap: 0 1.2rem;
}
@media (max-width: 767px) {
    .form_edit .file {
        gap: 1.2rem;
    }
}
.form_edit .file dt {
    width: 100%;
}
@media (max-width: 767px) {
    .form_edit .file dt {
        margin-bottom: 0;
    }
}
.form_edit .file dd {
    width: calc((100% - 1.2rem) / 2);
}
@media (max-width: 767px) {
    .form_edit .file dd {
        width: 100%;
    }
}
.form_edit .file dd .wpcf7-form-control-wrap {
    display: block;
    width: 100%;
}
.form_edit .custom-file {
    display: block;
    width: 100%;
    height: 5.4rem;
    border-radius: 0.4rem;
    border: 1px solid #D9D9D9;
    background: #FFF;
    position: relative;
}
@media (max-width: 767px) {
    .form_edit .custom-file {
        height: 4.4rem;
    }
}
.form_edit .custom-file::before {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    background-color: #fff;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
}
.form_edit .custom-file--label {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    flex-wrap: wrap;
    width: 100%;
    height: 100%;
    font-size: 1.4rem;
    font-weight: 500;
    line-height: 1.55;
    letter-spacing: 0.04em;
    text-align: left;
    padding: 0 1.6rem 0;
    margin: 0 0 0;
    background-color: #fff;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 3;
    background: transparent url(../img/icon/upload.svg) no-repeat center right 1.6rem/2rem;
}
@media (max-width: 767px) {
    .form_edit .custom-file--label {
        font-size: 1.2rem;
    }
}
.form_edit .custom-file .wpcf7-form-control-wrap {
    display: block;
    width: 100%;
    height: 0;
    position: static;
}
.form_edit .custom-file [type=file] {
    width: 100%;
    height: 100%;
    font-size: 1.4rem;
    font-weight: 500;
    line-height: 1.55;
    letter-spacing: 0.04em;
    text-align: left;
    background-color: #fff;
    padding: 1.4rem 1.6rem;
    position: absolute;
    top: 50%;
    left: 0;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}
@media (max-width: 767px) {
    .form_edit .custom-file [type=file] {
        height: auto !important;
        padding: 0 1.6rem 0;
    }
}
.form_edit .custom-file [type=file]::file-selector-button {
    width: 1px;
    opacity: 0;
    font-size: 0;
    padding: 0;
    margin: 0;
}
.form_edit .custom-file [type=file]:focus {
    outline: none;
}
.form_edit .custom-file.has-file [type=file] {
    z-index: 4;
}
.form_edit input[type=text],
.form_edit input[type=tel],
.form_edit input[type=email],
.form_edit textarea {
    display: block;
    font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
    width: 100%;
    font-size: 1.4rem;
    font-weight: 500;
    line-height: 1.55;
    letter-spacing: 0.04em;
    border-radius: 0.4rem;
    border: 1px solid #D9D9D9;
    padding: 0.8rem 1.6rem;
}
.form_edit input[type=text]:focus-visible,
.form_edit input[type=tel]:focus-visible,
.form_edit input[type=email]:focus-visible,
.form_edit textarea:focus-visible {
    outline: none;
}
.form_edit input[type=text],
.form_edit input[type=tel],
.form_edit input[type=email] {
    height: 5.4rem;
}
@media (max-width: 767px) {
    .form_edit input[type=text],
    .form_edit input[type=tel],
    .form_edit input[type=email] {
        height: 4.3rem;
    }
}
.form_edit textarea.type_input {
    min-height: 5.4rem;
    padding: 1.5rem 1.6rem;
    overflow: hidden;
    resize: none;
}
@media (max-width: 767px) {
    .form_edit textarea.type_input {
        min-height: 4.3rem;
        padding: 1.1rem 1.6rem;
    }
}
.form_edit textarea:not(.type_input) {
    padding: 1.6rem;
}
@media (max-width: 767px) {
    .form_edit textarea:not(.type_input) {
        padding: 1.2rem 1.6rem;
    }
}
.form_edit textarea:not(.type_input)::placeholder {
    font-size: inherit;
    font-weight: inherit;
    line-height: inherit;
    letter-spacing: inherit;
}
.form_edit select {
    -moz-appearance: none;
    -webkit-appearance: none;
    appearance: none;
    border-radius: 0;
    border: 0;
    margin: 0;
    padding: 0;
    background: none transparent;
    vertical-align: middle;
    font-size: inherit;
    color: inherit;
    font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
    width: 100%;
    height: 5.4rem;
    font-size: 1.4rem;
    font-weight: 500;
    line-height: 1.55;
    letter-spacing: 0.04em;
    border-radius: 0.4rem;
    border: 1px solid #D9D9D9;
    padding: 0.8rem 1.6rem;
    background: transparent url(../img/icon/arrow-angle_down_small.svg) no-repeat center right 1.6rem/2rem auto;
}
@media (max-width: 767px) {
    .form_edit select {
        height: 4.3rem;
    }
}
.form_edit .acceptance {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 0.8rem;
    margin-top: 3.4rem;
}
@media (max-width: 767px) {
    .form_edit .acceptance {
        margin-top: 3.4rem;
    }
}
.form_edit .acceptance dt {
    width: auto !important;
    min-height: 0;
    font-size: 1.6rem;
    font-weight: 400;
    padding: 0;
    margin: 0;
}
@media (min-width: 768px) {
    .form_edit .acceptance dt {
        width: 100%;
        text-align: center;
    }
}
@media (max-width: 767px) {
    .form_edit .acceptance dt {
        font-size: 1.4rem;
    }
}
.form_edit .acceptance dt a {
    color: inherit;
    text-decoration: underline;
}
.form_edit .acceptance dd {
    font-size: 1.6rem;
}
.form_edit .acceptance dd a {
    color: #1644FF;
    text-decoration: underline;
}
.form_edit .acceptance .caution {
    margin: 0;
}
.form_edit .acceptance_column {
    justify-content: center;
    gap: 3.2rem;
    margin-top: 3.4rem !important;
}
@media (max-width: 767px) {
    .form_edit .acceptance_column {
        display: block;
        margin-top: 2.6rem !important;
        padding-left: 3.4rem;
    }
}
.form_edit .acceptance_column .acceptance {
    width: auto;
    margin: 0;
}
@media (max-width: 767px) {
    .form_edit .acceptance_column .acceptance {
        justify-content: flex-start;
    }
    .form_edit .acceptance_column .acceptance + .acceptance {
        margin-top: 1.4rem;
    }
}
@media (max-width: 767px) {
    .form_edit .acceptance_column .acceptance dd {
        font-size: 1.4rem;
    }
}
@media (min-width: 768px) {
    .form_edit .acceptance__text {
        display: flex;
        align-items: center;
        justify-content: center;
        flex-wrap: wrap;
    }
}
.form_edit .acceptance__text label {
    font-size: 1.4rem;
    font-weight: 500;
    line-height: 1.55;
    letter-spacing: 0.04em;
    overflow: hidden;
    position: relative;
}
@media (max-width: 767px) {
    .form_edit .acceptance__text label {
        font-size: 1.4rem;
    }
}
.form_edit .acceptance__text label input {
    margin: 0;
}
.form_edit .acceptance__text label .wpcf7-list-item-label {
    display: none;
}
.form_edit .submit_wrap {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    flex-direction: row;
    gap: 2rem;
    margin: 2.3rem auto 0;
}
@media (max-width: 767px) {
    .form_edit .submit_wrap {
        gap: 0.8rem;
        margin-top: 3rem;
        flex-direction: column-reverse;
    }
}
.form_edit .submit_wrap .btn_square {
    width: 34rem;
}
@media (max-width: 767px) {
    .form_edit .submit_wrap .btn_square {
        width: 100%;
    }
}
.form_edit .submit_wrap .btn_square [type=submit] {
    font-family: inherit;
    font-size: inherit;
    font-weight: inherit;
    line-height: inherit;
    letter-spacing: inherit;
    text-align: inherit;
    color: inherit;
    background-color: transparent;
    border: 0;
    padding: 0;
    margin: 0;
}
@media (max-width: 767px) {
    .form_edit .confirm_btn {
        width: 100%;
    }
}
@media (max-width: 767px) {
    .verification_screen .form_edit .confirm_btn {
        width: 100%;
    }
}
.form_edit .confirm_btn_add {
    width: 32rem;
    max-width: 100%;
    position: relative;
}
.form_edit .confirm_btn_add .wpcf7-spinner {
    margin: 0;
    position: absolute;
    bottom: -72%;
    left: -1rem;
    transform: translateX(-50%);
}
@media (max-width: 767px) {
    .form_edit .confirm_btn_add .wpcf7-spinner {
        margin: 0 0 1rem;
        bottom: -210%;
        left: 50%;
    }
}
.form_edit .confirm_btn_add,
.form_edit .btn_square {
    margin-top: 0 !important;
}
@media (min-width: 768px) {
    .form_edit .confirm_btn_add,
    .form_edit .btn_square {
        cursor: pointer;
        transition: 0.4s;
    }
    .form_edit .confirm_btn_add:hover,
    .form_edit .btn_square:hover {
        opacity: 0.7;
    }
}
.form_edit .wpcf7-not-valid-tip {
    font-size: 1.4rem;
    line-height: 1.2;
    font-weight: 500;
    color: #E62629;
}
@media (min-width: 768px) {
    .form_edit .wpcf7-not-valid-tip {
        white-space: nowrap;
        position: absolute;
        top: 100%;
        left: 0;
        margin: 0.4rem 0 0;
    }
}
@media (max-width: 767px) {
    .form_edit .wpcf7-not-valid-tip {
        font-size: 1.2rem;
        margin-top: 1.2rem;
    }
}
@media (max-width: 767px) {
    .form_edit .wpcf7-checkbox + .wpcf7-not-valid-tip {
        white-space: nowrap;
        position: absolute;
        top: 100%;
        left: 0;
        margin: 0.4rem 0 0;
    }
}

body:not(.all-required-filled) .js_confirm {
    cursor: not-allowed;
    position: relative;
}
body:not(.all-required-filled) .js_confirm .btn_square {
    cursor: not-allowed;
}
body:not(.all-required-filled) .js_confirm::after {
    content: "必須項目に未入力があります";
    display: block;
    width: 100%;
    text-align: center;
    font-size: 0.9em;
    font-weight: 500;
    color: #dc3232;
    padding-top: 0.5em;
    position: absolute;
    top: 100%;
    left: 0;
}

.verification_screen .form_edit input[type=text],
.verification_screen .form_edit input[type=tel],
.verification_screen .form_edit input[type=email],
.verification_screen .form_edit textarea {
    pointer-events: none !important;
    background-color: #fff;
    border: 0;
}
.verification_screen .form_edit textarea {
    resize: none;
}
.verification_screen .form_edit .wpcf7-radio {
    pointer-events: none !important;
}
.verification_screen .form_edit input[type=radio] {
    pointer-events: none !important;
    opacity: 0.1;
}
.verification_screen .form_edit input[type=radio] + .wpcf7-list-item-label {
    pointer-events: none !important;
    opacity: 0.2;
}
.verification_screen .form_edit input[type=radio]:checked {
    opacity: 1;
}
.verification_screen .form_edit input[type=radio]:checked + .wpcf7-list-item-label {
    opacity: 2;
}
.verification_screen .form_edit select {
    border: 0;
    background-image: none;
    pointer-events: none;
}
.verification_screen .form_edit .file dd {
    pointer-events: none;
}
.verification_screen .form_edit .acceptance__text {
    pointer-events: none !important;
}
.verification_screen .form_edit .acceptance__text input + .wpcf7-list-item-label::after {
    width: 25rem;
    box-sizing: border-box;
    aspect-ratio: 1/1;
    border-radius: 2.5rem;
    background-color: #eee !important;
    transform: scale(0.7);
}

.wpcf7-not-valid:not(.wpcf7-checkbox) {
    border: 1px solid #E62629 !important;
}
.wpcf7-not-valid:not(.wpcf7-checkbox)[type=file] {
    width: calc(100% + 4px) !important;
    height: calc(100% + 4px) !important;
    border-radius: 0.4rem !important;
    left: 50% !important;
    -webkit-transform: translateY(-50%) translateX(-50%) !important;
    transform: translateY(-50%) translateX(-50%) !important;
}
@media (max-width: 767px) {
    .wpcf7-not-valid:not(.wpcf7-checkbox)[type=file] + .wpcf7-not-valid-tip {
        display: block;
        width: fit-content;
        position: relative;
        z-index: 1;
        padding: 0.2rem;
        background: #fff;
        margin-top: 3.3rem;
        margin-left: 0.7rem;
        z-index: 5;
    }
}

.complete_block {
    padding: 3.1rem 0 0;
}
.complete_block .title {
    font-size: 6.4rem;
    font-weight: 700;
    line-height: 1.55;
    letter-spacing: 0.04em;
    text-align: center;
    padding: 0 0 0;
    margin: 0 0 0;
}
@media (max-width: 767px) {
    .complete_block .title {
        line-height: 1.05;
    }
}
.complete_block .desc {
    font-size: 2rem;
    font-weight: 700;
    line-height: 1.55;
    letter-spacing: 0.04em;
    text-align: center;
    padding: 0 0 0;
    margin: -0.8rem 0 0;
}
@media (max-width: 767px) {
    .complete_block .desc {
        font-size: 1.5rem;
        margin: 2.4rem 0 0;
    }
}
.complete_block .btn_square {
    width: 34rem;
    margin: 6.4rem auto 0;
}
@media (max-width: 767px) {
    .complete_block .btn_square {
        width: 100%;
        margin: 4rem 0 0;
    }
}

/* =======================================

article テキスト設定

 ======================================= */
.article .ttl_post,
.ttl_post {
    margin-bottom: 1em;
}

.article h1, .article h2, .article h3, .article h4, .article h5, .article h6, .article br {
    width: 100%;
    margin-top: 0;
    padding: 0;
    text-align: left;
    border: 0;
    clear: both;
}
.article h1:first-child, .article h2:first-child, .article h3:first-child, .article h4:first-child, .article h5:first-child, .article h6:first-child, .article p:first-child {
    margin-top: 0;
}
.article h1 {
    font-size: 3.6rem;
    font-weight: 500;
    line-height: 1.5;
    color: #005296;
    margin: 1em 0;
}
@media (max-width: 767px) {
    .article h1 {
        font-size: 2.4rem;
    }
}
.article h2 {
    font-size: 3.2rem;
    font-weight: 700;
    line-height: 1.55;
    letter-spacing: 0.04em;
    padding: 0 0 3.2rem;
    margin: 0 0 2.4rem;
    position: relative;
}
@media (max-width: 767px) {
    .article h2 {
        font-size: 2.2rem;
        padding: 0 0 2.4rem;
        margin: 0 0 2.4rem;
    }
}
.article h2::before {
    content: "";
    display: block;
    width: 100%;
    height: 1px;
    background-color: #D9D9D9;
    position: absolute;
    bottom: 0;
    left: 0;
}
.article h2::after {
    content: "";
    display: block;
    width: 5.2rem;
    height: 1px;
    background: linear-gradient(90deg, #38AEE6 -6.88%, #005296 121%);
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: 1;
}
.article h3 {
    font-size: 2.8rem;
    font-weight: 700;
    line-height: 1.55;
    letter-spacing: 0.04em;
    padding: 0 0 3.2rem;
    margin: 4.4rem 0 2.4rem;
    position: relative;
}
@media (max-width: 767px) {
    .article h3 {
        font-size: 2rem;
        padding: 0 0 2.4rem;
        margin: 0 0 2.4rem;
    }
}
.article h3::before {
    content: "";
    display: block;
    width: 100%;
    height: 1px;
    background-color: #D9D9D9;
    position: absolute;
    bottom: 0;
    left: 0;
}
.article h3::after {
    content: "";
    display: block;
    width: 5.2rem;
    height: 1px;
    background: linear-gradient(90deg, #38AEE6 -6.88%, #005296 121%);
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: 1;
}
.article h4 {
    font-size: 2.4rem;
    font-weight: 700;
    line-height: 1.55;
    letter-spacing: 0.04em;
    padding: 0 0 0;
    margin: 4.4rem 0 2.4rem;
}
@media (max-width: 767px) {
    .article h4 {
        font-size: 1.8rem;
    }
}
.article h5 {
    font-size: 2rem;
    font-weight: 700;
    line-height: 1.55;
    letter-spacing: 0.04em;
    padding: 0 0 0;
    margin: 4.4rem 0 2.4rem;
    position: relative;
}
@media (max-width: 767px) {
    .article h5 {
        font-size: 1.6rem;
    }
}
.article h6 {
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 1.55;
    letter-spacing: 0.04em;
    padding: 0 0 0;
    margin: 4.4rem 0 2.4rem;
}
@media (max-width: 767px) {
    .article h6 {
        font-size: 1.4rem;
    }
}
.article p {
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 1.95;
    letter-spacing: 0.04em;
    padding: 0 0 0;
    margin: 0 0 2rem;
}
@media (max-width: 767px) {
    .article p {
        font-size: 1.4rem;
    }
}
.article p:last-child {
    margin: 0 0 0;
}
.article a {
    font-weight: 400;
    text-decoration: underline;
}
.article blockquote, .article q {
    quotes: "" "";
}
.article blockquote:before, .article blockquote:after, .article q:before, .article q:after {
    content: "";
}
.article blockquote {
    background: none repeat scroll 0 0 rgba(245, 245, 245, 0.8);
    border: 0.1rem solid #FFFFFF;
    margin: 1em 0;
    padding: 2rem 5.5rem;
    position: relative;
}
@media (max-width: 767px) {
    .article blockquote {
        padding: 1.6em 2em;
    }
}
.article blockquote p {
    margin-top: 0.5em;
    margin-bottom: 0.5em;
}
.article blockquote::before {
    color: rgb(200, 200, 200);
    content: "“";
    font-family: serif;
    font-size: 600%;
    left: 0rem;
    line-height: 1em;
    position: absolute;
    top: 0rem;
}
.article blockquote::after {
    color: rgb(200, 200, 200);
    content: "”";
    font-family: serif;
    font-size: 600%;
    line-height: 0;
    position: absolute;
    right: 0rem;
    bottom: -0.1em;
}
.article table {
    max-width: calc(100% - 8rem);
    border-collapse: collapse;
    margin: 2rem 4rem;
}
@media (max-width: 767px) {
    .article table {
        max-width: none;
        margin: 2rem 0;
    }
}
.article th {
    font-weight: 700;
    border: solid 1px #F5F5F5;
}
.article td {
    border: solid 1px #F5F5F5;
}
.article th, .article td {
    font-size: 1.4rem;
    font-weight: 500;
    line-height: 1.55;
    letter-spacing: 0.04em;
    text-align: left;
    margin: 0 0 0;
    padding: 1.1rem 1.6rem;
}
@media (max-width: 767px) {
    .article th, .article td {
        font-size: 1.2rem;
        padding: 1.8rem 1rem;
    }
}
.article img {
    margin: 2.4rem 0;
}
.article pre {
    font-family: inherit;
    background-color: #eee;
    border: 1px solid #ccc;
    padding: 0.7em;
    overflow: auto;
    white-space: normal;
    line-height: 1.6;
}
.article dl {
    line-height: 150%;
    margin: 1.5em 0;
}
.article ol ol,
.article ul ul,
.article dl dl {
    margin: 0;
}
.article ul.wp-block-list {
    list-style: none;
    padding-left: 1em;
}
@media (max-width: 767px) {
    .article ul.wp-block-list {
        padding-left: 0;
    }
}
.article ul.wp-block-list li {
    font-size: 1.8rem;
    font-weight: 700;
    line-height: 1.55;
    letter-spacing: 0.04em;
    text-align: left;
    margin: 0 0 0;
    padding: 0 0 0 2.6rem;
    position: relative;
}
.article ul.wp-block-list li::before {
    content: "";
    display: block;
    width: 2.4rem;
    aspect-ratio: 1/1.2;
    background: transparent url(../img/icon/dot_icon.svg) no-repeat center/1rem auto;
    position: absolute;
    top: 0;
    left: 0;
}
.wp-admin .article ul.wp-block-list li::before {
    background-image: url(../../img/icon/dot_icon.svg);
    aspect-ratio: 1/0.9;
}
.article ul.wp-block-list li ul li {
    font-weight: 500;
}
.article ul.wp-block-list li ul li ul li {
    font-size: 1.6rem;
}
.article ul.wp-block-list li ul li ul li::before {
    aspect-ratio: 1/1;
}
.article ul.wp-block-list li + li {
    margin-top: 0.4rem;
}
.article ol {
    list-style: decimal;
    margin: 1.5em 0;
    padding-left: 1em;
}
.article ol li + li {
    margin-top: 0.4em;
}
.article em {
    font-style: italic;
    font-size: 0.8em;
}
.article .alignleft {
    float: left;
    margin: 0.5em 1em 0.5em 0;
}
.article .aligncenter {
    display: block;
    margin-left: auto;
    margin-right: auto;
}
.article .alignright {
    float: right;
    margin: 0.5em 0 0.5em 1em;
}

.wrap_in.article {
    padding-top: 8rem;
    padding-bottom: 8rem;
}
@media (max-width: 767px) {
    .wrap_in.article {
        padding-top: 5rem;
        padding-bottom: 5rem;
    }
}

.article {
    font-size: 1.6rem;
}
@media (max-width: 767px) {
    .article {
        font-size: 1.6rem;
    }
}

.article .link_card_2 {
    text-decoration: none !important;
}

.link_card_2 {
    display: block;
    color: #fff !important;
    text-decoration: none;
    background-color: #13161B;
    padding: 8.4rem 12rem 10rem 8rem;
}
@media (max-width: 767px) {
    .link_card_2 {
        padding: 5.6rem 3rem;
    }
}
.link_card_2--section {
    background-color: #F5F5F5;
}
.link_card_2--section .base {
    width: 100%;
    padding: 4rem;
}
@media (max-width: 767px) {
    .link_card_2--section .base {
        padding: 1rem;
    }
}
.link_card_2--block {
    display: flex;
    align-items: stretch;
    justify-content: flex-start;
    flex-wrap: nowrap;
}
@media (max-width: 767px) {
    .link_card_2--block {
        flex-wrap: wrap;
    }
}
.link_card_2--block .link_card_2 {
    width: 50%;
}
@media (max-width: 767px) {
    .link_card_2--block .link_card_2 {
        width: 100%;
    }
}
.link_card_2.typeB {
    background-color: #292D32;
}
@media (max-width: 767px) {
    .link_card_2--inner {
        padding: 0 0 0.8rem 1rem;
    }
}
.link_card_2--head {
    display: flex;
    align-items: stretch;
    justify-content: space-between;
    flex-wrap: nowrap;
    gap: 4rem;
}
.link_card_2--head--ttl {
    flex-grow: 1;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    flex-wrap: wrap;
    font-size: 2.2rem !important;
    font-weight: 700 !important;
    line-height: 1.55 !important;
    letter-spacing: 0.04em;
    padding: 0 !important;
    margin: 0 !important;
    border: 0 !important;
    position: relative;
}
@media (max-width: 767px) {
    .link_card_2--head--ttl {
        font-size: 1.6rem !important;
    }
}
.link_card_2--head--ttl::before {
    content: "";
    display: block;
    width: 100%;
    height: 1px;
    background-color: #D9D9D9;
    position: absolute;
    bottom: 0;
    left: 0;
}
.link_card_2--head--ttl::after {
    content: "";
    display: block;
    width: 5.2rem;
    height: 1px;
    background: linear-gradient(90deg, #38AEE6 -6.88%, #005296 121%);
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: 1;
}
.link_card_2--head--ico {
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    width: 8.8rem;
    aspect-ratio: 1/1;
    border-radius: 10rem;
    background-color: #fff;
}
@media (max-width: 767px) {
    .link_card_2--head--ico {
        width: 5.6rem;
    }
}
.link_card_2--head--ico img {
    display: block;
    width: 5.6rem;
    margin: 0 !important;
}
@media (max-width: 767px) {
    .link_card_2--head--ico img {
        width: 3.56rem;
    }
}
.link_card_2--desc {
    min-height: 9.3rem !important;
    font-size: 1.6rem !important;
    font-weight: 500 !important;
    line-height: 1.95 !important;
    letter-spacing: 0.04em;
    margin: 2.4rem 0 0 !important;
}
@media (max-width: 767px) {
    .link_card_2--desc {
        font-size: 1.4rem !important;
    }
}
.link_card_2--footer {
    margin: 1.6rem 0 0;
    padding: 0 2.4rem 0 0;
}
@media (max-width: 767px) {
    .link_card_2--footer {
        padding: 0.8rem 1.2rem 0 0;
    }
}
.link_card_2--footer--btn {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: nowrap;
    gap: 4rem;
    color: #fff;
    text-decoration: none !important;
}
@media (max-width: 767px) {
    .link_card_2--footer--btn {
        gap: 0.8rem;
    }
}
.link_card_2--footer--btn--ttl {
    display: block;
    flex-grow: 1;
    font-size: 2rem !important;
    font-weight: 700 !important;
    line-height: 1.55 !important;
    letter-spacing: 0.04em;
}
@media (max-width: 767px) {
    .link_card_2--footer--btn--ttl {
        font-size: 1.5rem !important;
    }
}
.link_card_2--footer--btn .btn_oval_arrow {
    flex-shrink: 0;
    width: 4.8rem;
}
@media (max-width: 767px) {
    .link_card_2--footer--btn .btn_oval_arrow {
        width: 3.2rem;
    }
}

.link_card_2 .link_card_2--footer--btn--ttl {
    -webkit-transition: 0.4s ease;
    transition: 0.4s ease;
}
@media (min-width: 768px) {
    .link_card_2 .btn_oval_arrow {
        -webkit-transition: 0.4s ease;
        transition: 0.4s ease;
    }
    .link_card_2:hover {
        opacity: 1 !important;
    }
    .link_card_2:hover .link_card_2--footer--btn--ttl {
        -webkit-transform: translateX(1rem);
        transform: translateX(1rem);
    }
    .link_card_2:hover .btn_oval_arrow {
        transform: scale(0.9);
    }
    .link_card_2:hover .btn_oval_arrow::after {
        animation: loop-move 0.4s ease-out forwards;
        animation-iteration-count: 1;
    }
}

@media (max-width: 767px) {
    .article .link_card_2 {
        padding: 4rem 3rem;
    }
    .article .link_card_2--head {
        align-items: flex-end;
    }
    .article .link_card_2--head--ttl {
        padding-bottom: 1.6rem !important;
    }
}

.block-editor__container .link_card_2 {
    margin: 0 0.8rem;
}
@media (max-width: 767px) {
    .block-editor__container .link_card_2 {
        margin: 0;
    }
}
.block-editor__container .btn_oval_arrow::after {
    background: transparent url(../../img/icon/arrow-wh.svg) no-repeat center/100% 100%;
}
.block-editor__container .btn_oval_arrow.up::after {
    background-image: url(../../img/icon/arrow-wh-vertical.svg);
}
.block-editor__container .btn_oval_arrow.double::after {
    background-image: url(../../img/icon/angles_wh.svg);
}

.img_card {
    max-width: 88rem;
    border-radius: 0.8rem;
    border: 2px solid #F5F5F5;
    background-color: #fff;
    margin: 1.6rem 0;
    padding: 2rem;
}
@media (max-width: 767px) {
    .img_card {
        margin: 2.4rem 0;
    }
}
.img_card--img {
    display: block;
    margin: 0 0 2.4rem !important;
}
.img_card--ttl {
    font-size: 1.6rem !important;
    font-weight: 700 !important;
    line-height: 1.95 !important;
    letter-spacing: 0.04em !important;
    text-align: left !important;
    color: #13161B;
    padding: 0 0 1.2rem !important;
    margin: 0 0 0 !important;
    position: relative;
}
@media (max-width: 767px) {
    .img_card--ttl {
        font-size: 1.6rem !important;
        line-height: 1.55 !important;
    }
}
.img_card--ttl::before {
    content: "";
    display: block;
    width: 100%;
    height: 1px;
    background-color: #D9D9D9;
    position: absolute;
    bottom: 0;
    left: 0;
}
.img_card--ttl::after {
    content: "";
    display: block;
    width: 5.2rem;
    height: 1px;
    background: linear-gradient(90deg, #38AEE6 -6.88%, #005296 121%);
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: 1;
}
.img_card--desc {
    font-size: 1.4rem !important;
    font-weight: 500 !important;
    line-height: 1.55 !important;
    letter-spacing: 0.04em;
    text-align: left !important;
    color: #13161B;
    padding: 0 0 0 !important;
    margin: 1.2rem 0 0 !important;
}
@media (max-width: 767px) {
    .img_card--desc {
        font-size: 1.2rem !important;
    }
}

.btn_card {
    max-width: 80rem;
    border-radius: 0.8rem;
    border: 2px solid #F5F5F5;
    background: #F5F5F5;
    padding: 4rem;
    margin: 1.6rem 0 !important;
}
@media (max-width: 767px) {
    .btn_card {
        padding: 4rem 3rem;
        margin: 2.4rem 0 !important;
    }
}
.btn_card--ttl {
    width: 100%;
    font-size: 1.6rem !important;
    font-weight: 700 !important;
    line-height: 1.95 !important;
    letter-spacing: 0.04em;
    text-align: left !important;
    color: #13161B;
    padding: 0 0 1.2rem !important;
    margin: 0 0 0 !important;
    position: relative;
}
@media (max-width: 767px) {
    .btn_card--ttl {
        font-size: 1.4rem !important;
        line-height: 1.55 !important;
    }
}
.btn_card--ttl::before {
    content: "";
    display: block;
    width: 100%;
    height: 1px;
    background-color: #D9D9D9;
    position: absolute;
    bottom: 0;
    left: 0;
}
.btn_card--ttl::after {
    content: "";
    display: block;
    width: 5.2rem;
    height: 1px;
    background: linear-gradient(90deg, #38AEE6 -6.88%, #005296 121%);
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: 1;
}
.btn_card--desc {
    width: 100%;
    font-size: 1.4rem !important;
    font-weight: 500 !important;
    line-height: 1.55 !important;
    letter-spacing: 0.04em;
    text-align: left;
    color: #13161B;
    padding: 0 0 0 !important;
    margin: 1.2rem 0 0 !important;
}
@media (max-width: 767px) {
    .btn_card--desc {
        font-size: 1.2rem !important;
    }
}
.btn_card--column {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 3.2rem;
    margin: 4rem auto 0;
}
@media (max-width: 767px) {
    .btn_card--column {
        gap: 1rem;
        margin: 2.6rem auto 0;
    }
}
.btn_card .btn_square {
    width: 29.4rem;
    text-decoration: none !important;
}
@media (max-width: 767px) {
    .btn_card .btn_square {
        width: 100%;
    }
}

.block-editor__container .btn_square {
    color: #fff;
    text-decoration: none !important;
}
.block-editor__container .btn_square::after {
    background-image: url(../../img/icon/arrow-wh.svg);
}
.block-editor__container .btn_square.wht {
    color: #13161B;
}
.block-editor__container .btn_square.wht::after {
    background-image: url(../../img/icon/arrow-blue.svg);
}

.profile_card {
    max-width: 64rem;
    border-radius: 0.8rem;
    border: 2px solid #F5F5F5;
    background: #fff;
    padding: 2.4rem 2.4rem 3.2rem;
    margin: 2.4rem 0.8rem;
}
@media (max-width: 767px) {
    .profile_card {
        margin: 2.4rem 0;
    }
}
.profile_card--ttl {
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 1.55;
    letter-spacing: 0.04em;
    color: #13161B;
    padding: 0;
    margin: 0 0 1.6rem;
}
@media (max-width: 767px) {
    .profile_card--ttl {
        font-size: 1.4rem !important;
    }
}
.profile_card--block {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    flex-wrap: nowrap;
    gap: 2.6rem;
}
.profile_card--img {
    flex-shrink: 0;
    width: 9.2rem;
    aspect-ratio: 1/1;
    border-radius: 9.2rem;
    background-color: #eee;
    overflow: hidden;
}
.profile_card--img img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    margin: 0 !important;
    padding: 0 !important;
}
.profile_card--item {
    flex-grow: 1;
}
.profile_card--name {
    font-size: 1.6rem !important;
    font-weight: 700 !important;
    line-height: 1.55 !important;
    letter-spacing: 0.04em;
    color: #13161B !important;
    padding: 0 !important;
    margin: 0 !important;
}
@media (max-width: 767px) {
    .profile_card--name {
        font-size: 1.4rem !important;
    }
}
.profile_card--initial {
    font-size: 1.6rem !important;
    font-weight: 700 !important;
    line-height: 1.55 !important;
    letter-spacing: 0.04em;
    color: #13161B !important;
    padding: 0 !important;
    margin: 0 !important;
}
@media (max-width: 767px) {
    .profile_card--initial {
        font-size: 1.4rem !important;
    }
}
.profile_card--sns {
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
    flex-wrap: wrap;
    gap: 1.2rem;
    list-style: none !important;
    margin: 0.4rem 0 0 !important;
    padding: 0 !important;
}
.profile_card--sns--item {
    width: 3rem;
    padding: 0 !important;
    margin: 0 !important;
}
.profile_card--sns--item img {
    display: block;
    width: 100%;
    margin: 0 !important;
    padding: 0 !important;
}
.profile_card--desc {
    font-size: 1.4rem !important;
    font-weight: 500 !important;
    line-height: 1.55 !important;
    letter-spacing: 0.04em !important;
    color: #13161B !important;
    padding: 0 !important;
    margin: 1.6rem 0 0 !important;
}
@media (max-width: 767px) {
    .profile_card--desc {
        font-size: 1.2rem !important;
    }
}

/* =======================================

ページャー

 ======================================= */
.pager {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 0.8rem;
    border-top: 1px solid #D9D9D9;
    padding: 4rem 0 3.2rem;
    margin: 2.4rem 0 0;
}
@media (max-width: 767px) {
    .pager {
        gap: 0.6rem;
    }
}

.page-numbers {
    display: block;
    font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
    font-size: 1.4rem;
    font-weight: 700;
    line-height: 1.55;
    letter-spacing: 0.04em;
    background-color: #F5F5F5;
    border-radius: 0.4rem;
    padding: 0.8rem 1.6rem;
}
@media (max-width: 767px) {
    .page-numbers {
        font-size: 1.2rem;
        padding: 0.7rem 0.8rem 0.8rem;
    }
}
.page-numbers.current {
    background-color: #13161B;
    color: #fff;
}
.page-numbers.prev, .page-numbers.next {
    padding: 0;
    background-color: transparent;
}
.page-numbers.prev {
    margin-right: 2.4rem;
}
@media (max-width: 767px) {
    .page-numbers.prev {
        margin-right: 1.2rem;
    }
}
.page-numbers.prev.first {
    margin-right: 0.8rem;
}
@media (max-width: 767px) {
    .page-numbers.prev.first {
        margin-right: -0.2rem;
    }
}
.page-numbers.next {
    margin-left: 2.4rem;
}
@media (max-width: 767px) {
    .page-numbers.next {
        margin-left: 1.2rem;
    }
}
.page-numbers.next.last {
    margin-left: 0.8rem;
}
@media (max-width: 767px) {
    .page-numbers.next.last {
        margin-left: -0.2rem;
    }
}
.page-numbers .btn_oval_arrow {
    width: 4rem;
}
@media (max-width: 767px) {
    .page-numbers .btn_oval_arrow {
        width: 3rem;
    }
}

@media (min-width: 768px) {
    a.page-numbers:hover {
        background-color: #F1F1F1;
    }
}
@media (max-width: 767px) {
    /* 現在のページ(current)と、最初・最後・矢印以外の数字リンクを隠す */
    .pager .page-numbers:not(.current):not(.prev):not(.next):not(.first):not(.last):not(.dots) {
        display: none;
    }
}
/* =======================================

アニメーション

 ======================================= */
@keyframes fadein {
    0% {
        opacity: 0;
    }
    100% {
        opacity: 1;
    }
}
@keyframes bound {
    0% {
        bottom: 0;
    }
    50% {
        bottom: -1em;
    }
    100% {
        bottom: 0;
    }
}
@keyframes loop-move {
    0% {
        transform: translateY(-50%) translateX(-50%);
    }
    30% {
        transform: translateY(-50%) translateX(360%);
        opacity: 1;
    }
    30.01% {
        transform: translateY(-50%) translateX(-360%);
        opacity: 0;
    }
    60% {
        transform: translateY(-50%) translateX(-360%);
        opacity: 1;
    }
    100% {
        transform: translateY(-50%) translateX(-50%);
    }
}
@keyframes loop-move-vertical {
    0% {
        transform: translateY(-50%) translateX(-50%);
    }
    30% {
        transform: translateY(360%) translateX(-50%);
        opacity: 1;
    }
    30.01% {
        transform: translateY(-360%) translateX(-50%);
        opacity: 0;
    }
    60% {
        transform: translateY(-360%) translateX(-50%);
        opacity: 1;
    }
    100% {
        transform: translateY(-50%) translateX(-50%);
    }
}
@keyframes loop-move-vertical-up {
    0% {
        transform: translateY(-50%) translateX(-50%);
    }
    30% {
        transform: translateY(-360%) translateX(-50%);
        opacity: 1;
    }
    30.01% {
        transform: translateY(360%) translateX(-50%);
        opacity: 0;
    }
    60% {
        transform: translateY(360%) translateX(-50%);
        opacity: 1;
    }
    100% {
        transform: translateY(-50%) translateX(-50%);
    }
}
@keyframes fade_in {
    0% {
        opacity: 0;
    }
    100% {
        opacity: 1;
    }
}
@keyframes fade_in_up {
    0% {
        opacity: 0;
        transform: translatey(1.5rem);
    }
    100% {
        opacity: 1;
        transform: translatey(0);
    }
}
@keyframes fade_in_down {
    0% {
        opacity: 0;
        transform: translatey(-1.5rem);
    }
    100% {
        opacity: 1;
        transform: translatey(0);
    }
}
@keyframes change_black_white {
    0% {
        background-color: #13161B;
    }
    100% {
        background-color: rgba(0, 0, 0, 0);
    }
}
@keyframes fade_in_scale_down {
    0% {
        opacity: 0;
        transform: scale(1.2);
    }
    30% {
        opacity: 1;
    }
    100% {
        opacity: 1;
        transform: scale(1);
    }
}
@keyframes fade_in_right {
    0% {
        opacity: 0;
        transform: translateX(-10px);
    }
    100% {
        opacity: 1;
        transform: translateX(0);
    }
}
@keyframes fade_in_left {
    0% {
        opacity: 0;
        transform: translateX(10px);
    }
    100% {
        opacity: 1;
        transform: translateX(0);
    }
}
@keyframes zoom_up_door {
    0% {
        transform: scale(1);
    }
    100% {
        transform: scale(24);
    }
}
@keyframes zoom_down_door {
    0% {
        transform: scale(12);
    }
    100% {
        transform: scale(1);
    }
}
@keyframes zoom_down_door2 {
    0% {
        opacity: 0;
        transform: scale(12);
        background-color: #13161B;
    }
    30% {
        opacity: 0;
    }
    100% {
        opacity: 1;
        transform: scale(1);
        background-color: rgba(0, 0, 0, 0);
    }
}
/* 旋回アニメーションの定義 */
/* 横移動 */
@keyframes move-x {
    0% {
        transform: translateX(0) rotate(0deg) scale(1);
    }
    100% {
        transform: translateX(calc(var(--custom-rem) * -110)) rotate(60deg) scale(1.2);
    }
}
@keyframes move-xsp {
    0% {
        transform: translateX(0) rotate(0deg) scale(1);
    }
    100% {
        transform: translateX(calc(var(--custom-rem) * -80)) rotate(60deg) scale(1.2);
    }
}
/* 縦移動 */
@keyframes move-y {
    0% {
        transform: translateY(calc(var(--custom-rem) * -10));
    }
    25% {
        transform: translateY(calc(var(--custom-rem) * 0));
    }
    100% {
        transform: translateY(calc(var(--custom-rem) * -120));
    }
}
@keyframes move-ysp {
    0% {
        transform: translateY(-10);
    }
    25% {
        transform: translateY(calc(var(--custom-rem) * 0));
    }
    100% {
        transform: translateY(calc(var(--custom-rem) * -80));
    }
}
/* =======================================

調整用スタイルシート

 ======================================= */
/* マージン */
.no_m {
    margin: 0 !important;
}

.mt0 {
    margin-top: 0px !important;
}

.mt5 {
    margin-top: 5px !important;
}

.mt10 {
    margin-top: 10px !important;
}

.mt15 {
    margin-top: 15px !important;
}

.mt20 {
    margin-top: 20px !important;
}

.mt25 {
    margin-top: 25px !important;
}

.mt30 {
    margin-top: 30px !important;
}

.mt35 {
    margin-top: 35px !important;
}

.mt40 {
    margin-top: 40px !important;
}

.mt45 {
    margin-top: 45px !important;
}

.mt50 {
    margin-top: 50px !important;
}

.mt60 {
    margin-top: 60px !important;
}

.mt70 {
    margin-top: 70px !important;
}

.mb0 {
    margin-bottom: 0px !important;
}

.mb5 {
    margin-bottom: 5px !important;
}

.mb10 {
    margin-bottom: 10px !important;
}

.mb15 {
    margin-bottom: 15px !important;
}

.mb20 {
    margin-bottom: 20px !important;
}

.mb25 {
    margin-bottom: 25px !important;
}

.mb30 {
    margin-bottom: 30px !important;
}

.mb35 {
    margin-bottom: 35px !important;
}

.mb40 {
    margin-bottom: 40px !important;
}

.mb45 {
    margin-bottom: 45px !important;
}

.mb50 {
    margin-bottom: 50px !important;
}

.mb60 {
    margin-bottom: 60px !important;
}

.mb70 {
    margin-bottom: 70px !important;
}

.ml0 {
    margin-left: 0px !important;
}

.ml5 {
    margin-left: 5px !important;
}

.ml10 {
    margin-left: 10px !important;
}

.ml15 {
    margin-left: 15px !important;
}

.ml20 {
    margin-left: 20px !important;
}

.ml25 {
    margin-left: 25px !important;
}

.ml30 {
    margin-left: 30px !important;
}

.ml35 {
    margin-left: 35px !important;
}

.ml40 {
    margin-left: 40px !important;
}

.ml45 {
    margin-left: 45px !important;
}

.ml50 {
    margin-left: 50px !important;
}

.ml60 {
    margin-left: 60px !important;
}

.ml70 {
    margin-left: 70px !important;
}

.mlat {
    margin-left: auto !important;
}

.ml1em {
    margin-left: 1em !important;
}

.mb1em {
    margin-bottom: 1em !important;
}

.mr0 {
    margin-right: 0px !important;
}

.mr5 {
    margin-right: 5px !important;
}

.mr10 {
    margin-right: 10px !important;
}

.mr15 {
    margin-right: 15px !important;
}

.mr20 {
    margin-right: 20px !important;
}

.mr25 {
    margin-right: 25px !important;
}

.mr30 {
    margin-right: 30px !important;
}

.mr35 {
    margin-right: 35px !important;
}

.mr40 {
    margin-right: 40px !important;
}

.mr45 {
    margin-right: 45px !important;
}

.mr50 {
    margin-right: 50px !important;
}

.mr60 {
    margin-right: 60px !important;
}

.mr70 {
    margin-right: 70px !important;
}

.mt0_5rem {
    margin-top: 0.5rem !important;
}

.mt1_0rem {
    margin-top: 1rem !important;
}

.mt1_5rem {
    margin-top: 1.5rem !important;
}

.mt2_0rem {
    margin-top: 2rem !important;
}

.mt2_5rem {
    margin-top: 2.5rem !important;
}

.mt3_0rem {
    margin-top: 3rem !important;
}

.mt3_5rem {
    margin-top: 3.5rem !important;
}

.mt4_0rem {
    margin-top: 4rem !important;
}

.mt4_5rem {
    margin-top: 4.5rem !important;
}

.mt5_0rem {
    margin-top: 5rem !important;
}

.mt6_0rem {
    margin-top: 6rem !important;
}

.mt7_0rem {
    margin-top: 7rem !important;
}

.mb0_5rem {
    margin-bottom: 0.5rem !important;
}

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

.mb1_5rem {
    margin-bottom: 1.5rem !important;
}

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

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

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

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

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

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

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

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

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

.ml0_5rem {
    margin-left: 0.5rem !important;
}

.ml1_0rem {
    margin-left: 1rem !important;
}

.ml1_5rem {
    margin-left: 1.5rem !important;
}

.ml2_0rem {
    margin-left: 2rem !important;
}

.ml2_5rem {
    margin-left: 2.5rem !important;
}

.ml3_0rem {
    margin-left: 3rem !important;
}

.ml3_5rem {
    margin-left: 3.5rem !important;
}

.ml4_0rem {
    margin-left: 4rem !important;
}

.ml4_5rem {
    margin-left: 4.5rem !important;
}

.ml5_0rem {
    margin-left: 5rem !important;
}

.ml6_0rem {
    margin-left: 6rem !important;
}

.ml7_0rem {
    margin-left: 7rem !important;
}

.mr0_5rem {
    margin-right: 0.5rem !important;
}

.mr1_0rem {
    margin-right: 1rem !important;
}

.mr1_5rem {
    margin-right: 1.5rem !important;
}

.mr2_0rem {
    margin-right: 2rem !important;
}

.mr2_5rem {
    margin-right: 2.5rem !important;
}

.mr3_0rem {
    margin-right: 3rem !important;
}

.mr3_5rem {
    margin-right: 3.5rem !important;
}

.mr4_0rem {
    margin-right: 4rem !important;
}

.mr4_5rem {
    margin-right: 4.5rem !important;
}

.mr5_0rem {
    margin-right: 5rem !important;
}

.mr6_0rem {
    margin-right: 6rem !important;
}

.mr7_0rem {
    margin-right: 7rem !important;
}

.mrat {
    margin-right: auto !important;
}

.myoko_at {
    margin-left: auto !important;
    margin-right: auto !important;
}

@media (max-width: 767px) {
    .no_m_sp {
        margin: 0 !important;
    }
    .mt0_sp {
        margin-top: 0px !important;
    }
    .mt1w_sp {
        margin-top: 1vw !important;
    }
    .mt2w_sp {
        margin-top: 2vw !important;
    }
    .mt3w_sp {
        margin-top: 3vw !important;
    }
    .mt4w_sp {
        margin-top: 4vw !important;
    }
    .mt5w_sp {
        margin-top: 5vw !important;
    }
    .mt6w_sp {
        margin-top: 6vw !important;
    }
    .mt7w_sp {
        margin-top: 7vw !important;
    }
    .mt8w_sp {
        margin-top: 8vw !important;
    }
    .mt9w_sp {
        margin-top: 9vw !important;
    }
    .mt10w_sp {
        margin-top: 10vw !important;
    }
    .mb0_sp {
        margin-bottom: 0px !important;
    }
    .mb1w_sp {
        margin-bottom: 1vw !important;
    }
    .mb2w_sp {
        margin-bottom: 2vw !important;
    }
    .mb3w_sp {
        margin-bottom: 3vw !important;
    }
    .mb4w_sp {
        margin-bottom: 4vw !important;
    }
    .mb5w_sp {
        margin-bottom: 5vw !important;
    }
    .mb6w_sp {
        margin-bottom: 6vw !important;
    }
    .mb7w_sp {
        margin-bottom: 7vw !important;
    }
    .mb8w_sp {
        margin-bottom: 8vw !important;
    }
    .mb9w_sp {
        margin-bottom: 9vw !important;
    }
    .mb10w_sp {
        margin-bottom: 10vw !important;
    }
    .ml0_sp {
        margin-left: 0px !important;
    }
    .ml3w_sp {
        margin-left: 3vw !important;
    }
    .mlat_sp {
        margin-left: auto !important;
    }
    .ml1em_sp {
        margin-left: 1em !important;
    }
    .mr0_sp {
        margin-right: 0px !important;
    }
    .mr3w_sp {
        margin-right: 3vw !important;
    }
    .mrat_sp {
        margin-right: auto !important;
    }
    .myoko_at_sp {
        margin-left: auto !important;
        margin-right: auto !important;
    }
}
/* パディング */
.no_p {
    padding: 0 !important;
}

.pt0 {
    padding-top: 0px !important;
}

.pt5 {
    padding-top: 5px !important;
}

.pt10 {
    padding-top: 10px !important;
}

.pt15 {
    padding-top: 15px !important;
}

.pt20 {
    padding-top: 20px !important;
}

.pt25 {
    padding-top: 25px !important;
}

.pt30 {
    padding-top: 30px !important;
}

.pt35 {
    padding-top: 35px !important;
}

.pt40 {
    padding-top: 40px !important;
}

.pt45 {
    padding-top: 45px !important;
}

.pt50 {
    padding-top: 50px !important;
}

.pt60 {
    padding-top: 60px !important;
}

.pt70 {
    padding-top: 70px !important;
}

.pb0 {
    padding-bottom: 0px !important;
}

.pb5 {
    padding-bottom: 5px !important;
}

.pb10 {
    padding-bottom: 10px !important;
}

.pb15 {
    padding-bottom: 15px !important;
}

.pb20 {
    padding-bottom: 20px !important;
}

.pb25 {
    padding-bottom: 25px !important;
}

.pb30 {
    padding-bottom: 30px !important;
}

.pb35 {
    padding-bottom: 35px !important;
}

.pb40 {
    padding-bottom: 40px !important;
}

.pb45 {
    padding-bottom: 45px !important;
}

.pb50 {
    padding-bottom: 50px !important;
}

.pb60 {
    padding-bottom: 60px !important;
}

.pb70 {
    padding-bottom: 70px !important;
}

.pl0 {
    padding-left: 0px !important;
}

.pl5 {
    padding-left: 5px !important;
}

.pl10 {
    padding-left: 10px !important;
}

.pl15 {
    padding-left: 15px !important;
}

.pl20 {
    padding-left: 20px !important;
}

.pl25 {
    padding-left: 25px !important;
}

.pl30 {
    padding-left: 30px !important;
}

.pl35 {
    padding-left: 35px !important;
}

.pl40 {
    padding-left: 40px !important;
}

.pl45 {
    padding-left: 45px !important;
}

.pl50 {
    padding-left: 50px !important;
}

.pl60 {
    padding-left: 60px !important;
}

.pl70 {
    padding-left: 70px !important;
}

.pr0 {
    padding-right: 0px !important;
}

.pr5 {
    padding-right: 5px !important;
}

.pr10 {
    padding-right: 10px !important;
}

.pr15 {
    padding-right: 15px !important;
}

.pr20 {
    padding-right: 20px !important;
}

.pr25 {
    padding-right: 25px !important;
}

.pr30 {
    padding-right: 30px !important;
}

.pr35 {
    padding-right: 35px !important;
}

.pr40 {
    padding-right: 40px !important;
}

.pr45 {
    padding-right: 45px !important;
}

.pr50 {
    padding-right: 50px !important;
}

.pr60 {
    padding-right: 60px !important;
}

.pr70 {
    padding-right: 70px !important;
}

.pt0_5rem {
    padding-top: 0.5rem !important;
}

.pt1_0rem {
    padding-top: 1rem !important;
}

.pt1_5rem {
    padding-top: 1.5rem !important;
}

.pt2_0rem {
    padding-top: 2rem !important;
}

.pt2_5rem {
    padding-top: 2.5rem !important;
}

.pt3_0rem {
    padding-top: 3rem !important;
}

.pt3_5rem {
    padding-top: 3.5rem !important;
}

.pt4_0rem {
    padding-top: 4rem !important;
}

.pt4_5rem {
    padding-top: 4.5rem !important;
}

.pt5_0rem {
    padding-top: 5rem !important;
}

.pt6_0rem {
    padding-top: 6rem !important;
}

.pt7_0rem {
    padding-top: 7rem !important;
}

.pb0_5rem {
    padding-bottom: 0.5rem !important;
}

.pb1_0rem {
    padding-bottom: 1rem !important;
}

.pb1_5rem {
    padding-bottom: 1.5rem !important;
}

.pb2_0rem {
    padding-bottom: 2rem !important;
}

.pb2_5rem {
    padding-bottom: 2.5rem !important;
}

.pb3_0rem {
    padding-bottom: 3rem !important;
}

.pb3_5rem {
    padding-bottom: 3.5rem !important;
}

.pb4_0rem {
    padding-bottom: 4rem !important;
}

.pb4_5rem {
    padding-bottom: 4.5rem !important;
}

.pb5_0rem {
    padding-bottom: 5rem !important;
}

.pb6_0rem {
    padding-bottom: 6rem !important;
}

.pb7_0rem {
    padding-bottom: 7rem !important;
}

.pl0_5rem {
    padding-left: 0.5rem !important;
}

.pl1_0rem {
    padding-left: 1rem !important;
}

.pl1_5rem {
    padding-left: 1.5rem !important;
}

.pl2_0rem {
    padding-left: 2rem !important;
}

.pl2_5rem {
    padding-left: 2.5rem !important;
}

.pl3_0rem {
    padding-left: 3rem !important;
}

.pl3_5rem {
    padding-left: 3.5rem !important;
}

.pl4_0rem {
    padding-left: 4rem !important;
}

.pl4_5rem {
    padding-left: 4.5rem !important;
}

.pl5_0rem {
    padding-left: 5rem !important;
}

.pl6_0rem {
    padding-left: 6rem !important;
}

.pl7_0rem {
    padding-left: 7rem !important;
}

.pr0_5rem {
    padding-right: 0.5rem !important;
}

.pr1_0rem {
    padding-right: 1rem !important;
}

.pr1_5rem {
    padding-right: 1.5rem !important;
}

.pr2_0rem {
    padding-right: 2rem !important;
}

.pr2_5rem {
    padding-right: 2.5rem !important;
}

.pr3_0rem {
    padding-right: 3rem !important;
}

.pr3_5rem {
    padding-right: 3.5rem !important;
}

.pr4_0rem {
    padding-right: 4rem !important;
}

.pr4_5rem {
    padding-right: 4.5rem !important;
}

.pr5_0rem {
    padding-right: 5rem !important;
}

.pr6_0rem {
    padding-right: 6rem !important;
}

.pr7_0rem {
    padding-right: 7rem !important;
}

.p1em {
    padding: 1em !important;
}

.p05em {
    padding: 0.5em !important;
}

.p03em {
    padding: 0.3em !important;
}

.pb1em {
    padding-bottom: 1em;
}

@media (max-width: 767px) {
    .no_p_sp {
        padding: 0 !important;
    }
    .pt0_sp {
        padding-top: 0px !important;
    }
    .pt1w_sp {
        padding-top: 1vw !important;
    }
    .pt2w_sp {
        padding-top: 2vw !important;
    }
    .pt3w_sp {
        padding-top: 3vw !important;
    }
    .pt4w_sp {
        padding-top: 4vw !important;
    }
    .pt5w_sp {
        padding-top: 5vw !important;
    }
    .pt6w_sp {
        padding-top: 6vw !important;
    }
    .pt7w_sp {
        padding-top: 7vw !important;
    }
    .pt8w_sp {
        padding-top: 8vw !important;
    }
    .pt9w_sp {
        padding-top: 9vw !important;
    }
    .pt10w_sp {
        padding-top: 10vw !important;
    }
    .pb0_sp {
        padding-bottom: 0px !important;
    }
    .pb1w_sp {
        padding-bottom: 1vw !important;
    }
    .pb2w_sp {
        padding-bottom: 2vw !important;
    }
    .pb3w_sp {
        padding-bottom: 3vw !important;
    }
    .pb4w_sp {
        padding-bottom: 4vw !important;
    }
    .pb5w_sp {
        padding-bottom: 5vw !important;
    }
    .pb6w_sp {
        padding-bottom: 6vw !important;
    }
    .pb7w_sp {
        padding-bottom: 7vw !important;
    }
    .pb8w_sp {
        padding-bottom: 8vw !important;
    }
    .pb9w_sp {
        padding-bottom: 9vw !important;
    }
    .pb10w_sp {
        padding-bottom: 10vw !important;
    }
    .pl0_sp {
        padding-left: 0px !important;
    }
    .pl1w_sp {
        padding-left: 1vw !important;
    }
    .pl2w_sp {
        padding-left: 2vw !important;
    }
    .pl3w_sp {
        padding-left: 3vw !important;
    }
    .pl4w_sp {
        padding-left: 4vw !important;
    }
    .pl5w_sp {
        padding-left: 5vw !important;
    }
    .pl6w_sp {
        padding-left: 6vw !important;
    }
    .pl7w_sp {
        padding-left: 7vw !important;
    }
    .pl8w_sp {
        padding-left: 8vw !important;
    }
    .pl9w_sp {
        padding-left: 9vw !important;
    }
    .pl10w_sp {
        padding-left: 10vw !important;
    }
    .pr0_sp {
        padding-right: 0px !important;
    }
    .pr1w_sp {
        padding-right: 1vw !important;
    }
    .pr2w_sp {
        padding-right: 2vw !important;
    }
    .pr3w_sp {
        padding-right: 3vw !important;
    }
    .pr4w_sp {
        padding-right: 4vw !important;
    }
    .pr5w_sp {
        padding-right: 5vw !important;
    }
    .pr6w_sp {
        padding-right: 6vw !important;
    }
    .pr7w_sp {
        padding-right: 7vw !important;
    }
    .pr8w_sp {
        padding-right: 8vw !important;
    }
    .pr9w_sp {
        padding-right: 9vw !important;
    }
    .pr10w_sp {
        padding-right: 10vw !important;
    }
    .p1em_sp {
        padding: 1em !important;
    }
    .p05em_sp {
        padding: 0.5em !important;
    }
    .p03em_sp {
        padding: 0.3em !important;
    }
}
/* アライン */
.al_c {
    text-align: center !important;
}

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

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

.val_m {
    vertical-align: middle !important;
}

@media (max-width: 767px) {
    .al_c_sp {
        text-align: center !important;
    }
    .al_r_sp {
        text-align: right !important;
    }
    .al_l_sp {
        text-align: left !important;
    }
}
/* 文字装飾 */
.wht {
    color: #fff !important;
}

.red {
    color: #ff0000 !important;
}

.b {
    font-weight: bold !important;
}

.fs_9 {
    font-size: 9px !important;
}

.fs_10 {
    font-size: 10px !important;
}

.fs_11 {
    font-size: 11px !important;
}

.fs_12 {
    font-size: 12px !important;
}

.fs_13 {
    font-size: 13px !important;
}

.fs_14 {
    font-size: 14px !important;
}

.fs_15 {
    font-size: 15px !important;
}

.fs_16 {
    font-size: 16px !important;
}

.fs_17 {
    font-size: 17px !important;
}

.fs_18 {
    font-size: 18px !important;
}

.fs_19 {
    font-size: 19px !important;
}

.fs_20 {
    font-size: 20px !important;
}

.fs_21 {
    font-size: 21px !important;
}

.fs_22 {
    font-size: 22px !important;
}

.fs_23 {
    font-size: 23px !important;
}

.fs_24 {
    font-size: 24px !important;
}

.fs_25 {
    font-size: 25px !important;
}

.fs_26 {
    font-size: 26px !important;
}

.em05 {
    font-size: 0.5em !important;
}

.em06 {
    font-size: 0.6em !important;
}

.em07 {
    font-size: 0.7em !important;
}

.em08 {
    font-size: 0.8em !important;
}

.em09 {
    font-size: 0.9em !important;
}

.em10 {
    font-size: 1em !important;
}

.em11 {
    font-size: 1.1em !important;
}

.em12 {
    font-size: 1.2em !important;
}

.em13 {
    font-size: 1.3em !important;
}

.em14 {
    font-size: 1.4em !important;
}

.em15 {
    font-size: 1.5em !important;
}

.em16 {
    font-size: 1.6em !important;
}

.em17 {
    font-size: 1.7em !important;
}

.em18 {
    font-size: 1.8em !important;
}

.em19 {
    font-size: 1.9em !important;
}

.em20 {
    font-size: 2em !important;
}

.rem05 {
    font-size: 0.5rem !important;
}

.rem06 {
    font-size: 0.6rem !important;
}

.rem07 {
    font-size: 0.7rem !important;
}

.rem08 {
    font-size: 0.8rem !important;
}

.rem09 {
    font-size: 0.9rem !important;
}

.rem10 {
    font-size: 1rem !important;
}

.rem11 {
    font-size: 1.1rem !important;
}

.rem12 {
    font-size: 1.2rem !important;
}

.rem13 {
    font-size: 1.3rem !important;
}

.rem14 {
    font-size: 1.4rem !important;
}

.rem15 {
    font-size: 1.5rem !important;
}

.rem16 {
    font-size: 1.6rem !important;
}

.rem17 {
    font-size: 1.7rem !important;
}

.rem18 {
    font-size: 1.8rem !important;
}

.rem19 {
    font-size: 1.9rem !important;
}

.rem20 {
    font-size: 2rem !important;
}

.rem21 {
    font-size: 2.1rem !important;
}

.rem22 {
    font-size: 2.2rem !important;
}

.rem23 {
    font-size: 2.3rem !important;
}

.rem24 {
    font-size: 2.4rem !important;
}

.rem25 {
    font-size: 2.5rem !important;
}

.rem26 {
    font-size: 2.6rem !important;
}

.rem27 {
    font-size: 2.7rem !important;
}

.rem28 {
    font-size: 2.8rem !important;
}

.rem29 {
    font-size: 2.9rem !important;
}

.rem30 {
    font-size: 3rem !important;
}

@media (min-width: 768px) {
    .em05_pc {
        font-size: 0.5em !important;
    }
    .em06_pc {
        font-size: 0.6em !important;
    }
    .em07_pc {
        font-size: 0.7em !important;
    }
    .em08_pc {
        font-size: 0.8em !important;
    }
    .em09_pc {
        font-size: 0.9em !important;
    }
    .em10_pc {
        font-size: 1em !important;
    }
    .em11_pc {
        font-size: 1.1em !important;
    }
    .em12_pc {
        font-size: 1.2em !important;
    }
    .em13_pc {
        font-size: 1.3em !important;
    }
    .em14_pc {
        font-size: 1.4em !important;
    }
    .em15_pc {
        font-size: 1.5em !important;
    }
    .em16_pc {
        font-size: 1.6em !important;
    }
    .em17_pc {
        font-size: 1.7em !important;
    }
    .em18_pc {
        font-size: 1.8em !important;
    }
    .em19_pc {
        font-size: 1.9em !important;
    }
    .em20_pc {
        font-size: 2em !important;
    }
}
@media (max-width: 767px) {
    .em05_sp {
        font-size: 0.5em !important;
    }
    .em06_sp {
        font-size: 0.6em !important;
    }
    .em07_sp {
        font-size: 0.7em !important;
    }
    .em08_sp {
        font-size: 0.8em !important;
    }
    .em09_sp {
        font-size: 0.9em !important;
    }
    .em10_sp {
        font-size: 1em !important;
    }
    .em11_sp {
        font-size: 1.1em !important;
    }
    .em12_sp {
        font-size: 1.2em !important;
    }
    .em13_sp {
        font-size: 1.3em !important;
    }
    .em14_sp {
        font-size: 1.4em !important;
    }
    .em15_sp {
        font-size: 1.5em !important;
    }
    .em16_sp {
        font-size: 1.6em !important;
    }
    .em17_sp {
        font-size: 1.7em !important;
    }
    .em18_sp {
        font-size: 1.8em !important;
    }
    .em19_sp {
        font-size: 1.9em !important;
    }
    .em20_sp {
        font-size: 2em !important;
    }
    .rem05_sp {
        font-size: 0.5rem !important;
    }
    .rem06_sp {
        font-size: 0.6rem !important;
    }
    .rem07_sp {
        font-size: 0.7rem !important;
    }
    .rem08_sp {
        font-size: 0.8rem !important;
    }
    .rem09_sp {
        font-size: 0.9rem !important;
    }
    .rem10_sp {
        font-size: 1rem !important;
    }
    .rem11_sp {
        font-size: 1.1rem !important;
    }
    .rem12_sp {
        font-size: 1.2rem !important;
    }
    .rem13_sp {
        font-size: 1.3rem !important;
    }
    .rem14_sp {
        font-size: 1.4rem !important;
    }
    .rem15_sp {
        font-size: 1.5rem !important;
    }
    .rem16_sp {
        font-size: 1.6rem !important;
    }
    .rem17_sp {
        font-size: 1.7rem !important;
    }
    .rem18_sp {
        font-size: 1.8rem !important;
    }
    .rem19_sp {
        font-size: 1.9rem !important;
    }
    .rem20_sp {
        font-size: 2rem !important;
    }
    .rem21_sp {
        font-size: 2.1rem !important;
    }
    .rem22_sp {
        font-size: 2.2rem !important;
    }
    .rem23_sp {
        font-size: 2.3rem !important;
    }
    .rem24_sp {
        font-size: 2.4rem !important;
    }
    .rem25_sp {
        font-size: 2.5rem !important;
    }
    .rem26_sp {
        font-size: 2.6rem !important;
    }
    .rem27_sp {
        font-size: 2.7rem !important;
    }
    .rem28_sp {
        font-size: 2.8rem !important;
    }
    .rem29_sp {
        font-size: 2.9rem !important;
    }
    .rem30_sp {
        font-size: 3rem !important;
    }
}
.lh10 {
    line-height: 1 !important;
}

.lh11 {
    line-height: 1.1 !important;
}

.lh12 {
    line-height: 1.2 !important;
}

.lh13 {
    line-height: 1.3 !important;
}

.lh14 {
    line-height: 1.4 !important;
}

.lh15 {
    line-height: 1.5 !important;
}

.lh16 {
    line-height: 1.6 !important;
}

.lh17 {
    line-height: 1.7 !important;
}

.lh18 {
    line-height: 1.8 !important;
}

.lh19 {
    line-height: 1.9 !important;
}

.lh20 {
    line-height: 2 !important;
}

.yum {
    font-family: "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "YuMincho", "Yu Mincho", "游明朝", serif !important;
}

/* 段落 */
.jp_indent {
    text-indent: -1em;
    padding-left: 1em;
}

/* ボーダー */
.no_bdr {
    border: none !important;
}

.bdr_ccc {
    border: 1px solid #ccc;
}

/*　背景色y　*/
.bg_wh {
    background-color: #fff !important;
}

.bg_ccc {
    background-color: #ccc !important;
}

/* CSS3 角丸 */
.radius_5 {
    border-raidus: 5px;
    -moz-border-radius: 5px;
    -webkit-border-radius: 5px;
    -o-border-radius: 5px;
    -ms-border-radius: 5px;
}

.radius_10 {
    border-raidus: 10px;
    -moz-border-radius: 10px;
    -webkit-border-radius: 10px;
    -o-border-radius: 10px;
    -ms-border-radius: 10px;
}

.radius_15 {
    border-raidus: 15px;
    -moz-border-radius: 15px;
    -webkit-border-radius: 15px;
    -o-border-radius: 15px;
    -ms-border-radius: 15px;
}

.radius_20 {
    border-raidus: 20px;
    -moz-border-radius: 20px;
    -webkit-border-radius: 20px;
    -o-border-radius: 20px;
    -ms-border-radius: 20px;
}

.radius_25 {
    border-raidus: 25px;
    -moz-border-radius: 25px;
    -webkit-border-radius: 25px;
    -o-border-radius: 25px;
    -ms-border-radius: 25px;
}

.radius_30 {
    border-raidus: 30px;
    -moz-border-radius: 30px;
    -webkit-border-radius: 30px;
    -o-border-radius: 30px;
    -ms-border-radius: 30px;
}

/* フロート・クリアフィックス */
.no_fl {
    float: none !important;
}

.fl_l {
    float: left !important;
}

.fl_r {
    float: right !important;
}

.clear {
    clear: both !important;
}

.clearfix:after {
    display: block;
    clear: both;
    height: 0px;
    line-height: 0px;
    visibility: hidden;
    content: ".";
}

.clearfix {
    display: block; /* for IE8 */
}

/* 幅 */
.w100p {
    width: 100% !important;
}

.w90p {
    width: 90% !important;
}

.w80p {
    width: 80% !important;
}

.w70p {
    width: 70% !important;
}

.w60p {
    width: 60% !important;
}

.w50p {
    width: 50% !important;
}

.w40p {
    width: 40% !important;
}

.w30p {
    width: 30% !important;
}

.w20p {
    width: 20% !important;
}

.w10p {
    width: 10% !important;
}

.w5p {
    width: 5% !important;
}

@media (min-width: 768px) {
    .w100p_pc {
        width: 100% !important;
    }
    .w90p_pc {
        width: 90% !important;
    }
    .w80p_pc {
        width: 80% !important;
    }
    .w70p_pc {
        width: 70% !important;
    }
    .w60p_pc {
        width: 60% !important;
    }
    .w50p_pc {
        width: 50% !important;
    }
    .w40p_pc {
        width: 40% !important;
    }
    .w30p_pc {
        width: 30% !important;
    }
    .w20p_pc {
        width: 20% !important;
    }
    .w10p_pc {
        width: 10% !important;
    }
    .w5p_pc {
        width: 5% !important;
    }
}
@media (max-width: 767px) {
    .w100p_sp {
        width: 100% !important;
    }
    .w90p_sp {
        width: 90% !important;
    }
    .w80p_sp {
        width: 80% !important;
    }
    .w70p_sp {
        width: 70% !important;
    }
    .w60p_sp {
        width: 60% !important;
    }
    .w50p_sp {
        width: 50% !important;
    }
    .w40p_sp {
        width: 40% !important;
    }
    .w30p_sp {
        width: 30% !important;
    }
    .w20p_sp {
        width: 20% !important;
    }
    .w10p_sp {
        width: 10% !important;
    }
    .w5p_sp {
        width: 5% !important;
    }
}
/* position */
.psn_re {
    position: relative !important;
}

.ab_off { /*absoluteを解除する*/
    position: relative !important;
    top: auto !important;
    bottom: auto !important;
    left: auto !important;
    right: auto !important;
}

/* display */
.dis_ib {
    display: inline-block !important;
}

.dis_il {
    display: inline !important;
}

.dis_blk {
    display: block !important;
}

/* =======================================

 HOME FV

 ======================================= */
.fv {
    max-height: calc(var(--custom-rem) * 86.7);
    min-height: 100dvh;
    height: 100dvh;
    background-color: #13161B;
    position: relative;
}
@media (max-width: 767px) {
    .fv {
        min-height: 64rem;
        height: 100vh;
        overflow: hidden;
        -webkit-user-select: none;
        user-select: none;
        touch-action: manipulation;
    }
}
.fv .base {
    width: 100%;
    padding: 0.9rem 1.3rem;
    position: relative;
    z-index: 5;
}
@media (max-width: 767px) {
    .fv .base {
        padding: 1rem 0.7rem;
    }
}
.fv--ttl {
    display: flex;
    flex-direction: row;
    align-items: center;
    width: 63.025rem;
    width: calc(var(--custom-rem) * 63.025);
    height: 5.6rem;
    height: calc(var(--custom-rem) * 5.6);
    background: linear-gradient(262.59deg, #212121 7.43%, #4F4F4F 89.7%);
    border: 1px solid rgba(255, 255, 255, 0.5);
    border-radius: 0.8rem;
    border-radius: calc(var(--custom-rem) * 0.8);
}
@media (max-width: 767px) {
    .fv--ttl {
        width: 29.296rem;
        height: 4.754rem;
    }
}
.fv--ttl--img {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    width: calc(9.925rem + 1px);
    width: calc(var(--custom-rem) * 9.925 + 1px);
    height: 100%;
    border-right: 1px solid #D9D9D9;
}
@media (max-width: 767px) {
    .fv--ttl--img {
        width: calc(10.94rem + 1px);
    }
}
.fv--ttl--img img {
    display: block;
    width: 5.525rem;
    width: calc(var(--custom-rem) * 5.525);
}
@media (max-width: 767px) {
    .fv--ttl--img img {
        width: 4.352rem;
    }
}
.fv--ttl--text {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    flex-wrap: nowrap;
    padding-left: 2rem;
    padding-left: calc(var(--custom-rem) * 2);
}
@media (max-width: 767px) {
    .fv--ttl--text {
        flex-wrap: wrap;
        padding-left: 1.358rem;
    }
}
.fv--ttl--text span {
    display: block;
    height: 2rem;
    height: calc(var(--custom-rem) * 2);
    font-size: 1.4rem;
    font-size: calc(var(--custom-rem) * 1.4);
    font-weight: 700;
    letter-spacing: 0.04em;
    line-height: 2rem;
    line-height: calc(var(--custom-rem) * 2);
    color: #fff;
    padding-left: 1.1rem;
}
@media (max-width: 767px) {
    .fv--ttl--text span {
        width: 100%;
        height: 100%;
        font-size: 1.1rem;
        line-height: 1.1;
        padding-left: 0;
    }
}
.fv--ttl--text span.large {
    font-size: 1.6rem;
    font-size: calc(var(--custom-rem) * 1.6);
    border-right: 1px solid #D9D9D9;
    padding-left: 0;
    padding-right: 1.1rem;
    padding-right: calc(var(--custom-rem) * 1.1);
}
@media (max-width: 767px) {
    .fv--ttl--text span.large {
        font-size: 1.2rem;
        line-height: 1.5;
        border-right: 0;
        padding-right: 0;
    }
}

.fv_bird {
    display: block;
    width: 10rem;
    width: calc(var(--custom-rem) * 10);
    position: absolute;
    top: 19rem;
    top: calc(var(--custom-rem) * 19);
    left: 20rem;
    left: calc(var(--custom-rem) * 50);
    z-index: 3;
}
@media (max-width: 767px) {
    .fv_bird {
        width: 6rem;
        top: 21.8rem;
        left: 50%;
        margin-left: 9rem;
    }
}
.fv_bird img {
    display: block;
    width: 100%;
}

.fv_wrap {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    overflow: hidden;
}
@media (max-width: 767px) {
    .fv_wrap {
        height: 77.3rem;
        height: 72rem;
        max-height: 100%;
        overflow: visible;
    }
}
.fv_wrap .notes {
    font-size: 1rem;
    font-weight: 700;
    line-height: 1.55;
    letter-spacing: 0.04em;
    text-align: left;
    color: #fff;
    opacity: 0.9;
    padding: 0 0 0;
    margin: 0 0 0;
    position: absolute;
    bottom: 4.8rem;
    left: 1.6rem;
    z-index: 3;
}

.fv_door {
    width: 160rem;
    width: calc(var(--custom-rem) * 160);
    height: 100%;
    margin-left: -80rem;
    margin-left: calc(var(--custom-rem) * -80);
    position: absolute;
    bottom: 0;
    left: 50%;
}
@media (max-width: 767px) {
    .fv_door {
        width: 124rem;
        height: 100%;
        margin-left: -62rem;
    }
    .fv_door::after {
        content: "";
        display: block;
        width: 100%;
        height: 100vh;
        background-color: #929498;
        position: absolute;
        top: 100%;
        left: 0;
    }
}
.fv_door--inner {
    width: 100vw;
    position: absolute;
    top: 0;
    left: 50%;
    -webkit-transform: translateY(0) translateX(-50%);
    transform: translateY(0) translateX(-50%);
    z-index: 2;
}
.fv_door--btn {
    width: 10rem;
    width: calc(var(--custom-rem) * 10);
    aspect-ratio: 10/17.7;
    position: absolute;
    bottom: 12.5rem;
    bottom: calc(var(--custom-rem) * 12.5);
    left: 50%;
    z-index: 3;
}
@media (max-width: 767px) {
    .fv_door--btn {
        width: 7.3104rem;
        bottom: 15rem;
        aspect-ratio: 10/17.3;
    }
}
.fv_door--btn.large {
    width: 10.6rem;
    width: calc(var(--custom-rem) * 10.6);
    aspect-ratio: 10.6/21.6;
}
@media (max-width: 767px) {
    .fv_door--btn.large {
        width: 7.3rem;
    }
}
.fv_door--btn--focus {
    width: 100%;
    height: 100%;
    border-radius: 0.2rem;
    border-radius: calc(var(--custom-rem) * 0.2);
    background: rgba(0, 0, 0, 0.05);
}
.fv_door--btn--ttl {
    display: block;
    width: 16.4rem;
    width: calc(var(--custom-rem) * 16.1);
    max-width: none;
    position: absolute;
    top: 14.8rem;
    top: calc(var(--custom-rem) * 14.8);
    left: 50%;
    margin-left: -11.5rem;
    margin-left: calc(var(--custom-rem) * -11.5);
}
@media (max-width: 767px) {
    .fv_door--btn--ttl {
        width: 12.7rem;
        top: 11.6rem;
        margin-left: -11.3;
    }
}
.fv_door--btn.btn_01 {
    margin-left: -35rem;
    margin-left: calc(var(--custom-rem) * -35);
}
@media (max-width: 767px) {
    .fv_door--btn.btn_01 {
        margin-left: -24.4rem;
    }
}
.fv_door--btn.btn_02 {
    margin-left: -19.9rem;
    margin-left: calc(var(--custom-rem) * -19.9);
}
@media (max-width: 767px) {
    .fv_door--btn.btn_02 {
        margin-left: -14rem;
    }
}
.fv_door--btn.btn_02 .fv_door--btn--ttl {
    margin-left: -9.7rem;
    margin-left: calc(var(--custom-rem) * -9.7);
}
@media (max-width: 767px) {
    .fv_door--btn.btn_02 .fv_door--btn--ttl {
        margin-left: -8.6rem;
    }
}
.fv_door--btn.btn_03 {
    margin-left: -5.3rem;
    margin-left: calc(var(--custom-rem) * -5.3);
}
@media (max-width: 767px) {
    .fv_door--btn.btn_03 {
        margin-left: -3.7rem;
    }
}
.fv_door--btn.btn_03 .fv_door--btn--ttl {
    margin-left: -8.3rem;
    margin-left: calc(var(--custom-rem) * -8.3);
    top: 18.8rem;
    top: calc(var(--custom-rem) * 18.8);
}
@media (max-width: 767px) {
    .fv_door--btn.btn_03 .fv_door--btn--ttl {
        margin-left: -6.1rem;
        top: 13.65rem;
    }
}
.fv_door--btn.btn_04 {
    margin-left: 10rem;
    margin-left: calc(var(--custom-rem) * 10);
}
@media (max-width: 767px) {
    .fv_door--btn.btn_04 {
        margin-left: 6.8rem;
    }
}
.fv_door--btn.btn_04 .fv_door--btn--ttl {
    margin-left: -7.1rem;
    margin-left: calc(var(--custom-rem) * -7.1);
}
@media (max-width: 767px) {
    .fv_door--btn.btn_04 .fv_door--btn--ttl {
        margin-left: -4.2rem;
    }
}
.fv_door--btn.btn_05 {
    margin-left: 25.1rem;
    margin-left: calc(var(--custom-rem) * 25.1);
}
@media (max-width: 767px) {
    .fv_door--btn.btn_05 {
        margin-left: 17.2rem;
    }
}
.fv_door--btn.btn_05 .fv_door--btn--ttl {
    margin-left: -5.4rem;
    margin-left: calc(var(--custom-rem) * -5.4);
}
@media (max-width: 767px) {
    .fv_door--btn.btn_05 .fv_door--btn--ttl {
        margin-left: -1.5rem;
    }
}
.fv_door--building {
    display: block;
    width: 100%;
    height: calc(var(--custom-rem) * 86.7);
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: 2;
}
@media (max-width: 767px) {
    .fv_door--building {
        height: 74.3rem;
        pointer-events: none;
    }
}
.fv_door--building img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center bottom;
}
@media only screen and (max-width: 767px) {
    .fv_door--building img {
        pointer-events: none;
    }
}
.fv_door--bg {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center bottom;
}
@media (max-width: 767px) {
    .fv_door--bg {
        pointer-events: none;
    }
}
.fv_door--bg img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center bottom;
}

.fv_door_btn {
    width: 3.2rem;
    aspect-ratio: 1/1;
    position: absolute;
    bottom: 19.1rem;
    z-index: 3;
    opacity: 0.88;
    border-radius: 3.2rem;
    box-shadow: 0 0 2.667px 0 rgba(0, 0, 0, 0.25);
    -webkit-transition: opacity 0.2s;
    transition: opacity 0.2s;
}
@media (min-width: 768px) {
    .fv_door_btn {
        display: none;
    }
}
.fv_door_btn::after {
    content: "";
    display: block;
    width: 130%;
    height: 200%;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translateY(-50%) translateX(-50%);
    transform: translateY(-50%) translateX(-50%);
    z-index: 1;
}
._door_operating .fv_door_btn {
    opacity: 0;
}
.fv_door_btn img {
    display: block;
    width: 100%;
    /* ドラッグを禁止 */
    user-drag: none;
    -webkit-user-drag: none;
    /* テキスト選択や長押しメニューを抑制 */
    user-select: none;
    -webkit-user-select: none;
    -webkit-touch-callout: none; /* iOS Safariでの長押しメニュー禁止 */
}
.fv_door_btn.left {
    left: 0.6rem;
}
.fv_door_btn.right {
    right: 0.6rem;
}

/* アニメーション設定
------------------------------- */
/* 鳥 */
.bird-x {
    animation: move-x 3s ease-in-out 1.2s 1 forwards;
}
@media (max-width: 767px) {
    .bird-x {
        animation: move-xsp 6s ease-in-out 1.2s 1 forwards;
    }
}

.bird-y {
    animation: move-y 3s ease-in-out 1.2s 1 forwards;
}
@media (max-width: 767px) {
    .bird-y {
        animation: move-ysp 6s ease-in-out 1.2s 1 forwards;
    }
}

/* オープニング */
.page_standby:not(.from-door-standby) .fv--ttl {
    opacity: 0;
    animation: fade_in_down 0.6s ease-out 0.2s forwards;
    animation-iteration-count: 1;
}
.page_standby:not(.from-door-standby) .fv_door {
    opacity: 0;
    animation: fade_in_scale_down 1.2s cubic-bezier(0.25, 0.46, 0.45, 0.94) 0.6s forwards;
    animation-iteration-count: 1;
}
.page_standby:not(.from-door-standby) .fv_bird img {
    opacity: 0;
    animation: fade_in 1.2s cubic-bezier(0.25, 0.46, 0.45, 0.94) 1.2s forwards;
    animation-iteration-count: 1;
}
.page_standby:not(.from-door-standby) .fv_door--btn--ttl {
    opacity: 0;
    animation: fade_in_up 0.8s ease-out 1.4s forwards;
    animation-iteration-count: 1;
}
.page_standby:not(.from-door-standby) .fv_door_btn.left {
    opacity: 0;
    animation: fade_in_right 0.8s ease-out 2s forwards;
    animation-iteration-count: 1;
}
.page_standby:not(.from-door-standby) .fv_door_btn.right {
    opacity: 0;
    animation: fade_in_left 0.8s ease-out 2s forwards;
    animation-iteration-count: 1;
}
.page_standby:not(.from-door-standby) .fv_wrap .notes {
    opacity: 0;
    animation: fade_in 0.8s ease-out 2s forwards;
    animation-iteration-count: 1;
}
.page_standby:not(.from-door-standby) body {
    background-color: #ffffff;
}
.page_standby:not(.from-door-standby) .header,
.page_standby:not(.from-door-standby) .container,
.page_standby:not(.from-door-standby) .footer {
    opacity: 1;
}

/* 扉クリック */
.fv_wrap._active {
    z-index: 1001;
    animation: zoom_up_door 0.8s cubic-bezier(0.9, 0.03, 0.98, 0.23) 0s forwards;
    pointer-events: none;
}
.fv_wrap._reverse {
    z-index: 1001;
    pointer-events: none;
    transform: scale(12);
    animation: zoom_down_door 1s cubic-bezier(0.23, 0.98, 0.03, 0.9) 0s forwards;
}

.fv_door--btn {
    cursor: pointer;
}
@media (min-width: 768px) {
    .fv_door--btn:hover .fv_door--btn--focus {
        background: rgba(0, 0, 0, 0.45);
    }
}
.fv_door--btn .fv_door--btn--focus {
    -webkit-transition: 0.4s ease;
    transition: 0.4s ease;
}
.fv_door--btn._opened .fv_door--btn--focus {
    -webkit-transition: 0.4s ease 0.4s;
    transition: 0.4s ease 0.4s;
    background: #13161B;
}

/* 遷移先 */
.from-door-standby body {
    transform-origin: 50vw 50vh;
    transform: scale(12);
}
.from-door-standby.hus-from-door {
    background-color: #13161B;
    animation: change_black_white 0.4s ease-out 0.6s forwards;
}
.from-door-standby.hus-from-door body {
    opacity: 0;
    animation: zoom_down_door2 0.4s cubic-bezier(0.23, 0.98, 0.03, 0.9) 0.6s forwards, change_black_white 0.4s ease-out 0.6s forwards;
}
.from-door-standby.hus-from-door .header {
    opacity: 0;
    animation: fade_in_up 0.8s ease-out 0.6s forwards;
    animation-iteration-count: 1;
}
.from-door-standby.hus-from-door .container,
.from-door-standby.hus-from-door .footer {
    opacity: 0;
    animation: fade_in 1.4s ease-out 0.6s forwards;
    animation-iteration-count: 1;
}

/* =======================================

 404

 ======================================= */
.section_404 {
    padding: 8.8rem 0 12rem;
}
@media (max-width: 767px) {
    .section_404 {
        padding: 6.4rem 0 9.6rem;
    }
}
.section_404 .title {
    font-size: 6.4rem;
    font-weight: 700;
    line-height: 1.55;
    letter-spacing: 0.04em;
    text-align: center;
    padding: 0 0 0;
    margin: 0 0 0;
}
.section_404 .eng {
    font-size: 2rem;
    font-weight: 700;
    line-height: 1.55;
    letter-spacing: 0.04em;
    text-align: center;
    padding: 0 0 0;
    margin: -0.8rem 0 0;
}
@media (max-width: 767px) {
    .section_404 .eng {
        font-size: 1.5rem;
    }
}
.section_404 .desc {
    font-size: 2rem;
    font-weight: 700;
    line-height: 1.55;
    letter-spacing: 0.04em;
    text-align: center;
    padding: 0 0 0;
    margin: 4rem 0 0;
}
@media (max-width: 767px) {
    .section_404 .desc {
        font-size: 1.5rem;
    }
}
.section_404 .btn_square {
    width: 34rem;
    margin: 4rem auto 0;
}
@media (max-width: 767px) {
    .section_404 .btn_square {
        width: 100%;
    }
}

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

home

---------------------------------------- */
/* fv
------------------------------- */
.fv--block {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
}
.fv--block--bg {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center bottom;
}

/* ABOUT US
------------------------------- */
.about_ex {
    padding: 22rem 0 0;
    position: relative;
    overflow: hidden;
}
@media (max-width: 767px) {
    .about_ex {
        padding: 4.8rem 0 0;
    }
}
.about_ex .base {
    position: relative;
    z-index: 1;
}
.about_ex .desc {
    max-width: 88.4rem;
    font-size: 2.2rem;
    font-weight: 500;
    line-height: 1.95;
    letter-spacing: 0.04em;
    padding-left: 16.8rem;
}
@media (max-width: 767px) {
    .about_ex .desc {
        font-size: 1.6rem;
        padding-left: 0;
    }
}
.about_ex--img_01 {
    width: 80.2rem;
    aspect-ratio: 802/812;
    position: absolute;
    top: 0;
    right: -22.6rem;
}
@media (max-width: 767px) {
    .about_ex--img_01 {
        width: 40rem;
        aspect-ratio: 400/380;
        top: auto;
        bottom: -3.3rem;
        right: -27.1rem;
    }
}
.about_ex--img_01 img {
    display: block;
    width: 100%;
}
.about_ex--img_02 {
    width: 128rem;
    margin-top: 12rem;
}
@media (max-width: 767px) {
    .about_ex--img_02 {
        width: 100%;
    }
}
.about_ex--img_02 img {
    display: block;
    width: 100%;
}

/* 最新のお知らせ
------------------------------- */
.info_ex {
    padding: 10rem 0 12rem;
}
@media (max-width: 767px) {
    .info_ex {
        padding: 7.7rem 0 8.9rem;
    }
}
.info_ex--block {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    flex-wrap: wrap;
}
@media (max-width: 767px) {
    .info_ex--block {
        justify-content: center;
        padding: 0 0.5rem;
    }
}
.info_ex--block--img {
    display: block;
    width: 62rem;
    border-radius: 0.8rem;
    overflow: hidden;
    position: relative;
}
@media (max-width: 767px) {
    .info_ex--block--img {
        width: 100%;
    }
}
.info_ex--block--img .pickup_icon {
    width: 12rem;
    font-size: 1.6rem;
    padding: 0.8rem 2.4rem;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
}
@media (max-width: 767px) {
    .info_ex--block--img .pickup_icon {
        font-size: 1.4rem;
    }
}
.info_ex--block--img img {
    display: block;
    width: 100%;
}
.info_ex--block--item {
    width: 58rem;
    padding-top: 4.2rem;
}
@media (max-width: 767px) {
    .info_ex--block--item {
        width: 31.5rem;
        padding-top: 2.6rem;
    }
}
.info_ex--block--item .text_link {
    margin: 3.4rem 0 0 auto;
}
@media (max-width: 767px) {
    .info_ex--block--item .text_link {
        margin-top: 3rem;
    }
}
.info_ex .desc {
    font-size: 1.6rem;
    font-weight: 500;
    line-height: 1.95;
    letter-spacing: 0.04em;
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
}
@media (max-width: 767px) {
    .info_ex .desc {
        font-size: 1.4rem;
    }
}

/* 相模コンベヤー工業について
------------------------------- */
.about_sagami_ex {
    padding: 44rem 0 4rem;
    position: relative;
}
@media (max-width: 767px) {
    .about_sagami_ex {
        padding: 20rem 0 4rem;
    }
}
.about_sagami_ex .base {
    width: 144rem;
    position: relative;
    z-index: 1;
}
.about_sagami_ex--bg {
    width: 100%;
    height: 58rem;
    background-color: #000;
    position: absolute;
    top: 0;
    left: 0;
}
@media (max-width: 767px) {
    .about_sagami_ex--bg {
        height: 24rem;
    }
}
.about_sagami_ex--bg img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    opacity: 0.6;
}
.about_sagami_ex--block {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    flex-wrap: wrap;
    gap: 8rem;
    background-color: #fff;
}
@media (max-width: 767px) {
    .about_sagami_ex--block {
        justify-content: center;
        gap: 2.4rem;
    }
}
.about_sagami_ex--block--img {
    width: 80rem;
}
@media (max-width: 767px) {
    .about_sagami_ex--block--img {
        width: auto;
        margin: 0 -0.6rem;
    }
}
.about_sagami_ex--block--img img {
    display: block;
    width: 100%;
    height: 100%;
}
.about_sagami_ex--block--item {
    width: 44rem;
}
@media (max-width: 767px) {
    .about_sagami_ex--block--item {
        width: 100%;
    }
}
.about_sagami_ex--block--item .btn_square {
    margin-top: 3.2rem;
}
@media (max-width: 767px) {
    .about_sagami_ex--block--item .btn_square {
        width: 100%;
        margin-top: 2.9rem;
    }
}

/* 相模コンベヤー工業のサービス
------------------------------- */
.sagami_service_ex {
    padding: 16rem 0 16rem;
    position: relative;
}
@media (max-width: 767px) {
    .sagami_service_ex {
        padding: 4rem 0 0;
    }
}
.sagami_service_ex .base {
    width: 136rem;
    position: relative;
    z-index: 1;
}
.sagami_service_ex--block {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    padding-right: 2.2rem;
}
@media (max-width: 767px) {
    .sagami_service_ex--block {
        justify-content: center;
        gap: 4rem;
        padding-right: 0;
    }
}
.sagami_service_ex--block--img {
    width: 61rem;
}
@media (max-width: 767px) {
    .sagami_service_ex--block--img {
        width: auto;
        margin: -1.1rem -2.55rem 0 -0.75rem;
    }
}
.sagami_service_ex--block--img img {
    display: block;
    width: 100%;
}
.sagami_service_ex--block--item {
    width: 56rem;
}
@media (max-width: 767px) {
    .sagami_service_ex--block--item {
        width: 100%;
    }
    .sagami_service_ex--block--item .section_head {
        margin-bottom: 2.4rem;
    }
}
.sagami_service_ex--bg {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translateY(-50%) translateX(-50%);
    transform: translateY(-50%) translateX(-50%);
}
@media (max-width: 767px) {
    .sagami_service_ex--bg {
        height: 56rem;
        top: 0;
        left: 0;
        -webkit-transform: translateY(0) translateX(0);
        transform: translateY(0) translateX(0);
        overflow: hidden;
    }
}
.sagami_service_ex--bg img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
@media (max-width: 767px) {
    .sagami_service_ex--bg img {
        max-width: none;
        width: 226%;
        height: auto;
        object-fit: contain;
        -webkit-transform: translateY(-0.7rem) translateX(-17.6rem);
        transform: translateY(-0.7rem) translateX(-17.6rem);
    }
}

/* サービス一覧
------------------------------- */
.list_of_services {
    padding: 8rem 0 16rem;
    position: relative;
}
@media (max-width: 767px) {
    .list_of_services {
        margin-top: 8rem;
        padding: 4rem 0 8rem;
    }
}
.list_of_services .base {
    position: relative;
    z-index: 1;
}
@media (max-width: 767px) {
    .list_of_services .section_head {
        margin: 0;
    }
}
.list_of_services--list {
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
    flex-wrap: wrap;
    gap: 2rem 4.8rem;
    margin-top: 8rem;
}
@media (max-width: 767px) {
    .list_of_services--list {
        gap: 0.8rem;
        margin-top: 2.4rem;
        padding: 0 0.5rem;
    }
}
.list_of_services--list--item {
    width: 57.5rem;
}
@media (max-width: 767px) {
    .list_of_services--list--item {
        width: 100%;
    }
}
.list_of_services--card {
    display: block;
    width: 100%;
    height: 13.5rem;
    border-radius: 0.4rem;
    border: 1px solid #E6E6E6;
    padding: 2rem 4rem 1.8rem 4.3rem;
    position: relative;
    overflow: hidden;
}
@media (min-width: 768px) {
    .list_of_services--card .btn_oval_arrow {
        -webkit-transition: 0.4s ease;
        transition: 0.4s ease;
    }
    .list_of_services--card:hover {
        opacity: 1 !important;
        box-shadow: 0 0 0.6rem rgba(0, 0, 0, 0.5);
    }
    .list_of_services--card:hover .list_of_services--card--img img {
        transform: scale(1.1);
    }
}
@media (max-width: 767px) {
    .list_of_services--card {
        height: 10rem;
        padding: 2.25rem 1.5rem;
    }
}
.list_of_services--card--item {
    height: 100%;
    position: relative;
    z-index: 1;
}
@media (max-width: 767px) {
    .list_of_services--card--item {
        display: flex;
        align-items: flex-start;
        justify-content: flex-start;
        flex-wrap: wrap;
        align-content: center;
    }
}
.list_of_services--card--item .desc {
    font-size: 2rem;
    font-weight: 700;
    line-height: 1.55;
    letter-spacing: 0.04em;
    padding: 0 0 0;
    margin: 0 0 0;
}
@media (max-width: 767px) {
    .list_of_services--card--item .desc {
        width: 100%;
        font-size: 1.5rem;
    }
}
.list_of_services--card--item img {
    display: block;
    width: auto;
    height: 3rem;
}
@media (max-width: 767px) {
    .list_of_services--card--item img {
        height: 2.4rem;
    }
}
.list_of_services--card--item .btn_oval_arrow {
    position: absolute;
    bottom: 0;
    right: 0;
}
@media (max-width: 767px) {
    .list_of_services--card--item .btn_oval_arrow {
        bottom: -1.55rem;
        right: -0.4rem;
    }
}
.list_of_services--card--img {
    width: 29rem;
    height: 100%;
    position: absolute;
    bottom: 0;
    right: 0;
}
@media (max-width: 767px) {
    .list_of_services--card--img {
        width: 15.4rem;
    }
}
.list_of_services--card--img img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    -webkit-transition: ease 0.3s;
    transition: ease 0.3s;
}
.list_of_services--bg {
    width: 22rem;
    height: 81.2rem;
    position: absolute;
    bottom: 2.9rem;
    right: 0;
    overflow: hidden;
}
@media (max-width: 767px) {
    .list_of_services--bg {
        width: 11rem;
        height: 34rem;
        top: -8.5rem;
        bottom: auto;
    }
}
.list_of_services--bg img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: 0 0;
}

/* 動画コンテンツ
------------------------------- */
.video_ex {
    background-color: #15181E;
    padding: 12rem 0 16rem;
    position: relative;
}
@media (max-width: 767px) {
    .video_ex {
        padding: 6.4rem 0 8rem;
    }
}
.video_ex .base {
    position: relative;
    z-index: 2;
}
.video_ex .section_ttl {
    color: #fff;
}
@media (max-width: 767px) {
    .video_ex .section_ttl {
        margin-bottom: 3.2rem;
    }
}
.video_ex .section_ttl--eng img {
    margin: 0 auto;
}
.video_ex .section_ttl--ttl {
    text-align: center;
}
.video_ex--list {
    display: flex;
    align-items: flex-start;
    justify-content: center;
    flex-wrap: wrap;
    gap: 8rem;
    margin-top: 11.7rem;
}
@media only screen and (max-width: 767px) {
    .video_ex--list {
        gap: 3.2rem;
        padding: 0 0.5rem;
        margin-top: -0.3rem;
    }
}
.video_ex--card {
    display: block;
    width: 48rem;
    border-radius: 0.8rem;
    overflow: hidden;
}
@media (min-width: 768px) {
    .video_ex--card .btn_oval_arrow {
        -webkit-transition: 0.4s ease;
        transition: 0.4s ease;
    }
    .video_ex--card:hover {
        opacity: 1 !important;
        box-shadow: 0 0 0.8rem rgba(255, 255, 255, 0.7);
    }
    .video_ex--card:hover .video_ex--card--img img {
        transform: scale(1.05);
    }
    .video_ex--card:hover .btn_oval_arrow {
        transform: scale(0.9);
    }
    .video_ex--card:hover .btn_oval_arrow::after {
        animation: loop-move 0.4s ease-out forwards;
        animation-iteration-count: 1;
    }
}
@media (max-width: 767px) {
    .video_ex--card {
        width: 32rem;
    }
}
.video_ex--card--img {
    height: 27rem;
    overflow: hidden;
}
@media (max-width: 767px) {
    .video_ex--card--img {
        height: 18rem;
    }
}
.video_ex--card--img img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    -webkit-transition: ease 0.3s;
    transition: ease 0.3s;
}
.video_ex--card--item {
    min-height: 10.5rem;
    background-color: #fff;
    border: 1px solid #D9D9D9;
    padding: 2.4rem 2.4rem 1.8rem;
    position: relative;
}
@media (max-width: 767px) {
    .video_ex--card--item {
        min-height: 7.3rem;
        padding: 1.2rem 1.2rem 1.2rem;
    }
}
.video_ex--card--item .desc {
    font-size: 2rem;
    font-weight: 700;
    line-height: 1.55;
    letter-spacing: 0.04em;
    padding: 0 0 0;
    margin: 0 0 0;
}
@media (max-width: 767px) {
    .video_ex--card--item .desc {
        font-size: 1.5rem;
        letter-spacing: 0;
    }
}
.video_ex--card--item img {
    display: block;
    width: auto;
    height: 3rem;
}
@media (max-width: 767px) {
    .video_ex--card--item img {
        height: 2.4rem;
    }
}
.video_ex--card--item .btn_oval_arrow {
    position: absolute;
    bottom: 2rem;
    right: 2.4rem;
}
@media (max-width: 767px) {
    .video_ex--card--item .btn_oval_arrow {
        width: 3rem;
        bottom: 1.5rem;
        right: 1.2rem;
    }
}
.video_ex--bg {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    flex-wrap: wrap;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    overflow: hidden;
}
@media (max-width: 767px) {
    .video_ex--bg {
        padding: 0 0.8rem;
    }
}
.video_ex--bg::after {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.2);
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
}
.video_ex--bg--slide {
    width: 34.5rem;
    height: 100%;
    -webkit-transition: 0.3s;
    transition: 0.3s;
    opacity: 0;
}
@media (max-width: 767px) {
    .video_ex--bg--slide {
        width: calc((100% - 3.2rem) / 2);
    }
}
.video_ex--bg--slide.slick-initialized {
    opacity: 0.09;
}
.video_ex--bg--slide .slick-list {
    display: block;
    height: 100% !important;
    overflow: visible;
}
.video_ex--bg--slide.slide_01 {
    width: 31.5rem;
}
@media (max-width: 767px) {
    .video_ex--bg--slide.slide_01 {
        display: none;
    }
}
.video_ex--bg--slide.slide_02 {
    transform: rotate(180deg);
}
.video_ex--bg--slide.slide_02 img {
    transform: rotate(180deg);
}
.video_ex--bg--slide.slide_04 {
    width: 30.6rem;
    transform: rotate(180deg);
}
@media (max-width: 767px) {
    .video_ex--bg--slide.slide_04 {
        display: none;
    }
}
.video_ex--bg--slide.slide_04 img {
    transform: rotate(180deg);
}
.video_ex--bg--slide--inner {
    display: block !important;
    padding: 0.8rem 0;
}
.video_ex--bg--slide--card {
    width: 100%;
}
.video_ex--bg--slide--card img {
    display: block;
    width: 100%;
}

/* ABOUT SAGAMI(POINT)
------------------------------- */
.point_ex {
    padding: 12rem 0 8rem;
}
@media (max-width: 767px) {
    .point_ex {
        padding: 8rem 0;
    }
}
.point_ex .base {
    width: 139.4rem;
}
.point_ex--block {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
}
@media (max-width: 767px) {
    .point_ex--block {
        gap: 9.1rem;
    }
}
.point_ex--block--item {
    width: 54rem;
}
@media (max-width: 767px) {
    .point_ex--block--item {
        width: 100%;
    }
}
.point_ex--block--item .btn_square {
    margin-top: 3.2rem;
}
@media (max-width: 767px) {
    .point_ex--block--item .btn_square {
        width: 100%;
        margin-top: 2.9rem;
    }
}
.point_ex--block--img {
    width: 75rem;
}
@media (max-width: 767px) {
    .point_ex--block--img {
        width: auto;
        margin: -3rem;
        overflow-y: scroll;
    }
}
.point_ex--block--img img {
    display: block;
    width: 100%;
}
@media (max-width: 767px) {
    .point_ex--block--img img {
        max-width: none;
        width: auto;
        height: 19.8rem;
        margin: 0 1.5rem;
    }
}

/* 相模コンベヤーの技術者たち
------------------------------- */
.sagamimember_ex {
    padding: 8rem 0 8rem;
}
@media (max-width: 767px) {
    .sagamimember_ex {
        padding: 6rem 0 4rem;
    }
}
.sagamimember_ex .base {
    width: 134rem;
}
.sagamimember_ex--block {
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
    flex-wrap: wrap;
    gap: 5.5rem;
}
.sagamimember_ex--block--item {
    width: 58rem;
}
@media (max-width: 767px) {
    .sagamimember_ex--block--item {
        width: 100%;
    }
}
.sagamimember_ex--block--item .section_head {
    justify-content: flex-start;
    padding-top: 4rem;
}
@media (max-width: 767px) {
    .sagamimember_ex--block--item .section_head {
        margin-bottom: 2rem;
        padding-top: 0;
    }
}
.sagamimember_ex--block--item .section_head--eng {
    width: 100% !important;
    justify-content: flex-end;
    height: auto !important;
}
@media (max-width: 767px) {
    .sagamimember_ex--block--item .section_head--eng {
        margin-bottom: 3rem !important;
    }
}
.sagamimember_ex--block--item .section_head--eng img {
    width: 67.4rem !important;
    max-width: none;
    height: auto !important;
}
@media (max-width: 767px) {
    .sagamimember_ex--block--item .section_head--eng img {
        width: 100% !important;
    }
}
.sagamimember_ex--block--item .section_head--ttl {
    margin-top: 3.2rem;
    padding-left: 5.6rem;
}
@media (max-width: 767px) {
    .sagamimember_ex--block--item .section_head--ttl {
        padding-left: 0;
    }
}
.sagamimember_ex--block--item .notes {
    opacity: 0.5;
    margin-left: 4rem;
}
@media (max-width: 767px) {
    .sagamimember_ex--block--item .notes {
        margin-left: 0;
    }
}
.sagamimember_ex--block--img {
    width: 63rem;
}
@media (max-width: 767px) {
    .sagamimember_ex--block--img {
        width: 100%;
        padding: 0 0.5rem;
        margin-bottom: 4rem;
    }
}
.sagamimember_ex--block--img img {
    display: block;
    width: 100%;
}
@media (max-width: 767px) {
    .sagamimember_ex--block--img img {
        display: block;
        height: 30rem;
        object-fit: cover;
        object-position: center 0;
    }
}
.sagamimember_ex--block--img .btn_square {
    width: 100%;
    height: 7.4rem;
    font-size: 1.8rem;
    margin-top: 2.4rem;
}
@media (max-width: 767px) {
    .sagamimember_ex--block--img .btn_square {
        height: 4.8rem;
        font-size: 1.4rem;
    }
}
.sagamimember_ex--list {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 2.4rem 0;
    padding: 1.6rem 4rem 0;
}
@media (max-width: 767px) {
    .sagamimember_ex--list {
        gap: 1rem 0;
        padding: 0.8rem 0 0;
    }
}
.sagamimember_ex--card {
    width: 23.8rem;
}
@media (max-width: 767px) {
    .sagamimember_ex--card {
        width: 16rem;
    }
}
.sagamimember_ex--card--img {
    aspect-ratio: 238/130;
    border-radius: 0.8rem;
    overflow: hidden;
    margin-bottom: 2.4rem;
}
@media (max-width: 767px) {
    .sagamimember_ex--card--img {
        width: 15rem;
        margin: 0 auto 1.2rem;
    }
}
.sagamimember_ex--card--img img {
    display: block;
}
.sagamimember_ex--card--ttl {
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 1.95;
    letter-spacing: 0.04em;
    border-bottom: 1px solid #D9D9D9;
    padding: 0 0 1.2rem;
    margin: 0 0 1.2rem;
    position: relative;
}
@media (max-width: 767px) {
    .sagamimember_ex--card--ttl {
        font-size: 1.4rem;
        line-height: 1.55;
    }
}
.sagamimember_ex--card--ttl::after {
    content: "";
    display: block;
    width: 5.2rem;
    height: 1px;
    background: linear-gradient(90deg, #38AEE6 -6.88%, #005296 121%);
    position: absolute;
    left: 0px;
    bottom: -1px;
}
.sagamimember_ex--card .desc {
    font-size: 1.4rem;
    font-weight: 500;
    line-height: 1.55;
    letter-spacing: 0.04em;
}
@media (max-width: 767px) {
    .sagamimember_ex--card .desc {
        font-size: 1.2rem;
    }
}

/* お知らせ・施工事例について
------------------------------- */
.news_pickup_ex {
    padding: 5.6rem 0 8rem;
}
@media (max-width: 767px) {
    .news_pickup_ex {
        padding: 6.7rem 0 7rem;
    }
}
@media (max-width: 767px) {
    .news_pickup_ex .section_head--item {
        padding-bottom: 2.4rem;
        margin-bottom: 2.4rem !important;
    }
}
@media (max-width: 767px) {
    .news_pickup_ex .section_head--ttl {
        font-size: 2.2rem;
    }
}
.news_pickup_ex--slide {
    width: 127.2rem;
    max-width: 100%;
    margin: 4.1rem auto 0;
}
@media (max-width: 767px) {
    .news_pickup_ex--slide {
        margin-top: 5.2rem;
    }
}
.news_pickup_ex--slide--inner {
    padding: 0 2.4rem;
}
@media (max-width: 767px) {
    .news_pickup_ex--slide--inner {
        padding: 0 0.5rem;
    }
}
.news_pickup_ex--slide--button {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    flex-wrap: wrap;
    gap: 1.5rem;
    padding: 2.4rem;
    margin-top: 6.4rem;
    border-top: 1px solid #D9D9D9;
}
@media (max-width: 767px) {
    .news_pickup_ex--slide--button {
        gap: 2.4rem;
        padding: 2.4rem 0 1rem;
        margin-top: 2rem;
    }
    .single-manga .news_pickup_ex--slide--button {
        margin-top: 4.7rem;
    }
}
.news_pickup_ex--slide--button--wrap {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 1.5rem;
}
@media (max-width: 767px) {
    .news_pickup_ex--slide--button--wrap {
        gap: 1rem;
    }
}
.news_pickup_ex--slide--button--wrap .js_slide_btn_left::after, .news_pickup_ex--slide--button--wrap .js_slide_sp_btn_left::after {
    background-image: url(../img/icon/arrow-wh-left.svg);
}
.news_pickup_ex--slide--button--wrap .btn_oval_arrow.slick-disabled {
    opacity: 0.4;
}
.news_pickup_ex--card {
    display: block;
    width: 38rem;
}
@media (min-width: 768px) {
    .news_pickup_ex--card .news_pickup_ex--card--img img {
        -webkit-transition: ease 0.3s;
        transition: ease 0.3s;
    }
    .news_pickup_ex--card:hover {
        opacity: 1 !important;
    }
    .news_pickup_ex--card:hover .news_pickup_ex--card--img img {
        transform: scale(1.1);
    }
}
@media (max-width: 767px) {
    .news_pickup_ex--card {
        width: 32rem;
    }
}
.news_pickup_ex--card--img {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    aspect-ratio: 38/24;
    aspect-ratio: 38/22;
    border-radius: 0.8rem;
    overflow: hidden;
    margin-bottom: 1.2rem;
}
@media (max-width: 767px) {
    .news_pickup_ex--card--img {
        margin-bottom: 1.4rem;
    }
}
.news_pickup_ex--card--img img {
    display: block;
    width: auto;
    height: auto;
    max-width: 100%;
    max-height: 100%;
    -webkit-transition: 0.3s;
    transition: 0.3s;
}
.news_pickup_ex--card--date {
    font-family: "Anta", sans-serif;
    font-size: 1.2rem;
    font-weight: 400;
    line-height: 1.55;
    letter-spacing: 0.04em;
    padding: 0.75rem 0 0;
    margin: 0 0 1.95rem;
}
@media (max-width: 767px) {
    .news_pickup_ex--card--date {
        padding-top: 0.2rem;
        margin-bottom: 0.6rem;
    }
}
.news_pickup_ex--card--ttl {
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 1.95;
    letter-spacing: 0.04em;
    margin-bottom: 1.6rem;
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}
@media (max-width: 767px) {
    .news_pickup_ex--card--ttl {
        font-size: 1.4rem;
        line-height: 1.55;
    }
}
.news_pickup_ex--card--meta {
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
    flex-wrap: wrap;
    gap: 0.4rem;
}
@media (max-width: 767px) {
    .news_pickup_ex--card--meta {
        justify-content: flex-end;
    }
}

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

サービス

---------------------------------------- */
/* 相模コンベヤー工業 / 提供サービス
------------------------------- */
.service_intro {
    padding: 4.9rem 0 6.4rem;
    position: relative;
}
@media (max-width: 767px) {
    .service_intro {
        padding: 4rem 0 1.6rem;
    }
}
.service_intro .base {
    width: 140rem;
    position: relative;
    z-index: 1;
}
.service_intro .base .inner {
    width: 116rem;
}
@media (max-width: 767px) {
    .service_intro .base .inner {
        width: 100%;
    }
}
.service_intro .base .inner .desc {
    max-width: 100rem;
    font-size: 1.8rem;
}
@media (max-width: 767px) {
    .service_intro .base .inner .desc {
        font-size: 1.4rem;
    }
}
@media (max-width: 767px) {
    .service_intro .base .section_head {
        margin-bottom: 2.4rem;
    }
}
.service_intro--bg {
    width: 80.2rem;
    position: absolute;
    bottom: 100%;
    left: -36rem;
    margin: 0 0 -20.7rem;
}
@media (max-width: 767px) {
    .service_intro--bg {
        display: none;
    }
}
.service_intro--bg img {
    display: block;
    width: 100%;
    transform: rotate(180deg);
}

/* ABOUT SAGAMI
------------------------------- */
.service_about {
    padding: 16rem 0 12rem;
    position: relative;
}
@media (max-width: 767px) {
    .service_about {
        padding: 4.9rem 0 8rem;
    }
}
.service_about .base {
    width: 136rem;
    position: relative;
    z-index: 1;
}
.service_about--column {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    flex-wrap: nowrap;
    gap: 12.8rem;
}
@media (max-width: 767px) {
    .service_about--column {
        flex-wrap: wrap;
        gap: 2.9rem;
    }
}
.service_about--column--img {
    flex-shrink: 0;
    width: 61rem;
}
@media (max-width: 767px) {
    .service_about--column--img {
        width: 100vw;
        margin: 0 -3rem;
    }
}
.service_about--column--img img {
    display: block;
    width: 100%;
}
.service_about--column--item {
    flex-grow: 1;
}
@media (max-width: 767px) {
    .service_about--column--item {
        width: 100%;
    }
}
@media (max-width: 767px) {
    .service_about--column--item .section_head {
        margin-bottom: 2.4rem;
    }
}
.service_about--column--item .desc {
    margin: 0 0 3.2rem;
}
@media (max-width: 767px) {
    .service_about--column--item .desc {
        margin: 0 0 2.4rem;
    }
}
@media (max-width: 767px) {
    .service_about--column--item .btn_square {
        width: 100%;
    }
}
.service_about--bg_01 {
    width: 70rem;
    position: absolute;
    top: -16.54rem;
    right: -23.9rem;
}
@media (max-width: 767px) {
    .service_about--bg_01 {
        width: 40rem;
        top: -36.34rem;
        right: -33rem;
    }
}
.service_about--bg_01 img {
    display: block;
    width: 100%;
}
.service_about--bg_02 {
    width: 160rem;
    position: absolute;
    top: 0;
    left: 0;
}
@media (max-width: 767px) {
    .service_about--bg_02 {
        width: 88rem;
        top: 50%;
        left: 50%;
        -webkit-transform: translateY(-108.2%) translateX(-56%);
        transform: translateY(-108.2%) translateX(-56%);
    }
}
.service_about--bg_02 img {
    display: block;
    width: 100%;
}

/* ABOUT SAGAMI 2
------------------------------- */
.service_about_2 {
    background-color: #F5F5F5;
    padding: 12rem 0 12rem;
}
@media (max-width: 767px) {
    .service_about_2 {
        padding: 6.4rem 0 6.4rem;
    }
}
.service_about_2 .base {
    width: 140rem;
    background-color: #fff;
    padding: 0;
    border-top-left-radius: 1.2rem;
}
@media (max-width: 767px) {
    .service_about_2 .base {
        background-color: transparent;
        padding: 0 2.5rem;
        border-top-left-radius: 0;
    }
}
.service_about_2--column {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    flex-wrap: nowrap;
    gap: 12rem;
}
@media (max-width: 767px) {
    .service_about_2--column {
        flex-direction: column-reverse;
        flex-wrap: wrap;
        gap: 0;
        background-color: #fff;
    }
}
.service_about_2--column--item {
    flex-grow: 1;
    padding: 0 0 0 8rem;
}
@media (max-width: 767px) {
    .service_about_2--column--item {
        padding: 2.4rem 2rem;
    }
}
@media (max-width: 767px) {
    .service_about_2--column--item .section_head {
        margin-bottom: 2.4rem;
    }
}
.service_about_2--column--item .desc {
    margin: 0 0 3.2rem;
}
@media (max-width: 767px) {
    .service_about_2--column--item .desc {
        margin-bottom: 1.3rem;
    }
}
.service_about_2--column--item .btn_wrap {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    flex-wrap: wrap;
    gap: 4.8rem;
    padding: 0;
}
@media (max-width: 767px) {
    .service_about_2--column--item .btn_wrap {
        gap: 0;
    }
}
.service_about_2--column--item .btn_wrap .text_link {
    padding: 1rem 0;
}
@media (max-width: 767px) {
    .service_about_2--column--item .btn_wrap .text_link {
        justify-content: space-between;
        width: 100%;
    }
    .service_about_2--column--item .btn_wrap .text_link .btn_oval_arrow {
        width: 3.6rem;
    }
}
.service_about_2--column--img {
    flex-shrink: 0;
    width: 60rem;
}
@media (max-width: 767px) {
    .service_about_2--column--img {
        width: 100%;
    }
}
.service_about_2--column--img img {
    display: block;
    width: 100%;
}

/* service_various
------------------------------- */
.service_various .base {
    width: 100%;
    padding: 0;
}

.various_column {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    flex-wrap: nowrap;
}
@media (max-width: 767px) {
    .various_column {
        flex-wrap: wrap;
    }
}
.various_column--img {
    width: 50%;
}
@media (max-width: 767px) {
    .various_column--img {
        width: 100%;
    }
}
.various_column--img img {
    display: block;
    width: 100%;
}
.various_column--item {
    width: 50%;
    padding: 0 14rem 0 10rem;
}
@media (max-width: 767px) {
    .various_column--item {
        width: 100%;
        padding: 2.5rem 3rem 6.4rem;
    }
}
@media (max-width: 767px) {
    .various_column--item .section_head--ttl {
        line-height: 1.95;
    }
}
.various_column--item .desc {
    margin: 0 0 3.2rem;
}
@media (max-width: 767px) {
    .various_column--item .desc {
        margin: 0 0 3rem;
    }
}
.various_column--item .btn_square {
    width: 34rem;
}
@media (max-width: 767px) {
    .various_column--item .btn_square {
        width: 100%;
        height: auto;
    }
}
.various_column:nth-child(odd) {
    color: #fff;
    background-color: #292D32;
    margin-bottom: 12rem;
}
@media (max-width: 767px) {
    .various_column:nth-child(odd) {
        margin-bottom: 6.4rem;
    }
}
.various_column:nth-child(even) {
    flex-direction: row-reverse;
}
.various_column:nth-child(even) .various_column--item {
    padding: 0 10rem 0 14rem;
}
@media (max-width: 767px) {
    .various_column:nth-child(even) .various_column--item {
        padding: 2.5rem 3rem 6.4rem;
    }
}

/* サービスに関するお知らせ
------------------------------- */
.service_pickup_ex {
    padding: 8rem 0 8rem;
}
@media (max-width: 767px) {
    .service_pickup_ex {
        padding: 6.4rem 0 6.4rem;
    }
}
.service_pickup_ex .section_head {
    padding-right: 2rem;
}
@media (max-width: 767px) {
    .service_pickup_ex .section_head {
        padding-right: 0;
    }
}
.service_pickup_ex .section_head .text_link {
    margin-bottom: 0;
}

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

搬送設備の設計・製作・据付・保守

---------------------------------------- */
/* 相模コンベヤー工業 / 提供サービス
------------------------------- */
.service_cs_intro {
    padding: 4rem 0 2.4rem;
}
@media (max-width: 767px) {
    .service_cs_intro {
        padding: 3.2rem 0 2.4rem;
    }
}
.service_cs_intro .base {
    width: 156rem;
}
.service_cs_intro--column {
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
    flex-wrap: wrap;
    gap: 5.6rem;
}
@media (max-width: 767px) {
    .service_cs_intro--column {
        gap: 4rem;
    }
}
.service_cs_intro--column--img {
    width: 71rem;
}
@media (max-width: 767px) {
    .service_cs_intro--column--img {
        width: 100%;
    }
}
.service_cs_intro--column--img img {
    display: block;
    width: 100%;
}
.service_cs_intro--column--item {
    width: 71.4rem;
    padding: 4rem 0 0;
}
@media (max-width: 767px) {
    .service_cs_intro--column--item {
        width: 100%;
        padding: 0;
    }
}
.service_cs_intro--column--item .section_head {
    margin-bottom: 2.9rem;
}
.service_cs_intro--column--item--img {
    margin: 0 0 3.7rem;
}
@media (max-width: 767px) {
    .service_cs_intro--column--item--img {
        margin: 0 -3rem 2.8rem;
    }
}
.service_cs_intro--column--item--img img {
    display: block;
    width: 64.4rem;
    margin: 0 auto;
}
.service_cs_intro--column--item .desc {
    font-weight: 700;
    margin: 0 0 3.2rem;
}
.service_cs_intro--column--item .text_link {
    margin: 0 0 0 auto;
    padding: 1rem 0;
}

/* SERVICE / ABOUT
------------------------------- */
.service_cs_about {
    padding: 8rem 0 43.6rem;
    position: relative;
    overflow: hidden;
}
@media (max-width: 767px) {
    .service_cs_about {
        padding: 6.4rem 0 16.5rem;
    }
}
.service_cs_about .base {
    width: 148rem;
    position: relative;
    z-index: 1;
}
.service_cs_about--column {
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
    flex-wrap: nowrap;
    gap: 8rem;
    padding: 2.7rem 0 3.4rem 10.5rem;
}
@media (max-width: 767px) {
    .service_cs_about--column {
        flex-wrap: wrap;
        gap: 3.9rem;
        padding: 0;
    }
}
.service_cs_about--column--item {
    flex-shrink: 0;
    width: 56rem;
    padding: 8rem 0 0;
}
@media (max-width: 767px) {
    .service_cs_about--column--item {
        width: 100%;
        padding: 0;
    }
}
.service_cs_about--column--img {
    flex-grow: 0;
    position: relative;
}
@media (max-width: 767px) {
    .service_cs_about--column--img {
        width: 100%;
    }
}
.service_cs_about--column--img .inner {
    width: 72rem;
    height: 81.3rem;
    position: absolute;
    top: 0;
    left: 0;
}
@media (max-width: 767px) {
    .service_cs_about--column--img .inner {
        position: relative;
        width: 100%;
        height: 43.3rem;
    }
}
.service_cs_about--column--img .img_01 {
    display: block;
    width: 64rem;
    max-width: none;
    position: absolute;
    top: 0;
    left: 0;
}
@media (max-width: 767px) {
    .service_cs_about--column--img .img_01 {
        width: 100%;
    }
}
.service_cs_about--column--img .img_02 {
    display: block;
    width: 31.4rem;
    max-width: none;
    position: absolute;
    bottom: 0;
    right: 0;
}
@media (max-width: 767px) {
    .service_cs_about--column--img .img_02 {
        width: 20rem;
    }
}
.service_cs_about--bg_01 {
    width: 95.2rem;
    position: absolute;
    bottom: 6rem;
    left: 0;
}
@media (max-width: 767px) {
    .service_cs_about--bg_01 {
        width: 49rem;
        bottom: 0.9rem;
        left: -15rem;
    }
}
.service_cs_about--bg_01 img {
    display: block;
    width: 100%;
}
.service_cs_about--bg_02 {
    width: 80.2rem;
    position: absolute;
    bottom: 6.5rem;
    right: -23rem;
}
@media (max-width: 767px) {
    #conveyor-system .service_cs_about--bg_02 {
        width: 40rem;
        bottom: 13.6rem;
        right: -13rem;
    }
}
.service_cs_about--bg_02 img {
    display: block;
    width: 100%;
}

/* SERVICE / FUTURE
------------------------------- */
.service_cs_future {
    padding: 8rem 0 12rem;
}
@media (max-width: 767px) {
    .service_cs_future {
        padding: 6.4rem 0 6.4rem;
    }
}
.service_cs_future .base {
    width: 131.2rem;
}
.service_cs_future--column {
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
    flex-wrap: wrap;
    gap: 4.8rem;
    padding: 0 0 0 1.8rem;
    margin: 4rem 0 0;
}
@media (max-width: 767px) {
    .service_cs_future--column {
        gap: 4rem;
        padding: 0;
        margin: 3rem 0 0;
    }
}
.service_cs_future--column--item {
    width: 38rem;
}
@media (max-width: 767px) {
    .service_cs_future--column--item {
        width: 100%;
    }
}
.service_cs_future--card {
    width: 100%;
}
.service_cs_future--card--img {
    aspect-ratio: 38/24;
    margin: 0 0 2.4rem;
}
@media (max-width: 767px) {
    .service_cs_future--card--img {
        aspect-ratio: 33/20.2;
    }
}
.service_cs_future--card--img img {
    display: block;
    width: 100%;
}
@media (max-width: 767px) {
    .service_cs_future--card--img img {
        height: 100%;
        object-fit: cover;
    }
}
.service_cs_future--card--ttl {
    font-size: 2.2rem;
    font-weight: 700;
    line-height: 1.55;
    letter-spacing: 0.04em;
    text-align: left;
    padding: 0 0 2.5rem;
    margin: 0 0 1.2rem;
    position: relative;
}
@media (max-width: 767px) {
    .service_cs_future--card--ttl {
        font-size: 1.6rem;
        padding: 0 0 1.7rem;
    }
}
.service_cs_future--card--ttl::before {
    content: "";
    display: block;
    width: 100%;
    height: 1px;
    background-color: #D9D9D9;
    position: absolute;
    bottom: 0;
    left: 0;
}
.service_cs_future--card--ttl::after {
    content: "";
    display: block;
    width: 5.2rem;
    height: 1px;
    background: linear-gradient(90deg, #38AEE6 -6.88%, #005296 121%);
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: 1;
}

/* MAINTENANCE UNIT TEAM
------------------------------- */
.service_cs_maintenance {
    background-color: #F5F5F5;
    padding: 12rem 0 12rem;
}
@media (max-width: 767px) {
    .service_cs_maintenance {
        padding: 6.4rem 0 6.4rem;
    }
}
.service_cs_maintenance .base {
    width: 144rem;
}
.service_cs_maintenance--column {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    flex-wrap: nowrap;
    background-color: #fff;
}
@media (max-width: 767px) {
    .service_cs_maintenance--column {
        flex-direction: column-reverse;
        flex-wrap: wrap;
        margin-left: -0.5rem;
        margin-right: -0.5rem;
    }
}
.service_cs_maintenance--column--item {
    flex-shrink: 0;
    width: 60rem;
    padding: 6.15rem 8rem 6rem;
}
@media (max-width: 767px) {
    .service_cs_maintenance--column--item {
        width: 100%;
        padding: 2.4rem 2rem 2.4rem;
    }
}
@media (max-width: 767px) {
    .service_cs_maintenance--column--item .section_head {
        margin-bottom: 2.4rem;
    }
}
.service_cs_maintenance--column--item .desc {
    margin: 0 0 3.2rem;
}
@media (max-width: 767px) {
    .service_cs_maintenance--column--item .desc {
        margin-bottom: 2.1rem;
    }
}
.service_cs_maintenance--column--item .btn_square {
    width: 34rem;
}
@media (max-width: 767px) {
    .service_cs_maintenance--column--item .btn_square {
        width: 100%;
    }
}
.service_cs_maintenance--column--img {
    flex-grow: 1;
}
.service_cs_maintenance--column--img img {
    display: block;
    width: 100%;
}

/* LIST OF SERVICES
------------------------------- */
.page-template-page-service-conveyor-system .list_of_services,
.page-template-page-service-on-site .list_of_services,
.page-template-page-service-belt-conveyor .list_of_services {
    padding: 8rem 0 12rem;
}
@media (max-width: 767px) {
    .page-template-page-service-conveyor-system .list_of_services,
    .page-template-page-service-on-site .list_of_services,
    .page-template-page-service-belt-conveyor .list_of_services {
        padding: 4rem 0 8rem;
        margin: 0;
    }
}
.page-template-page-service-conveyor-system .list_of_services .base,
.page-template-page-service-on-site .list_of_services .base,
.page-template-page-service-belt-conveyor .list_of_services .base {
    width: 128rem;
}
.page-template-page-service-conveyor-system .list_of_services .list_of_services--list,
.page-template-page-service-on-site .list_of_services .list_of_services--list,
.page-template-page-service-belt-conveyor .list_of_services .list_of_services--list {
    gap: 2rem 5.4rem;
}
@media (max-width: 767px) {
    .page-template-page-service-conveyor-system .list_of_services .list_of_services--list,
    .page-template-page-service-on-site .list_of_services .list_of_services--list,
    .page-template-page-service-belt-conveyor .list_of_services .list_of_services--list {
        gap: 0.8rem 0rem;
        margin-top: 4.8rem;
    }
}
.page-template-page-service-conveyor-system .list_of_services--bg,
.page-template-page-service-on-site .list_of_services--bg,
.page-template-page-service-belt-conveyor .list_of_services--bg {
    width: 37.2rem;
    height: 81.2rem;
    position: absolute;
    bottom: -20.5rem;
    right: 0;
    overflow: hidden;
}
@media (max-width: 767px) {
    .page-template-page-service-conveyor-system .list_of_services--bg,
    .page-template-page-service-on-site .list_of_services--bg,
    .page-template-page-service-belt-conveyor .list_of_services--bg {
        width: 10.7rem;
        height: 38rem;
        top: 13.7rem;
        bottom: auto;
    }
}

/* AMAGAMI / PRODUCT LIST
------------------------------- */
.service_cs_product_list {
    background-color: #F5F5F5;
    padding: 12rem 0 12rem;
}
@media (max-width: 767px) {
    .service_cs_product_list {
        padding: 6rem 0 8rem;
    }
}
.page-template-page-parts-sales .service_cs_product_list {
    background-color: #fff;
}
.service_cs_product_list .base {
    width: 128rem;
}
.service_cs_product_list--list {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    flex-wrap: wrap;
    gap: 4rem 6.5rem;
    margin: 4rem 0 0;
}
@media (max-width: 767px) {
    .service_cs_product_list--list {
        gap: 1.6rem;
        margin: -3.1rem 0 0;
    }
}
.service_cs_product_list--list--item {
    width: 57.5rem;
}
.service_cs_product_list--list--item .desc {
    font-size: 2.8rem;
    font-weight: 700;
    line-height: 1.55;
    padding: 0 0 0 1rem;
}
@media (max-width: 767px) {
    .service_cs_product_list--list--item .desc {
        font-size: 1.8rem;
        padding: 2.4rem 1rem 1.6rem;
    }
}

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

現地工事 

---------------------------------------- */
/* SERVICE / ABOUT
------------------------------- */
.page-template-page-service-on-site .service_cs_about {
    padding-bottom: 55.9rem;
}
@media (max-width: 767px) {
    .page-template-page-service-on-site .service_cs_about {
        padding-bottom: 17.6rem;
    }
}
.page-template-page-service-on-site .service_cs_about .service_cs_about--column--img .inner {
    width: 64rem;
    height: auto;
}
@media (max-width: 767px) {
    .page-template-page-service-on-site .service_cs_about .service_cs_about--column--img .inner {
        width: 100%;
    }
}
.page-template-page-service-on-site .service_cs_about .service_cs_about--column--img .inner img {
    position: relative;
}
.page-template-page-service-on-site .service_cs_about--bg_02 {
    bottom: 6.5rem;
    right: -23rem;
}
@media (max-width: 767px) {
    .page-template-page-service-on-site .service_cs_about--bg_02 {
        bottom: 4.9rem;
        right: -13rem;
    }
}
.page-template-page-service-on-site .service_cs_about--bg_03 {
    width: 95.2rem;
    position: absolute;
    bottom: 4.2rem;
    left: 0;
}
@media (max-width: 767px) {
    .page-template-page-service-on-site .service_cs_about--bg_03 {
        width: 46.5rem;
        bottom: -3rem;
        left: -7.5rem;
        z-index: 1;
    }
}
.page-template-page-service-on-site .service_cs_about--bg_03 img {
    display: block;
    width: 100%;
}

/* SERVICE / FUTURE
------------------------------- */
.service_cs_future .text_link {
    margin: 3.2rem 0 0 0;
}
@media (max-width: 767px) {
    .service_cs_future .text_link {
        margin-bottom: 1rem;
    }
}
.service_cs_future .text_link .btn_oval_arrow {
    width: 4.2rem;
}
@media (max-width: 767px) {
    .service_cs_future .text_link .btn_oval_arrow {
        width: 3.2rem;
    }
}

/* service_photo
------------------------------- */
.service_photo {
    padding: 1rem 0 8rem;
}
@media (max-width: 767px) {
    .service_photo {
        padding: 1.6rem 0 4rem;
    }
}
.service_photo--ttl {
    font-size: 3.2rem;
    font-weight: 700;
    line-height: 1.55;
    letter-spacing: 0.04em;
    text-align: center;
    margin: 0 0 2.3rem;
}
@media (max-width: 767px) {
    .service_photo--ttl {
        font-size: 2.2rem;
        margin-bottom: 1.2rem;
    }
}
.service_photo img {
    display: block;
    width: 100%;
}

/* CONSTRUCTION WORKS
------------------------------- */
.service_os_works {
    background-color: #F5F5F5;
    padding: 8rem 0 12rem;
}
@media (max-width: 767px) {
    .service_os_works {
        padding: 4.8rem 0 6.4rem;
    }
}
.service_os_works .base {
    width: 131.2rem;
}
.service_os_works .desc {
    font-size: 2rem;
    font-weight: 700;
    line-height: 1.55;
    letter-spacing: 0.04em;
    text-align: left;
    padding: 0 0 0;
    margin: 0 0 3.2rem;
}
.service_os_works--block--ttl {
    font-size: 1.6rem;
    font-weight: 500;
    line-height: 1.95;
    letter-spacing: 0.04em;
    text-align: left;
    padding: 0 0 0;
    margin: 0 0 3.2rem;
}
@media (max-width: 767px) {
    .service_os_works--block--inner {
        overflow-y: scroll;
        margin: 0 -3rem 4.8rem 0;
    }
}
@media (max-width: 767px) {
    .service_os_works--block .btn_square {
        width: 100%;
        height: 6.1rem;
        margin-bottom: 1.6rem;
    }
}
.service_os_works--list {
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
    flex-wrap: wrap;
    gap: 4.8rem;
    padding: 0 0 0 8.8rem;
}
@media (max-width: 767px) {
    .service_os_works--list {
        width: 114rem;
        padding: 0;
    }
}
.service_os_works--list--item {
    width: 23.8rem;
}
.service_os_works--list--img {
    display: flex;
    align-items: flex-end;
    align-content: flex-end;
    justify-content: flex-start;
    flex-wrap: wrap;
    aspect-ratio: 23.8/28;
}
.service_os_works--list--img img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 0.8rem;
}
.service_os_works--list--img .btn_square {
    width: 100%;
    margin: 3.2rem 0 0;
}
.service_os_works--list--desc {
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 1.95;
    letter-spacing: 0.04em;
    text-align: left;
    padding: 0 0 1.2rem;
    margin: 2.4rem 0 0;
    position: relative;
}
.service_os_works--list--desc::before {
    content: "";
    display: block;
    width: 100%;
    height: 1px;
    background-color: #D9D9D9;
    position: absolute;
    bottom: 0;
    left: 0;
}
.service_os_works--list--desc::after {
    content: "";
    display: block;
    width: 5.2rem;
    height: 1px;
    background: linear-gradient(90deg, #38AEE6 -6.88%, #005296 121%);
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: 1;
}

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

ベルトコンベア(光学式選別機)ページ

---------------------------------------- */
/* SERVICE / ABOUT
------------------------------- */
.page-template-page-service-belt-conveyor .service_cs_about {
    padding-bottom: 42.9rem;
}
@media (max-width: 767px) {
    .page-template-page-service-belt-conveyor .service_cs_about {
        padding-bottom: 17.6rem;
    }
}
.page-template-page-service-belt-conveyor .service_cs_about--column--item .btn_square {
    width: 40rem;
    margin: 3.2rem 0 0;
}
@media (max-width: 767px) {
    .page-template-page-service-belt-conveyor .service_cs_about--column--item .btn_square {
        width: 100%;
    }
}
.page-template-page-service-belt-conveyor .service_cs_about--column--img .inner {
    width: 64rem;
    height: auto;
}
@media (max-width: 767px) {
    .page-template-page-service-belt-conveyor .service_cs_about--column--img .inner {
        width: 100%;
    }
}
.page-template-page-service-belt-conveyor .service_cs_about--column--img .inner img {
    position: relative;
}

/* SERVICE / ABOUT
------------------------------- */
.service_cs_about--bg_04 {
    width: 95.8rem;
    position: absolute;
    bottom: -10.4rem;
    left: 2.3rem;
}
@media (max-width: 767px) {
    .service_cs_about--bg_04 {
        width: 42rem;
        bottom: -2.3rem;
        left: -1.5rem;
        z-index: 1;
    }
}
.service_cs_about--bg_04 img {
    display: block;
    width: 100%;
}
.service_cs_about--bg_02 {
    width: 80.2rem;
    position: absolute;
    bottom: 15rem;
    right: -31rem;
}
@media (max-width: 767px) {
    .service_cs_about--bg_02 {
        width: 40rem;
        bottom: 3rem;
        right: -13rem;
    }
}

/* service_cs_img_slide
------------------------------- */
.service_cs_img_slide {
    padding: 12rem 0 8rem 0;
}
@media (max-width: 767px) {
    .service_cs_img_slide {
        padding: 6rem 0 4rem 0;
    }
}

.service_cs_slide {
    height: 32rem;
    overflow: hidden;
}
@media (max-width: 767px) {
    .service_cs_slide {
        height: 17rem;
    }
}
.service_cs_slide--inner {
    padding: 0 0.8rem;
}
.service_cs_slide--img {
    width: 62rem;
    aspect-ratio: 62/32;
}
@media (max-width: 767px) {
    .service_cs_slide--img {
        width: 33rem;
        aspect-ratio: 33/17;
    }
}
.service_cs_slide--img img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

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

企業情報

---------------------------------------- */
@media (min-width: 768px) {
    .page-template-page-company .page_header {
        background-color: #fff;
    }
}
@media (max-width: 767px) {
    .page-template-page-company .page_header--inner {
        height: 24.5rem !important;
    }
}

/* LINKS
------------------------------- */
.anchor_nav {
    padding: 4rem 0;
}
@media (max-width: 767px) {
    .anchor_nav {
        padding: 3.2rem 0 3.2rem;
    }
}
.anchor_nav .base {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    flex-wrap: nowrap;
    width: 140rem;
}
@media (max-width: 767px) {
    .anchor_nav .base {
        display: block;
        width: 100%;
    }
}
.anchor_nav--ttl {
    flex-shrink: 0;
    display: block;
}
.anchor_nav--list {
    flex-grow: 1;
    display: flex;
    align-items: flex-start;
    justify-content: flex-end;
    flex-wrap: wrap;
    gap: 6rem;
}
@media (max-width: 767px) {
    .anchor_nav--list {
        justify-content: space-between;
        gap: 1.6rem;
        padding-right: 0.8rem;
        margin-top: 2rem;
    }
}
.anchor_nav--list .text_link {
    padding: 1rem 0;
}
@media (max-width: 767px) {
    .anchor_nav--list .text_link {
        width: 14.2rem;
    }
}
.anchor_nav--list .text_link .link_card--item--btn, .anchor_nav--list .text_link .btn_oval_arrow {
    width: 4rem;
}
@media (max-width: 767px) {
    .anchor_nav--list .text_link .link_card--item--btn, .anchor_nav--list .text_link .btn_oval_arrow {
        width: 3rem;
    }
}
@media (max-width: 767px) {
    .anchor_nav--list .text_link .text_link--ttl {
        flex-grow: 1;
    }
}
@media (max-width: 767px) {
    .anchor_nav--list .text_link .link_card--item--btn {
        flex-shrink: 0;
    }
}

/* 相模コンベヤー工業 / 企業情報
------------------------------- */
.company_intro {
    padding: 0 0 16rem;
    position: relative;
}
@media (max-width: 767px) {
    .company_intro {
        padding: 0.8rem 0 20rem;
        overflow: hidden;
    }
}
.company_intro .base {
    width: 140rem;
}
.company_intro .desc {
    width: 100rem;
    font-size: 1.8rem;
}
@media (max-width: 767px) {
    .company_intro .desc {
        width: 100%;
        font-size: 1.4rem;
    }
}
.company_intro--bg_01 {
    width: 44.2rem;
    height: 81.2rem;
    position: absolute;
    top: -74.6rem;
    left: 0;
    z-index: -1;
}
@media (max-width: 767px) {
    .company_intro--bg_01 {
        display: none;
    }
}
.company_intro--bg_01 img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: right 0 bottom 0;
}
.company_intro--bg_02 {
    width: 71rem;
    position: absolute;
    top: 22.3rem;
    right: 0;
}
@media (max-width: 767px) {
    .company_intro--bg_02 {
        width: 33.4rem;
        top: auto;
        bottom: 1.6rem;
        right: 1.2rem;
    }
}
.company_intro--bg_02 img {
    display: block;
    width: 100%;
}

/* CEO MESSAGE
------------------------------- */
.company_message {
    padding: 8rem 0 8rem;
}
@media (max-width: 767px) {
    .company_message {
        padding: 4rem 0 5.6rem;
    }
}
.company_message .base {
    width: 148rem;
}
@media (max-width: 767px) {
    .company_message .base {
        padding: 0 2.5rem;
    }
}
.company_message--column {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    flex-wrap: nowrap;
    gap: 8rem;
    padding-right: 8rem;
}
@media (max-width: 767px) {
    .company_message--column {
        flex-wrap: wrap;
        gap: 2.4rem;
        padding-right: 0;
    }
}
.company_message--column--img {
    flex-shrink: 0;
    width: 80rem;
}
@media (max-width: 767px) {
    .company_message--column--img {
        width: 100%;
        aspect-ratio: 34/23;
    }
}
.company_message--column--img img {
    display: block;
    width: 100%;
}
@media (max-width: 767px) {
    .company_message--column--img img {
        display: block;
        width: 100%;
        height: 100%;
        object-fit: cover;
    }
}
.company_message--column--item {
    flex-grow: 0;
}
@media (max-width: 767px) {
    .company_message--column--item {
        width: 100%;
        padding: 0 1rem;
    }
}
@media (max-width: 767px) {
    .company_message--column--item .section_head {
        margin-bottom: 2.4rem;
    }
}

/* PHILOSOPHY 会社概要
------------------------------- */
.company_philosophy, .company_overview {
    padding: 12rem 0 12rem;
}
@media (max-width: 767px) {
    .company_philosophy, .company_overview {
        padding: 4rem 0 5.6rem;
    }
}
.company_philosophy .base, .company_overview .base {
    width: 140rem;
}

.description_column {
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
    flex-wrap: nowrap;
    gap: 10rem;
    width: 132rem;
}
@media (max-width: 767px) {
    .description_column {
        flex-wrap: wrap;
        gap: 4rem;
        width: 100%;
    }
}
.description_column--head {
    flex-shrink: 0;
    width: 30rem;
}
@media (max-width: 767px) {
    .description_column--head {
        width: 100%;
    }
}
@media (max-width: 767px) {
    .description_column--head .section_head {
        margin-bottom: 3rem;
    }
}
.description_column--head .section_head--ttl {
    font-size: 4rem !important;
}
@media (max-width: 767px) {
    .description_column--head .section_head--ttl {
        font-size: 2.6rem !important;
    }
}
.description_column--main {
    flex-grow: 1;
}
@media (max-width: 767px) {
    .description_column--main {
        width: 100%;
    }
}
.description_column--main .desc {
    font-size: 1.8rem;
    margin: 1.6rem 0 0 1.6rem;
}
@media (max-width: 767px) {
    .description_column--main .desc {
        font-size: 1.6rem;
        margin: 2rem 0 0 1.6rem;
    }
}
.description_column--main .desc + .accent_ttl {
    margin-top: 4rem;
}
.description_column--list {
    display: flex;
    align-items: stretch;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 3rem 0;
    padding: 2.4rem 0 0;
}
@media (max-width: 767px) {
    .description_column--list {
        gap: 1rem;
        padding: 0;
    }
}
.description_column--list--item {
    width: 44.5rem;
    border-bottom: 1px solid #D9D9D9;
    padding: 3rem 2rem;
}
@media (max-width: 767px) {
    .description_column--list--item {
        width: 100%;
    }
    .description_column--list--item.sp_short {
        width: 16rem;
    }
}
.description_column--list--item:nth-child(1), .description_column--list--item:nth-child(2) {
    border-top: 1px solid #D9D9D9;
}
@media (max-width: 767px) {
    .description_column--list--item:nth-child(1), .description_column--list--item:nth-child(2) {
        border-top: 0;
    }
}
.description_column--list--item .title {
    font-size: 1.6rem;
    font-weight: 500;
    line-height: 1.55;
    letter-spacing: 0.04em;
    text-align: left;
    color: #005296;
    padding: 0 0 0;
    margin: 0 0 0.8rem;
}
@media (max-width: 767px) {
    .description_column--list--item .title {
        font-size: 1.4rem;
    }
}
.description_column--list--item .desc {
    font-size: 1.8rem;
    font-weight: 500;
    line-height: 1.55;
    letter-spacing: 0.04em;
    padding: 0 0 0;
    margin: 0 0 0;
}
@media (max-width: 767px) {
    .description_column--list--item .desc {
        font-size: 1.6rem;
    }
}

.company_overview {
    padding-bottom: 8rem;
}
@media (max-width: 767px) {
    .company_overview {
        padding-bottom: 5.6rem;
    }
}
@media (max-width: 767px) {
    .company_overview .description_column {
        gap: 1.8rem;
    }
}

/* slide
------------------------------- */
.service_cs_img_slide.company_slide {
    padding: 8rem 0;
}
@media (max-width: 767px) {
    .service_cs_img_slide.company_slide {
        padding: 4rem 0;
    }
}

/* ACCESS
------------------------------- */
.company_access {
    padding: 10rem 0 8rem;
}
@media (max-width: 767px) {
    .company_access {
        padding: 4rem 0 5.6rem;
    }
}
.company_access .base {
    width: 140rem;
    padding-right: 6rem;
}
@media (max-width: 767px) {
    .company_access .base {
        padding-right: 3rem;
    }
}
.company_access .section_head {
    margin-bottom: 0;
}
.company_access--inner {
    margin-top: 8rem;
}
@media (max-width: 767px) {
    .company_access--inner {
        margin-top: 4.2rem;
    }
}
.company_access--inner--head {
    padding: 0 2.4rem;
}
@media (max-width: 767px) {
    .company_access--inner--head {
        padding: 0;
    }
}
.company_access--inner--ttl {
    font-size: 2rem;
    font-weight: 500;
    line-height: 1.55;
    letter-spacing: 0.04em;
    margin: 0 0 4.8rem;
}
@media (max-width: 767px) {
    .company_access--inner--ttl {
        font-size: 1.5rem;
        margin-bottom: 3.2rem;
    }
}
.company_access--column {
    display: flex;
    align-items: stretch;
    justify-content: flex-start;
    flex-wrap: nowrap;
    gap: 5.6rem;
}
@media (max-width: 767px) {
    .company_access--column {
        flex-wrap: wrap;
        gap: 1.8rem;
        padding-left: 0;
    }
}
.company_access--column--item .title {
    font-size: 1.6rem;
    font-weight: 500;
    line-height: 1.55;
    letter-spacing: 0.04em;
    text-align: left;
    padding: 0 0 0;
    margin: 0 0 0.8rem;
}
@media (max-width: 767px) {
    .company_access--column--item .title {
        font-size: 1.4rem;
        margin-bottom: 0.95rem;
    }
}
.company_access--column--item .desc {
    font-size: 1.4rem;
    line-height: 1.55;
}
@media (max-width: 767px) {
    .company_access--column--item .desc {
        font-size: 1.2rem;
    }
}
.company_access--column--item.item_1 {
    flex-shrink: 0;
    width: 34rem;
}
@media (max-width: 767px) {
    .company_access--column--item.item_1 {
        width: 100%;
    }
}
.company_access--column--item.item_2 {
    flex-grow: 1;
    width: 34rem;
    padding-right: 2.4rem;
}
@media (max-width: 767px) {
    .company_access--column--item.item_2 {
        width: 100%;
        padding-right: 0;
    }
}
.company_access--column--item.item_3 {
    flex-shrink: 0;
    display: flex;
    align-items: flex-end;
    justify-content: flex-start;
    flex-wrap: wrap;
    width: 24.9rem;
}
@media (max-width: 767px) {
    .company_access--column--item.item_3 {
        width: 100%;
        padding-top: 1.5rem;
    }
}
.company_access--column--item.item_3 .text_link {
    width: 100%;
    padding: 1rem 0.8rem 1rem 1.8rem;
}
@media (max-width: 767px) {
    .company_access--column--item.item_3 .text_link {
        width: auto;
        padding: 1rem 0;
    }
}
.company_access--map {
    height: 40rem;
    margin: 6.4rem 0 0;
}
@media (max-width: 767px) {
    .company_access--map {
        height: 20rem;
        margin: 1.6rem 0 0;
    }
}
.company_access--map iframe {
    display: block;
    width: 100%;
    height: 100%;
}

/* CLIENT
------------------------------- */
.company_clients {
    padding: 6.4rem 0 12rem;
}
@media (max-width: 767px) {
    .company_clients {
        padding: 4rem 0 5.6rem;
    }
}
.company_clients .base {
    width: 140rem;
    padding-right: 6rem;
}
@media (max-width: 767px) {
    .company_clients .base {
        padding-right: 3rem;
    }
}
@media (max-width: 767px) {
    .company_clients .section_head {
        margin-bottom: 1.9rem;
    }
}
.company_clients .notes {
    font-size: 1.6rem;
    font-weight: 500;
    line-height: 1.55;
    letter-spacing: 0.04em;
    text-align: right;
    padding: 0 0 0;
    margin: 0 0 1.6rem;
    opacity: 0.5;
}
@media (max-width: 767px) {
    .company_clients .notes {
        font-size: 1.4rem;
    }
}
.company_clients--list {
    display: flex;
    align-items: stretch;
    justify-content: flex-start;
    flex-wrap: wrap;
    border-top: 1px solid #F5F5F5;
    border-left: 1px solid #F5F5F5;
}
.company_clients--list--item {
    width: 25%;
    font-size: 1.4rem;
    font-weight: 500;
    line-height: 1.55;
    letter-spacing: 0.04em;
    text-align: left;
    border-right: 1px solid #F5F5F5;
    border-bottom: 1px solid #F5F5F5;
    padding: 1.6rem;
}
@media (max-width: 767px) {
    .company_clients--list--item {
        width: 33.3333333333%;
        font-size: 1.2rem;
        padding: 0.8rem 1rem;
    }
}

/* 即応力と実行力
------------------------------- */
.company_about {
    background-color: #F5F5F5;
    padding: 12rem 0;
}
@media (max-width: 767px) {
    .company_about {
        padding: 6.4rem 0;
    }
}
.company_about .base {
    width: 144rem;
}
@media (max-width: 767px) {
    .company_about .base {
        padding: 0 2.5rem;
    }
}
.company_about--column {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    flex-wrap: nowrap;
    gap: 12rem;
    padding-left: 8rem;
    background-color: #fff;
}
@media (max-width: 767px) {
    .company_about--column {
        flex-wrap: wrap;
        flex-direction: column-reverse;
        gap: 2.4rem;
        padding-left: 0;
    }
}
.company_about--column--item {
    flex-grow: 1;
}
@media (max-width: 767px) {
    .company_about--column--item {
        width: 100%;
        padding: 0 2rem 4rem;
    }
}
.company_about--column--item .section_head {
    margin-bottom: 3.2rem;
}
@media (max-width: 767px) {
    .company_about--column--item .section_head {
        margin-bottom: 2.4rem;
    }
}
.company_about--column--item .desc {
    font-size: 1.6rem;
    line-height: 1.95;
    margin-bottom: 3.2rem;
}
@media (max-width: 767px) {
    .company_about--column--item .desc {
        font-size: 1.4rem;
        margin-bottom: 2.4rem;
    }
}
.company_about--column--item .btn_square {
    width: 34rem;
}
@media (max-width: 767px) {
    .company_about--column--item .btn_square {
        width: 100%;
    }
}
.company_about--column--img {
    flex-shrink: 0;
    width: 60rem;
}
@media (max-width: 767px) {
    .company_about--column--img {
        width: 100%;
        height: 28.9rem;
    }
}
.company_about--column--img img {
    display: block;
    width: 100%;
}
@media (max-width: 767px) {
    .company_about--column--img img {
        display: block;
        height: 100%;
        object-fit: cover;
    }
}

/* 動画コンテンツ
------------------------------- */
.page-template-page-company .video_ex {
    padding: 16rem 0;
}
@media (max-width: 767px) {
    .page-template-page-company .video_ex {
        padding: 6.4rem 0 8rem;
    }
}
.page-template-page-company .video_ex .base {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: nowrap;
    width: 148rem;
}
@media (max-width: 767px) {
    .page-template-page-company .video_ex .base {
        flex-wrap: wrap;
    }
}
.page-template-page-company .video_ex .base .section_ttl {
    width: 40rem;
    margin-bottom: 8rem;
}
@media (max-width: 767px) {
    .page-template-page-company .video_ex .base .section_ttl {
        width: 100%;
        margin-bottom: 3.2rem;
    }
}
.page-template-page-company .video_ex .base .section_ttl--ttl {
    font-size: 4rem;
    text-align: left;
}
@media (max-width: 767px) {
    .page-template-page-company .video_ex .base .section_ttl--ttl {
        font-size: 2.6rem;
    }
}
.page-template-page-company .video_ex--list {
    justify-content: space-between;
    gap: 0;
    width: 99rem;
    margin: 0;
}
@media (max-width: 767px) {
    .page-template-page-company .video_ex--list {
        width: 100%;
        gap: 3.2rem;
    }
}

/* SPONSOR
------------------------------- */
.sponsor {
    background: #F5F5F5;
    padding: 13rem 0;
}
@media (max-width: 767px) {
    .sponsor {
        padding: 6rem 0;
    }
}
.sponsor .base {
    width: 144rem;
}
.sponsor--column {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: nowrap;
    gap: 6.4rem;
    padding: 0 4.75rem 0 8.75rem;
}
@media (max-width: 767px) {
    .sponsor--column {
        flex-wrap: wrap;
        gap: 2rem;
        padding: 0;
    }
}
.sponsor--column--item {
    flex-grow: 1;
}
@media (max-width: 767px) {
    .sponsor--column--item {
        width: 100%;
    }
}
.sponsor--column--item .section_head {
    padding-right: 0;
    margin-bottom: 3.2rem;
}
@media (max-width: 767px) {
    .sponsor--column--item .section_head {
        margin-bottom: 0;
        padding-bottom: 0;
    }
}
.sponsor--column--item .text_link {
    padding: 1rem 0;
}
@media (max-width: 767px) {
    .sponsor--column--item .text_link {
        margin: 0 0 0 auto;
    }
}
.sponsor--column--img {
    flex-shrink: 0;
    width: 82.1rem;
}
@media (max-width: 767px) {
    .sponsor--column--img {
        width: 100%;
    }
}
.sponsor--column--img img {
    display: block;
    width: 100%;
}
@media (max-width: 767px) {
    .sponsor--column--img img {
        max-width: none;
        width: 33.8rem;
    }
}

/* NEWS PICK UP
------------------------------- */
.company_news_pickup {
    padding: 12rem 0 15.2rem;
}
@media (max-width: 767px) {
    .company_news_pickup {
        padding: 4rem 0 9.6rem;
    }
}
.company_news_pickup .base {
    width: 144rem;
}
.company_news_pickup .new_release--ttl {
    width: 38rem;
}
@media (max-width: 767px) {
    .company_news_pickup .new_release--ttl {
        width: 100%;
    }
}
.company_news_pickup .new_release--ttl .section_head {
    margin-bottom: 4.2rem;
}
@media (max-width: 767px) {
    .company_news_pickup .new_release--ttl .section_head {
        margin-bottom: 3.4rem;
    }
}
.company_news_pickup .new_release--ttl .section_head--ttl {
    font-size: 4rem !important;
}
@media (max-width: 767px) {
    .company_news_pickup .new_release--ttl .section_head--ttl {
        font-size: 2.6rem !important;
    }
}
@media (min-width: 768px) {
    .company_news_pickup .pickup_card--head {
        padding-right: 4rem;
    }
}

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

漫画

---------------------------------------- */
@media (max-width: 767px) {
    .post-type-archive-manga .page_header.title_wht .page_header--inner {
        height: 24.5rem;
    }
}

.manga_intro {
    padding: 8rem 0 12rem;
    overflow: hidden;
    position: relative;
}
@media (max-width: 767px) {
    .manga_intro {
        padding: 4rem 0 4rem;
        overflow: visible;
    }
}
.manga_intro .base {
    width: 140rem;
}
.manga_intro .section_head {
    max-width: 116rem;
}
.manga_intro .desc {
    width: 100rem;
    font-size: 1.8rem;
}
@media (max-width: 767px) {
    .manga_intro .desc {
        width: 100%;
        font-size: 1.5rem;
    }
}
.manga_intro--bg_01 {
    width: 44.2rem;
    height: 81.2rem;
    position: absolute;
    top: -60.6rem;
    left: 0;
    z-index: -1;
}
@media (max-width: 767px) {
    .manga_intro--bg_01 {
        display: none;
    }
}
.manga_intro--bg_01 img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: right 0 bottom 0;
}
.manga_intro--bg_02 {
    width: 70rem;
    position: absolute;
    bottom: -24.4rem;
    right: -24.7rem;
    overflow: hidden;
}
@media (max-width: 767px) {
    .manga_intro--bg_02 {
        width: 9.2rem;
        top: auto;
        bottom: -26.1rem;
        right: 0;
    }
}
.manga_intro--bg_02 img {
    display: block;
    width: 100%;
}
@media (max-width: 767px) {
    .manga_intro--bg_02 img {
        width: 70rem;
        max-width: none;
        object-fit: cover;
        object-position: 0 0;
    }
}

/* 記事一覧
------------------------------- */
.archive_manga {
    padding: 12rem 0;
}
@media (max-width: 767px) {
    .archive_manga {
        padding: 4rem 0 8rem;
    }
}
.archive_manga .base {
    width: 132rem;
}
.archive_manga--list {
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
    flex-wrap: wrap;
    gap: 2.5rem;
    margin: 8rem -1rem 0 0;
}
@media (max-width: 767px) {
    .archive_manga--list {
        gap: 3.2rem;
        margin: 4rem 0 0;
    }
}
.archive_manga--list--item {
    width: 41rem;
}
@media (max-width: 767px) {
    .archive_manga--list--item {
        width: 100%;
    }
}
.archive_manga--list--card {
    display: block;
    width: 100%;
    border-radius: 0.2rem;
    overflow: hidden;
    position: relative;
}
@media (min-width: 768px) {
    .archive_manga--list--card:hover {
        opacity: 1 !important;
    }
    .archive_manga--list--card:hover .archive_manga--list--card--img img {
        transform: scale(1.05);
    }
    .archive_manga--list--card:hover .btn_oval_arrow {
        transform: scale(0.9);
    }
    .archive_manga--list--card:hover .btn_oval_arrow::after {
        animation: loop-move 0.4s ease-out forwards;
        animation-iteration-count: 1;
    }
}
.archive_manga--list--card--img {
    width: 100%;
    aspect-ratio: 41/55.5;
    overflow: hidden;
    border: 1px solid rgba(0, 0, 0, 0.2);
}
@media (max-width: 767px) {
    .archive_manga--list--card--img {
        aspect-ratio: 33/44.7;
    }
}
.archive_manga--list--card--img img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    -webkit-transition: 0.3s;
    transition: 0.3s;
}
.archive_manga--list--card--item {
    width: 100%;
    padding: 2rem 1.6rem 1.6rem;
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: 1;
    backdrop-filter: blur(4px);
}
@media (max-width: 767px) {
    .archive_manga--list--card--item {
        padding: 1rem 1.6rem 1.6rem 1.6rem;
    }
}
.archive_manga--list--card--item::after {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, rgba(0, 82, 150, 0.8) 0%, rgba(56, 174, 230, 0.8) 100%);
    backdrop-filter: blur(4px);
    opacity: 0.8;
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: -1;
}
.archive_manga--list--card--meta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 2rem;
}
.archive_manga--list--card--meta .inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 1.6rem;
}
.archive_manga--list--card--meta .num {
    font-size: 1.2rem;
    font-weight: 700;
    line-height: 1.55;
    letter-spacing: 0.04em;
    text-align: left;
    color: #fff;
    border-radius: 0.4rem;
    background-color: #13161B;
    padding: 0.8rem 1.2rem 0.8rem 1.2rem;
    margin: 0 0 0;
}
@media (max-width: 767px) {
    .archive_manga--list--card--meta .num {
        font-size: 1rem;
        padding: 0.6rem 1.2rem 0.6rem 1.2rem;
    }
}
.archive_manga--list--card--meta .date {
    color: #fff;
}
@media (max-width: 767px) {
    .archive_manga--list--card--meta .date {
        font-size: 1.2rem;
    }
}
.archive_manga--list--card .title {
    font-size: 2.4rem;
    font-weight: 700;
    line-height: 1.55;
    letter-spacing: 0.04em;
    text-align: left;
    color: #fff;
    padding: 0 0 0.8rem;
    margin: 0.9rem 0 1.1rem;
    position: relative;
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}
@media (max-width: 767px) {
    .archive_manga--list--card .title {
        font-size: 1.8rem;
        margin: 0.8rem 0 0.8rem;
    }
}
.archive_manga--list--card .title::before {
    content: "";
    display: block;
    width: 100%;
    height: 1px;
    background-color: #D9D9D9;
    position: absolute;
    bottom: 0;
    left: 0;
}
.archive_manga--list--card .title::after {
    content: "";
    display: block;
    width: 5.2rem;
    height: 1px;
    background: linear-gradient(90deg, #38AEE6 -6.88%, #005296 121%);
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: 1;
}
.archive_manga--list--card .text_link {
    width: 100%;
    justify-content: space-between;
    color: #fff;
}
.archive_manga--list--card .text_link--ttl {
    font-size: 1.6rem;
    font-weight: 700;
    border-bottom: 0;
    padding: 0;
}
@media (max-width: 767px) {
    .archive_manga--list--card .text_link--ttl {
        font-size: 1.4rem;
    }
}
.archive_manga--list--card .text_link--ttl::after {
    display: none;
}
.archive_manga--list--card .text_link .link_card--item--btn {
    width: 2.4rem;
}
.archive_manga--list--card .text_link .link_card--item--btn .btn_oval_arrow {
    width: 100%;
}
.archive_manga--list--card .text_link .link_card--item--btn .btn_oval_arrow::after {
    width: 0.8rem;
}

.post-type-archive-manga .pager {
    justify-content: flex-end;
    gap: 1.2rem;
    padding: 4.8rem 16rem 4.8rem 0;
    margin: 7.2rem 0 0;
    position: relative;
}
@media (max-width: 767px) {
    .post-type-archive-manga .pager {
        padding-right: 10rem;
    }
}
.post-type-archive-manga .pager .first, .post-type-archive-manga .pager .last {
    display: none;
}
.post-type-archive-manga .pager .page-numbers {
    width: 0.6rem;
    border-radius: 0.6rem;
    aspect-ratio: 1/1;
    font-size: 0;
    background-color: #13161B;
    padding: 0;
    margin: 0;
}
.post-type-archive-manga .pager .page-numbers:not(.current) {
    opacity: 0.3;
}
.post-type-archive-manga .pager .page-numbers.next, .post-type-archive-manga .pager .page-numbers.prev {
    width: 4.8rem;
    aspect-ratio: 1/1;
    opacity: 1;
    background-color: transparent;
}
@media (min-width: 768px) {
    .post-type-archive-manga .pager .page-numbers.next:hover, .post-type-archive-manga .pager .page-numbers.prev:hover {
        opacity: 0.7;
    }
}
@media (max-width: 767px) {
    .post-type-archive-manga .pager .page-numbers.next, .post-type-archive-manga .pager .page-numbers.prev {
        width: 4rem;
    }
}
.post-type-archive-manga .pager .page-numbers.next .btn_oval_arrow, .post-type-archive-manga .pager .page-numbers.prev .btn_oval_arrow {
    width: 100%;
}
.post-type-archive-manga .pager .next {
    margin: 0;
    position: absolute;
    top: 50%;
    right: 2.4rem;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}
@media (max-width: 767px) {
    .post-type-archive-manga .pager .next {
        right: 0;
    }
}
.post-type-archive-manga .pager .prev {
    margin: 0;
    position: absolute;
    top: 50%;
    right: 8.8rem;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}
@media (max-width: 767px) {
    .post-type-archive-manga .pager .prev {
        right: 4.8rem;
    }
}
.post-type-archive-manga .pager .page-numbers:not(.current):not(.prev):not(.next):not(.first):not(.last):not(.dots) {
    display: block;
}

/* 詳細
------------------------------- */
.manga_head {
    padding: 4rem 0 8rem;
}
@media (max-width: 767px) {
    .manga_head {
        padding: 4rem 0 1rem;
    }
}
.manga_head .base {
    width: 132rem;
}
.manga_head--column {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: nowrap;
    gap: 12rem;
}
@media (max-width: 767px) {
    .manga_head--column {
        flex-wrap: wrap;
        gap: 3.4rem;
    }
}
.manga_head--column--img {
    flex-shrink: 0;
    width: 38rem;
}
@media (max-width: 767px) {
    .manga_head--column--img {
        width: 100%;
    }
}
@media (min-width: 768px) {
    .manga_head--column--img .archive_manga--list--card:hover .archive_manga--list--card--img img {
        transform: scale(1);
    }
}
.manga_head--column--img .archive_manga--list--card--img {
    aspect-ratio: 380/525;
}
.manga_head--column--img .archive_manga--list--card .title {
    font-size: 2rem;
    padding: 0;
    margin: 0.9rem 0 0.6rem;
}
@media (max-width: 767px) {
    .manga_head--column--img .archive_manga--list--card .title {
        font-size: 1.5rem;
        margin: 0.8rem 0 0;
    }
}
.manga_head--column--img .archive_manga--list--card .title::before, .manga_head--column--img .archive_manga--list--card .title::after {
    display: none;
}
.manga_head--column--item {
    flex-grow: 1;
}
@media (max-width: 767px) {
    .manga_head--column--item {
        width: 100%;
        padding-top: 3rem;
    }
}
.manga_head--column--item .desc {
    padding: 1.6rem 0 0;
    margin: 0 0 3.2rem;
}
@media (max-width: 767px) {
    .manga_head--column--item .desc {
        font-size: 1.4rem;
        margin: 0 0 3rem;
    }
}
.manga_head--column--item .text_link {
    padding: 1rem 0;
    margin: 0 0 0 auto;
}
@media (max-width: 767px) {
    .manga_head--column--item .text_link .btn_oval_arrow {
        width: 3.6rem;
    }
}

.manga_cta {
    padding: 8rem 0;
}
@media (max-width: 767px) {
    .manga_cta {
        padding: 6.4rem 0 3.2rem;
    }
}
.manga_cta .base {
    width: 148rem;
}
@media (max-width: 767px) {
    .manga_cta .base {
        padding: 0 2.5rem;
    }
}
.manga_cta--column {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: nowrap;
    gap: 8rem;
}
@media (max-width: 767px) {
    .manga_cta--column {
        flex-direction: column-reverse;
        flex-wrap: wrap;
        gap: 0;
    }
}
.manga_cta--column--item {
    flex-grow: 1;
    padding-left: 8rem;
}
@media (max-width: 767px) {
    .manga_cta--column--item {
        width: 100%;
        padding: 2.4rem 2rem;
    }
}
.manga_cta--column--item .section_head {
    margin-bottom: 2.4rem;
}
.manga_cta--column--item .desc {
    margin: 0 0 3.2rem;
}
@media (max-width: 767px) {
    .manga_cta--column--item .desc {
        margin: 0 0 2.2rem;
    }
}
.manga_cta--column--item .btn_square {
    width: 34rem;
}
@media (max-width: 767px) {
    .manga_cta--column--item .btn_square {
        width: 100%;
    }
}
.manga_cta--column--img {
    flex-shrink: 0;
    width: 80rem;
}
@media (max-width: 767px) {
    .manga_cta--column--img {
        width: 100%;
    }
}
.manga_cta--column--img img {
    display: block;
    width: 100%;
}

.manga_related {
    padding: 12rem 0 16rem;
}
@media (max-width: 767px) {
    .manga_related {
        padding: 4rem 0 6.4rem;
        overflow: hidden;
    }
}
.manga_related .base {
    width: 132rem;
}
@media (max-width: 767px) {
    .manga_related .js_slide_sp {
        display: block;
        width: auto;
        margin-left: -0.8rem;
        margin-right: -3rem;
    }
    .manga_related .js_slide_sp .archive_manga--list--item {
        width: auto;
        padding: 0 0.8rem;
    }
    .manga_related .js_slide_sp .archive_manga--list--item .archive_manga--list--card {
        width: 33rem;
    }
}

.manga_turning {
    padding: 12rem 0;
    background-color: #F5F5F5;
}
@media (max-width: 767px) {
    .manga_turning {
        padding: 6.4rem 0 6.4rem;
    }
}
.manga_turning .base {
    width: 143.7rem;
}
@media (max-width: 767px) {
    .manga_turning .base {
        padding: 0 1.6rem;
    }
}
.manga_turning--column {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: nowrap;
    gap: 4rem;
}
@media (max-width: 767px) {
    .manga_turning--column {
        flex-wrap: wrap;
        gap: 1.6rem;
    }
}
.manga_turning--column--img {
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    width: 59.7rem;
    aspect-ratio: 59.7/86;
    position: relative;
}
@media (max-width: 767px) {
    .manga_turning--column--img {
        display: block;
        width: 100%;
        aspect-ratio: 59.7/79.2;
        padding: 9rem 0 6.25rem;
    }
}
.manga_turning--column--img--notes {
    width: 55rem;
    position: absolute;
    top: 0;
    left: 50%;
    -webkit-transform: translateY(0) translateX(-50%);
    transform: translateY(0) translateX(-50%);
    z-index: 1;
}
@media (max-width: 767px) {
    .manga_turning--column--img--notes {
        width: 27.3rem;
    }
}
.manga_turning--column--img--notes img {
    display: block;
    width: 100%;
}
.manga_turning--column--img .turn {
    overflow: hidden;
    filter: drop-shadow(16px 16px 20px rgba(2, 42, 80, 0.21));
}
@media (max-width: 767px) {
    .manga_turning--column--img .turn {
        width: 32.2rem;
        margin: 0 auto;
    }
}
.manga_turning--column--img .turn-wrapper {
    width: 49.5rem;
    max-width: 528px;
    aspect-ratio: 465/655;
}
@media (max-width: 767px) {
    .manga_turning--column--img .turn-wrapper {
        width: 100%;
        margin: 0 auto;
    }
}
.manga_turning--column--img .turn-pagination {
    display: flex;
    align-items: stretch;
    justify-content: center;
    flex-wrap: nowrap;
    width: 13rem;
    height: 4.6rem;
    border-radius: 0.8rem;
    overflow: hidden;
    position: absolute;
    bottom: 0;
    left: 50%;
    -webkit-transform: translateY(0) translateX(-50%);
    transform: translateY(0) translateX(-50%);
    z-index: 1;
}
@media (max-width: 767px) {
    .manga_turning--column--img .turn-pagination {
        width: 10.5rem;
        background-color: #fff;
    }
}
.manga_turning--column--img .turn-pagination .current-page {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 50%;
    height: 100%;
    font-size: 2rem;
    font-weight: 700;
    line-height: 1.55;
    letter-spacing: 0.04em;
    color: #fff;
    background-color: #13161B;
}
@media (max-width: 767px) {
    .manga_turning--column--img .turn-pagination .current-page {
        width: fit-content;
        font-size: 2rem;
        color: #13161B;
        background-color: #fff;
    }
    .manga_turning--column--img .turn-pagination .current-page::after {
        content: "/";
        display: block;
        font-size: 1.4rem;
        font-weight: 700;
        margin-left: 0.7rem;
    }
}
.manga_turning--column--img .turn-pagination .total-page {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 50%;
    height: 100%;
    font-size: 2rem;
    font-weight: 700;
    line-height: 1.55;
    letter-spacing: 0.04em;
    color: #13161B;
    background-color: #fff;
}
@media (max-width: 767px) {
    .manga_turning--column--img .turn-pagination .total-page {
        width: fit-content;
        font-size: 1.6rem;
        padding-left: 0.7rem;
        opacity: 0.5;
    }
}
.manga_turning--column--img .turn-button-prev {
    position: absolute;
    top: 50%;
    left: 0;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}
@media (max-width: 767px) {
    .manga_turning--column--img .turn-button-prev {
        left: -1.2rem;
    }
}
.manga_turning--column--img .turn-button-prev.disabled {
    opacity: 0.5;
}
.manga_turning--column--img .turn-button-next {
    position: absolute;
    top: 50%;
    right: 0;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}
@media (max-width: 767px) {
    .manga_turning--column--img .turn-button-next {
        right: -1.2rem;
    }
}
.manga_turning--column--img .turn-button-next.disabled {
    opacity: 0.5;
}
.manga_turning--column--item {
    flex-grow: 1;
    border-radius: 4rem;
    background-color: #fff;
    padding: 6rem;
}
@media (max-width: 767px) {
    .manga_turning--column--item {
        width: 100%;
        border-radius: 2rem;
        padding: 1.6rem 2rem 0.8rem 2rem;
        box-shadow: 0 2px 6px 0 rgba(0, 0, 0, 0.25);
    }
}
.manga_turning--column--item .title {
    width: 100%;
    font-size: 2.4rem;
    font-weight: 700;
    line-height: 1.55;
    letter-spacing: 0.04em;
    text-align: left;
    padding: 1rem;
}
@media (max-width: 767px) {
    .manga_turning--column--item .title {
        font-size: 1.4rem;
        padding: 0;
    }
}
.manga_turning--column--item .p-media {
    display: flex;
    align-items: center;
    gap: 0.8rem;
    width: 100%;
    cursor: pointer;
    opacity: 0.5;
    -webkit-transition: 0.2s;
    transition: 0.2s;
}
@media (max-width: 767px) {
    .manga_turning--column--item .p-media {
        gap: 0;
        display: none;
    }
}
.manga_turning--column--item .p-media__container {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 1.6rem;
}
@media (max-width: 767px) {
    .manga_turning--column--item .p-media__container {
        gap: 0;
    }
}
.manga_turning--column--item .p-media.is-active {
    opacity: 1;
}
@media (max-width: 767px) {
    .manga_turning--column--item .p-media.is-active {
        display: flex;
        width: 100%;
    }
}
.manga_turning--column--item .p-media__head {
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    width: 10.9rem;
    height: 4.3rem;
    font-size: 1.8rem;
    font-weight: 700;
    line-height: 1.55;
    letter-spacing: 0.04em;
    color: #fff;
    border-radius: 0.4rem;
    background: #13161B;
    padding: 0.4rem;
}
@media (max-width: 767px) {
    .manga_turning--column--item .p-media__head {
        width: 8.4rem;
        height: 3.4rem;
        font-size: 1.2rem;
    }
}
.manga_turning--column--item .p-media__txt {
    flex-grow: 1;
    font-size: 1.8rem;
    font-weight: 700;
    line-height: 1.55;
    letter-spacing: 0.04em;
    padding: 1rem;
}
@media (max-width: 767px) {
    .manga_turning--column--item .p-media__txt {
        font-size: 1.4rem;
    }
}
.manga_turning .turn-slide {
    display: none;
}

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

採用情報ページ

---------------------------------------- */
/* recruit_header
------------------------------- */
.post-type-archive-recruit .container {
    overflow: visible;
}

.recruit_header {
    padding: 0;
}
@media (max-width: 767px) {
    .recruit_header {
        overflow: hidden;
    }
}
.recruit_header .breadcrumbs_wrap {
    max-width: 100%;
    background-color: #fff;
    position: relative;
    z-index: 1;
}
.recruit_header .breadcrumbs_wrap .breadcrumbs {
    max-width: 140rem;
    margin: 0 auto;
}
.recruit_header .page_header--inner {
    height: 79.8rem;
    position: relative;
}
@media (max-width: 767px) {
    .recruit_header .page_header--inner {
        height: 66.5rem;
    }
}
.recruit_header--ttl {
    width: 144.8988rem;
    position: absolute;
    top: 0.9rem;
    left: 6.8rem;
    z-index: 2;
}
@media (max-width: 767px) {
    .recruit_header--ttl {
        width: 40.9rem;
        top: 0.4rem;
        left: 0.7rem;
    }
}
.recruit_header--ttl img {
    display: block;
    width: 100%;
}
.recruit_header--scroll {
    width: 12.5rem;
    position: absolute;
    bottom: 10.3rem;
    left: 50%;
    -webkit-transform: translateY(0) translateX(-33%);
    transform: translateY(0) translateX(-33%);
    z-index: 3;
}
@media (max-width: 767px) {
    .recruit_header--scroll {
        width: 10.4rem;
        bottom: 2.5rem;
        -webkit-transform: translateY(0) translateX(-50%);
        transform: translateY(0) translateX(-50%);
    }
}
.recruit_header--scroll img {
    display: block;
    width: 100%;
}
.recruit_header--img {
    width: 86.9rem;
    position: absolute;
    top: 1.4rem;
    left: -10.2rem;
    z-index: 1;
}
@media (max-width: 767px) {
    .recruit_header--img {
        width: 62rem;
        top: 17.3rem;
        left: -22.9rem;
    }
}
.recruit_header--img img {
    display: block;
    width: 100%;
}
.recruit_header--bg {
    width: 100%;
    height: 88rem;
    position: absolute;
    bottom: 0;
    left: 0;
    overflow: hidden;
}
.recruit_header--bg img {
    display: block;
    width: 160rem;
    max-width: none;
    position: absolute;
    bottom: 0rem;
    right: 0;
}
@media (max-width: 767px) {
    .recruit_header--bg img {
        width: 100%;
    }
}

/* 採用メッセージ
------------------------------- */
.recruit_message {
    color: #fff;
    background-color: #000;
    padding: 3.8rem 0 10.4rem;
    position: relative;
    overflow: hidden;
}
@media (max-width: 767px) {
    .recruit_message {
        padding: 4.8rem 0 6.4rem;
    }
}
.recruit_message .base {
    width: 133rem;
    position: relative;
    z-index: 2;
}
.recruit_message--column {
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
    flex-wrap: nowrap;
    gap: 8rem;
    margin: 8rem 0 0;
}
@media (max-width: 767px) {
    .recruit_message--column {
        flex-wrap: wrap;
        gap: 3.8rem;
    }
}
.recruit_message--column--img {
    flex-shrink: 0;
    width: 52rem;
}
@media (max-width: 767px) {
    .recruit_message--column--img {
        width: 100%;
    }
}
.recruit_message--column--img .inner {
    width: 100%;
    aspect-ratio: 520/752;
    position: relative;
}
@media (max-width: 767px) {
    .recruit_message--column--img .inner {
        height: 24.6rem;
        aspect-ratio: auto;
    }
}
.recruit_message--column--item {
    flex-grow: 0;
}
@media (max-width: 767px) {
    .recruit_message--column--item {
        width: 100%;
    }
}
.recruit_message--column--item .desc {
    font-size: 1.8rem;
    font-weight: 500;
    line-height: 1.89;
    letter-spacing: 0.04em;
    text-align: left;
    padding: 0 0 0;
    margin: 0 -1em 0 0;
}
@media (max-width: 767px) {
    .recruit_message--column--item .desc {
        font-size: 1.3rem;
        line-height: 1.54;
        margin: 0 0 0 0;
    }
}
.recruit_message--column--item .btn_square {
    width: 40rem;
    margin: 8rem -1.6rem 0 auto;
}
@media (max-width: 767px) {
    .recruit_message--column--item .btn_square {
        width: 100%;
        height: 5.4rem;
        margin: 4rem 0 0;
    }
}
.recruit_message--img_01 {
    display: block;
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
}
.recruit_message--img_02 {
    display: block;
    width: 48.4rem;
    border-radius: 0.8rem;
    position: absolute;
    bottom: 0;
    right: 0;
}
@media (max-width: 767px) {
    .recruit_message--img_02 {
        width: 22.4rem;
        border-radius: 0.4rem;
        right: -1.5rem;
    }
}

/* スライド
------------------------------- */
.recruit_slide_wrap {
    padding: 12rem 0 8rem;
}
@media (max-width: 767px) {
    .recruit_slide_wrap {
        padding: 6rem 0 4rem;
    }
}

/* 企業姿勢を表すメッセージ
------------------------------- */
.recruit_challenge {
    padding: 12.6rem 0 12.42rem;
    position: relative;
    background: linear-gradient(90deg, #38AEE6 -6.88%, #005296 121%);
}
@media (max-width: 767px) {
    .recruit_challenge {
        padding: 5.8rem 0 6.46rem;
    }
}
.recruit_challenge .base {
    width: 120rem;
    position: relative;
    z-index: 2;
}
@media (max-width: 767px) {
    .recruit_challenge .base {
        padding: 0 1rem;
        overflow: hidden;
    }
}
.recruit_challenge--img_01 {
    display: block;
    width: 100%;
}
@media (max-width: 767px) {
    .recruit_challenge--img_01 {
        width: 110.2%;
        max-width: none;
    }
}
.recruit_challenge--img_02 {
    display: block;
    width: 55.8rem;
    height: 37.7rem;
    position: absolute;
    bottom: -3.8rem;
    right: 0;
    z-index: 1;
}
@media (max-width: 767px) {
    .recruit_challenge--img_02 {
        width: 24.7rem;
        height: 14.7rem;
        bottom: -4.06rem;
        right: 0.5rem;
    }
}
.recruit_challenge--img_02 img {
    display: block;
    width: 100%;
    height: 100%;
}
@media (min-width: 768px) {
    .recruit_challenge--img_02 img {
        object-fit: cover;
        object-position: 0 0;
    }
}
@media (max-width: 767px) {
    .recruit_challenge--img_02 img {
        height: auto;
    }
}

/* 会社を知る
------------------------------- */
.recruit_company {
    padding: 8rem 0 12rem;
    margin: 10.7rem 0 0;
}
@media (max-width: 767px) {
    .recruit_company {
        padding: 8.8rem 0 6.4rem;
        margin: 0;
    }
}
.recruit_company .base {
    width: 132rem;
}
.recruit_company--column {
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
    flex-wrap: wrap;
    gap: 7.2rem;
    margin: 6.4rem 0 0;
}
@media (max-width: 767px) {
    .recruit_company--column {
        gap: 3.8rem;
        margin: -0.6rem 0 0;
    }
}
.recruit_company--column--item {
    width: calc((100% - 7.2rem) / 2);
}
@media (max-width: 767px) {
    .recruit_company--column--item {
        width: 100%;
    }
}
.recruit_company--column--item .image {
    aspect-ratio: 60/24;
    overflow: hidden;
    border-radius: 0.8rem;
    border: 1px solid #E6E6E6;
    margin: 0 0 3.2rem;
}
@media (max-width: 767px) {
    .recruit_company--column--item .image {
        aspect-ratio: 33/20;
        margin: 0 0 3.5rem;
    }
}
.recruit_company--column--item .image img {
    display: block;
    width: 100%;
}
.recruit_company--column--item .title {
    font-size: 2.4rem;
    font-weight: 700;
    line-height: 1.55;
    letter-spacing: 0.04em;
    text-align: left;
    margin: 0 0 2.4rem;
}
@media (max-width: 767px) {
    .recruit_company--column--item .title {
        font-size: 1.8rem;
    }
}
.recruit_company--column--item .desc {
    line-height: 1.55;
}
.recruit_company--column--item .text_link {
    padding: 1rem 0;
    margin: 2.4rem 4.8rem 0 auto;
}
@media (max-width: 767px) {
    .recruit_company--column--item .text_link {
        margin: 1rem 0 0 auto;
    }
}

/* BENEFIT
------------------------------- */
.recruit_benefit {
    background: linear-gradient(90deg, #38AEE6 -6.88%, #005296 121%);
    padding: 8rem 0 12rem;
}
@media (max-width: 767px) {
    .recruit_benefit {
        padding: 4rem 0 5.6rem;
    }
}
.recruit_benefit .base {
    width: 132.8rem;
}
.recruit_benefit .section_head {
    color: #fff;
}
.recruit_benefit--column {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 3.2rem;
    padding: 0;
    margin: -0.2rem 0 0;
}
@media (max-width: 767px) {
    .recruit_benefit--column {
        align-items: flex-start;
        gap: 0.6rem;
        margin: -1rem 0 0;
    }
}
.recruit_benefit--column--item {
    width: 28.8rem;
    background-color: #fff;
    border-radius: 0.8rem;
    border: 1px solid #9A9A9A;
    padding: 2.4rem;
}
@media (min-width: 768px) {
    .recruit_benefit--column--item:nth-child(1), .recruit_benefit--column--item:nth-child(2) {
        width: 45rem;
    }
    .recruit_benefit--column--item:nth-child(1) {
        margin-left: 5rem;
    }
    .recruit_benefit--column--item:nth-child(2) {
        margin-right: 5rem;
    }
}
@media (max-width: 767px) {
    .recruit_benefit--column--item {
        width: calc((100% - 0.6rem) / 2);
        min-height: 15rem;
        padding: 0.9rem 1.6rem 1.5rem 1.6rem;
    }
    .recruit_benefit--column--item:nth-child(1), .recruit_benefit--column--item:nth-child(2) {
        width: 100%;
    }
}
.recruit_benefit--column--head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: nowrap;
    gap: 2.4rem;
    padding: 0 0 2.4rem;
    margin: 0 0 2.4rem;
    position: relative;
}
@media (max-width: 767px) {
    .recruit_benefit--column--head {
        align-items: flex-start;
        gap: 0;
        padding: 0 0 1rem;
        margin: 0 0 1rem;
    }
}
.recruit_benefit--column--head .inner {
    flex-grow: 1;
}
@media (max-width: 767px) {
    .recruit_benefit--column--head .inner {
        width: 100%;
    }
}
.recruit_benefit--column--head .section_head--eng {
    height: 3rem;
    line-height: 1.55;
}
@media (max-width: 767px) {
    .recruit_benefit--column--head .section_head--eng {
        height: 2.4rem;
        padding: 0.1rem 0;
    }
}
.recruit_benefit--column--head .section_head--eng .accent_ttl {
    min-height: 100%;
    font-size: 1.4rem;
    padding: 0.2rem 0 0 3.2rem;
}
@media (max-width: 767px) {
    .recruit_benefit--column--head .section_head--eng .accent_ttl {
        font-size: 1.2rem;
        padding: 0.1rem 0 0 2.4rem;
    }
}
.recruit_benefit--column--head .section_head--eng .accent_ttl::before {
    width: 3rem;
    background-size: 2.88rem auto;
    top: -0.1rem;
}
@media (max-width: 767px) {
    .recruit_benefit--column--head .section_head--eng .accent_ttl::before {
        width: 2.2rem;
        background-size: 2.112rem auto;
    }
}
.recruit_benefit--column--head .title {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    flex-wrap: wrap;
    min-height: 7.4rem;
    font-size: 2.4rem;
    font-weight: 700;
    line-height: 1.55;
    letter-spacing: 0.04em;
    text-align: left;
    margin: 0.4rem 0 0;
}
@media (max-width: 767px) {
    .recruit_benefit--column--head .title {
        min-height: 0;
        font-size: 1.4rem;
        margin-top: -0.3rem;
    }
}
.recruit_benefit--column--head .icon {
    display: block;
    width: 6.4rem;
}
@media (max-width: 767px) {
    .recruit_benefit--column--head .icon {
        width: 3rem;
        position: absolute;
        top: 0.6rem;
        right: -0.6rem;
    }
}
.recruit_benefit--column--head::before {
    content: "";
    display: block;
    width: 100%;
    height: 1px;
    background-color: #D9D9D9;
    position: absolute;
    bottom: 0;
    left: 0;
}
.recruit_benefit--column--head::after {
    content: "";
    display: block;
    width: 5.2rem;
    height: 1px;
    background: linear-gradient(90deg, #38AEE6 -6.88%, #005296 121%);
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: 1;
}
.recruit_benefit--column .desc {
    min-height: 5rem;
    line-height: 1.55;
}
@media (max-width: 767px) {
    .recruit_benefit--column .desc {
        min-height: 4.2rem;
        font-size: 1.2rem;
        padding: 0.2rem 0;
    }
}

/* WORK STYLE
------------------------------- */
.recruit_work {
    padding: 8rem 0 12rem;
}
@media (max-width: 767px) {
    .recruit_work {
        padding: 4.8rem 0 6.4rem;
    }
}
.recruit_work .base {
    width: 131.2rem;
}
.recruit_work--column {
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
    flex-wrap: wrap;
    gap: 4.8rem;
    padding: 0 0 0 1.8rem;
    margin: 4rem 0 0;
}
@media (max-width: 767px) {
    .recruit_work--column {
        gap: 4rem;
        padding: 0;
        margin: 3.2rem 0 0;
    }
}
.recruit_work--column--item {
    width: 38rem;
}
@media (max-width: 767px) {
    .recruit_work--column--item {
        width: 100%;
    }
}
.recruit_work--column--item .image {
    margin: 0 0 2.4rem;
}
@media (max-width: 767px) {
    .recruit_work--column--item .image {
        aspect-ratio: 33/20.2;
    }
}
.recruit_work--column--item .image img {
    display: block;
    width: 100%;
}
@media (max-width: 767px) {
    .recruit_work--column--item .image img {
        display: block;
        width: 100%;
        height: 100%;
        object-fit: cover;
    }
}
.recruit_work--column--item .title {
    font-size: 2.2rem;
    font-weight: 700;
    line-height: 1.55;
    letter-spacing: 0.04em;
    text-align: left;
    padding: 0 0 2.4rem;
    margin: 0 0 1.2rem;
    position: relative;
}
@media (max-width: 767px) {
    .recruit_work--column--item .title {
        font-size: 1.6rem;
        padding: 0 0 1.6rem;
        margin: 0 0 1.2rem;
    }
}
.recruit_work--column--item .title::before {
    content: "";
    display: block;
    width: 100%;
    height: 1px;
    background-color: #D9D9D9;
    position: absolute;
    bottom: 0;
    left: 0;
}
.recruit_work--column--item .title::after {
    content: "";
    display: block;
    width: 5.2rem;
    height: 1px;
    background: linear-gradient(90deg, #38AEE6 -6.88%, #005296 121%);
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: 1;
}
@media (max-width: 767px) {
    .recruit_work--column--item .desc {
        font-size: 1.4rem;
        font-weight: 500;
        line-height: 1.95;
    }
}

/* INTERVIEW
------------------------------- */
.recruit_interview {
    background: #F5F5F5;
    padding: 8rem 0 8rem;
    overflow: hidden;
}
@media (max-width: 767px) {
    .recruit_interview {
        padding: 6.4rem 0 7.2rem;
    }
}
.recruit_interview .base {
    width: 140rem;
}
.recruit_interview .section_head {
    margin-bottom: 1.7rem;
}
@media (max-width: 767px) {
    .recruit_interview .section_head {
        margin-bottom: 0.1rem;
        padding-bottom: 0;
    }
}
.recruit_interview .news_pickup_ex--slide--button {
    max-width: 124rem;
    margin-top: 5.3rem;
}
@media (max-width: 767px) {
    .recruit_interview .news_pickup_ex--slide--button {
        margin-top: 1.5rem;
        border-top: 0;
    }
}
.recruit_interview--slide {
    overflow: visible;
}
.recruit_interview--slide .slick-list {
    overflow: visible;
}
.recruit_interview--slide--inner {
    padding: 0 4.5rem 0 0;
}
@media (max-width: 767px) {
    .recruit_interview--slide--inner {
        padding: 0 0.8rem 0 0;
    }
}

.interview_card {
    width: 60rem;
}
@media (max-width: 767px) {
    .interview_card {
        width: 33rem;
    }
}
.interview_card--header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: nowrap;
    gap: 5.2rem;
}
@media (max-width: 767px) {
    .interview_card--header {
        align-items: flex-start;
        gap: 1.6rem;
    }
}
.interview_card--header--img {
    flex-shrink: 0;
    width: 23rem;
    height: 23rem;
    border-radius: 11.8rem 11.8rem 0 0;
    overflow: hidden;
}
@media (max-width: 767px) {
    .interview_card--header--img {
        width: 16rem;
        height: 16rem;
        border-radius: 11.8rem 11.8rem 0 0;
    }
}
.interview_card--header--img img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.interview_card--header--item {
    flex-grow: 1;
    padding: 0 0 4.4rem;
}
@media (max-width: 767px) {
    .interview_card--header--item {
        padding: 0.8rem 0 0;
    }
}
.interview_card--header--item .accent_ttl {
    font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
    font-weight: 400;
    min-height: 3rem;
    font-size: 1.4rem;
    padding: 0.1rem 0 0 3.2rem;
}
@media (max-width: 767px) {
    .interview_card--header--item .accent_ttl {
        font-size: 1.2rem;
        padding: 0.1rem 0 0 3.2rem;
    }
}
.interview_card--header--item .accent_ttl::before {
    width: 3rem;
    background-size: 2.88rem auto;
    top: 0rem;
}
.interview_card--header--item .title {
    display: block;
    width: 100%;
    font-size: 2rem;
    font-weight: 700;
    line-height: 1.55;
    letter-spacing: 0.04em;
    padding: 0 0 0;
    margin: 0.8rem 0 0;
}
@media (max-width: 767px) {
    .interview_card--header--item .title {
        font-size: 1.5rem;
        margin: 0;
    }
}
.interview_card--meta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: nowrap;
    gap: 0.8rem;
    background: linear-gradient(90deg, rgba(0, 82, 150, 0.8) 0%, rgba(56, 174, 230, 0.8) 100%);
    backdrop-filter: blur(4px);
    padding: 0.8rem 1.6rem;
    margin: -5.6rem 0 0;
    position: relative;
    z-index: 1;
}
@media (max-width: 767px) {
    .interview_card--meta {
        align-items: flex-end;
        min-height: 6.6rem;
        margin: -4.6rem 0 0;
        padding: 1.15rem 1rem;
    }
}
.interview_card--meta--item {
    flex-shrink: 0;
}
@media (max-width: 767px) {
    .interview_card--meta--item {
        display: flex;
        align-items: flex-end;
        justify-content: flex-start;
        flex-wrap: nowrap;
        gap: 0.8rem;
    }
}
.interview_card--meta--item .prof {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    flex-wrap: wrap;
    gap: 1.6rem;
    font-family: "Anta", sans-serif;
    font-size: 1.4rem;
    font-weight: 400;
    line-height: 1.55;
    letter-spacing: 0.04em;
    color: #fff;
}
@media (max-width: 767px) {
    .interview_card--meta--item .prof {
        display: block;
        width: 100%;
        font-size: 1.2rem;
        white-space: nowrap;
    }
}
.interview_card--meta--item .prof + .prof {
    margin-top: 0.4rem;
}
@media (max-width: 767px) {
    .interview_card--meta--item .prof + .prof {
        margin-top: 0;
    }
}
.interview_card--meta--item .prof .tag {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    width: fit-content;
    height: 3rem;
    font-size: 1.2rem;
    font-weight: 700;
    line-height: 1.55;
    letter-spacing: 0.04em;
    color: #fff;
    background-color: #13161B;
    border-radius: 0.4rem;
    margin: 0 0 0;
    padding: 0.4rem 1.2rem 0.4rem 1.2rem;
}
@media (max-width: 767px) {
    .interview_card--meta--item .prof .tag {
        width: 100%;
        height: 2.1rem;
        font-size: 1rem;
        line-height: 1.2;
        padding: 0 0.5rem;
    }
}
.interview_card--meta--tag {
    flex-grow: 1;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    flex-wrap: wrap;
    gap: 0.4rem;
}
.interview_card--meta--tag .tag {
    width: fit-content;
    font-size: 1.2rem;
    font-weight: 500;
    line-height: 1.55;
    letter-spacing: 0.04em;
    border-radius: 0;
    background-color: #F5F5F5;
    margin: 0 0 0;
    padding: 0.4rem 0.8rem;
}
@media (max-width: 767px) {
    .interview_card--meta--tag .tag {
        height: 1.9rem;
        font-size: 1rem;
        padding: 0.1rem 0.8rem;
    }
}
.interview_card--list {
    border-radius: 0 0 2.4rem 2.4rem;
    border: 1px solid #D9D9D9;
    background: #FFF;
    padding: 1.6rem 2.4rem 2.4rem 2.4rem;
}
@media (max-width: 767px) {
    .interview_card--list {
        padding: 1rem 1rem 1.6rem 0.8rem;
    }
}
.interview_card--list--item {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: nowrap;
    gap: 0.8rem;
    padding: 0.8rem 0 0.8rem 0.8rem;
}
@media (max-width: 767px) {
    .interview_card--list--item + .interview_card--list--item {
        margin-top: -0.5rem;
    }
}
.interview_card--list--item .image {
    flex-shrink: 0;
    width: 6.4rem;
    aspect-ratio: 1/1;
    border-radius: 6.4rem;
    overflow: hidden;
}
@media (max-width: 767px) {
    .interview_card--list--item .image {
        width: 5.6rem;
    }
}
.interview_card--list--item .image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.interview_card--list--item .desc {
    flex-grow: 1;
    font-size: 1.6rem;
    font-weight: 500;
    line-height: 1.55;
    letter-spacing: 0.04em;
    text-align: left;
    border-radius: 4.8rem;
    background: #F5F5F5;
    margin: 0 0 0;
    padding: 0.8rem 1.6rem;
}
@media (max-width: 767px) {
    .interview_card--list--item .desc {
        font-size: 1.4rem;
        border-radius: 3.2rem;
        padding: 0.6rem 1.6rem;
    }
}
.interview_card--list--item.answer {
    flex-direction: row-reverse;
    padding: 0.8rem 0.8rem 0.8rem 0;
}
.interview_card--list--item.answer .desc {
    font-size: 1.4rem;
    border-radius: 10rem;
    border: 0.3rem solid #38AEE6;
    background: #FFF;
    padding: 0.7rem 2.7rem;
}
@media (max-width: 767px) {
    .interview_card--list--item.answer .desc {
        font-size: 1.2rem;
        border-radius: 3.2rem;
        padding: 0.6rem 1.3rem;
    }
}

/* VIDEO CONTENTS
------------------------------- */
.post-type-archive-recruit .video_ex .section_head--eng {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
}

/* recruit_service
------------------------------- */
.recruit_service {
    padding: 16rem 0 16rem;
    position: relative;
}
@media (max-width: 767px) {
    .recruit_service {
        padding: 6.4rem 0 3.2rem;
    }
}
.recruit_service .base {
    width: 136rem;
    position: relative;
    z-index: 1;
}
.recruit_service--column {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: nowrap;
    gap: 12.8rem;
    padding: 0 2rem 0 0;
}
@media (max-width: 767px) {
    .recruit_service--column {
        flex-wrap: wrap;
        gap: 4.8rem;
        padding: 0;
    }
}
.recruit_service--column--img {
    flex-shrink: 0;
    width: 61rem;
}
@media (max-width: 767px) {
    .recruit_service--column--img {
        width: 100%;
    }
}
.recruit_service--column--img img {
    display: block;
    width: 102.6%;
    max-width: none;
    margin: -0.4rem 0 -0.4rem -0.8rem;
}
@media (max-width: 767px) {
    .recruit_service--column--img img {
        width: 106.9%;
        margin: -1.1rem 0 -1.1rem 0.2rem;
    }
}
.recruit_service--column--item {
    flex-grow: 1;
}
@media (max-width: 767px) {
    .recruit_service--column--item {
        width: 100%;
        padding: 0 0.5rem;
    }
}
@media (max-width: 767px) {
    .recruit_service--column--item .section_head {
        margin-bottom: 2.4rem;
    }
}
.recruit_service--column--item .desc {
    margin: 0 0 3.2rem;
}
@media (max-width: 767px) {
    .recruit_service--column--item .desc {
        margin-bottom: 2.1rem;
    }
}
@media (max-width: 767px) {
    .recruit_service--column--item .btn_square {
        width: 100%;
    }
}
.recruit_service--bg {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    overflow: hidden;
}
.recruit_service--bg img {
    display: block;
    width: 100%;
}
@media (max-width: 767px) {
    .recruit_service--bg img {
        display: block;
        width: 180%;
        max-width: none;
        position: absolute;
        top: 28%;
        left: 52%;
        -webkit-transform: translateY(-50%) translateX(-50%);
        transform: translateY(-50%) translateX(-50%);
    }
}

/* NEWS PICK UP
------------------------------- */
.recruit_pickup_ex {
    padding: 4.8rem 0 8rem;
}
@media (max-width: 767px) {
    .recruit_pickup_ex {
        padding: 5.6rem 0 7rem;
    }
}
.recruit_pickup_ex .section_head {
    padding-right: 2rem;
}
@media (max-width: 767px) {
    .recruit_pickup_ex .section_head {
        padding-right: 0;
    }
}
.recruit_pickup_ex .section_head .text_link {
    margin-bottom: 0;
}

/* ENTRY
------------------------------- */
.recruit_entry {
    color: #fff;
    background: linear-gradient(90deg, #38AEE6 -6.88%, #005296 121%);
    padding: 8.4rem 0 8.4rem;
    position: relative;
    overflow: hidden;
}
@media (max-width: 767px) {
    .recruit_entry {
        padding: 5.6rem 0 5.6rem;
    }
}
.recruit_entry .base {
    position: relative;
    z-index: 2;
}
.recruit_entry--eng_ttl {
    display: block;
    font-family: "Anta", sans-serif;
    font-size: 5.2rem;
    font-weight: 400;
    line-height: 1.55;
    letter-spacing: 0.04em;
    text-align: center;
    padding: 0 0 0;
    margin: 0 0 1rem;
}
@media (max-width: 767px) {
    .recruit_entry--eng_ttl {
        margin: 0 0 0.2rem;
    }
}
.recruit_entry--ttl {
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 1.55;
    letter-spacing: 0.04em;
    text-align: center;
    margin: 0 0 2.4rem;
}
@media (max-width: 767px) {
    .recruit_entry--ttl {
        margin: 0 0 1.6rem;
    }
}
.recruit_entry .desc {
    font-weight: 700;
    line-height: 1.55;
    text-align: center;
    margin-bottom: 3.2rem;
}
@media (max-width: 767px) {
    .recruit_entry .desc {
        font-size: 1.6rem;
        margin-bottom: 1.6rem;
    }
}
.recruit_entry--btn {
    display: block;
    width: 12.6rem;
    margin: 0 auto;
}
@media (max-width: 767px) {
    .recruit_entry--btn {
        width: 12.5rem;
    }
}
.recruit_entry--btn img {
    display: block;
    width: 100%;
}

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

社員紹介

---------------------------------------- */
.post-type-archive-staff .page_header.title_wht .base {
    padding-right: 1rem;
}
@media (max-width: 767px) {
    .post-type-archive-staff .page_header.title_wht .page_header--inner {
        height: 24.5rem;
    }
}

.staff_intro {
    padding: 8rem 0 12rem;
    position: relative;
    overflow: hidden;
}
@media (max-width: 767px) {
    .staff_intro {
        padding: 4rem 0 10.4rem;
    }
}
.staff_intro .base {
    width: 140rem;
    position: relative;
    z-index: 1;
}
.staff_intro .section_head--blksub {
    margin-bottom: 3.2rem;
}
.staff_intro .desc {
    font-size: 1.8rem;
    font-weight: 500;
    line-height: 1.95;
    letter-spacing: 0.04em;
    text-align: left;
    padding: 0 0 0;
    margin: 0 0 0;
}
@media (max-width: 767px) {
    .staff_intro .desc {
        font-size: 1.4rem;
    }
}
.staff_intro .desc + .desc {
    margin-top: 3.2rem;
    padding-right: 40rem;
}
@media (max-width: 767px) {
    .staff_intro .desc + .desc {
        padding-right: 0;
    }
}
.staff_intro--bg_01 {
    width: 80.2rem;
    position: absolute;
    top: -60rem;
    left: -36rem;
}
@media (max-width: 767px) {
    .staff_intro--bg_01 {
        display: none;
    }
}
.staff_intro--bg_01 img {
    display: block;
    width: 100%;
}
.staff_intro--bg_02 {
    width: 57.1rem;
    height: 36rem;
    position: absolute;
    top: 22.36rem;
    right: 0rem;
}
@media (max-width: 767px) {
    .staff_intro--bg_02 {
        width: 23.9963rem;
        height: 15.8128rem;
        top: 41.5rem;
    }
}
.staff_intro--bg_02 img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: 0 center;
}

/* スタッフリスト
------------------------------- */
.staff_list {
    padding: 0 0 12rem;
}
.staff_list .base {
    width: 136rem;
}
@media (max-width: 767px) {
    .staff_list .base {
        padding: 0 2.5rem;
    }
}
.staff_list .notes {
    margin: 0 0 1.2rem;
}
@media (max-width: 767px) {
    .staff_list .notes {
        margin: 0 0 1.4rem;
    }
}

.staff_card {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: nowrap;
    gap: 3.2rem;
    border-radius: 0.8rem;
    background: #F5F5F5;
    padding: 3.2rem 9.6rem 3.2rem 3.2rem;
}
@media (max-width: 767px) {
    .staff_card {
        flex-wrap: wrap;
        padding: 1.6rem 2rem;
    }
}
.staff_card + .staff_card {
    margin-top: 4rem;
}
@media (max-width: 767px) {
    .staff_card + .staff_card {
        margin-top: 2.4rem;
    }
}
.staff_card--img {
    flex-shrink: 0;
    width: 31.2rem;
    aspect-ratio: 31.2/36.8;
    border-radius: 0.8rem;
    border: 1px solid #E6E6E6;
    overflow: hidden;
}
@media (max-width: 767px) {
    .staff_card--img {
        width: 10rem;
        aspect-ratio: 10/11.8;
    }
}
.staff_card--img img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.staff_card--item {
    flex-grow: 1;
}
@media (max-width: 767px) {
    .staff_card--item {
        display: flex;
        align-items: center;
        justify-content: space-between;
        flex-wrap: wrap;
    }
}
.staff_card--item .title {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    flex-wrap: nowrap;
    gap: 2.4rem;
    margin: 0.8rem 0;
}
@media (max-width: 767px) {
    .staff_card--item .title {
        width: 100%;
        margin: 1.6rem 0;
    }
}
.staff_card--item .title .accent_ttl {
    flex-shrink: 0;
    min-height: 3.2rem;
    font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
    font-size: 2rem;
    font-weight: 700;
    line-height: 1.55;
    letter-spacing: 0.04em;
    text-align: left;
    padding-left: 4rem;
}
@media (max-width: 767px) {
    .staff_card--item .title .accent_ttl {
        min-height: 2.3rem;
        font-size: 1.5rem;
        padding-left: 2.5rem;
    }
}
.staff_card--item .title .accent_ttl::before {
    width: 3.2rem;
    background-size: 3.2rem auto;
}
@media (max-width: 767px) {
    .staff_card--item .title .accent_ttl::before {
        width: 2.3rem;
        background-size: 1.92rem auto;
    }
}
.staff_card--item .title .border {
    flex-grow: 1;
    display: block;
    width: 100%;
    position: relative;
}
.staff_card--item .title .border::before {
    content: "";
    display: block;
    width: 100%;
    height: 1px;
    background-color: #D9D9D9;
    position: absolute;
    bottom: 0;
    left: 0;
}
.staff_card--item .title .border::after {
    content: "";
    display: block;
    width: 5.2rem;
    height: 1px;
    background: linear-gradient(90deg, #38AEE6 -6.88%, #005296 121%);
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: 1;
}
.staff_card--header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 0.8rem;
    border-radius: 0.8rem;
    background: linear-gradient(90deg, rgba(0, 82, 150, 0.8) 0%, rgba(56, 174, 230, 0.8) 100%);
    backdrop-filter: blur(4px);
    padding: 0.8rem 1.6rem 0.8rem 6.2rem;
    position: relative;
}
@media (max-width: 767px) {
    .staff_card--header {
        align-items: flex-end;
        align-content: flex-end;
        gap: 0.7rem;
        width: 19.2rem;
        padding: 1rem;
    }
}
.staff_card--header .icon {
    width: 3.4rem;
    aspect-ratio: 1/1;
    border-radius: 3.4rem;
    overflow: hidden;
    position: absolute;
    top: 50%;
    left: 1.6rem;
    -webkit-transform: translateY(-50%) translateX(0);
    transform: translateY(-50%) translateX(0);
}
@media (max-width: 767px) {
    .staff_card--header .icon {
        top: 1rem;
        left: 3.4rem;
        -webkit-transform: translateY(0) translateX(0);
        transform: translateY(0) translateX(0);
    }
}
.staff_card--header .icon img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.staff_card--header--item {
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    flex-wrap: nowrap;
    gap: 1.6rem;
}
@media (max-width: 767px) {
    .staff_card--header--item {
        flex-wrap: wrap;
        align-items: flex-end;
        align-content: flex-end;
        gap: 0;
        width: 100%;
    }
}
.staff_card--header--tag {
    flex-grow: 1;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    flex-wrap: wrap;
    gap: 0.4rem;
}
@media (max-width: 767px) {
    .staff_card--header--tag {
        width: 100%;
    }
}
.staff_card--header--tag .tag {
    width: fit-content;
    font-size: 1.2rem;
    font-weight: 500;
    line-height: 1.55;
    letter-spacing: 0.04em;
    border-radius: 0;
    background-color: #F5F5F5;
    margin: 0 0 0;
    padding: 0.4rem 0.8rem;
}
@media (max-width: 767px) {
    .staff_card--header--tag .tag {
        justify-content: flex-start;
        width: 100%;
        height: 1.9rem;
        font-size: 1rem;
        padding: 0.1rem 0.8rem;
    }
}
.staff_card .prof {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    flex-wrap: nowrap;
    gap: 1.6rem;
}
@media (max-width: 767px) {
    .staff_card .prof {
        align-items: flex-end;
        align-content: flex-end;
        gap: 0.8rem;
        width: 100%;
    }
}
.staff_card .prof .title {
    flex-shrink: 0;
    display: block;
    font-family: "Anta", sans-serif;
    font-size: 1.4rem;
    font-weight: 500;
    line-height: 1.55;
    letter-spacing: 0.04em;
    color: #fff;
}
@media (max-width: 767px) {
    .staff_card .prof .title {
        width: 8.1rem;
        font-size: 1.2rem;
        text-align: center;
        white-space: nowrap;
        margin: 0;
        padding-top: 3.4rem;
    }
    .staff_card .prof .title.small {
        font-size: 1.1rem;
        padding-top: 0;
    }
}
.staff_card .prof .inner {
    flex-grow: 1;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    flex-wrap: wrap;
    gap: 0.6rem;
}
@media (max-width: 767px) {
    .staff_card .prof .inner {
        gap: 0.4rem;
        padding-bottom: 0.4rem;
    }
    .staff_card .prof .inner.small {
        padding-bottom: 0;
    }
}
.staff_card .prof .inner .tag {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1rem;
    min-height: 3.4rem;
    font-size: 1.2rem;
    font-weight: 700;
    line-height: 1.55;
    letter-spacing: 0.04em;
    color: #FFF;
    border-radius: 0.4rem;
    background: #13161B;
    padding: 0.4rem 1.2rem 0.4rem 1.2rem;
}
@media (max-width: 767px) {
    .staff_card .prof .inner .tag {
        height: auto;
        min-height: 1.8rem;
        font-size: 1rem;
        padding: 0.1rem 0.4rem 0.2rem 0.4rem;
    }
}
.staff_card--list {
    display: flex;
    align-items: stretch;
    justify-content: flex-start;
    flex-wrap: wrap;
    gap: 1px;
    margin-right: -1px;
}
.staff_card--list--item {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    flex-wrap: wrap;
    width: calc((100% - 1px - 3px) / 4);
    height: 4.4rem;
    font-size: 1.4rem;
    font-weight: 500;
    line-height: 1.55;
    letter-spacing: 0.04em;
    background-color: #fff;
    padding: 0 1.6rem 0;
}
@media (max-width: 767px) {
    .staff_card--list--item {
        width: calc((100% - 1px - 1px) / 2);
        height: 4.3rem;
        font-size: 1.2rem;
        padding: 0.8rem 1rem;
    }
}
.staff_card--list--item.full {
    width: calc(100% - 1px);
}
.staff_card--list--item.large {
    width: calc((100% - 1px - 1px) / 2);
}
@media (max-width: 767px) {
    .staff_card--list--item.large {
        width: calc(100% - 1px);
    }
}

.post-type-archive-staff .pager {
    margin: 6.4rem 0 0;
    padding: 4rem 0 2.4rem;
}
@media (max-width: 767px) {
    .post-type-archive-staff .pager {
        margin: 2.4rem 0 0;
    }
}

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

部品販売

---------------------------------------- */
.parts_sales_header {
    padding: 0 0 8.8rem;
}
@media (max-width: 767px) {
    .parts_sales_header {
        padding: 0 0 4.5rem;
    }
}
.parts_sales_header .base {
    width: 150rem;
}
@media (min-width: 768px) {
    .parts_sales_header .base {
        margin: 0 auto 0 0;
        padding: 0;
    }
}
.parts_sales_header--ttl {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    flex-wrap: nowrap;
    gap: 2.4rem;
    margin: 0 0 3.2rem;
}
@media (max-width: 767px) {
    .parts_sales_header--ttl {
        display: block;
        width: 24rem;
        background-color: #fff;
        padding: 0.8rem 2.5rem 0.8rem 2.5rem;
        margin: 0;
        position: absolute;
        top: 0;
        left: 0;
    }
}
.parts_sales_header--ttl .section_head--eng {
    flex-shrink: 0;
}
@media (max-width: 767px) {
    .parts_sales_header--ttl .section_head--eng {
        margin-bottom: -0.5rem;
    }
}
.parts_sales_header--ttl .section_head--ttl {
    flex-grow: 1;
    font-size: 4.8rem;
    font-weight: 700;
    line-height: 1.55;
    letter-spacing: 0.04em;
    text-align: left;
    padding: 0 0 0;
    margin: 0 0 0;
}
@media (max-width: 767px) {
    .parts_sales_header--ttl .section_head--ttl {
        font-size: 2.6rem;
    }
}
.parts_sales_header--subttl {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    flex-wrap: nowrap;
    gap: 2.4rem;
    margin: 0 0 3.2rem;
}
@media (max-width: 767px) {
    .parts_sales_header--subttl {
        margin: 0 0 2.5rem;
    }
}
.parts_sales_header--subttl .section_head--eng {
    flex-shrink: 0;
}
.parts_sales_header--subttl .section_head--ttl {
    flex-grow: 1;
    font-size: 4.8rem;
    font-weight: 700;
    line-height: 1.55;
    letter-spacing: 0.04em;
    text-align: left;
    padding: 0 0 0;
    margin: 0 0 0;
}
@media (max-width: 767px) {
    .parts_sales_header--subttl .section_head--ttl {
        font-size: 2.6rem;
    }
}
.parts_sales_header--column {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    flex-wrap: wrap;
    position: relative;
}
@media (max-width: 767px) {
    .parts_sales_header--column {
        margin: 0 -3rem;
    }
}
.parts_sales_header--column--img {
    width: 65.5rem;
}
@media (max-width: 767px) {
    .parts_sales_header--column--img {
        width: 100%;
    }
}
.parts_sales_header--column--img img {
    display: block;
    width: 100%;
}
.parts_sales_header--column--item {
    width: 76.5rem;
    padding: 3.2rem 0 0;
}
@media (max-width: 767px) {
    .parts_sales_header--column--item {
        width: 100%;
        padding: 3.7rem 1.4rem 0;
    }
}
@media (max-width: 767px) and (max-width: 767px) {
    .parts_sales_header--column--item .inner {
        margin: 0 -1.4rem;
        overflow-y: scroll;
    }
}
.parts_sales_header--column--item .text_link {
    padding: 1rem 0;
    margin: 3.2rem 3.2rem 0 auto;
}
.parts_sales_header--column .image {
    display: block;
    width: 100%;
}
@media (max-width: 767px) {
    .parts_sales_header--column .image {
        width: auto;
        max-width: none;
        height: 19.8rem;
        margin: 0 0 0 2.6rem;
    }
}

/* 相模コンベヤー工業 / 部品販売
------------------------------- */
.parts_sales_intro {
    padding: 0 0 16rem;
    position: relative;
}
@media (max-width: 767px) {
    .parts_sales_intro {
        padding: 0 0 3.6rem;
    }
}
.parts_sales_intro .base {
    width: 136rem;
    position: relative;
    z-index: 1;
}
.parts_sales_intro .section_head {
    max-width: 110rem;
    margin-bottom: 3.2rem;
}
.parts_sales_intro .desc {
    max-width: 110rem;
    font-size: 1.8rem;
    line-height: 1.95;
}
@media (max-width: 767px) {
    .parts_sales_intro .desc {
        font-size: 1.4rem;
    }
}
.parts_sales_intro .desc a {
    color: #1644FF !important;
    text-decoration: underline;
}
.parts_sales_intro--bg {
    width: 80.2rem;
    position: absolute;
    top: 2.8rem;
    right: -51.2rem;
}
@media (max-width: 767px) {
    .parts_sales_intro--bg {
        display: none;
    }
}
.parts_sales_intro--bg img {
    display: block;
    width: 100%;
}

/* SALES ABOUT
------------------------------- */
.parts_sales_about {
    background-color: #F5F5F5;
    padding: 12rem 0 12rem;
}
@media (max-width: 767px) {
    .parts_sales_about {
        padding: 6.4rem 0 6.4rem;
    }
}
.parts_sales_about .base {
    width: 144rem;
}
.parts_sales_about--column {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    flex-wrap: wrap;
    gap: 12rem;
    background-color: #fff;
    border-top-left-radius: 1.2rem;
}
@media (max-width: 767px) {
    .parts_sales_about--column {
        flex-direction: column-reverse;
        gap: 2.4rem;
        border-top-left-radius: 0;
    }
}
.parts_sales_about--column--item {
    width: 48rem;
    padding: 0 0 0 8rem;
}
@media (max-width: 767px) {
    .parts_sales_about--column--item {
        width: 100%;
        padding: 0 2rem 2.4rem;
    }
}
.parts_sales_about--column--img {
    width: 80rem;
}
@media (max-width: 767px) {
    .parts_sales_about--column--img {
        width: 100%;
        height: 28rem;
    }
}
.parts_sales_about--column--img img {
    display: block;
    width: 100%;
}
@media (max-width: 767px) {
    .parts_sales_about--column--img img {
        height: 100%;
        object-fit: cover;
    }
}

/* SALES PRODUCT
------------------------------- */
.parts_sales_cta--head {
    position: relative;
}
.parts_sales_cta--head--column {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    flex-wrap: wrap;
    gap: 8rem;
    padding: 10rem 12rem;
    position: relative;
    z-index: 2;
}
@media (max-width: 767px) {
    .parts_sales_cta--head--column {
        padding: 6.4rem 3rem;
        gap: 2.4rem;
    }
}
.parts_sales_cta--head--column--item {
    width: 106rem;
    color: #FFF;
    margin: 0;
}
@media (max-width: 767px) {
    .parts_sales_cta--head--column--item {
        width: 100%;
    }
}
.parts_sales_cta--head--column--item .section_head {
    margin: 0;
}
@media (max-width: 767px) {
    .parts_sales_cta--head--column--item .section_head {
        padding-bottom: 0;
    }
    .parts_sales_cta--head--column--item .section_head--item {
        padding-bottom: 2.2rem;
        margin-bottom: 0;
    }
}
.parts_sales_cta--head--column--img {
    width: 18rem;
    aspect-ratio: 1/1;
    border-radius: 18rem;
    background: linear-gradient(180deg, #38AEE6 0%, #005296 100%);
    box-shadow: 0 0.4rem 0.8rem 0 rgba(0, 0, 0, 0.18);
    padding: 0.6rem;
}
@media (max-width: 767px) {
    .parts_sales_cta--head--column--img {
        width: 100%;
        aspect-ratio: auto;
        border-radius: 0.4rem;
        background: none;
        padding: 0;
        overflow: hidden;
    }
}
.parts_sales_cta--head--column--img .desc {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    width: 100%;
    height: 100%;
    border-radius: 18rem;
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 1.95;
    letter-spacing: 0.04em;
    text-align: center;
    background: #fff;
    padding: 0 2.4rem;
    margin: 0 0 0;
}
@media (max-width: 767px) {
    .parts_sales_cta--head--column--img .desc {
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        align-self: stretch;
        font-size: 1.4rem;
        line-height: 1.55;
        color: #FFF;
        backdrop-filter: blur(2px);
        background: rgba(19, 22, 27, 0.7);
        border-radius: 0;
        border: 0.3rem solid;
        border-image: linear-gradient(to bottom, #38AEE6, #005296) 1;
        padding: 1.7rem 1rem;
        overflow: hidden;
    }
}
.parts_sales_cta--head--bg {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
}
.parts_sales_cta--head--bg::before {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.4);
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
}
.parts_sales_cta--head--bg::after {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    background: url(../img/icon/black-triple-squares.svg) 0% 0%/3px 3px repeat;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
}
.parts_sales_cta--head--bg img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.parts_sales_cta--column {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
}
.parts_sales_cta--column--item {
    width: 50%;
}
@media (max-width: 767px) {
    .parts_sales_cta--column--item {
        width: 100%;
    }
}
.parts_sales_cta--column--item .link_card_2 {
    display: block;
    color: #fff !important;
    padding: 8.4rem 8rem 10rem 12rem;
}
@media (max-width: 767px) {
    .parts_sales_cta--column--item .link_card_2 {
        padding: 5.6rem 3rem;
    }
    .parts_sales_cta--column--item .link_card_2--desc {
        margin-right: -0.5em !important;
    }
    .parts_sales_cta--column--item .link_card_2--footer {
        margin: 0.4rem 0 0;
    }
}

/* MIDORIGAOKA CENTER
------------------------------- */
.parts_sales_map {
    padding: 12rem 0;
    background: #F5F5F5;
}
@media (max-width: 767px) {
    .parts_sales_map {
        padding: 6.4rem 0;
    }
}
.parts_sales_map .base {
    width: 144rem;
}
.parts_sales_map--column {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    background-color: #fff;
    border-top-left-radius: 1.2rem;
}
@media (max-width: 767px) {
    .parts_sales_map--column {
        border-top-left-radius: 1.2rem;
        border-top-right-radius: 1.2rem;
    }
}
.parts_sales_map--column--item {
    width: 52rem;
    padding: 0 0 0 8rem;
}
@media (max-width: 767px) {
    .parts_sales_map--column--item {
        width: 100%;
        padding: 2.4rem 2rem 3.2rem 2rem;
    }
}
@media (max-width: 767px) {
    .parts_sales_map--column--item .section_head {
        margin-bottom: 2.4rem;
    }
}
.parts_sales_map--column--item .desc {
    line-height: 1.55;
    margin-bottom: 3.2rem;
}
@media (max-width: 767px) {
    .parts_sales_map--column--item .desc {
        margin-bottom: 2.4rem;
    }
}
.parts_sales_map--column--item .btn_square {
    width: 34rem;
    margin-bottom: 3.2rem;
}
@media (max-width: 767px) {
    .parts_sales_map--column--item .btn_square {
        width: 100%;
    }
}
.parts_sales_map--column--item .text_link {
    justify-content: space-between;
    width: 34rem;
    padding: 1rem 1rem 1rem 1.8rem;
}
@media (max-width: 767px) {
    .parts_sales_map--column--item .text_link {
        width: 100%;
        padding: 1rem 0.4rem 1rem 1.8rem;
    }
}
.parts_sales_map--column--img {
    width: 80rem;
    height: 68rem;
    position: relative;
    overflow: hidden;
}
@media (max-width: 767px) {
    .parts_sales_map--column--img {
        width: 100%;
        height: auto;
        padding-top: 19rem;
    }
}
.parts_sales_map--column--img iframe {
    display: block;
    width: calc(100% + 32rem);
    height: calc(100% + 32rem);
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translateY(-50%) translateX(-50%);
    transform: translateY(-50%) translateX(-50%);
}
@media (max-width: 767px) {
    .parts_sales_map--column--img iframe {
        width: calc(100% + 6rem);
        height: calc(100% + 6rem);
        top: 9.5rem;
    }
}
.parts_sales_map--column--img .desc {
    width: 44rem;
    font-size: 1.4rem;
    line-height: 1.55;
    background-color: #fff;
    margin: 0;
    padding: 1.4rem 1.6rem;
    position: absolute;
    bottom: 0;
    right: 0;
    z-index: 1;
}
@media (max-width: 767px) {
    .parts_sales_map--column--img .desc {
        width: 100%;
        font-size: 1.2rem;
        position: relative;
        padding: 2.7rem 2.4rem 2.4rem;
    }
}
.parts_sales_map--column--img .desc strong {
    display: block;
    width: 100%;
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 1.55;
    letter-spacing: 0.04em;
    padding: 0 0 1.4rem;
    margin: 0 0 1.2rem;
    position: relative;
}
@media (max-width: 767px) {
    .parts_sales_map--column--img .desc strong {
        font-size: 1.4rem;
    }
}
.parts_sales_map--column--img .desc strong::before {
    content: "";
    display: block;
    width: 100%;
    height: 1px;
    background-color: #D9D9D9;
    position: absolute;
    bottom: 0;
    left: 0;
}
.parts_sales_map--column--img .desc strong::after {
    content: "";
    display: block;
    width: 5.2rem;
    height: 1px;
    background: linear-gradient(90deg, #38AEE6 -6.88%, #005296 121%);
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: 1;
}
.parts_sales_map--column--img .desc .title {
    display: block;
    width: 100%;
    font-size: 1.4rem;
    font-weight: 700;
    line-height: 1.55;
    letter-spacing: 0.04em;
    margin: 1.2rem 0 0;
}
@media (max-width: 767px) {
    .parts_sales_map--column--img .desc .title {
        font-size: 1.2rem;
    }
}

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

コンベアページ

---------------------------------------- */
.parts_sales_conveyor_header .base {
    min-width: 40rem !important;
    padding: 2rem 0 2rem 9rem !important;
}
@media (max-width: 767px) {
    .parts_sales_conveyor_header .base {
        min-width: 24rem !important;
        padding: 0.8rem 4rem 0.8rem 2.5rem !important;
    }
}
.parts_sales_conveyor_header .page_header--inner {
    height: 58rem !important;
    padding: 0;
}
@media (max-width: 767px) {
    .parts_sales_conveyor_header .page_header--inner {
        display: block !important;
    }
}
.parts_sales_conveyor_header--column {
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
    flex-wrap: nowrap;
    gap: 8rem;
    width: 136.8rem;
    padding: 0 1.2rem 0rem 2rem;
    margin: 0 auto;
    position: relative;
    z-index: 2;
}
@media (max-width: 767px) {
    .parts_sales_conveyor_header--column {
        display: block;
        width: 100%;
        padding: 12rem 3rem 8rem 3rem;
    }
}
.parts_sales_conveyor_header--column--item {
    flex-shrink: 0;
    width: 62rem;
}
@media (max-width: 767px) {
    .parts_sales_conveyor_header--column--item {
        width: 100%;
    }
}
.parts_sales_conveyor_header--column--item .desc {
    font-size: 3.2rem;
    font-weight: 700;
    line-height: 1.95;
    letter-spacing: 0.04em;
    text-align: left;
    color: #FFF;
    padding: 0 0 3.2rem;
    margin: 0 0 0;
    position: relative;
}
@media (max-width: 767px) {
    .parts_sales_conveyor_header--column--item .desc {
        font-size: 2.2rem;
        padding: 0 0 2.4rem;
    }
}
.parts_sales_conveyor_header--column--item .desc::before {
    content: "";
    display: block;
    width: 100%;
    height: 1px;
    background-color: #D9D9D9;
    position: absolute;
    bottom: 0;
    left: 0;
}
.parts_sales_conveyor_header--column--item .desc::after {
    content: "";
    display: block;
    width: 5.2rem;
    height: 1px;
    background: linear-gradient(90deg, #38AEE6 -6.88%, #005296 121%);
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: 1;
}
.parts_sales_conveyor_header--column--img {
    flex-grow: 1;
}
@media (max-width: 767px) {
    .parts_sales_conveyor_header--column--img {
        width: auto;
        margin: 4rem -3rem 0;
    }
}
.parts_sales_conveyor_header--column--img img {
    display: block;
    width: 100%;
    position: relative;
    top: -0.6rem;
}
@media (max-width: 767px) {
    .parts_sales_conveyor_header--column--img img {
        width: 38.9rem;
        margin: -0.3rem auto 0;
        position: relative;
        top: 0;
    }
}

/* CONVEYER ABOUT
------------------------------- */
.parts_sales_conveyor_intro {
    padding: 10rem 0 12rem;
    margin-top: -20rem;
    position: relative;
    z-index: 1;
}
@media (max-width: 767px) {
    .parts_sales_conveyor_intro {
        padding: 10rem 0 4rem;
        margin-top: -16rem;
    }
}
.parts_sales_conveyor_intro .base {
    width: 144rem;
}
.parts_sales_conveyor_intro--column {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    flex-wrap: wrap;
    gap: 8rem;
    background-color: #fff;
}
@media (max-width: 767px) {
    .parts_sales_conveyor_intro--column {
        gap: 1.9rem;
        margin: 0 -0.5rem;
    }
}
.parts_sales_conveyor_intro--column img {
    width: 80rem;
}
@media (max-width: 767px) {
    .parts_sales_conveyor_intro--column img {
        width: 100%;
    }
}
.parts_sales_conveyor_intro--column img img {
    display: block;
    width: 100%;
}
.parts_sales_conveyor_intro--column--item {
    width: 44rem;
}
@media (max-width: 767px) {
    .parts_sales_conveyor_intro--column--item {
        width: 100%;
        padding: 0 1rem;
    }
    .parts_sales_conveyor_intro--column--item .desc {
        text-align: left;
        margin-right: -1em;
    }
}

/* オンライン上でもお買い求めいただけます
------------------------------- */
.parts_sales_conveyor_commentary {
    padding: 8rem 0;
}
@media (max-width: 767px) {
    .parts_sales_conveyor_commentary {
        padding: 4rem 0 1.6rem;
    }
}
.parts_sales_conveyor_commentary .base {
    width: 148rem;
}
.parts_sales_conveyor_commentary--column {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    padding: 0 0 0 8rem;
}
@media (max-width: 767px) {
    .parts_sales_conveyor_commentary--column {
        flex-direction: column-reverse;
        gap: 1.6rem;
        padding: 0;
        margin: 0 -0.5rem;
    }
}
.parts_sales_conveyor_commentary--column--item {
    width: 48rem;
}
@media (max-width: 767px) {
    .parts_sales_conveyor_commentary--column--item {
        width: 100%;
        padding: 0 1rem;
    }
}
@media (max-width: 767px) {
    .parts_sales_conveyor_commentary--column--item .section_head {
        margin-bottom: 2.4rem;
    }
}
.parts_sales_conveyor_commentary--column--item .desc a {
    color: #1644FF;
    text-decoration: underline;
}
.parts_sales_conveyor_commentary--column--img {
    width: 80rem;
}
@media (max-width: 767px) {
    .parts_sales_conveyor_commentary--column--img {
        width: 100%;
    }
}
.parts_sales_conveyor_commentary--column--img img {
    display: block;
    width: 100%;
}

/* CONVEYER / FUTURE
------------------------------- */
.parts_sales_conveyor_future {
    padding: 8rem 0 12rem;
}
@media (max-width: 767px) {
    .parts_sales_conveyor_future {
        padding: 5.9rem 0 6.4rem;
    }
}
.parts_sales_conveyor_future .base {
    width: 131.2rem;
}
.parts_sales_conveyor_future .section_head.small {
    margin-bottom: 3.8rem;
}
@media (max-width: 767px) {
    .parts_sales_conveyor_future .section_head.small {
        margin-bottom: 3.2rem;
    }
    .parts_sales_conveyor_future .section_head.small .section_head--ttl {
        white-space: nowrap;
    }
}
.parts_sales_conveyor_future--column {
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
    flex-wrap: wrap;
    gap: 4.8rem;
    padding: 0 0 0 1.8rem;
}
@media (max-width: 767px) {
    .parts_sales_conveyor_future--column {
        gap: 4rem;
        padding: 0;
    }
}
.parts_sales_conveyor_future--column--item {
    width: 38rem;
}
@media (max-width: 767px) {
    .parts_sales_conveyor_future--column--item {
        width: 100%;
    }
}
.parts_sales_conveyor_future--column--item .image {
    aspect-ratio: 38/24;
    margin: 0 0 2.4rem;
}
@media (max-width: 767px) {
    .parts_sales_conveyor_future--column--item .image {
        aspect-ratio: 33/20.2;
    }
}
.parts_sales_conveyor_future--column--item .image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.parts_sales_conveyor_future--column--item .title {
    font-size: 2.2rem;
    font-weight: 700;
    line-height: 1.55;
    letter-spacing: 0.04em;
    text-align: left;
    padding: 0 0 2.4rem;
    margin: 0 0 1.2rem;
    position: relative;
}
@media (max-width: 767px) {
    .parts_sales_conveyor_future--column--item .title {
        font-size: 1.6rem;
        padding: 0 0 1.6rem;
        margin: 0 0 1.2rem;
    }
}
.parts_sales_conveyor_future--column--item .title::before {
    content: "";
    display: block;
    width: 100%;
    height: 1px;
    background-color: #D9D9D9;
    position: absolute;
    bottom: 0;
    left: 0;
}
.parts_sales_conveyor_future--column--item .title::after {
    content: "";
    display: block;
    width: 5.2rem;
    height: 1px;
    background: linear-gradient(90deg, #38AEE6 -6.88%, #005296 121%);
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: 1;
}

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

コンベア在庫ページ

---------------------------------------- */
.page-template-page-parts-sales-stock .page_header--inner .base {
    min-width: 48rem !important;
}
@media (max-width: 767px) {
    .page-template-page-parts-sales-stock .page_header--inner .base {
        min-width: 24rem !important;
    }
}
.page-template-page-parts-sales-stock .parts_sales_conveyor_header--column {
    gap: 7.2rem;
    margin: 2rem auto 0;
}
@media (max-width: 767px) {
    .page-template-page-parts-sales-stock .parts_sales_conveyor_header--column {
        padding: 12rem 3rem 8rem 3rem;
        margin-top: 0;
    }
}
.page-template-page-parts-sales-stock .parts_sales_conveyor_header--column--item .desc {
    line-height: 1.55;
}
@media (max-width: 767px) {
    .page-template-page-parts-sales-stock .parts_sales_conveyor_header--column--item .desc {
        line-height: 1.95;
    }
}

/* コンベアの各種在庫リスト
------------------------------- */
.parts_sales_stock_list {
    padding: 10rem 0 12rem;
    margin-top: -20rem;
    position: relative;
    z-index: 1;
}
@media (max-width: 767px) {
    .parts_sales_stock_list {
        padding: 10rem 0 8rem;
    }
}
.parts_sales_stock_list .base {
    width: 144rem;
}
.parts_sales_stock_list--header {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    flex-wrap: wrap;
    gap: 9.6rem;
    background-color: #fff;
    margin: 0 0 4rem;
}
@media (max-width: 767px) {
    .parts_sales_stock_list--header {
        gap: 4.1rem;
        margin: 0 0 2.4rem;
    }
}
.parts_sales_stock_list--header--img {
    width: 70rem;
}
@media (max-width: 767px) {
    .parts_sales_stock_list--header--img {
        width: 100%;
        height: 20rem;
    }
}
.parts_sales_stock_list--header--img img {
    display: block;
    width: 100%;
}
@media (max-width: 767px) {
    .parts_sales_stock_list--header--img img {
        height: 100%;
        object-fit: cover;
    }
}
.parts_sales_stock_list--header--item {
    width: 52.4rem;
    padding: 4rem 0 0;
}
@media (max-width: 767px) {
    .parts_sales_stock_list--header--item {
        width: 100%;
        padding: 0;
    }
}
.parts_sales_stock_list--header--item .title {
    font-size: 3.2rem;
    font-weight: 700;
    line-height: 1.55;
    letter-spacing: 0.04em;
    text-align: left;
    padding: 0 0 3.2rem;
    margin: 0 0 0;
    position: relative;
}
@media (max-width: 767px) {
    .parts_sales_stock_list--header--item .title {
        font-size: 2.2rem;
        padding: 0 0 2.4rem 1.5rem;
    }
}
.parts_sales_stock_list--header--item .title::before {
    content: "";
    display: block;
    width: 100%;
    height: 1px;
    background-color: #D9D9D9;
    position: absolute;
    bottom: 0;
    left: 0;
}
.parts_sales_stock_list--header--item .title::after {
    content: "";
    display: block;
    width: 5.2rem;
    height: 1px;
    background: linear-gradient(90deg, #38AEE6 -6.88%, #005296 121%);
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: 1;
}
.parts_sales_stock_list--column {
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
    flex-wrap: wrap;
    width: 106rem;
    margin: 0 auto;
}
@media (max-width: 767px) {
    .parts_sales_stock_list--column {
        width: 100%;
    }
}
.parts_sales_stock_list--column--item {
    width: 50%;
    border-bottom: 1px solid #D9D9D9;
    padding: 1.55rem 0;
}
@media (max-width: 767px) {
    .parts_sales_stock_list--column--item {
        width: 100%;
        padding: 0;
    }
}
@media (min-width: 768px) {
    .parts_sales_stock_list--column--item:nth-child(even) {
        border-left: 1px solid #D9D9D9;
    }
}
@media (min-width: 768px) {
    .parts_sales_stock_list--column--item:nth-child(even) a {
        margin: 0 0 0 auto;
    }
}
.parts_sales_stock_list--column--item a {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    width: 46rem;
    height: 6.8rem;
}
@media (max-width: 767px) {
    .parts_sales_stock_list--column--item a {
        width: 100%;
        height: 7rem;
        padding: 0 1.4rem 0 1.5rem;
    }
}
.parts_sales_stock_list--column--item a .title {
    display: block;
    font-size: 1.4rem;
    font-weight: 700;
    line-height: 1.55;
    letter-spacing: 0.04em;
    text-align: left;
    padding: 0 0 0.7rem 0.8rem;
    margin: 0 auto 0 0;
    border-bottom: 1px solid #13161B;
}
@media (max-width: 767px) {
    .parts_sales_stock_list--column--item a .title {
        font-size: 1.2rem;
        border-bottom: 0;
        padding: 0;
        margin: 0;
    }
}
.parts_sales_stock_list--column--item a .icon {
    display: block;
    width: 5.2rem;
    position: relative;
    right: -0.2rem;
}
@media (max-width: 767px) {
    .parts_sales_stock_list--column--item a .icon {
        width: 3.4rem;
        right: 0;
    }
}
.parts_sales_stock_list--column--item a .icon img {
    display: block;
    width: 100%;
}

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

プライバシーポリシーページ

---------------------------------------- */
.privacy_section {
    padding: 8.8rem 0 12rem;
}
@media (max-width: 767px) {
    .privacy_section {
        padding: 6.4rem 0 9.6rem;
    }
}

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

採用応募

---------------------------------------- */
.form_section {
    padding: 8.8rem 0 16.8rem;
}
@media (max-width: 767px) {
    .form_section {
        padding: 5.9rem 0 8.8rem;
    }
}
.form_section .base {
    width: 114.8rem;
}
.form_section--head {
    margin: 0 0 4.8rem;
}
.form_section--head .desc {
    margin: 0 0 4.8rem;
}
@media (max-width: 767px) {
    .form_section--head .desc {
        margin: 0 0 4.6rem;
    }
}
.form_section .contact_section {
    max-width: 108rem;
}

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

お問い合わせ

---------------------------------------- */
@media (max-width: 767px) {
    .page-template-page-contact .form_section {
        padding: 4.1rem 0 8.8rem;
    }
}
.form_section .caution {
    font-size: 2rem;
    font-weight: 500;
    line-height: 1.55;
    letter-spacing: 0.04em;
    text-align: left;
    color: #E62629;
    padding: 0 0 0;
    margin: 0 0 1.6rem;
}
@media (max-width: 767px) {
    .form_section .caution {
        font-size: 1.8rem;
    }
}

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

3d-showroom

---------------------------------------- */
.showroom_header {
    height: 64rem;
    position: relative;
}
@media (max-width: 767px) {
    .showroom_header {
        height: 56rem;
        padding: 3.2rem 0 4.8rem;
    }
}
.showroom_header .base {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    flex-wrap: wrap;
    width: 148rem;
    height: 100%;
    color: #fff;
    position: relative;
    z-index: 2;
}
@media (max-width: 767px) {
    .showroom_header .base {
        display: block;
        width: 100%;
        padding: 0 2.5rem;
    }
}
.showroom_header--ttl {
    width: 100%;
    padding: 0 0 4rem;
}
.showroom_header--ttl .title {
    font-size: 4rem;
    font-weight: 700;
    line-height: 1.55;
    letter-spacing: 0.04em;
    text-align: left;
    padding: 0 0 0;
    margin: 0 0 0;
}
@media (max-width: 767px) {
    .showroom_header--ttl .title {
        font-size: 2.6rem;
    }
}
.showroom_header .text_link {
    position: absolute;
    bottom: 5rem;
    right: 4rem;
}
@media (max-width: 767px) {
    .showroom_header .text_link {
        bottom: -2.3rem;
        right: 2rem;
    }
    .showroom_header .text_link .btn_oval_arrow {
        width: 3.6rem;
    }
}
.showroom_header .text_link--ttl::after {
    border-bottom-color: #fff;
}
.showroom_header--bg {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
}
.showroom_header--bg::before {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.4);
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
}
.showroom_header--bg::after {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    background: url(../img/icon/black-triple-squares.svg) 0% 0%/3px 3px repeat;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
}
.showroom_header--bg img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* 3D SHOW ROOM ABOUT
------------------------------- */
.showroom_intro {
    min-height: 78.9rem;
    color: #fff;
    padding: 16rem 0 12rem;
    position: relative;
}
@media (max-width: 767px) {
    .showroom_intro {
        min-height: 0;
        padding: 6.4rem 0 6.8rem;
    }
}
.showroom_intro .base {
    width: 120.8rem;
    height: 100%;
    position: relative;
    z-index: 1;
}
.showroom_intro--column {
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
    flex-wrap: nowrap;
}
@media (max-width: 767px) {
    .showroom_intro--column {
        flex-wrap: wrap;
    }
}
.showroom_intro--column--item {
    flex-grow: 0;
}
@media (max-width: 767px) {
    .showroom_intro--column--item {
        width: 100%;
    }
}
.showroom_intro--column--item .desc {
    padding: 0 4rem 0 0;
    margin: 5rem 0 0;
}
@media (max-width: 767px) {
    .showroom_intro--column--item .desc {
        padding: 0 0 4rem;
        margin: 3.2rem 0 0;
    }
}
.showroom_intro--column--img {
    flex-shrink: 0;
    width: 60.8rem;
    padding: 1.45rem 0 0;
}
@media (max-width: 767px) {
    .showroom_intro--column--img {
        width: 100%;
        padding: 0;
    }
}
.showroom_intro--column--img img {
    display: block;
    width: 62.4rem;
    max-width: none;
    margin: -0.4rem 0rem 0rem -0.8rem;
}
@media (max-width: 767px) {
    .showroom_intro--column--img img {
        width: 36rem;
        margin: -0.5rem 0rem 0rem -1.5rem;
    }
}
.showroom_intro--bg {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
}
.showroom_intro--bg img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
@media (max-width: 767px) {
    .showroom_intro--bg img {
        object-position: center 72%;
    }
}

/* showroom_block
------------------------------- */
.showroom_block {
    padding: 12rem 0;
    background-color: #13161B;
}
@media (max-width: 767px) {
    .showroom_block {
        padding: 4rem 0;
    }
}
.showroom_block:nth-child(even) {
    background-color: #292D32;
}
.showroom_block .base {
    width: 145rem;
}
@media (max-width: 767px) {
    .showroom_block .base {
        padding: 0 1rem;
    }
}
.showroom_block--column {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: nowrap;
    gap: 8rem;
}
@media (max-width: 767px) {
    .showroom_block--column {
        flex-wrap: wrap;
        gap: 4rem;
    }
}
.showroom_block--column--img {
    flex-shrink: 0;
    width: 77rem;
    position: relative;
}
@media (max-width: 767px) {
    .showroom_block--column--img {
        width: 100%;
    }
}
.showroom_block--column--item {
    flex-grow: 1;
    color: #fff;
    padding: 0 1.6rem 0 0;
}
@media (max-width: 767px) {
    .showroom_block--column--item {
        width: 100%;
        padding: 0 1.5rem;
    }
}
.showroom_block--column--item .title {
    font-size: 3.2rem;
    font-weight: 700;
    line-height: 1.95;
    letter-spacing: 0.04em;
    text-align: left;
    padding: 0 0 0;
    margin: 0 0 0;
}
@media (max-width: 767px) {
    .showroom_block--column--item .title {
        font-size: 2.2rem;
    }
}
.showroom_block--column--item .text_link {
    padding: 1rem 0;
    margin: 12rem 0 0 auto;
}
@media (max-width: 767px) {
    .showroom_block--column--item .text_link {
        margin: 2.4rem 0 0 auto;
    }
}
.showroom_block--column--item .text_link--ttl {
    border-color: #fff;
}
.showroom_block--column--item .section_head--eng {
    height: auto;
    min-height: 4.4rem;
}
@media (max-width: 767px) {
    .showroom_block--column--item .section_head--eng {
        min-height: 3.3rem;
    }
}
.showroom_block--column--item .section_head--eng .accent_ttl {
    line-height: 1.2;
}

.showroom_card {
    padding: 5rem 6rem;
    position: relative;
}
@media (max-width: 767px) {
    .showroom_card {
        padding: 1.35rem 1.25rem;
    }
}
.showroom_card--media {
    aspect-ratio: 65/45;
    position: relative;
}
.showroom_card--media .image {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    -webkit-transition: 0.4s;
    transition: 0.4s;
}
.showroom_card--media::before {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.4);
    position: absolute;
    top: 0;
    left: 0;
    z-index: 2;
    -webkit-transition: 0.4s;
    transition: 0.4s;
}
.showroom_card--media::after {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    background: url(../img/icon/black-triple-squares.svg) 0% 0%/3px 3px repeat;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 2;
    -webkit-transition: 0.4s;
    transition: 0.4s;
}

.deco_frame {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.deco_frame span {
    position: absolute;
    width: 10rem;
    aspect-ratio: 10/8;
    border-color: #666;
}
@media (max-width: 767px) {
    .deco_frame span {
        width: 4.5454rem;
    }
}
.deco_frame span:nth-child(1) {
    top: 0;
    left: 0;
    border-top: 1px solid #666;
    border-left: 1px solid #666;
}
.deco_frame span:nth-child(2) {
    top: 0;
    right: 0;
    border-top: 1px solid #666;
    border-right: 1px solid #666;
}
.deco_frame span:nth-child(3) {
    bottom: 0;
    left: 0;
    border-bottom: 1px solid #666;
    border-left: 1px solid #666;
}
.deco_frame span:nth-child(4) {
    bottom: 0;
    right: 0;
    border-bottom: 1px solid #666;
    border-right: 1px solid #666;
}

.showroom_block .motion_on.is-active .showroom_card .image {
    opacity: 0;
    pointer-events: none;
}
.showroom_block .motion_on.is-active .showroom_card--media::after, .showroom_block .motion_on.is-active .showroom_card--media::before {
    opacity: 0;
}

.showroom_media {
    width: 100%;
    height: 100%;
    position: relative;
}
.showroom_media--contents {
    width: 100%;
    height: 100%;
}
.showroom_media--eye {
    display: block;
    width: 100%;
}
.showroom_media--item {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.js_modal_block {
    display: none;
}

.showroom_modal {
    width: 100%;
    height: 100dvh;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 2000;
}
.showroom_modal--inner {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    width: 100%;
    height: 100dvh;
    color: #FFF;
    background-color: rgba(0, 0, 0, 0.8);
    padding: 8rem 0 0;
    overflow-y: scroll;
    -ms-overflow-style: none;
    scrollbar-width: none;
}
.showroom_modal--inner::-webkit-scrollbar {
    display: none;
}
.showroom_modal .base {
    width: 106.4rem;
    margin-bottom: 8rem;
    padding: 0 2rem;
    position: relative;
}
@media (max-width: 767px) {
    .showroom_modal .base {
        padding: 0 3rem;
    }
}
.showroom_modal .showroom_modal_close {
    width: 8.8rem;
    position: absolute;
    top: 0;
    right: 0;
    -webkit-transform: translateY(-2.9rem) translateX(6.5rem);
    transform: translateY(-2.9rem) translateX(6.5rem);
    cursor: pointer;
}
@media (min-width: 768px) {
    .showroom_modal .showroom_modal_close {
        -webkit-transition: 0.4s;
        transition: 0.4s;
    }
    .showroom_modal .showroom_modal_close:hover {
        opacity: 0.7;
    }
}
@media (max-width: 767px) {
    .showroom_modal .showroom_modal_close {
        position: relative;
        -webkit-transform: translateY(0) translateX(26.9rem);
        transform: translateY(0) translateX(26.9rem);
    }
}
.showroom_modal .showroom_modal_close img {
    display: block;
    width: 100%;
}
.showroom_modal .desc {
    padding: 1.2rem 0.8rem;
}

.showroom_slide {
    aspect-ratio: 102.4/53.4;
    margin: 0;
    overflow: hidden;
    margin-bottom: 1rem;
}
@media (max-width: 767px) {
    .showroom_slide {
        aspect-ratio: auto;
        margin-bottom: 0;
    }
}
.showroom_slide--inner {
    padding: 0 1rem 0 0;
}
.showroom_slide--card {
    width: 102.4rem;
    aspect-ratio: 102.4/53.4;
}
@media (max-width: 767px) {
    .showroom_slide--card {
        width: 33rem;
        aspect-ratio: 33/17.2;
    }
}
.showroom_slide--card .media {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    width: 100%;
    height: 100%;
}
.showroom_slide--card .media .image {
    display: block;
    width: auto;
    height: auto;
    max-width: 100%;
    max-height: 100%;
}
.showroom_slide--card .media .showroom_media--item {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
@media (max-width: 767px) {
    .showroom_slide .slick-slide > div {
        display: block;
        height: 17.2rem;
    }
}
@media (max-width: 767px) {
    .showroom_slide .slick-dots {
        display: flex;
        align-items: flex-start;
        justify-content: space-between;
        flex-wrap: wrap;
        gap: 0.4rem 0;
        margin: 0.4rem 0 0;
    }
    .showroom_slide .slick-dots > li {
        width: calc((100% - 0.4rem) / 2);
        aspect-ratio: 16.3/8.4;
        background-color: #000;
    }
    .showroom_slide .slick-dots > li img {
        display: block;
        width: 100%;
        height: 100%;
        object-fit: cover;
        -webkit-transition: 0.4s;
        transition: 0.4s;
        opacity: 0.4;
    }
    .showroom_slide .slick-dots > li.slick-active img {
        opacity: 1;
    }
}

.showroom_slide_nav--inner {
    padding: 0 0.8rem 0 0;
}
.showroom_slide_nav--card {
    width: 21.4rem;
    aspect-ratio: 21.4/11.1;
    background-color: #000;
}
@media (min-width: 768px) {
    .showroom_slide_nav--card {
        cursor: pointer;
    }
}
.showroom_slide_nav--card .media {
    display: block;
    width: 100%;
    height: 100%;
    -webkit-transition: 0.4s;
    transition: 0.4s;
    opacity: 0.4;
}
.showroom_slide_nav--card .media .showroom_media--item {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.showroom_slide_nav--card .media .image {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.showroom_slide_nav--card .media .movie_thumb {
    width: 100%;
    height: 100%;
    position: relative;
}
.showroom_slide_nav--card .media .movie_thumb::before {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    background: transparent url(../img/icon/play_btn.svg) no-repeat center/4.8rem auto;
    position: absolute;
    top: 0;
    left: 0;
}
@media (max-width: 767px) {
    .showroom_slide_nav--card .media .movie_thumb::before {
        background-size: 3.2rem auto;
    }
}
.showroom_slide_nav .slick-active .media {
    opacity: 1;
}
@media (max-width: 767px) {
    .showroom_slide_nav .slick-track {
        display: flex;
        align-items: flex-start;
        justify-content: space-between;
        flex-wrap: wrap;
        gap: 0.4rem 0;
        width: 100% !important;
        padding: 0.4rem 0 0;
        transform: translate3d(0px, 0px, 0px) !important;
    }
    .showroom_slide_nav .slick-track::before {
        display: none;
    }
    .showroom_slide_nav .slick-track .slick-slide {
        width: calc((100% - 0.4rem) / 2);
        float: none;
        margin: 0;
        padding: 0;
    }
    .showroom_slide_nav .slick-track .slick-slide .showroom_slide_nav--inner {
        display: block !important;
        width: 100%;
        padding: 0;
    }
    .showroom_slide_nav .slick-track .slick-slide .showroom_slide_nav--inner .showroom_slide_nav--card {
        width: 100%;
        aspect-ratio: 16.3/8.4;
    }
}

.youtube_block {
    width: 100%;
    height: 100%;
    position: relative;
}
.youtube_block .youtube_thumb {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    -webkit-transition: 0.6s;
    transition: 0.6s;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
}
.youtube_block .youtube_frame {
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 0;
}

.slick-active .youtube_thumb {
    -webkit-transition: 0.8s 2.4s;
    transition: 0.8s 2.4s;
    opacity: 0;
    pointer-events: none;
}

.video_block {
    width: 100%;
    height: 100%;
}
.video_block .video_frame {
    width: 100%;
    height: 100%;
}

.post-type-archive-3d-showroom .pager {
    padding: 4rem 0;
    margin: 0;
    border-top: 0;
}

.showroom_modal_open #container {
    position: relative;
    z-index: 2000;
}
/*# sourceMappingURL=_maps/style.css.map */
