/* ---------------------------------------------
*   l-wrapper
--------------------------------------------- */
/* ---------------------------------------------
*   l-header
--------------------------------------------- */
.l-header {
    height: calc(var(--fixed-header-height) * 1px);
}

/* ---------------------------------------------
*   l-contents
--------------------------------------------- */
/* ---------------------------------------------
*   l-footer
--------------------------------------------- */
/* ---------------------------------------------
*   c-block
--------------------------------------------- */
.c-block {
    margin-top: 65px;
}
@media screen and (max-width: 767px) {
    .c-block {
        margin-top: 45px;
    }
}
.c-block--02 {
    margin-top: 52px;
}
@media screen and (max-width: 767px) {
    .c-block--02 {
        margin-top: 33px;
    }
}
.c-block--03 {
    margin-top: 48px;
}
@media screen and (max-width: 767px) {
    .c-block--03 {
        margin-top: 37px;
    }
}
.c-block__ttl {
    display: flex;
    align-items: flex-end;
    -moz-column-gap: 13px;
         column-gap: 13px;
    padding: 14px 10px 18px;
    background-color: var(--color-pink-2);
}
@media screen and (max-width: 767px) {
    .c-block__ttl {
        display: block;
        padding: 4px 10px 0;
    }
}
.c-block__ttl-number {
    font-size: calc(44 / var(--root-fz) * 1rem);
    line-height: 0.75;
    letter-spacing: 0.01em;
    font-weight: bold;
    font-family: "Roboto", sans-serif;
}
@media screen and (max-width: 767px) {
    .c-block__ttl-number {
        display: block;
        font-size: calc(60 / var(--root-fz) * 1rem);
        line-height: 0.9;
        letter-spacing: 0.05em;
    }
}
.c-block__ttl-txt {
    font-size: calc(26 / var(--root-fz) * 1rem);
    line-height: 1;
    letter-spacing: 0.01em;
    font-weight: bold;
}
@media screen and (max-width: 767px) {
    .c-block__ttl-txt {
        display: block;
        margin-top: 5px;
        font-size: calc(37 / var(--root-fz) * 1rem);
        line-height: 1.7333333333;
        letter-spacing: 0.04em;
    }
}
.c-block__desc {
    font-size: calc(16 / var(--root-fz) * 1rem);
    line-height: 2;
    letter-spacing: 0.01em;
    font-weight: 500;
    margin-top: 16px;
}
@media screen and (max-width: 767px) {
    .c-block__desc {
        font-size: calc(28 / var(--root-fz) * 1rem);
        line-height: 1.8571428571;
        letter-spacing: 0.05em;
        margin-top: 8px;
    }
}
.c-block__desc strong {
    font-weight: bold;
}
.c-block__desc span {
    display: block;
    font-size: calc(14 / var(--root-fz) * 1rem);
    line-height: 1.5;
}
@media screen and (max-width: 767px) {
    .c-block__desc span {
        font-size: calc(24 / var(--root-fz) * 1rem);
    }
}
.c-block__img {
    max-width: 658px;
    margin: 25px auto 0;
}
@media screen and (max-width: 767px) {
    .c-block__img {
        max-width: none;
        width: calc(230 / var(--design-width) * 100vw);
        text-align: center;
        margin-top: 18px;
    }
}
.c-block__img--02 {
    max-width: 320px;
    margin-top: 0;
}
@media screen and (max-width: 767px) {
    .c-block__img--02 {
        max-width: none;
        width: 80%;
        margin-top: 21px;
        margin-inline: auto;
    }
}
@media screen and (max-width: 600px) {
    .c-block__img--02 {
        width: 100%;
    }
}
@media screen and (max-width: 767px) {
    .c-block__img--02 img {
        display: block;
        width: 100%;
    }
}
.c-block__img--03 {
    max-width: 981px;
    width: 100%;
    margin-top: 41px;
}
@media screen and (max-width: 767px) {
    .c-block__img--03 {
        max-width: none;
        width: 80%;
        margin: 31px auto 0;
    }
}
@media screen and (max-width: 600px) {
    .c-block__img--03 {
        width: 100%;
    }
}
@media screen and (max-width: 767px) {
    .c-block__img--03 img {
        display: block;
        width: 100%;
    }
}
.c-block__container {
    display: flex;
    -moz-column-gap: 22px;
         column-gap: 22px;
    align-items: flex-end;
}
@media screen and (max-width: 767px) {
    .c-block__container {
        display: block;
    }
}
.c-block__desc-outer {
    max-width: 640px;
    width: 100%;
}
@media screen and (max-width: 767px) {
    .c-block__desc-outer {
        max-width: none;
    }
}
.c-block__desc-img {
    max-width: 660px;
    width: 100%;
    margin-top: 22px;
}
@media screen and (max-width: 767px) {
    .c-block__desc-img {
        max-width: none;
        margin-inline: auto;
        width: 80%;
    }
}
@media screen and (max-width: 600px) {
    .c-block__desc-img {
        width: 100%;
        margin-top: 15px;
    }
}
@media screen and (max-width: 767px) {
    .c-block__desc-img img {
        display: block;
        width: 100%;
    }
}

