@charset "UTF-8";
#cover {
    background: url(../img/inner/contact/cover_sp.jpg)no-repeat center;
    background-size: cover;
}

section#contact1 {
    padding: 60px 25px 0;
}

.btn01 input {
    background: #fff;
    border: 0;
    background: #2b3dc7;
    color: #fff;
    background: #fff0;
    width: 100%;
    height: 49px;
}

#mailform .btn01 {
    padding: 0;
    margin: 30px auto 0;
    max-width: 320px;
}

section#contact1 wrap {}

#contact1 .wrap {
    max-width: 1000px;
    width: 100%;
    margin: auto;
}

#contact .txt {
    font-size: 14px;
}

#mailform .button_button__AjG4y[data-format=fill]:hover {
    opacity: .7;
}

div#mf_wrapper {
    width: 640px;
    text-align: left;
    margin: 0px auto 0px auto;
    font-family: sans-serif;
}

div#mf_header h1 {
    font-size: 24px;
    border-bottom: solid 1px #999999;
    margin: 0px;
    padding: 0px;
}

div#mf_header h2 {
    font-size: 16px;
    color: #999999;
    font-weight: normal;
    margin: 0px;
    padding: 0px;
}

form#mailform {
    margin-top: 40px;
}

table.mailform {
    width: 100%;
}

table.mailform tr {
    padding: 30px 0;
    display: flex;
    border-bottom: 1px solid #C1C6C9;
    flex-flow: column;
    align-items: flex-start;
}

table.mailform tr:last-child {
    align-items: flex-start;
}

table.mailform tr:first-child {
    border-top: 1px solid #C1C6C9;
}

td input[type="button"] {
    padding: 24px 15px!important;
    font-size: 12px;
    letter-spacing: 0.07em;
    border: 1px solid #646464!important;
    border-radius: 3px;
    max-width: 158px!important;
    width: 100%;
    margin: 0;
    text-align: center;
    margin-top: 15px!important;
    color: #222;
}

table.mailform tr th,
table.mailform tr td {
    text-align: left;
    /* font-weight: normal; */
    font-size: 12px;
    /* border-bottom: solid 1px #999999; */
    /* padding: 7px 5px 7px 5px; */
}

table.mailform tr td input {
    background: #D9D9D9;
    border: 0;
    max-width: 100%;
    width: 100%!important;
    padding: 25px 20px;
    border-radius: 3px;
    margin-top: 25px;
    line-height: 2em;
    letter-spacing: 0.02em;
    font-family: "Zen Kaku Gothic New", sans-serif;
}

table.mailform tr td {
    width: 100%;
}

table.mailform tr th {
    max-width: 290px;
    width: 100%;
    display: block;
    font-size: 14px;
    letter-spacing: 0.07em;
    font-weight: 500;
}

table.mailform tr th span {
    color: #fff;
    font-size: 12px;
    font-weight: 500;
    letter-spacing: 0.07em;
    padding: 0 5px 3px;
    background: #1309BC;
    border-radius: 3px;
    margin-right: 15px;
}

table.mailform tr th span.any {
    background: #A7A7A7;
}

table.mailform tr th p {
    margin: 0px;
    padding: 0px;
    font-size: 10px;
    color: #999999;
}

table.mailform tr td textarea {
    height: 200px!important;
    max-width: 100%;
    background: #D9D9D9;
    border: 0;
    max-width: 100%;
    width: 100%!important;
    padding: 17px 20px;
    border-radius: 3px;
    margin-top: 25px;
    line-height: 2em;
    letter-spacing: 0.02em;
    font-family: "Zen Kaku Gothic New", sans-serif;
}

::placeholder {
    color: #C9C9C9;
    font-size: 14px;
    letter-spacing: 0.07em;
}

table.mailform tr td input.size1 {
    max-width: 100%;
}

table.mailform tr td input.size2 {
    max-width: 100%;
}

.privacy_check {
    margin-top: 40px;
    text-align: left;
    align-items: flex-start;
    display: flex;
    justify-content: center;
    line-height: 1.75em;
}

.privacy_check input {
    border: 1px solid #B9B9B9!important;
    accent-color: #B9B9B9;
    margin: 5px 0 0 0!important;
    /* width: 100%;
    height: 20px; */
    max-width: 20px;
    inline-size: 40px;
    block-size: 20px;
}

.privacy_check label {
    font-size: 13px;
    letter-spacing: 0.07em;
    font-weight: 500;
    color: #222222;
    margin-left: 15px;
}

.privacy_check label a {
    text-decoration: underline;
    color: #0E05A2;
}

.privacy_check label a:hover {
    opacity: .7;
    text-decoration: none;
}

.privacy_text {
    margin-top: 20px;
    font-size: 13px;
    text-align: left;
    letter-spacing: 0.07em;
    font-weight: 500;
    color: #222222;
}

