@charset "UTF-8";
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

html,
body {
  height: 100%;
  font-family: "Noto Sans JP", "sans-serif";
  line-height: 1.5;
  -webkit-font-smoothing: antialiased;
}

a {
  color: inherit;
  text-decoration: none;
}

ul,
ol {
  list-style: none;
}

img,
video {
  max-width: 100%;
  height: auto;
  display: block;
}

button,
input,
textarea,
select {
  font: inherit;
  border: none;
  background: none;
  outline: none;
  padding: 0;
  margin: 0;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

.l-wrapper {
  padding-top: 60px !important;
  min-height: calc(100vh - 89px);
  padding-bottom: 11.86441%;
  color: #222222;
}
.l-wrapper .inner {
  width: 900px;
  margin: 0 auto;
}
@media screen and (max-width: 750px) {
  .l-wrapper .inner {
    width: 89.3333333333vw;
  }
}

@media print, screen and (min-width: 751px) {
  .l-wrapper {
    padding-top: 60px !important;
    min-height: calc(100vh - 100px);
    padding-bottom: 78px;
  }
}
.pcD {
  display: block;
}
@media screen and (max-width: 750px) {
  .pcD {
    display: none;
  }
}

.spD {
  display: none;
}
@media screen and (max-width: 750px) {
  .spD {
    display: block;
  }
}

.sup {
  font-size: 0.8em;
}

.no-indent {
  text-indent: 0;
  padding-left: 0;
}

.common-btn {
  background-color: #C41E1E;
  border: 3px solid #C2AC7A;
  color: #fff;
  box-sizing: border-box;
  box-shadow: 3px 5px #8D0202;
  border-radius: 57px;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 18px;
  font-weight: bold;
  position: relative;
  margin: 0 auto;
  text-align: center;
  width: 295px;
  height: 60px;
}
.common-btn::after {
  content: "";
  display: inline-block;
  width: 10px;
  height: 10px;
  border-right: 2px solid #fff;
  border-bottom: 2px solid #fff;
  position: absolute;
  top: 50%;
  transform: translateY(-50%) rotate(-45deg);
  right: 18px;
}
.common-btn:hover {
  box-shadow: none;
  transform: translateY(5px);
}
.common-btn button,
.common-btn a {
  color: #fff !important;
  display: block;
  width: 100%;
  height: 100%;
  text-align: center;
  display: flex;
  justify-content: center;
  align-items: center;
}

@media screen and (max-width: 750px) {
  .common-btn {
    width: 78.6666666667vw;
    height: 16vw;
    border-radius: 15.2vw;
    font-size: 4.8vw;
    border: 0.8vw solid #C2AC7A;
    box-shadow: 0 1.3333333333vw 0 #8D0202;
  }
  .common-btn::after {
    content: "";
    display: inline-block;
    width: 2.6666666667vw;
    height: 2.6666666667vw;
    border-right: 0.5333333333vw solid #fff;
    border-bottom: 0.5333333333vw solid #fff;
    position: absolute;
    top: 50%;
    transform: translateY(-50%) rotate(-45deg);
    right: 4.8vw;
  }
}
.common-btn02 {
  background-color: #fff;
  border: 2px solid #002952;
  border-radius: 57px;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 16px;
  font-weight: bold;
  position: relative;
  margin: 0 auto;
  text-align: center;
  width: 295px;
  height: 60px;
}
.common-btn02::after {
  content: "";
  display: inline-block;
  width: 10px;
  height: 10px;
  border-right: 2px solid #002952;
  border-bottom: 2px solid #002952;
  position: absolute;
  top: 50%;
  transform: translateY(-50%) rotate(-45deg);
  right: 18px;
}
.common-btn02.common-btn-reverse::after {
  content: "";
  display: inline-block;
  border-right: none;
  border-bottom: none;
  border-left: 2px solid #002952;
  border-top: 2px solid #002952;
  position: absolute;
  top: 50%;
  transform: translateY(-50%) rotate(-45deg);
  left: 18px;
}
.common-btn02 button,
.common-btn02 a {
  color: #002952;
  display: block;
  width: 100%;
  height: 100%;
  text-align: center;
  display: flex;
  justify-content: center;
  align-items: center;
}

@media screen and (max-width: 750px) {
  .common-btn02 {
    width: 78.6666666667vw;
    height: 16vw;
    border: 0.5333333333vw solid #002952;
    font-size: 4.2666666667vw;
  }
  .common-btn02::after {
    content: "";
    display: inline-block;
    width: 2.6666666667vw;
    height: 2.6666666667vw;
    border-right: 0.5333333333vw solid #002952;
    border-bottom: 0.5333333333vw solid #002952;
    position: absolute;
    top: 50%;
    transform: translateY(-50%) rotate(-45deg);
    right: 4.8vw;
  }
  .common-btn02.common-btn-reverse::after {
    content: "";
    display: inline-block;
    border-right: none;
    border-bottom: none;
    border-left: 0.5333333333vw solid #002952;
    border-top: 0.5333333333vw solid #002952;
    position: absolute;
    top: 50%;
    transform: translateY(-50%) rotate(-45deg);
    right: none;
    left: 4.2666666667vw;
  }
}
.common-btn03 {
  background-color: #B48D13;
  border-radius: 30px;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 16px;
  font-weight: bold;
  position: relative;
  margin: 0 auto;
  margin-top: 0.5rem;
  text-align: center;
  width: 295px;
  height: 60px;
}
.common-btn03::after {
  content: "";
  display: inline-block;
  width: 10px;
  height: 10px;
  border-right: 2px solid #fff;
  border-bottom: 2px solid #fff;
  position: absolute;
  top: 50%;
  transform: translateY(-50%) rotate(-45deg);
  right: 18px;
}
.common-btn03 button,
.common-btn03 a {
  color: #fff;
  display: block;
  width: 100%;
  height: 100%;
  text-align: center;
  display: flex;
  justify-content: center;
  align-items: center;
}

@media screen and (max-width: 750px) {
  .common-btn03 {
    width: 78.6666666667vw;
    height: 16vw;
    font-size: 4.2666666667vw;
    border-radius: 8vw;
  }
  .common-btn03::after {
    content: "";
    display: inline-block;
    width: 2.6666666667vw;
    height: 2.6666666667vw;
    border-right: 0.5333333333vw solid #fff;
    border-bottom: 0.5333333333vw solid #fff;
    position: absolute;
    top: 50%;
    transform: translateY(-50%) rotate(-45deg);
    right: 4.8vw;
  }
}
.common-btn-gray {
  background-color: #fff;
  border: 3px solid #707070;
  border-radius: 30px;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 16px;
  font-weight: bold;
  position: relative;
  margin: 0 auto;
  margin-top: 0.5rem;
  text-align: center;
  width: 295px;
  height: 60px;
}
.common-btn-gray button,
.common-btn-gray a {
  color: #707070;
  display: block;
  width: 100%;
  height: 100%;
  text-align: center;
  display: flex;
  justify-content: center;
  align-items: center;
  pointer-events: none;
}

@media screen and (max-width: 750px) {
  .common-btn-gray {
    width: 78.6666666667vw;
    height: 16vw;
    border: 3px solid #707070;
    font-size: 4.2666666667vw;
    border-radius: 8vw;
  }
}
.btn-bg {
  align-self: flex-end;
}

.btn-wrap {
  margin: 0 auto;
  display: flex;
  flex-direction: row;
  gap: 24px;
}
@media screen and (max-width: 750px) {
  .btn-wrap {
    width: 100%;
    gap: 4.2666666667vw;
    flex-direction: column;
  }
}

.common-marker {
  background: #EBE184;
}

@media screen and (max-width: 750px) {
  .common-marker {
    background: #EBE184;
  }
}
.bg-wh {
  background-color: #fff;
}

.bg-main {
  background-color: #FCFAEB;
  text-align: center;
}
.bg-main .txt {
  font-weight: bold;
  font-size: 18px;
}
.bg-main .common-red-txt {
  display: inline-block;
  font-size: 16px;
  font-weight: bold;
  color: #C41E1E;
}
.bg-main .common-red-txt.days {
  font-size: 32px;
}
@media screen and (max-width: 750px) {
  .bg-main .common-red-txt {
    font-size: 4.8vw;
  }
  .bg-main .common-red-txt.days {
    font-size: 8.5333333333vw;
  }
}

.common-ttl01 {
  text-align: center;
  position: relative;
  font-size: 28px;
  color: #002952;
  font-weight: bold;
}
.common-ttl01::before, .common-ttl01::after {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  display: block;
  width: 306px;
  height: 1px;
  background-color: #002952;
}
.common-ttl01::before {
  left: 0;
}
.common-ttl01::after {
  right: 0;
}

@media screen and (max-width: 750px) {
  .common-ttl01 {
    position: relative;
    font-size: 5.8666666667vw;
  }
  .common-ttl01::before, .common-ttl01::after {
    content: "";
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    display: block;
    width: 21.3333333333vw;
    height: 0.2666666667vw;
    background-color: #002952;
  }
}
.common-ttl02 {
  font-size: 30px;
  font-weight: bold;
  color: #002952;
  position: relative;
}
.common-ttl02::after {
  content: "";
  background-image: url("/assets/img/campaign/calendar/deco_ttl_line.png");
  background-size: contain;
  background-position: center center;
  background-repeat: no-repeat;
  position: relative;
  bottom: -8px;
  left: 50%;
  transform: translateX(-50%);
  display: block;
  width: 38px;
  height: 10px;
}

@media screen and (max-width: 750px) {
  .common-ttl02 {
    font-size: 5.8666666667vw;
    font-weight: bold;
    color: #002952;
    position: relative;
  }
  .common-ttl02::after {
    content: "";
    position: relative;
    bottom: -2.1333333333vw;
    left: 50%;
    transform: translateX(-50%);
    display: block;
    width: 10.1333333333vw;
    height: 2.6666666667vw;
  }
}
.modal {
  display: none;
  /* 非表示 */
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.5);
  justify-content: center;
  align-items: center;
}

