﻿/*! normalize.css v8.0.0 | MIT License | github.com/necolas/normalize.css */

html {
    line-height: 1.15;
    -webkit-text-size-adjust: 100%
}

body {
    margin: 0
}

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

h1 {
    font-size: 2em;
    margin: .67em 0
}

hr {
    box-sizing: content-box;
    height: 0;
    overflow: visible
}

pre {
    font-family: monospace, monospace;
    font-size: 1em
}

a {
    background-color: rgba(0, 0, 0, 0)
}

abbr[title] {
    border-bottom: none;
    text-decoration: underline;
    text-decoration: underline dotted
}

b,
strong {
    font-weight: bolder
}

code,
kbd,
samp {
    font-family: monospace, monospace;
    font-size: 1em
}

small {
    font-size: 80%
}

sub,
sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline
}

sup {
    top: -0.5em
}

img {
    border-style: none
}

button,
input,
optgroup,
select,
textarea {
    font-family: inherit;
    font-size: 100%;
    line-height: 1.15;
    margin: 0
}

button,
input {
    overflow: visible
}

button,
select {
    text-transform: none
}

button,
[type=button],
[type=reset],
[type=submit] {
    -webkit-appearance: button
}

button::-moz-focus-inner,
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner {
    border-style: none;
    padding: 0
}

button:-moz-focusring,
[type=button]:-moz-focusring,
[type=reset]:-moz-focusring,
[type=submit]:-moz-focusring {
    outline: 1px dotted ButtonText
}

fieldset {
    padding: .35em .75em .625em
}

legend {
    box-sizing: border-box;
    color: inherit;
    display: table;
    max-width: 100%;
    padding: 0;
    white-space: normal
}

progress {
    vertical-align: baseline
}

textarea {
    overflow: auto
}

[type=checkbox],
[type=radio] {
    box-sizing: border-box;
    padding: 0
}

[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
    height: auto
}

[type=search] {
    -webkit-appearance: textfield;
    outline-offset: -2px
}

[type=search]::-webkit-search-decoration {
    -webkit-appearance: none
}

::-webkit-file-upload-button {
    -webkit-appearance: button;
    font: inherit
}

details {
    display: block
}

summary {
    display: list-item
}

template {
    display: none
}

[hidden] {
    display: none
}

.font-noto {
    font-family: "Noto Sans JP", sans-serif
}

.font-cjk {
    font-family: "Noto Sans CJK JP", "Noto Sans", sans-serif
}

html,
body {
    font-size: 62.5%
}

body,
body.am-en {
    color: #000;
    line-height: 1.7;
    letter-spacing: min(0.0390625vw, 0.5px);
    font-size: min(1.171875vw, 15px);
    font-family: "Noto Sans CJK JP", "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "Roboto", Arial, sans-serif, Verdana, Meiryo, "M+ 1p", sans-serif;
    background: #fff
}

@media screen and (max-width: 960px) {
    body,
    body.am-en {
        letter-spacing: .1315789474vw;
        font-size: 3.9473684211vw
    }
}

body.en {
    line-height: 1.6;
    letter-spacing: min(0.0234375vw, 0.3px)
}

@media screen and (max-width: 960px) {
    body.en {
        letter-spacing: .0789473684vw
    }
}

body * {
    box-sizing: border-box
}

a {
    color: #000;
    text-decoration: none
}

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

svg {
    vertical-align: middle
}

h1,
h2,
h3,
h4,
h5,
figure {
    margin: 0;
    padding: 0;
    font-weight: normal
}

input,
textarea,
select,
button,
fieldset {
    outline: 0;
    border: 0px
}

button {
    cursor: pointer;
    background-color: rgba(0, 0, 0, 0)
}

select {
    color: #000
}

input[type=text],
input[type=email],
input[type=tel],
input[type=search],
input[type=password],
textarea,
select {
    font-size: 16px;
    line-height: 30px;
    width: 100%;
    appearance: none;
    background: rgba(0, 0, 0, 0)
}

input[type=text]:placeholder-shown,
input[type=email]:placeholder-shown,
input[type=tel]:placeholder-shown,
input[type=search]:placeholder-shown,
input[type=password]:placeholder-shown,
textarea:placeholder-shown,
select:placeholder-shown {
    color: #767676
}

input[type=text]::-webkit-input-placeholder,
input[type=email]::-webkit-input-placeholder,
input[type=tel]::-webkit-input-placeholder,
input[type=search]::-webkit-input-placeholder,
input[type=password]::-webkit-input-placeholder,
textarea::-webkit-input-placeholder,
select::-webkit-input-placeholder {
    color: #767676
}

input[type=text]:-moz-placeholder,
input[type=email]:-moz-placeholder,
input[type=tel]:-moz-placeholder,
input[type=search]:-moz-placeholder,
input[type=password]:-moz-placeholder,
textarea:-moz-placeholder,
select:-moz-placeholder {
    color: #767676;
    opacity: 1
}

input[type=text]::-moz-placeholder,
input[type=email]::-moz-placeholder,
input[type=tel]::-moz-placeholder,
input[type=search]::-moz-placeholder,
input[type=password]::-moz-placeholder,
textarea::-moz-placeholder,
select::-moz-placeholder {
    color: #767676;
    opacity: 1
}

input[type=text]:-ms-input-placeholder,
input[type=email]:-ms-input-placeholder,
input[type=tel]:-ms-input-placeholder,
input[type=search]:-ms-input-placeholder,
input[type=password]:-ms-input-placeholder,
textarea:-ms-input-placeholder,
select:-ms-input-placeholder {
    color: #767676
}

p,
dl,
dt,
dd {
    margin: 0;
    padding: 0
}

ul,
ol {
    list-style: none;
    margin: 0;
    padding: 0
}

*:focus {
    outline: none
}

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

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

td,
th {
    font-weight: 400
}

@font-face {
    font-family: "swiper-icons";
    src: url("data:application/font-woff;charset=utf-8;base64, d09GRgABAAAAAAZgABAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAGRAAAABoAAAAci6qHkUdERUYAAAWgAAAAIwAAACQAYABXR1BPUwAABhQAAAAuAAAANuAY7+xHU1VCAAAFxAAAAFAAAABm2fPczU9TLzIAAAHcAAAASgAAAGBP9V5RY21hcAAAAkQAAACIAAABYt6F0cBjdnQgAAACzAAAAAQAAAAEABEBRGdhc3AAAAWYAAAACAAAAAj//wADZ2x5ZgAAAywAAADMAAAD2MHtryVoZWFkAAABbAAAADAAAAA2E2+eoWhoZWEAAAGcAAAAHwAAACQC9gDzaG10eAAAAigAAAAZAAAArgJkABFsb2NhAAAC0AAAAFoAAABaFQAUGG1heHAAAAG8AAAAHwAAACAAcABAbmFtZQAAA/gAAAE5AAACXvFdBwlwb3N0AAAFNAAAAGIAAACE5s74hXjaY2BkYGAAYpf5Hu/j+W2+MnAzMYDAzaX6QjD6/4//Bxj5GA8AuRwMYGkAPywL13jaY2BkYGA88P8Agx4j+/8fQDYfA1AEBWgDAIB2BOoAeNpjYGRgYNBh4GdgYgABEMnIABJzYNADCQAACWgAsQB42mNgYfzCOIGBlYGB0YcxjYGBwR1Kf2WQZGhhYGBiYGVmgAFGBiQQkOaawtDAoMBQxXjg/wEGPcYDDA4wNUA2CCgwsAAAO4EL6gAAeNpj2M0gyAACqxgGNWBkZ2D4/wMA+xkDdgAAAHjaY2BgYGaAYBkGRgYQiAHyGMF8FgYHIM3DwMHABGQrMOgyWDLEM1T9/w8UBfEMgLzE////P/5//f/V/xv+r4eaAAeMbAxwIUYmIMHEgKYAYjUcsDAwsLKxc3BycfPw8jEQA/gZBASFhEVExcQlJKWkZWTl5BUUlZRVVNXUNTQZBgMAAMR+E+gAEQFEAAAAKgAqACoANAA+AEgAUgBcAGYAcAB6AIQAjgCYAKIArAC2AMAAygDUAN4A6ADyAPwBBgEQARoBJAEuATgBQgFMAVYBYAFqAXQBfgGIAZIBnAGmAbIBzgHsAAB42u2NMQ6CUAyGW568x9AneYYgm4MJbhKFaExIOAVX8ApewSt4Bic4AfeAid3VOBixDxfPYEza5O+Xfi04YADggiUIULCuEJK8VhO4bSvpdnktHI5QCYtdi2sl8ZnXaHlqUrNKzdKcT8cjlq+rwZSvIVczNiezsfnP/uznmfPFBNODM2K7MTQ45YEAZqGP81AmGGcF3iPqOop0r1SPTaTbVkfUe4HXj97wYE+yNwWYxwWu4v1ugWHgo3S1XdZEVqWM7ET0cfnLGxWfkgR42o2PvWrDMBSFj/IHLaF0zKjRgdiVMwScNRAoWUoH78Y2icB/yIY09An6AH2Bdu/UB+yxopYshQiEvnvu0dURgDt8QeC8PDw7Fpji3fEA4z/PEJ6YOB5hKh4dj3EvXhxPqH/SKUY3rJ7srZ4FZnh1PMAtPhwP6fl2PMJMPDgeQ4rY8YT6Gzao0eAEA409DuggmTnFnOcSCiEiLMgxCiTI6Cq5DZUd3Qmp10vO0LaLTd2cjN4fOumlc7lUYbSQcZFkutRG7g6JKZKy0RmdLY680CDnEJ+UMkpFFe1RN7nxdVpXrC4aTtnaurOnYercZg2YVmLN/d/gczfEimrE/fs/bOuq29Zmn8tloORaXgZgGa78yO9/cnXm2BpaGvq25Dv9S4E9+5SIc9PqupJKhYFSSl47+Qcr1mYNAAAAeNptw0cKwkAAAMDZJA8Q7OUJvkLsPfZ6zFVERPy8qHh2YER+3i/BP83vIBLLySsoKimrqKqpa2hp6+jq6RsYGhmbmJqZSy0sraxtbO3sHRydnEMU4uR6yx7JJXveP7WrDycAAAAAAAH//wACeNpjYGRgYOABYhkgZgJCZgZNBkYGLQZtIJsFLMYAAAw3ALgAeNolizEKgDAQBCchRbC2sFER0YD6qVQiBCv/H9ezGI6Z5XBAw8CBK/m5iQQVauVbXLnOrMZv2oLdKFa8Pjuru2hJzGabmOSLzNMzvutpB3N42mNgZGBg4GKQYzBhYMxJLMlj4GBgAYow/P/PAJJhLM6sSoWKfWCAAwDAjgbRAAB42mNgYGBkAIIbCZo5IPrmUn0hGA0AO8EFTQAA") format("woff");
    font-weight: 400;
    font-style: normal
}

:root {
    --swiper-theme-color: #007aff
}

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

.swiper-container-vertical>.swiper-wrapper {
    flex-direction: column
}

.swiper-wrapper {
    position: relative;
    width: 100%;
    height: 100%;
    z-index: 1;
    display: flex;
    transition-property: transform;
    box-sizing: content-box
}

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

.swiper-container-multirow>.swiper-wrapper {
    flex-wrap: wrap
}

.swiper-container-multirow-column>.swiper-wrapper {
    flex-wrap: wrap;
    flex-direction: column
}

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

.swiper-container-pointer-events {
    touch-action: pan-y
}

.swiper-container-pointer-events.swiper-container-vertical {
    touch-action: pan-x
}

.swiper-slide {
    flex-shrink: 0;
    width: 100%;
    height: 100%;
    position: relative;
    transition-property: transform
}

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

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

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

.swiper-container-3d {
    perspective: 1200px
}

.swiper-container-3d .swiper-wrapper,
.swiper-container-3d .swiper-slide,
.swiper-container-3d .swiper-slide-shadow-left,
.swiper-container-3d .swiper-slide-shadow-right,
.swiper-container-3d .swiper-slide-shadow-top,
.swiper-container-3d .swiper-slide-shadow-bottom,
.swiper-container-3d .swiper-cube-shadow {
    transform-style: preserve-3d
}

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

.swiper-container-3d .swiper-slide-shadow-left {
    background-image: linear-gradient(to left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0))
}

.swiper-container-3d .swiper-slide-shadow-right {
    background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0))
}

.swiper-container-3d .swiper-slide-shadow-top {
    background-image: linear-gradient(to top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0))
}

.swiper-container-3d .swiper-slide-shadow-bottom {
    background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0))
}

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

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

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

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

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

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

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

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

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

.swiper-button-prev,
.swiper-container-rtl .swiper-button-next {
    left: 10px;
    right: auto
}

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

.swiper-button-next,
.swiper-container-rtl .swiper-button-prev {
    right: 10px;
    left: auto
}

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

.swiper-button-prev.swiper-button-white,
.swiper-button-next.swiper-button-white {
    --swiper-navigation-color: #ffffff
}

.swiper-button-prev.swiper-button-black,
.swiper-button-next.swiper-button-black {
    --swiper-navigation-color: #000000
}

.swiper-button-lock {
    display: none
}

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

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

.swiper-pagination-fraction,
.swiper-pagination-custom,
.swiper-container-horizontal>.swiper-pagination-bullets {
    bottom: 10px;
    left: 0;
    width: 100%
}

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

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

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

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

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

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

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

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

.swiper-pagination-bullet {
    width: 8px;
    height: 8px;
    display: inline-block;
    border-radius: 50%;
    background: #000;
    opacity: .2
}

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

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

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

.swiper-container-vertical>.swiper-pagination-bullets {
    right: 10px;
    top: 50%;
    transform: translate3d(0px, -50%, 0)
}

.swiper-container-vertical>.swiper-pagination-bullets .swiper-pagination-bullet {
    margin: 6px 0;
    display: block
}

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

.swiper-container-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
    display: inline-block;
    transition: 200ms transform, 200ms top
}

.swiper-container-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet {
    margin: 0 4px
}

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

.swiper-container-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
    transition: 200ms transform, 200ms left
}

.swiper-container-horizontal.swiper-container-rtl>.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
    transition: 200ms transform, 200ms right
}

.swiper-pagination-progressbar {
    background: rgba(0, 0, 0, .25);
    position: absolute
}

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

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

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

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

.swiper-pagination-white {
    --swiper-pagination-color: #ffffff
}

.swiper-pagination-black {
    --swiper-pagination-color: #000000
}

.swiper-pagination-lock {
    display: none
}

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

.swiper-container-horizontal>.swiper-scrollbar {
    position: absolute;
    left: 1%;
    bottom: 3px;
    z-index: 50;
    height: 5px;
    width: 98%
}

.swiper-container-vertical>.swiper-scrollbar {
    position: absolute;
    right: 3px;
    top: 1%;
    z-index: 50;
    width: 5px;
    height: 98%
}

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

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

.swiper-scrollbar-lock {
    display: none
}

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

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

.swiper-slide-zoomed {
    cursor: move
}

.swiper-lazy-preloader {
    width: 42px;
    height: 42px;
    position: absolute;
    left: 50%;
    top: 50%;
    margin-left: -21px;
    margin-top: -21px;
    z-index: 10;
    transform-origin: 50%;
    animation: swiper-preloader-spin 1s infinite linear;
    box-sizing: border-box;
    border: 4px solid var(--swiper-preloader-color, var(--swiper-theme-color));
    border-radius: 50%;
    border-top-color: rgba(0, 0, 0, 0)
}

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

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

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

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

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

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

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

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

.swiper-container-cube {
    overflow: visible
}

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

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

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

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

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

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

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

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

.swiper-container-flip {
    overflow: visible
}

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

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

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

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

body.en .c-btn__label {
    line-height: 1.4
}

.c-btn-wrap {
    text-align: center;
    margin: min(3.125vw, 40px) 0
}

@media screen and (max-width: 960px) {
    .c-btn-wrap {
        margin: 10.5263157895vw 0
    }
}

.c-btn,
.c-btn--white,
.c-btn--light {
    display: inline-flex;
    align-items: center;
    justify-content: space-between;
    min-width: min(26.171875vw, 335px);
    min-height: min(4.6875vw, 60px);
    text-align: left;
    color: #fff;
    font-weight: 300;
    border-radius: min(4.6875vw, 60px);
    background-color: #009672
}

