/* # root1 START # */
/* :root {
    --color01: #fff;
    --color02: #0075c1;
    --color03: #e4eff7;
    --color04: #e60012;
    --bg01: url('/import/tenant_1/162.43.17.165/images/ttl-back01.webp');
    --bg08: url('/import/tenant_1/162.43.17.165/images/mail01.webp');
    --filter: invert(33%) sepia(63%) saturate(6945%) hue-rotate(189deg) brightness(94%) contrast(101%);
} */
/* # root1 END # */

/* # root2 START # */
/* :root {
    --color01: #fff;
    --color02: #5a9b67;
    --color03: #ddd;
    --color04: #6b4c37;
    --bg01: url('/import/tenant_1/162.43.17.165/images/ttl-back01-green.webp');
    --bg08: url('/import/tenant_1/162.43.17.165/images/mail01.webp');
    --filter: invert(57%) sepia(21%) saturate(752%) hue-rotate(80deg) brightness(92%) contrast(91%);
} */
/* # root2 END # */

/* # root3 START # */
:root {
    --color01: #fff;
    --color02: #38a5ff;
    --color03: #fff;
    --color04: #173a7c;
    --bg01: url('/import/tenant_1/162.43.17.165/images/ttl-back01-mizuiro.webp');
    --bg08: url('/import/tenant_1/162.43.17.165/images/mail01.webp');
    --filter: invert(52%) sepia(77%) saturate(631%) hue-rotate(178deg) brightness(97%) contrast(112%);
}
/* # root3 END # */

/* # root4 START # */
/* :root {
    --color01: #fff;
    --color02: #fff;
    --color03: #fff;
    --color04: #fff;
} */
/* # root4 END # */

/* # root5 START # */
/* :root {
    --color01: #fff;
    --color02: #fff;
    --color03: #fff;
    --color04: #fff;
} */
/* # root5 END # */

/*フォントオーサムをcssで読み込み*/
@import url("https://use.fontawesome.com/releases/v6.5.2/css/all.css");

/*Google fonts*/
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@300;400;500;700&display=swap");


/* ========== 基本設定 ========== */
html {
    font-family: "ヒラギノ丸ゴ Pro W4", "ヒラギノ丸ゴ Pro",
        "Hiragino Maru Gothic Pro", "ヒラギノ角ゴ Pro W3",
        "Hiragino Kaku Gothic Pro", "HG丸ゴシックM-PRO", "HGMaruGothicMPRO";
    font-family: "Noto Sans JP", sans-serif;
    font-weight: normal;
    font-size: 16px;
    color: #333;
    line-height: 1.5;
    word-break: break-word;
    -webkit-text-size-adjust: 100%;
    min-width: 410px;
    font-weight: 600;
}

.main>* {
    position: relative;
}

.up-ofi {
    height: 100%;
}

.explanation {
    margin-bottom: 35px;
    font-size: 20px;
    line-height: 2;
    letter-spacing: 3px;
    text-align: center;
}

.explanation.explanation-small {
    font-size: 16px;
}

@media (max-width: 1024px) {
    .explanation {
        font-size: 18px;
    }
}

@media (max-width: 599px) {
    .explanation {
        font-size: 16px;
        text-align: left;
    }
}

/*タブ切り替えcss*/
.tab-btn {
    font-size: 20px;
}

.tab-btn li {
    width: 300px;
    max-width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    align-items: center;
    -ms-flex-align: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    overflow: hidden;
    padding: 10px 0;
    font-size: 15px;
    color: var(--color01);
    line-height: 1.1;
    text-align: center;
    border: 2px solid;
    border-radius: 40px;
    background: var(--color01);
    cursor: pointer;
    -webkit-transition: 0.3s;
    transition: 0.3s;
    position: relative;
    z-index: 0;
}

.tab-btn li:before {
    content: attr(data-hover);
    width: 100%;
    height: 100%;
    display: inline-block;
    padding: 15px 50px;
    font-weight: bold;
    font-size: 16px;
    -webkit-transition: -webkit-transform 0.8s;
    -webkit-transition: -webkit-transform 1s;
    transition: -webkit-transform 0.8s;
    transition: -webkit-transform 1s;
    transition: transform 1s;
    transition: transform 1s, -webkit-transform 1s;
    -webkit-transform: translateX(-100%);
    transform: translateX(-100%);
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
}

.tab-btn li:nth-of-type(1):before {
    background: var(--color02);
}

.tab-btn li:nth-of-type(2):before {
    background: var(--color04);
}

.tab-btn li.active:before {
    -webkit-transform: translateX(0%);
    transform: translateX(0%);
}

.tab-btn li+li {
    margin-left: 150px;
}

.tab-btn li.active:nth-of-type(1) {
    color: var(--color01);
    border-color: var(--color02);
    background: var(--color02);
}

.tab-btn li.active:nth-of-type(2) {
    color: var(--color01);
    border-color: var(--color04);
    background: var(--color04);
}

.tab-btn li:nth-of-type(1) {
    color: var(--color02);
}

.tab-btn li:nth-of-type(2) {
    color: var(--color04);
}

.tab-item {
    height: 0;
    visibility: hidden;
    opacity: 0;
    -webkit-transition: 0.3s;
    transition: 0.3s;
}

.tab-item.active {
    height: 100%;
    visibility: visible;
    opacity: 1;
    -webkit-transition: 0.3s;
    transition: 0.3s;
}

@media (max-width: 1024px) {
    .tab-btn li+li {
        margin-left: 30px;
    }
}

@media (max-width: 599px) {
    .tab-btn li {
        width: 80%;
        max-width: 300px;
        height: 55px;
    }

    .tab-btn li+li {
        margin-top: 20px;
        margin-left: 0;
    }
}

/*マップ*/
/*mapの大きさをpadding-topで決める*/
.map01 {
    padding-top: 50%;
}

@media (max-width: 599px) {
    .map01 {
        padding-top: 80%;
    }
}

/* フィード形 */
[class*="fead-diagonal-"] {
    opacity: 0;
}

[class*="fead-diagonal-"].mv {
    opacity: 1;
    -webkit-transition: 0.5s ease-out;
    transition: 0.5s ease-out;
    -webkit-transform: translate(0, 0);
    transform: translate(0, 0);
}

[class*="fead-"].mv {
    -webkit-transition: 1s ease-out;
    transition: 1s ease-out;
}

.fead-diagonal-left {
    -webkit-transform: translate(50px, 50px);
    transform: translate(50px, 50px);
}

.fead-diagonal-right {
    -webkit-transform: translate(-50px, 50px);
    transform: translate(-50px, 50px);
}

.fead-line:before,
.fead-line-in>*:before {
    width: 0 !important;
}

.fead-line.mv:before,
.fead-line-in.mv>*:before {
    width: 100% !important;
    -webkit-transition: 1.5s;
    transition: 1.5s;
}

/* 共通コンテンツ間隔 */
[class*="section-m"],
[class*="section-p"] {
    --section-xlarge: 120px;
    --section-large: 100px;
    --section-medium: 80px;
    --section-small: 60px;
    --section-xsmall: 40px;
}

.section-my-xlarge {
    margin-top: var(--section-xlarge);
    margin-bottom: var(--section-xlarge);
}

.section-mt-xlarge {
    margin-top: var(--section-xlarge);
}

.section-mb-xlarge {
    margin-bottom: var(--section-xlarge);
}

.section-my-large {
    margin-top: var(--section-large);
    margin-bottom: var(--section-large);
}

.section-mt-large {
    margin-top: var(--section-large);
}

.section-mb-large {
    margin-bottom: var(--section-large);
}

.section-my-medium {
    margin-top: var(--section-medium);
    margin-bottom: var(--section-medium);
}

.section-mt-medium {
    margin-top: var(--section-medium);
}

.section-mb-medium {
    margin-bottom: var(--section-medium);
}

.section-my-small {
    margin-top: var(--section-small);
    margin-bottom: var(--section-small);
}

.section-mt-small {
    margin-top: var(--section-small);
}

.section-mb-small {
    margin-bottom: var(--section-small);
}

.section-my-xsmall {
    margin-top: var(--section-xsmall);
    margin-bottom: var(--section-xsmall);
}

.section-mt-xsmall {
    margin-top: var(--section-xsmall);
}

.section-mb-xsmall {
    margin-bottom: var(--section-xsmall);
}

@media (max-width: 1024px) {
    .section-my-xlarge {
        margin-top: calc(var(--section-xlarge) * 0.8);
        margin-bottom: calc(var(--section-xlarge) * 0.8);
    }

    .section-mt-xlarge {
        margin-top: calc(var(--section-xlarge) * 0.8);
    }

    .section-mb-xlarge {
        margin-bottom: calc(var(--section-xlarge) * 0.8);
    }

    .section-my-large {
        margin-top: calc(var(--section-large) * 0.8);
        margin-bottom: calc(var(--section-large) * 0.8);
    }

    .section-mt-large {
        margin-top: calc(var(--section-large) * 0.8);
    }

    .section-mb-large {
        margin-bottom: calc(var(--section-large) * 0.8);
    }

    .section-my-medium {
        margin-top: calc(var(--section-medium) * 0.8);
        margin-bottom: calc(var(--section-medium) * 0.8);
    }

    .section-mt-medium {
        margin-top: calc(var(--section-medium) * 0.8);
    }

    .section-mb-medium {
        margin-bottom: calc(var(--section-medium) * 0.8);
    }

    .section-my-small {
        margin-top: calc(var(--section-small) * 0.8);
        margin-bottom: calc(var(--section-small) * 0.8);
    }

    .section-mt-small {
        margin-top: calc(var(--section-small) * 0.8);
    }

    .section-mb-small {
        margin-bottom: calc(var(--section-small) * 0.8);
    }

    .section-my-xsmall {
        margin-top: calc(var(--section-xsmall) * 0.8);
        margin-bottom: calc(var(--section-xsmall) * 0.8);
    }

    .section-mt-xsmall {
        margin-top: calc(var(--section-xsmall) * 0.8);
    }

    .section-mb-xsmall {
        margin-bottom: calc(var(--section-xsmall) * 0.8);
    }
}

@media (max-width: 599px) {
    .section-my-xlarge {
        margin-top: calc(var(--section-xlarge) * 0.6);
        margin-bottom: calc(var(--section-xlarge) * 0.6);
    }

    .section-mt-xlarge {
        margin-top: calc(var(--section-xlarge) * 0.6);
    }

    .section-mb-xlarge {
        margin-bottom: calc(var(--section-xlarge) * 0.6);
    }

    .section-my-large {
        margin-top: calc(var(--section-large) * 0.6);
        margin-bottom: calc(var(--section-large) * 0.6);
    }

    .section-mt-large {
        margin-top: calc(var(--section-large) * 0.6);
    }

    .section-mb-large {
        margin-bottom: calc(var(--section-large) * 0.6);
    }

    .section-my-medium {
        margin-top: calc(var(--section-medium) * 0.6);
        margin-bottom: calc(var(--section-medium) * 0.6);
    }

    .section-mt-medium {
        margin-top: calc(var(--section-medium) * 0.6);
    }

    .section-mb-medium {
        margin-bottom: calc(var(--section-medium) * 0.6);
    }

    .section-my-small {
        margin-top: calc(var(--section-small) * 0.6);
        margin-bottom: calc(var(--section-small) * 0.6);
    }

    .section-mt-small {
        margin-top: calc(var(--section-small) * 0.6);
    }

    .section-mb-small {
        margin-bottom: calc(var(--section-small) * 0.6);
    }

    .section-my-xsmall {
        margin-top: calc(var(--section-xsmall) * 0.6);
        margin-bottom: calc(var(--section-xsmall) * 0.6);
    }

    .section-mt-xsmall {
        margin-top: calc(var(--section-xsmall) * 0.6);
    }

    .section-mb-xsmall {
        margin-bottom: calc(var(--section-xsmall) * 0.6);
    }
}

.section-py-xlarge {
    padding-top: var(--section-xlarge);
    padding-bottom: var(--section-xlarge);
}

.section-pt-xlarge {
    padding-top: var(--section-xlarge);
}

.section-pb-xlarge {
    padding-bottom: var(--section-xlarge);
}

.section-py-large {
    padding-top: var(--section-large);
    padding-bottom: var(--section-large);
}

.section-pt-large {
    padding-top: var(--section-large);
}

.section-pb-large {
    padding-bottom: var(--section-large);
}

.section-py-medium {
    padding-top: var(--section-medium);
    padding-bottom: var(--section-medium);
}

.section-pt-medium {
    padding-top: var(--section-medium);
}

.section-pb-medium {
    padding-bottom: var(--section-medium);
}

.section-py-small {
    padding-top: var(--section-small);
    padding-bottom: var(--section-small);
}

.section-pt-small {
    padding-top: var(--section-small);
}

.section-pb-small {
    padding-bottom: var(--section-small);
}

.section-py-xsmall {
    padding-top: var(--section-xsmall);
    padding-bottom: var(--section-xsmall);
}

.section-pt-xsmall {
    padding-top: var(--section-xsmall);
}

.section-pb-xsmall {
    padding-bottom: var(--section-xsmall);
}

