body {
    background-color: #f3f3f3;
}
footer{
    border-top: 0;
}
#contact {
    display: block;
    width: 100%;
    position: relative;
}

#contact .bg {
    position: absolute;
    width: 100%;
    z-index: 1;
    background-size: cover;
    background-position: center top;
    background-repeat: no-repeat;
    height: 700px;
    top: 0;
    opacity: 0;
    -webkit-transform: translateY(-50px);
    -moz-transform: translateY(-50px);
    -o-transform: translateY(-50px);
    transform: translateY(-50px);
    -webkit-transition: all 1.5s ease;
    -moz-transition: all 1.5s ease;
    -o-transition: all 1.5s ease;
    -ms-transition: all 1.5s ease;
    transition: all 1.5s ease;

}

#contact .bg.active {
    opacity: 1;
    -webkit-transform: translateY(-0);
    -moz-transform: translateY(-0);
    -o-transform: translateY(-0);
    transform: translateY(-0);
}

#contact .bg img {
    width: 100%;
    opacity: 0;
}

#contact_show {
    position: relative;
    z-index: 2;
    width: 100%;
    max-width: 940px;
 margin: 75px auto 70px;
    padding: 53px;
    padding-top: 40px;
    padding-bottom: 112px;

    opacity: 0;
   background: rgb(122,186,214); /* Old browsers */
/* IE9 SVG, needs conditional override of 'filter' to 'none' */
background: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIxMDAlIiB5Mj0iMCUiPgogICAgPHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzdhYmFkNiIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiM5ZmNlY2EiIHN0b3Atb3BhY2l0eT0iMSIvPgogIDwvbGluZWFyR3JhZGllbnQ+CiAgPHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEiIGhlaWdodD0iMSIgZmlsbD0idXJsKCNncmFkLXVjZ2ctZ2VuZXJhdGVkKSIgLz4KPC9zdmc+);
background: -moz-linear-gradient(top,  rgba(122,186,214,1) 0%, rgba(159,206,202,1) 100%); /* FF3.6-15 */
background: -webkit-linear-gradient(top,  rgba(122,186,214,1) 0%,rgba(159,206,202,1) 100%); /* Chrome10-25,Safari5.1-6 */
background: linear-gradient(to bottom,  rgba(122,186,214,1) 0%,rgba(159,206,202,1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#7abad6', endColorstr='#9fceca',GradientType=1 ); /* IE6-8 */
}

#contact_show.reservation{
    background: white;    padding-bottom: 85px;
}



#contact_show #type{
    position: absolute;
    top: -63px;
    text-align: center;    left: 0;
    width: 100%;
}
#contact_show #type a{
        font-size: 16px;
    color: #1d1d1d;
    text-align: left;
    width: 181px;
    display: inline-block;
    margin: 0 10px;
    border-top: 1px solid #a1a1a1;
    letter-spacing: 6px;
    padding-top: 16px;    position: relative;
}
#contact_show #type a:after{
content: '';
    background-color: #99c9dd;
    width: 0%;
    position: absolute;
    left: 0;
    top: -1px;
    height: 2px;
    -webkit-transition: all .5s ease;
    -moz-transition: all .5s ease;
    -o-transition: all .5s ease;
    -ms-transition: all .5s ease;
    transition: all .5s ease;
}
#contact_show #type a.active:after{
    width: 100%;
}

#contact_block{
    display: block;
    position: relative;
}
#contact_block .head_title{
display: block;
    position: relative;
    color: white;
    margin-top: 26px;
    margin-bottom: 90px;
}
#contact_block .head_title .title{
    font-size: 24px;
    display: block;
    letter-spacing: 3px;
    font-family: "AvantGardeExtLitITCTT",微軟正黑體,Myriad Pro,Open Sans,Myriad,Aria, sans-serif;
    margin-bottom: 8px;
}
#contact_block .head_title .e_title{
        font-size: 20px;
    display: block;
    letter-spacing: 4px;
}
#contact_block .head_title .notice{
        font-size: 15px;
    color: #faffab;
    position: absolute;
    right: 0;
    top: 31px;
    letter-spacing: 3px;
}


