@charset "UTF-8";
/* ---------------------------------------------------
	common
------------------------------------------------------ */
#pagetit {
  background: url(../images/contact/bg-pagetit.webp) no-repeat center;
  background-size: cover;
}

/* ---------------------------------------------------
	contact
------------------------------------------------------ */
body{
    background: url("../images/wedding/bg-form.jpg") !important;
    background-size: cover;
}
#contact {
/*  margin-bottom: 150px;*/
padding: 100px 0 150px;
  background-image:  url("../images/wedding/bg-form-deco1.png"), url("../images/wedding/bg-form-deco2.png");
  background-repeat: no-repeat, no-repeat;
  background-size: 600px, 600px;
  background-position: top right, bottom left;
}
.nowrap {
  flex-wrap: nowrap;
}
.flexbox{
    margin-bottom: 20px;
}
.sec-form dt {
  width: 30%;
  padding: 26px 20px;
  line-height: 1.6;
  background: none;
}
.sec-form dd {
  width: calc(100% - 30%);
  padding: 18px 20px;
  word-wrap: break-word;
  line-height: 1.6;
  margin-left: 0;
  background: none;
}
.sec-form .must {
	display: block;
	background-color: #920000;
	padding: 2px 5px;
	font-size: 16px;
	color: #FFF;
	float: left;
	margin: 0px 20px 0px 5px;
	border-radius: 4px;
	background-size: 100% 100%;
}
.sec-form .optionally {
	display: block;
	background-color: #fff;
	padding: 2px 5px;
	font-size: 16px;
	color: #222;
	float: left;
	margin: 0px 20px 0px 5px;
	border-radius: 4px;
	background-size: 100% 100%;
}
.mailform {
  margin-bottom: 30px;
}
form#mailformpro  textarea {
  width: 100%!important;
  max-width: 100%;
  min-height: 1.75em;
  margin: 0;
  padding: 12px 10px;
  border: 1px solid #ccc;
  border-radius: 5px;
  box-shadow: none;
  font-size: 18px;
  font-weight: 400;
  line-height: 1.5;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -webkit-appearance: none;
}
form#mailformpro input[type=text],
form#mailformpro input[type=tel],
form#mailformpro input[type=email],
form#mailformpro input[type=number]{
  width: 100%;
  max-width: 100%;
  min-height: 1.75em;
  margin: 0;
  padding: 8px;
  border: 1px solid #ccc;
  border-radius: 5px;
  box-shadow: none;
  font-size: 18px;
  font-weight: 400;
  line-height: 1.5;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -webkit-appearance: none;
}
form#mailformpro input[type=text].zip {
  width: 30%;
}
form#mailformpro select {
  width: 30%;
  max-width: 100%;
  min-height: 1.75em;
  padding: 8px 10px;
  background: none;
  border: 1px solid #ccc;
  border-radius: 5px;
  box-shadow: none;
  font-size: 18px;
  font-weight: 400;
  line-height: 1.5;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  background: #fff;
  margin-bottom: 5px;
}
form#mailformpro .address {
  margin-bottom: 10px;
}
form#mailformpro button {
  position: relative;
  display: inline-block;
  width: 400px;
  max-width: 100%;
  margin: 0 1%;
  padding: 22px 10px;
  background: #d4af37;
  border: none;
  color: #222;
  cursor: pointer;
  font-size: 20px;
  font-weight: 500;
  line-height: 1.5;
  text-align: center;
  text-shadow: none;
  transition: all 0.2s;
  border-radius: 0;
}
form#mailformpro button:hover {
  opacity: 0.8;
}
form#mailformpro select {
  color: #222;
}
@media screen and (max-width: 896px) {
  #contact {
    padding: 20px 0 130px;
/*    margin-bottom: 130px;*/
    background-size: 380px, 380px;
  }
  #mailformpro .flexbox {
    display: block;
  }
  .sec-form {
    margin-top: 50px;
  }
  .sec-form .optionally,
  .sec-form .must {
    font-size: 16px;
  }
  .sec-form dt {
    width: 100%;
    border-top: none;
    font-size: 18px;
    padding: 15px 0;
  }
  .sec-form dd {
    width: 100%;
    padding: 5px 0;
  }
  form#mailformpro input[type=text].zip {
    width: 45%;
  }
  form#mailformpro select {
    -webkit-appearance: none;
    appearance: none;
    width: calc(100% - 2px);
    padding: 12px 10px;
    min-height: 45px;
  }
  form#mailformpro button {
    width: 90%;
    padding: 16px 10px;
  }
}
/* thanksページ */
.thanks {
  padding: 50px 0 0;
}
.thanks h2 {
  margin-bottom: 20px;
  letter-spacing: 0;
}
.thanks p {
  text-align: center;
}
@media screen and (max-width: 896px) {
  .thanks h2 {
    font-size: 2.4rem;
  }
  .thanks p {
    text-align: left;
  }
}
/*-------------------------------------------*/
/*
/*　　tablet
/*
/*-------------------------------------------*/
/*-------------------------------------------*/
/*
/*　　print
/*
/*-------------------------------------------*/
