
/*------------------------------------------*/
/*                  #form                   */
/*------------------------------------------*/
#contact {
    margin-top: 90px;
    margin-bottom: 110px;
    padding: 90px 0;
}

#contact.reserve {
    background: rgba(143,101,82,0.15);
}
#contact.contact {
    background: rgba(143,101,82,0.09);
    margin-bottom: 150px;
}


#contact .outer {
    padding: 60px 80px;
    background: #fff;
}





#contact p.info-1 {
    margin: 0 0 60px 0;
    line-height: 2.0;
    text-align: center;
}


/*--- p-outer-top ---*/
#contact .p-outer-top {
    display: block;
    text-align: center;
    margin-bottom: 130px;
}
#contact.m-top .p-outer-top {
    margin-bottom: 90px;
}
#contact .p-outer-top p.title {
    display: block;
    margin-bottom: 40px;
    padding: 12px 0;
    text-align: center;
    color: #fff;
    font-weight: 100;
    font-size: 20px;
    
    background: #03449C;
    
    /*font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;*/
}
#contact .p-outer-top p.msg {
    display: inline-block;
    line-height: 2.0;
    text-align: left;
}
#contact .p-outer-top p.msg span {
    display: block;
    margin-top: 15px;
}
#contact .p-outer-top a {
    display: block;
    margin-top: 80px;
}
#contact .p-outer-top a img {
    display: block;
    width: 100%;
    margin: 0 auto;
}



/*--- form-link ---*/
#contact .form-link {
    display: block;
    width: 100%;
    text-align: center;
    margin-bottom: 130px;
}
#contact .form-link .inner-l {
    display: inline-block;
    width: 50%;
    padding: 0;
    padding-right: 15px;
    text-align: center;
    float: left;
}
#contact .form-link .inner-r {
    display: inline-block;
    width: 50%;
    padding: 0;
    padding-left: 15px;
    text-align: center;
}
#contact .form-link a {
    display: block;
    padding: 30px 0;
    background-image: url("../images/form-btn-bg.png");
    background-size: cover;
    background-position: top left;
    
    color: #fff;
}



/*--- #form-1 #form-2 ---*/
#form-1,
#form-2 {
    display: block;
    width: 100%;
    padding-top: 150px;
    margin-top: -150px;
}





#contact .p-outer {
    display: block;
    text-align: center;
    margin-top: 60px;
    margin-bottom: 60px;
}
#contact .p-outer.top {
    padding-bottom: 110px;
    margin-bottom: 110px;
    border-bottom: 1px rgba(0,0,0,0.5) solid;
}


#contact p.info {
    display: block;
    margin-top: 30px;
    text-align: center !important;
    font-size: 18px;
}

#contact p.info-2 {
    display: inline-block;
    text-align: left;
    line-height: 2.0;
    color: rgba(0,0,0,0.7);
    font-size: 13px;
}



#contact .pc {
    display: block !important;
}
#contact .sp {
    display: none !important;
}



/*- - - - - - - - - - - - - - - - - - - - -*/
@media screen and (max-width: 1024px) {
/*- - - - - - - - - - - - - - - - - - - - -*/
#contact .p-outer-top p.title {
    font-size: 21px;
}
#contact p.info span {
    display: block;
}
}
/*- - - - - - - - - - - - - - - - - - - - -*/
@media screen and (max-width: 480px) {
/*- - - - - - - - - - - - - - - - - - - - -*/
#contact .outer {
    padding: 60px 15px;
    background: #fff;
}
    
    
#contact.m-top {
    margin-top: 30px;
}
#contact .sp {
    display: block !important;
}
#contact .pc {
    display: none !important;
}
#contact .p-outer-top {
    margin-bottom: 80px;
}
#contact .p-outer-top p.title {
    padding: 15px 15px;
    font-size: 16px;
}
#contact .p-outer-top p.title span {
    display: block;
}
#contact .p-outer-top p.msg {
    line-height: 1.7;
}
#contact p.info {
    font-size: 15px;
}
#contact p.info-1 span {
    display: block;
}
#contact .form-link {
    margin-bottom: 80px;
}
}







form {
    margin-top: 30px;
    text-align: left;
    font-size: 15px;
}

/*--- Zenkaku Hankaku ---*/
form .zenkaku {
   ime-mode: active;
}
form .hankaku {
   ime-mode: inactive;
}

/*--- p ---*/
form p {
    text-align: left !important;
    font-size: 13px;
    font-weight: normal;
    letter-spacing: 1.5px;
    line-height: 1.9;
    text-transform: capitalize;
}
form p:last-of-type {
    margin-bottom: 50px;
}


/*--- label , input etc ---*/
form label {
    display: block;
    font-weight: normal;
    letter-spacing: 2px;
    text-align: left;
    margin-top: 25px;
    margin-bottom: 3px;
    
    font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
    
    /*color: rgba(123,85,68,1);*/
    font-size: 15px;
}
form label span {
    font-size: 9.5px;
    font-weight: 100;
    color: #fff;
    letter-spacing: 1px;
    line-height: 1;
    background: rgba(123,85,68,0.8);
    padding: 3px 7px 3px 7px;
    border-radius: 100px;
    margin-left: 10px;
    vertical-align: 0.15em;
}