@keyframes button__hoverArrowRight__5qKJ1 {
    0% {
        opacity: 1;
        transform: scale(1) translateX(0)
    }
    30% {
        opacity: 0;
        transform: scale(.5) translateX(15px)
    }
    30.1% {
        opacity: 0;
        transform: scale(.5) translateX(-20px)
    }
    to {
        opacity: 1;
        transform: scale(1) translateX(0)
    }
}

.button_button__AjG4y {
    max-width: 210px;
    width: 100%;
}

.button_button__AjG4y[data-format=fill] input,
.button_button__AjG4y[data-format=fill] button {
    border-radius: 50px;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    padding: 11.5px 0 11.5px;
    border: 2px #fff solid;
}

.button_button__AjG4y[data-format=fill] input span,
.button_button__AjG4y[data-format=fill] button span {
    font-size: 14px;
    color: #fff;
    letter-spacing: 0.07em;
    font-weight: 700;
    max-width: 127px;
    width: 100%;
}

.button_button__AjG4y[data-format=fill] input:before,
.button_button__AjG4y[data-format=fill] button:before {
    color: #fff
}

.button_button__AjG4y[data-format=fill] input,
.button_button__AjG4y[data-format=fill] button {
    transition: .5s var(--easeOutQuart)
}

.button_button__AjG4y[data-format=fill] input:hover,
.button_button__AjG4y[data-format=fill] button:hover {
    background-color: #fff;
}

.button_button__AjG4y[data-icon=arrowRight] a:before,
.button_button__AjG4y[data-icon=arrowRight] button:before {
    content: "";
    vertical-align: middle;
    line-height: 1;
    display: inline-block;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 40px;
    z-index: 1;
    height: 4.73px;
    width: 22.81px;
    background-size: cover;
}

.button_button__AjG4y[data-icon=arrowRight] a:hover:before,
.button_button__AjG4y[data-icon=arrowRight] button:hover:before {
    animation: button__hoverArrowRight__5qKJ1 var(--easeInOutCirc) .5s forwards;
    top: 45%;
    background: url(../img/arrow01.svg)no-repeat center;
}

#contact1 .wrap {
    padding: 0;
}

:root {
    --black: #191a18;
    --black-light: #595c56;
    --gray-dark: #a2a2a2;
    --gray: #e2e2e2;
    --gray-light: #f4f4f4;
    --red: #c8151c;
    --z-index-cookie: 30;
    --z-index-modal: 20;
    --z-index-header: 12;
    --z-index-footer: 11;
    --z-index-hero: 2;
    --z-index-main: 1;
    --z-index-bottomContact: 5;
    --z-index-pageMenu: 4;
    --z-index-anchorMenu: 3;
    --z-index-crumb: 2;
    --z-index-background: 1;
    --linear: cubic-bezier(.250, .250, .750, .750);
    --ease: cubic-bezier(.250, .100, .250, 1.000);
    --easeIn: cubic-bezier(.420, .000, 1.000, 1.000);
    --easeOut: cubic-bezier(.000, .000, .580, 1.000);
    --easeInOut: cubic-bezier(.420, .000, .580, 1.000);
    --easeInQuad: cubic-bezier(.550, .085, .680, .530);
    --easeInCubic: cubic-bezier(.550, .055, .675, .190);
    --easeInQuart: cubic-bezier(.895, .030, .685, .220);
    --easeInQuint: cubic-bezier(.755, .050, .855, .060);
    --easeInSine: cubic-bezier(.470, .000, .745, .715);
    --easeInExpo: cubic-bezier(.950, .050, .795, .035);
    --easeInCirc: cubic-bezier(.600, .040, .980, .335);
    --easeInBack: cubic-bezier(.600, -.280, .735, .045);
    --easeOutQuad: cubic-bezier(.250, .460, .450, .940);
    --easeOutCubic: cubic-bezier(.215, .610, .355, 1.000);
    --easeOutQuart: cubic-bezier(.165, .840, .440, 1.000);
    --easeOutQuint: cubic-bezier(.230, 1.000, .320, 1.000);
    --easeOutSine: cubic-bezier(.390, .575, .565, 1.000);
    --easeOutExpo: cubic-bezier(.190, 1.000, .220, 1.000);
    --easeOutCirc: cubic-bezier(.075, .820, .165, 1.000);
    --easeOutBack: cubic-bezier(.175, .885, .320, 1.275);
    --easeInOutQuad: cubic-bezier(.455, .030, .515, .955);
    --easeInOutCubic: cubic-bezier(.645, .045, .355, 1.000);
    --easeInOutQuart: cubic-bezier(.770, .000, .175, 1.000);
    --easeInOutQuint: cubic-bezier(.860, .000, .070, 1.000);
    --easeInOutSine: cubic-bezier(.445, .050, .550, .950);
    --easeInOutExpo: cubic-bezier(1.000, .000, .000, 1.000);
    --easeInOutCirc: cubic-bezier(.785, .135, .150, .860);
    --easeInOutBack: cubic-bezier(.680, -.550, .265, 1.550)
}