#contact_block .form{
    color: white;
    font-size: 15px;
    display: block;
    position: relative;
    letter-spacing: 2px;
    text-shadow: 1px 1px 6px rgba(0, 0, 0, 0.18);
}
#contact_block .form .left{
        float: left;
    width: 32%;
    position: relative;
    display: block;
}
#contact_block .form label{
        display: block;
    border-bottom:1px solid rgba(255, 255, 255, 0.62);
    position: relative;
    line-height: 52px;
    margin-top: 13px;
}
#contact_block .form label > span{
    
}
#contact_block .form label .inputbox{
        height: 53px;
    float: right;
    width: 66%;
    border: 0;
    outline: 0;
    background-color: transparent;
    color: white;
    font-size: 15px;
}
#contact_block .form:after{
    content: '';
    display: block;
    clear: both;
}
#contact_block .form .styled-select select { 
    background: transparent;
    width: 100%;
    padding: 5px;
    padding-right: 24px;
    font-size: 15px;
    line-height: 1;
    padding-left: 0;
    border: 0;
    border-radius: 0;
    height: 50px;
    -webkit-appearance: none;
    color: white;
    outline: 0;
    letter-spacing: 3px;
}
#contact_block .form .styled-select { 
    width: 66%;
    height: 50px;
    overflow: hidden;
    background: url(../images/select_w.png) no-repeat right;
    margin-top: 0;
    outline: 0;
    float: right;
}

#contact_block .form .styled-select option
{
    background-color: #8cc4d0;
}



#contact_block .form .field label {
    float: left;
    width: 50%;
    font-size: 15px;
    color: white;
    line-height: 40px;
    margin: 0;
    text-align: center;
    border: 1px solid rgba(255, 255, 255, 0.42);
}
#contact_block .form .field label label{
    border: 0;
}
#contact_block .form .field label .radio {
    float: left;
    width: 100%;
    height: 40px;
}
#contact_block .form .field label input[type="radio"] {
    display: none;
}
#contact_block .form .field label input[type="radio"]+label {
    display: block;
    width: 100%;
    height: 40px;
    margin: 0;
    overflow: hidden;
}
#contact_block .form .field label input[type="radio"]:checked+label span {
    background-color: rgba(255, 255, 255, 0.42);
    color: #579dbb;

}

#contact_block .form .field label input[type="radio"]+label span {
    display: inline-block;
    width: 100%;
    height: 100%;
    margin: 0;
    vertical-align: middle;
    cursor: pointer;
    top: 0;
    border: 0;
    position: relative;
    float: left;line-height: 40px;

}

#contact_block .form .line{
    float: left;
    width: 100%;
    margin-top: 32px;
    position: relative;
}

#contact_block .form .right{
    float: right;
    width: 52%;
    display: block;
    position: relative;
}

#contact_block .form .name_line{
margin-top: 0;
}
#contact_block .form .name_line > span{
    
}
#contact_block .form .name_line > .inputbox{
    
}

#contact_block .form .name_line .field{
        float: right;
    width: 40%;
    margin-top: 13px;
}

#contact_block .form .name_line .name_{
        float: left;
    width: 55%;
    display: block;
    border-bottom: 1px solid rgba(255, 255, 255, 0.62);
    position: relative;
    line-height: 52px;
    margin-top: 5px;
}

#contact_block .form .name_line .name_ span,
#contact_block .form .birth span,
#contact_block .form .right label > span{
    width: 77px;
    display: inline-block;    line-height: 52px;
}
#contact_block .form .name_line .name_ .inputbox{
     height: 53px;
    float: right;
    width: calc(100% - 80px);
    border: 0;
    outline: 0;
    background-color: transparent;
    color: white;
    font-size: 15px;

}

#contact_block .form .birth{
    float: left;
    width: 100%;
    position: relative;
    border-bottom: 1px solid rgba(255, 255, 255, 0.62);
    margin-top: 5px;
}
#contact_block .form .birth span{
    float: left;
}

