/*style sheet for Musashi-clinic Copyright All rights reserved*/

header {
  margin: 20px 0 0 0;
  padding: 0;
  width: 100%;
  position: relative;
  color: #65AADD;
}

@media (min-width: 768px) {
a[href*="tel:"] {
pointer-events: none;
cursor: default;
text-decoration: none;
}
}

.topinfo {
	margin: 10px 0 0;
	display: flex;
}

.ti01 {
	margin: 0 auto 0;
}

.telno a {
		text-decoration: none;
		color: #65AADD;
}

@media screen and (max-width: 768px) {
	
	.top-logo {
		max-width: 100px;
		margin: 10px auto 20px;
	}
	
	.top-logo img {
		width: 100%;
	}
	
	.topinfo {
		display: block;
		margin-bottom: 15px;
	}
	
	.ti01,.ti02 {
		text-align: center;
	}
	
	.form-wrap {
		max-width: 400px;
		padding: 0 30px;
	}
}



.form_body {width: 90%; margin: 0 auto; padding-left: 13%;}
.ast {font-size: 1.2rem;}




.contact_btn {
	font-size: 1.4em;
}

.btn btn-default {
	margin: 0 30px 0 0;
}

@media screen and (max-width: 768px) {
	.contact-btn {
		max-width: 400px;
		display: flex;
	}
	
}


.ttl_lv2{font-family: 'Quicksand', sans-serif;
  letter-spacing: 0.15rem;
}

.ttl_lv2 {
  margin-bottom: 5px !important;
  width: 100%;
  font-size: 16px;
  font-size: 1.1rem;
  line-height: 28px;
  line-height: 2.8rem;
  color: #4d4d4d;
  text-align: center;
  font-weight: bold;
  position: relative;
}

.ttl_lv2:after {
  content: '';
  margin: 0 auto;
  width: 70px;
  height: 1px;
  background-color: #4e5071;
  display: block;
  position: absolute;
  bottom: -10px;
  left: 0;
  right: 0;
}

.ttl_lv2._wh {
  color: #fff;
}

.ttl_lv2._wh:after {
  background-color: #fff;
}

.ttl_lv2._quicksand {
  font-size: 20px;
  font-size: 2rem;
  line-height: 20px;
  line-height: 2rem;
  font-weight: 400;
}

@media only screen and (min-width: 768px) {
  .ttl_lv2 {
    margin-bottom: 50px;
  }
}

.card-header {
	font-size: 1.1em;
	color: #a9a9a9;
	padding-bottom: 20px;
}

.card-header img{width: 9%; opacity: 0.6;}

.formnote {
  margin: 0 auto 20px;
  padding: 25px 20px;
  width: 91%;
  text-align: center;
}

@media only screen and (max-width: 768px) {
  .formnote {
    max-width: 450px;
  }
}

.formnote span {
  color: #3972b7;
}

form {
  margin-bottom: 30px;
  padding: 0 20px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-direction: normal;
  -webkit-box-orient: horizontal;
  -webkit-flex-direction: row;
  -moz-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  -webkit-justify-content: space-between;
  -moz-justify-content: space-between;
  justify-content: space-between;
  /* Google Chrome, Safari, Opera 15+, Android, iOS */
  /* Firefox 18- */
  /* Firefox 19+ */
  /* IE 10+ */
}

@media only screen and (min-width: 768px) {
  form {
    margin: 0 auto;
    padding: 0;
    width: 680px;
  }
}

form input {
  box-sizing: border-box;
}

form input[type=text],
form input[type=email] {
  padding: 19px 15px 19px 15px;
  width: 100%;
  border: 1px solid #d5d5d5;
  color: #333;
  font-size: 13px;
  /* フォント置換による類似 */
  font-weight: 500;
  line-height: 26px;
  /* フォント置換による類似 */
  text-align: left;
}

@media only screen and (min-width: 768px) {
  form input[type=text],
  form input[type=email] {
    padding: 10px 15px 10px 15px;
  }
}

form select {
  -moz-appearance: none;
  -webkit-appearance: none;
  appearance: none;
  padding: 10px 15px 10px 15px;
  width: 100%;
  background: url(images/select_arrow.png) no-repeat right 50%;
  border: 1px solid #d5d5d5;
  border-radius: 0;
  font-size: 13px;
  font-size: 1.3rem;
  line-height: 26px;
  line-height: 2.6rem;
}

form label {
  margin-bottom: 10px !important;
  padding: 0 15px 0 0;
  display: inline-block;
  line-height: 21px;
  color: #333;
  text-align: left !important;
}



form .horizontal-item {
  margin-left: 0 !important;
}

form textarea {
  margin-bottom: 25px;
  padding: 20px;
  width: 100%;
  height: 150px;
  border: 1px solid #d5d5d5;
  resize: vertical;
  box-sizing: border-box;
}

form :placeholder-shown {
  color: red;
}