@media (max-width: 1024px) {
    .section-py-xlarge {
        padding-top: calc(var(--section-xlarge) * 0.8);
        padding-bottom: calc(var(--section-xlarge) * 0.8);
    }

    .section-pt-xlarge {
        padding-top: calc(var(--section-xlarge) * 0.8);
    }

    .section-pb-xlarge {
        padding-bottom: calc(var(--section-xlarge) * 0.8);
    }

    .section-py-large {
        padding-top: calc(var(--section-large) * 0.8);
        padding-bottom: calc(var(--section-large) * 0.8);
    }

    .section-pt-large {
        padding-top: calc(var(--section-large) * 0.8);
    }

    .section-pb-large {
        padding-bottom: calc(var(--section-large) * 0.8);
    }

    .section-py-medium {
        padding-top: calc(var(--section-medium) * 0.8);
        padding-bottom: calc(var(--section-medium) * 0.8);
    }

    .section-pt-medium {
        padding-top: calc(var(--section-medium) * 0.8);
    }

    .section-pb-medium {
        padding-bottom: calc(var(--section-medium) * 0.8);
    }

    .section-py-small {
        padding-top: calc(var(--section-small) * 0.8);
        padding-bottom: calc(var(--section-small) * 0.8);
    }

    .section-pt-small {
        padding-top: calc(var(--section-small) * 0.8);
    }

    .section-pb-small {
        padding-bottom: calc(var(--section-small) * 0.8);
    }

    .section-py-xsmall {
        padding-top: calc(var(--section-xsmall) * 0.8);
        padding-bottom: calc(var(--section-xsmall) * 0.8);
    }

    .section-pt-xsmall {
        padding-top: calc(var(--section-xsmall) * 0.8);
    }

    .section-pb-xsmall {
        padding-bottom: calc(var(--section-xsmall) * 0.8);
    }
}

@media (max-width: 599px) {
    .section-py-xlarge {
        padding-top: calc(var(--section-xlarge) * 0.6);
        padding-bottom: calc(var(--section-xlarge) * 0.6);
    }

    .section-pt-xlarge {
        padding-top: calc(var(--section-xlarge) * 0.6);
    }

    .section-pb-xlarge {
        padding-bottom: calc(var(--section-xlarge) * 0.6);
    }

    .section-py-large {
        padding-top: calc(var(--section-large) * 0.6);
        padding-bottom: calc(var(--section-large) * 0.6);
    }

    .section-pt-large {
        padding-top: calc(var(--section-large) * 0.6);
    }

    .section-pb-large {
        padding-bottom: calc(var(--section-large) * 0.6);
    }

    .section-py-medium {
        padding-top: calc(var(--section-medium) * 0.6);
        padding-bottom: calc(var(--section-medium) * 0.6);
    }

    .section-pt-medium {
        padding-top: calc(var(--section-medium) * 0.6);
    }

    .section-pb-medium {
        padding-bottom: calc(var(--section-medium) * 0.6);
    }

    .section-py-small {
        padding-top: calc(var(--section-small) * 0.6);
        padding-bottom: calc(var(--section-small) * 0.6);
    }

    .section-pt-small {
        padding-top: calc(var(--section-small) * 0.6);
    }

    .section-pb-small {
        padding-bottom: calc(var(--section-small) * 0.6);
    }

    .section-py-xsmall {
        padding-top: calc(var(--section-xsmall) * 0.6);
        padding-bottom: calc(var(--section-xsmall) * 0.6);
    }

    .section-pt-xsmall {
        padding-top: calc(var(--section-xsmall) * 0.6);
    }

    .section-pb-xsmall {
        padding-bottom: calc(var(--section-xsmall) * 0.6);
    }
}

/* ========== 共通 ========== */
/*固定ボタン*/
/*TOPへ戻るボタン*/
.up-btn {
    position: fixed;
    bottom: 4%;
    right: 4%;
    z-index: 9;
}

.up-btn a {
    width: 43px;
    height: 43px;
    display: block;
    font-size: 20px;
    color: var(--color01);
    line-height: 43px;
    text-align: center;
    border-radius: 50%;
    background: var(--color02);
}

.up-btn a:before {
    content: "\f077";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
}

@media (max-width: 1024px) {
    .up-btn {
        bottom: 2%;
        right: 2%;
    }
}

@media (max-width: 599px) {
    .up-btn {
        bottom: 13%;
        right: 2%;
    }
}

/*お問い合わせ*/
.fix-btn {
    position: fixed;
    bottom: 14%;
    right: 5%;
    z-index: 9;
}

.fix-btn a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    align-items: center;
    -ms-flex-align: center;
    padding: 20px 30px;
    font-size: 18px;
    color: var(--color02);
    position: relative;
    z-index: 0;
}

.fix-btn .LINE-btn a{
  color:#06C755;
}

.fix-btn a::before {
    content: "";
    width: 22px;
    height: 16px;
    display: inline-block;
    margin-right: 5px;
    background-image: var(--bg08);
    background-size: cover;
}

.fix-btn .LINE-btn a::before {
    content: "";
    width: 22px;
    height: 22px;
    display: inline-block;
    margin-right: 5px;
    background-image: url(/upload/tenant_1/line.webp);
    background-size: cover;
}

.fix-btn a::after {
    content: "";
    width: 100%;
    height: 100%;
    background-image: url('/import/tenant_1/162.43.17.165/images/catch01.webp');
    background-size: 100% 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
}

.fix-btn.tel a::before {
    height: 20px;
    background-image: url('/import/tenant_1/162.43.17.165/images/tel02.webp');
}

/*ABテスト*/
.fix-btn .b-test a {
    position:relative;
    overflow:hidden;
}

.fix-btn .b-test a>span {
    content: "";
    width: 60px;
    height: 120%;
    background-color: #fff;
    opacity: .5;
    -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: -40%;
    }

    20% {
        left: 130%;
    }

    100% {
        left: 130%;
    }
}

@keyframes shiny {
    0% {
        left: -40%;
    }

    20% {
        left: 130%;
    }

    100% {
        left: 130%;
    }
}

.fix-btn .b-test a:after {
    background-image: var(--bg01);
}

@media (max-width: 1024px) {
    .fix-btn {
        bottom: 7%;
        right: 3%;
    }
}

@media (max-width: 599px) {
    .fix-btn {
        width: 50%;
        bottom: 0;
        left: 0;
        right: auto;
    }

    .fix-btn+.fix-btn {
        left: auto;
        right: 0;
    }
    
    .fix-btn .LINE-btn{
      width: 200%;
    margin-left: -100%;
    }

    .fix-btn a {
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        padding: 10px 10px;
    }
}

/*文字色*/
.color-red {
    color: var(--color04);
}

.color-blue {
    color: var(--color02);
}

/*背景*/
.back-cmn01 {
    background-image: url('/import/tenant_1/162.43.17.165/images/back-cmn01.webp');
}

.back-cmn02 {
    background-image: url('/import/tenant_1/162.43.17.165/images/back-cmn02.webp');
}

.back-cmn03 {
    background-image: url('/import/tenant_1/162.43.17.165/images/back-cmn02.webp');
    background-color: #fdf8f3;

    background-blend-mode: multiply;
}

.back-cmn04 {
    background: var(--color01);
}

.back-cmn02-triangle:before {
    content: "";
    width: 100%;
    height: 81px;
    display: block;
    background-image: url('/import/tenant_1/162.43.17.165/images/back-cmn02.webp');
    position: absolute;
    bottom: calc(100% - 1px);
    left: 0;

    -webkit-clip-path: polygon(0% 100%, 50% 0%, 50% 0%, 100% 100%);
    clip-path: polygon(0% 100%, 50% 0%, 50% 0%, 100% 100%);
}

/*装飾*/
.deco01 {
    max-width: 250px;
    position: absolute;
    top: -1%;
    right: 5%;
    z-index: 1;
}

.deco02 {
    max-width: 186px;
    position: absolute;
    bottom: -1%;
    left: 5%;
    z-index: 1;
}

.deco03 {
    max-width: 365px;
    position: absolute;
    top: 0;
    right: 0;
    z-index: 1;
}

.deco04 {
    max-width: 328px;
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: 1;
}

.deco05 {
    max-width: 186px;
    position: absolute;
    bottom: 5px;
    right: 5%;
    z-index: 1;
}

[class*="txt-deco01"] {
    display: inline-block;
    position: relative;
    z-index: 0;
}

[class*="txt-deco01"] .border {
    width: 1px;
    height: 12px;
    border-radius: 20px;
    background: var(--color04);
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    position: absolute;
    bottom: calc(100% + 2px);
    left: 50%;
}

[class*="txt-deco01"].txt-deco-big .border {
    width: 3px;
    height: 16px;
}

[class*="txt-deco01"] .border:before {
    content: "";
    width: 1px;
    height: 90%;
    border-radius: 20px;
    -webkit-transform: rotate(-25deg);
    transform: rotate(-25deg);
    -webkit-transform-origin: bottom;
    transform-origin: bottom;
    position: absolute;
    bottom: 0;
    left: -5px;
    z-index: 0;
}

[class*="txt-deco01"].txt-deco-big .border:before {
    width: 3px;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    left: -10px;
}

[class*="txt-deco01"] .border:after {
    content: "";
    width: 1px;
    height: 90%;
    border-radius: 20px;
    -webkit-transform: rotate(25deg);
    transform: rotate(25deg);
    -webkit-transform-origin: bottom;
    transform-origin: bottom;
    position: absolute;
    bottom: 0;
    right: -5px;
    z-index: 0;
}

[class*="txt-deco01"].txt-deco-big .border:after {
    width: 3px;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    right: -10px;
}

.txt-deco01-red .border,
.txt-deco01-red .border:after,
.txt-deco01-red .border:before {
    background: var(--color04);
}

.txt-deco01-blue .border,
.txt-deco01-blue .border:after,
.txt-deco01-blue .border:before {
    background: var(--color02);
}

@media (max-width: 1024px) {
    .deco01 {
        max-width: 150px;
    }

    .deco02 {
        max-width: 130px;
    }

    .deco03 {
        max-width: 150px;
    }

    .deco04 {
        max-width: 150px;
    }
}

@media (max-width: 599px) {
    [class*="deco0"] {
        max-width: 100px;
    }

    .deco01 {
        margin-left: auto;
    }

    .deco03 {
        margin-left: auto;
        margin-top:-30%;
        z-index:0;
        display:none;
    }

    .deco05 {
        margin-left: auto;
    }
}

/*見出し*/
.ttl-cmn01 {
    margin-bottom: 35px;
}

.ttl-cmn01 .txt {
    display: inline-block;
    padding: 0 5px;
    font-size: 40px;
    position: relative;
    z-index: 0;
}

.ttl-cmn01 .txt:before {
    content: "";
    width: 100%;
    height: 60%;
    background-image: var(--bg01);
    background-size: 100% 100%;
    position: absolute;
    bottom: -1%;
    left: 0;
    z-index: -1;
}

.ttl-cmn02 {
    margin-bottom: 40px;
    background: var(--color03);
    position: relative;
    z-index: 0;
}

.ttl-cmn02 .txt {
    padding: 15px 20px 15px 100px;
    font-size: 20px;
    color: var(--color02);
}

.ttl-cmn02 .num-box {
    width: 83px;
    height: 83px;
    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;
    color: var(--color01);
    line-height: 1;
    border-radius: 50%;
    background-color: var(--color04);
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    position: absolute;
    top: 50%;
    left: 5px;
    z-index: 0;
}

.ttl-cmn02 .num-box:before {
    content: "";
    width: 90%;
    height: 90%;
    border: 2px solid #fff;
    border-radius: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    position: absolute;
    top: 50%;
    left: 50%;
    z-index: 0;
}

.ttl-cmn02 .num-box .point {
    font-size: 14px;
}

.ttl-cmn02 .num-box .num {
    display: block;
    margin-top: 5px;
    font-weight: 500;
    font-size: 24px;
}

.ttl-cmn02 .num-box .border {
    width: 3px;
    height: 16px;
    border-radius: 20px;
    background: var(--color04);
    position: absolute;
    bottom: calc(100% + 5px);
}

.ttl-cmn02 .num-box .border:before {
    content: "";
    width: 3px;
    height: 100%;
    border-radius: 20px;
    background: var(--color04);
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    -webkit-transform-origin: bottom;
    transform-origin: bottom;
    position: absolute;
    top: 0;
    left: -10px;
    z-index: 0;
}

.ttl-cmn02 .num-box .border:after {
    content: "";
    width: 3px;
    height: 100%;
    border-radius: 20px;
    background: var(--color04);
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    -webkit-transform-origin: bottom;
    transform-origin: bottom;
    position: absolute;
    top: 0;
    right: -10px;
    z-index: 0;
}

.ttl-cmn03 {
    margin-bottom: 35px;
    text-align: center;
}

.ttl-cmn03 .sub {
    display: block;
    font-size: 20px;
}

.ttl-cmn03 .txt {
    display: inline-block;
    padding: 0 30px;
    font-size: 34px;
    position: relative;
    z-index: 0;
}

.ttl-cmn03 .txt:before {
    content: "";
    width: 100%;
    height: 60%;
    background-image: url('/import/tenant_1/162.43.17.165/images/ttl-back02.webp');
    background-size: 100% 100%;
    position: absolute;
    bottom: -1%;
    left: 0;
    z-index: -1;
}

.ttl-cmn03 .em {
    font-size: 120%;
    color: var(--color04);
}

.ttl-cmn04 {
    margin-bottom: 35px;
    text-align: center;
}

.ttl-cmn04 .txt {
    font-size: 30px;
    color: var(--color01);
    position: relative;
    z-index: 0;
}

.ttl-cmn04 .txt:after {
    content: "";
    width: 70px;
    height: 2px;
    display: block;
    margin: 10px auto 0;
    border-radius: 20px;
    background: var(--color01);
}

.ttl-cmn04.ttl-c-black .txt:after {
    background: #333;
}

.ttl-cmn05,
.content-article h3 {
    margin-bottom: 35px;
}

.ttl-cmn05 .txt,
.content-article h3 .txt {
    display: inline-block;
    padding: 0 30px;
    font-weight: bold;
    font-size: 24px;
    position: relative;
    z-index: 0;
}

.ttl-cmn05.ttl-cmn05-big .txt {
    padding: 0 80px;
}

.ttl-cmn05 .txt:before,
.content-article h3 .txt:before {
    content: "";
    width: 100%;
    height: 70%;
    background-image: var(--bg01);
    background-size: 100% 100%;
    position: absolute;
    bottom: -20%;
    left: 0;
    z-index: -1;
}

.ttl-cmn06 {
    margin-bottom: 45px;
    padding-top: 20px;
    text-align: center;
}

