@charset "UTF-8";
/* ---------------------------------------------
*   l-wrapper
--------------------------------------------- */
.l-wrapper {
    position: relative;
    overflow: clip;
}

/* ---------------------------------------------
*   l-container
--------------------------------------------- */
.l-container {
    padding-inline: calc(var(--contents-side-padding) * 1px);
    max-width: calc(var(--contents-width) * 1px + var(--contents-side-padding) * 2px);
    width: 100%;
    margin-inline: auto;
}
@media screen and (max-width: 735px) {
    .l-container {
        max-width: none;
    }
}
@media screen and (max-width: 735px) {
    .l-container--sp-none {
        padding-inline: 0;
    }
}

/* ---------------------------------------------
*   l-container-small
--------------------------------------------- */
.l-container-small {
    max-width: 848px;
    width: 100%;
    margin-inline: auto;
}

/* ---------------------------------------------
*   l-header
--------------------------------------------- */
.l-header {
    height: calc(var(--fixed-header-height) * 1px);
    display: grid;
    align-items: center;
    background-color: var(--color-green-1);
    position: fixed;
    width: 100%;
    top: 0;
    left: 0;
    z-index: 1000;
    transition: transform 0.3s;
    /*  l-header-menu
    --------------------------------------------- */
    /*  l-header-menu-button
    --------------------------------------------- */
}
.l-header__container {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 40px;
}
@media screen and (max-width: 735px) {
    .l-header__container {
        padding-inline: 16px;
    }
}
.l-header__logo-link {
    display: inline-block;
}
@media (hover: hover) and (pointer: fine) {
    .l-header__logo-link {
        transition: opacity var(--hover-duration);
    }
    .l-header__logo-link:hover {
        opacity: var(--hover-opacity-ratio);
    }
}
.l-header__logo {
    display: block;
    width: 214px;
}
@media screen and (max-width: 735px) {
    .l-header__logo {
        width: 223px;
    }
}
@media screen and (min-width: 736px) {
    .l-header__logo:lang(en) {
        width: 342px;
    }
}
.l-header__logo img {
    width: 100%;
}
.l-header__logo-link-text {
    display: block;
    font-size: calc(14 / var(--root-fz) * 100%);
    letter-spacing: 0.05em;
    text-align: center;
    margin-top: 6px;
}
@media screen and (max-width: 735px) {
    .l-header__logo-link-text {
        font-size: calc(11 / var(--root-fz) * 100%);
    }
}
@media screen and (min-width: 1201px) {
    .l-header .l-header-menu {
        display: block !important;
    }
}
@media screen and (max-width: 1200px) {
    .l-header .l-header-menu {
        position: fixed;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        width: 100%;
        opacity: 0;
        overscroll-behavior-y: none;
        overflow-y: hidden;
        visibility: hidden;
        scrollbar-width: none;
        background-color: rgba(0, 0, 0, 0.5);
        will-change: opacity, visibility;
        transform: translateZ(0);
        perspective: 1000px;
    }
    .l-header .l-header-menu::-webkit-scrollbar {
        display: none;
    }
    .l-header .l-header-menu.is-animating {
        transition: opacity 0.3s, visibility 0.3s;
    }
    .is-stuck .l-header-menu {
        top: 0;
    }
    .is-menu-opened .l-header .l-header-menu {
        opacity: 1;
        visibility: visible;
    }
}
@media screen and (min-width: 1201px) {
    .l-header .l-header-menu__container {
        display: flex;
        justify-content: flex-end;
        align-items: center;
        gap: 58px;
    }
}
@media screen and (max-width: 1200px) {
    .l-header .l-header-menu__container {
        overflow-y: auto;
        height: calc(100% + 1px);
        box-sizing: border-box;
        max-width: 265px;
        padding: 21px 28px 17px;
        background-color: var(--color-green-1);
        scrollbar-width: none;
        display: flex;
        flex-direction: column;
        justify-content: space-between;
        gap: 1rem;
        margin-left: auto;
        transition: transform 0.3s;
        transform: translateX(100%);
    }
    .l-header .l-header-menu__container::-webkit-scrollbar {
        display: none;
    }
    .is-menu-opened .l-header .l-header-menu__container {
        transform: translateX(0);
    }
}
.l-header .l-header-menu__copyright {
    font-size: calc(10 / var(--root-fz) * 100%);
    font-weight: 400;
}
.l-header .l-header-menu-button {
    position: relative;
    z-index: 1000;
    display: none;
    position: relative;
    touch-action: manipulation;
    cursor: pointer;
}
@media (hover: hover) and (pointer: fine) {
    .l-header .l-header-menu-button {
        transition: opacity var(--hover-duration);
    }
    .l-header .l-header-menu-button:hover {
        opacity: var(--hover-opacity-ratio);
    }
}
@media screen and (max-width: 1200px) {
    .l-header .l-header-menu-button {
        display: block;
    }
}
.l-header .l-header-menu-button__lines {
    position: relative;
    display: block;
    width: 39px;
    height: 31px;
}
.l-header .l-header-menu-button__line {
    position: absolute;
    left: 0;
    display: block;
    width: 100%;
    height: 0;
    padding-top: 3px;
    background-color: var(--color-base-1);
    transition: 0.3s;
}
.l-header .l-header-menu-button__line--top {
    top: 0;
}
.is-menu-opened .l-header .l-header-menu-button__line--top {
    top: 50%;
    transform: translateY(-50%) rotate(39deg);
}

.l-header .l-header-menu-button__line--center {
    top: 50%;
    margin-top: -1px;
}
.is-menu-opened .l-header .l-header-menu-button__line--center {
    background-color: rgba(0, 0, 0, 0);
}

.l-header .l-header-menu-button__line--bottom {
    bottom: 0;
}
.is-menu-opened .l-header .l-header-menu-button__line--bottom {
    bottom: 50%;
    transform: translateY(50%) rotate(-39deg);
}

/* ---------------------------------------------
*   l-header-nav
--------------------------------------------- */
.l-header-nav__list {
    display: flex;
    justify-content: flex-end;
    gap: 48px;
}
@media screen and (max-width: 1200px) {
    .l-header-nav__list {
        flex-direction: column;
        gap: 25px;
    }
}
.l-header-nav__item {
    white-space: nowrap;
}
.l-header-nav__link {
    display: inline-block;
}
@media screen and (min-width: 1201px) {
    .l-header-nav__link {
        padding-bottom: 3px;
    }
}
@media screen and (min-width: 1201px) and (hover: hover) and (pointer: fine) {
    .l-header-nav__link {
        background-image: linear-gradient(var(--color-base-1), var(--color-base-1));
        background-position: 0 100%;
        background-size: 0 3px;
        background-repeat: no-repeat;
        transition: background-size 0.3s;
    }
}
@media screen and (min-width: 1201px) and (hover: hover) and (pointer: fine) and (max-width: 735px) {
    .l-header-nav__link {
        background-size: 0 2px;
    }
}
@media screen and (min-width: 1201px) and (hover: hover) and (pointer: fine) {
    .l-header-nav__link:hover {
        background-size: 100% 3px;
    }
}
@media screen and (min-width: 1201px) and (hover: hover) and (pointer: fine) and (max-width: 735px) {
    .l-header-nav__link:hover {
        background-size: 100% 2px;
    }
}
@media screen and (min-width: 1201px) and (max-width: 735px) {
    .l-header-nav__link {
        padding-bottom: 2px;
    }
}
@media screen and (max-width: 1200px) and (hover: hover) and (pointer: fine) {
    .l-header-nav__link {
        transition: opacity var(--hover-duration);
    }
    .l-header-nav__link:hover {
        opacity: var(--hover-opacity-ratio);
    }
}
@media screen and (max-width: 1200px) {
    .l-header-nav__jp {
        display: block;
        font-size: calc(14 / var(--root-fz) * 100%);
        letter-spacing: 0.03em;
    }
}
.l-header-nav__en {
    display: block;
    font-size: calc(16 / var(--root-fz) * 100%);
    letter-spacing: 0.08em;
}
@media screen and (max-width: 1200px) {
    .l-header-nav__en {
        font-size: calc(28 / var(--root-fz) * 100%);
        margin-top: -1px;
    }
}

/* ---------------------------------------------
*   l-header-lang
--------------------------------------------- */
.l-header-lang__list {
    display: flex;
    justify-content: flex-end;
}
@media screen and (max-width: 1200px) {
    .l-header-lang__list {
        justify-content: flex-start;
    }
}
.l-header-lang__item:first-of-type {
    margin-right: 14px;
    position: relative;
}
@media screen and (max-width: 1200px) {
    .l-header-lang__item:first-of-type {
        margin-right: 10px;
    }
}
.l-header-lang__item:first-of-type::after {
    content: "";
    position: absolute;
    top: 50%;
    right: -14px;
    width: 1px;
    height: 13px;
    transform: translateY(-50%);
    background-color: var(--color-base-1);
}
@media screen and (max-width: 1200px) {
    .l-header-lang__item:first-of-type::after {
        right: -13px;
    }
}
.l-header-lang__item:not(:first-of-type) {
    margin-left: 11px;
}
.l-header-lang__link {
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: calc(14 / var(--root-fz) * 100%);
    letter-spacing: 0.02em;
    aspect-ratio: 1/1;
    border-radius: 2px;
    width: 26px;
    background-color: transparent;
    color: var(--color-base-1);
    cursor: pointer;
}
@media (hover: hover) and (pointer: fine) {
    .l-header-lang__link {
        transition: color 0.3s, background-color 0.3s;
    }
    .l-header-lang__link:hover {
        color: var(--color-green-1);
        background-color: var(--color-base-1);
    }
}
@media screen and (max-width: 1200px) {
    .l-header-lang__link {
        width: 28px;
    }
}
.l-header-lang__link.is-page-current {
    color: var(--color-green-1);
    background-color: var(--color-base-1);
}

@keyframes fadeIn {
    from {
        opacity: 0;
    }
    to {
        opacity: 1;
    }
}
/* ---------------------------------------------
*   l-global-nav
--------------------------------------------- */
/* ---------------------------------------------
*   l-contents
--------------------------------------------- */
.l-contents {
    padding-top: calc(var(--fixed-header-height) * 1px);
}

