@charset "utf-8";
/* CSS Document */
html, body {
  font-family: "Eina01-Bold",'nunito-light','メイリオ', Meiryo, sans-serif;
}
h1, h2, h3, h4 {
  font-family: "Eina01-Bold",'nunito-light', Meiryo, sans-serif;
}
p, a, span, div, select, option, textarea, label, ul, li, dl, dt, dd {
  font-family: 'メイリオ',"Eina01-Bold", Meiryo, sans-serif;
}

.container h1 {
  position: relative;
  font-weight: bold;
  padding-bottom: 2.143rem;
  margin-bottom: 4rem;
}
.container h1:after {
  position: absolute;
  z-index: 2;
  content: ' ';
  display: block;
  padding: 5px 20px;
  border-radius: 15px;
  bottom: 0;
    /* amb コメントアウト */
	/*background: linear-gradient(to right, #d11e47, #ef7922);*/
  /*background: -webkit-gradient(to right, #d11e47, #ef7922);*/
  /*background: -o-linear-gradient(to right, #d11e47, #ef7922);*/
  /*background: -moz-linear-gradient(to right, #d11e47, #ef7922);*/
  /*background: -webkit-linear-gradient(to right, #d11e47, #ef7922);*/
}
.form-group.required .form-control-label::before {
	color: #c00;
	}
.form-group label.form-control-label {
    left: 15px;
	}
.contact-container .form-group label.form-control-label {
    top: 0;/*1em*/
	}
.login-form-nav .form-group.login-group label,
.form-group.required label.form-control-label::before {
    color: #fff;
	}
.contact-container .form-group.required label.form-control-label::before,
.contact-container .form-group label.form-control-label, .form-group .contact-select {
    color: #999;
	}
.login-form-nav .form-label {
    padding: 14px 30px;
    max-width: 530px;
	}
.login-form-nav .form-group.login-group label::before {
    color: #fff;
    position: relative;
    left: 0.24em;
	}
.contact-container .form-group .form-control:focus ~ label, .form-group .form-control.has-content ~ label {
    top: -1.08em;
}
.contact-container .form-control:focus ~ label, .login-form-nav .form-control.has-content ~ label {
    top: -0.8543em;
    padding-left: 0px;/*38px*/
    opacity: 1;
	color: #999;
}
.login-page .login-form-nav .form-control:focus ~ label, .login-form-nav .form-control.has-content ~ label {
    top: -0.1em;
    padding-left: 0px;
    opacity: 1;
    color: #fff;
}



.form-group .form-control:focus {
    border-bottom: 1px solid #fff;
    outline: none;
    box-shadow: none;
	}

.btn:hover, .btn:focus {
    text-decoration: none;
	}
.contact-container .btn {
	color: #000;
	background-color: #fff;
	border: 2px solid #000;
	display: inline-block;
	text-transform: uppercase;
	font-family: 'CamphorW01-Regular','nunito-light', 'メイリオ', Meiryo, sans-serif;
	padding: 5px 10px;
	border-radius: 0;
	background-color: #000;
	color: #fff
	}
.contact-container .btn:hover,
.contact-container .btn:focus {
	background-color: #000
	}
.contact-container .btn:focus {
	box-shadow: none
	}
.contact-container .btn {
    display: inline-block;
    font-family: eina01-bold;
    font-size: 1.0714rem;
    padding: 1em 1.67em;
    border-radius: 1.7em;
    transition: color .2s ease-in,background-color .2s ease-in,border-color .2s ease-in,box-shadow .2s ease-in;
    box-shadow: 0 2px 7px -2px #333;
    color: #272727;
    background-color: #fff;
    border: 1px solid #f5f5f5;
    max-width: 160px;
    min-width: 16em;
    padding-top: .53em;
    padding-bottom: .53em;
    width: auto;
    min-width: 18em;
}
.contact-container .btn:hover {
    color: #fff;
    background-color: #272727;
    border-color: #272727;
}
@media (min-width: 576px){
  .contact-banner .title-contain {
    margin-left: 0;
	}
  .contact-container .send-check-btn {
    width: 85%;
    margin: 0 auto;
    margin: 3.572rem 0 5rem 0;
	}
}
@media (min-width: 992px){
  .contact-container .btn {
    min-width: 16em;
    font-size: 1.1429rem;
    padding-top: .45em;
    padding-bottom: .45em;
	}
}



/* 20210819 追記 */
.contact-container {
	margin: 100px auto;
}