.ttl-cmn06 .txt {
    font-weight: 500;
    font-size: 24px;
    color: var(--color02);
    line-height: 1.2;
    letter-spacing: 2px;
}

.ttl-cmn06 .em {
    font-size: 120%;
}

.ttl-cmn07 {
    margin-bottom: 35px;
    text-align: center;
}

.ttl-cmn07 .txt {
    font-size: 40px;
}

.ttl-cmn07 .sub {
    display: block;
    margin-top: 10px;
    padding-top: 20px;
    font-size: 16px;
    position: relative;
    z-index: 0;
}

.ttl-cmn07 .sub:before {
    content: "";
    width: 60px;
    height: 2px;
    background: #333;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    position: absolute;
    top: 0;
    left: 50%;
}

.ttl-cmn08,
.content-article h2 {
    margin-bottom: 35px;
    text-align: center;
}

.ttl-cmn08 .txt,
.content-article h2 .txt {
    display: inline-block;
    font-size: 40px;
    position: relative;
    z-index: 0;
}

.ttl-cmn08 .txt:before,
.content-article h2 .txt:before {
    content: "";
    width: 5px;
    height: 35px;
    display: inline-block;
    margin-bottom: -4px;
    margin-right: 20px;
    border-radius: 20px;
    background: var(--color02);
    -webkit-transform: rotate(-35deg);
    transform: rotate(-35deg);
    -webkit-transform-origin: bottom;
    transform-origin: bottom;
}

.ttl-cmn08 .txt::after,
.content-article h2 .txt:after {
    content: "";
    width: 5px;
    height: 35px;
    display: inline-block;
    margin-bottom: -4px;
    margin-left: 20px;
    border-radius: 20px;
    background: var(--color02);
    -webkit-transform: rotate(35deg);
    transform: rotate(35deg);
    -webkit-transform-origin: bottom;
    transform-origin: bottom;
}

.ttl-cmn09,
.content-article h4 {
    margin-bottom: 10px;
}

.ttl-cmn09 .txt,
.content-article h4 .txt {
    font-size: 24px;
}

.ttl-cmn09 .txt:before,
.content-article h4 .txt:before {
    content: "■";
    color: var(--color02);
}

.ttl-cmn10 {
    margin-bottom: 20px;
}

.ttl-cmn10 .txt {
    font-weight: bold;
}

@media (max-width: 1024px) {
    .ttl-cmn01 .txt {
        font-size: 30px;
    }

    .ttl-cmn02 {
        margin-bottom: 30px;
    }

    .ttl-cmn03 .txt {
        font-size: 30px;
    }

    .ttl-cmn04 .txt {
        font-size: 30px;
    }

    .ttl-cmn07 .txt {
        font-size: 30px;
    }

    .ttl-cmn08 .txt {
        font-size: 30px;
    }
}

@media (max-width: 599px) {
    .ttl-cmn01 {
        margin-bottom: 20px;
    }

    .ttl-cmn01 .txt {
        font-size: 26px;
    }

    .ttl-cmn02 {
        margin-bottom: 20px;
    }

    .ttl-cmn02 .txt {
        padding: 10px 20px 10px 80px;
        font-size: 16px;
    }

    .ttl-cmn02 .num-box {
        width: 60px;
        height: 60px;
    }

    .ttl-cmn02 .num-box .border {
        height: 12px;
    }

    .ttl-cmn02 .num-box .point {
        font-size: 10px;
    }

    .ttl-cmn02 .num-box .num {
        font-size: 18px;
    }

    .ttl-cmn03 {
        margin-bottom: 20px;
    }

    .ttl-cmn03 .txt {
        font-size: 22px;
    }

    .ttl-cmn04 .txt {
        font-size: 24px;
    }

    .ttl-cmn05 .txt {
        font-size: 22px;
    }

    .ttl-cmn05.ttl-cmn05-big .txt {
        padding: 0 50px;
    }

    .ttl-cmn08 {
        margin-bottom: 20px;
    }

    .ttl-cmn08 .txt {
        font-size: 20px;
    }

    .ttl-cmn08 .txt:before {
        height: 25px;
        margin-right: 10px;
    }

    .ttl-cmn08 .txt::after {
        height: 25px;
        margin-left: 10px;
    }
}

.ttl-left {
    text-align: left;
}

.ttl-right {
    text-align: right;
}

.ttl-center {
    text-align: center;
}

.ttl-c-black .txt {
    color: #333;
}

.ttl-mb-small {
    margin-bottom: 20px;
}

.ttl-mb-xsmall {
    margin-bottom: 20px;
}

/*ボタン*/
.btn-cmn01 {
    margin-top: 35px;
}

.btn-cmn01>* {
    width: 250px;
    max-width: 100%;
    display: block;
    overflow: hidden;
    padding: 10px 20px;
    font-size: 14px;
    color: var(--color01);
    text-align: center;
    background: var(--color02);
    position: relative;
    z-index: 0;
}

.btn-cmn01>*:hover {
    color: var(--color02);
    opacity: inherit;
}

.btn-cmn01.btn-back-red>*:hover {
    color: var(--color04);
}

.btn-cmn01>*:before {
    content: attr(data-hover);
    width: 100%;
    height: 100%;
    display: inline-block;
    padding: 15px 50px;
    font-weight: bold;
    font-size: 16px;
    background: var(--color01);
    -webkit-transition: -webkit-transform 0.8s;
    -webkit-transition: -webkit-transform 1s;
    transition: -webkit-transform 0.8s;
    transition: -webkit-transform 1s;
    transition: transform 1s;
    transition: transform 1s, -webkit-transform 1s;
    -webkit-transform: translateX(-100%);
    transform: translateX(-100%);
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
}

.btn-cmn01>*:hover:before {
    -webkit-transform: translateX(0%);
    transform: translateX(0%);
}

.btn-cmn01>*:after {
    content: "";
    width: 12px;
    height: 10px;
    background-image: url('/import/tenant_1/162.43.17.165/images/arrow01.webp');
    background-size: contain;
    background-repeat: no-repeat;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    position: absolute;
    top: 50%;
    right: 5px;
    z-index: 0;
}

.btn-cmn01>*:hover:after {
    background-image: url('/import/tenant_1/162.43.17.165/images/arrow03.webp');
}

.btn-cmn01.btn-back-red>*:hover:after {
    background-image: url('/import/tenant_1/162.43.17.165/images/arrow04.webp');
}

.btn-cmn01-border-nore>*:after {
    display: none;
}

.btn-back-red>* {
    background: var(--color04);
}

.btn-back-blue>* {
    background: var(--color02);
}

.btn-center>* {
    margin-left: auto;
    margin-right: auto;
}

.btn-small>* {
    width: 150px;
}

.btn-medium>* {
    width: 200px;
}

.btn-wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin-top: 80px;
    padding: 1em;
}

.btn-wrap .btn-cmn01 {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    margin: 1em;
}

@media (max-width: 599px) {
    .btn-wrap .btn-cmn01 {
        max-width: 45%;
        margin: 0.5em;
    }
}

/* ========== ヘッダー ========== */
.h1-txt {
    padding: 5px 10px;
    font-size: 12px;
    width: calc(100% - 250px);
}

.header-add {
    padding: 5px 10px;
    width: 250px;
}

.header-inner {
    padding: 0 0 20px 0;
    background: rgb(247 247 247 / 40%);
}

.header-inner.fixed {
    padding: 10px 0;
    width: 100%;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 5;
}

.header-inner .logo {
    max-width: 300px;
}

.header-inner .logo a {
    display: block;
}

.header-inner .info {
    line-height: 2;
}

.header-btn {
    margin-bottom: 10px;
}

.header-btn .btn+.btn {
    margin-left: 10px;
}

.header-btn .btn a {
    display: block;
    padding: 5px 20px;
    color: var(--color01);
    border-radius: 20px;
}

.header-btn .btn:nth-of-type(1) a {
    background: var(--color02);
}

.header-btn .btn:nth-of-type(2) a {
    background: var(--color04);
}

.hun-btn {
    width: 43px;
    height: 43px;
    position: fixed;
    top: 3%;
    right: 2%;
    z-index: 11;
}

.hun-btn .bar {
    content: "";
    width: 100%;
    height: 4px;
    background: var(--color02);
    -webkit-transition: all 0.75s;
    transition: all 0.75s;
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
}

.hun-btn .bar:nth-of-type(2) {
    width: 70%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    top: 50%;
}

.hun-btn .bar:nth-of-type(3) {
    width: 50%;
    top: auto;
    bottom: 0%;
}

.hun-btn:before {
    content: "";
    width: 60px;
    height: 60px;
    display: block;
    border-radius: 50%;
    -webkit-transition: all 0.75s;
    transition: all 0.75s;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    position: absolute;
    top: 50%;
    left: 50%;
}

.hun-btn.active:before {
    border: 4px solid #0075c1;
}

.hun-btn.active .bar:nth-of-type(1) {
    -webkit-transform: translateY(13px) rotate(45deg);
    transform: translateY(20px) rotate(45deg);
}

.hun-btn.active .bar:nth-of-type(2) {
    -webkit-transform: translateY(-50%) translateX(300%);
    transform: translateY(-50%) translateX(300%);
}

.hun-btn.active .bar:nth-of-type(3) {
    width: 100%;
    -webkit-transform: translateY(-13px) rotate(-45deg);
    transform: translateY(-20px) rotate(-45deg);
}

.overlay {
    display: none;
    background: rgba(0, 0, 0, 0.4);
    position: fixed;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 10;

    -ms-touch-action: none;
    touch-action: none;
}

.overlay-active {
    overflow: hidden;
}

.overlay-active .overlay {
    display: block;
}

.fixed-logo{
  display:none;
  position:absolute;
  left:10px;
  width:250px;
  z-index:9;
}

[data-element-id].fixed-logo{
  position:relative;
  display:block;
}

.fixed-logo>a{
  display:block;
}

@media (max-width: 1024px) {
    .h1-txt {
        padding: 5px 0px;
        width: 100%;
    }
    
    .fixed-logo{
      display:block;
    }

    .header-inner .inner .header-box {
        height: 100%;
        padding-top: 30px;
    }

    .header-inner {
        width: 80%;
        height: 100%;
        background: #738874;
        background-image: url('/import/tenant_1/162.43.17.165/images/back-cmn04.webp');
        -webkit-transition: all 0.75s;
        transition: all 0.75s;
        -webkit-transform: translate(100%, 0);
        transform: translate(100%, 0);
        position: fixed;
        top: 0;
        right: -5%;
        z-index: 10;
    }

    .overlay-active .header-inner {
        -webkit-transform: translate(0, 0) skew(3deg);
        transform: translate(0, 0) skew(3deg);
    }

    .header-inner .inner {
        width: 100%;
        max-width: 100%;
        height: 100%;
        padding: 0 70px 70px 30px;
        -webkit-transform: skew(-3deg);
        transform: skew(-3deg);
    }

    .header-inner .inner>* {
        height: 100%;
        display: block;
        overflow: hidden;
    }

    .header-inner .inner>* .left {
        max-width: 100%;
        margin-left: auto;
        margin-right: auto;
    }

    .header-inner .right {
        height: calc(100% - 150px);
    }

    .header-btn {
        margin: 0 0;
    }
    
    .header-btn .btn{
        margin: 10px 0;
    }
    
    .deco{
      opacity:0.3;
    }
}

@media (max-width: 599px) {
    .h1-txt {
        width: calc(100% - 40px);
    }

    .hun-btn {
        width: 30px;
        height: 30px;
        right: 4%;
    }

    .hun-btn.active .bar:nth-of-type(1) {
        -webkit-transform: translateY(13px) rotate(45deg);
        transform: translateY(13px) rotate(45deg);
    }

    .hun-btn.active .bar:nth-of-type(3) {
        width: 100%;
        -webkit-transform: translateY(-13px) rotate(-45deg);
        transform: translateY(-13px) rotate(-45deg);
    }

    .hun-btn:before {
        width: 50px;
        height: 50px;
    }

    .header-inner {
        width: 90%;
    }

    .header-inner .inner {
        padding: 0 35px 30px 25px;
    }

    .header-inner .logo {
        max-width: 250px;
    }

    .header-inner .right {
        height: calc(100% - 110px);
    }

    .header-inner .info {
        font-size: 13px;
    }

    .header-btn {
        width: 100%;
        bottom: 0px;
        right: 10%;
    }

    .header-btn .btn {
        width: 100%;
        text-align: center;
    }

    .header-btn .btn+.btn {
        margin-top: 10px;
        margin-left: 0;
    }

    .header-btn .btn a {
        font-size: 14px;
    }
    
    .header-inner .info {
    line-height: 1.5;
    }
}

/* ========== ナビ ========== */
.gnav li {
    padding: 0 20px;
    font-weight: bold;
    border-right: 1px solid;
}

.gnav li:last-of-type a {
    border-right: none;
}

.gnav .dropdown {
    cursor: pointer;
    position: relative;
    z-index: 1;
}

.gnav .dropdown:after {
    content: "+";
    padding-left: 5px;
}

.gnav li ul {
    width: 330px;
    display: none;
    position: absolute;
    left: 0;
    padding: 15px;
    background-color: #fff;
    z-index: 10;
}

.gnav li ul li {
    margin-top: 10px;
    font-size: 14px;
    text-shadow: 1px 1px #fff, 1px 1px #fff, 1px 1px #fff, 0px 0px #fff;
    border-right: none;
}

.gnav li ul li:before {
    content: "ー";
    display: inline-block;
    margin-right: 5px;
}

.gnav ul li:hover ul {
    display: block;
    list-style-type: none;
}

@media (max-width: 1024px) {
    .gnav {
        height: 100%;
        overflow-y: scroll;
        padding-bottom: 160px;
    }

    .gnav .dropdown:after {
        display: none;
    }

    .gnav li {
        width: 100%;
        margin-top: 20px;
        border-right: none;
    }

    .gnav li ul {
        width: 100%;
        display: block;
        position: relative;
    }

    .gnav li ul li {
        font-size: 16px;
        text-shadow: none;
    }
}

