@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@300;400;500;700;900&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Roboto:ital,wght@0,100;0,300;0,400;0,500;0,700;0,900;1,100;1,300;1,400;1,500;1,700;1,900&display=swap");

/* # root1 START # */
:root {
    --color00: #fff;
    --color01: #2d72b2;
    --color02: #70aae0;
    --color03: #ff8400;
    --color04: #79c993;
    --color05: #192733;
    --color06: #79c993;
    --color07: #213a50;
    --color08: #fb8c15;
    --color09: #99bfe2;
    --color10: #86b6e4;
    --color11: #dee8f2;
    --color12: #e2f0fc;
    --color13: #fdebd7;
    --filter01: invert(64%) sepia(54%) saturate(5415%) hue-rotate(2deg) brightness(105%) contrast(103%);
    --filter02: invert(62%) sepia(63%) saturate(312%) hue-rotate(168deg) brightness(91%) contrast(92%);
}
/* # root1 END # */

/* # root2 START # */
/*:root {
    --color00: #fff;
    --color01: #b22d2d;
    --color02: #fcabab;
    --color03: #d35757;
    --color04: #79c993;
    --color05: #700;
    --color06: #d35757;
    --color07: #b22d2d;
    --color08: #fcabab;
    --color09: #fcabab;
    --color10: #fcabab;
    --color11: #ffb8b8;
    --color12: #ffdfdf;
    --color13: #ffe1e1;
    --filter01: invert(44%) sepia(28%) saturate(1855%) hue-rotate(319deg) brightness(91%) contrast(80%);
    --filter02: invert(91%) sepia(25%) saturate(1616%) hue-rotate(296deg) brightness(111%) contrast(98%);
}*/
/* # root2 END # */

/* # root3 START # */
/* :root {
    --color00: #fff;
    --color01: #0ba33e;
    --color02: #9edab2;
    --color03: #ff8400;
    --color04: #9edab2;
    --color05: #10492d;
    --color06: #79c993;
    --color07: #3a8653;
    --color08: #fb8c15;
    --color09: #9edab2;
    --color10: #9edab2;
    --color11: #c4fbd6;
    --color12: #e0ffea;
    --color13: #fdebd7;
    --filter01:invert(68%) sepia(40%) saturate(7125%) hue-rotate(1deg) brightness(103%) contrast(104%);
    --filter02: invert(84%) sepia(32%) saturate(308%) hue-rotate(85deg) brightness(94%) contrast(84%);
} */
/* # root3 END # */

.noto-sans {
    font-family: "Noto Sans JP", sans-serif;
}

.robot {
    font-family: "Roboto", sans-serif;
}

html {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 500;
    font-size: 16px;
    color: #333;
}

body {
    background-color: #fdfdfd;
}

.color-white {
    color: #fff;
}

.fw600 {
    font-weight: 600;
}

dt {
    font-weight: normal;
}

.up-lst-disc {
    padding-left: 30px;
}

.up-lst-deci {
    padding-left: 30px;
}

.uk-lb {
    -webkit-transition: 0.4s ease;
    transition: 0.4s ease;
}

.uk-lb:hover {
    opacity: 0.6;
    cursor: pointer;
}

.fil img {
    -webkit-filter: var(--filter01);
    filter: var(--filter01);
}

/* font-size */
.fs50 {
    font-size: 50px;
}

.fs48 {
    font-size: 48px;
}

.fs46 {
    font-size: 46px;
}

.fs44 {
    font-size: 44px;
}

.fs42 {
    font-size: 42px;
}

.fs40 {
    font-size: 40px;
}

.fs38 {
    font-size: 38px;
}

.fs36 {
    font-size: 36px;
}

.fs34 {
    font-size: 34px;
}

.fs32 {
    font-size: 32px;
}

.fs30 {
    font-size: 30px;
}

.fs28 {
    font-size: 28px;
}

.fs26 {
    font-size: 26px;
}

.fs24 {
    font-size: 24px;
}

.fs22 {
    font-size: 22px;
}

.fs20 {
    font-size: 20px;
}

.fs18 {
    font-size: 18px;
}

.fs16 {
    font-size: 16px;
}

.fs14 {
    font-size: 14px;
}

.fs13 {
    font-size: 13px;
}

.fs12 {
    font-size: 12px;
}

@media (max-width: 1024px) {
    .fs50 {
        font-size: 36px;
    }

    .fs48 {
        font-size: 36px;
    }

    .fs46 {
        font-size: 36px;
    }

    .fs44 {
        font-size: 32px;
    }

    .fs42 {
        font-size: 32px;
    }

    .fs40 {
        font-size: 32px;
    }

    .fs38 {
        font-size: 32px;
    }

    .fs36 {
        font-size: 32px;
    }

    .fs34 {
        font-size: 30px;
    }

    .fs32 {
        font-size: 28px;
    }

    .fs30 {
        font-size: 26px;
    }

    .fs28 {
        font-size: 24px;
    }

    .fs26 {
        font-size: 22px;
    }

    .fs24 {
        font-size: 20px;
    }

    .fs22 {
        font-size: 18px;
    }

    .fs20 {
        font-size: 18px;
    }

    .fs18 {
        font-size: 16px;
    }

    .fs16 {
        font-size: 14px;
    }
}

@media (max-width: 599px) {
    .fs50 {
        font-size: 28px;
    }

    .fs48 {
        font-size: 28px;
    }

    .fs46 {
        font-size: 28px;
    }

    .fs44 {
        font-size: 24px;
    }

    .fs42 {
        font-size: 24px;
    }

    .fs40 {
        font-size: 24px;
    }

    .fs38 {
        font-size: 24px;
    }

    .fs36 {
        font-size: 24px;
    }

    .fs34 {
        font-size: 24px;
    }

    .fs32 {
        font-size: 22px;
    }

    .fs30 {
        font-size: 22px;
    }

    .fs28 {
        font-size: 20px;
    }

    .fs26 {
        font-size: 20px;
    }

    .fs24 {
        font-size: 18px;
    }

    .fs22 {
        font-size: 18px;
    }

    .fs20 {
        font-size: 16px;
    }

    .fs18 {
        font-size: 14px;
    }

    .fs16 {
        font-size: 14px;
    }
}

/* area */
.area {
    padding: 60px 0;
}

@media (max-width: 1024px) {
    .area {
        padding: 50px 0;
    }
}

@media (max-width: 599px) {
    .area {
        padding: 40px 0;
    }
}

.area5 {
    padding-top: 5px;
    padding-bottom: 5px;
}

.area6 {
    padding-top: 6px;
    padding-bottom: 6px;
}

.area7 {
    padding-top: 7px;
    padding-bottom: 7px;
}

.area8 {
    padding-top: 8px;
    padding-bottom: 8px;
}

.area9 {
    padding-top: 9px;
    padding-bottom: 9px;
}

.area10 {
    padding-top: 10px;
    padding-bottom: 10px;
}

.area11 {
    padding-top: 11px;
    padding-bottom: 11px;
}

.area12 {
    padding-top: 12px;
    padding-bottom: 12px;
}

.area13 {
    padding-top: 13px;
    padding-bottom: 13px;
}

.area14 {
    padding-top: 14px;
    padding-bottom: 14px;
}

.area15 {
    padding-top: 15px;
    padding-bottom: 15px;
}

.area16 {
    padding-top: 16px;
    padding-bottom: 16px;
}

.area17 {
    padding-top: 17px;
    padding-bottom: 17px;
}

.area18 {
    padding-top: 18px;
    padding-bottom: 18px;
}

.area19 {
    padding-top: 19px;
    padding-bottom: 19px;
}

.area20 {
    padding-top: 20px;
    padding-bottom: 20px;
}

@media (max-width: 1024px) {
    .area5 {
        padding-top: 3.75px;
        padding-bottom: 3.75px;
    }

    .area6 {
        padding-top: 4.5px;
        padding-bottom: 4.5px;
    }

    .area7 {
        padding-top: 5.25px;
        padding-bottom: 5.25px;
    }

    .area8 {
        padding-top: 6px;
        padding-bottom: 6px;
    }

    .area9 {
        padding-top: 6.75px;
        padding-bottom: 6.75px;
    }

    .area10 {
        padding-top: 7.5px;
        padding-bottom: 7.5px;
    }

    .area11 {
        padding-top: 8.25px;
        padding-bottom: 8.25px;
    }

    .area12 {
        padding-top: 9px;
        padding-bottom: 9px;
    }

    .area13 {
        padding-top: 9.75px;
        padding-bottom: 9.75px;
    }

    .area14 {
        padding-top: 10.5px;
        padding-bottom: 10.5px;
    }

    .area15 {
        padding-top: 11.25px;
        padding-bottom: 11.25px;
    }

    .area16 {
        padding-top: 12px;
        padding-bottom: 12px;
    }

    .area17 {
        padding-top: 12.75px;
        padding-bottom: 12.75px;
    }

    .area18 {
        padding-top: 13.5px;
        padding-bottom: 13.5px;
    }

    .area19 {
        padding-top: 14.25px;
        padding-bottom: 14.25px;
    }

    .area20 {
        padding-top: 15px;
        padding-bottom: 15px;
    }
}

@media (max-width: 599px) {
    .area5 {
        padding-top: 2.5px;
        padding-bottom: 2.5px;
    }

    .area6 {
        padding-top: 3px;
        padding-bottom: 3px;
    }

    .area7 {
        padding-top: 3.5px;
        padding-bottom: 3.5px;
    }

    .area8 {
        padding-top: 4px;
        padding-bottom: 4px;
    }

    .area9 {
        padding-top: 4.5px;
        padding-bottom: 4.5px;
    }

    .area10 {
        padding-top: 5px;
        padding-bottom: 5px;
    }

    .area11 {
        padding-top: 5.5px;
        padding-bottom: 5.5px;
    }

    .area12 {
        padding-top: 6px;
        padding-bottom: 6px;
    }

    .area13 {
        padding-top: 6.5px;
        padding-bottom: 6.5px;
    }

    .area14 {
        padding-top: 7px;
        padding-bottom: 7px;
    }

    .area15 {
        padding-top: 7.5px;
        padding-bottom: 7.5px;
    }

    .area16 {
        padding-top: 8px;
        padding-bottom: 8px;
    }

    .area17 {
        padding-top: 8.5px;
        padding-bottom: 8.5px;
    }

    .area18 {
        padding-top: 9px;
        padding-bottom: 9px;
    }

    .area19 {
        padding-top: 9.5px;
        padding-bottom: 9.5px;
    }

    .area20 {
        padding-top: 10px;
        padding-bottom: 10px;
    }
}

.area10 {
    padding-top: 10px;
    padding-bottom: 10px;
}

.area20 {
    padding-top: 20px;
    padding-bottom: 20px;
}

.area30 {
    padding-top: 30px;
    padding-bottom: 30px;
}

.area40 {
    padding-top: 40px;
    padding-bottom: 40px;
}

.area50 {
    padding-top: 50px;
    padding-bottom: 50px;
}

.area60 {
    padding-top: 60px;
    padding-bottom: 60px;
}

.area70 {
    padding-top: 70px;
    padding-bottom: 70px;
}

.area80 {
    padding-top: 80px;
    padding-bottom: 80px;
}

.area90 {
    padding-top: 90px;
    padding-bottom: 90px;
}

.area100 {
    padding-top: 100px;
    padding-bottom: 100px;
}

.area110 {
    padding-top: 110px;
    padding-bottom: 110px;
}

.area120 {
    padding-top: 120px;
    padding-bottom: 120px;
}

.area130 {
    padding-top: 130px;
    padding-bottom: 130px;
}

.area140 {
    padding-top: 140px;
    padding-bottom: 140px;
}

.area150 {
    padding-top: 150px;
    padding-bottom: 150px;
}

.area160 {
    padding-top: 160px;
    padding-bottom: 160px;
}

.area170 {
    padding-top: 170px;
    padding-bottom: 170px;
}

.area180 {
    padding-top: 180px;
    padding-bottom: 180px;
}

.area190 {
    padding-top: 190px;
    padding-bottom: 190px;
}

.area200 {
    padding-top: 200px;
    padding-bottom: 200px;
}

@media (max-width: 1024px) {
    .area10 {
        padding-top: 7.5px;
        padding-bottom: 7.5px;
    }

    .area20 {
        padding-top: 15px;
        padding-bottom: 15px;
    }

    .area30 {
        padding-top: 22.5px;
        padding-bottom: 22.5px;
    }

    .area40 {
        padding-top: 30px;
        padding-bottom: 30px;
    }

    .area50 {
        padding-top: 37.5px;
        padding-bottom: 37.5px;
    }

    .area60 {
        padding-top: 45px;
        padding-bottom: 45px;
    }

    .area70 {
        padding-top: 52.5px;
        padding-bottom: 52.5px;
    }

    .area80 {
        padding-top: 60px;
        padding-bottom: 60px;
    }

    .area90 {
        padding-top: 67.5px;
        padding-bottom: 67.5px;
    }

    .area100 {
        padding-top: 75px;
        padding-bottom: 75px;
    }

    .area110 {
        padding-top: 82.5px;
        padding-bottom: 82.5px;
    }

    .area120 {
        padding-top: 90px;
        padding-bottom: 90px;
    }

    .area130 {
        padding-top: 97.5px;
        padding-bottom: 97.5px;
    }

    .area140 {
        padding-top: 105px;
        padding-bottom: 105px;
    }

    .area150 {
        padding-top: 112.5px;
        padding-bottom: 112.5px;
    }

    .area160 {
        padding-top: 120px;
        padding-bottom: 120px;
    }

    .area170 {
        padding-top: 127.5px;
        padding-bottom: 127.5px;
    }

    .area180 {
        padding-top: 135px;
        padding-bottom: 135px;
    }

    .area190 {
        padding-top: 142.5px;
        padding-bottom: 142.5px;
    }

    .area200 {
        padding-top: 150px;
        padding-bottom: 150px;
    }
}

@media (max-width: 599px) {
    .area10 {
        padding-top: 5px;
        padding-bottom: 5px;
    }

    .area20 {
        padding-top: 10px;
        padding-bottom: 10px;
    }

    .area30 {
        padding-top: 15px;
        padding-bottom: 15px;
    }

    .area40 {
        padding-top: 20px;
        padding-bottom: 20px;
    }

    .area50 {
        padding-top: 25px;
        padding-bottom: 25px;
    }

    .area60 {
        padding-top: 30px;
        padding-bottom: 30px;
    }

    .area70 {
        padding-top: 35px;
        padding-bottom: 35px;
    }

    .area80 {
        padding-top: 40px;
        padding-bottom: 40px;
    }

    .area90 {
        padding-top: 45px;
        padding-bottom: 45px;
    }

    .area100 {
        padding-top: 50px;
        padding-bottom: 50px;
    }

    .area110 {
        padding-top: 55px;
        padding-bottom: 55px;
    }

    .area120 {
        padding-top: 60px;
        padding-bottom: 60px;
    }

    .area130 {
        padding-top: 65px;
        padding-bottom: 65px;
    }

    .area140 {
        padding-top: 70px;
        padding-bottom: 70px;
    }

    .area150 {
        padding-top: 75px;
        padding-bottom: 75px;
    }

    .area160 {
        padding-top: 80px;
        padding-bottom: 80px;
    }

    .area170 {
        padding-top: 85px;
        padding-bottom: 85px;
    }

    .area180 {
        padding-top: 90px;
        padding-bottom: 90px;
    }

    .area190 {
        padding-top: 95px;
        padding-bottom: 95px;
    }

    .area200 {
        padding-top: 100px;
        padding-bottom: 100px;
    }
}

