@charset "UTF-8";
/* form parts
–––––––––––––––––––––––––––––––––––––––––––––––––– */
body.input .btnLinkBlock {
  display: none; }
body.input .telBlock {
  display: none; }
body.input .navBlock {
  display: none; }
body.input .floatBlockPC {
  display: none; }
body.input .footerCommonArea {
  display: none; }
body.input .copyright {
  border-top: 1px solid #e6e6e6; }

body.confirm .btnLinkBlock {
  display: none; }
body.confirm .telBlock {
  display: none; }
body.confirm .navBlock {
  display: none; }
body.confirm .floatBlockPC {
  display: none; }
body.confirm .footerCommonArea {
  display: none; }
body.confirm .copyright {
  border-top: 1px solid #e6e6e6; }

.formAuter > dl > dt .state {
  position: absolute;
  right: 10px;
  top: 50%;
  margin-top: -10px;
  width: 20px;
  height: 20px; }
  .formAuter > dl > dt .state.ng {
    background: url(../images/common/ico_error.png) no-repeat left top;
    background-size: 20px 20px; }
  .formAuter > dl > dt .state.ok {
    background: url(../images/common/ico_ok.png) no-repeat left top;
    background-size: 20px 20px; }

.messageBox {
  margin: 0 40px 48px;
  padding: 24px;
  background-color: #fff5f5;
  text-align: center; }
  .messageBox .title {
    font-size: 1.8rem;
    font-weight: bold;
    margin-bottom: 16px;
    color: #333; }
  .messageBox p {
    color: #af1111; }

.stepBar {
  position: relative;
  list-style: none;
  margin: 0;
  padding: 0 0 32px 0;
  text-align: center;
  width: 100%;
  overflow: hidden; }
  .stepBar:before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 1px;
    background-color: #fff;
    z-index: 2; }
  .stepBar .step {
    position: relative;
    float: left;
    display: inline-block;
    line-height: 40px;
    height: 40px;
    padding: 0 40px 0 20px;
    background-color: #dedede; }
    .stepBar .step:before {
      position: absolute;
      left: -15px;
      display: block;
      content: '';
      background-color: #dedede;
      border-left: 2px solid #FFF;
      width: 20px;
      height: 21px; }
    .stepBar .step:after {
      position: absolute;
      left: -15px;
      display: block;
      content: '';
      background-color: #dedede;
      border-left: 2px solid #FFF;
      width: 20px;
      height: 21px;
      top: 0px;
      -moz-transform: skew(30deg);
      -ms-transform: skew(30deg);
      -webkit-transform: skew(30deg);
      transform: skew(30deg); }
    .stepBar .step:before {
      bottom: 0;
      -moz-transform: skew(-30deg);
      -ms-transform: skew(-30deg);
      -webkit-transform: skew(-30deg);
      transform: skew(-30deg); }
    .stepBar .step:first-child:before, .stepBar .step:first-child:after {
      content: none; }
    .stepBar .step.current {
      color: #FFF;
      background-color: #998452; }
      .stepBar .step.current:before, .stepBar .step.current:after {
        background-color: #998452; }
  .stepBar.step2 .step {
    width: 50%; }
  .stepBar.step3 .step {
    width: 33%; }
    .stepBar.step3 .step:last-child {
      width: 34%; }
  .stepBar.step4 .step {
    width: 25%; }
  .stepBar.step5 .step {
    width: 20%; }

.formArea {
  margin-top: 32px;
  display: table;
  width: 100%; }
  .formArea.confirm table tr th {
    vertical-align: middle; }
  .formArea.confirm table tr td {
    vertical-align: middle; }
  .formArea > dl {
    display: table-row; }
    .formArea > dl > dt {
      display: table-cell;
      vertical-align: middle;
      width: 270px;
      padding: 25px 16px 25px;
      background: #fafafa;
      font-size: 16px;
      font-size: 1.6rem;
      letter-spacing: 1px;
      line-height: 1.6;
      border-bottom: 1px solid #ebebeb;
      position: relative; }
      .formArea > dl > dt.required {
        background: #faf6f0; }
        .formArea > dl > dt.required:after {
          content: "";
          width: 32px;
          height: 16px;
          background: url(../images/common/ico_required.png) no-repeat left top;
          background-size: 32px 16px;
          display: inline-block;
          margin-left: 1em;
          vertical-align: middle;
          margin-top: -2px; }
      .formArea > dl > dt.vTop {
        vertical-align: top; }
      .formArea > dl > dt .state {
        position: absolute;
        right: 10px;
        top: 50%;
        margin-top: -10px;
        width: 20px;
        height: 20px; }
        .formArea > dl > dt .state.ng {
          background: url(../images/common/ico_error.png) no-repeat left top;
          background-size: 20px 20px; }
        .formArea > dl > dt .state.ok {
          background: url(../images/common/ico_ok.png) no-repeat left top;
          background-size: 20px 20px; }
    .formArea > dl > dd {
      display: table-cell;
      padding: 25px 16px 25px 32px;
      background: #FFF;
      color: #333333;
      font-size: 1.4rem;
      line-height: 1.6;
      border-bottom: 1px solid #ebebeb;
      position: relative; }
      .formArea > dl > dd ul.nameWrap {
        float: left; }
      .formArea > dl > dd ul li.selectOuter {
        display: inline-block;
        position: relative; }
      .formArea > dl > dd ul li.selecttxt {
        width: 7em;
        margin: 6px 0 0;
        float: left;
        position: relative; }
      .formArea > dl > dd ul li.nametxt {
        width: 2.6em;
        margin: 6px 0 0;
        float: left;
        position: relative; }
      .formArea > dl > dd ul li.nameform {
        width: 240px;
        float: left;
        position: relative; }
        .formArea > dl > dd ul li.nameform.last {
          width: 220px; }

input[type="text"],
input[type="email"],
input[type="tel"],
textarea {
  padding: 6px 10px;
  border: 1px solid #c4c4c4;
  vertical-align: middle;
  background-color: #fafafa; 
  height:40px;}
  input[type="text"]:focus,
  input[type="email"]:focus,
  input[type="tel"]:focus,
  textarea:focus {
    background-color: #fffbd3; }
  input[type="text"].error,
  input[type="email"].error,
  input[type="tel"].error,
  textarea.error {
    background-color: #fcf5f4; }
  input[type="text"].name,
  input[type="email"].name,
  input[type="tel"].name,
  textarea.name {
    width: 100%; }
  input[type="text"].tel,
  input[type="email"].tel,
  input[type="text"].long,
  input[type="tel"].long,
  textarea.long {
    width: 100%; }
  input[type="text"].middle,
  input[type="email"].middle,
  input[type="tel"].middle,
  textarea.middle {
    width: 70%; }
  input[type="text"].short,
  input[type="email"].short,
  input[type="tel"].short,
  textarea.short {
    width: 120px; }
  input[type="text"]::-webkit-input-placeholder,
  input[type="email"]::-webkit-input-placeholder,
  input[type="tel"]::-webkit-input-placeholder,
  textarea::-webkit-input-placeholder {
    color: #aaa; }
  input[type="text"]:-moz-placeholder,
  input[type="email"]:-moz-placeholder,
  input[type="tel"]:-moz-placeholder,
  textarea:-moz-placeholder {
    color: #aaa; }
  input[type="text"]::-moz-placeholder,
  input[type="email"]::-moz-placeholder,
  input[type="tel"]::-moz-placeholder,
  textarea::-moz-placeholder {
    color: #aaa; }
  input[type="text"]:-ms-input-placeholder,
  input[type="email"]:-ms-input-placeholder,
  input[type="tel"]:-ms-input-placeholder,
  textarea:-ms-input-placeholder {
    color: #aaa; }
input[type="text"]:disabled,
input[type="email"]:disabled,
input[type="tel"]:disabled,
textarea:disabled,
select:disabled {
	background: #cac7c0;
}

textarea {
  height: 136px; 
}

span.error {
  position: static;
  color: #af1111;
  font-size: 0.8rem;
  display: block;
  margin-top: 5px;
  clear: both;
  font-weight: bold; }

span.name_error1 {
  position: static;
  color: #af1111;
  font-size: 0.8rem;
  display: inline-block;
  margin-top: 5px;
  font-weight: bold; }

select {
  z-index: 2; }

.hasCustomSelect {
  width: 100% !important; }

.hasCustomSelect.error + span {
  position: relative;
  color: #aaa;
  font-size: 1.2rem;
  display: inline-block;
  margin-top: 0;
  clear: both;
  background-color: #fcf5f4;
  font-weight: bold; }

.customSelect {
  border: 1px solid #c4c4c4;
  border-radius: 3px;
  padding: 8px 30px 8px 10px;
  position: relative;
  z-index: 1; }
  .customSelect:before {
    content: "";
    width: 10px;
    height: 8px;
    background: url(../images/common/custom_select_arrow.png) no-repeat left top;
    background-size: 10px 8px;
    position: absolute;
    right: 1em;
    top: 50%;
    margin-top: -5px; }
  .customSelect.error {
    position: relative;
    color: #aaa;
    font-size: 1.2rem;
    display: inline-block;
    margin-top: 0;
    clear: both;
    background-color: #fcf5f4;
    font-weight: bold; }
  .customSelect .customSelectInner {
    width: auto !important;
    padding-right: 10px; }

.check input[type='checkbox'] {
  filter: alpha(opacity=0);
  -moz-opacity: 0;
  opacity: 0;
  position: absolute; }

.c_on {
  background-position: left bottom; }

.radioWrap {
  overflow: hidden; }
  .radioWrap li {
    float: left;
    margin-right: 24px;
    cursor: pointer; }
  .radioWrap input {
    opacity: 0;
    float: left;
    z-index: -1;
    width: 1px; }
  .radioWrap label {
    border: 1px solid #f2f2f2;
    background-color: #f2f2f2;
    padding: 10px 40px;
    text-align: center;
    line-height: 1;
    border-radius: 20px;
    display: block;
    cursor: pointer; }
  .radioWrap input[type="radio"]:checked + label {
    border: 1px solid #178ddf;
    background-color: #fff; }
    
    .radioWrap.mb li{ margin-bottom: 1rem; }

.HopeTimeWrap {
  margin-top: 16px; }
  .HopeTimeWrap li {
    display: inline-block;
    margin-right: 24px; }
  .HopeTimeWrap .customSelect {
    min-width: 5em; }

.addressWrap li {
  margin-bottom: 10px; }
  .addressWrap li:nth-child(2) {
    margin-bottom: 0; }

.calenderWrap li {
  position: relative;
  width: 260px;
  height: 35px; }
  .calenderWrap li input,li.calenderWrap input {
    width: 260px;
    border-radius: 3px;
    background-color: #fff; }
    .calenderWrap li input::-webkit-input-placeholder,li.calenderWrap input::-webkit-input-placeholder {
      color: #333; }
    .calenderWrap li input:-moz-placeholder,li.calenderWrap input:-moz-placeholder {
      color: #333; }
    .calenderWrap li input::-moz-placeholder,li.calenderWrap input::-moz-placeholder {
      color: #333; }
    .calenderWrap li input:-ms-input-placeholder,li.calenderWrap:-ms-input-placeholder {
      color: #333; }
  .calenderWrap li img,li.calenderWrap img {
    width: 24px;
    position: absolute;
    right: 8px;
    top: 5px; }

/*====== 191108 review-campaign ======*/
li.sTxtWrap input[type="text"].long{
	width: calc(100% - 60px);
}
li.calenderWrap{ position: relative; }
li.calenderWrap img{
	top: 5px;
	right: 225px;
}
span.sTxt{
	display: inline-block;
	width: 60px;
}
.btmLine{
	margin-bottom: 20px;
	padding-bottom: 20px;
	border-bottom: 1px solid #ebebeb;
}
/*====== 191108 review-campaign ======*/

.privacy_wrap {
  padding: 0;
  margin: 50px auto 0;
  text-align: center;
  position: relative; }
  .privacy_wrap p {
    font-size: 0.8rem;
    margin-bottom: 15px; }
    .privacy_wrap p a {
      color: #333;
      text-decoration: underline; }
      .privacy_wrap p a:hover {
        text-decoration: none; }
  .privacy_wrap .txt {
    font-size: 1.0rem; }
  .privacy_wrap span.error {
    position: static;
    display: block;
    text-align: center;
    margin-top: 5px; }

.btnArea {
  text-align: center;
  margin-top: 20px;
  position: relative; }
  .btnArea .btn {
    display: inline-block;
    margin: 0; }
    .btnArea .btn.reBtn {
      position: absolute;
      left: 0;
      top: 8px; }
      .btnArea .btn.reBtn button {
        background-color: #9f9f9f;
        width: 200px;
        padding: 12px 0; }
        .btnArea .btn.reBtn button:before {
          content: "";
          width: 7px;
          height: 9px;
          background: url(../images/common/btn_arrow_white.png) no-repeat left top;
          background-size: 7px 9px;
          margin-right: 0.8em;
          display: inline-block;
          -moz-transform: rotate(180deg);
          -ms-transform: rotate(180deg);
          -webkit-transform: rotate(180deg);
          transform: rotate(180deg); }
        .btnArea .btn.reBtn button:after {
          display: none; }
    .btnArea .btn button {
      background-color: #998452;
      color: #fff;
      text-align: center;
      font-size: 1.0rem;
      width: 98%;
      margin:0 auto;
      padding: 20px 0;
      -moz-transition: 0.4s;
      -o-transition: 0.4s;
      -webkit-transition: 0.4s;
      transition: 0.4s; }
      .btnArea .btn button:after {
        content: "";
        width: 7px;
        height: 9px;
        background: url(../images/common/btn_arrow_white.png) no-repeat left top;
        background-size: 7px 9px;
        margin-left: 0.8em;
        display: inline-block; }
      .btnArea .btn button:hover {
        filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=80);
        opacity: 0.8; }

.thanksText {
  text-align: center;
  margin-bottom: 50px; }
  .thanksText .title {
    font-size: 3rem;
    font-weight: bold;
    margin-bottom: 50px; }
  .thanksText p {
    text-align: center; }

.btnPat01 {
  margin-bottom: 100px; }

.custom-selectbox:disabled {
  background-color: #ddd; }

.customSelectDisabled {
  background-color: #ddd; }

.accessArea {
  display: none; }

/*===== 160414 ディズニーパターン STEP2用 =====*/
    .page2 .formArea > dl > dt { width: 300px; }
    .spaceArea {
      width: 856px;
      /*padding: 20px 0 0;*/
      box-sizing: border-box;
    }
    .spaceArea .areaList {  }
    .spaceArea .areaList ul {
      clear: both;
      overflow: hidden;
      width: 865px;
      margin: 0 auto;
      padding: 20px 0px 0;
      text-align: center;
    }
    .spaceArea .areaList ul li {
      width: 140px;
      margin-bottom: 20px;
      float: left;
      border-right: 1px solid #ccc;
      box-sizing: border-box;
      cursor: pointer;
      font-weight: bold;
    }
    .spaceArea .areaList ul li:first-child,
    .spaceArea .areaList ul li:nth-child(7) { border-left: 1px solid #ccc; }
    .spaceArea .areaList ul li.current,
    .spaceArea .areaList ul li:hover { color: #998452; }
    .page2 .spaceArea p.required {
      background: #faf6f0;
      padding: 25px 16px 25px;
      font-size: 1.6rem;
      letter-spacing: 1px;
      line-height: 1.6;
      position: relative;
      border-top: 1px solid #ebebeb;
      border-bottom: 1px solid #ebebeb;
    }
    .page2 .spaceArea .box ul li p,
    .page2 .spaceArea .box ul li img { cursor: pointer; }
    .page2 .spaceArea .box ul li p span { padding-left: 3px; }
    .page2 .spaceArea p.required:after,
    .page2 .spaceArea li.required:after {
      content: "";
      width: 32px;
      height: 16px;
      background: url(../images/common/ico_required.png) no-repeat left top;
      background-size: 32px 16px;
      display: inline-block;
      margin-left: 1em;
      vertical-align: middle;
      margin-top: -2px;
    }
    .page2 .spaceArea li.required {
      position: relative;
      font-size: 1.6rem;
      margin-left: 1.6rem;
    }
    .page2 .spaceArea li.required:after {
      position: absolute;
      bottom: 15px;
      left: 17%;
    }
    .page2 .spaceArea p.required .state {
      position: absolute;
      right: 16px;
      top: 50%;
      margin-top: -10px;
      width: 20px;
      height: 20px;
    }
    .page2 .spaceArea li.required .state {
      margin-right: 10.5rem;
      margin-top: -10px;
      width: 20px;
      height: 20px;
    }
    
    /* Add 190129
    --------------*/
    .page2 .spaceArea li#required_salon select{
    	top: 50%;
    	left: 0;
    	padding: 15px 0;
    }
    .page2 .spaceArea li#required_salon span.customSelect.custom-selectbox{
    	width: 100%;
    	margin-top: 0.75rem;
    }
    .page2 .spaceArea li#required_salon:after{
        position: absolute;
        margin-left: 0;
        top: 7%;
	    left: 15rem;
    }

    .spaceArea .box {  }
    .spaceArea .box .none { display: none; }
    .spaceArea .box ul {
      clear: both;
      overflow: hidden;
    }
    .spaceArea .box ul li{
      float: left;
      width: 270px;
      margin-top: 15px;
      margin-right: 23px;
    }
    .spaceArea .box ul li:nth-child(3n) { margin-right: 0; }
    .spaceArea .box ul li img {
      width: 100%;
      margin-bottom: 7px;
    }
    
    /*
    .spaceArea .box ul.place6 li.salon {
      float: none;
      width: 100%;
      padding-top: 20px;
      clear: both;
      overflow: hidden;
    }
    .spaceArea .box ul.place6 .error { margin-left: 335px }
    .spaceArea .box ul.place6 li.salon select {
      width: 276px!important;
      height: 40px!important;
      margin-left: 63px;
    }
    .spaceArea .box ul.place6 li.salon .customSelect { margin-left: 63px; }
    img.comPic {
      width: 142px;
      margin-bottom: 15px;
    }
    */

   /*===== 160414 ディズニーパターン STEP2用 =====*/

   /*===== 160427 追加 =====*/
    p.vanue {
      background: #998452;
      color: #fff;
      font-size: 18px;
      font-weight: bold;
      text-align: center;
      padding: 5px 0px;
      margin-bottom: 15px;
    }
    p.vanue.mt40 {
        margin-top: 40px;
    }
    p.vanue + p {
      margin-bottom: 30px;
    }
    p.required2 {
      background: #faf6f0;
      padding: 25px 16px 25px;
      font-size: 1.6rem;
      letter-spacing: 1px;
      line-height: 1.6;
      position: relative;
      border-top: 1px solid #ebebeb;
      border-bottom: 1px solid #ebebeb;
    }
    p.required2:after {
      content: "";
      width: 32px;
      height: 16px;
      background: url(../images/common/ico_required.png) no-repeat left top;
      background-size: 32px 16px;
      display: inline-block;
      margin-left: 1em;
      vertical-align: middle;
      margin-top: -2px;
    }
   /*===== 160427 追加 =====*/

   /*===== 171011 sweet用に追加 =====*/
     .second.sweetEve .pageHeader .titleBlock {
        padding-top: 0;
    	padding-bottom: 30px;
     }
	 .second.sweetEve .pageHeader .titleBlock h2 {
	 	font-size: 31px;
		line-height: 1.4;
		letter-spacing: 2px;
	}
	.second .pageHeader .titleBlock h2:before {
		content: none;
		top: 47%;
	}
	
   /*===== 190201 条件参加 =====*/
	.join{
		width: 80%;
		margin: 50px auto;
		border: 1px solid #333;
	}
	.join dl{ margin: 0 0 1rem; }
	.join dt{
		margin-bottom: 1rem;
		padding: 1rem;
		font-size: 16px;
		font-weight: bold;
		text-align: center;
		background: #faf6f0;
		border-bottom: 1px dashed #333;
	}
	.join dd{
	    margin: 0;
	    padding: 0 2rem;
	}

/* ==========================================================================
    
   sp
   
   ========================================================================== */
@media screen and (max-width: 767px) {
  body.input #wrapper {
    padding-bottom: 0; }
  body.input .footFixedBlock {
    display: none; }
  body.input .navAreaSp {
    display: none; }

  body.confirm #wrapper {
    padding-bottom: 0; }
  body.confirm .footFixedBlock {
    display: none; }
  body.confirm .navAreaSp {
    display: none; }

  .messageBox {
    margin: 0 0px 24px;
    padding: 16px 10px;
    background-color: #fff5f5;
    text-align: center; }
    .messageBox .title {
      font-size: 1.4rem;
      font-weight: bold;
      margin-bottom: 10px;
      color: #333; }
    .messageBox p {
      color: #af1111;
      font-size: 1.1rem; }

  .stepBar {
    position: relative;
    list-style: none;
    margin: 0 0 15px;
    padding: 0;
    text-align: center;
    width: 100%;
    overflow: hidden;
    font-size: 1rem;
    font-weight: bold;
    *zoom: 1; }
    .stepBar .step {
      position: relative;
      float: left;
      display: inline-block;
      line-height: 24px;
      height: 24px;
      padding: 0 24px 0 12px;
      background-color: #dedede; }
      .stepBar .step:before {
        position: absolute;
        left: -7px;
        display: block;
        content: '';
        background-color: #dedede;
        border-left: 1px solid #FFF;
        width: 12px;
        height: 12px; }
      .stepBar .step:after {
        position: absolute;
        left: -7px;
        display: block;
        content: '';
        background-color: #dedede;
        border-left: 1px solid #FFF;
        width: 12px;
        height: 12px;
        top: 0;
        -moz-transform: skew(30deg);
        -ms-transform: skew(30deg);
        -webkit-transform: skew(30deg);
        transform: skew(30deg); }
      .stepBar .step:before {
        bottom: 0;
        -moz-transform: skew(-30deg);
        -ms-transform: skew(-30deg);
        -webkit-transform: skew(-30deg);
        transform: skew(-30deg); }
      .stepBar .step:first-child:before, .stepBar .step:first-child:after {
        content: none; }
      .stepBar .step.current {
        color: #FFF;
        background-color: #998452; }
        .stepBar .step.current:before, .stepBar .step.current:after {
          background-color: #998452; }
    .stepBar.step2 .step {
      width: 50%; }
    .stepBar.step3 .step {
      width: 33%; }
      .stepBar.step3 .step:last-child {
        width: 34%; }
    .stepBar.step4 .step {
      width: 25%; }
    .stepBar.step5 .step {
      width: 20%; }

  .formArea {
    margin-bottom: 20px;
    display: block;
    padding:0 10px;
    }
    .formArea p {
      font-size: 1.2rem; }
    .formArea.confirm table tr th {
      vertical-align: middle; }
    .formArea.confirm table tr td {
      vertical-align: middle; }
    .formArea > dl {
      display: block;
      margin: 0;
      padding: 0; }
      .formArea > dl > dt {
        display: block;
        vertical-align: middle;
        width: 100%;
        padding: 10px 5px 0;
        background: #fff;
        font-size: 10px;
        font-size: 1rem;
        font-weight: bold;
        letter-spacing: 0px;
        line-height: 1.6;
        border-bottom: none;
        position: relative; }
        .formArea > dl > dt.required {
          background: #fff; }
          .formArea > dl > dt.required:after {
            content: "";
            width: 20px;
            height: 10px;
            background: url(../images/common/ico_required.png) no-repeat left top;
            background-size: 20px 10px;
            display: inline-block;
            margin-left: 1em;
            vertical-align: middle;
            margin-top: -2px; }
        .formArea > dl > dt .state {
          position: absolute;
          right: 5px;
          top: 8px;
          margin-top: 0;
          width: 18px;
          height: 18px; }
          .formArea > dl > dt .state.ng {
            background: url(../images/common/ico_error.png) no-repeat left top;
            background-size: 18px 18px; }
          .formArea > dl > dt .state.ok {
            background: url(../images/common/ico_ok.png) no-repeat left top;
            background-size: 18px 18px; }
      .formArea > dl > dd {
        display: block;
        padding: 10px 5px 10px;
        background: #FFF;
        color: #333333;
        font-size: 1rem;
        line-height: 1.6;
        border-bottom: 1px solid #ebebeb;
        position: relative;
        overflow: hidden;
        margin: 0; }
        .formArea > dl > dd ul.nameWrap {
          float: left;
          width: 50%; }
        .formArea > dl > dd ul li.nametxt {
          width: 2.6em;
          margin: 0 0 0;
          float: none;
          position: relative; }
        .formArea > dl > dd ul li.nameform {
          width: 100%;
          float: left;
          position: relative; }
          .formArea > dl > dd ul li.nameform.last {
            width: 100%; }

  input[type="text"],
  input[type="email"],
  input[type="tel"],
  textarea {
    padding: 10px 5px;
    border: 1px solid #c4c4c4;
    vertical-align: middle;
    background-color: #fafafa; }
    input[type="text"]:focus,
    input[type="email"]:focus,
    input[type="tel"]:focus,
    textarea:focus {
      background-color: #fffbd3; }
    input[type="text"].error,
    input[type="email"].error,
    input[type="tel"].error,
    textarea.error {
      background-color: #fcf5f4; }
    input[type="text"].name,
    input[type="email"].name,
    input[type="tel"].name,
    textarea.name {
      width: 95%; }
    input[type="text"].tel,
    input[type="email"].tel,
    input[type="tel"].tel,
    textarea.tel {
      width: 90%; }
    input[type="text"].long,
    input[type="email"].long,
    input[type="tel"].long,
    textarea.long {
      width: 90%; }
    input[type="text"].middle,
    input[type="email"].middle,
    input[type="tel"].middle,
    textarea.middle {
      width: 70%; }
    input[type="text"].short,
    input[type="email"].short,
    input[type="tel"].short,
    
    input[type="text"]::-webkit-input-placeholder,
    input[type="email"]::-webkit-input-placeholder,
    input[type="tel"]::-webkit-input-placeholder,
    textarea::-webkit-input-placeholder {
      color: #aaa; }
    input[type="text"]:-moz-placeholder,
    input[type="email"]:-moz-placeholder,
    input[type="tel"]:-moz-placeholder,
    textarea:-moz-placeholder {
      color: #aaa; }
    input[type="text"]::-moz-placeholder,
    input[type="email"]::-moz-placeholder,
    input[type="tel"]::-moz-placeholder,
    textarea::-moz-placeholder {
      color: #aaa; }
    input[type="text"]:-ms-input-placeholder,
    input[type="email"]:-ms-input-placeholder,
    input[type="tel"]:-ms-input-placeholder,
    textarea:-ms-input-placeholder {
      color: #aaa; }
input[type="text"]:disabled,
input[type="email"]:disabled,
input[type="tel"]:disabled,
textarea:disabled,
select:disabled {
	background: #777;
}	

  input, textarea, select {
    font-size: 0.8rem; }

  textarea {
    width: 90%;
    height: 136px; }

  span.error {
    position: static;
    text-align: left;
    display: block;
    clear: both;
    padding: 3px 0 0 5px;
    color: #af1111;
    font-size: 0.8rem; }

  span.name_error1 {
    position: static;
    display: block;
    clear: both;
    padding: 3px 0 0 5px;
    color: #af1111;
    font-size: 0.8rem; }

  select {
    z-index: 2;
    width: 100%; }

  .customSelect {
    border: 1px solid #c4c4c4;
    border-radius: 3px;
    padding: 8px 15px 8px 10px;
    position: relative;
    white-space: nowrap;
    box-sizing: content-box;
    z-index: 1;
    font-size: 1.2rem; }
    .customSelect:before {
      content: "";
      width: 10px;
      height: 8px;
      background: url(../images/common/custom_select_arrow.png) no-repeat left top;
      background-size: 10px 8px;
      position: absolute;
      right: 1em;
      top: 50%;
      margin-top: -5px; }

  .check input[type='checkbox'] {
    filter: alpha(opacity=0);
    -moz-opacity: 0;
    opacity: 0;
    position: absolute; }

  .c_on {
    background-position: left bottom; }

  .radioWrap {
    overflow: hidden; }
    .radioWrap li {
      float: left;
      margin-right: 12px;
      cursor: pointer; }
    .radioWrap input {
      visibility: hidden; }
    .radioWrap label {
      border: 1px solid #f2f2f2;
      background-color: #f2f2f2;
      padding: 5px 20px;
      text-align: center;
      line-height: 1;
      border-radius: 20px;
      display: block;
      cursor: pointer;
      font-size: 1.2rem; }
    .radioWrap input[type="radio"]:checked + label {
      border: 1px solid #178ddf;
      background-color: #fff; }

  .HopeTimeWrap {
    margin-top: 8px; }
    .HopeTimeWrap li {
      display: inline-block;
      margin-right: 12px; }
    .HopeTimeWrap .customSelect {
      min-width: 5em; }

  .addressWrap li {
    margin-bottom: 10px; }
    .addressWrap li:nth-child(2) {
      margin-bottom: 0; }

  .calenderWrap li {
    position: relative;
    width: auto;
    height: auto; }
    .calenderWrap li input,li.calenderWrap input {
      width: 100%;
      min-width: 100%;
      border-radius: 3px;
      background-color: #fff; }
      .calenderWrap li input::-webkit-input-placeholder {
        color: #333; }
      .calenderWrap li input:-moz-placeholder {
        color: #333; }
      .calenderWrap li input::-moz-placeholder {
        color: #333; }
      .calenderWrap li input:-ms-input-placeholder {
        color: #333; }
    .calenderWrap li img,li.calenderWrap img {
      width: 24px;
      position: absolute;
      right: 8px;
      top: 8px; }
	
/*====== 191108 review-campaign ======*/
li.sTxtWrap input[type="text"].long{ width: 100%; }
li.calenderWrap { position: relative; }
li.calenderWrap img{
	top: 24px;
	right: 8px;
}
span.sTxt{
	display: block;
	width: 100%;
	margin-bottom: 0;
}
/*====== 191108 review-campaign ======*/
	
	

  .privacy_wrap {
    padding: 0;
    margin: 0 auto;
    text-align: center;
    position: relative; }
    .privacy_wrap p {
      font-size: 14px;
      margin-bottom: 15px;
      line-height: 24px; }
      .privacy_wrap p a {
        color: #333;
        text-decoration: underline; }
        .privacy_wrap p a:hover {
          text-decoration: none; }
    .privacy_wrap .txt {
      font-size: 1.0rem;
      padding-left: 0; }
    .privacy_wrap span.error {
      position: static;
      display: block;
      text-align: center;
      margin-top: 5px;
      font-weight: bold; }

  .btnArea {
    text-align: center;
    margin-top: 20px;
    position: relative; }
    .btnArea .btn {
      display: block;
      margin: 0 auto; }
      .btnArea .btn.reBtn {
        position: static;
        left: 0;
        top: 8px; }
        .btnArea .btn.reBtn button {
          position: absolute;
          left: 0;
          bottom: 0;
          background-color: #9f9f9f;
          width: 100%;
          padding: 7px 0; }
          .btnArea .btn.reBtn button:before {
            content: "";
            width: 7px;
            height: 9px;
            background: url(../images/common/btn_arrow_white.png) no-repeat left top;
            background-size: 7px 9px;
            margin-right: 0.8em;
            display: inline-block;
            -moz-transform: rotate(180deg);
            -ms-transform: rotate(180deg);
            -webkit-transform: rotate(180deg);
            transform: rotate(180deg); }
          .btnArea .btn.reBtn button:after {
            display: none; }
      .btnArea .btn button {
        background-color: #998452;
        color: #fff;
        text-align: center;
        font-size: 1.0rem;
        width: 100%;
        padding: 15px 0; }
        .btnArea .btn button:after {
          content: "";
          width: 7px;
          height: 9px;
          background: url(../images/common/btn_arrow_white.png) no-repeat left top;
          background-size: 7px 9px;
          margin-left: 0.8em;
          display: inline-block; }
        .btnArea .btn button:hover {
          filter: progid:DXImageTransform.Microsoft.Alpha(enabled=false);
          opacity: 1; }

  .btnLinkBlock {
    display: none; }

  .telBlock {
    display: none; }

  .footerCommonArea {
    display: none; }

  .copyright {
    border-top: 1px solid #e6e6e6; }

  .thanksText {
    text-align: center;
    margin-bottom: 32px;
    margin-top: 20px; }
    .thanksText .title {
      font-size: 1.6rem;
      font-weight: bold;
      margin-bottom: 25px; }
    .thanksText p {
      text-align: center; }

  .btnPat01 {
    margin-bottom: 35px; }

  .accessArea {
    display: block;
    border-top: 1px solid #f4f4f2;
    padding-top: 35px; }
    
    
    /*======= 170414追加 =======*/
    .spaceArea {
      width: 100%;
      padding: 10px 0;
      box-sizing: border-box;
    }
    .spaceArea .areaList {  }
    .spaceArea .areaList ul {
      clear: both;
      overflow: hidden;
      width: 100%;
      margin: 0 auto;
      padding: 10px 0 5px;
      text-align: center;
    }
    .spaceArea .areaList ul li {
      width: 33%;
      float: left;
      box-sizing: border-box;
      cursor: pointer;
      font-weight: normal;
      font-size: 3.2vw;
      margin-bottom: 2rem;
      padding: 0.5rem 0;
    }
    .spaceArea .areaList ul li:last-child {
      /*border-right: 1px solid #ccc;
      width: 25%*/
    }
    .spaceArea .areaList ul li:first-child{ border-left: 1px solid #ccc; }
    .spaceArea .areaList ul li:nth-child(4){ border-left: 1px solid #ccc; }
    .spaceArea .areaList ul li:nth-child(7){ margin-bottom: 0; }
    .spaceArea .areaList ul li.current,
    .spaceArea .areaList ul li:hover { color: #998452; }
    
    .page2 .formArea { margin-top: 0; }
    .page2 .formArea > dl > dt { width: 300%; }
    .page2 .spaceArea p.required {
      background: #fff;
      padding: 10px 5px 0;
      font-size: 1rem;
      letter-spacing: 1px;
      line-height: 1.6;
      font-weight: bold;
      position: relative;
      border-top: 1px solid #ebebeb;
      border-bottom: none;
    }
    .page2 .spaceArea p.required:after,
    .page2 .spaceArea li.required:after {
      content: "";
      width: 20px;
      height: 10px;
      background: url(../images/common/ico_required.png) no-repeat left top;
      background-size: 20px 10px;
      display: inline-block;
      margin-left: 1em;
      vertical-align: middle;
      margin-top: -2px;
    }
    .page2 .spaceArea li.required {
      position: relative;
      font-size: 1rem;
      margin-left: 1rem;
    }
    .page2 .spaceArea li.required:after {
      position: absolute;
      bottom: 0;
      left: 9rem;
      top: 19px;
    }
    .page2 .spaceArea p.required .state {
      position: absolute;
      right: 16px;
      top: 50%;
      margin-top: -10px;
      width: 20px;
      height: 20px;
    }
    .page2 .spaceArea li.required .state {
      position: absolute;
      right: 0;
      top: 30%;
      margin-right: 0;
      margin-top: -10px;
      width: 20px;
      height: 20px;
    }
    
    /*Add 190129
    -----------------*/
    .page2 .spaceArea li#required_salon{
    	width: 100%;
    }
    .page2 .spaceArea li#required_salon select{
    	top: 2.75rem;
    	padding: 0;
    }
    .page2 .spaceArea li#required_salon span.customSelect.custom-selectbox{
    	width: 85%;
    	margin-top: 0.75rem;
    }
    .page2 .spaceArea li#required_salon:after{
        top: 7%;
	    left: 30%;
    }
    
    
    
    
    
    
    .spaceArea .box {  }
    .spaceArea .box .none { display: none; }
    .spaceArea .box ul {
      clear: both;
      overflow: hidden;
    }
    .spaceArea .box ul li{
      float: left;
      width: 47.5%;
      margin-top: 10px;
      margin-right: 5%;
    }
    .spaceArea .box ul li:nth-child(3n) { margin-right: 5%; }
    .spaceArea .box ul li:nth-child(2n) { margin-right: 0; }
    .spaceArea .box ul li img { width: 250px; }
    .spaceArea .box ul li p { font-size: 1rem; }
/*
    .spaceArea .box ul.place6 li.salon {
      float: none;
      width: 100%;
      padding-top: 0;
      clear: both;
      overflow: hidden;
      padding-top: 15px;
      font-weight: bold;
      margin-left: 0;
    }
    .spaceArea .box ul.place6 .error { margin-left: 0; }
    .spaceArea .box ul.place6 li.salon select {
      width: 100%!important;
      height: 45px!important;
      margin-left: 0;
      display: block;
    }
    .spaceArea .box ul.place6 li.salon .customSelect { 
      margin-left: 0;
      display: block!important;
      font-weight: normal;
      margin-top: 10px;
    }
*/
    img.comPic {
      width: 60%;
      margin-bottom: 15px;
    }    
    /*======= 170414追加 =======*/
    /*===== 160427 追加 =====*/
     p.vanue {
       background: #998452;
       color: #fff;
       font-size: 14px;
       font-weight: bold;
       text-align: center;
       padding: 5px 0px;
       margin-bottom: 15px;
     }
     p.vanue.mt40 {
         margin-top: 40px;
     }
     p.vanue + p {
       margin-bottom: 30px;
     }
     p.required2 {
        background: #fff;
        padding: 10px 5px 0;
        font-size: 1rem;
        letter-spacing: 1px;
        line-height: 1.6;
        font-weight: bold;
        position: relative;
        border-top: 1px solid #ebebeb;
        border-bottom: none;
     }
     p.required2:after {
        content: "";
        width: 20px;
        height: 10px;
        background: url(../images/common/ico_required.png) no-repeat left top;
        background-size: 20px 10px;
        display: inline-block;
        margin-left: 1em;
        vertical-align: middle;
        margin-top: -2px;
     }
     #form1 .formArea {
        margin-top: 10px;
     }
    /*===== 160427 追加 =====*/

   /*===== 171011 sweet用に追加 =====*/
     .second.sweetEve .pageHeader .titleBlock {
        padding-top: 0;
    	padding-bottom: 30px;
     }
	 .second.sweetEve .pageHeader .titleBlock h2 {
		line-height: 1.4;
		letter-spacing: 0;
		font-size: 18px;
		
	}
	.second .pageHeader .titleBlock h2:before {
		content: none;
		top: 50%;
	}
	.form #footer.sweetEvent  {
		background: none
	}
	
   /*===== 190201 条件参加 =====*/
	.join{
		width: 100%;
		margin: 30px auto;
	}
	.join dt{
		padding: 0.75rem;
		font-size: 1.25rem;
	}
	.join dd{
	    margin: 0;
	    padding: 0 1rem;
	}
	
	
	
	
    
     }