@media (max-width: 599px) {
    .gnav li {
        margin-top: 10px;
    }

    .gnav li ul li {
        padding: 0;
    }

    .gnav li ul li:before {
        content: "∟";
    }
}

/* ========== フッター ========== */
.footer {
    overflow: hidden;
    padding: 60px 0;
    position: relative;
}

.footer .right {
    width: 50%;
}

.footer .copy {
    margin-top: 60px;
    font-size: 12px;
    text-align: center;
}

.footer .logo {
    max-width: 310px;
    margin: 0 auto;
}

.footer .info {
    margin-top: 30px;
    line-height: 2;
    text-align: center;
}

.footer .btn {
    margin-top: 20px;
    text-align: center;
}

.footer .btn a {
    display: inline-block;
    padding-bottom: 3px;
    border-bottom: 1px solid;
}

.footer-nav li {
    font-size: 14px;
}

.footer-nav li+li {
    margin-top: 10px;
}

@media (max-width: 1024px) {
    .footer {
        padding: 40px 0;
    }

    .footer .left {
        width: 100%;
        margin-top: 30px;
    }

    .footer .right {
        width: 100%;
    }

    .footer-nav {
        width: 90%;
        margin: 0 auto;
    }
}

@media (max-width: 599px) {
    .footer {
        padding: 40px 0 60px;
    }
}

/* ========== TOPメインビジュアル ========== */
.top-mv {
    display: block;
    padding: 20px 0 100px;
    position: relative;
    z-index: 0;
}

.top-mv:after {
    content: "";
    width: 756px;
    height: 500px;
    background: var(--color02);
    position: absolute;
    bottom: 50px;
    right: 0;
    z-index: -1;
}

.top-mv .box {
    max-height: 600px;
    overflow: hidden;
    padding: 80px 0;
    position: relative;
    z-index: 0;
}

.top-mv .right {
    width: 100%;
}

.top-mv .right .pic {
    position: relative;
    z-index: 0;
}

.top-mv .catch {
    position: absolute;
    bottom: 10%;
    left: 3%;
    z-index: 0;
}

.top-mv .catch .line {
    display: inline;
    padding: 20px 30px;
    font-weight: 600;
    font-size: 30px;
    line-height: 2;
    letter-spacing: 3px;
    position: relative;
    z-index: 0;
}

.top-mv .catch .line:before {
    content: "";
    width: 100%;
    height: 100%;
    background-image: url('/import/tenant_1/162.43.17.165/images/catch01.webp');
    background-size: 100% 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
}

.top-mv .catch .em {
    font-size: 120%;
    color: var(--color02);
}

@media (max-width: 1024px) {
    .top-mv:after {
        width: 45%;
        height: 60%;
    }
}

@media (max-width: 599px) {
    .top-mv {
        padding: 20px 0 20px;
    }

    .top-mv .catch {
        bottom: 2%;
        left: 0;
    }

    .top-mv .catch .line {
        padding: 10px 15px;
        font-size: 16px;
        line-height: 2.5;
        letter-spacing: 1px;
    }

    .top-mv:after {
        width: 45%;
        height: 50%;
        bottom: 40px;
    }

    .top-mv .box {
        padding: 20px 0 80px 0;
    }
}

/*slick*/
.top-mv .slick-slider {
    -webkit-transform: rotate(15deg);
    transform: rotate(15deg);
    -webkit-transform-origin: top;
    transform-origin: top;
}

.top-mv .slick-list {
    overflow: inherit;
}

.top-mv .slick-slider .pic {
    -webkit-transform: rotate(-15deg);
    transform: rotate(-15deg);
}

.top-mv .slick-slide img {
    -webkit-transition: opacity 0.5s, -webkit-transform 0.5s;
    transition: opacity 0.5s, -webkit-transform 0.5s;
    transition: opacity 0.5s, transform 0.5s;
    transition: opacity 0.5s, transform 0.5s, -webkit-transform 0.5s;
    -webkit-transform: scale(0.7);
    transform: scale(0.7);
}

.top-mv .slick-slide.slick-active img {
    -webkit-transform: scale(0.9);
    transform: scale(0.9);
    transform: scale(0.9);
}

.top-mv .slick-active:not(.slick-active+.slick-active) {
    -webkit-transform: scale(1.4);
    transform: scale(1.4);
    position: relative;
    z-index: 1;
}

/* ========== 下層共通 ========== */
/*下層メインビジュアル*/
.lower-mv {
    position: relative;
    z-index: 0;
}

.lower-mv .pic {
    -webkit-filter: brightness(0.8);
    filter: brightness(0.8);
}

.lower-mv .pic:before {
    content: "";
    display: block;
    padding-top: 25%;
}

.lower-mv img {
    width: 100%;
    height: 100% !important;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: 50% 50%;
    object-position: 50% 50%;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
}

.lower-mv .catch {
    width: 80%;
    text-align: center;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    position: absolute;
    top: 50%;
    left: 50%;
    z-index: 1;
}

.lower-mv .catch .txt {
    padding: 0 30px;
    font-weight: 400;
    font-size: 40px;
    color: var(--color02);
    text-shadow: #fff 2px 0px 0px, #fff -2px 0px 0px, #fff 0px -2px 0px,
        #fff 0px 2px 0px, #fff 2px 2px 0px, #fff -2px 2px 0px, #fff 2px -2px 0px,
        #fff -2px -2px 0px, #fff 1px 2px 0px, #fff -1px 2px 0px, #fff 1px -2px 0px,
        #fff -1px -2px 0px, #fff 2px 1px 0px, #fff -2px 1px 0px, #fff 2px -1px 0px,
        #fff -2px -1px 0px, #fff 1px 1px 0px, #fff -1px 1px 0px, #fff 1px -1px 0px,
        #fff -1px -1px 0px;
    position: relative;
    z-index: 0;
}

.lower-mv .catch .txt:before {
    content: "";
    width: 100%;
    height: 50%;
    background-image: var(--bg01);
    background-size: 100% 100%;
    position: absolute;
    bottom: -1%;
    left: 0;
    z-index: -1;
}

.lower-mv .pankuzu {
    width: 98%;
    max-width: 1200px;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    position: absolute;
    top: 20px;
    left: 50%;
    z-index: 1;
}

@media (max-width: 1024px) {
    .lower-mv .pic:before {
        padding-top: 30%;
    }

    .lower-mv .catch .txt {
        padding: 0 10px;
        font-size: 28px;
    }
}

@media (max-width: 599px) {
    .lower-mv .pic:before {
        padding-top: 50%;
    }

    .lower-mv .catch {
        width: 90%;
    }

    .lower-mv .catch .txt {
        padding: 0 5px;
        font-size: 20px;
    }

    .lower-mv .pankuzu {
        top: 5px;
    }
}

/*画像のみコンテンツ*/
.img-only .pic:before {
    content: "";
    display: block;
    padding-top: 20%;
}

.img-only .pic img {
    width: 100%;
    height: 100% !important;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: 50% 50%;
    object-position: 50% 50%;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
}

/*パンクズ*/
.pankuzu ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.pankuzu li {
    margin: 2px 4px;
    font-size: 14px;
    color: var(--color01);
    letter-spacing: 3px;
}

.pankuzu li+li:before {
    content: "▶︎";
    display: inline-block;
    margin-right: 5px;
    font-size: 10px;
}

@media (max-width: 599px) {
    .pankuzu li {
        margin: 2px 2px;
        font-size: 12px;
        letter-spacing: 1.2px;
    }

    .pankuzu li+li:before {
        margin-right: 2px;
    }
}

/* ========== 2カラム ========== */
.content-column01 .left {
    width: 230px;
}

.content-column01 .right {
    width: calc(100% - 280px);
}

.content-column02 .left {
    width: calc(100% - 240px);
}

.content-column02 .right {
    width: 200px;
}

@media (max-width: 1024px) {
    .content-column01 .left {
        width: 100%;
        margin-top: 60px;
    }

    .content-column01 .right {
        width: 100%;
    }
}

@media (max-width: 599px) {
    .content-column02 .left {
        width: 100%;
    }

    .content-column02 .right {
        width: 100%;
        margin-top: 50px;
        display:flex;
        justify-content: space-between;
        align-items: flex-start;
    }
    
    .content-column02 .right .side02{
      width:48%;
    }
    
    .content-column02 .right .side02+.side02{
     margin-top:0;
    }
}

/* ========== カスタムコンテンツ ========== */
/*サイドコンテンツ*/
.side01 {
    width: 100%;
}

.side01+.side01 {
    margin-top: 50px;
}

.side01 .tit {
    padding: 10px 10px;
    font-size: 17px;
    color: var(--color01);
    text-align: center;
    background: var(--color02);
}

.side01 li>* {
    display: block;
    overflow: hidden;
    padding: 15px 15px;
    font-weight: 500;
    font-size: 16px;
    color: #000;
    background: var(--color01);
    position: relative;
    z-index: 1;
}

.side01 li+li>* {
    border-top: 1px solid #f2f2f2;
}

.side01 li>*:before {
    content: attr(data-hover);
    width: 100%;
    height: 100%;
    display: inline-block;
    padding: 15px 50px;
    font-weight: bold;
    font-size: 16px;
    background: var(--color02);
    -webkit-transition: -webkit-transform 0.8s;
    -webkit-transition: -webkit-transform 1s;
    transition: -webkit-transform 0.8s;
    transition: -webkit-transform 1s;
    transition: transform 1s;
    transition: transform 1s, -webkit-transform 1s;
    -webkit-transform: translateX(-100%);
    transform: translateX(-100%);
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
}

.side01 li>*:hover {
    color: var(--color01);
    opacity: 1;
}

.side01 li>*:hover:before {
    -webkit-transform: translateX(0%);
    transform: translateX(0%);
}

@media (max-width: 1024px) {
    .side01 {
        width: 46%;
        margin: 0 auto;
    }

    .side01+.side01 {
        margin-top: 0;
    }
}

@media (max-width: 599px) {
    .side01 {
        width: 90%;
    }

    .side01+.side01 {
        margin-top: 40px;
    }
}

.side02+.side02 {
    margin-top: 50px;
}

.side02 li+li {
    margin-top: 20px;
}

.side02 li>* {
    font-weight: 500;
}

/*ページャー*/
.pager li+li {
    margin-left: 20px;
}

.pager li>* {
    width: 50px;
    height: 50px;
    display: block;
    font-size: 21px;
    color: var(--color02);
    line-height: 50px;
    text-align: center;
    background: var(--color01);
}

.pager li.now>* {
    color: var(--color01);
    background: var(--color02);
}

.pager li.prev>*:before {
    content: "";
    width: 13px;
    height: 15px;
    display: inline-block;
    background-image: url(/upload/tenant_1/矢印アイコン　左4.webp);
    background-size: contain;
    background-repeat:no-repeat;
}

.pager li.next>*:before {
    content: "";
    width: 13px;
    height: 15px;
    display: inline-block;
    background-image: url(/upload/tenant_1/矢印アイコン　右4.webp);
    background-size: contain;
    background-repeat:no-repeat;
}

@media (max-width: 599px) {
    .pager li>* {
        width: 40px;
        height: 40px;
        font-size: 16px;
        line-height: 40px;
    }
}

/* ========== form ========== */
.form input {
    width: 100%;
    min-height: 70px;
    padding: 10px 15px;
    line-height: 2;
    border: none;
}

.form textarea {
    width: 100%;
    min-height: 300px;
    padding: 10px 15px;
    line-height: 2;
    border: none;
}

.form button {
    border: none;
}

@media (max-width: 599px) {
    .form input {
        min-height: 40px;
        padding: 5px 15px;
        line-height: 1.6;
    }

    .form textarea {
        min-height: 200px;
    }
}

/* ========== 施工事例切り替え ========== */
.move {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-top: 10px;
}

.thuwp {
    width: 90px;
    display: block;
    margin-right: 10px;
}

/* ========== content01 ========== */
.content01 .left {
    width: 20%;
}

.content01 .right {
    width: 80%;
}

.content01-list li+li {
    margin-top: 10px;
}

.content01-list li a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    padding: 20px 70px;
    position: relative;
    z-index: 0;
}

.content01-list li a:before {
    content: "";
    width: 100%;
    height: 100%;
    background-image: url('/import/tenant_1/162.43.17.165/images/catch01.webp');
    background-size: 100% 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
}

.content01-list li a .day {
    width: 100px;
    -ms-flex-negative: 0;
    flex-shrink: 0;
}

.content01-list li a .tit {
    width: calc(100% - 130px);
    overflow: hidden;
    margin-left: 30px;
    text-overflow: ellipsis;
    white-space: nowrap;
}

@media (max-width: 1024px) {
    .content01 .right {
        width: 75%;
    }

    .content01-list li a {
        padding: 20px 40px;
    }
}

@media (max-width: 599px) {
    .content01 .left {
        width: 100%;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        align-items: center;
        -ms-flex-align: center;
        -ms-flex-pack: distribute;
        justify-content: space-around;
    }

    .content01 .left .ttl,
    .content01 .left .btn {
        margin: 0;
    }

    .content01 .right {
        width: 100%;
        margin-top: 30px;
    }

    .content01-list li a {
        padding: 20px 30px;
    }

    .content01-list li a .day {
        width: 100%;
        font-size: 14px;
    }

    .content01-list li a .tit {
        width: 100%;
        margin-top: 5px;
        margin-left: 0;
    }
}

/* ========== content02 ========== */
.content02{
  position:relative;
  z-index:1;
}

.content02 li {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: start;
    -webkit-box-align: center;
    align-items: flex-start;
    align-items: center;
    -ms-flex-align: start;
    -ms-flex-align: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    position: relative;
    z-index: 0;
}

.content02 li:nth-of-type(even) {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
}

.content02 li+li {
    margin-top: 80px;
}

.content02 .left {
    width: 48%;
}

.content02 .right {
    width: 48%;
}

