@charset "UTF-8";
/* ===================================
Foundation
=================================== */
/*
 * _setting.scss
 */
/* -----------------------------------
Color
------------------------------------ */
/* -----------------------------------
SVG
------------------------------------ */
/*
 * _mixin.scss
 */
/* -----------------------------------
media query print
------------------------------------ */
/* -----------------------------------
media query ver1
------------------------------------ */
/* -----------------------------------
transition
------------------------------------ */
/* -----------------------------------
clearfix
------------------------------------ */
/* -----------------------------------
formFocus
------------------------------------ */
/* -----------------------------------
shadow
------------------------------------ */
/* -----------------------------------
anim_text
------------------------------------ */
@import url("https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@500&family=Shippori+Mincho:wght@500&display=swap");
@font-face {
  font-family: "Noto Sans CJK JP";
  font-style: normal;
  font-weight: 100;
  font-display: swap;
  src: local("Noto Sans CJK JP Thin"), url("../fonts/NotoSansCJKjp-Thin.woff2") format("woff2"), url("../fonts/NotoSansCJKjp-Thin.woff") format("woff");
}
@font-face {
  font-family: "Noto Sans CJK JP";
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: local("Noto Sans CJK JP Light"), url("../fonts/NotoSansCJKjp-Light.woff2") format("woff2"), url("../fonts/NotoSansCJKjp-Light.woff") format("woff");
}
@font-face {
  font-family: "Noto Sans CJK JP";
  font-style: normal;
  font-weight: 350;
  font-display: swap;
  src: local("Noto Sans CJK JP DemiLight"), url("../fonts/NotoSansCJKjp-DemiLight.woff2") format("woff2"), url("../fonts/NotoSansCJKjp-DemiLight.woff") format("woff");
}
@font-face {
  font-family: "Noto Sans CJK JP";
  font-style: normal;
  font-weight: normal;
  font-display: swap;
  src: local("Noto Sans CJK JP Regular"), url("../fonts/NotoSansCJKjp-Regular.woff2") format("woff2"), url("../fonts/NotoSansCJKjp-Regular.woff") format("woff");
}
@font-face {
  font-family: "Noto Sans CJK JP";
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: local("Noto Sans CJK JP Medium"), url("../fonts/NotoSansCJKjp-Medium.woff2") format("woff2"), url("../fonts/NotoSansCJKjp-Medium.woff") format("woff");
}
@font-face {
  font-family: "Noto Sans CJK JP";
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: local("Noto Sans CJK JP Bold"), url("../fonts/NotoSansCJKjp-Bold.woff2") format("woff2"), url("../fonts/NotoSansCJKjp-Bold.woff") format("woff");
}
@font-face {
  font-family: "Noto Sans CJK JP";
  font-style: normal;
  font-weight: 900;
  font-display: swap;
  src: local("Noto Sans CJK JP Black"), url("../fonts/NotoSansCJKjp-Black.woff2") format("woff2"), url("../fonts/NotoSansCJKjp-Black.woff") format("woff");
}
/*
 * _reset.scss
 */
/* -----------------------------------
reset
------------------------------------ */
html,
body {
  height: 100%;
}

html {
  overflow-y: scroll;
}

*,
*:after,
*:before {
  box-sizing: border-box;
}

* {
  margin: 0;
  padding: 0;
  font-size: inherit;
  line-height: inherit;
  outline: none;
}

form {
  display: inline;
}

pre,
textarea {
  overflow: auto;
}

[hidden],
audio:not([controls]),
template {
  display: none;
}

details,
main,
summary {
  display: block;
}

input[type=text],
input[type=password] {
  -webkit-appearance: none;
}

input[type=radio],
input[type=checkbox] {
  vertical-align: middle;
}

input[type=number] {
  width: auto;
}

input[type=search] {
  -webkit-appearance: textfield;
}

input[type=search]::-webkit-search-cancel-button,
input[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

progress {
  display: inline-block;
}

small {
  font-size: 75%;
}

sub,
sup {
  position: relative;
  vertical-align: baseline;
  font-size: 60%;
  line-height: 0;
}

sup {
  top: -0.5em;
}

sub {
  bottom: -0.15em;
}

textarea {
  resize: vertical;
}

audio,
canvas,
iframe,
img,
svg,
video {
  vertical-align: middle;
}

img {
  border: 0;
  max-width: 100%;
  height: auto;
}

img[src$=".svg"] {
  width: 100%;
}

button,
input,
select,
textarea {
  min-height: 1.5em;
  color: inherit;
  font-family: inherit;
  font-weight: inherit;
  font-style: inherit;
}

button {
  overflow: visible;
}

button,
select {
  text-transform: none;
}

button,
html input[type=button],
input[type=reset],
input[type=submit] {
  border: none;
  background: none;
  cursor: pointer;
  appearance: none;
  -moz-appearance: none;
  -webkit-appearance: none;
}

button[disabled],
html input[disabled] {
  cursor: default;
}

button::-moz-focus-inner,
input::-moz-focus-inner {
  padding: 0;
  border: 0;
}

input {
  line-height: normal;
}

code,
kbd,
pre,
samp {
  font-family: monospace, monospace;
}

ol,
ul {
  list-style: none;
}

select {
  outline: none;
  text-indent: 0.01px;
  text-overflow: "";
  background: none transparent;
  vertical-align: middle;
  font-size: inherit;
  color: inherit;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border: none;
}

select option {
  background-color: #fff;
  color: #333;
}

select::-ms-expand {
  display: none;
}

select:-moz-focusring {
  color: transparent;
  text-shadow: 0 0 0 #828c9a;
}

table {
  border-spacing: 0;
  border-collapse: collapse;
}

fieldset {
  border: 0;
}

hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #cccccc;
  margin: 15px 0;
  padding: 0;
}

/*
 * _base.scss
 */
/* -----------------------------------
base Setting
------------------------------------ */
html {
  font-size: 62.5%;
}

body {
  color: #CECECE;
  animation: anim_noise 0.02s steps(5, jump-none) infinite;
  background: url(../img/common/bg_noise_1.webp);
  font-size: 1.6rem;
  line-height: 1.75;
  font-family: "Shippori Mincho", serif;
  font-weight: 500;
  letter-spacing: 0.1em;
  max-height: 999999px;
  -webkit-text-size-adjust: 100%;
  -webkit-font-smoothing: antialiased;
}

@media print {
  html, body {
    height: auto;
  }
}
a {
  color: #211815;
}
a.disabled {
  pointer-events: none;
}
a:hover {
  text-decoration: none;
}
@media screen and (min-width: 769px) {
  a[href*="tel:"] {
    pointer-events: none;
    cursor: default;
    text-decoration: none;
  }
}

/* ===================================
Layout
=================================== */
/*
 * _layout.scss
 */
