@charset "utf-8";

/*------------------------------
  contact
------------------------------*/

/* content-kv */
.content-kv {
  height: 140px;
  background-color: #094;
}
@media only screen and (max-width:767px) {
  .content-kv {
    height: 60px;
  }
  .content-wrapper {
    padding: 5rem 2rem 0;
  }
}

/* content-top */
.content-top {
  text-align: center;
}
.content-box + .content-top {
  margin-top: -50px;
  margin-bottom: 100px;
}
.content-top .title {
  font-size: 2.4rem;
  line-height: 2;
  letter-spacing: .2em;
}
.contact-title {
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
  -ms-flex-direction: column-reverse;
  flex-direction: column-reverse;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 100%;
  margin: 5rem 0 3rem;
}
.contact-title .title-jpn {
  margin-top: 1rem;
  font-size: 1.3rem;
  letter-spacing: .08em;
}
.contact-info .phone {
  font-size: 3.2rem;
}
.contact-info .store {
  font-size: 2.4rem;
}
.contact-info .info {
  font-size: 1.2rem;
}
@media only screen and (max-width:767px) {
  .content-top .title {
    font-size: 2rem;
    letter-spacing: .1em;
    text-align: left;
  }
  .contact-info .phone {
    font-size: 2.8rem;
  }
  .contact-info .store {
    font-size: 2.2rem;
  }
}

/* sotre-list */
.store-list {
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin-top: 5rem;
}
.box-store {
  width: calc(40% - 10px);
  margin: 0 4px;
  padding: 3rem 2rem;
  background-color: #FFF;
}
.box-store .heading {
  font-size: 2.2rem;
}
.box-store .phone {
  font-size: 2rem;
}
.box-store .info {
  font-size: 1.2rem;
}
.store-list .note {
  width: 100%;
  margin-top: 2rem;
  font-weight: 400;
  font-size: 1.3rem;
  text-align: center;
}
@media only screen and (max-width:767px) {
  .box-store {
    width: 100%;
    margin-bottom: 4px;
    padding: 2rem 0;
  }
  .store-list .note {
    margin-top: 1.5rem;
    text-align: left;
  }
  .box-store .heading {
    font-size: 2.0rem;
  }
  .box-store .phone {
    font-size: 1.8rem;
  }
}

/* content-box */
.content-box {
  max-width: 680px;
  margin: 50px auto 150px;
}
.box-heading h2 {
  margin-bottom: 2rem;
  font-size: 2.4rem;
  letter-spacing: .1em;
  text-align: center;
}
.box-inner {
  margin-top: 3rem;
}
.box-inner p {
  font-size: 1.4rem;
  letter-spacing: .06em;
}
.box-inner p.confirm,
.box-inner .mw_wp_form_confirm p,
.box-inner .mw_wp_form_confirm .privacy {
  display: none;
}
.box-inner .mw_wp_form_confirm p.confirm {
  display: block;
}
@media only screen and (max-width:767px) {
  .box-heading h2 {
    font-size: 2rem;
    letter-spacing: .06em;
  }
}