.content02 .txtbox>.txt {
    line-height: 2.2;
}

.content02 .imgbox .pic {
    margin-bottom: 20px;
    margin-right: 20px;
    position: relative;
    z-index: 0;
}

.content02 li:nth-of-type(even) .imgbox .pic {
    margin-left: 20px;
    margin-right: 0;
}

.content02 .imgbox .pic .border-y {
    width: 3px;
    height: calc(100% - 20px);
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    position: absolute;
    top: 50%;
    right: -10px;
    z-index: 0;
}

.content02 li:nth-of-type(even) .imgbox .pic .border-y {
    left: -10px;
    right: auto;
}

.content02 .imgbox .pic .border-y:before {
    content: "";
    width: 100%;
    height: 30%;
    background: var(--color02);
    position: absolute;
    top: 0;
    z-index: 0;
}

.content02 .imgbox .pic .border-y:after {
    content: "";
    width: 100%;
    height: 65%;
    background: var(--color02);
    position: absolute;
    bottom: 0;
    z-index: 0;
}

.content02 .imgbox .pic .border-x {
    width: calc(100% - 120px);
    height: 3px;
    position: absolute;
    bottom: -10px;
    right: 10px;
    z-index: 0;
}

.content02 li:nth-of-type(even) .imgbox .pic .border-x {
    left: 10px;
    right: auto;
}

.content02 .imgbox .pic .border-x:before {
    content: "";
    width: 30%;
    height: 100%;
    background: var(--color02);
    position: absolute;
    left: 0;
    z-index: 0;
}

.content02 .imgbox .pic .border-x:after {
    content: "";
    width: 65%;
    height: 100%;
    background: var(--color02);
    position: absolute;
    right: 0;
    z-index: 0;
}

.content02 .imgbox .pic:before {
    border-width: 0 0 200px 200px;
}

.content02 .imgbox .pic:before {
    border-width: 0 0 40px 200px;
}

.content02 li:nth-last-of-type(odd) .img {
    -webkit-clip-path: polygon(20% 100%, 0% 0%, 100% 0%, 100% 100%);
    clip-path: polygon(20% 100%, 0% 0%, 100% 0%, 100% 100%);
}

.content02 li:nth-last-of-type(even) .img {
    -webkit-clip-path: polygon(0% 100%, 0 0%, 100% 0%, 80% 100%);
    clip-path: polygon(0% 100%, 0 0%, 100% 0%, 80% 100%);
}

@media (max-width: 1024px) {
    .content02 .left {
        width: 100%;
    }

    .content02 .right {
        width: 50%;
        margin-left: auto;
    }

    .content02 li:nth-of-type(even) .right {
        margin-left: 0;
        margin-right: auto;
    }

    .content02 .txtbox>.txt {
        width: 48%;
        position: absolute;
        left: 0;
    }

    .content02 li:nth-of-type(even) .txtbox>.txt {
        left: auto;
        right: 0;
    }
}

@media (max-width: 599px) {
    .content02 li+li {
        margin-top: 50px;
    }

    .content02 .right {
        width: 100%;
        margin-top: 20px;
    }

    .content02 .txtbox>.txt {
        width: 100%;
        line-height: 1.8;
        position: static;
    }
}

/* ========== content03 ========== */
.content03-list .item {
    height: 100%;
    position: relative;
    z-index: 0;
}

.content03-list .item:before {
    content: "";
    width: 100%;
    height: 100%;
    background: rgba(252, 236, 223, 1);
    position: absolute;
    top: 5px;
    left: 5px;
    z-index: -1;
}

.content03-list .itembox {
    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;
    padding: 20px;
    background: var(--color01);
    position: relative;
    z-index: 0;
}

.content03-list .pic {
    height: 70px;
    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;
}

.content03-list .pic img {
    width: auto;
    max-width: 100%;
    height: initial !important;
    max-height: 100%;
}

.content03-list .txt {
    margin-left: 20px;
    font-size: 20px;
}

.content03-list .item .txt {
    width: calc(100% - 75px);
}

.content03-list .em {
    color: var(--color04);
}

.content03-check {
    width: 60%;
    margin: 0 auto 40px;
    position: relative;
    z-index: 0;
}

.content03-check:before {
    content: "";
    width: 100%;
    height: 100%;
    background: rgba(252, 236, 223, 1);
    position: absolute;
    top: 5px;
    left: 5px;
    z-index: -1;
}

.content03-check .box {
    padding: 40px;
    background: var(--color01);
}

.content03-check li {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: baseline;
    align-items: baseline;
    -ms-flex-align: baseline;
    font-weight: bold;
    font-size: 20px;
}

.content03-check li:before {
    content: "";
    width: 32px;
    height: 28px;
    display: inline-block;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    margin-right: 20px;
    background-image: url('/import/tenant_1/162.43.17.165/images/check01.webp');
    background-size: contain;
    background-repeat: no-repeat;
    -webkit-transform: translateY(5px);
    transform: translateY(5px);
}

.content03-check li+li {
    margin-top: 20px;
}

.content03-img .pic {
    width: 823px;
    max-width: 100%;
    margin: -40px auto 0;
    position: relative;
    z-index: 0;
}

.content03-img.content03-img-big .pic {
    width: 903px;
    margin-left: 0;
}

.content03-img .tit {
    font-weight: bold;
    font-size: 28px;
    position: absolute;
    bottom: 20%;
    right: 0%;
    z-index: 0;
}

.content03-img .txt {
    width: calc(100% - 25%);
    line-height: 2;
    position: relative;
    margin-left: auto;
    margin-right: 0;
    padding-top: 110px;
    padding-bottom: 60px;
}

.content03-img.content03-img-big .pic img {
    position: absolute;
    top: 0;
    left: 0;
}

.content03-img .tit:before {
    content: "";
    width: 5px;
    height: 35px;
    display: inline-block;
    margin-bottom: -7px;
    border-radius: 20px;
    background: var(--color02);
    -webkit-transform: rotate(-15deg);
    transform: rotate(-15deg);
    -webkit-transform-origin: bottom;
    transform-origin: bottom;
}

.content03-img .tit:after {
    content: "";
    width: 5px;
    height: 35px;
    display: inline-block;
    margin-bottom: -7px;
    border-radius: 20px;
    background: var(--color02);
    -webkit-transform: rotate(15deg);
    transform: rotate(15deg);
    -webkit-transform-origin: bottom;
    transform-origin: bottom;
}

.content03-img .tit .em {
    font-size: 120%;
    color: var(--color02);
}

.content03-txt .tit {
    margin-bottom: 10px;
    font-weight: bold;
    font-size: 24px;
    color: var(--color02);
    text-align: center;
}

.content03-txt .txt {
    font-size: 18px;
    line-height: 2;
    text-align: center;
}

@media (max-width: 1024px) {
    .content03-list .pic {
        height: 50px;
    }

    .content03-img .pic {
        width: 550px;
        margin-top: -10px;
    }

    .content03-img .tit {
        font-size: 20px;
    }

    .content03-img .txt {
        width: calc(100% - 18%);
        bottom: 10px;
    }

    .content03-check {
        width: 80%;
    }
}

@media (max-width: 599px) {
    .content03-list .itembox {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
    }

    .content03-list .itembox {
        padding: 10px 5px;
    }

    .content03-list .pic {
        width: 35%;
        height: 40px;
    }

    .content03-list .item .txt {
        width: 96%;
        margin-top: 10px;
        margin-left: 0;
        font-size: 16px;
        letter-spacing: -.08em;
    }

    .content03-img .pic {
        width: 350px;
    }

    .content03-img .tit {
        font-size: 14px;
        bottom: 10%;
        right: 0%;
    }

    .content03-img .tit:after,
    .content03-img .tit:before {
        height: 25px;
        width: 3px;
    }

    .content03-txt .tit {
        font-size: 18px;
    }

    .content03-txt .txt {
        font-size: 16px;
        line-height: 1.6;
    }

    .content03-check {
        width: 100%;
        margin-bottom: 20px;
    }

    .content03-check .box {
        padding: 20px;
    }

    .content03-check li+li {
        margin-top: 10px;
    }

    .content03-check li {
        font-size: 16px;
    }

    .content03-check li:before {
        width: 22px;
        height: 18px;
        margin-right: 10px;
        -webkit-transform: translateY(3px);
        transform: translateY(3px);
    }

    .content03-img .txt {
        width: 100%;
        padding: 10px 0 30px;
        font-size: 16px;
        line-height: 1.6;
        position: relative;
        bottom: 0;
        right: 0;
        z-index: 0;
    }

    .content03-img.content03-img-big .pic img {
        position: relative;
    }
    
    .content03-list .item .txt{
      text-align: center;
    }
}

/* ========== content04 ========== */
.content04-list li a {
    display: block;
    padding: 40px 10px;
    color: var(--color02);
    text-align: center;
    background: var(--color01);
    position: relative;
    z-index: 0;
}

.content04-list li a:before {
    content: "";
    width: calc(100% - 20px);
    height: calc(100% - 20px);
    border: 1px solid #0075c1;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    position: absolute;
    top: 50%;
    left: 50%;
    z-index: 0;
}

.content04-list .pic {
    height: 54px;
    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;
}

.content04-list .pic img {
    width: auto;
    max-width: 100%;
    height: initial !important;
    max-height: 100%;
}

.content04-list .txt {
    margin-top: 20px;
    font-size: 20px;
}

.content04-list li:nth-child(1) .pic {
    background-image: var(--bg02);
    background-repeat: no-repeat;
    background-position: center;
}

.content04-list li:nth-child(2) .pic {
    background-image: var(--bg03);
    background-repeat: no-repeat;
    background-position: center;
}

.content04-list li:nth-child(3) .pic {
    background-image: var(--bg04);
    background-repeat: no-repeat;
    background-position: center;
}

.content04-list li:nth-child(4) .pic {
    background-image: var(--bg05);
    background-repeat: no-repeat;
    background-position: center;
}

.content04-list li:nth-child(5) .pic {
    background-image: var(--bg06);
    background-repeat: no-repeat;
    background-position: center;
}

.content04-list li:nth-child(6) .pic {
    background-image: var(--bg07);
    background-repeat: no-repeat;
    background-position: center;
}

@media (max-width: 1024px) {
    .content04-list li a {
        padding: 30px 10px;
    }
}

@media (max-width: 599px) {
    .content04-list li a {
        padding: 20px 5px;
    }

    .content04-list li a:before {
        width: calc(100% - 10px);
        height: calc(100% - 10px);
    }

    .content04-list .txt {
        font-size: 16px;
    }
}

/* ========== content05 ========== */
.content05 a {
    display: block;
    position: relative;
    z-index: 1;
}

.content05 a:before {
    content: "";
    width: calc(100% - 40px);
    height: calc(100% - 40px);
    border: 2px solid #fff;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    position: absolute;
    top: 50%;
    left: 50%;
    z-index: 1;
}

.content05 a:after {
    content: "";
    width: 24px;
    height: 24px;
    background-image: url('/import/tenant_1/162.43.17.165/images/arrow02.webp');
    background-size: cover;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    position: absolute;
    top: 50%;
    right: 50px;
    z-index: 0;
}

.content05 .pic {
    -webkit-filter: brightness(0.8);
    filter: brightness(0.8);
}

.content05 .txt {
    font-size: 20px;
    color: var(--color01);
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    position: absolute;
    top: 50%;
    left: 50px;
    z-index: 0;
}

@media (max-width: 1024px) {
    .content05-list {
        width: 80%;
        margin: 0 auto;
    }
}

@media (max-width: 599px) {
    .content05-list {
        width: 95%;
    }

    .content05 a:before {
        width: calc(100% - 10px);
        height: calc(100% - 10px);
    }

    .content05 a:after {
        right: 20px;
    }

    .content05 .txt {
        font-size: 16px;
        left: 20px;
    }
}

/* ========== content06 ========== */
.content06-list {
    width: 80%;
    margin: 0 auto;
}

.content06-list li+li {
    margin-top: 20px;
}

.content06-list .faq {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    border: 1px solid #0075c1;
    background: var(--color01);
    position: relative;
    z-index: 0;
}

.content06-list .js-toggle {
    cursor: pointer;
}

.content06-list .js-toggle+* {
    display: none;
}

.content06-list .faq-q:after {
    content: "";
    width: 14px;
    height: 2px;
    background: var(--color02);
    position: absolute;
    top: 21px;
    right: 10px;
    z-index: 0;
}

.content06-list .faq-q:before {
    content: "";
    width: 2px;
    height: 14px;
    background: var(--color02);
    -webkit-transition: 0.3s;
    transition: 0.3s;
    position: absolute;
    top: 15px;
    right: 16px;
    z-index: 0;
}

.content06-list .faq-q.is-parent:before {
    -webkit-transform: rotate(-90deg) translateY(-6px);
    transform: rotate(-90deg) translateY(-6px);
    right: 10px;
}

.content06-list .mark {
    width: 50px;
    font-size: 30px;
    color: var(--color01);
    line-height: 50px;
    text-align: center;
    background: var(--color02);
}

.content06-list .txt {
    width: calc(100% - 50px);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    align-items: center;
    -ms-flex-align: center;
    padding: 10px 35px 10px 20px;
}

@media (max-width: 1024px) {
    .content06-list {
        width: 90%;
    }
}

@media (max-width: 599px) {
    .content06-list {
        width: 95%;
    }
    
    .content06-list .txt{
      padding: 10px 30px 10px 10px;
    }
}

/* ========== content07 ========== */
.content07-list ul {
    padding: 0 40px;
}


.content07-list li {
    margin-bottom: 30px;
    padding: 30px 30px 45px;
    position: relative;
    z-index: 0;
}

.content07-list .slick-arrow {
    cursor: pointer;
}

.content07-list .btn-back {
    width: 23px;
    height: 43px;
    background-image: url('/import/tenant_1/162.43.17.165/images/arrow-prev-01.webp');
    background-size: 100% auto;
    background-repeat: no-repeat;
    background-position: center center;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    position: absolute;
    top: 50%;
    left: 0;
    z-index: 0;
}

