@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=M+PLUS+Rounded+1c:wght@300;400;500;700&family=Noto+Sans+JP:wght@100;200;300;400;500;600;700&display=swap');

:root {
    --color01: #534741;
    --color02: #ff8c00;
    --color03: #a9d000;
    --color04: #06c152;
    --ff01: 'Noto Sans JP', sans-serif;
    --ff02: 'M PLUS Rounded 1c', sans-serif;
    --ff99: "font awesome 5 free";
    --shadow01: 0 0 20px #e3e3e3;
}

html {
    color: #534741;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 400;
    letter-spacing: 1px;
    font-size: 16px;
    line-height: 1.8;
}

body.active {
    overflow: hidden;
    -ms-touch-action: none;
    touch-action: none;
}

header .header{
  transition: 0.5s ease-out;
  -webkit-transition-delay: 0.3s;
    transition-delay: 0.3s;
}

/* .active header>.inner,.active header .header,
.active main,
.active footer {
    -webkit-filter: blur(3px);
    filter: blur(3px);
} */

/* base.cssに追加 */
[class*="up-z-"] {
    position: relative;
}

.img img {
    width: 100%;
    text-align: center;
}

.up-lst-disc {
    padding-left: 30px;
}

/* 背景画像（parts）共通（疑似要素以外）css */
.bgcss {
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center center;
}

.bgz-contain {
    background-size: contain;
}

.bgz-100\%-auto {
    background-size: 100% auto;
}

.bgz-100\%-100\% {
    background-size: 100% 100%;
}

.bgz-auto-100\% {
    background-size: auto 100%;
}

.bgr-repeat {
    background-repeat: repeat;
}

.bgp-top-left {
    background-position: top left;
}

.bgp-top-right {
    background-position: top right;
}

.bgp-top-center {
    background-position: top center;
}

.bgp-bottom-left {
    background-position: bottom left;
}

.bgp-bottom-right {
    background-position: bottom right;
}

.bgp-bottom-center {
    background-position: bottom center;
}

.bgp-center-left {
    background-position: center left;
}

.bgp-center-right {
    background-position: center right;
}

.bgp-center-center {
    background-position: center center;
}

/* 背景画像（parts）URL指定 */
.wood-box {
    background-image: url('/import/tenant_1/153.121.50.242/html/images/common/parts_006.png');
}

.green-box {
    background-image: url('/import/tenant_1/153.121.50.242/html/images/common/parts_008.png');
}

.main-visual-title::after {
    background-image: url('/import/tenant_1/153.121.50.242/html/images/common/parts_003.png');
}

[class*="deco-img_"] {
    background-image: url('/import/tenant_1/153.121.50.242/html/images/common/parts_012.png');
}

.deco-img_01 {
    background-image: url('/import/tenant_1/153.121.50.242/html/images/common/parts_012.png');
}

.deco-img_02 {
    background-image: url('/import/tenant_1/153.121.50.242/html/images/common/parts_013.png');
}

.deco-img_03 {
    background-image: url('/import/tenant_1/153.121.50.242/html/images/common/parts_014.png');
}

.deco-img_04 {
    background-image: url('/import/tenant_1/153.121.50.242/html/images/common/parts_016.png');
}

/* parts */
.parts-parent {
    position: relative;
}

[class*="parts_"]::before,
[class*="parts_"]::after {
    position: absolute;
}

.parts_01::before {
    content: '';
    display: inline-block;
    width: 78px;
    height: 97px;
    background-image: url('/import/tenant_1/153.121.50.242/html/images/common/parts_004.png');
    background-size: 100% auto;
    background-repeat: no-repeat;
    background-position: center center;
    top: 0;
    left: 0;
}

.parts_01.type02::before {
    left: -30px;
    opacity: .8;
}

.parts_02::after {
    content: '';
    display: inline-block;
    width: 45px;
    height: 100px;
    background-image: url('/import/tenant_1/153.121.50.242/html/images/common/parts_005.png');
    background-size: 100% auto;
    background-repeat: no-repeat;
    background-position: center center;
    top: 0;
    right: -10px;
    -webkit-transform: translate(100%, 0);
    transform: translate(100%, 0);
}

.parts_03::before {
    content: '';
    width: 23px;
    height: 8px;
    display: block;
    background-image: url('/import/tenant_1/153.121.50.242/html/images/common/parts_018.png');
    background-size: 100% auto;
    background-repeat: no-repeat;
    background-position: center center;
        left: 55%;
    top: 5px;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
}

.parts_04::before {
    content: '';
    width: 44px;
    height: 56px;
    display: block;
    background-image: url('/import/tenant_1/153.121.50.242/html/images/common/parts_002.png');
    background-size: 100% auto;
    background-repeat: no-repeat;
    background-position: center center;
    top: 0;
    left: 0;
}

.parts_05::before {
    content: "";
    background-image: url('/import/tenant_1/153.121.50.242/html/images/common/parts_003.png');
    background-size: contain;
    background-repeat: no-repeat;
    aspect-ratio: 32/42;
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    width: 32px;
}

@media(max-width:1024px) {
    .parts_01.type02::before {
        left: -10px;
        width: 50px;
        height: auto;
        aspect-ratio: 78/97;
    }

    header .parts_02::after {
        width: 35px;
        height: auto;
        aspect-ratio: 45/100;
        top: 40px;
        right: -10px;
        -webkit-transform: translate(0, 0) rotate(45deg);
        transform: translate(0, 0) rotate(45deg);
    }
}

@media (max-width: 599px) {
    .parts_01::before {
        display: none;
    }
}

/* デザイン背景 */
.bgc-01 {
    background-color: #f7f5ef;
}

.arrow-box-bottom::after {
    border-color: #fcf2ed transparent transparent transparent;
}

.bgc-02 {
    background-color: #f9fbf6;
}

.bgc-03 {
    background-color: #f5d5b9;
}

.bgc-pattern_01 {
    background-image: url('/import/tenant_1/153.121.50.242/html/images/common/parts_015.png');
    background-size: 100% auto;
    background-repeat: repeat-y;
    background-position: center center;
}

.bg-img-parent {
    position: relative;
}

.bg-img-img {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
}

.bg-img-img img {
    width: 100%;
    height: 100% !important;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center center;
    object-position: center center;
    font-family: 'object-fit: cover; object-position: center center;';
}

.bg-img-img.opacity03 img {
    opacity: 0.3;
}

.bg-img-img.opacity06 img {
    opacity: 0.6;
}

.bgi-01 {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #fcf2ed;
}

.bgi-01.type02 {
    width: 100vw;
    height: 200vh;
}

.bgi-01 img {
    opacity: .3;
}

/* カラー１ */
.color-01-text,
.btn a:hover,
.btn button:hover,
.sidebar-list li a::after,
.flow-box-inner+.flow-box-inner::before,
.faq-list dt,
.faq-list dt::before {
    color: var(--color02);
    position: relative;
}

.sidebar-list.green li a::after {
    color: var(--color03);
}

.sidebar-list.brown li a::after {
    color: var(--color01);
}

.color-01-bgc,
.menu-trigger span,
.btn a,
.btn button,
.slash::before,
.slash::after {
    background-color: var(--color02);
}

.color-01-border-1px {
    border: 1px solid var(--color02);
}

.color-01-border-top-1px {
    border-top: 1px solid var(--color02);
}

.color-01-border-bottom-1px,
.color-01-border-top-1px.-bottom {
    border-bottom: 1px solid var(--color02);
}

.color-01-border-2px,
.btn a,
.btn button {
    border: 2px solid var(--color02);
}

.timetable_02 tr+tr {
    border-top: 1px solid var(--color02);
}

.timetable_02 tr td+td {
    border-left: 1px solid var(--color02);
}

.table_02 tr+tr,
.table_03 tr+tr {
    border-top: 1px solid var(--color02);
}

.dl-list-inner+.dl-list-inner {
    border-top: 1px dashed var(--color02);
}

/* カラー２ */
.color-02-text {
    color: var(--color03);
}

.color-02-bgc,
.nav-list li a::after,
.nav-list li .dropdown-btn::after {
    background-color: var(--color03);
}

.color-02-border-1px {
    border: 1px solid var(--color03);
}

.color-02-border-2px {
    border: 2px solid var(--color03);
}

.color-02-border-bottom-1px,
.color-02-border-top-1px.-bottom {
    border-bottom: 1px solid var(--color03);
}

.dl-list-inner.green+.dl-list-inner.green {
    border-top: 1px dashed var(--color03);
}

/* カラー３ */
.color-03-text {
    color: var(--color01);
}

.color-03-bgc {
    background-color: var(--color01);
}

.color-03-border-1px {
    border: 1px solid var(--color01);
}

.color-03-border-2px {
    border: 2px solid var(--color01);
}

/* カラー４ */
.color-04-text,
.btn_02 a:hover,
.btn_02 button:hover {
    color: #6eb36c;
}

.color-04-bgc,
.btn_02 a,
.btn_02 button {
    background-color: #6eb36c;
}

.color-04-border-1px {
    border: 1px solid #6eb36c;
}

.color-04-border-2px,
.btn_02 a,
.btn_02 button {
    border: 2px solid #6eb36c;
}

/* カラー５ */
.color-05-border-1px {
    border: 1px solid #ccc;
}

/* カラー６ */
.color-06-text {
    color: var(--color01);
}

.color-06-border-1px,
.balloon-list>dd {
    border: 1px solid var(--color01);
}

.balloon-content_02 {
    border-bottom: 1px solid var(--color01);
}

.deco-btn a::after,
.deco-btn button::after {
    border-bottom: 2px solid #a45a33;
    border-right: 2px solid #a45a33;
}

/* カラー７ */
.color-07-text,
.faq-list dd::before {
    color: var(--color03);
}

/* add-up */
.up-fw-500 {
    font-weight: 500;
}

/* cmn-area */
/* font-cmn */
.font-cmn-01 {
    font-family: 'Noto Sans JP', sans-serif;
}

.font-cmn-02 {
    font-family: 'M PLUS Rounded 1c', sans-serif;
    -webkit-transform: rotateZ(0.03deg);
    transform: rotateZ(0.03deg);
}

/* line-cmn */
.line-cmn-01 {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    overflow: hidden;

    -webkit-line-clamp: 1;
}

.line-cmn-02 {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    overflow: hidden;

    -webkit-line-clamp: 2;
}

/* indent-cmn */
.indent-cmn-01 {
    padding-left: 1em;
    text-indent: -1em;
}

.indent-cmn-02{
  padding-left: 1em;
  position: relative;
}

.indent-cmn-02::before {
    content: "\f111";
    font-family: "font awesome 5 free";
    font-weight: bold;
    position: absolute;
    top: 0;
    left: 0;
    font-size: 10px;
    line-height: 30px;
}

/* br-cmn */
.br-cmn-20 {
    border-radius: 20px;
    overflow: hidden;
}

@media(max-width:599px) {
    .sp-cmn-last01:last-child {
        padding-bottom: 0;
    }
}


/* その他の色 */
.check-list li::before {
    background-color: var(--color01);
}

/* logo */
.logo {
    max-width: 350px;
    -ms-flex-negative: 0;
    flex-shrink: 0;
}

/* tel */
.tel a {
    white-space: nowrap;
}

.tel-item a {
    line-height: 1.2;
}

.tel-item a::before {
    content: "\f2a0";
    font-family: "Font Awesome 5 Free";
    font-size: 120%;
    font-weight: 900;
    line-height: 1;
    display: inline-block;
    margin-right: 5px;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
}

/* link */
.underline a {
    text-decoration: underline;
}