/* contact-form */
.content-box#form {
  margin-top: -40px;
  padding-top: 140px;
}
.contact-form {
  width: 100%;
  margin-top: 3rem;
}
.contact-form,
.contact-form th,
.contact-form td {
  border: 0;
  background: none;
  font-size: 1.4rem;
}
.contact-form th {
  position: relative;
  width: 30%;
  padding: 2rem 0;
  vertical-align: top;
}
.contact-form th em {
  position: absolute;
  top: 2rem;
  right: 2rem;
  padding: 0 .5rem;
  border: 1px solid #094;
  border-radius: 4px;
  background-color: #FFF;
  color: #094;
  font-size: 1.2rem;
}
.contact-form td {
  width: 70%;
  padding: 1rem 0;
  vertical-align: middle;
}
.contact-form + .privacy,
.contact-form + .privacy + .send,
.form-privacy,
.form-button {
  margin-top: 2rem;
  margin-left: 30%;
}
.contact-form + .privacy {
  font-size: 1.4rem;
}
.contact-form + .privacy a {
  text-decoration: underline;
}
.contact-form input[type="text"],
.contact-form input[type="email"],
.contact-form textarea {
  width: 100%;
}
.contact-form input[type="text"]#expiry,
.contact-form input[type="text"]#prefer {
  width: 45%;
}
.contact-form input[type="text"]#year {
  width: 25%;
}
.contact-form + .send input[type="submit"],
.contact-form + .send input[type="button"] {
  margin-right: 10px;
}
.contact-form + .send input[type="button"] {
  background-color: #4C524C;
  color: #FFF;
}
.contact-form + .send input[type="button"]:hover {
  opacity: .8;
}
.form-privacy {
  font-size: 1.4rem;
}
.contact-form .wpcf7-list-item {
  display: block !important;
}
.mwform-radio-field,
.mwform-checkbox-field,
.contact-form .wpcf7-list-item {
  display: block;
  padding: .25rem 0;
}
.mw_wp_form .contact-form .horizontal-item + .horizontal-item {
  margin-left: 0;
}
.mwform-radio-field label,
.mwform-checkbox-field label,
.contact-form .wpcf7-list-item label {
  display: inline-block;
  cursor: pointer;
}
.mwform-radio-field .mwform-radio-field-text,
.mwform-checkbox-field .mwform-checkbox-field-text,
.contact-form .wpcf7-list-item-label {
  position: relative;
  padding-left: 3rem;
}
.mwform-radio-field .mwform-radio-field-text::before,
.mwform-checkbox-field .mwform-checkbox-field-text::before,
.contact-form .wpcf7-list-item-label::before {
  display: block;
  position: absolute;
  background-color: #fff;
  top: 50%;
  left: 0;
  width: 20px;
  height: 20px;
  margin: -11px 0 0 0;
  border-radius: 20px;
  border: 1px solid #AAA;
  content: '';
}
.mwform-checkbox-field .mwform-checkbox-field-text::before {
  border-radius: 0;
}
.mwform-radio-field .mwform-radio-field-text::after,
.mwform-checkbox-field .mwform-checkbox-field-text::after,
.contact-form .wpcf7-list-item-label::after {
  display: none;
}
.mwform-radio-field input[type="radio"]:checked + .mwform-radio-field-text:after,
.contact-form input[type="radio"]:checked + .wpcf7-list-item-label:after {
  display: block;
  position: absolute;
  top: 50%;
  left: 5px;
  width: 12px;
  height: 12px;
  margin: -6px 0 0 0;
  border-radius: 6px;
  background-color: #094;
  content: '';
}
.mwform-checkbox-field input[type="checkbox"]:checked + .mwform-checkbox-field-text:after {
  display: block;
  position: absolute;
  top: 50%;
  left: 5px;
  width: 12px;
  height: 6px;
  margin: -6px 0 0 0;
  border-bottom: 1px solid #4C524C;
  border-left: 1px solid #4C524C;
  content: '';
  transform: rotate(-45deg);
}
.mwform-radio-field input,
.mwform-checkbox-field input,
.wpcf7-list-item input {
  position: absolute;
  opacity: 0;
}
@media only screen and (max-width:767px) {
  .content-box#form {
    padding-top: 100px;
  }
  .contact-form tr,
  .contact-form th,
  .contact-form td {
    display: block;
    width: 100%;
  }
  .contact-form th {
    padding: 2rem 0 .5rem;
  }
  .contact-form th em {
    right: 0;
  }
  .contact-form td {
    padding-top: .357143em;
  }
  .contact-form input[type="text"],
  .contact-form input[type="email"],
  .contact-form textarea {
    width: 100%;
  }
  .contact-form + .send input[type="submit"],
  .contact-form + .send input[type="button"] {
    margin: 5px auto;
  }
  .contact-form + .send,
  .contact-form + .privacy,
  .contact-form + .privacy + .send,
  .form-privacy, .form-button {
    margin-top: 1rem;
    margin-left: 0;
    text-align: center;
  }
  div.wpcf7 .ajax-loader {
    display: none;
  }
}

/* form */
input, textarea {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	border-radius: 0;  
  font-size: 1.4rem;
  font-family: 'Roboto', 'Noto Sans JP', sans-serif;
}
select {
	max-width: 100%;
	padding: .5714285em 2.14286em .5714285em .5714285em;
	border: 1px solid #AAA;	
	border-radius: 0;  
	font-size: 1.4rem;
  font-family: 'Roboto', 'Noto Sans JP', sans-serif;
}
.ui-datepicker-title select {
  padding: inherit;
}
textarea {
	width: 100%;
	height: 100px;
	padding: .5714285em;
	border: 1px solid #bbb;
}
input[type="text"],
input[type="password"],
input[type="email"],
input[type="tel"],
input[type="number"],
input[type="search"],
input[type="url"] {
	padding: 1.071428em .5714285em;
	border: 1px solid #AAA;
}
input[type="button"],
input[type="submit"],
input[type="reset"] {
	padding: .714288em 1.42857em;
	border: none;
	background-color: #094;
  color: #FFF;
	-webkit-transition: .3s ease all;
	-moz-transition: .3s ease all;
	-o-transition: .3s ease all;
	transition: .3s ease all;
	-webkit-border-radius: 3px;  
	-moz-border-radius: 3px;  
	border-radius: 3px;  
}
input[type="button"]:hover,
input[type="submit"]:hover,
input[type="reset"]:hover {
	opacity: .8;
	cursor: pointer;
}
input[type="checkbox"] {
	border: 1px solid #CCC;
	-webkit-appearance: checkbox;
	-moz-appearance: checkbox;
	appearance: checkbox;
}
input[type="radio"] {
	border: 1px solid #AAA;
	-webkit-appearance: radio;
	-moz-appearance: radio;
	appearance: radio;	
}
input[type="file"] {
	border: none;
}
input:-webkit-autofill {
  box-shadow: 0 0 0 1000px #FFF inset;
}
::placeholder {
  color: #AAA;
}
@media only screen and (max-width:767px) {
  input, textarea {
    font-size: 1.6rem;
  }
}
