@charset "UTF-8";

/* contact */
main .contact_all {
    background-color: rgb(245, 245, 245);
    height: 600px;
}

main .contact_all .contact_copy {
    width: 760px;
    margin: 0 auto;
    padding-top: 90px;
}



main .contact_all .contact_copy .contact_text p{
    padding-top: 20px;
    text-align: center;
line-height: 1.6em;
}

main .contact_all .contact_copy .contact_text .contact_text_ex{
    padding-top: 20px;
}


/* form all */
main .contact_all .form_box {
    width: 760px;
    margin: 0 auto;
    padding-bottom: 150px;
}

main .contact_all .form_box dt{
    padding-top: 30px;
    margin-bottom: 10px;
}

main .contact_all .form_box dl.comment_area{
    margin-bottom: 90px;
}


/* CONTACT btn  */
.c_btn {
    padding-top: 90px;
    width: 450px;
    height: 80px;
    margin: 0 auto;
}

.c_btn .contact_btn {
    text-align: center;
    width: 450px;
    height: 80px;
    border: #414141 solid 1px;
    border-radius: 45px;
    font-size: 16px;
}

.c_btn .contact_btn a {
    font-size: 1.125rem;/* 18px */
    display: block;
    width: 450px;
    height: 80px;
    line-height: 80px;
    background-color: rgba(136, 106, 219, 0.8);
    color: #fff;
    border-radius: 45px;
    transition: all .3s;
    position: relative;
    top: -10px;
    left: -10px;
}

.c_btn .contact_btn a:hover {
    display: block;
    width: 450px;
    height: 80px;
    line-height: 80px;
    background-color: rgba(186, 162, 252, 0.8);
    color: #fff;
    border-radius: 45px;
    position: relative;
    top: 0px;
    left: 0px;
}



/* ローマ字表記 */
main .contact_all .form_box span.romaname{
    padding-left: 5px;
    font-size: 0.812rem;/* 13px */
    color: #a285f0;
}

/* 必須項目 */
main .contact_all .form_box span.required{
    font-size: 0.812rem;/* 13px */
    padding: 2px 16px;
    background-color: #a285f0;
    color: #fff;
    border-radius: 5px;
    margin-right: 10px;
}

/* 各部品 */
input[type="text"],
input[type="email"],
textarea{
    width: 100%;
    padding: 15px;
    border-radius: 10px;
    border: #ccc solid 1px;
    background-color: #fff;
    box-sizing: border-box;
    -webkit-transition: all .3s;/* フォーカス動き */
    transition: all .3s;/* フォーカス動き */
}
textarea{
    height: 250px;
    line-height: 1.3em;
    resize: none;
}

/* フォーカス時の効果 */
input[type="text"]:focus,
input[type="email"]:focus,
textarea:focus {
  box-shadow: 0 0 7px #a285f0;
  border: 1px solid #a285f0;
}


main .contact_all .form_box .submit{
    text-align: center;
    width: 350px;
    height: 80px;
    border: #414141 solid 1px;
    border-radius: 45px;
    margin: 0 auto;
}

input[type="submit"]{
    width: 350px;
    height: 80px;
    font-size: 16px;
    line-height: 80px;
    background-color: rgba(106, 99, 103, .8);
    color: #fff;
    border-radius: 45px;
    transition: all .3s;
    position: relative;
    top: -10px;
    left: -10px;
}

input[type="submit"]:hover{
    width: 350px;
    height: 80px;
    line-height: 80px;
    background-color: rgba(255, 203, 203, 0.8);
    color: #614d4d;
    border-radius: 45px;
    position: relative;
    top: 0px;
    left: 0px;
    cursor: pointer;
}

.error_msg{
    color: #ee50c2;
    font-size: 1rem;
    padding: 5px 0 10px 15px;
    font-weight: 300;
}
    

/* confirm（確認画面） */


.confirm_text p{
    font-weight: 700;
}

.confirm{
    width: 900px;
    background: #fff;
}

section.contact_copy .confirm_box dl{
    width: 500px;
}
section.contact_copy .confirm_box dt{
    margin-bottom: 20px;
    padding-top: 20px;
}


section.contact_copy .confirm_box dd{
    width: 500px;
    padding-bottom: 20px;
}

section.contact_copy .confirm_box .romaname{
    padding-left: 5px;
    font-size: 0.812rem;/* 13px */
    color: #a285f0;
}

/* 必須項目 */
section.contact_copy .confirm_box .required{
    font-size: 0.812rem;/* 13px */
    padding: 2px 16px;
    background-color: #a285f0;
    color: #fff;
    border-radius: 5px;
    margin-right: 10px;
}


@media screen and (max-width:640px) {

    main .contact_all .contact_copy {
        width: 100%;
        margin: 0 auto;
        padding: 90px 20px 20px 20px;
        box-sizing: border-box;
    }


/* CONTACT btn  */
.c_btn {
    padding-top: 60px;
    width: 330px;
    height: 60px;
    margin: 0 auto;
}

.c_btn .contact_btn {
    text-align: center;
    width: 330px;
    height: 60px;
    border: #414141 solid 1px;
    border-radius: 45px;
    font-size: 16px;
}

.c_btn .contact_btn a {
    font-size: 1.125rem;/* 18px */
    display: block;
    width: 330px;
    height: 60px;
    line-height: 60px;
    background-color: rgba(136, 106, 219, 0.8);
    color: #fff;
    border-radius: 45px;
    transition: all .3s;
    position: relative;
    top: -10px;
    left: -10px;
}

.c_btn .contact_btn a:hover {
    display: block;
    width: 330px;
    height: 60px;
    line-height: 60px;
    background-color: rgba(186, 162, 252, 0.8);
    color: #fff;
    border-radius: 45px;
    position: relative;
    top: 0px;
    left: 0px;
}

main .contact_all .contact_copy .contact_text p {
    padding-top: 0;
    text-align: center;
    line-height: 1.6em;
}

main .contact_all {
    background-color: rgb(245, 245, 245);
    height: 560px;
}

}