/* 汎用css */
.centering {
    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;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.infinity {
    margin-left: -999rem;
    margin-right: -999rem;
    padding-left: 999rem;
    padding-right: 999rem;
}

.infinity-left {
    margin-left: -999rem;
    padding-left: 999rem;
}

.infinity-right {
    margin-right: -999rem;
    padding-left: 999rem;
}

.square {
    position: relative;
}

.square::before {
    content: "";
    display: block;
    padding-top: 100%;
}

[data-element-id] .main-visual-circle.square {
    display: flex;
        align-items: flex-start;
        height: 40vh
}

[data-element-id] .uk-slideshow>li{
  opacity: 1 !important;
}

.square-inner {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    aspect-ratio: 1/1;
}

[data-element-id] .square-inner {
    position: relative;
    top: auto;
    left: auto;
    bottom: auto;
    right: auto;
    width: 350px;
}

.num-parent {
    padding-top: 30px;
    position: relative;
}

.num-parent::before {
    content: '';
    display: inline-block;
    width: 50px;
    height: 1px;
    background-color: #fff;
    margin: auto;
    position: absolute;
    top: -1px;
    left: 0;
    right: 0;
}

.num-parent .num {
    text-align: center;
    margin: auto;
    position: absolute;
    top: -20px;
    left: 10px;
    font-family: var(--ff02);
    font-size: 60px;
    z-index: 2;
    font-weight: 500;
}

.num-block {
    position: relative;
}

.num-block::after {
    content: '';
    width: 80%;
    height: 1px;
    display: block;
    border-top: 1px dotted #91583d;
    margin: auto;
    position: absolute;
    bottom: 0;
    left: 10%;
}

.num-block-title {
    position: relative;
}

.num-block-num {
    width: 50px;
    height: 50px;
    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;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    font-size: 24px;
    color: var(--color03);
    border-radius: 50%;
    background-color: #fff;
    margin: auto;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    -webkit-transform: translate(0, -50%);
    transform: translate(0, -50%);
    z-index: 1;
    font-family: 'M PLUS Rounded 1c';
    font-weight: 600;
}

.content-list.-alternate li .parallel-cont {
    margin-right: 5%;
}

.content-list.-alternate li:nth-of-type(even) .parallel {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
}

.content-list.-alternate li:nth-of-type(even) .parallel .parallel-cont {
    margin-left: 5%;
    margin-right: 0;
}

@media(max-width:599px) {
    .num-parent .num {
        font-size: 54px;
    }
}

/* column-count */
.column-none {
    -moz-column-count: auto;
    -webkit-column-count: auto;
    column-count: auto;
}

.column-02 {
    -moz-column-count: 2;
    -webkit-column-count: 2;
    column-count: 2;
}

.column-03 {
    -moz-column-count: 3;
    -webkit-column-count: 3;
    column-count: 3;
}

.column-04 {
    -moz-column-count: 4;
    -webkit-column-count: 4;
    column-count: 4;
}

.column-05 {
    -moz-column-count: 5;
    -webkit-column-count: 5;
    column-count: 5;
}

.column-gap-0 {
    -moz-column-gap: normal;
    -webkit-column-gap: normal;
    column-gap: normal;
}

.column-gap-5 {
    -moz-column-gap: 5px;
    -webkit-column-gap: 5px;
    column-gap: 5px;
}

.column-gap-10 {
    -moz-column-gap: 10px;
    -webkit-column-gap: 10px;
    column-gap: 10px;
}

.column-gap-15 {
    -moz-column-gap: 15px;
    -webkit-column-gap: 15px;
    column-gap: 15px;
}

.column-gap-20 {
    -moz-column-gap: 20px;
    -webkit-column-gap: 20px;
    column-gap: 20px;
}

.column-gap-25 {
    -moz-column-gap: 25px;
    -webkit-column-gap: 25px;
    column-gap: 25px;
}

.column-gap-30 {
    -moz-column-gap: 30px;
    -webkit-column-gap: 30px;
    column-gap: 30px;
}

.column-gap-35 {
    -moz-column-gap: 35px;
    -webkit-column-gap: 35px;
    column-gap: 35px;
}

.column-gap-40 {
    -moz-column-gap: 40px;
    -webkit-column-gap: 40px;
    column-gap: 40px;
}

.column-gap-45 {
    -moz-column-gap: 45px;
    -webkit-column-gap: 45px;
    column-gap: 45px;
}

.column-gap-50 {
    -moz-column-gap: 50px;
    -webkit-column-gap: 50px;
    column-gap: 50px;
}

.column-gap-55 {
    -moz-column-gap: 55px;
    -webkit-column-gap: 55px;
    column-gap: 55px;
}

.column-gap-60 {
    -moz-column-gap: 60px;
    -webkit-column-gap: 60px;
    column-gap: 60px;
}

.column-gap-65 {
    -moz-column-gap: 65px;
    -webkit-column-gap: 65px;
    column-gap: 65px;
}

.column-gap-70 {
    -moz-column-gap: 70px;
    -webkit-column-gap: 70px;
    column-gap: 70px;
}

.column-gap-75 {
    -moz-column-gap: 75px;
    -webkit-column-gap: 75px;
    column-gap: 75px;
}

.column-gap-80 {
    -moz-column-gap: 80px;
    -webkit-column-gap: 80px;
    column-gap: 80px;
}

.column-gap-85 {
    -moz-column-gap: 85px;
    -webkit-column-gap: 85px;
    column-gap: 85px;
}

.column-gap-90 {
    -moz-column-gap: 90px;
    -webkit-column-gap: 90px;
    column-gap: 90px;
}

.column-gap-95 {
    -moz-column-gap: 95px;
    -webkit-column-gap: 95px;
    column-gap: 95px;
}

.column-gap-100 {
    -moz-column-gap: 100px;
    -webkit-column-gap: 100px;
    column-gap: 100px;
}

[class*="column-"] li {
    -moz-column-break-inside: avoid;
    -webkit-column-break-inside: avoid;
    break-inside: avoid;
}

@media (max-width: 1024px) {
    .column-none\@tb {
        -moz-column-count: auto;
        -webkit-column-count: auto;
        column-count: auto;
    }

    .column-02\@tb {
        -moz-column-count: 2;
        -webkit-column-count: 2;
        column-count: 2;
    }

    .column-03\@tb {
        -moz-column-count: 3;
        -webkit-column-count: 3;
        column-count: 3;
    }

    .column-04\@tb {
        -moz-column-count: 4;
        -webkit-column-count: 4;
        column-count: 4;
    }

    .column-05\@tb {
        -moz-column-count: 5;
        -webkit-column-count: 5;
        column-count: 5;
    }

    .column-gap-0\@tb {
        -moz-column-gap: normal;
        -webkit-column-gap: normal;
        column-gap: normal;
    }

    .column-gap-5\@tb {
        -moz-column-gap: 5px;
        -webkit-column-gap: 5px;
        column-gap: 5px;
    }

    .column-gap-10\@tb {
        -moz-column-gap: 10px;
        -webkit-column-gap: 10px;
        column-gap: 10px;
    }

    .column-gap-15\@tb {
        -moz-column-gap: 15px;
        -webkit-column-gap: 15px;
        column-gap: 15px;
    }

    .column-gap-20\@tb {
        -moz-column-gap: 20px;
        -webkit-column-gap: 20px;
        column-gap: 20px;
    }

    .column-gap-25\@tb {
        -moz-column-gap: 25px;
        -webkit-column-gap: 25px;
        column-gap: 25px;
    }

    .column-gap-30\@tb {
        -moz-column-gap: 30px;
        -webkit-column-gap: 30px;
        column-gap: 30px;
    }

    .column-gap-35\@tb {
        -moz-column-gap: 35px;
        -webkit-column-gap: 35px;
        column-gap: 35px;
    }

    .column-gap-40\@tb {
        -moz-column-gap: 40px;
        -webkit-column-gap: 40px;
        column-gap: 40px;
    }

    .column-gap-45\@tb {
        -moz-column-gap: 45px;
        -webkit-column-gap: 45px;
        column-gap: 45px;
    }

    .column-gap-50\@tb {
        -moz-column-gap: 50px;
        -webkit-column-gap: 50px;
        column-gap: 50px;
    }

    .column-gap-55\@tb {
        -moz-column-gap: 55px;
        -webkit-column-gap: 55px;
        column-gap: 55px;
    }

    .column-gap-60\@tb {
        -moz-column-gap: 60px;
        -webkit-column-gap: 60px;
        column-gap: 60px;
    }

    .column-gap-65\@tb {
        -moz-column-gap: 65px;
        -webkit-column-gap: 65px;
        column-gap: 65px;
    }

    .column-gap-70\@tb {
        -moz-column-gap: 70px;
        -webkit-column-gap: 70px;
        column-gap: 70px;
    }

    .column-gap-75\@tb {
        -moz-column-gap: 75px;
        -webkit-column-gap: 75px;
        column-gap: 75px;
    }

    .column-gap-80\@tb {
        -moz-column-gap: 80px;
        -webkit-column-gap: 80px;
        column-gap: 80px;
    }

    .column-gap-85\@tb {
        -moz-column-gap: 85px;
        -webkit-column-gap: 85px;
        column-gap: 85px;
    }

    .column-gap-90\@tb {
        -moz-column-gap: 90px;
        -webkit-column-gap: 90px;
        column-gap: 90px;
    }

    .column-gap-95\@tb {
        -moz-column-gap: 95px;
        -webkit-column-gap: 95px;
        column-gap: 95px;
    }

    .column-gap-100\@tb {
        -moz-column-gap: 100px;
        -webkit-column-gap: 100px;
        column-gap: 100px;
    }
}

@media (max-width: 599px) {
    .column-none\@sp {
        -moz-column-count: auto;
        -webkit-column-count: auto;
        column-count: auto;
    }

    .column-02\@sp {
        -moz-column-count: 2;
        -webkit-column-count: 2;
        column-count: 2;
    }

    .column-03\@sp {
        -moz-column-count: 3;
        -webkit-column-count: 3;
        column-count: 3;
    }

    .column-04\@sp {
        -moz-column-count: 4;
        -webkit-column-count: 4;
        column-count: 4;
    }

    .column-05\@sp {
        -moz-column-count: 5;
        -webkit-column-count: 5;
        column-count: 5;
    }

    .column-gap-0\@sp {
        -moz-column-gap: normal;
        -webkit-column-gap: normal;
        column-gap: normal;
    }

    .column-gap-5\@sp {
        -moz-column-gap: 5px;
        -webkit-column-gap: 5px;
        column-gap: 5px;
    }

    .column-gap-10\@sp {
        -moz-column-gap: 10px;
        -webkit-column-gap: 10px;
        column-gap: 10px;
    }

    .column-gap-15\@sp {
        -moz-column-gap: 15px;
        -webkit-column-gap: 15px;
        column-gap: 15px;
    }

    .column-gap-20\@sp {
        -moz-column-gap: 20px;
        -webkit-column-gap: 20px;
        column-gap: 20px;
    }

    .column-gap-25\@sp {
        -moz-column-gap: 25px;
        -webkit-column-gap: 25px;
        column-gap: 25px;
    }

    .column-gap-30\@sp {
        -moz-column-gap: 30px;
        -webkit-column-gap: 30px;
        column-gap: 30px;
    }

    .column-gap-35\@sp {
        -moz-column-gap: 35px;
        -webkit-column-gap: 35px;
        column-gap: 35px;
    }

    .column-gap-40\@sp {
        -moz-column-gap: 40px;
        -webkit-column-gap: 40px;
        column-gap: 40px;
    }

    .column-gap-45\@sp {
        -moz-column-gap: 45px;
        -webkit-column-gap: 45px;
        column-gap: 45px;
    }

    .column-gap-50\@sp {
        -moz-column-gap: 50px;
        -webkit-column-gap: 50px;
        column-gap: 50px;
    }

    .column-gap-55\@sp {
        -moz-column-gap: 55px;
        -webkit-column-gap: 55px;
        column-gap: 55px;
    }

    .column-gap-60\@sp {
        -moz-column-gap: 60px;
        -webkit-column-gap: 60px;
        column-gap: 60px;
    }

    .column-gap-65\@sp {
        -moz-column-gap: 65px;
        -webkit-column-gap: 65px;
        column-gap: 65px;
    }

    .column-gap-70\@sp {
        -moz-column-gap: 70px;
        -webkit-column-gap: 70px;
        column-gap: 70px;
    }

    .column-gap-75\@sp {
        -moz-column-gap: 75px;
        -webkit-column-gap: 75px;
        column-gap: 75px;
    }

    .column-gap-80\@sp {
        -moz-column-gap: 80px;
        -webkit-column-gap: 80px;
        column-gap: 80px;
    }

    .column-gap-85\@sp {
        -moz-column-gap: 85px;
        -webkit-column-gap: 85px;
        column-gap: 85px;
    }

    .column-gap-90\@sp {
        -moz-column-gap: 90px;
        -webkit-column-gap: 90px;
        column-gap: 90px;
    }

    .column-gap-95\@sp {
        -moz-column-gap: 95px;
        -webkit-column-gap: 95px;
        column-gap: 95px;
    }

    .column-gap-100\@sp {
        -moz-column-gap: 100px;
        -webkit-column-gap: 100px;
        column-gap: 100px;
    }
}

/* 共通コンテンツ間隔 */

[class*="section-m"],
[class*="section-p"] {
    --section-xlarge: 150px;
    --section-large: 120px;
    --section-medium: 100px;
    --section-small: 80px;
    --section-xsmall: 60px;
}

.section-my-xlarge {
    margin-top: var(--section-xlarge);
    margin-bottom: var(--section-xlarge);
}

.section-mt-xlarge {
    margin-top: var(--section-xlarge);
}

.section-mb-xlarge {
    margin-bottom: var(--section-xlarge);
}

.section-my-large {
    margin-top: var(--section-large);
    margin-bottom: var(--section-large);
}

.section-mt-large {
    margin-top: var(--section-large);
}

.section-mb-large {
    margin-bottom: var(--section-large);
}

.section-my-medium {
    margin-top: var(--section-medium);
    margin-bottom: var(--section-medium);
}

.section-mt-medium {
    margin-top: var(--section-medium);
}

.section-mb-medium {
    margin-bottom: var(--section-medium);
}

.section-my-small {
    margin-top: var(--section-small);
    margin-bottom: var(--section-small);
}

.section-mt-small {
    margin-top: var(--section-small);
}

.section-mb-small {
    margin-bottom: var(--section-small);
}

.section-my-xsmall {
    margin-top: var(--section-xsmall);
    margin-bottom: var(--section-xsmall);
}

.section-mt-xsmall {
    margin-top: var(--section-xsmall);
}

.section-mb-xsmall {
    margin-bottom: var(--section-xsmall);
}

@media (max-width: 1024px) {
    .section-my-xlarge {
        margin-top: calc(var(--section-xlarge) * 0.8);
        margin-bottom: calc(var(--section-xlarge) * 0.8);
    }

    .section-mt-xlarge {
        margin-top: calc(var(--section-xlarge) * 0.8);
    }

    .section-mb-xlarge {
        margin-bottom: calc(var(--section-xlarge) * 0.8);
    }

    .section-my-large {
        margin-top: calc(var(--section-large) * 0.8);
        margin-bottom: calc(var(--section-large) * 0.8);
    }

    .section-mt-large {
        margin-top: calc(var(--section-large) * 0.8);
    }

    .section-mb-large {
        margin-bottom: calc(var(--section-large) * 0.8);
    }

    .section-my-medium {
        margin-top: calc(var(--section-medium) * 0.8);
        margin-bottom: calc(var(--section-medium) * 0.8);
    }

    .section-mt-medium {
        margin-top: calc(var(--section-medium) * 0.8);
    }

    .section-mb-medium {
        margin-bottom: calc(var(--section-medium) * 0.8);
    }

    .section-my-small {
        margin-top: calc(var(--section-small) * 0.8);
        margin-bottom: calc(var(--section-small) * 0.8);
    }

    .section-mt-small {
        margin-top: calc(var(--section-small) * 0.8);
    }

    .section-mb-small {
        margin-bottom: calc(var(--section-small) * 0.8);
    }

    .section-my-xsmall {
        margin-top: calc(var(--section-xsmall) * 0.8);
        margin-bottom: calc(var(--section-xsmall) * 0.8);
    }

    .section-mt-xsmall {
        margin-top: calc(var(--section-xsmall) * 0.8);
    }

    .section-mb-xsmall {
        margin-bottom: calc(var(--section-xsmall) * 0.8);
    }
}

@media (max-width: 599px) {
    .section-my-xlarge {
        margin-top: calc(var(--section-xlarge) * 0.6);
        margin-bottom: calc(var(--section-xlarge) * 0.6);
    }

    .section-mt-xlarge {
        margin-top: calc(var(--section-xlarge) * 0.6);
    }

    .section-mb-xlarge {
        margin-bottom: calc(var(--section-xlarge) * 0.6);
    }

    .section-my-large {
        margin-top: calc(var(--section-large) * 0.6);
        margin-bottom: calc(var(--section-large) * 0.6);
    }

    .section-mt-large {
        margin-top: calc(var(--section-large) * 0.6);
    }

    .section-mb-large {
        margin-bottom: calc(var(--section-large) * 0.6);
    }

    .section-my-medium {
        margin-top: calc(var(--section-medium) * 0.6);
        margin-bottom: calc(var(--section-medium) * 0.6);
    }

    .section-mt-medium {
        margin-top: calc(var(--section-medium) * 0.6);
    }

    .section-mb-medium {
        margin-bottom: calc(var(--section-medium) * 0.6);
    }

    .section-my-small {
        margin-top: calc(var(--section-small) * 0.6);
        margin-bottom: calc(var(--section-small) * 0.6);
    }

    .section-mt-small {
        margin-top: calc(var(--section-small) * 0.6);
    }

    .section-mb-small {
        margin-bottom: calc(var(--section-small) * 0.6);
    }

    .section-my-xsmall {
        margin-top: calc(var(--section-xsmall) * 0.6);
        margin-bottom: calc(var(--section-xsmall) * 0.6);
    }

    .section-mt-xsmall {
        margin-top: calc(var(--section-xsmall) * 0.6);
    }

    .section-mb-xsmall {
        margin-bottom: calc(var(--section-xsmall) * 0.6);
    }
}

.section-py-xlarge {
    padding-top: var(--section-xlarge);
    padding-bottom: var(--section-xlarge);
}

.section-pt-xlarge {
    padding-top: var(--section-xlarge);
}

.section-pb-xlarge {
    padding-bottom: var(--section-xlarge);
}

.section-py-large {
    padding-top: var(--section-large);
    padding-bottom: var(--section-large);
}

.section-pt-large {
    padding-top: var(--section-large);
}

.section-pb-large {
    padding-bottom: var(--section-large);
}

.section-py-medium {
    padding-top: var(--section-medium);
    padding-bottom: var(--section-medium);
}

.section-pt-medium {
    padding-top: var(--section-medium);
}

.section-pb-medium {
    padding-bottom: var(--section-medium);
}

.section-py-small {
    padding-top: var(--section-small);
    padding-bottom: var(--section-small);
}

.section-pt-small {
    padding-top: var(--section-small);
}

.section-pb-small {
    padding-bottom: var(--section-small);
}

.section-py-xsmall {
    padding-top: var(--section-xsmall);
    padding-bottom: var(--section-xsmall);
}

.section-pt-xsmall {
    padding-top: var(--section-xsmall);
}

.section-pb-xsmall {
    padding-bottom: var(--section-xsmall);
}

@media (max-width: 1024px) {
    .section-py-xlarge {
        padding-top: calc(var(--section-xlarge) * 0.8);
        padding-bottom: calc(var(--section-xlarge) * 0.8);
    }

    .section-pt-xlarge {
        padding-top: calc(var(--section-xlarge) * 0.8);
    }

    .section-pb-xlarge {
        padding-bottom: calc(var(--section-xlarge) * 0.8);
    }

    .section-py-large {
        padding-top: calc(var(--section-large) * 0.8);
        padding-bottom: calc(var(--section-large) * 0.8);
    }

    .section-pt-large {
        padding-top: calc(var(--section-large) * 0.8);
    }

    .section-pb-large {
        padding-bottom: calc(var(--section-large) * 0.8);
    }

    .section-py-medium {
        padding-top: calc(var(--section-medium) * 0.8);
        padding-bottom: calc(var(--section-medium) * 0.8);
    }

    .section-pt-medium {
        padding-top: calc(var(--section-medium) * 0.8);
    }

    .section-pb-medium {
        padding-bottom: calc(var(--section-medium) * 0.8);
    }

    .section-py-small {
        padding-top: calc(var(--section-small) * 0.8);
        padding-bottom: calc(var(--section-small) * 0.8);
    }

    .section-pt-small {
        padding-top: calc(var(--section-small) * 0.8);
    }

    .section-pb-small {
        padding-bottom: calc(var(--section-small) * 0.8);
    }

    .section-py-xsmall {
        padding-top: calc(var(--section-xsmall) * 0.8);
        padding-bottom: calc(var(--section-xsmall) * 0.8);
    }

    .section-pt-xsmall {
        padding-top: calc(var(--section-xsmall) * 0.8);
    }

    .section-pb-xsmall {
        padding-bottom: calc(var(--section-xsmall) * 0.8);
    }
}

@media (max-width: 599px) {
    .section-py-xlarge {
        padding-top: calc(var(--section-xlarge) * 0.6);
        padding-bottom: calc(var(--section-xlarge) * 0.6);
    }

    .section-pt-xlarge {
        padding-top: calc(var(--section-xlarge) * 0.6);
    }

    .section-pb-xlarge {
        padding-bottom: calc(var(--section-xlarge) * 0.6);
    }

    .section-py-large {
        padding-top: calc(var(--section-large) * 0.6);
        padding-bottom: calc(var(--section-large) * 0.6);
    }

    .section-pt-large {
        padding-top: calc(var(--section-large) * 0.6);
    }

    .section-pb-large {
        padding-bottom: calc(var(--section-large) * 0.6);
    }

    .section-py-medium {
        padding-top: calc(var(--section-medium) * 0.6);
        padding-bottom: calc(var(--section-medium) * 0.6);
    }

    .section-pt-medium {
        padding-top: calc(var(--section-medium) * 0.6);
    }

    .section-pb-medium {
        padding-bottom: calc(var(--section-medium) * 0.6);
    }

    .section-py-small {
        padding-top: calc(var(--section-small) * 0.6);
        padding-bottom: calc(var(--section-small) * 0.6);
    }

    .section-pt-small {
        padding-top: calc(var(--section-small) * 0.6);
    }

    .section-pb-small {
        padding-bottom: calc(var(--section-small) * 0.6);
    }

    .section-py-xsmall {
        padding-top: calc(var(--section-xsmall) * 0.6);
        padding-bottom: calc(var(--section-xsmall) * 0.6);
    }

    .section-pt-xsmall {
        padding-top: calc(var(--section-xsmall) * 0.6);
    }

    .section-pb-xsmall {
        padding-bottom: calc(var(--section-xsmall) * 0.6);
    }
}

/* fead */

.fead-mv.mv {
    -webkit-transition-delay: 0.3s;
    transition-delay: 0.3s;
}

[data-element-id] .fead-mv{
  opacity: 1;
}

.fead-up.mv {
    -webkit-transition-delay: 0.4s;
    transition-delay: 0.4s;
}

.fead-order>* {
    opacity: 0;
}

.fead-order>.mv {
    opacity: 1;
    -webkit-transition: 0.5s;
    transition: 0.5s;
    -webkit-transition-delay: 0.3s;
    transition-delay: 0.3s;
}

.fead-text>* {
    opacity: 0;
}

.fead-text .mv {
    opacity: 1;
    -webkit-transition: 1s;
    transition: 1s;
    -webkit-transition-delay: 0.3s;
    transition-delay: 0.3s;
}

/* sectionの余白 */
[class*="space-large"] {
    padding-top: 100px;
    padding-bottom: 100px;
}

[class*="space-large"][class*="-top"] {
    padding-bottom: 0;
}

[class*="space-large"][class*="-btm"] {
    padding-top: 0;
}

[class*="space-medium"] {
    padding-top: 80px;
    padding-bottom: 80px;
}

[class*="space-medium"][class*="-top"] {
    padding-bottom: 0;
}

[class*="space-medium"][class*="-btm"] {
    padding-top: 0;
}

[class*="space-small"] {
    padding-top: 30px;
    padding-bottom: 30px;
}

[class*="space-small"][class*="-top"] {
    padding-bottom: 0;
}

[class*="space-small"][class*="-btm"] {
    padding-top: 0;
}

@media (max-width: 1024px) {
    [class*="space-large"] {
        padding-top: 80px;
        padding-bottom: 80px;
    }

    [class*="space-medium"] {
        padding-top: 70px;
        padding-bottom: 70px;
    }

    [class*="space-small"] {
        padding-top: 20px;
        padding-bottom: 20px;
    }
}

/* 余白 */
.space-v100>.space+.space {
    margin-top: 100px;
}

.space-v95>.space+.space {
    margin-top: 95px;
}

.space-v90>.space+.space {
    margin-top: 90px;
}

.space-v85>.space+.space {
    margin-top: 85px;
}

.space-v80>.space+.space {
    margin-top: 80px;
}

.space-v75>.space+.space {
    margin-top: 75px;
}

.space-v70>.space+.space {
    margin-top: 70px;
}

.space-v65>.space+.space {
    margin-top: 65px;
}

.space-v60>.space+.space {
    margin-top: 60px;
}

.space-v55>.space+.space {
    margin-top: 55px;
}

.space-v50>.space+.space {
    margin-top: 50px;
}

.space-v45>.space+.space {
    margin-top: 45px;
}

.space-v40>.space+.space {
    margin-top: 40px;
}

.space-v35>.space+.space {
    margin-top: 35px;
}

.space-v30>.space+.space {
    margin-top: 30px;
}

.space-v25>.space+.space {
    margin-top: 25px;
}

.space-v20>.space+.space {
    margin-top: 20px;
}

.space-v15>.space+.space {
    margin-top: 15px;
}

.space-v10>.space+.space {
    margin-top: 10px;
}

.space-v5>.space+.space {
    margin-top: 5px;
}

.space-v0>.space+.space {
    margin-top: 0;
}

.space-h100>.space+.space {
    margin-left: 100px;
}

.space-h95>.space+.space {
    margin-left: 95px;
}

.space-h90>.space+.space {
    margin-left: 90px;
}

.space-h85>.space+.space {
    margin-left: 85px;
}

.space-h80>.space+.space {
    margin-left: 80px;
}

.space-h75>.space+.space {
    margin-left: 75px;
}

.space-h70>.space+.space {
    margin-left: 70px;
}

.space-h65>.space+.space {
    margin-left: 65px;
}

.space-h60>.space+.space {
    margin-left: 60px;
}

.space-h55>.space+.space {
    margin-left: 55px;
}

.space-h50>.space+.space {
    margin-left: 50px;
}

.space-h45>.space+.space {
    margin-left: 45px;
}

.space-h40>.space+.space {
    margin-left: 40px;
}

.space-h35>.space+.space {
    margin-left: 35px;
}

.space-h30>.space+.space {
    margin-left: 30px;
}

.space-h25>.space+.space {
    margin-left: 25px;
}

.space-h20>.space+.space {
    margin-left: 20px;
}

.space-h15>.space+.space {
    margin-left: 15px;
}

.space-h10>.space+.space {
    margin-left: 10px;
}

.space-h5>.space+.space {
    margin-left: 5px;
}

.space-h0>.space+.space {
    margin-left: 0;
}

@media (max-width: 1024px) {
    .space-v100\@tb>.space+.space {
        margin-top: 100px;
    }

    .space-v95\@tb>.space+.space {
        margin-top: 95px;
    }

    .space-v90\@tb>.space+.space {
        margin-top: 90px;
    }

    .space-v85\@tb>.space+.space {
        margin-top: 85px;
    }

    .space-v80\@tb>.space+.space {
        margin-top: 80px;
    }

    .space-v75\@tb>.space+.space {
        margin-top: 75px;
    }

    .space-v70\@tb>.space+.space {
        margin-top: 70px;
    }

    .space-v65\@tb>.space+.space {
        margin-top: 65px;
    }

    .space-v60\@tb>.space+.space {
        margin-top: 60px;
    }

    .space-v55\@tb>.space+.space {
        margin-top: 55px;
    }

    .space-v50\@tb>.space+.space {
        margin-top: 50px;
    }

    .space-v45\@tb>.space+.space {
        margin-top: 45px;
    }

    .space-v40\@tb>.space+.space {
        margin-top: 40px;
    }

    .space-v35\@tb>.space+.space {
        margin-top: 35px;
    }

    .space-v30\@tb>.space+.space {
        margin-top: 30px;
    }

    .space-v25\@tb>.space+.space {
        margin-top: 25px;
    }

    .space-v20\@tb>.space+.space {
        margin-top: 20px;
    }

    .space-v15\@tb>.space+.space {
        margin-top: 15px;
    }

    .space-v10\@tb>.space+.space {
        margin-top: 10px;
    }

    .space-v5\@tb>.space+.space {
        margin-top: 5px;
    }

    .space-v0\@tb>.space+.space {
        margin-top: 0;
    }

    .space-h100\@tb>.space+.space {
        margin-left: 100px;
    }

    .space-h95\@tb>.space+.space {
        margin-left: 95px;
    }

    .space-h90\@tb>.space+.space {
        margin-left: 90px;
    }

    .space-h85\@tb>.space+.space {
        margin-left: 85px;
    }

    .space-h80\@tb>.space+.space {
        margin-left: 80px;
    }

    .space-h75\@tb>.space+.space {
        margin-left: 75px;
    }

    .space-h70\@tb>.space+.space {
        margin-left: 70px;
    }

    .space-h65\@tb>.space+.space {
        margin-left: 65px;
    }

    .space-h60\@tb>.space+.space {
        margin-left: 60px;
    }

    .space-h55\@tb>.space+.space {
        margin-left: 55px;
    }

    .space-h50\@tb>.space+.space {
        margin-left: 50px;
    }

    .space-h45\@tb>.space+.space {
        margin-left: 45px;
    }

    .space-h40\@tb>.space+.space {
        margin-left: 40px;
    }

    .space-h35\@tb>.space+.space {
        margin-left: 35px;
    }

    .space-h30\@tb>.space+.space {
        margin-left: 30px;
    }

    .space-h25\@tb>.space+.space {
        margin-left: 25px;
    }

    .space-h20\@tb>.space+.space {
        margin-left: 20px;
    }

    .space-h15\@tb>.space+.space {
        margin-left: 15px;
    }

    .space-h10\@tb>.space+.space {
        margin-left: 10px;
    }

    .space-h5\@tb>.space+.space {
        margin-left: 5px;
    }

    .space-h0\@tb>.space+.space {
        margin-left: 0;
    }
}

@media (max-width: 599px) {
    .space-v100\@sp>.space+.space {
        margin-top: 100px;
    }

    .space-v95\@sp>.space+.space {
        margin-top: 95px;
    }

    .space-v90\@sp>.space+.space {
        margin-top: 90px;
    }

    .space-v85\@sp>.space+.space {
        margin-top: 85px;
    }

    .space-v80\@sp>.space+.space {
        margin-top: 80px;
    }

    .space-v75\@sp>.space+.space {
        margin-top: 75px;
    }

    .space-v70\@sp>.space+.space {
        margin-top: 70px;
    }

    .space-v65\@sp>.space+.space {
        margin-top: 65px;
    }

    .space-v60\@sp>.space+.space {
        margin-top: 60px;
    }

    .space-v55\@sp>.space+.space {
        margin-top: 55px;
    }

    .space-v50\@sp>.space+.space {
        margin-top: 50px;
    }

    .space-v45\@sp>.space+.space {
        margin-top: 45px;
    }

    .space-v40\@sp>.space+.space {
        margin-top: 40px;
    }

    .space-v35\@sp>.space+.space {
        margin-top: 35px;
    }

    .space-v30\@sp>.space+.space {
        margin-top: 30px;
    }

    .space-v25\@sp>.space+.space {
        margin-top: 25px;
    }

    .space-v20\@sp>.space+.space {
        margin-top: 20px;
    }

    .space-v15\@sp>.space+.space {
        margin-top: 15px;
    }

    .space-v10\@sp>.space+.space {
        margin-top: 10px;
    }

    .space-v5\@sp>.space+.space {
        margin-top: 5px;
    }

    .space-v0\@sp>.space+.space {
        margin-top: 0;
    }

    .space-h100\@sp>.space+.space {
        margin-left: 100px;
    }

    .space-h95\@sp>.space+.space {
        margin-left: 95px;
    }

    .space-h90\@sp>.space+.space {
        margin-left: 90px;
    }

    .space-h85\@sp>.space+.space {
        margin-left: 85px;
    }

    .space-h80\@sp>.space+.space {
        margin-left: 80px;
    }

    .space-h75\@sp>.space+.space {
        margin-left: 75px;
    }

    .space-h70\@sp>.space+.space {
        margin-left: 70px;
    }

    .space-h65\@sp>.space+.space {
        margin-left: 65px;
    }

    .space-h60\@sp>.space+.space {
        margin-left: 60px;
    }

    .space-h55\@sp>.space+.space {
        margin-left: 55px;
    }

    .space-h50\@sp>.space+.space {
        margin-left: 50px;
    }

    .space-h45\@sp>.space+.space {
        margin-left: 45px;
    }

    .space-h40\@sp>.space+.space {
        margin-left: 40px;
    }

    .space-h35\@sp>.space+.space {
        margin-left: 35px;
    }

    .space-h30\@sp>.space+.space {
        margin-left: 30px;
    }

    .space-h25\@sp>.space+.space {
        margin-left: 25px;
    }

    .space-h20\@sp>.space+.space {
        margin-left: 20px;
    }

    .space-h15\@sp>.space+.space {
        margin-left: 15px;
    }

    .space-h10\@sp>.space+.space {
        margin-left: 10px;
    }

    .space-h5\@sp>.space+.space {
        margin-left: 5px;
    }

    .space-h0\@sp>.space+.space {
        margin-left: 0;
    }
}

/* show hide */

.show\@pc {
    display: block;
}

.hide\@pc {
    display: none;
}

[data-element-id] .show\@tb {
    display: block;
    border: solid 4px green;
    position: relative;
    max-width: 375px;
    margin-left:auto;
    margin-right:auto;
}

[data-element-id] .show\@tb:after {
    content: "モバイル用";
    display: block;
    padding: 0 5px;
    font-weight: 700;
    color: #fff;
    text-align: center;
    text-shadow: none;
    background: green;
    font-size:12px;
}

[data-element-id] .show\@tb.indention:after {
    content: "モバイル用はここで改行";
}

[data-element-id] .show\@pc.indention:after {
    content: "PC用はここで改行";
    display: block;
    padding: 5px;
    font-weight: 700;
    font-size: 12px;
    color: #fff;
    text-align: center;
    text-shadow: none;
    background: blue;
}

[data-element-id] .show\@sp {
    display: block;
    border: solid 4px green;
    position: relative;
    max-width: 375px;
    margin: 0 auto;
    padding: 0px;
    display: flex;
    flex-direction: column-reverse;
    justify-content: flex-end;
    height: fit-content;
}

[data-element-id] .show\@sp:after {
    content: "モバイル用";
    display: block;
    padding: 0 5px;
    font-weight: 700;
    color: #fff;
    text-align: center;
    text-shadow: none;
    background: green;
    font-size: 12px;
}

[data-element-id] .show\@sp.indention:after {
    content: "モバイル用はここで改行";
}

@media (max-width: 1024px) {
    .show\@tb {
        display: block;
    }

    .hide\@tb {
        display: none;
    }
}

@media (max-width: 599px) {
    .show\@sp {
        display: block;
    }

    .hide\@sp {
        display: none;
    }
}

/* レイアウト */
.content-wrap {
    width: 1000px;
    max-width: 96%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin: auto;
    padding: 50px 0;
}

.content-wrap .content {
    width: 10%;
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
}

.content-wrap .sidebar {
    width: 200px;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    margin-left: 20px;
}

[class*="alternate-wrap"] .alternate-box {
    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;
}

.alternate-wrap .alternate-box:nth-of-type(odd) {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
}

.alternate-wrap .alternate-box:nth-of-type(even) {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
}

.alternate-wrap-rowr .alternate-box:nth-of-type(odd) {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
}

.alternate-wrap-rowr .alternate-box:nth-of-type(even) {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
}

.parallel {
    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;
}

.parallel:nth-of-type(even) {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
}

.parallel.type02,
.parallel.type02:nth-of-type(even) {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
}

.parallel-rowr {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
}

.parallel-rowr:nth-of-type(even) {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
}

.overlap {
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
}

.overlap-cont {
    margin-top: 15%;
    margin-left: -10%;
    z-index: 1;
}

.overlap:nth-of-type(even) .overlap-cont {
    margin-left: 0;
    margin-right: -10%;
}

.flow-box-inner .flow-box-cont {
    position: relative;
}

.flow-box-inner .flow-box-cont::before {
    content: '';
    display: inline-block;
    background-size: 100% auto;
    background-repeat: no-repeat;
    background-position: center center;
    position: absolute;
    top: 5px;
    z-index: 1;
}

.flow-box-inner:nth-of-type(odd) .flow-box-cont::before {
    width: 32px;
    height: 42px;
    background-image: url('/import/tenant_1/153.121.50.242/html/images/common/parts_003.png');
    right: 5px;
}

.flow-box-inner:nth-of-type(even) .flow-box-cont::before {
    width: 44px;
    height: 56px;
    background-image: url('/import/tenant_1/153.121.50.242/html/images/common/parts_002.png');
    left: 5px;
}

.flow-box-inner+.flow-box-inner {
    position: relative;
}

.flow-box-inner+.flow-box-inner::before {
    content: "\f063";
    font-size: 50px;
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    text-align: center;
    display: inline-block;
    margin: auto;
    position: absolute;
    top: -10px;
    left: 0;
    right: 0;
    -webkit-transform: translate(0, -100%);
    transform: translate(0, -100%);
    z-index: 1;
}

@media (max-width: 599px) {
    .overlap {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }

    .overlap-cont,
    .overlap:nth-of-type(even) .overlap-cont {
        margin: 0;
    }
}

/* sidebar */
.sidebar-box-inner {
    padding: 5px;
}

.sidebar table tr th,
.sidebar table tr td {
    font-size: 14px;
    padding: 2px;
}

.sidebar-list li a {
    display: block;
    padding: 5px 30px 5px 10px;
    position: relative;
}

.sidebar-list li+li a {
    border-top: 1px dotted #7f7f7f;
}

.sidebar-list li a::after {
    content: "\f0a9";
    font-family: "Font Awesome 5 Free";
    font-size: 20px;
    font-weight: 900;
    display: inline-block;
    position: absolute;
    top: 50%;
    right: 5px;
    -webkit-transform: translate(0, -50%);
    transform: translate(0, -50%);
    margin: auto;
}

.fb {
    width: 100%;
}

.content-wrap+.map:after {
    padding-top: 35%;
}

@media (max-width: 1024px) {

    .content-wrap .content,
    .content-wrap .sidebar {
        width: 100%;
    }

    .content-wrap .sidebar {
        margin: 30px 0 0;
    }

    .sidebar-box-wrap {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }

    .sidebar-box {
        width: 48%;
        margin: 0 1% 30px 1%;
    }
}

@media (max-width: 599px) {
    .sidebar-box {
        width: 98%;
        margin: 0 1% 15px 1%;
    }
}

/* icon */
[class*="icon-"] {
    -ms-flex-negative: 0;
    flex-shrink: 0;
}

[class*="icon-"]::before {
    font-family: "Font Awesome 5 Free";
    font-weight: normal;
    display: inline-block;
    margin-right: 5px;
}

.icon-mail::before {
    content: "\f0e0";
}

.icon-parts_01 {
    width: 22px;
}

.icon-line::before {
    content: "\f3c0";
    font-family: "Font Awesome 5 Brands";
    font-size: 24px;
    line-height: 1;
    display: inline-block;
}

/* header */
.pagettl {
    font-size: 12px;
    margin-bottom: -10px;
}

[data-element-id] .pagettl{
  margin: 10px auto;
}

@media(max-width:1024px) {
    .pagettl {
        padding-right: 50px;
        margin-bottom: 0;
    }
}

.header-inner {
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding-bottom: 0px;
}

.header-logo a {
    font-size: 34px;
    letter-spacing: -1px;
    font-weight: 500;
    padding-top: 20px;
    position: relative;
}

.header-box {
    margin-right: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 30px;
}

.header-add-box {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 10px;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.header-add-box .item {
    border: dashed 1px #534741;
    width: 80px;
    height: 80px;
    border-radius: 50%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    text-align: center;
    font-size: 12px;
    font-weight: 500;
    font-family: 'M PLUS Rounded 1c', sans-serif;
    -webkit-transform: rotateZ(0.03deg);
    transform: rotateZ(0.03deg);
    margin-top: 5px;
}


@media (max-width: 1024px) {
    header {
        padding: 0 !important;
        position: relative !important;
    }
    
    main{
      padding-top: 0 !important;
    }

    .header-inner {
        width: calc(100% - 60px);
    }

    .header-box-inner {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: end;
        -ms-flex-align: end;
        align-items: flex-end;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        position: fixed;
        top: 10px;
        left: 20px;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        gap: 10px;
        z-index: 10;
        opacity: 0;
        -webkit-transition: .5s;
        transition: .5s;
        visibility: hidden;
    }

    .header-inner.fixed .header-box-inner {
        opacity: 1;
        visibility: visible;
    }

    .header-box-inner .wood-box,
    .header-box-inner .green-box {
        background: none;
        padding: 0;
        margin: 0;
    }

    .header-box-inner a {
        width: 50px !important;
        height: 50px !important;
        border-radius: 50% !important;
        overflow: hidden !important;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
    }

    .header-box-inner .wood-box a {
        background-image: url('/import/tenant_1/153.121.50.242/html/images/common/sp_btn_bgi.jpg');
    }

    .header-box-inner .wood-box .tel-item a::before {
        font-size: 28px;
        margin-right: 0;
    }

    .header-box-inner .text {
        display: none;
    }
}

@media (max-width: 599px) {

    .header-inner {
        -webkit-box-orient: vertical;
        -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
        flex-direction: column-reverse;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        width: 100%;
    }

    .header-logo {
        margin-left: auto;
        margin-right: auto;
        -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
        order: 2;
    }

    .header-logo a {
        font-size: 26px;
    }

    .header-box {
        width: 100%;
        -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
        order: 1;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        padding-bottom: 10px;
    }

    .header-add-box .item {
        letter-spacing: 0;
        width: 70px;
        height: 70px;
        font-size: 10px;
    }

    .header-box-inner [class*="-box"] {
        width: 48%;
        margin: 0 1%;
    }
}

/* nav */
.sp-only,
.nav-logo {
    display: none;
}

[data-element-id] .sp-only,[data-element-id] .nav-logo {
    display: block;
}

nav {
    width: 100%;
    padding: 5px 0 10px;
    background-color: #fff;
    z-index: 25;
    -webkit-transition: 0.3s linear;
    transition: 0.3s linear;
    -webkit-transition-property: -webkit-transform;
    transition-property: -webkit-transform;
    transition-property: transform;
    transition-property: transform, -webkit-transform;
}

header.fixed {
    background-color: rgb(255 255 255);
    -webkit-box-shadow: 0px 4px 2px -2px rgb(0 0 0 / 20%);
    box-shadow: 0px 4px 2px -2px rgb(0 0 0 / 20%);
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 100;
}

.nav-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

.nav-list li a, .nav-list li .dropdown-btn {
    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;
    -ms-flex-align: center;
    align-items: center;
    -webkit-transition: 0.3s linear;
    line-height: 1.5;
}

.nav-list li a::after,
.nav-list li .dropdown-btn::after {
    content: '';
    width: 100%;
    height: 5px;
    opacity: 0;
    -webkit-transform: translate(0, 10px);
    transform: translate(0, 10px);
    -webkit-transition: 0.3s linear;
    transition: 0.3s linear;
}

.nav-list li a:hover,
.nav-list li .dropdown-btn:hover {
    opacity: 1;
}

.nav-list li a:hover::after,
.nav-list li .dropdown-btn:hover::after {
    opacity: 1;
    -webkit-transform: translate(0, 0);
    transform: translate(0, 0);
}

.nav-list li a .en,
.nav-list li .dropdown-btn .en {
    font-size: 12px;
}

.dropmenu {
    *zoom: 1;
}

.dropmenu .dropdown {
    position: relative;
    overflow: hidden;
}

.dropmenu .dropdown::after {
    content: '';
    position: absolute;
    left: 50%;
    right: 50%;
    -webkit-transform: translate(-50%, 0);
    transform: translate(-50%, 0);
    width: 280px;
    height: 40px;
    border: 0;
}

.dropdown-btn {
    display: block;
    -webkit-transition: 0.3s linear;
    transition: 0.3s linear;
}

.dropmenu .dropdown ul {
    width: 110%;
    min-width: 200px;
    padding: 10px;
    margin: 10px auto 0 auto;
    background-color: #fff;
    opacity: 0;
    visibility: hidden;
    -webkit-border-bottom-right-radius: 5px;
    -webkit-border-bottom-left-radius: 5px;
    -moz-border-radius-bottomright: 5px;
    -moz-border-radius-bottomleft: 5px;
    border-bottom-right-radius: 5px;
    border-bottom-left-radius: 5px;
    -webkit-transition: 0.3s linear;
    transition: 0.3s linear;
    -webkit-transition-property: all;
    transition-property: all;
    position: absolute;
    top: 100%;
    right: -175px;
    left: -175px;
    z-index: 3;
    box-shadow: 2px 2px 2px rgb(161 161 161 / 20%);
}

[data-element-id] .dropmenu .dropdown ul {
    width: auto;
    opacity: 1;
    position: relative;
    top: auto;
    right: auto;
    left: auto;
    visibility: visible;
    box-shadow: 2px 2px 2px rgb(161 161 161 / 20%);
}

#dropmenu .dropdown ul li {
    width: 100%;
    height: auto;
    margin-left: 0;
    overflow: hidden;
}

#dropmenu .dropdown ul li+li {
    border-top: 1px solid #fff;
}

