#main5 {
  padding: 0;
  margin: 0 auto;
  width: 100%;
  background: center/cover no-repeat;
}
@media screen and (max-width: 767px) {
  #main5 {
    padding-top: 5.0595238095vw;
    padding-bottom: 2.9761904762vw;
    aspect-ratio: 672/1248;
    background-image: url(../images/main5/bg_sp.png);
  }
}
@media screen and (min-width: 768px) {
  #main5 {
    aspect-ratio: 1920/860;
    padding-top: 1.5625vw;
    padding-bottom: 1.0416666667vw;
    background-image: url(../images/main5/bg.png);
  }
}
@media screen and (max-width: 767px) {
  #main5 .main-content-top {
    width: 100%;
    padding: 0 4.4642857143vw;
    position: relative;
    z-index: 2;
  }
}
@media screen and (min-width: 768px) {
  #main5 .main-content-top {
    margin-left: 11.9791666667vw;
    width: 47.3958333333vw;
  }
}
#main5 .main-content-top .main-text span {
  display: block;
}
#main5 .main-content-top .main-text .main-txt-top {
  display: block;
  margin: 0 auto;
  aspect-ratio: 862/157;
  background: url(../images/main5/txt_top.png) center/contain no-repeat;
  text-align: center;
  width: 65rem;
  max-width: 100%;
  padding-top: 5%;
}
#main5 .main-content-top .main-text .main-txt-top > span {
  font-weight: bold;
  font-family: "LogoExtra", sans-serif;
  transform: skewX(-10deg);
  font-size: 5.505952381vw;
  color: transparent;
}
@media screen and (min-width: 768px) {
  #main5 .main-content-top .main-text .main-txt-top > span {
    font-size: 2.0833333333vw;
  }
}
#main5 .main-content-top .main-text .main-txt-bot {
  font-family: "LogoExtra", sans-serif;
  font-weight: 800;
  color: #ffbf16;
  letter-spacing: 0.1em;
  text-shadow: -2px -1px 0 #000, -2px 0px 0 #000, -2px 1px 0 #000, -1px -2px 0 #000, -1px -1px 0 #000, -1px 0px 0 #000, -1px 1px 0 #000, -1px 2px 0 #000, 0px -2px 0 #000, 0px -1px 0 #000, 0px 0px 0 #000, 0px 1px 0 #000, 0px 2px 0 #000, 1px -2px 0 #000, 1px -1px 0 #000, 1px 0px 0 #000, 1px 1px 0 #000, 1px 2px 0 #000, 2px -1px 0 #000, 2px 0px 0 #000, 2px 1px 0 #000;
}
@media screen and (max-width: 767px) {
  #main5 .main-content-top .main-text .main-txt-bot {
    padding-left: 2.2321428571vw;
    margin-top: 2.9761904762vw;
    font-size: 9.5238095238vw;
    line-height: 1.2;
  }
}
@media screen and (min-width: 768px) {
  #main5 .main-content-top .main-text .main-txt-bot {
    text-align: center;
    font-size: 3.6458333333vw;
    text-shadow: -4px -1px 0 #000, -4px 0px 0 #000, -4px 1px 0 #000, -3px -3px 0 #000, -3px -2px 0 #000, -3px -1px 0 #000, -3px 0px 0 #000, -3px 1px 0 #000, -3px 2px 0 #000, -3px 3px 0 #000, -2px -3px 0 #000, -2px -2px 0 #000, -2px -1px 0 #000, -2px 0px 0 #000, -2px 1px 0 #000, -2px 2px 0 #000, -2px 3px 0 #000, -1px -4px 0 #000, -1px -3px 0 #000, -1px -2px 0 #000, -1px -1px 0 #000, -1px 0px 0 #000, -1px 1px 0 #000, -1px 2px 0 #000, -1px 3px 0 #000, -1px 4px 0 #000, 0px -4px 0 #000, 0px -3px 0 #000, 0px -2px 0 #000, 0px -1px 0 #000, 0px 0px 0 #000, 0px 1px 0 #000, 0px 2px 0 #000, 0px 3px 0 #000, 0px 4px 0 #000, 1px -4px 0 #000, 1px -3px 0 #000, 1px -2px 0 #000, 1px -1px 0 #000, 1px 0px 0 #000, 1px 1px 0 #000, 1px 2px 0 #000, 1px 3px 0 #000, 1px 4px 0 #000, 2px -3px 0 #000, 2px -2px 0 #000, 2px -1px 0 #000, 2px 0px 0 #000, 2px 1px 0 #000, 2px 2px 0 #000, 2px 3px 0 #000, 3px -3px 0 #000, 3px -2px 0 #000, 3px -1px 0 #000, 3px 0px 0 #000, 3px 1px 0 #000, 3px 2px 0 #000, 3px 3px 0 #000, 4px -1px 0 #000, 4px 0px 0 #000, 4px 1px 0 #000;
  }
}
#main5 .main-content-top .groups {
  display: flex;
  justify-content: center;
}
@media screen and (max-width: 767px) {
  #main5 .main-content-top .groups {
    gap: 3.5714285714vw;
    margin-top: 2.2321428571vw;
  }
}
@media screen and (min-width: 768px) {
  #main5 .main-content-top .groups {
    gap: 1.25vw;
    margin-top: 0.5208333333vw;
  }
}
#main5 .main-content-top .groups .item {
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  aspect-ratio: 1;
  border-radius: 100%;
  font-weight: 900;
  font-family: "Noto Sans JP", sans-serif;
  line-height: 1.2;
  background-color: #fff;
}
@media screen and (max-width: 767px) {
  #main5 .main-content-top .groups .item {
    border: 2px solid #ffbf16;
    width: 25vw;
    font-size: 3.125vw;
  }
}
@media screen and (min-width: 768px) {
  #main5 .main-content-top .groups .item {
    border: 4px solid #ffbf16;
    width: 8.3333333333vw;
    font-size: 1.0416666667vw;
  }
}
#main5 .main-content-top .groups .item strong {
  color: #e2222d;
  font-family: "Hiragino Kaku Gothic Std", sans-serif;
  font-weight: 800;
}
@media screen and (max-width: 767px) {
  #main5 .main-content-top .groups .item strong {
    font-size: 8.1845238095vw;
  }
}
@media screen and (min-width: 768px) {
  #main5 .main-content-top .groups .item strong {
    font-size: 2.5vw;
  }
}
#main5 .main-content-top .groups .item.item01 {
  background-position: 0 0;
}
#main5 .border {
  border-style: solid;
}
@media screen and (max-width: 767px) {
  #main5 .border {
    border-width: 1.4880952381vw;
  }
}
@media screen and (min-width: 768px) {
  #main5 .border {
    border-width: 0.3125vw;
  }
}
#main5 .border-1 {
  border-color: #f5c772;
}
#main5 .border-2 {
  border-color: #fae6ae;
}
#main5 .border-3 {
  border-color: #fdf4db;
}
#main5 .main-banner {
  position: relative;
  background-color: #fff;
}
@media screen and (max-width: 767px) {
  #main5 .main-banner {
    margin: 2.2321428571vw 1.4880952381vw;
  }
}
@media screen and (min-width: 768px) {
  #main5 .main-banner {
    font-size: 1.0416666667vw;
    width: -moz-fit-content;
    width: fit-content;
    margin: 1.0416666667vw auto;
  }
  #main5 .main-banner .main-banner-content {
    padding: 0.5208333333vw 3.125vw 1.0416666667vw 4.1666666667vw;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 2.6041666667vw;
  }
  #main5 .main-banner .main-banner-content1 {
    width: 31.25vw;
  }
}
#main5 .main-banner::before {
  content: "";
  aspect-ratio: 546/750;
  display: block;
  background: url(../images/main5/girl.png) bottom right/contain no-repeat;
  position: absolute;
  right: 0;
}
@media screen and (max-width: 767px) {
  #main5 .main-banner::before {
    width: 43.1547619048vw;
    top: 0;
    transform: translateX(0%) translateY(-95%);
  }
}
@media screen and (min-width: 768px) {
  #main5 .main-banner::before {
    bottom: 0;
    width: 21.875vw;
    transform: translateX(-28%) translateY(-32%);
  }
}
#main5 .main-banner .main-banner-wrap {
  position: relative;
  background-color: #fff;
}
#main5 .main-banner .banner-box {
  display: block;
  position: relative;
  background-color: #fff;
  border: 3px solid #ffbf16;
}
@media screen and (max-width: 767px) {
  #main5 .main-banner .banner-box {
    border-radius: 2.9761904762vw;
    margin: 2.2321428571vw 1.4880952381vw;
    margin-top: 5.2083333333vw;
    padding: 5.9523809524vw 1.4880952381vw 3.7202380952vw;
  }
}
@media screen and (min-width: 768px) {
  #main5 .main-banner .banner-box {
    border-radius: 1.0416666667vw;
    font-size: 1.0416666667vw;
    margin-top: 1.0416666667vw;
    padding: 1.8229166667vw 0.5208333333vw 0.78125vw;
    filter: drop-shadow(0 -0.4rem 0.4rem rgba(0, 0, 0, 0.2509803922));
  }
}
#main5 .main-banner .banner-box .box-ttl {
  font-weight: 900;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%) translateY(-50%);
  background-color: #ffbf16;
  border: 3px solid #f2b528;
  text-align: center;
}
@media screen and (max-width: 767px) {
  #main5 .main-banner .banner-box .box-ttl {
    padding: 1.4880952381vw 4.4642857143vw;
    width: 74.4047619048vw;
    border-radius: 2.9761904762vw;
    font-size: 3.2738095238vw;
  }
}
@media screen and (min-width: 768px) {
  #main5 .main-banner .banner-box .box-ttl {
    border-radius: 0.78125vw;
    font-size: 1.25vw;
    width: 26.0416666667vw;
    filter: drop-shadow(0 -0.4rem 0.4rem rgba(0, 0, 0, 0.2509803922));
  }
}
#main5 .main-banner .banner-box .box-txt {
  font-weight: 900;
  text-align: center;
  line-height: 1.2;
}
#main5 .main-banner .banner-box .box-txt span {
  display: block;
}
@media screen and (max-width: 767px) {
  #main5 .main-banner .banner-box .box-txt span {
    font-size: 3.869047619vw;
  }
}
@media screen and (min-width: 768px) {
  #main5 .main-banner .banner-box .box-txt span {
    font-size: 1.25vw;
  }
}
#main5 .main-banner .banner-box .box-txt strong {
  color: #e2222d;
  display: block;
}
@media screen and (max-width: 767px) {
  #main5 .main-banner .banner-box .box-txt strong {
    font-size: 7.4404761905vw;
  }
}
@media screen and (min-width: 768px) {
  #main5 .main-banner .banner-box .box-txt strong {
    font-size: 2.7083333333vw;
  }
}
#main5 .main-banner .banner-branchs {
  display: flex;
  flex-wrap: wrap;
}
@media screen and (max-width: 767px) {
  #main5 .main-banner .banner-branchs {
    margin-left: -0.5208333333vw;
    margin-right: -0.5208333333vw;
  }
}
@media screen and (min-width: 768px) {
  #main5 .main-banner .banner-branchs {
    margin-left: -0.625vw;
    margin-right: -0.625vw;
    margin-top: 1.25vw;
  }
}
#main5 .main-banner .banner-branchs .branch {
  width: 50%;
  padding-left: 1.4880952381vw;
  padding-right: 1.4880952381vw;
}
@media screen and (min-width: 768px) {
  #main5 .main-banner .banner-branchs .branch {
    padding-left: 0.625vw;
    padding-right: 0.625vw;
  }
}
#main5 .main-banner .banner-branchs .branch span {
  display: block;
  text-align: center;
  color: transparent;
  background: center/contain no-repeat;
  background-color: #fff;
  width: 100%;
}
@media screen and (max-width: 767px) {
  #main5 .main-banner .banner-branchs .branch span {
    height: 10.4166666667vw;
    border: 0.4464285714vw solid #f4bf45;
    border-radius: 2.9761904762vw;
    background-size: 120%;
  }
}
@media screen and (min-width: 768px) {
  #main5 .main-banner .banner-branchs .branch span {
    height: 3.2291666667vw;
    border: 0.15625vw solid #f4bf45;
    border-radius: 1.0416666667vw;
    filter: drop-shadow(0 -0.4rem 0.4rem rgba(0, 0, 0, 0.2509803922));
  }
}
#main5 .main-banner .banner-branchs .branch span.mpay {
  background-image: url(../images/main5/mpay.png);
}
#main5 .main-banner .banner-branchs .branch span.paidy {
  background-image: url(../images/main5/paidy.png);
}
#main5 .main-banner .banner-branchs .branch span.vandle {
  background-image: url(../images/main5/vandle.png);
}
@media screen and (max-width: 767px) {
  #main5 .main-banner .banner-branchs-3-col {
    margin-left: -0.2604166667vw;
    margin-right: -0.2604166667vw;
  }
}
@media screen and (min-width: 768px) {
  #main5 .main-banner .banner-branchs-3-col {
    margin-left: -0.3125vw;
    margin-right: -0.3125vw;
  }
}
#main5 .main-banner .banner-branchs-3-col .branch {
  width: 33.3333333333%;
  padding-left: 0.744047619vw;
  padding-right: 0.744047619vw;
}
@media screen and (min-width: 768px) {
  #main5 .main-banner .banner-branchs-3-col .branch {
    padding-left: 0.3125vw;
    padding-right: 0.3125vw;
  }
}
@media screen and (max-width: 767px) {
  #main5 .main-banner .banner-branchs-3-col .branch span {
    border: 0.2976190476vw solid #f4bf45;
    border-radius: 2.2321428571vw;
  }
}
@media screen and (min-width: 768px) {
  #main5 .main-banner .banner-branchs-3-col .branch span {
    border: 0.1041666667vw solid #f4bf45;
    border-radius: 0.78125vw;
    filter: drop-shadow(0 -0.3rem 0.3rem rgba(0, 0, 0, 0.2509803922));
  }
}
#main5 .main-banner .main-banner-content2 {
  line-height: 1.6;
}
@media screen and (max-width: 767px) {
  #main5 .main-banner .main-banner-content2 {
    padding: 2.9761904762vw;
  }
}
#main5 .main-banner .main-banner-content2 .mb2-txt {
  color: #ffbf16;
  font-weight: 900;
  text-align: center;
}
@media screen and (max-width: 767px) {
  #main5 .main-banner .main-banner-content2 .mb2-txt {
    text-shadow: -1.5px -0.5px 0 #000, -1.5px 0.5px 0 #000, -0.5px -1.5px 0 #000, -0.5px -0.5px 0 #000, -0.5px 0.5px 0 #000, -0.5px 1.5px 0 #000, 0.5px -1.5px 0 #000, 0.5px -0.5px 0 #000, 0.5px 0.5px 0 #000, 0.5px 1.5px 0 #000, 1.5px -0.5px 0 #000, 1.5px 0.5px 0 #000;
    font-size: 4.1666666667vw;
  }
}
@media screen and (min-width: 768px) {
  #main5 .main-banner .main-banner-content2 .mb2-txt {
    text-shadow: -2px -1px 0 #000, -2px 0px 0 #000, -2px 1px 0 #000, -1px -2px 0 #000, -1px -1px 0 #000, -1px 0px 0 #000, -1px 1px 0 #000, -1px 2px 0 #000, 0px -2px 0 #000, 0px -1px 0 #000, 0px 0px 0 #000, 0px 1px 0 #000, 0px 2px 0 #000, 1px -2px 0 #000, 1px -1px 0 #000, 1px 0px 0 #000, 1px 1px 0 #000, 1px 2px 0 #000, 2px -1px 0 #000, 2px 0px 0 #000, 2px 1px 0 #000;
    font-size: 1.3541666667vw;
  }
}
@media screen and (max-width: 767px) {
  #main5 .main-banner .main-banner-content2 .mb2-btn {
    margin-top: 3.7202380952vw;
  }
}
@media screen and (min-width: 768px) {
  #main5 .main-banner .main-banner-content2 .mb2-btn {
    margin-top: 0.78125vw;
  }
}
#main5 .main-banner .main-banner-content2 .mb2-btn a {
  display: block;
  background-color: #e95412;
  color: #fff;
  border-radius: 14.880952381vw;
  text-align: center;
  transition: 0.3s;
  filter: drop-shadow(0 0.4rem 0.4rem rgba(0, 0, 0, 0.7019607843));
}
@media screen and (max-width: 767px) {
  #main5 .main-banner .main-banner-content2 .mb2-btn a {
    padding: 3.7202380952vw 1.4880952381vw;
  }
}
@media screen and (min-width: 768px) {
  #main5 .main-banner .main-banner-content2 .mb2-btn a {
    padding: 1.0416666667vw 0.5208333333vw;
  }
}
#main5 .main-banner .main-banner-content2 .mb2-btn a:hover {
  background-color: #f2b528;
}
#main5 .main-banner .main-banner-content2 .mb2-btn a span {
  font-weight: 900;
  display: flex;
  justify-content: center;
  align-items: center;
}
#main5 .main-banner .main-banner-content2 .mb2-btn a .btn-top {
  letter-spacing: 0.05em;
  text-shadow: -2px -1px 0 #000, -2px 0px 0 #000, -2px 1px 0 #000, -1px -2px 0 #000, -1px -1px 0 #000, -1px 0px 0 #000, -1px 1px 0 #000, -1px 2px 0 #000, 0px -2px 0 #000, 0px -1px 0 #000, 0px 0px 0 #000, 0px 1px 0 #000, 0px 2px 0 #000, 1px -2px 0 #000, 1px -1px 0 #000, 1px 0px 0 #000, 1px 1px 0 #000, 1px 2px 0 #000, 2px -1px 0 #000, 2px 0px 0 #000, 2px 1px 0 #000;
}
@media screen and (max-width: 767px) {
  #main5 .main-banner .main-banner-content2 .mb2-btn a .btn-top {
    gap: 2.380952381vw;
    font-size: 4.9107142857vw;
  }
}
@media screen and (min-width: 768px) {
  #main5 .main-banner .main-banner-content2 .mb2-btn a .btn-top {
    gap: 0.8333333333vw;
    font-size: 1.25vw;
    line-height: 1.4;
  }
}
#main5 .main-banner .main-banner-content2 .mb2-btn a .btn-top:before, #main5 .main-banner .main-banner-content2 .mb2-btn a .btn-top::after {
  content: "";
  display: block;
  background-color: #fff;
  transform-origin: center;
}
@media screen and (max-width: 767px) {
  #main5 .main-banner .main-banner-content2 .mb2-btn a .btn-top:before, #main5 .main-banner .main-banner-content2 .mb2-btn a .btn-top::after {
    height: 0.4464285714vw;
    width: 5.9523809524vw;
  }
}
@media screen and (min-width: 768px) {
  #main5 .main-banner .main-banner-content2 .mb2-btn a .btn-top:before, #main5 .main-banner .main-banner-content2 .mb2-btn a .btn-top::after {
    height: 0.15625vw;
    width: 1.5625vw;
  }
}
#main5 .main-banner .main-banner-content2 .mb2-btn a .btn-top::before {
  transform: rotate(45deg);
}
#main5 .main-banner .main-banner-content2 .mb2-btn a .btn-top::after {
  transform: rotate(-45deg);
}
@media screen and (max-width: 767px) {
  #main5 .main-banner .main-banner-content2 .mb2-btn a .btn-bot {
    gap: 2.9761904762vw;
    font-size: 7.4404761905vw;
  }
}
@media screen and (min-width: 768px) {
  #main5 .main-banner .main-banner-content2 .mb2-btn a .btn-bot {
    gap: 1.0416666667vw;
    font-size: 1.875vw;
    line-height: 1.6;
  }
}
#main5 .main-banner .main-banner-content2 .mb2-btn a .btn-bot span {
  padding-bottom: 1%;
}
#main5 .main-banner .main-banner-content2 .mb2-btn a .btn-bot:after {
  content: "";
  display: block;
  aspect-ratio: 1;
  background: url(../images/main5/btn-arrow.png) center/contain no-repeat;
}
@media screen and (max-width: 767px) {
  #main5 .main-banner .main-banner-content2 .mb2-btn a .btn-bot:after {
    width: 5.9523809524vw;
  }
}
@media screen and (min-width: 768px) {
  #main5 .main-banner .main-banner-content2 .mb2-btn a .btn-bot:after {
    width: 1.5625vw;
  }
}

