@charset "utf-8";
/* Section Hero */
.sec-hero {
  padding-block: 40px 100px;
  background-image: url(../img/index/bg_hero_pc.png);
	background-repeat: no-repeat;
  background-size: cover;
	background-position: center;
  height: 100%;
  overflow: hidden;
}

.sec-hero .hero-ttl,
.sec-hero .hero-btn,
.sec-hero .hero-img-side,
.sec-hero .learn-more {
  opacity: 0;
}

.sec-hero .sec-wrap.hero-btm-wrap {
  --max-width: 1100px;
	--padding:0;
	margin-inline: 0;
}

.hero-btm-txt {
	padding-left: min(7.321vw,100px);
	position: relative;
	z-index: 1;
}

.hero-btm-txt::after {
	position: absolute;
	background-image: url(../img/index/img_mv_bottom.png);
	background-repeat: no-repeat;
	background-size: contain;
	background-position: left;
	width: 1170px;
	height: 214px;
	content: '';
	bottom:-120px;
	left:0;
	z-index: -1;
}


.sec-hero .subtitle {
  font-size: min(1.903vw, 1.625rem);
  color: var(--clr-primary);
  padding-block: .2813rem .5rem;
  padding-left: .3125rem;
}

.sec-hero .mv-top-pc {
  background-color: #000;
  position: relative;
  width: 100%;
  z-index: 0;
}


.sec-hero .hero-triangle {
  top: -40px;
  position: absolute;
  left: 50%;
}

.sec-hero .hero-triangle .top-right {
  display: flex;
  justify-content: flex-start;
  aspect-ratio: 1.91 / 1;
  width: min(55.461vw, 843px);
  background-color: #004CFF;
  clip-path: polygon(100% 0, 0 0, 59% 100%);
}

.sec-hero .hero-triangle .hero-intro {
  margin-top: 2.5rem;
  margin-left: 10.9375rem;
}

.sec-hero .mv-top {
background-color: #000;
}

.sec-hero .hero-top {
  display: flex;
  column-gap: 50px;
	justify-content: flex-end;
	align-items: center;
}

.sec-hero .hero-top .top-right {
  text-align: center;
	max-width: 466px;
	justify-self: flex-end;
  z-index: 2;
}

.sec-hero .hero-btm {
  display: flex;
  align-items: end;
  column-gap: var(--space-70);
  justify-content: center;
	align-items: center;
	position: relative;
}

.sec-hero .hero-btm .hero-img-side {
	flex : 0 1 660px;
	max-width: 100%;
	position: relative;
	top:50px;
}

.sec-hero .hero-btm .event-list {
  display: flex;
  gap: var(--space-15);
  color: var(--clr-accent-600);
}

.sec-hero .event-list .event-item {
  background-color: var(--clr-neutral-100);
  border-radius: 100vw;
  text-align: center;
  font-size: 1.125rem;
  padding-inline: 1.375rem;
	min-width: 11.75rem;
	height: 1.8125rem;
	display: inline-flex;
	justify-content: center;
}

.sec-hero .event-list {
  display: flex;
	align-items: center;
  gap: var(--space-15);
  color: var(--clr-accent-600);
	margin-left: 1.875rem;
}

.sec-hero .top-right-ttl {
	font-size: min(2.195vw, 1.875rem);
  text-align: center;
}

.sec-hero .hero-btn-ttl {
	font-size: 1.5625rem;
}

.top-right-ttl strong {
  letter-spacing: 3px;
}

.sec-hero .hero-btn-ttl.h-slash::before,
.sec-hero .hero-btn-ttl.h-slash::after {
    background-color: var(--clr-neutral-100);
}

.sec-hero .learn-more {
  width: min(11.201vw,153px);
	position: absolute;
	bottom: -15px;
	right: 5%;
	height: 15.875rem;
}

.hero-btm-txt .spnone .btn {
	min-width: 32.25rem;
}

.cum-number {
	padding-left: 53.125rem;
}

/* Section Other Banner */
.swiper-wrapper {
  align-items: center;
  -webkit-transition-timing-function: linear !important;
  -o-transition-timing-function: linear !important;
  transition-timing-function: linear !important;
}

.swiper-slide {
  width: 150px;
}

.swiper-slide.medium-slide {
  width: 100px;
}

.swiper-slide.small-slide {
  width: 50px;
}

/* Section Record */
.sec-record .hero-btn-ttl {
	font-size: .875rem;
}

.sec-record .btn-wrap {
	position: relative;
}