@media (max-width: 599px) {
    .w100\@sp {
        width: 100%;
    }
}

@media (max-width: 1024px) {
    .fs14\@tb {
        font-size: 14px;
    }

    .fs15\@tb {
        font-size: 15px;
    }

    .fs16\@tb {
        font-size: 16px;
    }

    .fs17\@tb {
        font-size: 17px;
    }

    .fs18\@tb {
        font-size: 18px;
    }

    .fs19\@tb {
        font-size: 19px;
    }

    .fs20\@tb {
        font-size: 20px;
    }

    .fs21\@tb {
        font-size: 21px;
    }

    .fs22\@tb {
        font-size: 22px;
    }

    .fs23\@tb {
        font-size: 23px;
    }

    .fs24\@tb {
        font-size: 24px;
    }

    .fs25\@tb {
        font-size: 25px;
    }

    .fs26\@tb {
        font-size: 26px;
    }

    .fs27\@tb {
        font-size: 27px;
    }

    .fs28\@tb {
        font-size: 28px;
    }

    .fs29\@tb {
        font-size: 29px;
    }

    .fs30\@tb {
        font-size: 30px;
    }
}

@media (max-width: 599px) {
    .fs14\@sp {
        font-size: 14px;
    }

    .fs15\@sp {
        font-size: 15px;
    }

    .fs16\@sp {
        font-size: 16px;
    }

    .fs17\@sp {
        font-size: 17px;
    }

    .fs18\@sp {
        font-size: 18px;
    }

    .fs19\@sp {
        font-size: 19px;
    }

    .fs20\@sp {
        font-size: 20px;
    }

    .fs21\@sp {
        font-size: 21px;
    }

    .fs22\@sp {
        font-size: 22px;
    }

    .fs23\@sp {
        font-size: 23px;
    }

    .fs24\@sp {
        font-size: 24px;
    }

    .fs25\@sp {
        font-size: 25px;
    }

    .fs26\@sp {
        font-size: 26px;
    }

    .fs27\@sp {
        font-size: 27px;
    }

    .fs28\@sp {
        font-size: 28px;
    }

    .fs29\@sp {
        font-size: 29px;
    }

    .fs30\@sp {
        font-size: 30px;
    }
}

/* padding */
.pt5 {
    padding-top: 5px;
}

.pb5 {
    padding-bottom: 5px;
}

.pt6 {
    padding-top: 6px;
}

.pb6 {
    padding-bottom: 6px;
}

.pt7 {
    padding-top: 7px;
}

.pb7 {
    padding-bottom: 7px;
}

.pt8 {
    padding-top: 8px;
}

.pb8 {
    padding-bottom: 8px;
}

.pt9 {
    padding-top: 9px;
}

.pb9 {
    padding-bottom: 9px;
}

.pt10 {
    padding-top: 10px;
}

.pb10 {
    padding-bottom: 10px;
}

.pt11 {
    padding-top: 11px;
}

.pb11 {
    padding-bottom: 11px;
}

.pt12 {
    padding-top: 12px;
}

.pb12 {
    padding-bottom: 12px;
}

.pt13 {
    padding-top: 13px;
}

.pb13 {
    padding-bottom: 13px;
}

.pt14 {
    padding-top: 14px;
}

.pb14 {
    padding-bottom: 14px;
}

.pt15 {
    padding-top: 15px;
}

.pb15 {
    padding-bottom: 15px;
}

.pt16 {
    padding-top: 16px;
}

.pb16 {
    padding-bottom: 16px;
}

.pt17 {
    padding-top: 17px;
}

.pb17 {
    padding-bottom: 17px;
}

.pt18 {
    padding-top: 18px;
}

.pb18 {
    padding-bottom: 18px;
}

.pt19 {
    padding-top: 19px;
}

.pb19 {
    padding-bottom: 19px;
}

.pt20 {
    padding-top: 20px;
}

.pb20 {
    padding-bottom: 20px;
}

@media (max-width: 1024px) {
    .pt5 {
        padding-top: 3.75px;
    }

    .pb5 {
        padding-bottom: 3.75px;
    }

    .pt6 {
        padding-top: 4.5px;
    }

    .pb6 {
        padding-bottom: 4.5px;
    }

    .pt7 {
        padding-top: 5.25px;
    }

    .pb7 {
        padding-bottom: 5.25px;
    }

    .pt8 {
        padding-top: 6px;
    }

    .pb8 {
        padding-bottom: 6px;
    }

    .pt9 {
        padding-top: 6.75px;
    }

    .pb9 {
        padding-bottom: 6.75px;
    }

    .pt10 {
        padding-top: 7.5px;
    }

    .pb10 {
        padding-bottom: 7.5px;
    }

    .pt11 {
        padding-top: 8.25px;
    }

    .pb11 {
        padding-bottom: 8.25px;
    }

    .pt12 {
        padding-top: 9px;
    }

    .pb12 {
        padding-bottom: 9px;
    }

    .pt13 {
        padding-top: 9.75px;
    }

    .pb13 {
        padding-bottom: 9.75px;
    }

    .pt14 {
        padding-top: 10.5px;
    }

    .pb14 {
        padding-bottom: 10.5px;
    }

    .pt15 {
        padding-top: 11.25px;
    }

    .pb15 {
        padding-bottom: 11.25px;
    }

    .pt16 {
        padding-top: 12px;
    }

    .pb16 {
        padding-bottom: 12px;
    }

    .pt17 {
        padding-top: 12.75px;
    }

    .pb17 {
        padding-bottom: 12.75px;
    }

    .pt18 {
        padding-top: 13.5px;
    }

    .pb18 {
        padding-bottom: 13.5px;
    }

    .pt19 {
        padding-top: 14.25px;
    }

    .pb19 {
        padding-bottom: 14.25px;
    }

    .pt20 {
        padding-top: 15px;
    }

    .pb20 {
        padding-bottom: 15px;
    }
}

@media (max-width: 599px) {
    .pt5 {
        padding-top: 2.5px;
    }

    .pb5 {
        padding-bottom: 2.5px;
    }

    .pt6 {
        padding-top: 3px;
    }

    .pb6 {
        padding-bottom: 3px;
    }

    .pt7 {
        padding-top: 3.5px;
    }

    .pb7 {
        padding-bottom: 3.5px;
    }

    .pt8 {
        padding-top: 4px;
    }

    .pb8 {
        padding-bottom: 4px;
    }

    .pt9 {
        padding-top: 4.5px;
    }

    .pb9 {
        padding-bottom: 4.5px;
    }

    .pt10 {
        padding-top: 5px;
    }

    .pb10 {
        padding-bottom: 5px;
    }

    .pt11 {
        padding-top: 5.5px;
    }

    .pb11 {
        padding-bottom: 5.5px;
    }

    .pt12 {
        padding-top: 6px;
    }

    .pb12 {
        padding-bottom: 6px;
    }

    .pt13 {
        padding-top: 6.5px;
    }

    .pb13 {
        padding-bottom: 6.5px;
    }

    .pt14 {
        padding-top: 7px;
    }

    .pb14 {
        padding-bottom: 7px;
    }

    .pt15 {
        padding-top: 7.5px;
    }

    .pb15 {
        padding-bottom: 7.5px;
    }

    .pt16 {
        padding-top: 8px;
    }

    .pb16 {
        padding-bottom: 8px;
    }

    .pt17 {
        padding-top: 8.5px;
    }

    .pb17 {
        padding-bottom: 8.5px;
    }

    .pt18 {
        padding-top: 9px;
    }

    .pb18 {
        padding-bottom: 9px;
    }

    .pt19 {
        padding-top: 9.5px;
    }

    .pb19 {
        padding-bottom: 9.5px;
    }

    .pt20 {
        padding-top: 10px;
    }

    .pb20 {
        padding-bottom: 10px;
    }
}

.pt10 {
    padding-top: 10px;
}

.pb10 {
    padding-bottom: 10px;
}

.pt20 {
    padding-top: 20px;
}

.pb20 {
    padding-bottom: 20px;
}

.pt30 {
    padding-top: 30px;
}

.pb30 {
    padding-bottom: 30px;
}

.pt40 {
    padding-top: 40px;
}

.pb40 {
    padding-bottom: 40px;
}

.pt50 {
    padding-top: 50px;
}

.pb50 {
    padding-bottom: 50px;
}

.pt60 {
    padding-top: 60px;
}

.pb60 {
    padding-bottom: 60px;
}

.pt70 {
    padding-top: 70px;
}

.pb70 {
    padding-bottom: 70px;
}

.pt80 {
    padding-top: 80px;
}

.pb80 {
    padding-bottom: 80px;
}

.pt90 {
    padding-top: 90px;
}

.pb90 {
    padding-bottom: 90px;
}

.pt100 {
    padding-top: 100px;
}

.pb100 {
    padding-bottom: 100px;
}

.pt110 {
    padding-top: 110px;
}

.pb110 {
    padding-bottom: 110px;
}

.pt120 {
    padding-top: 120px;
}

.pb120 {
    padding-bottom: 120px;
}

.pt130 {
    padding-top: 130px;
}

.pb130 {
    padding-bottom: 130px;
}

.pt140 {
    padding-top: 140px;
}

.pb140 {
    padding-bottom: 140px;
}

.pt150 {
    padding-top: 150px;
}

.pb150 {
    padding-bottom: 150px;
}

.pt160 {
    padding-top: 160px;
}

.pb160 {
    padding-bottom: 160px;
}

.pt170 {
    padding-top: 170px;
}

.pb170 {
    padding-bottom: 170px;
}

.pt180 {
    padding-top: 180px;
}

.pb180 {
    padding-bottom: 180px;
}

.pt190 {
    padding-top: 190px;
}

.pb190 {
    padding-bottom: 190px;
}

.pt200 {
    padding-top: 200px;
}

.pb200 {
    padding-bottom: 200px;
}

@media (max-width: 1024px) {
    .pt10 {
        padding-top: 7.5px;
    }

    .pb10 {
        padding-bottom: 7.5px;
    }

    .pt20 {
        padding-top: 15px;
    }

    .pb20 {
        padding-bottom: 15px;
    }

    .pt30 {
        padding-top: 22.5px;
    }

    .pb30 {
        padding-bottom: 22.5px;
    }

    .pt40 {
        padding-top: 30px;
    }

    .pb40 {
        padding-bottom: 30px;
    }

    .pt50 {
        padding-top: 37.5px;
    }

    .pb50 {
        padding-bottom: 37.5px;
    }

    .pt60 {
        padding-top: 45px;
    }

    .pb60 {
        padding-bottom: 45px;
    }

    .pt70 {
        padding-top: 52.5px;
    }

    .pb70 {
        padding-bottom: 52.5px;
    }

    .pt80 {
        padding-top: 60px;
    }

    .pb80 {
        padding-bottom: 60px;
    }

    .pt90 {
        padding-top: 67.5px;
    }

    .pb90 {
        padding-bottom: 67.5px;
    }

    .pt100 {
        padding-top: 75px;
    }

    .pb100 {
        padding-bottom: 75px;
    }

    .pt110 {
        padding-top: 82.5px;
    }

    .pb110 {
        padding-bottom: 82.5px;
    }

    .pt120 {
        padding-top: 90px;
    }

    .pb120 {
        padding-bottom: 90px;
    }

    .pt130 {
        padding-top: 97.5px;
    }

    .pb130 {
        padding-bottom: 97.5px;
    }

    .pt140 {
        padding-top: 105px;
    }

    .pb140 {
        padding-bottom: 105px;
    }

    .pt150 {
        padding-top: 112.5px;
    }

    .pb150 {
        padding-bottom: 112.5px;
    }

    .pt160 {
        padding-top: 120px;
    }

    .pb160 {
        padding-bottom: 120px;
    }

    .pt170 {
        padding-top: 127.5px;
    }

    .pb170 {
        padding-bottom: 127.5px;
    }

    .pt180 {
        padding-top: 135px;
    }

    .pb180 {
        padding-bottom: 135px;
    }

    .pt190 {
        padding-top: 142.5px;
    }

    .pb190 {
        padding-bottom: 142.5px;
    }

    .pt200 {
        padding-top: 150px;
    }

    .pb200 {
        padding-bottom: 150px;
    }
}

@media (max-width: 599px) {
    .pt10 {
        padding-top: 5px;
    }

    .pb10 {
        padding-bottom: 5px;
    }

    .pt20 {
        padding-top: 10px;
    }

    .pb20 {
        padding-bottom: 10px;
    }

    .pt30 {
        padding-top: 15px;
    }

    .pb30 {
        padding-bottom: 15px;
    }

    .pt40 {
        padding-top: 20px;
    }

    .pb40 {
        padding-bottom: 20px;
    }

    .pt50 {
        padding-top: 25px;
    }

    .pb50 {
        padding-bottom: 25px;
    }

    .pt60 {
        padding-top: 30px;
    }

    .pb60 {
        padding-bottom: 30px;
    }

    .pt70 {
        padding-top: 35px;
    }

    .pb70 {
        padding-bottom: 35px;
    }

    .pt80 {
        padding-top: 40px;
    }

    .pb80 {
        padding-bottom: 40px;
    }

    .pt90 {
        padding-top: 45px;
    }

    .pb90 {
        padding-bottom: 45px;
    }

    .pt100 {
        padding-top: 50px;
    }

    .pb100 {
        padding-bottom: 50px;
    }

    .pt110 {
        padding-top: 55px;
    }

    .pb110 {
        padding-bottom: 55px;
    }

    .pt120 {
        padding-top: 60px;
    }

    .pb120 {
        padding-bottom: 60px;
    }

    .pt130 {
        padding-top: 65px;
    }

    .pb130 {
        padding-bottom: 65px;
    }

    .pt140 {
        padding-top: 70px;
    }

    .pb140 {
        padding-bottom: 70px;
    }

    .pt150 {
        padding-top: 75px;
    }

    .pb150 {
        padding-bottom: 75px;
    }

    .pt160 {
        padding-top: 80px;
    }

    .pb160 {
        padding-bottom: 80px;
    }

    .pt170 {
        padding-top: 85px;
    }

    .pb170 {
        padding-bottom: 85px;
    }

    .pt180 {
        padding-top: 90px;
    }

    .pb180 {
        padding-bottom: 90px;
    }

    .pt190 {
        padding-top: 95px;
    }

    .pb190 {
        padding-bottom: 95px;
    }

    .pt200 {
        padding-top: 100px;
    }

    .pb200 {
        padding-bottom: 100px;
    }
}

/* margin */
.mt5 {
    margin-top: 5px;
}

.mb5 {
    margin-bottom: 5px;
}

.mt6 {
    margin-top: 6px;
}

.mb6 {
    margin-bottom: 6px;
}

.mt7 {
    margin-top: 7px;
}

.mb7 {
    margin-bottom: 7px;
}

.mt8 {
    margin-top: 8px;
}

.mb8 {
    margin-bottom: 8px;
}

.mt9 {
    margin-top: 9px;
}

.mb9 {
    margin-bottom: 9px;
}

.mt10 {
    margin-top: 10px;
}

.mb10 {
    margin-bottom: 10px;
}

