@charset "UTF-8";
:root {
  --gothic: '游ゴシック', 'Yu Gothic', YuGothic, 'Hiragino Kaku Gothic ProN',
    'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, 'ＭＳ ゴシック', sans-serif;
  --f-color: #444444;
  --i-right: url('data:img/png;base64,iVBORw0KGgoAAAANSUhEUgAAABYAAAAWCAYAAADEtGw7AAACD0lEQVQ4jbWVwYsScRTHP4pkgRF2SjCwiECQLu5Z9rZ2CPTmhnjzf2j7J/RvUClPChFktxVvCw60ihJEYG5IF0UQZER88WSUdppRt6UvDMzvzXufmd+b93vPIyK4KAicAi+BF8AjYAFcAd+AT8B7YOIYrWDbdVdEzkRkIvulPm9F5J6dY4dGRKRzANCujhXrCA6LyPAfoBsNLcY1sG7/4hbQjS42admA37h5NptNMQzjJnD9P2hVPAS+Aw/sP7bX61GpVFitVhwfH3NycoLH43Groo2mwFOvVVJ/QfWt5+fna6hK78vlMovFYh9YWaf6xR+AV04epmlSrVbp9/tbWygUIpfLEQwGd8E/KvgH8NjNQ7+80WjQbDa3tkAgQDabJRKJuIUNFWwCd/btzzAMarUay+Vyvfb5fKRSKY6OjpzcF5pjcx9UFYvFCIfD27W+oNVqrdPlJB8wAu7vgk4mE0qlEqPRaGuLRqNkMhn8fr9TyC8FfwWeu0EHg8G6Gmaz2daWSCRIJpN4vV63sC8K/uxWFe12m3q9fi2v6XSaeDy+a4OqhtdqfVP7E62Gbre7hWol5PP5Q6DTNdM60mdOZ3M+n0uhUJBisSjj8fhGR3oD1sZx6eSlQNM0D4V27E1Ir2ci8vNQgoOuLIZjo3/yPxr9n2nRcXOr0bRvmL4GktYwDVl2PSWXWlLAO8dhCvwGmte4Kkdq0KQAAAAASUVORK5CYII=');
  --i-window: url('data:img/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAOCAYAAAAmL5yKAAAAS0lEQVQokWN0cXFhgIL/DKSDaBY0LYwkGLEURDCRYSsKoIoBHxgYGPgH1AWjBlAI0FMiqcl5K7IBpCRjDC+AEhPIdkK4HUU3AwMDANf8EBAMgCC0AAAAAElFTkSuQmCC');
  --i-down: url('data:img/png;base64,iVBORw0KGgoAAAANSUhEUgAAACoAAAASCAYAAAAt6kybAAABLklEQVRIic3WzyoFUQDH8c+VsmBhz84jKEpix8LKn42lKKWsvcLNA1wklqJ4AUuxsVEewM5eYWFFp87U7Tb3ujNzjPtbzszi25lP0zSazeY4VnCBb4O3CUwPxax9XGJswDLn8YjJEPqGRbzjAVMDEBi2h2tsoZWd6Bd2cBxjl/8xcARn2MUcbsPFoY6HjrAeHzxAo+bI4PEOozHyJbvRGSqe6CxWa3abebzBJj7bb+aFhr3W7Lbd42He16dbqJrc5nrMW6/QbMHtBs4Tu+3qsWxo2D1msJbIbU+PVUJFtwv4qOj2V49VQ0W32zgp4bZvjylCs7UKui3kMWWoAm4Le0wdqg+3pTz+Ragct0tVPeZtOEFotuD2GVfxhJ9iZKlX3bmUoWGZ2/AjfprsRxw/+vBUSs1PGZwAAAAASUVORK5CYII=');
  --i-up: url('data:img/png;base64,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');
}
html {
  font-family: var(--gothic);
}
[data-ff='mincho'] {
  font-family: var(--mincho);
}

.lp-contents {
  overflow-x: hidden;

  background-color: #f7f7f7;
  color: var(--f-color);
}

p {
  font-family: var(--mincho);
}

