@charset "UTF-8";
input {
  font-family: 'Roboto', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', 'MS PGothic', Osaka, sans-serif;
}

.u-content-title {
  text-align: center;
}
.u-content-title .e-title {
  display: inline-block;
  position: relative;
  margin: 0 0 30px;
  color: #000;
  font-size: 3rem;
  letter-spacing: .075em;
}
.u-content-title .e-title:after {
  display: inline-block;
  position: absolute;
  bottom: -5px;
  left: 0;
  width: 100%;
  height: 1px;
  padding: 0 5px;
  background: #000;
  content: '';
}

.l-dm_enquete {
  padding: 0;
}

.l-dm_enquete-form {
  padding-top: 80px;
}
.l-dm_enquete-form .l-dm_enquete-center {
  overflow: hidden;
}
.l-dm_enquete-form .l-dm_enquete-center .e-text {
  font-weight: 700;
  line-height: 2.25;
  text-align: center;
}
.l-dm_enquete-form .e-text {
  margin: 0 0 40px;
}
.l-dm_enquete-form .e-text.mb20 {
  margin-bottom: 20px;
}
.l-dm_enquete-form .e-title {
  padding: 20px 0 40px;
  font-size: 2.8rem;
  text-align: center;
}

/*
.l-dm_enquete-form .l-dm_enquete-center .e-checkbox{
  width: 450px;
  margin: 0 auto 50px;
  font-weight: 700;
  line-height: 2.25;
}
.l-dm_enquete-form .l-dm_enquete-center .e-checkbox input{
  vertical-align: middle;
  margin-right: 10px;
} */
.l-dm_enquete-form-table {
  width: 100%;
  margin: 0 0 40px;
  border-bottom: 1px solid #ccc;
}

.l-dm_enquete-form-title {
  position: relative;
  width: 280px;
  padding: 20px;
  border-top: 1px solid #ccc;
  background: #f1f1f1;
  font-weight: 700;
  line-height: 1.35;
  vertical-align: middle;
  vertical-align: top;
}

.e-block.half {
  width: 580px;
  margin-bottom: 40px;
  float: left;
}
.e-block.half:last-of-type {
  margin-left: 40px;
}

.e-block-tit {
  position: relative;
  padding: 15px;
  background-color: #f5f5f5;
  color: #333;
  font-size: 16px;
  font-weight: bold;
  line-height: 1.71;
  counter-increment: number;
}
.e-block-tit.number::before {
  padding-right: 5px;
  content: "Q" counter(number) ".";
}

.is-any .l-dm_enquete-form-title:after, .is-any .e-block-tit:after {
  position: absolute;
  top: 1.3em;
  right: 10px;
  padding: 4px 8px 5px;
  border-radius: 4px;
  background: #aaa;
  color: #fff;
  font-size: 1.3rem;
  font-weight: 700;
  content: '任意';
  /* transform: translateY(-50%); */
}

.is-required .l-dm_enquete-form-title:after, .is-required .e-block-tit:after {
  position: absolute;
  top: 1.3em;
  right: 10px;
  padding: 4px 8px 5px;
  border-radius: 4px;
  background: #008842;
  color: #fff;
  font-size: 1.3rem;
  font-weight: 700;
  content: '必須';
  /* transform: translateY(-50%); */
}

.e-block-tit.is-required:after {
  position: absolute;
  top: 1.3em;
  right: 10px;
  padding: 4px 8px 5px;
  border-radius: 4px;
  background: #008842;
  color: #fff;
  font-size: 1.3rem;
  font-weight: 700;
  content: '必須';
  /* transform: translateY(-50%); */
}

.e-block-content {
  margin-bottom: 15px;
  padding: 15px;
  line-height: 2;
}

