/* ------------
 * mainview
 */
#mainview {
  max-width: 1500px;
  margin: 0 auto;
  display: grid;
  gap: 0.8vw;
  grid-template-rows: 4.16fr 1fr 1fr;
  grid-template-columns: 1fr 1.4fr;
}
.mainview_item {
}
.mainview_item[data-index='1'] {
  grid-column: 1 / 3;
  grid-row: 1 / 2;
  aspect-ratio: 750 / 850;
}
.mainview_item[data-index='3'] {
  grid-column: 1 / 2;
  grid-row: 2 / 4;
}
.mainview_item[data-index='4'] {
  grid-column: 2 / 3;
  grid-row: 2 / 3;
}
.mainview_item[data-index='2'] {
  grid-column: 2 / 3;
  grid-row: 3 / 4;
}

/* link */
.mainview_link {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  color: #fff;
  overflow: hidden;
}
.mainview_item[data-index='1'] .mainview_link {
  background-image: url(../../IMAGES/sp/image_1.jpg);
}
.mainview_item[data-index='2'] .mainview_link {
  background-image: url(../../IMAGES/sp/image_2.jpg);
}
.mainview_item[data-index='3'] .mainview_link {
  background-image: url(../../IMAGES/sp/image_3.jpg);
}
.mainview_item[data-index='4'] .mainview_link {
  background-image: url(../../IMAGES/sp/image_4.jpg);
}

.mainview_link video {
  position: relative;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* title */
.mainview_title {
  position: absolute;
  left: 8vw;
  top: 8vw;
  font-size: 11.73vw;
  line-height: 1.1;
  pointer-events: none;
}
.mainview_title span {
  display: block;
}

/* label */
.mainview_label {
  position: absolute;
  left: 3vw;
  bottom: 3vw;
  display: inline-block;
  padding-right: 4vw;
  font-size: 3.2vw;
  pointer-events: none;
}
.mainview_item[data-index='1'] .mainview_label {
  left: 8vw;
}
.mainview_label:before {
  content: '';
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  display: block;
  width: 1.33vw;
  height: 2.13vw;
  background-image: url(../../IMAGES/arrow.png);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  pointer-events: none;
}

/* ------------
 * usp
 */
.usp {
  position: relative;
  padding: 10vw 4vw 0;
}

/* header */
.usp_header {
  position: relative;
  padding: 3vw 0 1vw;
}
.usp_header:before {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  display: block;
  width: 13.33vw;
  border-top: 3.99px solid #c3002c;
}
.usp_title {
  font-size: 5.64vw;
  line-height: 1.4;
}
.usp_subtitle {
  margin-top: 3.5vw;
  font-size: 3.58vw;
  line-height: 1.4;
}

/* wrap */
.usp_wrap {
  margin-top: 2vw;
}

.usp_summary {
  font-size: 3.8vw;
  line-height: 1.6;
}

.usp_link {
  margin-top: 8vw;
}
.usp_link a {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  width: 100%;
  height: 11.73vw;
  padding: 0 0 0 4vw;
  background-color: #c3002c;
  color: #fff;
  font-size: 3.2vw;
  text-decoration: none;
}
.usp_link a:after {
  content: '';
  position: absolute;
  right: 4vw;
  top: 50%;
  display: block;
  width: 2vw;
  height: 3vw;
  margin-top: -1.5vw;
  background-image: url(../../IMAGES/arrow.png);
  background-repeat: no-repeat;
  background-position: right;
  background-size: auto 3vw;
}