#dropmenu .dropdown ul li a {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    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;
    -ms-flex-align: center;
    align-items: center;
    margin: auto;
    padding: 5px;
    font-size: 14px;
}

.dropdown-btn:hover {
    cursor: pointer;
}

#dropmenu .dropdown:hover {
    overflow: visible;
}

#dropmenu .dropdown:hover ul {
    opacity: 1;
    visibility: visible;
}

@media (max-width: 1024px) {
    nav {
        width: 65%;
        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-pack: start;
        -ms-flex-pack: start;
        justify-content: flex-start;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        padding: 10px 10px 30px;
        -webkit-transform: translate(100%, 0);
        transform: translate(100%, 0);
        position: fixed;
        top: 0;
        right: 0;
    }

    header.fixed {
        background-color: #fff;
        -webkit-box-shadow: none;
        box-shadow: none;
        left: auto;
        right: 0;
    }

    nav .inner {
        height: 10%;
        -webkit-box-flex: 1;
        -ms-flex-positive: 1;
        flex-grow: 1;
    }

    .active nav {
        -webkit-box-shadow: -2px 0px 15px -5px var(--color01);
        box-shadow: -2px 0px 15px -5px var(--color01);
        -webkit-transform: translate(0, 0);
        transform: translate(0, 0);
    }

    .sp-only,
    .nav-logo {
        display: block;
    }

    .nav-list {
        height: 100%;
        display: block;
        overflow-y: auto;
        -webkit-overflow-scrolling: touch;
        font-weight: 500;
    }

    .nav-list>li+li {
        padding-left: 0;
    }

    .nav-list li {
        margin: 0;
    }

    .nav-list li a::after,
    .nav-list li .dropdown-btn::after {
        display: none;
    }

    .nav-list>li+li::before {
        display: none;
    }

    .nav-list li a,
    .nav-list li .dropdown-btn {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -ms-flex-direction: row;
        flex-direction: row;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-box-pack: start;
        -ms-flex-pack: start;
        justify-content: flex-start;
        padding: 5px;
    }

    .nav-list li a .ja,
    .nav-list li .dropdown-btn .ja,
    .nav-list li a .en,
    .nav-list li .dropdown-btn .en {
        -ms-flex-negative: 0;
        flex-shrink: 0;
    }

    .nav-list li a .ja,
    .nav-list li .dropdown-btn .ja {
        -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
        order: 1;
    }

    .nav-list li a .en,
    .nav-list li .dropdown-btn .en {
        -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
        order: 2;
        margin-left: 10px;
    }

    #dropmenu .dropdown {
        overflow: visible;
    }

    .dropmenu .dropdown ul::before,
    .dropmenu .dropdown::after {
        display: none;
    }

    #dropmenu .dropdown ul {
        width: 100%;
        margin: 10px 0;
        padding: 0 0 0 20px;
        background-color: inherit;
        -webkit-box-shadow: none;
        box-shadow: none;
        position: static;
        visibility: visible;
        opacity: 1;
    }

    #dropmenu .dropdown ul li {
        margin: 10px 0;
    }

    #dropmenu .dropdown ul li a {
        width: 100%;
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -ms-flex-direction: row;
        flex-direction: row;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-box-pack: start;
        -ms-flex-pack: start;
        justify-content: flex-start;
        font-size: 15px;
        color: inherit;
        padding: 0 0 0 20px;
        position: relative;
    }

    #dropmenu .dropdown ul li a::before {
        content: '∟';
        display: inline-block;
        position: absolute;
        top: -5px;
        left: 0;
    }
}

