@charset "utf-8";

.m1p {
  font-family: "M PLUS 1p", sans-serif;
  font-weight: 400;
  font-style: normal;
}

.w400 {
  font-weight: 400 !important;
}

.w500 {
  font-weight: 500 !important;
}


.w600 {
  font-weight: 600 !important;
}

.w700 {
  font-weight: 700 !important;
}

.w900 {
  font-weight: 900 !important;
}

* {
  line-height: 1;
}

h1, h2, h3, h4, h5, h6 {
  margin: 0;
  text-align: center;
}

body {
  margin: 0;
  white-space: nowrap;
  overflow-x: hidden;
}

html {
  font-size: 0.6666666667px;
}

img {
  display: block;
  width: 100% ;
  user-select: none ;
  -moz-user-select: none ;
  -webkit-user-select: none ;
  -ms-user-select: none ;
	-webkit-user-drag: none ;
	-moz-user-drag: none ;
  -ms-user-drag: none ;
  -webkit-touch-callout: none ;
  -moz-touch-callout: none ;
}

main {
  position: relative ;
  width: 1280px;
  margin: 0 auto ;
}

main > section,
main > div {
  position: relative ;
}

br.phone {
  display: none;
}

br.pc {
  display: block;
}

.hero .icon {
  position: absolute;
  top: 2%;
  left: 2%;
  width: 640rem;
  z-index: 1;
}

.hero .text-box {
  position: absolute;
  top: 0;
  width: 100%;
  height: 100%;
}

.hero .text1 {
  font-size: 111.66rem;
  color: #bf0400;
  transform: rotate(-5.46deg);
  position: absolute;
  top: 19%;
  left: 16%
}

.hero .text1 .small {
  font-size: 78.72rem;
}

.hero h1 {
  font-size: 128.47rem;
  font-style: italic;
  color: #fff;
  margin-top: 3.5em;
  text-shadow: 0.0217em 0 0.03em #bc0000, -0.0217em 0 0.03em #bc0000, 0 0.0217em 0.03em #bc0000, 0 -0.0217em 0.03em #bc0000, 0.01525em 0.01525em 0.03em #bc0000, -0.01525em -0.01525em 0.03em #bc0000, 0.01525em -0.01525em 0.03em #bc0000, -0.01525em 0.01525em 0.03em #bc0000, 0.0217em 0.0217em 0.03em #bc0000, -0.0217em -0.0217em 0.03em #bc0000, 0.0217em -0.0217em 0.03em #bc0000, -0.0217em 0.0217em 0.03em #bc0000, 0.01075em 0.01525em 0.03em #bc0000, -0.01075em -0.01525em 0.03em #bc0000, 0.01075em -0.01525em 0.03em #bc0000, -0.01075em 0.01525em 0.03em #bc0000, 0.01525em 0.01075em 0.03em #bc0000, -0.01525em -0.01075em 0.03em #bc0000, 0.01525em -0.01075em 0.03em #bc0000, -0.01525em 0.01075em 0.03em #bc0000, 0.01075em 0.0217em 0.03em #bc0000, -0.01075em -0.0217em 0.03em #bc0000, 0.01075em -0.0217em 0.03em #bc0000, -0.01075em 0.0217em 0.03em #bc0000, 0.0217em 0.01075em 0.03em #bc0000, -0.0217em -0.01075em 0.03em #bc0000, 0.0217em -0.01075em 0.03em #bc0000, -0.0217em 0.01075em 0.03em #bc0000, 0.0868em 0 0.2em #d9050525, -0.0868em 0 0.2em #d9050525, 0 0.0868em 0.2em #d9050525, 0 -0.0868em 0.2em #d9050525, 0.061em 0.061em 0.2em #d9050525, -0.061em -0.061em 0.2em #d9050525, 0.061em -0.061em 0.2em #d9050525, -0.061em 0.061em 0.2em #d9050525, 0.0868em 0.0868em 0.2em #d9050525, -0.0868em -0.0868em 0.2em #d9050525, 0.0868em -0.0868em 0.2em #d9050525, -0.0868em 0.0868em 0.2em #d9050525, 0.043em 0.061em 0.2em #d9050525, -0.043em -0.061em 0.2em #d9050525, 0.043em -0.061em 0.2em #d9050525, -0.043em 0.061em 0.2em #d9050525, 0.061em 0.043em 0.2em #d9050525, -0.061em -0.043em 0.2em #d9050525, 0.061em -0.043em 0.2em #d9050525, -0.061em 0.043em 0.2em #d9050525, 0.043em 0.0868em 0.2em #d9050525, -0.043em -0.0868em 0.2em #d9050525, 0.043em -0.0868em 0.2em #d9050525, -0.043em 0.0868em 0.2em #d9050525, 0.0868em 0.043em 0.2em #d9050525, -0.0868em -0.043em 0.2em #d9050525, 0.0868em -0.043em 0.2em #d9050525, -0.0868em 0.043em 0.2em #d9050525;
}

.hero .text2 {
  color: #bf0400;
  text-align: center;
  margin-top: 2%;
}