.red-2-orange .account-banner .title-contain .underline, .red-2-orange .account-banner .logout-btn .underline {
	background: linear-gradient(to right, #d11e47, #ef7922);
	background: -webkit-gradient(to right, #d11e47, #ef7922);
	background: -o-linear-gradient(to right, #d11e47, #ef7922);
}
.yellow-2-green .account-banner .title-contain .underline, .yellow-2-green .account-banner .logout-btn .underline {
	background: linear-gradient(to right, #ffc012, #80c242);
	background: -webkit-gradient(to right, #ffc012, #80c242);
	background: -o-linear-gradient(to right, #ffc012, #80c242);
}
.teal-2-blue .account-banner .title-contain .underline, .teal-2-blue .account-banner .logout-btn .underline {
	background: linear-gradient(to right, #6ac5b0, #3292cf);
	background: -webkit-gradient(to right, #6ac5b0, #3292cf);
	background: -o-linear-gradient(to right, #6ac5b0, #3292cf);
}
.navy-2-purple .account-banner .title-contain .underline, .navy-2-purple .account-banner .logout-btn .underline {
	background: linear-gradient(to right, #02549d, #c11c8a);
	background: -webkit-gradient(to right, #02549d, #c11c8a);
	background: -o-linear-gradient(to right, #02549d, #c11c8a);
}

/* form */
h3.form-sub-title {
  margin-bottom: 2rem;
}

.form-group .form-control.contact-select {
	/* global.css 20285にinputの記載あり */
  height: 2.286em!important;
}
.select-wrap {
	margin-left: 0;
}
.form-group .contact-select {
	padding: 0 0 0 15px;
	max-width: 415px;
	border-radius: 0!important;
}
.select-wrap i.atent-mark {
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;
}
i.atent-mark {
	-webkit-transform: scale(0.7);
	-ms-transform: scale(0.7);
	transform: scale(0.7);
	display: inline-block;
}
.form-group.textarea textarea {
	/* height: auto; */
  height: 100px;
}
.form-group.textarea .focus-border {
	top: auto;
	right: 0;
	margin: auto;
	max-width: calc(100% - 30px);
}
.caption {
  padding-left: 15px;
  padding-right: 15px;
  margin-bottom: 3rem;
}
.form-flex .form-group .focus-border {
  position: absolute;
  top: calc(2em - 0.5px);
  left: 0;
  width: 0;
  right: 0;
  height: 1p
  background-color: #272727;
  transition: 0.4s;
  max-width: calc(100% - 30px);
  margin: auto;
}
.contact-container .send-check-btn {
  margin-top: 58px;
  margin-bottom: 35px;
  text-align: center;
}
@media (max-width: 768px) {
	.title-contain span.underline {
	  padding: 0 0 1.5rem 15px;
	}
	.title-contain span.underline::after {
		left: 15px;
	}
	.form-control.contact-select.col-6 {
		max-width: 60%;
	}
	.contact-select.col-6,
	.form-group.col-6 {
		flex: 0 0 100%;
		max-width: 100%;
	}
  .contact-container .send-check-btn {
    width: 100%;
    margin: 58px auto 35px;
    justify-content: center;
  }
}
@media (max-width: 575px) {
	.contact-container .send-email-btn {
		padding-left: 15px;
	}
}
.invalid-feedback {
  display: block!important;
}

/* お問い合わせ　確認 */
form.contact-form dt {
  font-size: 1.25rem;
  font-weight: normal;
}
form.contact-form dd {
  font-size: 1.25rem;
}
form.contact-form dl {
	margin-bottom: 1.5rem;
}
form.contact-form h3.check-sub {
  margin-top: 3rem;
  margin-bottom: 1rem;
  font-size: 1.25rem;
}
.custom-control {
  position: relative;
  display: block;
  min-height: unset;
  padding-left: 0;
  font-size: 1.25rem
}
.custom-checkbox ~ label::before {
  left: -20px;
}
.custom-checkbox ~ label::after {
  left: -18px;
}
.contact-form .custom-control {
  padding-left: 0;
}
.agree-btn {
  margin: 3rem 0 0;
}
.contact-form .custom-control .custom-control-label font, a {
  color: #999;
  line-height: 18px;
}
.contact-form .custom-control .custom-control-label {
  position: absolute;
  top: 0!important;
  right: 0;
  bottom: 0;
  left: 20px;
  margin: auto;
  padding-left: 0;
}
.contact-form .custom-control .custom-control-label a {
  text-decoration: underline;
}
.form-check-input {
  position: static;
  margin-top: 0;
  margin-left: 0;
}
.back-btn {
	margin-right: 3rem;
}
.send-check-btn .send-btn {
  margin-top: 0;
}
.thanks-wrap.row {
  display: block;
  margin-right: -15px;
  margin-left: -15px;
}
.send-check-btn.complete-btn.row {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
@media (max-width: 768px) {
  .send-check-btn {
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
  }
  .send-check-btn.finish-btn {
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
  }
  .send-check-btn.complete-btn.row {
    display: block;
  }
	.back-btn {
    margin: 0 auto 1.5rem;
	}
	.send-btn {
    margin: 0 auto;
  }
}