/* -----------------------------------
wrapper
------------------------------------ */
/* -----------------------------------
header
------------------------------------ */
.l-header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  padding: 1.65vw 2vw;
  z-index: 1000;
}
@media screen and (max-width: 768px) {
  .l-header {
    padding: 3.5vw 5vw;
  }
}
.l-header_in {
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.l-header_logo {
  width: 14.29vw;
}
@media screen and (max-width: 768px) {
  .l-header_logo {
    width: 40vw;
    position: relative;
    z-index: 101;
  }
}
@media screen and (max-width: 768px) {
  .l-header_nav {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    animation: anim_noise 0.02s steps(5, jump-none) infinite;
    background: url(../img/common/bg_noise_1.webp);
    z-index: 100;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.5s;
  }
}
.l-header_nav > ul {
  display: flex;
}
@media screen and (max-width: 768px) {
  .l-header_nav > ul {
    flex-flow: column;
    gap: 3.8vw;
  }
}
.l-header_nav > ul li {
  position: relative;
}
.l-header_nav > ul li:nth-of-type(n+2)::before {
  content: "";
  display: block;
  border-left: 1px solid #B5B5B5;
  height: 0.71vw;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
}
@media screen and (max-width: 768px) {
  .l-header_nav > ul li:nth-of-type(n+2)::before {
    display: none;
  }
}
.l-header_nav > ul li a {
  display: block;
  text-decoration: none;
  color: #E8E8E8;
  font-family: "Cormorant Garamond", serif;
  font-weight: 500;
  letter-spacing: 0.02em;
  font-size: 0.93vw;
  position: relative;
  line-height: 1;
  padding: 1.1em 1.9vw;
}
@media screen and (max-width: 768px) {
  .l-header_nav > ul li a {
    font-size: 5vw;
    padding: 1.1em 5.7vw;
  }
}
.l-header_nav > ul li a::before {
  content: "";
  display: none;
  width: 0.42vw;
  height: 0.42vw;
  background-color: #B5B5B5;
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
}
@media screen and (max-width: 768px) {
  .l-header_nav > ul li a::before {
    display: none;
  }
}
.l-header_nav > ul li a._contact {
  color: #282828;
  background-color: #E8E8E8;
  border-radius: 1000px;
  transition: opacity 0.3s;
}
@media screen and (min-width: 769px) {
  .l-header_nav > ul li a._contact:hover {
    opacity: 0.8;
  }
}
.l-header_nav > ul li a._contact > div {
  position: relative;
}
.l-header_nav > ul li a._contact > div::after {
  content: "";
  width: 0.45vw;
  height: 0.45vw;
  position: absolute;
  top: 50%;
  right: -0.8vw;
  background: url(../img/common/ico_arrow2.svg) no-repeat;
  background-size: contain;
  transform: translateY(-60%);
}
@media screen and (max-width: 768px) {
  .l-header_nav > ul li a._contact > div::after {
    width: 2.5vw;
    height: 2.5vw;
    transform: translateY(-40%);
  }
}
@media screen and (min-width: 769px) {
  .l-header_nav > ul li.selected a::before {
    display: block;
  }
}
.l-header_nav p {
  display: none;
  font-size: 3vw;
  position: absolute;
  left: 50%;
  bottom: 8vw;
  transform: translateX(-50%);
  white-space: nowrap;
  text-indent: -1em;
  padding-left: 1em;
}
@media screen and (max-width: 768px) {
  .l-header_nav p {
    display: block;
  }
}
@media screen and (max-width: 768px) {
  .l-header_nav.-open {
    opacity: 1;
    pointer-events: all;
  }
}
.l-header_btn {
  display: none;
}
@media screen and (max-width: 768px) {
  .l-header_btn {
    display: block;
    position: relative;
    z-index: 101;
  }
}

/* -----------------------------------
content
------------------------------------ */
.l-content {
  position: relative;
  z-index: 0;
  overflow: clip;
  width: 100%;
}
/* -----------------------------------
section
------------------------------------ */
.l-sec {
  position: relative;
  padding-left: 1.39vw;
  padding-right: 1.39vw;
}
@media screen and (max-width: 768px) {
  .l-sec {
    padding-left: 2.5vw;
    padding-right: 2.5vw;
  }
}
.l-sec_in {
  position: relative;
  max-width: 1000px;
  margin: 0 auto;
}
.l-sec2 {
  position: relative;
  padding-left: 5.56vw;
  padding-right: 5.56vw;
}
@media screen and (max-width: 768px) {
  .l-sec2 {
    padding-left: 4%;
    padding-right: 4%;
  }
}

/* -----------------------------------
footer
------------------------------------ */
.l-footer {
  position: relative;
  color: #fff;
  margin-top: 17.2vw;
  padding-bottom: 2vw;
}
@media screen and (max-width: 768px) {
  .l-footer {
    margin-top: 30vw;
    padding-bottom: 6vw;
  }
}
.l-footer_catalog {
  position: relative;
  height: 30.68vw;
}
@media screen and (max-width: 768px) {
  .l-footer_catalog {
    height: 101.25vw;
  }
}
.l-footer_catalog::before {
  content: "";
  display: block;
  position: absolute;
  top: -15%;
  bottom: -8%;
  left: 0;
  width: 100%;
  background: url(../img/common/bg_noise_3.webp);
}
.l-footer_catalog ._in {
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 80%;
  height: 100%;
}
@media screen and (max-width: 768px) {
  .l-footer_catalog ._in {
    width: 90vw;
  }
}
@media screen and (min-width: 769px) {
  .l-footer_catalog a:hover ._title, .l-footer_catalog a:hover ._name, .l-footer_catalog a:hover ._line {
    opacity: 0.4;
  }
  .l-footer_catalog a:hover ._catalog_img {
    opacity: 0.7;
  }
}
.l-footer_catalog ._title {
  position: absolute;
  top: -1vw;
  left: 0;
  color: #000;
  transition: opacity 0.3s;
}
@media screen and (max-width: 768px) {
  .l-footer_catalog ._title {
    top: 2.5vw;
  }
}
.l-footer_catalog ._title h2 {
  font-size: 3.33vw;
  font-family: "Cormorant Garamond", serif;
  font-weight: 500;
}
@media screen and (max-width: 768px) {
  .l-footer_catalog ._title h2 {
    font-size: 12vw;
  }
}
.l-footer_catalog ._title span {
  display: block;
  font-size: 1.25vw;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .l-footer_catalog ._title span {
    font-size: 4.5vw;
    margin-top: -0.4em;
  }
}
.l-footer_catalog ._name {
  position: absolute;
  left: 4.5%;
  bottom: 2.4vw;
  z-index: 1;
  transition: opacity 0.3s;
}
@media screen and (max-width: 768px) {
  .l-footer_catalog ._name {
    left: auto;
    right: 0;
    top: 73.5vw;
  }
}
.l-footer_catalog ._name h3 {
  font-size: 2vw;
  font-family: "Shippori Mincho", serif;
  font-weight: 500;
  line-height: 1;
  color: #000;
  letter-spacing: 0;
}
@media screen and (max-width: 768px) {
  .l-footer_catalog ._name h3 {
    font-size: 6.5vw;
  }
}
.l-footer_catalog ._name ._txt {
  margin-top: 1vw;
  font-size: 1.29vw;
}
@media screen and (max-width: 768px) {
  .l-footer_catalog ._name ._txt {
    font-size: 4.5vw;
    margin-top: 5.5vw;
  }
}
.l-footer_catalog ._catalog_img {
  position: absolute;
  top: 48%;
  left: 30%;
  transform: translateY(-50%);
  width: 48.96vw;
  transition: opacity 0.3s;
}
@media screen and (max-width: 768px) {
  .l-footer_catalog ._catalog_img {
    width: 100%;
    left: 0;
    top: 50%;
  }
}
.l-footer_catalog ._line {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  transition: opacity 0.3s;
}
.l-footer_catalog ._line > div {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.l-footer_catalog ._line > div::before {
  content: "";
  display: block;
  width: 54%;
  border-top: 1px solid #000;
  position: absolute;
}
.l-footer_catalog ._line > div::after {
  content: "";
  display: block;
  height: 83%;
  border-left: 1px solid #000;
  position: absolute;
}
.l-footer_catalog ._line > div:nth-of-type(1)::before {
  left: -3.3vw;
  bottom: 0;
}
@media screen and (max-width: 768px) {
  .l-footer_catalog ._line > div:nth-of-type(1)::before {
    left: 0;
    bottom: 6.5vw;
    width: 29.75vw;
  }
}
.l-footer_catalog ._line > div:nth-of-type(1)::after {
  left: 0;
  bottom: -4.4vw;
}
@media screen and (max-width: 768px) {
  .l-footer_catalog ._line > div:nth-of-type(1)::after {
    left: 5vw;
    bottom: -7.25vw;
    height: 32.25vw;
  }
}
.l-footer_catalog ._line > div:nth-of-type(2)::before {
  right: -3.2vw;
  top: 0;
  width: 77%;
}
@media screen and (max-width: 768px) {
  .l-footer_catalog ._line > div:nth-of-type(2)::before {
    right: -5vw;
    top: 7.5vw;
    width: 25vw;
  }
}
.l-footer_catalog ._line > div:nth-of-type(2)::after {
  right: 0;
  top: -4.4vw;
  height: 100%;
}
@media screen and (max-width: 768px) {
  .l-footer_catalog ._line > div:nth-of-type(2)::after {
    right: 0;
    top: -7.5vw;
    height: 38.5vw;
  }
}
.l-footer_info {
  padding: 0 3%;
  margin-top: 10.4vw;
}
@media screen and (max-width: 768px) {
  .l-footer_info {
    margin-top: 22.5vw;
  }
}
.l-footer_info ._logo {
  display: flex;
  justify-content: space-between;
  align-items: center;
  position: relative;
}
@media screen and (max-width: 768px) {
  .l-footer_info ._logo {
    flex-flow: column-reverse;
    gap: 12.5vw;
  }
}
.l-footer_info ._logo::after {
  content: "";
  display: none;
  width: 85vw;
  border-top: 1px solid #B5B5B5;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
@media screen and (max-width: 768px) {
  .l-footer_info ._logo::after {
    display: block;
  }
}
.l-footer_info ._logo > div:nth-of-type(1) {
  width: 44.03vw;
}
@media screen and (max-width: 768px) {
  .l-footer_info ._logo > div:nth-of-type(1) {
    width: 79.25vw;
  }
}
.l-footer_info ._logo > div:nth-of-type(2) {
  width: 14.79vw;
}
@media screen and (max-width: 768px) {
  .l-footer_info ._logo > div:nth-of-type(2) {
    width: 71.35vw;
  }
}
.l-footer_info ._link {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-top: 3vw;
}
@media screen and (max-width: 768px) {
  .l-footer_info ._link {
    flex-flow: column;
    gap: 8vw;
    margin-top: 11.5vw;
  }
}
.l-footer_info ._link nav ul {
  display: flex;
}
@media screen and (max-width: 768px) {
  .l-footer_info ._link nav ul {
    flex-wrap: wrap;
    row-gap: 2vw;
    justify-content: center;
    margin: 0 auto;
  }
}
.l-footer_info ._link nav ul li {
  font-size: 0.69vw;
}
@media screen and (max-width: 768px) {
  .l-footer_info ._link nav ul li {
    font-size: 2.5vw;
  }
}
.l-footer_info ._link nav ul li:nth-of-type(n+2)::before {
  content: "|";
  margin: 0 0.9vw;
}
@media screen and (max-width: 768px) {
  .l-footer_info ._link nav ul li:nth-of-type(n+2)::before {
    margin: 0 3.5vw;
  }
}
@media screen and (max-width: 768px) {
  .l-footer_info ._link nav ul li:nth-of-type(1)::before {
    content: "|";
    margin: 0 3.5vw;
  }
}
@media screen and (max-width: 768px) {
  .l-footer_info ._link nav ul li:nth-of-type(2)::after, .l-footer_info ._link nav ul li:nth-of-type(4)::after {
    content: "|";
    margin: 0 3.5vw;
  }
}
.l-footer_info ._link nav ul li a {
  color: #B5B5B5;
  text-decoration: none;
}
.l-footer_info ._link p {
  color: #B5B5B5;
  font-size: 0.76vw;
  letter-spacing: 0;
}
@media screen and (max-width: 768px) {
  .l-footer_info ._link p {
    font-size: 2.25vw;
  }
}

/* ===================================
Object
=================================== */
/* -----------------------------------
Component
------------------------------------ */
/*
 * _component.scss
 */
/* -----------------------------------
hover
------------------------------------ */
.c-hover {
  transition: 0.2s ease-in-out;
}
.c-hover:hover {
  opacity: 0.7;
}

/* -----------------------------------
select
------------------------------------ */
/* -----------------------------------
btn
------------------------------------ */
.c-hambBtn {
  position: relative;
  width: 8vw;
  height: 8vw;
  display: none;
  cursor: pointer;
}
@media screen and (max-width: 768px) {
  .c-hambBtn {
    display: block;
  }
}
.c-hambBtn span {
  left: 50%;
  transform: translate(-50%, -50%);
  display: block;
  border-top: 1px solid #fff;
  width: 100%;
  position: absolute;
  transition: opacity 0.3s, transform 0.3s, top 0.3s;
}
.c-hambBtn span:nth-of-type(1) {
  top: 20%;
}
.c-hambBtn span:nth-of-type(2) {
  top: 50%;
}
.c-hambBtn span:nth-of-type(3) {
  top: 80%;
  width: 50%;
  transform: translate(-100%, -50%);
}
.c-hambBtn.-open span:nth-of-type(1) {
  top: 50%;
  transform: translate(-50%, -50%) rotate(45deg);
}
.c-hambBtn.-open span:nth-of-type(2) {
  transform: translate(-50%, -50%) rotate(-45deg);
}
.c-hambBtn.-open span:nth-of-type(3) {
  opacity: 0;
  transform: translate(0%, -50%);
}

.c-title {
  text-align: center;
  white-space: nowrap;
}
.c-title > h2 {
  font-size: 3.33vw;
  font-family: "Cormorant Garamond", serif;
  font-weight: 500;
  color: #B5B5B5;
}
@media screen and (max-width: 768px) {
  .c-title > h2 {
    font-size: 12vw;
    line-height: 1.25;
  }
}
.c-title > a, .c-title > span {
  display: inline-block;
  font-size: 1.25vw;
  color: #B5B5B5;
  text-decoration: none;
  font-family: "Cormorant Garamond", serif;
  font-weight: 500;
  letter-spacing: 0;
  position: relative;
  padding: 0.9vw 5.5vw;
}
@media screen and (max-width: 768px) {
  .c-title > a, .c-title > span {
    font-size: 4.5vw;
    padding: 1.2vw 18vw;
  }
}
.c-title > a::after, .c-title > span::after {
  content: "";
  display: block;
  width: 4.17vw;
  height: 2.78vw;
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-45%);
  background: url(../img/common/ico_arrow.svg) no-repeat;
  background-size: contain;
}
@media screen and (max-width: 768px) {
  .c-title > a::after, .c-title > span::after {
    width: 15vw;
    height: 10vw;
  }
}
.c-title.-nopad > a, .c-title.-nopad > span {
  padding-left: 0;
}
.c-title.-black > a, .c-title.-black > span {
  color: #000;
}
.c-title.-black > a::after, .c-title.-black > span::after {
  background: url(../img/common/ico_arrow_black.svg) no-repeat;
  background-size: contain;
}
.c-title > a {
  transition: opacity 0.3s;
}
@media screen and (min-width: 769px) {
  .c-title > a:hover {
    opacity: 0.4;
  }
}

/* -----------------------------------
Project
------------------------------------ */
/*
 * _project.scss
 */
@keyframes fuwafuwa {
  0% {
    transform: translateY(-10%);
  }
  50% {
    transform: translateY(10%);
  }
  100% {
    transform: translateY(-10%);
  }
}
@keyframes anim_mv_scroll {
  0% {
    opacity: 1;
  }
  50% {
    opacity: 0.5;
  }
  100% {
    opacity: 1;
  }
}
@keyframes anim_noise_x {
  0% {
    background-position: -100px 0px;
  }
  50% {
    background-position: 100px 0px;
  }
  100% {
    background-position: -100px 0px;
  }
}
@keyframes anim_noise_y {
  0% {
    background-position: 0px -100px;
  }
  50% {
    background-position: 0px 100px;
  }
  100% {
    background-position: 0px -100px;
  }
}
@keyframes anim_noise_rotate {
  0% {
    background-position: 0px 100px;
  }
  5% {
    background-position: 30.9016994375px 95.1056516295px;
  }
  10% {
    background-position: 58.7785252292px 80.9016994375px;
  }
  15% {
    background-position: 80.9016994375px 58.7785252292px;
  }
  20% {
    background-position: 95.1056516295px 30.9016994375px;
  }
  25% {
    background-position: 100px 0px;
  }
  30% {
    background-position: 95.1056516295px -30.9016994375px;
  }
  35% {
    background-position: 80.9016994375px -58.7785252292px;
  }
  40% {
    background-position: 58.7785252292px -80.9016994375px;
  }
  45% {
    background-position: 30.9016994375px -95.1056516295px;
  }
  50% {
    background-position: 0px -100px;
  }
  55% {
    background-position: -30.9016994375px -95.1056516295px;
  }
  60% {
    background-position: -58.7785252292px -80.9016994375px;
  }
  65% {
    background-position: -80.9016994375px -58.7785252292px;
  }
  70% {
    background-position: -95.1056516295px -30.9016994375px;
  }
  75% {
    background-position: -100px 0px;
  }
  80% {
    background-position: -95.1056516295px 30.9016994375px;
  }
  85% {
    background-position: -80.9016994375px 58.7785252292px;
  }
  90% {
    background-position: -58.7785252292px 80.9016994375px;
  }
  95% {
    background-position: -30.9016994375px 95.1056516295px;
  }
  100% {
    background-position: 0px 100px;
  }
}
@keyframes anim_noise {
  0% {
    background-position: 0px 0px;
  }
  25% {
    background-position: 100px 0px;
  }
  50% {
    background-position: 0px 100px;
  }
  75% {
    background-position: 100px 100px;
  }
  100% {
    background-position: 0px 0px;
  }
}
@keyframes anim_bounce {
  0% {
    opacity: 0;
    filter: blur(8px);
  }
  33% {
    opacity: 0.666;
    filter: blur(4px);
  }
  66% {
    opacity: 0.616;
    filter: blur(5px);
  }
  100% {
    opacity: 1;
    filter: blur(0px);
  }
}
/* -----------------------------------
secMv
------------------------------------ */
.p-secMv {
  width: 100%;
  height: 525vh;
  background-color: #111111;
}
.p-secMv_in {
  position: sticky;
  width: 100%;
  height: 100vh;
  left: 0;
  top: 0;
}
.p-secMv_slide1, .p-secMv_slide2, .p-secMv_slide3, .p-secMv_slide4, .p-secMv_slide5, .p-secMv_scroll, .p-secMv_anno {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}
.p-secMv_scroll {
  z-index: 2;
  pointer-events: none;
  transition: opacity 0.5s;
}
.p-secMv_scroll.-hide {
  opacity: 0;
}
.p-secMv_scroll ._icon {
  font-size: 1.5vw;
  position: absolute;
  left: 50%;
  bottom: 3%;
  transform: translate(-50%, -50%);
  padding-bottom: 0.2vw;
  animation: anim_mv_scroll 3s infinite;
  font-family: "Cormorant Garamond", serif;
  font-weight: 500;
}
@media screen and (max-width: 768px) {
  .p-secMv_scroll ._icon {
    font-size: 4.5vw;
    padding-bottom: 0.6vw;
  }
}
.p-secMv_scroll ._icon::after {
  content: "";
  display: block;
  width: 0.75vw;
  height: 0.75vw;
  position: absolute;
  left: 50%;
  bottom: 0;
  transform: translateX(-50%) rotate(45deg);
  border-right: 1px solid #fff;
  border-bottom: 1px solid #fff;
}
@media screen and (max-width: 768px) {
  .p-secMv_scroll ._icon::after {
    width: 2.25vw;
    height: 2.25vw;
  }
}
.p-secMv_anno {
  z-index: 2;
  pointer-events: none;
  transition: opacity 0.5s;
}
@media screen and (max-width: 768px) {
  .p-secMv_anno {
    opacity: 0;
  }
}
.p-secMv_anno.-hide {
  opacity: 0;
}
.p-secMv_anno p {
  font-size: 0.8vw;
  position: absolute;
  right: 1vw;
  bottom: 1vw;
  font-family: "Cormorant Garamond", serif;
  font-weight: 500;
}
@media screen and (max-width: 768px) {
  .p-secMv_anno p {
    font-size: 4.5vw;
  }
}
.p-secMv_slide1 {
  z-index: 1;
}
.p-secMv_slide1 ._noise {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}
.p-secMv_slide1 ._noise > div {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  animation: anim_noise 0.02s steps(5, jump-none) infinite;
  background: url(../img/common/bg_noise_2.webp);
  opacity: 0.6;
}
.p-secMv_slide2 {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}
.p-secMv_slide2 ._img {
  width: 100%;
  height: 100%;
  overflow: hidden;
}
.p-secMv_slide2 ._img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}
.p-secMv_slide2 ._overray {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 150%;
  background: linear-gradient(#111111 0%, #111111 66.6%, rgba(0, 0, 0, 0) 100%);
}
.p-secMv_slide2 ._overray2 {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #111111;
  opacity: 0;
  pointer-events: none;
}
.p-secMv_slide3 ._img {
  width: 25%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
@media screen and (max-width: 768px) {
  .p-secMv_slide3 ._img {
    width: 70%;
  }
}
.p-secMv_slide4 {
  opacity: 0;
}
.p-secMv_slide4 p {
  color: #fff;
  font-size: 3.89vw;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  writing-mode: vertical-rl;
  white-space: nowrap;
}
@media screen and (max-width: 768px) {
  .p-secMv_slide4 p {
    font-size: 9vw;
  }
}
.p-secMv_slide5 {
  opacity: 0;
}
.p-secMv_slide5 p {
  position: absolute;
  top: 50%;
  left: 62%;
  transform: translateY(-50%);
  color: #fff;
  font-size: 1.11vw;
  white-space: nowrap;
  letter-spacing: 0;
}
@media screen and (max-width: 768px) {
  .p-secMv_slide5 p {
    left: 50%;
    transform: translate(-50%, -50%);
    font-size: 4vw;
  }
}
.p-secMv_slide5 p span {
  font-family: "Cormorant Garamond", serif;
  font-weight: 500;
}
.p-secMv_slide5 p:nth-of-type(1) {
  color: #424242;
}
.p-secMv_slide5 p:nth-of-type(2) {
  color: #B5B5B5;
}

/* -----------------------------------
secContent
------------------------------------ */
.p-secContent {
  width: 100%;
  height: 535vh;
  overflow: clip;
}
.p-secContent_in {
  position: sticky;
  width: 100%;
  height: 100vh;
  left: 0;
  top: 0;
}
.p-secContent_overray, .p-secContent_slide1, .p-secContent_slide2, .p-secContent_slide3, .p-secContent_slide4 {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}
.p-secContent_overray {
  opacity: 0;
  background-color: #111111;
  z-index: 2;
}
.p-secContent_txt1 {
  font-size: 1.94vw;
  writing-mode: vertical-rl;
  white-space: nowrap;
  position: absolute;
  top: 15.6%;
  right: 7.92%;
}
@media screen and (max-width: 768px) {
  .p-secContent_txt1 {
    font-size: 5vw;
    right: 4%;
    top: 9.5%;
  }
}
.p-secContent_slide1 {
  z-index: -1;
}
.p-secContent_slide1 ul li {
  width: 29.17vw;
  height: 17.01vw;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
@media screen and (max-width: 768px) {
  .p-secContent_slide1 ul li {
    width: 80vw;
    height: 46.5vw;
  }
}
.p-secContent_slide1 ul li:nth-of-type(1) {
  left: 18%;
}
@media screen and (max-width: 768px) {
  .p-secContent_slide1 ul li:nth-of-type(1) {
    left: 50%;
    top: 20%;
  }
}
.p-secContent_slide1 ul li:nth-of-type(2) {
  z-index: 1;
}
.p-secContent_slide1 ul li:nth-of-type(3) {
  left: 82%;
}
@media screen and (max-width: 768px) {
  .p-secContent_slide1 ul li:nth-of-type(3) {
    left: 50%;
    top: 80%;
  }
}
.p-secContent_slide1 ul li img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}
.p-secContent_slide2 {
  opacity: 0;
  transition: opacity 0.5s;
}
.p-secContent_slide2 ._line > div {
  position: absolute;
  opacity: 0;
  transition: opacity 2s;
}
.p-secContent_slide2 ._line > div::before {
  content: "";
  display: block;
  width: 100%;
  border-top: 1px solid #fff;
  transform: translateY(-50%);
  position: absolute;
  left: 0;
}
.p-secContent_slide2 ._line > div::after {
  content: "";
  display: block;
  height: 100%;
  border-left: 1px solid #fff;
  transform: translateX(-50%);
  position: absolute;
  top: 0;
}
.p-secContent_slide2 ._line > div:nth-of-type(1) {
  width: 7.57vw;
  aspect-ratio: 757/1111;
  top: 22.26%;
  left: 5.63%;
}
@media screen and (max-width: 768px) {
  .p-secContent_slide2 ._line > div:nth-of-type(1) {
    width: 15.5vw;
    top: 9.76%;
    left: 10.75%;
  }
}
.p-secContent_slide2 ._line > div:nth-of-type(1)::before {
  top: 18.75%;
}
.p-secContent_slide2 ._line > div:nth-of-type(1)::after {
  left: 29.35%;
}
.p-secContent_slide2 ._line > div:nth-of-type(2) {
  width: 7.57vw;
  top: 63.21%;
  left: 9.44%;
  aspect-ratio: 757/472;
}
@media screen and (max-width: 768px) {
  .p-secContent_slide2 ._line > div:nth-of-type(2) {
    width: 15.72vw;
    top: 58.93%;
    left: 17.25%;
  }
}
.p-secContent_slide2 ._line > div:nth-of-type(2)::before {
  top: 50%;
}
.p-secContent_slide2 ._line > div:nth-of-type(2)::after {
  left: 31.19%;
}
.p-secContent_slide2 ._line > div:nth-of-type(3) {
  width: 11.94vw;
  top: 74.4%;
  left: 25.21%;
  aspect-ratio: 1194/472;
}
@media screen and (max-width: 768px) {
  .p-secContent_slide2 ._line > div:nth-of-type(3) {
    width: 24.75vw;
    left: 23.75%;
    top: 45.6%;
  }
}
.p-secContent_slide2 ._line > div:nth-of-type(3)::before {
  top: 55.88%;
}
.p-secContent_slide2 ._line > div:nth-of-type(3)::after {
  left: 19.18%;
}
.p-secContent_slide2 ._line > div:nth-of-type(4) {
  width: 14.93vw;
  top: 42.38%;
  left: 27.78%;
  aspect-ratio: 1493/729;
}
@media screen and (max-width: 768px) {
  .p-secContent_slide2 ._line > div:nth-of-type(4) {
    width: 31vw;
    left: 28.75%;
    top: 27.02%;
  }
}
.p-secContent_slide2 ._line > div:nth-of-type(4)::before {
  top: 36.19%;
}
.p-secContent_slide2 ._line > div:nth-of-type(4)::after {
  left: 84.65%;
}
.p-secContent_slide2 ._line > div:nth-of-type(5) {
  width: 11.94vw;
  top: 18.1%;
  left: 43.61%;
  aspect-ratio: 1194/472;
}
@media screen and (max-width: 768px) {
  .p-secContent_slide2 ._line > div:nth-of-type(5) {
    width: 19.5vw;
    left: 9%;
    top: 72.5%;
  }
}
.p-secContent_slide2 ._line > div:nth-of-type(5)::before {
  top: 44.11%;
}
.p-secContent_slide2 ._line > div:nth-of-type(5)::after {
  left: 19.18%;
}
.p-secContent_slide2 ._line > div:nth-of-type(6) {
  width: 17.36vw;
  top: 67.38%;
  left: 58.96%;
  aspect-ratio: 1736/688;
}
@media screen and (max-width: 768px) {
  .p-secContent_slide2 ._line > div:nth-of-type(6) {
    width: 28.25vw;
    left: 43.25%;
    top: 84.05%;
  }
}
.p-secContent_slide2 ._line > div:nth-of-type(6)::before {
  top: 55.55%;
}
.p-secContent_slide2 ._line > div:nth-of-type(6)::after {
  left: 80.8%;
}
.p-secContent_slide2 ._line > div:nth-of-type(7) {
  width: 7.57vw;
  top: 32.26%;
  left: 72.15%;
  aspect-ratio: 757/472;
}
@media screen and (max-width: 768px) {
  .p-secContent_slide2 ._line > div:nth-of-type(7) {
    width: 15.7vw;
    left: 58.25%;
    top: 54.4%;
  }
}
.p-secContent_slide2 ._line > div:nth-of-type(7)::before {
  top: 55.88%;
}
.p-secContent_slide2 ._line > div:nth-of-type(7)::after {
  left: 68.8%;
}
.p-secContent_slide2 ._line > div:nth-of-type(8) {
  width: 15.7vw;
  left: 77.5%;
  top: 66.79%;
  aspect-ratio: 757/472;
  display: none;
}
@media screen and (max-width: 768px) {
  .p-secContent_slide2 ._line > div:nth-of-type(8) {
    display: block;
  }
}
.p-secContent_slide2 ._line > div:nth-of-type(8)::before {
  top: 55.88%;
}
.p-secContent_slide2 ._line > div:nth-of-type(8)::after {
  left: 68.8%;
}
.p-secContent_slide2 ._txt > div {
  opacity: 0;
  position: absolute;
  white-space: nowrap;
}
.p-secContent_slide2 ._txt > div span {
  display: block;
}
.p-secContent_slide2 ._txt > div:nth-of-type(1) {
  top: 30.5%;
  left: 11.32%;
}
@media screen and (max-width: 768px) {
  .p-secContent_slide2 ._txt > div:nth-of-type(1) {
    top: 14.2%;
    left: 21.2%;
  }
}
.p-secContent_slide2 ._txt > div:nth-of-type(1) span:nth-of-type(1) {
  font-size: 1.94vw;
}
@media screen and (max-width: 768px) {
  .p-secContent_slide2 ._txt > div:nth-of-type(1) span:nth-of-type(1) {
    font-size: 4vw;
  }
}
.p-secContent_slide2 ._txt > div:nth-of-type(1) span:nth-of-type(2) {
  font-size: 2.5vw;
  line-height: 1.6;
}
@media screen and (max-width: 768px) {
  .p-secContent_slide2 ._txt > div:nth-of-type(1) span:nth-of-type(2) {
    font-size: 5.25vw;
  }
}
.p-secContent_slide2 ._txt > div:nth-of-type(2) {
  top: 69%;
  left: 14.55%;
  font-size: 2.5vw;
}
@media screen and (max-width: 768px) {
  .p-secContent_slide2 ._txt > div:nth-of-type(2) {
    font-size: 5.25vw;
    top: 50.4%;
    left: 37.4%;
  }
}
.p-secContent_slide2 ._txt > div:nth-of-type(3) {
  top: 51.43%;
  left: 28.5%;
  font-size: 5.83vw;
  writing-mode: vertical-rl;
  white-space: nowrap;
}
@media screen and (max-width: 768px) {
  .p-secContent_slide2 ._txt > div:nth-of-type(3) {
    font-size: 12vw;
    top: 32.4%;
    left: 31%;
  }
}
.p-secContent_slide2 ._txt > div:nth-of-type(4) {
  top: 26%;
  left: 49.65%;
  font-size: 1.94vw;
}
@media screen and (max-width: 768px) {
  .p-secContent_slide2 ._txt > div:nth-of-type(4) {
    font-size: 4.5vw;
    top: 63.3%;
    left: 28%;
  }
}
.p-secContent_slide2 ._txt > div:nth-of-type(5) {
  top: 50%;
  left: 44.31%;
  font-size: 3.19vw;
}
@media screen and (max-width: 768px) {
  .p-secContent_slide2 ._txt > div:nth-of-type(5) {
    font-size: 5.25vw;
    top: 75.6%;
    left: 20.3%;
  }
}
.p-secContent_slide2 ._txt > div:nth-of-type(5) span:nth-of-type(2) {
  padding-left: 1.8em;
}
.p-secContent_slide2.is-animation {
  opacity: 1;
  transition: none;
}
.p-secContent_slide2.is-animation ._line > div {
  opacity: 1;
}
.p-secContent_slide2.is-animation ._txt > div {
  animation: anim_bounce 1.3s forwards ease-in-out;
}
.p-secContent_slide2.is-animation ._txt > div:nth-of-type(1) {
  animation-delay: 0s;
}
.p-secContent_slide2.is-animation ._txt > div:nth-of-type(2) {
  animation-delay: 0.45s;
}
.p-secContent_slide2.is-animation ._txt > div:nth-of-type(3) {
  animation-delay: 0.6s;
}
.p-secContent_slide2.is-animation ._txt > div:nth-of-type(4) {
  animation-delay: 0.3s;
}
.p-secContent_slide2.is-animation ._txt > div:nth-of-type(5) {
  animation-delay: 0.15s;
}
.p-secContent_slide3 {
  z-index: 3;
  pointer-events: none;
}
.p-secContent_slide3 ._slide {
  pointer-events: all;
}
.p-secContent_slide3 ._slide > div {
  position: absolute;
  top: 0;
  left: 0;
  width: 50%;
  height: 100vh;
}
@media screen and (max-width: 768px) {
  .p-secContent_slide3 ._slide > div {
    width: 100%;
    height: 50vh;
  }
}
.p-secContent_slide3 ._slide > div:nth-of-type(1) {
  left: 0;
}
@media screen and (max-width: 768px) {
  .p-secContent_slide3 ._slide > div:nth-of-type(1) {
    top: 0;
    left: 0;
  }
}
.p-secContent_slide3 ._slide > div:nth-of-type(1) ._img {
  left: 0;
}
.p-secContent_slide3 ._slide > div:nth-of-type(2) {
  left: 50%;
}
@media screen and (max-width: 768px) {
  .p-secContent_slide3 ._slide > div:nth-of-type(2) {
    top: 50%;
    left: 0;
  }
}
.p-secContent_slide3 ._slide > div:nth-of-type(2) ._img {
  right: 0;
}
.p-secContent_slide3 ._slide > div ._img {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  transition: width 0.5s;
}
.p-secContent_slide3 ._slide > div ._img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}
.p-secContent_slide3 ._slide > div ._txt {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.p-secContent_slide3 ._slide > div ._txt ._head {
  white-space: nowrap;
  text-align: center;
  margin-top: 5.7vw;
  letter-spacing: 0;
}
@media screen and (max-width: 768px) {
  .p-secContent_slide3 ._slide > div ._txt ._head {
    margin-top: 14vw;
  }
}
.p-secContent_slide3 ._slide > div ._txt ._head p {
  font-size: 1.39vw;
}
@media screen and (max-width: 768px) {
  .p-secContent_slide3 ._slide > div ._txt ._head p {
    font-size: 4vw;
  }
}
.p-secContent_slide3 ._slide > div ._txt ._head h3 {
  font-size: 2.92vw;
  font-family: "Shippori Mincho", serif;
  font-weight: 500;
}
@media screen and (max-width: 768px) {
  .p-secContent_slide3 ._slide > div ._txt ._head h3 {
    font-size: 9vw;
  }
}
@media screen and (min-width: 769px) {
  .p-secContent_slide3 ._slide.-allowAnim:has(> div:nth-of-type(1) ._link a:hover) > div:nth-of-type(1) ._img {
    width: 120%;
  }
  .p-secContent_slide3 ._slide.-allowAnim:has(> div:nth-of-type(1) ._link a:hover) > div:nth-of-type(2) ._img {
    width: 80%;
  }
}
@media screen and (min-width: 769px) {
  .p-secContent_slide3 ._slide.-allowAnim:has(> div:nth-of-type(2) ._link a:hover) > div:nth-of-type(1) ._img {
    width: 80%;
  }
  .p-secContent_slide3 ._slide.-allowAnim:has(> div:nth-of-type(2) ._link a:hover) > div:nth-of-type(2) ._img {
    width: 120%;
  }
}
.p-secContent_slide3 ._cross {
  width: 10.42vw;
  height: 10.42vw;
  position: absolute;
  top: 64%;
  left: 50%;
  transform: translate(-50%, -50%);
}
@media screen and (max-width: 768px) {
  .p-secContent_slide3 ._cross {
    top: 50%;
    width: 25vw;
    height: 25vw;
  }
}
.p-secContent_slide3 ._cross::before {
  content: "";
  display: block;
  width: 141%;
  border-top: 1px solid #fff;
  position: absolute;
  top: 100%;
  left: 0%;
  transform: translate(-50%, -50%) rotate(-45deg);
  transition: top 0.5s, left 0.5s, opacity 0.5s;
  opacity: 0;
}
.p-secContent_slide3 ._cross::after {
  content: "";
  display: block;
  width: 141%;
  border-top: 1px solid #fff;
  position: absolute;
  top: 100%;
  left: 100%;
  transform: translate(-50%, -50%) rotate(45deg);
  transition: top 0.5s, left 0.5s, opacity 0.5s;
  opacity: 0;
}
.p-secContent_slide3 ._cross.-show::before {
  top: 50%;
  left: 50%;
  opacity: 1;
}
.p-secContent_slide3 ._cross.-show::after {
  top: 50%;
  left: 50%;
  opacity: 1;
}
.p-secContent_slide3 ._cross.-hide::before {
  top: 0%;
  left: 100%;
  opacity: 0;
}
.p-secContent_slide3 ._cross.-hide::after {
  top: 0%;
  left: 0%;
  opacity: 0;
}
.p-secContent_slide4 {
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.5s;
}
.p-secContent_slide4.-show {
  opacity: 1;
  pointer-events: all;
  transition: none;
}
.p-secContent_slide4 ._in {
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  width: 100%;
}
.p-secContent_slide4 ._slider {
  margin-top: 5vw;
  /* 画像のサイズ調整 */
}
.p-secContent_slide4 ._slider .swiper-wrapper {
  transition-timing-function: linear;
  display: flex;
  justify-content: flex-start;
  align-items: center;
}
.p-secContent_slide4 ._slider .swiper-wrapper .swiper-slide {
  padding: 0 2.78vw;
}
@media screen and (max-width: 768px) {
  .p-secContent_slide4 ._slider .swiper-wrapper .swiper-slide {
    padding: 0 5vw;
  }
}
.p-secContent_slide4 ._slider .swiper-wrapper .swiper-slide._img1 {
  width: 27.78vw;
}
@media screen and (max-width: 768px) {
  .p-secContent_slide4 ._slider .swiper-wrapper .swiper-slide._img1 {
    width: 45vw;
  }
}
.p-secContent_slide4 ._slider .swiper-wrapper .swiper-slide._img2 {
  width: 22.22vw;
}
@media screen and (max-width: 768px) {
  .p-secContent_slide4 ._slider .swiper-wrapper .swiper-slide._img2 {
    width: 35vw;
  }
}
.p-secContent_slide4 ._slider .swiper-wrapper .swiper-slide._img3 {
  width: 31.95vw;
}
@media screen and (max-width: 768px) {
  .p-secContent_slide4 ._slider .swiper-wrapper .swiper-slide._img3 {
    width: 52.5vw;
  }
}
.p-secContent_slide4 ._slider .swiper-wrapper .swiper-slide img {
  width: 100%;
  transition: transform 0.5s;
}
.p-secContent_slide4 ._slider .swiper-wrapper .swiper-slide span {
  display: inline-block;
  position: absolute;
  z-index: 1;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  transition: opacity 0.5s;
  opacity: 0;
}
.p-secContent_slide4 ._slider .swiper-wrapper .swiper-slide a {
  display: block;
  width: 100%;
  height: 100%;
  position: relative;
  overflow: hidden;
  color: #B5B5B5;
}
.p-secContent_slide4 ._slider .swiper-wrapper .swiper-slide a::after {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  pointer-events: none;
  background-color: #000;
  opacity: 0;
  transition: opacity 0.5s;
}
@media screen and (min-width: 769px) {
  .p-secContent_slide4 ._slider .swiper-wrapper .swiper-slide a:hover::after {
    opacity: 0.5;
  }
  .p-secContent_slide4 ._slider .swiper-wrapper .swiper-slide a:hover img {
    transform: scale(1.1);
  }
  .p-secContent_slide4 ._slider .swiper-wrapper .swiper-slide a:hover span {
    opacity: 1;
  }
}

/* -----------------------------------
secTopQuality
------------------------------------ */
.p-secTopQuality_list {
  width: 68.06vw;
  margin: 3.5vw auto 0;
  gap: 1.39vw;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
}
@media screen and (max-width: 768px) {
  .p-secTopQuality_list {
    width: 90vw;
    gap: 5vw;
    grid-template-columns: repeat(1, 1fr);
    margin-top: 19vw;
  }
}
.p-secTopQuality_list li a {
  display: block;
  position: relative;
  overflow: hidden;
}
.p-secTopQuality_list li a::after {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  pointer-events: none;
  background-color: #000;
  opacity: 0;
  transition: opacity 0.5s;
}
.p-secTopQuality_list li a h3 {
  position: absolute;
  top: 6%;
  right: 4%;
  color: #B5B5B5;
  font-size: 1.25vw;
  white-space: nowrap;
  z-index: 1;
  letter-spacing: 0;
  font-family: "Shippori Mincho", serif;
  font-weight: 500;
}
@media screen and (max-width: 768px) {
  .p-secTopQuality_list li a h3 {
    font-size: 4.5vw;
    top: 7%;
    right: 5%;
  }
}
.p-secTopQuality_list li a > div {
  position: absolute;
  bottom: 5%;
  right: 4%;
  z-index: 1;
  opacity: 0;
  transition: opacity 0.5s;
}
.p-secTopQuality_list li a img {
  transition: transform 0.5s;
}
@media screen and (min-width: 769px) {
  .p-secTopQuality_list li a:hover::after {
    opacity: 0.5;
  }
  .p-secTopQuality_list li a:hover img {
    transform: scale(1.1);
  }
  .p-secTopQuality_list li a:hover > div {
    opacity: 1;
  }
}

/* -----------------------------------
secTitle
------------------------------------ */
.p-secTitle {
  color: #B5B5B5;
  padding-top: 15.5vw;
}
@media screen and (max-width: 768px) {
  .p-secTitle {
    padding-top: 23vw;
  }
}
.p-secTitle_title {
  font-size: 5.83vw;
  font-family: "Cormorant Garamond", serif;
  font-weight: 500;
  padding-left: 7.36vw;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .p-secTitle_title {
    font-size: 12vw;
  }
}
.p-secTitle_title span {
  display: inline-block;
  position: relative;
}
.p-secTitle_title span::before {
  content: "";
  display: block;
  width: 42.64vw;
  border-top: 1px solid #B5B5B5;
  position: absolute;
  left: -4vw;
  bottom: 1vw;
}
@media screen and (max-width: 768px) {
  .p-secTitle_title span::before {
    left: -7vw;
    bottom: 2.1vw;
    width: 95.25vw;
  }
}
.p-secTitle_title span::after {
  content: "";
  display: block;
  height: 7.43vw;
  border-left: 1px solid #B5B5B5;
  position: absolute;
  left: -1.2vw;
  bottom: -1.4vw;
}
@media screen and (max-width: 768px) {
  .p-secTitle_title span::after {
    height: 15.75vw;
    left: -2vw;
    bottom: -4vw;
  }
}
.p-secTitle_cnt {
  padding: 0 9.86vw;
  margin-top: 9.5vw;
}
@media screen and (max-width: 768px) {
  .p-secTitle_cnt {
    padding: 0 5vw;
    margin-top: 21.2vw;
  }
}
.p-secTitle_cnt > ._txt {
  font-family: "Shippori Mincho", serif;
  font-weight: 500;
}
.p-secTitle_cnt > ._txt ._title span {
  font-size: 1.67vw;
}
@media screen and (max-width: 768px) {
  .p-secTitle_cnt > ._txt ._title span {
    font-size: 4.5vw;
  }
}
.p-secTitle_cnt > ._txt ._title h3 {
  font-size: 2.5vw;
  font-family: "Shippori Mincho", serif;
  font-weight: 500;
}
@media screen and (max-width: 768px) {
  .p-secTitle_cnt > ._txt ._title h3 {
    font-size: 8vw;
  }
}
@media screen and (max-width: 768px) {
  .p-secTitle_cnt > ._txt ._title h3.-center {
    font-size: 6vw;
    text-align: center;
  }
}
.p-secTitle_cnt > ._txt p {
  font-size: 1.11vw;
  margin-top: 3.6vw;
  line-height: 1.9;
}
@media screen and (max-width: 768px) {
  .p-secTitle_cnt > ._txt p {
    font-size: 3.5vw;
    margin-top: 11vw;
    line-height: 2;
  }
}
.p-secTitle_cnt > ._img {
  display: flex;
  justify-content: space-between;
  margin-top: 8vw;
}
@media screen and (max-width: 768px) {
  .p-secTitle_cnt > ._img {
    margin-top: 7.5vw;
    flex-wrap: wrap;
    row-gap: 5vw;
  }
}
.p-secTitle_cnt > ._img > div:nth-of-type(1) {
  width: 19.44vw;
}
@media screen and (max-width: 768px) {
  .p-secTitle_cnt > ._img > div:nth-of-type(1) {
    width: 42.5vw;
  }
}
.p-secTitle_cnt > ._img > div:nth-of-type(2) {
  width: 16.67vw;
}
@media screen and (max-width: 768px) {
  .p-secTitle_cnt > ._img > div:nth-of-type(2) {
    width: 42.5vw;
  }
}
.p-secTitle_cnt > ._img > div:nth-of-type(3) {
  width: 33.33vw;
}
@media screen and (max-width: 768px) {
  .p-secTitle_cnt > ._img > div:nth-of-type(3) {
    width: 70vw;
    margin-left: auto;
  }
}
.p-secTitle_quality {
  position: relative;
  margin-top: 10vw;
}
.p-secTitle_quality ._img {
  aspect-ratio: 1440/560;
  position: relative;
}
@media screen and (max-width: 768px) {
  .p-secTitle_quality ._img {
    width: 100%;
    aspect-ratio: 400/630;
  }
}
.p-secTitle_quality ._img::before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background-color: #000;
  opacity: 0;
}
@media screen and (max-width: 768px) {
  .p-secTitle_quality ._img::before {
    opacity: 0.25;
  }
}
.p-secTitle_quality ._img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}
.p-secTitle_quality ._title {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 25vw;
}
@media screen and (max-width: 768px) {
  .p-secTitle_quality ._title {
    width: 80vw;
  }
}
.p-secTitle_quality ._anchor {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.p-secTitle_quality ._anchor a {
  display: block;
  position: absolute;
  height: 4.29vw;
  padding-right: 5.5vw;
  color: #B5B5B5;
  text-decoration: none;
  font-size: 1.71vw;
  line-height: 1.35;
  text-align: right;
  letter-spacing: 0;
  transition: opacity 0.3s;
}
@media screen and (max-width: 768px) {
  .p-secTitle_quality ._anchor a {
    font-size: 4vw;
    padding-right: 0;
    padding-bottom: 19vw;
    text-align: center;
    height: auto;
    transform: translateX(50%);
  }
}
.p-secTitle_quality ._anchor a ._small {
  font-size: 1.29vw;
}
@media screen and (max-width: 768px) {
  .p-secTitle_quality ._anchor a ._small {
    font-size: 4vw;
  }
}
.p-secTitle_quality ._anchor a span {
  display: block;
  white-space: nowrap;
}
.p-secTitle_quality ._anchor a::after {
  content: "";
  display: block;
  width: 4.29vw;
  height: 2.86vw;
  position: absolute;
  top: 0;
  right: 0;
  background: url(../img/common/ico_arrow.svg) no-repeat;
  background-size: contain;
  transform: rotate(90deg);
}
@media screen and (max-width: 768px) {
  .p-secTitle_quality ._anchor a::after {
    width: 15vw;
    height: 10vw;
    top: auto;
    right: auto;
    left: 50%;
    bottom: 0;
    transform: translateY(-100%) rotate(90deg);
    transform-origin: center left;
  }
}
.p-secTitle_quality ._anchor a:nth-of-type(1) {
  top: 8%;
  right: 71.6%;
}
@media screen and (max-width: 768px) {
  .p-secTitle_quality ._anchor a:nth-of-type(1) {
    top: auto;
    right: 73%;
    bottom: 68.5%;
  }
}
.p-secTitle_quality ._anchor a:nth-of-type(2) {
  top: 8%;
  right: 14%;
}
@media screen and (max-width: 768px) {
  .p-secTitle_quality ._anchor a:nth-of-type(2) {
    top: auto;
    right: 27%;
    bottom: 68.5%;
  }
}
.p-secTitle_quality ._anchor a:nth-of-type(3) {
  bottom: 2%;
  right: 71.6%;
}
@media screen and (max-width: 768px) {
  .p-secTitle_quality ._anchor a:nth-of-type(3) {
    bottom: 7.4%;
    right: 82%;
  }
}
.p-secTitle_quality ._anchor a:nth-of-type(4) {
  bottom: 2%;
  right: 14%;
}
@media screen and (max-width: 768px) {
  .p-secTitle_quality ._anchor a:nth-of-type(4) {
    bottom: 7.4%;
    right: 18%;
  }
}
.p-secTitle_quality ._anchor a:nth-of-type(5) {
  bottom: 2%;
  right: 33%;
}
@media screen and (max-width: 768px) {
  .p-secTitle_quality ._anchor a:nth-of-type(5) {
    bottom: 7.4%;
    right: 50%;
  }
}
.p-secTitle_quality ._line {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
}
.p-secTitle_quality ._line > div:nth-of-type(1) {
  width: 85.35vw;
  border-top: 1px solid #B5B5B5;
  position: absolute;
  top: 0;
  right: 0;
}
@media screen and (max-width: 768px) {
  .p-secTitle_quality ._line > div:nth-of-type(1) {
    width: 80.5vw;
  }
}
.p-secTitle_quality ._line > div:nth-of-type(2) {
  width: 85.35vw;
  border-top: 1px solid #B5B5B5;
  position: absolute;
  bottom: 0;
  left: 0;
}
@media screen and (max-width: 768px) {
  .p-secTitle_quality ._line > div:nth-of-type(2) {
    width: 80.5vw;
  }
}
.p-secTitle_quality ._line > div:nth-of-type(3) {
  height: 49.93vw;
  border-left: 1px solid #B5B5B5;
  position: absolute;
  left: 30.5%;
  top: -16%;
  transform: translateX(-50%);
}
@media screen and (max-width: 768px) {
  .p-secTitle_quality ._line > div:nth-of-type(3) {
    height: 176.25vw;
    left: 2.5%;
    top: 51%;
    transform: translate(-50%, -50%);
  }
}
.p-secTitle_quality ._line > div:nth-of-type(4) {
  height: 59.79vw;
  border-left: 1px solid #B5B5B5;
  position: absolute;
  right: 30.5%;
  top: -16%;
  transform: translateX(-50%);
}
@media screen and (max-width: 768px) {
  .p-secTitle_quality ._line > div:nth-of-type(4) {
    height: 176.25vw;
    right: 2.5%;
    top: 54%;
    transform: translate(-50%, -50%);
  }
}
.p-secTitle_quality ._line > div:nth-of-type(5) {
  width: 38.75vw;
  border-top: 1px solid #B5B5B5;
  position: absolute;
  top: -21%;
  right: 30.6%;
  transform: rotate(45deg) translate(50%, 50%);
  transform-origin: center;
}
@media screen and (max-width: 768px) {
  .p-secTitle_quality ._line > div:nth-of-type(5) {
    top: -3.3%;
    right: 1%;
  }
}
.p-secTitle_quality ._line > div:nth-of-type(6) {
  width: 38.75vw;
  border-top: 1px solid #B5B5B5;
  position: absolute;
  bottom: -21%;
  left: 30.6%;
  transform: rotate(45deg) translate(-50%, -50%);
}
@media screen and (max-width: 768px) {
  .p-secTitle_quality ._line > div:nth-of-type(6) {
    bottom: -3.3%;
    left: 1%;
  }
}
.p-secTitle_about {
  margin-top: 3.5vw;
}
@media screen and (max-width: 768px) {
  .p-secTitle_about {
    margin-top: 8vw;
  }
}
.p-secTitle_about ._txt {
  padding: 0 9.86vw;
  padding-bottom: 5.5vw;
  position: relative;
}
@media screen and (max-width: 768px) {
  .p-secTitle_about ._txt {
    padding: 0 5vw;
    padding-bottom: 8vw;
  }
}
.p-secTitle_about ._txt ._bg {
  width: 100%;
  position: absolute;
  bottom: 0;
  left: 0;
  pointer-events: none;
}
.p-secTitle_about ._txt h3 {
  font-size: 6vw;
  font-family: "Cormorant Garamond", serif;
  font-weight: 500;
}
@media screen and (max-width: 768px) {
  .p-secTitle_about ._txt h3 {
    font-size: 10vw;
  }
}
.p-secTitle_about ._txt span {
  font-size: 2.57vw;
  display: block;
  margin-top: 1.4vw;
}
@media screen and (max-width: 768px) {
  .p-secTitle_about ._txt span {
    font-size: 3.5vw;
  }
}
.p-secTitle_about ._txt ._line {
  width: 2.78vw;
  border-top: 1px solid #B5B5B5;
  margin: 2vw 0 2.5vw;
}
@media screen and (max-width: 768px) {
  .p-secTitle_about ._txt ._line {
    width: 10vw;
    margin: 5vw 0 6vw;
  }
}
.p-secTitle_about ._txt p {
  font-size: 1.14vw;
}
@media screen and (max-width: 768px) {
  .p-secTitle_about ._txt p {
    font-size: 2.75vw;
  }
}
.p-secTitle_about ._txt_txt {
  font-size: 1.67vw;
  line-height: 2;
}
@media screen and (max-width: 768px) {
  .p-secTitle_about ._txt_txt {
    font-size: 4.5vw;
    line-height: 1.75;
  }
}
.p-secTitle_about ._img {
  margin-top: -5.2vw;
  padding-left: 10.29vw;
  padding-right: 6.93vw;
}

/* -----------------------------------
secPoint
------------------------------------ */
.p-secPoint {
  color: #B5B5B5;
  padding: 3.8vw 9.86vw;
  position: relative;
  z-index: 1;
}
@media screen and (max-width: 768px) {
  .p-secPoint {
    padding: 11.5vw 5vw;
  }
}
.p-secPoint.-line {
  border-top: 1px solid #424242;
  padding-top: 4.6vw;
}
@media screen and (max-width: 768px) {
  .p-secPoint.-line {
    padding-top: 7vw;
  }
}
.p-secPoint.-long {
  margin-top: 7.5vw;
}
.p-secPoint_bg {
  width: 100%;
  position: absolute;
  top: 38vw;
  left: 0;
  transform: translateY(-100%);
}
.p-secPoint_point {
  font-family: "Cormorant Garamond", serif;
  font-weight: 500;
  position: relative;
  padding-left: 2vw;
  letter-spacing: 0em;
}
@media screen and (max-width: 768px) {
  .p-secPoint_point {
    padding-left: 7vw;
  }
}
.p-secPoint_point span {
  line-height: 1;
  display: inline-block;
}
.p-secPoint_point span:nth-of-type(1) {
  font-size: 1.11vw;
  writing-mode: vertical-rl;
  position: absolute;
  top: 3.5vw;
  left: 0;
}
@media screen and (max-width: 768px) {
  .p-secPoint_point span:nth-of-type(1) {
    top: 12.5vw;
    font-size: 4vw;
  }
}
.p-secPoint_point span:nth-of-type(2) {
  font-size: 8.33vw;
}
@media screen and (max-width: 768px) {
  .p-secPoint_point span:nth-of-type(2) {
    font-size: 30vw;
  }
}
.p-secPoint_cnt {
  margin-top: 3vw;
}
@media screen and (max-width: 768px) {
  .p-secPoint_cnt {
    margin-top: 3.5vw;
  }
}
.p-secPoint_cnt > ._large {
  font-size: 5.56vw;
  margin-top: -1.3vw;
  margin-bottom: 1vw;
  font-family: "Shippori Mincho", serif;
  font-weight: 500;
}
@media screen and (max-width: 768px) {
  .p-secPoint_cnt > ._large {
    font-size: 10vw;
  }
}
.p-secPoint_cnt > ._large.-small {
  font-size: 4.17vw;
}
@media screen and (max-width: 768px) {
  .p-secPoint_cnt > ._large.-small {
    font-size: 8vw;
  }
}
.p-secPoint_cnt > ._title {
  font-size: 2.5vw;
  font-family: "Shippori Mincho", serif;
  font-weight: 500;
}
@media screen and (max-width: 768px) {
  .p-secPoint_cnt > ._title {
    font-size: 7vw;
  }
}
.p-secPoint_cnt > ._line {
  width: 2.78vw;
  border-top: 1px solid #B5B5B5;
  margin: 2vw 0;
}
@media screen and (max-width: 768px) {
  .p-secPoint_cnt > ._line {
    width: 10vw;
    margin: 7.5vw 0 9.5vw;
  }
}
.p-secPoint_cnt > ._txt {
  font-size: 1.11vw;
  margin-top: 2vw;
}
@media screen and (max-width: 768px) {
  .p-secPoint_cnt > ._txt {
    font-size: 3.5vw;
  }
}
.p-secPoint_cnt > ._img {
  margin-top: 2vw;
}
.p-secPoint_cnt > ._anno {
  font-size: 1vw;
  margin-top: 2vw;
}
@media screen and (max-width: 768px) {
  .p-secPoint_cnt > ._anno {
    margin-top: 5vw;
    font-size: 3vw;
  }
}
.p-secPoint_cnt > ._anno li:nth-of-type(n+2) {
  margin-top: 0.5vw;
}

/* -----------------------------------
pointContent1
------------------------------------ */
@keyframes anim_point_line1 {
  0% {
    clip-path: polygon(0% 0%, 100% 0%, 100% 0%, 0% 0%);
  }
  100% {
    clip-path: polygon(0% 0%, 0% 100%, 100% 100%, 100% 0%);
  }
}
@keyframes anim_point_line2 {
  0% {
    clip-path: polygon(0% 0%, 0% 100%, 0% 100%, 0% 0%);
  }
  100% {
    clip-path: polygon(0% 0%, 0% 100%, 100% 100%, 100% 0%);
  }
}
.p-pointContent1 {
  margin-top: 3vw;
  position: relative;
  padding-bottom: 12vw;
}
@media screen and (max-width: 768px) {
  .p-pointContent1 {
    padding-bottom: 150vw;
  }
}
.p-pointContent1 ._img {
  width: 47.22vw;
}
@media screen and (max-width: 768px) {
  .p-pointContent1 ._img {
    width: auto;
  }
}
.p-pointContent1 ._overray {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.p-pointContent1 ._overray ._target1, .p-pointContent1 ._overray ._target2 {
  width: 4.17vw;
  height: 4.17vw;
  border: 1px solid #fff;
  border-radius: 50%;
  position: absolute;
  top: 22.4vw;
  left: 28.08vw;
  transform: translate(-50%, -50%);
  opacity: 0;
  transition: opacity 0.3s;
}
@media screen and (max-width: 768px) {
  .p-pointContent1 ._overray ._target1, .p-pointContent1 ._overray ._target2 {
    width: 10vw;
    height: 10vw;
    top: 45.5vw;
    left: 53.5vw;
  }
}
.p-pointContent1 ._overray ._target1::before, .p-pointContent1 ._overray ._target2::before {
  content: "";
  display: block;
  border-top: 1px solid #fff;
  width: 6.11vw;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
@media screen and (max-width: 768px) {
  .p-pointContent1 ._overray ._target1::before, .p-pointContent1 ._overray ._target2::before {
    width: 15vw;
  }
}
.p-pointContent1 ._overray ._target1::after, .p-pointContent1 ._overray ._target2::after {
  content: "";
  display: block;
  border-left: 1px solid #fff;
  height: 6.11vw;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
@media screen and (max-width: 768px) {
  .p-pointContent1 ._overray ._target1::after, .p-pointContent1 ._overray ._target2::after {
    height: 15vw;
  }
}
.p-pointContent1 ._overray ._line1 {
  position: absolute;
  top: 34vw;
  left: 28.08vw;
  border-left: 1px solid #fff;
  height: 14vw;
  transform: translate(-50%, -50%);
  opacity: 0;
  transition: opacity 0s;
  transition-delay: 0.3s;
}
@media screen and (max-width: 768px) {
  .p-pointContent1 ._overray ._line1 {
    height: 23.13vw;
    top: 68.5vw;
    left: 53.5vw;
  }
}
.p-pointContent1 ._overray ._line2 {
  position: absolute;
  top: 20.32vw;
  left: 31.13vw;
  width: 21vw;
  border-top: 1px solid #fff;
  transform: rotate(-19deg);
  transform-origin: bottom left;
  opacity: 0;
  transition: opacity 0s;
  transition-delay: 0.3s;
}
@media screen and (max-width: 768px) {
  .p-pointContent1 ._overray ._line2 {
    display: none;
  }
}
.p-pointContent1 ._overray ._txt1 {
  font-size: 1.39vw;
  position: absolute;
  top: 4.6vw;
  left: 53.2vw;
  white-space: nowrap;
  letter-spacing: 0;
  opacity: 0;
  transition: opacity 0.3s;
  transition-delay: 0.8s;
}
@media screen and (max-width: 768px) {
  .p-pointContent1 ._overray ._txt1 {
    font-size: 4vw;
    left: auto;
    right: 0;
    top: 136vw;
    text-align: right;
  }
}
.p-pointContent1 ._overray ._txt2 {
  font-size: 1.39vw;
  position: absolute;
  top: 42.5vw;
  left: 29vw;
  white-space: nowrap;
  transform: translateX(-50%);
  letter-spacing: 0;
  opacity: 0;
  transition: opacity 0.3s;
  transition-delay: 0.8s;
}
@media screen and (max-width: 768px) {
  .p-pointContent1 ._overray ._txt2 {
    font-size: 4vw;
    top: 85vw;
    left: 0;
    transform: none;
  }
}
.p-pointContent1 ._float {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.p-pointContent1 ._float ._img1 {
  position: absolute;
  top: 36.4vw;
  left: 0;
  width: 12.01vw;
}
@media screen and (max-width: 768px) {
  .p-pointContent1 ._float ._img1 {
    width: 27.5vw;
    top: 110vw;
    left: 24vw;
  }
}
.p-pointContent1 ._float ._img2 {
  position: absolute;
  top: 33.5vw;
  left: 13.5vw;
  width: 12.36vw;
}
@media screen and (max-width: 768px) {
  .p-pointContent1 ._float ._img2 {
    width: 28.25vw;
    top: 103vw;
    left: 55vw;
  }
}
.p-pointContent1 ._float ._img3 {
  position: absolute;
  top: 20vw;
  left: 52vw;
  width: 27.43vw;
}
@media screen and (max-width: 768px) {
  .p-pointContent1 ._float ._img3 {
    width: 65.5vw;
    top: 176vw;
    left: 10vw;
  }
}
.p-pointContent1.-pattern2 ._target1 {
  top: 9.8vw;
  left: 39.4vw;
}
@media screen and (max-width: 768px) {
  .p-pointContent1.-pattern2 ._target1 {
    top: 21vw;
    left: 78vw;
  }
}
.p-pointContent1.-pattern2 ._target2 {
  top: 22.3vw;
  left: 24.7vw;
}
@media screen and (max-width: 768px) {
  .p-pointContent1.-pattern2 ._target2 {
    top: 42.8vw;
    left: 47.5vw;
  }
}
.p-pointContent1.-pattern2 ._line1 {
  transform-origin: top left;
  transform: rotate(18deg);
  top: 25vw;
  left: 23.9vw;
  height: 17vw;
}
@media screen and (max-width: 768px) {
  .p-pointContent1.-pattern2 ._line1 {
    height: 25.75vw;
    left: 47.5vw;
    top: 67vw;
    transform: translate(-50%, -50%);
  }
}
.p-pointContent1.-pattern2 ._line2 {
  transform: translateY(-50%);
  top: 9.8vw;
  left: 43.6vw;
  width: 7.15vw;
}
@media screen and (max-width: 768px) {
  .p-pointContent1.-pattern2 ._line2 {
    height: 76.75vw;
    left: 78vw;
    top: 70vw;
    transform: translate(-50%, -50%);
    border-top: none;
    border-left: 1px solid #fff;
    width: auto;
    display: block;
  }
}
.p-pointContent1.-pattern2 ._txt1 {
  width: 26vw;
  white-space: wrap;
  left: 53.2vw;
  top: 5.7vw;
}
@media screen and (max-width: 768px) {
  .p-pointContent1.-pattern2 ._txt1 {
    width: auto;
    left: auto;
    right: 0;
    top: 112vw;
  }
}
.p-pointContent1.-pattern2 ._txt2 {
  left: 18vw;
  top: 42.2vw;
}
@media screen and (max-width: 768px) {
  .p-pointContent1.-pattern2 ._txt2 {
    left: 0;
    top: 83.5vw;
  }
}
.p-pointContent1.-pattern2 ._float ._img1 {
  top: 18.5vw;
  left: 53.2vw;
  width: 26.67vw;
}
@media screen and (max-width: 768px) {
  .p-pointContent1.-pattern2 ._float ._img1 {
    top: 146vw;
    width: 100vw;
    left: -5vw;
  }
}
.p-pointContent1.-pattern3 ._target1 {
  top: 30.4vw;
  left: 17vw;
}
@media screen and (max-width: 768px) {
  .p-pointContent1.-pattern3 ._target1 {
    top: 57.5vw;
    left: 32.2vw;
  }
}
.p-pointContent1.-pattern3 ._line1 {
  top: 38.5vw;
  left: 17vw;
  height: 8vw;
}
@media screen and (max-width: 768px) {
  .p-pointContent1.-pattern3 ._line1 {
    height: 11.63vw;
    left: 32.2vw;
    top: 74.5vw;
  }
}
.p-pointContent1.-pattern3 ._line2 {
  transform: rotate(-30deg);
  top: 28.3vw;
  left: 20vw;
  width: 35.2vw;
}
.p-pointContent1.-pattern3 ._txt1 {
  left: 53.3vw;
  top: 6.8vw;
}
@media screen and (max-width: 768px) {
  .p-pointContent1.-pattern3 ._txt1 {
    left: auto;
    right: 0;
    top: 134vw;
  }
}
.p-pointContent1.-pattern3 ._txt2 {
  left: 16.7vw;
  top: 43.3vw;
}
@media screen and (max-width: 768px) {
  .p-pointContent1.-pattern3 ._txt2 {
    left: 0;
    top: 83vw;
  }
}
.p-pointContent1.-pattern3 ._float ._img1 {
  top: 20vw;
  left: 53.3vw;
  width: 19.24vw;
}
@media screen and (max-width: 768px) {
  .p-pointContent1.-pattern3 ._float ._img1 {
    width: 45.75vw;
    top: 150vw;
    left: 0;
  }
}
.p-pointContent1.-pattern3 ._float ._img2 {
  width: 10.21vw;
  top: 36vw;
  left: 20vw;
}
@media screen and (max-width: 768px) {
  .p-pointContent1.-pattern3 ._float ._img2 {
    width: 35.75vw;
    top: 106vw;
    left: auto;
    right: 4vw;
  }
}
.p-pointContent1.is-animation ._target1, .p-pointContent1.is-animation ._target2 {
  opacity: 1;
}
.p-pointContent1.is-animation ._line1 {
  animation: anim_point_line1 0.5s;
  animation-delay: 0.3s;
  opacity: 1;
}
.p-pointContent1.is-animation ._line2 {
  animation: anim_point_line2 0.5s;
  animation-delay: 0.3s;
  opacity: 1;
}
@media screen and (max-width: 768px) {
  .p-pointContent1.is-animation ._line2 {
    animation-name: anim_point_line1;
  }
}
.p-pointContent1.is-animation ._txt1, .p-pointContent1.is-animation ._txt2 {
  opacity: 1;
}

/* -----------------------------------
pointContent2
------------------------------------ */
.p-pointContent2 {
  display: flex;
  justify-content: space-between;
  margin-top: 3vw;
  font-size: 1.39vw;
  padding-right: 3vw;
}
@media screen and (max-width: 768px) {
  .p-pointContent2 {
    flex-flow: column;
    font-size: 4vw;
    padding-right: 0;
  }
}
.p-pointContent2_left {
  width: 47.22vw;
}
@media screen and (max-width: 768px) {
  .p-pointContent2_left {
    width: auto;
  }
}
.p-pointContent2_left ._block {
  display: flex;
  margin-top: 3vw;
  gap: 2vw;
}
@media screen and (max-width: 768px) {
  .p-pointContent2_left ._block {
    margin-top: 10vw;
    gap: 6vw;
  }
}
.p-pointContent2_left ._block > * {
  flex: 1;
}
.p-pointContent2_right {
  width: 23.61vw;
}
@media screen and (max-width: 768px) {
  .p-pointContent2_right {
    width: auto;
    margin-top: 10vw;
  }
}
@media screen and (max-width: 768px) {
  .p-pointContent2_right ._block:nth-of-type(1) {
    width: 70vw;
  }
}
.p-pointContent2_right ._block:nth-of-type(2) {
  margin-top: 5.2vw;
}
@media screen and (max-width: 768px) {
  .p-pointContent2_right ._block:nth-of-type(2) {
    margin-top: 10vw;
    display: flex;
    flex-direction: row-reverse;
    gap: 6vw;
  }
  .p-pointContent2_right ._block:nth-of-type(2) p {
    margin-top: 0;
  }
}
.p-pointContent2_right ._block > * {
  flex: 1;
}
.p-pointContent2_right ._block p {
  margin-top: 1.7vw;
}
@media screen and (max-width: 768px) {
  .p-pointContent2_right ._block p {
    margin-top: 3vw;
  }
}

/* -----------------------------------
secOtherItem
------------------------------------ */
.p-secOtherItem {
  padding: 0 6.53vw;
  margin-top: 4.5vw;
}
@media screen and (max-width: 768px) {
  .p-secOtherItem {
    padding: 0;
  }
}
.p-secOtherItem_wrapper {
  background: rgba(119, 119, 119, 0.4);
  padding: 4.8vw 3.26vw 5.5vw;
  position: relative;
}
@media screen and (max-width: 768px) {
  .p-secOtherItem_wrapper {
    padding: 9vw 5vw 15vw;
  }
}
.p-secOtherItem_txt1 {
  font-size: 1.94vw;
  text-align: center;
  font-family: "Shippori Mincho", serif;
  font-weight: 500;
}
@media screen and (max-width: 768px) {
  .p-secOtherItem_txt1 {
    font-size: 6vw;
  }
}
.p-secOtherItem_list {
  margin-top: 2vw;
  display: flex;
  gap: 2.5vw;
}
@media screen and (max-width: 768px) {
  .p-secOtherItem_list {
    display: block;
    margin-top: 7.5vw;
  }
}
.p-secOtherItem_list li {
  flex: 1;
}
@media screen and (max-width: 768px) {
  .p-secOtherItem_list li:nth-of-type(n+2) {
    margin-top: 9vw;
  }
}
.p-secOtherItem_list li ._txt {
  margin-top: 2vw;
}
@media screen and (max-width: 768px) {
  .p-secOtherItem_list li ._txt {
    margin-top: 2.5vw;
  }
}
.p-secOtherItem_list li ._txt h4 {
  font-size: 1.67vw;
  font-family: "Shippori Mincho", serif;
  font-weight: 500;
}
@media screen and (max-width: 768px) {
  .p-secOtherItem_list li ._txt h4 {
    font-size: 6vw;
  }
}
.p-secOtherItem_list li ._txt p {
  margin-top: 1vw;
  font-size: 0.97vw;
}
@media screen and (max-width: 768px) {
  .p-secOtherItem_list li ._txt p {
    font-size: 3.5vw;
    margin-top: 1.6vw;
  }
}
.p-secOtherItem_list li ._txt span {
  display: block;
  font-size: 0.79vw;
  letter-spacing: 0;
}
@media screen and (max-width: 768px) {
  .p-secOtherItem_list li ._txt span {
    font-size: 2.75vw;
    margin-top: 0.2em;
  }
}
.p-secOtherItem_txt2 {
  font-size: 1.94vw;
  text-align: center;
  position: absolute;
  left: 50%;
  bottom: 0;
  transform: translateX(-50%);
  font-size: 11.67vw;
  color: #000;
  font-family: "Cormorant Garamond", serif;
  font-weight: 500;
  white-space: nowrap;
  opacity: 0.1;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .p-secOtherItem_txt2 {
    display: none;
  }
}

/* -----------------------------------
floorPlan
------------------------------------ */
.p-floorPlan {
  margin-top: 4.6vw;
}
@media screen and (max-width: 768px) {
  .p-floorPlan {
    margin-top: 18.5vw;
  }
}
.p-floorPlan_col {
  display: flex;
  padding-left: 9.86vw;
  justify-content: space-between;
}
@media screen and (max-width: 768px) {
  .p-floorPlan_col {
    flex-flow: column;
    padding: 0;
    align-items: center;
    gap: 13.5vw;
  }
}
.p-floorPlan_col ._left {
  width: 18.54vw;
}
@media screen and (max-width: 768px) {
  .p-floorPlan_col ._left {
    width: 50vw;
  }
}
.p-floorPlan_col ._right {
  width: 61.11vw;
}
@media screen and (max-width: 768px) {
  .p-floorPlan_col ._right {
    width: 100vw;
  }
}
.p-floorPlan_col ._right p {
  font-size: 1.11vw;
  margin-top: 2.5vw;
  letter-spacing: 0;
  line-height: 2;
}
@media screen and (max-width: 768px) {
  .p-floorPlan_col ._right p {
    font-size: 3.5vw;
    padding: 0 1.2em;
  }
}
.p-floorPlan_img {
  padding: 0 4vw;
  margin-top: -7vw;
}
.p-floorPlan_img.-lightcore {
  margin-top: -1vw;
}

/* -----------------------------------
floorTab
------------------------------------ */
.p-floorTab {
  padding: 0 10vw;
  margin-top: 4.5vw;
}
@media screen and (max-width: 768px) {
  .p-floorTab {
    padding: 0 5vw;
    margin-top: 20vw;
  }
}
.p-floorTab_txt {
  font-size: 1.67vw;
  line-height: 2;
  font-family: "Shippori Mincho", serif;
  font-weight: 500;
}
@media screen and (max-width: 768px) {
  .p-floorTab_txt {
    font-size: 4.5vw;
    line-height: 1.75;
  }
}
.p-floorTab_line {
  width: 2.78vw;
  border-top: 1px solid #B5B5B5;
  margin: 2.4vw 0 3vw;
}
@media screen and (max-width: 768px) {
  .p-floorTab_line {
    width: 10vw;
    margin: 6.5vw 0 11.5vw;
  }
}
.p-floorTab_txt2 {
  line-height: 2;
}
.p-floorTab_txt2 p {
  font-size: 1.14vw;
}
@media screen and (max-width: 768px) {
  .p-floorTab_txt2 p {
    font-size: 3.5vw;
  }
}
.p-floorTab_txt2 span {
  display: block;
  font-size: 1vw;
  margin-top: 1vw;
}
@media screen and (max-width: 768px) {
  .p-floorTab_txt2 span {
    font-size: 2.75vw;
    margin-top: 4vw;
  }
}
.p-floorTab_list {
  position: relative;
  margin-top: 14vw;
}
.p-floorTab_list::before {
  content: "";
  display: block;
  width: 1.61vw;
  height: 5.86vw;
  position: absolute;
  top: 1vw;
  left: 3vw;
  background: url(../img/common/ico_direction.svg) no-repeat;
  background-size: contain;
}
@media screen and (max-width: 768px) {
  .p-floorTab_list::before {
    width: 2.85vw;
    height: 10.48vw;
    top: 4vw;
  }
}
.p-floorTab_list ._tab {
  display: flex;
  gap: 1.39vw;
  justify-content: flex-end;
}
@media screen and (max-width: 768px) {
  .p-floorTab_list ._tab {
    gap: 1.75vw;
  }
}
.p-floorTab_list ._tab li {
  font-size: 2.5vw;
  width: 16.67vw;
  text-align: center;
  border-bottom: 1px solid #B5B5B5;
  cursor: pointer;
  padding: 0.7em 0;
  line-height: 1;
  transition: border-color 0.3s, color 0.3s;
}
@media screen and (max-width: 768px) {
  .p-floorTab_list ._tab li {
    font-size: 7.5vw;
    width: 23.5vw;
  }
}
@media screen and (min-width: 769px) {
  .p-floorTab_list ._tab li:hover {
    border-color: #fff;
    color: #fff;
  }
}
.p-floorTab_list ._tab li.selected {
  border-color: #fff;
  color: #fff;
}
.p-floorTab_list ._tab li::after {
  content: "F";
  font-size: 1.67vw;
}
@media screen and (max-width: 768px) {
  .p-floorTab_list ._tab li::after {
    font-size: 4.5vw;
  }
}
.p-floorTab_list ._cnt {
  margin-top: 3vw;
  position: relative;
}
@media screen and (max-width: 768px) {
  .p-floorTab_list ._cnt {
    margin-top: 7.8vw;
  }
}
.p-floorTab_list ._cnt li {
  opacity: 0;
  transition: opacity 0.3s;
  pointer-events: none;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
}
.p-floorTab_list ._cnt li.selected {
  opacity: 1;
  position: static;
}
.p-floorTab_list ._cnt li ._img {
  display: flex;
  justify-content: space-between;
  width: 100%;
}
@media screen and (max-width: 768px) {
  .p-floorTab_list ._cnt li ._img {
    display: block;
  }
}
.p-floorTab_list ._cnt li ._img > div:nth-of-type(1) {
  width: 50.14vw;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .p-floorTab_list ._cnt li ._img > div:nth-of-type(1) {
    width: 100%;
  }
}
.p-floorTab_list ._cnt li ._img > div:nth-of-type(1) img {
  max-height: 30vw;
}
@media screen and (max-width: 768px) {
  .p-floorTab_list ._cnt li ._img > div:nth-of-type(1) img {
    max-height: none;
  }
}
.p-floorTab_list ._cnt li ._img > div:nth-of-type(2) {
  width: 24.71vw;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .p-floorTab_list ._cnt li ._img > div:nth-of-type(2) {
    width: 100%;
    margin-top: 11.75vw;
  }
}
.p-floorTab_list ._cnt li p {
  font-size: 0.8vw;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: 1.2vw;
  text-align: left;
}
@media screen and (max-width: 768px) {
  .p-floorTab_list ._cnt li p {
    font-size: 3.5vw;
    margin-top: 3.5vw;
    line-height: 2;
  }
}
.p-floorTab_list ._cnt.-lightcore li ._img {
  justify-content: flex-end;
  gap: 7.43vw;
}
.p-floorTab_list ._cnt.-lightcore li ._img > div:nth-of-type(1) {
  width: 23.71vw;
}
@media screen and (max-width: 768px) {
  .p-floorTab_list ._cnt.-lightcore li ._img > div:nth-of-type(1) {
    width: 100%;
  }
}
.p-floorTab_list ._cnt.-lightcore li ._img > div:nth-of-type(1) img {
  max-height: 33.2vw;
}
@media screen and (max-width: 768px) {
  .p-floorTab_list ._cnt.-lightcore li ._img > div:nth-of-type(1) img {
    max-height: 120vw;
  }
}
.p-floorTab_list ._cnt.-lightcore li ._img > div:nth-of-type(2) {
  width: 38.57vw;
}
@media screen and (max-width: 768px) {
  .p-floorTab_list ._cnt.-lightcore li ._img > div:nth-of-type(2) {
    width: 100%;
  }
}

/* -----------------------------------
pointContent3
------------------------------------ */
.p-pointContent3 {
  margin-top: 6vw;
  letter-spacing: 0;
}
.p-pointContent3 ._line {
  width: 2.78vw;
  border-top: 1px solid #B5B5B5;
  margin: 2.5vw 0;
}
@media screen and (max-width: 768px) {
  .p-pointContent3 ._line {
    width: 10vw;
    margin: 5vw 0 7vw;
  }
}
.p-pointContent3_col > div {
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 768px) {
  .p-pointContent3_col > div {
    display: block;
  }
}
.p-pointContent3_col > div:nth-of-type(n+2) {
  margin-top: 5.56vw;
}
@media screen and (max-width: 768px) {
  .p-pointContent3_col > div:nth-of-type(n+2) {
    margin-top: 10vw;
  }
}
.p-pointContent3_col > div ._left {
  width: 38.19vw;
}
@media screen and (max-width: 768px) {
  .p-pointContent3_col > div ._left {
    width: auto;
  }
}
.p-pointContent3_col > div ._left h4 {
  font-size: 1.71vw;
  white-space: nowrap;
  font-family: "Shippori Mincho", serif;
  font-weight: 500;
}
@media screen and (max-width: 768px) {
  .p-pointContent3_col > div ._left h4 {
    font-size: 4.5vw;
  }
}
.p-pointContent3_col > div ._left p {
  font-size: 1.11vw;
}
@media screen and (max-width: 768px) {
  .p-pointContent3_col > div ._left p {
    font-size: 3vw;
  }
}
.p-pointContent3_col > div ._left ul {
  margin-top: 2vw;
}
.p-pointContent3_col > div ._left ul li {
  font-size: 0.76vw;
}
@media screen and (max-width: 768px) {
  .p-pointContent3_col > div ._left ul li {
    font-size: 2.5vw;
  }
}
.p-pointContent3_col > div ._right {
  width: 33.33vw;
}
@media screen and (max-width: 768px) {
  .p-pointContent3_col > div ._right {
    width: auto;
    margin-top: 5vw;
  }
}
.p-pointContent3_col > div ._right ._col_img {
  display: flex;
  gap: 2.3vw;
}
@media screen and (max-width: 768px) {
  .p-pointContent3_col > div ._right ._col_img {
    gap: 7vw;
  }
}
.p-pointContent3_col > div ._right ._col_img p {
  font-size: 1.14vw;
  margin-top: 1em;
}
@media screen and (max-width: 768px) {
  .p-pointContent3_col > div ._right ._col_img p {
    font-size: 3vw;
  }
}
.p-pointContent3_col > div ._right ._txt {
  margin-top: 0.5vw;
}
.p-pointContent3_col > div ._right ._txt h4 {
  font-family: "Shippori Mincho", serif;
  font-weight: 500;
  font-size: 1.71vw;
}
@media screen and (max-width: 768px) {
  .p-pointContent3_col > div ._right ._txt h4 {
    font-size: 4.5vw;
  }
}
.p-pointContent3_col > div ._right ._txt p {
  font-size: 0.79vw;
}
@media screen and (max-width: 768px) {
  .p-pointContent3_col > div ._right ._txt p {
    font-size: 3vw;
  }
}
.p-pointContent3_txt {
  margin-top: 8vw;
}
.p-pointContent3_txt h2 {
  font-size: 2.5vw;
}
.p-pointContent3_txt p {
  font-size: 1.11vw;
}

/* -----------------------------------
pointContent4
------------------------------------ */
.p-pointContent4 {
  margin-top: 6vw;
  letter-spacing: 0;
}
.p-pointContent4_col {
  display: flex;
  justify-content: space-between;
  gap: 3.61vw;
  align-items: flex-start;
}
@media screen and (max-width: 768px) {
  .p-pointContent4_col {
    display: block;
  }
}
.p-pointContent4_col ._left {
  width: 37.5vw;
  position: relative;
}
@media screen and (max-width: 768px) {
  .p-pointContent4_col ._left {
    width: auto;
  }
}
.p-pointContent4_col ._left::before, .p-pointContent4_col ._left::after {
  content: "";
  display: block;
  border-top: 1px solid #B5B5B5;
  width: 11vw;
  transform: translate(-50%, -50%) rotate(-44.5deg);
  position: absolute;
}
@media screen and (max-width: 768px) {
  .p-pointContent4_col ._left::before, .p-pointContent4_col ._left::after {
    width: 18vw;
  }
}
.p-pointContent4_col ._left::before {
  top: 2.8%;
  left: 3.2%;
}
.p-pointContent4_col ._left::after {
  bottom: 2.8%;
  right: 3.2%;
  transform: translate(50%, -50%) rotate(-44.5deg);
}
.p-pointContent4_col ._right {
  flex: 1;
}
@media screen and (max-width: 768px) {
  .p-pointContent4_col ._right {
    margin-top: 10vw;
  }
}
.p-pointContent4_col ._right > ul > li:nth-of-type(n+2)::before {
  content: "";
  display: block;
  width: 2.78vw;
  border-top: 1px solid #B5B5B5;
  margin: 2.5vw 0;
  margin-left: 10.21vw;
}
@media screen and (max-width: 768px) {
  .p-pointContent4_col ._right > ul > li:nth-of-type(n+2)::before {
    width: 10vw;
    margin: 7.5vw 0;
    margin-left: 29vw;
  }
}
.p-pointContent4_col ._right > ul > li > div {
  display: flex;
  gap: 1.88vw;
}
@media screen and (max-width: 768px) {
  .p-pointContent4_col ._right > ul > li > div {
    gap: 4vw;
  }
}
.p-pointContent4_col ._right > ul > li > div ._img {
  width: 8.33vw;
}
@media screen and (max-width: 768px) {
  .p-pointContent4_col ._right > ul > li > div ._img {
    width: 25vw;
  }
}
.p-pointContent4_col ._right > ul > li > div ._txt {
  flex: 1;
}
.p-pointContent4_col ._right > ul > li > div ._txt dl dt {
  font-size: 1.39vw;
}
@media screen and (max-width: 768px) {
  .p-pointContent4_col ._right > ul > li > div ._txt dl dt {
    font-size: 4vw;
  }
}
.p-pointContent4_col ._right > ul > li > div ._txt dl dd {
  margin-top: 0.7vw;
}
.p-pointContent4_col ._right > ul > li > div ._txt dl dd p {
  font-size: 1.11vw;
}
@media screen and (max-width: 768px) {
  .p-pointContent4_col ._right > ul > li > div ._txt dl dd p {
    font-size: 3.2vw;
  }
}
.p-pointContent4_col ._right > ul > li > div ._txt dl dd ul {
  margin-top: 0.8vw;
}
.p-pointContent4_col ._right > ul > li > div ._txt dl dd ul li {
  font-size: 0.76vw;
}
@media screen and (max-width: 768px) {
  .p-pointContent4_col ._right > ul > li > div ._txt dl dd ul li {
    font-size: 2.5vw;
  }
}

/* -----------------------------------
pointContent5
------------------------------------ */
.p-pointContent5 {
  margin-top: -3.5vw;
  letter-spacing: 0;
}
.p-pointContent5 ._line {
  width: 2.78vw;
  border-top: 1px solid #B5B5B5;
  margin: 2.5vw 0;
}
@media screen and (max-width: 768px) {
  .p-pointContent5 ._line {
    width: 10vw;
    margin: 7.5vw 0;
  }
}
.p-pointContent5_img1 {
  margin-right: -9.86vw;
}
@media screen and (max-width: 768px) {
  .p-pointContent5_img1 {
    margin-right: -5vw;
  }
}
.p-pointContent5_img1 p {
  font-size: 1vw;
  margin-top: 1vw;
}
@media screen and (max-width: 768px) {
  .p-pointContent5_img1 p {
    font-size: 3vw;
  }
}
.p-pointContent5_list {
  margin-top: 7.5vw;
  position: relative;
}
.p-pointContent5_list h4 {
  font-size: 2.5vw;
  font-family: "Shippori Mincho", serif;
  font-weight: 500;
}
@media screen and (max-width: 768px) {
  .p-pointContent5_list h4 {
    font-size: 6vw;
  }
}
.p-pointContent5_list ._slider {
  margin: 4.3vw -9.86vw 0;
}
.p-pointContent5_list ._slider > div > ul li ._txt {
  margin-top: 0.7vw;
}
@media screen and (max-width: 768px) {
  .p-pointContent5_list ._slider > div > ul li ._txt {
    margin-top: 2vw;
  }
}
.p-pointContent5_list ._slider > div > ul li ._txt p {
  font-size: 1.11vw;
}
@media screen and (max-width: 768px) {
  .p-pointContent5_list ._slider > div > ul li ._txt p {
    font-size: 3vw;
  }
}
.p-pointContent5_list ._slider > div > ul li ._txt span {
  display: block;
  font-size: 0.83vw;
  margin-top: 0.1vw;
}
@media screen and (max-width: 768px) {
  .p-pointContent5_list ._slider > div > ul li ._txt span {
    font-size: 2.2vw;
  }
}
.p-pointContent5_list ._slider .swiper-button-prev, .p-pointContent5_list ._slider .swiper-button-next {
  width: 4.13vw;
  height: 2.78vw;
  background: url(../img/common/ico_arrow.svg) no-repeat;
  background-size: contain;
  top: 1vw;
  margin-top: 0;
}
.p-pointContent5_list ._slider .swiper-button-prev svg, .p-pointContent5_list ._slider .swiper-button-next svg {
  display: none;
}
@media screen and (max-width: 768px) {
  .p-pointContent5_list ._slider .swiper-button-prev, .p-pointContent5_list ._slider .swiper-button-next {
    width: 12.39vw;
    height: 8.4vw;
    top: 3vw;
  }
}
.p-pointContent5_list ._slider .swiper-button-prev {
  left: auto;
  right: 7%;
  transform: scaleX(-1);
}
@media screen and (max-width: 768px) {
  .p-pointContent5_list ._slider .swiper-button-prev {
    right: 16%;
  }
}
.p-pointContent5_list ._slider .swiper-button-next {
  right: 0;
}
.p-pointContent5_txt1 {
  margin-top: 7.6vw;
}
.p-pointContent5_txt1 h4 {
  font-size: 1.71vw;
  font-family: "Shippori Mincho", serif;
  font-weight: 500;
}
@media screen and (max-width: 768px) {
  .p-pointContent5_txt1 h4 {
    font-size: 4vw;
  }
}
.p-pointContent5_txt1 p {
  font-size: 1.14vw;
}
@media screen and (max-width: 768px) {
  .p-pointContent5_txt1 p {
    font-size: 3vw;
  }
}
.p-pointContent5_txt2 {
  margin-top: 5.2vw;
  padding-bottom: 4.5vw;
}
.p-pointContent5_txt2 ._img {
  margin: 0 -9.86vw;
}
.p-pointContent5_txt2 ._cnt {
  display: flex;
  gap: 12vw;
  width: 63.79vw;
  margin: -17vw auto 0;
}
@media screen and (max-width: 768px) {
  .p-pointContent5_txt2 ._cnt {
    width: auto;
    gap: 0vw;
  }
}
.p-pointContent5_txt2 ._cnt ._left {
  padding-top: 3.3vw;
}
@media screen and (max-width: 768px) {
  .p-pointContent5_txt2 ._cnt ._left {
    flex: 1;
    padding-left: 4vw;
  }
}
.p-pointContent5_txt2 ._cnt ._left span {
  font-size: 1.71vw;
}
@media screen and (max-width: 768px) {
  .p-pointContent5_txt2 ._cnt ._left span {
    font-size: 4vw;
  }
}
.p-pointContent5_txt2 ._cnt ._left h4 {
  font-size: 2.57vw;
  margin-top: 1.1vw;
  font-family: "Shippori Mincho", serif;
  font-weight: 500;
}
@media screen and (max-width: 768px) {
  .p-pointContent5_txt2 ._cnt ._left h4 {
    font-size: 7vw;
  }
}
.p-pointContent5_txt2 ._cnt ._left p {
  font-size: 1.14vw;
}
@media screen and (max-width: 768px) {
  .p-pointContent5_txt2 ._cnt ._left p {
    font-size: 3.5vw;
  }
}
.p-pointContent5_txt2 ._cnt ._right {
  width: 19.21vw;
}
@media screen and (max-width: 768px) {
  .p-pointContent5_txt2 ._cnt ._right {
    width: 42vw;
  }
}

/* -----------------------------------
pointContent6
------------------------------------ */
.p-pointContent6 {
  margin-top: 5.2vw;
  letter-spacing: 0;
  padding-bottom: 2.3vw;
}
.p-pointContent6.-nopad {
  padding: 0;
}
.p-pointContent6_col {
  display: flex;
  justify-content: space-between;
}
.p-pointContent6_col ._left {
  width: 48.57vw;
}
@media screen and (max-width: 768px) {
  .p-pointContent6_col ._left {
    width: 53.57vw;
  }
}
.p-pointContent6_col ._right {
  width: 24.29vw;
}
@media screen and (max-width: 768px) {
  .p-pointContent6_col ._right {
    width: 29.29vw;
  }
}
.p-pointContent6_col.-reverse ._left {
  width: 24.29vw;
}
@media screen and (max-width: 768px) {
  .p-pointContent6_col.-reverse ._left {
    width: 29.29vw;
  }
}
.p-pointContent6_col.-reverse ._right {
  width: 48.57vw;
}
@media screen and (max-width: 768px) {
  .p-pointContent6_col.-reverse ._right {
    width: 53.57vw;
  }
}

/* -----------------------------------
secGallery
------------------------------------ */
.p-secGallery {
  padding: 0 2vw;
  margin-top: 5vw;
}
@media screen and (max-width: 768px) {
  .p-secGallery {
    margin-top: 10vw;
  }
}
.p-secGallery_tab {
  display: flex;
  gap: 1.39vw;
  justify-content: flex-end;
}
@media screen and (max-width: 768px) {
  .p-secGallery_tab {
    gap: 1.75vw;
  }
}
.p-secGallery_tab li {
  font-size: 1.29vw;
  width: 16.67vw;
  text-align: center;
  border-bottom: 1px solid #B5B5B5;
  cursor: pointer;
  padding: 1.4em 0;
  line-height: 1;
  transition: border-color 0.3s, color 0.3s;
  display: flex;
  align-items: center;
  justify-content: center;
}
@media screen and (max-width: 768px) {
  .p-secGallery_tab li {
    font-size: 3vw;
    width: auto;
    flex: 1;
    line-height: 1.25;
  }
}
@media screen and (min-width: 769px) {
  .p-secGallery_tab li:hover {
    border-color: #fff;
    color: #fff;
  }
}
.p-secGallery_tab li.selected {
  border-color: #fff;
  color: #fff;
}
.p-secGallery_list {
  display: grid;
  gap: 1vw;
  grid-template-columns: repeat(4, 1fr);
  grid-auto-flow: dense;
  transition: opacity 0.5s;
  margin-top: 2.5vw;
}
@media screen and (max-width: 768px) {
  .p-secGallery_list {
    grid-template-columns: repeat(2, 1fr);
    gap: 2vw;
    margin-top: 5vw;
  }
}
.p-secGallery_list.-hide {
  opacity: 0;
}
.p-secGallery_list li {
  height: 23.25vw;
  display: none;
}
@media screen and (max-width: 768px) {
  .p-secGallery_list li {
    height: 47vw;
  }
}
.p-secGallery_list li._col2 {
  grid-area: auto/span 2;
}
.p-secGallery_list li._row2 {
  height: 47.5vw;
  grid-area: span 2;
}
@media screen and (max-width: 768px) {
  .p-secGallery_list li._row2 {
    height: 96vw;
  }
}
.p-secGallery_list li a {
  display: block;
  width: 100%;
  height: 100%;
  position: relative;
}
.p-secGallery_list li a::before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background-color: #000;
  opacity: 0;
  transition: opacity 0.3s;
}
.p-secGallery_list li a::after {
  content: "";
  display: block;
  width: 3.48vw;
  height: 3.82vw;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background-color: #000;
  opacity: 0;
  background: url(../img/common/ico_search.svg) no-repeat;
  background-size: contain;
  transition: opacity 0.3s;
}
@media screen and (max-width: 768px) {
  .p-secGallery_list li a:hover::before {
    opacity: 0.5;
  }
  .p-secGallery_list li a:hover::after {
    opacity: 1;
  }
}
.p-secGallery_list li a img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.p-secGallery_list li.selected {
  display: block;
}

/* -----------------------------------
popup
------------------------------------ */
.p-popup {
  display: none;
}
.p-popup_cnt {
  width: 100%;
  height: 100%;
  text-align: center;
}
.p-popup_cnt img {
  max-height: 100%;
  max-width: 100%;
}

.p-popupControl {
  width: 100%;
  height: 100%;
  pointer-events: none;
  position: fixed;
  top: 0;
  left: 0;
  color: white;
}
.p-popupControl_next, .p-popupControl_prev, .p-popupControl_close {
  opacity: 1;
  transition: opacity 0.3s;
  pointer-events: all;
}
@media screen and (min-width: 769px) {
  .p-popupControl_next:hover, .p-popupControl_prev:hover, .p-popupControl_close:hover {
    opacity: 0.7;
  }
}
.p-popupControl_next, .p-popupControl_prev {
  width: 4.21vw;
  position: absolute;
  top: 93%;
  left: 95%;
  transform: translate(-50%, -50%);
}
@media screen and (max-width: 768px) {
  .p-popupControl_next, .p-popupControl_prev {
    left: 90%;
    width: 9vw;
  }
}
.p-popupControl_prev {
  left: 87%;
  transform: translate(-50%, -50%) scaleX(-1);
}
@media screen and (max-width: 768px) {
  .p-popupControl_prev {
    left: 70%;
  }
}
.p-popupControl_close {
  width: 4vw;
  aspect-ratio: 1/1;
  position: absolute;
  top: 3vw;
  right: 3vw;
}
@media screen and (max-width: 768px) {
  .p-popupControl_close {
    width: 12vw;
  }
}
.p-popupControl_close::before {
  content: "";
  display: block;
  width: 141%;
  border-top: 1px solid #fff;
  transform: translate(-50%, -50%) rotate(-45deg);
  position: absolute;
  top: 50%;
  left: 50%;
}
.p-popupControl_close::after {
  content: "";
  display: block;
  width: 141%;
  border-top: 1px solid #fff;
  transform: translate(-50%, -50%) rotate(45deg);
  position: absolute;
  top: 50%;
  left: 50%;
}

#cboxPrevious, #cboxNext, #cboxClose {
  display: none !important;
}

#cboxContent, #cboxLoadedContent {
  margin-top: 0;
  background: none;
}

/* -----------------------------------
floatLink
------------------------------------ */
.p-floatLink {
  position: fixed;
  bottom: 3.5vw;
  right: 3.5vw;
  z-index: 1;
  transition: opacity 0.5s;
}
@media screen and (max-width: 768px) {
  .p-floatLink {
    display: none;
  }
}
.p-floatLink.-hide {
  opacity: 0;
  pointer-events: none;
}
.p-floatLink a {
  display: flex;
  gap: 0.8vw;
  align-items: center;
  color: #B5B5B5;
  text-decoration: none;
  position: relative;
  padding: 1.2vw 1.71vw;
  padding-right: 3.5vw;
  border: 1px solid rgba(181, 181, 181, 0.5);
  background: url(../img/common/bg_noise_2.webp);
  animation: anim_noise 0.02s steps(5, jump-none) infinite;
  transition: opacity 0.3s;
}
.p-floatLink a::after {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  right: 0;
  width: 4.29vw;
  height: 2.86vw;
  background: url(../img/common/ico_arrow.svg) no-repeat;
  background-size: contain;
  transform: rotate(90deg) translate(33%, 100%);
  transform-origin: bottom right;
}
@media screen and (min-width: 769px) {
  .p-floatLink a:hover {
    opacity: 0.8;
  }
}
.p-floatLink ._img {
  width: 5.14vw;
}
.p-floatLink p {
  white-space: nowrap;
  font-size: 1vw;
  line-height: 1.5;
}

/* -----------------------------------
sec
------------------------------------ */
/* -----------------------------------
sec
------------------------------------ */
/* -----------------------------------
sec
------------------------------------ */
/* -----------------------------------
sec
------------------------------------ */
/* -----------------------------------
sec
------------------------------------ */
/* -----------------------------------
sec
------------------------------------ */
/* -----------------------------------
multiline
------------------------------------ */
.p-multiline {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  pointer-events: none;
  z-index: -1;
}
.p-multiline svg {
  min-width: 100%;
  min-height: 100%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.p-multiline svg polyline {
  stroke-dasharray: 3500;
  stroke-dashoffset: 3500;
  transition: stroke-dashoffset 4s;
}
.p-multiline.is-animation svg polyline {
  stroke-dashoffset: 0;
}

/* ---------------------------------------
animation common
--------------------------------------- */
.js-animation.-fadein {
  transition: opacity 0.4s ease-out;
  opacity: 0;
}
.js-animation.-fadein.is-animation {
  opacity: 1;
}
.js-animation.-slidein {
  transition: 0.4s ease-out;
  opacity: 0;
  transform: translateX(-100px);
}
.js-animation.-slidein.is-animation {
  opacity: 1;
  transform: translateX(0px);
}
.js-animation.-slideup {
  transition: 0.6s ease-out;
  opacity: 0;
  transform: translateY(20px);
}
.js-animation.-slideup.is-animation {
  opacity: 1;
  transform: translateY(0px);
}
.js-animation.-zoomup {
  transition: 0.3s;
  transition-timing-function: cubic-bezier(0.1, 0.84, 0.8, 1.35);
  opacity: 0;
  transform: scale(0.7, 0.7) translateY(40px);
}
.js-animation.-zoomup.is-animation {
  opacity: 1;
  transform: scale(1, 1) translateY(0px);
}
@media screen and (min-width: 769px) {
  .js-animation.-delay1 {
    transition-delay: 0.1s;
  }
  .js-animation.-delay2 {
    transition-delay: 0.2s;
  }
  .js-animation.-delay3 {
    transition-delay: 0.3s;
  }
  .js-animation.-delay4 {
    transition-delay: 0.4s;
  }
  .js-animation.-delay5 {
    transition-delay: 0.5s;
  }
  .js-animation.-delay6 {
    transition-delay: 0.6s;
  }
  .js-animation.-delay7 {
    transition-delay: 0.7s;
  }
  .js-animation.-delay8 {
    transition-delay: 0.8s;
  }
  .js-animation.-delay9 {
    transition-delay: 0.9s;
  }
  .js-animation.-delay10 {
    transition-delay: 1s;
  }
}

/* -----------------------------------
Utility
------------------------------------ */
/*
 * _utility.scss
 */
/* -----------------------------------
print
------------------------------------ */
@media print {
  .u-printHidden {
    display: none;
  }
}

.u-printVisible {
  display: none;
}
@media print {
  .u-printVisible {
    display: block;
  }
}

/* -----------------------------------
font
------------------------------------ */
.u-fwb {
  font-weight: bold !important;
}

.u-fwn {
  font-weight: normal !important;
}

/* -----------------------------------
align
------------------------------------ */
.u-tc {
  text-align: center !important;
}

.u-tl {
  text-align: left !important;
}

.u-tr {
  text-align: right !important;
}

/* -----------------------------------
padding
------------------------------------ */
.u-mt5 {
  margin-top: 5px !important;
}

.u-pt5 {
  padding-top: 5px !important;
}

.u-mr5 {
  margin-right: 5px !important;
}

.u-pr5 {
  padding-right: 5px !important;
}

.u-mb5 {
  margin-bottom: 5px !important;
}

.u-pb5 {
  padding-bottom: 5px !important;
}

.u-ml5 {
  margin-left: 5px !important;
}

.u-pl5 {
  padding-left: 5px !important;
}

.u-mt10 {
  margin-top: 10px !important;
}

.u-pt10 {
  padding-top: 10px !important;
}

.u-mr10 {
  margin-right: 10px !important;
}

.u-pr10 {
  padding-right: 10px !important;
}

.u-mb10 {
  margin-bottom: 10px !important;
}

.u-pb10 {
  padding-bottom: 10px !important;
}

.u-ml10 {
  margin-left: 10px !important;
}

.u-pl10 {
  padding-left: 10px !important;
}

.u-mt15 {
  margin-top: 15px !important;
}

.u-pt15 {
  padding-top: 15px !important;
}

.u-mr15 {
  margin-right: 15px !important;
}

.u-pr15 {
  padding-right: 15px !important;
}

.u-mb15 {
  margin-bottom: 15px !important;
}

.u-pb15 {
  padding-bottom: 15px !important;
}

.u-ml15 {
  margin-left: 15px !important;
}

.u-pl15 {
  padding-left: 15px !important;
}

.u-mt20 {
  margin-top: 20px !important;
}

.u-pt20 {
  padding-top: 20px !important;
}

.u-mr20 {
  margin-right: 20px !important;
}

.u-pr20 {
  padding-right: 20px !important;
}

.u-mb20 {
  margin-bottom: 20px !important;
}

.u-pb20 {
  padding-bottom: 20px !important;
}

.u-ml20 {
  margin-left: 20px !important;
}

.u-pl20 {
  padding-left: 20px !important;
}

.u-mt25 {
  margin-top: 25px !important;
}

.u-pt25 {
  padding-top: 25px !important;
}

.u-mr25 {
  margin-right: 25px !important;
}

.u-pr25 {
  padding-right: 25px !important;
}

.u-mb25 {
  margin-bottom: 25px !important;
}

.u-pb25 {
  padding-bottom: 25px !important;
}

.u-ml25 {
  margin-left: 25px !important;
}

.u-pl25 {
  padding-left: 25px !important;
}

.u-mt30 {
  margin-top: 30px !important;
}

.u-pt30 {
  padding-top: 30px !important;
}

.u-mr30 {
  margin-right: 30px !important;
}

.u-pr30 {
  padding-right: 30px !important;
}

.u-mb30 {
  margin-bottom: 30px !important;
}

.u-pb30 {
  padding-bottom: 30px !important;
}

.u-ml30 {
  margin-left: 30px !important;
}

.u-pl30 {
  padding-left: 30px !important;
}

.u-mt35 {
  margin-top: 35px !important;
}

.u-pt35 {
  padding-top: 35px !important;
}

.u-mr35 {
  margin-right: 35px !important;
}

.u-pr35 {
  padding-right: 35px !important;
}

.u-mb35 {
  margin-bottom: 35px !important;
}

.u-pb35 {
  padding-bottom: 35px !important;
}

.u-ml35 {
  margin-left: 35px !important;
}

.u-pl35 {
  padding-left: 35px !important;
}

.u-mt40 {
  margin-top: 40px !important;
}

.u-pt40 {
  padding-top: 40px !important;
}

.u-mr40 {
  margin-right: 40px !important;
}

.u-pr40 {
  padding-right: 40px !important;
}

.u-mb40 {
  margin-bottom: 40px !important;
}

.u-pb40 {
  padding-bottom: 40px !important;
}

.u-ml40 {
  margin-left: 40px !important;
}

.u-pl40 {
  padding-left: 40px !important;
}

.u-mt45 {
  margin-top: 45px !important;
}

.u-pt45 {
  padding-top: 45px !important;
}

.u-mr45 {
  margin-right: 45px !important;
}

.u-pr45 {
  padding-right: 45px !important;
}

.u-mb45 {
  margin-bottom: 45px !important;
}

.u-pb45 {
  padding-bottom: 45px !important;
}

.u-ml45 {
  margin-left: 45px !important;
}

.u-pl45 {
  padding-left: 45px !important;
}

.u-mt50 {
  margin-top: 50px !important;
}

.u-pt50 {
  padding-top: 50px !important;
}

.u-mr50 {
  margin-right: 50px !important;
}

.u-pr50 {
  padding-right: 50px !important;
}

.u-mb50 {
  margin-bottom: 50px !important;
}

.u-pb50 {
  padding-bottom: 50px !important;
}

.u-ml50 {
  margin-left: 50px !important;
}

.u-pl50 {
  padding-left: 50px !important;
}

.u-mt55 {
  margin-top: 55px !important;
}

.u-pt55 {
  padding-top: 55px !important;
}

.u-mr55 {
  margin-right: 55px !important;
}

.u-pr55 {
  padding-right: 55px !important;
}

.u-mb55 {
  margin-bottom: 55px !important;
}

.u-pb55 {
  padding-bottom: 55px !important;
}

.u-ml55 {
  margin-left: 55px !important;
}

.u-pl55 {
  padding-left: 55px !important;
}

.u-mt60 {
  margin-top: 60px !important;
}

.u-pt60 {
  padding-top: 60px !important;
}

.u-mr60 {
  margin-right: 60px !important;
}

.u-pr60 {
  padding-right: 60px !important;
}

.u-mb60 {
  margin-bottom: 60px !important;
}

.u-pb60 {
  padding-bottom: 60px !important;
}

.u-ml60 {
  margin-left: 60px !important;
}

.u-pl60 {
  padding-left: 60px !important;
}

/* -----------------------------------
font-size rem
------------------------------------ */
.u-fz10px {
  font-size: 1rem;
}

.u-fz11px {
  font-size: 1.1rem;
}

.u-fz12px {
  font-size: 1.2rem;
}

.u-fz13px {
  font-size: 1.3rem;
}

.u-fz14px {
  font-size: 1.4rem;
}

/* -----------------------------------
font-size em
------------------------------------ */
.u-fz09em {
  font-size: 0.9em;
}

.u-fz10em {
  font-size: 1em;
}

.u-fz11em {
  font-size: 1.1em;
}

.u-fz12em {
  font-size: 1.2em;
}

.u-fz13em {
  font-size: 1.3em;
}

.u-fz14em {
  font-size: 1.4em;
}

/* -----------------------------------
clerfix
------------------------------------ */
.sec::after,
.clearfix::after {
  display: block;
  clear: both;
  content: "";
}

/* -----------------------------------
display
------------------------------------ */
.u-d_b {
  display: block !important;
}

.u-d_n {
  display: none !important;
}

.u-d_ib {
  display: inline-block !important;
}

/* -----------------------------------
display adjust
------------------------------------ */
.u-smhide, .u-sphide, .u-middlehide, .u-tablethide, .u-basehide {
  display: block;
}

.u-smblock, .u-spblock, .u-middleblock, .u-tabletblock, .u-baseblock {
  display: none;
}

@media screen and (max-width: 1499px) {
  .u-baseblock {
    display: block;
  }
  .u-basehide {
    display: none !important;
  }
}
@media screen and (max-width: 959px) {
  .u-tabletblock {
    display: block;
  }
  .u-tablethide {
    display: none !important;
  }
}
@media screen and (max-width: 767px) {
  .u-middleblock {
    display: block;
  }
  .u-middlehide {
    display: none !important;
  }
}
@media screen and (max-width: 950px) {
  .u-spblock {
    display: block;
  }
  .u-sphide {
    display: none !important;
  }
}
@media screen and (max-width: 374px) {
  .u-smblock {
    display: block;
  }
  .u-smhide {
    display: none !important;
  }
}
/* ===================================
Page
=================================== */
/*
 * _page.scss
 */
/* -----------------------------------
#top
------------------------------------ *//*# sourceMappingURL=style.css.map */