.btn {
  display: inline-flex;
  padding: 19px 20px;
  text-align: center;
  background-color: #444444;
  color: #fff;
  font-family: 'Noto Sans JP', sans-serif;
  font-weight: bold;
  font-size: 16px;
  border-radius: 8px;
  gap: 16px;
  justify-content: center;
  align-items: center;
  text-decoration: none;
  border: 1px solid #444444;

  transition: all 0.3s ease; /* スムーズに色変化 */
}
.btn::after {
  content: '';
  display: block;
  width: 26px;
  height: 26px;
  background-image: url(../img/arrow_right.png);
}
.btn:hover {
  background-color: #fff; /* 背景を白に */
  color: #444444; /* 文字を元の背景色に */
  border: 1px solid #444444;
}
.btn:hover::after {
  filter: invert(1);
}

/* =====================
  MV
===================== */
.logo {
  background-color: #fff;
  padding-block: 6.7vw;
}
.logo a {
  display: block;
  width: fit-content;
  margin-inline: auto;
}
.logo svg {
  width: calc((100 / 750) * 257 * 1vw);
  height: calc((100 / 750) * 60 * 1vw);
}
.main-logo path {
  fill: #b983b5;
}
.mv {
  position: relative;
  height: calc((100 / 750) * 990 * 1vw);
  background-image: url(../img/mv_bg.png);
}
.mv .text-box {
  display: flex;
  flex-direction: column;
  padding-top: 29vw;
}
.mv .text01 {
  text-align: center;
  font-size: calc((100 / 750) * 28 * 1vw);
}
.mv .text01 ruby {
  font-weight: 400;
  font-size: calc((100 / 750) * 38 * 1vw);
}
.mv .text01 rt {
  font-weight: normal;
  font-size: calc((100 / 750) * 19 * 1vw);
}
.mv .text02 {
  text-align: center;
  font-size: calc((100 / 750) * 38 * 1vw);
  font-weight: 600;
  padding-top: 2vw;
}
.mv .text03 {
  text-align: center;
  font-size: calc((100 / 750) * 19 * 1vw);
  margin-top: 2vw;
  border-top: 1px solid #444444;
  border-bottom: 1px solid #444444;
  width: fit-content;
  padding-block: 2vw;
  margin-inline: auto;
}

.mv .img {
  position: absolute;
  top: 5vw;
  left: 50%;
  transform: translateX(-50%);
  width: calc((100 / 750) * 750 * 1vw);
}

.scroll {
  position: absolute;
  width: 100%;
  bottom: 8vw;
  text-align: center;
}

.scroll a {
  position: relative;
  display: inline-block;
  font-size: calc((100 / 750) * 32 * 1vw);
  font-weight: 200;
  color: #bbbbbb;
  text-decoration: none;
  padding: 0 0 2vw;
}

.scroll a:before {
  content: '';
  position: absolute;
  width: calc((100 / 750) * 32 * 1vw);
  height: calc((100 / 750) * 32 * 1vw);
  left: 0;
  right: 0;
  bottom: -1vw;
  margin: auto;
  border-bottom: 2px solid #bbbbbb;
  border-right: 2px solid #bbbbbb;
  transform: rotate(45deg);
  animation: move 2s infinite;
}
/*矢印をアニメーションする*/
@keyframes move {
  0% {
    transform: rotate(45deg) translate(0, 0);
  }
  20% {
    transform: rotate(45deg) translate(10px, 10px);
  }
  40% {
    transform: rotate(45deg) translate(0, 0);
  }
}

/* =====================
  unit01
===================== */

.unit01 {
  height: calc((100 / 750) * 2819 * 1vw);
  background-image: url('../img/unit01_bg_sp.png');
  background-repeat: no-repeat;
  background-size: contain;
  background-position: bottom center;
  display: flex;
  flex-direction: column;
  gap: calc((100 / 750) * 83 * 1vw);
  padding-top: calc((100 / 750) * 96 * 1vw);
  position: relative;
  background-color: #fff;
  z-index: 2;
}
.unit01::before {
  content: 'AKOYA PEARL';
  position: absolute;
  display: block;
  top: -5.6vw;
  left: 50%;
  width: 100%;
  text-align: center;
  transform: translateX(-50%);
  font-size: calc((100 / 750) * 111 * 1vw);
  color: #f7f7f7;
  font-weight: bold;
  letter-spacing: -0.09em;
  z-index: -1;
}
.unit01 p {
  z-index: 2;
  text-align: center;
  line-height: 228%;
}
.unit01 p:first-of-type {
  font-size: calc((100 / 750) * 48 * 1vw);
  font-weight: 500;
  line-height: 2;
  letter-spacing: 0.24em;
}

.unit01 p:last-of-type {
  font-size: calc((100 / 750) * 40 * 1vw);
}

.unit01 .brand {
  font-family: var(--mincho);
  text-align: center;
  font-size: calc((100 / 750) * 48 * 1vw);
  line-height: 1.3;
}
.unit01 .brand span {
  font-size: calc((100 / 750) * 32 * 1vw);
}

/* =====================
  unit02
===================== */

.unit02 {
  background-image: none;
  background-repeat: no-repeat;
  background-size: auto;
}
.unit02 .lineup h2 {
  margin-top: calc((100 / 750) * 99 * 1vw);
  text-align: center;
  width: fit-content;
  margin-inline: auto;
  font-size: calc((100 / 750) * 48 * 1vw);
  line-height: 2.2;
  font-family: var(--mincho);
  border-bottom: 1px solid #444;
}
.unit02 .lineup p {
  text-align: center;
  display: block;
  font-size: calc((100 / 750) * 32 * 1vw);
  border-top: 1px solid #444;
  width: fit-content;
  margin-inline: auto;
  padding-top: calc((100 / 750) * 40 * 1vw);
}

.unit02 .box-wrap {
  display: flex;
  flex-direction: column;
  gap: calc((100 / 750) * 80 * 1vw);
}
.unit02 .box {
  margin-inline: auto;
  display: flex;
  flex-wrap: wrap;
  width: calc((100 / 750) * 700 * 1vw);
  padding: 7.5vw 5.1vw;
  justify-content: space-between;
  border: 1px solid #d9d9d9;
  border-radius: calc((100 / 750) * 24 * 1vw);
  background-color: #fff;
}
.unit02 .box:first-of-type {
  margin-top: calc((100 / 750) * 98 * 1vw);
}
.unit02 .box:nth-of-type(even) {
  flex-direction: row-reverse;
}

.unit02 .box .img {
  width: calc((100 / 750) * 620 * 1vw);
  height: calc((100 / 750) * 448 * 1vw);
  display: flex;
}
.unit02 .box .left {
  width: calc((100 / 750) * 250 * 1vw);
}
.unit02 .box .left img {
  width: calc((100 / 750) * 250 * 1vw);
}
.unit02 .box .right img {
  width: calc((100 / 750) * 370 * 1vw);
}
.unit02 .box .text {
  width: calc((100 / 750) * 620 * 1vw);
}
.unit02 .box .text h3 {
  font-size: calc((100 / 750) * 40 * 1vw);
  font-weight: 500;
  font-family: var(--mincho);
  padding-top: calc((100 / 750) * 50 * 1vw);
}

.unit02 .box .text p {
  padding-top: calc((100 / 750) * 43 * 1vw);
  line-height: 1.98;
  font-size: calc((100 / 750) * 28 * 1vw);
}
.unit02 .box .text .size {
  display: flex;
}
.unit02 .box .text .size p {
  padding-top: calc((100 / 750) * 35 * 1vw);
}
.unit02 .box .text .price {
  display: flex;
  gap: calc((100 / 750) * 16 * 1vw);
  align-items: end;
}
.unit02 .box .text .price p {
  padding-top: calc((100 / 750) * 29 * 1vw);
  font-family: 'Noto Sans JP', sans-serif;
  font-weight: bold;
  font-size: calc((100 / 750) * 36 * 1vw);
}
.unit02 .box .text .price p:last-of-type {
  font-size: calc((100 / 750) * 28 * 1vw);
  padding-bottom: 1vw;
}

.unit02 .box .btn {
  width: calc((100 / 750) * 620 * 1vw);
  margin-top: calc((100 / 750) * 29 * 1vw);
}

.unit02 .btn02 {
  margin-block: calc((100 / 750) * 80 * 1vw);
  margin-inline: auto;
  display: flex;
  width: calc((100 / 750) * 466 * 1vw);
  padding: 4.8vw 11vw;
  text-align: center;
  background-color: #fff;
  color: #444444;
  border: 1px solid #444;
  font-family: var(--mincho);
  font-weight: bold;
  font-size: calc((100 / 750) * 32 * 1vw);
  gap: calc((100 / 750) * 16 * 1vw);
  justify-content: center;
  align-items: center;
  transition: all 0.3s ease;
}
.unit02 .btn02::before {
  content: '';
  display: block;
  width: calc((100 / 750) * 50 * 1vw);
  height: calc((100 / 750) * 50 * 1vw);
  background-image: url(../img/window.png);
}
.unit02 .btn02:hover {
  background-color: #444444;
  color: #fff;
  border-color: #444444;
}