,
.e-block-content.pwnone {
  padding: 15px 0;
}
.e-block-content .e-error {
  display: block;
  width: 100%;
  margin: 0 0 7px;
  color: #e00000;
  font-size: 1.4rem;
  font-weight: 700;
  line-height: 1.4rem;
}
.e-block-content .e-block-content-intit {
  display: inline-block;
  margin-top: 10px;
  padding: 10px 0;
  font-family: 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', 'MS PGothic', Osaka, sans-serif;
  font-size: 15px;
  font-weight: 700;
}
.e-block-content textarea {
  width: 430px;
  width: 100%;
  padding: 7px 5px;
  border: 1px solid #cacaca;
  font-size: 1.8rem;
}

.l-dm_enquete-form-item {
  padding: 10px 0 10px 30px;
  border-top: 1px solid #ccc;
  vertical-align: middle;
}
.l-dm_enquete-form-item.in-checkbox, .l-dm_enquete-form-item.in-radio {
  padding: 20px 0 20px 30px;
}
.l-dm_enquete-form-item.in-e-note .e-note {
  display: inline-block;
  margin-left: 10px;
  line-height: 37px;
}

.e-coution{
  font-size: 15px;
  margin-top: 10px;
}

.e-checkbox .e-error {
  display: block;
  margin: 0 0 7px;
  color: #e00000;
  font-size: 1.4rem;
  font-weight: 700;
  line-height: 1.4rem;
}
.l-dm_enquete-form-item .e-wrap{
  line-height: 46px;
}
.l-dm_enquete-form-item .e-wrap + .e-wrap{
  margin-top: 13px;
}
.l-dm_enquete-form-item .is-select{
  display: inline-block;
  position: relative;
  margin-right: 50px;
}
.l-dm_enquete-form-item .is-select::after{
  content: '\f107';
  font-family: "FontAwesome", sans-serif;
  position: absolute;
  right: 10px;
}
.l-dm_enquete-form-item select{
  width: 380px;
  height: 46px;
  padding: 0 10px;
  border: 1px solid #cacaca;
}
.l-dm_enquete-form-item .e-error {
  display: block;
  margin: 0 0 7px;
  color: #e00000;
  font-size: 1.4rem;
  font-weight: 700;
  line-height: 1.4rem;
}
.l-dm_enquete-form-item .e-input {
  width: 430px;
  padding: 7px 5px;
  border: 1px solid #cacaca;
  font-size: 1.8rem;
}
.l-dm_enquete-form-item .e-input.is-vs{
  width: 200px;
}
.l-dm_enquete-form-item .e-input.is-short {
  width: 300px;
}
.l-dm_enquete-form-item .e-input.is-full {
  width: 100%;
}

.l-dm_enquete-privacy {
  -webkit-overflow-scrolling: touch;
  height: 230px;
  margin: 0 0 20px;
  padding: 20px 20px 0 20px;
  overflow-y: scroll;
  border: 1px solid #cacaca;
}
.l-dm_enquete-privacy .e-text {
  margin: 0 0 25px;
  line-height: 1.5;
}

.l-dm_enquete-button {
  margin: 0 0 50px;
  text-align: center;
}
.l-dm_enquete-button .l-button-check .e-error {
  display: block;
  padding: 10px 0 15px;
  color: #e00000;
  font-weight: 700;
}
.l-dm_enquete-button .l-button-check_label {
  display: inline-block;
  padding: 0 0 0 .5em;
}
.l-dm_enquete-button .l-button-check {
  margin: 0 0 60px;
}
.l-dm_enquete-button .l-button-list {
  letter-spacing: -.4em;
}
.l-dm_enquete-button .l-button-list .e-button {
  -webkit-transition: all 0.2s;
  width: 230px;
  margin: 0 7px;
  padding: 12px 0;
  color: #fff;
  font-size: 2rem;
  font-weight: 700;
  letter-spacing: 0;
  cursor: pointer;
  transition: all 0.2s;
}

.no-touch .l-dm_enquete-button .l-button-list .e-button:hover {
  opacity: .8;
}