@media screen and (max-width: 960px) {
    .c-btn,
    .c-btn--white,
    .c-btn--light {
        min-width: 89.4736842105vw;
        min-height: 15.7894736842vw;
        font-size: 4.2105263158vw;
        border-radius: 15.7894736842vw
    }
}

.c-btn--fit {
    width: 100%;
    min-width: auto
}

.c-btn--dark {
    background-color: #007855
}

.c-btn__label {
    flex: 1;
    line-height: 1.5;
    margin-bottom: 1px;
    padding: 0 min(1.953125vw, 25px) 0 min(2.1875vw, 28px)
}

@media screen and (max-width: 960px) {
    .c-btn__label {
        padding: 0 6.5789473684vw 0 7.3684210526vw
    }
}

.c-btn__arrow {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    width: min(4.6875vw, 60px);
    height: min(4.6875vw, 60px)
}

@media screen and (max-width: 960px) {
    .c-btn__arrow {
        width: 15.7894736842vw;
        height: 15.7894736842vw
    }
}

.c-btn__arrow::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: min(4.6875vw, 60px);
    height: min(4.6875vw, 60px);
    border-radius: min(4.6875vw, 60px);
    background-color: rgba(0, 0, 0, .1);
    transition: transform .3s
}

@media screen and (max-width: 960px) {
    .c-btn__arrow::after {
        width: 15.7894736842vw;
        height: 15.7894736842vw;
        border-radius: 15.7894736842vw
    }
}

.c-btn--light {
    color: #000;
    background-color: #e5f6f2
}

.c-btn--light .c-btn__arrow::after {
    background-color: rgba(0, 150, 114, .1)
}

.c-btn--white {
    color: #009672;
    background-color: #fff
}

@media screen and (min-width: 961px) {
    .c-btn:hover .c-btn__arrow::after,
    .c-btn--light:hover .c-btn__arrow::after,
    .c-btn--white:hover .c-btn__arrow::after {
        transform: scale(1.3)
    }
}

.c-btn-c {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    width: min(4.6875vw, 60px);
    height: min(4.6875vw, 60px);
    border-radius: min(4.6875vw, 60px);
    background-color: #009672
}

@media screen and (max-width: 960px) {
    .c-btn-c {
        width: 10.5263157895vw;
        height: 10.5263157895vw;
        border-radius: 10.5263157895vw
    }
}

@media screen and (min-width: 961px) {
    .c-btn-c::after {
        content: "";
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        border-radius: 100%;
        background-color: rgba(0, 0, 0, .1);
        transition: transform .3s
    }
    .c-btn-c:hover::after {
        transform: scale(1.3)
    }
}

@media screen and (max-width: 960px) {
    .c-btn-c--typeB {
        width: 11.5789473684vw;
        height: 11.5789473684vw;
        border-radius: 11.5789473684vw
    }
}

.is-hide {
    display: none
}

.is-pc {
    display: block
}

@media screen and (max-width: 960px) {
    .is-pc {
        display: none
    }
}

.is-sp {
    display: none
}

@media screen and (max-width: 960px) {
    .is-sp {
        display: block
    }
}

.sp_parts,
.show_sp_only {
    display: none
}

@media screen and (max-width: 768px) {
    .sp_parts,
    .show_sp_only {
        display: block
    }
}

.tb_parts,
.show_tb_only {
    display: none
}

@media screen and (max-width: 1200px) {
    .tb_parts,
    .show_tb_only {
        display: none
    }
}

@media screen and (max-width: 960px) {
    .tb_parts,
    .show_tb_only {
        display: block
    }
}

@media screen and (max-width: 768px) {
    .tb_parts,
    .show_tb_only {
        display: none
    }
}

.pc_parts,
.show_pc_only {
    display: block
}

@media screen and (max-width: 960px) {
    .pc_parts,
    .show_pc_only {
        display: none
    }
}

.none_sp_parts,
.hide_sp_only {
    display: block
}

@media screen and (max-width: 1200px) {
    .none_sp_parts,
    .hide_sp_only {
        display: block
    }
}

@media screen and (max-width: 960px) {
    .none_sp_parts,
    .hide_sp_only {
        display: block
    }
}

@media screen and (max-width: 768px) {
    .none_sp_parts,
    .hide_sp_only {
        display: none
    }
}

.none_tb_parts,
.hide_tb_only {
    display: block
}

@media screen and (max-width: 1200px) {
    .none_tb_parts,
    .hide_tb_only {
        display: block
    }
}

@media screen and (max-width: 960px) {
    .none_tb_parts,
    .hide_tb_only {
        display: none
    }
}

@media screen and (max-width: 768px) {
    .none_tb_parts,
    .hide_tb_only {
        display: block
    }
}

.none_pc_parts,
.hide_pc_only {
    display: none
}

@media screen and (max-width: 1200px) {
    .none_pc_parts,
    .hide_pc_only {
        display: none
    }
}

@media screen and (max-width: 960px) {
    .none_pc_parts,
    .hide_pc_only {
        display: block
    }
}

@media screen and (max-width: 768px) {
    .none_pc_parts,
    .hide_pc_only {
        display: block
    }
}

.c-alert {
    background-color: #fff
}

.c-alert__meta {
    position: relative;
    display: flex;
    padding: min(0.9375vw, 12px) 0
}

@media screen and (min-width: 961px) {
    .c-alert__meta .c-alert__metaTime,
    .c-alert__meta .c-alert__metaHeading,
    .c-alert__meta svg {
        position: relative;
        transition: color .3s, transform .3s
    }
    .c-alert__meta:hover {
        color: #009672
    }
    .c-alert__meta:hover .c-alert__metaTime,
    .c-alert__meta:hover .c-alert__metaHeading {
        transform: translateX(min(0.78125vw, 10px))
    }
    .c-alert__meta:hover svg {
        transform: translateX(max(-0.78125vw, -10px))
    }
    .c-alert__meta:hover .c-alert__metaTime {
        color: #009672
    }
}

@media screen and (max-width: 960px) {
    .c-alert__meta {
        display: block;
        padding: 3.6842105263vw 0
    }
}

.c-alert__metaTime {
    display: block;
    color: #6a7680;
    font-family: "Roboto";
    font-size: min(0.9375vw, 12px);
    margin: min(0.078125vw, 1px) min(1.171875vw, 15px) 0 0
}

@media screen and (max-width: 960px) {
    .c-alert__metaTime {
        line-height: 1.2;
        font-size: 3.1578947368vw;
        margin: 0 3.9473684211vw 1.3157894737vw 0
    }
}

.c-alert__metaHeading {
    font-size: min(0.9375vw, 12px);
    margin-right: min(3.125vw, 40px)
}

@media screen and (max-width: 960px) {
    .c-alert__metaHeading {
        font-size: 3.1578947368vw;
        margin-right: 9.2105263158vw
    }
}

.c-alert__metaIcon {
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%)
}

@media screen and (max-width: 960px) {
    .c-alert__metaIcon {
        right: 5.2631578947vw;
        top: 50%;
        transform: translateY(-50%)
    }
}

.c-heading-header {
    position: relative;
    z-index: -1;
    max-height: 389px;
    height: 17vw
}

@media screen and (max-width: 960px) {
    .c-heading-header {
        min-height: 40.2631578947vw
    }
}

.c-heading-header.-img {
    max-height: initial;
    height: auto
}

.c-heading-header__box::before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    max-height: 469px;
    height: 23.4vw;
    width: 42%;
    max-width: 852px;
    border-radius: 0 0 0 min(3.125vw, 40px);
    background-color: #4cc3a7
}

@media screen and (max-width: 960px) {
    .c-heading-header__box::before {
        width: 78.9473684211vw;
        height: 52.6315789474vw;
        border-radius: 0 0 0 7.8947368421vw
    }
}

.c-heading-header__img {
    padding-left: min(5vw, 95px);
    margin-bottom: max(-6.25vw, -80px)
}

@media screen and (max-width: 960px) {
    .c-heading-header__img {
        padding-left: 5.2631578947vw;
        margin-bottom: -10.5263157895vw
    }
}

.c-heading-header__img img {
    width: 100%;
    border-radius: 0 0 0 40px
}

@media screen and (max-width: 960px) {
    .c-heading-header__img img {
        border-radius: 0 0 0 30px
    }
}

.c-heading {
    position: relative;
    display: inline-block;
    margin: 0 0 min(8.59375vw, 110px);
    padding: min(4.6875vw, 60px) 0 0 min(4.6875vw, 60px);
    width: calc(100% + min(4.6875vw, 60px));
    left: max(-4.6875vw, -60px)
}

@media screen and (max-width: 960px) {
    .c-heading {
        margin: 0 0 21.0526315789vw;
        padding: 10.5263157895vw 0 0 5.2631578947vw;
        width: calc(100% + 5.2631578947vw);
        left: -5.2631578947vw
    }
}

.c-heading::before {
    content: "";
    position: absolute;
    z-index: -1;
    top: 0;
    right: 0;
    width: 100%;
    min-height: min(15.625vw, 200px);
    height: 100%;
    border-radius: 0 min(3.125vw, 40px) 0 0;
    backdrop-filter: blur(30px);
    background-color: hsla(0, 0%, 100%, .2)
}

@media screen and (max-width: 960px) {
    .c-heading::before {
        height: 78.9473684211vw;
        padding-right: 5.2631578947vw;
        left: -5.2631578947vw;
        border-radius: 0 10.5263157895vw 0 0;
        backdrop-filter: blur(7.8947368421vw)
    }
}

.c-heading--direct {
    margin-bottom: min(6.25vw, 80px)
}

@media screen and (max-width: 960px) {
    .c-heading--direct {
        margin-bottom: 15.7894736842vw
    }
}

.c-heading--direct2 {
    margin-bottom: min(6.25vw, 80px)
}

@media screen and (max-width: 960px) {
    .c-heading--direct2 {
        margin-bottom: 10.5263157895vw
    }
}

.c-heading--single {
    margin-bottom: min(4.6875vw, 60px)
}

@media screen and (max-width: 960px) {
    .c-heading--single {
        margin-bottom: 12.6315789474vw
    }
}

.c-heading__category {
    position: relative;
    color: #009672;
    font-size: min(1.25vw, 16px);
    font-family: "Roboto";
    margin-bottom: min(0.78125vw, 10px)
}

@media screen and (max-width: 960px) {
    .c-heading__category {
        font-size: 3.6842105263vw;
        margin-bottom: 2.6315789474vw;
        padding-right: 5.2631578947vw
    }
}

.c-heading__label {
    position: relative;
    font-size: min(2.8125vw, 36px);
    font-weight: 300;
    letter-spacing: min(0.1953125vw, 2.5px);
    line-height: 1.6;
    padding-right: min(3.125vw, 40px)
}

@media screen and (max-width: 960px) {
    .c-heading__label {
        font-size: 7.3684210526vw;
        letter-spacing: .6578947368vw;
        padding-right: 5.2631578947vw
    }
}

.c-heading__desc {
    position: relative;
    font-weight: 600;
    line-height: 1.6;
    margin-top: min(4.21875vw, 54px);
    margin-bottom: min(3.125vw, 40px)
}

.c-heading__desc:last-child {
    margin-bottom: 0
}

@media screen and (max-width: 960px) {
    .c-heading__desc {
        font-weight: 500;
        line-height: 1.8;
        margin-top: 10.5263157895vw;
        margin-bottom: 7.8947368421vw
    }
    .c-heading__desc:last-child {
        margin-bottom: 0
    }
}

.c-heading__meta {
    margin-top: min(1.796875vw, 23px)
}

@media screen and (max-width: 960px) {
    .c-heading__meta {
        margin-top: 5.2631578947vw
    }
}

.c-heading--post .c-heading__label {
    font-size: min(2.1875vw, 28px)
}

@media screen and (max-width: 960px) {
    .c-heading--post .c-heading__label {
        font-size: 7.3684210526vw
    }
}

.c-date {
    display: block;
    color: #6a7680;
    font-family: "Roboto";
    margin-bottom: min(1.171875vw, 15px);
    font-size: min(0.9375vw, 12px)
}

@media screen and (max-width: 960px) {
    .c-date {
        margin-bottom: 3.9473684211vw;
        font-size: 3.1578947368vw
    }
}

.c-section {
    position: relative;
    margin-bottom: min(9.375vw, 120px);
    padding: min(1.875vw, 24px) 0 0
}

@media screen and (max-width: 960px) {
    .c-section {
        margin-bottom: 23.1578947368vw;
        padding: 6.3157894737vw 0 0
    }
}

.c-section::before {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    width: 107.4%;
    max-width: 1441px;
    height: 1px;
    background-color: #99ddcd
}

@media screen and (max-width: 960px) {
    .c-section::before {
        left: -5.2631578947vw;
        width: 94.7368421053vw
    }
}

.c-section__inner {
    margin-bottom: min(5.46875vw, 70px)
}

@media screen and (max-width: 960px) {
    .c-section__inner {
        margin-bottom: 14.7368421053vw
    }
}

.c-section__heading {
    color: #009672;
    font-size: min(2.1875vw, 28px);
    font-weight: 300;
    line-height: 1.6;
    margin-bottom: min(5vw, 64px)
}

@media screen and (max-width: 960px) {
    .c-section__heading {
        font-size: 6.8421052632vw;
        margin-bottom: 14.7368421053vw
    }
}

.c-section__heading.-typeB {
    margin-bottom: min(3.125vw, 40px)
}

@media screen and (max-width: 960px) {
    .c-section__heading.-typeB {
        margin-bottom: 8.4210526316vw
    }
}

.c-section__headingNote {
    display: block;
    font-weight: normal;
    color: #000;
    font-size: min(0.9375vw, 12px);
    margin-top: min(0.78125vw, 10px)
}

@media screen and (max-width: 960px) {
    .c-section__headingNote {
        font-size: 3.1578947368vw;
        margin-top: 2.6315789474vw
    }
}

.c-section__subtitle {
    font-size: min(1.71875vw, 22px);
    line-height: 1.6;
    margin-bottom: min(3.90625vw, 50px)
}

@media screen and (max-width: 960px) {
    .c-section__subtitle {
        font-size: 5.2631578947vw;
        margin-bottom: 10.5263157895vw
    }
}

.c-section__undertitle {
    font-size: min(1.171875vw, 15px);
    line-height: 1.6;
    font-weight: 600;
    margin-bottom: min(2.8125vw, 36px)
}

@media screen and (max-width: 960px) {
    .c-section__undertitle {
        font-size: 3.9473684211vw;
        margin-bottom: 8.4210526316vw
    }
}

.c-section__title {
    color: #009672;
    font-size: min(1.71875vw, 22px);
    line-height: 1.6;
    font-weight: 300;
    margin-top: min(5.625vw, 72px);
    margin-bottom: min(5vw, 64px)
}

@media screen and (max-width: 960px) {
    .c-section__title {
        font-size: 5.7894736842vw;
        margin-top: 14.7368421053vw;
        margin-bottom: 11.5789473684vw
    }
}

.c-section__title.-typeB {
    margin-bottom: min(3.125vw, 40px)
}

@media screen and (max-width: 960px) {
    .c-section__title.-typeB {
        margin-bottom: 8.4210526316vw
    }
}

.c-section__title.-typeC {
    margin-bottom: min(3.125vw, 40px)
}

@media screen and (max-width: 960px) {
    .c-section__title.-typeC {
        margin-bottom: 8.4210526316vw
    }
}

.c-section__titleTag {
    display: inline-block;
    font-size: min(0.9375vw, 12px);
    font-weight: normal;
    border-radius: min(1.5625vw, 20px);
    padding: min(0.234375vw, 3px) min(1.171875vw, 15px);
    background-color: #e5f6f2;
    margin-bottom: min(0.390625vw, 5px)
}

@media screen and (max-width: 960px) {
    .c-section__titleTag {
        font-size: 3.1578947368vw;
        border-radius: 5.2631578947vw;
        padding: 1.5789473684vw 3.9473684211vw;
        margin-bottom: 3.1578947368vw
    }
}

.c-section__title--category {
    margin-bottom: min(3.59375vw, 46px)
}

