@charset "UTF-8";
@media screen and (width <= 767px) {
  .pc {
    display: none !important;
  }
}

@media screen and (width >= 768px) {
  .sp {
    display: none !important;
  }
}

img {
  width: 100%;
}

body {
  position: relative;
  overflow-x: hidden;
}
@media screen and (width >= 768px) {
  body {
    background-color: #9cc813;
  }
}
@media screen and (width <= 767px) {
  body {
    background-color: #fefef4;
  }
}

.kv {
  position: relative;
  z-index: 1000;
}

@media screen and (width <= 767px) {
  .bg-pattern {
    display: none;
  }
}
@media screen and (width >= 768px) {
  .bg-pattern {
    position: absolute;
    top: 0;
    left: calc(-223 / 1920 * 100vw);
    width: calc(2256.56 / 1920 * 100vw);
    height: 100%;
    background-image: url("./images/pc/bg-pattern.svg");
    background-repeat: repeat-y;
    background-size: 100% calc(1834.01 / 1920 * 100vw);
    pointer-events: none;
  }
}

.wrapper {
  position: relative;
  display: flex;
  flex-direction: column;
  background-color: #fefef4;
  overflow: hidden;
}
@media screen and (width >= 768px) {
  .wrapper {
    width: calc(1520 / 1920 * 100vw);
    margin: 0 auto;
    border-radius: 0 0 calc(50 / 1920 * 100vw) calc(50 / 1920 * 100vw);
  }
}

@media screen and (width >= 768px) {
  .catch {
    width: calc(998 / 1920 * 100vw);
    margin: 0 auto;
  }
}

