@font-face {
  font-family: "Now";
  font-style: normal;
  font-weight: 300;
  src: url("../font/Now-Light.woff") format("woff");
}
@font-face {
  font-family: "Now";
  font-style: normal;
  font-weight: 500;
  src: url("../font/Now-Regular.woff") format("woff");
}
@font-face {
  font-family: "Now";
  font-style: normal;
  font-weight: 600;
  src: url("../font/Now-Medium.woff") format("woff");
}
@font-face {
  font-family: "Now";
  font-style: normal;
  font-weight: 700;
  src: url("../font/Now-Bold.woff") format("woff");
}
@font-face {
  font-family: "Now";
  font-style: normal;
  font-weight: 900;
  src: url("../font/Now-Black.woff") format("woff");
}
body {
  padding: 0;
}
body.is-animation {
  overflow: hidden;
}

@media print, screen and (min-width: 769px) {
  .l-main {
    padding-bottom: min(73px, 5.703125vw);
  }
}

.p-mv {
  height: 100vh;
  position: relative;
  width: 100%;
}
.p-mv.start .p-mv-screen01-logo {
  opacity: 1;
}
.p-mv.start .p-mv-screen02-text {
  top: 0;
}

@keyframes screen01 {
  0% {
    opacity: 1;
  }
  100% {
    filter: blur(10px);
    opacity: 0;
    scale: 1.6;
  }
}
@keyframes screen02 {
  0% {
    filter: blur(10px);
    opacity: 0;
  }
  30% {
    filter: blur(0);
    opacity: 1;
  }
  70% {
    filter: blur(0);
    opacity: 1;
  }
  100% {
    filter: blur(10px);
    opacity: 0;
  }
}
.p-mv-screen01-logo {
  animation: screen01 2s ease-in-out forwards 1s;
  left: 50%;
  position: absolute;
  top: 50%;
  translate: -50% -50%;
  will-change: opacity, filter, scale;
}

