@charset "utf-8";

/*フォント読み込み*/
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100;300;400;500;700;900&display=swap");

/*小見出しに使用*/
@import url("https://fonts.googleapis.com/css2?family=Yomogi&display=swap");

/*「なんでフジタ塗装？」などの数字に使用*/
@import url("https://fonts.googleapis.com/css2?family=Tangerine&display=swap");

/*フォントオーサムをcssで読み込み*/
@import url("https://use.fontawesome.com/releases/v6.2.0/css/all.css");

html {
    --txt-font-00: "Noto Sans JP", sans-serif;
    --txt-font-01: "Yu Mincho Light", "YuMincho", "Yu Mincho", "游明朝体", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", sans-serif;
    --txt-font-02: "Yomogi", cursive;
    --txt-font-03: "Tangerine", cursive;
    --txt-color-00: #fff;
    --txt-color-01: #000;
    --txt-color-02: #f87e02;
    --txt-color-03: #ddd;
    --txt-color-04: #6fc23f;
    --txt-color-05: #59863f;
    --txt-color-06: #9a9a9a;
    --txt-color-07: #5b93ce;
    --txt-color-08: #e8feda;
    --txt-color-09: #fdead7;
    --txt-color-10: #dfe8f6;
    --txt-color-11: #356394;
    --txt-color-12: #fab0b1;
    --txt-color-13: #f70e32;
    --txt-color-14: #a78f48;
    --txt-color-15: #fef4fa;
    --txt-color-16: rgba(255, 255, 255, 0.5);
    --txt-color-17: #eee8dc;
    --txt-color-18: rgb(222 220 208 / 50%);
    --txt-color-19: rgb(173 193 222 / 50%);
    --txt-color-20: rgb(240 177 114 / 40%);
    --txt-color-21: #f6eed7;
    --txt-color-22: #d16500;
    --txt-color-23: #f0e5c9;
    --back-color-00: #fff;
    --back-color-01: #000;
    --back-color-02: #f87e02;
    --back-color-03: #ddd;
    --back-color-04: #6fc23f;
    --back-color-05: #59863f;
    --back-color-06: #9a9a9a;
    --back-color-07: #5b93ce;
    --back-color-08: #e8feda;
    --back-color-09: #fdead7;
    --back-color-10: #dfe8f6;
    --back-color-11: #356394;
    --back-color-12: #fab0b1;
    --back-color-13: #f70e32;
    --back-color-14: #a78f48;
    --back-color-15: #fef4fa;
    --back-color-16: rgba(255, 255, 255, 0.5);
    --back-color-17: #eee8dc;
    --back-color-18: rgb(222 220 208 / 50%);
    --back-color-19: rgb(173 193 222 / 50%);
    --back-color-20: rgb(240 177 114 / 40%);
    --back-color-21: #f6eed7;
    --back-color-22: #d16500;
    --back-color-23: #f0e5c9;
    --ttl-color-00: #fff;
    --ttl-color-01: #000;
    --ttl-color-02: #f87e02;
    --ttl-color-03: #ddd;
    --ttl-color-04: #6fc23f;
    --ttl-color-05: #59863f;
    --ttl-color-06: #9a9a9a;
    --ttl-color-07: #5b93ce;
    --ttl-color-08: #e8feda;
    --ttl-color-09: #fdead7;
    --ttl-color-10: #dfe8f6;
    --ttl-color-11: #356394;
    --ttl-color-12: #fab0b1;
    --ttl-color-13: #f70e32;
    --ttl-color-14: #a78f48;
    --ttl-color-15: #fef4fa;
    --ttl-color-16: rgba(255, 255, 255, 0.5);
    --ttl-color-17: #eee8dc;
    --ttl-color-18: rgb(222 220 208 / 50%);
    --ttl-color-19: rgb(173 193 222 / 50%);
    --ttl-color-20: rgb(240 177 114 / 40%);
    --ttl-color-21: #f6eed7;
    --ttl-color-22: #d16500;
    --ttl-color-23: #f0e5c9;
    --btn-color-00: #fff;
    --btn-color-01: #000;
    --btn-color-02: #f87e02;
    --btn-color-03: #ddd;
    --btn-color-04: #6fc23f;
    --btn-color-05: #59863f;
    --btn-color-06: #9a9a9a;
    --btn-color-07: #5b93ce;
    --btn-color-08: #e8feda;
    --btn-color-09: #fdead7;
    --btn-color-10: #dfe8f6;
    --btn-color-11: #356394;
    --btn-color-12: #fab0b1;
    --btn-color-13: #f70e32;
    --btn-color-14: #a78f48;
    --btn-color-15: #fef4fa;
    --btn-color-16: rgba(255, 255, 255, 0.5);
    --btn-color-17: #eee8dc;
    --btn-color-18: rgb(222 220 208 / 50%);
    --btn-color-19: rgb(173 193 222 / 50%);
    --btn-color-20: rgb(240 177 114 / 40%);
    --btn-color-21: #f6eed7;
    --btn-color-22: #d16500;
    --btn-color-23: #f0e5c9;
}

/*===================================
基本設定
===================================*/
html {
    font-family: var(--txt-font-00);
    font-weight: 400;
    font-size: 18px;
    color: var(--txt-color-01);
    letter-spacing: 1px;
}

@media (max-width: 599px) {
    html {
        font-size: 16px;
    }
}

.common-txt-lh {
    line-height: 2;
}

@media (max-width: 599px) {
    .common-txt-lh {
        line-height: 1.8;
    }
}

.wrapper {
    overflow: hidden;
}

.innerwide {
    width: 94%;
    max-width: 94%;
    margin-left: auto;
    margin-right: auto;
}

/*テキスト4行...*/
.up-reader4 {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;

    -webkit-line-clamp: 4;
    ;
}

/*snsリンク*/
.snsbox>* a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    align-items: center;
    -ms-flex-align: center;
}

.snsbox .sns-instagram a:before {
    content: "";
    width: 30px;
    height: 30px;
    display: inline-block;
    margin-right: 5px;
    background-image: url(../images/sns-01.webp);
    background-repeat: no-repeat;
}

.snsbox.version-01 .sns-line a:before,
.snsbox.version-01 .sns-instagram a:before {
    margin-right: 0;
}

/*エフェクト*/
.fead-mv.mv {
    -webkit-transition: 1s ease-out;
    transition: 1s ease-out;
}

.fead-left {
    -webkit-transform: translateX(12%);
    transform: translateX(12%);
}

.fead-right {
    -webkit-transform: translateX(-12%);
    transform: translateX(-12%);
}

/*fead-up*/
.fead-up {
    -webkit-transition: 1s cubic-bezier(0.08, 1.06, 1, 1);
    transition: 1s cubic-bezier(0.08, 1.06, 1, 1);
    -webkit-transform: translateY(60px);
    transform: translateY(60px);
}

.fead-up-01.mv {
    -webkit-transition-delay: 0.8s;
    transition-delay: 0.8s;
}

/*見出しエフェクト*/
.fead-text-01>* {
    display: inline-block;
    opacity: 0;
    -webkit-transform: translateY(60px);
    transform: translateY(60px);
}

.fead-text-01.mv>*.textin {
    opacity: 1;
    -webkit-transition: all 0.6s ease;
    transition: all 0.6s ease;
    -webkit-transform: translateY(0);
    transform: translateY(0);
}

.fead-text-01>*.textin:nth-of-type(1) {
    -webkit-transition-delay: 0.12s;
    transition-delay: 0.12s;
}

.fead-text-01>*.textin:nth-of-type(2) {
    -webkit-transition-delay: 0.18s;
    transition-delay: 0.18s;
}

.fead-text-01>*.textin:nth-of-type(3) {
    -webkit-transition-delay: 0.24s;
    transition-delay: 0.24s;
}

.fead-text-01>*.textin:nth-of-type(4) {
    -webkit-transition-delay: 0.32s;
    transition-delay: 0.32s;
}

.fead-text-01>*.textin:nth-of-type(5) {
    -webkit-transition-delay: 0.24s;
    transition-delay: 0.48s;
}

.fead-text-01>*.textin:nth-of-type(6) {
    -webkit-transition-delay: 0.12s;
    transition-delay: 0.12s;
}

.fead-text-01>*.textin:nth-of-type(7) {
    -webkit-transition-delay: 0.48s;
    transition-delay: 0.18s;
}

.fead-text-01>*.textin:nth-of-type(8) {
    -webkit-transition-delay: 0.36s;
    transition-delay: 0.36s;
}

.fead-text-01>*.textin:nth-of-type(9) {
    -webkit-transition-delay: 0.12s;
    transition-delay: 0.12s;
}

.fead-text-01>*.textin:nth-of-type(10) {
    -webkit-transition-delay: 0.24s;
    transition-delay: 0.24s;
}

.fead-text-01>*.textin:nth-of-type(11) {
    -webkit-transition-delay: 0.32s;
    transition-delay: 0.32s;
}

.fead-text-01>*.textin:nth-of-type(12) {
    -webkit-transition-delay: 0.48s;
    transition-delay: 0.48s;
}

/*エフェクト*/
.cmn-effect-01 {
    -webkit-transform-origin: center bottom;
    transform-origin: center bottom;
    -webkit-animation-name: swing01;
    animation-name: swing01;
    -webkit-animation-duration: 4000ms;
    animation-duration: 4000ms;
    -webkit-animation-play-state: running;
    animation-play-state: running;
    -webkit-animation-timing-function: steps(2, end);
    animation-timing-function: steps(2, end);
    -webkit-animation-iteration-count: infinite;
    animation-iteration-count: infinite;

    -webkit-animation-fill-mode: both;
    animation-fill-mode: both;
}

@-webkit-keyframes swing01 {
    0% {
        -webkit-transform: translateY(0px);
        transform: translateY(0px);
    }

    100% {
        -webkit-transform: translateY(10px);
        transform: translateY(10px);
    }
}

@keyframes swing01 {
    0% {
        -webkit-transform: translateY(0px);
        transform: translateY(0px);
    }

    100% {
        -webkit-transform: translateY(10px);
        transform: translateY(10px);
    }
}

.cmn-effect-02 {
    -webkit-animation: 15s linear 0s infinite normal both rotate360;
    animation: 15s linear 0s infinite normal both rotate360;
}

@-webkit-keyframes rotate360 {
    0% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
    }

    100% {
        -webkit-transform: rotate(360deg);
        transform: rotate(360deg);
    }
}

@keyframes rotate360 {
    0% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
    }

    100% {
        -webkit-transform: rotate(360deg);
        transform: rotate(360deg);
    }
}

.cmn-effect-03 .ttl-main:after {
    -webkit-animation: 2s linear 0s normal both translatex;
    animation: 2s linear 0s normal both translatex;
}

.cmn-effect-03 .ttl-main:before {
    -webkit-animation: 1s linear 2s normal both opacity;
    animation: 1s linear 2s normal both opacity;
}

@-webkit-keyframes translatex {
    0% {
        -webkit-transform: translateX(-1200px);
        transform: translateX(-1200px);
    }

    100% {
        -webkit-transform: translateX(0);
        transform: translateX(0);
    }
}

@keyframes translatex {
    0% {
        -webkit-transform: translateX(-1000px);
        transform: translateX(-1000px);
    }

    100% {
        -webkit-transform: translateX(0);
        transform: translateX(0);
    }
}

@-webkit-keyframes opacity {
    0% {
        opacity: 0;
    }

    100% {
        opacity: 1;
    }
}

@keyframes opacity {
    0% {
        opacity: 0;
    }

    100% {
        opacity: 1;
    }
}

.cmn-effect-04 {
    -webkit-transform-origin: center bottom;
    transform-origin: center bottom;
    -webkit-animation-name: swing02;
    animation-name: swing02;
    -webkit-animation-duration: 4000ms;
    animation-duration: 4000ms;
    -webkit-animation-play-state: running;
    animation-play-state: running;
    -webkit-animation-timing-function: steps(2, end);
    animation-timing-function: steps(2, end);
    -webkit-animation-iteration-count: infinite;
    animation-iteration-count: infinite;

    -webkit-animation-fill-mode: both;
    animation-fill-mode: both;
}

@-webkit-keyframes swing02 {
    0% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
    }

    100% {
        -webkit-transform: rotate(15deg);
        transform: rotate(15deg);
    }
}

@keyframes swing02 {
    0% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
    }

    100% {
        -webkit-transform: rotate(15deg);
        transform: rotate(15deg);
    }
}

/*ボタンエフェクト*/
.btn-hover-01 .btn-inner>* {
    overflow: hidden;
    position: relative;
}

.btn-hover-01 .btn-inner>*:hover {
    opacity: 1;
}

.btn-hover-01 .btn-inner>* .btndeco {
    width: 100%;
    height: 100%;
    -webkit-transition: -webkit-transform 0.6s cubic-bezier(0.8, 0, 0.2, 1) 0s;
    transition: -webkit-transform 0.6s cubic-bezier(0.8, 0, 0.2, 1) 0s;
    transition: transform 0.6s cubic-bezier(0.8, 0, 0.2, 1) 0s;
    transition: transform 0.6s cubic-bezier(0.8, 0, 0.2, 1) 0s, -webkit-transform 0.6s cubic-bezier(0.8, 0, 0.2, 1) 0s;
    -webkit-transform: scale(0, 1);
    transform: scale(0, 1);
    -webkit-transform-origin: right top;
    transform-origin: right top;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 0;
}

.btn-hover-01 .btn-inner>*:hover .btndeco {
    -webkit-transform: scale(1, 1);
    transform: scale(1, 1);
    -webkit-transform-origin: left top;
    transform-origin: left top;
}

.btn-hover-01 .btntxt {
    position: relative;
    z-index: 1;
}

.btn-hover-02 a:hover {
    opacity: 1;
}

.btn-hover-02 a:hover .btndeco {
    opacity: 1;
    -webkit-animation: 1s wavebtn forwards;
    animation: 1s wavebtn forwards;
}

@-webkit-keyframes wavebtn {
    0% {
        -webkit-transform: scale(0);
        transform: scale(0);
    }

    100% {
        opacity: 0;
        -webkit-transform: scale(2);
        transform: scale(2);
    }
}

@keyframes wavebtn {
    0% {
        -webkit-transform: scale(0);
        transform: scale(0);
    }

    100% {
        opacity: 0;
        -webkit-transform: scale(2);
        transform: scale(2);
    }
}

/*画像にホバー*/
.img-effect-01 .pic {
    position: relative;
    z-index: 0;
}

.img-effect-01 a:hover img {
    -webkit-filter: brightness(0.4);
    filter: brightness(0.4);
}

.img-effect-01 .hover-img-txt {
    width: 90%;
    visibility: hidden;
    text-align: center;
    opacity: 0;
    -webkit-transition: 0.4s ease;
    transition: 0.4s ease;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    position: absolute;
    top: 50%;
    left: 50%;
    z-index: 1;
}

.img-effect-01 a:hover .hover-img-txt {
    visibility: visible;
    opacity: 1;
}

/*背景に画像*/
.cmn-back-01 {
    position: relative;
    z-index: 0;
}

.cmn-back-01:after {
    content: "";
    width: 100%;
    height: 100%;
    background-image: url("/import/tenant_1/160.16.50.164/html/images/back-01.webp");
    background-size: 500px;
    background-repeat: repeat;
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
}

.cmn-back-02 {
    position: relative;
    z-index: 0;
}

.cmn-back-02:after {
    content: "";
    width: 100%;
    height: 100%;
    background-image: url("/import/tenant_1/160.16.50.164/html/images/back-02.webp");
    background-size: 100% 100%;
    background-repeat: no-repeat;
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
}

/*外枠デザイン*/
.cmn-flame-01 {
    background: var(--back-color-00);
    -webkit-box-shadow: 0 0 10px #686868;
    box-shadow: 0 0 10px #686868;
}

.cmn-flame-02 {
    padding: 70px 100px 50px;
}

@media (max-width: 1024px) {
    .cmn-flame-02 {
        padding: 70px 30px 50px;
    }
}

@media (max-width: 599px) {
    .cmn-flame-02 {
        padding: 30px 10px 40px;
    }
}

.cmn-flame-03 {
    padding: 60px 30px 80px;
}

@media (max-width: 1024px) {
    .cmn-flame-03 {
        padding: 30px 30px 50px;
    }
}

@media (max-width: 599px) {
    .cmn-flame-03 {
        padding: 30px 10px 50px;
    }
}

.cmn-flame-04 {
    padding: 0 70px 70px;
}

@media (max-width: 1024px) {
    .cmn-flame-04 {
        padding: 0 50px 50px;
    }
}

@media (max-width: 599px) {
    .cmn-flame-04 {
        padding: 0 10px 50px;
    }
}

.cmn-flame-05 {
    padding: 70px 50px 80px;
}

@media (max-width: 1024px) {
    .cmn-flame-05 {
        padding: 70px 30px 50px;
    }
}

@media (max-width: 599px) {
    .cmn-flame-05 {
        padding: 30px 10px 40px;
    }
}

/*シャドー*/
.cmn-shadow-01>* {
    background: var(--back-color-00);
    -webkit-box-shadow: 0 0 5px #b6b6b6;
    box-shadow: 0 0 5px #b6b6b6;
}

.cmn-shadow-02>* {
    display: block;
    border: 1px solid #d8d8d8;
    background: var(--back-color-00);
    -webkit-box-shadow: 0 0 5px #b6b6b6;
    box-shadow: 0 0 5px #b6b6b6;
}

.cmn-shadow-02>*:hover {
    -webkit-box-shadow: none;
    box-shadow: none;
    opacity: 1;
    -webkit-transform: translateY(4px);
    transform: translateY(4px);
}

/*slick*/
.cmn-slick-01 {
    margin: 0 30px;
}

[data-element-id] .cmn-slick-01>* {
    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;
}

.cmn-slick-01 .item {
    margin: 0 20px;
}

[data-element-id] .cmn-slick-01 .item {
    width: 45%;
}

.cmn-slick-01 .slick-arrow {
    width: 40px;
    height: 40px;
    font-size: 18px;
    color: var(--txt-color-02);
    line-height: 37px;
    text-align: center;
    border: 2px solid;
    border-radius: 50%;
    cursor: pointer;
    position: absolute;
    top: calc(50% - 50px);
    left: -30px;
}

.cmn-slick-01 .slick-arrow.btn-next {
    left: auto;
    right: -30px;
}

.cmn-slick-01 .slick-arrow.btn-back:after {
    content: "\f053";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
}

.cmn-slick-01 .slick-arrow.btn-next:after {
    content: "\f054";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
}

@media (max-width: 599px) {
    .cmn-slick-01 {
        margin: 0 10px;
    }

    .cmn-slick-01 .slick-arrow {
        width: 30px;
        height: 30px;
        font-size: 15px;
        line-height: 26px;
        left: -15px;
    }

    .cmn-slick-01 .slick-arrow.btn-next {
        right: -15px;
    }
}

.cmn-slick-02 {
    margin: 0 30px;
}

.cmn-slick-02 .item {
    margin: 0 40px;
}

.cmn-slick-02 .slick-arrow {
    width: 40px;
    height: 40px;
    font-size: 18px;
    color: var(--txt-color-07);
    line-height: 37px;
    text-align: center;
    border: 2px solid;
    border-radius: 50%;
    cursor: pointer;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    position: absolute;
    top: calc(50% - 20px);
    left: -30px;
}

.cmn-slick-02 .slick-arrow.btn-next {
    left: auto;
    right: -30px;
}

.cmn-slick-02 .slick-arrow.btn-back:after {
    content: "\f053";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
}

.cmn-slick-02 .slick-arrow.btn-next:after {
    content: "\f054";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
}

.cmn-slick-02 .slick-dots {
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important;
    -webkit-box-align: center;
    align-items: center;
    -ms-flex-align: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin-top: 40px;
}

.cmn-slick-02 .slick-dots li {
    width: 12px;
    height: 12px;
    margin: 0 10px;
    text-indent: -9999rem;
    border-radius: 50%;
    background-color: var(--back-color-03);
}

.cmn-slick-02 .slick-dots li.slick-active {
    width: 16px;
    height: 16px;
    background-color: var(--back-color-02);
}

@media (max-width: 599px) {
    .cmn-slick-02 {
        margin: 0 10px;
    }

    .cmn-slick-02 .item {
        margin: 0 30px;
    }

    .cmn-slick-02 .slick-arrow {
        width: 30px;
        height: 30px;
        font-size: 15px;
        line-height: 26px;
        left: -10px;
    }

    .cmn-slick-02 .slick-arrow.btn-next {
        right: -10px;
    }

    .cmn-slick-02 .slick-dots {
        margin-top: 20px;
    }
}

[data-element-id] .cmn-slick-03 ul {
    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;
}

