@font-face {
  font-family: 'DIN';
  src: url("/common/fonts/D-DIN/D-DIN-Bold.otf") format("opentype");
  font-weight: 700;
}

@font-face {
  font-family: 'DIN';
  src: url("/common/fonts/D-DIN/D-DIN.otf") format("opentype");
  font-weight: 400;
}

.company-inner {
  position: relative;
  z-index: 5;
}

.company-inner + .company-inner {
  margin-top: 40px;
}

@media only screen and (max-width: 767px) {
  .company-inner + .company-inner {
    margin-top: 52px;
  }
}

@media print, screen and (min-width: 768px) {
  .company-sub h1 {
    font-size: 36px;
  }
}

@media only screen and (max-width: 767px) {
  .company-sub h1 {
    font-size: 22px;
  }
}

.company-sub h2 {
  padding-left: 0;
  border-left: none;
  font-weight: bold;
}

@media print, screen and (min-width: 768px) {
  .company-sub h2 {
    font-size: 30px;
    margin-bottom: 20px;
  }
}

@media only screen and (max-width: 767px) {
  .company-sub h2 {
    font-size: 20px;
  }
}

.company-sub h3 {
  border-left: 3px solid #a2d827;
  font-weight: 400;
}

@media print, screen and (min-width: 768px) {
  .company-sub h3 {
    font-size: 27px;
    padding-left: 20px;
  }
}

@media only screen and (max-width: 767px) {
  .company-sub h3 {
    font-size: 19px;
    padding-left: 15px;
  }
}

.company-sub main {
  margin-top: 0 !important;
}

@media print, screen and (min-width: 768px) {
  .company-sub .container .company-text-main {
    margin-bottom: 50px;
  }
}

@media only screen and (max-width: 767px) {
  .company-sub .container .company-text-main {
    margin-bottom: 30px;
  }
}

.company-sub-headline {
  margin-bottom: 20px;
  background-color: #f2f6fb;
}

@media print, screen and (min-width: 768px) {
  .company-sub-headline {
    height: 325px;
  }
}

@media only screen and (max-width: 767px) {
  .company-sub-headline {
    height: 200px;
  }
}

.company-sub-headline .container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  height: 100%;
  background-color: #f2f6fb;
}

.company-sub-headline h1 {
  text-align: center;
}

@media print, screen and (min-width: 768px) {
  .company-sub-headline h1 {
    margin-top: 90px;
  }
}

@media only screen and (max-width: 767px) {
  .company-sub-headline h1 {
    margin-top: 55px;
  }
}

@media print, screen and (min-width: 768px) {
  .company-sub .company-inner {
    margin-top: 60px;
  }
}

@media print, screen and (min-width: 768px) {
  .company-sub .company-inner + .company-inner {
    margin-top: 80px;
  }
}

@media only screen and (max-width: 767px) {
  .company-sub .company-inner + .company-inner {
    margin-top: 40px;
  }
}

.company-sub .company-list-title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  line-height: 1.6;
}

@media print, screen and (min-width: 768px) {
  .company-sub .company-list-title {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    font-size: 20px;
    margin-bottom: 20px;
  }
}

@media only screen and (max-width: 767px) {
  .company-sub .company-list-title {
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    font-size: 17px;
    margin-bottom: 15px;
  }
}

@media print, screen and (min-width: 768px) {
  .company-sub .company-list-title p {
    width: 94px;
    height: 20px;
    margin-right: 12px;
  }
}

@media only screen and (max-width: 767px) {
  .company-sub .company-list-title p {
    width: 114px;
    height: 19px;
    margin-right: 28px;
  }
}

.company-sub .company-list-title img {
  display: block;
  width: 100%;
}

.company-sub .company-list-area-item {
  line-height: 1.6;
}

@media print, screen and (min-width: 768px) {
  .company-sub .company-list-area-item {
    font-size: 15px;
  }
}

@media only screen and (max-width: 767px) {
  .company-sub .company-list-area-item {
    font-size: 13px;
  }
}

.company-sub .company-list-area-item > dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.company-sub .company-list-area-item + .company-list-area-item .company-list-area-name, .company-sub .company-list-area-item + .company-list-area-item .company-list-area-content {
  border-top: none;
}

.company-sub .company-list-area-item:last-child .company-list-area-name {
  border-bottom: none;
  padding-bottom: 0;
}

.company-sub .company-list-area-item:last-child .company-list-area-content {
  border-bottom: none;
  padding-bottom: 0;
}

.company-sub .company-list-area-name {
  border-top: 1px solid #777;
  border-bottom: 1px solid #777;
  color: #142c4b;
  font-weight: bold;
}

@media print, screen and (min-width: 768px) {
  .company-sub .company-list-area-name {
    width: 240px;
    padding: 20px 0;
    font-size: 15px;
  }
}

@media only screen and (max-width: 767px) {
  .company-sub .company-list-area-name {
    width: 75px;
    padding: 15px 0;
  }
}

@media print, screen and (min-width: 768px) {
  .company-sub .company-list-area-name + .company-list-area-content {
    margin-left: 30px;
  }
}

@media only screen and (max-width: 767px) {
  .company-sub .company-list-area-name + .company-list-area-content {
    margin-left: 15px;
  }
}

.company-sub .company-list-area-content {
  border-top: 1px solid #d8d8d8;
  border-bottom: 1px solid #d8d8d8;
}

@media print, screen and (min-width: 768px) {
  .company-sub .company-list-area-content {
    width: calc(100% - 270px);
    padding: 20px 0;
  }
}

@media only screen and (max-width: 767px) {
  .company-sub .company-list-area-content {
    width: calc(100% - 90px);
    padding: 15px 0;
  }
}

.company-sub .company-list-area-content-date, .company-sub .company-list-area-content-place {
  font-size: 14px;
  font-weight: bold;
}

.company-sub .company-list-area-content dd + dt {
  margin-top: 20px;
}

@media print, screen and (min-width: 768px) {
  .company-sub .company-list-area + .company-list-title {
    margin-top: 50px;
  }
}

@media only screen and (max-width: 767px) {
  .company-sub .company-list-area + .company-list-title {
    margin-top: 40px;
  }
}

@media print, screen and (min-width: 768px) {
  .company-sub .company-list-area + .company-list-title p {
    width: 41px;
    height: 32px;
  }
}

@media only screen and (max-width: 767px) {
  .company-sub .company-list-area + .company-list-title p {
    width: auto;
    height: auto;
    margin-right: 31px;
  }
}

@media print, screen and (min-width: 768px) {
  .company-sub .company-btn-inner {
    margin-top: 50px;
  }
}

@media only screen and (max-width: 767px) {
  .company-sub .company-btn-inner {
    margin-top: 35px;
  }
}

.company-sub .company-btn-inner + .company-inner .sub-container {
  border-top: 1px solid #d8d8d8;
}

@media print, screen and (min-width: 768px) {
  .company-sub .company-btn-inner + .company-inner .sub-container {
    padding-top: 80px;
    margin-top: 80px;
  }
}

@media only screen and (max-width: 767px) {
  .company-sub .company-btn-inner + .company-inner .sub-container {
    padding-top: 40px;
    margin-top: 40px;
  }
}

.company-select-area {
  z-index: 6;
}
