@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=M+PLUS+Rounded+1c:wght@300;400;500;700;800&family=Poppins:wght@300;400;500;600;700&display=swap");
html,
body {
  color: var(--text-color);
}

html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 1.4rem;
  font: inherit;
  vertical-align: baseline;
  font-feature-settings: "palt";
  -webkit-font-smoothing: antialiased;
}

/* HTML5 display-role reset for older browsers */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
  display: block;
}

ol,
ul {
  list-style: none;
}

blockquote,
q {
  quotes: none;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
  content: "";
  content: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

img {
  vertical-align: top;
}

* {
  box-sizing: border-box;
}

input,
textarea,
button,
select {
  outline: none;
  margin: 0;
  padding: 0;
  border: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border-radius: 0;
}

a {
  text-decoration: none;
  color: var(--middle-color2);
}

p a {
  color: var(--fe-color);
  text-decoration: underline;
}
p a:hover {
  text-decoration: none;
}

:root {
  /* color */
  --base-color: #f2f4f5;
  --text-color: #574631;
  --lighttext-color: #908e8d;
  --white-color: #ffffff;
  --caution-color: #eb263d;
  --line-color: #e3e4e6;
  --link-color: #508de0;
  --transition-veryshort: 0.2s;
  --transition-short: 0.3s;
  --transition-middle: 0.7s;
  --transition-long1: 1.2s;
  --transition-long2: 2s;
  --easeInOutSine: cubic-bezier(0.39, 0.575, 0.565, 1);
}

@media (max-width: 967px) {
  .spnone,
  .sp_none {
    display: none !important;
  }
}
:root {
  --f10-px: 0.625rem;
  --f11-px: 0.6875rem;
  --f12-px: 0.75rem;
  --f13-px: 0.8125rem;
  --f14-px: 0.875rem;
  --f15-px: 0.9375rem;
  --f16-px: 1rem;
  --f17-px: 1.0625rem;
  --f18-px: 1.125rem;
  --f19-px: 1.1875rem;
  --f20-px: 1.25rem;
  --f21-px: 1.3125rem;
  --f22-px: 1.375rem;
  --f23-px: 1.4375rem;
  --f24-px: 1.5rem;
  --f25-px: 1.5625rem;
  --f26-px: 1.625rem;
  --f27-px: 1.6875rem;
  --f28-px: 1.75rem;
  --f29-px: 1.8125rem;
  --f30-px: 1.875rem;
  --f31-px: 1.9375rem;
  --f32-px: 2rem;
  --f33-px: 2.0625rem;
  --f34-px: 2.125rem;
  --f35-px: 2.1875rem;
  --f36-px: 2.25rem;
  --f37-px: 2.3125rem;
  --f38-px: 2.375rem;
  --f39-px: 2.4375rem;
  --f40-px: 2.5rem;
  --f41-px: 2.5625rem;
  --f42-px: 2.625rem;
  --f43-px: 2.6875rem;
  --f44-px: 2.75rem;
  --f45-px: 2.8125rem;
  --f46-px: 2.875rem;
  --f47-px: 2.9375rem;
  --f48-px: 3rem;
  --f49-px: 3.0625rem;
  --f50-px: 3.125rem;
  --f51-px: 3.1875rem;
  --f52-px: 3.25rem;
  --f53-px: 3.3125rem;
  --f54-px: 3.375rem;
  --f55-px: 3.4375rem;
  --f56-px: 3.5rem;
  --f57-px: 3.5625rem;
  --f58-px: 3.625rem;
  --f59-px: 3.6875rem;
  --f60-px: 3.75rem;
  --f61-px: 3.8125rem;
  --f62-px: 3.875rem;
  --f63-px: 3.9375rem;
  --f64-px: 4rem;
  --f65-px: 4.0625rem;
  --f66-px: 4.125rem;
  --f67-px: 4.1875rem;
  --f68-px: 4.25rem;
  --f69-px: 4.3125rem;
  --f70-px: 4.375rem;
  --f71-px: 4.4375rem;
  --f72-px: 4.5rem;
  --f73-px: 4.5625rem;
  --f74-px: 4.625rem;
  --f75-px: 4.6875rem;
  --f76-px: 4.75rem;
  --f77-px: 4.8125rem;
  --f78-px: 4.875rem;
  --f79-px: 4.9375rem;
  --f80-px: 5rem;
  --f81-px: 5.0625rem;
  --f82-px: 5.125rem;
  --f83-px: 5.1875rem;
  --f84-px: 5.25rem;
  --f85-px: 5.3125rem;
  --f86-px: 5.375rem;
  --f87-px: 5.4375rem;
  --f88-px: 5.5rem;
  --f89-px: 5.5625rem;
  --f90-px: 5.625rem;
  --f91-px: 5.6875rem;
  --f92-px: 5.75rem;
  --f93-px: 5.8125rem;
  --f94-px: 5.875rem;
  --f95-px: 5.9375rem;
  --f96-px: 6rem;
  --f97-px: 6.0625rem;
  --f98-px: 6.125rem;
  --f99-px: 6.1875rem;
  --f100-px: 6.25rem;
  --f144-px: 9rem;
  font-size: max(1.11111vw, 15px); /* 16pxが基準 */
  /* px translate */
  --v1-px: 0.06944444vw;
  --v2-px: 0.13888888vw;
  --v3-px: 0.20833332vw;
  --v4-px: 0.27777776vw;
  --v5-px: 0.3472222vw;
  --v6-px: 0.41666664vw;
  --v7-px: 0.48611108vw;
  --v8-px: 0.55555552vw;
  --v9-px: 0.62499996vw;
  --v10-px: 0.6944444vw;
  --v11-px: 0.76388884vw;
  --v12-px: 0.83333328vw;
  --v13-px: 0.90277772vw;
  --v14-px: 0.97222216vw;
  --v15-px: 1.0416666vw;
  --v16-px: 1.11111104vw;
  --v17-px: 1.18055548vw;
  --v18-px: 1.24999992vw;
  --v19-px: 1.31944436vw;
  --v20-px: 1.3888888vw;
  --v21-px: 1.45833324vw;
  --v22-px: 1.52777768vw;
  --v23-px: 1.59722212vw;
  --v24-px: 1.66666656vw;
  --v25-px: 1.736111vw;
  --v26-px: 1.80555544vw;
  --v27-px: 1.87499988vw;
  --v28-px: 1.94444432vw;
  --v29-px: 2.01388876vw;
  --v30-px: 2.0833332vw;
  --v31-px: 2.15277764vw;
  --v32-px: 2.22222208vw;
  --v33-px: 2.29166652vw;
  --v34-px: 2.36111096vw;
  --v35-px: 2.4305554vw;
  --v36-px: 2.49999984vw;
  --v37-px: 2.56944428vw;
  --v38-px: 2.63888872vw;
  --v39-px: 2.70833316vw;
  --v40-px: 2.7777776vw;
  --v41-px: 2.84722204vw;
  --v42-px: 2.91666648vw;
  --v43-px: 2.98611092vw;
  --v44-px: 3.05555536vw;
  --v45-px: 3.1249998vw;
  --v46-px: 3.19444424vw;
  --v47-px: 3.26388868vw;
  --v48-px: 3.33333312vw;
  --v49-px: 3.40277756vw;
  --v50-px: 3.472222vw;
  --v51-px: 3.54166644vw;
  --v52-px: 3.61111088vw;
  --v53-px: 3.68055532vw;
  --v54-px: 3.74999976vw;
  --v55-px: 3.8194442vw;
  --v56-px: 3.88888864vw;
  --v57-px: 3.95833308vw;
  --v58-px: 4.02777752vw;
  --v59-px: 4.09722196vw;
  --v60-px: 4.1666664vw;
  --v61-px: 4.23611084vw;
  --v62-px: 4.30555528vw;
  --v63-px: 4.37499972vw;
  --v64-px: 4.44444416vw;
  --v65-px: 4.5138886vw;
  --v66-px: 4.58333304vw;
  --v67-px: 4.65277748vw;
  --v68-px: 4.72222192vw;
  --v69-px: 4.79166636vw;
  --v70-px: 4.8611108vw;
  --v71-px: 4.93055524vw;
  --v72-px: 4.99999968vw;
  --v73-px: 5.06944412vw;
  --v74-px: 5.13888856vw;
  --v75-px: 5.208333vw;
  --v76-px: 5.27777744vw;
  --v77-px: 5.34722188vw;
  --v78-px: 5.41666632vw;
  --v79-px: 5.48611076vw;
  --v80-px: 5.5555552vw;
  --v81-px: 5.62499964vw;
  --v82-px: 5.69444408vw;
  --v83-px: 5.76388852vw;
  --v84-px: 5.83333296vw;
  --v85-px: 5.9027774vw;
  --v86-px: 5.97222184vw;
  --v87-px: 6.04166628vw;
  --v88-px: 6.11111072vw;
  --v89-px: 6.18055516vw;
  --v90-px: 6.2499996vw;
  --v91-px: 6.31944404vw;
  --v92-px: 6.38888848vw;
  --v93-px: 6.45833292vw;
  --v94-px: 6.52777736vw;
  --v95-px: 6.5972218vw;
  --v96-px: 6.66666624vw;
  --v97-px: 6.73611068vw;
  --v98-px: 6.80555512vw;
  --v99-px: 6.87499956vw;
  --v100-px: 6.944444vw;
  --v104-px: 7.22222222vw;
  --v106-px: 7.36111111vw;
  --v112-px: 7.77777777vw;
  --v120-px: 8.33333333vw;
  --v128-px: 8.88888888vw;
  --v136-px: 9.44444444vw;
  --v140-px: 7.72222222vw;
  --v144-px: 10vw;
  --v148-px: 10.2777777vw;
  --v152-px: 10.5555555vw;
  --v160-px: 11.1111111vw;
  --v184-px: 12.7777777vw;
  --v196-px: 13.6111111vw;
  --v950-px: 65.625vw;
  --content-width: 80vw;
  --border-num: var(--v8-px);
  --transform-dist: translateY(var(--v48-px));
  --border1: 2px solid var(--text-color);
  --shadow1: var(--v4-px) var(--v4-px) 0 var(--text-color);
  --shadow2: var(--v3-px) var(--v3-px) 0 var(--text-color);
}

@media (min-width: 967px) {
  .pcnone,
  .pc_none {
    display: none !important;
  }
}
@media (max-width: 767px) {
  :root {
    --f10-px: 0.7692307rem;
    --f11-px: 0.8461538rem;
    --f12-px: 0.9230769rem;
    --f13-px: 1rem;
    --f14-px: 1.076923rem;
    --f15-px: 1.1538461rem;
    --f16-px: 1.2307692rem;
    --f17-px: 1.3076923rem;
    --f18-px: 1.3846153rem;
    --f19-px: 1.4615384rem;
    --f20-px: 1.5384615rem;
    --f21-px: 1.6153846rem;
    --f22-px: 1.6923076rem;
    --f23-px: 1.7692307rem;
    --f24-px: 1.8461538rem;
    --f25-px: 1.9230769rem;
    --f26-px: 2rem;
    --f27-px: 2.076923rem;
    --f28-px: 2.1538461rem;
    --f29-px: 2.2307692rem;
    --f30-px: 2.3076923rem;
    --f31-px: 2.3846153rem;
    --f32-px: 2.4615384rem;
    --f33-px: 2.5384615rem;
    --f34-px: 2.6153846rem;
    --f35-px: 2.6923076rem;
    --f36-px: 2.7692307rem;
    --f37-px: 2.8461538rem;
    --f38-px: 2.9230769rem;
    --f39-px: 3rem;
    --f40-px: 3.076923rem;
    --f41-px: 3.1538461rem;
    --f42-px: 3.2307692rem;
    --f43-px: 3.3076923rem;
    --f44-px: 3.3846153rem;
    --f45-px: 3.4615384rem;
    --f46-px: 3.5384615rem;
    --f47-px: 3.6153846rem;
    --f48-px: 3.6923076rem;
    --f49-px: 3.7692307rem;
    --f50-px: 3.8461538rem;
    --f51-px: 3.9230769rem;
    --f52-px: 4rem;
    --f53-px: 4.076923rem;
    --f54-px: 4.1538461rem;
    --f55-px: 4.2307692rem;
    --f56-px: 4.3076923rem;
    --f57-px: 4.3846153rem;
    --f58-px: 4.4615384rem;
    --f59-px: 4.5384615rem;
    --f60-px: 4.6153846rem;
    --f61-px: 4.6923076rem;
    --f62-px: 4.7692307rem;
    --f63-px: 4.8461538rem;
    --f64-px: 4.9230769rem;
    --f65-px: 5rem;
    --f66-px: 5.076923rem;
    --f67-px: 5.1538461rem;
    --f68-px: 5.2307692rem;
    --f69-px: 5.3076923rem;
    --f70-px: 5.3846153rem;
    --f71-px: 5.4615384rem;
    --f72-px: 5.5384615rem;
    --f73-px: 5.6153846rem;
    --f74-px: 5.6923076rem;
    --f75-px: 5.7692307rem;
    --f76-px: 5.8461538rem;
    --f77-px: 5.9230769rem;
    --f78-px: 6rem;
    --f79-px: 6.076923rem;
    --f80-px: 6.1538461rem;
    --f81-px: 6.2307692rem;
    --f82-px: 6.3076923rem;
    --f83-px: 6.3846153rem;
    --f84-px: 6.4615384rem;
    --f85-px: 6.5384615rem;
    --f86-px: 6.6153846rem;
    --f87-px: 6.6923076rem;
    --f88-px: 6.7692307rem;
    --f89-px: 6.8461538rem;
    --f90-px: 6.9230769rem;
    --f91-px: 7rem;
    --f92-px: 7.076923rem;
    --f93-px: 7.1538461rem;
    --f94-px: 7.2307692rem;
    --f95-px: 7.3076923rem;
    --f96-px: 7.3846153rem;
    --f97-px: 7.4615384rem;
    --f98-px: 7.5384615rem;
    --f99-px: 7.6153846rem;
    --f100-px: 7.6923076rem;
    font-size: max(3.46666vw, 13px);
    /* px translate */
    --v1-px: 0.266666666vw;
    --v2-px: 0.533333333vw;
    --v3-px: 0.8vw;
    --v4-px: 1.06666666vw;
    --v5-px: 1.33333333vw;
    --v6-px: 1.6vw;
    --v7-px: 1.86666666vw;
    --v8-px: 2.13333333vw;
    --v9-px: 2.4vw;
    --v10-px: 2.66666666vw;
    --v11-px: 2.93333333vw;
    --v12-px: 3.2vw;
    --v13-px: 3.46666666vw;
    --v14-px: 3.73333333vw;
    --v15-px: 4vw;
    --v16-px: 4.266666666vw;
    --v17-px: 4.53333333vw;
    --v18-px: 4.8vw;
    --v19-px: 5.06666666vw;
    --v20-px: 5.333333333vw;
    --v21-px: 5.6vw;
    --v22-px: 5.86666666vw;
    --v23-px: 6.13333333vw;
    --v24-px: 6.4vw;
    --v25-px: 6.66666666vw;
    --v26-px: 6.93333333vw;
    --v27-px: 7.2vw;
    --v28-px: 7.466666666vw;
    --v29-px: 7.73333333vw;
    --v30-px: 8vw;
    --v31-px: 8.26666666vw;
    --v32-px: 8.533333333vw;
    --v33-px: 8.8vw;
    --v34-px: 9.06666666vw;
    --v35-px: 9.33333333vw;
    --v36-px: 9.6vw;
    --v37-px: 9.86666666vw;
    --v38-px: 10.13333333vw;
    --v39-px: 10.4vw;
    --v40-px: 10.66666666vw;
    --v41-px: 10.93333333vw;
    --v42-px: 11.2vw;
    --v43-px: 11.46666666vw;
    --v44-px: 11.73333333vw;
    --v45-px: 12vw;
    --v46-px: 12.26666666vw;
    --v47-px: 12.53333333vw;
    --v48-px: 12.8vw;
    --v49-px: 13.06666666vw;
    --v50-px: 13.33333333vw;
    --v51-px: 13.6vw;
    --v52-px: 13.86666666vw;
    --v53-px: 14.13333333vw;
    --v54-px: 14.4vw;
    --v55-px: 14.66666666vw;
    --v56-px: 14.93333333vw;
    --v57-px: 15.2vw;
    --v58-px: 15.46666666vw;
    --v59-px: 15.73333333vw;
    --v60-px: 16vw;
    --v61-px: 16.26666666vw;
    --v62-px: 16.53333333vw;
    --v63-px: 16.8vw;
    --v64-px: 17.06666666vw;
    --v65-px: 17.33333333vw;
    --v66-px: 17.6vw;
    --v67-px: 17.86666666vw;
    --v68-px: 18.13333333vw;
    --v69-px: 18.4vw;
    --v70-px: 18.66666666vw;
    --v71-px: 18.93333333vw;
    --v72-px: 19.2vw;
    --v73-px: 19.46666666vw;
    --v74-px: 19.73333333vw;
    --v75-px: 20vw;
    --v76-px: 20.26666666vw;
    --v77-px: 20.53333333vw;
    --v78-px: 20.8vw;
    --v79-px: 21.06666666vw;
    --v80-px: 21.33333333vw;
    --v81-px: 21.6vw;
    --v82-px: 21.86666666vw;
    --v83-px: 22.13333333vw;
    --v84-px: 22.4vw;
    --v85-px: 22.66666666vw;
    --v86-px: 22.93333333vw;
    --v87-px: 23.2vw;
    --v88-px: 23.46666666vw;
    --v89-px: 23.73333333vw;
    --v90-px: 24vw;
    --v91-px: 24.26666666vw;
    --v92-px: 24.53333333vw;
    --v93-px: 24.8vw;
    --v94-px: 25.06666666vw;
    --v95-px: 25.33333333vw;
    --v96-px: 25.6vw;
    --v97-px: 25.86666666vw;
    --v98-px: 26.13333333vw;
    --v99-px: 26.4vw;
    --v100-px: 26.66666666vw;
    --v101-px: 26.93333333vw;
    --v102-px: 27.2vw;
    --v103-px: 27.46666666vw;
    --v104-px: 27.7333333vw;
    --v112-px: 29.8666666vw;
    --v120-px: 32vw;
    --v128-px: 34.1333333vw;
    --v136-px: 36.2666666vw;
    --v144-px: 38.4vw;
    --v152-px: 40.5333333vw;
    --v160-px: 42.6666666vw;
    --v168-px: 44.8vw;
    --v176-px: 46.9333333vw;
    --v184-px: 49.0666666vw;
    --v192-px: 51.2vw;
    --v196-px: 52.2666666vw;
    --v200-px: 53.3333333vw;
    --v208-px: 55.4666666vw;
    --v216-px: 57.6vw;
    --v224-px: 59.7333333vw;
    --v232-px: 61.8666666vw;
    --v240-px: 64vw;
    --v248-px: 66.1vw;
    --v256-px: 68.2666666vw;
    --v264-px: 70.4vw;
    --v280-px: 74.6666666vw;
    --v311-px: 82.9333333vw;
    --v320-px: 85.3333333vw;
    --transform-dist: translateY(var(--v24-px));
    --border-num: var(--v8-px);
    --shadow1: var(--v4-px) var(--v4-px) 0 var(--text-color);
    --shadow2: var(--v3-px) var(--v3-px) 0 var(--text-color);
    --content-width: 88vw;
  }
}
html {
  width: 100%;
  overflow-x: hidden;
}

body {
  background: var(--base-color);
  font-family: "NewCezannePro-M", sans-serif;
  font-size: 1.4rem;
  line-height: 1.85;
  font-weight: 500;
  letter-spacing: 0.2em;
  line-height: 2;
  width: 100%;
  overflow-x: hidden;
}
@media (max-width: 967px) {
  body {
    font-size: var(--f13-px);
  }
}

a {
  opacity: 1;
  transition: var(--transition-short);
}
a:hover {
  opacity: 0.7;
}

.mt0 {
  margin-top: 0 !important;
}

img {
  width: auto;
  height: auto;
}

header {
  position: absolute;
  z-index: 10;
  width: 100vw;
}
header p.logo {
  position: fixed;
  left: var(--v72-px);
  top: var(--v48-px);
  width: 13.8888vw;
}
@media (max-width: 967px) {
  header p.logo {
    width: 36.26666vw;
    left: 8.53333vw;
    top: 8.53333vw;
  }
}
header p.logo img {
  width: 100%;
}
header .gnav {
  position: fixed;
  top: var(--v64-px);
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  gap: var(--v32-px);
  font-size: var(--f13-px);
}
header .gnav li {
  width: -moz-max-content;
  width: max-content;
}
header .menu {
  position: fixed;
  right: 0;
  top: 0;
  width: 7.5694vw;
}
@media (max-width: 967px) {
  header .menu {
    width: 21.8666vw;
  }
}
header .menu img {
  width: 100%;
}

.pin-spacer {
  height: 225vh !important;
}

.mv {
  position: relative;
  overflow: hidden;
  width: 100vw;
  height: 100vh;
  min-height: 100vh;
  background: #fce8cf;
}
.mv .mvimg {
  position: absolute;
  left: 0;
  bottom: 0;
  transform: scale(1) translateY(0) !important; /* 最初から最終状態に設定、詳細度を最優先 */
  width: 100vw;
  overflow: hidden;
  transition: 1.2s; /* トランジション復活 */
}
.mv .mvimg::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  /* background: url("../img/mv/mv.webp") no-repeat; */
  background-size: cover;
  filter: blur(5px); /* ぼかしの強さを調整できます */
  z-index: 0;
}
@media (max-width: 967px) {
  .mv .mvimg {
    top: 0;
    height: 100vh;
  }
}
.mv .mvimg img {
  display: block;
  width: 100%;
  height: 105%;
  -o-object-fit: cover;
  object-fit: cover;
  transform-origin: center center; /* 拡大の中心を真ん中に */
  filter: blur(0px) brightness(1);
  position: relative;
  z-index: 1; /* 画像を背景の上に表示 */
}
@media (max-width: 967px) {
  .mv .mvimg img {
    bottom: 15vw;
  }
}
.mv .mvline {
  position: absolute;
  left: 50%;
  height: 55vw;
  bottom: -8vw;
  transform: translateX(-50%);
}
@media (min-aspect-ratio: 1.4444444444) {
  .mv .mvline .mvline--large {
    display: none;
  }
}
@media (max-aspect-ratio: 1.4444444444) {
  .mv .mvline {
    height: 63vw;
    bottom: 0;
  }
  .mv .mvline .mvline--main {
    display: none;
  }
}
.mv .mvline svg path {
  stroke-dasharray: 4504;
  stroke-dashoffset: -4104;
  /* アニメーションで線を描く */
}
.mvon .mv .mvline svg path {
  animation: draw-line 2s forwards;
}
@media (max-width: 967px) {
  .mv .mvline {
    left: -2.5vw;
    width: 105vw;
    height: auto;
    bottom: 0;
    top: 60vw;
    transform: translateX(0);
  }
}
.mv .mvline img {
  height: 100%;
}
@media (max-width: 967px) {
  .mv .mvline img {
    height: auto;
    width: 100%;
  }
}
.mv .mvtxt {
  position: absolute;
  left: 0;
  top: 55vh;
  width: 100%;
  transform: translateY(-50%);
  height: 2.65vw;
  z-index: 1;
}
@media (max-width: 150vh) {
  .mv .mvtxt {
    height: 2.2vw;
  }
}
@media (max-width: 967px) {
  .mv .mvtxt {
    top: 32vw;
  }
}
.mv .mvtxt img {
  position: absolute;
  height: 100%;
  top: 0;
}
.mv .mvtxt img:nth-child(1) {
  left: 4.5vw;
}
.mv .mvtxt img:nth-child(2) {
  right: 4.5vw;
}
@media (max-width: 967px) {
  .mv .mvtxt img:nth-child(2) {
    top: 15vw;
  }
}
@media (min-width: 967px) {
  .mv .mvtxt img.sp_txt {
    display: none;
  }
}
@media (max-width: 967px) {
  .mv .mvtxt img {
    display: none;
  }
  .mv .mvtxt img.sp_txt {
    display: block;
    width: 66.6666vw;
    height: auto;
    margin-left: 16.6666vw;
  }
}
.mv .deco--txt {
  position: absolute;
  left: 0;
  bottom: -10dvh;
  /* transition: 0.4s; */
  display: flex;
  gap: 1em;
  margin-left: 0vw;
  pointer-events: none;
  translate: 0 -50%;
  width: -moz-max-content;
  width: max-content;
  letter-spacing: 0 !important;
}
@media (max-width: 967px) {
  .mv .deco--txt {
    bottom: calc(99vh - 100svh);
    translate: 0 0;
    height: 100svh;
    align-items: flex-end;
  }
}
.mv .deco--txt img {
  height: 13.402777vh;
}
@media (max-width: 967px) {
  .mv .deco--txt img {
    height: 16.26666vw;
  }
}
.mv .cover {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100vw;
  height: 100vh;
  display: flex;
  justify-content: center;
}
.mv .cover img {
  width: 100%;
  position: absolute;
  left: 0;
  bottom: 0;
  scale: 1;
  transform-origin: center bottom;
}
@media (max-width: 967px) {
  .mv .cover img {
    width: 105vw;
    left: -2.5vw;
    bottom: none;
    top: 0;
    max-width: 105vw;
  }
  .mv .cover img.cover_pc,
  .mv .cover img.cover_large {
    display: none;
  }
}
@media (min-width: 967px) and (min-aspect-ratio: 1.4444444444) {
  .mv .cover img.cover_sp,
  .mv .cover img.cover_large {
    display: none;
  }
}
@media (min-width: 967px) and (max-aspect-ratio: 1.4444444444) {
  .mv .cover img.cover_sp,
  .mv .cover img.cover_pc {
    display: none;
  }
}
/* .mvon .mv .mvimg {
  transform: scale(1) translateY(0);
  transition-delay: 0.1s;
} */

