@charset "UTF-8";
/* ----------------------------------------------------------------- */
#contactForm .list__item.is-recaptcha .item__input .g-recaptcha {
    transform-origin: left;
    transform: scale(0.77);
}

/* ----------------------------------------------------------------- */
.box__contact {
    padding: calc(var(--section-vside) * 0) 0 calc(var(--section-vside) * 3) 0;
}
.box__contact .box__container {
    max-width: initial;
    padding: 0 0;
}

.box__contact .box__container .box__body .body__mtitle .mtitle__detail {
    width: 65%;
    max-width: 1000px;
}

.box__contact .box__container .box__body .body__con {
    max-width: var(--main-max-width);
    padding: 0 var(--extra-side);
    margin: 160px auto 0 auto;
    display: flex;
    justify-content: center;
}

.box__contact .box__container .box__body .body__con::before {
    --bg-size: 1440px;
    content: "";
    position: absolute;
    width: var(--bg-size);
    aspect-ratio: 1400 / 860;
    /* bottom: 0; */
    top: calc(250px);
    background-image: linear-gradient(144deg, #17EAB7 4%, #33B2C1 35%, #664BD2 69%, #8C00DF 100%);

    border-radius: var(--border-radius-ll);
    overflow: hidden;

    transform: rotate(-9deg);
}

.box__contact .box__container .box__body .body__con .con__list {
    /* 320 - 1280 */
    /* 150-400 */
    /* 200-400 */
    --a-size: clamp(9.375rem, 4.167rem + 26.04vw, 25rem);
    --cross-size: clamp(12.5rem, 8.333rem + 20.83vw, 25rem);
    width: 100%;
    max-width: 820px;
    padding: calc(var(--fsize) * 2.5) calc(var(--fsize) * 4);

    border-radius: var( --border-radius-ll);
    background-color: #fff;
    box-shadow: var(--box-shadows2);
    z-index: 1;
}

.box__contact .box__container .box__body .body__con .con__list::before {
    pointer-events: none;
    content: "";
    position: absolute;
    width: var(--a-size);
    aspect-ratio: 636 / 700;
    /* top: calc(50% - var(--a-size) * 0.7); */
    top: calc(250px - var(--a-size) * 0);
    left: calc((100% - var(--a-size)) * 0.5 - var(--a-size) * 1.6);
    background: url(../images/contact/contact-bg-deco.png) no-repeat;
    background-position: center;
    background-size: 100%;
    z-index: 100;
}

.box__contact .box__container .box__body .body__con .con__list::after {
    pointer-events: none;
    content: "";
    position: absolute;
    width: var(--cross-size);
    aspect-ratio: 636 / 700;
    top: calc(250px + var(--cross-size) * 1.3);
    left: calc((100% - var(--cross-size)) * 0.5 + var(--cross-size) * 1.75);
    background: url(../images/contact/contact-bg-cross.png) no-repeat;
    background-position: center;
    background-size: 100%;
    z-index: 100;
}

.box__contact .box__container .box__body .body__con .con__list .list__item {
    position: relative;
    width: 100%;
    display: flex;
    flex-direction: row;
    align-items: flex-start;
}

.box__contact .box__container .box__body .body__con .con__list .list__item:not(:first-child) {
    margin-top: calc(var(--fsize) * 0.7);
}

.box__contact .box__container .box__body .body__con .con__list .list__item .item__name {
    width: calc(var(--fsize) * 6);
    display: flex;
    justify-content: flex-end;
    margin-right: calc(var(--fsize) * 0.8);
}

.box__contact .box__container .box__body .body__con .con__list .list__item .item__input {
    position: relative;
    flex: 1;
}

.box__contact .box__container .box__body .body__con .con__list .list__item .item__input > textarea,
.box__contact .box__container .box__body .body__con .con__list .list__item .item__input > input[type='text'] {
    font-size: var(--fsize);
    border: 1px solid var(--color-gray-light);
    padding: 8px 20px;
}

.box__contact .box__container .box__body .body__con .con__list .list__item .item__input > input[type='text'] {
    height: 40px;
}

.box__contact .box__container .box__body .body__con .con__list .list__item .item__input > textarea {
    position: relative;
    width: 100%;
    min-height: 100%;
    display: flex;

    box-sizing: border-box;
    border-radius: var(--border-radius-m);
    padding: 8px 20px 20px 20px;
}

/* .box__contact .box__container .box__body .body__con .con__list .list__item.is-message .item__name {
    padding-top: calc(var(--fsize) * 0.4);
    align-self: flex-start;
} */

.box__contact .box__container .box__body .body__con .con__list .list__item .item__name {
    padding-top: calc(var(--fsize) * 0.4);
    align-self: flex-start;
}


/* select */
.box__contact .box__container .box__body .body__con .con__list .list__item .item__input.infotype__select .box__panel__placeholder {
    position: relative;
    width: 100%;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    border-radius: var(--border-radius-sl);
    overflow: hidden;
    border: 1px solid var(--color-gray-light);
    box-sizing: border-box;

    padding: calc(var(--fsize) * 0.35) calc(var(--fsize) * 0.8);

    background-color: #fff;
}

.box__contact .box__container .box__body .body__con .con__list .list__item .item__input.infotype__select .box__panel__placeholder::after {
    content: "";
    position: absolute;
    aspect-ratio: 1 / 1;
    height: calc(var(--fsize) * 0.8);
    right: calc(var(--fsize) * 0.8);
    background: url(../images/common/arrow-icon-down.svg) no-repeat;
    background-position: center;
    background-size: 100%;
}

/* is-active */
.box__contact .box__container .box__body .body__con .con__list .list__item .item__input.infotype__select.is-active .box__panel__placeholder::after {
    transform: scaleY(-1);
}

.box__contact .box__container .box__body .body__con .con__list .list__item .item__input.infotype__select.is-active .box__select__panel {
    display: flex;
}

.box__contact .box__container .box__body .body__con .con__list .list__item .item__input.infotype__select .box__select__panel {
    margin-top: 10px;
    position: absolute;
    /* width: calc(100% - var(--fsize) * 4 - var(--fsize) * 0.8); */
    width: calc(100%);
    top: calc(var(--fsize) * 2);
    /* left: calc(var(--fsize) * 1.5); */
    display: none;
    flex-direction: column;

    background-color: #fff;
    border-radius: var(--border-radius-sl);
    overflow: hidden;
    border: 1px solid var(--color-gray-light);
    box-sizing: border-box;

    padding: calc(var(--fsize) * 0.75) 0;
    z-index: 1;

    overflow: auto;
}

.box__contact .box__container .box__body .body__con .con__list .list__item .item__input.infotype__select .box__select__panel .box__panel__option {
    pointer-events: auto;
    cursor: pointer;
    position: relative;
    width: 100%;
    padding: calc(var(--fsize) * 0.35) calc(var(--fsize) * 0.35) calc(var(--fsize) * 0.35) calc(var(--fsize) * 1.25);
    display: block
}

.box__contact .box__container .box__body .body__con .con__list .list__item .item__input.infotype__select .box__select__panel .box__panel__option:active,
.box__contact .box__container .box__body .body__con .con__list .list__item .item__input.infotype__select .box__select__panel .box__panel__option:hover {
    background-color: #E3FDF8;
}

.box__contact .box__container .box__body .body__con .con__list .list__item .item__input.infotype__select .box__select__panel .box__panel__option.is-notwork {
    pointer-events: none;
    cursor: default;
    opacity: 0.5;
}

/* checkbox */
.box__contact .box__container .box__body .body__con .con__list .list__item.is-allow .item__input > label {
    --size: calc(max(var(--fsize), 16px) * 1);
    pointer-events: auto;
    cursor: pointer;
    position: relative;
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: flex-start;

    width: fit-content;
}

.box__contact .box__container .box__body .body__con .con__list .list__item.is-allow .item__input > label::before {
    content: '';
    position: relative;
    width: var(--size);
    height: var(--size);
    top: calc(var(--size) * 0.25);
    left: 0;

    border: 2px solid;
    box-sizing: border-box;
    display: inline-block;

    border-radius: var(--border-radius-ss2);
    margin-right: calc(var(--fsize) * 0.5);
    border-color: var(--color-gray-light);
}

.box__contact .box__container .box__body .body__con .con__list .list__item.is-allow .item__input > label::after {
    --border-w: 3px;
    content: '';
    position: absolute;
    top: calc(var(--size) * 0.5);
    left: 4px;
    width: 4px;
    height: 9px;

    border-top: var(--border-w) solid transparent;
    border-left: var(--border-w) solid transparent;
    border-right: var(--border-w) solid var(--color-gray-dark2); 
    border-bottom: var(--border-w) solid var(--color-gray-dark2);

    transform: translateY(-50%) rotate(40deg);
    opacity: 0;
}

#is-allow-privacy:checked ~ label[for="is-allow-privacy"]::after {
    opacity: 1;
}