.cmn-slick-03 .slick-track {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

.cmn-slick-03 .slick-slide {
    height: auto !important;
}

.cmn-slick-03 .item {
    margin: 0 10px;
    padding: 10px;
}

[data-element-id] .cmn-slick-03 .item {
    width: 31%;
}

.cmn-slick-03 .item>* {
    height: 100%;
    overflow: hidden;
    border-radius: 20px;
}

.cmn-slick-03 .slick-arrow {
    width: 50px;
    height: 50px;
    font-size: 26px;
    color: var(--txt-color-00);
    line-height: 45px;
    text-align: center;
    border: 2px solid var(--txt-color-04);
    border-radius: 50%;
    background: var(--txt-color-04);
    cursor: pointer;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    position: absolute;
    top: 50%;
    left: 30px;
    z-index: 1;
}

.cmn-slick-03 .slick-arrow.btn-next {
    left: auto;
    right: 30px;
}

.cmn-slick-03 .slick-arrow.btn-back:after {
    content: "\f053";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
}

.cmn-slick-03 .slick-arrow.btn-next:after {
    content: "\f054";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
}

@media (max-width: 599px) {
    .cmn-slick-03 .item {
        margin: 0 5px;
        padding: 5px;
    }

    .cmn-slick-03 .slick-arrow {
        width: 35px;
        height: 35px;
        font-size: 18px;
        line-height: 30px;
        left: 10px;
    }

    .cmn-slick-03 .slick-arrow.btn-next {
        right: 10px;
    }
}

[data-element-id] .cmn-slick-04 ul {
    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;
}

.cmn-slick-04 .item {
    margin: 0 20px;
}

[data-element-id] .cmn-slick-04 .item {
    width: 16%;
}

.cmn-slick-04 .slick-arrow {
    width: 40px;
    height: 40px;
    font-size: 18px;
    color: var(--txt-color-00);
    line-height: 39px;
    text-align: center;
    border-radius: 50%;
    background: var(--back-color-07);
    -webkit-box-shadow: 0 0 5px #b6b6b6;
    box-shadow: 0 0 5px #b6b6b6;
    cursor: pointer;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    position: absolute;
    top: 50%;
    left: 5%;
    z-index: 1;
}

.cmn-slick-04 .slick-arrow.btn-next {
    left: auto;
    right: 5%;
}

.cmn-slick-04 .slick-arrow.btn-back:after {
    content: "\f053";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
}

.cmn-slick-04 .slick-arrow.btn-next:after {
    content: "\f054";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
}

@media (max-width: 599px) {
    .cmn-slick-04 .item {
        margin: 0 10px;
    }

    .cmn-slick-04 .slick-arrow {
        width: 35px;
        height: 35px;
        font-size: 16px;
        line-height: 35px;
    }
}

.cmn-slick-05 .slick-slider {
    margin: 0 80px;
}

.cmn-slick-05 .slick-arrow {
    width: 40px;
    height: 40px;
    font-size: 18px;
    color: var(--txt-color-07);
    line-height: 37px;
    text-align: center;
    border: 2px solid;
    border-radius: 50%;
    cursor: pointer;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    position: absolute;
    top: 50%;
    left: -55px;
}

.cmn-slick-05 .slick-arrow.btn-next {
    left: auto;
    right: -55px;
}

.cmn-slick-05 .slick-arrow.btn-back:after {
    content: "\f053";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
}

.cmn-slick-05 .slick-arrow.btn-next:after {
    content: "\f054";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
}

.cmn-slick-05 .slick-dots {
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important;
    -webkit-box-align: center;
    align-items: center;
    -ms-flex-align: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin-top: 30px;
}

.cmn-slick-05 .slick-dots li {
    width: 12px;
    height: 12px;
    margin: 0 10px;
    text-indent: -9999rem;
    border-radius: 50%;
    background-color: var(--back-color-03);
}

.cmn-slick-05 .slick-dots li.slick-active {
    width: 16px;
    height: 16px;
    background-color: var(--back-color-02);
}

@media (max-width: 1024px) {
    .cmn-slick-05 .slick-slider {
        margin: 0 60px;
    }

    .cmn-slick-05 .slick-arrow {
        left: -50px;
    }

    .cmn-slick-05 .slick-arrow.btn-next {
        right: -50px;
    }

    .cmn-slick-05 .slick-dots {
        margin-top: 20px;
    }
}

@media (max-width: 599px) {
    .cmn-slick-05 .slick-slider {
        margin: 0 30px;
    }

    .cmn-slick-05 .slick-arrow {
        width: 30px;
        height: 30px;
        font-size: 15px;
        line-height: 26px;
        left: -10px;
    }

    .cmn-slick-05 .slick-arrow {
        left: -32px;
    }

    .cmn-slick-05 .slick-arrow.btn-next {
        right: -32px;
    }
}

[data-element-id] .cmn-slick-06 ul>* {
    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;
}

.cmn-slick-06 .slick-list {
    margin-right: -50%;
}

.cmn-slick-06 .item {
    margin: 0 30px;
}

[data-element-id] .cmn-slick-06 .item {
    width: 41%;
}

[data-element-id] .cmn-slick-06 ul>*>.item:nth-of-type(n + 3) {
    display: none;
}

.cmn-slick-06 .slick-arrow {
    font-size: 46px;
    color: var(--txt-color-00);
    text-align: center;
    text-shadow: 0 0 5px #b6b6b6;
    border-radius: 50%;
    cursor: pointer;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    position: absolute;
    top: 50%;
    left: -20px;
    z-index: 1;
}

.cmn-slick-06.version-01 .slick-arrow {
    color: var(--txt-color-06);
}

.cmn-slick-06 .slick-arrow.btn-next {
    left: auto;
    right: -20px;
}

.cmn-slick-06 .slick-arrow.btn-back:after {
    content: "\f053";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
}

.cmn-slick-06 .slick-arrow.btn-next:after {
    content: "\f054";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
}

@media (max-width: 1024px) {
    .cmn-slick-06 .slick-list {
        margin-right: -20%;
    }

    .cmn-slick-06 .item {
        margin: 0 10px;
    }

    .cmn-slick-06 .slick-arrow {
        left: 0;
    }

    .cmn-slick-06 .slick-arrow.btn-next {
        right: 0;
    }
}

@media (max-width: 599px) {
    .cmn-slick-06 .slick-list {
        margin-right: 0;
    }

    .cmn-slick-06 .slick-arrow {
        font-size: 30px;
        left: 10px;
    }

    .cmn-slick-06 .slick-arrow.btn-next {
        right: 10px;
    }
}

[data-element-id] .cmn-slick-07 ul {
    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;
}

.cmn-slick-07 .item {
    margin: 0 20px;
}

[data-element-id] .cmn-slick-07 .item {
    width: 30%;
}

.cmn-slick-07 .item>* {
    display: block;
    -webkit-filter: brightness(0.7);
    filter: brightness(0.7);
}

.cmn-slick-07 .item.slick-active>* {
    -webkit-filter: brightness(1);
    filter: brightness(1);
}

.cmn-slick-07 .slick-arrow {
    width: 70px;
    height: 70px;
    font-size: 46px;
    color: var(--txt-color-00);
    line-height: 67px;
    text-align: center;
    border-radius: 50%;
    background: var(--txt-color-02);
    cursor: pointer;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    position: absolute;
    top: calc(50% - 20px);
    left: 10%;
    z-index: 1;
}

.cmn-slick-07 .slick-arrow.btn-next {
    left: auto;
    right: 10%;
}

.cmn-slick-07 .slick-arrow.btn-back:after {
    content: "\f053";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
}

.cmn-slick-07 .slick-arrow.btn-next:after {
    content: "\f054";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
}

.cmn-slick-07 .slick-dots {
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important;
    -webkit-box-align: center;
    align-items: center;
    -ms-flex-align: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin-top: 30px;
}

.cmn-slick-07 .slick-dots li {
    width: 15px;
    height: 15px;
    margin: 0 5px;
    text-indent: -9999rem;
    border: 2px solid var(--txt-color-02);
    border-radius: 50%;
    background-color: var(--back-color-00);
}

.cmn-slick-07 .slick-dots li.slick-active {
    background-color: var(--back-color-02);
}

@media (max-width: 1024px) {
    .cmn-slick-07 .slick-arrow {
        width: 50px;
        height: 50px;
        font-size: 32px;
        line-height: 47px;
        left: 3%;
    }

    .cmn-slick-07 .slick-arrow.btn-next {
        right: 3%;
    }
}

@media (max-width: 599px) {
    .cmn-slick-07 .item {
        margin: 0 10px;
    }

    .cmn-slick-07 .slick-arrow {
        width: 40px;
        height: 40px;
        font-size: 24px;
        line-height: 39px;
    }
}

.cmn-slick-08 {
    width: 100%;
    position: absolute;
    top: 45px;
    left: 0;
    z-index: 2;
}

[data-element-id] .cmn-slick-08 {
    position: relative;
    top: 0;
}

[data-element-id] .cmn-slick-08 ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.cmn-slick-08 .item {
    margin: 0 20px;
}

[data-element-id] .cmn-slick-08 .item {
    width: 10%;
}

.cmn-slick-08 .item .pic {
    width: 100%;
    position: relative;
}

.cmn-slick-08 .item .pic img {
    -o-object-fit: contain;
    object-fit: contain;
}

.cmn-slick-08 .item .txtbox {
    width: 100%;
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    align-items: center;
    -ms-flex-align: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    padding-bottom: 30px;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
}

.cmn-slick-08 .item .tit {
    margin-top: 2px;
    font-weight: bold;
    font-size: 22px;
    line-height: 1;
    text-align: center;
    white-space: nowrap;
}

.cmn-slick-08 .item .txt {
    font-weight: bold;
    font-size: 15px;
    line-height: 1.2;
    text-align: center;
    text-shadow: 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff;
    white-space: nowrap;
}

.cmn-slick-08 .slick-arrow {
    width: 50px;
    height: 50px;
    font-size: 26px;
    color: var(--txt-color-00);
    line-height: 47px;
    text-align: center;
    border-radius: 50%;
    background: var(--txt-color-02);
    opacity: 0.7;
    cursor: pointer;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    position: absolute;
    top: calc(50% - 5px);
    left: 30px;
    z-index: 1;
}

.cmn-slick-08 .slick-arrow.btn-next {
    left: auto;
    right: 30px;
}

.cmn-slick-08 .slick-arrow.btn-back:after {
    content: "\f053";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
}

.cmn-slick-08 .slick-arrow.btn-next:after {
    content: "\f054";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
}

@media (max-width: 1024px) {
    .cmn-slick-08 {
        top: 70px;
    }

    .cmn-slick-08 .item {
        margin: 0 15px;
    }
}

/*アコーディオン*/
.cmn-accordion-01 .tit {
    position: relative;
    z-index: 0;
}

.cmn-accordion-01 .toggle-arrow {
    width: 30px;
    height: 30px;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    position: absolute;
    top: 50%;
    right: 10px;
    z-index: 1;
}

.cmn-accordion-01 .toggle-arrow .bar {
    width: 100%;
    height: 100%;
    text-indent: 9998px;
    -webkit-transition: 0.3s linear;
    transition: 0.3s linear;
    position: relative;
    z-index: 0;
}

.cmn-accordion-01 .toggle-arrow .bar:before,
.cmn-accordion-01 .toggle-arrow .bar:after {
    content: "";
    display: block;
    position: absolute;
}

.cmn-accordion-01 .toggle-arrow .bar:before {
    width: 100%;
    border-bottom: 2px solid;
    top: 14px;
    left: 0;
}

.cmn-accordion-01 .toggle-arrow .bar:after {
    height: 100%;
    border-left: 2px solid;
    top: 0;
    left: 14px;
}

.cmn-accordion-01 .is-parent .toggle-arrow .bar {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
}

.cmn-accordion-01 .is-parent .toggle-arrow .bar:after {
    display: none;
}

@media (max-width: 599px) {
    .cmn-accordion-01 .toggle-arrow {
        width: 24px;
        height: 24px;
    }

    .cmn-accordion-01 .toggle-arrow .bar:before {
        top: 11px;
    }

    .cmn-accordion-01 .toggle-arrow .bar:after {
        left: 11px;
    }
}

.cmn-accordion-02 .tit {
    position: relative;
    z-index: 0;
}

.cmn-accordion-02 .tit .toggle-arrow {
    border-top: 15px solid;
    border-bottom: 15px solid transparent;
    border-left: 13px solid transparent;
    border-right: 13px solid transparent;
    -webkit-transition: 0.4s ease;
    transition: 0.4s ease;
    -webkit-transform-origin: top;
    transform-origin: top;
    position: absolute;
    top: 7px;
    right: 10px;
}

.cmn-accordion-02 .tit.is-parent .toggle-arrow {
    -webkit-transform: rotateX(180deg);
    transform: rotateX(180deg);
    top: 21px;
}

@media (max-width: 599px) {
    .cmn-accordion-02 .tit .toggle-arrow {
        border-top: 12px solid;
        border-bottom: 12px solid transparent;
        border-left: 10px solid transparent;
        border-right: 10px solid transparent;
        right: 0;
    }
}

/*フォント*/
.txt-font-00 {
    font-family: var(--txt-font-00);
}

.txt-font-01 {
    font-family: var(--txt-font-01);
}

.txt-font-02 {
    font-family: var(--txt-font-02);
}

.txt-font-03 {
    font-family: var(--txt-font-03);
}

.txt-font-04 {
    font-family: var(--txt-font-04);
}

/*アイコン*/
.icon-01,
.icon-01:before,
.icon-01:after {
    margin: 0 auto;
}

.icon-01 {
    width: 30px;
    display: inline-block;
    border-bottom: solid 5px;
}

.icon-01:before {
    content: "";
    width: 10px;
    display: block;
    border-bottom: solid 15px;
}

.icon-01:after {
    content: "";
    width: 20px;
    display: block;
    border-bottom: solid 10px;
}

/*カラー指定*/
/*テキストカラー*/
.txt-color-00 {
    color: var(--txt-color-00);
}

.txt-color-01 {
    color: var(--txt-color-01);
}

.txt-color-02 {
    color: var(--txt-color-02);
}

.txt-color-03 {
    color: var(--txt-color-03);
}

.txt-color-04 {
    color: var(--txt-color-04);
}

.txt-color-05 {
    color: var(--txt-color-05);
}

.txt-color-06 {
    color: var(--txt-color-06);
}

.txt-color-07 {
    color: var(--txt-color-07);
}

.txt-color-08 {
    color: var(--txt-color-08);
}

.txt-color-09 {
    color: var(--txt-color-09);
}

.txt-color-10 {
    color: var(--txt-color-10);
}

.txt-color-11 {
    color: var(--txt-color-11);
}

.txt-color-12 {
    color: var(--txt-color-12);
}

.txt-color-13 {
    color: var(--txt-color-13);
}

.txt-color-14 {
    color: var(--txt-color-14);
}

.txt-color-15 {
    color: var(--txt-color-15);
}

.txt-color-16 {
    color: var(--txt-color-16);
}

.txt-color-17 {
    color: var(--txt-color-17);
}

.txt-color-18 {
    color: var(--txt-color-18);
}

.txt-color-19 {
    color: var(--txt-color-19);
}

.txt-color-20 {
    color: var(--txt-color-20);
}

.txt-color-21 {
    color: var(--txt-color-21);
}

.txt-color-22 {
    color: var(--txt-color-22);
}

.txt-color-23 {
    color: var(--txt-color-23);
}

.txt-color-24 {
    color: var(--txt-color-24);
}

.txt-color-25 {
    color: var(--txt-color-25);
}

.txt-color-26 {
    color: var(--txt-color-26);
}

.txt-color-27 {
    color: var(--txt-color-27);
}

.txt-color-28 {
    color: var(--txt-color-28);
}

.txt-color-29 {
    color: var(--txt-color-29);
}

.txt-color-30 {
    color: var(--txt-color-30);
}

/*背景色*/
.back-color-00 {
    background: var(--back-color-00);
}

.back-color-01 {
    background: var(--back-color-01);
}

.back-color-02 {
    background: var(--back-color-02);
}

.back-color-03 {
    background: var(--back-color-03);
}

.back-color-04 {
    background: var(--back-color-04);
}

.back-color-05 {
    background: var(--back-color-05);
}

.back-color-06 {
    background: var(--back-color-06);
}

.back-color-07 {
    background: var(--back-color-07);
}

.back-color-08 {
    background: var(--back-color-08);
}

.back-color-09 {
    background: var(--back-color-09);
}

.back-color-10 {
    background: var(--back-color-10);
}

.back-color-11 {
    background: var(--back-color-11);
}

.back-color-12 {
    background: var(--back-color-12);
}

.back-color-13 {
    background: var(--back-color-13);
}

.back-color-14 {
    background: var(--back-color-14);
}

.back-color-15 {
    background: var(--back-color-15);
}

.back-color-16 {
    background: var(--back-color-16);
}

.back-color-17 {
    background: var(--back-color-17);
}

.back-color-18 {
    background: var(--back-color-18);
}

.back-color-19 {
    background: var(--back-color-19);
}

.back-color-20 {
    background: var(--back-color-20);
}

.back-color-21 {
    background: var(--back-color-21);
}

.back-color-22 {
    background: var(--back-color-22);
}

.back-color-23 {
    background: var(--back-color-23);
}

.back-color-24 {
    background: var(--back-color-24);
}

.back-color-25 {
    background: var(--back-color-25);
}

.back-color-26 {
    background: var(--back-color-26);
}

.back-color-27 {
    background: var(--back-color-27);
}

.back-color-28 {
    background: var(--back-color-28);
}

.back-color-29 {
    background: var(--back-color-29);
}

.back-color-30 {
    background: var(--back-color-30);
}

/*見出しカラー*/
.ttl-color-00 {
    color: var(--ttl-color-00);
}

.ttl-color-01 {
    color: var(--ttl-color-01);
}

.ttl-color-02 {
    color: var(--ttl-color-02);
}

.ttl-color-03 {
    color: var(--ttl-color-03);
}

.ttl-color-04 {
    color: var(--ttl-color-04);
}

.ttl-color-05 {
    color: var(--ttl-color-05);
}

.ttl-color-06 {
    color: var(--ttl-color-06);
}

.ttl-color-07 {
    color: var(--ttl-color-07);
}

.ttl-color-08 {
    color: var(--ttl-color-08);
}

.ttl-color-09 {
    color: var(--ttl-color-09);
}

.ttl-color-10 {
    color: var(--ttl-color-10);
}

.ttl-color-11 {
    color: var(--ttl-color-11);
}

.ttl-color-12 {
    color: var(--ttl-color-12);
}

.ttl-color-13 {
    color: var(--ttl-color-13);
}

.ttl-color-14 {
    color: var(--ttl-color-14);
}

.ttl-color-15 {
    color: var(--ttl-color-15);
}

.ttl-color-16 {
    color: var(--ttl-color-16);
}

.ttl-color-17 {
    color: var(--ttl-color-17);
}

.ttl-color-18 {
    color: var(--ttl-color-18);
}

.ttl-color-19 {
    color: var(--ttl-color-19);
}

.ttl-color-20 {
    color: var(--ttl-color-20);
}

.ttl-color-21 {
    color: var(--ttl-color-21);
}

.ttl-color-22 {
    color: var(--ttl-color-22);
}

.ttl-color-23 {
    color: var(--ttl-color-23);
}

.ttl-color-24 {
    color: var(--ttl-color-24);
}

.ttl-color-25 {
    color: var(--ttl-color-25);
}

.ttl-color-26 {
    color: var(--ttl-color-26);
}

.ttl-color-27 {
    color: var(--ttl-color-27);
}

.ttl-color-28 {
    color: var(--ttl-color-28);
}

.ttl-color-29 {
    color: var(--ttl-color-29);
}

.ttl-color-30 {
    color: var(--ttl-color-30);
}

/*ボタンカラー*/
.btn-color-00 .btn-inner>* {
    background: var(--btn-color-00);
}

.btn-color-01 .btn-inner>* {
    background: var(--btn-color-01);
}

.btn-color-02 .btn-inner>* {
    background: var(--btn-color-02);
}

.btn-color-03 .btn-inner>* {
    background: var(--btn-color-03);
}

.btn-color-04 .btn-inner>* {
    background: var(--btn-color-04);
}

.btn-color-05 .btn-inner>* {
    background: var(--btn-color-05);
}

.btn-color-06 .btn-inner>* {
    background: var(--btn-color-06);
}

.btn-color-07 .btn-inner>* {
    background: var(--btn-color-07);
}

.btn-color-08 .btn-inner>* {
    background: var(--btn-color-08);
}

.btn-color-09 .btn-inner>* {
    background: var(--btn-color-09);
}

.btn-color-10 .btn-inner>* {
    background: var(--btn-color-10);
}

.btn-color-11 .btn-inner>* {
    background: var(--btn-color-11);
}

.btn-color-12 .btn-inner>* {
    background: var(--btn-color-12);
}

.btn-color-13 .btn-inner>* {
    background: var(--btn-color-13);
}

.btn-color-14 .btn-inner>* {
    background: var(--btn-color-14);
}

.btn-color-15 .btn-inner>* {
    background: var(--btn-color-15);
}

.btn-color-16 .btn-inner>* {
    background: var(--btn-color-16);
}

.btn-color-17 .btn-inner>* {
    background: var(--btn-color-17);
}

.btn-color-18 .btn-inner>* {
    background: var(--btn-color-18);
}

.btn-color-19 .btn-inner>* {
    background: var(--btn-color-19);
}

.btn-color-20 .btn-inner>* {
    background: var(--btn-color-20);
}

.btn-color-21 .btn-inner>* {
    background: var(--btn-color-21);
}

.btn-color-22 .btn-inner>* {
    background: var(--btn-color-22);
}

.btn-color-23 .btn-inner>* {
    background: var(--btn-color-23);
}

.btn-color-24 .btn-inner>* {
    background: var(--btn-color-24);
}

.btn-color-25 .btn-inner>* {
    background: var(--btn-color-25);
}

.btn-color-26 .btn-inner>* {
    background: var(--btn-color-26);
}

.btn-color-27 .btn-inner>* {
    background: var(--btn-color-27);
}

.btn-color-28 .btn-inner>* {
    background: var(--btn-color-28);
}

.btn-color-29 .btn-inner>* {
    background: var(--btn-color-29);
}

.btn-color-30 .btn-inner>* {
    background: var(--btn-color-30);
}

/*ボタンhover背景*/
[class*="hovertxt-color-"] a:hover {
    opacity: 1;
    -webkit-transition: color 0.3s ease;
    transition: color 0.3s ease;
}

.hovertxt-color-00 a:hover {
    color: var(--btn-color-00);
}

.hovertxt-color-01 a:hover {
    color: var(--btn-color-01);
}

.hovertxt-color-02 a:hover {
    color: var(--btn-color-02);
}

.hovertxt-color-03 a:hover {
    color: var(--btn-color-03);
}

.hovertxt-color-04 a:hover {
    color: var(--btn-color-04);
}

.hovertxt-color-05 a:hover {
    color: var(--btn-color-05);
}

.hovertxt-color-06 a:hover {
    color: var(--btn-color-06);
}

.hovertxt-color-07 a:hover {
    color: var(--btn-color-07);
}

.hovertxt-color-08 a:hover {
    color: var(--btn-color-08);
}

.hovertxt-color-09 a:hover {
    color: var(--btn-color-09);
}

.hovertxt-color-10 a:hover {
    color: var(--btn-color-10);
}

/*ボタンhover背景*/
.hoverbtn-color-00 .btn-inner>*:hover {
    background: var(--btn-color-00);
}

.hoverbtn-color-01 .btn-inner>*:hover {
    background: var(--btn-color-01);
}

.hoverbtn-color-02 .btn-inner>*:hover {
    background: var(--btn-color-02);
}

.hoverbtn-color-03 .btn-inner>*:hover {
    background: var(--btn-color-03);
}

.hoverbtn-color-04 .btn-inner>*:hover {
    background: var(--btn-color-04);
}

.hoverbtn-color-05 .btn-inner>*:hover {
    background: var(--btn-color-05);
}

.hoverbtn-color-06 .btn-inner>*:hover {
    background: var(--btn-color-06);
}

.hoverbtn-color-07 .btn-inner>*:hover {
    background: var(--btn-color-07);
}

.hoverbtn-color-08 .btn-inner>*:hover {
    background: var(--btn-color-08);
}

.hoverbtn-color-09 .btn-inner>*:hover {
    background: var(--btn-color-09);
}

.hoverbtn-color-10 .btn-inner>*:hover {
    background: var(--btn-color-10);
}

/*装飾*/
.cmn-medal-01 {
    position: relative;
    z-index: 0;
}

.cmn-medal-01:after {
    content: "";
    width: 243px;
    height: 326px;
    background-image: url("/import/tenant_1/160.16.50.164/html/images/deco-13.webp");
    background-size: 100% 100%;
    background-repeat: no-repeat;
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
}

.cmn-deco-01 {
    position: relative;
    z-index: 0;
}

.cmn-deco-01 .deco-01-item {
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: 1;
}

.cmn-deco-01 .deco-01-item .pic img {
    max-width: 190px;
}

.cmn-deco-01 .deco-01-item .txtbox {
    margin-top: -150px;
    margin-left: -30px;
}

.cmn-deco-01 .deco-01-item .huki {
    margin-top: 20px;
    padding: 40px 20px;
    text-align: center;
    background-image: url("/import/tenant_1/160.16.50.164/html/images/deco-05.webp");
    background-size: 100% 100%;
    background-repeat: no-repeat;
}

@media (max-width: 1024px) {
    .cmn-deco-01 {
        padding-bottom: 0;
    }

    .cmn-deco-01 .deco-01-item {
        position: relative;
    }

    .cmn-deco-01 .deco-01-item .pic img {
        max-width: 150px;
    }

    .cmn-deco-01 .deco-01-item .txtbox {
        margin-top: -10px;
        margin-left: 0px;
    }

    .cmn-deco-01 .deco-01-item .huki {
        margin-top: 5px;
        padding: 20px 5px;
        font-size: 12px;
    }
}

.cmn-deco-02 {
    position: relative;
    z-index: 0;
}

.cmn-deco-02 .deco-02-item {
    width: 190px;
    padding: 20px 20px;
    text-align: center;
    background-image: url("/import/tenant_1/160.16.50.164/html/images/deco-05.webp");
    background-size: 100% 100%;
    background-repeat: no-repeat;
    position: absolute;
    top: -50px;
    right: -110px;
    z-index: 1;
}

@media (max-width: 1024px) {
    .cmn-deco-02 .deco-02-item {
        width: 120px;
        padding: 15px 20px;
        top: -40px;
        right: -10px;
    }
}

@media (max-width: 599px) {
    .cmn-deco-02 .deco-02-item {
        top: -20px;
        right: -15px;
    }
}

.cmn-deco-03 .deco-03-item {
    position: relative;
    z-index: 1;
}

.cmn-deco-03 .deco-03-item:nth-of-type(1) {
    margin-top: -80px;
}

.cmn-deco-03 .deco-03-item:nth-of-type(1) img {
    max-width: 200px;
}

.cmn-deco-03 .deco-03-item:nth-of-type(2) {
    margin-top: -150px;
}

.cmn-deco-03 .deco-03-item:nth-of-type(2) img {
    max-width: 220px;
}

@media (max-width: 1024px) {
    .cmn-deco-03 .deco-03-item:nth-of-type(1) {
        margin-top: -30px;
    }

    .cmn-deco-03 .deco-03-item:nth-of-type(1) img {
        max-width: 150px;
    }

    .cmn-deco-03 .deco-03-item:nth-of-type(2) {
        margin-top: -100px;
    }

    .cmn-deco-03 .deco-03-item:nth-of-type(2) img {
        max-width: 180px;
    }
}

@media (max-width: 599px) {
    .cmn-deco-03 .deco-03-item:nth-of-type(1) {
        margin-top: -10px;
    }

    .cmn-deco-03 .deco-03-item:nth-of-type(1) img {
        max-width: 130px;
    }

    .cmn-deco-03 .deco-03-item:nth-of-type(2) {
        margin-top: 0;
    }

    .cmn-deco-03 .deco-03-item:nth-of-type(2) img {
        max-width: 140px;
    }
}

.cmn-deco-04 {
    position: relative;
    z-index: 0;
}

.cmn-deco-04 .deco-04-item {
    position: absolute;
    bottom: -34px;
    left: 0;
    z-index: -1;
}

.cmn-deco-04 .deco-04-item img {
    max-width: 177px;
}

@media (max-width: 599px) {
    .cmn-deco-04:after {
        width: 97px;
        height: 102px;
        bottom: -24px;
        left: -10px;
    }

    .cmn-deco-04 .deco-04-item {
        bottom: -34px;
        left: -25px;
    }

    .cmn-deco-04 .deco-04-item img {
        max-width: 100px;
    }
}

.cmn-deco-05 {
    position: relative;
    z-index: 0;
}

.deco-05-item {
    width: 200px;
    height: 200px;
    border-radius: 50% 80% 50% 80%;
    position: absolute;
    bottom: -40px;
    right: -40px;
    z-index: -1;
}

@media (max-width: 599px) {
    .deco-05-item {
        width: 150px;
        height: 150px;
        bottom: -20px;
        right: -20px;
    }
}

.cmn-deco-06 {
    position: relative;
    z-index: 0;
}

.cmn-deco-06 .deco-06-item {
    position: absolute;
    bottom: -50px;
    z-index: 1;
}

.cmn-deco-06 .deco-06-item:nth-of-type(1) {
    left: 50px;
}

.cmn-deco-06 .deco-06-item:nth-of-type(1) img {
    max-width: 200px;
}

.cmn-deco-06 .deco-06-item:nth-of-type(2) {
    right: 50px;
}

.cmn-deco-06 .deco-06-item:nth-of-type(2) img {
    max-width: 280px;
}

@media (max-width: 1024px) {
    .cmn-deco-06 .deco-06-item {
        bottom: 0;
    }

    .cmn-deco-06 .deco-06-item:nth-of-type(1) {
        left: 10px;
    }

    .cmn-deco-06 .deco-06-item:nth-of-type(1) img {
        max-width: 130px;
    }

    .cmn-deco-06 .deco-06-item:nth-of-type(2) {
        right: 10px;
    }

    .cmn-deco-06 .deco-06-item:nth-of-type(2) img {
        max-width: 150px;
    }
}

@media (max-width: 599px) {
    .cmn-deco-06 {
        padding-bottom: 60px;
    }

    .cmn-deco-06 .deco-06-item {
        bottom: 50px;
    }

    .cmn-deco-06 .deco-06-item:nth-of-type(1) {
        left: 0;
    }

    .cmn-deco-06 .deco-06-item:nth-of-type(1) img {
        max-width: 100px;
    }

    .cmn-deco-06 .deco-06-item:nth-of-type(2) {
        right: 0;
    }

    .cmn-deco-06 .deco-06-item:nth-of-type(2) img {
        max-width: 120px;
    }
}

.cmn-deco-07 {
    position: relative;
    z-index: 0;
}

.cmn-deco-07 .deco-07-item {
    width: 100%;
    height: 70%;
    position: absolute;
    bottom: 0;
    left: 0;
}

.cmn-deco-08 {
    position: relative;
    z-index: 0;
}

.deco-08-item:nth-of-type(1) {
    position: absolute;
    bottom: 30px;
    left: 210px;
}

.deco-08-item:nth-of-type(1) img {
    max-width: 146px;
    height: auto;

    mix-blend-mode: multiply;
}

.deco-08-item:nth-of-type(2) {
    position: absolute;
    bottom: 30px;
    right: 210px;
}

.deco-08-item:nth-of-type(2) img {
    max-width: 146px;
    height: auto;

    mix-blend-mode: multiply;
}

@media (max-width: 1024px) {
    .deco-08-item:nth-of-type(1) {
        left: 30px;
    }

    .deco-08-item:nth-of-type(1) img {
        max-width: 100px;
    }

    .deco-08-item:nth-of-type(2) {
        right: 30px;
    }

    .deco-08-item:nth-of-type(2) img {
        max-width: 100px;
    }
}

@media (max-width: 599px) {
    .deco-08-item:nth-of-type(1) {
        bottom: 10px;
        left: 10px;
    }

    .deco-08-item:nth-of-type(1) img {
        max-width: 100px;
    }

    .deco-08-item:nth-of-type(2) {
        bottom: 10px;
        right: 10px;
    }

    .deco-08-item:nth-of-type(2) img {
        max-width: 100px;
    }
}

.cmn-deco-09 {
    position: relative;
    z-index: 0;
}

.cmn-deco-09 .deco-09-item {
    position: absolute;
    top: 5px;
    z-index: 1;
}

.cmn-deco-09 .deco-09-item:nth-of-type(1) {
    left: -160px;
}

.cmn-deco-09 .deco-09-item:nth-of-type(1) img {
    max-width: 170px;
}

.cmn-deco-09 .deco-09-item:nth-of-type(2) {
    right: -150px;
}

.cmn-deco-09 .deco-09-item:nth-of-type(2) img {
    max-width: 220px;
}

@media (max-width: 1024px) {
    .cmn-deco-09 .deco-09-item:nth-of-type(1) {
        left: -120px;
    }

    .cmn-deco-09 .deco-09-item:nth-of-type(1) img {
        max-width: 140px;
    }

    .cmn-deco-09 .deco-09-item:nth-of-type(2) {
        right: -90px;
    }

    .cmn-deco-09 .deco-09-item:nth-of-type(2) img {
        max-width: 160px;
    }
}

@media (max-width: 599px) {
    .cmn-deco-09 .deco-09-item {
        top: -50px;
    }

    .cmn-deco-09 .deco-09-item:nth-of-type(1) {
        left: -30px;
    }

    .cmn-deco-09 .deco-09-item:nth-of-type(1) img {
        max-width: 100px;
    }

    .cmn-deco-09 .deco-09-item:nth-of-type(2) {
        right: -30px;
    }

    .cmn-deco-09 .deco-09-item:nth-of-type(2) img {
        max-width: 100px;
    }
}

.cmn-deco-10 {
    position: relative;
    z-index: 0;
}

.cmn-deco-10 .deco-10-item.deco-item-01 {
    width: 190px;
    padding: 20px 30px;
    background-image: url("/import/tenant_1/160.16.50.164/html/images/deco-05.webp");
    background-size: 100% 100%;
    background-repeat: no-repeat;
    position: absolute;
    bottom: 100px;
    right: -60px;
    z-index: 2;
}

.cmn-deco-10 .deco-10-item.deco-item-02 {
    position: absolute;
    bottom: -20px;
    right: -50px;
    z-index: 1;
}

.cmn-deco-10 .deco-10-item.deco-item-02 img {
    max-width: 170px;
}

@media (max-width: 599px) {
    .cmn-deco-10 .deco-10-item.deco-item-01 {
        width: 140px;
        padding: 15px 20px;
        bottom: 60px;
        right: -20px;
    }

    .cmn-deco-10 .deco-10-item.deco-item-02 {
        bottom: -20px;
        right: -30px;
    }

    .cmn-deco-10 .deco-10-item.deco-item-02 img {
        max-width: 120px;
    }
}

.cmn-deco-11 {
    position: relative;
    z-index: 0;
}

.cmn-deco-11 .deco-11-item {
    width: 95%;
    height: 70%;
    border-radius: 30px 0 0 30px;
    position: absolute;
    bottom: 0;
    right: 0;
}

@media (max-width: 1024px) {
    .cmn-deco-11 .deco-11-item {
        width: 99%;
        height: 60%;
    }
}

.cmn-deco-12 {
    position: relative;
    z-index: 0;
}

.cmn-deco-12 .deco-12-item {
    width: 100%;
    height: 100%;
    background-image: url("/import/tenant_1/160.16.50.164/html/images/deco-18.webp");
    background-size: 100% 100%;
    background-repeat: no-repeat;
    background-position: top center;
    position: absolute;
    top: -100px;
    right: 0;
}

.cmn-deco-13 .deco-13-item.deco-item-01 {
    position: absolute;
    top: 90px;
    left: -190px;
    z-index: 0;
}

.cmn-deco-13 .deco-13-item.deco-item-01 img {
    max-width: 200px;
}

.cmn-deco-13 .deco-13-item.deco-item-02 {
    width: 190px;
    padding: 30px 30px;
    background-image: url("/import/tenant_1/160.16.50.164/html/images/deco-05.webp");
    background-size: 100% 100%;
    background-repeat: no-repeat;
    position: absolute;
    bottom: 320px;
    right: -180px;
    z-index: 2;
}

.cmn-deco-13 .deco-13-item.deco-item-03 {
    position: absolute;
    bottom: 180px;
    right: -160px;
    z-index: 1;
}

.cmn-deco-13 .deco-13-item.deco-item-03 img {
    max-width: 170px;
}

@media (max-width: 1024px) {
    .cmn-deco-13 .deco-13-item.deco-item-01 {
        left: -120px;
    }

    .cmn-deco-13 .deco-13-item.deco-item-01 img {
        max-width: 120px;
    }

    .cmn-deco-13 .deco-13-item.deco-item-02 {
        bottom: 270px;
        right: -120px;
    }

    .cmn-deco-13 .deco-13-item.deco-item-03 {
        bottom: 160px;
        right: -130px;
    }

    .cmn-deco-13 .deco-13-item.deco-item-03 img {
        max-width: 140px;
    }
}

@media (max-width: 599px) {
    .cmn-deco-13 .deco-13-item.deco-item-01 {
        position: relative;
        top: 0;
        left: 0;
    }

    .cmn-deco-13 .deco-13-item.deco-item-02 {
        width: 170px;
        padding: 20px 20px;
        top: 70px;
        bottom: auto;
        right: -20px;
    }

    .cmn-deco-13 .deco-13-item.deco-item-03 {
        position: relative;
        bottom: 0;
        right: 0;
    }
}

/*テキストにライン引く*/
.cmn-line-01 {
    border-bottom: 4px dotted var(--txt-color-02);
}

.cmn-line-02 {
    border-bottom: 4px dotted var(--txt-color-05);
}

/*画像にhoverした時にズーム*/
.hover-img-01 a,
.hover-img-02 a .pic {
    display: block;
    overflow: hidden;
}

.hover-img-01 a:hover,
.hover-img-02 a:hover {
    opacity: 1;
}

.hover-img-01 a img,
.hover-img-02 a img {
    transition: transform 1s cubic-bezier(0.165, 0.84, 0.44, 1), -webkit-transform 1s cubic-bezier(0.165, 0.84, 0.44, 1);
    -webkit-transform: scale(1);
    transform: scale(1);
}

.hover-img-01 a:hover img,
.hover-img-02 a:hover img {
    -webkit-transform: scale(1.2);
    transform: scale(1.2);
}

.hover-img-03 a .pic {
    -webkit-transition: all 0.8s ease;
    transition: all 0.8s ease;
}

.hover-img-03 a:hover .pic {
    border-radius: 80px;
}

.hover-txt-01 a {
    display: block;
    position: relative;
}

.hover-txt-01 a:hover {
    opacity: 1;
}

.hover-txt-01 a .pic .hover-txt {
    width: 70%;
    visibility: hidden;
    opacity: 0;
    -webkit-transition: 0.4s ease;
    transition: 0.4s ease;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    position: absolute;
    top: 50%;
    left: 50%;
    z-index: 1;
}

.hover-txt-01 a:hover .pic .hover-txt {
    visibility: visible;
    opacity: 1;
}

.hover-txt-01 a:hover .pic img {
    -webkit-filter: brightness(0.6);
    filter: brightness(0.6);
}

@media (max-width: 1024px) {
    .hover-txt-01 a .pic .hover-txt {
        visibility: visible;
        opacity: 1;
    }

    .hover-txt-01 a .pic img {
        -webkit-filter: brightness(0.6);
        filter: brightness(0.6);
    }
}

@media (max-width: 599px) {
    .hover-txt-01 a .pic .hover-txt {
        width: 90%;
    }
}

/*ページャー*/
.cmn-pager-01 li {
    margin: 0 15px;
}

.cmn-pager-01 li>* {
    width: 43px;
    height: 43px;
    display: block;
    font-weight: bold;
    font-size: 20px;
    color: var(--txt-color-02);
    line-height: 38px;
    text-align: center;
    border: 3px solid;
    border-radius: 50%;
    background: var(--back-color-00);
}

.cmn-pager-01 li.prev>*,
.cmn-pager-01 li.next>* {
    font-size: 18px;
}

.cmn-pager-01 li.now>* {
    color: var(--txt-color-00);
    border-color: var(--txt-color-02);
    background: var(--txt-color-02);
}

.cmn-pager-01 li.prev>*:after {
    content: "\f053";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
}

.cmn-pager-01 li.next>*:after {
    content: "\f054";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
}

.cmn-pager-01 li.first>*:after {
    content: "\f100";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
}

.cmn-pager-01 li.last>*:after {
    content: "\f101";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
}

@media (max-width: 599px) {
    .cmn-pager-01 li {
        margin: 0 10px;
    }

    .cmn-pager-01 li>* {
        width: 40px;
        height: 40px;
        font-size: 18px;
        line-height: 34px;
    }

    .cmn-pager-01 li.prev>*,
    .cmn-pager-01 li.next>* {
        font-size: 16px;
    }
}

.cmn-pager-02 li {
    margin: 0 5px;
}

.cmn-pager-02 li>* {
    width: 43px;
    height: 43px;
    display: block;
    font-size: 20px;
    color: var(--txt-color-00);
    line-height: 41px;
    text-align: center;
    border-radius: 5px;
    background: var(--back-color-04);
}

.cmn-pager-02 li.prev>*,
.cmn-pager-02 li.next>* {
    font-size: 18px;
}

.cmn-pager-02 li.now>* {
    color: var(--txt-color-01);
    background: none;
}

.cmn-pager-02 li.prev>*:after {
    content: "\f053";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
}

.cmn-pager-02 li.next>*:after {
    content: "\f054";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
}

.cmn-pager-02 li.first>*:after {
    content: "\f100";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
}

.cmn-pager-02 li.last>*:after {
    content: "\f101";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
}

.cmn-pager-02.version-01 li>* {
    background: var(--back-color-07);
}

.cmn-pager-02.version-01 li.now>* {
    color: var(--txt-color-01);
    background: none;
}

@media (max-width: 599px) {
    .cmn-pager-02 li>* {
        width: 40px;
        height: 40px;
        font-size: 18px;
        line-height: 36px;
    }

    .cmn-pager-02 li.prev>*,
    .cmn-pager-02 li.next>* {
        font-size: 16px;
    }
}

/*電話番号*/
.cmn-tel-01 .icon {
    display: inline-block;
    -webkit-transform: rotate(15deg) translateX(5px);
    transform: rotate(15deg) translateX(5px);
    -webkit-transform-origin: top right;
    transform-origin: top right;
}

/*共通日付*/
.cmn-day-01 {
    font-size: 14px;
}

.cmn-day-01.pattern-01 {
    font-size: 16px;
}

.cmn-day-02>* {
    display: inline-block;
    margin-bottom: 15px;
    margin-right: 15px;
    padding-left: 16px;
    position: relative;
}

.cmn-day-02>*:before {
    content: "";
    width: 10px;
    height: 10px;
    display: block;
    border-radius: 50%;
    background: var(--back-color-02);
    position: absolute;
    top: 8px;
    left: 0;
}

@media (max-width: 599px) {
    .cmn-day-01.pattern-01 {
        font-size: 14px;
    }

    .cmn-day-02>* {
        margin-bottom: 10px;
        margin-right: 10px;
        font-size: 14px;
    }

    .cmn-day-02>*:before {
        top: 6px;
    }
}

/*共通タグ*/
.cmn-tag-01>* {
    display: inline-block;
    margin-bottom: 3px;
    margin-right: 5px;
    padding: 2px 15px;
    font-size: 14px;
    color: var(--txt-color-00);
    border-radius: 5px;
    background: var(--back-color-04);
}

.cmn-tag-01.version-01>* {
    background: var(--back-color-07);
}

@media (max-width: 599px) {
    .cmn-tag-01.version-02>* {
        padding: 2px 5px;
        font-size: 11px;
    }
}

.cmn-tag-02 {
    width: 300px;
    max-width: 100%;
    padding: 5px 15px;
    border-radius: 30px;
}

/*共通カテゴリ*/
.cmn-cate-01 .box {
    height: 100%;
    padding: 30px 30px 40px;
    border-radius: 20px;
}

.cmn-cate-01 .titbox .tit {
    font-weight: bold;
    font-size: 24px;
}

.cmn-cate-01 .titbox .small {
    display: block;
    font-weight: 400;
    font-size: 14px;
}

.cmn-cate-01 .list li>* {
    position: relative;
    z-index: 0;
}

.cmn-cate-01 .list li.tit {
    padding-left: 20px;
    font-weight: bold;
}

.cmn-cate-01 .list li.tit:before,
.cmn-cate-01 .list li.sub:before {
    content: "";
    font-size: 10px;
    position: absolute;
    top: 7px;
    left: 0;
    z-index: 0;
}

.cmn-cate-01 .list li.tit:before {
    content: "●";
}

.cmn-cate-01 .list li.sub {
    padding-left: 43px;
}

.cmn-cate-01 .list li.sub:before {
    content: "○";
    left: 25px;
}

.cmn-cate-01 .list li+li {
    margin-top: 15px;
}

@media (max-width: 599px) {
    .cmn-cate-01 .box {
        padding: 20px 20px 30px;
    }

    .cmn-cate-01 .titbox .tit {
        font-size: 20px;
    }

    .cmn-cate-01 .titbox .small {
        font-size: 12px;
    }
}

.cmn-cate-02 .box {
    padding: 20px 50px 10px;
    border-radius: 20px;
}

.cmn-cate-02 .tit {
    -ms-flex-negative: 0;
    flex-shrink: 0;
    margin-right: 10px;
    font-weight: bold;
    font-size: 24px;
}

.cmn-cate-02 .list {
    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;
}

.cmn-cate-02 .list li {
    margin-bottom: 10px;
    margin-right: 10px;
}

.cmn-cate-02 .list li>* {
    display: block;
    padding: 5px 20px;
    border-radius: 10px;
    background: var(--back-color-04);
}

.cmn-cate-02.version-01 .list li>* {
    background: var(--back-color-02);
}

@media (max-width: 599px) {
    .cmn-cate-02 .box {
        padding: 20px 20px 10px;
    }

    .cmn-cate-02 .tit {
        margin-bottom: 10px;
        margin-right: 0;
        font-size: 20px;
    }

    .cmn-cate-02 .list li>* {
        padding: 5px 10px;
        font-size: 14px;
    }
}

/*===================================
共通タイトル　ttl-cmn
===================================*/
/* タイトル */
.cmn-ttl-01 {
    position: relative;
    z-index: 0;
}

.cmn-ttl-01 .ttl-main {
    height: 47px;
    margin-bottom: 40px;
    padding: 5px 80px;
    font-weight: bold;
    font-size: 30px;
    background-image: url("/import/tenant_1/160.16.50.164/html/images/ttl-center-01.webp");
    background-size: 100% 100%;
    position: relative;
    z-index: 0;

    background-repeat-y: no-repeat;
}

.cmn-ttl-01.version-01 .ttl-main {
    margin-bottom: 20px;
}

.cmn-ttl-01 .ttl-main:before,
.cmn-ttl-01 .ttl-main:after {
    content: "";
    width: 100vw;
    height: 5px;
    position: absolute;
    bottom: 0;

    background-repeat-y: no-repeat;
}

.cmn-ttl-01 .ttl-main:before {
    background-image: url("/import/tenant_1/160.16.50.164/html/images/ttl-right-01.webp");
    left: 100%;
}

.cmn-ttl-01 .ttl-main:after {
    background-image: url("/import/tenant_1/160.16.50.164/html/images/ttl-left-01.webp");
    right: 100%;
}

.cmn-ttl-01 .ttl-deco-01,
.cmn-ttl-01 .ttl-deco-02 {
    position: absolute;
    top: -40px;
    z-index: 1;
}

.cmn-ttl-01 .ttl-deco-01 {
    right: calc(100% + 20px);
}

.cmn-ttl-01 .ttl-deco-01 img {
    max-width: 90px;
}

.cmn-ttl-01 .ttl-deco-02 {
    left: calc(100% + 20px);
}

.cmn-ttl-01 .ttl-deco-02 img {
    max-width: 110px;
}

.cmn-ttl-01 .ttl-deco-03 {
    width: 57px;
    opacity: 0.4;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    position: absolute;
    top: -20px;
    left: 50%;
    z-index: -1;
}

.cmn-ttl-01 .ttl-sub {
    font-size: 30px;
    position: relative;
    z-index: 0;
}

.cmn-ttl-02 {
    margin-top: -110px;
}

.cmn-ttl-02 .ttl-main {
    width: 600px;
    max-width: 100%;
    padding: 15px 20px;
    font-weight: 400;
    font-size: 32px;
    letter-spacing: 3px;
}

.cmn-ttl-03.version-02 {
    margin-top: -45px;
}

.cmn-ttl-03 .ttl-main {
    padding: 15px 40px;
    font-size: 30px;
    position: relative;
    z-index: 0;
}

.cmn-ttl-03 .ttl-main:before {
    content: "";
    width: calc(100% + 100px);
    height: 100%;
    background-image: url("/import/tenant_1/160.16.50.164/html/images/ttl-01.webp");
    background-size: 100% 100%;
    background-repeat: no-repeat;
    position: absolute;
    top: 0;
    left: -30px;
    z-index: -1;
}

.cmn-ttl-03.version-01 .ttl-main:before {
    width: calc(100% + 0px);
    left: 0;
}

.cmn-ttl-03 .ttl-main:after {
    content: "";
    width: 133px;
    height: 103px;
    background-image: url("/import/tenant_1/160.16.50.164/html/images/deco-03.webp");
    background-size: cover;
    background-repeat: no-repeat;
    position: absolute;
    top: -20px;
    left: calc(100% + 40px);
    z-index: 0;
}

.cmn-ttl-03.version-01 .ttl-main:after {
    left: calc(100% + -40px);
}

.cmn-ttl-03 .ttl-small {
    margin-right: 10px;
    font-size: 22px;
}

.cmn-ttl-04 .ttl-main {
    font-weight: 500;
    font-size: 46px;
}

.cmn-ttl-05 .ttl-main {
    font-weight: 500;
    font-size: 26px;
}

.cmn-ttl-06 .ttl-main {
    font-weight: bold;
    font-size: 35px;
}

.cmn-ttl-06 .ttl-sub {
    font-size: 24px;
}

.cmn-ttl-06 .ttl-border {
    border-bottom: 2px solid;
}

.cmn-ttl-07 .ttl-main {
    font-weight: bold;
}

.cmn-ttl-07 .ttl-border {
    width: 100%;
    height: 1px;
    background: -webkit-gradient(linear, left top, right top, color-stop(20%, var(--back-color-07)), color-stop(20%, var(--back-color-03)));
    background: linear-gradient(to right, var(--back-color-07) 20%, var(--back-color-03) 20%);
}

.cmn-ttl-08 .ttl-main {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    align-items: center;
    -ms-flex-align: center;
    font-weight: bold;
    font-size: 18px;
}

.cmn-ttl-08 .ttl-main .ttl-border {
    width: 15px;
    border-bottom: 2px solid;
}

.cmn-ttl-09 .ttl-main {
    font-weight: bold;
    font-size: 24px;
}

.cmn-ttl-09 .ttl-border {
    border-bottom: 2px solid;
}

.cmn-ttl-10 .ttl-main {
    font-size: 24px;
}

.cmn-ttl-10 .ttl-border {
    border-bottom: 1px solid;
}

.cmn-ttl-11 {
    padding: 25px 10px;
    position: relative;
    z-index: 0;
}

.cmn-ttl-11:after {
    content: "";
    width: 131px;
    height: 29px;
    background: var(--back-color-00);
    background-image: url("/import/tenant_1/160.16.50.164/html/images/deco-10.webp");
    background-size: cover;
    background-repeat: no-repeat;
    position: absolute;
    top: 10px;
    right: 10%;
}

.cmn-ttl-11.version-01:after {
    display: none;
}

.cmn-ttl-11.version-03:after {
    display: none;
}

.cmn-ttl-11 .ttl-main {
    font-weight: bold;
    font-size: 36px;
}

.cmn-ttl-11.version-01 .ttl-main {
    font-size: 36px;
}

.cmn-ttl-11 .ttl-sub {
    font-size: 24px;
}

.cmn-ttl-11.version-01 .ttl-sub {
    font-size: 16px;
}

.cmn-ttl-11 .ttl-border {
    border-bottom: 1px solid;
}

.cmn-ttl-12 .ttl-main {
    width: 200px;
    margin: 10px 0;
    padding: 10px 20px 10px 30px;
    font-weight: bold;
    font-size: 16px;
    position: relative;
    z-index: 0;
}

.cmn-ttl-12 .ttl-main:before {
    content: "";
    width: calc(100% + 0px);
    height: 100%;
    background-image: url("/import/tenant_1/160.16.50.164/html/images/ttl-02.webp");
    background-size: 100% 100%;
    background-repeat: no-repeat;
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
}

.cmn-ttl-12 .ttl-main:after {
    content: "";
    width: 77px;
    height: 61px;
    background-image: url("/import/tenant_1/160.16.50.164/html/images/deco-03.webp");
    background-size: contain;
    background-repeat: no-repeat;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    position: absolute;
    top: 50%;
    left: calc(100% + -17px);
    z-index: 0;
}

.cmn-ttl-13 .ttl-main {
    font-weight: bold;
    font-size: 28px;
    line-height: 1.2;
    letter-spacing: 2px;
}

.cmn-ttl-13 .ttl-sub {
    font-size: 70px;
    line-height: 1;
}

.cmn-ttl-14 .ttl-main {
    font-weight: bold;
    font-size: 48px;
}

.cmn-ttl-14 .ttl-sub {
    font-size: 24px;
}

.cmn-ttl-14 .ttl-border {
    border-bottom: 2px solid;
}

.cmn-ttl-15 .ttl-main {
    padding: 20px 0;
    font-weight: bold;
    font-size: 24px;
    position: relative;
    z-index: 0;
}

.cmn-ttl-15 .ttl-back {
    width: 50vw;
    max-width: 800px;
    height: 100%;
    border-radius: 20px;
    position: absolute;
    top: 0;
    left: -30px;
    z-index: -1;
}

.cmn-ttl-16 .ttl-main {
    padding: 5px 25px;
    font-weight: bold;
    font-size: 20px;
    line-height: 1.8;
    position: relative;
    z-index: 0;
}

.cmn-ttl-17 .ttl-main {
    font-weight: bold;
    font-size: 50px;
    line-height: 1.3;
    letter-spacing: 1px;
    position: relative;
    z-index: 0;
}

.cmn-ttl-17 .ttl-sub {
    font-size: 36px;
}

.cmn-ttl-17 .ttl-border {
    border-bottom: 2px solid;
}

.cmn-ttl-17 .ttl-deco {
    position: absolute;
    bottom: -60px;
    left: -30px;
    z-index: 1;
}

.cmn-ttl-17 .ttl-deco img {
    max-width: 90px;
}

.cmn-ttl-18 {
    position: relative;
    z-index: 0;
}

.cmn-ttl-18:after {
    content: "";
    width: 100%;
    height: 3px;
    background-image: url("/import/tenant_1/160.16.50.164/html/images/ttl-04.webp");
    position: absolute;
    bottom: 0;
    left: 0;
}

.cmn-ttl-18 .ttl-inner {
    padding-bottom: 20px;
}

.cmn-ttl-18 .ttl-main {
    padding-left: 20px;
    font-weight: bold;
    font-size: 30px;
    line-height: 1;
}

.cmn-ttl-19 .ttl-main {
    padding: 10px 40px;
    font-weight: bold;
    font-size: 48px;
    border: 1px solid;
}

@media (max-width: 1024px) {
    .cmn-ttl-01 .ttl-deco-01 img {
        max-width: 70px;
    }

    .cmn-ttl-01 .ttl-deco-02 img {
        max-width: 100px;
    }

    .cmn-ttl-02 {
        margin-top: -100px;
    }

    .cmn-ttl-02 .ttl-main {
        width: 450px;
        font-size: 28px;
    }

    .cmn-ttl-03 .ttl-main:before {
        width: calc(100% + 20px);
        left: -20px;
    }

    .cmn-ttl-03 .ttl-main:after {
        left: calc(100% + -40px);
    }

    .cmn-ttl-04 .ttl-main {
        font-size: 36px;
    }

    .cmn-ttl-06 .ttl-main {
        font-size: 26px;
    }

    .cmn-ttl-11 .ttl-sub {
        font-size: 20px;
    }

    .cmn-ttl-11.version-01 .ttl-sub {
        font-size: 14px;
    }

    .cmn-ttl-11 .ttl-main {
        font-size: 26px;
    }

    .cmn-ttl-11.version-01 .ttl-main {
        font-size: 30px;
    }

    .cmn-ttl-11.version-02:after {
        width: 91px;
        height: 21px;
    }

    .cmn-ttl-14 .ttl-main {
        font-size: 38px;
    }

    .cmn-ttl-14 .ttl-sub {
        font-size: 22px;
    }

    .cmn-ttl-15 .ttl-back {
        width: 89vw;
    }

    .cmn-ttl-17 .ttl-main {
        font-size: 40px;
    }

    .cmn-ttl-17 .ttl-deco {
        bottom: -50px;
    }

    .cmn-ttl-17 .ttl-deco img {
        max-width: 70px;
    }

    .cmn-ttl-19 .ttl-main {
        font-size: 30px;
    }
}

@media (max-width: 599px) {
    .cmn-ttl-01 .ttl-main {
        padding: 5px 40px;
        font-size: 22px;
    }

    .cmn-ttl-01 .ttl-deco {
        width: 50px;
    }

    .cmn-ttl-01 .ttl-sub {
        font-size: 18px;
    }

    .cmn-ttl-01 .ttl-deco-01,
    .cmn-ttl-01 .ttl-deco-02 {
        top: -10px;
    }

    .cmn-ttl-01 .ttl-deco-01 img {
        max-width: 60px;
    }

    .cmn-ttl-01 .ttl-deco-02 {
        left: calc(100% + 10px);
    }

    .cmn-ttl-01 .ttl-deco-02 img {
        max-width: 80px;
    }

    .cmn-ttl-02 {
        margin-top: -57px;
    }

    .cmn-ttl-02 .ttl-main {
        width: auto;
        padding: 10px 30px;
        font-size: 18px;
    }

    .cmn-ttl-03.version-02 {
        margin-top: -15px;
    }

    .cmn-ttl-03 .ttl-main {
        padding: 15px 35px 15px 15px;
        font-size: 18px;
    }

    .cmn-ttl-03 .ttl-main:before {
        width: calc(100% + 10px);
        left: -10px;
    }

    .cmn-ttl-03 .ttl-main:after {
        width: 93px;
        height: 70px;
        left: calc(100% + -30px);
    }

    .cmn-ttl-03.version-01 .ttl-main:before {
        width: calc(100% + -15px);
    }

    .cmn-ttl-03.version-01 .ttl-main:after {
        top: -10px;
    }

    .cmn-ttl-04 .ttl-main {
        font-size: 21px;
    }

    .cmn-ttl-05 .ttl-main {
        font-size: 20px;
    }

    .cmn-ttl-06 .ttl-main {
        font-size: 19px;
    }

    .cmn-ttl-09 .ttl-main {
        font-size: 20px;
    }

    .cmn-ttl-11 {
        padding: 20px 10px;
    }

    .cmn-ttl-11 .ttl-main {
        font-size: 20px;
    }

    .cmn-ttl-11.version-01 .ttl-main {
        font-size: 18px;
    }

    .cmn-ttl-11 .ttl-sub {
        font-size: 16px;
    }

    .cmn-ttl-11.version-01 .ttl-sub {
        font-size: 12px;
    }

    .cmn-ttl-11:after {
        width: 91px;
        height: 19px;
        top: 5px;
        right: 5%;
    }

    .cmn-ttl-13 .ttl-main {
        font-size: 18px;
    }

    .cmn-ttl-13 .ttl-sub {
        font-size: 50px;
    }

    .cmn-ttl-14 .ttl-main {
        font-size: 22px;
    }

    .cmn-ttl-14 .ttl-sub {
        font-size: 18px;
    }

    .cmn-ttl-15 .ttl-main {
        padding: 15px 10px 15px 15px;
        font-size: 18px;
    }

    .cmn-ttl-15 .ttl-back {
        width: 600px;
        left: 0;
    }

    .cmn-ttl-16 .ttl-main {
        padding: 10px 20px;
        font-size: 16px;
    }

    .cmn-ttl-17 .ttl-main {
        font-size: 24px;
    }

    .cmn-ttl-17 .ttl-sub {
        font-size: 16px;
    }

    .cmn-ttl-17 .ttl-deco {
        bottom: -45px;
        left: -20px;
    }

    .cmn-ttl-17 .ttl-deco img {
        max-width: 40px;
    }

    .cmn-ttl-19 .ttl-main {
        padding: 10px 30px;
        font-size: 24px;
    }
}

/*見出し上書き用*/
[class*="ttl-mb-"] {
    --ttl-mb-xlarge: 80px;
    --ttl-mb-large: 60px;
    --ttl-mb-medium: 40px;
    --ttl-mb-small: 20px;
    --ttl-mb-xsmall: 10px;
}

.ttl-mb-xlarge {
    margin-bottom: var(--ttl-mb-xlarge);
}

.ttl-mb-large {
    margin-bottom: var(--ttl-mb-large);
}

.ttl-mb-medium {
    margin-bottom: var(--ttl-mb-medium);
}

.ttl-mb-small {
    margin-bottom: var(--ttl-mb-small);
}

.ttl-mb-xsmall {
    margin-bottom: var(--ttl-mb-xsmall);
}

.ttl-mb-none {
    margin-bottom: 0;
}

@media (max-width: 1024px) {
    .ttl-mb-xlarge {
        margin-bottom: calc(var(--ttl-mb-xlarge) * 0.8);
    }

    .ttl-mb-large {
        margin-bottom: calc(var(--ttl-mb-large) * 0.8);
    }

    .ttl-mb-medium {
        margin-bottom: calc(var(--ttl-mb-medium) * 0.8);
    }

    .ttl-mb-small {
        margin-bottom: calc(var(--ttl-mb-small) * 0.8);
    }

    .ttl-mb-xsmall {
        margin-bottom: calc(var(--ttl-mb-xsmall) * 0.8);
    }
}

@media (max-width: 599px) {
    .ttl-mb-xlarge {
        margin-bottom: calc(var(--ttl-mb-xlarge) * 0.6);
    }

    .ttl-mb-large {
        margin-bottom: calc(var(--ttl-mb-large) * 0.6);
    }

    .ttl-mb-medium {
        margin-bottom: calc(var(--ttl-mb-medium) * 0.6);
    }

    .ttl-mb-small {
        margin-bottom: calc(var(--ttl-mb-small) * 0.6);
    }

    .ttl-mb-xsmall {
        margin-bottom: calc(var(--ttl-mb-xsmall) * 0.6);
    }
}

/*記事詳細見出し*/
.detail-ttl .ttl-main {
    font-weight: bold;
    font-size: 24px;
}

@media (max-width: 599px) {
    .detail-ttl .ttl-main {
        font-size: 20px;
    }
}

/*記事内容見出し*/
.detail-content h2 {
    margin-top: 30px;
    margin-bottom: 20px;
    padding-bottom: 10px;
    font-size: 24px;
    position: relative;
    z-index: 0;
}

.detail-content h2:after {
    content: "";
    width: 100%;
    height: 2px;
    background: -webkit-gradient(linear, left top, right top, color-stop(20%, var(--back-color-07)), color-stop(20%, var(--back-color-03)));
    background: linear-gradient(to right, var(--back-color-07) 20%, var(--back-color-03) 20%);
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: 0;
}

.detail-content h3 {
    margin-top: 30px;
    margin-bottom: 20px;
    padding: 5px 0px 5px 15px;
    font-size: 20px;
    color: var(--txt-color-07);
    border-left: 3px solid;
}

.detail-content h4 {
    margin-top: 30px;
    margin-bottom: 20px;
    padding-left: 25px;
    font-size: 20px;
    position: relative;
    z-index: 0;
}

.detail-content h4:before {
    content: "";
    width: 15px;
    border-bottom: 2px solid var(--txt-color-07);
    position: absolute;
    top: 15px;
    left: 0px;
}



/*===================================
  共通ボタン btn-cmn
===================================*/
/*ボタン*/
.cmn-btn-01 .btn-inner>* {
    width: 320px;
    max-width: 100%;
    display: block;
    overflow: hidden;
    padding: 15px 10px;
    text-align: center;
    border-radius: 100px;
}

.cmn-btn-02 .btn-inner>* {
    width: 200px;
    max-width: 100%;
    display: block;
    overflow: hidden;
    padding: 15px 10px;
    text-align: center;
    border-radius: 5px;
}

.cmn-btn-03 .btn-inner>* {
    width: 340px;
    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: 10px;
    font-weight: bold;
    font-size: 20px;
    border: 3px solid;
    border-radius: 30px;
}

.cmn-btn-03 .btn-arrow {
    margin-right: 20px;
    font-size: 23px;
    line-height: 1;
}

.cmn-btn-03 .btn-arrow:after {
    content: "\f054";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
}

.cmn-btn-04 .btn-inner>* {
    display: block;
    padding: 15px 10px;
    font-weight: bold;
    font-size: 22px;
    text-align: center;
    border-radius: 5px;
}

.cmn-btn-05 .btn-inner>* {
    width: 200px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    align-items: center;
    -ms-flex-align: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    padding: 5px 10px;
    font-weight: bold;
    font-size: 18px;
    border-radius: 30px;
}

.cmn-btn-05 .btn-arrow {
    margin-right: 10px;
    font-size: 20px;
    line-height: 1;
}

.cmn-btn-05 .btn-arrow:after {
    content: "\f054";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
}

@media (max-width: 599px) {
    .cmn-btn-01 .btn-inner>* {
        width: 260px;
    }

    .cmn-btn-03 .btn-inner>* {
        width: 300px;
        font-size: 18px;
    }

    .cmn-btn-03 .btn-arrow {
        margin-right: 10px;
        font-size: 20px;
    }
}

/*お問い合わせページボタン*/
.contact-btn-01 .btn-inner>* {
    width: 320px;
    display: block;
    padding: 20px 10px;
    font-size: 18px;
    text-align: center;
    border-radius: 30px;
    position: relative;
    z-index: 0;
}

@media (max-width: 599px) {
    .contact-btn-01 .btn-inner>* {
        width: 260px;
    }

    .contact-btn-01.pattern-01 .btn-inner>* {
        width: 150px;
    }
}

/*クラス名「.backbtn」+ data-color属性「backbtn-color-」でボタンの擬似要素のカラー指定*/
.backbtn[data-color*="backbtn-color-"] .btn-inner:after {
    content: "";
    width: 100%;
    height: 100%;
    border-radius: 100px;
    position: absolute;
    top: 4px;
    left: 0;
    z-index: -1;
}

.backbtn.backbtn-01[data-color*="backbtn-color-"] .btn-inner:after {
    border-radius: 5px;
}

.backbtn.backbtn-02[data-color*="backbtn-color-"] .btn-inner:after {
    border-radius: 10px;
}

.backbtn[data-color="backbtn-color-00"] .btn-inner:after {
    background: var(--btn-color-00);
}

.backbtn[data-color="backbtn-color-01"] .btn-inner:after {
    background: var(--btn-color-01);
}

.backbtn[data-color="backbtn-color-02"] .btn-inner:after {
    background: var(--btn-color-02);
}

.backbtn[data-color="backbtn-color-03"] .btn-inner:after {
    background: var(--btn-color-03);
}

.backbtn[data-color="backbtn-color-04"] .btn-inner:after {
    background: var(--btn-color-04);
}

.backbtn[data-color="backbtn-color-05"] .btn-inner:after {
    background: var(--btn-color-05);
}

.backbtn[data-color="backbtn-color-06"] .btn-inner:after {
    background: var(--btn-color-06);
}

.backbtn[data-color="backbtn-color-07"] .btn-inner:after {
    background: var(--btn-color-07);
}

.backbtn[data-color="backbtn-color-08"] .btn-inner:after {
    background: var(--btn-color-08);
}

.backbtn[data-color="backbtn-color-09"] .btn-inner:after {
    background: var(--btn-color-09);
}

.backbtn[data-color="backbtn-color-10"] .btn-inner:after {
    background: var(--btn-color-10);
}

.backbtn[data-color="backbtn-color-11"] .btn-inner:after {
    background: var(--btn-color-11);
}

.backbtn[data-color="backbtn-color-12"] .btn-inner:after {
    background: var(--btn-color-12);
}

.backbtn[data-color="backbtn-color-13"] .btn-inner:after {
    background: var(--btn-color-13);
}

.backbtn[data-color="backbtn-color-14"] .btn-inner:after {
    background: var(--btn-color-14);
}

.backbtn[data-color="backbtn-color-15"] .btn-inner:after {
    background: var(--btn-color-15);
}

.backbtn[data-color="backbtn-color-16"] .btn-inner:after {
    background: var(--btn-color-16);
}

.backbtn[data-color="backbtn-color-17"] .btn-inner:after {
    background: var(--btn-color-17);
}

.backbtn[data-color="backbtn-color-18"] .btn-inner:after {
    background: var(--btn-color-18);
}

.backbtn[data-color="backbtn-color-19"] .btn-inner:after {
    background: var(--btn-color-19);
}

.backbtn[data-color="backbtn-color-20"] .btn-inner:after {
    background: var(--btn-color-20);
}

.backbtn[data-color="backbtn-color-21"] .btn-inner:after {
    background: var(--btn-color-21);
}

.backbtn[data-color="backbtn-color-22"] .btn-inner:after {
    background: var(--btn-color-22);
}

.backbtn[data-color="backbtn-color-23"] .btn-inner:after {
    background: var(--btn-color-23);
}

.backbtn[data-color="backbtn-color-24"] .btn-inner:after {
    background: var(--btn-color-24);
}

.backbtn[data-color="backbtn-color-25"] .btn-inner:after {
    background: var(--btn-color-25);
}

.backbtn[data-color="backbtn-color-26"] .btn-inner:after {
    background: var(--btn-color-26);
}

.backbtn[data-color="backbtn-color-27"] .btn-inner:after {
    background: var(--btn-color-27);
}

.backbtn[data-color="backbtn-color-28"] .btn-inner:after {
    background: var(--btn-color-28);
}

.backbtn[data-color="backbtn-color-29"] .btn-inner:after {
    background: var(--btn-color-29);
}

.backbtn[data-color="backbtn-color-30"] .btn-inner:after {
    background: var(--btn-color-30);
}

/*ボタンエフェクト*/
.btn-effect-01 .btn-inner {
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
    position: relative;
    z-index: 1;
}

.btn-effect-01 .btn-inner>*:not(.backbtn):hover {
    opacity: 1;
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
    -webkit-transform: translateY(4px) !important;
    transform: translateY(4px) !important;
}

[data-element-id] .btn-effect-01 .btn-inner>*:not(.backbtn):hover {
    -webkit-transform: translateY(0px) !important;
    transform: translateY(0px) !important;
}

/*ボタン上書き用*/
[class*="btn-mt-"] {
    --btn-mt-xlarge: 80px;
    --btn-mt-large: 60px;
    --btn-mt-medium: 40px;
    --btn-mt-small: 20px;
    --btn-mt-xsmall: 10px;
}

.btn-mt-xlarge {
    margin-top: var(--btn-mt-xlarge);
}

.btn-mt-large {
    margin-top: var(--btn-mt-large);
}

.btn-mt-medium {
    margin-top: var(--btn-mt-medium);
}

.btn-mt-small {
    margin-top: var(--btn-mt-small);
}

.btn-mt-xsmall {
    margin-top: var(--btn-mt-xsmall);
}

.btn-mt-none {
    margin-top: 0;
}

@media (max-width: 1024px) {
    .btn-mt-xlarge {
        margin-top: calc(var(--btn-mt-xlarge) * 0.8);
    }

    .btn-mt-large {
        margin-top: calc(var(--btn-mt-large) * 0.8);
    }

    .btn-mt-medium {
        margin-top: calc(var(--btn-mt-medium) * 0.8);
    }

    .btn-mt-small {
        margin-top: calc(var(--btn-mt-small) * 0.8);
    }

    .btn-mt-xsmall {
        margin-top: calc(var(--btn-mt-xsmall) * 0.8);
    }
}

@media (max-width: 599px) {
    .btn-mt-xlarge {
        margin-top: calc(var(--btn-mt-xlarge) * 0.6);
    }

    .btn-mt-large {
        margin-top: calc(var(--btn-mt-large) * 0.6);
    }

    .btn-mt-medium {
        margin-top: calc(var(--btn-mt-medium) * 0.6);
    }

    .btn-mt-small {
        margin-top: calc(var(--btn-mt-small) * 0.6);
    }

    .btn-mt-xsmall {
        margin-top: calc(var(--btn-mt-xsmall) * 0.6);
    }
}

/*===================================
  共通要素
===================================*/
/*h1ページタイトル */
.cmn-h1-01 {
    margin-top: 5px;
    margin-bottom: 5px;
    padding: 0 10px;
    font-weight: bold;
    font-size: 12px;
}

[data-element-id] .cmn-h1-01 {
    margin: 30px 10px;
    padding: 10px;
}

@media (max-width: 1024px) {
    .cmn-h1-01 {
        margin: 0;
        margin-right: 70px;
        padding: 0;
        position: absolute;
        top: 5px;
        left: 5px;
        z-index: 1;
    }
}

@media (max-width: 599px) {
    .cmn-h1-01 {
        margin-right: 50px;
    }
}

/*ヘッダーheader*/
body.hidden {
    overflow: hidden;
}

body.hidden .h1,
body.hidden .cmn-mainimg-01,
body.hidden .main,
body.hidden .footer {
    -webkit-filter: blur(3px);
    filter: blur(3px);
}

.overlay {
    width: 100%;
    height: 100%;
    display: none;
    overflow: hidden;
    background-color: rgb(0 0 0 / 50%);
    position: fixed;
    top: 0;
    right: 0;
    z-index: 20;

    -ms-touch-action: none;
    touch-action: none;
}

.overlay.active {
    display: block;
}

/*cmn-header*/
.header-inner {
    position: relative;
    z-index: 3;
}

@media (max-width: 1024px) {
    .header-inner {
        z-index: auto;
    }
}

.cmn-header-01 .box {
    padding: 0 50px 10px;
}

.cmn-header-01 .achievement {
    width: 105px;
    height: 79px;
    padding-top: 5px;
    font-weight: 500;
    font-size: 12px;
    line-height: 1.2;
    text-align: center;
    background-image: url("/import/tenant_1/160.16.50.164/html/images/deco-25.webp");
}

.cmn-header-01 .achievement .em {
    font-weight: bold;
    font-size: 140%;
}

.cmn-header-01 .telbox .tel>* {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
    align-items: flex-end;
    -ms-flex-align: end;
    font-weight: bold;
    font-size: 38px;
    line-height: 1;
}

.cmn-header-01 .telbox .tel .icon {
    height: 25px;
    margin-right: 5px;
    line-height: 1;
}

.cmn-header-01 .telbox .tel .icon img {
    max-width: 45px;
}

.cmn-header-01 .telbox .txt {
    margin-top: 10px;
    margin-left: -10px;
    font-size: 15px;
}

.cmn-header-01 .btnbox {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
    align-items: flex-end;
    -ms-flex-align: end;
}

.cmn-header-01 .btnbox .btn-inner>* {
    height: 55px;
}

.cmn-header-01 .btnbox .line .btn-inner>* {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    align-items: center;
    -ms-flex-align: center;
    padding: 10px;
    border-radius: 10px;
}

.cmn-header-01 .btnbox .line .icon {
    margin-right: 10px;
}

.cmn-header-01 .btnbox .huki {
    width: 140px;
    margin-bottom: 5px;
    font-weight: bold;
    font-size: 12px;
    letter-spacing: 0;
    position: relative;
    z-index: 0;
}

.cmn-header-01 .btnbox .huki:before,
.cmn-header-01 .btnbox .huki:after {
    content: "";
    border-bottom: 2px solid var(--txt-color-02);
    position: absolute;
}

.cmn-header-01 .btnbox .huki:before {
    width: 20px;
    -webkit-transform: rotate(20deg);
    transform: rotate(20deg);
    top: -7px;
    right: 3px;
}

.cmn-header-01 .btnbox .huki:after {
    width: 50px;
    -webkit-transform: rotate(15deg);
    transform: rotate(15deg);
    top: -5px;
    right: 0;
}

.cmn-header-01 .btnbox .reserve .btn-inner>* {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    align-items: center;
    -ms-flex-align: center;
    padding: 10px;
    border-radius: 10px;
}

.cmn-header-01 .btnbox .reserve .btn-txt {
    margin: 0 10px;
    font-size: 14px;
    line-height: 1;
    letter-spacing: 0;
    text-align: center;
}

.cmn-header-01 .btnbox .reserve .btn-txt .em {
    display: block;
    margin-top: 5px;
    font-weight: bold;
    font-size: 140%;
    letter-spacing: 1px;
}

.cmn-header-01 .btnbox .reserve .btn-img {
    max-width: 120px;
    height: 75px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    align-items: center;
    -ms-flex-align: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin-top: -18px;
    padding: 5px 5px 0;
}

.cmn-header-01 .btnbox .reserve .btn-img img {
    width: auto;
    max-width: 100%;
    height: initial !important;
    max-height: 100%;
}

.cmn-header-01 .telicon {
    width: 60px;
    height: 60px;
    font-size: 30px;
    line-height: 60px;
    text-align: center;
    border-radius: 50%;
    position: fixed;
    bottom: 6px;
    right: 10px;
    z-index: 10;
}

.cmn-header-01 .telicon>* {
    width: 100%;
    height: 100%;
    display: block;
}

[data-element-id] .cmn-header-01 .telicon {
    margin-bottom: 60px;
    margin-left: 10px;
    margin-right: 150px;
    position: relative;
    bottom: 0;
    right: 0;
}

.cmn-header-01 .telicon .txt {
    display: none;
}

[data-element-id] .cmn-header-01 .telicon .txt {
    display: block;
    color: var(--txt-color-01);
}


@media (max-width: 1024px) {
    .cmn-header-01 .box {
        padding: 0;
    }

    .cmn-header-01 .btnbox {
        width: calc(100% - 90px);
        position: fixed;
        bottom: 10px;
        left: 10px;
        right: 0;
        z-index: 10;
    }

    .cmn-header-01 .btnbox .line {
        -webkit-box-flex: 1;
        -ms-flex-positive: 1;
        flex-grow: 1;
    }

    .cmn-header-01 .btnbox .reserve {
        -webkit-box-flex: 1;
        -ms-flex-positive: 1;
        flex-grow: 1;
    }
}

@media (max-width: 599px) {
    .cmn-header-01 .btnbox {
        width: calc(100% - 65px);
    }

    .cmn-header-01 .btnbox .line .btn-inner>* {
        padding: 5px 10px;
    }

    .cmn-header-01 .btnbox .line .icon {
        margin-right: 5px;
    }

    .cmn-header-01 .btnbox .line .btn-txt {
        -ms-flex-negative: 0;
        flex-shrink: 0;
    }

    .cmn-header-01 .btnbox .reserve .btn-inner>* {
        padding: 5px 10px;
    }

    .cmn-header-01 .btnbox .reserve .btn-txt {
        -ms-flex-negative: 0;
        flex-shrink: 0;
        margin: 0 5px;
    }

    .cmn-header-01 .telicon {
        width: 45px;
        height: 45px;
        font-size: 22px;
        line-height: 44px;
        bottom: 10px;
        right: 5px;
    }
}

.cmn-header-02 .box {
    height: 40px;
}

[data-element-id] .cmn-header-02 .box {
    height: auto;
}

.cmn-header-02 .nav {
    padding: 15px 25px;
    border-radius: 30px;
    -webkit-box-shadow: 0 0 5px #b6b6b6;
    box-shadow: 0 0 5px #b6b6b6;
    -webkit-transition: 0.3s linear;
    transition: 0.3s linear;
    -webkit-transform: translateY(15px);
    transform: translateY(15px);
    position: relative;
    z-index: 1;
}

[data-element-id] .cmn-header-02 .nav {
    -webkit-transform: inherit;
    transform: inherit;
}

.cmn-header-02 .nav.fixed {
    width: 100%;
    max-width: 1200px;
    position: fixed;
    top: 0;
}

.cmn-header-02 .nav .navbox>ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    align-items: center;
    -ms-flex-align: center;
}

