@charset "UTF-8";
/*アニメーション
----------------------------*/
@keyframes fadeInSimple {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes sliderPagination {
  0% {
    transform: scaleX(0);
    opacity: 0;
  }
  100% {
    transform: scaleX(1);
    opacity: 1;
  }
}
/*共通
----------------------------*/
.l-container {
  width: 100%;
}

.l-footer {
  padding: 0;
}

.pc-footer {
  margin: 0;
}

.pc-header-main.is-fixed {
  z-index: 999;
}

#feature {
  width: 100%;
  margin: 0 auto;
  color: #231815;
  box-sizing: border-box;
  text-align: center;
  font-family: "Times New Roman", serif;
  font-weight: 400;
  font-style: normal;
  font-feature-settings: "palt";
  position: relative;
  overflow: clip;
  opacity: 0;
  transition: 0.3s;
}
#feature.is_show {
  opacity: 1;
}
#feature * {
  padding: 0;
  margin: 0;
  box-sizing: border-box;
}
#feature a {
  width: 100%;
  height: auto;
  display: block;
  color: #231815;
}
#feature a:hover {
  text-decoration: none;
}
#feature img {
  width: 100%;
  height: auto;
  display: block;
}
#feature figure {
  background-color: #fff;
}
#feature .fadeimg {
  transition: 0.3s;
}