.mt11 {
    margin-top: 11px;
}

.mb11 {
    margin-bottom: 11px;
}

.mt12 {
    margin-top: 12px;
}

.mb12 {
    margin-bottom: 12px;
}

.mt13 {
    margin-top: 13px;
}

.mb13 {
    margin-bottom: 13px;
}

.mt14 {
    margin-top: 14px;
}

.mb14 {
    margin-bottom: 14px;
}

.mt15 {
    margin-top: 15px;
}

.mb15 {
    margin-bottom: 15px;
}

.mt16 {
    margin-top: 16px;
}

.mb16 {
    margin-bottom: 16px;
}

.mt17 {
    margin-top: 17px;
}

.mb17 {
    margin-bottom: 17px;
}

.mt18 {
    margin-top: 18px;
}

.mb18 {
    margin-bottom: 18px;
}

.mt19 {
    margin-top: 19px;
}

.mb19 {
    margin-bottom: 19px;
}

.mt20 {
    margin-top: 20px;
}

.mb20 {
    margin-bottom: 20px;
}

@media (max-width: 1024px) {
    .mt5 {
        margin-top: 3.75px;
    }

    .mb5 {
        margin-bottom: 3.75px;
    }

    .mt6 {
        margin-top: 4.5px;
    }

    .mb6 {
        margin-bottom: 4.5px;
    }

    .mt7 {
        margin-top: 5.25px;
    }

    .mb7 {
        margin-bottom: 5.25px;
    }

    .mt8 {
        margin-top: 6px;
    }

    .mb8 {
        margin-bottom: 6px;
    }

    .mt9 {
        margin-top: 6.75px;
    }

    .mb9 {
        margin-bottom: 6.75px;
    }

    .mt10 {
        margin-top: 7.5px;
    }

    .mb10 {
        margin-bottom: 7.5px;
    }

    .mt11 {
        margin-top: 8.25px;
    }

    .mb11 {
        margin-bottom: 8.25px;
    }

    .mt12 {
        margin-top: 9px;
    }

    .mb12 {
        margin-bottom: 9px;
    }

    .mt13 {
        margin-top: 9.75px;
    }

    .mb13 {
        margin-bottom: 9.75px;
    }

    .mt14 {
        margin-top: 10.5px;
    }

    .mb14 {
        margin-bottom: 10.5px;
    }

    .mt15 {
        margin-top: 11.25px;
    }

    .mb15 {
        margin-bottom: 11.25px;
    }

    .mt16 {
        margin-top: 12px;
    }

    .mb16 {
        margin-bottom: 12px;
    }

    .mt17 {
        margin-top: 12.75px;
    }

    .mb17 {
        margin-bottom: 12.75px;
    }

    .mt18 {
        margin-top: 13.5px;
    }

    .mb18 {
        margin-bottom: 13.5px;
    }

    .mt19 {
        margin-top: 14.25px;
    }

    .mb19 {
        margin-bottom: 14.25px;
    }

    .mt20 {
        margin-top: 15px;
    }

    .mb20 {
        margin-bottom: 15px;
    }
}

@media (max-width: 599px) {
    .mt5 {
        margin-top: 2.5px;
    }

    .mb5 {
        margin-bottom: 2.5px;
    }

    .mt6 {
        margin-top: 3px;
    }

    .mb6 {
        margin-bottom: 3px;
    }

    .mt7 {
        margin-top: 3.5px;
    }

    .mb7 {
        margin-bottom: 3.5px;
    }

    .mt8 {
        margin-top: 4px;
    }

    .mb8 {
        margin-bottom: 4px;
    }

    .mt9 {
        margin-top: 4.5px;
    }

    .mb9 {
        margin-bottom: 4.5px;
    }

    .mt10 {
        margin-top: 5px;
    }

    .mb10 {
        margin-bottom: 5px;
    }

    .mt11 {
        margin-top: 5.5px;
    }

    .mb11 {
        margin-bottom: 5.5px;
    }

    .mt12 {
        margin-top: 6px;
    }

    .mb12 {
        margin-bottom: 6px;
    }

    .mt13 {
        margin-top: 6.5px;
    }

    .mb13 {
        margin-bottom: 6.5px;
    }

    .mt14 {
        margin-top: 7px;
    }

    .mb14 {
        margin-bottom: 7px;
    }

    .mt15 {
        margin-top: 7.5px;
    }

    .mb15 {
        margin-bottom: 7.5px;
    }

    .mt16 {
        margin-top: 8px;
    }

    .mb16 {
        margin-bottom: 8px;
    }

    .mt17 {
        margin-top: 8.5px;
    }

    .mb17 {
        margin-bottom: 8.5px;
    }

    .mt18 {
        margin-top: 9px;
    }

    .mb18 {
        margin-bottom: 9px;
    }

    .mt19 {
        margin-top: 9.5px;
    }

    .mb19 {
        margin-bottom: 9.5px;
    }

    .mt20 {
        margin-top: 10px;
    }

    .mb20 {
        margin-bottom: 10px;
    }
}

.mt10 {
    margin-top: 10px;
}

.mb10 {
    margin-bottom: 10px;
}

.mt20 {
    margin-top: 20px;
}

.mb20 {
    margin-bottom: 20px;
}

.mt30 {
    margin-top: 30px;
}

.mb30 {
    margin-bottom: 30px;
}

.mt40 {
    margin-top: 40px;
}

.mb40 {
    margin-bottom: 40px;
}

.mt50 {
    margin-top: 50px;
}

.mb50 {
    margin-bottom: 50px;
}

.mt60 {
    margin-top: 60px;
}

.mb60 {
    margin-bottom: 60px;
}

.mt70 {
    margin-top: 70px;
}

.mb70 {
    margin-bottom: 70px;
}

.mt80 {
    margin-top: 80px;
}

.mb80 {
    margin-bottom: 80px;
}

.mt90 {
    margin-top: 90px;
}

.mb90 {
    margin-bottom: 90px;
}

.mt100 {
    margin-top: 100px;
}

.mb100 {
    margin-bottom: 100px;
}

.mt110 {
    margin-top: 110px;
}

.mb110 {
    margin-bottom: 110px;
}

.mt120 {
    margin-top: 120px;
}

.mb120 {
    margin-bottom: 120px;
}

.mt130 {
    margin-top: 130px;
}

.mb130 {
    margin-bottom: 130px;
}

.mt140 {
    margin-top: 140px;
}

.mb140 {
    margin-bottom: 140px;
}

.mt150 {
    margin-top: 150px;
}

.mb150 {
    margin-bottom: 150px;
}

.mt160 {
    margin-top: 160px;
}

.mb160 {
    margin-bottom: 160px;
}

.mt170 {
    margin-top: 170px;
}

.mb170 {
    margin-bottom: 170px;
}

.mt180 {
    margin-top: 180px;
}

.mb180 {
    margin-bottom: 180px;
}

.mt190 {
    margin-top: 190px;
}

.mb190 {
    margin-bottom: 190px;
}

.mt200 {
    margin-top: 200px;
}

.mb200 {
    margin-bottom: 200px;
}

@media (max-width: 1024px) {
    .mt10 {
        margin-top: 7.5px;
    }

    .mb10 {
        margin-bottom: 7.5px;
    }

    .mt20 {
        margin-top: 15px;
    }

    .mb20 {
        margin-bottom: 15px;
    }

    .mt30 {
        margin-top: 22.5px;
    }

    .mb30 {
        margin-bottom: 22.5px;
    }

    .mt40 {
        margin-top: 30px;
    }

    .mb40 {
        margin-bottom: 30px;
    }

    .mt50 {
        margin-top: 37.5px;
    }

    .mb50 {
        margin-bottom: 37.5px;
    }

    .mt60 {
        margin-top: 45px;
    }

    .mb60 {
        margin-bottom: 45px;
    }

    .mt70 {
        margin-top: 52.5px;
    }

    .mb70 {
        margin-bottom: 52.5px;
    }

    .mt80 {
        margin-top: 60px;
    }

    .mb80 {
        margin-bottom: 60px;
    }

    .mt90 {
        margin-top: 67.5px;
    }

    .mb90 {
        margin-bottom: 67.5px;
    }

    .mt100 {
        margin-top: 75px;
    }

    .mb100 {
        margin-bottom: 75px;
    }

    .mt110 {
        margin-top: 82.5px;
    }

    .mb110 {
        margin-bottom: 82.5px;
    }

    .mt120 {
        margin-top: 90px;
    }

    .mb120 {
        margin-bottom: 90px;
    }

    .mt130 {
        margin-top: 97.5px;
    }

    .mb130 {
        margin-bottom: 97.5px;
    }

    .mt140 {
        margin-top: 105px;
    }

    .mb140 {
        margin-bottom: 105px;
    }

    .mt150 {
        margin-top: 112.5px;
    }

    .mb150 {
        margin-bottom: 112.5px;
    }

    .mt160 {
        margin-top: 120px;
    }

    .mb160 {
        margin-bottom: 120px;
    }

    .mt170 {
        margin-top: 127.5px;
    }

    .mb170 {
        margin-bottom: 127.5px;
    }

    .mt180 {
        margin-top: 135px;
    }

    .mb180 {
        margin-bottom: 135px;
    }

    .mt190 {
        margin-top: 142.5px;
    }

    .mb190 {
        margin-bottom: 142.5px;
    }

    .mt200 {
        margin-top: 150px;
    }

    .mb200 {
        margin-bottom: 150px;
    }
}

@media (max-width: 599px) {
    .mt10 {
        margin-top: 5px;
    }

    .mb10 {
        margin-bottom: 5px;
    }

    .mt20 {
        margin-top: 10px;
    }

    .mb20 {
        margin-bottom: 10px;
    }

    .mt30 {
        margin-top: 15px;
    }

    .mb30 {
        margin-bottom: 15px;
    }

    .mt40 {
        margin-top: 20px;
    }

    .mb40 {
        margin-bottom: 20px;
    }

    .mt50 {
        margin-top: 25px;
    }

    .mb50 {
        margin-bottom: 25px;
    }

    .mt60 {
        margin-top: 30px;
    }

    .mb60 {
        margin-bottom: 30px;
    }

    .mt70 {
        margin-top: 35px;
    }

    .mb70 {
        margin-bottom: 35px;
    }

    .mt80 {
        margin-top: 40px;
    }

    .mb80 {
        margin-bottom: 40px;
    }

    .mt90 {
        margin-top: 45px;
    }

    .mb90 {
        margin-bottom: 45px;
    }

    .mt100 {
        margin-top: 50px;
    }

    .mb100 {
        margin-bottom: 50px;
    }

    .mt110 {
        margin-top: 55px;
    }

    .mb110 {
        margin-bottom: 55px;
    }

    .mt120 {
        margin-top: 60px;
    }

    .mb120 {
        margin-bottom: 60px;
    }

    .mt130 {
        margin-top: 65px;
    }

    .mb130 {
        margin-bottom: 65px;
    }

    .mt140 {
        margin-top: 70px;
    }

    .mb140 {
        margin-bottom: 70px;
    }

    .mt150 {
        margin-top: 75px;
    }

    .mb150 {
        margin-bottom: 75px;
    }

    .mt160 {
        margin-top: 80px;
    }

    .mb160 {
        margin-bottom: 80px;
    }

    .mt170 {
        margin-top: 85px;
    }

    .mb170 {
        margin-bottom: 85px;
    }

    .mt180 {
        margin-top: 90px;
    }

    .mb180 {
        margin-bottom: 90px;
    }

    .mt190 {
        margin-top: 95px;
    }

    .mb190 {
        margin-bottom: 95px;
    }

    .mt200 {
        margin-top: 100px;
    }

    .mb200 {
        margin-bottom: 100px;
    }
}

.txt {
    line-height: 2;
}

.pa100 {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
}

/* left right */
@media (max-width: 1024px) {
    [class*=left-cmn] {
        width: 100%;
    }

    [class*=right-cmn] {
        width: 100%;
    }

    .right-cmn01 {
        margin-top: 5px;
    }

    .right-cmn02 {
        margin-top: 10px;
    }

    .right-cmn03 {
        margin-top: 15px;
    }

    .right-cmn {
        margin-top: 20px;
    }
}

/*@media (max-width: 1024px) {
    .tb>[class^="left-cmn"] {
        width: 100%;
    }

    .tb>[class^="right-cmn"] {
        width: 100%;
    }

    .tb>.right-cmn01 {
        margin-top: 10px;
    }

    .tb>.right-cmn02 {
        margin-top: 15px;
    }

    .tb>.right-cmn03 {
        margin-top: 20px;
    }

    .tb>.right-cmn {
        margin-top: 25px;
    }
}

@media (max-width: 599px) {
    [class*=left-cmn] {
        width: 100%;
    }

    [class*=right-cmn] {
        width: 100%;
    }

    .right-cmn01 {
        margin-top: 5px;
    }

    .right-cmn02 {
        margin-top: 10px;
    }

    .right-cmn03 {
        margin-top: 15px;
    }

    .right-cmn {
        margin-top: 20px;
    }
}*/

/* 偶数と奇数番目で左右反転No.2 */
.up-fxd-even02>*:nth-child(even) .up-d-flex,
.up-fxd-odd02>*:nth-child(odd) .up-d-flex {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
}

/* calc */
.up-fxd-even>*:nth-child(odd) .calc1000,
.up-fxd-even>*:nth-child(even) ._calc1000 {
    padding-left: calc(50vw - 500px);
}

.up-fxd-even>*:nth-child(even) .calc1000,
.up-fxd-even>*:nth-child(odd) ._calc1000 {
    padding-right: calc(50vw - 500px);
}

.up-fxd-even>*:nth-child(odd) .calc1200,
.up-fxd-even>*:nth-child(even) ._calc1200 {
    padding-left: calc(50vw - 600px);
}

.up-fxd-even>*:nth-child(even) .calc1200,
.up-fxd-even>*:nth-child(odd) ._calc1200 {
    padding-right: calc(50vw - 600px);
}

@media (max-width: 1200px) {

    .up-fxd-even>*:nth-child(odd) .calc1200,
    .up-fxd-even>*:nth-child(even) ._calc1200 {
        padding-left: 2vw;
    }

    .up-fxd-even>*:nth-child(even) .calc1200,
    .up-fxd-even>*:nth-child(odd) ._calc1200 {
        padding-right: 2vw;
    }
}

@media (max-width: 1024px) {

    .up-fxd-even>*:nth-child(odd) .calc1000,
    .up-fxd-even>*:nth-child(even) ._calc1000 {
        padding-left: 2vw;
    }

    .up-fxd-even>*:nth-child(even) .calc1000,
    .up-fxd-even>*:nth-child(odd) ._calc1000 {
        padding-right: 2vw;
    }
}

@media (max-width: 599px) {

    .up-fxd-even>*:nth-child(odd) .calc1000,
    .up-fxd-even>*:nth-child(even) ._calc1000,
    .up-fxd-even>*:nth-child(odd) .calc1200,
    .up-fxd-even>*:nth-child(even) ._calc1200 {
        padding-left: 0;
    }

    .up-fxd-even>*:nth-child(even) .calc1000,
    .up-fxd-even>*:nth-child(odd) ._calc1000,
    .up-fxd-even>*:nth-child(even) .calc1200,
    .up-fxd-even>*:nth-child(odd) ._calc1200 {
        padding-right: 0;
    }
}

