@charset "UTF-8";
/* ===================================================================
CSS information

file name  : copy.css
author     : Abilive
style info : コピー
=================================================================== */
/* ===================================================================
CSS information

file name  : _settings.scss
author     : Abilive
style info : 汎用設定
=================================================================== */
body {
  transition-duration: 1s;
}
body:not([data-conc-bg]) .box_anch {
  opacity: 0;
}
body:not([data-conc-bg]), body[data-conc-bg="1"] {
  background-color: #000;
  color: #fff;
  fill: #fff;
  --circle-bg: transparent;
  --circle-dot-color: white;
  --circle-line-color: white;
  --circle-border-color: white;
  --swiper-arrow-bgc: rgba(255, 255, 255, 0.2);
  --swiper-arrow-color: white;
}
body:not([data-conc-bg]) [class^="tmp_st"], body[data-conc-bg="1"] [class^="tmp_st"] {
  color: inherit;
}
body:not([data-conc-bg]) .tmp_st_v:not(.c_grad) .grad, body[data-conc-bg="1"] .tmp_st_v:not(.c_grad) .grad {
  color: inherit;
  -webkit-background-clip: inherit;
  -webkit-text-fill-color: inherit;
  background: none;
}
body:not([data-conc-bg]) .tmp_st_v.c_grad .grad, body[data-conc-bg="1"] .tmp_st_v.c_grad .grad {
  background: var(--grad-title-white);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
body:not([data-conc-bg]) .tmp_link a:has(.ic_external), body[data-conc-bg="1"] .tmp_link a:has(.ic_external) {
  border-bottom: 1px solid white;
}
body:not([data-conc-bg]) .tmp_link .ic svg, body[data-conc-bg="1"] .tmp_link .ic svg {
  fill: #707070 !important;
}
body:not([data-conc-bg]) .box_anch ul::after, body[data-conc-bg="1"] .box_anch ul::after {
  top: calc(0 / 4 * 100%);
}
body:not([data-conc-bg]) .box_anch ul li[data-bg="01"] a span, body[data-conc-bg="1"] .box_anch ul li[data-bg="01"] a span {
  opacity: 1;
}
body[data-conc-bg="2"] {
  background-color: #494235;
  color: #fff;
  fill: #fff;
  --circle-bg: transparent;
  --circle-dot-color: white;
  --circle-line-color: white;
  --circle-border-color: white;
  --swiper-arrow-bgc: rgba(255, 255, 255, 0.2);
  --swiper-arrow-color: white;
}
body[data-conc-bg="2"] [class^="tmp_st"] {
  color: inherit;
}
body[data-conc-bg="2"] .tmp_st_v:not(.c_grad) .grad {
  color: inherit;
  -webkit-background-clip: inherit;
  -webkit-text-fill-color: inherit;
  background: none;
}
body[data-conc-bg="2"] .tmp_st_v.c_grad .grad {
  background: var(--grad-title-white);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
body[data-conc-bg="2"] .tmp_link a:has(.ic_external) {
  border-bottom: 1px solid white;
}
body[data-conc-bg="2"] .tmp_link .ic svg {
  fill: #707070 !important;
}
body[data-conc-bg="2"] .box_anch ul::after {
  top: calc(1 / 4 * 100%);
}
body[data-conc-bg="2"] .box_anch ul li[data-bg="02"] a span {
  opacity: 1;
}
body[data-conc-bg="3"] {
  background-color: #fff;
}
body[data-conc-bg="3"] .box_anch ul::before {
  background-color: rgba(39, 39, 39, 0.25);
}
body[data-conc-bg="3"] .box_anch ul::after {
  top: calc(2 / 4 * 100%);
  background-color: #38342f;
}
body[data-conc-bg="3"] .box_anch ul li[data-bg="03"] a span {
  opacity: 1;
}
body[data-conc-bg="3"] .con_conc .box_txt .catch {
  color: var(--color-text-title);
}
body[data-conc-bg="4"] {
  background-color: var(--color-F3F1EE);
}
body[data-conc-bg="4"] .box_anch ul::before {
  background-color: rgba(39, 39, 39, 0.25);
}
body[data-conc-bg="4"] .box_anch ul::after {
  top: calc(3 / 4 * 100%);
  background-color: #38342f;
}
body[data-conc-bg="4"] .box_anch ul li[data-bg="04"] a span {
  opacity: 1;
}
body[data-conc-bg="4"] .con_conc .box_txt .catch {
  color: var(--color-text-title);
}

.kv_title {
  z-index: 1;
}

.kv_video {
  overflow: hidden;
  position: relative;
}
.kv_video::before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 6em;
  display: block;
  background: linear-gradient(180deg, transparent, black);
}

.wrp_conc {
  position: relative;
  padding-bottom: 17.85rem;
}
@media only screen and (max-width: 767px) {
  .wrp_conc {
    padding-bottom: 5rem;
  }
}
.wrp_conc .box_anch {
  position: sticky;
  top: 0;
  left: 2.85rem;
  z-index: 1;
  display: flex;
  align-items: center;
  width: 50px;
}
@media only screen and (min-width: 768px) {
  .wrp_conc .box_anch {
    height: calc(var(--vh) * 100);
  }
}
@media only screen and (max-width: 767px) {
  .wrp_conc .box_anch {
    left: 1em;
    width: 3em;
    align-items: flex-start;
    padding-top: 5.5rem;
  }
}
.wrp_conc .box_anch ul {
  height: 14.28rem;
  position: relative;
  width: 100%;
}
@media only screen and (max-width: 767px) {
  .wrp_conc .box_anch ul {
    height: 12rem;
  }
}
.wrp_conc .box_anch ul li {
  height: calc(1 / 4 * 100%);
  width: 100%;
}
.wrp_conc .box_anch ul li a {
  width: 100%;
  height: 100%;
  align-items: center;
  display: flex;
  text-decoration: none;
  justify-content: center;
}
.wrp_conc .box_anch ul li a span {
  opacity: 0;
}
.wrp_conc .box_anch ul::before, .wrp_conc .box_anch ul::after {
  content: "";
  display: block;
  width: 2px;
  background-color: rgba(255, 255, 255, 0.25);
  position: absolute;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  transition-property: background-color, top;
  transition-duration: .15s;
  transition-timing-function: ease-out;
}
.wrp_conc .box_anch ul::after {
  background-color: #fff;
  height: calc(1 / 4 * 100%);
}
@media only screen and (min-width: 768px) {
  .wrp_conc > .inner {
    margin-top: calc(var(--vh) * 100 * -1);
  }
}

.con_conc {
  --mt: 17.5rem;
}
@media only screen and (max-width: 1024px) {
  .con_conc {
    --mt: 10rem;
  }
}
.con_conc + .con_conc {
  margin-top: var(--mt);
}
.con_conc#lnk_conc03 {
  margin-top: 0;
  padding-top: var(--mt);
}
.con_conc .box_sticky {
  margin-right: auto;
  margin-left: auto;
}
@media only screen and (min-width: 1025px) {
  .con_conc .box_sticky {
    width: calc(1260 / 1440 * 100%);
    max-width: calc(1260px);
  }
}
@media only screen and (min-width: 1441px) {
  .con_conc .box_sticky {
    max-width: calc(1260px * ((18 + 0) / 14));
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .con_conc .box_sticky {
    width: calc(1260 / 1440 * 100%);
  }
}
@media only screen and (max-width: 767px) {
  .con_conc .box_sticky {
    width: calc(388 / 428 * 100%);
  }
}
@media only screen and (min-width: 768px) {
  .con_conc .box_sticky {
    margin-bottom: calc(var(--vh) * 100 - 1);
    height: calc(var(--vh) * 100);
    position: sticky;
    top: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1;
  }
}
.con_conc .box_txt .catch {
  color: #C3BCB5;
  line-height: 1.8;
}
.con_conc .box_txt .catch span {
  letter-spacing: .2em;
}
.con_conc .box_txt .txt {
  margin-top: 1.5em;
  line-height: 2.8;
}
@media only screen and (max-width: 767px) {
  .con_conc .box_txt .txt {
    line-height: 2.3;
  }
}
@media only screen and (min-width: 768px) {
  .con_conc:has(.box_sticky) .box_imgs {
    margin-top: calc(var(--vh) * 100 * -1);
  }
}
.con_conc .box_imgs {
  margin-right: auto;
  margin-left: auto;
  min-height: calc(var(--vh) * 100);
}
@media only screen and (min-width: 1025px) {
  .con_conc .box_imgs {
    width: calc(1360 / 1440 * 100%);
    max-width: calc(1360px);
  }
}
@media only screen and (min-width: 1441px) {
  .con_conc .box_imgs {
    max-width: calc(1360px * ((18 + 0) / 14));
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .con_conc .box_imgs {
    width: calc(1360 / 1440 * 100%);
  }
}
@media only screen and (max-width: 767px) {
  .con_conc .box_imgs {
    width: calc(348 / 428 * 100%);
  }
}
.con_conc .box_imgs .cap {
  line-height: 1.5;
  margin-top: 1em;
  display: block;
}
@media only screen and (max-width: 767px) {
  .con_conc .box_imgs .cap {
    margin-top: .75em;
  }
}
@media only screen and (max-width: 767px) and (max-width: 767px) {
  .con_conc .box_imgs .cap {
    font-size: 0.87rem;
  }
}

.con_conc .box_imgs p {
  --p: 1360;
  --wp: 1360;
  --mz: 100;
}
@media only screen and (max-width: 767px) {
  .con_conc .box_imgs p {
    margin-top: 3rem;
  }
}
.con_conc .box_imgs p[class*="posl"] {
  margin-left: 0;
  margin-right: auto;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .con_conc .box_imgs p[class*="posl"] .cap {
    margin-right: -1em;
  }
}
.con_conc .box_imgs p[class*="posr"] {
  margin-left: auto;
  margin-right: 0;
}
.con_conc .box_imgs p[class*="posr"] .cap {
  text-align: right;
}
@media only screen and (max-width: 767px) {
  .con_conc .box_imgs p[class*="posr"] .cap {
    margin-left: -1em;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .con_conc .box_imgs p {
    --mz: 300;
  }
}
@media only screen and (max-width: 767px) {
  .con_conc .box_imgs p {
    --wp: 550;
  }
}
.con_conc .box_imgs p.img_conc01_01_posl {
  width: calc(270 / var(--wp) * 100%);
}
@media only screen and (min-width: 768px) {
  .con_conc .box_imgs p.img_conc01_01_posl {
    margin-left: calc(200 / var(--wp) * 100%);
  }
}
.con_conc .box_imgs p.img_conc01_02_posr {
  width: calc(402 / var(--wp) * 100%);
}
@media only screen and (min-width: 768px) {
  .con_conc .box_imgs p.img_conc01_02_posr {
    margin-top: calc(calc(-100 + var(--mz)) / var(--p) * 100%);
  }
}
.con_conc .box_imgs p.img_conc01_03_posl {
  width: calc(400 / var(--wp) * 100%);
}
@media only screen and (min-width: 768px) {
  .con_conc .box_imgs p.img_conc01_03_posl {
    margin-left: calc(90 / var(--wp) * 100%);
    margin-top: calc(calc(70 + var(--mz)) / var(--p) * 100%);
  }
}
.con_conc .box_imgs p.img_conc01_04_posr {
  width: calc(303 / var(--wp) * 100%);
}
@media only screen and (min-width: 768px) {
  .con_conc .box_imgs p.img_conc01_04_posr {
    margin-left: auto;
    margin-right: calc(120 / var(--wp) * 100%);
    margin-top: calc(calc(-430 + var(--mz)) / var(--p) * 100%);
  }
}
.con_conc .box_imgs p.img_conc01_05_posr {
  width: calc(332 / var(--wp) * 100%);
}
@media only screen and (min-width: 768px) {
  .con_conc .box_imgs p.img_conc01_05_posr {
    margin-top: calc(calc(355 + var(--mz)) / var(--p) * 100%);
    margin-right: calc(300 / var(--wp) * 100%);
    margin-left: auto;
  }
}
@media only screen and (max-width: 767px) {
  .con_conc .box_imgs p.img_conc01_05_posr {
    margin-left: 0;
  }
}
.con_conc .box_imgs p.img_conc02_01_posl {
  width: calc(226 / var(--wp) * 100%);
}
@media only screen and (min-width: 768px) {
  .con_conc .box_imgs p.img_conc02_01_posl {
    margin-left: calc(calc(215 + var(--mz)) / var(--wp) * 100%);
  }
}
@media only screen and (max-width: 767px) {
  .con_conc .box_imgs p.img_conc02_01_posl {
    margin-right: 0;
    margin-left: auto;
  }
}
.con_conc .box_imgs p.img_conc02_02_posl {
  width: calc(411 / var(--wp) * 100%);
}
@media only screen and (min-width: 768px) {
  .con_conc .box_imgs p.img_conc02_02_posl {
    margin-left: calc(90 / var(--wp) * 100%);
    margin-top: calc(calc(287 + var(--mz)) / var(--wp) * 100%);
  }
}
.con_conc .box_imgs p.img_conc02_03_posr {
  width: calc(489 / var(--wp) * 100%);
}
@media only screen and (min-width: 768px) {
  .con_conc .box_imgs p.img_conc02_03_posr {
    margin-top: calc(calc(-185 + var(--mz)) / var(--p) * 100%);
  }
}
.con_conc .box_imgs p.img_conc02_04_posl {
  width: calc(411 / var(--wp) * 100%);
}
@media only screen and (min-width: 768px) {
  .con_conc .box_imgs p.img_conc02_04_posl {
    margin-top: calc(calc(-100 + var(--mz)) / var(--p) * 100%);
  }
}
.con_conc .box_imgs p.img_conc02_05_posr {
  width: calc(269 / var(--wp) * 100%);
}
@media only screen and (min-width: 768px) {
  .con_conc .box_imgs p.img_conc02_05_posr {
    margin-right: calc(65 / var(--wp) * 100%);
    margin-top: calc(calc(-300 + var(--mz)) / var(--p) * 100%);
  }
}
.con_conc .box_imgs p.img_conc02_06_posr {
  width: calc(489 / var(--wp) * 100%);
}
@media only screen and (min-width: 768px) {
  .con_conc .box_imgs p.img_conc02_06_posr {
    margin-right: calc(40 / var(--wp) * 100%);
    margin-top: calc(calc(100 + var(--mz)) / var(--wp) * 100%);
  }
}
@media only screen and (min-width: 768px) {
  .con_conc .box_imgs p.img_conc02_07_posl {
    width: calc(330 / var(--wp) * 100%);
    margin-left: calc(160 / var(--wp) * 100%);
    margin-top: calc(calc(-100 + var(--mz)) / var(--p) * 100%);
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .con_conc .box_imgs p.img_conc02_07_posl {
    margin-left: calc(190 / var(--wp) * 100%);
  }
}
@media only screen and (max-width: 767px) {
  .con_conc .box_imgs p.img_conc02_07_posl {
    width: calc(340 / var(--wp) * 100%);
  }
}
.con_conc .box_imgs p.img_conc03_01_posl {
  width: calc(305 / var(--wp) * 100%);
}
@media only screen and (min-width: 768px) {
  .con_conc .box_imgs p.img_conc03_01_posl {
    margin-left: calc(100 / var(--wp) * 100%);
  }
}
.con_conc .box_imgs p.img_conc03_02_posr {
  width: calc(470 / var(--wp) * 100%);
}
@media only screen and (min-width: 768px) {
  .con_conc .box_imgs p.img_conc03_02_posr {
    margin-top: calc(calc(190 + var(--mz)) / var(--p) * 100%);
  }
}
.con_conc .box_imgs p.img_conc03_03_posl {
  width: calc(395 / var(--wp) * 100%);
}
@media only screen and (min-width: 768px) {
  .con_conc .box_imgs p.img_conc03_03_posl {
    margin-left: calc(100 / var(--wp) * 100%);
    margin-top: calc(calc(-130 + var(--mz)) / var(--p) * 100%);
  }
}
.con_conc .box_imgs p.img_conc03_04_posr {
  width: calc(398 / var(--wp) * 100%);
}
@media only screen and (min-width: 768px) {
  .con_conc .box_imgs p.img_conc03_04_posr {
    margin-right: calc(90 / var(--wp) * 100%);
    margin-top: calc(calc(-185 + var(--mz)) / var(--p) * 100%);
  }
}
.con_conc .box_imgs p.img_conc03_05_posl {
  width: calc(434 / var(--wp) * 100%);
}
@media only screen and (min-width: 768px) {
  .con_conc .box_imgs p.img_conc03_05_posl {
    margin-top: calc(calc(150 + var(--mz)) / var(--p) * 100%);
  }
}
.con_conc .box_imgs p.img_conc03_06_posr {
  width: calc(271 / var(--wp) * 100%);
}
@media only screen and (min-width: 768px) {
  .con_conc .box_imgs p.img_conc03_06_posr {
    margin-right: calc(80 / var(--wp) * 100%);
    margin-top: calc(calc(-335 + var(--mz)) / var(--p) * 100%);
  }
}
.con_conc .box_imgs p.img_conc04_01_posr {
  width: calc(305 / var(--wp) * 100%);
}
@media only screen and (min-width: 768px) {
  .con_conc .box_imgs p.img_conc04_01_posr {
    margin-right: calc(50 / var(--wp) * 100%);
    margin-top: calc(calc(350 + var(--mz)) / var(--p) * 100%);
  }
}
.con_conc .box_imgs p.img_conc04_02_posl {
  width: calc(353 / var(--wp) * 100%);
}
@media only screen and (min-width: 768px) {
  .con_conc .box_imgs p.img_conc04_02_posl {
    margin-left: calc(90 / var(--wp) * 100%);
    margin-top: calc(calc(-80 + var(--mz)) / var(--p) * 100%);
  }
}
.con_conc .box_imgs p.img_conc04_03_posr {
  width: calc(270 / var(--wp) * 100%);
}
@media only screen and (min-width: 768px) {
  .con_conc .box_imgs p.img_conc04_03_posr {
    margin-right: calc(110 / var(--wp) * 100%);
    margin-top: calc(calc(90 + var(--mz)) / var(--p) * 100%);
  }
}
@media only screen and (max-width: 767px) {
  .con_conc .box_imgs p.img_conc04_03_posr {
    width: 35%;
  }
}
.con_conc .box_imgs p.img_conc04_04_posl {
  width: calc(367 / var(--wp) * 100%);
}
@media only screen and (min-width: 768px) {
  .con_conc .box_imgs p.img_conc04_04_posl {
    margin-left: calc(130 / var(--wp) * 100%);
    margin-top: calc(calc(-120 + var(--mz)) / var(--p) * 100%);
  }
}
@media only screen and (max-width: 767px) {
  .con_conc .box_imgs p.img_conc04_04_posl {
    width: 85%;
  }
}
