.contents_body { max-width: 1200px; margin: 0 auto; padding: 40px 15px;}


.contact {padding: 0 0; }
.contact img {max-width: 100%;}
.contact h3 { font-size: 3.0rem; letter-spacing: -2px; color: #0152a8; font-weight: normal; margin: 0 0 40px 0;}

.contact .contact_img { max-width: 1200px; margin: 0 auto;}
.contact .contact_img img { width: 100%;}

.contact .notice ol { margin-left: 0; padding-left: 20px; line-height: 1.2;}
.contact .notice ol li { margin-bottom: 6px;}
.contact .notice { line-height: 1.5;}

.form_sub {
     --form_sub_height: 45px;
     --form_sub_txt: 1.4rem;
}

@media (max-width: 468px) {
     --form_sub_height: 40px;	
     --form_sub_txt: 1.33rem;
}


.form_sub { max-width: 740px; margin: 50px auto; padding: 0 15px 30px;}
.form_sub * {-webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box;}
.form_sub ul {    border: 1px solid #cbcbcb; border-bottom: 0;}
.form_sub ul li { background: #ffffff; position: relative;}
.form_sub ul li .item { display: grid; grid-template-columns: 170px 1fr; gap: 0 15px; border-bottom: 1px solid #cbcbcb; p}

.form_sub ul li .item .t { line-height: var(--form_sub_height); font-size: var(--form_sub_txt); font-weight: normal; padding-left: 14px; letter-spacing: -0.05rem; background: #f7f8f9; border-right: 1px solid #cbcbcb;}
.form_sub ul li .item .con {  }

.form_sub input[type=num],
.form_sub input[type=text],
.form_sub input[type=tel] { height: var(--form_sub_height); width: 100%; outline: 0; border: 0; background: #ffffff;  vertical-align: top; font-size: var(--form_sub_txt); }

.form_sub select { height: var(--form_sub_height); width: 100%; outline: 0; border: 0; vertical-align: top; font-size: var(--form_sub_txt); -webkit-appearance:none;
    background:#fff url("../img/ico_select.png") no-repeat calc(100% - 8px) 50%;
}


.form_sub input[type=text].addr_short { width: 100px;}
.form_sub .addr_btn { display: inline-block; height: calc(var(--form_sub_height) - 10px) ; line-height: calc(var(--form_sub_height) - 10px); margin-top: 5px; background: #f9f9f9; border: 1px solid #ccc; color: #313131; padding: 0 15px; outline:0; }



.form_sub textarea { height: 250px; width: calc(100% - 170px); outline: 0; border: 0; background: #ffffff; border-left: 1px solid #cbcbcb; vertical-align: top;
    padding: 10px 20px; font-size: var(--form_sub_txt);
}

.form_sub .radio_box {height: var(--form_sub_height); width: calc(100% - 170px);  border-left: 1px solid #cbcbcb; background: #fff; display: inline-block;
    text-align: center;
}

.form_sub .agree {font-size: var(--form_sub_txt); line-height: var(--form_sub_height); }
.form_sub .agree label { font-size: 0; }
.form_sub .agree input[type="checkbox"] { border-radius: 0; border: 2px solid #000;
  -moz-transform: scale(1.5);   -webkit-transform: scale(1.5);   -o-transform: scale(1.5);
}

.form_sub .agree a { display: inline-block; margin-left: 10px; color: #000; font-size: 0.9em;}

.form_sub .pop_agree {position: fixed; width: 100%; height: 100%; left: 0; top: 0;  z-index: 1000; display: none; }
.form_sub .pop_agree .inner {padding: 20px 20px; background: #fff; border: 1px solid #000; font-size: 1.2rem; line-height: 1.6;
    position: absolute; width: 420px; left: 50%; top: 10%; margin-left: -160px; z-index: 1001; }

.form_sub .pop_agree .x {padding: 0 0 10px 0; text-align: right; cursor: pointer;}

.form_sub .pop_agree .shadow {position: absolute; width: 100%; height: 100%; background: rgba(0,0,0,.7); left: 0; top: 0; }

.form_sub .submit_wrap { text-align: center; padding: 0; margin: 30px 0;}


.form_sub .submit_wrap button {line-height: var(--form_sub_height); height: var(--form_sub_height); font-size: var(--form_sub_txt); letter-spacing: -0.2rem; background: #0152a8; color: #ffffff; border: 0; outline: 0;
    text-align: center; width: 100%; border-radius: 22px;
}

.form_sub a.btn_ollrigo { display: inline-block; line-height: var(--form_sub_height); height: var(--form_sub_height); font-size: var(--form_sub_txt);  background: #0152a8; color: #ffffff; border: 0; outline: 0;
    text-align: center; width: 100%; border-radius: 22px; } 


@media (max-width: 768px) {
    .contact h3 { font-size: 1.8rem; letter-spacing: -1px; margin: 0 0 20px 0;}
	.form_sub ul li .item { grid-template-columns: 150px 1fr; }
}

@media (max-width: 468px) {
    .form_sub {
         --form_sub_height: 40px;
         --form_sub_txt: 1.3rem;
		 margin: 35px auto;
    }
	.form_sub ul li .item { grid-template-columns: 116px 1fr; gap: 0 8px;}
	.form_sub ul li .item .t { padding-left: 5px;}
    .form_sub .agree {padding-left: 15px;}
    .form_sub .agree  input[type="checkbox"] {
      -moz-transform: scale(1.0);   -webkit-transform: scale(1.0);   -o-transform: scale(1.0);
        -webkit-appearance: none; -webkit-border-radius: 0; border: 2px solid #000;
        appearance: checkbox;
    }
    .form_sub .agree input[type="checkbox"]:checked { -webkit-appearance: checkbox; border: 2px solid #000;}
    .form_sub .pop_agree .inner {width: 90%; left: 5%; margin-left: 0;}
    .form_sub .submit_wrap {width: 250px; margin: 30px auto; }
}