[data-element-id] .cmn-header-02 .nav .navbox>ul {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.cmn-header-02 .nav .navbox>ul>li {
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    position: relative;
    z-index: 0;
}

.cmn-header-02 .nav .navbox>ul>li+li {
    padding-left: 20px;
}

.cmn-header-02 .nav .navbox>ul>li+li:before {
    content: "";
    height: 18px;
    border-left: 1px solid var(--txt-color-14);
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    position: absolute;
    top: 50%;
    left: 0;
}

.cmn-header-02 .nav .navbox>ul>li+li>* {
    font-weight: bold;
    font-size: 16px;
}

.cmn-header-02 li.dropdown {
    overflow: hidden;
    cursor: pointer;
    position: relative;
}

[data-element-id] .cmn-header-02 li.dropdown {
    overflow: visible;
}

.cmn-header-02 li.dropdown:hover {
    overflow: visible;
}

.cmn-header-02 li.dropdown .dropdown-box {
    width: 280px;
    visibility: hidden;
    margin: 0 auto;
    padding-top: 15px;
    opacity: 0;
    -webkit-transition: 0.3s linear;
    transition: 0.3s linear;
    -webkit-transform: translate(0, -10%);
    transform: translate(0, -10%);
    position: absolute;
    top: 100%;
    left: -150px;
    right: -150px;
    z-index: 10;
}

[data-element-id] .cmn-header-02 li.dropdown .dropdown-box {
    width: auto;
    visibility: visible;
    opacity: 1;
    -webkit-transform: translate(0, 0);
    transform: translate(0, 0);
    position: static;
}

.cmn-header-02 li.dropdown:hover .dropdown-box {
    visibility: visible;
    opacity: 1;
    -webkit-transform: translate(0, 0);
    transform: translate(0, 0);
}

.cmn-header-02 li.dropdown ul {
    padding: 20px 20px;
    border-radius: 10px;
    -webkit-box-shadow: 0px 4px 2px -2px rgb(0 0 0 / 20%);
    box-shadow: 0px 1px 10px 1px rgb(0 0 0 / 20%);
    position: relative;
}

.cmn-header-02 li.dropdown li+li {
    margin-top: 10px;
}

.cmn-header-02 li.dropdown li>* {
    display: block;
    padding-left: 15px;
    font-weight: 500;
    font-size: 14px;
    position: relative;
    z-index: 0;
}

.cmn-header-02 li.dropdown li>* .icon {
    width: 5px;
    height: 5px;
    font-size: 10px;
    border-radius: 50%;
    position: absolute;
    top: 10px;
    left: 0;
    z-index: 0;
}

.cmn-header-02 .telbox {
    text-align: center;
}

.cmn-header-02 .telbox .tel>* {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
    align-items: flex-end;
    -ms-flex-align: end;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    font-weight: bold;
    font-size: 38px;
    line-height: 1;
}

.cmn-header-02 .telbox .tel .icon {
    height: 30px;
    margin-right: 5px;
    line-height: 1;
}

.cmn-header-02 .telbox .tel .icon img {
    max-width: 54px;
}

@media (max-width: 1024px) {
    .cmn-header-02 .box {
        height: 0;
    }

    .cmn-header-02 .nav {
        width: 80%;
        height: calc(100% - 20px);
        padding: 35px 0;
        border-radius: 30px 0 0 30px;
        -webkit-transform: translateX(100%);
        transform: translateX(100%);
        position: fixed;
        top: 10px;
        right: 0;
        right: 0;
        z-index: 9998;
    }

    .cmn-header-02 .nav.action {
        -webkit-transform: translateX(0%);
        transform: translateX(0%);
    }

    .cmn-header-02 .nav .navbox {
        height: 100%;
        overflow-y: scroll;
    }

    .cmn-header-02 .nav .navbox>ul {
        display: block;
    }

    .cmn-header-02 .nav .navbox>ul>li+li {
        padding-left: 10px;
        padding-right: 10px;
    }

    .cmn-header-02 .nav .navbox>ul>li+li:before {
        display: none;
    }

    .cmn-header-02 .nav .navbox>ul>li {
        padding-top: 10px;
        padding-bottom: 10px;
        padding-left: 10px;
        padding-right: 10px;
        border-top: 1px solid var(--txt-color-14);
    }

    .cmn-header-02 .nav .navbox>ul>li:last-of-type {
        border-bottom: 1px solid var(--txt-color-14);
    }

    .cmn-header-02 li.dropdown .dropdown-box {
        width: 100%;
        visibility: visible;
        margin: 0 auto;
        padding-top: 10px;
        opacity: 1;
        -webkit-transform: inherit;
        transform: inherit;
        position: relative;
        top: 0;
        left: 0;
        right: 0;
    }

    .cmn-header-02 li.dropdown ul {
        padding: 5px 10px 10px;
        border-radius: 0;
        -webkit-box-shadow: none;
        box-shadow: none;
    }
}

@media (max-width: 599px) {
    .cmn-header-02 .nav {
        width: 90%;
    }

    .cmn-header-02 .telbox .tel>* {
        font-size: 30px;
    }

    .cmn-header-02 .telbox .tel .icon {
        height: 20px;
    }

    .cmn-header-02 .telbox .tel .icon img {
        max-width: 34px;
    }
}

/*ハンバーガーボタン*/
.cmn-hamburger-01 {
    width: 60px;
    height: 60px;
    border-radius: 0 0 10px 10px;
    opacity: 0.8;
    cursor: pointer;
    -webkit-transition: 0.3s linear;
    transition: 0.3s linear;
    position: fixed;
    top: 5px;
    right: 5px;
    z-index: 9999;
}

[data-element-id] .cmn-hamburger-01 {
    width: 120px;
    height: 140px;
    display: none;
    margin-top: 20px;
    margin-bottom: 20px;
    margin-left: auto;
    top: 0;
    right: 0;
}

.cmn-hamburger-01 .bar {
    width: 39px;
    height: 4px;
    margin-top: -1px;
    padding: 0;
    text-indent: 9998px;
    border-bottom: 4px solid;
    -webkit-transition: 0.3s linear;
    transition: 0.3s linear;
    position: absolute;
    top: 50%;
    left: 10px;
}

.cmn-hamburger-01.active .bar {
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
}

.cmn-hamburger-01 .bar:before,
.cmn-hamburger-01 .bar:after {
    content: "";
    width: 40px;
    display: block;
    border-bottom: 4px solid;
    position: absolute;
    left: 0;
}

.cmn-hamburger-01 .bar:before {
    top: 15px;
}

.cmn-hamburger-01 .bar:after {
    top: -15px;
}

.cmn-hamburger-01.active .bar:before,
.cmn-hamburger-01.active .bar:after {
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg);
    top: 0;
    left: 0;
}

