@charset "UTF-8";
body:not(.is-loaded) .trigger + * {
  -webkit-transition: none !important;
  transition: none !important;
  -webkit-animation: none !important;
          animation: none !important;
}

.trigger.opa + * {
  opacity: 0;
}

body.is-loaded .trigger.opa.is-trigger + * {
  opacity: 1;
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: opacity, transform;
  transition-property: opacity, transform, -webkit-transform;
  -webkit-transition-duration: 2s;
          transition-duration: 2s;
  -webkit-transition-timing-function: ease;
          transition-timing-function: ease;
  -webkit-transition-delay: 0;
          transition-delay: 0;
}

.trigger.pop + * {
  opacity: 0;
  -webkit-transform: scale(0.25);
          transform: scale(0.25);
}

body.is-loaded .trigger.pop.is-trigger + * {
  opacity: 1;
  -webkit-transform: scale(1);
          transform: scale(1);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: opacity, transform;
  transition-property: opacity, transform, -webkit-transform;
  -webkit-transition-duration: 1s;
          transition-duration: 1s;
  -webkit-transition-timing-function: cubic-bezier(0.68, -0.55, 0.265, 1.55);
          transition-timing-function: cubic-bezier(0.68, -0.55, 0.265, 1.55);
  -webkit-transition-delay: 0s;
          transition-delay: 0s;
}

.trigger.fall + * {
  opacity: 0;
  -webkit-transform: scale(1.5);
          transform: scale(1.5);
}

body.is-loaded .trigger.fall.is-trigger + * {
  opacity: 1;
  -webkit-transform: scale(1);
          transform: scale(1);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: opacity, transform;
  transition-property: opacity, transform, -webkit-transform;
  -webkit-transition-duration: 1s;
          transition-duration: 1s;
  -webkit-transition-timing-function: ease;
          transition-timing-function: ease;
  -webkit-transition-delay: 0.1s;
          transition-delay: 0.1s;
}

.trigger.slideup + * {
  opacity: 0;
  -webkit-transform: translateY(1rem);
          transform: translateY(1rem);
}

body.is-loaded .trigger.slideup.is-trigger + * {
  opacity: 1;
  -webkit-transform: translateY(0);
          transform: translateY(0);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: opacity, transform;
  transition-property: opacity, transform, -webkit-transform;
  -webkit-transition-duration: 0.7s;
          transition-duration: 0.7s;
  -webkit-transition-timing-function: ease;
          transition-timing-function: ease;
  -webkit-transition-delay: 0s;
          transition-delay: 0s;
}

.trigger.slidedown + * {
  opacity: 0;
  -webkit-transform: translateY(-25%);
          transform: translateY(-25%);
}

body.is-loaded .trigger.slidedown.is-trigger + * {
  opacity: 1;
  -webkit-transform: translateY(0);
          transform: translateY(0);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: opacity, transform;
  transition-property: opacity, transform, -webkit-transform;
  -webkit-transition-duration: 0.7s;
          transition-duration: 0.7s;
  -webkit-transition-timing-function: ease;
          transition-timing-function: ease;
  -webkit-transition-delay: 0s;
          transition-delay: 0s;
}

.trigger.popup + * {
  opacity: 0;
  -webkit-transform: translateY(50%);
          transform: translateY(50%);
}

body.is-loaded .trigger.popup.is-trigger + * {
  opacity: 1;
  -webkit-transform: translateY(0);
          transform: translateY(0);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: opacity, transform;
  transition-property: opacity, transform, -webkit-transform;
  -webkit-transition-duration: 0.5s;
          transition-duration: 0.5s;
  -webkit-transition-timing-function: cubic-bezier(0.68, -0.55, 0.265, 1.55);
          transition-timing-function: cubic-bezier(0.68, -0.55, 0.265, 1.55);
  -webkit-transition-delay: 0.25s;
          transition-delay: 0.25s;
}

.trigger.bloom + * {
  opacity: 0;
  -webkit-transform: scale(0.9);
          transform: scale(0.9);
}

body.is-loaded .trigger.bloom.is-trigger + * {
  opacity: 1;
  -webkit-transform: scale(1);
          transform: scale(1);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: opacity, transform;
  transition-property: opacity, transform, -webkit-transform;
  -webkit-transition-duration: 3s;
          transition-duration: 3s;
  -webkit-transition-timing-function: ease;
          transition-timing-function: ease;
  -webkit-transition-delay: 0s;
          transition-delay: 0s;
}