@keyframes draw-line {
  to {
    stroke-dashoffset: 0;
  }
}
.break {
  /* background: url("/img/lead/lead_bg.webp") no-repeat; */
  background-size: cover;
  position: fixed;
  left: 0;
  top: 0;
  width: 100vw;
  height: 100vh;
  opacity: 0;
  pointer-events: none;
  transition: var(--transition-middle);
}
.break.act {
  opacity: 1;
}

body {
  transition: var(--transition-middle);
}

.loading {
  position: fixed;
  background: #fff;
  left: 0;
  top: 0;
  width: 100vw;
  height: 100vh;
  opacity: 1;
  z-index: 100;
  transition: var(--transition-long1);
  background: linear-gradient(
    220deg,
    #ffdfbb 41.92%,
    #ffecdc 47.86%,
    #d6f4f5 58.47%
  );
}
.visit--false .loading {
  opacity: 1;
  transition: 2s;
}
.loading--revisit {
  pointer-events: none;
  transition: var(--transition-short);
}
.loading--revisit .img {
  transition: none !important;
  transform: translate(-50%, -50%) scale(1) !important;
}
.loading .txt {
  position: absolute;
  left: 50%;
  top: 15vh;
  transform: translateX(-50%);
  width: 5vw;
  z-index: 1;
}
@media (max-width: 967px) {
  .loading .txt {
    width: 18vw;
    top: 30vw;
  }
}
.loading .txt img {
  width: 100%;
}
.loading .logo {
  position: absolute;
  left: 50%;
  bottom: 5vw;
  transform: translateX(-50%);
  width: 12vw;
  z-index: 1;
}
@media (max-width: 967px) {
  .loading .logo {
    bottom: 8.53vw;
    width: 36.8vw;
  }
}
.loading .logo img {
  width: 100%;
}
.loading .cover {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  opacity: 1;
  transition: 2s;
  pointer-events: auto;
}
.loading .cover img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}
.loading .img {
  background: var(--white-color);
  border-radius: 100vw 100vw 0 0;
  border: 1px solid #fff;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%) scale(1);
  width: 30.402777vh;
  box-shadow: 0px 0px 16px 0px rgb(255, 255, 255);
  transition: 0.7s;
}
@media (max-width: 967px) {
  .loading .img {
    width: 47.2vw;
  }
}
.loading .img img {
  width: 100%;
  animation: loadingFilter 3s infinite;
}
.loading-hide .loading {
  opacity: 0;
  pointer-events: none;
}
.loading-hide .loading .cover {
  opacity: 0;
}
.loading-hide .loading .img {
  transform: translate(-50%, -50%) scale(1.5);
}
.loading-hide .loading * {
  pointer-events: none;
}

