@charset "utf-8";
/**
* CSS Document for form-mailer only
* Date:2020/10/13 by Rakus
*/
/*form-mailer Reset*/
*{
box-sizing: border-box;
margin: 0;
padding: 0;
border: 0;
vertical-align: baseline;
}

/*-------------------------------------------
form-mailer PC Set(window minwidth 768px) 
基本のカスタマイズ
-------------------------------------------*/
.annotation{ /*フォーム上部の注釈文*/
line-height: 1.5;
text-align: justify;
margin:20px auto;
background: #fff;
padding: 15px 10px;
}
.annotation-inner{ /*フォーム上部の注釈文のinner*/
font-style: 14px;
width: 95%;
max-width: 980px;
margin: 0 auto;
}
.annotation-inner p{ /*フォーム上部の注釈文p*/
font-style: 14px;
}
.annotation .required {/*注釈内の必須マーク*/
color: #fff;
background: #ff9900;
font-size: 11px;
letter-spacing: 3px;
border-radius: 2px;
padding: 1px 4px;
line-height: 100%;
vertical-align: 2px;
margin: 0 5px 6px 5px;
}
form{
width: 95%;
max-width: 980px;
margin: 0 auto;
padding: 20px 0;
}

.form-fieldset{ /*各項目をカテゴライズしてラップする*/
display:flex;
flex-wrap: wrap;
justify-content: space-between;
align-items: center;
font-size: 16px;
margin: 0 0 20px 0;
width: 100%;
gap: 0px 20px;
}
.form-fieldset legend{
width: 30%;
font-size: 14px;
font-feature-settings: "palt";
font-weight: bold;
/* margin-top: 10px; */
position: relative;
}
.form-fieldset legend::before {/*任意マーク*/
  content: "任意";
  display: inline-block;
  color: #fff;
  background: #074d82;
  font-size: 10px;
  letter-spacing: 3px;
  border-radius: 2px;
  padding: 1px 4px 2px;
  line-height: 100%;
  vertical-align: 2px;
  margin: 0 5px 3px 5px;
}
.required legend::before {/*必須マーク*/
  content: "必須";
  display: inline-block;
  color: #fff;
  background: #E14400;
  font-size: 10px;
  letter-spacing: 2px;
  border-radius: 2px;
  padding: 3px 3px;
  margin: 0 5px 0 0;
}
.form-fieldset .form-group{
width: calc(70% - 20px);
}
.form-group .form-control {/*ハブスポット時の設定打ち消し　main.css L2310*/
padding: 10px;
border: 1px solid #ccc;
box-shadow: none;
background: #fff;
border-radius: 3px;
width: 100%;
display: block;
}
.form-group.form-fieldgroup-flex{
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.form-group .form-control.form-phone-number{
  width: 32%;
}
.form-group .form-control.form-control-seimei{
  width: 49%;
}
.form-group .form-label-radio-checkbox--point{
  font-size: 15px;
}
::placeholder{
color: #888;
}
input[type="text"], input[type="email"], input[type="tel"] ,
textarea,select{/*input系のタグの成型*/
padding: 10px !important;
}
select {
  -moz-appearance: menulist;
  -webkit-appearance: menulist;
}
.form-fieldset input[type="text"]:focus,
.form-fieldset input[type="email"]:focus,
.form-fieldset input[type="tel"]:focus,
.form-fieldset textarea:focus,
.form-fieldset select:focus{/*input系のタグの成型*/
background: rgb(255,255,255,0.80) !important;
border: 1px solid #0697e5;
outline:none; 
}
.col-md-6{
display:inline-block;
padding: 5px;
font-size: 18px;
}
input[type="checkbox"].form-control{/*input(checkbox)のタグの成型*/
margin-right:5px;
display: inline-block;
border: 1px solid #ccc;
width: 22px;
height: 22px;
vertical-align: -4px;
}
input[type="checkbox"].form-control:focus{/*input(checkbox)のタグの成型*/
border: 1px solid #0697e5;
outline:none; 
}
.invalid-feedback{
color: #d13c66;
font-size: 14px;
margin-top: 5px;
display: none;
}
.invalid-feedback::before{
content: "▲";
position: relative;
display: inline-block;
padding-right: 5px;
font-size: 75%;
letter-spacing: 1px;
}
input[type="submit"] {
font-size: 20px;
font-weight: bold;
display: block;
width: 100%;
max-width: 450px;
margin: 40px auto 0;
padding: 20px 10px;
background: #E14400;
color: #fff;
border-radius: 60px;
border: none;
line-height: 1;
outline: none;
cursor: pointer;
}
input[type="submit"]:hover {
opacity: 0.75;
}
.fm-pointers{
width: 80%;
margin: 20px auto;
font-size: 13px;
text-align: center;
}
.fm-pointers a{
text-decoration: underline;
color: #214882;
}
.fm-pointers a:hover{
color: #f28828;
text-decoration: none;
outline: none;
}
.form-fieldset-checkbox .col-md-6 {
  width: auto !important;
}
.form-formmailer {
  background: #dae3e5;
  width: 50%;
}
.form-formmailer-inner {
  width: 90%;
  max-width: 410px !important;
  margin: 0 40px;
  padding: 0;
}
.form-fieldset p {
font-size: 13px;
line-height: 1.2;
}
.pp-text p {
  margin: 5px 0;
}
.pp-text p a {
  text-decoration: underline;
  color: #214882;
}
/*-------------------------------------------
form-mailer PC Set(window max-width 768px)
基本のカスタマイズ
-------------------------------------------*/
@media (max-width: 768px) {
.annotation {
margin: 10px auto;
}
form{
padding: 30px 5px 10px;
}
.form-fieldset{ /*各項目をカテゴライズしてラップする*/
display:block;
font-size: 14px;
}
.form-fieldset legend{
width: 100%;
font-size: 14px;
}
.form-fieldset .form-group{
width: 100%;
}
.invalid-feedback{
font-size: 12px;
position: relative;
}
.invalid-feedback::before{
content: "▲";
position: relative;
display: inline-block;
padding-right: 5px;
font-size: 75%;
letter-spacing: 1px;
}
input[type="submit"] {
font-size: 20px;
width: 85%;
margin: 20px auto;
padding: 20px 5px;
}
.fm-pointers{
width: 95%;
font-size: 12px;
text-align: justify;
}
.col-md-6{
display:inline-block;
padding: 5px;
font-size: 14px;
}
input[type="checkbox"].form-control{/*input(checkbox)のタグの成型*/
margin-right:3px;
display: inline-block;
border: 1px solid #ccc;
width: 18px;
height: 18px;
vertical-align: -4px;
}

.form-formmailer {
  width: 100%;
}
.form-formmailer-inner {
  margin: 0 auto;
}
}