.trigger.dur-03 + * {
  -webkit-transition-duration: 0s;
          transition-duration: 0s;
}

body.is-loaded .trigger.is-trigger.dur-03 + * {
  -webkit-transition-duration: 0.3s;
          transition-duration: 0.3s;
}

.trigger.dur-05 + * {
  -webkit-transition-duration: 0s;
          transition-duration: 0s;
}

body.is-loaded .trigger.is-trigger.dur-05 + * {
  -webkit-transition-duration: 0.5s;
          transition-duration: 0.5s;
}

.trigger.dur-07 + * {
  -webkit-transition-duration: 0s;
          transition-duration: 0s;
}

body.is-loaded .trigger.is-trigger.dur-07 + * {
  -webkit-transition-duration: 0.7s;
          transition-duration: 0.7s;
}

.trigger.dur-1 + * {
  -webkit-transition-duration: 0s;
          transition-duration: 0s;
}

body.is-loaded .trigger.is-trigger.dur-1 + * {
  -webkit-transition-duration: 1s;
          transition-duration: 1s;
}

.trigger.dur-2 + * {
  -webkit-transition-duration: 0s;
          transition-duration: 0s;
}

body.is-loaded .trigger.is-trigger.dur-2 + * {
  -webkit-transition-duration: 2s;
          transition-duration: 2s;
}

.trigger.dur-3 + * {
  -webkit-transition-duration: 0s;
          transition-duration: 0s;
}

body.is-loaded .trigger.is-trigger.dur-3 + * {
  -webkit-transition-duration: 3s;
          transition-duration: 3s;
}

.trigger.dur-4 + * {
  -webkit-transition-duration: 0s;
          transition-duration: 0s;
}

body.is-loaded .trigger.is-trigger.dur-4 + * {
  -webkit-transition-duration: 4s;
          transition-duration: 4s;
}

.trigger.dur-5 + * {
  -webkit-transition-duration: 0s;
          transition-duration: 0s;
}

body.is-loaded .trigger.is-trigger.dur-5 + * {
  -webkit-transition-duration: 5s;
          transition-duration: 5s;
}

.trigger.dly-01 + * {
  -webkit-transition-delay: 0s;
          transition-delay: 0s;
}

body.is-loaded .trigger.is-trigger.dly-01 + * {
  -webkit-transition-delay: 0.1s;
          transition-delay: 0.1s;
}

.trigger.dly-02 + * {
  -webkit-transition-delay: 0s;
          transition-delay: 0s;
}

body.is-loaded .trigger.is-trigger.dly-02 + * {
  -webkit-transition-delay: 0.2s;
          transition-delay: 0.2s;
}

.trigger.dly-03 + * {
  -webkit-transition-delay: 0s;
          transition-delay: 0s;
}

body.is-loaded .trigger.is-trigger.dly-03 + * {
  -webkit-transition-delay: 0.3s;
          transition-delay: 0.3s;
}

.trigger.dly-04 + * {
  -webkit-transition-delay: 0s;
          transition-delay: 0s;
}

body.is-loaded .trigger.is-trigger.dly-04 + * {
  -webkit-transition-delay: 0.4s;
          transition-delay: 0.4s;
}

.trigger.dly-05 + * {
  -webkit-transition-delay: 0s;
          transition-delay: 0s;
}

body.is-loaded .trigger.is-trigger.dly-05 + * {
  -webkit-transition-delay: 0.5s;
          transition-delay: 0.5s;
}

.trigger.dly-06 + * {
  -webkit-transition-delay: 0s;
          transition-delay: 0s;
}

body.is-loaded .trigger.is-trigger.dly-06 + * {
  -webkit-transition-delay: 0.6s;
          transition-delay: 0.6s;
}

.trigger.dly-07 + * {
  -webkit-transition-delay: 0s;
          transition-delay: 0s;
}

body.is-loaded .trigger.is-trigger.dly-07 + * {
  -webkit-transition-delay: 0.7s;
          transition-delay: 0.7s;
}

.trigger.dly-08 + * {
  -webkit-transition-delay: 0s;
          transition-delay: 0s;
}