.box__contact .box__container .box__body .body__con .con__list .list__item.is-allow .item__input > label > p {
    flex: 1;
}

.box__contact .box__container .box__body .body__con .con__list .list__item.is-allow .item__input > label > p .allowLink {
    position: relative;
    text-decoration: underline;
    text-underline-offset: 4px;
}

#is-allow-data:checked ~ label[for="is-allow-data"]::after {
    opacity: 1;
}

.box__contact .box__container .box__body .body__con .con__list .list__item.is-action .item__input {
    position: relative;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: stretch;
}

.box__contact .box__container .box__body .body__con .con__list .list__item.is-action .item__input > a {
    width: 49%;
    display: flex;
    justify-content: center;
    align-items: center;
}

.box__contact .box__container .box__body .body__con .con__list .list__item.is-action .item__input > a.btn__clear {
    background-color: var(--color-aqua);
    color: #fff;
}

.box__contact .box__container .box__body .body__con .con__list .list__item.is-action .item__input > a.btn__clear,
.box__contact .box__container .box__body .body__con .con__list .list__item.is-action .item__input > a.btn__submit {
    padding: calc(var(--fsize) * 0.6) calc(var(--fsize) * 2);
}

.box__contact .box__container .box__body .body__con .con__list .list__item.list__item.is-action {
    margin-top: calc(var(--fsize) * 1.5);
}