/* ---------------------------------------------
*   l-breadcrumb
--------------------------------------------- */
@property --footer-sns-ring-angle {
    syntax: "<angle>";
    inherits: false;
    initial-value: 0deg;
}
/* ---------------------------------------------
*   l-footer
--------------------------------------------- */
.l-footer {
    padding-bottom: calc(245 / var(--design-width) * 100vw);
    background-image: url(../img/common/illust_footer.png);
    background-size: 100vw calc(245 / var(--design-width) * 100vw);
    background-position: center bottom;
    background-repeat: no-repeat;
}
@media screen and (max-width: 735px) {
    .l-footer {
        padding-bottom: calc(128 / var(--design-width) * 100vw);
        background-image: url(../img/common/sp/illust_footer.png);
        background-size: 100vw calc(128 / var(--design-width) * 100vw);
    }
}
.l-footer__container {
    padding-block: 141px 86px;
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 40px;
}
@media screen and (max-width: 1200px) {
    .l-footer__container {
        padding-block: 82px 18px;
        display: block;
    }
}
@media (hover: hover) and (pointer: fine) {
    .l-footer__logo {
        transition: opacity var(--hover-duration);
    }
    .l-footer__logo:hover {
        opacity: var(--hover-opacity-ratio);
    }
}
.l-footer__logo img {
    display: block;
    width: 516px;
}
@media screen and (max-width: 1200px) {
    .l-footer__logo img {
        width: 100%;
        max-width: 326px;
        margin-inline: auto;
    }
}
.l-footer__logo-text {
    display: block;
    font-size: calc(22 / var(--root-fz) * 100%);
    letter-spacing: 0.03em;
    margin-top: 13px;
    text-align: center;
}
@media screen and (max-width: 1200px) {
    .l-footer__logo-text {
        font-size: calc(16 / var(--root-fz) * 100%);
        letter-spacing: 0.15em;
        margin-top: 12px;
    }
}
.l-footer__ur {
    position: relative;
    left: -9px;
    display: block;
    width: 235px;
    margin-top: 25px;
}
@media (hover: hover) and (pointer: fine) {
    .l-footer__ur {
        transition: opacity var(--hover-duration);
    }
    .l-footer__ur:hover {
        opacity: var(--hover-opacity-ratio);
    }
}
@media screen and (max-width: 1200px) {
    .l-footer__ur {
        left: -6px;
        width: 167px;
        margin-top: 26px;
    }
}
@media screen and (min-width: 1201px) {
    .l-footer__navs {
        max-width: 530px;
        display: grid;
        grid-template: auto 1fr/1fr 311px;
        grid-template-areas: "b a" "b c";
        align-items: end;
        gap: 0 min(140 / var(--design-width) * 100vw, 140px);
        margin-top: -2px;
    }
}
@media screen and (max-width: 1200px) {
    .l-footer__navs {
        margin-top: 42px;
    }
}
@media screen and (min-width: 1201px) {
    .l-footer__copyright {
        grid-area: c;
    }
}
@media screen and (max-width: 1200px) {
    .l-footer__copyright {
        display: flex;
        justify-content: space-between;
        gap: 1rem;
        flex-wrap: wrap;
        margin-top: 46px;
    }
}
.l-footer__private {
    font-size: calc(16 / var(--root-fz) * 100%);
    letter-spacing: 0.08em;
    padding-bottom: 3px;
}
@media (hover: hover) and (pointer: fine) {
    .l-footer__private {
        background-image: linear-gradient(var(--color-base-1), var(--color-base-1));
        background-position: 0 100%;
        background-size: 0 3px;
        background-repeat: no-repeat;
        transition: background-size 0.3s;
    }
}
@media screen and (hover: hover) and (pointer: fine) and (max-width: 735px) {
    .l-footer__private {
        background-size: 0 2px;
    }
}
@media (hover: hover) and (pointer: fine) {
    .l-footer__private:hover {
        background-size: 100% 3px;
    }
}
@media screen and (hover: hover) and (pointer: fine) and (max-width: 735px) {
    .l-footer__private:hover {
        background-size: 100% 2px;
    }
}
@media screen and (max-width: 735px) {
    .l-footer__private {
        padding-bottom: 2px;
    }
}
@media screen and (max-width: 1200px) {
    .l-footer__private {
        font-size: calc(14 / var(--root-fz) * 100%);
    }
}
.l-footer__copyright-txt {
    display: block;
    font-size: calc(12 / var(--root-fz) * 100%);
    letter-spacing: 0.02em;
    margin-top: 12px;
}
@media screen and (max-width: 1200px) {
    .l-footer__copyright-txt {
        font-size: calc(10 / var(--root-fz) * 100%);
        line-height: 1.7;
        margin-top: 2px;
    }
}

/* ---------------------------------------------
*   l-footer-nav
--------------------------------------------- */
@media screen and (min-width: 1201px) {
    .l-footer-nav {
        grid-area: b;
    }
}
@media screen and (max-width: 1200px) {
    .l-footer-nav__list {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        gap: 28px 17px;
    }
}
@media screen and (min-width: 1201px) {
    .l-footer-nav__item + .l-footer-nav__item {
        margin-top: 32px;
    }
}
.l-footer-nav__link {
    font-size: calc(16 / var(--root-fz) * 100%);
    letter-spacing: 0.08em;
    padding-bottom: 3px;
}
@media (hover: hover) and (pointer: fine) {
    .l-footer-nav__link {
        background-image: linear-gradient(var(--color-base-1), var(--color-base-1));
        background-position: 0 100%;
        background-size: 0 3px;
        background-repeat: no-repeat;
        transition: background-size 0.3s;
    }
}
@media screen and (hover: hover) and (pointer: fine) and (max-width: 735px) {
    .l-footer-nav__link {
        background-size: 0 2px;
    }
}
@media (hover: hover) and (pointer: fine) {
    .l-footer-nav__link:hover {
        background-size: 100% 3px;
    }
}
@media screen and (hover: hover) and (pointer: fine) and (max-width: 735px) {
    .l-footer-nav__link:hover {
        background-size: 100% 2px;
    }
}
@media screen and (max-width: 735px) {
    .l-footer-nav__link {
        padding-bottom: 2px;
    }
}

/* ---------------------------------------------
*   l-footer-sns
--------------------------------------------- */
@media screen and (min-width: 1201px) {
    .l-footer-sns {
        grid-area: a;
    }
}
@media screen and (max-width: 1200px) {
    .l-footer-sns {
        margin-top: 42px;
    }
}
.l-footer-sns__ttl {
    font-size: calc(16 / var(--root-fz) * 100%);
    letter-spacing: 0.08em;
}
@media screen and (max-width: 1200px) {
    .l-footer-sns__ttl {
        font-size: calc(14 / var(--root-fz) * 100%);
    }
}
.l-footer-sns__list {
    display: flex;
    gap: 20px;
    margin-top: 11px;
}
@media screen and (max-width: 1200px) {
    .l-footer-sns__list {
        gap: 10px;
        margin-top: 11px;
    }
}
.l-footer-sns__item {
    flex-shrink: 0;
}
.l-footer-sns__link {
    --footer-sns-ring-angle: 0deg;
    --footer-sns-bg: var(--color-white-1);
    --footer-sns-border-color: var(--color-base-1);
    display: flex;
    justify-content: center;
    align-items: center;
    width: 40px;
    aspect-ratio: 1/1;
    border-radius: 50%;
    border: 1px solid transparent;
    background: linear-gradient(var(--footer-sns-bg), var(--footer-sns-bg)) padding-box, var(--footer-sns-border-color) border-box;
    transition: --footer-sns-ring-angle 0.6s;
}
@media (hover: hover) and (pointer: fine) {
    .l-footer-sns__link:hover {
        --footer-sns-ring-angle: 360deg;
        background: linear-gradient(var(--footer-sns-bg), var(--footer-sns-bg)) padding-box, conic-gradient(from 0deg, var(--footer-sns-border-color) 0deg var(--footer-sns-ring-angle), transparent var(--footer-sns-ring-angle) 360deg) border-box;
    }
}
@media screen and (max-width: 1200px) {
    .l-footer-sns__link {
        width: 31px;
    }
}
.l-footer-sns__link--Instagram img {
    width: 21px;
}
@media screen and (max-width: 1200px) {
    .l-footer-sns__link--Instagram img {
        width: 16px;
    }
}
.l-footer-sns__link--X img {
    width: 19px;
}
@media screen and (max-width: 1200px) {
    .l-footer-sns__link--X img {
        width: 17px;
    }
}
.l-footer-sns__link--YouTube img {
    width: 21px;
}
@media screen and (max-width: 1200px) {
    .l-footer-sns__link--YouTube img {
        width: 15px;
    }
}
.l-footer-sns__link--note img {
    width: 18px;
}
@media screen and (max-width: 1200px) {
    .l-footer-sns__link--note img {
        width: 14px;
    }
}

/*  .l-footer-pagetop
--------------------------------------------- */
.l-footer-pagetop {
    position: fixed;
    bottom: 24px;
    right: 24px;
    z-index: 999;
}
@media screen and (max-width: 735px) {
    .l-footer-pagetop {
        bottom: 12px;
        right: 12px;
    }
}
.l-footer-pagetop__link {
    display: block;
    width: 72px;
}
@media screen and (max-width: 735px) {
    .l-footer-pagetop__link {
        width: 56px;
    }
}

/* ---------------------------------------------
*   c-block-rope
--------------------------------------------- */
.c-block-rope {
    position: absolute;
    left: 0;
    width: 100%;
    pointer-events: none;
}
.c-block-rope svg {
    width: 100%;
    height: auto;
    transform: translateZ(0);
}
.c-block-rope--news-rope {
    top: 66px;
}
@media screen and (max-width: 735px) {
    .c-block-rope--news-rope {
        top: 58px;
    }
}
.c-block-rope--about-rope-1 {
    top: 22px;
}
@media screen and (max-width: 735px) {
    .c-block-rope--about-rope-1 {
        top: 34px;
    }
}
.c-block-rope--about-rope-2 {
    z-index: -1;
    top: -246px;
}
@media screen and (max-width: 735px) {
    .c-block-rope--about-rope-2 {
        top: -81px;
    }
}
.c-block-rope--about-rope-3 {
    bottom: 182px;
}
@media screen and (max-width: 735px) {
    .c-block-rope--about-rope-3 {
        bottom: 45px;
    }
}
.c-block-rope--report-rope-1 {
    top: 22px;
}
@media screen and (max-width: 735px) {
    .c-block-rope--report-rope-1 {
        top: 122px;
    }
}
.c-block-rope--report-rope-2 {
    top: 53.8%;
    transform: translateY(-50%);
}
@media screen and (max-width: 735px) {
    .c-block-rope--report-rope-2 {
        top: 52%;
        transform: none;
    }
}
.c-block-rope--report-rope-2-2 {
    top: 40.1%;
}
.c-block-rope--report-rope-3 {
    bottom: 125px;
}
@media screen and (max-width: 735px) {
    .c-block-rope--report-rope-3 {
        top: 57.3%;
        bottom: auto;
    }
}
.c-block-rope--report-rope-3-2 {
    top: 77.7%;
}
.c-block-rope--access-rope-1 {
    top: 175px;
}
@media screen and (max-width: 735px) {
    .c-block-rope--access-rope-1 {
        top: 34px;
    }
}
.c-block-rope--access-rope-2 {
    bottom: 51px;
}
@media screen and (max-width: 735px) {
    .c-block-rope--access-rope-2 {
        top: 51.3%;
        bottom: auto;
    }
}