@media (max-width: 1024px) {
    .cmn-hamburger-01 {
        top: 0;
    }
}

@media (max-width: 599px) {
    .cmn-hamburger-01 {
        width: 50px;
        height: 50px;
        bottom: 5px;
        right: 5px;
    }

    .cmn-hamburger-01 {
        width: 40px;
        height: 40px;
        bottom: 5px;
        right: 5px;
    }

    .cmn-hamburger-01 .bar {
        width: 28px;
        height: 3px;
        border-bottom: 3px solid;
        left: 6px;
    }

    .cmn-hamburger-01 .bar:before,
    .cmn-hamburger-01 .bar:after {
        width: 28px;
        border-bottom: 3px solid;
    }

    .cmn-hamburger-01 .bar:before {
        top: 11px;
    }

    .cmn-hamburger-01 .bar:after {
        top: -11px;
    }
}

/*上に戻るボタン*/
.cmn-return-01 {
    width: 60px;
    height: 60px;
    visibility: hidden;
    border-radius: 50%;
    -webkit-box-shadow: 0px 4px 2px -2px rgb(0 0 0 / 20%);
    box-shadow: 0px 2px 12px -2px rgb(0 0 0 / 20%);
    opacity: 0;
    -webkit-transition: 0.5s ease-out;
    transition: 0.5s ease-out;
    position: fixed;
    bottom: 10px;
    right: 10px;
    z-index: 10;
}

