@charset "UTF-8";
/* =====================================
 * 変数設定
 * ================================== */
/* =====================================
 * カラー変数
 * ================================== */
/*

--c-〇〇〇-darker:標準カラーよりやや暗め;
--c-〇〇〇-dark:標準カラーより少し暗め;
--c-〇〇〇:標準カラー;
--c-〇〇〇-lighter:標準カラーより少し薄め;
--c-〇〇〇-light:標準カラーよりやや薄め;

↓

--c-blk-darker:#000;
--c-blk-dark:#111;
--c-blk:#333;
--c-blk-lighter:#555;
--c-blk-light:#777;

*/
:root {
    --c-error:#FF0000;
    --c-mark:#fff9b1;
    --c-error-light:#ffe5e5;
    --c-mask:rgba(0, 0, 0, 0.64);
    --c-mask-light:rgba(0, 0, 0, 0.2);
    --c-wht:#ffffff;
    --c-wht-light:rgba(255, 255, 255, 0.5);
    --c-blk:#0E2B36;
    --c-pri-dark:#09A7AD;
    --c-pri:#07B2B9;
    --c-pri-light:#EBF9F9;
    --c-sec:#216B88;
    --c-third:#78DE94;
    --c-gra:linear-gradient(90deg, #216B88 0%, #07B2B9 50%, #90DCA5 100%);
    --c-gra02:linear-gradient(0deg, #216B88 0%, #07B2B9 50%, #90DCA5 100%);
    --c-gry-darker:#999999;
    --c-gry-dark:#ccc;
    --c-gry:#DDDCDC;
    --c-gry-light:#F7F7F7;
    --c-shadow:0 0 1.25rem rgba(7, 179, 185, 0.1);
}

/* =====================================
 * メディアクエリ
 * ================================== */
/* 
html5doctor.com Reset Stylesheet
v1.6.1
Last Updated: 2010-09-17
Author: Richard Clark - http://richclarkdesign.com 
Twitter: @rich_clark
*/
html,
body,
div,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
abbr,
address,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
samp,
small,
strong,
sub,
sup,
var,
b,
i,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section,
summary,
time,
mark,
audio,
video {
    margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
    vertical-align: baseline;
    background: transparent;
    word-wrap: break-word;
}

html {
    scroll-behavior: smooth;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
    display: block;
}

nav ul {
    list-style: none;
}

blockquote,
q {
    quotes: none;
}

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

a {
    margin: 0;
    padding: 0;
    font-size: 100%;
    vertical-align: baseline;
    background: transparent;
    word-break: break-all;
}

/* change colours to suit your needs */
ins {
    background-color: #ff9;
    color: #000;
    text-decoration: none;
}

/* change colours to suit your needs */
mark {
    background-color: #ff9;
    color: #000;
    font-style: italic;
    font-weight: bold;
}

del {
    text-decoration: line-through;
}

abbr[title],
dfn[title] {
    border-bottom: 1px dotted;
    cursor: help;
}

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

/* change border colour to suit your needs */
hr {
    display: block;
    height: 1px;
    border: 0;
    border-top: 1px solid #cccccc;
    margin: 1em 0;
    padding: 0;
}

input,
select {
    vertical-align: middle;
}

*,
*::before,
*::after {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
}

.clearfix::after {
    content: "";
    display: block;
    clear: both;
}

img {
    max-width: 100%;
    /*最大横幅制御*/
    height: auto;
    /*縦長比維持*/
    vertical-align: bottom;
    /*画像下部の謎の余白をなくす*/
    line-height: 1;
    /*ブラウザによって有効と無効な場合がありますが、一応入れておく*/
    border: 0;
    /*ブラウザによって有効と無効な場合がありますが、一応入れておく*/
}

/* レスポンシブ表示 */
@media only screen and (min-width: 768px) {
    .pc-none {
        display: none !important;
    }
}
@media only screen and (max-width: 767px) {
    .sp-none {
        display: none !important;
    }
}
/* aリンク PCでクリック非表示 */
@media (min-width: 768px) {
    a[href*="tel:"] {
        pointer-events: none;
        cursor: default;
        text-decoration: none;
    }
}
/* =====================================
 * ベース設定
 * ================================== */
html {
    height: 100%;
    font-size: 87.5%;
}
@media (min-width: 960px) {
    html {
        font-size: 100%;
    }
}

html:has(#wpadminbar) {
    margin-top: 0 !important;
}

#wpadminbar[id] {
    opacity: 0.5;
}

#wpadminbar[id]:hover {
    opacity: 1;
}

body {
    position: relative;
    -webkit-text-size-adjust: 100%;
    -moz-text-size-adjust: 100%;
     -ms-text-size-adjust: 100%;
         text-size-adjust: 100%;
    overflow-wrap: break-word;
    word-wrap: break-word;
    line-height: 1.75;
    text-align: left;
    color: var(--c-blk);
    font-weight: normal;
    font-size: 1rem;
    font-family: "Jost", "Helvetica Neue", "Helvetica", "Zen Kaku Gothic New", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Arial", "Yu Gothic", "Meiryo", sans-serif;
    width: 100%;
    overflow-x: hidden;
}
body.is-loading * {
    -webkit-transition: none !important;
    transition: none !important;
}
body.-pri {
    background-color: var(--c-pri-light);
}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-size: 100%;
    font-weight: normal;
}

a:not([class]) {
    color: var(--c-pri);
    text-decoration: underline;
}
@media (min-width: 960px) {
    a:not([class]):hover {
        text-decoration: none;
    }
}
a:not([class])[href^="#"], a:not([class])[data-type=URL] {
    color: var(--c-pri);
}

ul[class],
ol[class] {
    list-style: none;
}

strong,
span {
    font-size: 100%;
}

strong {
    font-weight: bold;
}

iframe {
    display: block;
    max-width: 100%;
}

cite {
    font-style: normal;
}

input,
textarea,
select {
    border-radius: 0;
    outline: none;
    font-family: inherit;
    font-size: inherit;
    color: inherit;
    padding: 0;
    margin: 0;
    max-width: 100%;
}