/* ---------------------------------------------
*   c-block-opening
--------------------------------------------- */
.c-block-opening {
    position: fixed;
    z-index: 10000;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100dvh;
    pointer-events: none;
    background-color: var(--color-green-1);
    display: flex;
    justify-content: center;
    align-items: center;
    overscroll-behavior-y: none;
    overflow-y: hidden;
    scrollbar-width: none;
}
.is-loaded .c-block-opening {
    animation: fadeOut 2s ease-in-out forwards;
}

.c-block-opening__inner {
    padding-inline: calc(var(--contents-side-padding) * 1px);
    flex-direction: column;
    max-width: calc(var(--contents-side-padding) * 2px + 981px);
    margin-inline: auto;
}
@media screen and (max-width: 735px) {
    .c-block-opening__inner {
        padding-inline: 24px;
    }
}
.c-block-opening__txt {
    display: block;
    width: 100%;
}
.c-block-opening__txt img {
    width: 100%;
}

@keyframes fadeOut {
    0% {
        opacity: 1;
        visibility: visible;
    }
    50% {
        opacity: 1;
        visibility: visible;
    }
    100% {
        opacity: 0;
        visibility: hidden;
        display: none;
    }
}
/* ---------------------------------------------
*   c-box-1
--------------------------------------------- */
.c-box-1 {
    display: grid;
    grid-template-columns: calc(300 / 741 * 100%) 1fr;
    align-items: center;
    gap: 32px;
}
@media screen and (max-width: 735px) {
    .c-box-1 {
        grid-template-columns: repeat(1, 1fr);
        gap: 23px;
    }
}

/* ---------------------------------------------
*   c-btn
--------------------------------------------- */
/* ---------------------------------------------
*   c-card-1
--------------------------------------------- */
.c-card-1 {
    position: relative;
    padding: 50px calc(45 / 630 * 100%) 48px;
    border-radius: 23px;
    border: 3px solid var(--color-base-1);
    background-color: var(--color-white-1);
    height: 100%;
}
@media screen and (min-width: 736px) {
    .c-card-1 {
        min-height: 732px;
    }
}
@media screen and (max-width: 735px) {
    .c-card-1 {
        padding: 22px;
        border-radius: 16px;
        border-width: 2px;
        gap: 8px;
    }
}
.c-card-1 img {
    aspect-ratio: 533/326;
    width: 100%;
    -o-object-fit: cover;
       object-fit: cover;
    border-radius: 10px;
    overflow: hidden;
}
@media screen and (max-width: 735px) {
    .c-card-1 img {
        aspect-ratio: 279/186;
        border-radius: 7px;
    }
}
.c-card-1__num {
    padding: 2px 10px;
    display: block;
    font-size: calc(14 / var(--root-fz) * 100%);
    line-height: 1;
    border-radius: 4px;
    border: 1px solid var(--color-base-1);
}
@media screen and (max-width: 735px) {
    .c-card-1__num {
        padding: 2px 7px;
        font-size: calc(10 / var(--root-fz) * 100%);
    }
}
.c-card-1__txt {
    color: var(--color-black-1);
    margin-top: 16px;
}
@media screen and (max-width: 735px) {
    .c-card-1__txt {
        margin-top: 16px;
    }
}
.c-card-1__top {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    flex-wrap: wrap;
    gap: 16px;
    margin-block: 32px 11px;
}
@media screen and (max-width: 735px) {
    .c-card-1__top {
        gap: 8px;
        margin-block: 28px 12px;
    }
}
.c-card-1__date {
    font-size: calc(14 / var(--root-fz) * 100%);
    line-height: 1;
    white-space: nowrap;
}
@media screen and (max-width: 735px) {
    .c-card-1__date {
        font-size: calc(12 / var(--root-fz) * 100%);
    }
}

/* ---------------------------------------------
*   c-cassette-1
--------------------------------------------- */
.c-cassette-1 {
    position: relative;
    padding-inline: calc(var(--contents-side-padding) * 1px);
}
@media screen and (max-width: 735px) {
    .c-cassette-1:has(.c-txt-1--map) .c-cassette-1__inner {
        padding: 23px 22px 32px;
    }
    .c-cassette-1:has(.c-txt-1--map) .c-cassette-1__body {
        margin-top: 29px;
    }
    .c-cassette-1:has(.c-txt-1--q) .c-cassette-1__inner {
        padding: 27px 22px 39px;
    }
    .c-cassette-1:has(.c-txt-1--q) .c-cassette-1__body {
        margin-top: 29px;
    }
}
.c-cassette-1__inner {
    padding: 66px calc(45 / 848 * 100%) 78px;
    border-radius: 16px;
    border: 3px solid var(--color-base-1);
    background-color: var(--color-white-1);
}
@media screen and (max-width: 735px) {
    .c-cassette-1__inner {
        padding: 32px 24px 36px;
        border-width: 2px;
    }
}
.c-cassette-1__body {
    margin-top: 36px;
}
@media screen and (max-width: 735px) {
    .c-cassette-1__body {
        margin-top: 24px;
    }
}
.c-cassette-1 + .c-cassette-1 {
    margin-top: 69px;
}
@media screen and (max-width: 735px) {
    .c-cassette-1 + .c-cassette-1 {
        margin-top: 34px;
    }
}
.c-cassette-1--23 .c-cassette-1__inner {
    padding: 49px calc(29 / 848 * 100%) 45px;
    border-radius: 23px;
}
@media screen and (max-width: 735px) {
    .c-cassette-1--23 .c-cassette-1__inner {
        padding: 31px 21px 42px;
        border-radius: 16px;
    }
}
.c-cassette-1--23 .c-cassette-1__body {
    margin-top: 27px;
}
@media screen and (max-width: 735px) {
    .c-cassette-1--23 .c-cassette-1__body {
        margin-top: 24px;
    }
}
.c-cassette-1--map .c-cassette-1__inner {
    padding: 49px calc(27 / 848 * 100%) 30px;
    border-radius: 23px;
}
@media screen and (max-width: 735px) {
    .c-cassette-1--map .c-cassette-1__inner {
        padding: 24px 20px 23px;
        border-radius: 16px;
    }
}
.c-cassette-1--map .c-cassette-1__body {
    margin-top: 24px;
}
@media screen and (max-width: 735px) {
    .c-cassette-1--map .c-cassette-1__body {
        margin-top: 21px;
    }
}
@media screen and (max-width: 735px) {
    .c-cassette-1__illust {
        position: absolute;
        bottom: 85px;
        left: -3px;
        width: 58px;
    }
}
@media screen and (max-width: 735px) {
    .c-cassette-1__illust--2 {
        position: absolute;
        bottom: -95px;
        left: auto;
        right: 0;
        width: 117px;
    }
}

/* ---------------------------------------------
*   c-column-1
--------------------------------------------- */
.c-column-1 {
    display: flex;
    justify-content: center;
    align-items: stretch;
    gap: 20px;
}
@media screen and (max-width: 735px) {
    .c-column-1 {
        gap: 44px;
        width: 100%;
    }
}
@media screen and (min-width: 736px) {
    .c-column-1__item {
        max-width: 628px;
    }
}
@media screen and (max-width: 735px) {
    .c-column-1__item {
        width: 100%;
    }
}

/* ---------------------------------------------
*   c-figure
--------------------------------------------- */
/* ---------------------------------------------
*   c-form
--------------------------------------------- */
/* ---------------------------------------------
*   c-img-1
--------------------------------------------- */
.c-img-1 {
    display: block;
    width: 100%;
}
.c-img-1 img {
    width: 100%;
}
.c-img-1--green {
    border-radius: 10px;
    border: 3px solid var(--color-green-1);
    overflow: hidden;
}

.c-img-blob {
    position: absolute;
    transition: opacity 0.6s ease, transform 0.6s ease;
    pointer-events: none;
    opacity: 0;
    transform: translateY(calc(50 / var(--design-width) * 100vw));
}
.c-img-blob.is-enter {
    animation: slide-up 0.8s forwards;
}
.c-img-blob.is-leave {
    animation: slide-down 0.6s forwards;
}
.c-img-blob--ttb.is-enter {
    animation: slide-up-ttb 0.8s forwards;
}
.c-img-blob--ttb.is-leave {
    animation: slide-down-ttb 0.6s forwards;
}
.c-img-blob--news-rope {
    top: calc(-26 / var(--design-width) * 100vw);
    right: calc(5 / var(--design-width) * 100vw);
    width: calc(213 / var(--design-width) * 100vw);
}
@media screen and (max-width: 735px) {
    .c-img-blob--news-rope {
        top: calc(-16 / var(--design-width) * 100vw);
        right: 0;
        width: calc(110 / var(--design-width) * 100vw);
    }
}
.c-img-blob--about-rope-1 {
    top: calc(46 / var(--design-width) * 100vw);
    left: calc(90 / var(--design-width) * 100vw);
    width: calc(221 / var(--design-width) * 100vw);
}
@media screen and (max-width: 735px) {
    .c-img-blob--about-rope-1 {
        top: calc(-3 / var(--design-width) * 100vw);
        left: calc(-1 / var(--design-width) * 100vw);
        width: calc(95 / var(--design-width) * 100vw);
    }
}
.c-img-blob--about-rope-2 {
    top: calc(-40 / var(--design-width) * 100vw);
    right: calc(18 / var(--design-width) * 100vw);
    width: calc(219 / var(--design-width) * 100vw);
}
.c-img-blob--about-rope-3 {
    top: calc(-13 / var(--design-width) * 100vw);
    left: calc(65 / var(--design-width) * 100vw);
    width: calc(188 / var(--design-width) * 100vw);
}
.c-img-blob--report-rope-1 {
    top: calc(45 / var(--design-width) * 100vw);
    right: calc(144 / var(--design-width) * 100vw);
    width: calc(284 / var(--design-width) * 100vw);
}
@media screen and (max-width: 735px) {
    .c-img-blob--report-rope-1 {
        top: calc(-48 / var(--design-width) * 100vw);
        right: 0;
        width: calc(93 / var(--design-width) * 100vw);
    }
}
.c-img-blob--report-rope-3 {
    top: calc(191 / var(--design-width) * 100vw);
    left: calc(50 / var(--design-width) * 100vw);
    width: calc(299 / var(--design-width) * 100vw);
}
.c-img-blob--report-rope-3-2 {
    top: calc(129 / var(--design-width) * 100vw);
    right: calc(102 / var(--design-width) * 100vw);
    width: calc(199 / var(--design-width) * 100vw);
}
.c-img-blob--access-rope-1 {
    top: calc(31 / var(--design-width) * 100vw);
    left: calc(62 / var(--design-width) * 100vw);
    width: calc(196 / var(--design-width) * 100vw);
}
@media screen and (max-width: 735px) {
    .c-img-blob--access-rope-1 {
        top: calc(-33 / var(--design-width) * 100vw);
        left: 0;
        width: calc(98 / var(--design-width) * 100vw);
    }
}
.c-img-blob--access-rope-2 {
    top: calc(49 / var(--design-width) * 100vw);
    right: calc(71 / var(--design-width) * 100vw);
    width: calc(149 / var(--design-width) * 100vw);
}
.c-img-blob--access-rope-2-2 {
    bottom: calc(181 / var(--design-width) * 100vw);
    left: calc(65 / var(--design-width) * 100vw);
    width: calc(153 / var(--design-width) * 100vw);
}
.c-img-blob img {
    width: 100%;
}

