/* CTA-05A only. Source photographs are clipped in CSS; all visible copy is HTML. */
:is(#main-contents #main-contents-inner.blog_contents, body) .teno-cta05 { container-type: inline-size; display: block; width: 100%; max-width: 1120px; margin: 32px auto; padding: 0; border: 0; background: #fff; color: #080808; font-family: "Noto Sans CJK JP", "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Yu Gothic", sans-serif; isolation: isolate; }
:is(#main-contents #main-contents-inner.blog_contents, body) .teno-cta05 *, :is(#main-contents #main-contents-inner.blog_contents, body) .teno-cta05 *::before, :is(#main-contents #main-contents-inner.blog_contents, body) .teno-cta05 *::after { box-sizing: border-box; }
:is(#main-contents #main-contents-inner.blog_contents, body) .teno-cta05 p, :is(#main-contents #main-contents-inner.blog_contents, body) .teno-cta05 span, :is(#main-contents #main-contents-inner.blog_contents, body) .teno-cta05 strong, :is(#main-contents #main-contents-inner.blog_contents, body) .teno-cta05 picture, :is(#main-contents #main-contents-inner.blog_contents, body) .teno-cta05 img, :is(#main-contents #main-contents-inner.blog_contents, body) .teno-cta05 a, :is(#main-contents #main-contents-inner.blog_contents, body) .teno-cta05 div { margin: 0; padding: 0; border: 0; letter-spacing: normal; text-indent: 0; background: none; box-shadow: none; }
:is(#main-contents #main-contents-inner.blog_contents, body) .teno-cta05 p::before, :is(#main-contents #main-contents-inner.blog_contents, body) .teno-cta05 p::after { content: none; }
:is(#main-contents #main-contents-inner.blog_contents, body) .teno-cta05 .teno-cta05__hero { position: relative; overflow: hidden; aspect-ratio: 1774 / 610; background: #fff; }
:is(#main-contents #main-contents-inner.blog_contents, body) .teno-cta05 .teno-cta05__photo { position: absolute; inset: 0; display: block; overflow: hidden; clip-path: polygon(67% 0, 100% 0, 100% 100%, 43% 100%, 48% 84%, 53% 67%, 57% 45%, 61% 24%); }
:is(#main-contents #main-contents-inner.blog_contents, body) .teno-cta05 .teno-cta05__photo img { display: block; width: 100%; max-width: none; height: auto; margin: 0; border-radius: 0; }
:is(#main-contents #main-contents-inner.blog_contents, body) .teno-cta05 .teno-cta05__copy { position: absolute; inset: 4.3% 0 0 3.8%; }
:is(#main-contents #main-contents-inner.blog_contents, body) .teno-cta05 .teno-cta05__label { font-size: 2cqw; font-weight: 800; line-height: 1.4; }
:is(#main-contents #main-contents-inner.blog_contents, body) .teno-cta05 .teno-cta05__label span { padding: 0 .15em; }
:is(#main-contents #main-contents-inner.blog_contents, body) .teno-cta05 .teno-cta05__catch { display: table; margin-top: 1.55cqw; padding: 0 0 .2cqw; border-bottom: .38cqw solid #650099; color: #650099; font-family: "Noto Serif CJK JP", "Yu Mincho", "Hiragino Mincho ProN", serif; font-size: 3.2cqw; font-weight: 900; font-style: italic; line-height: 1.3; white-space: nowrap; }
:is(#main-contents #main-contents-inner.blog_contents, body) .teno-cta05 .teno-cta05__headline { margin-top: 1.25cqw; font-family: "Noto Serif CJK JP", "Yu Mincho", "Hiragino Mincho ProN", serif; font-size: 5.8cqw; font-weight: 900; line-height: 1.16; white-space: nowrap; }
:is(#main-contents #main-contents-inner.blog_contents, body) .teno-cta05 .teno-cta05__headline > span { color: #985b00; font-size: 1.06em; }
:is(#main-contents #main-contents-inner.blog_contents, body) .teno-cta05 .teno-cta05__description { width: 46%; margin-top: 1.25cqw; padding-left: 1.6cqw; border-left: .45cqw solid #985b00; font-size: 1.82cqw; line-height: 1.47; font-weight: 500; overflow-wrap: anywhere; }
:is(#main-contents #main-contents-inner.blog_contents, body) .teno-cta05 .teno-cta05__description strong { color: #985b00; font-size: 1.13em; font-weight: 800; }
:is(#main-contents #main-contents-inner.blog_contents, body) .teno-cta05 .teno-cta05__sp-br, :is(#main-contents #main-contents-inner.blog_contents, body) .teno-cta05 .teno-cta05__sp-break { display: none; }
:is(#main-contents #main-contents-inner.blog_contents, body) .teno-cta05 .teno-cta05__features { display: flex; align-items: stretch; justify-content: space-between; gap: 3.9%; padding: .8cqw 9.4%; background: #fff4e4; }
:is(#main-contents #main-contents-inner.blog_contents, body) .teno-cta05 .teno-cta05__features > span { display: block; align-content: center; flex: 1 1 0; min-width: 0; align-items: center; justify-content: center; flex-direction: column; border-radius: 100px; padding: .3cqw .5cqw; background: #b48a4c; color: white; text-align: center; font-size: 2.25cqw; line-height: 1.12; font-weight: 600; }
:is(#main-contents #main-contents-inner.blog_contents, body) .teno-cta05 .teno-cta05__button, :is(#main-contents #main-contents-inner.blog_contents, body) .teno-cta05 .teno-cta05__button:link, :is(#main-contents #main-contents-inner.blog_contents, body) .teno-cta05 .teno-cta05__button:visited { display: flex; align-items: center; justify-content: space-between; gap: 2%; min-height: 4.25cqw; width: 100%; padding: .1cqw 4%; color: #fff; background: #ed6b00; font-family: "Noto Serif CJK JP", "Yu Mincho", "Hiragino Mincho ProN", serif; font-size: 3.8cqw; font-weight: 800; line-height: 1.25; text-decoration: none; border-radius: 0; transition: background-color .15s ease; }
:is(#main-contents #main-contents-inner.blog_contents, body) .teno-cta05 .teno-cta05__button > span:first-child { color: inherit; white-space: nowrap; }
:is(#main-contents #main-contents-inner.blog_contents, body) .teno-cta05 .teno-cta05__button:hover { background-color: #cf5c00; text-decoration: none; }
:is(#main-contents #main-contents-inner.blog_contents, body) .teno-cta05 .teno-cta05__button:focus-visible { outline: 3px solid #003f78; outline-offset: 4px; }
:is(#main-contents #main-contents-inner.blog_contents, body) .teno-cta05 .teno-cta05__arrow { position: relative; display: block; flex: 0 0 32%; height: .42cqw; background: #fff; }
:is(#main-contents #main-contents-inner.blog_contents, body) .teno-cta05 .teno-cta05__arrow::after { content: ""; position: absolute; right: 0; top: 50%; width: 1.8cqw; height: 1.8cqw; border-top: .42cqw solid #fff; border-right: .42cqw solid #fff; transform: translateY(-50%) rotate(45deg); }
:is(#main-contents #main-contents-inner.blog_contents, body) .teno-cta05 .teno-cta05__notes { padding: .6cqw 3%; background: #fff; }
:is(#main-contents #main-contents-inner.blog_contents, body) .teno-cta05 .teno-cta05__notes p { padding-left: 1.3em; text-indent: -1.3em; font-size: clamp(11px, 1.38cqw, 16px); line-height: 1.5; font-weight: 500; }
@media (max-width: 600px) {
  :is(#main-contents #main-contents-inner.blog_contents, body) .teno-cta05 { margin: 24px auto; }
  :is(#main-contents #main-contents-inner.blog_contents, body) .teno-cta05 .teno-cta05__hero { aspect-ratio: 1122 / 963; }
  :is(#main-contents #main-contents-inner.blog_contents, body) .teno-cta05 .teno-cta05__photo { clip-path: polygon(100% 22.1%, 100% 100%, 0 100%, 0 73%, 58% 73%, 58% 46%, 94% 46%, 94% 32%); }
  :is(#main-contents #main-contents-inner.blog_contents, body) .teno-cta05 .teno-cta05__copy { inset: 1.6% 0 0 4.3%; }
  :is(#main-contents #main-contents-inner.blog_contents, body) .teno-cta05 .teno-cta05__label { font-size: 3.8cqw; }
  :is(#main-contents #main-contents-inner.blog_contents, body) .teno-cta05 .teno-cta05__catch { margin-top: 1.7cqw; padding-bottom: .3cqw; border-bottom-width: .65cqw; font-size: 5.7cqw; }
  :is(#main-contents #main-contents-inner.blog_contents, body) .teno-cta05 .teno-cta05__headline { margin-top: 1.9cqw; font-size: 9.1cqw; line-height: 1.25; }
  :is(#main-contents #main-contents-inner.blog_contents, body) .teno-cta05 .teno-cta05__description { width: 57%; margin-top: 3cqw; padding-left: 2.4cqw; border-left-width: .8cqw; font-size: 3.5cqw; line-height: 1.42; }
  :is(#main-contents #main-contents-inner.blog_contents, body) .teno-cta05 .teno-cta05__description strong { font-size: 1.1em; }
  :is(#main-contents #main-contents-inner.blog_contents, body) .teno-cta05 .teno-cta05__pc-space { display: none; }
  :is(#main-contents #main-contents-inner.blog_contents, body) .teno-cta05 .teno-cta05__sp-br { display: initial; }
  :is(#main-contents #main-contents-inner.blog_contents, body) .teno-cta05 .teno-cta05__sp-break { display: block; }
  :is(#main-contents #main-contents-inner.blog_contents, body) .teno-cta05 .teno-cta05__features { gap: 1.6%; padding: 2cqw 3.5%; }
  :is(#main-contents #main-contents-inner.blog_contents, body) .teno-cta05 .teno-cta05__features > span { min-height: 10.4cqw; padding: .8cqw .2cqw; font-size: 3.65cqw; line-height: 1.15; }
  :is(#main-contents #main-contents-inner.blog_contents, body) .teno-cta05 .teno-cta05__button, :is(#main-contents #main-contents-inner.blog_contents, body) .teno-cta05 .teno-cta05__button:link, :is(#main-contents #main-contents-inner.blog_contents, body) .teno-cta05 .teno-cta05__button:visited { min-height: 10.5cqw; padding: .6cqw 5%; gap: 2%; font-size: 6.5cqw; }
  :is(#main-contents #main-contents-inner.blog_contents, body) .teno-cta05 .teno-cta05__arrow { flex-basis: 6.4%; height: .65cqw; }
  :is(#main-contents #main-contents-inner.blog_contents, body) .teno-cta05 .teno-cta05__arrow::after { width: 3.7cqw; height: 3.7cqw; border-width: .65cqw; }
  :is(#main-contents #main-contents-inner.blog_contents, body) .teno-cta05 .teno-cta05__notes { padding: 1.4cqw 3%; }
  :is(#main-contents #main-contents-inner.blog_contents, body) .teno-cta05 .teno-cta05__notes p { font-size: clamp(11px, 2.5cqw, 15px); line-height: 1.5; }
}
@media (prefers-reduced-motion: reduce) {
  :is(#main-contents #main-contents-inner.blog_contents, body) .teno-cta05 .teno-cta05__button { transition: none; }
}

/* CTA-05A readability correction: keep the copy in normal document flow. */
:is(#main-contents #main-contents-inner.blog_contents, body) .teno-cta05 .teno-cta05__hero {
  aspect-ratio: auto;
  min-height: 34.39cqw;
}
:is(#main-contents #main-contents-inner.blog_contents, body) .teno-cta05 .teno-cta05__photo {
  top: auto;
  bottom: 0;
  height: 34.39cqw;
  z-index: 0;
}
:is(#main-contents #main-contents-inner.blog_contents, body) .teno-cta05 .teno-cta05__copy {
  position: relative;
  inset: auto;
  z-index: 1;
  width: 100%;
  min-height: 34.39cqw;
  padding: 1.7cqw 3.8cqw 2.6cqw;
}
:is(#main-contents #main-contents-inner.blog_contents, body) .teno-cta05 .teno-cta05__headline {
  display: table;
  width: auto;
  max-width: 63%;
  margin-top: 1.2cqw;
  margin-left: -.18em;
  padding: .1em .18em;
  background: rgba(255, 255, 255, .65);
  color: #080808;
  font-size: 5.15cqw;
  line-height: 1.2;
  white-space: normal;
  overflow-wrap: normal;
}
:is(#main-contents #main-contents-inner.blog_contents, body) .teno-cta05 .teno-cta05__description {
  position: relative;
  width: 49%;
  max-width: 100%;
  height: auto;
  max-height: none;
  margin-top: 1.1cqw;
  padding: .5cqw 1.2cqw;
  background: rgba(255, 255, 255, .9);
  color: #111;
  font-size: 1.65cqw;
  line-height: 1.65;
  white-space: normal;
  overflow: visible;
}
@media (max-width: 600px) {
  :is(#main-contents #main-contents-inner.blog_contents, body) .teno-cta05 .teno-cta05__hero { min-height: 85.83cqw; }
  :is(#main-contents #main-contents-inner.blog_contents, body) .teno-cta05 .teno-cta05__photo { height: 85.83cqw; }
  :is(#main-contents #main-contents-inner.blog_contents, body) .teno-cta05 .teno-cta05__copy {
    min-height: 85.83cqw;
    padding: 1.6cqw 4.3cqw 4cqw;
  }
  :is(#main-contents #main-contents-inner.blog_contents, body) .teno-cta05 .teno-cta05__headline {
    max-width: 100%;
    margin-top: 1.8cqw;
    font-size: 8.2cqw;
    line-height: 1.25;
    background: rgba(255, 255, 255, .65);
  }
  :is(#main-contents #main-contents-inner.blog_contents, body) .teno-cta05 .teno-cta05__description {
    width: 62%;
    margin-top: 2.4cqw;
    padding: .8cqw 1.6cqw;
    font-size: 3.1cqw;
    line-height: 1.65;
  }
}

/* Seamless photograph boundary; no rectangular white panels over the blue. */
:is(#main-contents #main-contents-inner.blog_contents, body) .teno-cta05 .teno-cta05__photo {
  clip-path: none;
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20100%20100%22%20preserveAspectRatio%3D%22none%22%3E%3Cpath%20fill%3D%22white%22%20d%3D%22M67%200%20C58%2040%2058%2060%2043%20100%20H100%20V0%20Z%22%2F%3E%3C%2Fsvg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20100%20100%22%20preserveAspectRatio%3D%22none%22%3E%3Cpath%20fill%3D%22white%22%20d%3D%22M67%200%20C58%2040%2058%2060%2043%20100%20H100%20V0%20Z%22%2F%3E%3C%2Fsvg%3E");
  -webkit-mask-size: 100% 100%;
  mask-size: 100% 100%;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
}
:is(#main-contents #main-contents-inner.blog_contents, body) .teno-cta05 .teno-cta05__headline {
  background: transparent;
}
:is(#main-contents #main-contents-inner.blog_contents, body) .teno-cta05 .teno-cta05__description {
  width: 44%;
  background: transparent;
  font-size: 1.6cqw;
  line-height: 1.6;
}
@media (max-width: 600px) {
  :is(#main-contents #main-contents-inner.blog_contents, body) .teno-cta05 .teno-cta05__photo {
    -webkit-mask-image: none;
    mask-image: none;
    clip-path: polygon(100% 22.1%, 100% 100%, 0 100%, 0 73%, 58% 73%, 58% 46%, 94% 46%, 94% 32%);
  }
  :is(#main-contents #main-contents-inner.blog_contents, body) .teno-cta05 .teno-cta05__description {
    width: 58%;
    font-size: 3.1cqw;
    line-height: 1.65;
  }
}

/* SP: transparent copy backgrounds and a continuous photo mask. */
@media (max-width: 600px) {
  :is(#main-contents #main-contents-inner.blog_contents, body) .teno-cta05 .teno-cta05__copy,
  :is(#main-contents #main-contents-inner.blog_contents, body) .teno-cta05 .teno-cta05__label,
  :is(#main-contents #main-contents-inner.blog_contents, body) .teno-cta05 .teno-cta05__catch,
  :is(#main-contents #main-contents-inner.blog_contents, body) .teno-cta05 .teno-cta05__headline,
  :is(#main-contents #main-contents-inner.blog_contents, body) .teno-cta05 .teno-cta05__description {
    background: transparent;
  }
  :is(#main-contents #main-contents-inner.blog_contents, body) .teno-cta05 .teno-cta05__photo {
    clip-path: none;
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20100%20100%22%20preserveAspectRatio%3D%22none%22%3E%3Cpath%20fill%3D%22white%22%20d%3D%22M100%2022%20C98%2032%2095%2042%2090%2045%20C85%2047%2070%2044%2063%2046%20C58%2050%2060%2056%2059%2070%20C58%2073%2034%2073%2026%2076%20C18%2090%203%2092%200%20100%20H100%20Z%22%2F%3E%3C%2Fsvg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20100%20100%22%20preserveAspectRatio%3D%22none%22%3E%3Cpath%20fill%3D%22white%22%20d%3D%22M100%2022%20C98%2032%2095%2042%2090%2045%20C85%2047%2070%2044%2063%2046%20C58%2050%2060%2056%2059%2070%20C58%2073%2034%2073%2026%2076%20C18%2090%203%2092%200%20100%20H100%20Z%22%2F%3E%3C%2Fsvg%3E");
    -webkit-mask-size: 100% 100%;
    mask-size: 100% 100%;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
  }
}

/* SP: a separate continuous blue layer behind the clipped photograph. */
@media (max-width: 600px) {
  :is(#main-contents #main-contents-inner.blog_contents, body) .teno-cta05 .teno-cta05__hero::before {
    content: "";
    display: block;
    position: absolute;
    inset: auto 0 0;
    width: 100%;
    height: 85.83cqw;
    z-index: 0;
    pointer-events: none;
    background: linear-gradient(115deg, #00417d, #014584 60%, #01407b);
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20100%20100%22%20preserveAspectRatio%3D%22none%22%3E%3Cpath%20fill%3D%22white%22%20d%3D%22M100%2022%20C90%2050%2075%2065%2055%2075%20C35%2085%2012%2089%200%2098%20V100%20H100%20Z%22%2F%3E%3C%2Fsvg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20100%20100%22%20preserveAspectRatio%3D%22none%22%3E%3Cpath%20fill%3D%22white%22%20d%3D%22M100%2022%20C90%2050%2075%2065%2055%2075%20C35%2085%2012%2089%200%2098%20V100%20H100%20Z%22%2F%3E%3C%2Fsvg%3E");
    -webkit-mask-size: 100% 100%;
    mask-size: 100% 100%;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
  }
}

/* SP v5: use a clean photo asset; no cutout or synthetic background layers. */
@media (max-width: 600px) {
  :is(#main-contents #main-contents-inner.blog_contents, body) .teno-cta05 .teno-cta05__hero::before {
    content: none;
    display: none;
  }
  :is(#main-contents #main-contents-inner.blog_contents, body) .teno-cta05 .teno-cta05__photo {
    clip-path: none;
    -webkit-mask-image: none;
    mask-image: none;
    background: #fff url("../../images/cta05/cta05a-sp-clean-hq-v6.png") center bottom / 100% 100% no-repeat;
  }
  :is(#main-contents #main-contents-inner.blog_contents, body) .teno-cta05 .teno-cta05__photo img {
    visibility: hidden;
  }
  :is(#main-contents #main-contents-inner.blog_contents, body) .teno-cta05 .teno-cta05__copy,
  :is(#main-contents #main-contents-inner.blog_contents, body) .teno-cta05 .teno-cta05__headline,
  :is(#main-contents #main-contents-inner.blog_contents, body) .teno-cta05 .teno-cta05__description {
    background: transparent;
  }
}

/* CTA-05A v7: one native link for the complete creative, with the same hover. */
:is(#main-contents #main-contents-inner.blog_contents, body) a.teno-cta05__link,
:is(#main-contents #main-contents-inner.blog_contents, body) a.teno-cta05__link:link,
:is(#main-contents #main-contents-inner.blog_contents, body) a.teno-cta05__link:visited {
  display: block;
  width: 100%;
  max-width: 1120px;
  margin: 32px auto;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  color: inherit;
  text-decoration: none;
  cursor: pointer;
}
:is(#main-contents #main-contents-inner.blog_contents, body) a.teno-cta05__link::before,
:is(#main-contents #main-contents-inner.blog_contents, body) a.teno-cta05__link::after { content: none; }
:is(#main-contents #main-contents-inner.blog_contents, body) a.teno-cta05__link > .teno-cta05 {
  width: 100%;
  max-width: 100%;
  margin: 0;
}
:is(#main-contents #main-contents-inner.blog_contents, body) a.teno-cta05__link:hover { text-decoration: none; }
:is(#main-contents #main-contents-inner.blog_contents, body) a.teno-cta05__link:hover .teno-cta05__button {
  background-color: #cf5c00;
  color: #fff;
  text-decoration: none;
}
:is(#main-contents #main-contents-inner.blog_contents, body) a.teno-cta05__link:focus-visible {
  outline: 3px solid #003f78;
  outline-offset: 4px;
}
@media (max-width: 600px) {
  :is(#main-contents #main-contents-inner.blog_contents, body) a.teno-cta05__link { margin: 24px auto; }
}