body.is-loaded .trigger.is-trigger.dly-08 + * {
  -webkit-transition-delay: 0.8s;
          transition-delay: 0.8s;
}

.trigger.dly-09 + * {
  -webkit-transition-delay: 0s;
          transition-delay: 0s;
}

body.is-loaded .trigger.is-trigger.dly-09 + * {
  -webkit-transition-delay: 0.9s;
          transition-delay: 0.9s;
}

.trigger.dly-1 + * {
  -webkit-transition-delay: 0s;
          transition-delay: 0s;
}

body.is-loaded .trigger.is-trigger.dly-1 + * {
  -webkit-transition-delay: 1s;
          transition-delay: 1s;
}

.trigger.dly-11 + * {
  -webkit-transition-delay: 0s;
          transition-delay: 0s;
}

body.is-loaded .trigger.is-trigger.dly-11 + * {
  -webkit-transition-delay: 1.1s;
          transition-delay: 1.1s;
}

.trigger.dly-12 + * {
  -webkit-transition-delay: 0s;
          transition-delay: 0s;
}

body.is-loaded .trigger.is-trigger.dly-12 + * {
  -webkit-transition-delay: 1.2s;
          transition-delay: 1.2s;
}

/*all*/
.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  border: 0;
  white-space: nowrap;
  clip: rect(0, 0, 0, 0);
}