@media screen and (max-width: 960px) {
    .c-section__title--category {
        margin-bottom: 6.8421052632vw
    }
}

.c-section__desc {
    margin-bottom: min(0.9375vw, 12px)
}

@media screen and (max-width: 960px) {
    .c-section__desc {
        margin-bottom: 3.1578947368vw
    }
}

.c-section__text {
    margin-bottom: min(3.125vw, 40px);
    line-height: 1.8
}

@media screen and (max-width: 960px) {
    .c-section__text {
        margin-bottom: 7.8947368421vw
    }
}

.c-section__textStrong {
    font-weight: 600
}

.c-section__text p:not(:last-child) {
    margin-bottom: min(1.5625vw, 20px)
}

@media screen and (max-width: 960px) {
    .c-section__text p:not(:last-child) {
        margin-bottom: 5.2631578947vw
    }
}

.c-align-right {
    text-align: right
}

@media screen and (max-width: 960px) {
    .c-section__tablewrap {
        width: calc(100% + 5vw);
        overflow-x: scroll;
        scrollbar-color: #009672 #333;
        scrollbar-width: thin;
        margin-bottom: 8.4210526316vw
    }
    .c-section__tablewrap.-fit {
        width: 100%
    }
    .c-section__tablewrap.-fit .c-section__table,
    .c-section__tablewrap.-fit .c-section__table2 {
        width: 100%;
        margin-bottom: 0
    }
}

@media screen and (max-width: 960px)and (max-width: 960px) {
    .c-section__tablewrap.-fit .c-section__table,
    .c-section__tablewrap.-fit .c-section__table2 {
        padding-right: 0
    }
}

.c-section__table {
    width: 100%;
    margin-bottom: min(3.125vw, 40px)
}

@media screen and (max-width: 960px) {
    .c-section__table {
        width: 157.8947368421vw;
        padding-right: 5.2631578947vw;
        margin-bottom: 6.3157894737vw
    }
}

.c-section__table caption {
    text-align: left;
    font-size: min(0.9375vw, 12px);
    margin-bottom: min(0.78125vw, 10px)
}

@media screen and (max-width: 960px) {
    .c-section__table caption {
        font-size: 3.1578947368vw;
        margin-bottom: 2.6315789474vw
    }
}

.c-section__table th,
.c-section__table td {
    line-height: 1.6;
    padding: min(1.25vw, 16px) min(1.5625vw, 20px);
    border-bottom: #fff solid 1px;
    border-right: #fff solid 1px
}

@media screen and (max-width: 960px) {
    .c-section__table th,
    .c-section__table td {
        font-size: 3.1578947368vw;
        padding: 3.1578947368vw 3.9473684211vw
    }
}

.c-section__table thead th {
    color: #fff;
    background-color: #009672
}

.c-section__table tbody th {
    text-align: left;
    background-color: #99ddcd
}

.c-section__table tbody td {
    text-align: right;
    background-color: #e5f6f2
}

.c-section__table2 {
    width: 100%;
    border-collapse: separate;
    margin-top: min(3.125vw, 40px);
    margin-bottom: min(3.125vw, 40px)
}

@media screen and (max-width: 960px) {
    .c-section__table2 {
        width: 157.8947368421vw;
        padding-right: 5.2631578947vw;
        margin-top: 6.5789473684vw;
        margin-bottom: 6.5789473684vw
    }
}

.c-section__table2 th,
.c-section__table2 td {
    line-height: 1.6;
    padding: min(1.25vw, 16px) min(1.5625vw, 20px);
    border-bottom: #fff solid 1px;
    border-right: #fff solid 1px
}

@media screen and (max-width: 960px) {
    .c-section__table2 th,
    .c-section__table2 td {
        font-size: 3.1578947368vw;
        padding: 3.1578947368vw 3.9473684211vw
    }
}

.c-section__table2 tbody th {
    color: #fff;
    text-align: left;
    background-color: #009672
}

.c-section__table2 tbody td {
    text-align: right;
    background-color: #e5f6f2
}

.c-section__table td.-right,
.c-section__table th.-right,
.c-section__table2 td.-right,
.c-section__table2 th.-right {
    text-align: right
}

.c-section__table td.-left,
.c-section__table th.-left,
.c-section__table2 td.-left,
.c-section__table2 th.-left {
    text-align: left
}

.c-section__dltable {
    width: 100%;
    display: grid;
    grid-template-columns: min(22.34375vw, 286px) 1fr;
    gap: 1px
}

@media screen and (max-width: 960px) {
    .c-section__dltable {
        grid-template-columns: 1fr
    }
}

.c-section__dltable dt,
.c-section__dltable dd {
    line-height: 1.6;
    padding: min(1.25vw, 16px) min(1.5625vw, 20px)
}

@media screen and (max-width: 960px) {
    .c-section__dltable dt,
    .c-section__dltable dd {
        font-size: 3.1578947368vw;
        padding: 3.1578947368vw 3.9473684211vw
    }
}

.c-section__dltable dt {
    color: #fff;
    background-color: #009672
}

@media screen and (max-width: 960px) {
    .c-section__dltable dt {
        text-align: center
    }
}

.c-section__dltable dd {
    background-color: #e5f6f2
}

@media screen and (max-width: 960px) {
    .c-section__dltable dd:not(:last-child) {
        margin-bottom: 1.0526315789vw
    }
}

.c-section__dltableSec {
    display: grid;
    grid-template-columns: 1fr min(14.453125vw, 185px);
    gap: min(1.953125vw, 25px)
}

@media screen and (max-width: 960px) {
    .c-section__dltableSec {
        grid-template-columns: 1fr 1fr;
        gap: 4.2105263158vw
    }
}

.c-section__dltableSec:not(:first-child) {
    border-top: #fff solid 1px;
    margin: min(1.25vw, 16px) 0 0;
    padding: min(1.25vw, 16px) 0 0
}

@media screen and (max-width: 960px) {
    .c-section__dltableSec:not(:first-child) {
        margin: 3.1578947368vw 0 0;
        padding: 3.1578947368vw 0 0
    }
}

.c-section__dltableBox:not(:first-of-type) {
    border-top: #fff solid 1px;
    margin: min(1.25vw, 16px) 0 0;
    padding: min(1.25vw, 16px) 0 0
}

@media screen and (max-width: 960px) {
    .c-section__dltableBox:not(:first-of-type) {
        margin: 3.1578947368vw 0 0;
        padding: 3.1578947368vw 0 0
    }
}

.c-section__note {
    margin: min(3.125vw, 40px) 0 min(3.125vw, 40px) min(0.78125vw, 10px)
}

@media screen and (max-width: 960px) {
    .c-section__note {
        margin: 8.4210526316vw 0 7.3684210526vw 2.6315789474vw
    }
}

.c-section__note li {
    color: #6a7680;
    text-indent: max(-0.78125vw, -10px);
    padding-left: min(0.78125vw, 10px);
    font-size: min(0.9375vw, 12px);
    line-height: 1.6
}

@media screen and (max-width: 960px) {
    .c-section__note li {
        text-indent: -2.6315789474vw;
        padding-left: 2.6315789474vw;
        font-size: 3.1578947368vw
    }
}

.c-section__note li:not(:last-child) {
    margin-bottom: min(0.78125vw, 10px)
}

@media screen and (max-width: 960px) {
    .c-section__note li:not(:last-child) {
        margin-bottom: 2.6315789474vw
    }
}

.c-section__note--default li::before {
    content: "※";
    display: inline-block;
    margin-right: min(0.390625vw, 5px)
}

@media screen and (max-width: 960px) {
    .c-section__note--default li::before {
        margin-right: 1.3157894737vw
    }
}

.c-section__note--number {
    counter-reset: listnum
}

.c-section__note--number li {
    text-indent: max(-1.40625vw, -18px);
    padding-left: min(1.40625vw, 18px)
}

@media screen and (max-width: 960px) {
    .c-section__note--number li {
        text-indent: -4.7368421053vw;
        padding-left: 4.7368421053vw
    }
}

.c-section__note--number li::before {
    position: relative;
    counter-increment: listnum;
    content: "*" counter(listnum);
    display: inline-block;
    left: min(0.703125vw, 9px);
    width: min(1.40625vw, 18px)
}

@media screen and (max-width: 960px) {
    .c-section__note--number li::before {
        left: 2.3684210526vw;
        width: 4.7368421053vw
    }
}

.c-section__note--cnumber {
    margin-left: 0
}

@media screen and (max-width: 960px) {
    .c-section__note--cnumber {
        margin-left: 0
    }
}

.c-section__note--cnumber li {
    text-indent: max(-1.171875vw, -15px);
    padding-left: min(1.171875vw, 15px)
}

@media screen and (max-width: 960px) {
    .c-section__note--cnumber li {
        text-indent: -4.7368421053vw;
        padding-left: 4.7368421053vw
    }
}

.c-section__btnItem {
    margin: min(3.125vw, 40px) 0 0
}

@media screen and (max-width: 960px) {
    .c-section__btnItem {
        margin: 8.4210526316vw 0 0
    }
}

.c-section__btnItem:not(:last-child) {
    margin: min(3.125vw, 40px) 0
}

@media screen and (max-width: 960px) {
    .c-section__btnItem:not(:last-child) {
        margin: 8.4210526316vw 0
    }
}

.c-section__set {
    padding: min(2.5vw, 32px);
    background-color: #e5f6f2;
    margin-bottom: min(3.125vw, 40px)
}

@media screen and (max-width: 960px) {
    .c-section__set {
        padding: 8.4210526316vw;
        margin-bottom: 10.5263157895vw
    }
}

.c-section__setHeading {
    color: #009672;
    font-size: min(1.5625vw, 20px);
    margin-bottom: min(1.5625vw, 20px)
}

@media screen and (max-width: 960px) {
    .c-section__setHeading {
        font-size: 5.2631578947vw;
        margin-bottom: 5.2631578947vw
    }
}

.c-section__setInner {
    display: grid;
    grid-template-columns: min(30.15625vw, 386px) 1fr;
    gap: min(1.875vw, 24px)
}

@media screen and (max-width: 960px) {
    .c-section__setInner {
        grid-template-columns: 101.5789473684vw 1fr;
        gap: 6.3157894737vw
    }
}

.c-section__setList li {
    line-height: 1.8;
    display: inline-flex;
    margin-bottom: min(0.78125vw, 10px)
}

@media screen and (max-width: 960px) {
    .c-section__setList li {
        margin-bottom: 2.6315789474vw
    }
}

.c-section__setList li::before {
    content: "・";
    color: #009672;
    display: inline-block;
    margin-right: min(0.390625vw, 5px)
}

@media screen and (max-width: 960px) {
    .c-section__setList li::before {
        margin-right: 1.3157894737vw
    }
}

.c-section__textlink,
.c-section__textlink--blank {
    color: #009672;
    text-decoration: underline
}

.c-section__textlink svg,
.c-section__textlink--blank svg {
    margin-top: -1px;
    margin-left: min(0.390625vw, 5px)
}

@media screen and (max-width: 960px) {
    .c-section__textlink svg,
    .c-section__textlink--blank svg {
        margin-top: -.2631578947vw;
        margin-left: 1.3157894737vw
    }
}

@media screen and (min-width: 961px) {
    .c-section__textlink:hover,
    .c-section__textlink--blank:hover {
        text-decoration: none
    }
}

.c-section__anchor {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    gap: min(1.25vw, 16px)
}

@media screen and (max-width: 960px) {
    .c-section__anchor {
        gap: 3.1578947368vw
    }
}

.c-section__anchor:not(:last-child) {
    margin-bottom: min(3.125vw, 40px)
}

@media screen and (max-width: 960px) {
    .c-section__anchor:not(:last-child) {
        margin-bottom: 10.5263157895vw
    }
}

.c-section__anchorLink {
    display: inline-flex;
    align-items: center;
    justify-content: space-between;
    text-align: left;
    font-weight: 300;
    line-height: 1.4;
    border-radius: min(4.6875vw, 60px);
    background-color: #e5f6f2
}

@media screen and (max-width: 960px) {
    .c-section__anchorLink {
        font-size: 3.1578947368vw;
        border-radius: 15.7894736842vw
    }
}

.c-section__anchorLinkLabel {
    padding: 0 min(1.25vw, 16px) 0 min(1.875vw, 24px)
}

@media screen and (max-width: 960px) {
    .c-section__anchorLinkLabel {
        padding: 0 2.6315789474vw 0 5.2631578947vw
    }
}

.c-section__anchorLinkIcon {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    width: min(3.4375vw, 44px);
    height: min(3.4375vw, 44px)
}

@media screen and (max-width: 960px) {
    .c-section__anchorLinkIcon {
        width: 11.5789473684vw;
        height: 11.5789473684vw
    }
}

.c-section__anchorLinkIcon::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border-radius: 100%;
    background-color: rgba(0, 150, 114, .1);
    transition: transform .8s cubic-bezier(0.1, 0.7, 0.38, 1)
}

@media screen and (max-width: 960px) {
    .c-section__anchorLinkIcon::after {
        width: 11.5789473684vw;
        height: 11.5789473684vw;
        border-radius: 11.5789473684vw
    }
}

.c-section__anchorLinkIcon svg {
    transform: rotate(90deg)
}

@media screen and (min-width: 961px) {
    .c-section__anchorLink:hover .c-section__anchorLinkIcon::after {
        transform: scale(1.3)
    }
}

.c-section__linklist:not(:last-child) {
    margin-bottom: min(3.125vw, 40px)
}

@media screen and (max-width: 960px) {
    .c-section__linklist:not(:last-child) {
        margin-bottom: 8.4210526316vw
    }
}

.c-section__linklistItem:not(:last-child) {
    margin-bottom: min(1.875vw, 24px)
}

@media screen and (max-width: 960px) {
    .c-section__linklistItem:not(:last-child) {
        margin-bottom: 6.3157894737vw
    }
}

.c-section__linklistLink {
    position: relative;
    display: block;
    border-bottom: #99ddcd 1px solid;
    padding: 0 min(3.125vw, 40px) min(1.875vw, 24px) 0
}

@media screen and (max-width: 960px) {
    .c-section__linklistLink {
        padding: 0 7.8947368421vw 6.3157894737vw 0
    }
}

@media screen and (min-width: 961px) {
    .c-section__linklistLink {
        transition: padding-left .3s, color .3s, border-bottom-color .3s
    }
    .c-section__linklistLink:hover {
        color: #009672;
        padding-left: min(0.78125vw, 10px);
        border-bottom-color: #009672
    }
    .c-section__linklistLink:hover svg {
        right: min(0.78125vw, 10px)
    }
}

.c-section__linklistLink svg {
    position: absolute;
    top: calc(50% - min(0.9375vw, 12px));
    right: 0;
    transform: translateY(-50%);
    transition: right .3s
}

@media screen and (max-width: 960px) {
    .c-section__linklistLink svg {
        top: calc(50% - 3.1578947368vw)
    }
}

.c-section__list {
    margin-left: min(0.78125vw, 10px);
    margin-bottom: min(3.125vw, 40px)
}

@media screen and (max-width: 960px) {
    .c-section__list {
        margin-left: 2.6315789474vw;
        margin-bottom: 8.4210526316vw
    }
}

.c-section__list li {
    line-height: 1.8;
    text-indent: max(-0.78125vw, -10px);
    padding-left: min(0.78125vw, 10px)
}

@media screen and (max-width: 960px) {
    .c-section__list li {
        text-indent: -2.6315789474vw;
        padding-left: 2.6315789474vw
    }
}

.c-section__list li:not(:last-child) {
    margin-bottom: min(0.9375vw, 12px)
}

@media screen and (max-width: 960px) {
    .c-section__list li:not(:last-child) {
        margin-bottom: 3.1578947368vw
    }
}

.c-section__list li::before {
    content: "・";
    color: #009672;
    display: inline-block;
    margin-right: min(0.390625vw, 5px)
}

@media screen and (max-width: 960px) {
    .c-section__list li::before {
        margin-right: 1.3157894737vw
    }
}

.c-section__list a {
    word-wrap: break-word;
    color: #009672;
    text-decoration: underline
}

@media screen and (min-width: 961px) {
    .c-section__list a:hover {
        text-decoration: none
    }
}