@keyframes loadingFilter {
  0% {
    filter: brightness(100%);
  }
  50% {
    filter: brightness(110%);
  }
  100% {
    filter: brightness(100%);
  }
}
.wrap {
  position: relative;
  left: 0;
  top: 0;
  width: 100%;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.4s ease;
  margin-top: -100vh;
}
.wrap.wrap--visible {
  /* 表示時のスタイル */
  opacity: 1;
  pointer-events: auto;
}
.wrap.pinout {
  position: relative;
}

.lead--section {
  padding-bottom: var(--v160-px);
  position: relative;
  min-height: 100vh;
}
.lead--section .lead--flex--wrap {
  display: flex;
  justify-content: center;
  align-items: center;
}
@media (max-width: 967px) {
  .lead--section .lead--flex--wrap {
    flex-direction: column-reverse;
  }
}
@media (max-width: 967px) {
  .lead--section {
    width: 100vw;
    padding-bottom: var(--v64-px);
  }
}
.lead--section .concept--bnr {
  width: var(--v950-px);
  display: flex;
  justify-content: center;
  align-items: center;
  margin-left: auto;
  margin-right: auto;
  margin-top: var(--v160-px);
}
.lead--section .concept--bnr a {
  overflow: hidden;
  border-radius: var(--v8-px);
}
.lead--section .concept--bnr img {
  width: 100%;
}
@media (max-width: 967px) {
  .lead--section .concept--bnr {
    width: var(--v311-px);
    margin-top: var(--v48-px);
  }
}
.lead--section .block--left {
  position: relative;
  width: 36.73611vw;
}
.lead--section .block--left h2,
.lead--section .block--left .spnone {
  font-size: var(--f48-px);
  line-height: 1.5;
  letter-spacing: 0.5em;
}
@media (max-width: 967px) {
  .lead--section .block--left h2,
  .lead--section .block--left .spnone {
    font-size: var(--f36-px);
    margin-top: var(--v32-px);
  }
}
.lead--section .block--left .text--block {
  font-size: var(--f24-px);
  margin-top: var(--v24-px);
}
@media (max-width: 967px) {
  .lead--section .block--left .text--block {
    font-size: var(--f17-px);
    margin-top: var(--v24-px);
    text-align: center;
  }
}
.lead--section .block--left .text--block p {
  font-size: var(--f24-px);
}
@media (max-width: 967px) {
  .lead--section .block--left .text--block p {
    font-size: var(--f17-px);
  }
}
.lead--section .block--left .text--block p + p {
  margin-top: 0.5em;
}
.lead--section .block--left .btn--wrap {
  display: flex;
  gap: var(--v16-px);
  align-items: center;
}
@media (max-width: 967px) {
  .lead--section .block--left .btn--wrap {
    flex-direction: column;
    gap: var(--v8-px);
    margin-top: var(--v16-px);
  }
}
.lead--section .block--left .btn--wrap a {
  background: var(--white-color);
  display: flex;
  gap: var(--v12-px);
  padding: var(--v12-px) var(--v24-px);
  justify-content: center;
  align-items: center;
  margin-top: var(--v32-px);
  width: -moz-fit-content;
  width: fit-content;
}
@media (max-width: 967px) {
  .lead--section .block--left .btn--wrap a {
    margin-top: 0;
  }
}
.lead--section .block--left .btn--wrap a::after {
  content: "";
  /* background: url("/img/lead/arrow.svg") no-repeat; */
  background-size: contain;
  width: var(--v9-px);
  height: var(--v15-px);
}
@media (max-width: 967px) {
  .lead--section .block--left {
    width: 90vw;
  }
}
.lead--section .block--right {
  position: relative;
  margin-top: -2.4vw;
}
@media (max-width: 967px) {
  .lead--section .block--right {
    display: flex;
    flex-direction: column;
    align-items: center;
  }
}
@media (max-width: 967px) {
  .lead--section .block--right h2 {
    font-size: var(--f32-px);
    letter-spacing: 0.5em;
    line-height: 1.5;
    text-align: center;
  }
}
.lead--section .block--right figure.lead--visual1 {
  width: 28.2638vw;
  height: 36.875vw;
  border-radius: 100vw 100vw 0 0;
  overflow: hidden;
  position: relative;
}
@media (max-width: 967px) {
  .lead--section .block--right figure.lead--visual1 {
    width: 66.6666vw;
    height: 85.0666vw;
    margin-top: var(--v24-px);
    display: flex;
    justify-self: center;
  }
}
.lead--section .block--right figure.lead--visual1 img {
  width: 100%;
  opacity: 0;
  position: absolute;
  left: 0;
  top: 0;
  transition: var(--transition-middle);
  transform: scale(0.9);
}
.lead--section .block--right figure.lead--visual1 img.view {
  opacity: 1;
  transform: scale(1);
}
.lead--section .block--right .lead--visual2 {
  width: 14.930556vw;
  height: 19.51388vw;
  border-radius: 100vw;
  overflow: hidden;
  position: absolute;
  left: 22.4444vw;
  bottom: -4.1111vw;
}
.lead--section .block--right .lead--visual2 img {
  width: 100%;
  opacity: 0;
  position: absolute;
  left: 0;
  top: 0;
  transition: var(--transition-middle);
  transform: scale(0.9);
}
.lead--section .block--right .lead--visual2 img.view {
  opacity: 1;
  transform: scale(1);
}
@media (max-width: 967px) {
  .lead--section .block--right {
    width: 90vw;
  }
}

.test--section {
  position: relative;
  z-index: 100;
  width: 100vw;
  height: 100vh;
  margin-top: 0;
  background: #aaa;
} /*# sourceMappingURL=mv.css.map */