.sec-record .btn-wrap::before,
.sec-record .btn-wrap::after {
	position: absolute;
	content: '';
	height: 2.5rem;
}

.sec-record .btn-wrap::before {
	background: url(../img/index/img_record_left.png) no-repeat center / contain;
	width: .875rem;
	left: 15%;
	top:-17px;
}

.sec-record .btn-wrap::after {
	background: url(../img/index/img_record_right.png) no-repeat center / contain;
	width: 1.1875rem;
	right: 11%;
	top: -17px;
}

.sec-record .h-slash::before,
.sec-record .h-slash::after {
  width: 1.25rem;
  height: 1px;
  background-color: var(--clr-neutral-900);
}

.sec-record .record-img {
	padding-inline: 4.375rem;
}

/* Section Any Concerns */
.sec-any-concerns {
	padding-block: 5.625rem var(--space-45);
	position: relative;
}

.concerns-wrap {
	display: flex;
	align-items: center;
	flex-direction: column;
	background-color: var(--clr-primary);
	row-gap: var(--space-35);
	background: url(../img/index/bg_q_ico_blue_pc.svg) no-repeat center/ contain;
	height: 100%;
	height: 112rem;
	width: 100%;
}

.concerns-wrap .sec-ttl {
	color: var(--clr-neutral-100);
	padding-block: var(--space-70) var(--space-25);
	line-height: 1.5;
}

.card {
	padding : var(--space-30) var(--space-30) var(--space-50) var(--space-40);
	border-radius: 50px;
	background-color: var(--clr-neutral-100);
	border: 1px solid transparent;
	display: flex;
	justify-content: space-between;
	column-gap: 1.25rem;
}

.concerns-wrap .card .sub-ttl {
	border-top: 2px solid var(--clr-primary);
	border-bottom: 2px solid var(--clr-primary);
	padding-block: var(--space-10) var(--space-20);
}

.card .card-left {
	min-width: 19.375rem;
}

.card .card-right {
	min-width: 20.1875rem;
}

.card-inner {
	column-gap: var(--space-15);
	justify-content: space-between;
}

.card-inner-para p {
	position: relative;
}

.card-inner-para p::before {
	position: absolute;
	content: '・';
	left: 0;
}

.card-inner-para p span {
	padding-left: .9375rem;
}

.concerns-wrap .card-right .sub-ttl {
	border: 0;
	background-color: var(--clr-primary);
	color: var(--clr-neutral-100);
	border-radius: 33px;
	padding: .9375rem 1.25rem;
	min-width: 20.25rem;
	display: inline-flex;
	justify-content: center;
	align-items: center;
	text-align: center;
}

.concerns-wrap .card-right-inner {
	display: flex;
	flex-direction: column;
	row-gap: .3125rem;
}

.concerns-wrap .card-right-inner img {
	margin-inline: auto;
}

.concerns-wrap .card-center {
	display: inline-flex;
	justify-content: center;
	align-items: center;
}

.hero-ttl {
	position: relative;
}

.hero-ttl::after {
	position: absolute;
	content: '';
	background: url(../img/index/img_mv_deco_pc.png) no-repeat right/auto;
	width: 86px;
  height: 176px;
  top: 5px;
  right: -145px;
}

.hero-ttl::before {
	position: absolute;
	content: '';
	background: url(../img/index/img_mv_deco_pc01.png) no-repeat right/auto;
	width: 52px;
  height: 87px;
  top: 70px;
  left:-65px;
}

.top-right-ttl strong {
	letter-spacing: 3px;
}
/* Section QR Code */
.qr-code-wrap {
	display: grid;
	grid-template-columns: repeat(4,1fr);
	column-gap: var(--space-50);
}

.qr-code {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	background: url(../img/index/bg_q_ico_green_pc.svg) no-repeat center/ contain;
	width: 100%;
	height: 23.5625rem;
	row-gap: var(--space-10);
	text-align: center;
}

.qr-code img {
	border-radius: 30px;
}

.qr-code .btn-view-more-primary {
	min-width: 11.125rem;
  max-width: 100%;
  height: 1.5rem;
  padding-inline: 10px 3px;
  padding-block: 0;
  column-gap: 0;
  justify-content: space-between;
  border-radius: 12px;
}

.sec-qr-code .btn-view-more {
	min-width: 31.25rem;
	padding-left: 5.3125rem;
}

.qr-code .news {
	color: var(--clr-cta-300);
	position: absolute;
	top: -40px;
	left: 3.125rem;
}

