@charset "utf-8";@charset "UTF-8";
#header {
  display: none !important;
}
.keyword-box {
  display: none !important;
}
.crumbsList {
  display: none !important;
}
#footer {
  display: none !important;
}

/*---------------	リセットcss	---------------*/

html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
  margin: 0;
  border: 0;
  padding: 0;
  font-size: 100%;
  font-weight: normal;
  vertical-align: baseline;
  font-style: normal;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
  display: block;
}

html {
  /*overflow-y: scroll;*/
}

blockquote,
q {
  quotes: none;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
  content: "";
  content: none;
}

input,
textarea {
  margin: 0;
  padding: 0;
}

ol,
ul {
  list-style: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

caption,
th {
  text-align: left;
}

a:focus {
  outline: none;
}

a:focus-visible {
  outline: 1px solid currentColor;
  outline-offset: 2px;
}

input,
textarea,
button {
  border: none;
  border-radius: 0;
  background-color: transparent;
  -webkit-appearance: none;
}

body {
  overflow-x: hidden;
}

* {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

/* ========================================
	Component(共通利用の部品。幅とか色は持たせない)
	命名規則: .c-
========================================= */

.c-container {
  width: 100%;
  height: auto;
  margin: 0 auto;
}

/*----- レスポンシブ表示切り替え -----*/

.c-pc_only {
  display: block !important;
}

.c-pc_only--flex {
  display: -webkit-box !important;
  display: -ms-flexbox !important;
  display: flex !important;
}

.c-sp_only {
  display: none !important;
}

/*----- 読み上げ専用（画面上は非表示） -----*/

.c-visuallyhidden {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  border: 0;
  padding: 0;
  overflow: hidden;
  clip: rect(0 0 0 0);
  clip-path: inset(50%);
  white-space: nowrap;
}

/*----- jsカスタマイズclass -----*/

.c-fadeIn {
  -webkit-transition: opacity 1.5s ease;
  transition: opacity 1.5s ease;
  opacity: 0;
}

.c-fadeIn.js-active {
  opacity: 1;
}

@media (prefers-reduced-motion: reduce) {
  .c-fadeIn {
    -webkit-transition: none;
    transition: none;
    opacity: 1;
  }
}

/* ========================================
	Utility(わずかな調整などを行うための便利要素)
	命名規則: .u-
========================================= */

@media screen and (max-width: 768px) {
  .c-pc_only {
    display: none !important;
  }

  .c-pc_only--flex {
    display: none !important;
  }

  .c-sp_only {
    display: block !important;
  }
}

/* ========================================
	Foundation
========================================= */

html {
  font-size: 100%;
}

body {
  font-size: 1rem;
  font-family: "Lato", "Helvetica Neue", Helvetica, "Hiragino Kaku Gothic ProN", Arial, sans-serif;
  color: #070606;
  background-color: #fff;
  -webkit-font-feature-settings: "palt";
  font-feature-settings: "palt";
}

picture,
figure {
  display: block;
  width: 100%;
  height: auto;
}

img {
  display: block;
  width: 100%;
  height: auto;
}

a,
button {
  -webkit-transition: opacity .3s;
  transition: opacity .3s;
  cursor: pointer;
}

a:hover,
button:hover {
  opacity: .6;
}

/* ========================================
	Project(コンテンツを構成する具体的な要素)
	命名規則: .p-
========================================= */

/*----- header -----*/

/* ヘッダーは持たず、白ロゴをFVの右上に重ねるだけ */
.l-header {
  position: absolute;
  top: 0;
  right: 0;
  z-index: 2;
  padding: calc(35/16*1rem) calc(57/16*1rem) 0 0;
}

.p-header__logo {
  width: calc(187/16*1rem);
}

/*----- fv -----*/

.l-fv {
  position: relative;
  width: 100%;
  aspect-ratio: 1920 / 1189.5;
  overflow: hidden;
}

/* XD上の画像フレーム(PC 2207x1655 / SP 474x592)をそのまま再現し、中身はcoverで切り抜く */
.p-fv__img {
  position: absolute;
  top: -28.7516%;
  left: 0;
  width: 114.9479%;
  height: 139.1341%;
}

.p-fv__img img {
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}

.p-fv__title {
  position: absolute;
  top: 72.4674%;
  left: 2.7083%;
  width: 30.4167%;
}

.p-fv__season {
  position: absolute;
  right: 1.8229%;
  bottom: 2.9%;
  font-family: "Hiragino Mincho ProN", "Noto Serif JP", "Yu Mincho", serif;
  font-size: calc(20/16*1rem);
  color: #fff;
  line-height: 1;
  letter-spacing: .01em;
}

/*----- look -----*/

.l-look {
  position: relative;
  width: 100%;
  aspect-ratio: 1920 / 16554.5;
}

.p-look__item {
  position: absolute;
  container-type: inline-size;
}

.p-look__item--1_1 { top: 1.1991%;  left: 11.9792%; width: 23.3333%; }
.p-look__item--1_2 { top: 1.1991%;  left: 50.0000%; width: 38.4375%; }
.p-look__item--2_1 { top: 8.4660%;  left: 24.7396%; width: 24.4271%; }
.p-look__item--2_2 { top: 8.4660%;  left: 50.8333%; width: 24.4271%; }
.p-look__item--3_1 { top: 13.7576%; left: 11.9792%; width: 35.7292%; }
.p-look__item--4_1 { top: 22.0000%; left: 24.7396%; width: 24.4271%; }
.p-look__item--4_2 { top: 22.0000%; left: 50.8333%; width: 24.4271%; }
.p-look__item--5_1 { top: 27.4699%; left: 11.9792%; width: 22.0833%; }
.p-look__item--5_2 { top: 29.5660%; left: 50.0000%; width: 38.4375%; }
.p-look__item--5_3 { top: 32.9548%; left: 50.0000%; width: 38.4375%; }
.p-look__item--6_1 { top: 37.5276%; left: 11.9792%; width: 53.5937%; }
.p-look__item--7_1 { top: 43.4232%; left: 24.7396%; width: 24.4271%; }
.p-look__item--7_2 { top: 43.4232%; left: 50.8333%; width: 24.4271%; }
.p-look__item--8_1 { top: 48.2739%; left: 57.5000%; width: 30.0000%; }
.p-look__item--8_2 { top: 49.0894%; left: 11.9792%; width: 35.7292%; }
.p-look__item--9   { top: 56.1388%; left: 25.5729%; width: 48.8542%; }
.p-look__item--10_1 { top: 61.8774%; left: 5.0000%;  width: 24.4271%; }
.p-look__item--10_2 { top: 61.8774%; left: 31.0937%; width: 24.4271%; }
.p-look__item--10_3 { top: 61.8774%; left: 64.0104%; width: 24.4271%; }
.p-look__item--11_1 { top: 67.2234%; left: 16.3021%; width: 26.2500%; }
.p-look__item--11_2 { top: 67.8758%; left: 50.0000%; width: 35.7292%; }
.p-look__item--12_1 { top: 74.1883%; left: 50.0000%; width: 35.7292%; }
.p-look__item--13_1 { top: 81.6787%; left: 32.5521%; width: 34.8958%; }
.p-look__item--14_1 { top: 88.8852%; left: 24.7396%; width: 24.4271%; }
.p-look__item--14_2 { top: 88.8852%; left: 50.8333%; width: 24.4271%; }
.p-look__item--15_1 { top: 94.4728%; left: 32.1354%; width: 35.7292%; }

/*----- アイテムクレジット（PC:ホバー / SP:＋タップで表示） -----*/

.p-credit {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
  width: 100%;
  height: 100%;
  background-color: rgba(244, 251, 248, .95);
  color: #000;
  text-align: center;
  opacity: 0;
  visibility: hidden;
  -webkit-transition: opacity .3s cubic-bezier(.215, .61, .355, 1), visibility .3s;
  transition: opacity .3s cubic-bezier(.215, .61, .355, 1), visibility .3s;
}

.p-credit.js-open {
  opacity: 1;
  visibility: visible;
}

@media (hover: hover) and (min-width: 769px) {
  .p-look__item:hover .p-credit {
    opacity: 1;
    visibility: visible;
  }
}

.p-credit__list {
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  width: 100%;
  padding: 0 5%;
  /* 基準は13px。写真が小さくなる幅では追従させる */
  font-size: calc(13/16*1rem);
  font-size: clamp(9px, 2.8cqw, 13px);
  line-height: 2;
  letter-spacing: .03em;
}

.p-credit__listitem {
  margin: calc(4/16*1rem) 0;
}

.p-credit__item {
  color: #000;
  text-decoration: underline;
}
.p-credit__item:link {
  text-decoration: underline;
}
.p-credit__item.p-credit__item--soon,
.p-credit__item.p-credit__item--instore {
  text-decoration: none!important;
}

.p-credit__buy {
  display: inline-block;
  position: relative;
  top: -1px;
  margin-left: calc(15/13*1em);
  padding: calc(2/9*1em) calc(5/9*1em) calc(3/9*1em);
  font-size: calc(9/13*1em);
  line-height: 1.2;
  color: #fff;
  background-color: #000;
  text-decoration: none;
}

.p-credit__item--soon,
.p-credit__item--instore {
  pointer-events: none;
  text-decoration: none;
}

.p-credit__item--soon::after,
.p-credit__item--instore::after {
  display: inline-block;
  padding-left: calc(5/13*1em);
  font-size: 70%;
}

.p-credit__item--soon::after {
  content: "(Coming Soon)";
}

.p-credit__item--instore::after {
  content: "(In Store Only)";
}

/*----- SP用 ＋ボタン -----*/

.p-credit__btn {
  display: none;
}

@media screen and (max-width: 768px) {
  /* SPは写真が大きいので参考サイトと同じ13px固定 */
  .p-credit__list {
    font-size: calc(13/16*1rem);
  }

  .p-credit__btn {
    display: block;
    position: absolute;
    z-index: 3;
    right: calc(-5/16*1rem);
    bottom: calc(-5/16*1rem);
    width: calc(60/16*1rem);
    height: calc(60/16*1rem);
    opacity: .8;
    cursor: pointer;
    -webkit-transition: -webkit-transform .3s cubic-bezier(.215, .61, .355, 1);
    transition: transform .3s cubic-bezier(.215, .61, .355, 1);
    background-color: transparent;
  }
  .p-credit__btn:hover,
  .p-credit__btn:focus {
    background-color: transparent;
  }

  .p-credit__btn::before,
  .p-credit__btn::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    background-color: #fff;
  }

  .p-credit__btn::before {
    width: calc(16/16*1rem);
    height: 1px;
    margin: 0 0 0 calc(-8/16*1rem);
  }

  .p-credit__btn::after {
    width: 1px;
    height: calc(16/16*1rem);
    margin: calc(-8/16*1rem) 0 0 0;
  }

  .p-credit__btn--dark::before,
  .p-credit__btn--dark::after {
    background-color: #000;
  }

  /* 開いている間は下地が明るくなるので＋は黒に寄せる */
  .p-credit__btn.js-open {
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
  }

  .p-credit__btn.js-open::before,
  .p-credit__btn.js-open::after {
    background-color: #000;
  }
}

.p-look__text {
  position: absolute;
  /* XDは18px。現状は指定により80%（14.4px） */
  font-size: calc(14.4/16*1rem);
  line-height: 1.9;
  letter-spacing: 0;
}

.p-look__text p + p {
  margin-top: calc(24/18*1em);
}

/* 1920pxで500px。狭い画面では画面外へ出ないよう45%を上限にする（左位置が52.7%のため） */
.p-look__text--1 { top: 18.5%; left: 52.7083%; width: 100%; max-width: min(calc(500/15*1rem), 45%); }
.p-look__text--2 { top: 60.0290%; left: 25.5729%; width: 48.8542%; }
.p-look__text--3 { top: 99.7%; left: 68.3854%; width: 24.4271%; }

/*----- footer -----*/

.l-footer {
  padding: calc(409/16*1rem) 0 calc(84/16*1rem);
  text-align: center;
}

.p-footer__staff {
  width: calc(312/16*1rem);
  margin: 0 auto;
  text-align: left;
}

.p-footer__staffitem {
  font-size: calc(15/16*1rem);
  line-height: calc(20/15);
  letter-spacing: 0;
}

.p-footer__links {
  display: flex;
  justify-content: center;
  gap: calc(40/16*1rem);
  margin-top: calc(333/16*1rem);
}

.p-footer__linkitem {
  width: calc(90/16*1rem);
}

.p-footer__linkitem a {
  display: block;
  text-decoration: none;
  color: #070606;
}

.p-footer__icon {
  display: block;
  width: calc(26/16*1rem);
  height: calc(26/16*1rem);
  margin: 0 auto;
}

.p-footer__linktext {
  display: block;
  margin-top: calc(6/16*1rem);
  font-size: calc(13/16*1rem);
  font-weight: 700;
  line-height: 1;
  letter-spacing: .01em;
}

.p-footer__logo {
   width: calc(320/16*1rem);
  margin: calc(208/16*1rem) auto 0;
}

.p-footer__logo img {
  -webkit-filter: brightness(0);
  filter: brightness(0);
}

/* ========================================
	Media Queries
========================================= */

@media screen and (min-width: 769px) and (max-width: 1400px) {
  html { font-size: 95%; }
}

@media screen and (min-width: 769px) and (max-width: 1200px) {
  html { font-size: 88%; }
}

@media screen and (min-width: 769px) and (max-width: 1000px) {
  html { font-size: 80%; }
}

@media screen and (min-width: 1921px) {
  html { font-size: 112%; }
}

@media screen and (max-width: 768px) {
  html {
    font-size: 100%;
  }

  /*----- header -----*/

  .l-header {
    padding: calc(13/16*1rem) calc(12/16*1rem) 0 0;
  }

  .p-header__logo {
    width: calc(90/390*100vw);
    margin-top: 1vw;
  }

  /*----- fv -----*/

  .l-fv {
    aspect-ratio: 390 / 528;
  }

  .p-fv__img {
    top: -12.1212%;
    left: -11.5385%;
    width: 121.5385%;
    height: 112.1212%;
  }

  .p-fv__title {
    top: 81.2500%;
    left: 1.2821%;
    width: 46.4103%;
  }

  .p-fv__season {
    display: none;
  }

  /*----- look -----*/

  .l-look {
    aspect-ratio: 390 / 11063;
  }

  .p-look__item--1_1 { top: 0.7502%;  left: 13.0769%;  width: 74.1026%; }
  .p-look__item--1_2 { top: 4.6009%;  left: 50.0000%;  width: 44.6154%; }
  .p-look__item--2_1 { top: 12.0944%; left: 0;         width: 100%; }
  .p-look__item--2_2 { top: 7.1680%;  left: 0;         width: 100%; }
  .p-look__item--3_1 { top: 17.2196%; left: 10.0000%;  width: 54.8718%; }
  .p-look__item--4_1 { top: 20.5640%; left: 0;         width: 100%; }
  .p-look__item--4_2 { top: 28.5727%; left: 5.1282%;   width: 90.0000%; }
  .p-look__item--5_1 { top: 25.5808%; left: 21.5385%;  width: 56.9231%; }
  .p-look__item--5_2 { top: 33.3544%; left: 45.3846%;  width: 49.7436%; }
  .p-look__item--5_3 { top: 34.6832%; left: 45.3846%;  width: 49.7436%; }
  .p-look__item--6_1 { top: 36.2379%; left: 0;         width: 72.5641%; }
  .p-look__item--7_1 { top: 38.4525%; left: 5.8974%;   width: 94.1026%; }
  .p-look__item--7_2 { top: 46.4160%; left: 11.7949%;  width: 76.4103%; }
  .p-look__item--8_1 { top: 43.1709%; left: 17.4359%;  width: 65.1282%; }
  .p-look__item--8_2 { top: 50.3028%; left: 0;         width: 100%; }
  .p-look__item--9   { top: 55.6811%; left: -31.0256%; width: 131.0256%; }
  .p-look__item--10_1 { top: 63.2649%; left: 10.0000%; width: 80.0000%; }
  .p-look__item--10_2 { top: 67.2602%; left: 10.0000%; width: 80.0000%; }
  .p-look__item--10_3 { top: 59.2500%; left: 10.0000%; width: 80.0000%; }
  .p-look__item--11_1 { top: 71.2555%; left: 32.5641%; width: 64.6154%; }
  .p-look__item--11_2 { top: 74.5277%; left: 13.5897%; width: 73.0769%; }
  .p-look__item--12_1 { top: 78.5230%; left: 0;        width: 100%; }
  .p-look__item--13_1 { top: 83.6844%; left: 5.8974%;  width: 56.1538%; }
  .p-look__item--14_1 { top: 91.2230%; left: 12.0513%; width: 75.8974%; }
  .p-look__item--14_2 { top: 86.5498%; left: 6.4103%;  width: 93.5897%; }
  .p-look__item--15_1 { top: 95.2996%; left: 0;        width: 100%; }

  .p-look__text {
    z-index: 1;
    line-height: 1.8;
  }

  /* 長文の本文1はXD指定(4px)のまま。10pxにすると枠を322pxはみ出すため */
  .p-look__text--1 {
    top: 18.6%;
    left: 32.3077%;
    width: 30.5128%;
    font-size: calc(6/390*100vw);
    line-height: 1.6;
    color: #fff;
    text-align: center;
  }

  /* 本文2はXDのSP版に合わせて2行にする（PC版は段落を分けて3行）。
     9pxで1行目が333px必要なため、枠はXDの274pxから広げている */
  .p-look__text--2 {
    top: 58.83%;
    left: 2.3077%;
    width: 96.1538%;
    font-size: calc(9/16*1rem);
  }

  .p-look__text--2 p {
    display: inline;
  }

  .p-look__text--3 {
    display: none;
  }

  /*----- footer -----*/

  .l-footer {
    padding: calc(28/16*1rem) calc(10/390*100vw) calc(15/16*1rem);
    text-align: left;
  }

  .p-footer__staff {
    width: auto;
    margin: 0;
  }

  .p-footer__staffitem {
    font-size: calc(10/16*1rem);
    line-height: calc(14/10);
  }

  .p-footer__links {
    gap: calc(20/390*100vw);
    margin-top: calc(80/16*1rem);
    /* フッターはXDに合わせて左揃えだが、SNSはアイコンと揃えて中央にする */
    text-align: center;
  }

  .p-footer__linkitem {
    width: calc(100/390*100vw);
  }

  .p-footer__icon {
    width: calc(25/16*1rem);
    height: calc(25/16*1rem);
  }

  .p-footer__linktext {
    margin-top: calc(6/16*1rem);
    font-size: calc(13/16*1rem);
  }

  .p-footer__logo {
    width: calc(172/390*100vw);
    margin-top: calc(45/16*1rem);
  }
}

@media screen and (max-width: 360px) {
  html {
    font-size: 92%;
  }
}
