@charset "UTF-8";
/*

 */
body,
div,
dl,
dt,
dd,
ul,
ol,
li,
h1,
h2,
h3,
h4,
h5,
h6,
pre,
code,
form,
fieldset,
legend,
p,
blockquote,
th,
td {
  margin: 0;
  padding: 0; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

fieldset,
img {
  border: 0; }

address,
caption,
cite,
code,
dfn,
em,
strong,
th,
var,
optgroup {
  font-style: inherit;
  font-weight: inherit; }

del,
ins {
  text-decoration: none; }

li {
  list-style: none; }

caption,
th {
  text-align: left; }

h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: 100%;
  font-weight: bold; }

q:before,
q:after {
  content: ''; }

abbr,
acronym {
  border: 0;
  font-variant: normal; }

sup {
  vertical-align: baseline; }

sub {
  vertical-align: baseline; }

legend {
  color: #000; }

input,
button,
textarea {
  font-family: inherit;
  font-size: inherit;
  font-style: inherit;
  font-weight: inherit; }

input,
button,
textarea,
select {
  *font-size: 100%; }

h1, h2, h3, h4, h5, h6,
ul, ol, dl, dt, dd,
table, tr, th, td,
p, address, form, div {
  zoom: 1; }

a {
  _height: 1px;
  _cursor: hand; }

a img {
  cursor: pointer;
  _cursor: hand; }

ol li {
  zoom: normal; }

hr {
  display: none; }

img, object {
  vertical-align: top; }

strong {
  font-weight: bold; }

.field_with_errors {
  display: inline; }

#esthete_reservations.new table.formTable .question, #esthete_reservations.confirm table.formTable .question, #esthete_contacts.new table.formTable .question, #esthete_contacts.confirm table.formTable .question, #esthete_pamphlets.new table.formTable .question, #esthete_pamphlets.confirm table.formTable .question {
  margin: 21px 0 7px; }
  #esthete_reservations.new table.formTable .question:first-child, #esthete_reservations.confirm table.formTable .question:first-child, #esthete_contacts.new table.formTable .question:first-child, #esthete_contacts.confirm table.formTable .question:first-child, #esthete_pamphlets.new table.formTable .question:first-child, #esthete_pamphlets.confirm table.formTable .question:first-child {
    margin-top: 0; }

#esthete_reservations.new table.formTable .question, #esthete_reservations.confirm table.formTable .question {
  font-weight: bold; }

body {
  background: #fff;
  font-size: 16px;
  line-height: 1.5;
  color: #333;
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif sans-serif; }

a {
  color: #d2516c; }

.clearfix {
  zoom: 1;
  /* for IE5.5 - IE7 */ }

.clearfix:after {
  content: ".";
  display: block;
  visibility: hidden;
  height: 0.1px;
  font-size: 0.1em;
  line-height: 0;
  clear: both; }

#wrapper {
  width: 960px;
  margin: 0 auto; }

#header {
  position: relative;
  line-height: 1; }
  #header .logo {
    position: absolute;
    left: 0;
    top: 37px; }
    #header .logo p {
      font-size: 14px;
      margin-top: 15px; }
  #header .copy {
    position: absolute;
    left: 141px;
    top: 46px; }
  #header .tel {
    position: absolute;
    right: 0;
    top: 41px; }

#title {
  padding: 100px 0 0 0; }

#step {
  padding: 10px 0 0 0; }

#content {
  padding: 20px 0 0 0; }

.salon-link {
  margin-top: 10px; }

.description {
  font-size: 16px;
  line-height: 1.5;
  margin: 0 0 20px 0; }

.error {
  margin: 40px 0 0 0;
  color: red;
  font-weight: bold; }
  .error ul {
    margin: 20px 0 0 0; }
  .error img {
    vertical-align: middle; }

.errorText {
  color: red;
  font-weight: bold; }

.ssl {
  margin: 20px 0; }
  .ssl img {
    margin-right: 10px; }

.course {
  font-weight: bold;
  color: #d2516c; }

form {
  position: relative; }

input,
select {
  padding: 5px;
  font-size: 16px;
  margin-bottom: 5px; }

input:focus {
  background-color: #ffc1c4; }

select {
  height: 40px; }

.submit {
  margin: 40px 0 50px 0;
  text-align: center;
  position: relative;
  height: 50px; }
  .submit .back {
    position: absolute;
    left: 200px;
    top: 0; }
    .submit .back a {
      display: block;
      background: #cccccc;
      border-radius: 5px;
      width: 250px;
      height: 45px;
      font-size: 22px;
      -webkit-appearance: none;
      color: #666;
      font-weight: bold;
      text-decoration: none;
      padding-top: 15px; }
      .submit .back a:hover {
        opacity: 0.8;
        filter: alpha(opacity=80);
        -ms-filter: "alpha( opacity=80 )"; }
  .submit input[type=submit] {
    left: 50%;
    margin-left: -100px;
    padding: 15px 0;
    position: absolute;
    width: 200px; }
  .submit input[name=commit] {
    border: none;
    background: #D2516C;
    border-radius: 5px;
    width: 250px;
    height: 60px;
    font-size: 22px;
    -webkit-appearance: none;
    color: #fff;
    font-weight: bold;
    cursor: pointer; }
  .submit #FormAssist_submit {
    border: none;
    background: #d2516c;
    border-radius: 5px;
    width: 250px !important;
    height: 60px !important;
    font-size: 22px !important;
    -webkit-appearance: none;
    color: #fff;
    font-weight: bold;
    cursor: pointer; }
    .submit #FormAssist_submit:hover {
      opacity: 0.8;
      filter: alpha(opacity=80);
      -ms-filter: "alpha( opacity=80 )"; }

