﻿@-webkit-keyframes icoMove {
    0% {
        transform: translate3d(-50%, -50%, 0);
        opacity: 1;
    }

    50.0% {
        transform: translate3d(60%, -50%, 0);
        opacity: 0;
    }

    50.1% {
        transform: translate3d(-110%, -50%, 0);
        opacity: 0;
    }

    100% {
        transform: translate3d(-50%, -50%, 0);
        opacity: 1;
    }
}

@keyframes icoMove {
    0% {
        transform: translate3d(-50%, -50%, 0);
        opacity: 1;
    }

    50.0% {
        transform: translate3d(60%, -50%, 0);
        opacity: 0;
    }

    50.1% {
        transform: translate3d(-110%, -50%, 0);
        opacity: 0;
    }

    100% {
        transform: translate3d(-50%, -50%, 0);
        opacity: 1;
    }
}

:root {
    --color-primary-200: 60, 137, 183, 0.2;
    --color-primary-400: 60, 137, 183, 0.8;
    --color-primary-500: 60, 137, 183;
    --color-grayscale-100: 255, 255, 255, 0.3;
    --color-grayscale-200: 255, 255, 255;
    --color-grayscale-300: 242, 242, 242;
    --color-grayscale-400: 223, 223, 223;
    --color-grayscale-500: 51, 51, 51, 0.25;
    --color-grayscale-700: 0, 0, 0, 0.4;
    --color-grayscale-800: 136, 136, 136;
    --color-grayscale-900: 51, 51, 51;
    --color-category01-500: 71, 146, 173;
    --color-category02-500: 241, 124, 138;
    --color-category03-500: 121, 185, 40;
    --easeInOutExpo: cubic-bezier(0.9, 0, 0.1, 1);
    --easeInOutQuart: cubic-bezier(0.25, 1, 0.5, 1);
    --contents_width: 1100px;
    --contents_wide_width: 1400px;
    --body_padding_side: 20px;
    --contents_width_with_padding: 1260px;
    --contents_wide_width_with_padding: 1560px;
    --sidebar_width: 250px;
    --header_height: 65px;
    --line-height_base: 1.9;
    --line-height_snug: 1.5;
    --letter-spacing_base: 0.08em;
    --letter-spacing_snug: 0.06em;
    --font-weight_bold: 500;
    --font-family_en: "Poppins", sans-serif;
    --line-height_en: 1;
    --letter-spacing_en: 0.02em;
    --font-weight_en: 500;
    --section-space--x2s: 30px;
    --section-space--xs: 40px;
    --section-space--sm: 50px;
    --section-space--md: 60px;
    --section-space--lg: 70px;
    --section-space--xl: 80px;
    --section-space--x2l: 90px;
}

@media all and (min-width: 768px) {
    :root {
        --body_padding_side: 80px;
        --header_height: clamp(100px, 6.77vw, 130px);
    }
}

@media all and (min-width: 768px) {
    :root {
        --section-space--x2s: 60px;
        --section-space--xs: 80px;
        --section-space--sm: 100px;
        --section-space--md: 120px;
        --section-space--lg: 140px;
        --section-space--xl: 180px;
        --section-space--x2l: 200px;
    }
}

html,
body,
div,
span,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
a,
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,
menu,
nav,
section,
summary,
time,
mark,
audio,
video {
    margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
    font-size: 100%;
    vertical-align: baseline;
    background: transparent;
}

html {
    font-size: 62.5%;
    word-break: break-all;
}

body {
    -webkit-text-size-adjust: 100%;
}

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

h1,
h2,
h3,
h4,
h5,
h6 {
    word-break: break-word;
    line-break: strict;
    overflow-wrap: break-word;
    word-wrap: break-word;
}

ul:not([class]),
ol:not([class]) {
    padding-left: 1.25em;
}

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

span {
    font-weight: inherit;
}

blockquote,
q {
    quotes: none;
}

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

a {
    color: inherit;
}

@media all and (min-width: 768px) {
    a:hover {
        text-decoration: none;
    }
}

a[class] {
    text-decoration: none;
}

ins {
    background-color: #ff9;
    text-decoration: none;
}

mark {
    background-color: #ff9;
    font-weight: bold;
}

del {
    text-decoration: line-through;
}

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

address {
    font-style: normal;
}

sup {
    vertical-align: text-top;
    font-size: 0.75em;
}

sub {
    vertical-align: text-bottom;
    font-size: 0.75em;
}

table {
    width: 100%;
    table-layout: fixed;
    border-collapse: collapse;
    border-spacing: 0;
}

hr {
    display: block;
    height: 1px;
    border: 0;
    border-top: 1px solid rgb(var(--border));
    margin: 1em 0;
    padding: 0;
}

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

iframe {
    max-width: 100%;
}

/* form
================================================== */
input[type=text],
input[type=email],
input[type=tel],
textarea,
button,
select,
option {
    display: block;
    width: 100%;
    max-width: 100%;
    font-family: inherit;
    outline: none;
    border: 1px solid;
    border-radius: 0;
    background: none;
}

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

    input[type=text],
    input[type=email],
    input[type=tel],
    textarea,
    button,
    select,
    option {
        font-size: 1.6rem;
    }
}

input[type=text],
input[type=email],
input[type=tel],
textarea,
button {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    outline: none;
}

input[type=radio],
input[type=checkbox] {
    margin: 0;
    padding: 0;
    vertical-align: middle;
}

select {
    color: inherit;
}

textarea {
    resize: vertical;
}

button {
    color: inherit;
    font-weight: normal;
    cursor: pointer;
}

/* 02_base
================================================ */
body {
    min-width: 320px;
    padding-top: var(--header_height);
    font-family: "Noto Sans JP", "ヒラギノ角ゴ ProN W3", Meiryo, sans-serif;
    color: rgb(var(--color-grayscale-900));
    font-size: 1.4rem;
    line-height: var(--line-height_base);
    letter-spacing: var(--letter-spacing_base);
    -webkit-font-smoothing: antialiased;
    text-rendering: optimizeSpeed;
}

@media all and (min-width: 768px) {
    body {
        min-width: var(--contents_width_with_padding);
        font-size: 1.6rem;
    }
}

.l-wrapper {
    position: relative;
}

@media all and (min-width: 768px) {
    .l-container.is-col2 {
        display: grid;
        grid-template-columns: var(--sidebar_width) auto;
        gap: 0 20px;
        width: var(--contents_width);
        margin: 0 auto;
    }

    .l-container.is-col2 .l-contents {
        flex: 1;
    }

    .l-container.is-col2 .l-sidebar {
        order: -1;
        flex-basis: var(--sidebar_width);
    }
}

/* sp <--> tb <--> pc
-------------------------------------- */
.u-media-query {
    display: none;
    font-family: "sp";
}

@media all and (min-width: 768px) {
    .u-media-query {
        font-family: "tb";
    }
}

@media all and (min-width: 1260px) {
    .u-media-query {
        font-family: "pc";
    }
}

@media all and (max-width: 1259px) {
    .u-view-pc {
        display: none !important;
    }
}

@media all and (max-width: 767px) {
    .u-view-tb {
        display: none !important;
    }
}

@media all and (min-width: 1260px) {
    .u-view-tb {
        display: none !important;
    }
}

@media all and (min-width: 768px) {
    .u-view-sp {
        display: none !important;
    }
}

@media all and (min-width: 1260px) {
    .u-view-under-tb {
        display: none !important;
    }
}

@media all and (max-width: 767px) {
    .u-view-upper-tb {
        display: none !important;
    }
}

/* overflow
-------------------------------------- */
.u-overflow-wrap {
    overflow: auto;
}

.u-overflow-wrap .u-overflow-sec {
    overflow: hidden;
}

@media all and (min-width: 768px) {
    .u-overflow-wrap .u-overflow-sec {
        min-width: var(--contents_width_with_padding);
    }
}

/* text
-------------------------------------- */
.u-bold {
    font-weight: var(--font-weight_bold);
}

.u-uppercase {
    text-transform: uppercase;
}

.u-capitalize {
    text-transform: capitalize;
}

.u-sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border-width: 0;
}

/* link
-------------------------------------- */
a.u-alpha {
    display: block;
    text-decoration: none;
}

@media all and (min-width: 768px) {
    a.u-alpha {
        transition: all 0.3s ease;
    }

    a.u-alpha:hover {
        opacity: 0.7;
    }
}

a.u-zoom {
    display: block;
    text-decoration: none;
}

a.u-zoom .u-zoom__img {
    display: block;
}

a.u-zoom .u-zoom__img-wrap {
    display: block;
    overflow: hidden;
}

@media all and (min-width: 768px) {
    a.u-zoom .u-zoom__img {
        transition: all 0.3s ease;
    }

    a.u-zoom:hover .u-zoom__img {
        transform: scale(1.03);
    }
}

/* layout
-------------------------------------- */
.u-inner {
    box-sizing: border-box;
    padding-left: var(--body_padding_side);
    padding-right: var(--body_padding_side);
}

@media all and (min-width: 768px) {
    .u-inner {
        width: 100%;
        max-width: var(--contents_width_with_padding);
        margin-right: auto;
        margin-left: auto;
    }
}

.u-wide-inner {
    box-sizing: border-box;
    padding-left: var(--body_padding_side);
    padding-right: var(--body_padding_side);
}

@media all and (min-width: 768px) {
    .u-wide-inner {
        width: 100%;
        max-width: var(--contents_wide_width_with_padding);
        margin-right: auto;
        margin-left: auto;
    }
}

/* font
-------------------------------------- */
.u-font-en {
    font-family: var(--font-family_en);
    font-weight: var(--font-weight_en);
    letter-spacing: var(--letter-spacing_en);
    line-height: var(--line-height_en);
}

/*  .c-anchor01
================================================== */
.c-anchor01 {
    display: grid;
    grid-template-columns: 1fr;
    gap: 20px;
    justify-content: center;
}

.c-anchor01__link {
    display: block;
    padding-bottom: 15px;
    border-bottom: 1px solid rgb(var(--color-grayscale-500));
    font-size: 1.6rem;
    font-weight: var(--font-weight_bold);
    position: relative;
}

.c-anchor01__ico {
    display: inline-block;
    width: 12px;
    position: absolute;
    top: 14px;
    right: 0;
}

.c-anchor01__ico::after {
    content: "";
    display: inline-block;
    width: 10px;
    height: 6px;
    background-color: #3C89B7;
    color: #3C89B7;
    -webkit-mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 10 6"><path d="M8.9 0 5 3.88 1.1 0 0 1.02 5 6l5-4.98L8.9 0Z"/></svg>');
    mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 10 6"><path d="M8.9 0 5 3.88 1.1 0 0 1.02 5 6l5-4.98L8.9 0Z"/></svg>');
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
    transition: all 0.3s ease;
    position: absolute;
    color: rgb(var(--color-grayscale-800));
}

@media all and (min-width: 768px) {
    .c-anchor01 {
        grid-template-columns: repeat(2, 260px);
        gap: 20px;
    }

    .c-anchor01.is-col3 {
        grid-template-columns: repeat(3, 260px);
    }

    .c-anchor01__link {
        transition: all 0.3s ease;
        padding-bottom: 20px;
    }

    .c-anchor01__ico {
        transition: all 0.3s ease;
    }
}

@media (hover: hover) and (pointer: fine) {
    .c-anchor01__link:hover {
        color: rgb(var(--color-primary-400));
    }

    .c-anchor01__link:hover .c-anchor01__ico::after {
        color: rgb(var(--color-primary-400));
    }
}

/*  .c-archive01
================================================== */
.c-archive01__item {
    border-style: solid;
    border-width: 0 0 1px;
    border-color: rgba(var(--color-grayscale-500));
    padding-bottom: 30px;
}

.c-archive01__item+.c-archive01__item {
    margin-top: 26px;
}

.c-archive01__item-in {
    display: block;
    padding: 7px 38px 0 0;
    position: relative;
    transition: all 0.3s ease;
}

.c-archive01__item-ico {
    color: rgb(var(--color-grayscale-800));
    position: absolute;
    top: calc(50% + 3px);
    right: 10px;
    transform: translateY(-50%);
    width: 16px;
}

.c-archive01__item-ico::after {
    content: "";
    display: inline-block;
    width: 16px;
    height: 14px;
    background-color: #8A8A8A;
    color: #8A8A8A;
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg width='17' height='16' viewBox='0 0 17 16' fill='none' xmlns='http://www.w3.org/2000/svg'%3E %3Cpath d='M1 8.36225H16M16 8.36225L8.5 15M16 8.36225L8.5 1.7245' stroke='%238A8A8A' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E %3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg width='17' height='16' viewBox='0 0 17 16' fill='none' xmlns='http://www.w3.org/2000/svg'%3E %3Cpath d='M1 8.36225H16M16 8.36225L8.5 15M16 8.36225L8.5 1.7245' stroke='%238A8A8A' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E %3C/svg%3E");
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
    transition: all 0.3s ease;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.c-archive01__item-meta {
    display: flex;
    flex-wrap: wrap;
}

.c-archive01__item-date {
    color: #3C89B7;
    font-size: 1.3rem;
    margin: 0 10px 0 0;
    padding: 5px 0;
    font-weight: 700;
}

.c-archive01__item-head {
    overflow: hidden;
    display: -webkit-box;
    max-height: 4.5em;
    line-height: 1.5;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    text-overflow: ellipsis;
    font-size: 1.6rem;
    font-weight: 700;
    letter-spacing: var(--letter-spacing_snug);
    margin-top: 3px;
}

@media all and (min-width: 768px) {
    .c-archive01__item {
        padding-bottom: 44px;
    }

    .c-archive01__item+.c-archive01__item {
        margin-top: 40px;
    }

    .c-archive01__item-in {
        display: flex;
        flex-wrap: wrap;
        padding: 0 84px 0 0;
    }

    .c-archive01__item-ico {
        right: 35px;
    }

    .c-archive01__item-meta {
        margin-right: 30px;
    }

    .c-archive01__item-date {
        font-size: 1.6rem;
    }

    .c-archive01__item-head {
        flex: 1;
        font-size: 1.6rem;
        margin-top: 0;
        max-height: 3em;
        -webkit-line-clamp: 2;
    }
}

@media (hover: hover) and (pointer: fine) {
    .c-archive01__item-in:hover {
        color: rgb(var(--color-primary-400));
        transform: translateX(10px);
    }

    .c-archive01__item-in:hover .c-archive01__item-ico {
        color: rgb(var(--color-primary-400));
    }

    .c-archive01__item-in:hover .c-archive01__item-ico::after {
        -webkit-animation: icoMove 0.6s ease-in-out;
        animation: icoMove 0.6s ease-in-out;
    }
}

/* .c-archive02
================================================== */
.c-archive02__item {
    box-sizing: border-box;
    pointer-events: none;
}

.c-archive02__item:last-child .c-archive02__in::before {
    border-width: 0 1px;
}

.c-archive02__in {
    box-sizing: border-box;
    padding: 20px;
    display: block;
    margin: 5px 0 30px;
    position: relative;
    pointer-events: auto;
    transition: all 0.3s ease;
}

.c-archive02__in::before {
    content: "";
    box-sizing: border-box;
    border-style: solid;
    border-color: rgba(var(--color-grayscale-500));
    border-width: 0 0 0 1px;
    position: absolute;
    top: 20px;
    left: 0;
    bottom: 20px;
    width: 100%;
}

.c-archive02__img {
    border-radius: 3px;
    overflow: hidden;
    position: relative;
}

.c-archive02__img::before {
    content: "";
    display: block;
    padding-top: 56.3909774436%;
}

.c-archive02__img img {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}

.c-archive02__area-txt {
    box-sizing: border-box;
    margin-top: 15px;
    padding-right: 28px;
    position: relative;
}

.c-archive02__head {
    font-size: 1.6rem;
    font-weight: var(--font-weight_bold);
    line-height: var(--line-height_snug);
    letter-spacing: var(--letter-spacing_snug);
    transition: color 0.3s ease;
}

.c-archive02__sub {
    color: rgb(var(--color-grayscale-800));
    font-size: 1.3rem;
    line-height: var(--line-height_snug);
    letter-spacing: var(--letter-spacing_snug);
    margin-top: 5px;
    transition: color 0.3s ease;
}

.c-archive02__ico {
    color: rgb(var(--color-grayscale-800));
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 16px;
}

.c-archive02__ico::after {
    content: "";
    display: inline-block;
    width: 16px;
    height: 12px;
    background-color: #3C89B7;
    color: #3C89B7;
    -webkit-mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 12"><path d="M9.53 0 8.21 1.32l4.06 3.76H0v1.84h12.26L8.2 10.68 9.52 12l6.47-6-6.46-6Z"/></svg>');
    mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 12"><path d="M9.53 0 8.21 1.32l4.06 3.76H0v1.84h12.26L8.2 10.68 9.52 12l6.47-6-6.46-6Z"/></svg>');
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
    transition: all 0.3s ease;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

@media all and (min-width: 768px) {
    .c-archive02__in {
        padding: 35px 33px;
    }

    .c-archive02__in::before {
        top: 35px;
        bottom: 35px;
    }

    .c-archive02__img {
        border-radius: 5px;
    }

    .c-archive02__area-txt {
        margin-top: 20px;
        padding-right: 26px;
    }

    .c-archive02__head {
        font-size: 2.1rem;
    }

    .c-archive02__sub {
        font-size: 1.5rem;
    }
}

@media (hover: hover) and (pointer: fine) {
    .c-archive02__item.has-detail:hover+.c-archive02__item .c-archive02__in::before {
        border-color: transparent;
    }

    .c-archive02__item.has-detail .c-archive02__in:hover {
        box-shadow: 0 15px 30px rgba(var(--color-grayscale-900), 0.12);
        background: rgb(var(--color-grayscale-200));
        transform: translateY(-5px);
    }

    .c-archive02__item.has-detail .c-archive02__in:hover::before {
        border-color: transparent;
    }

    .c-archive02__item.has-detail .c-archive02__in:hover .c-archive02__ico,
    .c-archive02__item.has-detail .c-archive02__in:hover .c-archive02__head,
    .c-archive02__item.has-detail .c-archive02__in:hover .c-archive02__sub {
        color: rgb(var(--color-primary-400));
    }

    .c-archive02__item.has-detail .c-archive02__in:hover .c-archive02__ico::after {
        -webkit-animation: icoMove 0.6s ease-in-out;
        animation: icoMove 0.6s ease-in-out;
    }
}

/* .c-archive03
================================================== */
.c-archive03 .splide__slide img {
    border-radius: 5px;
}

.c-archive03 .splide__pagination {
    margin-top: 20px;
}

.c-archive03 .splide__pagination li+li {
    margin-left: 10px;
}

.c-archive03 .splide__pagination button {
    display: inline-block;
    width: 10px;
    height: 10px;
    border-radius: 50%;
    border: none;
    padding: 0;
    background: rgb(var(--color-grayscale-500));
}

.c-archive03 .splide__pagination button.is-active {
    background: rgb(var(--color-primary-500));
}

.c-archive03__item {
    background: #fff;
    padding: 30px 20px;
}

.c-archive03__item+.c-archive03__item {
    margin-top: 15px;
}

.c-archive03__item-meta {
    overflow-x: auto;
    display: flex;
    align-items: center;
    white-space: nowrap;
}

.c-archive03__item-meta::-webkit-scrollbar {
    display: none;
}

.c-archive03__item-meta-txt {
    display: inline-block;
    font-size: 1.3rem;
}

.c-archive03__item-cats {
    display: flex;
    align-items: center;
}

.c-archive03__item-cat {
    border: 1px solid rgb(var(--color-primary-500));
    border-radius: 5px;
    padding: 3px 10px;
    font-size: 1.2rem;
    font-weight: var(--font-weight_bold);
    color: rgb(var(--color-primary-500));
    line-height: var(--line-height_snug);
}

.c-archive03__item-cat+.c-archive03__item-cat {
    margin-left: 1em;
}

.c-archive03__item-head {
    font-size: 1.8rem;
    font-weight: var(--font-weight_bold);
    line-height: var(--line-height_snug);
    border-bottom: 1px solid rgb(var(--color-grayscale-500));
    padding-bottom: 10px;
    margin-top: 5px;
}

.c-archive03__item-info {
    text-align: right;
    margin-top: 5px;
    font-size: 1.3rem;
    color: rgb(var(--color-grayscale-800));
}

.c-archive03__item-textarea {
    margin-top: 20px;
}

.c-archive03__item-txt {
    padding-bottom: 20px;
    border-bottom: 1px solid rgb(var(--color-grayscale-500));
}

.c-archive03__item-look {
    margin-top: 20px;
}

.c-archive03__item-link {
    margin-top: 10px;
}

.c-archive03__item-link-ico {
    display: inline-block;
    width: 16px;
    margin-left: 9px;
    position: relative;
    vertical-align: middle;
}

.c-archive03__item-link-ico::before {
    content: "";
    display: inline-block;
    width: 16px;
    height: 12px;
    background-color: #3C89B7;
    color: #3C89B7;
    -webkit-mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 12"><path d="M9.53 0 8.21 1.32l4.06 3.76H0v1.84h12.26L8.2 10.68 9.52 12l6.47-6-6.46-6Z"/></svg>');
    mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 12"><path d="M9.53 0 8.21 1.32l4.06 3.76H0v1.84h12.26L8.2 10.68 9.52 12l6.47-6-6.46-6Z"/></svg>');
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
    transition: all 0.3s ease;
    width: 16px;
    color: rgb(var(--color-primary-500));
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

@media all and (min-width: 768px) {
    .c-archive03__item {
        padding: 40px;
    }

    .c-archive03__item+.c-archive03__item {
        margin-top: 40px;
    }

    .c-archive03__item-cats {
        margin-left: 10px;
    }

    .c-archive03__item-cat {
        font-size: 1.3rem;
    }

    .c-archive03__item-head {
        margin-top: 10px;
        font-size: 2.3rem;
        padding-bottom: 10px;
    }

    .c-archive03__item-info {
        margin-top: 10px;
    }

    .c-archive03__item-set {
        display: flex;
        align-items: flex-start;
    }

    .c-archive03__item-slider {
        flex-shrink: 0;
        max-width: 530px;
        margin-right: 40px;
    }

    .c-archive03__item-textarea {
        flex: 1;
        margin-top: 0;
    }

    .c-archive03__item-txt {
        padding-bottom: 30px;
    }

    .c-archive03__item-look {
        margin-top: 30px;
    }

    .c-archive03__item-link {
        transition: all 0.3s ease;
    }

    .c-archive03__item-link-ico {
        transition: all 0.3s ease;
    }
}

@media (hover: hover) and (pointer: fine) {
    .c-archive03__item-link:hover {
        color: rgb(var(--color-primary-400));
    }

    .c-archive03__item-link:hover .c-archive03__item-link-ico {
        color: rgb(var(--color-primary-400));
    }

    .c-archive03__item-link:hover .c-archive03__item-link-ico::before {
        -webkit-animation: icoMove 0.6s ease-in-out;
        animation: icoMove 0.6s ease-in-out;
    }
}

/* .c-archive04
================================================== */
.c-archive04 {
    display: grid;
    grid-template-columns: 1fr;
    gap: 30px;
}

@media all and (min-width: 768px) {
    .c-archive04 {
        grid-template-columns: repeat(3, 1fr);
        gap: 50px 39px;
    }
}

.c-archive04__item {
    position: relative;
}

.c-archive04__item-in:is(span) .c-archive04__item-ico {
    display: none;
}

.c-archive04__item-cats {
    display: flex;
    flex-wrap: wrap;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
}

.c-archive04__item-cat {
    padding: 2px 10px;
    font-size: 1.2rem;
    font-weight: var(--font-weight_bold);
    letter-spacing: var(--letter-spacing_snug);
    line-height: var(--line-height_snug);
    color: #fff;
    opacity: 0.8;
    background: rgb(var(--color-category01-500));
}

.c-archive04__item-cat:first-of-type {
    border-top-left-radius: 5px;
}

.c-archive04__item-cat.is-pink {
    background: rgb(var(--color-category02-500));
}

.c-archive04__item-cat.is-green {
    background: rgb(var(--color-category03-500));
}

.c-archive04__item-img {
    border-radius: 5px;
}

.c-archive04__item-img img {
    width: 100%;
}

.c-archive04__item-head {
    overflow: hidden;
    display: -webkit-box;
    max-height: 3em;
    line-height: 1.5;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    text-overflow: ellipsis;
    border-bottom: 1px solid rgb(var(--color-grayscale-500));
    font-size: 1.6rem;
    font-weight: var(--font-weight_bold);
    letter-spacing: var(--letter-spacing_snug);
    padding: 15px 30px 15px 0;
    position: relative;
}

.c-archive04__item-ico {
    color: rgb(var(--color-grayscale-800));
    position: absolute;
    top: 50%;
    right: 5px;
    transform: translateY(-50%);
    width: 16px;
}

.c-archive04__item-ico::before {
    content: "";
    display: inline-block;
    width: 16px;
    height: 12px;
    background-color: #3C89B7;
    color: #3C89B7;
    -webkit-mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 12"><path d="M9.53 0 8.21 1.32l4.06 3.76H0v1.84h12.26L8.2 10.68 9.52 12l6.47-6-6.46-6Z"/></svg>');
    mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 12"><path d="M9.53 0 8.21 1.32l4.06 3.76H0v1.84h12.26L8.2 10.68 9.52 12l6.47-6-6.46-6Z"/></svg>');
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
    transition: all 0.3s ease;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    transition: all 0.3s ease;
}

@media all and (min-width: 768px) {
    .c-archive04__item-head {
        font-size: 1.8rem;
        padding: 20px 46px 20px 0;
        position: relative;
        transition: all 0.3s ease;
        max-height: 3em;
        -webkit-line-clamp: 2;
    }

    .c-archive04__item-ico {
        right: 15px;
    }
}

@media (hover: hover) and (pointer: fine) {
    .c-archive04__item-in:is(a):hover .c-archive04__item-head {
        color: rgb(var(--color-primary-400));
    }

    .c-archive04__item-in:is(a):hover .c-archive04__item-ico {
        color: rgb(var(--color-primary-400));
    }

    .c-archive04__item-in:is(a):hover .c-archive04__item-ico::before {
        -webkit-animation: icoMove 0.6s ease-in-out;
        animation: icoMove 0.6s ease-in-out;
    }
}

/* .c-archive05
================================================== */
.c-archive05 {
    display: grid;
    grid-template-columns: 1fr;
    gap: 15px;
}

@media all and (min-width: 768px) {
    .c-archive05 {
        grid-template-columns: 1fr 1fr;
        gap: 40px;
    }
}

.c-archive05__item {
    position: relative;
}

.c-archive05__item-img {
    border-radius: 5px 5px 0 0;
    overflow: hidden;
}

.c-archive05__item-img img {
    width: 100%;
}

.c-archive05__item-cats {
    display: flex;
    flex-wrap: wrap;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
}

.c-archive05__item-cat {
    padding: 2px 10px;
    font-size: 1.2rem;
    font-weight: var(--font-weight_bold);
    letter-spacing: var(--letter-spacing_snug);
    line-height: var(--line-height_snug);
    color: #fff;
    opacity: 0.8;
    background: rgb(var(--color-category01-500));
}

.c-archive05__item-cat:first-of-type {
    border-top-left-radius: 5px;
}

.c-archive05__item-cat.is-pink {
    background: rgb(var(--color-category02-500));
}

.c-archive05__item-cat.is-green {
    background: rgb(var(--color-category03-500));
}

.c-archive05__item-textarea {
    padding: 30px 20px;
    background: #fff;
}

.c-archive05__item-head {
    font-size: 1.8rem;
    font-weight: var(--font-weight_bold);
    line-height: 1.5;
    letter-spacing: var(--letter-spacing_snug);
    padding-bottom: 12px;
    border-bottom: 1px solid rgb(var(--color-grayscale-500));
}

.c-archive05__item-txt {
    margin-top: 12px;
}

.c-archive05__item-more {
    margin-top: 15px;
    text-align: right;
    font-size: 1.5rem;
    line-height: var(--line-height_snug);
    letter-spacing: var(--letter-spacing_snug);
    font-weight: var(--font-weight_bold);
    position: relative;
    padding-right: 25px;
}

.c-archive05__item-ico {
    color: rgb(var(--color-primary-500));
    position: absolute;
    top: 50%;
    right: 5px;
    transform: translateY(-50%);
    width: 16px;
}

.c-archive05__item-ico::before {
    content: "";
    display: inline-block;
    width: 16px;
    height: 12px;
    background-color: #3C89B7;
    color: #3C89B7;
    -webkit-mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 12"><path d="M9.53 0 8.21 1.32l4.06 3.76H0v1.84h12.26L8.2 10.68 9.52 12l6.47-6-6.46-6Z"/></svg>');
    mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 12"><path d="M9.53 0 8.21 1.32l4.06 3.76H0v1.84h12.26L8.2 10.68 9.52 12l6.47-6-6.46-6Z"/></svg>');
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
    transition: all 0.3s ease;
    display: inline-block;
    margin-left: 9px;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

@media all and (min-width: 768px) {
    .c-archive05__item-in {
        display: flex !important;
        flex-direction: column;
        height: 100%;
    }

    .c-archive05__item-cat {
        font-size: 1.5rem;
        opacity: 0.8;
    }

    .c-archive05__item-textarea {
        padding: 40px;
        box-sizing: border-box;
        display: flex;
        flex-direction: column;
        flex: 1;
    }

    .c-archive05__item-head {
        transition: all 0.3s ease;
        font-size: 2.3rem;
        padding-bottom: 15px;
    }

    .c-archive05__item-txt {
        transition: all 0.3s ease;
        margin-top: 15px;
        min-height: 198px;
    }

    .c-archive05__item-more {
        transition: all 0.3s ease;
        margin-top: 60px;
        padding-right: 25px;
    }
}

@media (hover: hover) and (pointer: fine) {
    .c-archive05__item-in:is(a):hover .c-archive05__item-head {
        color: rgb(var(--color-primary-400));
    }

    .c-archive05__item-in:is(a):hover .c-archive05__item-txt {
        color: rgb(var(--color-primary-400));
    }

    .c-archive05__item-in:is(a):hover .c-archive05__item-more {
        color: rgb(var(--color-primary-400));
    }

    .c-archive05__item-in:is(a):hover .c-archive05__item-ico {
        color: rgb(var(--color-primary-400));
    }

    .c-archive05__item-in:is(a):hover .c-archive05__item-ico::before {
        -webkit-animation: icoMove 0.6s ease-in-out;
        animation: icoMove 0.6s ease-in-out;
    }
}

/* .c-bg-texture01
================================================== */
.c-bg-texture01 {
    background: #F7F7F7;
}

/* .c-bg-texture02
================================================== */
.c-bg-texture02 {
    background: #F7F7F7;
}

/* .c-btn01
================================================== */
.c-btn01 {
    margin: 30px 0 0 auto;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    max-width: 100%;
}

.c-btn01__in {
    display: flex;
    align-items: center;
    font-size: 1.6rem;
    font-weight: var(--font-weight_bold);
    line-height: var(--line_height_snug);
    transition: color 0.3s ease;
    color: #8A8A8A;
}

.c-btn01__in[target] .c-btn01__ico::after {
    content: "";
    display: inline-block;
    width: 18px;
    height: 18px;
    background-color: #3C89B7;
    color: #3C89B7;
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg width='17' height='17' viewBox='0 0 17 17' fill='none' xmlns='http://www.w3.org/2000/svg'%3E %3Cpath d='M1 8.5H16M16 8.5L8.5 16M16 8.5L8.5 1' stroke='%238A8A8A' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E %3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg width='17' height='17' viewBox='0 0 17 17' fill='none' xmlns='http://www.w3.org/2000/svg'%3E %3Cpath d='M1 8.5H16M16 8.5L8.5 16M16 8.5L8.5 1' stroke='%238A8A8A' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E %3C/svg%3E");
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
    transition: all 0.3s ease;
}

.c-btn01__ico {
    background: rgba(var(--color-primary-200));
    border-radius: 50%;
    color: rgb(var(--color-primary-500));
    display: block;
    margin-left: 10px;
    height: 44px;
    width: 44px;
    position: relative;
    transition: all 0.3s ease;
}

.c-btn01__ico::after {
    content: "";
    display: inline-block;
    width: 16px;
    height: 16px;
    background-color: #3C89B7;
    color: #3C89B7;
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg width='17' height='17' viewBox='0 0 17 17' fill='none' xmlns='http://www.w3.org/2000/svg'%3E %3Cpath d='M1 8.5H16M16 8.5L8.5 16M16 8.5L8.5 1' stroke='%238A8A8A' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E %3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg width='17' height='17' viewBox='0 0 17 17' fill='none' xmlns='http://www.w3.org/2000/svg'%3E %3Cpath d='M1 8.5H16M16 8.5L8.5 16M16 8.5L8.5 1' stroke='%238A8A8A' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E %3C/svg%3E");
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
    transition: all 0.3s ease;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    transition: none;
}

@media all and (min-width: 768px) {
    .c-btn01 {
        margin: 40px 0 0 auto;
    }

    .c-btn01__in {
        font-size: 1.8rem;
    }

    .c-btn01__ico {
        margin-left: 15px;
        height: 67px;
        width: 67px;
    }
}

@media (hover: hover) and (pointer: fine) {
    .c-btn01__in:hover {
        color: rgb(var(--color-primary-400));
    }

    .c-btn01__in:hover .c-btn01__ico {
        background: rgb(var(--color-primary-400));
        color: rgb(var(--color-grayscale-200));
    }

    .c-btn01__in:hover .c-btn01__ico::after {
        -webkit-animation: icoMove 0.6s ease-in-out;
        animation: icoMove 0.6s ease-in-out;
    }
}

/* .c-btn02
================================================== */
.c-btn02 {
    margin: 0 auto;
    width: 295px;
    max-width: 100%;
}

.c-btn02__in {
    box-sizing: border-box;
    background: rgb(var(--color-primary-500));
    border-radius: 50px;
    color: rgb(var(--color-grayscale-200));
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.5rem;
    font-weight: var(--font-weight_bold);
    line-height: var(--line-height_snug);
    letter-spacing: var(--letter-spacing_snug);
    margin: 0 auto;
    text-align: left;
    min-height: 48px;
    padding: 8px 25px;
    position: relative;
    transition: all 0.3s ease;
}

.c-btn02__ico {
    display: block;
    flex-shrink: 0;
    margin-right: 7px;
    height: 20px;
    width: 20px;
}

@media all and (min-width: 768px) {
    .c-btn02__in {
        font-size: 1.6rem;
    }
}

@media (hover: hover) and (pointer: fine) {
    .c-btn02__in:hover {
        background: rgb(var(--color-primary-400));
    }
}

/* .c-btn02.is-white
================================================== */
.c-btn02.is-white .c-btn02__in {
    border: 2px solid rgb(var(--color-grayscale-800));
    background: rgb(var(--color-grayscale-200));
    color: rgb(var(--color-grayscale-900));
}

@media (hover: hover) and (pointer: fine) {
    .c-btn02.is-white .c-btn02__in:hover {
        border-color: rgb(var(--color-primary-400));
        background: rgb(var(--color-primary-400));
        color: rgb(var(--color-grayscale-200));
    }

    .c-btn02.is-white .c-btn02__in:hover .c-btn02__ico {
        color: rgb(var(--color-grayscale-200));
    }
}

/* .c-btn02.is-fit-pc
================================================== */
.c-btn02.is-fit-pc {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
}

@media all and (max-width: 767px) {
    .c-btn02-list .c-btn02+.c-btn02 {
        margin-top: 10px;
    }
}

@media all and (min-width: 768px) {
    .c-btn02-list {
        display: flex;
        flex-wrap: wrap;
    }

    .c-btn02-list .c-btn02 {
        margin: 0;
    }

    .c-btn02-list .c-btn02+.c-btn02 {
        margin: 0 0 0 10px;
    }
}

/* .c-card01
================================================== */
.c-card01 {
    display: grid;
    grid-template-columns: repeat(auto-fit, 130px);
    gap: 20px 15px;
    justify-content: center;
}

.c-card01__in {
    display: block;
}

.c-card01__img {
    border-radius: 5px;
    overflow: hidden;
    position: relative;
}

.c-card01__img::before {
    content: "";
    display: block;
    padding-top: 56.25%;
}

.c-card01__img img {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}

.c-card01__head {
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.5rem;
    font-weight: var(--font-weight_bold);
    line-height: var(--line-height_snug);
    letter-spacing: var(--letter-spacing_snug);
    margin-top: 9px;
    transition: all 0.3s ease;
}

.c-card01__head-ico {
    color: rgb(var(--color-primary-500));
    flex-shrink: 0;
    margin-left: 9px;
    height: 12px;
    width: 16px;
    position: relative;
}

.c-card01__head-ico::after {
    content: "";
    display: inline-block;
    width: 16px;
    height: 12px;
    background-color: #3C89B7;
    color: #3C89B7;
    -webkit-mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 12"><path d="M9.53 0 8.21 1.32l4.06 3.76H0v1.84h12.26L8.2 10.68 9.52 12l6.47-6-6.46-6Z"/></svg>');
    mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 12"><path d="M9.53 0 8.21 1.32l4.06 3.76H0v1.84h12.26L8.2 10.68 9.52 12l6.47-6-6.46-6Z"/></svg>');
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
    transition: all 0.3s ease;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

@media all and (min-width: 768px) {
    .c-card01 {
        grid-template-columns: repeat(auto-fit, 240px);
        gap: 25px 18px;
    }

    .c-card01__head {
        font-size: 1.6rem;
        margin-top: 15px;
    }
}

@media (hover: hover) and (pointer: fine) {
    .c-card01__in:hover .c-card01__head {
        color: rgb(var(--color-primary-400));
    }

    .c-card01__in:hover .c-card01__head-ico {
        color: rgb(var(--color-primary-400));
    }

    .c-card01__in:hover .c-card01__head-ico::after {
        -webkit-animation: icoMove 0.6s ease-in-out;
        animation: icoMove 0.6s ease-in-out;
    }
}

/* .c-color-black
================================================== */
.c-color-black {
    color: rgb(var(--black));
}

/* .c-color-blue
================================================== */
.c-color-blue {
    color: blue;
}

/* .c-cv01
================================================== */
.c-cv01__area-head {
    box-sizing: border-box;
    background: rgb(var(--color-grayscale-200));
    border-style: solid;
    border-color: rgba(var(--color-grayscale-500));
    border-width: 1px 1px 0;
    border-radius: 70px 0 0 0;
    padding: 50px 40px;
}

.c-cv01__lead {
    font-size: 1.3rem;
    text-align: center;
    color: #8A8A8A;
    font-weight: var(--font-weight_bold);
}

.c-cv01-btn {
    background: rgb(var(--color-grayscale-200));
    border-style: solid;
    border-color: rgba(var(--color-grayscale-500));
    border-width: 1px 0;
}

.c-cv01-btn+.c-cv01-btn {
    border-width: 0 0 1px;
}

.c-cv01-btn.is-tel .c-cv01-btn__ico {
    content: "";
    display: inline-block;
    width: 30px;
    height: 30px;
    background-color: #1E1E1E;
    color: #1E1E1E;
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg width='30' height='31' viewBox='0 0 30 31' fill='none' xmlns='http://www.w3.org/2000/svg'%3E %3Cg clip-path='url(%23clip0_6_106)'%3E %3Cpath d='M18.8125 6.75C20.0334 6.98821 21.1555 7.58532 22.0351 8.46492C22.9147 9.34452 23.5118 10.4666 23.75 11.6875M18.8125 1.75C21.3491 2.0318 23.7145 3.16772 25.5203 4.97126C27.3261 6.7748 28.465 9.13876 28.75 11.675M27.5 21.65V25.4C27.5014 25.7481 27.4301 26.0927 27.2906 26.4117C27.1511 26.7307 26.9466 27.017 26.6901 27.2523C26.4335 27.4877 26.1307 27.6669 25.8009 27.7784C25.4711 27.8899 25.1217 27.9313 24.775 27.9C20.9285 27.4821 17.2337 26.1677 13.9875 24.0625C10.9673 22.1433 8.40665 19.5827 6.48748 16.5625C4.37495 13.3015 3.06028 9.58874 2.64998 5.725C2.61874 5.37933 2.65982 5.03095 2.7706 4.70203C2.88138 4.37311 3.05944 4.07086 3.29343 3.81453C3.52743 3.55819 3.81223 3.35339 4.12972 3.21315C4.4472 3.07292 4.7904 3.00033 5.13748 3H8.88748C9.49411 2.99403 10.0822 3.20885 10.5422 3.60442C11.0021 3.99998 11.3026 4.54931 11.3875 5.15C11.5458 6.35008 11.8393 7.52841 12.2625 8.6625C12.4307 9.1099 12.4671 9.59614 12.3674 10.0636C12.2677 10.5311 12.0361 10.9601 11.7 11.3L10.1125 12.8875C11.8919 16.0169 14.483 18.6081 17.6125 20.3875L19.2 18.8C19.5398 18.4639 19.9689 18.2323 20.4364 18.1326C20.9038 18.0329 21.3901 18.0693 21.8375 18.2375C22.9716 18.6607 24.1499 18.9542 25.35 19.1125C25.9572 19.1982 26.5117 19.504 26.9081 19.9719C27.3046 20.4397 27.5152 21.037 27.5 21.65Z' stroke='%231E1E1E' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E %3C/g%3E %3Cdefs%3E %3CclipPath id='clip0_6_106'%3E %3Crect width='30' height='30' fill='white' transform='translate(0 0.5)'/%3E %3C/clipPath%3E %3C/defs%3E %3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg width='30' height='31' viewBox='0 0 30 31' fill='none' xmlns='http://www.w3.org/2000/svg'%3E %3Cg clip-path='url(%23clip0_6_106)'%3E %3Cpath d='M18.8125 6.75C20.0334 6.98821 21.1555 7.58532 22.0351 8.46492C22.9147 9.34452 23.5118 10.4666 23.75 11.6875M18.8125 1.75C21.3491 2.0318 23.7145 3.16772 25.5203 4.97126C27.3261 6.7748 28.465 9.13876 28.75 11.675M27.5 21.65V25.4C27.5014 25.7481 27.4301 26.0927 27.2906 26.4117C27.1511 26.7307 26.9466 27.017 26.6901 27.2523C26.4335 27.4877 26.1307 27.6669 25.8009 27.7784C25.4711 27.8899 25.1217 27.9313 24.775 27.9C20.9285 27.4821 17.2337 26.1677 13.9875 24.0625C10.9673 22.1433 8.40665 19.5827 6.48748 16.5625C4.37495 13.3015 3.06028 9.58874 2.64998 5.725C2.61874 5.37933 2.65982 5.03095 2.7706 4.70203C2.88138 4.37311 3.05944 4.07086 3.29343 3.81453C3.52743 3.55819 3.81223 3.35339 4.12972 3.21315C4.4472 3.07292 4.7904 3.00033 5.13748 3H8.88748C9.49411 2.99403 10.0822 3.20885 10.5422 3.60442C11.0021 3.99998 11.3026 4.54931 11.3875 5.15C11.5458 6.35008 11.8393 7.52841 12.2625 8.6625C12.4307 9.1099 12.4671 9.59614 12.3674 10.0636C12.2677 10.5311 12.0361 10.9601 11.7 11.3L10.1125 12.8875C11.8919 16.0169 14.483 18.6081 17.6125 20.3875L19.2 18.8C19.5398 18.4639 19.9689 18.2323 20.4364 18.1326C20.9038 18.0329 21.3901 18.0693 21.8375 18.2375C22.9716 18.6607 24.1499 18.9542 25.35 19.1125C25.9572 19.1982 26.5117 19.504 26.9081 19.9719C27.3046 20.4397 27.5152 21.037 27.5 21.65Z' stroke='%231E1E1E' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E %3C/g%3E %3Cdefs%3E %3CclipPath id='clip0_6_106'%3E %3Crect width='30' height='30' fill='white' transform='translate(0 0.5)'/%3E %3C/clipPath%3E %3C/defs%3E %3C/svg%3E");
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
    transition: all 0.3s ease;
    margin-bottom: 14px;
    transition: none;
}

.c-cv01-btn.is-contact .c-cv01-btn__ico {
    content: "";
    display: inline-block;
    width: 30px;
    height: 30px;
    background-color: #1E1E1E;
    color: #1E1E1E;
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg width='31' height='31' viewBox='0 0 31 31' fill='none' xmlns='http://www.w3.org/2000/svg'%3E %3Cpath d='M28 8C28 6.625 26.875 5.5 25.5 5.5H5.5C4.125 5.5 3 6.625 3 8M28 8V23C28 24.375 26.875 25.5 25.5 25.5H5.5C4.125 25.5 3 24.375 3 23V8M28 8L15.5 16.75L3 8' stroke='%231E1E1E' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E %3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg width='31' height='31' viewBox='0 0 31 31' fill='none' xmlns='http://www.w3.org/2000/svg'%3E %3Cpath d='M28 8C28 6.625 26.875 5.5 25.5 5.5H5.5C4.125 5.5 3 6.625 3 8M28 8V23C28 24.375 26.875 25.5 25.5 25.5H5.5C4.125 25.5 3 24.375 3 23V8M28 8L15.5 16.75L3 8' stroke='%231E1E1E' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E %3C/svg%3E");
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
    transition: all 0.3s ease;
    margin-bottom: 10px;
    transition: none;
}

.c-cv01-btn__in {
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 30px 20px 40px;
    transition: all 0.3s ease;
}

.c-cv01-btn__ico {
    margin: 0 auto;
}

.c-cv01-btn__num {
    font-size: 3.1rem;
}

.c-cv01-btn__head {
    font-size: 2rem;
    font-weight: var(--font-weight_bold);
    line-height: var(--line-height_snug);
    letter-spacing: var(--letter-spacing_snug);
}

.c-cv01-btn__note {
    color: rgb(var(--color-grayscale-800));
    font-size: 1.3rem;
    font-weight: var(--font-weight_bold);
    line-height: var(--line-height_snug);
    letter-spacing: var(--letter-spacing_snug);
    margin-top: 6px;
}

.c-cv01-btn__arw {
    box-sizing: border-box;
    background: rgb(var(--color-primary-500));
    border-radius: 50px;
    color: rgb(var(--color-grayscale-200));
    display: flex;
    align-items: center;
    justify-content: center;
    height: 48px;
    width: 320px;
    max-width: 100%;
    margin: 20px auto 0;
    padding: 8px 40px;
    position: relative;
    transition: all 0.3s ease;
}

.c-cv01-btn__arw::after {
    content: "";
    display: inline-block;
    width: 16px;
    height: 16px;
    background-color: #fff;
    color: #fff;
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg width='17' height='17' viewBox='0 0 17 17' fill='none' xmlns='http://www.w3.org/2000/svg'%3E %3Cpath d='M1 8.5H16M16 8.5L8.5 16M16 8.5L8.5 1' stroke='%238A8A8A' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E %3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg width='17' height='17' viewBox='0 0 17 17' fill='none' xmlns='http://www.w3.org/2000/svg'%3E %3Cpath d='M1 8.5H16M16 8.5L8.5 16M16 8.5L8.5 1' stroke='%238A8A8A' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E %3C/svg%3E");
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
    transition: all 0.3s ease;
    position: absolute;
    top: 50%;
    right: 19px;
    transform: translateY(-50%);
}

.c-cv01-btn__arw-txt {
    font-weight: var(--font-weight_bold);
    line-height: var(--line-height_snug);
    letter-spacing: var(--letter-spacing_snug);
}

@media all and (max-width: 374px) {
    .c-cv01-btn__arw {
        padding-left: 30px;
    }
}

@media all and (min-width: 768px) {
    .c-cv01 {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
    }

    .c-cv01__area-head {
        display: flex;
        justify-content: center;
        border-width: 1px;
        border-radius: 160px 0 0 0;
        padding: 142px 40px 140px;
    }

    .c-cv01__lead {
        font-size: 1.6rem;
        text-align: left;
    }

    .c-cv01-btn {
        border-style: solid;
        border-color: rgba(var(--color-grayscale-500));
        border-width: 1px 1px 1px 0;
    }

    .c-cv01-btn+.c-cv01-btn {
        border-width: 1px 1px 1px 0;
    }

    .c-cv01-btn.is-tel .c-cv01-btn__in {
        pointer-events: none;
    }

    .c-cv01-btn.is-tel .c-cv01-btn__ico {
        margin-bottom: 26px;
    }

    .c-cv01-btn.is-contact .c-cv01-btn__ico {
        margin-bottom: 26px;
    }

    .c-cv01-btn__in {
        height: 100%;
        padding: 134px 40px 80px;
    }

    .c-cv01-btn__ico {
        height: 34px;
        width: 34px;
    }

    .c-cv01-btn__num {
        font-size: 4.6rem;
    }

    .c-cv01-btn__head {
        font-size: 2.4rem;
    }

    .c-cv01-btn__note {
        font-size: 1.6rem;
        margin-top: 9px;
    }

    .c-cv01-btn__arw {
        border-radius: 50%;
        height: 67px;
        width: 67px;
        margin: 30px auto 0;
        padding: 0;
    }

    .c-cv01-btn__arw::after {
        left: 50%;
        right: auto;
        transform: translate(-50%, -50%);
    }
}

@media all and (min-width: 1560px) {
    .c-cv01__lead {
        font-size: 1.6rem;
    }
}

@media (hover: hover) and (pointer: fine) {
    .c-cv01-btn__in:hover {
        background: rgb(var(--color-primary-200));
        color: rgb(var(--color-primary-400));
    }

    .c-cv01-btn__in:hover .c-cv01-btn__note {
        color: rgb(var(--color-primary-400));
    }

    .c-cv01-btn__in:hover .c-cv01-btn__arw {
        background: rgb(var(--color-primary-400));
    }

    .c-cv01-btn__in:hover .c-cv01-btn__arw::after {
        -webkit-animation: icoMove 0.6s ease-in-out;
        animation: icoMove 0.6s ease-in-out;
    }
}

/* .c-faq01
================================================== */
.c-faq01+.c-faq01 {
    margin-top: 30px;
}

.c-faq01__ico {
    color: rgb(var(--color-primary-500));
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    font-size: 1.4rem;
    width: 15px;
    height: 15px;
    position: absolute;
    top: 14px;
    left: 14px;
    text-align: center;
}

.c-faq01__head {
    box-sizing: border-box;
    background: rgba(var(--color-primary-200));
    border-radius: 5px 5px 0 0;
    border-bottom: 3px solid rgb(var(--color-primary-500));
    font-size: 1.5rem;
    font-weight: var(--font-weight_bold);
    line-height: var(--line-height_snug);
    letter-spacing: var(--letter-spacing_snug);
    padding: 10px 14px 10px 37px;
    position: relative;
}

.c-faq01__head[class*=toggle] {
    padding-right: 26px;
    cursor: pointer;
}

.c-faq01__head[class*=toggle]::before,
.c-faq01__head[class*=toggle]::after {
    position: absolute;
    top: 50%;
    right: 7px;
    content: "";
    display: block;
    width: 11px;
    height: 1px;
    margin-top: -1px;
    background: rgb(var(--color-grayscale-800));
    transition: all 0.3s ease;
}

.c-faq01__head[class*=toggle]::before {
    transform: rotate(-90deg);
}

.c-faq01__head[class*=toggle].is-active::before {
    transform: rotate(0);
}

.download .c-faq01__head[class*=toggle]::before,
.download .c-faq01__head[class*=toggle]::after,
.download .c-faq01__head[class*=toggle]::before,
.download .c-faq01__head[class*=toggle]::after {
    display: none;
}

.download .c-faq01__head {
    padding-left: 20px;
    padding-right: 20px;
}

.c-faq01__content {
    box-sizing: border-box;
    border: 1px solid rgba(var(--color-grayscale-500));
    border-radius: 0 0 5px 5px;
    position: relative;
    padding: 20px 14px;
}

.c-faq01__detail {
    box-sizing: border-box;
    position: relative;
    padding-left: 23px;
}

.c-faq01__detail .c-faq01__ico {
    top: 8px;
    left: 0;
}

.c-faq01__link {
    margin-top: 20px;
}

@media all and (min-width: 768px) {
    .c-faq01__ico {
        font-size: 2.4rem;
        width: 26px;
        height: 26px;
        top: 22px;
        left: 20px;
    }

    .c-faq01__head {
        border-radius: 5px 5px 0 0;
        font-size: 2.1rem;
        padding: 20px 20px 20px 61px;
    }

    .c-faq01__head[class*=toggle] {
        padding-right: 57px;
    }

    .c-faq01__head[class*=toggle]::before,
    .c-faq01__head[class*=toggle]::after {
        right: 20px;
        width: 22px;
        height: 2px;
    }

    .c-faq01__content {
        padding: 40px;
    }

    .c-faq01__detail {
        padding-left: 36px;
    }

    .c-faq01__detail .c-faq01__ico {
        top: 3px;
    }

    .c-faq01__link {
        margin-top: 40px;
    }
}

/* .c-form-agreement
================================================== */
.c-form-agreement {
    border-top: 1px solid rgba(var(--color-grayscale-500));
    margin-top: 35px;
    text-align: center;
    margin-top: 15px;
    padding-top: 20px;
}

.c-form-agreement__txt {
    font-size: 1.5rem;
}

.c-form-agreement .mwform-checkbox-field {
    margin: 20px auto 0;
    text-align: center;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
}

@media all and (min-width: 768px) {
    .c-form-agreement {
        margin-top: 50px;
        padding-top: 40px;
    }

    .c-form-agreement__txt {
        font-size: 1.6rem;
    }

    .c-form-agreement .mwform-checkbox-field {
        margin-top: 30px;
    }
}

/* 確認画面
================================================ */
.mw_wp_form_confirm .c-form-agreement {
    display: none;
}

/* .c-form.is-calc
================================================== */
.c-form.is-calc table {
    box-sizing: border-box;
    background: rgb(var(--color-grayscale-200));
    border: 1px solid rgb(var(--color-grayscale-500));
    border-radius: 3px;
    margin-bottom: 30px;
    padding: 25px 20px 40px;
}

.c-form.is-calc table,
.c-form.is-calc thead,
.c-form.is-calc tbody,
.c-form.is-calc tr,
.c-form.is-calc th,
.c-form.is-calc td {
    display: block;
}

.c-form.is-calc th,
.c-form.is-calc td {
    box-sizing: border-box;
    padding: 15px 0;
}

.c-form.is-calc th {
    padding-left: 16px;
    font-size: 1.6rem;
    font-weight: var(--font-weight_bold);
    line-height: var(--line-height_snug);
    letter-spacing: var(--letter-spacing_snug);
    position: relative;
    text-align: left;
}

.c-form.is-calc th::before {
    content: "";
    background: rgb(var(--color-primary-500));
    border-radius: 50%;
    height: 6px;
    width: 6px;
    position: absolute;
    top: calc(15px + 0.6em);
    left: 0;
}

.c-form.is-calc td {
    padding-top: 0;
}

@media all and (min-width: 768px) {
    .c-form.is-calc table {
        border-radius: 5px;
        margin-bottom: 60px;
        padding: 30px 60px;
    }

    .c-form.is-calc th {
        font-size: 1.8rem;
        padding-left: 20px;
    }

    .c-form.is-calc th::before {
        top: calc(20px + 0.5em);
        height: 10px;
        width: 10px;
    }

    .c-form.is-calc td {
        padding-top: 0;
    }
}

/* .c-form.is-quantity
================================================== */
.c-form.is-quantity table {
    table-layout: fixed;
}

.c-form.is-quantity tr th:nth-child(2),
.c-form.is-quantity tr td:nth-child(2) {
    text-align: center;
    width: 172px;
}

.c-form.is-quantity th,
.c-form.is-quantity td {
    box-sizing: border-box;
    border: 1px solid rgba(var(--color-grayscale-500));
    padding: 4px 16px;
    vertical-align: middle;
}

.c-form.is-quantity th {
    background: rgb(var(--color-grayscale-200));
    font-weight: var(--font-weight_bold);
}

/* .c-form-btn
================================================== */
.c-form-area-btn {
    margin-top: 30px;
}

@media all and (min-width: 768px) {
    .c-form-area-btn {
        display: flex;
        justify-content: center;
        flex-wrap: wrap;
    }
}

.c-form-btn {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    box-sizing: border-box;
    border: 0;
    display: flex;
    align-items: center;
    font-size: 1.5rem;
    font-weight: var(--font-weight_bold);
    line-height: var(--line_height_snug);
    margin: 0 auto;
    padding: 0;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    max-width: 100%;
}

.c-form-btn+.c-form-btn {
    margin-top: 20px;
}

.c-form-btn.is-back {
    flex-direction: row-reverse;
}

.c-form-btn.is-back .c-form-btn__ico {
    background: rgb(var(--color-grayscale-400));
    color: rgb(var(--color-grayscale-800));
    transform: scale(-1, 1);
    margin: 0 10px 0 0;
}

.c-form-btn__ico {
    background: rgba(var(--color-primary-200));
    border-radius: 50%;
    color: rgb(var(--color-primary-500));
    display: block;
    margin-left: 10px;
    height: 44px;
    width: 44px;
    position: relative;
    transition: all 0.3s ease;
}

.c-form-btn__ico::after {
    content: "";
    display: inline-block;
    width: 16px;
    height: 12px;
    background-color: #3C89B7;
    color: #3C89B7;
    -webkit-mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 12"><path d="M9.53 0 8.21 1.32l4.06 3.76H0v1.84h12.26L8.2 10.68 9.52 12l6.47-6-6.46-6Z"/></svg>');
    mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 12"><path d="M9.53 0 8.21 1.32l4.06 3.76H0v1.84h12.26L8.2 10.68 9.52 12l6.47-6-6.46-6Z"/></svg>');
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
    transition: all 0.3s ease;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    transition: none;
}

@media all and (min-width: 768px) {
    .c-form-btn {
        transition: all 0.3s ease;
        margin: 0;
        font-size: 1.8rem;
    }

    .c-form-btn+.c-form-btn {
        margin-top: 0;
        margin-left: 80px;
    }

    .c-form-btn.is-back .c-form-btn__ico {
        margin: 0 15px 0 0;
    }

    .c-form-btn__ico {
        margin-left: 15px;
        height: 60px;
        width: 60px;
    }
}

@media (hover: hover) and (pointer: fine) {
    .c-form-btn:hover {
        color: rgb(var(--color-primary-400));
    }

    .c-form-btn:hover .c-form-btn__ico {
        background: rgb(var(--color-primary-400));
        color: rgb(var(--color-grayscale-200));
    }

    .c-form-btn:hover .c-form-btn__ico::after {
        -webkit-animation: icoMove 0.6s ease-in-out;
        animation: icoMove 0.6s ease-in-out;
    }
}

/* .c-form-add-btn
================================================== */
.c-form-add-btn__wrap {
    position: relative;
    margin: 20px 0 0;
}

.c-form-add-btn__wrap::before {
    content: "";
    border-top: 1px solid;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 100%;
}

@media all and (min-width: 768px) {
    .c-form-add-btn__wrap {
        margin-top: 36px;
    }
}

.c-form-add-btn {
    box-sizing: border-box;
    background: rgb(var(--color-grayscale-200));
    border: 1px solid;
    border-radius: 50px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.6rem;
    font-weight: var(--font-weight_bold);
    line-height: var(--line-height_snug);
    margin: 0 auto;
    padding: 10px 20px;
    position: relative;
    width: 240px;
    max-width: 100%;
    transition: all 0.3s ease;
}

.c-form-add-btn__ico {
    margin-right: 12px;
    height: 16px;
    width: 16px;
    position: relative;
}

.c-form-add-btn__ico::before,
.c-form-add-btn__ico::after {
    content: "";
    background: #3C89B7;
    border-radius: 50px;
    height: 2px;
    width: 100%;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.c-form-add-btn__ico::after {
    transform: translate(-50%, -50%) rotate(-90deg);
}

@media (hover: hover) and (pointer: fine) {
    .c-form-add-btn:hover {
        background: rgb(var(--color-primary-400));
        border-color: rgb(var(--color-primary-400));
        color: rgb(var(--color-grayscale-200));
    }
}

/* .c-form-remove-btn
================================================== */
.c-form-remove-btn {
    box-sizing: border-box;
    background: none;
    border: none;
    color: rgb(var(--color-grayscale-800));
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.6rem;
    font-weight: var(--font-weight_bold);
    line-height: var(--line-height_snug);
    margin: 20px auto 0;
    padding: 5px;
    position: relative;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    max-width: 100%;
    transition: all 0.3s ease;
}

.c-form-remove-btn:disabled {
    display: none;
}

.c-form-remove-btn__ico {
    margin-left: 12px;
    height: 16px;
    width: 16px;
    position: relative;
}

.c-form-remove-btn__ico::before,
.c-form-remove-btn__ico::after {
    content: "";
    background: #3C89B7;
    border-radius: 50px;
    height: 2px;
    width: 100%;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%) rotate(-45deg);
}

.c-form-remove-btn__ico::after {
    transform: translate(-50%, -50%) rotate(45deg);
}

@media (hover: hover) and (pointer: fine) {
    .c-form-remove-btn:not(:disabled):hover {
        color: rgb(var(--color-primary-400));
    }
}

/* .c-form .mwform-checkbox-field
================================================ */
.c-form .mwform-checkbox-field,
.c-form .c-checkbox {
    display: block;
}

.c-form .mwform-checkbox-field+.mwform-checkbox-field,
.c-form .mwform-checkbox-field+.c-checkbox,
.c-form .c-checkbox+.mwform-checkbox-field,
.c-form .c-checkbox+.c-checkbox {
    margin-top: 8px;
}

.c-form .mwform-checkbox-field label,
.c-form .c-checkbox label {
    display: block;
    cursor: pointer;
}

.c-form .mwform-checkbox-field input,
.c-form .c-checkbox input {
    border-width: 0;
    clip: rect(0 0 0 0);
    -webkit-clip-path: inset(50%);
    clip-path: inset(50%);
    width: 1px;
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    white-space: nowrap;
}

.c-form .mwform-checkbox-field input:focus-visible+.mwform-checkbox-field-text::before,
.c-form .mwform-checkbox-field input:focus-visible+.c-checkbox__text::before,
.c-form .c-checkbox input:focus-visible+.mwform-checkbox-field-text::before,
.c-form .c-checkbox input:focus-visible+.c-checkbox__text::before {
    border-color: rgb(var(--color-grayscale-800));
    box-shadow: 0 0 5px 0 inset rgba(var(--color-grayscale-800), 0.4);
}

.c-form .mwform-checkbox-field .mwform-checkbox-field-text,
.c-form .mwform-checkbox-field .c-checkbox__text,
.c-form .c-checkbox .mwform-checkbox-field-text,
.c-form .c-checkbox .c-checkbox__text {
    position: relative;
    display: inline-flex;
    align-items: center;
    font-size: 1.5rem;
    padding-left: 28px;
    min-height: 20px;
    vertical-align: top;
    display: block;
}

.c-form .mwform-checkbox-field .mwform-checkbox-field-text::before,
.c-form .mwform-checkbox-field .c-checkbox__text::before,
.c-form .c-checkbox .mwform-checkbox-field-text::before,
.c-form .c-checkbox .c-checkbox__text::before {
    content: "";
    position: absolute;
    top: 3px;
    left: 0;
    display: block;
    width: 20px;
    height: 20px;
    background: #fff;
    border: 1px solid rgba(var(--color-grayscale-500));
    border-radius: 5px;
    box-sizing: border-box;
}

.c-form .mwform-checkbox-field .mwform-checkbox-field-text::after,
.c-form .mwform-checkbox-field .c-checkbox__text::after,
.c-form .c-checkbox .mwform-checkbox-field-text::after,
.c-form .c-checkbox .c-checkbox__text::after {
    content: "";
    position: absolute;
    top: 4px;
    left: 0;
    width: 20px;
    height: 20px;
    background-color: rgb(var(--color-primary-500));
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18px' height='18px' viewBox='0 0 26 26' fill='none' stroke='currentColor' stroke-width='3px' stroke-linecap='square' stroke-linejoin='arcs'%3E%3Cpolyline points='20 6 9 17 4 12'%3E%3C/polyline%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18px' height='18px' viewBox='0 0 26 26' fill='none' stroke='currentColor' stroke-width='3px' stroke-linecap='square' stroke-linejoin='arcs'%3E%3Cpolyline points='20 6 9 17 4 12'%3E%3C/polyline%3E%3C/svg%3E");
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
    transition: all 0.3s ease;
    transform: scale(0);
}

.c-form .mwform-checkbox-field input:checked+.mwform-checkbox-field-text::after,
.c-form .mwform-checkbox-field input:checked+.c-checkbox__text::after,
.c-form .c-checkbox input:checked+.mwform-checkbox-field-text::after,
.c-form .c-checkbox input:checked+.c-checkbox__text::after {
    transform: scale(1);
}

@media all and (min-width: 768px) {

    .c-form .mwform-checkbox-field+.mwform-checkbox-field,
    .c-form .mwform-checkbox-field+.c-checkbox,
    .c-form .c-checkbox+.mwform-checkbox-field,
    .c-form .c-checkbox+.c-checkbox {
        margin-top: 15px;
    }

    .c-form .mwform-checkbox-field .mwform-checkbox-field-text,
    .c-form .mwform-checkbox-field .c-checkbox__text,
    .c-form .c-checkbox .mwform-checkbox-field-text,
    .c-form .c-checkbox .c-checkbox__text {
        font-size: 1.6rem;
        padding-left: 34px;
    }

    .c-form .mwform-checkbox-field .mwform-checkbox-field-text::before,
    .c-form .mwform-checkbox-field .c-checkbox__text::before,
    .c-form .c-checkbox .mwform-checkbox-field-text::before,
    .c-form .c-checkbox .c-checkbox__text::before {
        height: 24px;
        width: 24px;
    }

    .c-form .mwform-checkbox-field .mwform-checkbox-field-text::after,
    .c-form .mwform-checkbox-field .c-checkbox__text::after,
    .c-form .c-checkbox .mwform-checkbox-field-text::after,
    .c-form .c-checkbox .c-checkbox__text::after {
        height: 24px;
        width: 24px;
    }
}

.c-checkbox-list {
    display: flex;
    flex-wrap: wrap;
}

.c-checkbox-list .mwform-checkbox-field,
.c-checkbox-list .c-checkbox {
    display: inline-block;
    margin-right: 20px;
}

.c-checkbox-list .mwform-checkbox-field+.mwform-checkbox-field,
.c-checkbox-list .mwform-checkbox-field+.c-checkbox,
.c-checkbox-list .c-checkbox+.mwform-checkbox-field,
.c-checkbox-list .c-checkbox+.c-checkbox {
    margin-top: 0;
}

/* c-flow-flow
------------------------------------- */
.c-form-flow {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 40px;
}

.c-form-flow__item {
    background: rgba(var(--color-primary-200));
    border-radius: 50%;
    color: rgb(var(--color-grayscale-900));
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    font-size: 1.5rem;
    font-weight: var(--font-weight_bold);
    line-height: var(--line-height_snug);
    letter-spacing: var(--letter-spacing_snug);
    position: relative;
    height: 60px;
    width: 60px;
}

.c-form-flow__item+.c-form-flow__item {
    margin-left: 62px;
}

.c-form-flow__item+.c-form-flow__item::before {
    content: "";
    background: radial-gradient(circle farthest-side, rgb(var(--color-primary-500)), rgb(var(--color-primary-500)) 30%, transparent 30%, transparent);
    background-size: 16px;
    display: inline-block;
    height: 6px;
    width: 48px;
    position: absolute;
    left: -56px;
    top: 50%;
    transform: translateY(-50%);
}

@media all and (min-width: 768px) {
    .c-form-flow__item {
        font-size: 1.8rem;
        height: 100px;
        width: 100px;
    }

    .c-form-flow__item+.c-form-flow__item {
        margin-left: 160px;
    }

    .c-form-flow__item+.c-form-flow__item::before {
        width: 128px;
        left: -144px;
    }
}

.step1 .c-form-flow__item:nth-child(1),
.is-input .c-form-flow__item:nth-child(1) {
    background: rgba(var(--color-primary-400));
    color: rgb(var(--color-grayscale-200));
}

.step2 .c-form-flow__item:nth-child(2),
.is-confirm .c-form-flow__item:nth-child(2) {
    background: rgba(var(--color-primary-400));
    color: rgb(var(--color-grayscale-200));
}

.step3 .c-form-flow__item:nth-child(3),
.is-complete .c-form-flow__item:nth-child(3) {
    background: rgba(var(--color-primary-400));
    color: rgb(var(--color-grayscale-200));
}

/* .c-form .mwform-radio-field
================================================ */
.c-form .mwform-radio-field,
.c-form .c-radio {
    display: block;
}

.c-form .mwform-radio-field+.mwform-radio-field,
.c-form .mwform-radio-field+.c-radio,
.c-form .c-radio+.mwform-radio-field,
.c-form .c-radio+.c-radio {
    margin-top: 8px;
}

.c-form .mwform-radio-field label,
.c-form .c-radio label {
    display: block;
    cursor: pointer;
}

.c-form .mwform-radio-field input,
.c-form .c-radio input {
    border-width: 0;
    clip: rect(0 0 0 0);
    -webkit-clip-path: inset(50%);
    clip-path: inset(50%);
    width: 1px;
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    white-space: nowrap;
}

.c-form .mwform-radio-field input:focus-visible+.mwform-radio-field-text::before,
.c-form .mwform-radio-field input:focus-visible+.c-radio__text::before,
.c-form .c-radio input:focus-visible+.mwform-radio-field-text::before,
.c-form .c-radio input:focus-visible+.c-radio__text::before {
    border-color: rgb(var(--color-grayscale-800));
    box-shadow: 0 0 5px 0 inset rgba(var(--color-grayscale-800), 0.4);
}

.c-form .mwform-radio-field .mwform-radio-field-text,
.c-form .mwform-radio-field .c-radio__text,
.c-form .c-radio .mwform-radio-field-text,
.c-form .c-radio .c-radio__text {
    position: relative;
    display: inline-flex;
    align-items: center;
    padding-left: 28px;
    min-height: 20px;
    font-size: 1.5rem;
    vertical-align: top;
}

.c-form .mwform-radio-field .mwform-radio-field-text::before,
.c-form .mwform-radio-field .c-radio__text::before,
.c-form .c-radio .mwform-radio-field-text::before,
.c-form .c-radio .c-radio__text::before {
    content: "";
    box-sizing: border-box;
    background: rgb(var(--color-grayscale-200));
    border: 1px solid rgba(var(--color-grayscale-500));
    border-radius: 50%;
    position: absolute;
    top: 4px;
    left: 0;
    display: block;
    width: 20px;
    height: 20px;
}

.c-form .mwform-radio-field .mwform-radio-field-text::after,
.c-form .mwform-radio-field .c-radio__text::after,
.c-form .c-radio .mwform-radio-field-text::after,
.c-form .c-radio .c-radio__text::after {
    content: "";
    position: absolute;
    top: 8px;
    left: calc((20px - 12px) / 2);
    display: block;
    width: 12px;
    height: 12px;
    border-radius: 50%;
    background: rgb(var(--color-primary-500));
    transform: scale(0);
    box-sizing: border-box;
    transition: all 0.3s ease;
}

.c-form .mwform-radio-field input:checked+.mwform-radio-field-text::after,
.c-form .mwform-radio-field input:checked+.c-radio__text::after,
.c-form .c-radio input:checked+.mwform-radio-field-text::after,
.c-form .c-radio input:checked+.c-radio__text::after {
    transform: scale(1);
}

@media all and (min-width: 768px) {

    .c-form .mwform-radio-field+.mwform-radio-field,
    .c-form .mwform-radio-field+.c-radio,
    .c-form .c-radio+.mwform-radio-field,
    .c-form .c-radio+.c-radio {
        margin-top: 15px;
    }

    .c-form .mwform-radio-field .mwform-radio-field-text,
    .c-form .mwform-radio-field .c-radio__text,
    .c-form .c-radio .mwform-radio-field-text,
    .c-form .c-radio .c-radio__text {
        font-size: 1.6rem;
        padding-left: 34px;
    }

    .c-form .mwform-radio-field .mwform-radio-field-text::before,
    .c-form .mwform-radio-field .c-radio__text::before,
    .c-form .c-radio .mwform-radio-field-text::before,
    .c-form .c-radio .c-radio__text::before {
        width: 24px;
        height: 24px;
    }

    .c-form .mwform-radio-field .mwform-radio-field-text::after,
    .c-form .mwform-radio-field .c-radio__text::after,
    .c-form .c-radio .mwform-radio-field-text::after,
    .c-form .c-radio .c-radio__text::after {
        top: 9px;
        left: 5px;
        width: 14px;
        height: 14px;
    }
}

.c-radio-list {
    display: flex;
    flex-wrap: wrap;
    flex-direction: column;
}

@media all and (min-width: 768px) {
    .c-radio-list {
        flex-direction: row;
    }

    .c-radio-list .mwform-radio-field,
    .c-radio-list .c-radio {
        display: inline-block;
        margin-right: 20px;
    }

    .c-radio-list .mwform-radio-field+.mwform-radio-field,
    .c-radio-list .mwform-radio-field+.c-radio,
    .c-radio-list .c-radio+.mwform-radio-field,
    .c-radio-list .c-radio+.c-radio {
        margin-top: 0;
    }
}

/* /* c-form-txt
================================================== */
.c-form-txt {
    margin-bottom: 10px;
}

.c-form-txt.is-confirm {
    display: none;
}

@media all and (min-width: 768px) {
    .c-form-txt {
        margin-bottom: 35px;
        text-align: center;
    }
}

.mw_wp_form_confirm .c-form-txt {
    display: none;
}

.mw_wp_form_confirm .c-form-txt.is-confirm {
    display: block;
}

/* .c-form-error
================================================== */
.c-form-error {
    display: block;
    color: #be5151;
    font-size: 1.3rem;
    margin-top: 5px;
}

/* .c-form-placeholder
================================================== */
.c-form-placeholder {
    display: block;
    color: var(rgba(var(--color-grayscale-900), 0.6));
    font-size: 1.2rem;
    margin-bottom: 5px;
}

/* .c-form-note
================================================== */
.c-form-note {
    display: block;
    font-weight: 400;
    font-size: 1.3rem;
    line-height: var(--line-height_snug);
    text-indent: -1em;
    margin-left: 1em;
    color: rgb(var(--color-grayscale-800));
}

.c-form-note::before {
    content: "※";
}

.c-form-note__list {
    margin: 16px 0 0;
}

.c-form-note__list .c-form-note {
    margin-top: 0;
}

.c-form-note__list.is-hidden {
    display: none;
}

@media all and (min-width: 768px) {
    .c-form-note__list {
        margin: 20px 0 0;
    }
}

td .c-form-note {
    margin-top: 16px;
}

td .c-form-note+.c-form-note {
    margin-top: 0;
}

@media all and (min-width: 768px) {
    td .c-form-note {
        margin-top: 20px;
    }
}

/* 確認画面
================================================ */
.mw_wp_form_confirm .c-form-note,
.mw_wp_form_confirm .c-form-placeholder {
    display: none;
}

/* .c-form
================================================== */
input[type=text]:focus-visible,
input[type=email]:focus-visible,
input[type=tel]:focus-visible,
textarea:focus-visible,
button:focus-visible,
select:focus-visible,
option:focus-visible {
    border-color: rgb(var(--color-grayscale-800));
    box-shadow: 0 0 5px 0 inset rgba(var(--color-grayscale-800), 0.4);
}

input.c-form-parts,
select.c-form-parts,
textarea.c-form-parts,
button.c-form-parts {
    box-sizing: border-box;
    display: block;
    width: 100%;
    height: 50px;
    padding: 5px 10px;
    font-size: 1.6rem;
    border: 1px solid rgba(var(--color-grayscale-500));
    border-radius: 5px;
    background: #fff;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    font-family: inherit;
}

input.c-form-parts::-moz-placeholder,
select.c-form-parts::-moz-placeholder,
textarea.c-form-parts::-moz-placeholder,
button.c-form-parts::-moz-placeholder {
    color: rgb(var(--color-grayscale-800));
}

input.c-form-parts::placeholder,
select.c-form-parts::placeholder,
textarea.c-form-parts::placeholder,
button.c-form-parts::placeholder {
    color: rgb(var(--color-grayscale-800));
}

input.c-form-parts.is-thin,
select.c-form-parts.is-thin,
textarea.c-form-parts.is-thin,
button.c-form-parts.is-thin {
    height: 32px;
}

@media all and (min-width: 768px) {

    input.c-form-parts,
    select.c-form-parts,
    textarea.c-form-parts,
    button.c-form-parts {
        height: 46px;
        padding: 5px 15px;
    }

    input.c-form-parts.is-min,
    select.c-form-parts.is-min,
    textarea.c-form-parts.is-min,
    button.c-form-parts.is-min {
        max-width: 220px;
    }

    input.c-form-parts.is-large,
    select.c-form-parts.is-large,
    textarea.c-form-parts.is-large,
    button.c-form-parts.is-large {
        max-width: 100%;
    }
}

textarea.c-form-parts {
    height: 180px;
    resize: vertical;
    padding: 10px 16px;
}

select.c-form-parts {
    padding-right: 20px;
    background: #fff no-repeat right 10px top 50%/12px;
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2212%22%20height%3D%2210%22%20viewBox%3D%220%200%2012%2010%22%3E%3Cpath%20d%3D%22M6%2C0l6%2C10H0Z%22%20transform%3D%22translate(12%2010)%20rotate(180)%22%20fill%3D%22%231a1311%22%2F%3E%3C%2Fsvg%3E");
}

.c-form-parts-list {
    display: flex;
    flex-wrap: wrap;
    margin-right: -20px;
}

.c-form-parts-list .c-form-parts {
    margin-right: 20px;
    width: 300px;
}

.c-form-parts-list.is-flex-end {
    justify-content: flex-end;
}

/* .c-form.is-default
================================================== */
.c-form.is-default table,
.c-form.is-default thead,
.c-form.is-default tbody,
.c-form.is-default tr,
.c-form.is-default th,
.c-form.is-default td {
    display: block;
}

.c-form.is-default th,
.c-form.is-default td {
    box-sizing: border-box;
    padding: 15px 0;
}

.c-form.is-default th {
    font-size: 1.8rem;
    font-weight: var(--font-weight_bold);
    line-height: var(--line-height_snug);
    letter-spacing: var(--letter-spacing_snug);
    text-align: left;
    position: relative;
}

.c-form.is-default th>span {
    position: relative;
    display: block;
    padding-right: 57px;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
}

.c-form.is-default td {
    padding-top: 0;
}

.c-form.is-default .c-form__con {
    box-sizing: border-box;
    background: rgb(var(--color-grayscale-200));
    border-radius: 3px;
    margin: 0 -20px;
    padding: 25px 20px 40px;
}

@media all and (min-width: 768px) {
    .c-form.is-default table {
        margin-bottom: 50px;
    }

    .c-form.is-default th {
        font-size: 2rem;
    }

    .c-form.is-default td {
        padding-top: 0;
    }

    .c-form.is-default .c-form__con {
        border-radius: 5px;
        margin: 0;
        padding: 40px 60px 60px;
    }
}

/* .c-form-label
================================================== */
.c-form-label {
    background: rgb(var(--color-grayscale-800));
    border-radius: 5px;
    color: rgb(var(--color-grayscale-200));
    display: inline-grid;
    place-content: center;
    font-size: 1.3rem;
    margin-left: 10px;
    height: 24px;
    width: 47px;
    position: absolute;
    top: 0;
    right: 0;
}

.c-form-label.is-required {
    background: rgb(var(--color-primary-500));
}

@media all and (min-width: 768px) {
    .c-form-label {
        top: 4px;
    }
}

/* .c-form-postcode
================================================== */
.c-form-postcode {
    display: flex;
    flex-wrap: wrap;
}

.c-form-postcode__prefix {
    max-width: 26px;
    margin-right: 12px;
    padding-top: 4px;
    font-size: 1.6rem;
}

.c-form-postcode__input {
    flex-basis: 120px;
}

.c-form-postcode__addr {
    margin-top: 15px;
}

.c-form-postcode__addr input {
    max-width: 100%;
}

@media all and (min-width: 768px) {
    .c-form-postcode__input {
        flex-basis: 200px;
    }
}

/* 確認画面
================================================ */
.mw_wp_form_confirm .c-form-postcode .c-form-postcode__prefix,
.is-confirm .c-form-postcode .c-form-postcode__prefix {
    max-width: none;
    flex-basis: 0;
}

/* .c-form-item
================================================== */
.c-form-item {
    display: flex;
}

.c-form-item+.c-form-item {
    margin-top: 10px;
}

.c-form-item-list {
    display: flex;
}

.c-form-item-list.is-center {
    justify-content: center;
}

.c-form-item-list .c-form-item+.c-form-item {
    margin-top: 0;
    margin-left: 14px;
}

.c-form-item-list.is-block {
    display: block;
}

.c-form-item-list.is-block .c-form-item+.c-form-item {
    margin: 14px 0 0;
}

.c-form-item__prefix {
    min-width: 68px;
    margin-right: 10px;
    padding-top: 12px;
}

.c-form-item__suffix {
    min-width: 20px;
    margin-left: 10px;
    padding-top: 12px;
}

.c-form-item__input {
    flex: 1;
    min-width: 80px;
}

@media all and (min-width: 768px) {
    .c-form-item {
        display: inline-flex;
    }

    .c-form-item+.c-form-item {
        margin: 0 0 0 20px;
    }

    .c-form-item__prefix {
        padding-top: 8px;
    }

    .c-form-item__suffix {
        padding-top: 8px;
    }

    .c-form-item__input {
        width: 200px;
    }

    .c-form-item-list .c-form-item__input {
        width: auto;
    }

    .c-form-item-list.is-block .c-form-item {
        display: flex;
    }

    .c-form-item-list.is-block .c-form-item+.c-form-item {
        margin: 20px 0 0;
    }
}

/* 確認画面
================================================ */
.mw_wp_form_confirm .c-form-item .c-form-item__prefix,
.mw_wp_form_confirm .c-form-item .c-form-item__suffix,
.is-confirm .c-form-item .c-form-item__prefix,
.is-confirm .c-form-item .c-form-item__suffix {
    min-width: 0;
    padding-top: 0;
}

.mw_wp_form_confirm .c-form-item .c-form-item__input,
.is-confirm .c-form-item .c-form-item__input {
    width: auto;
}

/* .c-form-address
================================================== */
.c-form-address {
    margin-top: 15px;
}

/* .mw_wp_form リセット
================================================ */
.mw_wp_form .c-form .horizontal-item+.horizontal-item {
    margin-left: 0;
}

/* .c-form-thanks
================================================ */
.c-form-thanks__btn {
    margin-left: auto;
    margin-right: auto;
}

/* .c-grid01
================================================== */
.c-grid01 {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    overflow: hidden;
    pointer-events: none;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
}

.c-grid01__col {
    box-sizing: border-box;
    border-color: rgb(var(--color-grayscale-400));
    border-style: solid;
}

.c-grid01__col+.c-grid01__col {
    border-width: 0 0 0 1px;
}

@media all and (min-width: 768px) {
    .c-grid01 {
        grid-template-columns: repeat(7, 1fr);
    }
}

/* .c-grid01.is-border-white
================================================== */
.c-grid01.is-border-white .c-grid01__col {
    border-color: rgb(var(--color-grayscale-200));
}

/* .c-head01
================================================== */
.c-head01 {
    margin-bottom: 22px;
}

.c-head01__en {
    font-size: 4.9rem;
    position: relative;
}

.c-head01__head {
    color: rgb(var(--color-grayscale-800));
    font-size: 1.6rem;
    font-weight: var(--font-weight_bold);
    line-height: var(--line-height_snug);
    letter-spacing: var(--letter-spacing_snug);
    margin-top: 8px;
}

@media all and (min-width: 768px) {
    .c-head01 {
        margin-bottom: 28px;
    }

    .c-head01__en {
        font-size: 8.9rem;
    }

    .c-head01__head {
        font-size: 2.1rem;
        margin-top: 10px;
    }
}

/* .c-head01.is-small
================================================== */
.c-head01.is-small .c-head01__en {
    font-size: 3.1rem;
}

@media all and (min-width: 768px) {
    .c-head01.is-small .c-head01__en {
        font-size: 5rem;
    }

    .c-head01.is-small .c-head01__head {
        font-size: 1.6rem;
        margin-top: 7px;
    }
}

/* .c-head01.is-center-sp
================================================== */
@media all and (max-width: 767px) {
    .c-head01.is-center-sp {
        text-align: center;
    }
}

/* .c-head02
================================================== */
.c-head02 {
    margin-bottom: 30px;
}

.c-head02__en {
    color: rgb(var(--color-grayscale-800));
    font-size: 1.3rem;
    margin-bottom: 4px;
}

.c-head02__txt {
    font-size: 2.4rem;
    font-weight: var(--font-weight_bold);
    line-height: var(--line-height_snug);
    letter-spacing: var(--letter-spacing_snug);
}

@media all and (min-width: 768px) {
    .c-head02 {
        margin-bottom: 30px;
    }

    .c-head02__en {
        font-size: 1.6rem;
        margin-bottom: 6px;
    }

    .c-head02__txt {
        font-size: 3.1rem;
    }
}

/* .c-head03
================================================== */
.c-head03 {
    font-size: 1.8rem;
    font-weight: var(--font-weight_bold);
    line-height: var(--line-height_snug);
    letter-spacing: var(--letter-spacing_snug);
    margin-bottom: 20px;
}

.c-head03 small {
    font-size: 0.6em;
    margin-left: 1em;
}

.c-head03.is-center {
    text-align: center;
}

@media all and (min-width: 768px) {
    .c-head03 {
        font-size: 2.6rem;
        margin-bottom: 30px;
    }
}

/* .c-head04
================================================== */
.c-head04 {
    font-size: 2rem;
    font-weight: var(--font-weight_bold);
    line-height: var(--line-height_snug);
    letter-spacing: var(--letter-spacing_snug);
    margin-bottom: 30px;
    padding-bottom: 10px;
    position: relative;
}

.c-head04::after {
    content: "";
    display: block;
    background: linear-gradient(to right, rgb(var(--color-primary-500)) 46px, rgba(var(--color-grayscale-500)) 46px, rgba(var(--color-grayscale-500)) 100%);
    height: 1px;
    width: 100%;
    position: absolute;
    left: 0;
    bottom: 0;
}

@media all and (min-width: 768px) {
    .c-head04 {
        font-size: 3.1rem;
        margin-bottom: 50px;
        padding-bottom: 20px;
    }

    .c-head04::after {
        background: linear-gradient(to right, rgb(var(--color-primary-500)) 150px, rgba(var(--color-grayscale-500)) 150px, rgba(var(--color-grayscale-500)) 100%);
    }
}

/* .c-head05
================================================== */
.c-head05 {
    font-size: 1.6rem;
    font-weight: var(--font-weight_bold);
    line-height: var(--line-height_snug);
    letter-spacing: var(--letter-spacing_snug);
}

.c-head05::before {
    content: "";
    display: inline-block;
    width: 7px;
    height: 7px;
    background: rgb(var(--color-primary-500));
    border-radius: 50%;
    margin-right: 10px;
}

@media all and (min-width: 768px) {
    .c-head05 {
        font-size: 1.8rem;
    }

    .c-head05::before {
        width: 10px;
        height: 10px;
    }
}

/* .c-head06
================================================== */
.c-head06 {
    font-size: 2rem;
    line-height: var(--line-height_snug);
    letter-spacing: var(--letter-spacing_snug);
    font-weight: var(--font-weight_bold);
    padding-top: 10px;
    position: relative;
}

.c-head06::before {
    content: "";
    display: inline-block;
    position: absolute;
    top: 0;
    left: 0;
    width: 2em;
    height: 1px;
    background: rgb(var(--color-primary-500));
}

@media all and (min-width: 768px) {
    .c-head06 {
        font-size: 2.6rem;
        padding-top: 21px;
    }

    .c-head06::before {
        width: 3em;
    }
}

/* .c-head07
================================================== */
.c-head07 {
    color: rgb(var(--color-grayscale-800));
    font-size: 1.3rem;
    font-weight: var(--font-weight_bold);
    line-height: var(--line-height_snug);
    letter-spacing: var(--letter-spacing_snug);
    margin-bottom: 25px;
}

.c-head07__en {
    color: rgb(var(--color-grayscale-900));
    display: inline-block;
    font-size: 1.6rem;
    margin-right: 12px;
}

@media all and (min-width: 768px) {
    .c-head07 {
        font-size: 1.5rem;
        margin-bottom: 54px;
    }

    .c-head07__en {
        font-size: 2.1rem;
        margin-right: 16px;
    }
}

/* .c-history01
================================================== */
.c-history01__item {
    box-sizing: border-box;
    background: rgb(var(--color-grayscale-200));
    border: 2px solid rgba(var(--color-primary-200));
    padding: 20px 18px;
}

.c-history01__item+.c-history01__item {
    margin-top: 10px;
}

.c-history01__year {
    box-sizing: border-box;
    color: rgb(var(--color-primary-500));
    font-size: 1.8rem;
    line-height: 1.1;
    margin-bottom: 5px;
    padding-right: 50px;
    position: relative;
    width: 134px;
}

.c-history01__year::after {
    content: "";
    border-top: 2px solid rgb(var(--color-primary-500));
    display: block;
    width: 50px;
    position: absolute;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
}

.c-history01__txt {
    font-size: 1.5rem;
}

@media all and (min-width: 768px) {
    .c-history01__item {
        display: flex;
        align-items: flex-start;
        padding: 24px 28px;
    }

    .c-history01__item+.c-history01__item {
        margin-top: 20px;
    }

    .c-history01__year {
        font-size: 2rem;
        flex-shrink: 0;
        margin: 4px 20px 0 0;
        width: 140px;
    }

    .c-history01__area-txt {
        flex: 1;
    }

    .c-history01__txt {
        font-size: 1.6rem;
    }
}

/* .c-ico
================================================== */
.c-ico {
    display: inline-block;
    vertical-align: middle;
}

.c-ico svg {
    transition: all 0.3s ease;
}

/* .c-ico.is-pin01
================================================== */
.c-ico.is-pin01::after {
  content: "";
  display: inline-block;
  width: 9px;
  height: 14px;
  background-color: currentColor;
  color: currentColor;
  -webkit-mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 9 14"><path d="M4.5 0C1.97.06-.05 2.29 0 4.99c0 .84.19 1.67.57 2.41.03.05.05.1.07.14L4.5 14l3.86-6.44s.05-.1.08-.15c.37-.74.57-1.58.56-2.42C9.05 2.29 7.03.06 4.5 0Zm0 7.16c-1.11-.03-1.98-1-1.96-2.17-.02-1.18.86-2.15 1.96-2.17 1.11.03 1.98.99 1.96 2.17.02 1.18-.86 2.15-1.96 2.17Z"/></svg>');
  mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 9 14"><path d="M4.5 0C1.97.06-.05 2.29 0 4.99c0 .84.19 1.67.57 2.41.03.05.05.1.07.14L4.5 14l3.86-6.44s.05-.1.08-.15c.37-.74.57-1.58.56-2.42C9.05 2.29 7.03.06 4.5 0Zm0 7.16c-1.11-.03-1.98-1-1.96-2.17-.02-1.18.86-2.15 1.96-2.17 1.11.03 1.98.99 1.96 2.17.02 1.18-.86 2.15-1.96 2.17Z"/></svg>');
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  transition: all 0.3s ease;
  height: 100%;
  width: 100%;
}

/* .c-ico.is-pdf01
================================================== */
.c-ico.is-pdf01::after {
    content: "";
    display: inline-block;
    width: 20px;
    height: 20px;
    background-color: #3c89b7;
    color: #3c89b7;
    -webkit-mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20"><path fill-rule="evenodd" d="m17.31 5.55-4.1-4.13-.44-.17H3.12l-.62.62v6.88h1.25V2.5h7.5v4.38l.62.62h4.38v1.25h1.25V6l-.19-.45Zm-4.81.7V2.5l3.75 3.75H12.5ZM3.12 10l-.62.62v7.5l.62.62h13.75l.62-.62v-7.5l-.62-.62H3.12Zm13.12 6.25v1.25H3.75v-6.25h12.5v5ZM6.24 15h-.4v1.25h-.85V12.5h1.32c.94 0 1.41.45 1.41 1.25 0 .17-.03.34-.1.49-.07.16-.17.29-.3.41-.31.24-.7.37-1.09.35Zm-.07-1.81h-.33v1.16h.33c.45 0 .67-.2.67-.59s-.22-.57-.67-.57Zm5.07 2.54c.18-.18.33-.4.42-.64.09-.24.14-.5.13-.76 0-1.25-.66-1.82-2-1.82H8.47v3.75h1.32c.26.01.53-.03.78-.12s.48-.23.67-.41Zm-1.94-.16v-2.38h.41c.16-.01.32.01.47.07.15.05.29.14.41.25.11.11.19.24.24.39.05.14.08.3.07.45.02.33-.09.65-.31.9-.11.11-.25.19-.4.25-.15.06-.31.08-.46.07H9.3Zm5.56-.76h-1.21v1.45h-.85v-3.75h2.18v.69h-1.32v.93h1.21v.69Z"/></svg>');
    mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20"><path fill-rule="evenodd" d="m17.31 5.55-4.1-4.13-.44-.17H3.12l-.62.62v6.88h1.25V2.5h7.5v4.38l.62.62h4.38v1.25h1.25V6l-.19-.45Zm-4.81.7V2.5l3.75 3.75H12.5ZM3.12 10l-.62.62v7.5l.62.62h13.75l.62-.62v-7.5l-.62-.62H3.12Zm13.12 6.25v1.25H3.75v-6.25h12.5v5ZM6.24 15h-.4v1.25h-.85V12.5h1.32c.94 0 1.41.45 1.41 1.25 0 .17-.03.34-.1.49-.07.16-.17.29-.3.41-.31.24-.7.37-1.09.35Zm-.07-1.81h-.33v1.16h.33c.45 0 .67-.2.67-.59s-.22-.57-.67-.57Zm5.07 2.54c.18-.18.33-.4.42-.64.09-.24.14-.5.13-.76 0-1.25-.66-1.82-2-1.82H8.47v3.75h1.32c.26.01.53-.03.78-.12s.48-.23.67-.41Zm-1.94-.16v-2.38h.41c.16-.01.32.01.47.07.15.05.29.14.41.25.11.11.19.24.24.39.05.14.08.3.07.45.02.33-.09.65-.31.9-.11.11-.25.19-.4.25-.15.06-.31.08-.46.07H9.3Zm5.56-.76h-1.21v1.45h-.85v-3.75h2.18v.69h-1.32v.93h1.21v.69Z"/></svg>');
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
    height: 100%;
    width: 100%;
    vertical-align: text-top;
}

/* .c-ico.is-tel01
================================================== */
.c-ico.is-tel01::after {
    content: "";
    display: inline-block;
    width: 30px;
    height: 30px;
    background-color: currentColor;
    color: currentColor;
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg width='31' height='31' viewBox='0 0 31 31' fill='none' xmlns='http://www.w3.org/2000/svg'%3E %3Cpath d='M28 8C28 6.625 26.875 5.5 25.5 5.5H5.5C4.125 5.5 3 6.625 3 8M28 8V23C28 24.375 26.875 25.5 25.5 25.5H5.5C4.125 25.5 3 24.375 3 23V8M28 8L15.5 16.75L3 8' stroke='%231E1E1E' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E %3C/svg%3E");
    mask-image: url('data:image/svg+xml,%3Csvg width='31' height='31' viewBox='0 0 31 31' fill='none' xmlns='http://www.w3.org/2000/svg'%3E %3Cpath d='M28 8C28 6.625 26.875 5.5 25.5 5.5H5.5C4.125 5.5 3 6.625 3 8M28 8V23C28 24.375 26.875 25.5 25.5 25.5H5.5C4.125 25.5 3 24.375 3 23V8M28 8L15.5 16.75L3 8' stroke='%231E1E1E' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E %3C/svg%3E"/></svg>');
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
    transition: all 0.3s ease;
    height: 100%;
    width: 100%;
}

/* .c-ico.is-fax01
================================================== */
.c-ico.is-fax01::after {
    content: "";
    display: inline-block;
    width: 25px;
    height: 25px;
    background-color: currentColor;
    color: currentColor;
    -webkit-mask-image: url('data:image/svg+xml;utf8,<svg width="25" height="23" viewBox="0 0 25 23" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M22.4091 6.74193V1.35026C22.4091 1.05026 22.1674 0.808594 21.8674 0.808594H8.35078C8.05078 0.808594 7.80911 1.05026 7.80911 1.35026V4.86693C7.53411 4.38359 6.96745 4.05026 6.30911 4.05026H4.06745C3.14245 4.05026 2.38411 4.71693 2.38411 5.52526V6.80026C1.16745 7.19193 0.300781 8.40859 0.300781 9.82526V19.0336C0.300781 20.7753 1.61745 22.1919 3.23411 22.1919H21.7924C23.4091 22.1919 24.7258 20.7753 24.7258 19.0336V9.82526C24.7258 8.30859 23.7424 7.05026 22.4258 6.74193H22.4091ZM21.3258 1.89193V6.66693H8.89245V1.89193H21.3258ZM3.46745 5.52526C3.46745 5.34193 3.70911 5.13359 4.06745 5.13359H6.30911C6.65911 5.13359 6.90911 5.34193 6.90911 5.52526V7.20026V17.1836C6.90911 17.3669 6.66745 17.5753 6.30911 17.5753H4.06745C3.71745 17.5753 3.46745 17.3669 3.46745 17.1836V5.52526ZM23.6258 19.0336C23.6258 20.1753 22.8008 21.1086 21.7758 21.1086H3.22578C2.20911 21.1086 1.37578 20.1753 1.37578 19.0336V9.82526C1.37578 9.02526 1.77578 8.32526 2.37578 7.97526V17.1919C2.37578 18.0086 3.13411 18.6669 4.05911 18.6669H6.30078C7.22578 18.6669 7.98411 18.0086 7.98411 17.1919V7.74193H21.8341C22.8341 7.78359 23.6174 8.69193 23.6174 9.81693V19.0253L23.6258 19.0336Z" fill="currentColor"/><path d="M13.3245 16.543H10.7995C10.4995 16.543 10.2578 16.7846 10.2578 17.0846V19.6096C10.2578 19.9096 10.4995 20.1513 10.7995 20.1513H13.3245C13.6245 20.1513 13.8661 19.9096 13.8661 19.6096V17.0846C13.8661 16.7846 13.6245 16.543 13.3245 16.543ZM12.7828 19.068H11.3495V17.6346H12.7828V19.068Z" fill="currentColor"/><path d="M13.3245 12.625H10.7995C10.4995 12.625 10.2578 12.8667 10.2578 13.1667V15.6917C10.2578 15.9917 10.4995 16.2333 10.7995 16.2333H13.3245C13.6245 16.2333 13.8661 15.9917 13.8661 15.6917V13.1667C13.8661 12.8667 13.6245 12.625 13.3245 12.625ZM12.7828 15.15H11.3495V13.7167H12.7828V15.15Z" fill="currentColor"/><path d="M13.3245 8.71875H10.7995C10.4995 8.71875 10.2578 8.96042 10.2578 9.26042V11.7771C10.2578 12.0771 10.4995 12.3187 10.7995 12.3187H13.3245C13.6245 12.3187 13.8661 12.0771 13.8661 11.7771V9.26042C13.8661 8.96042 13.6245 8.71875 13.3245 8.71875ZM12.7828 11.2354H11.3495V9.80208H12.7828V11.2354Z" fill="currentColor"/><path d="M17.2424 16.543H14.7174C14.4174 16.543 14.1758 16.7846 14.1758 17.0846V19.6096C14.1758 19.9096 14.4174 20.1513 14.7174 20.1513H17.2424C17.5424 20.1513 17.7841 19.9096 17.7841 19.6096V17.0846C17.7841 16.7846 17.5424 16.543 17.2424 16.543ZM16.7008 19.068H15.2674V17.6346H16.7008V19.068Z" fill="currentColor"/><path d="M17.2424 12.625H14.7174C14.4174 12.625 14.1758 12.8667 14.1758 13.1667V15.6917C14.1758 15.9917 14.4174 16.2333 14.7174 16.2333H17.2424C17.5424 16.2333 17.7841 15.9917 17.7841 15.6917V13.1667C17.7841 12.8667 17.5424 12.625 17.2424 12.625ZM16.7008 15.15H15.2674V13.7167H16.7008V15.15Z" fill="currentColor"/><path d="M17.2424 8.71875H14.7174C14.4174 8.71875 14.1758 8.96042 14.1758 9.26042V11.7771C14.1758 12.0771 14.4174 12.3187 14.7174 12.3187H17.2424C17.5424 12.3187 17.7841 12.0771 17.7841 11.7771V9.26042C17.7841 8.96042 17.5424 8.71875 17.2424 8.71875ZM16.7008 11.2354H15.2674V9.80208H16.7008V11.2354Z" fill="currentColor"/><path d="M21.1521 16.543H18.6354C18.3354 16.543 18.0938 16.7846 18.0938 17.0846V19.6096C18.0938 19.9096 18.3354 20.1513 18.6354 20.1513H21.1521C21.4521 20.1513 21.6938 19.9096 21.6938 19.6096V17.0846C21.6938 16.7846 21.4521 16.543 21.1521 16.543ZM20.6104 19.068H19.1771V17.6346H20.6104V19.068Z" fill="currentColor"/><path d="M21.1521 12.625H18.6354C18.3354 12.625 18.0938 12.8667 18.0938 13.1667V15.6917C18.0938 15.9917 18.3354 16.2333 18.6354 16.2333H21.1521C21.4521 16.2333 21.6938 15.9917 21.6938 15.6917V13.1667C21.6938 12.8667 21.4521 12.625 21.1521 12.625ZM20.6104 15.15H19.1771V13.7167H20.6104V15.15Z" fill="currentColor"/><path d="M21.1521 8.71875H18.6354C18.3354 8.71875 18.0938 8.96042 18.0938 9.26042V11.7771C18.0938 12.0771 18.3354 12.3187 18.6354 12.3187H21.1521C21.4521 12.3187 21.6938 12.0771 21.6938 11.7771V9.26042C21.6938 8.96042 21.4521 8.71875 21.1521 8.71875ZM20.6104 11.2354H19.1771V9.80208H20.6104V11.2354Z" fill="currentColor"/><path d="M10.5417 6.09115H19.675C19.975 6.09115 20.2167 5.84948 20.2167 5.54948C20.2167 5.24948 19.975 5.00781 19.675 5.00781H10.5417C10.2417 5.00781 10 5.24948 10 5.54948C10 5.84948 10.2417 6.09115 10.5417 6.09115Z" fill="currentColor"/><path d="M10.5417 4.09115H19.675C19.975 4.09115 20.2167 3.84948 20.2167 3.54948C20.2167 3.24948 19.975 3.00781 19.675 3.00781H10.5417C10.2417 3.00781 10 3.24948 10 3.54948C10 3.84948 10.2417 4.09115 10.5417 4.09115Z" fill="currentColor"/></svg>');
    mask-image: url('data:image/svg+xml;utf8,<svg width="25" height="23" viewBox="0 0 25 23" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M22.4091 6.74193V1.35026C22.4091 1.05026 22.1674 0.808594 21.8674 0.808594H8.35078C8.05078 0.808594 7.80911 1.05026 7.80911 1.35026V4.86693C7.53411 4.38359 6.96745 4.05026 6.30911 4.05026H4.06745C3.14245 4.05026 2.38411 4.71693 2.38411 5.52526V6.80026C1.16745 7.19193 0.300781 8.40859 0.300781 9.82526V19.0336C0.300781 20.7753 1.61745 22.1919 3.23411 22.1919H21.7924C23.4091 22.1919 24.7258 20.7753 24.7258 19.0336V9.82526C24.7258 8.30859 23.7424 7.05026 22.4258 6.74193H22.4091ZM21.3258 1.89193V6.66693H8.89245V1.89193H21.3258ZM3.46745 5.52526C3.46745 5.34193 3.70911 5.13359 4.06745 5.13359H6.30911C6.65911 5.13359 6.90911 5.34193 6.90911 5.52526V7.20026V17.1836C6.90911 17.3669 6.66745 17.5753 6.30911 17.5753H4.06745C3.71745 17.5753 3.46745 17.3669 3.46745 17.1836V5.52526ZM23.6258 19.0336C23.6258 20.1753 22.8008 21.1086 21.7758 21.1086H3.22578C2.20911 21.1086 1.37578 20.1753 1.37578 19.0336V9.82526C1.37578 9.02526 1.77578 8.32526 2.37578 7.97526V17.1919C2.37578 18.0086 3.13411 18.6669 4.05911 18.6669H6.30078C7.22578 18.6669 7.98411 18.0086 7.98411 17.1919V7.74193H21.8341C22.8341 7.78359 23.6174 8.69193 23.6174 9.81693V19.0253L23.6258 19.0336Z" fill="currentColor"/><path d="M13.3245 16.543H10.7995C10.4995 16.543 10.2578 16.7846 10.2578 17.0846V19.6096C10.2578 19.9096 10.4995 20.1513 10.7995 20.1513H13.3245C13.6245 20.1513 13.8661 19.9096 13.8661 19.6096V17.0846C13.8661 16.7846 13.6245 16.543 13.3245 16.543ZM12.7828 19.068H11.3495V17.6346H12.7828V19.068Z" fill="currentColor"/><path d="M13.3245 12.625H10.7995C10.4995 12.625 10.2578 12.8667 10.2578 13.1667V15.6917C10.2578 15.9917 10.4995 16.2333 10.7995 16.2333H13.3245C13.6245 16.2333 13.8661 15.9917 13.8661 15.6917V13.1667C13.8661 12.8667 13.6245 12.625 13.3245 12.625ZM12.7828 15.15H11.3495V13.7167H12.7828V15.15Z" fill="currentColor"/><path d="M13.3245 8.71875H10.7995C10.4995 8.71875 10.2578 8.96042 10.2578 9.26042V11.7771C10.2578 12.0771 10.4995 12.3187 10.7995 12.3187H13.3245C13.6245 12.3187 13.8661 12.0771 13.8661 11.7771V9.26042C13.8661 8.96042 13.6245 8.71875 13.3245 8.71875ZM12.7828 11.2354H11.3495V9.80208H12.7828V11.2354Z" fill="currentColor"/><path d="M17.2424 16.543H14.7174C14.4174 16.543 14.1758 16.7846 14.1758 17.0846V19.6096C14.1758 19.9096 14.4174 20.1513 14.7174 20.1513H17.2424C17.5424 20.1513 17.7841 19.9096 17.7841 19.6096V17.0846C17.7841 16.7846 17.5424 16.543 17.2424 16.543ZM16.7008 19.068H15.2674V17.6346H16.7008V19.068Z" fill="currentColor"/><path d="M17.2424 12.625H14.7174C14.4174 12.625 14.1758 12.8667 14.1758 13.1667V15.6917C14.1758 15.9917 14.4174 16.2333 14.7174 16.2333H17.2424C17.5424 16.2333 17.7841 15.9917 17.7841 15.6917V13.1667C17.7841 12.8667 17.5424 12.625 17.2424 12.625ZM16.7008 15.15H15.2674V13.7167H16.7008V15.15Z" fill="currentColor"/><path d="M17.2424 8.71875H14.7174C14.4174 8.71875 14.1758 8.96042 14.1758 9.26042V11.7771C14.1758 12.0771 14.4174 12.3187 14.7174 12.3187H17.2424C17.5424 12.3187 17.7841 12.0771 17.7841 11.7771V9.26042C17.7841 8.96042 17.5424 8.71875 17.2424 8.71875ZM16.7008 11.2354H15.2674V9.80208H16.7008V11.2354Z" fill="currentColor"/><path d="M21.1521 16.543H18.6354C18.3354 16.543 18.0938 16.7846 18.0938 17.0846V19.6096C18.0938 19.9096 18.3354 20.1513 18.6354 20.1513H21.1521C21.4521 20.1513 21.6938 19.9096 21.6938 19.6096V17.0846C21.6938 16.7846 21.4521 16.543 21.1521 16.543ZM20.6104 19.068H19.1771V17.6346H20.6104V19.068Z" fill="currentColor"/><path d="M21.1521 12.625H18.6354C18.3354 12.625 18.0938 12.8667 18.0938 13.1667V15.6917C18.0938 15.9917 18.3354 16.2333 18.6354 16.2333H21.1521C21.4521 16.2333 21.6938 15.9917 21.6938 15.6917V13.1667C21.6938 12.8667 21.4521 12.625 21.1521 12.625ZM20.6104 15.15H19.1771V13.7167H20.6104V15.15Z" fill="currentColor"/><path d="M21.1521 8.71875H18.6354C18.3354 8.71875 18.0938 8.96042 18.0938 9.26042V11.7771C18.0938 12.0771 18.3354 12.3187 18.6354 12.3187H21.1521C21.4521 12.3187 21.6938 12.0771 21.6938 11.7771V9.26042C21.6938 8.96042 21.4521 8.71875 21.1521 8.71875ZM20.6104 11.2354H19.1771V9.80208H20.6104V11.2354Z" fill="currentColor"/><path d="M10.5417 6.09115H19.675C19.975 6.09115 20.2167 5.84948 20.2167 5.54948C20.2167 5.24948 19.975 5.00781 19.675 5.00781H10.5417C10.2417 5.00781 10 5.24948 10 5.54948C10 5.84948 10.2417 6.09115 10.5417 6.09115Z" fill="currentColor"/><path d="M10.5417 4.09115H19.675C19.975 4.09115 20.2167 3.84948 20.2167 3.54948C20.2167 3.24948 19.975 3.00781 19.675 3.00781H10.5417C10.2417 3.00781 10 3.24948 10 3.54948C10 3.84948 10.2417 4.09115 10.5417 4.09115Z" fill="currentColor"/></svg>');
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
    height: 100%;
    width: 100%;
}

/* .c-list01
================================================== */
.c-list01 {
    padding-left: 1.25em;
}

.c-list01__item {
    list-style-type: disc;
    line-height: var(--line-height_snug);
}

.c-list01__item::marker {
    color: rgb(var(--color-primary-500));
}

.c-list01__item+.c-list01__item {
    margin-top: 8px;
}

/* .c-list02
================================================== */
.c-list02 {
    padding-left: 0;
    counter-reset: num;
}

.c-list02__item {
    box-sizing: border-box;
    counter-increment: num;
    position: relative;
    display: flex;
    align-items: flex-start;
    flex: 1;
    line-height: var(--line-height_snug);
}

.c-list02__item::before {
    content: counter(num, decimal-leading-zero);
    color: rgb(var(--color-primary-500));
    display: inline-block;
    padding-right: 10px;
    white-space: nowrap;
    font-size: 1.5rem;
    font-family: var(--font-family_en);
    font-weight: var(--font-weight_en);
    letter-spacing: var(--letter-spacing_en);
    min-width: 20px;
}

.c-list02__item+.c-list02__item {
    margin-top: 8px;
}

/* .c-modal01
================================================== */
.c-modal01__img {
    text-align: center;
}

.c-modal01__video {
    position: relative;
    width: 100%;
}

.c-modal01__video::before {
    content: "";
    display: block;
    padding-top: 56.25%;
}

.c-modal01__video iframe {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}

/* .c-modal02
================================================== */
.c-modal02 {
    display: grid;
    grid-template-columns: 1fr;
    gap: 15px;
    margin-bottom: 20px;
}

.c-modal02__item-btn {
    display: block;
    box-shadow: 0 4px 4px 0 rgba(0, 0, 0, 0.25);
    border-radius: 13.5px;
    background: rgb(var(--color-grayscale-300));
    padding: 5px 19px;
}

.c-modal02__item-ico {
    display: inline-block;
    width: 18px;
    height: 18px;
    margin-right: 12px;
    position: relative;
    top: 4px;
}

.c-modal02__item-ico::before {
    content: "";
    display: inline-block;
    width: 100%;
    height: 100%;
    background: url(../image/ico_attention01.png) no-repeat center/contain;
}

.c-modal02__content-in {
    display: grid;
    grid-template-columns: 1fr;
    gap: 20px;
}

@media all and (min-width: 768px) {
    .c-modal02 {
        grid-template-columns: 1fr 1fr;
        gap: 15px;
        max-width: 500px;
    }

    .c-modal02__item-btn {
        cursor: pointer;
        font-size: 1.2rem;
    }

    .c-modal02__content-in {
        grid-template-columns: 1fr 690px;
    }
}

/* .c-other01
================================================== */
.c-other01__inner {
    padding-top: 62px;
    padding-bottom: 80px;
}

.c-other01__head {
    color: rgb(var(--color-grayscale-800));
    font-size: 1.3rem;
    font-weight: var(--font-weight_bold);
    line-height: var(--line-height_snug);
    letter-spacing: var(--letter-spacing_snug);
    margin-bottom: 25px;
}

.c-other01__head-en {
    color: rgb(var(--color-grayscale-900));
    display: inline-block;
    font-size: 1.6rem;
    margin-right: 12px;
}

.c-other01-list__item {
    box-sizing: border-box;
    border-color: rgba(var(--color-grayscale-500));
    border-style: solid;
    border-width: 1px 0 0;
}

.c-other01-list__item:last-child {
    border-width: 1px 0;
}

.c-other01-list__in {
    box-sizing: border-box;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    min-height: 133px;
    padding: 30px 10px 30px 0;
    position: relative;
    transition: all 0.3s ease;
}

.c-other01-list__img {
    margin-right: 10px;
    height: 50px;
    width: 50px;
}

.c-other01-list__area-txt {
    flex: 1;
}

.c-other01-list__en {
    color: rgb(var(--color-grayscale-800));
    font-size: 1.1rem;
    margin-bottom: 8px;
    transition: color 0.3s ease;
}

.c-other01-list__head {
    font-size: 1.8rem;
    font-weight: var(--font-weight_bold);
    line-height: var(--line-height_snug);
    letter-spacing: var(--letter-spacing_snug);
}

.c-other01-list__ico {
    background: rgba(var(--color-primary-200));
    border-radius: 50%;
    color: rgb(var(--color-primary-500));
    display: block;
    margin-left: 12px;
    height: 44px;
    width: 44px;
    position: relative;
}

.c-other01-list__ico::after {
    content: "";
    display: inline-block;
    width: 16px;
    height: 16px;
    background-color: #3C89B7;
    color: #3C89B7;
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg width='17' height='17' viewBox='0 0 17 17' fill='none' xmlns='http://www.w3.org/2000/svg'%3E %3Cpath d='M1 8.5H16M16 8.5L8.5 16M16 8.5L8.5 1' stroke='%238A8A8A' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E %3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg width='17' height='17' viewBox='0 0 17 17' fill='none' xmlns='http://www.w3.org/2000/svg'%3E %3Cpath d='M1 8.5H16M16 8.5L8.5 16M16 8.5L8.5 1' stroke='%238A8A8A' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E %3C/svg%3E");
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
    transition: all 0.3s ease;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    transition: none;
}

@media all and (min-width: 768px) {
    .c-other01__inner {
        padding-top: 120px;
        padding-bottom: 120px;
    }

    .c-other01__head {
        font-size: 1.5rem;
        margin-bottom: 54px;
    }

    .c-other01__head-en {
        font-size: 2.1rem;
        margin-right: 16px;
    }

    .c-other01-list {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
    }

    .c-other01-list__item {
        border-width: 0 0 0 1px;
    }

    .c-other01-list__item:last-child {
        border-width: 0 1px;
    }

    .c-other01-list__in {
        flex-direction: column;
        align-items: flex-start;
        padding: 60px 40px 40px;
    }

    .c-other01-list__img {
        margin: 0;
        height: 60px;
        width: 60px;
        position: absolute;
        top: 19px;
        right: 29px;
    }

    .c-other01-list__area-txt {
        flex: 1;
    }

    .c-other01-list__en {
        font-size: 1.3rem;
    }

    .c-other01-list__head {
        font-size: 2.3rem;
        min-height: 69px;
    }

    .c-other01-list__ico {
        margin: 30px 0 0;
        height: 60px;
        width: 60px;
    }
}

@media all and (min-width: 1560px) {
    .c-other01-list__in {
        padding: 60px 40px 40px;
    }
}

@media (hover: hover) and (pointer: fine) {
    .c-other01-list__item:hover {
        border-color: transparent;
    }

    .c-other01-list__item:hover+.c-other01-list__item {
        border-color: transparent;
    }

    .c-other01-list__in:hover {
        box-shadow: 0 15px 30px rgba(var(--color-grayscale-900), 0.12);
        background: rgb(var(--color-grayscale-200));
        color: rgb(var(--color-primary-400));
        transform: translateY(-5px);
    }

    .c-other01-list__in:hover .c-other01-list__en {
        color: rgb(var(--color-primary-400));
    }

    .c-other01-list__in:hover .c-other01-list__ico {
        background: rgb(var(--color-primary-400));
        color: rgb(var(--color-grayscale-200));
    }

    .c-other01-list__in:hover .c-other01-list__ico::after {
        -webkit-animation: icoMove 0.6s ease-in-out;
        animation: icoMove 0.6s ease-in-out;
    }
}

/* .c-pager01
===================================*/
.c-pager01 {
    overflow: hidden;
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    text-align: center;
    margin: 40px -6px -12px;
}

.c-pager01 li {
    margin: 0 6px 12px;
    display: flex;
    display: inline-flex;
}

.c-pager01 li a,
.c-pager01 li span {
    box-sizing: border-box;
    background: rgb(var(--color-primary-200));
    border: none;
    border-radius: 50%;
    color: rgb(var(--color-primary-500));
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    width: 44px;
    height: 44px;
    font-size: 1.5rem;
    font-weight: var(--font-weight_en);
    line-height: var(--line-height_en);
    text-decoration: none;
    transition: all 0.3s ease;
    margin: 0 10px;
}

.c-pager01 li.page {
    font-family: var(--font-family_en);
}

.c-pager01 li.pages span {
    background: none;
    width: auto;
}

.c-pager01 li.current span,
.c-pager01 li a.page-num-current {
    background: rgb(var(--color-grayscale-400));
    color: rgb(var(--color-grayscale-800));
}

.c-pager01 li.first,
.c-pager01 li.previous {
    margin-right: 11px;
}

.c-pager01 li.first a,
.c-pager01 li.last a {
    border-radius: 0;
    background: none;
    width: auto;
}

.c-pager01 li.next,
.c-pager01 li.last {
    margin-left: 11px;
}

.c-pager01 li.previous a,
.c-pager01 li.next a {
    overflow: hidden;
    position: relative;
    text-indent: 9999px;
    white-space: nowrap;
}

.c-pager01 li.previous a::after,
.c-pager01 li.next a::after {
    content: "";
    display: inline-block;
    width: 16px;
    height: 12px;
    background-color: #3C89B7;
    color: #3C89B7;
    -webkit-mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 12"><path d="M9.53 0 8.21 1.32l4.06 3.76H0v1.84h12.26L8.2 10.68 9.52 12l6.47-6-6.46-6Z"/></svg>');
    mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 12"><path d="M9.53 0 8.21 1.32l4.06 3.76H0v1.84h12.26L8.2 10.68 9.52 12l6.47-6-6.46-6Z"/></svg>');
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
    transition: all 0.3s ease;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    transition: none;
}

.c-pager01 li.previous a {
    transform: scale(-1, 1);
}

.c-pager01 li.extend span {
    background: none;
    border-radius: 0;
    color: rgb(var(--color-grayscale-800));
    width: auto;
}

@media all and (min-width: 768px) {
    .c-pager01 {
        margin: 60px -10px -20px;
    }

    .c-pager01 li {
        margin: 0 10px 20px;
    }

    .c-pager01 li a,
    .c-pager01 li span {
        font-size: 1.6rem;
        height: 60px;
        width: 60px;
    }

    .c-pager01 li.first,
    .c-pager01 li.previous {
        margin-right: 60px;
    }

    .c-pager01 li.next,
    .c-pager01 li.last {
        margin-left: 60px;
    }
}

@media (hover: hover) and (pointer: fine) {
    .c-pager01 li a:hover {
        background: rgb(var(--color-primary-500));
        color: rgb(var(--color-grayscale-200));
    }

    .c-pager01 li.previous a:hover::after {
        -webkit-animation: icoMove 0.6s ease-in-out;
        animation: icoMove 0.6s ease-in-out;
    }

    .c-pager01 li.next a:hover::after {
        -webkit-animation: icoMove 0.6s ease-in-out;
        animation: icoMove 0.6s ease-in-out;
    }
}

/*  .c-pager02
================================================== */
.c-pager02 {
    box-sizing: border-box;
    position: relative;
    overflow: hidden;
    margin-top: 25px;
    line-height: 1;
}

.c-pager02::after {
    content: "";
    display: block;
    clear: both;
}

.c-pager02 a {
    box-sizing: border-box;
    position: relative;
    text-decoration: none;
    transition: all 0.3s ease;
}

.c-pager02__previous a,
.c-pager02__next a {
    display: flex;
    align-items: center;
    font-size: 1.5rem;
    font-weight: var(--font-weight_bold);
    line-height: var(--line-height_snug);
}

.c-pager02__previous {
    float: left;
}

.c-pager02__previous .c-pager02__arw {
    margin-right: 10px;
    transform: scale(-1, 1);
}

.c-pager02__next {
    float: right;
}

.c-pager02__next .c-pager02__arw {
    margin-left: 10px;
}

.c-pager02__all {
    margin: 0 auto 25px;
    width: 280px;
    max-width: 100%;
}

.c-pager02__all a {
    box-sizing: border-box;
    background: rgb(var(--color-primary-500));
    border-radius: 50px;
    color: rgb(var(--color-grayscale-200));
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    font-size: 1.4rem;
    font-weight: var(--font-weight_bold);
    line-height: var(--line-height_snug);
    min-height: 48px;
    padding: 8px 25px;
    text-align: center;
}

.c-pager02__arw {
    background: rgba(var(--color-primary-200));
    border-radius: 50%;
    color: rgb(var(--color-primary-500));
    display: block;
    flex-shrink: 0;
    height: 44px;
    width: 44px;
    position: relative;
    transition: all 0.3s ease;
}

.c-pager02__arw::after {
    content: "";
    display: inline-block;
    width: 16px;
    height: 12px;
    background-color: #3C89B7;
    color: #3C89B7;
    -webkit-mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 12"><path d="M9.53 0 8.21 1.32l4.06 3.76H0v1.84h12.26L8.2 10.68 9.52 12l6.47-6-6.46-6Z"/></svg>');
    mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 12"><path d="M9.53 0 8.21 1.32l4.06 3.76H0v1.84h12.26L8.2 10.68 9.52 12l6.47-6-6.46-6Z"/></svg>');
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
    transition: all 0.3s ease;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    transition: none;
}

@media all and (min-width: 768px) {
    .c-pager02 {
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        justify-content: center;
        min-height: 60px;
        margin-top: 60px;
        padding: 0 200px;
    }

    .c-pager02__previous,
    .c-pager02__next {
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
    }

    .c-pager02__previous a,
    .c-pager02__next a {
        font-size: 1.8rem;
    }

    .c-pager02__previous {
        float: none;
        left: 0;
    }

    .c-pager02__previous .c-pager02__arw {
        margin-right: 15px;
    }

    .c-pager02__next {
        float: none;
        right: 0;
    }

    .c-pager02__next .c-pager02__arw {
        margin-left: 15px;
    }

    .c-pager02__all {
        margin: 0 auto;
    }

    .c-pager02__arw {
        height: 60px;
        width: 60px;
    }
}

@media (hover: hover) and (pointer: fine) {

    .c-pager02__previous a:hover,
    .c-pager02__next a:hover {
        color: rgb(var(--color-primary-400));
    }

    .c-pager02__previous a:hover .c-pager02__arw,
    .c-pager02__next a:hover .c-pager02__arw {
        background: rgb(var(--color-primary-400));
        color: rgb(var(--color-grayscale-200));
    }

    .c-pager02__previous a:hover .c-pager02__arw::after,
    .c-pager02__next a:hover .c-pager02__arw::after {
        -webkit-animation: icoMove 0.6s ease-in-out;
        animation: icoMove 0.6s ease-in-out;
    }

    .c-pager02__all a:hover {
        background: rgb(var(--color-primary-400));
        color: rgb(var(--color-grayscale-200));
    }
}

/* .c-quotation01
================================================== */
.c-quotation01 {
    box-sizing: border-box;
    border-style: solid;
    border-width: 1px 0;
    border-color: rgba(var(--color-grayscale-500));
    color: #000;
    padding: 30px 0;
    position: relative;
}

.c-quotation01__watermark {
    display: none;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: -1;
}

.c-quotation01__watermark img {
    height: 100%;
    width: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}

.c-quotation01__header {
    margin-bottom: 34px;
}

.c-quotation01__logo {
    width: 160px;
}

.c-quotation01__logo svg {
    display: block;
}

.c-quotation01__head {
    font-size: 2.6rem;
    font-weight: var(--font-weight_bold);
    line-height: var(--line-height_snug);
    letter-spacing: var(--letter-spacing_snug);
    text-align: center;
    margin-top: 20px;
}

.c-quotation01__info {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    margin-left: auto;
    margin-top: 30px;
}

.c-quotation01__date {
    border-bottom: 1px solid;
    font-size: 1.3rem;
    line-height: var(--line-height_snug);
    text-align: right;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    max-width: 324px;
}

.c-quotation01__date-year,
.c-quotation01__date-month,
.c-quotation01__date-day {
    display: inline-block;
    min-width: 4em;
}

.c-quotation01__tel {
    display: flex;
    flex-wrap: wrap;
    font-size: 1.6rem;
    font-weight: 700;
    line-height: var(--line-height_snug);
    margin-top: 8px;
}

.c-quotation01__tel-ico {
    height: 20px;
    width: 20px;
}

.c-quotation01__tel-ico img {
    height: 100%;
    width: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}

.c-quotation01__tel-txt {
    margin-left: 0.5em;
}

.c-quotation01__tel-num {
    margin-left: 0.5em;
}

.c-quotation01-area-btn {
    margin-top: 40px;
}

.c-quotation01-btn {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    box-sizing: border-box;
    background: rgb(var(--color-primary-500));
    border: 0;
    border-radius: 50px;
    color: rgb(var(--color-grayscale-200));
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.8rem;
    font-weight: var(--font-weight_bold);
    margin: 0 auto;
    text-align: left;
    height: 54px;
    padding: 10px 20px;
    position: relative;
    width: 100%;
    max-width: 295px;
    transition: all 0.3s ease;
}

.c-quotation01-btn.is-back {
    background: rgb(var(--color-grayscale-400));
    color: rgb(var(--color-grayscale-800));
    width: 150px;
}

.c-quotation01-btn.is-back .c-quotation01-btn__ico {
    display: none;
}

.c-quotation01-btn+.c-quotation01-btn {
    margin-top: 20px;
}

.c-quotation01-btn__ico {
    display: block;
    margin-right: 16px;
    height: 25px;
    width: 25px;
}

.c-quotation01-btn__ico img {
    height: 100%;
    width: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}

@media all and (min-width: 768px) {
    .c-quotation01 {
        padding: 50px 0;
    }

    .c-quotation01__header {
        display: flex;
        align-items: center;
        justify-content: space-between;
        margin-bottom: 40px;
    }

    .c-quotation01__logo {
        width: 240px;
    }

    .c-quotation01__head {
        font-size: 4.6rem;
        margin-top: 0;
    }

    .c-quotation01__info {
        margin: 0;
    }

    .c-quotation01__date {
        font-size: 1.6rem;
    }

    .c-quotation01__tel {
        font-size: 2rem;
    }

    .c-quotation01__tel-ico {
        height: 30px;
        width: 30px;
    }

    .c-quotation01-area-btn {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
    }

    .c-quotation01-btn {
        height: 68px;
        max-width: 500px;
        margin: 0;
    }

    .c-quotation01-btn+.c-quotation01-btn {
        margin: 0 0 0 80px;
    }

    .c-quotation01-btn__ico {
        height: 30px;
        width: 30px;
    }
}

@media (hover: hover) and (pointer: fine) {
    .c-quotation01-btn:hover {
        background: rgb(var(--color-primary-400));
    }

    .c-quotation01-btn.is-back:hover {
        color: rgb(var(--color-grayscale-200));
    }
}

@media print {
    .c-quotation01 {
        border: none;
        padding: 0;
        margin-bottom: 30px;
    }

    .c-quotation01__watermark {
        display: block;
    }

    .c-quotation01__header {
        display: flex;
        align-items: center;
        justify-content: space-between;
    }

    .c-quotation01__head {
        font-size: 2.6rem;
        flex: 1;
    }

    .c-quotation01__logo {
        width: 120px;
    }

    .c-quotation01__info {
        display: flex;
        flex-direction: column;
        align-items: flex-end;
    }

    .c-quotation01__date {
        font-size: 1.2rem;
    }

    .c-quotation01__tel {
        font-size: 1.2rem;
    }
}

/* .c-quotation01-customer
================================================== */
.c-quotation01-customer {
    box-sizing: border-box;
    border: 1px solid rgba(var(--color-grayscale-500));
    border-radius: 5px;
    padding: 16px 20px;
}

.c-quotation01-customer__data {
    box-sizing: border-box;
}

.c-quotation01-customer__data+.c-quotation01-customer__data {
    margin-top: 10px;
}

.c-quotation01-customer__data dt {
    padding: 0 0 0 11px;
    font-size: 1.6rem;
    font-weight: var(--font-weight_bold);
    line-height: var(--line-height_snug);
    letter-spacing: var(--letter-spacing_snug);
    margin-bottom: 5px;
    position: relative;
    text-align: left;
}

.c-quotation01-customer__data dt::before {
    content: "";
    background: rgb(var(--color-primary-500));
    position: absolute;
    top: 4px;
    left: 0;
    bottom: 4px;
    width: 3px;
}

.c-quotation01-customer__data dd {
    font-size: 1.3rem;
}

.c-quotation01-customer__data-postcode {
    display: block;
}

@media all and (min-width: 768px) {
    .c-quotation01-customer {
        display: flex;
        flex-wrap: wrap;
        padding: 0;
    }

    .c-quotation01-customer__data {
        display: flex;
        padding: 20px 40px;
        width: 50%;
    }

    .c-quotation01-customer__data+.c-quotation01-customer__data {
        margin-top: 0;
        border-top: 1px solid rgba(var(--color-grayscale-500));
    }

    .c-quotation01-customer__data:nth-child(2):not(.is-full) {
        border-top: none;
    }

    .c-quotation01-customer__data.is-full {
        width: 100%;
    }

    .c-quotation01-customer__data dt {
        font-size: 2rem;
        padding-left: 19px;
        margin-bottom: 0;
        width: 220px;
    }

    .c-quotation01-customer__data dt::before {
        content: "";
        background: rgb(var(--color-primary-500));
        position: absolute;
        top: 4px;
        left: 0;
        bottom: 4px;
        width: 3px;
    }

    .c-quotation01-customer__data dd {
        display: flex;
        font-size: 1.6rem;
        margin-left: 30px;
    }

    .c-quotation01-customer__data-postcode {
        flex-shrink: 0;
        margin-right: 30px;
    }
}

@media print {
    .c-quotation01-customer {
        display: flex;
        flex-wrap: wrap;
        padding: 0;
    }

    .c-quotation01-customer__data {
        display: flex;
        padding: 4px 20px;
        width: 50%;
    }

    .c-quotation01-customer__data+.c-quotation01-customer__data {
        margin-top: 0;
        border-top: 1px solid rgba(var(--color-grayscale-500));
    }

    .c-quotation01-customer__data:nth-child(2):not(.is-full) {
        border-top: none;
    }

    .c-quotation01-customer__data.is-full {
        width: 100%;
    }

    .c-quotation01-customer__data dt {
        font-size: 1rem;
        padding-left: 19px;
        margin-bottom: 0;
        width: 120px;
    }

    .c-quotation01-customer__data dt::before {
        content: "";
        background: rgb(var(--color-primary-500));
        position: absolute;
        top: 4px;
        left: 0;
        bottom: 4px;
        width: 3px;
    }

    .c-quotation01-customer__data dd {
        display: flex;
        font-size: 1rem;
        margin-left: 20px;
    }

    .c-quotation01-customer__data-postcode {
        flex-shrink: 0;
        margin-right: 20px;
    }
}

/* .c-quotation01-table01
================================================== */
.c-quotation01-table01 {
    margin-top: 30px;
}

.c-quotation01-table01 table {
    table-layout: fixed;
}

.c-quotation01-table01 th,
.c-quotation01-table01 td {
    box-sizing: border-box;
    border: 1px solid rgba(var(--color-grayscale-500));
    font-size: 1.3rem;
    line-height: var(--line-height_snug);
    padding: 4px 10px;
}

.c-quotation01-table01 th {
    background: rgb(var(--color-grayscale-200));
    font-weight: var(--font-weight_bold);
}

@media all and (min-width: 768px) {
    .c-quotation01-table01 {
        margin-top: 55px;
    }

    .c-quotation01-table01 th,
    .c-quotation01-table01 td {
        font-size: 1.4rem;
        padding: 8px 20px;
    }

    .c-quotation01-table01 th {
        width: 360px;
    }
}

@media print {
    .c-quotation01-table01 {
        margin-top: 20px;
        page-break-inside: avoid;
    }

    .c-quotation01-table01 th,
    .c-quotation01-table01 td {
        font-size: 1rem;
        padding: 4px 20px;
    }

    .c-quotation01-table01 th {
        background: none;
    }
}

/* .c-quotation01-table02
================================================== */
.c-quotation01-table02 {
    margin-top: 30px;
}

.c-quotation01-table02 table {
    table-layout: fixed;
}

.c-quotation01-table02 tr th:nth-child(2),
.c-quotation01-table02 tr td:nth-child(2) {
    text-align: center;
    width: 100px;
}

.c-quotation01-table02 th,
.c-quotation01-table02 td {
    box-sizing: border-box;
    border: 1px solid rgba(var(--color-grayscale-500));
    font-size: 1.3rem;
    line-height: var(--line-height_snug);
    padding: 4px 10px;
}

.c-quotation01-table02 th {
    background: rgb(var(--color-grayscale-200));
    font-weight: var(--font-weight_bold);
}

@media all and (min-width: 768px) {
    .c-quotation01-table02 {
        margin-top: 40px;
    }

    .c-quotation01-table02 tr th:nth-child(2),
    .c-quotation01-table02 tr td:nth-child(2) {
        text-align: center;
        width: 294px;
    }

    .c-quotation01-table02 th,
    .c-quotation01-table02 td {
        font-size: 1.4rem;
        padding: 8px 20px;
    }
}

@media print {
    .c-quotation01-table02 {
        margin-top: 20px;
        page-break-inside: avoid;
    }

    .c-quotation01-table02 th,
    .c-quotation01-table02 td {
        font-size: 1rem;
        padding: 4px 20px;
    }
}

/* .c-quotation01-remarks
================================================== */
.c-quotation01-remarks {
    margin-top: 30px;
}

.c-quotation01-remarks__head {
    font-size: 1.6rem;
    font-weight: var(--font-weight_bold);
    line-height: var(--line-height_snug);
    letter-spacing: var(--letter-spacing_snug);
    margin-bottom: 5px;
}

.c-quotation01-remarks__txt {
    box-sizing: border-box;
    border: 1px solid rgba(var(--color-grayscale-500));
    min-height: 180px;
    padding: 4px 10px;
}

@media all and (min-width: 768px) {
    .c-quotation01-remarks {
        margin-top: 40px;
    }

    .c-quotation01-remarks__head {
        font-size: 2rem;
        margin-bottom: 8px;
    }
}

@media print {
    .c-quotation01-remarks {
        page-break-inside: avoid;
        margin-top: 20px;
    }

    .c-quotation01-remarks__head {
        font-size: 1.4rem;
    }

    .c-quotation01-remarks__txt {
        border: none;
        min-height: auto;
        padding: 0;
    }
}

/* .c-search01
================================================== */
.c-search01 {
    display: flex;
    border-radius: 3px;
    overflow: hidden;
}

.c-search01__input {
    flex: 1;
}

.c-search01__input input {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    box-sizing: border-box;
    background: rgb(var(--color-grayscale-300));
    border: none;
    display: block;
    font-size: 1.6rem;
    letter-spacing: var(--letter-spacing_base);
    line-height: var(--line-height_snug);
    height: 50px;
    width: 100%;
    padding: 10px;
}

.c-search01__input input::-moz-placeholder {
    color: rgb(var(--color-grayscale-800));
    font-weight: var(--font-weight_bold);
}

.c-search01__input input::placeholder {
    color: rgb(var(--color-grayscale-800));
    font-weight: var(--font-weight_bold);
}

.c-search01__input input:focus-visible {
    border-color: rgb(var(--color-grayscale-800));
    box-shadow: 0 0 5px 0 inset rgba(var(--color-grayscale-800), 0.4);
}

.c-search01__btn {
    box-sizing: border-box;
    background: rgb(var(--color-grayscale-300));
    border: none;
    color: rgb(var(--color-grayscale-800));
    height: 50px;
    width: 50px;
    position: relative;
    text-indent: -200%;
    overflow: hidden;
}

.c-search01__btn::after {
    content: "";
    display: inline-block;
    width: 24px;
    height: 24px;
    background-color: #3C89B7;
    color: #3C89B7;
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg width='20' height='20' viewBox='0 0 20 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3E %3Cpath d='M19 19L14.65 14.65M17 9C17 13.4183 13.4183 17 9 17C4.58172 17 1 13.4183 1 9C1 4.58172 4.58172 1 9 1C13.4183 1 17 4.58172 17 9Z' stroke='%233C89B7' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E %3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg width='20' height='20' viewBox='0 0 20 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3E %3Cpath d='M19 19L14.65 14.65M17 9C17 13.4183 13.4183 17 9 17C4.58172 17 1 13.4183 1 9C1 4.58172 4.58172 1 9 1C13.4183 1 17 4.58172 17 9Z' stroke='%233C89B7' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E %3C/svg%3E");
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
    transition: all 0.3s ease;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

@media all and (min-width: 768px) {
    .c-search01 {
        border-radius: 5px;
        margin: 0 auto;
        max-width: 960px;
    }

    .c-search01__input input {
        height: 70px;
        padding: 10px 20px;
    }

    .c-search01__btn {
        height: 70px;
        width: 70px;
    }

    .c-search01__btn::after {
        height: 28px;
        width: 28px;
    }
}

/* .c-search02
================================================== */
.c-search02 {
    margin-top: 20px;
}

.c-search02__head {
    background: rgb(var(--color-grayscale-900));
    padding: 10px 20px;
    color: #fff;
    font-size: 1.5rem;
    font-weight: var(--font-weight_bold);
    text-align: center;
}

.c-search02__head-ico {
    display: inline-block;
    width: 13px;
    margin-right: 12px;
}

.c-search02__head-ico::before {
    content: "";
    display: inline-block;
    width: 24px;
    height: 24px;
    background-color: #3C89B7;
    color: #3C89B7;
    -webkit-mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M17.45 15.27c2.72-3.76 2.39-9.07-1-12.46-3.76-3.75-9.87-3.75-13.63.01-3.76 3.76-3.76 9.87 0 13.63 3.39 3.39 8.69 3.72 12.46 1l6.1 6.1c.6.6 1.57.6 2.17 0 .6-.6.6-1.57 0-2.17l-6.1-6.1Zm-13.2-.25c-2.97-2.97-2.97-7.81 0-10.78 2.97-2.97 7.81-2.97 10.78 0 2.97 2.97 2.97 7.81 0 10.78-2.97 2.97-7.81 2.97-10.78 0Z"/></svg>');
    mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M17.45 15.27c2.72-3.76 2.39-9.07-1-12.46-3.76-3.75-9.87-3.75-13.63.01-3.76 3.76-3.76 9.87 0 13.63 3.39 3.39 8.69 3.72 12.46 1l6.1 6.1c.6.6 1.57.6 2.17 0 .6-.6.6-1.57 0-2.17l-6.1-6.1Zm-13.2-.25c-2.97-2.97-2.97-7.81 0-10.78 2.97-2.97 7.81-2.97 10.78 0 2.97 2.97 2.97 7.81 0 10.78-2.97 2.97-7.81 2.97-10.78 0Z"/></svg>');
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
    transition: all 0.3s ease;
    display: inline-block;
    width: 13px;
    height: 13px;
}

.c-search02__box {
    border: 1px solid rgb(var(--color-grayscale-500));
    padding: 20px 15px;
}

.c-search02__inputs {
    display: flex;
    flex-wrap: wrap;
    margin: -10px 0 0 -10px;
}

.c-search02__input {
    margin: 10px 0 0 10px;
}

.c-search02__input label {
    display: block;
    cursor: pointer;
}

.c-search02__input input {
    border-width: 0;
    clip: rect(0 0 0 0);
    -webkit-clip-path: inset(50%);
    clip-path: inset(50%);
    width: 1px;
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    white-space: nowrap;
}

.c-search02__input input:focus-visible+.c-search02__input-txt::before {
    border-color: rgb(var(--color-grayscale-800));
    box-shadow: 0 0 5px 0 inset rgba(var(--color-grayscale-800), 0.4);
}

.c-search02__input input:checked+.c-search02__input-txt,
.c-search02__input input:checked+span {
    color: #fff;
    background: rgba(var(--color-primary-500));
}

.c-search02__input input:checked+.c-search02__input-txt::before,
.c-search02__input input:checked+span::before {
    background: #fff;
    border-color: #fff;
}

.c-search02__input input:checked+.c-search02__input-txt::after,
.c-search02__input input:checked+span::after {
    transform: translateY(-50%) rotate(-45deg) scale(1);
}

.c-search02__input-txt,
.c-search02__input span {
    position: relative;
    display: inline-flex;
    align-items: center;
    font-size: 1.2rem;
    font-weight: var(--font-weight_bold);
    letter-spacing: var(--letter-spacing_snug);
    line-height: var(--line-height_snug);
    padding: 5px 10px 5px 33px;
    vertical-align: top;
    box-sizing: border-box;
    border: 1px solid rgba(var(--color-grayscale-500));
    border-radius: 100px;
    white-space: nowrap;
}

.c-search02__input-txt::before,
.c-search02__input span::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 10px;
    transition: all 0.3s ease;
    transform: translateY(-50%);
    display: inline-block;
    border: 1px solid rgba(var(--color-primary-500));
    border-radius: 5px;
    box-sizing: border-box;
    width: 15px;
    height: 15px;
    border-radius: 50%;
}

.c-search02__input-txt::after,
.c-search02__input span::after {
    content: "";
    width: 10px;
    height: 5px;
    background: transparent;
    display: inline-block;
    border-bottom: 2px solid rgba(var(--color-primary-500));
    border-left: 2px solid rgba(var(--color-primary-500));
    box-sizing: border-box;
    position: absolute;
    top: 50%;
    left: 13px;
    transition: all 0.3s ease;
    transform: translateY(-50%) rotate(-45deg) scale(0);
    transform-origin: center;
}

.c-search02__btn {
    padding: 20px 27px;
    border: 1px solid rgb(var(--color-grayscale-500));
    border-top: none;
}

.c-search02__btn button {
    color: #fff;
    background: rgb(var(--color-primary-500));
    text-align: center;
    font-size: 1.4rem;
    padding: 14px;
    border-radius: 27px;
}

.c-search02__btn-ico {
    display: inline-block;
    width: 13px;
    margin-right: 12px;
}

.c-search02__btn-ico::before {
    content: "";
    display: inline-block;
    width: 24px;
    height: 24px;
    background-color: #3C89B7;
    color: #3C89B7;
    -webkit-mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M17.45 15.27c2.72-3.76 2.39-9.07-1-12.46-3.76-3.75-9.87-3.75-13.63.01-3.76 3.76-3.76 9.87 0 13.63 3.39 3.39 8.69 3.72 12.46 1l6.1 6.1c.6.6 1.57.6 2.17 0 .6-.6.6-1.57 0-2.17l-6.1-6.1Zm-13.2-.25c-2.97-2.97-2.97-7.81 0-10.78 2.97-2.97 7.81-2.97 10.78 0 2.97 2.97 2.97 7.81 0 10.78-2.97 2.97-7.81 2.97-10.78 0Z"/></svg>');
    mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M17.45 15.27c2.72-3.76 2.39-9.07-1-12.46-3.76-3.75-9.87-3.75-13.63.01-3.76 3.76-3.76 9.87 0 13.63 3.39 3.39 8.69 3.72 12.46 1l6.1 6.1c.6.6 1.57.6 2.17 0 .6-.6.6-1.57 0-2.17l-6.1-6.1Zm-13.2-.25c-2.97-2.97-2.97-7.81 0-10.78 2.97-2.97 7.81-2.97 10.78 0 2.97 2.97 2.97 7.81 0 10.78-2.97 2.97-7.81 2.97-10.78 0Z"/></svg>');
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
    transition: all 0.3s ease;
    display: inline-block;
    width: 13px;
    height: 13px;
}

@media all and (min-width: 768px) {
    .c-search02__head {
        padding-top: 15px;
        padding-bottom: 15px;
        font-size: 1.6rem;
    }

    .c-search02__box {
        padding: 30px;
    }

    .c-search02__input-txt,
    .c-search02__input span {
        font-size: 1.3rem;
        padding: 7px 12px 7px 40px;
    }

    .c-search02__input-txt::before,
    .c-search02__input span::before {
        width: 20px;
        height: 20px;
        left: 12px;
    }

    .c-search02__input input:checked+.c-search02__input-txt::after,
    .c-search02__input input:checked+span::after {
        width: 12px;
        height: 6px;
        left: 16px;
    }

    .c-search02__btn {
        padding: 20px;
    }

    .c-search02__btn button {
        max-width: 280px;
        margin: auto;
    }
}

/* .c-set01
================================================== */
.c-set01 {
    position: relative;
    padding-right: 40px;
}

.c-set01__head {
    text-align: center;
    color: #fff;
    font-weight: 700;
    line-height: 1;
    background: rgb(var(--color-grayscale-800));
    font-size: 1.3rem;
    padding: 4px;
}

.c-set01__head.is-hidden {
    display: none;
}

.c-set01__table th,
.c-set01__table td {
    box-sizing: border-box;
    border: solid rgb(var(--color-grayscale-300));
    border-width: 0 1px 1px;
    line-height: var(--line-height_snug);
    vertical-align: middle;
}

.c-set01__table th {
    background: rgb(var(--color-grayscale-400));
    border-width: 0 0 1px;
    font-size: 1.3rem;
    font-weight: var(--font-weight_bold);
    padding: 10px 12px;
}

.c-set01__table td {
    background: rgb(var(--color-grayscale-200));
    border-width: 0 1px 1px 0;
    padding: 7px 10px;
}

.c-set01__area-btn {
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    padding: 8px;
    height: 74px;
    width: 40px;
    position: absolute;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
}

.c-set01-btn {
    border-radius: 50%;
    height: 24px;
    width: 24px;
    position: relative;
    transition: all 0.3s ease;
}

.c-set01-btn.is-add {
    background: rgb(var(--color-primary-400));
    border-color: rgb(var(--color-primary-400));
    color: rgb(var(--color-grayscale-200));
}

.c-set01-btn.is-remove {
    color: rgb(var(--color-grayscale-800));
}

.c-set01-btn.is-remove:disabled {
    display: none;
}

.c-set01-btn.is-remove .c-set01-btn__ico::after {
    content: none;
}

.c-set01-btn__ico {
    display: block;
    margin-right: 12px;
    height: 10px;
    width: 10px;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.c-set01-btn__ico::before,
.c-set01-btn__ico::after {
    content: "";
    background: #3C89B7;
    border-radius: 50px;
    height: 2px;
    width: 100%;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.c-set01-btn__ico::after {
    transform: translate(-50%, -50%) rotate(-90deg);
}

@media all and (max-width: 767px) {
    .c-set01__table th {
        font-size: 1.1rem;
        padding: 10px 6px;
        width: 100px;
    }
}

@media all and (min-width: 768px) {
    .c-set01 {
        padding-right: 74px;
    }

    .c-set01__area-btn {
        flex-direction: row;
        padding: 8px;
        height: auto;
        width: 74px;
    }
}

@media (hover: hover) and (pointer: fine) {
    .c-set01-btn.is-add:hover {
        background: rgb(var(--color-primary-500));
        border-color: rgb(var(--color-primary-500));
    }

    .c-set01-btn.is-remove:not(:disabled):hover {
        background: rgb(var(--color-grayscale-400));
        border-color: rgb(var(--color-grayscale-400));
        color: rgb(var(--color-grayscale-200));
    }
}

/* .c-setup01
================================================== */
.c-setup01__inner {
    padding-top: var(--section-space--sm);
    padding-bottom: var(--section-space--xl);
}

.c-setup01__sec {
    margin-top: 50px;
    padding: 30px 20px;
    background: rgb(var(--color-grayscale-300));
    border-radius: 5px;
    position: relative;
}

.c-setup01__sec+.c-setup01__sec {
    margin-top: 45px;
}

.c-setup01__header {
    padding-bottom: 12px;
    border-bottom: 1px solid rgb(var(--color-grayscale-500));
}

.c-setup01__header-num {
    box-sizing: border-box;
    color: rgb(var(--color-primary-500));
    font-weight: var(--font-weight_bold);
    font-size: 1.5rem;
    line-height: var(--line-height_snug);
    color: #fff;
    background: rgb(var(--color-primary-500));
    padding: 5px 10px;
    border-radius: 50px;
    display: inline-block;
    text-align: center;
    position: absolute;
    top: 0;
    left: 20px;
    transform: translateY(-50%);
    min-width: 110px;
}

.c-setup01__header-main {
    font-size: 1.8rem;
    font-weight: var(--font-weight_bold);
    line-height: var(--line-height_snug);
}

.c-setup01__btn {
    margin-top: 40px;
}

.c-setup01__img {
    margin-top: 20px;
}

@media all and (min-width: 768px) {
    .c-setup01__inner {
        padding-top: var(--section-space--lg);
    }

    .c-setup01__sec {
        margin-top: 100px;
        padding: 40px;
    }

    .c-setup01__sec+.c-setup01__sec {
        margin-top: 80px;
    }

    .c-setup01__header {
        margin-bottom: 18px;
    }

    .c-setup01__header-num {
        font-size: 1.6rem;
        left: 40px;
    }

    .c-setup01__header-main {
        font-size: 2.3rem;
        margin-top: 15px;
        padding-bottom: 15px;
    }

    .c-setup01__img {
        max-width: 950px;
        margin: 30px auto 0;
    }

    .c-setup01__img img {
        width: 100%;
    }

    .c-setup01__btn {
        margin-top: 60px;
    }
}

/* .c-setup01-set
================================================== */
.c-setup01-set {
    margin-top: 20px;
}

.c-setup01-set__img {
    text-align: center;
}

.c-setup01-set img {
    border-radius: 5px;
}

@media all and (min-width: 768px) {
    .c-setup01-set {
        display: flex;
        align-items: flex-start;
        margin-top: 30px;
    }

    .c-setup01-set__img {
        flex-shrink: 0;
        max-width: 525px;
        margin-right: 65px;
    }

    .c-setup01-set .c-setup01-bubble {
        margin-top: 0;
    }

    .c-setup01-set .c-setup01-bubble::before {
        border-width: 0 16.5px 33px 16.5px;
        left: 0;
        top: 50%;
        transform: translate(-90%, -50%) rotate(-90deg);
    }
}

/* .c-setup01-bubble
================================================== */
.c-setup01-bubble {
    border-radius: 5px;
    background: rgb(var(--color-grayscale-400));
    padding: 20px;
    margin-top: 30px;
}

.c-setup01-bubble__img {
    order: 1;
    flex-shrink: 0;
    position: relative;
    text-align: center;
}

.c-setup01-bubble__head {
    margin-top: 20px;
    font-size: 1.6rem;
    font-weight: var(--font-weight_bold);
    line-height: var(--line-height_snug);
}

.c-setup01-bubble__head::before {
    content: "";
    display: inline-block;
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: rgb(var(--color-primary-500));
    margin-right: 10px;
    position: relative;
    top: -2px;
}

.c-setup01-bubble__head+.c-setup01-bubble__txt {
    margin-top: 10px;
}

.c-setup01-bubble__lead {
    text-align: center;
    margin-right: 28px;
    font-size: 1.5rem;
}

.c-setup01-bubble__txt {
    font-size: 1.5rem;
}

.c-setup01-bubble__note {
    padding-left: 1.5em;
    position: relative;
    color: rgb(var(--color-grayscale-800));
    font-size: 1.3rem;
    margin-top: 10px;
    line-height: var(--line-height_snug);
}

.c-setup01-bubble__note::before {
    content: "※";
    position: absolute;
    top: 0;
    left: 0;
}

@media all and (min-width: 768px) {
    .c-setup01-bubble {
        padding: 20px 30px;
        margin-top: 50px;
        flex-direction: column;
    }

    .c-setup01-bubble__img img {
        width: 100%;
    }

    .c-setup01-bubble__head {
        font-size: 1.8rem;
    }

    .c-setup01-bubble__head::before {
        width: 10px;
        height: 10px;
    }

    .c-setup01-bubble__lead {
        font-size: 1.6rem;
    }

    .c-setup01-bubble__txt {
        font-size: 1.6rem;
        display: block;
        margin: 0 0 10px;
    }
}

.c-setup01-bubble[data-micromodal-trigger] {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
}

.c-setup01-bubble[data-micromodal-trigger]::before {
    content: "";
    display: inline-block;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0 10.5px 10.5px 10.5px;
    border-color: transparent transparent rgb(var(--color-grayscale-400)) transparent;
    position: absolute;
    top: 1px;
    left: 50%;
    transform: translate(-50%, -100%);
}

.c-setup01-bubble[data-micromodal-trigger] .c-setup01-bubble__img {
    order: inherit;
    width: 120px;
    height: 120px;
    overflow: hidden;
}

.c-setup01-bubble[data-micromodal-trigger] .c-setup01-bubble__img img {
    display: block;
    border-radius: 5px;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}

.c-setup01-bubble[data-micromodal-trigger] .c-setup01-bubble__img::before {
    content: "";
    display: block;
    width: 40px;
    height: 40px;
    background: rgb(var(--color-primary-500));
    border-bottom-right-radius: 5px;
    position: absolute;
    bottom: 0;
    right: 0;
}

.c-setup01-bubble[data-micromodal-trigger] .c-setup01-bubble__img::after {
    content: "";
    display: inline-block;
    width: 21px;
    height: 20px;
    background-color: #3C89B7;
    color: #3C89B7;
    -webkit-mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="21" height="20" fill="none" viewBox="0 0 21 20"><path fill="#3C89B7" d="M15.437 12.728c2.267-3.137 1.99-7.556-.833-10.38-3.131-3.13-8.226-3.13-11.357 0-3.131 3.132-3.131 8.226 0 11.357 2.823 2.824 7.242 3.1 10.38.833l5.087 5.087a1.28 1.28 0 1 0 1.81-1.81l-5.088-5.087Zm-11.004-.21a6.36 6.36 0 0 1 0-8.983 6.36 6.36 0 0 1 8.984 0 6.36 6.36 0 0 1 0 8.984 6.36 6.36 0 0 1-8.984 0Z"/><path fill="#3C89B7" fill-rule="evenodd" d="M9.469 7.43V4H8.326v3.43H4.898v1.143h3.428V12h1.143V8.573h3.43V7.43h-3.43Z" clip-rule="evenodd"/></svg>');
    mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="21" height="20" fill="none" viewBox="0 0 21 20"><path fill="#3C89B7" d="M15.437 12.728c2.267-3.137 1.99-7.556-.833-10.38-3.131-3.13-8.226-3.13-11.357 0-3.131 3.132-3.131 8.226 0 11.357 2.823 2.824 7.242 3.1 10.38.833l5.087 5.087a1.28 1.28 0 1 0 1.81-1.81l-5.088-5.087Zm-11.004-.21a6.36 6.36 0 0 1 0-8.983 6.36 6.36 0 0 1 8.984 0 6.36 6.36 0 0 1 0 8.984 6.36 6.36 0 0 1-8.984 0Z"/><path fill="#3C89B7" fill-rule="evenodd" d="M9.469 7.43V4H8.326v3.43H4.898v1.143h3.428V12h1.143V8.573h3.43V7.43h-3.43Z" clip-rule="evenodd"/></svg>');
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
    transition: all 0.3s ease;
    color: #fff;
    position: absolute;
    bottom: 10px;
    right: 10px;
}

.c-setup01-bubble[data-micromodal-trigger] .c-setup01-bubble__txt {
    flex-basis: 100%;
    margin-top: 8px;
}

@media all and (min-width: 768px) {
    .c-setup01-bubble[data-micromodal-trigger] {
        box-sizing: border-box;
        min-width: 390px;
        cursor: pointer;
        transition: all 0.3s ease;
    }

    .c-setup01-bubble[data-micromodal-trigger]::before {
        border-width: 0 16.5px 33px 16.5px;
        left: 0;
        top: 50%;
        transform: translate(-90%, -50%) rotate(-90deg);
    }

    .c-setup01-bubble[data-micromodal-trigger] .c-setup01-bubble__img {
        width: 200px;
        height: 200px;
    }

    .c-setup01-bubble[data-micromodal-trigger] .c-setup01-bubble__lead {
        margin: 0 0 10px;
    }

    .c-setup01-bubble[data-micromodal-trigger] .c-setup01-bubble__txt {
        margin-top: 10px;
    }
}

@media (hover: hover) and (pointer: fine) {
    .c-setup01-bubble[data-micromodal-trigger]:hover {
        opacity: 0.7;
    }
}

@media all and (min-width: 768px) {
    .c-setup01-bubble.is-col2 {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 40px;
    }

    .c-setup01-bubble.is-col2 .c-setup01-bubble__img {
        order: -1;
    }
}

/* .c-setup01-bubbles
================================================== */
.c-setup01-bubbles {
    display: grid;
    gap: 30px;
    margin-top: 30px;
}

.c-setup01-bubbles .c-setup01-bubble {
    margin: 0;
}

@media all and (min-width: 768px) {
    .c-setup01-bubbles {
        grid-template-columns: 1fr 1fr;
        gap: 40px;
        margin-top: 40px;
    }
}

@media all and (min-width: 768px) and (min-width: 768px) {
    .c-setup01-bubbles .c-setup01-bubble.is-full {
        grid-column: 1/3;
    }
}

/* .c-single01
================================================== */
.c-single01__inner {
    padding-top: var(--section-space--sm);
    padding-bottom: var(--section-space--xl);
}

.c-single01-header {
    border-bottom: 1px solid rgba(var(--color-grayscale-500));
    margin-bottom: 30px;
    padding-bottom: 20px;
}

.c-single01-header__meta {
    margin-bottom: 5px;
}

.c-single01-header__date {
    color: rgb(var(--color-grayscale-800));
    font-size: 1.3rem;
}

.c-single01-header__head {
    font-size: 2.4rem;
    font-weight: var(--font-weight_bold);
    line-height: var(--line-height_snug);
}

.c-single01-detail {
    border-bottom: 1px solid rgba(var(--color-grayscale-500));
    padding-bottom: 40px;
}

@media all and (min-width: 768px) {
    .c-single01-header {
        margin-bottom: 45px;
    }

    .c-single01-header__meta {
        margin-bottom: 14px;
    }

    .c-single01-header__date {
        font-size: 1.5rem;
    }

    .c-single01-header__head {
        font-size: 2.8rem;
    }

    .c-single01-detail {
        padding-bottom: 80px;
    }
}

/* .c-single-content
================================================== */
.c-single-content {
    font-size: 1.5rem;
    overflow: hidden;
}

.c-single-content::after {
    content: "";
    display: block;
    clear: both;
}

.c-single-content>*:first-child {
    margin-top: 0;
}

.c-single-content>*:first-child img {
    margin-top: 0;
}

.c-single-content>*:first-child iframe {
    margin-top: 0;
}

.c-single-content>*:last-child {
    margin-bottom: 0;
}

.c-single-content>*:last-child img {
    margin-bottom: 0;
}

.c-single-content>*:last-child iframe {
    margin-bottom: 0;
}

.c-single-content h1,
.c-single-content h2,
.c-single-content h3,
.c-single-content h4,
.c-single-content ul,
.c-single-content ol {
    clear: both;
}

.c-single-content p {
    max-width: 100%;
    margin: 1em 0;
}

.c-single-content h2 {
    box-sizing: border-box;
    border-bottom: 1px solid rgba(var(--color-grayscale-500));
    font-size: 1.9rem;
    font-weight: var(--font-weight_bold);
    line-height: var(--line-height_snug);
    margin-top: 30px;
    margin-bottom: 20px;
    padding-bottom: 10px;
}

.c-single-content h3 {
    position: relative;
    margin-top: 30px;
    margin-bottom: 15px;
    padding-left: 17px;
    font-size: 1.6rem;
    font-weight: var(--font-weight_bold);
    line-height: var(--line-height_snug);
}

.c-single-content h3:before {
    content: "";
    background: rgb(var(--color-primary-500));
    border-radius: 50%;
    position: absolute;
    top: 0.5em;
    left: 0;
    width: 7px;
    height: 7px;
}

.c-single-content h4 {
    font-size: 1.25em;
}

.c-single-content h5 {
    font-size: 1.8rem;
    font-weight: var(--font-weight_en);
    line-height: var(--line-height_snug);
}

.c-single-content strong {
    font-size: 1.1em;
    font-weight: var(--font-weight_bold);
}

.c-single-content a {
    color: rgb(var(--color-accent-500));
}

.c-single-content a[target=_blank]::after {
    margin-left: 5px;
    content: "";
    display: inline-block;
    width: 14px;
    height: 14px;
    background-color: #3C89B7;
    color: rgb(var(--color-grayscale-800));
    -webkit-mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18 18"><g><path d="M2 0C.91 0 0 .91 0 2v14c0 1.09.91 2 2 2h14c1.09 0 2-.91 2-2v-6h-2v6H2V2h6V0H2Z"/><path d="M11 0v2h3.59l-9.3 9.29L6.7 12.7 16 3.41V7h2V0h-7z"/></g></svg>');
    mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18 18"><g><path d="M2 0C.91 0 0 .91 0 2v14c0 1.09.91 2 2 2h14c1.09 0 2-.91 2-2v-6h-2v6H2V2h6V0H2Z"/><path d="M11 0v2h3.59l-9.3 9.29L6.7 12.7 16 3.41V7h2V0h-7z"/></g></svg>');
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
    transition: all 0.3s ease;
}

.c-single-content a[href*="suzutoh.co.jp"]:not([href*=".pdf"]) {
    font-weight: var(--font-weight_bold);
    text-decoration: none;
}

.c-single-content a[href*="suzutoh.co.jp"]:not([href*=".pdf"])::after {
    margin-left: 5px;
    content: "";
    display: inline-block;
    width: 16px;
    height: 12px;
    background-color: #3C89B7;
    color: rgb(var(--color-primary-500));
    -webkit-mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 12"><path d="M9.53 0 8.21 1.32l4.06 3.76H0v1.84h12.26L8.2 10.68 9.52 12l6.47-6-6.46-6Z"/></svg>');
    mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 12"><path d="M9.53 0 8.21 1.32l4.06 3.76H0v1.84h12.26L8.2 10.68 9.52 12l6.47-6-6.46-6Z"/></svg>');
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
    transition: all 0.3s ease;
}

.c-single-content ul {
    margin: 1em 0;
    padding-left: 1.25em;
}

.c-single-content ul li {
    box-sizing: border-box;
    list-style-type: disc;
    line-height: var(--line-height_snug);
}

.c-single-content ul li::marker {
    color: rgb(var(--color-primary-500));
}

.c-single-content ol {
    line-height: var(--line-height_snug);
    margin: 1em 0;
    padding-left: 0;
    counter-reset: num;
}

.c-single-content ol li {
    box-sizing: border-box;
    counter-increment: num;
    position: relative;
    display: flex;
    align-items: flex-start;
    flex: 1;
}

.c-single-content ol li::before {
    content: counter(num, decimal-leading-zero);
    color: rgb(var(--color-primary-500));
    display: inline-block;
    padding-right: 10px;
    white-space: nowrap;
    font-size: 1.5rem;
    font-weight: var(--font-weight_en);
    letter-spacing: var(--letter-spacing_en);
    min-width: 20px;
}

.c-single-content iframe,
.c-single-content video {
    display: block;
    width: 100%;
    height: 56.25vw;
    margin-top: 40px;
}

.c-single-content blockquote {
    box-sizing: border-box;
    background: rgb(var(--color-grayscale-300));
    position: relative;
    margin: 30px 0;
    padding: 30px 20px;
    clear: both;
}

.c-single-content blockquote *:first-child {
    margin-top: 0;
}

.c-single-content blockquote *:last-child {
    margin-bottom: 0;
}

.c-single-content blockquote h2,
.c-single-content blockquote h3 {
    border: none;
    font-size: 1.6rem;
    padding: 0;
    margin: 20px 0 10px;
}

.c-single-content blockquote h2::before,
.c-single-content blockquote h3::before {
    content: none;
}

.c-single-content img {
    border-radius: 5px;
}

.c-single-content .alignleft {
    display: block;
    margin: 20px auto;
}

.c-single-content .alignright {
    display: block;
    margin: 20px auto;
}

.c-single-content .aligncenter {
    display: block;
    margin: 20px auto;
}

.c-single-content .alignnone {
    margin-top: 20px;
    margin-bottom: 20px;
}

@media all and (min-width: 768px) {
    .c-single-content {
        display: flow-root;
        font-size: 1.6rem;
    }

    .c-single-content h2 {
        margin-top: 60px;
        margin-bottom: 30px;
        padding-bottom: 20px;
        font-size: 2.3rem;
    }

    .c-single-content h3 {
        margin-top: 60px;
        margin-bottom: 20px;
        font-size: 1.8rem;
        padding-left: 20px;
    }

    .c-single-content h3::before {
        height: 10px;
        width: 10px;
    }

    .c-single-content iframe,
    .c-single-content video {
        margin-top: 60px;
        margin-right: auto;
        margin-left: auto;
    }

    .c-single-content blockquote {
        margin: 40px 0 60px;
        padding: 40px 30px;
    }

    .c-single-content blockquote h2,
    .c-single-content blockquote h3 {
        font-size: 1.8rem;
        margin: 30px 0 10px;
    }

    .c-single-content .alignleft {
        float: left;
        margin: 5px 40px 10px 0;
        clear: right;
    }

    .c-single-content .alignleft+.alignleft {
        clear: left;
    }

    .c-single-content .alignleft+.alignright {
        margin-left: 0;
    }

    .c-single-content .alignright {
        float: right;
        margin: 5px 0 10px 40px;
    }

    .c-single-content .aligncenter {
        margin: 40px auto;
        text-align: center;
        clear: both;
    }

    .c-single-content .alignnone {
        margin-top: 40px;
        margin-bottom: 40px;
    }
}

@media (hover: hover) and (pointer: fine) {
    .c-single-content a:hover {
        color: rgb(var(--color-primary-400));
        text-decoration: underline;
    }

    .c-single-content a:hover::after {
        color: rgb(var(--color-primary-400));
    }

    .c-single-content a:hover[href*="suzutoh.co.jp"] {
        text-decoration: none;
    }
}

/* .c-slider01
================================================== */
.c-slider01:not(.is-active) .c-slider01-ui {
    display: none;
}

.c-slider01:not(.is-overflow) .splide__list {
    justify-content: center;
    transform: none !important;
}

@media all and (max-width: 767px) {
    .c-slider01 .splide__track {
        margin: 0 -20px;
    }
}

@media all and (min-width: 768px) {
    .c-slider01 .splide__track {
        margin: 0 calc(50% - 50vw);
    }
}

.c-slider01-ui {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.c-slider01-ui__pagination .splide__pagination__page {
    background: rgba(var(--color-grayscale-500));
    border: none;
    border-radius: 50%;
    padding: 0;
    margin: 0 5px;
    height: 8px;
    width: 8px;
    transition: all 0.3s ease;
}

.c-slider01-ui__pagination .splide__pagination__page.is-active {
    background: rgb(var(--color-primary-500));
}

.c-slider01-ui__arrows {
    display: flex;
    align-items: center;
    margin: 0 5px 0 30px;
}

.c-slider01-ui__arrows .splide__arrow {
    box-sizing: border-box;
    border: none;
    height: 30px;
    width: 36px;
    position: relative;
    transition: all 0.3s ease;
}

.c-slider01-ui__arrows .splide__arrow svg {
    display: none;
}

.c-slider01-ui__arrows .splide__arrow::after {
    content: "";
    display: inline-block;
    width: 36px;
    height: 23px;
    background-color: #8A8A8A;
    color: #8A8A8A;
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg width='38' height='16' viewBox='0 0 38 16' fill='none' xmlns='http://www.w3.org/2000/svg'%3E %3Cpath d='M37.2451 8.79107C37.6831 8.35295 37.6832 7.64276 37.2451 7.20462L30.899 0.858512C30.4627 0.42222 29.7488 0.422207 29.3125 0.858502C29.2332 0.937833 28.9842 1.18675 28.9839 1.65167L28.984 6.87609L1.54823 6.87607C1.09275 6.86683 0.834294 7.1252 0.754967 7.20453C0.318673 7.64082 0.318689 8.35477 0.754981 8.79106C0.834433 8.87051 1.09276 9.12884 1.54824 9.11955L28.984 9.11957L28.9839 14.3439C28.9842 14.809 29.2331 15.0579 29.3124 15.1372C29.7487 15.5735 30.4626 15.5735 30.8989 15.1372L37.2451 8.79107Z' fill='%238A8A8A'/%3E %3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg width='38' height='16' viewBox='0 0 38 16' fill='none' xmlns='http://www.w3.org/2000/svg'%3E %3Cpath d='M37.2451 8.79107C37.6831 8.35295 37.6832 7.64276 37.2451 7.20462L30.899 0.858512C30.4627 0.42222 29.7488 0.422207 29.3125 0.858502C29.2332 0.937833 28.9842 1.18675 28.9839 1.65167L28.984 6.87609L1.54823 6.87607C1.09275 6.86683 0.834294 7.1252 0.754967 7.20453C0.318673 7.64082 0.318689 8.35477 0.754981 8.79106C0.834433 8.87051 1.09276 9.12884 1.54824 9.11955L28.984 9.11957L28.9839 14.3439C28.9842 14.809 29.2331 15.0579 29.3124 15.1372C29.7487 15.5735 30.4626 15.5735 30.8989 15.1372L37.2451 8.79107Z' fill='%238A8A8A'/%3E %3C/svg%3E");
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
    transition: all 0.3s ease;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.c-slider01-ui__arrows .splide__arrow[disabled] {
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
}

.c-slider01-ui__arrows .splide__arrow--prev::after {
    transform: translate(-50%, -50%) scale(-1, 1);
}

.c-slider01-ui__arrows .splide__arrow--next {
    margin-left: 30px;
}

@media all and (min-width: 768px) {
    .c-slider01-ui {
        justify-content: flex-end;
    }

    .c-slider01-ui__pagination .splide__pagination__page {
        height: 10px;
        width: 10px;
    }

    .c-slider01-ui__arrows {
        margin: 0 0 0 50px;
    }
}

@media (hover: hover) and (pointer: fine) {
    .c-slider01-ui__arrows .splide__arrow:hover {
        color: rgb(var(--color-primary-400));
    }
}

/* .c-slider02
================================================== */
.c-slider02:not(.is-overflow)+.c-slider02-thumb {
    display: none;
}

.c-slider02__cap {
    font-size: 1.3rem;
    color: rgb(var(--color-grayscale-800));
    margin-top: 11px;
}

.c-slider02__img {
    text-align: center;
}

.c-slider02-thumb {
    margin-top: 30px;
}

.c-slider02-ui {
    margin-top: 20px;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.c-slider02-ui__pagination {
    display: block !important;
}

.c-slider02-ui__pagination .splide__pagination__page {
    background: rgba(var(--color-grayscale-500));
    border: none;
    border-radius: 50%;
    padding: 0;
    margin: 0 5px;
    height: 8px;
    width: 8px;
    transition: all 0.3s ease;
}

.c-slider02-ui__pagination .splide__pagination__page.is-active {
    background: rgb(var(--color-primary-500));
}

.c-slider02-ui__arrows {
    display: flex;
    align-items: center;
    margin: 0 5px 0 30px;
}

.c-slider02-ui__arrows .splide__arrow {
    box-sizing: border-box;
    border: none;
    height: 30px;
    width: 36px;
    position: relative;
    transition: all 0.3s ease;
}

.c-slider02-ui__arrows .splide__arrow svg {
    display: none;
}

.c-slider02-ui__arrows .splide__arrow::after {
    content: "";
    display: inline-block;
    width: 36px;
    height: 23px;
    background-color: #8A8A8A;
    color: #8A8A8A;
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg width='38' height='16' viewBox='0 0 38 16' fill='none' xmlns='http://www.w3.org/2000/svg'%3E %3Cpath d='M37.2451 8.79107C37.6831 8.35295 37.6832 7.64276 37.2451 7.20462L30.899 0.858512C30.4627 0.42222 29.7488 0.422207 29.3125 0.858502C29.2332 0.937833 28.9842 1.18675 28.9839 1.65167L28.984 6.87609L1.54823 6.87607C1.09275 6.86683 0.834294 7.1252 0.754967 7.20453C0.318673 7.64082 0.318689 8.35477 0.754981 8.79106C0.834433 8.87051 1.09276 9.12884 1.54824 9.11955L28.984 9.11957L28.9839 14.3439C28.9842 14.809 29.2331 15.0579 29.3124 15.1372C29.7487 15.5735 30.4626 15.5735 30.8989 15.1372L37.2451 8.79107Z' fill='%238A8A8A'/%3E %3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg width='38' height='16' viewBox='0 0 38 16' fill='none' xmlns='http://www.w3.org/2000/svg'%3E %3Cpath d='M37.2451 8.79107C37.6831 8.35295 37.6832 7.64276 37.2451 7.20462L30.899 0.858512C30.4627 0.42222 29.7488 0.422207 29.3125 0.858502C29.2332 0.937833 28.9842 1.18675 28.9839 1.65167L28.984 6.87609L1.54823 6.87607C1.09275 6.86683 0.834294 7.1252 0.754967 7.20453C0.318673 7.64082 0.318689 8.35477 0.754981 8.79106C0.834433 8.87051 1.09276 9.12884 1.54824 9.11955L28.984 9.11957L28.9839 14.3439C28.9842 14.809 29.2331 15.0579 29.3124 15.1372C29.7487 15.5735 30.4626 15.5735 30.8989 15.1372L37.2451 8.79107Z' fill='%238A8A8A'/%3E %3C/svg%3E");
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
    transition: all 0.3s ease;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.c-slider02-ui__arrows .splide__arrow[disabled] {
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
}

.c-slider02-ui__arrows .splide__arrow--prev::after {
    transform: translate(-50%, -50%) scale(-1, 1);
}

.c-slider02-ui__arrows .splide__arrow--next {
    margin-left: 30px;
}

@media all and (min-width: 768px) {
    .c-slider02-ui {
        margin-top: 30px;
        justify-content: flex-end;
    }

    .c-slider02-ui__pagination .splide__pagination__page {
        height: 10px;
        width: 10px;
    }

    .c-slider02-ui__arrows {
        margin: 0 0 0 50px;
    }
}

@media (hover: hover) and (pointer: fine) {
    .c-slider02-ui__arrows .splide__arrow:hover {
        color: rgb(var(--color-primary-400));
    }
}

/* .c-step01
================================================== */
.c-step01 {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin: 0 auto 60px;
    position: relative;
    width: 250px;
}

.c-step01:before {
    content: "";
    border-top: 1px solid rgb(var(--color-primary-500));
    position: absolute;
    top: 30px;
    left: 60px;
    right: 60px;
    z-index: -1;
}

.c-step01__item.is-current .c-step01__item-num {
    background: rgb(var(--color-primary-400));
    color: rgb(var(--color-grayscale-200));
}

.c-step01__item-num {
    background: rgba(var(--color-primary-200));
    border: none;
    border-radius: 50%;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    font-size: 1.6rem;
    margin: 0 auto;
    height: 60px;
    width: 60px;
}

.c-step01__item-txt {
    display: block;
    font-size: 1.2rem;
    font-weight: 700;
    line-height: var(--line-height_snug);
    margin-top: 4px;
    text-align: center;
}

@media all and (min-width: 768px) {
    .c-step01 {
        margin-bottom: 80px;
        width: 380px;
    }

    .c-step01:before {
        top: 50px;
        left: 100px;
        right: 100px;
    }

    .c-step01__item-num {
        font-size: 2rem;
        height: 100px;
        width: 100px;
    }

    .c-step01__item-txt {
        font-size: 1.4rem;
        margin-top: 8px;
    }
}

/* .c-tab01
================================================== */
.c-tab01 {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    border-bottom: 1px solid rgba(var(--color-grayscale-500));
}

.c-tab01__item {
    box-sizing: border-box;
    background: rgb(var(--color-grayscale-200));
    border: solid rgba(var(--color-grayscale-500));
    border-width: 1px 1px 0;
    border-radius: 8px 8px 0 0;
    color: rgb(var(--color-grayscale-900));
    font-size: 1.6rem;
    font-weight: var(--font-weight_bold);
    padding: 8px 16px;
    width: 150px;
    text-align: center;
    transition: all 0.3s ease;
}

.c-tab01__item.is-active {
    background: rgb(var(--color-primary-400));
    border: none;
    color: rgb(var(--color-grayscale-200));
}

@media all and (max-width: 767px) {
    .c-tab01.is-nowrap {
        flex-wrap: nowrap;
        justify-content: flex-start;
        overflow-x: auto;
    }

    .c-tab01.is-nowrap .c-tab01__item {
        white-space: nowrap;
        width: auto;
        min-width: 150px;
        flex-shrink: 0;
    }
}

@media all and (min-width: 768px) {
    .c-tab01__item {
        font-size: 2rem;
        padding: 16px 20px;
        width: 360px;
    }
}

/* c-table01
========================================== */
.c-table01 th,
.c-table01 td {
    box-sizing: border-box;
    border-color: rgba(var(--color-grayscale-500));
    border-style: solid;
    border-width: 0 0 1px;
    font-size: 1.5rem;
    padding: 20px 0;
}

.c-table01 th {
    text-align: left;
    font-weight: var(--font-weight_bold);
}

.c-table01 tr:first-child th,
.c-table01 tr:first-child td {
    padding-top: 0;
}

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

    .c-table01 table,
    .c-table01 thead,
    .c-table01 tbody,
    .c-table01 tr,
    .c-table01 th,
    .c-table01 td {
        display: block;
    }

    .c-table01 th {
        padding-bottom: 0;
        border-width: 0;
    }

    .c-table01 td {
        padding-top: 0;
    }

    .c-table01 tr:first-child th {
        padding-top: 0;
    }
}

@media all and (min-width: 768px) {

    .c-table01 table th,
    .c-table01 table td {
        line-height: var(--line-height_snug);
    }

    .c-table01 table th {
        width: 234px;
        font-size: 1.6rem;
        padding-right: 20px;
        vertical-align: middle;
    }
}

/* .l-breadcrumb
================================================ */
.l-breadcrumb-list {
    display: flex;
    flex-wrap: wrap;
    padding-bottom: 20px;
}

.l-breadcrumb-list__item {
    color: rgb(var(--color-grayscale-800));
    display: inline-block;
    font-size: 1.1rem;
    font-weight: var(--font-weight_bold);
    line-height: var(--line-height_snug);
    vertical-align: top;
}

.l-breadcrumb-list__item+.l-breadcrumb-list__item {
    margin-left: 8px;
}

.l-breadcrumb-list__item+.l-breadcrumb-list__item::before {
    content: "";
    display: inline-block;
    width: 8px;
    height: 5px;
    background-color: #3C89B7;
    color: rgb(var(--color-grayscale-800));
    -webkit-mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 10 6"><path d="M8.9 0 5 3.88 1.1 0 0 1.02 5 6l5-4.98L8.9 0Z"/></svg>');
    mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 10 6"><path d="M8.9 0 5 3.88 1.1 0 0 1.02 5 6l5-4.98L8.9 0Z"/></svg>');
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
    transition: all 0.3s ease;
    margin: 0 8px 1px 0;
    transform: rotate(-90deg);
}

.l-breadcrumb-list__item span {
    color: rgb(var(--color-grayscale-900));
}

.l-breadcrumb-list__txt {
    transition: all 0.3s ease;
    font-weight: 500;
}

@media all and (max-width: 767px) {
    .l-breadcrumb-list {
        white-space: nowrap;
        flex-wrap: nowrap;
        -webkit-overflow-scrolling: touch;
        overflow: auto;
    }

    .l-breadcrumb-list::-webkit-scrollbar {
        display: none;
    }
}

@media all and (min-width: 768px) {
    .l-breadcrumb-list {
        padding: 0 40px 25px;
        max-width: 100%;
        justify-content: flex-end;
    }

    .l-breadcrumb-list__txt {
        font-size: 1.3rem;
    }
}

@media (hover: hover) and (pointer: fine) {
    .l-breadcrumb-list__item a:hover {
        color: rgb(var(--color-primary-400));
    }
}

/* .l-cookie
================================================== */
.l-cookie {
    box-sizing: border-box;
    background: rgba(244, 244, 244, 0.9);
    -webkit-backdrop-filter: blur(10px);
    backdrop-filter: blur(10px);
    border: 3px 0 0 3px;
    position: fixed;
    z-index: 2000;
    right: 0;
    bottom: 20px;
    width: calc(100% - 20px);
    max-width: 655px;
}

.l-cookie__inner {
    display: grid;
    grid-template-columns: 1fr 110px;
    align-items: center;
    gap: 0 8px;
    padding: 15px;
}

.l-cookie__txt {
    font-size: 1.2rem;
    font-weight: 500;
}

.l-cookie__btns {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 0 5px;
    max-width: 110px;
}

.l-cookie a {
    display: inline-block;
    position: relative;
}

.l-cookie a::after {
    content: "";
    display: inline-block;
    width: 15px;
    height: 15px;
    background-color: #8A8A8A;
    color: #8A8A8A;
    -webkit-mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18 18"><g><path d="M2 0C.91 0 0 .91 0 2v14c0 1.09.91 2 2 2h14c1.09 0 2-.91 2-2v-6h-2v6H2V2h6V0H2Z"/><path d="M11 0v2h3.59l-9.3 9.29L6.7 12.7 16 3.41V7h2V0h-7z"/></g></svg>');
    mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18 18"><g><path d="M2 0C.91 0 0 .91 0 2v14c0 1.09.91 2 2 2h14c1.09 0 2-.91 2-2v-6h-2v6H2V2h6V0H2Z"/><path d="M11 0v2h3.59l-9.3 9.29L6.7 12.7 16 3.41V7h2V0h-7z"/></g></svg>');
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
    transition: all 0.3s ease;
    margin: 0 2px -3px;
}

.l-cookie__deny,
.l-cookie__accept {
    box-sizing: border-box;
    border-style: solid;
    border-width: 1px;
    display: block;
    font-size: 1.4rem;
    font-weight: var(--font_weight_bold);
    line-height: var(--line-height_snug);
    letter-spacing: var(--letter-spacing_base);
    padding: 8px;
    text-align: center;
}

.l-cookie__deny {
    border-color: rgb(var(--color-primary-500));
    background: rgb(var(--color-grayscale-200));
    color: rgb(var(--color-primary-500));
}

.l-cookie__accept {
    border-color: rgb(var(--color-primary-500));
    background: rgb(var(--color-primary-500));
    color: rgb(var(--color-grayscale-200));
}

@media all and (min-width: 768px) {
    .l-cookie {
        border: 5px 0 0 5px;
        background: rgba(244, 244, 244, 0.7);
    }

    .l-cookie__inner {
        display: grid;
        grid-template-columns: 1fr 150px;
        align-items: center;
        gap: 0 14px;
        padding: 20px 30px;
    }

    .l-cookie__txt {
        font-size: 1.4rem;
    }

    .l-cookie__btns {
        max-width: 150px;
    }

    .l-cookie__deny,
    .l-cookie__accept {
        font-size: 1.4rem;
    }
}

@media (hover: hover) and (pointer: fine) {
    .l-cookie a:hover {
        text-decoration: none;
    }

    .l-cookie__deny,
    .l-cookie__accept {
        transition: all 0.3s ease;
    }

    .l-cookie__deny:hover,
    .l-cookie__accept:hover {
        border-color: rgb(var(--color-primary-400));
        background: rgb(var(--color-primary-400));
        color: rgb(var(--color-grayscale-200));
    }
}

/* .l-footer
================================================ */
.l-footer {
    position: relative;
}

.l-footer__inner {
    padding-top: 50px;
    padding-bottom: 30px;
}

@media all and (min-width: 768px) {
    .l-footer__inner {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        padding-top: 100px;
        padding-bottom: 80px;
    }
}

/* .l-footer-info
================================================ */
.l-footer-info {
    margin-bottom: 50px;
}

.l-footer-info__logo {
    margin-bottom: 25px;
    height: 27px;
    width: 168px;
}

.l-footer-info__logo svg {
    display: block;
    height: 100%;
    width: 100%;
}

.l-footer-info-set+.l-footer-info-set {
    margin-top: 22px;
}

.l-footer-info-set__head {
    font-weight: 400;
    line-height: var(--line-height_snug);
    letter-spacing: var(--letter-spacing_snug);
    margin-bottom: 4px;
}

.l-footer-info-set__address {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    font-size: 1.1rem;
    line-height: var(--line-height_snug);
    letter-spacing: var(--letter-spacing_snug);
}

.l-footer-info-set__address-in {
    text-decoration: underline !important;
    transition: all 0.3s ease;
}

.l-footer-info-set__address-in::before {
    content: "";
    display: inline-block;
    width: 9px;
    height: 14px;
    background-color: #3C89B7;
    color: rgb(var(--color-primary-500));
    -webkit-mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 9 14"><path d="M4.5 0C1.97.06-.05 2.29 0 4.99c0 .84.19 1.67.57 2.41.03.05.05.1.07.14L4.5 14l3.86-6.44s.05-.1.08-.15c.37-.74.57-1.58.56-2.42C9.05 2.29 7.03.06 4.5 0Zm0 7.16c-1.11-.03-1.98-1-1.96-2.17-.02-1.18.86-2.15 1.96-2.17 1.11.03 1.98.99 1.96 2.17.02 1.18-.86 2.15-1.96 2.17Z"/></svg>');
    mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 9 14"><path d="M4.5 0C1.97.06-.05 2.29 0 4.99c0 .84.19 1.67.57 2.41.03.05.05.1.07.14L4.5 14l3.86-6.44s.05-.1.08-.15c.37-.74.57-1.58.56-2.42C9.05 2.29 7.03.06 4.5 0Zm0 7.16c-1.11-.03-1.98-1-1.96-2.17-.02-1.18.86-2.15 1.96-2.17 1.11.03 1.98.99 1.96 2.17.02 1.18-.86 2.15-1.96 2.17Z"/></svg>');
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
    transition: all 0.3s ease;
    margin: 0 3px 2px 0;
    vertical-align: middle;
    transition: none;
}

.l-footer-info-set__txt {
    font-size: 1.1rem;
    line-height: var(--line-height_snug);
    letter-spacing: var(--letter-spacing_snug);
}

.l-footer-info-set__txt-em {
    font-weight: var(--font-weight_bold);
}

@media all and (min-width: 768px) {
    .l-footer-info {
        margin: 0 40px 56px 0;
    }

    .l-footer-info__logo {
        margin-bottom: 40px;
        height: 32px;
        width: 168px;
    }

    .l-footer-info-set+.l-footer-info-set {
        margin-top: 30px;
    }

    .l-footer-info-set__head {
        margin-bottom: 6px;
    }

    .l-footer-info-set__address {
        font-size: 1.3rem;
    }

    .l-footer-info-set__address-in::before {
        height: 15px;
        width: 10px;
    }

    .l-footer-info-set__txt {
        font-size: 1.3rem;
    }
}

@media all and (min-width: 1560px) {
    .l-footer-info {
        margin-right: 60px;
    }
}

@media (hover: hover) and (pointer: fine) {
    .l-footer-info-set__address-in:hover {
        color: rgb(var(--color-primary-400));
    }

    .l-footer-info-set__address-in:hover::before {
        color: #3C89B7;
    }
}

/* .l-footer-nav
================================================ */
@media all and (min-width: 768px) {
    .l-footer-nav__wrap {
        grid-column: 2/4;
        grid-row: 1/2;
        margin-bottom: 20px;
    }
}

@media all and (min-width: 768px) {
    .l-footer-nav {
        display: grid;
        grid-template-columns: repeat(3, 190px);
        grid-template-rows: repeat(5, auto);
        gap: 35px 50px;
        justify-content: end;
    }

    .l-footer-nav__item.is-col2 {
        grid-column: 2/3;
    }

    .l-footer-nav__item.is-col3 {
        grid-column: 3/4;
    }

    .l-footer-nav__item.is-row-full {
        grid-row: 1/-1;
    }

    .l-footer-nav__item.is-row-2-end {
        grid-row: 2/-1;
    }

    .l-footer-nav__item-link {
        box-sizing: border-box;
        border-bottom: 1px solid rgba(var(--color-grayscale-500));
        display: block;
        font-size: 1.6rem;
        font-weight: var(--font-weight_bold);
        line-height: var(--line-height_snug);
        letter-spacing: var(--letter-spacing_snug);
        padding-bottom: 15px;
        transition: color 0.3s ease;
        color: #8A8A8A;
    }

    .l-footer-nav__child-wrap {
        padding-top: 12px;
    }

    .l-footer-nav__child-item+.l-footer-nav__child-item {
        margin-top: 3px;
    }

    .l-footer-nav__child-item-link {
        color: rgb(var(--color-grayscale-800));
        display: inline-block;
        font-size: 1.5rem;
        font-weight: 400;
        line-height: var(--line-height_snug);
        letter-spacing: var(--letter-spacing_snug);
        font-feature-settings: "palt"1;
        transition: color 0.3s ease;
    }
}

@media all and (min-width: 1560px) {
    .l-footer-nav {
        grid-template-columns: repeat(3, 220px);
        gap: 45px 60px;
    }
}

@media (hover: hover) and (pointer: fine) {
    .l-footer-nav__item-link:hover {
        color: rgb(var(--color-primary-400));
    }

    .l-footer-nav__child-item-link:hover {
        color: rgb(var(--color-primary-400));
    }
}

/* .l-footer-btn
================================================ */
@media all and (min-width: 768px) {
    .l-footer-btn__wrap {
        grid-column: 1/4;
        grid-row: 2/3;
        display: grid;
        grid-template-columns: repeat(3, 1fr);
    }
}

@media all and (min-width: 768px) {
    .l-footer-btn {
        border-style: solid;
        border-color: rgba(var(--color-grayscale-500));
        border-width: 1px 0;
    }

    .l-footer-btn+.l-footer-btn .l-footer-btn__in::before {
        content: "";
        border-left: 1px solid rgba(var(--color-grayscale-500));
        position: absolute;
        top: 32px;
        left: 0;
        bottom: 32px;
        z-index: -1;
    }

    .l-footer-btn__in {
        box-sizing: border-box;
        display: flex;
        flex-direction: column;
        justify-content: center;
        min-height: 136px;
        padding: 30px 70px 30px 40px;
        position: relative;
        transition: all 0.3s ease;
    }

    .l-footer-btn__ico {
        color: rgb(var(--color-grayscale-800));
        position: absolute;
        top: 50%;
        right: 40px;
        transform: translateY(-50%);
        width: 16px;
    }

    .l-footer-btn__ico::after {
        content: "";
        display: inline-block;
        width: 16px;
        height: 16px;
        background-color: #8A8A8A;
        color: #8A8A8A;
        -webkit-mask-image: url("data:image/svg+xml,%3Csvg width='17' height='17' viewBox='0 0 17 17' fill='none' xmlns='http://www.w3.org/2000/svg'%3E %3Cpath d='M1 8.5H16M16 8.5L8.5 16M16 8.5L8.5 1' stroke='%238A8A8A' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E %3C/svg%3E");
        mask-image: url("data:image/svg+xml,%3Csvg width='17' height='17' viewBox='0 0 17 17' fill='none' xmlns='http://www.w3.org/2000/svg'%3E %3Cpath d='M1 8.5H16M16 8.5L8.5 16M16 8.5L8.5 1' stroke='%238A8A8A' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E %3C/svg%3E");
        -webkit-mask-repeat: no-repeat;
        mask-repeat: no-repeat;
        -webkit-mask-position: center;
        mask-position: center;
        transition: all 0.3s ease;
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
    }

    .l-footer-btn__sub {
        color: rgb(var(--color-grayscale-800));
        font-size: 1.5rem;
        font-weight: var(--font-weight_bold);
        line-height: var(--line-height_snug);
        letter-spacing: var(--letter-spacing_snug);
        margin-bottom: 3px;
        transition: all 0.3s ease;
    }

    .l-footer-btn__head {
        font-size: 1.8rem;
        font-weight: var(--font-weight_bold);
        line-height: var(--line-height_snug);
        letter-spacing: var(--letter-spacing_snug);
    }
}

@media (hover: hover) and (pointer: fine) {
    .l-footer-btn__in:hover {
        box-shadow: 0 0 0 2px rgb(var(--color-grayscale-200)), 0 15px 30px rgba(var(--color-grayscale-900), 0.12);
        background: rgb(var(--color-grayscale-200));
        color: rgb(var(--color-primary-400));
    }

    .l-footer-btn__in:hover .l-footer-btn__ico {
        color: rgb(var(--color-primary-400));
    }

    .l-footer-btn__in:hover .l-footer-btn__ico::after {
        -webkit-animation: icoMove 0.6s ease-in-out;
        animation: icoMove 0.6s ease-in-out;
    }

    .l-footer-btn__in:hover .l-footer-btn__sub {
        color: rgb(var(--color-primary-400));
    }
}

/* .l-footer-sub
================================================ */
.l-footer-sub {
    border-top: 1px solid rgba(var(--color-grayscale-500));
}

.l-footer-sub-link {
    display: flex;
    flex-wrap: wrap;
    padding: 26px 0 20px;
}

.l-footer-sub-link__item {
    font-size: 1.2rem;
    font-weight: var(--font-weight_bold);
    line-height: var(--line-height_snug);
    letter-spacing: var(--letter-spacing_snug);
    margin: 0 20px 10px 0;
}

.l-footer-sub-link__in {
    transition: all 0.3s ease;
}

.l-footer-sub-link__in[target]::after {
    content: "";
    display: inline-block;
    width: 9px;
    height: 9px;
    background-color: #3C89B7;
    color: rgb(var(--color-grayscale-800));
    -webkit-mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18 18"><g><path d="M2 0C.91 0 0 .91 0 2v14c0 1.09.91 2 2 2h14c1.09 0 2-.91 2-2v-6h-2v6H2V2h6V0H2Z"/><path d="M11 0v2h3.59l-9.3 9.29L6.7 12.7 16 3.41V7h2V0h-7z"/></g></svg>');
    mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18 18"><g><path d="M2 0C.91 0 0 .91 0 2v14c0 1.09.91 2 2 2h14c1.09 0 2-.91 2-2v-6h-2v6H2V2h6V0H2Z"/><path d="M11 0v2h3.59l-9.3 9.29L6.7 12.7 16 3.41V7h2V0h-7z"/></g></svg>');
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
    transition: all 0.3s ease;
    margin-left: 3px;
}

.l-footer-sub__cr {
    color: rgb(var(--color-grayscale-800));
    font-size: 1.2rem;
}

@media all and (min-width: 768px) {
    .l-footer-sub {
        border: none;
        grid-column: 1/4;
        grid-row: 3/4;
        display: flex;
        align-items: center;
        justify-content: space-between;
        padding-top: 78px;
    }

    .l-footer-sub-link {
        flex: 1;
        padding: 0;
        margin: 0 80px -15px 0;
    }

    .l-footer-sub-link__item {
        font-size: 1.3rem;
        margin: 0 25px 15px 0;
    }

    .l-footer-sub-link__in[target]::after {
        margin-left: 4px;
    }
}

@media (hover: hover) and (pointer: fine) {
    .l-footer-sub-link__in:hover {
        color: rgb(var(--color-primary-400));
    }

    .l-footer-sub-link__in:hover::after {
        color: #3C89B7;
    }
}

/* .l-header
================================================ */
.l-header {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    min-width: 320px;
    z-index: 2000;
}

@media all and (min-width: 768px) {
    .l-header {
        min-width: var(--contents_width_with_padding);
    }

    .l-header.is-nav-open .l-header-menu,
    .l-header.is-nav-open .l-header-search {
        display: none;
    }
}

/* .l-header-info
================================================== */
.l-header-info {
    box-sizing: border-box;
    background: #fff;
    display: flex;
    justify-content: flex-end;
    align-items: center;
    flex-wrap: wrap;
    height: var(--header_height);
    padding: 14px 72px 14px 20px;
    position: relative;
    z-index: 3;
}

.l-header-info__logo {
    margin-left: 0;
    margin-right: auto;
    width: 160px;
}

.l-header-info__logo svg {
    display: block;
    height: 100%;
    width: 100%;
}

@media all and (min-width: 768px) {
    .l-header-info {
        padding: 20px 105px 24px 40px;
    }

    .l-header-info__logo {
        width: 246px;
    }
}

/* .l-header-menu
================================================== */
.l-header-menu {
    display: none;
}

@media all and (min-width: 1360px) {
    .l-header-menu {
        display: flex;
        flex-wrap: wrap;
    }

    .l-header-menu__item+.l-header-menu__item {
        margin-left: 24px;
    }

    .l-header-menu__item-in {
        box-sizing: border-box;
        border: none;
        display: block;
        font-size: 1.4rem;
        font-weight: var(--font-weight_bold);
        line-height: var(--line-height_snug);
        letter-spacing: var(--letter-spacing_snug);
        padding: 0;
        position: relative;
        transition: all 0.3s ease;
    }

    .l-header-menu__item-in[class*=trigger]::after {
        content: "";
        display: inline-block;
        width: 10px;
        height: 6px;
        background-color: #3C89B7;
        color: rgb(var(--color-grayscale-800));
        -webkit-mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 10 6"><path d="M8.9 0 5 3.88 1.1 0 0 1.02 5 6l5-4.98L8.9 0Z"/></svg>');
        mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 10 6"><path d="M8.9 0 5 3.88 1.1 0 0 1.02 5 6l5-4.98L8.9 0Z"/></svg>');
        -webkit-mask-repeat: no-repeat;
        mask-repeat: no-repeat;
        -webkit-mask-position: center;
        mask-position: center;
        transition: all 0.3s ease;
        position: absolute;
        bottom: -11px;
        left: 50%;
        transform: translateX(-50%);
    }

    .l-header-menu__item-in.is-active {
        color: rgb(var(--color-primary-400));
    }

    .l-header-menu__item-in.is-active::after {
        color: rgb(var(--color-primary-400));
    }

    .l-header-menu__child-wrap {
        box-sizing: border-box;
        background: rgb(var(--color-grayscale-200));
        box-shadow: 0 15px 30px -15px rgba(var(--color-grayscale-900), 0.12);
        padding-bottom: 76px;
        position: fixed;
        top: var(--header_height);
        left: 0;
        right: 0;
        transition: visibility 0s linear, all 0.3s ease;
    }

    .l-header-menu__child-wrap:not(.is-active) {
        opacity: 0;
        pointer-events: none;
        visibility: hidden;
    }

    .l-header-menu__child-head-in {
        display: inline-flex;
        align-items: center;
        font-size: 2rem;
        font-weight: var(--font-weight_bold);
        line-height: var(--line_height_snug);
        transition: all 0.3s ease;
    }

    .l-header-menu__child-head-ico {
        background: rgba(var(--color-primary-200));
        border-radius: 50%;
        color: rgb(var(--color-primary-500));
        display: block;
        margin-left: 15px;
        height: 40px;
        width: 40px;
        position: relative;
        transition: all 0.3s ease;
    }

    .l-header-menu__child-head-ico::after {
        content: "";
        display: inline-block;
        width: 16px;
        height: 12px;
        background-color: #3C89B7;
        color: #3C89B7;
        -webkit-mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 12"><path d="M9.53 0 8.21 1.32l4.06 3.76H0v1.84h12.26L8.2 10.68 9.52 12l6.47-6-6.46-6Z"/></svg>');
        mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 12"><path d="M9.53 0 8.21 1.32l4.06 3.76H0v1.84h12.26L8.2 10.68 9.52 12l6.47-6-6.46-6Z"/></svg>');
        -webkit-mask-repeat: no-repeat;
        mask-repeat: no-repeat;
        -webkit-mask-position: center;
        mask-position: center;
        transition: all 0.3s ease;
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        transition: none;
    }

    .l-header-menu__child {
        border-top: 1px solid rgba(var(--color-grayscale-500));
        margin-top: 20px;
        padding-top: 30px;
        display: grid;
        grid-template-columns: repeat(4, 1fr);
        gap: 30px 32px;
    }

    .l-header-menu__child-item-link {
        display: block;
        transition: all 0.3s ease;
    }

    .l-header-menu__child-item-img {
        border-radius: 5px;
        overflow: hidden;
    }

    .l-header-menu__child-item-txt {
        box-sizing: border-box;
        font-size: 1.6rem;
        font-weight: var(--font-weight_bold);
        line-height: var(--line_height_snug);
        margin-top: 5px;
        padding: 0 36px 0 0;
        position: relative;
    }

    .l-header-menu__child-item-ico {
        position: absolute;
        top: 50%;
        right: 10px;
        transform: translateY(-50%);
        width: 16px;
    }

    .l-header-menu__child-item-ico::after {
        content: "";
        display: inline-block;
        width: 16px;
        height: 12px;
        background-color: #3C89B7;
        color: rgb(var(--color-grayscale-800));
        -webkit-mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 12"><path d="M9.53 0 8.21 1.32l4.06 3.76H0v1.84h12.26L8.2 10.68 9.52 12l6.47-6-6.46-6Z"/></svg>');
        mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 12"><path d="M9.53 0 8.21 1.32l4.06 3.76H0v1.84h12.26L8.2 10.68 9.52 12l6.47-6-6.46-6Z"/></svg>');
        -webkit-mask-repeat: no-repeat;
        mask-repeat: no-repeat;
        -webkit-mask-position: center;
        mask-position: center;
        transition: all 0.3s ease;
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        transition: none;
    }
}

@media all and (min-width: 1400px) {
    .l-header-menu__item+.l-header-menu__item {
        margin-left: 30px;
    }

    .l-header-menu__item-in {
        font-size: 1.6rem;
    }

    .l-header-menu__child-head-in {
        font-size: 2.3rem;
    }

    .l-header-menu__child-item-txt {
        font-size: 1.8rem;
    }
}

@media (hover: hover) and (pointer: fine) {
    .l-header-menu__item-in:hover {
        color: rgb(var(--color-primary-400));
    }

    .l-header-menu__item-in:hover::after {
        color: rgb(var(--color-primary-400));
    }

    .l-header-menu__child-head-in:hover {
        color: rgb(var(--color-primary-400));
    }

    .l-header-menu__child-head-in:hover .l-header-menu__child-head-ico {
        background: rgb(var(--color-primary-400));
        color: rgb(var(--color-grayscale-200));
    }

    .l-header-menu__child-head-in:hover .l-header-menu__child-head-ico::after {
        -webkit-animation: icoMove 0.6s ease-in-out;
        animation: icoMove 0.6s ease-in-out;
    }

    .l-header-menu__child-item .l-header-menu__child-item-link:hover {
        color: rgb(var(--color-primary-400));
    }

    .l-header-menu__child-item .l-header-menu__child-item-link:hover .l-header-menu__child-item-ico::after {
        -webkit-animation: icoMove 0.6s ease-in-out;
        animation: icoMove 0.6s ease-in-out;
        color: #3C89B7;
    }
}

/* .l-header-search
================================================== */
@media all and (min-width: 768px) {
    .l-header-search {
        margin-left: 30px;
    }

    .l-header-search__btn {
        box-sizing: border-box;
        background: rgba(var(--color-primary-200));
        border: none;
        border-radius: 50%;
        color: rgb(var(--color-primary-500));
        height: 50px;
        width: 50px;
        position: relative;
        transition: all 0.3s ease;
    }

    .l-header-search__btn::after {
        content: "";
        display: inline-block;
        width: 20px;
        height: 20px;
        background-color: #3C89B7;
        color: #3C89B7;
        -webkit-mask-image: url("data:image/svg+xml,%3Csvg width='20' height='20' viewBox='0 0 20 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3E %3Cpath d='M19 19L14.65 14.65M17 9C17 13.4183 13.4183 17 9 17C4.58172 17 1 13.4183 1 9C1 4.58172 4.58172 1 9 1C13.4183 1 17 4.58172 17 9Z' stroke='%233C89B7' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E %3C/svg%3E ");
        mask-image: url("data:image/svg+xml,%3Csvg width='20' height='20' viewBox='0 0 20 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3E %3Cpath d='M19 19L14.65 14.65M17 9C17 13.4183 13.4183 17 9 17C4.58172 17 1 13.4183 1 9C1 4.58172 4.58172 1 9 1C13.4183 1 17 4.58172 17 9Z' stroke='%233C89B7' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E %3C/svg%3E ");
        -webkit-mask-repeat: no-repeat;
        mask-repeat: no-repeat;
        -webkit-mask-position: center;
        mask-position: center;
        transition: all 0.3s ease;
        transition: none;
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
    }

    .l-header-search__content {
        box-sizing: border-box;
        background: rgb(var(--color-grayscale-200));
        box-shadow: 0 15px 30px -15px rgba(var(--color-grayscale-900), 0.12);
        padding-bottom: 80px;
        position: fixed;
        top: var(--header_height);
        left: 0;
        right: 0;
        transition: visibility 0s linear, all 0.3s ease;
    }

    .l-header-search__content:not(.is-active) {
        opacity: 0;
        pointer-events: none;
        visibility: hidden;
    }
}

@media (hover: hover) and (pointer: fine) {
    .l-header-search__btn:hover {
        background: rgb(var(--color-primary-400));
        color: rgb(var(--color-grayscale-200));
    }
}

/* .l-header-contact
================================================== */
@media all and (min-width: 768px) {
    .l-header-contact {
        margin-left: 15px;
    }

    .l-header-contact__in {
        box-sizing: border-box;
        background: rgb(var(--color-primary-500));
        border-radius: 50px;
        color: rgb(var(--color-grayscale-200));
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        justify-content: center;
        font-size: 1.4rem;
        font-weight: var(--font-weight_bold);
        line-height: var(--line-height_snug);
        letter-spacing: var(--letter-spacing_snug);
        min-height: 50px;
        padding: 8px 30px;
        position: relative;
        transition: all 0.3s ease;
    }

    .l-header-contact__in::before {
        content: "";
        display: inline-block;
        width: 20px;
        height: 20px;
        background-color: #fff;
        color: #fff;
        -webkit-mask-image: url("data:image/svg+xml,%3Csvg width='20' height='20' viewBox='0 0 20 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3E %3Cpath d='M18.3333 5C18.3333 4.08333 17.5833 3.33333 16.6666 3.33333H3.33329C2.41663 3.33333 1.66663 4.08333 1.66663 5M18.3333 5V15C18.3333 15.9167 17.5833 16.6667 16.6666 16.6667H3.33329C2.41663 16.6667 1.66663 15.9167 1.66663 15V5M18.3333 5L9.99996 10.8333L1.66663 5' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E %3C/svg%3E");
        mask-image: url("data:image/svg+xml,%3Csvg width='20' height='20' viewBox='0 0 20 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3E %3Cpath d='M18.3333 5C18.3333 4.08333 17.5833 3.33333 16.6666 3.33333H3.33329C2.41663 3.33333 1.66663 4.08333 1.66663 5M18.3333 5V15C18.3333 15.9167 17.5833 16.6667 16.6666 16.6667H3.33329C2.41663 16.6667 1.66663 15.9167 1.66663 15V5M18.3333 5L9.99996 10.8333L1.66663 5' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E %3C/svg%3E");
        -webkit-mask-repeat: no-repeat;
        mask-repeat: no-repeat;
        -webkit-mask-position: center;
        mask-position: center;
        transition: all 0.3s ease;
        margin-right: 6px;
        transition: none;
    }
}

@media all and (min-width: 1400px) {
    .l-header-contact__in {
        font-size: 1.5rem;
    }
}

@media (hover: hover) and (pointer: fine) {
    .l-header-contact__in:hover {
        background: rgb(var(--color-primary-400));
    }
}

/* .l-nav-btn
================================================== */
.l-nav-btn {
    background: none;
    border: none;
    cursor: pointer;
    padding: 0;
    position: absolute;
    right: 20px;
    width: 40px;
    height: 36px;
    transition: all 0.3s ease;
}

.l-nav-btn__line {
    background: #363636;
    position: absolute;
    left: 50%;
    width: 6px;
    height: 6px;
    transition: transform 0.3s, width 0.3s, height 0.3s;
}

.l-nav-btn__line:nth-child(1) {
    top: 0px;
    transform: translateX(calc(-50% + 6px));
}

.l-nav-btn__line:nth-child(2) {
    top: 0px;
    transform: translateX(calc(-50% - 6px));
}

.l-nav-btn__line:nth-child(3) {
    top: 12px;
    transform: translateX(calc(-50% + 6px));
}

.l-nav-btn__line:nth-child(4) {
    top: 12px;
    transform: translateX(calc(-50% - 6px));
}

.l-nav-btn.is-open .l-nav-btn__line {
    height: 2px;
    width: 24px;
    transition: transform 0.2s, width 0.3s 0.2s, height 0.3s 0.2s;
}

.l-nav-btn.is-open .l-nav-btn__line:nth-child(1) {
    top: 7px;
    transform: translateX(-50%) rotate(-45deg);
}

.l-nav-btn.is-open .l-nav-btn__line:nth-child(2) {
    top: 7px;
    transform: translateX(-50%);
    opacity: 0;
}

.l-nav-btn.is-open .l-nav-btn__line:nth-child(3) {
    top: 7px;
    transform: translateX(-50%) rotate(45deg);
}

.l-nav-btn.is-open .l-nav-btn__line:nth-child(4) {
    top: 7px;
    transform: translateX(-50%);
    opacity: 0;
}

.l-nav-btn__txt {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    font-size: 1.1rem;
    text-align: center;
}

@media all and (min-width: 768px) {
    .l-nav-btn {
        right: 40px;
        width: 50px;
        height: 50px;
    }

    .l-nav-btn__line:nth-child(1) {
        top: 6px;
    }

    .l-nav-btn__line:nth-child(2) {
        top: 6px;
    }

    .l-nav-btn__line:nth-child(3) {
        top: 18px;
    }

    .l-nav-btn__line:nth-child(4) {
        top: 18px;
    }

    .l-nav-btn.is-open .l-nav-btn__line:nth-child(1) {
        top: 11px;
    }

    .l-nav-btn.is-open .l-nav-btn__line:nth-child(2) {
        top: 11px;
    }

    .l-nav-btn.is-open .l-nav-btn__line:nth-child(3) {
        top: 11px;
    }

    .l-nav-btn.is-open .l-nav-btn__line:nth-child(4) {
        top: 11px;
    }

    .l-nav-btn__txt {
        bottom: 6px;
        font-size: 1.2rem;
    }
}

@media (hover: hover) and (pointer: fine) {
    .l-nav-btn:hover {
        color: rgb(var(--color-primary-400));
    }
}

/* .l-nav
================================================ */
.l-nav {
    box-sizing: border-box;
    background: #fff;
    height: 100vh;
    height: 100dvh;
    width: 100%;
    min-width: 320px;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 2;
    overflow: auto;
    -webkit-overflow-scrolling: touch;
    opacity: 0;
    pointer-events: none;
    visibility: hidden;
    transition: all 0.3s ease;
}

.l-nav::-webkit-scrollbar {
    display: none;
}

.l-nav.is-open {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
}

.l-nav__inner {
    box-sizing: border-box;
    padding-top: var(--header_height);
}

@media all and (min-width: 768px) {
    .l-nav {
        width: 100%;
        min-width: auto;
        padding: 0;
    }

    .l-nav__inner {
        display: grid;
        grid-template-columns: 1fr 330px;
        gap: 24px 100px;
        padding-top: calc(var(--header_height) + 122px);
        padding-bottom: 120px;
    }
}

/* .l-nav-list
================================================== */
@media all and (max-width: 767px) {
    .l-nav-list {
        margin: 20px 0 40px;
    }

    .l-nav-list__item {
        border-style: solid;
        border-color: rgba(var(--color-grayscale-500));
        border-width: 1px 0;
    }

    .l-nav-list__item+.l-nav-list__item {
        border-width: 0 0 1px;
    }

    .l-nav-list__item-tit {
        position: relative;
    }

    .l-nav-list__item-tit-toggle {
        border: none;
        padding: 0;
        position: absolute;
        top: 50%;
        right: 0;
        transform: translateY(-50%);
        height: 50px;
        width: 50px;
    }

    .l-nav-list__item-tit-toggle::before,
    .l-nav-list__item-tit-toggle::after {
        content: "";
        position: absolute;
        top: 50%;
        right: 12px;
        transform: translate(0, -50%);
        width: 14px;
        height: 0;
        border-top: 2px solid rgb(var(--color-grayscale-800));
        transition: all 0.3s ease;
    }

    .l-nav-list__item-tit-toggle::after {
        transform: translate(0, -50%) rotate(90deg);
    }

    .l-nav-list__item-tit-toggle.is-active::after {
        transform: translate(0, -50%) rotate(0);
    }

    .l-nav-list__item-tit-toggle+.l-nav-list__item-tit-in {
        padding-right: 10px;
        margin-right: 50px;
    }

    .l-nav-list__item-tit-toggle+.l-nav-list__item-tit-in::after {
        display: none;
    }

    .l-nav-list__item-tit-in {
        box-sizing: border-box;
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        font-size: 1.5rem;
        font-weight: var(--font-weight_bold);
        line-height: var(--line-height_snug);
        letter-spacing: var(--letter-spacing_snug);
        padding: 14px 40px 14px 10px;
    }

    .l-nav-list__item-tit-in::after {
        content: "";
        display: inline-block;
        width: 16px;
        height: 12px;
        background-color: #3C89B7;
        color: rgb(var(--color-grayscale-800));
        -webkit-mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 12"><path d="M9.53 0 8.21 1.32l4.06 3.76H0v1.84h12.26L8.2 10.68 9.52 12l6.47-6-6.46-6Z"/></svg>');
        mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 12"><path d="M9.53 0 8.21 1.32l4.06 3.76H0v1.84h12.26L8.2 10.68 9.52 12l6.47-6-6.46-6Z"/></svg>');
        -webkit-mask-repeat: no-repeat;
        mask-repeat: no-repeat;
        -webkit-mask-position: center;
        mask-position: center;
        transition: all 0.3s ease;
        position: absolute;
        top: 50%;
        right: 10px;
        transform: translateY(-50%);
        transition: none;
    }

    .l-nav-list__child-wrap {
        box-sizing: border-box;
        background: rgb(var(--color-grayscale-300));
        display: none;
        padding: 20px;
    }

    .l-nav-list__child {
        display: grid;
        gap: 16px 20px;
    }

    .l-nav-list__child.is-col2 {
        grid-template-columns: repeat(2, 1fr);
    }

    .l-nav-list__child-item {
        font-size: 1.3rem;
        font-weight: var(--font-weight_bold);
        line-height: var(--line-height_snug);
        letter-spacing: var(--letter-spacing_snug);
        font-feature-settings: "palt"1;
    }

    .l-nav-list__child-item-in {
        color: rgb(var(--color-grayscale-800));
    }
}

@media all and (min-width: 768px) {
    .l-nav-list {
        display: grid;
        grid-template-columns: repeat(3, 190px);
        grid-template-rows: repeat(5, auto);
        gap: 35px 50px;
    }

    .l-nav-list__item.is-col2 {
        grid-column: 2/3;
    }

    .l-nav-list__item.is-col3 {
        grid-column: 3/4;
    }

    .l-nav-list__item.is-row-full {
        grid-row: 1/-1;
    }

    .l-nav-list__item.is-row-2-end {
        grid-row: 2/-1;
    }

    .l-nav-list__item-tit-toggle {
        display: none;
    }

    .l-nav-list__item-tit-in {
        box-sizing: border-box;
        border-bottom: 1px solid rgba(var(--color-grayscale-500));
        display: block;
        font-size: 1.8rem;
        font-weight: var(--font-weight_bold);
        line-height: var(--line-height_snug);
        letter-spacing: var(--letter-spacing_snug);
        padding-bottom: 15px;
        transition: color 0.3s ease;
    }

    .l-nav-list__child-wrap {
        display: block !important;
        padding-top: 15px;
    }

    .l-nav-list__child-item {
        font-size: 1.5rem;
        font-weight: var(--font-weight_bold);
        line-height: var(--line-height_snug);
        letter-spacing: var(--letter-spacing_snug);
        font-feature-settings: "palt"1;
    }

    .l-nav-list__child-item+.l-nav-list__child-item {
        margin-top: 5px;
    }

    .l-nav-list__child-item-in {
        color: rgb(var(--color-grayscale-800));
        transition: color 0.3s ease;
    }
}

@media (hover: hover) and (pointer: fine) {
    .l-nav-list__item-tit-in:hover {
        color: rgb(var(--color-primary-400));
    }

    .l-nav-list__child-item-in:hover {
        color: rgb(var(--color-primary-400));
    }
}

/* .l-nav-info
================================================ */
@media all and (min-width: 768px) {
    .l-nav-info-set+.l-nav-info-set {
        margin-top: 30px;
    }

    .l-nav-info-set__head {
        font-weight: var(--font-weight_bold);
        line-height: var(--line-height_snug);
        letter-spacing: var(--letter-spacing_snug);
        margin-bottom: 6px;
    }

    .l-nav-info-set__address {
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        font-size: 1.3rem;
        line-height: var(--line-height_snug);
        letter-spacing: var(--letter-spacing_snug);
    }

    .l-nav-info-set__address-in {
        text-decoration: underline !important;
        transition: all 0.3s ease;
    }

    .l-nav-info-set__address-in::before {
        content: "";
        display: inline-block;
        width: 10px;
        height: 15px;
        background-color: #3C89B7;
        color: rgb(var(--color-primary-500));
        -webkit-mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 9 14"><path d="M4.5 0C1.97.06-.05 2.29 0 4.99c0 .84.19 1.67.57 2.41.03.05.05.1.07.14L4.5 14l3.86-6.44s.05-.1.08-.15c.37-.74.57-1.58.56-2.42C9.05 2.29 7.03.06 4.5 0Zm0 7.16c-1.11-.03-1.98-1-1.96-2.17-.02-1.18.86-2.15 1.96-2.17 1.11.03 1.98.99 1.96 2.17.02 1.18-.86 2.15-1.96 2.17Z"/></svg>');
        mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 9 14"><path d="M4.5 0C1.97.06-.05 2.29 0 4.99c0 .84.19 1.67.57 2.41.03.05.05.1.07.14L4.5 14l3.86-6.44s.05-.1.08-.15c.37-.74.57-1.58.56-2.42C9.05 2.29 7.03.06 4.5 0Zm0 7.16c-1.11-.03-1.98-1-1.96-2.17-.02-1.18.86-2.15 1.96-2.17 1.11.03 1.98.99 1.96 2.17.02 1.18-.86 2.15-1.96 2.17Z"/></svg>');
        -webkit-mask-repeat: no-repeat;
        mask-repeat: no-repeat;
        -webkit-mask-position: center;
        mask-position: center;
        transition: all 0.3s ease;
        margin: 0 3px 2px 0;
        vertical-align: middle;
        transition: none;
    }

    .l-nav-info-set__txt {
        font-size: 1.3rem;
        line-height: var(--line-height_snug);
        letter-spacing: var(--letter-spacing_snug);
    }

    .l-nav-info-set__txt-em {
        font-weight: var(--font-weight_bold);
    }
}

@media (hover: hover) and (pointer: fine) {
    .l-nav-info-set__address-in:hover {
        color: rgb(var(--color-primary-400));
    }

    .l-nav-info-set__address-in:hover::before {
        color: #3C89B7;
    }
}

/* .l-nav-sub
================================================ */
.l-nav-sub {
    box-sizing: border-box;
}

.l-nav-sub-btn {
    border-style: solid;
    border-color: rgba(var(--color-grayscale-500));
    border-width: 1px 0;
}

.l-nav-sub-btn+.l-nav-sub-btn {
    border-width: 0 0 1px;
}

.l-nav-sub-btn__in {
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    justify-content: center;
    min-height: 80px;
    padding: 19px 50px 19px 20px;
    position: relative;
    transition: all 0.3s ease;
}

.l-nav-sub-btn__ico {
    color: rgb(var(--color-grayscale-800));
    position: absolute;
    top: 50%;
    right: 20px;
    transform: translateY(-50%);
    width: 16px;
}

.l-nav-sub-btn__ico::after {
    content: "";
    display: inline-block;
    width: 16px;
    height: 16px;
    background-color: #8A8A8A;
    color: #8A8A8A;
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg width='17' height='17' viewBox='0 0 17 17' fill='none' xmlns='http://www.w3.org/2000/svg'%3E %3Cpath d='M1 8.5H16M16 8.5L8.5 16M16 8.5L8.5 1' stroke='%238A8A8A' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E %3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg width='17' height='17' viewBox='0 0 17 17' fill='none' xmlns='http://www.w3.org/2000/svg'%3E %3Cpath d='M1 8.5H16M16 8.5L8.5 16M16 8.5L8.5 1' stroke='%238A8A8A' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E %3C/svg%3E");
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
    transition: all 0.3s ease;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.l-nav-sub-btn__sub {
    color: rgb(var(--color-grayscale-800));
    font-size: 1.2rem;
    font-weight: var(--font-weight_bold);
    line-height: var(--line-height_snug);
    letter-spacing: var(--letter-spacing_snug);
    margin-bottom: 2px;
    transition: all 0.3s ease;
}

.l-nav-sub-btn__head {
    font-size: 1.5rem;
    font-weight: var(--font-weight_bold);
    line-height: var(--line-height_snug);
    letter-spacing: var(--letter-spacing_snug);
}

.l-nav-sub-contact {
    margin: 30px auto 0;
}

.l-nav-sub-contact__in {
    box-sizing: border-box;
    background: rgb(var(--color-primary-500));
    border-radius: 50px;
    color: rgb(var(--color-grayscale-200));
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    font-size: 1.8rem;
    font-weight: var(--font-weight_bold);
    line-height: var(--line-height_snug);
    letter-spacing: var(--letter-spacing_snug);
    min-height: 60px;
    padding: 8px 50px;
    position: relative;
}

.l-nav-sub-contact__in::before {
    content: "";
    display: inline-block;
    width: 24px;
    height: 24px;
    background-color: #ffffff;
    color: #ffffff;
    -webkit-mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 30 30"><path d="M3.23 6.3c-.12 0-.22.1-.22.22v16.97c0 .12.1.22.22.22h23.55c.12 0 .22-.1.22-.22V6.52c0-.12-.1-.22-.22-.22H3.23Zm-1.98.22c0-1.09.89-1.98 1.98-1.98h23.55c1.09 0 1.98.89 1.98 1.98v16.97c0 1.09-.89 1.98-1.98 1.98H3.23c-1.09 0-1.98-.89-1.98-1.98V6.52Z"/><path d="m25.15 20.62-6.4-5.27 6.43-6.01c.36-.33.38-.89.04-1.25a.884.884 0 0 0-1.25-.04l-7.47 6.98c-.91.75-2.21.75-3.12 0L6.01 8.05a.885.885 0 0 0-1.22 1.28l6.35 6.01-6.31 5.27c-.37.31-.42.87-.11 1.24s.87.42 1.24.11l6.5-5.43a4.202 4.202 0 0 0 4.94 0l6.61 5.44c.38.31.93.26 1.24-.12.31-.38.26-.93-.12-1.24Z"/></svg>');
    mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 30 30"><path d="M3.23 6.3c-.12 0-.22.1-.22.22v16.97c0 .12.1.22.22.22h23.55c.12 0 .22-.1.22-.22V6.52c0-.12-.1-.22-.22-.22H3.23Zm-1.98.22c0-1.09.89-1.98 1.98-1.98h23.55c1.09 0 1.98.89 1.98 1.98v16.97c0 1.09-.89 1.98-1.98 1.98H3.23c-1.09 0-1.98-.89-1.98-1.98V6.52Z"/><path d="m25.15 20.62-6.4-5.27 6.43-6.01c.36-.33.38-.89.04-1.25a.884.884 0 0 0-1.25-.04l-7.47 6.98c-.91.75-2.21.75-3.12 0L6.01 8.05a.885.885 0 0 0-1.22 1.28l6.35 6.01-6.31 5.27c-.37.31-.42.87-.11 1.24s.87.42 1.24.11l6.5-5.43a4.202 4.202 0 0 0 4.94 0l6.61 5.44c.38.31.93.26 1.24-.12.31-.38.26-.93-.12-1.24Z"/></svg>');
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
    transition: all 0.3s ease;
    margin-right: 5px;
}

.l-nav-sub-contact__in::after {
    content: "";
    display: inline-block;
    width: 16px;
    height: 12px;
    background-color: #3C89B7;
    color: #3C89B7;
    -webkit-mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 12"><path d="M9.53 0 8.21 1.32l4.06 3.76H0v1.84h12.26L8.2 10.68 9.52 12l6.47-6-6.46-6Z"/></svg>');
    mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 12"><path d="M9.53 0 8.21 1.32l4.06 3.76H0v1.84h12.26L8.2 10.68 9.52 12l6.47-6-6.46-6Z"/></svg>');
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
    transition: all 0.3s ease;
    position: absolute;
    top: 50%;
    right: 24px;
    transform: translateY(-50%);
}

@media all and (max-width: 767px) {
    .l-nav-sub {
        background: rgb(var(--color-grayscale-300));
        margin: 0 -20px;
        padding: 40px 20px;
    }

    .l-nav-sub-btn {
        margin: 0 auto;
        width: 315px;
    }
}

@media all and (min-width: 768px) {
    .l-nav-sub {
        grid-column: 1/3;
        display: flex;
        flex-wrap: wrap;
    }

    .l-nav-sub-btn__wrap {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        width: 100%;
    }

    .l-nav-sub-btn {
        border-style: solid;
        border-color: rgba(var(--color-grayscale-500));
        border-width: 1px 0;
    }

    .l-nav-sub-btn+.l-nav-sub-btn {
        border-width: 1px 0;
    }

    .l-nav-sub-btn+.l-nav-sub-btn .l-nav-sub-btn__in::before {
        content: "";
        border-left: 1px solid rgba(var(--color-grayscale-500));
        position: absolute;
        top: 32px;
        left: 0;
        bottom: 32px;
        z-index: -1;
    }

    .l-nav-sub-btn__in {
        min-height: 100px;
        padding: 20px 70px 20px 30px;
    }

    .l-nav-sub-btn__ico {
        right: 30px;
    }

    .l-nav-sub-btn__sub {
        font-size: 1.5rem;
        margin-bottom: 3px;
    }

    .l-nav-sub-btn__head {
        font-size: 1.8rem;
    }

    .l-nav-sub-link {
        flex: 1;
        display: flex;
        flex-wrap: wrap;
        margin: 70px 80px 0 0;
    }

    .l-nav-sub-link__item {
        font-size: 1.3rem;
        font-weight: var(--font-weight_bold);
        line-height: var(--line-height_snug);
        letter-spacing: var(--letter-spacing_snug);
        margin: 0 25px 15px 0;
    }

    .l-nav-sub-link__in {
        transition: all 0.3s ease;
    }

    .l-nav-sub-link__in[target]::after {
        content: "";
        display: inline-block;
        width: 9px;
        height: 9px;
        background-color: #3C89B7;
        color: rgb(var(--color-grayscale-800));
        -webkit-mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18 18"><g><path d="M2 0C.91 0 0 .91 0 2v14c0 1.09.91 2 2 2h14c1.09 0 2-.91 2-2v-6h-2v6H2V2h6V0H2Z"/><path d="M11 0v2h3.59l-9.3 9.29L6.7 12.7 16 3.41V7h2V0h-7z"/></g></svg>');
        mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18 18"><g><path d="M2 0C.91 0 0 .91 0 2v14c0 1.09.91 2 2 2h14c1.09 0 2-.91 2-2v-6h-2v6H2V2h6V0H2Z"/><path d="M11 0v2h3.59l-9.3 9.29L6.7 12.7 16 3.41V7h2V0h-7z"/></g></svg>');
        -webkit-mask-repeat: no-repeat;
        mask-repeat: no-repeat;
        -webkit-mask-position: center;
        mask-position: center;
        transition: all 0.3s ease;
        margin-left: 4px;
    }

    .l-nav-sub__cr {
        color: rgb(var(--color-grayscale-800));
        font-size: 1.2rem;
        margin-top: 72px;
    }
}

@media (hover: hover) and (pointer: fine) {
    .l-nav-sub-btn__in:hover {
        box-shadow: 0 0 0 2px rgb(var(--color-grayscale-200)), 0 15px 30px rgba(var(--color-grayscale-900), 0.12);
        background: rgb(var(--color-grayscale-200));
        color: rgb(var(--color-primary-400));
    }

    .l-nav-sub-btn__in:hover .l-nav-sub-btn__ico {
        color: rgb(var(--color-primary-400));
    }

    .l-nav-sub-btn__in:hover .l-nav-sub-btn__ico::after {
        -webkit-animation: icoMove 0.6s ease-in-out;
        animation: icoMove 0.6s ease-in-out;
    }

    .l-nav-sub-btn__in:hover .l-nav-sub-btn__sub {
        color: rgb(var(--color-primary-400));
    }

    .l-nav-sub-link__in:hover {
        color: rgb(var(--color-primary-400));
    }

    .l-nav-sub-link__in:hover::after {
        color: #3C89B7;
    }
}

/* .l-nav-overlay
================================================ */
.l-nav-overlay {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(var(--color-grayscale-900), 0.15);
    z-index: 1000;
}

/* .l-ie-attention
================================================ */
.l-ie-attention {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #fff;
    z-index: 9999;
    font-weight: 700;
    text-align: center;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    padding: 0 20px;
    box-sizing: border-box;
}

.l-ie-attention__txt {
    font-size: 3rem;
    margin-bottom: 18px;
}

.l-ie-attention__note {
    color: #989898;
}

.l-ie-attention__note .l-ie-attention__note-link {
    display: inline-block;
}

.l-ie-attention__note-link {
    font-size: 1.8rem;
    border-bottom: 1px solid;
    position: relative;
    margin-right: 25px;
    display: inline-block;
}

.l-ie-attention__note-link::after {
    content: "";
    position: absolute;
    right: -18px;
    top: 13px;
    width: 11px;
    height: 11px;
    background: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2212%22%20height%3D%2212%22%20viewBox%3D%220%200%2012%2012%22%3E%20%3Cg%20id%3D%22link%22%20transform%3D%22translate(0.5%200.5)%22%3E%20%3Crect%20id%3D%22%E9%95%B7%E6%96%B9%E5%BD%A2_23829%22%20data-name%3D%22%E9%95%B7%E6%96%B9%E5%BD%A2%2023829%22%20width%3D%228%22%20height%3D%228%22%20transform%3D%22translate(3)%22%20fill%3D%22none%22%20stroke%3D%22%23989898%22%20stroke-width%3D%221%22%2F%3E%20%3Cpath%20id%3D%22%E3%83%91%E3%82%B9_4323%22%20data-name%3D%22%E3%83%91%E3%82%B9%204323%22%20d%3D%22M688%2C718.025h-6v-6%22%20transform%3D%22translate(-682%20-707.025)%22%20fill%3D%22none%22%20stroke%3D%22%23989898%22%20stroke-width%3D%221%22%2F%3E%20%3C%2Fg%3E%3C%2Fsvg%3E") no-repeat center/100%;
}

/* .l-loading
================================================== */
@-webkit-keyframes animLoadingIco {
    to {
        stroke-dashoffset: 0;
    }
}

@keyframes animLoadingIco {
    to {
        stroke-dashoffset: 0;
    }
}

@-webkit-keyframes animHide {
    to {
        opacity: 0;
    }
}

@keyframes animHide {
    to {
        opacity: 0;
    }
}

.l-loading {
    position: fixed;
    top: 0;
    left: 0;
    height: 100vh;
    height: 100dvh;
    width: 100vw;
    z-index: 9999;
}

.l-loading.is-animated .l-loading__line-col {
    transform: translateY(0);
}

.l-loading.is-end {
    transition: all 0.3s ease;
    opacity: 0;
    visibility: hidden;
    transition-delay: 1.5s;
}

.l-loading.is-end .l-loading__line-col {
    transform: translateY(-100%);
    transition: transform 0.9s var(--easeInOutQuart);
}

.l-loading.is-end .l-loading__line-col:nth-child(2) {
    transition-delay: 0.1s;
    transition-duration: 0.95s;
}

.l-loading.is-end .l-loading__line-col:nth-child(3) {
    transition-delay: 0.2s;
    transition-duration: 1s;
}

.l-loading.is-end .l-loading__line-col:nth-child(4) {
    transition-delay: 0.3s;
    transition-duration: 1.05s;
}

.l-loading.is-end .l-loading__line-col:nth-child(5) {
    transition-delay: 0.4s;
    transition-duration: 1.1s;
}

.l-loading.is-end .l-loading__line-col:nth-child(6) {
    transition-delay: 0.5s;
    transition-duration: 1.15s;
}

.l-loading.is-end .l-loading__line-col:nth-child(7) {
    transition-delay: 0.6s;
    transition-duration: 1.2s;
}

.l-loading.is-end .l-loading__grid-col {
    transform: translateY(-100%);
    transition: transform 0.9s var(--easeInOutQuart);
}

.l-loading.is-end .l-loading__grid-col:nth-child(2) {
    transition-delay: 0.1s;
    transition-duration: 0.95s;
}

.l-loading.is-end .l-loading__grid-col:nth-child(3) {
    transition-delay: 0.2s;
    transition-duration: 1s;
}

.l-loading.is-end .l-loading__grid-col:nth-child(4) {
    transition-delay: 0.3s;
    transition-duration: 1.05s;
}

.l-loading.is-end .l-loading__grid-col:nth-child(5) {
    transition-delay: 0.4s;
    transition-duration: 1.1s;
}

.l-loading.is-end .l-loading__grid-col:nth-child(6) {
    transition-delay: 0.5s;
    transition-duration: 1.15s;
}

.l-loading.is-end .l-loading__grid-col:nth-child(7) {
    transition-delay: 0.6s;
    transition-duration: 1.2s;
}

.l-loading.is-hidden {
    opacity: 0;
    visibility: hidden;
}

.l-loading__grid {
    z-index: -1;
}

.l-loading__grid-col {
    background: rgb(var(--color-grayscale-200));
    border: none !important;
    transform: translateY(0);
}

.l-loading__line-col {
    transform: translateY(-100%);
    transition: transform 0.3s var(--easeInOutExpo);
}

.l-loading__line-col:nth-child(2) {
    transition-delay: 0.1s;
}

.l-loading__line-col:nth-child(3) {
    transition-delay: 0.2s;
}

.l-loading__line-col:nth-child(4) {
    transition-delay: 0.3s;
}

.l-loading__line-col:nth-child(5) {
    transition-delay: 0.4s;
}

.l-loading__line-col:nth-child(6) {
    transition-delay: 0.5s;
}

.l-loading__line-col:nth-child(7) {
    transition-delay: 0.6s;
}

/* .l-main-img HOME
================================================ */
.l-main-img {
    overflow: hidden;
    position: relative;
}

.l-main-img.is-animated .l-main-img-copy__en-line span {
    transform: translateY(0);
}

.l-main-img.is-animated .l-main-img-copy__ja {
    opacity: 1;
}

.l-main-img__inner {
    box-sizing: border-box;
    padding: 41vw 20px 0;
    position: relative;
}

.l-main-img-slider {
    position: absolute !important;
    top: 0;
}

.l-main-img-slider .splide__track {
    overflow: hidden;
}

.l-main-img-slider__video {
    height: 20vw;
    max-height: 220px;
    width: 20vw;
    max-width: 220px;
    overflow: hidden;
    position: absolute;
    bottom: 0;
    right: 0;
    transform: translate(99%, 99%);
}

/*.l-main-img-slider__video::after {
    content: "";
    background: #63a3b7;
    display: block;
    opacity: 0.7;
    position: absolute;
    top: 0;
    bottom: 0;
    width: 100%;
}*/

.l-main-img-slider__video video,
.l-main-img-slider__video img {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}

.l-main-img__video {
    border-radius: 5px 0 0 5px;
    margin: 25px -20px 0 auto;
    overflow: hidden;
    position: relative;
    width: 89.33vw;
    z-index: -1;
}

.l-main-img__video::before {
    content: "";
    display: block;
    padding-top: 81.8181818182%;
}

.l-main-img__video::after {
    content: "";
    background: rgb(var(--color-primary-500));
    display: block;
    mix-blend-mode: screen;
    opacity: 0.7;
    position: absolute;
    top: 0;
    bottom: 0;
    width: 100%;
}

.l-main-img__video video,
.l-main-img__video img {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}

.l-main-img-copy__en-line {
    font-size: 0;
    margin-bottom: 42px;
}

.l-main-img-copy__en-line:nth-child(2) {
    margin-top: -26px;
}

.l-main-img-copy__en-line span {
    font-size: clamp(2.8rem, 0.617rem + 4.755vw, 10.4rem);
    line-height: normal;
    font-weight: 600;
}

.l-main-img-copy__ja {
    font-weight: var(--font-weight_bold);
    line-height: var(--line-height_snug);
    letter-spacing: var(--letter-spacing_snug);
    opacity: 0;
    transition: opacity 0.6s ease;
    transition-delay: 1.2s;
}

@media all and (min-width: 768px) {
    .l-main-img__inner {
        display: flex;
        flex-direction: column;
        justify-content: flex-end;
        min-height: 520px;
        height: calc(100vh - var(--header_height));
        max-height: 42.18vw;
        padding: 21vw 88px 0.8vw;
    }

    .l-main-img-slider {
        top: 0;
        min-width: 330px;
    }

    .l-main-img-slider__video {
        height: 11.4vw;
        width: 11.4vw;
    }

    .l-main-img__video {
        margin: 0;
        position: absolute;
        right: 0;
        top: 0;
        bottom: 0;
        width: 51.56vw;
        min-width: 625px;
    }

    .l-main-img-copy {
        position: relative;
    }

    .l-main-img-copy__en-line:nth-child(2) {
        margin-top: max(-4vw, -77px);
    }

    .l-main-img-copy__en-line span {
        font-size: clamp(8rem, 0.282rem + 4.63vw, 15.7rem);
    }

    .l-main-img-copy__ja {
        font-size: clamp(1.4rem, 0.064rem + 1.061vw, 2.1rem);
        position: absolute;
        bottom: min(3vw, 58px);
        left: calc(clamp(10.4rem, 0.282rem + 8.03vw, 15.7rem) * 4.8);
    }

    .l-main-img-grid__col:nth-child(3) {
        border: none !important;
    }
}

/* .l-sub-img
================================================ */
.l-sub-img {
    position: relative;
}

.l-sub-img__inner {
    box-sizing: border-box;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    height: 200px;
    padding-top: 20px;
    padding-bottom: 20px;
    position: relative;
}

.l-sub-img__inner.is-col {
    flex-direction: column;
    flex-wrap: nowrap;
}

.l-sub-img__head {
    text-align: center;
    font-size: 2.4rem;
    font-weight: var(--font-weight_bold);
    line-height: var(--line-height_snug);
    letter-spacing: var(--letter-spacing_snug);
}

.l-sub-img__cat {
    display: inline-block;
    background: #fff;
    color: rgb(var(--color-primary-500));
    padding: 3px 20px;
    box-sizing: border-box;
    border: 1px solid rgb(var(--color-primary-500));
    border-radius: 5px;
    font-size: 1.3rem;
    font-weight: var(--font-weight_bold);
    line-height: var(--line-height_snug);
    letter-spacing: var(--letter-spacing_snug);
    margin-bottom: 10px;
}

.l-sub-img__sub {
    display: inline-block;
    font-weight: var(--font-weight_bold);
    line-height: var(--line-height_snug);
    letter-spacing: var(--letter-spacing_snug);
    color: rgb(var(--color-grayscale-800));
    margin-top: 10px;
}

@media all and (min-width: 768px) {
    .l-sub-img__inner {
        height: 240px;
        padding-top: 60px;
        padding-bottom: 60px;
    }

    .l-sub-img__head {
        font-size: 3.8rem;
    }

    .l-sub-img__cat {
        font-size: 1.5rem;
    }

    .l-sub-img__sub {
        font-size: 1.5rem;
        margin-top: 20px;
    }
}

/* .l-sub-img02
================================================ */
.l-sub-img02 {
    position: relative;
    z-index: 1;
}

.l-sub-img02__inner {
    box-sizing: border-box;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    height: 200px;
    padding-top: 20px;
    padding-bottom: 20px;
    position: relative;
}

.l-sub-img02__img {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    z-index: -2;
    width: 61.33vw;
}

.l-sub-img02__img img {
    height: 100%;
    width: 100%;
   
    object-fit: contain;
}

.l-sub-img02__en {
    font-size: 3.6rem;
    margin-bottom: 8px;
}

.l-sub-img02__head {
    font-size: 1.9rem;
    font-weight: var(--font-weight_bold);
    line-height: var(--line-height_snug);
    letter-spacing: var(--letter-spacing_snug);
}

@media all and (min-width: 768px) {
    .l-sub-img02__inner {
        align-items: flex-end;
        height: 400px;
        padding-top: 30px;
        padding-bottom: 30px;
    }

    .l-sub-img02__img {
        width: 78.12vw;
        min-width: 1000px;
        max-width: 1510px;
    }

    .l-sub-img02__en {
        font-size: 6.7rem;
        margin-bottom: 5px;
    }

    .l-sub-img02__head {
        font-size: 2.8rem;
    }
}

/* .l-sidebar
================================================== */
.js-c-anime-elem[data-anime=fadein-up],
.js-c-anime-elem [data-anime=fadein-up] {
    opacity: 0;
    transform: translateY(30px);
    transition: all 0.6s ease;
}

.js-c-anime-elem.is-animated[data-anime=fadein-up],
.js-c-anime-elem.is-animated [data-anime=fadein-up] {
    opacity: 1;
    transform: translateY(0);
}

.js-c-anime-elem[data-anime=fadein-left],
.js-c-anime-elem [data-anime=fadein-left] {
    opacity: 0;
    transform: translateX(-30px);
    transition: all 0.6s ease;
}

.js-c-anime-elem.is-animated[data-anime=fadein-left],
.js-c-anime-elem.is-animated [data-anime=fadein-left] {
    opacity: 1;
    transform: translateX(0);
}

.js-c-anime-elem[data-anime=fadein-right],
.js-c-anime-elem [data-anime=fadein-right] {
    opacity: 0;
    transform: translateX(30px);
    transition: all 0.6s ease;
}

.js-c-anime-elem.is-animated[data-anime=fadein-right],
.js-c-anime-elem.is-animated [data-anime=fadein-right] {
    opacity: 1;
    transform: translateX(0);
}

.js-c-anime-elem[data-anime=cover-up],
.js-c-anime-elem [data-anime=cover-up] {
    position: relative;
    overflow: hidden;
}

.js-c-anime-elem[data-anime=cover-up]::after,
.js-c-anime-elem [data-anime=cover-up]::after {
    content: "";
    background: rgba(var(--color-primary-400), 0.4);
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    z-index: 1;
    transition: all 0.8s var(--easeInOutExpo);
}

.js-c-anime-elem.is-animated[data-anime=cover-up]::after,
.js-c-anime-elem.is-animated [data-anime=cover-up]::after {
    transform: translateY(-100%);
}

.js-c-anime-elem[data-anime-delay="0.1"],
.js-c-anime-elem [data-anime-delay="0.1"] {
    transition-delay: 0.1s;
}

.js-c-anime-elem[data-anime=cover-up][data-anime-delay="0.1"]::after,
.js-c-anime-elem [data-anime=cover-up][data-anime-delay="0.1"]::after {
    transition-delay: 0.1s;
}

.js-c-anime-elem[data-anime-delay="0.2"],
.js-c-anime-elem [data-anime-delay="0.2"] {
    transition-delay: 0.2s;
}

.js-c-anime-elem[data-anime=cover-up][data-anime-delay="0.2"]::after,
.js-c-anime-elem [data-anime=cover-up][data-anime-delay="0.2"]::after {
    transition-delay: 0.2s;
}

.js-c-anime-elem[data-anime-delay="0.3"],
.js-c-anime-elem [data-anime-delay="0.3"] {
    transition-delay: 0.3s;
}

.js-c-anime-elem[data-anime=cover-up][data-anime-delay="0.3"]::after,
.js-c-anime-elem [data-anime=cover-up][data-anime-delay="0.3"]::after {
    transition-delay: 0.3s;
}

.js-c-anime-elem[data-anime-delay="0.4"],
.js-c-anime-elem [data-anime-delay="0.4"] {
    transition-delay: 0.4s;
}

.js-c-anime-elem[data-anime=cover-up][data-anime-delay="0.4"]::after,
.js-c-anime-elem [data-anime=cover-up][data-anime-delay="0.4"]::after {
    transition-delay: 0.4s;
}

.js-c-anime-elem[data-anime-delay="0.5"],
.js-c-anime-elem [data-anime-delay="0.5"] {
    transition-delay: 0.5s;
}

.js-c-anime-elem[data-anime=cover-up][data-anime-delay="0.5"]::after,
.js-c-anime-elem [data-anime=cover-up][data-anime-delay="0.5"]::after {
    transition-delay: 0.5s;
}

.js-c-anime-elem[data-anime-delay="0.6"],
.js-c-anime-elem [data-anime-delay="0.6"] {
    transition-delay: 0.6s;
}

.js-c-anime-elem[data-anime=cover-up][data-anime-delay="0.6"]::after,
.js-c-anime-elem [data-anime=cover-up][data-anime-delay="0.6"]::after {
    transition-delay: 0.6s;
}

.js-c-anime-elem[data-anime-delay="0.7"],
.js-c-anime-elem [data-anime-delay="0.7"] {
    transition-delay: 0.7s;
}

.js-c-anime-elem[data-anime=cover-up][data-anime-delay="0.7"]::after,
.js-c-anime-elem [data-anime=cover-up][data-anime-delay="0.7"]::after {
    transition-delay: 0.7s;
}

.js-c-anime-elem[data-anime-delay="0.8"],
.js-c-anime-elem [data-anime-delay="0.8"] {
    transition-delay: 0.8s;
}

.js-c-anime-elem[data-anime=cover-up][data-anime-delay="0.8"]::after,
.js-c-anime-elem [data-anime=cover-up][data-anime-delay="0.8"]::after {
    transition-delay: 0.8s;
}

.js-c-anime-elem[data-anime-delay="0.9"],
.js-c-anime-elem [data-anime-delay="0.9"] {
    transition-delay: 0.9s;
}

.js-c-anime-elem[data-anime=cover-up][data-anime-delay="0.9"]::after,
.js-c-anime-elem [data-anime=cover-up][data-anime-delay="0.9"]::after {
    transition-delay: 0.9s;
}

.js-c-anime-elem[data-anime-delay="1"],
.js-c-anime-elem [data-anime-delay="1"] {
    transition-delay: 1s;
}

.js-c-anime-elem[data-anime=cover-up][data-anime-delay="1"]::after,
.js-c-anime-elem [data-anime=cover-up][data-anime-delay="1"]::after {
    transition-delay: 1s;
}

.js-c-anime-elem[data-anime-delay="1.1"],
.js-c-anime-elem [data-anime-delay="1.1"] {
    transition-delay: 1.1s;
}

.js-c-anime-elem[data-anime=cover-up][data-anime-delay="1.1"]::after,
.js-c-anime-elem [data-anime=cover-up][data-anime-delay="1.1"]::after {
    transition-delay: 1.1s;
}

.js-c-anime-elem[data-anime-delay="1.2"],
.js-c-anime-elem [data-anime-delay="1.2"] {
    transition-delay: 1.2s;
}

.js-c-anime-elem[data-anime=cover-up][data-anime-delay="1.2"]::after,
.js-c-anime-elem [data-anime=cover-up][data-anime-delay="1.2"]::after {
    transition-delay: 1.2s;
}

.js-c-anime-elem[data-anime-delay="1.3"],
.js-c-anime-elem [data-anime-delay="1.3"] {
    transition-delay: 1.3s;
}

.js-c-anime-elem[data-anime=cover-up][data-anime-delay="1.3"]::after,
.js-c-anime-elem [data-anime=cover-up][data-anime-delay="1.3"]::after {
    transition-delay: 1.3s;
}

.js-c-anime-elem[data-anime-delay="1.4"],
.js-c-anime-elem [data-anime-delay="1.4"] {
    transition-delay: 1.4s;
}

.js-c-anime-elem[data-anime=cover-up][data-anime-delay="1.4"]::after,
.js-c-anime-elem [data-anime=cover-up][data-anime-delay="1.4"]::after {
    transition-delay: 1.4s;
}

.js-c-anime-elem[data-anime-delay="1.5"],
.js-c-anime-elem [data-anime-delay="1.5"] {
    transition-delay: 1.5s;
}

.js-c-anime-elem[data-anime=cover-up][data-anime-delay="1.5"]::after,
.js-c-anime-elem [data-anime=cover-up][data-anime-delay="1.5"]::after {
    transition-delay: 1.5s;
}

.js-c-anime-elem[data-anime-delay="1.6"],
.js-c-anime-elem [data-anime-delay="1.6"] {
    transition-delay: 1.6s;
}

.js-c-anime-elem[data-anime=cover-up][data-anime-delay="1.6"]::after,
.js-c-anime-elem [data-anime=cover-up][data-anime-delay="1.6"]::after {
    transition-delay: 1.6s;
}

.js-c-anime-elem[data-anime-delay="1.7"],
.js-c-anime-elem [data-anime-delay="1.7"] {
    transition-delay: 1.7s;
}

.js-c-anime-elem[data-anime=cover-up][data-anime-delay="1.7"]::after,
.js-c-anime-elem [data-anime=cover-up][data-anime-delay="1.7"]::after {
    transition-delay: 1.7s;
}

.js-c-anime-elem[data-anime-delay="1.8"],
.js-c-anime-elem [data-anime-delay="1.8"] {
    transition-delay: 1.8s;
}

.js-c-anime-elem[data-anime=cover-up][data-anime-delay="1.8"]::after,
.js-c-anime-elem [data-anime=cover-up][data-anime-delay="1.8"]::after {
    transition-delay: 1.8s;
}

.js-c-anime-elem[data-anime-delay="1.9"],
.js-c-anime-elem [data-anime-delay="1.9"] {
    transition-delay: 1.9s;
}

.js-c-anime-elem[data-anime=cover-up][data-anime-delay="1.9"]::after,
.js-c-anime-elem [data-anime=cover-up][data-anime-delay="1.9"]::after {
    transition-delay: 1.9s;
}

.js-c-anime-elem[data-anime-delay="2"],
.js-c-anime-elem [data-anime-delay="2"] {
    transition-delay: 2s;
}

.js-c-anime-elem[data-anime=cover-up][data-anime-delay="2"]::after,
.js-c-anime-elem [data-anime=cover-up][data-anime-delay="2"]::after {
    transition-delay: 2s;
}

/* .js-c-split-txt
================================================== */
.js-c-anime-elem.is-animated .js-c-split-txt span,
.js-c-split-txt.is-animated span {
    transform: translateY(0);
}

.js-c-split-txt {
    display: block;
    overflow: hidden;
}

.js-c-split-txt span {
    display: inline-block;
    transform: translateY(100%);
    transition: all 0.6s;
    min-width: 0.25em;
}

.js-c-switch-tab {
    cursor: pointer;
}

.js-c-switch-content {
    display: none;
}

.js-c-switch-content.is-active {
    display: block;
}

.js-c-toggle-trigger {
    cursor: pointer;
}

.js-c-toggle-content {
    display: none;
}

/* モーダル */
.modal-overlay {
    align-items: center;
    background: rgba(0, 0, 0, 0.6);
    bottom: 0;
    display: flex;
    justify-content: center;
    left: 0;
    position: fixed;
    right: 0;
    top: 0;
    z-index: 9999;
}

.modal-container {
    box-sizing: border-box;
    background-color: #fff;
    max-height: 80vh;
    max-width: var(--contents_width);
    overflow-y: auto;
    padding: 30px;
    width: 80%;
    position: relative;
}

.modal-header {
    align-items: center;
    display: flex;
    justify-content: space-between;
}

.modal-close {
    background: transparent;
    border: 0;
    width: 30px;
    height: 30px;
    padding: 0;
    position: absolute;
    top: 10px;
    right: 10px;
}

@media all and (min-width: 768px) {
    .modal-close {
        width: 60px;
        height: 60px;
    }

    .modal-close::before {
        font-size: 3rem;
    }
}

.modal-header .modal-close::before {
    content: "✕";
}

.modal-content {
    line-height: 1.5;
    padding: 2em 0;
}

.modal-open {
    display: block;
    margin: 100px auto;
}

.box01 {
    background-color: #ccc;
    height: 200px;
    margin: 0 auto;
    width: 80%;
}

.box02 {
    background-color: #ccc;
    height: 200px;
    margin: 0 auto;
    width: 80%;
}

/* モーダルアニメーション */
@-webkit-keyframes mmfadeIn {
    from {
        opacity: 0;
    }

    to {
        opacity: 1;
    }
}

@keyframes mmfadeIn {
    from {
        opacity: 0;
    }

    to {
        opacity: 1;
    }
}

@-webkit-keyframes mmfadeOut {
    from {
        opacity: 1;
    }

    to {
        opacity: 0;
    }
}

@keyframes mmfadeOut {
    from {
        opacity: 1;
    }

    to {
        opacity: 0;
    }
}

@-webkit-keyframes mmslideIn {
    from {
        transform: translateY(15%);
    }

    to {
        transform: translateY(0);
    }
}

@keyframes mmslideIn {
    from {
        transform: translateY(15%);
    }

    to {
        transform: translateY(0);
    }
}

@-webkit-keyframes mmslideOut {
    from {
        transform: translateY(0);
    }

    to {
        transform: translateY(-10%);
    }
}

@keyframes mmslideOut {
    from {
        transform: translateY(0);
    }

    to {
        transform: translateY(-10%);
    }
}

.micromodal-slide {
    display: none;
}

.micromodal-slide.is-open {
    display: block;
}

.micromodal-slide[aria-hidden=false] .modal-overlay {
    -webkit-animation: mmfadeIn 0.3s cubic-bezier(0, 0, 0.2, 1);
    animation: mmfadeIn 0.3s cubic-bezier(0, 0, 0.2, 1);
}

.micromodal-slide[aria-hidden=false] .modal-container {
    -webkit-animation: mmslideIn 0.3s cubic-bezier(0, 0, 0.2, 1);
    animation: mmslideIn 0.3s cubic-bezier(0, 0, 0.2, 1);
}

.micromodal-slide[aria-hidden=true] .modal-overlay {
    -webkit-animation: mmfadeOut 0.3s cubic-bezier(0, 0, 0.2, 1);
    animation: mmfadeOut 0.3s cubic-bezier(0, 0, 0.2, 1);
}

.micromodal-slide[aria-hidden=true] .modal-container {
    -webkit-animation: mmslideOut 0.3s cubic-bezier(0, 0, 0.2, 1);
    animation: mmslideOut 0.3s cubic-bezier(0, 0, 0.2, 1);
}

.micromodal-slide .modal-container,
.micromodal-slide .modal-overlay {
    will-change: transform;
}

@-webkit-keyframes splide-loading {
    0% {
        transform: rotate(0);
    }

    to {
        transform: rotate(1turn);
    }
}

@keyframes splide-loading {
    0% {
        transform: rotate(0);
    }

    to {
        transform: rotate(1turn);
    }
}

.splide__track--draggable {
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none;
}

.splide__track--fade>.splide__list>.splide__slide {
    margin: 0 !important;
    opacity: 0;
    z-index: 0;
}

.splide__track--fade>.splide__list>.splide__slide.is-active {
    opacity: 1;
    z-index: 1;
}

.splide--rtl {
    direction: rtl;
}

.splide__track--ttb>.splide__list {
    display: block;
}

.splide__container {
    box-sizing: border-box;
    position: relative;
}

.splide__list {
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    display: flex;
    height: 100%;
    margin: 0 !important;
    padding: 0 !important;
}

.splide.is-initialized:not(.is-active) .splide__list {
    display: block;
}

.splide__pagination {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    margin: 0;
    pointer-events: none;
}

.splide__pagination li {
    display: inline-block;
    line-height: 1;
    list-style-type: none;
    margin: 0;
    pointer-events: auto;
}

.splide:not(.is-overflow) .splide__pagination {
    display: none;
}

.splide__progress__bar {
    width: 0;
}

.splide {
    position: relative;
    visibility: hidden;
}

.splide.is-initialized,
.splide.is-rendered {
    visibility: visible;
}

.splide__slide {
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    box-sizing: border-box;
    flex-shrink: 0;
    list-style-type: none !important;
    margin: 0;
    position: relative;
}

.splide__slide img {
    vertical-align: bottom;
}

.splide__spinner {
    -webkit-animation: splide-loading 1s linear infinite;
    animation: splide-loading 1s linear infinite;
    border: 2px solid #999;
    border-left-color: transparent;
    border-radius: 50%;
    bottom: 0;
    contain: strict;
    display: inline-block;
    height: 20px;
    left: 0;
    margin: auto;
    position: absolute;
    right: 0;
    top: 0;
    width: 20px;
}

.splide__sr {
    clip: rect(0 0 0 0);
    border: 0;
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
}

.splide__toggle.is-active .splide__toggle__play,
.splide__toggle__pause {
    display: none;
}

.splide__toggle.is-active .splide__toggle__pause {
    display: inline;
}

.splide__track {
    overflow: hidden;
    position: relative;
    z-index: 0;
}

/* .calculation-form
================================================== */
.calculation-form {
    padding-top: var(--section-space--x2s);
}

/* .calculation-form-sec
================================================== */
.calculation-form-sec__inner {
    padding-top: var(--section-space--md);
    padding-bottom: var(--section-space--md);
}

.calculation-form-sec__con {
    display: grid;
    gap: 60px;
}

.calculation-form-sec__table-total {
    margin-top: 16px;
}

@media all and (min-width: 768px) {
    .calculation-form-sec__con {
        grid-template-columns: 1fr 500px;
        gap: 80px 60px;
    }

    .calculation-form-sec__col {
        position: relative;
    }

    .calculation-form-sec__col.is-col-full {
        grid-column: 1/3;
    }

    .calculation-form-sec__table {
        position: -webkit-sticky;
        position: sticky;
        top: 130px;
    }

    .calculation-form-sec__table-total {
        margin-top: 20px;
    }
}

/* .calculation-dialog
================================================== */
.calculation-dialog {
    display: none;
    box-sizing: border-box;
    background: rgba(190, 81, 81, 0.1);
    border-radius: 3px;
    font-size: 1.4rem;
    margin-bottom: 20px;
    padding: 20px;
}

.calculation-dialog p {
    color: #be5151;
}

.calculation-dialog.is-active {
    display: block;
}

@media all and (min-width: 768px) {
    .calculation-dialog {
        padding: 30px;
        font-size: 1.6rem;
    }
}

/* .calculation-quotation
================================================== */
.calculation-quotation__inner {
    padding-top: 60px;
    padding-bottom: 60px;
}

@media all and (min-width: 768px) {
    .calculation-quotation__inner {
        padding-top: 120px;
        padding-bottom: 120px;
    }

    .calculation-quotation__area-head {
        max-width: var(--contents_width);
        margin-inline: auto;
    }
}

/* .calculation-howto-sec
================================================== */
.calculation-howto-sec__inner {
    padding-top: var(--section-space--md);
    padding-bottom: var(--section-space--md);
}

@media all and (max-width: 767px) {
    .calculation-howto-sec__anchor {
        padding-left: 20px;
        padding-right: 20px;
    }
}

@media all and (min-width: 768px) {
    .calculation-howto-sec__anchor {
        justify-content: start;
    }

    .calculation-howto-sec__head {
        margin-bottom: 50px;
    }
}

.calculation-howto-child.is-enc {
    border-radius: 70px 0 0 0;
}

.calculation-howto-child__inner {
    position: relative;
    padding-top: var(--section-space--md);
    padding-bottom: var(--section-space--md);
}

.calculation-howto-child__ico {
    opacity: 0.05;
    position: absolute;
    top: 30px;
    right: 30px;
    max-width: 120px;
}

@media all and (min-width: 768px) {
    .calculation-howto-child__ico {
        top: 20px;
        right: -36px;
        max-width: 240px;
    }
}

.calculation-howto-item {
    position: relative;
}

.calculation-howto-item+.calculation-howto-item {
    margin-top: 40px;
}

.calculation-howto-item__num {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 38px;
    height: 38px;
    border-radius: 50%;
    color: #fff;
    font-size: 1.5rem;
    background: rgb(var(--color-primary-500));
    position: absolute;
    top: 0;
    left: 0;
    transform: translate(-20%, -30%);
}

.calculation-howto-item__set {
    display: grid;
    grid-template-columns: 1fr;
    gap: 20px;
}

.calculation-howto-item__set-box {
    background: #fff;
    padding: 20px;
    margin-top: 15px;
}

.calculation-howto-item__set-box.is-bg-gray {
    background: rgb(var(--color-grayscale-300));
}

.calculation-howto-item__set-item::before {
    content: "";
    display: inline-block;
    width: 5px;
    height: 5px;
    border-radius: 50%;
    background: rgb(var(--color-primary-500));
    margin-right: 8px;
    position: relative;
    top: -2px;
}

.calculation-howto-item__arw {
    position: relative;
    margin: 30px auto 0;
    display: flex;
    align-items: center;
    justify-content: center;
}

.calculation-howto-item__arw span {
    display: inline-block;
    width: 15px;
    height: 15px;
    position: relative;
}

.calculation-howto-item__arw span::before {
    content: "";
    width: 0;
    height: 0;
    border-style: solid;
    border-right: 7px solid transparent;
    border-left: 7px solid transparent;
    border-top: 13px solid rgba(var(--color-grayscale-500));
    border-bottom: 0;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.calculation-howto-item__arw::before,
.calculation-howto-item__arw::after {
    content: "";
    display: block;
    width: 44%;
    height: 1px;
    background: rgba(var(--color-grayscale-500));
    position: absolute;
    top: 6px;
}

.calculation-howto-item__arw::before {
    left: 0;
}

.calculation-howto-item__arw::after {
    right: 0;
}

@media all and (min-width: 768px) {
    .calculation-howto-item+.calculation-howto-item {
        margin-top: 70px;
    }

    .calculation-howto-item__num {
        font-size: 2.3rem;
        width: 55px;
        height: 55px;
        transform: translate(-40%, -40%);
    }

    .calculation-howto-item__set {
        grid-template-columns: auto 1fr;
        gap: 40px;
    }

    .calculation-howto-item__set-box {
        margin-top: 20px;
    }

    .calculation-howto-item__set-list {
        display: flex;
        flex-wrap: wrap;
        margin-left: -20px;
    }

    .calculation-howto-item__set-item {
        margin-left: 20px;
    }

    .calculation-howto-item__arw {
        margin-top: 60px;
    }

    .calculation-howto-item__arw::before,
    .calculation-howto-item__arw::after {
        width: 48%;
    }
}

.calculation-howto-item-box {
    background: rgb(var(--color-grayscale-300));
    margin-top: 20px;
    padding: 20px;
}

.calculation-howto-item-box__head {
    font-size: 1.8rem;
    margin-bottom: 12px;
}

.calculation-howto-item-box__txt {
    margin-bottom: 20px;
}

@media all and (min-width: 768px) {
    .calculation-howto-item-box {
        margin-top: 30px;
        padding: 48px 60px;
    }

    .calculation-howto-item-box__head {
        margin-bottom: 20px;
    }

    .calculation-howto-item-box__txt {
        margin-bottom: 20px;
    }
}

.calculation-howto-item-cv {
    box-sizing: border-box;
    border-radius: 5px;
    background: #fff;
    padding: 25px 20px;
    border: 2px solid rgba(var(--color-grayscale-500));
    margin-top: 30px;
}

.calculation-howto-item-cv__head {
    text-align: center;
    font-size: 1.5rem;
    line-height: 1.5;
    padding-bottom: 10px;
    border-bottom: 1px solid rgba(var(--color-grayscale-500));
    margin-bottom: 16px;
}

.calculation-howto-item-cv__fax-txt {
    display: block;
    font-size: 1.3rem;
    text-align: center;
}

.calculation-howto-item-cv__fax-num {
    font-size: 2.6rem;
    font-weight: 500;
    text-align: center;
    display: block;
}

.calculation-howto-item-cv__fax-ico {
    content: "";
    display: inline-block;
    width: 25px;
    height: 25px;
    background-color: #3C89B7;
    color: #3C89B7;
    -webkit-mask-image: url('data:image/svg+xml;utf8,<svg width="25" height="23" viewBox="0 0 25 23" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M22.4091 6.74193V1.35026C22.4091 1.05026 22.1674 0.808594 21.8674 0.808594H8.35078C8.05078 0.808594 7.80911 1.05026 7.80911 1.35026V4.86693C7.53411 4.38359 6.96745 4.05026 6.30911 4.05026H4.06745C3.14245 4.05026 2.38411 4.71693 2.38411 5.52526V6.80026C1.16745 7.19193 0.300781 8.40859 0.300781 9.82526V19.0336C0.300781 20.7753 1.61745 22.1919 3.23411 22.1919H21.7924C23.4091 22.1919 24.7258 20.7753 24.7258 19.0336V9.82526C24.7258 8.30859 23.7424 7.05026 22.4258 6.74193H22.4091ZM21.3258 1.89193V6.66693H8.89245V1.89193H21.3258ZM3.46745 5.52526C3.46745 5.34193 3.70911 5.13359 4.06745 5.13359H6.30911C6.65911 5.13359 6.90911 5.34193 6.90911 5.52526V7.20026V17.1836C6.90911 17.3669 6.66745 17.5753 6.30911 17.5753H4.06745C3.71745 17.5753 3.46745 17.3669 3.46745 17.1836V5.52526ZM23.6258 19.0336C23.6258 20.1753 22.8008 21.1086 21.7758 21.1086H3.22578C2.20911 21.1086 1.37578 20.1753 1.37578 19.0336V9.82526C1.37578 9.02526 1.77578 8.32526 2.37578 7.97526V17.1919C2.37578 18.0086 3.13411 18.6669 4.05911 18.6669H6.30078C7.22578 18.6669 7.98411 18.0086 7.98411 17.1919V7.74193H21.8341C22.8341 7.78359 23.6174 8.69193 23.6174 9.81693V19.0253L23.6258 19.0336Z" fill="#3C89B7"/><path d="M13.3245 16.543H10.7995C10.4995 16.543 10.2578 16.7846 10.2578 17.0846V19.6096C10.2578 19.9096 10.4995 20.1513 10.7995 20.1513H13.3245C13.6245 20.1513 13.8661 19.9096 13.8661 19.6096V17.0846C13.8661 16.7846 13.6245 16.543 13.3245 16.543ZM12.7828 19.068H11.3495V17.6346H12.7828V19.068Z" fill="#3C89B7"/><path d="M13.3245 12.625H10.7995C10.4995 12.625 10.2578 12.8667 10.2578 13.1667V15.6917C10.2578 15.9917 10.4995 16.2333 10.7995 16.2333H13.3245C13.6245 16.2333 13.8661 15.9917 13.8661 15.6917V13.1667C13.8661 12.8667 13.6245 12.625 13.3245 12.625ZM12.7828 15.15H11.3495V13.7167H12.7828V15.15Z" fill="#3C89B7"/><path d="M13.3245 8.71875H10.7995C10.4995 8.71875 10.2578 8.96042 10.2578 9.26042V11.7771C10.2578 12.0771 10.4995 12.3187 10.7995 12.3187H13.3245C13.6245 12.3187 13.8661 12.0771 13.8661 11.7771V9.26042C13.8661 8.96042 13.6245 8.71875 13.3245 8.71875ZM12.7828 11.2354H11.3495V9.80208H12.7828V11.2354Z" fill="#3C89B7"/><path d="M17.2424 16.543H14.7174C14.4174 16.543 14.1758 16.7846 14.1758 17.0846V19.6096C14.1758 19.9096 14.4174 20.1513 14.7174 20.1513H17.2424C17.5424 20.1513 17.7841 19.9096 17.7841 19.6096V17.0846C17.7841 16.7846 17.5424 16.543 17.2424 16.543ZM16.7008 19.068H15.2674V17.6346H16.7008V19.068Z" fill="#3C89B7"/><path d="M17.2424 12.625H14.7174C14.4174 12.625 14.1758 12.8667 14.1758 13.1667V15.6917C14.1758 15.9917 14.4174 16.2333 14.7174 16.2333H17.2424C17.5424 16.2333 17.7841 15.9917 17.7841 15.6917V13.1667C17.7841 12.8667 17.5424 12.625 17.2424 12.625ZM16.7008 15.15H15.2674V13.7167H16.7008V15.15Z" fill="#3C89B7"/><path d="M17.2424 8.71875H14.7174C14.4174 8.71875 14.1758 8.96042 14.1758 9.26042V11.7771C14.1758 12.0771 14.4174 12.3187 14.7174 12.3187H17.2424C17.5424 12.3187 17.7841 12.0771 17.7841 11.7771V9.26042C17.7841 8.96042 17.5424 8.71875 17.2424 8.71875ZM16.7008 11.2354H15.2674V9.80208H16.7008V11.2354Z" fill="#3C89B7"/><path d="M21.1521 16.543H18.6354C18.3354 16.543 18.0938 16.7846 18.0938 17.0846V19.6096C18.0938 19.9096 18.3354 20.1513 18.6354 20.1513H21.1521C21.4521 20.1513 21.6938 19.9096 21.6938 19.6096V17.0846C21.6938 16.7846 21.4521 16.543 21.1521 16.543ZM20.6104 19.068H19.1771V17.6346H20.6104V19.068Z" fill="#3C89B7"/><path d="M21.1521 12.625H18.6354C18.3354 12.625 18.0938 12.8667 18.0938 13.1667V15.6917C18.0938 15.9917 18.3354 16.2333 18.6354 16.2333H21.1521C21.4521 16.2333 21.6938 15.9917 21.6938 15.6917V13.1667C21.6938 12.8667 21.4521 12.625 21.1521 12.625ZM20.6104 15.15H19.1771V13.7167H20.6104V15.15Z" fill="#3C89B7"/><path d="M21.1521 8.71875H18.6354C18.3354 8.71875 18.0938 8.96042 18.0938 9.26042V11.7771C18.0938 12.0771 18.3354 12.3187 18.6354 12.3187H21.1521C21.4521 12.3187 21.6938 12.0771 21.6938 11.7771V9.26042C21.6938 8.96042 21.4521 8.71875 21.1521 8.71875ZM20.6104 11.2354H19.1771V9.80208H20.6104V11.2354Z" fill="#3C89B7"/><path d="M10.5417 6.09115H19.675C19.975 6.09115 20.2167 5.84948 20.2167 5.54948C20.2167 5.24948 19.975 5.00781 19.675 5.00781H10.5417C10.2417 5.00781 10 5.24948 10 5.54948C10 5.84948 10.2417 6.09115 10.5417 6.09115Z" fill="#3C89B7"/><path d="M10.5417 4.09115H19.675C19.975 4.09115 20.2167 3.84948 20.2167 3.54948C20.2167 3.24948 19.975 3.00781 19.675 3.00781H10.5417C10.2417 3.00781 10 3.24948 10 3.54948C10 3.84948 10.2417 4.09115 10.5417 4.09115Z" fill="#3C89B7"/></svg>');
    mask-image: url('data:image/svg+xml;utf8,<svg width="25" height="23" viewBox="0 0 25 23" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M22.4091 6.74193V1.35026C22.4091 1.05026 22.1674 0.808594 21.8674 0.808594H8.35078C8.05078 0.808594 7.80911 1.05026 7.80911 1.35026V4.86693C7.53411 4.38359 6.96745 4.05026 6.30911 4.05026H4.06745C3.14245 4.05026 2.38411 4.71693 2.38411 5.52526V6.80026C1.16745 7.19193 0.300781 8.40859 0.300781 9.82526V19.0336C0.300781 20.7753 1.61745 22.1919 3.23411 22.1919H21.7924C23.4091 22.1919 24.7258 20.7753 24.7258 19.0336V9.82526C24.7258 8.30859 23.7424 7.05026 22.4258 6.74193H22.4091ZM21.3258 1.89193V6.66693H8.89245V1.89193H21.3258ZM3.46745 5.52526C3.46745 5.34193 3.70911 5.13359 4.06745 5.13359H6.30911C6.65911 5.13359 6.90911 5.34193 6.90911 5.52526V7.20026V17.1836C6.90911 17.3669 6.66745 17.5753 6.30911 17.5753H4.06745C3.71745 17.5753 3.46745 17.3669 3.46745 17.1836V5.52526ZM23.6258 19.0336C23.6258 20.1753 22.8008 21.1086 21.7758 21.1086H3.22578C2.20911 21.1086 1.37578 20.1753 1.37578 19.0336V9.82526C1.37578 9.02526 1.77578 8.32526 2.37578 7.97526V17.1919C2.37578 18.0086 3.13411 18.6669 4.05911 18.6669H6.30078C7.22578 18.6669 7.98411 18.0086 7.98411 17.1919V7.74193H21.8341C22.8341 7.78359 23.6174 8.69193 23.6174 9.81693V19.0253L23.6258 19.0336Z" fill="#3C89B7"/><path d="M13.3245 16.543H10.7995C10.4995 16.543 10.2578 16.7846 10.2578 17.0846V19.6096C10.2578 19.9096 10.4995 20.1513 10.7995 20.1513H13.3245C13.6245 20.1513 13.8661 19.9096 13.8661 19.6096V17.0846C13.8661 16.7846 13.6245 16.543 13.3245 16.543ZM12.7828 19.068H11.3495V17.6346H12.7828V19.068Z" fill="#3C89B7"/><path d="M13.3245 12.625H10.7995C10.4995 12.625 10.2578 12.8667 10.2578 13.1667V15.6917C10.2578 15.9917 10.4995 16.2333 10.7995 16.2333H13.3245C13.6245 16.2333 13.8661 15.9917 13.8661 15.6917V13.1667C13.8661 12.8667 13.6245 12.625 13.3245 12.625ZM12.7828 15.15H11.3495V13.7167H12.7828V15.15Z" fill="#3C89B7"/><path d="M13.3245 8.71875H10.7995C10.4995 8.71875 10.2578 8.96042 10.2578 9.26042V11.7771C10.2578 12.0771 10.4995 12.3187 10.7995 12.3187H13.3245C13.6245 12.3187 13.8661 12.0771 13.8661 11.7771V9.26042C13.8661 8.96042 13.6245 8.71875 13.3245 8.71875ZM12.7828 11.2354H11.3495V9.80208H12.7828V11.2354Z" fill="#3C89B7"/><path d="M17.2424 16.543H14.7174C14.4174 16.543 14.1758 16.7846 14.1758 17.0846V19.6096C14.1758 19.9096 14.4174 20.1513 14.7174 20.1513H17.2424C17.5424 20.1513 17.7841 19.9096 17.7841 19.6096V17.0846C17.7841 16.7846 17.5424 16.543 17.2424 16.543ZM16.7008 19.068H15.2674V17.6346H16.7008V19.068Z" fill="#3C89B7"/><path d="M17.2424 12.625H14.7174C14.4174 12.625 14.1758 12.8667 14.1758 13.1667V15.6917C14.1758 15.9917 14.4174 16.2333 14.7174 16.2333H17.2424C17.5424 16.2333 17.7841 15.9917 17.7841 15.6917V13.1667C17.7841 12.8667 17.5424 12.625 17.2424 12.625ZM16.7008 15.15H15.2674V13.7167H16.7008V15.15Z" fill="#3C89B7"/><path d="M17.2424 8.71875H14.7174C14.4174 8.71875 14.1758 8.96042 14.1758 9.26042V11.7771C14.1758 12.0771 14.4174 12.3187 14.7174 12.3187H17.2424C17.5424 12.3187 17.7841 12.0771 17.7841 11.7771V9.26042C17.7841 8.96042 17.5424 8.71875 17.2424 8.71875ZM16.7008 11.2354H15.2674V9.80208H16.7008V11.2354Z" fill="#3C89B7"/><path d="M21.1521 16.543H18.6354C18.3354 16.543 18.0938 16.7846 18.0938 17.0846V19.6096C18.0938 19.9096 18.3354 20.1513 18.6354 20.1513H21.1521C21.4521 20.1513 21.6938 19.9096 21.6938 19.6096V17.0846C21.6938 16.7846 21.4521 16.543 21.1521 16.543ZM20.6104 19.068H19.1771V17.6346H20.6104V19.068Z" fill="#3C89B7"/><path d="M21.1521 12.625H18.6354C18.3354 12.625 18.0938 12.8667 18.0938 13.1667V15.6917C18.0938 15.9917 18.3354 16.2333 18.6354 16.2333H21.1521C21.4521 16.2333 21.6938 15.9917 21.6938 15.6917V13.1667C21.6938 12.8667 21.4521 12.625 21.1521 12.625ZM20.6104 15.15H19.1771V13.7167H20.6104V15.15Z" fill="#3C89B7"/><path d="M21.1521 8.71875H18.6354C18.3354 8.71875 18.0938 8.96042 18.0938 9.26042V11.7771C18.0938 12.0771 18.3354 12.3187 18.6354 12.3187H21.1521C21.4521 12.3187 21.6938 12.0771 21.6938 11.7771V9.26042C21.6938 8.96042 21.4521 8.71875 21.1521 8.71875ZM20.6104 11.2354H19.1771V9.80208H20.6104V11.2354Z" fill="#3C89B7"/><path d="M10.5417 6.09115H19.675C19.975 6.09115 20.2167 5.84948 20.2167 5.54948C20.2167 5.24948 19.975 5.00781 19.675 5.00781H10.5417C10.2417 5.00781 10 5.24948 10 5.54948C10 5.84948 10.2417 6.09115 10.5417 6.09115Z" fill="#3C89B7"/><path d="M10.5417 4.09115H19.675C19.975 4.09115 20.2167 3.84948 20.2167 3.54948C20.2167 3.24948 19.975 3.00781 19.675 3.00781H10.5417C10.2417 3.00781 10 3.24948 10 3.54948C10 3.84948 10.2417 4.09115 10.5417 4.09115Z" fill="#3C89B7"/></svg>');
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
    margin-right: 7px;
}

.calculation-howto-item-cv__btn {
    margin-top: 20px;
}

.calculation-howto-item-cv__btn-in {
    box-sizing: border-box;
    background: rgb(var(--color-primary-500));
    border-radius: 50px;
    color: rgb(var(--color-grayscale-200));
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    font-size: 1.4rem;
    font-weight: var(--font-weight_bold);
    line-height: var(--line-height_snug);
    letter-spacing: var(--letter-spacing_snug);
    min-height: 50px;
    padding: 8px 30px;
    position: relative;
    transition: all 0.3s ease;
}

.calculation-howto-item-cv__btn-in::before {
    content: "";
    display: inline-block;
    width: 20px;
    height: 20px;
    background-color: #3C89B7;
    color: #3C89B7;
    -webkit-mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 30 30"><path d="M3.23 6.3c-.12 0-.22.1-.22.22v16.97c0 .12.1.22.22.22h23.55c.12 0 .22-.1.22-.22V6.52c0-.12-.1-.22-.22-.22H3.23Zm-1.98.22c0-1.09.89-1.98 1.98-1.98h23.55c1.09 0 1.98.89 1.98 1.98v16.97c0 1.09-.89 1.98-1.98 1.98H3.23c-1.09 0-1.98-.89-1.98-1.98V6.52Z"/><path d="m25.15 20.62-6.4-5.27 6.43-6.01c.36-.33.38-.89.04-1.25a.884.884 0 0 0-1.25-.04l-7.47 6.98c-.91.75-2.21.75-3.12 0L6.01 8.05a.885.885 0 0 0-1.22 1.28l6.35 6.01-6.31 5.27c-.37.31-.42.87-.11 1.24s.87.42 1.24.11l6.5-5.43a4.202 4.202 0 0 0 4.94 0l6.61 5.44c.38.31.93.26 1.24-.12.31-.38.26-.93-.12-1.24Z"/></svg>');
    mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 30 30"><path d="M3.23 6.3c-.12 0-.22.1-.22.22v16.97c0 .12.1.22.22.22h23.55c.12 0 .22-.1.22-.22V6.52c0-.12-.1-.22-.22-.22H3.23Zm-1.98.22c0-1.09.89-1.98 1.98-1.98h23.55c1.09 0 1.98.89 1.98 1.98v16.97c0 1.09-.89 1.98-1.98 1.98H3.23c-1.09 0-1.98-.89-1.98-1.98V6.52Z"/><path d="m25.15 20.62-6.4-5.27 6.43-6.01c.36-.33.38-.89.04-1.25a.884.884 0 0 0-1.25-.04l-7.47 6.98c-.91.75-2.21.75-3.12 0L6.01 8.05a.885.885 0 0 0-1.22 1.28l6.35 6.01-6.31 5.27c-.37.31-.42.87-.11 1.24s.87.42 1.24.11l6.5-5.43a4.202 4.202 0 0 0 4.94 0l6.61 5.44c.38.31.93.26 1.24-.12.31-.38.26-.93-.12-1.24Z"/></svg>');
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
    transition: all 0.3s ease;
    margin-right: 6px;
    transition: none;
}

.calculation-howto-item-cv__btn-in::after {
    content: "";
    display: inline-block;
    width: 16px;
    height: 12px;
    background-color: #3C89B7;
    color: #3C89B7;
    -webkit-mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 12"><path d="M9.53 0 8.21 1.32l4.06 3.76H0v1.84h12.26L8.2 10.68 9.52 12l6.47-6-6.46-6Z"/></svg>');
    mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 12"><path d="M9.53 0 8.21 1.32l4.06 3.76H0v1.84h12.26L8.2 10.68 9.52 12l6.47-6-6.46-6Z"/></svg>');
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
    transition: all 0.3s ease;
    position: absolute;
    top: 50%;
    right: 19px;
    transform: translateY(-50%);
}

@media all and (min-width: 768px) {
    .calculation-howto-item-cv {
        padding: 25px 33px;
    }

    .calculation-howto-item-cv__head {
        font-size: 1.6rem;
        padding-bottom: 10px;
        margin-bottom: 22px;
    }

    .calculation-howto-item-cv__content {
        display: grid;
        grid-template-columns: 1fr 180px;
        gap: 25px;
        justify-content: center;
    }

    .calculation-howto-item-cv__btn {
        margin-top: 0;
    }

    .calculation-howto-item-cv__btn-in {
        transition: all 0.3s ease;
    }

    .calculation-howto-item-cv__btn-in::after {
        content: none;
    }
}

@media (hover: hover) and (pointer: fine) {
    .calculation-howto-item-cv__btn-in:hover {
        background: rgb(var(--color-primary-400));
    }
}

/* .company-msg
================================================== */
.company-msg__inner {
    padding-top: var(--section-space--sm);
    padding-bottom: var(--section-space--md);
}

.company-msg__img {
    border-radius: 5px;
    overflow: hidden;
    position: relative;
    margin: 0 auto;
    width: 88%;
    max-width: 470px;
}

.company-msg__img::before {
    content: "";
    display: block;
    padding-top: 110.8474576271%;
}

.company-msg__img img {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}

.company-msg__area-txt {
    box-sizing: border-box;
    margin-top: 25px;
}

.company-msg__txt {
    font-size: 1.6rem;
}

.company-msg__txt+.company-msg__txt {
    margin-top: 1.8em;
}

.company-msg__name {
    margin-top: 20px;
    text-align: right;
}

.company-msg__name-head {
    display: block;
    font-size: 1.5rem;
    margin-bottom: 5px;
}

.company-msg__name-txt {
    display: block;
    font-size: 1.8rem;
    font-weight: var(--font-weight_bold);
    line-height: var(--line-height_snug);
    letter-spacing: var(--letter-spacing_snug);
}

@media all and (min-width: 768px) {
    .company-msg__inner {
        display: flex;
        flex-wrap: wrap;
    }

    .company-msg__img {
        margin: 0;
        width: 42.7%;
    }

    .company-msg__area-txt {
        flex: 1;
        margin: 30px 0 0 80px;
        padding-right: 60px;
    }

    .company-msg__name {
        margin-top: 40px;
    }

    .company-msg__name-head {
        display: inline-block;
        font-size: 1.6rem;
        margin: 0 20px 0 0;
        vertical-align: middle;
    }

    .company-msg__name-txt {
        display: inline-block;
        font-size: 2.1rem;
        vertical-align: middle;
    }
}

/* .company-philosophy
================================================== */
.company-philosophy {
    border-radius: 70px 0 0 0;
}

.company-philosophy__inner {
    padding-top: var(--section-space--md);
    padding-bottom: var(--section-space--md);
}

.company-philosophy-list__item,
.company-philosophy-list>li {
    box-sizing: border-box;
    background: rgb(var(--color-grayscale-200));
    padding: 20px;
}

.company-philosophy-list__item+.company-philosophy-list__item,
.company-philosophy-list>li:not(:first-child) {
    margin-top: 13px;
}

.company-philosophy-list__num {
    color: rgb(var(--color-primary-500));
    display: block;
    font-size: 1.4rem;
    margin-bottom: 5px;
    text-align: center;
}

.company-philosophy-list__txt {
    font-size: 1.5rem;
    font-weight: 400;
    line-height: var(--line-height_snug);
    letter-spacing: var(--letter-spacing_snug);
}

@media all and (min-width: 768px) {
    .company-philosophy {
        border-radius: 160px 0 0 0;
    }

    .company-philosophy__inner {
        display: flex;
        flex-wrap: wrap;
    }

    .company-philosophy__head {
        margin: 0 100px 0 0;
    }

    .company-philosophy-list {
        flex: 1;
    }

    .company-philosophy-list__item,
    .company-philosophy-list>li {
        padding: 40px;
    }

    .company-philosophy-list__item+.company-philosophy-list__item,
    .company-philosophy-list>li:not(:first-child) {
        margin-top: 4px;
    }

    .company-philosophy-list__num {
        font-size: 1.6rem;
        margin-bottom: 10px;
    }

    .company-philosophy-list__txt {
        font-size: 2.1rem;
        text-align: center;
    }
}

/* .company-overview
================================================== */
.company-overview__inner {
    padding-top: var(--section-space--md);
    padding-bottom: var(--section-space--md);
}

/* .company-office
================================================== */
.company-office__inner {
    padding-top: var(--section-space--md);
    padding-bottom: var(--section-space--md);
}

.company-office-info {
    display: grid;
    gap: 48px;
}

.company-office-info__img {
    border-radius: 5px;
    position: relative;
    overflow: hidden;
}

.company-office-info__img::before {
    content: "";
    display: block;
    padding-top: 56.1194029851%;
}

.company-office-info__img img {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}

.company-office-info__area-txt {
    margin-top: 30px;
}

.company-office-info__head {
    font-size: 1.9rem;
    font-weight: var(--font-weight_bold);
    line-height: var(--line-height_snug);
    letter-spacing: var(--letter-spacing_snug);
    margin-bottom: 15px;
}

.company-office-info__head::before {
    content: "";
    display: block;
    border-top: 1px solid rgb(var(--color-primary-500));
    margin-bottom: 10px;
    width: 40px;
}

.company-office-info__txt {
    font-size: 1.6rem;
}

.company-office-info__area-btn {
    margin-top: 20px;
}

.company-office-info__map {
    margin-top: 30px;
    position: relative;
}

.company-office-info__map::before {
    content: "";
    display: block;
    padding-top: 50.7462686567%;
}

.company-office-info__map iframe {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
}

.company-office-info__list {
    margin-top: 15px;
}

.company-office-info__list-item {
    border-bottom: 1px solid rgba(var(--color-grayscale-500));
    padding-bottom: 20px;
}

.company-office-info__list-item+.company-office-info__list-item {
    margin-top: 20px;
}

.company-office-info__list-head {
    font-size: 1.5rem;
    font-weight: var(--font-weight_bold);
}

.company-office-info__list-txt {
    font-size: 1.5rem;
}

.company-office-info__list-btn {
    margin-top: 20px;
}

@media all and (min-width: 768px) {
    .company-office-info {
        grid-template-columns: 1fr 1fr;
        gap: 100px 40px;
    }

    .company-office-info__item {
        display: flex;
        flex-wrap: wrap;
        align-items: flex-start;
        grid-column: span 2;
    }

    .company-office-info__item.is-half {
        grid-column: span 1;
    }

    .company-office-info__item.is-half .company-office-info__img {
        margin: 0;
        width: 100%;
    }

    .company-office-info__item.is-half .company-office-info__area-txt {
        margin-top: 40px;
        width: 100%;
    }

    .company-office-info__img {
        margin-right: 40px;
        width: 36.4%;
    }

    .company-office-info__area-txt {
        flex: 1;
        margin: 0;
    }

    .company-office-info__head {
        font-size: 2.6rem;
        margin-bottom: 20px;
    }

    .company-office-info__head::before {
        margin-bottom: 20px;
        width: 80px;
    }

    .company-office-info__area-btn {
        margin-top: 30px;
    }

    .company-office-info__map {
        margin-top: 60px;
        width: 100%;
    }

    .company-office-info__map::before {
        padding-top: 30%;
    }

    .company-office-info__list {
        margin-top: 0;
        width: 100%;
    }

    .company-office-info__list-item {
        display: flex;
    }

    .company-office-info__list-head {
        font-size: 1.6rem;
        margin-right: 30px;
        width: 204px;
    }

    .company-office-info__list-txt {
        flex: 1;
        margin-right: 30px;
        font-size: 1.6rem;
    }

    .company-office-info__list-btn {
        margin-top: 0;
    }
}

/* .company-history
================================================== */
.company-history__inner {
    padding-top: var(--section-space--md);
    padding-bottom: var(--section-space--md);
}

/* .contact-intro
================================================== */
.contact-intro {
    margin-bottom: -294px;
    position: relative;
    z-index: 1;
}

.contact-intro__inner {
    padding-top: var(--section-space--sm);
}

.contact-intro__txt {
    font-size: 1.5rem;
}

.contact-intro-card {
    margin-top: 30px;
    width: 100%;
}

.contact-intro-card__item {
    box-sizing: border-box;
    background: rgb(var(--color-grayscale-200));
    border: 1px solid rgba(var(--color-grayscale-500));
    border-radius: 5px;
    padding: 20px;
    width: 100%;
    max-width: 550px;
    margin: 0 auto;
}

.contact-intro-card__item+.contact-intro-card__item {
    margin-top: 10px;
}

.contact-intro-card__head {
    font-size: 1.8rem;
    font-weight: var(--font-weight_bold);
    line-height: var(--line-height_snug);
    letter-spacing: var(--letter-spacing_snug);
}

.contact-intro-card__txt {
    color: rgb(var(--color-grayscale-800));
    font-size: 1.3rem;
    margin-top: 5px;
}

.contact-intro-card__tel-wrap {
    border-top: 2px solid rgba(var(--color-grayscale-500));
    margin-top: 10px;
    padding-top: 20px;
}

.contact-intro-card__tel {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    position: relative;
}

.contact-intro-card__tel+.contact-intro-card__tel {
    margin-top: 10px;
}

.contact-intro-card__tel-ico {
    display: block;
    margin-right: 10px;
    height: 30px;
    width: 30px;
}

.contact-intro-card__tel-num {
    font-size: 1.6rem;
}

@media all and (min-width: 768px) {
    .contact-intro {
        margin-bottom: -106px;
    }

    .contact-intro-card {
        display: grid;
        grid-template-columns: repeat(1, 1fr);
        gap: 20px;
        margin-top: 80px;
    }

    .contact-intro-card__item {
        padding: 40px 30px;
    }

    .contact-intro-card__item+.contact-intro-card__item {
        margin-top: 0;
    }

    .contact-intro-card__head {
        font-size: 2.1rem;
    }

    .contact-intro-card__txt {
        margin-top: 10px;
    }

    .contact-intro-card__tel-wrap {
        border-width: 1px 0 0;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        margin-top: 16px;
    }

    .contact-intro-card__tel {
        display: flex;
        flex-wrap: wrap;
        align-items: center;
    }

    .contact-intro-card__tel+.contact-intro-card__tel {
        margin: 0 0 0 18px;
    }

    .contact-intro-card__tel+.contact-intro-card__tel::before {
        content: "";
        border-left: 1px solid rgba(var(--color-grayscale-500));
        position: absolute;
        top: 2px;
        bottom: 2px;
        left: -10px;
    }

    .contact-intro-card__tel-ico {
        margin-right: 7px;
    }

    .contact-intro-card__tel-num {
        font-size: 2.6rem;
        pointer-events: none;
    }
}

/* .contact-form
================================================== */
.contact-form {}

.contact-form__inner {
    padding-top: 344px;
    padding-bottom: 100px;
}

@media all and (min-width: 768px) {
    .contact-form {}

    .contact-form__inner {
        padding-top: 156px;
        padding-bottom: 100px;
    }
}

/* .download-anchor
================================================== */
.download-anchor__inner {
    padding-top: var(--section-space--sm);
    padding-bottom: var(--section-space--md);
}

@media all and (min-width: 768px) {
    .download-anchor__inner {
        padding-top: var(--section-space--x2s);
        padding-bottom: var(--section-space--x2s);
    }
}

/* .download-catalog
================================================== */
.download-catalog {
    border-radius: 70px 0 0 0;
}

.download-catalog__inner {
    padding-top: var(--section-space--md);
    padding-bottom: var(--section-space--md);
}

.download-catalog-list {
    display: grid;
    grid-template-columns: 1fr;
    gap: 55px;
}

@media all and (min-width: 768px) {
    .download-catalog-list {
        grid-template-columns: repeat(3, 1fr);
        gap: 70px 48px;
    }
}

.download-catalog-item__img {
    text-align: center;
}

.download-catalog-item__img img {
    box-shadow: 0 10px 20px 0 rgba(51, 51, 51, 0.25);
    transform: rotate(-5deg);
}

.download-catalog-item__head {
    margin-top: 40px;
    font-size: 1.8rem;
    font-weight: var(--font-weight_bold);
    line-height: var(--line-height_snug);
    padding-bottom: 12px;
    border-bottom: 1px solid rgb(var(--color-grayscale-500));
}

.download-catalog-item__txt {
    margin-top: 12px;
}

.download-catalog-item__btn.c-btn02 {
    width: 100%;
    margin-top: 20px;
    box-sizing: border-box;
    padding-left: 20px;
    padding-right: 20px;
}

@media all and (min-width: 768px) {
    .download-catalog-item__head {
        margin-top: 60px;
        font-size: 2.3rem;
        padding-bottom: 15px;
    }

    .download-catalog-item__txt {
        margin-top: 15px;
    }

    .download-catalog-item__btn.c-btn02 {
        margin-top: 30px;
        padding: 0;
    }
}

/* .download-drawing
================================================== */
.download-drawing__inner {
    padding-top: var(--section-space--md);
    padding-bottom: var(--section-space--md);
}

.download-drawing__item-in {
    font-size: 1.3rem;
    font-weight: var(--font-weight_bold);
    letter-spacing: var(--letter-spacing_snug);
    line-height: var(--line-height_snug);
    padding-right: 19px;
    position: relative;
}

.download-drawing__item-ico {
    display: inline-block;
    width: 10px;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 0;
}

.download-drawing__item-ico::after {
    content: "";
    display: inline-block;
    width: 16px;
    height: 12px;
    background-color: #3C89B7;
    color: #3C89B7;
    -webkit-mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 12"><path d="M9.53 0 8.21 1.32l4.06 3.76H0v1.84h12.26L8.2 10.68 9.52 12l6.47-6-6.46-6Z"/></svg>');
    mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 12"><path d="M9.53 0 8.21 1.32l4.06 3.76H0v1.84h12.26L8.2 10.68 9.52 12l6.47-6-6.46-6Z"/></svg>');
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
    transition: all 0.3s ease;
    color: rgb(var(--color-primary-500));
    width: 10px;
}

.download-drawing__detail {
    padding-left: 0;
}

.download-drawing__list {
    display: grid;
    grid-template-columns: 1fr;
    gap: 20px;
}

@media all and (min-width: 768px) {
    .download-drawing__list {
        display: block;
        margin-left: -30px;
        margin-top: -20px;
    }

    .download-drawing__item {
        display: inline-block;
        margin-left: 30px;
        margin-top: 20px;
    }

    .download-drawing__item-in {
        transition: all 0.3s ease;
        font-size: 1.6rem;
    }
}

@media (hover: hover) and (pointer: fine) {
    .download-drawing__item-in:hover {
        color: rgb(var(--color-primary-400));
    }

    .download-drawing__item-in:hover .download-drawing__item-ico {
        -webkit-animation: icoMove 0.6s ease-in-out;
        animation: icoMove 0.6s ease-in-out;
    }
}

/* .download-video
================================================== */
.download-video__inner {
    padding-top: var(--section-space--md);
    padding-bottom: var(--section-space--md);
}

.download-video-slider__item-in {
    cursor: pointer;
    position: relative;
    width: 100%;
}

.download-video-slider__item-in::before {
    content: "";
    display: block;
    padding-top: 56.25%;
}

.download-video-slider__item-in img {
    border-radius: 5px;
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}

.download-video-slider__item-txt {
    font-size: 1.6rem;
    margin-top: 21px;
    font-weight: var(--font-weight_bold);
    line-height: var(--line-height_snug);
    letter-spacing: var(--letter-spacing_snug);
}

.download-video-slider-ui {
    margin-top: 30px;
}

@media all and (min-width: 768px) {
    .download-video-slider:not(.is-overflow) .splide__track {
        margin-right: -38px;
    }

    .download-video-slider .splide__track {
        margin: 0;
    }

    .download-video-slider__item-txt {
        margin-top: 30px;
        font-size: 1.8rem;
    }

    .download-video-slider-ui {
        margin-top: 35px;
    }
}

/* .error-page404
================================================ */
.error-page404__inner {
    padding-top: 50px;
    padding-bottom: 50px;
}

.error-page404__btn {
    margin-left: auto;
    margin-right: auto;
}

@media all and (min-width: 768px) {
    .error-page404__inner {
        padding-top: 100px;
        padding-bottom: 100px;
    }

    .error-page404__txt {
        text-align: center;
    }
}

/* .faq-archive
================================================== */
.faq-archive__inner {
    padding-top: var(--section-space--sm);
    padding-bottom: var(--section-space--xl);
}

/* .home-product
================================================== */
.home-product__inner {
    padding-top: 73px;
}

.home-product__area-head {
    margin-bottom: 32px;
}

.home-product__lead {
    font-size: 1.5rem;
}

.home-product-list {
    display: grid;
    gap: 30px;
}

.home-product-list__in {
    display: block;
}

.home-product-list__area-img {
    position: relative;
}

.home-product-list__img {
    overflow: hidden;
    position: relative;
}

.home-product-list__img::before {
    content: "";
    display: block;
    padding-top: 141.3559322034%;
}

.home-product-list__img img {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}

.home-product-list__head {
    box-sizing: border-box;
    border-bottom: 1px solid rgb(var(--color-grayscale-500));
    font-size: 1.6rem;
    font-weight: var(--font-weight_bold);
    line-height: var(--line-height_snug);
    letter-spacing: var(--letter-spacing_snug);
    padding: 15px 30px 15px 0;
    position: relative;
}

.home-product-list__head-ico {
    color: rgb(var(--color-grayscale-800));
    position: absolute;
    top: 50%;
    right: 5px;
    transform: translateY(-50%);
    width: 16px;
}

.home-product-list__head-ico::before {
    content: "";
    display: inline-block;
    width: 16px;
    height: 16px;
    background-color: #8A8A8A;
    color: #8A8A8A;
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg width='17' height='17' viewBox='0 0 17 17' fill='none' xmlns='http://www.w3.org/2000/svg'%3E %3Cpath d='M1 8.5H16M16 8.5L8.5 16M16 8.5L8.5 1' stroke='%238A8A8A' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E %3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg width='17' height='17' viewBox='0 0 17 17' fill='none' xmlns='http://www.w3.org/2000/svg'%3E %3Cpath d='M1 8.5H16M16 8.5L8.5 16M16 8.5L8.5 1' stroke='%238A8A8A' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E %3C/svg%3E");
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
    transition: all 0.3s ease;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

@media all and (max-width: 767px) {
    .home-product__btn {
        margin-right: 20px;
    }

    .home-product-list {
        padding: 0 20px;
    }
}

@media all and (min-width: 768px) {
    .home-product__inner {
        display: grid;
        grid-template-columns: auto 1fr;
        padding-top: 170px;
    }

    .home-product__area-head {
        margin-bottom: 20px;
    }

    .home-product__lead {
        font-size: 1.6rem;
    }

    .home-product__btn {
        grid-column: 2/3;
        grid-row: 1/2;
    }

    .home-product-list {
        grid-column: 1/3;
        grid-row: 2/3;
        grid-template-columns: repeat(3, 1fr);
        gap: 77px;
        padding-top: 100px;
    }

    .home-product-list__item:nth-child(4n+1) {
        margin-top: 20px;
    }

    .home-product-list__item:nth-child(4n+2) {
        margin-top: -20px;
    }

    .home-product-list__item:nth-child(4n+3) {
        margin-top: -60px;
    }

    .home-product-list__item:nth-child(4n) {
        margin-top: -30px;
    }

    .home-product-list__in {
        position: relative;
        transition: all 0.3s ease;
    }

    .home-product-list__in::before {
        content: "";
        background: rgb(var(--color-grayscale-100));
        box-shadow: 0 15px 30px rgba(var(--color-grayscale-900), 0.12);
        height: calc(100% + 20px);
        width: calc(100% + 40px);
        pointer-events: none;
        position: absolute;
        top: -20px;
        left: 50%;
        transform: translate(-50%, 0);
        opacity: 0;
        transition: all 0.3s ease;
    }

    .home-product-list__img {}

    .home-product-list__head {
        font-size: 2.1rem;
        padding: 20px 46px 20px 15px;
        position: relative;
        transition: all 0.3s ease;
    }

    .home-product-list__head-ico {
        right: 15px;
    }
}

@media (hover: hover) and (pointer: fine) {
    .home-product-list__in:hover {
        transform: translateY(-5px);
    }

    .home-product-list__in:hover::before {
        opacity: 1;
    }

    .home-product-list__in:hover .home-product-list__img img {
        opacity: 0.9;
    }

    .home-product-list__in:hover .home-product-list__head {
        color: rgb(var(--color-primary-400));
        border-color: transparent;
    }

    .home-product-list__in:hover .home-product-list__head-ico {
        color: rgb(var(--color-primary-400));
    }

    .home-product-list__in:hover .home-product-list__head-ico::before {
        -webkit-animation: icoMove 0.6s ease-in-out;
        animation: icoMove 0.6s ease-in-out;
    }
}

/* .home-other
================================================== */
@media all and (min-width: 768px) {
    .home-other {
        padding-bottom: 50px;
    }
}

/* .home-result
================================================== */
.home-result {
    border-radius: 70px 0 0 0;
}

.home-result__inner {
    padding-top: 75px;
    padding-bottom: 80px;
}

@media all and (min-width: 768px) {
    .home-result {
        border-radius: 160px 0 0 0;
    }

    .home-result__inner {
        display: grid;
        grid-template-columns: auto 1fr;
        padding-top: 170px;
        padding-bottom: 170px;
    }

    .home-result__head {
        margin-bottom: 75px;
    }

    .home-result__btn {
        grid-column: 2/3;
        grid-row: 1/2;
    }

    .home-result-slider {
        grid-column: 1/3;
        grid-row: 2/3;
    }
}

/* .home-bnrs
================================================== */
.home-bnrs__inner {
    padding: 20px;
}

.home-bnrs-list {
    display: grid;
    gap: 5px;
}

.home-bnrs-list__item {
    border-radius: 5px;
    overflow: hidden;
    position: relative;
}

.home-bnrs-list__img {
    position: relative;
    width: 100%;
}

.home-bnrs-list__img::before {
    content: "";
    display: block;
    padding-top: 69.2537313433%;
}

.home-bnrs-list__img img {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}

.home-bnrs-list__in {
    color: rgb(var(--color-grayscale-200));
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    z-index: 1;
    width: 100%;
}

.home-bnrs-list__in::before {
    content: "";
    background: rgba(0, 0, 0, 0.3);
    opacity: 0;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: -1;
    transition: all 0.3s ease;
}

.home-bnrs-list__in[target] .home-bnrs-list__ico::after {
    content: "";
    display: inline-block;
    width: 18px;
    height: 18px;
    background-color: #ffffff;
    color: #ffffff;
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg width='17' height='17' viewBox='0 0 17 17' fill='none' xmlns='http://www.w3.org/2000/svg'%3E %3Cpath d='M1 8.5H16M16 8.5L8.5 16M16 8.5L8.5 1' stroke='%238A8A8A' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E %3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg width='17' height='17' viewBox='0 0 17 17' fill='none' xmlns='http://www.w3.org/2000/svg'%3E %3Cpath d='M1 8.5H16M16 8.5L8.5 16M16 8.5L8.5 1' stroke='%238A8A8A' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E %3C/svg%3E");
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
    transition: all 0.3s ease;
}

.home-bnrs-list__area-txt {
    text-align: center;
}

.home-bnrs-list__en {
    font-size: 2.2rem;
    margin-bottom: 12px;
}

.home-bnrs-list__head {
    font-size: 1.3rem;
    font-weight: var(--font-weight_bold);
    line-height: var(--line-height_snug);
    letter-spacing: var(--letter-spacing_snug);
}

.home-bnrs-list__ico {
    box-sizing: border-box;
    border: 1px solid rgb(var(--color-grayscale-200));
    border-radius: 50%;
    color: rgb(var(--color-grayscale-200));
    display: block;
    margin-top: 20px;
    height: 44px;
    width: 44px;
    position: relative;
    transition: all 0.3s ease;
}

.home-bnrs-list__ico::after {
    content: "";
    display: inline-block;
    width: 16px;
    height: 16px;
    background-color: #ffffff;
    color: #ffffff;
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg width='17' height='17' viewBox='0 0 17 17' fill='none' xmlns='http://www.w3.org/2000/svg'%3E %3Cpath d='M1 8.5H16M16 8.5L8.5 16M16 8.5L8.5 1' stroke='%238A8A8A' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E %3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg width='17' height='17' viewBox='0 0 17 17' fill='none' xmlns='http://www.w3.org/2000/svg'%3E %3Cpath d='M1 8.5H16M16 8.5L8.5 16M16 8.5L8.5 1' stroke='%238A8A8A' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E %3C/svg%3E");
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
    transition: all 0.3s ease;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    transition: none;
}

@media all and (min-width: 768px) {
    .home-bnrs__inner {
        padding: 50px 40px;
    }

    .home-bnrs-list {
        grid-template-columns: repeat(3, 1fr);
        gap: 11px;
    }

    .home-bnrs-list__en {
        font-size: 3.4rem;
        margin-bottom: 10px;
    }

    .home-bnrs-list__head {
        font-size: 1.8rem;
    }

    .home-bnrs-list__ico {
        border: 1px solid rgb(var(--color-grayscale-200));
        margin-top: 40px;
        height: 60px;
        width: 60px;
    }
}

@media (hover: hover) and (pointer: fine) {
    .home-bnrs-list__in:hover::before {
        opacity: 1;
    }

    .home-bnrs-list__in:hover .home-bnrs-list__ico {
        background: rgb(var(--color-grayscale-200));
        color: rgb(var(--color-primary-400));
    }

    .home-bnrs-list__in:not([target]):hover .home-bnrs-list__ico::after {
        -webkit-animation: icoMove 0.6s ease-in-out;
        animation: icoMove 0.6s ease-in-out;
    }
}

/* .home-news
================================================== */
.home-news {
    background: rgb(var(--color-grayscale-200));
    border-radius: 0 0 70px 0;
    position: relative;
    z-index: 1;
}

.home-news__inner {
    padding-top: 46px;
    padding-bottom: 70px;
}

@media all and (min-width: 768px) {
    .home-news {
        border-radius: 0 0 160px 0;
    }

    .home-news__inner {
        display: grid;
        grid-template-columns: auto 1fr;
        gap: 0 90px;
        padding-top: 120px;
        padding-bottom: 180px;
    }

    .home-news__archive {
        grid-column: 2/3;
        grid-row: 1/4;
    }

    .home-news__btn {
        grid-column: 1/2;
        grid-row: 2/3;
        margin: 0;
    }
}

.home-news-bg {
    margin-top: -70px;
    margin-bottom: 50px;
    position: relative;
}

.home-news-bg::before {
    content: "";
    display: block;
    padding-top: 85.3333333333%;
}

.home-news-bg::after {
    content: "";
    background: rgb(var(--color-primary-500));
    display: block;
    mix-blend-mode: screen;
    opacity: 0.7;
    position: absolute;
    top: 0;
    bottom: 0;
    width: 100%;
}

.home-news-bg video,
.home-news-bg img {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    z-index: -1;
}

@media all and (min-width: 768px) {
    .home-news-bg {
        margin-top: -160px;
        margin-bottom: 100px;
    }

    .home-news-bg::before {
        padding-top: 36.4583333333%;
    }
}

/* .news-archive
================================================== */
.news-archive__inner {
    padding-top: var(--section-space--sm);
    padding-bottom: var(--section-space--xl);
}

/* .privacy-main
================================================== */
.privacy-main__inner {
    padding-top: var(--section-space--sm);
    padding-bottom: var(--section-space--xl);
}

.privacy-main-sec {
    margin-top: 40px;
}

.privacy-main-sec__txt {
    margin: 1em 0;
}

@media all and (min-width: 768px) {
    .privacy-main-sec {
        margin-top: 80px;
    }
}

/* .product-anc
================================================== */
.product-anc__inner {
    padding-top: var(--section-space--sm);
    padding-bottom: var(--section-space--md);
}

.product-anc__list {
    display: grid;
    grid-template-columns: 1fr 1fr;
}

.product-anc__item-in {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    border: 1px solid rgb(var(--color-grayscale-400));
    padding: 20px;
    height: 100%;
}

.product-anc__item-in::after {
    content: "";
    display: inline-block;
    width: 10px;
    height: 6px;
    background-color: #3C89B7;
    color: #3C89B7;
    -webkit-mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 10 6"><path d="M8.9 0 5 3.88 1.1 0 0 1.02 5 6l5-4.98L8.9 0Z"/></svg>');
    mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 10 6"><path d="M8.9 0 5 3.88 1.1 0 0 1.02 5 6l5-4.98L8.9 0Z"/></svg>');
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
    transition: all 0.3s ease;
    color: rgb(var(--color-grayscale-800));
    display: inline-block;
    margin-top: 10px;
}

.product-anc__item-img {
    max-width: 40px;
    margin: auto;
}

.product-anc__item-txt {
    font-weight: var(--font-weight_bold);
    letter-spacing: var(--letter-spacing_snug);
    line-height: var(--line-height_snug);
    margin-top: 10px;
    text-align: center;
}

@media all and (min-width: 768px) {
    .product-anc__inner {
        padding-top: var(--section-space--lg);
    }

    .product-anc__list {
        grid-template-columns: repeat(4, 1fr);
        gap: 20px 0;
    }

    .product-anc__item-in {
        padding: 10px;
        border-top: none;
        border-bottom: none;
    }

    .product-anc__item-in::after {
        transition: all 0.3s ease;
    }

    .product-anc__item-img {
        max-width: 60px;
    }

    .product-anc__item-txt {
        transition: all 0.3s ease;
        font-size: 1.5rem;
        margin-top: 5px;
    }
}

@media (hover: hover) and (pointer: fine) {
    .product-anc__item-in:hover::after {
        color: rgb(var(--color-primary-400));
    }

    .product-anc__item-in:hover .product-anc__item-txt {
        color: rgb(var(--color-primary-400));
    }
}

/* .product-sec
================================================== */
.product-sec {
    position: relative;
}

.product-sec:nth-of-type(1) {
    border-top-left-radius: 70px;
}

.product-sec__inner {
    padding-top: var(--section-space--lg);
    padding-bottom: var(--section-space--md);
}

.product-sec__bg-ico {
    opacity: 0.05;
    position: absolute;
    top: 30px;
    right: 30px;
    max-width: 120px;
}

.product-sec__txt {
    font-size: 1.5rem;
    margin-bottom: 30px;
}

@media all and (min-width: 768px) {
    .product-sec__inner {
        position: relative;
    }

    .product-sec__bg-ico {
        top: 40px;
        right: -36px;
        max-width: 280px;
    }
}

.product-category-container {
    position: relative;
}

.product-category-container::before {
    content: "";
    display: block;
    width: 100%;
    height: 95%;
    background: url(../image/bg_texture01.jpg) repeat center/500px 500px;
    position: absolute;
    bottom: -308px;
    left: 0;
    z-index: -1;
}

@media all and (min-width: 768px) {
    .product-category-container::before {
        border-top-left-radius: 70px;
        bottom: 0;
        height: calc(100% - 510px);
    }
}

/* .product-category-main
================================================== */
.product-category-main__inner {
    padding-top: var(--section-space--sm);
    padding-bottom: var(--section-space--sm);
}

.product-category-main__set {
    margin-bottom: 60px;
}

.product-category-main__set-txt {
    margin-top: 18px;
}

@media all and (min-width: 768px) {
    .product-category-main__inner {
        padding-top: var(--section-space--lg);
    }

    .product-category-main__set {
        display: flex;
        align-items: flex-start;
        margin-bottom: 70px;
    }

    .product-category-main__set-txt {
        max-width: 700px;
        margin-left: auto;
    }
}

/* .product-category-cat
================================================== */
.product-category-cat {
    border-top: 1px solid rgb(var(--color-grayscale-500));
}

.product-category-cat__inner {
    padding-top: var(--section-space--sm);
    padding-bottom: var(--section-space--sm);
}

.product-category-cat__head {
    color: rgb(var(--color-grayscale-800));
    font-size: 1.3rem;
    font-weight: var(--font-weight_bold);
    line-height: var(--line-height_snug);
    letter-spacing: var(--letter-spacing_snug);
    margin-bottom: 25px;
}

.product-category-cat__head-en {
    color: rgb(var(--color-grayscale-900));
    display: inline-block;
    font-size: 1.6rem;
    margin-right: 12px;
}

.product-category-cat__list {
    display: grid;
    grid-template-columns: 1fr 1fr;
}

.product-category-cat__item {
    border: 1px solid rgb(var(--color-grayscale-500));
}

.product-category-cat__item-in {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    padding: 20px;
}

.product-category-cat__item-ico {
    max-width: 40px;
    margin: auto;
}

.product-category-cat__item-txt {
    text-align: center;
    font-weight: var(--font-weight_bold);
    line-height: var(--line-height_snug);
    letter-spacing: var(--letter-spacing_snug);
}

.product-category-cat__item-arw {
    display: inline-block;
    width: 30px;
    height: 30px;
    border-radius: 50%;
    background: rgb(var(--color-primary-200));
    position: relative;
}

.product-category-cat__item-arw::before {
    content: "";
    display: inline-block;
    width: 16px;
    height: 12px;
    background-color: #3C89B7;
    color: #3C89B7;
    -webkit-mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 12"><path d="M9.53 0 8.21 1.32l4.06 3.76H0v1.84h12.26L8.2 10.68 9.52 12l6.47-6-6.46-6Z"/></svg>');
    mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 12"><path d="M9.53 0 8.21 1.32l4.06 3.76H0v1.84h12.26L8.2 10.68 9.52 12l6.47-6-6.46-6Z"/></svg>');
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
    transition: all 0.3s ease;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    color: rgb(var(--color-primary-500));
    width: 10px;
}

@media all and (min-width: 768px) {
    .product-category-cat__inner {
        padding-bottom: var(--section-space--md);
    }

    .product-category-cat__head {
        font-size: 1.5rem;
        margin-bottom: 54px;
    }

    .product-category-cat__head-en {
        font-size: 2.1rem;
        margin-right: 16px;
    }

    .product-category-cat__list {
        grid-template-columns: repeat(7, 1fr);
    }

    .product-category-cat__item {
        border: none;
        border-left: 1px solid rgb(var(--color-grayscale-500));
    }

    .product-category-cat__item:last-of-type {
        border-right: 1px solid rgb(var(--color-grayscale-500));
    }

    .product-category-cat__item-in {
        transition: all 0.3s ease;
        padding: 23px 18px;
    }

    .product-category-cat__item-ico {
        transition: all 0.3s ease;
        max-width: 60px;
    }

    .product-category-cat__item-ico img {
        transition: all 0.3s ease;
    }

    .product-category-cat__item-txt {
        transition: all 0.3s ease;
        font-size: 1.5rem;
    }

    .product-category-cat__item-arw {
        transition: all 0.3s ease;
        margin-top: 10px;
    }
}

@media (hover: hover) and (pointer: fine) {
    .product-category-cat__item-in:hover {
        background: rgb(var(--color-primary-400));
    }

    .product-category-cat__item-in:hover .product-category-cat__item-txt {
        color: #fff;
    }

    .product-category-cat__item-in:hover .product-category-cat__item-ico img {
        filter: invert(100%) sepia(0%) saturate(4246%) hue-rotate(148deg) brightness(124%) contrast(95%);
    }

    .product-category-cat__item-in:hover .product-category-cat__item-arw {
        background: #fff;
    }

    .product-category-cat__item-in:hover .product-category-cat__item-arw::before {
        color: rgb(var(--color-primary-400));
        -webkit-animation: icoMove 0.6s ease-in-out;
        animation: icoMove 0.6s ease-in-out;
    }
}

/* .product-single
================================================== */
.product-single__inner {
    padding-top: var(--section-space--md);
    padding-bottom: var(--section-space--md);
}

.product-single-sec+.product-single-sec {
    margin-top: 60px;
}

.product-single__head01 {
    margin: 0 0 20px;
}

.product-single__head02 {
    font-size: 1.6rem;
    font-weight: var(--font-weight_bold);
    line-height: var(--line-height_snug);
    letter-spacing: var(--letter-spacing_snug);
    background: rgb(var(--color-grayscale-300));
    padding: 10px;
    margin-top: 50px;
    margin-bottom: 20px;
}

.product-single__head02::before {
    content: "";
    display: inline-block;
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: rgb(var(--color-primary-500));
    margin-right: 10px;
    transform: translateY(-3px);
}

.product-single__txt {
    font-size: 1.5rem;
}

.product-single__img+.product-single__img {
    margin-top: 20px;
}

.product-single__videos {
    margin-top: 30px;
    display: grid;
    grid-template-columns: 1fr;
    gap: 30px;
    align-items: start;
}

.product-single__video-in {
    display: block;
    position: relative;
    width: 100%;
    cursor: pointer;
}

.product-single__video-in::before {
    position: relative;
    content: "";
    display: block;
    padding-top: 56.2264150943%;
}

.product-single__video img {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: block;
    border-radius: 5px;
    -o-object-fit: cover;
    object-fit: cover;
}

.product-single__video-txt {
    font-size: 1.6rem;
    margin-top: 21px;
    font-weight: var(--font-weight_bold);
    line-height: var(--line-height_snug);
    letter-spacing: var(--letter-spacing_snug);
}

.product-single__table {
    overflow-x: auto;
    white-space: nowrap;
    padding-bottom: 20px;
}

.product-single__table::-webkit-scrollbar {
    background: rgb(var(--color-grayscale-400));
    border-radius: 100px;
    height: 5px;
}

.product-single__table::-webkit-scrollbar-thumb {
    border-radius: 100px;
    background: rgb(var(--color-primary-500));
}

.product-single__table th,
.product-single__table td {
    font-weight: var(--font-weight_bold);
}

.product-single__table table {
    table-layout: unset;
}

.product-single__table thead tr:not(:first-of-type) th {
    padding-top: 1px;
    padding-bottom: 1px;
}

.product-single__table thead th {
    color: #fff;
    font-weight: normal;
    background: rgb(var(--color-primary-400));
    line-height: var(--line-height_snug);
    letter-spacing: var(--letter-spacing_snug);
    vertical-align: middle;
    text-align: center;
    border: 1px solid #fff;
    box-sizing: border-box;
    padding: 19px;
}

.product-single__table tbody th,
.product-single__table tbody td {
    line-height: var(--line-height_snug);
    letter-spacing: var(--letter-spacing_snug);
    vertical-align: middle;
    text-align: center;
    box-sizing: border-box;
}

.product-single__table tbody th {
    background: rgb(var(--color-primary-200));
    font-weight: normal;
    border: 1px solid #fff;
    height: 70px;
}

.product-single__table tbody td {
    font-weight: var(--font-weight_bold);
    padding: 12px;
    border: 1px solid rgb(var(--color-grayscale-400));
}

.product-single__note {
    counter-reset: counter;
    margin-top: 10px;
}

.product-single__note li {
    font-size: 1.3rem;
    color: rgb(var(--color-grayscale-800));
    counter-increment: counter;
    position: relative;
    padding-left: calc(1.5em + 10px);
}

.product-single__note li::before {
    content: "※"counter(counter);
    display: inline-block;
    position: absolute;
    top: 0;
    left: 0;
}

.product-single__content {
    margin: 60px 0 40px;
}

.product-single__content ol {
    padding: 20px;
    background: rgb(var(--color-primary-200));
}

.product-single__content ol li::before {
    padding: 0;
    margin-right: 8px;
    min-width: unset;
    content: "";
    display: inline-block;
    width: 15px;
    height: 15px;
    background-color: #3C89B7;
    color: #3C89B7;
    -webkit-mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="15" height="15" fill="none" viewBox="0 0 15 15"><path fill="#3C89B7" d="M6.307 10.443 3.414 7.549l.964-.964 1.929 1.928 3.856-3.857.965.965-4.821 4.82v.002Z"/><path fill="#3C89B7" fill-rule="evenodd" d="M0 7.5a7.5 7.5 0 1 1 15 0 7.5 7.5 0 0 1-15 0Zm7.5 6.136A6.138 6.138 0 0 1 3.16 3.161 6.136 6.136 0 1 1 7.5 13.636Z" clip-rule="evenodd"/></svg>');
    mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="15" height="15" fill="none" viewBox="0 0 15 15"><path fill="#3C89B7" d="M6.307 10.443 3.414 7.549l.964-.964 1.929 1.928 3.856-3.857.965.965-4.821 4.82v.002Z"/><path fill="#3C89B7" fill-rule="evenodd" d="M0 7.5a7.5 7.5 0 1 1 15 0 7.5 7.5 0 0 1-15 0Zm7.5 6.136A6.138 6.138 0 0 1 3.16 3.161 6.136 6.136 0 1 1 7.5 13.636Z" clip-rule="evenodd"/></svg>');
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
    color: rgb(var(--color-primary-500));
    transform: translateY(3px);
}

.product-single__content ul {
    padding: 20px;
    background: rgb(var(--color-grayscale-300));
}

.product-single__content ul li {
    list-style-position: inside;
}

.product-single__cards {
    display: grid;
    grid-template-columns: 1fr;
    gap: 30px;
}

.product-single__card-img img {
    border-radius: 5px;
    width: 100%;
}

.product-single__card-head {
    font-size: 1.8rem;
    line-height: var(--line-height_snug);
    letter-spacing: var(--letter-spacing_snug);
    font-weight: var(--font-weight_bold);
    margin-top: 21px;
    overflow: hidden;
    display: -webkit-box;
    max-height: 1.5em;
    line-height: 1.5;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    text-overflow: ellipsis;
}

.product-single__card-txt {
    margin-top: 10px;
    font-size: 1.5rem;
}

.product-single__returns {
    display: grid;
    grid-template-columns: 1fr;
    gap: 20px;
    margin-bottom: 30px;
}

.product-single__return {
    border-radius: 5px;
    border: 2px solid #f17c8a;
    box-sizing: border-box;
    overflow: hidden;
}

.product-single__return.is-ng {
    border-color: rgb(var(--color-grayscale-800));
}

.product-single__return.is-ng .product-single__return-txt {
    background: rgb(var(--color-grayscale-800));
}

.product-single__return-img img {
    width: 100%;
}

.product-single__return-txt {
    display: block;
    text-align: center;
    color: #fff;
    font-size: 1.5rem;
    line-height: var(--line-height_snug);
    letter-spacing: var(--letter-spacing_snug);
    font-weight: var(--font-weight_bold);
    padding: 10px;
    background: #f17c8a;
}

@media all and (min-width: 768px) {
    .product-single-sec+.product-single-sec {
        margin-top: 120px;
    }

    .product-single__head01 {
        margin: 0 0 50px;
    }

    .product-single__head02 {
        margin: 80px 0 30px;
        font-size: 1.8rem;
        padding: 10px 20px;
    }

    .product-single__txt {
        font-size: 1.6rem;
    }

    .product-single__img+.product-single__img {
        margin-top: 30px;
    }

    .product-single__table {
        white-space: unset;
        overflow-x: unset;
    }

    .product-single__table thead th {
        white-space: nowrap;
        font-size: 1.5rem;
        padding: 10px;
    }

    .product-single__table tbody th,
    .product-single__table tbody td {
        font-size: 1.5rem;
        padding: 10px;
    }

    .product-single__table-note {
        margin-top: 15px;
    }

    .product-single__content {
        margin: 50px 0 60px;
    }

    .product-single__content ol {
        padding: 30px 20px;
        margin: 30px 0;
    }

    .product-single__content ul {
        padding: 20px;
        margin: 30px 0;
    }

    .product-single__content .alignleft,
    .product-single__content .alignright {
        margin-bottom: 60px;
    }

    .product-single__cards {
        grid-template-columns: 1fr 1fr;
        gap: 50px 40px;
    }

    .product-single__card-head {
        font-size: 2.1rem;
        margin-top: 30px;
        max-height: 1.5em;
        -webkit-line-clamp: 1;
    }

    .product-single__card-txt {
        margin-top: 15px;
    }

    .product-single__videos {
        grid-template-columns: 1fr 1fr;
        gap: 40px;
    }

    .product-single__video-txt {
        margin-top: 30px;
        font-size: 1.8rem;
    }

    .product-single__returns {
        grid-template-columns: 1fr 1fr;
        gap: 40px;
    }

    .product-single__return-txt {
        font-size: 1.6rem;
    }
}

/* .product-single-intro
================================================== */
.product-single-intro__inner {
    padding-top: var(--section-space--sm);
    padding-bottom: var(--section-space--md);
}

.product-single-intro__txt {
    font-size: 1.5rem;
    padding-bottom: 30px;
    border-bottom: 1px solid rgb(var(--color-grayscale-500));
}

.product-single-intro__box {
    margin-top: 30px;
    border: 1px solid rgb(var(--color-grayscale-500));
    border-radius: 5px;
    background: #fff;
    padding: 20px 15px;
}

.product-single-intro__list {
    display: grid;
    grid-template-columns: 1fr;
    gap: 10px;
}

.product-single-intro__item {
    display: flex;
    align-items: center;
}

.product-single-intro__item-cat {
    flex-shrink: 0;
    margin-right: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 40px;
    min-height: 40px;
    aspect-ratio: 1;
    border-radius: 50%;
    color: #fff;
    background: rgb(var(--color-category01-500));
    font-size: 1.2rem;
    font-weight: var(--font-weight_bold);
    line-height: var(--line-height_snug);
    letter-spacing: var(--letter-spacing_snug);
}

.product-single-intro__item-cat.is-pink {
    background: rgb(var(--color-category02-500));
}

.product-single-intro__item-cat.is-green {
    background: rgb(var(--color-category03-500));
}

.product-single-intro__set {
    display: grid;
    grid-template-columns: 1fr;
    gap: 30px;
}

.product-single-intro__slider {
    position: relative;
}

@media all and (min-width: 768px) {
    .product-single-intro__set {
        grid-template-columns: 1fr 1fr;
        gap: 0;
    }

    .product-single-intro__textarea {
        margin-top: 0;
        padding-left: 50px;
    }
}

/* .product-single-slider
================================================== */
.product-single-slider {
    border-top-left-radius: 70px;
}

.product-single-slider__inner {
    padding-top: var(--section-space--lg);
    padding-bottom: var(--section-space--md);
}

.product-single-slider__container {
    position: relative;
}

.product-single-slider__container+.product-single-slider__container {
    margin-top: 50px;
    padding-top: 50px;
}

.product-single-slider__container+.product-single-slider__container::before {
    content: "";
    display: inline-block;
    width: 99.99vw;
    height: 1px;
    background-color: rgb(var(--color-grayscale-500));
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
}

@media all and (min-width: 768px) {
    .product-single-slider__inner {
        padding-top: var(--section-space--md);
    }

    .product-single-slider__container+.product-single-slider__container {
        margin-top: 100px;
        padding-top: 100px;
    }
}

/* .product-single-btn
================================================== */
.product-single-btn__inner {
    padding-top: var(--section-space--x2s);
    padding-bottom: var(--section-space--x2s);
}

@media all and (min-width: 768px) {
    .product-single-btn__inner {
        padding-top: var(--section-space--xs);
        padding-bottom: var(--section-space--xs);
    }
}

/* .results-search
================================================== */
.results-search__inner {
    padding-top: var(--section-space--sm);
    padding-bottom: var(--section-space--sm);
}

.results-search__txt {}

@media all and (min-width: 768px) {
    .results-search__inner {
        padding-bottom: var(--section-space--md);
    }

    .results-search__txt {}
}

/* .results-main
================================================== */
.results-main {
    border-radius: 70px 0 0 0;
}

.results-main__inner {
    padding-top: var(--section-space--md);
    padding-bottom: var(--section-space--xl);
}

@media all and (min-width: 768px) {
    .results-main__inner {
        padding-bottom: var(--section-space--xl);
    }
}

/* .searches-form
================================================== */
.searches-form__inner {
    padding-top: var(--section-space--sm);
}

/* .searches-archive
================================================== */
.searches-archive__inner {
    padding-top: var(--section-space--sm);
    padding-bottom: var(--section-space--xl);
}

/* .service-intro
================================================== */
.service-intro {
    position: relative;
}

.service-intro__bg-txt {
    max-width: 246px;
    position: absolute;
    right: 0;
    bottom: 30px;
    z-index: -1;
}

.service-intro__inner {
    padding-top: var(--section-space--sm);
    padding-bottom: var(--section-space--lg);
}

.service-intro__set {
    display: flex;
    flex-direction: column;
}

.service-intro__imgs {
    order: -1;
    display: flex;
    align-items: flex-start;
}

.service-intro__img+.service-intro__img {
    margin-left: 12px;
}

.service-intro__img:first-of-type {
    margin-top: 31px;
}

.service-intro__img img {
    border-radius: 5px;
}

.service-intro__textarea {
    margin-top: 71px;
}

.service-intro__head {
    font-size: 2.4rem;
    font-weight: var(--font-weight_bold);
    line-height: var(--line-height_snug);
    letter-spacing: var(--letter-spacing_snug);
    margin-bottom: 30px;
}

.service-intro__txt {
    font-size: 1.6rem;
}

@media all and (min-width: 768px) {
    .service-intro__bg-txt {
        max-width: 715px;
        bottom: 80px;
    }

    .service-intro__inner {
        padding-top: var(--section-space--lg);
        padding-bottom: 230px;
    }

    .service-intro__set {
        flex-direction: row;
    }

    .service-intro__imgs {
        order: unset;
        flex: 1;
        margin-left: 95px;
        margin-right: -150px;
    }

    .service-intro__img+.service-intro__img {
        margin-left: 27px;
    }

    .service-intro__img:first-of-type {
        margin-top: 67px;
    }

    .service-intro__textarea {
        max-width: 490px;
        margin-top: 109px;
    }

    .service-intro__head {
        font-size: 3.8rem;
    }

    .service-intro__txt+.service-intro__txt {
        margin-top: 1.5em;
    }
}

/* .service-main
================================================== */
.service-main {
    border-top-left-radius: 70px;
}

.service-main__inner {
    padding-top: var(--section-space--lg);
    padding-bottom: var(--section-space--md);
}

.service-main__list {
    display: grid;
    grid-template-columns: 1fr;
    gap: 30px;
    margin-top: 30px;
}

.service-main__item-img {
    margin-bottom: 30px;
    border-radius: 5px;
}

.service-main__item-txt {
    margin-top: 15px;
}

@media all and (min-width: 768px) {
    .service-main__inner {
        padding-top: var(--section-space--md);
    }

    .service-main__list {
        margin-top: 60px;
        grid-template-columns: 1fr 1fr;
        gap: 50px 40px;
    }

    .service-main__item-img {
        margin-bottom: 40px;
    }

    .service-main__item-txt {
        margin-top: 20px;
    }
}

/* .setup-lead
================================================== */
.setup-lead {
    padding-top: var(--section-space--sm);
    padding-bottom: var(--section-space--sm);
}

/* .setup-main
================================================== */
.setup-main {
    border-top-left-radius: 70px;
}

.setup-main__inner {
    padding-top: var(--section-space--md);
    padding-bottom: var(--section-space--xl);
}

.setup-main__list {
    display: grid;
    grid-template-columns: 1fr;
    gap: 15px;
}

.setup-main__item {
    background: #fff;
}

.setup-main__item-in {
    display: block;
    padding: 30px 20px;
}

.setup-main__item-head {
    font-size: 1.8rem;
    font-weight: var(--font-weight_bold);
    line-height: var(--line-height_snug);
    letter-spacing: var(--letter-spacing_snug);
    padding-bottom: 10px;
    border-bottom: 1px solid rgb(var(--color-grayscale-500));
    margin-bottom: 20px;
}

.setup-main__item-set {
    display: grid;
    grid-template-columns: 1fr;
    gap: 20px;
}

.setup-main__item-img {
    overflow: hidden;
    text-align: center;
    border-radius: 5px;
}

.setup-main__item-img img {
    border-radius: 5px;
}

.setup-main__item-txt {
    font-size: 1.5rem;
}

.setup-main__item-link {
    margin-top: auto;
    text-align: right;
    display: block;
    margin-top: 20px;
    font-size: 1.6rem;
    font-weight: var(--font-weight_bold);
    line-height: var(--line-height_snug);
    letter-spacing: var(--letter-spacing_snug);
}

.setup-main__item-ico {
    width: 16px;
    height: 12px;
    display: inline-block;
    position: relative;
    margin-left: 9px;
}

.setup-main__item-ico::before {
    content: "";
    display: inline-block;
    width: 16px;
    height: 12px;
    background-color: #3C89B7;
    color: #3C89B7;
    -webkit-mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 12"><path d="M9.53 0 8.21 1.32l4.06 3.76H0v1.84h12.26L8.2 10.68 9.52 12l6.47-6-6.46-6Z"/></svg>');
    mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 12"><path d="M9.53 0 8.21 1.32l4.06 3.76H0v1.84h12.26L8.2 10.68 9.52 12l6.47-6-6.46-6Z"/></svg>');
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
    transition: all 0.3s ease;
    color: rgb(var(--color-primary-500));
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

@media all and (min-width: 768px) {
    .setup-main__inner {
        padding-bottom: var(--section-space--xl);
    }

    .setup-main__list {
        gap: 40px;
    }

    .setup-main__item-in {
        padding: 40px;
        transition: all 0.3s ease;
    }

    .setup-main__item-head {
        font-size: 2.3rem;
        margin-bottom: 20px;
    }

    .setup-main__item-set {
        grid-template-columns: 1fr 1fr;
        gap: 40px;
    }

    .setup-main__item-textarea {
        display: flex;
        flex-direction: column;
    }

    .setup-main__item-link {
        margin-top: auto;
    }
}

@media (hover: hover) and (pointer: fine) {
    .setup-main__item-in:hover {
        color: rgb(var(--color-primary-400));
    }

    .setup-main__item-in:hover .setup-main__item-ico::before {
        -webkit-animation: icoMove 0.6s ease-in-out;
        animation: icoMove 0.6s ease-in-out;
    }
}

/* .sitemap-main
================================================== */
.sitemap-main {
    --link-mt: 30px;
}

.sitemap-main__inner {
    padding-top: var(--section-space--sm);
    padding-bottom: var(--section-space--xl);
}

.sitemap-main__link:not(:first-of-type) {
    margin-top: var(--link-mt);
}

.sitemap-main__link-in {
    display: flex;
    align-items: center;
    padding-bottom: 12px;
    border-bottom: 1px solid rgb(var(--color-grayscale-500));
    font-size: 1.8rem;
    font-weight: var(--font-weight_bold);
}

.sitemap-main__link-ico {
    background: rgba(var(--color-primary-200));
    border-radius: 50%;
    color: rgb(var(--color-primary-500));
    display: inline-block;
    margin-right: 12px;
    height: 44px;
    width: 44px;
    position: relative;
    transition: all 0.3s ease;
}

.sitemap-main__link-ico::after {
    content: "";
    display: inline-block;
    width: 16px;
    height: 12px;
    background-color: #3C89B7;
    color: #3C89B7;
    -webkit-mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 12"><path d="M9.53 0 8.21 1.32l4.06 3.76H0v1.84h12.26L8.2 10.68 9.52 12l6.47-6-6.46-6Z"/></svg>');
    mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 12"><path d="M9.53 0 8.21 1.32l4.06 3.76H0v1.84h12.26L8.2 10.68 9.52 12l6.47-6-6.46-6Z"/></svg>');
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
    transition: all 0.3s ease;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    transition: none;
}

.sitemap-main__list {
    margin-top: 20px;
    display: grid;
    grid-template-columns: 1fr;
}

.sitemap-main__item-in {
    display: block;
    padding-top: 20px;
    padding-bottom: 15px;
    border-bottom: 1px solid rgb(var(--color-grayscale-500));
    font-size: 1.6rem;
    font-weight: var(--font-weight_bold);
    box-sizing: border-box;
    position: relative;
}

.sitemap-main__item-ico {
    position: absolute;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
    display: inline-block;
    width: 16px;
}

.sitemap-main__item-ico::after {
    content: "";
    display: inline-block;
    width: 16px;
    height: 12px;
    background-color: #3C89B7;
    color: #3C89B7;
    -webkit-mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 12"><path d="M9.53 0 8.21 1.32l4.06 3.76H0v1.84h12.26L8.2 10.68 9.52 12l6.47-6-6.46-6Z"/></svg>');
    mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 12"><path d="M9.53 0 8.21 1.32l4.06 3.76H0v1.84h12.26L8.2 10.68 9.52 12l6.47-6-6.46-6Z"/></svg>');
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
    transition: all 0.3s ease;
    color: rgb(var(--color-grayscale-800));
    position: absolute;
    top: 50%;
    right: 0;
    transform: translate(-50%, -50%);
}

@media all and (min-width: 768px) {
    .sitemap-main {
        --link-mt: 50px;
    }

    .sitemap-main__link-in {
        font-size: 2.3rem;
        transition: all 0.3s ease;
    }

    .sitemap-main__link-ico {
        height: 40px;
        width: 40px;
        transition: all 0.3s ease;
    }

    .sitemap-main__list {
        margin-top: 40px;
        grid-template-columns: repeat(3, 1fr);
        gap: 25px 40px;
    }

    .sitemap-main__item-in {
        transition: all 0.3s ease;
    }
}

@media (hover: hover) and (pointer: fine) {
    .sitemap-main__link-in:hover {
        color: rgb(var(--color-primary-400));
    }

    .sitemap-main__link-in:hover .sitemap-main__link-ico {
        background: rgb(var(--color-primary-400));
        color: rgb(var(--color-grayscale-200));
    }

    .sitemap-main__link-in:hover .sitemap-main__link-ico::after {
        -webkit-animation: icoMove 0.6s ease-in-out;
        animation: icoMove 0.6s ease-in-out;
    }

    .sitemap-main__item-in:hover {
        color: rgb(var(--color-primary-400));
    }

    .sitemap-main__item-in:hover .sitemap-main__item-ico::after {
        color: rgb(var(--color-primary-400));
        -webkit-animation: icoMove 0.6s ease-in-out;
        animation: icoMove 0.6s ease-in-out;
    }
}

@media print {
    body {
        font-size: 1rem;
        padding-top: 0;
    }

    .l-header,
    .l-main-img,
    .l-sub-img,
    .l-breadcrumb,
    .l-footer,
    .c-cv01,
    .l-cookie,
    .is-no-print {
        display: none;
    }

    .u-inner,
    .u-wide-inner {
        padding-top: 0;
        padding-bottom: 0;
    }
}

.mw_wp_form .error {
    font-size: 93%;
    color: #B70000;
    display: none;
}

@media (max-width: 767px) {
    .company-office-info__list-item,
    .company-office-info__list-head,
    .company-office-info__list-txt,
    .company-office-info__list-btn {
        display: block;
        width: 100%;
    }
}