form select,
form input,
form textarea {
    width: 100% !important;
}

form textarea {
    overflow: auto;
    height: auto !important;
    font-weight: 100 !important;
}

form select {
    display: block;
    background: #fff;
    width: 100%;
    border: none;
    border-radius: 0px;
}

select:focus,
input:focus,
textarea:focus {
    outline: 0;
}

input[type=radio] {
    width: auto !important;
    margin-left: 1em;
    height: 23px;
    vertical-align: -0.5em;
}


input[type="checkbox"] {
    display: inline-block;
    width: 16px !important;
    height: 16px !important;
    margin: 0;
    margin-right: 10px;
    vertical-align: -0.2em;
    /*accent-color: #191970;*/
}
form .checkbox {
    display: block;
    width: 100%;
    margin-top: 50px;
    text-align: center;
    
    font-size: 14px;
}
form .checkbox a {
    display: inline-block;
    margin-right: 5px;
    line-height: 1.5;
    border-bottom: 1px rgba(0,0,0,0.2) solid;
    color: #000;
}






/*--- form-control ---*/
form .form-control {
    display: block;
    margin-right: 30px !important;
    font-size: 15px;
    font-weight: normal !important;
    /*color: rgba(0,0,0,1);*/
    letter-spacing: 1.5px;
    width: 100% !important;
    height: 40px;
    
    -webkit-box-shadow: none;
    -moz-box-shadow:    none;
    -ms-box-shadow:     none;
    -o-box-shadow:      none;
    box-shadow:         none;
    
    -webkit-border-radius: 0px;
    -moz-border-radius:    0px;
    -ms-border-radius:     0px;
    -o-border-radius:      0px;
    border-radius:         0px;
    
    -webkit-transition: all 0.3s;
    -moz-transition:    all 0.3s;
    -ms-transition:     all 0.3s;
    -o-transition:      all 0.3s;
    transition:         all 0.3s;
    
    padding: 5px 10px;
    /*background: rgba(0,0,0,0.06);*/
    background: #fff;
    border: none;
    border: 1px rgba(0,0,0,0.2) solid;
    
    font-size: 14px;
}
form .form-control:hover,
form .form-control:focus,
form .form-control:active {
    border: 1px rgba(0,0,0,0.8) solid;
    /*cursor: pointer;*/
}



form .input-block {
    display: table;
    width: 100%;
}
form .form-control.w50 {
    width: 45% !important;
    margin-right: 0 !important;
    float: left;
}
form .form-control.w51 {
    width: 45% !important;
    margin-right: 0 !important;
    float: right;
}
form span.kara {
    display: inline-block;
    width: 10%;
    float: left;
    text-align: center;
    margin-top: 0.5em;
}
form span.seibetsu {
    display: inline-block;
    margin-left: 2em;
    font-size: 13px;
}

form hr {
    margin-top: 45px;
    margin-bottom: 40px;
    height: 1px;
    border: none;
    border-top: 1px rgba(0,0,0,0.5) solid;
}




/*--- Submit Button ---*/
form button {
    display: block;
    margin: 0 auto;
    
    width: 90%;
    max-width: 450px;
    padding: 15px 0;
    margin-top: 60px;
    text-align: center;
    
    color: rgba(255,255,255,0.95);
    background: #7b5544;
    
    font-weight: 100;
    letter-spacing: 2px;
    text-transform: uppercase;
    border-radius: 0px;
    border: none;
    margin-bottom: 40px;
    font-size: 15px;
    
    -webkit-transition: all 0.3s;
    -moz-transition:    all 0.3s;
    -ms-transition:     all 0.3s;
    -o-transition:      all 0.3s;
    transition:         all 0.3s;
    
    font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}
form button:hover {
    cursor: pointer;
    opacity: 0.8;
}

/*--- php button ---*/
form button.send {
    color: #fff;
    background: #7b5544;
}
form button.send:hover {
    cursor: pointer;
    opacity: 0.8;
}
form button.back {
    background: #fff;
    color: #111;
    border: 1px #03449C solid;
    margin-top: 0px !important;
    margin-bottom: 100px !important;
}
form button.back:hover {
    cursor: pointer;
    opacity: 0.8;
}
form button i {
    padding-left: 10px;
}



/*- - - - - - - - - - - - - - - - - - - - -*/
@media screen and (max-width: 1024px) {
/*- - - - - - - - - - - - - - - - - - - - -*/
    #form .link a {
        font-size: 12px;
    }
    form p {
        font-size: 12px;
    }
}


