﻿/* パンくず 追加スタイル PC */
@media only screen and (min-width: 768px) {
  .breadcrumb__list {
    padding-bottom: 1.6rem;
  }
}

/* ページ共通___________________________*/
.main-area {
  font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "Yu Gothic", "Open Sans", "メイリオ", sans-serif;
  font-weight: 500;
  letter-spacing: 0.075em;
  line-height: 1.75;
  font-size: calc(14* (100vw / 375));
  padding-bottom: calc(80* (100vw / 375));
  overflow-x: hidden;
}

.main-area img {
  width: 100%;
  height: auto;
}

.main-area a,
.main-area picture {
  display: inline-block;
}

.ff_rbt {
  font-family: roboto, sans-serif;
  font-size: calc(12* (100vw / 375));
  font-weight: 400;
}


@media screen and (max-width: 767px) {
  .main-area .pcOnly {
    display: none;
  }
}

@media screen and (min-width: 768px) {
  .main-area {
    font-size: 1.4rem;
    padding-bottom: 12rem;
  }

  .main-area .spOnly {
    display: none;
  }

  .main-area a {
    transition: all 0.3s;
  }

  .ff_rbt {
    font-size: 1.2rem;
  }
}


/* ▽ sec__fv ▽ */
.sec__fv p {
  margin-top: calc(44.5* (100vw / 375));
  text-align: center;
}

@media screen and (min-width: 768px) {
  .sec__fv {
    width: 120rem;
    margin: auto;
  }

  .sec__fv p {
    margin-top: 7.4rem
  }
}

/* ▽ sec__item1 ▽ */
.sec__item1 {
  margin-top: calc(46* (100vw / 375));
}

.sec__item h3 {
  width: calc(282* (100vw / 375));
  margin-left: calc(15* (100vw / 375));
}

.sec__item-inner1 .item-img {
  position: relative;
  width: calc(260* (100vw / 375));
  margin: calc(31* (100vw / 375)) calc(15* (100vw / 375)) 0 auto;
}

.sec__item-inner1 .item-img::before {
  content: "";
  position: absolute;
  bottom: calc(-44* (100vw / 375));
  left: calc(-65* (100vw / 375));
  width: calc(340* (100vw / 375));
  height: calc(260* (100vw / 375));
  background: #F0EAD8;
  z-index: -1;
}

@media screen and (min-width: 768px) {
  .sec__item1 {
    position: relative;
    margin-top: 7.6rem;
  }

  .sec__item-inner1 {
    position: relative;
    display: flex;
    justify-content: space-between;
    flex-direction: row-reverse;
    width: 87.2rem;
    margin-left: 50%;
    transform: translateX(-53.2%);
  }

  .sec__item h3 {
    position: absolute;
    width: 31.1rem;
    top: 4.6rem;
    left: 0;
    margin: initial;
  }

  .sec__item-inner1 .item-img {
    width: 40rem;
    margin: initial;
  }

  .sec__item-inner1 .item-img::before {
    bottom: -6rem;
    left: -8rem;
    width: 100vw;
    height: 40rem;
  }
}

.item-tx {
  width: calc(305* (100vw / 375));
  margin: calc(77* (100vw / 375)) auto 0;
}

.item-tx-read {
  font-size: calc(20* (100vw / 375));
  font-weight: 600;
  letter-spacing: 0.075em;
}

.item-tx-detali {
  margin-top: calc(5* (100vw / 375));
}

.item-tx-credit {
  margin-top: calc(34* (100vw / 375));
}

.item-tx-credit div {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
}

.item-tx-credit div::after {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  width: 74%;
  height: 1px;
  background-image: linear-gradient(to right, #000, #000 1px, transparent 1px, transparent 2px);
  background-size: 4px 2px;
  background-position: left bottom;
  background-repeat: repeat-x;
  z-index: -1;
}

.item-tx-credit div+div {
  margin-top: calc(15* (100vw / 375));
}

.item-tx-credit dt {
  width: fit-content;
  background: #fff;
  padding-right: calc(5* (100vw / 375));
}

.item-tx-credit dt p {
  letter-spacing: 0.075em;
}

.item-tx-credit dd {
  width: calc(70* (100vw / 375));
  background: #fff;
}

.item-tx-credit-name {
  font-weight: 600;
}

.item-tx-credit .item-tx-credit-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  line-height: 1;
  height: calc(28* (100vw / 375));
  border-radius: calc(20* (100vw / 375));
  background: #000;
  color: #fff;
}

@media screen and (min-width: 768px) {
  .item-tx {
    width: 31.2rem;
    margin: 12.5rem 0 0 0;
  }

  .item-tx-read {
    font-size: 2rem;
  }

  .item-tx-detali {
    margin-top: 2.6rem;
  }

  .item-tx-credit {
    margin-top: 5.6rem;
  }

  .item-tx-credit div+div {
    margin-top: 1.5rem;
  }

  .item-tx-credit dt {
    padding-right: 1rem;
  }

  .item-tx-credit dd {
    width: 7rem;
  }

  .item-tx-credit .item-tx-credit-btn {
    height: 2.4rem;
    border-radius: 2rem;
  }
}

.sec__item1-inner2 {
  position: relative;
  width: calc(375* (100vw / 375));
  height: calc(525* (100vw / 375));
  margin-top: calc(37* (100vw / 375));
}

.sec__item-inner2 .imgbox:nth-of-type(1) {
  position: absolute;
  top: 0;
  right: 0;
  width: calc(190* (100vw / 375));
}

.sec__item-inner2 .imgbox:nth-of-type(2) {
  position: absolute;
  top: calc(114* (100vw / 375));
  left: 0;
  width: calc(165* (100vw / 375));
}

