@charset "UTF-8";
/*--------------------------------------*
* vw変換(PC用)
*--------------------------------------*/
html,
body {
  width: 100%;
  height: 100%;
  font-size: 3.4666666667vw;
  margin: 0 auto;
  background: #dbd1b5;
  font-family: "minion-pro", serif;
  font-weight: 400;
  font-style: normal;
  letter-spacing: 0.05em;
}
@media screen and (min-width: 1024px) {
  html,
  body {
    font-size: 0.9722222222vw;
  }
}

img {
  width: 100%;
  display: block;
  border: none;
}

a {
  display: block;
  text-decoration: none;
  color: #000;
}

.spNone {
  display: none;
}
@media screen and (max-width: 767px) {
  .spNone {
    display: none;
  }
}
@media screen and (min-width: 1024px) {
  .spNone {
    display: block;
  }
}

@media screen and (max-width: 767px) {
  .pcNone {
    display: block;
  }
}
@media screen and (min-width: 1024px) {
  .pcNone {
    display: none;
  }
}

/*--------------------------------------*
* ローディング
*--------------------------------------*/
#loading-bg {
  position: fixed;
  width: 100%;
  height: 100%;
  top: 0px;
  left: 0px;
  background: #fff;
  z-index: 999;
}

.main {
  position: relative;
  width: 100%;
  height: 100dvh;
}
.main .fv_img {
  position: absolute;
  background-image: url(../assets/images/fv.jpg);
  background-repeat: no-repeat;
  background-position: 73% top;
  background-size: cover;
  width: 100%;
  height: 100dvh;
}
@media screen and (min-width: 1024px) {
  .main .fv_img {
    background-position: center;
    background-position: right center;
  }
}
.main .title {
  position: absolute;
  top: 80%;
  left: 50%;
  transform: translateX(-50%);
  z-index: 10;
  width: 88vw;
}
@media screen and (min-width: 1024px) {
  .main .title {
    width: 43.1944444444vw;
    top: 75%;
    left: 26%;
  }
}

.read {
  margin: 21.3333333333vw auto 29.3333333333vw;
  text-align: center;
  line-height: 2.2;
}
@media screen and (min-width: 1024px) {
  .read {
    margin: 11.1111111111vw auto 13.8888888889vw;
    font-size: 1.1111111111vw;
  }
}

ul.credit {
  margin: 0 auto;
  padding: 5.3333333333vw 0;
  text-align: center;
  width: 76%;
}
@media screen and (min-width: 1024px) {
  ul.credit {
    width: 22.2222222222vw;
    margin: 0 auto;
    text-align: center;
    padding: 1.3888888889vw 0;
  }
}
ul.credit li {
  display: flex;
  justify-content: space-between;
  padding-top: 0.8vw;
}
@media screen and (min-width: 1024px) {
  ul.credit li {
    padding-top: 0.4861111111vw;
  }
}
ul.credit li:first-child {
  padding-top: 0;
}

@media screen and (min-width: 1024px) {
  .pc_flex {
    display: flex;
    gap: 4.1666666667vw;
    justify-content: center;
    margin: 0 auto;
  }
}

.sec03 .credit p,
.sec17 .credit p,
.sec18 .credit p,
.sec20 .credit p {
  text-align: left;
}

.sec20 ul li:nth-child(4) a {
  text-align: right;
}

.credit a:has(.nolink) {
  pointer-events: none;
  opacity: 0.4;
}
.credit a:has(.nolink) span {
  text-decoration: none !important;
}
.credit a:has(.nolink2) {
  pointer-events: none;
}
.credit a:has(.nolink2) span {
  text-decoration: none !important;
}
.credit a .buy {
  font-size: 3.2vw;
  text-decoration: underline !important;
}
@media screen and (min-width: 1024px) {
  .credit a .buy {
    font-size: 0.8333333333vw;
  }
}

.break {
  display: block; /* 改行効果 */
}