.l-dm_enquete-button .l-button-list .e-button.is-next {
  background: #008842;
}
.l-dm_enquete-button .l-button-list .e-button.is-reset {
  background: #686868;
}

.l-dm_enquete-contact {
  text-align: center;
}
.l-dm_enquete-contact .u-hide-media {
  display: inline-block;
}
.l-dm_enquete-contact .e-text {
  line-height: 2;
}
.l-dm_enquete-contact .e-text .e-strong {
  display: block;
  font-size: 1.8rem;
  font-weight: 700;
}

.is-form-error .l-dm_enquete-form, .is-form-check .l-dm_enquete-form {
  padding: 0;
}

.is-form-thanks .l-dm_enquete-form {
  padding: 0;
}
.is-form-thanks .l-dm_enquete-form .e-text {
  text-align: center;
}
.is-form-thanks .is-thanks .e-title {
  text-align: center;
}
.is-form-thanks .is-thanks .e-title .e-name {
  display: inline-block;
  margin: 0 auto;
  padding: 0 0 10px;
  border-bottom: 1px solid #000;
  color: #000;
  font-size: 2.4rem;
  font-weight: 700;
}
.is-form-thanks .is-thanks .e-text {
  margin: 0 0 30px;
  line-height: 2;
}
.is-form-thanks .is-thanks .l-contact-button {
  padding: 20px 0 0;
  text-align: center;
}
.is-form-thanks .is-thanks .l-contact-button .e-link {
  -webkit-transition: all 0.2s;
  display: inline-block;
  width: 260px;
  margin: 0;
  padding: 15px 25px;
  background: #008842;
  color: #fff;
  font-size: 2rem;
  font-weight: 700;
  letter-spacing: .015em;
  text-decoration: none;
  cursor: pointer;
  transition: all 0.2s;
}

.e-block-colorblock {
  -ms-flex-wrap: wrap;
  display: -ms-flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
      flex-wrap: wrap;
  /* justify-content: center; */
}
.e-block-colorblock.col4 .e-label {
  width: 24%;
  text-align: left;
}

.e-label.is-checkbox, .e-blocks {
  width: 219px;
  margin-bottom: 30px;
  padding: 0;
  /* border: 1px solid #ccc; */
  border-width: 0 0 0 1px;
  text-align: center;
}

.e-label.is-checkbox, .e-blocks:not(:nth-of-type(3n+1)) {
  margin-left: 21px;
}

.e-label.is-checkbox:nth-of-type(5n), .e-label.is-checkbox:last-of-type {
  border-width: 0 1px;
}

.e-blocks:nth-of-type(5n), .e-blocks:last-of-type {
  border-width: 0 1px;
}

.e-label img, .e-blocks img {
  margin-bottom: 15px;
}

.is-radio .e-txt {
  -webkit-transition: all 0.2s;
  display: inline-block;
  position: relative;
  /* width: 100%; */
  line-height: 19px;
  cursor: pointer;
  transition: all 0.2s;
}

.is-checkbox .e-txt {
  -webkit-transition: all 0.2s;
  display: inline-block;
  position: relative;
  padding: 0 0 0 25px;
  /* width: 100%; */
  line-height: 19px;
  cursor: pointer;
  transition: all 0.2s;
}

.is-radio:nth-of-type(n+4) {
  margin-top: 10px;
}
.is-radio .e-txt {
  width: 200px;
  padding: 0 0 0 25px;
}
.is-radio .e-txt:nth-of-type(n+4) {
  margin-top: 5px;
}
.is-radio .e-txt.is-wide, .is-radio .e-txt.in-etctxt {
  width: 400px;
}

.e-radio, .e-checkbox {
  display: none;
}

.e-radio:checked + .e-txt, .e-checkbox:checked + .e-txt {
  color: #008842;
}

