/* --------------------
   main
-------------------- */
#main {
  background: url("../images/contact/back.jpg") no-repeat center bottom;
  background-size: cover;}
@media screen and (max-width: 768px){
  #main {
    background: url("../images/contact/back-sp.jpg") no-repeat center bottom;
    background-size: cover;}}

/* --------------------
   tel
-------------------- */
#tel { padding: 160px 0 0;}
#tel .contents { max-width: 960px;}
#tel h1 { padding: 80px 0 40px;}
#tel hr {
  padding-top: 60px;
  border: none;
  border-bottom: 1px solid #1D4494;}

@media screen and (max-width: 768px){
  #tel { padding: 15vw 0 0;}
  #tel h1 { padding: 10vw 0 20px;}
  #tel hr { padding-top: 15vw;}}
@media screen and (max-width: 480px){
  #tel h1 {  font-size: 24px;}}

/* --------------------
   mail
-------------------- */
#mail .contents { max-width: 960px; padding-bottom: 160px;}
#mail h1 { padding: 80px 0 40px;}
#mail table {
  margin: 60px auto 26px;
  width: 100%;
  border-top: 1px solid #DCE2EB;}
#mail table th, #mail table td {
  text-align: left;
  vertical-align: top;
  padding: 16px 0;
  border-bottom: 1px solid #DCE2EB;}
#mail input[type="text"], #mail textarea,
#mail input[type="email"], #mail input[type="tel"] {
  background: #fff;
  border: 1px solid #DCE2EB;
  font-size: 18px;
  height: 40px;
  width: 100%;
  color: #000;
  padding: 0 0.5em;}
#mail select {
  padding: .4em calc(.8em + 30px) .4em .8em;
  appearance: none;
  height: 40px;
  background: #fff;
  color: #000;
  border: 1px solid #DCE2EB;
  width: 100%;
  cursor: pointer;}
#mail textarea {
  height: 200px;
  padding: 0.5em 0.5em;
  width: 100%;}
#mail input[type="submit"] {
  margin: 60px auto 0;
  display: block;
  border: none;
  background: #1D4494;
  color: #fff;
  width: 160px;
  height: 64px;}
#mail .wpcf7-form-control-wrap { width: 100%;}
#mail .selectbox {
  display: inline-flex;
  align-items: center;
  width: 100%;
  position: relative;}
#mail .selectbox::after {
  position: absolute;
  right: 15px;
  top: 18px;
  width: 8px;
  height: 5px;
  background-color: #1D4494;
  clip-path: polygon(0 0, 100% 0, 50% 100%);
  content: '';
  pointer-events: none;}
#mail a { text-decoration: underline;}
#mail .chec {
  padding-bottom: 32px;
  border-bottom: 1px solid #DCE2EB;
  text-align: center;
  color: #1B2431;
  line-height: 20px;}
#mail .chec input[type="checkbox"] { display: none;}
#mail .chec label {
  padding-left: 30px;
  position: relative;
  margin: 10px auto 0;
  display: inline-block;}
#mail .chec label::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  display: block;
  width: 20px;
  height: 20px;
  border: 1px solid #DCE2EB;
  border-radius: 4px;
  background-color: #fff;
  box-sizing: border-box;}
#mail .chec input[type="checkbox"]:checked + .wpcf7-list-item-label::before {
  content: "";
  position: absolute;
  left: 3px;
  top: 3px;
  width: 14px;
  height: 14px;
  background-color: #1D4494;
  border-radius: 3px;
  display: inline-block;}
.thanks-message {
  font-weight: bold;
  text-align: center;
  font-size: 2rem;
  color: #1D4494;
  padding: 10rem 0 200px;}
@media screen and (max-width: 768px){
  #mail .contents { padding: 15vw 4vw 30vw;}
  #mail h1 { padding: 10vw 0 20px;}
  #mail table { padding-top: 0; margin-top: 20px;}
  #mail table th, #mail table td { display: block;}
  #mail table th {
    border-bottom: none;
    padding-bottom: 0;}
  #mail input[type="submit"] { margin-top: 10vw;}}
@media screen and (max-width: 480px){
  #mail h1 {  font-size: 24px;}}