.p-mv-screen02-text {
  animation: screen02 4s linear forwards 2s;
  line-height: 2;
  left: 50%;
  opacity: 0;
  position: absolute;
  top: 50%;
  translate: -50% -50%;
  will-change: opacity, filter;
}
@media only screen and (max-width: 768px) {
  .p-mv-screen02-text {
    font-size: 6.6666666667vw;
    width: 69.3333333333vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-mv-screen02-text {
    font-size: min(80px, 6.25vw);
    width: min(820px, 64.0625vw);
  }
}

.p-mv-main {
  left: 0;
  position: absolute;
  top: 50%;
  width: 100%;
  transform: translateY(-50%);
}
@media only screen and (max-width: 768px) {
  .p-mv-main {
    height: 82.2666666667vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-mv-main {
    height: 48.203125vw;
  }
}

@keyframes bg {
  0% {
    opacity: 0;
    scale: 0.61;
  }
  100% {
    opacity: 1;
    scale: 1;
  }
}
.p-mv-main-bg {
  animation: bg 1s linear forwards 8s;
  left: 50%;
  opacity: 0;
  position: absolute;
  translate: -50%;
}
@media only screen and (max-width: 768px) {
  .p-mv-main-bg {
    top: -4.6666666667vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-mv-main-bg {
    top: -2.734375vw;
  }
}
.p-mv-main-bg img {
  height: auto;
  max-width: none;
}
@media only screen and (max-width: 768px) {
  .p-mv-main-bg img {
    width: 88.5333333333vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-mv-main-bg img {
    width: 51.875vw;
  }
}

@keyframes text {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
.p-mv-text {
  animation: text 0.3s linear forwards 7s;
  left: 50%;
  opacity: 0;
  position: absolute;
  translate: -50%;
}
@media only screen and (max-width: 768px) {
  .p-mv-text {
    top: 13.8666666667vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-mv-text {
    top: 8.125vw;
  }
}
.p-mv-text img {
  height: auto;
}
@media only screen and (max-width: 768px) {
  .p-mv-text img {
    width: 63.3333333333vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-mv-text img {
    width: 37.109375vw;
  }
}

@keyframes logo {
  0% {
    filter: blur(10px);
    opacity: 0;
    scale: 2.205;
    translate: 0 0;
  }
  50% {
    filter: blur(0);
    opacity: 1;
    scale: 1;
    translate: 0 0;
  }
  80% {
    filter: blur(0);
    opacity: 1;
    scale: 1;
    translate: 0 0;
  }
  100% {
    filter: blur(0);
    opacity: 1;
    scale: 1;
    translate: 0 -7.03125vw;
  }
}
@keyframes logo_sp {
  0% {
    filter: blur(10px);
    opacity: 0;
    scale: 1.47;
    translate: 0 0;
  }
  50% {
    filter: blur(0);
    opacity: 1;
    scale: 1;
    translate: 0 0;
  }
  80% {
    filter: blur(0);
    opacity: 1;
    scale: 1;
    translate: 0 0;
  }
  100% {
    filter: blur(0);
    opacity: 1;
    scale: 1;
    translate: 0 -11.7333333333vw;
  }
}
.p-mv-logo {
  left: 50%;
  opacity: 0;
  position: absolute;
  top: 50%;
}
@media only screen and (max-width: 768px) {
  .p-mv-logo {
    animation: logo_sp 2s linear forwards 6s;
    margin-left: -29.8666666667vw;
    margin-top: -6.9333333333vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-mv-logo {
    animation: logo 2s linear forwards 6s;
    margin-left: -17.5vw;
    margin-top: -5vw;
  }
}
.p-mv-logo img {
  height: auto;
}
@media only screen and (max-width: 768px) {
  .p-mv-logo img {
    width: 59.7333333333vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-mv-logo img {
    width: 35vw;
  }
}

@keyframes image {
  0% {
    opacity: 0;
    translate: 0 11.40625vw;
  }
  40% {
    opacity: 0;
  }
  100% {
    opacity: 1;
    translate: 0 0;
  }
}
.p-mv-image {
  animation: image 1s linear forwards 8s;
  left: 50%;
  opacity: 0;
  position: absolute;
}
@media only screen and (max-width: 768px) {
  .p-mv-image {
    margin-left: -43.0666666667vw;
    top: 30vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-mv-image {
    margin-left: -25.234375vw;
    top: 17.578125vw;
  }
}
.p-mv-image img {
  height: auto;
}
@media only screen and (max-width: 768px) {
  .p-mv-image img {
    width: 86.1333333333vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-mv-image img {
    width: 50.46875vw;
  }
}

@keyframes catch {
  0% {
    scale: 0 1;
  }
  100% {
    scale: 1 1;
  }
}
.p-mv-catch {
  display: grid;
  place-content: center;
  left: 0;
  position: absolute;
  width: 100%;
}
@media only screen and (max-width: 768px) {
  .p-mv-catch {
    bottom: 0;
    padding-block: 2.6666666667vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-mv-catch {
    bottom: 4.921875vw;
    height: 6.171875vw;
  }
}
.p-mv-catch::before {
  animation: catch 0.3s linear forwards 9s;
  background: #FF0;
  content: "";
  display: block;
  height: 100%;
  left: 0;
  position: absolute;
  scale: 0 1;
  transform-origin: left;
  top: 0;
  width: 100%;
}
.p-mv-catch p {
  animation: text 0.3s linear forwards 9.3s;
  opacity: 0;
  position: relative;
  z-index: 2;
}
@media only screen and (max-width: 768px) {
  .p-mv-catch p {
    font-size: 4.4vw;
    text-align: center;
  }
}
@media print, screen and (min-width: 769px) {
  .p-mv-catch p {
    font-size: 2.578125vw;
  }
}

.p-contents {
  background: url("../img/bg-contents.png") no-repeat center max(-37px, -2.890625vw)/min(1980px, 154.6875vw) auto;
}
@media only screen and (max-width: 768px) {
  .p-contents {
    background-position: center -4.9333333333vw;
    background-size: 133.3333333333vw auto;
    padding: 5.3333333333vw 4vw 0;
  }
}
@media print, screen and (min-width: 769px) {
  .p-contents {
    padding-top: min(87px, 6.796875vw);
  }
}

@media print, screen and (min-width: 769px) {
  .p-contents-inner {
    margin-inline: auto;
    width: min(1022px, 79.84375vw);
  }
}

@media only screen and (max-width: 768px) {
  .p-summary {
    margin-bottom: 29.3333333333vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-summary {
    margin-bottom: min(155px, 12.109375vw);
    padding-inline: min(37px, 2.890625vw);
  }
}

@media only screen and (max-width: 768px) {
  .p-summary-main {
    background: url("../../img/pict-arrow_sp.svg") no-repeat center calc(50% - 1.8666666667vw)/7.4666666667vw;
    margin-bottom: 8vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-summary-main {
    background: url("../../img/pict-arrow.svg") no-repeat calc(50% - min(14px, 1.09375vw)) center/min(56px, 4.375vw);
    display: flex;
    gap: min(158px, 12.34375vw);
    margin-bottom: min(66px, 5.15625vw);
  }
}

@media only screen and (max-width: 768px) {
  .p-summary-name {
    margin-bottom: 9.3333333333vw;
    padding: 2.1333333333vw 2.9333333333vw 4vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-summary-name {
    padding: min(8px, 0.625vw) min(11px, 0.859375vw) min(15px, 1.171875vw);
  }
}
@media only screen and (max-width: 768px) {
  .p-summary-name p {
    font-size: 4vw;
    line-height: 1.55;
    margin-bottom: 3.2vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-summary-name p {
    font-size: min(16px, 1.25vw);
    line-height: 1.5;
    margin-bottom: min(12px, 0.9375vw);
  }
}
.p-summary-name h3 {
  text-align: center;
}
@media only screen and (max-width: 768px) {
  .p-summary-name h3 {
    font-size: 4.2666666667vw;
    line-height: 1.4;
  }
}
@media print, screen and (min-width: 769px) {
  .p-summary-name h3 {
    font-size: min(18px, 1.40625vw);
    line-height: 1.44;
  }
}

@media only screen and (max-width: 768px) {
  .p-summary-logo {
    text-align: center;
  }
}
@media print, screen and (min-width: 769px) {
  .p-summary-logo {
    align-items: flex-end;
    display: flex;
    justify-content: center;
    height: min(156px, 12.1875vw);
  }
}

.p-summary-sagiwall {
  width: 100%;
}
@media only screen and (max-width: 768px) {
  .p-summary-sagiwall {
    margin-bottom: 16vw;
  }
}
.p-summary-sagiwall .p-summary-name {
  background: #F7F7F7;
}
.p-summary-sagiwall img {
  height: auto;
}
@media only screen and (max-width: 768px) {
  .p-summary-sagiwall img {
    width: 58.6666666667vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-summary-sagiwall img {
    width: min(253px, 19.765625vw);
  }
}

.p-summary-miyaburu {
  width: 100%;
}
.p-summary-miyaburu .p-summary-name {
  background: #FF0;
}
.p-summary-miyaburu img {
  height: auto;
}
@media only screen and (max-width: 768px) {
  .p-summary-miyaburu img {
    width: 58.6666666667vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-summary-miyaburu img {
    width: min(287px, 22.421875vw);
  }
}

.p-summary-text {
  font-weight: 400;
  letter-spacing: 0;
}
@media only screen and (max-width: 768px) {
  .p-summary-text {
    font-size: 4.2666666667vw;
    line-height: 1.7;
    margin-bottom: 4vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-summary-text {
    font-size: min(17px, 1.328125vw);
    line-height: 1.882;
    margin-bottom: min(20px, 1.5625vw);
  }
}

.p-summary-link {
  text-align: center;
}
.p-summary-link a {
  color: #007FFF;
  display: inline-block;
  text-decoration: underline;
}
@media only screen and (max-width: 768px) {
  .p-summary-link a {
    font-size: 4.8vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-summary-link a {
    font-size: min(20px, 1.5625vw);
  }
}
@media print, screen and (min-width: 769px) {
  .p-summary-link a:hover {
    text-decoration: none;
  }
}

.p-point {
  background: #F7F7F7;
  position: relative;
}
@media only screen and (max-width: 768px) {
  .p-point {
    border-radius: 4vw;
    margin-bottom: 16vw;
    padding: 11.3333333333vw 4vw 14.6666666667vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-point {
    border-radius: min(30px, 2.34375vw);
    margin-bottom: min(111px, 8.671875vw);
    padding: min(85px, 6.640625vw) min(52px, 4.0625vw) min(110px, 8.59375vw) min(47px, 3.671875vw);
  }
}

.p-point-title {
  background: #fff;
  display: grid;
  font-family: "Now", sans-serif;
  letter-spacing: 0.03em;
  left: 50%;
  place-content: center;
  position: absolute;
  translate: -50%;
}
@media only screen and (max-width: 768px) {
  .p-point-title {
    border: 0.6666666667vw solid #000;
    font-size: 4.8vw;
    height: 12vw;
    top: -4.1333333333vw;
    width: 69.3333333333vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-point-title {
    border: min(5px, 0.390625vw) solid #000;
    font-size: min(35px, 2.734375vw);
    height: min(90px, 7.03125vw);
    top: max(-31px, -2.421875vw);
    width: min(520px, 40.625vw);
  }
}

.p-point-item {
  position: relative;
  width: 100%;
}
@media print, screen and (min-width: 769px) {
  .p-point-item {
    display: flex;
  }
}
@media only screen and (max-width: 768px) {
  .p-point-item:not(:last-child) {
    margin-bottom: min(220px, 17.1875vw);
  }
}

@media only screen and (max-width: 768px) {
  .p-point-image {
    margin-bottom: 4vw;
    text-align: center;
  }
}
@media print, screen and (min-width: 769px) {
  .p-point-image {
    position: absolute;
  }
}
.p-point-image img {
  height: auto;
}
@media only screen and (max-width: 768px) {
  .p-point-image img {
    width: 66.6666666667vw;
  }
}

.p-point-heading {
  background: url("../img/pict-dog.svg") no-repeat left center/min(65px, 5.078125vw) auto;
  letter-spacing: 0.08em;
}
@media only screen and (max-width: 768px) {
  .p-point-heading {
    background-size: 8.6666666667vw auto;
    font-size: 4.8vw;
    line-height: 1.5;
    margin-bottom: 4vw;
    padding-left: 12vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-point-heading {
    font-size: min(27px, 2.109375vw);
    line-height: 1.59;
    margin-bottom: min(13px, 1.015625vw);
    padding-left: min(90px, 7.03125vw);
  }
}

.p-point-text {
  font-weight: 400;
  letter-spacing: 0;
}
@media only screen and (max-width: 768px) {
  .p-point-text {
    font-size: 4.2666666667vw;
    line-height: 1.7;
  }
}
@media print, screen and (min-width: 769px) {
  .p-point-text {
    font-size: min(17px, 1.328125vw);
    line-height: 1.882;
  }
}

@media print, screen and (min-width: 769px) {
  .p-point-item01 {
    margin-bottom: min(200px, 15.625vw);
    padding-top: min(384px, 30vw);
  }
}
@media print, screen and (min-width: 769px) {
  .p-point-item01 .p-point-image {
    top: 0;
    right: max(-102px, -7.96875vw);
  }
}
.p-point-item01 .p-point-image img {
  height: auto;
}
@media print, screen and (min-width: 769px) {
  .p-point-item01 .p-point-image img {
    width: min(665px, 51.953125vw);
  }
}
@media print, screen and (min-width: 769px) {
  .p-point-item01 .p-point-detail {
    width: min(386px, 30.15625vw);
  }
}

@media print, screen and (min-width: 769px) {
  .p-point-item02 {
    justify-content: flex-end;
    margin-bottom: min(500px, 39.0625vw);
  }
}
@media print, screen and (min-width: 769px) {
  .p-point-item02 .p-point-image {
    left: max(-100px, -7.8125vw);
    top: max(-64px, -5vw);
  }
}
.p-point-item02 .p-point-image img {
  height: auto;
}
@media print, screen and (min-width: 769px) {
  .p-point-item02 .p-point-image img {
    width: min(612px, 47.8125vw);
  }
}
@media print, screen and (min-width: 769px) {
  .p-point-item02 .p-point-detail {
    width: min(384px, 30vw);
  }
}

@media print, screen and (min-width: 769px) {
  .p-point-item03 {
    margin-bottom: min(147px, 11.484375vw);
    padding-left: min(173px, 13.515625vw);
  }
}
@media print, screen and (min-width: 769px) {
  .p-point-item03 .p-point-image {
    top: max(-73px, -5.703125vw);
    right: max(-156px, -12.1875vw);
  }
}
.p-point-item03 .p-point-image img {
  height: auto;
}
@media print, screen and (min-width: 769px) {
  .p-point-item03 .p-point-image img {
    width: min(612px, 47.8125vw);
  }
}
@media only screen and (max-width: 768px) {
  .p-point-item03 .p-point-detail {
    margin-top: -21.3333333333vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-point-item03 .p-point-detail {
    width: min(340px, 26.5625vw);
  }
}

.p-point-button .c-btn {
  margin-inline: auto;
}
@media print, screen and (min-width: 769px) {
  .p-point-button .c-btn {
    width: min(330px, 25.78125vw);
  }
}

@media only screen and (max-width: 768px) {
  .p-detail {
    margin-bottom: 21.3333333333vw;
    padding-inline: 4vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-detail {
    margin-bottom: min(104px, 8.125vw);
    padding-inline: min(37px, 2.890625vw);
  }
}

@media only screen and (max-width: 768px) {
  .p-detail-item:not(:last-child) {
    margin-bottom: 8vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-detail-item:not(:last-child) {
    margin-bottom: min(56px, 4.375vw);
  }
}

.p-detail-heading {
  font-weight: bold;
  letter-spacing: 0.1em;
}
@media only screen and (max-width: 768px) {
  .p-detail-heading {
    font-size: 5.3333333333vw;
    line-height: 1.5;
    margin-bottom: 4vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-detail-heading {
    font-size: min(40px, 3.125vw);
    line-height: 1.45;
    margin-bottom: min(20px, 1.5625vw);
  }
}

.p-detail-text {
  font-weight: 400;
  letter-spacing: 0;
}
@media only screen and (max-width: 768px) {
  .p-detail-text {
    font-size: 3.7333333333vw;
    line-height: 1.7;
  }
}
@media print, screen and (min-width: 769px) {
  .p-detail-text {
    font-size: min(17px, 1.328125vw);
    line-height: 1.882;
  }
}

.p-detail-list li {
  font-weight: 400;
  letter-spacing: 0;
}
@media only screen and (max-width: 768px) {
  .p-detail-list li {
    font-size: 3.7333333333vw;
    line-height: 1.7;
    margin-left: 1em;
    text-indent: -1em;
  }
}
@media print, screen and (min-width: 769px) {
  .p-detail-list li {
    font-size: min(17px, 1.328125vw);
    line-height: 1.882;
  }
}

.p-sns {
  align-items: center;
  display: flex;
  justify-content: center;
}
@media only screen and (max-width: 768px) {
  .p-sns {
    gap: 8.1333333333vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-sns {
    gap: min(61px, 4.765625vw);
  }
}
.p-sns img {
  height: auto;
}

@media only screen and (max-width: 768px) {
  .p-sns-x img {
    width: 7.8666666667vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-sns-x img {
    width: min(59px, 4.609375vw);
  }
}

@media only screen and (max-width: 768px) {
  .p-sns-ig img {
    width: 9.0666666667vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-sns-ig img {
    width: min(68px, 5.3125vw);
  }
}

.p-footer {
  align-items: center;
  background: #000;
  display: flex;
  flex-direction: column;
}
@media only screen and (max-width: 768px) {
  .p-footer {
    padding-block: 6.6666666667vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-footer {
    padding-block: min(46px, 3.59375vw) min(57px, 4.453125vw);
  }
}

@media only screen and (max-width: 768px) {
  .p-footer-logo {
    margin-bottom: 10.6666666667vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-footer-logo {
    margin-bottom: min(53px, 4.140625vw);
  }
}
.p-footer-logo img {
  height: auto;
}
@media only screen and (max-width: 768px) {
  .p-footer-logo img {
    width: 41.6vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-footer-logo img {
    width: min(312px, 24.375vw);
  }
}

.p-footer-links {
  align-items: center;
  display: flex;
  justify-content: center;
}
@media only screen and (max-width: 768px) {
  .p-footer-links {
    flex-direction: column;
    gap: 2.2666666667vw;
    margin-bottom: 10.6666666667vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-footer-links {
    gap: min(17px, 1.328125vw);
    margin-bottom: min(30px, 2.34375vw);
  }
}
.p-footer-links a {
  color: #fff;
  display: inline-block;
}
@media only screen and (max-width: 768px) {
  .p-footer-links a {
    font-size: 4vw;
    line-height: 1.4;
  }
}
@media print, screen and (min-width: 769px) {
  .p-footer-links a {
    font-size: min(17px, 1.328125vw);
    line-height: 1.47;
  }
}

.p-footer-copyright {
  color: #fff;
}
@media only screen and (max-width: 768px) {
  .p-footer-copyright {
    font-size: 2.6666666667vw;
    line-height: 1.4;
  }
}
@media print, screen and (min-width: 769px) {
  .p-footer-copyright {
    font-size: min(17px, 1.328125vw);
    line-height: 1.47;
  }
}/*# sourceMappingURL=index.css.map */