/* ---------------------------------------------
*   c-block-02
--------------------------------------------- */
.c-block-02 {
    width: 100%;
    background-color: #eeffff;
    padding: 47px 10px;
    margin-top: 75px;
}
@media screen and (max-width: 767px) {
    .c-block-02 {
        margin-top: 58px;
        padding: 32px 12px;
    }
}
.c-block-02__txt {
    display: block;
    font-size: calc(24 / var(--root-fz) * 1rem);
    line-height: 1.5;
    letter-spacing: 0.01em;
    text-align: center;
    font-weight: bold;
}
@media screen and (max-width: 767px) {
    .c-block-02__txt {
        font-size: calc(36 / var(--root-fz) * 1rem);
        line-height: 1.5;
    }
}
.c-block-02__link {
    display: flex;
    -moz-column-gap: 18px;
         column-gap: 18px;
    justify-content: center;
    margin-top: 19px;
}
@media screen and (max-width: 767px) {
    .c-block-02__link {
        display: block;
        margin-top: 22px;
    }
}

/* ---------------------------------------------
*   c-block-label
--------------------------------------------- */
.c-block-label {
    display: block;
    max-width: 510px;
    width: 100%;
    margin: 12px auto 0 0;
    background-color: #fff;
    padding: 7px 30px;
}
@media screen and (max-width: 1140px) {
    .c-block-label {
        margin: 6px auto 0 0;
    }
}
@media screen and (max-width: 767px) {
    .c-block-label {
        max-width: 330px;
        width: 100%;
        margin: 11px auto 0 auto;
        padding: 8px 11px;
        border: 1px solid #000;
    }
}
.c-block-label--02 {
    margin-inline: auto;
    background-color: transparent;
    margin-top: 22px;
}
@media screen and (max-width: 767px) {
    .c-block-label--02 {
        background-color: #fff;
        margin: 9px auto 0;
        border: none;
    }
}

