.path-webform div > .region-header {
  position: relative;
  background: url(/sites/default/images/corpo/common/img/hdg/pattern-01.png),url(/sites/default/images/corpo/common/img/hdg/hdg1-wide.png) no-repeat;
}

.path-webform div > .region-header:after,
.path-webform div > .region-header:before {
    position: absolute;
    right: 0;
    left: 0;
    content: "";
    display: block;
}

.path-webform div > .region-header:befor1e {
    background-image: linear-gradient(rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0));
    top: 0;
    height: 5px;
}

.path-webform div > .region-header:after {
    background-image: linear-gradient(rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.1));
    bottom: 0;
    height: 3px;
}

.path-webform div > .region-header .page-header {
    padding-right: 20px;
    padding-left: 20px;
    max-width: 910px;
    margin: 0 auto;
    margin-left: auto;
    margin-right: auto;
    background: none;
}

.path-webform div > .region-header .page-header:before,
.path-webform div > .region-header .page-header:after {
  display: none;
}

.path-webform .breadcrumb {
  display: none;
}

.webform-progress {
  padding: 20px;
  margin-bottom: 30px;
  background-color: #fcf6e3;
  border-radius: 15px;
}

.webform-progress-tracker {
  margin: 20px auto;
}

.webform-progress-tracker .progress-step {
  list-style: none;
}

.webform-progress-tracker .progress-step .progress-marker:before {
  width: 28px;
  height: 28px;
}

.webform-progress-tracker .progress-step:not(.is-active) .progress-marker:before,
.webform-progress-tracker .progress-step:hover .progress-marker:before {
  background-color: #ababab;
  color: #ffffff;
  padding-top: 4px;
}

.progress-step.is-active .progress-marker:before {
  background-color: #f7bbb2;
  color: #f25b75;
  padding-top: 4px;
}

.webform-progress-tracker .progress-step.is-complete:hover .progress-marker:before,
.webform-progress-tracker .progress-step.is-active:hover .progress-marker:before {
  background-color: #f26680;
}

.webform-progress-tracker .progress-step .progress-text {
  color: #999999;
}

.webform-progress-tracker .progress-step.is-active .progress-title {
  color: #f25b75;
}

.webform-progress-tracker .progress-step:not(.is-active) .progress-marker:after, 
.webform-progress-tracker .progress-step:hover .progress-marker:after, 
.webform-progress-tracker .progress-step .progress-marker:after {
  background-color: #cccccc;
  height: 3px;
  width: 85%;
  right: -43%;
  top: 12px;
}

.progress-step:not(:last-child)::after {
  z-index: unset;
  background-color: transparent;
  border-bottom: 3px solid #cccccc;
  width: 85%;
  right: -43%;
}

.webform-progress-tracker .progress-step .progress-text {
  padding-top: 10px;
}

.webform-submission-form ul {
  padding-left: 1.5em;
}

.webform-submission-form li {
  list-style: disc;
}

#edit-top-notice,
.bottom_notice {
  padding: 20px 0;
}

#edit-top-notice ul,
.bottom_notice ul {
  padding: 0 30px;
  font-size: 90%;
  line-height: 1.6;
}

#edit-container,
.webform-preview {
  background-color: #f1f7fb;
}

#edit-container {
  padding: 30px 20px;
}

.webform-preview {
  padding: 30px 15px;
}

#edit-container > .form-item,
#edit-container > .js-form-wrapper {
  margin-bottom: 15px;
}

#edit-container .form-item label {
  display: flex;
  align-items: center;
}

#edit-container .form-required:after {
    content: "必須";
    display: inline-block;
    color: #E94B41;
    border: 1px solid #E94B41;
    background-color: #ffffff;
    background-image: none;
    font-size: 0.8em;
    font-weight: bold;
    margin-left: 10px;
    text-align: center;
    width: 40px;
    height: auto;
    padding: 2px 0 1px;
}

#edit-container .form-type-textfield > .form-control,
#edit-container .form-type-tel >.form-control,
#edit-container .select-wrapper {
  max-width: 100%;
  width: auto;
}

#edit-preview .panel-default,
#edit-container > .js-form-wrapper {
  box-shadow: none;
  border: 1px solid #b8c6d0;
  background-color: #ffffff;
  border-radius: 4px;
}

#edit-preview .panel-default > .panel-heading,
#edit-container .panel-default > .panel-heading,
#edit-container > .js-form-wrapper > .form-item > label {
  font-weight: bold;
  background-color: #d7e8f6;
  border-color: #d7e8f6;
  padding: 10px 15px;
  border-radius: 4px 4px 0 0;
}

