/* CSS Document */

:root {
  --base-bg: #E0E0E0; 
  --base-gray: #EFEFEF;
  --brand-red: #E53200;
}

.dbs-main { background: var(--base-bg); position: relative; padding-top: 80px;  }
.dbs-main::before { content: ''; width: 100%; height: 100%; background-image: linear-gradient(to bottom, #FFF 1px, transparent 1px, transparent), linear-gradient(to right, #FFF 1px, transparent 1px, transparent); background-size: 80px 80px; background-position: center center; position: absolute; inset: 0; margin: auto; opacity: .6; }

.dbs-main-inner { position: relative; z-index: 2; }
.t-dbs-red { color: var(--brand-red); }
.t-dbs-must { color: var(--brand-red); font-size: .8em; }

.footer-dbs.top { background: var(--base-gray); padding-top: 120px; position: relative; z-index: 2; }
.footer-dbs .copyright { color: #BFBFBF; border-top: 1px solid #BFBFBF; background: none;  }

.dbs-forms-list { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; }
.btn-dbs,
a.btn-dbs{ background: var(--brand-red); color: #FFF; padding: 1.2em; display: block; font-size: 1.3rem; position: relative; font-size: 1.375rem; border-radius: 4px; }
.btn-dbs::after { content: ''; width: .5em ;height: .5em; display: block; border-top: 2px solid #FFF; border-right: 2px solid #FFF; position: absolute; right: 1em; top: 0; bottom: 0; margin: auto; transform: rotate(45deg); }


@media screen and (max-width: 960px) {
  .dbs-forms-list { grid-template-columns: 1fr; }
}

.dbs-top { overflow: hidden; position: relative; z-index: 2; }
.dbs-top::after { content: ''; width: 300vw; height: 300vw; position: absolute; left: -100vw; top: calc(100% - 15vw); margin: auto; z-index: -1; background:var( --base-gray); border-radius: 50%; display: block; }


.dbs-logo { margin: 0 auto 60px; height: auto; position: relative; z-index: 2; }
.dbs-logo.izumi { width: 316px; }
.dbs-logo.beruf {  mix-blend-mode: multiply; width: 446px; }

.dbs-top .desc { background: #FFF; border-radius: 3em; padding: 1.5em 2em; text-align: center; font-weight: bold; font-size: 1.1875rem; font-weight: bold; width: fit-content; margin: 0 auto 2em; position: relative; }
.dbs-top .desc::after { content: ''; width: 30px; height: 30px; background: #FFF; clip-path: polygon(0 0, 100% 0, 50% 100%); position: absolute; left: 0; right: 0; margin: auto; top: calc(100% - 10px); }

.dbs-top .img { width: 270px; max-width: 45%;  display: block; margin: 0 auto; }

@media screen and (max-width: 560px) {
  .dbs-top .desc { font-size: 1.1rem; padding: 1em 2em;margin-bottom: 80px;  }
}


.dbs-top-conts { background: var(--base-gray); }
.dbs-top-conts .inner { width: 970px; max-width: 90%; margin: 0 auto; }
.dbs-rules-lead { font-size: 1.25rem; font-weight: 600; margin-bottom: 1em; line-height: 2; }
.title-dbs-rules { background: var( --base-gray); font-size: 1.125rem; padding: 1em; background: var(--base-gray); text-align: center; font-weight: bold; margin-bottom: 1em; }
.dbs-rules-title-l { font-size: 2rem; font-weight: bold; text-align: center; margin-bottom: 1em; line-height: 1.5; }
.dbs-rules-title { text-align: center; font-weight: bold; }
.dbs-rules .item { display: grid;  grid-template-columns: 8em minmax(0, 1fr); gap: 1em; font-size: 1.0625rem; }
.dbs-rules .item + .item { border-top: 1px solid rgba(0,0,0,.2); padding-top: 1em; margin-top: 1em; }
.dbs-rules dt { color: var(--brand-red); font-weight: bold; }
.dbs-rules dd { font-weight: 600;  }


@media screen and (max-width: 960px) {
  .dbs-rules-lead { font-size: 1.1rem; }
 .dbs-rules-title-l  { font-size: 1.5rem; }
}
@media screen and (max-width: 560px) {
  .dbs-rules-title-l { font-size: 1.6rem; }
  .dbs-rules .item { grid-template-columns: 1fr; gap: .5em; }
}


.dbs-contact .title { font-size: }

.dbs-contact .tel { margin: 1.5em 0 1em; font-weight: 600; }
.dbs-contact .tel img { width: 340px; max-width: 90%; display: block; margin-bottom: .5em; }
.dbs-contact .tel-for { font-size: 1.0625rem; font-weight: 600; }


@media screen and (max-width: 560px) {
  .dbs-contact .tel img { width: 260px; }
}
.title-dbs-page { text-align: center; font-weight: bold; font-size: 3rem; line-height: 1.5; }
.title-dbs-page span { color: var(--brand-red); display: block; font-size: .5em; }

@media screen and (max-width: 960px) {
  .title-dbs-page{ font-size: 2.5rem; }
  
}

@media screen and (max-width: 560px) {
  .title-dbs-page{ font-size: 2rem; }
  
}
.white-box.-dbs { background: var(--base-gray); }
.white-box.-dbs .inner { max-width: 900px; margin: 0 auto; }
@media screen and (max-width: 960px) {
  .white-box.-dbs { padding-block: 50px; }
}

.title-dbs-std { font-size: 2rem; font-weight: 600; margin-bottom: .5em; line-height: 1.7;  }
.title-dbs-std-s { font-size: 1.6rem; font-weight: bold; margin-bottom: .5em; }
.title-dbs-std-s.-red { color: var(--brand-red); } 
@media screen and (max-width: 960px) {
  .title-dbs-std { font-size: 1.5rem;}
  .title-dbs-std-s { font-size: 1.3rem;}
}
@media screen and (max-width: 560px) {
  .title-dbs-std { font-size: 1.3rem;}
  .title-dbs-std-s { font-size: 1.125rem;}
}

.dbs-form { font-size: 1.2rem; }
.dbs-form .lead { font-size: 1.25rem; font-weight: 600; margin-bottom: 3em; line-height: 2; }
.dbs-form .table-form { margin-bottom: 0; border-top: none; }
.dbs-form .table-form tr:last-of-type { border-bottom: none; }
.dbs-form .table-form th { padding: 2.25em  1em 0 0; vertical-align: top; }
.dbs-form .table-form td { padding: 1.5em 0; }
.dbs-form .contactform .must { background: var(--brand-red); width: 10px; height: 10px; display: inline-block; white-space: nowrap; overflow: hidden; text-indent: 100%; border-radius: 50%; }

@media screen and (max-width: 960px) {
  .dbs-form .table-form td { padding-top: 1em; }
}


.dbs-form .label { display: block; padding-right: 1em; position: relative; width: fit-content; }
.dbs-form .label .must { position: absolute; right: 0; top: .5em; margin: auto; }

.dbs-form label { cursor: pointer; }
.dbs-form input[type="text"] { background: #FFF; padding: 1em; border-radius: 4px;font-size: 1rem;  }
.dbs-form textarea { background: #FFF;padding: 1em; border-radius: 4px;font-size: 1rem;   }
.dbs-form .contactform input[type='checkbox'] + span:before,
.dbs-form .contactform input[type='radio'] + span:before  { background: #FFF; width: 1.3em; height: 1.3em; display: inline-block; border-radius: 50%; border: 5px solid #FFF; }
.dbs-form .contactform  input[type='checkbox']:checked + span:before,
.dbs-form .contactform input[type='radio']:checked + span:before  { background: #000; }

.dbs-form .contactform span.wpcf7-list-item { display: block; margin-right: 0;  }


.dbs-form .form-button input[type='submit'] { background: var(--brand-red); }


@media screen and (max-width: 960px) {
  .dbs-form .label br { display: none; }
}




.dbs-thanks-block { font-size: 1.15rem; font-weight: 600; line-height: 2; }
.dbs-lead { font-size: 1.25rem; margin-bottom: 3em;  }

.border-block.-t { border-top: 1px solid rgba(0,0,0,.2); padding-top: 2em; margin-top: 2em; }

@media screen and (max-width: 960px) {
  .dbs-thanks-block { font-size: 1rem; }
  .dbs-lead { font-size: 1rem; }
}



