@charset "UTF-8";
/*----------------------------------------------------------------------
------------------------------------------------------------------------

File Name:
Note:

------------------------------------------------------------------------
----------------------------------------------------------------------*/
/*----------------------------------------------------------------------
------------------------------------------------------------------------
目次

1.	共通使用変数定義
2.	Function
3.	Layout
4.	Object
------------------------------------------------------------------------
----------------------------------------------------------------------*/
body,
h1,
h2,
h3,
h4,
h5,
h6,
div,
p,
ul,
ol,
dl,
form,
fieldset,
table,
address,
blockquote,
noscript,
pre,
tr,
td,
input,
textarea {
  margin: 0;
  padding: 0;
  line-height: 1;
  font-style: normal;
}

html {
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "ＭＳ Ｐゴシック", sans-serif;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: 1em;
  font-weight: normal;
}

small {
  font-size: 1em;
}

mark {
  background: none;
}

fieldset {
  border: 0;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
  font: 100%;
  font-size: inherit;
}

li {
  list-style-type: none;
}

dd {
  margin: 0;
}

a,
abbr,
acronym,
em,
strong,
span,
img,
sub,
sup,
input,
button,
textarea,
select,
label,
caption {
  font-weight: normal;
  font-style: normal;
}

a {
  text-decoration: none;
}

img {
  border: 0;
  vertical-align: bottom;
}

caption,
th {
  text-align: left;
  font-weight: normal;
}

th,
td {
  padding: 0;
}

input,
textarea,
select {
  font-family: inherit;
  font-size: inherit;
}

textarea {
  vertical-align: top;
}

iframe {
  border: 0;
}

@media (max-width: 319px) {
  html {
    font-size: 10px;
  }
}
@media (min-width: 320px) and (max-width: 639px) {
  html {
    font-size: calc(3.125vw + 0rem);
  }
}
@media (min-width: 640px) {
  html {
    font-size: 20px;
  }
}
header,
footer,
article,
section,
aside,
nav,
figure,
figcaption {
  display: block;
  margin: 0;
  padding: 0;
}