/* ---------------------------------------------
*   c-box
--------------------------------------------- */
.c-box {
    margin-top: 37px;
}
@media screen and (max-width: 767px) {
    .c-box {
        margin-top: 18px;
    }
}
@media screen and (max-width: 767px) {
    .c-box--02 {
        margin-top: 14px;
    }
}
.c-box--02 .c-box__top-container {
    margin-top: 12px;
}
@media screen and (max-width: 767px) {
    .c-box--02 .c-box__top-container {
        margin-top: 9px;
    }
}
@media screen and (max-width: 767px) {
    .c-box--02 .c-box__bottom:last-child {
        margin-top: 21px;
    }
}
.c-box--02 .c-box__bottom-desc-txt:nth-of-type(2) {
    margin-top: 5px;
}
.c-box--03 {
    margin-top: 30px;
}
@media screen and (max-width: 767px) {
    .c-box--03 {
        margin-top: 18px;
    }
}
@media screen and (max-width: 767px) {
    .c-box--03 .c-box__top-container {
        margin-top: 9px;
    }
}
@media screen and (max-width: 767px) {
    .c-box--03 .c-box__bottom:last-child {
        margin-top: 21px;
    }
}
.c-box:nth-of-childe(n + 2) {
    margin-top: 27px;
}
.c-box__inner {
    border: 10px solid #f2e1dd;
    padding: 33px 20px;
}
@media screen and (max-width: 767px) {
    .c-box__inner {
        padding: 29px 6px 18px;
    }
    .windows .c-box__inner {
        padding: 29px 10px 18px;
    }
    .safari .c-box__inner {
        padding: 29px 10px 18px;
    }
}
.c-box__label {
    background-color: #ca0a13;
    padding: 3px 10px;
}
.c-box__label-txt {
    display: block;
    font-size: calc(20 / var(--root-fz) * 1rem);
    line-height: 1.8;
    letter-spacing: 0.01em;
    text-align: center;
    color: #fff;
    font-weight: bold;
}
@media screen and (max-width: 767px) {
    .c-box__label-txt {
        font-size: calc(30 / var(--root-fz) * 1rem);
        letter-spacing: 0.05em;
        line-height: 1.8;
    }
}
.c-box__top-ttl {
    font-size: calc(24 / var(--root-fz) * 1rem);
    line-height: 1.5;
    letter-spacing: 0.01em;
    font-weight: bold;
}
@media screen and (max-width: 767px) {
    .c-box__top-ttl {
        font-size: calc(36 / var(--root-fz) * 1rem);
        letter-spacing: 0.05em;
        line-height: 1.5;
    }
}
@media screen and (max-width: 767px) {
    .c-box__top-ttl-icn {
        width: 23px;
    }
}
@media screen and (max-width: 767px) {
    .c-box__top-ttl-icn img {
        display: block;
        width: 100%;
    }
}
.c-box__top-container {
    display: flex;
    -moz-column-gap: 33px;
         column-gap: 33px;
    justify-content: center;
    margin-top: 10px;
    transform: translateX(33px);
}
@media screen and (max-width: 767px) {
    .c-box__top-container {
        transform: translateX(24px);
        margin-top: 12px;
        align-items: center;
        -moz-column-gap: 23px;
             column-gap: 23px;
    }
}
.c-box__top-desc {
    border: 1px solid #000;
    padding: 11px 17px;
}
@media screen and (max-width: 767px) {
    .c-box__top-desc {
        padding: 5px 4px;
    }
}
.c-box__top-desc-txt {
    display: inline-block;
    font-size: calc(16 / var(--root-fz) * 1rem);
    line-height: 2;
    letter-spacing: 0.01em;
    font-weight: bold;
    padding-left: 1em;
    text-indent: -1em;
}
@media screen and (max-width: 767px) {
    .c-box__top-desc-txt {
        display: block;
        font-size: calc(28 / var(--root-fz) * 1rem);
        letter-spacing: 0.03em;
        line-height: 1.8571428571;
    }
}
.c-box__top-desc-txt--block {
    display: block;
}
.c-box__top-desc-txt:first-child {
    margin-right: 13px;
}
@media screen and (max-width: 767px) {
    .c-box__top-desc-txt:first-child {
        margin-right: 0;
    }
}
.c-box__top-desc-txt:nth-of-type(3) {
    display: block;
}
.c-box__bottom-outer {
    display: flex;
    -moz-column-gap: 18px;
         column-gap: 18px;
    margin-top: 32px;
}
@media screen and (max-width: 767px) {
    .c-box__bottom-outer {
        display: block;
        margin-top: 27px;
    }
}
.c-box__bottom {
    max-width: 450px;
    width: 100%;
}
@media screen and (max-width: 767px) {
    .c-box__bottom {
        max-width: none;
        margin-top: 18px;
    }
}
@media screen and (max-width: 767px) {
    .c-box__bottom:nth-of-type(2) {
        margin-top: 21px;
    }
}
.c-box__bottom-ttl-container {
    display: flex;
    -moz-column-gap: 9px;
         column-gap: 9px;
    justify-content: center;
    align-items: flex-start;
}
.c-box__bottom-ttl {
    font-size: calc(20 / var(--root-fz) * 1rem);
    line-height: 1.8;
    letter-spacing: 0.01em;
    font-weight: bold;
    color: #000;
}
@media screen and (max-width: 767px) {
    .c-box__bottom-ttl {
        font-size: calc(30 / var(--root-fz) * 1rem);
        letter-spacing: 0.05em;
        line-height: 1.8;
    }
}
@media screen and (max-width: 767px) {
    .c-box__bottom-ttl-icn {
        width: 26px;
    }
}
@media screen and (max-width: 767px) {
    .c-box__bottom-ttl-icn img {
        display: block;
        width: 100%;
    }
}
.c-box__bottom-desc {
    border-top: 1px solid #000;
}
@media screen and (max-width: 767px) {
    .c-box__bottom-desc {
        margin-top: 10px;
    }
}
.c-box__bottom-desc-txt {
    display: block;
    font-size: calc(16 / var(--root-fz) * 1rem);
    line-height: 2;
    letter-spacing: 0.01em;
    margin-top: 10px;
    padding-left: 1em;
    text-indent: -1.1em;
    font-weight: 500;
}
@media screen and (max-width: 767px) {
    .c-box__bottom-desc-txt {
        font-size: calc(28 / var(--root-fz) * 1rem);
        letter-spacing: 0.03em;
        line-height: 1.8571428571;
        margin-top: 0;
        padding-left: 1.5em;
        text-indent: -1.1em;
    }
}
.windows .c-box__bottom-desc-txt {
    text-indent: -1.1em;
}
@media screen and (max-width: 767px) {
    .windows .c-box__bottom-desc-txt {
        text-indent: -1.2em;
    }
}

.safari .c-box__bottom-desc-txt {
    text-indent: -1.2em;
}

.iphone .c-box__bottom-desc-txt {
    padding-left: 1.5em;
    text-indent: -1.3em;
}

@media screen and (max-width: 767px) {
    .c-box__bottom-desc-txt:first-child {
        margin-top: 4px;
    }
}
.c-box__bottom-desc-txt:nth-of-type(2) {
    margin-top: 0;
}

/* ---------------------------------------------
*   c-btn
--------------------------------------------- */
/* ---------------------------------------------
*   c-card
--------------------------------------------- */
.c-card {
    max-width: 320px;
    width: 100%;
    padding: 27px 34px;
    background-color: #f2e1dd;
}
@media screen and (max-width: 767px) {
    .c-card {
        max-width: none;
        width: 100%;
        padding: 18px;
    }
}
.c-card__head {
    text-align: center;
}
.c-card__head-img {
    display: block;
    width: 100px;
    height: 100px;
    margin-inline: auto;
}
@media screen and (max-width: 767px) {
    .c-card__head-img {
        width: 78px;
        height: 78px;
    }
}
@media screen and (max-width: 767px) {
    .c-card__head-img img {
        display: block;
        width: 100%;
    }
}
.c-card__body {
    text-align: center;
    margin-top: 18px;
}
.c-card__ttl {
    font-size: calc(20 / var(--root-fz) * 1rem);
    line-height: 1.2;
    letter-spacing: 0.01em;
    font-weight: bold;
}
@media screen and (max-width: 767px) {
    .c-card__ttl {
        font-size: calc(30 / var(--root-fz) * 1rem);
        line-height: 1.2;
        letter-spacing: 0.05em;
    }
}
.c-card__foot {
    margin-top: 16px;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    -moz-column-gap: 7px;
         column-gap: 7px;
    row-gap: 9px;
}
@media screen and (max-width: 767px) {
    .c-card__foot {
        row-gap: 8px;
        margin-top: 12px;
    }
}
.c-card__foot-txt {
    font-size: calc(16 / var(--root-fz) * 1rem);
    line-height: 1.2;
    letter-spacing: 0.01em;
    background-color: #fff;
    border-radius: 19px;
    padding: 9px 12px;
    font-weight: bold;
}
@media screen and (max-width: 1071px) {
    .c-card__foot-txt {
        border-radius: 30px;
        padding: 12px;
    }
}
@media screen and (max-width: 767px) {
    .c-card__foot-txt {
        font-size: calc(24 / var(--root-fz) * 1rem);
        letter-spacing: 0.05em;
        line-height: 1.5;
        border-radius: 15px;
        padding: 6px;
    }
}