.modal.active {
  display: flex;
  /* 表示 */
}

.modal-content {
  background: #fff;
  padding: 8.5333333333vw 5.3333333333vw;
  border-radius: 2.6666666667vw;
  width: 89.3333333333vw;
  position: relative;
  color: #002952;
  text-align: center;
  height: 80%;
  overflow-y: hidden;
  z-index: 100000;
}
.modal-content .mission-txt {
  font-size: 18px;
}
@media screen and (max-width: 750px) {
  .modal-content .mission-txt {
    font-size: 4.8vw;
  }
}
.modal-content .common-btn,
.modal-content .common-btn02 {
  width: 100%;
}
.modal-content .common-ttl01::before, .modal-content .common-ttl01::after {
  width: 15.2vw;
}

.modal-scroll {
  height: 100%;
  overflow-y: auto;
  padding-right: 8px;
}

@media screen and (max-width: 750px) {
  .modal-scroll {
    padding-right: 2.1333333333vw;
  }
}
.modal-close {
  cursor: pointer;
  color: #002952;
}

.step {
  position: relative;
}
.step .container-circle {
  position: absolute;
  top: -28px;
  left: 50%;
  transform: translateX(-50%);
  width: 80px;
  height: 36px;
  border-radius: 50%/100% 100% 0 0;
  background: #fff;
  box-shadow: 0px 0px 8px rgba(0, 0, 0, 0.16);
  z-index: 1;
}
.step .container-circle-txt {
  position: absolute;
  top: -28px;
  left: 50%;
  transform: translateX(-50%);
  width: 80px;
  height: 36px;
  border-radius: 50%/100% 100% 0 0;
  background: #fff;
  z-index: 3;
}
.step .container-circle-txt .num {
  position: absolute;
  top: 20px;
  left: 50%;
  transform: translateX(-50%);
  display: block;
  width: 36px;
  height: 45px;
  background-size: contain;
  background-position: center center;
  background-repeat: no-repeat;
}
@media screen and (max-width: 750px) {
  .step .container-circle-txt .num {
    width: 9.6vw;
    height: 12vw;
  }
}
.step .container-circle-txt .num01 {
  background-image: url("../img/campaign/calendar/step01.png");
}
.step .container-circle-txt .num02 {
  background-image: url("../img/campaign/calendar/step02.png");
}
.step .container-circle-txt .num03 {
  background-image: url("../img/campaign/calendar/step03.png");
}
.step .container {
  position: relative;
  width: 900px;
  margin: 0 auto;
  background-color: #fff;
  border-radius: 10px;
  box-shadow: 0px 0px 8px rgba(0, 0, 0, 0.16);
  z-index: 2;
  margin-top: 28px;
}
@media screen and (max-width: 750px) {
  .step .container {
    width: 89.3333333333vw;
    border-radius: 2.6666666667vw;
  }
}
.step .container .box {
  padding: 50px 0 40px;
}
@media screen and (max-width: 750px) {
  .step .container .box02 {
    margin-top: 10.6666666667vw;
  }
}
@media screen and (max-width: 750px) {
  .step .container .box {
    padding: 12.8vw 5.3333333333vw 6.4vw;
  }
}

