.container {
font-family: Noto Sans JP, sans-serif;
font-size:18px;
width: 100%;
max-width: 800px;
background: none;
margin: 40px auto 0;
padding:0 10px 100px 10px;
color: #000;
border-radius: 0;
box-sizing: border-box;
border: none;
}
@media (max-width: 639px) {
.container {font-size:16px;}
}
.content-form{
width: 100%;
}
.form-column{
margin-bottom:50px;
}
.form-column:nth-of-type(1){position: relative;z-index:13;}
.form-column:nth-of-type(2){position: relative;z-index:12;}
.form-column:nth-of-type(3){position: relative;z-index:11;}
.form-column:nth-of-type(4){position: relative;z-index:10;}
.form-column:nth-of-type(5){position: relative;z-index:9;}
.form-column:nth-of-type(6){position: relative;z-index:8;}
.form-column:nth-of-type(7){position: relative;z-index:7;}
.form-column:nth-of-type(8){position: relative;z-index:6;}
.form-column:nth-of-type(9){position: relative;z-index:5;}
.form-column:nth-of-type(10){position: relative;z-index:4;}


.content-confirmation .form-column{
border-bottom:1px solid #8C8C8C;
padding-bottom:25px;
}
.content-confirmation .form-column .form-column:last-child{
border-bottom:none;
margin-bottom:0;
padding-bottom:0;
}
.form-column .label {
display: flex;
align-items: center;
margin-bottom: 10px;
}

.form-column:before {
content: "";
display: block;
margin-top: -11rem;
padding-top:11rem;
visibility: hidden;
}
.form-column:nth-of-type(1):before {margin-top: -11rem;padding-top: 11rem;}
.form-column:nth-of-type(2):before {margin-top: -12rem;padding-top: 12rem;}
.form-column:nth-of-type(3):before {margin-top: -13rem;padding-top: 13rem;}
.form-column:nth-of-type(4):before {margin-top: -14rem;padding-top: 14rem;}
.form-column:nth-of-type(5):before {margin-top: -15rem;padding-top: 15rem;}
.form-column:nth-of-type(6):before {margin-top: -16rem;padding-top: 16rem;}
.form-column:nth-of-type(7):before {margin-top: -17rem;padding-top: 17rem;}
.form-column:nth-of-type(8):before {margin-top: -19rem;padding-top: 19rem;}
.form-column:nth-of-type(9):before {margin-top: -21rem;padding-top: 21rem;}
.form-column:nth-of-type(10):before {margin-top: -24rem;padding-top: 24rem;}

.badge,legend .badge-required{
font-size: 13px;
font-weight: normal;
display: inline-block;
align-items: center;
background-color: #FF0000;
padding: 3px 8px 5px;
color: #fff;
}

legend .badge-required{
margin-left:1em;
}
.description-block {
display: block;
color: #000;
}