/* left-calc, right-calc */
.left-calc01 {
    padding-left: calc(50vw - 500px);
}

.right-calc01 {
    padding-right: calc(50vw - 500px);
}

.left-calc02 {
    padding-left: calc(50vw - 600px);
}

.right-calc02 {
    padding-right: calc(50vw - 600px);
}

@media (max-width: 1200px) {
    .left-calc02 {
        padding-left: 2vw;
    }

    .right-calc02 {
        padding-right: 2vw;
    }
}

@media (max-width: 1024px) {
    .left-calc01 {
        padding-left: 2vw;
    }

    .right-calc01 {
        padding-right: 2vw;
    }
}

@media (max-width: 599px) {

    .left-calc01,
    .left-calc02 {
        padding-left: 0;
    }

    .right-calc01,
    .right-calc02 {
        padding-right: 0;
    }
}

/* ---------------------------
.calc（1200px）
----------------------------- */
.calc-left600 {
    margin-left: calc(50% - 600px);
}

.calc-right600 {
    margin-right: calc(50% - 600px);
}

[class*=up-fxd-even]>.calc-left600:nth-child(even),
[class*=up-fxd-odd]>.calc-left600:nth-child(odd) {
    margin-left: 0;
    margin-right: calc(50% - 600px);
}

[class*=up-fxd-even]>.calc-right600:nth-child(even),
[class*=up-fxd-odd]>.calc-right600:nth-child(odd) {
    margin-left: calc(50% - 600px);
    margin-right: 0;
}

@media (max-width: 1224px) {
    .calc-left600 {
        margin-left: 2%;
    }

    .calc-right600 {
        margin-right: 2%;
    }

    [class*=up-fxd-even]>.calc-left600:nth-child(even),
    [class*=up-fxd-odd]>.calc-left600:nth-child(odd) {
        margin-left: 0;
        margin-right: 2%;
    }

    [class*=up-fxd-even]>.calc-right600:nth-child(even),
    [class*=up-fxd-odd]>.calc-right600:nth-child(odd) {
        margin-left: 2%;
        margin-right: 0;
    }
}

@media (max-width: 599px) {
    .calc-left600 {
        margin-right: 2%;
    }

    .calc-right600 {
        margin-left: 2%;
    }

    [class*=up-fxd-even]>.calc-left600:nth-child(even),
    [class*=up-fxd-odd]>.calc-left600:nth-child(odd) {
        margin-left: 2%;
        margin-right: 2%;
    }

    [class*=up-fxd-even]>.calc-right600:nth-child(even),
    [class*=up-fxd-odd]>.calc-right600:nth-child(odd) {
        margin-left: 2%;
        margin-right: 2%;
    }
}

/* ---------------------------
.calc（1100px）
----------------------------- */
.calc-left550 {
    margin-left: calc(50% - 550px);
}

.calc-right550 {
    margin-right: calc(50% - 550px);
}

[class*=up-fxd-even]>.calc-left550:nth-child(even),
[class*=up-fxd-odd]>.calc-left550:nth-child(odd) {
    margin-left: 0;
    margin-right: calc(50% - 550px);
}

[class*=up-fxd-even]>.calc-right550:nth-child(even),
[class*=up-fxd-odd]>.calc-right550:nth-child(odd) {
    margin-left: calc(50% - 550px);
    margin-right: 0;
}

@media (max-width: 1122px) {
    .calc-left550 {
        margin-left: 2%;
    }

    .calc-right550 {
        margin-right: 2%;
    }

    [class*=up-fxd-even]>.calc-left550:nth-child(even),
    [class*=up-fxd-odd]>.calc-left550:nth-child(odd) {
        margin-left: 0;
        margin-right: 2%;
    }

    [class*=up-fxd-even]>.calc-right550:nth-child(even),
    [class*=up-fxd-odd]>.calc-right550:nth-child(odd) {
        margin-left: 2%;
        margin-right: 0;
    }
}

@media (max-width: 599px) {
    .calc-left550 {
        margin-right: 2%;
    }

    .calc-right550 {
        margin-left: 2%;
    }

    [class*=up-fxd-even]>.calc-left550:nth-child(even),
    [class*=up-fxd-odd]>.calc-left550:nth-child(odd) {
        margin-left: 2%;
        margin-right: 2%;
    }

    [class*=up-fxd-even]>.calc-right550:nth-child(even),
    [class*=up-fxd-odd]>.calc-right550:nth-child(odd) {
        margin-left: 2%;
        margin-right: 2%;
    }
}

/* ---------------------------
.calc（1000px）
----------------------------- */
.calc-left500 {
    margin-left: calc(50% - 500px);
}

.calc-right500 {
    margin-right: calc(50% - 500px);
}

[class*=up-fxd-even]>.calc-left500:nth-child(even),
[class*=up-fxd-odd]>.calc-left500:nth-child(odd) {
    margin-left: 0;
    margin-right: calc(50% - 500px);
}

[class*=up-fxd-even]>.calc-right500:nth-child(even),
[class*=up-fxd-odd]>.calc-right500:nth-child(odd) {
    margin-left: calc(50% - 500px);
    margin-right: 0;
}

@media (max-width: 1024px) {
    .calc-left500 {
        margin-left: 2%;
        margin-right: 2%;
    }

    .calc-right500 {
        margin-left: 2%;
        margin-right: 2%;
    }

    [class*=up-fxd-even]>.calc-left500:nth-child(even),
    [class*=up-fxd-odd]>.calc-left500:nth-child(odd) {
        margin-left: 0;
        margin-right: 2%;
    }

    [class*=up-fxd-even]>.calc-right500:nth-child(even),
    [class*=up-fxd-odd]>.calc-right500:nth-child(odd) {
        margin-left: 2%;
        margin-right: 0;
    }
}

@media (max-width: 599px) {
    .calc-left500 {
        margin-right: 2%;
    }

    .calc-right500 {
        margin-left: 2%;
    }

    [class*=up-fxd-even]>.calc-left500:nth-child(even),
    [class*=up-fxd-odd]>.calc-left500:nth-child(odd) {
        margin-left: 2%;
        margin-right: 2%;
    }

    [class*=up-fxd-even]>.calc-right500:nth-child(even),
    [class*=up-fxd-odd]>.calc-right500:nth-child(odd) {
        margin-left: 2%;
        margin-right: 2%;
    }
}

/* ---------------------------
float
----------------------------- */
.float-left-cmn {
    float: left;
}

.float-right-cmn {
    float: right;
}

/* 偶数と奇数番目で左右反転No.3 */
[class*=up-fxd-even]>*:nth-child(even) .float-left-cmn,
[class*=up-fxd-odd]>*:nth-child(odd) .float-left-cmn {
    float: right;
}

[class*=up-fxd-even]>*:nth-child(even) .float-right-cmn,
[class*=up-fxd-odd]>*:nth-child(odd) .float-right-cmn {
    float: left;
}

@media (max-width: 1024px) {
    .tb .float-left-cmn {
        width: 100%;
        margin: 2% 0;
    }

    .tb .float-right-cmn {
        width: 100%;
        margin: 2% 0;
    }

}

@media (max-width: 599px) {
    .float-left-cmn {
        width: 100%;
        margin: 2% 0;
    }

    .float-right-cmn {
        width: 100%;
        margin: 2% 0;
    }
}

/* ---------------------------
fead
----------------------------- */
.fead-text {
    opacity: 0;
}



.fead-text.mv {
    opacity: 1;
    -webkit-transition: 0s;
    transition: 0s;
    -webkit-transition-delay: 0s;
    transition-delay: 0s;
}

.fead-text .str {
    opacity: 0;
}



.fead-text .str.mv {
    opacity: 1;
    -webkit-transition: 1s;
    transition: 1s;
    /* -webkit-transition-delay: 1.0s;
    transition-delay: 1.0s; */
}

.fead-cover {
    position: relative;
}

.fead-cover:before {
    content: "";
    width: 100%;
    height: 100%;
    display: block;
    background: #000;
    position: absolute;
    top: 0;
    right: 0;
    z-index: 15;
}



.fead-cover.mv:before {
    width: 0;
    -webkit-transition: 0.8s;
    transition: 0.8s;
    -webkit-transition-delay: 1s;
    transition-delay: 1s;
}

.fead-lr {
    opacity: 0;
    -webkit-transform: translateX(-20%);
    transform: translateX(-20%);
}

.fead-lr:nth-of-type(2n+2) {
    -webkit-transform: translateX(20%);
    transform: translateX(20%);
}

.fead-lr.mv {
    opacity: 1;
    -webkit-transform: translateX(0);
    transform: translateX(0);
}

.fead-bg:before {
    content: "";
    width: 0;
    height: 100%;
    display: block;
    position: absolute;
    top: 0;
}

.fead-bg.mv:before {
    -webkit-transition: 0.5s;
    transition: 0.5s;
    -webkit-transition-delay: 0.5s;
    transition-delay: 0.5s;
}

.fead-order-up {
    opacity: 0;
    -webkit-transform: translateY(50px);
    transform: translateY(50px);
}

.fead-order-up.mv {
    opacity: 1;
    -webkit-transition: 0.5s ease-out;
    transition: 0.5s ease-out;
    -webkit-transform: translateY(0);
    transform: translateY(0);
}



/* fead END */
/* ---------------------------
component
----------------------------- */
.fs150\% {
    font-size: 150%;
}

.color01 {
    color: #ffd800;
}

.color02 {
    color: var(--color03);
}

.color03 {
    color: var(--color01);
}

.color04 {
    color: #a0a0a0;
}

.color05 {
    color: var(--color02);
}

.color06 {
    color: var(--color02);
}

.color07 {
    color: #999;
}

.color08 {
    color: #2a72be;
}

.text-shadow01 {
    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, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff;
}

.box-shadow01 {
    -webkit-box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);
    box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);
}

.box-shadow02 {
    -webkit-box-shadow: 0 0 3px rgba(0, 0, 0, 0.3);
    box-shadow: 0 0 3px rgba(0, 0, 0, 0.3);
}

.border01 {
    border: 3px solid var(--color03);
}

.border02 {
    border: 3px solid var(--color06);
}

.border03 {
    border: 2px solid #e3ecf5;
}

.border04 {
    border: 2px solid var(--color09);
}

.border05 {
    border-bottom: 1px solid #ccc;
}

.border06 {
    border: 2px solid var(--color01);
}

.border07 {
    border: 3px solid var(--color03);
}

.border08 {
    border: 3px solid var(--color06);
}

.border09 {
    border-bottom: 3px solid var(--color03);
}

.border10 {
    border-bottom: 2px solid var(--color01);
}

.border11 {
    border: 3px solid var(--color02);
}

.ニュース .border11 {
    border: 3px solid var(--color03);
}

.border12 {
    border-bottom: 3px solid var(--color06);
}

.border13 {
    border-bottom: 2px solid var(--color02);
}

.border14 {
    border: 2px solid var(--color06);
}

.triangle01 {
    position: relative;
}

.triangle01:before {
    content: "";
    width: 0;
    height: 0;
    border-width: 0 72px 72px 0;
    border-style: solid;
    border-color: transparent var(--color03) transparent transparent;
    position: absolute;
    top: 0;
    right: 0;
}

.triangle01:after {
    content: "";
    width: 0;
    height: 0;
    border-width: 72px 0 0 72px;
    border-style: solid;
    border-color: transparent transparent transparent var(--color03);
    position: absolute;
    bottom: 0;
    left: 0;
}

.triangle01.__green:before {
    border-color: transparent var(--color06) transparent transparent;
}

.triangle01.__green:after {
    border-color: transparent transparent transparent var(--color06);
}

.bgc-white {
    background-color: #fff;
}

.bgc01 {
    background-color: var(--color01);
}

.bgc02 {
    background-color: var(--color07);
}

.bgc03 {
    background-color: var(--color05);
}

.bgc04 {
    background: #ebe8e5;
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#ebe8e5", endColorstr="#ffffff", GradientType=1);
}

.bgc06 {
    background-color: var(--color03);
}

.bgc07 {
    background-color: var(--color12);
}

.bgc08 {
    background-color: #e5e9ed;
}

.bgc09 {
    background-color: var(--color11);
}

.bgc10 {
    background-color: var(--color13);
}

.bgc11 {
    background-color: rgba(255, 255, 255, 0.9);
}

.bgc12 {
    background-color: #f3f1ef;
}

.bgc13 {
    background-color: #ebe8e5;
}

.bgc14 {
    background-color: #fffcf9;
}


.opacity01 {
    background-color: #000;
}

.opacity01 img {
    opacity: 0.8;
}

.opacity02 {
    background-color: #fff;
}

.opacity02 img {
    opacity: 0.8;
}

.contact-btn01 {
    width: 180px;
    height: 50px;
    overflow: hidden;
    font-size: 14px;
    color: #fff;
    border-radius: 10px;
}

.contact-btn01 a {
    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;
    background-color: var(--color01);
}

.contact-btn01 a:before {
    content: "\f0e0";
    margin-right: 8px;
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    font-size: 18px;
}

.minit-box {
    margin-bottom: 30px;
}

.minit-box:last-child {
    margin-bottom: 0px;
}

@media(max-width:1024px) {
    .contact-btn01 {
        width: 250px;
    }
}

/* ---------------------------
見出し・タイトル
----------------------------- */
.heading01 {
    margin-bottom: 40px;
    font-weight: bold;
    letter-spacing: 0.1em;
}

.heading01 .en {
    display: block;
    font-size: 18px;
    color: var(--color02);
}

.heading01 .ttl {
    display: block;
    font-size: 30px;
}

.ttl {
    font-weight: bold !important;
}


.heading01 .num {
    font-size: 150%;
}

.heading01.__orange .en {
    color: var(--color08);
}

.title01 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
    -webkit-box-align: start;
    align-items: flex-start;
    -ms-flex-align: start;
    position: absolute;
    top: -10px;
    right: 15px;
    z-index: 5;
}

.title01 li {
    padding: 10px 3px;
    color: #fff;
    -ms-writing-mode: tb-rl;
    -webkit-writing-mode: vertical-rl;
    writing-mode: vertical-rl;
    background-color: var(--color01);
}

.title01 li+li {
    margin-top: 20px;
    margin-right: 8px;
}

.title02 .num {
    font-weight: 600;
    font-size: 150%;
}

@media (max-width: 599px) {
    .title01.for-sp {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
    }
}

/* ---------------------------
ボタン
----------------------------- */
.btn-cmn01 {
    width: 200px;
    height: 50px;
    color: var(--color01);
}

.btns-wrap .btn-cmn01 {
    width: 100%;
}

.btn-cmn01.g-new {
    margin: 30px auto 0;
}

.btn-cmn01 button,
.btn-cmn01 a,
.btn-cmn01 .a {
    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;
    overflow: hidden;
    overflow: hidden;
    text-decoration: none;
    border: 2px solid var(--color01);
    border-radius: 1000px;
    background-color: #fff;
    -webkit-transition: ease 0.2s;
    transition: ease 0.2s;
    position: relative;
}

.btn-cmn01 button span,
.btn-cmn01 a span,
.btn-cmn01 .a span {
    position: relative;
    z-index: 3;
}