@keyframes slide-up {
    0% {
        opacity: 0;
        transform: translateY(calc(50 / var(--design-width) * 100vw));
    }
    70% {
        opacity: 1;
        transform: translateY(calc(-5 / var(--design-width) * 100vw));
    }
    100% {
        opacity: 1;
        transform: translateY(0);
    }
}
@keyframes slide-down {
    0% {
        opacity: 1;
        transform: translateY(0);
    }
    30% {
        opacity: 1;
        transform: translateY(calc(-5 / var(--design-width) * 100vw));
    }
    100% {
        opacity: 0;
        transform: translateY(calc(50 / var(--design-width) * 100vw));
    }
}
@keyframes slide-up-ttb {
    0% {
        opacity: 0;
        transform: translateY(calc(-50 / var(--design-width) * 100vw));
    }
    70% {
        opacity: 1;
        transform: translateY(calc(5 / var(--design-width) * 100vw));
    }
    100% {
        opacity: 1;
        transform: translateY(0);
    }
}
@keyframes slide-down-ttb {
    0% {
        opacity: 1;
        transform: translateY(0);
    }
    30% {
        opacity: 1;
        transform: translateY(calc(5 / var(--design-width) * 100vw));
    }
    100% {
        opacity: 0;
        transform: translateY(calc(-50 / var(--design-width) * 100vw));
    }
}
/* ---------------------------------------------
*   c-kv
--------------------------------------------- */
.c-kv {
    position: relative;
    height: calc(100dvh - var(--fixed-header-height) * 1px);
}
@media screen and (max-width: 735px) {
    .c-kv {
        height: auto;
        aspect-ratio: 375/488;
    }
}
.c-kv__img {
    display: block;
    width: 100%;
    height: 100%;
}
.c-kv__img img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
    -o-object-position: top center;
       object-position: top center;
}
@media screen and (max-width: 735px) {
    .c-kv .l-container {
        padding-inline: 10px;
    }
}
.c-kv__illust {
    position: absolute;
    bottom: 88.1%;
    left: 49.9%;
    transform: translateX(-50%);
    width: calc(1436 / var(--design-width) * 100%);
}
@media screen and (max-width: 735px) {
    .c-kv__illust {
        bottom: 71.5%;
        left: -31.8%;
        width: calc(502 / var(--design-width) * 100vw);
        transform: none;
    }
}
.c-kv__illust img {
    width: 100%;
}
.c-kv__mini-illust {
    position: absolute;
    display: block;
}
.c-kv__mini-illust--tyo {
    top: -47.4%;
    left: 23.1%;
    width: calc(49 / var(--design-width) * 100%);
    opacity: 0;
    transition: opacity 0.5s;
}
@media screen and (max-width: 735px) {
    .c-kv__mini-illust--tyo {
        top: -60.4%;
        left: 29.8%;
        width: calc(32 / var(--design-width) * 100vw);
    }
}
.is-loaded .c-kv__mini-illust--tyo {
    animation: floating-y 1.8s ease-in-out infinite alternate-reverse;
    animation-delay: 2.8s;
    opacity: 1;
    transition-delay: 3.3s;
}

.c-kv__mini-illust--bird_ltr {
    z-index: 2;
    top: 3.1%;
    left: 4.1%;
    width: calc(45 / var(--design-width) * 100%);
    opacity: 0;
    transition: opacity 0.5s;
}
.is-loaded .c-kv__mini-illust--bird_ltr {
    animation: floating-y 1.8s ease-in-out infinite alternate-reverse;
    animation-delay: 3.2s;
    opacity: 1;
    transition-delay: 3.3s;
}

.c-kv__mini-illust--bird_rtl {
    z-index: 2;
    top: 4.2%;
    left: 7.9%;
    width: calc(43 / var(--design-width) * 100%);
    opacity: 0;
    transition: opacity 0.5s;
}
.is-loaded .c-kv__mini-illust--bird_rtl {
    animation: floating-y 1.8s ease-in-out infinite alternate-reverse;
    animation-delay: 2.5s;
    opacity: 1;
    transition-delay: 3.3s;
}

.c-kv__mini-illust--cloud {
    top: -65.4%;
    left: 40.5%;
    width: calc(150 / var(--design-width) * 100%);
    opacity: 0;
    transition: opacity 0.5s;
}
@media screen and (max-width: 735px) {
    .c-kv__mini-illust--cloud {
        width: calc(98 / var(--design-width) * 100vw);
    }
}
.is-loaded .c-kv__mini-illust--cloud {
    animation: floating-x 1.8s ease-in-out infinite alternate-reverse;
    animation-delay: 2.8s;
    opacity: 1;
    transition-delay: 3.3s;
}
@media screen and (max-width: 735px) {
    .is-loaded .c-kv__mini-illust--cloud {
        animation: floating-x-sp 1.8s ease-in-out infinite alternate-reverse;
    }
}

@media screen and (max-width: 735px) {
    .c-kv__mini-illust--cloud {
        top: -82.7%;
        left: auto;
        right: 0.4%;
    }
}
.c-kv__mini-illust--people {
    z-index: -1;
    top: -37.8%;
    left: 34.2%;
    width: calc(257 / var(--design-width) * 100%);
}
@media screen and (max-width: 735px) {
    .c-kv__mini-illust--people {
        top: -51.2%;
        left: auto;
        right: -2.4%;
        width: calc(168 / var(--design-width) * 100vw);
    }
}
.c-kv__mini-illust--taiyo {
    top: -59.5%;
    right: 21%;
    width: calc(52 / var(--design-width) * 100%);
    opacity: 0;
    transition: opacity 0.5s;
    transform: rotate(30deg);
}
.is-loaded .c-kv__mini-illust--taiyo {
    animation: anim_s 5s ease-in-out infinite alternate-reverse;
    animation-delay: 2.8s;
    opacity: 1;
    transition-delay: 3.3s;
}

.c-kv__mini-illust img {
    width: 100%;
}
.c-kv__inner {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    transition: opacity 0.3s;
    opacity: 0;
}
.is-loaded .c-kv__inner {
    animation: fadeIn 0.5s ease-in-out forwards;
    animation-delay: 2.5s;
}

.c-kv__inner::before, .c-kv__inner::after {
    content: "";
    position: absolute;
    z-index: 1;
    top: 0;
    height: calc(20 / var(--design-width) * 100vw);
    background-color: var(--color-green-1);
}
.c-kv__inner::before {
    width: calc(190 / var(--design-width) * 100vw);
    left: 0;
}
@media screen and (max-width: 735px) {
    .c-kv__inner::before {
        width: calc(15 / var(--design-width) * 100vw);
    }
}
.c-kv__inner::after {
    width: calc(320 / var(--design-width) * 100vw);
    left: calc(508 / var(--design-width) * 100vw);
}
@media screen and (max-width: 735px) {
    .c-kv__inner::after {
        left: auto;
        right: 0;
        width: calc(155 / var(--design-width) * 100vw);
    }
}
.c-kv__container {
    width: calc(var(--contents-width) / var(--design-width) * 100vw);
    margin-inline: auto;
}
@media screen and (max-width: 735px) {
    .c-kv__container {
        padding-inline: calc(13 / var(--design-width) * 100vw);
        width: 100%;
    }
}
.c-kv__bg {
    padding-block: calc(55 / var(--design-width) * 100vw) calc(28 / var(--design-width) * 100vw);
    background-color: var(--color-green-1);
}
@media screen and (max-width: 735px) {
    .c-kv__bg {
        padding-block: calc(28 / var(--design-width) * 100vw) calc(18 / var(--design-width) * 100vw);
    }
    .c-kv__bg:lang(en) {
        padding-block: calc(24 / var(--design-width) * 100vw) calc(13 / var(--design-width) * 100vw);
    }
}
.c-kv__logo {
    display: block;
    width: 100%;
    transition: opacity 0.3s;
    opacity: 0;
}
.is-loaded .c-kv__logo {
    animation: fadeIn 0.5s ease-in-out forwards;
    animation-delay: 3s;
}

.c-kv__logo img {
    width: 100%;
}
.c-kv__txts {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 1rem;
    margin-top: calc(28 / var(--design-width) * 100vw);
    transition: opacity 0.3s;
    opacity: 0;
}
.is-loaded .c-kv__txts {
    animation: fadeIn 0.5s ease-in-out forwards;
    animation-delay: 3s;
}

@media screen and (max-width: 735px) {
    .c-kv__txts {
        display: block;
        margin-top: calc(16 / var(--design-width) * 100vw);
    }
    .c-kv__txts:lang(en) {
        margin-top: calc(10 / var(--design-width) * 100vw);
    }
}
.c-kv__txt {
    display: flex;
    width: calc(918 / var(--design-width) * 100vw);
}
@media screen and (max-width: 735px) {
    .c-kv__txt {
        width: calc(355 / var(--design-width) * 100vw);
    }
}
.c-kv__txt:lang(en) {
    width: calc(985 / var(--design-width) * 100vw);
}
@media screen and (max-width: 735px) {
    .c-kv__txt:lang(en) {
        width: calc(247 / var(--design-width) * 100vw);
    }
}
.c-kv__txt img {
    width: 100%;
}
.c-kv__times {
    position: relative;
    right: calc(-4 / var(--design-width) * 100vw);
    display: flex;
    flex-shrink: 0;
    width: calc(343 / var(--design-width) * 100vw);
}
@media screen and (max-width: 735px) {
    .c-kv__times {
        right: calc(1 / var(--design-width) * 100vw);
        width: calc(124 / var(--design-width) * 100vw);
        margin-top: calc(10 / var(--design-width) * 100vw);
    }
}
.c-kv__times img {
    width: 100%;
}
@media screen and (min-width: 736px) {
    .c-kv__times:lang(en) {
        width: calc(257 / var(--design-width) * 100vw);
    }
}
@media screen and (max-width: 735px) {
    .c-kv__times:lang(en) {
        margin-top: calc(7 / var(--design-width) * 100vw);
    }
}