.c-section__list--number {
    margin-left: min(1.171875vw, 15px);
    counter-reset: listnum
}

@media screen and (max-width: 960px) {
    .c-section__list--number {
        margin-left: 3.9473684211vw
    }
}

.c-section__list--number li {
    text-indent: max(-1.484375vw, -19px);
    padding-left: min(1.484375vw, 19px)
}

@media screen and (max-width: 960px) {
    .c-section__list--number li {
        text-indent: -5vw;
        padding-left: 5vw
    }
}

.c-section__list--number li::before {
    position: relative;
    left: min(0.703125vw, 9px);
    counter-increment: listnum;
    content: counter(listnum) ".";
    display: inline-block;
    width: min(1.09375vw, 14px)
}

@media screen and (max-width: 960px) {
    .c-section__list--number li::before {
        left: 2.3684210526vw;
        width: 3.6842105263vw
    }
}

.c-section__box {
    color: #009672;
    border: #009672 1px solid;
    padding: min(2.5vw, 32px);
    margin-bottom: min(3.125vw, 40px)
}

@media screen and (max-width: 960px) {
    .c-section__box {
        padding: 4.2105263158vw;
        margin-bottom: 8.4210526316vw
    }
}

.c-section__box p {
    line-height: 1.8
}

.c-l {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: min(3.125vw, 40px);
    margin-bottom: min(3.125vw, 40px)
}

@media screen and (max-width: 960px) {
    .c-l {
        grid-template-columns: 100%;
        gap: 5.2631578947vw;
        margin-bottom: 13.1578947368vw
    }
}

@media screen and (max-width: 960px) {
    .c-l--sp-r .c-l__box:nth-child(1) {
        order: 2
    }
    .c-l--sp-r .c-l__box:nth-child(2) {
        order: 1
    }
}

.c-l__box p {
    line-height: 1.8
}

.c-l__heading {
    font-weight: 600;
    line-height: 1.6;
    font-size: min(1.171875vw, 15px);
    margin-bottom: min(1.25vw, 16px)
}

@media screen and (max-width: 960px) {
    .c-l__heading {
        font-size: 3.9473684211vw;
        margin-bottom: 4.2105263158vw
    }
}

.c-l__desc {
    line-height: 1.8;
    margin-bottom: min(3.125vw, 40px)
}

@media screen and (max-width: 960px) {
    .c-l__desc {
        margin-bottom: 7.3684210526vw
    }
}

.c-l__desc:last-child {
    margin-bottom: 0
}

.c-l-3 {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: min(3.125vw, 40px);
    margin-bottom: min(3.125vw, 40px)
}

@media screen and (max-width: 960px) {
    .c-l-3 {
        grid-template-columns: 1fr;
        gap: 8.4210526316vw;
        margin-bottom: 8.4210526316vw
    }
}

.c-l-4 {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: min(3.125vw, 40px);
    margin-bottom: min(3.125vw, 40px)
}

@media screen and (max-width: 960px) {
    .c-l-4 {
        grid-template-columns: 1fr 1fr;
        gap: 8.4210526316vw;
        margin-bottom: 8.4210526316vw
    }
}

.c-img-single {
    margin-bottom: min(3.125vw, 40px)
}

@media screen and (max-width: 960px) {
    .c-img-single {
        margin-bottom: 8.4210526316vw
    }
}

.c-img-medium {
    width: 65%;
    margin: 0 auto min(3.125vw, 40px)
}

@media screen and (max-width: 960px) {
    .c-img-medium {
        width: 100%;
        margin-bottom: 8.4210526316vw
    }
}

.c-img figcaption {
    line-height: 1.6;
    font-size: min(0.9375vw, 12px);
    margin-top: min(0.9375vw, 12px)
}

@media screen and (max-width: 960px) {
    .c-img figcaption {
        font-size: 3.1578947368vw;
        margin-top: 3.1578947368vw
    }
}

.c-profileunit {
    margin-bottom: min(3.125vw, 40px)
}

@media screen and (max-width: 960px) {
    .c-profileunit {
        margin-bottom: 8.4210526316vw
    }
}

.c-profileunit__sec {
    display: flex;
    justify-content: space-between;
    gap: min(2.5vw, 32px);
    border-bottom: #99ddcd 1px solid;
    padding-bottom: min(1.875vw, 24px);
    margin-bottom: min(1.875vw, 24px)
}

@media screen and (max-width: 960px) {
    .c-profileunit__sec {
        gap: 5.2631578947vw;
        padding-bottom: 6.3157894737vw;
        margin-bottom: 6.3157894737vw
    }
}

.c-profileunit__sec p {
    line-height: 1.6
}

@media screen and (max-width: 960px) {
    .c-profileunit__sec p {
        font-size: 3.1578947368vw
    }
}

.c-profileunit__secTitle {
    margin-bottom: min(0.46875vw, 6px);
    line-height: 1.6
}

@media screen and (max-width: 960px) {
    .c-profileunit__secTitle {
        margin-bottom: 2.1052631579vw
    }
}

.c-profileunit__secHeading {
    margin-bottom: min(1.5625vw, 20px)
}

@media screen and (max-width: 960px) {
    .c-profileunit__secHeading {
        font-size: 4.7368421053vw;
        margin-bottom: 2.1052631579vw
    }
}

.c-profileunit__secHeading:last-child {
    margin-bottom: 0
}

.c-profileunit__secPic {
    width: min(11.71875vw, 150px);
    flex-shrink: 0
}

@media screen and (max-width: 960px) {
    .c-profileunit__secPic {
        width: 26.3157894737vw
    }
}

.c-wrapunit {
    padding: min(2.5vw, 32px);
    background-color: #e5f6f2;
    margin-bottom: min(3.125vw, 40px)
}

@media screen and (max-width: 960px) {
    .c-wrapunit {
        padding: 8.4210526316vw 4.2105263158vw;
        margin-bottom: 8.4210526316vw
    }
}

.c-wrapunit p {
    line-height: 1.8
}

.c-wrapunit__heading {
    color: #009672;
    font-size: min(1.40625vw, 18px);
    margin-bottom: min(0.9375vw, 12px);
    letter-spacing: min(0.1171875vw, 1.5px);
    line-height: 1.6
}

@media screen and (max-width: 960px) {
    .c-wrapunit__heading {
        font-size: 5.2631578947vw;
        margin-bottom: 3.1578947368vw;
        letter-spacing: .3947368421vw
    }
}

.c-wrapunit__imgset {
    display: grid;
    grid-template-columns: min(23.671875vw, 303px) 1fr;
    gap: min(1.875vw, 24px)
}

@media screen and (max-width: 960px) {
    .c-wrapunit__imgset {
        grid-template-columns: 1fr;
        gap: 6.3157894737vw
    }
}

.c-wrapunit__l-2 {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: min(1.875vw, 24px)
}

@media screen and (max-width: 960px) {
    .c-wrapunit__l-2 {
        grid-template-columns: 1fr;
        gap: 6.3157894737vw
    }
}

.c-wrapunit__tag {
    display: inline-block;
    color: #009672;
    font-size: min(0.9375vw, 12px);
    font-weight: normal;
    border-radius: min(1.5625vw, 20px);
    padding: min(0.234375vw, 3px) min(1.171875vw, 15px);
    background-color: #fff;
    margin-bottom: min(0.859375vw, 11px)
}

@media screen and (max-width: 960px) {
    .c-wrapunit__tag {
        font-size: 3.1578947368vw;
        border-radius: 5.2631578947vw;
        padding: .7894736842vw 3.9473684211vw;
        margin-bottom: 2.8947368421vw
    }
}

.c-wrapunit__list {
    margin-left: min(0.78125vw, 10px)
}

@media screen and (max-width: 960px) {
    .c-wrapunit__list {
        margin-left: 2.6315789474vw
    }
}

.c-wrapunit__list li {
    line-height: 1.8;
    text-indent: max(-0.78125vw, -10px);
    padding-left: min(0.78125vw, 10px)
}

@media screen and (max-width: 960px) {
    .c-wrapunit__list li {
        text-indent: -2.6315789474vw;
        padding-left: 2.6315789474vw
    }
}

.c-wrapunit__list li:not(:last-child) {
    margin-bottom: min(0.46875vw, 6px)
}

@media screen and (max-width: 960px) {
    .c-wrapunit__list li:not(:last-child) {
        margin-bottom: 4.2105263158vw
    }
}

.c-wrapunit__list li::before {
    content: "・";
    color: #009672;
    display: inline-block;
    margin-right: min(0.390625vw, 5px)
}

@media screen and (max-width: 960px) {
    .c-wrapunit__list li::before {
        margin-right: 1.3157894737vw
    }
}

.c-wrapunit__set {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: min(1.875vw, 24px) min(3.125vw, 40px);
    margin: min(2.5vw, 32px) 0
}

@media screen and (max-width: 960px) {
    .c-wrapunit__set {
        grid-template-columns: 1fr;
        gap: 6.3157894737vw 10.5263157895vw;
        margin: 8.4210526316vw 0 5.7894736842vw
    }
}

.c-wrapunit__setLink {
    display: grid;
    grid-template-columns: min(14.453125vw, 185px) 1fr;
    gap: min(1.875vw, 24px);
    text-decoration: underline
}

@media screen and (max-width: 960px) {
    .c-wrapunit__setLink {
        font-size: 3.1578947368vw;
        grid-template-columns: 42.1052631579vw 1fr;
        gap: 5.2631578947vw
    }
}

.c-wrapunit__setLink p {
    line-height: 1.6
}

.c-wrapunit__setLink svg {
    margin-top: -1px
}

@media screen and (max-width: 960px) {
    .c-wrapunit__setLink svg {
        margin-top: -.2631578947vw
    }
}

.c-wrapunit__set-l-3 {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: min(1.875vw, 24px) min(3.125vw, 40px);
    margin: min(2.5vw, 32px) 0
}

@media screen and (max-width: 960px) {
    .c-wrapunit__set-l-3 {
        grid-template-columns: 1fr 1fr;
        gap: 5.2631578947vw 6.3157894737vw;
        margin: 8.4210526316vw 0
    }
}

.c-wrapunit--typeB {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0 min(1.875vw, 24px);
    grid-template-areas: "area1 area1" "area2 area3"
}

@media screen and (max-width: 960px) {
    .c-wrapunit--typeB {
        grid-template-columns: 1fr;
        gap: 4.2105263158vw 0;
        grid-template-areas: "area2" "area1" "area3"
    }
}

.c-wrapunit--typeB .-item1 {
    grid-area: area1;
    margin-bottom: min(1.875vw, 24px)
}

@media screen and (max-width: 960px) {
    .c-wrapunit--typeB .-item1 {
        margin: 0
    }
}

.c-wrapunit--typeB .-item2 {
    grid-area: area2
}

.c-wrapunit--typeB .-item3 {
    grid-area: area3
}

@media screen and (min-width: 961px) {
    .c-link-img {
        transition: color .3s
    }
    .c-link-img img {
        transition: transform .3s
    }
    .c-link-img:hover {
        color: #009672
    }
    .c-link-img:hover img {
        transform: scale(1.1)
    }
}

.c-link-img__img {
    overflow: hidden;
    border-radius: 20px
}

@media screen and (max-width: 960px) {
    .c-link-img__img {
        border-radius: 10px
    }
}

.c-link-img__heading {
    margin-top: min(0.78125vw, 10px)
}

@media screen and (max-width: 960px) {
    .c-link-img__heading {
        font-size: 3.1578947368vw;
        margin-top: 2.6315789474vw
    }
}

.c-link-img p {
    line-height: 1.6
}

.c-bnr {
    margin-bottom: min(3.125vw, 40px)
}

@media screen and (max-width: 960px) {
    .c-bnr {
        margin-bottom: 10.5263157895vw
    }
}

@media screen and (min-width: 961px) {
    .c-bnr__link {
        transition: opacity .3s
    }
    .c-bnr__link:hover {
        opacity: .8
    }
}

.c-video {
    position: relative;
    width: 100%;
    aspect-ratio: 16/9
}

@media screen and (min-width: 961px) {
    .c-video[data-video]:hover img,
    .c-video [data-video]:hover img {
        transform: scale(1.1)
    }
    .c-video[data-video]:hover .c-video__icon,
    .c-video [data-video]:hover .c-video__icon {
        transform: scale(1.3)
    }
}

.c-video[data-video][data-video=active] .c-video__ph,
.c-video[data-video][data-video=active].c-video__ph,
.c-video[data-video] [data-video=active] .c-video__ph,
.c-video[data-video] [data-video=active].c-video__ph,
.c-video [data-video][data-video=active] .c-video__ph,
.c-video [data-video][data-video=active].c-video__ph,
.c-video [data-video] [data-video=active] .c-video__ph,
.c-video [data-video] [data-video=active].c-video__ph {
    opacity: 0;
    pointer-events: none
}

.c-video[data-video][data-video=active] iframe,
.c-video[data-video] [data-video=active] iframe,
.c-video [data-video][data-video=active] iframe,
.c-video [data-video] [data-video=active] iframe {
    opacity: 1
}

.c-video[data-video][data-video=active].c-video__ph+iframe,
.c-video[data-video] [data-video=active].c-video__ph+iframe,
.c-video [data-video][data-video=active].c-video__ph+iframe,
.c-video [data-video] [data-video=active].c-video__ph+iframe {
    opacity: 1
}

.c-video__ph {
    position: absolute;
    z-index: 1;
    cursor: pointer;
    overflow: hidden;
    transition: opacity .3s;
    border-radius: 20px
}

@media screen and (max-width: 960px) {
    .c-video__ph {
        border-radius: 10px
    }
}

.c-video__ph svg {
    position: absolute;
    z-index: 2;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: min(4.6875vw, 60px);
    height: min(4.6875vw, 60px)
}

@media screen and (max-width: 960px) {
    .c-video__ph svg {
        width: 15.7894736842vw;
        height: 15.7894736842vw
    }
}

.c-video__ph img {
    transition: transform .8s cubic-bezier(0.1, 0.7, 0.38, 1)
}

.c-video__icon {
    position: absolute;
    z-index: 1;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    width: min(4.6875vw, 60px);
    height: min(4.6875vw, 60px);
    border-radius: min(4.6875vw, 60px);
    background-color: hsla(0, 0%, 100%, .7);
    transition: transform .8s cubic-bezier(0.1, 0.7, 0.38, 1)
}

@media screen and (max-width: 960px) {
    .c-video__icon {
        width: 15.7894736842vw;
        height: 15.7894736842vw;
        border-radius: 15.7894736842vw
    }
}

.c-video iframe {
    width: 100%;
    height: 100%;
    opacity: 0
}

.c-video figcaption {
    line-height: 1.6;
    font-size: min(0.9375vw, 12px);
    margin-top: min(0.46875vw, 6px)
}

@media screen and (max-width: 960px) {
    .c-video figcaption {
        font-size: 3.1578947368vw;
        margin-top: 1.5789473684vw
    }
}

.c-section__categories {
    margin-bottom: min(3.125vw, 40px)
}

@media screen and (max-width: 960px) {
    .c-section__categories {
        margin-bottom: 8.4210526316vw
    }
}

.c-section__category {
    display: grid;
    align-items: baseline;
    grid-template-columns: min(16.40625vw, 210px) min(8.59375vw, 110px) 1fr;
    border-bottom: #99ddcd 1px solid;
    margin: 0 0 min(1.5625vw, 20px)
}

@media screen and (max-width: 960px) {
    .c-section__category {
        grid-template-columns: 1fr;
        margin: 0 0 6.3157894737vw;
        padding: 0 0 6.3157894737vw
    }
}

@media screen and (max-width: 960px) {
    .c-section__category--sub {
        padding-left: 4.2105263158vw
    }
}

.c-section__category--inner {
    border-bottom: none;
    margin: 0
}

@media screen and (max-width: 960px) {
    .c-section__category--inner {
        padding-left: 4.2105263158vw;
        padding-bottom: 4.2105263158vw
    }
}

.c-section__categoryHeading,
.c-section__categorySubheading,
.c-section__categorySub,
.c-section__categoryMain {
    padding: 0 0 min(1.5625vw, 20px)
}