.content07-list .btn-next {
    width: 23px;
    height: 43px;
    background-image: url('/import/tenant_1/162.43.17.165/images/arrow-next-01.webp');
    background-size: 100% auto;
    background-repeat: no-repeat;
    background-position: center center;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    position: absolute;
    top: 50%;
    right: 0;
    z-index: 0;
}

.content07-list .txtbox {
    width: 50%;
    padding: 20px;
    background: var(--color01);
    position: relative;
    margin-left: auto;
    margin-right: -30px;
    margin-top: -30px;
    z-index: 1;
}

.no-const.content07-list .txtbox {
    min-width: 255px;
}

.content07-list .slick-arrow img {
    display: block;
}

.content07-list .txtbox .day {
    font-size: 14px;
    color: var(--color02);
}

.const-tag {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    position: absolute;
    top: 10px;
    left: 10px;
    z-index: 1;
    width: calc(100% - 20px);
}

.const-tag>span {
    display: inline-block;
    background: var(--color02);
    padding: 3px 10px;
    line-height: 1em;
    margin: 0 3px 3px 0;
    color: #fff;
    font-size: 14px;
}

.new-tag{
  display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.new-tag>span {
    display: inline-block;
    background: var(--color02);
    padding: 3px 10px;
    line-height: 1em;
    margin: 0 3px 3px 0;
    color: #fff;
    font-size: 14px;
}


@media (max-width: 599px) {
    .content07-list ul {
        padding: 0 25px;
    }

    .content07-list li {
        margin-bottom: 0px;
        padding: 10px 0px 10px;
    }

    .content07-list .txtbox {
        margin-right: 0;
        width: calc(100% - 30px);
        min-width: 0px;
    }

    .content07-list .btn-back,
    .content07-list .btn-next {
        width: 16px;
        height: 31px;
    }

    .no-const.content07-list .txtbox {
        margin-right: 0;
        width: calc(100% - 30px);
        min-width: 0px;
    }
}

/* ========== content08 ========== */
.content08 .catch .line {
    display: inline;
    padding: 15px 30px;
    font-size: 24px;
    line-height: 2.8;
    position: relative;
    z-index: 0;
}

.content08 .catch .line:before {
    content: "";
    width: 100%;
    height: 100%;
    background-image: url('/import/tenant_1/162.43.17.165/images/catch01.webp');
    background-size: 100% 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
}

@media (max-width: 1024px) {
    .content08 .catch .line {
        font-size: 20px;
    }
}

/* ========== content09 ========== */
.content09 {
    position: relative;
    z-index: 0;
}

.content09 .back {
    width: 100%;
    height: 100%;
    -webkit-filter: brightness(0.7);
    filter: brightness(0.7);
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
}

.content09-btn .item a {
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    align-items: center;
    -ms-flex-align: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    padding: 10px 10px;
    color: var(--color01);
    line-height: 1;
    letter-spacing: 2px;
    text-align: center;
}

.content09-btn .item a .txt {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    align-items: center;
    -ms-flex-align: center;
}

.content09-btn .sub {
    margin-bottom: 10px;
    font-size: 14px;
}

.content09-btn .tel a .txt,
.content09-btn .tel-02 a .txt {
    font-size: 34px;
}

.content09-btn .tel a .txt:before,
.content09-btn .tel-02 a .txt:before {
    content: "";
    width: 30px;
    height: 30px;
    display: inline-block;
    margin-right: 5px;
    background-image: url('/import/tenant_1/162.43.17.165/images/tel01.webp');
    background-repeat: no-repeat;
}

.content09-btn .mail a .txt {
    font-size: 22px;
}

.content09-btn .mail a .txt:before {
    content: "";
    width: 30px;
    height: 24px;
    display: inline-block;
    margin-right: 5px;
    background-image: url('/import/tenant_1/162.43.17.165/images/mail02.webp');
    background-repeat: no-repeat;
}

.content09-btn .item:nth-of-type(1) a {
    background: var(--color04);
}

.content09-btn .item:nth-of-type(2) a {
    background: var(--color02);
}

@media (max-width: 1024px) {

    .content09-btn .tel a .txt,
    .content09-btn .tel-02 a .txt {
        font-size: 28px;
    }

    .content09-btn .mail a .txt {
        font-size: 20px;
    }
}

/* ========== content10 ========== */
.content10 .txtbox .txt {
    font-weight: 500;
    font-size: 30px;
    line-height: 1.6;
    text-align: center;
}

.content10 .pic {
    width: 25%;
    position: absolute;
    bottom: -30px;
    left: 2%;
    z-index: 1;
}

@media (max-width: 599px) {
    .content10 .txtbox .txt {
        font-size: 18px;
    }

    .content10 .pic {
        width: 100%;
        position: relative;
        bottom: -20px;
        left: 0;
    }
}

/* ========== content11 ========== */
.content11-txt .left {
    width: 200px;
}

.content11-txt .right {
    width: calc(100% - 250px);
}

.content11-txt .txt {
    line-height: 2;
    letter-spacing: 1.4px;
}

@media (max-width: 599px) {
    .content11-txt .left {
        width: 100%;
    }

    .content11-txt .right {
        width: 100%;
    }
}

/* ========== content12 ========== */
.content12-list {
    margin-bottom: 10px;
}

.content12-list li {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
    align-items: center;
    -ms-flex-align: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding: 50px 40px;
    background: var(--color01);
    position: relative;
    z-index: 0;
}

.content12-list li .huki {
    width: 30%;
    height: 3px;
    position: absolute;
    bottom: -10px;
    left: 0;
    z-index: 0;
}

.content12-list li .huki .huki-left {
    width: calc(20% - 10px);
    height: 100%;
    background: var(--color02);
    position: absolute;
    left: 0;
}

.content12-list li .huki .huki-right {
    width: calc(80% - 10px);
    height: 100%;
    background: var(--color02);
    position: absolute;
    right: 0;
}

.content12-list li .huki .huki-left:before,
.content12-list li .huki .huki-right:before {
    content: "";
    width: 15px;
    height: 100%;
    background: var(--color02);
    position: absolute;
    z-index: 0;
}

.content12-list li .huki .huki-left:before {
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    -webkit-transform-origin: left;
    transform-origin: left;
    left: 100%;
}

.content12-list li .huki .huki-right:before {
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    -webkit-transform-origin: right;
    transform-origin: right;
    right: 100%;
}

.content12-list li:last-of-type .huki .huki-left:before,
.content12-list li:last-of-type .huki .huki-right:before {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
}

.content12-list li+li {
    margin-top: 60px;
}

.content12-list .left {
    width: 140px;
}

.content12-list .right {
    width: calc(100% - 160px);
}

.content12-list .num-box {
    width: 120px;
    height: 120px;
    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;
    color: var(--color01);
    line-height: 1;
    border-radius: 50%;
    background: var(--color02);
    position: relative;
    z-index: 0;
}

.content12-list .num-box:before {
    content: "";
    width: 90%;
    height: 90%;
    border: 2px solid #fff;
    border-radius: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    position: absolute;
    top: 50%;
    left: 50%;
    z-index: 0;
}

.content12-list .num-box .point {
    font-size: 20px;
}

.content12-list .num-box .num {
    display: block;
    font-weight: 500;
    font-size: 50px;
}

.content12-list .txtbox .tit {
    margin-bottom: 5px;
    font-weight: 500;
    font-size: 20px;
    color: var(--color02);
}

.content12-list .txtbox .txt {
    line-height: 2;
}

@media (max-width: 599px) {
    .content12-list li {
        padding: 20px 10px;
    }

    .content12-list li .huki {
        width: 80%;
    }

    .content12-list .left {
        width: 100%;
    }

    .content12-list .right {
        width: 100%;
    }

    .content12-list .num-box {
        width: 60px;
        height: 60px;
        position: absolute;
        top: 10px;
        left: 10px;
    }

    .content12-list .num-box .point {
        font-size: 10px;
    }

    .content12-list .num-box .num {
        font-size: 24px;
    }

    .content12-list .txtbox .tit {
        margin-bottom: 30px;
        padding-left: 70px;
    }

    .content12-list .txtbox .txt {
        line-height: 1.6;
    }
}

/* ========== content13 ========== */
.content13-list>dl {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
    align-items: center;
    -ms-flex-align: center;
    padding: 50px 10px;
    border-top: 1px solid #bcbcbc;
}

.content13-list>dl:last-of-type {
    border-bottom: 1px solid #bcbcbc;
}

.content13-list dt {
    width: 180px;
    font-weight: bold;
}

.content13-list dd {
    width: calc(100% - 200px);
}

.content13-list .ch-list dt,
.content13-list .ch-list dd{
  width:100%;
}

.content13-list .ch-list dt{
  color:var(--color02);
  position: relative;
  padding-left:15px;
}

.content13-list .ch-list dt::before {
    content: "";
    display: inline-block;
    width: 10px;
    height: 10px;
    background-color: var(--color02);
    border-radius: 50%;
    position: absolute;
    top: 6px;
    left: 0;
}

.recruit-shikaku-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.recruit-shikaku-list+.recruit-shikaku-list {
    margin-top: 0.5em;
}

.recruit-shikaku-list dt {
    width: 10em;
}

.recruit-shikaku-list dt::after {
    content: "：";
    display: inline-block;
}

.recruit-shikaku-list dd {
    width: 10%;
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
}

@media (max-width: 599px) {
    .content13-list>dl {
        padding: 20px 0;
    }

    .content13-list dt {
        width: 100%;
        margin-bottom: 5px;
        font-weight: 600;
    }

    .content13-list dd {
        width: 100%;
    }

    .recruit-shikaku-list {
        margin-left: 1em;
        font-size: 90%;
    }

    .recruit-shikaku-list dd {
        padding-left: 1em;
    }
}

/* ========== content14 ========== */
.content14-list .pic {
    width: calc(100% - 30px);
}

.content14-list .txtbox {
    width: calc(100% - 30px);
    margin-top: -50px;
    margin-bottom: 20px;
    margin-left: auto;
    padding: 20px 20px;
    background: var(--color01);
    position: relative;
    z-index: 1;
}



.content14-list .txtbox .tit.red-border:after {
    background: var(--color04);
}

.content14-list .txtbox .day {
    -ms-flex-negative: 0;
    flex-shrink: 0;
    font-weight: normal;
    font-size: 14px;
    color: var(--color02);
}


.content14-list .btn {
    position: absolute;
    bottom: -35px;
    right: 15px;
    z-index: 1;
}

.content14-list .border-y {
    width: 2px;
    height: 60%;
    position: absolute;
    bottom: 5px;
    left: -5px;
    z-index: 0;
}

.content14-list .border-y:before {
    content: "";
    width: 100%;
    height: 20%;
    background: var(--color02);
    position: absolute;
    top: 0;
    z-index: 0;
}

.content14-list .border-y:after {
    content: "";
    width: 100%;
    height: 75%;
    background: var(--color02);
    position: absolute;
    bottom: 0;
    z-index: 0;
}

.content14-list .border-x {
    width: 25%;
    height: 2px;
    position: absolute;
    bottom: -5px;
    left: 5px;
    z-index: 0;
}

.content14-list .border-x:before {
    content: "";
    width: 75%;
    height: 100%;
    background: var(--color02);
    position: absolute;
    left: 0;
    z-index: 0;
}

.content14-list .border-x:after {
    content: "";
    width: 20%;
    height: 100%;
    background: var(--color02);
    position: absolute;
    right: 0;
    z-index: 0;
}

.content14-list .pic:before {
    border-width: 0 0 200px 200px;
}

.content14-list .pic:before {
    border-width: 0 0 40px 200px;
}

/* ========== content15 ========== */
.content15-intro .pic {
    margin-bottom: 30px;
}

.content15-intro .txtbox .tit {
    font-weight: 600;
    font-size: 24px;
    color: var(--color02);
    text-align: center;
}

.content15-intro .txtbox .txt {
    margin-top: 20px;
    text-align: center;
}

.content15-list .txtbox {
    margin-top: -25px;
    position: relative;
    z-index: 0;
}

.content15-list .txtbox .tit {
    width: 80%;
    margin: 0 auto 20px;
    padding: 10px;
    font-size: 20px;
    color: var(--color02);
    text-align: center;
    background: var(--color03);
}

.content15-list .txtbox .txt {
    line-height: 2;
}

.content15-supplement {
    margin-top: 20px;
    padding: 50px 30px;
}

.content15-supplement .txt {
    font-weight: bold;
    font-size: 20px;
}

.content15-price {
    color: #3c3c3c;
}

.content15-price li+li {
    margin-top: 50px;
}

.content15-price li .item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: baseline;
    align-items: baseline;
    -ms-flex-align: baseline;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding-bottom: 20px;
    border-bottom: 2px solid rgba(191, 191, 191, 1);
}

.content15-price .left {
    width: 180px;
}

.content15-price .right {
    width: calc(100% - 200px);
    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;
}

.content15-price .item .tit {
    font-weight: bold;
}

.content15-price .item .txt {
    width: calc(100% - 220px);
    line-height: 2;
}

.content15-price .item .yen {
    width: 190px;
    -ms-flex-item-align: end;
    align-self: flex-end;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    font-weight: bold;
    text-align: right;
}

.content15-price .item .em {
    padding: 0 5px;
    font-size: 36px;
}

    .content15-intro .txtbox .tit.for-sp {
        font-size: 20px;
    }

@media (max-width: 599px) {


    .content15-list .txtbox .tit {
        margin-bottom: 10px;
        width: 96%;
    }

    .content15-supplement {
        margin-top: 10px;
        padding: 20px 20px;
    }

    .content15-supplement .txt {
        font-size: 17px;
    }

    .content15-price li+li {
        margin-top: 30px;
    }

    .content15-price li .item {
        padding-bottom: 10px;
    }

    .content15-price .left {
        width: 100%;
    }

    .content15-price .right {
        width: 100%;
        margin-top: 10px;
    }

    .content15-price .item .txt {
        width: 100%;
        line-height: 1.6;
    }

    .content15-price .item .yen {
        width: 100%;
    }

    .content15-price .item .em {
        font-size: 30px;
    }

    .content15-intro .txtbox .txt {
        text-align: left;
    }
}

