﻿.formBlock .monospaced,
#form_block .monospaced {
    width     : 450px;
    max-width : 90%;
}
#contact .mainImg {
    background-image : url("/wp/wp-content/themes/wp-templ/assets/img/contact/img_main.jpg");
}
@media (max-width: 767px) {
    #contact .mainImg {
        background-image : url("/wp/wp-content/themes/wp-templ/assets/img/contact/img_main_sp.jpg");
    }
}
#contact.step-confirm .h-logo {
    pointer-events : none;
}
#contact.indexThx .mainImg, #contact.step-confirm .mainImg {
    margin-bottom : 0;
}
#contact .errMsg {
    margin-left    : 1em;
    padding-bottom : 1px;
    display        : block;
    line-height    : 1.4;
    text-indent    : -.9em;
}
#contact .formError {
    padding-bottom : 13px;
    display        : block;
}
#contact .fixed {
    padding-bottom : 0px;
}
#contact .formError .formErrorClose {
    border                : solid #252525 2px;
    z-index               : 2;
    -o-box-shadow         : 1px -1px 3px #888;
    -ms-box-shadow        : 1px -1px 3px #888;
    -moz-box-shadow       : 1px -1px 3px #888;
    -webkit-box-shadow    : 1px -1px 3px #888;
    border-radius         : 9px 9px 9px 9px;
    -o-border-radius      : 9px 9px 9px 9px;
    -ms-border-radius     : 9px 9px 9px 9px;
    -moz-border-radius    : 9px 9px 9px 9px;
    -webkit-border-radius : 9px 9px 9px 9px;
    cursor                : pointer;
    display               : block;
    line-height           : middle;
    text-align            : center;
    font-weight           : bold;
    background            : #333;
    color                 : #efefef;
    right                 : -4px;
    top                   : -4px;
    position              : absolute;
    height                : 16px;
    width                 : 16px;
    box-shadow            : 1px -1px 3px #888;
}
#contact .formError .formErrorClose:hover {
    background : #666;
}
#contact .fixed .formErrorClose {
    display : none;
}
#contact .formError .formErrorContent {
    padding               : 6px 10px;
    -ms-border-radius     : 3px;
    -o-box-shadow         : 0px 0px 6px #888;
    -ms-box-shadow        : 0px 0px 6px #888;
    -moz-box-shadow       : 0px 0px 6px #888;
    -webkit-box-shadow    : 0px 0px 6px #888;
    border-radius         : 3px;
    -o-border-radius      : 3px;
    -moz-border-radius    : 3px;
    width                 : 180px;
    -webkit-border-radius : 3px;
    z-index               : 1;
    margin                : 0 0;
    font-size             : 11px;
    background            : #252525;
    color                 : #fff;
    position              : relative;
    box-shadow            : 0px 0px 6px #888;
}
#contact .fixed .formErrorContent {
    margin-top            : .5em;
    background            : #f60;
    margin                : 0 0 30px 0;
    -webkit-border-radius : none;
    -moz-border-radius    : none;
    -ms-border-radius     : none;
    -o-border-radius      : none;
    border-radius         : none;
    -webkit-box-shadow    : none;
    -moz-box-shadow       : none;
    -ms-box-shadow        : none;
    -o-box-shadow         : none;
    box-shadow            : none;
}
#contact .fadeOut {
    opacity : .2;
    filter  : alpha(opacity=20);
}
#contact .formError .formErrorArrow {
    width    : 15px;
    height   : 15px;
    position : absolute;
    bottom   : 0;
    left     : 20px;
    margin   : 0 0 30px 0;
    z-index  : 0;
}
#contact .fixed .formErrorArrow {
    display : none;
}
#contact .formError .formErrorArrowBottom {
    margin : -6px;
    top    : 0;
}
#contact .fixed .formErrorArrowBottom {
    display : none;
}
#contact .formError .formErrorArrow div {
    margin             : 0 auto;
    display            : block;
    height             : 1px;
    background         : #252525;
    line-height        : 0px;
    font-size          : 0px;
    -webkit-box-shadow : 0px 2px 3px #888;
    -moz-box-shadow    : 0px 2px 3px #888;
    -ms-box-shadow     : 0px 2px 3px #888;
    -o-box-shadow      : 0px 2px 3px #888;
    box-shadow         : 0px 2px 3px #888;
}
#contact .formError .formErrorArrowBottom div {
    -webkit-box-shadow : none;
    -moz-box-shadow    : none;
    -ms-box-shadow     : none;
    -o-box-shadow      : none;
    box-shadow         : none;
}
#contact .formError .formErrorArrow .line10 {
    width : 19px;
}
#contact .formError .formErrorArrow .line9 {
    width : 17px;
}
#contact .formError .formErrorArrow .line8 {
    width : 15px;
}
#contact .formError .formErrorArrow .line7 {
    width : 13px;
}
#contact .formError .formErrorArrow .line6 {
    width : 11px;
}
#contact .formError .formErrorArrow .line5 {
    width : 9px;
}
#contact .formError .formErrorArrow .line4 {
    width : 7px;
}
#contact .formError .formErrorArrow .line3 {
    width : 5px;
}
#contact .formError .formErrorArrow .line2 {
    width : 3px;
}
#contact .formError .formErrorArrow .line1 {
    width : 1px;
}
#contact .hid_url {
    display : none;
}
#contact form p.test {
    position : relative;
    color    : #C1C0BC;
}
#contact form p.test label {
    position    : absolute;
    top         : 3px;
    left        : 10px;
    font-weight : normal;
}
#contact form p.test br {
    display : none;
}
#contact .tableContact {
    width      : 100%;
    margin-top : 20px;
    text-align : left;
}
#contact .tableContact tr:first-child td {
    font-size : 15px;
    font-size : 1.5rem;
}
@media (max-width: 767px) {
    #contact .tableContact tr:first-child td {
        font-size : 14px;
        font-size : 1.4rem;
    }
}
#contact .tableContact td, #contact .tableContact th {
    padding        : 20px 0;
    vertical-align : top;
}
@media (max-width: 767px) {
    #contact .tableContact td{
        padding-left : 10%;
    }
    #contact .tableContact td .monospaced{
        width : 90%;
    }
    #contact .tableContact td .mwform-zip-field input[type=text]:nth-child(1){
        width : calc( 38% - 19px );
    }
    #contact .tableContact td .mwform-zip-field input[type=text]:nth-child(2){
        width : calc( 56% - 19px );
    }
    #contact .tableContact td .mwform-tel-field input[type=text]{
        width : 28%;
    }
    #contact .tableContact td, #contact .tableContact th {
        display     : block;
        width       : 100%;
        padding-top : 0;
    }
}
@media (min-width: 768px) {
    #contact .tableContact .first-option th, #contact .tableContact .first-option td {
        padding-bottom : 40px;
    }
}
@media (max-width: 767px) {
    #contact .tableContact .first-option td {
        padding-bottom : 30px;
    }
}
@media (min-width: 768px) {
    #contact .tableContact .content-item th, #contact .tableContact .content-item td {
        padding-top : 47px !important;
    }
}
@media (max-width: 767px) {
    #contact .tableContact .content-item th {
        padding-top : 30px;
    }
    #contact .tableContact .content-item td {
        padding-bottom : 30px;
    }
}
#contact .tableContact th {
    width         : 200px;
    font-weight   : bold;
    font-size     : 15px;
    font-size     : 1.4rem;
    padding-right : 28px;
    text-align    : left;
}
@media (min-width: 768px) {
    #contact .tableContact th {
        padding-top : 20px;
    }
    #news_event #contact .tableContact th {
        width         : 155px;
        padding-right : 5px;
    }
}
@media (max-width: 767px) {
    #contact .tableContact th {
        padding   : 0 0 5px;
        font-size : 13px;
        font-size : 1.3rem;
    }
}
#contact .tableContact th>p {
    display                 : -webkit-box;
    display                 : -moz-box;
    display                 : -ms-flexbox;
    display                 : -webkit-flex;
    display                 : flex;
    -webkit-align-items     : center;
    -moz-align-items        : center;
    -ms-align-items         : center;
    align-items             : center;
    -webkit-justify-content : space-between;
    -moz-justify-content    : space-between;
    -ms-justify-content     : space-between;
    justify-content         : space-between;
}
@media (max-width: 767px) {
    #contact .tableContact th>p {
        -webkit-justify-content : flex-start;
        -moz-justify-content    : flex-start;
        -ms-justify-content     : flex-start;
        justify-content         : flex-start;
    }
}
#contact .tableContact th>p em {
    font-style              : normal;
    -webkit-align-items     : center;
    -o-border-radius        : 2px;
    -ms-border-radius       : 2px;
    -moz-border-radius      : 2px;
    -webkit-border-radius   : 2px;
    justify-content         : center;
    -ms-justify-content     : center;
    -moz-justify-content    : center;
    -webkit-justify-content : center;
    align-items             : center;
    -ms-align-items         : center;
    -moz-align-items        : center;
    display                 : flex;
    font-weight             : normal;
    display                 : -webkit-flex;
    display                 : -ms-flexbox;
    display                 : -moz-box;
    display                 : -webkit-box;
    line-height             : 1;
    height                  : 18px;
    width                   : 32px;
    color                   : #fff;
    background              : #A30000;
    font-size               : 1.1rem;
    font-size               : 11px;
    border-radius           : 2px;
}
@media (max-width: 767px) {
    #contact .tableContact th>p em {
        margin-left : 10px;
    }
}
#contact .tableContact th>p em.no-required,
#contact .tableContact th em.no-required,
#contact .tableContact td p em.no-required {
    background : #727171;
}
@media (min-width: 768px) {
    #contact .tableContact th.ttl-page {
        padding-top : 17px !important;
    }
}
#contact .tableContact td {
    position : relative;
}
#contact .tableContact input[type="tel"], #contact .tableContact input[type="text"], #contact .tableContact input[type="text"], #contact .tableContact input[type="email"], #contact .tableContact input[type="number"], #contact .tableContact input[type="url"] {
    appearance            : none;
    font-size             : 1.2rem;
    border                : #000000 solid 1px;
    color                 : #000;
    padding               : 10px;
    height                : 40px;
    letter-spacing        : 0.05em;
    border-radius         : 0px;
}
#contact .tableContact input[type="tel"]::-webkit-input-placeholder, #contact .tableContact input[type="email"]::-webkit-input-placeholder, #contact .tableContact input[type="number"]::-webkit-input-placeholder, #contact .tableContact input[type="url"]::-webkit-input-placeholder {
    color : #b2b2b2;
}
#contact .tableContact input[type="tel"]::-moz-placeholder, #contact .tableContact input[type="text"]::-moz-placeholder, #contact .tableContact input[type="email"]::-moz-placeholder, #contact .tableContact input[type="number"]::-moz-placeholder, #contact .tableContact input[type="url"]::-moz-placeholder {
    color : #b2b2b2;
}
#contact .tableContact input[type="tel"]:-ms-input-placeholder, #contact .tableContact input[type="text"]:-ms-input-placeholder, #contact .tableContact input[type="email"]:-ms-input-placeholder, #contact .tableContact input[type="number"]:-ms-input-placeholder, #contact .tableContact input[type="url"]:-ms-input-placeholder {
    color : #b2b2b2;
}
#contact .tableContact input[type="tel"]:-moz-placeholder, #contact .tableContact input[type="text"]:-moz-placeholder, #contact .tableContact input[type="email"]:-moz-placeholder, #contact .tableContact input[type="number"]:-moz-placeholder, #contact .tableContact input[type="url"]:-moz-placeholder {
    color : #b2b2b2;
}
#contact .tableContact input[type=number]::-webkit-outer-spin-button, #contact .tableContact input[type=number]::-webkit-inner-spin-button {
    -webkit-appearance : none;
    margin             : 0;
}
#contact .tableContact input[type=number] {
    -moz-appearance : textfield;
}
#contact .tableContact .size01 {
    width : 247px;
}
@media (max-width: 767px) {
    #contact .tableContact .size01 {
        width : 82%;
    }
}
#contact .tableContact .size02 {
    width : 78px;
}
@media (max-width: 767px) {
    #contact .tableContact .size02 {
        width : 73px;
    }
}
#contact .tableContact .size03 {
    width : 121px;
}
@media (max-width: 767px) {
    #contact .tableContact .size03 {
        width : 110px;
    }
}
#contact .tableContact .size04 {
    width : 167px;
}
@media (max-width: 767px) {
    #contact .tableContact .size04 {
        width : 82%;
    }
}
#contact .tableContact .size05 {
    width : 300px;
}
@media (max-width: 767px) {
    #contact .tableContact .size05 {
        width : 100%;
    }
}
#contact .tableContact select {
    -webkit-appearance    : none;
    -moz-appearance       : none;
    appearance            : none;
    background            : #fff url("/wp/wp-content/themes/wp-templ/assets/img/contact/ico_arrow.svg") no-repeat right 16px center/12px 8px;
    height                : 40px;
    padding               : 10px;
    border                : #000000 solid 1px;
    -webkit-border-radius : 0px;
    -moz-border-radius    : 0px;
    -ms-border-radius     : 0px;
    -o-border-radius      : 0px;
    border-radius         : 0px;
}
/*
#contact .tableContact textarea {
    height                : 120px;
    width                 : 100%;
    border                : #000000 solid 1px;
    padding               : 10px;
    -webkit-appearance    : none;
    -moz-appearance       : none;
    appearance            : none;
    border-radius         : none;
    -webkit-border-radius : 0px;
    -moz-border-radius    : 0px;
    -ms-border-radius     : 0px;
    -o-border-radius      : 0px;
    border-radius         : 0px;
}
*/
#contact .tableContact textarea::placeholder {
    font-size: 1.2rem;
}
@media (max-width: 767px) {
    #contact .tableContact textarea {
        height : 137px;
    }
}
#contact .tableContact #datepicker {
    background : #fff url("/wp/wp-content/themes/wp-templ/assets/img/contact/ico_date.svg") no-repeat right 10px center/20px 20px;
}
#contact .tableContact .chkcheckbox {
    display           : -webkit-box;
    display           : -moz-box;
    display           : -ms-flexbox;
    display           : -webkit-flex;
    display           : flex;
    -webkit-flex-wrap : wrap;
    -moz-flex-wrap    : wrap;
    -ms-flex-wrap     : wrap;
    flex-wrap         : wrap;
    max-width         : 260px;
    margin-bottom     : 5px;
}
#contact .tableContact .chkcheckbox label {
    margin-top          : 10px;
    display             : -webkit-box;
    display             : -moz-box;
    display             : -ms-flexbox;
    display             : -webkit-flex;
    display             : flex;
    -webkit-align-items : center;
    -moz-align-items    : center;
    -ms-align-items     : center;
    align-items         : center;
}
#contact .tableContact .chkcheckbox label:nth-child(1), #contact .tableContact .chkcheckbox label:nth-child(2) {
    margin-top : 0;
}
#contact .tableContact .chkcheckbox label input {
    border-radius : 0;
    margin-right  : 5px;
}
#contact .tableContact .txt-note {
    font-size    : 10px;
    font-size    : 1rem;
    line-height  : 18px;
    line-height  : 1.8em;
    text-indent  : -12px;
    padding-left : 12px;
}
#contact .tableContact .zipcode {
    display             : -webkit-box;
    display             : -moz-box;
    display             : -ms-flexbox;
    display             : -webkit-flex;
    display             : flex;
    -webkit-align-items : center;
    -moz-align-items    : center;
    -ms-align-items     : center;
    align-items         : center;
}
#contact .tableContact .zipcode span {
    padding-right : 5px;
}
#contact .tableContact .zipcode em {
    padding : 0 5px;
}
#contact .tableContact .add {
    margin-bottom : 5px;
}
#contact .tableContact .add input:not(:last-child) {
    margin-bottom : 15px;
}
@media (max-width: 767px) {
    #contact .tableContact .add input {
        width : 100%;
    }
}
.contactform {
    background : #F1F1F1;
    padding    : 73px 15px 92px;
}
@media (max-width: 767px) {
    .contactform {
        padding : 50px 10px 78px;
    }
}
.contactform .formBlock {
    max-width  : 840px;
    margin     : 0 auto;
    background : #fff;
    padding    : 68px 15px 80px;
}
@media (max-width: 767px) {
    .contactform .formBlock {
        padding : 25px 10px 50px;
    }
}
.contactform .formBlock-inner {
    max-width : 670px;
    margin    : 0 auto;
}
.contactform .formBlock-inner .ttl {
    text-align     : center;
    font-weight    : bold;
    font-size      : 20px;
    font-size      : 2rem;
    letter-spacing : 0.05em;
    margin-bottom  : 14px;
}
@media (max-width: 767px) {
    .contactform .formBlock-inner .ttl {
        margin-bottom : 17px;
        font-size     : 18px;
        font-size     : 1.8rem;
    }
}
.contactform .formBlock-inner .txtContact {
    text-align     : center;
    font-size      : 15px;
    font-size      : 1.5rem;
    line-height    : 24px;
    line-height    : 1.71429em;
    letter-spacing : 1px;
    margin-bottom  : 30px;
}
@media (max-width: 767px) {
    .contactform .formBlock-inner .txtContact {
        margin-bottom : 27px;
    }
}
.contactform .formBlock-inner .txt-box {
    padding          : 20px;
    margin-top       : 10px;
    font-size        : 12px;
    font-size        : 1.2rem;
    line-height      : 22px;
    line-height      : 1.83333em;
    letter-spacing   : .05em;
    background-color : #f1f1f1;
}
.contactform .formBlock-inner .txt-box p:not(:last-child) {
    margin-bottom : 20px;
}
@media (max-width: 767px) {
    .contactform .formBlock-inner .txt-box {
        padding        : 15px;
        margin-top     : 24px;
        font-size      : 10px;
        font-size      : 1rem;
        line-height    : 16px;
        line-height    : 1.6em;
        letter-spacing : .05em;
    }
}
.contactform .formBlock-inner .txt-contact1 {
    margin-top : 45px;
}
@media (min-width: 768px) {
    .contactform .formBlock-inner .txt-contact1 {
        display           : -webkit-box;
        display           : -moz-box;
        display           : -ms-flexbox;
        display           : -webkit-flex;
        display           : flex;
        -webkit-flex-wrap : wrap;
        -moz-flex-wrap    : wrap;
        -ms-flex-wrap     : wrap;
        flex-wrap         : wrap;
    }
}
@media (max-width: 767px) {
    .contactform .formBlock-inner .txt-contact1 {
        margin-top : 32px;
    }
}
.contactform .formBlock-inner .txt-contact1 .txt {
    font-weight : bold;
    font-size   : 15px;
    font-size   : 1.5rem;
}
@media (min-width: 768px) {
    .contactform .formBlock-inner .txt-contact1 .txt {
        padding-left : 10px;
        width        : 125px;
    }
}
@media (max-width: 767px) {
    .contactform .formBlock-inner .txt-contact1 .txt {
        font-size     : 13px;
        font-size     : 1.3rem;
        margin-bottom : 7px;
    }
}
.contactform .formBlock-inner .txt-contact1 .desc {
    font-size      : 12px;
    font-size      : 1.2rem;
    line-height    : 24px;
    line-height    : 2em;
    letter-spacing : .05em;
}
@media (min-width: 768px) {
    .contactform .formBlock-inner .txt-contact1 .desc {
        width : calc(100% - 125px);
    }
}
@media (max-width: 767px) {
    .contactform .formBlock-inner .txt-contact1 .desc {
        font-size      : 10px;
        font-size      : 1rem;
        line-height    : 20px;
        line-height    : 2em;
        letter-spacing : .05em;
    }
}
.contactform .formBlock-inner .txt-contact1 .desc a {
    text-decoration : underline;
}
.contactform .formBlock-inner .txt-contact1 .desc a:hover {
    text-decoration : none;
}
.contactform .formBlock-inner .txt-contact1 .desc .chk-confirm {
    margin-top : 10px;
}
@media (max-width: 767px) {
    .contactform .formBlock-inner .txt-contact1 .desc .chk-confirm {
        font-size      : 13px;
        font-size      : 1.3rem;
        line-height    : 16px;
        line-height    : 1.23077em;
        letter-spacing : .05em;
        margin-top     : 20px;
    }
}
.contactform .formBlock-inner .txt-contact1 .desc .chk-confirm label {
    display             : -webkit-box;
    display             : -moz-box;
    display             : -ms-flexbox;
    display             : -webkit-flex;
    display             : flex;
    -webkit-align-items : center;
    -moz-align-items    : center;
    -ms-align-items     : center;
    align-items         : center;
}
.contactform .formBlock-inner .txt-contact1 .desc .chk-confirm label input {
    border-radius : 0;
    margin-right  : 5px;
}
.contactform .formBlock-inner .txt-contact2 {
    max-width      : 525px;
    margin         : 50px auto 0;
    font-size      : 12px;
    font-size      : 1.2rem;
    line-height    : 21px;
    line-height    : 1.75em;
    letter-spacing : .05em;
}
@media (max-width: 767px) {
    .contactform .formBlock-inner .txt-contact2 {
        font-size      : 10px;
        font-size      : 1rem;
        line-height    : 16px;
        line-height    : 1.6em;
        letter-spacing : .05em;
        margin-top     : 20px;
    }
}
.contactform .formBlock-inner .txt-contact2 ul {
    margin-bottom : 27px;
}
@media (max-width: 767px) {
    .contactform .formBlock-inner .txt-contact2 ul {
        margin-bottom : 17px;
    }
}
.contactform .formBlock-inner .txt-contact2 ul li {
    position     : relative;
    padding-left : 8px;
}
.contactform .formBlock-inner .txt-contact2 ul li:not(:last-child) {
    margin-bottom : 2px;
}
@media (max-width: 767px) {
    .contactform .formBlock-inner .txt-contact2 ul li:not(:last-child) {
        margin-bottom : 0px;
    }
}
.contactform .formBlock-inner .txt-contact2 ul li:after {
    content  : '・';
    color    : #000;
    position : absolute;
    top      : 2px;
    left     : 0;
}
.contactform .formBlock-inner .txt-contact2 a {
    text-decoration : underline;
}
@media only screen and (min-width: 1025px) {
    .contactform .formBlock-inner .txt-contact2 a:hover {
        text-decoration : none;
    }
}
.contactform .formBlock-inner .txt-contact2 p:not(:last-child) {
    margin-bottom : 27px;
}
@media (max-width: 767px) {
    .contactform .formBlock-inner .txt-contact2 p:not(:last-child) {
        margin-bottom : 17px;
    }
}
.contactform .formBlock-inner .btn-submit-cf {
    margin-top : 40px;
}
@media (max-width: 767px) {
    .contactform .formBlock-inner .btn-submit {
        margin-top : 45px;
    }
}
.contactform .formBlock-inner .btn-submit .darkgray-btn {
    margin      : 0 auto;
    width       : 233px;
    max-width   : 233px;
    height      : 55px;
    line-height : 55px;
    font-size   : 16px;
    font-size   : 1.6rem;
}
@media (max-width: 767px) {
    .contactform .formBlock-inner .btn-submit .darkgray-btn {
        font-size   : 12px;
        font-size   : 1.2rem;
        width       : 178px;
        max-width   : 178px;
        height      : 40px;
        line-height : 40px;
    }
}
.history-back {
    text-align : center;
    margin-top : 30px;
}
.history-back a {
    font-size       : 14px;
    font-size       : 1.4rem;
    text-decoration : underline;
}
@media only screen and (min-width: 1025px) {
    .history-back a:hover {
        text-decoration : none;
    }
}
.confirmform .formBlock-inner .ttl {
    margin-bottom : 60px;
}
@media (max-width: 767px) {
    .confirmform .formBlock-inner .ttl {
        margin-bottom : 30px;
    }
}
.indexThx .containerIndexThx {
    max-width : 600px;
    margin    : 0 auto;
}
.indexThx .containerIndexThx .txt-head {
    font-weight : bold;
    font-size   : 18px;
    font-size   : 1.8rem;
    margin-top  : 50px;
}
@media (max-width: 767px) {
    .indexThx .containerIndexThx .txt-head {
        margin-top : 20px;
        font-size  : 16px;
        font-size  : 1.6rem;
        text-align : center;
    }
}
.indexThx .containerIndexThx>p:not(:last-child) {
    margin-bottom : 30px;
}
@media (max-width: 767px) {
    .indexThx .containerIndexThx>p:not(:last-child) {
        margin-bottom : 20px;
    }
}
.indexThx .containerIndexThx a {
    text-decoration : underline;
}
@media only screen and (min-width: 1025px) {
    .indexThx .containerIndexThx a:hover {
        text-decoration : none;
    }
}
.indexThx .containerIndexThx .btn-back-top .darkgray-btn {
    margin          : 0 auto;
    text-decoration : none;
}
.indexThx .containerIndexThx .btn-back-top .darkgray-btn span {
    padding-left : 0;
}
.indexThx .containerIndexThx .btn-back-top .darkgray-btn span:before {
    display : none;
}
.office-list {
    max-width : 996px;
    margin    : 0 auto 110px;
}
@media (max-width: 767px) {
    .office-list {
        margin : 0 5% 60px;
    }
}
@media (min-width: 768px) {
    .office-list>ul {
        display                 : -webkit-box;
        display                 : -moz-box;
        display                 : -ms-flexbox;
        display                 : -webkit-flex;
        display                 : flex;
        -webkit-flex-wrap       : wrap;
        -moz-flex-wrap          : wrap;
        -ms-flex-wrap           : wrap;
        flex-wrap               : wrap;
        -webkit-justify-content : space-between;
        -moz-justify-content    : space-between;
        -ms-justify-content     : space-between;
        justify-content         : space-between;
        margin-bottom           : 10px;
    }
}
.office-list>ul figure {
    position            : relative;
    background-position : center center;
    background-size     : cover;
    background-repeat   : no-repeat;
}
.office-list>ul figure:before {
    display     : block;
    content     : " ";
    width       : 100%;
    padding-top : 100%;
}
.office-list>ul figure>.content {
    position : absolute;
    top      : 0;
    left     : 0;
    right    : 0;
    bottom   : 0;
}
@media (max-width: 767px) {
    .office-list>ul figure {
        max-width : 198px;
        margin    : 0 auto;
    }
}
.office-list>ul .ttl {
    font-weight    : bold;
    font-size      : 16px;
    font-size      : 1.6rem;
    line-height    : 25px;
    line-height    : 1.5625em;
    letter-spacing : .13em;
}
@media (max-width: 767px) {
    .office-list>ul .ttl {
        font-size      : 14px;
        font-size      : 1.4rem;
        line-height    : 21px;
        line-height    : 1.5em;
        letter-spacing : .13em;
    }
}
.office-list>ul .sub-ttl {
    font-weight   : bold;
    font-size     : 16px;
    font-size     : 1.6rem;
    margin-bottom : 6px;
}
@media (max-width: 767px) {
    .office-list>ul .sub-ttl {
        font-size : 14px;
        font-size : 1.4rem;
    }
}
.office-list>ul .desc {
    font-size   : 12px;
    font-size   : 1.2rem;
    line-height : 20px;
    line-height : 1.66667em;
}
@media (min-width: 768px) {
    .office-list-1 li {
        width : 30%;
    }
}
.office-list-1 li .ttl {
    text-align : center;
    margin     : 28px 0 20px;
}
@media (max-width: 767px) {
    .office-list-1{
        display         : flex;
        justify-content : space-evenly;
    }
    .office-list-1 li{
        width : 30%;
    }
    .office-list-1 li .ttl {
        margin : 16px 0 13px;
    }
}
.office-list-1 li figure {
    position : relative;
}
.office-list-1 li figure:before {
    display     : block;
    content     : " ";
    width       : 100%;
    padding-top : 63.42282%;
}
.office-list-1 li figure>.content {
    position : absolute;
    top      : 0;
    left     : 0;
    right    : 0;
    bottom   : 0;
}
.office-list-1 li .desc {
    background : #F1F1F1;
    padding    : 23px 30px 27px;
}
@media (max-width: 767px) {
    .office-list-1 li .desc {
        padding : 20px;
    }
}
.office-list-2 {
    border-top  : 1px solid #5B5959;
    padding-top : 60px;
    margin-top  : 60px;
}
@media (max-width: 767px) {
    .office-list-2 {
        margin-top : 30px;
    }
}
@media (min-width: 768px) {
    .office-list-2 li {
        width             : 48.2%;
        display           : -webkit-box;
        display           : -moz-box;
        display           : -ms-flexbox;
        display           : -webkit-flex;
        display           : flex;
        -webkit-flex-wrap : wrap;
        -moz-flex-wrap    : wrap;
        -ms-flex-wrap     : wrap;
        flex-wrap         : wrap;
    }
}
@media (min-width: 768px) {
    .office-list-2 li figure {
        width     : 43%;
        max-width : 206px;
    }
}
@media (max-width: 767px) {
    .office-list-2 li figure {
        width     : 54%;
        max-width : 150px;
        margin    : 0 auto;
    }
}
.office-list-2 li .office-info{
    background : #F1F1F1;
}
@media (min-width: 768px) {
    .office-list-2 li .office-info {
        padding : 30px 10px 30px 10px;
    }
}
@media (min-width: 768px) {
    .office-list-2 li .office-info {
        width : 57%;
    }
}
@media (min-width: 768px) {
    .office-list-2 li .office-info .ttl {
        min-height : 75px;
    }
}
@media (max-width: 767px) {
    .office-list-2 li .office-info .ttl {
        text-align : center;
        margin     : 16px 0 13px;
    }
}
.office-list-2 li .office-info .desc {
    margin-top : 13px;
}
@media (max-width: 767px) {
    .office-list-2 li .office-info .desc {
        background : #F1F1F1;
        padding    : 20px;
        margin-top : 0;
    }
}
.office-desc{
    padding    : 24px 10px 30px 30px;
    background : #f1f1f1;
    max-width  : 550px;
    margin     : 0 auto 20px;
}
.office-desc .sub-ttl{
    font-weight    : 700;
    font-size      : 16px;
    font-size      : 1.6rem;
    line-height    : 25px;
    line-height    : 1.5625em;
    letter-spacing : .13em;
}
.office-desc h3.sub-ttl {
    margin-bottom : 13px;
}
.office-desc .desc{
    font-size   : 12px;
    font-size   : 1.2rem;
    line-height : 20px;
    line-height : 1.66667em;
}
.btn-basic {
    max-width : 480px;
    width     : 90%;
}
@media (max-width: 767px) {
    .btn-basic {
        max-width : 480px;
        margin    : 22px auto 46px;
    }
}
.tel-box {
    text-align : center;
    background : #F1F1F1;
    padding    : 26px;
    margin-top : 65px;
}
@media (max-width: 767px) {
    .tel-box {
        padding    : 24px 20px 21px;
        margin-top : 35px;
    }
}
.tel-box a {
    display    : block;
    transition : .3s;
}
@media only screen and (min-width: 1025px) {
    .tel-box a:hover {
        opacity    : .5;
        transition : .3s;
    }
    .tel-box a:hover span {
        color      : #000;
        transition : .3s;
        opacity    : 1;
    }
}
.tel-box span {
    transition     : .3s;
    display        : block;
    font-size      : 14px;
    font-size      : 1.4rem;
    letter-spacing : 0.05em;
}
@media (max-width: 767px) {
    .tel-box span {
        font-size : 13px;
        font-size : 1.3rem;
    }
}
.tel-box b {
    display        : block;
    margin-top     : 7px;
    font-weight    : bold;
    font-size      : 30px;
    font-size      : 3rem;
    line-height    : 1;
    color          : #5B5959;
    letter-spacing : 0.05em;
}
@media (max-width: 767px) {
    .tel-box b {
        font-size  : 22px;
        font-size  : 2.2rem;
        margin-top : 13px;
    }
}
.marginB_5 {
    margin-bottom : 5px;
}
.marginB_10 {
    margin-bottom : 10px;
}
.marginB_20 {
    margin-bottom : 20px;
}
#contact .tableContact select {
    background : #fff url(/wp/wp-content/themes/wp-templ/assets/img/contact/ico_arrow.svg) no-repeat right 8px center/12px 8px;
    padding    : 10px 28px 10px 10px;
}
#contact .tableContact .txt-desc {
    text-align : center;
}
#contact .tableContact .chkcheckbox {
    max-width       : 300px;
    display         : flex;
    justify-content : space-between;
    gap             : 10px;
}
@media (max-width: 767px) {
    #contact .tableContact .chkcheckbox {
        max-width : initial;
    }
}
#contact .product-item .horizontal-item {
    width : initial;
}
#contact .mw_wp_form .form_switch .horizontal-item {
    width       : 33%;
    display     : flex;
    align-items : center;
}
#contact .tableContact th em,
#contact .tableContact td p em {
    font-style      : normal;
    font-weight     : normal;
    font-size       : 1.1rem;
    background      : #A30000;
    color           : #fff;
    width           : 32px;
    height          : 18px;
    line-height     : 1;
    display         : flex;
    align-items     : center;
    justify-content : center;
    border-radius   : 2px;
    margin-top      : 5px;
    margin-left     : 10px;
}