#feature {
  /*メインビジュアル（.hero)
  ----------------------------*/
}
#feature .stickyarea {
  width: 100%;
  height: calc(100vh - 80px);
  padding-top: calc(67 * (var(--vw) / 2100));
  position: sticky;
  top: 80px;
  left: 0;
  z-index: 100;
  pointer-events: none;
}
#feature .stickyarea .logo {
  width: calc(202 * (var(--vw) / 2100));
  margin: 0 auto;
}
#feature .stickyarea .follow {
  width: fit-content;
  margin: calc(23 * (var(--vw) / 2100)) 0 0 calc(55 * (var(--vw) / 2100));
  text-align: left;
}
#feature .stickyarea .follow .follow__ttl {
  width: fit-content;
  font-size: calc(15 * (var(--vw) / 2100));
  line-height: calc(26.09 * (var(--vw) / 2100));
  letter-spacing: 0.02em;
}
#feature .stickyarea .follow .follow__txt {
  width: fit-content;
  font-size: calc(14 * (var(--vw) / 2100));
  line-height: calc(22.09 * (var(--vw) / 2100));
  position: relative;
}
#feature .stickyarea .follow .follow__txt.is_show::after {
  content: '';
  width: calc(100% - calc(16 * (var(--vw) / 2100)));
  height: 1px;
  background-color: #231815;
  position: absolute;
  bottom: calc(8 * (var(--vw) / 2100));
  right: 0;
}
#feature .hero {
  width: 100%;
  height: calc(100vh - 80px);
  margin-top: calc(-100vh + 80px);
  background-color: #bbd9ef;
  position: relative;
}
#feature .hero .hero__txt {
  width: fit-content;
  font-size: calc(18 * (var(--vw) / 2100));
  line-height: calc(24.09 * (var(--vw) / 2100));
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
#feature .sec {
  position: relative;
}
#feature .sec .sec__credit {
  width: calc(20 * (var(--vw) / 2100));
  height: 100%;
  position: absolute;
  top: 0;
  right: calc(28 * (var(--vw) / 2100));
  opacity: 0;
  transition: .3s;
}
#feature .sec .sec__credit .credit {
  display: flex;
  justify-content: center;
  flex-wrap: nowrap;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) rotate(90deg);
  transform-origin: center;
}
#feature .sec .sec__credit .credit .item {
  width: fit-content;
  margin: 0 calc(14 * (var(--vw) / 2100));
  position: relative;
}
#feature .sec .sec__credit .credit .item::after {
  content: "/";
  font-size: calc(14 * (var(--vw) / 2100));
  line-height: calc(26.09 * (var(--vw) / 2100));
  position: absolute;
  bottom: 0;
  right: calc(-15 * (var(--vw) / 2100));
}
#feature .sec .sec__credit .credit .item:last-child::after {
  display: none;
}
#feature .sec .sec__credit .credit .item .link {
  display: flex;
  flex-wrap: nowrap;
  transition: 0.3s;
}
#feature .sec .sec__credit .credit .item .link:hover {
  opacity: 0.7;
}
#feature .sec .sec__credit .credit .item .link span {
  font-size: calc(14 * (var(--vw) / 2100));
  line-height: calc(26.09 * (var(--vw) / 2100));
  letter-spacing: 0.045em;
  white-space: nowrap;
}
#feature .sec .sec__modelcredit {
  width: calc(600 * (var(--vw) / 2100));
  position: absolute;
  top: calc(100% - calc(200 * (var(--vw) / 2100)) + calc(16 * (var(--vw) / 2100)));
}
#feature .sec .sec__modelcredit .credit {
  display: flex;
  justify-content: flex-start;
  flex-wrap: wrap;
}
#feature .sec .sec__modelcredit .credit .item {
  width: fit-content;
  margin: 0 calc(14 * (var(--vw) / 2100)) 0 0;
  position: relative;
}
#feature .sec .sec__modelcredit .credit .item::after {
  content: "/";
  font-size: calc(15 * (var(--vw) / 2100));
  line-height: calc(26.09 * (var(--vw) / 2100));
  position: absolute;
  bottom: 0;
  right: calc(-9 * (var(--vw) / 2100));
}
#feature .sec .sec__modelcredit .credit .item.break::after {
  display: none;
}
#feature .sec .sec__modelcredit .credit .item:last-child::after {
  display: none;
}
#feature .sec .sec__modelcredit .credit .item .link {
  display: flex;
  flex-wrap: nowrap;
  transition: 0.3s;
}
#feature .sec .sec__modelcredit .credit .item .link:hover {
  opacity: 0.7;
}
#feature .sec .sec__modelcredit .credit .item .link span {
  font-size: calc(15 * (var(--vw) / 2100));
  line-height: calc(26.09 * (var(--vw) / 2100));
  white-space: nowrap;
}
#feature .sec .sec__modelcredit.sec__modelcredit02 {
  width: calc(500 * (var(--vw) / 2100));
}
#feature .sec .sec__modelcredit.sec__modelcredit04 {
  width: calc(400 * (var(--vw) / 2100));
}
#feature .sec .sec__modelcredit.sec__modelcredit05 {
  width: calc(400 * (var(--vw) / 2100));
}
#feature .sec .sec__modelcredit.sec__modelcredit11 {
  width: calc(400 * (var(--vw) / 2100));
}
#feature .sec .sec__modelcredit.sec__modelcredit13 {
  width: calc(420 * (var(--vw) / 2100));
}
#feature .sec .sec__modelcredit.sec__modelcredit14 {
  width: calc(500 * (var(--vw) / 2100));
}
#feature .sec .sec__modelcredit.sec__modelcredit15 {
  width: calc(400 * (var(--vw) / 2100));
}
#feature .sec .sec__flex {
  display: flex;
  position: relative;
}
#feature .sec .sec__flex.is_reverse {
  flex-direction: row-reverse;
}
#feature .sec .sec__img {
  width: calc(100vw / 3 - (16 * (var(--vw) / 2100)));
  position: relative;
}
#feature .sec .sec__img:hover .sec__credit {
  opacity: 1;
}
#feature .sec .sec__img::after {
  font-size: calc(14 * (var(--vw) / 2100));
  line-height: calc(34.61 * (var(--vw) / 2100));
  font-weight: 700;
  position: absolute;
  bottom: calc(7 * (var(--vw) / 2100));
  right: calc(18 * (var(--vw) / 2100));
}
#feature .sec .sec__img.sec__img01::after {
  content: "01";
}
#feature .sec .sec__img.sec__img02::after {
  content: "02";
}
#feature .sec .sec__img.sec__img03::after {
  content: "03";
}
#feature .sec .sec__img.sec__img04::after {
  content: "04";
}
#feature .sec .sec__img.sec__img05::after {
  content: "05";
}
#feature .sec .sec__img.sec__img06::after {
  content: "06";
}
#feature .sec .sec__img.sec__img07::after {
  content: "07";
}
#feature .sec .sec__img.sec__img08::after {
  content: "08";
}
#feature .sec .sec__img.sec__img09::after {
  content: "09";
}
#feature .sec .sec__img.sec__img10::after {
  content: "10";
}
#feature .sec .sec__img.sec__img11::after {
  content: "11";
}
#feature .sec .sec__img.sec__img12::after {
  content: "12";
}
#feature .sec .sec__img.sec__img13::after {
  content: "13";
}
#feature .sec .sec__img.sec__img14::after {
  content: "14";
}
#feature .sec .sec__img.sec__img15::after {
  content: "15";
}
#feature .sec .sec__imgarea {
  margin-top: calc(11 * (var(--vw) / 2100));
  display: flex;
  justify-content: space-between;
}
#feature .sec .sec__imgarea .sec__img {
  opacity: 0;
  transition: opacity 800ms, transform 500ms;
}
#feature .sec .sec__imgarea.is_show .sec__img {
  opacity: 1;
  transition: 0.3s;
}
#feature .sec .sec__imgarea.is_show .sec__img:nth-child(2) {
  transition-delay: 0.2s;
}
#feature .sec .sec__imgarea.is_show .sec__img:nth-child(3) {
  transition-delay: 0.4s;
}
#feature .sec .sec__modelno {
  width: fit-content;
  font-size: calc(19.53 * (var(--vw) / 2100));
  line-height: calc(34.61 * (var(--vw) / 2100));
  font-weight: 700;
}
#feature .sec .sec__modelarea {
  width: 100%;
  height: calc(100vh - 80px);
  display: flex;
}
#feature .sec .sec__modelarea:nth-child(1) .sec__modelblock {
  background-color: #b6d3e9;
}
#feature .sec .sec__modelarea:nth-child(2) .sec__modelblock {
  background-color: #932f3e;
}
#feature .sec .sec__modelarea:nth-child(3) .sec__modelblock {
  background-color: #aca091;
}
#feature .sec .sec__modelarea:nth-child(4) .sec__modelblock {
  background-color: #e0dfda;
}
#feature .sec .sec__modelarea:nth-child(5) .sec__modelblock {
  background-color: #b6d3e9;
}
#feature .sec .sec__modelarea:nth-child(6) .sec__modelblock {
  background-color: #ffffff;
}
#feature .sec .sec__modelarea:nth-child(7) .sec__modelblock {
  background-color: #aca091;
}
#feature .sec .sec__modelarea:nth-child(8) .sec__modelblock {
  background-color: #b9bcb3;
}
#feature .sec .sec__modelarea:nth-child(9) .sec__modelblock {
  background-color: #ffffff;
}
#feature .sec .sec__modelarea:nth-child(10) .sec__modelblock {
  background-color: #e0dfda;
}
#feature .sec .sec__modelarea:nth-child(11) .sec__modelblock {
  background-color: #b9bcb3;
}
#feature .sec .sec__modelarea:nth-child(12) .sec__modelblock {
  background-color: #b6d3e9;
}
#feature .sec .sec__modelarea:nth-child(13) .sec__modelblock {
  background-color: #932f3e;
}
#feature .sec .sec__modelarea:nth-child(14) .sec__modelblock {
  background-color: #aca091;
}
#feature .sec .sec__modelarea:nth-child(15) .sec__modelblock {
  background-color: #ffffff;
}
#feature .sec .sec__modelblock {
  width: calc(1083 * (var(--vw) / 2100));
  height: 100%;
  padding: 0 0 calc(200 * (var(--vw) / 2100)) calc(53 * (var(--vw) / 2100));
  text-align: left;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
}
#feature .sec .sec__modelimg {
  width: calc(1017 * (var(--vw) / 2100));
  height: 100%;
  position: relative;
}
#feature .sec .sec__modelimg figure {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  overflow: hidden;
  opacity: 0;
  pointer-events: none;
}
#feature .sec .sec__modelimg figure:nth-child(1) {
  z-index: 4;
}
#feature .sec .sec__modelimg figure:nth-child(2) {
  z-index: 3;
}
#feature .sec .sec__modelimg figure:nth-child(3) {
  z-index: 2;
}
#feature .sec .sec__modelimg figure.is_show {
  opacity: 1;
}
#feature .sec .sec__modelimg a {
  width: 100%;
  height: 100%;
}
#feature .sec .sec__modelimg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
#feature .sec .sec__modellist {
  margin-top: calc(3 * (var(--vw) / 2100));
  display: flex;
}
#feature .sec .sec__modellist .sec__modelitem {
  width: calc(197 * (var(--vw) / 2100));
  height: calc(246 * (var(--vw) / 2100));
  margin-right: calc(11 * (var(--vw) / 2100));
  overflow: hidden;
  cursor: pointer;
  background-color: #fff;
}
#feature .sec .sec__modellist .sec__modelitem img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: 0.3s;
}
#feature .sec .sec__modellist .sec__modelitem img:hover {
  opacity: 0.7;
}
#feature .sec.sec01 {
  padding-bottom: calc(11 * (var(--vw) / 2100));
}
#feature .sec.sec02 .sec__sticky {
  height: calc((100vh - 80px) * 16);
  position: sticky;
  top: 80px;
}
#feature .sec.sec02 .sec__sticky .sec__stickyarea {
  height: calc(100vh - 80px);
  position: sticky;
  top: 80px;
}
#feature .sec.sec02 .sec__sticky .sec__stickyitem {
  width: 100%;
  height: calc((100vh - 80px) * 1);
  position: absolute;
  top: 0;
  pointer-events: none;
}
#feature .sec.sec02 .sec__sticky .sec__stickyitem:nth-child(3) {
  top: calc((100vh - 80px) * 2);
}
#feature .sec.sec02 .sec__sticky .sec__stickyitem:nth-child(4) {
  top: calc((100vh - 80px) * 3);
}
#feature .sec.sec02 .sec__sticky .sec__stickyitem:nth-child(5) {
  top: calc((100vh - 80px) * 4);
}
#feature .sec.sec02 .sec__sticky .sec__stickyitem:nth-child(6) {
  top: calc((100vh - 80px) * 5);
}
#feature .sec.sec02 .sec__sticky .sec__stickyitem:nth-child(7) {
  top: calc((100vh - 80px) * 6);
}
#feature .sec.sec02 .sec__sticky .sec__stickyitem:nth-child(8) {
  top: calc((100vh - 80px) * 7);
}
#feature .sec.sec02 .sec__sticky .sec__stickyitem:nth-child(9) {
  top: calc((100vh - 80px) * 8);
}
#feature .sec.sec02 .sec__sticky .sec__stickyitem:nth-child(10) {
  top: calc((100vh - 80px) * 9);
}
#feature .sec.sec02 .sec__sticky .sec__stickyitem:nth-child(11) {
  top: calc((100vh - 80px) * 10);
}
#feature .sec.sec02 .sec__sticky .sec__stickyitem:nth-child(12) {
  top: calc((100vh - 80px) * 11);
}
#feature .sec.sec02 .sec__sticky .sec__stickyitem:nth-child(13) {
  top: calc((100vh - 80px) * 12);
}
#feature .sec.sec02 .sec__sticky .sec__stickyitem:nth-child(14) {
  top: calc((100vh - 80px) * 13);
}
#feature .sec.sec02 .sec__sticky .sec__stickyitem:nth-child(15) {
  top: calc((100vh - 80px) * 14);
}
#feature .sec.sec02 .sec__sticky .sec__stickyitem:nth-child(16) {
  top: calc((100vh - 80px) * 15);
}
#feature .sec.sec02 .sec__sticky .sec__modelarea {
  position: absolute;
  top: 0;
  opacity: 0;
  pointer-events: none;
  z-index: 3;
}
#feature .sec.sec02 .sec__sticky .sec__modelarea:nth-child(1) {
  opacity: 1;
  pointer-events: auto;
  z-index: 2;
}
#feature .sec.sec02 .sec__sticky .sec__modelarea:nth-child(1) .sec__modelimg figure.is_show {
  opacity: 1;
  pointer-events: auto;
}
#feature .sec.sec02 .sec__sticky .sec__modelarea.is_show {
  opacity: 1;
  pointer-events: auto;
}
#feature .sec.sec02 .sec__sticky .sec__modelarea.is_show .sec__modelimg figure.is_show {
  opacity: 1;
  pointer-events: auto;
}
#feature .sec.sec03 {
  padding: 0 0 calc(103 * (var(--vw) / 2100)) 0;
  margin-top: calc(11 * (var(--vw) / 2100));
  background-color: #bbd9ef;
  height: calc(100vh - 80px);
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
}
#feature .sec.sec03 .sec__staff {
  font-size: calc(16 * (var(--vw) / 2100));
  line-height: calc(25.25 * (var(--vw) / 2100));
  letter-spacing: 0.04em;
}
#feature .sec.sec03 .sec__btn {
  width: fit-content;
  margin: calc(18 * (var(--vw) / 2100)) auto 0;
  font-size: calc(18 * (var(--vw) / 2100));
  line-height: calc(29.25 * (var(--vw) / 2100));
  letter-spacing: 0.05em;
  transition: 0.3s;
}
#feature .sec.sec03 .sec__btn:hover {
  opacity: 0.7;
}