/* ========== content16 ========== */
.content16 {
    position: relative;
    z-index: 1;
}

.content16 .back {
    width: 100%;
    height: 100%;
    -webkit-filter: brightness(0.7);
    filter: brightness(0.7);
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
}

.content16 .tit {
    margin-bottom: 40px;
    font-weight: bold;
    font-size: 24px;
    color: var(--color01);
}

.content16 li {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    align-items: center;
    -ms-flex-align: center;
    color: var(--color01);
}

.content16 li:before {
    content: "";
    width: 32px;
    height: 28px;
    display: inline-block;
    margin-right: 20px;
    background-image: url('/import/tenant_1/162.43.17.165/images/check02.webp');
    background-size: cover;
    background-repeat: no-repeat;
}

.content16 li+li {
    margin-top: 20px;
}

.content16 .txtbox {
    width: 70%;
    padding: 50px;
    background: var(--color01);
    position: absolute;
    top: calc(100% + -40px);
    right: 50px;
    z-index: 1;
}

.content16 .txtbox .txt {
    line-height: 2;
}

@media (max-width: 1024px) {

    .content16 .txtbox {
        width: 95%;
        padding: 30px;
        -webkit-transform: translateX(-50%);
        transform: translateX(-50%);
        top: calc(100% + -80px);
        left: 50%;
        right: auto;
    }
}
    .content16 .tit.for-sp {
        margin-bottom: 20px;
        font-size: 22px;
    }
@media (max-width: 599px) {


    .content16 .tit {
        margin-bottom: 20px;
        font-size: 22px;
    }

    .content16 .txtbox {
        width: 95%;
        margin: 30px auto 0;
        padding: 20px;
        -webkit-transform: none;
        transform: none;
        position: static;
        bottom: 0;
        right: 0;
    }

    .content16 li:before {
        width: 22px;
        height: 18px;
        margin-right: 10px;
    }
}

/* ========== content17 ========== */
.content17 .left {
    width: 46%;
}

.content17 .right {
    width: 46%;
}

.content17.content17-left-small .left {
    width: 35%;
}

.content17.content17-left-small .right {
    width: 60%;
}

.content17 .txtbox .tit {
    margin-bottom: 10px;
    font-weight: 500;
    font-size: 24px;
}

.content17 .txtbox .txt {
    line-height: 2;
}

.content17 .txtbox .txt+.txt {
    margin-top: 20px;
}

@media (max-width: 599px) {

    .content17 .left,
    .content17.content17-left-small .left {
        width: 100%;
    }

    .content17 .right,
    .content17.content17-left-small .right {
        width: 100%;
        margin-top: 10px;
    }

    .content17 .txtbox .tit {
        font-size: 18px;
    }

    .content17 .txtbox .txt {
        line-height: 1.6;
    }
}

/* ========== content18 ========== */
.content18-list .pic {
    width: calc(100% - 40px);
}

.content18-list .tit {
    width: calc(50% + 30px);
    margin-top: -50px;
    margin-bottom: 20px;
    margin-left: auto;
    padding: 20px 20px 20px;
    font-weight: bold;
    background: var(--color01);
    position: relative;
    z-index: 1;
}

.content18-list .tit:after {
    content: "";
    width: 26px;
    height: 7px;
    background-image: var(--bg10);
    background-size: contain;
    background-repeat: no-repeat;
    position: absolute;
    bottom: 5px;
    right: 5px;
    z-index: 0;
}

.content18-list li:last-of-type .tit:after {
    display: none;
}

.content18-txt {
    width: 90%;
    margin: 0 auto;
    line-height: 2;
}

.content18-explanation .txtbox .txt {
    line-height: 2;
}

@media (max-width: 599px) {
    .content18-txt {
        width: 100%;
        line-height: 1.6;
    }
}

/* ========== content19 ========== */
.content19-img .pic {
    width: calc(100% - 50px);
}

.content19-img .txtbox {
    width: calc(100% - 70px);
    margin-top: -60px;
    margin-left: auto;
    padding: 20px;
    background: var(--color01);
    position: relative;
    z-index: 1;
}

.content19-img .txtbox.new {
    width: 100%;
    margin-top: 0;
    margin-left: 0;
    padding: 20px;
    background: var(--color01);
    position: relative;
    z-index: 1;
}

.content19-img .txtbox .day {
    font-size: 10px;
    position: absolute;
    top: 5px;
    right: 10px;
    z-index: 0;
}

.content19-img .txtbox .cate {
    font-weight: bold;
    font-size: 18px;
}

.content19-img .txtbox .tit {
    margin-top: 5px;
    padding-top: 10px;
    font-size: 28px;
    position: relative;
    z-index: 0;
}

.content19-img .txtbox .tit:before {
    content: "";
    width: 20px;
    height: 2px;
    background: var(--color02);
    position: absolute;
    top: 0;
    left: 0;
    z-index: 0;
}

.content19-txt .txtbox .txt {
    line-height: 2;
}

.content19-txt .btn {
    margin-left: 50px;
}

@media (max-width: 599px) {
    .content19-img .pic {
        width: calc(100% - 30px);
    }

    .content19-img .txtbox {
        width: calc(100% - 30px);
    }

    .content19-img .txtbox .cate {
        font-size: 16px;
    }

    .content19-img .txtbox .tit {
        font-size: 18px;
    }

    .content19-txt .btn {
        margin-left: 0;
    }

    .content19-txt .btn>* {
        margin-left: auto;
        margin-right: auto;
    }
}

/* ========== content20 ========== */
.content20-list li+li {
    margin-top: 30px;
}

.content20-list .subbox {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
    align-items: center;
    -ms-flex-align: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin-bottom: 5px;
    padding: 0px 20px;
}

.content20-list a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
    align-items: center;
    -ms-flex-align: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding: 20px 50px;
    position: relative;
    z-index: 0;
}

.content20-list a:before {
    content: "";
    width: 100%;
    height: 100%;
    background-image: url('/import/tenant_1/162.43.17.165/images/catch01.webp');
    background-size: 100% 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
}

.content20-list .cate {
    display: flex;
}

.content20-list .cate>span {
    display: inline-block;
    background: var(--color02);
    padding: 3px 10px;
    line-height: 1em;
    margin: 0 3px 3px 0;
    color: #fff;
    font-size: 14px;
}

.content20-list .tit {
    width: calc(100% - 120px);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.content20-list .btn {
    width: 100px;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    padding-right: 20px;
    position: relative;
    z-index: 0;
}

.content20-list .btn:after {
    content: "";
    width: 12px;
    height: 10px;
    background-image: url('/import/tenant_1/162.43.17.165/images/arrow04.webp');
    background-size: contain;
    background-repeat: no-repeat;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    position: absolute;
    top: 50%;
    right: 0;
    z-index: 0;
}

.content20-txt .subbox {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
    align-items: center;
    -ms-flex-align: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin-bottom: 5px;
    padding: 0px 20px;
}

.content20-txt .tit {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
    align-items: center;
    -ms-flex-align: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin-bottom: 20px;
    padding: 20px 50px;
    font-size: 26px;
    position: relative;
    z-index: 0;
}

.content20-txt .tit:before {
    content: "";
    width: 100%;
    height: 100%;
    background-image: url('/import/tenant_1/162.43.17.165/images/catch01.webp');
    background-size: 100% 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
}

.content20-txt .txt {
    padding: 0px 20px;
    line-height: 2;
}

.content20-txt .cate {
    color: #999;
}

@media (max-width: 1024px) {

    .content20-list a,
    .content20-txt .tit {
        padding: 20px 30px;
    }
}

@media (max-width: 599px) {
    .content20-list a {
        padding: 20px;
    }

    .content20-list .day {
        font-size: 14px;
    }

    .content20-list .cate {
        font-size: 14px;
    }

    .content20-list .tit {
        width: calc(100% - 100px);
        font-size: 15px;
    }

    .content20-list .btn {
        width: 90px;
        font-size: 14px;
    }

    .content20-txt .tit {
        margin-bottom: 20px;
        padding: 20px;
        font-size: 18px;
    }

    .content20-txt .btn>* {
        margin-left: auto;
        margin-right: auto;
    }
}

/* ========== content21 ========== */
.content21-box .left {
    width: calc(100% - 210px);
}

.content21-box {
    width: 70%;
    margin: 0 auto;
    padding: 30px;
    background: var(--color01);
    position: relative;
    z-index: 0;
}

.content21-box .border-y {
    width: 1px;
    height: 65px;
    position: absolute;
    bottom: 5px;
    left: -5px;
    z-index: 0;
}

.content21-box .border-y:before {
    content: "";
    width: 100%;
    height: 20%;
    background: var(--color02);
    position: absolute;
    top: 0;
    z-index: 0;
}

.content21-box .border-y:after {
    content: "";
    width: 100%;
    height: 75%;
    background: var(--color02);
    position: absolute;
    bottom: 0;
    z-index: 0;
}

.content21-box .border-x {
    width: 65px;
    height: 1px;
    position: absolute;
    bottom: -5px;
    left: 5px;
    z-index: 0;
}

.content21-box .border-x:before {
    content: "";
    width: 75%;
    height: 100%;
    background: var(--color02);
    position: absolute;
    left: 0;
    z-index: 0;
}

.content21-box .border-x:after {
    content: "";
    width: 20%;
    height: 100%;
    background: var(--color02);
    position: absolute;
    right: 0;
    z-index: 0;
}

.content21-box .txt {
    font-weight: bold;
}

.content21-box .btn {
    margin-top: 0;
}

@media (max-width: 1024px) {
    .content21-box {
        width: 90%;
        padding: 30px 20px;
    }
}

@media (max-width: 599px) {
    .content21-box {
        padding: 20px 20px;
    }

    .content21-box .left {
        width: 100%;
    }

    .content21-box .right {
        width: 100%;
        margin-top: 10px;
    }
}

/* ========== content22 ========== */
.content22 .pic {
    width: 60%;
    margin-left: auto;
    margin-right: 80px;
    position: relative;
    z-index: 0;
}

.content22.mk2 .pic {
    margin-left: 80px;
    margin-right: auto;
}

.content22 .pic:after {
    content: "";
    width: 100%;
    height: 100%;
    background: var(--color02);
    position: absolute;
    top: 40px;
    right: -50px;
    z-index: -1;
}

.content22 .txtbox {
    width: 70%;
    margin-top: -80px;
    margin-bottom: 15px;
    margin-left: 15px;
    padding: 50px 40px;
    background: var(--color01);
    position: relative;
    z-index: 1;
}

.content22.mk2 .txtbox {
    margin-left: auto;
    margin-right: 15px;
}

.content22 .txtbox .tit {
    margin-bottom: 20px;
    font-weight: bold;
    font-size: 24px;
    color: var(--color02);
}

.content22 .txtbox .txt {
    line-height: 2;
}

.content22 .border-y {
    width: 3px;
    height: calc(100% - 10px);
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    position: absolute;
    top: 50%;
    left: -10px;
    z-index: 0;
}

.content22 .border-y:before {
    content: "";
    width: 100%;
    height: 20%;
    background: var(--color02);
    position: absolute;
    top: 0;
    z-index: 0;
}

.content22 .border-y:after {
    content: "";
    width: 100%;
    height: 75%;
    background: var(--color02);
    position: absolute;
    bottom: 0;
    z-index: 0;
}

.content22 .border-x {
    width: 50%;
    height: 3px;
    position: absolute;
    bottom: -10px;
    left: 5px;
    z-index: 0;
}

.content22 .border-x:before {
    content: "";
    width: 75%;
    height: 100%;
    background: var(--color02);
    position: absolute;
    left: 0;
    z-index: 0;
}

.content22 .border-x:after {
    content: "";
    width: 20%;
    height: 100%;
    background: var(--color02);
    position: absolute;
    right: 0;
    z-index: 0;
}

@media (max-width: 1024px) {
    .content22 .pic {
        width: 70%;
        margin-right: 60px;
    }

    .content22 .pic:after {
        top: 30px;
        right: -40px;
    }

    .content22 .txtbox {
        width: 80%;
        padding: 30px;
    }

    .content22 .txtbox .tit {
        font-size: 22px;
    }
}

@media (max-width: 599px) {

    .content22 .pic,
    .content22.mk2 .pic {
        width: 80%;
        margin-right: 50px;
        margin-left: auto
    }

    .content22 .pic:after {
        top: 20px;
        right: -20px;
    }

    .content22 .txtbox,
    .content22.mk2 .txtbox {
        width: 95%;
        margin-top: 40px;
        padding: 20px;
        margin-left: 15px;
        margin-right: 0;
    }

    .content22 .txtbox .tit {
        margin-bottom: 10px;
        font-size: 18px;
    }

    .content22 .txtbox .txt {
        line-height: 1.6;
    }

    .content22 .border-x {
        width: calc(100% - 10px);
        -webkit-transform: translateX(-50%);
        transform: translateX(-50%);
        left: 50%;
    }
}

/* ========== content23 ========== */
.content23-list {
    width: 80%;
    margin: 0 auto;
}

.content23-list li+li {
    margin-top: 40px;
}

.content23-list .faq {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    position: relative;
    z-index: 0;
}

.content23-list .faq-a {
    -webkit-box-align: center;
    align-items: center;
    -ms-flex-align: center;
}

.content23-list .faq+* {
    margin-top: 10px;
}

.content23-list .js-toggle {
    cursor: pointer;
}

.content23-list .js-toggle+* {
    display: none;
}

.content23-list .faq-q:after {
    content: "";
    width: 14px;
    height: 2px;
    background: var(--color02);
    position: absolute;
    top: 21px;
    right: 10px;
    z-index: 0;
}

.content23-list .faq-q:before {
    content: "";
    width: 2px;
    height: 14px;
    background: var(--color02);
    -webkit-transition: 0.3s;
    transition: 0.3s;
    position: absolute;
    top: 15px;
    right: 16px;
    z-index: 0;
}

.content23-list .faq-q.is-parent:before {
    -webkit-transform: rotate(-90deg) translateY(-6px);
    transform: rotate(-90deg) translateY(-6px);
    right: 10px;
}

.content23-list .mark {
    width: 50px;
    height: 50px;
    font-size: 26px;
    color: var(--color01);
    line-height: 48px;
    text-align: center;
    border-radius: 50%;
    background: var(--color02);
}

.content23-list .faq-a .mark {
    background: var(--color04);
}

.content23-list .txt {
    width: calc(100% - 80px);
    margin-left: 30px;
    padding: 10px 35px 10px 0px;
}

.content23-list .faq-a .txt {
    padding: 40px 30px;
    background: var(--color01);
}

@media (max-width: 1024px) {
    .content23-list {
        width: 90%;
    }
}

@media (max-width: 599px) {
    .content23-list {
        width: 100%;
    }

    .content23-list .mark {
        width: 40px;
        height: 40px;
        font-size: 20px;
        line-height: 38px;
    }

    .content23-list .txt {
        margin-left: 20px;
        padding: 0px 15px 10px 0px;
    }

    .content23-list .faq-a .txt {
        width: calc(100% - 70px);
        padding: 20px 20px;
        background: var(--color01);
    }
}

/* ========== content24 ========== */
.content24-list {
    padding-left: 50px;
    padding-right: 50px;
}

.content24-list .list li+li {
    margin-top: 50px;
}

.content24-list .list .tit {
    margin-bottom: 20px;
    font-size: 20px;
    color: var(--color02);
}

.content24-list .list .txt {
    padding-top: 10px;
    line-height: 2;
    border-top: 1px solid #ddd;
}

@media (max-width: 599px) {
    .content24-list {
        padding-left: 20px;
        padding-right: 20px;
    }
}

/* ========== content25 ========== */
.content25-list dl {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    padding: 25px 10px;
    border-top: 1px solid #bcbcbc;
}

.content25-list dl:last-of-type {
    border-bottom: 1px solid #bcbcbc;
}

.content25-list dt {
    width: 180px;
    margin-top: 20px;
    font-weight: bold;
    line-height: 2;
}

.content25-list .essential:after {
    content: "*";
    display: inline-block;
    margin-left: 5px;
    color: var(--color04);
}

.content25-list dd {
    width: calc(100% - 200px);
}

@media (max-width: 599px) {
    .content25-list dt {
        width: 100%;
        margin-top: 0;
    }

    .content25-list dd {
        width: 100%;
        margin-top: 10px;
    }
}

/* list-recruit */
.list-recruit .list-inner {
    padding: 1em;
    background-color: var(--color01);
}

.list-recruit dl {
    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;
    margin-bottom: 0.5em;
}

.list-recruit dt {
    width: 30%;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    font-weight: bold;
}

.list-recruit dd {
    width: 65%;
}

@media(max-width:1024px) {
    .list-recruit dt {
        width: 100%;
    }

    .list-recruit dd {
        width: 100%;
    }
}

/* 見たまま編集 */
[data-element-id] .tab-item {
    height: auto;
    display: block;
    counter-increment: tab;
    visibility: visible;
    margin-bottom: 30px;
    border: solid 5px blue;
    opacity: 1;
}

[data-element-id] .tab-item:before {
    content: counter(tab) "個目のタブ";
    display: block;
    margin-bottom: 10px;
    font-weight: bold;
    font-size: 16px;
    color: var(--color01);
    text-align: center;
    background: blue;
}

[data-element-id] [class*="fead-diagonal-"] {
    opacity: 1;
}

[data-element-id] .fead-diagonal-left {
    -webkit-transform: inherit;
    transform: inherit;
}

[data-element-id] .fead-line:before,
.fead-line-in>*:before {
    width: 100% !important;
}

[data-element-id] .fead-order>* {
    opacity: 1;
    -webkit-transform: inherit;
    transform: inherit;
}

[data-element-id] .fix-btn {
    display: block;
    border: solid 4px green;
    position: relative;
    bottom: 0;
    right: 0;
}

[data-element-id] .fix-btn:after {
    content: "固定ボタン";
    display: block;
    padding: 5px;
    font-weight: 700;
    font-size: 16px;
    color: var(--color01);
    text-align: center;
    background: green;
}

[data-element-id] .gnav li ul {
    display: block;
    position: relative;
}

[data-element-id]#gnav2 li ul {
    display: block;
}

