@charset "UTF-8";
:root {
  --font-en-primary: "franklin-gothic-atf", sans-serif;
  --font-en-secondary: "scotch-display-condensed", sans-serif;
  --font-jp: "fot-tsukubrdgothic-std", sans-serif;
  --color-basis: #494747;
  --color-key: #EDCACA;
  --color-txt-pink: rgba(239,206,218,0.4);
  --color-txt-blue: rgba(161,203,214,0.4);
  --color-txt-denim: rgba(154,181,181,0.4);
  --color-txt-orange: rgba(226,185,175,0.4);
  --color-txt-khaki: rgba(183,183,183,0.4);
  --color-txt-purple: rgba(204,197,211,0.4);
}

/*//////////////////////////////////////////////////

Title : layout.scss
For   : SENSUAL SUMMER 夏のファッションとランジェリーの関係

Created       : 2023-4-22
Last Modified : 2023-4-22

==========================================

Content

//////////////////////////////////////////////////*/
/* ===================== animation */
.js-fadeIn {
  opacity: 0;
  visibility: hidden;
  transform: translateY(10rem);
  transition-duration: 0.5s;
}
.js-fadeIn.is-show {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}

/* --- small viewport --- */
/* --- large viewport --- */
/* ===================== common */
.article {
  color: var(--color-basis);
}
.article * {
  box-sizing: border-box;
  font-weight: 400;
  font-style: normal;
  line-height: 1;
}
.article * a {
  display: var(--display, block);
}
.article picture {
  display: block;
}
.article img,
.article video,
.article svg {
  width: 100%;
  height: auto;
}

/* --- small viewport --- */
@media screen and (max-width: 767px) {
  .main-area .main-inner {
    width: initial;
  }
  .article {
    -webkit-margin-before: calc(25 * (100vw / 750));
            margin-block-start: calc(25 * (100vw / 750));
    -webkit-margin-after: calc(200 * (100vw / 750));
            margin-block-end: calc(200 * (100vw / 750));
  }
}
/* --- large viewport --- */
@media screen and (min-width: 768px) {
  .article {
    max-width: 120rem;
    -webkit-margin-before: 5rem;
            margin-block-start: 5rem;
    -webkit-margin-after: 15rem;
            margin-block-end: 15rem;
    margin-inline: auto;
  }
}
/* ===================== firstview */
.firstview {
  text-align: center;
}
.firstview__heading {
  font-family: var(--font-en-secondary);
  color: var(--color-key);
  letter-spacing: 0.17rem;
  font-weight: 300;
  opacity: 0.76;
}
.firstview__lead {
  font-family: var(--font-jp);
  letter-spacing: 0.25em;
}

/* --- small viewport --- */
@media screen and (max-width: 767px) {
  .firstview__heading {
    font-size: calc(122 * (100vw / 750));
  }
  .firstview__lead {
    -webkit-margin-before: calc(50 * (100vw / 750));
            margin-block-start: calc(50 * (100vw / 750));
    font-size: calc(32 * (100vw / 750));
  }
}
/* --- large viewport --- */
@media screen and (min-width: 768px) {
  .firstview__heading {
    font-size: 9.3rem;
  }
  .firstview__lead {
    -webkit-margin-before: 3rem;
            margin-block-start: 3rem;
    font-size: 2.1rem;
  }
}
/* ===================== contents */
/* --- common --- */
.contents__wrapper--01 .contents__title .text {
  color: var(--color-txt-pink);
}
.contents__wrapper--02 .contents__title .text {
  color: var(--color-txt-blue);
}
.contents__wrapper--03 .contents__title .text {
  color: var(--color-txt-denim);
}
.contents__wrapper--04 .contents__title .text {
  color: var(--color-txt-orange);
}
.contents__wrapper--05 .contents__title .text {
  color: var(--color-txt-khaki);
}
.contents__wrapper--06 .contents__title .text {
  color: var(--color-txt-purple);
}
.contents__block {
  display: flex;
  flex-wrap: wrap;
}
.contents__block--column {
  flex-direction: column;
}
.contents__unit {
  position: relative;
}
.contents__visual {
  background-color: #fff;
}
.contents__caption {
  position: absolute;
  pointer-events: none;
}
.contents__title {
  display: flex;
}
.contents__title > * {
  display: inline-block;
}
.contents__title .text {
  font-family: var(--font-en-secondary);
}
.contents__list {
  display: flex;
  align-items: center;
  justify-content: center;
}
.contents__credit {
  font-family: var(--font-en-primary);
  letter-spacing: 0.02em;
}
.contents__credit a {
  --display: inline-block;
}