#contact_block .form .birth .styled-select select { 
    background: transparent;
    width: 100%;
    padding: 5px;
    padding-right: 24px;
    font-size: 15px;
    line-height: 1;
    padding-left: 0;
    border: 0;
    border-radius: 0;
    height: 50px;
    -webkit-appearance: none;
    color: white;
    outline: 0;
    letter-spacing: 3px;
}
#contact_block .form .birth .styled-select { 
 width: 23%;
    height: 50px;
    overflow: hidden;
    background: url(../images/select.png) no-repeat right;
    margin-top: 0;
    outline: 0;
    float: left;
    margin-right: 25px;
}
#contact_block .form .birth .styled-select:last-child{
    margin-right: 0;
}
#contact_block .form .right label{
    float: left;
    width: 100%;
}


#contact_block .form .right .field label {
    width: 50%
}
#contact_block .form .right label > span{
    width: 77px;
}
#contact_block .form .right label.short{
        width: 65%;
}
#contact_block .form .right label .codeimg{
    display: inline-block;
    float: right;
    width: 160px;
    border: 1px solid rgba(255, 255, 255, 0.5);
    text-align: center;
    height: 36px;
    position: relative;    background-color: #92c8ca;
    top: 8px;
}
#contact_block .form .right label.code span{
    float: left;
}
#contact_block .form .right label.code .inputbox{
        float: left;
    width: 162px;
}
#contact_block .form .right label.code img{
      display: block;
    position: relative;
    margin: 5px auto;
}

#contact_block .form .send{
    display: inline-block;
    width: 408px;
    height: 77px;
    background-color: white;
    border: 2px solid #83bfd3;
    color: #00b0a1;
    text-align: center;
    line-height: 75px;
    font-size: 15px;
    letter-spacing: 2px;
    position: absolute;
    bottom: -147px;
    left: 50%;
    margin-left: -204px;
    cursor: pointer;
     box-shadow: 1px 1px 22px rgba(0, 0, 0, 0.0);
        -webkit-transition: all .5s ease;
    -moz-transition: all .5s ease;
    -o-transition: all .5s ease;
    -ms-transition: all .5s ease;
    transition: all .5s ease;
}
#contact_msg{
    display: block;
    position: relative;
    width: 100%;
    height: 100%;
    background-image: url(../images/contact.jpg);
    background-repeat: no-repeat;
    color: white;    background-size: cover;
    padding-left: 65px;
    padding-top: 70px;
}
#inline{
    width: 100%;
    height: 100%;display: none;
}
#contact_msg .t1{
        font-size: 15px;
    display: block;
    position: relative;
    letter-spacing: 5px;
    line-height: 25px;
}
#contact_msg .t2{
        font-size: 30px;
    font-family: "AvantGardeExtLitITCTT",微軟正黑體,Myriad Pro,Open Sans,Myriad,Aria, sans-serif;
    display: block;
    margin-top: 140px;
    letter-spacing: 5px;
    opacity: .6;
    margin-bottom: 12px;
}
#contact_msg .t3{
         font-size: 16px;
    display: block;
    position: relative;
    letter-spacing: 5px;
}
#contact_msg .t1:after{
    content: '';
    background-color: white;
    width: 49px;
    height: 2px;
    position: absolute;
    left: 0;
    bottom: -34px;

}
#fix_menu{
    display: none;
}


@media only screen and (min-width: 1025px) {
#contact_show #type a:hover:after{
    width: 100%;
}
#contact_block .form .send:hover{
    background-color: #86c0d2;
    color: white;
    border-color: white;
    box-shadow: 1px 1px 22px rgba(0, 0, 0, 0.15);
}

}

@media only screen and (max-width: 1024px) {

    #contact_show {
        width: 90%;
        margin-top:110px;
        padding-top: 40px;
    }
    #contact_show.reservation{
            padding-left: 40px;
    padding-right: 40px;
    }
    body{
            background-color: #f3f3f3;
    }

    #contact_block .form .left{
        float: none;
    width: 268px;
    }
    #contact_block .form .left:after,
    #contact_block .form .right:after{
        content: '';
        display: block;
        clear: both;
    }
    #contact_block .form .right{
       float: none;
    width: 460px;
    margin-top: 105px;
    }

    #headtop{
        margin-top: 282px;
    }
    #contact .bg{
        height: 420px;
    }
    #contact_show #type{
        top: -95px;
    }



}