.back {
  position: absolute;
  background-image: url(../assets/images/back.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  width: 100%;
  height: 100%;
  z-index: -1;
}
@media screen and (min-width: 1024px) {
  .back {
    background-image: url(../assets/images/back02.jpg);
  }
}

.swiper,
.swiper-slide {
  width: 100%;
  height: auto;
}

.slideSwiper {
  position: relative;
}

.swiper-slide img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.swiper-pagination {
  position: absolute !important;
  bottom: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: 11px !important;
  top: auto !important;
  z-index: 10 !important;
  opacity: 0 !important;
  transition: opacity 0.8s ease !important;
}

.swiper-pagination-progressbar {
  background-color: #ac966c !important;
}

.swiper-pagination-progressbar-fill {
  background-color: #7f6b47 !important;
}

.swiper-pagination.show {
  opacity: 1 !important;
}

section {
  margin-bottom: 21.3333333333vw;
  position: relative;
  width: 100%;
  height: auto;
}
@media screen and (min-width: 1024px) {
  section {
    margin-bottom: 12.5vw !important;
  }
}

.sec03 .img_box:first-child,
.sec09 .img_box:first-child,
.sec15 .img_box:first-child {
  padding-top: 8vw;
}
@media screen and (min-width: 1024px) {
  .sec03 .img_box:first-child,
  .sec09 .img_box:first-child,
  .sec15 .img_box:first-child {
    padding-top: 0;
  }
}

.sec03 .credit,
.sec11 .credit,
.sec15 .credit {
  padding-bottom: 8vw;
}
@media screen and (min-width: 1024px) {
  .sec03 .credit,
  .sec11 .credit,
  .sec15 .credit {
    padding-bottom: 4.1666666667vw;
  }
}

.sec05 .fadeSwiper,
.sec07 .fadeSwiper,
.sec10 .fadeSwiper,
.sec12 .fadeSwiper,
.sec14 .fadeSwiper,
.sec17 .fadeSwiper,
.sec20 .fadeSwiper {
  width: 84vw;
  margin: 0 auto;
}

.sec08 .w260,
.sec18 .w260 {
  margin-right: 0;
  margin-left: auto;
}

.sec11 .w305 {
  margin-right: 0;
  margin-left: auto;
}

.sec09,
.sec10 {
  margin-bottom: 0 !important;
  padding-bottom: 21.3333333333vw;
}
@media screen and (min-width: 1024px) {
  .sec09,
  .sec10 {
    padding-bottom: 11.1111111111vw;
  }
}

.sec21 .w315 {
  margin-left: 0;
  margin-right: auto;
}
.sec21 .last {
  margin: 0 auto;
  margin-top: 8vw;
}
.sec21 .w222 {
  margin-right: 0;
  margin-left: auto;
}

.btn {
  width: 74.6666666667vw;
  margin: 0 auto;
  margin-bottom: 21.3333333333vw;
  text-align: center;
}
@media screen and (min-width: 1024px) {
  .btn {
    margin-bottom: 10.4166666667vw;
    width: 34.7222222222vw;
  }
}
.btn a {
  border: 2px solid #000;
  padding: 2.9333333333vw 0;
}
@media screen and (min-width: 1024px) {
  .btn a {
    border: 1px solid #000;
    padding: 1.3888888889vw 0;
  }
}

#footer {
  background: #ad8d66;
  text-align: center;
  padding-bottom: 13.3333333333vw;
}
@media screen and (min-width: 1024px) {
  #footer {
    padding-bottom: 3.4722222222vw;
  }
}
#footer .name {
  padding: 13.3333333333vw 0 16vw;
}
@media screen and (min-width: 1024px) {
  #footer .name {
    padding: 3.4722222222vw 0 4.1666666667vw;
  }
}
#footer .name p {
  font-size: 2.9333333333vw;
  padding-top: 2.1333333333vw;
}
@media screen and (min-width: 1024px) {
  #footer .name p {
    font-size: 0.8333333333vw;
    padding-top: 1.25vw;
  }
}
#footer .icon {
  display: flex;
  gap: 30px;
  justify-content: center;
  align-items: center;
  padding-bottom: 8vw;
}
#footer .icon p:nth-child(1) {
  width: 8vw;
}
#footer .icon p:nth-child(2) {
  width: 5.3333333333vw;
}
@media screen and (min-width: 1024px) {
  #footer .icon {
    padding-bottom: 2.0833333333vw;
    gap: 15px;
  }
  #footer .icon p:nth-child(1) {
    width: 2.0833333333vw;
  }
  #footer .icon p:nth-child(2) {
    width: 1.3888888889vw;
  }
}
#footer p.logo {
  width: 38.4vw;
  margin: 0 auto;
  margin-bottom: 2.6666666667vw;
}
@media screen and (min-width: 1024px) {
  #footer p.logo {
    width: 10vw;
    margin-bottom: 0.6944444444vw;
  }
}
#footer span {
  font-size: 2.1333333333vw;
}
@media screen and (min-width: 1024px) {
  #footer span {
    font-size: 0.5594405594vw;
  }
}

#pagetop {
  position: fixed;
  width: 10%;
  height: auto;
  z-index: 100;
  top: 93%;
  left: 87%;
}
@media screen and (min-width: 1024px) {
  #pagetop {
    width: 3%;
    top: 92%;
    left: 95%;
  }
}

.is-hidden {
  visibility: hidden;
  transition: 0.6s;
  opacity: 0;
}

.w187 {
  width: 49.8666666667vw;
  margin-left: auto;
  margin-right: 0;
}

.w214 {
  width: 57.0666666667vw;
}

.w222 {
  width: 59.2vw;
}

.w260 {
  width: 69.3333333333vw;
  margin: 0 auto;
}

.w305 {
  width: 81.3333333333vw;
}

.w315 {
  width: 84vw;
  margin: 0 auto;
}

.m30 {
  margin-top: 8vw;
}
@media screen and (min-width: 1024px) {
  .m30 {
    margin-top: 0;
  }
}