.qr-code .news.h-slash::before,
.qr-code .news.h-slash::after {
  display: block;
  position: absolute;
  top: 50%;
  width: 1.6875rem;
  height: .0625rem;
  transform: translateY(-50%);
  content: '';
  background-color: var(--clr-cta-300);
}

.qr-code .news.h-slash::before {
  left: 70%;
  rotate: -55deg;
}

.qr-code .news.h-slash::after {
  right: 70%;
  rotate: 55deg;
}


.qr-code-wrap div.qr-code:last-child {
	position: relative;
}

/* Section Faq*/
.sec-faq {
	padding-block: var(--space-80);
}

.sec-faq .faq-tab .q-ttl,
.sec-faq .faq-tab .answer-ttl {
  display: flex;
  align-items: center;
  padding: 1rem var(--space-20);
  gap: var(--space-10);
}

.sec-faq .faq-tab .faq-q {
  background-color: var(--clr-primary);
}

.sec-faq .faq-tab .faq-a {
  background-color: var(--clr-neutral-900);
}

.sec-faq .faq-tab .q-ttl::before {
  width: 2rem;
  height: 2rem;
  content: "";
  background-image: url(../img/common/ico_faq_question.svg);
  background-repeat: no-repeat;
  background-position: center;
}

.sec-faq .faq-tab .answer-ttl::before {
  width: 2rem;
  height: 2rem;
  content: "";
  background-repeat: no-repeat;
  background-position: center;
  background-image: url(../img/common/ico_faq_answer.svg);
}

.sec-faq .faq-tab .q-ttl span,
.sec-faq .faq-tab .answer-ttl span {
  flex: 1;
}

/* Event Management */
.sec-event-management .h-slash::before,
.sec-event-management .h-slash::after {
	width: 3.375rem;
	background-color: var(--clr-neutral-900);
}

.sec-event-management .demo-btn::before {
	top: -175%;
	width: 3.5625rem;
	height: 152px;
	left: 16%;
}

.sec-event-management .demo-btn::after {
	top: -170%;
	width: 5.9375rem;
	height: 9.875rem;
}

/* Other Banner */
.other-banners {
	padding-block: var(--space-40);
}

.other-banners .banner-grid {
  gap: var(--space-10);
}

.other-banners .banner-grid img {
  width: 100%;
}

.other-banners .banner-grid a:hover {
  opacity: 0.5;
}

/* Section Feature */
.sec-feature .feature+.feature {
	margin-top: var(--space-70);
}

.sec-feature .feature {
  gap: 5.625rem;
	border-radius: 180px;
	background-color: var(--clr-secondary);
	z-index: 1;
	position: relative;
	padding-block: var(--space-30) var(--space-10);
	display: grid;
	padding-inline: var(--space-20);
}

.sec-feature .feature:nth-of-type(odd) {
  grid-template-columns: 25.3125rem 1fr;
  grid-template-areas:
    "image text";
}

.sec-feature .feature:nth-of-type(even) {
  grid-template-columns:1fr 25.3125rem;
  grid-template-areas:
    "text image";
	padding-left: 5.625rem;
}

/* Assign each section */
.feature-image {
	grid-area: image;
	position: relative;
	height: 19rem;
	margin-top: var(--space-10);
}

.feature-image img {
	border-radius: 70px;
}

.feature-image::before {
	position: absolute;
	content: '';
	display: block;
	margin: auto;
	inset: 0;
	border-radius: 70px;
	background-color: rgba(0, 166, 255, 0.17);
	z-index: -2;
}

.sec-feature .feature .feature-image::after {
	position: absolute;
	content: '';
	display: block;
	margin: auto;
	border-radius: 70px;
	z-index: -1;
	width: 25.3125rem;
	height: 19rem;
	bottom: var(--space-20)
}

.sec-feature .feature:nth-of-type(odd) .feature-image::after {
	right: var(--space-20);
}

.sec-feature .feature:nth-of-type(even) .feature-image::after {
	left: var(--space-20);
}

.sec-feature .feature:nth-of-type(1) .feature-image::after {
	background: url(../img/index/img_feature_01.png) no-repeat center/cover;
}

.sec-feature .feature:nth-of-type(2) .feature-image::after {
	background: url(../img/index/img_feature_02.png) no-repeat center/cover;
}

.sec-feature .feature:nth-of-type(3) .feature-image::after {
	background: url(../img/index/img_feature_03.png) no-repeat center/cover;
}