input[type="search"] {
  box-sizing: content-box;
  -webkit-appearance: none;
}
input[type="search"]::-webkit-search-cancel-button, input[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

html {
  color: #505050;
}

body {
  font-feature-settings: 'pkna' 1;
}

img {
  max-width: 100%;
  height: auto;
}

a {
  color: #6d9dcf;
}

object {
  transition: opacity .1s linear;
}
object.is-inactive {
  opacity: 0;
}
object.is-active {
  opacity: 1;
}

body > img {
  display: none;
  width: 0;
  height: 0;
  vertical-align: top;
}
body.is-fixed {
  overflow: hidden;
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}

.l-header {
  position: relative;
}

form {
  display: inline-block;
  position: relative;
  width: 100%;
  text-align: left;
  color: #505050;
}
form legend {
  display: none;
}
form dl {
  padding: 2.6666666667% 0;
}
form dt {
  position: relative;
  margin-bottom: .5em;
}
form dt label {
  line-height: 1.4em;
  font-weight: bold;
}
form dt em {
  color: #ee7b75;
}
form dt span {
  display: inline-block;
  margin-left: 10px;
  padding: 4px 7px;
  background: #ee7b75;
  font-size: 10px;
  color: #fff;
}
form dt .option {
  background: #949494;
  color: #fff;
}
form dd label span {
  display: inline-block;
  margin-left: 10px;
  padding: 4px 7px;
  background: #ee7b75;
  font-size: 10px;
  color: #fff;
}
form dd label span.option {
  background: #949494;
  color: #fff;
}
form dd input,
form dd select,
form dd textarea {
  box-sizing: border-box;
  width: 100%;
}
form dd textarea {
  border-radius: .2em;
  padding: .5em;
  border: solid .1em #c7bcb5;
  line-height: 1.5em;
  color: #7f7875;
}
form dd input[type='text'], form dd input[type='email'], form dd input[type='submit'], form dd input[type='number'], form dd input[type='tel'] {
  border-radius: .2em;
  padding: .5em;
  width: 95%;
  border: solid .1em #c7bcb5;
  line-height: 1.5em;
  color: #7f7875;
}
form dd input[type='radio'], form dd input[type='checkbox'] {
  display: none;
  margin: 0;
}
form dd input[type='radio'] + label, form dd input[type='checkbox'] + label {
  display: inline-block;
  position: relative;
  margin-left: .9em;
  width: 95%;
  cursor: pointer;
}
form dd input[type='radio'] + label::before, form dd input[type='checkbox'] + label::before {
  box-sizing: border-box;
  content: '';
  display: block;
  position: absolute;
  top: .35em;
  left: -1.2em;
  width: 1em;
  height: 1em;
  border: .1em solid #7f7875;
  background: #fff;
}
form dd input[type='radio'] + label::before {
  border-radius: 50%;
}
form dd input[type='radio']:checked + label::after {
  box-sizing: border-box;
  content: '';
  display: block;
  position: absolute;
  top: 50%;
}
form dd input[type='checkbox']:checked + label::after {
  transform: rotate(-45deg);
  box-sizing: border-box;
  content: '';
  display: block;
  position: absolute;
  top: .3em;
  left: -1.05em;
  width: 1em;
  height: .6em;
  border-bottom: 0.3em solid #ba5974;
  border-left: 0.25em solid #ba5974;
}
form dd input[type='radio']:checked + label::after {
  border-radius: 50%;
  top: .55em;
  left: -.99em;
  width: .6em;
  height: .6em;
  background: #ba5974;
}
form dd input[type='submit'] {
  width: 80%;
  height: 3em;
  background: #ec7c78;
}
form dd input.short {
  width: 18%;
}
form dd input.middle {
  width: 64%;
}
form dd input.full {
  width: 100%;
}
form dd select {
  border-radius: .2em;
  padding: .5em;
  width: 95%;
  height: 2.6em;
  border: solid .1em #c7bcb5;
  line-height: 1.5em;
  color: #7f7875;
}
form dd select.hour {
  width: 33%;
}
form dd .date dt small {
  display: block;
  margin-top: 5px;
  line-height: 1.3em;
}
form dd .date dd label {
  display: block;
  margin-bottom: .5em;
  font-size: 12px;
}
form dd .date .input {
  display: inline-block;
  position: relative;
  margin-left: 1.5em;
  width: 96.6%;
}
form dd .date .input img {
  position: absolute;
  top: 26%;
  left: 52%;
}
form dd .errbg .table {
  border: solid .2em #ee7b75;
}
form dd .errbg input,
form dd .errbg textarea,
form dd .errbg select {
  border-color: #ee7b75;
}
form dd .table {
  border-radius: .2em;
  box-sizing: border-box;
  display: table;
  overflow: hidden;
  width: 100%;
  border: solid .1em #c7bcb5;
  background: #fff;
  table-layout: fixed;
}
form dd .table ol {
  display: table-row;
}
form dd .table ol:last-child li,
form dd .table ol .none {
  border-bottom: 0;
}
form dd .table li {
  display: table-cell;
  position: relative;
  padding: .5em;
  border: 0;
  border-bottom: solid .1em #c7bcb5;
  background: #fff;
  vertical-align: top;
  line-height: 1.6em;
}
form dd .table li:first-child {
  border-right: solid .1em #c7bcb5;
}
form dd #error {
  margin: 0 0 3em;
  padding: 1em;
}
form dd #error p {
  line-height: 1.25;
  font-size: 2em;
}
form .formError .formErrorArrow,
form .formError .formErrorClose,
form .errbg .formError .formErrorArrow,
form .errbg .formError .formErrorClose {
  display: none;
}
form .formError .formErrorContent,
form .errbg .formError .formErrorMsg {
  box-sizing: border-box;
  position: relative;
  width: 100%;
  background: initial !important;
}
form .formError .formErrorContent .errMsg,
form .errbg .formError .formErrorMsg .errMsg {
  display: block;
  margin-left: 1em;
  text-indent: -.9em;
  line-height: 1.4;
}
form .formError .formErrorContent .errMsg + .errMsg,
form .errbg .formError .formErrorMsg .errMsg + .errMsg {
  padding-top: .5em;
}

.yui-skin-sam .yui-calcontainer {
  margin: 0 1%;
  width: 98% !important;
  min-width: 300px !important;
  font-size: 1.2rem !important;
}
.yui-skin-sam .yui-calcontainer .title {
  border-top: 0;
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "ＭＳ Ｐゴシック", sans-serif;
  font-size: 1.4rem;
}
.yui-skin-sam .yui-calcontainer .title::after {
  display: none;
}
.yui-skin-sam .yui-calcontainer .yui-calendar {
  width: 100% !important;
}
.yui-skin-sam .yui-calcontainer .calnavright {
  top: -10px !important;
  right: 0;
  width: 20px !important;
  height: 20px !important;
  background: url(http://www.theclinic.jp/m/img/tc_navi04.png) no-repeat;
  background-size: 20px !important;
  cursor: pointer;
}
.yui-skin-sam .yui-calcontainer .calnavleft {
  width: 20px !important;
  height: 20px !important;
  background-size: 20px !important;
}

.m-lead {
  margin: 0 auto 4%;
  width: 92%;
  line-height: 1.3;
  font-size: 1.3rem;
  color: #6a6a6a;
}
.m-lead em {
  color: #ba5974;
}
.m-lead-box {
  margin: 8% auto 0;
  width: 94%;
}
.m-lead-title {
  padding: 3% 0;
  background-color: #61564c;
  text-align: center;
  font-size: 1.5rem;
  font-weight: bold;
  color: #fff;
}
.m-lead-contents {
  padding: 3%;
  border: 1px solid #c7bcb5;
  border-top: 0;
  background-color: #f5f2f0;
}
.m-lead-contents-text {
  line-height: 1.4615384615;
  font-size: 1.3rem;
}
.m-lead-contents-text em {
  font-weight: bold;
  color: #ba5974;
}

.m-note {
  box-sizing: border-box;
  margin: 0 auto 5.3333333333%;
  width: 92%;
}
.m-note-title {
  padding: .6em 0;
  background-color: #969696;
  text-align: center;
  font-size: 1.4rem;
  font-weight: bold;
  color: #fff;
}
.m-note-contents {
  background: #fff;
}
.m-note-text {
  padding: 1em;
  line-height: 1.4615384615;
  font-size: 1.3rem;
}
.m-note-text em {
  font-weight: bold;
  color: #ba5974;
}

.form-wrapper {
  position: relative;
}

.form-item {
  box-sizing: border-box;
  position: relative;
  margin: 0;
  padding: 5.3333333333% 2.6666666667%;
  width: 100%;
  border-top: .1em solid #c7bcb5;
  background-color: #fff;
  text-align: left;
}
.form-item:last-child {
  border-bottom: solid .1em #c7bcb5;
}
.form-item:nth-child(odd) {
  background-color: #f5f2f0;
}

.form-input {
  margin: 0;
  padding: 0;
  width: 100%;
  background-image: url(../mobile/img/dummy.png);
}
.form-input.errbg {
  background: none;
}
.form-input.errbg input,
.form-input.errbg select,
.form-input.errbg .table {
  border-color: #ba5974;
}

.item-inner {
  box-sizing: border-box;
  padding: 0;
  font-size: 1.6rem;
}

.form-label {
  background-image: url(../mobile/img/dummy.png);
}
.form-label span {
  position: relative;
  top: -.1em;
  background-color: #ba5974;
  font-size: 1.3rem;
}
.form-label .option {
  background-image: url(../mobile/img/dummy.png);
  background-color: #999;
}
.form-label em {
  color: #ba5974;
}
.form-label small {
  font-size: 1.2rem;
}

.clinic li {
  letter-spacing: -.04em;
}

.full,
.short,
.middle,
textarea {
  box-sizing: border-box;
  appearance: none;
  padding: .5em;
}

.full,
.short,
textarea {
  width: 100%;
}

.middle {
  width: 64%;
}

.chkradio label {
  margin-left: 1em;
}

.formErrorContent {
  padding: 0;
}

.date #consultation_form_date2,
.date #counseling_form_date2 {
  margin-top: 1em;
}
.date .input {
  margin-left: 0;
}
.date .input img {
  top: 23%;
  left: 54%;
  width: 8%;
}
.date .form-input label {
  font-size: 1.4rem;
}
.date select.hour {
  padding: 0 .5em;
  height: 2.6em;
  line-height: 1;
  font-size: 1.6rem;
}

.m-button {
  overflow: hidden;
  box-sizing: border-box;
  padding: 8% 0;
  width: 100%;
  background-color: #fff;
}
.m-button-item {
  margin: 0 auto;
  border: 0;
  background: none;
  text-align: center;
}
.m-button input {
  border-radius: 0;
  width: 100%;
  height: auto;
  vertical-align: top;
}

.m-address {
  display: block;
  margin: 0 4% 4%;
  border: .1em solid #c7bcb4;
  background: #eae6e2;
}
.m-address > * {
  display: block;
  padding: 3% 0;
  width: 100%;
  text-align: center;
}
.m-address-title,
.m-address .term {
  width: 100%;
  font-size: 1.3rem;
  color: rgba(88, 88, 88, 0.5);
}
.m-address-contents,
.m-address .description {
  box-sizing: border-box;
  padding: 5.5% 1%;
  font-size: 1.8rem;
  font-weight: bold;
  color: #ba5974;
  word-break: break-all;
}

.m-attention {
  margin: 0 4%;
  color: #6a6a6a;
}
.m-attention-title {
  margin-bottom: 1.25%;
  padding: 2.5% 0 2.5% 13%;
  background: url(../../img/sp/form_attention_title_bg.png) left top no-repeat;
  background-size: 9%;
  font-size: 1.2rem;
  font-weight: bold;
}
.m-attention-list {
  margin-top: .6em;
}
.m-attention-text {
  line-height: 1.5;
  font-size: 1.1rem;
}
.m-attention-text a {
  font-weight: bold;
  color: #ba5974;
  text-decoration: underline;
}
.m-attention-item {
  margin-top: .4em;
  padding-left: 1.1em;
  text-indent: -.9em;
  line-height: 1.3846153846;
  font-size: 1.1rem;
}
.m-attention-item::before {
  content: '●';
}
.m-attention-item:first-child {
  margin-top: 0;
}

.confirmation .tel .form-input,
.confirmation .tel .form-input > *,
.confirmation .email .form-input,
.confirmation .email .form-input > * {
  font-size: 1.8rem;
  color: #ba5974;
}

.grecaptcha-badge {
  visibility: hidden;
}

.input-form-wrapper .input-form-item {
  border-top: 0;
  margin-top: 0.5333333333vw;
}
.input-form-wrapper .input-form-item .item-inner {
  padding: 5.3333333333vw 4.6666666667vw 4vw;
}
.input-form-wrapper .input-form-item:first-child {
  margin-top: 1.0666666667vw;
}
.input-form-wrapper .input-form-item:last-child {
  border-bottom: 0;
}
.input-form-wrapper .input-form-item:nth-child(odd), .input-form-wrapper .input-form-item.odd.odd, .input-form-wrapper .input-form-item:nth-child(even), .input-form-wrapper .input-form-item.even.even {
  background-color: none;
  background: rgba(255, 255, 255, 0.7);
}
.input-form-wrapper .input-form-label {
  margin-bottom: 2.6666666667vw;
}
.input-form-wrapper .input-form-label label::after {
  content: none;
}
.input-form-wrapper .required .input-form-label label::after {
  content: '';
  float: right;
  padding-top: 6.4vw;
  width: 16.4vw;
  background: url(../../img/sp/form_required_ok.png) left bottom no-repeat;
  background-size: 100% auto;
  background-position: left top;
}
.input-form-wrapper .required .is-empty::before {
  background-color: inherit;
}
.input-form-wrapper .required.is-empty .input-form-label label::after {
  content: '';
  float: right;
  padding-top: 6.4vw;
  width: 13.4666666667vw;
  background: url(../../img/sp/form_required.png) left bottom no-repeat;
  background-size: 100% auto;
  background-position: left top;
}
.input-form-wrapper .required.err .input-form-label label::after {
  content: '';
  float: right;
  padding-top: 6.4vw;
  width: 13.4666666667vw;
  background: url(../../img/sp/form_required_ng.png) left bottom no-repeat;
  background-size: 100% auto;
  background-position: left top;
}