@media (max-width: 599px) {
    nav {
        width: 90%;
    }
}

/* hamburger overlay */
.hamburger {
    display: none;
}

@media (max-width: 1024px) {
    .hamburger {
        position: fixed;
        top: 10px;
        right: 10px;
        z-index: 26;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        width: 40px;
        height: 40px;
        padding: 0;
        cursor: pointer;
        -webkit-transition: 0.3s linear;
        transition: 0.3s linear;
        -webkit-box-align: center;
        -ms-flex-align: center;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
    }

    .hamburger a,
    .hamburger a:hover,
    .hamburger a:focus {
        opacity: 1;
    }

    .menu-trigger,
    .menu-trigger span {
        display: inline-block;
        -webkit-transition: all 0.4s;
        transition: all 0.4s;
    }

    .menu-trigger {
        position: relative;
        width: 100%;
        height: 100%;
    }

    .menu-trigger span {
        position: absolute;
        left: 50%;
        width: 30px;
        height: 2px;
        border-radius: 3px;
        -webkit-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%);
    }

    .menu-trigger span:nth-of-type(1) {
        top: 24%;
    }

    .menu-trigger span:nth-of-type(2) {
        top: 50%;
    }

    .menu-trigger span:nth-of-type(3) {
        top: 75%;
    }

    .active .hamburger {
        padding: 3px;
    }

    .active .menu-trigger span {
        -webkit-box-shadow: none;
        box-shadow: none;
    }

    .active .menu-trigger span:nth-of-type(1) {
        -webkit-transform: translate(-50%, -50%) rotate(-45deg);
        transform: translate(-50%, -50%) rotate(-45deg);
        top: 50%;
    }

    .active .menu-trigger span:nth-of-type(2) {
        -webkit-transform: translate(-50%, -50%) rotate(45deg);
        transform: translate(-50%, -50%) rotate(45deg);
    }

    .active .menu-trigger span:nth-of-type(3) {
        opacity: 0;
    }

    .overlay {
        position: fixed;
        top: 0;
        left: 0;
        z-index: 3;
        display: none;
        width: 100%;
        height: 100%;
        background-color: rgba(77, 66, 62, 0.3);
    }

    .active .overlay {
        display: block;
    }
}