table.formTable {
  width: 100%;
  border-collapse: collapse; }

table.formTable th, table.formTable td {
  border: 1px solid #dcdad7;
  padding: 15px; }
table.formTable th {
  font-weight: bold;
  background-color: #eae7e1;
  width: 95px; }
  table.formTable th.subHeader {
    width: 160px; }
  table.formTable th div {
    position: relative; }
  table.formTable th .must {
    position: absolute;
    right: 0;
    top: 50%;
    margin: -9px 0 0 0; }
table.formTable td {
  background: #fff;
  padding-bottom: 10px; }
  table.formTable td .hour,
  table.formTable td .minute {
    margin: 0 3px; }
  table.formTable td label {
    margin-right: 5px; }
  table.formTable td #wish_course_id {
    width: 330px; }
  table.formTable td #esthete_user_last_name,
  table.formTable td #esthete_user_last_name_kana {
    margin-right: 15px; }
table.formTable tr.zip_code span {
  margin: 0 3px; }
table.formTable table.noBorder th,
table.formTable table.noBorder td {
  border: none;
  padding: 0; }
table.formTable table.choice-points td, table.formTable table.reasons td {
  padding: 5px 0; }
table.formTable .questionnaire .errorText, table.formTable .free-text .errorText {
  margin-bottom: 7px; }

#esthete_reservations .ui-widget-header {
  border: 1px solid #D2516C;
  background: #D2516C; }
  #esthete_reservations .ui-widget-header .ui-icon {
    height: 32px;
    width: 32px;
    margin: -14px 0 0 -15px; }
    #esthete_reservations .ui-widget-header .ui-icon.ui-icon-circle-triangle-w {
      background: url(/../assets/esthete/smartphone/date_icn_left.png) 50% 30% no-repeat;
      -webkit-background-size: 20px;
      background-size: 20px; }
    #esthete_reservations .ui-widget-header .ui-icon.ui-icon-circle-triangle-e {
      background: url(/../assets/esthete/smartphone/date_icn_right.png) 50% 30% no-repeat;
      -webkit-background-size: 20px;
      background-size: 20px; }
  #esthete_reservations .ui-widget-header .ui-state-hover {
    border: 1px solid #D2516C;
    background: #D2516C; }
#esthete_reservations .ui-widget-content {
  border: 1px solid #D2516C; }
  #esthete_reservations .ui-widget-content .ui-datepicker-today .ui-state-default {
    position: relative;
    border: 1px solid #D2516C; }
    #esthete_reservations .ui-widget-content .ui-datepicker-today .ui-state-default:before {
      content: '';
      display: block;
      position: absolute;
      top: 1px;
      bottom: 1px;
      left: 1px;
      right: 1px;
      margin: auto;
      opacity: .6;
      filter: Alpha(Opacity=60);
      background-color: #fff; }
  #esthete_reservations .ui-widget-content .ui-datepicker-today.ui-state-disabled {
    opacity: 1.0;
    filter: Alpha(Opacity=100); }
#esthete_reservations .ui-state-default,
#esthete_reservations .ui-widget-content .ui-state-default,
#esthete_reservations .ui-widget-header .ui-state-default {
  border: 1px solid #D2516C;
  background: #faedef;
  color: #333;
  text-align: center;
  font-weight: normal; }
#esthete_reservations .ui-datepicker-unselectable .ui-state-default {
  border: 1px solid #999;
  background: #ddd; }
#esthete_reservations .ui-widget-content .ui-state-active,
#esthete_reservations .ui-widget-header .ui-state-active {
  border: 1px solid #D2516C;
  background: #D2516C;
  color: #fff; }

.remains {
  font-size: 14px;
  color: #fff;
  padding: 15px 15px 0;
  position: absolute;
  border-radius: 5px;
  opacity: 0.8;
  background-color: #000;
  width: 130px;
  right: -1px;
  top: -1px; }
  .remains.fixed {
    position: fixed;
    top: 20px; }
  .remains .inner {
    font-size: 28px;
    text-align: center; }
    .remains .inner .red {
      color: #dc2642;
      display: inline-block;
      font-size: 42px;
      padding-right: 5px; }

.caution {
  background-color: #fff9e6;
  color: #333;
  line-height: 150%;
  margin: 20px 0;
  padding: 20px; }
  .caution .caution_main {
    font-weight: bold; }

#bridal_date {
  float: right;
  width: 250px; }
  #bridal_date nobr {
    padding: 10px;
    margin-left: 45px;
    line-height: 2.5; }

#datepicker_bridal {
  background: url(/assets/esthete/icon_calendar.png) right 6px center no-repeat;
  background-size: 18px;
  width: 120px;
  float: left; }

#bridal_message {
  width: 450px; }

#footer {
  position: relative;
  padding: 20px; }

#footer a {
  color: #333; }

#footer .link a {
  background: url(/assets/esthete/arrow_01-b96fd1ed6a0c0151fe2cf730c0edca13f33467f6a57cb643e48234c7fadc7aa7.gif) left center no-repeat;
  padding: 0 0 0 10px; }

#footer .copyright {
  position: absolute;
  right: 20px;
  top: 20px;
  color: #333; }

.form-check {
  margin-left: 60px; }

.form-check:first-child {
  margin-left: 0; }

#pre_shoot_date {
  display: none;
  margin-left: 15px; }

#datepicker_preshoot {
  background: url(/assets/esthete/icon_calendar.png) right 6px center no-repeat;
  background-size: 18px;
  width: 120px;
  float: right; }