#mailform .button_button__AjG4y[data-format=fill] {
    position: relative;
    margin: 30.5px auto 0;
    max-width: 330px;
}

#mailform .button_button__AjG4y[data-format=fill] input:hover span {
    color: #0E05A2;
}

#mailform .button_button__AjG4y[data-format=fill] input {
    border: 0px solid #ccc;
    background: #1309BC;
    /* margin: auto; */
    color: #fff;
    cursor: pointer;
    padding: 20px;
    font-size: 14px;
}

#mailform .button_button__AjG4y[data-format=fill] input:hover {
    background: #1309BC;
}

#mailform .button_button__AjG4y[data-icon=arrowRight] a:hover:before {
    z-index: 9;
    top: 47%;
}

#mailform .button_button__AjG4y[data-icon=arrowRight]:before {
    content: "";
    right: 50px;
    height: 5px;
    width: 25.81px;
    background-size: cover;
    display: block;
    position: absolute;
    right: 30px;
    top: 50%;
    transform: translateY(-50%);
}

#mailform .button_button__AjG4y[data-format=fill] input:hover span {
    color: #fff;
}

#mailform .button_button__AjG4y[data-format=fill] {
    transition: .5s var(--easeOutQuart);
}

#mailform .button_button__AjG4y[data-icon=arrowRight]:hover:before {
    animation: button__hoverArrowRight__5qKJ1 var(--easeInOutCirc) .5s forwards;
    top: 47%;
    transform: translateY(-50%);
}

.btn01 input {
    font-size: 14px;
}


/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */


/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

@media screen and (min-width:768px) {
    /* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
    /* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
    .privacy_check input {
        margin: 0!important;
    }
    .privacy_check label {
        font-size: 16px;
    }
    .privacy_text {
        margin-top: 30px;
        font-size: 16px;
        text-align: center;
        line-height: calc(28 / 16);
        letter-spacing: 0.02em;
    }
    table.mailform tr th {
        font-size: 16px;
    }
    #mailform .btn01 {
        max-width: 220px;
    }
    #cover {
        background: url(../img/inner/contact/cover.jpg)no-repeat center;
        background-size: cover;
    }
    .privacy_check input {
        margin-top: 0px;
    }
    section#contact1 {
        padding: 88px 25px 0;
    }
    form#mailform {
        margin-top: 50px;
    }
    #contact .txt {
        font-size: 16px;
    }
    table.mailform tr th span {
        margin-right: 20px;
    }
    table.mailform tr {
        padding: 35px 0;
        flex-flow: row;
        align-items: center;
    }
    table.mailform tr td input {
        max-width: 560px;
        padding: 20px 20px;
        margin-top: 0;
    }
    table.mailform tr td input.size1 {
        max-width: 250px;
    }
    table.mailform tr td input.size2 {
        max-width: 180px;
    }
    td input[type="button"] {
        padding: 16px!important;
        font-size: 14px;
        max-width: 182px!important;
        margin: 0 0 0 20px;
        margin-top: 0px!important;
    }
    table.mailform tr td textarea {
        max-width: 560px;
        padding: 22px 20px;
        border-radius: 3px;
        margin-top: 0;
    }
    th.contact_content {
        padding-top: 15px;
    }
    .privacy_check {
        margin-top: 80px;
        align-items: center;
    }
    .button_button__AjG4y {
        max-width: 240px;
        width: 100%;
    }
    .button_button__AjG4y[data-format=fill] input span,
    .button_button__AjG4y[data-format=fill] button span {
        font-size: 12px;
        max-width: 118px;
    }
    .button_button__AjG4y[data-format=fill] input,
    .button_button__AjG4y[data-format=fill] button {
        border-radius: 50px;
        padding: 20.5px 0 20.5px;
    }
    .button_button__AjG4y[data-icon=arrowRight] a:before,
    .button_button__AjG4y[data-icon=arrowRight] button:before {
        content: "";
        right: 50px;
        height: 5px;
        width: 25.81px;
        background-size: cover;
    }
    #mailform .button_button__AjG4y[data-format=fill] {
        position: relative;
        margin: 45.5px auto 0;
        max-width: 240px;
    }
    #mailform .btn01 {
        margin: 45px auto 0;
    }
    #contact1 .wrap {
        padding: 0 30px;
    }
    /* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */
}


/* min-width: 768px ここまで */


/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */