/*!***************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[0].use[1]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./src/scss/css/top_mv.scss ***!
  \***************************************************************************************************************************************************************************/
@charset "UTF-8";
/* ===================================================================
 メインビジュアル（SEA・DIV・PCE共通）
==================================================================== */
.p-mv {
  display: grid;
  grid-template-areas: "mv-cm" "mv-btn-01" "mv-btn-02" "mv-btn-03";
  grid-template-rows: 1fr;
  grid-template-columns: 1fr;
  gap: 10px;
  margin: 16px 5% 0;
}
@media (width >= 768px) {
  .p-mv {
    grid-template-areas: "mv-cm mv-cm" "mv-btn-01 mv-btn-02" "mv-btn-01 mv-btn-03";
    grid-template-rows: auto 1fr 1fr;
    grid-template-columns: 1fr 1fr;
    gap: 8px;
    margin: 21px 30px 0;
  }
}
@media (width >= 1280px) {
  .p-mv {
    grid-template-areas: "mv-cm mv-btn-01" "mv-cm mv-btn-02" "mv-cm mv-btn-03";
    grid-template-rows: 2fr 1fr 1fr;
    grid-template-columns: 1fr 500px;
    height: 500px;
  }
}
.p-mv {
  /* 並列要素 ========================================================= */
}
.p-mv__item {
  overflow: hidden;
  border-radius: 15px;
}
.p-mv__item:nth-child(1) {
  grid-area: mv-cm;
}
.p-mv__item:nth-child(2) {
  grid-area: mv-btn-01;
}
.p-mv__item:nth-child(3) {
  grid-area: mv-btn-02;
}
.p-mv__item:nth-child(4) {
  grid-area: mv-btn-03;
}
.p-mv__item {
  /* CM -------------------------------------------------------------- */
}
.p-mv__item--cm {
  position: relative;
  grid-area: mv-cm;
  background-image: linear-gradient(90deg, #033362 0%, #033362 50%, #44abf2 50%, #44abf2 100%);
}
.p-mv__item {
  /* 画像データ -------------------------------------------------------------- */
}
.p-mv__item--img > img {
  object-fit: cover;
  width: 100%;
  height: 100%;
}
.p-mv__item {
  /* テキストデータ -------------------------------------------------------------- */
}
.p-mv__item--btn {
  display: flex;
  gap: 16px;
  align-items: center;
  justify-content: space-between;
}
.p-mv__item--btn::after {
  display: inline-block;
  flex-shrink: 0;
  aspect-ratio: 1;
  content: "";
}
.p-mv__item--btn:not([target])::after {
  width: 8px;
  border-top: 2px solid currentcolor;
  border-right: 2px solid currentcolor;
  transform: rotate(45deg);
}
@media (width >= 1280px) {
  .p-mv__item--btn:not([target])::after {
    width: 9px;
  }
}
.p-mv__item--btn[target=_blank]::after {
  width: 12px;
  background-image: url("/common/image/icon_blank.svg");
  background-position: center;
  background-size: cover;
}
@media (width >= 1280px) {
  .p-mv__item--btn[target=_blank]::after {
    width: 14px;
  }
}
.p-mv__item--btn {
  /* メイン -------------------------------------------------------------- */
}
.p-mv__item--btn--main {
  padding: 32px 22px;
  color: #fff !important;
  background-size: cover;
}
@media (width >= 1280px) {
  .p-mv__item--btn--main {
    padding: 16px 32px;
  }
}
.p-mv__item--btn--main .p-mv__item-ttl {
  position: relative;
  padding-bottom: 12px;
  margin: 0 0 12px;
  font-size: 14px;
}
@media (width >= 1280px) {
  .p-mv__item--btn--main .p-mv__item-ttl {
    padding-bottom: 16px;
    margin: 0 0 16px;
    font-size: 20px;
  }
}
.p-mv__item--btn--main .p-mv__item-ttl::after {
  position: absolute;
  bottom: 0;
  left: 0;
  display: inline-block;
  width: 40px;
  content: "";
  border-bottom: 1px solid #ecf5fa;
  opacity: 0.5;
}
@media (width >= 1280px) {
  .p-mv__item--btn--main .p-mv__item-ttl::after {
    width: 60px;
    border-bottom: 2px solid #ecf5fa;
  }
}
.p-mv__item--btn--main .p-mv__item-desc {
  font-size: 18px;
}
@media (width >= 1280px) {
  .p-mv__item--btn--main .p-mv__item-desc {
    font-size: 28px;
  }
}
.p-mv__item--btn {
  /* サブ -------------------------------------------------------------- */
}
.p-mv__item--btn--sub {
  padding: 22px;
  color: #0064ba !important;
  background-color: #ecf5fa;
}
@media (width >= 1280px) {
  .p-mv__item--btn--sub {
    padding: 16px 32px;
  }
}
.p-mv__item--btn--sub .p-mv__item-ttl {
  margin-bottom: 4px;
  font-size: 13px;
}
@media (width >= 1280px) {
  .p-mv__item--btn--sub .p-mv__item-ttl {
    font-size: 14px;
  }
}
.p-mv__item--btn--sub .p-mv__item-desc {
  font-size: 16px;
  color: #4c4c4c;
}
@media (width >= 1280px) {
  .p-mv__item--btn--sub .p-mv__item-desc {
    font-size: 18px;
  }
}
.p-mv__item-inner {
  box-sizing: border-box;
  padding: 0;
  margin: 0;
}
.p-mv__item-ttl, .p-mv__item-desc {
  padding: 0;
  margin: 0;
  font-weight: 600;
  line-height: 1.5;
}
.p-mv__item-desc br {
  display: none;
}
@media (width >= 1280px) {
  .p-mv__item-desc br {
    display: block;
  }
}
.p-mv {
  /* ロゴ ========================================================= */
}
.p-mv__logo {
  position: absolute;
  top: 8px;
  right: 8px;
  display: inline-block;
}
@media (width >= 768px) {
  .p-mv__logo {
    top: 20px;
    right: auto;
    left: 20px;
  }
}
.p-mv__logo img {
  display: inline-block;
  width: 100px;
  filter: invert(1) brightness(10);
}
@media (width >= 768px) {
  .p-mv__logo img {
    width: 150px;
  }
}
.p-mv {
  /* 画像 ========================================================= */
}
.p-mv__img {
  width: 100%;
  height: 100%;
  padding: 0;
  margin: 0;
}
.p-mv__img picture {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
}
.p-mv__img img {
  width: 100%;
  max-width: inherit;
}
@media (width >= 1280px) {
  .p-mv__img img {
    width: 1480px;
    object-fit: cover;
    object-position: center;
  }
}

a.p-mv__item {
  position: relative;
  transition: 0.3s opacity;
}
a.p-mv__item::before {
  position: absolute;
  inset: 0;
  box-sizing: border-box;
  display: inline-block;
  margin: auto;
  visibility: hidden;
  content: "";
  border: 3px solid #0985c8;
  border-radius: 15px;
  opacity: 0;
  transition: opacity 0.25s, visibility 0.25s;
}
a.p-mv__item:hover {
  opacity: 0.7;
}
a.p-mv__item:hover::before {
  visibility: visible;
  opacity: 1;
}

/*# sourceMappingURL=top_mv.css.map*/