.btn-cmn01 button:before,
.btn-cmn01 a:before,
.btn-cmn01 .a:before {
    content: "";

    /*背景色*/
    width: 100%;
    height: 100%;

    /*色や形状*/
    background: var(--color01);


    /*アニメーション*/
    -webkit-transition: -webkit-transform 0.6s cubic-bezier(0.8, 0, 0.2, 1) 0s;
    transition: -webkit-transform 0.6s cubic-bezier(0.8, 0, 0.2, 1) 0s;
    transition: transform 0.6s cubic-bezier(0.8, 0, 0.2, 1) 0s;
    transition: transform 0.6s cubic-bezier(0.8, 0, 0.2, 1) 0s, -webkit-transform 0.6s cubic-bezier(0.8, 0, 0.2, 1) 0s;
    -webkit-transform: scale(0, 1);
    transform: scale(0, 1);
    -webkit-transform-origin: right top;
    transform-origin: right top;

    /*絶対配置で位置を指定*/
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
}

.btn-cmn01 button span:after,
.btn-cmn01 a span:after,
.btn-cmn01 .a span:after {
    content: "＞";
    margin-left: 15px;
    -webkit-transition: 0.4s ease;
    transition: 0.4s ease;
    position: relative;
    z-index: 2;
}

.btn-cmn01 button:hover,
.btn-cmn01 a:hover {
    opacity: 1;
        color:#fff;
}

.btn-cmn01 button:hover span,
.btn-cmn01 a:hover span {
    color: #fff;
    position:relative;
    z-index:2;
}

.btn-cmn01 button:hover:before,
.btn-cmn01 a:hover:before {
    -webkit-transform: scale(1, 1);
    transform: scale(1, 1);
    -webkit-transform-origin: left top;
    transform-origin: left top;
}

.btn-cmn01.__orange {
    color: var(--color08);
}

.btn-cmn01.__orange a,
.btn-cmn01.__orange button {
    border-color: var(--color08);
}

.btn-cmn01.__orange a:before,
.btn-cmn01.__orange button:before {
    background-color: var(--color08);
}

.btn-cmn01.__back a span:after,
.btn-cmn01.__back button span:after {
    content: none;
}

/* ---------------------------
その他
----------------------------- */
.check-list01 li {
    padding-left: 45px;
    position: relative;
}

.check-list01 li:before {
    content: "";
    width: 30px;
    height: 24px;
    background-image: url('/import/tenant_1/162.43.9.52/images/icon02.webp');
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    position: absolute;
    top: 2px;
    left: 0;
}

.check-list01 li+li {
    margin-top: 12px;
}

.arrow01 {
    position: relative;
}

.arrow01:before {
    content: "";
    width: 0;
    height: 0;
    border-width: 0 0 47px 47px;
    border-style: solid;
    border-color: transparent transparent var(--color01) transparent;
    position: absolute;
    bottom: 0;
    right: 0;
    z-index: 2;
}

.arrow01:after {
    content: "";
    width: 20px;
    height: 4px;
    background-image: url('/import/tenant_1/162.43.9.52/images/arrow02.webp');
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    position: absolute;
    bottom: 6%;
    right: 0px;
    z-index: 3;
}

.arrow01.__big:before {
    border-width: 0 0 48px 48px;
}

.arrow01.__big:after {
    width: 30px;
    height: 7px;
}

.arrow01.__orange:before {
    border-color: transparent transparent var(--color03) transparent;
}

.arrow01.__green:before {
    border-color: transparent transparent var(--color06) transparent;
}

.arrow01.__blue:before {
    border-color: transparent transparent var(--color02) transparent;
}

.ニュース .arrow01.__blue:before {
    border-color: transparent transparent var(--color03) transparent;
}

.arrow03 {
    padding-right: 35px;
    position: relative;
}


.icon02 {
    position: relative;
}

.icon02:after {
    content: "";
    width: 135px;
    height: 129px;
    background-image: url('/import/tenant_1/162.43.9.52/images/type1.webp');
    background-size: auto 100%;
    background-repeat: no-repeat;
    background-position: right bottom;
    position: absolute;
    bottom: 0;
    right: -15px;
    z-index: 5;
}

.icon02.__type2:after {
    background-image: url('/import/tenant_1/162.43.9.52/images/type2.webp');
}

.icon02.__type3:after {
    background-image: url('/import/tenant_1/162.43.9.52/images/type3.webp');
}

.top05 ul li:nth-of-type(2) .icon02:after {
    background-image: url('/import/tenant_1/162.43.9.52/images/type2.webp');
}

.top05 ul li:nth-of-type(3) .icon02:after {
    background-image: url('/import/tenant_1/162.43.9.52/images/type3.webp');
}

.top05 ul li:nth-of-type(4) .icon02:after {
    background-image: url('/import/tenant_1/162.43.9.52/images/company2.webp');
}

.index .top05 ul li:nth-of-type(4),
.achievement-area li:nth-of-type(4) {
    display: none;
}

.ball-list01 li {
    padding-left: 35px;
    position: relative;
}

.ball-list01 li:before {
    content: "";
    width: 24px;
    height: 24px;
    background-color: var(--color01);
    display: block;
    position: absolute;
    top: 5px;
    left: 0;
    border-radius: 50%;
}

.ball-list01 li+li {
    margin-top: 12px;
}

@media (max-width: 599px) {
    .heading01 {
        margin-bottom: 25px;
    }

    .heading01 .en {
        font-size: 14px;
    }

    .heading01 .ttl {
        font-size: 22px;
    }

    .triangle01:before {
        border-width: 0 30px 30px 0;
    }

    .triangle01:after {
        border-width: 30px 0 0 30px;
    }

    .btn-cmn01 {
        width: 170px;
        height: 45px;
    }

    .btn-cmn01 button:after,
    .btn-cmn01 a:after {
        margin-left: 10px;
    }

    .top05 ul li:nth-of-type(4),
    .achievement-area li:nth-of-type(4) {
        display: block;
    }

    .ball-list01 li {
        padding-left: 26px;
    }

    .ball-list01 li:before {
        width: 20px;
        height: 20px;
        top: 4px;
    }
}

/* ---------------------------
01index.html
----------------------------- */
.page-ttl {
    padding: 5px 0;
    font-size: 12px;
    line-height: 1.2em;
}

.header-common {
    padding-bottom: 10px;
}

.header-logo {
    width: 300px;
}

.header-logo a {
    width: 100%;
    display: block;
}

.header-tel {
    padding-left: 38px;
    position: relative;
}

.header-tel:before {
    content: "\f095";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    font-size: 30px;
    position: absolute;
    top: 0;
    left: 0;
}

.header-tel .text {
    font-size: 10px;
}

.header-tel .tel {
    font-weight: bold;
    font-size: 24px;
}

.header-tel .num {
    font-weight: bold;
    font-size: 24px;
}

.header-fix {
    width: 63px;
    position: fixed;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
    z-index: 100;
}

.header-fix .fixbtn a {
    width: 100%;
    height: 240px;
    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;
    background-color: var(--color03);
    border-radius: 15px 0 0 15px;
    color: #fff;
}

.header-fix .fixbtn a img {
    width: 35px;
}

.header-fix .fixbtn.line {
    margin-top: 20px
}

.header-fix .fixbtn.insta {
    margin-top: 20px
}

.header-fix .fixbtn.line a {
    background-color: #00B900;
}

.header-fix .fixbtn.insta a {
    background: linear-gradient(135deg, #427eff 0%, #f13f79 70%) no-repeat;
}

.header-fix.ab-test a {
    background-color: var(--color06);
}

.header-fix .text {
    margin-top: 10px;
    -ms-writing-mode: tb-rl;
    -webkit-writing-mode: vertical-rl;
    writing-mode: vertical-rl;
}

.g-list2 li {
    padding: 10px;
    font-size: 14px;
}

.gnav {
    width: 65%;
}

.gnav .toggle {
    width: 42px;
    height: 42px;
    display: block;
    display: none;
    opacity: 0.8;
    cursor: pointer;
    position: fixed;
    top: 0px;
    right: 0px;
    z-index: 999;
}

.gnav .toggle .menu {
    width: 100%;
    font-size: 10px;
    text-align: center;
    text-shadow: 0 0 5px #fff;
    -webkit-transform: translate(-50%, 100%);
    transform: translate(-50%, 100%);
    position: absolute;
    bottom: 5px;
    left: 50%;
}

.gnav .toggle button {
    border-style: inherit;
}

.gnav .bar {
    width: 28px;
    height: 2px;
    display: block;
    margin-top: -1px;
    padding: 0;
    text-indent: 9999px;
    background: #000;
    -webkit-transition: ease 0.4s;
    transition: ease 0.4s;
    position: absolute;
    top: 50%;
    left: 7px;
}

.gnav .bar:before {
    content: "";
    width: 28px;
    height: 2px;
    display: block;
    background: #000;
    position: absolute;
    top: -10px;
    left: 0;
}

.gnav .bar:after {
    content: "";
    width: 28px;
    height: 2px;
    display: block;
    background: #000;
    position: absolute;
    top: 10px;
    left: 0;
}

.gnav.action .toggle .bar {
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
}

.gnav.action .toggle .bar:after,
.gnav.action .toggle .bar:before {
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg);
    top: 0;
    left: 0;
}

@media (max-width: 1024px) {
    .gnav .toggle {
        display: block;
    }

    .page-ttl {
        display: none;
    }

    .header-common {
        padding: 10px 0;
    }

    .header-logo {
        margin-right: auto;
    }
}

@media (max-width: 599px) {

    .header-address {
        text-shadow: 0 0 5px #fff;
    }

    .header-logo {
        padding: 10px 0;
        width: 200px;
    }

    .header-logo img {
        -webkit-filter: drop-shadow(0 0 5px #fff);
        filter: drop-shadow(0 0 5px #fff);
    }

    .index header {
        width: 100%;
        position: absolute;
        top: 0;
        left: 0;
        z-index: 9999;
    }

    .gnav .bar,
    .gnav .bar:before,
    .gnav .bar:after {
        -webkit-box-shadow: 0 0 5px #fff;
        box-shadow: 0 0 5px #fff;
    }

    .header-common {
        padding: 0px 0;
    }
}

/* gnav アコーディオン */
.g-list li {
    font-size: 16px;
}

.g-item {
    text-align: center;
}

.g-item>a,
.g-item>.a {
    display: block;
    padding: 10px 0;
}

.pull-box {
    position: relative;
}

.accordionbox {
    width: 280px;
    visibility: hidden;
    opacity: 0;
    -webkit-transform: translate(-50%, 0);
    transform: translate(-50%, 0);
    position: absolute;
    left: 50%;
    z-index: 10;
}

.accordionbox ul {
    background-color: #fff;
}

.accordionbox li {
    text-align: center;
    border-bottom: 1px solid var(--color01);
}

.accordionbox a {
    display: block;
    padding: 10px;
    -webkit-transition: 0s;
    transition: 0s;
}

.accordionbox a:hover {
    background-color: var(--color01)36;
}

.g-item.pull:hover .accordionbox {
    visibility: visible;
    opacity: 1;
    -webkit-transition: 0.4s ease;
    transition: 0.4s ease;
}

.g-list.fixed {
    width: 100%;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    background-color: rgba(255, 255, 255, 0.7);
    -webkit-box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);
    box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);
    position: fixed;
    top: 0;
    left: 0;
    z-index: 20;
}

.g-list.fixed .g-item>a,
.g-list.fixed .g-item>.a {
    padding: 10px 10px;
}

.pc-none,
.sp-only {
    display: none;
}

.overlay {
    overflow: hidden;
}

@media (max-width: 1024px) {
    .pc-none {
        display: block;
    }

    .g-item>a,
    .g-item>.a {
        display: block;
        padding: 10px 10px;
    }

    .overlay:after {
        content: "";
        width: 100%;
        height: 100vh;
        background: #000;
        opacity: 0.3;
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
        position: fixed;
        top: 0;
        left: 0;
        z-index: 150;
    }

    .gnavinn {
        width: 90%;
        max-width: 400px;
        height: 100vh;
        overflow-y: auto;
        -webkit-overflow-scrolling: touch;
        padding: 0;
        padding-bottom: 0;
        border: none;
        background: white;
        opacity: 1;
        -webkit-transition: height ease 0.1s, opacity ease 0.4s;
        -webkit-transition: 0.4s ease;
        transition: height ease 0.1s, opacity ease 0.4s;
        transition: 0.4s ease;
        -webkit-transform: translate3d(100%, 0, 0);
        transform: translate3d(100%, 0, 0);
        position: fixed;
        top: 0;
        right: 0;
        z-index: 250;
    }

    .gnav.action .gnavinn {
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }

    /* ハンバーガーメニュー内 */
    .g-list li,
    .g-list2 li {
        padding: 0;
        text-align: left;
        border-bottom: none;
    }

    .g-list li a,
    .g-list2 li a {
        display: block;
        padding: 10px 15px;
        position: relative;
    }

    .g-list li a:after,
    .g-list2 li a:after {
        content: "\f054";
        display: block;
        font-family: "Font Awesome 5 Free";
        font-weight: 900;
        -webkit-transform: translate(50%, -50%);
        transform: translate(50%, -50%);
        position: absolute;
        top: 50%;
        right: 10%;
    }

    .g-item.pull>a:after {
        content: "+";
        height: auto;
        font-weight: bold;
        background-image: none;
        right: 11%;
    }

    .accordionbox {
        width: 100%;
        visibility: visible;
        opacity: 1;
        -webkit-transform: none;
        transform: none;
        position: static;
    }

    .accordionbox a:before {
        content: "└";
        margin-right: 5px;
    }

    .pull-box {
        display: none;
    }

    .g-item.pull>a {
        pointer-events: none;
    }

    .header-fix {
        width: 250px;
        height: 50px;
        border-radius: 10px;
        position: relative;
        transform: translateY(0);
        margin-bottom: 200px;
    }

    .header-fix .fixbtn {
        margin-top: 20px;
    }

    .header-fix .fixbtn a {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -ms-flex-direction: row;
        flex-direction: row;
        height: 50px;
        border-radius: 10px;
    }

    .header-fix .text {
        margin-top: 0;
        -ms-writing-mode: lr-tb;
        -webkit-writing-mode: horizontal-tb;
        writing-mode: horizontal-tb;
    }

    .header-fix .fixbtn a img {
        width: 20px;
        margin-right: 5px;
    }

    .pull-box a {
        font-size: 14px;
    }
}

@media (max-width: 599px) {
    .sp-only {
        display: block;
    }
}

/* TOPメインビジュアル */
.top-image {
    position: relative;
    height: 800px;
    overflow: hidden;
}

.top-image .uk-slidenav-position {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
}

.top-image .uk-slideshow {
    height: 100% !important;
}

.top-image .uk-slideshow * {
    height: 100% !important;
}

.top-image li>div {
    width: 100%;
    display: block;
    position: relative;
}

.top-image li img {
    width: 100%;
    height: 100% !important;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: 50% 50%;
    object-position: 50% 50%;
}

/* 電話番号とWEB予約固定バナー */
.sp-fix-box {
    width: 100%;
    display: none;
    position: fixed;
    bottom: 0;
    left: 0;
    z-index: 20;
}

.sp-fix-box li {
    width: calc(50% - 25px);
}

.sp-fix-box li.mini {
    width: 50px;
}

.sp-fix-box li.mini * {
    display: block;
    width: 100%;
}

.sp-fix-box li.mini .LINE a {
    background-color: #00B900;
    display: flex;
    align-items: center;
    justify-content: center;
}