@keyframes floating-y {
    0% {
        transform: translateY(-10%);
    }
    100% {
        transform: translateY(10%);
    }
}
@keyframes floating-x {
    0% {
        transform: translateX(-10%);
    }
    100% {
        transform: translateX(10%);
    }
}
@keyframes floating-x-sp {
    0% {
        transform: translateX(-5%);
    }
    100% {
        transform: translateX(5%);
    }
}
@keyframes anim_s {
    50% {
        transform: rotate(-30deg);
    }
    100% {
        transform: rotate(30deg);
    }
}
/* ---------------------------------------------
*   c-link-1
--------------------------------------------- */
.c-link-1 {
    position: relative;
    display: flex !important;
    width: -moz-fit-content;
    width: fit-content;
    align-items: center;
    gap: 4px;
    padding-bottom: 3px;
}
@media (hover: hover) and (pointer: fine) {
    .c-link-1 {
        background-image: linear-gradient(var(--color-base-1), var(--color-base-1));
        background-position: 0 100%;
        background-size: 0 3px;
        background-repeat: no-repeat;
        transition: background-size 0.3s;
    }
}
@media screen and (hover: hover) and (pointer: fine) and (max-width: 735px) {
    .c-link-1 {
        background-size: 0 2px;
    }
}
@media (hover: hover) and (pointer: fine) {
    .c-link-1:hover {
        background-size: 100% 3px;
    }
}
@media screen and (hover: hover) and (pointer: fine) and (max-width: 735px) {
    .c-link-1:hover {
        background-size: 100% 2px;
    }
}
@media screen and (max-width: 735px) {
    .c-link-1 {
        padding-bottom: 2px;
    }
}
@media screen and (max-width: 735px) {
    .c-link-1 {
        gap: 6px;
    }
}
.c-link-1::after {
    content: "";
    display: block;
    width: 15px;
    aspect-ratio: 15/16;
    background: url(../img/common/ico_arrow_01.svg) center center no-repeat;
    background-size: 100% auto;
}

/* ---------------------------------------------
*   c-link-2
--------------------------------------------- */
.c-link-2 {
    display: inline !important;
    padding-block: 0 1px;
    background-image: linear-gradient(var(--color-base-1), var(--color-base-1));
    background-position: 0 100%;
    background-size: 100% 1px;
    background-repeat: no-repeat;
    transition: background-size 0.3s;
}
@media (hover: hover) and (pointer: fine) {
    .c-link-2:hover {
        background-size: 0 1px;
    }
}

/* ---------------------------------------------
*   c-link-2-wrap
--------------------------------------------- */
.c-link-2-wrap {
    margin-block: 18px;
}
@media screen and (max-width: 735px) {
    .c-link-2-wrap {
        margin-block: 11px 15px;
    }
}

/* ---------------------------------------------
*   c-list
--------------------------------------------- */
/* ---------------------------------------------
*   c-section-news
--------------------------------------------- */
.c-section-news {
    position: relative;
    padding-block: 100px 159px;
}
@media screen and (max-width: 735px) {
    .c-section-news {
        padding-block: 64px 125px;
    }
}
.c-section-news__container {
    position: relative;
}
.c-section-news__body {
    padding: 30px 26px 31px 24px;
    margin-top: 87px;
    border-radius: 16px;
    border: 3px solid var(--color-base-1);
    background-color: var(--color-white-1);
}
@media screen and (max-width: 1200px) {
    .c-section-news__body {
        padding-inline: 40px calc(var(--contents-side-padding) * 1px);
    }
}
@media screen and (max-width: 735px) {
    .c-section-news__body {
        padding: 22px 12px 22px 24px;
        margin-top: 47px;
        border-width: 2px;
    }
}
.c-section-news__body .simplebar-scrollbar {
    background-color: var(--color-base-1);
    border-radius: 13px;
    width: 100%;
}
.c-section-news__body .simplebar-scrollbar:before {
    background: var(--color-base-1);
}
.c-section-news__body .simplebar-track {
    background-color: var(--color-green-1);
    border-radius: 13px;
    width: 6px !important;
}
@media screen and (max-width: 735px) {
    .c-section-news__body .simplebar-track {
        width: 4px !important;
    }
}
.c-section-news__list {
    padding-block: 11px;
}
@media screen and (max-width: 735px) {
    .c-section-news__list {
        padding-block: 0;
    }
}
.c-section-news__scroll {
    padding-right: 32px;
}
@media screen and (max-width: 735px) {
    .c-section-news__scroll {
        padding-right: 15px;
    }
}
.c-section-news__item {
    padding-left: 24px;
    padding-block: 24px;
    border-bottom: 1px solid var(--color-green-2);
}
@media screen and (max-width: 735px) {
    .c-section-news__item {
        padding-left: 0;
        padding-block: 16px;
    }
}
.c-section-news__item:first-of-type {
    padding-top: 0;
}
.c-section-news__item:last-of-type {
    padding-bottom: 0;
    border-bottom: none;
}
.c-section-news__article {
    display: grid;
    grid-template-columns: 131px 1fr;
    gap: 30px;
    align-items: center;
}
@media screen and (max-width: 735px) {
    .c-section-news__article {
        grid-template-columns: 74px 1fr;
        gap: 16px;
        align-items: flex-start;
    }
}
.c-section-news__inner {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    gap: 52px;
}
@media screen and (max-width: 735px) {
    .c-section-news__inner {
        padding-top: 2px;
        display: block;
    }
}
.c-section-news__detail {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    gap: 29px;
}
@media screen and (max-width: 735px) {
    .c-section-news__detail {
        gap: 10px;
    }
}
.c-section-news__thumb {
    display: block;
    width: 100%;
}
.c-section-news__thumb img {
    width: 100%;
}
@media screen and (max-width: 735px) {
    .c-section-news__thumb img {
        overflow: hidden;
        border-radius: 8px;
    }
}
.c-section-news__date {
    font-size: calc(14 / var(--root-fz) * 100%);
    line-height: 1;
    white-space: nowrap;
}
@media screen and (max-width: 735px) {
    .c-section-news__date {
        font-size: calc(12 / var(--root-fz) * 100%);
    }
}
.c-section-news__cat {
    padding: 5px 16px;
    font-size: calc(12 / var(--root-fz) * 100%);
    line-height: 1;
    border: 1px solid var(--color-base-1);
    border-radius: 4px;
    white-space: nowrap;
    min-width: 82px;
    text-align: center;
}
@media screen and (max-width: 735px) {
    .c-section-news__cat {
        padding: 2px 6px;
        font-size: calc(10 / var(--root-fz) * 100%);
        min-width: 54px;
    }
}
.edge .c-section-news__cat {
    padding-top: 6px;
}
@media screen and (max-width: 735px) {
    .edge .c-section-news__cat {
        padding-top: 3px;
    }
}

@media screen and (max-width: 735px) {
    .safari .c-section-news__cat {
        padding-top: 4px;
    }
}

.c-section-news__title {
    font-size: calc(16 / var(--root-fz) * 100%);
    line-height: 1.5;
}
@media screen and (max-width: 735px) {
    .c-section-news__title {
        font-size: calc(14 / var(--root-fz) * 100%);
        margin-top: 4px;
    }
}

/* ---------------------------------------------
*   c-section-green
--------------------------------------------- */
.c-section-green {
    position: relative;
    padding-block: calc(25 / var(--design-width) * 100vw);
    background-color: var(--color-green-2);
}
@media screen and (max-width: 735px) {
    .c-section-green {
        padding-bottom: 10px;
    }
}
.c-section-green::before, .c-section-green::after {
    content: "";
    position: absolute;
    left: 0;
    width: 100%;
    height: calc(25 / var(--design-width) * 100vw);
}
.c-section-green::before {
    top: calc(-24 / var(--design-width) * 100vw);
    background: url(../img/common/bg_top.png) top center no-repeat;
    background-size: calc(1635 / var(--design-width) * 100%) 100%;
}
@media screen and (max-width: 735px) {
    .c-section-green::before {
        background: url(../img/common/sp/bg_top.png) top center no-repeat;
        background-size: calc(394 / var(--design-width) * 100%) 100%;
    }
}
.c-section-green::after {
    bottom: calc(-24 / var(--design-width) * 100vw);
    background: url(../img/common/bg_bottom.png) bottom center no-repeat;
    background-size: calc(1635 / var(--design-width) * 100%) 100%;
}
@media screen and (max-width: 735px) {
    .c-section-green::after {
        background: url(../img/common/sp/bg_bottom.png) top center no-repeat;
        background-size: calc(394 / var(--design-width) * 100%) 100%;
    }
}
.c-section-green__bg {
    position: relative;
    overflow: hidden;
}
.c-section-green__container {
    position: relative;
    z-index: 1;
    padding-block: 86px 62px;
}
@media screen and (max-width: 735px) {
    .c-section-green__container {
        padding-block: 32px 0;
    }
}
.c-section-green__body {
    margin-top: 87px;
}
@media screen and (max-width: 735px) {
    .c-section-green__body {
        margin-top: 48px;
    }
}
.c-section-green--access .c-section-green__container {
    padding-bottom: 107px;
}
@media screen and (max-width: 735px) {
    .c-section-green--access .c-section-green__container {
        padding-block: 32px 61px;
    }
}

/* ---------------------------------------------
*   c-section-report
--------------------------------------------- */
.c-section-report {
    position: relative;
    padding-block: 128px 186px;
}
@media screen and (max-width: 735px) {
    .c-section-report {
        padding-block: 95px 103px;
    }
}
.c-section-report__head {
    position: relative;
}
.c-section-report__body {
    margin-top: 87px;
}
@media screen and (max-width: 735px) {
    .c-section-report__body {
        margin-top: 48px;
    }
}