@media (max-width: 599px) {}

/* footer */
footer .map {
    height: 50vh;
}

footer .green-box {
    width: 100%;
    margin-top: 10px;
}

.footer-nav li {
    padding-left: 20px;
    position: relative;
}

.footer-nav li::before {
    content: "\f105";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    display: inline-block;
    position: absolute;
    top: 0;
    left: 0;
}

.copy {
    font-size: 12px;
    font-weight: 500;
    color: #fff;
    text-align: center;
    padding: 10px;
    background-image: url('/import/tenant_1/153.121.50.242/html/images/common/parts_025.png');
    background-size: 100% 100%;
    background-repeat: no-repeat;
    background-position: center center;
    font-family: var(--ff02);
    -webkit-transform: rotateZ(0.03deg);
    transform: rotateZ(0.03deg);
}

@media(max-width:1024px) {
    footer .map {
        height: 30vh;
    }

    footer .footer-table.green-box {
        width: 48%;
        margin-top: 0;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
    }
}

@media(max-width:599px) {
    footer .footer-table.green-box {
        width: 100%;
        margin-top: 10px;
    }

    .footer-nav li {
       font-size: 13px;
    padding-left: 15px;
    letter-spacing: 0px;
    }
}

/* A-BiSUスライダー */
.main-visual {
    position: relative;
}

.uk-slidenav-position {
    height: 100%;
}

.main-visual .uk-slideshow img {
    width: 100%;
    height: 100% !important;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center center;
    object-position: center center;
    font-family: 'object-fit: cover; object-position: center center;';
}

.main-visual .uk-slideshow {
    height: 100% !important;
    overflow: hidden;
}

.main-visual .uk-slideshow li {
    position: absolute;
    top: 0;
    width: 100%;
    height: 100% !important;
}

.main-visual .uk-slideshow li>div {
    height: 100% !important;
}

.uk-dotnav>*>* {
    width: 10px;
    height: 10px;
}

.uk-dotnav-contrast>*>* {
    background: #ccc;
}

.uk-dotnav-contrast>.uk-active>* {
    background: #565656;
}

.uk-dotnav>.uk-active>* {
    -webkit-transform: scale(1);
    transform: scale(1);
}

.uk-dotnav li a:hover {
    opacity: 1;
}

.uk-position-bottom {
    bottom: -30px;
}

@media (max-width: 1024px) {
    .main-visual .uk-slideshow::after {
        padding-top: 40%;
    }
}

@media (max-width: 599px) {
    .main-visual .uk-slideshow::after {
        padding-top: 40%;
    }
}

/* .main-visual */
.main-visual-slide {
    height: 100%;
    position: absolute;
    top: 50%;
    left: 0;
    right: 0;
    -webkit-transform: translate(0, -50%);
    transform: translate(0, -50%);
    margin: auto;
}

.index-main-visual .main-visual-cont {
    width: 1000px;
    max-width: 100%;
    max-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: end;
    -ms-flex-align: end;
    align-items: flex-end;
    margin: auto;
    padding: 50px 20px;
    z-index: 1;
    position: relative;
}

.index-main-visual .main-visual-cont-inner {
    width: 40%;
}

[data-element-id] .index-main-visual .main-visual-cont-inner {
    width: fit-content;
}

.main-visual-title {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    padding: 30px;
    border-radius: 50%;
    background-color: rgba(255, 255, 255, 0.8);
}

.main-visual-title::after {
    content: '';
    width: 32px;
    height: 42px;
    display: inline-block;
    background-size: 100% auto;
    background-repeat: no-repeat;
    background-position: center center;
    position: absolute;
    top: 35px;
    right: 35px;
}

.main-visual-title-inner {
    display: inline-block;
    font-size: 26px;
    color: var(--color02);
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
}

.main-visual-title-inner:nth-of-type(2) {
    margin-top: 1em;
}

.main-visual-title-inner:nth-of-type(3) {
    margin-top: 2em;
}

.main-visual-title-inner:nth-of-type(4) {
    margin-top: 3em;
}

.under-main-visual {
    margin-top: 20px;
    padding-bottom: 30px;
    position: relative;
}

.under-main-visual::after {
    content: '';
    display: block;
    width: 40%;
    height: 60%;
    background-image: url('/import/tenant_1/153.121.50.242/html/images/common/parts_026.png');
    background-size: 100% 100%;
    background-repeat: no-repeat;
    background-position: center center;
    position: absolute;
    bottom: 0;
    right: 0;
    z-index: -1;
}

.under-visual {
    width: calc(100% - 100px);
    position: relative;
}

.under-visual::before {
    content: '';
    width: 100%;
    height: 100%;
    display: block;
    background-color: rgba(0, 0, 0, 0.2);
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
}

.under-visual::after {
    content: '';
    width: 50px;
    height: 50px;
    display: inline-block;
    background-image: url('/import/tenant_1/153.121.50.242/html/images/common/parts_027.png');
    background-size: 100% auto;
    background-repeat: no-repeat;
    background-position: center center;
    position: absolute;
    top: 0;
    right: 0;
    -webkit-transform: translate(50%, -50%);
    transform: translate(50%, -50%);
    z-index: 1;
}

.under-main-visual .main-visual-cont {
    position: absolute;
    top: 50%;
    left: 0;
    right: 0;
    -webkit-transform: translate(0, -50%);
    transform: translate(0, -50%);
    margin: auto;
    padding: 30px 30px 60px;
    z-index: 3;
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

[data-element-id] .under-main-visual .main-visual-cont{
    padding: 10px;
    z-index: 2;
    width: fit-content;
    height: fit-content;
}

.under-visual-title {
    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;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    font-weight: bold;
    color: #fff;
}

.under-visual-title .en {
    font-size: 28px;
    line-height: 1.2;
    margin-top: 5px;
}

.under-visual-title .en::after {
    content: '';
    display: block;
    width: 110%;
    height: 1px;
    background-color: #fff;
    margin-left: -5%;
}

.under-main-visual .main-visual-cont-inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
}

.under-visual-title {
    text-align: center;
    font-weight: bold;
    color: #fff;
    overflow: hidden;
    font-family: var(--ff02);
    -webkit-transform: rotateZ(0.03deg);
    transform: rotateZ(0.03deg);
}

[data-element-id] .under-visual-title{
  visibility: visible;
}

.under-visual-title .effect {
    width: 100%;
    display: block;
    margin-bottom: 5px;
    -webkit-transform: translateX(-100.5%);
    transform: translateX(-100.5%);
    -webkit-transition-delay: .5s;
    transition-delay: .5s;
    -webkit-transition-duration: .8s;
    transition-duration: .8s;
    -webkit-transition-timing-function: cubic-bezier(0.075, 0.82, 0.165, 1);
    transition-timing-function: cubic-bezier(0.075, 0.82, 0.165, 1);
    -webkit-transition-property: -webkit-transform;
    transition-property: -webkit-transform;
    transition-property: transform;
    transition-property: transform, -webkit-transform;
    position: relative;
}

[data-element-id] .under-visual-title .effect,[data-element-id] .under-visual-title .effect01{
  transform: none;
}

