@charset "utf-8";

/*フォント読み込み*/
@import url("https://fonts.googleapis.com/css2?family=Kaisei+Opti:wght@400;500;700&family=Kosugi&family=Noto+Sans+JP&family=Whisper&display=swap");

/*フォントオーサムをcssで読み込み*/
@import url("https://use.fontawesome.com/releases/v6.2.0/css/all.css");

/* # root1 START # */
/*:root {
    --txt-font-00: "Kosugi", sans-serif;
    --txt-font-01: "Kaisei Opti", serif;
    --txt-font-02: "Whisper";
    --txt-color-00: #fff;
    --txt-color-01: #000;
    --txt-color-02: #eb870a;
    --txt-color-03: #f6eeeb;
    --txt-color-04: #f1c25a;
    --txt-color-05: #f3efe4;
    --txt-color-06: #fff4ea;
    --back-color-00: #fff;
    --back-color-01: #000;
    --back-color-02: #eb870a;
    --back-color-03: #f6eeeb;
    --back-color-04: #f1c25a;
    --back-color-05: #f3efe4;
    --back-color-06: #fff4ea;
    --ttl-color-00: #fff;
    --ttl-color-01: #000;
    --ttl-color-02: #eb870a;
    --ttl-color-03: #f6eeeb;
    --ttl-color-04: #f1c25a;
    --ttl-color-05: #f3efe4;
    --ttl-color-06: #fff4ea;
    --btn-color-00: #fff;
    --btn-color-01: #000;
    --btn-color-02: #eb870a;
    --btn-color-03: #f6eeeb;
    --btn-color-04: #f1c25a;
    --btn-color-05: #f3efe4;
    --btn-color-06: #fff4ea;
    --bg-deco-01: url('/import/tenant_1/162.43.7.125/images/deco-02.webp');
    --bg-deco-02: url('/import/tenant_1/162.43.7.125/images/deco-04.webp');
    --bg-deco-03: url('/import/tenant_1/162.43.7.125/images/deco-05.webp');
    --bg-deco-04: url('/import/tenant_1/162.43.7.125/images/tel-02.webp');
    --filter: invert(49%) sepia(93%) saturate(1004%) hue-rotate(2deg) brightness(98%) contrast(93%);
}

*/
/* # root1 END # */

/* # root2 START # */
:root {
    --txt-font-00: "Kosugi", sans-serif;
    --txt-font-01: "Kaisei Opti", serif;
    --txt-font-02: "Whisper";
    --txt-color-00: #fff;
    --txt-color-01: #000;
    --txt-color-02: #4682b4;
    --txt-color-03: #bac5cd;
    --txt-color-04: #6d94b5;
    --txt-color-05: #f1f5f9;
    --txt-color-06: #f1f5f9;
    --back-color-00: #fff;
    --back-color-01: #000;
    --back-color-02: #4682b4;
    --back-color-03: #bac5cd;
    --back-color-04: #6d94b5;
    --back-color-05: #f1f5f9;
    --back-color-06: #f1f5f9;
    --ttl-color-00: #fff;
    --ttl-color-01: #000;
    --ttl-color-02: #4682b4;
    --ttl-color-03: #bac5cd;
    --ttl-color-04: #6d94b5;
    --ttl-color-05: #f1f5f9;
    --ttl-color-06: #f1f5f9;
    --btn-color-00: #fff;
    --btn-color-01: #000;
    --btn-color-02: #4682b4;
    --btn-color-03: #bac5cd;
    --btn-color-04: #6d94b5;
    --btn-color-05: #f1f5f9;
    --btn-color-06: #f1f5f9;
    --bg-deco-01: url('/import/tenant_1/162.43.7.125/images/deco-02_002.webp');
    --bg-deco-02: url('/import/tenant_1/162.43.7.125/images/deco-04_002.webp');
    --bg-deco-03: url('/import/tenant_1/162.43.7.125/images/deco-05_002.webp');
    --bg-deco-04: url('/import/tenant_1/162.43.7.125/images/tel-02_002.webp');
    --filter: invert(46%) sepia(44%) saturate(539%) hue-rotate(165deg) brightness(94%) contrast(96%);
}
/* # root2 END # */

/* # root3 START # */
/*:root {
    --txt-font-00: "Kosugi", sans-serif;
    --txt-font-01: "Kaisei Opti", serif;
    --txt-font-02: "Whisper";
    --txt-color-00: #fff;
    --txt-color-01: #000;
    --txt-color-02: #2e8b57;
    --txt-color-03: #e4f9ed;
    --txt-color-04: #87d1a7;
    --txt-color-05: #eaefec;
    --txt-color-06: #fff4ea;
    --back-color-00: #fff;
    --back-color-01: #000;
    --back-color-02: #2e8b57;
    --back-color-03: #e4f9ed;
    --back-color-04: #87d1a7;
    --back-color-05: #eaefec;
    --back-color-06: #fff4ea;
    --ttl-color-00: #fff;
    --ttl-color-01: #000;
    --ttl-color-02: #2e8b57;
    --ttl-color-03: #e4f9ed;
    --ttl-color-04: #87d1a7;
    --ttl-color-05: #eaefec;
    --ttl-color-06: #fff4ea;
    --btn-color-00: #fff;
    --btn-color-01: #000;
    --btn-color-02: #2e8b57;
    --btn-color-03: #e4f9ed;
    --btn-color-04: #87d1a7;
    --btn-color-05: #eaefec;
    --btn-color-06: #fff4ea;
    --bg-deco-01: url('/import/tenant_1/162.43.7.125/images/deco-02_003.webp');
    --bg-deco-02: url('/import/tenant_1/162.43.7.125/images/deco-04_003.webp');
    --bg-deco-03: url('/import/tenant_1/162.43.7.125/images/deco-05_003.webp');
    --bg-deco-04: url('/import/tenant_1/162.43.7.125/images/tel-02_003.webp');
    --filter: invert(48%) sepia(9%) saturate(2696%) hue-rotate(94deg) brightness(91%) contrast(86%);
}

*/
/* # root3 END # */


/*どのサイトも共通の内容を記載*/
/*基本的に触らない*/

/*共通*/
:before,
:after {
    pointer-events: none;
}

.main>* {
    position: relative;
}

.up-h-100\% {
    height: 100%;
}

.up-ofi {
    height: 100%;
}

.js-toggle {
    cursor: pointer;
}

.js-toggle+* {
    display: none;
}

[data-element-id] .js-toggle+* {
    display: block;
}

.up-d-inline {
    display: inline;
}

@media (max-width: 1024px) {
    .up-d-inline\@tb {
        display: inline;
    }
}

@media (max-width: 599px) {
    .up-d-inline\@sp {
        display: inline;
    }
}

[data-element-id] .up-d-none {
    display: block;
    border: solid 4px green;
    position: relative;
}

[data-element-id] .up-d-none:after {
    content: "公開画面では表示されない";
    display: block;
    padding: 5px;
    font-weight: 700;
    font-size: 16px;
    color: #fff;
    text-align: center;
    background: green;
}

[data-element-id] .up-show\@tb {
    display: block;
    border: solid 4px green;
    position: relative;
}

[data-element-id] .up-show\@tb:after {
    content: "モバイル用";
    display: block;
    padding: 5px;
    font-weight: 700;
    font-size: 16px;
    color: #fff;
    text-align: center;
    background: green;
}

[data-element-id] .up-show\@sp {
    display: block;
    border: solid 4px green;
    position: relative;
}

[data-element-id] .up-show\@sp:after {
    content: "モバイル用";
    display: block;
    padding: 5px;
    font-weight: 700;
    font-size: 16px;
    color: #fff;
    text-align: center;
    background: green;
}

[data-element-id] .link-none-js {
    display: block;
    border: solid 4px green;
    position: relative;
}

[data-element-id] .link-none-js:after {
    content: "リンクが設定されていない場合は非表示になります。";
    display: block;
    padding: 5px;
    font-weight: 700;
    font-size: 12px;
    color: #fff;
    text-align: center;
    background: green;
}

[data-element-id] .fead-order>* {
    opacity: 1;
    -webkit-transform: translateY(0px);
    transform: translateY(0px);
}

@media (min-width: 1025px) {
    .scroll-hint {
        overflow: inherit !important;
    }
}

/*角丸*/
.radius-10 {
    overflow: hidden;
    border-radius: 10px;
}

.radius-20 {
    overflow: hidden;
    border-radius: 20px;
}

.radius-30 {
    overflow: hidden;
    border-radius: 30px;
}

.radius-40 {
    overflow: hidden;
    border-radius: 40px;
}

.radius-50 {
    overflow: hidden;
    border-radius: 50px;
}

.radius-top-10 {
    overflow: hidden;
    border-radius: 10px 10px 0 0;
}

.radius-top-20 {
    overflow: hidden;
    border-radius: 20px 20px 0 0;
}

.radius-top-30 {
    overflow: hidden;
    border-radius: 30px 30px 0 0;
}

.radius-top-40 {
    overflow: hidden;
    border-radius: 40px 40px 0 0;
}

.radius-top-50 {
    overflow: hidden;
    border-radius: 50px 50px 0 0;
}

.radius-bottom-10 {
    overflow: hidden;
    border-radius: 0 0 10px 10px;
}

.radius-bottom-20 {
    overflow: hidden;
    border-radius: 0 0 20px 20px;
}

.radius-bottom-30 {
    overflow: hidden;
    border-radius: 0 0 30px 30px;
}

.radius-bottom-40 {
    overflow: hidden;
    border-radius: 0 0 40px 40px;
}

.radius-bottom-50 {
    overflow: hidden;
    border-radius: 0 0 50px 50px;
}

.radius-left-10 {
    overflow: hidden;
    border-radius: 0 0 10px 10px;
}

.radius-left-20 {
    overflow: hidden;
    border-radius: 20px 0 0 20px;
}

.radius-left-30 {
    overflow: hidden;
    border-radius: 30px 0 0 30px;
}

.radius-left-40 {
    overflow: hidden;
    border-radius: 40px 0 0 40px;
}

.radius-left-50 {
    overflow: hidden;
    border-radius: 50px 0 0 50px;
}

.radius-right-10 {
    overflow: hidden;
    border-radius: 0 10px 10px 0;
}

.radius-right-20 {
    overflow: hidden;
    border-radius: 0 20px 20px 0;
}

.radius-right-30 {
    overflow: hidden;
    border-radius: 0 30px 30px 0;
}

.radius-right-40 {
    overflow: hidden;
    border-radius: 0 40px 40px 0;
}

.radius-right-50 {
    overflow: hidden;
    border-radius: 0 50px 50px 0;
}

.radius-top-right-10 {
    overflow: hidden;
    border-radius: 0 10px 0 0;
}

.radius-top-right-20 {
    overflow: hidden;
    border-radius: 0 20px 0 0;
}

.radius-top-right-30 {
    overflow: hidden;
    border-radius: 0 30px 0 0;
}

.radius-top-right-40 {
    overflow: hidden;
    border-radius: 0 40px 0 0;
}

.radius-top-right-50 {
    overflow: hidden;
    border-radius: 0 50px 0 0;
}

.radius-top-left-10 {
    overflow: hidden;
    border-radius: 10px 0 0 0;
}

.radius-top-left-20 {
    overflow: hidden;
    border-radius: 20px 0 0 0;
}

.radius-top-left-30 {
    overflow: hidden;
    border-radius: 30px 0 0 0;
}

.radius-top-left-40 {
    overflow: hidden;
    border-radius: 40px 0 0 0;
}

.radius-top-left-50 {
    overflow: hidden;
    border-radius: 50px 0 0 0;
}

.radius-bottom-right-10 {
    overflow: hidden;
    border-radius: 0 0 10px 0;
}

.radius-bottom-right-20 {
    overflow: hidden;
    border-radius: 0 0 20px 0;
}

.radius-bottom-right-30 {
    overflow: hidden;
    border-radius: 0 0 30px 0;
}

.radius-bottom-right-40 {
    overflow: hidden;
    border-radius: 0 0 40px 0;
}

.radius-bottom-right-50 {
    overflow: hidden;
    border-radius: 0 0 50px 0;
}

.radius-bottom-left-10 {
    overflow: hidden;
    border-radius: 0 0 0 10px;
}

.radius-bottom-left-20 {
    overflow: hidden;
    border-radius: 0 0 0 20px;
}

.radius-bottom-left-30 {
    overflow: hidden;
    border-radius: 0 0 0 30px;
}

.radius-bottom-left-40 {
    overflow: hidden;
    border-radius: 0 0 0 40px;
}

.radius-bottom-left-50 {
    overflow: hidden;
    border-radius: 0 0 0 50px;
}

/*ライトボックス*/
.lightbox-pic {
    position: relative;
    z-index: 0;
}

.lightbox-txt {
    width: 100%;
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    align-items: center;
    -ms-flex-align: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    text-align: center;
    background: rgba(0, 0, 0, 0.2);
    pointer-events: none;
    position: absolute;
    z-index: 1;
}

.lightbox-txt:after {
    content: "\f002";
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
}

[data-element-id] .lightbox-txt {
    pointer-events: auto;
    position: static;
}

button {
    border: none;
}

.slick-slide {
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
}

/*マップの高さ*/
.map-h-10\% {
    padding-top: 10%;
}

.map-h-20\% {
    padding-top: 20%;
}

.map-h-30\% {
    padding-top: 30%;
}

.map-h-40\% {
    padding-top: 46.4%;
}

.map-h-50\% {
    padding-top: 50%;
}

.map-h-60\% {
    padding-top: 60%;
}

.map-h-70\% {
    padding-top: 70%;
}

.map-h-80\% {
    padding-top: 80%;
}

.map-h-90\% {
    padding-top: 90%;
}

.map-h-100\% {
    padding-top: 100%;
}

@media (max-width: 1024px) {
    .map-h-10\%\@tb {
        padding-top: 10%;
    }

    .map-h-20\%\@tb {
        padding-top: 20%;
    }

    .map-h-30\%\@tb {
        padding-top: 30%;
    }

    .map-h-40\%\@tb {
        padding-top: 40%;
    }

    .map-h-50\%\@tb {
        padding-top: 50%;
    }

    .map-h-60\%\@tb {
        padding-top: 60%;
    }

    .map-h-70\%\@tb {
        padding-top: 70%;
    }

    .map-h-80\%\@tb {
        padding-top: 80%;
    }

    .map-h-90\%\@tb {
        padding-top: 90%;
    }

    .map-h-100\%\@tb {
        padding-top: 100%;
    }
}

@media (max-width: 599px) {
    .map-h-10\%\@sp {
        padding-top: 10%;
    }

    .map-h-20\%\@sp {
        padding-top: 20%;
    }

    .map-h-30\%\@sp {
        padding-top: 30%;
    }

    .map-h-40\%\@sp {
        padding-top: 40%;
    }

    .map-h-50\%\@sp {
        padding-top: 50%;
    }

    .map-h-60\%\@sp {
        padding-top: 60%;
    }

    .map-h-70\%\@sp {
        padding-top: 70%;
    }

    .map-h-80\%\@sp {
        padding-top: 80%;
    }

    .map-h-90\%\@sp {
        padding-top: 90%;
    }

    .map-h-100\%\@sp {
        padding-top: 100%;
    }
}

/*inner用*/
.up-maxw-1100 {
    max-width: 1100px;
}

.up-maxw-1200 {
    max-width: 1200px;
}

.up-maxw-1300 {
    max-width: 1300px;
}

.up-maxw-1400 {
    max-width: 1400px;
}

.up-maxw-1500 {
    max-width: 1500px;
}

[class*="section-m"],
[class*="section-p"] {
    --section-xlarge: 140px;
    --section-large: 100px;
    --section-medium: 80px;
    --section-small: 60px;
    --section-xsmall: 40px;
}

.section-my-xlarge {
    margin-top: var(--section-xlarge);
    margin-bottom: var(--section-xlarge);
}

.section-mt-xlarge {
    margin-top: var(--section-xlarge);
}

.section-mb-xlarge {
    margin-bottom: var(--section-xlarge);
}

.section-my-large {
    margin-top: var(--section-large);
    margin-bottom: var(--section-large);
}

.section-mt-large {
    margin-top: var(--section-large);
}

.section-mb-large {
    margin-bottom: var(--section-large);
}

.section-my-medium {
    margin-top: var(--section-medium);
    margin-bottom: var(--section-medium);
}

.section-mt-medium {
    margin-top: var(--section-medium);
}

.section-mb-medium {
    margin-bottom: var(--section-medium);
}

.section-my-small {
    margin-top: var(--section-small);
    margin-bottom: var(--section-small);
}

.section-mt-small {
    margin-top: var(--section-small);
}

.section-mb-small {
    margin-bottom: var(--section-small);
}

.section-my-xsmall {
    margin-top: var(--section-xsmall);
    margin-bottom: var(--section-xsmall);
}

.section-mt-xsmall {
    margin-top: var(--section-xsmall);
}

.section-mb-xsmall {
    margin-bottom: var(--section-xsmall);
}

@media (max-width: 1024px) {
    .section-my-xlarge {
        margin-top: calc(var(--section-xlarge) * 0.8);
        margin-bottom: calc(var(--section-xlarge) * 0.8);
    }

    .section-mt-xlarge {
        margin-top: calc(var(--section-xlarge) * 0.8);
    }

    .section-mb-xlarge {
        margin-bottom: calc(var(--section-xlarge) * 0.8);
    }

    .section-my-large {
        margin-top: calc(var(--section-large) * 0.8);
        margin-bottom: calc(var(--section-large) * 0.8);
    }

    .section-mt-large {
        margin-top: calc(var(--section-large) * 0.8);
    }

    .section-mb-large {
        margin-bottom: calc(var(--section-large) * 0.8);
    }

    .section-my-medium {
        margin-top: calc(var(--section-medium) * 0.8);
        margin-bottom: calc(var(--section-medium) * 0.8);
    }

    .section-mt-medium {
        margin-top: calc(var(--section-medium) * 0.8);
    }

    .section-mb-medium {
        margin-bottom: calc(var(--section-medium) * 0.8);
    }

    .section-my-small {
        margin-top: calc(var(--section-small) * 0.8);
        margin-bottom: calc(var(--section-small) * 0.8);
    }

    .section-mt-small {
        margin-top: calc(var(--section-small) * 0.8);
    }

    .section-mb-small {
        margin-bottom: calc(var(--section-small) * 0.8);
    }

    .section-my-xsmall {
        margin-top: calc(var(--section-xsmall) * 0.8);
        margin-bottom: calc(var(--section-xsmall) * 0.8);
    }

    .section-mt-xsmall {
        margin-top: calc(var(--section-xsmall) * 0.8);
    }

    .section-mb-xsmall {
        margin-bottom: calc(var(--section-xsmall) * 0.8);
    }
}

@media (max-width: 599px) {
    .section-my-xlarge {
        margin-top: calc(var(--section-xlarge) * 0.6);
        margin-bottom: calc(var(--section-xlarge) * 0.6);
    }

    .section-mt-xlarge {
        margin-top: calc(var(--section-xlarge) * 0.6);
    }

    .section-mb-xlarge {
        margin-bottom: calc(var(--section-xlarge) * 0.6);
    }

    .section-my-large {
        margin-top: calc(var(--section-large) * 0.6);
        margin-bottom: calc(var(--section-large) * 0.6);
    }

    .section-mt-large {
        margin-top: calc(var(--section-large) * 0.6);
    }

    .section-mb-large {
        margin-bottom: calc(var(--section-large) * 0.6);
    }

    .section-my-medium {
        margin-top: calc(var(--section-medium) * 0.6);
        margin-bottom: calc(var(--section-medium) * 0.6);
    }

    .section-mt-medium {
        margin-top: calc(var(--section-medium) * 0.6);
    }

    .section-mb-medium {
        margin-bottom: calc(var(--section-medium) * 0.6);
    }

    .section-my-small {
        margin-top: calc(var(--section-small) * 0.6);
        margin-bottom: calc(var(--section-small) * 0.6);
    }

    .section-mt-small {
        margin-top: calc(var(--section-small) * 0.6);
    }

    .section-mb-small {
        margin-bottom: calc(var(--section-small) * 0.6);
    }

    .section-my-xsmall {
        margin-top: calc(var(--section-xsmall) * 0.6);
        margin-bottom: calc(var(--section-xsmall) * 0.6);
    }

    .section-mt-xsmall {
        margin-top: calc(var(--section-xsmall) * 0.6);
    }

    .section-mb-xsmall {
        margin-bottom: calc(var(--section-xsmall) * 0.6);
    }
}

.section-py-xlarge {
    padding-top: var(--section-xlarge);
    padding-bottom: var(--section-xlarge);
}

.section-pt-xlarge {
    padding-top: var(--section-xlarge);
}

.section-pb-xlarge {
    padding-bottom: var(--section-xlarge);
}

.section-py-large {
    padding-top: var(--section-large);
    padding-bottom: var(--section-large);
}

.section-pt-large {
    padding-top: var(--section-large);
}

.section-pb-large {
    padding-bottom: var(--section-large);
}

.section-py-medium {
    padding-top: var(--section-medium);
    padding-bottom: var(--section-medium);
}

.section-pt-medium {
    padding-top: var(--section-medium);
}

.section-pb-medium {
    padding-bottom: var(--section-medium);
}

.section-py-small {
    padding-top: var(--section-small);
    padding-bottom: var(--section-small);
}

.section-pt-small {
    padding-top: var(--section-small);
}

.section-pb-small {
    padding-bottom: var(--section-small);
}

.section-py-xsmall {
    padding-top: var(--section-xsmall);
    padding-bottom: var(--section-xsmall);
}

.section-pt-xsmall {
    padding-top: var(--section-xsmall);
}

.section-pb-xsmall {
    padding-bottom: var(--section-xsmall);
}

@media (max-width: 1024px) {
    .section-py-xlarge {
        padding-top: calc(var(--section-xlarge) * 0.8);
        padding-bottom: calc(var(--section-xlarge) * 0.8);
    }

    .section-pt-xlarge {
        padding-top: calc(var(--section-xlarge) * 0.8);
    }

    .section-pb-xlarge {
        padding-bottom: calc(var(--section-xlarge) * 0.8);
    }

    .section-py-large {
        padding-top: calc(var(--section-large) * 0.8);
        padding-bottom: calc(var(--section-large) * 0.8);
    }

    .section-pt-large {
        padding-top: calc(var(--section-large) * 0.8);
    }

    .section-pb-large {
        padding-bottom: calc(var(--section-large) * 0.8);
    }

    .section-py-medium {
        padding-top: calc(var(--section-medium) * 0.8);
        padding-bottom: calc(var(--section-medium) * 0.8);
    }

    .section-pt-medium {
        padding-top: calc(var(--section-medium) * 0.8);
    }

    .section-pb-medium {
        padding-bottom: calc(var(--section-medium) * 0.8);
    }

    .section-py-small {
        padding-top: calc(var(--section-small) * 0.8);
        padding-bottom: calc(var(--section-small) * 0.8);
    }

    .section-pt-small {
        padding-top: calc(var(--section-small) * 0.8);
    }

    .section-pb-small {
        padding-bottom: calc(var(--section-small) * 0.8);
    }

    .section-py-xsmall {
        padding-top: calc(var(--section-xsmall) * 0.8);
        padding-bottom: calc(var(--section-xsmall) * 0.8);
    }

    .section-pt-xsmall {
        padding-top: calc(var(--section-xsmall) * 0.8);
    }

    .section-pb-xsmall {
        padding-bottom: calc(var(--section-xsmall) * 0.8);
    }
}