@media only screen and (max-width: 750px) {

}

@media only screen and (max-width: 700px) {}

@media only screen and (max-width: 650px) {
  #contact_show.reservation {
    padding-left: 0;
    padding-right: 0;
}
#contact_msg{
        background-image: url(../images/contact_s.jpg);
            padding-left: 29px;
    padding-top: 70px;
}



}

@media only screen and (max-width: 600px) {
#contact_show #type{
    display: none;
}
#fix_menu{
    display: block;
    position: relative;
    width: 100%;
    text-align: center;
    top: -105px;
    z-index: 5;
    margin: 0 auto;
}
#contact_show.reservation #fix_menu{
    padding-left: 30px;
    padding-right: 30px;
}
#fix_menu .menu_box {
    background-color: transparent;
    padding-bottom: 17px;
    display: block;
    position: relative;
    padding-top: 1px;
    width: 100%;
    max-width: 820px;
    margin: 0 auto;
    -webkit-transition: background .5s ease;
    -moz-transition: background .5s ease;
    -o-transition: background .5s ease;
    -ms-transition: background .5s ease;
    transition: background .5s ease;
}
#fix_menu .styled-select select {
    background: transparent;
    width: 100%;
    padding: 5px;
    padding-right: 24px;
    font-size: 16px;
    line-height: 1;
    padding-left: 0;
    border: 0;
    border-radius: 0;
    height: 50px;
    -webkit-appearance: none;
    color: black;
    outline: 0;
    letter-spacing: 3px;
    opacity: .9;
}
#fix_menu .styled-select {
    width: 100%;
    height: 50px;
    overflow: hidden;
    background: url(../images/s_down.png) no-repeat right;
    border-top: 3px solid #9dc6d9;
    margin-top: 0;
    margin: 0 auto;
}

#contact_show {
    margin-top: 108px;
    padding-top: 0;
    width: 100%;
    margin-bottom: 72px;
    padding-bottom: 186px;
}

#contact_block .head_title .notice{
        position: relative;
    right: auto;
    top: auto;
    margin-top: 45px;
    display: block;
}

#contact_block .head_title{
    margin-bottom: 45px;
}
#contact_block .form .left{
    width: 100%;
}
#contact_block .form .right{
    width: 100%;    margin-top: 85px;
}
#contact_block .form .name_line .name_ span, #contact_block .form .birth span, 
#contact_block .form .right label > span,#contact_block .form .right label > span{
    width: 33%;
}
#contact_block .form .right label.short{
    width: 100%;
}

#contact .bg {
    height: 340px;
}
#contact_block .form .birth .styled-select{
        float: right;
    margin-right: 0;
    border-bottom: 1px solid rgba(255, 255, 255, 0.62);
    width: 67%;
}
#contact_block .form .birth{
    border-bottom: 0;
}
#contact_block .form .birth span{
  border-bottom: 1px solid rgba(255, 255, 255, 0.62);
    line-height: 49px;
}


#contact_block .form .right label.code .inputbox{
    width: 67%;
}

#contact_block .form .right label .codeimg{
    position: absolute;
    left: 0;
    bottom: -59px;
    width: 100%;
    text-align: center;
    top: auto;
}


#contact_block .form .right label.code img{
   
}

#contact_block .form .send{
    width: 100%;
    margin-left: 0;
    left: 0;
    bottom: -221px;
}
#contact_block .form .name_line .field,#contact_block .form .name_line .name_{
    width: 100%;
}

#contact_block .form .name_line .name_ .inputbox{
    width: 67%
}
#contact_block{
    margin-top: -25px;
}



}

@media only screen and (max-width: 500px) {
  #contact_show.reservation{
        padding-bottom: 22px;
  }
   
}

@media only screen and (max-width: 450px) {
  #contact_show{
    padding-left: 30px;
    padding-right: 30px;
  }

#contact .bg {
    height: 320px;
}
#headtop h2{
    padding: 0;
}

#headtop {
    margin-top: 235px;
}





}

@media only screen and (max-width: 400px) {}