.sp-fix-box li.mini .INSTA a {
    background: linear-gradient(135deg, #427eff 0%, #f13f79 70%) no-repeat;
    display: flex;
    align-items: center;
    justify-content: center;
}

.sp-fix-box li.mini img {
    width: 30px;
}

/* .sp-fix-box li * {
  height: 100%;
} */

.sp-fix-box a {
    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;
    height: 45px;
    font-weight: bold;
    color: #fff;
}

.sp-fix-box a:before {
    margin-right: 5px;
}

.sp-fix-box .contact a {
    background-color: var(--color03);
}

.sp-fix-box .contact.ab-test a {
    background-color: var(--color06);
}

.sp-fix-box .contact a:before {
    content: "\f0e0";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
}

.sp-fix-box .tel a,
.sp-fix-box .tel2 a {
    background-color: var(--color01);
}

.sp-fix-box .tel a:before,
.sp-fix-box .tel2 a:before {
    content: "\f095";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
}

@media (max-width: 599px) {
    .sp-fix-box {
        display: block;
    }
}



/* パンくずリスト */
.bread-box li+li:before {
    content: ">";
    display: inline;
    margin: 0 0.5em;
}

.bread-box li {
    display: inline;
    line-height: 1.2;
}

.bread-box a {
    color: var(--color03);
}


/* top-mv-box */
.top-mv-box .mv-ttl {
    font-weight: bold;
    font-size: 48px;
}

.top-mv-box .tbox {
    width: 100%;
    text-shadow: 0 0 10px rgba(0, 0, 0, 0.3);
    position: absolute;
    bottom: 15%;
    left: 0;
}

.top-mv-box .tbox .sub {
    font-weight: bold;
    font-size: 30px;
}

.top-mv-box .tbox .sub2 {
    font-size: 60%;
}

.top02 {
    border-bottom: 2px solid var(--color09);
    border-left: 2px solid var(--color09);
    border-right: 2px solid var(--color09);
    position: relative;
}

.top02:before {
    content: "";
    width: 29%;
    height: 2px;
    background-color: var(--color09);
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
}

.top02:after {
    content: "";
    width: 29%;
    height: 2px;
    background-color: var(--color09);
    position: absolute;
    top: 0;
    right: 0;
    z-index:1;
}

.btm-img>img {
    object-position: bottom;
}

.top02 .ttl {
    font-weight: 600;
    text-shadow: 2px 2px 0px #fff, -2px 2px 0px #fff, 2px -2px 0px #fff, -2px -2px 0px #fff, 2px 0px 0px #fff, 0px 2px 0px #fff, -2px 0px 0px #fff, 0px -2px 0px #fff;
    white-space: nowrap;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    position: absolute;
    top: 0;
    left: 50%;
    z-index: 3;
    background-color:#fff;
}

.top02 .ttl span {
    font-size: 150%;
}

.top02 .ttl.__white {
    padding: 0 30px;
    background-color: #fff;
    z-index: 10;
}

.top03 a {
    padding: 10px;
    position: relative;
}

.top03 .tbox {
    padding: 25% 0;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    text-align: center;
    background-color: rgba(255, 255, 255, 0.7);
}

.top03 .ttl {
    display: inline-block;
    color: var(--color01);
    font-weight: bold;
}

.top04 a {
    padding: 25px;
    position: relative;
}

.top04 .tbox {
    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-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    padding: 6% 2% 6% 23%;
    background-color: rgba(255, 255, 255, 0.7);
    position: relative;
}

.top04 .icon {
    -webkit-transform: translate(-50%, 0);
    transform: translate(-50%, 0);
    position: absolute;
    bottom: 0;
    left: 18%;
}

.date-cat-box>.date {
    margin-right: 5px;
}

.date-cat-box .cat {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
}

.date-cat-box .cat span {
    display: inline-block;
    padding: 0px 2px;
    color: #fff;
    background-color: var(--color03);
    font-size: 14px;
    margin: 0 2px 2px 0;
}

.date-cat-box.minif .cat span {
    font-size: 12px;
}


.top-slider li {
    padding-bottom: 10px;
    -webkit-transform: scale(0.9);
    transform: scale(0.9);
}

.top-slider .slick-center:not(.no-scale) {
    -webkit-transform: scale(1);
    transform: scale(1);
}

.top-slider .btn-slick {
    font-size: 60px;
    color: var(--color03);
    -webkit-transform: translate(0, -50%);
    transform: translate(0, -50%);
    position: absolute;
    top: 50%;
    z-index: 10;
}

.top-slider .btn-slick:hover {
    cursor: pointer;
}

.top-slider .btn-back {
    left: 100px;
}

.top-slider .btn-next {
    right: 100px;
}

.faq-list .text {
    margin-left: 10px;
}

.faq-list .question {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding: 10px 40px 10px 0;
    border-bottom: 1px solid #999;
    position: relative;
}

.faq-list .question:hover {
    cursor: pointer;
}

.faq-list .question:after {
    content: "";
    content: "\f078";
    width: 13px;
    height: 13px;
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    font-size: 18px;
    color: var(--color01);
    -webkit-transition: 0.5s ease;
    transition: 0.5s ease;
    position: absolute;
    top: 20px;
    right: 20px;
}

.faq-list .question.is-parent:after {
    -webkit-transform: rotate(180deg);
    transform: rotate(180deg);
    top: 30px;
}

.faq-list .answer {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    display: none;
    padding: 10px 0 10px 30px;
    text-indent: -1.8em;
    padding-left: 1.8em;
    display: none;
}


.faq-list .ttl {
    line-height: 1;
}

.faq-list+.faq-list {
    margin-top: 10px;
}

.foot01 .tbox {
    background-color: rgba(255, 255, 255, 0.7);
}

.foot01 .box {
    padding: 4% 2%;
    border-radius: 15px;
}

.contact-btn {
    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;
}

.contact-btn:before {
    content: "\f0e0";
    margin-right: 8px;
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    font-size: 140%;
}

.footer-map {
    height: 250px;
    position: relative;
}

.footer-map iframe {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
}

.footer-nav>li+li {
    margin-top: 30px;
}

.footer-nav>li>a,
.footer-nav>li>span {
    font-weight: 600;
}

.footer-nav .dropdown {
    padding-left: 15px;
}

.footer-nav .dropdown li {
    margin: 10px 0;
    font-size: 12px;
}

.footer-nav .dropdown li:before {
    content: "＞";
}



.top07 {
    position: relative;
}

.top07:after {
    content: "";
    width: 1px;
    height: calc(100% - 110px);
    background-color: #ccc;
    position: absolute;
    bottom: 0;
    left: 55%;
}

.blogitem .cat {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
}

.blogitem .cat span {
    display: inline-block;
    padding: 0px 2px;
    color: #fff;
    background-color: var(--color03);
    font-size: 12px;
    margin: 0 2px 2px 0;
}

.blog-c .blogitem .cat span {
    background-color: var(--color02);
}

.d-cat .date {
    width: 100px;
    white-space: nowrap;
}

.d-cat .cat {
    width: calc(100% - 100px);
    display: flex;
    align-items: center;
    flex-wrap: wrap;
}

.d-cat .cat span {
    display: inline-block;
    padding: 0px 2px;
    color: #fff;
    background-color: var(--color03);
    font-size: 12px;
    margin: 0 2px 2px 0;
}

.newslist_top li {
    margin-top: 15px;
}

.newslist_top li:first-child {
    margin-top: 0px;
}

.bloglist_top li {
    margin-top: 15px;
}

.bloglist_top li:first-child {
    margin-top: 0px;
}

.top05 .ttl {
    letter-spacing: -.05em;
}

@media (max-width: 1024px) {
    .top-mv-box .mv-ttl {
        font-size: 36px;
    }

    .top-mv-box .tbox .sub {
        font-size: 24px;
    }

    .top02:before {
        width: 20%;
    }

    .top02:after {
        width: 20%;
    }

    .top07:after {
        content: none;
    }

    .top-image {
        height: 500px;
    }
}

@media (max-width: 599px) {
    .top-image {
        padding-top: 75%;
    }

    .top-mv-box .mv-ttl {
        font-size: 24px;
    }

    .top-mv-box .tbox .sub {
        font-size: 18px;
    }

    .top02:before {
        width: 10%;
    }

    .top02:after {
        width: 10%;
    }

    .top04 .icon {
        max-width: 75px;
        left: 15%;
    }

    .top04 a {
        padding: 20px;
    }

    .top-slider .btn-slick {
        font-size: 30px;
    }

    .top-slider .btn-back {
        left: 20px;
    }

    .top-slider .btn-next {
        right: 20px;
    }

    .icon02:after {
        width: 80px;
        height: 75px;
        right: -5px;
    }

    .top-image {
        height: 400px;
    }

    .footer-nav>li+li {
        margin-top: 20px;
    }

    .faq-list .answer {
        text-indent: -1.5em;
        padding-left: 1.5em;
    }
}

/* ---------------------------
first
----------------------------- */
.under-mv-box {
    position: relative;
}

.under-mv-box .pic img {
    -o-object-position: top right;
    object-position: top right;
}

.under-mv-box .pic:after {
    padding-top: 54.5%;
}

.under-mv-box .tbox {
    width: 100%;
    position: absolute;
    bottom: 25%;
    left: 10%;
}

.under-mv-box .ttl {
    font-weight: bold;
    font-size: 50px;
    color: var(--color01);
    line-height: 1.2;
    text-shadow: 2px 2px 0px #fff,
        -2px 2px 0px #fff,
        2px -2px 0px #fff,
        -2px -2px 0px #fff,
        2px 0px 0px #fff,
        0px 2px 0px #fff,
        -2px 0px 0px #fff,
        0px -2px 0px #fff;
    white-space: nowrap;
}

.first03 table {
    width: 100%;
    border-collapse: separate;
}

.table-wrap {
    min-width: 800px;
}

.first03 th {
    padding: 10px;
}

.first03 td {
    padding: 15px 15px 15px 0;
}

.first03 tr td:nth-of-type(1) {
    width: 24%;
}

.first03 tr td:nth-of-type(2) {
    width: 38%;
}

.first03 tr td:nth-of-type(3) {
    width: 38%;
}

.first03 ul li+li {
    margin-top: 10px;
}

.icon04 {
    position: relative;
}

.icon04:after {
    content: "";
    width: 22px;
    height: 26px;
    background-image: url('/import/tenant_1/162.43.9.52/images/icon04.webp');
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    -webkit-transform: translate(80%, -50%);
    transform: translate(80%, -50%);
    position: absolute;
    top: 0;
    right: 0;
}

.first06 {
    padding: 5% 2% 9%;
    position: relative;
}

.v2 .first06 {
    padding: 5% 2%;
    position: relative;
}

.first06 .icon {
    max-width: 120px;
    position: absolute;
    bottom: 0;
    right: 10px;
}

.under-mv-box {
    height: 500px;
}

.under-mv-pic {
    width: 100%;
    height: 100%;
    overflow: hidden;
    background-color: var(--color12);
}

.under-mv-pic img {
    width: 100%;
    height: 100%;
    overflow: hidden;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center;
    object-position: center;
    opacity: 0.3;
}

.under {
    position: relative;
}

.under::before {
    width: 300px;
    max-width: 60%;
    content: "";
    display: inline-block;
    height: 2px;
    background-color: var(--color09);
    position: absolute;
    top: 101%;
    left: 50%;
    transform: translateX(-50%);
}

.under.left::before {
    left: 0%;
    transform: translateX(0%);
}

.h-img img {
    height: 100%;
    object-fit: cover;
    overflow: hidden;
}

.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(--color01);
    border-radius: 50%;
    position: absolute;
    left: 0;
    top: 7px;
}

.indent-list-item.big::before {
    top: 9px;
}

.js-list>span {
    display: block;
    line-height: 1.5em;
    padding-left: 17px;
    position: relative;
    margin-bottom: 5px;
}

.js-list>span:last-child {
    margin-bottom: none;
}

.js-list>span::before {
    content: "";
    width: 15px;
    height: 15px;
    display: inline-block;
    background-color: var(--color01);
    border-radius: 50%;
    position: absolute;
    left: 0;
    top: 5px;
}


.txt.indent-list .indent-list-item {
    margin-bottom: 5px;
}

.txt.indent-list .indent-list-item:last-child {
    margin-bottom: 0px;
}

.txt.indent-list .indent-list-item::before {
    top: 5px;
}

@media (max-width: 1024px) {
    .under-mv-box .ttl {
        font-size: 36px;
    }

    .under-mv-box {
        height: 400px;
    }

    .under-mv-pic {
        width: 100%;
    }
}

.bg-ttl.ttl {
    padding: 0 .5em;
    background-color: #fff;
    z-index: 6;
}

@media (max-width: 599px) {
    .under-mv-box .ttl {
        font-size: 24px;
        text-align: center;
        white-space: normal;
    }

    .under-mv-box {
        margin-bottom: 30px;
    }

    .under-mv-box .pic {
        width: 100%;
    }

    .under-mv-box .pic:after {
        padding-top: 70%;
    }

    .under-mv-box .tbox {
        width: 55%;
        bottom: 15%;
        left: 40%;
    }

    .icon04:after {
        width: 18px;
        height: 22px;
        top: -10px;
        right: 10px;
    }

    .first06 {
        padding: 5% 2% 100px;
    }

    .first06 .icon {
        max-width: 80px;
        right: 5px;
    }

    .check-list01 li {
        padding-left: 25px;
    }

    .check-list01 li:before {
        width: 25px;
        height: 25px;
    }
}

/* ---------------------------
03company
----------------------------- */
.company02 dt {
    width: calc(25% - 3px);
    color: #fff;
    background-color: var(--color01);
}

.company02 dd {
    width: 75%;
    background-color: var(--color11);
}

.company02 dt,
.company02 dd {
    padding: 15px 15px;
}

.company02 dl+dl {
    margin-top: 3px;
}

.company02.__type2 dt {
    width: calc(60% - 3px);
}

.company02.__type2 dd {
    width: 40%;
}

@media(max-width:1024px) {
    .company03 .tra-img {
        width: 150px;
        position: absolute;
        bottom: 0;
        right: 0;
        z-index: 1;
    }
}

@media (max-width: 599px) {

    .company02 dt,
    .company02 dd {
        padding: 10px 5px;
    }

    .company02 dt {
        width: 90px;
    }

    .company02 dd {
        width: calc(100% - 90px);
    }

    .company02 dl+dl {
        margin-top: 2px;
    }

    .company02.__type2 dt {
        width: calc(55% - 3px);
    }

    .company02.__type2 dd {
        width: 45%;
        white-space: nowrap;
    }
}

.newmapbox {
    height: 100%;
    min-height: 200px;
}

.newmapbox iframe {
    height: 100%;
}

/* ---------------------------
04flow
----------------------------- */
.flow02 .num {
    font-weight: bold;
    font-size: 45px;
    color: #fff;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    position: absolute;
    top: 50%;
    left: 50%;
    z-index: 3;
}

.flow02 .tbox {
    padding-top: 50px;
}



@media (max-width: 1024px) {
    .flow02 .num {
        font-size: 36px;
    }
}

@media (max-width: 599px) {
    .flow02 .tbox {
        -webkit-box-ordinal-group: 4;
        -ms-flex-order: 3;
        order: 3;
        padding-top: 0;
    }

    .flow02 .pbox {
        padding-top: 0;
    }
}

