@charset "UTF-8";
/* 変数定義 */
.koto {
  --color-primary: #ce403f;
  --color-secondary: #2b6a8f;
  --color-brown-medium: #997a47;
  --color-text: #312005;
  --color-white: #ffffff;
  --color-bg-card: #faf8f4;
  --font-japanese: YuGothic, "Yu Gothic", "游ゴシック体", "游ゴシック",
    "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo,
    sans-serif;
  --font-shippori: "Shippori Mincho B1", serif;
  --font-crimson: "Crimson Text", serif;
  --font-cormorant: "Cormorant Garamond", serif;
  --font-klee: "Klee One", cursive;
}

.koto {
  /* 基本スタイル */
  font-family: var(--font-japanese);
  font-size: 16px;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.03em;
  color: var(--color-text);
  container-type: inline-size;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
  /* FV */
  /* ナビゲーション */
  /* 選べるチョイス */
  /* レビュー */
  /* why? */
  /* おすすめリスト */
  /* ご利用の流れ */
  /* ギフトリストとは？ */
  /* 体験ギフトは法人向け */
  /* ギフトコンシェルジュ */
  /* 長寿祝いギフト */
  /* あとらくギフト */
  /* よくある質問 */
}
.koto div,
.koto h1,
.koto h2,
.koto h3,
.koto h4,
.koto h5,
.koto h6,
.koto p,
.koto blockquote,
.koto pre,
.koto address,
.koto ul,
.koto ol,
.koto li,
.koto dl,
.koto dt,
.koto dd,
.koto table,
.koto th,
.koto td,
.koto form,
.koto fieldset,
.koto section,
.koto nav,
.koto article,
.koto aside,
.koto hgroup,
.koto header,
.koto footer,
.koto figure,
.koto figcaption,
.koto summary {
  font-family: var(--font-japanese);
}
.koto .koto-bottom-image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.koto a {
  text-decoration: none;
}
.koto a:hover {
  opacity: 0.7;
}
.koto .item-link {
  display: inline-flex;
  align-items: center;
  justify-content: flex-start;
  width: 100%;
  padding: 4px 28px 4px 32px;
  background-color: var(--color-primary);
  color: var(--color-white);
  text-decoration: none;
  font-size: 14px;
  font-weight: 500;
  border-radius: 27px;
  box-sizing: border-box;
  gap: 4px;
  position: relative;
}
.koto .item-link::before {
  content: "★";
  position: absolute;
  left: 12px;
  top: 50%;
  transform: translateY(-50%);
  font-size: 14px;
  color: var(--color-white);
}
.koto .item-link::after {
  content: "→";
  position: absolute;
  right: 12px;
  top: 50%;
  transform: translateY(-50%);
  font-size: 16px;
  color: var(--color-white);
}
.koto .item-catalog-link {
  display: inline-flex;
  align-items: center;
  justify-content: flex-start;
  width: 100%;
  padding: 4px 28px 4px 32px;
  background-color: var(--color-brown-medium);
  color: var(--color-white);
  text-decoration: none;
  font-size: 14px;
  font-weight: 500;
  border-radius: 27px;
  box-sizing: border-box;
  gap: 4px;
  position: relative;
}
.koto .item-catalog-link::before {
  content: "";
  position: absolute;
  left: 12px;
  top: 50%;
  transform: translateY(-50%);
  width: 17px;
  height: 16px;
  background: url("../images/icons/icon-book.svg") no-repeat center/contain;
}
.koto .item-catalog-link::after {
  content: "→";
  position: absolute;
  right: 12px;
  top: 50%;
  transform: translateY(-50%);
  font-size: 16px;
  color: var(--color-white);
}
.koto .item-catalog-link span {
  display: none;
}
.koto .item-actions {
  display: flex;
  flex-direction: column;
  gap: 6px;
  width: 100%;
  min-height: 80px;
}
.koto .fv {
  position: relative;
}
.koto .fv img {
  width: 100%;
  height: auto;
  aspect-ratio: 767/1080;
}
.koto .koto-nav {
  position: -webkit-sticky;
  position: sticky;
  top: 50px;
  z-index: 3;
  background: rgba(204, 133, 16, 0.8);
}
.koto .koto-nav .nav-choice-container {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0;
}
.koto .koto-nav .nav-choice-container::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 50%;
  height: 100%;
  background: #3e99a7;
  z-index: -1;
}
.koto .koto-nav .nav-choice-container::after {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  display: block;
  width: 50%;
  height: 100%;
  background: #367ab2;
  z-index: -1;
}
.koto .koto-nav .nav-choice-container .koto-inner {
  display: flex;
  width: 100%;
}
.koto .koto-nav .nav-choice-item {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  width: calc(50% - 0.5px);
  box-sizing: border-box;
  cursor: pointer;
  transition: all 0.3s ease;
}
.koto .koto-nav .nav-choice-item::after {
  content: "";
  position: absolute;
  right: 10px;
  top: 50%;
  transform: translateY(-50%);
  width: 0;
  height: 0;
  border-left: 6px solid transparent;
  border-right: 6px solid transparent;
  border-top: 9px solid var(--color-white);
}
.koto .koto-nav .nav-choice-item:nth-child(n+2) {
  border-left: 1px solid #fff;
}
.koto .koto-nav .nav-choice-item.catalog-choice {
  background: #3e99a7;
}
.koto .koto-nav .nav-choice-item.catalog-choice.active {
  background: #3e99a7;
}
.koto .koto-nav .nav-choice-item.ticket-choice {
  background: #367ab2;
}
.koto .koto-nav .nav-choice-item.ticket-choice.active {
  background: #367ab2;
}
.koto .koto-nav .nav-choice-item .nav-choice-content {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  padding: 10px;
}
.koto .koto-nav .nav-choice-item .nav-choice-title {
  font-family: var(--font-japanese);
  font-weight: 700;
  font-size: 14px;
  color: var(--color-white);
  line-height: 1.2;
  margin-bottom: 2px;
}
.koto .koto-nav .nav-choice-item .nav-choice-subtitle {
  font-family: var(--font-japanese);
  font-weight: 700;
  font-size: 14px;
  color: var(--color-white);
  line-height: 1.2;
}
.koto .koto-nav .nav-choice-item:hover {
  opacity: 0.8;
}
.koto .choice.catalog-choice {
  background: url("../images/sp/choice-catalog-bk.webp") no-repeat center top/cover;
  padding: 84px 0 50px;
}
.koto .choice.catalog-choice .choice-title .choice-icon::before {
  background: url("../images/sp/choice-title-badge01.webp") no-repeat left top/contain;
}
.koto .choice.catalog-choice .choice-title .choice-icon::after {
  background: url("../images/sp/choice-title-image01.webp") no-repeat left top/contain;
}
.koto .choice.catalog-choice .choice-title-content {
  background: url("../images/sp/choice-catalog-title-bk.webp") no-repeat center top/contain;
  aspect-ratio: 345/155;
}
.koto .choice.catalog-choice .choice-title-content .choice-main-title {
  width: calc(100% + 4px);
  margin: 0 0 0 4px;
}
.koto .choice.ticket-choice {
  background: url("../images/sp/choice-ticket-bk.webp") no-repeat center top/cover;
  border-top: 2px solid #2b6a8f;
  padding: 84px 0 90px;
}
.koto .choice.ticket-choice .choice-title .choice-icon::before {
  background: url("../images/sp/choice-title-badge02.webp") no-repeat left top/contain;
}
.koto .choice.ticket-choice .choice-title .choice-icon::after {
  background: url("../images/sp/choice-title-image02.webp") no-repeat left top/contain;
  aspect-ratio: 249/232;
  margin-top: -28px;
}
.koto .choice.ticket-choice .choice-title .choice-main-title {
  font-size: 27px;
}
.koto .choice.ticket-choice .choice-title .choice-main-title small {
  font-size: 20px;
  letter-spacing: -0.04em;
}
.koto .choice.ticket-choice .choice-title-content {
  background: url("../images/sp/choice-ticket-title-bk.webp") no-repeat center top/contain;
  aspect-ratio: 1036/573;
  width: 100%;
}
.koto .choice.ticket-choice .choice-title-content .choice-main-title {
  margin: 0;
}
.koto .choice .choice-inner {
  margin: 0 auto;
  padding: 0 15px;
}
.koto .choice .choice-title {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  max-width: 345px;
  margin: 0 auto 8px;
  text-align: center;
}
.koto .choice .choice-title .choice-icon {
  position: absolute;
  top: -53px;
  left: 0;
  display: flex;
  align-items: center;
}
.koto .choice .choice-title .choice-icon::before {
  content: "";
  display: inline-block;
  width: 94px;
  height: 94px;
}
.koto .choice .choice-title .choice-icon::after {
  content: "";
  display: inline-block;
  aspect-ratio: 270/197;
  width: 85px;
  height: auto;
  margin-left: -23px;
}
.koto .choice .choice-title .choice-title-content {
  padding-top: 16px;
}
.koto .choice .choice-title .choice-title-content .choice-label {
  position: relative;
  font-size: 16px;
  display: inline-block;
  font-family: var(--font-shippori);
  margin-bottom: 14px;
}
.koto .choice .choice-title .choice-title-content .choice-label::before, .koto .choice .choice-title .choice-title-content .choice-label::after {
  content: "";
  position: absolute;
  top: 100%;
  left: 0;
  width: 100%;
  height: 1px;
  background-color: var(--color-primary);
}
.koto .choice .choice-title .choice-title-content .choice-label::after {
  top: calc(100% + 4px);
}
.koto .choice .choice-title .choice-title-content .choice-label span {
  font-size: 20px;
  color: var(--color-primary);
}
.koto .choice .choice-title .choice-title-content .choice-main-title {
  font-family: var(--font-shippori);
  font-size: 28px;
  font-weight: 600;
  line-height: 1.2;
  color: var(--color-text);
}
.koto .choice .choice-title .choice-title-content .choice-main-title span {
  color: var(--color-primary);
}
.koto .choice .choice-description {
  margin-bottom: 24px;
}
.koto .choice .choice-description p {
  font-family: var(--font-japanese);
  font-size: 16px;
  line-height: 1.7;
  color: var(--color-text);
  margin-right: -1px;
}
.koto .choice .choice-description p:last-child {
  margin-bottom: 0;
}
.koto .choice .choice-description p br {
  display: none;
}
.koto .choice .choice-slider {
  position: relative;
  margin: 0 auto;
}
.koto .choice .choice-slider .slick-track {
  display: flex;
  height: 100%;
}
.koto .choice .choice-slider .slick-arrow {
  width: 30px;
  height: 60px;
  z-index: 2;
}
.koto .choice .choice-slider .slick-arrow::before {
  content: none;
}
.koto .choice .choice-slider .slick-arrow img {
  width: 100%;
  height: 100%;
}
.koto .choice .choice-slider .slick-prev {
  top: calc(50% - 36px);
  transform: translate(0, -50%);
  left: 0;
}
.koto .choice .choice-slider .slick-next {
  top: calc(50% - 36px);
  transform: translate(0, -50%);
  right: 0;
}
.koto .choice .choice-slider .choice-list {
  display: flex;
  padding: 0;
  margin-top: -1px;
  min-height: 600px;
  overflow-x: auto;
  overflow-y: hidden;
  -webkit-overflow-scrolling: touch;
  scroll-snap-type: x mandatory;
}
.koto .choice .choice-slider .choice-list .choice-card {
  background: var(--color-white);
  display: flex;
  flex-direction: column;
  height: auto;
  min-height: 550px;
  border-radius: 15px;
  padding: 30px 15px;
  margin: 0 15px;
  flex-shrink: 0;
  width: 300px;
  scroll-snap-align: start;
}
.koto .choice .choice-slider .choice-list .choice-card .choice-card-image {
  position: relative;
}
.koto .choice .choice-slider .choice-list .choice-card .choice-card-image::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  aspect-ratio: 1/1;
  border: 1px solid #c5beaf;
  border-radius: 6px;
}
.koto .choice .choice-slider .choice-list .choice-card .choice-card-image img {
  width: 100%;
  height: auto;
  aspect-ratio: 1/1;
  -o-object-fit: cover;
     object-fit: cover;
}
.koto .choice .choice-slider .choice-list .choice-card .choice-card-image .choice-card-buttons {
  display: none;
}
.koto .choice .choice-slider .choice-list .choice-card .choice-card-content {
  flex: 1;
  display: flex;
  flex-direction: column;
}
.koto .choice .choice-slider .choice-list .choice-card .choice-card-content .choice-card-title {
  font-size: 20px;
  font-weight: bold;
  line-height: 1.5;
  color: var(--color-text);
  margin: 16px 0 6px 0;
}
.koto .choice .choice-slider .choice-list .choice-card .choice-card-content .choice-card-price {
  font-size: 20px;
  font-weight: 700;
}
.koto .choice .choice-slider .choice-list .choice-card .choice-card-content .choice-card-price span {
  font-size: 14px;
}
.koto .choice .choice-slider .choice-list .choice-card .choice-card-content .choice-card-detail {
  display: none;
}
.koto .choice .choice-slider .choice-list .choice-card .choice-card-buttons {
  display: flex;
  gap: 8px;
  width: 100%;
}
.koto .choice .choice-slider .choice-list .choice-card .choice-card-buttons a {
  padding: 6px 6px 6px 26px;
}
.koto .choice .choice-slider .choice-list .choice-card .choice-card-buttons a::before {
  left: 8px;
}
.koto .choice .choice-slider .choice-list .choice-card .choice-card-buttons a::after {
  right: 8px;
}
.koto .choice .choice-slider .choice-list .choice-card .choice-card-thumbnails {
  display: flex;
  justify-content: space-between;
  gap: 14px;
  margin: 16px 0 12px;
}
.koto .choice .choice-slider .choice-list .choice-card .choice-card-thumbnails .choice-card-thumbnails-item {
  position: relative;
  width: 96px;
  height: 96px;
  border: 1px solid #c5beaf;
  border-radius: 6px;
  overflow: hidden;
}
.koto .choice .choice-slider .choice-list .choice-card .choice-card-thumbnails .choice-card-thumbnails-item img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.koto .choice .choice-area-tabs {
  position: -webkit-sticky;
  position: sticky;
  top: 0;
  display: flex;
  justify-content: center;
  background: url("../images/pc/choice-ticket-bk.webp") no-repeat center top/cover;
  border-bottom: 4px solid var(--color-secondary);
  z-index: 2;
}
.koto .choice .choice-area-tabs ul {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-template-rows: repeat(2, 1fr);
  gap: 0;
  width: 100%;
  list-style: none;
  padding: 0;
  margin: 0;
  border: 1px solid var(--color-secondary);
}
.koto .choice .choice-area-tabs .choice-area-tab {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 40px;
  padding: 8px 12px;
  border: none;
  border-right: 1px solid var(--color-secondary);
  border-bottom: 1px solid var(--color-secondary);
  background-color: var(--color-white);
  color: var(--color-secondary);
  font-family: "Noto Sans JP", sans-serif;
  font-size: 14px;
  font-weight: 700;
  cursor: pointer;
  transition: all 0.3s ease;
  box-sizing: border-box;
}
.koto .choice .choice-area-tabs .choice-area-tab:nth-child(3n) {
  border-right: none;
}
.koto .choice .choice-area-tabs .choice-area-tab:nth-child(n+4) {
  border-bottom: none;
}
.koto .choice .choice-area-tabs .choice-area-tab.active {
  background-color: var(--color-secondary);
  color: var(--color-white);
}
.koto .choice .choice-area-contents .choice-area-content {
  display: none;
  background-color: var(--color-white);
  border-bottom: 4px solid var(--color-secondary);
  padding: 30px 10px 48px;
}
.koto .choice .choice-area-contents .choice-area-content.active {
  display: block;
}
.koto .choice .choice-area-contents .area-title {
  text-align: center;
  margin-bottom: 16px;
}
.koto .choice .choice-area-contents .area-title:first-child::before {
  content: "";
  display: block;
  width: 68px;
  height: 80px;
  background: url("../images/icons/choice-area-content-icon.webp") no-repeat center top/contain;
  margin: auto;
}
.koto .choice .choice-area-contents .area-title h3 {
  font-family: var(--font-shippori);
  color: var(--color-primary);
  font-size: 24px;
}
.koto .choice .choice-area-contents .area-title p {
  font-size: 20px;
  font-weight: bold;
  line-height: 1.2;
}
.koto .choice .choice-area-contents .area-title p span {
  position: relative;
  font-family: var(--font-shippori);
  color: var(--color-primary);
  font-size: 32px;
  font-weight: normal;
  margin-left: 4px;
}
.koto .choice .choice-area-contents .area-title p span::after {
  content: "";
  position: absolute;
  top: 0;
  left: 12px;
  width: 24px;
  height: 23px;
  display: inline-block;
  background: url("../images/icons/area-ranking-title-icon.svg") no-repeat top left/contain;
}
.koto .choice .choice-area-contents .area-ranking {
  display: flex;
  flex-direction: column;
  margin-bottom: 36px;
  gap: 12px;
}
.koto .choice .choice-area-contents .area-ranking .area-ranking-item {
  position: relative;
  border: 1px solid #c5beaf;
  border-radius: 0 12px 12px 12px;
  list-style: none;
  padding: 12px 10px;
}
.koto .choice .choice-area-contents .area-ranking .area-ranking-item::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 30px;
  height: 30px;
  display: flex;
  justify-content: center;
  align-items: center;
  font-family: var(--font-crimson);
  font-size: 1.5em;
  color: var(--color-white);
}
.koto .choice .choice-area-contents .area-ranking .area-ranking-item:nth-child(1)::after {
  content: "1";
  background-color: #c79b33;
}
.koto .choice .choice-area-contents .area-ranking .area-ranking-item:nth-child(2)::after {
  content: "2";
  background-color: #9a9a9a;
}
.koto .choice .choice-area-contents .area-ranking .area-ranking-item:nth-child(3)::after {
  content: "3";
  background-color: #977c54;
}
.koto .choice .choice-area-contents .area-ranking .area-ranking-item .area-ranking-wrap {
  display: flex;
  align-items: center;
  gap: 10px;
}
.koto .choice .choice-area-contents .area-ranking .area-ranking-item .area-ranking-images {
  display: flex;
  flex-wrap: wrap;
  flex: 0 0 46%;
  aspect-ratio: 1/1;
  gap: 4px;
}
.koto .choice .choice-area-contents .area-ranking .area-ranking-item .area-ranking-images img {
  width: calc(50% - 2px);
}
.koto .choice .choice-area-contents .area-ranking .area-ranking-item .area-ranking-detail {
  display: flex;
  flex-direction: column;
  flex: 0 0 calc(54% - 10px);
  gap: 3px;
}
.koto .choice .choice-area-contents .area-ranking .area-ranking-item .area-ranking-detail .detail-area {
  font-size: 14px;
}
.koto .choice .choice-area-contents .area-ranking .area-ranking-item .area-ranking-detail .detail-name {
  font-size: 16px;
  font-weight: bold;
}
.koto .choice .choice-area-contents .area-ranking .area-ranking-item .area-ranking-detail .detail-voucher-pax {
  font-size: 14px;
}
.koto .choice .choice-area-contents .area-ranking .area-ranking-item .area-ranking-detail .detail-price {
  font-size: 14px;
  font-weight: bold;
}
.koto .choice .choice-area-contents .area-ranking .area-ranking-item > p {
  font-size: 16px;
  overflow: hidden;
  display: -webkit-box;
  text-overflow: ellipsis;
  line-clamp: 2;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  margin: 12px auto;
}
.koto .choice .choice-area-contents .area-ranking .area-ranking-item .area-ranking-button {
  min-width: 180px;
  width: 55%;
  margin: auto;
}
.koto .choice .choice-area-contents .area-ranking .area-ranking-item .area-ranking-button .item-link {
  height: 32px;
}
.koto .choice .choice-area-contents .tab-buttons {
  display: flex;
  justify-content: center;
  border-bottom: 1px solid var(--color-secondary);
  padding: 0 4px;
  margin-bottom: 16px;
  gap: 4px;
}
.koto .choice .choice-area-contents .tab-button {
  width: 50%;
  min-width: 92px;
  height: 50px;
  padding: 4px;
  border: 1px solid var(--color-secondary);
  border-bottom: none;
  border-radius: 6px 6px 0 0;
  background-color: var(--color-white);
  color: var(--color-text);
  font-family: "Noto Sans JP", sans-serif;
  font-size: 16px;
  font-weight: 700;
  line-height: 130%;
  cursor: pointer;
  transition: all 0.3s ease;
  box-sizing: border-box;
  flex: 1;
}
.koto .choice .choice-area-contents .tab-button.active {
  background-color: var(--color-secondary);
  color: var(--color-white);
}
.koto .choice .choice-area-contents .tab-content-container .tab-panel {
  display: none;
}
.koto .choice .choice-area-contents .tab-content-container .tab-panel.active {
  display: block;
}
.koto .choice .choice-area-contents .area-occasions ul {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 0;
  padding: 0;
}
.koto .choice .choice-area-contents .area-occasions ul li {
  width: calc(33.333% - 6px);
  list-style: none;
}
.koto .choice .choice-area-contents .area-occasions ul li a {
  display: block;
  width: 100%;
  aspect-ratio: 167/90;
}
.koto .choice .choice-area-contents .area-occasions ul li img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: 6px;
}
.koto .choice .choice-area-contents .area-list-button {
  display: flex;
  flex-direction: column;
  justify-content: center;
  width: 100%;
  max-width: 325px;
  min-height: 60px;
  font-family: var(--font-shippori);
  color: var(--color-white);
  line-height: 1.4;
  background: url("../images/sp/area-ticket-list-button.webp") no-repeat left top/contain;
  padding: 0 21px 0 70px;
  margin: 16px auto 0;
  box-sizing: border-box;
}
.koto .choice .choice-area-contents .area-list-button span {
  display: block;
}
.koto #review {
  position: relative;
  background: url("../images/sp/review-bg-top.webp") no-repeat center top/contain;
  width: 100%;
  height: 100%;
  padding: 108.5333% 0 17%;
  margin-top: -40px;
  /* レビューカード */
}
.koto #review::before {
  content: "";
  position: absolute;
  top: -20px;
  left: 50%;
  transform: translateX(-52%);
  background: url("../images/sp/review-bg-text.webp") no-repeat center/contain;
  aspect-ratio: 319/324;
  width: 55%;
  max-width: 280px;
}
.koto #review::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  background: url("../images/sp/review-bg-bottom.webp") no-repeat center top/contain;
  width: 100%;
  aspect-ratio: 125/37;
  z-index: -1;
}
.koto #review .review-header-title {
  position: absolute;
  top: 78svw;
  left: 50%;
  transform: translate(-50%, 0);
  font-weight: 700;
  font-size: 14px;
  line-height: 1.5;
  letter-spacing: 0.03em;
  color: var(--color-text);
  text-align: center;
  margin-top: 10px;
  background: url("../images/sp/review-header-description-bg.webp") no-repeat center/contain;
  width: calc(100% - 30px);
  max-width: 345px;
  height: 88px;
  margin: 0 auto;
  padding: 14px 0 12px;
  box-sizing: border-box;
}
.koto #review .review-header-title span {
  display: inline-block;
  color: var(--color-brown-medium);
  font-size: 18px;
}
.koto #review .review-header-title span:first-child {
  font-size: 20.74px;
  padding: 1px 6px;
  margin-right: 4px;
}
.koto #review .review-cards-area {
  position: relative;
  background: url("../images/sp/review-cards-area-bg.webp") no-repeat center bottom/cover;
  padding: 0 0 19.2%;
  margin-top: -1px;
}
.koto #review .review-cards-area .slick-track {
  display: flex;
  height: 100%;
}
.koto #review .review-cards-area .slick-arrow {
  width: 30px;
  height: 60px;
  z-index: 2;
}
.koto #review .review-cards-area .slick-arrow::before {
  content: none;
}
.koto #review .review-cards-area .slick-arrow img {
  width: 100%;
  height: 100%;
}
.koto #review .review-cards-area .slick-prev {
  top: calc(50% - 36px);
  transform: translate(0, -50%);
  left: 0;
}
.koto #review .review-cards-area .slick-next {
  top: calc(50% - 36px);
  transform: translate(0, -50%);
  right: 0;
}
.koto #review .review-cards-list {
  display: flex;
  margin: 0;
  padding: 0;
  overflow-x: auto;
  scroll-snap-type: x mandatory;
}
.koto #review .review-cards-list .review-card-item {
  background-color: var(--color-bg-card);
  border-radius: 6px;
  width: 100%;
  height: 100%;
  box-sizing: border-box;
  margin: 0 15px;
  display: flex;
  flex-direction: column;
  flex-shrink: 0;
  scroll-snap-align: start;
}
.koto #review .review-cards-list .review-card-item .review-card-inner {
  padding: 32px 24px 21px;
}
.koto #review .review-cards-list .review-card-item .review-card-title {
  flex-shrink: 0;
  font-weight: 700;
  font-size: 18px;
  line-height: 1.5;
  text-align: center;
  color: var(--color-text);
  margin-bottom: 0;
}
.koto #review .review-cards-list .review-card-item .review-card-title span {
  font-size: 20px;
  color: var(--color-primary);
  display: block;
}
.koto #review .review-cards-list .review-card-item .review-card-title .review-card-title-icon {
  width: 32px;
  height: 30px;
  background: url("../images/icons/icon-review-card-title.svg") no-repeat center/contain;
  display: block;
  margin: 0 auto 10px;
}
.koto #review .review-cards-list .review-card-item .review-card-text {
  flex: 1;
  min-height: 0;
  overflow: hidden;
}
.koto #review .review-cards-list .review-card-item .review-card-product {
  flex-shrink: 0;
  margin-top: auto;
  flex: 1;
}
.koto #review .review-card-text {
  font-family: var(--font-japanese);
  font-style: normal;
  font-weight: 500;
  font-size: 16px;
  line-height: 170%;
  color: var(--color--text);
  padding: 10px 0 0;
}
.koto #review .review-card-product,
.koto #review .review-card-product a {
  width: 100%;
  display: flex;
  color: inherit;
  gap: 16px;
}
.koto #review .review-card-product {
  position: relative;
}
.koto #review .review-card-product::after {
  content: "";
  position: absolute;
  right: 12px;
  bottom: 11px;
  display: inline-block;
  width: 10px;
  height: 10px;
  background: var(--color-secondary);
  -webkit-clip-path: polygon(0 0, 0 100%, 100% 50%);
          clip-path: polygon(0 0, 0 100%, 100% 50%);
}
.koto #review .review-card-product > span {
  position: absolute;
  right: 0;
  bottom: 0;
  display: flex;
  align-items: center;
  width: 114px;
  height: 34px;
  background-color: var(--color-white);
  font-size: 14px;
  padding-left: 16px;
  border-radius: 0 0 6px 0;
  box-sizing: border-box;
}
.koto #review .review-card-product a {
  position: relative;
  background-color: #b4e0e4;
  border-radius: 0 0 6px 6px;
  padding: 30px 24px 38px;
}
.koto #review .review-card-product a::before {
  content: "";
  position: absolute;
  top: -10px;
  left: 50%;
  transform: translateX(-50%) rotate(-40deg);
  display: inline-block;
  width: 20px;
  height: 24px;
  background: #faf8f4;
  -webkit-clip-path: polygon(0 0, 100% 0%, 50% 100%);
          clip-path: polygon(0 0, 100% 0%, 50% 100%);
}
.koto #review .review-card-product-image {
  width: 100px;
  height: 100px;
  border-radius: 6px;
  overflow: hidden;
  flex-shrink: 0;
  box-sizing: border-box;
}
.koto #review .review-card-product-image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.koto #review .review-card-product-info {
  display: flex;
  flex-direction: column;
  gap: 10px;
  flex: 1;
}
.koto #review .review-card-product-name {
  font-family: var(--font-japanese);
  font-weight: 500;
  font-weight: 700;
  font-size: 16px;
  font-weight: bold;
  color: var(--color--text);
  display: flex;
  flex-direction: column;
  letter-spacing: -0.03em;
}
.koto #review .review-card-product-price,
.koto #review .review-card-product-name span {
  font-size: 14px;
  line-height: 1.72;
  font-weight: normal;
}
.koto #review .review-card-product-name span:not(.is-catalog) {
  margin-left: -0.5em;
}
.koto #why-choose {
  background: url("../images/sp/why-choose-bg.webp") no-repeat center top/contain, url("../images/sp/why-choose-bg-bottom.webp") no-repeat center bottom/contain;
  padding: 128px 0 162px;
}
.koto #why-choose .why-choose-title {
  position: relative;
  font-family: var(--font-japanese);
  font-style: normal;
  font-weight: 700;
  font-size: 24px;
  line-height: 130%;
  text-align: center;
  color: var(--color-white);
  margin-bottom: 60px;
}
.koto #why-choose .why-choose-title::before {
  content: "";
  position: absolute;
  top: -98px;
  left: 50%;
  transform: translateX(-50%);
  width: 74px;
  height: 72px;
  background: url("../images/sp/why-choose-title.webp") no-repeat center/contain;
}
.koto #why-choose .why-choose-reasons {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 0 15px;
}
.koto #why-choose .why-choose-reasons .why-choose-reason {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 18px;
}
.koto #why-choose .why-choose-reasons .why-choose-reason .reason-number {
  position: absolute;
  top: 0;
  right: 0;
  height: auto;
}
.koto #why-choose .why-choose-reasons .why-choose-reason .reason-number img {
  width: 100%;
  height: 100%;
}
.koto #why-choose .why-choose-reasons .why-choose-reason img {
  width: 100%;
}
.koto #why-choose .why-choose-reasons .why-choose-reason .reason-title {
  font-family: var(--font-japanese);
  font-style: normal;
  font-weight: 700;
  font-size: 20px;
  line-height: 150%;
  text-align: center;
}
.koto #why-choose .why-choose-reasons .why-choose-reason .reason-title span {
  color: var(--color-primary);
}
.koto #why-choose .why-choose-reasons .why-choose-reason .reason-description {
  font-family: var(--font-japanese);
  font-style: normal;
  font-weight: 500;
  font-size: 16px;
  line-height: 172%;
  color: var(--color-text);
  padding: 0 8px;
  margin-bottom: 50px;
}
.koto #why-choose .why-choose-reasons .why-choose-reason:nth-child(1) .reason-number {
  top: -35px;
  right: 10px;
  aspect-ratio: 102/55;
  width: 136px;
}
.koto #why-choose .why-choose-reasons .why-choose-reason:nth-child(2) .reason-number {
  top: -35px;
  right: 0px;
  aspect-ratio: 444/217;
  width: 148px;
}
.koto #why-choose .why-choose-reasons .why-choose-reason:nth-child(2) .reason-description {
  padding: 0 4px;
  margin-bottom: 93px;
}
.koto #why-choose .why-choose-reasons .why-choose-reason:nth-child(3) .reason-number {
  top: -45px;
  right: 5px;
  aspect-ratio: 444/217;
  width: 148px;
}
.koto #why-choose .why-choose-reasons .why-choose-reason:nth-child(3) .reason-description {
  letter-spacing: 0;
  padding: 0;
  margin-bottom: 0;
}
.koto #recommended-list .recommended-list-title {
  --bg-color: #c6a770;
  position: relative;
  font-family: var(--font-japanese);
  font-style: normal;
  font-weight: 700;
  font-size: 20px;
  text-align: center;
  background-color: var(--bg-color);
}
.koto #recommended-list .recommended-list-title::before {
  content: "";
  position: absolute;
  top: -50px;
  left: 0;
  width: 106px;
  height: 106px;
  background: url("../images/sp/recommended-list-title.webp") no-repeat center/contain;
  z-index: 1;
}
.koto #recommended-list .recommended-list-title .recommended-list-title-bg {
  position: absolute;
  width: 100%;
  height: 100%;
  aspect-ratio: 125/37;
  border: 1px solid var(--bg-color);
  overflow: hidden;
  box-sizing: border-box;
}
.koto #recommended-list .recommended-list-title .recommended-list-title-bg::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: calc(100% - 30px);
  height: auto;
  border-radius: 50%;
  aspect-ratio: 1/1;
  background: var(--color-white);
}
.koto #recommended-list .recommended-list-title .recommended-list-title-line1 {
  position: relative;
  display: inline-block;
  font-family: var(--font-japanese);
  font-size: 16px;
  color: #1688c5;
  border-bottom: 2px solid var(--color-text);
  margin: 22px auto 7px;
  z-index: 1;
}
.koto #recommended-list .recommended-list-title .recommended-list-title-line2 {
  position: relative;
  font-family: var(--font-japanese);
  padding-bottom: 20px;
  z-index: 1;
}
.koto #recommended-list .recommended-list-title .recommended-list-title-line2::after {
  content: "";
  position: absolute;
  top: calc(100% - 20px);
  right: 15px;
  width: 100px;
  height: 69px;
  background: url("../images/sp/recommended-catalog-list-title-after.webp") no-repeat center/contain;
  z-index: 1;
}
.koto #recommended-list .recommended-list-title .recommended-list-title-line2 span {
  font-size: 24px;
  color: var(--color-brown-medium);
}
.recommended-list-inner--gift .koto #recommended-list .recommended-list-title {
  --bg-color: #c73433;
}
.recommended-list-inner--gift .koto #recommended-list .recommended-list-title .recommended-list-title-line2::after {
  top: 1.5em;
  width: 100px;
  height: 90px;
  background: url("../images/sp/recommended-gift-list-title-after.webp") no-repeat center/contain;
}
.recommended-list-inner--gift .koto #recommended-list .recommended-list-title .recommended-list-title-line2 span > span {
  font-size: 16px;
}
.recommended-list-inner--gift .koto #recommended-list .recommended-list-title .recommended-list-title-line2 span.txt-ex {
  position: relative;
  font-family: var(--font-shippori);
  font-size: 24px;
}
.recommended-list-inner--gift .koto #recommended-list .recommended-list-title .recommended-list-title-line2 span.txt-ex::before {
  content: "";
  position: absolute;
  top: -0.5em;
  right: 0.7em;
  width: 19px;
  height: 18px;
  background: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTkiIGhlaWdodD0iMTgiIHZpZXdCb3g9IjAgMCAxOSAxOCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNMy4yNTYzOCAxNC43NTYzTDEuNDQ1ODcgMy42NTM2N0w3LjA4NTk4IDQuMTc4OTRMMy4yNTYzOCAxNC43NTYzWiIgZmlsbD0iI0NFNDAzRiIvPjxwYXRoIGQ9Ik03LjE1NjUgMTUuOTk4OEwxMS41NzgxIDUuNjU0OTVMMTYuMDU4NCA5LjEyMTFMNy4xNTY1IDE1Ljk5ODhaIiBmaWxsPSIjQ0U0MDNGIi8+PC9zdmc+") no-repeat center/contain;
}
.koto #recommended-list .recommended-list-inner {
  position: relative;
  background: url("../images/sp/recommended-list-inner-bg.webp") no-repeat center 42px/cover;
  padding: 42px 0 112px;
  margin-top: -42px;
}
.koto #recommended-list .recommended-list-inner--gift {
  position: relative;
  background: url("../images/sp/recommended-list-inner-bg--gift.webp") no-repeat center 42px/cover;
  padding: 42px 0 70px;
  margin-top: -42px;
}
.koto #recommended-list .recommended-list-inner--gift::before {
  content: "";
  position: absolute;
  top: 23px;
  right: 12px;
  width: 109px;
  aspect-ratio: 16/10;
  background: url("../images/sp/recommended-gift-list-bg.webp") no-repeat center/contain;
  z-index: 1;
}
.koto #recommended-list .recommended-list-inner--gift .recommended-list-items--dining {
  margin-bottom: 24px;
}
.koto #recommended-list .recommended-list-inner--gift .recommended-list-items--dining + .recommended-list-bottom-banner {
  border-bottom: 3px solid var(--color-white);
  padding: 0 15px 50px;
  margin: 0;
}
.koto #recommended-list .recommended-list-inner--gift .recommended-list-items--stay {
  margin: 89px 15px 14px;
}
.koto #recommended-list .recommended-list-inner--gift .recommended-list-items--stay + .recommended-list-bottom-banner {
  position: relative;
  border-bottom: 3px solid var(--color-white);
  padding: 65px 15px 36px;
  margin: 0;
}
.koto #recommended-list .recommended-list-inner--gift .recommended-list-items--stay + .recommended-list-bottom-banner a::before {
  content: "";
  position: absolute;
  top: 14px;
  right: 15px;
  width: 90px;
  height: 81px;
  background: url("../images/sp/recommended-gift-list-title-after.webp") no-repeat center/contain;
}
.koto #recommended-list .recommended-list-inner--gift .recommended-list-items--relaxing {
  margin: 89px 15px 14px;
}
.koto #recommended-list .recommended-list-inner--gift .recommended-list-items--relaxing + .recommended-list-bottom-banner {
  position: relative;
  padding: 65px 15px 0;
  margin: 0;
}
.koto #recommended-list .recommended-list-inner--gift .recommended-list-items--relaxing + .recommended-list-bottom-banner a::before {
  content: "";
  position: absolute;
  top: 14px;
  right: 15px;
  width: 90px;
  height: 81px;
  background: url("../images/sp/recommended-gift-list-title-after.webp") no-repeat center/contain;
}
.koto #recommended-list .recommended-list-items--dining,
.koto #recommended-list .recommended-list-items--stay,
.koto #recommended-list .recommended-list-items--relaxing {
  position: relative;
  display: flex;
  flex-direction: column;
  background-color: var(--color-white);
  border-radius: 6px;
  padding: 72px 15px 56px;
  margin: 0 15px 72px;
  gap: 30px;
}
.koto #recommended-list .recommended-list-items--dining::before,
.koto #recommended-list .recommended-list-items--stay::before,
.koto #recommended-list .recommended-list-items--relaxing::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 83px;
  height: 57px;
  background: url("../images/sp/recommended-list-items-deco.webp") no-repeat center top/contain;
  z-index: 1;
}
.koto #recommended-list .recommended-list-items--dining::after,
.koto #recommended-list .recommended-list-items--stay::after,
.koto #recommended-list .recommended-list-items--relaxing::after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  width: 83px;
  height: 57px;
  background: url("../images/sp/recommended-list-items-deco.webp") no-repeat center top/contain;
  transform: scale(-1, 1);
  z-index: 1;
}
.koto #recommended-list .recommended-list-items--dining .recommended-list-items-badge,
.koto #recommended-list .recommended-list-items--stay .recommended-list-items-badge,
.koto #recommended-list .recommended-list-items--relaxing .recommended-list-items-badge {
  position: absolute;
  top: -50px;
  left: 50%;
  transform: translateX(-50%);
  width: 76px;
  height: 76px;
  z-index: 1;
}
.koto #recommended-list .recommended-list-items--dining .recommended-list-items-badge img,
.koto #recommended-list .recommended-list-items--stay .recommended-list-items-badge img,
.koto #recommended-list .recommended-list-items--relaxing .recommended-list-items-badge img {
  width: 100%;
  height: 100%;
}
.koto #recommended-list .recommended-list-items--dining .recommended-list-items-title,
.koto #recommended-list .recommended-list-items--stay .recommended-list-items-title,
.koto #recommended-list .recommended-list-items--relaxing .recommended-list-items-title {
  width: calc(100% + 30px);
  margin: 0 0 0 -15px;
  font-family: var(--font-japanese);
  font-weight: 700;
  font-size: 20px;
  line-height: 130%;
  text-align: center;
  color: #312005;
}
.koto #recommended-list .recommended-list-items--dining .recommended-list-items-title .txt-color-primary,
.koto #recommended-list .recommended-list-items--stay .recommended-list-items-title .txt-color-primary,
.koto #recommended-list .recommended-list-items--relaxing .recommended-list-items-title .txt-color-primary {
  color: var(--color-primary);
}
.koto #recommended-list .recommended-list-items--dining .recommended-list-items-title .txt-color-primary::before,
.koto #recommended-list .recommended-list-items--stay .recommended-list-items-title .txt-color-primary::before,
.koto #recommended-list .recommended-list-items--relaxing .recommended-list-items-title .txt-color-primary::before {
  content: "「";
  color: var(--color-text);
}
.koto #recommended-list .recommended-list-items--dining .recommended-list-items-title .txt-color-primary::after,
.koto #recommended-list .recommended-list-items--stay .recommended-list-items-title .txt-color-primary::after,
.koto #recommended-list .recommended-list-items--relaxing .recommended-list-items-title .txt-color-primary::after {
  content: "」";
  color: var(--color-text);
}
.koto #recommended-list .recommended-list-items--dining .recommended-list-items-title .txt-small,
.koto #recommended-list .recommended-list-items--stay .recommended-list-items-title .txt-small,
.koto #recommended-list .recommended-list-items--relaxing .recommended-list-items-title .txt-small {
  font-size: 16px;
}
.recommended-list-inner--gift .koto #recommended-list .recommended-list-items--dining .recommended-list-items,
.recommended-list-inner--gift .koto #recommended-list .recommended-list-items--stay .recommended-list-items,
.recommended-list-inner--gift .koto #recommended-list .recommended-list-items--relaxing .recommended-list-items {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 18px 13px;
}
.recommended-list-inner--gift .koto #recommended-list .recommended-list-items--dining .recommended-list-items .recommended-list-item,
.recommended-list-inner--gift .koto #recommended-list .recommended-list-items--stay .recommended-list-items .recommended-list-item,
.recommended-list-inner--gift .koto #recommended-list .recommended-list-items--relaxing .recommended-list-items .recommended-list-item {
  width: 100%;
}
.recommended-list-inner--gift .koto #recommended-list .recommended-list-items--dining .recommended-list-items .recommended-list-item a,
.recommended-list-inner--gift .koto #recommended-list .recommended-list-items--stay .recommended-list-items .recommended-list-item a,
.recommended-list-inner--gift .koto #recommended-list .recommended-list-items--relaxing .recommended-list-items .recommended-list-item a {
  display: flex;
  flex-direction: column;
  height: 100%;
}
.recommended-list-inner--gift .koto #recommended-list .recommended-list-items--dining .recommended-list-items .recommended-list-item-image,
.recommended-list-inner--gift .koto #recommended-list .recommended-list-items--stay .recommended-list-items .recommended-list-item-image,
.recommended-list-inner--gift .koto #recommended-list .recommended-list-items--relaxing .recommended-list-items .recommended-list-item-image {
  aspect-ratio: 1/1;
  flex: 0 0 48% !important;
}
.recommended-list-inner--gift .koto #recommended-list .recommended-list-items--dining .recommended-list-items .recommended-list-item-image img,
.recommended-list-inner--gift .koto #recommended-list .recommended-list-items--stay .recommended-list-items .recommended-list-item-image img,
.recommended-list-inner--gift .koto #recommended-list .recommended-list-items--relaxing .recommended-list-items .recommended-list-item-image img {
  border-radius: 6px;
}
.recommended-list-inner--gift .koto #recommended-list .recommended-list-items--dining .recommended-list-items .recommended-list-item-name,
.recommended-list-inner--gift .koto #recommended-list .recommended-list-items--stay .recommended-list-items .recommended-list-item-name,
.recommended-list-inner--gift .koto #recommended-list .recommended-list-items--relaxing .recommended-list-items .recommended-list-item-name {
  font-size: 16px;
  line-height: 130%;
}
.recommended-list-inner--gift .koto #recommended-list .recommended-list-items--dining .recommended-list-items .recommended-list-item-price,
.recommended-list-inner--gift .koto #recommended-list .recommended-list-items--stay .recommended-list-items .recommended-list-item-price,
.recommended-list-inner--gift .koto #recommended-list .recommended-list-items--relaxing .recommended-list-items .recommended-list-item-price {
  font-size: 14px;
  font-weight: 700;
  margin-top: auto;
}
.koto #recommended-list .recommended-list-items--dining .recommended-list-item,
.koto #recommended-list .recommended-list-items--stay .recommended-list-item,
.koto #recommended-list .recommended-list-items--relaxing .recommended-list-item {
  position: relative;
  display: flex;
  flex-direction: column;
}
.koto #recommended-list .recommended-list-items--dining .recommended-list-item img,
.koto #recommended-list .recommended-list-items--stay .recommended-list-item img,
.koto #recommended-list .recommended-list-items--relaxing .recommended-list-item img {
  width: 100%;
  height: 100%;
}
.koto #recommended-list .recommended-list-items--dining .recommended-list-item .recommended-list-item-area,
.koto #recommended-list .recommended-list-items--stay .recommended-list-item .recommended-list-item-area,
.koto #recommended-list .recommended-list-items--relaxing .recommended-list-item .recommended-list-item-area {
  font-family: var(--font-japanese);
  font-style: normal;
  font-weight: 500;
  font-size: 14px;
  line-height: 172%;
  color: #312005;
  margin-top: 10px;
}
.koto #recommended-list .recommended-list-items--dining .recommended-list-item .recommended-list-item-name,
.koto #recommended-list .recommended-list-items--stay .recommended-list-item .recommended-list-item-name,
.koto #recommended-list .recommended-list-items--relaxing .recommended-list-item .recommended-list-item-name {
  position: relative;
  font-family: var(--font-japanese);
  font-weight: 700;
  font-size: 17px;
  line-height: 120%;
  color: var(--color-text);
  padding-left: 6px;
  margin-bottom: 4px;
}
.koto #recommended-list .recommended-list-items--dining .recommended-list-item .recommended-list-item-price,
.koto #recommended-list .recommended-list-items--stay .recommended-list-item .recommended-list-item-price,
.koto #recommended-list .recommended-list-items--relaxing .recommended-list-item .recommended-list-item-price {
  font-family: var(--font-japanese);
  font-weight: 500;
  font-size: 14px;
  line-height: 21px;
  color: var(--color-text);
  padding-left: 6px;
}
.koto #recommended-list .recommended-list-items--dining .recommended-list-item .recommended-list-item-meta,
.koto #recommended-list .recommended-list-items--stay .recommended-list-item .recommended-list-item-meta,
.koto #recommended-list .recommended-list-items--relaxing .recommended-list-item .recommended-list-item-meta {
  font-family: var(--font-japanese);
  font-weight: 500;
  font-size: 14px;
  line-height: 21px;
  color: var(--color-text);
  margin-top: 12px;
}
.koto #recommended-list .recommended-list-items--dining .recommended-list-item .recommended-list-item-meta span,
.koto #recommended-list .recommended-list-items--stay .recommended-list-item .recommended-list-item-meta span,
.koto #recommended-list .recommended-list-items--relaxing .recommended-list-item .recommended-list-item-meta span {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  padding: 2px 5px;
  gap: 17px;
  background: var(--color-brown-medium);
  border-radius: 10px;
  color: var(--color-white);
  margin-right: 10px;
}
.koto #recommended-list .recommended-list-items--dining .recommended-list-item .recommended-list-item-lead,
.koto #recommended-list .recommended-list-items--stay .recommended-list-item .recommended-list-item-lead,
.koto #recommended-list .recommended-list-items--relaxing .recommended-list-item .recommended-list-item-lead {
  display: none;
}
.koto #recommended-list .recommended-list-items--dining .recommended-list-item .item-actions,
.koto #recommended-list .recommended-list-items--stay .recommended-list-item .item-actions,
.koto #recommended-list .recommended-list-items--relaxing .recommended-list-item .item-actions {
  min-height: auto;
  padding-top: 14px;
}
.koto #recommended-list .recommended-list-inner .recommended-list-item .recommended-list-item-image {
  margin-bottom: 18px;
  overflow: hidden;
}
.koto #recommended-list .recommended-list-inner .recommended-list-item .recommended-list-item-image img {
  transform: scale(1.25);
}
.koto #recommended-list .recommended-list-inner .recommended-list-item:nth-of-type(2) .recommended-list-item-name {
  font-size: 20px;
  line-height: 150%;
  margin-bottom: 8px;
}
.koto #recommended-list .recommended-list-inner .recommended-list-item:nth-of-type(2) .recommended-list-item-price {
  font-weight: 700;
  font-size: 18px;
  line-height: 27px;
}
.koto #recommended-list .recommended-list-inner .recommended-list-item:nth-of-type(2) .recommended-list-item-price span {
  font-size: 14px;
}
.koto #recommended-list .recommended-list-inner .recommended-list-item:nth-of-type(n + 3) {
  display: flex;
  flex-direction: row;
  gap: 8px;
}
.koto #recommended-list .recommended-list-inner .recommended-list-item:nth-of-type(n + 3) .recommended-list-item-image {
  flex: 1 1 46%;
  margin-bottom: 0;
}
.koto #recommended-list .recommended-list-inner .recommended-list-item:nth-of-type(n + 3) .recommended-list-item-detail {
  flex: 1 1 51%;
}
.koto #recommended-list .recommended-list-inner .recommended-list-item:nth-of-type(n + 3) .recommended-list-item-name::before {
  content: "";
  position: absolute;
  top: 1px;
  left: 0;
  width: 2px;
  height: 1em;
  background: var(--color-brown-medium);
}
.koto #recommended-list .recommended-list-items--dining {
  margin-top: 90px;
}
.koto #recommended-list .recommended-list-items--stay {
  margin: 90px 15px;
}
.koto #recommended-list .recommended-list-items--relaxing {
  margin-bottom: 23px;
}
.koto #recommended-list .recommended-list-bottom-banner {
  width: calc(100% - 30px);
  margin: 0 15px;
}
.koto #recommended-list .recommended-list-bottom-banner a {
  display: block;
}
.koto #recommended-list .recommended-list-bottom-banner a img {
  width: 100%;
  height: 100%;
}
.koto #flow-of-gift {
  position: relative;
  background: url("../images/sp/flow-of-gift-bg.webp") no-repeat center/cover;
  padding-bottom: 85px;
}
.koto #flow-of-gift::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 147px;
  background: url("../images/sp/flow-of-gift-title-bg.webp") no-repeat center bottom/cover;
}
.koto #flow-of-gift .flow-of-gift-title {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  max-width: 375px;
  height: 147px;
  padding: 36px 0 46px;
  margin: 0 auto 65px;
  box-sizing: border-box;
}
.koto #flow-of-gift .flow-of-gift-title::before {
  content: "";
  position: absolute;
  bottom: calc(100% - 29.5px);
  left: 34px;
  width: 57px;
  aspect-ratio: 86/87;
  background: url("../images/sp/flow-of-gift-title-before.webp") no-repeat center/contain;
}
.koto #flow-of-gift .flow-of-gift-title::after {
  content: "";
  position: absolute;
  bottom: 33px;
  right: 45px;
  width: 50px;
  height: 53px;
  background: url("../images/sp/flow-of-gift-title-after.webp") no-repeat center/contain;
}
.koto #flow-of-gift .flow-of-gift-title h2 {
  display: inline-block;
  vertical-align: baseline;
  text-align: center;
  font-family: var(--font-japanese);
  font-weight: 700;
  font-size: 24px;
  line-height: 130%;
}
.koto #flow-of-gift .flow-of-gift-title h2 .img-wrap {
  display: inline-block;
  width: 2em;
  height: 1em;
  line-height: 1.1;
  vertical-align: baseline;
}
.koto #flow-of-gift .flow-of-gift-title h2 .img-wrap img {
  width: 100%;
  height: 100%;
}
.koto #flow-of-gift .flow-of-gift-title h2 .txt-small {
  font-size: 20px;
}
.koto #flow-of-gift .flow-of-gift-title h2 .txt-color-primary {
  font-family: var(--font-shippori);
  color: var(--color-primary);
  font-weight: 700;
}
.koto #flow-of-gift .flow-of-gift-steps {
  padding: 0 15px;
}
.koto #flow-of-gift .flow-of-gift-steps .flow-of-gift-steps-label {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 39px;
  font-family: var(--font-japanese);
  font-weight: 700;
  font-size: 16px;
  line-height: 24px;
  color: var(--color-white);
  margin-bottom: 17px;
}
.koto #flow-of-gift .flow-of-gift-steps .flow-of-gift-step:nth-of-type(2) {
  display: grid;
  grid-template-columns: 1fr 1fr;
}
.koto #flow-of-gift .flow-of-gift-steps .flow-of-gift-step:nth-of-type(2) .flow-of-gift-steps-label {
  grid-column: 1/3;
  grid-row: 1/2;
}
.koto #flow-of-gift .flow-of-gift-steps .flow-of-gift-step:nth-of-type(2) .flow-of-gift-step-label[data-type=catalog] {
  grid-column: 1/2;
  grid-row: 2/3;
  margin-bottom: 24px;
}
.koto #flow-of-gift .flow-of-gift-steps .flow-of-gift-step:nth-of-type(2) .flow-of-gift-step-label[data-type=experience] {
  position: relative;
  grid-column: 2/3;
  grid-row: 2/5;
}
.koto #flow-of-gift .flow-of-gift-steps .flow-of-gift-step:nth-of-type(2) .flow-of-gift-step-label[data-type=experience]::after {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 16px;
  height: calc(100% - 12px);
  background: url("../images/sp/flow-of-gift-step-arrow.svg") no-repeat center/cover;
}
.koto #flow-of-gift .flow-of-gift-steps .flow-of-gift-step:nth-of-type(2) .flow-of-gift-step-item {
  grid-column: 1/2;
}
.koto #flow-of-gift .flow-of-gift-steps .flow-of-gift-step[data-type=sender] {
  padding-bottom: 56px;
}
.koto #flow-of-gift .flow-of-gift-steps .flow-of-gift-step[data-type=sender] .flow-of-gift-steps-label {
  background-color: #1d314b;
}
.koto #flow-of-gift .flow-of-gift-steps .flow-of-gift-step[data-type=sender] .flow-of-gift-step-item {
  border-top-color: #1d314b;
}
.koto #flow-of-gift .flow-of-gift-steps .flow-of-gift-step[data-type=sender] .flow-of-gift-step-item::after {
  height: 36px;
}
.koto #flow-of-gift .flow-of-gift-steps .flow-of-gift-step[data-type=recipient] .flow-of-gift-steps-label {
  background-color: var(--color-brown-medium);
}
.koto #flow-of-gift .flow-of-gift-steps .flow-of-gift-step[data-type=recipient] .flow-of-gift-step-item {
  border-top-color: var(--color-brown-medium);
  margin-bottom: 41px;
}
.koto #flow-of-gift .flow-of-gift-steps .flow-of-gift-step[data-type=recipient] .flow-of-gift-step-item:nth-of-type(2) {
  margin-bottom: 0;
}
.koto #flow-of-gift .flow-of-gift-steps .flow-of-gift-step[data-type=recipient] .flow-of-gift-step-item:nth-of-type(2):after {
  content: none;
}
.koto #flow-of-gift .flow-of-gift-steps .flow-of-gift-step-label {
  text-align: center;
}
.koto #flow-of-gift .flow-of-gift-steps .flow-of-gift-step-label span {
  position: relative;
  display: inline-flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  padding: 6px 12px;
  margin: auto;
  background: var(--color-primary);
  border-radius: 20px;
  color: var(--color-white);
  font-family: var(--font-japanese);
  font-weight: 700;
  font-size: 13px;
  line-height: 20px;
  box-sizing: border-box;
  z-index: 1;
}
.koto #flow-of-gift .flow-of-gift-steps .flow-of-gift-step-item {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  min-width: 170px;
  padding: 24px 20px;
  gap: 12px;
  background: #ffffff;
  border-top: 6px solid #1d314b;
  font-family: var(--font-japanese);
  box-sizing: border-box;
}
.koto #flow-of-gift .flow-of-gift-steps .flow-of-gift-step-item::after {
  content: "";
  position: absolute;
  top: calc(100% + 12px);
  left: 50%;
  transform: translateX(-50%);
  width: 16px;
  height: 17px;
  background: url("../images/sp/flow-of-gift-step-arrow.svg") no-repeat bottom/cover;
}
.koto #flow-of-gift .flow-of-gift-steps .flow-of-gift-step-item[data-type=recipient] {
  border-top-color: var(--color-brown-medium);
}
.koto #flow-of-gift .flow-of-gift-steps .flow-of-gift-step-item dt {
  font-family: var(--font-japanese);
  font-weight: 700;
  font-size: 21px;
  line-height: 32px;
  text-align: center;
  color: #312005;
  margin-bottom: 12px;
}
.koto #flow-of-gift .flow-of-gift-steps .flow-of-gift-step-item dt span.txt-color-primary {
  color: var(--color-primary);
}
.koto #flow-of-gift .flow-of-gift-steps .flow-of-gift-step-item dd {
  font-family: var(--font-japanese);
  font-weight: 500;
  font-size: 16px;
  line-height: 150%;
}
.koto #flow-of-gift .flow-of-gift-service-note-item {
  background: url("../images/sp/flow-of-gift-service-note-item-bg.webp") no-repeat center/cover;
}
.koto #flow-of-gift .flow-of-gift-service-note-item a {
  display: flex;
  align-items: center;
  width: calc(100% - 18px);
  aspect-ratio: 345/134;
  gap: 15px;
  color: var(--color-brown-medium);
  border-top: 1px solid #e4d1ac;
  padding-left: 18px;
}
.koto #flow-of-gift .flow-of-gift-service-note-item a picture {
  width: 44.3%;
}
.koto #flow-of-gift .flow-of-gift-service-note-item a picture img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.koto #flow-of-gift .flow-of-gift-service-note-item a p {
  font-family: var(--font-japanese);
  font-weight: 700;
  font-size: 16px;
  line-height: 130%;
  color: var(--color-brown-medium);
}
.koto #flow-of-gift .flow-of-gift-service-note-item a span.txt-small {
  font-size: 14px;
}
.koto #flow-of-gift .flow-of-gift-service-note {
  display: flex;
  flex-direction: column;
  padding: 0 15px;
  margin-top: 82px;
}
.koto #flow-of-gift .flow-of-gift-service-note .flow-of-gift-service-note-title {
  position: relative;
  width: 100%;
  aspect-ratio: 115/54;
  font-family: var(--font-japanese);
  font-weight: 700;
  font-size: 22px;
  line-height: 30px;
  text-align: center;
  background: url("../images/sp/flow-of-gift-service-note-title-bg.webp") no-repeat center/cover;
  padding: 72px 0 32px;
  box-sizing: border-box;
}
.koto #flow-of-gift .flow-of-gift-service-note .flow-of-gift-service-note-title::before {
  content: "";
  position: absolute;
  top: -61px;
  left: -22px;
  width: 138px;
  height: 135px;
  background: url("../images/sp/flow-of-gift-service-note-before.webp") no-repeat center/contain;
  z-index: 1;
}
.koto #flow-of-gift .flow-of-gift-service-note .flow-of-gift-service-note-title::after {
  content: "";
  position: absolute;
  bottom: 0;
  right: 0;
  width: 92px;
  height: 112px;
  background: url("../images/sp/flow-of-gift-service-note-after.webp") no-repeat center/contain;
  z-index: 1;
}
.koto #flow-of-gift .flow-of-gift-service-note .flow-of-gift-service-note-title .txt-color-primary {
  color: var(--color-primary);
}
.koto #gift-list-overview {
  padding: 60px 15px;
}
.koto #gift-list-overview .gift-list-overview-banner {
  width: 100%;
}
.koto #gift-list-overview .gift-list-overview-banner a {
  display: block;
}
.koto #gift-list-overview .gift-list-overview-banner a img {
  width: 100%;
}
.koto #otherGift .otherGift-title {
  width: 100%;
  aspect-ratio: 125/53;
  background: url("../images/sp/otherGift-title.webp") no-repeat center top/cover;
  text-indent: 100%;
  white-space: nowrap;
  overflow: hidden;
}
.koto #otherGift .otherGift-wrap {
  display: flex;
  flex-direction: column;
  background: url("../images//sp/oherGift-bk.webp") no-repeat center top/cover;
  padding: 40px 15px 90px;
  gap: 10px;
}
.koto #otherGift .otherGift-content {
  position: relative;
  width: 100%;
  padding: 15px 0;
}
.koto #otherGift .otherGift-content::before {
  content: "";
  display: block;
  width: calc(100% - 10px);
  height: 100%;
  position: absolute;
  top: 0;
  left: 10px;
  aspect-ratio: 1;
  -webkit-clip-path: polygon(0 0, 100% 22px, calc(100% - 15px) 100%, 0 calc(100% - 22px));
          clip-path: polygon(0 0, 100% 22px, calc(100% - 15px) 100%, 0 calc(100% - 22px));
  background-color: #cb5857;
}
.koto #otherGift .otherGift-content + .otherGift-content {
  margin: 30px auto 10px;
}
.koto #otherGift .otherGift-content-inner {
  position: relative;
  width: 100%;
  background: var(--color-white);
  padding: 67px 20px 30px;
  box-sizing: border-box;
}
.koto #otherGift .otherGift-content-title {
  position: relative;
  text-align: center;
  font-size: 20px;
  line-height: 1.4;
}
.koto #otherGift .otherGift-content-title img {
  position: absolute;
  top: -52px;
  left: 50%;
  transform: translateX(-50%);
  width: 42px;
  height: 42px;
  margin: auto;
}
.koto #otherGift .otherGift-content-title span {
  font-weight: bold;
}
.koto #otherGift .otherGift-list {
  display: flex;
  flex-wrap: wrap;
  margin: 20px 0;
  gap: 18px 12px;
}
.koto #otherGift .otherGift-list-item {
  flex: 0 0 calc(50% - 6px);
}
.koto #otherGift .otherGift-list-item a {
  display: flex;
  flex-direction: column;
  height: 100%;
  color: inherit;
}
.koto #otherGift .otherGift-image {
  position: relative;
  width: 100%;
  aspect-ratio: 1/1;
  border-radius: 6px;
  margin-bottom: 10px;
  overflow: hidden;
}
.koto #otherGift .otherGift-image img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
}
.koto #otherGift .otherGift-area {
  font-family: var(--font-japanese);
  font-size: 14px;
}
.koto #otherGift .otherGift-name {
  font-size: 16px;
  font-weight: bold;
}
.koto #otherGift .otherGift-price {
  font-size: 14px;
  font-weight: bold;
  margin-top: auto;
}
.koto #otherGift .otherGift-banner-wrap {
  display: flex;
  flex-direction: column;
  margin-top: 5px;
  gap: 10px;
}
.koto #otherGift .otherGift-banner img,
.koto #otherGift .otherGift-content-banner img {
  width: 100%;
}
.koto #corporate-gift-section {
  position: relative;
  background: url("../images/sp/corporate-gift-section-bg.webp") no-repeat center top/cover;
  border-radius: 40px;
  padding: 50px 0 80px;
  margin-top: -30px;
  z-index: 1;
}
.koto #corporate-gift-section .corporate-gift-title h2 {
  width: 100%;
  height: 75px;
  background: linear-gradient(90deg, #d4c2a4 0%, #fffefc 50%, #d4c2a4 100%);
  border-radius: 6px 6px 0px 0px;
  font-family: var(--font-japanese);
  font-weight: 700;
  font-size: 20px;
  line-height: 130%;
  text-align: center;
  color: var(--color-text);
  padding: 11px 0 13px;
  box-sizing: border-box;
}
.koto #corporate-gift-section .corporate-gift-title h2 span {
  font-size: 24px;
  line-height: 130%;
  color: #376297;
}
.koto #corporate-gift-section .corporate-gift-intro {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  width: calc(100% - 30px);
  border-radius: 12px;
  background: url("../images/sp/corporate-gift-intro-bg.webp") no-repeat center top/cover;
  box-sizing: border-box;
  padding: 30px 0 44px;
  margin: 15px 15px 21px;
}
.koto #corporate-gift-section .corporate-gift-intro::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 125px;
  height: 63px;
  background: url("../images/sp/corporate-gift-intro-before.webp") no-repeat center top/cover;
}
.koto #corporate-gift-section .corporate-gift-intro::after {
  content: "";
  position: absolute;
  bottom: -3px;
  right: 0;
  width: 125px;
  height: 67px;
  background: url("../images/sp/corporate-gift-intro-after.webp") no-repeat center top/cover;
}
.koto #corporate-gift-section .corporate-gift-intro p {
  font-family: var(--font-japanese);
  color: var(--color-text);
  font-weight: 700;
  font-size: 18px;
  line-height: 180%;
}
.koto #corporate-gift-section .corporate-gift-intro p span {
  position: relative;
}
.koto #corporate-gift-section .corporate-gift-intro p span::before {
  content: "";
  position: absolute;
  bottom: calc(100% + 0.2em);
  left: 50%;
  transform: translateX(-50%);
  width: 6px;
  height: 6px;
  background: var(--color-primary);
  border-radius: 50%;
}
.koto #corporate-gift-section .corporate-gift-intro h3 {
  font-family: var(--font-japanese);
  font-weight: 700;
  font-size: 24px;
}
.koto #corporate-gift-section .corporate-gift-intro h3 span.txt-small {
  font-size: 20px;
}
.koto #corporate-gift-section .corporate-gift-intro h3 span.txt-color-primary {
  color: var(--color-primary);
  font-size: 26px;
}
.koto #corporate-gift-section .corporate-gift-hashtags {
  padding: 0 30px;
  margin: 18px auto;
}
.koto #corporate-gift-section .corporate-gift-hashtags ul {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 0 1rem;
}
.koto #corporate-gift-section .corporate-gift-hashtags ul li {
  font-family: var(--font-japanese);
  font-weight: 700;
  font-size: 15px;
  line-height: 150%;
  color: var(--color-white);
}
.koto #corporate-gift-section .corporate-gift-items {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 19px;
  padding: 0 15px;
  margin-bottom: 22px;
}
.koto #corporate-gift-section .corporate-gift-item {
  background: var(--color-white);
  border-radius: 6px;
  padding: 20px 18px;
  box-sizing: border-box;
}
.koto #corporate-gift-section .corporate-gift-item a {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  color: var(--color-text);
  gap: 16px;
}
.koto #corporate-gift-section .corporate-gift-item a .gift-image {
  width: 200px;
  height: 200px;
  border-radius: 6px;
  border: 1px solid #d8cebc;
  overflow: hidden;
}
.koto #corporate-gift-section .corporate-gift-item a .gift-image img {
  width: 100%;
  height: 100%;
}
.koto #corporate-gift-section .corporate-gift-item a h4 {
  font-family: var(--font-japanese);
  font-weight: 700;
  font-size: 20px;
  line-height: 130%;
  color: var(--color-text);
}
.koto #corporate-gift-section .corporate-gift-item a p.price {
  font-family: var(--font-japanese);
  font-weight: 700;
  font-size: 18px;
  line-height: 27px;
  color: var(--color-text);
  margin-right: auto;
}
.koto #corporate-gift-section .corporate-gift-item a p.description {
  font-family: var(--font-japanese);
  font-weight: 500;
  font-size: 16px;
  line-height: 172%;
  color: var(--color-text);
}
.koto #corporate-gift-section .corporate-gift-banner {
  padding: 0 15px;
}
.koto #corporate-gift-section .corporate-gift-banner a {
  display: block;
  width: 100%;
  height: 100%;
}
.koto #corporate-gift-section .corporate-gift-banner a img {
  width: 100%;
  height: 100%;
}
.koto #gift-concierge {
  background: url("../images/sp/gift-concierge-bk.webp") no-repeat center top/cover;
  padding: 100px 0 80px;
  margin-top: -40px;
}
.koto #gift-concierge .gift-concierge-inner {
  margin: 0 auto;
  padding: 0 15px;
}
.koto #gift-concierge .gift-concierge-title {
  text-align: center;
  margin-bottom: 30px;
  position: relative;
}
.koto #gift-concierge .gift-concierge-title .gift-concierge-title-inner {
  display: flex;
  flex-direction: column;
  align-items: center;
  margin-bottom: 16px;
}
.koto #gift-concierge .gift-concierge-title .concierge-title-text p {
  font-size: 18px;
  font-weight: 700;
  color: #312005;
  line-height: 1.7;
}
.koto #gift-concierge .gift-concierge-articles {
  display: flex;
  flex-direction: column;
  gap: 16px;
  margin-bottom: 40px;
}
.koto #gift-concierge .gift-concierge-articles .concierge-article {
  background: #ffffff;
  border-radius: 6px;
  padding: 32px 16px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 10px;
}
.koto #gift-concierge .gift-concierge-articles .concierge-article .article-image {
  margin-bottom: 10px;
}
.koto #gift-concierge .gift-concierge-articles .concierge-article .article-content {
  display: flex;
  flex-direction: column;
}
.koto #gift-concierge .gift-concierge-articles .concierge-article .article-content h3 {
  font-size: 18px;
  font-weight: 700;
  color: #312005;
  line-height: 1.5;
  margin-bottom: 10px;
}
.koto #gift-concierge .gift-concierge-articles .concierge-article .article-content p {
  font-size: 16px;
  font-weight: 500;
  color: #312005;
  line-height: 1.72;
  margin-bottom: 10px;
}
.koto #gift-concierge .gift-concierge-articles .concierge-article .article-link {
  font-size: 16px;
  font-weight: 700;
  color: #312005;
  text-decoration: none;
  position: relative;
  display: inline-block;
  padding-right: 15px;
  margin-left: auto;
}
.koto #gift-concierge .gift-concierge-articles .concierge-article .article-link::after {
  content: "";
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 6px;
  height: 12px;
  background: url("data:image/svg+xml,%3Csvg width='6' height='12' viewBox='0 0 6 12' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1L5 6L1 11' stroke='%23CD4141' stroke-width='1.5'/%3E%3C/svg%3E") no-repeat center;
}
.koto #gift-concierge .gift-concierge-articles .concierge-article .article-link::before {
  content: "";
  position: absolute;
  bottom: -3px;
  left: 0;
  width: 100%;
  height: 1px;
  background: #cd4141;
}
.koto #gift-concierge .gift-concierge-btn .btn-more {
  display: inline-block;
  background: #7d5eb9;
  color: #ffffff;
  font-size: 20px;
  font-weight: 700;
  text-decoration: none;
  border-radius: 6px;
  padding: 10px 23px;
  width: 100%;
  height: 80px;
  line-height: 1.5;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  box-sizing: border-box;
  position: relative;
}
.koto #gift-concierge .gift-concierge-btn .btn-more::after {
  content: "";
  position: absolute;
  right: 16px;
  top: 50%;
  transform: translateY(-50%);
  width: 10px;
  height: 17px;
  background: url("data:image/svg+xml,%3Csvg width='10' height='17' viewBox='0 0 10 17' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1L8.5 8.5L1 16' stroke='white' stroke-width='2'/%3E%3C/svg%3E") no-repeat center;
}
.koto #choju-gift {
  padding: 60px 15px 0;
}
.koto #choju-gift .choju-gift-title {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-bottom: 8px;
  padding: 0 15px;
}
.koto #choju-gift .choju-gift-title h2 {
  font-family: var(--font-shippori);
  font-weight: 500;
  font-size: 18px;
  line-height: 1.3;
  color: var(--color-text);
  margin: 0;
  text-align: center;
  flex: 0 0 auto;
}
.koto #choju-gift .choju-gift-title .choju-gift-decorations {
  position: absolute;
  left: 50%;
  bottom: -3px;
  transform: translateX(-50%);
  width: 100%;
  max-width: 302px;
  height: 46px;
  pointer-events: none;
}
.koto #choju-gift .choju-gift-title .choju-gift-decorations .decoration-left,
.koto #choju-gift .choju-gift-title .choju-gift-decorations .decoration-right {
  position: absolute;
  top: 11.85px;
  width: 29px;
  height: 29px;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}