textarea,
select {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

input[type=tel],
input[type=email],
input[type=number],
select,
input[type=text],
textarea {
    display: block;
}
input[type=tel]:not([size]),
input[type=email]:not([size]),
input[type=number]:not([size]),
select:not([size]),
input[type=text]:not([size]),
textarea:not([size]) {
    width: 100%;
}

input[type=submit],
button {
    line-height: inherit;
    border-radius: 0;
    background: none;
    border: none;
    outline: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    padding: 0;
    margin: 0;
    font-size: inherit;
    font-family: inherit;
    color: inherit;
}
input[type=submit]:hover,
button:hover {
    cursor: pointer;
}

label {
    cursor: pointer;
}

::-webkit-input-placeholder {
    /* WebKit, Blink, Edge */
    color: var(--c-gry);
}

:-ms-input-placeholder {
    /* Internet Explorer 10-11 */
    color: var(--c-gry);
}

::-moz-placeholder {
    /* Others */
    color: var(--c-gry);
}

::-ms-input-placeholder {
    /* Others */
    color: var(--c-gry);
}

::placeholder {
    /* Others */
    color: var(--c-gry);
}

::-moz-selection {
    background: var(--c-pri);
    color: var(--c-wht);
}

::selection {
    background: var(--c-pri);
    color: var(--c-wht);
}

::-moz-selection {
    background: var(--c-pri);
    color: var(--c-wht);
}

/* スクロールバーの設定 */
html {
    scrollbar-width: thin;
    scrollbar-width: thin;
    scrollbar-color: var(--c-blk) var(--c-gry);
}

html::-webkit-scrollbar {
    width: 0.5rem;
    height: 0.5rem;
}

html::-webkit-scrollbar-track {
    border-radius: 0.25rem;
    -webkit-box-shadow: 0 0 0.5rem var(--c-gry) inset;
    box-shadow: 0 0 0.5rem var(--c-gry) inset;
}

html::-webkit-scrollbar-thumb {
    border-radius: 0.25rem;
    background: var(--c-blk);
}

mark {
    background-color: var(--c-mark) !important;
    font-style: normal;
    font-weight: inherit;
    color: inherit;
}

sup {
    font-size: 75%;
    vertical-align: super;
}

sub {
    font-size: 75%;
    vertical-align: sub;
}

/**
 * Swiper 11.2.6
 * Most modern mobile touch slider and framework with hardware accelerated transitions
 * https://swiperjs.com
 *
 * Copyright 2014-2025 Vladimir Kharlampidi
 *
 * Released under the MIT License
 *
 * Released on: March 19, 2025
 */
@font-face {
    font-family: swiper-icons;
    src: url("data:application/font-woff;charset=utf-8;base64, d09GRgABAAAAAAZgABAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAGRAAAABoAAAAci6qHkUdERUYAAAWgAAAAIwAAACQAYABXR1BPUwAABhQAAAAuAAAANuAY7+xHU1VCAAAFxAAAAFAAAABm2fPczU9TLzIAAAHcAAAASgAAAGBP9V5RY21hcAAAAkQAAACIAAABYt6F0cBjdnQgAAACzAAAAAQAAAAEABEBRGdhc3AAAAWYAAAACAAAAAj//wADZ2x5ZgAAAywAAADMAAAD2MHtryVoZWFkAAABbAAAADAAAAA2E2+eoWhoZWEAAAGcAAAAHwAAACQC9gDzaG10eAAAAigAAAAZAAAArgJkABFsb2NhAAAC0AAAAFoAAABaFQAUGG1heHAAAAG8AAAAHwAAACAAcABAbmFtZQAAA/gAAAE5AAACXvFdBwlwb3N0AAAFNAAAAGIAAACE5s74hXjaY2BkYGAAYpf5Hu/j+W2+MnAzMYDAzaX6QjD6/4//Bxj5GA8AuRwMYGkAPywL13jaY2BkYGA88P8Agx4j+/8fQDYfA1AEBWgDAIB2BOoAeNpjYGRgYNBh4GdgYgABEMnIABJzYNADCQAACWgAsQB42mNgYfzCOIGBlYGB0YcxjYGBwR1Kf2WQZGhhYGBiYGVmgAFGBiQQkOaawtDAoMBQxXjg/wEGPcYDDA4wNUA2CCgwsAAAO4EL6gAAeNpj2M0gyAACqxgGNWBkZ2D4/wMA+xkDdgAAAHjaY2BgYGaAYBkGRgYQiAHyGMF8FgYHIM3DwMHABGQrMOgyWDLEM1T9/w8UBfEMgLzE////P/5//f/V/xv+r4eaAAeMbAxwIUYmIMHEgKYAYjUcsDAwsLKxc3BycfPw8jEQA/gZBASFhEVExcQlJKWkZWTl5BUUlZRVVNXUNTQZBgMAAMR+E+gAEQFEAAAAKgAqACoANAA+AEgAUgBcAGYAcAB6AIQAjgCYAKIArAC2AMAAygDUAN4A6ADyAPwBBgEQARoBJAEuATgBQgFMAVYBYAFqAXQBfgGIAZIBnAGmAbIBzgHsAAB42u2NMQ6CUAyGW568x9AneYYgm4MJbhKFaExIOAVX8ApewSt4Bic4AfeAid3VOBixDxfPYEza5O+Xfi04YADggiUIULCuEJK8VhO4bSvpdnktHI5QCYtdi2sl8ZnXaHlqUrNKzdKcT8cjlq+rwZSvIVczNiezsfnP/uznmfPFBNODM2K7MTQ45YEAZqGP81AmGGcF3iPqOop0r1SPTaTbVkfUe4HXj97wYE+yNwWYxwWu4v1ugWHgo3S1XdZEVqWM7ET0cfnLGxWfkgR42o2PvWrDMBSFj/IHLaF0zKjRgdiVMwScNRAoWUoH78Y2icB/yIY09An6AH2Bdu/UB+yxopYshQiEvnvu0dURgDt8QeC8PDw7Fpji3fEA4z/PEJ6YOB5hKh4dj3EvXhxPqH/SKUY3rJ7srZ4FZnh1PMAtPhwP6fl2PMJMPDgeQ4rY8YT6Gzao0eAEA409DuggmTnFnOcSCiEiLMgxCiTI6Cq5DZUd3Qmp10vO0LaLTd2cjN4fOumlc7lUYbSQcZFkutRG7g6JKZKy0RmdLY680CDnEJ+UMkpFFe1RN7nxdVpXrC4aTtnaurOnYercZg2YVmLN/d/gczfEimrE/fs/bOuq29Zmn8tloORaXgZgGa78yO9/cnXm2BpaGvq25Dv9S4E9+5SIc9PqupJKhYFSSl47+Qcr1mYNAAAAeNptw0cKwkAAAMDZJA8Q7OUJvkLsPfZ6zFVERPy8qHh2YER+3i/BP83vIBLLySsoKimrqKqpa2hp6+jq6RsYGhmbmJqZSy0sraxtbO3sHRydnEMU4uR6yx7JJXveP7WrDycAAAAAAAH//wACeNpjYGRgYOABYhkgZgJCZgZNBkYGLQZtIJsFLMYAAAw3ALgAeNolizEKgDAQBCchRbC2sFER0YD6qVQiBCv/H9ezGI6Z5XBAw8CBK/m5iQQVauVbXLnOrMZv2oLdKFa8Pjuru2hJzGabmOSLzNMzvutpB3N42mNgZGBg4GKQYzBhYMxJLMlj4GBgAYow/P/PAJJhLM6sSoWKfWCAAwDAjgbRAAB42mNgYGBkAIIbCZo5IPrmUn0hGA0AO8EFTQAA");
    font-weight: 400;
    font-style: normal;
}
:root {
    --swiper-theme-color:#007aff;
}

:host {
    position: relative;
    display: block;
    margin-left: auto;
    margin-right: auto;
    z-index: 1;
}

.swiper {
    margin-left: auto;
    margin-right: auto;
    position: relative;
    overflow: hidden;
    list-style: none;
    padding: 0;
    z-index: 1;
    display: block;
}

.swiper-vertical > .swiper-wrapper {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
}

.swiper-wrapper {
    position: relative;
    width: 100%;
    height: 100%;
    z-index: 1;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-transition-property: -webkit-transform;
    transition-property: -webkit-transform;
    transition-property: transform;
    transition-property: transform, -webkit-transform;
    -webkit-transition-timing-function: var(--swiper-wrapper-transition-timing-function, initial);
            transition-timing-function: var(--swiper-wrapper-transition-timing-function, initial);
    -webkit-box-sizing: content-box;
            box-sizing: content-box;
}

.swiper-android .swiper-slide, .swiper-ios .swiper-slide, .swiper-wrapper {
    -webkit-transform: translate3d(0px, 0, 0);
            transform: translate3d(0px, 0, 0);
}

.swiper-horizontal {
    -ms-touch-action: pan-y;
        touch-action: pan-y;
}

.swiper-vertical {
    -ms-touch-action: pan-x;
        touch-action: pan-x;
}

.swiper-slide {
    -ms-flex-negative: 0;
        flex-shrink: 0;
    width: 100%;
    height: 100%;
    position: relative;
    -webkit-transition-property: -webkit-transform;
    transition-property: -webkit-transform;
    transition-property: transform;
    transition-property: transform, -webkit-transform;
    display: block;
}

.swiper-slide-invisible-blank {
    visibility: hidden;
}

.swiper-autoheight, .swiper-autoheight .swiper-slide {
    height: auto;
}

.swiper-autoheight .swiper-wrapper {
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-transition-property: height, -webkit-transform;
    transition-property: height, -webkit-transform;
    transition-property: transform, height;
    transition-property: transform, height, -webkit-transform;
}

.swiper-backface-hidden .swiper-slide {
    -webkit-transform: translateZ(0);
            transform: translateZ(0);
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
}

.swiper-3d.swiper-css-mode .swiper-wrapper {
    -webkit-perspective: 1200px;
            perspective: 1200px;
}

.swiper-3d .swiper-wrapper {
    -webkit-transform-style: preserve-3d;
            transform-style: preserve-3d;
}

.swiper-3d {
    -webkit-perspective: 1200px;
            perspective: 1200px;
}

.swiper-3d .swiper-cube-shadow, .swiper-3d .swiper-slide {
    -webkit-transform-style: preserve-3d;
            transform-style: preserve-3d;
}

.swiper-css-mode > .swiper-wrapper {
    overflow: auto;
    scrollbar-width: none;
    -ms-overflow-style: none;
}

.swiper-css-mode > .swiper-wrapper::-webkit-scrollbar {
    display: none;
}

.swiper-css-mode > .swiper-wrapper > .swiper-slide {
    scroll-snap-align: start start;
}

.swiper-css-mode.swiper-horizontal > .swiper-wrapper {
    -ms-scroll-snap-type: x mandatory;
        scroll-snap-type: x mandatory;
}

.swiper-css-mode.swiper-vertical > .swiper-wrapper {
    -ms-scroll-snap-type: y mandatory;
        scroll-snap-type: y mandatory;
}

.swiper-css-mode.swiper-free-mode > .swiper-wrapper {
    -ms-scroll-snap-type: none;
        scroll-snap-type: none;
}

.swiper-css-mode.swiper-free-mode > .swiper-wrapper > .swiper-slide {
    scroll-snap-align: none;
}

.swiper-css-mode.swiper-centered > .swiper-wrapper::before {
    content: "";
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -webkit-box-ordinal-group: 10000;
        -ms-flex-order: 9999;
            order: 9999;
}

.swiper-css-mode.swiper-centered > .swiper-wrapper > .swiper-slide {
    scroll-snap-align: center center;
    scroll-snap-stop: always;
}

.swiper-css-mode.swiper-centered.swiper-horizontal > .swiper-wrapper > .swiper-slide:first-child {
    -webkit-margin-start: var(--swiper-centered-offset-before);
            margin-inline-start: var(--swiper-centered-offset-before);
}

.swiper-css-mode.swiper-centered.swiper-horizontal > .swiper-wrapper::before {
    height: 100%;
    min-height: 1px;
    width: var(--swiper-centered-offset-after);
}

.swiper-css-mode.swiper-centered.swiper-vertical > .swiper-wrapper > .swiper-slide:first-child {
    -webkit-margin-before: var(--swiper-centered-offset-before);
            margin-block-start: var(--swiper-centered-offset-before);
}

.swiper-css-mode.swiper-centered.swiper-vertical > .swiper-wrapper::before {
    width: 100%;
    min-width: 1px;
    height: var(--swiper-centered-offset-after);
}

.swiper-3d .swiper-slide-shadow, .swiper-3d .swiper-slide-shadow-bottom, .swiper-3d .swiper-slide-shadow-left, .swiper-3d .swiper-slide-shadow-right, .swiper-3d .swiper-slide-shadow-top {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    z-index: 10;
}

.swiper-3d .swiper-slide-shadow {
    background: rgba(0, 0, 0, 0.15);
}

.swiper-3d .swiper-slide-shadow-left {
    background-image: -webkit-gradient(linear, right top, left top, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));
    background-image: linear-gradient(to left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

.swiper-3d .swiper-slide-shadow-right {
    background-image: -webkit-gradient(linear, left top, right top, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));
    background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

.swiper-3d .swiper-slide-shadow-top {
    background-image: -webkit-gradient(linear, left bottom, left top, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));
    background-image: linear-gradient(to top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

.swiper-3d .swiper-slide-shadow-bottom {
    background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));
    background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

.swiper-lazy-preloader {
    width: 42px;
    height: 42px;
    position: absolute;
    left: 50%;
    top: 50%;
    margin-left: -21px;
    margin-top: -21px;
    z-index: 10;
    -webkit-transform-origin: 50%;
            transform-origin: 50%;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    border: 4px solid var(--swiper-preloader-color, var(--swiper-theme-color));
    border-radius: 50%;
    border-top-color: transparent;
}

.swiper-watch-progress .swiper-slide-visible .swiper-lazy-preloader, .swiper:not(.swiper-watch-progress) .swiper-lazy-preloader {
    -webkit-animation: swiper-preloader-spin 1s infinite linear;
            animation: swiper-preloader-spin 1s infinite linear;
}

.swiper-lazy-preloader-white {
    --swiper-preloader-color:#fff;
}

.swiper-lazy-preloader-black {
    --swiper-preloader-color:#000;
}

@-webkit-keyframes swiper-preloader-spin {
    0% {
        -webkit-transform: rotate(0deg);
                transform: rotate(0deg);
    }
    100% {
        -webkit-transform: rotate(360deg);
                transform: rotate(360deg);
    }
}

@keyframes swiper-preloader-spin {
    0% {
        -webkit-transform: rotate(0deg);
                transform: rotate(0deg);
    }
    100% {
        -webkit-transform: rotate(360deg);
                transform: rotate(360deg);
    }
}
.swiper-virtual .swiper-slide {
    -webkit-backface-visibility: hidden;
    -webkit-transform: translateZ(0);
            transform: translateZ(0);
}

.swiper-virtual.swiper-css-mode .swiper-wrapper::after {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    pointer-events: none;
}

.swiper-virtual.swiper-css-mode.swiper-horizontal .swiper-wrapper::after {
    height: 1px;
    width: var(--swiper-virtual-size);
}

.swiper-virtual.swiper-css-mode.swiper-vertical .swiper-wrapper::after {
    width: 1px;
    height: var(--swiper-virtual-size);
}

:root {
    --swiper-navigation-size:44px;
}

.swiper-button-next, .swiper-button-prev {
    position: absolute;
    top: var(--swiper-navigation-top-offset, 50%);
    width: calc(var(--swiper-navigation-size) / 44 * 27);
    height: var(--swiper-navigation-size);
    margin-top: calc(0px - var(--swiper-navigation-size) / 2);
    z-index: 10;
    cursor: pointer;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    color: var(--swiper-navigation-color, var(--swiper-theme-color));
}

.swiper-button-next.swiper-button-disabled, .swiper-button-prev.swiper-button-disabled {
    opacity: 0.35;
    cursor: auto;
    pointer-events: none;
}

.swiper-button-next.swiper-button-hidden, .swiper-button-prev.swiper-button-hidden {
    opacity: 0;
    cursor: auto;
    pointer-events: none;
}

.swiper-navigation-disabled .swiper-button-next, .swiper-navigation-disabled .swiper-button-prev {
    display: none !important;
}

.swiper-button-next svg, .swiper-button-prev svg {
    width: 100%;
    height: 100%;
    -o-object-fit: contain;
       object-fit: contain;
    -webkit-transform-origin: center;
            transform-origin: center;
}

.swiper-rtl .swiper-button-next svg, .swiper-rtl .swiper-button-prev svg {
    -webkit-transform: rotate(180deg);
            transform: rotate(180deg);
}

.swiper-button-prev, .swiper-rtl .swiper-button-next {
    left: var(--swiper-navigation-sides-offset, 10px);
    right: auto;
}

.swiper-button-next, .swiper-rtl .swiper-button-prev {
    right: var(--swiper-navigation-sides-offset, 10px);
    left: auto;
}

.swiper-button-lock {
    display: none;
}

.swiper-button-next:after, .swiper-button-prev:after {
    font-family: swiper-icons;
    font-size: var(--swiper-navigation-size);
    text-transform: none !important;
    letter-spacing: 0;
    font-variant: initial;
    line-height: 1;
}

.swiper-button-prev:after, .swiper-rtl .swiper-button-next:after {
    content: "prev";
}

.swiper-button-next, .swiper-rtl .swiper-button-prev {
    right: var(--swiper-navigation-sides-offset, 10px);
    left: auto;
}

.swiper-button-next:after, .swiper-rtl .swiper-button-prev:after {
    content: "next";
}

.swiper-pagination {
    position: absolute;
    text-align: center;
    -webkit-transition: 0.3s opacity;
    transition: 0.3s opacity;
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
    z-index: 10;
}

.swiper-pagination.swiper-pagination-hidden {
    opacity: 0;
}

.swiper-pagination-disabled > .swiper-pagination, .swiper-pagination.swiper-pagination-disabled {
    display: none !important;
}

.swiper-horizontal > .swiper-pagination-bullets, .swiper-pagination-bullets.swiper-pagination-horizontal, .swiper-pagination-custom, .swiper-pagination-fraction {
    bottom: var(--swiper-pagination-bottom, 8px);
    top: var(--swiper-pagination-top, auto);
    left: 0;
    width: 100%;
}

.swiper-pagination-bullets-dynamic {
    overflow: hidden;
    font-size: 0;
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
    -webkit-transform: scale(0.33);
            transform: scale(0.33);
    position: relative;
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active {
    -webkit-transform: scale(1);
            transform: scale(1);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main {
    -webkit-transform: scale(1);
            transform: scale(1);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev {
    -webkit-transform: scale(0.66);
            transform: scale(0.66);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev {
    -webkit-transform: scale(0.33);
            transform: scale(0.33);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next {
    -webkit-transform: scale(0.66);
            transform: scale(0.66);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next {
    -webkit-transform: scale(0.33);
            transform: scale(0.33);
}

.swiper-pagination-bullet {
    width: var(--swiper-pagination-bullet-width, var(--swiper-pagination-bullet-size, 8px));
    height: var(--swiper-pagination-bullet-height, var(--swiper-pagination-bullet-size, 8px));
    display: inline-block;
    border-radius: var(--swiper-pagination-bullet-border-radius, 50%);
    background: var(--swiper-pagination-bullet-inactive-color, #000);
    opacity: var(--swiper-pagination-bullet-inactive-opacity, 0.2);
}

button.swiper-pagination-bullet {
    border: none;
    margin: 0;
    padding: 0;
    -webkit-box-shadow: none;
            box-shadow: none;
    -webkit-appearance: none;
    -moz-appearance: none;
         appearance: none;
}

.swiper-pagination-clickable .swiper-pagination-bullet {
    cursor: pointer;
}

.swiper-pagination-bullet:only-child {
    display: none !important;
}

.swiper-pagination-bullet-active {
    opacity: var(--swiper-pagination-bullet-opacity, 1);
    background: var(--swiper-pagination-color, var(--swiper-theme-color));
}

.swiper-pagination-vertical.swiper-pagination-bullets, .swiper-vertical > .swiper-pagination-bullets {
    right: var(--swiper-pagination-right, 8px);
    left: var(--swiper-pagination-left, auto);
    top: 50%;
    -webkit-transform: translate3d(0px, -50%, 0);
            transform: translate3d(0px, -50%, 0);
}

.swiper-pagination-vertical.swiper-pagination-bullets .swiper-pagination-bullet, .swiper-vertical > .swiper-pagination-bullets .swiper-pagination-bullet {
    margin: var(--swiper-pagination-bullet-vertical-gap, 6px) 0;
    display: block;
}

.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic, .swiper-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
    top: 50%;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    width: 8px;
}

.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet, .swiper-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
    display: inline-block;
    -webkit-transition: 0.2s top, 0.2s -webkit-transform;
    transition: 0.2s top, 0.2s -webkit-transform;
    transition: 0.2s transform, 0.2s top;
    transition: 0.2s transform, 0.2s top, 0.2s -webkit-transform;
}

.swiper-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet, .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
    margin: 0 var(--swiper-pagination-bullet-horizontal-gap, 4px);
}

.swiper-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic, .swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    white-space: nowrap;
}

.swiper-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet, .swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
    -webkit-transition: 0.2s left, 0.2s -webkit-transform;
    transition: 0.2s left, 0.2s -webkit-transform;
    transition: 0.2s transform, 0.2s left;
    transition: 0.2s transform, 0.2s left, 0.2s -webkit-transform;
}

.swiper-horizontal.swiper-rtl > .swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
    -webkit-transition: 0.2s right, 0.2s -webkit-transform;
    transition: 0.2s right, 0.2s -webkit-transform;
    transition: 0.2s transform, 0.2s right;
    transition: 0.2s transform, 0.2s right, 0.2s -webkit-transform;
}

.swiper-pagination-fraction {
    color: var(--swiper-pagination-fraction-color, inherit);
}

.swiper-pagination-progressbar {
    background: var(--swiper-pagination-progressbar-bg-color, rgba(0, 0, 0, 0.25));
    position: absolute;
}

.swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
    background: var(--swiper-pagination-color, var(--swiper-theme-color));
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    -webkit-transform: scale(0);
            transform: scale(0);
    -webkit-transform-origin: left top;
            transform-origin: left top;
}

.swiper-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
    -webkit-transform-origin: right top;
            transform-origin: right top;
}

.swiper-horizontal > .swiper-pagination-progressbar, .swiper-pagination-progressbar.swiper-pagination-horizontal, .swiper-pagination-progressbar.swiper-pagination-vertical.swiper-pagination-progressbar-opposite, .swiper-vertical > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite {
    width: 100%;
    height: var(--swiper-pagination-progressbar-size, 4px);
    left: 0;
    top: 0;
}

.swiper-horizontal > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite, .swiper-pagination-progressbar.swiper-pagination-horizontal.swiper-pagination-progressbar-opposite, .swiper-pagination-progressbar.swiper-pagination-vertical, .swiper-vertical > .swiper-pagination-progressbar {
    width: var(--swiper-pagination-progressbar-size, 4px);
    height: 100%;
    left: 0;
    top: 0;
}

.swiper-pagination-lock {
    display: none;
}

.swiper-scrollbar {
    border-radius: var(--swiper-scrollbar-border-radius, 10px);
    position: relative;
    -ms-touch-action: none;
        touch-action: none;
    background: var(--swiper-scrollbar-bg-color, rgba(0, 0, 0, 0.1));
}

.swiper-scrollbar-disabled > .swiper-scrollbar, .swiper-scrollbar.swiper-scrollbar-disabled {
    display: none !important;
}

.swiper-horizontal > .swiper-scrollbar, .swiper-scrollbar.swiper-scrollbar-horizontal {
    position: absolute;
    left: var(--swiper-scrollbar-sides-offset, 1%);
    bottom: var(--swiper-scrollbar-bottom, 4px);
    top: var(--swiper-scrollbar-top, auto);
    z-index: 50;
    height: var(--swiper-scrollbar-size, 4px);
    width: calc(100% - 2 * var(--swiper-scrollbar-sides-offset, 1%));
}

.swiper-scrollbar.swiper-scrollbar-vertical, .swiper-vertical > .swiper-scrollbar {
    position: absolute;
    left: var(--swiper-scrollbar-left, auto);
    right: var(--swiper-scrollbar-right, 4px);
    top: var(--swiper-scrollbar-sides-offset, 1%);
    z-index: 50;
    width: var(--swiper-scrollbar-size, 4px);
    height: calc(100% - 2 * var(--swiper-scrollbar-sides-offset, 1%));
}

.swiper-scrollbar-drag {
    height: 100%;
    width: 100%;
    position: relative;
    background: var(--swiper-scrollbar-drag-bg-color, rgba(0, 0, 0, 0.5));
    border-radius: var(--swiper-scrollbar-border-radius, 10px);
    left: 0;
    top: 0;
}

.swiper-scrollbar-cursor-drag {
    cursor: move;
}

.swiper-scrollbar-lock {
    display: none;
}

.swiper-zoom-container {
    width: 100%;
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    text-align: center;
}

.swiper-zoom-container > canvas, .swiper-zoom-container > img, .swiper-zoom-container > svg {
    max-width: 100%;
    max-height: 100%;
    -o-object-fit: contain;
       object-fit: contain;
}

.swiper-slide-zoomed {
    cursor: move;
    -ms-touch-action: none;
        touch-action: none;
}

.swiper .swiper-notification {
    position: absolute;
    left: 0;
    top: 0;
    pointer-events: none;
    opacity: 0;
    z-index: -1000;
}

.swiper-free-mode > .swiper-wrapper {
    -webkit-transition-timing-function: ease-out;
            transition-timing-function: ease-out;
    margin: 0 auto;
}

.swiper-grid > .swiper-wrapper {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
}

.swiper-grid-column > .swiper-wrapper {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
}

.swiper-fade.swiper-free-mode .swiper-slide {
    -webkit-transition-timing-function: ease-out;
            transition-timing-function: ease-out;
}

.swiper-fade .swiper-slide {
    pointer-events: none;
    -webkit-transition-property: opacity;
    transition-property: opacity;
}

.swiper-fade .swiper-slide .swiper-slide {
    pointer-events: none;
}

.swiper-fade .swiper-slide-active {
    pointer-events: auto;
}

.swiper-fade .swiper-slide-active .swiper-slide-active {
    pointer-events: auto;
}

.swiper.swiper-cube {
    overflow: visible;
}

.swiper-cube .swiper-slide {
    pointer-events: none;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    z-index: 1;
    visibility: hidden;
    -webkit-transform-origin: 0 0;
            transform-origin: 0 0;
    width: 100%;
    height: 100%;
}

.swiper-cube .swiper-slide .swiper-slide {
    pointer-events: none;
}

.swiper-cube.swiper-rtl .swiper-slide {
    -webkit-transform-origin: 100% 0;
            transform-origin: 100% 0;
}

.swiper-cube .swiper-slide-active, .swiper-cube .swiper-slide-active .swiper-slide-active {
    pointer-events: auto;
}

.swiper-cube .swiper-slide-active, .swiper-cube .swiper-slide-next, .swiper-cube .swiper-slide-prev {
    pointer-events: auto;
    visibility: visible;
}

.swiper-cube .swiper-cube-shadow {
    position: absolute;
    left: 0;
    bottom: 0px;
    width: 100%;
    height: 100%;
    opacity: 0.6;
    z-index: 0;
}

.swiper-cube .swiper-cube-shadow:before {
    content: "";
    background: #000;
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    right: 0;
    -webkit-filter: blur(50px);
            filter: blur(50px);
}

.swiper-cube .swiper-slide-next + .swiper-slide {
    pointer-events: auto;
    visibility: visible;
}

.swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-bottom, .swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-left, .swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-right, .swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-top {
    z-index: 0;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
}

.swiper.swiper-flip {
    overflow: visible;
}

.swiper-flip .swiper-slide {
    pointer-events: none;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    z-index: 1;
}

.swiper-flip .swiper-slide .swiper-slide {
    pointer-events: none;
}

.swiper-flip .swiper-slide-active, .swiper-flip .swiper-slide-active .swiper-slide-active {
    pointer-events: auto;
}

.swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-bottom, .swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-left, .swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-right, .swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-top {
    z-index: 0;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
}

.swiper-creative .swiper-slide {
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    overflow: hidden;
    -webkit-transition-property: opacity, height, -webkit-transform;
    transition-property: opacity, height, -webkit-transform;
    transition-property: transform, opacity, height;
    transition-property: transform, opacity, height, -webkit-transform;
}

.swiper.swiper-cards {
    overflow: visible;
}

.swiper-cards .swiper-slide {
    -webkit-transform-origin: center bottom;
            transform-origin: center bottom;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    overflow: hidden;
}

.swiper-slide {
    cursor: -webkit-grab;
    cursor: grab;
}

.swiper-button-prev,
.swiper-button-next {
    position: relative;
    border-radius: 50%;
    background-color: var(--c-pri);
    background-repeat: no-repeat;
    background-size: auto auto;
    background-position: center center;
    width: 3.75rem;
    height: 3.75rem;
    left: auto;
    right: auto;
    top: auto;
    bottom: auto;
    margin: 0;
}
.swiper-button-prev::after,
.swiper-button-next::after {
    display: none;
}

.swiper-button-prev {
    background-image: url(../img/ico_arr_left_wht.svg);
}

.swiper-button-next {
    background-image: url(../img/ico_arr_right_wht.svg);
}

.l-header {
    position: sticky;
    z-index: 999;
    left: 0;
    top: 0;
    /*固定ヘッダーの時にこちらのクラスを付ける*/
}
.l-header::after {
    content: "";
    display: block;
    background-color: var(--c-wht);
    width: 100%;
    height: 100%;
    position: absolute;
    z-index: -1;
    top: 0;
    left: 0;
    backdrop-filter: blur(4px);
    -webkit-backdrop-filter: blur(4px);
    background-color: rgba(255, 255, 255, 0.8);
}
.l-header[class] a {
    color: inherit;
    text-decoration: none;
}
.l-header.js-fixed-header {
    position: fixed;
    z-index: 99999;
    top: 0;
    left: 0;
    width: 100%;
}
.l-header.is-active {
    background-color: var(--c-wht);
    z-index: 100000;
}
.l-header__inner {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding-left: 1rem;
    padding-right: 0;
}
@media (max-width: 767px) {
    .l-header__inner {
        padding-top: 0.875rem;
        padding-bottom: 0.875rem;
        height: 56px;
    }
}
@media (min-width: 768px) {
    .l-header__inner {
        padding-top: 1rem;
        padding-bottom: 1rem;
        height: 4rem;
    }
}
@media (min-width: 960px) {
    .l-header__inner {
        padding-top: 1rem;
        padding-bottom: 1rem;
        height: 5rem;
    }
}
@media (min-width: 1280px) {
    .l-header__inner {
        padding-left: 2.5rem;
    }
}
.l-header__logo-wrap {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 1rem;
}
.l-header__logo {
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    -ms-flex-preferred-size: 6.25rem;
        flex-basis: 6.25rem;
    max-width: 6.25rem;
}
@media (min-width: 960px) {
    .l-header__logo {
        -ms-flex-preferred-size: 10rem;
            flex-basis: 10rem;
        max-width: 10rem;
    }
}
.l-header__logo-text {
    font-size: 0.75rem;
}
@media (min-width: 960px) {
    .l-header__logo-text {
        display: none;
    }
}
@media (min-width: 1280px) {
    .l-header__logo-text {
        display: block;
    }
}
.l-header__logo-text::after {
    content: attr(data-logo-label);
    display: block;
    line-height: 1;
    text-transform: uppercase;
    font-size: 1.25rem;
    font-weight: bold;
    letter-spacing: 0.16em;
    margin-top: 0.25rem;
}
.l-header__link-contact {
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-ordinal-group: 11;
        -ms-flex-order: 10;
            order: 10;
    padding-top: 2.25rem;
}
@media (min-width: 960px) {
    .l-header__link-contact {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
            -ms-flex-direction: row;
                flex-direction: row;
        padding-top: 0;
    }
}
@media (min-width: 960px) {
    .l-header__link-contact > * + * {
        margin-left: 2rem;
    }
}
.l-header__link, .l-header__btn {
    width: 100%;
}
@media (min-width: 960px) {
    .l-header__link, .l-header__btn {
        width: inherit;
    }
}
.l-header__link {
    -webkit-box-ordinal-group: 21;
        -ms-flex-order: 20;
            order: 20;
    margin-top: 1rem;
}
@media (min-width: 960px) {
    .l-header__link {
        -webkit-box-ordinal-group: 1;
            -ms-flex-order: 0;
                order: 0;
        margin-top: 0;
    }
}
@media (max-width: 767px) {
    .l-header__link li {
        text-align: center;
    }
}
.l-header__link li a[target=_blank] {
    background-repeat: no-repeat;
    background-size: auto auto;
    background-position: right center;
    background-image: url(../img/ico_blank.svg);
    padding-right: 1.25rem;
}
.l-header__btn {
    -webkit-box-ordinal-group: 11;
        -ms-flex-order: 10;
            order: 10;
}
.l-header__menu {
    margin-left: auto;
    display: none;
    background-color: var(--c-wht);
    position: absolute;
    z-index: 99999;
    top: 0;
    left: 0;
    width: 100%;
    padding: 3rem 2rem;
    padding-top: 2.25rem;
    margin-top: 4rem;
}
@media (min-width: 960px) {
    .l-header__menu {
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        gap: clamp(0.5rem, 1.5vw, 1.5rem);
        background: none;
        position: relative;
        width: auto;
        padding: 0;
        margin-top: 0;
    }
}
.l-header__menu.is-active {
    background-color: var(--c-wht);
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}
@media (min-width: 960px) {
    .l-header__menu.is-active {
        display: block;
        background: none;
    }
}
.l-header__gnav {
    display: block;
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
}
.l-header__menu-list, .l-header__link-list, .l-header__btn-list {
    line-height: 1.5;
    list-style: none;
}
@media (min-width: 960px) {
    .l-header__menu-list, .l-header__link-list, .l-header__btn-list {
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
    }
}
.l-header__menu-list {
    display: block;
}
@media (min-width: 960px) {
    .l-header__menu-list {
        margin-left: auto;
        -webkit-box-pack: end;
            -ms-flex-pack: end;
                justify-content: flex-end;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
    }
}
@media (min-width: 960px) {
    .l-header__menu-list > li + li {
        margin-left: clamp(0.75rem, 1.75vw, 1.5rem);
    }
}
.l-header__menu-list > li > a {
    position: relative;
    display: block;
    padding: 0.75rem 0;
}
@media (min-width: 960px) {
    .l-header__menu-list > li > a {
        display: inline-block;
        font-weight: bold;
        font-size: clamp(0.875rem, 1.375vw, 1rem);
        padding: 1.75rem 0;
        height: 5rem;
    }
}
.l-header__menu-list > li > a::after {
    content: "";
    display: none;
    pointer-events: none;
    -webkit-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
    background-color: var(--c-gry);
    position: absolute;
    right: 0;
    bottom: 0;
    height: 1px;
    width: 100%;
}
@media (min-width: 960px) {
    .l-header__menu-list > li > a::after {
        display: block;
        background-color: var(--c-pri);
        width: 0;
        height: 2px;
        margin-bottom: 1.75rem;
    }
}
.l-header__menu-list > li > a.is-current::after {
    left: 0;
    right: auto;
    width: 100%;
    background-color: var(--c-pri);
    height: 2px;
}
@media (min-width: 960px) {
    .l-header__menu-list > li > a:hover {
        text-decoration: none;
        cursor: pointer;
    }
    .l-header__menu-list > li > a:hover::after {
        left: 0;
        right: auto;
        width: 100%;
    }
}
.l-header__menu-list > li:has(ul) {
    position: relative;
}
.l-header__menu-list > li:has(ul) > a {
    -webkit-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
    background-repeat: no-repeat;
    background-size: 1rem auto;
    background-position: right center;
    background-image: url(../img/ico_arr_down_pri.svg);
}
@media (min-width: 960px) {
    .l-header__menu-list > li:has(ul) > a {
        padding-right: 1.25rem;
    }
}
@media (min-width: 960px) {
    .l-header__menu-list > li:has(ul) > a:hover {
        background-image: url(../img/ico_arr_up_pri.svg);
    }
}
@media (min-width: 960px) {
    .l-header__menu-list > li.is-hover > a {
        background-image: url(../img/ico_arr_up_pri.svg);
    }
}
.l-header__menu-list > li.is-selected > a {
    background-image: url(../img/ico_arr_up_pri.svg);
}
@media (min-width: 960px) {
    .l-header__menu-list > li:has(ul) > a:hover + ul {
        display: block;
    }
}
@media (min-width: 960px) {
    .l-header__menu-list > li:has(ul) ul:hover {
        display: block;
    }
}
.l-header__mask {
    display: none;
    pointer-events: none;
    opacity: 0;
    -webkit-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
    background-color: var(--c-mask-light);
    position: fixed;
    z-index: 1;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin-top: 64px;
}
@media (min-width: 768px) {
    .l-header__mask {
        margin-top: 5rem;
    }
}
@media (min-width: 960px) {
    .l-header__mask {
        display: block;
    }
}
@media (min-width: 960px) {
    .l-header__menu-secend-list:hover ~ .l-header__mask, .l-header__menu-list > li:has(ul) > a:hover ~ .l-header__mask {
        opacity: 1;
    }
}
.l-header__menu-secend-list {
    display: none;
    padding-bottom: 0.25rem;
}
@media (min-width: 960px) {
    .l-header__menu-secend-list {
        -webkit-box-shadow: var(--c-shadow);
                box-shadow: var(--c-shadow);
        background-color: var(--c-wht);
        position: absolute;
        z-index: 10;
        top: 0;
        left: 50%;
        -webkit-transform: translateX(-50%);
                transform: translateX(-50%);
        padding: 2.5rem;
        margin-top: 5rem;
    }
}
.l-header__menu-secend-list[class] li a {
    display: inline-block;
    font-size: 0.875rem;
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
}
@media (min-width: 960px) {
    .l-header__menu-secend-list[class] li a {
        white-space: nowrap;
        padding-top: 0;
        padding-bottom: 0;
    }
}
.l-header__menu-secend-list > li > a {
    font-weight: bold;
}
.l-header__menu-secend-list.is-selected {
    display: block;
}
@media (min-width: 960px) {
    * + .l-header__menu-third-list {
        margin-top: 1rem;
    }
}
.l-header__menu-third-list li + li {
    margin-top: 0.25rem;
}
.l-header__menu-third-list li a {
    position: relative;
    font-size: 0.875rem;
    padding-left: 0.875rem;
}
.l-header__menu-third-list li a::before {
    content: "";
    display: block;
    background-color: var(--c-pri);
    width: 0.5rem;
    height: 1px;
    position: absolute;
    z-index: 1;
    top: 50%;
    left: 0;
}
.l-header__link-list {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
}
@media (min-width: 960px) {
    .l-header__link-list {
        -webkit-box-pack: end;
            -ms-flex-pack: end;
                justify-content: flex-end;
    }
}
.l-header__link-list li + li {
    margin-top: 0.5rem;
}
@media (min-width: 960px) {
    .l-header__link-list li + li {
        margin-left: 1rem;
        margin-top: 0;
    }
}
.l-header__link-list li a {
    font-size: 1rem;
}
@media (min-width: 960px) {
    .l-header__link-list li a {
        font-size: 0.875rem;
    }
    .l-header__link-list li a:hover {
        text-decoration: underline;
    }
}
.l-header__link-list li {
    text-align: center;
}
.l-header__link-list li a {
    display: inline-block;
    padding: 0.5rem;
}
@media (min-width: 960px) {
    .l-header__link-list li a {
        display: inline-block;
        padding: inherit;
    }
}
@media (min-width: 960px) {
    .l-header__link-list li {
        text-align: inherit;
    }
}
.l-header__btn-list {
    display: block;
}
.l-header__btn-list li a {
    position: relative;
    background-image: var(--c-gra);
    display: block;
    text-align: center;
    padding: 1.5rem 0 1.25rem;
}
.l-header__btn-list li a:hover {
    text-decoration: none;
}
@media (min-width: 960px) {
    .l-header__btn-list li a {
        font-size: 0.875rem;
        padding: 1rem 1rem 0.875rem;
        width: clamp(8rem, 11.5vw, 12.5rem);
    }
}
@media (min-width: 1280px) {
    .l-header__btn-list li a {
        width: 12.5rem;
    }
}
.l-header__btn-list li a::before {
    content: attr(data-btn-label);
    display: none;
    font-weight: bold;
    font-size: clamp(1.25rem, 1.5vw, 1.5rem);
    text-align: center;
    text-transform: uppercase;
    letter-spacing: 0.16em;
}
@media (min-width: 960px) {
    .l-header__btn-list li a::before {
        display: block;
    }
}
.l-header__btn-list li a:after {
    content: "";
    display: block;
    background-position: right center;
    background-repeat: no-repeat;
    background-image: url(../img/ico_arr_right_wht.svg);
    background-size: 100% auto;
    width: 1em;
    height: 100%;
    position: absolute;
    top: 0;
    right: 0;
    margin-right: 1rem;
}
@media (min-width: 960px) {
    .l-header__btn-list li a:after {
        display: none;
    }
}
.l-header__btn-list li:first-child a {
    border-radius: 3rem;
}
@media (min-width: 960px) {
    .l-header__btn-list li:first-child a {
        border-bottom-left-radius: 1.875rem;
        border-top-left-radius: 0 !important;
        border-bottom-right-radius: 0 !important;
        border-top-right-radius: 0 !important;
    }
}
.l-header__btn-list li + li {
    margin-left: 1rem;
}
@media (max-width: 767px) {
    .l-header__btn-list li + li {
        margin: 1rem 0 0 0;
    }
}
.l-header__btn-list[class] li a {
    color: var(--c-wht);
}
.l-header__contact {
    text-align: center;
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
}
@media (min-width: 960px) {
    .l-header__contact {
        text-align: inherit;
    }
}
.l-header__contact-tel {
    line-height: 1.5;
    font-weight: bold;
    font-size: 2rem;
}
@media (min-width: 960px) {
    .l-header__contact-tel {
        font-size: 1.25rem;
    }
}
.l-header__contact-time {
    line-height: 1.5;
    font-size: 1rem;
}
@media (min-width: 960px) {
    .l-header__contact-time {
        font-size: 0.75rem;
    }
}
.l-header__trigger {
    display: table;
    width: 56px;
    height: 56px;
}
@media (min-width: 960px) {
    .l-header__trigger {
        display: none;
    }
}
.l-header__trigger-btn {
    border-top-left-radius: 0 !important;
    border-bottom-right-radius: 0 !important;
    border-top-right-radius: 0 !important;
    background-image: var(--c-gra);
    display: table-cell;
    vertical-align: middle;
    width: 100%;
    height: 100%;
}
.l-header__trigger-btn > * {
    display: block;
    -webkit-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
    line-height: 1;
    position: relative;
    transition: all 0.2s ease-in-out;
    background-color: var(--c-wht);
    font-size: 0;
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    margin-top: -2px;
    color: transparent;
    width: 1.5rem;
    height: 2px;
}
.l-header__trigger-btn > *::before, .l-header__trigger-btn > *::after {
    content: "";
    display: block;
    -webkit-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
    background-color: var(--c-wht);
    width: 100%;
    height: 2px;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
}
.l-header__trigger-btn > *::before {
    margin-top: -8px;
}
.l-header__trigger-btn > *::after {
    margin-top: 8px;
}
.l-header__trigger-btn.is-active > *::before {
    -webkit-transform: translate(-50%, 8px) rotate(-45deg);
            transform: translate(-50%, 8px) rotate(-45deg);
}
.l-header__trigger-btn.is-active > * {
    background-color: transparent;
}
.l-header__trigger-btn.is-active > *::after {
    -webkit-transform: translate(-50%, -8px) rotate(45deg);
            transform: translate(-50%, -8px) rotate(45deg);
}

body[data-page-type=form] .l-header {
    position: relative !important;
}
body[data-page-type=form] .l-header__trigger, body[data-page-type=form] .l-header__menu {
    display: none;
}

.l-footer[class] a {
    color: inherit;
    text-decoration: none;
}
.l-footer__cv {
    position: relative;
    border-bottom-left-radius: 0 !important;
    border-bottom-right-radius: 0 !important;
    border-top-left-radius: 0 !important;
    background-image: var(--c-gra);
    padding-top: 5.5rem;
    padding-bottom: 5.5rem;
}
@media (max-width: 767px) {
    .l-footer__cv {
        padding-top: 3rem;
        padding-bottom: 3rem;
    }
}
.l-footer__cv > * {
    position: relative;
    z-index: 10;
}
.l-footer__cv-bg {
    position: absolute;
    z-index: 5;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.l-footer__cv-bg img {
    -o-object-position: 14% center;
       object-position: 14% center;
    -o-object-fit: cover;
       object-fit: cover;
    height: 100%;
    width: 100%;
}
@media (min-width: 960px) {
    .l-footer__cv-bg img {
        -o-object-position: 18% center;
           object-position: 18% center;
    }
}
@media (max-width: 767px) {
    .l-footer__cv-bg img {
        height: 75%;
    }
}
@media (max-width: 767px) {
    .l-footer__cv-headline + * {
        margin-top: 1.5rem;
    }
}
@media (min-width: 768px) {
    .l-footer__cv-headline {
        position: absolute;
        z-index: 1;
        top: 0;
        right: 0;
        margin-top: -0.5rem;
        margin-right: 1rem;
    }
}
.l-footer__cv-title {
    line-height: 2;
    color: var(--c-wht);
    letter-spacing: 0.3em;
    font-weight: bold;
    font-size: 1.75rem;
}
@media (max-width: 767px) {
    .l-footer__cv-title {
        font-size: 1.25rem;
        letter-spacing: 0.2em;
    }
}
.l-footer__cv-title + * {
    margin-top: 3.5rem;
}
@media (max-width: 767px) {
    .l-footer__cv-title + * {
        margin-top: 1.125rem;
    }
}
.l-footer__cv-desc {
    color: var(--c-wht);
    line-height: 2.4;
    font-size: 1.125rem;
}
@media (max-width: 767px) {
    .l-footer__cv-desc {
        font-size: 0.875rem;
    }
}
.l-footer__cv-desc + * {
    margin-top: 2.5rem;
}
@media (max-width: 767px) {
    .l-footer__cv-desc + * {
        margin-top: 1.75rem;
    }
}
@media (min-width: 1280px) {
    .l-footer__cv-desc + * {
        margin-top: 0;
    }
}
.l-footer__cv-desc > * + * {
    margin-top: 1rem;
}
@media (min-width: 1280px) {
    .l-footer__cv-desc-btn {
        -webkit-box-align: end;
            -ms-flex-align: end;
                align-items: flex-end;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        gap: 2.5rem;
    }
}
@media (min-width: 1280px) {
    .l-footer__cv-desc {
        -ms-flex-negative: 1;
            flex-shrink: 1;
        -webkit-box-flex: 1;
            -ms-flex-positive: 1;
                flex-grow: 1;
    }
}
@media (min-width: 1280px) {
    .l-footer__cv-btn {
        -ms-flex-negative: 0;
            flex-shrink: 0;
        -webkit-box-flex: 0;
            -ms-flex-positive: 0;
                flex-grow: 0;
        -ms-flex-preferred-size: 20rem;
            flex-basis: 20rem;
        max-width: 20rem;
    }
}
.l-footer__cv-btn-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 1rem;
}
@media (max-width: 767px) {
    .l-footer__cv-btn-list {
        display: block;
    }
}
@media (min-width: 768px) {
    .l-footer__cv-btn-list {
        max-width: 41rem;
    }
}
@media (min-width: 1280px) {
    .l-footer__cv-btn-list {
        display: block;
    }
}
.l-footer__cv-btn-item {
    width: 100%;
}
.l-footer__cv-btn-item[class] a {
    padding-top: 1.75rem;
    padding-bottom: 1.75rem;
}
.l-footer__cv-btn-item[class] a:hover {
    text-decoration: none;
}
@media (max-width: 767px) {
    .l-footer__cv-btn-item[class] a {
        padding-top: 1.5rem;
        padding-bottom: 1.5rem;
    }
}
@media (max-width: 767px) {
    .l-footer__cv-btn-item + .l-footer__cv-btn-item {
        margin-top: 1.25rem;
    }
}
@media (min-width: 1280px) {
    .l-footer__cv-btn-item + .l-footer__cv-btn-item {
        margin-top: 1.5rem;
    }
}
.l-footer__logo-wrap {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 1rem;
}
.l-footer__logo-wrap + * {
    margin-top: 1.75rem;
}
@media (min-width: 960px) {
    .l-footer__logo-wrap + * {
        margin-top: 2.5rem;
    }
}
.l-footer__logo {
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    -ms-flex-preferred-size: 8rem;
        flex-basis: 8rem;
    max-width: 8rem;
}
@media (min-width: 960px) {
    .l-footer__logo {
        -ms-flex-preferred-size: 10rem;
            flex-basis: 10rem;
        max-width: 10rem;
    }
}
.l-footer__logo-text {
    font-size: 0.75rem;
}
.l-footer__logo-text::after {
    content: attr(data-logo-label);
    display: block;
    line-height: 1;
    text-transform: uppercase;
    font-size: 1.25rem;
    font-weight: bold;
    letter-spacing: 0.16em;
    margin-top: 0.25rem;
}
.l-footer__address {
    font-size: 0.875rem;
}
.l-footer__address + * {
    margin-top: 1.5rem;
}
@media (min-width: 960px) {
    .l-footer__address + * {
        margin-top: 2.5rem;
    }
}
.l-footer__site {
    background-color: var(--c-gry-light);
    padding-top: 2.75rem;
    padding-bottom: 2.75rem;
}
@media (min-width: 960px) {
    .l-footer__site {
        padding-top: 8rem;
        padding-bottom: 3.5rem;
    }
}
@media (min-width: 960px) {
    .l-footer__site-inner {
        -webkit-box-pack: justify;
            -ms-flex-pack: justify;
                justify-content: space-between;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
    }
}
.l-footer__sitemap-wrap {
    -ms-flex-negative: 1;
        flex-shrink: 1;
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    display: none;
    -ms-flex-preferred-size: 38rem;
        flex-basis: 38rem;
    max-width: 38rem;
}
@media (min-width: 960px) {
    .l-footer__sitemap-wrap {
        display: block;
    }
}
@media (min-width: 1280px) {
    .l-footer__sitemap-wrap {
        -ms-flex-preferred-size: 41rem;
            flex-basis: 41rem;
        max-width: 41rem;
    }
}
@media (min-width: 960px) {
    .l-footer__sitemap {
        -webkit-box-pack: justify;
            -ms-flex-pack: justify;
                justify-content: space-between;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
    }
}
.l-footer__sitemap + .l-footer__sitemap {
    margin-top: 1.5rem;
}
.l-footer__sitemap-list > li > a {
    font-weight: bold;
    font-size: 1rem;
}
.l-footer__sitemap-list > li li > a {
    font-size: 0.875rem;
    position: relative;
    font-size: 0.875rem;
    padding-left: 0.875rem;
}
.l-footer__sitemap-list > li li > a::before {
    content: "";
    display: block;
    background-color: var(--c-pri);
    width: 0.5rem;
    height: 1px;
    position: absolute;
    z-index: 1;
    top: 50%;
    left: 0;
}
.l-footer__sitemap-list > li + li {
    margin-top: 1.25rem;
}
.l-footer__sitemap-list ul:not(:has(> li)) {
    display: none;
}
* + .l-footer__sitemap-sub-list {
    margin-top: 0.75rem;
}
.l-footer__sns {
    border-top: 1px solid var(--c-gry);
    padding-top: 2.75rem;
}
@media (min-width: 768px) {
    .l-footer__sns {
        padding-top: 3.5rem;
    }
}
* + .l-footer__sns {
    margin-top: 2.75rem;
}
@media (min-width: 768px) {
    * + .l-footer__sns {
        margin-top: 3.5rem;
    }
}
@media (min-width: 960px) {
    .l-footer__sns + * {
        margin-top: 1.5rem;
    }
}
.l-footer__sns-list {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 1.5rem;
}
@media (max-width: 767px) {
    .l-footer__sns-list {
        -webkit-box-pack: start;
            -ms-flex-pack: start;
                justify-content: flex-start;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    }
}
.l-footer__sns-list li {
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    -ms-flex-preferred-size: calc(50% - 0.75rem);
        flex-basis: calc(50% - 0.75rem);
    max-width: calc(50% - 0.75rem);
}
@media (min-width: 768px) {
    .l-footer__sns-list li {
        -ms-flex-preferred-size: 6.5rem;
            flex-basis: 6.5rem;
        max-width: 6.5rem;
    }
}
@media (min-width: 768px) {
    .l-footer__sns-list li a {
        display: block;
        text-align: center;
    }
}
.l-footer__sns-img {
    display: inline-block;
    text-align: center;
    width: 2rem;
}
@media (min-width: 768px) {
    .l-footer__sns-img {
        width: auto;
        display: block;
    }
}
.l-footer__sns-img + * {
    margin-top: 0.25rem;
}
.l-footer__sns-label {
    line-height: 1.5;
    color: var(--c-pri);
    font-size: 0.875rem;
}
@media (min-width: 768px) {
    .l-footer__sns-label {
        display: block;
    }
}
.l-footer__btn {
    display: none;
}
@media (min-width: 960px) {
    .l-footer__btn {
        display: block;
    }
}
.l-footer__btn-list[class] li a {
    border-radius: 3rem;
    color: var(--c-wht);
    background-image: var(--c-gra);
    display: block;
    text-align: center;
    padding: 0.75rem 1rem 0.625rem;
    width: 13.5rem;
}
.l-footer__btn-list[class] li a:hover {
    text-decoration: none;
}
.l-footer__info {
    background-color: var(--c-blk);
    padding-top: 0.75rem;
    padding-bottom: 0.625rem;
}
@media (min-width: 960px) {
    .l-footer__info-inner {
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center;
        -webkit-box-pack: justify;
            -ms-flex-pack: justify;
                justify-content: space-between;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
    }
}
@media (max-width: 767px) {
    .l-footer__link + * {
        margin-top: 0.5rem;
    }
}
.l-footer__link-list[class] {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}
@media (min-width: 960px) {
    .l-footer__link-list[class] {
        -webkit-box-pack: start;
            -ms-flex-pack: start;
                justify-content: flex-start;
    }
}
.l-footer__link-list[class] li a {
    position: relative;
    text-decoration: underline;
    text-decoration-color: var(--c-wht-light);
    color: var(--c-wht);
    font-size: 0.75rem;
}
.l-footer__link-list[class] li a[target=_blank] {
    background-position: right center;
    background-repeat: no-repeat;
    background-size: 1em auto;
    background-image: url("../img/ico_blank_wht.svg");
    padding-right: 1.5em;
}
.l-footer__link-list[class] li a:hover {
    text-decoration: none;
}
.l-footer__link-list[class] li + li {
    margin-left: 1.5rem;
}
.l-footer__copyright {
    color: var(--c-wht);
    text-align: center;
    text-transform: uppercase;
    letter-spacing: 0.16em;
    font-size: 0.75rem;
}
@media (min-width: 960px) {
    .l-footer__copyright {
        text-align: left;
    }
}

body[data-page-type=form] .l-footer__link, body[data-page-type=form] .l-footer__sitemap, body[data-page-type=form] .l-footer__cv {
    display: none;
}
body[data-page-type=form] .l-footer__info-inner, body[data-page-type=form] .l-footer__site-inner {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}
body[data-page-type=form] .l-footer__address, body[data-page-type=form] .l-footer__logo {
    text-align: center;
}
body[data-page-type=form] .l-footer__site {
    background-color: var(--c-pri-light);
    border-bottom-left-radius: 0 !important;
    border-bottom-right-radius: 0 !important;
    border-top-left-radius: 0 !important;
    padding-top: 5rem;
    padding-bottom: 5rem;
}
@media (max-width: 767px) {
    body[data-page-type=form] .l-footer__site {
        padding-top: 2.55rem;
        padding-bottom: 2.55rem;
    }
}

/* =====================================
 * コンテンツ幅
 * ================================== */
.l-container {
    max-width: calc(1200px + 2rem);
    margin-left: auto;
    margin-right: auto;
    padding-left: 1rem;
    padding-right: 1rem;
}
.l-container.-sm {
    max-width: calc(960px + 2rem);
}
.l-container.-xs {
    max-width: calc(800px + 2rem);
}
.l-container.-xxs {
    max-width: calc(600px + 2rem);
}
.l-container.-wide {
    max-width: 100%;
    padding-left: 0;
    padding-right: 0;
}
.l-container.-lg {
    max-width: calc(1440px - 1rem);
}
@media (max-width: 767px) {
    .l-container {
        max-width: 100%;
    }
    .l-container, .l-container.-lg, .l-container.-sm, .l-container.-xs, .l-container.-xxs {
        padding-left: 1.25rem;
        padding-right: 1.25rem;
    }
    .l-container:not(.-wide) .l-container {
        padding-left: 0;
        padding-right: 0;
    }
}

* + .l-main:has(.c-alink) {
    margin-top: 5rem;
}
.l-main + * {
    margin-top: 8rem;
}
@media (max-width: 767px) {
    .l-main + * {
        margin-top: 6rem;
    }
}
@media (min-width: 960px) {
    .l-main__inner.-col2 {
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
    }
}
@media (min-width: 960px) {
    .l-main__inner.-col2 .l-main__content {
        -ms-flex-negative: 0;
            flex-shrink: 0;
        -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
        -ms-flex-preferred-size: calc(100% - 260px);
            flex-basis: calc(100% - 260px);
        max-width: calc(100% - 260px);
        padding-right: 3rem;
    }
}
@media (min-width: 960px) {
    .l-main__sidebar {
        -ms-flex-negative: 0;
            flex-shrink: 0;
        -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
        -ms-flex-preferred-size: 260px;
            flex-basis: 260px;
        max-width: 260px;
    }
}
@media (max-width: 767px) {
    .l-main__sidebar {
        margin-top: 4rem;
    }
}

/* =====================================
 * 変数設定
 * ================================== */
/* =====================================
 * カラー変数
 * ================================== */
/*

--c-〇〇〇-darker:標準カラーよりやや暗め;
--c-〇〇〇-dark:標準カラーより少し暗め;
--c-〇〇〇:標準カラー;
--c-〇〇〇-lighter:標準カラーより少し薄め;
--c-〇〇〇-light:標準カラーよりやや薄め;

↓

--c-blk-darker:#000;
--c-blk-dark:#111;
--c-blk:#333;
--c-blk-lighter:#555;
--c-blk-light:#777;

*/
:root {
    --c-error:#FF0000;
    --c-mark:#fff9b1;
    --c-error-light:#ffe5e5;
    --c-mask:rgba(0, 0, 0, 0.64);
    --c-mask-light:rgba(0, 0, 0, 0.2);
    --c-wht:#ffffff;
    --c-wht-light:rgba(255, 255, 255, 0.5);
    --c-blk:#0E2B36;
    --c-pri-dark:#09A7AD;
    --c-pri:#07B2B9;
    --c-pri-light:#EBF9F9;
    --c-sec:#216B88;
    --c-third:#78DE94;
    --c-gra:linear-gradient(90deg, #216B88 0%, #07B2B9 50%, #90DCA5 100%);
    --c-gra02:linear-gradient(0deg, #216B88 0%, #07B2B9 50%, #90DCA5 100%);
    --c-gry-darker:#999999;
    --c-gry-dark:#ccc;
    --c-gry:#DDDCDC;
    --c-gry-light:#F7F7F7;
    --c-shadow:0 0 1.25rem rgba(7, 179, 185, 0.1);
}

/* =====================================
 * メディアクエリ
 * ================================== */
/* =====================================
 * extend用のclassをここに集約
 * ================================== */
.c-hover, .p-home-internship__bnr, .p-sitemap__list[class] ul li a, .p-sitemap__list[class] > li > a, .c-step-list02__btn a, .c-card-list04__title-wrap, .c-pickup-slider__next, .c-pickup-slider__prev, .c-pickup-slider__item, .c-pagetop__btn, .c-img-bnr, .c-btn[class] > *, .c-sidebar__bnr-item > *, .l-header__logo > *, .l-header__menu-secend-list[class] li a, .l-header__btn-list li a, .l-footer__logo > *, .l-footer__sitemap-list li a, .l-footer__sns-list li a, .l-footer__btn-list[class] li a {
    -webkit-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
}
@media (min-width: 960px) {
    .c-hover:hover, .p-home-internship__bnr:hover, .p-sitemap__list[class] ul li a:hover, .p-sitemap__list[class] > li > a:hover, .c-step-list02__btn a:hover, .c-card-list04__title-wrap:hover, .c-pickup-slider__next:hover, .c-pickup-slider__prev:hover, .c-pickup-slider__item:hover, .c-pagetop__btn:hover, .c-img-bnr:hover, .c-btn[class] > :hover, .c-sidebar__bnr-item > :hover, .l-header__logo > :hover, .l-header__menu-secend-list[class] li a:hover, .l-header__btn-list li a:hover, .l-footer__logo > :hover, .l-footer__sitemap-list li a:hover, .l-footer__sns-list li a:hover, .l-footer__btn-list[class] li a:hover {
        cursor: pointer;
        text-decoration: none !important;
        opacity: 0.6;
    }
}

.c-img {
    aspect-ratio: 16/9;
}
.c-img img {
    -o-object-fit: cover;
       object-fit: cover;
    height: 100%;
    width: 100%;
}

.c-no-img, .p-post-card__img {
    position: relative;
}
.c-no-img::before, .p-post-card__img::before {
    content: "";
    display: block;
    background-color: var(--c-gry-light);
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    position: absolute;
    z-index: -20;
    pointer-events: none;
}
.c-no-img::after, .p-post-card__img::after {
    content: "NO IMAGE";
    display: block;
    font-weight: bold;
    font-size: 1.5rem;
    text-align: center;
    position: absolute;
    z-index: -10;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    pointer-events: none;
    opacity: 0.24;
}

.c-all-link, .p-home-internship__bnr, .p-home-mv__bnr-item, .p-post-card__item, .p-post-list__item, .c-card-list05__item, .c-card-list04__title-wrap, .c-card-list01__item, .c-pickup-slider__item, .c-img-bnr {
    position: relative;
}
.c-all-link a::before, .p-home-internship__bnr a::before, .p-home-mv__bnr-item a::before, .p-post-card__item a::before, .p-post-list__item a::before, .c-card-list05__item a::before, .c-card-list04__title-wrap a::before, .c-card-list01__item a::before, .c-pickup-slider__item a::before, .c-img-bnr a::before {
    content: "";
    display: block;
    position: absolute;
    z-index: 100;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    width: 100%;
    height: 100%;
}

.c-radius-xs, .c-card-list05__comment, .c-card-list05__label, .c-pagetitle01__label, .c-tab-list__btn {
    border-radius: 0.25rem;
}

.c-radius-s, .p-home-mv__bnr-item, .p-about-vision__text, .p-works-schedule__text, .p-works-schedule__time, .p-works-schedule, .p-form-wrap__inner, .p-form input[type=email],
.p-form input[type=tel],
.p-form input[type=number],
.p-form input[type=text],
.p-form textarea,
.p-form select, .c-step-list02__comment, .c-step-list01__item, .c-card-list06__comment, .c-card-list04__item, .c-card-list04__headline, .c-card-list04::before, .c-card-list02__info, .c-card-list02__img, .c-text04 > *, .c-data02__item, .c-data01__item[data-label]:not([data-label=""])::before, .c-data01__item, .c-list08__item, .c-list07__item, .c-list06__item, .c-list06, .c-list05__item, .c-list03__desc, .c-list02__img,
.c-list01__img, .c-tab-trigger.-rev .c-tab-trigger__btn, .c-tab-trigger__btn, .c-img-text04__info-list[class] ul li, .c-img-text05__info,
.c-img-text04__info,
.c-img-text02__info,
.c-img-text01__info, .c-img-cta {
    border-radius: 0.625rem;
}

.c-radius-m, .p-home-internship__bnr, .p-home-gallery__list > * img, .p-about-message, .p-works-interview__img, .p-works-interview__bg img, .p-works-interview, img.asset-image, .c-step-list02__item, .c-card-list06__item, .c-card-list05__item, .c-card-list01__item, .c-keyword-slider, .c-list05__label,
.c-list04__label, .c-pickup-slider__pagination[class], .c-pickup-slider__img, .c-img-text03__img img, .c-img-text05__right img, .c-img-text05__left img,
.c-img-text04__right img,
.c-img-text04__left img,
.c-img-text02__right img,
.c-img-text02__left img,
.c-img-text01__right img,
.c-img-text01__left img, .c-img-bnr, .c-img img, .l-header__trigger-btn {
    border-radius: 1.875rem;
}
@media (max-width: 767px) {
    .c-radius-m, .p-home-internship__bnr, .p-home-gallery__list > * img, .p-about-message, .p-works-interview__img, .p-works-interview__bg img, .p-works-interview, img.asset-image, .c-step-list02__item, .c-card-list06__item, .c-card-list05__item, .c-card-list01__item, .c-keyword-slider, .c-list05__label,
    .c-list04__label, .c-pickup-slider__pagination[class], .c-pickup-slider__img, .c-img-text03__img img, .c-img-text05__right img, .c-img-text05__left img,
    .c-img-text04__right img,
    .c-img-text04__left img,
    .c-img-text02__right img,
    .c-img-text02__left img,
    .c-img-text01__right img,
    .c-img-text01__left img, .c-img-bnr, .c-img img, .l-header__trigger-btn {
        border-radius: 1rem;
    }
}

.c-radius-l, .p-home-culture__img-list, .c-alink__list a, .c-pagetitle01__img img, .c-btn[class] > * {
    border-radius: 5rem;
}
@media (max-width: 767px) {
    .c-radius-l, .p-home-culture__img-list, .c-alink__list a, .c-pagetitle01__img img, .c-btn[class] > * {
        border-radius: 3rem;
    }
}

.c-radius-xl, .p-home-pickup::before, .p-home-about::before, .l-footer__cv, body[data-page-type=form] .l-footer__site {
    border-radius: 7.5rem;
}
@media (max-width: 767px) {
    .c-radius-xl, .p-home-pickup::before, .p-home-about::before, .l-footer__cv, body[data-page-type=form] .l-footer__site {
        border-radius: 4rem;
    }
}

/* =====================================
 * スマホでメニューを展開状態になった時に、その下にマスクを敷く
 * ================================== */
.c-mask {
    display: none;
    background-color: var(--c-mask);
    position: absolute;
    z-index: 9999;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin-top: 4rem;
    display: none;
}
.c-mask.is-active {
    display: block;
}
@media (min-width: 960px) {
    .c-mask {
        display: none !important;
    }
}

.c-sidebar__section + .c-sidebar__section {
    margin-top: 3rem;
}
.c-sidebar__title {
    font-weight: bold;
}
.c-sidebar__title + * {
    margin-top: 1rem;
}
.c-sidebar__bnr-item + .c-sidebar__bnr-item {
    margin-top: 1rem;
}

.c-cat01__list li > * {
    -webkit-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
    border-bottom: 1px solid var(--c-gry);
    display: block;
    background-position: right center;
    background-position-x: calc(100% - 1rem);
    background-repeat: no-repeat;
    background-image: url(../img/ico_arr_right_pri.svg);
    background-size: 0.45em auto;
    padding: 1rem 1.5rem 1rem 1rem;
}
.c-cat01__list li > *, .c-cat01__list li > *:hover {
    text-decoration: none;
}
@media (min-width: 960px) {
    .c-cat01__list li > *:hover {
        background-color: var(--c-gry-light);
    }
}
.c-cat01__list li:first-child > * {
    border-top: 1px solid var(--c-gry);
}

.c-cat02__list {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin: -0.5rem 0 0 -0.5rem;
}
.c-cat02__list li {
    margin: 0.5rem 0 0 0.5rem;
}
.c-cat02__list li > * {
    text-align: center;
    -webkit-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
    border: 1px solid var(--c-gry);
    display: block;
    font-size: 0.875rem;
    padding: 0.25rem 0.75rem 0.125rem;
}
@media (min-width: 960px) {
    .c-cat02__list li > *:hover {
        background-color: var(--c-gry-light);
    }
}
@media (max-width: 767px) {
    .c-cat02__list li > * {
        font-size: 0.75rem;
    }
}
.c-cat02__list li a,
.c-cat02__list li a:hover {
    color: inherit;
    text-decoration: none;
}

.c-tag01__list {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin: -1rem 0 0 -1rem;
}
.c-tag01__list li {
    margin: 1rem 0 0 1rem;
}
.c-tag01__list li > * {
    text-decoration: none;
    display: inline-block;
    background-color: var(--c-gry-light);
    padding: 0.25rem 0.5rem;
}

.c-pager__list {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}
.c-pager__item[class] > * {
    -webkit-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
    display: inline-block;
    border: 1px solid var(--c-gry);
    text-align: center;
    height: 2.5rem;
    width: 2.5rem;
    padding-top: 0.375rem;
    text-decoration: none;
}
.c-pager__item[class] > *:hover {
    text-decoration: none;
}
@media (min-width: 960px) {
    .c-pager__item[class] > *:hover {
        border-color: var(--c-pri);
        background-color: var(--c-pri);
        color: var(--c-wht);
    }
}
.c-pager__item[class] span {
    border-color: var(--c-pri);
    background-color: var(--c-pri);
    color: var(--c-wht);
}
.c-pager__item[class].-skip span {
    background: none;
    border: none;
    color: inherit;
    margin-left: -0.5rem;
    margin-right: -0.5rem;
}
.c-pager__item[class].-prev > *, .c-pager__item[class].-next > * {
    background-size: 0.375em auto;
    background-repeat: no-repeat;
    background-position: center center;
}
.c-pager__item[class].-prev > * {
    background-image: url(../img/ico_arr_left_pri.svg);
}
.c-pager__item[class].-prev > *:hover {
    background-image: url(../img/ico_arr_left_wht.svg);
}
.c-pager__item[class].-next > * {
    background-image: url(../img/ico_arr_right_pri.svg);
}
.c-pager__item[class].-next > *:hover {
    background-image: url(../img/ico_arr_right_wht.svg);
}
.c-pager__item + .c-pager__item {
    margin-left: 0.5rem;
}

/* =====================================
 * 見出し
 * ================================== */
[class*=c-headline] {
    line-height: 1.5;
}

.c-headline01__sub {
    text-transform: uppercase;
}
.c-headline01__main {
    font-weight: bold;
    font-size: 2rem;
}

.toc_transparent {
    background-color: var(--c-gry-light);
    padding: 3rem 4rem;
}
@media (max-width: 767px) {
    .toc_transparent {
        padding: 1.5rem;
    }
}
.toc_title {
    font-weight: bold;
    font-size: 1.25rem;
}
.toc_title + * {
    margin-top: 0.75rem;
}
.toc_list[class] {
    padding-left: 1.5rem;
}
.toc_list[class] > li {
    list-style-type: disc;
}
.toc_list[class] li a {
    color: var(--c-blk);
}
.toc_list[class] li ul {
    margin-top: 0.5rem;
}
.toc_list[class] li + li {
    margin-top: 0.5rem;
}

/* =====================================
 * ボタン基準
 * ================================== */
.c-btn[class] {
    margin-left: auto;
    margin-right: auto;
}
@media (min-width: 768px) {
    .c-btn[class] {
        max-width: 300px;
    }
}
.c-btn[class].-lg {
    max-width: 100%;
}
.c-btn[class] > * {
    -webkit-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
    position: relative;
    display: block;
    text-decoration: none;
    background: var(--c-pri);
    line-height: 1.5;
    color: var(--c-wht);
    text-align: center;
    font-weight: bold;
    padding: 1.125rem 2rem 1.125rem;
}
@media (max-width: 767px) {
    .c-btn[class] > * {
        padding: 1.375rem 2rem;
    }
}
.c-btn[class] > *:after {
    content: "";
    display: block;
    background-position: right center;
    background-repeat: no-repeat;
    background-image: url(../img/ico_arr_right_wht.svg);
    background-size: 100% auto;
    width: 1em;
    height: 100%;
    position: absolute;
    top: 0;
    right: 0;
    margin-right: 1.25rem;
}
@media (max-width: 767px) {
    .c-btn[class] > *:after {
        width: 1.125em;
    }
}
.c-btn[class].-submit > * {
    padding: 0;
}
.c-btn[class].-submit > * input[type=submit] {
    width: 100%;
}
.c-btn[class].-submit > * {
    color: var(--c-wht);
    background-image: var(--c-gra);
}
.c-btn[class].-submit > * input[type=submit] {
    width: 100%;
    padding: 1.375rem 2rem;
}
@media (min-width: 768px) {
    .c-btn[class].-submit > * input[type=submit] {
        padding-top: 1.75rem;
        padding-bottom: 1.75rem;
    }
}
.c-btn[class].-submit > *::after {
    background-image: url("../img/ico_arr_right_wht.svg");
}
.c-btn[class].-submit:has(*.is-disabled) {
    pointer-events: none;
}
.c-btn[class].-submit:has(*.is-disabled):hover {
    cursor: none;
}
.c-btn[class].-submit:has(*.is-disabled) > * {
    background: var(--c-gry);
}
.c-btn[class].-wht > * {
    color: var(--c-pri);
    background-color: var(--c-wht);
}
.c-btn[class].-wht > *::after {
    background-image: url("../img/ico_arr_right_pri.svg");
}
.c-btn[class].-gra > * {
    color: var(--c-wht);
    background-image: var(--c-gra);
}
@media (min-width: 768px) {
    .c-btn[class].-gra > * {
        padding-top: 1.875rem;
        padding-bottom: 1.875rem;
    }
}
.c-btn[class].-gra > *::after {
    background-image: url("../img/ico_arr_right_wht.svg");
}
.c-btn[class].-blk > * {
    color: var(--c-wht);
    background-color: var(--c-blk);
}

.c-btn-text[class] > * {
    color: var(--c-pri);
    font-size: 0.875rem;
}
@media (min-width: 960px) {
    .c-btn-text[class] > * {
        font-size: 1rem;
    }
}
.c-btn-text > * {
    position: relative;
    text-decoration: underline;
    display: inline-block;
    padding-right: 1.375em;
}
@media (min-width: 768px) {
    .c-btn-text > *:hover {
        text-decoration: none;
    }
}
.c-btn-text > *::after {
    content: "";
    display: inline-block;
    position: absolute;
    top: 0;
    right: 0;
    width: 0.875em;
    height: 100%;
    background-position: center 40%;
    background-repeat: no-repeat;
    background-size: 100% auto;
    background-image: url("../img/ico_arr_right_pri.svg");
}
.c-btn-text.-wht[class] > * {
    color: var(--c-wht);
}
.c-btn-text.-wht[class] > *::after {
    background-image: url("../img/ico_arr_right_wht.svg");
}
.c-btn-text.-blk[class] > * {
    color: var(--c-blk);
}
.c-btn-text.-blk[class] > *::after {
    display: none;
}
.c-btn-text > *[target*=_blank]::after {
    background-size: 1em auto;
    background-image: url("../img/ico_blank.svg");
}
.c-btn-text > *[href*=".pdf"]::after, .c-btn-text > *[download]::after {
    background-position: center 0.125em;
    background-image: url("../img/ico_pdf.svg");
    background-size: 1em auto;
}

/* =====================================
 * 横並び
 * ================================== */
.c-flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
}
.c-flex__caption {
    text-align: center;
    font-size: 0.875rem;
}
* + .c-flex__caption {
    margin-top: 1rem;
}
.c-flex.-max2 {
    margin-left: -2rem;
}
@media (max-width: 767px) {
    .c-flex.-max2 {
        display: block;
        margin-left: 0;
    }
}
.c-flex.-max2 .c-flex__item {
    -ms-flex-preferred-size: calc(50% - 2rem);
        flex-basis: calc(50% - 2rem);
    max-width: calc(50% - 2rem);
    margin-left: 2rem;
}
.c-flex.-max2 .c-flex__item:nth-of-type(2) ~ * {
    margin-top: 2rem;
}
@media (max-width: 767px) {
    .c-flex.-max2 .c-flex__item, .c-flex.-max2 .c-flex__item:nth-of-type(2) ~ * {
        margin-top: 1.5rem;
    }
}
.c-flex.-max3 {
    margin-left: -2rem;
}
@media (max-width: 767px) {
    .c-flex.-max3 {
        display: block;
        margin-left: 0;
    }
}
.c-flex.-max3 .c-flex__item {
    -ms-flex-preferred-size: calc(33.3333333333% - 2rem);
        flex-basis: calc(33.3333333333% - 2rem);
    max-width: calc(33.3333333333% - 2rem);
    margin-left: 2rem;
}
.c-flex.-max3 .c-flex__item:nth-of-type(3) ~ * {
    margin-top: 2rem;
}
@media (max-width: 767px) {
    .c-flex.-max3 .c-flex__item, .c-flex.-max3 .c-flex__item:nth-of-type(3) ~ * {
        margin-top: 1.5rem;
    }
}
.c-flex.-max4 {
    margin-left: -2rem;
}
@media (max-width: 767px) {
    .c-flex.-max4 {
        margin-left: -1.5rem;
    }
}
.c-flex.-max4 .c-flex__item[class] {
    -ms-flex-preferred-size: calc(25% - 2rem);
        flex-basis: calc(25% - 2rem);
    max-width: calc(25% - 2rem);
    margin-left: 2rem;
}
@media (max-width: 767px) {
    .c-flex.-max4 .c-flex__item[class] {
        margin-left: 1.5rem;
    }
}
.c-flex.-max4 .c-flex__item[class]:nth-of-type(4) ~ * {
    margin-top: 2rem;
}
@media (max-width: 767px) {
    .c-flex.-max4 .c-flex__item[class], .c-flex.-max4 .c-flex__item[class]:nth-of-type(4) ~ * {
        margin-top: 1.5rem;
    }
}
@media (max-width: 767px) {
    .c-flex.-max4 .c-flex__item[class] {
        -ms-flex-preferred-size: calc(50% - 1.5rem);
            flex-basis: calc(50% - 1.5rem);
        max-width: calc(50% - 1.5rem);
    }
}
@media (max-width: 767px) {
    .c-flex.-max4 .c-flex__item[class]:nth-of-type(1), .c-flex.-max4 .c-flex__item[class]:nth-of-type(2) {
        margin-top: 0;
    }
}
.c-flex[class] .c-flex__item {
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -webkit-box-flex: 0;
    -ms-flex-positive: 0;
        flex-grow: 0;
}
@media (max-width: 767px) {
    .c-flex[class] .c-flex__item {
        -ms-flex-preferred-size: 100%;
            flex-basis: 100%;
        max-width: 100%;
        margin-left: 0;
    }
    .c-flex[class] .c-flex__item:first-child {
        margin-top: 0;
    }
    .c-flex[class] .c-flex__item img {
        display: block;
        margin: 0 auto;
    }
}

/* =====================================
 * 画像とテキスト配置
 * ================================== */
.c-img-center {
    max-width: 100%;
    margin-left: auto;
    margin-right: auto;
}
.c-img-center .c-img-center__img {
    display: block;
    text-align: center;
}

.c-img-caption, .wp-block-image .alignleft figcaption,
.wp-block-image .alignright figcaption,
.wp-block-image .aligncenter figcaption {
    text-align: center;
    font-size: 0.875rem;
}
* + .c-img-caption, .wp-block-image .alignleft * + figcaption,
.wp-block-image .alignright * + figcaption,
.wp-block-image .aligncenter * + figcaption {
    margin-top: 1rem;
}
@media (max-width: 767px) {
    .c-img-caption + *, .wp-block-image .alignleft figcaption + *,
    .wp-block-image .alignright figcaption + *,
    .wp-block-image .aligncenter figcaption + * {
        margin-top: 2.5rem;
    }
}

.c-img-scroll {
    position: relative;
    display: block;
    white-space: nowrap;
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
}
.c-img-scroll::after {
    content: "スクロールできます";
    text-align: center;
    font-size: 0.75rem;
    background-color: var(--c-wht);
    background-repeat: no-repeat;
    background-size: 2rem auto;
    background-position: center 1rem;
    background-image: url(../img/ico_scroll.svg);
    -webkit-box-shadow: 0 0 1rem rgba(0, 0, 0, 0.24);
            box-shadow: 0 0 1rem rgba(0, 0, 0, 0.24);
    -webkit-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
    padding: 4rem 1.25rem 0.5rem;
    position: absolute;
    z-index: 10;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(150%, -50%);
            transform: translate(150%, -50%);
    pointer-events: none;
    opacity: 0;
    visibility: hidden;
}
@media (min-width: 960px) {
    .c-img-scroll::after {
        display: none;
    }
}
.c-img-scroll img {
    min-width: 960px;
}
.c-img-scroll.is-show::after {
    -webkit-animation: table_scroll_show 3s ease 0.4s 1 alternate forwards running;
            animation: table_scroll_show 3s ease 0.4s 1 alternate forwards running;
}

.c-img-bnr {
    position: relative;
    overflow: hidden;
    max-width: 60rem;
    padding: 1.75rem;
}
.c-img-bnr::before {
    content: "";
    display: block;
    background: -webkit-gradient(linear, left top, right top, color-stop(40%, var(--c-sec)), to(rgba(0, 0, 0, 0)));
    background: linear-gradient(to right, var(--c-sec) 40%, rgba(0, 0, 0, 0));
    width: 75%;
    height: 100%;
    position: absolute;
    z-index: -5;
    top: 0;
    left: 0;
}
@media (min-width: 768px) {
    .c-img-bnr {
        padding: 2.5rem;
    }
}
.c-img-bnr__img {
    position: absolute;
    z-index: -10;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.c-img-bnr__img img {
    -o-object-fit: cover;
       object-fit: cover;
    height: 100%;
    width: 100%;
}
.c-img-bnr__title {
    color: var(--c-wht);
    line-height: 1.5;
    letter-spacing: 0.08em;
    font-weight: bold;
    font-size: 1.25rem;
}
.c-img-bnr__title a {
    text-decoration: none;
    color: inherit;
}
@media (min-width: 768px) {
    .c-img-bnr__title {
        font-size: 1.5rem;
    }
}
.c-img-bnr__title + * {
    margin-top: 1.5rem;
}
.c-img-bnr__desc {
    color: var(--c-wht);
}
@media (max-width: 767px) {
    .c-img-bnr__desc {
        font-size: 0.75rem;
    }
}
.c-img-bnr__desc + * {
    margin-top: 1.5rem;
}
.c-img-bnr__link * {
    font-size: 0.875rem;
}

.c-img-cta {
    background: var(--c-gra);
    padding: 1.25rem;
}
@media (min-width: 768px) {
    .c-img-cta {
        padding: 1.5rem;
    }
}
.c-img-cta__desc {
    text-align: center;
    color: var(--c-wht);
}
.c-img-cta__desc + * {
    margin-top: 1rem;
}
@media (min-width: 768px) {
    .c-img-cta__btn[class] > * {
        max-width: 20rem;
    }
}
@media (min-width: 768px) {
    .c-img-cta__btn[class] a {
        padding-top: 1.875rem;
        padding-bottom: 1.875rem;
    }
}

.c-img-text05,
.c-img-text04,
.c-img-text02,
.c-img-text01 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 1.5rem;
}
.c-img-text05.-list-box,
.c-img-text04.-list-box,
.c-img-text02.-list-box,
.c-img-text01.-list-box {
    display: block;
}
@media (max-width: 767px) {
    .c-img-text05,
    .c-img-text04,
    .c-img-text02,
    .c-img-text01 {
        display: block;
    }
}
@media (min-width: 960px) {
    .c-img-text05,
    .c-img-text04,
    .c-img-text02,
    .c-img-text01 {
        gap: 2.5rem;
    }
}
@media (max-width: 767px) {
    .c-img-text05.-rev-sp,
    .c-img-text04.-rev-sp,
    .c-img-text02.-rev-sp,
    .c-img-text01.-rev-sp {
        -webkit-box-orient: vertical;
        -webkit-box-direction: reverse;
            -ms-flex-direction: column-reverse;
                flex-direction: column-reverse;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
    }
}
@media (min-width: 768px) {
    .c-img-text05:has(.c-img-text05__right,
    .c-img-text04__right,
    .c-img-text02__right,
    .c-img-text01__right),
    .c-img-text04:has(.c-img-text05__right,
    .c-img-text04__right,
    .c-img-text02__right,
    .c-img-text01__right),
    .c-img-text02:has(.c-img-text05__right,
    .c-img-text04__right,
    .c-img-text02__right,
    .c-img-text01__right),
    .c-img-text01:has(.c-img-text05__right,
    .c-img-text04__right,
    .c-img-text02__right,
    .c-img-text01__right) {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: reverse;
            -ms-flex-direction: row-reverse;
                flex-direction: row-reverse;
    }
}
@media (min-width: 768px) {
    .c-img-text05__text,
    .c-img-text04__text,
    .c-img-text02__text,
    .c-img-text01__text {
        -ms-flex-negative: 1;
            flex-shrink: 1;
        -webkit-box-flex: 1;
            -ms-flex-positive: 1;
                flex-grow: 1;
    }
}
@media (max-width: 767px) {
    .c-img-text05.-rev-sp .c-img-text05__text,
    .c-img-text05.-rev-sp .c-img-text04__text,
    .c-img-text05.-rev-sp .c-img-text02__text,
    .c-img-text05.-rev-sp .c-img-text01__text,
    .c-img-text04.-rev-sp .c-img-text05__text,
    .c-img-text04.-rev-sp .c-img-text04__text,
    .c-img-text04.-rev-sp .c-img-text02__text,
    .c-img-text04.-rev-sp .c-img-text01__text,
    .c-img-text02.-rev-sp .c-img-text05__text,
    .c-img-text02.-rev-sp .c-img-text04__text,
    .c-img-text02.-rev-sp .c-img-text02__text,
    .c-img-text02.-rev-sp .c-img-text01__text,
    .c-img-text01.-rev-sp .c-img-text05__text,
    .c-img-text01.-rev-sp .c-img-text04__text,
    .c-img-text01.-rev-sp .c-img-text02__text,
    .c-img-text01.-rev-sp .c-img-text01__text {
        margin-top: 0;
    }
}
.c-img-text05__title,
.c-img-text04__title,
.c-img-text02__title,
.c-img-text01__title {
    line-height: 1.5;
    color: var(--c-pri);
    font-weight: bold;
    font-size: 1.25rem;
}
.c-img-text05__title + *,
.c-img-text04__title + *,
.c-img-text02__title + *,
.c-img-text01__title + * {
    margin-top: 1.5rem;
}
@media (max-width: 767px) {
    .c-img-text05__title + *,
    .c-img-text04__title + *,
    .c-img-text02__title + *,
    .c-img-text01__title + * {
        margin-top: 1.125rem;
    }
}
.c-img-text05__desc > * + *,
.c-img-text04__desc > * + *,
.c-img-text02__desc > * + *,
.c-img-text01__desc > * + * {
    margin-top: 1.5rem;
}
.c-img-text05__desc p:has(strong) + ul,
.c-img-text04__desc p:has(strong) + ul,
.c-img-text02__desc p:has(strong) + ul,
.c-img-text01__desc p:has(strong) + ul {
    margin-top: 0.25rem;
}
.c-img-text05__desc + *,
.c-img-text04__desc + *,
.c-img-text02__desc + *,
.c-img-text01__desc + * {
    margin-top: 1.5rem;
}
@media (max-width: 767px) {
    .c-img-text05__desc + *,
    .c-img-text04__desc + *,
    .c-img-text02__desc + *,
    .c-img-text01__desc + * {
        margin-top: 1rem;
    }
}
.c-img-text05__right + *, .c-img-text05__left + *,
.c-img-text04__right + *,
.c-img-text04__left + *,
.c-img-text02__right + *,
.c-img-text02__left + *,
.c-img-text01__right + *,
.c-img-text01__left + * {
    margin-top: 2.5rem;
}
@media (min-width: 768px) {
    .c-img-text05__right + *, .c-img-text05__left + *,
    .c-img-text04__right + *,
    .c-img-text04__left + *,
    .c-img-text02__right + *,
    .c-img-text02__left + *,
    .c-img-text01__right + *,
    .c-img-text01__left + * {
        margin-top: 0;
    }
}
@media (max-width: 767px) {
    .c-img-text05__right, .c-img-text05__left,
    .c-img-text04__right,
    .c-img-text04__left,
    .c-img-text02__right,
    .c-img-text02__left,
    .c-img-text01__right,
    .c-img-text01__left {
        text-align: center;
        max-width: 100%;
    }
}
@media (min-width: 768px) {
    .c-img-text05__right, .c-img-text05__left,
    .c-img-text04__right,
    .c-img-text04__left,
    .c-img-text02__right,
    .c-img-text02__left,
    .c-img-text01__right,
    .c-img-text01__left {
        -ms-flex-negative: 0;
            flex-shrink: 0;
        -webkit-box-flex: 0;
            -ms-flex-positive: 0;
                flex-grow: 0;
        max-width: 50%;
    }
}
@media (max-width: 767px) {
    .c-img-text05__right img, .c-img-text05__left img,
    .c-img-text04__right img,
    .c-img-text04__left img,
    .c-img-text02__right img,
    .c-img-text02__left img,
    .c-img-text01__right img,
    .c-img-text01__left img {
        width: auto;
    }
}
.c-img-text05__info-title,
.c-img-text04__info-title,
.c-img-text02__info-title,
.c-img-text01__info-title {
    color: var(--c-pri);
    font-weight: bold;
    font-size: 1.125rem;
}
.c-img-text05__info-title + *,
.c-img-text04__info-title + *,
.c-img-text02__info-title + *,
.c-img-text01__info-title + * {
    margin-top: 0.5rem;
}
.c-img-text05__info-list,
.c-img-text04__info-list,
.c-img-text02__info-list,
.c-img-text01__info-list {
    color: var(--c-pri);
}
.c-img-text05__info-list ul,
.c-img-text04__info-list ul,
.c-img-text02__info-list ul,
.c-img-text01__info-list ul {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 0 2.5rem;
}
@media (min-width: 768px) {
    .c-img-text05__info-list ul li + li,
    .c-img-text04__info-list ul li + li,
    .c-img-text02__info-list ul li + li,
    .c-img-text01__info-list ul li + li {
        margin-top: 0 !important;
    }
}
.c-img-text05.-list .c-img-text05__info-list ul,
.c-img-text05.-list .c-img-text04__info-list ul,
.c-img-text05.-list .c-img-text02__info-list ul,
.c-img-text05.-list .c-img-text01__info-list ul,
.c-img-text04.-list .c-img-text05__info-list ul,
.c-img-text04.-list .c-img-text04__info-list ul,
.c-img-text04.-list .c-img-text02__info-list ul,
.c-img-text04.-list .c-img-text01__info-list ul,
.c-img-text02.-list .c-img-text05__info-list ul,
.c-img-text02.-list .c-img-text04__info-list ul,
.c-img-text02.-list .c-img-text02__info-list ul,
.c-img-text02.-list .c-img-text01__info-list ul,
.c-img-text01.-list .c-img-text05__info-list ul,
.c-img-text01.-list .c-img-text04__info-list ul,
.c-img-text01.-list .c-img-text02__info-list ul,
.c-img-text01.-list .c-img-text01__info-list ul {
    display: block;
}
.c-img-text05__info,
.c-img-text04__info,
.c-img-text02__info,
.c-img-text01__info {
    background-color: var(--c-pri-light);
    padding: 1rem 1.5rem;
}
.c-img-text05__info + *,
.c-img-text04__info + *,
.c-img-text02__info + *,
.c-img-text01__info + * {
    margin-top: 1rem;
}
@media (min-width: 768px) {
    .c-img-text05.-list-box .c-img-text05__info,
    .c-img-text05.-list-box .c-img-text04__info,
    .c-img-text05.-list-box .c-img-text02__info,
    .c-img-text05.-list-box .c-img-text01__info,
    .c-img-text04.-list-box .c-img-text05__info,
    .c-img-text04.-list-box .c-img-text04__info,
    .c-img-text04.-list-box .c-img-text02__info,
    .c-img-text04.-list-box .c-img-text01__info,
    .c-img-text02.-list-box .c-img-text05__info,
    .c-img-text02.-list-box .c-img-text04__info,
    .c-img-text02.-list-box .c-img-text02__info,
    .c-img-text02.-list-box .c-img-text01__info,
    .c-img-text01.-list-box .c-img-text05__info,
    .c-img-text01.-list-box .c-img-text04__info,
    .c-img-text01.-list-box .c-img-text02__info,
    .c-img-text01.-list-box .c-img-text01__info {
        padding: 1.5rem 2.5rem;
    }
}
.c-img-text05.-list-box .c-img-text05__info-list ul,
.c-img-text05.-list-box .c-img-text04__info-list ul,
.c-img-text05.-list-box .c-img-text02__info-list ul,
.c-img-text05.-list-box .c-img-text01__info-list ul,
.c-img-text04.-list-box .c-img-text05__info-list ul,
.c-img-text04.-list-box .c-img-text04__info-list ul,
.c-img-text04.-list-box .c-img-text02__info-list ul,
.c-img-text04.-list-box .c-img-text01__info-list ul,
.c-img-text02.-list-box .c-img-text05__info-list ul,
.c-img-text02.-list-box .c-img-text04__info-list ul,
.c-img-text02.-list-box .c-img-text02__info-list ul,
.c-img-text02.-list-box .c-img-text01__info-list ul,
.c-img-text01.-list-box .c-img-text05__info-list ul,
.c-img-text01.-list-box .c-img-text04__info-list ul,
.c-img-text01.-list-box .c-img-text02__info-list ul,
.c-img-text01.-list-box .c-img-text01__info-list ul {
    display: block;
}

@media (min-width: 768px) {
    .c-img-text02 {
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center;
        gap: 1.25rem;
    }
}
.c-img-text02.-top {
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
}
@media (min-width: 768px) {
    .c-img-text02:has(.c-img-text02__right.-half) {
        gap: 1.5rem;
    }
}
@media (min-width: 960px) {
    .c-img-text02:has(.c-img-text02__right.-half) {
        gap: 5rem;
    }
}
.c-img-text02__title {
    font-size: 1.5rem;
}
@media (max-width: 767px) {
    .c-img-text02__title {
        font-size: 1.25rem;
    }
}
@media (min-width: 960px) {
    .c-img-text02__right {
        margin-right: -3.75rem;
    }
}
@media (min-width: 768px) {
    .c-img-text02__left.-half, .c-img-text02__right.-half {
        margin-right: 0;
        -ms-flex-preferred-size: 50%;
            flex-basis: 50%;
        max-width: 50%;
    }
}
.c-img-text02__comment {
    font-size: 1.25rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 2rem;
}
@media (max-width: 767px) {
    .c-img-text02__comment {
        font-size: 1.125rem;
        gap: 1.25rem;
    }
}
.c-img-text02__comment > * {
    font-size: 2rem;
}
@media (max-width: 767px) {
    .c-img-text02__comment > * {
        font-size: 1.5rem;
    }
}
.c-img-text02__desc > * + * {
    margin-top: 0.75rem;
}

@media (min-width: 960px) {
    .c-img-text03 {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        gap: 2.5rem;
    }
}
@media (min-width: 960px) {
    .c-img-text03.-rev {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: reverse;
            -ms-flex-direction: row-reverse;
                flex-direction: row-reverse;
    }
}
.c-img-text03__img {
    text-align: center;
}
.c-img-text03__img + * {
    margin-top: 1.5rem;
}
@media (min-width: 960px) {
    .c-img-text03__img {
        -ms-flex-negative: 0;
            flex-shrink: 0;
        -webkit-box-flex: 0;
            -ms-flex-positive: 0;
                flex-grow: 0;
        max-width: 50%;
    }
    .c-img-text03__img + * {
        margin-top: 0;
    }
}
.c-img-text03__item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}
.c-img-text03__item + .c-img-text03__item {
    margin-top: 2.5rem;
}
@media (max-width: 767px) {
    .c-img-text03__item + .c-img-text03__item {
        margin-top: 1.75rem;
    }
}
.c-img-text03__ico-wrap {
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    -ms-flex-preferred-size: 5rem;
        flex-basis: 5rem;
    max-width: 5rem;
}
.c-img-text03__desc {
    -ms-flex-negative: 1;
        flex-shrink: 1;
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
}
.c-img-text03__ico {
    border-radius: 50%;
    overflow: hidden;
    width: 3.5rem;
    height: 3.5rem;
}
.c-img-text03__ico img {
    -o-object-fit: cover;
       object-fit: cover;
    height: 100%;
    width: 100%;
}
.c-img-text03__ico + * {
    margin-top: 0.25rem;
}
.c-img-text03__label {
    white-space: nowrap;
    text-align: center;
    font-weight: bold;
    width: 3.5rem;
}

@media (min-width: 768px) {
    .c-img-text04__title {
        font-size: 1.75rem;
    }
}
.c-img-text04__info-list[class] ul {
    list-style-type: none;
    padding-left: 0;
    gap: 0.5rem;
}
.c-img-text04__info-list[class] ul li {
    background-color: var(--c-wht);
    color: var(--c-blk);
    padding: 0.25rem 0.5rem 1px;
}
.c-img-text04__right {
    position: relative;
    width: 100%;
    height: calc(100vw - 2.5rem);
}
@media (min-width: 768px) {
    .c-img-text04__right {
        width: 400px;
        height: 400px;
    }
}
.c-img-text04__slider-list {
    position: relative;
    overflow: hidden;
    width: 100%;
    height: 100%;
}
.c-img-text04__slider-item {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    -webkit-animation: slider-slide 16s infinite;
            animation: slider-slide 16s infinite;
}
.c-img-text04__slider-item img {
    -o-object-fit: cover;
       object-fit: cover;
    height: 100%;
    width: 100%;
}
.c-img-text04.-max5 .c-img-text04__slider-item {
    -webkit-animation: slider-slide-max5 20s infinite;
            animation: slider-slide-max5 20s infinite;
}
.c-img-text04__slider-item:nth-child(1) {
    z-index: 5;
    -webkit-animation-delay: 0s !important;
            animation-delay: 0s !important;
}
.c-img-text04__slider-item:nth-child(2) {
    z-index: 4;
    -webkit-animation-delay: 4s !important;
            animation-delay: 4s !important;
}
.c-img-text04__slider-item:nth-child(3) {
    z-index: 3;
    -webkit-animation-delay: 8s !important;
            animation-delay: 8s !important;
}
.c-img-text04__slider-item:nth-child(4) {
    z-index: 2;
    -webkit-animation-delay: 12s !important;
            animation-delay: 12s !important;
}
.c-img-text04__slider-item:nth-child(5) {
    z-index: 1;
    -webkit-animation-delay: 16s !important;
            animation-delay: 16s !important;
}
.c-img-text04__doc-list {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 1rem;
    position: absolute;
    z-index: 10;
    bottom: 0;
    left: 0;
    width: 100%;
    margin-bottom: 1.25rem;
}
.c-img-text04__doc-list span {
    display: block;
    border-radius: 50%;
    background-color: var(--c-wht);
    width: 0.5rem;
    height: 0.5rem;
    -webkit-animation: slider-doc 16s infinite;
            animation: slider-doc 16s infinite;
}
.c-img-text04__doc-list span:nth-child(1) {
    z-index: 4;
    -webkit-animation-delay: 0s;
            animation-delay: 0s;
}
.c-img-text04__doc-list span:nth-child(2) {
    z-index: 3;
    -webkit-animation-delay: 4s;
            animation-delay: 4s;
}
.c-img-text04__doc-list span:nth-child(3) {
    z-index: 2;
    -webkit-animation-delay: 8s;
            animation-delay: 8s;
}
.c-img-text04__doc-list span:nth-child(4) {
    z-index: 1;
    -webkit-animation-delay: 12s;
            animation-delay: 12s;
}

@-webkit-keyframes slider-slide {
    0% {
        opacity: 0;
    }
    10% {
        opacity: 1;
    }
    30% {
        opacity: 1;
    }
    40% {
        opacity: 0;
    }
    100% {
        opacity: 0;
    }
}

@keyframes slider-slide {
    0% {
        opacity: 0;
    }
    10% {
        opacity: 1;
    }
    30% {
        opacity: 1;
    }
    40% {
        opacity: 0;
    }
    100% {
        opacity: 0;
    }
}
@-webkit-keyframes slider-slide-max5 {
    0% {
        opacity: 0;
    }
    10% {
        opacity: 1;
    }
    20% {
        opacity: 1;
    }
    30% {
        opacity: 0;
    }
    100% {
        opacity: 0;
    }
}
@keyframes slider-slide-max5 {
    0% {
        opacity: 0;
    }
    10% {
        opacity: 1;
    }
    20% {
        opacity: 1;
    }
    30% {
        opacity: 0;
    }
    100% {
        opacity: 0;
    }
}
@-webkit-keyframes slider-doc {
    0% {
        background-color: var(--c-wht);
    }
    10% {
        background-color: var(--c-pri);
    }
    30% {
        background-color: var(--c-pri);
    }
    40% {
        background-color: var(--c-wht);
    }
    100% {
        background-color: var(--c-wht);
    }
}
@keyframes slider-doc {
    0% {
        background-color: var(--c-wht);
    }
    10% {
        background-color: var(--c-pri);
    }
    30% {
        background-color: var(--c-pri);
    }
    40% {
        background-color: var(--c-wht);
    }
    100% {
        background-color: var(--c-wht);
    }
}
.c-img-text05 {
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
}
.c-img-text05 + .c-img-text05 {
    border-top: 1px solid var(--c-gry);
    margin-top: 3.5rem;
    padding-top: 3.5rem;
}
.c-img-text05__subtitle {
    display: inline-block;
    background-color: var(--c-pri);
    color: var(--c-wht);
    line-height: 1.5;
    font-size: 0.875rem;
    padding: 0.375rem 1rem 0.125rem;
}
@media (min-width: 768px) {
    .c-img-text05__subtitle {
        font-size: 1.125rem;
    }
}
.c-img-text05__subtitle + * {
    margin-top: 1rem;
}
.c-img-text05__title {
    font-size: 1.5rem;
}
@media (min-width: 768px) {
    .c-img-text05__title {
        font-size: 1.75rem;
    }
}
.c-img-text05__title[data-label] {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 1rem;
}
.c-img-text05__title[data-label]::before {
    content: attr(data-label);
    letter-spacing: 0.08em;
    background-color: var(--c-pri);
    color: var(--c-wht);
    font-weight: bold;
    font-size: 1.125rem;
    padding: 0.25rem 0.5rem;
}
.c-img-text05__info + * {
    margin-top: 1.5rem;
}
@media (max-width: 767px) {
    .c-img-text05__info + * {
        margin-top: 1rem;
    }
}
.c-img-text05__info-title {
    background-repeat: no-repeat;
    background-size: 1.5rem auto;
    background-position: left center;
    background-image: url(../img/ico_point.svg);
    padding-left: 2rem;
}
.c-img-text05__info-list ul {
    display: block;
}
.c-img-text05__info-list ul li + li {
    margin-top: 0.125rem !important;
}
.c-img-text05__left, .c-img-text05__right {
    position: relative;
}
@media (max-width: 767px) {
    .c-img-text05__left + *:has(.c-img-text05__subtitle), .c-img-text05__right + *:has(.c-img-text05__subtitle) {
        margin-top: 3.5rem;
    }
}
.c-img-text05__img {
    position: absolute;
    z-index: 1;
    bottom: 0;
    right: 0;
    -webkit-transform: translateY(50%);
            transform: translateY(50%);
}
.c-img-text05__img img {
    border-radius: 0;
    max-width: 35%;
    -webkit-transform: translateX(85%);
            transform: translateX(85%);
}
@media (min-width: 768px) {
    .c-img-text05__img img {
        max-width: 75%;
        -webkit-transform: translateX(12.5%);
                transform: translateX(12.5%);
    }
}
@media (min-width: 960px) {
    .c-img-text05__img img {
        max-width: 100%;
        -webkit-transform: translateX(0);
                transform: translateX(0);
    }
}

/* =====================================
 * 表組み
 * ================================== */
.c-table {
    border-right: 1px solid var(--c-pri-light);
    border-bottom: 1px solid var(--c-pri-light);
    width: 100%;
}
* + .c-table {
    margin-top: 3rem;
}
.c-table th,
.c-table td {
    background-clip: padding-box;
}
.c-table th {
    width: 240px;
    background: var(--c-pri-light);
    border-top: 1px solid var(--c-wht);
    border-left: 1px solid var(--c-pri-light);
    font-weight: bold;
    color: var(--c-pri);
}
@media (max-width: 767px) {
    .c-table th {
        text-align: center;
    }
}
.c-table td {
    background-color: var(--c-wht);
    border-top: 1px solid var(--c-pri-light);
    border-left: 1px solid var(--c-pri-light);
}
.c-table th,
.c-table td {
    padding: 1.5rem 2.5rem;
    vertical-align: middle;
}
@media (max-width: 767px) {
    .c-table th,
    .c-table td {
        display: block;
        width: 100%;
        padding: 1.125rem 1.125rem 1rem;
    }
}
@media (max-width: 767px) {
    .c-table.-wide tr > *:first-child,
    .c-table.-wide th {
        width: auto;
    }
}
@media (max-width: 767px) {
    .c-table.-wide th,
    .c-table.-wide td {
        width: auto;
        display: table-cell;
    }
}
.c-table.-side tr > *:first-child {
    background: none;
}
.c-table.-side tr:first-child > * {
    background: var(--c-gry-light);
}
.c-table.-side th,
.c-table.-side td {
    width: auto;
}
@media (max-width: 767px) {
    .c-table.-side th,
    .c-table.-side td {
        width: auto;
    }
}
.c-table.-scroll {
    position: relative;
    display: block;
    white-space: nowrap;
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
}
.c-table.-scroll::after {
    content: "スクロールできます";
    text-align: center;
    font-size: 0.75rem;
    background-color: var(--c-wht);
    background-repeat: no-repeat;
    background-size: 2rem auto;
    background-position: center 1rem;
    background-image: url(../img/ico_scroll.svg);
    -webkit-box-shadow: 0 0 1rem rgba(0, 0, 0, 0.24);
            box-shadow: 0 0 1rem rgba(0, 0, 0, 0.24);
    -webkit-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
    padding: 4rem 1.25rem 0.5rem;
    position: absolute;
    z-index: 10;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(150%, -50%);
            transform: translate(150%, -50%);
    pointer-events: none;
    opacity: 0;
    visibility: hidden;
}
@media (min-width: 960px) {
    .c-table.-scroll::after {
        display: none;
    }
}
@media (max-width: 767px) {
    .c-table.-scroll tbody {
        min-width: 640px;
    }
}
@media (min-width: 768px) {
    .c-table.-scroll tbody {
        min-width: 960px;
    }
}
@media (max-width: 767px) {
    .c-table.-scroll th,
    .c-table.-scroll td {
        display: table-cell;
        width: auto;
    }
}
.c-table.-scroll.-scroll.is-show::after {
    -webkit-animation: table_scroll_show 3s ease 0.4s 1 alternate forwards running;
            animation: table_scroll_show 3s ease 0.4s 1 alternate forwards running;
}

@-webkit-keyframes table_scroll_show {
    0% {
        visibility: inherit;
        opacity: 1;
        -webkit-transform: translate(150%, -50%);
                transform: translate(150%, -50%);
    }
    40% {
        visibility: inherit;
        opacity: 1;
        -webkit-transform: translate(-50%, -50%);
                transform: translate(-50%, -50%);
    }
    41% {
        visibility: inherit;
        opacity: 1;
        -webkit-transform: translate(-50%, -50%);
                transform: translate(-50%, -50%);
    }
    100% {
        visibility: hidden;
        opacity: 0;
        -webkit-transform: translate(-50%, -50%);
                transform: translate(-50%, -50%);
    }
}

@keyframes table_scroll_show {
    0% {
        visibility: inherit;
        opacity: 1;
        -webkit-transform: translate(150%, -50%);
                transform: translate(150%, -50%);
    }
    40% {
        visibility: inherit;
        opacity: 1;
        -webkit-transform: translate(-50%, -50%);
                transform: translate(-50%, -50%);
    }
    41% {
        visibility: inherit;
        opacity: 1;
        -webkit-transform: translate(-50%, -50%);
                transform: translate(-50%, -50%);
    }
    100% {
        visibility: hidden;
        opacity: 0;
        -webkit-transform: translate(-50%, -50%);
                transform: translate(-50%, -50%);
    }
}
.c-tab-trigger {
    position: relative;
    z-index: 10;
}
.c-tab-trigger__list {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 0.5rem;
}
.c-tab-trigger__list > * {
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    -ms-flex-preferred-size: calc(50% - 0.25rem);
        flex-basis: calc(50% - 0.25rem);
    max-width: calc(50% - 0.25rem);
}
@media (min-width: 768px) {
    .c-tab-trigger__list > * {
        -ms-flex-preferred-size: calc(25% - 0.375rem);
            flex-basis: calc(25% - 0.375rem);
        max-width: calc(25% - 0.375rem);
    }
}
.c-tab-trigger__list li:nth-of-type(4) *,
.c-tab-trigger__list li:nth-of-type(1) * {
    border-color: var(--c-pri);
    color: var(--c-pri);
}
.c-tab-trigger__list li:nth-of-type(2) * {
    border-color: var(--c-sec);
    color: var(--c-sec);
}
.c-tab-trigger__list li:nth-of-type(3) * {
    border-color: var(--c-third);
    color: var(--c-third);
}
@media (min-width: 768px) {
    .c-tab-trigger.-col2 .c-tab-trigger__list > * {
        -ms-flex-preferred-size: calc(50% - 0.25rem);
            flex-basis: calc(50% - 0.25rem);
        max-width: calc(50% - 0.25rem);
    }
}
.c-tab-trigger__btn {
    -webkit-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
    width: 100%;
    border-style: solid;
    border-width: 1px;
    border-top-width: 0.625rem;
    background-color: var(--c-wht);
    text-align: center;
    line-height: 1.125;
    font-weight: bold;
    font-size: 1.25rem;
    height: 4.5rem;
    opacity: 0.4;
}
@media (max-width: 767px) {
    .c-tab-trigger__btn {
        border-width: 1px;
        -webkit-box-shadow: var(--c-shadow);
                box-shadow: var(--c-shadow);
        border-radius: 5rem !important;
        font-size: calc(0.75rem + 1px);
        height: 3rem;
    }
}
@media (min-width: 768px) {
    .c-tab-trigger__btn {
        border-bottom-left-radius: 0;
        border-bottom-right-radius: 0;
        padding-top: 0.5rem;
    }
}
.c-tab-trigger__btn:hover, .c-tab-trigger__btn.is-active {
    opacity: 1;
}
.c-tab-trigger__btn span {
    font-size: 80%;
}
.c-tab-trigger__btn.-pri {
    border-color: var(--c-pri);
    color: var(--c-pri);
}
.c-tab-trigger__btn.-sec {
    border-color: var(--c-sec);
    color: var(--c-sec);
}
.c-tab-trigger__btn.-third {
    border-color: var(--c-third);
    color: var(--c-third);
}
@media (min-width: 768px) {
    .c-tab-trigger:not(.-rev) .c-tab-trigger__btn {
        border-bottom: 1px solid var(--c-wht);
    }
}
@media (min-width: 768px) {
    .c-tab-trigger.-lg .c-tab-trigger__btn {
        line-height: 1.5;
        height: 6.5rem;
    }
}
.c-tab-trigger.-rev[class] {
    margin-top: -1px;
}
@media (max-width: 767px) {
    .c-tab-trigger.-rev[class] {
        margin-top: 1.25rem;
    }
}
@media (min-width: 768px) {
    .c-tab-trigger.-rev .c-tab-trigger__btn {
        border-top: 1px solid var(--c-wht);
        border-top-left-radius: 0;
        border-top-right-radius: 0;
        border-width: 1px;
        border-bottom-width: 0.625rem;
    }
}

.c-tab-content {
    position: relative;
    z-index: -1;
    display: none;
    border-style: solid;
    border-width: 1px;
    padding: 3.5rem;
}
@media (max-width: 767px) {
    .c-tab-content {
        padding: 1.5rem;
    }
}
.c-tab-content[class] {
    margin-top: -1px;
}
@media (max-width: 767px) {
    .c-tab-content[class] {
        margin-top: 1.75rem;
    }
}
.c-tab-content.is-active {
    display: block;
    z-index: 1;
}
.c-tab-content, .c-tab-content + .c-tab-content + .c-tab-content + .c-tab-content, .c-tab-content.-pri {
    border-color: var(--c-pri);
}
.c-tab-content + .c-tab-content, .c-tab-content.-sec {
    border-color: var(--c-sec);
}
.c-tab-content + .c-tab-content + .c-tab-content, .c-tab-content.-third {
    border-color: var(--c-third);
}

.c-tab-list {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 1rem;
}
@media (max-width: 767px) {
    .c-tab-list {
        gap: 0.5rem;
    }
}
.c-tab-list__title {
    font-weight: bold;
    font-size: 0.875rem;
}
.c-tab-list__list {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 1rem;
}
@media (max-width: 767px) {
    .c-tab-list__list {
        gap: 0.5rem;
    }
}
.c-tab-list__btn {
    -webkit-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
    border: 1px solid var(--c-pri);
    background-color: var(--c-wht);
    padding: 0.375rem 1.5rem 0.25rem;
}
@media (max-width: 767px) {
    .c-tab-list__btn {
        padding-left: 1rem;
        padding-right: 1rem;
    }
}
@media (min-width: 768px) {
    .c-tab-list__btn:hover {
        color: var(--c-wht);
        background-color: var(--c-pri);
    }
}
.c-tab-list__btn.is-active {
    color: var(--c-wht);
    background-color: var(--c-pri);
}

*[data-tab-list-content].is-hidden {
    display: none;
}

/* =====================================
 * ページトップへ戻る
 * ================================== */
.c-pagetop {
    -webkit-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
    position: fixed;
    z-index: 1;
    bottom: 0;
    right: 0;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
}
.c-pagetop.is-active {
    opacity: 1;
    visibility: inherit;
    pointer-events: auto;
}
.c-pagetop__btn {
    background-color: var(--c-pri);
    background-repeat: no-repeat;
    background-size: 0.875rem auto;
    background-position: center center;
    background-image: url(../img/ico_arr_up_wht.svg);
    font-size: 0;
    height: 3.5rem;
    width: 3.5rem;
}

@media (min-width: 768px) {
    .c-pickup-slider {
        overflow: inherit;
    }
}
.c-pickup-slider__list {
    height: auto;
}
.c-pickup-slider__item {
    height: auto;
    padding-bottom: 3.25rem;
}
@media (min-width: 768px) {
    .c-pickup-slider__item {
        width: 320px !important;
    }
}
@media (min-width: 960px) {
    .c-pickup-slider__item {
        width: 560px !important;
    }
}
.c-pickup-slider__img {
    overflow: hidden;
    aspect-ratio: 560/300;
}
.c-pickup-slider__img + * {
    margin-top: 1.5rem;
}
.c-pickup-slider__img img {
    -o-object-position: right center;
       object-position: right center;
    -o-object-fit: cover;
       object-fit: cover;
    height: 100%;
    width: 100%;
}
.c-pickup-slider__label {
    display: inline-block;
    line-height: 1.25;
    background-color: var(--c-blk);
    color: var(--c-wht);
    padding: 0.25rem 1rem 1px;
}
@media (max-width: 767px) {
    .c-pickup-slider__label {
        font-size: 0.75rem;
    }
}
.c-pickup-slider__label + * {
    margin-top: 1rem;
}
@media (max-width: 767px) {
    .c-pickup-slider__label + * {
        margin-top: 0.25rem;
    }
}
.c-pickup-slider__label.-robot {
    background-color: var(--c-third);
}
.c-pickup-slider__label.-disaster {
    background-color: var(--c-sec);
}
.c-pickup-slider__label.-mechano {
    background-color: var(--c-pri);
}
.c-pickup-slider__title {
    line-height: 1.5;
    color: var(--c-pri);
    font-weight: bold;
    font-size: 1.5rem;
}
@media (max-width: 767px) {
    .c-pickup-slider__title {
        font-size: 1.25rem;
    }
}
.c-pickup-slider__title a {
    text-decoration: none;
}
.c-pickup-slider__title + * {
    margin-top: 1.5rem;
}
@media (max-width: 767px) {
    .c-pickup-slider__title + * {
        margin-top: 1rem;
    }
}
@media (max-width: 767px) {
    .c-pickup-slider__desc {
        font-size: 0.875rem;
    }
}
.c-pickup-slider__desc + * {
    margin-top: 1.5rem;
}
@media (max-width: 767px) {
    .c-pickup-slider__desc + * {
        margin-top: 1.125rem;
    }
}
.c-pickup-slider__link {
    position: absolute;
    z-index: 1;
    bottom: 0;
    left: 0;
    width: 100%;
}
.c-pickup-slider__pagination[class], .c-pickup-slider__pagination-button[class], .c-pickup-slider__button[class] {
    position: relative;
}
@media (min-width: 768px) {
    * + .c-pickup-slider__pagination-button {
        margin-top: 3.5rem;
    }
}
@media (max-width: 767px) {
    .c-pickup-slider__pagination-button[class] {
        position: absolute;
        z-index: 1;
        top: 0;
        right: 0;
        margin-top: -1.5rem;
    }
}
@media (min-width: 768px) {
    .c-pickup-slider__pagination-button {
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        gap: 4rem;
    }
}
@media (min-width: 960px) {
    .c-pickup-slider__pagination-button {
        gap: 10rem;
    }
}
@media (max-width: 767px) {
    .c-pickup-slider__pagination[class] {
        color: var(--c-pri);
    }
}
@media (min-width: 768px) {
    .c-pickup-slider__pagination[class] {
        overflow: hidden;
        background-color: var(--c-wht);
        height: 0.5rem;
        max-width: 400px;
    }
}
@media (min-width: 960px) {
    .c-pickup-slider__pagination[class] {
        max-width: 480px;
    }
}
@media (min-width: 1280px) {
    .c-pickup-slider__pagination[class] {
        max-width: 600px;
    }
}
@media (max-width: 767px) {
    .c-pickup-slider__pagination[class] > * {
        color: var(--c-pri);
    }
    .c-pickup-slider__pagination[class] > *::before {
        content: "0";
    }
}
@media (min-width: 768px) {
    .c-pickup-slider__pagination[class] > * {
        background-color: var(--c-pri);
    }
}
.c-pickup-slider__list-wrap:has(.c-pickup-slider__item[aria-label*="10"]) .c-pickup-slider__pagination > *::before {
    content: "";
}
.c-pickup-slider__button {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 1.5rem;
}
@media (max-width: 767px) {
    .c-pickup-slider__button {
        display: none;
    }
}
@media (max-width: 767px) {
    .l-main .l-container .c-pickup-slider {
        margin-right: -1.25rem;
    }
}

@media (min-width: 768px) {
    .c-list02__list,
    .c-list01__list {
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        gap: 2.5rem 1.5rem;
    }
}
@media (min-width: 768px) {
    .c-list02__item,
    .c-list01__item {
        -ms-flex-negative: 0;
            flex-shrink: 0;
        -webkit-box-flex: 0;
            -ms-flex-positive: 0;
                flex-grow: 0;
        -ms-flex-preferred-size: calc(50% - 0.75rem);
            flex-basis: calc(50% - 0.75rem);
        max-width: calc(50% - 0.75rem);
    }
}
@media (min-width: 960px) {
    .c-list02__item,
    .c-list01__item {
        -ms-flex-preferred-size: calc(33.3333333333% - 1rem);
            flex-basis: calc(33.3333333333% - 1rem);
        max-width: calc(33.3333333333% - 1rem);
    }
}
@media (max-width: 767px) {
    .c-list02__item + .c-list02__item,
    .c-list02__item + .c-list01__item,
    .c-list01__item + .c-list02__item,
    .c-list01__item + .c-list01__item {
        margin-top: 1.5rem;
    }
}
.c-list02__img,
.c-list01__img {
    overflow: hidden;
    aspect-ratio: 346/168;
}
.c-list02__img img,
.c-list01__img img {
    -o-object-fit: cover;
       object-fit: cover;
    height: 100%;
    width: 100%;
}
.c-list02__img + *,
.c-list01__img + * {
    margin-top: 1rem;
}
.c-list02__title,
.c-list01__title {
    color: var(--c-pri);
    line-height: 1.5;
    font-weight: bold;
    font-size: 1.125rem;
}
.c-list02__title + *,
.c-list01__title + * {
    margin-top: 0.5rem;
}

@media (min-width: 768px) {
    .c-list02__item {
        -ms-flex-preferred-size: calc(33.3333333333% - 1rem);
            flex-basis: calc(33.3333333333% - 1rem);
        max-width: calc(33.3333333333% - 1rem);
    }
}
@media (min-width: 960px) {
    .c-list02__item {
        -ms-flex-preferred-size: calc(20% - 1.2rem);
            flex-basis: calc(20% - 1.2rem);
        max-width: calc(20% - 1.2rem);
    }
}
.c-list02__img {
    aspect-ratio: 198/198;
}
.c-list02__img + * {
    margin-top: 0.5rem;
}
.c-list02__title {
    font-size: 1rem;
}
.c-list02__title + * {
    margin-top: 0.375rem;
}
.c-list02__desc {
    font-size: 0.875rem;
}

@media (min-width: 768px) {
    .c-list03__list {
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        gap: 2.5rem;
    }
}
@media (min-width: 768px) {
    .c-list03__item {
        -ms-flex-negative: 0;
            flex-shrink: 0;
        -webkit-box-flex: 0;
            -ms-flex-positive: 0;
                flex-grow: 0;
        -ms-flex-preferred-size: calc(50% - 1.25rem);
            flex-basis: calc(50% - 1.25rem);
        max-width: calc(50% - 1.25rem);
    }
}
@media (max-width: 767px) {
    .c-list03__item + .c-list03__item {
        margin-top: 2rem;
    }
}
.c-list03__desc {
    border: 1px solid var(--c-pri);
    color: var(--c-pri);
    padding: 1.5rem;
}
@media (max-width: 767px) {
    .c-list03__desc {
        padding: 1.25rem;
    }
}
.c-list03__desc > * + * {
    margin-top: 1.5rem;
}
.c-list03__desc[class] > * + ul, .c-list03__desc[class] > * + ol {
    margin-top: 0;
}

@media (min-width: 768px) {
    .c-list05__list,
    .c-list04__list {
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        gap: 1.5rem;
    }
}
@media (min-width: 960px) {
    .c-list05__list,
    .c-list04__list {
        gap: 2.5rem;
    }
}
@media (min-width: 768px) {
    .c-list05__item,
    .c-list04__item {
        -ms-flex-negative: 0;
            flex-shrink: 0;
        -webkit-box-flex: 0;
            -ms-flex-positive: 0;
                flex-grow: 0;
        -ms-flex-preferred-size: calc(33.3333333333% - 1rem);
            flex-basis: calc(33.3333333333% - 1rem);
        max-width: calc(33.3333333333% - 1rem);
    }
}
@media (min-width: 960px) {
    .c-list05__item,
    .c-list04__item {
        -ms-flex-preferred-size: calc(33.3333333333% - 1.6666666667rem);
            flex-basis: calc(33.3333333333% - 1.6666666667rem);
        max-width: calc(33.3333333333% - 1.6666666667rem);
    }
}
@media (max-width: 767px) {
    .c-list05__item + .c-list05__item,
    .c-list05__item + .c-list04__item,
    .c-list04__item + .c-list05__item,
    .c-list04__item + .c-list04__item {
        margin-top: 2.5rem;
    }
}
.c-list05__label,
.c-list04__label {
    display: inline-block;
    background-color: var(--c-pri);
    line-height: 1.375;
    color: var(--c-wht);
    font-weight: bold;
    padding: 0.375rem 1rem 0.25rem;
}
.c-list05__label + *,
.c-list04__label + * {
    margin-top: 1.25rem;
}
@media (max-width: 767px) {
    .c-list05__label + *,
    .c-list04__label + * {
        margin-top: 1rem;
    }
}
.c-list05__title,
.c-list04__title {
    color: var(--c-pri);
    line-height: 1.5;
    font-weight: bold;
    font-size: 1.25rem;
}
.c-list05__title + *,
.c-list04__title + * {
    margin-top: 1rem;
}
@media (max-width: 767px) {
    .c-list05__title + *,
    .c-list04__title + * {
        margin-top: 0.75rem;
    }
}
.c-list05__item {
    border: 1px solid var(--c-pri);
    padding: 1.5rem;
}
@media (max-width: 767px) {
    .c-list05__item + .c-list05__item {
        margin-top: 1.25rem;
    }
}
.c-list05__title {
    letter-spacing: 0.16em;
    text-transform: uppercase;
    text-align: center;
    font-size: 1.5rem;
}
.c-list05__title + * {
    margin-top: 0.5rem;
}
.c-list05__desc {
    letter-spacing: 0.16em;
}
@media (min-width: 768px) {
    .c-list05__desc {
        font-size: 0.875rem;
    }
}
@media (min-width: 960px) {
    .c-list05__desc {
        font-size: 1rem;
    }
}

.c-list06 {
    background-color: var(--c-pri-light);
    padding: 1.25rem;
}
@media (min-width: 960px) {
    .c-list06 {
        padding: 2.5rem;
    }
}
@media (min-width: 1280px) {
    .c-list06 {
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        gap: 2rem;
    }
}
.c-list06.-ver {
    display: block;
}
.c-list06__title {
    letter-spacing: 0.08em;
    line-height: 1.5;
    color: var(--c-pri);
    font-weight: bold;
    font-size: 1.25rem;
}
.c-list06__title + * {
    margin-top: 1.25rem;
}
@media (min-width: 1280px) {
    .c-list06__title + * {
        margin-top: 0;
    }
}
@media (min-width: 768px) {
    .c-list06__title {
        -ms-flex-negative: 0;
            flex-shrink: 0;
        -webkit-box-flex: 0;
            -ms-flex-positive: 0;
                flex-grow: 0;
    }
}
.c-list06.-ver .c-list06__title + * {
    margin-top: 1.25rem;
}
@media (min-width: 768px) {
    .c-list06__list {
        -ms-flex-negative: 1;
            flex-shrink: 1;
        -webkit-box-flex: 1;
            -ms-flex-positive: 1;
                flex-grow: 1;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        gap: 1rem;
    }
}
.c-list06__list + * {
    margin-top: 1.5rem;
}
.c-list06.-ver .c-list06__list {
    display: block;
}
.c-list06.-list .c-list06__list {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 1rem;
}
.c-list06__item {
    line-height: 1.5;
    background-color: var(--c-wht);
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 0.5rem;
    padding: 0.5rem 1rem 0.375rem;
}
@media (max-width: 767px) {
    .c-list06__item + .c-list06__item {
        margin-top: 1rem;
    }
}
@media (min-width: 768px) {
    .c-list06__item {
        -ms-flex-negative: 0;
            flex-shrink: 0;
        -webkit-box-flex: 0;
            -ms-flex-positive: 0;
                flex-grow: 0;
        -ms-flex-preferred-size: calc(33.3333333333% - 0.6666666667rem);
            flex-basis: calc(33.3333333333% - 0.6666666667rem);
        max-width: calc(33.3333333333% - 0.6666666667rem);
    }
}
.c-list06.-ver .c-list06__item {
    -ms-flex-preferred-size: 100%;
        flex-basis: 100%;
    max-width: 100%;
    line-height: 1.75;
}
.c-list06.-list .c-list06__item {
    -ms-flex-preferred-size: calc(50% - 0.5rem);
        flex-basis: calc(50% - 0.5rem);
    max-width: calc(50% - 0.5rem);
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
}
@media (min-width: 768px) {
    .c-list06.-list .c-list06__item {
        -ms-flex-preferred-size: calc(33.3333333333% - 0.6666666667rem);
            flex-basis: calc(33.3333333333% - 0.6666666667rem);
        max-width: calc(33.3333333333% - 0.6666666667rem);
    }
}
.c-list06.-free .c-list06__item {
    -ms-flex-preferred-size: inherit;
        flex-basis: inherit;
    max-width: inherit;
}
.c-list06.-ver .c-list06__item + .c-list06__item {
    margin-top: 1rem;
}
.c-list06.-list .c-list06__item + .c-list06__item {
    margin-top: 0;
}
.c-list06__label {
    white-space: nowrap;
    letter-spacing: 0.08em;
    color: var(--c-pri);
    font-weight: bold;
    font-size: 1.75rem;
}
.c-list06__label * {
    font-size: 1rem;
}

@media (min-width: 768px) {
    .c-list07__list {
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        gap: 2.5rem;
    }
}
.c-list07.-wide .c-list07__list {
    display: block;
}
.c-list07__item {
    border: 1px solid var(--c-pri);
    padding: 1.25rem;
}
@media (min-width: 960px) {
    .c-list07__item {
        padding: 2.5rem;
    }
}
@media (min-width: 768px) {
    .c-list07__item {
        -ms-flex-negative: 0;
            flex-shrink: 0;
        -webkit-box-flex: 0;
            -ms-flex-positive: 0;
                flex-grow: 0;
        -ms-flex-preferred-size: calc(50% - 1.25rem);
            flex-basis: calc(50% - 1.25rem);
        max-width: calc(50% - 1.25rem);
    }
}
@media (max-width: 767px) {
    .c-list07__item + .c-list07__item {
        margin-top: 1.25rem;
    }
}
@media (min-width: 768px) {
    .c-list07.-wide .c-list07__item {
        -ms-flex-preferred-size: 100%;
            flex-basis: 100%;
        max-width: 100%;
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        gap: 2.5rem;
    }
}
.c-list07__title {
    border-bottom: 1px solid var(--c-pri);
    background-repeat: no-repeat;
    background-size: 3.5rem auto;
    background-position: left top;
    background-image: url(../img/ico_user.svg);
    letter-spacing: 0.08em;
    line-height: 1.5;
    font-weight: bold;
    font-size: 1.25rem;
    padding-bottom: 1.5rem;
    padding-left: 4.5rem;
}
.c-list07__title * {
    display: block;
    font-size: 0.875rem;
    margin-bottom: 0.25rem;
}
.c-list07__title + * {
    margin-top: 1rem;
}
@media (min-width: 768px) {
    .c-list07__title + * {
        margin-top: 1.5rem;
    }
}
@media (min-width: 768px) {
    .c-list07.-wide .c-list07__title {
        border: none;
        -ms-flex-negative: 0;
            flex-shrink: 0;
        -webkit-box-flex: 0;
            -ms-flex-positive: 0;
                flex-grow: 0;
        padding-bottom: 0;
    }
}
@media (min-width: 768px) {
    .c-list07.-wide .c-list07__desc {
        border-left: 1px solid var(--c-pri);
        padding-left: 2.5rem;
    }
}
@media (min-width: 768px) {
    .c-list07.-wide .c-list07__desc {
        margin-top: 0;
    }
}

@media (min-width: 768px) {
    .c-list08__list {
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        gap: 1.5rem;
    }
}
.c-list08__item {
    position: relative;
    border: 1px solid var(--c-pri);
    padding: 1.5rem;
    padding-left: 5.5rem;
}
@media (min-width: 768px) {
    .c-list08__item {
        -ms-flex-negative: 0;
            flex-shrink: 0;
        -webkit-box-flex: 0;
            -ms-flex-positive: 0;
                flex-grow: 0;
        -ms-flex-preferred-size: calc(50% - 0.75rem);
            flex-basis: calc(50% - 0.75rem);
        max-width: calc(50% - 0.75rem);
    }
}
@media (min-width: 1280px) {
    .c-list08__item {
        -ms-flex-preferred-size: calc(33.3333333333% - 1rem);
            flex-basis: calc(33.3333333333% - 1rem);
        max-width: calc(33.3333333333% - 1rem);
    }
}
@media (max-width: 767px) {
    .c-list08__item + .c-list08__item {
        margin-top: 1.25rem;
    }
}
.c-list08__img {
    max-width: 2.5rem;
    position: absolute;
    z-index: 1;
    left: 0;
    top: 0;
    margin: 1.5rem 0 0 1.5rem;
}
.c-list08__title {
    color: var(--c-pri);
    letter-spacing: 0.08em;
    line-height: 1.5;
    font-weight: bold;
    font-size: 1.25rem;
}
.c-list08__title + * {
    margin-top: 1rem;
}
@media (min-width: 768px) {
    .c-data01__list {
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        gap: 1.5rem;
    }
}
.c-data01__item {
    border: 1px solid var(--c-pri);
    padding: 4.5rem 1.5rem 2rem;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}
@media (min-width: 768px) {
    .c-data01__item {
        -ms-flex-negative: 0;
            flex-shrink: 0;
        -webkit-box-flex: 0;
            -ms-flex-positive: 0;
                flex-grow: 0;
        -ms-flex-preferred-size: calc(50% - 0.75rem);
            flex-basis: calc(50% - 0.75rem);
        max-width: calc(50% - 0.75rem);
    }
}
@media (min-width: 1280px) {
    .c-data01__item {
        -ms-flex-preferred-size: calc(33.3333333333% - 1rem);
            flex-basis: calc(33.3333333333% - 1rem);
        max-width: calc(33.3333333333% - 1rem);
    }
}
@media (max-width: 767px) {
    .c-data01__item + .c-data01__item {
        margin-top: 1.25rem;
    }
}
.c-data01__item.-lg {
    padding-top: 2rem;
}
@media (min-width: 768px) {
    .c-data01__item.-lg {
        -ms-flex-preferred-size: calc(50% - 0.75rem);
            flex-basis: calc(50% - 0.75rem);
        max-width: calc(50% - 0.75rem);
    }
}
@media (min-width: 1280px) {
    .c-data01__item.-lg {
        padding-left: 2rem;
        padding-right: 2rem;
    }
}
.c-data01__item[data-label]:not([data-label=""]) {
    position: relative;
}
.c-data01__item[data-label]:not([data-label=""])::before {
    border-bottom-left-radius: 0;
    border-top-right-radius: 0;
    content: attr(data-label);
    display: inline-block;
    background-color: var(--c-sec);
    color: var(--c-wht);
    line-height: 1.25;
    font-weight: bold;
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;
    padding: 0.375rem 1rem 0.25rem;
    margin: -1px 0 0 -1px;
}
.c-data01__item[data-label]:not([data-label=""]).-pri::before {
    background-color: var(--c-pri);
}
.c-data01__item[data-label]:not([data-label=""]).-third::before {
    background-color: var(--c-third);
}
.c-data01__lead {
    line-height: 1.5;
    text-align: center;
    color: var(--c-pri);
    font-weight: bold;
    font-size: 1.25rem;
}
.c-data01__lead + * {
    margin-top: 0.75rem;
}
.c-data01__img {
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    -ms-flex-preferred-size: 3.5rem;
        flex-basis: 3.5rem;
    max-width: 3.5rem;
}
.c-data01__label + * {
    margin-top: 1rem;
}
.c-data01__title {
    display: inline-block;
    color: var(--c-pri);
    line-height: 1.5;
    font-weight: bold;
    margin-left: auto;
    margin-right: auto;
}
.c-data01__title * {
    line-height: 1.05;
}
@media (max-width: 767px) {
    .c-data01__title * {
        line-height: 1.25;
    }
}
.c-data01__title > * + * {
    margin-left: 0.375rem;
}
.c-data01__title *.-right {
    display: block;
    text-align: right;
}
.c-data01__title .-font-size-1-25x {
    font-size: 1.25rem;
}
.c-data01__title .-font-size-1-5x {
    font-size: 1.5rem;
}
.c-data01__title .-font-size-2x {
    font-size: 2rem;
}
.c-data01__title .-font-size-2-5x {
    font-size: 2.5rem;
}
.c-data01__title .-font-size-3x {
    font-size: clamp(2.5rem, 3.5vw, 3rem);
}
.c-data01__title .-font-size-3-5x {
    font-size: clamp(2.75rem, 4vw, 3.5rem);
}
.c-data01__title .-font-size-4x {
    font-size: 4rem;
}
.c-data01__title .-font-size-5x {
    font-size: 5rem;
}
.c-data01__title .-font-size-7-5x {
    font-size: clamp(5.5rem, 6vw, 7.5rem);
}
@media (min-width: 960px) {
    .c-data01__title .-font-size-7-5x {
        font-size: 7.5rem;
    }
}
.c-data01__info {
    margin-top: auto;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 1rem;
    padding-top: 2rem;
}
.c-data01__desc {
    -ms-flex-negative: 1;
        flex-shrink: 1;
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    font-size: 0.875rem;
}
@media (max-width: 767px) {
    .c-data01__desc br {
        display: none;
    }
}

@media (min-width: 768px) {
    .c-data02__list {
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        gap: 1.5rem;
    }
}
.c-data02__item {
    position: relative;
    border: 1px solid var(--c-pri);
    padding: 2rem;
}
@media (min-width: 768px) {
    .c-data02__item {
        -ms-flex-negative: 0;
            flex-shrink: 0;
        -webkit-box-flex: 0;
            -ms-flex-positive: 0;
                flex-grow: 0;
        -ms-flex-preferred-size: calc(50% - 0.75rem);
            flex-basis: calc(50% - 0.75rem);
        max-width: calc(50% - 0.75rem);
    }
}
@media (min-width: 1280px) {
    .c-data02__item {
        -ms-flex-preferred-size: calc(33.3333333333% - 1rem);
            flex-basis: calc(33.3333333333% - 1rem);
        max-width: calc(33.3333333333% - 1rem);
    }
}
@media (max-width: 767px) {
    .c-data02__item + .c-data02__item {
        margin-top: 1.25rem;
    }
}
.c-data02__lead {
    color: var(--c-pri);
    font-weight: bold;
    font-size: 1.5rem;
}
.c-data02__lead + * {
    margin-top: 0.75rem;
}
.c-data02.-sm .c-data02__lead {
    font-size: 1.25rem;
}
.c-data02__img {
    max-width: 2.5rem;
    position: absolute;
    z-index: 1;
    right: 0;
    top: 0;
    margin: 2rem 2rem 0 0;
}
.c-data02__label + * {
    margin-top: 1rem;
}
.c-data02__lead + .c-data02__title:has([data-label]) {
    margin-top: 2.5rem;
}
.c-data02__title {
    color: var(--c-pri);
    line-height: 1.5;
    font-weight: bold;
}
.c-data02__title + * {
    margin-top: 1rem;
}
.c-data02__title * {
    line-height: 1.05;
}
@media (max-width: 767px) {
    .c-data02__title * {
        line-height: 1.25;
    }
}
.c-data02__title *[data-label] {
    position: relative;
    padding-top: 0.25rem;
}
.c-data02__title *[data-label]::before {
    content: attr(data-label);
    white-space: nowrap;
    display: inline-block;
    color: var(--c-pri);
    line-height: 1.5;
    font-size: 1rem;
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;
}
.c-data02__title > * + * {
    margin-left: 0.375rem;
}
.c-data02__title *.-right {
    display: block;
    text-align: right;
}
.c-data02__title .-font-size-1-25x {
    font-size: 1.25rem;
}
.c-data02__title .-font-size-1-5x {
    font-size: 1.5rem;
}
.c-data02__title .-font-size-2x {
    font-size: 2rem;
}
.c-data02__title .-font-size-2-5x {
    font-size: 2.5rem;
}
.c-data02__title .-font-size-3x {
    font-size: clamp(2.5rem, 3.5vw, 3rem);
}
.c-data02__title .-font-size-3-5x {
    font-size: clamp(2.75rem, 4vw, 3.5rem);
}
.c-data02__title .-font-size-4x {
    font-size: 4rem;
}
.c-data02__title .-font-size-5x {
    font-size: 5rem;
}
.c-data02__title .-font-size-7-5x {
    font-size: clamp(5.5rem, 6vw, 7.5rem);
}
@media (min-width: 960px) {
    .c-data02__title .-font-size-7-5x {
        font-size: 7.5rem;
    }
}
.c-data02__desc {
    font-size: 0.875rem;
}
@media (min-width: 960px) {
    .c-data02__desc {
        font-size: 0.75rem;
    }
}
@media (max-width: 767px) {
    .c-data02__desc br {
        display: none;
    }
}

/* =====================================
 * パンくずリスト
 * ================================== */
.c-breadcrumb {
    margin-top: 1rem;
}
@media (max-width: 767px) {
    .c-breadcrumb + * {
        margin-top: 1rem;
    }
}
@media (min-width: 768px) {
    .c-breadcrumb {
        position: absolute;
        z-index: 1;
        top: 0;
        left: 0;
        width: 100%;
        margin-top: 6rem;
    }
}
.c-breadcrumb__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    overflow-x: auto;
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    white-space: nowrap;
}
.c-breadcrumb__list li {
    list-style-type: none;
    line-height: 1.5;
    font-size: 0.875rem;
}
@media (min-width: 960px) {
    .c-breadcrumb__list li {
        font-size: 0.75rem;
    }
}
.c-breadcrumb__list li:not(:has(a)) {
    color: var(--c-pri);
}
.c-breadcrumb__list li + li:before {
    content: "";
    display: inline-block;
    background-color: var(--c-pri);
    width: 0.5rem;
    height: 1px;
    margin: 0 0.5rem;
    -webkit-transform: translateY(-0.25rem);
            transform: translateY(-0.25rem);
}