@media screen and (max-width: 960px) {
    .c-section__categoryHeading,
    .c-section__categorySubheading,
    .c-section__categorySub,
    .c-section__categoryMain {
        padding: 0 0
    }
}

.c-section__categoryHeading {
    font-size: min(1.5625vw, 20px)
}

@media screen and (max-width: 960px) {
    .c-section__categoryHeading {
        font-size: 5.2631578947vw;
        margin-bottom: 3.1578947368vw
    }
}

.c-section__categorySubheading {
    font-size: min(1.171875vw, 15px);
    font-weight: 600;
    padding-left: min(1.875vw, 24px)
}

@media screen and (max-width: 960px) {
    .c-section__categorySubheading {
        font-size: 3.9473684211vw;
        padding-left: 0;
        margin-bottom: 2.1052631579vw
    }
}

.c-section__categorySub {
    padding-left: min(0.78125vw, 10px);
    padding-right: min(0.78125vw, 10px)
}

@media screen and (max-width: 960px) {
    .c-section__categorySub {
        padding-left: 0;
        padding-right: 0;
        margin-bottom: 1.0526315789vw
    }
}

.c-section__categoryMain {
    line-height: 1.8;
    padding-left: min(0.78125vw, 10px)
}

@media screen and (max-width: 960px) {
    .c-section__categoryMain {
        padding-left: 0
    }
}

.c-section__dl {
    display: flex;
    flex-wrap: wrap;
    margin: min(0.78125vw, 10px) 0
}

@media screen and (max-width: 960px) {
    .c-section__dl {
        margin: 2.6315789474vw 0
    }
}

.c-section__dl dt,
.c-section__dl dd {
    padding: min(0.390625vw, 5px) 0
}

@media screen and (max-width: 960px) {
    .c-section__dl dt,
    .c-section__dl dd {
        padding: 1.8421052632vw 0
    }
}

.c-section__dl dt {
    font-weight: 600;
    flex-basis: 30%
}

.c-section__dl dd {
    flex-basis: 70%
}

body.en .c-heading__label {
    line-height: 1.4
}

body.en .c-heading__desc {
    line-height: 1.4
}

body.en .c-section__heading {
    line-height: 1.4
}

body.en .c-section__title {
    line-height: 1.4
}

body.en .c-section__subtitle {
    line-height: 1.4
}

body.en .c-section__undertitle {
    line-height: 1.4
}

body.en .c-section__text {
    line-height: 1.6
}

body.en .c-section__note li {
    line-height: 1.4
}

body.en .c-section__list li {
    line-height: 1.4
}

body.en .c-l__heading {
    line-height: 1.4
}

body.en .c-l__box p {
    line-height: 1.6
}

body.en .c-wrapunit__heading {
    line-height: 1.4
}

body.en .c-wrapunit p {
    line-height: 1.6
}

body.en .c-section__box p {
    line-height: 1.6
}

body.en .c-l__box .c-link-img__heading {
    line-height: 1.4
}

body.en .c-section__categoryMain {
    line-height: 1.4
}

.c-side {
    position: relative
}

@media screen and (max-width: 960px) {
    .c-side {
        width: 100vw;
        left: -5.2631578947vw;
        margin-bottom: 21.0526315789vw;
        padding: 10.5263157895vw 5.2631578947vw;
        background-color: #f4fdfb
    }
}

@media screen and (min-width: 961px) {
    .c-side.fixed {
        position: sticky;
        z-index: 1;
        top: min(7.8125vw, 100px);
        width: min(18.75vw, 240px)
    }
}

.c-side__heading {
    color: #009672;
    font-size: min(1.5625vw, 20px);
    font-weight: 300;
    margin-bottom: min(1.875vw, 24px)
}

@media screen and (max-width: 960px) {
    .c-side__heading {
        font-size: 5.2631578947vw;
        margin-bottom: 6.3157894737vw
    }
}

.c-side__current {
    position: absolute;
    left: -1px;
    width: 3px;
    height: 20px;
    border-radius: 3px;
    background-color: #009672;
    transition: transform .5s ease
}

@media screen and (max-width: 960px) {
    .c-side__current {
        left: 5vw;
        height: 5.2631578947vw
    }
}

.c-side__list {
    border-left: #99ddcd solid 1px
}

.c-side__list li {
    position: relative;
    font-size: min(1.015625vw, 13px);
    padding-left: min(1.953125vw, 25px)
}

@media screen and (max-width: 960px) {
    .c-side__list li {
        font-size: 3.4210526316vw;
        padding-left: 6.5789473684vw
    }
}

.c-side__list li:not(:last-child) {
    margin-bottom: min(1.875vw, 24px)
}

@media screen and (max-width: 960px) {
    .c-side__list li:not(:last-child) {
        margin-bottom: 6.3157894737vw
    }
}

.c-side__list li.current a {
    color: #009672
}

.c-side__list li a {
    display: block
}

@media screen and (min-width: 961px) {
    .c-side__list li a {
        transition: color .3s
    }
    .c-side__list li a:hover {
        color: #009672
    }
}

@media screen and (min-width: 961px) {
    .c-hover-list {
        transition: color .3s, margin .3s
    }
    .c-hover-list time,
    .c-hover-list svg {
        transition: color .3s
    }
    .c-hover-list:hover {
        color: #009672;
        margin-left: min(0.78125vw, 10px);
        margin-right: min(0.78125vw, 10px)
    }
    .c-hover-list:hover time,
    .c-hover-list:hover svg {
        color: #009672
    }
}

.c-hover-img-r {
    overflow: hidden;
    display: block;
    border-radius: 20px
}

@media screen and (max-width: 960px) {
    .c-hover-img-r {
        border-radius: 10px
    }
}

@media screen and (min-width: 961px) {
    .c-hover-img-r img {
        transition: transform .8s cubic-bezier(0.1, 0.7, 0.38, 1)
    }
    .c-hover-img-r:hover img {
        transform: scale(1.1)
    }
}

.c-textlink {
    color: #009672;
    text-decoration: underline
}

@media screen and (min-width: 961px) {
    .c-textlink:hover {
        text-decoration: none
    }
}

.c-textlink-w {
    color: #fff;
    text-decoration: underline
}

@media screen and (min-width: 961px) {
    .c-textlink-w:hover {
        text-decoration: none
    }
}

.c-news__item {
    position: relative;
    display: grid;
    align-items: start;
    grid-template-columns: min(20vw, 406px) 1fr;
    gap: min(1.875vw, 24px);
    padding: min(1.875vw, 24px) 0
}

.c-news__item:first-of-type {
    padding-top: 0
}

@media screen and (max-width: 960px) {
    .c-news__item {
        grid-template-columns: 1fr;
        gap: 5.2631578947vw;
        padding: 6.3157894737vw 0
    }
}

.c-news__itemImg {
    overflow: hidden
}

.c-news__itemImg img {
    transition: transform .8s cubic-bezier(0.1, 0.7, 0.38, 1);
    width: 100%
}

@media screen and (min-width: 961px) {
    .c-news__item svg {
        transition: color .8s cubic-bezier(0.1, 0.7, 0.38, 1)
    }
    .c-news__item:hover .c-news__itemImg img {
        transform: scale(1.1)
    }
    .c-news__item:hover .c-news__metaHeading {
        color: #009672
    }
    .c-news__item:hover .c-news__metaLink {
        color: #009672
    }
    .c-news__item:hover .c-news__metaLink:before {
        border-bottom-color: #009672
    }
}

.c-news__metaTime {
    color: #009672;
    font-family: "Roboto";
    font-size: min(0.9375vw, 12px);
    line-height: 1;
    display: block;
    margin-bottom: min(0.390625vw, 5px)
}

@media screen and (max-width: 960px) {
    .c-news__metaTime {
        font-size: 3.1578947368vw;
        margin-top: 1.3157894737vw;
        margin-bottom: 1.3157894737vw
    }
}

.c-news__metaHeading {
    font-size: min(1.40625vw, 18px);
    margin-bottom: min(0.78125vw, 10px)
}

@media screen and (max-width: 960px) {
    .c-news__metaHeading {
        font-size: 4.7368421053vw;
        margin-bottom: 3.6842105263vw
    }
}

.c-news__metaLink {
    transition: color .3s
}

.c-news__metaLink:before {
    content: "";
    position: absolute;
    inset: 0;
    border-bottom: #99ddcd 1px solid;
    transition: border-color .3s
}

.c-news__metaIcon {
    padding-left: min(0.78125vw, 10px)
}

@media screen and (max-width: 960px) {
    .c-news__metaIcon {
        padding-left: 2.6315789474vw
    }
}

.c-news__metaIcon svg {
    margin-top: max(-0.234375vw, -3px)
}

@media screen and (max-width: 960px) {
    .c-news__metaIcon svg {
        margin-top: -.7894736842vw
    }
}

.c-news__metaClient {
    transition: color .3s;
    display: grid;
    grid-template-columns: min(4.6875vw, 60px) 1fr;
    align-items: center;
    margin-top: min(0.625vw, 8px);
    font-size: min(0.9375vw, 12px)
}

@media screen and (max-width: 960px) {
    .c-news__metaClient {
        grid-template-columns: 15.7894736842vw 1fr;
        margin-top: 2.1052631579vw;
        font-size: 3.1578947368vw
    }
}

.c-news__metaClient img {
    width: min(3.984375vw, 51px)
}

@media screen and (max-width: 960px) {
    .c-news__metaClient img {
        width: 13.4210526316vw
    }
}

.c-news__metaClient span {
    border-left: #cceee6 1px solid;
    padding-left: min(0.703125vw, 9px)
}

@media screen and (max-width: 960px) {
    .c-news__metaClient span {
        padding-left: 2.3684210526vw
    }
}

.c-news__tag {
    display: flex;
    flex-wrap: wrap;
    gap: min(0.78125vw, 10px)
}

@media screen and (max-width: 960px) {
    .c-news__tag {
        gap: 2.6315789474vw
    }
}

.c-tag a {
    position: relative;
    display: inline-block;
    color: #009672;
    font-size: min(1.171875vw, 15px);
    font-weight: 300;
    border-radius: min(2.34375vw, 30px);
    border: #009672 solid 1px;
    padding: min(0.625vw, 8px) min(1.5625vw, 20px)
}

@media screen and (max-width: 960px) {
    .c-tag a {
        font-size: 3.9473684211vw;
        border-radius: 7.8947368421vw;
        padding: 2.1052631579vw 5.2631578947vw
    }
}

@media screen and (min-width: 961px) {
    .c-tag a {
        transition: color .2s, background-color .2s
    }
    .c-tag a:hover {
        color: #fff;
        background-color: #009672
    }
}

.c-tag.active a {
    color: #fff;
    background-color: #009672
}

.c-tag__list {
    display: flex;
    flex-wrap: wrap;
    gap: min(0.78125vw, 10px);
    margin-bottom: min(4.375vw, 56px)
}

@media screen and (max-width: 960px) {
    .c-tag__list {
        gap: 2.6315789474vw 4.2105263158vw;
        margin-bottom: 9.4736842105vw
    }
}

.c-tag-s a,
.c-tag-s span {
    position: relative;
    display: inline-block;
    color: #009672;
    font-size: min(0.9375vw, 12px);
    border-radius: min(2.34375vw, 30px);
    border: #009672 solid 1px;
    padding: min(0.234375vw, 3px) min(0.78125vw, 10px)
}

@media screen and (max-width: 960px) {
    .c-tag-s a,
    .c-tag-s span {
        font-size: 3.1578947368vw;
        border-radius: 7.8947368421vw;
        padding: .7894736842vw 2.6315789474vw
    }
}

@media screen and (min-width: 961px) {
    .c-tag-s a {
        transition: color .2s, background-color .2s
    }
    .c-tag-s a:hover {
        color: #fff;
        background-color: #009672
    }
}

.c-tab__nav {
    position: relative;
    display: flex;
    border-bottom: #99ddcd solid 2px;
    margin-bottom: min(3.125vw, 40px)
}

@media screen and (max-width: 960px) {
    .c-tab__nav {
        margin-bottom: 7.8947368421vw
    }
}

.c-tab__nav::after {
    content: "";
    position: absolute;
    display: block;
    width: var(--a-w);
    height: 4px;
    bottom: -3px;
    transform: translateX(var(--a-x));
    border-radius: 4px;
    background-color: #009672;
    transition: transform .4s
}

@media screen and (max-width: 960px) {
    .c-tab__nav::after {
        height: 1.0526315789vw
    }
}

.c-tab__navItem {
    text-align: center;
    flex: 1
}

.c-tab__navLink {
    position: relative;
    display: block;
    padding: 0 0 min(1.5625vw, 20px) 0
}

@media screen and (max-width: 960px) {
    .c-tab__navLink {
        padding: 0 0 5.2631578947vw 0
    }
}

@media screen and (min-width: 961px) {
    .c-tab__navLink {
        transition: color .3s
    }
    .c-tab__navLink:hover {
        color: #009672
    }
}

.c-tab__navLink.active {
    color: #009672;
    font-weight: 700
}

.c-tab__contentSection {
    display: none
}

.c-tab__contentSection.active {
    display: block
}

.c-bnrset {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: min(1.25vw, 16px);
    margin: min(9.375vw, 120px) 0
}

@media screen and (max-width: 960px) {
    .c-bnrset {
        grid-template-columns: 1fr;
        gap: 4.2105263158vw;
        margin: 31.5789473684vw 0
    }
}

.c-pagination {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: min(0.78125vw, 10px);
    margin: min(3.75vw, 48px) 0
}

@media screen and (max-width: 960px) {
    .c-pagination {
        gap: 2.6315789474vw;
        margin: 12.6315789474vw 0
    }
}

.c-pagination__prev a,
.c-pagination__next a {
    display: flex;
    align-items: center;
    justify-content: center;
    width: min(3.125vw, 40px);
    height: min(3.125vw, 40px);
    border-radius: 50%;
    background-color: #e5f6f2;
    transition: background-color .3s
}

@media screen and (min-width: 961px) {
    .c-pagination__prev a:hover::after,
    .c-pagination__next a:hover::after {
        transform: scale(1.3)
    }
}

@media screen and (max-width: 960px) {
    .c-pagination__prev a,
    .c-pagination__next a {
        width: 11.5789473684vw;
        height: 11.5789473684vw
    }
}

.c-pagination__prev a::after,
.c-pagination__next a::after {
    content: "";
    display: block;
    position: absolute;
    width: min(3.125vw, 40px);
    height: min(3.125vw, 40px);
    border-radius: 50%;
    background-color: rgba(0, 150, 114, .1);
    transition: transform .8s cubic-bezier(0.1, 0.7, 0.38, 1)
}

@media screen and (max-width: 960px) {
    .c-pagination__prev a::after,
    .c-pagination__next a::after {
        width: 11.5789473684vw;
        height: 11.5789473684vw
    }
}

.c-pagination__prev a svg,
.c-pagination__next a svg {
    width: min(1.171875vw, 15px);
    height: min(1.171875vw, 15px);
    color: #009672;
    transition: transform .3s
}

@media screen and (max-width: 960px) {
    .c-pagination__prev a svg,
    .c-pagination__next a svg {
        width: 3.9473684211vw;
        height: 3.9473684211vw
    }
}

.c-pagination__prev {
    margin-right: min(1.71875vw, 22px)
}

@media screen and (max-width: 960px) {
    .c-pagination__prev {
        margin-right: auto
    }
}

.c-pagination__prev svg {
    transform: rotate(180deg)
}

.c-pagination__next {
    margin-left: min(1.71875vw, 22px)
}

@media screen and (max-width: 960px) {
    .c-pagination__next {
        margin-left: auto
    }
}

.c-pagination__select {
    border-radius: 6px;
    background-color: #e5f6f2;
    position: relative
}

.c-pagination__select select {
    width: auto;
    min-width: min(6.015625vw, 77px);
    text-align: center;
    text-align-last: center;
    padding: min(0.234375vw, 3px) min(1.5625vw, 20px) min(0.234375vw, 3px) min(0.390625vw, 5px)
}

@media screen and (max-width: 960px) {
    .c-pagination__select select {
        font-size: 4.2105263158vw;
        min-width: 20.2631578947vw;
        padding: .7894736842vw 5.2631578947vw .7894736842vw 1.3157894737vw
    }
}