#contact .tableContact td .reserv-date-item {
    margin-bottom : 1em;
}
.office-list-1 li figure {
    transition : 0.3s;
}
.office-list-1 li figure:hover {
    opacity : 0.7;
}
.office-list-2 li a {
    width             : 100%;
    display           : -webkit-box;
    display           : -moz-box;
    display           : -ms-flexbox;
    display           : -webkit-flex;
    display           : flex;
    -webkit-flex-wrap : wrap;
    -moz-flex-wrap    : wrap;
    -ms-flex-wrap     : wrap;
    flex-wrap         : wrap;
}
.office-list-2 li a {
    display : block;
}
.office-list-2 li a figure {
    width  : 100%;
    height : 100%;
}
@media (min-width: 768px) {
    .office-list-2 li>a {
        display   : block;
        width     : 43%;
        max-width : 206px;
    }
}
@media (max-width: 768px) {
    .office-list-2 li>a {
        width     : 54%;
        max-width : 150px;
        margin    : 0 auto;
    }
    .office-list-2 li>a {
        justify-content : center;
    }
    .office-list-2 li>a div {
        width : 100%;
    }
}
.gray03 {
    text-align : center;
}
.gray03 span {
    display        : inline-block;
    vertical-align : top;
    max-width      : 700px;
    width          : 100%;
    font-size      : 16px;
    background     : #f1f1f1;
    text-align     : center;
    padding        : 10px;
    box-sizing     : border-box;
    margin         : 25px 0;
}
@media (min-width: 768px) {
    .gray03 span br {
        display : none;
    }
}
@media (max-width: 767px) {
    .gray03 span {
        font-size : 13px;
        font-size : 1.3rem;
    }
}
.mw_wp_form .horizontal-item+.horizontal-item {
    margin-left  : 0;
    border-width : 1px 1px 0 0;
}
.form_switch {
    display         : flex;
    justify-content : center;
    gap             : 10px;
    height          : 40px;
}
.form_switch .horizontal-item label {
    width : 100%;
}
.form_switch .horizontal-item label input {
    display : none;
}
.form_switch .horizontal-item label span {
    display          : block;
    width            : 100%;
    height           : 30px;
    transition       : .3s;
    padding          : 3px 0px;
    text-align       : center;
    cursor           : pointer;
    position         : relative;
    color            : #5B5959;
    border-radius    : 0 0 0 0;
    background-color : #ddd;
    letter-spacing   : 1px;
    font-size        : 13px;
    line-height      : 30px;
}
.form_switch .horizontal-item label input:checked+span,
.form_switch .horizontal-item:first-child label input:checked+span {
    background-color : #337ab7;
    color            : #fff;
    border-color     : #337ab7;
    overflow         : hidden;
    font-size        : 14px;
    font-weight      : bold;
    line-height      : 37px;
    height           : 37px;
}
#contact .tableContact .select-check {
    justify-content : initial;
    max-width       : initial;
}
#contact .tableContact .select-check>span:not(.error) {
    border        : 1px solid #888;
    border-radius : 3px;
    margin-right  : 1em;
    overflow      : hidden;
    box-sizing    : border-box;
}
#contact .tableContact .select-check span label input[type="checkbox"] {
    display : none;
}
#contact .tableContact .select-check span label span {
    padding          : 0 10px 0 2.5em;
    display          : inline-block;
    height           : 30px;
    line-height      : 30px;
    text-align       : center;
    position         : relative;
    transition       : .3s;
    background-color : #fff;
}
#contact .tableContact .select-check span label input:checked+span {
    background-color : #337ab7;
}
#contact .tableContact .select-check span label span::after {
    position            : absolute;
    content             : "";
    height              : 16px;
    width               : 0px;
    transition          : .4s;
    transition-delay    : 0s;
    left                : 0.7em;
    background-image    : url(/wp/wp-content/themes/wp-templ/assets/img/contact/check_mark.png);
    background-size     : cover;
    background-position : left;
    top                 : 0;
    bottom              : 0;
    margin              : auto;
}
#contact .tableContact .select-check span label span::before {
    position            : absolute;
    content             : "";
    height              : 16px;
    width               : 16px;
    transition          : .3s;
    left                : 0.7em;
    opacity             : 1;
    background-image    : url(/wp/wp-content/themes/wp-templ/assets/img/contact/check_off.png);
    background-size     : cover;
    background-position : left;
    top                 : 0;
    bottom              : 0;
    margin              : auto;
}
#contact .tableContact .select-check span label input:checked+span {
    color : #fff;
}
#contact .tableContact .select-check label input:checked+span::before {
    background-image : url(/wp/wp-content/themes/wp-templ/assets/img/contact/check_on.png);
}
#contact .tableContact .select-check label input:checked+span::after {
    width            : 17px;
    transition-delay : .1s;
}
#contact .tableContact .reserv-base {
    justify-content : initial;
    max-width       : initial;
}
#contact .tableContact .reserv-base>span {
    border-radius : 3px;
}
#contact .tableContact #checkbox02.radio_table{
    margin-bottom : 10px;
}
#contact .tableContact .radio_table{
    display         : flex;
    flex-wrap       : wrap;
    justify-content : start;
    gap             : 10px;
}
#contact .tableContact .mwform-radio-field{
    display : block;
    width   : 45%;
}
#contact .tableContact #checkbox02 .mwform-radio-field{
    width : 30%;
}
#contact .tableContact .mwform-radio-field label input[type="radio"] {
    display : none;
}
#contact .tableContact .mwform-radio-field label span {
    display          : block;
    height           : 45px;
    width            : 100%;
    line-height      : 45px;
    text-align       : center;
    position         : relative;
    transition       : .3s;
    z-index          : 10;
    border           : 1px solid #aaa;
    border-radius    : 5px;
    background-color : #fff;
}
#contact .tableContact .mwform-radio-field label span>span {
    position : absolute;
    z-index  : 1;
}
#contact .tableContact .mwform-radio-field label span::after {
    position         : absolute;
    content          : "";
    height           : 100%;
    width            : 0;
    background-color : #337ab7;
    transition       : .3s;
    z-index          : -1;
    opacity          : 0;
}
#contact .tableContact .mwform-radio-field label span::after {
    left : 0;
}
#contact .tableContact .mwform-radio-field label input:checked+span::after {
    opacity : 1;
}
#contact .tableContact .mwform-radio-field label input:checked+span {
    color            : #fff;
    background-color : #337ab7;
}
.contactform .formBlock-inner .txt-contact2 {
    max-width        : initial;
    margin           : 10px auto 0;
    padding          : 20px;
    font-size        : 12px;
    font-size        : 1.2rem;
    line-height      : 1.83333em;
    letter-spacing   : .05em;
    background-color : #f1f1f1;
}
.contactform .formBlock-inner .btn-submit .darkgray-btn {
    cursor : pointer;
}
.btn-reset {
    text-align  : center;
    padding-top : 2em;
}
.mw_wp_form_confirm .btn-reset,
.mw_wp_form_preview .btn-reset {
    display     : none;
    text-align  : center;
    padding-top : 2em;
}
.mw_wp_form_input .btn-reset,
.input .btn-reset {
    display : block;
}
.btn-reset input {
    background-color : rgba(255, 255, 255, 0);
    border           : solid 1px #ddd;
    cursor           : pointer;
    font-size        : 13px;
    color            : #333;
    transition       : .3s;
    padding          : 3px 1em;
}
.btn-reset input:hover {
    color        : #000;
    border-color : #333;
}
