section:not(.imagebg):not([class*='bg-']) + section.bg--secondary {
  border-top: 0;
}

section.bg--secondary:not(.imagebg) + section:not(.imagebg):not([class*='bg-']) {
  border-top: 0;
}

section.bg--dark {
  background-color: #000035;
}

.modal-container:before {
  background: rgba(0, 0, 0, 0.6);
}

p.lead.bk {
  color: #252525;
}

input[type], textarea, select {
    background: #fff;
    border: 1px solid #d3d3d3;
}

input[type="submit"].btn.btn--primary {
    border-color: #0171bd;
    background: #0171bd;
}

.btn,
input[type="submit"].btn {
  padding-right: 4.78571429em!important;
  padding-left: 4.78571429em!important;
}

.btn {
  font-size: 1.2em!important;
}

.btn--primary .btn__text i, .btn--primary:visited .btn__text i,
.btn--primary-1 .btn__text i, .btn--primary:visited .btn__text i {
  color: #fff;
}

input[type="submit"].btn {
  font-size: 1.0em!important;
}

.btn .label {
  line-height: 26px;
}

ul:not(.process-stepper) {
  list-style-type: disc;
}

ul:not(.process-stepper) li {
  margin-left: 1.5em;
}

footer .logo {
  max-height: 30px;
  margin-bottom: 16px;
}

.back-to-top {
  display: none;
  cursor: pointer;
}

.back-to-top:not(.active) {
  opacity: 1;
  transform: translate3d(0, 0px, 0);
  -webkit-transform: translate3d(0, 0px, 0);
  pointer-events: auto;
}

.back-to-top:hover {
  transform: translate3d(0, -10px, 0);
  -webkit-transform: translate3d(0, -10px, 0);
}

@media (max-width: 990px) {
  .mt--1, .mt--2 {
    text-align: center;
  }
}

@media all and (min-width: 768px) {
  .bg--image {
    background: url('../img/bg.jpg') bottom right no-repeat;
    background-size: 29%;
  }
  .process-2 div {
    margin-left: -7px;
  }
}


#--- メールフォーム ---#

input[type] + input[type],
input[type] + .input-checkbox,
input[type] + button,
input[type] + .input-select {
  margin-top: 0em!important;
}

input,
select {
  /*font-size:1.6rem;*/
  height:30px;
  padding:0 1%;
  margin-top: 0em!important;
}

input:not([type="submit"]), textarea, select {
    background: #fff;
    border: 1px solid #d3d3d3;
}

input[type="radio"],
input[type="checkbox"]{
  display: none!important;
  -webkit-appearance: radio;
  width: auto;
  vertical-align: middle;
}

.form dl {
  position: relative;
}

.form dl dt {
  /*font-weight: 400;*/
  margin-top: 1.392em;
  margin-bottom: 0.232em;
  text-align: left;
}

.form dl dd {
  text-align: left!important;
  margin-bottom: .5em;
}

.form select {
  padding-left: 0.92857143em;
}

input.field1 {
  width:100%;
}

input.field1_2,
input.field2_2 {
  width:49%;
}

input.field1_2,
input.email1_2 {
  margin-right:1%;
}

input.field2_2,
input.email2_2 {
  margin-left:1%;
}

input.email1_2,
input.email2_2 {
  width:48%;
}

input.postcode-1,
input.postcode-2 {
  width:20%;
}

span.atmark,
span.hyphen {
  display: inline-block;
  width:2%;
  height:30px;
  /*line-height:30px;*/
  vertical-align:middle;
  text-align:center;
  overflow:hidden;
}

@media all and (max-width: 767px) {
  input.email1_2,
  input.email2_2 {
    width:46.5%;
  }
  span.atmark {
    width:5%;
  }
}

input.email1_2,
input.email2_2,
span.atmark {
  /*margin-bottom:5px;*/
}

select.dob1 {
  width: 70px;
  padding: 0 0.92857143em;
}

select.dob2 {
  width: 50px;
  padding: 0 0.92857143em;
}

select.pref {
  width: 44.6%;
}

select.persons {
  width: 50px;
}

select.reason {
  width: auto;
}

label {
  font-size: 1em;
}

.radio-input {
  display: block;
  width: 100%;
  text-align: center;
  padding: 0.46428571em 2.78571429em 0.46428571em 2.78571429em;
  border: 1px solid #d3d3d3;
  border-radius: 6px;
	cursor: pointer;
	margin: 10px 0;
}

/*.radio-input:last-child {
  margin-left: 10px;
}*/

input[type="radio"]:checked + .radio-input,
input[type="checkbox"]:checked + .radio-input{
	color: #fff;
	background-color: #0171bd;
  font-weight: bold;
  border: 1px solid #0171bd;
}

.radio-input:hover {
  border-color: #0171bd;
}

/*select.subject,
textarea.message {
  width:98.6%;
}*/

/*textarea.message {
  font-size:1.6rem;
  line-height:2.4rem;
  height:290px;
  margin-top:10px;
}*/

.red {
  color: #dd0000;
  font-weight: bold;
}

.recaptcha {
  clear:both;
  width:100%;
  padding:40px 0 20px;
}

.recaptcha div {
  margin:0 auto;
}

div.error {
  position: relative;
}

div[class*='err-'] {
  display: none;
  position: absolute;
  top: 4px;
  color: #ffffff;
  font-size: 0.857142857142857em;
  padding: 1px 6px;
  border-radius: 2px;
  z-index: 50;
}

div[class*='err-'].active {
  display: block;
  opacity: 0.85;
}

div.error div[class*='err-'] span.err-arrow {
  position: absolute;
  top: -4px;
  left: 9px;
  display: block;
  width: 8px;
  height: 8px;
  transform: rotate(45deg);
  z-index: 1;
}

div.error div[class*='err-'] span.err-txt {
  position: relative;
  z-index: 2;
}

.boxed-btn {
  background-color: #ffffff;
  padding-top: 1.85714286em;
  /*padding-bottom: 0.92857143em;*/
  overflow: hidden;
}

.boxed-btn .btn:first-child {
  margin-bottom: 0.92857143em;
}

input[type="submit"].btn {
  color: #252525;
}