/* ---------------------------------------------
*   c-slider-num
--------------------------------------------- */
.c-slider-num__wrapper {
    position: relative;
    margin-left: -22px;
}
@media screen and (max-width: 735px) {
    .c-slider-num__wrapper {
        margin-left: 11px;
    }
}
@media screen and (max-width: 735px) {
    .c-slider-num .splide__track {
        overflow: visible;
    }
}
.c-slider-num .splide__list {
    gap: 22px;
}
@media screen and (max-width: 735px) {
    .c-slider-num .splide__list {
        gap: 12px;
    }
}
.c-slider-num .splide__slide {
    width: 629px !important;
}
@media screen and (max-width: 735px) {
    .c-slider-num .splide__slide {
        width: 280px !important;
    }
}
.c-slider-num__detail {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    gap: 18px;
    margin-top: 46px;
}
@media screen and (max-width: 735px) {
    .c-slider-num__detail {
        padding-inline: 24px;
        flex-wrap: wrap;
        gap: 24px 19px;
        margin-top: 29px;
    }
}
.c-slider-num__slide-number {
    font-size: calc(12 / var(--root-fz) * 100%);
}
.c-slider-num .js-slider-number-current {
    position: relative;
    margin-right: 14px;
}
@media screen and (max-width: 735px) {
    .c-slider-num .js-slider-number-current {
        margin-right: 10px;
    }
}
.c-slider-num .js-slider-number-current::after {
    content: "";
    position: absolute;
    top: 50%;
    right: -14px;
    transform: translateY(-50%);
    width: 1px;
    height: 20px;
    background-color: var(--color-black-2);
}
@media screen and (max-width: 735px) {
    .c-slider-num .js-slider-number-current::after {
        right: -10px;
    }
}
.c-slider-num .js-slider-number-all {
    margin-left: 14px;
}
@media screen and (max-width: 735px) {
    .c-slider-num .js-slider-number-all {
        margin-left: 10px;
    }
}
.c-slider-num .splide__arrow {
    flex-shrink: 0;
    display: grid;
    place-items: center;
    width: 40px;
    aspect-ratio: 1/1;
    box-sizing: border-box;
    touch-action: manipulation;
    cursor: pointer;
    border-radius: 7px;
    background-color: var(--color-white-1);
    border: 2px solid var(--color-base-1);
}
@media screen and (max-width: 735px) {
    .c-slider-num .splide__arrow {
        width: 35px;
        border-radius: 6px;
    }
}
.c-slider-num .splide__arrow:focus {
    outline-offset: 3px;
}
.c-slider-num .splide__arrow img {
    width: 11px;
    aspect-ratio: 11/15;
    filter: invert(16%) sepia(10%) saturate(6406%) hue-rotate(116deg) brightness(92%) contrast(103%);
}
@media screen and (max-width: 735px) {
    .c-slider-num .splide__arrow img {
        width: 9px;
    }
}
.c-slider-num .splide__arrow--next {
    transform: rotate(180deg);
}
@media (hover: hover) and (pointer: fine) {
    .c-slider-num .splide__arrow {
        transition: background-color 0.3s;
    }
    .c-slider-num .splide__arrow img {
        transition: filter 0.3s;
    }
    .c-slider-num .splide__arrow:hover {
        background-color: var(--color-base-1);
    }
    .c-slider-num .splide__arrow:hover img {
        filter: invert(100%) sepia(96%) saturate(15%) hue-rotate(212deg) brightness(104%) contrast(104%);
    }
}
.c-slider-num .splide__pagination {
    position: relative;
    background-color: var(--color-green-2);
    width: 100%;
    height: 4px;
    border-radius: 1px;
    border: none;
    margin-left: 37px;
}
@media screen and (max-width: 735px) {
    .c-slider-num .splide__pagination {
        margin-left: 0;
        height: 2px;
    }
}
.c-slider-num .splide__pagination li {
    width: calc(100% / var(--pagination-count));
}
@media screen and (max-width: 735px) {
    .c-slider-num .splide__pagination.pc-hide {
        display: flex !important;
    }
}
.c-slider-num .splide__pagination__page {
    display: block;
    width: 100%;
    height: 4px;
    border-radius: 1px;
    border: none;
}
@media screen and (max-width: 735px) {
    .c-slider-num .splide__pagination__page {
        height: 2px;
    }
}
.c-slider-num .splide__pagination__page.is-active {
    background-color: var(--color-base-1);
}
.c-slider-num.is-active-slider .c-slider-num__detail {
    display: none;
}
.c-slider-num.is-active-slider .splide__slide {
    width: calc((100% - 22px) / 2) !important;
    visibility: visible;
}
@media screen and (max-width: 735px) {
    .c-slider-num.is-active-slider .splide__slide {
        width: 100% !important;
    }
}

/* ---------------------------------------------
*   c-slider-card
--------------------------------------------- */
.c-slider-card {
    border-radius: 10px;
    overflow: hidden;
}
@media screen and (max-width: 735px) {
    .c-slider-card {
        border-radius: 8px;
        border: 1px solid var(--color-base-1);
    }
}
.c-slider-card__wrapper {
    position: relative;
}
.c-slider-card__control {
    position: absolute;
    bottom: 14px;
    left: 17px;
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    gap: 1rem;
    width: calc(100% - 34px);
}
@media screen and (max-width: 735px) {
    .c-slider-card__control {
        bottom: 5px;
        left: 8px;
        width: calc(100% - 16px);
    }
}
@media screen and (max-width: 735px) {
    .c-slider-card .splide__track {
        overflow: hidden;
    }
}
.c-slider-card .splide__list {
    gap: 0;
}
.c-slider-card .splide__slide {
    transform: translate3d(0, 0, 0);
    width: 100% !important;
}
.is-active-slider .c-slider-card .splide__slide {
    width: 100% !important;
}

.c-slider-card .splide__slide img {
    aspect-ratio: 533/326;
    width: 100%;
    -o-object-fit: cover;
       object-fit: cover;
    border-radius: 10px;
    overflow: hidden;
}
@media screen and (max-width: 735px) {
    .c-slider-card .splide__slide img {
        aspect-ratio: 279/186;
        border-radius: 7px;
    }
}
.c-slider-card .splide__arrows {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 11px;
}
@media screen and (max-width: 735px) {
    .c-slider-card .splide__arrows {
        gap: 8px;
    }
}
.c-slider-card .splide__arrow {
    display: grid;
    place-items: center;
    width: 38px;
    aspect-ratio: 1/1;
    box-sizing: border-box;
    touch-action: manipulation;
    cursor: pointer;
    border-radius: 7px;
    background-color: var(--color-white-1);
}
@media screen and (max-width: 735px) {
    .c-slider-card .splide__arrow {
        width: 32px;
        border-radius: 6px;
    }
}
.c-slider-card .splide__arrow img {
    width: 11px;
    aspect-ratio: 11/15;
    filter: invert(16%) sepia(10%) saturate(6406%) hue-rotate(116deg) brightness(92%) contrast(103%);
}
@media screen and (max-width: 735px) {
    .c-slider-card .splide__arrow img {
        width: 9px;
    }
}
.c-slider-card .splide__arrow--next {
    transform: rotate(180deg);
}
@media (hover: hover) and (pointer: fine) {
    .c-slider-card .splide__arrow {
        transition: background-color 0.3s;
    }
    .c-slider-card .splide__arrow img {
        transition: filter 0.3s;
    }
    .c-slider-card .splide__arrow:hover {
        background-color: var(--color-base-1);
    }
    .c-slider-card .splide__arrow:hover img {
        filter: invert(100%) sepia(96%) saturate(15%) hue-rotate(212deg) brightness(104%) contrast(104%);
    }
}
.c-slider-card .splide__pagination {
    gap: 10px;
    flex-wrap: wrap;
    justify-content: flex-start;
    display: flex !important;
    background-color: transparent;
    width: auto;
    height: auto;
    margin-left: 0;
}
@media screen and (max-width: 735px) {
    .c-slider-card .splide__pagination {
        gap: 4px;
    }
}
.c-slider-card .splide__pagination li {
    font-size: 0;
}
.c-slider-card .splide__pagination__page {
    position: relative;
    width: 16px;
    height: auto !important;
    aspect-ratio: 1/1;
    border-radius: 3px;
    touch-action: manipulation;
    cursor: pointer;
    background-color: var(--color-white-1);
}
@media screen and (max-width: 735px) {
    .c-slider-card .splide__pagination__page {
        width: 10px;
    }
}
.c-slider-card .splide__pagination__page.is-active {
    background-color: var(--color-green-4);
}
@media (hover: hover) and (pointer: fine) {
    .c-slider-card .splide__pagination__page {
        transition: background-color 0.3s;
    }
    .c-slider-card .splide__pagination__page:hover {
        background-color: var(--color-base-1);
    }
}

/* ---------------------------------------------
*   c-tile
--------------------------------------------- */
/* ---------------------------------------------
*   c-ttl-1
--------------------------------------------- */
.c-ttl-1 {
    text-align: center;
}
.c-ttl-1__jp {
    display: block;
    font-size: calc(20 / var(--root-fz) * 100%);
    letter-spacing: 0.1em;
    line-height: 1;
}
@media screen and (max-width: 735px) {
    .c-ttl-1__jp {
        font-size: calc(14 / var(--root-fz) * 100%);
    }
}
.c-ttl-1__en {
    padding-bottom: 13px;
    display: block;
    width: -moz-fit-content;
    width: fit-content;
    font-size: calc(72 / var(--root-fz) * 100%);
    letter-spacing: 0.08em;
    line-height: 1;
    margin-inline: auto;
    margin-top: 9px;
    border-bottom: 8px solid var(--color-green-1);
}
@media screen and (max-width: 735px) {
    .c-ttl-1__en {
        font-size: calc(40 / var(--root-fz) * 100%);
        padding-bottom: 8px;
        margin-top: 3px;
        border-bottom-width: 4px;
    }
}

/* ---------------------------------------------
*   c-txt-1
--------------------------------------------- */
.c-txt-1 {
    display: block;
    font-size: calc(28 / var(--root-fz) * 100%);
    font-feature-settings: "palt" 1;
}
@media screen and (max-width: 735px) {
    .c-txt-1 {
        font-size: calc(20 / var(--root-fz) * 100%);
        letter-spacing: 0.02em;
        line-height: 1.3;
    }
}
.c-txt-1--map {
    position: relative;
    display: flex;
    align-items: flex-start;
    gap: 15px;
}
@media screen and (max-width: 735px) {
    .c-txt-1--map {
        gap: 8px;
    }
}
.c-txt-1--map::before {
    content: "";
    width: 45px;
    aspect-ratio: 1/1;
    background: url(../img/common/ico_map.svg) center center no-repeat;
    background-size: 100% auto;
    flex-shrink: 0;
}
@media screen and (max-width: 735px) {
    .c-txt-1--map::before {
        width: 30px;
    }
}
.c-txt-1--q {
    position: relative;
    display: flex;
    align-items: flex-start;
    gap: 11px;
}
@media screen and (max-width: 735px) {
    .c-txt-1--q {
        gap: 6px;
    }
}
.c-txt-1--q::before {
    content: "";
    width: 45px;
    aspect-ratio: 1/1;
    background: url(../img/common/ico_q.svg) center center no-repeat;
    background-size: 100% auto;
    flex-shrink: 0;
}
@media screen and (max-width: 735px) {
    .c-txt-1--q::before {
        width: 30px;
    }
}

