@charset "UTF-8";

.l_contents{background: #F9EED2;}
.l_breadcrumb{padding-bottom: 17px;}
.contents_form .frame{background: #FFF;padding-right: 25px;padding-left: 25px;}

.form_contact .wrapper{padding-bottom: 75px;}

.contents_form h1{margin: 0 auto 40px;text-align:center;}
.contents_form h1 img {width: 228px;}

.contents_form h2{font-size: 1.125rem;font-weight: bold;line-height: 1;margin-bottom: 10px;}

.form_head ul li{display: flex;align-items: center;}
.form_head ul li:not(:last-of-type){border-bottom: 1.5px solid #D8A619;}
.form_head ul li h3{font-size:0.9375rem;display: flex;align-items: center;max-width: 140px;width: 100%;font-weight: bold;padding-left: 33px;}
.form_head ul li > div{width: calc(100% - 140px);padding: 10px 0;}
.form_head ul li span{display: block;}
.form_head ul li .tel a{text-decoration: underline;}

.form_head ul li{font-size: 0.8125rem;}
.form_head ul li:nth-of-type(1) h3{background: url(../img/icon_store_01.png) no-repeat;background-size: 17px auto;height: 30px;background-position: 4px center;}
.form_head ul li:nth-of-type(2) h3{background: url(../img/icon_store_02.png) no-repeat;background-size: 26px auto;height: 26px;}
.form_head ul li:nth-of-type(3) h3{background: url(../img/icon_store_03.png) no-repeat;background-size: 19px auto;height: 28px;background-position: 3px center;}
.form_head ul li:nth-of-type(4) h3{background: url(../img/icon_store_04.png) no-repeat;background-size: 22px auto;height: 28px;}
.form_head ul li:nth-of-type(5) h3{background: url(../img/icon_store_05.png) no-repeat;background-size: 23px auto;height: 29px;}


.form_contact .frame{padding-top: 38px;padding-bottom:38px;}
ul.progress{position: relative;display: grid;grid-template-columns: 1fr 1fr 1fr;max-width: 470px;min-width: 235px;width: 50%;margin: 0 auto 45px; 
font-size: 0.8125rem;font-weight: bold;height: 37px;}
ul.progress li{display: flex;justify-content: center;position: relative;}
ul.progress li:first-of-type{justify-content: flex-start;}
ul.progress li:last-of-type{justify-content: flex-end;}
ul.progress li span{position: relative;padding-top: 24px;display: inline-block;text-align: center;font-size:0.9375rem;}
ul.progress li span::before{content: "";width: 30px;height: 20px;display: block;background: #FFF;position: absolute;left: 0;top: 0;}
ul.progress li:nth-of-type(2) span::before{left: 50%;transform: translateX(-50%);}
ul.progress li span i{position: absolute;top: 0;left: 50%;transform: translateX(-50%);
background: #C1C1C1;text-indent:100%;white-space:nowrap;overflow:hidden;width: 15px;height: 15px;-webkit-border-radius: 100vh;border-radius: 100vh;
}

ul.progress li.on span i{width: 20px;height: 20px;background: #000;color: #FFF;text-indent: 0;font-style: normal;
    font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", sans-serif;font-size: 0.625rem;line-height: 20px;
}

ul.progress::before{
    content: "";display: block;width: 98%;height: 1.5px;background: #C1C1C1;position: absolute;top: 6px;
}



.contents_form em{color:#ff0000;}
.contents_form form{display:inline;}
.contents_form p.alert{margin-bottom:10px;}

.contents_form table{width:100%;border-collapse: collapse;table-layout: fixed;}
.contents_form th,.contents_form td{width: 100%;}
.contents_form th{display: flex;align-items: center;font-size: 1rem;font-weight: bold;margin-bottom: 10px;}
.contents_form td{display: block;}
.contents_form tr:not(:last-of-type) td{padding-bottom: 18px;}

.contents_form th em{display: inline-block;background:#D8A619;color: #FFF;font-size: 12px;padding: 0 10px;margin: 0 5px 0 10px;}


/** 注釈文言 **/
.contents_form span.add{font-size:80%;}
.contents_form span.note{font-size: 1rem;display: block;margin-bottom: 20px;}
.contents_form p.privacy{font-size: 0.8125rem;font-weight: bold;margin-bottom: 33px;margin-top:10px;}
.contents_form p.privacy a{text-decoration: underline;}


/** 確認 **/
.confirm_page .form_btn{display: flex;gap: 0 10px;}
.confirm_page .form_btn form{width: 100%;}

/** 完了 **/
.comp_page .text{text-align: center;font-weight: bold;font-size: 0.75rem;margin-bottom: 20px;}

/** ボタン **/
.form_btn input[type="submit"],.form_btn a{-webkit-appearance: none;background: #FFF;font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Arial", "Yu Gothic", "Meiryo", sans-serif;
max-width: 250px;width: 100%;height: 60px;display: flex;justify-content:center;align-items: center;background: #B7001C;-webkit-border-radius: 5px;border-radius: 5px;
-moz-transition: all 0.3s ease-in;-webkit-transition: all 0.3s ease-in;transition: all 0.3s ease-in;border: none;margin: 0 auto;font-size: 1rem;font-weight: bold;color: #FFF;letter-spacing: 0.1rem;
}

.form_btn input[type="submit"]:hover{cursor:pointer;background-color:#000;color:#fff;}

.form_input_btn{width:300px;margin:0 auto;}
.come_btn{width:640px;margin:0 auto;}

/** フォーム共通 ***/
input.formtxt,textarea.formtxt,select.formtxt{border: 1px solid #cdcdcd;-webkit-border-radius: 5px;border-radius: 5px;width: 100%;
font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Arial", "Yu Gothic", "Meiryo", sans-serif;-webkit-appearance: none;
}
input.formtxt,select.formtxt{padding:7px;height:38px;}
textarea.formtxt{padding:7px;}

label{font-size: 0.875rem;font-weight: bold;margin-right: 35px;cursor: pointer;}

input.formtxt.age{min-width: 60px;width: 20%;margin-right: 5px;}
input.formtxt.zipcode{min-width: 60px;width: 25%;margin-right: 5px;margin-left: 5px;margin-bottom: 8px;}

input[type="radio"]{margin-right: 5px;}

@media screen and (max-width:767px) {
    .contents_form .wrapper{padding-right: 17.5px;padding-left: 17.5px;}
    .form_head .wrapper{padding-bottom: 55px;}

}

@media screen and (min-width:768px) {
    .contents_form .wrapper{padding-right: 0;padding-left: 0;}
    .contents_form .area_title h1 img{width: 250px;}
    .contents_form .form_head .frame{padding-top: 8px;padding-bottom: 8px;}
    .contents_form h2{font-size: 1.25rem;}
    .contents_form span.note{font-size: 0.875rem; margin-bottom: 15px;}
    .form_head .wrapper{padding-bottom: 60px;}
    .form_head ul li > div{width: calc(100% - 140px);padding: 14px 0;font-size: 1rem;}
    .form_head ul li .tel a{pointer-events: none;text-decoration: none;}
    .form_head ul li h3{max-width: 160px;font-size: 1.0625rem;}
	.contents_form tr:not(:last-of-type) td{padding-bottom:30px;}
	input.formtxt, select.formtxt, textarea.formtxt{font-size:16px;}
	input.formtxt, select.formtxt{padding:10px;height:44px;}
	textarea.formtxt{padding:10px;height:238px;}
	.form_contact .frame{padding-top:42px;padding-bottom:42px;}
}

@media screen and (min-width:768px) and (max-width:1080px) {

}

@media screen and (min-width:1081px) {

}