.cmn-return-01.scroll-addition {
    visibility: visible;
    opacity: 1;
}

.cmn-return-01>* {
    width: 100%;
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-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;
    font-weight: 500;
    font-size: 26px;
    line-height: 1;
    text-align: center;
}

.cmn-return-01 .icon {
    font-size: 26px;
}

@media (max-width: 1024px) {
    .cmn-return-01 {
        bottom: 70px;
    }
}

@media (max-width: 599px) {
    .cmn-return-01 {
        width: 40px;
        height: 40px;
        bottom: 70px;
        right: 5px;
    }

    .cmn-return-01>* {
        font-size: 16px;
    }

    .cmn-return-01 .icon {
        font-size: 18px;
    }
}

/*===================================
フッター footer
===================================*/
/*cmn-footer*/
.cmn-footer-01 .logo img {
    max-width: 252px;
}

.cmn-footer-02 li+li {
    margin-top: 5px;
}

.cmn-footer-02 li>* {
    font-size: 16px;
}

@media (max-width: 1024px) {
    .cmn-footer-02 li>* {
        font-size: 14px;
    }
}

.cmn-copy-01 {
    font-size: 14px;
    text-align: center;
}

.sticky-btn {
    position: fixed;
    width: 40px;
    top: 20%;
    right: 0;
    z-index: 1;
    -webkit-transition: top 0.3s ease-out;
    transition: top 0.3s ease-out;
}

.sticky-btn a {
    display: block;
    padding: 2em 0.5em;
    color: white;
    letter-spacing: 0.1em;
    -ms-writing-mode: tb-rl;
    -webkit-writing-mode: vertical-rl;
    writing-mode: vertical-rl;
    border-radius: 0.75em 0 0 0.75em;
    background-color: var(--back-color-02);
    -webkit-box-shadow: 0px 0px 20px 0px rgba(0, 0, 0, 0.2);
    box-shadow: 0px 0px 20px 0px rgba(0, 0, 0, 0.2);
    position: relative;
}

.sticky-btn a .icon-img {
    width: 3em;
    display: block;
    -webkit-transform: translate(-25%, -50%);
    transform: translate(-25%, -50%);
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
}

.sticky-btn a .icon-img img {
    width: 100%;
    height: auto;
}

[data-element-id] .sticky-btn {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    margin-bottom: 50px;
    margin-left: auto;
    -webkit-transform: unset;
    transform: unset;
    position: static;
}

@media (max-width: 599px) {
    .cmn-copy-01 {
        font-size: 12px;
    }
}

/*固定ボタン*/
.cmn-fixed-01 {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    visibility: hidden;
    margin: auto;
    opacity: 0;
    -webkit-transition: 0.3s linear;
    transition: 0.3s linear;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    position: fixed;
    top: 50%;
    left: 0;
    right: 0;
    z-index: 9;
}

.cmn-fixed-01.scroll-addition {
    visibility: visible;
    opacity: 1;
}

[data-element-id] .cmn-fixed-01 {
    width: 300px;
    visibility: visible;
    margin-top: 30px;
    margin-left: auto;
    opacity: 1;
    -webkit-transform: inherit;
    transform: inherit;
    position: relative;
    top: 0;
    bottom: 0;
    right: 0;
}

.cmn-fixed-01.active {
    visibility: hidden;
    opacity: 0;
}

.cmn-fixed-01 .box {
    padding: 15px;
    border: 2px solid var(--txt-color-02);
    border-radius: 20px;
    background: rgba(255, 255, 255, 0.6);
    -webkit-box-shadow: 0 0 5px #b6b6b6;
    box-shadow: 0 0 5px #b6b6b6;
    position: relative;
    z-index: 0;
}

.cmn-fixed-01 .close {
    width: 40px;
    height: 40px;
    font-size: 26px;
    color: var(--txt-color-00);
    line-height: 32px;
    text-align: center;
    border: 3px solid;
    border-radius: 50%;
    background: var(--back-color-06);
    -webkit-box-shadow: 0 0 5px #b6b6b6;
    box-shadow: 0 0 5px #b6b6b6;
    cursor: pointer;
    position: absolute;
    top: -20px;
    left: -20px;
    z-index: 1;
}

.cmn-fixed-01 .imgbox {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
    align-items: flex-end;
    -ms-flex-align: end;
}

.cmn-fixed-01 .imgbox .tit {
    margin-bottom: 60px;
    font-weight: 500;
    font-size: 18px;
}

.cmn-fixed-01 .imgbox .pic {
    width: 120px;
    margin-top: -55px;
}

.cmn-fixed-01 .btnbox {
    margin-top: -50px;
}

.cmn-fixed-01 .btnbox .txt {
    font-size: 14px;
    text-align: center;
    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;
    ;
}

.cmn-fixed-01 .btnbox .btn-inner>* {
    display: block;
    padding: 15px 10px;
    font-weight: bold;
    font-size: 16px;
    text-align: center;
    border-radius: 10px;
}

.cmn-fixed-01 .telbox .tel>* {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
    align-items: flex-end;
    -ms-flex-align: end;
    font-weight: bold;
    font-size: 24px;
    line-height: 1;
}

.cmn-fixed-01 .telbox .tel .icon {
    height: 17px;
    margin-right: 0px;
    line-height: 1;
}

.cmn-fixed-01 .telbox .tel .icon img {
    max-width: 30px;
}

.cmn-fixed-01 .telbox .txt {
    margin-top: 5px;
    font-weight: 500;
    font-size: 11px;
}

@media (max-width: 1024px) {
    .cmn-fixed-01 {
        bottom: 150px;
    }
}

@media (max-width: 599px) {
    .cmn-fixed-01 {
        width: 260px;
        max-width: 100%;
        margin: auto;
        -webkit-transform: translateY(-50%);
        transform: translateY(-50%);
        top: 50%;
        bottom: auto;
        left: 0;
        right: 0;
    }
}

.cmn-fixed-02 {
    -webkit-transition: 0.4s ease;
    transition: 0.4s ease;
    -webkit-transform: translateX(100%);
    transform: translateX(100%);
    position: fixed;
    top: 60%;
    right: 0;
    z-index: 10;
}

.cmn-fixed-02.active {
    -webkit-transform: translateX(0);
    transform: translateX(0);
}

[data-element-id] .cmn-fixed-02 {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    margin-left: auto;
    -webkit-transform: unset;
    transform: unset;
    position: static;
}

.cmn-fixed-02 li+li {
    margin-top: 20px;
}

.cmn-fixed-02 li>* {
    width: 60px;
    height: 60px;
    display: block;
    overflow: hidden;
    padding: 10px;
    font-size: 30px;
    color: var(--txt-color-00);
    line-height: 36px;
    text-align: center;
    border-radius: 10px 0 0 10px;
}

.cmn-fixed-02 li.line>* {
    background: var(--back-color-04);
}

.cmn-fixed-02 li.contact>* {
    background: var(--back-color-02);
}

/*パンクズ*/
.cmn-pankuzu-01 li {
    display: inline;
    font-weight: 500;
    font-size: 14px;
    letter-spacing: 0px;
}

.cmn-pankuzu-01 li+li:before {
    content: ">";
    margin: 0 5px;
    font-size: 14px;
}

.cmn-pankuzu-01 li:nth-of-type(1) a {
    border-bottom: 1px solid;
}

@media (max-width: 599px) {
    .cmn-pankuzu-01 li {
        font-size: 12px;
    }
}

/*テーブル表*/
.cmn-table-01 table {
    width: 100%;
}

.cmn-table-01 table tbody tr {
    border-top: 1px solid var(--txt-color-00);
}

.cmn-table-01 table th,
.cmn-table-01 table td {
    padding: 15px 20px;
    font-weight: 500;
    font-size: 16px;
    text-align: left;
}

.cmn-table-01 table th+th,
.cmn-table-01 table td+td {
    border-left: 1px solid var(--txt-color-00);
}


.cmn-table-01 table th:nth-of-type(1),
.cmn-table-01 table td:nth-of-type(1) {
    width: 20%;
    text-align: center;
}

.cmn-table-01 table th {
    text-align: center;
}

.cmn-table-01 table th:nth-of-type(2),
.cmn-table-01 table td:nth-of-type(2) {
    width: 25%;
}

.cmn-table-01 table th:nth-of-type(3),
.cmn-table-01 table td:nth-of-type(3) {
    width: 25%;
}

.cmn-table-01 table th:nth-of-type(4),
.cmn-table-01 table td:nth-of-type(4) {
    width: 30%;
}

.cmn-table-01 table .mark {
    -ms-flex-negative: 0;
    flex-shrink: 0;
    margin-right: 10px;
    line-height: 1;
}

.cmn-table-01 table .mark.em {
    font-size: 30px;
}

@media (max-width: 1024px) {

    .cmn-table-01 table th,
    .cmn-table-01 table td {
        padding: 15px 10px;
    }
}

@media (max-width: 599px) {
    .cmn-table-01 .table {
        min-width: 700px;
    }

    .cmn-table-01 table th,
    .cmn-table-01 table td {
        font-size: 14px;
    }

    .cmn-table-01 table th:nth-of-type(1),
    .cmn-table-01 table td:nth-of-type(1) {
        width: 15%;
    }

    .cmn-table-01 table .mark {
        width: 100%;
        margin-bottom: 5px;
        margin-right: 0px;
        text-align: center;
    }

    .cmn-table-01 table .mark.em {
        font-size: 24px;
    }
}

/*===================================
  TOPページ
===================================*/
/* メインビジュアル */
.cmn-mainimg-01 {
    position: relative;
    z-index: 0;
}

.cmn-mainimg-01 img {
    width: 100%;
}

.cmn-mainimg-01 .uk-slidenav-position {
    overflow: hidden;
    position: relative;
}

.cmn-mainimg-01 .uk-slidenav-position:after {
    content: "";
    display: block;
    padding-top: 60%;
}

.cmn-mainimg-01 .uk-slideshow {
    width: 100%;
    height: 100% !important;
    position: absolute;
    top: 0;
}

.cmn-mainimg-01 .uk-slideshow li {
    height: 100% !important;
}

[data-element-id] .uk-slideshow li {
    opacity: 1;
}

.cmn-mainimg-01 .uk-slideshow .uk-flex {
    height: 100%;
}

.cmn-mainimg-01 .uk-slideshow img {
    width: 100%;
    height: 100% !important;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: 50% 50%;
    object-position: 50% 50%;
    /*IE対策*/
    font-family: "object-fit: cover; object-position: 50% 50%;";
}

.cmn-mainimg-01 .pic {
    width: 70%;
    margin-left: auto;
}

.cmn-mainimg-01 .left {
    width: 50%;
    position: absolute;
    bottom: -50px;
    left: 50px;
    z-index: 1;
}

.cmn-mainimg-01 .catch {
    margin-bottom: 30px;
}

.cmn-mainimg-01 .catch-sub {
    display: inline-block;
    padding: 3px 60px;
    font-weight: bold;
    font-size: 22px;
    text-align: center;
    border: 1px solid;
}

.cmn-mainimg-01 .catch-main {
    font-size: 34px;
    letter-spacing: 3px;
}