input[type='text'],input[type='tel'],input[type='email'] ,textarea {
width: 100%;
max-width: 100%;
padding: 12px 10px;
background-color: #f3f3f3;
border-top: none;
border-left: none;
border-right: none;
border-bottom: 2px solid #E5EBF3;
}
input[type='text'].mt-invalid,input[type='tel'].mt-invalid,input[type='email'].mt-invalid ,textarea.mt-invalid,select.mt-invalid,input[type=checkbox].mt-invalid ~ .option-text::before {
background-color:#ff00001a;
border-color:#FF0000;
}
.form-column-zip-code-jp .input-group input.zip-code-jp{
width:100%;
}
select {
min-width: 230px;
height: 2.8em;
width: 100%;
padding: .4em calc(.8em + 30px) .4em .8em;
border: none;
border-bottom: 2px solid #E5EBF3;
cursor: pointer;
position: relative;
padding-right:15px;
appearance: none;
background-color: #f3f3f3;
background-image: url("https://www.surebizcloud.co.jp/assets/icons/icon_chevron_down.svg");
background-repeat: no-repeat;
background-size: 30px auto;
background-position: right 15px center; 
}
select:focus {
outline: none;
}
.form-column-checkbox{
position: relative;
margin:0;
z-index: 1;
}
.form-column-checkbox fieldset{
padding-left:23em;
border:none;
}
.form-column-checkbox fieldset .label{
position: absolute;
left: 0;
width: 20em;
}
.form-column-checkbox fieldset .input-group{
padding-top:5px;
}
input[type=checkbox] {
z-index: -1;
position: absolute;
opacity: 0;
}
input[type=checkbox] ~ .option-text {
display: inline-block;
position: relative;
padding-left: 4rem;
font-weight:700;
}
input[type=checkbox] ~ .option-text::before {
box-sizing: border-box;
display: block;
position: absolute;
top: 0.1em;
left: 0;
width: 2.5rem;
height: 2.5rem;
border: 1px solid #BEBEBE;
background: #F8F8F8;
content: "";
}
input[type=checkbox]:checked ~ .option-text::before {
background: #fff;
box-shadow: inset 0 0 0 0.4rem #fff;
}
input[type=checkbox]:checked ~ .option-text::after {
display: block;
position: absolute;
top: 0.6em;
left: 0.6rem;
width: 1.2rem;
height: 0.7rem;
-webkit-transform: rotate(-45deg);
transform: rotate(-45deg);
border-bottom: 3px solid #E5EBF3;
border-left: 3px solid #E5EBF3;
content: "";
}
@media (min-width: 639px) and (max-width: 800px) {
.form-column-checkbox fieldset{
padding-left:20em;
margin-top: 0;
padding-top: 0;
}

}
@media (max-width: 639px) {
.form-column-checkbox fieldset .label{
position: relative;
padding:0;
}
.form-column-checkbox fieldset{
padding-left:0;
position: relative;
margin-top: 0;
padding-top: 0;
}
}
.c-link {
color:#2D45FF;
text-decoration: underline;
}
.icon-arrow {
font-size:18px;
z-index: 3;
position: relative;
}
.icon-arrow a img{
margin-top:-4px;
margin-left:10px;
transition: all .3s;
}
@media (min-width: 639px) and (max-width: 800px) {
.form-column-checkbox .description-block{padding-top:15px;}
.icon-arrow {font-size:18px;}
.icon-arrow a img {width:19px;height:13px}
}
@media (max-width: 639px) {
.form-column-checkbox .description-block{padding-top:15px;}
.icon-arrow {font-size:16px;}
.icon-arrow a img {width:16px;height:12px;}
}
.icon-arrow a:hover img{
transform:translate(.3em);
transition: all .3s;
}
.button-group{
display:flex;
flex-direction: row;
justify-content: center;
align-items:center;
margin-top:48px;
gap: 20px 20px;
}
.button{
border-radius: 5rem;
display: flex;
align-items: center;
justify-content: center;
height: -moz-fit-content;
height: fit-content;
padding-block: 12px;
text-align: center;
text-decoration: none;
background-color: #2D45FF;
border: 1px solid #2D45FF;  
min-width:390px;
width: fit-content;
min-height: 60px;
padding: 16px 30px;
color:#fff;
font-size: 16px;
font-weight:700;
margin:0;
transition:color .3s;
transition:background-color .3s,border .3s;
}
.button:hover{
text-decoration: none;
background-color: #fff;
color:#2D45FF;
transition:background-color .3s,border .3s;
}

@media (min-width: 639px) and (max-width: 800px) {
.button-group{margin-top:40px;flex-direction: column;}
.button {min-width:60%;}
}
@media (max-width: 639px) {
.button-group{margin-top:25px;flex-direction:column;}
.button {min-width: 60%;}
}
.content-error{
padding-bottom:48px;
position: relative;
z-index: 14;
}
.message-block-error {
padding: 0;
margin-bottom: 20px;
border: none;
border-radius: 0;
color: #FF0000;
background-color: #FFF;
}
.message-block-error ul{
color: #FF0000;
font-size:18px;
list-style:none;
}
@media (max-width: 639px) {
.message-block-error ul {font-size:16px;}
}
.message-block-error ul li{
padding-left: 18px;
margin-top:18px;
}
.message-block-error ul li::marker{
display: inline-block;
content: "・";
}
.message-block-error ul li strong{
font-weight:400;
}
.message-block-error a {
color: #FF0000;
text-decoration: none;
}
.message-block-error a :hover{
text-decoration: underline;
}
.message-block-confirmation{
margin-bottom:48px;
}
.help-block{
display:none;
}

.content-confirmation .badge,
.content-confirmation .c-notice {
display: none!important;
}

.recaptcha-v3-badge {
margin-top:100px;
display: flex;
align-items: flex-start;
justify-content: flex-end;
}

.content-confirmation [data-column="姓"],
.content-confirmation [data-column="セイ"] {
  border-bottom: none !important;
  margin-bottom: 0!important;
}

[data-column="フリガナ"],
[data-column="お名前"],
[data-column="個人情報の取り扱いについて"] {
  border-bottom: none !important;
  margin-bottom: 0!important;
  padding-bottom: 0!important;
}

[data-column="個人情報の取り扱い同意ボタン"] fieldset {
   padding-left: 0;
}
[data-column="個人情報の取り扱い同意ボタン"] fieldset .label {
    display: none;
}
[data-column="個人情報の取り扱い同意ボタン"] {
    text-align: center;
    width: 100%;
}
[data-column="個人情報の取り扱い同意ボタン"] input[type=checkbox]:checked ~ .option-text::after {
    border-color: #000;
}

#confirmation-container {
    [data-column="個人情報の取り扱いについて"] .c-notice:not(.contact-policy-panel__text)  {
        display: block !important;
    }
    [data-column="個人情報の取り扱い同意ボタン"] .preview-block {
        padding-top: 0;
        text-align: left;
    }
}

.form-column-note {
    margin-bottom: 20px;
}