.section__gift_31-45 {
  padding-top: 5rem;
  padding-bottom: 0 !important;
}
@media screen and (min-width: 768px) {
  .section__gift_31-45 {
    padding-top: 10rem;
  }
}
@media screen and (max-width: 767px) {
  .section__gift_31-45 .box-talk {
    padding-bottom: 1rem !important;
  }
}
.section__gift_31-45 ~ .section__card {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}
.section__gift_31-45 .after_title {
  text-align: center;
  font-weight: bold;
  letter-spacing: 0.1em;
  font-size: 2.4rem;
  font-feature-settings: "palt" 1;
}
@media screen and (min-width: 768px) {
  .section__gift_31-45 .after_title {
    font-size: 4rem;
  }
}
.section__gift_31-45 .after_title::before {
  content: "";
  display: block;
  aspect-ratio: 6/2;
  background-color: #fff6dd;
  -webkit-clip-path: polygon(50% 100%, 0 0, 100% 0);
          clip-path: polygon(50% 100%, 0 0, 100% 0);
  margin: 0 auto;
  margin-bottom: 1rem;
}
@media screen and (max-width: 767px) {
  .section__gift_31-45 .after_title::before {
    width: 10rem;
  }
}
@media screen and (min-width: 768px) {
  .section__gift_31-45 .after_title::before {
    width: 20rem;
  }
}
.section__gift_31-45 .after_title span {
  color: #fff;
}
@media screen and (max-width: 767px) {
  .section__gift_31-45 .after_title span {
    text-shadow: -3px -1px 0 #359442, -3px 0px 0 #359442, -3px 1px 0 #359442, -2px -2px 0 #359442, -2px -1px 0 #359442, -2px 0px 0 #359442, -2px 1px 0 #359442, -2px 2px 0 #359442, -1px -3px 0 #359442, -1px -2px 0 #359442, -1px -1px 0 #359442, -1px 0px 0 #359442, -1px 1px 0 #359442, -1px 2px 0 #359442, -1px 3px 0 #359442, 0px -3px 0 #359442, 0px -2px 0 #359442, 0px -1px 0 #359442, 0px 0px 0 #359442, 0px 1px 0 #359442, 0px 2px 0 #359442, 0px 3px 0 #359442, 1px -3px 0 #359442, 1px -2px 0 #359442, 1px -1px 0 #359442, 1px 0px 0 #359442, 1px 1px 0 #359442, 1px 2px 0 #359442, 1px 3px 0 #359442, 2px -2px 0 #359442, 2px -1px 0 #359442, 2px 0px 0 #359442, 2px 1px 0 #359442, 2px 2px 0 #359442, 3px -1px 0 #359442, 3px 0px 0 #359442, 3px 1px 0 #359442;
  }
}
@media screen and (min-width: 768px) {
  .section__gift_31-45 .after_title span {
    text-shadow: -5px -1px 0 #359442, -5px 0px 0 #359442, -5px 1px 0 #359442, -4px -3px 0 #359442, -4px -2px 0 #359442, -4px -1px 0 #359442, -4px 0px 0 #359442, -4px 1px 0 #359442, -4px 2px 0 #359442, -4px 3px 0 #359442, -3px -4px 0 #359442, -3px -3px 0 #359442, -3px -2px 0 #359442, -3px -1px 0 #359442, -3px 0px 0 #359442, -3px 1px 0 #359442, -3px 2px 0 #359442, -3px 3px 0 #359442, -3px 4px 0 #359442, -2px -4px 0 #359442, -2px -3px 0 #359442, -2px -2px 0 #359442, -2px -1px 0 #359442, -2px 0px 0 #359442, -2px 1px 0 #359442, -2px 2px 0 #359442, -2px 3px 0 #359442, -2px 4px 0 #359442, -1px -5px 0 #359442, -1px -4px 0 #359442, -1px -3px 0 #359442, -1px -2px 0 #359442, -1px -1px 0 #359442, -1px 0px 0 #359442, -1px 1px 0 #359442, -1px 2px 0 #359442, -1px 3px 0 #359442, -1px 4px 0 #359442, -1px 5px 0 #359442, 0px -5px 0 #359442, 0px -4px 0 #359442, 0px -3px 0 #359442, 0px -2px 0 #359442, 0px -1px 0 #359442, 0px 0px 0 #359442, 0px 1px 0 #359442, 0px 2px 0 #359442, 0px 3px 0 #359442, 0px 4px 0 #359442, 0px 5px 0 #359442, 1px -5px 0 #359442, 1px -4px 0 #359442, 1px -3px 0 #359442, 1px -2px 0 #359442, 1px -1px 0 #359442, 1px 0px 0 #359442, 1px 1px 0 #359442, 1px 2px 0 #359442, 1px 3px 0 #359442, 1px 4px 0 #359442, 1px 5px 0 #359442, 2px -4px 0 #359442, 2px -3px 0 #359442, 2px -2px 0 #359442, 2px -1px 0 #359442, 2px 0px 0 #359442, 2px 1px 0 #359442, 2px 2px 0 #359442, 2px 3px 0 #359442, 2px 4px 0 #359442, 3px -4px 0 #359442, 3px -3px 0 #359442, 3px -2px 0 #359442, 3px -1px 0 #359442, 3px 0px 0 #359442, 3px 1px 0 #359442, 3px 2px 0 #359442, 3px 3px 0 #359442, 3px 4px 0 #359442, 4px -3px 0 #359442, 4px -2px 0 #359442, 4px -1px 0 #359442, 4px 0px 0 #359442, 4px 1px 0 #359442, 4px 2px 0 #359442, 4px 3px 0 #359442, 5px -1px 0 #359442, 5px 0px 0 #359442, 5px 1px 0 #359442;
  }
}

.singal-031-045 {
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto;
  border: 0.3rem solid #ffbf16;
  padding: 1rem;
  border-radius: 1rem;
}
.singal-031-045 .txt_after {
  font-weight: bold;
}
@media screen and (max-width: 767px) {
  .singal-031-045 .txt_after {
    font-size: 4.0178571429vw;
    padding-top: 2rem;
  }
}
@media screen and (min-width: 768px) {
  .singal-031-045 .txt_after {
    padding-top: 2rem;
    padding-bottom: 2rem;
    text-align: center;
  }
}

#main5.main-031-045 .main-content-top .main-text .main-txt-top {
  background-image: url(../images/main-031-045/txt_top.png);
}