.present .present__content {
  display: flex;
  flex-direction: column;
}
.present .present__img {
  width: 641px;
  margin: 0 auto;
  position: relative;
}
@media screen and (max-width: 750px) {
  .present .present__img {
    width: 68vw;
  }
}
.present .present__item01 {
  background-color: #E6ECFF;
  padding-block: 16px;
}
.present .present__item01 .present__ttl {
  width: 102px;
  margin: 0 auto;
}
@media screen and (max-width: 750px) {
  .present .present__item01 {
    padding-block: 4.2666666667vw;
  }
  .present .present__item01 .present__ttl {
    width: 27.2vw;
    margin: 0 auto;
  }
}
.present .present__item02 {
  background-color: #FCF1D3;
  padding-block: 16px;
}
.present .present__item02 .present__ttl {
  width: 102px;
  margin: 0 auto;
}
@media screen and (max-width: 750px) {
  .present .present__item02 {
    padding-block: 4.2666666667vw;
  }
  .present .present__item02 .present__ttl {
    width: 27.2vw;
    margin: 0 auto;
  }
}
.present .present__item03 {
  background-color: #E6ECFF;
  padding-block: 24px;
}
.present .present__item03 .present__ttl {
  width: 254px;
  margin: 0 auto;
}
@media screen and (max-width: 750px) {
  .present .present__item03 {
    padding-block: 6.4vw;
  }
  .present .present__item03 .present__ttl {
    width: 67.7333333333vw;
    margin: 0 auto;
  }
}
.present .present__item-max {
  background-color: #DCC25C;
  padding-block: 36px 24px;
  border-radius: 5px;
  width: 478px;
  margin: 0 auto;
}
.present .present__item-max .present__ttl {
  margin: 0 auto;
  width: 134px;
}
@media screen and (max-width: 750px) {
  .present .present__item-max .present__ttl {
    width: 35.7333333333vw;
  }
}
@media screen and (max-width: 750px) {
  .present .present__item-max {
    padding-block: 9.6vw 6.4vw;
    border-radius: 1.3333333333vw;
    width: 78.6666666667vw;
  }
  .present .present__item-max .present__ttl {
    width: 31.2vw;
    margin: 0 auto;
  }
}
.present .present__txt01 {
  font-size: 12px;
  font-weight: 400;
  margin-top: 4px;
}
.present .present__txt01 + .present__img {
  margin-top: 8px;
}
@media screen and (max-width: 750px) {
  .present .present__txt01 {
    font-size: 3.2vw;
    margin-top: 1.0666666667vw;
  }
  .present .present__txt01 + .present__img {
    margin-top: 2.1333333333vw;
  }
}
.present .present__txt02 {
  font-size: 14px;
  font-weight: bold;
  margin-top: 8px;
}
@media screen and (max-width: 750px) {
  .present .present__txt02 {
    font-size: 3.7333333333vw;
    font-weight: bold;
    margin-top: 2.1333333333vw;
  }
}