@media (min-width: 768px) {
    body:has(.c-pagetitle02) .c-breadcrumb li a,
    body:has(.c-pagetitle02) .c-breadcrumb li {
        color: var(--c-wht);
    }
}
@media (min-width: 768px) {
    body:has(.c-pagetitle02) .c-breadcrumb li:before {
        background-color: var(--c-wht);
    }
}

body[data-page-type=form] .c-breadcrumb {
    display: none;
}

/* =====================================
 * ページタイトル
 * ================================== */
.c-pagetitle01 + *,
.c-pagetitle02 + *,
.c-pagetitle03 + * {
    margin-top: 8rem;
}
@media (max-width: 767px) {
    .c-pagetitle01 + *,
    .c-pagetitle02 + *,
    .c-pagetitle03 + * {
        margin-top: 5rem;
    }
}

.c-pagetitle01 {
    position: relative;
}
.c-pagetitle01__inner {
    position: relative;
    padding-bottom: 1.5rem;
}
@media (min-width: 768px) {
    .c-pagetitle01__inner {
        padding-top: 6.5rem;
        padding-bottom: 5rem;
    }
}
@media (min-width: 960px) {
    .c-pagetitle01__inner {
        padding-top: 7.5rem;
    }
}
.c-pagetitle01:has(.c-pagetitle01__desc) .c-pagetitle01__inner {
    padding-bottom: 0;
}
@media (min-width: 768px) {
    .c-pagetitle01:has(.c-pagetitle01__img) .c-pagetitle01__inner {
        padding-top: 4.5rem;
        padding-bottom: 4.5rem;
        min-height: 30rem;
    }
}
@media (min-width: 960px) {
    .c-pagetitle01:has(.c-pagetitle01__img) .c-pagetitle01__inner {
        padding-top: 5.5rem;
        padding-bottom: 5.5rem;
    }
}
.c-pagetitle01__subtitle, .c-pagetitle01__title {
    line-height: 1.5;
}
.c-pagetitle01__title {
    color: var(--c-pri);
    letter-spacing: 0.08em;
    font-weight: bold;
    font-size: 2rem;
}
@media (max-width: 767px) {
    .c-pagetitle01__title {
        font-size: 1.75rem;
    }
}
.c-pagetitle01__title + * {
    margin-top: 2.5rem;
}
@media (max-width: 767px) {
    .c-pagetitle01__title + * {
        margin-top: 1.5rem;
    }
}
.c-pagetitle01__title span {
    position: relative;
    font-size: 1.25rem;
    padding-left: 1.75rem;
}
@media (max-width: 767px) {
    .c-pagetitle01__title span {
        display: block;
        margin-top: 0.25rem;
    }
}
.c-pagetitle01__title span::before {
    content: "";
    display: block;
    background-color: var(--c-pri);
    height: 1px;
    width: 1.25rem;
    position: absolute;
    z-index: 1;
    top: 50%;
    left: 0;
}
@media (min-width: 768px) {
    .c-pagetitle01__title:has(span) {
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        gap: 1rem;
    }
}
.c-pagetitle01__text-inner {
    position: relative;
    padding-top: 2.75rem;
}
@media (min-width: 960px) {
    .c-pagetitle01__text-inner {
        max-width: calc(50% - 1.25rem);
        padding-bottom: 0;
        padding-top: 0;
    }
}
.c-pagetitle01__desc {
    line-height: 2.4;
}
@media (max-width: 767px) {
    .c-pagetitle01__desc br {
        display: none;
    }
}
@media (min-width: 768px) {
    .c-pagetitle01__desc {
        font-size: 1.125rem;
    }
}
.c-pagetitle01__img {
    position: relative;
    aspect-ratio: 376/200;
}
@media (min-width: 960px) {
    .c-pagetitle01__img {
        aspect-ratio: auto;
        width: 60vw;
        height: 100%;
        position: absolute;
        z-index: -1;
        top: 0;
        right: 0;
    }
}
@media (min-width: 1280px) {
    .c-pagetitle01__img {
        width: calc(50vw - 3.75rem);
    }
}
.c-pagetitle01__img img {
    border-bottom-right-radius: 0;
    border-top-left-radius: 0;
    border-top-right-radius: 0;
    -o-object-position: center center;
       object-position: center center;
    -o-object-fit: cover;
       object-fit: cover;
    height: 100%;
    width: 100%;
}
.c-pagetitle01__img-label {
    color: var(--c-pri-light);
    line-height: 1;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    font-weight: bold;
    font-size: 7.5rem;
    position: absolute;
    z-index: 10;
    bottom: 0;
    right: 0;
    -webkit-transform: translateY(50%);
            transform: translateY(50%);
    overflow: hidden;
}
.c-pagetitle01__img-label span {
    display: inline-block;
    margin-right: -1.25rem;
}
@media (max-width: 767px) {
    .c-pagetitle01__img-label {
        font-size: 4rem;
    }
}
.c-pagetitle01__inner:not(:has(.c-pagetitle01__img)) .c-pagetitle01__bg01 {
    display: none;
}
.c-pagetitle01__bg01 {
    position: absolute;
    z-index: -5;
}
.c-pagetitle01__bg01.-left {
    bottom: 0;
    left: 0;
    margin: 0 0 -2rem 0;
}
.c-pagetitle01__bg01.-left img {
    max-width: 45%;
}
@media (min-width: 960px) {
    .c-pagetitle01__bg01.-left {
        margin: 0 0 -9.5rem -5.5rem;
    }
    .c-pagetitle01__bg01.-left img {
        max-width: 100%;
    }
}
.c-pagetitle01__bg01.-right {
    right: 0;
    top: 0;
    margin: 1rem 0 0 0;
    text-align: right;
}
.c-pagetitle01__bg01.-right img {
    max-width: 40%;
}
@media (min-width: 960px) {
    .c-pagetitle01__bg01.-right {
        margin: -5.5rem -2.5rem 0 0;
    }
    .c-pagetitle01__bg01.-right img {
        max-width: 100%;
    }
}
.c-pagetitle01__bg02 {
    display: none;
}
.c-pagetitle01__inner:not(:has(.c-pagetitle01__img)) .c-pagetitle01__bg02 {
    position: absolute;
    z-index: -10;
    top: 0;
    right: 0;
    margin-top: -5.5rem;
    display: block;
}
@media (max-width: 767px) {
    .c-pagetitle01__inner:not(:has(.c-pagetitle01__img)) .c-pagetitle01__bg02 {
        text-align: right;
        margin-top: -0.25rem;
    }
    .c-pagetitle01__inner:not(:has(.c-pagetitle01__img)) .c-pagetitle01__bg02 img {
        max-width: 40%;
        min-width: 142px;
    }
}
.c-pagetitle01__inner:not(:has(.c-pagetitle01__img)) .c-pagetitle01__text-inner {
    max-width: 100%;
}
.c-pagetitle01__meta {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 1rem;
}
.c-pagetitle01__meta + * {
    margin-top: 1.5rem;
}
.c-pagetitle01__label {
    display: inline-block;
    background-color: var(--c-pri);
    line-height: 1.25;
    color: var(--c-wht);
    font-weight: bold;
    font-size: 0.875rem;
    padding: 0.25rem 0.5rem 0.125rem;
}
.c-pagetitle01__subdesc {
    background-repeat: no-repeat;
    background-size: 1rem auto;
    background-position: left center;
    background-image: url(../img/ico_map_pin_pri.svg);
    padding-left: 1.5rem;
}
.c-pagetitle01__subtitle {
    line-height: 1.5;
    letter-spacing: 0.08em;
    color: var(--c-pri);
    font-weight: bold;
    font-size: 1.25rem;
}
.c-pagetitle01__subtitle + * {
    margin-top: 0.5rem;
}
* + .c-pagetitle01__btn {
    margin-top: 1.5rem;
}
.c-pagetitle01__btn[class] > * {
    margin-left: 0;
    margin-right: 0;
}