/*- - - - - - - - - - - - - - - - - - - - -*/
@media screen and (max-width: 991px) {
/*- - - - - - - - - - - - - - - - - - - - -*/
    form label,
    form .form-control {
        font-size: 14px;
    }
    form {
        font-size: 14px;
    }
    form p {
        font-size: 11px;
    }
}
/* - - - - - - - - - - - - - - - - - - - */
@media screen and (max-width: 940px) 
              and (orientation: landscape) {
/* - - - - - - - - - - - - - - - - - - - */
form .input-block {
    display: block;
    width: 100%;
}
form .form-control.w50 {
    display: block;
    width: 310px !important;
    float: none;
}
form .form-control.w51 {
    display: block;
    width: 310px !important;
    float: none;
}
form span.kara {
    position: relative;
    display: inline-block;
    width: auto;
    float: none;
    text-align: center;
    writing-mode: vertical-rl;
    left: 30%;
    margin-top: 10px;
}
}
/*- - - - - - - - - - - - - - - - - - - - -*/
@media screen and (max-width: 480px) {
/*- - - - - - - - - - - - - - - - - - - - -*/
    form {
        font-size: 14px;
    }
    form p {
        text-align: left !important;
    }
    form p.demo {
        text-align: center !important;
    }
    input[type=radio] {
        vertical-align: 0;
    }
    form button {
        font-size: 14px;
    }
    /*.form-control.flatpickr {
        width: 300px !important;
        margin-bottom: 15px;
    }*/

form .input-block {
    display: block;
    width: 100%;
}
form .form-control.w50 {
    display: block;
    width: 310px !important;
    float: none;
}
form .form-control.w51 {
    display: block;
    width: 310px !important;
    float: none;
}
form span.kara {
    position: relative;
    display: inline-block;
    width: auto;
    float: none;
    text-align: center;
    writing-mode: vertical-rl;
    left: 40%;
    margin-top: 10px;
}
}



/*------------------------------------------*/
/*            Form PHP - Table              */
/*------------------------------------------*/
form table.formTable {
	width: 100%;
	text-align: left;
}
form table.formTable th,
form table.formTable td {
	font-size: 14px;
    font-weight: normal;
	padding: 10px 10px;
    border-bottom: 1px rgba(0,0,0,0.4) solid;
    text-align: left;
}
form table.formTable th {
	width: 30%;
}
form table.formTable td {
	width: 70%;
}


/*- - - - - - - - - - - - - - - - - - - - -*/
@media screen and (max-width: 1024px) {
/*- - - - - - - - - - - - - - - - - - - - -*/
    form table.formTable th,
    form table.formTable td {
	    font-size: 13px;
    }
    form table.formTable th {
	    width: 35%;
    }
    form table.formTable td {
	    width: 65%;
    }
}
/*- - - - - - - - - - - - - - - - - - - - -*/
@media screen and (max-width: 480px) {
/*- - - - - - - - - - - - - - - - - - - - -*/
    form table.formTable th {
	    width: 30%;
    }
    form table.formTable td {
	    width: 70%;
    }
}



/*------------------------------------------*/
/*                #send-end                 */
/*------------------------------------------*/
#send-end {
    margin: 30px 0 200px 0;
    text-align: left;
}
#send-end h2,
#form h2 {
    font-size: 26px;
    font-weight: normal;
    letter-spacing: 3px;
    margin-bottom: 30px;
}
#send-end h2 span {
    display: block;
    margin-top: 15px;
    font-size: 17px;
    font-style: italic;
}
#send-end p {
    letter-spacing: 2px;
    text-transform: capitalize;
}
#send-end .phone {
    margin-top: 25px;
}
#send-end .phone p.tel-link {
    display: block;
    margin-top: 10px;
}
#send-end .phone p.tel-link a.tel {
    font-size: 16px;
}


/*- - - - - - - - - - - - - - - - - - - - -*/
@media screen and (max-width: 1024px) {
/*- - - - - - - - - - - - - - - - - - - - -*/
    #send-end h2,
    #form h2 {
        font-size: 22px;
    }
    #send-end h2 span {
        font-size: 13px;
    }
    #send-end p {
        font-size: 13px;
    }
    #send-end p a.tel{
        font-size: 14px;
    }
}
/*- - - - - - - - - - - - - - - - - - - - -*/
@media screen and (max-width: 767px) {
/*- - - - - - - - - - - - - - - - - - - - -*/
    #send-end h2,
    #form h2 {
        font-size: 18px;
    }
    #send-end h2 span {
        font-size: 13px;
    }
    #send-end p {
        font-size: 13px;
    }
    #send-end p a.tel{
        font-size: 14px;
    }
}
/*- - - - - - - - - - - - - - - - - - - - -*/
@media screen and (max-width: 480px) {
/*- - - - - - - - - - - - - - - - - - - - -*/
    #send-end h2 {
        text-align: center;
        letter-spacing: 1.8px;
        font-size: 15px;
    }
    #send-end h2 span {
        font-size: 13px;
    }
    #send-end .phone p.tel-link {
        text-align: center;
    }
    #send-end .phone p.tel-link a.tel {
        text-align: center;
    }
}