/* ---------------------------------------------
*   c-cassette
--------------------------------------------- */
.c-cassette {
    border: 1px solid #000;
    margin-top: 26px;
}
@media screen and (max-width: 767px) {
    .c-cassette {
        margin-top: 22px;
    }
}
.c-cassette--02 {
    margin-top: 31px;
}
@media screen and (max-width: 767px) {
    .c-cassette--02 {
        margin-top: 22px;
    }
}
.c-cassette--02 .c-cassette__body {
    justify-content: left;
    padding: 11px 30px;
}
@media screen and (max-width: 767px) {
    .c-cassette--02 .c-cassette__body {
        padding: 15px 20px;
    }
}
.c-cassette__head {
    padding: 13px 10px;
    background-color: #ca0a13;
    border-bottom: 1px solid #000;
    text-align: center;
}
@media screen and (max-width: 767px) {
    .c-cassette__head {
        padding: 6px 10px;
    }
}
.c-cassette__ttl {
    font-size: calc(16 / var(--root-fz) * 1rem);
    line-height: 1.625;
    letter-spacing: 0.14em;
    color: #fff;
    font-weight: bold;
}
@media screen and (max-width: 767px) {
    .c-cassette__ttl {
        font-size: calc(28 / var(--root-fz) * 1rem);
        letter-spacing: 0.05em;
        line-height: 1.4285714286;
    }
}
.c-cassette__body {
    display: flex;
    align-items: center;
    -moz-column-gap: 25px;
         column-gap: 25px;
    justify-content: center;
    padding: 17px 10px;
}
@media screen and (max-width: 767px) {
    .c-cassette__body {
        flex-wrap: wrap;
        row-gap: 9px;
        padding: 22px 17px;
    }
}
.c-cassette__body--02 {
    -moz-column-gap: 84px;
         column-gap: 84px;
}
.c-cassette__body-ttl {
    font-weight: bold;
}
.c-cassette__body-ttl, .c-cassette__body-txt {
    font-size: calc(16 / var(--root-fz) * 1rem);
    line-height: 2;
    letter-spacing: 0.01em;
}
@media screen and (max-width: 767px) {
    .c-cassette__body-ttl, .c-cassette__body-txt {
        font-size: calc(28 / var(--root-fz) * 1rem);
        line-height: 1.8571428571;
        letter-spacing: 0.05em;
    }
}
.c-cassette__body-txt {
    font-weight: 500;
}

/* ---------------------------------------------
*   c-figure
--------------------------------------------- */
/* ---------------------------------------------
*   c-form
--------------------------------------------- */
/* ---------------------------------------------
*   c-kv
--------------------------------------------- */
.c-kv__img:after {
    background-color: var(--color-brown-1) !important;
    opacity: 1 !important;
}
@media screen and (max-width: 1140px) {
    .c-kv {
        height: 255px !important;
    }
}
@media screen and (max-width: 767px) {
    .c-kv {
        height: 227px !important;
        padding-top: 0;
    }
}
.c-kv__survice {
    line-height: 1 !important;
    padding-bottom: 8px !important;
    margin-top: 18px !important;
    padding-bottom: 7px !important;
    letter-spacing: 0.05em;
    margin-bottom: 8px !important;
}
@media screen and (max-width: 1140px) {
    .c-kv__survice {
        margin-top: 8px !important;
        margin-bottom: 0 !important;
    }
}
@media screen and (max-width: 767px) {
    .c-kv__survice {
        margin-top: 0 !important;
    }
}
.c-kv__container {
    flex-direction: column;
}
@media screen and (max-width: 767px) {
    .c-kv__container {
        justify-content: center !important;
    }
}
.c-kv__inner {
    margin-inline: 0 auto !important;
}
.c-kv__ttl {
    font-size: calc(18 / var(--root-fz) * 1rem) !important;
    line-height: 1.6666666667 !important;
    color: white !important;
}
@media screen and (max-width: 767px) {
    .c-kv__ttl {
        font-size: calc(30 / var(--root-fz) * 1rem) !important;
        line-height: 1.5666666667;
        letter-spacing: normal !important;
    }
}
.c-kv__ttl-strong {
    display: inline-block;
    font-size: calc(24 / var(--root-fz) * 1rem);
    line-height: 1.25;
    font-weight: bold;
}
@media screen and (max-width: 767px) {
    .c-kv__ttl-strong {
        font-size: calc(38 / var(--root-fz) * 1rem);
        line-height: 1.4736842105;
        letter-spacing: -0.01em;
    }
    .iphone .c-kv__ttl-strong {
        letter-spacing: -0.04em;
    }
}
.c-kv__link-inner {
    width: 100%;
    display: flex;
    -moz-column-gap: 9px;
         column-gap: 9px;
}
@media screen and (max-width: 767px) {
    .c-kv__link-inner {
        align-items: center;
        flex-direction: column;
        row-gap: 6px;
        margin-top: 25px;
    }
}
.c-kv__link-container {
    width: 100%;
    margin: 6px auto 0 0;
    display: flex;
    -moz-column-gap: 9px;
         column-gap: 9px;
}
@media screen and (max-width: 1140px) {
    .c-kv__link-container {
        margin-top: 2px;
    }
}