.cmn-mainimg-01 .catch-main .em {
    display: inline-block;
    font-weight: bold;
    font-size: 55px;
    background: linear-gradient(60deg, #f9a703, #f88c0b 60%, #faba04);
    -webkit-background-clip: text;

    -webkit-text-fill-color: transparent;
}

.cmn-mainimg-01 .subimg .pic:nth-of-type(1) {
    width: 75%;
    margin-bottom: 50px;
    position: relative;
    z-index: 0;
}

.cmn-mainimg-01 .subimg .pic:nth-of-type(2) {
    width: 40%;
    margin-left: -15%;
    position: relative;
    z-index: 1;
}

.cmn-mainimg-01 .deco-01 {
    width: 126px;
    position: absolute;
    top: -60px;
    left: -30px;
}

.cmn-mainimg-01 .deco-02 {
    width: 67px;
    position: absolute;
    top: 26%;
    right: 12%;
    z-index: 1;
}

.cmn-mainimg-01 .deco-03 {
    width: 249px;
    position: absolute;
    bottom: -60px;
    right: 31%;
    z-index: 2;
}

.cmn-mainimg-01 .deco-04 {
    width: 100px;
    position: absolute;
    bottom: -20px;
    left: -35px;
    z-index: -1;
}

.cmn-mainimg-01 .deco-05 {
    width: 130px;
    height: 130px;
    border-radius: 50%;
    position: absolute;
    bottom: -30px;
    right: 80px;
    z-index: -1;
}

@media (max-width: 1024px) {
    .cmn-mainimg-01 .uk-slidenav-position:after {
        padding-top: 500px;
    }

    .cmn-mainimg-01 .left {
        width: 60%;
        bottom: -20px;
        left: 20px;
    }

    .cmn-mainimg-01 .catch-main {
        font-size: 24px;
    }

    .cmn-mainimg-01 .catch-main .em {
        font-size: 40px;
    }

    .cmn-mainimg-01 .catch-sub {
        margin-bottom: 5px;
        padding: 3px 40px;
        font-size: 18px;
    }

    .cmn-mainimg-01 .deco-03 {
        width: 180px;
        bottom: -30px;
        right: 15%;
    }
}

@media (max-width: 599px) {
    .cmn-mainimg-01 .uk-slidenav-position:after {
        padding-top: 80%;
    }

    .uk-slideshow li div {
        height: 100%;
    }

    .cmn-mainimg-01 .left {
        width: 100%;
        position: static;
        bottom: 0;
        left: 0;
    }
}

/*===================================
  下層
===================================*/
/*下層メインビジュアル*/
.cmn-lowerimg-01 {
    position: relative;
}

.cmn-lowerimg-01 .pic {
    display: block;
    position: relative;
}

.cmn-lowerimg-01 .pic img {
    width: 100%;
    height: 100% !important;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: 50% 50%;
    object-position: 50% 50%;
    -webkit-filter: brightness(0.7);
    filter: brightness(0.7);
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
}

.cmn-lowerimg-01 .pic:after {
    content: "";
    display: block;
    padding-top: 400px;
}

.cmn-lowerimg-01 .catch {
    padding: 15px 70px;
    white-space: nowrap;
    border: 1px solid;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    position: absolute;
    top: 50%;
    left: 50%;
    z-index: 2;
}

.cmn-lowerimg-01 .catch .catch-main {
    font-weight: 500;
    font-size: 30px;
    letter-spacing: 2px;
}

@media (max-width: 1024px) {
    .cmn-lowerimg-01 .pic:after {
        padding-top: 250px;
    }

    .cmn-lowerimg-01 .catch {
        padding: 10px 60px;
    }
}

@media (max-width: 599px) {
    .cmn-lowerimg-01 .catch {
        padding: 10px 20px;
    }

    .cmn-lowerimg-01 .catch .catch-main {
        font-size: 22px;
    }

    .cmn-lowerimg-01 .pic:after {
        padding-top: 50%;
    }
}

/*===================================
  コンテンツ
===================================*/
/*cmn-event*/
.cmn-event-01 .box {
    overflow: hidden;
    border: 2px solid;
    border-radius: 10px;
}

.cmn-event-01 .tit {
    padding: 5px 10px;
    font-size: 24px;
    text-align: center;
}

.cmn-event-01 .imgbox {
    padding: 40px 40px 20px;
}

.cmn-event-01 .imgbox li>* {
    display: block;
}

@media (max-width: 1024px) {
    .cmn-event-01 .imgbox {
        padding: 20px 20px 0px;
    }
}

@media (max-width: 599px) {
    .cmn-event-01 .tit {
        font-size: 20px;
    }
}

/*cmn-achievement*/
.cmn-achievement-01 .box {
    position: relative;
    z-index: 0;
}

.cmn-achievement-01 .pic {
    position: relative;
    z-index: 1;
}

.cmn-achievement-01 .medal,
.cmn-achievement-01 .medal>*:after {
    width: 196px;
    height: 274px;
}

.cmn-achievement-01 .medal {
    -webkit-filter: drop-shadow(0px 0px 7px #515151);
    filter: drop-shadow(0px 0px 7px #515151);
    position: absolute;
    bottom: -50px;
    right: -40px;
    z-index: 1;
}

.cmn-achievement-01 .medal>* {
    width: 100%;
    height: 100%;
}

@media (max-width: 1024px) {

    .cmn-achievement-01 .medal,
    .cmn-achievement-01 .medal>*:after {
        width: 156px;
        height: 214px;
    }
}

@media (max-width: 599px) {

    .cmn-achievement-01 .medal,
    .cmn-achievement-01 .medal>*:after {
        width: 116px;
        height: 154px;
        bottom: -60px;
        right: -10px;
    }
}

.cmn-achievement-02 .box {
    position: relative;
    z-index: 1;
}

.cmn-achievement-02 .medal {
    width: 243px;
    height: 326px;
    -webkit-filter: drop-shadow(0px 0px 7px #515151);
    filter: drop-shadow(0px 0px 7px #515151);
    position: absolute;
    top: -30px;
}

.cmn-achievement-02 .medal>* {
    width: 100%;
    height: 100%;
}

.cmn-achievement-02 .review-box {
    width: calc(100% - (243px + 5%));
    margin-left: auto;
}

.cmn-achievement-02 .review-box .g-reviews-wrap {
    padding: 1em;
}

.cmn-achievement-02 .review-box .g-reviews-wrap .g-icon {
    display: none;
}

.cmn-achievement-02 .review-box .g-reviews-wrap .place-heading {
    width: 45%;
    font-weight: bold;
    font-size: 2em;
    color: white;
}

.cmn-achievement-02 .review-box .g-reviews-wrap .place-heading .place-rating {
    display: inline-block;
    margin-right: 0.5em;
}

.cmn-achievement-02 .review-box .g-reviews-wrap .place-heading .fa-star {
    color: #fbbc04;
}

.cmn-achievement-02 .review-box .g-reviews-wrap .place-heading .review-count {
    display: block;
    font-weight: normal;
    font-size: 16px;
    line-height: 1.2;
}

.review-pack {
    padding: 80px 0;
}

.review-pack .review-item .reviews-container {
    width: 100%;
    max-width: 600px;
    margin-right: auto;
}

.reviews-container .review-wrap-parent {
    width: 100%;
    overflow-y: scroll;
    -webkit-overflow-scrolling: touch;
    ;
}

.reviews-container .review-wrap {
    width: calc(100% - 1em);
    margin: 0.5em;
    padding: 1em 1em 1em 5em;
    border-radius: 1em;
    background-size: 3em 3em;
    background-repeat: no-repeat;
    background-position: top 1em left 1em;
    background-color: white;
}

.reviews-container .review-wrap .review-profile {
    font-size: 14px;
}

.reviews-container .review-wrap .review-rate {
    color: #fbbc04;
}

.reviews-container .review-wrap .review-rate .review-time-description {
    display: inline-block;
    margin-left: 1em;
    font-size: 11px;
    color: initial;
}

.reviews-container .review-wrap .review-text {
    width: 100%;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    overflow: hidden;
    margin-top: 0.5em;
    font-size: 13px;
    white-space: inherit;

    -webkit-line-clamp: 2;
}

.reviews-container .more-reviews-btn {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    margin-top: 1em;
    margin-left: auto;
}

.reviews-container .more-reviews-btn a {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    display: block;
    font-weight: bold;
    color: var(--txt-color-02);
}

.cmn-achievement-02 .txtbox .tit {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    align-items: center;
    -ms-flex-align: center;
    font-weight: bold;
    font-size: 30px;
    line-height: 1;
}

.cmn-achievement-02 .txtbox .tit .icon {
    margin-right: 15px;
}

.cmn-achievement-02 .txtbox .num {
    -ms-flex-negative: 0;
    flex-shrink: 0;
    margin-right: 10px;
    font-weight: bold;
    font-size: 60px;
}

.cmn-achievement-02 .pic {
    width: 480px;
    -webkit-filter: drop-shadow(0px 0px 7px #515151);
    filter: drop-shadow(0px 0 7px #515151);
    position: absolute;
    bottom: 0;
    right: 0;
}

@media (max-width: 1024px) {
    .review-pack .review-item .reviews-container {
        margin-left: auto;
    }

    .cmn-achievement-02 .review-box .g-reviews-wrap .place-heading,
    .cmn-achievement-02 .review-box .g-reviews-wrap .review-wrap-parent {
        width: 100%;
    }

    .cmn-achievement-02 .review-box .g-reviews-wrap .place-heading {
        font-size: 1.5em;
    }

    .cmn-achievement-02 .medal,
    .cmn-achievement-02 .medal>*:after {
        width: 173px;
        height: 236px;
    }

    .cmn-achievement-02 .txtbox {
        padding-top: 30px;
        padding-bottom: 20px;
        padding-left: 190px;
        padding-right: 250px;
    }

    .cmn-achievement-02 .txtbox .tit {
        font-size: 24px;
    }

    .cmn-achievement-02 .txtbox .tit .icon img {
        max-width: 30px;
    }

    .cmn-achievement-02 .txtbox .num {
        font-size: 40px;
    }

    .cmn-achievement-02 .pic {
        width: 250px;
    }
}

@media (max-width: 599px) {
    .cmn-achievement-02 .box {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        align-items: center;
        -ms-flex-align: center;
    }

    .cmn-achievement-02 .review-box .g-reviews-wrap .place-heading {
        font-size: 1.1em;
    }

    .cmn-achievement-02 .review-box {
        width: 100%;
    }

    .cmn-achievement-02 .pic {
        width: 100%;
        position: relative;
    }

    .cmn-achievement-02 .medal {
        -ms-flex-negative: 0;
        flex-shrink: 0;
        position: static;
    }

    .cmn-achievement-02 .medal,
    .cmn-achievement-02 .medal>*:after {
        width: 143px;
        height: 186px;
    }

    .cmn-achievement-02 .txtbox {
        padding-left: 155px;
        padding-right: 0;
    }

    .cmn-achievement-02 .txtbox .tit {
        font-size: 20px;
    }

    .cmn-achievement-02 .txtbox .tit .icon {
        margin-right: 10px;
    }

    .reviews-container .more-reviews-btn {
        margin-right: 1em;
    }
}

.cmn-achievement-03 .txtbox {
    height: 100%;
    overflow: hidden;
    padding: 60px 50px;
    position: relative;
    z-index: 0;
}

.cmn-achievement-03 .txtbox .deco-01 {
    width: 250px;
    height: 250px;
    border-radius: 30% 30% 30% 30%;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    position: absolute;
    top: -70px;
    left: -80px;
    z-index: -1;
}

.cmn-achievement-03 .txtbox .deco-02 {
    position: absolute;
    top: -20px;
    right: -20px;
    z-index: -1;
}

.cmn-achievement-03 .txtbox .tit {
    font-size: 60px;
    line-height: 1;
    text-align: center;
}

.cmn-achievement-03 .txtbox .tit .em {
    font-weight: bold;
    font-size: 140%;
}

.cmn-achievement-03 .txtbox .txt {
    width: 100%;
    padding: 20px 30px;
    font-size: 22px;
    text-align: center;
    background-image: url("/import/tenant_1/160.16.50.164/html/images/achievement-04.webp");
    background-size: 100% 100%;
    background-repeat: no-repeat;
}

.cmn-achievement-03 .pic {
    position: relative;
    z-index: 0;
}

.cmn-achievement-03 .pic:after {
    content: "";
    width: 5%;
    height: 100%;
    background: -webkit-gradient(linear, left top, right top, color-stop(10%, var(--back-color-23)), to(rgba(255, 255, 255, 0.0)));
    background: linear-gradient(to right, var(--back-color-23) 10%, rgba(255, 255, 255, 0.0));
    position: absolute;
    top: 0;
    left: 0;
}

@media (max-width: 1024px) {
    .cmn-achievement-03 .txtbox {
        padding: 40px 20px;
    }

    .cmn-achievement-03 .txtbox .tit {
        font-size: 50px;
    }

    .cmn-achievement-03 .pic:after {
        width: 100%;
        height: 5%;
        background: -webkit-gradient(linear, left top, left bottom, color-stop(10%, var(--back-color-23)), to(rgba(255, 255, 255, 0.0)));
        background: linear-gradient(to bottom, var(--back-color-23) 10%, rgba(255, 255, 255, 0.0));
    }
}

@media (max-width: 599px) {
    .cmn-achievement-03 .txtbox .txt {
        padding: 20px 20px;
        font-size: 16px;
    }

    .cmn-achievement-03 .txtbox .tit {
        font-size: 38px;
    }

    .cmn-achievement-03 .txtbox .deco-01 {
        width: 140px;
        height: 140px;
        top: -50px;
        left: -50px;
    }

    .cmn-achievement-03 .txtbox .deco-02 {
        top: -50px;
        right: -70px;
    }
}

/*cmn-reasons*/
.cmn-reasons-01 .item>* {
    height: 100%;
    overflow: hidden;
    border-radius: 20px;
}

.cmn-reasons-01 .item .txtbox {
    padding: 25px;
    position: relative;
    z-index: 0;
}

.cmn-reasons-01 .item .num {
    font-size: 70px;
    position: absolute;
    top: -55px;
}

.cmn-reasons-01 .item .tit {
    font-weight: bold;
}

@media (max-width: 1024px) {
    .cmn-reasons-01 .item .txtbox {
        padding: 25px 10px;
    }
}

@media (max-width: 599px) {
    .cmn-reasons-01 .item .num {
        font-size: 50px;
        top: -40px;
    }
}

.cmn-reasons-02 .box {
    margin-top: -120px;
    margin-bottom: -120px;
    position: relative;
    z-index: 1;
}

.cmn-reasons-02 .pic {
    margin: 0 auto;

    -webkit-mask-image: url("/import/tenant_1/160.16.50.164/html/images/ttl-05.webp");
    mask-image: url("/import/tenant_1/160.16.50.164/html/images/ttl-05.webp");
    mask-size: cover;
    -webkit-mask-size: contain;
    mask-size: contain;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
}

.cmn-reasons-02 .ttl {
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    position: absolute;
    top: 50%;
    left: 50%;
    z-index: 1;
}

@media (max-width: 1024px) {
    .cmn-reasons-02 .box {
        margin-top: -50px;
        margin-bottom: -50px;
    }
}

@media (max-width: 599px) {
    .cmn-reasons-02 .box {
        margin-top: -30px;
        margin-bottom: -30px;
    }

    .cmn-reasons-02 .ttl {
        width: 80%;
    }
}

/*cmn-movie*/
.cmn-movie-01 .box {
    width: 787px;
    max-width: 100%;
    margin: 0 auto 45px;
    padding: 15px 15px 0;
    position: relative;
}

.cmn-movie-01 .box:after {
    content: "";
    width: 100%;
    height: calc(100% + 45px);
    background-image: url("/import/tenant_1/160.16.50.164/html/images/movie-02.webp");
    background-size: 100% 100%;
    background-repeat: no-repeat;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 0;
    z-index: 0;
}

@media (max-width: 599px) {
    .cmn-movie-01 .box {
        margin: 0 auto 15px;
        padding: 5px 5px 0;
    }

    .cmn-movie-01 .box:after {
        height: calc(100% + 15px);
    }
}

/*cmn-banner*/
.cmn-banner-01 li>* {
    display: block;
}

.cmn-banner-01 li.border>* {
    border: 2px solid var(--txt-color-06);
}

/*cmn-first*/
.cmn-first-01 .item>* {
    height: 100%;
    overflow: hidden;
    padding: 30px 0;
    border-radius: 20px;
}

.cmn-first-01 .item .tit {
    margin-bottom: 15px;
    font-weight: bold;
    font-size: 24px;
    text-align: center;
}

.cmn-first-01 .item .tag {
    padding: 5px;
    text-align: center;
}

.cmn-first-01 .item .txt {
    margin-top: 15px;
    text-align: center;
}

@media (max-width: 599px) {
    .cmn-first-01 .item>* {
        padding: 20px 0;
    }

    .cmn-first-01 .item .tit {
        font-size: 20px;
    }
}

/*cmn-company*/
.cmn-company-01 .box {
    padding: 25px 30px 5px;
    border-radius: 20px;
}

.cmn-company-01 .tit {
    font-weight: bold;
    font-size: 24px;
}

.cmn-company-01 li>* {
    padding: 5px;
    text-align: center;
    border-radius: 5px;
}

@media (max-width: 599px) {
    .cmn-company-01 .box {
        padding: 25px 30px 15px;
    }

    .cmn-company-01 .tit {
        font-size: 20px;
    }
}

/*cmn-concept*/
.cmn-concept-01 .box {
    position: relative;
    z-index: 0;
}

.cmn-concept-01 .pic {
    width: calc(100% - 20px);
    height: calc(100% - 20px);
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    position: absolute;
    top: 50%;
    left: 50%;
    z-index: -1;
}

.cmn-concept-01 .pic img {
    -webkit-filter: brightness(0.8);
    filter: brightness(0.8);
}

.cmn-concept-01 .txtbox {
    width: 48%;
    margin-left: auto;
    padding: 50px 30px 50px 0;
}

.cmn-concept-01 .subtit {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    align-items: center;
    -ms-flex-align: center;
}

.cmn-concept-01 .subtit:after {
    content: "";
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    margin-left: 10px;
    border-bottom: 1px solid;
}

.cmn-concept-01 .tit {
    font-size: 24px;
}

.cmn-concept-01 .tit .em {
    font-size: 40px;
}

@media (max-width: 1024px) {
    .cmn-concept-01 .txtbox {
        width: 100%;
        padding: 40px 40px 40px 40px;
    }
}

@media (max-width: 599px) {
    .cmn-concept-01 .txtbox {
        padding: 30px 30px 30px 30px;
    }

    .cmn-concept-01 .tit {
        font-size: 20px;
    }

    .cmn-concept-01 .tit .em {
        font-size: 26px;
    }
}

.cmn-concept-02 .box {
    padding: 30px 50px;
}

.cmn-concept-02 .txtbox {
    margin-top: 30px;
}

.cmn-concept-02 .tit {
    font-weight: bold;
}

@media (max-width: 599px) {
    .cmn-concept-02 .box {
        padding: 20px 20px;
    }

    .cmn-concept-02 .txtbox {
        margin-top: 20px;
        font-size: 14px;
    }
}

/*cmn-partner*/
.cmn-partner-01 .box {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
}

.cmn-partner-01 .box:nth-of-type(odd) {
    padding-right: 2px;
}

.cmn-partner-01 .box:nth-of-type(even) {
    padding-left: 2px;
}

.cmn-partner-01 .tit {
    padding: 20px 40px 20px 15px;
    font-weight: bold;
    font-size: 20px;
}

.cmn-partner-01 .list {
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    padding: 30px 30px;
}

.cmn-partner-01 .list li {
    padding-left: 15px;
    font-size: 16px;
    position: relative;
    z-index: 0;
}

.cmn-partner-01 .list li+li {
    margin-top: 15px;
}

.cmn-partner-01 .list li .icon {
    width: 5px;
    height: 5px;
    font-size: 10px;
    border-radius: 50%;
    position: absolute;
    top: 10px;
    left: 0;
    z-index: 0;
}

@media (max-width: 1024px) {
    .cmn-partner-01 .box {
        padding-top: 5px;
    }

    .cmn-partner-01 .box:nth-of-type(odd) {
        padding-right: 0;
    }

    .cmn-partner-01 .box:nth-of-type(even) {
        padding-left: 0;
    }
}

@media (max-width: 599px) {
    .cmn-partner-01 .tit {
        padding: 15px 35px 15px 10px;
        font-size: 16px;
    }

    .cmn-partner-01 .list {
        padding: 15px 15px;
    }

    .cmn-partner-01 .list li {
        font-size: 14px;
    }
}

.cmn-partner-02 .txtbox {
    padding: 20px 30px 25px;
}

.cmn-partner-02 .tit {
    margin-bottom: 15px;
    padding-left: 20px;
    font-weight: bold;
    position: relative;
    z-index: 0;
}

.cmn-partner-02 .tit .icon {
    width: 15px;
    border-bottom: 2px solid;
    position: absolute;
    top: 13px;
    left: 0;
}

.cmn-partner-02 .list li {
    padding-left: 20px;
    font-size: 16px;
    position: relative;
    z-index: 0;
}

.cmn-partner-02 .list li .icon {
    width: 5px;
    height: 5px;
    font-size: 10px;
    border-radius: 50%;
    position: absolute;
    top: 10px;
    left: 0;
    z-index: 0;
}

@media (max-width: 599px) {
    .cmn-partner-02 .txtbox {
        padding: 15px 15px 10px;
    }
}

/*cmn-menu*/
.cmn-menu-01 .planbox {
    padding: 15px;
}

.cmn-menu-01 .planbox .subtit {
    padding: 5px;
    font-weight: bold;
    font-size: 14px;
    text-align: center;
    border-radius: 10px;
}

.cmn-menu-01 .planbox .tit {
    margin: 10px 0;
    font-weight: 500;
    font-size: 18px;
    line-height: 1.2;
    text-align: center;
}

.cmn-menu-01 .planbox .list li {
    padding: 2px 10px;
    font-weight: 500;
    font-size: 14px;
    text-align: center;
    border-radius: 5px;
}

.cmn-menu-01 .planbox .list li+li {
    margin-top: 5px;
}

.cmn-menu-01 .yenbox {
    padding: 20px 10px;
}

.cmn-menu-01 .yenbox .tit {
    margin-bottom: 15px;
    font-size: 14px;
    text-align: center;
}

.cmn-menu-01 .yenbox .yen {
    font-size: 24px;
    line-height: 1;
    text-align: center;
}

.cmn-menu-01 .yenbox .yen .em {
    font-weight: bold;
    font-size: 50px;
}

.cmn-menu-01 .yenbox .txt {
    margin-top: 5px;
    font-size: 14px;
    text-align: center;
}

@media (max-width: 1024px) {
    .cmn-menu-01 .yenbox .yen .em {
        font-size: 40px;
    }
}

@media (max-width: 599px) {
    .cmn-menu-01 .item {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
    }

    .cmn-menu-01 .item+.item {
        margin-top: 5px;
    }

    .cmn-menu-01 .planbox {
        width: 50%;
        padding: 10px;
    }

    .cmn-menu-01 .yenbox {
        width: 50%;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        padding: 10px;
    }

    .cmn-menu-01 .planbox .subtit {
        font-size: 11px;
    }

    .cmn-menu-01 .planbox .tit {
        font-size: 16px;
    }

    .cmn-menu-01 .yenbox .tit {
        text-align: left;
    }

    .cmn-menu-01 .yenbox .yen {
        text-align: left;
    }

    .cmn-menu-01 .yenbox .yen .em {
        font-size: 30px;
    }

    .cmn-menu-01 .yenbox .txt {
        text-align: left;
    }
}

.cmn-menu-02 {
    position: relative;
    z-index: 0;
}

.cmn-menu-02 .txtbox {
    padding: 30px 30px;
}

.cmn-menu-02 .list li {
    padding: 2px 10px;
    font-weight: 500;
    font-size: 14px;
    text-align: center;
    border-radius: 5px;
}

.cmn-menu-02 .list li+li {
    margin-top: 5px;
}

.cmn-menu-02 .yen {
    margin-right: 10px;
    font-size: 24px;
    line-height: 1;
    text-align: center;
}

.cmn-menu-02 .yen .em {
    font-weight: bold;
    font-size: 50px;
}

.cmn-menu-02 .tit {
    margin-bottom: 5px;
    font-size: 14px;
}

.cmn-menu-02 .txt {
    font-size: 14px;
}

.cmn-menu-02 .medal {
    width: 134px;
    height: 180px;
    -webkit-filter: drop-shadow(0px 0px 7px #515151);
    filter: drop-shadow(0px 0px 7px #515151);
    position: absolute;
    bottom: 21%;
    right: -65px;
    z-index: 1;
}

.cmn-menu-02 .medal>* {
    width: 100%;
    height: 100%;
}

.cmn-menu-02 .medal>*:after {
    width: 134px;
    height: 180px;
}

@media (max-width: 1024px) {
    .cmn-menu-02 .txtbox {
        padding: 20px 20px;
    }

    .cmn-menu-02 .yen .em {
        font-size: 30px;
    }

    .cmn-menu-02 .medal {
        bottom: 25%;
    }
}

@media (max-width: 599px) {
    .cmn-menu-02 .medal {
        top: 25%;
        bottom: auto;
        right: -20px;
    }

    .cmn-menu-02 .medal {
        width: 104px;
        height: 150px;
    }

    .cmn-menu-02 .medal>*:after {
        width: 104px;
        height: 150px;
    }
}

.cmn-menu-03 .box {
    margin-top: 140px;
    position: relative;
    z-index: 0;
}

.cmn-menu-03 .pic {
    width: 180px;
    position: relative;
    z-index: 1;
}

.cmn-menu-03.version-01 .pic {
    width: 300px;
}

.cmn-menu-03 .txtbox {
    width: calc(100% - 150px);
    margin-top: -140px;
    margin-left: -30px;
    padding: 30px 40px;
    line-height: 2;
    border-radius: 10px;
    position: relative;
    z-index: 0;
}

.cmn-menu-03.version-01 .txtbox {
    margin-left: -150px;
}

.cmn-menu-03 .txtbox .arrow {
    border-top: 30px solid transparent;
    border-bottom: 40px solid transparent;
    border-left: 20px solid;
    border-right: 30px solid transparent;
    -webkit-transform: rotate(35deg);
    transform: rotate(35deg);
    -webkit-transform-origin: center;
    transform-origin: center;
    position: absolute;
    top: calc(100% - 30px);
    left: 50px;
    z-index: -1;
}

.cmn-menu-03 .comment {
    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: end;
    align-items: flex-end;
    -ms-flex-align: end;
    font-weight: bold;
    -ms-writing-mode: tb-rl;
    -webkit-writing-mode: vertical-rl;
    writing-mode: vertical-rl;
    position: absolute;
    top: -80px;
    left: 30px;

    -webkit-text-orientation: mixed;
    text-orientation: mixed;
}

.cmn-menu-03 .comment:before {
    content: "";
    height: 40px;
    margin-left: 5px;
    border-left: 1px solid var(--txt-color-01);
    -webkit-transform: rotate(15deg);
    transform: rotate(15deg);
    -webkit-transform-origin: bottom;
    transform-origin: bottom;
}

.cmn-menu-03 .comment:after {
    content: "";
    height: 40px;
    margin-right: 5px;
    border-left: 1px solid var(--txt-color-01);
    -webkit-transform: rotate(-15deg);
    transform: rotate(-15deg);
    -webkit-transform-origin: bottom;
    transform-origin: bottom;
}

@media (max-width: 1024px) {
    .cmn-menu-03.version-01 .box {
        margin-top: 20px;
    }

    .cmn-menu-03.version-01 .txtbox {
        width: 100%;
        margin-top: 0;
        margin-left: 0px;
    }

    .cmn-menu-03.version-01 .pic {
        width: 230px;
    }

    .cmn-menu-03.version-01 .txtbox .arrow {
        left: 160px;
    }

    .cmn-menu-03 .comment {
        -webkit-box-align: start;
        align-items: flex-start;
        -ms-flex-align: start;
        -ms-writing-mode: inherit;
        -webkit-writing-mode: inherit;
        writing-mode: inherit;
        top: auto;
        bottom: 40px;
        left: 250px;
    }

    .cmn-menu-03 .comment:before {
        margin-bottom: 5px;
        margin-left: 0;
        -webkit-transform: rotate(65deg);
        transform: rotate(65deg);
    }

    .cmn-menu-03 .comment:after {
        margin-top: 5px;
        margin-right: 0;
        -webkit-transform: rotate(-55deg);
        transform: rotate(-55deg);
        -webkit-transform-origin: top;
        transform-origin: top;
    }
}

@media (max-width: 599px) {
    .cmn-menu-03 .box {
        margin-top: 0;
    }

    .cmn-menu-03 .pic {
        width: 130px;
    }

    .cmn-menu-03.version-01 .pic {
        width: 200px;
    }

    .cmn-menu-03 .txtbox {
        width: 100%;
        margin-top: 0;
        margin-bottom: 10px;
        margin-left: 0;
        padding: 15px 20px;
        line-height: 1.8;
    }

    .cmn-menu-03.version-01 .txtbox {
        margin-left: 0;
    }

    .cmn-menu-03 .txtbox .arrow {
        left: 140px;
    }

    .cmn-menu-03 .comment {
        bottom: 40px;
        left: 220px;
    }
}

.cmn-menu-04 .item>* {
    display: block;
    overflow: hidden;
    border-radius: 20px;
}

.cmn-menu-04 .item .txtbox {
    padding: 10px;
}

.cmn-menu-04 .item .tit {
    font-size: 24px;
    text-align: center;
}

.cmn-menu-04 .item .tit .arrow {
    width: 40px;
    height: 40px;
    display: inline-block;
    margin-right: 20px;
    font-size: 18px;
    line-height: 37px;
    text-align: center;
    border: 2px solid;
    border-radius: 50%;
}

.cmn-menu-04 .item .tit .arrow:after {
    content: "\f054";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
}

@media (max-width: 1024px) {
    .cmn-menu-04 .item .tit {
        font-size: 18px;
    }

    .cmn-menu-04 .item .tit .arrow {
        width: 30px;
        height: 30px;
        margin-right: 10px;
        font-size: 16px;
        line-height: 26px;
    }
}

.cmn-menu-05 .box {
    padding: 30px 10px 20px;
    border-radius: 20px;
}

.cmn-menu-05 .item>* {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    align-items: center;
    -ms-flex-align: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

.cmn-menu-05 .item .pic {
    width: 100px;
    margin-right: 10px;
}

.cmn-menu-05 .item .pic a {
    display: block;
}

.cmn-menu-05 .item .pic img {
    -o-object-fit: contain;
    object-fit: contain;
}

.cmn-menu-05 .item .txtbox {
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
}

.cmn-menu-05 .item .tit>* {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    align-items: center;
    -ms-flex-align: center;
    font-weight: bold;
    font-size: 16px;
    line-height: 1.2;
}

.cmn-menu-05 .item .tit .arrow {
    width: 25px;
    height: 25px;
    display: inline-block;
    margin-right: 10px;
    font-size: 14px;
    line-height: 22px;
    text-align: center;
    border: 2px solid;
    border-radius: 50%;
}

.cmn-menu-05 .item .tit .arrow:after {
    content: "\f054";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
}

.cmn-menu-05 .item .yen {
    font-size: 14px;
}

.cmn-menu-05 .item .yen .em {
    font-size: 140%;
}

.cmn-menu-05 .item .txt {
    font-size: 14px;
}

@media (max-width: 1024px) {
    .cmn-menu-05 .item>* {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }

    .cmn-menu-05 .item .pic {
        margin: 0 auto;
        margin-bottom: 10px;
    }
}

@media (max-width: 599px) {
    .cmn-menu-05 .item .tit>* {
        font-size: 15px;
    }
}

/*cmn-silicon*/
.cmn-silicon-01 dl>* {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.cmn-silicon-01 dl>*+* {
    margin-top: 2px;
}

.cmn-silicon-01 dl>* dt,
.cmn-silicon-01 dl>* dd {
    padding: 10px 30px;
}

.cmn-silicon-01 dl>* dt {
    width: 30%;
    font-size: 16px;
    text-align: center;
}

.cmn-silicon-01 dl>* dd {
    width: 70%;
    font-size: 16px;
}

@media (max-width: 1024px) {

    .cmn-silicon-01 dl>* dt,
    .cmn-silicon-01 dl>* dd {
        padding: 10px 15px;
    }

    .cmn-silicon-01 dl>* dt {
        width: 40%;
    }

    .cmn-silicon-01 dl>* dd {
        width: 60%;
    }
}

.cmn-silicon-02 .imgbox {
    width: 100%;
    position: relative;
    z-index: 0;
}

.cmn-silicon-02 .imgbox:after {
    content: "";
    display: block;
    padding-top: 100%;
}

.cmn-silicon-02 .pic {
    width: 100%;
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    align-items: center;
    -ms-flex-align: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    padding: 10px;
    position: absolute;
}

.cmn-silicon-02 .pic img {
    width: auto;
    max-width: 100%;
    height: initial !important;
    max-height: 100%;
}

.cmn-silicon-02.version-01 .pic img {
    width: 100%;
    height: 100% !important;
}

.cmn-silicon-02 .medal {
    width: 154px;
    height: 207px;
    -webkit-filter: drop-shadow(0px 0px 7px #515151);
    filter: drop-shadow(0px 0px 7px #515151);
    position: absolute;
    bottom: -80px;
    right: -80px;
    z-index: 1;
}

.cmn-silicon-02 .medal>*:after {
    width: 154px;
    height: 207px;
}

@media (max-width: 1024px) {
    .cmn-silicon-02 .medal {
        bottom: -150px;
        right: -40px;
    }
}

@media (max-width: 599px) {
    .cmn-silicon-02 .medal {
        width: 104px;
        height: 150px;
        bottom: -50px;
        right: -20px;
    }

    .cmn-silicon-02 .medal>*:after {
        width: 104px;
        height: 150px;
    }
}

.cmn-silicon-03 .box {
    padding: 30px 20px 30px;
}

.cmn-silicon-03 .tit {
    margin-bottom: 25px;
    font-weight: bold;
    font-size: 24px;
    text-align: center;
}

.cmn-silicon-03 .item>* {
    padding: 30px 30px 40px;
    position: relative;
    z-index: 0;
}

.cmn-silicon-03 .item .tag {
    font-size: 36px;
    text-align: center;
}

.cmn-silicon-03 .item .cate {
    width: 200px;
    margin: 0 auto;
    padding: 2px 10px;
    font-size: 16px;
    text-align: center;
    border-radius: 10px;
    position: absolute;
    bottom: -12px;
    left: 0;
    right: 0;
}

@media (max-width: 1024px) {
    .cmn-silicon-03 .item>* {
        padding: 30px 10px 40px;
    }

    .cmn-silicon-03 .item .tag {
        font-size: 28px;
    }

    .cmn-silicon-03 .item .cate {
        width: 90%;
        font-size: 14px;
    }
}

@media (max-width: 599px) {
    .cmn-silicon-03 .item>* {
        padding: 20px 10px 30px;
    }

    .cmn-silicon-03 .tit {
        font-size: 18px;
    }

    .cmn-silicon-03 .item .tag {
        font-size: 24px;
    }

    .cmn-silicon-03 .item .cate {
        width: 60%;
    }
}

.cmn-silicon-04 .ttl {
    -webkit-transform: translateY(-80px);
    transform: translateY(-80px);
}

@media (max-width: 1024px) {
    .cmn-silicon-04 .ttl {
        -webkit-transform: translateY(-70px);
        transform: translateY(-70px);
    }
}

@media (max-width: 599px) {
    .cmn-silicon-04 .ttl {
        -webkit-transform: translateY(-30px);
        transform: translateY(-30px);
    }
}

/*cmn-fluorine*/
.cmn-fluorine-01 .tit {
    font-weight: bold;
    font-size: 20px;
}

.cmn-fluorine-01 .list li {
    padding-left: 40px;
    font-size: 18px;
    position: relative;
    z-index: 0;
}

.cmn-fluorine-01 .list li+li {
    margin-top: 10px;
}

.cmn-fluorine-01 .list li .num {
    position: absolute;
    top: 0;
    left: 0;
}

@media (max-width: 599px) {
    .cmn-fluorine-01 .tit {
        font-size: 18px;
    }

    .cmn-fluorine-01 .list li {
        font-size: 16px;
    }
}

/*cmn-leakage*/
.cmn-leakage-01 .box {
    height: 100%;
}

.cmn-leakage-01 .tit {
    padding: 15px 10px;
    font-weight: bold;
    font-size: 20px;
    text-align: center;
}

.cmn-leakage-01 ul {
    padding: 30px 60px;
}

.cmn-leakage-01 li {
    padding-left: 30px;
    font-weight: bold;
    position: relative;
    z-index: 0;
}

.cmn-leakage-01 li+li {
    margin-top: 10px;
}

.cmn-leakage-01 li .icon {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 0;
}

.cmn-leakage-01 li .icon:after {
    content: "■";
}

@media (max-width: 1024px) {
    .cmn-leakage-01 ul {
        padding: 20px 30px;
    }
}

@media (max-width: 599px) {
    .cmn-leakage-01 .tit {
        padding: 15px 5px;
        font-size: 18px;
    }

    .cmn-leakage-01 ul {
        padding: 10px;
    }
}

/*cmn-color*/
.cmn-color-01 .box {
    position: relative;
    z-index: 0;
}

.cmn-color-01 .box+.box {
    margin-top: 100px;
}

.cmn-color-01 .box+.box .arrow {
    border-top: 50px solid;
    border-bottom: 0px solid transparent;
    border-left: 150px solid transparent;
    border-right: 150px solid transparent;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    position: absolute;
    bottom: calc(100% + 25px);
    left: 50%;
    z-index: 0;
}

.cmn-color-02 .staff {
    width: 130px;
    position: relative;
    z-index: 1;
}

.cmn-color-02 .txtbox {
    width: calc(100% - 80px);
    margin-top: -100px;
    margin-right: -50px;
    padding: 30px 40px;
    line-height: 2;
    border-radius: 10px;
    position: relative;
    z-index: 0;
}

.cmn-color-02 .arrow {
    border-top: 30px solid transparent;
    border-bottom: 40px solid transparent;
    border-left: 20px solid transparent;
    border-right: 30px solid;
    -webkit-transform: rotate(35deg);
    transform: rotate(-30deg);
    -webkit-transform-origin: center;
    transform-origin: center;
    position: absolute;
    top: calc(100% - 35px);
    right: 70px;
    z-index: -1;
}

@media (max-width: 599px) {
    .cmn-color-02 .txtbox {
        width: calc(100% - 40px);
        margin-top: -30px;
        margin-right: -50px;
        padding: 20px 10px;
        font-size: 14px;
        line-height: 1.8;
    }

    .cmn-color-02 .staff {
        margin-left: auto;
    }
}

/*cmn-works*/
.cmn-works-01 .box {
    margin-top: 80px;
    padding: 45px 30px 30px;
    border-radius: 5px;
    position: relative;
}

.cmn-works-01 .tit {
    width: 200px;
    padding: 10px;
    font-weight: bold;
    font-size: 16px;
    text-align: center;
    border-radius: 5px;
    position: absolute;
    top: -20px;
}

.cmn-works-01 .txt {
    font-size: 16px;
}

.cmn-works-01 .list .item>* {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.cmn-works-01 .list .item dt,
.cmn-works-01 .list .item dd {
    padding: 15px 10px;
    font-size: 16px;
}

.cmn-works-01 .list .item dt {
    width: 40%;
    text-align: center;
}

.cmn-works-01 .list .item dd {
    width: 60%;
}

@media (max-width: 599px) {
    .cmn-works-01 .box {
        margin-top: 140px;
        padding: 45px 20px 10px;
    }

    .cmn-works-01 .list .item dt,
    .cmn-works-01 .list .item dd {
        padding: 10px 10px;
    }
}

.cmn-works-02 .pic {
    position: relative;
    z-index: 0;
}

.cmn-works-02 .tagbox {
    position: absolute;
    top: 15px;
    left: 15px;
    z-index: 1;
}

.cmn-works-02 .tag {
    width: 110px;
    padding: 8px 20px 8px 15px;
    font-weight: bold;
    font-size: 14px;
    position: relative;
    z-index: 0;
}

.cmn-works-02 .tag:before {
    content: "";
    width: calc(100% + 0px);
    height: 100%;
    background-image: url("/import/tenant_1/160.16.50.164/html/images/ttl-02.webp");
    background-size: 100% 100%;
    background-repeat: no-repeat;
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
}

.cmn-works-02 .item+.item .tag:before {
    background-image: url("/import/tenant_1/160.16.50.164/html/images/ttl-03.webp");
}

.cmn-works-02 .tag:after {
    content: "";
    width: 67px;
    height: 51px;
    background-image: url("/import/tenant_1/160.16.50.164/html/images/deco-03.webp");
    background-size: contain;
    background-repeat: no-repeat;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    position: absolute;
    top: 50%;
    left: calc(100% + -17px);
    z-index: 0;
}

.cmn-works-02 .box {
    position: relative;
    z-index: 0;
}

.cmn-works-02 .item>* {
    position: relative;
    z-index: 0;
}

.cmn-works-02.version-01 .item:nth-of-type(1) {
    width: 40%;
    margin-bottom: -50px;
    margin-right: -20%;
    position: relative;
    z-index: 1;
}

.cmn-works-02.version-01 .item:nth-of-type(2) {
    width: 80%;
}

@media (max-width: 599px) {
    .cmn-works-02.version-01 .item:nth-of-type(1) {
        width: 60%;
        margin-bottom: -100px;
        margin-right: -50%;
    }

    .cmn-works-02.version-01 .item:nth-of-type(2) {
        width: 90%;
    }

    .cmn-works-02 .tagbox {
        top: 10px;
        left: 10px;
    }

    .cmn-works-02 .tag {
        width: 70px;
        padding: 6px 10px 6px 10px;
        font-weight: bold;
        font-size: 12px;
    }

    .cmn-works-02 .tag:after {
        width: 47px;
        height: 31px;
        left: calc(100% + -7px);
    }
}

/*cmn-news*/
.cmn-news-01 .box {
    padding: 40px 30px;
    border-radius: 10px;
}

.cmn-news-01 li+li {
    margin-top: 15px;
}

.cmn-news-01 li .day {
    margin-bottom: 5px;
    font-size: 14px;
}

.cmn-news-01 li .tit {
    font-weight: 500;
}

@media (max-width: 1024px) {
    .cmn-news-01 .box {
        padding: 30px 20px;
    }
}

/*cmn-blog*/
.cmn-blog-01 .item>* {
    display: block;
    overflow: hidden;
    border-radius: 20px;
}

.cmn-blog-02 .box {
    overflow: hidden;
    border-radius: 5px 5px 0 0;
}

.cmn-blog-02 .titbox {
    padding: 10px 10px 10px 35px;
    font-weight: bold;
    font-size: 18px;
    position: relative;
    z-index: 0;
}

.cmn-blog-02 .titbox .icon {
    width: 15px;
    border-bottom: 2px solid;
    position: absolute;
    top: 24px;
    left: 10px;
}

.cmn-blog-02 .imgbox {
    width: 210px;
    -ms-flex-item-align: end;
    align-self: flex-end;
}

.cmn-blog-02 .imgbox .pic {
    position: relative;
    z-index: 0;
}

.cmn-blog-02 .imgbox .pic img {
    -o-object-fit: contain;
    object-fit: contain;
    -o-object-position: bottom center;
    object-position: bottom center;
}

.cmn-blog-02 .imgbox .namebox {
    max-width: 250px;
    padding: 15px 30px 15px 20px;
    line-height: 1;
    position: absolute;
    bottom: 10px;
    right: -70px;
    z-index: 1;
}

.cmn-blog-02 .imgbox .namebox:before {
    content: "";
    width: calc(100% + 0px);
    height: 100%;
    background-image: url("/import/tenant_1/160.16.50.164/html/images/ttl-02.webp");
    background-size: cover;
    background-repeat: no-repeat;
    background-position: left;
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: -1;
}

.cmn-blog-02 .imgbox .namebox:after {
    content: "";
    width: 93px;
    height: 73px;
    background-image: url("/import/tenant_1/160.16.50.164/html/images/deco-03.webp");
    background-size: cover;
    background-repeat: no-repeat;
    position: absolute;
    bottom: -2px;
    left: calc(100% + -20px);
    z-index: 0;
}

.cmn-blog-02 .imgbox .namebox .cate {
    margin-bottom: 5px;
    font-size: 14px;
}

.cmn-blog-02 .imgbox .namebox .tit {
    font-size: 18px;
}

.cmn-blog-02 .txtbox {
    width: calc(100% - 210px);
    padding-top: 30px;
    padding-bottom: 90px;
    padding-left: 0px;
    padding-right: 20px;
}

.cmn-blog-02 .txtbox .tit {
    margin-bottom: 15px;
    font-weight: bold;
    font-size: 18px;
}

.cmn-blog-02 .txtbox .txt {
    font-size: 16px;
}

@media (max-width: 599px) {
    .cmn-blog-02 .titbox {
        font-size: 16px;
    }

    .cmn-blog-02 .txtbox {
        width: 100%;
        padding-top: 20px;
        padding-bottom: 20px;
        padding-left: 10px;
        padding-right: 10px;
    }

    .cmn-blog-02 .txtbox .tit {
        margin-bottom: 10px;
        font-size: 16px;
    }

    .cmn-blog-02 .txtbox .txt {
        font-size: 14px;
    }
}

.cmn-blog-03 .titbox .tit {
    font-weight: bold;
    font-size: 24px;
}

.cmn-blog-03 .titbox .small {
    display: block;
    font-weight: 400;
    font-size: 14px;
}

.cmn-blog-03 .item>* {
    display: block;
    overflow: hidden;
    border-radius: 10px;
}

/*cmn-voice*/
.cmn-voice-01 .item>* {
    height: 100%;
    display: block;
    overflow: hidden;
    padding: 10px;
    border-radius: 20px;
}

.cmn-voice-02 .box {
    padding: 50px;
}

.cmn-voice-02 .tit {
    padding-left: 20px;
    padding-right: 35px;
    font-weight: bold;
    font-size: 18px;
    position: relative;
    z-index: 0;
}

.cmn-voice-02 .tit .icon {
    width: 6px;
    height: 6px;
    font-size: 10px;
    border-radius: 50%;
    position: absolute;
    top: 10px;
    left: 0;
    z-index: 0;
}

.cmn-voice-02 .txt {
    margin-top: 10px;
}

.cmn-voice-02 .txt {
    font-size: 16px;
}

@media (max-width: 599px) {
    .cmn-voice-02 .box {
        padding: 30px 20px;
    }

    .cmn-voice-02 .tit {
        padding-right: 20px;
        font-size: 16px;
    }

    .cmn-voice-02 .txt {
        font-size: 14px;
    }
}

/*cmn-staff*/
.cmn-staff-01 .imgbox {
    position: relative;
    z-index: 0;
}

.cmn-staff-01 .pic {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    background-image: url("/upload/tenant_1/23338571.jpeg");
    background-size: 100% 100%;
    background-repeat: no-repeat;
}

.cmn-staff-01 .pic img {
    -o-object-fit: contain;
    object-fit: contain;
    -o-object-position: center bottom;
    object-position: center bottom;
}

.cmn-staff-01 .txtbox {
    max-width: 90%;
    padding: 15px 20px;
    position: absolute;
    bottom: 30px;
    right: 0;
    z-index: 1;
}

.cmn-staff-01 .txtbox:before {
    content: "";
    width: calc(100% + 30px);
    height: 100%;
    background-image: url("/import/tenant_1/160.16.50.164/html/images/ttl-01.webp");
    background-size: cover;
    background-repeat: no-repeat;
    background-position: left;
    position: absolute;
    bottom: 0;
    left: -20px;
    z-index: -1;
}

.cmn-staff-01 .txtbox:after {
    content: "";
    width: 103px;
    height: 80px;
    background-image: url("/import/tenant_1/160.16.50.164/html/images/deco-03.webp");
    background-size: cover;
    background-repeat: no-repeat;
    position: absolute;
    bottom: 0px;
    left: calc(100% + -15px);
    z-index: 0;
}

.cmn-staff-01 .cate {
    font-size: 14px;
}

.cmn-staff-01 .tit {
    font-weight: bold;
    font-size: 18px;
}

@media (max-width: 1024px) {
    .cmn-staff-01 .item>* {
        margin-right: 80px;
    }
}

@media (max-width: 599px) {
    .cmn-staff-01 .item>* {
        margin-left: 50px;
        margin-right: 50px;
    }

    .cmn-staff-01 .txtbox {
        bottom: 20px;
    }
}

[data-element-id] .cmn-faq-01 .item:nth-of-type(n + 4) {
    display: none;
}

.cmn-faq-01 .toggle-arrow {
    right: 20px;
}

.cmn-faq-01 .titbox {
    position: relative;
    z-index: 0;
}

.cmn-faq-01 .titbox .pic {
    width: 120px;
    height: 120px;
    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: 15px;
    border: solid 2px var(--txt-color-02);
    border-radius: 50%;
}

.cmn-faq-01 .titbox .pic img {
    width: auto;
    max-width: 100%;
    height: initial !important;
    max-height: 100%;
}

.cmn-faq-01 .titbox .huki {
    width: calc(100% - 200px);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    align-items: center;
    -ms-flex-align: center;
    padding: 30px 50px;
    border-radius: 20px;
    background: var(--back-color-00);
    position: relative;
    z-index: 0;
}

.cmn-faq-01 .titbox .huki:after {
    content: "";
    border-top: 25px solid var(--txt-color-00);
    border-bottom: 30px solid transparent;
    border-left: 30px solid transparent;
    border-right: 30px solid transparent;
    position: absolute;
    top: 75px;
    left: -30px;
}

.cmn-faq-01 .txtbox {
    margin-top: 50px;
}

.cmn-faq-01 .txtbox .pic {
    width: 120px;
    height: 120px;
    overflow: hidden;
    border: 2px solid var(--txt-color-02);
    border-radius: 50%;
}

.cmn-faq-01 .txtbox .huki {
    width: calc(100% - 200px);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    align-items: center;
    -ms-flex-align: center;
    padding: 30px 50px;
    border-radius: 20px;
    background: var(--back-color-00);
    position: relative;
    z-index: 0;
}

.cmn-faq-01 .txtbox .huki:after {
    content: "";
    border-top: 25px solid var(--txt-color-00);
    border-bottom: 30px solid transparent;
    border-left: 30px solid transparent;
    border-right: 30px solid transparent;
    position: absolute;
    top: 45px;
    right: -30px;
}

.cmn-faq-01 .tit {
    font-weight: bold;
    font-size: 24px;
}

.cmn-faq-01 .txt {
    font-size: 16px;
    line-height: 2;
}

@media (max-width: 1024px) {

    .cmn-faq-01 .titbox .huki,
    .cmn-faq-01 .txtbox .huki {
        width: calc(100% - 160px);
    }

    .cmn-faq-01 .titbox .huki {
        padding: 20px 50px 20px 20px;
    }

    .cmn-faq-01 .txtbox {
        margin-top: 30px;
    }

    .cmn-faq-01 .txtbox .huki {
        padding: 20px 20px;
    }
}

@media (max-width: 599px) {
    .cmn-faq-01 .toggle-arrow {
        right: 10px;
    }

    .cmn-faq-01 .titbox .pic {
        width: 60px;
        height: 60px;
        padding: 10px;
    }

    .cmn-faq-01 .txtbox {
        margin-top: 20px;
    }

    .cmn-faq-01 .titbox .huki,
    .cmn-faq-01 .txtbox .huki {
        width: calc(100% - 75px);
    }

    .cmn-faq-01 .titbox .huki {
        padding: 10px 35px 10px 15px;
    }

    .cmn-faq-01 .txtbox .huki {
        padding: 10px 15px;
    }

    .cmn-faq-01 .titbox .huki:after {
        border-top: 15px solid var(--txt-color-00);
        border-bottom: 20px solid transparent;
        border-left: 20px solid transparent;
        border-right: 20px solid transparent;
        top: 42px;
        left: -17px;
    }

    .cmn-faq-01 .txtbox .huki:after {
        border-top: 15px solid var(--txt-color-00);
        border-bottom: 20px solid transparent;
        border-left: 20px solid transparent;
        border-right: 20px solid transparent;
        top: 42px;
        right: -17px;
    }

    .cmn-faq-01 .txtbox .pic {
        width: 60px;
        height: 60px;
    }

    .cmn-faq-01 .tit {
        font-size: 18px;
    }

    .cmn-faq-01 .txt {
        font-size: 14px;
    }
}

/*cmn-showroom*/
.cmn-showroom-01 .item>* {
    height: 100%;
    padding: 15px 10px;
}

.cmn-showroom-01 .tit {
    width: 66px;
    height: 66px;
    font-size: 24px;
    line-height: 66px;
    text-align: center;
    border-radius: 50%;
}

.cmn-showroom-01 .txt {
    width: calc(100% - 66px);
    padding-left: 15px;
}

@media (max-width: 1024px) {
    .cmn-showroom-01 .txt {
        width: 100%;
        padding-top: 10px;
        padding-left: 0;
    }

    .cmn-showroom-01 .tit {
        margin: 0 auto;
        font-size: 20px;
    }
}

@media (max-width: 599px) {
    .cmn-showroom-01 .tit {
        width: 56px;
        height: 56px;
        font-size: 18px;
        line-height: 56px;
    }

    .cmn-showroom-01 .txt {
        width: calc(100% - 56px);
        padding-top: 0;
        padding-left: 10px;
    }
}

.cmn-showroom-02 .box {
    margin-top: -120px;
    padding: 10px 40px;
}

@media (max-width: 1024px) {
    .cmn-showroom-02 .box {
        margin-top: -80px;
    }
}

@media (max-width: 599px) {
    .cmn-showroom-02 .box {
        margin-top: -60px;
        padding: 10px 20px;
    }
}

/*cmn-contact*/
.cmn-contact-01 .box {
    padding: 70px 100px;
}

.cmn-contact-01 .tel .icon img {
    max-width: 94px;
}

.cmn-contact-01 .tel a {
    font-weight: bold;
    font-size: 50px;
    line-height: 1;
}

.cmn-contact-01 .form input,
.cmn-contact-01 .form textarea {
    padding: 10px;
    border: 1px solid var(--txt-color-03);
}

.cmn-contact-01 .form textarea {
    height: 200px;
}

.cmn-contact-01 .form .essential {
    display: inline-block;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    padding: 2px 15px;
    font-size: 14px;
    border-radius: 5px;
}

.cmn-contact-01 .form dl>* {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    position: relative;
    z-index: 0;
}

.cmn-contact-01 .form dl>*+* {
    margin-top: 40px;
}

.cmn-contact-01 .form dl>* dt,
.cmn-contact-01 .form dl>* dd {
    padding: 0 20px 30px;
    font-size: 16px;
}

.cmn-contact-01 .form dl>* dt {
    width: 200px;
    border-bottom: 1px solid;
}

.cmn-contact-01 .form dl>* dd {
    width: calc(100% - 200px);
    border-bottom: 1px solid var(--txt-color-03);
}

.cmn-contact-01 .form dd .essential+* {
    margin-top: -10px;
    line-height: 46px;
}

.cmn-contact-01 .form .post {
    width: 200px;
    padding-left: 20px;
    position: relative;
    z-index: 0;
}

.cmn-contact-01 .form .post .icon {
    position: absolute;
    top: 0;
    left: 0;
}

@media (max-width: 1024px) {
    .cmn-contact-01 .box {
        padding: 60px 40px;
    }

    .cmn-contact-01 .form dl>* dt,
    .cmn-contact-01 .form dl>* dd {
        padding: 0 10px 30px;
    }

    .cmn-contact-01 .form dl>* dt {
        width: 160px;
    }

    .cmn-contact-01 .form dl>* dd {
        width: calc(100% - 160px);
    }
}

@media (max-width: 599px) {
    .cmn-contact-01 .box {
        padding: 30px 20px 50px;
    }

    .cmn-contact-01 .tel a {
        font-size: 32px;
    }

    .cmn-contact-01 .tel .icon img {
        max-width: 60px;
    }

    .cmn-contact-01 .form dl>*:after {
        content: "";
        width: 100%;
        height: 1px;
        background: -webkit-gradient(linear, left top, right top, color-stop(20%, var(--back-color-02)), color-stop(20%, var(--back-color-03)));
        background: linear-gradient(to right, var(--back-color-02) 20%, var(--back-color-03) 20%);
        position: absolute;
        bottom: 0;
        left: 0;
    }

    .cmn-contact-01 .form dl>*+* {
        margin-top: 30px;
    }

    .cmn-contact-01 .form .essential {
        font-size: 12px;
    }

    .cmn-contact-01 .form dd .essential+* {
        margin-top: 0;
        line-height: inherit;
    }

    .cmn-contact-01 .form dl>* dt,
    .cmn-contact-01 .form dl>* dd {
        padding: 0 0px 30px;
    }

    .cmn-contact-01 .form dl>* dt {
        width: 100%;
        padding-bottom: 10px;
        border-bottom: none;
    }

    .cmn-contact-01 .form dl>* dd {
        width: 100%;
        border-bottom: none;
    }

    .cmn-contact-01 .form .post .icon {
        top: 10px;
    }

    .cmn-contact-01 .form .post.version-01 .icon {
        top: 0;
    }
}

.cmn-contact-02 .box {
    padding: 0 30px;
    border: solid 3px var(--txt-color-02);
    border-radius: 20px;
}

.cmn-contact-02 .imgbox {
    width: 230px;
    margin-top: -50px;
    position: relative;
    z-index: 0;
}

.cmn-contact-02 .imgbox .huki {
    width: 250px;
    padding: 25px 10px;
    background-image: url("/import/tenant_1/160.16.50.164/html/images/deco-17.webp");
    background-size: 100% 100%;
    background-repeat: no-repeat;
    position: absolute;
    top: 10px;
    left: calc(100% - 60px);
    z-index: 1;
}

.cmn-contact-02 .txtbox {
    width: calc(100% - 230px);
}

.cmn-contact-02 .telbox .tel>* {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
    align-items: flex-end;
    -ms-flex-align: end;
    font-weight: bold;
    font-size: 38px;
    line-height: 1;
}

.cmn-contact-02 .telbox .tel .icon {
    height: 30px;
    margin-right: 5px;
    line-height: 1;
}

.cmn-contact-02 .telbox .tel .icon img {
    max-width: 54px;
}

@media (max-width: 1024px) {
    .cmn-contact-02 .imgbox .huki {
        top: -35px;
        left: calc(100% - 80px);
    }
}

@media (max-width: 599px) {
    .cmn-contact-02 .box {
        padding: 0px 20px 20px;
    }

    .cmn-contact-02 .imgbox {
        width: 120px;
    }

    .cmn-contact-02 .imgbox .huki {
        top: -30px;
        left: calc(100% - 30px);
    }

    .cmn-contact-02 .txtbox {
        width: 100%;
    }

    .cmn-contact-02 .telbox .tel>* {
        font-size: 34px;
    }
}

/*cmn-recruit*/
.cmn-recruit-01 dl>* {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

.cmn-recruit-01 dl>*+* {
    margin-top: 20px;
}

.cmn-recruit-01 dl>* dt,
.cmn-recruit-01 dl>* dd {
    padding: 0 20px 20px;
}

.cmn-recruit-01 dl>* dt {
    width: 200px;
    text-align: center;
    border-bottom: 1px solid;
}

.cmn-recruit-01 dl>* dd {
    width: calc(100% - 200px);
    border-bottom: 1px solid var(--txt-color-03);
}

@media (max-width: 599px) {
    .cmn-recruit-01 dl>*+* {
        margin-top: 15px;
    }

    .cmn-recruit-01 dl>* dt,
    .cmn-recruit-01 dl>* dd {
        padding: 0 10px 15px;
    }

    .cmn-recruit-01 dl>* dt {
        width: 100px;
    }

    .cmn-recruit-01 dl>* dd {
        width: calc(100% - 100px);
    }
}

.cmn-recruit-02 .item>* {
    height: 100%;
    padding: 10px 10px 0;
    border-radius: 20px;
    position: relative;
    z-index: 0;
}

.cmn-recruit-02 .item .pic {
    overflow: hidden;
    border-radius: 10px;
    position: relative;
    z-index: 0;
}

.cmn-recruit-02 .item .num {
    max-width: 90%;
    padding: 5px 15px;
    font-weight: 300;
    font-size: 16px;
    position: absolute;
    bottom: 0;
    right: 0;
    z-index: 0;
}

.cmn-recruit-02 .item .tit {
    font-weight: 600;
    font-size: 18px;
    text-align: center;
}

.cmn-recruit-02.version-01 .item:not(:last-of-type):not(:nth-of-type(3n))>*:after,
.cmn-recruit-02.version-03 .item:not(:last-of-type):not(:nth-of-type(3n))>*:after {
    content: "\f054";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    font-size: 30px;
    color: var(--txt-color-06);
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    position: absolute;
    top: 50%;
    left: calc(100% + 15px);
    z-index: 0;
}

.cmn-recruit-02.version-02 .item:first-of-type>*:before,
.cmn-recruit-02.version-03 .item:first-of-type>*:before {
    content: "\f078";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    font-size: 30px;
    color: var(--txt-color-06);
    -webkit-transform: translateY(-50%);
    transform: translateX(-50%);
    position: absolute;
    bottom: calc(100% + 5px);
    left: 50%;
    z-index: 0;
}

.cmn-recruit-02.version-02 .item:not(:last-of-type):not(:nth-of-type(3n))>*:after {
    content: "\f053";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    font-size: 30px;
    color: var(--txt-color-06);
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    position: absolute;
    top: 50%;
    right: calc(100% + 15px);
    z-index: 0;
}

@media (max-width: 1024px) {

    .cmn-recruit-02.version-01 .item:not(:last-of-type):not(:nth-of-type(3n))>*:after,
    .cmn-recruit-02.version-03 .item:not(:last-of-type):not(:nth-of-type(3n))>*:after {
        left: calc(100% + 2px);
    }

    .cmn-recruit-02.version-02 .item:first-of-type>*:before,
    .cmn-recruit-02.version-03 .item:first-of-type>*:before {
        bottom: calc(100% + -8px);
    }

    .cmn-recruit-02.version-02 .item:not(:last-of-type):not(:nth-of-type(3n))>*:after {
        right: calc(100% + 2px);
    }
}

@media (max-width: 599px) {
    .cmn-recruit-02 .item>* {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        align-items: center;
        -ms-flex-align: center;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        padding: 10px 10px 10px;
    }

    .cmn-recruit-02 .item .pic {
        width: 50%;
    }

    .cmn-recruit-02 .item .num {
        padding: 5px 10px;
        font-size: 14px;
    }

    .cmn-recruit-02 .item .txtbox {
        width: 45%;
    }

    .cmn-recruit-02 .item .tit {
        font-size: 16px;
        text-align: left;
    }

    .cmn-recruit-02.version-01 .item:not(:last-of-type):not(:nth-of-type(3n))>*:after,
    .cmn-recruit-02.version-03 .item:not(:last-of-type):not(:nth-of-type(3n))>*:after {
        content: "\f078";
        font-weight: 900;
        -webkit-transform: translateY(-50%);
        transform: translateX(-50%);
        top: calc(100% + -7px);
        left: 50%;
    }

    .cmn-recruit-02.version-02 .item:not(:last-of-type):not(:nth-of-type(3n))>*:after {
        content: "\f078";
        font-weight: 900;
        -webkit-transform: translateX(-50%);
        transform: translateX(-50%);
        top: calc(100% + -7px);
        left: 50%;
        right: auto;
    }
}

.cmn-recruit-03 .box {
    border: 1px solid;
}

.cmn-recruit-04 .item>* {
    height: 100%;
    display: block;
    overflow: hidden;
    padding: 10px;
    border-radius: 20px;
}

.cmn-recruit-04 .item .pic {
    overflow: hidden;
    border-radius: 10px;
}

@media (max-width: 599px) {
    .cmn-recruit-04 .item>* {
        padding: 5px;
    }
}

[data-element-id] .common-content {
    padding: 100px 0;
}

/* 2023/06/21  */

.beju-box{
      border: 1px solid rgb(192, 192, 192);
    font-style: inherit;
    margin: 0px;
    outline: 0px;
    padding: 5px;
    vertical-align: top;
    border-collapse: collapse;
}

.form-captiontxt{
  font-size: 16px;
  text-align: center;
  margin-bottom: 5px;
}

.form-tablebox {
    border: 1px solid rgb(192, 192, 192);
    font-size: 16px;
    width: 70%;
    margin: 10px auto;
    outline: 0px;
    padding: 0px;
    vertical-align: baseline;
    border-spacing: 0px;
    background-color: rgb(255, 255, 239);
    letter-spacing: normal;
    text-align: center;
}

.form-head{
    color: red;
    text-align: center;
    margin: 25px auto;
}

@media only screen and (max-width: 1024px){
.form-tablebox{
  width: 100%;
}  
}

@media only screen and (max-width: 599px){
  .form-tablebox{
    width: 100%;
  }
  
  .form-captiontxt{
    font-size: 14px;
  }
  
  .beju-box{
    font-size: 14px;
  }
}

.r{
  display: none;
}

.v{
  display: block;
}

@media only screen and (max-width: 599px){
  .r{
  display: block;
}

.v{
  display: none;
}
}


/* 2023/09/04 */
.cmn-mainimg-01 .pic {
  margin: auto;
  margin-top: 40px;
}

.cmn-mainimg-01 .uk-slidenav-position:after {
    padding-top: 50%;
}

@media (max-width:599px) {
  .cmn-mainimg-01 .pic {
    width: 90%;
  }
}


/* 2024/03/11 */
@media (min-width:1601px) {
  .cmn-slick-06 .slick-arrow.btn-next {
      right: calc(-50% - 20px);
  }
}

/**2024/08/22追加**/
.blog02 ul {
  display: flex;
  flex-wrap: wrap;
}
.blog02 ul li {
  width: 31%;
  margin: auto;
}

@media (max-width: 599px){
  .blog02 ul li {
    width: 100%;
    margin: 0 auto 30px;
  }
  }
  
/* 2024/10/07 追記 */

@media screen and (max-width:599px) {
 .sp-wi100{
   width: 100% !Important;
   margin: auto;
 }
}

.jirei-comment dt{
  width: 20%;
    text-align: center;
    padding: 7px 0;
    margin-bottom: 3px;
}

@media screen and (max-width:599px) {
.jirei-comment dt {
    width: 40%;
}
}




.mt-11rem{
  margin-top: 13rem;
}

.cmn-slick-08 {
    width: 100%;
    position: absolute;
    top: 87%;
    margin-top: 50px;
}


@media (max-width: 1024px) {
.cmn-slick-08 {
    width: 100%;
    position: absolute;
    top: 13rem;
}

.mt-11rem {
    margin-top: 15rem;
}
}

@media (max-width: 599px) {
  .cmn-slick-08 {
        width: 100%;
        position: absolute;
        top: 7rem;
    }
    
    .mt-11rem {
        margin-top: 4rem;
    }
    
    .cmn-slick-08 .item {
        margin: 0 15px;
        width: 100px !important;
    }
    
    .cmn-slick-08 .item .txt {
    font-weight: bold;
    font-size: 13px;
    }
    
    .cmn-slick-08 .item .tit {
    margin-top: 2px;
    font-weight: bold;
    font-size: 17px;
    }
}

/* 2024/11/06 */
.pikari a {
    position: relative;
    display: inline-block;
    overflow: hidden;
    transition: color 0.3s ease;
}

.pikari a::before {
    content: "";
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(120deg, transparent, rgba(255, 255, 255, 0.7), transparent);
    transition: transform 0.6s ease;
    transform: skewX(-25deg);
    pointer-events: none;
}

.pikari a:hover::before {
    left: 100%;
    transition: left 0.6s ease;
}

.category-container{
  background-color: #fff;
}

.search-item{
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}

.search-item .title{
  width: 20%;
}

.search-item .search-item-content{
  width: 75%;
}

.search-item input{
  display: none;
}

.search-item label{
  display: inline-block;
  background: #fff;
  border: 2px solid;
  color: #6fc23f;
  border-radius: 20px;
  padding: 0.25em 0.5em;
  margin: 3px;
  border-radius: 1em;
  cursor: pointer;
}

.search-item input:checked+label {
    color: #fff;
    background-color: #6fc23f;
}

.btn01.ver02{
  text-align: right;
}

.btn01.ver02 button{
  background-color: #6fc23f;
  color: #fff;
  padding: 1em 2em;
  border-radius: 50px;
  font-size: 1.25em;
}

.report-container .r-date{
  color: #5B93CF;
}

.report-container .r-ttl{
  font-weight: bold;
  font-size: 1.25em;
  margin: 0.5em 0;
}

.inner1800{
  max-width: 1800px;
  width: 98%;
  margin-left: auto;
  margin-right: auto;
}

@media(max-width: 1024px) {
.inner1800 {
    max-width: 768px;
    width: 96%;
}
}    

@media(max-width:599px) {
.search-item label{
  font-size: 14px;
}

.search-item .title{
  width: 100%;
}

.search-item .search-item-content{
  width: 100%;
}

.report-container .r-ttl{
  font-size: 1.1em;
}
}

/* 2025/01/28 */
.common-content.spver02 .cmn-fixed-02 ul li.sp-logo{
  display: none;
}

.common-content.spver02 .cmn-fixed-02 ul li.sp-tel{
  display: none;
}

@media(max-width:599px) {
.header-inner.spver02 .cmn-header-01 .telicon{
  display: none;
}

.common-content.spver02{
  position: relative;
  z-index: 3;
}

.common-content.spver02 .cmn-fixed-02{
  top: 0;
  right: auto;
  width: 100%;
  transform: none;
}

.common-content.spver02 .cmn-fixed-02 li+li {
  margin-top: 0;
}

.common-content.spver02 .cmn-fixed-02 ul {
  display: flex;
  align-items: center;
  width: calc( (100% - 50px) );
  background-color: #fff;
}

.common-content.spver02 .cmn-fixed-02 ul li.sp-logo{
  display: block;
  flex-grow: 1;
}

.common-content.spver02 .cmn-fixed-02 li.sp-logo .logo {
  width: 100%;
}

.common-content.spver02 .cmn-fixed-02 li.sp-logo .logo a {
  display: block;
  width: 100%;
  height: 100%;
}

.common-content.spver02 .cmn-fixed-02 li.sp-logo .logo a img {
  width: auto;
  height: 100%;
}

.common-content.spver02 .cmn-fixed-02 ul li.sp-tel{
  display: block;
}

.common-content.spver02 .cmn-fixed-02 li>* {
    width: 40px;
    height: 40px;
    padding: 0px;
    font-size: 24px;
    line-height: 1;
    border-radius: 0;
}

.common-content.spver02 .cmn-fixed-02 li .icon {
    display: block;
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
}

.cmn-mainimg-01.spver02 .pic {
    margin-top: 85px;
}

.cmn-mainimg-01.spver02 .left {
    position: absolute;
    bottom: -70px;
    z-index: -1;
}

.header-inner.spver02 .cmn-header-01 .btnbox .huki {
    display: none;
}

.review-pack.ver02 {
    padding: 0;
}

.cmn-h1-01{
    margin-right: 0;
    top: 45px;
    right: 5px;
}

.cmn-lowerimg-01{
    margin-top: 85px;
}
}

[data-element-id].common-content.spver02 .cmn-fixed-02 ul li.sp-logo{
  display: block;
}

[data-element-id].common-content.spver02 .cmn-fixed-02 ul li.sp-tel{
  display: block;
}


/* 2026.08.08 */

.left-30{
  left: -30px !important;
}

.mt-3rem{
  margin-top: 3rem;
}

.pest03{
  width: 130px !important;
    height: 50px !important;
    font-size: 24px;
    line-height: 50px !important;
    text-align: center;
    border-radius: 10px !important;
    margin: 0 auto 1rem !important;
}

.pest03-txt{
width: calc(100% - 15px) !important;
}