/* ---------------------------------------------
*   c-txt-2
--------------------------------------------- */
.c-txt-2 {
    display: block;
    font-size: calc(20 / var(--root-fz) * 100%);
    letter-spacing: 0.08em;
    line-height: 2;
    font-feature-settings: "palt" 1;
}
@media screen and (max-width: 735px) {
    .c-txt-2 {
        font-size: calc(14 / var(--root-fz) * 100%);
        letter-spacing: 0em;
        line-height: 1.65;
    }
}
.c-txt-2--caution {
    position: relative;
    display: flex;
    align-items: center;
    gap: 10px;
    margin-block: 40px 5px;
}
@media screen and (max-width: 735px) {
    .c-txt-2--caution {
        gap: 5px;
        font-size: calc(16 / var(--root-fz) * 100%);
        margin-block: 23px 12px;
    }
}
.c-txt-2--caution::before {
    content: "";
    width: 24px;
    aspect-ratio: 1/1;
    background: url(../img/common/ico_caution.svg) center center no-repeat;
    background-size: 100% auto;
    flex-shrink: 0;
}
@media screen and (max-width: 735px) {
    .c-txt-2--caution::before {
        width: 22px;
    }
}
.c-txt-2--mt28 {
    margin-top: 28px;
}
@media screen and (max-width: 735px) {
    .c-txt-2--mt28 {
        margin-top: 16px;
    }
}

/* ---------------------------------------------
*   c-txt-3
--------------------------------------------- */
.c-txt-3 {
    display: block;
    font-size: calc(16 / var(--root-fz) * 100%);
    line-height: 1.75;
}
@media screen and (max-width: 735px) {
    .c-txt-3 {
        font-size: calc(14 / var(--root-fz) * 100%);
        line-height: 1.65;
    }
    .c-txt-3.c-link-1 {
        font-size: calc(16 / var(--root-fz) * 100%);
    }
}

/* ---------------------------------------------
*   c-txt-4
--------------------------------------------- */
.c-txt-4 {
    color: var(--color-green-1);
    display: block;
    font-size: calc(12 / var(--root-fz) * 100%);
    line-height: 1.75;
    font-feature-settings: "palt" 1;
}
@media screen and (max-width: 735px) {
    .c-txt-4 {
        font-size: calc(14 / var(--root-fz) * 100%);
        line-height: 1.65;
    }
}
@media screen and (max-width: 735px) {
    .c-txt-4--sp12 {
        font-size: calc(12 / var(--root-fz) * 100%);
    }
}

/* ---------------------------------------------
*   p-top-xx
--------------------------------------------- */
/* ---------------------------------------------
*   p-lower-page-xx
--------------------------------------------- */
/* ---------------------------------------------
*   background-color
--------------------------------------------- */
.bg-white {
    background-color: var(--color-white-1) !important;
}

/* ---------------------------------------------
*   color
--------------------------------------------- */
.fc-white-1 {
    color: var(--color-white-1) !important;
}

.fc-black-1 {
    color: var(--color-black-1) !important;
}

.fc-black-2 {
    color: var(--color-black-2) !important;
}

.fc-green-1 {
    color: var(--color-green-1) !important;
}

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

@media screen and (min-width: 736px) {
    .display-inline-block-pc {
        display: inline-block !important;
    }
}

@media screen and (max-width: 735px) {
    .display-inline-block-sp {
        display: inline-block !important;
    }
}

@media screen and (max-width: 735px) {
    .display-block-sp {
        display: block !important;
    }
}

/* ---------------------------------------------
*   font-family
--------------------------------------------- */
.ff-verdana {
    font-family: var(--ff-verdana) !important;
}

.ff-brother {
    font-family: var(--ff-brother) !important;
}

/* ---------------------------------------------
*   font-wight
--------------------------------------------- */
.fw-normal {
    font-weight: 400 !important;
}

.fw-bold {
    font-weight: 700 !important;
}

/* ---------------------------------------------
*   line-height
--------------------------------------------- */
.lh-125 {
    line-height: 1.25 !important;
}

@media screen and (min-width: 736px) {
    .lh-125-pc {
        line-height: 1.25 !important;
    }
}

@media screen and (max-width: 735px) {
    .lh-125-sp {
        line-height: 1.25 !important;
    }
}

.lh-13 {
    line-height: 1.3 !important;
}

@media screen and (min-width: 736px) {
    .lh-13-pc {
        line-height: 1.3 !important;
    }
}

@media screen and (max-width: 735px) {
    .lh-13-sp {
        line-height: 1.3 !important;
    }
}

.lh-14 {
    line-height: 1.4 !important;
}

@media screen and (max-width: 735px) {
    .lh-14-pc {
        line-height: 1.3 !important;
    }
}

@media screen and (max-width: 735px) {
    .lh-14-sp {
        line-height: 1.4 !important;
    }
}

.lh-15 {
    line-height: 1.5 !important;
}

@media screen and (min-width: 736px) {
    .lh-15-pc {
        line-height: 1.5 !important;
    }
}

@media screen and (max-width: 735px) {
    .lh-15-sp {
        line-height: 1.5 !important;
    }
}

.lh-16 {
    line-height: 1.6 !important;
}

@media screen and (min-width: 736px) {
    .lh-16-pc {
        line-height: 1.6 !important;
    }
}

@media screen and (max-width: 735px) {
    .lh-165-sp {
        line-height: 1.65 !important;
    }
}

.lh-17 {
    line-height: 1.7 !important;
}

@media screen and (min-width: 736px) {
    .lh-17-pc {
        line-height: 1.7 !important;
    }
}

@media screen and (max-width: 735px) {
    .lh-17-sp {
        line-height: 1.7 !important;
    }
}

@media screen and (max-width: 735px) {
    .lh-175-sp {
        line-height: 1.75 !important;
    }
}

.lh-18 {
    line-height: 1.8 !important;
}

@media screen and (min-width: 736px) {
    .lh-18-pc {
        line-height: 1.8 !important;
    }
}

@media screen and (max-width: 735px) {
    .lh-18-sp {
        line-height: 1.8 !important;
    }
}

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

@media screen and (min-width: 736px) {
    .lh-2-pc {
        line-height: 2 !important;
    }
}

@media screen and (max-width: 735px) {
    .lh-2-sp {
        line-height: 2 !important;
    }
}

/* ---------------------------------------------
*   text-align
--------------------------------------------- */
/*  中央
--------------------------------------------- */
.txt-al-center {
    text-align: center !important;
}

@media screen and (min-width: 736px) {
    .txt-al-center-pc {
        text-align: center !important;
    }
}

@media screen and (max-width: 735px) {
    .txt-al-center-sp {
        text-align: center !important;
    }
}

/*  右寄せ
--------------------------------------------- */
.txt-al-right {
    text-align: right !important;
}

@media screen and (min-width: 736px) {
    .txt-al-right-pc {
        text-align: right !important;
    }
}

@media screen and (max-width: 735px) {
    .txt-al-right-sp {
        text-align: right !important;
    }
}

/*  左寄せ
--------------------------------------------- */
.txt-al-left {
    text-align: left !important;
}

@media screen and (min-width: 736px) {
    .txt-al-left-pc {
        text-align: left !important;
    }
}

@media screen and (max-width: 735px) {
    .txt-al-left-sp {
        text-align: left !important;
    }
}

/*  justify
--------------------------------------------- */
.txt-al-justify {
    text-align: justify !important;
}

@media screen and (min-width: 736px) {
    .txt-al-justify-pc {
        text-align: justify !important;
    }
}

@media screen and (max-width: 735px) {
    .txt-al-justify-sp {
        text-align: justify !important;
    }
}

/* ---------------------------------------------
*   letter-spacing
--------------------------------------------- */
/*  letter-spacing: 0;
--------------------------------------------- */
.ls-0 {
    letter-spacing: 0 !important;
}

@media screen and (min-width: 736px) {
    .ls-0-pc {
        letter-spacing: 0 !important;
    }
}

@media screen and (max-width: 735px) {
    .ls-0-sp {
        letter-spacing: 0 !important;
    }
}

/* ---------------------------------------------
*   アクセシビリティ対応
--------------------------------------------- */
.visually-hidden {
    position: absolute;
    clip: rect(0 0 0 0);
    clip-path: inset(50%);
    width: 1px;
    height: 1px;
    overflow: hidden;
    white-space: nowrap;
}

/*  .js-pagetop-threshold
--------------------------------------------- */
.js-pagetop-threshold {
    position: absolute;
    top: 0;
    height: 300px;
}

.js-pagetop {
    opacity: 0;
    visibility: hidden;
    transition: 0.5s;
}
.js-pagetop.is-show {
    opacity: 1;
    visibility: visible;
}
@media (hover: hover) and (pointer: fine) {
    .js-pagetop.is-show {
        transition: opacity var(--hover-duration);
    }
    .js-pagetop.is-show:hover {
        opacity: var(--hover-opacity-ratio);
    }
}

.js-pagetop-footer-end {
    width: 100%;
    height: 1px;
    pointer-events: none;
}

/* 左にスライド */
.js-slidein-to-left {
    opacity: 0;
    transform: translateX(50px);
}
.js-slidein-to-left.is-active {
    transform: translateX(0);
    opacity: 1;
    transition: transform 0.8s, opacity 1s;
}

/* 右にスライド */
.js-slidein-to-right {
    opacity: 0;
    transform: translateX(-50px);
}
.js-slidein-to-right.is-active {
    transform: translateX(0);
    opacity: 1;
    transition: transform 0.8s, opacity 1s;
}

/*  .is-loaded
--------------------------------------------- */
body.is-stuck {
    position: fixed;
    width: 100%;
    height: 100lvh;
    overflow-y: scroll;
}

@media print and (min-width: 736px), screen and (min-width: 736px) {
    .pc-hide {
        display: none !important;
    }
}
@media print and (max-width: 735px), screen and (max-width: 735px) {
    .sp-hide {
        display: none !important;
    }
}
@media print and (max-width: 1200px), screen and (max-width: 1200px) {
    .tb-hide {
        display: none !important;
    }
}
@media print and (min-width: 1201px), screen and (min-width: 1201px) {
    .tb-over {
        display: none !important;
    }
}
/* ---------------------------------------------
*   margin-top
--------------------------------------------- */
.mgt-pc--0 {
    margin-top: 0 !important;
}

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

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

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

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

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

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

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

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

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

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