.hero .text2 .top {
  font-size:  88.89rem;
  line-height: 1.3;
  text-shadow: 0.0217em 0 0.1em #fff, -0.0217em 0 0.1em #fff, 0 0.0217em 0.1em #fff, 0 -0.0217em 0.1em #fff, 0.01525em 0.01525em 0.1em #fff, -0.01525em -0.01525em 0.1em #fff, 0.01525em -0.01525em 0.1em #fff, -0.01525em 0.01525em 0.1em #fff, 0.0217em 0.0217em 0.1em #fff, -0.0217em -0.0217em 0.1em #fff, 0.0217em -0.0217em 0.1em #fff, -0.0217em 0.0217em 0.1em #fff, 0.01075em 0.01525em 0.1em #fff, -0.01075em -0.01525em 0.1em #fff, 0.01075em -0.01525em 0.1em #fff, -0.01075em 0.01525em 0.1em #fff, 0.01525em 0.01075em 0.1em #fff, -0.01525em -0.01075em 0.1em #fff, 0.01525em -0.01075em 0.1em #fff, -0.01525em 0.01075em 0.1em #fff, 0.01075em 0.0217em 0.1em #fff, -0.01075em -0.0217em 0.1em #fff, 0.01075em -0.0217em 0.1em #fff, -0.01075em 0.0217em 0.1em #fff, 0.0217em 0.01075em 0.1em #fff, -0.0217em -0.01075em 0.1em #fff, 0.0217em -0.01075em 0.1em #fff, -0.0217em 0.01075em 0.1em #fff;
}

.hero .text2 .bottom {
  font-size:  80.93rem;
  text-shadow: 0.0217em 0 0.1em #fff, -0.0217em 0 0.1em #fff, 0 0.0217em 0.1em #fff, 0 -0.0217em 0.1em #fff, 0.01525em 0.01525em 0.1em #fff, -0.01525em -0.01525em 0.1em #fff, 0.01525em -0.01525em 0.1em #fff, -0.01525em 0.01525em 0.1em #fff, 0.0217em 0.0217em 0.1em #fff, -0.0217em -0.0217em 0.1em #fff, 0.0217em -0.0217em 0.1em #fff, -0.0217em 0.0217em 0.1em #fff, 0.01075em 0.01525em 0.1em #fff, -0.01075em -0.01525em 0.1em #fff, 0.01075em -0.01525em 0.1em #fff, -0.01075em 0.01525em 0.1em #fff, 0.01525em 0.01075em 0.1em #fff, -0.01525em -0.01075em 0.1em #fff, 0.01525em -0.01075em 0.1em #fff, -0.01525em 0.01075em 0.1em #fff, 0.01075em 0.0217em 0.1em #fff, -0.01075em -0.0217em 0.1em #fff, 0.01075em -0.0217em 0.1em #fff, -0.01075em 0.0217em 0.1em #fff, 0.0217em 0.01075em 0.1em #fff, -0.0217em -0.01075em 0.1em #fff, 0.0217em -0.01075em 0.1em #fff, -0.0217em 0.01075em 0.1em #fff;
}

.hero .text2 .small {
  font-size:  66.67rem;
}

.hero .text2 .big {
  font-size:  133.33rem;
}

.about01 {
  padding: 3% 0 9%;
}