.koto #choju-gift .choju-gift-title .choju-gift-decorations .decoration-left {
  left: 0;
  background-image: url("../images/sp/decoration-left.webp");
}
.koto #choju-gift .choju-gift-title .choju-gift-decorations .decoration-right {
  right: 0;
  background-image: url("../images/sp/decoration-right.webp");
}
.koto #choju-gift .choju-gift-banner img {
  width: 100%;
  height: auto;
}
.koto #choju-gift .choju-gift-banner a {
  display: block;
  width: 100%;
  height: 100%;
}
.koto #choju-gift .choju-gift-banner a img {
  width: 100%;
  height: 100%;
}
.koto #atoraku-gift {
  padding: 60px 15px;
}
.koto #atoraku-gift .atoraku-gift-banner {
  margin-bottom: 16px;
}
.koto #atoraku-gift .atoraku-gift-banner a {
  display: block;
  width: 100%;
  height: 100%;
}
.koto #atoraku-gift .atoraku-gift-banner a img {
  width: 100%;
  height: 100%;
}
.koto #atoraku-gift .atoraku-gift-bottom {
  background: url("../images/sp/atoraku-gift-bottom-bg.webp") no-repeat left bottom/103% auto;
  padding-bottom: 20vw;
}
.koto #atoraku-gift .atoraku-gift-bottom p {
  font-family: var(--font-japanese);
  font-style: normal;
  font-weight: 700;
  font-size: 17px;
  line-height: 172%;
  color: var(--color-text);
  margin: 16px auto auto 20px;
}
.koto #atoraku-gift .atoraku-gift-highlight {
  font-family: var(--font-japanese);
  font-weight: 700;
  font-size: 18px;
  line-height: 130%;
  color: #1688c5;
}
.koto #faq {
  position: relative;
  background: url("../images/sp/faq-bg.webp") no-repeat center top/cover;
  padding-bottom: 82px;
}
.koto #faq::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 144px;
  background: url("../images/sp/faq-title-bg.webp") no-repeat center bottom/cover;
}
.koto #faq .faq-title {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: flex-start;
  width: 100%;
  max-width: 375px;
  height: 144px;
  font-family: var(--font-japanese);
  font-weight: 700;
  font-size: 24px;
  line-height: 36px;
  letter-spacing: 0.03em;
  color: var(--color-text);
  padding-top: 36px;
  box-sizing: border-box;
  margin: 0 auto 48px;
}
.koto #faq .faq-title::before {
  content: "";
  position: absolute;
  top: 0;
  left: 34px;
  transform: translateY(-50%);
  width: 58px;
  height: 58px;
  background: url("../images/sp/faq-title-before.webp") no-repeat center/contain;
}
.koto #faq .faq-title::after {
  content: "";
  position: absolute;
  bottom: 33px;
  right: 41px;
  width: 50px;
  height: 53px;
  background: url("../images/sp/faq-title-after.webp") no-repeat center/contain;
}
.koto #faq .faq-list {
  display: flex;
  flex-direction: column;
  gap: 16px;
  padding: 0 15px;
}