.under-visual-title .effect::before {
    content: '';
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    background-color: #fff;
    -webkit-transform-origin: bottom;
    transform-origin: bottom;
    -webkit-transition-delay: 1.2s;
    transition-delay: 1.2s;
    -webkit-transition-duration: 1s;
    transition-duration: 1s;
    -webkit-transition-timing-function: cubic-bezier(0.075, 0.82, 0.165, 1);
    transition-timing-function: cubic-bezier(0.075, 0.82, 0.165, 1);
}

.under-visual-title .effect01 {
    display: block;
    -webkit-transform: translateX(-100.5%);
    transform: translateX(-100.5%);
    -webkit-transition-delay: .8s;
    transition-delay: .8s;
    -webkit-transition-duration: .8s;
    transition-duration: .8s;
    -webkit-transition-timing-function: cubic-bezier(0.075, 0.82, 0.165, 1);
    transition-timing-function: cubic-bezier(0.075, 0.82, 0.165, 1);
    -webkit-transition-property: -webkit-transform;
    transition-property: -webkit-transform;
    transition-property: transform;
    transition-property: transform, -webkit-transform;
    position: relative;
}

.under-visual-title .effect01::before {
    content: '';
    display: block;
    position: absolute;
    top: -5px;
    bottom: 0;
    right: 0;
    left: 0;
    background-color: #fff;
    -webkit-transform-origin: bottom;
    transform-origin: bottom;
    -webkit-transition-delay: 1.5s;
    transition-delay: 1.5s;
    -webkit-transition-duration: 1.5s;
    transition-duration: 1.5s;
    -webkit-transition-timing-function: cubic-bezier(0.075, 0.82, 0.165, 1);
    transition-timing-function: cubic-bezier(0.075, 0.82, 0.165, 1);
}

.under-visual-title .effect01::after {
    content: "";
    display: block;
    width: 100px;
    height: 1px;
    margin: 5px auto 0;
    background: #fff;
    position: relative;
}

[data-element-id] .under-visual-title .effect::before , [data-element-id] .under-visual-title .effect01::before{
  content: none;
}

.under-visual-title.mv .effect {
    -webkit-transform: translateX(0);
    transform: translateX(0);
}

.under-visual-title.mv .effect::before {
    -webkit-transform: scaleY(0);
    transform: scaleY(0);
}

.under-visual-title.mv .effect01 {
    -webkit-transform: translateX(0);
    transform: translateX(0);
}

.under-visual-title.mv .en.effect01::before {
    -webkit-transform: scaleY(0);
    transform: scaleY(0);
}

@media (max-width: 1024px) {
    .index-main-visual .main-visual-cont-inner {
        width: 50%;
    }

    .main-visual-title {
        padding: 20px;
    }

    .main-visual-title::after {
        top: 25px;
        right: 25px;
    }

    .main-visual-title-inner {
        font-size: 22px;
    }

    .under-main-visual {
        padding-bottom: 15px;
    }

    .under-visual {
        width: calc(100% - 50px);
        height: calc(100% - 15px);
        position: absolute;
        top: 0;
        left: 0;
        margin: auto;
    }

    .under-visual::after {
        width: 40px;
        height: 40px;
    }

    .under-visual-img {
        height: 100%;
    }

    .under-main-visual .main-visual-cont {
        position: relative;
        -webkit-transform: translate(0, 0);
        transform: translate(0, 0);
        z-index: 1;
        padding: 50px 60px 60px 30px;
    }

    .under-visual-title .en {
        font-size: 26px;
    }
}

@media (max-width: 599px) {
    .index-main-visual .main-visual-cont-inner {
        width: 100%;
    }

    .under-visual {
        width: calc(100% - 30px);
        height: calc(100% - 15px);
    }

    .under-visual::after {
        width: 35px;
        height: 35px;
    }

    .under-main-visual {
        margin-top: 10px;
    }
    
    .main-visual-title {
    width: 85%;
    left: 50%;
    transform: translateX(-50%);
}

    .under-visual-title .en {
        font-size: 22px;
        letter-spacing: 0;
    }

    .under-main-visual .main-visual-cont {
        padding: 50px 60px 60px 30px;
    }
}

[data-element-id] .show\@sp .main-visual-title-inner{
  font-size:22px;
}

[data-element-id] .show\@sp .under-visual-title .en{
  font-size:22px;
}

/* title */
[class*="title_"] {
    z-index: 1;
    position: relative;
}

[class*="title_"].with-icon {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

[class*="title_"].with-icon [class*="icon-"] {
    margin-right: 5px;
}

[class*="title_"].with-icon .title-text+[class*="icon-"] {
    margin-left: 5px;
    margin-right: 0;
}

.title {
    font-size: 24px;
    font-weight: bold;
    text-align: center;
    z-index: 1;
    position: relative;
}

.title_01 {
    font-size: 28px;
    font-weight: bold;
    text-align: center;
}

.title_02 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-box-align: baseline;
    -ms-flex-align: baseline;
    align-items: baseline;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    font-size: 24px;
    font-weight: bold;
    padding: 0 30px;
    font-family: var(--ff02);
    -webkit-transform: rotateZ(0.03deg);
    transform: rotateZ(0.03deg);
    line-height: 1.5;
}

.title_02::before,
.title_02::after {
    content: '';
    width: 22px;
    height: 22px;
    display: inline-block;
    background-image: url('/import/tenant_1/153.121.50.242/html/images/common/parts_001.png');
    background-size: 100% 100%;
    background-repeat: no-repeat;
    background-position: center center;
    -ms-flex-negative: 0;
    flex-shrink: 0;
}

.title_02::before {
    margin-right: 10px;
    left: 0;
}

.title_02::after {
    margin-left: 10px;
    right: 0;
}

.title_03 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    color: #fff;
    font-weight: bold;
    line-height: 1.2;
    letter-spacing: 1px;
    padding: 10px;
}

.title_04 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.title_04 .title-inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    min-width: 250px;
    min-height: 50px;
    font-size: 30px;
    line-height: 1.2;
    text-align: center;
    color: #fff;
    padding: 10px 30px;
    background-image: url('/import/tenant_1/153.121.50.242/html/images/common/parts_010.png');
    background-size: 100% 100%;
    background-repeat: no-repeat;
    background-position: center center;
    font-family: var(--ff02);
    font-weight: 500;
    letter-spacing: 5px;
}

.title_05 {
    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;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    font-weight: bold;
}

.title_06 {
    text-align: center;
    font-size: 24px;
    font-weight: bold;
    font-family: var(--ff02);
    -webkit-transform: rotateZ(0.03deg);
    transform: rotateZ(0.03deg);
}

.title_06::after {
    content: '';
    width: 70px;
    height: 15px;
    display: block;
    background-image: url('/import/tenant_1/153.121.50.242/html/images/common/parts_023.png');
    background-size: 100% auto;
    background-repeat: no-repeat;
    background-position: center center;
    margin: auto;
}

.title_07 {
    text-align: center;
    font-size: 28px;
    font-weight: bold;
    font-family: var(--ff02);
    -webkit-transform: rotateZ(0.03deg);
    transform: rotateZ(0.03deg);
}

.title_07 .title-inner {
    position: relative;
}

.title_07 .title-inner:after {
    content: '';
    width: 30px;
    height: 30px;
    display: inline-block;
    background-image: url('/import/tenant_1/153.121.50.242/html/images/common/parts_028.png');
    background-size: 100% auto;
    background-repeat: no-repeat;
    background-position: center center;
    position: absolute;
    bottom: 0;
    right: 0;
    -webkit-transform: translate(50%, 50%);
    transform: translate(50%, 50%);
    z-index: -1;
}

.title_08 {
    text-align: center;
    font-size: 24px;
    font-weight: bold;
    position: relative;
}

.title_08::after {
    content: '';
}

.title_09 {
    font-size: 24px;
    font-weight: bold;
    margin-bottom: 50px;
    padding: 5px 20px;
    background-color: #fef4ef;
    border-left: 5px solid var(--color02);
}

.title_10 {
    font-size: 18px;
    font-weight: bold;
    padding-left: 30px;
    position: relative;
}

.title_10::before {
    content: '';
    display: inline-block;
    width: 22px;
    height: 22px;
    background-image: url('/import/tenant_1/153.121.50.242/html/images/common/parts_001.png');
    background-size: 100% auto;
    background-repeat: no-repeat;
    background-position: center center;
    position: absolute;
    top: 2px;
    left: 0;
}

.title_11 {
    padding-left: 20px;
    position: relative;
}

.title_11::before {
    content: '■';
    display: inline-block;
    color: #bfe1a6;
    position: absolute;
    top: 0;
    left: 0;
}

.title_12 {
    position: relative;
    padding: 5px 20px;
    font-size: 24px;
    font-weight: 500;
    font-family: var(--ff02);
    -webkit-transform: rotateZ(0.03deg);
    transform: rotateZ(0.03deg);
    background: rgba(241, 146, 102, 0.1);
    border-left: 5px solid var(--color02);
}

@media (max-width: 1024px) {
    .title_02,.title_06 {
        font-size: 22px;
    }

    .title_07 {
        font-size: 26px;
    }

    .title_07 .title-inner:after {
        width: 25px;
        height: 25px;
    }
}

@media (max-width: 599px) {
    .title {
        font-size: 18px;
    }

    .title_02 {
        width: -webkit-fit-content;
        width: -moz-fit-content;
        width: fit-content;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        font-size: 18px;
        letter-spacing: 0;
        margin-left: auto;
        margin-right: auto;
        text-align: center;
    }

    .title_02.min {
        font-size: 18px;
        padding: 0 25px;
    }

    .title_02::before,
    .title_02::after {
        position: absolute;
        top: 50%;
        -webkit-transform: translate(0, -50%);
        transform: translate(0, -50%);
    }

    .title_07 {
        font-size: 22px;
    }

    .title_07 .title-inner:after {
        width: 20px;
        height: 20px;
    }

    .title_09 {
        font-size: 20px;
        margin-bottom: 30px;
    }

    .title_12 {
        font-size: 20px;
    }
}

[data-element-id] .show\@sp .title_02,[data-element-id] .show\@sp .title_06, [data-element-id] .show\@sp .title_07{
  font-size:22px;
}

[data-element-id] .show\@sp .title_02{
  display:inline-block;
  text-align: center;
}

[data-element-id] .show\@sp .title_02.min{
  font-size: 18px;
}

[data-element-id] .show\@sp .title_12{
  font-size: 20px;
}

/* btn */
.text-btn a,
.text-btn button {
    position: relative;
}

.text-btn a::after,
.text-btn button::after {
    content: "\f0a9";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    display: inline-block;
    margin-left: 5px;
}

.deco-btn a,
.deco-btn button {
    color: #a45a33;
    font-weight: bold;
    position: relative;
    z-index: 1;
}

.deco-btn-inner {
    z-index: 1;
    position: relative;
}

.deco-btn a::after,
.deco-btn button::after {
    content: '';
    width: 150%;
    height: 100%;
    border-bottom: 2px solid #a45a33;
    border-right: 2px solid #a45a33;
    -webkit-transform: skew(45deg);
    transform: skew(45deg);
    position: absolute;
    bottom: -15%;
    right: -40%;
}

.deco-btn a::before,
.deco-btn button::before {
    content: '';
    width: 55px;
    height: 55px;
    background-image: url('/import/tenant_1/153.121.50.242/html/images/common/parts_011.png');
    background-size: 100% auto;
    background-repeat: no-repeat;
    background-position: center center;
    position: absolute;
    top: 50%;
    left: 0;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    margin: auto;
}

.btn-box {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

.btn {
    width: 220px;
    max-width: 90%;
    min-height: 45px;
    margin-left: auto;
    margin-right: auto;
}

.btn a,
.btn button {
    width: 100%;
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    color: #fff;
    padding: 10px 15px;
    -webkit-transition: 0.3s linear;
    transition: 0.3s linear;
    width: 280px;
    padding: 10px 30px;
    border-radius: 10px;
    letter-spacing: 2px;
    font-family: var(--ff02);
    -webkit-transform: rotateZ(0.03deg);
    transform: rotateZ(0.03deg);
    font-weight: 500;
}

.btn.type02 {
    margin-left: 0;
    margin-right: 0;
}

.btn.type02 a {
    max-width: 200px;
    width: auto;
    min-width: 180px;
}

.btn a:hover,
.btn button:hover {
    opacity: 1;
    background-color: #fff;
}

.btn-mini {
    width: 100px;
    height: 30px;
    min-height: auto;
}

.btn-mini a,
.btn-mini button {
    border-radius: 5px;
}

.btn_01 {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    min-height: 45px;
}

.btn_01 a,
.btn_01 button {
    border-radius: 10px;
}

.btn_01 a::after,
.btn_01 button::after {
    content: "\f0a9";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    display: inline-block;
    margin-left: 5px;
}

.btn_02 a {
    border-radius: 5px;
}

.back-btn a::after,
.back-btn button::after {
    display: none;
}

.back-btn a::before,
.back-btn button::before {
    content: "\f0a8";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    display: inline-block;
    margin-right: 5px;
}

@media(max-width:1024px) {

    .btn a,
    .btn button {
            min-width: 220px;
    width: fit-content;
        font-size: 14px;
    }

    .btn.type02 a {
        max-width: 200px;
        width: auto;
        min-width: 150px;
        padding: 10px;
    }
}

/* list */
.list-inner {
    height: 100%;
}

.check-list li {
    padding-left: 40px;
    position: relative;
}

.check-list li::before {
    content: "\f00c";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    color: #fff;
    font-size: 30px;
    line-height: 1.2;
    width: 35px;
    height: 35px;
    display: inline-block;
    border-radius: 50%;
    position: absolute;
    top: 0;
    left: 0;
}

.check-list_02 li {
    padding-left: 30px;
    padding-right: 20px;
}

.check-list_02 li::before {
    font-size: 12px;
    width: 25px;
    height: 25px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    line-height: 25px;
    letter-spacing: 0;
}

.balloon-list>dd {
    width: 10%;
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    margin-left: 30px;
    padding: 20px 20px;
    background-color: #fff;
}

.balloon-content_02 {
    margin-bottom: 10px;
    padding: 5px;
}

.balloon-list-balloon {
    position: relative;
}

.balloon-list-balloon::before,
.balloon-list-balloon::after {
    content: '';
    display: inline-block;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 12px 12px 12px 0;
    border-color: transparent #a45a33 transparent transparent;
    position: absolute;
    top: 50%;
    left: -12px;
    -webkit-transform: translate(0, -50%);
    transform: translate(0, -50%);
    margin: auto;
}

.balloon-list-balloon.none::before,
.balloon-list-balloon.none::after {
    content: none;
}

.balloon-list-balloon::after {
    border-color: transparent #fff transparent transparent;
    left: -11px;
    z-index: 1;
}

.balloon-box .balloon-list:nth-of-type(even) {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
}

.balloon-box .balloon-list:nth-of-type(even)>dd {
    margin-left: 0;
    margin-right: 30px;
}

.balloon-box .balloon-list:nth-of-type(even) .balloon-list-balloon::before,
.balloon-box .balloon-list:nth-of-type(even) .balloon-list-balloon::after {
    left: auto;
    right: -12px;
    -webkit-transform: scale(-1, 1);
    transform: scale(-1, 1);
}

.balloon-box .balloon-list:nth-of-type(even) .balloon-list-balloon::after {
    right: -11px;
}

.balloon-box .balloon-list .balloon-content_01 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    align-items: flex-start;
    flex-wrap: wrap;
    gap: 5px;
    line-height: 1.2;
}