/* ---------------------------
05exterior
----------------------------- */
.icon05 {
    position: relative;
}

.icon05:after {
    content: "";
    width: 31px;
    height: 32px;
    background-image: url('/import/tenant_1/162.43.9.52/images/icon05.webp');
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    -webkit-transform: translate(80%, -70%);
    transform: translate(80%, -70%);
    position: absolute;
    top: 0;
    right: 0;
}

.baloom {
    margin-bottom: 25px;
    padding: 2% 4%;
    border: 2px solid var(--color01);
    border-radius: 1000px;
    background-color: #fff;
    position: relative;
}

.baloom:before,
.baloom:after {
    content: "";
    width: 0;
    height: 0;
    margin: auto;
    position: absolute;
    left: 45px;
}

.baloom:before {
    border-width: 30px 0 0 40px;

    /* 上向きから下向きに変更 */
    border-style: solid;
    border-color: var(--color01) transparent transparent transparent;

    /* 矢印の色と向きを調整 */
    bottom: -30px;

    /* top から bottom に変更 */
}

.baloom:after {
    border-width: 30px 0 0 38px;

    /* 上向きから下向きに変更 */
    border-style: solid;
    border-color: #fff transparent transparent transparent;

    /* 矢印の色と向きを調整 */
    bottom: -27px;

    /* top から bottom に変更 */
    z-index: 10;
}


.trouble02 .ttl {
    width: 100%;
    text-align: center;
    -webkit-transform: translate(0, -50%);
    transform: translate(0, -50%);
    position: absolute;
    top: 0;
    left: 0;
}

.trouble04 .wrap {
    margin-top: 35%;
    margin-left: -10%;
    padding: 8% 4% 4%;
    position: relative;
}

.trouble04 .ttl {
    width: 100%;
    padding: 0 4%;
    -webkit-transform: translate(0, -50%);
    transform: translate(0, -50%);
    position: absolute;
    top: 0;
    left: 0;
}

@media (max-width: 1024px) {
    .icon05:after {
        width: 20px;
        height: 22px;
    }

    .top02.new .ttl {
        width: 80%;
        margin: auto;
        text-align: center;
        white-space: initial;
        -webkit-transform: translate(0%, -13px);
        transform: translate(0%, -13px);
        position: initial;
    }

    .top02 .ttl.__white {
        padding: 0 10px;
    }

    .trouble04 .wrap {
        margin-top: 0;
        margin-left: 0;
        padding: 0;
        position: relative;
    }

    .trouble04 .ttl {
        width: 100%;
        margin-bottom: 15px;
        padding: 0;
        -webkit-transform: none;
        transform: none;
        position: static;
    }
}

#top-slider .top-slider {
    margin-left: 0;
}

@media(max-width:599px) {

    .baloom:before,
    .baloom:after {
        left: 30px;
    }

    .baloom:before {
        border-width: 25px 0 0 30px;
        bottom: -26px;
    }

    .baloom:after {
        border-width: 25px 0 0 28px;
        bottom: -22px;
    }
}

/* ---------------------------
11voice
----------------------------- */
.pagenation ul {
    color: var(--color02);
}

.pagenation .current {
    color: var(--color03);
}

.pagenation li {
    margin-right: 15px;
}

.pagenation .prev {
    font-size: 80%;
}

.pagenation .prev a:before {
    content: "\f053";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
}

.pagenation .next {
    font-size: 80%;
}

.pagenation .next a:before {
    content: "\f054";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
}

.category-list-box li {
    letter-spacing: -.05em;
}

.category-list-box li:before {
    content: ">";
    margin-right: 3px;
    font-weight: 600;
    color: var(--color01);
}

.category-list-box li+li {
    margin-top: 7px;
}

/* ---------------------------
99construction_detail
----------------------------- */
#construction-title span:nth-of-type(1) {
    color: var(--color03);
}

.baloom-before {
    position: relative;
}

.baloom-before .before {
    width: 110px;
    height: 96px;
    display: inline-block;
    -webkit-filter: drop-shadow(0px 0px 4px black);
    filter: drop-shadow(0px 0px 4px black);
    position: absolute;
    top: 0;
    right: 0;
}

.baloom-before .before>span,
.baloom-after .after>span {
    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-weight: 600;
    color: #fff;
    position: relative;
}

.baloom-before .before>span::after {
    content: "";
    width: 100%;
    height: 100%;
    display: inline-block;
    background-image: url('/import/tenant_1/162.43.9.52/images/before.webp');
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    -webkit-filter: var(--filter01);
    filter: var(--filter01);
    position: absolute;
    top: 0;
    left: 0;
}

.baloom-after .after>span::after {
    content: "";
    width: 100%;
    height: 100%;
    display: inline-block;
    background-image: url('/import/tenant_1/162.43.9.52/images/after.webp');
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    -webkit-filter: var(--filter01);
    filter: var(--filter01);
    position: absolute;
    top: 0;
    left: 0;
}

.baloom-after {
    position: relative;
}

.baloom-after .after {
    width: 110px;
    height: 96px;
    display: inline-block;
    -webkit-filter: drop-shadow(0px 0px 4px black);
    filter: drop-shadow(0px 0px 4px black);
    position: absolute;
    bottom: 0;
    left: 0;
}

.baloom-before .before>span>span,
.baloom-after .after>span>span {
    position: relative;
    z-index: 1;
}

.down span {
    display: block;
    width: 0;
    height: 0;
    border-left: 30px solid transparent;
    border-right: 30px solid transparent;
    border-top: 30px solid var(--color01);
    margin: 30px auto 0 auto;
}

@media (max-width: 599px) {
    .down span {
        margin: 15px auto 0 auto;
    }

    .baloom-before {
        margin-top: 10px;
    }
}

/* ---------------------------
13blog
----------------------------- */
.cat01 {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
}

.cat01 span {
    display: inline-block;
    padding: 1px 5px;
    color: #fff;
    background-color: var(--color02);
    font-size: 12px;
    font-weight: bold;
    margin: 0 2px 2px 0;
}

.ニュース .cat01 span {
    background-color: var(--color03);
}

.ccat {
    color: var(--color02);
}

.ニュース .ccat {
    color: var(--color03);
}

.cat01.c-change span:first-child {
    background-color: var(--color03);
}

/* ---------------------------
99blog_detail
----------------------------- */
.detail-content h2 {
    margin-top: 50px;
    margin-bottom: 20px;
    padding: 2%;
    font-size: 22px;
    color: #fff;
    background-color: var(--color02);
    -webkit-box-shadow: 5px 5px 0 var(--color01);
    box-shadow: 5px 5px 0 var(--color01);
}

.detail-content h3 {
    margin-top: 50px;
    margin-bottom: 20px;
    padding: 2%;
    font-size: 22px;
    border-bottom: 3px solid var(--color01);
    background-color: var(--color02);
}

.detail-content h4 {
    margin-top: 50px;
    margin-bottom: 20px;
    padding: 2%;
    font-size: 20px;
    border-left: 3px solid var(--color01);
}

.detail-content iframe[src*="youtube"] {
    aspect-ratio: 16 / 9;
}

.detail-content ol {
    counter-reset: count 0;
}

.detail-content ol li {
    margin: 10px 0;
    padding-left: 20px;
    font-size: 16px;
    color: #000;
    background: initial;
    -webkit-box-shadow: none;
    box-shadow: none;
    position: relative;
}

.detail-content ol li::before {
    content: counter(count) ". ";
    display: inline-block;
    counter-increment: count 1;
    color: var(--color01);
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    position: absolute;
    top: 50%;
    left: 0;
}

.detail-content ul li {
    margin: 10px 0;
    padding-left: 20px;
    font-size: 16px;
    color: #000;
    background: initial;
    -webkit-box-shadow: none;
    box-shadow: none;
    position: relative;
}

.detail-content ul li::before {
    content: "";
    width: 15px;
    height: 15px;
    display: inline-block;
    border-radius: 50%;
    background: var(--color01);
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    position: absolute;
    top: 50%;
    left: 0;
}

.detail-content ol li marker {
    display: none;
}

@media (max-width: 599px) {

    .detail-content h2,
    .detail-content h3,
    .detail-content h4 {
        font-size: 18px;
    }
}

/* ---------------------------
19faq
----------------------------- */
.icon06 {
    position: relative;
}

.icon06:before {
    content: "";
    width: 213px;
    height: 190px;
    background-image: url('/import/tenant_1/162.43.9.52/images/icon06.webp');
    background-size: contain;
    background-repeat: no-repeat;
    background-position: bottom left;
    -webkit-transform: translate(0, -100%);
    transform: translate(0, -100%);
    position: absolute;
    top: 0;
    left: 5%;
}

.icon07 {
    position: relative;
}

.icon07:after {
    content: "";
    width: 180px;
    height: 186px;
    background-image: url('/import/tenant_1/162.43.9.52/images/icon07.webp');
    background-size: contain;
    background-repeat: no-repeat;
    background-position: bottom right;
    -webkit-transform: translate(0, -100%);
    transform: translate(0, -100%);
    position: absolute;
    top: 0;
    right: 5%;
}

.faq-block-list .icon06:before,
.faq-block-list .icon07:after {
    max-height: 160px;
}

@media (max-width: 1024px) {
    .icon06:before {
        width: 150px;
        height: 134px;
        left: 3%;
    }

    .icon07:after {
        width: 120px;
        height: 125px;
        right: 3%;
    }
}

@media (max-width: 599px) {

    .icon06,
    .icon07 {
        margin-top: 80px;
    }

    .icon06:before {
        width: 90px;
        height: 80px;
    }

    .icon07:after {
        width: 74px;
        height: 77px;
        right: 3%;
    }
}

/* ---------------------------
16contact
----------------------------- */
.contact01 {
    width: 476px;
    max-width: 100%;
    height: 282px;
    margin-left: auto;
    margin-right: auto;
    position: relative;
}

.contact01::after {
    content: "";
    width: 100%;
    height: 100%;
    display: inline-block;
    background-image: url('/import/tenant_1/162.43.9.52/images/baloom_blue.webp');
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    -webkit-filter: var(--filter02);
    filter: var(--filter02);
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
}

.icon08 {
    position: relative;
}

.icon08:before {
    content: "";
    width: 205px;
    height: 218px;
    background-image: url('/import/tenant_1/162.43.9.52/images/icon08.webp');
    background-size: contain;
    background-repeat: no-repeat;
    background-position: bottom center;
    -webkit-transform: translate(0, -100%);
    transform: translate(0, -100%);
    position: absolute;
    top: 0;
    left: calc(50% + 200px);
}

.contact-form dt {
    width: 35%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    align-items: center;
    -ms-flex-align: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding-right: 5%;
    font-weight: 600;
}

.contact-form .require {
    padding: 0 10px;
    color: #fff;
    background-color: var(--color03);
}

.contact-form dd {
    width: 10%;
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
}

.contact-form dl {
    padding: 3% 0;
    border-bottom: 2px solid #fff;
}

.contact-form input[type=text],
.contact-form textarea {
    width: 100%;
    padding: 12px;
    border: none;
    background-color: #fff;
}

.contact-form input.mini-box {
    width: 100px;
    margin-right: 10px;
    padding: 12px;
    border: none;
    background-color: #fff;
}

.contact-form {
    min-height: 150px;
}

.contact-form .item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    align-items: center;
    -ms-flex-align: center;
    margin: 5px 0;
}

.contact-form .item label {
    margin-left: 8px;
}

@media (max-width: 599px) {
    .contact-form dt {
        width: 100%;
        margin-bottom: 10px;
    }

    .contact-form dl {
        padding: 5% 0;
    }

    .icon08:before {
        width: 100px;
        height: 100px;
        left: auto;
        right: 0;
    }
}

#form-shape {
    position: relative;
}

#form-shape .uk-text-danger {
    width: 100%;
    position: absolute;
    bottom: -20px;
    left: 0;
}

#form-shape02 {
    position: relative;
}

#form-shape02 .uk-text-danger {
    width: 100%;
    position: absolute;
    bottom: -20px;
    left: 0;
}


.layout-list01 .item {
    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;
    padding: 30px 20px;
    border-top: 2px solid var(--color01);
}

.layout-list01 .item.up-d-none {
    display: none;
}

.layout-list01 .item:last-of-type {
    border-bottom: 2px solid var(--color01);
}

.layout-list01 .box a {
    display: block;
    padding: 30px;
    border: 2px solid var(--color06);
}

.layout-list01 dt {
    width: 200px;
    font-weight: bold;
    color: var(--color02);
    line-height: 1.8;
}

.layout-list01 dd {
    width: calc(100% - 200px);
    padding-left: 20px;
    line-height: 1.8;
}

.layout-list01 dl dd dl {
    padding: 10px 0;
    border-bottom: 2px solid var(--color01);
}

.layout-list01 dl dd dl:last-child {
    border-bottom: none;
}

@media (max-width: 599px) {
    .layout-list01 .item {
        padding: 10px 10px;
    }

    .layout-list01 dt,
    .layout-list01 dd {
        width: 100%;
    }

    .layout-list01 dd {
        font-size: 13px;
    }
}

.m-btn {
    width: 200px;
    height: 50px;
    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;
    overflow: hidden;
    overflow: hidden;
    margin: 30px auto 0;
    color: var(--color01);
    text-decoration: none;
    border: 2px solid var(--color01);
    border-radius: 1000px;
    background-color: #fff;
    -webkit-transition: ease 0.2s;
    transition: ease 0.2s;
    position: relative;
}

.m-btn::before {
    content: "";
    width: 100%;
    height: 100%;
    background: var(--color01);
    -webkit-transition: -webkit-transform 0.6s cubic-bezier(0.8, 0, 0.2, 1) 0s;
    transition: -webkit-transform 0.6s cubic-bezier(0.8, 0, 0.2, 1) 0s;
    transition: transform 0.6s cubic-bezier(0.8, 0, 0.2, 1) 0s;
    transition: transform 0.6s cubic-bezier(0.8, 0, 0.2, 1) 0s, -webkit-transform 0.6s cubic-bezier(0.8, 0, 0.2, 1) 0s;
    -webkit-transform: scale(0, 1);
    transform: scale(0, 1);
    -webkit-transform-origin: right top;
    transform-origin: right top;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 2;
}

.m-btn span {
    position: relative;
    z-index: 3;
}

.m-btn span:after {
    content: "＞";
    margin-left: 15px;
    -webkit-transition: 0.4s ease;
    transition: 0.4s ease;
    position: relative;
    z-index: 5;
}

.m-btn-box a:hover .m-btn span {
    color: #fff;
}

.m-btn-box a:hover .m-btn:before {
    -webkit-transform: scale(1, 1);
    transform: scale(1, 1);
    -webkit-transform-origin: left top;
    transform-origin: left top;
}

.cmn-recruit-01 .box {
    padding: 50px 80px 60px;
}

.cmn-recruit-01 dl>* {
    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 solid var(--color01);
}

.cmn-recruit-01 dl>*+* {
    margin-top: 20px;
}

.cmn-recruit-01 .tit {
    width: 30%;
    padding-right: 20px;
    font-weight: bold;
    color: var(--color01);
}

.cmn-recruit-01 .txt {
    width: 70%;
}

@media (max-width: 599px) {
    .cmn-recruit-01 .box {
        padding: 40px 10px 50px;
    }

    .cmn-recruit-01 dl>* {
        padding-left: 0;
        padding-right: 0;
    }

    .cmn-recruit-01 .tit {
        width: 40%;
        padding-right: 10px;
    }

    .cmn-recruit-01 .txt {
        width: 60%;
    }
}