.sec-feature .feature:nth-of-type(4) .feature-image::after {
	background: url(../img/index/img_feature_04.png) no-repeat center/cover;
}

.feature-text {
	grid-area: text;
	max-width: 30.875rem;
}

.feature-ttl img {
	text-align: center;
	margin-inline: auto;
}

	.sec-feature .feature:nth-of-type(2) .feature-ttl img {
		margin-left: 8.75rem;
	}

	.sec-feature .feature:nth-of-type(3) .feature-ttl img {
		margin-left: 3.75rem;
	}

	.sec-feature .feature:nth-of-type(4) .feature-ttl img {
		margin-left: 10.625rem;
	}

.feature-ttl .feature-number {
	position: absolute;
	font-family: var(--font-secondary);
	font-size: 9.375rem;
	font-weight: 700;
	color: var(--clr-primary);
}

.sec-feature .feature:nth-of-type(odd) .feature-number {
	top: -3.75rem;
	right: var(--space-20);
}

.sec-feature .feature:nth-of-type(even) .feature-ttl .feature-number {
	top: -3.75rem;
	left: 0;
}

.concerns-wrap .card .sub-ttl {
  line-height: 1.4;
}

/* 1400px */
@media (max-width: 87.5em) {
.sec-hero .subtitle {
    padding-left: 25px;
  }
}

/* 1300px */
@media (max-width:81.25em) {
	.sec-hero .hero-triangle .hero-intro {
    margin-left: 11.538vw;
		margin-top: 3.077vw;
	}

	.sec-hero .event-list {
    margin-left: 1.538vw;
	}

	.sec-hero .event-list .event-item {
    font-size: 1.385vw;
    padding-inline: 1.692vw;
    min-width: 14.462vw;
    height: 2.231vw;
	}

  .sec-hero .subtitle {
    padding-left: 3.846vw;
  }
}


/*below 1240px */
@media (max-width: 77.5em) {
	.hero-ttl::after {
		right: -100px;
		z-index: 99;
	}

	.hero-ttl::before {
		left: -40px;
	}

	.sec-hero .hero-btm .hero-img-side {
    flex: 1 0 48.316vw;
    max-width: 100%;
		top: 20px;
	}

	.sec-hero .hero-btm {
    column-gap: var(--space-30);
	}

  .sec-hero .subtitle {
    padding-left: 8.065vw;
  }
}

/*below 1100px */
@media (max-width: 68.75em) {
	.sec-hero .hero-top {
   justify-content: center;
   padding-top: var(--space-60);
}

	.sec-feature .feature:nth-of-type(odd),
	.sec-feature .feature:nth-of-type(even){
    grid-template-columns: 1fr;
    grid-template-areas:
      "heading"
      "image"
      "content";
			gap:var(--space-50);
			padding-block: var(--space-60) var(--space-90);
			place-content: center;
			place-items: center;
			padding-inline: 0;
			padding-left: 0;
  }

	.feature-heading {
		grid-area: heading;
	}

	.feature-text {
		display: contents;
		max-width: 30.875rem;
	}

	.feature-desc {
		grid-area: content;
		max-width: 30.875rem;
	}

	.feature-image {
		width: 25.3125rem;
		margin-inline: auto;
	}

	.card .card-left {
		min-width: 28.182vw;
	}

	.card .card-right {
		min-width: 29.364vw;
	}

	.concerns-wrap .sec-ttl {
		padding-block: 6.364vw 2.273vw;
		font-size: 2.909vw;
	}

	.card {
		padding: 1.818vw;
		border-radius: 4.545vw;
		column-gap: 1.818vw;
	}

	.concerns-wrap .card .sub-ttl {
		padding-block: 0.909vw 1.818vw;
		font-size: 2.545vw;
	}

	.card-inner {
		column-gap: 1.364vw;
	}

	.concerns-wrap .card-right .sub-ttl {
		border-radius: 3vw;
		padding: 1.364vw 1.818vw;
		min-width: 29.455vw;
	}

	.card-center img {
		width: 4vw;
		height: 4vw;
	}

	.concerns-wrap {
		min-height: 154.545vw;
		background-position: top;
		height: unset;
	}

	.hero-btm-txt .spnone .btn {
		min-width: 40.636vw;
	}

	.hero-btm-txt .spnone  .icon-header-file{
		width: 2.182vw;
		height: 2.182vw;
	}

	.qr-code .btn-view-more-primary {
    min-width: 14.091vw;
    max-width: 100%;
    height: 2.182vw;
    padding-inline: 0.909vw 0.273vw;
    border-radius: 1.091vw;
		font-size: 1.273vw;
		justify-content: center;
	}

	.qr-code .btn-view-more-primary svg {
	  width: 1.455vw;
	  height: 1.455vw;
	}

	.cum-number {
	  padding-left: 68.182vw;
	}

	.sec-event-management .event-ttl {
		font-size: 2.909vw;
	}

	.sec-hero .hero-btn-ttl {
    font-size: 2.273vw;
	}

	.sec-hero .hero-btn-ttl .q-pass-txt {
    width: 8.818vw;
		height: 2.091vw;
	}

	.sec-usage .sec-wrap.px40 {
		padding-inline: 0;
	}

	.sec-feature .feature:nth-of-type(odd) .feature-number {
    top: -0.625rem;
	}

	.sec-feature .feature:nth-of-type(even) .feature-ttl .feature-number {
    top: -1.25rem;
    left: 2.5rem;
	}

	.sec-feature .feature:nth-of-type(3) .feature-ttl img {
    margin-left: unset;
		margin-right: 15.625rem;
	}

	.sec-feature .feature:nth-of-type(3) .feature-number {
    right: 5.9375rem;
	}

	.sec-feature .feature:nth-of-type(1) .feature-ttl img {
    margin-inline: unset;
		margin-right: 4.375rem;
	}

	.sec-feature .feature:nth-of-type(1) .feature-number {
    right: 3.75rem;
		top: -1.875rem;
	}

	.sec-hero .learn-more {
		width: 13.909vw;
		height: 23.091vw;
	}

	.hero-ttl::before {
    left: -60px;
  }

  .sec-hero .subtitle {
    padding-left: 7.273vw;
  }

}