@media screen and (min-width: 600px) {
  .koto {
    min-width: 1280px;
    /* 選べるチョイス */
    /* ギフトコンシェルジュ PC版 */
  }
  .koto .koto-inner {
    display: inherit;
    min-width: 1160px;
    margin: 0 auto;
  }
  .koto .item-link::after {
    right: 45px;
  }
  .koto .item-catalog-link {
    display: inline-block;
    letter-spacing: -0.01em;
  }
  .koto .item-catalog-link span {
    display: inline-block;
  }
  .koto .fv img {
    height: auto;
    aspect-ratio: 1920/510;
  }
  .koto .koto-nav {
    background: transparent;
    top: 55px;
  }
  .koto .koto-nav .koto-inner {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 60px;
  }
  .koto .koto-nav .nav-choice-container {
    justify-content: center;
    height: 80px;
    gap: 0;
  }
  .koto .koto-nav .nav-choice-item::after {
    position: inherit;
    top: 0;
    right: auto;
    transform: none;
    border-left: 8px solid transparent;
    border-right: 8px solid transparent;
    border-top: 12px solid var(--color-white);
  }
  .koto .koto-nav .nav-choice-item:nth-child(n+2) {
    border-left: none;
  }
  .koto .koto-nav .nav-choice-item .nav-choice-title {
    font-size: 18px;
  }
  .koto .koto-nav .nav-choice-item .nav-choice-subtitle {
    font-size: 18px;
  }
  .koto .koto-nav .nav-choice-item.catalog-choice {
    background: #3e99a7;
  }
  .koto .koto-nav .nav-choice-item.ticket-choice {
    background: #367ab2;
  }
  .koto .koto-nav .nav-choice-item .nav-choice-content {
    flex-direction: row;
  }
  .koto .koto-nav .nav-choice-item .nav-choice-content a {
    flex-direction: row;
    height: 60px;
  }
  .koto .choice.catalog-choice {
    background: url("../images/pc/choice-catalog-bk.webp") no-repeat center top/cover;
    padding: 106px 0 80px;
  }
  .koto .choice.catalog-choice .choice-title {
    max-width: 851px;
  }
  .koto .choice.catalog-choice .choice-title .choice-icon {
    top: -70px;
    left: 26px;
  }
  .koto .choice.catalog-choice .choice-title .choice-icon::before {
    width: 155px;
    height: 155px;
    background: url("../images/pc/choice-title-badge01.webp") no-repeat left top/contain;
  }
  .koto .choice.catalog-choice .choice-title .choice-icon::after {
    width: 166px;
    aspect-ratio: 250/209;
    background: url("../images/pc/choice-title-image01.webp") no-repeat left top/contain;
  }
  .koto .choice.catalog-choice .choice-title-content {
    width: 100%;
    background: url("../images/pc/choice-catalog-title-bk.webp") no-repeat center top/contain;
    aspect-ratio: 2554/659;
    padding-top: 20px;
  }
  .koto .choice.catalog-choice .choice-title-content .choice-label {
    font-size: 20px;
    margin-bottom: 20px;
  }
  .koto .choice.catalog-choice .choice-title-content .choice-label span {
    font-size: 24px;
  }
  .koto .choice.catalog-choice .choice-title-content .choice-main-title {
    width: calc(100% + 4px);
    font-size: 42px;
    margin: 0 0 0 4px;
  }
  .koto .choice .choice-description {
    margin-bottom: 52px;
  }
  .koto .choice .choice-description p {
    font-size: 20px;
    text-align: center;
  }
  .koto .choice .choice-description p br {
    display: inherit;
  }
  .koto .choice .choice-slider {
    width: 100vw;
    margin-left: calc(-1 * clamp(40px, 3.125vw, 60px));
  }
  .koto .choice .choice-slider .slick-arrow {
    width: 70px;
    height: 140px;
  }
  .koto .choice .choice-slider .choice-list {
    display: flex;
    min-height: auto;
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    scroll-snap-type: x mandatory;
  }
  .koto .choice .choice-slider .choice-list .slick-list {
    height: auto !important;
  }
  .koto .choice .choice-slider .choice-list .slick-track {
    height: auto !important;
    align-items: flex-start;
  }
  .koto .choice .choice-slider .choice-list .choice-card {
    flex-direction: row;
    min-width: 1094px;
    width: calc(60vw - 60px);
    flex-shrink: 0;
    scroll-snap-align: start;
    height: auto !important;
    min-height: 0;
    border-radius: 30px;
    padding: 48px 60px;
    gap: 30px;
    box-sizing: border-box;
  }
  .koto .choice .choice-slider .choice-list .choice-card .choice-card-image {
    max-width: 422px;
    height: auto;
    box-sizing: border-box;
  }
  .koto .choice .choice-slider .choice-list .choice-card .choice-card-image::after {
    height: auto;
  }
  .koto .choice .choice-slider .choice-list .choice-card .choice-card-image .choice-card-buttons {
    display: flex;
    margin-top: 30px;
  }
  .koto .choice .choice-slider .choice-list .choice-card .choice-card-image .choice-card-buttons a:first-child {
    max-width: 178px;
  }
  .koto .choice .choice-slider .choice-list .choice-card .choice-card-content .choice-card-title {
    font-size: 28px;
    margin: 0 0 14px 0;
  }
  .koto .choice .choice-slider .choice-list .choice-card .choice-card-content .choice-card-price {
    font-size: 28px;
  }
  .koto .choice .choice-slider .choice-list .choice-card .choice-card-content .choice-card-price span {
    font-size: 14px;
  }
  .koto .choice .choice-slider .choice-list .choice-card .choice-card-content .choice-card-detail {
    display: flex;
    flex-direction: column;
  }
  .koto .choice .choice-slider .choice-list .choice-card .choice-card-content .choice-card-detail .choice-card-meta {
    display: flex;
    align-items: baseline;
    line-height: 1;
    font-size: 14px;
  }
  .koto .choice .choice-slider .choice-list .choice-card .choice-card-content .choice-card-detail .choice-card-meta .choice-card-meta-label {
    display: flex;
    justify-content: center;
    align-items: center;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    height: 24px;
    color: var(--color-white);
    background: var(--color-brown-medium);
    border-radius: 10px;
    padding: 0 12px;
    margin-top: auto;
  }
  .koto .choice .choice-slider .choice-list .choice-card .choice-card-content .choice-card-detail .choice-card-meta .choice-card-meta-label + span {
    font-family: var(--font-shippori);
    font-size: 48px;
    margin: 0 6px 0 16px;
  }
  .koto .choice .choice-slider .choice-list .choice-card .choice-card-content .choice-card-detail p {
    font-size: 16px;
    margin-top: 30px;
  }
  .koto .choice .choice-slider .choice-list .choice-card .choice-card-content .choice-card-buttons {
    display: none;
  }
  .koto .choice .choice-slider .choice-list .choice-card .choice-card-buttons {
    max-width: 420px;
    height: 46px;
    gap: 24px;
  }
  .koto .choice .choice-slider .choice-list .choice-card .choice-card-buttons a {
    display: flex;
    max-width: 220px;
    padding: 12px 38px;
  }
  .koto .choice .choice-slider .choice-list .choice-card .choice-card-buttons a::before {
    left: 16px;
  }
  .koto .choice .choice-slider .choice-list .choice-card .choice-card-buttons a::after {
    right: 16px;
  }
  .koto .choice .choice-slider .choice-list .choice-card .choice-card-thumbnails {
    gap: 12px;
    margin: 48px 0 18px;
  }
  .koto .choice .choice-slider .choice-list .choice-card .choice-card-thumbnails .choice-card-thumbnails-item {
    max-width: 170px;
    width: 33%;
    height: auto;
    aspect-ratio: 1/1;
  }
  .koto .choice .choice-slider .choice-list .choice-card .choice-card-thumbnails .choice-card-thumbnails-item::after {
    max-width: 170px;
    width: 100%;
    height: auto;
    aspect-ratio: 1/1;
  }
  .koto .choice .choice-area-tabs ul {
    grid-template-columns: repeat(6, 1fr);
    grid-template-rows: repeat(1, 1fr);
    border-top: none;
    border-right: none;
    border-left: none;
    padding: 0 45px;
    gap: 8px;
  }
  .koto .choice .choice-area-tabs .choice-area-tab {
    height: 62px;
    font-size: 20px;
    border: 1px solid var(--color-secondary);
    border-bottom: none;
    border-radius: 6px 6px 0 0;
  }
  .koto .choice .choice-area-tabs .choice-area-tab:nth-child(3n) {
    border-right: 1px solid var(--color-secondary);
  }
  .koto .choice .choice-area-tabs .choice-area-tab:nth-child(n+4) {
    border-bottom: 1px solid var(--color-secondary);
  }
  .koto .choice .choice-area-contents .choice-area-content {
    border-bottom: 4px solid var(--color-secondary);
    padding: 30px 60px 78px;
  }
  .koto .choice .choice-area-contents .area-title {
    display: flex;
    justify-content: center;
    align-items: baseline;
    margin-bottom: 24px;
  }
  .koto .choice .choice-area-contents .area-title:first-child {
    margin-bottom: 16px;
  }
  .koto .choice .choice-area-contents .area-title:first-child::before {
    width: 99px;
    height: 104px;
    margin: 0;
  }
  .koto .choice .choice-area-contents .area-title h3 {
    font-size: 40px;
    margin: auto 0 0.12em 15px;
  }
  .koto .choice .choice-area-contents .area-title p {
    position: relative;
    font-size: 25px;
    line-height: 1.2;
    margin: auto 0 0.6em;
  }
  .koto .choice .choice-area-contents .area-title p span {
    position: absolute;
    bottom: -3px;
    font-size: 64px;
    margin-left: 4px;
    line-height: 1;
  }
  .koto .choice .choice-area-contents .area-title p span::after {
    top: -16px;
    left: 13px;
    width: 40px;
    height: 38px;
    transform: rotate(-15deg);
  }
  .koto .choice .choice-area-contents .area-ranking {
    flex-direction: row;
    margin-bottom: 40px;
    gap: 12px;
  }
  .koto .choice .choice-area-contents .area-ranking .area-ranking-item {
    display: flex;
    flex-direction: column;
    padding: 32px 22px;
    flex: 1;
  }
  .koto .choice .choice-area-contents .area-ranking .area-ranking-item::after {
    width: 40px;
    height: 40px;
    font-size: 2em;
  }
  .koto .choice .choice-area-contents .area-ranking .area-ranking-item .area-ranking-wrap {
    flex-direction: column;
    gap: 16px;
  }
  .koto .choice .choice-area-contents .area-ranking .area-ranking-item .area-ranking-images {
    flex: 0;
    gap: 4px;
  }
  .koto .choice .choice-area-contents .area-ranking .area-ranking-item .area-ranking-images img {
    width: calc(50% - 2px);
  }
  .koto .choice .choice-area-contents .area-ranking .area-ranking-item .area-ranking-detail {
    width: 100%;
    flex: 0;
  }
  .koto .choice .choice-area-contents .area-ranking .area-ranking-item .area-ranking-detail .detail-area {
    font-size: 16px;
  }
  .koto .choice .choice-area-contents .area-ranking .area-ranking-item .area-ranking-detail .detail-name {
    font-size: 17px;
  }
  .koto .choice .choice-area-contents .area-ranking .area-ranking-item .area-ranking-detail .detail-voucher-pax {
    font-size: 16px;
  }
  .koto .choice .choice-area-contents .area-ranking .area-ranking-item .area-ranking-detail .detail-price {
    font-size: 16px;
    font-weight: bold;
    margin: auto 0 16px;
  }
  .koto .choice .choice-area-contents .area-ranking .area-ranking-item > p {
    font-size: 16px;
    -webkit-line-clamp: none;
    line-clamp: none;
    margin: 0 auto 16px;
  }
  .koto .choice .choice-area-contents .area-ranking .area-ranking-item .area-ranking-button {
    min-width: auto;
    width: 178px;
    height: 46px;
    margin: auto auto 0;
  }
  .koto .choice .choice-area-contents .area-ranking .area-ranking-item .area-ranking-button .item-link {
    display: flex;
    justify-content: center;
    width: 100%;
    height: 100%;
  }
  .koto .choice .choice-area-contents .area-ranking .area-ranking-item .area-ranking-button .item-link::after {
    right: 16px;
  }
  .koto .choice .choice-area-contents .tab-buttons {
    padding: 0 68px;
    margin-bottom: 24px;
    gap: 12px;
  }
  .koto .choice .choice-area-contents .tab-button {
    display: flex;
    justify-content: center;
    align-items: baseline;
    width: 480px;
    height: 62px;
    padding: 16px 4px;
    border-radius: 6px 6px 0 0;
    font-size: 20px;
    line-height: 130%;
  }
  .koto .choice .choice-area-contents .tab-button span {
    font-size: 16px;
  }
  .koto .choice .choice-area-contents .tab-button span + span {
    display: none;
  }
  .koto .choice .choice-area-contents .area-occasions ul {
    gap: 12px;
  }
  .koto .choice .choice-area-contents .area-occasions ul li {
    width: calc(20% - 10px);
  }
  .koto .choice .choice-area-contents .area-occasions ul li a {
    aspect-ratio: 167/90;
  }
  .koto .choice .choice-area-contents .area-occasions ul li img {
    border-radius: 6px;
  }
  .koto .choice .choice-area-contents .area-list-button {
    flex-direction: row;
    align-items: center;
    max-width: 800px;
    min-height: auto;
    font-size: 24px;
    padding: 0 21px 0 70px;
    margin: 40px auto 0;
  }
  .koto .choice.ticket-choice {
    position: relative;
    background: url("../images/pc/choice-ticket-bk.webp") no-repeat center top/cover;
    border-top: 2px solid var(--color-primary);
    padding: 106px 0 140px;
  }
  .koto .choice.ticket-choice::after {
    content: "";
    position: absolute;
    top: 100%;
    width: 100%;
    height: 500px;
    background: url("../images/pc/choice-ticket-bk.webp") no-repeat center top/cover;
  }
  .koto .choice.ticket-choice .choice-inner {
    max-width: 1200px;
  }
  .koto .choice.ticket-choice .choice-title {
    max-width: 851px;
  }
  .koto .choice.ticket-choice .choice-title .choice-icon {
    top: -70px;
    left: 26px;
  }
  .koto .choice.ticket-choice .choice-title .choice-icon::before {
    width: 155px;
    height: 155px;
    background: url("../images/pc/choice-title-badge02.webp") no-repeat left top/contain;
  }
  .koto .choice.ticket-choice .choice-title .choice-icon::after {
    width: 166px;
    aspect-ratio: 250/209;
    background: url("../images/pc/choice-title-image02.webp") no-repeat left top/contain;
  }
  .koto .choice.ticket-choice .choice-title .choice-main-title {
    font-size: 27px;
  }
  .koto .choice.ticket-choice .choice-title .choice-main-title small {
    font-size: 32px;
    letter-spacing: -0.04em;
  }
  .koto .choice.ticket-choice .choice-title .choice-main-title br:nth-of-type(2) {
    display: none;
  }
  .koto .choice.ticket-choice .choice-title-content {
    background: url("../images/pc/choice-ticket-title-bk.webp") no-repeat center top/contain;
    aspect-ratio: 2554/649;
    width: 100%;
  }
  .koto .choice.ticket-choice .choice-title-content .choice-main-title {
    margin: 0;
  }
  .koto .choice.ticket-choice .choice-title-content .choice-label {
    font-size: 20px;
    margin-bottom: 20px;
  }
  .koto .choice.ticket-choice .choice-title-content .choice-label span {
    font-size: 24px;
  }
  .koto .choice.ticket-choice .choice-title-content .choice-main-title {
    width: calc(100% + 4px);
    font-size: 42px;
    margin: 0 0 0 4px;
  }
  .koto .choice.ticket-choice .choice-description p {
    width: 840px;
    text-align: left;
    margin: auto;
  }
  .koto .choice .choice-area-contents .area-list-button {
    background: url("../images/pc/area-ticket-list-button.webp") no-repeat left top/contain;
    aspect-ratio: 905/124;
  }
  .koto .content-wrap-pc {
    position: relative;
    width: 100%;
    height: 100%;
    background-image: url("../images/pc/content-wrap-pc-bg-left.webp"), url("../images/pc/content-wrap-pc-bg-right.webp");
    background-repeat: repeat-y, repeat-y;
    background-position: left top, right top;
    background-size: clamp(40px, 3.125vw, 60px) auto, clamp(40px, 3.125vw, 60px) auto;
    margin: 0 auto;
    padding: 0 clamp(40px, 3.125vw, 60px);
    box-sizing: border-box;
  }
  .koto .content-wrap-pc::after {
    content: "";
    display: block;
    width: 100%;
    height: clamp(786.66px, 61.458vw, 61.458vw);
    background: #f5f5f5;
    position: absolute;
    bottom: 0;
    left: 0;
  }
  .koto #review {
    width: calc(100% + clamp(80px, 6.25vw, 120px));
    background: url("../images/pc/review-bottom.webp") no-repeat center/contain;
    background-position: center bottom clamp(46.67px, 3.646vw, 3.646vw);
    padding: 0 0 clamp(520px, 40.625vw, 40.625vw);
    margin: 0 0 0 clamp(-60px, -3.125vw, -40px);
    z-index: 1;
  }
  .koto #review::before {
    content: "";
    display: block;
    position: absolute;
    top: clamp(-20px, -1.042vw, -20px);
    left: calc(50% + clamp(160px, 12.5vw, 12.5vw));
    transform: translateX(-50%);
    max-width: initial;
    width: clamp(732px, 57.1875vw, 57.1875vw);
    aspect-ratio: 1098/719;
    background: url("../images/pc/review-bg-text.webp") no-repeat center top/contain;
    z-index: 1;
  }
  .koto #review::after {
    content: none;
  }
  .koto #review .review-bg-top {
    position: relative;
    aspect-ratio: 384/439;
    background: url("../images/pc/review-bg-top.webp") no-repeat center top/cover;
    padding-top: clamp(379.328px, 29.635vw, 29.635vw);
    box-sizing: border-box;
  }
  .koto #review .review-header-title {
    position: unset;
    transform: none;
    display: flex;
    justify-content: center;
    align-items: center;
    max-width: inherit;
    width: clamp(421.33px, 32.92vw, 32.92vw);
    height: clamp(108px, 8.44vw, 8.44vw);
    font-weight: 700;
    font-size: clamp(18px, 1.40625vw, 27px);
    line-height: clamp(26.67px, 2.08333vw, 40px);
    letter-spacing: 0.03em;
    background: url("../images/pc/review-header-description-bg.webp") no-repeat center/contain;
    padding: clamp(16.67px, 1.3vw, 1.3vw) 0;
    margin: 0 auto clamp(22.67px, 1.771vw, 1.771vw);
    z-index: 1;
  }
  .koto #review .review-header-title span {
    font-size: clamp(21.33px, 1.66667vw, 32px);
  }
  .koto #review .review-header-title span:first-child {
    font-weight: 700;
    font-size: clamp(25.33px, 1.97917vw, 38px);
    line-height: clamp(38px, 2.96875vw, 57px);
    letter-spacing: 0.03em;
  }
  .koto #review .review-cards-area {
    width: 1100px;
    background: none;
    padding-bottom: 0;
    margin: auto;
    z-index: 1;
  }
  .koto #review .review-cards-area .slick-arrow,
  .koto #review .review-cards-area .slick-prev,
  .koto #review .review-cards-area .slick-next {
    display: none;
  }
  .koto #review .review-cards-list {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    grid-template-rows: auto auto;
    gap: 25px;
    align-items: stretch;
  }
  .koto #review .review-cards-list .review-card-item {
    max-width: 350px;
    height: 100%;
    padding: 0;
    margin: 0;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
  }
  .koto #review .review-cards-list .review-card-item .review-card-inner {
    padding-bottom: clamp(33.33px, 2.604vw, 2.604vw);
    display: flex;
    flex-direction: column;
    min-height: 350px;
  }
  .koto #review .review-cards-list .review-card-item .review-card-product {
    margin-top: auto;
  }
  .koto #review .review-cards-list .review-card-item .review-card-product-name {
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    line-clamp: 3;
    overflow: hidden;
  }
  .koto #review .review-cards-list .review-card-item .review-card-product-name span {
    display: block;
    margin-left: 0;
  }
  .koto #review .review-cards-list .review-card-item .review-card-title {
    font-weight: 700;
    font-size: 20px;
    line-height: clamp(20.01px, 1.563vw, 1.563vw);
  }
  .koto #review .review-cards-list .review-card-item .review-card-title span {
    font-weight: 700;
    font-size: 24px;
    line-height: clamp(24px, 1.875vw, 1.875vw);
  }
  .koto #review .review-cards-list .review-card-item .review-card-text {
    font-weight: 500;
    font-size: 16px;
    line-height: 170%;
    flex: 1;
  }
  .koto #review .review-cards-list .review-card-item .review-card-product-image {
    width: clamp(80px, 6.25vw, 6.25vw);
    height: clamp(80px, 6.25vw, 6.25vw);
  }
  .koto #why-choose {
    background-image: url("../images/pc/why-choose-bg.webp");
    background-repeat: no-repeat;
    background-position: center top;
    background-size: contain;
    padding: clamp(124.67px, 9.73958vw, 9.73958vw) 0 0;
  }
  .koto #why-choose .why-choose-title {
    font-weight: 700;
    font-size: 36px;
    line-height: 54px;
    letter-spacing: 0.03em;
    margin-bottom: 74px;
  }
  .koto #why-choose .why-choose-title::before {
    top: 0;
    left: 50%;
    transform: translate(-50%, -100%);
    width: 102px;
    height: 100px;
  }
  .koto #why-choose .why-choose-title br {
    display: none;
  }
  .koto #why-choose .why-choose-reasons {
    flex-direction: row;
    justify-content: space-between;
    width: 1100px;
    padding: 0 0 clamp(65.33px, 5.10417vw, 5.10417vw);
    margin: 0 auto;
  }
  .koto #why-choose .why-choose-reasons .why-choose-reason {
    width: 321px;
  }
  .koto #why-choose .why-choose-reasons .why-choose-reason:nth-child(1) .reason-number {
    right: -10px;
  }
  .koto #why-choose .why-choose-reasons .why-choose-reason:nth-child(3) .reason-title {
    padding: 0.75em 0;
  }
  .koto #why-choose .why-choose-reasons .why-choose-reason:nth-child(3) .reason-number {
    right: -3px;
  }
  .koto #why-choose .why-choose-reasons .why-choose-reason:nth-child(1) .reason-description, .koto #why-choose .why-choose-reasons .why-choose-reason:nth-child(2) .reason-description, .koto #why-choose .why-choose-reasons .why-choose-reason:nth-child(3) .reason-description {
    margin-bottom: 0;
  }
  .koto #recommended-list .recommended-list-inner {
    background: url("../images/pc/recommended-list-inner-bg.webp") no-repeat center 42px/cover;
    padding: 20px 0 80px;
  }
  .koto #recommended-list .recommended-list-inner .recommended-list-items-wrap {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    width: 1100px;
    margin: 54px auto 0;
    gap: 25px;
  }
  .koto #recommended-list .recommended-list-inner .recommended-list-items-wrap .recommended-list-title {
    grid-column: 1/4;
    grid-row: 1/2;
  }
  .koto #recommended-list .recommended-list-inner .recommended-list-items-wrap .recommended-list-items--dining {
    grid-column: 1/2;
    grid-row: 2/3;
    height: -webkit-fit-content;
    height: -moz-fit-content;
    height: fit-content;
    margin: 0;
  }
  .koto #recommended-list .recommended-list-inner .recommended-list-items-wrap .recommended-list-items--stay {
    grid-column: 2/3;
    grid-row: 2/3;
    height: -webkit-fit-content;
    height: -moz-fit-content;
    height: fit-content;
    margin: 0;
  }
  .koto #recommended-list .recommended-list-inner .recommended-list-items-wrap .recommended-list-items--relaxing {
    grid-column: 3/4;
    grid-row: 2/3;
    height: -webkit-fit-content;
    height: -moz-fit-content;
    height: fit-content;
    margin: 0;
  }
  .koto #recommended-list .recommended-list-inner .recommended-list-items-wrap .recommended-list-bottom-banner {
    grid-column: 1/4;
    grid-row: 3/4;
    width: 707px;
    height: 84px;
    margin: auto;
  }
  .koto #recommended-list .recommended-list-inner .recommended-list-item:nth-child(n+3) .recommended-list-item-image {
    display: none;
  }
  .koto #recommended-list .recommended-list-inner .recommended-list-item:nth-child(n+3) .recommended-list-item-name {
    font-size: 17px;
    line-height: 26px;
    padding-left: 11px;
  }
  .koto #recommended-list .recommended-list-inner .recommended-list-item:nth-child(n+3) .recommended-list-item-name::before {
    height: 24px;
  }
  .koto #recommended-list .recommended-list-inner .recommended-list-item:nth-child(n+3) .item-actions {
    gap: 10px;
  }
  .koto #recommended-list .recommended-list-inner .recommended-list-item:nth-child(n+3) .item-link,
  .koto #recommended-list .recommended-list-inner .recommended-list-item:nth-child(n+3) .item-catalog-link {
    display: flex;
    align-self: center;
    width: 280px;
    height: 46px;
    padding: 4px 28px 4px 61px;
  }
  .koto #recommended-list .recommended-list-inner .recommended-list-item:nth-child(n+3) .item-link::before,
  .koto #recommended-list .recommended-list-inner .recommended-list-item:nth-child(n+3) .item-catalog-link::before {
    left: 28px;
  }
  .koto #recommended-list .recommended-list-inner .recommended-list-item:nth-child(n+3) .item-link::after,
  .koto #recommended-list .recommended-list-inner .recommended-list-item:nth-child(n+3) .item-catalog-link::after {
    right: auto;
    left: 10.6em;
  }
  .koto #recommended-list .recommended-list-inner .recommended-list-item:nth-child(n+3) .item-catalog-link:after {
    right: auto;
    left: 13.6em;
  }
  .koto #recommended-list .recommended-list-inner .recommended-list-item .recommended-list-item-image {
    height: 295px;
    margin-bottom: 39px;
  }
  .koto #recommended-list .recommended-list-inner .recommended-list-item .recommended-list-item-name {
    font-weight: 700;
    font-size: 22px;
    line-height: 150%;
  }
  .koto #recommended-list .recommended-list-title::before {
    display: block;
    width: 131px;
    height: 131px;
    top: -30px;
    left: 50%;
    transform: translateX(-330px);
    background: url("../images/pc/recommended-list-title.webp") no-repeat center/contain;
  }
  .koto #recommended-list .recommended-list-title::after {
    content: "";
    position: absolute;
    top: -35px;
    left: 50%;
    transform: translateX(123px);
    right: 350px;
    width: 164px;
    aspect-ratio: 492/307;
    background: url("../images/pc/recommended-gift-list-bg.webp") no-repeat center/contain;
  }
  .koto #recommended-list .recommended-list-title .recommended-list-title-bg::before {
    width: 608px;
    height: 608px;
  }
  .koto #recommended-list .recommended-list-title .recommended-list-title-line1 {
    font-weight: 700;
    font-size: 20px;
    line-height: 30px;
    margin: 23px auto 12px;
  }
  .koto #recommended-list .recommended-list-title .recommended-list-title-line2 {
    font-weight: 700;
    font-size: 28px;
    line-height: 48px;
    padding-bottom: 17.5px;
  }
  .koto #recommended-list .recommended-list-title .recommended-list-title-line2::after {
    width: 138px;
    height: 95px;
    top: -53px;
    right: 50%;
    transform: translateX(350px);
    background: url("../images/pc/recommended-catalog-list-title-after.webp") no-repeat center/contain;
  }
  .koto #recommended-list .recommended-list-title .recommended-list-title-line2 span {
    font-size: 32px;
  }
  .recommended-list-inner--gift .koto #recommended-list .recommended-list-title .recommended-list-title-line2::after {
    top: -62px;
    right: 50%;
    transform: translateX(375px);
    width: 143px;
    height: 128px;
    background: url("../images/pc/recommended-gift-list-title-after.webp") no-repeat center/contain;
  }
  .recommended-list-inner--gift .koto #recommended-list .recommended-list-title .recommended-list-title-line2 span > span, .recommended-list-inner--gift .koto #recommended-list .recommended-list-title .recommended-list-title-line2 span.txt-ex {
    font-size: 32px;
  }
  .koto #recommended-list .recommended-list-items--dining, .koto #recommended-list .recommended-list-items--stay, .koto #recommended-list .recommended-list-items--relaxing {
    padding: 77px 35px 54px;
  }
  .koto #recommended-list .recommended-list-items--dining .recommended-list-items-badge, .koto #recommended-list .recommended-list-items--stay .recommended-list-items-badge, .koto #recommended-list .recommended-list-items--relaxing .recommended-list-items-badge {
    top: 0;
    left: 50%;
    transform: translate(-50%, -50%);
  }
  .koto #recommended-list .recommended-list-items--dining .recommended-list-item .recommended-list-item-lead, .koto #recommended-list .recommended-list-items--stay .recommended-list-item .recommended-list-item-lead, .koto #recommended-list .recommended-list-items--relaxing .recommended-list-item .recommended-list-item-lead {
    display: block;
    font-family: var(--font-japanese);
    font-weight: 500;
    font-size: 16px;
    line-height: 150%;
    color: var(--color-text);
    margin-top: 20px;
  }
  .recommended-list-inner--gift .koto #recommended-list .recommended-list-items--dining, .recommended-list-inner--gift .koto #recommended-list .recommended-list-items--stay, .recommended-list-inner--gift .koto #recommended-list .recommended-list-items--relaxing {
    width: 1100px;
    padding: 74px 85px 60px;
    margin: 100px auto 0;
  }
  .recommended-list-inner--gift .koto #recommended-list .recommended-list-items--dining::before, .recommended-list-inner--gift .koto #recommended-list .recommended-list-items--dining::after, .recommended-list-inner--gift .koto #recommended-list .recommended-list-items--stay::before, .recommended-list-inner--gift .koto #recommended-list .recommended-list-items--stay::after, .recommended-list-inner--gift .koto #recommended-list .recommended-list-items--relaxing::before, .recommended-list-inner--gift .koto #recommended-list .recommended-list-items--relaxing::after {
    content: "";
    display: block;
    width: 189px;
    height: 129px;
    background: url("../images/pc/recommended-gift-list-items-deco.webp") no-repeat center/contain;
  }
  .recommended-list-inner--gift .koto #recommended-list .recommended-list-items--dining .recommended-list-items-badge, .recommended-list-inner--gift .koto #recommended-list .recommended-list-items--stay .recommended-list-items-badge, .recommended-list-inner--gift .koto #recommended-list .recommended-list-items--relaxing .recommended-list-items-badge {
    width: 120px;
    height: 120px;
  }
  .recommended-list-inner--gift .koto #recommended-list .recommended-list-items--dining .recommended-list-items-title, .recommended-list-inner--gift .koto #recommended-list .recommended-list-items--stay .recommended-list-items-title, .recommended-list-inner--gift .koto #recommended-list .recommended-list-items--relaxing .recommended-list-items-title {
    font-size: 24px;
    line-height: 130%;
  }
  .recommended-list-inner--gift .koto #recommended-list .recommended-list-items--dining .recommended-list-items-title span.txt-small, .recommended-list-inner--gift .koto #recommended-list .recommended-list-items--stay .recommended-list-items-title span.txt-small, .recommended-list-inner--gift .koto #recommended-list .recommended-list-items--relaxing .recommended-list-items-title span.txt-small {
    font-size: 26px;
  }
  .recommended-list-inner--gift .koto #recommended-list .recommended-list-items--dining .recommended-list-items-title span.txt-color-primary, .recommended-list-inner--gift .koto #recommended-list .recommended-list-items--stay .recommended-list-items-title span.txt-color-primary, .recommended-list-inner--gift .koto #recommended-list .recommended-list-items--relaxing .recommended-list-items-title span.txt-color-primary {
    font-size: 32px;
  }
  .recommended-list-inner--gift .koto #recommended-list .recommended-list-items--dining .recommended-list-items-title span.txt-color-primary br, .recommended-list-inner--gift .koto #recommended-list .recommended-list-items--stay .recommended-list-items-title span.txt-color-primary br, .recommended-list-inner--gift .koto #recommended-list .recommended-list-items--relaxing .recommended-list-items-title span.txt-color-primary br {
    display: none;
  }
  .recommended-list-inner--gift .koto #recommended-list .recommended-list-items--dining .recommended-list-items, .recommended-list-inner--gift .koto #recommended-list .recommended-list-items--stay .recommended-list-items, .recommended-list-inner--gift .koto #recommended-list .recommended-list-items--relaxing .recommended-list-items {
    grid-template-columns: repeat(4, 1fr);
    gap: 30px 22px;
  }
  .recommended-list-inner--gift .koto #recommended-list .recommended-list-items--dining .recommended-list-item .recommended-list-item-image, .recommended-list-inner--gift .koto #recommended-list .recommended-list-items--stay .recommended-list-item .recommended-list-item-image, .recommended-list-inner--gift .koto #recommended-list .recommended-list-items--relaxing .recommended-list-item .recommended-list-item-image {
    width: 257px;
  }
  .recommended-list-inner--gift .koto #recommended-list .recommended-list-items--dining .recommended-list-item .recommended-list-item-area, .recommended-list-inner--gift .koto #recommended-list .recommended-list-items--stay .recommended-list-item .recommended-list-item-area, .recommended-list-inner--gift .koto #recommended-list .recommended-list-items--relaxing .recommended-list-item .recommended-list-item-area {
    font-weight: 500;
    font-size: 16px;
    line-height: 172%;
  }
  .recommended-list-inner--gift .koto #recommended-list .recommended-list-items--dining .recommended-list-item .recommended-list-item-name, .recommended-list-inner--gift .koto #recommended-list .recommended-list-items--stay .recommended-list-item .recommended-list-item-name, .recommended-list-inner--gift .koto #recommended-list .recommended-list-items--relaxing .recommended-list-item .recommended-list-item-name {
    font-weight: 700;
    font-size: 18px;
    line-height: 130%;
  }
  .koto #recommended-list .recommended-list-inner--gift {
    background: url("../images/pc/recommended-list-inner-bg--gift.webp") no-repeat center 42px/cover;
    padding: 20px 0 40px;
  }
  .koto #recommended-list .recommended-list-inner--gift::before {
    content: none;
  }
  .koto #recommended-list .recommended-list-inner--gift .recommended-list-items--dining + .recommended-list-bottom-banner {
    padding: 62px 0 80px;
  }
  .koto #recommended-list .recommended-list-inner--gift .recommended-list-items--dining + .recommended-list-bottom-banner a {
    width: 840px;
    height: 120px;
    margin: auto;
  }
  .koto #recommended-list .recommended-list-inner--gift .recommended-list-items--stay + .recommended-list-bottom-banner {
    padding: 48px 0 80px;
  }
  .koto #recommended-list .recommended-list-inner--gift .recommended-list-items--stay + .recommended-list-bottom-banner a {
    position: relative;
    width: 700px;
    height: 116px;
    margin: auto;
  }
  .koto #recommended-list .recommended-list-inner--gift .recommended-list-items--stay + .recommended-list-bottom-banner a::before {
    top: -8px;
    right: -55px;
    width: 143px;
    height: 128px;
    background: url("../images/pc/recommended-gift-list-title-after.webp") no-repeat center/contain;
  }
  .koto #recommended-list .recommended-list-inner--gift .recommended-list-items--relaxing + .recommended-list-bottom-banner {
    padding: 62px 0 80px;
  }
  .koto #recommended-list .recommended-list-inner--gift .recommended-list-items--relaxing + .recommended-list-bottom-banner a {
    position: relative;
    width: 761px;
    height: 116px;
    margin: auto;
  }
  .koto #recommended-list .recommended-list-inner--gift .recommended-list-items--relaxing + .recommended-list-bottom-banner a::before {
    top: -8px;
    right: -55px;
    width: 143px;
    height: 128px;
    background: url("../images/pc/recommended-gift-list-title-after.webp") no-repeat center/contain;
  }
  .koto #flow-of-gift {
    background: url("../images/pc/flow-of-gift-bg.webp") no-repeat center top/cover;
    padding-bottom: 122px;
  }
  .koto #flow-of-gift::before {
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 701px;
    height: 188px;
    background: url("../images/pc/flow-of-gift-title-bg.webp") no-repeat center bottom/cover;
  }
  .koto #flow-of-gift .flow-of-gift-title {
    max-width: 701px;
    padding: 46px 0 42px;
    margin-bottom: 102px;
  }
  .koto #flow-of-gift .flow-of-gift-title::before {
    top: -22px;
    left: 75px;
    width: 84px;
    height: 85px;
    background: url("../images/pc/flow-of-gift-title-before.webp") no-repeat center/contain;
  }
  .koto #flow-of-gift .flow-of-gift-title::after {
    top: 87px;
    right: 109px;
    width: 54px;
    height: 58px;
    background: url("../images/pc/flow-of-gift-title-after.webp") no-repeat center/contain;
  }
  .koto #flow-of-gift .flow-of-gift-title h2 {
    font-size: 32px;
    line-height: 48px;
    text-align: center;
    letter-spacing: 0.03em;
  }
  .koto #flow-of-gift .flow-of-gift-title h2 span.txt-small {
    font-size: 32px;
  }
  .koto #flow-of-gift .flow-of-gift-steps {
    display: grid;
    grid-template-columns: repeat(5, auto);
    grid-template-rows: repeat(4, auto);
    -moz-column-gap: 38px;
         column-gap: 38px;
    width: 1100px;
    padding: 0;
    margin: 0 auto 97px;
  }
  .koto #flow-of-gift .flow-of-gift-steps .flow-of-gift-step {
    display: contents;
  }
  .koto #flow-of-gift .flow-of-gift-steps .flow-of-gift-step[data-type=sender] .flow-of-gift-steps-label {
    grid-column: 1/2;
    grid-row: 4/5;
    -webkit-clip-path: polygon(0 0, 93% 0, 100% 50%, 93% 100%, 0 100%);
            clip-path: polygon(0 0, 93% 0, 100% 50%, 93% 100%, 0 100%);
    margin: 38px 0 0;
  }
  .koto #flow-of-gift .flow-of-gift-steps .flow-of-gift-step[data-type=sender] .flow-of-gift-step-item {
    position: relative;
    grid-column: 1/2;
    grid-row: 2/4;
  }
  .koto #flow-of-gift .flow-of-gift-steps .flow-of-gift-step[data-type=sender] .flow-of-gift-step-item::before {
    content: "";
    display: block;
    position: absolute;
    top: calc((100% - 48px) / 2);
    left: calc(100% + 12px);
    transform: translateY(-50%);
    width: 17px;
    height: 16px;
    background: url("../images/pc/flow-of-gift-step-arrow--small.svg") no-repeat right center/100% 100%;
  }
  .koto #flow-of-gift .flow-of-gift-steps .flow-of-gift-step[data-type=sender] .flow-of-gift-step-item::after {
    content: none;
  }
  .koto #flow-of-gift .flow-of-gift-steps .flow-of-gift-step[data-type=recipient] .flow-of-gift-steps-label {
    margin: 38px 0 0;
  }
  .koto #flow-of-gift .flow-of-gift-steps .flow-of-gift-step[data-type=recipient] .flow-of-gift-steps-label:first-child {
    grid-column: 2/6;
    grid-row: 4/5;
  }
  .koto #flow-of-gift .flow-of-gift-steps .flow-of-gift-step[data-type=recipient] .flow-of-gift-step-item {
    margin-bottom: 0;
  }
  .koto #flow-of-gift .flow-of-gift-steps .flow-of-gift-step[data-type=recipient] .flow-of-gift-step-item::after {
    content: none;
  }
  .koto #flow-of-gift .flow-of-gift-steps .flow-of-gift-step:nth-child(2) {
    display: contents;
  }
  .koto #flow-of-gift .flow-of-gift-steps .flow-of-gift-step:nth-child(2) .flow-of-gift-step-label[data-type=catalog] {
    position: relative;
    grid-column: 2/4;
    grid-row: 1/2;
    margin-bottom: 16px;
  }
  .koto #flow-of-gift .flow-of-gift-steps .flow-of-gift-step:nth-child(2) .flow-of-gift-step-label[data-type=catalog]::before {
    content: "";
    display: block;
    position: absolute;
    top: calc(50% - 1px);
    left: 0;
    width: 100%;
    height: 2px;
    background: var(--color-primary);
    border-radius: 1px;
  }
  .koto #flow-of-gift .flow-of-gift-steps .flow-of-gift-step:nth-child(2) .flow-of-gift-step-label[data-type=experience] {
    position: relative;
    grid-column: 2/4;
    grid-row: 3/4;
    margin-top: 16px;
  }
  .koto #flow-of-gift .flow-of-gift-steps .flow-of-gift-step:nth-child(2) .flow-of-gift-step-label[data-type=experience]::before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: -26px;
    width: calc(100% + 52px);
    height: 100%;
    background: url("../images/pc/flow-of-gift-step-arrow.svg") no-repeat center/contain;
  }
  .koto #flow-of-gift .flow-of-gift-steps .flow-of-gift-step:nth-child(2) .flow-of-gift-step-item[data-step="2"] {
    position: relative;
    grid-column: 2/3;
    grid-row: 2/3;
  }
  .koto #flow-of-gift .flow-of-gift-steps .flow-of-gift-step:nth-child(2) .flow-of-gift-step-item[data-step="2"]::before {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    left: calc(100% + 12px);
    transform: translateY(-50%);
    width: 17px;
    height: 16px;
    background: url("../images/pc/flow-of-gift-step-arrow--small.svg") no-repeat right center/100% 100%;
  }
  .koto #flow-of-gift .flow-of-gift-steps .flow-of-gift-step:nth-child(2) .flow-of-gift-step-item[data-step="3"] {
    position: relative;
    grid-column: 3/4;
    grid-row: 2/3;
  }
  .koto #flow-of-gift .flow-of-gift-steps .flow-of-gift-step:nth-child(2) .flow-of-gift-step-item[data-step="3"]::before {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    left: calc(100% + 12px);
    transform: translateY(-50%);
    width: 17px;
    height: 16px;
    background: url("../images/pc/flow-of-gift-step-arrow--small.svg") no-repeat right center/100% 100%;
  }
  .koto #flow-of-gift .flow-of-gift-steps .flow-of-gift-step:last-child .flow-of-gift-step-item:first-child {
    position: relative;
    grid-column: 4/5;
    grid-row: 2/4;
  }
  .koto #flow-of-gift .flow-of-gift-steps .flow-of-gift-step:last-child .flow-of-gift-step-item:first-child::before {
    content: "";
    display: block;
    position: absolute;
    top: calc((100% - 48px) / 2);
    left: calc(100% + 12px);
    transform: translateY(-50%);
    width: 17px;
    height: 16px;
    background: url("../images/pc/flow-of-gift-step-arrow--small.svg") no-repeat right center/100% 100%;
  }
  .koto #flow-of-gift .flow-of-gift-steps .flow-of-gift-step:last-child .flow-of-gift-step-item:first-child dt {
    padding: 0 20px;
  }
  .koto #flow-of-gift .flow-of-gift-steps .flow-of-gift-step:last-child .flow-of-gift-step-item:nth-child(2) {
    grid-column: 5/6;
    grid-row: 2/4;
  }
  .koto #flow-of-gift .flow-of-gift-service-note {
    flex-direction: row;
    width: 1100px;
    padding: 0;
    margin: 0 auto;
  }
  .koto #flow-of-gift .flow-of-gift-service-note .flow-of-gift-service-note-title {
    width: 349px;
    height: 200px;
    background: url("../images/pc/flow-of-gift-service-note-title-bg.webp") no-repeat center/cover;
    text-align: left;
    padding-bottom: 63px;
    padding-left: 73px;
    margin: 0;
  }
  .koto #flow-of-gift .flow-of-gift-service-note .flow-of-gift-service-note-title::before {
    background: url("../images/pc/flow-of-gift-service-note-before.webp") no-repeat center/contain;
  }
  .koto #flow-of-gift .flow-of-gift-service-note .flow-of-gift-service-note-title::after {
    background: url("../images/pc/flow-of-gift-service-note-after.webp") no-repeat center bottom/contain;
  }
  .koto #flow-of-gift .flow-of-gift-service-note .flow-of-gift-service-note-item + .flow-of-gift-service-note-item {
    border-left: 1px solid #e4d1ac;
  }
  .koto #flow-of-gift .flow-of-gift-service-note .flow-of-gift-service-note-item a {
    flex-direction: column;
    border-top: none;
    padding-left: 0;
  }
  .koto #flow-of-gift .flow-of-gift-service-note .flow-of-gift-service-note-item a picture {
    width: 100%;
    aspect-ratio: 83/46;
  }
  .koto #flow-of-gift .flow-of-gift-service-note .flow-of-gift-service-note-item a p {
    font-weight: 700;
    font-size: 16px;
    line-height: 130%;
    text-align: center;
    margin: auto;
  }
  .koto #gift-list-overview {
    width: 1100px;
    margin: 100px auto;
  }
  .koto #otherGift {
    background: url("../images//pc/oherGift-bk.webp") no-repeat center top/cover;
  }
  .koto #otherGift .otherGift-title {
    aspect-ratio: 96/13;
    background: url("../images/pc/otherGift-title.webp") no-repeat center top/cover;
  }
  .koto #otherGift .otherGift-wrap {
    max-width: 1284px;
    background: none;
    padding: 80px 0 100px;
    margin: auto;
    gap: 40px;
    overflow: hidden;
  }
  .koto #otherGift .otherGift-content {
    max-width: 100%;
    padding: 24px 12px;
    box-sizing: border-box;
  }
  .koto #otherGift .otherGift-content::before {
    content: "";
    display: block;
    width: calc(100% + 24px);
    height: 100%;
    position: absolute;
    top: 0;
    left: -12px;
    aspect-ratio: 1;
    -webkit-clip-path: polygon(50px 0px, calc(100% - 12px) 50px, calc(100% - 45px) 100%, 12px calc(100% - 45px));
            clip-path: polygon(50px 0px, calc(100% - 12px) 50px, calc(100% - 45px) 100%, 12px calc(100% - 45px));
  }
  .koto #otherGift .otherGift-content + .otherGift-content {
    margin: 30px auto 10px;
  }
  .koto #otherGift .otherGift-content-inner {
    padding: 46px 80px 70px;
  }
  .koto #otherGift .otherGift-content-title {
    display: flex;
    align-items: center;
    font-size: 30px;
    line-height: 1.4;
  }
  .koto #otherGift .otherGift-content-title img {
    position: initial;
    width: 58px;
    height: 58px;
    transform: none;
    margin: 0 20px 0 0;
  }
  .koto #otherGift .otherGift-content-title br {
    display: none;
  }
  .koto #otherGift .otherGift-content-title span {
    font-weight: bold;
  }
  .koto #otherGift .otherGift-list {
    display: flex;
    flex-wrap: wrap;
    margin: 40px 0;
    gap: 25px;
  }
  .koto #otherGift .otherGift-list-item {
    flex: 0 0 calc(25% - 19px);
  }
  .koto #otherGift .otherGift-image {
    position: relative;
    width: 100%;
    aspect-ratio: 1/1;
    border-radius: 6px;
    margin-bottom: 10px;
    overflow: hidden;
  }
  .koto #otherGift .otherGift-image img {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: auto;
    height: 100%;
    border-radius: none;
  }
  .koto #otherGift .otherGift-area {
    font-family: var(--font-japanese);
    font-size: 16px;
  }
  .koto #otherGift .otherGift-name {
    font-size: 18px;
  }
  .koto #otherGift .otherGift-price {
    font-size: 14px;
    font-weight: bold;
    margin-top: auto;
  }
  .koto #otherGift .otherGift-banner-wrap {
    flex-direction: row;
    max-width: 1100px;
    margin: 0 auto 80px;
    gap: 28px;
  }
  .koto #otherGift .otherGift-banner,
  .koto #otherGift .otherGift-content-banner {
    max-width: 840px;
    margin: auto;
  }
  .koto #otherGift .otherGift-banner img,
  .koto #otherGift .otherGift-content-banner img {
    width: 100%;
  }
  .koto #corporate-gift-section {
    background: url("../images/pc/corporate-gift-section-bg.webp") no-repeat center top/cover;
    padding: 80px 0 97px;
    margin-top: -100px;
  }
  .koto #corporate-gift-section .corporate-gift-title {
    width: 645px;
    height: 54px;
    margin: auto;
  }
  .koto #corporate-gift-section .corporate-gift-title h2 {
    font-size: 25px;
    line-height: 38px;
  }
  .koto #corporate-gift-section .corporate-gift-title h2 span {
    font-size: 34px;
  }
  .koto #corporate-gift-section .corporate-gift-title br {
    display: none;
  }
  .koto #corporate-gift-section .corporate-gift-intro {
    width: 1100px;
    height: 163px;
    background: url("../images/pc/corporate-gift-intro-bg.webp") no-repeat center/cover;
    border-radius: 12px;
    padding: 35px 0 0;
    margin: 0 auto 34px;
  }
  .koto #corporate-gift-section .corporate-gift-intro::before {
    width: 93px;
    height: 114px;
    background: url("../images/pc/corporate-gift-intro-before.webp") no-repeat center top/cover;
  }
  .koto #corporate-gift-section .corporate-gift-intro::after {
    bottom: -16px;
    width: 228px;
    height: 133px;
    background: url("../images/pc/corporate-gift-intro-after.webp") no-repeat center top/cover;
  }
  .koto #corporate-gift-section .corporate-gift-intro p {
    font-size: 25px;
    margin: 0;
  }
  .koto #corporate-gift-section .corporate-gift-intro p br {
    display: none;
  }
  .koto #corporate-gift-section .corporate-gift-intro h3 {
    font-size: 40px;
    margin: 0;
  }
  .koto #corporate-gift-section .corporate-gift-hashtags ul {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 621px;
    margin: 0 auto 33px;
    gap: 12px;
  }
  .koto #corporate-gift-section .corporate-gift-hashtags ul li {
    padding: 6px 16px;
    background: #ffffff;
    font-weight: 700;
    font-size: 18px;
    line-height: 27px;
    text-align: center;
    color: var(--color-brown-medium);
    border-radius: 31px;
  }
  .koto #corporate-gift-section .corporate-gift-items {
    flex-direction: row;
    width: 1100px;
    padding: 0;
    margin: 0 auto 46px;
    gap: 36px;
  }
  .koto #corporate-gift-section .corporate-gift-items .corporate-gift-item-inner {
    display: flex;
    flex-direction: column;
    gap: 16px;
  }
  .koto #corporate-gift-section .corporate-gift-items .corporate-gift-item {
    padding: 0;
    flex: 1;
    box-sizing: border-box;
  }
  .koto #corporate-gift-section .corporate-gift-items .corporate-gift-item a {
    flex-direction: row;
    align-items: flex-start;
    min-height: 273px;
    padding: 24px;
    box-sizing: border-box;
  }
  .koto #corporate-gift-section .corporate-gift-items .corporate-gift-item a .gift-image {
    flex: 0 0 200px;
  }
  .koto #corporate-gift-section .corporate-gift-banner {
    width: 830px;
    height: 120px;
    margin: 0 auto;
  }
  .koto #gift-concierge {
    background: url("../images/pc/gift-concierge-bk.webp") no-repeat center top/cover;
    padding: 120px 0 100px;
  }
  .koto #gift-concierge .gift-concierge-inner {
    max-width: 1100px;
    margin: auto;
  }
  .koto #gift-concierge .gift-concierge-title {
    margin-bottom: 50px;
    width: auto;
    height: auto;
    margin-left: auto;
    margin-right: auto;
  }
  .koto #gift-concierge .gift-concierge-title .gift-concierge-title-inner {
    display: flex;
    flex-direction: row;
    justify-content: center;
    gap: 17px;
  }
  .koto #gift-concierge .gift-concierge-title .concierge-icon img {
    width: 53px;
    height: 60px;
  }
  .koto #gift-concierge .gift-concierge-title picture img {
    width: auto;
    height: 62px;
  }
  .koto #gift-concierge .gift-concierge-title .concierge-title-text p {
    font-size: 20px;
    line-height: 1;
    text-align: center;
    margin-top: 25px;
  }
  .koto #gift-concierge .gift-concierge-title .concierge-title-text p br {
    display: none;
  }
  .koto #gift-concierge .gift-concierge-articles {
    display: flex;
    flex-direction: column;
    gap: 20px;
    margin-bottom: 60px;
  }
  .koto #gift-concierge .gift-concierge-articles .concierge-article {
    flex-direction: row;
    text-align: left;
    padding: 36px 60px 36px 68px;
    align-items: flex-start;
    gap: 42px;
    box-shadow: 0px 0px 9.6px 0px rgb(211, 192, 161);
    border-radius: 16px;
    min-width: 1100px;
    width: 100%;
    margin: 0 auto;
    position: relative;
    box-sizing: border-box;
  }
  .koto #gift-concierge .gift-concierge-articles .concierge-article .article-image {
    flex-shrink: 0;
    margin-bottom: 0;
  }
  .koto #gift-concierge .gift-concierge-articles .concierge-article .article-image img {
    width: 301px;
    height: 212px;
  }
  .koto #gift-concierge .gift-concierge-articles .concierge-article .article-content {
    flex: 1;
  }
  .koto #gift-concierge .gift-concierge-articles .concierge-article .article-content h3 {
    font-size: 24px;
    margin-bottom: 24px;
  }
  .koto #gift-concierge .gift-concierge-articles .concierge-article .article-content p {
    margin-bottom: 6px;
  }
  .koto #gift-concierge .gift-concierge-articles .concierge-article .article-link {
    position: absolute;
    bottom: 36px;
    right: 84px;
    padding-right: 25px;
  }
  .koto #gift-concierge .gift-concierge-articles .concierge-article .article-link::after {
    width: 8px;
    height: 16px;
    background: url("data:image/svg+xml,%3Csvg width='8' height='16' viewBox='0 0 8 16' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1L7 8L1 15' stroke='%23CD4141' stroke-width='2'/%3E%3C/svg%3E") no-repeat center;
  }
  .koto #gift-concierge .gift-concierge-articles .concierge-article .article-link::before {
    width: 151px;
  }
  .koto #gift-concierge .gift-concierge-btn .btn-more {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 690px;
    height: 100px;
    font-size: 24px;
    padding: 32px 33px;
    margin: auto;
  }
  .koto #gift-concierge .gift-concierge-btn .btn-more::after {
    right: 33px;
  }
  .koto #gift-concierge .gift-concierge-btn .btn-more br {
    display: none;
  }
  .koto #choju-gift {
    width: 825px;
    padding: 0;
    margin: 80px auto 0;
  }
  .koto #choju-gift .choju-gift-title {
    margin-bottom: 14px;
  }
  .koto #choju-gift .choju-gift-title h2 {
    font-size: 32px;
    line-height: 1em;
  }
  .koto #choju-gift .choju-gift-title h2 br {
    display: none;
  }
  .koto #choju-gift .choju-gift-title .choju-gift-decorations {
    max-width: calc(100% - 48px);
    height: 44px;
  }
  .koto #choju-gift .choju-gift-title .choju-gift-decorations .decoration-left,
  .koto #choju-gift .choju-gift-title .choju-gift-decorations .decoration-right {
    top: 0;
    width: 44px;
    height: 44px;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
  }
  .koto #choju-gift .choju-gift-title .choju-gift-decorations .decoration-left {
    background-image: url("../images/pc/decoration-left.webp");
  }
  .koto #choju-gift .choju-gift-title .choju-gift-decorations .decoration-right {
    background-image: url("../images/pc/decoration-right.webp");
  }
  .koto #choju-gift .choju-gift-banner {
    width: 700px;
    height: 334px;
    margin: 0 auto;
  }
  .koto #choju-gift .choju-gift-banner img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
  }
  .koto #atoraku-gift {
    width: 825px;
    padding: 0;
    margin: 80px auto 136px;
  }
  .koto #atoraku-gift .atoraku-gift-banner {
    width: 700px;
    height: 257px;
    margin: 0 auto;
  }
  .koto #atoraku-gift .atoraku-gift-bottom {
    background: url("../images/pc/atoraku-gift-bottom-bg.webp") no-repeat left bottom/100% auto;
    padding-bottom: 55px;
  }
  .koto #atoraku-gift .atoraku-gift-bottom p {
    width: 695px;
    font-weight: 700;
    font-size: 20px;
    line-height: 30px;
    text-align: center;
  }
  .koto #atoraku-gift .atoraku-gift-bottom p br:nth-child(n+2) {
    display: none;
  }
  .koto #faq::before {
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 613px;
    height: 132px;
    background: url("../images/pc/faq-title-bg.webp") no-repeat center bottom/cover;
  }
  .koto #faq .faq-title {
    width: 613px;
    max-width: 613px;
    height: 132px;
    font-size: 32px;
    line-height: 48px;
    letter-spacing: 0.03em;
    padding-top: 20px;
    margin-bottom: 60px;
  }
  .koto #faq .faq-title::before {
    top: -55px;
    left: 96px;
    transform: none;
    width: 84px;
    height: 86px;
    background: url("../images/pc/faq-title-before.webp") no-repeat center/contain;
  }
  .koto #faq .faq-title::after {
    content: "";
    top: 31px;
    right: 128px;
    width: 54px;
    height: 59px;
    background: url("../images/pc/faq-title-after.webp") no-repeat center/contain;
  }
  .koto #faq .faq-list {
    width: 1100px;
    margin: 0 auto;
    gap: 18px;
  }
}