.about01 .bg-container {
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 100vw;
  height: 100%;
  background: linear-gradient(to right, #ffd200, #3dc600);
  z-index: -1;
}

.about01 .h1-container {
  position: relative;
}

.about01 h1 {
  color: #fff;
  position: absolute;
  top: 21%;
  left: 38%;
  text-align: left;
}

.about01 h1 .top {
  font-size: 44.44rem;
}

.about01 h1 .bottom {
  font-size: 63.2rem;
  line-height: 1.2;
}

.about01 .list {
  margin-top: 3%;
}

.about01 .list .text-box {
  width: 1525rem;
  margin: 0 auto;
  padding: 3% 0;
  background-color: #fff;
  display: flex;
  align-items: center;
}

.about01 .list .text-box .number {
  font-size: 224.92rem;
  color: #bf0400;
  font-style: italic;
  margin: 0 3%;
}

.about01 .list .text-box .text {
  font-size: 33.33rem;
  line-height: 1.6;
  letter-spacing: -0.07em;
}

.about01 .list .text-box.center {
  margin: 9% auto;
  transform: translateX(2.5%);
  flex-direction: row-reverse;
}

.about01 .list .text-box.center .number {
  transform: translateX(-50%);
}

.about01 .img02 {
  position: absolute;
  width: 628rem;
  top: 33%;
  left: 64%;
}

.about01 .img03 {
  position: absolute;
  width: 459rem;
  top: 56%;
  left: 4%;
}

.about01 .img04 {
  position: absolute;
  width: 330rem;
  top: 82%;
  left: 81%;
}

.about02 {
  padding-bottom: 5%;
}

.about02 .bg-container {
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 100vw;
  height: 100%;
  background-color: #2f9400;
  z-index: -1;
}

.about02 .h1-container {
  position: relative;
  transform: translateY(-17%);
}

.about02 h1 {
  font-size: 53.75rem;
  position: absolute;
  top: 51%;
  left: 43%;
}

.about02 .list {
  width: 1388rem;
  margin: 0 auto;
}

.about02 .list .items.center {
  margin: 6% 0;
}

.about02 .list .items .q-box,
.about02 .list .items .a-box {
  display: flex;
  align-items: center;
  padding: 3% 0;
}

.about02 .list .items .a-box {
  background-color: #fff;
}

.about02 .list .items .text1 {
  font-size: 126.4rem;
  margin: 0 4%;
}

.about02 .list .items .q-box .text1 {
  color: #fff;
  transform: translateY(-10%);
}

.about02 .list .items .a-box .text1 {
  color: #bf0400;
}

.about02 .list .items .q-box .text2 {
  font-size: 44.44rem;
  line-height: 1.5;
  letter-spacing: -0.07em;
  color: #fff;
}

.about02 .list .items .a-box .text2 {
  font-size: 33.33rem;
  line-height: 1.8;
  letter-spacing: -0.07em;
}

.about03 .h1-container,
.about04 .h1-container {
  position: relative;
}

.about03 .h1-container::before,
.about04 .h1-container::before {
  content: "";
  position: absolute;
  left: 50%;
  bottom: 0;
  transform: translate(-50%, 97%);
  display: block;
  width: 172rem;
  height: 84rem;
  background-color: #c5282b;
  clip-path: polygon(50% 100%, 0% 0%, 100% 0%);
}

.about03 h1 {
  color: #fff;
  position: absolute;
  top: 21%;
  left: 32%;
  text-align: left;
}

.about03 h1 .top {
  font-size: 74.91rem;
  text-shadow: 0.0868em 0 0.2em #59000020, -0.0868em 0 0.2em #59000020, 0 0.0868em 0.2em #59000020, 0 -0.0868em 0.2em #59000020, 0.061em 0.061em 0.2em #59000020, -0.061em -0.061em 0.2em #59000020, 0.061em -0.061em 0.2em #59000020, -0.061em 0.061em 0.2em #59000020, 0.0868em 0.0868em 0.2em #59000020, -0.0868em -0.0868em 0.2em #59000020, 0.0868em -0.0868em 0.2em #59000020, -0.0868em 0.0868em 0.2em #59000020, 0.043em 0.061em 0.2em #59000020, -0.043em -0.061em 0.2em #59000020, 0.043em -0.061em 0.2em #59000020, -0.043em 0.061em 0.2em #59000020, 0.061em 0.043em 0.2em #59000020, -0.061em -0.043em 0.2em #59000020, 0.061em -0.043em 0.2em #59000020, -0.061em 0.043em 0.2em #59000020, 0.043em 0.0868em 0.2em #59000020, -0.043em -0.0868em 0.2em #59000020, 0.043em -0.0868em 0.2em #59000020, -0.043em 0.0868em 0.2em #59000020, 0.0868em 0.043em 0.2em #59000020, -0.0868em -0.043em 0.2em #59000020, 0.0868em -0.043em 0.2em #59000020, -0.0868em 0.043em 0.2em #59000020;
}

.about03 h1 .bottom {
  font-size: 88.89rem;
  line-height: 1.5;
  text-shadow: 0.0868em 0 0.2em #59000020, -0.0868em 0 0.2em #59000020, 0 0.0868em 0.2em #59000020, 0 -0.0868em 0.2em #59000020, 0.061em 0.061em 0.2em #59000020, -0.061em -0.061em 0.2em #59000020, 0.061em -0.061em 0.2em #59000020, -0.061em 0.061em 0.2em #59000020, 0.0868em 0.0868em 0.2em #59000020, -0.0868em -0.0868em 0.2em #59000020, 0.0868em -0.0868em 0.2em #59000020, -0.0868em 0.0868em 0.2em #59000020, 0.043em 0.061em 0.2em #59000020, -0.043em -0.061em 0.2em #59000020, 0.043em -0.061em 0.2em #59000020, -0.043em 0.061em 0.2em #59000020, 0.061em 0.043em 0.2em #59000020, -0.061em -0.043em 0.2em #59000020, 0.061em -0.043em 0.2em #59000020, -0.061em 0.043em 0.2em #59000020, 0.043em 0.0868em 0.2em #59000020, -0.043em -0.0868em 0.2em #59000020, 0.043em -0.0868em 0.2em #59000020, -0.043em 0.0868em 0.2em #59000020, 0.0868em 0.043em 0.2em #59000020, -0.0868em -0.043em 0.2em #59000020, 0.0868em -0.043em 0.2em #59000020, -0.0868em 0.043em 0.2em #59000020;
}

.about03 .img02 img {
  position: absolute;
  margin-top: -6.8%;
  margin-left: 75%;
  width: 434rem;
}

.about03 .text1 {
  font-size: 73.2rem;
  line-height: 1.3;
  letter-spacing: 0.05em;
  margin-top: 4.5%;
  margin-left: 12.5%;
  position: relative;
  text-shadow: 0.0217em 0 0.05em #fff, -0.0217em 0 0.05em #fff, 0 0.0217em 0.05em #fff, 0 -0.0217em 0.05em #fff, 0.01525em 0.01525em 0.05em #fff, -0.01525em -0.01525em 0.05em #fff, 0.01525em -0.01525em 0.05em #fff, -0.01525em 0.01525em 0.05em #fff, 0.0217em 0.0217em 0.05em #fff, -0.0217em -0.0217em 0.05em #fff, 0.0217em -0.0217em 0.05em #fff, -0.0217em 0.0217em 0.05em #fff, 0.01075em 0.01525em 0.05em #fff, -0.01075em -0.01525em 0.05em #fff, 0.01075em -0.01525em 0.05em #fff, -0.01075em 0.01525em 0.05em #fff, 0.01525em 0.01075em 0.05em #fff, -0.01525em -0.01075em 0.05em #fff, 0.01525em -0.01075em 0.05em #fff, -0.01525em 0.01075em 0.05em #fff, 0.01075em 0.0217em 0.05em #fff, -0.01075em -0.0217em 0.05em #fff, 0.01075em -0.0217em 0.05em #fff, -0.01075em 0.0217em 0.05em #fff, 0.0217em 0.01075em 0.05em #fff, -0.0217em -0.01075em 0.05em #fff, 0.0217em -0.01075em 0.05em #fff, -0.0217em 0.01075em 0.05em #fff, 0.0868em 0 0.2em #55555520, -0.0868em 0 0.2em #55555520, 0 0.0868em 0.2em #55555520, 0 -0.0868em 0.2em #55555520, 0.061em 0.061em 0.2em #55555520, -0.061em -0.061em 0.2em #55555520, 0.061em -0.061em 0.2em #55555520, -0.061em 0.061em 0.2em #55555520, 0.0868em 0.0868em 0.2em #55555520, -0.0868em -0.0868em 0.2em #55555520, 0.0868em -0.0868em 0.2em #55555520, -0.0868em 0.0868em 0.2em #55555520, 0.043em 0.061em 0.2em #55555520, -0.043em -0.061em 0.2em #55555520, 0.043em -0.061em 0.2em #55555520, -0.043em 0.061em 0.2em #55555520, 0.061em 0.043em 0.2em #55555520, -0.061em -0.043em 0.2em #55555520, 0.061em -0.043em 0.2em #55555520, -0.061em 0.043em 0.2em #55555520, 0.043em 0.0868em 0.2em #55555520, -0.043em -0.0868em 0.2em #55555520, 0.043em -0.0868em 0.2em #55555520, -0.043em 0.0868em 0.2em #55555520, 0.0868em 0.043em 0.2em #55555520, -0.0868em -0.043em 0.2em #55555520, 0.0868em -0.043em 0.2em #55555520, -0.0868em 0.043em 0.2em #55555520;
}

.about03 .text1 .big {
  font-size: 109.8rem;
}

.about03 .text1 .green {
  color: #06c755;
}

.about03 .img03 img {
  padding: 4% 0 5%;
}

.about04 h1 {
  color: #fff;
  position: absolute;
  top: 17%;
  left: 32%;
  text-align: left;
}

.about04 h1 .top {
  font-size: 50rem;
  text-shadow: 0.0868em 0 0.2em #59000020, -0.0868em 0 0.2em #59000020, 0 0.0868em 0.2em #59000020, 0 -0.0868em 0.2em #59000020, 0.061em 0.061em 0.2em #59000020, -0.061em -0.061em 0.2em #59000020, 0.061em -0.061em 0.2em #59000020, -0.061em 0.061em 0.2em #59000020, 0.0868em 0.0868em 0.2em #59000020, -0.0868em -0.0868em 0.2em #59000020, 0.0868em -0.0868em 0.2em #59000020, -0.0868em 0.0868em 0.2em #59000020, 0.043em 0.061em 0.2em #59000020, -0.043em -0.061em 0.2em #59000020, 0.043em -0.061em 0.2em #59000020, -0.043em 0.061em 0.2em #59000020, 0.061em 0.043em 0.2em #59000020, -0.061em -0.043em 0.2em #59000020, 0.061em -0.043em 0.2em #59000020, -0.061em 0.043em 0.2em #59000020, 0.043em 0.0868em 0.2em #59000020, -0.043em -0.0868em 0.2em #59000020, 0.043em -0.0868em 0.2em #59000020, -0.043em 0.0868em 0.2em #59000020, 0.0868em 0.043em 0.2em #59000020, -0.0868em -0.043em 0.2em #59000020, 0.0868em -0.043em 0.2em #59000020, -0.0868em 0.043em 0.2em #59000020;
}

.about04 h1 .center {
  font-size: 61.11rem;
  line-height: 1.5;
  text-shadow: 0.0868em 0 0.2em #59000020, -0.0868em 0 0.2em #59000020, 0 0.0868em 0.2em #59000020, 0 -0.0868em 0.2em #59000020, 0.061em 0.061em 0.2em #59000020, -0.061em -0.061em 0.2em #59000020, 0.061em -0.061em 0.2em #59000020, -0.061em 0.061em 0.2em #59000020, 0.0868em 0.0868em 0.2em #59000020, -0.0868em -0.0868em 0.2em #59000020, 0.0868em -0.0868em 0.2em #59000020, -0.0868em 0.0868em 0.2em #59000020, 0.043em 0.061em 0.2em #59000020, -0.043em -0.061em 0.2em #59000020, 0.043em -0.061em 0.2em #59000020, -0.043em 0.061em 0.2em #59000020, 0.061em 0.043em 0.2em #59000020, -0.061em -0.043em 0.2em #59000020, 0.061em -0.043em 0.2em #59000020, -0.061em 0.043em 0.2em #59000020, 0.043em 0.0868em 0.2em #59000020, -0.043em -0.0868em 0.2em #59000020, 0.043em -0.0868em 0.2em #59000020, -0.043em 0.0868em 0.2em #59000020, 0.0868em 0.043em 0.2em #59000020, -0.0868em -0.043em 0.2em #59000020, 0.0868em -0.043em 0.2em #59000020, -0.0868em 0.043em 0.2em #59000020;
}

.about04 h1 .bottom {
  font-size: 88.89rem;
  text-shadow: 0.0868em 0 0.2em #59000020, -0.0868em 0 0.2em #59000020, 0 0.0868em 0.2em #59000020, 0 -0.0868em 0.2em #59000020, 0.061em 0.061em 0.2em #59000020, -0.061em -0.061em 0.2em #59000020, 0.061em -0.061em 0.2em #59000020, -0.061em 0.061em 0.2em #59000020, 0.0868em 0.0868em 0.2em #59000020, -0.0868em -0.0868em 0.2em #59000020, 0.0868em -0.0868em 0.2em #59000020, -0.0868em 0.0868em 0.2em #59000020, 0.043em 0.061em 0.2em #59000020, -0.043em -0.061em 0.2em #59000020, 0.043em -0.061em 0.2em #59000020, -0.043em 0.061em 0.2em #59000020, 0.061em 0.043em 0.2em #59000020, -0.061em -0.043em 0.2em #59000020, 0.061em -0.043em 0.2em #59000020, -0.061em 0.043em 0.2em #59000020, 0.043em 0.0868em 0.2em #59000020, -0.043em -0.0868em 0.2em #59000020, 0.043em -0.0868em 0.2em #59000020, -0.043em 0.0868em 0.2em #59000020, 0.0868em 0.043em 0.2em #59000020, -0.0868em -0.043em 0.2em #59000020, 0.0868em -0.043em 0.2em #59000020, -0.0868em 0.043em 0.2em #59000020;
}

.about04 .yellow-bg {
  position: relative;
  width: 100vw;
  left: 50%;
  transform: translateX(-50%);
  padding: 5.5% 0;
  background-color: #feffd2;
}

.about04 .line-container {
  width: 1280rem;
  height: 166rem;
  margin: 0 auto;
  text-decoration: none;
  background-color: #00c300;
  display: flex;
  justify-content: center;
  box-shadow: 0 0 8rem #000;
}

.about04 .line-container .text {
  font-size: 74.91rem;
  color: #fff;
  display: flex;
  align-items: center;
  z-index: 1;
  text-shadow: 0.0868em 0 0.05em #33333310, -0.0868em 0 0.05em #33333310, 0 0.0868em 0.05em #33333310, 0 -0.0868em 0.05em #33333310, 0.061em 0.061em 0.05em #33333310, -0.061em -0.061em 0.05em #33333310, 0.061em -0.061em 0.05em #33333310, -0.061em 0.061em 0.05em #33333310, 0.0868em 0.0868em 0.05em #33333310, -0.0868em -0.0868em 0.05em #33333310, 0.0868em -0.0868em 0.05em #33333310, -0.0868em 0.0868em 0.05em #33333310, 0.043em 0.061em 0.05em #33333310, -0.043em -0.061em 0.05em #33333310, 0.043em -0.061em 0.05em #33333310, -0.043em 0.061em 0.05em #33333310, 0.061em 0.043em 0.05em #33333310, -0.061em -0.043em 0.05em #33333310, 0.061em -0.043em 0.05em #33333310, -0.061em 0.043em 0.05em #33333310, 0.043em 0.0868em 0.05em #33333310, -0.043em -0.0868em 0.05em #33333310, 0.043em -0.0868em 0.05em #33333310, -0.043em 0.0868em 0.05em #33333310, 0.0868em 0.043em 0.05em #33333310, -0.0868em -0.043em 0.05em #33333310, 0.0868em -0.043em 0.05em #33333310, -0.0868em 0.043em 0.05em #33333310;
}

.about04 .line-container .text .yellow {
  color: #fcff64;
}

.about04 .line-container img {
  display: inline;
  width: 137rem;
  z-index: -1;
}

.about04 .red-bg {
  position: relative;
  width: 100vw;
  left: 50%;
  transform: translateX(-50%);
  padding: 1%;
  box-sizing: border-box;
  background-color: #bd1916;
}

.about04 .red-bg .flex {
  width: 1860rem;
  box-sizing: border-box;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.about04 .red-bg .desc {
  color: #fff;
  display: flex;
  flex-direction: column;
  text-align: center;
  padding-left: 2%;
}

.about04 .red-bg .desc .text1 {
  font-size: 74.91rem;
  line-height: 1.5;
  text-shadow: 0.0868em 0 0.2em #59000010, -0.0868em 0 0.2em #59000010, 0 0.0868em 0.2em #59000010, 0 -0.0868em 0.2em #59000010, 0.061em 0.061em 0.2em #59000010, -0.061em -0.061em 0.2em #59000010, 0.061em -0.061em 0.2em #59000010, -0.061em 0.061em 0.2em #59000010, 0.0868em 0.0868em 0.2em #59000010, -0.0868em -0.0868em 0.2em #59000010, 0.0868em -0.0868em 0.2em #59000010, -0.0868em 0.0868em 0.2em #59000010, 0.043em 0.061em 0.2em #59000010, -0.043em -0.061em 0.2em #59000010, 0.043em -0.061em 0.2em #59000010, -0.043em 0.061em 0.2em #59000010, 0.061em 0.043em 0.2em #59000010, -0.061em -0.043em 0.2em #59000010, 0.061em -0.043em 0.2em #59000010, -0.061em 0.043em 0.2em #59000010, 0.043em 0.0868em 0.2em #59000010, -0.043em -0.0868em 0.2em #59000010, 0.043em -0.0868em 0.2em #59000010, -0.043em 0.0868em 0.2em #59000010, 0.0868em 0.043em 0.2em #59000010, -0.0868em -0.043em 0.2em #59000010, 0.0868em -0.043em 0.2em #59000010, -0.0868em 0.043em 0.2em #59000010;
}

.about04 .red-bg .desc .text2 {
  font-size: 54.44rem;
}

.about04 .red-bg .desc .text2 .bg {
  font-size: 30.99rem;
  text-align: center;
  color: #bd1916;
  display: inline-block;
  padding: 0.2em 0.45em;
  background-color: #fff;
  border-radius: 9rem;
  transform: translateY(-15%);
}

.about04 .red-bg .tell {
  font-size: 105.33rem;
  letter-spacing: -0.03em;
  width: 1156rem;
  height: 300rem;
  background-color: #fff;
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
}

.about04 .red-bg .tell::before {
  content: "";
  position: absolute;
  top: 0;
  left: -1px;
  display: block;
  width: 90rem;
  height: 300rem;
  background-color: #bd1916;
  clip-path: polygon(0% 0%, 100% 50%, 0% 100%);
}

.about04 .red-bg .tell a {
  display: flex;
  justify-content: center;
  align-items: center;
  color: #000;
  text-decoration: none;
}

.about04 .red-bg .tell img {
  display: inline;
  width: 127rem;
  padding-left: 5%;
  padding-right: 2%;
}

.about05 h1 {
  font-size: 75rem;
  letter-spacing: -0.05em;
  position: absolute;
  top: 11%;
  left: 27%;
  text-shadow: 0.0217em 0 0.08em #fff, -0.0217em 0 0.08em #fff, 0 0.0217em 0.08em #fff, 0 -0.0217em 0.08em #fff, 0.01525em 0.01525em 0.08em #fff, -0.01525em -0.01525em 0.08em #fff, 0.01525em -0.01525em 0.08em #fff, -0.01525em 0.01525em 0.08em #fff, 0.0217em 0.0217em 0.08em #fff, -0.0217em -0.0217em 0.08em #fff, 0.0217em -0.0217em 0.08em #fff, -0.0217em 0.0217em 0.08em #fff, 0.01075em 0.01525em 0.08em #fff, -0.01075em -0.01525em 0.08em #fff, 0.01075em -0.01525em 0.08em #fff, -0.01075em 0.01525em 0.08em #fff, 0.01525em 0.01075em 0.08em #fff, -0.01525em -0.01075em 0.08em #fff, 0.01525em -0.01075em 0.08em #fff, -0.01525em 0.01075em 0.08em #fff, 0.01075em 0.0217em 0.08em #fff, -0.01075em -0.0217em 0.08em #fff, 0.01075em -0.0217em 0.08em #fff, -0.01075em 0.0217em 0.08em #fff, 0.0217em 0.01075em 0.08em #fff, -0.0217em -0.01075em 0.08em #fff, 0.0217em -0.01075em 0.08em #fff, -0.0217em 0.01075em 0.08em #fff, 0.0868em 0 0.15em #55555520, -0.0868em 0 0.15em #55555520, 0 0.0868em 0.15em #55555520, 0 -0.0868em 0.15em #55555520, 0.061em 0.061em 0.15em #55555520, -0.061em -0.061em 0.15em #55555520, 0.061em -0.061em 0.15em #55555520, -0.061em 0.061em 0.15em #55555520, 0.0868em 0.0868em 0.15em #55555520, -0.0868em -0.0868em 0.15em #55555520, 0.0868em -0.0868em 0.15em #55555520, -0.0868em 0.0868em 0.15em #55555520, 0.043em 0.061em 0.15em #55555520, -0.043em -0.061em 0.15em #55555520, 0.043em -0.061em 0.15em #55555520, -0.043em 0.061em 0.15em #55555520, 0.061em 0.043em 0.15em #55555520, -0.061em -0.043em 0.15em #55555520, 0.061em -0.043em 0.15em #55555520, -0.061em 0.043em 0.15em #55555520, 0.043em 0.0868em 0.15em #55555520, -0.043em -0.0868em 0.15em #55555520, 0.043em -0.0868em 0.15em #55555520, -0.043em 0.0868em 0.15em #55555520, 0.0868em 0.043em 0.15em #55555520, -0.0868em -0.043em 0.15em #55555520, 0.0868em -0.043em 0.15em #55555520, -0.0868em 0.043em 0.15em #55555520;
}

.about05 .insta-container {
  position: relative;
  width: 100%;
  height: 307rem;
  display: flex;
  justify-content: center;
  align-items: center;
}

.about05 .img03 {
  position: absolute;
}

.about05 a {
  position: relative;
  width: 674rem;
}

.banner {
  position: fixed;
  bottom: 1.5%;
  left: 50%;
  transform: translateX(-50%);
  width: 1545rem;
  height: 200rem;
  background-color: #fff;
  border-radius: 27rem;
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 999;
}

.banner .line {
  margin-right: 4%;
}

.banner .line img {
  width: 827rem;
  box-shadow: 0 0 12rem #000;
}

.banner .tell img {
  width: 575rem;
  border-radius: 14rem;
  box-shadow: 0 0 12rem #000;
}

footer .text-box {
  font-size: 27.78rem;
  line-height: 2;
  color: #fff;
  text-align: center;
  padding: 20rem 0 250rem;
  background-color: #171717;
}

@media (max-width: 1280px) {
  html {
    font-size: calc(100vw / 1920) !important;
  }

  main, footer {
    width: 100% !important;
  }
  
}

@media (min-width: 769px) {
  .hero .img01,
  .about03 .img01,
  .about04 .img01,
  .about05 .img03 {
    position: absolute;
    top: 0;
    left: 50%;
    width: 100vw;
    height: 100%;
    transform: translateX(-50%);
    z-index: -1;
  }
  
  .hero .img01 img,
  .about03 .img01 img,
  .about04 .img01 img,
  .about05 .img03 img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
  
}

@media (max-width: 768px) {
  html {
    font-size: calc(100vw / 1280) !important;
  }

  main, footer {
    width: 100% !important;
  }

  br.phone {
    display: block;
  }

  br.pc {
    display: none;
  }

  .hero .img02,
  .about03 .img04 img,
  .about04 .img04 img {
    display: none;
  }

  .hero .text1 {
    top: 11%;
    left: 11.5%;
  }

  .hero h1 {
    font-size: 153.15rem;
    line-height: 1.6;
    margin-top: 2.35em;
    text-shadow: 0.0217em 0 0.03em #bc0000, -0.0217em 0 0.03em #bc0000, 0 0.0217em 0.03em #bc0000, 0 -0.0217em 0.03em #bc0000, 0.01525em 0.01525em 0.03em #bc0000, -0.01525em -0.01525em 0.03em #bc0000, 0.01525em -0.01525em 0.03em #bc0000, -0.01525em 0.01525em 0.03em #bc0000, 0.0217em 0.0217em 0.03em #bc0000, -0.0217em -0.0217em 0.03em #bc0000, 0.0217em -0.0217em 0.03em #bc0000, -0.0217em 0.0217em 0.03em #bc0000, 0.01075em 0.01525em 0.03em #bc0000, -0.01075em -0.01525em 0.03em #bc0000, 0.01075em -0.01525em 0.03em #bc0000, -0.01075em 0.01525em 0.03em #bc0000, 0.01525em 0.01075em 0.03em #bc0000, -0.01525em -0.01075em 0.03em #bc0000, 0.01525em -0.01075em 0.03em #bc0000, -0.01525em 0.01075em 0.03em #bc0000, 0.01075em 0.0217em 0.03em #bc0000, -0.01075em -0.0217em 0.03em #bc0000, 0.01075em -0.0217em 0.03em #bc0000, -0.01075em 0.0217em 0.03em #bc0000, 0.0217em 0.01075em 0.03em #bc0000, -0.0217em -0.01075em 0.03em #bc0000, 0.0217em -0.01075em 0.03em #bc0000, -0.0217em 0.01075em 0.03em #bc0000, 0.0868em 0 0.07em #d9050515, -0.0868em 0 0.07em #d9050515, 0 0.0868em 0.07em #d9050515, 0 -0.0868em 0.07em #d9050515, 0.061em 0.061em 0.07em #d9050515, -0.061em -0.061em 0.07em #d9050515, 0.061em -0.061em 0.07em #d9050515, -0.061em 0.061em 0.07em #d9050515, 0.0868em 0.0868em 0.07em #d9050515, -0.0868em -0.0868em 0.07em #d9050515, 0.0868em -0.0868em 0.07em #d9050515, -0.0868em 0.0868em 0.07em #d9050515, 0.043em 0.061em 0.07em #d9050515, -0.043em -0.061em 0.07em #d9050515, 0.043em -0.061em 0.07em #d9050515, -0.043em 0.061em 0.07em #d9050515, 0.061em 0.043em 0.07em #d9050515, -0.061em -0.043em 0.07em #d9050515, 0.061em -0.043em 0.07em #d9050515, -0.061em 0.043em 0.07em #d9050515, 0.043em 0.0868em 0.07em #d9050515, -0.043em -0.0868em 0.07em #d9050515, 0.043em -0.0868em 0.07em #d9050515, -0.043em 0.0868em 0.07em #d9050515, 0.0868em 0.043em 0.07em #d9050515, -0.0868em -0.043em 0.07em #d9050515, 0.0868em -0.043em 0.07em #d9050515, -0.0868em 0.043em 0.07em #d9050515;
  }

  .hero h1 .big-phone {
    font-size: 188.5rem;
  }

  .hero .text2 {
    margin-top: 3%;
  }
  
  .hero .text2 .bottom {
    letter-spacing: -0.05em;
    line-height: 1.6;
    display: inline-block;
    margin-top: 1%;
  }

  .about01 {
    padding: 5% 0 25%;
  }

  .about01 h1 {
    top: 20%;
  }
  
  .about01 h1 .top {
    font-size: 51.73rem;
    letter-spacing: -0.08em;
  }
  
  .about01 h1 .bottom {
    font-size: 73.57rem;
    line-height: 1.2;
  }

  .about01 .list {
    margin-top: 3%;
  }
  
  .about01 .list .text-box {
    width: 1220rem;
    padding: 2% 0;
    align-items: flex-start;
  }
  
  .about01 .list .text-box .number {
    margin: 0;
    margin-right: 3%;
  }
  
  .about01 .list .text-box .text {
    font-size: 42rem;
    line-height: 1.7;
    letter-spacing: -0.07em;
  }
  
  .about01 .list .text-box.center {
    margin: 18% auto;
    transform: translateX(0);
  }
  
  .about01 .list .text-box.center .number {
    transform: translateX(0);
  }
  
  .about01 .img02 {
    top: 28%;
    left: 50%;
  }
  
  .about01 .img03 {
    top: 57%;
    left: 10%;
  }
  
  .about01 .img04 {
    top: 84.5%;
    left: 72%;
  }

  .about02 {
    padding-bottom: 10%;
  }

  .about02 h1 {
    font-size: 70rem;
    top: 45%;
    left: 42%;
  }

  .about02 .list {
    width: 1219rem;
  }
  
  .about02 .list .items.center {
    margin: 4% 0;
  }
  
  .about02 .list .items .q-box,
  .about02 .list .items .a-box {
    align-items: flex-start;
  }
  
  .about02 .list .items .text1 {
    margin: 0 2%;
  }
  
  .about02 .list .items .q-box .text1 {
    transform: translateY(5%);
  }
  
  .about02 .list .items .q-box .text2 {
    font-size: 52rem;
  }
  
  .about02 .list .items .a-box .text2 {
    font-size: 42rem;
  }

  .about03 h1 {
    top: 20%;
    left: 21%;
  }

  .about03 .img02 img {
    margin-top: 7%;
    margin-left: 52%;
    width: 610rem;
  }

  .about03 .text1 {
    margin-top: 10%;
    margin-left: 3%;
  }

  .about03 .text1 br.height {
    display: block;
    content: "";
    margin: 3%;
  }

  .about03 .text1 .big {
    line-height: 1.3;
  }
  
  .about03 .img03 img {
    padding: 6% 0 8%;
  }

  .about04 .h1-container::before {
    width: 105rem;
    height: 50rem;
  }

  .about04 h1 {
    color: #fff;
    position: absolute;
    top: 22%;
    left: 23%;
    text-align: left;
  }
  
  .about04 h1 .top {
    font-size: 39.93rem;
  }
  
  .about04 h1 .center {
    font-size: 48.81rem;
  }
  
  .about04 h1 .bottom {
    font-size: 71rem;
  }
  
  .about04 .yellow-bg {
    padding: 7% 0 5.5%;
  }
  
  .about04 .line-container {
    width: 993.58rem;
    height: 128.85rem;
  }
  
  .about04 .line-container .text {
    font-size: 58.15rem;
  }
  
  .about04 .line-container img {
    width: 106rem;
  }

  .about04 .red-bg {
    width: auto;
  }
  
  .about04 .red-bg .flex {
    width: auto;
  }
  
  .about04 .red-bg .desc .text1 {
    font-size: 51.17rem;
  }
  
  .about04 .red-bg .desc .text2 {
    font-size: 37.19rem;
  }
  
  .about04 .red-bg .desc .text2 .bg {
    font-size: 21.17rem;
  }
  
  .about04 .red-bg .tell {
    font-size: 71.96rem;
    width: 782rem;
    height: 196rem;
  }
  
  .about04 .red-bg .tell::before {
    width: 60rem;
    height: 196rem;
  }
  
  .about04 .red-bg .tell img {
    display: inline;
    width: 127rem;
    padding-left: 5%;
    padding-right: 2%;
  }

  .about04 .red-bg .tell img {
    display: inline;
    width: 87rem;
    padding-left: 5%;
    padding-right: 2%;
  }

  .about05 h1 {
    font-size: 91.66rem;
    top: 4%;
    left: 7%;
  }

  .about05 .insta-container {
    height: 450rem;
  }
  
  .about05 a {
    position: relative;
    width: 674rem;
  }
  
  .about05 a {
    width: 897.66rem;
    bottom: 1.5%;
  }

  .banner {
    width: 1211.7rem;
    height: 156.85rem;
  }
  
  .banner .line img {
    width: 648.59rem;
  }
  
  .banner .tell img {
    width: 450.96rem;
  }

  footer .text-box {
    font-size: 34rem;
    font-weight: 400 !important;
    padding: 1.5% 0 16%;
  }
  
}