@media screen and (min-width:320px) {
    #contactForm .list__item.is-recaptcha .item__input .g-recaptcha {
        transform: scale(0.77);
    }

    .box__contact {
        padding: calc(var(--section-vside) * 0) 0 calc(var(--section-vside) * 6) 0;
    }
    .box__contact .box__container .box__body .body__mtitle .mtitle__detail {
        width: 100%;
    }

    .box__contact .box__container .box__body .body__con {
        padding: 0 var(--main-padding-side);
    }

    .box__contact .box__container .box__body .body__con::before {
        --bg-size: 670px;
        top: 280px;
        border-radius: calc(var(--border-radius-ll) * 0.5);
    }

    .box__contact .box__container .box__body .body__con .con__list {
        width: 100%;
        padding: calc(var(--fsize) * 4.5) calc(var(--fsize) * 2);
        border-radius: var(--border-radius-sl);
    }

    .box__contact .box__container .box__body .body__con .con__list::before {
        top: calc(250px - var(--a-size) * 0.3);
        left: calc((100% - var(--a-size)) * 0.5 - var(--a-size) * 0.9);
    }

    .box__contact .box__container .box__body .body__con .con__list::after {
        top: calc(50% + 47%);
        left: calc((100% - var(--cross-size)) * 0.5 + var(--cross-size) * 0.6);
    }

    .box__contact .box__container .box__body .body__con .con__list .list__item {
        flex-direction: column;
        align-items: initial;
    }

    .box__contact .box__container .box__body .body__con .con__list .list__item .item__name {
        width: 100%;
        justify-content: initial;
        margin-right: 0;
        margin-bottom: calc(var(--fsize) * 0.3);
    }

    .box__contact .box__container .box__body .body__con .con__list .list__item .item__input > textarea,
    .box__contact .box__container .box__body .body__con .con__list .list__item .item__input > input[type='text'] {
        border-radius: var(--border-radius-sm);
    }
    
    .box__contact .box__container .box__body .body__con .con__list .list__item .item__input > input[type='text'] {
        height: 36px;
    }

    .box__contact .box__container .box__body .body__con .con__list .list__item .item__input.infotype__select .box__panel__placeholder {
        border-radius: var(--border-radius-sm);
    }

    .box__contact .box__container .box__body .body__con .con__list .list__item.is-allow .item__input > label {
        --size: 16px;
    }

    .box__contact .box__container .box__body .body__con .con__list .list__item.is-allow .item__input > label::before {
        top: calc(var(--size) * 0.2);
    }

    .box__contact .box__container .box__body .body__con .con__list .list__item.is-allow .item__input > label::after {
        top: calc(var(--size) * 0.35);
    }

}
@media screen and (min-width:360px) {
    #contactForm .list__item.is-recaptcha .item__input .g-recaptcha {
        transform: scale(0.91);
    }
}
@media screen and (min-width:390px) {
    #contactForm .list__item.is-recaptcha .item__input .g-recaptcha {
        transform: scale(1);
    }
}
@media screen and (min-width:414px) {}
@media screen and (min-width:500px) {}
/* @media screen and (min-width:600px) {} */
@media screen and (min-width:600px) {
    .box__contact {
        padding: calc(var(--section-vside) * 0) 0 calc(var(--section-vside) * 4) 0;
    }

    .box__contact .box__container .box__body .body__con::before {
        --bg-size: 1000px;
    }

    .box__contact .box__container .box__body .body__con .con__list {
        width: 100%;
        padding: calc(var(--fsize) * 2.5) calc(var(--fsize) * 4);
        border-radius: var(--border-radius-ll);
    }

    .box__contact .box__container .box__body .body__con .con__list::before {
        top: calc(250px - var(--a-size) * 0.2);
        left: calc((100% - var(--a-size)) * 0.5 - var(--a-size) * 1.55);
    }

    .box__contact .box__container .box__body .body__con .con__list::after {
        top: calc(250px + var(--cross-size) * 2);
        left: calc((100% - var(--cross-size)) * 0.5 + var(--cross-size) * 1.5);
    }

    .box__contact .box__container .box__body .body__con .con__list .list__item {
        flex-direction: row;
        align-items: flex-start;
    }

    .box__contact .box__container .box__body .body__con .con__list .list__item .item__name {
        width: calc(var(--fsize) * 5);
        justify-content: flex-end;
        margin-right: calc(var(--fsize) * 0.8);
        margin-bottom: 0;
    }

    .box__contact .box__container .box__body .body__con .con__list .list__item .item__input > textarea,
    .box__contact .box__container .box__body .body__con .con__list .list__item .item__input > input[type='text'] {
        border-radius: var(--border-radius-m);
    }

    .box__contact .box__container .box__body .body__con .con__list .list__item .item__input > input[type='text'] {
        height: 40px;
    }

    .box__contact .box__container .box__body .body__con .con__list .list__item .item__input.infotype__select .box__panel__placeholder {
        border-radius: var(--border-radius-sl);
    }

    .box__contact .box__container .box__body .body__con .con__list .list__item.is-allow .item__input > label {
        --size: calc(max(var(--fsize), 16px) * 1);
    }

    .box__contact .box__container .box__body .body__con .con__list .list__item.is-allow .item__input > label::after {
        top: calc(var(--size) * 0.5);
    }
}
@media screen and (min-width:1024px) {
    .box__contact {
        padding: calc(var(--section-vside) * 0) 0 calc(var(--section-vside) * 3) 0;
    }

    .box__contact .box__container .box__body .body__mtitle {
        padding: 0 calc(var(--extra-side) + 0px);
    }

    .box__contact .box__container .box__body .body__mtitle .mtitle__detail {
        width: 65%;
    }

    .box__contact .box__container .box__body .body__con {
        padding: 0 var(--extra-side);
    }

    .box__contact .box__container .box__body .body__con::before {
        --bg-size: 1440px;
        top: 250px;
        border-radius: var(--border-radius-ll);
    }

    .box__contact .box__container .box__body .body__con .con__list::before {
        top: calc(250px - var(--a-size) * 0);
        left: calc((100% - var(--a-size)) * 0.5 - var(--a-size) * 1.6);
    }

    .box__contact .box__container .box__body .body__con .con__list::after {
        top: calc(250px + var(--cross-size) * 1.35);
        left: calc((100% - var(--cross-size)) * 0.5 + var(--cross-size) * 1.75);
    }
}

@media screen and (min-width:1280px) {
    .box__contact .box__container .box__body .body__con .con__list::before {
        top: calc(250px - var(--a-size) * 0);
        left: calc((100% - var(--a-size)) * 0.5 - var(--a-size) * 1.6);
    }

    .box__contact .box__container .box__body .body__con .con__list::after {
        top: calc(250px + var(--cross-size) * 1.35);
        left: calc((100% - var(--cross-size)) * 0.5 + var(--cross-size) * 1.75);
    }
    
}
@media screen and (min-width:1366px) {}
@media screen and (min-width: 1440px) {}
@media screen and (min-width: 1680px) {}
@media screen and (min-width: 1920px) {}
@media screen and (min-width: 2560px) {}