#edit-container .js-form-wrapper .webform-flexbox {
  padding: 10px;
}

#edit-agreement-container,
#edit-agreement-bottom-container {
  text-align: center; 
}

#edit-agreement-container .form-item,
#edit-agreement-bottom-container .form-item {
    display: inline-block;
    border: 2px solid #f9b9cf;
    padding: 20px 30px;
    background-color: #fdecf2;
    border-radius: 15px;
}

#edit-agreement-container label,
#edit-agreement-bottom-container label {
    font-weight: bold;
    color: #695c5c;
}

#edit-agreement-container .form-required:after,
#edit-agreement-bottom-container .form-required:after {
  display: none;
}

#edit-agreement-container .form-item--error-message.alert-danger,
#edit-agreement-bottom-container .form-item--error-message.alert-danger {
  margin-bottom: 0;
}

#edit-email-flexbox {
  margin-top: 0;
  margin-bottom: 0;
}

#edit-email-flexbox .form-item label {
  display: none;
}

.form-item-agreement,
.form-actions {
  text-align: center;
}

.form-actions {
  margin-top: 30px;
}

.g-recaptcha {
  margin-top: 30px;
}

.g-recaptcha > div {
  margin: 0 auto;
}

#edit-email--wrapper .form-group {
  margin-bottom: 0;
}

.zipcode_container {
  display: flex;
  align-items: flex-start;
  margin-bottom: 15px;
}

.zipcode_container .form-group {
  margin-bottom: 0;
}

.zipcode_container button {
  margin-left: 15px;
  margin-top: 24px;
  color: #fff;
  background-color: #337ab7;
  border-color: #2e6da4;
}

.zipcode_container button:hover {
    color: #fff;
    background-color: #286090;
    border-color: #204d74;
}

.form-type-webform-name .webform-flexbox {
  margin: 0 -0.5em;
}

.form-item--error-message.alert-danger {
  background-color: transparent;
  border: 0;
  color: #ff0000;
  font-weight: bold;
  font-size: 90%;
  padding-top: 2px;
}

.form-item.has-error .form-control {
  border-color: #ff0000;
}

.form-item.has-error .control-label {
  color: #ff0000;
}

fieldset.radios--wrapper legend {
  display: block;
}

.form-item-kenkyuhigaisan .input-group {
  position: static;
}

.form-item-kenkyuhigaisan .input-group .form-control {
  float: none !important;
  width: unset !important;
}

.form-item-kenkyuhigaisan .input-group .input-group-addon {
  width: unset;
}

#edit-preview .webform-submission-data {
  width: 100%;
  max-width: 715px;
  margin: 0 auto;
}

#edit-preview .webform-element label:after{
  content: '：';
}

#edit-preview #inquiry--captcha {
  display: none;
}

#edit-preview #inquiry--contact .panel-body {
  display: flex;
}

#edit-preview #inquiry--contact .panel-body label {
  display: none;
}

#edit-preview .form-group:last-child {
  margin-bottom: 15px;
}

.webform-confirmation .webform-confirmation__message {
    width: 100%;
    max-width: 650px;
    margin: 0 auto 30px;
}

.webform-confirmation .webform-confirmation__message .thanks {
  text-align: center;
}

.webform-confirmation .webform-confirmation__message .reception_time br {
  display: none;
}

.webform-confirmation .webform-confirmation__message .notice {
    background-color: #f5f2f2;
    padding: 10px 20px;
    font-size: 0.8em;
}

.webform-confirmation .webform-confirmation__message .notice ul {
  padding-left: 1em;
}

.webform-confirmation .webform-confirmation__message .notice ul li {
     list-style: initial;
}

.webform-confirmation .webform-confirmation__message .border_box {
    border: 1px solid #b8c6d0;
    padding: 10px 20px;
    border-radius: 5px;
    text-align: center;
    max-width: 400px;
    margin: 0 auto;
}

@media screen and (max-width: 767px) {
  
  #edit-top-notice ul {
    padding: 20px 15px 0 
  }
  
  #edit-container {
    padding: 15px 10px;
  }
  
  .webform-confirmation .webform-confirmation__message .reception_time br {
    display: block;
  }
}

.form-control.form-file {
    height: 37px;
}

.webform-submission-form div.form-item-attache-files > ul > li {
  list-style: none;
}

.no-link-file-preview.form-managed-file span.file-link,
.no-link-file-submission span.file-link {
  pointer-events: none;
}