.terms-check {
  font-size: 18px;
  font-weight: 500;
  color: #C41E1E;
  text-decoration: underline;
  margin-top: 0;
}

@media screen and (max-width: 750px) {
  .terms-check {
    font-size: 4.8vw;
    margin-top: 6.4vw;
  }
}
.present__caution {
  font-size: 12px;
  font-weight: 500;
  margin-top: 8px;
}

@media screen and (max-width: 750px) {
  .present__caution {
    font-size: 3.2vw;
    font-weight: 500;
    margin-top: 2.1333333333vw;
  }
}
.terms {
  font-size: 18px;
  background-color: #fff;
  padding: 80px 0 56px;
  line-height: 1.444;
}
@media screen and (max-width: 750px) {
  .terms {
    padding: 10.6666666667vw 0 6.4vw;
    line-height: 1.5;
  }
}
.terms .inner {
  width: 900px;
  margin: 0 auto;
}
@media screen and (max-width: 750px) {
  .terms .inner {
    width: 100%;
  }
}
.terms .terms__banner {
  position: relative;
}
@media screen and (max-width: 750px) {
  .terms .terms__banner {
    width: 100%;
  }
}
@media screen and (max-width: 750px) {
  .terms .terms__wrap {
    padding-inline: 5.3333333333vw;
  }
}
.terms .terms__ttl {
  background-color: #E6ECFF;
  height: 60px;
  display: flex;
  justify-content: center;
  align-items: center;
  color: #222222;
  font-size: 24px;
  line-height: 2;
  font-weight: bold;
}
@media screen and (max-width: 750px) {
  .terms .terms__ttl {
    font-size: 4.8vw;
    height: 13.8666666667vw;
  }
}
.terms li {
  text-indent: -1em;
  padding-left: 1em;
  font-size: 18px;
}
@media screen and (max-width: 750px) {
  .terms li {
    font-size: 4.2666666667vw;
  }
}
.terms li span {
  font-size: 18px;
}
@media screen and (max-width: 750px) {
  .terms li span {
    font-size: 3.7333333333vw;
  }
}
.terms .link-blue {
  color: #006CC4;
}
.terms .underline {
  text-decoration: underline;
}
.terms .terms__box {
  border: 2px solid #E6ECFF;
  padding-bottom: 48px;
}
@media screen and (max-width: 750px) {
  .terms .terms__box {
    padding-bottom: 6.4vw;
  }
}
.terms .terms__box .fs16 {
  font-size: 16px;
}
@media screen and (max-width: 750px) {
  .terms .terms__box .fs16 {
    font-size: 3.7333333333vw;
  }
}
.terms .terms__box .mt16 {
  margin-top: 16px;
}
@media screen and (max-width: 750px) {
  .terms .terms__box .mt16 {
    margin-top: 3.7333333333vw;
  }
}
.terms .terms__box .campaign__caution {
  width: 100%;
}
.terms .terms__box .campaign__caution li {
  text-indent: -1em;
  padding-left: 1em;
}
.terms .terms__box .caution {
  font-size: 16px;
}
@media screen and (max-width: 750px) {
  .terms .terms__box .caution {
    font-size: 3.7333333333vw;
    line-height: 1.7142857143;
  }
}
.terms .minokishi__caution {
  font-size: 14px;
}
@media screen and (max-width: 750px) {
  .terms .minokishi__caution {
    font-size: 3.2vw;
  }
}
.terms .list__border {
  margin-top: 0;
  background-image: repeating-linear-gradient(90deg, #000000, #000000 6px, transparent 6px, transparent 12px);
  background-position: left bottom;
  background-repeat: repeat-x;
  background-size: 100% 1px;
  padding-top: 24px;
}
@media screen and (max-width: 750px) {
  .terms .list__border {
    background-image: repeating-linear-gradient(90deg, #000000, #000000 2.6666666667vw, transparent 2.6666666667vw, transparent 5.3333333333vw);
    background-position: left bottom;
    background-repeat: repeat-x;
    background-size: 100% 0.2666666667vw;
    padding-top: 3.2vw;
    margin-top: 0;
  }
}
.terms .type_a,
.terms .type_b,
.terms .type_c {
  color: #222222;
  padding: 0 48px;
}
@media screen and (max-width: 750px) {
  .terms .type_a,
  .terms .type_b,
  .terms .type_c {
    padding: 0 5.3333333333vw 0 4vw;
  }
}
.terms .type_a dt,
.terms .type_b dt,
.terms .type_c dt {
  font-weight: bold;
  font-size: 18px;
  line-height: 1.4444444444;
}
@media screen and (max-width: 750px) {
  .terms .type_a dt,
  .terms .type_b dt,
  .terms .type_c dt {
    font-size: 4.2666666667vw;
  }
}
.terms .type_a dd,
.terms .type_b dd,
.terms .type_c dd {
  font-size: 18px;
}
@media screen and (max-width: 750px) {
  .terms .type_a dd,
  .terms .type_b dd,
  .terms .type_c dd {
    font-size: 4.2666666667vw;
  }
}
.terms .type_a {
  display: flex;
  flex-direction: column;
  margin-top: 32px;
}
@media screen and (max-width: 750px) {
  .terms .type_a {
    margin-top: 6.6666666667vw;
  }
}
.terms .type_a .txt:not(:last-of-type) {
  padding-bottom: 18px;
}
@media screen and (max-width: 750px) {
  .terms .type_a .txt:not(:last-of-type) {
    padding-bottom: 4.2666666667vw;
  }
}
.terms .type_a .txt .ttl {
  color: #B48D13;
}
.terms .type_a .prize__txt {
  font-size: 18px;
}
@media screen and (max-width: 750px) {
  .terms .type_a .prize__txt {
    font-size: 4.2666666667vw;
  }
}
.terms .type_b dt {
  text-align: center;
  position: relative;
  margin-top: 32px;
}
@media screen and (max-width: 750px) {
  .terms .type_b dt {
    margin-top: 6.4vw;
  }
}
.terms .type_b dt span {
  position: inherit;
  font-size: 24px;
  color: #B48D13;
  background: #fff;
  padding: 4px 16px;
  z-index: 10;
}
@media screen and (max-width: 750px) {
  .terms .type_b dt span {
    font-size: 4.8vw;
    padding: 1.0666666667vw 4.2666666667vw;
  }
}
.terms .type_b dt::before, .terms .type_b dt::after {
  content: "";
  display: block;
  width: 367px;
  height: 1px;
  background-color: #B48D13;
  position: absolute;
  top: 50%;
}
@media screen and (max-width: 750px) {
  .terms .type_b dt::before, .terms .type_b dt::after {
    width: 25.6vw;
  }
}
.terms .type_b dt::before {
  left: 0;
}
.terms .type_b dt::after {
  right: 0;
}
.terms .type_b dt.cereal::before, .terms .type_b dt.cereal::after {
  content: "";
  display: block;
  width: 271px;
  height: 1px;
  background-color: #B48D13;
  position: absolute;
  top: 50%;
}
@media screen and (max-width: 750px) {
  .terms .type_b dt.cereal::before, .terms .type_b dt.cereal::after {
    width: 6.9333333333vw;
  }
}
.terms .type_b dt.cereal::before {
  left: 0;
}
.terms .type_b dt.cereal::after {
  right: 0;
}
.terms .type_b dd {
  margin-top: 32px;
}
@media screen and (max-width: 750px) {
  .terms .type_b dd {
    margin-top: 6.4vw;
  }
}
.terms .type_b .medical__list li {
  text-indent: 0;
  padding-left: 0;
}
.terms .type_b .medical__list li:not(:first-of-type) {
  margin-top: 24px;
}
@media screen and (max-width: 750px) {
  .terms .type_b .medical__list li:not(:first-of-type) {
    margin-top: 4.2666666667vw;
  }
}
.terms .type_b .medical__list__ttl {
  font-size: 18px;
}
@media screen and (max-width: 750px) {
  .terms .type_b .medical__list__ttl {
    font-size: 4.2666666667vw;
  }
}
.terms .type_b .medical__list__ttl + p {
  margin-top: 16px;
  margin-left: -10px;
}
@media screen and (max-width: 750px) {
  .terms .type_b .medical__list__ttl + p {
    margin-top: 2.1333333333vw;
    font-size: 3.7333333333vw;
    line-height: 1.7142857143;
    margin-left: 0;
  }
}
.terms .type_b .medical__list__item {
  border: 1px solid #222;
  display: inline-block;
  font-size: 16px;
  font-weight: 400;
  margin-left: 16px;
  padding-inline: 6px;
}
@media screen and (max-width: 750px) {
  .terms .type_b .medical__list__item {
    font-size: 3.7333333333vw;
    padding-inline: 1.6vw;
    margin: 2.4vw 0 0;
  }
}
.terms .type_b .medical__caution {
  color: #AA1F1F;
  font-size: 16px;
  font-weight: 400;
}
@media screen and (max-width: 750px) {
  .terms .type_b .medical__caution {
    font-size: 3.7333333333vw;
  }
}
.terms .type_b .medical__list__txt {
  font-size: 16px;
}
.terms .type_c {
  margin-top: 32px;
}
@media screen and (max-width: 750px) {
  .terms .type_c {
    margin-top: 0;
  }
}
.terms .type_c .ttl {
  font-size: 20px;
  padding-left: 8px;
  color: #B48D13;
}
@media screen and (max-width: 750px) {
  .terms .type_c .ttl {
    margin-top: 6.4vw;
    font-size: 4.8vw;
  }
}
.terms .type_c dt:not(:first-child) {
  margin-top: 20px;
}
@media screen and (max-width: 750px) {
  .terms .type_c dt:not(:first-child) {
    margin-top: 4.2666666667vw;
    font-size: 4.2666666667vw;
  }
}
.terms .type_c dt,
.terms .type_c dd {
  text-indent: -1em;
  padding-left: 1em;
}
.terms .type_c dt.no-indent,
.terms .type_c dd.no-indent {
  text-indent: 0;
  padding-left: 0;
}
.terms .terms__accordion__btn {
  position: relative;
}
@media screen and (max-width: 750px) {
  .terms .terms__accordion__btn {
    border-radius: 2.6666666667vw;
  }
  .terms .terms__accordion__btn.active {
    border-radius: 0;
    border-top-left-radius: 2.6666666667vw;
    border-top-right-radius: 2.6666666667vw;
  }
}
.terms .terms__accordion__btn::after {
  content: "";
  border-bottom: solid 2px #222;
  border-left: solid 2px #222;
  vertical-align: middle;
  width: 10px;
  height: 10px;
  position: absolute;
  right: 68px;
  top: 50%;
  transform-origin: center;
  transform: translateY(-50%) rotate(-45deg);
}
@media screen and (max-width: 750px) {
  .terms .terms__accordion__btn::after {
    right: 5.6vw;
  }
}
.terms .terms__accordion__btn.active::after {
  border-top: solid 2px #222;
  border-right: solid 2px #222;
  border-bottom: none;
  border-left: none;
}
.terms .terms__accordion__contents {
  display: none;
}
.terms .terms__accordion__contents.active {
  display: block;
}