form ::-webkit-input-placeholder {
  color: #a0a0a0;
}

form :-moz-placeholder {
  color: #a0a0a0;
  opacity: 1;
}

form ::-moz-placeholder {
  color: #a0a0a0;
  opacity: 1;
}

form :-ms-input-placeholder {
  color: #a0a0a0;
}

form .formitem {
  margin-bottom: 40px;
  width: 100%;
}

form .formitem p.label {
  margin:0 0 15px 15px;
  font-size: 0.9rem;
  line-height: 14px;
  line-height: 1.4rem;
  color: #696969;
  /* フォント置換による類似 */
  font-weight: bold;
  text-align: left !important;
}

form .formitem p.label span.mm {
  padding-right: 10px;
  color: #3972b7;
  font-size: 10px;
  font-size: 1rem;
}

form .formitem span.error,
form .captha span.error {
  color: #ff0000;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 28px;
  line-height: 2.8rem;
  display: inline;
  font-weight: bold;
}

form .formitem._second {
  width: 100%;
}

@media only screen and (min-width: 768px) {
  form .formitem._second {
    width: 48%;
  }
}

@media only screen and (max-width: 1000px) {
form .formitem p.label {
  font-size: 1.0rem !important;
}
}

form .formitem._third {
  width: 31%;
}

form .formitem._fourth {
  width: 23%;
}

form .formitem._reserve {
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-direction: normal;
  -webkit-box-orient: horizontal;
  -webkit-flex-direction: row;
  -moz-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  -webkit-justify-content: space-between;
  -moz-justify-content: space-between;
  justify-content: space-between;
}

form .formitem._reserve p.label {
  width: 100%;
}

form .formitem._reserve .rdate {
  margin-bottom: 30px;
  width: 100%;
}


@media only screen and (min-width: 768px) {
  form .formitem._reserve .rdate {
    margin-bottom: 0;
    width: 42%;
  }
}

form .formitem._reserve .rhour, form .formitem._reserve .rminite {
  width: 35%;
}

@media only screen and (min-width: 768px) {
  form .formitem._reserve .rhour, form .formitem._reserve .rminite {
    width: 20% !important;
  }
}

form .formitem._reserve span {
  line-height: 48px;
}

form .captha {
  margin: 0 auto 50px;
  width: 330px;
}

form .contact_btn {
  width: 100%;
  margin-bottom: 30px;
  height: 60px;
  
  font-weight: bold;
}

form .contact_btn .confirm {
  margin: 0 20px;
  padding: 1px;
  width: 40%;
  height: 60px;
  display: block;
  position: relative;
  background-color: #d4d4d4;
}



@media only screen and (min-width: 768px) {
  form .contact_btn .confirm {
    width: 194px;
  }
}

form .contact_btn .confirm:hover {
  text-decoration: none;
}

form .contact_btn .confirm:before, form .contact_btn .confirm:after {
  content: "";
  position: absolute;
  top: 0;
  border-top: 30px solid transparent;
  border-bottom: 30px solid transparent;
  transform: scaleX(0.7);
}

form .contact_btn .confirm:before {
  left: -18px;
  border-right: 18px solid #d4d4d4;
  transform-origin: right top;
}

form .contact_btn .confirm:after {
  right: -18px;
  border-left: 18px solid #d4d4d4;
  transform-origin: left top;
}

form .contact_btn .confirm span {
  height: 58px;
  display: block;
  position: relative;
  background-color: #fff;
}

form .contact_btn .confirm span:before, form .contact_btn .confirm span:after {
  content: "";
  position: absolute;
  top: 0;
  border-top: 29px solid transparent;
  border-bottom: 29px solid transparent;
  transform: scaleX(0.7);
  z-index: 999;
}

form .contact_btn .confirm span:before {
  left: -18px;
  border-right: 18px solid #fff;
  transform-origin: right top;
}

form .contact_btn .confirm span:after {
  right: -18px;
  border-left: 18px solid #fff;
  transform-origin: left top;
}

form .contact_btn .confirm span input {
  width: 100%;
  background: url(images/arrow_r_7x12_b.png) no-repeat 240px center;
  border: none;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 56px;
  line-height: 5.6rem;
  text-align: center;
  color: #a8a8a8;
  font-weight: bold;
  font-style: normal;
  display: block;
}

form .contact_btn .back {
  margin: 0 20px;
  width: 35%;
  height: 60px;
  border: 1px solid #d4d4d4;
  background-color: #fff;
  color: #d4d4d4;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 50px;
  line-height: 5rem;
  text-align: center;
  display: block;
}

.priv-msg a {color: #a8a8a8; text-decoration: none;}
.priv-msg a:hover {color: #696969; text-decoration: none;}

.sent-psg{text-align: center; margin: 0 auto;}

@media only screen and (min-width: 768px) {
  form .contact_btn .back {
    width: 100px;
  }
}