/* below 1024 */
@media (max-width: 64em) {
	.qr-code-wrap {
	  column-gap: 2.93vw;
	  row-gap: var(--space-30);
	}

	.qr-code-wrap p {
	  font-size: 1.563vw;
	}

	.qr-code {
	  height: unset;
	  row-gap: 0.977vw;
	  padding-inline: 0.684vw;
	  justify-content: center;
	  align-items: center;
	  min-height: 36.816vw;
	}

	.qr-code .btn-view-more-primary {
	  min-width: 15.625vw;
	  height: 2.344vw;
	  padding-inline: 0.977vw 0.293vw;
	  border-radius: 1.172vw;
	  font-size: 1.367vw;
	  column-gap: 0;
	}

	.qr-code .btn-view-more-primary svg {
	  width: 1.563vw;
	  height: 1.563vw;
	}

	.qr-code .news {
	  font-size: 3.906vw;
	  font-weight: 700;
	  position: absolute;
	  top: -3.906vw;
		left: 3.906vw;
	}

	.qr-code img {
	  border-radius: 2.93vw;
	}

	.card {
		padding-inline: 1.953vw;
		border-radius: 4.883vw;
		column-gap: 1.953vw;
	}

	.card .card-left {
    min-width: 30.273vw;
	}

	.card .card-center img {
    width: 4.297vw;
		height: 4.297vw;
	}

	.card .card-right {
    min-width: 31.543vw;
	}

	.concerns-wrap .sec-ttl {
		padding-block: 3.906vw 2.441vw;
		font-size: 3.125vw;
	}

	.card-inner-para p {
		font-size: 1.563vw;
	}

	.card-right-inner p {
		font-size: 1.563vw;
	}

	.concerns-wrap {
    row-gap: 1.953vw;
	}

	.cum-number {
	  padding-left: 65.02vw;
	}

	.sec-event-management .demo-btn::before {
    top: -200%;
    width: 5.182vw;
    height: 13.818vw;
    left: 10%;
}

.sec-event-management .demo-btn::after {
    top: -200%;
    width: 8.636vw;
    height: 14.364vw;
}

.hero-ttl::after {
  right: -100px;
	top:0;
}

.sec-hero .hero-btm .hero-img-side {
	top: 0;
}

  .sec-hero .subtitle {
    padding-left: 6.836vw;
  }


}

