@charset "utf-8";

/* -------------------------------------------------- */
/* #block-contact */
/* -------------------------------------------------- */
#block-contact .attention{font-size:1.4rem;text-align:center;margin-top:15px;}
#block-contact .form{max-width:800px;margin:60px auto 0;}
#block-contact .form table{width:100%;}
#block-contact .form table th{font-size:1.8rem;padding:29px 0;font-weight:bold;width:13.5em;vertical-align:top;border-bottom:1px solid #332e2d;}
#block-contact .form table th sup{font-size:100%;}
#block-contact .form table td{padding:20px 0;vertical-align:top;border-bottom:1px solid #332e2d;}
#block-contact .form table tr:last-child th,
#block-contact .form table tr:last-child td{border-bottom:0;}
#block-contact .form table input,
#block-contact .form table textarea{border:0;width:100%;font-size:16px!important;padding:11px 15px;background:#eee;}
#block-contact .form table textarea{height:13em;}
#block-contact .form .attention2{font-size:1.4rem;text-align:center;margin-top:40px;}
#block-contact .form .privacy{border:1px solid #332e2d;text-align:center;margin:40px auto;font-weight:bold;}
#block-contact .form .privacy label{display:block;padding:20px;cursor:pointer;}
#block-contact .form .privacy label .wpcf7-list-item label{padding:0;}
#block-contact .form .privacy input[type="checkbox"]{display:none;}
#block-contact .form .privacy input[type="checkbox"] + .wpcf7-list-item-label{margin:8px 0;transition:.2s;display:inline-block;position:relative;padding:5px 0 5px 40px;cursor:pointer;line-height:1.4;}
#block-contact .form .privacy input[type="checkbox"]:checked + .wpcf7-list-item-label::before{border-color:#332e2d;animation:ripple 0.2s linear forwards;}
#block-contact .form .privacy input[type="checkbox"]:checked + .wpcf7-list-item-label::after{transform:scale(1) rotate(-45deg);}
#block-contact .form .privacy .wpcf7-list-item-label::before, #block-contact .form .privacy .wpcf7-list-item-label::after{position:absolute;content:'';border-radius:2px;transition:all .15s ease;transition-property:transform, border-color;}
#block-contact .form .privacy .wpcf7-list-item-label::before{left:5px;top:6px;width:20px;height:20px;background:#eee;}
#block-contact .form .privacy .wpcf7-list-item-label::after{top:11px;left:9px;width:10px;height:6px;transform:scale(0) rotate(-45deg);border-left:2px solid #332e2d;border-bottom:2px solid #332e2d;}
#block-contact .form .submit{margin-top:80px;text-align:center;}
#block-contact .form .submit > div{display:inline-block;position:relative;}
#block-contact .form .submit > div::after{content:"";display:block;width:21px;height:12px;background:url(/img/arrow01.png) no-repeat center center;background-size:contain;position:absolute;top:50%;right:0;margin-top:-6px;transition:.25s ease;}
#block-contact .form .submit > div:hover::after{right:-5px;}
#block-contact .form .submit input{width:250px;padding:25px 40px 25px 0;border:0;border-bottom:1px solid #332e2d;background:transparent;background-size:21px auto;text-align:left;font-family:inherit;font-size:1.6rem;cursor:pointer;border-radius:0;color:#332e2d;}

#block-contact .form .wpcf7-spinner{position:absolute;top:calc(100% + 15px);left:50%;margin-left:-12px;}
#block-contact .form .wpcf7-not-valid-tip{font-size:1.4rem;font-weight:bold;margin-top:5px;display:block;}
#block-contact .wpcf7 form .wpcf7-response-output{font-size:1.6rem;font-weight:bold;text-align:center;padding:15px;margin:30px auto 0;max-width:800px;}
#block-contact .form .wpcf7-not-valid{border:1px solid red;}
#block-contact .form .privacy .wpcf7-not-valid{border:0;}

@media screen and (min-width:1px) and (max-width:767px){
  #block-contact .form table th{font-size:1.6rem;width:12.5em;}
}
@media screen and (min-width:1px) and (max-width:622px){
  #block-contact .attention{text-align:left;font-size:1.2rem;}
  #block-contact .form{margin-top:30px;}
  #block-contact .form table,
  #block-contact .form table tbody,
  #block-contact .form table tr,
  #block-contact .form table th,
  #block-contact .form table td{display:block;width:100%;}
  #block-contact .form table th{border-bottom:0;padding:15px 0 0;font-size:1.4rem;}
  #block-contact .form table td{padding:5px 0 20px;}
  #block-contact .form .attention2{font-size:1.2rem;margin-top:10px;}
  #block-contact .form .privacy{margin:30px auto;}
  #block-contact .form .privacy label{padding:10px;}
  #block-contact .form .privacy .wpcf7-list-item-label::before{top:4px;}
  #block-contact .form .privacy .wpcf7-list-item-label::after{top:9px;}
  #block-contact .form .submit{margin-top:30px;}
  #block-contact .form .submit input{width:200px;}
  #block-contact .form .wpcf7-not-valid-tip{font-size:1.2rem;}
#block-contact .wpcf7 form .wpcf7-response-output{font-size:1.4rem;}

}