.c-pagination__select::after {
    pointer-events: auto;
    content: "";
    display: inline-block;
    position: absolute;
    margin-left: min(0.546875vw, 7px);
    width: min(1.171875vw, 15px);
    height: min(1.171875vw, 15px);
    top: 0;
    bottom: 0;
    right: min(0.78125vw, 10px);
    margin: auto;
    transition: transform .3s;
    background: url(../img/icon-arrow-nav.svg) no-repeat center/contain
}

@media screen and (max-width: 960px) {
    .c-pagination__select::after {
        margin-left: 1.8421052632vw;
        width: 3.9473684211vw;
        height: 3.9473684211vw;
        right: 2.6315789474vw
    }
}

.c-pagination__selectMax {
    position: relative
}

@media screen and (max-width: 960px) {
    .c-pagination__selectMax {
        font-size: 4.2105263158vw
    }
}

.c-pagination__selectMax::before {
    position: relative;
    content: "";
    display: inline-block;
    margin: 0 min(1.09375vw, 14px) 0 min(0.546875vw, 7px);
    width: min(1.5625vw, 20px);
    height: 1px;
    bottom: min(0.390625vw, 5px);
    transform: rotate(-45deg);
    background: #000
}

@media screen and (max-width: 960px) {
    .c-pagination__selectMax::before {
        margin: 0 1.8421052632vw;
        width: 5.2631578947vw;
        bottom: 1.3157894737vw
    }
}

.c-r-a {
    border-radius: 10px
}

@media screen and (max-width: 960px) {
    .c-r-a {
        border-radius: 10px
    }
}

.c-r-b {
    border-radius: 20px
}

@media screen and (max-width: 960px) {
    .c-r-b {
        border-radius: 10px
    }
}

.c-r {
    border-radius: 40px
}

@media screen and (max-width: 960px) {
    .c-r {
        border-radius: 30px
    }
}

.c-r-s {
    border-radius: 20px
}

@media screen and (max-width: 960px) {
    .c-r-s {
        border-radius: 10px
    }
}

.modal-on {
    overflow: hidden
}

.modal-on .c-modal {
    pointer-events: auto;
    opacity: 1
}

.modal-on .c-modal__bg {
    opacity: 1
}

.modal-on .c-modal__container {
    opacity: 1;
    transform: scale(1)
}

.c-modal {
    pointer-events: none;
    opacity: 0;
    position: fixed;
    z-index: 1000;
    width: 100%;
    height: 100vh;
    top: 0;
    left: 0;
    display: grid;
    place-content: center;
    place-items: center;
    transition: opacity .8s
}

.c-modal__bg {
    opacity: 0;
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background-color: rgba(0, 0, 0, .7);
    transition: opacity .4s
}

.c-modal__container {
    opacity: 0;
    transform: scale(0.95);
    position: relative;
    width: min(85.15625vw, 1090px);
    height: min(43.75vw, 560px);
    transition: opacity .6s, transform .6s
}

@media screen and (max-width: 960px) {
    .c-modal__container {
        width: 89.4736842105vw;
        height: 77svh;
        margin-bottom: 7.8947368421vw
    }
}

.c-modal__innerWrap {
    overflow-y: auto;
    height: 100%;
    padding: 0 min(2.5vw, 32px) 0 min(5vw, 64px);
    background-color: #fff;
    border-radius: 40px
}

@media screen and (max-width: 960px) {
    .c-modal__innerWrap {
        padding: 0 4.2105263158vw;
        border-radius: 30px
    }
}

.c-modal__inner {
    padding: min(5vw, 64px) min(2.5vw, 32px) min(0.78125vw, 10px) 0
}

@media screen and (max-width: 960px) {
    .c-modal__inner {
        padding: 7.8947368421vw 0
    }
}

.c-modal__section[data-modal-content] {
    position: absolute;
    opacity: 0;
    pointer-events: none
}

.c-modal__section.active {
    position: relative;
    opacity: 1;
    pointer-events: auto;
    transition: opacity .4s
}

.c-modal__nav {
    width: 100%;
    position: relative;
    top: calc(50% - min(2.34375vw, 30px))
}

@media screen and (max-width: 960px) {
    .c-modal__nav {
        position: absolute;
        top: initial;
        bottom: -6.3157894737vw;
        width: 100%;
        left: 0
    }
}

.c-modal__nav .c-modal__navItem--typeB {
    z-index: 1
}

@media screen and (min-width: 961px) {
    .c-modal__nav .c-modal__navItem--typeB .c-btn-c {
        color: #009672;
        background-color: #fff
    }
}

.c-modal__nav .c-modal__navItem--typeB[data-modal-nav=prev] {
    left: max(-2.734375vw, -35px)
}

@media screen and (max-width: 960px) {
    .c-modal__nav .c-modal__navItem--typeB[data-modal-nav=prev] {
        left: 16.3157894737vw;
        transform: none
    }
    .c-modal__nav .c-modal__navItem--typeB[data-modal-nav=prev] .c-modal__navIcon {
        transform: scale(-1)
    }
}

.c-modal__nav .c-modal__navItem--typeB[data-modal-nav=next] {
    right: max(-2.734375vw, -35px)
}

@media screen and (max-width: 960px) {
    .c-modal__nav .c-modal__navItem--typeB[data-modal-nav=next] {
        right: 16.3157894737vw;
        flex-direction: row-reverse
    }
}

@media screen and (max-width: 960px) {
    .c-modal__nav .c-modal__navItem--typeB {
        display: flex;
        align-items: center;
        gap: 3.1578947368vw
    }
    .c-modal__nav .c-modal__navItem--typeB::after {
        display: block;
        content: "" attr(data-modal-navname) ""
    }
}

.c-modal__nav a {
    cursor: pointer;
    line-height: 1;
    position: absolute;
    color: #fff
}

.c-modal__nav a[data-modal-nav=prev] {
    left: max(-7.421875vw, -95px);
    top: 50%;
    transform: scale(-1)
}

@media screen and (max-width: 960px) {
    .c-modal__nav a[data-modal-nav=prev] {
        left: 0
    }
}

.c-modal__nav a[data-modal-nav=next] {
    right: max(-7.421875vw, -95px)
}

@media screen and (max-width: 960px) {
    .c-modal__nav a[data-modal-nav=next] {
        right: 0
    }
}

.c-modal__main {
    display: grid;
    grid-template-columns: 1fr min(24.296875vw, 311px);
    gap: min(3.125vw, 40px)
}

@media screen and (max-width: 960px) {
    .c-modal__main {
        grid-template-columns: 1fr;
        gap: 5.2631578947vw
    }
}

@media screen and (max-width: 960px) {
    .c-modal__img {
        order: -1
    }
}

.c-modal__heading {
    font-size: min(2.8125vw, 36px);
    line-height: 1.6;
    font-weight: 300;
    letter-spacing: min(0.234375vw, 3px);
    margin-bottom: min(1.71875vw, 22px)
}

@media screen and (max-width: 960px) {
    .c-modal__heading {
        font-size: 6.8421052632vw;
        letter-spacing: .5263157895vw;
        margin-bottom: 5.7894736842vw
    }
}

.c-modal__subheading {
    font-size: min(1.71875vw, 22px);
    font-weight: 300;
    color: #009672;
    padding-bottom: min(0.390625vw, 5px);
    margin-bottom: min(1.25vw, 16px);
    border-bottom: #99ddcd 1px solid
}

.c-modal__subheading:not(:first-child) {
    margin-top: min(1.796875vw, 23px)
}

@media screen and (max-width: 960px) {
    .c-modal__subheading {
        font-size: 5.2631578947vw;
        padding-bottom: 1.3157894737vw;
        margin-bottom: 4.2105263158vw
    }
    .c-modal__subheading:not(:first-child) {
        margin-top: 6.0526315789vw
    }
}

.c-modal__btn {
    display: flex;
    gap: min(2.5vw, 32px);
    margin-top: min(2.5vw, 32px)
}

@media screen and (max-width: 960px) {
    .c-modal__btn {
        display: grid;
        grid-template-columns: 1fr;
        gap: 4.2105263158vw;
        margin-top: 8.4210526316vw
    }
}

.c-modal__btn .c-btn {
    min-width: min(20.3125vw, 260px)
}

@media screen and (max-width: 960px) {
    .c-modal__btn .c-btn {
        min-width: 100%
    }
}

.c-modal__closeBtn {
    position: absolute;
    cursor: pointer;
    display: block;
    right: max(-0.3125vw, -4px);
    top: max(-3.90625vw, -50px);
    width: min(3.125vw, 40px);
    height: min(3.125vw, 40px)
}

@media screen and (max-width: 960px) {
    .c-modal__closeBtn {
        right: -1.0526315789vw;
        top: -13.1578947368vw;
        width: 10.5263157895vw;
        height: 10.5263157895vw
    }
}

.c-modal__closeBtn::before,
.c-modal__closeBtn::after {
    content: "";
    position: absolute;
    top: min(1.40625vw, 18px);
    width: min(3.125vw, 40px);
    height: 1px;
    background-color: #fff
}

@media screen and (max-width: 960px) {
    .c-modal__closeBtn::before,
    .c-modal__closeBtn::after {
        top: 4.7368421053vw;
        width: 10.5263157895vw
    }
}

.c-modal__closeBtn::before {
    transform: rotate(45deg)
}

.c-modal__closeBtn::after {
    transform: rotate(-45deg)
}

.c-modalannounce {
    pointer-events: none;
    opacity: 0;
    position: fixed;
    z-index: 1000;
    width: 100%;
    height: 100vh;
    top: 0;
    left: 0;
    display: grid;
    place-content: center;
    place-items: center;
    transition: opacity .8s
}

.c-modalannounce__bg {
    opacity: 0;
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background-color: rgba(0, 0, 0, .7);
    transition: opacity .4s
}

.c-modalannounce__container {
    opacity: 0;
    transform: scale(0.95);
    position: relative;
    width: min(85.15625vw, 1090px);
    height: min(43.75vw, 560px);
    transition: opacity .6s, transform .6s
}

@media screen and (max-width: 960px) {
    .c-modalannounce__container {
        width: 89.4736842105vw;
        height: 77svh;
        margin-bottom: 7.8947368421vw
    }
}

.c-modalannounce__innerWrap {
    overflow-y: auto;
    height: 100%;
    background-color: #fff;
    padding: 0 min(4.6875vw, 60px);
    border-radius: 40px
}

@media screen and (max-width: 960px) {
    .c-modalannounce__innerWrap {
        border-radius: 30px;
        padding: 0 4.2105263158vw
    }
}

.c-modalannounce__inner {
    padding: min(3.125vw, 40px) 0
}

@media screen and (max-width: 960px) {
    .c-modalannounce__inner {
        padding: 10.5263157895vw 0
    }
}

.c-modalannounce__section[data-modal-content] {
    position: absolute;
    opacity: 0;
    pointer-events: none
}

.c-modalannounce__section.active {
    position: relative;
    opacity: 1;
    pointer-events: auto;
    transition: opacity .4s
}

.c-modalannounce__closeBtn {
    position: absolute;
    cursor: pointer;
    display: block;
    right: max(-0.3125vw, -4px);
    top: max(-3.90625vw, -50px);
    width: min(3.125vw, 40px);
    height: min(3.125vw, 40px)
}

@media screen and (max-width: 960px) {
    .c-modalannounce__closeBtn {
        right: -1.0526315789vw;
        top: -13.1578947368vw;
        width: 10.5263157895vw;
        height: 10.5263157895vw
    }
}

.c-modalannounce__closeBtn::before,
.c-modalannounce__closeBtn::after {
    content: "";
    position: absolute;
    top: min(1.40625vw, 18px);
    width: min(3.125vw, 40px);
    height: 1px;
    background-color: #fff
}

@media screen and (max-width: 960px) {
    .c-modalannounce__closeBtn::before,
    .c-modalannounce__closeBtn::after {
        top: 4.7368421053vw;
        width: 10.5263157895vw
    }
}

.c-modalannounce__closeBtn::before {
    transform: rotate(45deg)
}

.c-modalannounce__closeBtn::after {
    transform: rotate(-45deg)
}

.modalannounce-on {
    overflow: hidden
}

.modalannounce-on .c-modalannounce {
    pointer-events: auto;
    opacity: 1
}

.modalannounce-on .c-modalannounce .c-modalannounce__bg {
    opacity: 1
}

.modalannounce-on .c-modalannounce .c-modalannounce__container {
    opacity: 1;
    transform: scale(1)
}

.p-modalannounce-announce {
    width: min(55.46875vw, 710px)
}

@media screen and (max-width: 960px) {
    .p-modalannounce-announce {
        width: 89.4736842105vw;
        height: 132.6315789474vw
    }
}

.p-modalannounce-announce .c-modalannounce__innerWrap {
    background-color: #e5f7f2
}

.p-modalannounce-announce .p-modalannounce-announce__title {
    text-align: center;
    font-size: min(2.34375vw, 30px);
    line-height: 1.6;
    margin-bottom: min(2.34375vw, 30px)
}

@media screen and (max-width: 960px) {
    .p-modalannounce-announce .p-modalannounce-announce__title {
        font-size: 5.2631578947vw;
        margin-bottom: 7.8947368421vw
    }
}

.p-modalannounce-announce .p-modalannounce-announce__img {
    width: min(40.625vw, 520px);
    margin: 0 auto min(1.953125vw, 25px)
}

@media screen and (max-width: 960px) {
    .p-modalannounce-announce .p-modalannounce-announce__img {
        width: 81.0526315789vw;
        margin-bottom: 5.2631578947vw
    }
}

.p-modalannounce-announce .p-modalannounce-announce__desc {
    text-align: center
}

@media screen and (max-width: 960px) {
    .p-modalannounce-announce .p-modalannounce-announce__desc {
        text-align: left;
        font-size: 3.4210526316vw
    }
}

.p-modalannounce-announce .p-modalannounce-announce__btn {
    text-align: center;
    margin: min(3.125vw, 40px) 0 0
}

@media screen and (max-width: 960px) {
    .p-modalannounce-announce .p-modalannounce-announce__btn {
        margin: 8.4210526316vw 0 0
    }
}

@media screen and (max-width: 960px) {
    .p-modalannounce-announce .p-modalannounce-announce__btn .c-btn {
        min-width: auto
    }
}

@media screen and (max-width: 960px) {
    .p-modalannounce-announce .p-modalannounce-announce__btn .c-btn__label {
        font-size: 3.9473684211vw
    }
}

@media screen and (max-width: 960px) {
    .p-modalannounce-announce__title--noBreak {
        white-space: nowrap;
        letter-spacing: -0.025em
    }
}

.gallery-on {
    overflow: hidden
}

.gallery-on .c-gallery {
    pointer-events: auto;
    opacity: 1
}

.gallery-on .c-gallery__bg {
    opacity: 1
}

.gallery-on .c-gallery__container {
    opacity: 1;
    transform: scale(1)
}

.c-gallery {
    pointer-events: none;
    opacity: 0;
    position: fixed;
    z-index: 1000;
    width: 100%;
    height: 100vh;
    top: 0;
    left: 0;
    display: grid;
    place-content: center;
    place-items: center;
    transition: opacity .8s
}

.c-gallery__bg {
    opacity: 0;
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background-color: rgba(0, 0, 0, .7);
    transition: opacity .4s
}

.c-gallery__container {
    opacity: 0;
    transform: scale(0.95);
    position: relative;
    width: min(80.625vw, 1032px);
    transition: opacity .6s, transform .6s
}

@media screen and (max-width: 960px) {
    .c-gallery__container {
        width: 89.4736842105vw
    }
}

.c-gallery__inner {
    height: 100%
}

.c-gallery__section[data-gallery-content] {
    opacity: 0;
    position: absolute;
    pointer-events: none
}

.c-gallery__section.active {
    position: relative;
    opacity: 1;
    pointer-events: auto;
    transition: opacity .4s
}

.c-gallery__btn {
    display: flex;
    gap: min(2.5vw, 32px);
    margin-top: min(2.5vw, 32px)
}

@media screen and (max-width: 960px) {
    .c-gallery__btn {
        display: grid;
        grid-template-columns: 1fr;
        gap: 4.2105263158vw;
        margin-top: 8.4210526316vw
    }
}