main *,
main *::before,
main *::after {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

html {
  background-color: #fff;
  background-image: url(../img/bg.svg);
  background-size: 100px auto;
  background-repeat: repeat;
  background-position: center;
  color: #231814;
  font-size: 4vmin;
  font-family: "BIZ UDPGothic", sans-serif;
  font-weight: 400;
  font-style: normal;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
}
@media screen and (min-width: 1025px) {
  html {
    font-size: 20px;
  }
}
html.smooth {
  scroll-behavior: smooth;
}

body {
  position: relative;
}

.body__wrap {
  opacity: 0;
}

body.is-page-show .body__wrap {
  -webkit-animation: op 0.5s ease 0.5s both;
          animation: op 0.5s ease 0.5s both;
}

@-webkit-keyframes op {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

@keyframes op {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
.fixed.in, .fixed.open {
  -webkit-transform: revert;
          transform: revert;
}
.fixed-insta {
  display: block;
  position: fixed;
  top: 1rem;
  right: 1rem;
  z-index: 20;
  -webkit-transform: translateX(calc(100% + 2rem));
          transform: translateX(calc(100% + 2rem));
  width: 3.5rem;
  border-radius: 100vh;
  background-image: url(https://www.ctv.co.jp/assets/svgs/sns/instagram-w.svg);
  background-position: center;
  background-size: 60% auto;
  background-repeat: no-repeat;
  background-color: #ff0069;
  -webkit-transition: 0.5s ease-in-out 0s;
  transition: 0.5s ease-in-out 0s;
  aspect-ratio: 1/1;
}
.fixed-insta::before {
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  width: 100%;
  height: 100%;
  border-radius: 100vh;
  background-color: #ff0069;
  content: "";
  -webkit-animation: wave 1.5s ease infinite both;
          animation: wave 1.5s ease infinite both;
}
.fixed-insta:hover {
  -webkit-filter: brightness(1.2);
          filter: brightness(1.2);
}
@-webkit-keyframes wave {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
    -webkit-transform: scale(1.25);
            transform: scale(1.25);
  }
}
@keyframes wave {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
    -webkit-transform: scale(1.25);
            transform: scale(1.25);
  }
}

main,
footer {
  overflow-x: clip;
}

@media screen and (min-width: 1025px) {
  .sp {
    display: none;
  }
}

.pc {
  display: none;
}
@media screen and (min-width: 1025px) {
  .pc {
    display: revert;
  }
}

h2 {
  text-align: center;
  letter-spacing: -1em;
  font-size: 2rem;
  margin: 1em auto;
}
h2 .circle {
  display: inline-block;
  letter-spacing: 0;
  aspect-ratio: 1/1;
  border-radius: 100vh;
  background-color: #46c1af;
  width: 1.5em;
  position: relative;
  z-index: 0;
  margin: 0 0.1em;
  color: #ffffff;
  font-weight: bold;
}
h2 .circle .inner {
  position: absolute;
  left: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}

.trigger + h2 .circle {
  opacity: 0;
  -webkit-transform: scale(2);
          transform: scale(2);
}

.is-trigger + h2 .circle:nth-child(1) {
  opacity: 1;
  -webkit-transform: scale(1);
          transform: scale(1);
  -webkit-transition: 0.5s ease 0.1s;
  transition: 0.5s ease 0.1s;
}
.is-trigger + h2 .circle:nth-child(2) {
  opacity: 1;
  -webkit-transform: scale(1);
          transform: scale(1);
  -webkit-transition: 0.5s ease 0.2s;
  transition: 0.5s ease 0.2s;
}
.is-trigger + h2 .circle:nth-child(3) {
  opacity: 1;
  -webkit-transform: scale(1);
          transform: scale(1);
  -webkit-transition: 0.5s ease 0.3s;
  transition: 0.5s ease 0.3s;
}
.is-trigger + h2 .circle:nth-child(4) {
  opacity: 1;
  -webkit-transform: scale(1);
          transform: scale(1);
  -webkit-transition: 0.5s ease 0.4s;
  transition: 0.5s ease 0.4s;
}
.is-trigger + h2 .circle:nth-child(5) {
  opacity: 1;
  -webkit-transform: scale(1);
          transform: scale(1);
  -webkit-transition: 0.5s ease 0.5s;
  transition: 0.5s ease 0.5s;
}
.is-trigger + h2 .circle:nth-child(6) {
  opacity: 1;
  -webkit-transform: scale(1);
          transform: scale(1);
  -webkit-transition: 0.5s ease 0.6s;
  transition: 0.5s ease 0.6s;
}
.is-trigger + h2 .circle:nth-child(7) {
  opacity: 1;
  -webkit-transform: scale(1);
          transform: scale(1);
  -webkit-transition: 0.5s ease 0.7s;
  transition: 0.5s ease 0.7s;
}
.is-trigger + h2 .circle:nth-child(8) {
  opacity: 1;
  -webkit-transform: scale(1);
          transform: scale(1);
  -webkit-transition: 0.5s ease 0.8s;
  transition: 0.5s ease 0.8s;
}
.is-trigger + h2 .circle:nth-child(9) {
  opacity: 1;
  -webkit-transform: scale(1);
          transform: scale(1);
  -webkit-transition: 0.5s ease 0.9s;
  transition: 0.5s ease 0.9s;
}
.is-trigger + h2 .circle:nth-child(10) {
  opacity: 1;
  -webkit-transform: scale(1);
          transform: scale(1);
  -webkit-transition: 0.5s ease 1.1s;
  transition: 0.5s ease 1.1s;
}
.is-trigger + h2 .circle:nth-child(11) {
  opacity: 1;
  -webkit-transform: scale(1);
          transform: scale(1);
  -webkit-transition: 0.5s ease 1.2s;
  transition: 0.5s ease 1.2s;
}
.is-trigger + h2 .circle:nth-child(12) {
  opacity: 1;
  -webkit-transform: scale(1);
          transform: scale(1);
  -webkit-transition: 0.5s ease 1.3s;
  transition: 0.5s ease 1.3s;
}
.is-trigger + h2 .circle:nth-child(13) {
  opacity: 1;
  -webkit-transform: scale(1);
          transform: scale(1);
  -webkit-transition: 0.5s ease 1.4s;
  transition: 0.5s ease 1.4s;
}
.is-trigger + h2 .circle:nth-child(14) {
  opacity: 1;
  -webkit-transform: scale(1);
          transform: scale(1);
  -webkit-transition: 0.5s ease 1.5s;
  transition: 0.5s ease 1.5s;
}
.is-trigger + h2 .circle:nth-child(15) {
  opacity: 1;
  -webkit-transform: scale(1);
          transform: scale(1);
  -webkit-transition: 0.5s ease 1.6s;
  transition: 0.5s ease 1.6s;
}
.is-trigger + h2 .circle:nth-child(16) {
  opacity: 1;
  -webkit-transform: scale(1);
          transform: scale(1);
  -webkit-transition: 0.5s ease 1.7s;
  transition: 0.5s ease 1.7s;
}
.is-trigger + h2 .circle:nth-child(17) {
  opacity: 1;
  -webkit-transform: scale(1);
          transform: scale(1);
  -webkit-transition: 0.5s ease 1.8s;
  transition: 0.5s ease 1.8s;
}
.is-trigger + h2 .circle:nth-child(18) {
  opacity: 1;
  -webkit-transform: scale(1);
          transform: scale(1);
  -webkit-transition: 0.5s ease 1.9s;
  transition: 0.5s ease 1.9s;
}
.is-trigger + h2 .circle:nth-child(19) {
  opacity: 1;
  -webkit-transform: scale(1);
          transform: scale(1);
  -webkit-transition: 0.5s ease 2s;
  transition: 0.5s ease 2s;
}

.box {
  background-color: #ffffff;
  padding: 1rem;
  border-radius: 1rem;
  width: calc(100% - 2rem);
  max-width: 1000px;
  margin: 0 auto;
}

h3 {
  color: #e64f6d;
  text-align: center;
  padding: 0 0 0.5em;
  margin: 1em auto;
  position: relative;
  z-index: 0;
  font-weight: bold;
  letter-spacing: 0.1em;
  font-size: 1.5rem;
}
h3::after {
  position: absolute;
  opacity: 0.2;
  content: "";
  left: 50%;
  top: 100%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: calc(100% - 4rem);
  max-width: 400px;
  height: 0.1em;
  border-radius: 100vh;
  background-color: #231814;
  z-index: 1;
}

ul.center {
  display: inline-block;
  position: relative;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}

li {
  line-height: 1.6;
  margin: 0 auto 0.5em;
}
li:last-child {
  margin: 0 auto;
}
li.dot {
  padding-left: 1.25em;
  position: relative;
}
li.dot::before {
  content: "・";
  position: absolute;
  -webkit-transform: scale(1.4);
          transform: scale(1.4);
  left: 0;
  top: 0;
}
li.kome {
  padding-left: 1.25em;
  position: relative;
}
li.kome::before {
  content: "※";
  position: absolute;
  -webkit-transform: scale(0.8);
          transform: scale(0.8);
  color: #ff3caf;
  left: 0;
  top: 0;
}
li.space {
  padding-left: 1.5em;
  position: relative;
}

header {
  background-color: #ffffff;
}

.title {
  width: 100%;
}
.title__pic {
  width: 100%;
  aspect-ratio: 1/1.2;
}
@media screen and (min-width: 1025px) {
  .title__pic {
    aspect-ratio: 3/1;
  }
}
.title__pic img {
  width: 100%;
}

.topinfo {
  background-color: #f9b62b;
  padding: 0.5em 0;
  font-size: 1.3rem;
}
.topinfo__wrap {
  border-top: dashed 0.2em #f9ee04;
  border-bottom: dashed 0.2em #f9ee04;
  padding: 0.75em 0;
  text-align: center;
}
.topinfo__wrap > * {
  display: inline-block;
  margin: 0 0 0.5em;
  line-height: 1.8;
  color: #231814;
  font-weight: bold;
}
.topinfo__wrap > *:last-child {
  margin: 0;
}
@media screen and (min-width: 1025px) {
  .topinfo__wrap > * {
    margin: 0 1em 0 0;
  }
}

.day {
  position: relative;
  color: #ffffff;
  z-index: 0;
  margin: 0 0.5em;
  font-size: 0.8em;
  bottom: 0.15em;
}
.day::before {
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  aspect-ratio: 1/1;
  width: 1.5em;
  border-radius: 100vh;
  z-index: -1;
}
.day.sat::before {
  background-color: #0092ff;
}

.about p {
  font-size: 1.2rem;
  margin: 1rem auto;
  text-align: center;
  line-height: 1.8;
}

.outline p {
  text-align: center;
  line-height: 1.6;
}
.outline .snslink {
  display: inline-block;
  background-color: #f9d4e2;
  padding: 1rem;
  border-radius: 0.5rem;
}
.outline .snslink .btn--insta {
  text-align: center;
  margin: 2rem auto 1rem;
}
.outline .snslink .btn--insta a {
  background-color: #ff0069;
  color: #ffffff;
  padding: 1em 2em 1em 4em;
  text-box: trim-both cap alphabetic;
  -webkit-box-decoration-break: clone;
          box-decoration-break: clone;
  border-radius: 100vh;
  position: relative;
  z-index: 1;
}
.outline .snslink .btn--insta a:hover {
  -webkit-filter: brightness(0.8);
          filter: brightness(0.8);
}
.outline .snslink .btn--insta a .inner {
  position: relative;
}
.outline .snslink .btn--insta a .inner::before {
  position: absolute;
  content: "";
  right: calc(100% + 0.5em);
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 2em;
  aspect-ratio: 1/1;
  background-image: url(https://www.ctv.co.jp/assets/svgs/sns/instagram-w.svg);
  background-size: 90% auto;
  background-position: center;
  background-repeat: no-repeat;
}

.cast__flex {
  max-width: 800px;
  margin: 0 auto;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  gap: 2rem;
}
.cast__item {
  width: calc(100% - 6rem);
  margin: 0 auto;
}
@media screen and (min-width: 1025px) {
  .cast__item {
    width: calc((100% - 2rem) / 2);
    margin: 0;
  }
}
.cast__item:has(.baloon) {
  position: relative;
}
.cast__item .baloon {
  position: absolute;
  padding: 0.5em 1em;
  border-radius: 100vh;
  color: #ffffff;
  font-weight: bold;
  background-color: #e64f6d;
  inset: 1em 0 auto auto;
}
.cast__item .baloon::after {
  position: absolute;
  content: "";
  inset: calc(100% - 1px) 50% auto auto;
  aspect-ratio: 1/1;
  background-color: #e64f6d;
  width: 1em;
  -webkit-clip-path: polygon(10% 0, 100% 0, 0 100%);
          clip-path: polygon(10% 0, 100% 0, 0 100%);
}
.cast__pic {
  width: 80%;
  margin: 0 auto;
  aspect-ratio: 1/1;
  border-radius: 100vh;
  background-color: #ffffff;
  overflow: clip;
}
.cast__pic.blue {
  border: solid 5px #007fff;
}
.cast__pic.lightblue {
  border: solid 5px #00c1fc;
}
.cast__pic.lightpink {
  border: solid 5px #ff879f;
}
.cast__pic.pink {
  border: solid 5px #ff3caf;
}
.cast__pic img {
  width: 100%;
}
.cast__name {
  margin: 1rem auto 0;
  font-size: 1.4rem;
  border-radius: 1rem;
  background-color: #ffffff;
  text-align: center;
  line-height: 1.2;
  padding: 0.75em 0;
}
.cast__name.blue {
  -webkit-filter: drop-shadow(5px 10px 0 #007fff);
          filter: drop-shadow(5px 10px 0 #007fff);
}
.cast__name.lightblue {
  -webkit-filter: drop-shadow(5px 10px 0 #00c1fc);
          filter: drop-shadow(5px 10px 0 #00c1fc);
}
.cast__name.lightpink {
  -webkit-filter: drop-shadow(5px 10px 0 #ff879f);
          filter: drop-shadow(5px 10px 0 #ff879f);
}
.cast__name.pink {
  -webkit-filter: drop-shadow(5px 10px 0 #ff3caf);
          filter: drop-shadow(5px 10px 0 #ff3caf);
}
.cast__name:has(.icon--insta) {
  padding: 0.75em 0.75em 0.75em 0;
}
.cast__name .icon--insta {
  position: absolute;
  right: 0.75em;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  display: block;
  background-color: #ff0069;
  border-radius: 100vh;
  text-align: center;
  width: 1.75em;
  aspect-ratio: 1/1;
  background-image: url(https://www.ctv.co.jp/assets/svgs/sns/instagram-w.svg);
  background-size: 60% auto;
  background-position: center;
  background-repeat: no-repeat;
}
.cast__name .icon--insta:hover {
  -webkit-filter: brightness(1.5);
          filter: brightness(1.5);
}

.entry p {
  text-align: center;
  line-height: 1.6;
}
.entry__btn {
  text-align: center;
  margin: 0 auto;
  font-size: 1.6rem;
}
.entry__btn a {
  display: inline-block;
  padding: 0.75em 1em;
  text-box: trim-both cap alphabetic;
  -webkit-box-decoration-break: clone;
          box-decoration-break: clone;
  background-color: crimson;
  color: #ffffff;
  border-radius: 100vh;
  z-index: 0;
  position: relative;
  border: solid 2px crimson;
  font-weight: bold;
  letter-spacing: 0.05em;
}
.entry__btn a::before {
  position: absolute;
  content: "";
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-color: crimson;
  border-radius: 100vh;
  z-index: -1;
  -webkit-animation: btn 1s ease 0s both infinite;
          animation: btn 1s ease 0s both infinite;
}
@-webkit-keyframes btn {
  100% {
    opacity: 0;
    -webkit-transform: scale(1.1);
            transform: scale(1.1);
  }
}
@keyframes btn {
  100% {
    opacity: 0;
    -webkit-transform: scale(1.1);
            transform: scale(1.1);
  }
}
.entry__btn a:hover {
  background-color: #ffffff;
  color: crimson;
}
.entry__btn a:hover::before {
  display: none;
  -webkit-animation: none;
          animation: none;
}

.contact p {
  line-height: 1.6;
  text-align: center;
}
.contact__btn {
  text-align: center;
}
.contact__btn a {
  display: inline-block;
  padding: 0.75em 2em;
  background-color: #007fff;
  color: #ffffff;
  border-radius: 100vh;
  line-height: 1.2;
  border: solid 2px #007fff;
}
.contact__btn a:hover {
  background-color: #ffffff;
  color: #007fff;
}
.contact__wrap {
  padding: 0 1rem;
}

.link__banner {
  text-align: center;
}
.link__banner a {
  display: block;
  width: calc(100% - 2rem);
  max-width: 700px;
  margin: 0 auto;
  aspect-ratio: 3/1;
}
.link__banner a:hover {
  opacity: 0.75;
}
.link__banner a img {
  width: 100%;
}

#footer {
  position: relative;
}

.share {
  padding: 0 0 2rem;
}

.share-title {
  display: inline-block;
  position: relative;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: auto;
  padding: 1em;
  background-color: #46c1af;
  color: #ffffff;
  line-height: 1;
  text-box: trim-both cap alphabetic;
  -webkit-box-decoration-break: clone;
          box-decoration-break: clone;
}
.share-title::after {
  border-top: solid 0.5em #46c1af;
}

.share-item {
  width: 2rem;
}

.footer-txt {
  padding: 1rem 0 2rem;
  text-align: center;
}
.footer-txt * {
  font-weight: bold;
  line-height: 2;
  color: #46c1af;
}

.fs-06 {
  font-size: 0.6em;
}

.fs-07 {
  font-size: 0.7em;
}

.fs-08 {
  font-size: 0.8em;
}

.fs-09 {
  font-size: 0.9em;
}

.fs-11 {
  font-size: 1.1em;
}

.fs-12 {
  font-size: 1.2em;
}

.fs-13 {
  font-size: 1.3em;
}

.fs-14 {
  font-size: 1.4em;
}

.fs-15 {
  font-size: 1.5em;
}

.fs-16 {
  font-size: 1.6em;
}

.fs-20 {
  font-size: 2em;
}

.fs-21 {
  font-size: 2.1em;
}

.fs-22 {
  font-size: 2.2em;
}

.fs-23 {
  font-size: 2.3em;
}

.fs-24 {
  font-size: 2.4em;
}

.fs-25 {
  font-size: 2.5em;
}

.fs-26 {
  font-size: 2.6em;
}

.fs-28 {
  font-size: 2.8em;
}

.fs-30 {
  font-size: 3em;
}

.al-c {
  text-align: center;
}

.sc-08 {
  display: inline-block;
  -webkit-transform: scale(0.8);
          transform: scale(0.8);
}

.opa-00 {
  opacity: 0;
}

.opa-06 {
  opacity: 0.6;
}

.fw-b {
  font-weight: bold;
}

.mar-01 {
  margin: 0 0.1em;
}

.c-black {
  color: #231814;
}

.c-white {
  color: #ffffff;
}

.c-teal {
  color: #46c1af;
}

.c-pink {
  color: #ff3caf;
}

.c-lightpink {
  color: #ff879f;
}

.c-blue {
  color: #007fff;
}

.c-lightblue {
  color: #00c1fc;
}

.c-yellow {
  color: #f9ee04;
}

.c-orange {
  color: #f9b62b;
}

.c-sat {
  color: #0092ff;
}

.dark {
  -webkit-filter: brightness(0.5);
          filter: brightness(0.5);
}

.marker {
  text-decoration: underline;
  text-underline-offset: -1.075em;
  text-decoration-thickness: 1.4em;
  -webkit-text-decoration-skip-ink: none;
          text-decoration-skip-ink: none;
  -webkit-text-decoration-color: #231814;
          text-decoration-color: #231814;
}
.marker.white {
  -webkit-text-decoration-color: #ffffff;
          text-decoration-color: #ffffff;
}
.marker.teal {
  -webkit-text-decoration-color: #46c1af;
          text-decoration-color: #46c1af;
}
.marker.pink {
  -webkit-text-decoration-color: #ff3caf;
          text-decoration-color: #ff3caf;
}
.marker.lightpink {
  -webkit-text-decoration-color: #ff879f;
          text-decoration-color: #ff879f;
}
.marker.deeppink {
  -webkit-text-decoration-color: #e64f6d;
          text-decoration-color: #e64f6d;
}
.marker.blue {
  -webkit-text-decoration-color: #007fff;
          text-decoration-color: #007fff;
}
.marker.lightblue {
  -webkit-text-decoration-color: #00c1fc;
          text-decoration-color: #00c1fc;
}
.marker.yellow {
  -webkit-text-decoration-color: #f9ee04;
          text-decoration-color: #f9ee04;
}
.marker.orange {
  -webkit-text-decoration-color: #f9b62b;
          text-decoration-color: #f9b62b;
}

.under {
  text-decoration: underline;
  text-underline-offset: 0.3em;
  text-decoration-thickness: 0.1em;
  -webkit-text-decoration-skip-ink: none;
          text-decoration-skip-ink: none;
  -webkit-text-decoration-color: #231814;
          text-decoration-color: #231814;
}
.under.white {
  -webkit-text-decoration-color: #ffffff;
          text-decoration-color: #ffffff;
}
.under.teal {
  -webkit-text-decoration-color: #46c1af;
          text-decoration-color: #46c1af;
}
.under.pink {
  -webkit-text-decoration-color: #ff3caf;
          text-decoration-color: #ff3caf;
}
.under.lightpink {
  -webkit-text-decoration-color: #ff879f;
          text-decoration-color: #ff879f;
}
.under.deeppink {
  -webkit-text-decoration-color: #e64f6d;
          text-decoration-color: #e64f6d;
}
.under.blue {
  -webkit-text-decoration-color: #007fff;
          text-decoration-color: #007fff;
}
.under.lightblue {
  -webkit-text-decoration-color: #00c1fc;
          text-decoration-color: #00c1fc;
}
.under.yellow {
  -webkit-text-decoration-color: #f9ee04;
          text-decoration-color: #f9ee04;
}
.under.orange {
  -webkit-text-decoration-color: #f9b62b;
          text-decoration-color: #f9b62b;
}

.spacer-005 {
  padding-top: 0.5rem;
}

.spacer-01 {
  padding-top: 1rem;
}

.spacer-02 {
  padding-top: 2rem;
}

.spacer-03 {
  padding-top: 3rem;
}

.spacer-04 {
  padding-top: 4rem;
}

.spacer-05 {
  padding-top: 5rem;
}

.spacer-06 {
  padding-top: 6rem;
}

.spacer-07 {
  padding-top: 7rem;
}

.spacer-08 {
  padding-top: 8rem;
}

.spacer-09 {
  padding-top: 9rem;
}

.spacer-10 {
  padding-top: 10rem;
}

.clip {
  -webkit-clip-path: inset(0);
          clip-path: inset(0);
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  width: 100%;
  height: 100%;
}
*:has(> .clip) {
  position: relative;
}
.clip div {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1;
  width: 100%;
  height: 100vh;
  height: 100lvh;
}
.clip .bg-flower {
  background-image: url(../img/bg-flower.svg);
  background-position: center center;
  background-size: 200px auto;
  background-repeat: repeat;
}

.deco {
  position: absolute;
  z-index: 10;
  pointer-events: none;
  aspect-ratio: 1/1;
}
.deco img {
  width: 100%;
}
*:has(> .deco) {
  position: relative;
}/*# sourceMappingURL=style.css.map */