.page-id-5218 {
  background: #f3f1ec;
  overflow-x: clip;
}
.page-id-5218 .l-content {
  padding-top: 0;
  margin-top: 0;
  margin-bottom: 0;
}
.page-id-5218.top #content {
  padding-top: 0;
}
.page-id-5218 .w-beforeFooter {
  margin: 0;
}
.page-id-5218 .c-pageTitle,
.page-id-5218 .p-articleHead,
.page-id-5218 .p-breadcrumb,
.page-id-5218 .l-topTitleArea {
  display: none;
}
.page-id-5218 .post_content {
  margin-top: 0;
  margin-bottom: 0;
}
.page-id-5218 .l-mainContent__inner > .post_content {
  margin: 0;
}

.post_content > section.cstm-top {
  margin: 0 0 0 calc(50% - 50vw);
}

.cstm-top {
  width: 100vw;
  margin-left: calc(50% - 50vw);
  background: #f3f1ec;
  color: #333333;
  font-family: "Zen Kaku Gothic New", "Hiragino Sans", "Noto Sans JP", sans-serif;
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: 0.03em;
}
.cstm-top * {
  box-sizing: border-box;
}
.cstm-top img {
  display: block;
  max-width: 100%;
}
.cstm-top a {
  color: #333333;
  text-decoration: none;
}
.cstm-top p {
  margin: 0;
}
.cstm-top h1,
.cstm-top h2,
.cstm-top h3 {
  margin: 0;
  padding: 0;
  border: 0;
  background: none;
  color: #333333;
  font-family: "Shippori Mincho B1", "Hiragino Mincho ProN", "Yu Mincho", serif;
  font-weight: 400;
  letter-spacing: 0.08em;
}
.cstm-top h1::before, .cstm-top h1::after,
.cstm-top h2::before,
.cstm-top h2::after,
.cstm-top h3::before,
.cstm-top h3::after {
  display: none;
}
.cstm-top.-alt {
  background: #FFFFFF;
}
.cstm-top.-line {
  border-top: 1px solid #e4e0d8;
}
.cstm-top .ct-in {
  max-width: 760px;
  margin: 0 auto;
  padding: 60px 24px 56px;
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.cstm-top:not(.-alt):not(.-okaeri):not(.-band) + .cstm-top:not(.-alt):not(.-okaeri):not(.-shop):not(.-band), .cstm-top.-alt + .cstm-top.-alt {
  border-top: 1px solid #e4e0d8;
}
.cstm-top:not(.-alt):not(.-okaeri):not(.-band) + .cstm-top:not(.-alt):not(.-okaeri):not(.-shop):not(.-band) > .ct-in, .cstm-top.-alt + .cstm-top.-alt > .ct-in {
  padding-top: 68px;
}
.cstm-top.-marked {
  border-top: 0 !important;
}
.cstm-top.-marked > .ct-in {
  padding-top: 8px !important;
}
.cstm-top .ct-mark {
  align-self: center;
  width: 40px;
  aspect-ratio: 280/181;
  margin-bottom: 32px;
  background: #e4e0d8;
  -webkit-mask: url("data:image/png;base64,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") center/contain no-repeat;
  mask: url("data:image/png;base64,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") center/contain no-repeat;
}
.cstm-top .ct-eyebrow {
  display: flex;
  align-items: center;
  gap: 12px;
  font-family: "Jost", "Helvetica Neue", sans-serif;
  font-weight: 300;
  font-size: 11px;
  letter-spacing: 0.28em;
  color: #cbb486;
}
.cstm-top .ct-eyebrow .ct-rule {
  width: 32px;
  height: 1px;
  background: #e4e0d8;
}
.cstm-top .ct-h2 {
  font-size: 21px;
  line-height: 1.8;
  letter-spacing: 0.14em;
  color: #333333;
}
.cstm-top .ct-lead {
  font-size: 15px;
  line-height: 2.1;
  color: #333333;
}
.cstm-top .ct-note {
  font-size: 13px;
  line-height: 2;
  color: #706c66;
}
.cstm-top .ct-btn {
  height: 48px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  font-size: 13px;
  letter-spacing: 0.1em;
  border: 1px solid #b19a73;
  color: #5E544B;
  transition: opacity 0.2s;
}
.cstm-top .ct-btn:hover {
  opacity: 0.75;
}
.cstm-top .ct-btn.-fill {
  border-color: #b19a73;
  background: #b19a73;
  color: #fff;
}
.cstm-top .ct-btn .ct-arrow {
  font-family: "Jost", "Helvetica Neue", sans-serif;
}
.cstm-top .ct-link {
  align-self: flex-start;
  font-size: 13px;
  letter-spacing: 0.08em;
  border-bottom: 1px solid #333333;
  padding-bottom: 2px;
}
.cstm-top.-hero .ct-hero-media {
  overflow: hidden;
}
.cstm-top.-hero .ct-hero-img {
  width: 100%;
  height: 440px;
  object-fit: cover;
  animation: ctZoomOut 6s cubic-bezier(0.25, 0.1, 0.25, 1) both;
}
.cstm-top.-hero .ct-in > * {
  animation: ctFadeUp 1s ease-out both;
}
.cstm-top.-hero .ct-in > :nth-child(1) {
  animation-delay: 0.3s;
}
.cstm-top.-hero .ct-in > :nth-child(2) {
  animation-delay: 0.5s;
}
.cstm-top.-hero .ct-in > :nth-child(3) {
  animation-delay: 0.7s;
}
.cstm-top.-hero .ct-in > :nth-child(4) {
  animation-delay: 0.9s;
}
.cstm-top.-hero .ct-in {
  padding-top: 48px;
  padding-bottom: 48px;
  gap: 16px;
}
.cstm-top.-hero h1 {
  font-size: 24px;
  line-height: 1.8;
  letter-spacing: 0.14em;
  color: #333333;
  padding-bottom: 20px;
}
.cstm-top.-hero .ct-eyebrow {
  color: #cbb486;
}
.cstm-top.-hero .ct-btns {
  display: flex;
  flex-direction: column;
  padding-top: 12px;
}
.cstm-top.-hero .ct-btns .ct-btn {
  height: 52px;
  justify-content: space-between;
  border: 0;
  border-top: 1px solid #e4e0d8;
  color: #333333;
  letter-spacing: 0.12em;
}
.cstm-top.-hero .ct-btns .ct-btn:last-child {
  border-bottom: 1px solid #e4e0d8;
}
.cstm-top.-hero .ct-btns .ct-btn .ct-arrow {
  font-weight: 300;
  font-size: 15px;
  color: #706c66;
  transition: transform 0.3s;
}
.cstm-top.-hero .ct-btns .ct-btn:hover .ct-arrow {
  transform: translateX(4px);
}
.cstm-top .ct-concept-img {
  padding: 36px 0 32px;
}
.cstm-top .ct-concept-img img {
  width: 100%;
  aspect-ratio: 4/3;
  object-fit: cover;
  border-radius: 4px;
}
.cstm-top.-band {
  overflow: hidden;
}
.cstm-top.-band img {
  width: 100%;
  aspect-ratio: 1/1;
  object-fit: cover;
  object-position: 45% 58%;
}
.cstm-top.-band.-pet img {
  aspect-ratio: 16/10;
}
.cstm-top.-band.-cat img {
  object-position: 88% 50%;
}
.cstm-top.-band.-dogcat img {
  object-position: 40% 50%;
}
.cstm-top.-band + .-marked > .ct-in {
  padding-top: 80px !important;
}
.cstm-top.-marked .ct-mark {
  margin-bottom: 48px;
}
.cstm-top.-marked .ct-h2 {
  padding: 8px 0 16px;
}
.cstm-top .ct-rooms {
  padding-top: 16px;
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.cstm-top .ct-rooms .ct-room-main {
  width: 100%;
  aspect-ratio: 342/240;
  object-fit: cover;
}
.cstm-top .ct-rooms .ct-room-sub {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}
.cstm-top .ct-rooms .ct-room-sub img {
  width: 100%;
  aspect-ratio: 1/1;
  object-fit: cover;
}
.cstm-top .ct-rooms .ct-caption {
  align-self: flex-end;
  font-size: 12px;
  letter-spacing: 0.16em;
  color: #706c66;
}
.cstm-top:has(+ .-okaeri) > .ct-in {
  padding-bottom: 104px;
}
.cstm-top.-okaeri + .cstm-top > .ct-in {
  padding-top: 104px;
}
.cstm-top.-okaeri {
  position: relative;
  height: 440px;
  overflow: hidden;
}
.cstm-top.-okaeri .ct-okaeri-bg {
  position: absolute;
  left: 0;
  right: 0;
  top: -10%;
  height: 120%;
}
.cstm-top.-okaeri .ct-okaeri-bg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 14% center;
}
.cstm-top.-okaeri .ct-okaeri-copy {
  position: absolute;
  left: 50%;
  top: 80%;
  width: 200px;
  transform: translateX(-50%);
}
.cstm-top.-blobs {
  position: relative;
  overflow: hidden;
}
.cstm-top.-blobs .ct-in {
  position: relative;
  z-index: 1;
}
.cstm-top .ct-color-card {
  position: relative;
  isolation: isolate;
  width: 70%;
  margin-left: auto;
  margin-right: auto;
}
.cstm-top .ct-color-card .ct-color-view {
  margin-top: 0;
}
.cstm-top .ct-aura {
  position: absolute;
  z-index: -1;
  inset: -8px;
  animation: ctOrbit 16s linear infinite;
  pointer-events: none;
}
.cstm-top .ct-aura span {
  position: absolute;
  width: 56%;
  height: 56%;
  filter: blur(18px);
  opacity: 0.4;
  transition: background-color 1.2s ease;
  animation: ctMorph 6s ease-in-out infinite alternate;
}
.cstm-top .ct-aura .-a1 {
  top: 0;
  left: 0;
  background-color: var(--ct-c1);
  border-radius: 46% 54% 58% 42%/50% 44% 56% 50%;
}
.cstm-top .ct-aura .-a2 {
  right: 0;
  bottom: 0;
  background-color: var(--ct-c2);
  border-radius: 58% 42% 45% 55%/44% 56% 50% 50%;
  animation-duration: 8s;
  animation-direction: alternate-reverse;
}
.cstm-top .ct-color-view {
  margin-top: 8px;
  background: #fff;
  border-radius: 14px;
  overflow: hidden;
  box-shadow: 0 8px 28px rgba(46, 44, 41, 0.05), 0 1px 2px rgba(46, 44, 41, 0.03);
  padding: 10% 12% 0;
}
.cstm-top .ct-color-view .ct-color-stage {
  position: relative;
}
.cstm-top .ct-color-view img {
  width: 100%;
  aspect-ratio: 342/300;
  object-fit: cover;
}
.cstm-top .ct-color-view .ct-color-next {
  position: absolute;
  inset: 0;
  height: 100%;
  opacity: 0;
  transform: scale(1.015);
  transition: opacity 1.1s ease, transform 1.4s ease;
}
.cstm-top .ct-color-view .ct-color-next.is-show {
  opacity: 1;
  transform: scale(1);
}
.cstm-top .ct-color-view .ct-color-series,
.cstm-top .ct-color-view .ct-color-name {
  transition: opacity 0.5s ease;
}
.cstm-top .ct-color-view .is-fading-text {
  opacity: 0;
}
.cstm-top .ct-color-view .ct-color-label {
  padding: 8px 0 16px;
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 8px;
}
.cstm-top .ct-color-view .ct-color-series,
.cstm-top .ct-color-view .ct-color-name {
  font-family: "Jost", "Helvetica Neue", sans-serif;
  font-weight: 300;
  font-size: 8px;
  letter-spacing: 0.3em;
  color: #706c66;
}
.cstm-top .ct-color-grid {
  display: flex;
  flex-direction: column;
  gap: 48px;
  padding-top: 28px;
}
.cstm-top .ct-color-side {
  display: flex;
  flex-direction: column;
  gap: 36px;
}
.cstm-top .ct-color-side .ct-btn {
  margin-top: -12px;
}
.cstm-top .ct-swatches {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 14px 8px;
}
.cstm-top .ct-swatches button {
  width: 46px;
  height: 46px;
  margin: 0 auto;
  padding: 0;
  border: 1px solid transparent;
  border-radius: 50%;
  background: transparent;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: border-color 0.6s ease, background-color 0.6s ease;
}
.cstm-top .ct-swatches button[aria-pressed=true] {
  border-color: #b19a73;
  background-color: rgba(177, 154, 115, 0.12);
}
.cstm-top .ct-swatches span {
  display: block;
  width: 34px;
  height: 34px;
  border-radius: 50%;
  background-size: 149.1px 149.1px;
  background-position: -24.2px -77.8px;
  background-repeat: no-repeat;
}
.cstm-top .ct-genre {
  display: flex;
  flex-direction: column;
  gap: 12px;
  padding-top: 20px;
}
.cstm-top .ct-genre > img {
  width: 100%;
  aspect-ratio: 342/230;
  object-fit: cover;
}
.cstm-top .ct-genre .ct-genre-head {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  padding-top: 6px;
}
.cstm-top .ct-genre .ct-genre-head h3 {
  font-size: 20px;
  letter-spacing: 0.12em;
}
.cstm-top .ct-genre .ct-genre-head span {
  font-family: "Jost", "Helvetica Neue", sans-serif;
  font-weight: 300;
  font-size: 11px;
  letter-spacing: 0.24em;
  color: #5e554b;
}
.cstm-top .ct-genre p {
  font-size: 14px;
  line-height: 1.9;
  color: #333333;
}
.cstm-top .ct-rows {
  display: flex;
  flex-direction: column;
  padding-top: 4px;
}
.cstm-top .ct-rows a {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 12px 0;
  border-top: 1px solid #e4e0d8;
}
.cstm-top .ct-rows a:last-child {
  border-bottom: 1px solid #e4e0d8;
}
.cstm-top .ct-rows a img {
  flex-shrink: 0;
  width: 64px;
  height: 64px;
  object-fit: cover;
}
.cstm-top .ct-rows a .ct-row-txt {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.cstm-top .ct-rows a b {
  font-weight: 400;
  font-size: 15px;
  letter-spacing: 0.04em;
}
.cstm-top .ct-rows a small {
  font-size: 12px;
  color: #706c66;
}
.cstm-top .ct-rows a .ct-chev {
  font-size: 18px;
  color: #706c66;
}
.cstm-top .ct-search {
  display: flex;
  flex-direction: column;
  gap: 6px;
  padding-top: 12px;
}
.cstm-top .ct-search label {
  font-size: 11px;
  letter-spacing: 0.08em;
  color: #706c66;
}
.cstm-top .ct-search .ct-search-box {
  display: flex;
  height: 44px;
  background: #fff;
  border: 1px solid #e4e0d8;
}
.cstm-top .ct-search input {
  flex: 1;
  min-width: 0;
  border: 0;
  background: transparent;
  padding: 0 14px;
  font-family: inherit;
  font-size: 16px;
  color: #333333;
  outline: none;
}
.cstm-top .ct-search input::placeholder {
  color: #706c66;
}
.cstm-top .ct-search button {
  width: 44px;
  border: 0;
  background: #b19a73;
  color: #f3f1ec;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
}
.cstm-top .ct-cats {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  column-gap: 18px;
  border-top: 1px solid #e4e0d8;
}
.cstm-top .ct-cats a {
  height: 72px;
  display: flex;
  align-items: center;
  gap: 10px;
  border-bottom: 1px solid #e4e0d8;
  font-size: 13px;
  line-height: 1.5;
  letter-spacing: 0.02em;
}
.cstm-top .ct-cats img {
  flex-shrink: 0;
  width: 44px;
  height: 44px;
  border-radius: 50%;
  object-fit: cover;
  filter: saturate(0.45) brightness(1.06) contrast(0.92);
}
.cstm-top .ct-sub-h {
  padding-top: 24px;
  font-family: "Shippori Mincho B1", "Hiragino Mincho ProN", "Yu Mincho", serif;
  font-size: 16px;
  font-weight: 400;
  letter-spacing: 0.1em;
}
.cstm-top .ct-picks {
  display: flex;
  flex-direction: column;
}
.cstm-top .ct-picks a {
  display: flex;
  gap: 14px;
  padding: 14px 0;
  border-top: 1px solid #e4e0d8;
}
.cstm-top .ct-picks a:last-child {
  border-bottom: 1px solid #e4e0d8;
}
.cstm-top .ct-picks img {
  flex-shrink: 0;
  width: 100px;
  height: 75px;
  object-fit: cover;
}
.cstm-top .ct-picks .ct-pick-txt {
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.cstm-top .ct-picks small {
  font-size: 11px;
  letter-spacing: 0.08em;
  color: #5e554b;
}
.cstm-top .ct-picks b {
  font-weight: 400;
  font-size: 14px;
  line-height: 1.6;
}
.cstm-top .ct-new-h {
  padding-top: 32px;
  font-family: "Jost", "Helvetica Neue", sans-serif;
  font-weight: 300;
  font-size: 11px;
  letter-spacing: 0.28em;
  color: #cbb486;
}
.cstm-top .ct-new {
  margin-top: -8px;
}
.cstm-top .ct-new .p-postList {
  display: block !important;
  margin: 0 !important;
}
.cstm-top .ct-new .p-postList__item {
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
}
.cstm-top .ct-new .p-postList__link {
  display: block;
  padding: 7px 0 !important;
  background: none !important;
  box-shadow: none !important;
  border: 0 !important;
}
.cstm-top .ct-new .p-postList__link::before, .cstm-top .ct-new .p-postList__link::after {
  display: none !important;
}
.cstm-top .ct-new .p-postList__link:hover {
  opacity: 0.7;
}
.cstm-top .ct-new .p-postList__body {
  display: flex;
  align-items: baseline;
  gap: 14px;
  padding: 0 !important;
}
.cstm-top .ct-new .p-postList__meta {
  flex-shrink: 0;
  margin: 0 !important;
  font-size: 11px;
  color: #706c66;
}
.cstm-top .ct-new .p-postList__meta .c-postTimes__posted::before {
  display: none;
}
.cstm-top .ct-new .p-postList__title {
  min-width: 0;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  font-size: 12.5px !important;
  font-weight: 400 !important;
  line-height: 1.7 !important;
  color: #706c66;
}
.cstm-top .ct-ig-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.cstm-top .sbi_follow_btn,
.cstm-top #sbi_load {
  display: none !important;
}
.cstm-top .ct-shop {
  display: flex;
  flex-direction: column;
  background: #fff;
  border: 1px solid #e4e0d8;
}
.cstm-top .ct-shop img {
  width: 100%;
  height: 170px;
  object-fit: cover;
}
.cstm-top .ct-shop .ct-shop-body {
  padding: 20px 20px 22px;
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.cstm-top .ct-shop .ct-shop-ttl {
  font-family: "Shippori Mincho B1", "Hiragino Mincho ProN", "Yu Mincho", serif;
  font-size: 19px;
  font-weight: 400;
  letter-spacing: 0.08em;
}
.cstm-top .ct-shop .ct-btn {
  margin-top: 8px;
  height: 46px;
}
@media screen and (min-width: 768px) {
  .cstm-top .ct-in {
    padding: 96px 40px 104px;
  }
  .cstm-top .ct-h2 {
    font-size: 24px;
  }
  .cstm-top.-hero .ct-hero-img {
    height: 68vh;
    min-height: 480px;
  }
  .cstm-top.-hero h1 {
    font-size: 28px;
  }
  .cstm-top.-hero .ct-btns {
    max-width: 480px;
  }
  .cstm-top.-band img {
    aspect-ratio: 21/9;
    object-position: 50% 56%;
  }
  .cstm-top:has(+ .-okaeri) > .ct-in {
    padding-bottom: 168px;
  }
  .cstm-top.-okaeri + .cstm-top > .ct-in {
    padding-top: 168px;
  }
  .cstm-top.-okaeri {
    height: 620px;
  }
  .cstm-top.-okaeri .ct-okaeri-copy {
    left: 68%;
    top: 45%;
    width: 280px;
  }
  .cstm-top .ct-color-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 32px;
    align-items: start;
  }
  .cstm-top .ct-color-card {
    width: 70%;
  }
  .cstm-top .ct-genres {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 28px;
  }
  .cstm-top .ct-cats {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
  .cstm-top .ct-picks {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    column-gap: 28px;
  }
  .cstm-top .ct-picks a:last-child {
    border-bottom: 0;
  }
  .cstm-top .ct-shop {
    flex-direction: row;
  }
  .cstm-top .ct-shop img {
    width: 45%;
    height: auto;
  }
  .cstm-top .ct-shop .ct-shop-body {
    justify-content: center;
    padding: 32px;
  }
}
@media screen and (min-width: 960px) {
  .cstm-top .ct-in {
    max-width: 1120px;
    padding: 128px 64px 136px;
    gap: 24px;
  }
  .cstm-top:not(.-alt):not(.-okaeri):not(.-band) + .cstm-top:not(.-alt):not(.-okaeri):not(.-shop):not(.-band) > .ct-in, .cstm-top.-alt + .cstm-top.-alt > .ct-in {
    padding-top: 112px;
  }
  .cstm-top .ct-h2 {
    font-size: 25px;
  }
  .cstm-top .ct-lead {
    font-size: 15.5px;
  }
  .cstm-top .ct-btn {
    height: 52px;
  }
  .cstm-top.-hero .ct-hero-img {
    height: 74vh;
    min-height: 520px;
    max-height: 800px;
  }
  .cstm-top.-hero .ct-in {
    display: grid;
    grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr);
    column-gap: 96px;
    row-gap: 0;
    padding-top: 112px;
    padding-bottom: 128px;
  }
  .cstm-top.-hero .ct-eyebrow {
    grid-column: 1;
    grid-row: 1;
    padding-bottom: 24px;
  }
  .cstm-top.-hero h1 {
    grid-column: 1;
    grid-row: 2/4;
    font-size: 32px;
    line-height: 1.9;
    padding-bottom: 0;
  }
  .cstm-top.-hero .ct-lead {
    grid-column: 2;
    grid-row: 2;
    padding-top: 14px;
    font-size: 16px;
  }
  .cstm-top.-hero .ct-btns {
    grid-column: 2;
    grid-row: 3;
    max-width: none;
    padding-top: 32px;
  }
  .cstm-top.-band img {
    aspect-ratio: 16/7;
    max-height: 78vh;
  }
  .cstm-top.-band.-pet {
    background: #f3f1ec;
    padding: 0 64px;
  }
  .cstm-top.-band.-pet img {
    max-width: 992px;
    margin: 0 auto;
    aspect-ratio: 3/1;
    border-radius: 4px;
  }
  .cstm-top.-band.-cat {
    padding-top: 104px;
  }
  .cstm-top.-band.-cat img {
    object-position: 50% 45%;
  }
  .cstm-top.-band.-dogcat img {
    object-position: 50% 58%;
  }
  .cstm-top.-band + .-marked > .ct-in {
    padding-top: 112px !important;
  }
  .cstm-top.-marked > .ct-in {
    display: grid;
    grid-template-columns: minmax(0, 5fr) minmax(0, 6fr);
    column-gap: 96px;
    row-gap: 28px;
  }
  .cstm-top.-marked > .ct-in > * {
    grid-column: 1;
  }
  .cstm-top.-marked > .ct-in .ct-mark {
    grid-column: 1/-1;
    grid-row: 1;
    justify-self: center;
    margin-bottom: 72px;
  }
  .cstm-top.-marked > .ct-in .ct-eyebrow {
    grid-row: 2;
  }
  .cstm-top.-marked > .ct-in .ct-h2 {
    grid-row: 3;
    padding: 12px 0 20px;
  }
  .cstm-top.-marked > .ct-in > p:nth-of-type(1) {
    grid-row: 4;
  }
  .cstm-top.-marked > .ct-in > p:nth-of-type(2) {
    grid-row: 5;
  }
  .cstm-top.-marked > .ct-in > p:nth-of-type(3) {
    grid-row: 6;
    padding-top: 16px;
  }
  .cstm-top.-marked > .ct-in .ct-concept-img {
    grid-column: 2;
    grid-row: 2/7;
    align-self: center;
    padding: 0;
  }
  .cstm-top.-marked > .ct-in .ct-rooms {
    grid-column: 1/-1;
    grid-row: 7;
  }
  .cstm-top .ct-rooms {
    padding-top: 88px;
    display: grid;
    grid-template-columns: minmax(0, 2fr) minmax(0, 1fr);
    gap: 16px;
  }
  .cstm-top .ct-rooms .ct-room-main {
    grid-row: 1/3;
    height: 100%;
    aspect-ratio: auto;
  }
  .cstm-top .ct-rooms .ct-room-sub {
    display: contents;
  }
  .cstm-top .ct-rooms .ct-room-sub img {
    aspect-ratio: 4/3;
  }
  .cstm-top.-okaeri {
    height: 680px;
  }
  .cstm-top .ct-color-grid {
    column-gap: 96px;
    align-items: center;
    padding-top: 40px;
  }
  .cstm-top .ct-color-card {
    width: 76%;
  }
  .cstm-top .ct-swatches {
    gap: 20px 12px;
  }
  .cstm-top .ct-color-side .ct-btn {
    align-self: flex-start;
    padding: 0 40px;
  }
  .cstm-top .ct-genres {
    column-gap: 48px;
    padding-top: 16px;
  }
  .cstm-top .ct-genre > img {
    aspect-ratio: 4/3;
  }
  .cstm-top .ct-search {
    max-width: 340px;
    gap: 6px;
    padding-top: 20px;
  }
  .cstm-top .ct-search label {
    font-size: 11px;
  }
  .cstm-top .ct-search .ct-search-box {
    height: 38px;
  }
  .cstm-top .ct-search input {
    padding: 0 12px;
    font-size: 13px;
  }
  .cstm-top .ct-search button {
    width: 38px;
  }
  .cstm-top .ct-search button svg {
    width: 15px;
    height: 15px;
  }
  .cstm-top .ct-cats {
    column-gap: 32px;
    margin-top: 8px;
  }
  .cstm-top .ct-cats a {
    height: 88px;
    gap: 16px;
    font-size: 14.5px;
    letter-spacing: 0.06em;
    transition: opacity 0.2s;
  }
  .cstm-top .ct-cats a:hover {
    opacity: 0.7;
  }
  .cstm-top .ct-cats img {
    width: 56px;
    height: 56px;
  }
  .cstm-top .ct-sub-h {
    padding-top: 48px;
  }
  .cstm-top .ct-picks {
    column-gap: 56px;
  }
  .cstm-top .ct-picks img {
    width: 128px;
    height: 96px;
  }
  .cstm-top .ct-new-h {
    padding-top: 48px;
  }
  .cstm-top .ct-new {
    max-width: 640px;
  }
  .cstm-top#ct-journal .ct-in > .ct-btn {
    align-self: center;
    width: 360px;
    margin-top: 40px !important;
  }
  .cstm-top .ct-shop img {
    width: 52%;
    min-height: 320px;
  }
  .cstm-top .ct-shop .ct-shop-body {
    padding: 48px 56px;
  }
  .cstm-top .ct-shop .ct-btn {
    align-self: flex-start;
    padding: 0 40px;
  }
}

.ct-motion .cstm-top:not(.-hero) .ct-eyebrow,
.ct-motion .cstm-top:not(.-hero) .ct-h2,
.ct-motion .cstm-top:not(.-hero) .ct-lead {
  opacity: 0;
  transform: translateY(16px);
  transition: opacity 0.9s ease-out, transform 0.9s ease-out;
}
.ct-motion .cstm-top:not(.-hero) .ct-h2 {
  transition-delay: 0.12s;
}
.ct-motion .cstm-top:not(.-hero) .ct-lead {
  transition-delay: 0.24s;
}
.ct-motion .cstm-top:not(.-hero) .is-in {
  opacity: 1 !important;
  transform: none !important;
}

@keyframes ctOrbit {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}
@keyframes ctMorph {
  0% {
    transform: scale(0.9);
    border-radius: 46% 54% 58% 42%/50% 44% 56% 50%;
  }
  100% {
    transform: scale(1.08);
    border-radius: 58% 42% 40% 60%/42% 58% 44% 56%;
  }
}
@keyframes ctZoomOut {
  from {
    transform: scale(1.06);
  }
  to {
    transform: scale(1);
  }
}
@keyframes ctFadeUp {
  from {
    opacity: 0;
    transform: translateY(14px);
  }
  to {
    opacity: 1;
    transform: none;
  }
}
.ct-motion .cstm-top.-band img {
  opacity: 0;
  transform: scale(1.12);
  transition: opacity 1.6s ease-out, transform 3s cubic-bezier(0.2, 0.6, 0.2, 1);
}
.ct-motion .cstm-top.-band img.is-in {
  opacity: 1;
  transform: none;
}

@media (prefers-reduced-motion: reduce) {
  .cstm-top *,
  .ct-motion .cstm-top * {
    animation: none !important;
    transition: none !important;
    opacity: 1 !important;
    transform: none !important;
  }
}