/* --------------------------------------------*   c-lin
*   c-link-download
--------------------------------------------- */
.c-link-download {
    max-width: 250px;
    width: 100%;
    height: 40px;
    text-align: center;
}
@media screen and (max-width: 767px) {
    .c-link-download {
        max-width: 300px;
        height: 100%;
    }
}
.c-link-download__link {
    display: block;
    position: relative;
    font-size: calc(16 / var(--root-fz) * 1rem);
    padding: 11px 8px;
    color: #000;
    font-weight: bold;
    border-radius: 20px;
    transition: 0.3s;
    background-color: #ead36a;
    border-radius: 20px;
}
@media screen and (max-width: 767px) {
    .c-link-download__link {
        font-size: calc(30 / var(--root-fz) * 1rem);
        letter-spacing: 0.05em;
        padding: 16px 5px;
        border-radius: 22.5px;
    }
}
@media screen and (min-width: 766px) {
    .c-link-download__link:hover {
        opacity: 0.8;
        text-decoration: none;
    }
}
@media screen and (max-width: 767px) {
    .c-link-download__link:hover {
        text-decoration: none;
    }
}
.c-link-download__link::after {
    position: absolute;
    content: "";
    display: block;
    width: 7px;
    height: 7px;
    border-top: 2px solid #000;
    border-right: 2px solid #1a1a1a;
    top: 17px;
    right: 16px;
    transform: rotate(45deg);
}
@media screen and (max-width: 767px) {
    .c-link-download__link::after {
        top: 20px;
        right: 24px;
        width: 6px;
        height: 6px;
    }
}

/* ---------------------------------------------
*   c-link-contact
--------------------------------------------- */
.c-link-contact {
    max-width: 250px;
    width: 100%;
    height: 40px;
    text-align: center;
}
@media screen and (max-width: 767px) {
    .c-link-contact {
        max-width: 300px;
        height: 100%;
        margin-inline: auto;
    }
}
.c-link-contact--w330 {
    border-radius: 27px;
    max-width: 330px;
    height: 55px;
}
@media screen and (max-width: 767px) {
    .c-link-contact--w330 {
        max-width: 300px;
        height: 100%;
        margin-top: 7px;
    }
}
.c-link-contact--w330 .c-link-contact__link {
    font-size: calc(20 / var(--root-fz) * 1rem);
    padding: 17px 10px;
    border-radius: 27px;
}
@media screen and (max-width: 767px) {
    .c-link-contact--w330 .c-link-contact__link {
        font-size: calc(30 / var(--root-fz) * 1rem);
        padding: 16px 5px;
        border-radius: 23px;
    }
}
.c-link-contact--w330 .c-link-contact__link::after {
    width: 10px;
    height: 10px;
    top: 21px;
}
@media screen and (max-width: 767px) {
    .c-link-contact--w330 .c-link-contact__link::after {
        width: 6px;
        height: 6px;
        top: 20px;
        right: 23px;
    }
}
.c-link-contact--w510 {
    max-width: 510px;
    width: 100%;
}
.c-link-contact__link {
    display: block;
    position: relative;
    font-size: calc(16 / var(--root-fz) * 1rem);
    letter-spacing: 0.04em;
    padding: 11px 8px;
    color: #fff;
    font-weight: bold;
    transition: 0.3s;
    background-color: #d1000a;
    border-radius: 20px;
}
@media screen and (max-width: 767px) {
    .c-link-contact__link {
        font-size: calc(30 / var(--root-fz) * 1rem);
        padding: 16px 5px;
        border-radius: 23px;
    }
}
.c-link-contact__link::after {
    position: absolute;
    content: "";
    display: block;
    width: 7px;
    height: 7px;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    top: 17px;
    right: 21px;
    transform: rotate(45deg);
}
@media screen and (max-width: 767px) {
    .c-link-contact__link::after {
        width: 6px;
        height: 6px;
        top: 20px;
        right: 24px;
    }
}
@media screen and (min-width: 766px) {
    .c-link-contact__link:hover {
        opacity: 0.8;
        text-decoration: none;
    }
}
@media screen and (max-width: 767px) {
    .c-link-contact__link:hover {
        text-decoration: none;
    }
}