#top-slider .slick-track {
    margin-left: 0;
}

.inner-rec-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    padding: 0.5em;
}

.inner-rec-list dt,
.inner-rec-list dd {
    margin: 0;
    padding: 0;
}

.inner-rec-list dt {
    width: 30%;
    padding-right: 1em;
    font-weight: bold;
    position: relative;
}

.inner-rec-list dt::after {
    content: "：";
    display: inline-block;
    position: absolute;
    top: 0;
    right: 0;
}

.inner-rec-list dd {
    width: 10%;
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
}

@media (max-width: 1024px) {
    .inner-rec-list dt {
        width: 35%;
    }
}

@media (max-width: 599px) {

    .inner-rec-list dt,
    .inner-rec-list dd {
        width: 100%;
    }

    .inner-rec-list dt::after {
        display: none;
    }

    .inner-rec-list dd {
        margin-top: 0.5em;
        padding-left: 1em;
        font-size: 90%;
    }
}



.for-sp {
    display: none;
}

@media(max-width:599px) {
    .for-pc {
        display: none;
    }

    .for-sp {
        display: block;
    }

    .txt {
        line-height: 1.6;
    }
}




.for-sp.sta {
    position: static;
}



.up-mb-1em {
    margin-bottom: 1em;
}

.top-mv-box .for-sp .mv-ttl {
    font-size: 24px;
}

.top-mv-box .tbox .for-sp .sub {
    font-size: 18px;
}

.for-sp.heading01 .en {
    font-size: 14px;
}

.for-sp.heading01 .ttl {
    font-size: 20px;
}

.under-mv-box .for-sp .ttl {
    font-size: 24px;
}

.line-2 {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;

    -webkit-line-clamp: 2;
}

.b-btn a {
    overflow: hidden;
    position: relative;
}

.b-btn a: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%;
}

@-webkit-keyframes shiny {
    0% {
        left: -20%;
    }

    10% {
        left: 120%;
    }

    100% {
        left: 120%;
    }
}

@keyframes shiny {
    0% {
        left: -20%;
    }

    10% {
        left: 120%;
    }

    100% {
        left: 120%;
    }
}

.flowitem {
    background-color: #fff;
    padding: 30px;
    border-radius: 20px;
    margin-bottom: 40px;
}

@media(max-width:1024px) {
    .pull-box {
        display: block !important;
    }

    .g-item.pull>a {
        pointer-events: auto;
    }

    .g-item.pull>a:after {
        display: none;
    }

    .flowitem {
        padding: 15px;
        border-radius: 10px;
        margin-bottom: 30px;
    }
}


@media (max-width: 599px) {
    .under-mv-box .tbox {
        width: 100%;
        -webkit-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%);
        top: 50%;
        bottom: auto;
        left: 50%;
    }

    .under-mv-box .for-sp .ttl {
        font-size: 24px;
        text-align: center;
    }

    .under-mv-box {
        max-height: 200px;
        overflow: hidden;
    }
}

.for-sp-logo {
    max-width: 375px;
    margin: 0 auto;
}

.faq-block {
    margin-bottom: 150px;
}

.faq-block-list .faq-block:last-child {
    margin-bottom: 0;
}

@media (max-width: 599px) {
    .faq-block {
        margin-bottom: 50px;
    }
}

.h-logo>a {
    display: block;
    max-width: 200px;
    margin: 0 auto;
}


.up-p-0\.5\%\@sp {
    padding: 0.5%;
}

.up-p-1\%\@sp {
    padding: 1%;
}

.up-p-1\.5\%\@sp {
    padding: 1.5%;
}

.up-p-2\%\@sp {
    padding: 2%;
}

.up-p-2\.5\%\@sp {
    padding: 2.5%;
}

.up-p-3\%\@sp {
    padding: 3%;
}

.up-p-3\.5\%\@sp {
    padding: 3.5%;
}

.up-p-4\%\@sp {
    padding: 4%;
}

.up-p-4\.5\%\@sp {
    padding: 4.5%;
}

.up-p-5\%\@sp {
    padding: 5%;
}

.up-p-5\.5\%\@sp {
    padding: 5.5%;
}

.up-p-6\%\@sp {
    padding: 6%;
}

.up-p-6\.5\%\@sp {
    padding: 6.5%;
}

.up-p-7\%\@sp {
    padding: 7%;
}

.up-p-7\.5\%\@sp {
    padding: 7.5%;
}

.up-p-8\%\@sp {
    padding: 8%;
}

.up-p-8\.5\%\@sp {
    padding: 8.5%;
}

.up-p-9\%\@sp {
    padding: 9%;
}

.up-p-9\.5\%\@sp {
    padding: 9.5%;
}

.up-p-10\%\@sp {
    padding: 10%;
}


.a-txt a {
    color: var(--color01);
    font-weight: bold;
    padding: 0 .2em;
    text-decoration: underline;
}

.kiji {
    display: inline-block;
    padding: 0px 2px;
    color: #fff;
    background-color: var(--color04);
    font-size: 12px;
    margin: 0;
    letter-spacing: 0;
    position: absolute;
    top: 10px;
    left: 10px;
    z-index: 2;
}

.contact-form dl .checkboxer label {
    display: inline-block;
    margin: 0.5em 0;
    margin-right: 15px;
    padding: 0 10px 0 24px;
    position: relative;
}

.contact-form dl .checkboxer label::before {
    content: "";
    width: 20px;
    height: 20px;
    display: block;
    border: 2px solid var(--color12);
    border-radius: 3px;
    background-color: white;
    position: absolute;
    top: 3px;
    left: 0;
}

.contact-form dl .checkboxer label:hover {
    text-decoration: underline;
    cursor: pointer;
}

.contact-form dl .checkboxer input {
    display: none;
}

.contact-form dl .checkboxer input:checked+label {
    text-decoration: underline;
}

.contact-form dl .checkboxer input:checked+label::after {
    content: "\f00c";
    width: 0;
    height: 0;
    display: inline-block;
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    font-size: 20px;
    color: var(--color03);
    line-height: 1;
    background-color: transparent;
    position: absolute;
    top: 5px;
    left: 2px;
}

.trouble01 .ttl span {
    background: linear-gradient(transparent 60%, var(--color09) 60%);
}

@media(max-width:599px) {

    .btn-cmn01 button:before,
    .btn-cmn01 a:before,
    .btn-cmn01 .a:before {
        display: none;
    }

    .btn-cmn01 button:hover span,
    .btn-cmn01 a:hover span {
        color: inherit;
    }

    .up-col-1\@sp>li:last-child {
        padding-bottom: 0;
    }

    .trouble01 .box {
        padding-bottom: 15px;
        border-bottom: 1px solid var(--color10)
    }
}

.youtube-box {
    display: block;
    max-width: 800px;
    margin: 0 auto;
    position: relative;
}

.youtube-box::after {
    content: "";
    display: block;
    width: 100%;
    padding-top: 56.2%;
}

.youtube-box iframe {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 2;
}

.post-content h2 {
    display: block;
    font-size: 22px;
    font-weight: bold;
    border-bottom: 3px solid var(--color01);
    line-height: 1.4em;
    margin-bottom: 15px;
    margin-top: 30px;
}

.post-content h3 {
    display: block;
    font-size: 20px;
    font-weight: bold;
    line-height: 1.4em;
    margin-bottom: 5px;
    margin-top: 20px;
    color: var(--color01);
}

.post-content .str {
    display: block;
    font-size: 18px;
    font-weight: bold;
    line-height: 1.4em;
    margin-bottom: 3px;
    margin-top: 15px;
    color: #777;
    border-bottom: 1px solid #777;
}

.scrolling-box {
    height: 300px;
    overflow-y: scroll;
    border: 3px solid var(--color01);
}

.line-a-box {
    background-color: #00B900;
}

.insta-a-box {
    background: linear-gradient(135deg, #427eff 0%, #f13f79 70%) no-repeat;
}

.line-a-box .contact-btn::before {
    display: none;
}

.insta-a-box .contact-btn::before {
    display: none;
}

.line-a-box .contact-btn img {
    display: inline-block;
    width: 35px;
    height: 35px;
    object-fit: contain;
    object-position: center;
    margin-right: 8px;
}

.insta-a-box .contact-btn img {
    display: inline-block;
    width: 35px;
    height: 35px;
    object-fit: contain;
    object-position: center;
    margin-right: 8px;
}

.h1-dummy {
    font-size: 12px;
    padding-left: 10px;
    padding-right: 42px;
}

@media(max-width:599px) {

    .blogitem .cat span,
    .date-cat-box .cat span {
        font-size: 12px;
    }

}

.date-cat-box>.date {
    width: 100%;
    margin-right: 0;
}

.foot01 li>a {
    height: 100%;
}

.top05 .date-cat-box>.date {
    text-align: center;
}

.top05 .date-cat-box .cat {
    justify-content: center;
}

.d-cat .date {
    width: 100%;
}

.d-cat .cat {
    width: 100%;
}

.ニュース .detail-content ul li::before {
    background: var(--color03);
}

.ニュース .detail-content ol li::before {
    color: var(--color03);
}

.ニュース .detail-content h2 {
    background-color: var(--color03);
    -webkit-box-shadow: 5px 5px 0 #ccc;
    box-shadow: 5px 5px 0 #ccc;
}

.ニュース .detail-content h3 {
    border-bottom: 3px solid #ccc;
    background-color: var(--color03);
}

.ニュース .detail-content h4 {
    border-left: 3px solid var(--color03);
}

[data-element-id] .fead-text {
    opacity: 1;
}

[data-element-id] .fead-text .str {
    opacity: 1;
}

[data-element-id] .fead-cover:before {
    content: none;
}

[data-element-id] .fead-order-up {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
}

[data-element-id] .sp-fix-box {
    width: 600px;
    display: block;
    position: static;
}

[data-element-id].sp-fix-box li.mini{
  width:300px;
}

[data-element-id].sp-fix-box .tel a:before{
  width:50px;
  display:inline-block;
}

[data-element-id].sp-fix-box li.mini .up-hide {
    display:inline-block;
    width:auto;
}

[data-element-id].pc-none,
[data-element-id].sp-only {
    display: block;
    border: 1px solid #218055;
    position: relative;
}

[data-element-id].pc-none {
    border: 1px solid #218055;
}

[data-element-id].g-list {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-bottom: 40px;
}

[data-element-id].pc-none:after,
[data-element-id].sp-only:after {
    content: "スマホ用";
    width: 100%;
    -webkit-box-sizing: content-box;
    box-sizing: content-box;
    font-weight: bold;
    font-size: 12px;
    color: #fff;
    text-align: center;
    border: 1px solid #218055;
    background: #218055;
    -webkit-transform: translate(-50%, -100%);
    transform: translate(-50%, -100%);
    position: absolute;
    top: 0;
    left: 50%;
}

[data-element-id].accordionbox {
    visibility: visible;
    opacity: 1;
    -webkit-transform: none;
    transform: none;
    position: static;
}

[data-element-id].gnavinn {
    padding-top: 30px;
}

[data-element-id] .faq-list .answer {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

[data-element-id].top-slider>div {
    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].top-slider li {
    width: 30%;
}

[data-element-id] .header-fix {
    position: absolute;
    top:400px;
}

[data-element-id].flow02 .left-cmn {
    width: 100%;
}

[data-element-id].flow02 .sp-only {
    width: 100%;
}

[data-element-id] .up-d-none {
    display: block;
    border: solid 4px black;
    position: relative;
}

[data-element-id] .up-d-none:after {
    content: "モバイル用";
    display: block;
    padding: 5px;
    font-weight: 700;
    font-size: 12px;
    color: #fff;
    text-align: center;
    background: black;
}

[data-element-id] .up-sp-text {
    width: 100%;
    max-width: 375px;
    margin: auto;
}

[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].pic .title01 .for-sp::before {
    width: 130%;
    -ms-writing-mode: lr-tb;
    -webkit-writing-mode: horizontal-tb;
    writing-mode: horizontal-tb;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    top: auto;
    bottom: 100%;
    left: 50%;
}

[data-element-id].top02 {
    padding-top: 90px;
}

[data-element-id].top-slider li:nth-child(4),
[data-element-id].top-slider li:nth-child(5),
[data-element-id].top-slider li:nth-child(6),
[data-element-id].top-slider li:nth-child(7),
[data-element-id].top-slider li:nth-child(8),
[data-element-id].top-slider li:nth-child(9),
[data-element-id].top-slider li:nth-child(10) {
    display: none;
}

.tight {
    letter-spacing: -.05em
}

.white-out img {
    filter: brightness(100)
}

.f-icon {
    transform: translateY(5px);
}

.fst-txt-01 {
    width: calc(100% - 120px);
    padding-left: 30px;
}

.breadcrumbs {
    padding: 15px 0;
}

.old-c {
    max-width: 270px;
}

.old-c2 {
    max-width: 230px;
}

.bt-sd {
    text-shadow: 1px 1px 0 #fff,
        -1px 1px 0 #fff,
        1px -1px 0 #fff,
        -1px -1px 0 #fff;
}

.bigblock .area:first-child {
    padding-top: 0;
}


.bigblock .area {
    padding: 40px 0;
}

.bigblock .area:last-child {
    padding-bottom: 0;
}

@media(max-width:1024px) {
    .old-c {
        max-width: 100%;
    }

    .old-c2 {
        max-width: 100%;
    }
}

@media(max-width:599px) {
    .fst-txt-01 {
        width: 100%;
        padding-left: 0px;
        padding-bottom: 70px;
    }
    
    .tight2{
      letter-spacing:-.08em;
}


}

.sp-fix-box li.mini .up-hide{
  display:none;
}

.sp-fix-box .tel a:before{
      font-size: 28px;
    width: 100%;
    text-align: center;
    display: block;
    margin: 0;
    height: 100%;
    line-height: 45px;
}

.sp-fix-box .LINE a{
  background-color:#00B900;
  letter-spacing:-.05em;
}

.sp-fix-box .LINE a img{
  width:20px;
  margin-right:5px;
}

.shine{
  position:relative;
  overflow: hidden;
}

.shine>a::after{
  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;
  }
}

[data-element-id].trouble02 .ttl{
transform: translate(0, 0%);
position:relative;
top:0;
left:0;
  
}





.top05 .category-list-box ul li:nth-of-type(4){
    display: list-item;
}











.yellow{
  color:#FFE500;
}

.contact-page footer .inner.area{
  display:none;
}

.block-tel{
  display:block;
  line-height:1em;
  font-size:12px;
  letter-spacing:-.05em;
  color:red;
}

.sp-fix-box li.mini .block-tel-mk2{
  display:inline-block;
  line-height:1em;
  font-size:12px;
  letter-spacing:-.05em;
  color:red;
  background-color:#fff;
  padding:3px 8px;
  border-radius:10px;
  position:absolute;
  bottom:120%;
  right:0;
  width:190px;
  text-align: center;
}

.sp-fix-box li.mini.up-pos-rel::after{
  content: "";
    display: inline-block;
    width: 0;
    height: 0;
    border-left: 5px solid transparent;
    border-right: 5px solid transparent;
    border-top: 10px solid #fff;
    position: absolute;
    top: -10px;
    right: 15px;
}