@media (max-width: 599px) {
    .section-py-xlarge {
        padding-top: calc(var(--section-xlarge) * 0.6);
        padding-bottom: calc(var(--section-xlarge) * 0.6);
    }

    .section-pt-xlarge {
        padding-top: calc(var(--section-xlarge) * 0.6);
    }

    .section-pb-xlarge {
        padding-bottom: calc(var(--section-xlarge) * 0.6);
    }

    .section-py-large {
        padding-top: calc(var(--section-large) * 0.6);
        padding-bottom: calc(var(--section-large) * 0.6);
    }

    .section-pt-large {
        padding-top: calc(var(--section-large) * 0.6);
    }

    .section-pb-large {
        padding-bottom: calc(var(--section-large) * 0.6);
    }

    .section-py-medium {
        padding-top: calc(var(--section-medium) * 0.6);
        padding-bottom: calc(var(--section-medium) * 0.6);
    }

    .section-pt-medium {
        padding-top: calc(var(--section-medium) * 0.6);
    }

    .section-pb-medium {
        padding-bottom: calc(var(--section-medium) * 0.6);
    }

    .section-py-small {
        padding-top: calc(var(--section-small) * 0.6);
        padding-bottom: calc(var(--section-small) * 0.6);
    }

    .section-pt-small {
        padding-top: calc(var(--section-small) * 0.6);
    }

    .section-pb-small {
        padding-bottom: calc(var(--section-small) * 0.6);
    }

    .section-py-xsmall {
        padding-top: calc(var(--section-xsmall) * 0.6);
        padding-bottom: calc(var(--section-xsmall) * 0.6);
    }

    .section-pt-xsmall {
        padding-top: calc(var(--section-xsmall) * 0.6);
    }

    .section-pb-xsmall {
        padding-bottom: calc(var(--section-xsmall) * 0.6);
    }
}

/*コンテンツ余白(*+*)*/
[class*="space-m"],
[class*="space-p"] {
    --space-xlarge: 100px;
    --space-large: 80px;
    --space-medium: 60px;
    --space-small: 40px;
    --space-xsmall: 20px;
}

.space-mt-xlarge>*+* {
    margin-top: var(--space-xlarge);
}

.space-mt-large>*+* {
    margin-top: var(--space-large);
}

.space-mt-medium>*+* {
    margin-top: var(--space-medium);
}

.space-mt-small>*+* {
    margin-top: var(--space-small);
}

.space-mt-xsmall>*+* {
    margin-top: var(--space-xsmall);
}

.space-mt-15>*+* {
    margin-top: 15px;
}

.space-mt-10>*+* {
    margin-top: 10px;
}

.space-mt-5>*+* {
    margin-top: 5px;
}

@media (max-width: 1024px) {
    .space-mt-xlarge>*+* {
        margin-top: calc(var(--space-xlarge) * 0.8);
    }

    .space-mt-large>*+* {
        margin-top: calc(var(--space-large) * 0.8);
    }

    .space-mt-medium>*+* {
        margin-top: calc(var(--space-medium) * 0.8);
    }

    .space-mt-small>*+* {
        margin-top: calc(var(--space-small) * 0.8);
    }

    .space-mt-xsmall>*+* {
        margin-top: calc(var(--space-xsmall) * 0.8);
    }

    .space-mt-none\@tb>*+* {
        margin-top: 0;
    }

    .space-mt-15\@tb>*+* {
        margin-top: 15px;
    }

    .space-mt-10\@tb>*+* {
        margin-top: 10px;
    }

    .space-mt-5\@tb>*+* {
        margin-top: 5px;
    }
}

@media (max-width: 599px) {
    .space-mt-xlarge>*+* {
        margin-top: calc(var(--space-xlarge) * 0.6);
    }

    .space-mt-large>*+* {
        margin-top: calc(var(--space-large) * 0.6);
    }

    .space-mt-medium>*+* {
        margin-top: calc(var(--space-medium) * 0.6);
    }

    .space-mt-small>*+* {
        margin-top: calc(var(--space-small) * 0.6);
    }

    .space-mt-xsmall>*+* {
        margin-top: calc(var(--space-xsmall) * 0.6);
    }

    .space-mt-none\@sp>*+* {
        margin-top: 0;
    }

    .space-mt-15\@sp>*+* {
        margin-top: 15px;
    }

    .space-mt-10\@sp>*+* {
        margin-top: 10px;
    }

    .space-mt-5\@sp>*+* {
        margin-top: 5px;
    }
}

.space-pt-xlarge>*+* {
    padding-top: var(--space-xlarge);
}

.space-pt-large>*+* {
    padding-top: var(--space-large);
}

.space-pt-medium>*+* {
    padding-top: var(--space-medium);
}

.space-pt-small>*+* {
    padding-top: var(--space-small);
}

.space-pt-xsmall>*+* {
    padding-top: var(--space-xsmall);
}

@media (max-width: 1024px) {
    .space-pt-xlarge>*+* {
        padding-top: calc(var(--space-xlarge) * 0.8);
    }

    .space-pt-large>*+* {
        padding-top: calc(var(--space-large) * 0.8);
    }

    .space-pt-medium>*+* {
        padding-top: calc(var(--space-medium) * 0.8);
    }

    .space-pt-small>*+* {
        padding-top: calc(var(--space-small) * 0.8);
    }

    .space-pt-xsmall>*+* {
        padding-top: calc(var(--space-xsmall) * 0.8);
    }
}

@media (max-width: 599px) {
    .space-pt-xlarge>*+* {
        padding-top: calc(var(--space-xlarge) * 0.6);
    }

    .space-pt-large>*+* {
        padding-top: calc(var(--space-large) * 0.6);
    }

    .space-pt-medium>*+* {
        padding-top: calc(var(--space-medium) * 0.6);
    }

    .space-pt-small>*+* {
        padding-top: calc(var(--space-small) * 0.6);
    }

    .space-pt-xsmall>*+* {
        padding-top: calc(var(--space-xsmall) * 0.6);
    }
}

/*見出し*/
[class*="-ttl-"] {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin-bottom: 30px;
    text-align: center;
}

.ttl-left {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    text-align: left;
}

.ttl-right {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    text-align: right;
}

.ttl-center {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    text-align: center;
}

@media (max-width: 1024px) {
    .ttl-left\@tb {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: start;
        -ms-flex-pack: start;
        justify-content: flex-start;
        text-align: left;
    }

    .ttl-right\@tb {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: end;
        -ms-flex-pack: end;
        justify-content: flex-end;
        text-align: right;
    }

    .ttl-center\@tb {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        text-align: center;
    }
}

@media (max-width: 599px) {
    .ttl-left\@sp {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: start;
        -ms-flex-pack: start;
        justify-content: flex-start;
        text-align: left;
    }

    .ttl-right\@sp {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: end;
        -ms-flex-pack: end;
        justify-content: flex-end;
        text-align: right;
    }

    .ttl-center\@sp {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        text-align: center;
    }
}

/*ボタン*/
[class*="-btn-"] {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin-top: 30px;
}

/*ボタン上書き用*/
.btn-left {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
}

.btn-right {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
}