.balloon-box .balloon-list .balloon-content_01 span {
    background: var(--color02);
    color: #fff;
    padding: 5px 10px;
    font-size: 14px;
}

.dl-list-inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

.dl-list-inner dt,
.dl-list-inner dd {
    -ms-flex-negative: 0;
    flex-shrink: 0;
    max-width: calc(50% - 5px);
}

.dl-list-inner dd {
    margin-left: 10px;
}

.faq-list {
    padding: 10px 5px;
    border-bottom: 1px dotted #afd990;
}

.faq-list dt,
.faq-list dd {
    padding: 5px 5px 5px 40px;
    position: relative;
}

.faq-list dt {
    font-family: var(--ff02);
    -webkit-transform: rotateZ(0.03deg);
    transform: rotateZ(0.03deg);
}

.faq-list dt::before,
.faq-list dd::before {
    position: absolute;
    top: 0;
    left: 0;
}

.faq-list dt::before {
    content: 'Q';
    width: 30px;
    height: 30px;
    font-size: 24px;
    font-weight: bold;
    text-align: center;
    background-image: url('/import/tenant_1/153.121.50.242/html/images/common/parts_028.png');
    background-size: 100% auto;
    background-repeat: no-repeat;
    background-position: center center;
    font-family: var(--ff02);
    -webkit-transform: rotateZ(0.03deg);
    transform: rotateZ(0.03deg);
    line-height: 1.2;
}

.faq-list dd::before {
    content: 'A';
    width: 30px;
    height: 30px;
    font-size: 24px;
    font-weight: bold;
    text-align: center;
    font-family: var(--ff02);
    -webkit-transform: rotateZ(0.03deg);
    transform: rotateZ(0.03deg);
    line-height: 1.6;
}

@media (max-width: 599px) {
    .dl-list-inner {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }

    .dl-list-inner dt,
    .dl-list-inner dd {
        width: 100%;
        max-width: 100%;
    }

    .dl-list-inner dd {
        margin-top: 5px;
        margin-left: 0;
    }

    .balloon-box .balloon-list>dd {
        width: 100%;
        margin-left: 0;
    }

    .balloon-box .balloon-list:nth-of-type(even)>dd {
        width: 100%;
        margin-right: 0;
    }

    .balloon-box .balloon-list-balloon::before,
    .balloon-box .balloon-list-balloon::after {
        top: 5px;
        left: 0;
        right: 0;
        -webkit-transform: translate(0, -100%) rotate(90deg);
        transform: translate(0, -100%) rotate(90deg);
    }

    .balloon-box .balloon-list-balloon::after {
        top: 6px;
    }

    .balloon-box .balloon-list:nth-of-type(even) .balloon-list-balloon::before,
    .balloon-box .balloon-list:nth-of-type(even) .balloon-list-balloon::after {
        top: 5px;
        left: 0;
        right: 0;
        -webkit-transform: translate(0, -100%) rotate(90deg);
        transform: translate(0, -100%) rotate(90deg);
    }

    .balloon-box .balloon-list:nth-of-type(even) .balloon-list-balloon::after {
        top: 6px;
    }
}

/* table */
table {
    width: 100%;
    border-collapse: collapse;
}

.timetable tr th,
.timetable tr td {
    font-size: 14px;
    text-align: center;
    padding: 5px;
}

.timetable tr+tr {
    border-top: 1px dashed #fff;
}

.timetable tr th:first-of-type {
    width: 35%;
}

.timetable_02 tr th,
.timetable_02 tr td {
    text-align: center;
    padding: 10px;
}

.timetable_02 tr th+th {
    border-left: 1px solid #fff;
}

.table_02 tr+tr th,
.table_03 tr+tr th {
    border-top: 1px solid #fff;
}

.table_02 tr th,
.table_02 tr td,
.table_03 tr th,
.table_03 tr td {
    padding: 10px;
}

.table_02 tr th {
    width: 35%;
}

.table_02 tr th span {
    font-family: var(--ff02);
    -webkit-transform: rotateZ(0.03deg);
    transform: rotateZ(0.03deg);
    font-weight: 500;
    display: block;
}

.table_03 tr th {
    width: 45%;
}

@media (max-width: 1024px) {

    table tr th,
    table tr td {
        font-size: 14px;
        padding: 2px;
    }
}

@media(max-width:599px) {

    .timetable tr th,
    .timetable tr td {
        font-size: 12px;
        letter-spacing: 0;
        padding: 5px 2px;
    }
}

/* 各ページ */
.wood-box {
    text-align: center;
    padding: 20px 20px 5px;
    margin-bottom: 5px;
    margin-top: -25px;
}

.wood-box .tel-item {
    line-height: 1;
}

.green-box {
    border-radius: 5px;
    background: var(--color02);
}

.green-box.type02 {
    background: var(--color03);
}

[data-element-id] header .green-box {
    background: none;
}

.green-box a {
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    padding: 5px 10px;
    background: var(--color04);
    border-radius: 5px;
}

.arrow-box-bottom {
    position: relative;
}

.arrow-box-bottom::after {
    content: '';
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 30px 30px 0 30px;
    position: absolute;
    bottom: -30px;
    left: 0;
    right: 0;
    margin: auto;
}

.sign-parent {
    position: relative;
}

.sign {
    font-size: 18px;
    position: absolute;
    bottom: 0;
    right: 0;
}

.sign span {
    display: inline-block;
}

.sign-name {
    margin-left: 10px;
}

.balloon {
    display: inline-block;
    color: #fff;
    padding: 0 10px;
    position: relative;
}

.balloon::before {
    content: '';
    width: 90px;
    height: 90px;
    background-image: url('/import/tenant_1/153.121.50.242/html/images/common/parts_009.png');
    background-size: 100% 100%;
    background-repeat: no-repeat;
    background-position: center center;
    position: absolute;
    top: -10px;
    left: 0;
    right: 0;
    margin: auto;
    z-index: -1;
}

.balloon-inner {
    z-index: 1;
    position: relative;
}

.slash {
    display: inline-block;
    margin-left: auto;
    margin-right: auto;
    padding: 10px 40px;
    position: relative;
}

.slash::before,
.slash::after {
    content: '';
    display: inline-block;
    width: 1px;
    height: 100%;
    position: absolute;
    top: 0;
    -webkit-transform: translate(0, -50%);
    transform: translate(0, -50%);
    margin: auto;
}

.slash::before {
    left: 0;
    -webkit-transform: rotate(-30deg);
    transform: rotate(-30deg);
}

.slash::after {
    right: 0;
    -webkit-transform: rotate(30deg);
    transform: rotate(30deg);
}

[class*="deco-img_"] {
    padding: 5%;
    background-size: 100% 100%;
    background-repeat: no-repeat;
    background-position: center center;
    position: relative;
}

.deco-img-inner {
    width: 90%;
    margin: auto;
}

.deco-img-text {
    position: absolute;
    bottom: 0;
    right: 0;
}

@media (max-width: 599px) {
    .wood-box {
        padding: 25px 5px 5px;
    }

    .green-box a {
        padding: 5px;
    }

    .balloon::before {
        width: 80px;
        height: 80px;
    }
}

/* index */

@media(max-width:1024px) {
    .area_02 .paralle-img.right {
        margin-right: -50px;
    }

    .area_02 .paralle-img.left {
        margin-left: -50px;
    }
}

@media(max-width:599px) {
    .area_02 .paralle-img.right {
        margin-right: auto;
    }

    .area_02 .paralle-img.left {
        margin-left: auto;
    }
}

.area_03 .list-inner {
    border-radius: 20px;
}

.area_04 .info-list {
    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;
}

.area_04 .info-list>* {
    width: calc((100% - 30px) / 2);
}

.area_04 .map iframe {
    border-radius: 30px;
}

@media(max-width:599px) {
    .area_04 .info-list>* {
        width: 100%;
    }

    .area_04 .map iframe {
        border-radius: 10px;
    }
}

.area_08.area_8_faq .faqlist .item {
    margin-bottom: 30px;
    border-radius: 20px;
    overflow: hidden;
}

.area_08.area_8_faq .faqlist .item .q {
    background: #fff;
    padding: 20px 40px 20px 20px;
    position: relative;
    cursor: pointer;
}

.area_08.area_8_faq .faqlist .q::before {
    content: "";
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%) rotate(-135deg);
    transform: translateY(-50%) rotate(-135deg);
    right: 20px;
    width: 8px;
    height: 8px;
    border-right: 2px solid #7c7c7c;
    border-bottom: 2px solid #7c7c7c;
    -webkit-transition: .5s;
    transition: .5s;
}

.area_08.area_8_faq .faqlist .item .q.is-parent::before {
    -webkit-transform: translateY(-50%) rotate(-135deg) scale(-1, -1);
    transform: translateY(-50%) rotate(-135deg) scale(-1, -1);
}

.area_08.area_8_faq .faqlist .item .a {
    background: #ffd5a1;
    padding: 20px;
    display: none;
}

[data-element-id] .area_08.area_8_faq .faqlist .item .a{
  display: block;
}

@media(max-width:599px) {
    .area_08.area_8_faq .faqlist .item {
        margin-bottom: 10px;
        border-radius: 10px;
        overflow: hidden;
    }
}

.index-banner-area .item {
    width: 48%;
    margin: 1%;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    position: relative;
    border-radius: 20px;
    overflow: hidden;
}

.index-banner-area .item.type02 {
    width: 100%;
}

.index-banner-area .item .tit {
    width: 90%;
    color: var(--color02);
    font-size: 24px;
    text-align: center;
    text-shadow: 1px 1px 4px #fff, 1px -1px 4px #fff, -1px 1px 4px #fff, -1px -1px 4px #fff, 1px 1px 4px #fff, 1px -1px 4px #fff, -1px 1px 4px #fff, -1px -1px 4px #fff, 1px 1px 4px #fff, 1px -1px 4px #fff, -1px 1px 4px #fff, -1px -1px 4px #fff;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    z-index: 3;
}

[data-element-id] .index-banner-area .item a {
    min-height: 250px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    border-radius: 20px;
    overflow: hidden;
}

[data-element-id] .index-banner-area .item .tit{
  position: relative;
    top: auto;
    left: auto;
    -webkit-transform: translate(-50%, -50%);
    transform: none;
    width: 100%;
}

[data-element-id] .index-banner-area .item .pic {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.index-banner-area .item .tit:after {
    display: inline-block;
    color: var(--color02);
    content: "→";
    margin-left: 10px;
    vertical-align: baseline;
}

@media(max-width:1024px) {
    .index-banner-area .item .tit {
        font-size: 22px;
    }
}

@media(max-width:599px) {
    .index-banner-area .item {
        width: 100%;
        border-radius: 10px;
    }
}

[data-element-id] .index-banner-area .item  .show\@sp .tit{
  font-size:22px;
}

/* カスタムコンテンツ */
.custom-contents-list_01 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding: 15px 5px;
    border-top: 1px dashed #7f7a77;
}

.custom-contents-list_01:last-of-type {
    border-bottom: 1px dashed #7f7a77;
}

.custom-contents-list_01 dt {
    -ms-flex-negative: 0;
    flex-shrink: 0;
}

.custom-contents-list_01 dd {
    width: 10%;
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    margin-left: 30px;
}

.news .custom-contents-list_01 {
    border-top: none;
    border-bottom: 1px solid #b2b2b2;
}

.news .custom-contents-list_01 dt {
    width: 100%;
}

.news .custom-contents-list_01 dd {
    margin-left: 0;
}

.custom-contents-list_03 li {
    padding: 15px 5px;
}

.custom-contents-list_03 li+li {
    border-top: 1px solid #b2b2b2;
}

.detail-info {
    border-bottom: 1px solid #b2b2b2;
}

@media (max-width: 599px) {
    .custom-contents-list_03 li {
        padding: 10px 5px;
    }
}

/* ##### パンくずリスト breadcrumbs ##### */
.breadcrumbs {
    margin: 30px 0;
}

.breadcrumbs-box {
    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;
}

.breadcrumbs-list li {
    display: inline;
    font-size: 14px;
    letter-spacing: 1px;
}

.breadcrumbs-list li.breadcrumbs-home,
.breadcrumbs-list li.breadcrumbs-prevpage {
    font-weight: bold;
    color: var(--color02);
}

.breadcrumbs-list li+li::before {
    content: "";
    width: 8px;
    height: 8px;
    display: inline-block;
    margin: 0 10px;
    border-top: 1px solid var(--color01);
    border-right: 1px solid var(--color01);
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}

@media (max-width: 1024px) {
    .breadcrumbs {
        margin: 20px 0;
        font-size: 14px;
    }

    .breadcrumbs-box {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-align: start;
        -ms-flex-align: start;
        align-items: flex-start;
    }

    .breadcrumbs li {
        font-size: 12px;
    }

    .breadcrumbs li+li::before {
        width: 8px;
        height: 8px;
        margin: 0 5px 1px;
    }
}