/* ---------------------------------------------
*   c-link-service
--------------------------------------------- */
.c-link-service {
    max-width: 330px;
    width: 100%;
    height: 55px;
    text-align: center;
}
@media screen and (max-width: 767px) {
    .c-link-service {
        max-width: 300px;
        height: 100%;
        margin-inline: auto;
    }
}
.c-link-service__link {
    position: relative;
    display: block;
    font-size: calc(20 / var(--root-fz) * 1rem);
    letter-spacing: 0.04em;
    color: #fff;
    padding: 17px 10px;
    font-weight: bold;
    transition: 0.3s;
    background-color: #043077;
    border-radius: 27px;
}
@media screen and (max-width: 767px) {
    .c-link-service__link {
        font-size: calc(30 / var(--root-fz) * 1rem);
        padding: 16px 5px;
        border-radius: 23px;
    }
}
.c-link-service__link::after {
    position: absolute;
    content: "";
    display: block;
    width: 10px;
    height: 10px;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    top: 21px;
    right: 21px;
    transform: rotate(45deg);
}
@media screen and (max-width: 767px) {
    .c-link-service__link::after {
        width: 6px;
        height: 6px;
        top: 20px;
        right: 23px;
    }
}
@media screen and (min-width: 766px) {
    .c-link-service__link:hover {
        opacity: 0.8;
        text-decoration: none;
    }
}
@media screen and (max-width: 767px) {
    .c-link-service__link:hover {
        text-decoration: none;
    }
}

/* ---------------------------------------------
*   c-link
--------------------------------------------- */
.c-link {
    max-width: 300px;
    width: 100%;
    height: 40px;
    text-align: center;
    margin-top: 23px;
}
@media screen and (max-width: 830px) {
    .c-link {
        margin: 10px auto 0;
    }
}
@media screen and (max-width: 767px) {
    .c-link {
        max-width: 280px;
        height: 100%;
        margin-top: 22px;
    }
}
.c-link__link {
    position: relative;
    display: block;
    color: #fff;
    padding: 11px 10px;
    font-size: calc(16 / var(--root-fz) * 1rem);
    letter-spacing: 0.04em;
    font-weight: bold;
    transition: 0.3s;
    background-color: #d1000a;
    border-radius: 27px;
}
@media screen and (max-width: 767px) {
    .c-link__link {
        padding: 10px 5px;
        font-size: calc(24 / var(--root-fz) * 1rem);
    }
}
.safari .c-link__link {
    padding: 12px 10px 11px;
}
@media screen and (max-width: 767px) {
    .safari .c-link__link {
        padding: 11px 5px 9px;
    }
}

.c-link__link::after {
    position: absolute;
    content: "";
    display: block;
    width: 7px;
    height: 7px;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    top: 15px;
    right: 15px;
    transform: rotate(45deg);
}
@media screen and (max-width: 767px) {
    .c-link__link::after {
        width: 5px;
        height: 5px;
        top: 13px;
        right: 17px;
    }
}
@media screen and (min-width: 766px) {
    .c-link__link:hover {
        opacity: 0.8;
        text-decoration: none;
    }
}
@media screen and (max-width: 767px) {
    .c-link__link:hover {
        text-decoration: none;
    }
}

/* ---------------------------------------------
*   c-section-top
--------------------------------------------- */
.c-section-top {
    margin-top: 41px !important;
}
@media screen and (max-width: 767px) {
    .c-section-top {
        margin-top: 51px !important;
    }
}
.c-section-top__container {
    margin-top: 65px !important;
    display: flex;
    -moz-column-gap: 11px;
         column-gap: 11px;
}
@media screen and (max-width: 767px) {
    .c-section-top__container {
        flex-direction: column;
        row-gap: 25px;
        margin-top: 64px !important;
    }
}

/* ---------------------------------------------
*   c-section-lead
--------------------------------------------- */
.c-section-lead {
    margin-top: 81px !important;
}
@media screen and (max-width: 767px) {
    .c-section-lead {
        margin-top: 73px !important;
    }
}
.c-section-lead__sub-ttl {
    display: inline-block;
    font-size: calc(20 / var(--root-fz) * 1rem);
    line-height: 1.8;
    letter-spacing: 0.01em;
    font-weight: bold;
    margin-top: 21px;
}
@media screen and (max-width: 767px) {
    .c-section-lead__sub-ttl {
        font-size: calc(30 / var(--root-fz) * 1rem);
        line-height: 1.2;
        letter-spacing: 0.05em;
    }
}
.c-section-lead__desc {
    font-size: calc(16 / var(--root-fz) * 1rem);
    line-height: 2;
    letter-spacing: 0.03em;
    margin-top: 11px;
    font-weight: 500;
}
@media screen and (max-width: 767px) {
    .c-section-lead__desc {
        font-size: calc(28 / var(--root-fz) * 1rem);
        letter-spacing: 0.05em;
        line-height: 1.8571428571;
        margin-top: 17.5;
    }
}
.c-section-lead__desc strong {
    font-weight: bold;
}
.c-section-lead__img {
    max-width: 824px;
    margin: 45px auto 0;
}
@media screen and (max-width: 767px) {
    .c-section-lead__img {
        max-width: none;
        width: calc(248 / var(--design-width) * 100vw);
        margin: 29px auto 0;
    }
}

/* ---------------------------------------------
*   c-section-approach
--------------------------------------------- */
.c-section-approach {
    margin-top: 81px !important;
}
@media screen and (max-width: 767px) {
    .c-section-approach {
        margin-top: 62px !important;
    }
}

/* ---------------------------------------------
*   c-section-example
--------------------------------------------- */
.c-section-example {
    margin-top: 90px !important;
}
@media screen and (max-width: 767px) {
    .c-section-example {
        margin-top: 77px !important;
    }
}

/* ---------------------------------------------
*   c-section-interview
--------------------------------------------- */
.c-section-interview {
    margin-top: 95px !important;
    margin-bottom: 98px !important;
}
@media screen and (max-width: 767px) {
    .c-section-interview {
        margin-top: 81px !important;
        margin-bottom: 74px !important;
    }
}
.c-section-interview__ttl {
    display: inline-block;
    font-size: calc(24 / var(--root-fz) * 1rem);
    line-height: 1.5;
    letter-spacing: 0.09em;
}
@media screen and (max-width: 767px) {
    .c-section-interview__ttl {
        font-size: calc(36 / var(--root-fz) * 1rem);
        line-height: 1.5;
        letter-spacing: 0.09em;
    }
}
.c-section-interview__container {
    width: 100%;
    display: flex;
    margin-top: 22px;
}
@media screen and (max-width: 767px) {
    .c-section-interview__container {
        display: block;
    }
}
.c-section-interview__container-desc {
    max-width: 563px;
    width: 100%;
    background-color: #f2e1dd;
}
@media screen and (max-width: 767px) {
    .c-section-interview__container-desc {
        max-width: none;
    }
}
.c-section-interview__container-desc-inner {
    max-width: 490px;
    margin-inline: auto;
    padding: 10px 25px 10px;
    transform: translateY(32px);
}
@media screen and (max-width: 960px) {
    .c-section-interview__container-desc-inner {
        transform: translateY(0);
        padding-left: 20px;
    }
}
@media screen and (max-width: 767px) {
    .c-section-interview__container-desc-inner {
        max-width: none;
        padding: 50px 25px 58px;
    }
}
.c-section-interview__container-ttl {
    font-size: calc(20 / var(--root-fz) * 1rem);
    line-height: 1.6;
    letter-spacing: 0.11em;
    font-weight: bold;
}
@media screen and (max-width: 767px) {
    .c-section-interview__container-ttl {
        font-size: calc(30 / var(--root-fz) * 1rem);
        line-height: 1.6;
        letter-spacing: 0.08em;
    }
}
.c-section-interview__container-note {
    display: block;
    font-size: calc(16 / var(--root-fz) * 1rem);
    line-height: 2;
    letter-spacing: 0.01em;
    margin-top: 4px;
    font-weight: 500;
}
@media screen and (max-width: 830px) {
    .c-section-interview__container-note {
        margin-top: 5px;
    }
}
@media screen and (max-width: 767px) {
    .c-section-interview__container-note {
        font-size: calc(24 / var(--root-fz) * 1rem);
        letter-spacing: 0.05em;
        line-height: 2;
        margin-top: 0;
    }
}
.c-section-interview__container-img {
    max-width: 420px;
    width: 100%;
}
@media screen and (max-width: 767px) {
    .c-section-interview__container-img {
        max-width: none;
    }
}
@media screen and (max-width: 767px) {
    .c-section-interview__container-img img {
        display: block;
        width: 100%;
    }
}

/* ---------------------------------------------
*   c-slider
--------------------------------------------- */
/* ---------------------------------------------
*   c-tile
--------------------------------------------- */
/* ---------------------------------------------
*   c-ttl
--------------------------------------------- */
.c-ttl {
    position: relative;
    padding-bottom: 18px;
}
@media screen and (max-width: 767px) {
    .c-ttl {
        padding-bottom: 13px;
    }
}
.c-ttl::after {
    position: absolute;
    content: "";
    display: block;
    bottom: 0;
    left: 50%;
    width: 80px;
    height: 3px;
    margin-top: 12px;
    background-color: #a7381d;
    transform: translateX(-50%);
}
.c-ttl__ttl {
    position: relative;
    font-size: calc(36 / var(--root-fz) * 1rem);
    line-height: 1.4444444444;
    text-align: center;
    letter-spacing: 0.09em;
}
@media screen and (max-width: 767px) {
    .c-ttl__ttl {
        font-size: calc(48 / var(--root-fz) * 1rem);
        line-height: 1.6666666667;
        letter-spacing: 0.05em;
    }
    .android .c-ttl__ttl .is-android {
        display: none;
    }
}

/* ---------------------------------------------
*   c-ttl-02
--------------------------------------------- */
.c-ttl-02 {
    padding: 7px 10px;
    border-top: 2px solid #a7381d;
    border-bottom: 2px solid #a7381d;
    text-align: center;
}
@media screen and (max-width: 767px) {
    .c-ttl-02 {
        padding: 7px 0;
    }
    .android .c-ttl-02 .is-android {
        display: none;
    }
}
.c-ttl-02--02 {
    padding: 0 10px 3px;
}
.windows .c-ttl-02--02 {
    padding-top: 2px;
}

@media screen and (max-width: 767px) {
    .c-ttl-02--02 {
        padding: 11px 5px;
    }
}
.c-ttl-02--02 .c-ttl-02__txt {
    line-height: 1.3;
}
.c-ttl-02__txt {
    font-size: calc(30 / var(--root-fz) * 1rem);
    line-height: 1.2;
    letter-spacing: 0.06em;
    color: #531c0e;
}
@media screen and (max-width: 767px) {
    .c-ttl-02__txt {
        font-size: calc(42 / var(--root-fz) * 1rem);
        line-height: 1.5;
        letter-spacing: 0.01em;
    }
}
@media screen and (max-width: 767px) {
    .c-ttl-02__txt--ls {
        letter-spacing: -0.01em;
    }
    .windows .c-ttl-02__txt--ls {
        letter-spacing: -0.04em;
    }
}
.c-ttl-02__txt strong {
    font-size: calc(48 / var(--root-fz) * 1rem);
}
@media screen and (max-width: 767px) {
    .c-ttl-02__txt strong {
        font-size: calc(68 / var(--root-fz) * 1rem);
        line-height: 1.0588235294;
    }
}
.c-ttl-02__txt--small {
    display: inline-block;
    font-size: calc(24 / var(--root-fz) * 1rem);
    line-height: 1.5;
}
@media screen and (max-width: 767px) {
    .c-ttl-02__txt--small {
        font-size: calc(36 / var(--root-fz) * 1rem);
        line-height: 1.5;
    }
}

/* ---------------------------------------------
*   c-ttl-03
--------------------------------------------- */
.c-ttl-03 {
    margin-top: 57px;
    display: flex;
    align-items: center;
    -moz-column-gap: 20px;
         column-gap: 20px;
}
@media screen and (max-width: 767px) {
    .c-ttl-03 {
        justify-content: flex-start;
        margin-top: 44px;
        -moz-column-gap: 8px;
             column-gap: 8px;
    }
}
.c-ttl-03__label {
    text-align: center;
    max-width: 140px;
    width: 100%;
    display: inline-block;
    padding: 0 10px;
    background-color: #531c0e;
}
@media screen and (max-width: 767px) {
    .c-ttl-03__label {
        max-width: 105px;
        width: 100%;
        font-size: calc(24 / var(--root-fz) * 1rem);
        line-height: 2.25;
    }
}
.c-ttl-03__txt {
    color: #fff;
    font-size: calc(16 / var(--root-fz) * 1rem);
    line-height: 2;
    letter-spacing: 0.01em;
    font-weight: 600;
}
@media screen and (max-width: 767px) {
    .c-ttl-03__txt {
        font-size: calc(24 / var(--root-fz) * 1rem);
        line-height: 2.25;
        letter-spacing: 0.05em;
    }
}
.c-ttl-03__ttl {
    display: inline-block;
    font-size: calc(24 / var(--root-fz) * 1rem);
    line-height: 1.5;
    letter-spacing: 0.06em;
    color: #531c0e;
}
@media screen and (max-width: 767px) {
    .c-ttl-03__ttl {
        font-size: calc(36 / var(--root-fz) * 1rem);
        letter-spacing: -0.01em;
        line-height: 1.5;
    }
}

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

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

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

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

.txt-al-right {
    text-align: right !important;
}

.txt-al-left {
    text-align: left !important;
}

/* ---------------------------------------------
*   anchor
--------------------------------------------- */
#anchor-01,
#anchor-02,
#anchor-03 {
    padding-top: 20px;
    margin-top: -20px;
}

.js-tel-disabled {
    pointer-events: none;
}

@media print and (min-width: 768px), screen and (min-width: 768px) {
    .pc-hide {
        display: none !important;
    }
}
@media print and (max-width: 767px), screen and (max-width: 767px) {
    .sp-hide {
        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: 767px) {
    .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: 767px) {
    .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;
    }
}

/* ---------------------------------------------
*   共通パーツ用
--------------------------------------------- */
main .contact.contact02 {
    background-image: url("../images/bg_contact03.jpg");
}

footer .fwrap02 nav ul li {
    background: url(../images/icon_link.svg) no-repeat left center;
}

@media screen and (max-width:1139px) {
    header #localnav #head_menu {
      display: table-cell;
      vertical-align: middle;
      text-align: center;
      width: 80px;
      background: url(../images/menu.svg) no-repeat center center;
      background-size: 50% auto;
      cursor: pointer;
    }
}

  @media screen and (max-width:767px) {
    header #localnav #head_menu {
      display: table-cell;
      vertical-align: middle;
      text-align: center;
      width: 60px;
      background: url(../images/menu.svg) no-repeat center center;
      background-size: 45% auto;
      cursor: pointer;
    }
}

nav#ovmenu #ovmenu_head #head_menu_close {
    display: table-cell;
    vertical-align: middle;
    text-align: center;
    width: 80px;
    background: url(../images/icon_close.png) no-repeat center center;
    background-size: 33% auto;
    cursor: pointer;
}

@media screen and (max-width:767px) {
    nav#ovmenu #ovmenu_head #head_menu_close {
        display: table-cell;
        vertical-align: middle;
        text-align: center;
        width: 60px;
        background: url(../images/icon_close.png) no-repeat center center;
        background-size: 33% auto;
        cursor: pointer;
    }
}