.c-pagetitle02 {
    position: relative;
}
.c-pagetitle02__img {
    position: absolute;
    z-index: -1;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.c-pagetitle02__img::before {
    content: "";
    display: block;
    background-color: var(--c-sec);
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0.4;
}
.c-pagetitle02__img img {
    -o-object-fit: cover;
       object-fit: cover;
    height: 100%;
    width: 100%;
}
.c-pagetitle02__text {
    padding-top: 10rem;
    padding-bottom: 10rem;
}
@media (max-width: 767px) {
    .c-pagetitle02__text {
        padding-top: 6.5rem;
        padding-bottom: 6.5rem;
    }
}
.c-pagetitle02__desc, .c-pagetitle02__title {
    text-align: center;
    color: var(--c-wht);
    line-height: 1.5;
    letter-spacing: 0.08em;
    font-weight: bold;
}
.c-pagetitle02__title {
    font-size: 1.5rem;
}
@media (max-width: 767px) {
    .c-pagetitle02__title {
        font-size: 1.25rem;
    }
}
.c-pagetitle02__title + * {
    margin-top: 1.5rem;
}
@media (max-width: 767px) {
    .c-pagetitle02__title + * {
        margin-top: 1.75rem;
    }
}
.c-pagetitle02__desc {
    font-size: 2.5rem;
}
@media (max-width: 767px) {
    .c-pagetitle02__desc {
        font-size: 2rem;
    }
}

.c-pagetitle03 {
    padding-top: 4rem;
}
@media (min-width: 768px) {
    .c-pagetitle03 {
        padding-top: 7rem;
    }
}
.c-pagetitle03__title {
    letter-spacing: 0.08em;
    line-height: 1.5;
    text-align: center;
    color: var(--c-pri);
    font-weight: bold;
    font-size: 2rem;
}

body[data-page-slug=alumni] .c-pagetitle01__desc, body[data-page-slug=alumni] .c-pagetitle01__title {
    text-align: left;
    text-shadow: 0.125rem 0.125rem 0 var(--c-pri-light);
}
body[data-page-slug=alumni] .c-pagetitle01__title::before {
    content: "";
    width: 551px;
    aspect-ratio: 551/103;
    display: block;
    background: no-repeat;
    background-size: 100% auto;
    background-position: center center;
    background-image: url(../img/img_alumni_title.svg);
    margin-bottom: 1rem;
    width: 250px;
}
@media (min-width: 768px) {
    body[data-page-slug=alumni] .c-pagetitle01__title::before {
        width: 450px;
    }
}
@media (min-width: 960px) {
    body[data-page-slug=alumni] .c-pagetitle01__title::before {
        width: 551px;
    }
}

.c-text01 {
    font-weight: bold;
    letter-spacing: 0.08em;
    line-height: 1.5;
    color: var(--c-pri);
    font-size: 1.5rem;
}
@media (max-width: 767px) {
    .c-text01 {
        font-size: 1.125rem;
    }
}

.c-text02 {
    text-align: center;
    font-weight: bold;
    letter-spacing: 0.08em;
    line-height: 1.5;
    color: var(--c-pri);
    font-size: 2rem;
}
@media (max-width: 767px) {
    .c-text02 {
        font-size: 1.5rem;
    }
}
.c-text02.-sm {
    font-size: 1.5rem;
}

.c-text03 {
    position: relative;
}
.c-text03__img {
    text-align: center;
}
@media (max-width: 767px) {
    .c-text03__img img {
        max-width: 160px;
    }
}
.c-text03__img + * {
    margin-top: 3.5rem;
}
@media (max-width: 767px) {
    .c-text03__img + * {
        margin-top: 2.5rem;
    }
}
.c-text03__title {
    line-height: 1.5;
    letter-spacing: 0.08em;
    text-align: center;
    color: var(--c-pri);
    font-weight: bold;
    font-size: 3rem;
}
.c-text03__title + * {
    margin-top: 2.5rem;
}
@media (max-width: 767px) {
    .c-text03__title + * {
        margin-top: 2rem;
    }
}
@media (max-width: 767px) {
    .c-text03__title {
        font-size: 2.25rem;
    }
}
.c-text03__desc {
    text-align: center;
    line-height: 3.2;
    font-size: 1.25rem;
}
@media (max-width: 767px) {
    .c-text03__desc {
        font-size: 1rem;
    }
}
.c-text03__bg {
    pointer-events: none;
    position: absolute;
    z-index: -1;
    top: 0;
    left: 50%;
    width: 100vw;
    height: 100%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    text-align: center;
    padding-top: 9rem;
}
.c-text03__bg img {
    -o-object-fit: cover;
       object-fit: cover;
    height: 62.5%;
    width: 87.5%;
}
@media (max-width: 767px) {
    .c-text03__bg img {
        width: 100%;
        height: 100%;
    }
}
@media (min-width: 768px) {
    .c-text03__bg img {
        height: 100%;
        width: auto;
    }
}
@media (min-width: 960px) {
    .c-text03__bg img {
        -o-object-position: center top;
           object-position: center top;
        -o-object-fit: contain;
           object-fit: contain;
        height: inherit;
        width: inherit;
    }
}
@media (min-width: 768px) {
    .c-text03__bg {
        padding-top: 0;
    }
}
.c-text03__bg.-lg {
    display: none;
}
@media (min-width: 960px) {
    .c-text03__bg.-lg {
        display: block;
    }
}
.c-text03__bg.-sm {
    display: block;
}
@media (min-width: 960px) {
    .c-text03__bg.-sm {
        display: none;
    }
}

.c-text04 > * {
    display: inline-block;
    background-color: var(--c-pri-light);
    letter-spacing: 0.08em;
    line-height: 1.5;
    color: var(--c-pri);
    font-weight: bold;
    font-size: 1.25rem;
    padding: 0.625rem 1.5rem 0.375rem;
}
@media (max-width: 767px) {
    .c-text04 > * {
        font-size: 1.125rem;
        padding-left: 1rem;
        padding-right: 1rem;
    }
}

.c-text05 {
    color: var(--c-pri);
    font-size: 0.875rem;
}

.c-keyword-slider {
    background-color: var(--c-pri-light);
    padding: 1.5rem 1.25rem;
}
@media (min-width: 768px) {
    .c-keyword-slider {
        padding: 2.5rem;
    }
}
.c-keyword-slider__list-wrap {
    overflow: hidden;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 0.5rem;
}
@media (min-width: 768px) {
    .c-keyword-slider__list-wrap {
        gap: 1.5rem;
    }
}
@media (min-width: 960px) {
    .c-keyword-slider__list-wrap {
        gap: 2.5rem;
    }
}
.c-keyword-slider__list-wrap + .c-keyword-slider__list-wrap {
    margin-top: 0.5rem;
}
.c-keyword-slider__list {
    white-space: nowrap;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 0.5rem;
}
@media (min-width: 768px) {
    .c-keyword-slider__list {
        gap: 1.5rem;
    }
}
@media (min-width: 960px) {
    .c-keyword-slider__list {
        gap: 2.5rem;
    }
}
.c-keyword-slider__list li {
    position: relative;
    letter-spacing: 0.08em;
    font-weight: bold;
    color: var(--c-pri);
    font-size: 1.25rem;
}
@media (max-width: 767px) {
    .c-keyword-slider__list li {
        font-size: 0.875rem;
    }
}
.c-keyword-slider__list li::before {
    content: "#";
    display: inline-block;
    margin-right: 0.25em;
}
.c-keyword-slider__list li.-color-type02 {
    color: var(--c-sec);
}
.c-keyword-slider__list li.-color-type03 {
    color: var(--c-third);
}
.c-keyword-slider__list li.-font-size-lg {
    font-size: 2.5rem;
}
@media (max-width: 767px) {
    .c-keyword-slider__list li.-font-size-lg {
        font-size: 1.375rem;
    }
}
@media (min-width: 768px) {
    .c-keyword-slider.-sm .c-keyword-slider__list li {
        font-size: 1rem;
    }
}
@media (min-width: 768px) {
    .c-keyword-slider.-sm .c-keyword-slider__list li.-font-size-lg {
        font-size: 1.875rem;
    }
}

body.is-loaded .c-keyword-slider__list.-left {
    -webkit-animation: gallery-slide-left 40s infinite linear 1s both;
            animation: gallery-slide-left 40s infinite linear 1s both;
}

body.is-loaded .c-keyword-slider__list.-right {
    -webkit-animation: gallery-slide-right 40s infinite linear 1s both;
            animation: gallery-slide-right 40s infinite linear 1s both;
}

@media (min-width: 768px) {
    .c-alink {
        min-height: 3.5rem;
    }
}
@media (min-width: 960px) {
    .c-alink {
        min-height: 3.75rem;
    }
}
.c-alink__list {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 1rem;
}
@media (min-width: 1280px) {
    .c-alink__list {
        gap: 1.5rem;
    }
}
.c-alink__list > * {
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    -ms-flex-preferred-size: 100%;
        flex-basis: 100%;
    max-width: 100%;
}
@media (min-width: 768px) {
    .c-alink__list > * {
        -ms-flex-preferred-size: calc(50% - 0.75rem);
            flex-basis: calc(50% - 0.75rem);
        max-width: calc(50% - 0.75rem);
    }
}
@media (min-width: 960px) {
    .c-alink__list > * {
        -ms-flex-preferred-size: calc(25% - 1.125rem);
            flex-basis: calc(25% - 1.125rem);
        max-width: calc(25% - 1.125rem);
    }
}
.c-alink__list a {
    -webkit-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
    background-repeat: no-repeat;
    background-size: 1rem auto;
    background-position: right center;
    background-position-x: calc(100% - 1.25rem);
    background-image: url(../img/ico_arr_down_pri.svg);
    text-decoration: none;
    display: block;
    text-align: center;
    font-size: clamp(0.875rem, 1.25vw, 1rem);
    border: 1px solid var(--c-pri);
    padding: 1rem 2.25rem 0.875rem;
}
@media (max-width: 767px) {
    .c-alink__list a {
        font-size: 1rem;
    }
}
@media (min-width: 1280px) {
    .c-alink__list a {
        font-size: 1rem;
    }
}
@media (min-width: 768px) {
    .c-alink__list a:hover {
        background-image: url(../img/ico_arr_down_wht.svg);
        background-color: var(--c-pri);
        color: var(--c-wht);
    }
}
.c-alink__list a > *:not(br) {
    display: none;
}
@media (max-width: 767px) {
    .c-alink__list a br {
        display: none;
    }
}
.c-alink__list a:has(br) {
    line-height: 1.5;
}
@media (min-width: 768px) {
    .c-alink__list a:has(br) {
        padding: 0.375rem 2.25rem 0.25rem;
    }
}

@media (min-width: 768px) {
    .c-card-list01__list {
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        gap: 1rem;
    }
}
@media (min-width: 1280px) {
    .c-card-list01__list {
        gap: 2.5rem;
    }
}
@media (min-width: 768px) {
    .c-card-list01.-col4 .c-card-list01__list {
        gap: 1rem;
    }
}
@media (min-width: 1280px) {
    .c-card-list01.-col4 .c-card-list01__list {
        gap: 1.5rem;
    }
}
.c-card-list01__item {
    -webkit-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
    -webkit-box-shadow: var(--c-shadow);
            box-shadow: var(--c-shadow);
    background-color: var(--c-wht);
    padding: 1.75rem;
}
@media (min-width: 768px) {
    .c-card-list01__item {
        -ms-flex-negative: 0;
            flex-shrink: 0;
        -webkit-box-flex: 0;
            -ms-flex-positive: 0;
                flex-grow: 0;
        -ms-flex-preferred-size: calc(33.3333333333% - 0.6666666667rem);
            flex-basis: calc(33.3333333333% - 0.6666666667rem);
        max-width: calc(33.3333333333% - 0.6666666667rem);
        padding: 2rem;
    }
}
@media (min-width: 1280px) {
    .c-card-list01__item {
        -ms-flex-preferred-size: calc(33.3333333333% - 1.6666666667rem);
            flex-basis: calc(33.3333333333% - 1.6666666667rem);
        max-width: calc(33.3333333333% - 1.6666666667rem);
        padding: 2.5rem;
    }
}
@media (max-width: 767px) {
    .c-card-list01__item + .c-card-list01__item {
        margin-top: 1.125rem;
    }
}
@media (min-width: 960px) {
    .c-card-list01__item:hover {
        -webkit-box-shadow: none !important;
                box-shadow: none !important;
        background-color: var(--c-pri-light);
    }
}
@media (min-width: 768px) {
    .c-card-list01.-col4 .c-card-list01__item {
        -ms-flex-preferred-size: calc(50% - 0.5rem);
            flex-basis: calc(50% - 0.5rem);
        max-width: calc(50% - 0.5rem);
    }
}
@media (min-width: 1280px) {
    .c-card-list01.-col4 .c-card-list01__item {
        -ms-flex-preferred-size: calc(25% - 1.125rem);
            flex-basis: calc(25% - 1.125rem);
        max-width: calc(25% - 1.125rem);
    }
}
.c-card-list01.-col4 .c-card-list01__item.is-current {
    display: none;
}
@media (min-width: 768px) {
    .c-card-list01.-col2 .c-card-list01__item {
        -ms-flex-preferred-size: calc(50% - 0.5rem);
            flex-basis: calc(50% - 0.5rem);
        max-width: calc(50% - 0.5rem);
    }
}
@media (min-width: 1280px) {
    .c-card-list01.-col2 .c-card-list01__item {
        -ms-flex-preferred-size: calc(50% - 1.25rem);
            flex-basis: calc(50% - 1.25rem);
        max-width: calc(50% - 1.25rem);
    }
}
@media (min-width: 768px) {
    .c-card-list01.-sm .c-card-list01__item {
        padding: 1.25rem;
    }
}
@media (min-width: 1280px) {
    .c-card-list01.-sm .c-card-list01__item {
        padding: 1.5rem;
    }
}
@media (max-width: 767px) {
    .c-card-list01__title-wrap {
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        gap: 0.75rem;
    }
}
.c-card-list01__title-wrap + * {
    margin-top: 1.5rem;
}
@media (max-width: 767px) {
    .c-card-list01__title-wrap + * {
        margin-top: 1rem;
    }
}
.c-card-list01.-sm .c-card-list01__title-wrap + * {
    margin-top: 1rem;
}
.c-card-list01__img {
    max-width: 2.25rem;
}
@media (min-width: 768px) {
    .c-card-list01__img {
        max-width: 3.5rem;
    }
}
@media (min-width: 768px) {
    .c-card-list01__img + * {
        margin-top: 1.5rem;
    }
}
@media (min-width: 768px) {
    .c-card-list01.-sm .c-card-list01__img {
        max-width: 2.5rem;
    }
}
@media (min-width: 768px) {
    .c-card-list01.-sm .c-card-list01__img + * {
        margin-top: 1rem;
    }
}
.c-card-list01__title {
    color: var(--c-pri);
    line-height: 1.5;
    font-weight: bold;
    font-size: 1.25rem;
}
.c-card-list01__title a {
    text-decoration: none;
}
@media (min-width: 960px) {
    .c-card-list01__title {
        font-size: 1.375rem;
    }
}
@media (min-width: 1280px) {
    .c-card-list01__title {
        font-size: 1.5rem;
    }
}
.c-card-list01__title + * {
    margin-top: 2rem;
}
@media (max-width: 767px) {
    .c-card-list01__title + * {
        margin-top: 1rem;
    }
}
@media (min-width: 960px) {
    .c-card-list01.-sm .c-card-list01__title {
        font-size: 1.25rem;
    }
}
.c-card-list01__desc br {
    display: none;
}
.c-card-list01__desc + * {
    margin-top: 1.5rem;
}
@media (max-width: 767px) {
    .c-card-list01__desc + * {
        margin-top: 1rem;
    }
}
@media (min-width: 768px) {
    .c-card-list01.-sm .c-card-list01__desc {
        font-size: 0.875rem;
    }
}
.c-card-list01.-sm .c-card-list01__desc + * {
    margin-top: 1rem;
}
@media (max-width: 767px) {
    .c-card-list01__link[class] * {
        font-size: 0.875rem;
    }
}
.c-card-list01__link[class] *.-list {
    display: none;
}
.c-card-list01__link[class] *.-detail {
    display: inline-block;
}

body[data-page-slug=about] .c-card-list01__link *.-list {
    display: inline-block;
}
body[data-page-slug=about] .c-card-list01__link *.-detail {
    display: none;
}

@media (min-width: 768px) {
    .c-card-list02__list {
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        gap: 1.5rem;
    }
}
@media (min-width: 960px) {
    .c-card-list02__list {
        gap: 2.5rem;
    }
}
@media (min-width: 768px) {
    .c-card-list02__item {
        -ms-flex-negative: 0;
            flex-shrink: 0;
        -webkit-box-flex: 0;
            -ms-flex-positive: 0;
                flex-grow: 0;
        -ms-flex-preferred-size: calc(33.3333333333% - 1rem);
            flex-basis: calc(33.3333333333% - 1rem);
        max-width: calc(33.3333333333% - 1rem);
    }
}
@media (min-width: 960px) {
    .c-card-list02__item {
        -ms-flex-preferred-size: calc(33.3333333333% - 1.6666666667rem);
            flex-basis: calc(33.3333333333% - 1.6666666667rem);
        max-width: calc(33.3333333333% - 1.6666666667rem);
    }
}
@media (max-width: 767px) {
    .c-card-list02__item + .c-card-list02__item {
        margin-top: 1.5rem;
    }
}
.c-card-list02__img {
    overflow: hidden;
    aspect-ratio: 374/230;
}
.c-card-list02__img + * {
    margin-top: 1rem;
}
.c-card-list02__img img {
    -o-object-fit: cover;
       object-fit: cover;
    height: 100%;
    width: 100%;
}
.c-card-list02__title {
    line-height: 1.5;
    font-weight: bold;
    font-size: 1.5rem;
}
.c-card-list02__title span {
    font-size: 87.5%;
}
@media (max-width: 767px) {
    .c-card-list02__title {
        font-size: 1.5rem;
    }
}
.c-card-list02__title + * {
    margin-top: 0.5rem;
}
.c-card-list02__item:nth-child(3n+1) .c-card-list02__title {
    color: var(--c-sec);
}
.c-card-list02__item:nth-child(3n+2) .c-card-list02__title {
    color: var(--c-pri);
}
.c-card-list02__item:nth-child(3n+3) .c-card-list02__title {
    color: var(--c-third);
}
.c-card-list02__desc + * {
    margin-top: 1rem;
}
.c-card-list02__info-title {
    color: var(--c-pri);
    font-weight: bold;
}
.c-card-list02__info-title + * {
    margin-top: 0.5rem;
}
.c-card-list02__info-desc {
    color: var(--c-pri);
    font-size: 0.875rem;
}
.c-card-list02__info {
    background-color: var(--c-pri-light);
    padding: 1rem 1.5rem;
}
.c-card-list02__info + * {
    margin-top: 1rem;
}

@media (min-width: 768px) {
    .c-card-list03__list {
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        gap: 2.5rem 0;
    }
}
@media (min-width: 768px) {
    .c-card-list03__item {
        -ms-flex-negative: 0;
            flex-shrink: 0;
        -webkit-box-flex: 0;
            -ms-flex-positive: 0;
                flex-grow: 0;
        -ms-flex-preferred-size: 50%;
            flex-basis: 50%;
        max-width: 50%;
    }
}
@media (min-width: 960px) {
    .c-card-list03__item {
        -ms-flex-preferred-size: 25%;
            flex-basis: 25%;
        max-width: 25%;
    }
}
@media (max-width: 767px) {
    .c-card-list03__item + .c-card-list03__item {
        margin-top: 1.5rem;
    }
}
.c-card-list03__img {
    aspect-ratio: 300/200;
}
.c-card-list03__img img {
    -o-object-fit: cover;
       object-fit: cover;
    height: 100%;
    width: 100%;
}
.c-card-list03__img + * {
    margin-top: 0.75rem;
}
.c-card-list03__label {
    display: inline-block;
    background-color: var(--c-pri);
    line-height: 1.25;
    color: var(--c-wht);
    font-weight: bold;
    font-size: 0.75rem;
    padding: 0.25rem 0.5rem 0.125rem;
}
.c-card-list03__label + * {
    margin-top: 0.5rem;
}
.c-card-list03__title {
    letter-spacing: 0.08em;
    line-height: 1.5;
    font-weight: bold;
    font-size: 1.25rem;
}
@media (max-width: 767px) {
    .c-card-list03__title {
        font-size: 1.125rem;
    }
}
.c-card-list03__desc {
    line-height: 1.5;
    font-size: 0.875rem;
}
.c-card-list03__desc + * {
    margin-top: 0.5rem;
}

.c-card-list04 {
    position: relative;
    padding: 0 1.25rem 1.25rem;
}
@media (min-width: 960px) {
    .c-card-list04 {
        padding: 0;
    }
}
.c-card-list04::before {
    content: "";
    display: block;
    border: 1px solid var(--c-gry);
    position: absolute;
    z-index: -1;
    top: 0;
    left: 0;
    width: 100%;
    height: calc(100% - 1.875rem);
    margin-top: 1.875rem;
}
@media (min-width: 960px) {
    .c-card-list04::before {
        display: none;
    }
}
.c-card-list04.-wide {
    padding: 0;
}
.c-card-list04.-wide::before {
    display: none;
}
.c-card-list04__headline-wrap {
    position: relative;
    text-align: center;
}
.c-card-list04__headline-wrap::before, .c-card-list04__headline-wrap::after {
    content: "";
    position: absolute;
    z-index: -1;
    bottom: 0;
    display: none;
}
@media (min-width: 960px) {
    .c-card-list04__headline-wrap::before, .c-card-list04__headline-wrap::after {
        display: block;
        left: 50%;
        -webkit-transform: translateX(-50%);
                transform: translateX(-50%);
        margin-bottom: -5rem;
    }
}
.c-card-list04__headline-wrap::before {
    background-color: var(--c-gry);
    width: 2px;
    height: 5rem;
}
.c-card-list04__headline-wrap::after {
    border: 2px solid var(--c-gry);
    width: calc(66.6666666667% + 1.25rem);
    border-bottom: 0;
    height: 2.5rem;
}
.c-card-list04__headline-wrap + * {
    margin-top: 1.5rem;
}
@media (min-width: 960px) {
    .c-card-list04__headline-wrap + * {
        margin-top: 5rem;
    }
}
.c-card-list04__headline {
    display: inline-block;
    background-color: var(--c-blk);
    font-weight: bold;
    color: var(--c-wht);
    font-size: 1.125rem;
    padding: 1rem 1.125rem 0.875rem;
}
@media (min-width: 960px) {
    .c-card-list04__headline {
        font-size: 1.25rem;
        padding: 1.375rem 1.5rem 1.25rem;
    }
}
@media (min-width: 960px) {
    .c-card-list04__list {
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        gap: 2.5rem;
    }
}
.c-card-list04__item {
    overflow: hidden;
    background-color: var(--c-wht);
    -webkit-box-shadow: var(--c-shadow);
            box-shadow: var(--c-shadow);
}
@media (min-width: 960px) {
    .c-card-list04__item {
        -ms-flex-negative: 0;
            flex-shrink: 0;
        -webkit-box-flex: 0;
            -ms-flex-positive: 0;
                flex-grow: 0;
        -ms-flex-preferred-size: calc(33.3333333333% - 1.6666666667rem);
            flex-basis: calc(33.3333333333% - 1.6666666667rem);
        max-width: calc(33.3333333333% - 1.6666666667rem);
    }
}
.c-card-list04__item + .c-card-list04__item {
    margin-top: 1.5rem;
}
@media (min-width: 960px) {
    .c-card-list04__item + .c-card-list04__item {
        margin-top: 0;
    }
}
.c-card-list04.-wide .c-card-list04__item {
    -ms-flex-preferred-size: 100%;
        flex-basis: 100%;
    max-width: 100%;
}
.c-card-list04__text {
    padding: 1.5rem;
}
.c-card-list04__text > * + * {
    margin-top: 1.5rem;
}
@media (min-width: 768px) {
    .c-card-list04.-wide .c-card-list04__text {
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        gap: 1.5rem;
    }
}
@media (min-width: 768px) {
    .c-card-list04__text-box {
        -ms-flex-negative: 0;
            flex-shrink: 0;
        -webkit-box-flex: 0;
            -ms-flex-positive: 0;
                flex-grow: 0;
        -ms-flex-preferred-size: calc(50% - 0.75rem);
            flex-basis: calc(50% - 0.75rem);
        max-width: calc(50% - 0.75rem);
        margin-top: 0;
    }
}
@media (min-width: 960px) {
    .c-card-list04__text-box {
        -ms-flex-preferred-size: calc(25% - 1.125rem);
            flex-basis: calc(25% - 1.125rem);
        max-width: calc(25% - 1.125rem);
    }
}
.c-card-list04__img {
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    -ms-flex-preferred-size: 1.5rem;
        flex-basis: 1.5rem;
    max-width: 1.5rem;
    width: 1.5rem;
    height: 1.5rem;
}
.c-card-list04__img img {
    -o-object-fit: cover;
       object-fit: cover;
    height: 100%;
    width: 100%;
}
.c-card-list04__label-wrap {
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 0.75rem;
}
.c-card-list04__label-wrap[class] + * {
    margin-top: 0.5rem;
}
.c-card-list04__label {
    -ms-flex-negative: 1;
        flex-shrink: 1;
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    line-height: 1.5;
    font-weight: bold;
    font-size: 1.125rem;
    padding-top: 0.25rem;
}
.c-card-list04__item:nth-child(1) .c-card-list04__label {
    color: var(--c-sec);
}
.c-card-list04.-pri .c-card-list04__item .c-card-list04__label, .c-card-list04__item:nth-child(2) .c-card-list04__label {
    color: var(--c-pri);
}
.c-card-list04__item:nth-child(3) .c-card-list04__label {
    color: var(--c-third);
}
.c-card-list04__title-wrap {
    padding: 1.25rem 1.5rem;
}
.c-card-list04__item:nth-child(1) .c-card-list04__title-wrap {
    background-color: var(--c-sec);
}
.c-card-list04.-pri .c-card-list04__item .c-card-list04__title-wrap, .c-card-list04__item:nth-child(2) .c-card-list04__title-wrap {
    background-color: var(--c-pri);
}
.c-card-list04__item:nth-child(3) .c-card-list04__title-wrap {
    background-color: var(--c-third);
}
.c-card-list04__title {
    color: var(--c-wht);
    line-height: 1.5;
    font-weight: bold;
    font-size: 1.25rem;
}
.c-card-list04__title a {
    color: inherit;
    text-decoration: none;
}
.c-card-list04__title span {
    font-size: 80%;
}
@media (max-width: 767px) {
    .c-card-list04__title {
        font-size: 1.25rem;
    }
}
.c-card-list04__title + * {
    margin-top: 0.125rem;
}
.c-card-list04__link {
    text-align: right;
    color: var(--c-wht);
    font-size: 0.875rem;
}
.c-card-list04__desc {
    font-size: 0.875rem;
}

@media (min-width: 768px) {
    .c-card-list05__list {
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        gap: 2.5rem;
    }
}
.c-card-list05__item {
    border: 1px solid var(--c-wht);
    -webkit-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
    -webkit-box-shadow: var(--c-shadow);
            box-shadow: var(--c-shadow);
    background-color: var(--c-wht);
    padding: 1.25rem;
}
@media (min-width: 768px) {
    .c-card-list05__item {
        -ms-flex-negative: 0;
            flex-shrink: 0;
        -webkit-box-flex: 0;
            -ms-flex-positive: 0;
                flex-grow: 0;
        -ms-flex-preferred-size: calc(50% - 1.25rem);
            flex-basis: calc(50% - 1.25rem);
        max-width: calc(50% - 1.25rem);
        padding: 1.5rem 2.5rem;
    }
}
@media (max-width: 767px) {
    .c-card-list05__item + .c-card-list05__item {
        margin-top: 1.25rem;
    }
}
@media (min-width: 768px) {
    .c-card-list05__item:hover {
        border: 1px solid var(--c-pri);
        -webkit-box-shadow: none !important;
                box-shadow: none !important;
    }
}
.c-card-list05__text {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 1rem;
}
.c-card-list05__text + * {
    margin-top: 0.75rem;
}
.c-card-list05__label {
    display: inline-block;
    background-color: var(--c-blk);
    line-height: 1.25;
    color: var(--c-wht);
    font-weight: bold;
    font-size: 0.875rem;
    padding: 0.25rem 0.5rem 0.125rem;
}
.c-card-list05__label.-new {
    background-color: var(--c-pri);
}
.c-card-list05__label.-career {
    background-color: var(--c-sec);
}
.c-card-list05__label.-company {
    background-color: var(--c-third);
}
.c-card-list05__title {
    line-height: 1.5;
    font-weight: bold;
    font-size: 1.125rem;
}
@media (min-width: 960px) {
    .c-card-list05__title {
        font-size: 1.25rem;
    }
}
.c-card-list05__title[class] a {
    text-decoration: none;
}
.c-card-list05__title + * {
    margin-top: 1rem;
}
.c-card-list05__desc {
    font-size: 0.875rem;
    background-repeat: no-repeat;
    background-size: 1rem auto;
    background-position: left center;
    background-image: url(../img/ico_map_pin_pri.svg);
    padding-left: 1.5rem;
}
.c-card-list05__comment {
    position: relative;
    background-color: var(--c-pri-light);
    color: var(--c-pri);
    font-size: 0.875rem;
    padding: 0.5rem 2rem;
}
.c-card-list05__comment::before {
    content: "";
    display: block;
    background-repeat: no-repeat;
    background-size: 100% auto;
    background-position: center center;
    background-image: url(../img/ico_check_pri.svg);
    width: 1rem;
    height: 1rem;
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;
    margin: 0.75rem 0 0 0.5rem;
}
.c-card-list05__comment + * {
    margin-top: 1rem;
}
.c-card-list05__link {
    text-align: right;
    font-size: 0.875rem;
}

@media (min-width: 768px) {
    .c-card-list06__list {
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        gap: 1rem;
    }
}
@media (min-width: 1280px) {
    .c-card-list06__list {
        gap: 2.5rem;
    }
}
.c-card-list06__item {
    border: 1px solid var(--c-pri);
    -webkit-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
    padding: 1.75rem;
}
@media (min-width: 768px) {
    .c-card-list06__item {
        -ms-flex-negative: 0;
            flex-shrink: 0;
        -webkit-box-flex: 0;
            -ms-flex-positive: 0;
                flex-grow: 0;
        -ms-flex-preferred-size: calc(50% - 0.5rem);
            flex-basis: calc(50% - 0.5rem);
        max-width: calc(50% - 0.5rem);
        padding: 2rem;
    }
}
@media (min-width: 1280px) {
    .c-card-list06__item {
        -ms-flex-preferred-size: calc(50% - 1.25rem);
            flex-basis: calc(50% - 1.25rem);
        max-width: calc(50% - 1.25rem);
        padding: 2.5rem;
    }
}
@media (max-width: 767px) {
    .c-card-list06__item + .c-card-list06__item {
        margin-top: 1.125rem;
    }
}
.c-card-list06__title {
    line-height: 1.5;
    color: var(--c-pri);
    font-weight: bold;
    font-size: 1.25rem;
}
.c-card-list06__title + * {
    margin-top: 1rem;
}
.c-card-list06__desc + * {
    margin-top: 1rem;
}
.c-card-list06__comment {
    background-color: var(--c-pri-light);
    padding: 1rem 1.5rem;
}
.c-card-list06__comment + * {
    margin-top: 1.5rem;
}
.c-card-list06__comment-title {
    border-bottom: 1px dashed var(--c-pri);
    line-height: 1.5;
    color: var(--c-pri);
    font-weight: bold;
    font-size: 1.125rem;
    padding-bottom: 0.5rem;
}
.c-card-list06__comment-title + * {
    margin-top: 0.5rem;
}
.c-card-list06__comment-desc {
    color: var(--c-pri);
}
.c-card-list06__comment-desc + * {
    margin-top: 1.5rem;
}
.c-card-list06__info {
    background-repeat: no-repeat;
    background-size: 3.5rem auto;
    background-position: left center;
    background-image: url(../img/ico_user.svg);
    line-height: 1.5;
    font-weight: bold;
    letter-spacing: 0.08em;
    padding-left: 4.5rem;
    padding-top: 0.375rem;
    padding-bottom: 0.375rem;
}
.c-card-list06__info span {
    display: block;
    font-size: 87.5%;
}

.c-step-list01 {
    overflow: hidden;
}
.c-step-list01__list {
    counter-reset: item;
}
@media (min-width: 768px) {
    .c-step-list01__list {
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        gap: 1.5rem 3.5rem;
    }
}
.c-step-list01__item {
    position: relative;
    border: 1px solid var(--c-pri);
    padding: 1.75rem;
}
@media (min-width: 768px) {
    .c-step-list01__item {
        -ms-flex-negative: 0;
            flex-shrink: 0;
        -webkit-box-flex: 0;
            -ms-flex-positive: 0;
                flex-grow: 0;
        -ms-flex-preferred-size: calc(50% - 1.75rem);
            flex-basis: calc(50% - 1.75rem);
        max-width: calc(50% - 1.75rem);
        padding: 1.5rem;
    }
}
@media (min-width: 960px) {
    .c-step-list01__item {
        -ms-flex-preferred-size: calc(33.3333333333% - 2.3333333333rem);
            flex-basis: calc(33.3333333333% - 2.3333333333rem);
        max-width: calc(33.3333333333% - 2.3333333333rem);
    }
}
@media (min-width: 1280px) {
    .c-step-list01__item {
        -ms-flex-preferred-size: calc(25% - 2.625rem);
            flex-basis: calc(25% - 2.625rem);
        max-width: calc(25% - 2.625rem);
    }
}
@media (max-width: 767px) {
    .c-step-list01__item + .c-step-list01__item {
        margin-top: 4rem;
    }
}
.c-step-list01__item::before {
    counter-increment: item;
    display: block;
    color: var(--c-pri);
    font-weight: bold;
    letter-spacing: 0.16em;
    content: "step" counter(item);
    text-transform: uppercase;
    text-align: center;
    padding-bottom: 0.25rem;
}
.c-step-list01__item + .c-step-list01__item::after {
    content: "";
    display: block;
    background-repeat: no-repeat;
    background-size: auto auto;
    background-position: center center;
    background-image: url(../img/ico_step_right.svg);
    position: absolute;
    z-index: 1;
}
@media (min-width: 768px) {
    .c-step-list01__item + .c-step-list01__item::after {
        width: 1.75rem;
        height: 3rem;
        top: 50%;
        left: 0;
        -webkit-transform: translate(-100%, -50%);
                transform: translate(-100%, -50%);
        margin-left: -0.875rem;
    }
}
@media (max-width: 767px) {
    .c-step-list01__item + .c-step-list01__item::after {
        width: 3.25rem;
        height: 2rem;
        background-image: url(../img/ico_step_download.svg);
        top: 0;
        left: 50%;
        -webkit-transform: translate(-50%, -100%);
                transform: translate(-50%, -100%);
        margin-top: -1.125rem;
    }
}
.c-step-list01__title {
    text-align: center;
    line-height: 1.5;
    font-weight: bold;
    color: var(--c-pri);
    font-size: 1.25rem;
}
@media (max-width: 767px) {
    .c-step-list01__title {
        font-size: 1.125rem;
    }
}
.c-step-list01__title + * {
    margin-top: 0.5rem;
}
@media (min-width: 768px) {
    .c-step-list01__desc {
        font-size: 0.875rem;
    }
}

.c-step-list02__list {
    counter-reset: item;
}
.c-step-list02__item {
    position: relative;
    border: 1px solid var(--c-pri);
    padding: 2.375rem 1.25rem 1.25rem;
}
@media (min-width: 768px) {
    .c-step-list02__item {
        padding: 3rem 2.5rem 2.5rem;
    }
}
@media (min-width: 960px) {
    .c-step-list02__item {
        padding: 3.25rem 3.5rem 2.5rem 3.5rem;
    }
}
.c-step-list02__item::before {
    counter-increment: item;
    content: "STEP0" counter(item);
    line-height: 1;
    font-weight: bold;
    letter-spacing: 0.16em;
    color: var(--c-pri);
    font-size: 3.5rem;
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;
    opacity: 0.1;
    margin: 1.375rem 0 0 0;
}
@media (max-width: 767px) {
    .c-step-list02__item::before {
        display: block;
        text-align: center;
        width: 100%;
        font-size: 4rem;
    }
}
@media (min-width: 768px) {
    .c-step-list02__item::before {
        margin: 2.375rem 0 0 2.5rem;
    }
}
@media (min-width: 960px) {
    .c-step-list02__item::before {
        margin: 2.5rem 0 0 3.5rem;
    }
}
.c-step-list02__item + .c-step-list02__item {
    margin-top: 4.5rem;
}
.c-step-list02__item + .c-step-list02__item::after {
    content: "";
    display: block;
    background-repeat: no-repeat;
    background-size: 100% auto;
    background-position: left center;
    background-image: url(../img/ico_step_down.svg);
    width: 2.5rem;
    height: 1.5rem;
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;
    margin: -3rem 0 0 0;
}
@media (max-width: 767px) {
    .c-step-list02__item + .c-step-list02__item::after {
        left: 50%;
        -webkit-transform: translateX(-50%);
                transform: translateX(-50%);
    }
}
@media (min-width: 768px) {
    .c-step-list02__item + .c-step-list02__item::after {
        margin: -3rem 0 0 2.5rem;
    }
}
@media (min-width: 960px) {
    .c-step-list02__item + .c-step-list02__item::after {
        margin: -3rem 0 0 3.5rem;
    }
}
.c-step-list02__item:nth-child(9) ~ *::before {
    content: "STEP" counter(item);
}
.c-step-list02__title {
    letter-spacing: 0.08em;
    color: var(--c-pri);
    font-weight: bold;
    font-size: 1.25rem;
}
@media (max-width: 767px) {
    .c-step-list02__title {
        text-align: center;
    }
}
.c-step-list02__title + * {
    margin-top: 2rem;
}
@media (max-width: 767px) {
    .c-step-list02__title + * {
        margin-top: 1.25rem;
    }
}
.c-step-list02__desc + * {
    margin-top: 1.5rem;
}
@media (max-width: 767px) {
    .c-step-list02__desc + * {
        margin-top: 1rem;
    }
}
.c-step-list02__comment {
    background-color: var(--c-pri-light);
    color: var(--c-pri);
    font-size: 0.875rem;
    padding: 1rem 1.5rem;
}
.c-step-list02__comment > * + * {
    margin-top: 1.5rem;
}
.c-step-list02__comment[class] > * + ul, .c-step-list02__comment[class] > * + ol {
    margin-top: 0;
}
.c-step-list02__btn a {
    border-radius: 3rem;
    color: var(--c-wht);
    background-image: var(--c-gra);
    display: block;
    text-align: center;
    padding: 1.25rem 1rem 1.125rem;
}
@media (min-width: 768px) {
    .c-step-list02__btn a {
        padding: 0.75rem 1rem 0.625rem;
        width: 13.5rem;
    }
}
.c-step-list02__btn a, .c-step-list02__btn a:hover {
    text-decoration: none;
}

/* =====================================
 * 下層ページ　テキスト周り
 * ================================== */
.c-font-size-sm,
.has-small-font-size {
    font-size: 75%;
}

.c-font-size-md,
.has-medium-font-size {
    font-size: 87.5%;
}

.c-font-size,
.has-normal-font-size {
    font-size: inherit;
}

.c-font-size-lg,
.has-large-font-size {
    font-size: 112.5%;
}

.c-font-size-xl,
.has-x-large-font-size,
.has-huge-font-size {
    font-size: 125%;
}

.c-font-size-xll {
    font-size: 150%;
}

.c-text-align-left,
.has-text-align-left {
    text-align: left;
}

.c-text-align-center,
.has-text-align-center {
    text-align: center;
}

.c-text-align-right,
.has-text-align-right {
    text-align: right;
}

.wp-block-image {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}
* + .wp-block-image {
    margin-top: 2rem;
}
@media (max-width: 767px) {
    .wp-block-image {
        margin-top: 1.5rem;
    }
}
.wp-block-image .alignleft,
.wp-block-image .alignright {
    display: inline-block;
}
.wp-block-image .alignleft figcaption,
.wp-block-image .alignright figcaption,
.wp-block-image .aligncenter figcaption {
    text-align: center;
}
@media (max-width: 767px) {
    .wp-block-image .alignleft,
    .wp-block-image .alignright,
    .wp-block-image .aligncenter {
        margin-left: auto;
        margin-right: auto;
    }
}
.wp-block-image .alignright {
    margin-left: auto;
}
.wp-block-image .aligncenter {
    margin-left: auto;
    margin-right: auto;
}

.wp-block-quote {
    position: relative;
    background-color: var(--c-gry-light);
    padding: 4rem;
}
@media (max-width: 767px) {
    .wp-block-quote {
        padding: 3.5rem 1.5rem;
    }
}
.wp-block-quote::before, .wp-block-quote::after {
    content: "";
    display: block;
    width: 2rem;
    height: 2rem;
    background-repeat: no-repeat;
    background-size: 100% auto;
    background-position: left center;
    position: absolute;
    z-index: 1;
}
.wp-block-quote::before {
    background-image: url(../img/ico_quote_mark01.svg);
    top: 0;
    left: 0;
    margin: 1.5rem 0 0 1.5rem;
}
@media (max-width: 767px) {
    .wp-block-quote::before {
        margin-top: 1rem;
    }
}
.wp-block-quote::after {
    background-image: url(../img/ico_quote_mark02.svg);
    bottom: 0;
    right: 0;
    margin: 0 1.5rem 1.5rem 0;
}
@media (max-width: 767px) {
    .wp-block-quote::after {
        margin-bottom: 1rem;
    }
}
.wp-block-quote cite {
    font-size: 0.75rem;
}
.wp-block-quote cite::before {
    content: "出典：";
    display: inline-block;
}
.wp-block-quote cite a {
    display: inline-block;
    color: var(--c-pri);
    text-decoration: underline;
    margin-top: 1.5rem;
}
@media (min-width: 960px) {
    .wp-block-quote cite a:hover {
        text-decoration: none;
    }
}

.wp-block-file {
    text-align: center;
    border: 1px solid var(--c-gry);
    padding: 2rem;
}
@media (max-width: 767px) {
    .wp-block-file {
        padding: 1.5rem;
    }
}
.wp-block-file::before {
    content: "下記よりPDFをダウンロードいただけます。";
    display: block;
    text-align: center;
    padding-bottom: 1rem;
}
@media (max-width: 767px) {
    .wp-block-file::before {
        font-size: 0.875rem;
        padding-bottom: 0.5rem;
    }
}
.wp-block-file object {
    display: none;
}
.wp-block-file a:not([download]) {
    display: none;
}
.wp-block-file a[download] {
    font-weight: bold;
    color: inherit;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: 0.44em auto;
    background-position: left 40%;
    background-size: 1em auto;
    background-image: url("../img/ico_pdf.svg");
    padding-left: 1.875rem;
}
@media (min-width: 960px) {
    .wp-block-file a[download]:hover {
        text-decoration: none;
    }
}

.wp-block-embed:not([class*=is-type-wp-embed]) .wp-block-embed__wrapper {
    aspect-ratio: 16/9;
}
.wp-block-embed:not([class*=is-type-wp-embed]) .wp-block-embed__wrapper iframe {
    -o-object-fit: cover;
       object-fit: cover;
    width: 100%;
    height: 100%;
}

.c-video .c-video__inner {
    aspect-ratio: 16/9;
}
.c-video .c-video__inner iframe {
    -o-object-fit: cover;
       object-fit: cover;
    width: 100%;
    height: 100%;
}

.is-root-container > * + *,
.c-content > * + * {
    margin-top: 3.5rem;
}
@media (max-width: 767px) {
    .is-root-container > * + *,
    .c-content > * + * {
        margin-top: 2.5rem;
    }
}

* + .c-section {
    margin-top: 7.5rem;
}
@media (max-width: 767px) {
    * + .c-section {
        margin-top: 5.75rem;
    }
}
* + .c-section.-lg {
    margin-top: 9rem;
}
@media (max-width: 767px) {
    * + .c-section.-lg {
        margin-top: 6rem;
    }
}
* + .c-section.-xs {
    margin-top: 1.5rem;
}
@media (max-width: 767px) {
    * + .c-section.-xs {
        margin-top: 1.25rem;
    }
}
* + .c-section.-sm {
    margin-top: 2.5rem;
}
@media (max-width: 767px) {
    * + .c-section.-sm {
        margin-top: 2rem;
    }
}
* + .c-section.-md {
    margin-top: 4rem;
}
@media (max-width: 767px) {
    * + .c-section.-md {
        margin-top: 3rem;
    }
}
.c-section.-spacer + * {
    margin-top: 0 !important;
}

/* ================================== */
h4.wp-block,
h3.wp-block,
h2.wp-block,
h4[class*=has-text-align],
h4[class*=font-size],
h3[class*=has-text-align],
h3[class*=font-size],
h2[class*=has-text-align],
h2[class*=font-size],
h2:not([class]),
h3:not([class]),
h4:not([class]) {
    letter-spacing: 0.08em;
    font-weight: bold;
    line-height: 1.5;
}

/* ================================== */
h4.wp-block,
h4[class*=has-text-align],
h4[class*=font-size],
h4:not([class]) {
    font-size: 1.125rem;
}
h4.wp-block + *,
h4[class*=has-text-align] + *,
h4[class*=font-size] + *,
h4:not([class]) + * {
    margin-top: 0.5rem;
}

* + h4[class*=has-text-align],
* + h4[class*=font-size],
* + h4:not([class]) {
    margin-top: 2.5rem;
}

/* ================================== */
h3.wp-block,
h3[class*=has-text-align],
h3[class*=font-size],
h3:not([class]) {
    position: relative;
    font-size: 1.5rem;
    color: var(--c-pri);
    padding-left: 1.25rem;
}
@media (max-width: 767px) {
    h3.wp-block,
    h3[class*=has-text-align],
    h3[class*=font-size],
    h3:not([class]) {
        font-size: 1.25rem;
    }
}
h3.wp-block::before,
h3[class*=has-text-align]::before,
h3[class*=font-size]::before,
h3:not([class])::before {
    content: "";
    display: block;
    background-color: var(--c-pri);
    width: 4px;
    height: calc(100% - 0.5em);
    position: absolute;
    z-index: 1;
    top: 50%;
    left: 0;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
}
@media (max-width: 767px) {
    h3.wp-block::before,
    h3[class*=has-text-align]::before,
    h3[class*=font-size]::before,
    h3:not([class])::before {
        width: 3px;
    }
}
h3.wp-block + *,
h3[class*=has-text-align] + *,
h3[class*=font-size] + *,
h3:not([class]) + * {
    margin-top: 1.5rem;
}
@media (max-width: 767px) {
    h3.wp-block + *,
    h3[class*=has-text-align] + *,
    h3[class*=font-size] + *,
    h3:not([class]) + * {
        margin-top: 1.125rem;
    }
}

* + h3[class*=has-text-align],
* + h3[class*=font-size],
* + h3:not([class]) {
    margin-top: 3.5rem;
}
@media (max-width: 767px) {
    * + h3[class*=has-text-align],
    * + h3[class*=font-size],
    * + h3:not([class]) {
        margin-top: 2.875rem;
    }
}

/* ================================== */
h2.wp-block,
h2[class*=has-text-align],
h2[class*=font-size],
h2:not([class]) {
    background-repeat: no-repeat;
    background-size: 2rem auto;
    background-position: left 0;
    background-image: url(../img/ico_headline.svg);
    color: var(--c-sec);
    font-size: 1.375rem;
    padding-left: 3rem;
}
@media (min-width: 768px) {
    h2.wp-block,
    h2[class*=has-text-align],
    h2[class*=font-size],
    h2:not([class]) {
        background-size: 2.5rem auto;
        background-position: left 0.25rem;
        font-size: 2rem;
        padding-left: 4rem;
    }
}
h2.wp-block + *,
h2[class*=has-text-align] + *,
h2[class*=font-size] + *,
h2:not([class]) + * {
    margin-top: 3.5rem;
}
@media (max-width: 767px) {
    h2.wp-block + *,
    h2[class*=has-text-align] + *,
    h2[class*=font-size] + *,
    h2:not([class]) + * {
        margin-top: 1.75rem;
    }
}

* + h2[class*=has-text-align],
* + h2[class*=font-size],
* + h2:not([class]) {
    margin-top: 7.5rem;
}
@media (max-width: 767px) {
    * + h2[class*=has-text-align],
    * + h2[class*=font-size],
    * + h2:not([class]) {
        margin-top: 5.75rem;
    }
}

/* ================================== */
ol.wp-block,
ol[class*=font-size] {
    list-style: decimal;
}

ul.wp-block,
ul[class*=font-size] {
    list-style: inherit;
}

ol.wp-block,
ul.wp-block,
ol:not([class]),
ul:not([class]),
ol[class*=font-size],
ul[class*=font-size] {
    padding: 0 0 0 1.375rem;
}
ol.wp-block li + li,
ul.wp-block li + li,
ol:not([class]) li + li,
ul:not([class]) li + li,
ol[class*=font-size] li + li,
ul[class*=font-size] li + li {
    margin-top: 0.125rem;
}

* + ol:not([class]),
* + ul:not([class]),
* + ol[class*=font-size],
* + ul[class*=font-size] {
    margin-top: 1.5rem;
}
@media (max-width: 767px) {
    * + ol:not([class]),
    * + ul:not([class]),
    * + ol[class*=font-size],
    * + ul[class*=font-size] {
        margin-top: 1.5rem;
    }
}

@media (max-width: 767px) {
    .u-hidden-sp {
        display: none !important;
    }
}
@media (min-width: 768px) {
    .u-hidden-tb {
        display: none !important;
    }
}
@media (min-width: 960px) {
    .u-hidden-pc {
        display: none !important;
    }
}
@media (min-width: 1280px) {
    .u-hidden-wd {
        display: none !important;
    }
}
.u-scroll-in-view01 {
    opacity: 0;
    -webkit-filter: blur(100px);
            filter: blur(100px);
    -webkit-transition: opacity 0.4s ease, -webkit-filter 0.4s ease, -webkit-transform 0.4s cubic-bezier(0.77, 0, 0.175, 1);
    transition: opacity 0.4s ease, -webkit-filter 0.4s ease, -webkit-transform 0.4s cubic-bezier(0.77, 0, 0.175, 1);
    transition: opacity 0.4s ease, filter 0.4s ease, transform 0.4s cubic-bezier(0.77, 0, 0.175, 1);
    transition: opacity 0.4s ease, filter 0.4s ease, transform 0.4s cubic-bezier(0.77, 0, 0.175, 1), -webkit-filter 0.4s ease, -webkit-transform 0.4s cubic-bezier(0.77, 0, 0.175, 1);
}
.u-scroll-in-view01.is-scroll-in-view {
    opacity: 1;
    -webkit-filter: blur(0);
            filter: blur(0);
}

.u-scroll-in-view02 {
    opacity: 0;
    -webkit-transform: translateY(2rem);
            transform: translateY(2rem);
    -webkit-transition: opacity 0.4s ease, -webkit-transform 0.4s cubic-bezier(0.77, 0, 0.175, 1);
    transition: opacity 0.4s ease, -webkit-transform 0.4s cubic-bezier(0.77, 0, 0.175, 1);
    transition: opacity 0.4s ease, transform 0.4s cubic-bezier(0.77, 0, 0.175, 1);
    transition: opacity 0.4s ease, transform 0.4s cubic-bezier(0.77, 0, 0.175, 1), -webkit-transform 0.4s cubic-bezier(0.77, 0, 0.175, 1);
}
.u-scroll-in-view02.is-scroll-in-view {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
}

/* =====================================
 * 変数設定
 * ================================== */
/* =====================================
 * カラー変数
 * ================================== */
/*

--c-〇〇〇-darker:標準カラーよりやや暗め;
--c-〇〇〇-dark:標準カラーより少し暗め;
--c-〇〇〇:標準カラー;
--c-〇〇〇-lighter:標準カラーより少し薄め;
--c-〇〇〇-light:標準カラーよりやや薄め;

↓

--c-blk-darker:#000;
--c-blk-dark:#111;
--c-blk:#333;
--c-blk-lighter:#555;
--c-blk-light:#777;

*/
:root {
    --c-error:#FF0000;
    --c-mark:#fff9b1;
    --c-error-light:#ffe5e5;
    --c-mask:rgba(0, 0, 0, 0.64);
    --c-mask-light:rgba(0, 0, 0, 0.2);
    --c-wht:#ffffff;
    --c-wht-light:rgba(255, 255, 255, 0.5);
    --c-blk:#0E2B36;
    --c-pri-dark:#09A7AD;
    --c-pri:#07B2B9;
    --c-pri-light:#EBF9F9;
    --c-sec:#216B88;
    --c-third:#78DE94;
    --c-gra:linear-gradient(90deg, #216B88 0%, #07B2B9 50%, #90DCA5 100%);
    --c-gra02:linear-gradient(0deg, #216B88 0%, #07B2B9 50%, #90DCA5 100%);
    --c-gry-darker:#999999;
    --c-gry-dark:#ccc;
    --c-gry:#DDDCDC;
    --c-gry-light:#F7F7F7;
    --c-shadow:0 0 1.25rem rgba(7, 179, 185, 0.1);
}

/* =====================================
 * メディアクエリ
 * ================================== */
/* =====================================
* contact form 7 デフォルトcss
* ================================== */
.wpcf7 .screen-reader-response {
    position: absolute;
    overflow: hidden;
    clip: rect(1px, 1px, 1px, 1px);
    clip-path: inset(50%);
    height: 1px;
    width: 1px;
    margin: -1px;
    padding: 0;
    border: 0;
    word-wrap: normal !important;
}

.wpcf7 form .wpcf7-response-output {
    margin: 2em 0.5em 1em;
    padding: 0.2em 1em;
    border: 2px solid #00a0d2;
    /* Blue */
}

.wpcf7 form.init .wpcf7-response-output,
.wpcf7 form.resetting .wpcf7-response-output,
.wpcf7 form.submitting .wpcf7-response-output {
    display: none;
}

.wpcf7 form.sent .wpcf7-response-output {
    border-color: #46b450;
    /* Green */
}

.wpcf7 form.failed .wpcf7-response-output,
.wpcf7 form.aborted .wpcf7-response-output {
    border-color: #dc3232;
    /* Red */
}

.wpcf7 form.spam .wpcf7-response-output {
    border-color: #f56e28;
    /* Orange */
}

.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output,
.wpcf7 form.payment-required .wpcf7-response-output {
    border-color: #ffb900;
    /* Yellow */
}

.wpcf7-form-control-wrap {
    position: relative;
}

.wpcf7-not-valid-tip {
    color: #dc3232;
    /* Red */
    font-size: 1em;
    font-weight: normal;
    display: block;
}

.use-floating-validation-tip .wpcf7-not-valid-tip {
    position: relative;
    top: -2ex;
    left: 1em;
    z-index: 100;
    border: 1px solid #dc3232;
    background: #fff;
    padding: 0.2em 0.8em;
    width: 24em;
}

.wpcf7-list-item {
    display: inline-block;
    margin: 0 0 0 1em;
}

.wpcf7-list-item-label::before,
.wpcf7-list-item-label::after {
    content: " ";
}

.wpcf7-spinner {
    visibility: hidden;
    display: inline-block;
    background-color: #23282d;
    /* Dark Gray 800 */
    opacity: 0.75;
    width: 24px;
    height: 24px;
    border: none;
    border-radius: 100%;
    padding: 0;
    margin: 0 24px;
    position: relative;
}

form.submitting .wpcf7-spinner {
    visibility: visible;
}

.wpcf7-spinner::before {
    content: "";
    position: absolute;
    background-color: #fbfbfc;
    /* Light Gray 100 */
    top: 4px;
    left: 4px;
    width: 6px;
    height: 6px;
    border: none;
    border-radius: 100%;
    -webkit-transform-origin: 8px 8px;
            transform-origin: 8px 8px;
    -webkit-animation-name: spin;
            animation-name: spin;
    -webkit-animation-duration: 1000ms;
            animation-duration: 1000ms;
    -webkit-animation-timing-function: linear;
            animation-timing-function: linear;
    -webkit-animation-iteration-count: infinite;
            animation-iteration-count: infinite;
}

@media (prefers-reduced-motion: reduce) {
    .wpcf7-spinner::before {
        -webkit-animation-name: blink;
                animation-name: blink;
        -webkit-animation-duration: 2000ms;
                animation-duration: 2000ms;
    }
}
@-webkit-keyframes spin {
    from {
        -webkit-transform: rotate(0deg);
                transform: rotate(0deg);
    }
    to {
        -webkit-transform: rotate(360deg);
                transform: rotate(360deg);
    }
}
@keyframes spin {
    from {
        -webkit-transform: rotate(0deg);
                transform: rotate(0deg);
    }
    to {
        -webkit-transform: rotate(360deg);
                transform: rotate(360deg);
    }
}
@-webkit-keyframes blink {
    from {
        opacity: 0;
    }
    50% {
        opacity: 1;
    }
    to {
        opacity: 0;
    }
}
@keyframes blink {
    from {
        opacity: 0;
    }
    50% {
        opacity: 1;
    }
    to {
        opacity: 0;
    }
}
.wpcf7 [inert] {
    opacity: 0.5;
}

.wpcf7 input[type=file] {
    cursor: pointer;
}

.wpcf7 input[type=file]:disabled {
    cursor: default;
}

.wpcf7 .wpcf7-submit:disabled {
    cursor: not-allowed;
}

.wpcf7 input[type=url],
.wpcf7 input[type=email],
.wpcf7 input[type=tel] {
    direction: ltr;
}

.wpcf7-reflection > output {
    display: list-item;
    list-style: none;
}

.wpcf7-reflection > output[hidden] {
    display: none;
}

/* =====================================
 * フォームのオリジナル設定はここから
 * ================================== */
.p-form__inner + * {
    margin-top: 2.5rem;
}
@media (min-width: 768px) {
    .p-form__inner + * {
        margin-top: 5rem;
    }
}
@media (min-width: 960px) {
    .p-form__inner + * {
        margin-top: 7.5rem;
    }
}
.p-form__inner dt {
    font-weight: bold;
    line-height: 1.5;
    font-size: 1.125rem;
}
.p-form__inner dt + * {
    margin-top: 1rem;
}
.p-form__inner dd + * {
    margin-top: 2.5rem;
}
.p-form__link {
    text-align: center;
}
.p-form__link[class] a {
    color: var(--c-blk);
}
* + .p-form__link {
    margin-top: 1.5rem;
}
@media (max-width: 767px) {
    * + .p-form__link {
        margin-top: 1rem;
    }
}
.p-form__block + .p-form__block {
    margin-top: 1.5rem;
}
.p-form__req {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding-right: 1rem;
}
@media (max-width: 767px) {
    .p-form__req {
        padding-right: 0;
    }
}
.p-form__req:after {
    content: "※必須";
    display: inline-block;
    color: var(--c-pri);
    font-weight: normal;
    font-size: 0.875rem;
    margin-left: 1.5rem;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    -ms-flex-preferred-size: 2.75rem;
        flex-basis: 2.75rem;
    max-width: 2.75rem;
}
.p-form__item + .p-form__item {
    margin-top: 2rem;
}
.p-form__item-headline + * {
    margin-top: 1rem;
}
.p-form__item-headline + * {
    margin-left: 0;
}
.p-form__error-list li[data-error-name=住所] + li[data-error-name=住所] {
    display: none !important;
}
.p-form__error-message {
    background-color: var(--c-error-light);
    display: none;
    margin: 0 0 2rem;
    padding: 1.5rem;
}
.p-form__error-message.is-show {
    display: block;
}
.p-form__error-headline {
    color: var(--c-error);
    font-weight: bold;
    font-size: 1.375rem;
}
.p-form__error-list[class] {
    list-style: disc;
    margin: 1rem 0 0 1.5rem;
    padding: 0;
}
.p-form__error-list li {
    color: var(--c-error);
    font-size: 1.125rem;
}
.p-form .is-error[class] {
    border: 1px solid var(--c-error);
    background-color: var(--c-error-light);
}
.p-form .wpcf7-not-valid-tip[class],
.p-form .error[class] {
    display: block;
    color: var(--c-error);
    font-size: 0.75rem;
    margin: 0.875rem 0 0;
}
.p-form input[type=email],
.p-form input[type=tel],
.p-form input[type=number],
.p-form input[type=text],
.p-form textarea,
.p-form select {
    background-color: var(--c-wht);
    border: 1px solid var(--c-gry);
    padding: 1rem 1.5rem;
}
.p-form input[type=email],
.p-form input[type=tel],
.p-form input[type=number],
.p-form input[type=text],
.p-form textarea {
    -webkit-appearance: none;
}
.p-form select {
    padding-right: 2.5rem;
    background-repeat: no-repeat;
    background-size: 0.75em auto;
    background-position: right center;
    background-position-x: calc(100% - 1.5rem);
    background-image: url(../img/ico_arr_down_pri.svg);
}
@media (min-width: 960px) {
    .p-form select {
        max-width: 40%;
    }
}
@media (max-width: 767px) {
    .p-form select {
        width: 100%;
    }
}
.p-form input[type=checkbox],
.p-form input[type=radio] {
    vertical-align: middle;
    padding: 0;
    width: 1.25em;
    height: 1.25em;
    opacity: 0.4;
}
.p-form input[type=checkbox] + *,
.p-form input[type=radio] + * {
    vertical-align: middle;
}
.p-form input[type=checkbox]:checked,
.p-form input[type=radio]:checked {
    opacity: 1;
}
.p-form textarea {
    display: block;
}
.p-form textarea:focus,
.p-form select:focus,
.p-form input:focus {
    border-color: var(--c-pri);
}
.p-form input[type=checkbox],
.p-form input[type=submit] {
    padding: 0;
}
.p-form input[type=checkbox], .p-form input[type=checkbox]:focus,
.p-form input[type=submit],
.p-form input[type=submit]:focus {
    border: none;
}
.p-form input[type=radio],
.p-form input[type=checkbox] {
    margin-right: 0.375rem;
}
@media (max-width: 767px) {
    .p-form input[type=radio],
    .p-form input[type=checkbox] {
        margin-right: 0.5rem;
    }
}
.p-form button[type=submit] {
    width: 100%;
}
.p-form .wpcf7-response-output[class] {
    display: none !important;
}
.p-form .wpcf7-list-item {
    margin-left: 0;
}
@media (max-width: 767px) {
    .p-form .wpcf7-list-item {
        display: block;
        margin-left: 0;
    }
}
@media (max-width: 767px) {
    .p-form .wpcf7-list-item + .wpcf7-list-item {
        margin-top: 0.5rem;
    }
}
.p-form .wpcf7-not-valid-tip {
    display: block;
    margin: 0.5rem 0 0;
    font-size: 0.875rem;
    color: var(--c-error);
}
.p-form .wpcf7-checkbox {
    display: block;
}
@media (min-width: 768px) {
    .p-form .wpcf7-checkbox {
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        gap: 2.5rem;
    }
}
.p-form .wpcf7-form-control + .wpcf7-form-control {
    margin-top: 0.5rem;
}
@media (min-width: 768px) {
    .p-form .wpcf7-form-control + .wpcf7-form-control {
        margin-top: 0.75rem;
    }
}
.p-form .wpcf7-list-item + * {
    margin-top: 0.5rem;
    display: block;
}
@media (min-width: 768px) {
    .p-form .wpcf7-list-item + * {
        margin-top: 0;
    }
}

.wpcf7-response-output {
    display: none;
}

@media (min-width: 768px) {
    .p-form-wrap > * {
        margin-left: 0;
        padding-left: 0;
    }
}
.p-form-wrap__inner {
    background-color: var(--c-wht);
    padding: 1.5rem 1.25rem;
}
@media (min-width: 768px) {
    .p-form-wrap__inner {
        padding: 3.5rem;
    }
}

.js-text-error.is-hidden {
    display: none;
}

.js-text-error.is-show {
    display: block;
}

html.is-safari .p-form input[type=checkbox],
html.is-safari .p-form input[type=radio] {
    -webkit-transform: scale(1.3);
            transform: scale(1.3);
    opacity: 0.8;
}

.p-sitemap ul {
    list-style: none;
}
@media (min-width: 768px) {
    .p-sitemap ul {
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
    }
}
@media (min-width: 768px) {
    .p-sitemap__list {
        gap: 2.5rem;
    }
}
@media (min-width: 960px) {
    .p-sitemap__list {
        gap: 5rem;
    }
}
@media (min-width: 768px) {
    .p-sitemap__list > * {
        -ms-flex-negative: 0;
            flex-shrink: 0;
        -webkit-box-flex: 0;
            -ms-flex-positive: 0;
                flex-grow: 0;
        -ms-flex-preferred-size: calc(50% - 1.25rem);
            flex-basis: calc(50% - 1.25rem);
        max-width: calc(50% - 1.25rem);
    }
}
@media (min-width: 960px) {
    .p-sitemap__list > * {
        -ms-flex-preferred-size: calc(50% - 2.5rem);
            flex-basis: calc(50% - 2.5rem);
        max-width: calc(50% - 2.5rem);
    }
}
@media (max-width: 767px) {
    .p-sitemap__list > * + * {
        margin-top: 2.5rem;
    }
}
.p-sitemap__list[class] > li > a {
    -webkit-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
    text-decoration: none;
    display: block;
    border-bottom: 1px solid var(--c-pri);
    line-height: 1.5;
    font-weight: bold;
    font-size: 1.5rem;
    background-repeat: no-repeat;
    background-size: 1rem auto;
    background-position: right 25%;
    background-image: url(../img/ico_arr_right_pri.svg);
    padding-bottom: 1rem;
}
.p-sitemap__list[class] ul {
    padding-left: 0;
    margin-top: 1.5rem;
}
@media (min-width: 768px) {
    .p-sitemap__list[class] ul {
        gap: 0.875rem 1.5rem;
    }
}
.p-sitemap__list[class] ul li {
    margin-top: 0;
}
.p-sitemap__list[class] ul li a {
    -webkit-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
    line-height: 1.5;
    color: inherit;
    font-size: 1.125rem;
}
@media (max-width: 767px) {
    .p-sitemap__list[class] ul li + li {
        margin-top: 0.5rem;
    }
}

.p-post-list__list {
    border-top: 1px solid var(--c-gry);
    border-bottom: 1px solid var(--c-gry);
}
.p-post-list__item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 1.5rem;
    padding: 2rem 1rem;
}
@media (max-width: 767px) {
    .p-post-list__item {
        gap: 0.5rem 1rem;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    }
}
.p-post-list__item + .p-post-list__item {
    border-top: 1px solid var(--c-gry);
}
.p-post-list__time {
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
}
.p-post-list__cat {
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
}
.p-post-list__title {
    -ms-flex-negative: 1;
        flex-shrink: 1;
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
}
@media (max-width: 767px) {
    .p-post-list__title {
        width: 100%;
    }
}
.p-post-list__title > * {
    display: block;
}
.p-post-list__title a {
    background-repeat: no-repeat;
    background-size: auto auto;
    background-position: right center;
    background-image: url(../img/ico_arr_right_pri.svg);
    padding-right: 1rem;
}
.p-post-list__title a,
.p-post-list__title a:hover {
    -webkit-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
    text-decoration: none;
}
@media (min-width: 960px) {
    .p-post-list__title a:hover {
        color: var(--c-pri);
    }
}

@media (min-width: 960px) {
    .p-post-card__list {
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        margin: -3rem 0 0 -3rem;
    }
}
@media (min-width: 960px) {
    .p-post-card__item {
        -ms-flex-negative: 0;
            flex-shrink: 0;
        -webkit-box-flex: 0;
            -ms-flex-positive: 0;
                flex-grow: 0;
        -ms-flex-preferred-size: calc(33.3333333333% - 3rem);
            flex-basis: calc(33.3333333333% - 3rem);
        max-width: calc(33.3333333333% - 3rem);
        margin: 3rem 0 0 3rem;
    }
}
@media (max-width: 767px) {
    .p-post-card__item + .p-post-card__item {
        margin-top: 1.25rem;
    }
}
.p-post-card__img {
    aspect-ratio: 16/9;
}
.p-post-card__img img {
    -o-object-fit: cover;
       object-fit: cover;
    height: 100%;
    width: 100%;
}
.p-post-card__img + * {
    margin-top: 1rem;
}
.p-post-card__meta {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
}
.p-post-card__meta > * + * {
    margin-left: 1rem;
}
.p-post-card__meta + * {
    margin-top: 1rem;
}
.p-post-card__title {
    font-weight: bold;
    font-size: 1.25rem;
}
.p-post-card__title a,
.p-post-card__title a:hover {
    -webkit-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
    text-decoration: none;
}
@media (min-width: 960px) {
    .p-post-card__title a:hover {
        color: var(--c-pri);
    }
}

.p-post-detail + * {
    margin-top: 7.5rem;
}
@media (max-width: 767px) {
    .p-post-detail + * {
        margin-top: 5.75rem;
    }
}
.p-post-detail__meta {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}
.p-post-detail__meta > * + * {
    margin-left: 1rem;
}
.p-post-detail__meta + * {
    margin-top: 1rem;
}
.p-post-detail__title {
    font-weight: bold;
    font-size: 2.5rem;
}
@media (max-width: 767px) {
    .p-post-detail__title {
        font-size: 2rem;
    }
}
.p-post-detail__title + * {
    margin-top: 2rem;
}
.p-works-interview {
    position: relative;
    border: 1px solid var(--c-pri);
    overflow: hidden;
}
@media (max-width: 767px) {
    .p-works-interview {
        border-radius: 0;
        border: none;
    }
}
.p-works-interview:has(.p-works-interview__bg) {
    border: none;
}
.p-works-interview__bg {
    position: relative;
}
.p-works-interview__bg::before {
    content: "";
    display: block;
    background: -webkit-gradient(linear, left top, right top, color-stop(40%, var(--c-pri)), to(rgba(0, 0, 0, 0)));
    background: linear-gradient(to right, var(--c-pri) 40%, rgba(0, 0, 0, 0));
    width: 75%;
    height: 100%;
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;
}
@media (max-width: 767px) {
    .p-works-interview__bg::before {
        display: none;
    }
}
@media (max-width: 767px) {
    .p-works-interview__bg {
        aspect-ratio: 16/9;
    }
    .p-works-interview__bg + * {
        margin-top: 1.5rem;
    }
}
@media (min-width: 768px) {
    .p-works-interview__bg {
        position: absolute;
        z-index: -1;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
    }
}
.p-works-interview__bg img {
    -o-object-fit: cover;
       object-fit: cover;
    height: 100%;
    width: 100%;
}
@media (max-width: 767px) {
    .p-works-interview__bg img {
        -o-object-position: 85% center;
           object-position: 85% center;
    }
}
@media (min-width: 768px) {
    .p-works-interview__inner {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: reverse;
            -ms-flex-direction: row-reverse;
                flex-direction: row-reverse;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        gap: 1.5rem;
        padding: 1.75rem 2.5rem 1.5rem;
    }
}
@media (min-width: 960px) {
    .p-works-interview__inner {
        gap: 2.5rem;
        padding: 2.75rem 3.5rem 2.5rem;
    }
}
@media (min-width: 768px) {
    .p-works-interview:has(.p-works-interview__bg) .p-works-interview__inner {
        padding: 3.5rem;
    }
}
@media (min-width: 960px) {
    .p-works-interview:has(.p-works-interview__bg) .p-works-interview__inner {
        padding: 5rem;
    }
}
.p-works-interview__label {
    display: inline-block;
    line-height: 1.25;
    background-color: var(--c-pri);
    color: var(--c-wht);
    font-size: 0.875rem;
    padding: 0.25rem 1rem 1px;
}
@media (max-width: 767px) {
    .p-works-interview__label {
        font-size: 1rem;
    }
}
.p-works-interview__label + * {
    margin-top: 0.5rem;
}
.p-works-interview__label.-robot {
    background-color: var(--c-third);
}
.p-works-interview__label.-disaster {
    background-color: var(--c-sec);
}
.p-works-interview__label.-mechano {
    background-color: var(--c-pri);
}
@media (min-width: 768px) {
    .p-works-interview:has(.p-works-interview__bg) .p-works-interview__label, .p-works-interview:has(.p-works-interview__img) .p-works-interview__label {
        font-size: 1rem;
    }
}
.p-works-interview:has(.p-works-interview__bg) .p-works-interview__label + *, .p-works-interview:has(.p-works-interview__img) .p-works-interview__label + * {
    margin-top: 1rem;
}
.p-works-interview__title {
    letter-spacing: 0.08em;
    line-height: 1.5;
    font-weight: bold;
    font-size: 1.5rem;
}
.p-works-interview__title + * {
    margin-top: 1rem;
}
.p-works-interview:has(.p-works-interview__bg) .p-works-interview__title + *, .p-works-interview:has(.p-works-interview__img) .p-works-interview__title + * {
    margin-top: 1rem;
}
@media (min-width: 960px) {
    .p-works-interview:has(.p-works-interview__bg) .p-works-interview__title, .p-works-interview:has(.p-works-interview__img) .p-works-interview__title {
        font-size: 2rem;
    }
}
@media (min-width: 768px) {
    .p-works-interview__text {
        -ms-flex-negative: 1;
            flex-shrink: 1;
        -webkit-box-flex: 1;
            -ms-flex-positive: 1;
                flex-grow: 1;
    }
}
@media (min-width: 768px) {
    .p-works-interview__desc span + span {
        margin-left: 1.5rem;
    }
}
@media (max-width: 767px) {
    .p-works-interview__desc span + span {
        display: block;
    }
}
.p-works-interview:has(.p-works-interview__bg) .p-works-interview__desc span + span, .p-works-interview:has(.p-works-interview__img) .p-works-interview__desc span + span {
    margin-left: 0;
    display: block;
}
.p-works-interview__img {
    aspect-ratio: 400/246;
    overflow: hidden;
}
@media (max-width: 767px) {
    .p-works-interview__img + * {
        margin-top: 1rem;
    }
}
@media (min-width: 768px) {
    .p-works-interview__img {
        -ms-flex-negative: 0;
            flex-shrink: 0;
        -webkit-box-flex: 0;
            -ms-flex-positive: 0;
                flex-grow: 0;
        -ms-flex-preferred-size: 20rem;
            flex-basis: 20rem;
        max-width: 20rem;
    }
}
@media (min-width: 960px) {
    .p-works-interview__img {
        -ms-flex-preferred-size: 400px;
            flex-basis: 400px;
        max-width: 400px;
    }
}
.p-works-interview__img img {
    -o-object-fit: cover;
       object-fit: cover;
    height: 100%;
    width: 100%;
}
@media (min-width: 768px) {
    .p-works-interview:has(.p-works-interview__bg) .p-works-interview__label {
        color: var(--c-pri);
        background-color: var(--c-wht);
    }
}
@media (min-width: 768px) {
    .p-works-interview:has(.p-works-interview__bg) .p-works-interview__title, .p-works-interview:has(.p-works-interview__bg) .p-works-interview__desc {
        color: var(--c-wht);
    }
}

.p-works-schedule {
    background-color: var(--c-pri-light);
    padding: 1.25rem;
}
@media (min-width: 768px) {
    .p-works-schedule {
        padding: 2.5rem;
    }
}
.p-works-schedule__inner {
    position: relative;
}
@media (min-width: 768px) {
    .p-works-schedule__inner {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        gap: 2.5rem;
    }
}
@media (min-width: 960px) {
    .p-works-schedule__inner {
        gap: 5rem;
    }
}
.p-works-schedule__inner + * {
    margin-top: 1.5rem;
}
.p-works-schedule__inner::before {
    content: "";
    display: none;
    background-image: radial-gradient(circle, var(--c-pri) 0.125rem, transparent 0.125rem);
    background-size: 1rem 1rem;
    background-repeat: repeat-y;
    width: 1rem;
    height: 100%;
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;
    margin-left: 2rem;
}
@media (max-width: 767px) {
    .p-works-schedule__inner::before {
        display: block;
    }
}
.p-works-schedule__list {
    overflow: hidden;
    position: relative;
    z-index: 5;
}
.p-works-schedule__list::before {
    content: "";
    display: block;
    background-image: radial-gradient(circle, var(--c-pri) 0.125rem, transparent 0.125rem);
    background-size: 1rem 1rem;
    background-repeat: repeat-y;
    width: 1rem;
    height: 100%;
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;
    margin-left: 2.625rem;
}
@media (max-width: 767px) {
    .p-works-schedule__list::before {
        display: none;
    }
}
@media (min-width: 768px) {
    .p-works-schedule__list {
        -ms-flex-negative: 0;
            flex-shrink: 0;
        -webkit-box-flex: 0;
            -ms-flex-positive: 0;
                flex-grow: 0;
        -ms-flex-preferred-size: calc(50% - 1.25rem);
            flex-basis: calc(50% - 1.25rem);
        max-width: calc(50% - 1.25rem);
    }
}
@media (min-width: 960px) {
    .p-works-schedule__list {
        -ms-flex-preferred-size: calc(50% - 2.5rem);
            flex-basis: calc(50% - 2.5rem);
        max-width: calc(50% - 2.5rem);
    }
}
@media (max-width: 767px) {
    .p-works-schedule__list + .p-works-schedule__list {
        padding-top: 1rem;
    }
}
.p-works-schedule__item {
    position: relative;
    z-index: 5;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 1.5rem;
}
.p-works-schedule__item + .p-works-schedule__item {
    margin-top: 1.5rem;
}
@media (max-width: 767px) {
    .p-works-schedule__item + .p-works-schedule__item {
        margin-top: 1rem;
    }
}
.p-works-schedule__time {
    display: block;
    background-color: var(--c-pri);
    line-height: 1.25;
    font-weight: bold;
    text-align: center;
    color: var(--c-wht);
    font-size: 1.25rem;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    -ms-flex-preferred-size: 6.25rem;
        flex-basis: 6.25rem;
    max-width: 6.25rem;
    padding: 0.375rem 0.5rem 0.25rem;
}
@media (max-width: 767px) {
    .p-works-schedule__time {
        -ms-flex-preferred-size: 5rem;
            flex-basis: 5rem;
        max-width: 5rem;
    }
}
.p-works-schedule__text {
    background-color: var(--c-wht);
    -ms-flex-negative: 1;
        flex-shrink: 1;
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    padding: 0.5rem 1rem;
}
.p-works-schedule__title {
    color: var(--c-pri);
    line-height: 1.5;
    font-weight: bold;
}
.p-works-schedule__title + * {
    margin-top: 0.25rem;
}
.p-works-schedule__desc {
    color: var(--c-pri);
    font-size: 0.875rem;
}
.p-works-schedule__comment {
    font-size: 0.75rem;
}

.p-faq-list__item {
    -webkit-box-shadow: var(--c-shadow);
            box-shadow: var(--c-shadow);
}
.p-faq-list__item + .p-faq-list__item {
    margin-top: 1.5rem;
}
.p-faq-list__title {
    position: relative;
    line-height: 1.5;
    color: var(--c-pri);
    font-weight: bold;
    padding-left: 1.75rem;
}
.p-faq-list__title::before {
    content: "A.";
    color: var(--c-pri);
}
.p-faq-list__title + * {
    margin-top: 0.5rem;
}
.p-faq-list__q, .p-faq-list__a {
    position: relative;
    padding: 1.5rem 2.5rem 1.375rem 4rem;
}
@media (max-width: 767px) {
    .p-faq-list__q, .p-faq-list__a {
        padding: 1.25rem 1.5rem 1.125rem 3.25rem;
    }
}
.p-faq-list__q {
    line-height: 1.5;
    color: var(--c-pri);
    font-size: 1.25rem;
    padding-right: 4rem;
}
@media (max-width: 767px) {
    .p-faq-list__q {
        font-size: 1.125rem;
    }
}
.p-faq-list__q::before {
    border-radius: 50%;
    content: "Q";
    background-color: var(--c-pri);
    color: var(--c-wht);
    text-align: center;
    width: 1.5rem;
    height: 1.5rem;
    margin-top: calc(1.5rem + 1px);
    margin-left: 1.5rem;
}
@media (max-width: 767px) {
    .p-faq-list__q::before {
        margin-top: 1.25rem;
        margin-left: 1.25rem;
    }
}
@media (min-width: 768px) {
    .p-faq-list__q::before {
        padding-top: 1px;
    }
}
.p-faq-list__title, .p-faq-list__q {
    font-weight: bold;
}
.p-faq-list__title::before, .p-faq-list__q::before {
    line-height: 1.375;
    display: inline-block;
    font-weight: bold;
    font-size: 1.125rem;
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;
}
.p-faq-list.-accordion .p-faq-list__q:hover {
    cursor: pointer;
}
.p-faq-list.-accordion .p-faq-list__q::after {
    -webkit-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
    content: "";
    display: block;
    width: 1rem;
    height: 1rem;
    background-repeat: no-repeat;
    background-size: 100% auto;
    background-position: left center;
    background-image: url(../img/ico_faq_add.svg);
    position: absolute;
    z-index: 1;
    top: 0;
    right: 0;
    margin-right: 2.5rem;
    margin-top: 1.75rem;
}
@media (max-width: 767px) {
    .p-faq-list.-accordion .p-faq-list__q::after {
        margin-right: 1.25rem;
        margin-top: 1.5rem;
    }
}
.p-faq-list.-accordion .p-faq-list__q.is-active {
    padding-bottom: 1rem;
}
.p-faq-list.-accordion .p-faq-list__q.is-active::after {
    background-image: url(../img/ico_faq_minus.svg);
}
.p-faq-list__a {
    padding-top: 0;
    padding-bottom: 0;
    padding-left: 4em;
}
@media (max-width: 767px) {
    .p-faq-list__a {
        padding-left: 1.5rem;
    }
}
.p-faq-list.-accordion .p-faq-list__a {
    display: -ms-grid;
    display: grid;
    -ms-grid-rows: 0fr;
    grid-template-rows: 0fr;
    -webkit-transition: 250ms grid-template-rows ease;
    transition: 250ms grid-template-rows ease;
    transition: 250ms grid-template-rows ease, 250ms -ms-grid-rows ease;
}
.p-faq-list.-accordion .p-faq-list__a > * {
    overflow: hidden;
}
.p-faq-list.-accordion .p-faq-list__a.is-show {
    -ms-grid-rows: 1fr;
    grid-template-rows: 1fr;
    padding-top: 1.5rem;
    padding-bottom: 1.375rem;
}
@media (max-width: 767px) {
    .p-faq-list.-accordion .p-faq-list__a.is-show {
        padding-top: 1.25rem;
        padding-bottom: 1.125rem;
    }
}

.p-about-vision {
    position: relative;
    padding-top: 7.125rem;
    padding-bottom: 5rem;
}
.p-about-vision__img {
    position: absolute;
    z-index: -1;
    top: 0;
    left: 0;
    width: 100%;
}
@media (min-width: 768px) {
    .p-about-vision__img {
        height: 100%;
    }
}
.p-about-vision__img img {
    -o-object-fit: contain;
       object-fit: contain;
    height: 100%;
    width: 100%;
}
@media (min-width: 768px) {
    .p-about-vision__item {
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
    }
}
.p-about-vision__item + .p-about-vision__item {
    margin-top: 3.5rem;
}
@media (max-width: 767px) {
    .p-about-vision__item + .p-about-vision__item {
        margin-top: 2.5rem;
    }
}
.p-about-vision__label {
    font-weight: bold;
    font-size: 1.125rem;
}
.p-about-vision__label::before {
    background: var(--c-gra02);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    content: attr(data-english);
    line-height: 1.25;
    letter-spacing: 0.16em;
    display: block;
    text-transform: uppercase;
    font-weight: bold;
    font-size: 2.5rem;
}
@media (max-width: 767px) {
    .p-about-vision__label::before {
        text-align: center;
        font-size: 2.25rem;
    }
}
@media (max-width: 767px) {
    .p-about-vision__label {
        text-align: center;
        font-size: 0.875rem;
    }
    .p-about-vision__label + * {
        margin-top: 1.5rem;
    }
}
@media (min-width: 768px) {
    .p-about-vision__label {
        -ms-flex-negative: 0;
            flex-shrink: 0;
        -webkit-box-flex: 0;
            -ms-flex-positive: 0;
                flex-grow: 0;
        -ms-flex-preferred-size: 15rem;
            flex-basis: 15rem;
        max-width: 15rem;
    }
}
@media (min-width: 1280px) {
    .p-about-vision__label {
        -ms-flex-preferred-size: 18rem;
            flex-basis: 18rem;
        max-width: 18rem;
    }
}
.p-about-vision__text {
    background-color: var(--c-wht);
    -webkit-box-shadow: var(--c-shadow);
            box-shadow: var(--c-shadow);
    padding: 1.75rem;
}
@media (min-width: 768px) {
    .p-about-vision__text {
        -ms-flex-negative: 1;
            flex-shrink: 1;
        -webkit-box-flex: 1;
            -ms-flex-positive: 1;
                flex-grow: 1;
        padding: 1.5rem 2.5rem;
    }
}
@media (min-width: 768px) {
    .p-about-vision__text-inner {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
    }
}
.p-about-vision__text-inner:has(.p-about-vision__text-box02) {
    gap: 2.5rem;
}
@media (min-width: 768px) {
    .p-about-vision__text-box02 {
        -ms-flex-negative: 0;
            flex-shrink: 0;
        -webkit-box-flex: 0;
            -ms-flex-positive: 0;
                flex-grow: 0;
        -ms-flex-preferred-size: calc(50% - 1.25rem);
            flex-basis: calc(50% - 1.25rem);
        max-width: calc(50% - 1.25rem);
    }
}
@media (min-width: 768px) {
    .p-about-vision__text-box03 {
        -ms-flex-negative: 0;
            flex-shrink: 0;
        -webkit-box-flex: 0;
            -ms-flex-positive: 0;
                flex-grow: 0;
        -ms-flex-preferred-size: 33.3333333333%;
            flex-basis: 33.3333333333%;
        max-width: 33.3333333333%;
    }
}
.p-about-vision__title01 {
    letter-spacing: 0.14rem;
    color: var(--c-pri);
    font-weight: bold;
    line-height: 1.5;
    font-size: 1.75rem;
}
@media (max-width: 767px) {
    .p-about-vision__title01 {
        text-align: center;
        font-size: 1.5rem;
    }
}
.p-about-vision__title01 + * {
    margin-top: 0.5rem;
}
.p-about-vision__title02 {
    color: var(--c-wht);
    font-weight: bold;
    font-size: 1.125rem;
    padding: 0.125rem 1rem 0;
}
.p-about-vision__title02 + * {
    margin-top: 0.5rem;
}
.p-about-vision__text-box02:nth-of-type(1) .p-about-vision__title02 {
    background-color: var(--c-sec);
}
.p-about-vision__text-box02:nth-of-type(2) .p-about-vision__title02 {
    background-color: var(--c-pri);
}
.p-about-vision__title03 {
    letter-spacing: 0.24rem;
    line-height: 1.125;
    font-weight: bold;
    text-align: center;
    text-transform: uppercase;
    color: var(--c-pri);
    font-size: clamp(1rem, 1.75vw, 1.5rem);
}
@media (max-width: 767px) {
    .p-about-vision__title03 {
        font-size: 1.75rem;
    }
}
.p-about-vision__title03 + * {
    margin-top: 0.5rem;
    font-size: clamp(0.75rem, 1.375vw, 1rem);
    text-align: center;
}
@media (max-width: 767px) {
    .p-about-vision__title03 + * {
        font-size: 1rem;
    }
}
.p-about-vision__text-box03 {
    padding: 0 0.5rem;
}
@media (max-width: 767px) {
    .p-about-vision__text-box03 + .p-about-vision__text-box03 {
        border-top: 1px solid var(--c-pri);
        margin-top: 1.5rem;
        padding-top: 1.5rem;
    }
}
@media (min-width: 768px) {
    .p-about-vision__text-box03 + .p-about-vision__text-box03 {
        border-left: 1px solid var(--c-pri);
    }
}

.p-about-message {
    overflow: hidden;
    background-color: var(--c-pri);
    position: relative;
    padding: 6rem 3.5rem;
}
@media (max-width: 767px) {
    .p-about-message {
        padding: 12.5rem 1rem 1.75rem;
        min-height: 310px;
    }
}
.p-about-message::before, .p-about-message__img {
    position: absolute;
    right: 0;
}
@media (min-width: 768px) {
    .p-about-message::before, .p-about-message__img {
        margin-right: 3.5rem;
    }
}
.p-about-message::before {
    content: attr(data-english);
    line-height: 1;
    display: block;
    letter-spacing: 0.16em;
    font-weight: bold;
    color: var(--c-wht);
    text-transform: uppercase;
    font-size: 4rem;
    z-index: 1;
    top: 0;
    opacity: 0.2;
    margin-top: 2.25rem;
}
@media (max-width: 767px) {
    .p-about-message::before {
        width: 100%;
        text-align: center;
    }
}
@media (min-width: 768px) {
    .p-about-message::before {
        -webkit-transform: translateX(1rem);
                transform: translateX(1rem);
        font-size: 5.5rem;
    }
}
@media (min-width: 960px) {
    .p-about-message::before {
        font-size: 7.5rem;
    }
}
.p-about-message__img {
    z-index: 10;
    bottom: 0;
    max-width: 100%;
}
@media (max-width: 767px) {
    .p-about-message__img {
        margin-right: -5rem;
    }
}
@media (min-width: 768px) {
    .p-about-message__img {
        max-width: 28%;
        margin-bottom: -1rem;
    }
}
.p-about-message.-rev::before, .p-about-message.-rev .p-about-message__img {
    right: auto;
    left: 0;
}
@media (min-width: 768px) {
    .p-about-message.-rev::before, .p-about-message.-rev .p-about-message__img {
        margin-left: 3.5rem;
    }
}
@media (max-width: 767px) {
    .p-about-message.-rev .p-about-message__img {
        margin-left: -5rem;
    }
}
.p-about-message__text {
    position: relative;
    z-index: 20;
}
@media (max-width: 767px) {
    .p-about-message__text {
        min-height: 136px;
    }
}
@media (min-width: 768px) {
    .p-about-message__text {
        max-width: 70%;
    }
}
.p-about-message.-rev .p-about-message__text {
    margin-left: auto;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}
.p-about-message__desc {
    letter-spacing: 0.08em;
    font-weight: bold;
    line-height: 1.75;
    color: var(--c-wht);
    font-size: 1.375rem;
}
@media (min-width: 768px) {
    .p-about-message__desc {
        line-height: 2;
        font-size: 1.75rem;
    }
}
@media (min-width: 960px) {
    .p-about-message__desc {
        font-size: 2rem;
    }
}
@media (max-width: 767px) {
    .p-about-message__desc {
        text-shadow: 0 1px 0.25rem var(--c-pri-dark);
    }
}

.p-home-section + .p-home-section {
    margin-top: 5.5rem;
}
@media (min-width: 768px) {
    .p-home-section + .p-home-section {
        margin-top: 8rem;
    }
}
.p-home-section__header + * {
    margin-top: 2.75rem;
}
@media (min-width: 768px) {
    .p-home-section__header + * {
        margin-top: 5rem;
    }
}
.p-home-section__body + * {
    margin-top: 2.75rem;
}
@media (min-width: 768px) {
    .p-home-section__body + * {
        margin-top: 5rem;
    }
}
.p-home-section__headline-label {
    position: relative;
    line-height: 1;
    letter-spacing: 0.08em;
    color: var(--c-pri);
    font-weight: bold;
    font-size: 1.375rem;
}
@media (min-width: 768px) {
    .p-home-section__headline-label {
        font-size: 2.125rem;
    }
}
.p-home-section__headline-label[data-english]::before {
    content: attr(data-english);
    text-transform: uppercase;
    letter-spacing: 0.16em;
    display: inline-block;
    color: var(--c-pri-light);
    font-size: 4rem;
}
@media (min-width: 768px) {
    .p-home-section__headline-label[data-english]::before {
        font-size: 7.875rem;
    }
}
.p-home-section__headline-label span {
    position: absolute;
    z-index: 1;
    top: 50%;
    left: 0;
    width: 100%;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    margin-top: 2px;
}
.p-home-section__headline.-wht .p-home-section__headline-label {
    color: var(--c-wht);
}
.p-home-section__headline.-wht .p-home-section__headline-label[data-english]::before {
    color: var(--c-wht);
    opacity: 0.2;
}
.p-home-section__headline.-right .p-home-section__headline-label {
    text-align: right;
}

@-webkit-keyframes slide_left_lg {
    0% {
        -webkit-transform: scale(0) translateX(500%);
                transform: scale(0) translateX(500%);
        opacity: 0;
    }
    80% {
        -webkit-transform: scale(1.3) translateX(-50%);
                transform: scale(1.3) translateX(-50%);
        opacity: 1;
    }
    100% {
        -webkit-transform: scale(1) translateX(0);
                transform: scale(1) translateX(0);
        opacity: 1;
    }
}

@keyframes slide_left_lg {
    0% {
        -webkit-transform: scale(0) translateX(500%);
                transform: scale(0) translateX(500%);
        opacity: 0;
    }
    80% {
        -webkit-transform: scale(1.3) translateX(-50%);
                transform: scale(1.3) translateX(-50%);
        opacity: 1;
    }
    100% {
        -webkit-transform: scale(1) translateX(0);
                transform: scale(1) translateX(0);
        opacity: 1;
    }
}
@-webkit-keyframes slide_left_sm {
    0% {
        -webkit-transform: scale(0) translateX(300%);
                transform: scale(0) translateX(300%);
        opacity: 0;
    }
    80% {
        -webkit-transform: scale(1.1) translateX(-20%);
                transform: scale(1.1) translateX(-20%);
        opacity: 1;
    }
    100% {
        -webkit-transform: scale(1) translateX(0);
                transform: scale(1) translateX(0);
        opacity: 1;
    }
}
@keyframes slide_left_sm {
    0% {
        -webkit-transform: scale(0) translateX(300%);
                transform: scale(0) translateX(300%);
        opacity: 0;
    }
    80% {
        -webkit-transform: scale(1.1) translateX(-20%);
                transform: scale(1.1) translateX(-20%);
        opacity: 1;
    }
    100% {
        -webkit-transform: scale(1) translateX(0);
                transform: scale(1) translateX(0);
        opacity: 1;
    }
}
@-webkit-keyframes slide_left_lg_sp {
    0% {
        -webkit-transform: scale(0) translateX(300%);
                transform: scale(0) translateX(300%);
        opacity: 0;
    }
    80% {
        -webkit-transform: scale(0.7) translateX(-50%);
                transform: scale(0.7) translateX(-50%);
        opacity: 1;
    }
    100% {
        -webkit-transform: scale(0.4) translateX(0);
                transform: scale(0.4) translateX(0);
        opacity: 1;
    }
}
@keyframes slide_left_lg_sp {
    0% {
        -webkit-transform: scale(0) translateX(300%);
                transform: scale(0) translateX(300%);
        opacity: 0;
    }
    80% {
        -webkit-transform: scale(0.7) translateX(-50%);
                transform: scale(0.7) translateX(-50%);
        opacity: 1;
    }
    100% {
        -webkit-transform: scale(0.4) translateX(0);
                transform: scale(0.4) translateX(0);
        opacity: 1;
    }
}
@-webkit-keyframes slide_left_sm_sp {
    0% {
        -webkit-transform: scale(0) translateX(200%);
                transform: scale(0) translateX(200%);
        opacity: 0;
    }
    80% {
        -webkit-transform: scale(0.6) translateX(-20%);
                transform: scale(0.6) translateX(-20%);
        opacity: 1;
    }
    100% {
        -webkit-transform: scale(0.4) translateX(0);
                transform: scale(0.4) translateX(0);
        opacity: 1;
    }
}
@keyframes slide_left_sm_sp {
    0% {
        -webkit-transform: scale(0) translateX(200%);
                transform: scale(0) translateX(200%);
        opacity: 0;
    }
    80% {
        -webkit-transform: scale(0.6) translateX(-20%);
                transform: scale(0.6) translateX(-20%);
        opacity: 1;
    }
    100% {
        -webkit-transform: scale(0.4) translateX(0);
                transform: scale(0.4) translateX(0);
        opacity: 1;
    }
}
@-webkit-keyframes slide_right_lg {
    0% {
        -webkit-transform: scale(0) translateX(-250%);
                transform: scale(0) translateX(-250%);
        opacity: 0;
    }
    80% {
        -webkit-transform: scale(1.3) translateX(50%);
                transform: scale(1.3) translateX(50%);
        opacity: 1;
    }
    100% {
        -webkit-transform: scale(1) translateX(0);
                transform: scale(1) translateX(0);
        opacity: 1;
    }
}
@keyframes slide_right_lg {
    0% {
        -webkit-transform: scale(0) translateX(-250%);
                transform: scale(0) translateX(-250%);
        opacity: 0;
    }
    80% {
        -webkit-transform: scale(1.3) translateX(50%);
                transform: scale(1.3) translateX(50%);
        opacity: 1;
    }
    100% {
        -webkit-transform: scale(1) translateX(0);
                transform: scale(1) translateX(0);
        opacity: 1;
    }
}
@-webkit-keyframes slide_right_sm {
    0% {
        -webkit-transform: scale(0) translateX(-150%);
                transform: scale(0) translateX(-150%);
        opacity: 0;
    }
    80% {
        -webkit-transform: scale(1.1) translateX(20%);
                transform: scale(1.1) translateX(20%);
        opacity: 1;
    }
    100% {
        -webkit-transform: scale(1) translateX(0);
                transform: scale(1) translateX(0);
        opacity: 1;
    }
}
@keyframes slide_right_sm {
    0% {
        -webkit-transform: scale(0) translateX(-150%);
                transform: scale(0) translateX(-150%);
        opacity: 0;
    }
    80% {
        -webkit-transform: scale(1.1) translateX(20%);
                transform: scale(1.1) translateX(20%);
        opacity: 1;
    }
    100% {
        -webkit-transform: scale(1) translateX(0);
                transform: scale(1) translateX(0);
        opacity: 1;
    }
}
@-webkit-keyframes slide_right_lg_sp {
    0% {
        -webkit-transform: scale(0) translateX(-200%);
                transform: scale(0) translateX(-200%);
        opacity: 0;
    }
    80% {
        -webkit-transform: scale(0.7) translateX(50%);
                transform: scale(0.7) translateX(50%);
        opacity: 1;
    }
    100% {
        -webkit-transform: scale(0.4) translateX(0);
                transform: scale(0.4) translateX(0);
        opacity: 1;
    }
}
@keyframes slide_right_lg_sp {
    0% {
        -webkit-transform: scale(0) translateX(-200%);
                transform: scale(0) translateX(-200%);
        opacity: 0;
    }
    80% {
        -webkit-transform: scale(0.7) translateX(50%);
                transform: scale(0.7) translateX(50%);
        opacity: 1;
    }
    100% {
        -webkit-transform: scale(0.4) translateX(0);
                transform: scale(0.4) translateX(0);
        opacity: 1;
    }
}
@-webkit-keyframes slide_right_sm_sp {
    0% {
        -webkit-transform: scale(0) translateX(-100%);
                transform: scale(0) translateX(-100%);
        opacity: 0;
    }
    80% {
        -webkit-transform: scale(0.6) translateX(20%);
                transform: scale(0.6) translateX(20%);
        opacity: 1;
    }
    100% {
        -webkit-transform: scale(0.4) translateX(0);
                transform: scale(0.4) translateX(0);
        opacity: 1;
    }
}
@keyframes slide_right_sm_sp {
    0% {
        -webkit-transform: scale(0) translateX(-100%);
                transform: scale(0) translateX(-100%);
        opacity: 0;
    }
    80% {
        -webkit-transform: scale(0.6) translateX(20%);
                transform: scale(0.6) translateX(20%);
        opacity: 1;
    }
    100% {
        -webkit-transform: scale(0.4) translateX(0);
                transform: scale(0.4) translateX(0);
        opacity: 1;
    }
}
@-webkit-keyframes news_slide_up {
    0% {
        -webkit-transform: translateY(0);
                transform: translateY(0);
    }
    11% {
        -webkit-transform: translateY(-100%);
                transform: translateY(-100%);
    }
    33% {
        -webkit-transform: translateY(-100%);
                transform: translateY(-100%);
    }
    44% {
        -webkit-transform: translateY(-200%);
                transform: translateY(-200%);
    }
    66% {
        -webkit-transform: translateY(-200%);
                transform: translateY(-200%);
    }
    77% {
        -webkit-transform: translateY(-300%);
                transform: translateY(-300%);
    }
    99.9% {
        -webkit-transform: translateY(-300%);
                transform: translateY(-300%);
    }
    100% {
        -webkit-transform: translateY(0);
                transform: translateY(0);
    }
}
@keyframes news_slide_up {
    0% {
        -webkit-transform: translateY(0);
                transform: translateY(0);
    }
    11% {
        -webkit-transform: translateY(-100%);
                transform: translateY(-100%);
    }
    33% {
        -webkit-transform: translateY(-100%);
                transform: translateY(-100%);
    }
    44% {
        -webkit-transform: translateY(-200%);
                transform: translateY(-200%);
    }
    66% {
        -webkit-transform: translateY(-200%);
                transform: translateY(-200%);
    }
    77% {
        -webkit-transform: translateY(-300%);
                transform: translateY(-300%);
    }
    99.9% {
        -webkit-transform: translateY(-300%);
                transform: translateY(-300%);
    }
    100% {
        -webkit-transform: translateY(0);
                transform: translateY(0);
    }
}
@-webkit-keyframes bnr_slide_sp {
    0% {
        -webkit-transform: translateX(0);
                transform: translateX(0);
    }
    11% {
        -webkit-transform: translateX(calc(-100vw + 2.5rem));
                transform: translateX(calc(-100vw + 2.5rem));
    }
    33% {
        -webkit-transform: translateX(calc(-100vw + 2.5rem));
                transform: translateX(calc(-100vw + 2.5rem));
    }
    44% {
        -webkit-transform: translateX(calc(-200vw + 6.5rem));
                transform: translateX(calc(-200vw + 6.5rem));
    }
    66% {
        -webkit-transform: translateX(calc(-200vw + 6.5rem));
                transform: translateX(calc(-200vw + 6.5rem));
    }
    77% {
        -webkit-transform: translateX(calc(-300vw + 10.5rem));
                transform: translateX(calc(-300vw + 10.5rem));
    }
    99.9% {
        -webkit-transform: translateX(calc(-300vw + 10.5rem));
                transform: translateX(calc(-300vw + 10.5rem));
    }
    100% {
        -webkit-transform: translateX(0);
                transform: translateX(0);
    }
}
@keyframes bnr_slide_sp {
    0% {
        -webkit-transform: translateX(0);
                transform: translateX(0);
    }
    11% {
        -webkit-transform: translateX(calc(-100vw + 2.5rem));
                transform: translateX(calc(-100vw + 2.5rem));
    }
    33% {
        -webkit-transform: translateX(calc(-100vw + 2.5rem));
                transform: translateX(calc(-100vw + 2.5rem));
    }
    44% {
        -webkit-transform: translateX(calc(-200vw + 6.5rem));
                transform: translateX(calc(-200vw + 6.5rem));
    }
    66% {
        -webkit-transform: translateX(calc(-200vw + 6.5rem));
                transform: translateX(calc(-200vw + 6.5rem));
    }
    77% {
        -webkit-transform: translateX(calc(-300vw + 10.5rem));
                transform: translateX(calc(-300vw + 10.5rem));
    }
    99.9% {
        -webkit-transform: translateX(calc(-300vw + 10.5rem));
                transform: translateX(calc(-300vw + 10.5rem));
    }
    100% {
        -webkit-transform: translateX(0);
                transform: translateX(0);
    }
}
.p-home-mv {
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}
@media (min-width: 960px) {
    .p-home-mv {
        display: block;
    }
}
@media (min-width: 768px) {
    .p-home-mv {
        padding-top: 1.5rem;
    }
}
.p-home-mv__header {
    -webkit-box-ordinal-group: 16;
        -ms-flex-order: 15;
            order: 15;
    margin-top: 2.75rem;
}
@media (max-width: 767px) {
    .p-home-mv__header {
        margin-top: 3.5rem;
    }
}
@media (min-width: 960px) {
    .p-home-mv__header {
        -webkit-box-ordinal-group: 6;
            -ms-flex-order: 5;
                order: 5;
        margin-top: 0;
    }
}
.p-home-mv__header + * {
    margin-top: 5rem;
}
.p-home-mv__body {
    -webkit-box-ordinal-group: 11;
        -ms-flex-order: 10;
            order: 10;
}
.p-home-mv__body + * {
    margin-top: 2.5rem;
}
@media (max-width: 767px) {
    .p-home-mv__body + * {
        margin-top: 7rem;
    }
}
.p-home-mv__body-inner {
    position: relative;
}
.p-home-mv__footer {
    -webkit-box-ordinal-group: 11;
        -ms-flex-order: 10;
            order: 10;
}
@media (min-width: 960px) {
    .p-home-mv__footer {
        -webkit-box-ordinal-group: 16;
            -ms-flex-order: 15;
                order: 15;
    }
}
.p-home-mv__news {
    border-radius: 3rem;
    background-color: var(--c-gry-light);
    overflow: hidden;
    height: 3.125rem;
}
@media (max-width: 767px) {
    .p-home-mv__news {
        height: 3.75rem;
    }
}
.p-home-mv__news {
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
}
@media (max-width: 767px) {
    .p-home-mv__news {
        height: 0;
    }
}
.p-home-mv__news:has(.p-home-mv__news-list.is-active) {
    opacity: 1;
    visibility: inherit;
    pointer-events: auto;
}
@media (max-width: 767px) {
    .p-home-mv__news:has(.p-home-mv__news-list.is-active) {
        height: 3.75rem;
    }
}
.p-home-mv__news-list {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    height: 3.125rem;
}
@media (max-width: 767px) {
    .p-home-mv__news-list {
        height: 3.75rem;
    }
}
body.is-loaded .p-home-mv__news-list.is-active {
    -webkit-animation: news_slide_up 12s infinite;
            animation: news_slide_up 12s infinite;
}
.p-home-mv__news-item {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 1rem;
    padding: 0.75rem 1.75rem;
    height: 3.125rem;
}
@media (max-width: 767px) {
    .p-home-mv__news-item {
        display: block;
        height: 3.75rem;
        padding-top: 0.625rem;
    }
}
@media (min-width: 960px) {
    .p-home-mv__news-item {
        padding-left: 5rem;
        padding-right: 5rem;
    }
}
.p-home-mv__news-time {
    white-space: nowrap;
    font-size: 0.8125rem;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 0.5rem;
}
@media (max-width: 767px) {
    .p-home-mv__news-time {
        font-size: 0.75rem;
    }
}
@media (min-width: 768px) {
    .p-home-mv__news-time {
        gap: 1rem;
    }
}
@media (max-width: 767px) {
    .p-home-mv__news-time + * {
        margin-top: 0.125rem;
    }
}
.p-home-mv__news-time::before {
    content: "new";
    display: inline-block;
    text-transform: uppercase;
    line-height: 1.5;
    font-size: 0.75rem;
    background-color: var(--c-pri);
    color: var(--c-wht);
    padding: 1px 0.5rem 0;
}
.p-home-mv__news-title {
    display: block;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
@media (max-width: 767px) {
    .p-home-mv__news-title {
        font-size: 0.875rem;
    }
}
.p-home-mv__title + * {
    margin-top: 1.75rem;
}
@media (min-width: 960px) {
    .p-home-mv__title + * {
        margin-top: 4rem;
    }
}
.p-home-mv__title-line {
    overflow: hidden;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 0.875rem;
}
@media (min-width: 960px) {
    .p-home-mv__title-line {
        gap: 1.25rem;
    }
}
.p-home-mv__title-line + .p-home-mv__title-line {
    margin-top: 1.25rem;
}
@media (min-width: 960px) {
    .p-home-mv__title-line + .p-home-mv__title-line {
        margin-top: 2.25rem;
    }
}
.p-home-mv__title-label {
    max-width: 3.5rem;
    -webkit-transform: translateY(100%);
            transform: translateY(100%);
}
@media (min-width: 768px) {
    .p-home-mv__title-label {
        max-width: 100%;
    }
}
.p-home-mv__title-line.is-active .p-home-mv__title-label {
    display: inline-block;
    -webkit-transform: translateY(0);
            transform: translateY(0);
    -webkit-transition: -webkit-transform 0.4s cubic-bezier(0.77, 0, 0.175, 1);
    transition: -webkit-transform 0.4s cubic-bezier(0.77, 0, 0.175, 1);
    transition: transform 0.4s cubic-bezier(0.77, 0, 0.175, 1);
    transition: transform 0.4s cubic-bezier(0.77, 0, 0.175, 1), -webkit-transform 0.4s cubic-bezier(0.77, 0, 0.175, 1);
    -webkit-transition-delay: calc(0.05s * var(--split-index));
            transition-delay: calc(0.05s * var(--split-index));
}
.p-home-mv__title-label.-sm {
    max-width: 2.5rem;
    margin-left: -0.5rem;
    margin-right: -0.5rem;
}
@media (min-width: 768px) {
    .p-home-mv__title-label.-sm {
        margin-left: -0.25rem;
        margin-right: -0.25rem;
        max-width: 100%;
    }
}
.p-home-mv__title-label.-sm + .p-home-mv__title-label.-sm {
    margin-left: -0.75rem;
}
.p-home-mv__title-label.-lg {
    max-width: 4rem;
}
@media (min-width: 768px) {
    .p-home-mv__title-label.-lg {
        max-width: 100%;
    }
}
.p-home-mv__desc {
    overflow: hidden;
    line-height: 2;
    letter-spacing: 0.2em;
    text-align: center;
    font-weight: bold;
}
.p-home-mv__desc > * {
    -webkit-transform: translateY(100%);
            transform: translateY(100%);
}
@media (min-width: 960px) {
    .p-home-mv__desc {
        letter-spacing: 0.3em;
        font-size: 1.5rem;
    }
}
.p-home-mv__desc.is-in-first-view > * {
    -webkit-transform: translateY(0);
            transform: translateY(0);
    -webkit-transition: -webkit-transform 0.8s cubic-bezier(0.77, 0, 0.175, 1);
    transition: -webkit-transform 0.8s cubic-bezier(0.77, 0, 0.175, 1);
    transition: transform 0.8s cubic-bezier(0.77, 0, 0.175, 1);
    transition: transform 0.8s cubic-bezier(0.77, 0, 0.175, 1), -webkit-transform 0.8s cubic-bezier(0.77, 0, 0.175, 1);
    -webkit-transition-delay: 0.85s;
            transition-delay: 0.85s;
}
.p-home-mv__deco-wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    position: absolute;
    z-index: -1;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
}
.p-home-mv__deco {
    pointer-events: none;
    position: relative;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    -ms-flex-preferred-size: 50%;
        flex-basis: 50%;
    max-width: 50%;
}
.p-home-mv__deco img {
    position: absolute;
    z-index: 1;
    top: 0;
    -webkit-transform: scale(0);
            transform: scale(0);
    opacity: 0;
}
.p-home-mv__deco.-left img {
    left: 0;
}
.p-home-mv__deco.-right img {
    right: 0;
}
.p-home-mv__deco-img01 {
    margin: -4rem 0 0 -0.5rem;
    -webkit-animation: slide_left_sm_sp 0.4s 1 forwards;
            animation: slide_left_sm_sp 0.4s 1 forwards;
    -webkit-animation-delay: 0.2s !important;
            animation-delay: 0.2s !important;
}
@media (min-width: 768px) {
    .p-home-mv__deco-img01 {
        -webkit-animation: slide_left_sm 0.4s 1 forwards;
                animation: slide_left_sm 0.4s 1 forwards;
        margin: -5rem 0 0 -1.5rem;
    }
}
.p-home-mv__deco-img02 {
    -webkit-animation: slide_left_lg 0.3s 1 forwards;
            animation: slide_left_lg 0.3s 1 forwards;
    -webkit-animation-delay: 0.1s !important;
            animation-delay: 0.1s !important;
}
@media (max-width: 767px) {
    .p-home-mv__deco-img02 {
        display: none;
    }
}
@media (min-width: 768px) {
    .p-home-mv__deco-img02 {
        margin: 0 0 0 15vw;
    }
}
@media (min-width: 1280px) {
    .p-home-mv__deco-img02 {
        margin: 0 0 0 16rem;
    }
}
.p-home-mv__deco-img03 {
    margin: 2rem 0 0 -2vw;
    -webkit-animation: slide_left_sm_sp 0.2s 1 forwards;
            animation: slide_left_sm_sp 0.2s 1 forwards;
    -webkit-animation-delay: 0.05s !important;
            animation-delay: 0.05s !important;
}
@media (min-width: 768px) {
    .p-home-mv__deco-img03 {
        -webkit-animation: slide_left_sm 0.2s 1 forwards;
                animation: slide_left_sm 0.2s 1 forwards;
        margin: 6rem 0 0 6vw;
    }
}
@media (min-width: 1280px) {
    .p-home-mv__deco-img03 {
        margin: 5rem 0 0 5rem;
    }
}
.p-home-mv__deco-img04[class] {
    margin: 0 0 -6rem -5vw;
    top: auto;
    bottom: 0;
    -webkit-animation: slide_left_lg_sp 0.4s 1 forwards;
            animation: slide_left_lg_sp 0.4s 1 forwards;
}
@media (min-width: 768px) {
    .p-home-mv__deco-img04[class] {
        -webkit-animation: slide_left_lg 0.4s 1 forwards;
                animation: slide_left_lg 0.4s 1 forwards;
        margin: 0 0 3.5rem 12vw;
    }
}
@media (min-width: 1280px) {
    .p-home-mv__deco-img04[class] {
        margin: 0 0 3.5rem 13.5rem;
    }
}
.p-home-mv__deco-img05[class] {
    margin: 0;
    top: auto;
    bottom: 0;
    -webkit-animation: slide_left_lg_sp 0.3s 1 forwards;
            animation: slide_left_lg_sp 0.3s 1 forwards;
    -webkit-animation-delay: 0.05s !important;
            animation-delay: 0.05s !important;
}
@media (min-width: 768px) {
    .p-home-mv__deco-img05[class] {
        -webkit-animation: slide_left_lg 0.3s 1 forwards;
                animation: slide_left_lg 0.3s 1 forwards;
    }
}
@media (max-width: 767px) {
    .p-home-mv__deco-img05[class] {
        margin: 0 0 -6.5rem 12vw;
    }
}
.p-home-mv__deco-img06 {
    margin: -4rem 0 0 0;
    -webkit-animation: slide_right_sm_sp 0.3s 1 forwards;
            animation: slide_right_sm_sp 0.3s 1 forwards;
}
@media (min-width: 768px) {
    .p-home-mv__deco-img06 {
        -webkit-animation: slide_right_sm 0.3s 1 forwards;
                animation: slide_right_sm 0.3s 1 forwards;
    }
}
@media (max-width: 767px) {
    .p-home-mv__deco-img06 {
        -webkit-transform: scale(0.3) !important;
                transform: scale(0.3) !important;
    }
}
.p-home-mv__deco-img07 {
    margin: 4rem 13vw 0 0;
    -webkit-animation: slide_right_sm_sp 0.2s 1 forwards;
            animation: slide_right_sm_sp 0.2s 1 forwards;
    -webkit-animation-delay: 0.2s !important;
            animation-delay: 0.2s !important;
}
@media (min-width: 768px) {
    .p-home-mv__deco-img07 {
        -webkit-animation: slide_right_sm 0.2s 1 forwards;
                animation: slide_right_sm 0.2s 1 forwards;
    }
}
@media (max-width: 767px) {
    .p-home-mv__deco-img07 {
        top: auto !important;
        bottom: 0;
        margin: 0 -4vw -7rem 0;
    }
}
@media (min-width: 1280px) {
    .p-home-mv__deco-img07 {
        margin: 4rem 13rem 0 0;
    }
}
.p-home-mv__deco-img08[class] {
    margin: 0 -2rem 9rem 0;
    top: auto;
    bottom: 0;
    -webkit-animation: slide_right_lg_sp 0.1s 1 forwards;
            animation: slide_right_lg_sp 0.1s 1 forwards;
}
@media (min-width: 768px) {
    .p-home-mv__deco-img08[class] {
        -webkit-animation: slide_right_lg 0.1s 1 forwards;
                animation: slide_right_lg 0.1s 1 forwards;
        margin: 8rem -3rem 7.5rem 0;
    }
}
.p-home-mv__deco-img09[class] {
    margin: -4rem -1vw 0 0;
    -webkit-animation: slide_right_lg_sp 0.2s 1 forwards;
            animation: slide_right_lg_sp 0.2s 1 forwards;
    -webkit-animation-delay: 0.05s !important;
            animation-delay: 0.05s !important;
}
@media (max-width: 767px) {
    .p-home-mv__deco-img09[class] {
        -webkit-transform: scale(0.3) !important;
                transform: scale(0.3) !important;
    }
}
@media (min-width: 768px) {
    .p-home-mv__deco-img09[class] {
        -webkit-animation: slide_right_lg 0.2s 1 forwards;
                animation: slide_right_lg 0.2s 1 forwards;
        margin: 0 14vw 5rem 0;
        top: auto;
        bottom: 0;
    }
}
@media (min-width: 1280px) {
    .p-home-mv__deco-img09[class] {
        margin: 0 14.5rem 6.5rem 0;
    }
}
.p-home-mv__deco-img10[class] {
    margin: 0;
    top: auto;
    bottom: 0;
    -webkit-animation: slide_right_sm_sp 0.1s 1 forwards;
            animation: slide_right_sm_sp 0.1s 1 forwards;
    -webkit-animation-delay: 0.15s !important;
            animation-delay: 0.15s !important;
}
@media (min-width: 768px) {
    .p-home-mv__deco-img10[class] {
        -webkit-animation: slide_right_sm 0.1s 1 forwards;
                animation: slide_right_sm 0.1s 1 forwards;
    }
}
@media (max-width: 767px) {
    .p-home-mv__deco-img10[class] {
        margin: 0 14vw -5rem 0;
    }
}
@media (max-width: 767px) {
    .p-home-mv__bnr-list-wrap {
        margin-left: -1.25rem;
        margin-right: -1.25rem;
    }
}
@media (min-width: 768px) {
    .p-home-mv__bnr-list {
        -webkit-box-align: end;
            -ms-flex-align: end;
                align-items: flex-end;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        gap: 1rem;
    }
}
@media (min-width: 960px) {
    .p-home-mv__bnr-list {
        gap: 1.5rem;
    }
}
@media (min-width: 1280px) {
    .p-home-mv__bnr-list {
        height: 14.5rem;
    }
}
.p-home-mv__bnr-item {
    overflow: hidden;
    -webkit-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
    padding: 1.125rem 0 1.5rem;
}
@media (max-width: 767px) {
    .p-home-mv__bnr-item {
        height: 7.5rem;
    }
}
@media (min-width: 768px) {
    .p-home-mv__bnr-item {
        -ms-flex-negative: 0;
            flex-shrink: 0;
        -webkit-box-flex: 0;
            -ms-flex-positive: 0;
                flex-grow: 0;
        -ms-flex-preferred-size: calc(100vw - 5rem);
            flex-basis: calc(100vw - 5rem);
        max-width: calc(100vw - 5rem);
    }
}
@media (min-width: 768px) {
    .p-home-mv__bnr-item.-copy {
        display: none;
    }
}
@media (min-width: 768px) {
    .p-home-mv__bnr-item {
        -ms-flex-preferred-size: calc(33.3333333333% - 0.6666666667rem);
            flex-basis: calc(33.3333333333% - 0.6666666667rem);
        max-width: calc(33.3333333333% - 0.6666666667rem);
        padding: 1.5rem 0 2.75rem;
        height: 9.5rem;
    }
}
@media (min-width: 960px) {
    .p-home-mv__bnr-item {
        -ms-flex-preferred-size: calc(33.3333333333% - 1rem);
            flex-basis: calc(33.3333333333% - 1rem);
        max-width: calc(33.3333333333% - 1rem);
        height: 11.25rem;
    }
}
.p-home-mv__bnr-item::after {
    content: "";
    display: block;
    -webkit-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
    width: 100%;
    height: 1.25rem;
    position: absolute;
    z-index: -5;
    bottom: 0;
    left: 0;
}
@media (min-width: 1280px) {
    .p-home-mv__bnr-item:hover {
        height: auto;
        min-height: 220px;
        padding: 1.5rem 0 2.75rem;
    }
}
@media (min-width: 768px) {
    .p-home-mv__bnr-item:hover::after {
        height: 100%;
    }
}
.p-home-mv__bnr-item.-index1::after {
    background-color: var(--c-sec);
}
.p-home-mv__bnr-item.-index2::after {
    background-color: var(--c-pri);
}
.p-home-mv__bnr-item.-index3::after {
    background-color: var(--c-third);
}
.p-home-mv__bnr-title {
    -webkit-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
    line-height: 1.5;
    color: var(--c-wht);
    font-weight: bold;
    padding: 0 1.75rem;
}
.p-home-mv__bnr-title a {
    text-decoration: none;
    color: inherit;
}
@media (min-width: 768px) {
    .p-home-mv__bnr-title {
        font-size: 1.125rem;
    }
}
@media (min-width: 960px) {
    .p-home-mv__bnr-title {
        padding: 0 2.5rem;
        font-size: 1.25rem;
    }
}
@media (min-width: 1280px) {
    .p-home-mv__bnr-item:hover .p-home-mv__bnr-title {
        padding: 0 1.5rem;
    }
}
.p-home-mv__bnr-link {
    -webkit-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 0.5rem;
    text-decoration: underline;
    text-decoration-color: var(--c-wht-light);
    color: var(--c-wht);
    font-size: 0.75rem;
    position: absolute;
    z-index: 1;
    bottom: 0;
    left: 0;
    width: 100%;
    padding: 0 1.5rem;
    margin-bottom: 2.75rem;
}
.p-home-mv__bnr-link::after {
    content: "";
    display: block;
    width: 0.875rem;
    height: 0.875rem;
    background-repeat: no-repeat;
    background-size: 100% auto;
    background-position: right center;
    background-image: url(../img/ico_arr_right_wht.svg);
    -webkit-transform: translateY(-1px);
            transform: translateY(-1px);
}
@media (min-width: 960px) {
    .p-home-mv__bnr-link::after {
        -webkit-transform: translateY(0);
                transform: translateY(0);
    }
}
.p-home-mv__bnr-link + * {
    margin-top: 0.5rem;
}
@media (min-width: 960px) {
    .p-home-mv__bnr-link {
        font-size: 0.875rem;
        padding: 0 2.5rem;
    }
}
@media (min-width: 1280px) {
    .p-home-mv__bnr-item:hover .p-home-mv__bnr-link {
        padding: 0 1.5rem;
        -webkit-box-ordinal-group: 11;
            -ms-flex-order: 10;
                order: 10;
    }
}
.p-home-mv__bnr-desc {
    -webkit-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
    color: var(--c-wht);
    font-size: 0.875rem;
    opacity: 0;
    padding: 0 1.5rem;
}
@media (max-width: 767px) {
    .p-home-mv__bnr-desc {
        display: none;
    }
}
@media (min-width: 1280px) {
    .p-home-mv__bnr-item:hover .p-home-mv__bnr-desc {
        position: relative;
        opacity: 1;
        -webkit-transition-delay: 0.2s;
                transition-delay: 0.2s;
        -webkit-box-ordinal-group: 6;
            -ms-flex-order: 5;
                order: 5;
    }
}
.p-home-mv__bnr-img {
    position: absolute;
    z-index: -10;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.p-home-mv__bnr-img img {
    -o-object-fit: cover;
       object-fit: cover;
    height: 100%;
    width: 100%;
}
.p-home-mv__bnr-img::before {
    content: "";
    display: block;
    background-color: var(--c-pri);
    width: 100%;
    height: 100%;
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;
    opacity: 0.6;
}

.p-home-message {
    position: relative;
    overflow: hidden;
}
@media (min-width: 768px) {
    .p-home-message {
        padding-top: 2.5rem;
    }
}
.p-home-message__header + * {
    margin-top: 3.5rem;
}
@media (max-width: 767px) {
    .p-home-message__header + * {
        margin-top: 2.75rem;
    }
}
.p-home-message__body + * {
    margin-top: 3.5rem;
}
@media (max-width: 767px) {
    .p-home-message__body + * {
        margin-top: 2.75rem;
    }
}
.p-home-message__headline {
    line-height: 1.5;
    letter-spacing: 0.08em;
    text-align: center;
    color: var(--c-pri);
    font-weight: bold;
    font-size: 3rem;
}
@media (max-width: 767px) {
    .p-home-message__headline {
        font-size: 2.25rem;
    }
}
.p-home-message__desc {
    text-align: center;
    line-height: 3.2;
    font-size: 1.25rem;
}
@media (max-width: 767px) {
    .p-home-message__desc {
        font-size: 1rem;
    }
}
.p-home-message__bg {
    pointer-events: none;
    position: absolute;
    z-index: -1;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    text-align: center;
    padding-top: 9rem;
}
.p-home-message__bg img {
    -o-object-fit: cover;
       object-fit: cover;
    height: 62.5%;
    width: 87.5%;
}
@media (max-width: 767px) {
    .p-home-message__bg img {
        width: 100%;
        height: 100%;
    }
}
@media (min-width: 768px) {
    .p-home-message__bg img {
        height: 100%;
        width: auto;
    }
}
@media (min-width: 960px) {
    .p-home-message__bg img {
        -o-object-position: center top;
           object-position: center top;
        -o-object-fit: contain;
           object-fit: contain;
        height: inherit;
        width: inherit;
    }
}
@media (min-width: 768px) {
    .p-home-message__bg {
        padding-top: 0;
    }
}
.p-home-message__bg.-lg {
    display: none;
}
@media (min-width: 960px) {
    .p-home-message__bg.-lg {
        display: block;
    }
}
.p-home-message__bg.-sm {
    display: block;
}
@media (min-width: 960px) {
    .p-home-message__bg.-sm {
        display: none;
    }
}

.p-home-movie {
    overflow: hidden;
    position: relative;
}
@media (max-width: 767px) {
    .p-home-movie[class] {
        padding-top: 5.5rem;
        margin-top: 0;
    }
}
@media (min-width: 960px) {
    * + .p-home-movie[class] {
        margin-top: 10rem;
    }
}
.p-home-movie__bg-wrap {
    position: absolute;
    z-index: -1;
    top: 0;
    left: 0;
    width: 100%;
    margin-top: 2rem;
}
@media (max-width: 767px) {
    .p-home-movie__bg-wrap {
        margin-top: 1.25rem;
    }
}
.p-home-movie__bg.-lg {
    display: none;
}
@media (min-width: 768px) {
    .p-home-movie__bg.-lg {
        display: block;
    }
}
.p-home-movie__bg.-sm {
    display: block;
}
@media (min-width: 768px) {
    .p-home-movie__bg.-sm {
        display: none;
    }
}
.p-home-movie__video {
    aspect-ratio: 16/9;
    max-width: 50rem;
    margin-left: auto;
    margin-right: auto;
}
.p-home-movie__video > * {
    display: block;
    max-width: 100%;
    -o-object-fit: cover;
       object-fit: cover;
    height: 100%;
    width: 100%;
}
.p-home-movie__label {
    color: var(--c-pri-light);
    line-height: 1;
    letter-spacing: 0.16em;
    white-space: nowrap;
    text-transform: uppercase;
    font-weight: bold;
    font-size: 4rem;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    padding-left: 4rem;
}
@media (min-width: 768px) {
    .p-home-movie__label {
        font-size: 5.5rem;
        padding-left: 8rem;
    }
}
@media (min-width: 960px) {
    .p-home-movie__label {
        font-size: 7.5rem;
        padding-left: 8rem;
    }
}

.p-home-about {
    position: relative;
    padding-top: 4rem;
    padding-bottom: 4rem;
}
* + .p-home-about[class] {
    margin-top: 3.5rem;
}
@media (min-width: 768px) {
    * + .p-home-about[class] {
        margin-top: 4rem;
    }
}
@media (min-width: 768px) {
    .p-home-about {
        padding-top: 6rem;
        padding-bottom: 8rem;
    }
}
.p-home-about__header + * {
    margin-top: 2.75rem;
}
.p-home-about::before {
    content: "";
    border-bottom-left-radius: 0;
    border-top-left-radius: 0;
    display: block;
    background-color: var(--c-pri);
    width: 100%;
    height: 100%;
    position: absolute;
    z-index: -20;
    top: 0;
    left: 0;
}
@media (min-width: 768px) {
    .p-home-about::before {
        width: calc(50vw + 50% - 7.5rem);
    }
}
@media (min-width: 1280px) {
    .p-home-about::before {
        width: calc(50vw + 480px);
    }
}
.p-home-about__bg-wrap {
    position: absolute;
    z-index: -1;
    top: 50%;
    left: 0;
    width: 100%;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    height: calc(100% + 20rem);
}
@media (max-width: 767px) {
    .p-home-about__bg-wrap {
        overflow: hidden;
    }
}
@media (min-width: 768px) {
    .p-home-about__bg-wrap {
        height: calc(100% + 7.5rem);
    }
}
.p-home-about__bg-wrap > * {
    height: 100%;
}
.p-home-about__bg {
    position: relative;
    height: 100%;
}
@media (max-width: 767px) {
    .p-home-about__bg {
        z-index: -5;
    }
}
.p-home-about__bg-img01 {
    position: absolute;
    z-index: 1;
    top: 0;
    right: 0;
}
@media (max-width: 767px) {
    .p-home-about__bg-img01 {
        -webkit-transform: scale(0.35) scaleY(-1);
                transform: scale(0.35) scaleY(-1);
        margin-right: -15vw;
    }
}
.p-home-about__bg-img02 {
    position: absolute;
    z-index: 1;
    bottom: 0;
    right: 0;
}
@media (max-width: 767px) {
    .p-home-about__bg-img02 {
        -webkit-transform: scale(0.35);
                transform: scale(0.35);
        margin-right: -15vw;
        margin-bottom: -1.5rem;
    }
}

@-webkit-keyframes gallery-slide-left {
    from {
        -webkit-transform: translateX(0);
                transform: translateX(0);
    }
    to {
        -webkit-transform: translateX(-100%);
                transform: translateX(-100%);
    }
}

@keyframes gallery-slide-left {
    from {
        -webkit-transform: translateX(0);
                transform: translateX(0);
    }
    to {
        -webkit-transform: translateX(-100%);
                transform: translateX(-100%);
    }
}
@-webkit-keyframes gallery-slide-right {
    from {
        -webkit-transform: translateX(-100%);
                transform: translateX(-100%);
    }
    to {
        -webkit-transform: translateX(0);
                transform: translateX(0);
    }
}
@keyframes gallery-slide-right {
    from {
        -webkit-transform: translateX(-100%);
                transform: translateX(-100%);
    }
    to {
        -webkit-transform: translateX(0);
                transform: translateX(0);
    }
}
.p-home-gallery {
    position: relative;
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    width: 100vw;
    overflow-x: hidden;
}
@media (max-width: 767px) {
    .p-home-gallery {
        overflow: hidden;
    }
}
@media (min-width: 768px) {
    html.is-safari.is-desktop .p-home-gallery {
        width: calc(100vw - 0.75rem);
    }
}
body.is-loaded .p-home-gallery__list-wrap {
    opacity: 1;
}
.p-home-gallery__list-wrap {
    -webkit-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 0.5rem;
    opacity: 0;
}
@media (min-width: 768px) {
    .p-home-gallery__list-wrap {
        gap: 1rem;
    }
}
@media (min-width: 960px) {
    .p-home-gallery__list-wrap {
        gap: 1.5rem;
    }
}
.p-home-gallery__list-wrap + .p-home-gallery__list-wrap {
    margin-top: 1.5rem;
}
.p-home-gallery__list {
    white-space: nowrap;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 0.5rem;
}
@media (min-width: 768px) {
    .p-home-gallery__list {
        gap: 1rem;
    }
}
@media (min-width: 960px) {
    .p-home-gallery__list {
        gap: 1.5rem;
    }
}
.p-home-gallery__list > * {
    display: block;
    width: 150px;
}
@media (min-width: 768px) {
    .p-home-gallery__list > * {
        width: 300px;
    }
}
@media (min-width: 960px) {
    .p-home-gallery__list > * {
        width: 448px;
    }
}
.p-home-gallery__list > * img {
    overflow: hidden;
    aspect-ratio: 448/160;
}
.p-home-gallery__list > * img {
    -o-object-fit: cover;
       object-fit: cover;
    width: 100%;
}
.p-home-gallery.-lg .p-home-gallery__list > * {
    white-space: initial;
    text-align: center;
    font-weight: bold;
    width: 240px;
}
@media (min-width: 768px) {
    .p-home-gallery.-lg .p-home-gallery__list > * {
        font-size: 1.25rem;
        width: 640px;
    }
}
@media (min-width: 960px) {
    .p-home-gallery.-lg .p-home-gallery__list > * {
        width: 800px;
    }
}
.p-home-gallery.-lg .p-home-gallery__list > * img {
    aspect-ratio: 800/490;
    margin-bottom: 1.5rem;
}
@media (max-width: 767px) {
    .p-home-gallery.-lg .p-home-gallery__list > * img {
        margin-bottom: 1rem;
    }
}

body.is-loaded .p-home-gallery__list-wrap.-left {
    -webkit-animation: gallery-slide-left 40s infinite linear 1s both;
            animation: gallery-slide-left 40s infinite linear 1s both;
}

body.is-loaded .p-home-gallery__list-wrap.-right {
    -webkit-animation: gallery-slide-right 40s infinite linear 1s both;
            animation: gallery-slide-right 40s infinite linear 1s both;
}

body.is-loaded .p-home-gallery.-lg .p-home-gallery__list-wrap.-left {
    -webkit-animation: gallery-slide-left 20s infinite linear 1s both;
            animation: gallery-slide-left 20s infinite linear 1s both;
}

body.is-loaded .p-home-gallery.-lg .p-home-gallery__list-wrap.-right {
    -webkit-animation: gallery-slide-right 20s infinite linear 1s both;
            animation: gallery-slide-right 20s infinite linear 1s both;
}

@-webkit-keyframes works_img_circle01 {
    0% {
        opacity: 0;
    }
    10% {
        opacity: 0.05;
    }
    20% {
        opacity: 0.05;
    }
    100% {
        opacity: 0.05;
    }
}

@keyframes works_img_circle01 {
    0% {
        opacity: 0;
    }
    10% {
        opacity: 0.05;
    }
    20% {
        opacity: 0.05;
    }
    100% {
        opacity: 0.05;
    }
}
@-webkit-keyframes works_img_circle02 {
    0% {
        opacity: 0;
    }
    20% {
        opacity: 0;
    }
    30% {
        opacity: 0.05;
    }
    100% {
        opacity: 0.05;
    }
}
@keyframes works_img_circle02 {
    0% {
        opacity: 0;
    }
    20% {
        opacity: 0;
    }
    30% {
        opacity: 0.05;
    }
    100% {
        opacity: 0.05;
    }
}
@-webkit-keyframes works_img_circle03 {
    0% {
        opacity: 0;
    }
    35% {
        opacity: 0;
    }
    45% {
        opacity: 0.05;
    }
    100% {
        opacity: 0.05;
    }
}
@keyframes works_img_circle03 {
    0% {
        opacity: 0;
    }
    35% {
        opacity: 0;
    }
    45% {
        opacity: 0.05;
    }
    100% {
        opacity: 0.05;
    }
}
.p-home-works {
    position: relative;
    overflow: hidden;
}
@media (max-width: 767px) {
    .p-home-works[class] {
        margin-top: 0;
        padding-top: 5.5rem;
    }
}
.p-home-works__inner {
    position: relative;
}
.p-home-works__img {
    position: relative;
    text-align: center;
    width: 100%;
    height: 60vw;
    min-height: 320px;
}
@media (min-width: 768px) {
    .p-home-works__img {
        margin-left: auto;
    }
}
@media (min-width: 960px) {
    .p-home-works__img {
        width: 500px;
        height: 500px;
        margin-right: -4rem;
    }
}
@media (min-width: 1280px) {
    .p-home-works__img {
        width: 700px;
        height: 700px;
    }
}
.p-home-works__img img {
    max-width: 34vw;
    min-width: 180px;
    position: absolute;
    z-index: 1;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
}
@media (min-width: 960px) {
    .p-home-works__img img {
        max-width: 300px;
    }
}
@media (min-width: 1280px) {
    .p-home-works__img img {
        max-width: 412px;
    }
}
.p-home-works__img-circle {
    display: block;
    border-radius: 50%;
    background-color: var(--c-pri);
    opacity: 0.05;
    position: absolute;
    z-index: -1;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
}
.p-home-works__img-circle.-sm {
    width: 30vw;
    height: 30vw;
    -webkit-animation: works_img_circle01 6s infinite linear both;
            animation: works_img_circle01 6s infinite linear both;
}
@media (max-width: 767px) {
    .p-home-works__img-circle.-sm {
        min-width: 160px;
        min-height: 160px;
    }
}
@media (min-width: 960px) {
    .p-home-works__img-circle.-sm {
        width: 250px;
        height: 250px;
    }
}
@media (min-width: 1280px) {
    .p-home-works__img-circle.-sm {
        width: 350px;
        height: 350px;
    }
}
.p-home-works__img-circle.-md {
    width: 44vw;
    height: 44vw;
    -webkit-animation: works_img_circle02 6s infinite linear both;
            animation: works_img_circle02 6s infinite linear both;
}
@media (max-width: 767px) {
    .p-home-works__img-circle.-md {
        min-width: 240px;
        min-height: 240px;
    }
}
@media (min-width: 960px) {
    .p-home-works__img-circle.-md {
        width: 382px;
        height: 382px;
    }
}
@media (min-width: 1280px) {
    .p-home-works__img-circle.-md {
        width: 524px;
        height: 524px;
    }
}
.p-home-works__img-circle.-lg {
    width: 60vw;
    height: 60vw;
    -webkit-animation: works_img_circle03 6s infinite linear both;
            animation: works_img_circle03 6s infinite linear both;
}
@media (max-width: 767px) {
    .p-home-works__img-circle.-lg {
        min-width: 320px;
        min-height: 320px;
    }
}
@media (min-width: 960px) {
    .p-home-works__img-circle.-lg {
        width: 500px;
        height: 500px;
    }
}
@media (min-width: 1280px) {
    .p-home-works__img-circle.-lg {
        width: 700px;
        height: 700px;
    }
}
@media (min-width: 960px) {
    .p-home-works__text {
        position: absolute;
        z-index: 10;
        top: 50%;
        left: 0;
        width: 100%;
        -webkit-transform: translateY(-50%);
                transform: translateY(-50%);
    }
}
.p-home-works__text + * {
    margin-top: 1rem;
}
.p-home-works__headline + * {
    margin-top: 2.5rem;
}
@media (max-width: 767px) {
    .p-home-works__headline + * {
        margin-top: 1rem;
    }
}
.p-home-works__desc {
    line-height: 2.4;
}
@media (min-width: 768px) {
    .p-home-works__desc {
        font-size: 1.125rem;
    }
}
@media (max-width: 767px) {
    .p-home-works__desc br {
        display: none;
    }
}
.p-home-works__bg-wrap {
    position: absolute;
    z-index: -1;
    top: 0;
    left: 0;
    width: 100%;
    margin-top: 1vw;
}
@media (max-width: 767px) {
    .p-home-works__bg-wrap {
        margin-top: 0;
    }
}
.p-home-works__bg {
    text-align: right;
}
@media (max-width: 767px) {
    .p-home-works__bg img {
        -webkit-transform: scale(0.35);
                transform: scale(0.35);
        margin-right: -5rem;
    }
}
@media (min-width: 960px) {
    .p-home-works__bg {
        text-align: left;
    }
}

@-webkit-keyframes culture-slide {
    0% {
        opacity: 0;
        z-index: 1;
    }
    10% {
        opacity: 1;
    }
    30% {
        opacity: 1;
    }
    40% {
        opacity: 0;
    }
    100% {
        opacity: 0;
    }
}

@keyframes culture-slide {
    0% {
        opacity: 0;
        z-index: 1;
    }
    10% {
        opacity: 1;
    }
    30% {
        opacity: 1;
    }
    40% {
        opacity: 0;
    }
    100% {
        opacity: 0;
    }
}
.p-home-pickup {
    overflow: hidden;
    position: relative;
    padding-bottom: 9rem;
}
* + .p-home-pickup[class] {
    margin-top: 2rem;
}
@media (max-width: 767px) {
    .p-home-pickup {
        padding-bottom: 2.75rem;
    }
}
.p-home-pickup::before {
    content: "";
    border-bottom-left-radius: 0;
    border-top-left-radius: 0;
    display: block;
    background-color: var(--c-pri-light);
    width: 100%;
    position: absolute;
    z-index: -5;
    top: 0;
    left: 0;
    margin-top: 11rem;
    height: calc(100% - 11rem);
}
@media (max-width: 767px) {
    .p-home-pickup::before {
        width: 81.375%;
    }
}
@media (min-width: 768px) {
    .p-home-pickup::before {
        margin-top: 11rem;
        width: calc(50vw + 50% - 7.5rem);
    }
}
@media (min-width: 1280px) {
    .p-home-pickup::before {
        margin-top: 19rem;
        height: calc(100% - 19rem);
        width: calc(50vw + 480px);
    }
}
.p-home-pickup__header + * {
    margin-top: 2.5rem;
}
@media (max-width: 767px) {
    .p-home-pickup__header + * {
        margin-top: 1rem;
    }
}
.p-home-pickup__body + * {
    margin-top: 3.5rem;
}
.p-home-pickup__headline {
    font-weight: bold;
    color: var(--c-pri);
    text-transform: uppercase;
    font-size: 2.5rem;
}
@media (max-width: 767px) {
    .p-home-pickup__headline {
        font-size: 1.5rem;
    }
}
.p-home-pickup__bg-wrap {
    position: absolute;
    z-index: -10;
    bottom: 0;
    left: 0;
    width: 100%;
}
@media (max-width: 767px) {
    .p-home-pickup__bg-wrap {
        display: none;
        margin-top: 0;
    }
}
@media (min-width: 768px) {
    .p-home-pickup__bg-wrap {
        z-index: -7;
    }
}
@media (min-width: 960px) {
    .p-home-pickup__bg-wrap {
        z-index: -3;
    }
}
.p-home-pickup__bg {
    text-align: right;
    padding-right: 3rem;
    margin-bottom: 1rem;
    -webkit-transform: scale(0.35);
            transform: scale(0.35);
}
@media (max-width: 767px) {
    .p-home-pickup__bg img {
        margin-right: -5rem;
    }
}
@media (min-width: 768px) {
    .p-home-pickup__bg {
        -webkit-transform: scale(1);
                transform: scale(1);
    }
}

.p-home-culture {
    position: relative;
    padding-top: 10rem;
}
@media (min-width: 768px) {
    .p-home-culture {
        overflow-x: hidden;
        padding-bottom: 5rem;
    }
}
* + .p-home-culture[class] {
    margin-top: 3.5rem;
}
@media (max-width: 767px) {
    * + .p-home-culture[class] {
        margin-top: 0;
    }
}
@media (max-width: 767px) {
    .p-home-culture {
        padding-top: 7rem;
    }
}
@media (max-width: 767px) {
    .p-home-culture__header + * {
        margin-top: 20rem;
    }
}
.p-home-culture__footer {
    position: absolute;
    z-index: -1;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    margin-top: 2rem;
}
@media (min-width: 768px) {
    .p-home-culture__footer {
        padding-top: 5rem;
        margin-top: 0;
    }
}
.p-home-culture__footer > * {
    height: 100%;
}
.p-home-culture__footer-inner {
    overflow: hidden;
    margin-left: auto;
    margin-top: 0;
    width: 60vw;
    height: 100%;
    margin-right: -1.25rem;
}
@media (max-width: 767px) {
    .p-home-culture__footer-inner {
        width: calc(100vw - 4rem);
        height: 105vw;
        margin-top: 18rem;
    }
}
@media (min-width: 768px) {
    .p-home-culture__footer-inner {
        margin-right: -1rem;
    }
}
@media (min-width: 960px) {
    .p-home-culture__footer-inner {
        width: calc(644px + 5rem);
        margin-right: -6.5rem;
    }
}
.p-home-culture__headline + * {
    margin-top: 2.5rem;
}
.p-home-culture__img-list {
    position: relative;
    overflow: hidden;
    height: 100%;
    width: 100%;
}
@media (max-width: 767px) {
    .p-home-culture__img-list {
        border-bottom-right-radius: 0;
        border-top-right-radius: 0;
    }
}
.p-home-culture__img-item {
    height: 100%;
    width: 100%;
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;
    opacity: 0;
    visibility: hidden;
}
.p-home-culture__img-item img {
    -o-object-fit: cover;
       object-fit: cover;
    height: 100%;
    width: 100%;
}
.p-home-culture__img-item[class]:nth-child(1) {
    -webkit-animation-delay: 0s;
            animation-delay: 0s;
}
.p-home-culture__img-item[class]:nth-child(2) {
    -webkit-animation-delay: 4s;
            animation-delay: 4s;
}
.p-home-culture__img-item[class]:nth-child(3) {
    -webkit-animation-delay: 8s;
            animation-delay: 8s;
}
.p-home-culture__img-item[class]:nth-child(4) {
    -webkit-animation-delay: 12s;
            animation-delay: 12s;
}
body.is-loaded .p-home-culture__img-item {
    visibility: inherit;
    -webkit-animation: culture-slide 16s infinite;
            animation: culture-slide 16s infinite;
}
.p-home-culture__subdesc {
    line-height: 2.4;
}
@media (max-width: 767px) {
    .p-home-culture__subdesc {
        font-size: 1rem;
    }
}
.p-home-culture__bg-wrap {
    position: absolute;
    z-index: -1;
    top: 0;
    left: 0;
    width: 100%;
    margin-top: 1vw;
}
@media (max-width: 767px) {
    .p-home-culture__bg-wrap {
        margin-top: -1rem;
    }
}
@media (max-width: 767px) {
    .p-home-culture__bg {
        text-align: right;
    }
    .p-home-culture__bg img {
        -webkit-transform: scale(0.35) scaleX(-1);
                transform: scale(0.35) scaleX(-1);
        margin-right: -5rem;
    }
}

.p-home-internship {
    position: relative;
}
.p-home-internship__bnr {
    position: relative;
    background-color: var(--c-pri);
    padding: 1.25rem 2.5rem 2.5rem;
}
@media (max-width: 767px) {
    .p-home-internship__bnr {
        padding: 2.75rem 1.25rem;
    }
}
.p-home-internship__headline + * {
    margin-top: 1rem;
}
@media (min-width: 768px) {
    .p-home-internship__headline + * {
        margin-top: -0.5rem;
    }
}
@media (max-width: 767px) {
    .p-home-internship__headline *[data-english]::before {
        font-size: 3rem;
    }
}
@media (min-width: 768px) {
    .p-home-internship__headline *[data-english]::before {
        font-size: 11.875vw;
    }
}
@media (min-width: 960px) {
    .p-home-internship__headline *[data-english]::before {
        font-size: 7.625rem;
    }
}
@media (min-width: 960px) {
    .p-home-internship__headline span {
        padding-left: 2.25rem;
    }
}
.p-home-internship__desc {
    color: var(--c-wht);
}
@media (min-width: 768px) {
    .p-home-internship__desc {
        line-height: 2.4;
    }
}
@media (max-width: 767px) {
    .p-home-internship__desc br {
        display: none;
    }
}
.p-home-internship__desc + * {
    margin-top: 2.5rem;
}
@media (min-width: 768px) {
    .p-home-internship__desc {
        font-size: 1.125rem;
    }
}
@media (min-width: 960px) {
    .p-home-internship__desc {
        padding: 0 2.5rem;
    }
}
.p-home-internship__label {
    position: relative;
    z-index: 10;
}
.p-home-internship__label + * {
    margin-top: 2.5rem;
}
@media (min-width: 960px) {
    .p-home-internship__label {
        padding: 0 2.5rem;
    }
}
.p-home-internship__label-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 1rem;
}
@media (max-width: 767px) {
    .p-home-internship__label-list {
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    }
}
@media (min-width: 960px) {
    .p-home-internship__label-list {
        gap: 1.5rem;
    }
}
.p-home-internship__label-item {
    background-color: var(--c-wht);
    color: var(--c-pri);
    font-weight: bold;
    font-size: 0.875rem;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 0.5rem;
    padding: 0.625rem 1rem 0.5rem;
}
@media (max-width: 767px) {
    .p-home-internship__label-item {
        -ms-flex-negative: 0;
            flex-shrink: 0;
        -webkit-box-flex: 0;
            -ms-flex-positive: 0;
                flex-grow: 0;
        -ms-flex-preferred-size: 194px;
            flex-basis: 194px;
        max-width: 194px;
    }
}
@media (min-width: 768px) {
    .p-home-internship__label-item {
        -webkit-box-pack: center;
            -ms-flex-pack: center;
                justify-content: center;
        font-size: 1.25rem;
        gap: 1rem;
        width: 100%;
        padding: 0.875rem 1rem 0.75rem;
    }
}
.p-home-internship__label-item::before {
    content: attr(data-english);
    line-height: 1.25;
    background-color: var(--c-pri-dark);
    color: var(--c-wht);
    font-weight: bold;
    font-size: 0.875rem;
    padding: 0.25rem 0.5rem 1px;
}
@media (max-width: 767px) {
    .p-home-internship__label-item::before {
        font-size: 0.75rem;
        padding-bottom: 2px;
    }
}
.p-home-internship__label-item:nth-child(2)::before {
    background-color: var(--c-pri);
}
@media (max-width: 767px) {
    .p-home-internship__link {
        position: relative;
        z-index: 10;
    }
    .p-home-internship__link * {
        font-size: 0.875rem;
    }
}
@media (min-width: 960px) {
    .p-home-internship__link {
        padding: 0 2.5rem;
    }
}
.p-home-internship__img {
    position: absolute;
    z-index: 1;
    bottom: 0;
    right: 0;
    max-width: 152px;
    margin-right: 0.5rem;
}
@media (min-width: 768px) {
    .p-home-internship__img {
        max-width: 15rem;
        margin-right: 2.25rem;
    }
}
@media (min-width: 960px) {
    .p-home-internship__img {
        max-width: 271px;
        margin-right: 4rem;
    }
}
.p-home-internship__bg-wrap {
    position: absolute;
    z-index: -1;
    width: 100%;
}
@media (max-width: 767px) {
    .p-home-internship__bg-wrap {
        margin-top: -1rem;
        bottom: 0;
    }
}
.p-home-internship__bg-wrap.-left {
    left: 0;
    margin-bottom: -5.5rem;
}
@media (max-width: 767px) {
    .p-home-internship__bg-wrap.-left {
        margin-left: -1rem;
    }
}
@media (min-width: 768px) {
    .p-home-internship__bg-wrap.-left {
        bottom: 0;
        margin-bottom: -4rem;
    }
}
.p-home-internship__bg-wrap.-right {
    right: 0;
    margin-bottom: -9.5rem;
}
@media (max-width: 767px) {
    .p-home-internship__bg-wrap.-right {
        margin-right: 0;
    }
}
@media (min-width: 768px) {
    .p-home-internship__bg-wrap.-right {
        top: 0;
        margin-top: -5rem;
    }
}
@media (max-width: 767px) {
    .p-home-internship__bg-wrap.-left .p-home-internship__bg img {
        -webkit-transform: scale(0.35) scaleX(-1);
                transform: scale(0.35) scaleX(-1);
    }
}
@media (min-width: 768px) {
    .p-home-internship__bg-wrap.-left .p-home-internship__bg {
        padding-left: 4rem;
    }
}
.p-home-internship__bg-wrap.-right .p-home-internship__bg {
    text-align: right;
}
@media (max-width: 767px) {
    .p-home-internship__bg-wrap.-right .p-home-internship__bg img {
        -webkit-transform: scale(0.35) rotate(90deg) scaleX(-1);
                transform: scale(0.35) rotate(90deg) scaleX(-1);
    }
}
@media (min-width: 768px) {
    .p-home-internship__bg-wrap.-right .p-home-internship__bg {
        padding-right: 1.5rem;
    }
}