.input .input-form {
  margin: 0;
}
.input .input-form-wrapper {
  margin-bottom: 0;
}
.input .input-form-wrapper .input-form-label label {
  line-height: 1;
  font-size: 4.8vw;
  color: #585858;
}
.input .input-form-wrapper .input-form-input-item label {
  font-size: 4vw;
}
.input .input-form-wrapper .input-form-input-table {
  border-radius: 0.5333333333vw;
  border: 0.2666666667vw solid #a2a2a2;
}
.input .input-form-wrapper .input-form-input-item {
  border-right: 0.2666666667vw solid #a2a2a2;
  border-bottom: 0.2666666667vw solid #a2a2a2;
}
.input .input-form-wrapper .input-form-input-item:nth-child(even) {
  border-right: 0;
}
.input .input-form-wrapper textarea,
.input .input-form-wrapper input[type='text'],
.input .input-form-wrapper input[type='email'],
.input .input-form-wrapper input[type='submit'],
.input .input-form-wrapper input[type='number'],
.input .input-form-wrapper input[type='tel'] {
  padding: 3.2vw 4vw;
  border-radius: 1.0666666667vw;
  border: 0.2666666667vw solid #a2a2a2;
}
.input .input-form-wrapper input::placeholder,
.input .input-form-wrapper textarea::placeholder {
  color: #bdb9b7;
}
.input .input-form-wrapper .input-form-item.contents td {
  display: block;
  width: 100%;
}
.input .input-form-wrapper .input-form-item.contents td:first-child {
  border-bottom: 0.2666666667vw solid #a2a2a2;
}
.input .input-form-text {
  margin: 5.3333333333vw 4.8vw 0;
  line-height: 1.5;
  font-size: 3.7333333333vw;
}
.input .input-form-text a {
  color: #7f7875;
  text-decoration: underline;
}
.input .input-form-button {
  padding: 13.3333333333vw 0 45.3333333333vw;
}
.input .m-form {
  background: linear-gradient(#fff, #e1dcd7);
}
.input .m-form.is-decorate {
  background: linear-gradient(#fff, #e1dcd7);
}
.input .date .input-form-label small {
  font-size: 3.7333333333vw;
}
.input .date .input-form-input input[type='text'] {
  font-size: 4.2666666667vw;
}
.input .date .input-form-input select {
  margin-left: 0;
  width: 36.9333333333vw;
  height: 12vw;
  font-size: 3.7333333333vw;
}
.input .date .input-form-input + .input-form-input {
  margin-top: 5.0666666667vw;
}
.input .input-form-privacy {
  display: none;
  border-top: 0.2666666667vw solid #e3e3e3;
  background: #e1dcd7;
  background-size: contain;
}
.input .input-form-privacy-inner {
  box-sizing: border-box;
  height: 100%;
  padding: 6.6666666667vw 2.9333333333vw 13.3333333333vw;
  color: #918c88;
}
.input .input-form-privacy .button-close {
  position: absolute;
  top: 2.9333333333vw;
  right: 2.9333333333vw;
  cursor: pointer;
}
.input .input-form-privacy .main-title {
  font-size: 5.3333333333vw;
  font-weight: bold;
  margin-bottom: 4vw;
  color: #7f7875;
}
.input .input-form-privacy .title {
  font-size: 3.7333333333vw;
  font-weight: bold;
  margin-bottom: 2.6666666667vw;
  color: #7f7875;
}
.input .input-form-privacy .text,
.input .input-form-privacy .item {
  line-height: 1.5;
  font-size: 3.2vw;
}
.input .input-form-privacy .contents-title {
  font-size: 3.2vw;
  margin-bottom: 1.3333333333vw;
}
.input .input-form-privacy .list {
  counter-reset: list;
  margin-bottom: 2.6666666667vw;
}
.input .input-form-privacy .item {
  margin-left: 8.5333333333vw;
  text-indent: -8.5333333333vw;
  text-align: justify;
}
.input .input-form-privacy .item:nth-child(n)::before {
  counter-increment: list;
  content: "（" counter(list) "）";
}
.input .input-form-privacy .text {
  margin-bottom: 2.6666666667vw;
}
.input .input-form-privacy .text + .text,
.input .input-form-privacy .text + .list {
  margin-top: 2.6666666667vw;
}
.input .input-form-privacy .text.date {
  text-align: right;
}
.input .input-form-privacy .text + .title,
.input .input-form-privacy .list + .title {
  margin-top: 5.3333333333vw;
}
.input .input-form-privacy #reception dt,
.input .input-form-privacy #reception dd {
  line-height: 1.5;
  font-size: 3.2vw;
}
.input .input-form-privacy #reception dl {
  display: flex;
}
.input .input-form-privacy #reception a {
  color: #918c88;
}
.input .input-form-privacy.is-decorate {
  background: #e1dcd7;
}
.input .show-privacy .input-form-wrapper {
  filter: blur(2.1333333333vw);
}
.input .show-privacy .input-form-privacy {
  opacity: 1;
  pointer-events: all;
}
.input .popup {
  position: fixed;
  z-index: 1000;
  right: 0;
  left: 0;
  opacity: 0;
  transition: all 0.4s cubic-bezier(0.45, 0.05, 0.55, 0.95);
  bottom: 6.6666666667vw;
}
.input .popup.is-popup {
  opacity: 1;
}
.input .popup.is-hidden {
  transform: translateY(100%);
}
.input .popup__wrapper {
  padding: 1rem;
}
.input .popup__inner {
  position: relative;
}
.input .popup__box {
  position: absolute;
  display: flex;
  align-items: center;
  opacity: 0;
  padding: .5rem 1rem;
  width: 93%;
  background: #000;
  border-radius: .4rem;
  font-size: 1rem;
  color: #fff;
  transition: all 0.4s cubic-bezier(0.45, 0.05, 0.55, 0.95);
}
.input .popup__box.is-disp {
  opacity: 1;
}
.input .popup__box::after {
  content: '×';
  display: flex;
  justify-content: center;
  position: absolute;
  top: -.8rem;
  right: -.5rem;
  width: 1.5rem;
  height: 1.5rem;
  background: #000;
  border-radius: 50%;
  line-height: 1;
  font-size: 1.3rem;
}
.input .popup .box1::before {
  content: '';
  margin-right: 1rem;
  background: url(../mobile/img/popup_pic1.png) left top no-repeat;
  background-size: 100%;
}
.input .popup .box2::before {
  content: '';
  margin-right: 1rem;
  background: url(../mobile/img/popup_pic2.png) left top no-repeat;
  background-size: 100%;
}

.send .h-title {
  margin-bottom: 5.3333333333vw;
}
.send .m-form {
  background: none;
  background-size: auto;
}
.send .m-button {
  padding: 13.3333333333vw 10.6666666667vw;
  background-color: inherit;
}

/*# sourceMappingURL=form.css.map */