.unit02 .btn02:hover::before {
  filter: invert(1);
}
/* =====================
  unit03
===================== */
.unit03 {
  height: calc((100 / 750) * 1379 * 1vw);
  padding-block: calc((100 / 750) * 94 * 1vw);
  background-image: url('../img/unit03_bg_sp.png');
  background-repeat: no-repeat;
  background-size: auto;
  display: flex;
  flex-direction: column;
  gap: calc((100 / 750) * 72 * 1vw);
}

.unit03 h3 {
  font-family: 'Yu Mincho', '游明朝', 'YuMincho', 'Noto Serif JP', serif;
  font-size: calc((100 / 750) * 64 * 1vw);
  text-align: center;
  font-weight: 500;
}
.unit03 h3::before,
.unit03 h3::after {
  content: '';
  display: inline-block;
  width: calc((100 / 750) * 51 * 1vw);
  height: 1px;
  background: #444;
  margin: 3vw 2vw;
}
.unit03 p {
  text-align: center;
  line-height: 2;
  font-weight: 500;
}
.unit03 p:first-of-type {
  font-size: calc((100 / 750) * 52 * 1vw);
}
.unit03 p:first-of-type span {
  font-size: calc((100 / 750) * 40 * 1vw);
}
.unit03 p:last-of-type {
  font-size: calc((100 / 750) * 32 * 1vw);
  line-height: 2.3;
}
.unit03 p:last-of-type span {
  font-size: calc((100 / 750) * 48 * 1vw);
  color: #b983b5;
}
.unit03 .link {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  gap: calc((100 / 750) * 40 * 1vw);
  padding-top: calc((100 / 750) * 19 * 1vw);
}
.unit03 .link .btn {
  width: calc((100 / 750) * 640 * 1vw);
  font-size: calc((100 / 750) * 44 * 1vw);
}

.unit03 .link .btn::after {
  content: '';
  display: block;
  width: calc((100 / 750) * 64 * 1vw);
  height: calc((100 / 750) * 64 * 1vw);
  background-size: contain;
  background-image: url(../img/arrow_right02.png);
}
/* =====================
  footer
===================== */
.footer {
  background-color: #fff;
  height: calc((100 / 750) * 689 * 1vw);
  padding-block: 43vw 0vw;
  position: relative;
}
.footer .logo svg {
  width: calc((100 / 750) * 504 * 1vw);
  height: calc((100 / 750) * 117 * 1vw);
}

.footer small {
  margin-top: 0;
}
.footer small p {
  text-align: center;
  font-size: calc((100 / 750) * 24 * 1vw);
}

.back-to-top {
  position: absolute;
  width: calc((100 / 750) * 180 * 1vw);
  height: calc((100 / 750) * 180 * 1vw);
  bottom: 54vw; /* フッター内での位置調整 */
  left: 50%;
  transform: translateX(-50%);
  background-color: #b983b5;
  color: #fff;
  border: none;
  border-radius: 50%;
  font-size: calc((100 / 750) * 36 * 1vw);
  cursor: pointer;
  font-family: 'Noto Serif JP', serif;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  transition: all 0.3s ease;
  border: 1px solid #b983b5;
}
.back-to-top::before {
  content: '';
  display: block;
  position: absolute;
  width: calc((100 / 750) * 48 * 1vw);
  height: calc((100 / 750) * 48 * 1vw);
  top: 2vw;
  background-size: contain;
  background-image: url(../img/arrow-up.png);
}

.back-to-top:hover {
  background-color: #fff; /* 背景を白に */
  color: #b983b5; /* テキスト色を元の背景色に */
  border: 1px solid #b983b5;
}

.back-to-top:hover::before {
  filter: invert(58%) sepia(15%) saturate(755%) hue-rotate(231deg) brightness(94%) contrast(86%);
}

.parallax {
  transition: 0.8s ease-in-out;
  transform: translateY(30px);
  opacity: 0;
}

.parallax-delay01 {
  transition: 0.8s ease-in-out;
  transform: translateY(30px);
  transition-delay: 0.3s;
  opacity: 0;
}

.parallax-delay02 {
  transition: 0.8s ease-in-out;
  transform: translateY(30px);
  transition-delay: 0.6s;
  opacity: 0;
}
.parallax-delay03 {
  transition: 0.8s ease-in-out;
  transform: translateY(30px);
  transition-delay: 0.9s;
  opacity: 0;
}

.on {
  transform: translateY(0);
  opacity: 1;
}
