@charset "UTF-8";

#main {
    width: 800px;
}

#main p.lead {
	margin-bottom: 1em;
}

#main p.notes_contact {
    margin-bottom: 2em;
    color: #e80c3b;
}

#main p.notes_contact {
    margin-left: 1.2em;
    text-indent: -1.2em;
    line-height: 1.6;
}

#main p.notes_contact span {
    margin-right: 0.2em;
}

/* form basic style */

input, button, select, textarea {
    /* ユーザーエージェントスタイルシートをリセット */
    background-color: transparent;
    padding: 0;
    border: 0;
    border-radius: 0;
    color: inherit;
    appearance: none;
    -webkit-appearance: none;
}

input, button, select, textarea {
    display: block;
    font-family: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
    font-size: 1.6rem;
    font-weight: normal;
    color: #333;
    background-color: #fff;
    box-sizing: border-box;
    padding: 0.8em 1em;
    border: 1px solid #ccc;
    border-radius: 3px;
    line-height: 1.5;
}

textarea {
    width: 100%;
    height: 180px;
    resize: vertical;
}

input::placeholder,
textarea::placeholder {
    color: #999;
}

/* form */

#box_form {
    padding: 50px;
    background-color: #f7f8fa;
}

#box_form .list_error {
    margin-bottom: 50px;
    line-height: 1.4;
    font-size: 1.4rem;
    color: #e80c3b;
}

#box_form .list_error li {
    position: relative;
    margin-bottom: 0.6em;
    padding-left: 1em;
}

#box_form .list_error li::before {
    content: "";
    display: block;
    width: 2px;
    height: 2px;
    position: absolute;
    top: 8px;
    left: 0.3em;
    background-color: #e80c3b;
}

#form_contact dt {
    margin-bottom: 0.7em;
    font-size: 1.7rem;
    font-weight: 500;
    line-height: 1.2;
}

#form_contact dt span.nes {
    display: inline-block;
    vertical-align: middle;
    margin-left: 0.3em;
    padding: 1px 3px 3px 3px;
    background-color: #ed3d62;
    color: #fff;
    font-weight: 600;
    font-size: 1.2rem;
}

#form_contact dd {
    margin-bottom: 2.3em;
}

#form_contact dd:last-child {
    margin-bottom: 0;
}

#form_contact .ipt_normal {
    width: 400px;
}

#form_contact .ipt_full {
    width: 100%;
}

#form_contact .txt_limit {
    font-size: 1.2rem;
    font-weight: 400;
}

#form_contact .count_txt {
    text-align: right;
    font-family: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
    font-size: 1.4rem;
}

.btn_box {
    display: flex;
    justify-content: center;
}

.btn_submit {
    position: relative;
    display: table;
    margin: 3em auto;
}

.btn_box .btn_submit {
    margin: 3em 30px 0 0;
}

.btn_box .btn_submit:last-child {
    margin-right: 0;
}

.btn_submit input,
.btn_submit button {
    display: block;
    cursor: pointer;
    box-sizing: border-box;
    padding: 1em 2.5em 1em 3.8em;
    border-radius: 0;
    font-family: 'Noto Sans JP', serif;
    font-weight: 500;
}

.btn_submit::after {
    content: "";
    display: block;
    width: 0;
    height: 0;
    position: absolute;
    top: 50%;
    left: 2.5em;
    margin-top: -4px;
    border-style: solid;
}

.btn_submit.confirm::after {
    border-width: 5px 0 5px 8px;
    border-color: transparent transparent transparent #72cf15; 
}

.btn_submit.back::after {
    border-width: 5px 8px 5px 0;
    border-color: transparent #999 transparent transparent; 
}

.btn_submit.back::after {
    
}

.btn_submit input:hover,
.btn_submit button:hover {
    opacity: 0.7;
}

.btn_submit input:disabled {
    opacity: 0.6;
}

/* 旧サイト用 */

#main p.address {
    margin-bottom: 3em;
	text-align: center;
	font-size: 2.4rem;
    font-weight: 600;
}

/* 1080px（コンテンツ幅） */
@media only screen and (max-width: 1080px) {

    #main {
        box-sizing: border-box;
        width: 100%;
    }
    
}

/* 834px（コンテンツ幅） */
@media only screen and (max-width: 834px) {

    #main {
        width: 100%;
    }
    
}

/* 768px以下（タブレット縦・スマホ横） */
@media only screen and (max-width : 768px ) {

}

/* 640px（コンテンツ幅） */
@media only screen and (max-width: 640px) {

    #box_form {
        padding: 40px 35px;
    }
    
    #form_contact .ipt_normal {
        width: 100%;
    }
    
}

/* 480px（スマホ縦） */
@media only screen and (max-width: 480px) {

    #box_form {
        padding: 20px 0 0 0;
        background-color: transparent;
    }
    
    .btn_submit {
        margin: 2em auto;
    }
    
    .btn_box .btn_submit {
        margin: 40px 10px 0 0;
    }
    
    .btn_submit input,
    .btn_submit button {
        padding: 1em 1.5em 1em 2.5em;
    }
    
    .btn_submit::after {
        left: 1.5em;
    }
    
}