@media screen and (min-width: 1023px) {
  #back_pc {
    position: relative;
    width: 100%;
    height: 100%;
  }
  #back_pc .back {
    position: absolute;
    background-image: url(../assets/images/back02.jpg);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    width: 100%;
    height: 100%;
    z-index: -1;
  }
  .sec01 .pc_flex,
  .sec03 .pc_flex,
  .sec08 .pc_flex,
  .sec15 .pc_flex {
    width: 63.8888888889vw;
    align-items: center;
    gap: 4.1666666667vw;
  }
  .sec01 .pc_flex .img_box:last-child,
  .sec03 .pc_flex .img_box:last-child,
  .sec08 .pc_flex .img_box:last-child,
  .sec15 .pc_flex .img_box:last-child {
    width: 55.5555555556vw;
    margin-bottom: 9.7222222222vw;
  }
  .sec08 .img_box:last-child {
    width: 97.2222222222vw !important;
    margin-bottom: 10.4166666667vw !important;
  }
  .sec03 .pc_flex .img_box:last-child {
    margin-bottom: 11.1111111111vw;
  }
  .sec15 .pc_flex .img_box:last-child {
    margin-bottom: 16.6666666667vw;
  }
  .sec02,
  .sec09 {
    width: 81.9444444444vw;
    margin: 0 auto;
  }
  .sec02 .pc_flex,
  .sec09 .pc_flex {
    gap: 0;
    align-items: center;
  }
  .sec02 .pc_flex .img_box,
  .sec09 .pc_flex .img_box {
    width: 100%;
  }
  .sec02 .pc_flex .m30,
  .sec09 .pc_flex .m30 {
    margin-top: 0;
  }
  .sec04 .img_box:first-child {
    width: 62.5vw;
    margin: 0 auto;
  }
  .sec04 .w260 {
    width: 38.1944444444vw;
    margin-top: 4.1666666667vw;
  }
  .sec05 .pc_flex,
  .sec07 .pc_flex,
  .sec14 .pc_flex,
  .sec17 .pc_flex,
  .sec20 .pc_flex {
    width: 52.7777777778vw;
    gap: 0;
    margin: 0 auto;
  }
  .sec05 .pc_flex .img_box,
  .sec07 .pc_flex .img_box,
  .sec14 .pc_flex .img_box,
  .sec17 .pc_flex .img_box,
  .sec20 .pc_flex .img_box {
    width: 100% !important;
    align-items: center;
  }
}
@media screen and (min-width: 1023px) and (min-width: 1024px) {
  .sec06,
  .sec13,
  .sec16,
  .sec19 {
    margin-bottom: 14.5833333333vw !important;
  }
}
@media screen and (min-width: 1023px) {
  .sec06 .pc_flex,
  .sec13 .pc_flex,
  .sec16 .pc_flex,
  .sec19 .pc_flex {
    width: 83.3333333333vw;
    gap: 2.0833333333vw;
    align-items: center;
  }
  .sec06 .pc_flex .img_box,
  .sec13 .pc_flex .img_box,
  .sec16 .pc_flex .img_box,
  .sec19 .pc_flex .img_box {
    width: 120%;
  }
  .sec06 .pc_flex .credit,
  .sec13 .pc_flex .credit,
  .sec16 .pc_flex .credit,
  .sec19 .pc_flex .credit {
    width: 90%;
  }
  .sec03 .pc_flex,
  .sec09 .pc_flex,
  .sec15 .pc_flex {
    padding-top: 4.1666666667vw;
    flex-direction: row-reverse;
  }
  .sec10 {
    margin: 0 auto;
  }
  .sec10 .pc_flex0 {
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .sec10 .pc_flex0 .img_box {
    width: 100%;
  }
  .sec10 .pc_flex0 .pc_flex {
    display: block;
    margin: 0;
  }
  .sec10 .pc_flex0 .pc_flex .box_flex {
    display: flex !important;
    gap: 2.0833333333vw;
    margin-left: 4.1666666667vw;
  }
  .sec10 .pc_flex0 .pc_flex .box_flex .img_box:nth-child(1),
  .sec10 .pc_flex0 .pc_flex .box_flex .img_box:nth-child(2) {
    width: 26.3888888889vw;
  }
  .sec10 .pc_flex0 .pc_flex .credit {
    margin: 0 auto;
    padding-bottom: 0;
  }
  .sec11 .yoko {
    width: 48.6111111111vw;
    margin: 0 auto;
  }
  .sec11 .pc_flex {
    width: 62.5vw;
    margin-top: 4.1666666667vw;
  }
  .sec11 .pc_flex .w305 {
    margin-top: 11.1111111111vw;
  }
  .sec12 .pc_flex {
    gap: 0;
  }
  .sec18 .pc_flex {
    width: 69.4444444444vw;
    align-items: flex-start;
  }
  .sec18 .pc_flex .w260 {
    margin-top: 13.1944444444vw;
  }
  .sec21 {
    width: 72.9166666667vw;
    margin: 0 auto 8.3333333333vw !important;
  }
  .sec21 .pc_flex {
    align-items: center;
  }
  .sec21 .last {
    width: 31.25vw;
  }
}/*# sourceMappingURL=style.css.map */