/* below 768 */
@media (max-width: 48em) {
  /* move to common if necessary */
  body main {
    padding-top: 64px;
  }

	/* Section Hero */
	.sec-hero {
    padding-top:0;
		padding-bottom: 12.821vw;
		background-image: url(../img/index/bg_hero_sp.png);
		background-position: bottom;
  }

  .sec-hero .hero-top {
    display: block;
  }

  .sec-hero .mv-top-pc {
    margin-top: var(--space-20);
  }

  .sec-hero .mv-top-pc .sec-wrap {
    --padding: 0;
  }

  .sec-hero .subtitle {
    font-size: min(6.667vw, 1.625rem);
    text-align: center;
	  padding-left: unset;
  }

  .sec-hero .hero-btm-txt,
  .sec-hero .hero-btm .hero-img-side {
    max-width: 35rem;
  }

  .sec-hero .event-list-sp {
    min-width: unset;
		margin-top: .3125rem;
		padding-left: 1.5625rem;
  }

  .sec-hero .event-list-sp .event-list {
    justify-content: flex-start;
		gap: 10px;
		margin-left: 5px;
  }

	.top-right-ttl strong {
    letter-spacing: 0.8px;
	}

  .sec-hero .event-list .event-item {
		padding-inline: 0;
		font-size: 2.564vw;
		width: 50%;
    max-width: 26.41vw;
		height: 4.103vw;
		min-width: unset;
	}

	.sec-wrap.hero-wrap {
	  width: 100%;
	  margin-inline: unset;
	  text-align: center;
	}

	.sec-hero .hero-btm {
   flex-direction: column;
	 --max-width: 690px;
	 --padding: 0;
	 width: min(var(--max-width), 100% - var(--padding));
    margin-inline: auto;
  }

  .sec-hero .hero-btm .hero-img-side {
    flex: unset;
    justify-self: unset;
    align-self: unset;
		height: auto;
		padding-top: 1.25rem;
		position: relative;
		top:0;
  }

	.sec-hero .top-right-ttl {
		font-size: 4.103vw;
		text-align: left;
	}

  .sec-hero .learn-more img {
    width: 26.41vw;
		height: 43.59vw;
  }

	.sec-hero .learn-more {
    width: 26.41vw;
		height: 43.59vw;
  }


  /* Event Scene Management */
  .sec-event-management .q-pass-txt {
    width: 4.5625rem;
    height: 1.0625rem;
  }

  .sec-event-management .h-slash::before,
  .sec-event-management .h-slash::after {
    width: 2.3125rem;
  }

  .sec-event-management .demo-btn::after {
    top: -18%;
    width: 2.5rem;
    height: 4.1875rem;
  }

  .sec-event-management .demo-btn::before {
    top: -18%;
    width: 1.5rem;
    height: 4.0625rem;
		left: 2%;
  }

  /* Other Banner */
  .other-banners {
    padding-block: var(--space-50);
  }

  .other-banners .banner-grid {
    column-gap: var(--space-20);
  }

  /* Any Concerns */
  .sec-any-concerns {
    padding-block: 3.125rem;
    position: relative;
  }

  .concerns-wrap {
    background: unset;
    row-gap: unset;
		height: unset;
		height: 100%;
  }

  .concerns-wrap .sec-ttl {
    color: var(--clr-neutral-900);
    padding-block: 0 1.5rem;
		font-size: var(--fs-24);
		line-height: 1.35;
  }

  .concerns-wrap .sec-ttl span {
    color: var(--clr-primary);
  }

  .card {
    padding: unset;
    border-radius: unset;
    background: url(../img/index/bg_q_ico_blue_sp.svg) no-repeat center / contain;
    border: unset;
    display: flex;
    justify-content: flex-start;
    row-gap: var(--space-5);
    flex-direction: column;
    align-items: center;
    width: 100%;
    padding-top: var(--space-40);
  	min-height: 35.875rem;
		height: 100%;
  }

  .concerns-wrap .card .sub-ttl {
    border-top: 2px solid var(--clr-neutral-100);
    border-bottom: 2px solid var(--clr-neutral-100);
    padding-block: var(--space-5);
    color: var(--clr-neutral-100);
  }

  .card-inner {
    column-gap: 4px;
    align-items: center;
		justify-content: center;
  }

  .card-inner p {
    color: var(--clr-neutral-100);
    font-size: .75rem;
		max-width: 12.6875rem;
  }

  .concerns-wrap div:first-child .img-concerns-01 {
    width: 4.375rem;
    height: 6.6875rem;
  }

  .concerns-wrap div:first-child .img-concerns-02 {
    width: 4.375rem;
    height: 3.5rem;
  }

  .concerns-wrap div:nth-child(2n) .img-concerns-03 {
    width: 3.5rem;
    height: 6.6875rem;
  }

  .concerns-wrap div:nth-child(2n) .img-concerns-04 {
    width: 4.6875rem;
    height: 4rem;
  }

  .concerns-wrap div:last-child .img-concerns-05 {
    width: 4.8125rem;
    height: 6.5625rem;
  }

  .concerns-wrap div:last-child .img-concerns-06 {
    width: 6rem;
    height: 4.875rem;
  }

  .concerns-wrap .card-right-inner {
    flex-direction: row-reverse;
    column-gap: var(--space-15);
    padding-top: .625rem;
    justify-content: center;
    align-items: center;
  }

  .concerns-wrap .card-right-inner p {
    max-width: 10.8125rem;
    font-size: .75rem;
    font-weight: 500;
    color: var(--clr-neutral-100);
  }

  .concerns-wrap .card-right .sub-ttl {
    border: 0;
    background-color: var(--clr-neutral-100);
    color: var(--clr-primary);
    border-radius: 33px;
    padding: var(--space-5) var(--space-15);
    height: 4.375rem;
		font-size: 1.25rem;
		min-width: 20.25rem;
		margin-top: var(--space-15);
  }

  .concerns-wrap .card .card-left .sub-ttl {
    max-width: 12.0625rem;
		margin-inline: auto;
		text-align: center;
		font-size: var(--fs-20);
  }

	.card .card-center img {
	  width: 2.75rem;
	  height: 2.75rem;
	}

	.card .card-right {
    min-width: unset;
  }

	.qr-code-wrap {
    grid-template-columns: repeat(2,1fr) !important;
		column-gap: var(--space-30);
		justify-content: space-between;
		align-items: center;
		row-gap: unset;
		max-width: 21.875rem;
    margin-inline: auto;
		place-items: center;
	}

	.qr-code p {
		font-size: .625rem;
	}

	.qr-code {
    height: 16.1875rem;
    text-align: center;
		justify-content: center;
		align-items: center;
		max-width: 9.9375rem;
		row-gap: var(--space-10);
	}

	.sec-qr-code .btn-view-more {
    min-width: 16.0625rem;
    padding: .625rem .75rem .625rem 1.125rem;
		height: 3.875rem;
}

	.qr-code-wrap div.qr-code:first-child img {
		width: 7.5625rem;
		height: 5.6875rem;
	}

	.qr-code-wrap div.qr-code:nth-child(2n) img {
		width: 8.0625rem;
		height: 6rem;
	}

	.qr-code-wrap div.qr-code:nth-child(3n) img {
		width: 7.125rem;
		height: 5.375rem;
	}

	.qr-code-wrap div.qr-code:last-child img {
		width: 7.125rem;
		height: 5.375rem;
	}

	.qr-code .news {
		top: -2.5rem;
		left: 2.1875rem;
	}

	.qr-code-wrap div.qr-code:last-child img.new-img {
		width: 5.5rem;
		height: 2.1875rem;
	}

	.qr-code .btn-view-more-primary {
	  min-width: 7.625rem;
	  border-radius: 12px;
	  font-size: .625rem;
	  padding: .3125rem;
	  height: 1.0625rem;
	}

	.qr-code-wrap .btn-view-more-primary svg {
		width: .6875rem;
		height: .6875rem;
	}

	.sec-feature .feature:nth-of-type(odd),
	.sec-feature .feature:nth-of-type(even) {
	  grid-template-columns: 1fr;
	  grid-template-areas:
	    "heading"
	    "image"
	    "content";
	  gap: 0;
	  padding-block: 10.256vw 5rem;
	  place-content: center;
	  place-items: center;
	  padding-inline: 0;
	  padding-left: 0;
	  position: relative;
		margin-top: 5.128vw;
		border-radius: 150px;
	}

	.sec-feature .feature:nth-of-type(even) .feature-heading {
		place-self: flex-end;
	}

	.feature-heading {
		grid-area: heading;
		place-self: flex-start;
	}

	.feature-text {
		display: contents;
		max-width: 30.875rem;
	}

	.feature-desc {
		grid-area: content;
		max-width: 69.744vw;
	}

	.feature-image {
		width: 100%;
		margin-inline: auto;
		height: 56.41vw;
		margin-block: 17.949vw 5.128vw;
	}

	.feature-image::before {
		border-radius: 50px;
		width: 75.128vw;
		height: 56.41vw;
		right: -0.875rem;
	}

	.sec-feature .feature .feature-image::after {
		border-radius: 50px;
		z-index: -1;
		width: 75.128vw;
		height: 56.41vw;
		bottom: var(--space-15);
	}

	.sec-feature .feature:nth-of-type(odd) .feature-image::after {
		inset:0;
		right: .875rem;
		bottom: 1.25rem;
	}

	.sec-feature .feature:nth-of-type(even) .feature-image::after {
		inset:0;
		right: .875rem;
		bottom: .875rem;
	}

	.feature-ttl .feature-number {
		font-size: 25.641vw;
	}

	.sec-feature .feature:nth-of-type(1) .feature-ttl img {
		width: 41.026vw;
		height: 9.744vw;
		margin-right: unset;
	}

	.sec-feature .feature:nth-of-type(2) .feature-ttl img {
		width: 45.128vw;
		height: 9.744vw;
	}

	.sec-feature .feature:nth-of-type(3) .feature-ttl img {
		width: 40.256vw;
		height: 13.077vw;
	}

	.sec-feature .feature:nth-of-type(4) .feature-ttl img {
		width: 45.128vw;
		height: 12.308vw;
	}

	.feature-ttl {
		position: unset;
		display: block;
	}

	.sec-feature .feature:nth-of-type(even) .feature-ttl .feature-number {
		top: 0;
		left: 0;
		right: unset;
	}

	.sec-feature .feature:nth-of-type(odd) .feature-ttl .feature-number {
    top: 0;
    right: 0;
		left: unset;
	}

  .feature-heading {
    grid-area: heading;
    place-self: flex-start;
  }

	.sec-hero .learn-more {
    right: 0;
		bottom :10px;
  }

  .feature-desc .sec-ttl {
    font-size: var(--fs-32);
		line-height: 1.25;
  }

	.sec-feature .q-pass-txt {
    width: 6.5625rem;
    height: 1.5625rem;
  }

	.sec-faq {
    padding-block: var(--space-40);
	}

	.sec-faq .link-wrap {
    text-align: end;
  }

	.card-inner-para p span.d-block {
    display: inline-block;
		padding-left: unset;
 	}

	.qr-code img {
	  border-radius: 30px;
	}

	.record-img {
		display: flex;
		justify-content: center;
		align-items: center;
	}

	.sec-banner .h-dash::before,
	.sec-banner .h-dash::after {
   	width: unset;
		height: unset;
  }

	.sec-banner h2{
		line-height: 1.5;
    }

	.sec-record .record-img {
    padding-inline: 0;
	}

	.cum-number {
    padding-left: unset;
		text-align: right;
  }

	.sp-strong {
		color: var(--clr-primary);
	}

	.hero-btm-txt {
    padding-left: unset;
  }

	.hero-ttl {
		position: relative;
	}

	.hero-ttl::before,
  .hero-ttl::after,
  .hero-img-side::before,
  .hero-img-side::after {
    content: '';
    position: absolute;
  }

  .hero-ttl::before {
    background: url(../img/index/img_mv_deco_sp01.png) no-repeat center/ auto;
    width: 42px;
    height: 67px;
    top: -15px;
    left: -10px;
  }

  .hero-ttl::after {
    background: url(../img/index/img_mv_deco_sp02.png) no-repeat center/ auto;
    width: 33px;
    height: 53px;
    top: 10px;
    right: -15px;
  }

  .hero-img-side::before {
    background: url(../img/index/img_mv_deco_sp03.png) no-repeat center/ contain;
    width: 20px;
    height: 51px;
    top: 40px;
    left: 28px;
  }

	.hero-btm-txt::after {
  	background: unset;
	}

	.sec-record .btn-wrap::before {
    background: url(../img/index/img_record_left.png) no-repeat center / contain;
    width: .8125rem;
    left: 15%;
    top: -14px;
		height: 2.5rem;
	}

	.sec-record .btn-wrap::after {
    background: url(../img/index/img_record_right.png) no-repeat center / contain;
    width: 1.1875rem;
    right: 11%;
    top: -14px;
		height: 2.5rem;
	}

	.sec-record .hero-btn-ttl {
    padding-bottom: .5rem;
	}

	.sec-record .h-slash::before,
	.sec-record .h-slash::after {
    height: 1px;
    background-color: var(--clr-neutral-900);
	}

	.sec-record .h-slash {
		position: relative;
	}

	.sec-record .h-slash::after {
    right: 100%;
    rotate: 60deg;
		top:40%;
  }

	.sec-record .h-slash::before {
    left: 100%;
		top: 35%;
		rotate: 125deg;
  }


}