/* --- small viewport --- */
@media screen and (max-width: 767px) {
  .contents__wrapper--01 {
    -webkit-margin-before: calc(80 * (100vw / 750));
            margin-block-start: calc(80 * (100vw / 750));
  }
  .contents__wrapper--01 .contents__block:first-child {
    row-gap: calc(90 * (100vw / 750));
  }
  .contents__wrapper--01 .contents__block:first-child .contents__unit:first-child {
    margin-inline: calc(30 * (100vw / 750));
  }
  .contents__wrapper--01 .contents__block:first-child .contents__title {
    flex-direction: column;
    align-items: center;
  }
  .contents__wrapper--01 .contents__block:first-child .contents__title .cross {
    margin-block: calc(95 * (100vw / 750));
  }
  .contents__wrapper--01 .contents__block:last-child .contents__unit:first-child {
    -webkit-padding-start: calc(130 * (100vw / 750));
            padding-inline-start: calc(130 * (100vw / 750));
  }
  .contents__wrapper--01 .contents__block:last-child .contents__unit:nth-child(2) {
    -webkit-margin-before: calc(-110 * (100vw / 750));
            margin-block-start: calc(-110 * (100vw / 750));
    width: calc(450 * (100vw / 750));
  }
  .contents__wrapper--01 .contents__block + .contents__block {
    -webkit-margin-before: calc(80 * (100vw / 750));
            margin-block-start: calc(80 * (100vw / 750));
  }
  .contents__wrapper--01 .contents__caption {
    width: calc(125 * (100vw / 750));
    top: calc(28 * (100vw / 750));
    left: calc(28 * (100vw / 750));
  }
  .contents__wrapper--01 .contents__title {
    font-size: calc(110 * (100vw / 750));
  }
  .contents__wrapper--01 .contents__list {
    -moz-column-gap: calc(90 * (100vw / 750));
         column-gap: calc(90 * (100vw / 750));
    top: calc(35 * (100vw / 750));
    left: calc(-20 * (100vw / 750));
  }
  .contents__wrapper--01 .contents__item {
    width: calc(350 * (100vw / 750));
  }
  .contents__wrapper--01 .contents__credit {
    -webkit-margin-before: calc(55 * (100vw / 750));
            margin-block-start: calc(55 * (100vw / 750));
    -webkit-margin-start: calc(65 * (100vw / 750));
            margin-inline-start: calc(65 * (100vw / 750));
    text-align: right;
  }
  .contents__wrapper--02 {
    -webkit-margin-before: calc(160 * (100vw / 750));
            margin-block-start: calc(160 * (100vw / 750));
  }
  .contents__wrapper--02 .contents__block:first-child {
    row-gap: calc(65 * (100vw / 750));
  }
  .contents__wrapper--02 .contents__block:first-child .contents__unit:last-child {
    display: flex;
    flex-direction: column-reverse;
  }
  .contents__wrapper--02 .contents__block:last-child {
    justify-content: center;
    row-gap: calc(55 * (100vw / 750));
  }
  .contents__wrapper--02 .contents__block + .contents__block {
    -webkit-margin-before: calc(95 * (100vw / 750));
            margin-block-start: calc(95 * (100vw / 750));
  }
  .contents__wrapper--02 .contents__caption {
    width: calc(58 * (100vw / 750));
    top: calc(-65 * (100vw / 750));
    right: calc(30 * (100vw / 750));
  }
  .contents__wrapper--02 .contents__title {
    -webkit-margin-before: calc(-5 * (100vw / 750));
            margin-block-start: calc(-5 * (100vw / 750));
    flex-wrap: wrap;
    justify-content: center;
    row-gap: calc(10 * (100vw / 750));
    -moz-column-gap: calc(45 * (100vw / 750));
         column-gap: calc(45 * (100vw / 750));
  }
  .contents__wrapper--02 .contents__title .text:first-child {
    width: 100%;
    text-align: center;
  }
  .contents__wrapper--02 .contents__title .text:last-child {
    transform: translateY(calc(20 * (100vw / 750)));
  }
  .contents__wrapper--02 .contents__list {
    -moz-column-gap: calc(30 * (100vw / 750));
         column-gap: calc(30 * (100vw / 750));
  }
  .contents__wrapper--02 .contents__item:first-child {
    width: calc(280 * (100vw / 750));
    -webkit-padding-after: calc(45 * (100vw / 750));
            padding-block-end: calc(45 * (100vw / 750));
  }
  .contents__wrapper--02 .contents__item:last-child {
    width: calc(340 * (100vw / 750));
  }
  .contents__wrapper--03 {
    -webkit-margin-before: calc(155 * (100vw / 750));
            margin-block-start: calc(155 * (100vw / 750));
  }
  .contents__wrapper--03 .contents__block:first-child .contents__unit:first-child {
    position: relative;
    z-index: 2;
    -webkit-padding-end: calc(150 * (100vw / 750));
            padding-inline-end: calc(150 * (100vw / 750));
  }
  .contents__wrapper--03 .contents__block:first-child .contents__unit:last-child {
    -webkit-margin-before: calc(-85 * (100vw / 750));
            margin-block-start: calc(-85 * (100vw / 750));
    -webkit-padding-start: calc(160 * (100vw / 750));
            padding-inline-start: calc(160 * (100vw / 750));
  }
  .contents__wrapper--03 .contents__block:last-child {
    justify-content: center;
  }
  .contents__wrapper--03 .contents__block + .contents__block {
    -webkit-margin-before: calc(85 * (100vw / 750));
            margin-block-start: calc(85 * (100vw / 750));
  }
  .contents__wrapper--03 .contents__caption {
    width: calc(125 * (100vw / 750));
    top: calc(20 * (100vw / 750));
    left: calc(18 * (100vw / 750));
  }
  .contents__wrapper--03 .contents__title {
    flex-direction: column;
    align-items: center;
  }
  .contents__wrapper--03 .contents__title .cross {
    -webkit-margin-before: calc(140 * (100vw / 750));
            margin-block-start: calc(140 * (100vw / 750));
    -webkit-margin-after: calc(100 * (100vw / 750));
            margin-block-end: calc(100 * (100vw / 750));
  }
  .contents__wrapper--03 .contents__list {
    top: calc(60 * (100vw / 750));
    left: calc(-90 * (100vw / 750));
    -moz-column-gap: calc(105 * (100vw / 750));
         column-gap: calc(105 * (100vw / 750));
  }
  .contents__wrapper--03 .contents__item:first-child {
    width: calc(290 * (100vw / 750));
  }
  .contents__wrapper--03 .contents__item:last-child {
    width: calc(350 * (100vw / 750));
  }
  .contents__wrapper--03 .contents__credit {
    -webkit-margin-before: calc(35 * (100vw / 750));
            margin-block-start: calc(35 * (100vw / 750));
    text-align: center;
  }
  .contents__wrapper--04 {
    -webkit-margin-before: calc(155 * (100vw / 750));
            margin-block-start: calc(155 * (100vw / 750));
  }
  .contents__wrapper--04 .contents__block:first-child {
    row-gap: calc(90 * (100vw / 750));
    justify-content: center;
  }
  .contents__wrapper--04 .contents__block:first-child .contents__unit:first-child {
    margin-inline: calc(65 * (100vw / 750));
  }
  .contents__wrapper--04 .contents__block:last-child {
    row-gap: calc(60 * (100vw / 750));
  }
  .contents__wrapper--04 .contents__block + .contents__block {
    -webkit-margin-before: calc(80 * (100vw / 750));
            margin-block-start: calc(80 * (100vw / 750));
  }
  .contents__wrapper--04 .contents__caption {
    width: calc(125 * (100vw / 750));
    top: calc(-45 * (100vw / 750));
    right: calc(-25 * (100vw / 750));
  }
  .contents__wrapper--04 .contents__title {
    flex-direction: column;
    align-items: center;
  }
  .contents__wrapper--04 .contents__title .cross {
    -webkit-margin-before: calc(120 * (100vw / 750));
            margin-block-start: calc(120 * (100vw / 750));
    -webkit-margin-after: calc(90 * (100vw / 750));
            margin-block-end: calc(90 * (100vw / 750));
  }
  .contents__wrapper--04 .contents__list {
    top: calc(50 * (100vw / 750));
    left: calc(-40 * (100vw / 750));
    -moz-column-gap: calc(90 * (100vw / 750));
         column-gap: calc(90 * (100vw / 750));
  }
  .contents__wrapper--04 .contents__item:first-child {
    width: calc(350 * (100vw / 750));
  }
  .contents__wrapper--04 .contents__item:last-child {
    width: calc(350 * (100vw / 750));
  }
  .contents__wrapper--04 .contents__credit {
    text-align: center;
  }
  .contents__wrapper--05 {
    -webkit-margin-before: calc(160 * (100vw / 750));
            margin-block-start: calc(160 * (100vw / 750));
  }
  .contents__wrapper--05 .contents__block:first-child .contents__unit:first-child {
    margin-inline: calc(45 * (100vw / 750));
  }
  .contents__wrapper--05 .contents__block:last-child {
    flex-direction: row-reverse;
    align-items: end;
    -moz-column-gap: calc(18 * (100vw / 750));
         column-gap: calc(18 * (100vw / 750));
  }
  .contents__wrapper--05 .contents__block:last-child .contents__unit:first-child {
    width: calc(480 * (100vw / 750));
  }
  .contents__wrapper--05 .contents__block:last-child .contents__unit:last-child {
    -webkit-margin-before: calc(60 * (100vw / 750));
            margin-block-start: calc(60 * (100vw / 750));
  }
  .contents__wrapper--05 .contents__block + .contents__block {
    -webkit-margin-before: calc(40 * (100vw / 750));
            margin-block-start: calc(40 * (100vw / 750));
  }
  .contents__wrapper--05 .contents__caption {
    width: calc(125 * (100vw / 750));
    top: calc(30 * (100vw / 750));
    right: calc(20 * (100vw / 750));
  }
  .contents__wrapper--05 .contents__title {
    flex-wrap: wrap;
    justify-content: center;
    row-gap: calc(10 * (100vw / 750));
    -moz-column-gap: calc(50 * (100vw / 750));
         column-gap: calc(50 * (100vw / 750));
    -webkit-margin-before: calc(-30 * (100vw / 750));
            margin-block-start: calc(-30 * (100vw / 750));
  }
  .contents__wrapper--05 .contents__title .text:first-child {
    width: 100%;
    text-align: center;
  }
  .contents__wrapper--05 .contents__title .text:last-child {
    transform: translateY(calc(20 * (100vw / 750)));
  }
  .contents__wrapper--05 .contents__list {
    justify-content: center;
    -moz-column-gap: calc(30 * (100vw / 750));
         column-gap: calc(30 * (100vw / 750));
  }
  .contents__wrapper--05 .contents__item:first-child {
    width: calc(280 * (100vw / 750));
  }
  .contents__wrapper--05 .contents__item:last-child {
    width: calc(340 * (100vw / 750));
  }
  .contents__wrapper--05 .contents__credit {
    transform: translateY(calc(5 * (100vw / 750)));
  }
  .contents__wrapper--06 {
    -webkit-margin-before: calc(150 * (100vw / 750));
            margin-block-start: calc(150 * (100vw / 750));
  }
  .contents__wrapper--06 .contents__block:first-child {
    justify-content: center;
    row-gap: calc(85 * (100vw / 750));
  }
  .contents__wrapper--06 .contents__block:last-child {
    row-gap: calc(50 * (100vw / 750));
  }
  .contents__wrapper--06 .contents__block:last-child .contents__unit:first-child {
    padding-inline: calc(110 * (100vw / 750));
  }
  .contents__wrapper--06 .contents__block + .contents__block {
    -webkit-margin-before: calc(85 * (100vw / 750));
            margin-block-start: calc(85 * (100vw / 750));
  }
  .contents__wrapper--06 .contents__caption {
    width: calc(125 * (100vw / 750));
    top: calc(40 * (100vw / 750));
    right: calc(34 * (100vw / 750));
  }
  .contents__wrapper--06 .contents__title {
    flex-direction: column;
    align-items: center;
  }
  .contents__wrapper--06 .contents__title .cross {
    -webkit-margin-before: calc(115 * (100vw / 750));
            margin-block-start: calc(115 * (100vw / 750));
    -webkit-margin-after: calc(110 * (100vw / 750));
            margin-block-end: calc(110 * (100vw / 750));
  }
  .contents__wrapper--06 .contents__list {
    -moz-column-gap: calc(110 * (100vw / 750));
         column-gap: calc(110 * (100vw / 750));
    top: calc(50 * (100vw / 750));
    left: calc(-95 * (100vw / 750));
  }
  .contents__wrapper--06 .contents__item:first-child {
    width: calc(350 * (100vw / 750));
  }
  .contents__wrapper--06 .contents__item:last-child {
    width: calc(330 * (100vw / 750));
  }
  .contents__wrapper--06 .contents__credit {
    text-align: center;
  }
  .contents__unit--pos .contents__list {
    position: absolute;
  }
  .contents__unit--posReverse {
    position: relative;
  }
  .contents__title .text {
    font-size: calc(110 * (100vw / 750));
  }
  .contents__title .cross {
    width: calc(120 * (100vw / 750));
  }
  .contents__credit {
    font-size: calc(23 * (100vw / 750));
  }
  .contents__credit a {
    margin-inline: calc(10 * (100vw / 750));
    line-height: 1.8260869565;
  }
}
/* --- large viewport --- */
@media screen and (min-width: 768px) {
  .contents__wrapper--01 {
    -webkit-margin-before: 7rem;
            margin-block-start: 7rem;
  }
  .contents__wrapper--01 .contents__block:first-child {
    row-gap: 7rem;
  }
  .contents__wrapper--01 .contents__block:first-child .contents__unit:first-child {
    width: 55rem;
  }
  .contents__wrapper--01 .contents__block:last-child {
    -moz-column-gap: 6rem;
         column-gap: 6rem;
    row-gap: 3.5rem;
  }
  .contents__wrapper--01 .contents__block:last-child .contents__unit:first-child {
    width: 52rem;
  }
  .contents__wrapper--01 .contents__block:last-child .contents__unit:nth-child(2) {
    -webkit-margin-before: 23.4rem;
            margin-block-start: 23.4rem;
    width: 42rem;
  }
  .contents__wrapper--01 .contents__block + .contents__block {
    -webkit-margin-before: 10rem;
            margin-block-start: 10rem;
  }
  .contents__wrapper--01 .contents__caption {
    width: 8rem;
    top: 1.5rem;
    left: 1.5rem;
  }
  .contents__wrapper--01 .contents__title {
    justify-content: center;
    -moz-column-gap: 2.5rem;
         column-gap: 2.5rem;
  }
  .contents__wrapper--01 .contents__list {
    justify-content: center;
    -webkit-margin-before: 7rem;
            margin-block-start: 7rem;
    -webkit-padding-start: 3.2rem;
            padding-inline-start: 3.2rem;
  }
  .contents__wrapper--01 .contents__item {
    width: 31rem;
  }
  .contents__wrapper--02 {
    -webkit-margin-before: 13rem;
            margin-block-start: 13rem;
  }
  .contents__wrapper--02 .contents__block:first-child {
    flex-direction: row-reverse;
    -moz-column-gap: 10rem;
         column-gap: 10rem;
  }
  .contents__wrapper--02 .contents__block:first-child .contents__unit:first-child {
    width: 56rem;
  }
  .contents__wrapper--02 .contents__block:first-child .contents__unit:last-child {
    -webkit-margin-before: 1.5rem;
            margin-block-start: 1.5rem;
  }
  .contents__wrapper--02 .contents__block:last-child {
    align-items: center;
    flex-direction: column;
    row-gap: 3rem;
  }
  .contents__wrapper--02 .contents__block:last-child .contents__unit:first-child {
    width: 100rem;
  }
  .contents__wrapper--02 .contents__block + .contents__block {
    -webkit-margin-before: 6rem;
            margin-block-start: 6rem;
  }
  .contents__wrapper--02 .contents__caption {
    width: 3.8rem;
    top: -5rem;
    right: 2.5rem;
  }
  .contents__wrapper--02 .contents__title {
    flex-direction: column;
    align-items: center;
  }
  .contents__wrapper--02 .contents__title .cross {
    -webkit-margin-before: 20rem;
            margin-block-start: 20rem;
    -webkit-margin-after: 32rem;
            margin-block-end: 32rem;
    -webkit-margin-start: 0.5rem;
            margin-inline-start: 0.5rem;
  }
  .contents__wrapper--02 .contents__list {
    row-gap: 10.6rem;
    flex-direction: column;
    align-items: center;
    margin-inline: auto;
    top: -2rem;
    left: 3rem;
  }
  .contents__wrapper--02 .contents__item:first-child {
    width: 23rem;
  }
  .contents__wrapper--02 .contents__item:last-child {
    width: 28rem;
  }
  .contents__wrapper--03 {
    -webkit-margin-before: 13rem;
            margin-block-start: 13rem;
  }
  .contents__wrapper--03 .contents__block:first-child {
    -moz-column-gap: 4.5rem;
         column-gap: 4.5rem;
    -webkit-padding-start: 4.3rem;
            padding-inline-start: 4.3rem;
  }
  .contents__wrapper--03 .contents__block:first-child .contents__unit:first-child {
    width: 48rem;
    -webkit-margin-before: 23rem;
            margin-block-start: 23rem;
  }
  .contents__wrapper--03 .contents__block:first-child .contents__unit:last-child {
    width: 52rem;
  }
  .contents__wrapper--03 .contents__block:last-child {
    flex-direction: row-reverse;
    -webkit-padding-start: 4rem;
            padding-inline-start: 4rem;
  }
  .contents__wrapper--03 .contents__block:last-child .contents__unit {
    display: flex;
    flex-direction: row-reverse;
    -moz-column-gap: 1rem;
         column-gap: 1rem;
  }
  .contents__wrapper--03 .contents__block + .contents__block {
    -webkit-margin-before: -3rem;
            margin-block-start: -3rem;
  }
  .contents__wrapper--03 .contents__caption {
    width: 8rem;
    top: 3.5rem;
    left: 1.7rem;
  }
  .contents__wrapper--03 .contents__title {
    flex-direction: column;
    align-items: center;
  }
  .contents__wrapper--03 .contents__title .cross {
    -webkit-margin-before: -3rem;
            margin-block-start: -3rem;
    -webkit-margin-after: -2rem;
            margin-block-end: -2rem;
  }
  .contents__wrapper--03 .contents__list {
    -webkit-margin-before: 13.5rem;
            margin-block-start: 13.5rem;
  }
  .contents__wrapper--03 .contents__item:first-child {
    width: 25rem;
  }
  .contents__wrapper--03 .contents__item:last-child {
    width: 29rem;
  }
  .contents__wrapper--03 .contents__credit {
    -webkit-margin-before: 5.5rem;
            margin-block-start: 5.5rem;
    text-align: center;
  }
  .contents__wrapper--04 {
    -webkit-margin-before: 12rem;
            margin-block-start: 12rem;
  }
  .contents__wrapper--04 .contents__block:first-child {
    flex-direction: row-reverse;
    -moz-column-gap: 3rem;
         column-gap: 3rem;
    -webkit-padding-start: 4em;
            padding-inline-start: 4em;
  }
  .contents__wrapper--04 .contents__block:first-child .contents__unit:first-child {
    width: 50rem;
  }
  .contents__wrapper--04 .contents__block:first-child .contents__unit:last-child {
    -webkit-margin-before: 2.5rem;
            margin-block-start: 2.5rem;
  }
  .contents__wrapper--04 .contents__block:last-child {
    row-gap: 3.5rem;
  }
  .contents__wrapper--04 .contents__block:last-child .contents__unit:first-child {
    width: 61rem;
  }
  .contents__wrapper--04 .contents__block + .contents__block {
    -webkit-margin-before: 7rem;
            margin-block-start: 7rem;
  }
  .contents__wrapper--04 .contents__caption {
    width: 8rem;
    top: 1.5rem;
    right: 1.5rem;
  }
  .contents__wrapper--04 .contents__title {
    flex-direction: column;
    align-items: center;
  }
  .contents__wrapper--04 .contents__title .cross {
    -webkit-margin-before: -3rem;
            margin-block-start: -3rem;
    -webkit-margin-after: -2rem;
            margin-block-end: -2rem;
  }
  .contents__wrapper--04 .contents__list {
    -webkit-margin-before: 7.3rem;
            margin-block-start: 7.3rem;
  }
  .contents__wrapper--04 .contents__item:first-child {
    width: 31rem;
  }
  .contents__wrapper--04 .contents__item:last-child {
    -webkit-margin-start: -3rem;
            margin-inline-start: -3rem;
    width: 29rem;
  }
  .contents__wrapper--05 {
    -webkit-margin-before: 13rem;
            margin-block-start: 13rem;
  }
  .contents__wrapper--05 .contents__block:first-child {
    -moz-column-gap: 9.5rem;
         column-gap: 9.5rem;
    -webkit-padding-end: 2rem;
            padding-inline-end: 2rem;
  }
  .contents__wrapper--05 .contents__block:first-child .contents__unit:first-child {
    width: 52rem;
  }
  .contents__wrapper--05 .contents__block:first-child .contents__unit:last-child {
    -webkit-margin-before: 2rem;
            margin-block-start: 2rem;
  }
  .contents__wrapper--05 .contents__block:last-child {
    flex-direction: row-reverse;
    align-items: end;
    -moz-column-gap: 3.5rem;
         column-gap: 3.5rem;
    -webkit-padding-start: 18rem;
            padding-inline-start: 18rem;
    text-align: right;
  }
  .contents__wrapper--05 .contents__block:last-child .contents__unit:first-child {
    width: 42rem;
  }
  .contents__wrapper--05 .contents__block + .contents__block {
    -webkit-margin-before: 6.3rem;
            margin-block-start: 6.3rem;
  }
  .contents__wrapper--05 .contents__caption {
    width: 8rem;
    top: 1.5rem;
    right: 2.5rem;
  }
  .contents__wrapper--05 .contents__title {
    flex-direction: column;
    align-items: center;
  }
  .contents__wrapper--05 .contents__title .cross {
    -webkit-margin-before: 20.5rem;
            margin-block-start: 20.5rem;
    -webkit-margin-after: 25rem;
            margin-block-end: 25rem;
  }
  .contents__wrapper--05 .contents__list {
    flex-direction: column;
    row-gap: 4.3rem;
    top: 0;
    left: 0;
    right: 0;
  }
  .contents__wrapper--05 .contents__item:first-child {
    width: 23rem;
  }
  .contents__wrapper--05 .contents__item:last-child {
    width: 30rem;
  }
  .contents__wrapper--05 .contents__credit {
    transform: translateY(0.5rem);
  }
  .contents__wrapper--06 {
    -webkit-margin-before: 13rem;
            margin-block-start: 13rem;
  }
  .contents__wrapper--06 .contents__block:first-child {
    row-gap: 7rem;
  }
  .contents__wrapper--06 .contents__block:first-child .contents__unit:first-child {
    width: 65rem;
  }
  .contents__wrapper--06 .contents__block:last-child {
    row-gap: 3rem;
  }
  .contents__wrapper--06 .contents__block:last-child .contents__unit:first-child {
    width: 57rem;
  }
  .contents__wrapper--06 .contents__block + .contents__block {
    -webkit-margin-before: 8rem;
            margin-block-start: 8rem;
  }
  .contents__wrapper--06 .contents__caption {
    width: 8rem;
    top: 3rem;
    right: 3.2rem;
  }
  .contents__wrapper--06 .contents__title {
    align-items: center;
    -moz-column-gap: 2rem;
         column-gap: 2rem;
  }
  .contents__wrapper--06 .contents__list {
    -webkit-margin-before: 7rem;
            margin-block-start: 7rem;
  }
  .contents__wrapper--06 .contents__item:first-child {
    width: 31rem;
  }
  .contents__wrapper--06 .contents__item:last-child {
    width: 27rem;
  }
  .contents__wrapper--06 .contents__credit {
    text-align: center;
  }
  .contents__unit--posReverse .contents__list {
    position: absolute;
  }
  .contents__block {
    justify-content: center;
  }
  .contents__block--column {
    align-items: center;
  }
  .contents__title .text {
    font-size: 9rem;
  }
  .contents__title .cross {
    width: 9.5rem;
    margin-left: 0.5rem;
  }
  .contents__credit {
    font-size: 1.2rem;
    line-height: 1.6666666667;
  }
  .contents__credit a {
    margin-inline: 0.5rem;
  }
}
/* ===================== foot */
.foot__button {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-inline: auto;
  font-family: var(--font-en-secondary);
  font-weight: 300;
  letter-spacing: 0.08em;
  text-align: center;
  background-color: var(--color-key);
  color: #fff;
}

/* --- small viewport --- */
@media screen and (max-width: 767px) {
  .foot {
    -webkit-margin-before: calc(150 * (100vw / 750));
            margin-block-start: calc(150 * (100vw / 750));
  }
  .foot__button {
    width: calc(675 * (100vw / 750));
    line-height: calc(146 * (100vw / 750));
    font-size: calc(38 * (100vw / 750));
  }
}
/* --- large viewport --- */
@media screen and (min-width: 768px) {
  .foot {
    -webkit-margin-before: 12rem;
            margin-block-start: 12rem;
  }
  .foot__button {
    width: 42rem;
    line-height: 7.5rem;
    font-size: 1.9rem;
  }
}
/* ===================== responsive */
@media screen and (min-width: 768px) and (max-width: 1200px) {
  .contents__title .text {
    font-size: 8rem;
  }
  .contents__wrapper--04 .contents__block:first-child {
    -moz-column-gap: 0;
         column-gap: 0;
    -webkit-padding-start: 0;
            padding-inline-start: 0;
  }
}