[data-element-id] .top-mv .box {
    max-height: 100%;
}

[data-element-id] .top-mv ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
}

[data-element-id] .top-mv li {
    width: calc(94% / 3);
    margin: 1%;
}

[data-element-id] .content06-list .js-toggle+* {
    display: block;
}

[data-element-id] .content07-list ul.slick01 {
    max-height: 100%;
}

[data-element-id] .content07-list ul.slick01>* {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

[data-element-id] .content07-list ul.slick03 {
    max-height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

[data-element-id] .content07-list .slick01 li {
    width: 50%;
}

[data-element-id] .content07-list .slick01 li:nth-of-type(n + 3) {
    display: none;
}

[data-element-id] .content07-list .slick03 li {
    width: calc(100% / 3);
}

[data-element-id] .content23-list .js-toggle+* {
    display: block;
}

[data-element-id] .up-show\@tb {
    display: block;
    border: solid 4px green;
    position: relative;
}

[data-element-id] .up-show\@tb:after {
    content: "モバイル用";
    display: block;
    padding: 5px;
    font-weight: 700;
    font-size: 16px;
    color: var(--color01);
    text-align: center;
    background: green;
}

[data-element-id] .up-show\@sp {
    display: block;
    border: solid 4px green;
    position: relative;
}

[data-element-id] .up-show\@sp:after {
    content: "モバイル用";
    display: block;
    padding: 5px;
    font-weight: 700;
    font-size: 16px;
    color: var(--color01);
    text-align: center;
    background: green;
}








.content18-list .item.up-pos-rel .num-box {
    width: 83px;
    height: 83px;
    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;
    color: var(--color01);
    line-height: 1;
    border-radius: 50%;
    background-color: var(--color04);
    position: absolute;
    top: -30px;
    left: -30px;
    z-index: 1;
}

.content18-list .item.up-pos-rel .num-box:before {
    content: "";
    width: 90%;
    height: 90%;
    border: 2px solid #fff;
    border-radius: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    position: absolute;
    top: 50%;
    left: 50%;
    z-index: 0;
}

.content18-list .item.up-pos-rel .num-box .point {
    font-size: 14px;
}

.content18-list .item.up-pos-rel .num-box .num {
    display: block;
    margin-top: 5px;
    font-weight: 500;
    font-size: 24px;
}

.content18-list .item.up-pos-rel .num-box .border {
    width: 3px;
    height: 16px;
    border-radius: 20px;
    background: var(--color04);
    position: absolute;
    bottom: calc(100% + 5px);
}

.content18-list .item.up-pos-rel .num-box .border:before {
    content: "";
    width: 3px;
    height: 100%;
    border-radius: 20px;
    background: var(--color04);
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    -webkit-transform-origin: bottom;
    transform-origin: bottom;
    position: absolute;
    top: 0;
    left: -10px;
    z-index: 0;
}

.content18-list .item.up-pos-rel .num-box .border:after {
    content: "";
    width: 3px;
    height: 100%;
    border-radius: 20px;
    background: var(--color04);
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    -webkit-transform-origin: bottom;
    transform-origin: bottom;
    position: absolute;
    top: 0;
    right: -10px;
    z-index: 0;
}


@media(max-width:1024px) {
    .content18-list .item.up-pos-rel .num-box {
        top: -22px;
        left: -22px;
    }
}



@media(max-width:599px) {
    .content18-list .item.up-pos-rel .num-box {
        top: -8px;
        left: -8px;
        width: 60px;
        height: 60px;
    }

    .content18-list .item.up-pos-rel .num-box .border {
        height: 12px;
    }

    .content18-list .item.up-pos-rel .num-box .point {
        font-size: 10px;
    }

    .content18-list .item.up-pos-rel .num-box .num {
        font-size: 18px;
    }
}


.pic-tag {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    z-index: 1;
    padding: 10px;
}

.pic-tag>* {
    display: inline-block;
    line-height: 1em;
    font-size: 14px;
    color: #fff;
    font-weight: bold;
    background-color: var(--color02);
    padding: 3px 10px;
    border-radius: 10px;
    margin: 0 3px 3px 0;
}

.lower-mv .breadcrumbs {
    width: 98%;
    max-width: 1200px;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    position: absolute;
    bottom: 20px;
    left: 50%;
    z-index: 1;
}

@media(max-width:1024px) {
    .lower-mv .breadcrumbs {
        bottom: 5px;
    }
}

/*パンクズ*/
.breadcrumbs ol {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.breadcrumbs li {
    margin: 2px 4px;
    font-size: 14px;
    color: var(--color01);
    letter-spacing: 3px;
}

.breadcrumbs li+li:before {
    content: "▶︎";
    display: inline-block;
    margin-right: 5px;
    font-size: 10px;
}

@media (max-width: 599px) {
    .breadcrumbs li {
        margin: 2px 2px;
        font-size: 12px;
        letter-spacing: 1.2px;
    }

    .breadcrumbs li+li:before {
        margin-right: 2px;
    }
}

.form .num-row {
    display: flex;
    align-items: center;
}

.form .num-row .post-mark {
    width: 30px;
    font-size: 24px;
    text-align: center;
    line-height: 30px;
    font-weight: bold;
    color: var(--color02);
}

.form .num-row input {
    width: calc(100% - 30px);
}

.check-boxer label {
    display: inline-block;
    margin: 0.5em 0;
    padding: 0 10px 0 24px;
    position: relative;
    margin-right: 15px;
}

.check-boxer label::before {
    content: "";
    width: 20px;
    height: 20px;
    display: block;
    border: 2px solid #dcdcdc;
    border-radius: 3px;
    background-color: white;
    position: absolute;
    top: 1px;
    left: 0;
}

.check-boxer label:hover {
    text-decoration: underline;
    cursor: pointer;
}

.check-boxer input {
    display: none;
}

.check-boxer input:checked+label {
    text-decoration: underline;
}

.check-boxer 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(--color04);
    line-height: 1;
    background-color: transparent;
    position: absolute;
    top: 2px;
    left: 2px;
}

.up-content-area ul>li::before {
    background-color: var(--color02);
    top: 0.5em;
}

.up-content-area ol li::before {
    color: var(--color02);
    top: 20%;
    font-weight: bold;
}

.up-content-area h2 {
    padding: 0.1em 0.1em 0.1em 0.5em;
    font-size: clamp(1.3em, 1.4em, 1.5em);
    background-color: var(--color02);
}

.up-content-area h3 {
    font-size: clamp(1.2em, 1.3em, 1.4em);
    border-bottom: 3px solid var(--color02);
}

.up-content-area h4 {
    font-size: clamp(1.1em, 1.2em, 1.3em);
    color: var(--color02);
}

.up-content-area h4::before {
    background-color: var(--color02);
    top: 0.5em;
}

.NEWBLOGLIST .item>a {
    display: block;
    background-color: #fff;
    padding: 15px;
}

.content25-list.mk2 dt {
    margin-top: 0px;
}

.content25-list.mk2 dd {
    margin-top: 4px;
}

.btn-cmn01 li button {
    max-width: 100%;
    display: block;
    overflow: hidden;
    padding: 10px 20px;
    font-size: 14px;
    color: var(--color01);
    text-align: center;
    background: var(--color02);
    position: relative;
    z-index: 0;
}

.c-logo {
    background-color: #fff;
    border-radius: 10px;
}

.color-w {
    color: #fff;
}

.tight {
    letter-spacing: -.05em;
}

.textion-list {
    display: block;
}

.textion-list li {
    padding-left: 1rem;
    font-weight: bold;
    position: relative;
    margin-bottom: 5px;
}

.textion-list li:last-child {
    margin-bottom: 0px;
}

.textion-list li::before {
    content: "";
    display: inline-block;
    width: 10px;
    height: 10px;
    background-color: var(--color02);
    border-radius: 50%;
    position: absolute;
    top: 6px;
    left: 0;
}

.ttl-cmn01.for-sp {
    margin-bottom: 20px;
}

.ttl-cmn01.for-sp .txt {
    font-size: 26px;
}

.ttl-cmn02 .txt.for-sp {
    padding: 10px 20px 10px 80px;
    font-size: 16px;
}


.ttl-cmn03.for-sp {
    margin-bottom: 20px;
}

.ttl-cmn03.for-sp .txt {
    font-size: 22px;
}

.ttl-cmn04.for-sp .txt {
    font-size: 24px;
}

.ttl-cmn05.for-sp .txt {
    font-size: 22px;
     padding:0 10px;
}

.ttl-cmn05.ttl-cmn05-big.for-sp .txt {
    padding: 0 50px;
}

[data-element-id].top-mv .catch,
[data-element-id] .content03-img .tit {
  position:relative;
}

.top-mv .catch.for-sp .line {
        padding: 10px 15px;
        font-size: 16px;
        line-height: 2.5;
        letter-spacing: 1px;
    }
    
[data-element-id].for-sp{
  max-width:375px;
}

[data-element-id].breadcrumbs li{
  color:#000;
}

.uk-lb{
  cursor:pointer;
}

[data-element-id].ttl-cmn02 .num-box{
  z-index:2;
}

[data-element-id].hun-btn{
  display:none;
  opacity:0;
}

[data-element-id] .lower-mv .catch.for-sp .txt {
    font-size: 20px;
}

[data-element-id].fix-btn{
  max-width:375px;
}

@media(max-width:1024px){
.gnav .dropdown {
    cursor: auto;
}
}