.e-txt:before {
  -webkit-transition: all 0.2s;
  display: inline-block;
  position: absolute;
  width: 0;
  height: 0;
  border-radius: 50%;
  background: #008842;
  content: '';
  transition: all 0.2s;
}

.is-checkbox .e-txt:before {
  -webkit-transform: translateX(-20%);
  top: 7px;
  left: 5px;
          transform: translateX(-20%);
}

.is-radio .e-txt:before {
  /* top: 50%; */
  top: 4px;
  left: 4px;
  /* transform: translateY(-50%); */
}
.is-radio .e-txt:after {
  -webkit-transition: all 0.2s;
  display: inline-block;
  position: absolute;
  top: 0;
  width: 15px;
  height: 15px;
  border: 1px solid #ccc;
  content: '';
  transition: all 0.2s;
}

.is-checkbox .e-txt:after {
  -webkit-transition: all 0.2s;
  display: inline-block;
  position: absolute;
  top: 0;
  width: 15px;
  height: 15px;
  border: 1px solid #ccc;
  content: '';
  transition: all 0.2s;
}

.is-radio .e-txt:after {
  /* top: 50%; */
  left: 0;
  /* transform: translateY(-50%); */
}

.is-checkbox .e-txt:after {
  top: 0;
  left: 0;
  /* transform: translateX(-50%); */
}

.is-radio .e-txt:after {
  border-radius: 50%;
}

.e-radio:checked + .e-txt:after, .e-checkbox:checked + .e-txt:after {
  border-color: #008842;
}

.e-radio:checked + .e-txt:before {
  left: 4px;
  width: 9px;
  height: 9px;
}

.e-checkbox:checked + .e-txt:before {
  top: 1px;
  width: 18px;
  height: 16px;
  margin-top: -2px;
  background: url(/assets/img/contact/icon-check.png) no-repeat center/100% auto;
}

.e-txt input[type=text] {
  -webkit-transform: translateY(-5px);
  padding: 7px 10px;
          transform: translateY(-5px);
  border: 1px solid #ccc;
  color: #333;
}

.l-policy .e-check-wrap {
  text-align: center;
}

.l-contact .e-radio, .l-contact .e-checkbox {
  display: none;
}
.l-contact .e-label {
  -webkit-transition: all 0.2s;
  display: inline-block;
  position: relative;
  margin: 0;
  padding: 0 0 0 25px;
  white-space: nowrap;
  cursor: pointer;
  transition: all 0.2s;
}
.l-contact .e-label:before {
  -webkit-transform: translateY(-50%);
  -webkit-transition: all 0.2s;
  display: inline-block;
  z-index: 2;
  position: absolute;
  top: 50%;
  left: 8px;
  width: 0;
  height: 0;
          transform: translateY(-50%);
  border-radius: 50%;
  background: #008842;
  content: '';
  transition: all 0.2s;
}
.l-contact .e-checkbox:checked + .e-label:before {
  left: 4px;
  width: 18px;
  height: 16px;
  margin-top: -2px;
  background: url(/assets/img/contact/icon-check.png) no-repeat center/100% auto;
}
.l-contact .e-label.is-checkbox:after {
  -webkit-transform: translateY(-50%);
  -webkit-transition: all 0.2s;
  display: inline-block;
  position: absolute;
  top: 50%;
  left: 0;
  width: 15px;
  height: 15px;
          transform: translateY(-50%);
  border: 1px solid #ccc;
  content: '';
  transition: all 0.2s;
}

.e-check-wrap .e-label.is-checkbox {
  border: none;
}

.basetxt {
  line-height: 2.25;
}
.photo__item:last-of-type {
  margin-top: 10px;
}

input, textarea {
  -webkit-appearance: none;
}

@media (min-width: 768px) {
  .photo__wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
  .photo__item {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
  }
  .photo__item:last-of-type {
    margin-top: 0;
    margin-left: 30px;
  }
}

@media (max-width: 767px) {
  .is-sp-center {
    text-align: center !important;
  }
}