.sec__item-inner2 .imgbox:nth-of-type(3) {
  position: absolute;
  bottom: 0;
  right: 0;
  width: calc(190* (100vw / 375));
}

@media screen and (min-width: 768px) {
  .sec__item1-inner2 {
    position: relative;
    width: 92.8rem;
    height: 141.1rem;
    margin: 12rem auto 0;
  }

  .sec__item-inner2 .imgbox:nth-of-type(1) {
    width: 45rem;
  }

  .sec__item-inner2 .imgbox:nth-of-type(2) {
    top: 21rem;
    width: 40rem;
  }

  .sec__item-inner2 .imgbox:nth-of-type(3) {
    right: 26.8rem;
    width: 46rem;
  }
}

/* sec__item2___________________________*/
.sec__item2 {
  margin-top: calc(50* (100vw / 375));
}

.sec__item2 h3 {
  width: calc(295* (100vw / 375));
  margin-left: auto;
  margin-right: calc(15* (100vw / 375));
}

.sec__item2 .item2-img {
  width: calc(260* (100vw / 375));
  margin: calc(32* (100vw / 375)) 0 0 calc(15* (100vw / 375));
}

.sec__item2 .item2-img::before {
  background: #D4D9DC;
  left: calc(-15* (100vw / 375));
}

.sec__item2-inner2 .imgbox:nth-of-type(1) {
  position: relative;
  width: calc(280* (100vw / 375));
  margin: calc(37* (100vw / 375)) calc(15* (100vw / 375)) 0 auto;
}

@media screen and (min-width: 768px) {
  .sec__item2 {
    margin-top: 12rem;
  }

  .sec__item2-inner1 {
    flex-direction: row;
    transform: translateX(-46.8%);
  }

  .sec__item2 h3 {
    width: 32.5rem;
    top: 8.5rem;
    left: initial;
    right: 0;
    margin: initial;
  }

  .sec__item2-inner1 .item-img {
    width: 40rem;
    margin: initial;
  }

  .sec__item2-inner1 .item-img::before {
    left: initial;
    right: -8rem;
  }

  .sec__item2 .item-tx {
    width: 32.5rem;
    margin: 16.4rem 0 0 0;
  }

  .sec__item2-inner2 .imgbox:nth-of-type(1) {
    width: 45rem;
    margin: 12rem 0 0 50%;
    transform: translateX(-38%);
  }
}

/* sec__item3___________________________*/
.sec__item3 {
  margin-top: calc(50* (100vw / 375));
}

.sec__item3 h3 {
  width: calc(309* (100vw / 375));
}

.sec__item3-inner2 {
  position: relative;
  width: calc(375* (100vw / 375));
  height: calc(658* (100vw / 375));
  margin-top: calc(37* (100vw / 375));
}

.sec__item3-inner2 .imgbox:nth-of-type(1) {
  right: initial;
  left: 50%;
  transform: translateX(-50%);
  width: calc(220* (100vw / 375));
}

.sec__item3-inner2 .imgbox:nth-of-type(2) {
  top: calc(312* (100vw / 375));
  width: calc(170* (100vw / 375));
}

.sec__item3 .item3-tx-credit {
  width: calc(305* (100vw / 375));
  margin: calc(38* (100vw / 375)) auto 0;
}

@media screen and (min-width: 768px) {
  .sec__item3 {
    margin-top: 12rem;
  }

  .sec__item3 h3 {
    width: 33.9rem;
  }

  .sec__item3-inner1 {
    gap: 13.3rem;
  }

  .sec__item3-inner2 {
    position: relative;
    width: 92.8rem;
    height: 173.9rem;
    margin: 12rem auto 0;
  }

  .sec__item3-inner2 .imgbox:nth-of-type(1) {
    width: 51rem;
  }

  .sec__item3-inner2 .imgbox:nth-of-type(2) {
    top: 74rem;
    width: 40rem;
  }

  .sec__item3-inner2 .imgbox:nth-of-type(3) {
    right: 0;
  }

  .sec__item3 .item-tx {
    width: 34rem;
    margin: 12.4rem 0 0 0;
  }

  .sec__item3 .item-tx-credit {
    margin-top: 5.9rem;
  }

  .sec__item3 .item3-tx-credit {
    width: 35.5rem;
    margin: 1.8rem 0 0 0;
  }

  .sec__item3 .item3-tx-credit div::after {
    width: 76%;
  }
}

/* lp_foot_btn___________________________*/
.lp_foot_btn {
  display: flex;
  align-items: center;
  flex-direction: column;
  gap: calc(16* (100vw / 375));
  width: calc(320* (100vw / 375));
  margin: calc(77* (100vw / 375)) auto 0;
}

.lp_foot_btn a {
  display: flex;
  line-height: 1;
  align-items: center;
  justify-content: center;
  font-size: calc(16* (100vw / 375));
  letter-spacing: 0.1em;
  width: 100%;
  height: calc(45* (100vw / 375));
  border: #000 1px solid;
}

.lp_foot_btn a:nth-last-of-type(1) {
  background: #D4D9DC;
  color: #fff;
  border: none;
}

@media screen and (min-width: 768px) {
  .lp_foot_btn {
    gap: 2rem;
    width: 36rem;
    margin: 11.8rem auto 0;
  }

  .lp_foot_btn a {
    font-size: 1.6rem;
    height: 5rem;
  }
}

/* ▽ animation ▽ */
.js_imgFadeIn {
  opacity: 0;
  transition: transform 1s ease-in-out, opacity 1s ease-in-out;
}

.imgAnimated {
  opacity: 1;
}