@charset "UTF-8";
body {
    padding-bottom: 130px;
}
.header_logo {
    padding-bottom: 0;
}
.header_in {
    padding-bottom: 0;
}
#Contents {
    border: none;
}
.form_wrap {
    margin-bottom: 0;
}
body.is-confirm .form_wrap {
    width: 750px;
    border: none;
    padding: 0;
}
.form_btn {
    margin: 60px 0 0 0;
}
body.is-confirm .form_btn {
    margin: 40px 0 0 0;
}
.form-btn {
    width: 370px;
    height: 80px;
}
.form-btn.is-ok + .form-btn.is-back {
    margin-top: 40px;
}
.form-btn a {
    position: relative;
    font-size: 28px;
    font-weight: bold;
    line-height: 80px;
    letter-spacing: -0.03em;
    box-sizing: border-box;
}
.form-btn.is-check a,
.form-btn.is-ok a,
body.contact .form-btn.is-ok a {
    color: #fff;
    background: #00c189;
    padding: 0 20px 0 0;
}
.form-btn.is-back a {
    color: #00c189;
    background: #c3f5d3;
    padding: 0 0 0 20px;
}
.form-btn a:before {
    content: "";
    position: absolute;
    display: block;
    top: 50%;
    z-index: 10;
}
.form-btn.is-check a:before {
    width: 52px;
    height: 38px;
    right: 10px;
    margin-top: -19px;
    background: url("/assets/images/form/icn_pointing.png") no-repeat center center;
    background-size: 100% auto;
}
.form-btn.is-ok a:before {
    width: 38px;
    height: 32px;
    right: 20px;
    margin-top: -16px;
    background: url("/assets/images/form/icn_send.png") no-repeat center center;
    background-size: 100% auto;
}
.form-btn.is-back a:before {
    width: 37px;
    height: 31px;
    left: 20px;
    margin-top: -14px;
    background: url("/assets/images/form/icn_back.png") no-repeat center center;
    background-size: 100% auto;
}
.form_btm {
    padding: 0;
    margin: 0;
    border-top: 1px solid #fff;
}
.formfix_lnk {
    position: fixed;
    bottom: 30px;
    right: 30px;
    z-index: 99;
}
.formfix_lnk a {
    display: flex;
    align-items: center;
    width: 100%;
    height: 100%;
}
.formfix_img {
    padding-right: 20px;
}
.formfix_img img {
    width: 60px;
    height: auto;
}
.formfix-txt {
    position: relative;
    font-size: 13px;
    font-weight: 500;
    width: 180px;
    padding: 8px;
    border: 3px solid #149e70;
    border-radius: 15px;
    background: #dbf3ec;
}
.formfix-txt:before,
.formfix-txt:after {
    content: "";
    position: absolute;
    display: block;
    width: 0;
    height: 0;
    transform: rotate(-90deg);
}
.formfix-txt:before {
    top: 13px;
    left: -20px;
    border-top: 0;
    border-right: 20px solid transparent;
    border-bottom: 20px solid #149e70;
    border-left: 0;
    z-index: 10;
}
.formfix-txt:after {
    top: 10px;
    left: -13px;
    border-top: 0;
    border-right: 20px solid transparent;
    border-bottom: 20px solid #dbf3ec;
    border-left: 0;
    z-index: 11;
}
.form_end-btn {
    margin: 30px 0 0 0;
}
/* 20251001 */
.form_box .form_ct.is-ver2 {
    display: flex;
    flex-wrap: wrap;
}
.form_radio.is-reason {
    padding-right: 20px;
    margin-top: 10px !important;
}
.form_radio.is-reason input[type="radio"]:checked + label:after {
    background: #149e70;
}
.form_radio.is-reason:last-child {
    padding-right: 0;
}
.c-pc {
    display: block;
}
.c-sp {
    display: none;
}
.c-pc-in {
    display: inline;
}
.c-sp-in {
    display: none;
}
@media screen and (min-width: 767px) {
    .form-btn a:hover {
        opacity: 0.8;
        text-decoration: none;
    }
    .formfix_lnk a:hover {
        text-decoration: none;
    }
    .formfix_lnk a:hover .formfix-txt {
        color: #fff;
        background: #149e70;
    }
    .formfix_lnk a:hover .formfix-txt:after {
        border-bottom: 20px solid #149e70;
    }
    .form_end-txt a:hover {
        text-decoration: underline;
    }
    .form_end-btn a:hover {
        text-decoration: none;
    }
    .form_radio.is-reason:nth-child(-n+4) {
        margin-top: 0 !important;
    }
}
@media screen and (max-width: 767px) {
    body {
        padding-bottom: 130px;
        font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    }
    body.is-confirm {
        padding-bottom: 80px;
    }
    header {
        display: block;
        width: 100%;
    }
    .header_wrap {
        display: flex;
        align-items: center;
        padding: 10px;
    }
    .header_logo {
        padding: 0;
    }
    .header_logo a {
        display: block;
        line-height: 1;
    }
    .header_logo img {
        width: 60px;
        height: auto;
    }
    .header_in {
        padding: 0;
    }
    .header-copy {
        font-size: 11px;
    }
    .header-info {
        font-size: 10px;
    }
    .form_ttl {
        margin-top: 0;
        padding: 0 15px;
        box-sizing: border-box;
    }
    .form-txt {
        font-size: 14px;
        margin: 10px 15px;
    }
    .form-txt a {
        font-size: 14px;
    }
    .form_btn {
        margin: 40px 0 0 0;
        padding: 0 15px;
    }
    body.is-confirm .form_btn {
        margin: 0;
        padding: 30px 15px 0 15px;
    }
    .form-btn {
        width: 100%;
        max-width: 345px;
        height: 70px;
    }
    body.is-confirm .form-btn.is-ok + .form-btn.is-back {
        margin-top: 30px;
    }
    .form-btn a {
        font-size: 22px;
        line-height: 70px;
        letter-spacing: 0;
    }
    .form-btn a:hover {
        text-decoration: none;
    }
    .form-btn.is-check a,
    .form-btn.is-ok a,
    body.contact .form-btn.is-ok a {
        padding: 0 10px 0 0;
    }
    .form-btn.is-back a {
        padding: 0 0 0 10px;
    }
    .form-btn.is-check a:before {
        width: 39px;
        height: 29px;
        right: 10px;
        margin-top: -15px;
    }
    .form-btn.is-ok a:before {
        width: 29px;
        height: 24px;
        right: 15px;
        margin-top: -13px;
    }
    .form-btn.is-back a:before {
        width: 28px;
        height: 23px;
        left: 15px;
        margin-top: -12px;
    }
    .form_in {
        font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
        margin: 20px 0 0 0;
    }
    body.is-confirm .form_in {
        margin: 20px 15px 0 15px;
    }
    .form_label {
        font-size: 15px;
        padding: 10px 15px;
    }
    .form_box dt {
        color: #333;
        padding: 14px 15px;
    }
    .form_box dt .is-his::after {
        padding: 3px 8px;
        border-radius: 8px;
        background: #AA0000
    }
    .form_box .form_ct {
        padding: 20px 15px;
    }
    .form_box input {
        height: 40px;
        border: 1px solid #cccccc;
    }
    .form_box select {
        height: 40px;
        border: 1px solid #cccccc;
    }
    textarea {
        padding: 10px;
        border: 1px solid #cccccc;
    }
    .form_box .error {
        font-size: 14px;
    }
    .pop_in {
        padding: 20px;
    }
    .form_box select.tourtime {
        width: 100%;
    }
    .form_tour-txt {
        margin-top: 0;
    }
    body.is-confirm .form_wrap {
        width: 100%;
        padding: 20px 0 0 0;
        margin: 0 auto;
    }
    body.is-confirm .form_top {
        margin: 20px 13px 0 13px;
        padding: 15px;
    }
    .form_end {
        margin:  20px 15px 0 15px;
    }
    .formfix_lnk {
        bottom: 20px;
        right: 10px;
    }
    .formfix_img {
        padding-right: 13px;
    }
    .formfix_img img {
        width: 50px;
    }
    .formfix-txt {
        font-size: 13px;
        width: 156px;
        padding: 8px 10px;
        border: 2px solid #149e70;
        border-radius: 8px;
    }
    .formfix-txt:before {
        top: 11px;
        left: -13px;
        border-right: 12px solid transparent;
        border-bottom: 12px solid #149e70;
    }
    .formfix-txt:after {
        top: 9px;
        left: -8px;
        border-right: 12px solid transparent;
        border-bottom: 12px solid #dbf3ec;
    }
    .formfix_lnk a:hover {
        text-decoration: none;
    }
    .picker {
        width: calc(100% - 130px);
        z-index: 99;
    }
    .picker__button--today,
    .picker__button--clear,
    .picker__button--close {
        min-width: 82px;
    }
    .picker th.picker__weekday {
        display: table-cell;
        width: 14.285714286%;
        font-size: .75em;
        padding: 0;
        padding-bottom: .25em;
        color: #999;
        font-weight: 500;
        text-align: center;
        vertical-align: inherit;
        background: #fff;
        border: none;
    }
    .picker td {
        display: table-cell;
        font-size: 16px;
        border: none;
    }
    .picker__button--close:before {
        top: 0.2em;
    }
    textarea {
        font-size: 16px;
    }
    .form_agree {
        padding: 20px 15px;
    }
    /* 20251001 */
    .form_radio.is-reason {
        width: 50%;
        padding-right: 0;
    }
    .form_radio.is-reason:nth-child(-n+2) {
        margin-top: 0 !important;
    }
    .c-pc {
        display: none;
    }
    .c-sp {
        display: block;
    }
    .c-pc-in {
        display: none;
    }
    .c-sp-in {
        display: inline;
    }
}