.btn-center {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

@media (max-width: 1024px) {
    .btn-left\@tb {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: start;
        -ms-flex-pack: start;
        justify-content: flex-start;
    }

    .btn-right\@tb {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: end;
        -ms-flex-pack: end;
        justify-content: flex-end;
    }

    .btn-center\@tb {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
    }
}

@media (max-width: 599px) {
    .btn-left\@sp {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: start;
        -ms-flex-pack: start;
        justify-content: flex-start;
    }

    .btn-right\@sp {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: end;
        -ms-flex-pack: end;
        justify-content: flex-end;
    }

    .btn-center\@sp {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
    }
}

.float-box {
    display: block;
}

.float-box::before,
.float-box:after {
    content: "";
    display: block;
    clear: both;
}

.float-box-img {
    float: right;
}

.float-box-tit {
    float: left;
}

.float-box-content {
    float: left;
}

.float-box-wrap.-reverse .float-box-img {
    float: left;
}

.float-box-wrap.-reverse .float-box-tit {
    float: right;
}

.float-box-wrap.-reverse .float-box-content {
    float: right;
}

.float-box-wrap.-rowr .float-box:nth-of-type(odd) .float-box-img {
    float: left;
}

.float-box-wrap.-rowr .float-box:nth-of-type(odd) .float-box-tit {
    float: right;
}

.float-box-wrap.-rowr .float-box:nth-of-type(odd) .float-box-content {
    float: right;
}

.float-box-wrap.-rowr .float-box:nth-of-type(even) .float-box-img {
    float: right;
}

.float-box-wrap.-rowr .float-box:nth-of-type(even) .float-box-tit {
    float: left;
}

.float-box-wrap.-rowr .float-box:nth-of-type(even) .float-box-content {
    float: left;
}

.float-box-wrap.-alternate .float-box:nth-of-type(odd) .float-box-img {
    float: right;
}

.float-box-wrap.-alternate .float-box:nth-of-type(odd) .float-box-tit {
    float: left;
}

.float-box-wrap.-alternate .float-box:nth-of-type(odd) .float-box-content {
    float: left;
}

.float-box-wrap.-alternate .float-box:nth-of-type(even) .float-box-img {
    float: left;
}

.float-box-wrap.-alternate .float-box:nth-of-type(even) .float-box-tit {
    float: right;
}

.float-box-wrap.-alternate .float-box:nth-of-type(even) .float-box-content {
    float: right;
}

.float-box-wrap.-alternate.-rowr .float-box:nth-of-type(odd) .float-box-img {
    float: left;
}

.float-box-wrap.-alternate.-rowr .float-box:nth-of-type(odd) .float-box-tit {
    float: right;
}

.float-box-wrap.-alternate.-rowr .float-box:nth-of-type(odd) .float-box-content {
    float: right;
}

.float-box-wrap.-alternate.-rowr .float-box:nth-of-type(even) .float-box-img {
    float: right;
}

.float-box-wrap.-alternate.-rowr .float-box:nth-of-type(even) .float-box-tit {
    float: left;
}

.float-box-wrap.-alternate.-rowr .float-box:nth-of-type(even) .float-box-content {
    float: left;
}

@media (max-width: 1024px) {
    .up-fl-left\@tb {
        float: left;
    }

    .up-fl-right\@tb {
        float: right;
    }

    .up-fl-none\@tb {
        float: none;
    }

    .up-flc-left\@tb {
        clear: left;
    }

    .up-flc-rigjt\@tb {
        clear: right;
    }

    .up-flc-both\@tb {
        clear: both;
    }
}

@media (max-width: 599px) {
    .up-fl-left\@sp {
        float: left;
    }

    .up-fl-right\@sp {
        float: right;
    }

    .up-fl-none\@sp {
        float: none;
    }

    .up-flc-left\@sp {
        clear: left;
    }

    .up-flc-rigjt\@sp {
        clear: right;
    }

    .up-flc-both\@sp {
        clear: both;
    }
}

/*何個以上非表示*/
.list-hide-02>*:nth-of-type(n + 2) {
    display: none;
}

.list-hide-03>*:nth-of-type(n + 3) {
    display: none;
}

.list-hide-04>*:nth-of-type(n + 4) {
    display: none;
}

.list-hide-05>*:nth-of-type(n + 5) {
    display: none;
}

.list-hide-06>*:nth-of-type(n + 6) {
    display: none;
}

.list-show-02>*:nth-of-type(n + 2) {
    display: block;
}

.list-show-03>*:nth-of-type(n + 3) {
    display: block;
}

.list-show-04>*:nth-of-type(n + 4) {
    display: block;
}

.list-show-05>*:nth-of-type(n + 5) {
    display: block;
}

.list-show-06>*:nth-of-type(n + 6) {
    display: block;
}

@media (max-width: 1024px) {
    .list-hide-02\@tb>*:nth-of-type(n + 2) {
        display: none;
    }

    .list-hide-03\@tb>*:nth-of-type(n + 3) {
        display: none;
    }

    .list-hide-04\@tb>*:nth-of-type(n + 4) {
        display: none;
    }

    .list-hide-05\@tb>*:nth-of-type(n + 5) {
        display: none;
    }

    .list-hide-06\@tb>*:nth-of-type(n + 6) {
        display: none;
    }

    .list-show-02\@tb>*:nth-of-type(n + 2) {
        display: block;
    }

    .list-show-03\@tb>*:nth-of-type(n + 3) {
        display: block;
    }

    .list-show-04\@tb>*:nth-of-type(n + 4) {
        display: block;
    }

    .list-show-05\@tb>*:nth-of-type(n + 5) {
        display: block;
    }

    .list-show-06\@tb>*:nth-of-type(n + 6) {
        display: block;
    }
}

@media (max-width: 599px) {
    .list-hide-02\@sp>*:nth-of-type(n + 2) {
        display: none;
    }

    .list-hide-03\@sp>*:nth-of-type(n + 3) {
        display: none;
    }

    .list-hide-04\@sp>*:nth-of-type(n + 4) {
        display: none;
    }

    .list-hide-05\@sp>*:nth-of-type(n + 5) {
        display: none;
    }

    .list-hide-06\@sp>*:nth-of-type(n + 6) {
        display: none;
    }

    .list-show-02\@sp>*:nth-of-type(n + 2) {
        display: block;
    }

    .list-show-03\@sp>*:nth-of-type(n + 3) {
        display: block;
    }

    .list-show-04\@sp>*:nth-of-type(n + 4) {
        display: block;
    }

    .list-show-05\@sp>*:nth-of-type(n + 5) {
        display: block;
    }

    .list-show-06\@sp>*:nth-of-type(n + 6) {
        display: block;
    }
}

/*タブ切り替え*/
.tab-item {
    height: 0;
    visibility: hidden;
    opacity: 0;
    -webkit-transition: 0.3s;
    transition: 0.3s;
}

.tab-item.active {
    height: 100%;
    visibility: visible;
    opacity: 1;
    -webkit-transition: 0.3s;
    transition: 0.3s;
}

[data-element-id] .tab-item {
    height: auto;
    display: block;
    counter-increment: tab;
    visibility: visible;
    margin-bottom: 30px;
    border: solid 5px blue;
    opacity: 1;
}

[data-element-id] .tab-item:before {
    content: counter(tab)"å€‹ç›®ã®ã‚¿ãƒ–";
    display: block;
    margin-bottom: 10px;
    font-weight: bold;
    font-size: 16px;
    color: #fff;
    text-align: center;
    background: blue;
}

/*画像とテキスト横並びの内、画像のみinner外に*/
/* column-outside */
.column-outside-wrap .column-outside-box {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.column-outside-wrap.-alternate .column-outside-box:nth-of-type(even) {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
}

.column-outside-wrap.-rowr .column-outside-box:nth-of-type(odd) {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
}

/*右側へ要素を広げる（2カラム）*/
.column-outside-wrap.-alternate .column-outside-box:nth-of-type(odd) .column-outside-img {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    margin-right: calc(50% - 50vw);
}

.column-outside-wrap.-alternate .column-outside-box:nth-of-type(even) .column-outside-img {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    margin-left: calc(50% - 50vw);
}

/*左側へ要素を広げる（2カラム）*/
.column-outside-wrap.-rowr .column-outside-img {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    margin-left: calc(50% - 50vw);
}

@media (max-width: 1024px) {
    .column-outside-wrap.-alternate.-tab .column-outside-box:nth-of-type(odd) .column-outside-img {
        width: 100%;
        -webkit-box-flex: 1;
        -ms-flex: 1;
        flex: inherit;
        margin-right: 0;
    }

    .column-outside-wrap.-alternate-tab .column-outside-box:nth-of-type(even) .column-outside-img {
        width: 100%;
        -webkit-box-flex: 1;
        -ms-flex: 1;
        flex: inherit;
        margin-right: 0;
    }
}

@media (max-width: 599px) {
    .column-outside-wrap.-alternate .column-outside-box:nth-of-type(odd) .column-outside-img {
        width: 100%;
        -webkit-box-flex: 1;
        -ms-flex: 1;
        flex: inherit;
        margin-right: 0;
    }

    .column-outside-wrap.-alternate .column-outside-box:nth-of-type(even) .column-outside-img {
        width: 100%;
        -webkit-box-flex: 1;
        -ms-flex: 1;
        flex: inherit;
        margin-right: 0;
    }
}

/*背景に画像*/
.back-img-wrap {
    position: relative;
}

[data-element-id] .back-img-wrap .inner {
    position: relative;
}

.back-img-item {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
}

[data-element-id] .back-img-item {
    z-index: 0;
}

/*フォームリセット*/
.form input,
.form textarea {
    width: 100%;
    height: 100%;
    border: none;
}


/* 表示・非表示 */
[data-element-id] .show {
    display: block;
    border: solid 4px #008000;
    position: relative;
}

[data-element-id] .show:after {
    display: block;
    content: "PC用です。";
    color: #fff;
    font-weight: 700;
    background: #008000;
    padding: 5px;
    text-align: center;
}

[data-element-id] .show\@tb {
    display: block;
    border: solid 4px #008000;
    position: relative;
}

[data-element-id] .show\@tb:after {
    display: block;
    content: "モバイル用です。";
    color: #fff;
    font-weight: 700;
    background: #008000;
    padding: 5px;
    text-align: center;
}

[data-element-id] .show\@sp {
    display: block;
    border: solid 4px #008000;
    position: relative;
}

[data-element-id] .show\@sp:after {
    display: block;
    content: "モバイル用です。";
    color: #fff;
    font-weight: 700;
    background: #008000;
    padding: 5px;
    text-align: center;
}

[data-element-id] .show {
    display: block;
    border: solid 2px green;
    position: relative
}

[data-element-id] .show::after {
    content: 'PCのみ';
    display: block;
    font-weight: 700;
    font-size: 12px;
    color: #fff;
    text-align: center;
    background: green
}

[data-element-id] .show\@tb {
    display: block;
    border: solid 2px #00f;
    position: relative
}

[data-element-id] .show\@tb::after {
    content: 'TBのみ';
    display: block;
    font-weight: 700;
    font-size: 12px;
    color: #fff;
    text-align: center;
    background: #00f
}

[data-element-id] .show\@sp {
    display: block;
    border: solid 2px #ff1493;
    position: relative
}

[data-element-id] .show\@sp::after {
    content: 'SPのみ';
    display: block;
    font-weight: 700;
    font-size: 12px;
    color: #fff;
    text-align: center;
    background: #ff1493
}

[data-element-id] [class*=break] {
    width: 1.5em;
    height: 1.5em;
    display: inline-block;
    padding: 0;
    color: #fff;
    position: relative
}

[data-element-id] [class*=break]::before {
    width: auto;
    display: block;
    padding: .25em;
    font-size: 10px;
    color: #fff;
    line-height: 1;
    text-align: center;
    white-space: pre
}

[data-element-id] .break-pc {
    background-color: red
}

[data-element-id] .break-pc::before {
    content: 'PC\A改行'
}

[data-element-id] .break-pc-tb {
    background-color: #ff8c00
}

[data-element-id] .break-pc-tb-sp {
    background-color: #8b0000
}

[data-element-id] .break-pc-sp {
    background-color: #556b2f
}

[data-element-id] .break-tb {
    background-color: grey
}

[data-element-id] .break-tb-sp {
    background-color: #c71585
}

[data-element-id] .break-sp {
    background-color: green
}

[data-element-id] [data-ab-test-conversion-button]::after {
    content: "CV";
    display: inline-block;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    min-width: 24px;
    font-size: 12px;
    text-align: center;
    line-height: 1;
    background-color: #ff0;
    color: #000
}

[data-element-id] [data-ab-test-block] [data-ab-test-contents]+[data-ab-test-contents] {
    display: none
}

[data-element-id] [data-ab-test-contents] {
    padding: 1.5em .2em .2em;
    outline: 2px solid #8b008b;
    position: relative
}

[data-element-id] [data-ab-test-contents]::before {
    content: "Aパターン";
    width: 100%;
    display: block;
    padding: .5em .2em;
    font-size: 10px;
    color: #fff;
    line-height: 1.2;
    text-align: center;
    background-color: #8b008b;
    position: absolute;
    top: 0;
    left: 0
}

[data-element-id] [data-ab-test-contents]+[data-ab-test-contents] {
    outline: 2px solid #556b2f
}

[data-element-id] [data-ab-test-contents]+[data-ab-test-contents]::before {
    content: "Bパターン";
    background-color: #556b2f
}

[data-hide-element] {
    padding-top: 1em;
    position: relative !important
}

[data-hide-element]::before {
    content: '非表示' !important;
    font-size: 10px !important;
    line-height: inherit !important;
    -webkit-transform: unset !important;
    transform: unset !important
}

[data-hide-element]>* {
    width: 100% !important
}

[data-recommend-collection-list-content]::after {
    content: '「'attr(data-recommend-type) '」のレコメンドです。記事数は'attr(data-recommend-number) '件です。';
    width: 100%;
    display: block;
    clear: both;
    padding: 5px;
    font-weight: 700;
    font-size: 12px;
    color: #fff;
    text-align: left;
    background: indigo;
    z-index: 1000
}

mark.filtering-link-text {
    display: none;
    visibility: hidden;
    opacity: 0;
    z-index: -999
}

[data-category-search-content]+mark.filtering-link-text {
    display: block;
    background-color: #db7093;
    color: #fff;
    font-size: 10px;
    line-height: 1;
    text-align: center;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    height: 2em;
    margin: .5em;
    padding: .5em 1em;
    visibility: visible;
    opacity: 1;
    z-index: 1
}

[data-collection-list-content] {
    position: relative;
    padding-top: 1em
}

[data-collection-list-content]::after {
    content: '「'attr(data-value1) attr(data-condition1) '」のフィルタリングがされています';
    width: 100%;
    display: block;
    clear: both;
    padding: 5px;
    font-weight: 700;
    font-size: 12px;
    color: #fff;
    text-align: left;
    background: navy;
    z-index: 1000;
    position: absolute;
    bottom: 0;
    left: 0
}

[data-collection-list-content]:hover::before {
    content: 'カスタムコンテンツ（編集不可）';
    min-width: 200px;
    max-width: 100%;
    width: 100%;
    display: block;
    padding: .5em;
    font-size: 12px;
    color: #fff;
    line-height: 1.2;
    text-align: center;
    background-color: navy;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1000
}


/*カスタムプロパティ読み込み用*/
.for-bg-img {
    --bg-deco-01: url('/import/tenant_1/162.43.7.125/images/deco-02.webp');
    --bg-deco-02: url('/import/tenant_1/162.43.7.125/images/deco-04.webp');
    --bg-deco-03: url('/import/tenant_1/162.43.7.125/images/deco-05.webp');
    --bg-deco-01: url('/import/tenant_1/162.43.7.125/images/deco-02_002.webp');
    --bg-deco-02: url('/import/tenant_1/162.43.7.125/images/deco-04_002.webp');
    --bg-deco-03: url('/import/tenant_1/162.43.7.125/images/deco-05_002.webp');
    --bg-deco-01: url('/import/tenant_1/162.43.7.125/images/deco-02_003.webp');
    --bg-deco-02: url('/import/tenant_1/162.43.7.125/images/deco-04_003.webp');
    --bg-deco-03: url('/import/tenant_1/162.43.7.125/images/deco-05_003.webp');
    --bg-deco-04: url('/import/tenant_1/162.43.7.125/images/tel-02.webp');
    --bg-deco-04: url('/import/tenant_1/162.43.7.125/images/tel-02_002.webp');
    --bg-deco-04: url('/import/tenant_1/162.43.7.125/images/tel-02_003.webp');
}

/*===================================
基本設定
===================================*/
html {
    font-family: var(--txt-font-00);
    font-size: 16px;
    color: var(--txt-color-01);
}

.wrapper {
    overflow: hidden;
}

/*radiusパターン追加*/
.radius-pattern-01 {
    overflow: hidden;
    border-radius: 45% 75% 40% 80% / 61% 25% 80% 45%;
}

.radius-pattern-02 {
    overflow: hidden;
    border-radius: 85% 35% 50% 60% / 80% 45% 90% 85%;
}

.radius-pattern-03 {
    overflow: hidden;
    border-radius: 45% 80% 100% 20% / 60% 65% 50% 55%;
}

/*エフェクト*/
.fead-mv.mv {
    -webkit-transition: 1s ease-out;
    transition: 1s ease-out;
}

.fead-left {
    -webkit-transform: translateX(12%);
    transform: translateX(12%);
}

.fead-right {
    -webkit-transform: translateX(-12%);
    transform: translateX(-12%);
}

.fead-text .str.textin:nth-of-type(1) {
    -webkit-transition-duration: 3s;
    transition-duration: 3s;
}

.fead-text .str.textin:nth-of-type(2) {
    -webkit-transition-duration: 3.2s;
    transition-duration: 3.2s;
}

.fead-text .str.textin:nth-of-type(3) {
    -webkit-transition-duration: 3.4s;
    transition-duration: 3.4s;
}

.fead-text .str.textin:nth-of-type(4) {
    -webkit-transition-duration: 3.6s;
    transition-duration: 3.6s;
}

.fead-text .str.textin:nth-of-type(5) {
    -webkit-transition-duration: 3.8s;
    transition-duration: 3.8s;
}

.fead-text .str.textin:nth-of-type(6) {
    -webkit-transition-duration: 4s;
    transition-duration: 4s;
}

.fead-text .str.textin:nth-of-type(7) {
    -webkit-transition-duration: 4.2s;
    transition-duration: 4.2s;
}

.fead-text .str.textin:nth-of-type(8) {
    -webkit-transition-duration: 4.4s;
    transition-duration: 4.4s;
}

.fead-text .str.textin:nth-of-type(9) {
    -webkit-transition-duration: 4.6s;
    transition-duration: 4.6s;
}

.fead-text .str.textin:nth-of-type(10) {
    -webkit-transition-duration: 4.8s;
    transition-duration: 4.8s;
}

.fead-text .str.textin:nth-of-type(11) {
    -webkit-transition-duration: 5s;
    transition-duration: 5s;
}

.fead-text .str.textin:nth-of-type(12) {
    -webkit-transition-duration: 5.2s;
    transition-duration: 5.2s;
}

.fead-text .str.textin:nth-of-type(13) {
    -webkit-transition-duration: 5.4s;
    transition-duration: 5.4s;
}

.fead-text .str.textin:nth-of-type(14) {
    -webkit-transition-duration: 5.6s;
    transition-duration: 5.6s;
}

.fead-text .str.textin:nth-of-type(15) {
    -webkit-transition-duration: 5.8s;
    transition-duration: 5.8s;
}

.fead-text .str.textin:nth-of-type(16) {
    -webkit-transition-duration: 6s;
    transition-duration: 6s;
}

.fead-text .str.textin:nth-of-type(17) {
    -webkit-transition-duration: 6.2s;
    transition-duration: 6.2s;
}

.fead-text .str.textin:nth-of-type(18) {
    -webkit-transition-duration: 5s;
    transition-duration: 5s;
}

.fead-text .str.textin:nth-of-type(19) {
    -webkit-transition-duration: 5s;
    transition-duration: 5s;
}

.fead-text .str.textin:nth-of-type(20) {
    -webkit-transition-duration: 5s;
    transition-duration: 5s;
}

.fead-up.mv,
.fead-left.mv,
.fead-right.mv {
    -webkit-transition-duration: 1.6s;
    transition-duration: 1.6s;
}

.fead-text-01 {
    opacity: 0;
}

[data-element-id] .fead-text-01 {
    opacity: 1;
}

.fead-text-01.mv {
    opacity: 1;
    -webkit-animation-name: blurtxt;
    animation-name: blurtxt;
    -webkit-animation-duration: 2s;
    animation-duration: 2s;

    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards;
}

@-webkit-keyframes blurtxt {
    from {
        opacity: 0;
        -webkit-filter: blur(10px);
        filter: blur(10px);
        -webkit-transform: scale(1.02);
        transform: scale(1.02);
    }

    to {
        opacity: 1;
        -webkit-filter: blur(0);
        filter: blur(0);
        -webkit-transform: scale(1);
        transform: scale(1);
    }
}

@keyframes blurtxt {
    from {
        opacity: 0;
        -webkit-filter: blur(10px);
        filter: blur(10px);
        -webkit-transform: scale(1.02);
        transform: scale(1.02);
    }

    to {
        opacity: 1;
        -webkit-filter: blur(0);
        filter: blur(0);
        -webkit-transform: scale(1);
        transform: scale(1);
    }
}

/*ボタンエフェクト*/
.btn-hover-01 a:hover,
.btn-hover-01 button:hover {
    -webkit-animation-name: btnscale;
    animation-name: btnscale;
    -webkit-animation-duration: 0.3s;
    animation-duration: 0.3s;
    -webkit-animation-timing-function: linear;
    animation-timing-function: linear;
    -webkit-animation-iteration-count: infinite;
    animation-iteration-count: infinite;
    -webkit-animation-direction: alternate;
    animation-direction: alternate;
}

@-webkit-keyframes btnscale {
    to {
        -webkit-transform: scale(1.1);
        transform: scale(1.1);
    }
}

@keyframes btnscale {
    to {
        -webkit-transform: scale(1.1);
        transform: scale(1.1);
    }
}

@-webkit-keyframes shiny {
    0% {
        left: -20%;
    }

    10% {
        left: 120%;
    }

    100% {
        left: 120%;
    }
}

@keyframes shiny {
    0% {
        left: -20%;
    }

    10% {
        left: 120%;
    }

    100% {
        left: 120%;
    }
}


.shiny-btn .btn-inner>* {
    overflow: hidden;
    text-decoration: none;
    cursor: pointer;
    position: relative;
}

.shiny-btn .btn-inner>*:after {
    content: "";
    width: 40px;
    height: 100%;
    background-image: linear-gradient(100deg, rgba(255, 255, 255, 0) 10%, rgba(255, 255, 255, 0.5) 100%, rgba(255, 255, 255, 0) 0%);
    -webkit-transform: scale(2) rotate(20deg);
    transform: scale(2) rotate(20deg);
    -webkit-animation-name: shiny;
    animation-name: shiny;
    -webkit-animation-duration: 3s;
    animation-duration: 3s;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
    -webkit-animation-iteration-count: infinite;
    animation-iteration-count: infinite;
    position: absolute;
    top: -10%;
    left: -20%;
}

/*メインビジュアル上のキャッチコピー*/
.cmn-mainimg-01 .fead-mv {
    opacity: 0;
    -webkit-transform: translateX(-40%);
    transform: translateX(-40%);
}

[data-element-id] .cmn-mainimg-01 .fead-mv {
    opacity: 1;
    -webkit-transform: translateX(0);
    transform: translateX(0);
}

.cmn-mainimg-01 .fead-mv.mv {
    opacity: 1;
    -webkit-transition: 0s;
    transition: 0s;
    -webkit-transform: translateX(0);
    transform: translateX(0);
}

.cmn-mainimg-01 .fead-mv span {
    min-width: 30px;
    display: inline-block;
    text-align: center;
    -webkit-transform: rotateY(90deg);
    transform: rotateY(90deg);
}

.cmn-mainimg-01 .fead-mv.mv span {
    -webkit-transition-duration: 3s;
    transition-duration: 3s;
    -webkit-transform: rotateY(0deg);
    transform: rotateY(0deg);
    -webkit-animation: color-fv 4s both;
    animation: color-fv 5s both;
    -webkit-animation-delay: 1s;
    animation-delay: 1s;
}

.cmn-mainimg-01 .fead-mv.mv span:nth-of-type(1) {
    -webkit-animation-delay: 0.0s;
    animation-delay: 0.0s;
}

.cmn-mainimg-01 .fead-mv.mv span:nth-of-type(2) {
    -webkit-animation-delay: 0.1s;
    animation-delay: 0.1s;
}

.cmn-mainimg-01 .fead-mv.mv span:nth-of-type(3) {
    -webkit-animation-delay: 0.2s;
    animation-delay: 0.2s;
}

.cmn-mainimg-01 .fead-mv.mv span:nth-of-type(4) {
    -webkit-animation-delay: 0.3s;
    animation-delay: 0.3s;
}

.cmn-mainimg-01 .fead-mv.mv span:nth-of-type(5) {
    -webkit-animation-delay: 0.4s;
    animation-delay: 0.4s;
}

.cmn-mainimg-01 .fead-mv.mv span:nth-of-type(6) {
    -webkit-animation-delay: 0.5s;
    animation-delay: 0.5s;
}

.cmn-mainimg-01 .fead-mv.mv span:nth-of-type(7) {
    -webkit-animation-delay: 0.6s;
    animation-delay: 0.6s;
}

.cmn-mainimg-01 .fead-mv.mv span:nth-of-type(8) {
    -webkit-animation-delay: 0.7s;
    animation-delay: 0.7s;
}

.cmn-mainimg-01 .fead-mv.mv span:nth-of-type(9) {
    -webkit-animation-delay: 0.8s;
    animation-delay: 0.8s;
}

.cmn-mainimg-01 .fead-mv.mv span:nth-of-type(10) {
    -webkit-animation-delay: 0.9s;
    animation-delay: 0.9s;
}

@-webkit-keyframes color-fv {
    0% {
        color: var(--txt-color-00);
    }

    42% {
        color: var(--txt-color-03);
    }

    100% {
        color: var(--txt-color-04);
    }
}

@keyframes color-fv {
    0% {
        color: var(--txt-color-00);
    }

    42% {
        color: var(--txt-color-03);
    }

    100% {
        color: var(--txt-color-04);
    }
}

/*フォント*/
.txt-font-00 {
    font-family: var(--txt-font-00);
}

.txt-font-01 {
    font-family: var(--txt-font-01);
}

.txt-font-02 {
    font-family: var(--txt-font-02);
}

.txt-font-03 {
    font-family: var(--txt-font-03);
}

/*アイコン*/
.icon-01,
.icon-01:before,
.icon-01:after {
    margin: 0 auto;
}

.icon-01 {
    width: 30px;
    display: inline-block;
    border-bottom: solid 5px;
}

.icon-01:before {
    content: "";
    width: 10px;
    display: block;
    border-bottom: solid 15px;
}

.icon-01:after {
    content: "";
    width: 20px;
    display: block;
    border-bottom: solid 10px;
}

/*カラー指定*/
/*テキストカラー*/
.txt-color-00 {
    color: var(--txt-color-00);
}

.txt-color-01 {
    color: var(--txt-color-01);
}

.txt-color-02 {
    color: var(--txt-color-02);
}

.txt-color-03 {
    color: var(--txt-color-03);
}

.txt-color-04 {
    color: var(--txt-color-04);
}

.txt-color-05 {
    color: var(--txt-color-05);
}

.txt-color-06 {
    color: var(--txt-color-06);
}

.txt-color-07 {
    color: var(--txt-color-07);
}

.txt-color-08 {
    color: var(--txt-color-08);
}

.txt-color-09 {
    color: var(--txt-color-09);
}

.txt-color-10 {
    color: var(--txt-color-10);
}

.txt-color-11 {
    color: var(--txt-color-11);
}

.txt-color-12 {
    color: var(--txt-color-12);
}

.txt-color-13 {
    color: var(--txt-color-13);
}

.txt-color-14 {
    color: var(--txt-color-14);
}

.txt-color-15 {
    color: var(--txt-color-15);
}

.txt-color-16 {
    color: var(--txt-color-16);
}

.txt-color-17 {
    color: var(--txt-color-17);
}

.txt-color-18 {
    color: var(--txt-color-18);
}

.txt-color-19 {
    color: var(--txt-color-19);
}

.txt-color-20 {
    color: var(--txt-color-20);
}

/*背景色*/
.back-color-00 {
    background: var(--back-color-00);
}

.back-color-01 {
    background: var(--back-color-01);
}

.back-color-02 {
    background: var(--back-color-02);
}

.back-color-03 {
    background: var(--back-color-03);
}

.back-color-04 {
    background: var(--back-color-04);
}

.back-color-05 {
    background: var(--back-color-05);
}

.back-color-06 {
    background: var(--back-color-06);
}

.back-color-07 {
    background: var(--back-color-07);
}

.back-color-08 {
    background: var(--back-color-08);
}

.back-color-09 {
    background: var(--back-color-09);
}

.back-color-10 {
    background: var(--back-color-10);
}

.back-color-11 {
    background: var(--back-color-11);
}

.back-color-12 {
    background: var(--back-color-12);
}

.back-color-13 {
    background: var(--back-color-13);
}

.back-color-14 {
    background: var(--back-color-14);
}

.back-color-15 {
    background: var(--back-color-15);
}

.back-color-16 {
    background: var(--back-color-16);
}

.back-color-17 {
    background: var(--back-color-17);
}

.back-color-18 {
    background: var(--back-color-18);
}

.back-color-19 {
    background: var(--back-color-19);
}

.back-color-20 {
    background: var(--back-color-20);
}

/*画像背景*/
.back-img-01 {
    background-image: url('/import/tenant_1/162.43.7.125/images/back-01.webp');
    background-repeat: repeat;
}

.back-img-02 {
    background-image: url('/import/tenant_1/162.43.7.125/images/back-02.webp');
    background-repeat: repeat;
}

/*見出しカラー*/
.ttl-color-00 {
    color: var(--ttl-color-00);
}

.ttl-color-01 {
    color: var(--ttl-color-01);
}

.ttl-color-02 {
    color: var(--ttl-color-02);
}

.ttl-color-03 {
    color: var(--ttl-color-03);
}

.ttl-color-04 {
    color: var(--ttl-color-04);
}

.ttl-color-05 {
    color: var(--ttl-color-05);
}

.ttl-color-06 {
    color: var(--ttl-color-06);
}

.ttl-color-07 {
    color: var(--ttl-color-07);
}

.ttl-color-08 {
    color: var(--ttl-color-08);
}

.ttl-color-09 {
    color: var(--ttl-color-09);
}

.ttl-color-10 {
    color: var(--ttl-color-10);
}

/*ボタンカラー*/
.btn-color-00 .btn-inner>* {
    background: var(--btn-color-00);
}

.btn-color-01 .btn-inner>* {
    background: var(--btn-color-01);
}

.btn-color-02 .btn-inner>* {
    background: var(--btn-color-02);
}

.btn-color-03 .btn-inner>* {
    background: var(--btn-color-03);
}

.btn-color-04 .btn-inner>* {
    background: var(--btn-color-04);
}

.btn-color-05 .btn-inner>* {
    background: var(--btn-color-05);
}

.btn-color-06 .btn-inner>* {
    background: var(--btn-color-06);
}

.btn-color-07 .btn-inner>* {
    background: var(--btn-color-07);
}

.btn-color-08 .btn-inner>* {
    background: var(--btn-color-08);
}

.btn-color-09 .btn-inner>* {
    background: var(--btn-color-09);
}

.btn-color-10 .btn-inner>* {
    background: var(--btn-color-10);
}

/*ボタンhover背景*/
.hovertxt-color-00 .btn-inner>*:hover .btntxt {
    color: var(--btn-color-00);
}

.hovertxt-color-01 .btn-inner>*:hover .btntxt {
    color: var(--btn-color-01);
}

.hovertxt-color-02 .btn-inner>*:hover .btntxt {
    color: var(--btn-color-02);
}

.hovertxt-color-03 .btn-inner>*:hover .btntxt {
    color: var(--btn-color-03);
}

.hovertxt-color-04 .btn-inner>*:hover .btntxt {
    color: var(--btn-color-04);
}

.hovertxt-color-05 .btn-inner>*:hover .btntxt {
    color: var(--btn-color-05);
}

.hovertxt-color-06 .btn-inner>*:hover .btntxt {
    color: var(--btn-color-06);
}

.hovertxt-color-07 .btn-inner>*:hover .btntxt {
    color: var(--btn-color-07);
}

.hovertxt-color-08 .btn-inner>*:hover .btntxt {
    color: var(--btn-color-08);
}

.hovertxt-color-09 .btn-inner>*:hover .btntxt {
    color: var(--btn-color-09);
}

.hovertxt-color-10 .btn-inner>*:hover .btntxt {
    color: var(--btn-color-10);
}

/*ボタンhover背景*/
.hoverbtn-color-00 .btn-inner>*:hover {
    background: var(--btn-color-00);
}

.hoverbtn-color-01 .btn-inner>*:hover {
    background: var(--btn-color-01);
}

.hoverbtn-color-02 .btn-inner>*:hover {
    background: var(--btn-color-02);
}

.hoverbtn-color-03 .btn-inner>*:hover {
    background: var(--btn-color-03);
}

.hoverbtn-color-04 .btn-inner>*:hover {
    background: var(--btn-color-04);
}

.hoverbtn-color-05 .btn-inner>*:hover {
    background: var(--btn-color-05);
}

.hoverbtn-color-06 .btn-inner>*:hover {
    background: var(--btn-color-06);
}

.hoverbtn-color-07 .btn-inner>*:hover {
    background: var(--btn-color-07);
}

.hoverbtn-color-08 .btn-inner>*:hover {
    background: var(--btn-color-08);
}

.hoverbtn-color-09 .btn-inner>*:hover {
    background: var(--btn-color-09);
}

.hoverbtn-color-10 .btn-inner>*:hover {
    background: var(--btn-color-10);
}

/*装飾*/
.cmn-deco-01 {
    width: 100%;
    display: block;
    border-top: 5px solid;
}

.cmn-deco-02 {
    position: relative;
}

.cmn-deco-02 .cmn-deco-img {
    max-width: 158px;
    position: absolute;
    top: 5%;
    right: 0%;
    z-index: 1;
}

.cmn-deco-03 {
    position: relative;
}

.cmn-deco-03 .cmn-deco-border {
    width: 100%;
    border-top: 100px solid;
    position: absolute;
    top: 0;
    left: 0;
}

.cmn-deco-04 {
    position: relative;
}

.cmn-deco-04 .cmn-deco-border {
    width: 100vw;
    border-top: 100px solid;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    position: absolute;
    top: calc(50% + 30px);
    left: 50%;
}

.cmn-deco-05 {
    position: relative;
}

.cmn-deco-05 .cmn-deco-left,
.cmn-deco-05 .cmn-deco-right {
    width: 50%;
    height: 150px;
    position: absolute;
    top: 0;
}

.cmn-deco-05 .cmn-deco-left {
    left: 0;

    -webkit-clip-path: polygon(100% 0, 0 0, 0 100%);
    clip-path: polygon(100% 0, 0 0, 0 100%);
}

.cmn-deco-05 .cmn-deco-right {
    right: 0;

    -webkit-clip-path: polygon(100% 0, 0 0, 100% 100%);
    clip-path: polygon(100% 0, 0 0, 100% 100%);
}

.cmn-deco-06 {
    position: relative;
}

.cmn-deco-06 .cmn-deco-border {
    width: 100vw;
    height: 100%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    position: absolute;
    top: 50%;
    left: 50%;

    -webkit-clip-path: polygon(0 20%, 0 0, 100% 40%, 100% 60%, 0 100%, 0 80%, 80% 50%);
    clip-path: polygon(0 20%, 0 0, 100% 40%, 100% 60%, 0 100%, 0 80%, 80% 50%);
}

.cmn-deco-07 .cmn-deco-img.-deco-img-01 {
    width: 200px;
    position: absolute;
    top: -2%;
    left: 2%;
    z-index: 1;
}

.cmn-deco-08 .cmn-deco-img.-deco-img-02 {
    width: 200px;
    height: 210px;
    position: absolute;
    top: 2%;
    right: 10%;
    z-index: 1;
}

.cmn-deco-09 .cmn-deco-img.-deco-img-01 {
    width: 580px;
    position: absolute;
    top: -12%;
    left: 3%;
    z-index: 1;
}

.cmn-deco-09 .cmn-deco-img.-deco-img-02 {
    width: 500px;
    position: absolute;
    top: 4%;
    right: 3%;
    z-index: 1;
}

@media (max-width: 1024px) {
    .cmn-deco-02 .cmn-deco-img {
        max-width: 110px;
        top: 11%;
        right: 0;
    }

    .cmn-deco-05 .cmn-deco-left,
    .cmn-deco-05 .cmn-deco-right {
        height: 80px;
    }

    .cmn-deco-07 .cmn-deco-img.-deco-img-01 {
        width: 140px;
        top: -6%;
    }

    .cmn-deco-08 .cmn-deco-img.-deco-img-02 {
        width: 140px;
        right: 1%;
    }

    .cmn-deco-09 .cmn-deco-img.-deco-img-01 {
        width: 300px;
        top: -3%;
        left: 1%;
    }

    .cmn-deco-09 .cmn-deco-img.-deco-img-02 {
        width: 260px;
        position: absolute;
        top: 3%;
        right: 1%;
        z-index: 1;
    }
}

@media (max-width: 599px) {
    .cmn-deco-02 .cmn-deco-img {
        max-width: 100px;
        top: -9%;
    }

    .cmn-deco-03 .cmn-deco-border {
        border-top: 60px solid;
    }

    .cmn-deco-05 .cmn-deco-left,
    .cmn-deco-05 .cmn-deco-right {
        height: 50px;
    }

    .cmn-deco-07 .cmn-deco-img.-deco-img-01 {
        width: 100px;
        top: -1%;
    }

    .cmn-deco-08 .cmn-deco-img.-deco-img-02 {
        width: 100px;
        top: -2%;
    }

    .cmn-deco-09 .cmn-deco-img.-deco-img-01 {
        width: 200px;
        top: -5%;
        left: 0;
    }

    .cmn-deco-09 .cmn-deco-img.-deco-img-02 {
        width: 170px;
        top: -3%;
        right: 0;
    }
}

/*背景装飾*/
.deco-back-01.deco-back-box,
.deco-back-02.deco-back-box {
    position: relative;
    z-index: 0;
}

.deco-back-01 .deco-back-item {
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
}

.deco-back-02 .deco-back-item {
    height: 100%;
    position: absolute;
    top: 0;
    right: 0;
}

.back-wave-01 svg,
.back-wave-02 svg {
    width: 100%;
    height: 69px;
    display: block;
    position: relative;
}

.back-wave-01 {
    position: relative;
}

.back-wave-01 .wave-top {
    width: 100%;
    position: absolute;
    bottom: 100%;
}

/*背景色*/
.wave-color-00 {
    background: var(--back-color-00);
}

.wave-color-01 {
    background: var(--back-color-01);
}

.wave-color-02 {
    background: var(--back-color-02);
}

.wave-color-03 {
    background: var(--back-color-03);
}

.wave-color-04 {
    background: var(--back-color-04);
}

.wave-color-05 {
    background: var(--back-color-05);
}

.wave-color-06 {
    background: var(--back-color-06);
}

.wave-color-07 {
    background: var(--back-color-07);
}

.wave-color-08 {
    background: var(--back-color-08);
}

.wave-color-09 {
    background: var(--back-color-09);
}

.wave-color-10 {
    background: var(--back-color-10);
}

.wave-color-11 {
    background: var(--back-color-11);
}

.wave-color-12 {
    background: var(--back-color-12);
}

.wave-color-13 {
    background: var(--back-color-13);
}

.wave-color-14 {
    background: var(--back-color-14);
}

.wave-color-15 {
    background: var(--back-color-15);
}

.wave-color-16 {
    background: var(--back-color-16);
}

.wave-color-17 {
    background: var(--back-color-17);
}

.wave-color-18 {
    background: var(--back-color-18);
}

.wave-color-19 {
    background: var(--back-color-19);
}

.wave-color-20 {
    background: var(--back-color-20);
}

/*画像にhoverした時にズーム*/
.hover-img-01 a,
.hover-img-02 a .pic {
    display: block;
    overflow: hidden;
}

.hover-img-01 a:hover,
.hover-img-02 a:hover {
    opacity: 1;
}

.hover-img-01 a img,
.hover-img-02 a img {
    transition: transform 1s cubic-bezier(0.165, 0.84, 0.44, 1), -webkit-transform 1s cubic-bezier(0.165, 0.84, 0.44, 1);
    -webkit-transform: scale(1);
    transform: scale(1);
}

.hover-img-01 a:hover img,
.hover-img-02 a:hover img {
    -webkit-transform: scale(1.2);
    transform: scale(1.2);
}

[data-element-id] .hover-img-01 a:hover img,
[data-element-id] .hover-img-02 a:hover img {
    -webkit-transform: scale(1);
    transform: scale(1);
}

.hover-txt-01 a .pic .hover-txt {
    width: 70%;
    visibility: hidden;
    text-align: center;
    opacity: 0;
    -webkit-transition: 0.4s ease;
    transition: 0.4s ease;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    position: absolute;
    top: 50%;
    left: 50%;
    z-index: 1;
}

.hover-txt-01 a:hover .pic .hover-txt {
    visibility: visible;
    opacity: 1;
}

.hover-txt-01 a:hover .pic img {
    -webkit-filter: brightness(0.6);
    filter: brightness(0.6);
}

@media (max-width: 1024px) {
    .hover-txt-01 a .pic .hover-txt {
        visibility: visible;
        opacity: 1;
    }

    .hover-txt-01 a .pic img {
        -webkit-filter: brightness(0.6);
        filter: brightness(0.6);
    }
}

/*タグ*/
.cmn-tag-01>* {
    display: inline-block;
    margin-right: 10px;
    padding: 2px 10px;
    font-weight: bold;
    color: var(--txt-color-00);
    letter-spacing: 2px;
    background: var(--back-color-02);
}

.cmn-tag-02>* {
    display: inline-block;
    margin-right: 10px;
    padding: 2px 10px;
    font-weight: bold;
    letter-spacing: 2px;
}

.cmn-tag-02>*:before {
    content: "\f02c";
    margin-right: 5px;
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
}

/*ページャー*/
.cmn-pager-01 li {
    margin: 0 8px;
}

.cmn-pager-01 li>* {
    width: 35px;
    height: 35px;
    display: block;
    padding: 0 5px;
    font-size: 16px;
    line-height: 36px;
    text-align: center;
    border-radius: 50% 40% 30% 50%;
    background: var(--back-color-04);
    position: relative;
}

.cmn-pager-01 li>.now {
    color: var(--txt-color-00);
    background: var(--back-color-02);
}

.cmn-pager-01 li.prev>*:after {
    content: "\f0d9";
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
}

.cmn-pager-01 li.next>*:after {
    content: "\f0da";
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
}

.cmn-pager-02 li {
    margin: 0 8px;
}

.cmn-pager-02 li.back>* {
    width: 200px;
    max-width: 100%;
    height: 45px;
    display: block;
    font-size: 15px;
    color: var(--txt-color-04);
    line-height: 44px;
    text-align: center;
    border: 1px solid;
    border-radius: 30px;
}

.cmn-pager-02 li.prev>*,
.cmn-pager-02 li.next>* {
    width: 55px;
    height: 45px;
    display: block;
    padding: 0 5px;
    font-size: 14px;
    line-height: 47px;
    text-align: center;
    border-radius: 50% 40% 30% 50%;
    background: var(--back-color-04);
    position: relative;
}

/*電話番号*/
.cmn-tel-01 {
    font-size: 38px;
    letter-spacing: 2px;
}

.cmn-tel-01:before {
    content: "";
    width: 28px;
    height: 28px;
    display: inline-block;
    margin-right: 5px;
    background-image: url('/import/tenant_1/162.43.7.125/images/tel.webp');
}

.cmn-tel-01.pattern-01:before {
    background-image: url('/import/tenant_1/162.43.7.125/images/tel-02.webp');
}

@media (max-width: 599px) {
    .cmn-tel-01 {
        font-size: 30px;
    }
}

/*共通日付*/
.cmn-day-01 {
    -ms-flex-negative: 0;
    flex-shrink: 0;
    font-size: 14px;
}

@media (max-width: 599px) {
    .cmn-day-01 {
        font-size: 13px;
    }
}

/*共通カテゴリ*/
.cmn-cate-01 {
    -ms-flex-negative: 0;
    flex-shrink: 0;
    padding: 3px 10px 3px;
    font-size: 14px;
    border-radius: 30px;
}

@media (max-width: 599px) {
    .cmn-cate-01 {
        padding: 3px 5px 3px;
    }
}

.cmn-cate-02 {
    width: auto;
    padding: 0 20px;
    height: 70px;
    font-weight: 500;
    font-size: 16px;
    line-height: 70px;
    text-align: center;
    background-image: var(--bg-deco-01);
    background-size: 100% 100%;
    background-repeat: no-repeat;
    position: absolute;
    top: -30px;
    left: -10px;
    z-index: 1;
}

.cmn-works-02 .cmn-cate-02 {
    height: 70px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    line-height: 1.6;
}

.cmn-cate-03 .box {
    padding: 20px 20px 30px;
    position: relative;
}

.cmn-cate-03 .box .deco {
    font-size: 40px;
    line-height: 1;
    -webkit-transform: rotate(-10deg);
    transform: rotate(-10deg);
    position: absolute;
    top: -25px;
    left: -25px;
    z-index: 1;
}

[data-element-id] .cmn-cate-03 .box .deco {
    -webkit-transform: inherit;
    transform: inherit;
    position: static;
}

.cmn-cate-03 .tit {
    margin-bottom: 15px;
    font-size: 20px;
    text-align: center;
}

.cmn-cate-03 li {
    padding-bottom: 10px;
    padding-left: 5px;
    padding-right: 5px;
    font-size: 14px;
    border-bottom: 1px solid;
}

.cmn-cate-03 li+li {
    margin-top: 10px;
}

@media (max-width: 1024px) {
    .cmn-works-02 .cmn-cate-02.cate {
        top: 0;
        left: 0;
        right: initial;
    }
}

@media (max-width: 599px) {
    .cmn-cate-03 .box {
        margin: 0 20px;
    }
}


/*画像を家形に切り抜き*/
.pic-cut-01 {
    -webkit-clip-path: polygon(50% 0%, 100% 30%, 90% 30%, 90% 100%, 10% 100%, 10% 30%, 0 30%);
    clip-path: polygon(50% 0%, 100% 30%, 90% 30%, 90% 100%, 10% 100%, 10% 30%, 0 30%);
}

/*===================================
  共通タイトル　ttl-cmn
===================================*/
/* タイトル */
.cmn-ttl-01 {
    padding-top: 80px;
    position: relative;
}

.cmn-ttl-01.pattern-01 {
    padding-top: 0;
}

.cmn-ttl-01 .ttl-sub {
    font-size: 70px;
    -webkit-transform: rotate(-10deg);
    transform: rotate(-10deg);
    -webkit-transform-origin: left;
    transform-origin: left;
    position: absolute;
    top: 0;
    left: 15%;
}

[data-element-id] .cmn-ttl-01 .ttl-sub {
    -webkit-transform: inherit;
    transform: inherit;
    position: static;
}

.cmn-ttl-01 .ttl-main {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    align-items: center;
    -ms-flex-align: center;
    font-size: 30px;
    line-height: 1;
}

.cmn-ttl-01 .border {
    height: 10px;
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    position: relative;
}

.cmn-ttl-01 .border:first-of-type {
    margin-right: 30px;
}

.cmn-ttl-01 .border:last-of-type {
    margin-left: 30px;
}

.cmn-ttl-01 .border:before,
.cmn-ttl-01 .border:after {
    content: "";
    width: 100%;
    border-bottom: 2px solid;
    position: absolute;
    left: 0;
}

.cmn-ttl-01 .border:before {
    top: 0;
}

.cmn-ttl-01 .border:after {
    bottom: 0;
}

.cmn-ttl-02 .ttl-main {
    padding: 30px 60px;
    font-size: 30px;
}

.cmn-ttl-02 .ttl-inner {
    position: relative;
}

.cmn-ttl-02 .ttl-sub {
    font-size: 70px;
    -webkit-transform: rotate(-10deg);
    transform: rotate(-10deg);
    -webkit-transform-origin: left;
    transform-origin: left;
    position: absolute;
    top: -50px;
    left: -50px;
    z-index: 1;
}

[data-element-id] .cmn-ttl-02 .ttl-sub {
    -webkit-transform: inherit;
    transform: inherit;
    position: static;
}

.cmn-ttl-03 {
    border-bottom: 2px solid;
    position: relative;
}

.cmn-ttl-03 .ttl-sub {
    font-size: 50px;
    line-height: 1;
    position: absolute;
    bottom: 0;
    left: 0;
}

.cmn-ttl-03 .ttl-main {
    padding-bottom: 20px;
    font-size: 30px;
}

.cmn-ttl-04 .ttl-main {
    padding: 0 10px 10px;
    font-size: 30px;
    letter-spacing: 2px;
    position: relative;
}

.cmn-ttl-04 .ttl-main:after {
    content: "";
    width: 100%;
    height: 5px;
    background-image: repeating-linear-gradient(90deg, #000, #000 2px, transparent 2px, transparent 7px);
    background-repeat: repeat;
    position: absolute;
    bottom: 0;
    left: 0;
}

.cmn-ttl-04.pattern-01 .ttl-main:after {
    background-image: repeating-linear-gradient(90deg, #fff, #fff 2px, transparent 2px, transparent 7px);
}

.cmn-ttl-05 .ttl-inner {
    position: relative;
}

.cmn-ttl-05 .ttl-sub {
    font-size: 70px;
    line-height: 1;
    -webkit-transform: rotate(-10deg);
    transform: rotate(-10deg);
    -webkit-transform-origin: left;
    transform-origin: left;
    position: absolute;
    top: 40%;
    left: 0;
}

[data-element-id] .cmn-ttl-05 .ttl-sub {
    -webkit-transform: inherit;
    transform: inherit;
    position: static;
}

.cmn-ttl-05 .ttl-main {
    font-size: 30px;
}

.cmn-ttl-05 .ttl-main .em {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    align-items: center;
    -ms-flex-align: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin-bottom: 10px;
    font-size: 60%;
}

.cmn-ttl-05.version-01 .ttl-main .em {
    margin-bottom: 30px;
}

.cmn-ttl-05 .ttl-main .small {
    padding: 20px 60px;
    font-size: 30px;
    background-image: var(--bg-deco-03);
    background-size: 100% 100%;
    background-repeat: no-repeat;
}

.cmn-ttl-05 .ttl-main .em .deco:first-of-type {
    width: 5px;
    margin-right: 10px;
    border-top: 25px solid;
    border-left: 3px solid transparent;
    border-right: 0px solid transparent;
    -webkit-transform: rotate(-30deg);
    transform: rotate(-30deg);
}

.cmn-ttl-05 .ttl-main .em .deco:last-of-type {
    width: 5px;
    margin-left: 10px;
    border-top: 25px solid;
    border-left: 3px solid transparent;
    border-right: 0px solid transparent;
    -webkit-transform: rotate(40deg);
    transform: rotate(40deg);
}

.cmn-ttl-06 {
    position: relative;
}

.cmn-ttl-06 .ttl-main {
    font-size: 30px;
}

.cmn-ttl-06 .ttl-sub {
    margin-bottom: 15px;
    font-size: 70px;
    line-height: 1;
    -webkit-transform: rotate(-10deg);
    transform: rotate(-10deg) translateX(-110px);
    -webkit-transform-origin: left;
    transform-origin: bottom;
}

.cmn-ttl-06.pattern-01 .ttl-sub {
    -webkit-transform: rotate(-10deg);
    transform: rotate(-10deg);
    position: absolute;
    bottom: 20px;
    left: 0;
}

[data-element-id] .cmn-ttl-06 .ttl-sub,
[data-element-id] .cmn-ttl-06.pattern-01 .ttl-sub {
    -webkit-transform: inherit;
    transform: inherit;
    position: static;
}

.cmn-ttl-07 .ttl-inner {
    position: relative;
}

.cmn-ttl-07 .border {
    width: calc(100% + 100px);
    border-bottom: 1px solid;
    position: absolute;
    bottom: 0;
    right: 0;
    z-index: 1;
}

.cmn-ttl-07.pattern-01 .border {
    left: 0;
    right: auto;
}

.cmn-ttl-07 .ttl-main {
    padding-bottom: 5px;
    font-size: 30px;
}

.cmn-ttl-07 .ttl-sub {
    margin-bottom: 10px;
    font-size: 70px;
    line-height: 1;
    letter-spacing: 4px;
    -webkit-transform-origin: left;
    transform-origin: bottom;
}

.cmn-ttl-08 .ttl-main {
    font-size: 26px;
    position: relative;
}

.cmn-ttl-08 .ttl-main .border:first-of-type,
.cmn-ttl-08 .ttl-main .border:first-of-type:after {
    width: 5px;
    border-top: 25px solid;
    border-left: 3px solid transparent;
    border-right: 0px solid transparent;
    -webkit-transform: rotate(-30deg);
    transform: rotate(-30deg);
    -webkit-transform-origin: top;
    transform-origin: top;
    position: absolute;
    bottom: 10px;
    right: calc(100% + 20px);
}

.cmn-ttl-08 .ttl-main .border:first-of-type:after {
    content: "";
    bottom: -10px;
}

.cmn-ttl-08 .ttl-main .border:last-of-type,
.cmn-ttl-08 .ttl-main .border:last-of-type:after {
    width: 5px;
    border-top: 25px solid;
    border-left: 3px solid transparent;
    border-right: 0px solid transparent;
    -webkit-transform: rotate(30deg);
    transform: rotate(30deg);
    -webkit-transform-origin: top;
    transform-origin: top;
    position: absolute;
    bottom: 10px;
    left: calc(100% + 20px);
}

.cmn-ttl-08 .ttl-main .border:last-of-type:after {
    content: "";
    bottom: -10px;
}

.cmn-ttl-09 .ttl-inner {
    position: relative;
}

.cmn-ttl-09 .ttl-main {
    padding: 20px 60px;
    font-size: 30px;
    background-image: var(--bg-deco-03);
    background-size: 100% 100%;
    background-repeat: no-repeat;
}

.cmn-ttl-09 .ttl-sub {
    font-size: 70px;
    line-height: 1;
    -webkit-transform: rotate(-10deg) translateX(-140px);
    transform: rotate(-10deg) translateX(-140px);
    -webkit-transform-origin: bottom;
    transform-origin: bottom;
    position: relative;
    z-index: 1;
    margin-top: -.5em;
}

[data-element-id] .cmn-ttl-09 .ttl-sub {
    -webkit-transform: inherit;
    transform: inherit;
}

.bdl {
    padding-left: .4em;
    border-left: 5px solid var(--back-color-02);
}

.cmn-ttl-10 .ttl-inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
    align-items: flex-end;
    -ms-flex-align: end;
}

.cmn-ttl-10 .cate {
    margin-right: 10px;
    font-size: 16px;
    position: relative;
    top: 0;
    left: 0;
    width: 100px;
    padding: 27px 0px;
    height: 70px;
    font-weight: 500;
    font-size: 16px;
    line-height: 1em;
    text-align: center;
    background-image: var(--bg-deco-01);
    background-size: 100% 100%;
    background-repeat: no-repeat;
    z-index: 1;
}

.cmn-ttl-10 .ttl-main {
    font-size: 26px;
}

.cmn-ttl-11 .ttl-main {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
    align-items: flex-end;
    -ms-flex-align: end;
    font-size: 30px;
}

.cmn-ttl-11 .em {
    padding-top: 10px;
    background-image: -webkit-radial-gradient(0.15em 0.15em at center center, var(--back-color-04), var(--back-color-04) 100%, transparent, transparent);
    background-image: radial-gradient(0.15em 0.15em at center center, var(--back-color-04), var(--back-color-04) 100%, transparent, transparent);
    background-size: 31px;
    background-repeat: repeat-x;
    background-position: top -17px left -2px;
    position: relative;
}

.cmn-ttl-11 .icon {
    width: 60px;
    display: inline-block;
    margin-left: 10px;
}

.cmn-ttl-12 .ttl-main {
    font-size: 30px;
}

.cmn-ttl-12 .ttl-main .em {
    position: relative;
}

.cmn-ttl-12 .ttl-main .line {
    width: 100%;
    border-bottom: 10px solid;
    position: absolute;
    bottom: 5px;
    left: 0;
    z-index: -1;
}

@media (max-width: 1024px) {
    .cmn-ttl-02 .ttl-main {
        padding: 20px 50px;
    }

    .cmn-ttl-04 .ttl-main {
        padding: 0 5px 10px;
        font-size: 23px;
    }

    .cmn-ttl-07 .ttl-main {
        font-size: 26px;
    }

    .cmn-ttl-05 .ttl-sub {
        font-size: 50px;
    }

    .cmn-ttl-07 .border {
        width: calc(100% + 60px);
    }

    .cmn-ttl-10 .cate {
        width: 80px;
        height: 59px;
        margin-right: 5px;
        font-size: 14px;
        padding:22px 0;
    }

    .cmn-ttl-10 .ttl-main {
        font-size: 20px;
    }
}

@media (max-width: 599px) {
    .cmn-ttl-01 {
        padding-top: 60px;
    }

    .cmn-ttl-01 .ttl-main {
        font-size: 23px;
    }

    .cmn-ttl-01 .border {
        height: 6px;
    }

    .cmn-ttl-01 .border:before,
    .cmn-ttl-01 .border:after {
        border-bottom: 1px solid;
    }

    .cmn-ttl-01 .border:first-of-type {
        margin-right: 10px;
    }

    .cmn-ttl-01 .border:last-of-type {
        margin-left: 10px;
    }

    .cmn-ttl-01 .ttl-sub {
        font-size: 40px;
        left: 5%;
    }

    .cmn-ttl-02 .ttl-main {
        padding: 10px 50px;
        font-size: 22px;
    }

    .cmn-ttl-02 .ttl-sub {
        font-size: 40px;
        top: -25px;
        left: -50px;
    }

    .cmn-ttl-03 .ttl-inner {
        padding-top: 20px;
    }

    .cmn-ttl-03 .ttl-main {
        padding-bottom: 10px;
        font-size: 26px;
    }

    .cmn-ttl-03 .ttl-sub {
        font-size: 40px;
        top: 0;
        bottom: auto;
    }

    .cmn-ttl-04 .ttl-main {
        padding: 0 5px 10px;
        font-size: 20px;
        letter-spacing: 1px;
    }

    .cmn-ttl-05 .ttl-inner {
        padding-top: 10px;
    }

    .cmn-ttl-05.version-01 .ttl-inner {
        padding-top: 20px;
    }

    .cmn-ttl-05 .ttl-main {
        font-size: 26px;
    }

    .cmn-ttl-05.version-01 .small {
        padding: 10px 20px;
        font-size: 24px;
    }

    .cmn-ttl-05 .ttl-main .em {
        margin-bottom: 0;
    }

    .cmn-ttl-05.version-01 .ttl-main .em {
        margin-bottom: 10px;
    }

    .cmn-ttl-05 .ttl-main .em .deco:first-of-type,
    .cmn-ttl-05 .ttl-main .em .deco:last-of-type {
        width: 4px;
        border-top: 20px solid;
    }

    .cmn-ttl-05 .ttl-sub {
        font-size: 40px;
        top: -10px;
    }

    .cmn-ttl-05.version-01 .ttl-sub {
        font-size: 40px;
        top: 0;
    }

    .cmn-ttl-06 .ttl-main {
        font-size: 26px;
    }

    .cmn-ttl-06 .ttl-sub {
        font-size: 40px;
        text-align: left;
        -webkit-transform: rotate(-10deg) translateX(0px);
        transform: rotate(-10deg) translateX(0px);
    }

    .cmn-ttl-06.pattern-01 .ttl-sub {
        bottom: 10px;
    }

    .cmn-ttl-07 .ttl-sub {
        margin-bottom: 5px;
        font-size: 40px;
    }

    .cmn-ttl-07 .ttl-main {
        font-size: 26px;
    }

    .cmn-ttl-08 .ttl-main {
        font-size: 24px;
    }

    .cmn-ttl-09 .ttl-main {
        padding: 15px 30px;
        font-size: 22px;
    }

    .cmn-ttl-09 .ttl-sub {
        font-size: 40px;
        -webkit-transform: rotate(-10deg) translateX(-70px);
        transform: rotate(-10deg) translateX(-70px);
    }

    .cmn-ttl-10 .cate {
        width: 75px;
        height: 55px;
    }

    .cmn-ttl-11 .ttl-main {
        font-size: 22px;
    }

    .cmn-ttl-11 .em {
        background-size: 23px;
    }

    .cmn-ttl-11 .icon {
        width: 50px;
        margin-left: 5px;
    }

    .cmn-ttl-12 .ttl-main {
        font-size: 20px;
    }
}

/*見出し上書き用*/
[class*="ttl-mb-"] {
    --ttl-mb-xlarge: 80px;
    --ttl-mb-large: 60px;
    --ttl-mb-medium: 40px;
    --ttl-mb-small: 20px;
    --ttl-mb-xsmall: 10px;
}

.ttl-mb-xlarge {
    margin-bottom: var(--ttl-mb-xlarge);
}

.ttl-mb-large {
    margin-bottom: var(--ttl-mb-large);
}

.ttl-mb-medium {
    margin-bottom: var(--ttl-mb-medium);
}

.ttl-mb-small {
    margin-bottom: var(--ttl-mb-small);
}

.ttl-mb-xsmall {
    margin-bottom: var(--ttl-mb-xsmall);
}

.ttl-mb-none {
    margin-bottom: 0;
}

@media (max-width: 1024px) {
    .ttl-mb-xlarge {
        margin-bottom: calc(var(--ttl-mb-xlarge) * 0.8);
    }

    .ttl-mb-large {
        margin-bottom: calc(var(--ttl-mb-large) * 0.8);
    }

    .ttl-mb-medium {
        margin-bottom: calc(var(--ttl-mb-medium) * 0.8);
    }

    .ttl-mb-small {
        margin-bottom: calc(var(--ttl-mb-small) * 0.8);
    }

    .ttl-mb-xsmall {
        margin-bottom: calc(var(--ttl-mb-xsmall) * 0.8);
    }
}

@media (max-width: 599px) {
    .ttl-mb-xlarge {
        margin-bottom: calc(var(--ttl-mb-xlarge) * 0.6);
    }

    .ttl-mb-large {
        margin-bottom: calc(var(--ttl-mb-large) * 0.6);
    }

    .ttl-mb-medium {
        margin-bottom: calc(var(--ttl-mb-medium) * 0.6);
    }

    .ttl-mb-small {
        margin-bottom: calc(var(--ttl-mb-small) * 0.6);
    }

    .ttl-mb-xsmall {
        margin-bottom: calc(var(--ttl-mb-xsmall) * 0.6);
    }
}

/*記事詳細見出し*/
.detail-ttl-01 .ttl-main {
    font-size: 30px;
    line-height: 1;
    letter-spacing: 4px;
}

.detail-ttl-01 .cate {
    display: inline-block;
    padding: 2px 10px;
    font-size: 14px;
}

.detail-ttl-01 .day {
    font-size: 14px;
}

@media (max-width: 599px) {
    .detail-ttl-01 .ttl-main {
        font-size: 20px;
        letter-spacing: 2px;
    }
}

/*記事内容見出し*/
.detail-content h2 {
    margin-top: 40px;
    margin-bottom: 20px;
    padding: 10px 20px;
    font-weight: 500;
    font-size: 20px;
    color: var(--txt-color-00);
    background: var(--txt-color-02);
}

.detail-content h3 {
    margin-top: 40px;
    margin-bottom: 20px;
    padding: 0 20px 10px;
    font-weight: 500;
    font-size: 20px;
    color: var(--txt-color-01);
    border-bottom: 2px solid;
}

.detail-content h4 {
    margin-top: 40px;
    margin-bottom: 20px;
    padding: 5px 0px 5px 15px;
    font-weight: 500;
    font-size: 20px;
    color: var(--txt-color-01);
    border-left: 3px solid var(--txt-color-02);
}

@media (max-width: 599px) {
    .detail-content h2 {
        padding: 8px 10px;
        font-size: 18px;
    }

    .detail-content h3 {
        padding: 0 5px 10px;
        font-size: 18px;
    }

    .detail-content h4 {
        padding: 5px 0px 5px 10px;
        font-size: 18px;
    }
}

/*===================================
  共通ボタン btn-cmn
===================================*/
/*ボタン*/
.cmn-btn-01 .btn-inner>* {
    width: 180px;
    display: block;
    padding: 15px 10px;
    font-size: 15px;
    letter-spacing: 2px;
    text-align: center;
    border-radius: 40px;
    position: relative;
    z-index: 0;
    letter-spacing: 0;
}

.cmn-btn-01.pattern-01 .btn-inner>* {
    width: 130px;
    display: block;
    padding: 10px 5px;
    font-size: 14px;
}

.cmn-btn-02 .btn-inner>* {
    width: 250px;
    display: block;
    padding: 15px 10px;
    font-size: 15px;
    letter-spacing: 2px;
    text-align: center;
    border-radius: 40px;
    position: relative;
    z-index: 0;
}

@media (max-width: 1024px) {
    .cmn-btn-02 .btn-inner>* {
        width: 200px;
        padding: 10px;
    }
}


@media (max-width: 599px) {
    .cmn-btn-01 .btn-inner>* {
        padding: 10px;
    }

    .cmn-btn-01.pattern-01 .btn-inner>* {
        width: 120px;
        padding: 5px 5px;
        font-size: 13px;
    }

    .cmn-btn-02 .btn-inner>* {
        width: 120px;
    }

    .cmn-btn-02.pattern-01 .btn-inner>* {
        width: 200px;
    }
}

/*ボタンエフェクト*/
/*クラス名「.backbtn」+ data-color属性「backbtn-color-」でボタンの擬似要素のカラー指定*/
.btn-effect-01[data-color*="backbtn-color-"] .btn-inner>* {
    overflow: hidden;
    position: relative;
}

.btn-effect-01[data-color*="backbtn-color-"] .btn-inner>* .btntxt {
    position: relative;
    z-index: 1;
}

.btn-effect-01[data-color*="backbtn-color-"] .btn-inner>*:hover {
    opacity: 1;
}

.btn-effect-01[data-color*="backbtn-color-"] .btn-inner>*:hover:before {
    opacity: 1;
    -webkit-transform: scaleX(1);
    transform: scaleX(1);
    -webkit-transform-origin: right;
    transform-origin: right;
}

.btn-effect-01[data-color*="backbtn-color-"] .btn-inner>*:before {
    content: "";
    width: 100%;
    height: 100%;
    border-radius: 5px;
    opacity: 1;
    -webkit-transition: opacity 1.2s cubic-bezier(0.45, 0.12, 0.04, 0.96), -webkit-transform 1.8s cubic-bezier(0.45, 0.12, 0.04, 0.96);
    transition: opacity 1.2s cubic-bezier(0.45, 0.12, 0.04, 0.96), -webkit-transform 1.8s cubic-bezier(0.45, 0.12, 0.04, 0.96);
    transition: opacity 1.2s cubic-bezier(0.45, 0.12, 0.04, 0.96), transform 1.8s cubic-bezier(0.45, 0.12, 0.04, 0.96);
    transition: opacity 1.2s cubic-bezier(0.45, 0.12, 0.04, 0.96), transform 1.8s cubic-bezier(0.45, 0.12, 0.04, 0.96), -webkit-transform 1.8s cubic-bezier(0.45, 0.12, 0.04, 0.96);
    -webkit-transform: scaleX(0);
    transform: scaleX(0);
    -webkit-transform-origin: left;
    transform-origin: left;
    position: absolute;
    top: 0;
    left: 0;
}

.btn-effect-01[data-color="backbtn-color-00"] .btn-inner>*:before {
    background: var(--btn-color-00);
}

.btn-effect-01[data-color="backbtn-color-01"] .btn-inner>*:before {
    background: var(--btn-color-01);
}

.btn-effect-01[data-color="backbtn-color-02"] .btn-inner>*:before {
    background: var(--btn-color-02);
}

.btn-effect-01[data-color="backbtn-color-03"] .btn-inner>*:before {
    background: var(--btn-color-03);
}

.btn-effect-01[data-color="backbtn-color-04"] .btn-inner>*:before {
    background: var(--btn-color-04);
}

.btn-effect-01[data-color="backbtn-color-05"] .btn-inner>*:before {
    background: var(--btn-color-05);
}

.btn-effect-01[data-color="backbtn-color-06"] .btn-inner>*:before {
    background: var(--btn-color-06);
}

.btn-effect-01[data-color="backbtn-color-07"] .btn-inner>*:before {
    background: var(--btn-color-07);
}

.btn-effect-01[data-color="backbtn-color-08"] .btn-inner>*:before {
    background: var(--btn-color-08);
}

.btn-effect-01[data-color="backbtn-color-09"] .btn-inner>*:before {
    background: var(--btn-color-09);
}

.btn-effect-01[data-color="backbtn-color-10"] .btn-inner>*:before {
    background: var(--btn-color-10);
}

.btn-effect-01[data-color*="backbtn-color-"] .btn-inner>*:hover .btntxt {
    -webkit-animation-name: rotateX;
    animation-name: rotateX;

    /*1で解説*/
    -webkit-animation-duration: 2s;
    animation-duration: 2s;

    /*3で解説*/
    -webkit-animation-timing-function: ease;
    animation-timing-function: ease;

    /*5で解説*/
    -webkit-animation-delay: 0s;
    animation-delay: 0s;

    /*6で解説*/
    -webkit-animation-direction: normal;
    animation-direction: normal;

    /*7で解説*/

    -webkit-animation-fill-mode: backwards;
    animation-fill-mode: backwards;

    /*2で解説*/
}

@-webkit-keyframes rotateX {
    0% {
        -webkit-transform: rotateY(0);
        transform: rotateY(0);
    }

    50% {
        -webkit-transform: rotateY(90deg);
        transform: rotateY(90deg);
    }

    100% {
        -webkit-transform: rotateY(0);
        transform: rotateY(0);
    }
}

@keyframes rotateX {
    0% {
        -webkit-transform: rotateY(0);
        transform: rotateY(0);
    }

    50% {
        -webkit-transform: rotateY(90deg);
        transform: rotateY(90deg);
    }

    100% {
        -webkit-transform: rotateY(0);
        transform: rotateY(0);
    }
}

/*お問い合わせフォームボタン*/
.contact-btn-01 .btn-inner>* {
    width: 300px;
    display: block;
    padding: 20px 10px;
    font-size: 16px;
    color: var(--txt-color-00);
    text-align: center;
    border-radius: 10px;
    background: var(--btn-color-04);
    position: relative;
}

@media (max-width: 599px) {
    .contact-btn-01.pattern-01 .btn-inner>* {
        width: 170px;
    }
}

/*ボタン上書き用*/
[class*="btn-mt-"] {
    --btn-mt-xlarge: 80px;
    --btn-mt-large: 60px;
    --btn-mt-medium: 40px;
    --btn-mt-small: 20px;
    --btn-mt-xsmall: 10px;
}

.btn-mt-xlarge {
    margin-top: var(--btn-mt-xlarge);
}

.btn-mt-large {
    margin-top: var(--btn-mt-large);
}

.btn-mt-medium {
    margin-top: var(--btn-mt-medium);
}

.btn-mt-small {
    margin-top: var(--btn-mt-small);
}

.btn-mt-xsmall {
    margin-top: var(--btn-mt-xsmall);
}

.btn-mt-none {
    margin-top: 0;
}

@media (max-width: 1024px) {
    .btn-mt-xlarge {
        margin-top: calc(var(--btn-mt-xlarge) * 0.8);
    }

    .btn-mt-large {
        margin-top: calc(var(--btn-mt-large) * 0.8);
    }

    .btn-mt-medium {
        margin-top: calc(var(--btn-mt-medium) * 0.8);
    }

    .btn-mt-small {
        margin-top: calc(var(--btn-mt-small) * 0.8);
    }

    .btn-mt-xsmall {
        margin-top: calc(var(--btn-mt-xsmall) * 0.8);
    }
}

@media (max-width: 599px) {
    .btn-mt-xlarge {
        margin-top: calc(var(--btn-mt-xlarge) * 0.6);
    }

    .btn-mt-large {
        margin-top: calc(var(--btn-mt-large) * 0.6);
    }

    .btn-mt-medium {
        margin-top: calc(var(--btn-mt-medium) * 0.6);
    }

    .btn-mt-small {
        margin-top: calc(var(--btn-mt-small) * 0.6);
    }

    .btn-mt-xsmall {
        margin-top: calc(var(--btn-mt-xsmall) * 0.6);
    }
}

/*===================================
  共通要素
===================================*/
/*h1ページタイトル */
.cmn-h1-01 {
    font-size: 12px;
    letter-spacing: -.1em;
    padding: 0 5px;
    color: #fff;
}


/*ヘッダーheader*/
body.drawer-active {
    overflow: hidden;
}

body.drawer-active .h1,
body.drawer-active .mainimg,
body.drawer-active .main,
body.drawer-active .footer {
    -webkit-filter: blur(3px);
    filter: blur(3px);
}

.overlay {
    width: 100%;
    height: 100%;
    display: none;
    overflow: hidden;
    background-color: rgba(16, 81, 97, 0.6);
    position: fixed;
    top: 0;
    right: 0;
    z-index: 20;

    -ms-touch-action: none;
    touch-action: none;
}

.drawer-active .overlay {
    display: block;
}

/*cmn-header*/
.header.fixed {
    width: 100%;
    -webkit-box-shadow: 0px 4px 2px -2px rgb(0 0 0 / 20%);
    box-shadow: 0px 4px 2px -2px rgb(0 0 0 / 20%);
    position: fixed;
    top: 0;
    left: 0;
    z-index: 10;
}

.cmn-header-01 {
    width: calc(100% - 250px);
    position: relative;
    z-index: 2;
}

.right.header_P07 {
    width: calc(100% - 250px);
}

.cmn-header-01 .left {
    width: 250px;
}

.cmn-header-01 .left .logo a {
    display: block;
    width: 100%;
}

.cmn-header-01 .left .logo img {
    width: 100%;
    display: block;
    padding-right: 15px;
    filter: drop-shadow(0 0 1px #fff) drop-shadow(0 0 1px #fff) drop-shadow(0 0 1px #fff);
}

.cmn-header-01 .icon {
    height: 30px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    align-items: center;
    -ms-flex-align: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.cmn-header-01 .icon img {
    width: auto;
    max-width: 100%;
    height: initial !important;
    max-height: 100%;
}

.cmn-header-01 .nav>ul>li>*:not(.dropdown-box) {
    display: block;
    text-align: center;
}

.cmn-header-01 .nav {
    max-width: 700px;
    margin-left: auto;
}

.cmn-header-01 .nav li {
    flex-grow: 1;
    font-size: 14px;
    color: #fff;
}

.cmn-header-01 .nav li.dropdown {
    overflow: hidden;
    cursor: pointer;
    position: relative;
}

[data-element-id] .cmn-header-01 .nav li.dropdown {
    overflow: visible;
}

.cmn-header-01 .nav li.dropdown:hover {
    overflow: visible;
}

.cmn-header-01 .nav li.dropdown .dropdown-box {
    width: 300px;
    visibility: hidden;
    margin: 0 auto;
    padding-top: 15px;
    opacity: 0;
    -webkit-transition: 0.3s linear;
    transition: 0.3s linear;
    -webkit-transform: translate(0, -10%);
    transform: translate(0, -10%);
    position: absolute;
    top: 100%;
    left: -150px;
    right: -150px;
}

[data-element-id] .cmn-header-01 .nav li.dropdown .dropdown-box {
    visibility: visible;
    opacity: 1;
    -webkit-transform: translate(0, 0);
    transform: translate(0, 0);
    position: static;
}

.cmn-header-01 .nav li.dropdown:hover .dropdown-box {
    visibility: visible;
    opacity: 1;
    -webkit-transform: translate(0, 0);
    transform: translate(0, 0);
}

.cmn-header-01 .nav li.dropdown ul {
    padding: 30px 20px;
    border-radius: 10px;
    background: var(--back-color-02);
    -webkit-box-shadow: 0px 4px 2px -2px rgb(0 0 0 / 20%);
    box-shadow: 0px 1px 10px 1px rgb(0 0 0 / 20%);
    position: relative;
}

.cmn-header-01 .nav li.dropdown ul:before {
    content: "";
    width: 0;
    height: 0;
    display: inline-block;
    margin: auto;
    border-width: 0 7px 7px 7px;
    border-style: solid;
    border-color: transparent transparent var(--back-color-02) transparent;
    position: absolute;
    top: -7px;
    left: 0;
    right: 0;
}

.cmn-header-01 .nav li.dropdown li {
    font-size: 16px;
}

.cmn-header-01 .nav li.dropdown li+li {
    margin-top: 10px;
}

.cmn-header-01 .nav li.dropdown li a {
    padding-bottom: 5px;
}

.cmn-header-01 .nav li.dropdown li a:after {
    content: ">";
    margin-left: 10px;
    margin-right: 4px;
    font-family: var(--txt-font-02);
    font-size: 22px;
    line-height: 1;
}

@media (max-width: 1024px) {
    .cmn-header-01 {
        width: 75%;
        height: 100%;
        padding: 40px 30px;
        background: var(--back-color-02);
        -webkit-transition: 0.3s linear;
        transition: 0.3s linear;
        -webkit-transform: translateX(100%);
        transform: translateX(100%);
        position: fixed;
        top: 0;
        right: 0;
        z-index: 9999;
    }

    .drawer-active .cmn-header-01 {
        -webkit-box-shadow: 0px 4px 2px -2px rgb(0 0 0 / 20%);
        box-shadow: -2px 4px 10px 2px rgb(0 0 0 / 20%);
        -webkit-transform: translateX(0);
        transform: translateX(0);
    }

    .cmn-header-01>* {
        height: 100%;
        overflow-y: scroll;
        -webkit-overflow-scrolling: touch;
    }

    .cmn-header-01 .left {
        width: 100%;
    }

    .lower .cmn-header-01 .left {
        padding-top: 0;
    }

    .cmn-header-01 .right {
        width: 100%;
        padding: 0 15px;
    }

    .cmn-header-01 .nav>ul>li {
        opacity: 1 !important;
        -webkit-transform: translateY(0px) !important;
        transform: translateY(0px) !important;
    }

    .cmn-header-01 .nav li {
        font-size: 18px;
    }

    .cmn-header-01 .nav li+li {
        margin-top: 20px;
    }

    .cmn-header-01 .nav>ul>li>*:not(.dropdown-box) {
        margin: 0;
        text-align: left;
    }

    .cmn-header-01 .nav li.dropdown .dropdown-box {
        width: auto;
        visibility: visible;
        margin: 0 auto;
        padding-top: 10px;
        padding-left: 5px;
        opacity: 1;
        -webkit-transform: inherit;
        transform: inherit;
        position: relative;
        top: 0;
        left: 0;
        right: auto;
    }

    .cmn-header-01 .nav li.dropdown ul {
        padding: 0;
        border-radius: 0;
        background: none;
        -webkit-box-shadow: inherit;
        box-shadow: inherit;
    }

    .cmn-header-01 .nav li.dropdown ul:before {
        display: none;
    }

    .cmn-header-01 .nav li.dropdown li {
        font-size: 16px;
    }

    .cmn-header-01 .nav li.dropdown li+li {
        margin-top: 10px;
    }

    .cmn-header-01 .nav li.dropdown li:before {
        content: "-";
        padding-right: 5px;
    }

    .cmn-header-01 .icon {
        display: none;
    }
}

@media (max-width: 599px) {
    .cmn-header-01 {
        width: calc(100% - 60px);
        padding: 10px 0px;
    }
}

/*ハンバーガーボタン*/
.cmn-hamburger-01 {
    width: 60px;
    height: 60px;
    border-radius: 5px;
    opacity: 0.8;
    cursor: pointer;
    -webkit-transition: 0.3s linear;
    transition: 0.3s linear;
    position: fixed;
    top: 10px;
    right: 10px;
    z-index: 9996;
}

[data-element-id] .cmn-hamburger-01 {
    width: 200px;
    height: 150px;
    margin: 40px 0 30px;
    margin-left: auto;
}


[data-element-id] .LINE {
    width: 200px;
    height: 150px;
    margin: 40px 0 30px;
    margin-left: auto;
}

.drawer-active .cmn-hamburger-01 {
    right: calc(75% + 10px);
}

.cmn-hamburger-01 .bar {
    width: 39px;
    height: 4px;
    margin-top: -1px;
    padding: 0;
    text-indent: 9998px;
    border-bottom: 4px solid;
    -webkit-transition: 0.3s linear;
    transition: 0.3s linear;
    position: absolute;
    top: 50%;
    left: 10px;
}

.drawer-active .cmn-hamburger-01 .bar {
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
}

.cmn-hamburger-01 .bar:before,
.cmn-hamburger-01 .bar:after {
    content: "";
    width: 40px;
    display: block;
    border-bottom: 4px solid;
    position: absolute;
    left: 0;
}

.cmn-hamburger-01 .bar:before {
    top: 15px;
}

.cmn-hamburger-01 .bar:after {
    top: -15px;
}

.drawer-active .cmn-hamburger-01 .bar:before,
.drawer-active .cmn-hamburger-01 .bar:after {
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg);
    top: 0;
    left: 0;
}

@media (max-width: 599px) {
    .cmn-hamburger-01 {
        width: 50px;
        height: 50px;
        top: 5px;
        right: 5px;
    }

    .drawer-active .cmn-hamburger-01 {
        right: calc(100% - 55px);
    }

    .cmn-hamburger-01 .bar {
        width: 35px;
        height: 3px;
        border-bottom: 3px solid;
        left: 7px;
    }

    .cmn-hamburger-01 .bar:before,
    .cmn-hamburger-01 .bar:after {
        width: 35px;
        border-bottom: 3px solid;
    }

}


.cmn-line {
    width: 60px;
    height: 60px;
    overflow: hidden;
    border-radius: 50%;
    -webkit-box-shadow: 0px 4px 2px -2px rgb(0 0 0 / 20%);
    box-shadow: 0px 5px 20px 2px rgb(0 0 0 / 20%);
    position: fixed;
    bottom: 20px;
    right: 20px;
    z-index: 10;
}

.cmn-line a {
    display: block;
    background-color: #06c755;
}

/*上に戻るボタン*/
.cmn-return-01 {
    width: 60px;
    height: 60px;
    visibility: hidden;
    border-radius: 50%;
    -webkit-box-shadow: 0px 4px 2px -2px rgb(0 0 0 / 20%);
    box-shadow: 0px 5px 20px 2px rgb(0 0 0 / 20%);
    opacity: 0;
    -webkit-transition: 0.5s ease-out;
    transition: 0.5s ease-out;
    position: fixed;
    bottom: 20px;
    right: 20px;
    z-index: 10;
}

[data-element-id] .cmn-return-01 {
    visibility: visible;
    opacity: 1;
}

.cmn-return-01.scroll-addition {
    visibility: visible;
    opacity: 1;
}

.cmn-return-01>* {
    width: 100%;
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    align-items: center;
    -ms-flex-align: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    font-size: 26px;
    text-align: center;
}

.logo-dummy {
    display: none;
}

.logo-dummy a {
    display: block;
}

@media (max-width: 1024px) {
    .cmn-return-01 {
        bottom: 10px;
        right: 10px;
    }

    .logo-dummy {
        display: block;
        width: 150px;
        position: absolute;
        top: 10px;
        left: 10px;
        z-index: 2;
    }

    .cmn-line {
        width: 60px;
        height: 60px;
        border-radius: 5px;
        bottom: 10px;
        right: 10px;
        z-index: 9996;
        overflow: hidden;
    }

    .left .logo {
        max-width: 250px;
        margin-left: 0;
        margin-right: auto;
        text-align: left;
        padding-left: 10px;
    }
}

@media (max-width: 599px) {
    .cmn-return-01 {
        width: 50px;
        height: 50px;
        bottom: 5px;
        right: 5px;
    }

    .cmn-return-01>* {
        font-size: 22px;
    }

    .logo-dummy {
        top: 5px;
        left: 5px;
    }

    .cmn-line {
        width: 50px;
        height: 50px;
        bottom: 5px;
        right: 5px;
    }

    .left .logo {
        max-width: 250px;
        margin-left: auto;
        margin-right: auto;
        text-align: center;
    }


}

/*===================================
フッター footer
===================================*/
/*cmn-footer*/
.cmn-footer-01 .logo img {
    width: 250px;
    max-width: 100%;
}

.cmn-footer-01 .telbox li {
    display: flex;
    align-items: center;
}

.cmn-footer-01 .telbox li+li {
    margin-top: 7px;
    padding-top: 7px;
    border-top: 1px solid;
}

.cmn-footer-01 .telbox li .tel {
    font-size: 24px;
    line-height: 1;
}

.cmn-footer-01 .telbox li .tel .sub {
    font-size: 80%;
}

.holiday dd {
    border-left: 1px solid;
}

.cmn-footer-02 .box {
    padding: 10px 0 30px;
    position: relative;
    z-index: 1;
}

.cmn-footer-02 .box .border {
    width: 100%;
    height: 100%;
    border: 20px solid;
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
}

.cmn-footer-02 .box .tag {
    padding: 5px 20px;
}

.cmn-footer-02 .box .tit {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    align-items: center;
    -ms-flex-align: center;
}

.cmn-footer-02 .box .tit .deco:first-of-type {
    width: 5px;
    margin-right: 10px;
    border-top: 25px solid;
    border-left: 3px solid transparent;
    border-right: 0px solid transparent;
    -webkit-transform: rotate(-30deg);
    transform: rotate(-30deg);
}

.cmn-footer-02 .box .tit .deco:last-of-type {
    width: 5px;
    margin-left: 10px;
    border-top: 25px solid;
    border-left: 3px solid transparent;
    border-right: 0px solid transparent;
    -webkit-transform: rotate(40deg);
    transform: rotate(40deg);
}

.pref-wrap>span {
    margin-right: 5px;
}

.ind-4 {
    text-indent: -4em;
    padding-left: 4em;
}

@media (max-width: 599px) {
    .cmn-footer-02 .box .tag {
        padding: 5px 10px;
    }
}

.cmn-footer-03 ul+ul {
    margin-top: 20px;
}

.cmn-footer-03 li {
    position: relative;
}

.cmn-footer-03 li+li {
    margin-left: 20px;
    padding-left: 20px;
}

.cmn-footer-03 li+li:before {
    content: "";
    height: 20px;
    border-left: 1px solid var(--txt-color-02);
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    position: absolute;
    top: 25%;
    left: 0;
}

@media (max-width: 1024px) {
    .cmn-footer-03 ul+ul {
        margin-top: 0;
    }

    .cmn-footer-03 li,
    .cmn-footer-03 li+li {
        width: 25%;
        margin: 0;
        margin-bottom: 15px;
        padding: 0;
        padding-left: 10px;
    }

    .cmn-footer-03 li:before,
    .cmn-footer-03 li+li:before {
        content: "";
        height: 20px;
        border-left: 2px solid var(--txt-color-02);
        -webkit-transform: translateY(-50%);
        transform: translateY(-50%);
        position: absolute;
        top: 50%;
        left: 0;
    }
}

@media (max-width: 599px) {

    .cmn-footer-03 li,
    .cmn-footer-03 li+li {
        width: 50%;
    }
}

/*コピーライト*/

/*固定ボタン*/
.cmn-fixed-01 {
    width: 250px;
    height: 100%;
    padding: 10px 20px;
    background: var(--back-color-00);
    position: relative;
}

.cmn-fixed-01 .fixed-btn .btn-inner>* {
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    align-items: center;
    -ms-flex-align: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    padding: 5px 0px;
    font-size: 17px;
    text-align: center;
    border-radius: 10px;
    position: relative;
    z-index: 0;
}

.cmn-fixed-01 .fixed-btn .btn-inner.insta-btn>* {
    color: #fff;
    background: linear-gradient(135deg, #427eff 0%, #f13f79 70%) no-repeat;
}

.cmn-fixed-01 .fixed-btn .btn-inner.line-btn>* {
    color: #fff;
    background: #06c755;
}

.cmn-fixed-01 .fixed-btn .btn-inner.line-btn .line-pare::before {
    width: 20px;
    height: 20px;
}


.fixed-btn .insta-btn .btntxt {
    letter-spacing: .07em;
}


.cmn-fixed-01 .fixed-btn .btn-inner>* .icon {
    width: 20px;
    display: inline-block;
    height: 2em;
}



.cmn-fixed-01 .tel-btn {
    width: 200px;
    visibility: hidden;
    margin: 0 auto;
    border-radius: 0 0 10px 10px;
    opacity: 0;
    -webkit-transition-duration: 1.6s;
    transition-duration: 1.6s;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    z-index: -1;
}

[data-element-id] .cmn-fixed-01 .tel-btn {
    visibility: visible;
    opacity: 1;
    position: relative;
    z-index: 1;
}

.fixed-btn .btntxt {
    letter-spacing: -.1em;
}

.cmn-fixed-01.scroll-addition .tel-btn {
    visibility: visible;
    opacity: 1;
    top: 100%;
}

.cmn-fixed-01 .tel-btn>* {
    width: 100%;
    height: 100%;
    display: block;
    padding: 10px;
}

.tel-pare,
.cont-pare {
    display: inline-block;
    padding-left: 22px;
    position: relative;
}


.line-pare {
    display: inline-block;
    position: relative;
    padding-left: 35px;
}

.tel-pare.big,
.cont-pare.big {
    padding-left: 35px;
}

.tel-pare::before {
    content: "";
    width: 20px;
    height: 20px;
    background-image: url('/import/tenant_1/162.43.7.125/images/tel.webp');
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    position: absolute;
    top: 55%;
    left: 0;
    transform: translateY(-50%);
}

.cont-pare::before {
    content: "";
    width: 20px;
    height: 20px;
    background-image: url('/import/tenant_1/162.43.7.125/images/icon-01.webp');
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    position: absolute;
    top: 55%;
    left: 0;
    transform: translateY(-50%);
}

.insta-btn .cont-pare::before {
    background-image: url('/import/tenant_1/162.43.7.125/images/insta.webp');
}

.line-btn .cont-pare::before {
    background-image: url('/import/tenant_1/162.43.7.125/images/line01.webp');
}

.line-pare::before {
    content: "";
    width: 30px;
    height: 30px;
    background-image: url('/import/tenant_1/162.43.7.125/images/line01.webp');
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    position: absolute;
    top: 55%;
    left: 0;
    transform: translateY(-50%);
}

.insta .line-pare::before {
    background-image: url('/import/tenant_1/162.43.7.125/images/insta.webp');
}

.tel-pare.big::before {
    width: 30px;
    height: 30px;
}

.cont-pare.big::before {
    width: 30px;
    height: 30px;
    background-image: url('/import/tenant_1/162.43.7.125/images/mail.webp');
}

.line-btn a {
    width: 100%;
    height: 100%;
    display: block;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    align-items: center;
    -ms-flex-align: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    padding: 10px 10px;
    background-color: #06c755;
    color: #fff;
}

.line-btn.insta a {
    background: linear-gradient(135deg, #427eff 0%, #f13f79 70%) no-repeat;
}



@media (max-width: 1024px) {
    .cmn-fixed-01 {
        width: calc(100% - 90px);
        height: auto;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        padding: 0;
        background: none;
        position: fixed;
        bottom: 10px;
        left: 10px;
        z-index: 10;
    }

    .cmn-fixed-01>*,
    .fixed-btn{
        width: calc(50% - 5px);
    }

    .cmn-fixed-01 .fixed-btn .btn-inner>* {
        height: 50px;
        padding: 15px 10px;
        font-size: 20px;
    }

    .cmn-fixed-01 .fixed-btn .sub {
        margin-right: 10px;
        padding: 2px 10px;
        font-size: 16px;
    }
}

@media (max-width: 599px) {
    .cmn-fixed-01 {
        width: calc(100% - 70px);
        bottom: 5px;
        left: 5px;
    }

    .cmn-fixed-01 .fixed-btn .btn-inner>* {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        padding: 10px 10px;
        font-size: 16px;
    }

    .cmn-fixed-01 .fixed-btn .btn-inner.tel>* {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
        flex-direction: row-reverse;
    }

    .cmn-fixed-01 .fixed-btn .btn-inner>* .icon {
        margin-right: 5px;
    }

    .cmn-fixed-01 .fixed-btn .btn-inner>* .icon img {
        width: 20px;
    }

    .cmn-fixed-01 .fixed-btn .sub {
        margin-right: 0;
        padding: 0;
        color: var(--txt-color-00);
        background: none;
    }
}

/*パンクズ*/
.cmn-pankuzu-01 li {
    display: inline;
    font-size: 14px;
    letter-spacing: 2px;
}

.cmn-pankuzu-01 li+li:before {
    content: "\f0da";
    margin: 0 10px;
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    font-weight: bold;
    font-size: 14px;
    color: var(--txt-color-04);
}

@media (max-width: 599px) {
    .cmn-pankuzu-01 li {
        font-size: 12px;
    }

    .cmn-pankuzu-01 li+li:before {
        margin: 0 5px;
    }
}

/*===================================
  TOPページ
===================================*/
/*メインビジュアルの高さをpadding-topで取る*/
/* メインビジュアル */
.cmn-mainimg-01 {
    overflow: hidden;
    position: relative;
    z-index: 1;
}

.cmn-mainimg-01 img {
    width: 100%;
}

.cmn-mainimg-01 .uk-slidenav-position {
    overflow: hidden;
    position: relative;
}

.cmn-mainimg-01 .uk-slidenav-position:after {
    content: "";
    display: block;
    padding-top: 700px;
}

.cmn-mainimg-01 .uk-slideshow {
    width: 100%;
    height: 100% !important;
    position: absolute;
    top: 0;
}

.cmn-mainimg-01 .uk-slideshow li {
    height: 100% !important;
}

[data-element-id] .uk-slideshow li {
    opacity: 1;
}

.cmn-mainimg-01 .uk-slideshow .uk-flex {
    height: 100%;
}

.cmn-mainimg-01 .uk-slideshow img {
    width: 100%;
    height: 100% !important;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: 50% 50%;
    object-position: 50% 50%;
}

.cmn-mainimg-01 .catch {
    max-width: 1000px;
    font-size: 50px;
    text-shadow: 0 0 12px #585858, 0 0 12px #585858, 0 0 12px #585858;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    position: absolute;
    top: 50%;
    left: 8%;
}

.cmn-mainimg-01 .catch .catch-main {
    line-height: 1.4;
}

.cmn-mainimg-01 .catch .catch-sub {
    margin-top: 30px;
    font-size: 45%;
    line-height: 2;
}

.cmn-mainimg-01 .contact {
    border-radius: 50%;
    width: 200px;
    height: 200px;
    position: absolute;
    top: 6%;
    right: 10%;
    z-index: 1;
    overflow: hidden;
}

.cmn-mainimg-01 .contact>a {
    width: 100%;
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    align-items: center;
    -ms-flex-align: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.cmn-mainimg-01 .contact .sub-tit {
    font-size: 32px;
    line-height: 0.8;
    text-align: center;
}

.cmn-mainimg-01 .contact .main-tit {
    display: inline-block;
    line-height: 1.2;
    position: relative;
    font-size: 16px;
    margin: 3px 0;
}

.cmn-mainimg-01 .contact .main-tit .deco:first-of-type,
.cmn-mainimg-01 .contact .main-tit .deco:first-of-type:after {
    width: 5px;
    border-top: 25px solid;
    border-left: 3px solid transparent;
    border-right: 0px solid transparent;
    -webkit-transform: rotate(-30deg);
    transform: rotate(-30deg);
    -webkit-transform-origin: top;
    transform-origin: top;
    position: absolute;
    bottom: 10px;
    right: calc(100% + 15px);
}

.cmn-mainimg-01 .contact .main-tit .deco:first-of-type:after {
    content: "";
    bottom: -10px;
}

.cmn-mainimg-01 .contact .main-tit .deco:last-of-type,
.cmn-mainimg-01 .contact .main-tit .deco:last-of-type:after {
    width: 5px;
    border-top: 25px solid;
    border-left: 3px solid transparent;
    border-right: 0px solid transparent;
    -webkit-transform: rotate(30deg);
    transform: rotate(30deg);
    -webkit-transform-origin: top;
    transform-origin: top;
    position: absolute;
    bottom: 10px;
    left: calc(100% + 15px);
}

.cmn-mainimg-01 .contact .main-tit .deco:last-of-type:after {
    content: "";
    bottom: -10px;
}

.cmn-mainimg-01 .contact .num {
    margin-top: 3px;
    letter-spacing: -.07em;
    font-size: 28px;
    line-height: 1;
    text-shadow: 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff;
    white-space: nowrap;
    position: relative;
}

.cmn-mainimg-01 .contact .explanation {
    margin-bottom: 5px;
    font-weight: bold;
    font-size: 13px;
    color: rgb(255, 0, 0);
    line-height: 1.2;
}

.cmn-mainimg-01 .contact .icon img {
    max-width: 28px;
}

@media (max-width: 1024px) {
    .cmn-mainimg-01 .uk-slidenav-position:after {
        padding-top: 60%;
    }

    .cmn-mainimg-01 .catch {
        font-size: 34px;
        left: 5%;
    }

    .cmn-mainimg-01 .contact {
        top: 5%;
        right: 5%;
    }
}

@media (max-width: 599px) {
    .cmn-mainimg-01 .uk-slidenav-position:after {
        padding-top: 180%;
    }

    .cmn-mainimg-01 .catch {
        font-size: 30px;
        left: 3%;
    }

    .cmn-mainimg-01 .catch .catch-sub {
        margin-top: 20px;
    }

    .cmn-mainimg-01 .contact {
        width: 190px;
        height: 190px;
        top: 3%;
        right: 4%;
    }

    .cmn-mainimg-01 .contact .num {
        font-size: 24px;
    }

    .cmn-mainimg-01 .contact .icon img {
        max-width: 24px;
    }

    .cmn-mainimg-01 .contact .explanation {
        font-size: 12px;
    }
}

/*===================================
  下層
===================================*/
/*下層メインビジュアル*/
.cmn-lowerimg-01 .pic {
    width: 100%;
    display: block;
    position: relative;
}

.cmn-lowerimg-01 .pic img {
    width: 100%;
    height: 100% !important;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: 50% 50%;
    object-position: 50% 50%;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
}

.cmn-lowerimg-01 .pic:after {
    content: "";
    display: block;
    padding-top: 400px;
}

.cmn-lowerimg-01 .catch {
    font-size: 40px;
    line-height: 1;
    text-align: right;
    position: absolute;
    bottom: 2%;
    right: 5%;
    z-index: 1;
}

.cmn-lowerimg-01 .catch .catch-main {
    letter-spacing: 4px;
    text-shadow: 0 0 12px #585858, 0 0 12px #585858;
}

.cmn-lowerimg-01 .catch .catch-sub {
    font-size: 260%;
    white-space: nowrap;
    -webkit-transform: rotate(-10deg);
    transform: rotate(-10deg);
    -webkit-transform-origin: right;
    transform-origin: right;
    position: absolute;
    bottom: 40px;
    right: 120px;
}

[data-element-id] .cmn-lowerimg-01 .catch .catch-sub {
    -webkit-transform: inherit;
    transform: inherit;
    position: static;
}

.cmn-lowerimg-01 .cmn-deco-left,
.cmn-lowerimg-01 .cmn-deco-right {
    width: calc(50% + 1px);
    height: 160px;
    position: absolute;
    bottom: -1px;
}

.cmn-lowerimg-01 .cmn-deco-left {
    left: 0;

    -webkit-clip-path: polygon(100% 0%, 0% 100%, 100% 100%);
    clip-path: polygon(100% 0%, 0% 100%, 100% 100%);
}

.cmn-lowerimg-01 .cmn-deco-right {
    right: 0;

    -webkit-clip-path: polygon(100% 0%, 0% 100%, 100% 100%);
    clip-path: polygon(0 0%, 0% 100%, 100% 100%);
}

@media (max-width: 1024px) {

    .cmn-lowerimg-01 .cmn-deco-left,
    .cmn-lowerimg-01 .cmn-deco-right {
        height: 80px;
    }

    .cmn-lowerimg-01 .pic:after {
        padding-top: 300px;
    }

    .cmn-lowerimg-01 .catch {
        font-size: 30px;
    }

    .cmn-lowerimg-01 .catch .catch-sub {
        font-size: 200%;
    }
}

@media (max-width: 599px) {

    .cmn-lowerimg-01 .cmn-deco-left,
    .cmn-lowerimg-01 .cmn-deco-right {
        height: 50px;
    }

    .cmn-lowerimg-01 .pic:after {
        padding-top: 180px;
    }

    .cmn-lowerimg-01 .catch {
        font-size: 26px;
    }

    .cmn-lowerimg-01 .catch .catch-sub {
        font-size: 180%;
        bottom: 30px;
        right: 60px;
    }
}

/*cmn-contact*/
.cmn-contact-01 .box {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 30px;
}

.cmn-contact-01 .box .tel .icon {
    margin-right: 5px;
}

.cmn-contact-01 .box .tel .icon img {
    width: 32px;
    max-width: 100%;
}

.cmn-contact-01 .box .btn a {
    width: 100%;
    height: 100%;
    display: block;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    align-items: center;
    -ms-flex-align: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    padding: 9px 10px;
}

.cmn-contact-02 .box {
    padding: 20px;
    border-radius: 10px;
}

.cmn-contact-02 .box .holiday dd {
    border-left: 1px solid;
}

.cmn-contact-02 .box .telbox {
    padding-left: 50px;
    position: relative;
}

.cmn-contact-02 .box .telbox .c-tel.big {
    width: 45px;
    height: 45px;
    position: absolute;
    top: 0px;
    left: 0;
}

@media (max-width: 599px) {
    .cmn-contact-02 .box .telbox {
        padding-left: 40px;
    }

    .cmn-contact-02 .box .telbox .c-tel.big {
        width: 34px;
        height: 34px;
    }
}

.cmn-contact-03 .form input,
.cmn-contact-03 .form textarea {
    padding: 10px 10px;
    border-radius: 5px;
}

.cmn-contact-03 .form textarea {
    height: 300px;
}

.cmn-contact-03 .form .label {
    display: inline-block;
    padding: 0px 10px;
    font-size: 12px;
    border-radius: 30px;
}

.cmn-contact-03 .form dl {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
    align-items: center;
    -ms-flex-align: center;
    padding-bottom: 30px;
    border-bottom: 1px solid var(--txt-color-02);
}

.cmn-contact-03 .form dl+dl {
    margin-top: 30px;
}

.cmn-contact-03 .form dt {
    width: 30%;
    padding-right: 20px;
}

.cmn-contact-03 .form dd {
    width: 70%;
}

.cmn-contact-03 .form dd.radiobtn .item+.item {
    margin-top: 10px;
}

.cmn-contact-03 .form dd.radiobtn label {
    display: inline-block;
    padding: 0 10px 0 30px;
    position: relative;
}

.cmn-contact-03 .form dd.radiobtn label::before {
    content: "";
    width: 20px;
    height: 20px;
    display: block;
    border: 2px solid var(--txt-color-03);
    border-radius: 3px;
    border-radius: 50%;
    background-color: var(--back-color-00);
    position: absolute;
    top: 3px;
    left: 0;
}

.cmn-contact-03 .form dd.radiobtn label:hover {
    cursor: pointer;
}

.cmn-contact-03 .form dd.radiobtn input {
    display: none;
}

.cmn-contact-03 .form dd.radiobtn input:checked+label::after {
    content: "";
    width: 14px;
    height: 14px;
    display: block;
    border-radius: 3px;
    border-radius: 50%;
    background-color: var(--back-color-02);
    position: absolute;
    top: 0.4em;
    left: 0.2em;
}

.cmn-contact-03 .form dd.radiobtn input+label {
    margin-left: 15px;
}

@media (max-width: 599px) {
    .cmn-contact-03 .form textarea {
        height: 200px;
    }

    .cmn-contact-03 .form dt {
        width: 100%;
        padding-right: 0px;
        font-size: 14px;
        display: flex;
        margin-bottom: 5px;
    }

    .cmn-contact-03 .form .label {
        margin-left: 5px;
    }

    .cmn-contact-03 .form dd {
        width: 100%;
        font-size: 14px;
    }

    .cmn-contact-03 .form dd.radiobtn input+label {
        margin-left: 0px;
    }

    .cmn-contact-03 .form dd.radiobtn label::before {
        top: 0;
    }
}

/*cmn-recruit*/
.cmn-recruit-01 .box a {
    display: block;
    overflow: hidden;
}

.cmn-recruit-01 .box:nth-of-type(odd) a {
    -webkit-clip-path: polygon(0 18%, 100% 0, 100% 100%, 0% 100%);
    clip-path: polygon(0 18%, 100% 0, 100% 100%, 0% 100%);
}

.cmn-recruit-01 .box:nth-of-type(even) a {
    -webkit-clip-path: polygon(0 0, 100% 18%, 100% 100%, 0% 100%);
    clip-path: polygon(0 0, 100% 18%, 100% 100%, 0% 100%);
}

.cmn-recruit-01 .box a [class*=up-ofi] {
    overflow: hidden;
}

.cmn-recruit-01 .box a [class*=up-ofi]:after {
    content: "";
    width: 100%;
    height: 100%;
    background: var(--back-color-04);
    opacity: 0.5;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
}

.cmn-recruit-01 .box a .txt {
    text-shadow: 0 0 10px #fff;
}

@media (max-width: 599px) {
    .cmn-recruit-01 .box:nth-of-type(even) {
        margin-top: -11%;
    }

    .cmn-recruit-01 .box:nth-of-type(odd) a {
        -webkit-clip-path: polygon(0 0%, 100% 0, 100% 100%, 0% 88%);
        clip-path: polygon(0 0%, 100% 0, 100% 100%, 0% 88%);
    }

    .cmn-recruit-01 .box:nth-of-type(even) a {
        -webkit-clip-path: polygon(0 0, 100% 11%, 100% 100%, 0% 100%);
        clip-path: polygon(0 0, 100% 11%, 100% 100%, 0% 100%);
    }
}

.cmn-recruit-02 ul li>* {
    -webkit-box-shadow: 0px 4px 2px -2px rgb(0 0 0 / 20%);
    box-shadow: 0px 4px 2px -2px rgb(0 0 0 / 20%);
    position: relative;
}

.cmn-recruit-02 ul li:not(:last-of-type)>*:after {
    content: "\f061";
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    font-size: 30px;
    color: var(--txt-color-02);
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    position: absolute;
    top: 50%;
    right: -38px;
}

.cmn-recruit-02 ul {
    padding: 0 20px;
}

.cmn-recruit-02 ul li .txtbox {
    padding: 20px;
}

.cmn-recruit-02 ul li .tit {
    font-size: 16px;
    letter-spacing: -.1em;
}

.cmn-recruit-02 ul li .tit.for-sp {
    font-size: 14px;
}

@media (max-width: 1024px) {
    .cmn-recruit-02 ul li:not(:last-of-type)>*:after {
        right: -32px;
    }
}

@media (max-width: 599px) {
    .cmn-recruit-02 ul li:not(:last-of-type)>*:after {
        font-size: 18px;
        right: -23px;
    }

    .cmn-recruit-02 ul li .txtbox {
        padding: 15px 5px;
    }
}

.cmn-recruit-03 .list li {
    font-size: 20px;
}

.cmn-recruit-03 .list li .icon {
    margin-right: 10px;
}

.cmn-recruit-03 li a {
    display: block;
}

.cmn-recruit-03 li .pic {
    width: calc(100% - 30px);
}

.cmn-recruit-03 li .txtbox {
    width: calc(100% - 30px);
    margin-top: -30px;
    margin-left: auto;
    padding: 20px;
    -webkit-box-shadow: 0px 4px 2px -2px rgb(0 0 0 / 20%);
    box-shadow: 0px 4px 2px -2px rgb(0 0 0 / 20%);
    position: relative;
    z-index: 1;
}

.cmn-recruit-03 li .tit {
    margin-bottom: 5px;
    font-size: 18px;
}

.cmn-recruit-03 li .cate {
    display: inline-block;
}

.cmn-recruit-04 .box {
    padding: 50px 80px 60px;
}

.cmn-recruit-04 dl>.item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    padding-bottom: 20px;
    padding-left: 10px;
    padding-right: 10px;
    border-bottom: 2px dotted var(--txt-color-02);
}

.recruit-skill {
    border-bottom: 1px dotted var(--txt-color-02);
}

.cmn-recruit-04 dl>.item+.item {
    margin-top: 20px;
}

.cmn-recruit-04 .tit {
    width: 30%;
    padding-right: 20px;
}

.cmn-recruit-04 .txt {
    width: 70%;
}

@media (max-width: 599px) {
    .cmn-recruit-04 .box {
        padding: 40px 10px 50px;
    }

    .cmn-recruit-04 dl>* {
        padding-left: 0;
        padding-right: 0;
    }

    .cmn-recruit-04 .tit {
        width: 40%;
        padding-right: 10px;
    }

    .cmn-recruit-04 .txt {
        width: 60%;
    }
}

.cmn-recruit-05 a {
    display: block;
}

.cmn-recruit-05 a:hover {
    opacity: 1;
}

.cmn-recruit-05 a .back-img-item {
    overflow: hidden;
    -webkit-filter: brightness(0.7);
    filter: brightness(0.7);
    -webkit-transition: 0.4s ease;
    transition: 0.4s ease;
}

.cmn-recruit-05 a:hover .back-img-item {
    -webkit-filter: brightness(0.4);
    filter: brightness(0.4);
}

/*cmn-news*/
.cmn-news-01 li {
    padding: 0 5px 20px;
    border-bottom: 1px solid var(--txt-color-02);
}

.cmn-news-01 li+li {
    margin-top: 20px;
}

/*cmn-blog*/
.cmn-blog-02 .box {
    padding: 30px;
}

@media (max-width: 599px) {
    .cmn-blog-02 .box {
        padding: 20px;
    }
}

/*cmn-faq*/
.cmn-faq-01 .box>* {
    padding: 25px 100px;
    position: relative;
}

.cmn-faq-01 .box>*+* {
    padding-top: 25px;
}

.cmn-faq-01 .box>*+*:before {
    content: "";
    width: calc(100% - 80px);
    display: block;
    margin: auto;
    border-top: 1px solid var(--txt-color-04);
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
}

.cmn-faq-01 .box .mark {
    width: 40px;
    height: 40px;
    font-size: 26px;
    line-height: 30px;
    text-align: center;
    border: 3px solid;
    border-radius: 5px;
    position: absolute;
    top: 21px;
    left: 40px;
}

.cmn-faq-01 .box>*+* .mark {
    line-height: 38px;
    border: none;
    top: 20px;
}

.cmn-faq-01 .box .arrow {
    border-top: 15px solid;
    border-bottom: 15px solid transparent;
    border-left: 15px solid transparent;
    border-right: 15px solid transparent;
    -webkit-transition: 0.4s ease;
    transition: 0.4s ease;
    -webkit-transform-origin: top;
    transform-origin: top;
    position: absolute;
    top: 35px;
    right: 60px;
}

.cmn-faq-01 .box .is-parent .arrow {
    -webkit-transform: rotateX(180deg);
    transform: rotateX(180deg);
    top: 50px;
}

.cmn-faq-01 .box .txt {
    font-size: 20px;
}

@media (max-width: 1024px) {
    .cmn-faq-01 .box>* {
        padding: 25px 80px;
    }

    .cmn-faq-01 .box>*+*:before {
        width: calc(100% - 40px);
    }

    .cmn-faq-01 .box .mark {
        left: 20px;
    }

    .cmn-faq-01 .box .arrow {
        right: 20px;
    }
}

@media (max-width: 599px) {
    .cmn-faq-01 .box>* {
        padding: 20px 50px;
    }

    .cmn-faq-01 .box>*+* {
        padding-top: 20px;
    }

    .cmn-faq-01 .box>*+*:before {
        width: calc(100% - 23px);
    }

    .cmn-faq-01 .box .txt {
        font-size: 16px;
    }

    .cmn-faq-01 .box .mark {
        width: 30px;
        height: 30px;
        font-size: 20px;
        line-height: 24px;
        border: 2px solid;
        left: 10px;
    }

    .cmn-faq-01 .box>*+* .mark {
        top: 17px;
    }

    .cmn-faq-01 .box .arrow {
        border-top: 10px solid;
        border-bottom: 10px solid transparent;
        border-left: 10px solid transparent;
        border-right: 10px solid transparent;
        top: 28px;
        right: 10px;
    }

    .cmn-faq-01 .box .is-parent .arrow {
        top: 40px;
    }
}

.cmn-faq-02 .box>* {
    margin-left: 60px;
    position: relative;
}

.cmn-faq-02 .box dt {
    padding: 10px 45px 10px 10px;
    font-size: 20px;
    border-bottom: 1px solid var(--txt-color-02);
}

.cmn-faq-02 .box dd {
    padding: 10px 10px 0;
    font-size: 16px;
    line-height: 1.8;
}

.cmn-faq-02 .box .mark {
    font-size: 40px;
    line-height: 1;
    position: absolute;
    top: 0px;
    right: calc(100% + 20px);
}

[data-element-id] .cmn-faq-02 .box:nth-of-type(n + 6) {
    display: none;
}

.cmn-faq-02 .box .arrow {
    border-top: 15px solid;
    border-bottom: 15px solid transparent;
    border-left: 15px solid transparent;
    border-right: 15px solid transparent;
    -webkit-transition: 0.4s ease;
    transition: 0.4s ease;
    -webkit-transform-origin: top;
    transform-origin: top;
    position: absolute;
    top: 20px;
    right: 10px;
}

.cmn-faq-02 .box .is-parent .arrow {
    -webkit-transform: rotateX(180deg);
    transform: rotateX(180deg);
    top: 32px;
}

@media (max-width: 599px) {
    .cmn-faq-02 .box>* {
        margin-left: 30px;
    }

    .cmn-faq-02 .box .mark {
        font-size: 30px;
        right: calc(100% + 5px);
    }

    .cmn-faq-02 .box .arrow {
        border-top: 10px solid;
        border-bottom: 10px solid transparent;
        border-left: 10px solid transparent;
        border-right: 10px solid transparent;
    }

    .cmn-faq-02 .box dt {
        padding: 5px 35px 10px 5px;
        font-size: 16px;
    }

    .cmn-faq-02 .box dd {
        padding: 10px 5px 0;
        font-size: 14px;
    }
}

/*cmn-service*/
.cmn-service-01 li a {
    display: block;
    margin: 15px 0px 0;
    border-radius: 5px;
}

.cmn-service-01 li .box {
    height: 100%;
    padding: 15px 15px 30px;
    border-radius: 5px;
    position: relative;
}

.cmn-service-01 li .num {
    font-size: 70px;
    line-height: 1;
    -webkit-transform: rotate(-5deg);
    transform: rotate(-5deg);
    position: absolute;
    top: -30px;
    left: -5px;
    z-index: 1;
}

[data-element-id] .cmn-service-01 li .num {
    -webkit-transform: inherit;
    transform: inherit;
}

.cmn-service-01 li .pic {
    overflow: hidden;
}

.cmn-service-01 li .txtbox {
    margin-top: 20px;
}

.cmn-service-01 li .tit {
    font-size: 20px;
    text-align: center;
}

.cmn-service-01 li .txt {
    margin-top: 10px;
}

@media (max-width: 599px) {
    .cmn-service-01 li a {
        margin: 15px 5px 0;
    }

    .cmn-service-01 li .box {
        padding: 6px 6px 15px;
    }

    .cmn-service-01 li .num {
        font-size: 50px;
        top: -25px;
        left: -16px;
    }

    .cmn-service-01 li .txtbox {
        margin-top: 15px;
    }

    .cmn-service-01 li .tit {
        font-size: 16px;
    }

    .cmn-service-01 li .txt {
        font-size: 14px;
    }

}

.cmn-service-02 .back-img-item img {
    -webkit-filter: brightness(0.7) blur(10px);
    filter: brightness(0.7) blur(10px);
}

.cmn-service-02 .list li {
    padding-left: 40px;
    position: relative;
}

.cmn-service-02 .list li:before {
    content: "";
    width: 25px;
    height: 25px;
    border-radius: 50%;
    background: var(--back-color-02);
    position: absolute;
    top: 2px;
    left: 0;
}

.cmn-service-02 .list li:after {
    content: "\f00c";
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    font-size: 18px;
    color: var(--txt-color-00);
    position: absolute;
    top: -1px;
    left: 3px;
}

@media (max-width: 599px) {
    .cmn-service-02 .list li {
        padding-left: 30px;
    }

    .cmn-service-02 .list li:before {
        width: 22px;
        height: 22px;
        top: 4px;
    }

    .cmn-service-02 .list li:after {
        font-size: 16px;
        top: 2px;
    }
}

.cmn-service-03 a {
    display: block;
    -webkit-filter: drop-shadow(2px 4px 6px black);
    filter: drop-shadow(2px 4px 6px black);
    position: relative;
}

.cmn-service-03 a:hover {
    opacity: 1;
    -webkit-filter: drop-shadow(0px 0px 0px black);
    filter: drop-shadow(0px 0px 0px black);
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.cmn-service-03 .pic {
    width: 100%;
    height: 100%;
    overflow: hidden;
    -webkit-filter: brightness(0.7);
    filter: brightness(0.7);
    -webkit-transition: 0.4s ease;
    transition: 0.4s ease;
    position: absolute;
}

.cmn-service-03 a:hover .pic {
    -webkit-filter: brightness(0.4);
    filter: brightness(0.4);
}

.cmn-service-03 .ttl .txt-color-04 {
    filter: drop-shadow(0 0 1px #fff) drop-shadow(0 0 1px #fff) drop-shadow(0 0 1px #fff);
}

[data-element-id] .cmn-service-03 a:hover .pic {
    -webkit-filter: brightness(0.7);
    filter: brightness(0.7);
}

.cmn-service-03 .box .txtbox {
    width: 55%;
    margin-left: auto;
}

@media (max-width: 1024px) {
    .cmn-service-03 .box .txtbox {
        width: 95%;
        margin: 0 auto;
    }
}

.cmn-service-04 .box {
    padding: 30px 50px;
    border-radius: 10px;
}

.cmn-service-04 .box.mini {
    padding: 30px 30px;
    border-radius: 10px;
}

@media (max-width: 599px) {
    .cmn-service-04 .box {
        padding: 20px 20px;
    }

    .cmn-service-04 .box.mini {
        padding: 20px 20px;
    }
}

.cmn-service-05 .md-box {
    margin-top: 50px;
}

.cmn-service-05 .md-box ul {
    padding: 10px;
    border-radius: 10px;
    background: #fff;
}

.cmn-service-05 .md-box table {
    text-align: center;
}

.cmn-service-05 .table table {
    width: 100%;
}

.cmn-service-05 .table .table-inner {
    min-width: 450px;
}

.cmn-service-05 .table .cate:nth-of-type(1) {
    top: -60px;
    left: calc(0px + 10px);
}

.cmn-service-05 .table tbody tr+tr {
    border-top: 1px solid var(--txt-color-02);
}

.cmn-service-05 .table tr>* {
    padding: 10px;
}

.cmn-service-05 .table tr>*+* {
    border-left: 1px solid var(--txt-color-02);
}

.cmn-service-05 .table td {
    font-weight: bold;
    font-size: 1.2em;
    text-align: center;
}

.cmn-service-05 .table .table-01 {
    border-right: 1px solid var(--txt-color-02);
}

@media (max-width: 1024px) {
    .cmn-service-05 .box {
        margin-top: 0;
    }
}

@media (max-width: 599px) {
    .cmn-service-05 .table {
        text-align: left;
    }

    .cmn-service-05 .table .cate:nth-of-type(2) {
        left: auto;
        right: 0;
    }

    .cmn-service-05 .md-box ul {
        padding: 0px;
        border-radius: 0px;
        background: initial;
    }

    .cmn-service-05 .md-box li {
        padding-top: 30px;
    }

    .cmn-service-05 .md-box li:nth-child(2) {
        padding-top: 100px;
    }

    .cmn-service-05 .box {
        padding: 10px;
        border-radius: 10px;
        background: #fff;
    }

    .cmn-service-05 .table .table-01 {
        border-right: none;
    }
}


/*cmn-voice*/
.cmn-voice-01 .box {
    padding: 30px;
}

.cmn-voice-01 li a {
    display: block;
    margin-top: 30px;
    position: relative;
}

.cmn-voice-01 li .pic {
    border-radius: 30px;
    position: relative;
}

.cmn-voice-01 li .pic .hover-txt {
    width: 90%;
}

.cmn-voice-01 li .cate {
    white-space: nowrap;
}


/*.cmn-voice-01 li .cate {
    width: 120px;
    height: 93px;
    font-weight: 500;
    font-size: 18px;
    line-height: 85px;
    position: absolute;
    top: -25px;
    left: -45px;
    z-index: 1;
}*/


.cmn-voice-01 li .txtbox .txt {
    font-size: 20px;
    letter-spacing: 4px;
    text-align: center;
}

@media (max-width: 1024px) {
    .cmn-voice-01 .box {
        padding: 30px 50px 20px 20px;
    }

    .cmn-voice-01 li a {
        margin-top: 30px;
        margin-left: 20px;
    }

    .cmn-voice-01 li .cate {
        padding: 0 15px;
        height: 73px;
        font-size: 16px;
        line-height: 74px;
        top: -25px;
        left: -17px;
    }
}

@media (max-width: 599px) {
    .cmn-voice-01 .box {
        padding: 20px 20px 10px 10px;
    }

    .cmn-voice-01 li a {
        margin-top: 20px;
        margin-left: 10px;
    }

    .cmn-voice-01 li .cate {
        padding: 0 15px;
        height: 66px;
        font-size: 14px;
        line-height: 68px;
        top: -15px;
        left: -7px;
    }
}

.cmn-voice-02 li>* {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: start;
    align-items: flex-start;
    -ms-flex-align: start;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

.cmn-voice-02 li:nth-of-type(even)>* {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
}

.cmn-voice-02 li .imgbox {
    width: 200px;
    position: relative;
}

.cmn-voice-02 li .txtbox {
    width: calc(100% - 230px);
    padding: 30px;
    position: relative;
}

.cmn-voice-02 li .txtbox:before {
    content: "";
    width: 0;
    height: 0;
    display: inline-block;
    border-width: 15px 15px 15px 0;
    border-style: solid;
    border-color: transparent var(--txt-color-06) transparent transparent;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    position: absolute;
    top: 50%;
    right: 100%;
}

.cmn-voice-02 li:nth-of-type(even) .txtbox:before {
    border-width: 15px 0 15px 15px;
    border-color: transparent transparent transparent var(--txt-color-06);
    left: 100%;
    right: auto;
}

.cmn-voice-02 li .cate {
    display: inline-block;
    margin-bottom: 10px;
    font-size: 14px;
}

.cmn-voice-02 li .tit {
    margin-bottom: 10px;
    font-size: 20px;
    letter-spacing: 4px;
}

@media (max-width: 1024px) {
    .cmn-voice-02 li .imgbox {
        width: 160px;
    }

    .cmn-voice-02 li .txtbox {
        width: calc(100% - 180px);
    }
}

@media (max-width: 599px) {
    .cmn-voice-02 li .cate {
        height: 66px;
        font-size: 14px;
        line-height: 68px;
        top: -25px;
        left: -7px;
        padding: 0 7px;
        letter-spacing: -.08em;
    }

    .cmn-voice-02 li .imgbox {
        width: 120px;
    }

    .cmn-voice-02 li .txtbox {
        width: calc(100% - 140px);
        padding: 20px;
    }
}

.cmn-voice-03 .imgbox {
    width: 250px;
    position: relative;
}

.cmn-voice-03 .txtbox {
    width: calc(100% - 280px);
    padding: 30px;
    position: relative;
}

.cmn-voice-03 .txtbox:before {
    content: "";
    width: 0;
    height: 0;
    display: inline-block;
    border-width: 15px 15px 15px 0;
    border-style: solid;
    border-color: transparent var(--txt-color-06) transparent transparent;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    position: absolute;
    top: 50%;
    right: 100%;
}

.cmn-voice-03 .cate {
    display: inline-block;
    margin-bottom: 10px;
    font-size: 18px;
}

.cmn-voice-03 .tit {
    font-size: 20px;
    letter-spacing: 4px;
}

.cmn-voice-03 dl>* {
    padding-bottom: 10px;
    padding-left: 5px;
    padding-right: 5px;
    border-bottom: 1px solid var(--txt-color-02);
}

.cmn-voice-03 dl>*+* {
    margin-top: 20px;
}

.cmn-voice-03 dl dt {
    margin-bottom: 5px;
}

.cmn-voice-03 dl dt .icon {
    margin-right: 10px;
}

.cmn-voice-03 dl dd {
    font-size: 14px;
}

@media (max-width: 1024px) {
    .cmn-voice-03 .imgbox {
        width: 70%;
        margin: 0 auto;
    }

    .cmn-voice-03 .txtbox {
        width: 100%;
        margin-top: 30px;
    }

    .cmn-voice-03 .txtbox:before {
        margin: auto;
        border-width: 0 15px 15px 15px;
        border-style: solid;
        border-color: transparent transparent var(--txt-color-06) transparent;
        -webkit-transform: translateX(0);
        transform: translateX(0);
        top: auto;
        bottom: 100%;
        left: 0;
        right: 0;
    }
}

@media (max-width: 599px) {
    .cmn-voice-03 .txtbox {
        padding: 20px;
    }
}

/*cmn-flow*/
.cmn-flow-01 .right {
    margin-top: 15%;
    margin-left: -20%;
    position: relative;
    z-index: 1;
}

.cmn-flow-01 .box {
    padding: 60px 20px 30px;
    position: relative;
}

.cmn-flow-01 .pic {
    border: 20px solid;
}

@media (max-width: 1024px) {
    .cmn-flow-01 .right {
        margin-left: -40%;
    }
}

@media (max-width: 599px) {
    .cmn-flow-01 .right {
        margin-top: 45%;
        margin-left: -80%;
    }

    .cmn-flow-01 .box {
        padding: 40px 10px 20px;
    }

    .cmn-flow-01 .pic {
        border: 10px solid;
    }
}

.cmn-flow-02 li+li {
    margin-top: 50px;
}

.cmn-flow-02 li .box {
    padding: 30px;
    position: relative;
}

.cmn-flow-02 li .arrow {
    width: 140px;
    margin: auto;
    border-top: 25px solid;
    border-left: 70px solid transparent;
    border-right: 70px solid transparent;
    position: absolute;
    top: 100%;
    bottom: auto;
    left: 0;
    right: 0;
}

.cmn-flow-02 li:last-of-type .arrow {
    display: none;
}

.cmn-flow-02 li .num {
    width: 50px;
    height: 50px;
    display: block;
    margin-right: 20px;
    font-size: 30px;
    line-height: 50px;
    text-align: center;
    border-radius: 50% 40% 30% 50%;
}

.cmn-flow-02 li .tit {
    width: calc(100% - 70px);
    font-size: 25px;
    letter-spacing: 0;
}

@media (max-width: 1024px) {
    .cmn-flow-02 li .box {
        padding: 20px;
    }

    .cmn-flow-02 li .num {
        width: 40px;
        height: 40px;
        margin-right: 10px;
        font-size: 26px;
        line-height: 40px;
    }

    .cmn-flow-02 li .tit {
        font-size: 20px;
    }
}

.cmn-blog-01 li {
    padding-bottom: 15px;
    border-bottom: 1px solid var(--ttl-color-02);
}

.cmn-blog-01 li+li {
    margin-top: 20px;
}

/*cmn-works*/
[data-element-id] .cmn-works-01 ul.slick01>* {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

[data-element-id] .cmn-works-01 ul.slick01 li {
    width: 23%;
}

[data-element-id] .cmn-works-01 ul.slick01 li:nth-of-type(n + 5) {
    display: none;
}

.cmn-works-01 li a {
    display: block;
    margin-top: 30px;
    position: relative;
}

.cmn-works-01 li .pic {
    border-radius: 80px 80px 30px 30px;
    position: relative;
}

@media (max-width: 599px) {
    .cmn-works-01 li .pic {
        border-radius: 0;
    }

    .cmn-works-01 li .name {
        font-size: 14px;
    }
}

/*slick有 pattern-01*/
.cmn-works-01.pattern-01 li {
    margin: 0 10px;
}

.cmn-works-01.pattern-01 li .cate {
    padding: 0 20px;
    font-weight: 500;
    font-size: 16px;
    line-height: 70px;
    position: absolute;
    top: -30px;
    left: 0px;
    z-index: 1;
}

.cmn-works-01.pattern-01 .btn-slick {
    width: 25px;
    height: 25px;
    font-size: 12px;
    color: var(--txt-color-00);
    line-height: 26px;
    text-align: center;
    border-radius: 50%;
    background: var(--back-color-04);
    -webkit-box-shadow: 0 0 3px #000;
    box-shadow: 0 0 3px #000;
    position: absolute;
    top: 55%;
    z-index: 1;
}

.cmn-works-01.pattern-01 .btn-slick.btn-back {
    left: 25px;
}

.cmn-works-01.pattern-01 .btn-slick.btn-back:after {
    content: "◀︎";
}

.cmn-works-01.pattern-01 .btn-slick.btn-next {
    right: 18px;
}

.cmn-works-01.pattern-01 .btn-slick.btn-next:after {
    content: "▶︎";
}

.cmn-works-02 {
    position: relative;
}

.cmn-works-02 .box {
    margin: 0 10px;
}

.cmn-works-02 .before {
    width: 40%;
    margin-left: -30%;
    pointer-events: none;
}

.cmn-works-02 .before .pic {
    pointer-events: auto;
}

.cmn-works-02 .after {
    width: 80%;
    margin-top: 140px;
}

.cmn-works-02 .box>*:first-of-type:not(:last-of-type) {
    margin-top: 33%;
}

.cmn-works-02 .pic {
    position: relative;
}

.cmn-works-02 .pic img {
    border-radius: 5px;
    box-shadow: 0px 0px 12px 0px #ffffff;
}

.cmn-works-02 .pic .txt {
    font-size: 50px;
    line-height: 1;
    text-shadow: 0 0 12px #fff, 0 0 12px #fff;
    -webkit-transform: rotate(-10deg);
    transform: rotate(-10deg);
    position: absolute;
    top: -25px;
    left: -25px;
    z-index: 1;
}

[data-element-id] .cmn-works-02 .pic .txt {
    -webkit-transform: inherit;
    transform: inherit;
    position: static;
}

.cmn-works-02 .cate {
    margin-top: 0;
    top: 30px;
    left: 0;
}

@media (max-width: 599px) {
    .cmn-works-02 .pic .txt {
        font-size: 40px;
        left: -15px;
    }
}

/*cmn-company*/
.cmn-company-01 .box {
    padding: 50px 80px 60px;
}

.cmn-company-01 dl>* {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-top: 20px;
    padding-bottom: 20px;
    padding-left: 10px;
    padding-right: 10px;
    border-bottom: 2px dotted var(--txt-color-02);
}

.cmn-company-01 dl>*+* {
    margin-top: 20px;
}

.cmn-company-01 dt {
    width: 30%;
    padding-right: 20px;
}

.cmn-company-01 dd {
    width: 70%;
}

@media (max-width: 1024px) {
    .cmn-company-01 .box {
        padding: 30px 40px 40px;
    }
}

@media (max-width: 599px) {
    .cmn-company-01 .box {
        padding: 20px 10px 30px;
    }
}

.cmn-company-02 .pic {
    width: 430px;
    max-width: 100%;
    margin: 0 auto;
    position: relative;
}

.cmn-company-02 .num {
    width: 80px;
    height: 25px;
    font-size: 15px;
    line-height: 25px;
    text-align: center;
    border-radius: 50%;
    background: var(--back-color-04);
    -webkit-box-shadow: 0 0 5px #696969;
    box-shadow: 0 0 5px #696969;
    position: absolute;
    z-index: 1;
}

.cmn-company-02 .num:after {
    content: "";
    border-top: 15px solid var(--txt-color-04);
    border-bottom: 10px solid transparent;
    border-left: 7px solid transparent;
    border-right: 7px solid transparent;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    position: absolute;
    top: calc(100% - 5px);
    left: 50%;
    z-index: -1;
}

.cmn-company-02 .num-01 {
    top: 10%;
    left: 36%;
}

.cmn-company-02 .num-02 {
    bottom: 40%;
    left: 37%;
    z-index: 2;
}

.cmn-company-02 .num-03 {
    bottom: 45%;
    left: 69%;
}

.cmn-company-02 .num-04 {
    top: 38%;
    left: 10%;
}

.cmn-company-02 .num-05 {
    top: 30%;
    left: 39%;
}

@media (max-width: 599px) {
    .cmn-company-02 .num {
        width: 60px;
        height: 22px;
        font-size: 12px;
        line-height: 22px;
    }

    .cmn-company-02 .num-01 {
        top: 5%;
    }

    .cmn-company-02 .num-02 {
        bottom: 42%;
        left: 36%;
    }

    .cmn-company-02 .num-03 {
        left: 67%;
    }

    .cmn-company-02 .num-04 {
        top: 34%;
        left: 8%;
    }

    .cmn-company-02 .num-05 {
        top: 25%;
        left: 38%;
    }
}

.cmn-company-03 ul li>* {
    -webkit-box-shadow: 0px 4px 2px -2px rgb(0 0 0 / 20%);
    box-shadow: 0px 4px 2px -2px rgb(0 0 0 / 20%);
}

.cmn-company-03 ul li .txtbox {
    padding: 10px;
}

.cmn-company-03 ul li .tit {
    margin-bottom: 10px;
    padding-bottom: 10px;
    font-size: 20px;
    line-height: 1.4;
    text-align: center;
    border-bottom: 2px solid #ddd;
}



/*/////////////////////////////////////////////////////////////////////////////////////////////////*/

.txt-color-02 {
    color: var(--txt-color-02);
}

.txt-font-01 {
    font-family: var(--txt-font-01);
}



.for-sp .cmn-ttl-04 .ttl-main {
    padding: 0 5px 10px;
    font-size: 23px;
}

.for-sp .cmn-ttl-05 .ttl-main {
    font-size: 26px;
}

.for-sp .cmn-ttl-05 .ttl-main .em {
    margin-bottom: 0;
}

.for-sp .cmn-ttl-05 .ttl-main .em .deco:first-of-type,
.for-sp .cmn-ttl-05 .ttl-main .em .deco:last-of-type {
    width: 4px;
    border-top: 20px solid;
}

.for-sp.cmn-mainimg-01 .catch {
    font-size: 30px;
    left: 3%;
}

.for-sp.cmn-mainimg-01 .catch .catch-sub {
    margin-top: 20px;
}

.for-sp .ttl-mb-xlarge {
    margin-bottom: calc(var(--ttl-mb-xlarge) * 0.6);
}

.for-sp .ttl-mb-medium {
    margin-bottom: calc(var(--ttl-mb-medium) * 0.6);
}

.for-sp .cmn-ttl-09 .ttl-sub {
    font-size: 40px;
    -webkit-transform: rotate(-10deg) translateX(-70px);
    transform: rotate(-10deg) translateX(-70px);
}

.for-sp .cmn-ttl-09 .ttl-main {
    padding: 15px 30px;
    font-size: 22px;
}

.for-sp.cmn-ttl-07 .ttl-sub {
    margin-bottom: 5px;
    font-size: 40px;
}

.for-sp.cmn-ttl-07 .ttl-main {
    font-size: 26px;
}

.for-sp .cmn-ttl-06 .ttl-sub {
    font-size: 40px;
    text-align: left;
    -webkit-transform: rotate(-10deg) translateX(0px);
    transform: rotate(-10deg) translateX(0px);
}

.for-sp .cmn-ttl-06 .ttl-main {
    font-size: 26px;
}

.cmn-service-01 li .tit.for-sp {
    font-size: 18px;
    font-weight: bold;
}

.for-sp .cmn-ttl-01 .ttl-main {
    font-size: 23px;
}

.for-sp .cmn-ttl-03 .ttl-inner {
    padding-top: 20px;
}

.for-sp .cmn-ttl-03 .ttl-sub {
    font-size: 40px;
    top: 0;
    bottom: auto;
}

.for-sp .cmn-ttl-03 .ttl-main {
    padding-bottom: 10px;
    font-size: 26px;
}

.for-sp .cmn-ttl-02 .ttl-sub {
    font-size: 40px;
    top: -25px;
    left: -50px;
}

.for-sp .cmn-ttl-02 .ttl-main {
    padding: 10px 50px;
    font-size: 22px;
}

.cmn-lowerimg-01 .catch.for-sp {
    font-size: 26px;
}

.cmn-lowerimg-01 .catch.for-sp .catch-sub {
    font-size: 180%;
    top:0;
    bottom:auto;
    right: 60px;
}

@media(max-width:599px){
  .cmn-lowerimg-01 .catch.for-sp .catch-sub {
     top: -40px;
}

}

.cmn-lowerimg-01 .catch.for-sp .catch-main {
    letter-spacing: 4px;
    text-shadow: 0 0 12px #585858, 0 0 12px #585858;
}

.cmn-mainimg-01 .catch.for-sp {
    font-size: 30px;
    left: 3%;
}

.for-sp .ttl-mb-medium {
    margin-bottom: calc(var(--ttl-mb-medium) * 0.6);
}

.for-sp .cmn-ttl-05.version-01 .ttl-inner {
    padding-top: 20px;
}

.for-sp .cmn-ttl-05.version-01 .ttl-sub {
    font-size: 40px;
    top: 0;
}

.for-sp .cmn-ttl-05 .ttl-main {
    font-size: 26px;
}

.for-sp .cmn-ttl-05.version-01 .small {
    padding: 10px 20px;
    font-size: 24px;
}

.for-sp .cmn-footer-02 .box .tag {
    padding: 5px 10px;
}

.for-sp .cmn-ttl-10 .cate {
    width: 75px;
    height: 55px;
}

.for-sp .cmn-ttl-10 .ttl-main {
    font-size: 20px;
}

.cmn-flow-02 li .for-sp .num {
    width: 40px;
    height: 40px;
    margin-right: 10px;
    font-size: 26px;
    line-height: 40px;
}

.cmn-flow-02 li .for-sp .tit {
    font-size: 20px;
}

.for-sp.cmn-ttl-04 .ttl-main {
    padding: 0 5px 10px;
    font-size: 20px;
    letter-spacing: 1px;
}

.for-sp .cmn-ttl-11 .ttl-main {
    font-size: 22px;
}

.for-sp .cmn-ttl-11 .em {
    background-size: 23px;
}

.for-sp .cmn-ttl-11 .icon {
    width: 50px;
    margin-left: 0px;
}

.for-sp.cmn-ttl-12 .ttl-main {
    font-size: 20px;
}

.for-sp .for-pc {
    display: block;
}

.for-sp {
    display: none;
}

.for-sp.cmn-ttl-10 .ttl-main {
    font-size: 20px;
}

@media(max-width:599px) {
    .for-sp {
        display: block;
    }

    .for-pc {
        display: none;
    }
}

.html-area ul>li {
    margin: 10px 0;
    padding-left: 20px;
    font-size: 16px;
    position: relative;
}

.html-area ul>li::before {
    content: "";
    width: 15px;
    height: 15px;
    display: inline-block;
    border-radius: 50%;
    background-color: var(--back-color-02);
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    position: absolute;
    top: 50%;
    left: 0;
}

.html-area ol>li {
    margin: 10px 0;
    padding-left: 40px;
    font-size: 16px;
    color: #666;
    position: relative;
}

.html-area ol>li::before {
    content: "1";
    width: 30px;
    height: 30px;
    display: inline-block;
    font-weight: bold;
    color: #fff;
    line-height: 30px;
    text-align: center;
    border-radius: 50%;
    background-color: var(--txt-color-02);
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    position: absolute;
    top: 50%;
    left: 0;
}

.html-area ol>li:nth-child(2)::before {
    content: "2";
}

.html-area ol>li:nth-child(3)::before {
    content: "3";
}

.html-area ol>li:nth-child(4)::before {
    content: "4";
}

.html-area ol>li:nth-child(5)::before {
    content: "5";
}

.html-area ol>li:nth-child(6)::before {
    content: "6";
}

.html-area ol>li:nth-child(7)::before {
    content: "7";
}

.html-area ol>li:nth-child(8)::before {
    content: "8";
}

.html-area ol>li:nth-child(9)::before {
    content: "9";
}

.html-area ol>li:nth-child(10)::before {
    content: "10";
}

.html-area ol>li:nth-child(11)::before {
    content: "11";
}

.html-area ol>li:nth-child(12)::before {
    content: "12";
}

.html-area ol>li:nth-child(13)::before {
    content: "13";
}

.html-area ol>li:nth-child(14)::before {
    content: "14";
}

.html-area ol>li:nth-child(15)::before {
    content: "15";
}

.html-area ol>li:nth-child(16)::before {
    content: "16";
}

.html-area ol>li:nth-child(17)::before {
    content: "17";
}

.html-area ol>li:nth-child(18)::before {
    content: "18";
}

.html-area ol>li:nth-child(19)::before {
    content: "19";
}

.html-area ol>li:nth-child(20)::before {
    content: "20";
}

.html-area h2 {
    display: inline-block;
    margin-top: 30px;
    margin-bottom: 15px;
    margin-right: auto;
    padding: 5px 30px;
    font-weight: 500;
    font-size: 1.5em;
    border-radius: 5px;
    background-color: #fff;
    -webkit-box-shadow: 5px 5px 0px 0px var(--txt-color-01);
    box-shadow: 5px 5px 0px 0px var(--txt-color-04);
}

.html-area h3 {
    margin-top: 20px;
    margin-bottom: 10px;
    padding-left: 10px;
    font-weight: bold;
    font-size: 1.2em;
    color: #666;
    border-left: 5px solid var(--txt-color-02);
}

.html-area h4 {
    display: inline-block;
    margin-top: 15px;
    margin-bottom: 5px;
    margin-right: auto;
    font-weight: 900;
    background: -webkit-gradient(linear, left top, left bottom, color-stop(60%, transparent), color-stop(60%, #fff15a));
    background: linear-gradient(transparent 60%, #fff15a 60%);
}

.h-adr .onk {
    padding-left: 20px;
    position: relative;
}

.onk .onk-t {
    position: absolute;
    top: 5px;
    left: 0;
}

.red {
    color: red;
}

.cmn-mainimg-01 .contact .icon {
    width: 100%;
    max-width: 28px;
    height: 28px;
    background-image: url('/import/tenant_1/162.43.7.125/images/tel-02.webp');
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
}

@media(max-width:599px) {
    .cmn-mainimg-01 .contact .icon {
        max-width: 24px;
        height: 24px;
    }
}

[data-element-id].for-sp {
    max-width: 375px;
    display: block;
    margin-top: 45px;
    margin-left: auto;
    margin-right: auto;
    border: 2px solid #ddd;
    position: relative;
}

[data-element-id].for-sp::before {
    content: "SP時表示用";
    width: 100%;
    display: block;
    font-size: 12px;
    color: red;
    line-height: 1em;
    text-align: center;
    border: 2px solid #ddd;
    background-color: #ddd;
    position: absolute;
    top: -1.3em;
    left: 0;
}

[data-element-id].slick01 {
    max-height: 400px;
    overflow: hidden;
}

.up-d-inline-block {
    display: inline-block;
}

.btns {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
    align-items: center;
    -ms-flex-align: center;
    -webkit-box-pack: space-evenly;
    -ms-flex-pack: space-evenly;
    justify-content: space-evenly;
}

.btns li {
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    margin: 8px;
}

.btns li a {
    display: block;
    padding: 10px 15px;
    font-family: "Kaisei Opti", serif;
    font-size: 14px;
    color: #fff;
    border-radius: 15px;
    background-color: #eb870a;
}

.under-rec ul>li:nth-child(4) {
    display: none;
}

.up-pt-150 {
    padding-top: 150px;
}

@media(max-width:599px) {
    .cmn-company-01 dl>* {
        display: block;
    }

    .cmn-company-01 dt {
        width: 100%;
        padding-right: 0;
    }

    .cmn-company-01 dd {
        width: 100%;
    }

    .cmn-ttl-11 .em {
        background: none;
    }

    .under-rec ul>li:nth-child(4) {
        display: list-item;
    }
}


.cmn-service-05 .mk2 .table .table-01 {
    width: 25%;
}

.cmn-service-05 .mk2 .table .table-02 {
    width: 33.33333%;
    padding: 10px 5px;
}

.cmn-service-05 .mk2 .table .table-03 {
    width: 33.33333%;
    padding: 10px 5px;
}

.cmn-service-05 .mk2 .table .table-02>div,
.cmn-service-05 .mk2 .table .table-03>div,
.cmn-service-05 .mk2 .table .table-04>div {
    padding: 5px;
    border-bottom: 1px dashed var(--txt-color-02);
}

.cmn-service-05 .mk2 .table .table-02>div:last-child,
.cmn-service-05 .mk2 .table .table-03>div:last-child,
.cmn-service-05 .mk2 .table .table-04>div:last-child {
    border-bottom: none;
}



.icons a {
    display: block;
}

[data-ab-test-block] [data-ab-test-contents]+[data-ab-test-contents] {
    display: none;
}

.back-img-item {
    background-color: #ccc;
}

.v2 .back-img-item {
    background-color: #fff;
}

.back-img-item img {
    opacity: 0.6;
    filter: blur(10px);
}

.cmn-faq-01 .txt a {
    color: blue;
    text-decoration: underline;
}

.day.cmn-cate-01.back-color-02.txt-color-00.txt-font-01.up-d-inline-block {
    margin-top: 10px;
}

.mini-dt {
    width: 150px;
}

.mini-dd {
    width: calc(100% - 150px);
}

@media(max-width:599px) {
    .cmn-recruit-04 .tit {
        width: 100%;
        padding-right: 0px;
    }

    .cmn-recruit-04 .txt {
        width: 100%;
    }

    .cmn-recruit-04 .txt .up-d-flex {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }

    .mini-dt {
        width: 100%;
    }

    .mini-dd {
        width: 100%;
        font-size: 14px;
    }
}

.uk-lb {
    -webkit-transition: 0.4s ease;
    transition: 0.4s ease;
    pointer-events: auto;
}

.uk-lb:hover {
    opacity: 0.6;
    cursor: pointer;
}

.new-cat-parent>span {
    display: inline-block;
    margin-right: 5px;
    margin-bottom: 5px;
    background: var(--back-color-02);
    padding: 3px 5px 3px;
    font-size: 14px;
    border-radius: 30px;
}

.new-cat-parent.mini>span {
    display: inline-block;
    margin-right: 1px;
    margin-bottom: 1px;
    font-size: 12px;
    padding: 3px 5px;
    border-radius: 25px;
    line-height: 1em;
}


.c-tel {
    display: block;
    width: 40px;
    height: 30px;
    background-image: url('/import/tenant_1/162.43.7.125/images/tel.webp');
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    margin-right: 5px;
    filter: var(--filter);

}

@media(max-width:1024px) {
    .dropdown>* {
        position: relative;
        z-index: 2;
    }
}

@media(max-width:599px) {
    .cmn-footer-02 .box .border {
        border: 10px solid;
    }

    .ind-dd>span {
        margin-right: -.3em;
    }



    .cmn-header-01 .nav li.dropdown {
        cursor: auto;
    }
}

.form div dl .checkboxer label {
    display: inline-block;
    margin: 0.5em 0;
    padding: 0 10px 0 24px;
    position: relative;
    margin-right: 15px;
    font-weight: bold;
}

.form div dl .checkboxer label::before {
    content: "";
    width: 20px;
    height: 20px;
    display: block;
    border: 2px solid #dcdcdc;
    border-radius: 3px;
    background-color: white;
    position: absolute;
    top: 2px;
    left: 0;
    box-shadow: none;

}

.form div dl .checkboxer label:hover {
    text-decoration: underline;
    cursor: pointer;
}

.form div dl .checkboxer input {
    display: none;
}

.form div dl .checkboxer input:checked+label {
    text-decoration: underline;
}

.form div dl .checkboxer input:checked+label::after {
    content: "\f00c";
    width: 0;
    height: 0;
    display: inline-block;
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    font-size: 20px;
    color: red;
    line-height: 1;
    background-color: transparent;
    position: absolute;
    top: 4px;
    left: 2px;
}



.form .checkboxer label {
    display: inline-block;
    margin: 0.5em 0;
    padding: 0 10px 0 24px;
    position: relative;
    margin-right: 15px;
    font-weight: bold;
}

.form .checkboxer label::before {
    content: "";
    width: 20px;
    height: 20px;
    display: block;
    border: 2px solid #dcdcdc;
    border-radius: 3px;
    background-color: white;
    position: absolute;
    top: 3px;
    left: 0;
    box-shadow: none;

}

.form .checkboxer label:hover {
    text-decoration: underline;
    cursor: pointer;
}

.form .checkboxer input {
    display: none;
}

.form .checkboxer input:checked+label {
    text-decoration: underline;
}

.form .checkboxer input:checked+label::after {
    content: "\f00c";
    width: 0;
    height: 0;
    display: inline-block;
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    font-size: 20px;
    color: red;
    line-height: 1;
    background-color: transparent;
    position: absolute;
    top: 4px;
    left: 2px;
}

.cmn-recruit-01 .box.mk2 a {
    -webkit-clip-path: polygon(50% 0%, 100% 18%, 100% 100%, 0 100%, 0 18%);
    clip-path: polygon(50% 0%, 100% 18%, 100% 100%, 0 100%, 0 18%);
}

.payment-img {
    width: 100%;
    display: block;
    position: relative;
    overflow: hidden;
}

.payment-img::after {
    content: "";
    width: 100%;
    display: block;
    padding-top: 50%;
}

@media(max-width:599px) {
    .payment-img::after {
        padding-top: 30%;
    }

    .up-py-0\@sp {
        padding-top: 0px !important;
        padding-bottom: 0px !important;
    }

    .up-pb-40\@sp {
        padding-bottom: 40px !important
    }

    .up-pt-40\@sp {
        padding-top: 40px !important
    }

    .up-pb-60\@sp {
        padding-bottom: 60px !important
    }

    .up-pt-60\@sp {
        padding-top: 60px !important
    }

    .cmn-company-02 .pic {
        width: 90%;
    }

    .form div dl .checkboxer label::before {
        top: 1px;
    }
}

.payment-img>* {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.payment-img>img {
    width: 45%;
}

.payment-img>.img-flex {
    width: 100%;
}

.cmn-service-01.mk2 .hover-img-02 a {
    position: relative;
    overflow: hidden;
    border-radius: 30px;
    display: block;
}

.cmn-service-01.mk2 .hover-img-02 a .box {
    position: relative;
    z-index: 1;
    background: rgba(235, 135, 10, 0.3);
}

.cmn-service-01.mk2 .hover-img-02 a>img {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    object-fit: cover;
    object-position: center;
    filter: blur(3px);
}

.indent-01 li {
    position: relative;
    padding-left: 24px;
}

.indent-01 li .icon {
    position: absolute;
    top: 0;
    left: 0;
}

.indent-list-item {
    line-height: 1.5em;
    padding-left: 17px;
    position: relative;
}

.indent-list-item::before {
    content: "";
    width: 15px;
    height: 15px;
    display: inline-block;
    background-color: var(--ttl-color-02);
    border-radius: 50%;
    position: absolute;
    left: 0;
    top: 5px;
}

@media(max-width:1200px) {
    .none1200 {
        display: none;
    }
}

@media(max-width:1024px) {
    .none1200 {
        display: block;
    }
}

[data-element-id].cmn-header-01 .nav {
    max-width: 100%;
}

.reform-table table {
    width: 100%;
    background-color: #fff;
}

table {
    border-collapse: collapse;
}

.reform-table table tr:first-child {
    border-top: 1px solid #333;
}

.reform-table table tr {
    border-bottom: 1px solid #333;
}

.reform-table table th:nth-of-type(1) {
    border-left: 1px solid #333;
}

.reform-table th {
    padding: 10px;
    font-size: 18px;
    border-right: 1px solid #333;
}

.up-minw-90 {
    min-width: 90px;
}

.reform-table th {
    padding: 10px;
    font-size: 18px;
    border-right: 1px solid #333;
}

.enter-list li {
    padding-left: 1.5em;
    position: relative;
}

.enter-list li::before {
    content: "";
    width: 1em;
    height: 1em;
    background-color: var(--back-color-02);
    border-radius: 50%;
    position: absolute;
    left: 0;
    top: .4em;
}

[data-element-id] li>a .up-d-flex {
    flex-wrap: wrap;
}

.up-clearfix iframe {
    height: auto;
    margin-top: 1em;
    margin-bottom: 1em;
    aspect-ratio: 16 / 9;
}

.btn-color-04 .btn-inner.b-type>* {
    background-color: #2c4b5e;
    color: #fff9bb;
}

.btn-color-04 .btn-inner.b-type .cont-pare::before {
    filter: brightness(0) saturate(100%) invert(100%) sepia(10%) saturate(5808%) hue-rotate(327deg) brightness(103%) contrast(100%);
}

.logo-dummy img {
    filter: drop-shadow(0 0 1px #fff) drop-shadow(0 0 1px #fff) drop-shadow(0 0 1px #fff) drop-shadow(0 0 1px #fff);
}

.tight {
    letter-spacing: -.06em;
}

.mini-menu {
    display: inline-block;
    color: #eee;
    font-size: 12px;
    margin-left: 15px;
}

@media(max-width:1024px) {

    .sp-tight {
        letter-spacing: -.1em;
    }

    .mini-menu {
        width: 228px;
    }
}


.ab-block,
.ab-block>*{
  display:contents;
}

[data-element-id].ab-block,
[data-element-id].ab-block>*{
  display:block;
}

.abb-type .fixed-btn:nth-child(2) .btn-inner>*{
  background-color:#F58220;
}

.aba-type .fixed-btn .btn-inner>*{
  position:relative;
  overflow:hidden;
}

.aba-type .fixed-btn .btn-inner>*::before{
  content: "";
  animation: shine 3s cubic-bezier(0.25, 0, 0.25, 1) infinite;
  background-color: #fff;
  width: 140%;
  height: 100%;
  transform: skewX(-45deg);
  top: 0;
  left: -160%;
  opacity: 0.5;
  position: absolute;
}
/* 光の動き */
@keyframes shine{
  0% {
    left: -160%;
    opacity: 0;
  }
  70% {
    left: -160%;
    opacity: 0.5;
  }
  71% {
    left: -160%;
    opacity: 1;
  }
  100% {
    left: -20%;
    opacity: 0;
  }
}







.cmn-voice-03 .daihyou .imgbox {
    width: 350px;
    position: relative;
}

.cmn-voice-03 .daihyou .txtbox {
    width: calc(100% - 380px);
    padding: 30px;
    position: relative;
}

@media (max-width: 1024px) {
    .cmn-voice-03 .daihyou .imgbox {
        width: 70%;
        margin: 0 auto;
    }

    .cmn-voice-03 .daihyou .txtbox {
        width: 100%;
        margin-top: 30px;
    }
}

@media (max-width: 599px) {
    .cmn-voice-03 .daihyou .txtbox {
        padding: 20px;
    }
}

.catch .up-fz-16.up-fw-bold.txt-color-03.up-mt-15{
  color: var(--txt-color-02);
      text-shadow: 1px 1px 0 #fff, -1px 1px 0 #fff, 1px -1px 0 #fff, -1px -1px 0 #fff, 1px 0 0 #fff, 0 1px 0 #fff, -1px 0 0 #fff, 0 -1px 0 #fff;
}