@media (max-width: 599px) {
    .breadcrumbs {
        margin: 15px 0;
        font-size: 12px;
    }

    .breadcrumbs li+li::before {
        width: 6px;
        height: 6px;
    }
}

/* pager */
.pager ul li a,
.pager ul li .now {
    width: 30px;
    height: 30px;
    font-size: 16px;
    line-height: 100%;
    padding: 5px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    border: 1px solid transparent;
    position: relative;
    font-family: var(--ff02);
    font-weight: 600;
}

.pager ul li .now,
.pager ul li a:hover {
    opacity: 1;
    border: 1px solid var(--color03);
    background-color: var(--color03);
    color: #fff;
}

.pager ul li .now:after,
.pager ul li a:hover:after {
    background-color: var(--color01);
}

.pager ul li a:focus {
    outline: none;
}

@media all and (-ms-high-contrast:none) {

    *::-ms-backdrop,
    .pager ul li a,
    .pager ul li .now {
        padding-top: 5px;
    }
}

.pager ul li a:hover {
    opacity: 1;
}

.pager ul .prev,
.pager ul .next {
    font-size: 10px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    position: relative;
}

.pager ul .prev-arrow:before {
    content: "\f104";
    font-family: "Font Awesome 5 Free";
    display: inline-block;
    font-weight: 900;
    line-height: 100%;
}

.pager ul .next-arrow:before {
    content: "\f105";
    font-family: "Font Awesome 5 Free";
    display: inline-block;
    font-weight: 900;
    line-height: 100%;
}

@media (max-width: 599px) {

    .pager ul li a,
    .pager ul li .now {
        width: 30px;
        height: 30px;
        font-size: 16px;
    }
}

/* 下層 */
/* 02first */
.first-flow-area .num-parent .num {
    top: -35px;
    left: 50%;
    font-size: 40px;
    font-weight: 500;
    background: #fff;
    padding: 0 15px;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
}

/* 03about */
.about-intro-area .tit,
.about-access-area .tit {
    font-size: 20px;
    font-weight: 500;
    font-family: var(--ff02);
    -webkit-transform: rotateZ(0.03deg);
    transform: rotateZ(0.03deg);
    text-align: center;
}

.about-access-area .item {
    margin-bottom: 30px;
}

.about-access-area .item:last-child {
    margin-bottom: 0;
}

.about-access-area .item .text {
    margin-top: 20px;
}

@media(max-width:599px) {

    .about-intro-area .tit,
    .about-access-area .tit {
        font-size: 18px;
    }

    .about-access-area .parallel {
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
    }

    .about-access-area .item .text {
        margin-top: 10px;
    }
}

[data-element-id] .about-intro-area .show\@sp .tit, [data-element-id] .about-access-area .show\@sp .tit{
  font-size:18px;
}

[data-element-id] .parallel {
    padding-top: 100px;
    position: relative;
}

[data-element-id] .parallel .edi-sp.show\@sp {
    position: absolute;
    top: 10px;
    left: 50%;
    transform: translateX(-50%);
}

/* 05menu */
.menu-area .num-block::after {
    content: none;
}

.menu-area.type02 .num-block-num {
    color: var(--color02);
}

/* 99voice_deatil */
.voice-detail-area .category .age {
    background: var(--color03);
}

.voice-detail-area .menu {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.voice-detail-area .menu span::after {
    content: ",";
}

.voice-detail-area .menu span:last-child::after {
    content: none;
}

.area_22.recommend .balloon-list>dd {
    width: 100%;
    margin: 10px 0 0;
    padding: 15px;
}

.area_22.recommend .balloon-box .balloon-list .balloon-content_01 span {
    font-size: 12px;
}

@media(max-width:599px) {
    .voice-detail-area .detail-content .txtbox {
        /* autoprefixer: ignore next */
        display: contents;
    }

    .voice-detail-area .detail-content .txtbox .txt-sub-box {
        -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
        order: 1;
        width: 100%;
        margin-bottom: 20px;
    }

    .voice-detail-area .detail-content .imgbox {
        -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
        order: 2;
    }

    .voice-detail-area .detail-content .txtbox .txt-sub-box02 {
        -webkit-box-ordinal-group: 4;
        -ms-flex-order: 3;
        order: 3;
    }
}

/* 16article */
.category {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 5px;
}

.category span {
    background: var(--color02);
    color: #fff;
    font-size: 12px;
    padding: 5px 10px;
    line-height: 1.2;
}

/* 99article_deatil */
.article-detail-area .txt h2 {
    margin: 1em 0;
    padding: 0.5em 1em;
    font-weight: 500;
    font-size: 22px;
    color: #fff;
    line-height: 1;
    background: var(--color02);
    font-family: 'M PLUS Rounded 1c',
        sans-serif;
    -webkit-transform: rotateZ(0.03deg);
    transform: rotateZ(0.03deg);
}

.article-detail-area .txt h3 {
    margin: 1em 0;
    padding: 0.5em;
    font-weight: 500;
    font-size: 20px;
    line-height: 1;
    border-left: solid 10px var(--color03);
    font-family: 'M PLUS Rounded 1c',
        sans-serif;
    -webkit-transform: rotateZ(0.03deg);
    transform: rotateZ(0.03deg);
}

.article-detail-area .txt h4 {
    margin: 1em 0;
    padding-bottom: 0.5em;
    font-weight: 500;
    font-size: 18px;
    border-bottom: dotted 2px var(--color02);
    font-family: 'M PLUS Rounded 1c',
        sans-serif;
    -webkit-transform: rotateZ(0.03deg);
    transform: rotateZ(0.03deg);
}

.article-detail-area .txt ul li {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: baseline;
    align-items: baseline;
    -ms-flex-align: baseline;
    -webkit-column-gap: 5px;
    -moz-column-gap: 5px;
    column-gap: 5px;
}

.article-detail-area .txt ul li::before {
    content: "■";
    color: var(--color02);
}

.article-detail-area .txt ol li {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: baseline;
    align-items: baseline;
    -ms-flex-align: baseline;
    list-style-type: none;
    counter-increment: cnt;
}

.article-detail-area .txt ol li::before {
    content: ""counter(cnt)".";
    margin-right: 10px;
    font-weight: bold;
    font-size: 120%;
    color: var(--color03);
    font-family: 'M PLUS Rounded 1c',
        sans-serif;
    -webkit-transform: rotateZ(0.03deg);
    transform: rotateZ(0.03deg);
}

.article-detail-area iframe[src*="youtube"] {
    margin-top: 1em;
    margin-bottom: 1em;
    aspect-ratio: 16 / 9;
    height: auto;
}

/* 17recruit */
.list.-recruit02 .listitem {
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
}

.list.-recruit02 .datatitle {
    width: 180px;
    padding: 10px;
    margin-right: 40px;
    border-bottom: 2px solid rgba(96, 180, 33, 0.2);
    font-weight: 500;
    color: var(--color02);
    font-family: var(--ff02);
    -webkit-transform: rotateZ(0.03deg);
    transform: rotateZ(0.03deg);
}


.list.-recruit02 .data {
    width: 100%;
    padding: 10px;
    border-bottom: 2px solid rgba(96, 180, 33, 0.2);
}

@media only screen and (max-width: 599px) {
    .list.-recruit02 .listitem {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }

    .list.-recruit02 .datatitle {
        padding-bottom: 0;
        padding-left: 0;
        border-bottom: none;
    }
}

/* form */
.form dl {
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
}

.form dt {
    width: 250px;
    padding: 10px;
    margin-right: 40px;
    border-bottom: 2px solid rgba(96, 180, 33, 0.2);
    font-weight: 500;
    color: var(--color02);
    font-family: var(--ff02);
    -webkit-transform: rotateZ(0.03deg);
    transform: rotateZ(0.03deg);
}

.form dt .reqw {
    display: inline-block;
    margin-left: 5px;
    color: red;
    font-weight: 600;
}

.form dd {
    width: 100%;
    padding: 10px;
    border-bottom: 2px solid rgba(96, 180, 33, 0.2);
}

.form dd input {
    width: 70%;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    margin-top: 5px;
    margin-bottom: 5px;
}

.form dd select {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 5px;
}

.form dd input[type="radio"] {
    display: none;
}

.form dd input[type="radio"]+label {
    padding-left: 20px;
    position: relative;
    margin-right: 20px;
    line-height: 200%;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

.form dd input[type="radio"]+label::before {
    content: "";
    display: block;
    position: absolute;
    top: 5px;
    left: 0;
    width: 14px;
    height: 14px;
    border: 1px solid var(--color01);
    border-radius: 50%;
    background: #fff;
}

.form dd input[type="radio"]:checked+label::after {
    content: "";
    display: block;
    position: absolute;
    top: 7px;
    left: 2px;
    width: 10px;
    height: 10px;
    background: var(--color01);
    border-radius: 50%;
}

.form dd input[type="radio"]:checked+label {
    -webkit-transition: 0.6s;
    transition: 0.6s;
}

.form dd input[type="number"] {
    width: 70px;
    margin-right: 10px;
}

.form dd textarea {
    width: 100%;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 5px;
    font-size: 14px;
    height: 150px;
}

.form .requirement span {
    display: inline-block;
}

.form .company {
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
}

.form .company01 {
    width: 70%;
    padding-right: 20px;
}

.form .company01 input {
    width: 100%;
}

.form .company02 {
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
}

.form .name01 {
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    width: 50%;
    max-width: 300px;
    padding-right: 20px;
    font-size: 14px;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.form .name01 input {
    width: 80%;
}

.form .post input {
    width: 100px;
    margin-left: 5px;
    margin-right: 5px;
}

.form .prefectures input {
    width: 100px;
}

.form .comfirm-address div {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

.form .comfirm-address div span {
    -ms-flex-negative: 0;
    flex-shrink: 0;
}

.formbtn li button {
    text-align: center;
    color: #fff;
    display: block;
    background: #F19266;
    padding: .5em 4em;
    position: relative;
    z-index: 1;
    opacity: 1;
    overflow: hidden;
    border: none;
    margin: 80px auto;
    -webkit-transition: 0.3s all ease;
    transition: 0.3s all ease;
}

.formbtn li button:after {
    position: absolute;
    font-family: FontAwesome;
    content: "\f105";
    position: absolute;
    top: 50%;
    right: 10px;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    font-size: 20px;
}

.formbtn2 li:nth-of-type(odd) button:after {
    right: auto;
    left: 20px;
    content: "\f104";
}

.formbtn li button:hover {
    opacity: 0.6;
    cursor: pointer;
}

.formbtn li {
    width: 100%;
    max-width: 320px;
    margin: auto;
}

.formbtn2 li {
    max-width: 250px;
}

.form .btn.min {
    margin-left: 0;
    margin-right: 0;
}

@media only screen and (max-width: 1024px) {
    .form dl {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }

    .form dt {
        width: 100%;
        padding-bottom: 0;
        border-bottom: none;
    }

    .form dd {
        width: 100%;
    }

    .form .post input {
        width: 100px;
    }

    .form .name div {
        margin-left: 0;
        margin-right: 0;
    }

    .formbtn li button {
        margin: 60px auto;
        padding: 15px 40px;
    }

    .formbtn2 li {
        max-width: 200px;
    }
}

@media only screen and (max-width: 599px) {
    .form .company {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }

    .form .company01 {
        width: 100%;
    }

    .form .company02 {
        margin-left: 0;
        margin-right: 0;
    }

    .form .name01 {
        width: 100%;
    }

    .formbtn li button {
        margin: 40px auto;
        padding: 10px 40px;
        max-width: 250px;
    }

    .formbtn2 li {
        max-width: 130px;
    }

    .form .btn.min button {
        min-width: 160px;
    }
}

/* abtest */
[data-element-id] .abtest-a, [data-element-id] .abtest-b {
    padding: 10px;
    display: flex;
    flex-direction: column;
}

[data-element-id] .abtest-a {
    border: 2px solid #F44336;
}

[data-element-id] .abtest-b {
    border:2px solid #2196F3;
}

[data-element-id] .abtest-a::before,[data-element-id] .abtest-b::before {
    content: "Aパターン";
    background: #F44336;
    width: calc(100% + 20px);
    margin: -10px -10px 10px;
    text-align: center;
    font-size: 12px;
    padding-bottom: 5px;
}

[data-element-id] .abtest-a::before {
    content: "Aパターン";
    background: #F44336;
}

[data-element-id] .abtest-b::before {
    content: "Bパターン";
    background: #2196F3;
}

[data-ab-test-block] [data-ab-test-contents]+[data-ab-test-contents] {display: none;}

/* shine */
.hover-shine {
    position: relative;
    display: inline-block;
    outline: none;
    overflow: hidden;
}

.hover-shine a:hover {
    opacity: 1;
}

/*キラッと光る*/
.hover-shine::before {
    content: '';
    position: absolute;
    top: 0;
    left: -75%;
    width: 50%;
    height: 100%;
    background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, .3) 100%);
    transform: skewX(-25deg);
}

/*hoverした際の移動のアニメーション*/
.hover-shine::before {
    animation: shine 1.5s ease-in-out infinite;
}

@keyframes shine {
    100% {
        left: 125%;
    }
}

[data-hide-element] {
    display: flex !important;
    flex-direction: column !important;
}

[data-hide-element]:before{
  position: relative !important;
  transform: none !important;
}

/**2025/06/17**/
.under-bnr {
  display: none;
}

@media (max-width: 599px){
  .under-bnr {
    display: block;
    position: fixed;
    bottom: 0;
    background: #8ac453;
    width: 100%;
    z-index: 99;
    padding: 5px 0;
  }
  .under-bnr a {
    padding: 2% 0;
  }
  .under-bnr a {
    color: #fff;
    text-align: center;
    line-height: 1.5;
  }
  .under-bnr a p {
    font-size: 12px;
  }
  .under-bnr a div {
    font-size: 18px;
    position: relative;
    padding-left: 2%;
    font-weight: bold;
  }
  .under-bnr a div::before {
    content: "\f095";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    display: inline-block;
    margin-left: 5px;
    position: absolute;
    left: 27%;
  }
  .footer-common {
    padding-bottom: 50px;
  }
}