.about {
  display: flex;
  flex-direction: column;
  align-items: center;
}
@media screen and (width >= 768px) {
  .about {
    width: calc(950 / 1920 * 100vw);
    margin: 0 auto;
    padding-top: calc(80 / 1920 * 100vw);
    gap: calc(40 / 1920 * 100vw);
  }
}
@media screen and (width <= 767px) {
  .about {
    padding: calc(80 / 750 * 100vw) 0;
    gap: calc(50 / 750 * 100vw);
  }
}
.about__title {
  display: flex;
  align-items: center;
  justify-content: center;
}
@media screen and (width >= 768px) {
  .about__title {
    gap: calc(30 / 1920 * 100vw);
  }
}
@media screen and (width <= 767px) {
  .about__title {
    gap: calc(30 / 750 * 100vw);
  }
}
.about__dot {
  display: flex;
  align-items: center;
  flex-shrink: 0;
}
.about__dot i {
  display: block;
  border-radius: 50%;
  background-color: #9cc813;
}
@media screen and (width >= 768px) {
  .about__dot {
    gap: calc(30 / 1920 * 100vw);
    width: calc(105 / 1920 * 100vw);
  }
  .about__dot i:nth-child(1) {
    width: calc(10 / 1920 * 100vw);
    height: calc(10 / 1920 * 100vw);
  }
  .about__dot i:nth-child(2) {
    width: calc(15 / 1920 * 100vw);
    height: calc(15 / 1920 * 100vw);
  }
  .about__dot i:nth-child(3) {
    width: calc(20 / 1920 * 100vw);
    height: calc(20 / 1920 * 100vw);
  }
}
@media screen and (width <= 767px) {
  .about__dot {
    gap: calc(30 / 750 * 100vw);
    width: calc(105 / 750 * 100vw);
  }
  .about__dot i:nth-child(1) {
    width: calc(10 / 750 * 100vw);
    height: calc(10 / 750 * 100vw);
  }
  .about__dot i:nth-child(2) {
    width: calc(15 / 750 * 100vw);
    height: calc(15 / 750 * 100vw);
  }
  .about__dot i:nth-child(3) {
    width: calc(20 / 750 * 100vw);
    height: calc(20 / 750 * 100vw);
  }
}
.about__dot--right {
  flex-direction: row-reverse;
}
.about__heading {
  flex-shrink: 0;
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 900;
  color: #438ebf;
  text-align: center;
  white-space: nowrap;
}
@media screen and (width >= 768px) {
  .about__heading {
    font-size: calc(50 / 1920 * 100vw);
  }
}
@media screen and (width <= 767px) {
  .about__heading {
    font-size: calc(50 / 750 * 100vw);
  }
}
.about__inner {
  display: flex;
  flex-direction: column;
  align-items: center;
}
@media screen and (width >= 768px) {
  .about__inner {
    gap: calc(30 / 1920 * 100vw);
  }
}
@media screen and (width <= 767px) {
  .about__inner {
    gap: calc(30 / 750 * 100vw);
  }
}
.about__lead {
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 700;
  color: #454545;
  text-align: center;
}
@media screen and (width >= 768px) {
  .about__lead {
    font-size: calc(40 / 1920 * 100vw);
    line-height: calc(60 / 1920 * 100vw);
  }
}
@media screen and (width <= 767px) {
  .about__lead {
    font-size: calc(40 / 750 * 100vw);
    line-height: calc(55 / 750 * 100vw);
  }
}
.about__list {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
@media screen and (width >= 768px) {
  .about__list {
    gap: calc(50 / 1920 * 100vw);
  }
}
@media screen and (width <= 767px) {
  .about__list {
    gap: calc(30 / 750 * 100vw);
  }
}
.about__item {
  display: flex;
  flex-direction: column;
  align-items: center;
}
@media screen and (width >= 768px) {
  .about__item {
    gap: calc(20 / 1920 * 100vw);
    width: calc(182 / 1920 * 100vw);
  }
}
@media screen and (width <= 767px) {
  .about__item {
    gap: calc(20 / 750 * 100vw);
    width: calc(300 / 750 * 100vw);
  }
}
.about__item-image {
  background-color: #f8f8fa;
}
@media screen and (width >= 768px) {
  .about__item-image {
    width: calc(182 / 1920 * 100vw);
    height: calc(182 / 1920 * 100vw);
    border-radius: calc(10 / 1920 * 100vw);
  }
}
@media screen and (width <= 767px) {
  .about__item-image {
    width: calc(300 / 750 * 100vw);
    height: calc(300 / 750 * 100vw);
    border-radius: calc(10 / 750 * 100vw);
  }
}
.about__item-caption {
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 500;
  color: #454545;
  text-align: center;
}
@media screen and (width >= 768px) {
  .about__item-caption {
    font-size: calc(20 / 1920 * 100vw);
    line-height: calc(25 / 1920 * 100vw);
  }
}
@media screen and (width <= 767px) {
  .about__item-caption {
    font-size: calc(27 / 750 * 100vw);
    line-height: calc(37 / 750 * 100vw);
  }
}

.step {
  display: flex;
  flex-direction: column;
  align-items: center;
}
@media screen and (width >= 768px) {
  .step {
    width: calc(950 / 1920 * 100vw);
    margin: 0 auto;
    padding: calc(120 / 1920 * 100vw) 0 calc(90 / 1920 * 100vw);
    gap: calc(35 / 1920 * 100vw);
  }
}
@media screen and (width <= 767px) {
  .step {
    padding: calc(80 / 750 * 100vw) 0;
    gap: calc(50 / 750 * 100vw);
  }
}
.step__title {
  height: auto;
  margin-bottom: 20px;
}
@media screen and (width >= 768px) {
  .step__title {
    width: calc(362 / 1920 * 100vw);
  }
}
@media screen and (width <= 767px) {
  .step__title {
    width: calc(362 / 750 * 100vw);
  }
}
.step__banner {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  background-color: #9cc813;
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 900;
  color: #fff;
  text-align: center;
}
@media screen and (width >= 768px) {
  .step__banner {
    width: calc(950 / 1920 * 100vw);
    height: calc(60 / 1920 * 100vw);
    border-radius: calc(30 / 1920 * 100vw);
    font-size: calc(30 / 1920 * 100vw);
    white-space: nowrap;
  }
}
@media screen and (width <= 767px) {
  .step__banner {
    width: calc(700 / 750 * 100vw);
    height: calc(120 / 750 * 100vw);
    border-radius: calc(60 / 750 * 100vw);
    font-size: calc(40 / 750 * 100vw);
    line-height: calc(50 / 750 * 100vw);
  }
}
.step__card {
  display: flex;
  flex-direction: column;
  align-items: center;
  flex-shrink: 0;
  background-color: #fff;
  border-style: solid;
  border-color: #e3ff40;
}
@media screen and (width >= 768px) {
  .step__card {
    width: calc(950 / 1920 * 100vw);
    border-width: calc(10 / 1920 * 100vw);
    border-radius: calc(20 / 1920 * 100vw);
    padding: calc(50 / 1920 * 100vw) 0;
    gap: calc(30 / 1920 * 100vw);
  }
}
@media screen and (width <= 767px) {
  .step__card {
    width: calc(700 / 750 * 100vw);
    border-width: calc(10 / 750 * 100vw);
    border-radius: calc(20 / 750 * 100vw);
    padding: calc(50 / 750 * 100vw) 0;
    gap: calc(50 / 750 * 100vw);
  }
}
@media screen and (width <= 767px) {
  .step__item {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: calc(30 / 750 * 100vw);
    width: calc(600 / 750 * 100vw);
    max-width: 100%;
  }
}
@media screen and (width >= 768px) {
  .step__item--1 {
    display: grid;
    grid-template-columns: calc(422 / 1920 * 100vw) calc(174 / 1920 * 100vw);
    grid-template-areas: "badge   image" "heading image" "body    image" "account image";
    justify-content: space-between;
    justify-items: start;
    align-items: start;
    row-gap: calc(10 / 1920 * 100vw);
    width: calc(700 / 1920 * 100vw);
  }
}
@media screen and (width >= 768px) {
  .step__item--2 {
    display: grid;
    grid-template-columns: calc(422 / 1920 * 100vw) calc(251.5 / 1920 * 100vw);
    grid-template-areas: "badge   image" "heading image" "body    image";
    justify-content: space-between;
    justify-items: start;
    align-items: start;
    row-gap: calc(10 / 1920 * 100vw);
    width: calc(700 / 1920 * 100vw);
  }
}
@media screen and (width >= 768px) {
  .step__item--3 {
    display: grid;
    grid-template-columns: calc(432 / 1920 * 100vw) calc(174 / 1920 * 100vw);
    grid-template-areas: "badge     image" "heading   image" "body      image" "copy-area image";
    justify-content: space-between;
    justify-items: start;
    align-items: start;
    row-gap: calc(10 / 1920 * 100vw);
    width: calc(700 / 1920 * 100vw);
  }
}
.step__badge {
  height: auto;
  flex-shrink: 0;
  margin-bottom: 10px;
}
@media screen and (width >= 768px) {
  .step__badge {
    grid-area: badge;
    width: calc(150 / 1920 * 100vw);
  }
}
@media screen and (width <= 767px) {
  .step__badge {
    width: calc(170 / 750 * 100vw);
  }
}
.step__item-heading {
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 900;
  color: #fc5b8d;
}
@media screen and (width >= 768px) {
  .step__item-heading {
    grid-area: heading;
    font-size: calc(30 / 1920 * 100vw);
  }
}
@media screen and (width <= 767px) {
  .step__item-heading {
    font-size: calc(40 / 750 * 100vw);
    text-align: center;
  }
}
.step__item-body {
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 500;
  color: #454545;
}
@media screen and (width >= 768px) {
  .step__item-body {
    grid-area: body;
    font-size: calc(25 / 1920 * 100vw);
    line-height: calc(36 / 1920 * 100vw);
  }
}
@media screen and (width <= 767px) {
  .step__item-body {
    font-size: calc(30 / 750 * 100vw);
    line-height: calc(45 / 750 * 100vw);
    text-align: center;
  }
}
@media screen and (width >= 768px) {
  .step__item-body--1 {
    width: calc(580 / 1920 * 100vw);
  }
}
@media screen and (width <= 767px) {
  .step__item-body--1 {
    width: calc(600 / 750 * 100vw);
  }
}
@media screen and (width >= 768px) {
  .step__item-body--2 {
    width: calc(450 / 1920 * 100vw);
  }
}
@media screen and (width <= 767px) {
  .step__item-body--2 {
    width: calc(650 / 750 * 100vw);
  }
}
@media screen and (width >= 768px) {
  .step__item-body--3 {
    width: calc(520 / 1920 * 100vw);
  }
}
@media screen and (width <= 767px) {
  .step__item-body--3 {
    width: calc(673 / 750 * 100vw);
  }
}
.step__hashtag {
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 700;
  color: #9cc813;
}
@media screen and (width >= 768px) {
  .step__hashtag {
    font-size: calc(30 / 1920 * 100vw);
  }
}
@media screen and (width <= 767px) {
  .step__hashtag {
    font-size: calc(38 / 750 * 100vw);
  }
}
.step__account {
  display: flex;
  align-items: center;
}
@media screen and (width >= 768px) {
  .step__account {
    grid-area: account;
    gap: calc(10 / 1920 * 100vw);
  }
}
@media screen and (width <= 767px) {
  .step__account {
    gap: calc(20 / 750 * 100vw);
  }
}
.step__account-icon {
  flex-shrink: 0;
  color: #000;
}
@media screen and (width >= 768px) {
  .step__account-icon {
    width: calc(44 / 1920 * 100vw);
    height: calc(44 / 1920 * 100vw);
  }
}
@media screen and (width <= 767px) {
  .step__account-icon {
    width: calc(60 / 750 * 100vw);
    height: calc(60 / 750 * 100vw);
  }
}
.step__account-name {
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 700;
  color: #9cc813;
  white-space: nowrap;
}
@media screen and (width >= 768px) {
  .step__account-name {
    font-size: calc(30 / 1920 * 100vw);
  }
}
@media screen and (width <= 767px) {
  .step__account-name {
    font-size: calc(37 / 750 * 100vw);
  }
}
.step__item-image {
  flex-shrink: 0;
}
.step__item-image img {
  height: auto;
  border: 1px solid #989898;
}
@media screen and (width >= 768px) {
  .step__item-image--1, .step__item-image--2, .step__item-image--3 {
    grid-area: image;
  }
}
@media screen and (width >= 768px) {
  .step__item-image--1 img, .step__item-image--3 img {
    width: calc(174 / 1920 * 100vw);
  }
}
@media screen and (width <= 767px) {
  .step__item-image--1 img, .step__item-image--3 img {
    width: calc(300 / 750 * 100vw);
  }
}
.step__item-image--2 img {
  border: none;
}
@media screen and (width >= 768px) {
  .step__item-image--2 img {
    width: calc(251.5 / 1920 * 100vw);
  }
}
@media screen and (width <= 767px) {
  .step__item-image--2 img {
    width: calc(459 / 750 * 100vw);
  }
}
.step__copy-area {
  display: flex;
  flex-direction: column;
  align-items: center;
}
@media screen and (width >= 768px) {
  .step__copy-area {
    grid-area: copy-area;
    gap: calc(5 / 1920 * 100vw);
  }
}
@media screen and (width <= 767px) {
  .step__copy-area {
    gap: calc(10 / 750 * 100vw);
  }
}
.step__copy-button {
  display: flex;
  align-items: center;
  justify-content: center;
  align-self: flex-start;
  background-color: #fff;
  border-style: solid;
  border-color: #989898;
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 700;
  color: #989898;
}
@media screen and (width >= 768px) {
  .step__copy-button {
    margin: 5px 0;
    width: calc(270 / 1920 * 100vw);
    height: calc(45 / 1920 * 100vw);
    border-width: calc(3 / 1920 * 100vw);
    font-size: calc(19 / 1920 * 100vw);
  }
}
@media screen and (width <= 767px) {
  .step__copy-button {
    margin: 5px auto;
    width: calc(400 / 750 * 100vw);
    height: calc(80 / 750 * 100vw);
    border-width: calc(3 / 750 * 100vw);
    font-size: calc(30 / 750 * 100vw);
  }
}
.step__note {
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 400;
  color: #636363;
}
@media screen and (width >= 768px) {
  .step__note {
    font-size: calc(16 / 1920 * 100vw);
    line-height: 1rem;
  }
}
@media screen and (width <= 767px) {
  .step__note {
    width: calc(401 / 750 * 100vw);
    font-size: calc(24 / 750 * 100vw);
    line-height: calc(34 / 750 * 100vw);
  }
}
.step__line {
  flex-shrink: 0;
}
@media screen and (width >= 768px) {
  .step__line {
    width: calc(600 / 1920 * 100vw);
  }
}
@media screen and (width <= 767px) {
  .step__line {
    width: calc(600 / 750 * 100vw);
  }
}
@media screen and (width >= 768px) {
  .step__cta {
    width: calc(759 / 1920 * 100vw);
  }
}
@media screen and (width <= 767px) {
  .step__cta {
    width: calc(600 / 750 * 100vw);
  }
}
.step__cta img {
  width: 100%;
}

.campaign {
  display: flex;
  flex-direction: column;
  align-items: center;
}
@media screen and (width >= 768px) {
  .campaign {
    width: calc(950 / 1920 * 100vw);
    margin: 0 auto;
    padding: calc(70 / 1920 * 100vw) 0;
    gap: calc(50 / 1920 * 100vw);
  }
}
@media screen and (width <= 767px) {
  .campaign {
    padding: calc(80 / 750 * 100vw) 0;
    gap: calc(50 / 750 * 100vw);
  }
}
.campaign__title {
  height: auto;
  flex-shrink: 0;
}
@media screen and (width >= 768px) {
  .campaign__title {
    width: calc(532 / 1920 * 100vw);
  }
}
@media screen and (width <= 767px) {
  .campaign__title {
    width: calc(532 / 750 * 100vw);
  }
}
.campaign__card {
  height: auto;
  flex-shrink: 0;
}
@media screen and (width >= 768px) {
  .campaign__card {
    width: calc(950 / 1920 * 100vw);
  }
}
@media screen and (width <= 767px) {
  .campaign__card {
    width: calc(700 / 750 * 100vw);
  }
}

.prize {
  display: flex;
  flex-direction: column;
  align-items: center;
}
@media screen and (width >= 768px) {
  .prize {
    padding: calc(70 / 1920 * 100vw) 0;
    gap: calc(20 / 1920 * 100vw);
  }
}
@media screen and (width <= 767px) {
  .prize {
    padding: calc(80 / 750 * 100vw) 0;
  }
}
.prize__main {
  display: flex;
  flex-direction: column;
  align-items: center;
}
@media screen and (width >= 768px) {
  .prize__main {
    gap: calc(30 / 1920 * 100vw);
  }
}
@media screen and (width <= 767px) {
  .prize__main {
    gap: calc(50 / 750 * 100vw);
  }
}
.prize__title {
  height: auto;
  flex-shrink: 0;
}
@media screen and (width >= 768px) {
  .prize__title {
    width: calc(532 / 1920 * 100vw);
  }
}
@media screen and (width <= 767px) {
  .prize__title {
    width: calc(532 / 750 * 100vw);
  }
}
.prize__banner {
  height: auto;
  flex-shrink: 0;
}
@media screen and (width >= 768px) {
  .prize__banner {
    width: calc(750 / 1920 * 100vw);
  }
}
@media screen and (width <= 767px) {
  .prize__banner {
    width: calc(700 / 750 * 100vw);
  }
}
.prize__cards {
  display: flex;
  justify-content: center;
}
@media screen and (width >= 768px) {
  .prize__cards {
    flex-direction: row;
    align-items: flex-start;
    gap: calc(10 / 1920 * 100vw);
  }
}
@media screen and (width <= 767px) {
  .prize__cards {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-template-areas: "a a" "b c" "d e";
    -moz-column-gap: calc(20 / 750 * 100vw);
         column-gap: calc(20 / 750 * 100vw);
    row-gap: calc(10 / 750 * 100vw);
    align-items: start;
    width: calc(700 / 750 * 100vw);
  }
}
.prize__card-col {
  display: flex;
  flex-direction: column;
  flex-shrink: 0;
}
@media screen and (width >= 768px) {
  .prize__card-col {
    gap: calc(7 / 1920 * 100vw);
  }
}
@media screen and (width <= 767px) {
  .prize__card-col {
    display: contents;
  }
}
@media screen and (width >= 768px) {
  .prize__card-col--bd {
    width: calc(302 / 1920 * 100vw);
  }
}
@media screen and (width <= 767px) {
  .prize__card-col--bd {
    width: calc(344 / 750 * 100vw);
  }
}
@media screen and (width >= 768px) {
  .prize__card-col--ce {
    gap: calc(20 / 1920 * 100vw);
    width: calc(308 / 1920 * 100vw);
  }
}
@media screen and (width <= 767px) {
  .prize__card-col--ce {
    width: calc(338 / 750 * 100vw);
  }
}
@media screen and (width <= 767px) {
  .prize__card-slot--a {
    grid-area: a;
  }
}
@media screen and (width <= 767px) {
  .prize__card-slot--b {
    grid-area: b;
    margin-top: calc(18 / 750 * 100vw);
  }
}
@media screen and (width >= 768px) {
  .prize__card-slot--c {
    margin-top: calc(3 / 1920 * 100vw);
  }
}
@media screen and (width <= 767px) {
  .prize__card-slot--c {
    grid-area: c;
  }
}
@media screen and (width <= 767px) {
  .prize__card-slot--d {
    grid-area: d;
  }
}
@media screen and (width >= 768px) {
  .prize__card-slot--e {
    margin-top: calc(-9 / 1920 * 100vw);
  }
}
@media screen and (width <= 767px) {
  .prize__card-slot--e {
    margin-top: calc(0 / 750 * 100vw);
    grid-area: e;
  }
}
.prize__card {
  height: auto;
  flex-shrink: 0;
  width: 100%;
}
@media screen and (width >= 768px) {
  .prize__card--a {
    width: calc(486 / 1920 * 100vw);
  }
}
.prize__card--b-note {
  text-align: right;
  margin-top: 4px;
}
@media screen and (width >= 768px) {
  .prize__card--b-note {
    font-size: calc(7 / 1920 * 100vw);
  }
}
@media screen and (width <= 767px) {
  .prize__card--b-note {
    font-size: calc(18 / 750 * 100vw);
  }
}
.prize__card--e-note {
  margin-top: 4px;
  margin-left: 4px;
}
@media screen and (width >= 768px) {
  .prize__card--e-note {
    font-size: calc(17 / 1920 * 100vw);
  }
}
@media screen and (width <= 767px) {
  .prize__card--e-note {
    font-size: calc(18 / 750 * 100vw);
  }
}
.prize__notes {
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 500;
  color: #454545;
  margin-top: 20px;
}
@media screen and (width >= 768px) {
  .prize__notes {
    width: calc(957 / 1920 * 100vw);
  }
}
@media screen and (width <= 767px) {
  .prize__notes {
    width: calc(700 / 750 * 100vw);
  }
}
@media screen and (width >= 768px) {
  .prize__notes-heading {
    font-size: calc(20 / 1920 * 100vw);
    margin-bottom: calc(4 / 1920 * 100vw);
  }
}
@media screen and (width <= 767px) {
  .prize__notes-heading {
    font-size: calc(24 / 750 * 100vw);
  }
}
.prize__notes-list {
  list-style: none;
}
.prize__notes-list li {
  position: relative;
  font-weight: 500;
}
@media screen and (width >= 768px) {
  .prize__notes-list li {
    font-size: calc(20 / 1920 * 100vw);
    line-height: calc(28 / 1920 * 100vw);
    padding-left: calc(14 / 1920 * 100vw);
  }
}
@media screen and (width <= 767px) {
  .prize__notes-list li {
    font-size: calc(24 / 750 * 100vw);
    line-height: calc(34 / 750 * 100vw);
    padding-left: calc(24 / 750 * 100vw);
  }
}
.prize__notes-list li::before {
  content: "・";
  position: absolute;
  left: 0;
}

.tvcm {
  display: flex;
  flex-direction: column;
  align-items: center;
}
@media screen and (width >= 768px) {
  .tvcm {
    padding: calc(70 / 1920 * 100vw) 0;
    gap: calc(50 / 1920 * 100vw);
  }
}
@media screen and (width <= 767px) {
  .tvcm {
    padding: calc(80 / 750 * 100vw) 0;
    gap: calc(50 / 750 * 100vw);
  }
}
.tvcm__title {
  height: auto;
  flex-shrink: 0;
}
@media screen and (width >= 768px) {
  .tvcm__title {
    width: calc(333 / 1920 * 100vw);
  }
}
@media screen and (width <= 767px) {
  .tvcm__title {
    width: calc(333 / 750 * 100vw);
  }
}
.tvcm__inner {
  display: flex;
  flex-direction: column;
  align-items: center;
}
@media screen and (width >= 768px) {
  .tvcm__inner {
    gap: calc(20 / 1920 * 100vw);
  }
}
@media screen and (width <= 767px) {
  .tvcm__inner {
    gap: calc(50 / 750 * 100vw);
  }
}
.tvcm__banner {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  background-color: #438ebf;
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 900;
  color: #fff;
  text-align: center;
}
@media screen and (width >= 768px) {
  .tvcm__banner {
    width: calc(702 / 1920 * 100vw);
    height: calc(80 / 1920 * 100vw);
    border-radius: calc(50 / 1920 * 100vw);
    font-size: calc(35 / 1920 * 100vw);
  }
}
@media screen and (width <= 767px) {
  .tvcm__banner {
    width: calc(701 / 750 * 100vw);
    height: calc(60 / 750 * 100vw);
    border-radius: calc(50 / 750 * 100vw);
    font-size: calc(40 / 750 * 100vw);
  }
}
.tvcm__lead {
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 500;
  color: #454545;
  text-align: center;
  line-height: 1.6;
}
@media screen and (width >= 768px) {
  .tvcm__lead {
    font-size: calc(25 / 1920 * 100vw);
    width: calc(800 / 1920 * 100vw);
  }
}
@media screen and (width <= 767px) {
  .tvcm__lead {
    font-size: calc(30 / 750 * 100vw);
    width: calc(701 / 750 * 100vw);
  }
}

.terms {
  display: flex;
  flex-direction: column;
  align-items: center;
}
@media screen and (width >= 768px) {
  .terms {
    padding: calc(70 / 1920 * 100vw) 0;
    gap: calc(50 / 1920 * 100vw);
  }
}
@media screen and (width <= 767px) {
  .terms {
    padding: calc(80 / 750 * 100vw) 0;
    gap: calc(50 / 750 * 100vw);
  }
}
.terms__box {
  position: relative;
  box-sizing: border-box;
  background-color: #fff;
  border-style: solid;
  border-color: #454545;
}
@media screen and (width >= 768px) {
  .terms__box {
    width: calc(950 / 1920 * 100vw);
    border-width: calc(10 / 1920 * 100vw);
    border-radius: calc(20 / 1920 * 100vw);
    margin-top: calc(40 / 1920 * 100vw);
    padding: calc(70 / 1920 * 100vw) calc(60 / 1920 * 100vw) calc(50 / 1920 * 100vw);
  }
}
@media screen and (width <= 767px) {
  .terms__box {
    width: calc(700 / 750 * 100vw);
    border-width: calc(10 / 750 * 100vw);
    border-radius: calc(20 / 750 * 100vw);
    margin-top: calc(40 / 750 * 100vw);
    padding: calc(80 / 750 * 100vw) calc(45 / 750 * 100vw) calc(50 / 750 * 100vw);
  }
}
.terms__tab {
  position: absolute;
  left: 50%;
  transform: translate(-50%, -50%);
  display: flex;
  align-items: center;
  justify-content: center;
  top: 0;
  background-color: #454545;
  border-radius: 50px;
  color: #fff;
  text-align: center;
  white-space: nowrap;
  font-family: "Zen Maru Gothic", sans-serif;
}
@media screen and (width >= 768px) {
  .terms__tab {
    height: calc(80 / 1920 * 100vw);
    font-size: calc(45 / 1920 * 100vw);
    font-weight: 900;
    padding: 0 calc(50 / 1920 * 100vw);
  }
}
@media screen and (width <= 767px) {
  .terms__tab {
    height: calc(80 / 750 * 100vw);
    font-size: calc(40 / 750 * 100vw);
    font-weight: 700;
    padding: 0 calc(50 / 750 * 100vw);
  }
}
.terms__text {
  overflow-y: auto;
  color: #454545;
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 400;
  text-align: left;
}
@media screen and (width >= 768px) {
  .terms__text {
    max-height: calc(351 / 1920 * 100vw);
    font-size: calc(20 / 1920 * 100vw);
    line-height: 1.7;
  }
}
@media screen and (width <= 767px) {
  .terms__text {
    max-height: calc(389 / 750 * 100vw);
    font-size: calc(25 / 750 * 100vw);
    line-height: 1.7;
  }
}
.terms__text p {
  margin: 0 0 1em;
}
.terms__section-title {
  font-weight: 700;
  margin-bottom: 0.3em !important;
}
.terms__section-title:first-child {
  margin-top: 0;
}
.terms__list {
  margin: 0 0 1em;
}
.terms__list li {
  margin-bottom: 0.3em;
}
.terms__list--plain {
  list-style: none;
  padding-left: 0;
}
.terms__list--bullet {
  list-style: none;
  padding-left: 0;
}
.terms__list--bullet li {
  position: relative;
  padding-left: 1.1em;
}
.terms__list--bullet li::before {
  content: "・";
  position: absolute;
  left: 0;
}
.terms__contact-text {
  color: #454545;
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 500;
  text-align: left;
  line-height: 1.7;
}
@media screen and (width >= 768px) {
  .terms__contact-text {
    font-size: calc(22 / 1920 * 100vw);
  }
}
@media screen and (width <= 767px) {
  .terms__contact-text {
    font-size: calc(26 / 750 * 100vw);
  }
}

.link-banner {
  display: flex;
  justify-content: center;
}
@media screen and (width >= 768px) {
  .link-banner {
    flex-direction: row;
    align-items: flex-start;
    gap: calc(49 / 1920 * 100vw);
    padding-bottom: calc(70 / 1920 * 100vw);
  }
}
@media screen and (width <= 767px) {
  .link-banner {
    flex-direction: column;
    align-items: center;
    gap: calc(60 / 750 * 100vw);
    padding-bottom: calc(80 / 750 * 100vw);
  }
}
.link-banner__item {
  display: flex;
  flex-direction: column;
  align-items: center;
}
@media screen and (width >= 768px) {
  .link-banner__item {
    gap: calc(10 / 1920 * 100vw);
    width: calc(450.5 / 1920 * 100vw);
  }
}
@media screen and (width <= 767px) {
  .link-banner__item {
    gap: calc(20 / 750 * 100vw);
    width: calc(630 / 750 * 100vw);
  }
}
.link-banner__label {
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 400;
  color: #454545;
  text-align: center;
  white-space: nowrap;
}
@media screen and (width >= 768px) {
  .link-banner__label {
    font-size: calc(23 / 1920 * 100vw);
    line-height: calc(30 / 1920 * 100vw);
  }
}
@media screen and (width <= 767px) {
  .link-banner__label {
    font-size: calc(30 / 750 * 100vw);
    line-height: calc(30 / 750 * 100vw);
  }
}
.link-banner__card {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.link-banner__card img {
  height: auto;
}
@media screen and (width >= 768px) {
  .link-banner__card {
    width: calc(450 / 1920 * 100vw);
    height: calc(181 / 1920 * 100vw);
  }
}
@media screen and (width <= 767px) {
  .link-banner__card {
    width: calc(450 / 750 * 100vw);
    height: calc(181 / 750 * 100vw);
  }
}
@media screen and (width >= 768px) {
  .link-banner__card--portal img {
    width: calc(420 / 1920 * 100vw);
  }
}
@media screen and (width <= 767px) {
  .link-banner__card--portal img {
    width: calc(420 / 750 * 100vw);
  }
}
@media screen and (width >= 768px) {
  .link-banner__card--kenmin img {
    width: calc(420 / 1920 * 100vw);
  }
}
@media screen and (width <= 767px) {
  .link-banner__card--kenmin img {
    width: calc(420 / 750 * 100vw);
  }
}
.link-banner__description {
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 400;
  color: #454545;
  text-align: left;
}
@media screen and (width >= 768px) {
  .link-banner__description {
    font-size: calc(22 / 1920 * 100vw);
    line-height: calc(32 / 1920 * 100vw);
  }
}
@media screen and (width <= 767px) {
  .link-banner__description {
    font-size: calc(25 / 750 * 100vw);
    line-height: calc(30 / 750 * 100vw);
  }
}
@media screen and (width <= 767px) {
  .link-banner__description--2 {
    font-size: calc(24 / 750 * 100vw);
  }
}

.footer {
  display: flex;
  flex-direction: column;
  align-items: center;
  background-color: #9cc813;
}
@media screen and (width >= 768px) {
  .footer {
    padding: calc(70 / 1920 * 100vw) 0;
    gap: calc(50 / 1920 * 100vw);
  }
}
@media screen and (width <= 767px) {
  .footer {
    padding: calc(100 / 750 * 100vw) 0;
    gap: calc(80 / 750 * 100vw);
  }
}
.footer__group {
  display: flex;
  flex-direction: column;
  align-items: center;
}
@media screen and (width >= 768px) {
  .footer__group {
    gap: calc(30 / 1920 * 100vw);
  }
}
@media screen and (width <= 767px) {
  .footer__group {
    gap: calc(50 / 750 * 100vw);
  }
}
.footer__label {
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 900;
  color: #454545;
  text-align: center;
  white-space: nowrap;
}
@media screen and (width >= 768px) {
  .footer__label {
    font-size: calc(20 / 1920 * 100vw);
  }
}
@media screen and (width <= 767px) {
  .footer__label {
    font-size: calc(25 / 750 * 100vw);
  }
}
.footer__fukushima-logo {
  height: auto;
  flex-shrink: 0;
}
@media screen and (width >= 768px) {
  .footer__fukushima-logo {
    width: calc(200 / 1920 * 100vw);
  }
}
@media screen and (width <= 767px) {
  .footer__fukushima-logo {
    width: calc(200 / 750 * 100vw);
  }
}
.footer__sponsors {
  flex-shrink: 0;
}
.footer__sponsors img {
  height: auto;
}
@media screen and (width >= 768px) {
  .footer__sponsors img {
    width: calc(1000 / 1920 * 100vw);
  }
}
@media screen and (width <= 767px) {
  .footer__sponsors img {
    width: calc(550 / 750 * 100vw);
  }
}