.red {
    color: #b80000;
}
.form_content {
    box-sizing: border-box;
    padding: min(5.2vw, 40px) 0 min(7.81vw, 60px);
    margin: 0 auto;
}
/* .form_content > fieldset {
    border-bottom: 1px solid #ddd;
} */


/* .form_content > fieldset > .col -------------------------------------------------- */
.form_content > fieldset > .col {
    border-bottom: solid 3px #ccc;
    padding: 0 0 10px;
    position: relative;
}
.form_content > fieldset > .col::before {
    bottom: -3px;
    border-bottom: solid 3px #c19100;
    content: '';
    position: absolute;
    width: 20%;
}
.form_content > fieldset > .col > legend {
    font-size: 18px;
    font-weight: 700;
}


@media screen and (max-width: 768px) {
.form_content > fieldset > .col > legend {
    font-size: 16px;
}
}


/* .form_content > fieldset > .val -------------------------------------------------- */
.form_content > fieldset > .val {
    padding: 15px 0 30px;
}
.form_content > fieldset > .val p,
.form_content > fieldset > .val span {
    font-size: 14px;
}
.form_content > fieldset > .val p {
    padding: 10px 0 0;
}


/* input textarea -------------------------------------------------- */
input[type='text'] {
    border: 1px solid #ccc;
    border-radius: 3px;
    box-sizing: border-box;
    padding: 5px;
    width: min(100%, 400px);
}
input[name='NameAll'],
input[name='RubySei'],
/* input[name='C01'], */
input[name='Zip_No'] {
    width: min(100%, 200px);
}
input[name='Address2'] {
    background: #F9F9F9;
}
textarea {
    background: #F9F9F9!important;
    box-sizing: border-box;
    width: 100%;
    height: clamp(150px, 32.55vw, 250px);
}
input[type='image'] {
    display: block;
    margin: auto;
    max-width: 100%;
}
input,
textarea {
    font-size: clamp(16px, 2.34vw, 18px);
}

select{
    max-width: 100%;
    width: 50%;
    height: 42px!important;
    font-size: 18px!important;
    padding-right: 1em;
    cursor: pointer;
    text-indent: 0.01px;
    text-overflow: ellipsis;
    border: none;
    outline: none;
    background: transparent;
    background-image: none;
    box-shadow: none;
    -webkit-appearance: none;
    appearance: none;
}
select::before {
    position: absolute;
    top: 1.2em;
    right: 0.7em;
    width: 0;
    height: 0;
    padding: 0;
    content: '';
    border-left: 6px solid transparent!important;
    border-right: 6px solid transparent!important;
    border-top: 6px solid #666666!important;
    pointer-events: none;
}
@media screen and (max-width: 768px) {
select{
    max-width: 100%;
    width: 100%;
  }
}

/* #Address 
-------------------------------------------------- */
#Address label > legend {
    font-weight: 900;
    margin: 0 0 10px;
}
#Address .Address > input[type='text']:first-of-type {
    margin: 0 0 10px;
}

/* .btn
-------------------------------------------------- */
.btn {
    margin: 20px 0 0;
}

/* .error 
-------------------------------------------------- */
.val > .error,
.val > .flex > .error,
.val label input.error {
    background: #fdebeb!important;
    /* background: #ffe3e3!important; */
}
.val  > .valid,
.val > .flex > .valid,
.val label input.valid {
  background: #ccffff!important;
  /* background: #d1ffdd!important; */
}
.errorText > label.error {
  color: #b92000;
  display: block;
  font-size: 14px;
  font-weight: bold;
}
.errorText > label.error > br{
  display: none;
}
@media screen and (max-width: 768px) {
  .errorText > label.error > br{
    display: block;
  }
}

/* .secure
-------------------------------------------------- */

.secure{
	width: 860px;
	margin: 0 auto;
}
.secure div{
	font-size: 14px;
}
@media screen and (max-width: 768px) {

.secure{
	width: 90%;
}
.secure div{
	font-size: 12px;
}
}
