/* features-th07-bnr.css — ベースライン(自動読込・module-base.css前提)。編集せず上書きで調整。 */
@charset "UTF-8";

@media (min-width: 768px) {
  .th07_bnr .th07_bnr_col01 {
    position: relative;
  }
  .th07_bnr .th07_bnr_col01 {
    height: 413px;
    background: #fff;
  }
  .th07_bnr .th07_bnr_col01 figure {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
  }
  .th07_bnr .th07_bnr_col01 .more {
    position: absolute;
    bottom: 1em;
    right: 1em;
    z-index: 1;
  }
  .th07_bnr .th07_bnr_col02 {
    position: relative;
  }
  .th07_bnr .th07_bnr_col02 > .row {
    position: absolute;
    left: 0;
    right: 0;
    margin: auto;
    background: #fff;
    min-height: 194px;
  }
  .th07_bnr .th07_bnr_col02 > .row .col {
    min-height: 194px;
  }
  .th07_bnr .th07_bnr_col02 > .row:nth-child(1) {
    top: 0;
  }
  .th07_bnr .th07_bnr_col02 > .row:nth-child(2) {
    bottom: 0;
  }
  .th07_bnr .th07_bnr_col02 .span_5 figure img {
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    height: 100%;
    width: 100%;
    object-fit: cover;
  }
  .th07_bnr .th07_bnr_col02 .span_5 figure {
    position: relative;
    height: 100%;
    overflow: hidden;
  }
  .th07_bnr .th07_bnr_col02 .span_5 figure img {
    position: absolute;
    top: -300%;
    bottom: -300%;
    left: -300%;
    right: -300%;
    margin: auto;
    height: 100%;
    max-width: none;
  }
  .th07_bnr .th07_bnr_pd {
    padding: 1em 1em 3em;
    position: relative;
    height: 100%;
  }
  .th07_bnr .more {
    position: absolute;
    bottom: 1em;
    right: 1em;
    z-index: 1;
  }
  .th07_bnr .more a {
    border-color: var(--color-primary);
    color: var(--color-on-primary);
    max-width: 100%;
    width: 160px;
    font-size: 0.875rem;
  }
  .th07_bnr .more a:after {
    border-color: var(--color-on-primary);
    right: 8%;
    transform-origin: bottom;
  }
  .th07_bnr .more a:hover {
    color: var(--color-text);
  }
  .th07_bnr .more a:hover:after {
    border-color: var(--color-text);
  }
}
@media (max-width: 767px) {
  .th07_bnr h3 {
    font-weight: bold;
  }
  .th07_bnr .th07_bnr_col01 {
    background: #fff;
  }
  .th07_bnr .th07_bnr_col01 .col {
    text-align: right;
  }
  .th07_bnr .th07_bnr_col01 .col .th07_bnr_pd {
    text-align: left;
  }
  .th07_bnr .th07_bnr_col02 > .row {
    background: #fff;
  }
  .th07_bnr .more a {
    font-size: 0.875rem;
  }
}
@media (max-width: 767px) and (max-width: 480px) {
  .th07_bnr .more a {
    width: 100%;
    max-width: none;
  }
}
@media (max-width: 767px) {
  .th07_bnr .more a:after {
    transform-origin: bottom;
  }
  .th07_bnr figure {
    padding-top: 5%;
  }
}
