@charset "utf-8";
/* Contact */
.contact-desc{text-align: center; margin: 0 0 50px;}
.frm-hide{display: none;}

@media screen and (max-width: 767px){
    .contact-desc{margin: 0 0 30px;}
}

.frm-tbl{width: 100%; border: 1px solid #B5B5B5;}
.frm-tbl th, 
.frm-tbl td{border: 1px solid #B5B5B5; vertical-align: middle;}
.frm-tbl th{background: #F4F4F4; padding: 20px 0 20px 20px; font-weight: bold; text-align: left; width: 25%; min-width: 240px;}
.frm-tbl td{padding: 20px;}
.frm-tbl .required{font-size: 1.2rem; line-height: 1.3; background: #8F4000; color: #fff; padding: 2px 7px; display: inline-block; margin: 0 0 0 10px; position: relative; top: -1px;}

.frm-info{text-align: center; margin: 50px 0 30px;}
.frm-info:before{content: '';  width: 0; height: 0; border-left: 29px solid transparent; border-right: 29px solid transparent; border-top: 18px solid #1F5F87; display: block; margin: 0 auto 30px;}

.btn-cancel{margin: 12px 0 0 0;}
.btn-cancel a{font-weight: bold; width: 100%; max-width: 22.5em; height: 2.5em; border-radius: 2.5em; border: 1px solid #1F5F87; background: #1F5F87; color: #fff; display: flex; justify-content: center; align-items: center;}
.btn-cancel a:after{content: ''; width: 0.8125em; height: 0.8125em; margin-left: 0.4em; background: #fff;
mask: url("../img/common/ic-arrow-line.svg") no-repeat top left/100% 100%; -webkit-mask: url("../img/common/ic-arrow-line.svg") no-repeat top left/100% 100%;}
.btn-cancel a:hover{background: #fff; color: #1F5F87;}
.btn-cancel a:hover:after{background: #1F5F87;}

.contact_notice {margin:0 auto 40px;font-size: 1.4rem;}

@media screen and (max-width: 767px){
    .frm-tbl,
    .frm-tbl tbody,
    .frm-tbl tr,
    .frm-tbl th,
    .frm-tbl td{width: 100%; display: block;}
    .frm-tbl{border-bottom: none;}
    .frm-tbl th,
    .frm-tbl td{border: none; border-bottom: 1px solid #B5B5B5; padding: 15px 20px;}
    
    .frm-tbl .required{font-size: 1rem; padding: 3px 7px;}
    
    .frm-info{margin: 30px 0 20px;}
    .frm-info:before{border-left: 22px solid transparent; border-right: 22px solid transparent; border-top: 14px solid #1F5F87; margin: 0 auto 20px;}
    
    .btn-cancel a{font-size: min(3.6vw,1.4rem);}
	
	.contact_notice {font-size: 1.3rem;}
}

.frm-tbl input,
.frm-tbl button,
.frm-tbl select,
.frm-tbl option,
.frm-tbl textarea{color: #333; word-spacing: 0; font-size: 1.6rem; line-height: 2; letter-spacing: 0.06em; font-family: "BIZ UDPGothic", serif;}

::placeholder{color: #A7A7A7; opacity: 1;}
::-ms-input-placeholder{color: #A7A7A7; opacity: 1;}

.frm-field,
.frm-area,
.frm-select{border-radius: 10px; border: 1px solid #DDDDDD; width: 100%; padding: 8px 19px;}

.frm-area{height: 142px;}
.frm-select{max-width: 380px; background: url("../img/common/ic-select.svg") no-repeat center right 20px/8px 4px; appearance: none;}

.frm-list{display: flex; flex-wrap: wrap;}
.frm-list li:not(:last-of-type){margin-right: 30px;}

.frm-radio{display: inline-block; position: relative; padding-left: 26px; cursor: pointer;  
-webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none;}
.frm-radio input{position: absolute; opacity: 0; cursor: pointer;}
.frm-radio span{position: absolute; top: 8px; left: 0; height: 16px; width: 16px; border: 1px solid #DDDDDD; border-radius: 50%; background: #fff;}
.frm-radio input:checked ~ span:after{display: block;}
.frm-radio span:after{content: ''; position: absolute; display: none; top: 3px; left: 3px; width: 8px; height: 8px; border-radius: 50%; background: #1f5e87;}

.frm-check{display: inline-block; position: relative; padding-left: 26px; cursor: pointer;  
-webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none;}
.frm-check input{position: absolute; opacity: 0; cursor: pointer;}
.frm-check span{position: absolute; top: 7px; left: 0; height: 16px; width: 16px; border: 1px solid #DDDDDD; border-radius: 2px; background: #fff;}
.frm-check input:checked ~ span:after{display: block;}
.frm-check span:after{content: ''; position: absolute; display: none; left: 5px; top: 2px; width: 3px; height: 7px; border: solid #1f5e87; border-width: 0 2px 2px 0; transform: rotate(45deg);}

.zipcode{display: flex; flex-wrap: wrap; align-items: center; width: 100%; max-width: 555px;}
.zipcode li:nth-of-type(1){width: 36px;}
.zipcode li:nth-of-type(2){width: calc(100% - 176px);}
.zipcode li:nth-of-type(3){width: 120px; margin-left: 20px;}
.zipcode-btn{background: #1F5F87; color: #fff !important; font-weight: bold; width: 100%; padding: 8px 0; text-align: center; border-radius: 6px; cursor: pointer;}
.zipcode-btn:hover{background: #025286;}

.zipcode2{display: flex; flex-wrap: wrap; align-items: center; width: 100%; margin: 20px 0 0 0;}
.zipcode2 li:nth-of-type(1){width: 165px;}
.zipcode2 li:nth-of-type(2){width: calc(100% - 165px);}

.box-btn{margin: 40px 0 0 0; width: 100%; display: flex; justify-content: center;}
.frm-btn{height: 3em; width: 480px; border-radius: 6px; font-size: 1.8rem; line-height: 1.3; font-weight: bold; display: flex; align-items: center; align-content: center; justify-content: center; margin: 0 20px 0 0; color: #fff; background: #1F5F87; cursor: pointer;}
.frm-btn:last-of-type{margin: 0 !important;}
.frm-btn:after{content: ''; background: url("../img/common/ic-arrow.svg") no-repeat right center/100% 100%; width: 6px; height: 11px; margin: 2px 0 0 10px;}
.frm-btn:hover{background: #025286;}

@media screen and (max-width: 767px){
    .frm-tbl input,
    .frm-tbl button,
    .frm-tbl select,
    .frm-tbl option,
    .frm-tbl textarea{font-size: 1.4rem;}
    
    .frm-field,
    .frm-area,
    .frm-select{border-radius: 6px; padding: 6px 15px;}
    
    .frm-radio span{top: 6px;}
    .frm-check span{top: 4px;}
    
    .frm-list li:not(:last-of-type){margin-right: 20px;}
    
    .zipcode li:nth-of-type(1){width: 30px;}
    .zipcode li:nth-of-type(2){width: calc(100% - 130px);}
    .zipcode li:nth-of-type(3){width: 90px; margin-left: 10px;}
    
    .zipcode2{margin: 15px 0 0 0;}
    .zipcode2 li:nth-of-type(1){width: 100%; margin: 0 0 5px;}
    .zipcode2 li:nth-of-type(2){width: 100%;}
    
    .box-btn{flex-wrap: wrap;}
    .frm-btn{font-size: 1.6rem; width: 100%; max-width: 480px; margin: 0 0 10px; border-radius: 4px;}
    .frm-btn:last-of-type{margin: 0;}
}

.policy{background: #F4F4F4; padding: 40px 20px; text-align: center; border-radius: 10px; margin: 60px 0 0 0;}
.policy-link{color: #1F5F87; text-decoration: underline; text-underline-offset: 0.3em;}
.policy-link:after{content:''; width: 17px; height: 17px; background: url("../img/common/ic-arrow-line_circle.svg") no-repeat top left/100% 100%; display: inline-block; margin: 0 10px 0 5px; position: relative; top: 3px;}
.policy-link:hover{opacity: .8;}
.frm-agree{margin: 20px 0 0 0;}

.grecaptcha-badge {
	bottom: 90px !important;
}

@media screen and (max-width: 767px){
    .policy{padding: 30px 20px; margin: 40px 0 0 0;}
}