.mgt-pc--55 {
    margin-top: 55px !important;
}

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

.mgt-pc--65 {
    margin-top: 65px !important;
}

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

.mgt-pc--75 {
    margin-top: 75px !important;
}

.mgt-pc--80 {
    margin-top: 80px !important;
}

.mgt-pc--85 {
    margin-top: 85px !important;
}

.mgt-pc--90 {
    margin-top: 90px !important;
}

.mgt-pc--95 {
    margin-top: 95px !important;
}

.mgt-pc--100 {
    margin-top: 100px !important;
}

.mgt-pc--105 {
    margin-top: 105px !important;
}

.mgt-pc--110 {
    margin-top: 110px !important;
}

.mgt-pc--115 {
    margin-top: 115px !important;
}

.mgt-pc--120 {
    margin-top: 120px !important;
}

.mgt-pc--125 {
    margin-top: 125px !important;
}

.mgt-pc--130 {
    margin-top: 130px !important;
}

.mgt-pc--135 {
    margin-top: 135px !important;
}

.mgt-pc--140 {
    margin-top: 140px !important;
}

.mgt-pc--145 {
    margin-top: 145px !important;
}

.mgt-pc--150 {
    margin-top: 150px !important;
}

.mgt-pc--155 {
    margin-top: 155px !important;
}

.mgt-pc--160 {
    margin-top: 160px !important;
}

.mgt-pc--165 {
    margin-top: 165px !important;
}

.mgt-pc--170 {
    margin-top: 170px !important;
}

.mgt-pc--175 {
    margin-top: 175px !important;
}

.mgt-pc--180 {
    margin-top: 180px !important;
}

.mgt-pc--185 {
    margin-top: 185px !important;
}

.mgt-pc--190 {
    margin-top: 190px !important;
}

.mgt-pc--195 {
    margin-top: 195px !important;
}

.mgt-pc--200 {
    margin-top: 200px !important;
}

.mgt-pc--205 {
    margin-top: 205px !important;
}

.mgt-pc--210 {
    margin-top: 210px !important;
}

.mgt-pc--215 {
    margin-top: 215px !important;
}

.mgt-pc--220 {
    margin-top: 220px !important;
}

.mgt-pc--225 {
    margin-top: 225px !important;
}

.mgt-pc--230 {
    margin-top: 230px !important;
}

.mgt-pc--235 {
    margin-top: 235px !important;
}

.mgt-pc--240 {
    margin-top: 240px !important;
}

.mgt-pc--245 {
    margin-top: 245px !important;
}

.mgt-pc--250 {
    margin-top: 250px !important;
}

@media screen and (max-width: 735px) {
    .mgt-sp--0 {
        margin-top: 0 !important;
    }
    .mgt-sp--5 {
        margin-top: calc(5 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--10 {
        margin-top: calc(10 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--15 {
        margin-top: calc(15 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--20 {
        margin-top: calc(20 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--25 {
        margin-top: calc(25 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--30 {
        margin-top: calc(30 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--35 {
        margin-top: calc(35 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--40 {
        margin-top: calc(40 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--45 {
        margin-top: calc(45 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--50 {
        margin-top: calc(50 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--55 {
        margin-top: calc(55 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--60 {
        margin-top: calc(60 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--65 {
        margin-top: calc(65 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--70 {
        margin-top: calc(70 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--75 {
        margin-top: calc(75 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--80 {
        margin-top: calc(80 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--85 {
        margin-top: calc(85 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--90 {
        margin-top: calc(90 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--95 {
        margin-top: calc(95 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--100 {
        margin-top: calc(100 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--105 {
        margin-top: calc(105 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--110 {
        margin-top: calc(110 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--115 {
        margin-top: calc(115 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--120 {
        margin-top: calc(120 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--125 {
        margin-top: calc(125 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--130 {
        margin-top: calc(130 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--135 {
        margin-top: calc(135 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--140 {
        margin-top: calc(140 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--145 {
        margin-top: calc(145 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--150 {
        margin-top: calc(150 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--155 {
        margin-top: calc(155 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--160 {
        margin-top: calc(160 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--165 {
        margin-top: calc(165 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--170 {
        margin-top: calc(170 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--175 {
        margin-top: calc(175 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--180 {
        margin-top: calc(180 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--185 {
        margin-top: calc(185 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--190 {
        margin-top: calc(190 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--195 {
        margin-top: calc(195 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--200 {
        margin-top: calc(200 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--205 {
        margin-top: calc(205 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--210 {
        margin-top: calc(210 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--215 {
        margin-top: calc(215 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--220 {
        margin-top: calc(220 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--225 {
        margin-top: calc(225 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--230 {
        margin-top: calc(230 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--235 {
        margin-top: calc(235 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--240 {
        margin-top: calc(240 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--245 {
        margin-top: calc(245 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--250 {
        margin-top: calc(250 / var(--design-width) * 100vw) !important;
    }
}
/* ---------------------------------------------
*   margin-bottom
--------------------------------------------- */
.mgb-pc--0 {
    margin-bottom: 0 !important;
}

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

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

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

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

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

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

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

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

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

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

.mgb-pc--55 {
    margin-bottom: 55px !important;
}

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

.mgb-pc--65 {
    margin-bottom: 65px !important;
}

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

.mgb-pc--75 {
    margin-bottom: 75px !important;
}

.mgb-pc--80 {
    margin-bottom: 80px !important;
}

.mgb-pc--85 {
    margin-bottom: 85px !important;
}

.mgb-pc--90 {
    margin-bottom: 90px !important;
}

.mgb-pc--95 {
    margin-bottom: 95px !important;
}

.mgb-pc--100 {
    margin-bottom: 100px !important;
}

.mgb-pc--105 {
    margin-bottom: 105px !important;
}

.mgb-pc--110 {
    margin-bottom: 110px !important;
}

.mgb-pc--115 {
    margin-bottom: 115px !important;
}

.mgb-pc--120 {
    margin-bottom: 120px !important;
}

.mgb-pc--125 {
    margin-bottom: 125px !important;
}

.mgb-pc--130 {
    margin-bottom: 130px !important;
}

.mgb-pc--135 {
    margin-bottom: 135px !important;
}

.mgb-pc--140 {
    margin-bottom: 140px !important;
}

.mgb-pc--145 {
    margin-bottom: 145px !important;
}

.mgb-pc--150 {
    margin-bottom: 150px !important;
}

.mgb-pc--155 {
    margin-bottom: 155px !important;
}

.mgb-pc--160 {
    margin-bottom: 160px !important;
}

.mgb-pc--165 {
    margin-bottom: 165px !important;
}

.mgb-pc--170 {
    margin-bottom: 170px !important;
}

.mgb-pc--175 {
    margin-bottom: 175px !important;
}

.mgb-pc--180 {
    margin-bottom: 180px !important;
}

.mgb-pc--185 {
    margin-bottom: 185px !important;
}

.mgb-pc--190 {
    margin-bottom: 190px !important;
}

.mgb-pc--195 {
    margin-bottom: 195px !important;
}

.mgb-pc--200 {
    margin-bottom: 200px !important;
}

.mgb-pc--205 {
    margin-bottom: 205px !important;
}

.mgb-pc--210 {
    margin-bottom: 210px !important;
}

.mgb-pc--215 {
    margin-bottom: 215px !important;
}

.mgb-pc--220 {
    margin-bottom: 220px !important;
}

.mgb-pc--225 {
    margin-bottom: 225px !important;
}

.mgb-pc--230 {
    margin-bottom: 230px !important;
}

.mgb-pc--235 {
    margin-bottom: 235px !important;
}

.mgb-pc--240 {
    margin-bottom: 240px !important;
}

.mgb-pc--245 {
    margin-bottom: 245px !important;
}

.mgb-pc--250 {
    margin-bottom: 250px !important;
}

@media screen and (max-width: 735px) {
    .mgb-sp--0 {
        margin-bottom: 0 !important;
    }
    .mgb-sp--5 {
        margin-bottom: calc(5 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--10 {
        margin-bottom: calc(10 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--15 {
        margin-bottom: calc(15 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--20 {
        margin-bottom: calc(20 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--25 {
        margin-bottom: calc(25 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--30 {
        margin-bottom: calc(30 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--35 {
        margin-bottom: calc(35 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--40 {
        margin-bottom: calc(40 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--45 {
        margin-bottom: calc(45 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--50 {
        margin-bottom: calc(50 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--55 {
        margin-bottom: calc(55 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--60 {
        margin-bottom: calc(60 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--65 {
        margin-bottom: calc(65 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--70 {
        margin-bottom: calc(70 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--75 {
        margin-bottom: calc(75 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--80 {
        margin-bottom: calc(80 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--85 {
        margin-bottom: calc(85 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--90 {
        margin-bottom: calc(90 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--95 {
        margin-bottom: calc(95 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--100 {
        margin-bottom: calc(100 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--105 {
        margin-bottom: calc(105 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--110 {
        margin-bottom: calc(110 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--115 {
        margin-bottom: calc(115 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--120 {
        margin-bottom: calc(120 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--125 {
        margin-bottom: calc(125 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--130 {
        margin-bottom: calc(130 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--135 {
        margin-bottom: calc(135 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--140 {
        margin-bottom: calc(140 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--145 {
        margin-bottom: calc(145 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--150 {
        margin-bottom: calc(150 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--155 {
        margin-bottom: calc(155 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--160 {
        margin-bottom: calc(160 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--165 {
        margin-bottom: calc(165 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--170 {
        margin-bottom: calc(170 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--175 {
        margin-bottom: calc(175 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--180 {
        margin-bottom: calc(180 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--185 {
        margin-bottom: calc(185 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--190 {
        margin-bottom: calc(190 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--195 {
        margin-bottom: calc(195 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--200 {
        margin-bottom: calc(200 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--205 {
        margin-bottom: calc(205 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--210 {
        margin-bottom: calc(210 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--215 {
        margin-bottom: calc(215 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--220 {
        margin-bottom: calc(220 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--225 {
        margin-bottom: calc(225 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--230 {
        margin-bottom: calc(230 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--235 {
        margin-bottom: calc(235 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--240 {
        margin-bottom: calc(240 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--245 {
        margin-bottom: calc(245 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--250 {
        margin-bottom: calc(250 / var(--design-width) * 100vw) !important;
    }
}