.c-gallery__btn .c-btn {
    min-width: min(20.3125vw, 260px)
}

@media screen and (max-width: 960px) {
    .c-gallery__btn .c-btn {
        min-width: 100%
    }
}

.c-gallery__closeBtn {
    position: absolute;
    cursor: pointer;
    display: block;
    right: max(-0.3125vw, -4px);
    top: max(-3.90625vw, -50px);
    width: min(3.125vw, 40px);
    height: min(3.125vw, 40px)
}

@media screen and (max-width: 960px) {
    .c-gallery__closeBtn {
        right: -1.0526315789vw;
        top: -13.1578947368vw;
        width: 10.5263157895vw;
        height: 10.5263157895vw
    }
}

.c-gallery__closeBtn::before,
.c-gallery__closeBtn::after {
    content: "";
    position: absolute;
    top: min(1.40625vw, 18px);
    width: min(3.125vw, 40px);
    height: 1px;
    background-color: #fff
}

@media screen and (max-width: 960px) {
    .c-gallery__closeBtn::before,
    .c-gallery__closeBtn::after {
        top: 4.7368421053vw;
        width: 10.5263157895vw
    }
}

.c-gallery__closeBtn::before {
    transform: rotate(45deg)
}

.c-gallery__closeBtn::after {
    transform: rotate(-45deg)
}

.c-gallery-link {
    color: #009672;
    text-decoration: underline
}

@media screen and (min-width: 961px) {
    .c-gallery-link:hover {
        text-decoration: none
    }
    .c-gallery-link:hover img {
        transform: scale(1.1)
    }
}

.js-gallery {
    display: block;
    position: relative;
    overflow: hidden
}

.js-gallery::after {
    content: "";
    position: absolute;
    background: no-repeat 0 0;
    background-image: url(/themes/custom/automotive/assets/img/icon-zoom.svg);
    background-size: contain;
    width: min(2.5vw, 32px);
    height: min(2.5vw, 32px);
    right: 0;
    bottom: 0
}

@media screen and (max-width: 960px) {
    .js-gallery::after {
        width: 8.4210526316vw;
        height: 8.4210526316vw
    }
}

@media screen and (min-width: 961px) {
    .js-gallery:hover img {
        transform: scale(1.1)
    }
}

.js-gallery img {
    transition: transform .8s cubic-bezier(0.1, 0.7, 0.38, 1)
}

.c-mobitera-bnr {
    position: fixed;
    bottom: 0;
    width: min(32.96875vw, 422px);
    background-color: #fff;
    letter-spacing: min(0.0234375vw, 0.3px);
    display: flex;
    align-items: center;
    justify-content: space-between;
    z-index: 998;
    bottom: min(0.78125vw, 10px);
    right: 0;
    border-radius: 24px 0 0 24px;
    background-color: #fff;
    transition: opacity .3s;
    box-shadow: 0 0 min(0.78125vw, 10px) rgba(0, 0, 0, .16)
}

@media screen and (max-width: 960px) {
    .c-mobitera-bnr {
        width: 72.8947368421vw;
        letter-spacing: .0789473684vw;
        bottom: 2.6315789474vw;
        box-shadow: 0 0 2.6315789474vw rgba(0, 0, 0, .16)
    }
}

.c-mobitera-bnr.hidden {
    opacity: 0;
    pointer-events: none
}

.c-mobitera-bnr.removed {
    opacity: 0;
    pointer-events: none
}

.c-mobitera-bnr.deleted {
    display: none;
    visibility: hidden
}

.c-mobitera-bnr__close {
    position: absolute;
    z-index: 99;
    background: none;
    border: none;
    cursor: pointer;
    margin: 0;
    padding: 0;
    top: max(-0.546875vw, -7px);
    left: max(-0.546875vw, -7px)
}

@media screen and (max-width: 960px) {
    .c-mobitera-bnr__close {
        top: -1.8421052632vw;
        left: -1.8421052632vw
    }
}

.c-mobitera-bnr__close img {
    width: min(1.875vw, 24px);
    height: auto
}

@media screen and (max-width: 960px) {
    .c-mobitera-bnr__close img {
        width: 6.3157894737vw
    }
}

.c-mobitera-bnr__main {
    display: flex;
    align-items: center;
    width: 100%;
    text-decoration: none
}

@media screen and (min-width: 961px) {
    .c-mobitera-bnr__main {
        transition: opacity .3s
    }
    .c-mobitera-bnr__main:hover {
        opacity: .8
    }
}

.c-mobitera-bnr__mainImg {
    padding: 0 min(0.3125vw, 4px)
}

.c-mobitera-bnr__mainImg img {
    width: min(11.25vw, 144px)
}

@media screen and (max-width: 960px) {
    .c-mobitera-bnr__mainImg img {
        width: 31.8421052632vw
    }
}

.c-mobitera-bnr__mainTxt {
    flex-grow: 1;
    font-size: min(1.171875vw, 15px);
    line-height: 1.5;
    text-decoration: underline;
    padding: min(1.40625vw, 18px) min(1.171875vw, 15px);
    background-color: #e5f7f2
}

@media screen and (max-width: 960px) {
    .c-mobitera-bnr__mainTxt {
        font-size: 3.4210526316vw;
        padding: 2.6315789474vw 1.8421052632vw
    }
}

.main {
    overflow: clip
}

.l-column {
    display: grid;
    grid-template-columns: minmax(67%, 1342px) min(18.75vw, 240px);
    gap: min(4.6875vw, 60px)
}

@media screen and (max-width: 960px) {
    .l-column {
        display: block
    }
}

.l-side {
    margin-top: min(15.625vw, 200px)
}

.l-container {
    width: 79%;
    max-width: 1580px;
    margin: 0 auto
}

@media screen and (max-width: 768px) {
    .l-container {
        width: 90%;
        padding: 0
    }
}

.l-container-wide {
    max-width: 1810px;
    margin: 0 auto;
    width: 90%
}

@media screen and (max-width: 960px) {
    .l-container-wide {
        width: 90%
    }
}

.l-container-max {
    max-width: 2000px;
    margin: 0 auto;
    width: 100%
}

.l-container-s {
    max-width: 1160px;
    width: 90%;
    margin: 0 auto
}

.l-container-ss {
    width: 840px;
    margin: 0 auto
}

@media screen and (max-width: 960px) {
    .l-container-ss {
        width: 90%
    }
}

.l-header__wrap {
    position: absolute;
    top: 0;
    z-index: 999;
    width: 100%
}

.l-header {
    position: absolute;
    width: 100%;
    display: flex;
    min-height: min(6.5625vw, 84px)
}

@media screen and (max-width: 960px) {
    .l-header {
        transition: background-color .3s;
        min-height: 60px
    }
}

.l-header::before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(45deg, #fff 0%, rgba(255, 255, 255, 0.4) 100%);
    backdrop-filter: blur(10px)
}

.l-header.active .l-header__bg {
    pointer-events: auto;
    opacity: 1
}

.l-header.fixed {
    position: fixed;
    top: 0
}

@media screen and (max-width: 960px) {
    .l-header .l-header__logoBlock {
        height: 100%;
        align-content: center;
        padding-right: 80px;
        padding-left: 16px
    }
}

.l-header__bg {
    pointer-events: none;
    opacity: 0;
    transition: opacity .3s;
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    background-color: hsla(0, 0%, 100%, .6)
}

.l-header__inner {
    position: relative;
    display: flex;
    justify-content: space-between;
    align-items: center
}

@media screen and (max-width: 960px) {
    .l-header__inner {
        width: 100%;
        display: block
    }
}

.l-header__inner.l-container-wide {
    margin: 0 auto;
    padding-right: 0;
    padding-left: 0
}

@media screen and (min-width: 961px) {
    .l-header__inner.l-container-wide {
        max-width: 1810px;
        width: 90%
    }
}

@media screen and (max-width: 960px) {
    .l-header__inner.l-container-wide {
        width: 100%
    }
}

.l-header__logo {
    font-size: min(1.09375vw, 14px)
}

@media screen and (max-width: 960px) {
    .l-header__logo {
        width: 113px;
        height: 34px;
        margin: 12px 0 15px 20px
    }
}

.l-header__logo img {
    width: 100%;
    height: auto
}

.l-header__nav {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    padding: 10px 0
}

.l-header__navItem {
    position: relative;
    font-weight: 300;
    font-size: min(1.015625vw, 13px);
    letter-spacing: 0;
    margin-left: 0
}

.l-header__navItem:not(:first-child) {
    margin-left: min(1.875vw, 24px)
}

@media screen and (max-width: 1200px) {
    .l-header__navItem:not(:first-child) {
        margin-left: min(1.09375vw, 14px)
    }
}

.l-header__navItem.active>a {
    color: #009672
}

.l-header__navItem.active>a::after {
    transform: scaleY(-1)
}

.l-header__navItem>.l-header__navTextＬink {
    display: flex;
    align-items: center
}

@media screen and (min-width: 961px) {
    .l-header__navItem>.l-header__navTextＬink {
        padding-top: min(1.25vw, 16px);
        padding-bottom: min(1.25vw, 16px);
        transition: color .3s
    }
}

.l-header__navItem.--hasnav>a {
    position: relative
}

.l-header__navItem.--hasnav>a::after {
    content: "";
    display: inline-block;
    position: relative;
    margin-left: min(0.546875vw, 7px);
    width: min(1.171875vw, 15px);
    height: min(1.171875vw, 15px);
    transition: transform .3s;
    background: url(/themes/custom/automotive/assets/img/icon-arrow-nav.svg) no-repeat center/contain
}

.l-header__navItem--global svg,
.l-header__navItem--search svg {
    width: min(1.171875vw, 15px);
    height: min(1.171875vw, 15px)
}

.l-header__navItem--global svg {
    margin-left: min(0.390625vw, 5px)
}

.l-header__navItem--search.active .l-header__navItemSearch {
    pointer-events: auto;
    opacity: 1;
    transform: translateY(0)
}

.l-header__navItemSearch {
    pointer-events: none;
    opacity: 0;
    transform: translateY(-10px);
    transition: opacity .3s, transform .6s;
    position: absolute;
    width: min(39.0625vw, 500px);
    right: max(-1.875vw, -24px);
    background-color: #009672;
    border-radius: min(0.78125vw, 10px);
    padding: min(1.5625vw, 20px)
}

.l-header__navItemSearch::before {
    content: "";
    position: absolute;
    top: max(-1.40625vw, -18px);
    right: min(1.875vw, 24px);
    width: 0;
    height: min(0.78125vw, 10px);
    border-style: solid;
    border-width: 0 min(0.78125vw, 10px) min(0.78125vw, 10px);
    border-color: rgba(0, 0, 0, 0) rgba(0, 0, 0, 0) #009672 rgba(0, 0, 0, 0)
}

.l-header__search {
    color: #fff;
    display: flex;
    border-bottom: #fff 1px solid
}

.l-header__search input {
    color: #fff;
    font-size: min(1.015625vw, 13px);
    font-weight: 300
}

.l-header__search input:placeholder-shown {
    color: #80cbb9
}

.l-header__search input::-webkit-input-placeholder {
    color: #80cbb9
}

.l-header__search input:-moz-placeholder {
    color: #80cbb9;
    opacity: 1
}

.l-header__search input::-moz-placeholder {
    color: #80cbb9;
    opacity: 1
}

.l-header__search input:-ms-input-placeholder {
    color: #80cbb9
}

.l-header__searchButton {
    color: #fff
}

@media screen and (max-width: 960px) {
    .l-header__menu {
        position: absolute;
        top: 10px;
        right: 20px
    }
}

@media screen and (max-width: 960px) {
    .l-header__menu .line {
        position: absolute;
        width: 40px;
        height: 1px;
        background-color: #000;
        transition: transform .3s, top .3s
    }
}

.l-header__menu .line:nth-child(1) {
    top: 12px
}

.l-header__menu .line:nth-child(2) {
    width: 20px;
    top: 21px;
    left: 10px
}

.l-header__menu .line:nth-child(3) {
    top: 30px
}

.l-header__menuButton {
    display: none
}

@media screen and (max-width: 960px) {
    .l-header__menuButton {
        position: relative;
        display: block;
        width: 40px;
        height: 40px;
        margin: 0;
        padding: 0
    }
}

@media screen and (max-width: 960px) {
    .l-header__navwrap {
        display: none
    }
}

@media screen and (min-width: 961px) {
    .l-header__subnav {
        pointer-events: none;
        opacity: 0;
        transition: opacity .3s, transform .6s;
        position: absolute;
        background-color: #009672;
        display: flex;
        flex-direction: column;
        left: 50%;
        transform: translateX(-50%) translateY(-10px);
        padding: min(1.875vw, 24px);
        border-radius: min(0.78125vw, 10px);
        min-width: min(18.984375vw, 243px)
    }
    .--hasnav.active .l-header__subnav {
        pointer-events: auto;
        opacity: 1;
        transform: translateX(-50%) translateY(0)
    }
    .l-header__subnav::before {
        content: "";
        position: absolute;
        top: max(-1.09375vw, -14px);
        left: 50%;
        transform: translateX(-50%);
        width: 0;
        height: min(0.625vw, 8px);
        border-style: solid;
        border-width: 0 min(0.625vw, 8px) min(0.625vw, 8px);
        border-color: rgba(0, 0, 0, 0) rgba(0, 0, 0, 0) #009672 rgba(0, 0, 0, 0)
    }
    .l-header__subnav li {
        white-space: nowrap
    }
    .l-header__subnav li:not(:last-child) {
        margin-bottom: min(0.9375vw, 12px)
    }
}

@media screen and (min-width: 961px)and (max-width: 960px) {
    .l-header__subnav li:not(:last-child) {
        margin-bottom: 12px
    }
}

@media screen and (min-width: 961px) {
    .l-header__subnav a {
        display: block;
        color: #fff;
        transition: opacity .3s
    }
    .l-header__subnav a:hover {
        opacity: .7
    }
}

@media screen and (max-width: 960px) {
    .l-header__bg {
        display: none
    }
}

.l-spheader__navwrap {
    display: none
}

@media screen and (max-width: 960px) {
    .l-spheader__navwrap {
        display: block
    }
}

@media screen and (max-width: 960px) {
    .spnav-on {
        overflow: hidden
    }
    .spnav-on .l-header__menuButton .line:nth-child(1) {
        transform: rotate(45deg);
        top: 20px
    }
    .spnav-on .l-header__menuButton .line:nth-child(2) {
        transform: scaleX(0)
    }
    .spnav-on .l-header__menuButton .line:nth-child(3) {
        transform: rotate(-45deg);
        top: 20px
    }
    .spnav-on .l-header {
        background-color: #fff
    }
    .spnav-on .l-spheader__navwrap {
        pointer-events: auto;
        opacity: 1;
        transform: translateY(0)
    }
}

