
/* base
-------------------------------------*/
body {
  font-family: "Noto Sans JP", serif;
  background-color: #fff;
  color: #1a1a1a;
  font-size: 16px;
  overflow-x: hidden;
  font-feature-settings: "palt";
}
.pc { display: block !important; }
.sp { display: none !important; }
/* リンク透明 */
a img:hover { -ms-filter: "alpha( opacity=80 )"; filter: alpha(opacity=80); opacity: 0.8; }


.f-serif {
  font-family: "Noto Serif JP", serif;
}



@media screen and (min-width: 768px),print {
/* fv
-------------------------------------*/
.fv {
  background: url(../img/fv-bg3.png)no-repeat top center;
  background-size: contain;
}
.fv .inner {
  width: 1202px;
  margin-inline: auto;
  padding: 25px 0 37px;
  position: relative;
}
.fv .yenzo{
  content: "";
  position: absolute;
  width: 670px;
  height: 650px;
  background: url(../img/fv-yenzo.png) no-repeat;
  background-size: contain;
  top: 233px;
  left: -297px;
}
.fv .bkomi {
  content: "";
  position: absolute;
  width: 545px;
  height: 866px;
  background: url(../img/fv-bkomi.png) no-repeat;
  background-size: contain;
  top: -8px;
  right: -203px;
}
.fv .yenzo .name-box {
  background: url(../img/yenzo-name-bg.png)no-repeat;
  background-size: cover;
  position: absolute;
  bottom: 96px;
  left: 131px;
  width: 306px;
  height: 92px;
  padding: 14px 17px;
  text-align: center;
  z-index: 5;
}
.fv .bkomi .name-box {
  background: url(../img/bkomi-name-bg.png)no-repeat;
  background-size: cover;
  position: absolute;
  bottom: 111px;
  left: 201px;
  width: 252px;
  height: 91px;
  padding: 12px 0;
  text-align: center;
}
.fv .name-box .desc {
  font-size: 20px;
  letter-spacing: 0.02em;
  color: #fff;
}
.fv .bkomi .name-box .desc {
  font-size: 20px;
}
.fv .name-box .desc .num {
  font-size: 24px;
  letter-spacing: 0.02em;
  color: #fff;
}
.fv .name-box .name {
  font-size: 30px;
  letter-spacing: 0.02em;
  color: #fff;
  margin: 8px 0 0 13px;
}
.fv .name-box .name span {
  font-size: 23px;
  letter-spacing: 0.02em;
}
.fv .subt01 {
  font-size: 38px;
  font-weight: 700;
  line-height: 1.3986;
  letter-spacing: -0.01em;
  text-align: center;
  position: relative;
  color: #ffffff;
  margin: 0 auto 35px;
  width: 900px;
}
.fv .subt01::before {
  content: "";
  position: absolute;
  background: url(../img/fv-line-left.png) no-repeat;
  background-size: contain;
  top: 25%;
  left: 35px;
  width: 39px;
  height: 79px;
}
.fv .subt01::after {
  content: "";
  position: absolute;
  background: url(../img/fv-line-right.png) no-repeat;
  background-size: contain;
  top: 22%;
  right: 25px;
  width: 39px;
  height: 79px;
}
.fv .subt01 span {
  color: #edd6b7;
  display: block;
}
.fv .subt02 {
  background: url(../img/fv-fukidashi.png)no-repeat;
  background-size: cover;
  color: #ffffff;
  text-align: center;
  font-size: 31px;
  line-height: 1.2;
  font-feature-settings: "palt";
  letter-spacing: 0.03em;
  width: 378px;
  margin-inline: auto;
  font-weight: 700;
  padding: 5px 0 19px;
}
.fv h1 {
  font-size: 52px;
  letter-spacing: 0.02em;
  text-align: center;
  font-weight: 700;
  line-height: 1.2;
  margin: -10px;
}
.fv h1 .num {
  font-size: 67px;
  letter-spacing: 0.02em;
}
.fv h1 .small {
  font-size: 45px;
}
.fv .subt03 {
  font-size: 44px;
  letter-spacing: 0.02em;
  font-feature-settings: "palt";
  color: #ffffff;
  margin: 42px 0 0 224px;
  font-weight: 700;
  text-shadow: 0 0 5px #1a1a1a;
}
.fv h2 {
  font-size: 84px;
  font-feature-settings: "palt";
  letter-spacing: 0.02em;
  color: #ffffff;
  margin: -4px 0 0 217px;
  transform: rotate(-2deg);
  position: relative;
  z-index: 3;
  font-weight: 700;
}
.fv h2 span {
  position: relative;
  z-index: 2;
}
.fv h2 .small {
  font-size: 65px;
}
.fv h2 .small02 {
  font-size: 78px;
  letter-spacing: -0.05em;
}
.fv h2 .small03 {
  font-size: 73px;
  letter-spacing: 0;
}
.fv h2 .large {
  font-size: 87px;
  letter-spacing: 0;
}
.fv .h202-box {
  position: relative;
}
.fv .h201 {
  text-shadow: 0 0 5px #1a1a1a;
}
.fv .ls {
  letter-spacing: -0.15em;
}
.fv .h202 {
  background-size: cover;
  margin: 18px 0 0 113px;
  position: relative;
  padding: 17px;
}
.fv .h202::before {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  background-repeat: no-repeat;
  background-size: cover;
  left: -89px;
  background: #e50c1c;
  top: 6px;
  transform: skewX(-9deg);
}
.fv .h203 {
  font-size: 84px;
  letter-spacing: 0.02em;
  margin: 24px 0 0 230px;
  text-shadow: 0 0 5px #1a1a1a;
}
.fv .circle {
  position: absolute;
  top: -41px;
  left: -128px;
  background: url(../img/fv-cercle.png)no-repeat center center;
  background-size: cover;
  width: 223px;
  height: 223px;
  font-size: 50px;
  font-weight: 700;
  z-index: 4;
  padding: 56px 0;
  text-align: center;
  line-height: 1.15;
  transform: rotate(-2deg);
}
.fv .circle .small {
  font-size: 44px;
  letter-spacing: -0.02em;
}
.fv-bottom {
  background: url(../img/fv-obi.png)no-repeat;
  background-size: cover;
  margin: -18px 0 0;
  background-position: bottom center;
  padding: 59px 0 121px;
  position: relative;
  z-index: 6;
}
.fv .list {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  justify-content: space-between;
  margin-inline: auto;
  width: 775px;
}
.fv .list li {
  background: url(../img/fv-icatch.png)no-repeat;
  background-size: cover;
  font-size: 33px;
  font-weight: 700;
  letter-spacing: 0.02em;
  text-align: center;
  position: relative;
  width: 258px;
  height: 258px;
  padding: 101px 0 0;
  line-height: 1.5;
  font-feature-settings: "palt";
}
.fv .list li span {
  font-size: 42px;
  margin: -8px 0 0;
  display: block;
}
.fv .list li::before {
  position: absolute;
  content: "";
  background: url(../img/fv-check.png)no-repeat;
  background-size: contain;
  width: 41px;
  height: 39px;
  top: 51px;
  left: 50%;
  transform: translateX(-50%);
}

 
/* cta01
-------------------------------------*/
.cta.cta01{
  background-image: url(../img/cta-bg1.png);
  background-repeat: no-repeat;
  background-size: 100%;
  margin-top: -81px;
  background-position: bottom center;
}
.cta .inner {
  width: 1246px;
  margin-inline: auto;
  padding: 127px 0 55px;
}
.cta .cta-ttl {
  font-size: 68px;
  font-weight: 500;
  letter-spacing: 0.02em;
  display: flex;
  justify-content: space-between;
  align-items: baseline;
}
.cta .cta-ttl .img {
  width: 65px;
  height: 52px;
  margin: 0px 3px 0 0;
}
.cta .cta-ttl .num{
  font-size: 67px;
  letter-spacing: -0.02em;
  font-feature-settings: "palt";
}
.cta .cta-ttl .small{
  font-size: 50px;
  letter-spacing: 0.02em;
  margin: 0 0 0 -27px;
}
.cta .cta-ttl .small02 {
  font-size: 54px;
  letter-spacing: 0.02em;
}
.cta .cta-ttl .line{
  background: linear-gradient(transparent 79%, #edd6b7 10%);
  font-weight: 800;
}
.cta .cta-ttl .red{
  font-size: 80px;
  letter-spacing: 0.02em;
  color: #ed1c24;
  font-weight: 800;
}
.cta .cta-ttl .large{
  font-size: 113px;
  letter-spacing: 0.02em;
  font-weight: 900;
}
.cta .cta-wrap{
  display: grid;
  margin: 41px 0 0 0;
  grid-template-columns: 58.7% 40.87%;
  gap: 0px;
}
.cta .cta-mockup {
  margin: 23px 0 0 15px;
}
.cta .cta-btn-wrap {
  margin: 0 0 0 -13px;
}
.cta .cta-btn-wrap .btn {
  text-align: center;
}
.cta .cta-btn-wrap .btn a{
  font-size: 32px;
  letter-spacing: 0.02em;
  font-weight: 700;
  line-height: 1.5;
  color: #fff;
  text-decoration: none;
  text-align: center;
  font-feature-settings: "palt";
}
.cta .cta-btn-wrap span {
  font-size: 39px;
  letter-spacing: 0.02em;
  color: #fff;
}
.cta .cta-btn-wrap .btn01 {
  background: url(../img/btn1.png) no-repeat;
  background-size: contain;
  padding: 46px 0 27px;
  width: 530px;
}
.cta .cta-btn-wrap .btn02 {
  background: url(../img/btn2.png) no-repeat;
  background-size: contain;
  width: 530px;
  padding: 45px 0 30px;
}

/* sec01
-------------------------------------*/
.sec01 {
  background: url(../img/sec01-bg.png)no-repeat;
  background-size: cover;
}
.sec01 .inner {
  width: 1200px;
  margin-inline: auto;
  padding: 98px 0 113px;
  position: relative;
}
.sec01 .inner::after {
  position: absolute;
  content: "";
  background: url(../img/sec01-photo.png)no-repeat;
  background-size: contain;
  width: 485px;
  height: 746px;
  bottom: -2px;
  right: -249px;
}
.sec01 .subt  {
  font-size: 53px;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-align: center;
  font-feature-settings: "palt";
}
.sec01 .subt span {
  font-size: 64px;
  letter-spacing: 0.04em;
  color: #e50c1c;
}
.sec01 h2 {
  font-size: 66px;
  letter-spacing: 0.02em;
  font-weight: 700;
  font-feature-settings: "palt";
  margin: 45px 0 0;
}
.sec01 .list {
  background: #fff;
  display: grid;
  gap: 2px;
  box-shadow: 10px 10px 10px rgba(132, 131, 131, 0.5);
  margin: 66px 0 0;
  padding: 42px 68px 47px;
}
.sec01 .list li {
  font-size: 31px;
  line-height: 2.19;
  position: relative;
  font-weight: 500;
  padding: 0 0 0 48px;
  font-feature-settings: "palt";
  letter-spacing: 0.02em;
}
.sec01 .list li::before {
  position: absolute;
  content: "";
  background: url(../img/sec01-check.png)no-repeat;
  background-size: contain;
  width: 32px;
  height: 29px;
  top: 50%;
  transform: translateY(-50%);
  left: 0;
}
.sec01 .list li span {
  color: #e50c1c;
  font-weight: 700;
}


/* sec02
-------------------------------------*/
.sec02 {
  background: url(../img/sec02-bg.png)no-repeat;
  background-size: cover;
  position: relative;
}
.sec02::before {
  content: "";
  position: absolute;
  width: 404px;
  height: 152px;
  background: url(../img/sec02-semicircle.png)no-repeat;
  background-size: cover;
  top: -2px;
  left: 50%;
  transform: translateX(-50%);
}
.sec02 .inner {
  width: 1300px;
  margin-inline: auto;
  padding: 18px 0 157px;
  position: relative;
}
.sec02 .subt {
  font-size: 62px;
  font-weight: 700;
  letter-spacing: 0.02em;
  text-align: center;
}
.sec02 h2 {
  text-align: center;
  font-size: 73px;
  font-weight: 700;
  letter-spacing: 0.02em;
  font-feature-settings: "palt";
  color: #edd6b7;
  margin: 104px 0 0;
}
.sec02 h2 span {
  color: #fff;
  font-size: 62px;
  letter-spacing: 0.02em;
  font-feature-settings: "palt";
  text-align: center;
  display: block;
  margin: 0 0 21px;
}
.sec02 .mockup {
  background: url(../img/sec02-mokumoku.png)no-repeat;
  background-size: cover;
  font-size: 24px;
  line-height: 1.75;
  letter-spacing: 0;
  font-weight: 500;
  width: 1000px;
  padding: 169px 108px 149px 133px;
  margin: 54px 0 0 auto;
  position: relative;
}
.sec02 .mockup::before {
  background: url(../img/sec02-photo.png)no-repeat;
  background-size: contain;
  width: 397px;
  height: 616px;
  content: "";
  position: absolute;
  top: 55px;
  left: -263px;
}
.sec02 .mockup .make {
  background: #1a1a1a;
  color: #fff;
  font-size: 29px;
  font-weight: 700;
  letter-spacing: 0;
}
.sec02 .lead01 {
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 57px;
  font-weight: 700;
  color: #fff;
  margin: 85px 0 0;
  gap: 11px;
}
.sec02 .lead01 .make {
  width: 398px;
  height: 93px;
}
.sec02 .lead01 .kachi {
  width: 398px;
  height: 92px;
}
.sec02 .lead02 {
  font-size: 50px;
  letter-spacing: 0;
  color: #fff;
  font-weight: 700;
  text-align: center;
  margin: 45px 0 0;
}
.sec02 .txt {
  font-size: 26px;
  line-height: 1.9;
  font-weight: 500;
  color: #fff;
  letter-spacing: 0;
  margin: 45px auto 0;
  width: 1021px;
}
.sec02 .txt .large {
  font-size: 39px;
  font-weight: 700;
}
.sec02 .txt .line {
  color: #edd6b7;
  border-bottom: 1px solid #fff;
}

/* sec03
-------------------------------------*/
.sec03{
  background: url(../img/sec03-bg.png)no-repeat;
  background-size: cover;
  margin: -261px 0 0;
}
.sec03 .inner {
  width: 1400px;
  margin-inline: auto;
  padding: 347px 0 107px;
}
.sec03 .subt {
  font-size: 50px;
  font-weight: 700;
  letter-spacing: 0.02em;
  text-align: center;
}
.sec03 .subt .red {
  background: #ed1c24;
  color: #fff;
  padding: 0 13px;
}
.sec03 .subt .num {
  font-size: 65px;
  letter-spacing: 0.02em;
  color: #fff;
  font-weight: 700;
}
.sec03 h2 {
  font-size: 104px;
  font-weight: 700;
  color: #e50c1c;
  margin: 72px 0 0;
  letter-spacing: -0.04em;
  text-align: center;
}
.sec03 .movie-box {
  width: 846px;
  height: 475px;
  margin-inline: auto;
  background: #b3b3b3;
  margin-top: 64px;
}
.sec03 .movie-box video {
  width: 100%;
  max-width: 846px;
}
.sec03 .txt-box {
  background: #fff;
  box-shadow: 6px 6px 6px rgba(112, 97, 50, 0.4);
  margin: 70px auto 0;
  width: 1100px;
  padding: 56px 45px 62px 71px;
  text-align: justify;
}
.sec03 .txt-box .txt {
  font-size: 27px;
  line-height: 2.22;
  letter-spacing: 0;
  font-weight: 500;
  text-align: justify;
}
.sec03 .txt-box .txt span {
  color: #ed1c24;
  font-size: 33px;
  line-height: 0.909;
  font-weight: 700;
  margin: 40px 0 0;
  display: inline-block;
}

/* sec04
-------------------------------------*/
.sec04 {
  background: url(../img/sec04-bg.png)no-repeat;
  background-size: cover;
}
.sec04 .inner {
  width: 1200px;
  margin-inline: auto;
  padding: 106px 0 197px;
}
.sec04 .subt {
  font-size: 43px;
  font-weight: 700;
  letter-spacing: 0.02em;
  text-align: center;
  margin-inline: auto;
  width: 755px;
  position: relative;
}
.sec04 .subt::before {
  content: "";
  position: absolute;
  width: 24px;
  height: 39px;
  background: url(../img/sec04-line-left.png)no-repeat;
  top: 10%;
  left: 0;
}
.sec04 .subt::after {
  content: "";
  position: absolute;
  width: 24px;
  height: 39px;
  background: url(../img/sec04-line-right.png)no-repeat;
  top: 10%;
  right: 0;
}
.sec04 .ttl-box {
  position: relative;
  margin: 17px 0 204px;
}
.sec04 .ttl-box .subt02 {
  color: #fff;
  font-size: 38px;
  letter-spacing: 0.02em;
  position: absolute;
  right: 310px;
  top: 24px;
  height: 59px;
  z-index: 3;
  font-weight: 700;
  background: #1a1a1a;
  clip-path: polygon(3% 0%, 100% 0%, 97% 100%, 0% 100%);
  padding: 7px 27px 7px 33px;
}
.sec04 .ttl-box .subt02::before {
  /* content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  background: #1a1a1a;
  top: 0;
  left: 0; */
}
.sec04 .ttl-box h2 {
  color: #e50c1c;
  font-size: 81px;
  letter-spacing: 0.02em;
  text-align: center;
  font-weight: 700;
}
.sec04 .ttl-box h2 span {
  font-size: 173px;
  font-weight: 900;
}
.sec04 .point {
  position: relative;
  width: 1200px;
  margin-inline: auto;
}
.sec04 .point:not(:first-child) {
  margin-top: 149px;
}
.sec04 .point .content-box {
  background: #ffffff;
  box-shadow: 10px 10px 10px rgba(127, 127, 126, 0.6);
  width: 799px;
  position: relative;
  padding: 2px 40px 62px;
  z-index: 3;
}
.sec04 .point .content-box .num {
  position: absolute;
  top: -88px;
  left: 36px;
}
.sec04 .point01 .content-box .num img {
  width: 101px;
}
.sec04 .point02 .content-box .num img {
  width: 101px;
}
.sec04 .point03 .content-box .num img {
  width: 105px;
}
.sec04 .point04 .content-box .num img {
  width: 107px;
}
.sec04 .point05 .content-box .num img {
  width: 102px;
}
.sec04 .point .en img {
  width: 79px;
}
.sec04 .point .content-box h3 {
  font-size: 40px;
  font-weight: 700;
  line-height: 1.575;
  letter-spacing: 0.02em;
  margin: 19px 0 0 23px;
}
.sec04 .point .content-box h3 span {
  color: #ed1c24;
}
.sec04 .point .content-box .txt {
  font-size: 24px;
  font-weight: 500;
  line-height: 1.75;
  letter-spacing: 0;
  margin: 36px 0 0 19px;
  text-align: justify;
}
.sec04 .point .content-box .txt span {
  color: #e50c1c;
}
.sec04 .point .photo {
  position: absolute;
  top: -79px;
  right: -195px;
  width: 662px;
}

/* point02 */
.sec04 .point02 {
  margin-top: 149px;
}

.sec04 .reverse .content-box {margin-left: auto;}
.sec04 .reverse .content-box .num{right: 37px;left: unset;}
.sec04 .reverse .content-box .en img{
  margin: 0 10px 0 auto;
}
.sec04 .reverse .photo {
  position: absolute;
  top: -79px;
  left: -191px;
}

/* sec05
-------------------------------------*/
.sec05 {
  background: url(../img/sec05-bg.png)no-repeat;
  background-size: cover;
  padding: 0 0 104px;
}
.sec05 .subt {
  background: url(../img/sec05-title-bg.png)no-repeat;
  background-size: cover;
  color: #edd6b7;
  font-size: 45px;
  letter-spacing: 0.05em;
  text-align: center;
  position: relative;
  top: -35px;
  font-weight: 700;
  padding: 6px 0 15px;
}
.sec05 .subt .num {
  font-size: 59px;
  letter-spacing: 0.05em;
  color: #edd6b7;
  text-align: center;
}
.sec05 h2 {
  text-align: center;
  font-size: 44px;
  letter-spacing: 0.02em;
  font-weight: 700;
  position: relative;
}
.sec05 h2 span {
  background: url(../img/sec05-title-fukidashi.png)no-repeat;
  background-size: cover;
  color: #e50c1c;
  font-size: 65px;
  letter-spacing: 0.02em;
  text-align: center;
  display: block;
  width: 346px;
  margin-inline: auto;
  margin-top: 34px;
  padding: 20px 0 59px;
}
.sec05 .photo {
  width: 773px;
  margin-inline: auto;
  margin-top: -49px;
}
.sec05 .photo img {
  width: 100%;
  height: auto;
}
.sec05 .list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  width: 1200px;
  margin-inline: auto;
  margin-top: 46px;
  gap: 51px 34px;
}
.sec05 .list li {
  background: #fff;
  box-shadow: 10px 10px 7px rgba(147, 135, 99, 0.4);
  position: relative;
  overflow: hidden;
  padding: 0 0 49px;
}
.sec05 .list li:nth-child(3) {
  padding: 0 0 49px;
}
.sec05 .list li:last-child {
  grid-column: 1 / -1;
  margin: 10px 0 0;
  padding: 0 0 57px;
}
.sec05 .list li::before {
  content: "";
  position: absolute;
  width: 147px;
  height: 147px;
  background: url(../img/sec05-list-circle.png)no-repeat;
  background-size: contain;
  top: -87px;
  left: 50%;
  transform: translateX(-50%);
}
.sec05 .list li .num {
  position: relative;
  z-index: 2;
  margin: 0 0 62px;
}
.sec05 .list li .num img{
  margin-inline: auto;
}
.sec05 .list li:nth-child(1) .num img{
  width: 48px;
}
.sec05 .list li:nth-child(2) .num img{
  width: 54px;
}
.sec05 .list li:nth-child(3) .num img{
  width: 55px;
}
.sec05 .list li:nth-child(4) .num img{
  width: 55px;
}
.sec05 .list li:nth-child(5) .num img{
  width: 54px;
}
.sec05 .list li:nth-child(6) .num img{
  width: 56px;
}
.sec05 .list li:nth-child(7) .num img{
  width: 51px;
}
.sec05 .list li .head {
  background: #edd6b7;
  text-align: center;
  padding: 7px 0 28px;
}
.sec05 .list li .subt {
  font-size: 24px;
  letter-spacing: 0;
  color: #1a1a1a;
  display: inline-block;
  padding: 9px 21px 17px;
}
.sec05 .list li:nth-child(1) .subt {
  background: url(../img/sec05-subtitle-fukidashi1.png)no-repeat;
  background-size: contain;
}
.sec05 .list li:nth-child(2) .subt {
  background: url(../img/sec05-subtitle-fukidashi2.png)no-repeat;
  background-size: contain;
}
.sec05 .list li:nth-child(3) .subt {
  background: url(../img/sec05-subtitle-fukidashi3.png)no-repeat;
  background-size: contain;
}
.sec05 .list li:nth-child(4) .subt {
  background: url(../img/sec05-subtitle-fukidashi4.png)no-repeat;
  background-size: contain;
}
.sec05 .list li:nth-child(5) .subt {
  background: url(../img/sec05-subtitle-fukidashi5.png)no-repeat;
  background-size: contain;
}
.sec05 .list li:nth-child(6) .subt {
  background: url(../img/sec05-subtitle-fukidashi6.png)no-repeat;
  background-size: contain;
}
.sec05 .list li:nth-child(7) .subt {
  background: url(../img/sec05-subtitle-fukidashi7.png)no-repeat;
  background-size: contain;
}
.sec05 .list li h3 {
  font-size: 24px;
  font-weight: 700;
  letter-spacing: 0;
  margin-top: -27px;
}
.sec05 .list li:nth-child(3) h3 {
  line-height: 1.2;
}
.sec05 .list li h3 span {
  color: #e50c1c;
  font-size: 33px;
  letter-spacing: 0;
}
.sec05 .list .txt {
  font-size: 20px;
  line-height: 1.75;
  letter-spacing: 0;
  padding: 17px 0 0;
  width: 458px;
  margin-inline: auto;
  text-align: justify;
}
.sec05 .list li:last-child .txt{
  width: 1073px;
}
.sec05 .list .txt span {
  background: #edd6b7;
  font-weight: 700;
}
.sec05 .desc {
  font-size: 18px;
  line-height: 1.66;
  letter-spacing: 0;
  width: 1146px;
  margin-inline: auto;
  margin-top: 52px;
}

/* cta02
-------------------------------------*/
.cta.cta02 {
  background-image: url(../img/cta-bg2.png);
  background-repeat: no-repeat;
  background-size: cover;
}
.cta02 .inner {
  padding: 55px 0 55px;
}
.cta.cta02 .cta-ttl {
  color: #fff;
}
.cta.cta02 .cta-ttl .line{
  background: linear-gradient(transparent 79%, #82111f 10%);
  font-weight: 800;
}
.cta.cta02 .cta-ttl .yellow {
  font-size: 80px;
  letter-spacing: 0.02em;
  font-weight: 800;
  color: #f4e97a;
}

/* sec06
-------------------------------------*/
.sec06 {
  margin: 47px 0 0;
  padding: 0 0 227px;
  background: url(../img/sec06-bg1.png) no-repeat,
  url(../img/sec06-bg4.png) no-repeat;
  background-size: contain, contain;
  background-position: top 254px center, bottom center;
  position: relative;
}
.sec06 h2 {
  color: #edd6b7;
  text-align: center;
  font-size: 80px;
  letter-spacing: 0.02em;
  background: url(../img/sec06-title-bg.png) no-repeat;
  background-size: cover;
  font-weight: 700;
  padding: 101px 0 111px;
}
.sec06 h2 .small {
  font-size: 70px;
  letter-spacing: 0.02em;
}
.sec06 h2 .num {
  font-size: 95px;
}
.sec06 .bkomi {
  width: 1666px;
  margin-left: auto;
  background: url(../img/sec06-bg2.png) no-repeat;
  background-size: cover;
  margin-top: 61px;
  padding: 0 0 539px;
}
.sec06 .bkomi .content {width: 870px;margin-inline: auto;padding: 91px 0 0 110px;position: relative;}
.sec06 .bkomi .content::before {
  content: "";
  position: absolute;
  width: 589px;
  height: 971px;
  background: url(../img/sec06-bkomi.png) no-repeat;
  background-size: contain;
  top: -96px;
  left: -449px;
}
.sec06 .bkomi .content h3 {
  font-size: 42px;
  font-weight: 700;
  margin-bottom: 36px;
}
.sec06 .bkomi .content h3 .num{
  font-size: 51px;
}
.sec06 .bkomi .content h3 img {margin: 26px 0 0;}
.sec06 .bkomi .content .txt {
  font-size: 24px;
  line-height: 1.9167;
  letter-spacing: 0;
  font-weight: 500;
}
.sec06 .bkomi .content .txt:nth-of-type(2) {
  margin-top: 20px;
}
.sec06 .bkomi-career {
  background: url(../img/sec06-bg3.png) no-repeat;
  background-size: cover;
  width: 1600px;
  margin-right: auto;
  position: absolute;
  z-index: 2;
  margin-top: 73px;
  left: 0;
}
.sec06 .bkomi-career .inner {
  width: 800px;
  margin: 0px 591px;
  padding: 58px 0 45px;
}
.sec06 .bkomi-career h3 {
  background: #fff;
  font-size: 29px;
  letter-spacing: 0;
  display: inline-block;
  font-weight: 700;
  padding: 8px 10px;
}
.sec06 .bkomi-career .list {
  display: grid;
  gap: 0px;
  margin: 15px 0 0;
}
.sec06 .bkomi-career .list li {
  color: #fff;
  font-size: 22px;
  line-height: 2.0909;
  letter-spacing: 0;
  position: relative;
  padding: 0 0 0 22px;
  font-weight: 500;
}
.sec06 .bkomi-career .list li span {
  display: block;
  font-size: 20px;
  line-height: 1.7;
  margin: -5px 0 4px;
  font-weight: 400;
}
.sec06 .bkomi-career .list li::before {
  content: "・";
  position: absolute;
  font-size: 22px;
  left: 0;
  color: #fff;
  top: 0;
}

.sec06 .yenzo {
  position: relative;
}
.sec06 .yenzo-inner {
  width: 1666px;
  margin-right: auto;
  background: url(../img/sec06-bg5.png) no-repeat;
  background-size: cover;
  margin-top: 308px;
  padding: 0 0 700px;
  background-position: bottom right;
}
.sec06 .yenzo .content {width: 634px;padding: 83px 0 0 42px;position: relative;margin: 0 0 0 399px;}
.sec06 .yenzo .content::before {
  content: "";
  position: absolute;
  width: 778px;
  height: 746px;
  background: url(../img/sec06-yenzo.png) no-repeat;
  background-size: contain;
  top: 98px;
  right: -671px;
}
.sec06 .yenzo .content h3 {
  font-size: 42px;
  font-weight: 700;
  margin-bottom: 36px;
}
.sec06 .yenzo .content h3 .num{
  font-size: 51px;
}
.sec06 .yenzo .content h3 img {margin: 26px 0 0;}
.sec06 .yenzo .content .txt {
  font-size: 24px;
  line-height: 1.9167;
  letter-spacing: 0;
  font-weight: 500;
  margin: 0 0 0 2px;
}

.sec06 .yenzo-career {
  background: url(../img/sec06-bg6.png) no-repeat;
  background-size: cover;
  width: 1602px;
  margin-left: auto;
  position: absolute;
  z-index: 2;
  right: 0;
  top: 748px;
}
.sec06 .yenzo-career .inner {
  width: 1217px;
  margin: 0 auto;
  padding: 58px 0 45px;
}
.sec06 .yenzo-career h3 {
  background: #fff;
  font-size: 29px;
  letter-spacing: 0;
  display: inline-block;
  font-weight: 700;
  padding: 8px 10px;
}
.sec06 .yenzo-career .list {
  display: grid;
  gap: 0px;
  margin: 15px 0 0 -20px;
}
.sec06 .yenzo-career .list li {
  color: #fff;
  font-size: 22px;
  line-height: 2.0909;
  letter-spacing: 0;
  position: relative;
  padding: 0 0 0 22px;
  font-weight: 500;
}
.sec06 .yenzo-txt {
  font-size: 24px;
  line-height: 1.9167;
  margin: -254px auto 0;
  width: 846px;
}

/* sec07
-------------------------------------*/
.sec07 {
  background: #f9e8ea;
}
.sec07 .inner {
  width: 1010px;
  margin-inline: auto;
  padding: 140px 0 0;
}
.sec07 .ttl-box {
  position: relative;
  margin: 0 0 0 169px;
  padding: 0 0 36px;
}
.sec07 .ttl-box .subt {
  color: #fff;
  font-size: 38px;
  letter-spacing: 0.03em;
  background: url(../img/sec07-fukidashi.png) no-repeat;
  background-size: cover;
  display: inline-block;
  margin: 0 0 0 102px;
  font-weight: 700;
  padding: 28px 32px 28px 52px;
}
.sec07 .ttl-box h2 {
  color: #e50c1c;
  font-size: 45px;
  letter-spacing: 0.03em;
  font-weight: 700;
  text-align: center;
  margin: 16px 0 0;
}
.sec07 .ttl-box::before {
  content: "";
  position: absolute;
  width: 228px;
  height: 321px;
  background: url(../img/sec07-photo.png)no-repeat;
  bottom: -38px;
  left: -115px;
}
.sec07 .list {
  background: #fff;
  border: 1px solid #1a1a1a;
  display: grid;
  gap: 35px;
  padding: 58px 54px 11px;
  position: relative;
}
.sec07 .list li {
  position: relative;
  padding: 0 0 32px;
}
.sec07 .list li:not(:last-child)::after {
  position: absolute;
  content: "";
  background: url(../img/sec07-tenten.png)no-repeat;
  background-size: contain;
  width: 100%;
  height: 4px;
  bottom: 0;
  left: 0;
}
.sec07 .list li h3 {
  font-size: 29px;
  letter-spacing: 0;
  position: relative;
  font-weight: 700;
  padding: 0 0 0 39px;
  margin: 0 0 15px 9px;
}
.sec07 .list li h3::before {
  content: "";
  position: absolute;
  width: 27px;
  height: 26px;
  background: url(../img/sec07-batsu.png) no-repeat;
  top: 0;
  left: 0;
}
.sec07 .list li .txt {
  font-size: 21px;
  line-height: 2;
  font-weight: 500;
  margin: 0 0 0 5px;
}
/* sec08
-------------------------------------*/
.sec08 {
  background-color: #F9E8EA;
}
.sec08 .inner {
  width: 959px;
  margin-inline: auto;
  padding: 111px 0 68px;
}
.sec08 .sec08-ttl {
  width: 374px;
  margin-inline: auto;
  margin-bottom: 12px;
}
.sec08 .sec08-ttl img {
  width: 100%;
}
.sec08 .qa-list li {
  margin-bottom: 46px;
}
.sec08 .qa-list li .qa-ttl {
  background: #e50c1c;
  color: #FFFFFF;
  font-size: 28px;
  font-weight: 500;
  position: relative;
  padding: 26px 94px;
  cursor: pointer;
  letter-spacing: 0;
}
.sec08 .qa-list li .qa-ttl::before {
  content: "";
  position: absolute;
  width: 46px;
  height: 55px;
  background-image: url(../img/sec08-q.png);
  background-size: contain;
  top: 52%;
  left: 34px;
  transform: translateY(-50%);
  background-repeat: no-repeat;
}
.sec08 .qa-list li .qa-ttl::after {
  content: "";
  position: absolute;
  width: 26px;
  height: 27px;
  background-image: url(../img/sec08-hiraku.png);
  background-size: contain;
  top: 50%;
  right: 28px;
  transform: translateY(-50%);
  background-repeat: no-repeat;
}
.sec08 .qa-list li .qa-ttl.is-active::after {
  width: 26px;
  height: 2px;
  background-image: url(../img/sec08-tojiru.png);
  background-size: contain;
  background-repeat: no-repeat;
  transition: .3s;
}
.sec08 .qa-list li .accordion-content {
  background-color: #fff;
}
.accordion-content {
  line-height: 0;
  height: 0;
  overflow: hidden;
  opacity: 0;
  transition-duration: .3s;
}
.accordion-content.is-open {
  line-height: normal;
  height: auto;
  opacity: 1;
}
.sec08 .qa-list li .accordion-content .txt {
  font-size: 24px;
  line-height: 1.583333;
  padding: 21px 38px 22px 45px;
}

/* sec09
-------------------------------------*/
.sec09 {
  background: url(../img/sec09-bg.png) no-repeat;
  background-size: cover;
}
.sec09 .inner {
  width: 1064px;
  margin-inline: auto;
  padding: 96px 0 85px;
}
.sec09 h2 {
  font-size: 57px;
  font-weight: 700;
  letter-spacing: -0.045em;
  text-align: center;
}
.sec09 .subt {
  font-size: 46px;
  letter-spacing: -0.02em;
  text-align: center;
  font-weight: 700;
  position: relative;
  margin: 44px auto 76px;
  width: 392px;
}
.sec09 .subt::before {
  content: "";
  position: absolute;
  width: 34px;
  height: 2px;
  background: #1a1a1a;
  top: 50%;
  transform: translateX(-50%);
  left:0;
}
.sec09 .subt::after {
  content: "";
  position: absolute;
  width: 34px;
  height: 2px;
  background: #1a1a1a;
  top: 50%;
  transform: translateX(50%);
  right:0;
}
.sec09 .txt {
  font-size: 24px;
  line-height: 1.875;
  letter-spacing: 0;
  width: 961px;
  margin-inline: auto;
  margin-bottom: 30px;
}


/* footer
-------------------------------------*/
.footer {
  background-color: #101010;
  padding: 48px 0 49px;
}
.footer .footer-link {
  display: flex;
  justify-content: center;
  gap: 120px;
}
.footer .footer-link li a {
  font-size: 24px;
  font-weight: 400;
  color: #FFFFFF;
  line-height: 1.8235;
  text-decoration: none;
}
.footer .footer-link li:first-child{
  position: relative;
}
.footer .footer-link li:first-child::after{
  content: "";
  position: absolute;
  width: 1px;
  height: 21px;
  background-color: #FFFFFF;
  top: 50%;
  right: -63px;
  transform: translateY(-50%);
}
.footer .footer-txt-box {
  margin-top: 30px;
  text-align: center;
  background-repeat: no-repeat;
}
.footer .footer-txt {
  font-size: 24px;
  font-weight: 400;
  color: #FFFFFF;
  line-height: 1.8235;
  margin-top: 10px;
}

.footer .copyright {
  text-align: center;
  color: #FFFFFF;
  margin-top: 20px;
  font-size: 24px;
}
}

@media screen and (min-width:768px) and (max-width:1999px) {
/* fv
-------------------------------------*/
.fv {
  background: url(../img/fv-bg3.png)no-repeat top center;
  background-size: contain;
}
.fv .inner {
  width: 60.13vw;
  margin-inline: auto;
  padding: 1.251vw 0 1.851vw;
  position: relative;
}
.fv .yenzo{
  content: "";
  position: absolute;
  width: 33.517vw;
  height: 32.516vw;
  background: url(../img/fv-yenzo.png) no-repeat;
  background-size: contain;
  top: 11.656vw;
  left: -14.857vw;
}
.fv .bkomi {
  content: "";
  position: absolute;
  width: 27.264vw;
  height: 43.322vw;
  background: url(../img/fv-bkomi.png) no-repeat;
  background-size: contain;
  top: -0.4vw;
  right: -10.155vw;
}
.fv .yenzo .name-box {
  background: url(../img/yenzo-name-bg.png)no-repeat;
  background-size: cover;
  position: absolute;
  bottom: 4.802vw;
  left: 6.553vw;
  width: 15.308vw;
  height: 4.602vw;
  padding: 0.7vw 0.85vw;
  text-align: center;
}
.fv .bkomi .name-box {
  background: url(../img/bkomi-name-bg.png)no-repeat;
  background-size: cover;
  position: absolute;
  bottom: 5.553vw;
  left: 10.055vw;
  width: 12.606vw;
  height: 4.552vw;
  padding: 0.6vw 0;
  text-align: center;
}
.fv .name-box .desc {
  font-size: 1.001vw;
  letter-spacing: 0.02em;
  color: #fff;
}
.fv .bkomi .name-box .desc {
  font-size: 1.001vw;
}
.fv .name-box .desc .num {
  font-size: 1.201vw;
  letter-spacing: 0.02em;
  color: #fff;
}
.fv .name-box .name {
  font-size: 1.501vw;
  letter-spacing: 0.02em;
  color: #fff;
  margin: 0.4vw 0 0 0.65vw;
}
.fv .name-box .name span {
  font-size: 1.151vw;
  letter-spacing: 0.02em;
}
.fv .subt01 {
  font-size: 1.901vw;
  font-weight: 700;
  line-height: 1.3986;
  letter-spacing: -0.01em;
  text-align: center;
  position: relative;
  color: #ffffff;
  margin: 0 auto 1.751vw;
  width: 45.023vw;
}
.fv .subt01::before {
  content: "";
  position: absolute;
  background: url(../img/fv-line-left.png) no-repeat;
  background-size: contain;
  top: 25%;
  left: 1.751vw;
  width: 1.951vw;
  height: 3.952vw;
}
.fv .subt01::after {
  content: "";
  position: absolute;
  background: url(../img/fv-line-right.png) no-repeat;
  background-size: contain;
  top: 22%;
  right: 1.251vw;
  width: 1.951vw;
  height: 3.952vw;
}
.fv .subt01 span {
  color: #edd6b7;
  display: block;
}
.fv .subt02 {
  background: url(../img/fv-fukidashi.png)no-repeat;
  background-size: cover;
  color: #ffffff;
  text-align: center;
  font-size: 1.551vw;
  line-height: 1.2;
  font-feature-settings: "palt";
  letter-spacing: 0.03em;
  width: 18.909vw;
  margin-inline: auto;
  font-weight: 700;
  padding: 0.25vw 0 0.95vw;
}
.fv h1 {
  font-size: 2.601vw;
  letter-spacing: 0.02em;
  text-align: center;
  font-weight: 700;
  line-height: 1.2;
  margin: -0.5vw;
}
.fv h1 .num {
  font-size: 3.352vw;
  letter-spacing: 0.02em;
}
.fv h1 .small {
  font-size: 2.251vw;
}
.fv .subt03 {
  font-size: 2.201vw;
  letter-spacing: 0.02em;
  font-feature-settings: "palt";
  color: #ffffff;
  margin: 2.101vw 0 0 11.206vw;
  font-weight: 700;
}
.fv h2 {
  font-size: 4.202vw;
  font-feature-settings: "palt";
  letter-spacing: 0.02em;
  color: #ffffff;
  margin: -0.2vw 0 0 10.855vw;
  transform: rotate(-2deg);
  position: relative;
  z-index: 3;
  font-weight: 700;
}
.fv h2 span {
  position: relative;
  z-index: 2;
}
.fv h2 .small {
  font-size: 3.252vw;
}
.fv h2 .small02 {
  font-size: 3.902vw;
  letter-spacing: -0.05em;
}
.fv h2 .small03 {
  font-size: 3.652vw;
  letter-spacing: 0;
}
.fv h2 .large {
  font-size: 4.352vw;
  letter-spacing: 0;
}
.fv .h202-box {
  position: relative;
}
.fv .h202 {
  background-size: cover;
  margin: 0.938vw 0 0 5.888vw;
  position: relative;
  padding: 0.85vw;
}
.fv .h202::before {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  background-repeat: no-repeat;
  background-size: cover;
  left: -4.452vw;
  background: #e50c1c;
  top: 0.25vw;
  transform: skewX(-9deg);
}
.fv .h203 {
  font-size: 4.202vw;
  letter-spacing: 0.02em;
  margin: 1.201vw 0 0 11.506vw;
}
.fv .circle {
  position: absolute;
  top: -2.051vw;
  left: -6.403vw;
  background: url(../img/fv-cercle.png)no-repeat center center;
  background-size: cover;
  width: 11.156vw;
  height: 11.156vw;
  font-size: 2.501vw;
  font-weight: 700;
  z-index: 4;
  padding: 2.801vw 0;
  text-align: center;
  line-height: 1.15;
}
.fv .circle .small {
  font-size: 2.201vw;
  letter-spacing: -0.02em;
}
.fv-bottom {
  background: url(../img/fv-obi.png)no-repeat;
  background-size: cover;
  margin: -0.9vw 0 0;
  background-position: bottom center;
  padding: 2.951vw 0 6.053vw;
  position: relative;
  z-index: 6;
}
.fv .list {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  justify-content: space-between;
  margin-inline: auto;
  width: 38.769vw;
}
.fv .list li {
  background: url(../img/fv-icatch.png)no-repeat;
  background-size: cover;
  font-size: 1.651vw;
  font-weight: 700;
  letter-spacing: 0.02em;
  text-align: center;
  position: relative;
  width: 12.906vw;
  height: 12.906vw;
  padding: 5.053vw 0 0;
  line-height: 1.5;
  font-feature-settings: "palt";
}
.fv .list li span {
  font-size: 2.101vw;
  margin: -0.4vw 0 0;
  display: block;
}
.fv .list li::before {
  position: absolute;
  content: "";
  background: url(../img/fv-check.png)no-repeat;
  background-size: contain;
  width: 2.051vw;
  height: 1.951vw;
  top: 2.551vw;
  left: 50%;
  transform: translateX(-50%);
}

 
/* cta01
-------------------------------------*/
.cta.cta01{
  background-image: url(../img/cta-bg1.png);
  background-repeat: no-repeat;
  background-size: 100%;
  margin-top: -4.052vw;
  background-position: bottom center;
}
.cta .inner {
  width: 62.331vw;
  margin-inline: auto;
  padding: 6.353vw 0 2.751vw;
}
.cta .cta-ttl {
  font-size: 3.402vw;
  font-weight: 500;
  letter-spacing: 0.02em;
  display: flex;
  justify-content: space-between;
  align-items: baseline;
}
.cta .cta-ttl .img {
  width: 3.252vw;
  height: 2.601vw;
  margin: 0px 0.15vw 0 0;
}
.cta .cta-ttl .num{
  font-size: 3.352vw;
  letter-spacing: -0.02em;
  font-feature-settings: "palt";
}
.cta .cta-ttl .small{
  font-size: 2.501vw;
  letter-spacing: 0.02em;
  margin: 0 0 0 -1.351vw;
}
.cta .cta-ttl .small02 {
  font-size: 2.701vw;
  letter-spacing: 0.02em;
}
.cta .cta-ttl .line{
  background: linear-gradient(transparent 79%, #edd6b7 10%);
  font-weight: 800;
}
.cta .cta-ttl .red{
  font-size: 4.002vw;
  letter-spacing: 0.02em;
  color: #ed1c24;
  font-weight: 800;
}
.cta .cta-ttl .large{
  font-size: 5.653vw;
  letter-spacing: 0.02em;
  font-weight: 900;
}
.cta .cta-wrap{
  display: grid;
  margin: 2.051vw 0 0 0;
  grid-template-columns: 58.7% 40.87%;
  gap: 0px;
}
.cta .cta-mockup {
  margin: 1.151vw 0 0 0.75vw;
}
.cta .cta-btn-wrap {
  margin: 0 0 0 -0.65vw;
}
.cta .cta-btn-wrap .btn {
  text-align: center;
}
.cta .cta-btn-wrap .btn a{
  font-size: 1.601vw;
  letter-spacing: 0.02em;
  font-weight: 700;
  line-height: 1.5;
  color: #fff;
  text-decoration: none;
  text-align: center;
  font-feature-settings: "palt";
}
.cta .cta-btn-wrap span {
  font-size: 1.951vw;
  letter-spacing: 0.02em;
  color: #fff;
}
.cta .cta-btn-wrap .btn01 {
  background: url(../img/btn1.png) no-repeat;
  background-size: contain;
  padding: 2.301vw 0 1.351vw;
  width: 26.513vw;
}
.cta .cta-btn-wrap .btn02 {
  background: url(../img/btn2.png) no-repeat;
  background-size: contain;
  width: 26.513vw;
  padding: 2.251vw 0 1.501vw;
}

/* sec01
-------------------------------------*/
.sec01 {
  background: url(../img/sec01-bg.png)no-repeat;
  background-size: cover;
}
.sec01 .inner {
  width: 60.03vw;
  margin-inline: auto;
  padding: 4.902vw 0 5.653vw;
  position: relative;
}
.sec01 .inner::after {
  position: absolute;
  content: "";
  background: url(../img/sec01-photo.png)no-repeat;
  background-size: contain;
  width: 24.262vw;
  height: 37.319vw;
  bottom: -0.1vw;
  right: -12.456vw;
}
.sec01 .subt  {
  font-size: 2.651vw;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-align: center;
  font-feature-settings: "palt";
}
.sec01 .subt span {
  font-size: 3.202vw;
  letter-spacing: 0.04em;
  color: #e50c1c;
}
.sec01 h2 {
  font-size: 3.302vw;
  letter-spacing: 0.02em;
  font-weight: 700;
  font-feature-settings: "palt";
  margin: 2.251vw 0 0;
}
.sec01 .list {
  background: #fff;
  display: grid;
  gap: 0.1vw;
  box-shadow: 10px 10px 10px rgba(132, 131, 131, 0.5);
  margin: 3.302vw 0 0;
  padding: 2.101vw 3.402vw 2.351vw;
}
.sec01 .list li {
  font-size: 1.551vw;
  line-height: 2.19;
  position: relative;
  font-weight: 500;
  padding: 0 0 0 2.401vw;
  font-feature-settings: "palt";
  letter-spacing: 0.02em;
}
.sec01 .list li::before {
  position: absolute;
  content: "";
  background: url(../img/sec01-check.png)no-repeat;
  background-size: contain;
  width: 1.601vw;
  height: 1.451vw;
  top: 50%;
  transform: translateY(-50%);
  left: 0;
}
.sec01 .list li span {
  color: #e50c1c;
  font-weight: 700;
}


/* sec02
-------------------------------------*/
.sec02 {
  background: url(../img/sec02-bg.png)no-repeat;
  background-size: cover;
  position: relative;
}
.sec02::before {
  content: "";
  position: absolute;
  width: 20.21vw;
  height: 7.604vw;
  background: url(../img/sec02-semicircle.png)no-repeat;
  background-size: cover;
  top: -0.1vw;
  left: 50%;
  transform: translateX(-50%);
}
.sec02 .inner {
  width: 65.033vw;
  margin-inline: auto;
  padding: 0.9vw 0 7.854vw;
  position: relative;
}
.sec02 .subt {
  font-size: 3.102vw;
  font-weight: 700;
  letter-spacing: 0.02em;
  text-align: center;
}
.sec02 h2 {
  text-align: center;
  font-size: 3.652vw;
  font-weight: 700;
  letter-spacing: 0.02em;
  font-feature-settings: "palt";
  color: #edd6b7;
  margin: 5.203vw 0 0;
}
.sec02 h2 span {
  color: #fff;
  font-size: 3.102vw;
  letter-spacing: 0.02em;
  font-feature-settings: "palt";
  text-align: center;
  display: block;
  margin: 0 0 1.051vw;
}
.sec02 .mockup {
  background: url(../img/sec02-mokumoku.png)no-repeat;
  background-size: cover;
  font-size: 1.201vw;
  line-height: 1.75;
  letter-spacing: 0;
  font-weight: 500;
  width: 50.025vw;
  padding: 8.454vw 5.403vw 7.454vw 6.653vw;
  margin: 2.701vw 0 0 auto;
  position: relative;
}
.sec02 .mockup::before {
  background: url(../img/sec02-photo.png)no-repeat;
  background-size: contain;
  width: 19.86vw;
  height: 30.815vw;
  content: "";
  position: absolute;
  top: 2.751vw;
  left: -13.157vw;
}
.sec02 .mockup .make {
  background: #1a1a1a;
  color: #fff;
  font-size: 1.451vw;
  font-weight: 700;
  letter-spacing: 0;
}
.sec02 .lead01 {
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 2.851vw;
  font-weight: 700;
  color: #fff;
  margin: 4.252vw 0 0;
  gap: 0.55vw;
}
.sec02 .lead01 .make {
  width: 19.91vw;
  height: 4.652vw;
}
.sec02 .lead01 .kachi {
  width: 19.91vw;
  height: 4.602vw;
}
.sec02 .lead02 {
  font-size: 2.501vw;
  letter-spacing: 0;
  color: #fff;
  font-weight: 700;
  text-align: center;
  margin: 2.251vw 0 0;
}
.sec02 .txt {
  font-size: 1.301vw;
  line-height: 1.9;
  font-weight: 500;
  color: #fff;
  letter-spacing: 0;
  margin: 2.251vw auto 0;
  width: 51.076vw;
}
.sec02 .txt .large {
  font-size: 1.951vw;
  font-weight: 700;
}
.sec02 .txt .line {
  color: #edd6b7;
  border-bottom: 1px solid #fff;
}

/* sec03
-------------------------------------*/
.sec03{
  background: url(../img/sec03-bg.png)no-repeat;
  background-size: cover;
  margin: -13.057vw 0 0;
}
.sec03 .inner {
  width: 70.035vw;
  margin-inline: auto;
  padding: 17.359vw 0 5.353vw;
}
.sec03 .subt {
  font-size: 2.501vw;
  font-weight: 700;
  letter-spacing: 0.02em;
  text-align: center;
}
.sec03 .subt .red {
  background: #ed1c24;
  color: #fff;
  padding: 0 0.65vw;
}
.sec03 .subt .num {
  font-size: 3.252vw;
  letter-spacing: 0.02em;
  color: #fff;
  font-weight: 700;
}
.sec03 h2 {
  font-size: 5.203vw;
  font-weight: 700;
  color: #e50c1c;
  margin: 3.602vw 0 0;
  letter-spacing: -0.04em;
  text-align: center;
}
.sec03 .movie-box {
  width: 42.321vw;
  height: 23.762vw;
  margin-inline: auto;
  background: #b3b3b3;
  margin-top: 3.202vw;
}
.sec03 .movie-box video {
  width: 100%;
  max-width: 42.321vw;
}
.sec03 .txt-box {
  background: #fff;
  box-shadow: 6px 6px 6px rgba(112, 97, 50, 0.4);
  margin: 70px auto 0;
  width: 55.028vw;
  padding: 2.801vw 1.551vw 3.102vw 3.552vw;
}
.sec03 .txt-box .txt {
  font-size: 1.351vw;
  line-height: 2.22;
  letter-spacing: 0;
  font-weight: 500;
}
.sec03 .txt-box .txt span {
  color: #ed1c24;
  font-size: 1.651vw;
  line-height: 0.909;
  font-weight: 700;
  margin: 2.001vw 0 0;
  display: inline-block;
}

/* sec04
-------------------------------------*/
.sec04 {
  background: url(../img/sec04-bg.png)no-repeat;
  background-size: cover;
}
.sec04 .inner {
  width: 60.03vw;
  margin-inline: auto;
  padding: 5.303vw 0 9.855vw;
}
.sec04 .subt {
  font-size: 2.151vw;
  font-weight: 700;
  letter-spacing: 0.02em;
  text-align: center;
  margin-inline: auto;
  width: 37.769vw;
  position: relative;
}
.sec04 .subt::before {
  content: "";
  position: absolute;
  width: 1.201vw;
  height: 1.951vw;
  background: url(../img/sec04-line-left.png)no-repeat;
  top: 10%;
  left: 0;
  background-size: contain;
}
.sec04 .subt::after {
  content: "";
  position: absolute;
  width: 1.201vw;
  height: 1.951vw;
  background: url(../img/sec04-line-right.png)no-repeat;
  top: 10%;
  right: 0;
  background-size: contain;
}
.sec04 .ttl-box {
  position: relative;
  margin: 0.85vw 0 10.505vw;
}
.sec04 .ttl-box .subt02 {
  color: #fff;
  font-size: 1.901vw;
  letter-spacing: 0.02em;
  position: absolute;
  right: 15.508vw;
  top: 1.201vw;
  height: 2.951vw;
  z-index: 3;
  font-weight: 700;
  background: #1a1a1a;
  clip-path: polygon(3% 0%, 100% 0%, 97% 100%, 0% 100%);
  padding: 0.35vw 1.351vw 0.35vw 1.651vw;
}
.sec04 .ttl-box .subt02::before {
  /* content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  background: #1a1a1a;
  top: 0;
  left: 0; */
}
.sec04 .ttl-box h2 {
  color: #e50c1c;
  font-size: 4.052vw;
  letter-spacing: 0.02em;
  text-align: center;
  font-weight: 700;
}
.sec04 .ttl-box h2 span {
  font-size: 8.654vw;
  font-weight: 900;
}
.sec04 .point {
  position: relative;
  width: 60.03vw;
  margin-inline: auto;
}
.sec04 .point:not(:first-child) {
  margin-top: 7.454vw;
}
.sec04 .point .content-box {
  background: #ffffff;
  box-shadow: 10px 10px 10px rgba(127, 127, 126, 0.6);
  width: 39.97vw;
  position: relative;
  padding: 0.1vw 2.001vw 3.102vw;
  z-index: 3;
}
.sec04 .point .content-box .num {
  position: absolute;
  top: -4.402vw;
  left: 1.801vw;
}
.sec04 .point01 .content-box .num img {
  width: 5.053vw;
}
.sec04 .point02 .content-box .num img {
  width: 5.053vw;
}
.sec04 .point03 .content-box .num img {
  width: 5.253vw;
}
.sec04 .point04 .content-box .num img {
  width: 5.353vw;
}
.sec04 .point05 .content-box .num img {
  width: 5.103vw;
}
.sec04 .point .en img {
  width: 3.952vw;
}
.sec04 .point .content-box h3 {
  font-size: 2.001vw;
  font-weight: 700;
  line-height: 1.575;
  letter-spacing: 0.02em;
  margin: 0.95vw 0 0 1.151vw;
}
.sec04 .point .content-box h3 span {
  color: #ed1c24;
}
.sec04 .point .content-box .txt {
  font-size: 1.201vw;
  font-weight: 500;
  line-height: 1.75;
  letter-spacing: 0;
  margin: 1.801vw 0 0 0.95vw;
}
.sec04 .point .content-box .txt span {
  color: #e50c1c;
}
.sec04 .point .photo {
  position: absolute;
  top: -3.952vw;
  right: -9.755vw;
  width: 33.117vw;
}

/* point02 */
.sec04 .point02 {
  margin-top: 7.454vw;
}

.sec04 .reverse .content-box {margin-left: auto;}
.sec04 .reverse .content-box .num{right: 1.851vw;left: unset;}
.sec04 .reverse .content-box .en img{
  margin: 0 10px 0 auto;
}
.sec04 .reverse .photo {
  position: absolute;
  top: -3.952vw;
  left: -9.555vw;
}

/* sec05
-------------------------------------*/
.sec05 {
  background: url(../img/sec05-bg.png)no-repeat;
  background-size: cover;
  padding: 0 0 5.203vw;
}
.sec05 .subt {
  background: url(../img/sec05-title-bg.png)no-repeat;
  background-size: cover;
  color: #edd6b7;
  font-size: 2.251vw;
  letter-spacing: 0.05em;
  text-align: center;
  position: relative;
  top: -1.751vw;
  font-weight: 700;
  padding: 0.3vw 0 0.75vw;
}
.sec05 .subt .num {
  font-size: 2.951vw;
  letter-spacing: 0.05em;
  color: #edd6b7;
  text-align: center;
}
.sec05 h2 {
  text-align: center;
  font-size: 2.201vw;
  letter-spacing: 0.02em;
  font-weight: 700;
  position: relative;
}
.sec05 h2 span {
  background: url(../img/sec05-title-fukidashi.png)no-repeat;
  background-size: cover;
  color: #e50c1c;
  font-size: 3.252vw;
  letter-spacing: 0.02em;
  text-align: center;
  display: block;
  width: 17.309vw;
  margin-inline: auto;
  margin-top: 1.701vw;
  padding: 1.001vw 0 2.951vw;
}
.sec05 .photo {
  width: 38.669vw;
  margin-inline: auto;
  margin-top: -2.451vw;
}
.sec05 .photo img {
  width: 100%;
  height: auto;
}
.sec05 .list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  width: 60.03vw;
  margin-inline: auto;
  margin-top: 2.301vw;
  gap: 2.551vw 1.701vw;
}
.sec05 .list li {
  background: #fff;
  box-shadow: 10px 10px 7px rgba(147, 135, 99, 0.4);
  position: relative;
  overflow: hidden;
  padding: 0 0 2.451vw;
}
.sec05 .list li:nth-child(3) {
  padding: 0 0 0.55vw;
}
.sec05 .list li:last-child {
  grid-column: 1 / -1;
}
.sec05 .list li::before {
  content: "";
  position: absolute;
  width: 7.354vw;
  height: 7.354vw;
  background: url(../img/sec05-list-circle.png)no-repeat;
  background-size: contain;
  top: -4.352vw;
  left: 50%;
  transform: translateX(-50%);
}
.sec05 .list li .num {
  position: relative;
  z-index: 2;
  margin: 0 0 3.102vw;
}
.sec05 .list li .num img{
  margin-inline: auto;
}
.sec05 .list li:nth-child(1) .num img{
  width: 2.401vw;
}
.sec05 .list li:nth-child(2) .num img{
  width: 2.701vw;
}
.sec05 .list li:nth-child(3) .num img{
  width: 2.751vw;
}
.sec05 .list li:nth-child(4) .num img{
  width: 2.751vw;
}
.sec05 .list li:nth-child(5) .num img{
  width: 2.701vw;
}
.sec05 .list li:nth-child(6) .num img{
  width: 2.801vw;
}
.sec05 .list li:nth-child(7) .num img{
  width: 2.551vw;
}
.sec05 .list li .head {
  background: #edd6b7;
  text-align: center;
  padding: 0.35vw 0 1.401vw;
}
.sec05 .list li .subt {
  font-size: 1.201vw;
  letter-spacing: 0;
  color: #1a1a1a;
  display: inline-block;
  padding: 0.45vw 1.051vw 0.85vw;
}
.sec05 .list li:nth-child(1) .subt {
  background: url(../img/sec05-subtitle-fukidashi1.png)no-repeat;
  background-size: contain;
}
.sec05 .list li:nth-child(2) .subt {
  background: url(../img/sec05-subtitle-fukidashi2.png)no-repeat;
  background-size: contain;
}
.sec05 .list li:nth-child(3) .subt {
  background: url(../img/sec05-subtitle-fukidashi3.png)no-repeat;
  background-size: contain;
}
.sec05 .list li:nth-child(4) .subt {
  background: url(../img/sec05-subtitle-fukidashi4.png)no-repeat;
  background-size: contain;
}
.sec05 .list li:nth-child(5) .subt {
  background: url(../img/sec05-subtitle-fukidashi5.png)no-repeat;
  background-size: contain;
}
.sec05 .list li:nth-child(6) .subt {
  background: url(../img/sec05-subtitle-fukidashi6.png)no-repeat;
  background-size: contain;
}
.sec05 .list li:nth-child(7) .subt {
  background: url(../img/sec05-subtitle-fukidashi7.png)no-repeat;
  background-size: contain;
}
.sec05 .list li h3 {
  font-size: 1.201vw;
  font-weight: 700;
  letter-spacing: 0;
  margin-top: -1.351vw;
}
.sec05 .list li:nth-child(3) h3 {
  line-height: 1.2;
}
.sec05 .list li h3 span {
  color: #e50c1c;
  font-size: 1.651vw;
  letter-spacing: 0;
}
.sec05 .list .txt {
  font-size: 1.001vw;
  line-height: 1.75;
  letter-spacing: 0;
  padding: 0.85vw 0 0;
  width: 22.761vw;
  margin-inline: auto;
}
.sec05 .list li:last-child .txt{
  width: 53.677vw;
}
.sec05 .list .txt span {
  background: #edd6b7;
  font-weight: 700;
}
.sec05 .desc {
  font-size: 0.9vw;
  line-height: 1.66;
  letter-spacing: 0;
  width: 57.329vw;
  margin-inline: auto;
  margin-top: 2.601vw;
}

/* cta02
-------------------------------------*/
.cta.cta02 {
  background-image: url(../img/cta-bg2.png);
  background-repeat: no-repeat;
  background-size: cover;
}
.cta02 .inner {
  padding: 2.751vw 0 2.751vw;
}
.cta.cta02 .cta-ttl {
  color: #fff;
}
.cta.cta02 .cta-ttl .line{
  background: linear-gradient(transparent 79%, #82111f 10%);
  font-weight: 800;
}
.cta.cta02 .cta-ttl .yellow {
  font-size: 4.002vw;
  letter-spacing: 0.02em;
  font-weight: 800;
  color: #f4e97a;
}

/* sec06
-------------------------------------*/
.sec06 {
  margin: 2.351vw 0 0;
  padding: 0 0 11.356vw;
  background: url(../img/sec06-bg1.png) no-repeat,
  url(../img/sec06-bg4.png) no-repeat;
  background-size: contain, contain;
  background-position: top 12.706vw center, bottom center;
  position: relative;
}
.sec06 h2 {
  color: #edd6b7;
  text-align: center;
  font-size: 4.002vw;
  letter-spacing: 0.02em;
  background: url(../img/sec06-title-bg.png) no-repeat;
  background-size: cover;
  font-weight: 700;
  padding: 5.053vw 0 5.553vw;
}
.sec06 h2 .small {
  font-size: 3.502vw;
  letter-spacing: 0.02em;
}
.sec06 h2 .num {
  font-size: 4.752vw;
}
.sec06 .bkomi {
  width: 83.342vw;
  margin-left: auto;
  background: url(../img/sec06-bg2.png) no-repeat;
  background-size: cover;
  margin-top: 3.052vw;
  padding: 0 0 26.963vw;
}
.sec06 .bkomi .content {width: 43.522vw;margin-inline: auto;padding: 4.552vw 0 0 5.503vw;position: relative;}
.sec06 .bkomi .content::before {
  content: "";
  position: absolute;
  width: 29.465vw;
  height: 48.574vw;
  background: url(../img/sec06-bkomi.png) no-repeat;
  background-size: contain;
  top: -4.802vw;
  left: -22.461vw;
}
.sec06 .bkomi .content h3 {
  font-size: 2.101vw;
  font-weight: 700;
  margin-bottom: 1.801vw;
}
.sec06 .bkomi .content h3 .num{
  font-size: 2.551vw;
}
.sec06 .bkomi .content h3 img {margin: 1.301vw 0 0;}
.sec06 .bkomi .content .txt {
  font-size: 1.201vw;
  line-height: 1.9167;
  letter-spacing: 0;
  font-weight: 500;
}
.sec06 .bkomi .content .txt:nth-of-type(2) {
  margin-top: 1.001vw;
}
.sec06 .bkomi-career {
  background: url(../img/sec06-bg3.png) no-repeat;
  background-size: cover;
  width: 80.04vw;
  margin-right: auto;
  position: absolute;
  z-index: 2;
  margin-top: 3.652vw;
  left: 0;
}
.sec06 .bkomi-career .inner {
  width: 40.02vw;
  margin: 0px 29.565vw;
  padding: 2.901vw 0 2.251vw;
}
.sec06 .bkomi-career h3 {
  background: #fff;
  font-size: 1.451vw;
  letter-spacing: 0;
  display: inline-block;
  font-weight: 700;
  padding: 0.4vw 0.5vw;
}
.sec06 .bkomi-career .list {
  display: grid;
  gap: 0px;
  margin: 0.75vw 0 0;
}
.sec06 .bkomi-career .list li {
  color: #fff;
  font-size: 1.101vw;
  line-height: 2.0909;
  letter-spacing: 0;
  position: relative;
  padding: 0 0 0 1.101vw;
  font-weight: 500;
}
.sec06 .bkomi-career .list li span {
  display: block;
  font-size: 1.001vw;
  line-height: 1.7;
  margin: -0.25vw 0 0.2vw;
}
.sec06 .bkomi-career .list li::before {
  content: "・";
  position: absolute;
  font-size: 1.101vw;
  left: 0;
  color: #fff;
  top: 0;
}

.sec06 .yenzo {
  position: relative;
}
.sec06 .yenzo-inner {
  width: 83.342vw;
  margin-right: auto;
  background: url(../img/sec06-bg5.png) no-repeat;
  background-size: cover;
  margin-top: 15.408vw;
  padding: 0 0 35.018vw;
  background-position: bottom right;
}
.sec06 .yenzo .content {width: 31.716vw;padding: 4.152vw 0 0 2.101vw;position: relative;margin: 0 0 0 19.96vw;}
.sec06 .yenzo .content::before {
  content: "";
  position: absolute;
  width: 38.919vw;
  height: 37.319vw;
  background: url(../img/sec06-yenzo.png) no-repeat;
  background-size: contain;
  top: 4.902vw;
  right: -33.567vw;
}
.sec06 .yenzo .content h3 {
  font-size: 2.101vw;
  font-weight: 700;
  margin-bottom: 1.801vw;
}
.sec06 .yenzo .content h3 .num{
  font-size: 2.551vw;
}
.sec06 .yenzo .content h3 img {margin: 1.301vw 0 0;}
.sec06 .yenzo .content .txt {
  font-size: 1.201vw;
  line-height: 1.9167;
  letter-spacing: 0;
  font-weight: 500;
  margin: 0 0 0 0.1vw;
}

.sec06 .yenzo-career {
  background: url(../img/sec06-bg6.png) no-repeat;
  background-size: cover;
  width: 80.14vw;
  margin-left: auto;
  position: absolute;
  z-index: 2;
  right: 0;
  top: 37.419vw;
}
.sec06 .yenzo-career .inner {
  width: 60.88vw;
  margin: 0 auto;
  padding: 2.901vw 0 2.251vw;
}
.sec06 .yenzo-career h3 {
  background: #fff;
  font-size: 1.451vw;
  letter-spacing: 0;
  display: inline-block;
  font-weight: 700;
  padding: 0.4vw 0.5vw;
}
.sec06 .yenzo-career .list {
  display: grid;
  gap: 0px;
  margin: 0.75vw 0 0 -1.001vw;
}
.sec06 .yenzo-career .list li {
  color: #fff;
  font-size: 1.101vw;
  line-height: 2.0909;
  letter-spacing: 0;
  position: relative;
  padding: 0 0 0 1.101vw;
  font-weight: 500;
}
.sec06 .yenzo-txt {
  font-size: 1.201vw;
  line-height: 1.9167;
  margin: -12.706vw auto 0;
  width: 42.321vw;
}

/* sec07
-------------------------------------*/
.sec07 {
  background: #f9e8ea;
}
.sec07 .inner {
  width: 50.525vw;
  margin-inline: auto;
  padding: 7.004vw 0 0;
}
.sec07 .ttl-box {
  position: relative;
  margin: 0 0 0 8.454vw;
  padding: 0 0 1.801vw;
}
.sec07 .ttl-box .subt {
  color: #fff;
  font-size: 1.901vw;
  letter-spacing: 0.03em;
  background: url(../img/sec07-fukidashi.png) no-repeat;
  background-size: cover;
  display: inline-block;
  margin: 0 0 0 5.103vw;
  font-weight: 700;
  padding: 1.401vw 1.601vw 1.401vw 2.601vw;
}
.sec07 .ttl-box h2 {
  color: #e50c1c;
  font-size: 2.251vw;
  letter-spacing: 0.03em;
  font-weight: 700;
  text-align: center;
  margin: 0.8vw 0 0;
}
.sec07 .ttl-box::before {
  content: "";
  position: absolute;
  width: 11.406vw;
  height: 16.058vw;
  background: url(../img/sec07-photo.png)no-repeat;
  bottom: -1.901vw;
  left: -5.753vw;
  background-size: contain;
}
.sec07 .list {
  background: #fff;
  border: 1px solid #1a1a1a;
  display: grid;
  gap: 1.751vw;
  padding: 2.901vw 2.701vw 0.55vw;
  position: relative;
}
.sec07 .list li {
  position: relative;
  padding: 0 0 1.601vw;
}
.sec07 .list li:not(:last-child)::after {
  position: absolute;
  content: "";
  background: url(../img/sec07-tenten.png)no-repeat;
  background-size: contain;
  width: 100%;
  height: 0.2vw;
  bottom: 0;
  left: 0;
}
.sec07 .list li h3 {
  font-size: 1.451vw;
  letter-spacing: 0;
  position: relative;
  font-weight: 700;
  padding: 0 0 0 1.951vw;
  margin: 0 0 0.75vw 0.45vw;
}
.sec07 .list li h3::before {
  content: "";
  position: absolute;
  width: 1.351vw;
  height: 1.301vw;
  background: url(../img/sec07-batsu.png) no-repeat;
  top: 0;
  left: 0;
  background-size: contain;
}
.sec07 .list li .txt {
  font-size: 1.051vw;
  line-height: 2;
  font-weight: 500;
  margin: 0 0 0 0.25vw;
}
/* sec08
-------------------------------------*/
.sec08 {
  background-color: #F9E8EA;
}
.sec08 .inner {
  width: 47.974vw;
  margin-inline: auto;
  padding: 5.553vw 0 3.402vw;
}
.sec08 .sec08-ttl {
  width: 18.709vw;
  margin-inline: auto;
  margin-bottom: 0.6vw;
}
.sec08 .sec08-ttl img {
  width: 100%;
}
.sec08 .qa-list li {
  margin-bottom: 2.301vw;
}
.sec08 .qa-list li .qa-ttl {
  background: #e50c1c;
  color: #FFFFFF;
  font-size: 1.401vw;
  font-weight: 500;
  position: relative;
  padding: 1.301vw 4.702vw;
  cursor: pointer;
  letter-spacing: 0;
}
.sec08 .qa-list li .qa-ttl::before {
  content: "";
  position: absolute;
  width: 2.301vw;
  height: 2.751vw;
  background-image: url(../img/sec08-q.png);
  background-size: contain;
  top: 52%;
  left: 1.701vw;
  transform: translateY(-50%);
  background-repeat: no-repeat;
}
.sec08 .qa-list li .qa-ttl::after {
  content: "";
  position: absolute;
  width: 1.301vw;
  height: 1.351vw;
  background-image: url(../img/sec08-hiraku.png);
  background-size: contain;
  top: 50%;
  right: 1.401vw;
  transform: translateY(-50%);
  background-repeat: no-repeat;
}
.sec08 .qa-list li .qa-ttl.is-active::after {
  width: 1.301vw;
  height: 0.1vw;
  background-image: url(../img/sec08-tojiru.png);
  background-size: contain;
  background-repeat: no-repeat;
  transition: .3s;
}
.sec08 .qa-list li .accordion-content {
  background-color: #fff;
}
.accordion-content {
  line-height: 0;
  height: 0;
  overflow: hidden;
  opacity: 0;
  transition-duration: .3s;
}
.accordion-content.is-open {
  line-height: normal;
  height: auto;
  opacity: 1;
}
.sec08 .qa-list li .accordion-content .txt {
  font-size: 1.201vw;
  line-height: 1.583333;
  padding: 1.051vw 1.901vw 1.101vw 2.251vw;
}

/* sec09
-------------------------------------*/
.sec09 {
  background: url(../img/sec09-bg.png) no-repeat;
  background-size: cover;
}
.sec09 .inner {
  width: 53.227vw;
  margin-inline: auto;
  padding: 4.802vw 0 4.252vw;
}
.sec09 h2 {
  font-size: 2.851vw;
  font-weight: 700;
  letter-spacing: -0.045em;
  text-align: center;
}
.sec09 .subt {
  font-size: 2.301vw;
  letter-spacing: -0.02em;
  text-align: center;
  font-weight: 700;
  position: relative;
  margin: 2.201vw auto 3.802vw;
  width: 19.61vw;
}
.sec09 .subt::before {
  content: "";
  position: absolute;
  width: 1.701vw;
  height: 0.1vw;
  background: #1a1a1a;
  top: 50%;
  transform: translateX(-50%);
  left:0;
}
.sec09 .subt::after {
  content: "";
  position: absolute;
  width: 1.701vw;
  height: 0.1vw;
  background: #1a1a1a;
  top: 50%;
  transform: translateX(50%);
  right:0;
}
.sec09 .txt {
  font-size: 1.201vw;
  line-height: 1.875;
  letter-spacing: 0;
  width: 48.074vw;
  margin-inline: auto;
  margin-bottom: 1.501vw;
}


/* footer
-------------------------------------*/
.footer {
  background-color: #101010;
  padding: 2.401vw 0 2.451vw;
}
.footer .footer-link {
  display: flex;
  justify-content: center;
  gap: 6.003vw;
}
.footer .footer-link li a {
  font-size: 1.201vw;
  font-weight: 400;
  color: #FFFFFF;
  line-height: 1.8235;
  text-decoration: none;
}
.footer .footer-link li:first-child{
  position: relative;
}
.footer .footer-link li:first-child::after{
  content: "";
  position: absolute;
  width: 0.05vw;
  height: 1.051vw;
  background-color: #FFFFFF;
  top: 50%;
  right: -3.152vw;
  transform: translateY(-50%);
}
.footer .footer-txt-box {
  margin-top: 1.501vw;
  text-align: center;
  background-repeat: no-repeat;
}
.footer .footer-txt {
  font-size: 1.201vw;
  font-weight: 400;
  color: #FFFFFF;
  line-height: 1.8235;
  margin-top: 0.5vw;
}

.footer .copyright {
  text-align: center;
  color: #FFFFFF;
  margin-top: 1.001vw;
  font-size: 1.201vw;
}

}


@media screen and (min-width:2001px)  {
    /* fv
-------------------------------------*/
.fv {
  background: url(../img/fv-bg3.png)no-repeat top center;
  background-size: contain;
}
.fv .inner {
  width: 60.07vw;
  margin-inline: auto;
  padding: 1.249vw 0 1.849vw;
  position: relative;
}
.fv .yenzo{
  content: "";
  position: absolute;
  width: 33.483vw;
  height: 32.484vw;
  background: url(../img/fv-yenzo.png) no-repeat;
  background-size: contain;
  top: 11.644vw;
  left: -14.843vw;
}
.fv .yenzo img {
  width: 100%;
  height: auto;
}
.fv .bkomi {
  content: "";
  position: absolute;
  width: 27.236vw;
  height: 43.278vw;
  background: url(../img/fv-bkomi.png) no-repeat;
  background-size: contain;
  top: -0.4vw;
  right: -10.145vw;
}
.fv .bkomi img {
  width: 100%;
  height: auto;
}
.fv .yenzo .name-box {
  background: url(../img/yenzo-name-bg.png)no-repeat;
  background-size: cover;
  position: absolute;
  bottom: 4.798vw;
  left: 6.547vw;
  width: 15.292vw;
  height: 4.598vw;
  padding: 0.7vw 0.85vw;
  text-align: center;
}
.fv .bkomi .name-box {
  background: url(../img/bkomi-name-bg.png)no-repeat;
  background-size: cover;
  position: absolute;
  bottom: 5.547vw;
  left: 10.045vw;
  width: 12.594vw;
  height: 4.548vw;
  padding: 0.6vw 0;
  text-align: center;
}
.fv .name-box .desc {
  font-size: 1vw;
  letter-spacing: 0.02em;
  color: #fff;
}
.fv .bkomi .name-box .desc {
  font-size: 1vw;
}
.fv .name-box .desc .num {
  font-size: 1.199vw;
  letter-spacing: 0.02em;
  color: #fff;
}
.fv .name-box .name {
  font-size: 1.499vw;
  letter-spacing: 0.02em;
  color: #fff;
  margin: 0.4vw 0 0 0.65vw;
}
.fv .name-box .name span {
  font-size: 1.149vw;
  letter-spacing: 0.02em;
}
.fv .subt01 {
  font-size: 1.899vw;
  font-weight: 700;
  line-height: 1.3986;
  letter-spacing: -0.01em;
  text-align: center;
  position: relative;
  color: #ffffff;
  margin: 0 auto 35px;
  width: 44.978vw;
}
.fv .subt01::before {
  content: "";
  position: absolute;
  background: url(../img/fv-line-left.png) no-repeat;
  background-size: contain;
  top: 25%;
  left: 1.749vw;
  width: 1.949vw;
  height: 3.948vw;
}
.fv .subt01::after {
  content: "";
  position: absolute;
  background: url(../img/fv-line-right.png) no-repeat;
  background-size: contain;
  top: 22%;
  right: 1.249vw;
  width: 1.949vw;
  height: 3.948vw;
}
.fv .subt01 span {
  color: #edd6b7;
  display: block;
}
.fv .subt02 {
  background: url(../img/fv-fukidashi.png)no-repeat;
  background-size: cover;
  color: #ffffff;
  text-align: center;
  font-size: 1.549vw;
  line-height: 1.2;
  font-feature-settings: "palt";
  letter-spacing: 0.03em;
  width: 18.891vw;
  margin-inline: auto;
  font-weight: 700;
  padding: 0.25vw 0 0.95vw;
}
.fv h1 {
  font-size: 2.599vw;
  letter-spacing: 0.02em;
  text-align: center;
  font-weight: 700;
  line-height: 1.2;
  margin: -0.5vw;
}
.fv h1 .num {
  font-size: 3.348vw;
  letter-spacing: 0.02em;
}
.fv h1 .small {
  font-size: 2.249vw;
}
.fv .subt03 {
  font-size: 2.199vw;
  letter-spacing: 0.02em;
  font-feature-settings: "palt";
  color: #ffffff;
  margin: 2.099vw 0 0 11.194vw;
  font-weight: 700;
}
.fv h2 {
  font-size: 4.198vw;
  font-feature-settings: "palt";
  letter-spacing: 0.02em;
  color: #ffffff;
  margin: -0.2vw 0 0 10.845vw;
  transform: rotate(-2deg);
  position: relative;
  z-index: 3;
  font-weight: 700;
}
.fv h2 span {
  position: relative;
  z-index: 2;
}
.fv h2 .small {
  font-size: 3.248vw;
}
.fv h2 .small02 {
  font-size: 3.898vw;
  letter-spacing: -0.05em;
}
.fv h2 .small03 {
  font-size: 3.648vw;
  letter-spacing: 0;
}
.fv h2 .large {
  font-size: 4.348vw;
  letter-spacing: 0;
}
.fv .h202-box {
  position: relative;
}
.fv .h202 {
  background-size: cover;
  margin: 0.9vw 0 0 5.647vw;
  position: relative;
  padding: 0.85vw;
}
.fv .h202::before {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  background-repeat: no-repeat;
  background-size: cover;
  left: -4.448vw;
  background: #e50c1c;
  top: 0.35vw;
  transform: skewX(-9deg);
}
.fv .h203 {
  font-size: 4.198vw;
  letter-spacing: 0.02em;
  margin: 1.199vw 0 0 11.494vw;
}
.fv .circle {
  position: absolute;
  top: -2.049vw;
  left: -6.397vw;
  background: url(../img/fv-cercle.png)no-repeat center center;
  background-size: cover;
  width: 11.144vw;
  height: 11.144vw;
  font-size: 2.499vw;
  font-weight: 700;
  z-index: 4;
  padding: 2.799vw 0;
  text-align: center;
  line-height: 1.15;
}
.fv .circle .small {
  font-size: 2.199vw;
  letter-spacing: -0.02em;
}
.fv-bottom {
  background: url(../img/fv-obi.png)no-repeat;
  background-size: cover;
  margin: -0.9vw 0 0;
  background-position: bottom center;
  padding: 2.949vw 0 6.047vw;
  position: relative;
  z-index: 6;
}
.fv .list {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  justify-content: space-between;
  margin-inline: auto;
  width: 38.731vw;
}
.fv .list li {
  background: url(../img/fv-icatch.png)no-repeat;
  background-size: cover;
  font-size: 1.649vw;
  font-weight: 700;
  letter-spacing: 0.02em;
  text-align: center;
  position: relative;
  width: 12.894vw;
  height: 12.894vw;
  padding: 5.047vw 0 0;
  line-height: 1.5;
  font-feature-settings: "palt";
}
.fv .list li span {
  font-size: 2.099vw;
  margin: -0.4vw 0 0;
  display: block;
}
.fv .list li::before {
  position: absolute;
  content: "";
  background: url(../img/fv-check.png)no-repeat;
  background-size: contain;
  width: 2.049vw;
  height: 1.949vw;
  top: 2.549vw;
  left: 50%;
  transform: translateX(-50%);
}


/* sec06
-------------------------------------*/
.sec06 {
  margin: 2.349vw 0 0;
  padding: 0 0 11.344vw;
  background: url(../img/sec06-bg1.png) no-repeat,
  url(../img/sec06-bg4.png) no-repeat;
  background-size: contain, contain;
  background-position: top 12.694vw center, bottom center;
  position: relative;
}
.sec06 h2 {
  color: #edd6b7;
  text-align: center;
  font-size: 3.998vw;
  letter-spacing: 0.02em;
  background: url(../img/sec06-title-bg.png) no-repeat;
  background-size: cover;
  font-weight: 700;
  padding: 5.047vw 0 5.547vw;
}
.sec06 h2 .small {
  font-size: 3.498vw;
  letter-spacing: 0.02em;
}
.sec06 h2 .num {
  font-size: 4.748vw;
}
.sec06 .bkomi {
  width: 83.258vw;
  margin-left: auto;
  background: url(../img/sec06-bg2.png) no-repeat;
  background-size: cover;
  margin-top: 3.048vw;
  padding: 0 0 26.937vw;
}
.sec06 .bkomi .content {width: 43.478vw;margin-inline: auto;padding: 4.548vw 0 0 5.497vw;position: relative;}
.sec06 .bkomi .content::before {
  content: "";
  position: absolute;
  width: 29.435vw;
  height: 48.526vw;
  background: url(../img/sec06-bkomi.png) no-repeat;
  background-size: contain;
  top: -4.798vw;
  left: -22.439vw;
}
.sec06 .bkomi .content h3 {
  font-size: 2.099vw;
  font-weight: 700;
  margin-bottom: 1.799vw;
}
.sec06 .bkomi .content h3 .num{
  font-size: 2.549vw;
}
.sec06 .bkomi .content h3 img {margin: 1.299vw 0 0;}
.sec06 .bkomi .content .txt {
  font-size: 1.199vw;
  line-height: 1.9167;
  letter-spacing: 0;
  font-weight: 500;
}
.sec06 .bkomi .content .txt:nth-of-type(2) {
  margin-top: 1vw;
}
.sec06 .bkomi-career {
  background: url(../img/sec06-bg3.png) no-repeat;
  background-size: cover;
  width: 79.96vw;
  margin-right: auto;
  position: absolute;
  z-index: 2;
  margin-top: 3.648vw;
  left: 0;
}
.sec06 .bkomi-career .inner {
  width: 39.98vw;
  margin: 0px 29.535vw;
  padding: 2.899vw 0 2.249vw;
}
.sec06 .bkomi-career h3 {
  background: #fff;
  font-size: 1.449vw;
  letter-spacing: 0;
  display: inline-block;
  font-weight: 700;
  padding: 0.4vw 0.5vw;
}
.sec06 .bkomi-career .list {
  display: grid;
  gap: 0px;
  margin: 0.75vw 0 0;
}
.sec06 .bkomi-career .list li {
  color: #fff;
  font-size: 1.099vw;
  line-height: 2.0909;
  letter-spacing: 0;
  position: relative;
  padding: 0 0 0 1.099vw;
  font-weight: 500;
}
.sec06 .bkomi-career .list li span {
  display: block;
  font-size: 1vw;
  line-height: 1.7;
  margin: -0.25vw 0 0.2vw;
}
.sec06 .bkomi-career .list li::before {
  content: "・";
  position: absolute;
  font-size: 1.099vw;
  left: 0;
  color: #fff;
  top: 0;
}

.sec06 .yenzo {
  position: relative;
}
.sec06 .yenzo-inner {
  width: 83.258vw;
  margin-right: auto;
  background: url(../img/sec06-bg5.png) no-repeat;
  background-size: cover;
  margin-top: 15.392vw;
  padding: 0 0 34.983vw;
  background-position: bottom right;
}
.sec06 .yenzo .content {width: 31.684vw;padding: 4.148vw 0 0 2.099vw;position: relative;margin: 0 0 0 19.94vw;}
.sec06 .yenzo .content::before {
  content: "";
  position: absolute;
  width: 38.881vw;
  height: 37.281vw;
  background: url(../img/sec06-yenzo.png) no-repeat;
  background-size: contain;
  top: 4.898vw;
  right: -33.533vw;
}
.sec06 .yenzo .content h3 {
  font-size: 2.099vw;
  font-weight: 700;
  margin-bottom: 1.799vw;
}
.sec06 .yenzo .content h3 .num{
  font-size: 2.549vw;
}
.sec06 .yenzo .content h3 img {margin: 1.299vw 0 0;}
.sec06 .yenzo .content .txt {
  font-size: 1.199vw;
  line-height: 1.9167;
  letter-spacing: 0;
  font-weight: 500;
  margin: 0 0 0 0.1vw;
}

.sec06 .yenzo-career {
  background: url(../img/sec06-bg6.png) no-repeat;
  background-size: cover;
  width: 80.06vw;
  margin-left: auto;
  position: absolute;
  z-index: 2;
  right: 0;
  top: 37.381vw;
}
.sec06 .yenzo-career .inner {
  width: 60.82vw;
  margin: 0 auto;
  padding: 2.899vw 0 2.249vw;
}
.sec06 .yenzo-career h3 {
  background: #fff;
  font-size: 1.449vw;
  letter-spacing: 0;
  display: inline-block;
  font-weight: 700;
  padding: 0.4vw 0.5vw;
}
.sec06 .yenzo-career .list {
  display: grid;
  gap: 0px;
  margin: 0.75vw 0 0 -1vw;
}
.sec06 .yenzo-career .list li {
  color: #fff;
  font-size: 1.099vw;
  line-height: 2.0909;
  letter-spacing: 0;
  position: relative;
  padding: 0 0 0 1.099vw;
  font-weight: 500;
}
.sec06 .yenzo-txt {
  font-size: 1.199vw;
  line-height: 1.9167;
  margin: -10.694vw auto 0;
  width: 42.279vw;
}

}


@media screen and (max-width: 767px) {
  .pc{ display: none !important; }
  .sp { display: block !important; }

  .img{
    vertical-align:bottom;
  }

  main {
    max-width: 100vw;
    width: 100%;
    margin-inline: auto;
    overflow: hidden;
  }

/* fv
-------------------------------------*/
.fv {
  background: url(../img/fv-bg1-sp.png),
  url(../img/fv-bg2-sp.png);
  background-size: 104vw, contain;
  background-position: top 45vw center, top 111vw center;
  background-repeat: no-repeat;
  overflow: hidden;
}
.fv .inner {
  position: relative;
}
.fv .subt01 {
  font-size:4.267vw;
  font-weight: 700;
  letter-spacing: -0.01em;
  text-align: center;
  position: relative;
  color: #ffffff;
  background: #1a1a1a;
  padding: 3vw 0 6.4vw;
}
.fv .subt01::before {
  content: "";
  position: absolute;
  background: url(../img/fv-line-left-sp.png) no-repeat;
  background-size: contain;
  top: 20%;
  left: 3.3vw;
  width: 5.1vw;
  height: 10.6vw;
}
.fv .subt01::after {
  content: "";
  position: absolute;
  background: url(../img/fv-line-right-sp.png) no-repeat;
  background-size: contain;
  top: 20%;
  right: 3vw;
  width: 5.1vw;
  height: 10.6vw;
}
.fv .subt01 span {
  font-size:5.067vw;
  color: #edd6b7;
  display: block;
  margin: 0 0 2vw;
}
.fv .subt02 {
  background: url(../img/fv-fukidashi.png)no-repeat;
  background-size: cover;
  color: #ffffff;
  text-align: center;
  font-size: 4.267vw;
  line-height: 1.2;
  font-feature-settings: "palt";
  letter-spacing: 0.03em;
  width: 50.4vw;
  margin-inline: auto;
  font-weight: 700;
  padding: 0.6vw 0 2.6vw;
  position: relative;
  top: -3vw;
}
.fv h1 {
  font-size: 6.667vw;
  letter-spacing: 0.02em;
  text-align: center;
  font-weight: 700;
  line-height: 1.2;
  margin: -4vw auto 0;
  background: #fff;
  width: 100vw;
}
.fv h1 .num {
  font-size: 8.4vw;
  letter-spacing: 0.02em;
}
.fv h1 .small {
  font-size: 5.733vw;
}
.fv .subt03 {
  font-size: 4.267vw;
  letter-spacing: 0.02em;
  font-feature-settings: "palt";
  color: #ffffff;
  margin: 6vw 0 0 5vw;
  font-weight: 700;
}
.fv h2 {
  font-size: 7.733vw;
  font-feature-settings: "palt";
  letter-spacing: 0.02em;
  color: #ffffff;
  margin: 0vw 0 0 5vw;
  transform: rotate(-2deg);
  position: relative;
  z-index: 10;
  font-weight: 700;
}
.fv .h201::after {
  position: absolute;
  content: "";
  width: 71.7vw;
  height: 5vw;
  background: url(../img/fv-line-sp.png)no-repeat;
  background-size: contain;
  bottom: -4vw;
  left: 0;
  transform: rotateX(66deg);
  z-index: 10;
}
.fv h2 span {
  position: relative;
  z-index: 2;
}
.fv .ls {
  letter-spacing: -0.15em;
}
.fv h2 .small {
  font-size: 6vw;
}
.fv h2 .small02 {
  font-size: 10.8vw;
  letter-spacing: -0.05em;
}
.fv h2 .small03 {
  font-size: 8.533vw;
  letter-spacing: 0;
}
.fv h2 .small04 {
  margin: 0 0 0 6vw;
  font-size: 7.533vw;
}
.fv h2 .kakko {
  position: absolute;
  top: 0;
  left: 3vw;
  font-size: 16vw;
}
.fv h2 .kakko02 {
  position: absolute;
  bottom: -2vw;
  right: -9vw;
  font-size: 16vw;
}
.fv h2 .large {letter-spacing: 0;color: #f1d4b2;margin: 0vw 0 0 -16vw;display: inline-block;font-size: 11.2vw;line-height: 1.2;}
.fv h2 .large01 {
  font-size: 17.467vw;
  margin: 0 0 0 10vw;
}
.fv h2 .large02 {
  font-size: 15.467vw;
}
.fv .h202-box {
  position: relative;
}
.fv .h202 {
  background-size: cover;
  margin: 2vw 0 0vw 18vw;
  position: relative;
  padding: 2.3vw;
}
.fv .h203 {
  font-size: 6.667vw;
  letter-spacing: 0.01em;
  margin: 2vw 0 0 2vw;
  color: #1a1a1a;
  transform: rotate(-2deg);
  position: relative;
  z-index: 2;
  letter-spacing: -0.05em;
}
.fv .circle {
  position: absolute;
  top: 1vw;
  left: 3.4vw;
  background: url(../img/fv-cercle-sp.png)no-repeat center center;
  background-size: cover;
  width: 16.3vw;
  height: 16.3vw;
  font-size: 3.6vw;
  font-weight: 700;
  z-index: 4;
  padding: 4vw 0;
  text-align: center;
  line-height: 1.25;
  transform: rotate(-2deg);
}
.fv-bottom {
  background: url(../img/fv-obi-sp.png)no-repeat;
  background-size: cover;
  margin: -5vw 0 0;
  background-position: bottom center;
  padding: 6.6vw 0px 10vw;
  position: relative;
  z-index: 6;
}
.fv .list {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  justify-content: space-between;
  margin-inline: auto;
}
.fv .list li {
  background: url(../img/fv-icatch.png)no-repeat;
  background-size: cover;
  font-size: 4.4vw;
  font-weight: 700;
  letter-spacing: 0.02em;
  text-align: center;
  position: relative;
  height: 33.4vw;
  line-height: 1.5;
  font-feature-settings: "palt";
  width: 34.4vw;
  padding: 13vw 0 0;
}
.fv .list li span {
  font-size: 4.8vw;
  margin: 0vw 0 0;
  display: block;
}
.fv .list li::before {
  position: absolute;
  content: "";
  background: url(../img/fv-check.png)no-repeat;
  background-size: contain;
  width: 5.5vw;
  height: 5.3vw;
  top: 6vw;
  left: 50%;
  transform: translateX(-50%);
}
.fv .photo {
  position: absolute;
  top: 41vw;
  right: -13.4vw;
  width: 68.6vw;
  height: 10vw;
}
.fv .photo img {
  width: 100%;
  height: auto;
}
.fv .name-box-wrap .flex {
  display: flex;
  margin: 5vw 3vw;
  align-items: center;
  position: relative;
  z-index: 2;
  gap: 0.2vw;
}
.fv .name-box {
  background: #fff;
  color: #1a1a1a;
  text-align: center;
  padding: 2vw 1vw 2vw 0;
}
.fv .name-box .desc {
  font-size:2.133vw;
  letter-spacing: 0.02em;
  font-weight: 500;
}
.fv .name-box .desc .num {
  font-size:2.533vw;
  letter-spacing: 0.02em;
}
.fv .name-box .name {
  font-size:3.067vw;
  letter-spacing: 0.02em;
  margin: 1vw 0 0 1vw;
  font-weight: 700;
}
.fv .name-box .name span {
  font-size:2.4vw;
  letter-spacing: 0.02em;
}
.fv .name-box.yenzo {
  padding: 2vw 2vw 2vw 3vw;
}
.fv .kakeru img{width: 4.4vw;}
  
/* sp cta01
-------------------------------------*/
.cta {
  background-image: url(../img/cta-bg1-sp.png);
  background-repeat: no-repeat;
  background-size: cover;
  margin: -8vw 0 0;
}
.cta .inner {
  width: 90vw;
  margin-inline: auto;
  padding: 10.2vw 0 10vw;
}
.cta .cta-ttl {text-align: center;font-size: 9.067vw;}
.cta .cta-ttl .img {
  width: 22.3vw;
  height: 3.6vw;
  margin-inline: auto;
  display: block;
  margin-top: 3.8vw;
}
.cta .cta-ttl .num{
  font-size: 7.6vw;
  letter-spacing: -0.02em;
  font-feature-settings: "palt";
}
.cta .cta-ttl .small{
  font-size: 6.533vw;
  letter-spacing: 0.02em;
}
.cta .cta-ttl .small02 {
  font-size:7.2vw;
  letter-spacing: 0.02em;
}
.cta .cta-ttl .line{
  background: linear-gradient(transparent 79%, #edd6b7 10%);
  font-weight: 800;
}
.cta .cta-ttl .red{
  font-size:10.667vw;
  letter-spacing: 0.02em;
  color: #ed1c24;
  font-weight: 800;
}
.cta .cta-ttl .large{
  font-size:15.067vw;
  letter-spacing: 0.02em;
  font-weight: 900;
}
.cta .cta-wrap{
  display: grid;
  justify-content: center;
  margin: 5vw 0 0 0;
}
.cta .cta-mockup {margin: 0 0 0 2vw;}
.cta .cta-btn-wrap {
    margin: -2vw auto 0;
    width: 78vw;
}
.cta .cta-btn-wrap .btn {
  text-align: center;
}
.cta .cta-btn-wrap .btn a{
  font-size:4.8vw;
  letter-spacing: 0.02em;
  font-weight: 700;
  line-height: 1.5;
  color: #fff;
  text-decoration: none;
  text-align: center;
  font-feature-settings: "palt";
}
.cta .cta-btn-wrap span {
  font-size:5.867vw;
  letter-spacing: 0.02em;
  color: #fff;
}
.cta .cta-btn-wrap .small {
  font-size:4.8vw;
}
.cta .cta-btn-wrap .btn01 {
  background: url(../img/btn1-sp.png) no-repeat;
  background-size: 100%;
  padding: 6vw 0 3.9vw;
}
.cta .cta-btn-wrap .btn02 {
  background: url(../img/btn2-sp.png) no-repeat;
  background-size: 100%;
  padding: 6vw 0 3.9vw;
  margin: 1vw 0 0;
}

/* sec01
-------------------------------------*/
.sec01 {
  background: url(../img/sec01-bg-sp.png)no-repeat;
  background-size: cover;
}
.sec01 .inner {padding: 6.5vw 0 12vw;position: relative;}
.sec01 .inner::after {
  position: absolute;
  content: "";
  background: url(../img/sec01-photo-sp.png)no-repeat;
  background-size: contain;
  width: 46.3vw;
  height: 70.3vw;
  top: 0.8vw;
  right: -3vw;
}
.sec01 .subt  {
  font-size:5.467vw;
  font-weight: 700;
  letter-spacing: 0.04em;
  font-feature-settings: "palt";
  background: url(../img/sec01-obi-sp.png)no-repeat;
  background-size: cover;
  color: #fff;
  text-align: left;
  padding: 3.4vw 4vw 3vw;
  line-height: 1.4;
}
.sec01 .subt span {
  font-size:6.667vw;
  letter-spacing: 0.04em;
  color: #e50c1c;
}
.sec01 h2 {
  font-size:6.667vw;
  letter-spacing: 0.02em;
  font-weight: 700;
  font-feature-settings: "palt";
  margin: 3vw 0 0 5vw;
  line-height: 1.48;
  position: relative;
  z-index: 2;
}
.sec01 .list {
  background: #fff;
  display: grid;
  gap: 2vw;
  box-shadow: 10px 10px 10px rgba(132, 131, 131, 0.5);
  margin: 5vw auto 0;
  padding: 5.5vw 1vw 3vw;
  width: 92vw;
  position: relative;
  z-index: 2;
}
.sec01 .list li {
  font-size: 4.267vw;
  line-height: 1.5;
  position: relative;
  font-weight: 500;
  padding: 0 0 3.4vw 11vw;
  font-feature-settings: "palt";
  letter-spacing: 0;
}
.sec01 .list li::before {
  position: absolute;
  content: "";
  background: url(../img/sec01-check-sp.png)no-repeat;
  background-size: contain;
  width: 4vw;
  height: 4vw;
  top: 1.8vw;
  left: 4vw;
}
.sec01 .list li:not(:last-child):after {
  position: absolute;
  content: "";
  background: url(../img/sec01-tenten-sp.png)no-repeat;
  background-size: contain;
  width: 82vw;
  height: 0.6vw;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
}
.sec01 .list li span {
  color: #e50c1c;
  font-weight: 700;
}

/* sec02
-------------------------------------*/
.sec02 {
  background: url(../img/sec02-bg-sp.png)no-repeat;
  background-size: cover;
  position: relative;
  overflow: hidden;
}
.sec02::before {
  content: "";
  position: absolute;
  width: 58.8vw;
  height: 22.2vw;
  background: url(../img/sec02-semicircle-sp.png)no-repeat;
  background-size: cover;
  top: -1vw;
  left: 50%;
  transform: translateX(-50%);
}
.sec02 .inner {padding: 4vw 0 19vw;}
.sec02 .subt {
  font-size:8.267vw;
  font-weight: 700;
  letter-spacing: 0.02em;
  text-align: center;
  position: relative;
}
.sec02 h2 {
  text-align: center;
  font-size:7.333vw;
  font-weight: 700;
  letter-spacing: 0.02em;
  font-feature-settings: "palt";
  color: #edd6b7;
  margin: 15vw 0 0;
}
.sec02 h2 span {
  color: #fff;
  font-size:8.267vw;
  letter-spacing: 0.02em;
  font-feature-settings: "palt";
  text-align: center;
  display: block;
  margin: 0 0 3.2vw 5vw;
}
.sec02 .mockup {
  margin: 10vw 0 0;
}
.sec02 .mockup01 {
  background: url(../img/sec02-mokumoku1-sp.png)no-repeat;
  background-size: 107vw;
  font-size: 4.133vw;
  line-height: 1.483870;
  letter-spacing: 0;
  font-weight: 500;
  margin: -4vw auto 0;
  position: relative;
  padding: 15vw 12vw 16vw 11vw;
  display: block;
  background-position: top center;
}

.sec02 .mockup02 {
  background: url(../img/sec02-mokumoku2-sp.png)no-repeat;
  background-size: 89vw;
  font-size: 4.133vw;
  line-height: 1.483870;
  letter-spacing: 0;
  font-weight: 500;
  margin: -4vw 0 0 26vw;
  position: relative;
  padding: 15vw 12vw 16vw 4vw;
  width: 86vw;
  display: block;
  text-align: center;
  background-position: top right 2vw;
}
.sec02 .mockup02::before {
  background: url(../img/sec02-photo-sp.png) no-repeat;
  background-size: contain;
  width: 47.1vw;
  height: 73.2vw;
  content: "";
  position: absolute;
  bottom: -10vw;
  left: -36vw;
}
.sec02 .mockup .make {
  background: #1a1a1a;
  color: #fff;
  font-size: 4.667vw;
  font-weight: 700;
  letter-spacing: 0;
  padding: 0vw 1.8vw;
  margin: 0.4vw 0 1vw 0.6vw;
  display: inline-block;
}
.sec02 .lead01 .wrap01 {
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 8.8vw;
  font-weight: 700;
  color: #fff;
  margin: 9vw 0  0 0;
  gap: 1vw;
}
.sec02 .lead01 .wrap01 img {width: 62vw;height: auto;}
.sec02 .lead01 .wrap02 {
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 8.8vw;
  font-weight: 700;
  color: #fff;
  margin: 4vw 0 0;
  gap: 1vw;
}
.sec02 .lead01 .wrap02 img {
  width: 62vw;height: auto;
}
.sec02 .lead02 {
  font-size:5.867vw;
  letter-spacing: 0;
  color: #fff;
  font-weight: 700;
  text-align: center;
  margin: 3vw 0 0;
}
.sec02 .txt {
  font-size:4vw;
  line-height: 1.8;
  font-weight: 500;
  color: #fff;
  letter-spacing: 0;
  margin: 7vw auto 0;
  width: 92vw;
}
.sec02 .txt .large {
  font-size:5.333vw;
  font-weight: 700;
}
.sec02 .txt .line {
  color: #edd6b7;
  border-bottom: 1px solid #fff;
}


/* sec03
-------------------------------------*/
.sec03{
  background: url(../img/sec03-bg-sp.png)no-repeat;
  background-size: cover;
  margin: -14vw 0 0;
}
.sec03 .inner {
  width: 92vw;
  margin-inline: auto;
  padding: 22vw 0 10.8vw;
}
.sec03 .subt {
  font-size: 7.467vw;
  font-weight: 700;
  letter-spacing: 0.02em;
  text-align: center;
  background: #ed1c24;
  color: #fff;
  width: 69vw;
  margin-inline: auto;
  padding: 0vw 0 2vw;
}
.sec03 .subt .color {
  color: #f1d4b2;
}
.sec03 .subt .num {
  font-size:8.667vw;
  letter-spacing: 0.02em;
  color: #fff;
  font-weight: 700;
  color: #f1d4b2;
}
.sec03 .subt .small {
  font-size:6.533vw;
}
.sec03 .subt02 {
  margin: 3vw auto 0;
  width: 65vw;
  padding: 1vw 0 2vw;
}
.sec03 .subt03 {
  font-size:5.067vw;
  font-weight: 700;
  text-align: center;
  margin: 3vw 0 0;
}
.sec03 h2 {
  font-size:7.333vw;
  font-weight: 700;
  color: #e50c1c;
  margin: 1vw 0 0;
  letter-spacing: -0.04em;
  text-align: center;
}
.sec03 .movie-box {
  width: 80vw;
  height: 45vw;
  margin-inline: auto;
  background: #b3b3b3;
  margin-top: 7vw;
}
.sec03 .movie-box video {
  width: 100%;
  max-width: 80vw;
}
.sec03 .txt-box {
  background: #fff;
  box-shadow: 6px 6px 6px rgba(112, 97, 50, 0.4);
  margin: 8vw auto 0;
  padding: 6vw 4vw 6.4vw;
}
.sec03 .txt-box .txt {
  font-size:4vw;
  line-height: 1.5666;
  letter-spacing: 0;
  font-weight: 500;
  text-align: justify;
}
.sec03 .txt-box .txt:nth-of-type(2) {
  margin: 0.5vw 0 2vw;
}
.sec03 .txt-box .txt span {
  color: #ed1c24;
  font-size:4.4vw;
  line-height: 1.3636;
  font-weight: 700;
  margin: 2vw 0 0;
  display: inline-block;
}


/* sec04
-------------------------------------*/
.sec04 {
  background: url(../img/sec04-bg-sp.png)no-repeat;
  background-size: 100%;
  background-position: top 2vw center;
  overflow: hidden;
}
.sec04 .inner {
  padding: 10vw 0 11vw;
}
.sec04 .subt {
  width: 92vw;
  font-size:5.2vw;
  font-weight: 700;
  letter-spacing: 0.02em;
  text-align: center;
  margin-inline: auto;
  position: relative;
}
.sec04 .subt::before {
  content: "";
  position: absolute;
  width: 3vw;
  height: 5vw;
  background: url(../img/sec04-line-left-sp.png)no-repeat;
  top: 10%;
  left: 0;
  background-size: contain;
}
.sec04 .subt::after {
  content: "";
  position: absolute;
  width: 3vw;
  height: 5vw;
  background: url(../img/sec04-line-right-sp.png)no-repeat;
  top: 10%;
  right: 0;
  background-size: contain;
}
.sec04 .ttl-box {
  position: relative;
  margin: 4vw 0 51vw;
}
.sec04 .ttl-box .subt02 {
  color: #fff;
  font-size:5.467vw;
  letter-spacing: 0.02em;
  position: absolute;
  right: 11.4vw;
  top: 2vw;
  height: 4vw;
  z-index: 3;
  font-weight: 700;
  background: #1a1a1a;
  clip-path: polygon(2% 0%, 100% 0%, 98% 100%, 0% 100%);
  padding: 1vw 3vw 7.4vw 3vw;
}
.sec04 .ttl-box h2 {
  color: #e50c1c;
  font-size:11.6vw;
  letter-spacing: 0.02em;
  text-align: center;
  font-weight: 700;
}
.sec04 .ttl-box h2 span {
  font-size: 23vw;
  font-weight: 900;
}
.sec04 .point {
  position: relative;
  margin-inline: auto;
}
.sec04 .point:not(:last-child) {
  margin-bottom: 58vw;
}
.sec04 .point .content-box {
  background: #ffffff;
  box-shadow: 10px 10px 10px rgba(127, 127, 126, 0.6);
  width: 92vw;
  position: relative;
  padding: 1vw 0.6vw 7vw 0;
  z-index: 3;
}
.sec04 .point .content-box .num {
  position: absolute;
  top: -12vw;
  left: 5.5vw;
}
.sec04 .point .content-box .en {
  margin: 0 0 0 6vw;
}
.sec04 .point01 .content-box .num img {
  width: 13.5vw;
}
.sec04 .point02 .content-box .num img {
  width: 13.4vw;
}
.sec04 .point03 .content-box .num img {
  width: 14vw;
}
.sec04 .point04 .content-box .num img {
  width: 13vw;
}
.sec04 .point05 .content-box .num img {
  width: 14vw;
}
.sec04 .point .en img {
  width: 10.7vw;
}
.sec04 .point .content-box h3 {
  font-size:5.333vw;
  font-weight: 700;
  line-height: 1.575;
  letter-spacing: 0.02em;
  margin: 1vw 0 0 4vw;
  position: relative;
}
.sec04 .point .content-box h3::after {
  position: absolute;
  content: "";
  background: url(../img/sec04-line-l-sp.png)no-repeat;
  background-size: contain;
  bottom: -4.3vw;
  left: -4vw;
  width: 100%;
  height: 0.43vw;
}
.sec04 .point .content-box h3 span {
  color: #ed1c24;
}
.sec04 .point .content-box .txt {
  font-size:4vw;
  font-weight: 500;
  line-height: 1.63333;
  letter-spacing: 0.06em;
  margin: 8vw 4vw 0;
  text-align: justify;
}
.sec04 .point .content-box .txt span {
  color: #e50c1c;
  font-weight: 700;
}
.sec04 .point .photo {
  position: absolute;
  top: -43.4vw;
  right: -2vw;
  width: 78.3vw;
}

.sec04 .reverse .content-box {margin-left: auto;padding: 1vw 1vw 7vw 0;}
.sec04 .reverse .content-box .num{        right: 6vw;
  left: unset;}
  .sec04 .reverse .content-box .en {
    margin: 0 5vw 0 0;
  }
.sec04 .reverse .content-box .en img{
  margin: 0 2vw 0 auto;
}
.sec04 .reverse .photo {
  position: absolute;
  top: -48.8vw;
  left: 0vw;
}
.sec04 .point02 .photo {top: -48vw;}
.sec04 .point03 .photo {top: -48vw;}
.sec04 .point04 .photo {top: -48vw;}
.sec04 .point05 .photo {top: -48vw;}


/* sec05
-------------------------------------*/
.sec05 {
  background: url(../img/sec05-bg.png)no-repeat;
  background-size: cover;
  padding: 5vw 0 0;
  overflow: hidden;
}
.sec05 .inner {
  padding: 0 0 16.2vw;
}
.sec05 .subt {
  width: 105.6vw;
  background: url(../img/sec05-title-bg-sp.png)no-repeat;
  background-size: cover;
  color: #edd6b7;
  font-size:6vw;
  letter-spacing: 0.05em;
  text-align: center;
  position: relative;
  font-weight: 700;
  padding: 1.25vw 0 1.5vw;
  margin: 0 0 0 -2.6vw;
}
.sec05 .subt .num {
  font-size:7.733vw;
  letter-spacing: 0.05em;
  color: #edd6b7;
  text-align: center;
}
.sec05 h2 {
  text-align: center;
  font-size:5.867vw;
  letter-spacing: 0.02em;
  font-weight: 700;
  position: relative;
  margin: 4.8vw 0 0;
}
.sec05 h2 span {
  background: url(../img/sec05-title-fukidashi-sp.png)no-repeat;
  background-size: cover;
  color: #e50c1c;
  font-size:8.667vw;
  letter-spacing: 0.02em;
  text-align: center;
  display: block;
  width: 46vw;
  margin-inline: auto;
  margin-top: 4vw;
  padding: 2.8vw 0 7.8vw;
}
.sec05 .photo {
  width: 88.4vw;
  margin-inline: auto;
  margin-top: -10vw;
}
.sec05 .photo img {
  width: 100%;
  height: auto;
}
.sec05 .list {
  display: grid;
  width: 92vw;
  margin-inline: auto;
  margin-top: 7vw;
  gap: 9.2vw;
}
.sec05 .list li {
  background: #fff;
  box-shadow: 10px 10px 7px rgba(147, 135, 99, 0.4);
  position: relative;
  overflow: hidden;
  padding: 0 0 2vw;
}
.sec05 .list li::before {
  content: "";
  position: absolute;
  width: 19.6vw;
  height: 19.6vw;
  background: url(../img/sec05-list-circle.png)no-repeat;
  background-size: contain;
  top: -11vw;
  left: 50%;
  transform: translateX(-50%);
}
.sec05 .list li .num {
  position: relative;
  z-index: 2;
  margin: 0 0 2.5vw;
}
.sec05 .list li .num img{
  margin-inline: auto;
}
.sec05 .list li:nth-child(1) .num img{
  width: 6vw;
}
.sec05 .list li:nth-child(2) .num img{
  width: 7.2vw;
}
.sec05 .list li:nth-child(3) .num img{
  width: 7vw;
}
.sec05 .list li:nth-child(4) .num img{
  width: 7vw;
}
.sec05 .list li:nth-child(5) .num img{
  width: 7vw;
}
.sec05 .list li:nth-child(6) .num img{
  width: 8vw;
}
.sec05 .list li:nth-child(7) .num img{
  width: 7vw;
}
.sec05 .list li .head {
  background: #edd6b7;
  text-align: center;
  padding: 1vw 0 4vw;
}
.sec05 .list li .subt {
  font-size:4.933vw;
  letter-spacing: 0;
  color: #1a1a1a;
  display: inline-block;
  padding: 2vw 0vw 4.9vw;
  margin-inline: auto;
  width: 73.5vw;
}
.sec05 .list li:nth-child(1) .subt {
  background: url(../img/sec05-subtitle-fukidashi1-sp.png)no-repeat;
  background-size: cover;
}
.sec05 .list li:nth-child(2) .subt {
  background: url(../img/sec05-subtitle-fukidashi2-sp.png)no-repeat;
  background-size: cover;
  padding: 3vw 0 3.9vw;
  width: 62.9vw;
  line-height: 1.216;
}
.sec05 .list li:nth-child(3) .subt {
  background: url(../img/sec05-subtitle-fukidashi3-sp.png)no-repeat;
  background-size: cover;
  width: 39vw;
}
.sec05 .list li:nth-child(4) .subt {
  background: url(../img/sec05-subtitle-fukidashi4-sp.png)no-repeat;
  background-size: cover;
  width: 62vw;
}
.sec05 .list li:nth-child(5) .subt {
  background: url(../img/sec05-subtitle-fukidashi5-sp.png)no-repeat;
  background-size: cover;
  width: 85vw;
}
.sec05 .list li:nth-child(6) .subt {
  background: url(../img/sec05-subtitle-fukidashi6-sp.png)no-repeat;
  background-size: cover;
  width: 76.5vw;
}
.sec05 .list li:nth-child(7) .subt {
  background: url(../img/sec05-subtitle-fukidashi7-sp.png)no-repeat;
  background-size: cover;
  width: 31vw;
}
.sec05 .list li h3 {
  font-size:6.4vw;
  font-weight: 700;
  letter-spacing: 0;
  line-height: 1.5;
}
.sec05 .list li h3 span {
  color: #e50c1c;
  font-size:7.6vw;
  letter-spacing: 0;
}
.sec05 .list li h3 .small {
  font-size:6.4vw;
  color: #1a1a1a;
}
.sec05 .list .txt {
  font-size:3.733vw;
  line-height: 1.642857;
  letter-spacing: 0;
  padding: 3.7vw 4.4vw 4.7vw;
  margin-inline: auto;
  font-weight: 600;
  text-align: justify;
}
.sec05 .list .txt span {
  font-weight: 700;
  background: linear-gradient(transparent 18%, #edd6b7 25%);
}
.sec05 .desc {
	font-size:2.8vw;
	line-height: 1.5238;
	letter-spacing: 0;
	width: 92vw;
	margin-inline: auto;
	margin-top: 7vw;
	font-weight: 600;
}


/* sp cta02
-------------------------------------*/
/* cta02
-------------------------------------*/
.cta.cta02 {
  background-image: url(../img/cta-bg2-sp.png);
  background-repeat: no-repeat;
  background-size: cover;
}
.cta02 .inner {padding: 7vw 0 10vw;}
.cta.cta02 .cta-ttl {
  color: #fff;
}
.cta.cta02 .cta-ttl .num {
  font-size:8.667vw;
}
.cta.cta02 .img img {
  margin: 5vw 0 0 1vw;
}
.cta.cta02 .cta-ttl .line{
  background: linear-gradient(transparent 79%, #82111f 10%);
  font-weight: 800;
}
.cta.cta02 .cta-ttl .yellow {
  font-size: 10.667vw;
  letter-spacing: 0.02em;
  font-weight: 800;
  color: #f4e97a;
}



/* sec06
-------------------------------------*/
.sec06 {
  margin: 1vw 0 0;
  padding: 0 0 20vw;
  background: url(../img/sec06-bg1-sp.png) no-repeat,
  url(../img/sec06-bg4-sp.png) no-repeat;
  background-size: contain, contain;
  background-position: top 36vw center, top 269vw center;
  position: relative;
  overflow: hidden;
}
.sec06 h2 {
  color: #edd6b7;
  text-align: center;
  font-size:10.667vw;
  letter-spacing: 0.02em;
  background: url(../img/sec06-title-bg-sp.png) no-repeat;
  background-size: cover;
  font-weight: 700;
  padding: 9.5vw 0 12.4vw;
  line-height: 1.2;
}
.sec06 h2 .small02 {
  font-size:9.333vw;
  letter-spacing: 0.02em;
}
.sec06 h2 .small {
  font-size:9.333vw;
  letter-spacing: 0.02em;
}
.sec06 h2 .num {
  font-size:12.667vw;
}
.sec06 .bkomi {
  background: url(../img/sec06-bg2-sp.png) no-repeat;
  background-size: 105vw;
  margin-top: 55.5vw;
  padding: 0 0 40vw;
  background-position: top left -1vw;
  position: relative;
  z-index: 5;
}
.sec06 .bkomi .content {margin-inline: auto;padding: 10vw 4vw 4.2vw 8vw;position: relative;z-index: 2;text-align: justify;}
.sec06::before {
  content: "";
  position: absolute;
  width: 59vw;
  height: 98.8vw;
  background: url(../img/sec06-bkomi-sp.png) no-repeat;
  background-size: contain;
  top: 44.2vw;
  left: 1vw;
}
.sec06 .bkomi .content h3 {
  font-size:5.467vw;
  font-weight: 700;
  margin-bottom: 2vw;
  position: absolute;
  top: -31vw;
  right: 0;
  text-align: right;
}
.sec06 .bkomi .content .h3-txt {
  margin: 0 5vw 0 0;
}
.sec06 .bkomi .content h3 .num{
	font-size:6.8vw;
}
.sec06 .bkomi .content h3 img {
    width: 66.3vw;
    margin: 2vw 0 0;
}
.sec06 .bkomi .content .txt {
  font-size:4vw;
  line-height: 1.6;
  letter-spacing: 0.01em;
  font-weight: 500;
}
.sec06 .bkomi .content .txt:nth-of-type(2) {margin: 3.2vw 0 0;}
.sec06 .bkomi-career {
  background: url(../img/sec06-bg3-sp.png) no-repeat;
  background-size: cover;
  position: absolute;
  z-index: 2;
  margin-top: 2vw;
  left: 0;
  width: 96vw;
}
.sec06 .bkomi-career .inner {
  margin: 0px 2vw;
  padding: 8.4vw 2.2vw 7vw;
}
.sec06 .bkomi-career h3 {
  background: #fff;
  font-size:3.867vw;
  letter-spacing: 0;
  display: inline-block;
  font-weight: 700;
  padding: 1vw 1.4vw;
}
.sec06 .bkomi-career .list {
  display: grid;
  gap: 0px;
  margin: 2vw 0 0;
}
.sec06 .bkomi-career .list li {
  color: #fff;
  font-size:3.733vw;
  line-height: 1.6485714;
  letter-spacing: 0.02em;
  position: relative;
  padding: 0 0 0 3.3vw;
  font-weight: 500;
}
.sec06 .bkomi-career .list li span {
  display: block;
  font-size:3.6vw;
  line-height: 1.7;
  margin: 0vw 0 0vw;
}
.sec06 .bkomi-career .list li::before {
  content: "・";
  position: absolute;
  font-size: 3.3vw;
  left: 0;
  color: #fff;
  top: 0.8vw;
}

.sec06 .yenzo {
  position: relative;
  margin: 146vw 0 0;
}
.sec06 .yenzo-inner {
  background: url(../img/sec06-bg5-sp.png) no-repeat;
  background-size: 104vw;
  /* margin-top: 4vw; */
  padding: 6vw 0 124vw;
  background-position: top 2vw right -1vw;
  position: relative;
  z-index: 2;
}
.sec06 .yenzo .content {position: relative;}
.sec06::after {
  content: "";
  position: absolute;
  width: 81.8vw;
  height: 80vw;
  background: url(../img/sec06-yenzo-sp.png) no-repeat;
  background-size: contain;
  top: 296vw;
  right: -18vw;
}
.sec06 .yenzo .content h3 {
  font-size: 5.467vw;
  font-weight: 700;
  margin-bottom: 2vw;
  position: absolute;
  top: -38.8vw;
  left: 0vw;
  text-align: left;
  z-index: 2;
}
.sec06 .yenzo .content h3 .small {
  margin: 0 0 0 4.5vw;
  text-align: left;
  display: block;
  line-height: 1.2;
}
.sec06 .yenzo .content h3 .num{
  font-size:6.8vw;
}
.sec06 .yenzo .content h3 img {margin: 2vw 0 0;        width: 62.7vw;}
.sec06 .yenzo .content .txt {
  font-size:4vw;
  line-height: 1.6;
  letter-spacing: 0;
  font-weight: 500;
  margin: 0 7vw 1vw 4vw;
  padding: 6vw 0 6vw;
  text-align: justify;
}

.sec06 .yenzo-career {
  background: url(../img/sec06-bg6-sp.png) no-repeat;
  background-size: cover;
  position: absolute;
  z-index: 2;
  right: 0;
  top: 89vw;
  width: 96vw;
}
.sec06 .yenzo-career .inner {
  margin: 0 auto;
  padding: 8vw 5vw 7vw;
}
.sec06 .yenzo-career h3 {
  background: #fff;
  font-size:3.867vw;
  letter-spacing: 0;
  display: inline-block;
  font-weight: 700;
  padding: 1vw 1.5vw;
}
.sec06 .yenzo-career .list {
  display: grid;
  gap: 0px;
  margin: 2.9vw 0 0 -0.5vw;
}
.sec06 .yenzo-career .list li {
  color: #fff;
  font-size:3.733vw;
  line-height: 1.6;
  letter-spacing: 0.01em;
  position: relative;
  padding: 0 0 0 1vw;
  font-weight: 500;
}
.sec06 .yenzo-txt {
  font-size:4vw;
  line-height: 1.6;
  letter-spacing: 0.01em;
  margin: -48.6vw 0 0 3.75vw;
  font-weight: 500;
  width: 88.7vw;
  position: relative;
  z-index: 2;
  text-align: justify;
}

/* sec07
-------------------------------------*/
.sec07 {
  background: #f9e8ea;
}
.sec07 .inner {
  width: 92vw;
  margin-inline: auto;
  padding: 6vw 0 0;
  overflow: hidden;
}
.sec07 .ttl-box {
  position: relative;
  margin: 0 0 0 24vw;
  padding: 0 0 2vw;
}
.sec07 .ttl-box .subt {
  color: #fff;
  font-size:5.067vw;
  letter-spacing: 0.03em;
  background: url(../img/sec07-fukidashi-sp.png) no-repeat;
  background-size: contain;
  display: inline-block;
  margin: 0 0 0 2vw;
  font-weight: 700;
  padding: 4vw 4.8vw 4vw 6vw;
  transform: rotate(-2deg);
}
.sec07 .ttl-box h2 {
  color: #e50c1c;
  font-size:7.333vw;
  letter-spacing: 0.03em;
  font-weight: 700;
  text-align: center;
  margin: 1vw 0 0 8vw;
  line-height: 1.4;
}
.sec07 .ttl-box::before {
  content: "";
  position: absolute;
  width: 35.5vw;
  height: 49.6vw;
  background: url(../img/sec07-photo-sp.png)no-repeat;
  bottom: -9vw;
  left: -26vw;
  background-size: contain;
}
.sec07 .list {
  background: #fff;
  border: 1px solid #1a1a1a;
  display: grid;
  gap: 7vw;
  padding: 7.2vw 2vw 0vw;
  position: relative;
  margin: 3vw 0 0;
  z-index: 2;
}
.sec07 .list li {
  position: relative;
  padding: 0 0 7vw;
}
.sec07 .list li:not(:last-child)::after {
  position: absolute;
  content: "";
  background: url(../img/sec07-tenten-sp.png)no-repeat;
  background-size: contain;
  width: 84.5vw;
  height: 0.6vw;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
}
.sec07 .list li h3 {
  font-size:4.133vw;
  letter-spacing: 0;
  position: relative;
  font-weight: 700;
  padding: 0 0 0 7vw;
  margin: 0 0 4.4vw 1vw;
}
.sec07 .list li h3::before {
  content: "";
  position: absolute;
  width: 3.9vw;
  height: 3.8vw;
  background: url(../img/sec07-batsu-sp.png) no-repeat;
  top: 0.5vw;
  left: 0.5vw;
  background-size: contain;
}
.sec07 .list li .txt {
  font-size:3.733vw;
  line-height: 1.5;
  font-weight: 500;
  margin: 0 0 0 2vw;
}

/* sec08
-------------------------------------*/
.sec08 {
  background-color: #F9E8EA;
}
.sec08 .inner {
  width: 92vw;
  margin-inline: auto;
  padding: 6vw 0 5vw;
}
.sec08 .sec08-ttl {
  width: 49.9vw;
  margin-inline: auto;
  position: relative;
  z-index: 10;
}
.sec08 .sec08-ttl img {
  width: 100%;
}
.sec08 .qa-list {
  margin-bottom: 40px;
  position: relative;
  z-index: 10;
  margin: 0.5vw 0 0;
}
.sec08 .qa-list li {
  margin-bottom: 5.7vw;
}
.sec08 .qa-list li .qa-ttl {
  background: #e50c1c;
  color: #FFFFFF;
  font-size: 4.267vw;
  font-weight: 500;
  line-height: 1.6;
  position: relative;
  padding: 2.2vw 6vw 2.2vw 11.8vw;
  cursor: pointer;
}
.sec08 .qa-list li .qa-ttl::before {
  content: "";
  position: absolute;
  width: 6.2vw;
  height: 7.4vw;
  background-image: url(../img/sec08-q-sp.png);
  background-size: contain;
  top: 17%;
  left: 4vw;
  background-repeat: no-repeat;
}
.sec08 .qa-list li:first-child .qa-ttl::before {top: 19%;}
.sec08 .qa-list li .qa-ttl::after {
  content: "";
  position: absolute;
  width: 3.6vw;
  height: 3.5vw;
  background-image: url(../img/sec08-hiraku-sp.png);
  background-size: contain;
  top: 50%;
  right: 2vw;
  transform: translateY(-50%);
  background-repeat: no-repeat;
}
.sec08 .qa-list li .qa-ttl.is-active::after {
  width: 3.6vw;
  height: 0.3vw;
  background-image: url(../img/sec08-tojiru-sp.png);
  background-size: contain;
  background-repeat: no-repeat;
  transition: .3s;
}
.sec08 .qa-list li .accordion-content {
  background-color: #fff;
}
.accordion-content {
  line-height: 0;
  height: 0;
  overflow: hidden;
  opacity: 0;
  transition-duration: .3s;
}
.accordion-content.is-open {
  line-height: normal;
  height: auto;
  opacity: 1;
}
.sec08 .qa-list li .accordion-content .txt {
  font-size: 3.867vw;
  line-height: 1.53;
  padding: 2.4vw 3.8vw 2.8vw;
  text-align: justify;
  text-justify: inter-ideograph; /* Edge */
  line-break: strict;
  word-break: break-word;
  overflow-wrap: break-word;
  word-wrap: break-word;
}
.sec08 .sec08-txt-box {
  margin-top: 9.2vw;
  width: 92vw;
  margin-inline: auto;
}
.sec08 .sec08-txt-box .txt {
  font-size: 2.80vw;
  line-height: 1.33;
  margin: 0 0 4vw;
}


/* sec09
-------------------------------------*/
.sec09 {
  background: url(../img/sec09-bg-sp.png) no-repeat;
  background-size: cover;
  background-position: top center;
}
.sec09 .inner {
  width: 94vw;
  margin-inline: auto;
  padding: 6.6vw 0 12vw;
}
.sec09 h2 {
  font-size: 8.933vw;
  font-weight: 700;
  letter-spacing: -0.04em;
  text-align: center;
  line-height: 1.5;
  position: relative;
}
.sec09 h2 .small {
  font-size:7.467vw;
}
.sec09 .subt {
  font-size:7.2vw;
  letter-spacing: -0.02em;
  text-align: center;
  font-weight: 700;
  position: relative;
  margin: 2vw auto 10vw;
  width: 60vw;
}
.sec09 .subt::before {
  content: "";
  position: absolute;
  width: 5.4vw;
  height: 0.2vw;
  background: #1a1a1a;
  top: 50%;
  transform: translateX(-50%);
  left:0;
}
.sec09 .subt::after {
  content: "";
  position: absolute;
  width: 5.4vw;
  height: 0.3vw;
  background: #1a1a1a;
  top: 50%;
  transform: translateX(50%);
  right:0;
}
.sec09 .txt {
  font-size:3.867vw;
  line-height: 1.62068;
  letter-spacing: 0;
  width: 92vw;
  margin-inline: auto;
  margin-bottom: 6.4vw;
  font-weight: 500;
  position: relative;
}
.sec09 h2::after{
  position: absolute;
  content: "";
  background: url(../img/sec09-line-sp.png)no-repeat;
  background-size: contain;
  width: 90.6vw;
  height: 0.7vw;
  bottom: -15vw;
  left: 50%;
  transform: translateX(-50%);
}

/* footer
-------------------------------------*/
.footer {
  background-color: #101010;
  padding: 4vw 0 4vw;
}
.footer .footer-link {
  display: flex;
  justify-content: center;
  gap: 11vw;
}
.footer .footer-link li a {
  font-size: 3vw;
  font-weight: 400;
  color: #FFFFFF;
  line-height: 1.8235;
  text-decoration: none;
}
.footer .footer-link li:first-child{
  position: relative;
}
.footer .footer-link li:first-child::after{
  content: "";
  position: absolute;
  width: 1px;
  height: 2.8vw;
  background-color: #FFFFFF;
  top: 57%;
  right: -5.8vw;
  transform: translateY(-50%);
}
.footer .footer-txt-box {
  margin-top: 3vw;
  text-align: center;
  background-repeat: no-repeat;
  padding: 0 5vw;
}
.footer .footer-txt {
  font-size: 2.66vw;
  font-weight: 400;
  color: #FFFFFF;
  line-height: 1.8235;
  margin-top: 2vw;
}
.footer .footer-logo {width: 46vw;margin-inline: auto;margin-top: 20px;}
.footer .footer-logo img {
  width: 100%;
}
.footer .copyright {
  text-align: center;
  color: #FFFFFF;
  margin-top: 6vw;
  font-size: 2.2vw;
}

}