@media screen and (max-width: 960px) {
    .l-spheader__navContents {
        transition: transform .4s
    }
    .l-spheader__navContents[data-subnav="0"] {
        transition: none
    }
    .l-spheader__navContents[data-subnav="2"] {
        transform: translateX(-105%)
    }
    .l-spheader__navContents[data-subnav="3"] {
        transform: translateX(-210%)
    }
    .l-spheader__navwrap {
        pointer-events: none;
        opacity: 0;
        transform: translateY(-10px);
        transition: opacity .3s, transform .3s;
        position: absolute;
        width: 100%;
        height: calc(100vh - 60px);
        background-color: #fff;
        overflow: scroll
    }
    .l-spheader__search {
        padding: 10px 0 10px
    }
    .l-spheader__searchForm {
        display: grid;
        grid-template-columns: 1fr auto;
        border-bottom: #000 1px solid
    }
    .l-spheader__searchForm input {
        padding: 10px 0
    }
    .l-spheader__searchButton {
        margin: 0;
        padding: 0 0 0 10px;
        color: #000
    }
    .l-spheader__navInner {
        width: 90%;
        margin: 0 auto;
        overflow: hidden
    }
    .l-spheader__navContents {
        position: relative
    }
    .l-spheader__nav {
        width: 100%;
        position: relative
    }
    .l-spheader__nav li>a::after {
        content: "";
        display: inline-block;
        position: absolute;
        top: 19px;
        right: 0;
        margin-left: 7px;
        width: 15px;
        height: 15px;
        transition: transform .3s;
        background: url(/themes/custom/automotive/assets/img/icon-arrow-subnav.svg) no-repeat center/contain
    }
    .l-spheader__navItem {
        width: 100%;
        font-size: 18px;
        border-bottom: #99ddcd 1px solid
    }
    .l-spheader__navItem a {
        position: relative;
        display: block;
        font-weight: 300;
        line-height: 1.4
    }
    .l-spheader__navItem.--hasnav>a::after,
    .l-spheader__navItem .--hassubnav>a::after {
        content: "";
        display: inline-block;
        position: absolute;
        top: 18px;
        right: 0;
        margin-left: 7px;
        width: 15px;
        height: 15px;
        transition: transform .3s;
        background: url(/themes/custom/automotive/assets/img/icon-plus.svg) no-repeat center/contain
    }
    .l-spheader__navItem.active>a {
        color: currentColor
    }
    .l-spheader__navItem>a {
        padding: 13px 0
    }
    .l-spheader__navItem--global {
        border: 0;
        width: auto;
        font-size: 15px
    }
    .l-spheader__navItem--global svg {
        width: 15px;
        height: 15px;
        margin-left: 5px;
        margin-bottom: 3px
    }
    .l-spheader__navItem--global a {
        font-weight: normal
    }
    .l-spheader__navItem--global a::after {
        display: none !important
    }
    .l-spheader__navFooter {
        margin-top: 20px;
        margin-bottom: 20px
    }
    .l-spheader__navFooterItem {
        margin-top: 15px;
        margin-bottom: 15px
    }
    .l-spheader__navFooterItem a {
        display: block
    }
    .l-spheader__navFooterItemImg img {
        width: 100%;
        height: auto
    }
    .l-spheader__navFooterItemHeading {
        font-size: 15px;
        font-weight: 300;
        margin-top: 10px
    }
    .l-spheader__subnav {
        display: grid;
        grid-template-rows: 0fr;
        transition: all .3s;
        width: 100%;
        position: absolute;
        top: 0;
        left: 105%;
        pointer-events: none;
        opacity: 0
    }
    .l-spheader__subnav.active {
        pointer-events: auto;
        opacity: 1
    }
    .l-spheader__subnav ul {
        overflow: hidden
    }
    .l-spheader__subnav li {
        font-size: 18px;
        font-weight: normal;
        padding: 0;
        border-bottom: #99ddcd 1px solid
    }
    .l-spheader__subnav a {
        display: block;
        color: #000;
        padding: 13px 23px 13px 0
    }
    .l-spheader__subnavUnder {
        width: 100%;
        position: absolute;
        top: 0;
        left: 105%;
        opacity: 0;
        pointer-events: none
    }
    .l-spheader__subnavUnder a {
        position: relative
    }
    .l-spheader__subnavUnder.active {
        pointer-events: auto;
        opacity: 1
    }
    .l-spheader__subback {
        font-size: 15px
    }
    .l-spheader__subback a {
        color: #009672
    }
    .l-spheader__subback svg {
        transform: rotate(180deg);
        margin-right: 5px
    }
}

.l-under {
    position: relative;
    background-color: #fff
}

.l-under .l-utility.l-container-wide {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    max-width: 1810px;
    width: 90%;
    gap: min(1.25vw, 16px)
}

@media screen and (min-width: 961px) {
    .l-under .l-utility.l-container-wide {
        margin-bottom: min(1.953125vw, 25px);
        padding-right: 0;
        padding-left: 0
    }
}

@media screen and (max-width: 960px) {
    .l-under .l-utility.l-container-wide {
        margin-bottom: 24px;
        gap: 16px
    }
}

.l-utility--single {
    justify-content: flex-end
}

.l-utility__breadcrumb {
    display: flex;
    flex-wrap: wrap
}

.l-utility__breadcrumb li {
    font-size: min(0.9375vw, 12px);
    font-weight: 300
}

@media screen and (max-width: 960px) {
    .l-utility__breadcrumb li {
        font-size: 12px;
        margin-top: 8px
    }
}

.l-utility__breadcrumb span {
    color: #6a7680
}

.l-utility__breadcrumb a {
    position: relative;
    padding-right: min(1.875vw, 24px)
}

@media screen and (min-width: 961px) {
    .l-utility__breadcrumb a {
        transition: color .3s
    }
    .l-utility__breadcrumb a:hover {
        color: #009672
    }
}

@media screen and (max-width: 960px) {
    .l-utility__breadcrumb a {
        padding-right: 24px
    }
}

.l-utility__breadcrumb a::after {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: min(0.625vw, 8px);
    width: min(0.46875vw, 6px);
    height: min(0.859375vw, 11px);
    background-image: url("/themes/custom/automotive/pages/mobitera/common/img/icon-arrow-bc.svg");
    background-repeat: no-repeat;
    background-position: 0 0;
    background-size: 100% auto
}

@media screen and (max-width: 960px) {
    .l-utility__breadcrumb a::after {
        right: 8px;
        width: 6px;
        height: 11px
    }
}

.l-utility__pagetop a {
    z-index: 1;
    color: #fff
}

.l-utility__pagetop svg {
    transform: rotate(0deg)
}

.l-footer .l-utility__pagetop {
    position: absolute;
    top: -24px;
    right: 24px
}

.l-footer {
    position: relative;
    background-color: #e5f6f2;
    border-radius: 0 0 0 0;
    padding: min(4.6875vw, 60px) 0 min(2.65625vw, 34px)
}

@media screen and (max-width: 960px) {
    .l-footer {
        border-radius: 0 0 0 0;
        padding: 30px 0
    }
}

.l-footer__inner.l-container-wide,
.l-footer__under.l-container-wide {
    max-width: 1810px;
    width: 90%;
    margin-right: auto;
    margin-left: auto
}

@media screen and (min-width: 961px) {
    .l-footer__inner.l-container-wide,
    .l-footer__under.l-container-wide {
        padding-right: 0;
        padding-left: 0
    }
}

@media screen and (max-width: 960px) {
    .l-footer__inner.l-container-wide,
    .l-footer__under.l-container-wide {
        width: 100%;
        padding-right: 16px;
        padding-left: 16px
    }
}

.l-footer__inner {
    display: flex;
    justify-content: space-between;
    margin-bottom: 0
}

@media screen and (max-width: 960px) {
    .l-footer__inner {
        flex-direction: column-reverse
    }
}

.l-footer__inner.l-container-wide+* {
    margin-top: min(7.03125vw, 90px)
}

@media screen and (max-width: 960px) {
    .l-footer__inner.l-container-wide+* {
        margin-top: 60px
    }
}

.l-footer__pageTopBtn {
    width: 48px;
    height: auto;
    aspect-ratio: 1/1;
    background-color: rgba(0, 0, 0, 0)
}

.l-footer__pageTopBtn.c-btn-c::after {
    content: none
}

.l-footer .l-utility__pagetop>.l-footer__pageTopBtn {
    position: static
}

.l-footer__pageTopBtnElm {
    width: 100%;
    max-width: inherit;
    height: auto;
    image-rendering: -webkit-optimize-contrast
}

.l-footer__pageTopBtn .l-footer__pageTopBtnElm {
    transform: rotate(0deg)
}

@media screen and (max-width: 960px) {
    .l-footer__text {
        width: 312px
    }
}

.l-footer__social {
    display: flex
}

@media screen and (min-width: 961px) {
    .l-footer__social {
        column-gap: min(2.34375vw, 30px)
    }
}

@media screen and (max-width: 960px) {
    .l-footer__social {
        justify-content: flex-start;
        column-gap: 24px;
        margin-bottom: 30px
    }
}

.l-footer__social li {
    margin-left: 0
}

@media screen and (max-width: 960px) {
    .l-footer__social li .icon-x {
        width: 23px
    }
}

@media screen and (max-width: 960px) {
    .l-footer__social li .icon-yt {
        width: 34px
    }
}

@media screen and (max-width: 960px) {
    .l-footer__social li .icon-linkedin {
        width: 32px
    }
}

@media screen and (min-width: 961px) {
    .l-footer__social li a {
        transition: opacity .3s
    }
    .l-footer__social li a:hover {
        opacity: .3
    }
}

.l-footer_socialTitle {
    display: block;
    line-height: 1.5;
    font-weight: 400;
    font-style: normal
}

@media screen and (min-width: 961px) {
    .l-footer_socialTitle {
        font-size: min(0.9375vw, 12px)
    }
}

@media screen and (max-width: 960px) {
    .l-footer_socialTitle {
        font-size: 12px
    }
}

@media screen and (min-width: 961px) {
    .l-footer_socialTitle+* {
        margin-top: min(0.9375vw, 12px)
    }
}

@media screen and (max-width: 960px) {
    .l-footer_socialTitle+* {
        margin-top: 12px
    }
}

@media screen and (min-width: 961px) {
    .l-footer__under {
        display: flex;
        align-items: flex-end;
        justify-content: space-between
    }
}

@media screen and (max-width: 960px) {
    .l-footer__under {
        display: block
    }
}

@media screen and (max-width: 960px) {
    .l-footer__under.l-container-wide {
        width: 100%;
        padding-right: 16px;
        padding-left: 16px
    }
}

.l-footer__underList {
    display: flex;
    margin-bottom: 0
}

@media screen and (max-width: 960px) {
    .l-footer__underList {
        display: block
    }
}

@media screen and (min-width: 961px) {
    .l-footer__underList+.l-footer__underList {
        margin-top: min(1.875vw, 24px)
    }
}

@media screen and (max-width: 960px) {
    .l-footer__underList+.l-footer__underList {
        margin-top: 24px
    }
}

.l-footer__underList li {
    font-weight: 300;
    font-size: min(0.9375vw, 12px);
    margin-bottom: 0;
    margin-right: 0
}

@media screen and (max-width: 960px) {
    .l-footer__underList li {
        font-size: 12px
    }
}

@media screen and (min-width: 961px) {
    .l-footer__underList li:not(:first-of-type) {
        margin-left: min(1.875vw, 24px)
    }
}

@media screen and (max-width: 960px) {
    .l-footer__underList li:not(:first-of-type) {
        margin-top: 24px
    }
}

@media screen and (max-width: 960px) {
    .l-footer__underList li a.-SPFontSizeS {
        font-size: 10px
    }
}

.l-footer__underCopy {
    font-size: min(0.9375vw, 12px);
    font-family: "Roboto"
}

@media screen and (max-width: 960px) {
    .l-footer__underCopy {
        font-size: 10px
    }
}

@media screen and (max-width: 960px) {
    *+.l-footer__underCopy {
        margin-top: 40px
    }
}

.c-modal {
    position: fixed;
    top: 0;
    left: 0;
    display: block;
    max-width: 100%;
    width: 100%;
    max-height: 100%;
    height: 100vh;
    background-color: rgba(0, 0, 0, 0);
    opacity: 0;
    pointer-events: none;
    visibility: hidden;
    border: 0;
    overflow: hidden;
    z-index: 998;
    transition: opacity .3s ease-out, visibility .3s ease-out, pointer-events .3s ease-out
}

.c-modal[open] {
    opacity: 1;
    pointer-events: all;
    visibility: visible
}

.c-modal::backdrop {
    background-color: rgba(0, 0, 0, 0)
}

.c-modal__inner {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 133, 115, .95);
    z-index: 1;
    padding: 0
}

.c-modal__body {
    position: absolute;
    left: 50%;
    display: flex;
    flex-direction: column;
    max-width: 1026px;
    width: 80%;
    background-color: #fff;
    z-index: 2
}

@media screen and (min-width: 961px) {
    .c-modal__body {
        top: calc(50% + min(6.5625vw, 84px)/2);
        max-height: calc(90vh - min(10vw, 128px));
        transform: translate(-50%, -50%);
        width: min(85.15625vw, 1090px);
        min-height: min(37.5vw, 480px);
        border-radius: min(1.25vw, 16px)
    }
}

@media screen and (max-width: 960px) {
    .c-modal__body {
        top: calc(60px + 40px);
        bottom: 40px;
        transform: translateX(-50%);
        width: 91%;
        max-width: 480px;
        border-radius: 16px
    }
}

.p-mobiteraModalBodyInn {
    overflow-y: auto;
    scrollbar-gutter: stable
}

@media screen and (min-width: 961px) {
    .p-mobiteraModalBodyInn {
        padding-top: min(4.6875vw, 60px);
        padding-bottom: min(3.75vw, 48px)
    }
}

@media screen and (max-width: 960px) {
    .p-mobiteraModalBodyInn {
        padding-top: 48px;
        padding-bottom: 32px
    }
}

.c-modal__body>.p-mobiteraModalBodyInn {
    flex: 1
}

@media screen and (min-width: 961px) {
    .p-mobiteraModalMovBlock {
        padding-right: min(3.125vw, 40px);
        padding-left: min(3.125vw, 40px)
    }
}

.p-mobiteraModalMovElm {
    position: relative;
    display: block;
    aspect-ratio: 16/9;
    margin-right: auto;
    margin-left: auto
}

@media screen and (min-width: 961px) {
    .p-mobiteraModalMovElm {
        width: 80%
    }
}

@media screen and (max-width: 960px) {
    .p-mobiteraModalMovElm {
        width: 100%
    }
}

.p-mobiteraModalMov {
    display: block
}

.p-mobiteraModalMovElm>.p-mobiteraModalMov {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover
}

.c-modal__closeBtn {
    display: block;
    cursor: pointer;
    padding: 0
}

@media screen and (min-width: 961px) {
    .c-modal__closeBtn {
        width: min(3.75vw, 48px);
        height: min(3.75vw, 48px)
    }
}

@media screen and (max-width: 960px) {
    .c-modal__closeBtn {
        width: 48px;
        height: 48px
    }
}

.c-modal__body .c-modal__closeBtn {
    position: absolute
}

@media screen and (min-width: 961px) {
    .c-modal__body .c-modal__closeBtn {
        top: min(-0.9375vw, -12px);
        right: min(-0.9375vw, -12px)
    }
}

@media screen and (max-width: 960px) {
    .c-modal__body .c-modal__closeBtn {
        top: -8px;
        right: -8px
    }
}

.c-modal__closeBtn:has(.c-modalElm__CloseBtnImg)::before,
.c-modal__closeBtn:has(.c-modalElm__CloseBtnImg)::after {
    content: none
}

.c-modalElm__CloseBtnImg {
    width: 100%;
    max-width: inherit;
    height: auto;
    image-rendering: -webkit-optimize-contrast
}

.c-RBModalCloseBtn {
    position: relative;
    display: flex;
    align-items: center;
    width: 100%;
    color: #fff;
    font-style: normal;
    font-weight: 400;
    background-color: #007760;
    margin-right: auto;
    margin-left: auto
}

@media screen and (min-width: 961px) {
    .c-RBModalCloseBtn {
        width: min(9.0625vw, 116px);
        height: min(3.75vw, 48px);
        font-size: min(1.25vw, 16px);
        padding: min(1.25vw, 16px);
        border-radius: min(2.5vw, 32px)
    }
}

@media screen and (max-width: 960px) {
    .c-RBModalCloseBtn {
        width: 116px;
        height: 48px;
        font-size: 16px;
        padding: 16px;
        border-radius: 32px
    }
}

@media screen and (min-width: 961px) {
    *+.c-RBModalCloseBtn {
        margin-top: min(3.75vw, 48px)
    }
}

@media screen and (max-width: 960px) {
    *+.c-RBModalCloseBtn {
        margin-top: 33px
    }
}

.c-RBModalCloseBtn::after {
    content: "";
    position: absolute;
    top: 50%;
    display: block;
    aspect-ratio: 1/1;
    background-image: url("/themes/custom/automotive/pages/mobitera/common/img/deco-close.svg");
    background-repeat: no-repeat;
    background-position: 0 0;
    background-size: 100% auto;
    transform: translateY(-50%)
}

@media screen and (min-width: 961px) {
    .c-RBModalCloseBtn::after {
        right: min(1.25vw, 16px);
        width: min(0.859375vw, 11px)
    }
}

@media screen and (max-width: 960px) {
    .c-RBModalCloseBtn::after {
        right: 16px;
        width: 11px
    }
}