@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@700&family=Noto+Serif+JP:wght@200..900&display=swap');

:root {
  --sans: "Noto Sans JP", sans-serif;
  --bggray:transparent;
  --bglyellow:#FFFEF5;
}
.tokyo_omiyage {
  font-family: "Noto Serif JP", serif;
  font-weight: bold;
}

html[data-browse-mode=P] .sp{display: none;}
html[data-browse-mode=S] .pc{display: none;}
.nobr {display: inline-block;}

.tosection_inner {
  width: min(100%, 1180px);
  margin-inline: auto;
  padding-inline: 30px;
}

.tosection_title {
  text-align: center;
  margin-bottom: 58px;
  position: relative;
}
.tosection_title::before {
  content: "";
  display: inline-block;
  width: 80px;
  height: 1px;
  background: #BCA543;
  position: absolute;
  right: 50%;
  bottom: 0;
  translate: 50% 22px;
}
.tosection_title_icon {
  height: 48px;
  margin-inline: auto;
  margin-bottom: 11px;
}
.tosection_title_icon svg {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
  fill: #D0C982;
}
.tosection_title_text {
  font-size: 40px;
}


section#tolead {
  padding-block: 47px 33px;
  background: var(--bggray);
}
section#tolead .tosection_inner {
  padding-bottom: 194px;
  background: url(/img/usr/freepage/gw-tokyo-omiyage/bg.png) no-repeat center bottom / contain;
}
.tolead_wrap {
  text-align: center;
  padding: 30px 14px 22px;
  background: url(data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22594%22%20height%3D%22306%22%20viewBox%3D%220%200%20594%20306%22%3E%20%3Cpath%20id%3D%22%E5%90%88%E4%BD%93_22%22%20data-name%3D%22%E5%90%88%E4%BD%93%2022%22%20d%3D%22M343.18%2C263.85A103.979%2C103.979%2C0%2C0%2C1%2C259%2C306c-41.372%2C0-77.049-23.567-93.43-57.56A104.564%2C104.564%2C0%2C0%2C1%2C103%2C269C46.115%2C269%2C0%2C224.229%2C0%2C169S46.115%2C69%2C103%2C69a107.138%2C107.138%2C0%2C0%2C1%2C11.936.664C130.732%2C36.245%2C165.79%2C13%2C206.5%2C13a102.914%2C102.914%2C0%2C0%2C1%2C57.794%2C17.543A101.933%2C101.933%2C0%2C0%2C1%2C337.5%2C0c36.063%2C0%2C67.689%2C18.332%2C85.42%2C45.869a104.4%2C104.4%2C0%2C0%2C1%2C25.886%2C8.54A100.508%2C100.508%2C0%2C0%2C1%2C493.5%2C44C549%2C44%2C594%2C88.771%2C594%2C144c0%2C46.879-32.414%2C86.222-76.162%2C97.047a99.532%2C99.532%2C0%2C0%2C1-174.658%2C22.8Z%22%20fill%3D%22%23fdfbef%22%2F%3E%3C%2Fsvg%3E) no-repeat left top / 153px 79px, url(data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22594%22%20height%3D%22306%22%20viewBox%3D%220%200%20594%20306%22%3E%20%3Cpath%20id%3D%22%E5%90%88%E4%BD%93_22%22%20data-name%3D%22%E5%90%88%E4%BD%93%2022%22%20d%3D%22M343.18%2C263.85A103.979%2C103.979%2C0%2C0%2C1%2C259%2C306c-41.372%2C0-77.049-23.567-93.43-57.56A104.564%2C104.564%2C0%2C0%2C1%2C103%2C269C46.115%2C269%2C0%2C224.229%2C0%2C169S46.115%2C69%2C103%2C69a107.138%2C107.138%2C0%2C0%2C1%2C11.936.664C130.732%2C36.245%2C165.79%2C13%2C206.5%2C13a102.914%2C102.914%2C0%2C0%2C1%2C57.794%2C17.543A101.933%2C101.933%2C0%2C0%2C1%2C337.5%2C0c36.063%2C0%2C67.689%2C18.332%2C85.42%2C45.869a104.4%2C104.4%2C0%2C0%2C1%2C25.886%2C8.54A100.508%2C100.508%2C0%2C0%2C1%2C493.5%2C44C549%2C44%2C594%2C88.771%2C594%2C144c0%2C46.879-32.414%2C86.222-76.162%2C97.047a99.532%2C99.532%2C0%2C0%2C1-174.658%2C22.8Z%22%20fill%3D%22%23fdfbef%22%2F%3E%3C%2Fsvg%3E) no-repeat right 75px bottom / 115px 59px;
}
.tolead_catch {
  font-size: 40px;
  margin-bottom: 42px;
}
.tolead_text {
  font-size: 24px;
  line-height: 2;
  font-weight: 500;
}

section#coupon {
  background: rgb(230, 205, 96);
  background: linear-gradient(0deg, rgba(230, 205, 96, 1) 50%, rgba(255, 255, 255, 1) 50%);
  font-family: var(--sans);
}
.coupon_inner {
  width: 1000px;
  height: 336px;
  margin-inline: auto;
  margin-top: 48px;
  background: url(/img/usr/freepage/gw-tokyo-omiyage/code.jpg) no-repeat center / contain;
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  align-content: center;
  justify-content: flex-end;
  align-items: center;
}
.coupon_content {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-content: center;
  justify-content: center;
  align-items: center;
  width: 612px;
  background: #49BED6;
  padding: 9px;
  gap: 38px;
}
.coupon_content .code {
  color: #fff;
  font-size: 19px;
  font-weight: bold;
}
.coupon_content .code::before {
  content: "クーポンコード";
  font-size: 12px;
  margin-right: 30px;
}
.coupon_content .button button {
  background: rgb(255, 245, 192);
  background: linear-gradient(120deg, rgba(255, 245, 192, 1) 0%, rgba(255, 238, 97, 1) 100%);
  border: none;
  width: 252px;
  padding: 0;
  border-radius: 20px;
  font-size: 12px;
  color: #49BED6;
  font-weight: bold;
  overflow: hidden;
  cursor: pointer;
}
.coupon_content .button button .copy-value {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-content: center;
  justify-content: center;
  align-items: center;
  gap: 8px;
  position: relative;
  width: 100%;
  height: 100%;
  padding: 10px;
  &.tooltip:after {
    content: "コピーしました！";
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 100%;
    background: #888;
    position: absolute;
    left: 0;
    top: 0;
    transition: .3s;
    color: #fff;
}
}
.coupon_note ul {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-content: center;
  justify-content: flex-start;
  align-items: flex-start;
  gap: 0 30px;
  width: 420px;
  padding-block: 5px 10px;
  font-size: 11px;
  color: #49BED6;
}

section#tonav {
  background: #E6CD60;
  padding-block: 67px 72px;
}
.tonav_catch {
  text-align: center;
  color: #2F2600;
  font-size: 40px;
  margin-bottom: 42px;
}
.tonav_content ul {
  display: flex;
  flex-flow: row wrap;
  gap: 10px;
}
.tonav_content li {
  flex: 1;
}
.tonav_content a {
  display: inline-block;
  width: 100%;
  height: 100%;
  background: #E6CD60;
  border: 5px solid #fff;
  padding-block: 20px 24px;
  text-align: center;
  position: relative;
  text-decoration: none;
}
.tonav_content a::after {
  content: "";
  display: inline-block;
  width: 12px;
  height: 12px;
  border-bottom: 2px solid #2A2204;
  border-right: 2px solid #2A2204;
  rotate: 45deg;
}
.tonav_icon {
  width: 40px;
  height: 40px;
  margin-inline: auto;
  margin-bottom: 9px;
}
.tonav_icon svg {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
  fill: #FFF9E0;
}
.tonav_text {
  color: #5F4D00;
  font-family: var(--sans);
  font-size: 20px;
}


section#toranking {
  background: var(--bggray);
  padding-block: 59px 80px;
}
.toranking_content .block-ranking-r {
  position: relative;
}
.toranking_content .block-ranking-r--items {
  margin-bottom: 48px;
}
.toranking_content dd.block-ranking-r--goods-description {
  position: relative;
  display: inline-block;
  height: auto;
  opacity: 1;
  padding: 0;
  background: none;
  pointer-events: auto;
}
.toranking_content .block-ranking-lightningrecommend .block-ranking-r--goods:hover .block-ranking-r--goods-description {
  animation: none;
}
.toranking_content .block-ranking-lightningrecommend .block-ranking-r--goods-image .block-ranking-r--rank {
  font-style: normal;
  font-size: 40px;
  left: 14px;
  top: 4px;
}
.toranking_content .block-ranking-r--goods-description {
  font-family: var(--sans);
}
.toranking_content .revico-star-simple-wrapper {
  margin-bottom: 12px;
}
.toranking_content .block-ranking-lightningrecommend .revico-star-block {
  justify-content: flex-start;
  align-items: flex-end;
}
.toranking_content .block-ranking-lightningrecommend .revico-star .revico-star-block--rate {
  transform: none;
}
.toranking_content .block-ranking-lightningrecommend .revico-star-block--total {
  font-weight: bold;
  margin: 0;
  color: #333;
}
.toranking_content .block-ranking-lightningrecommend .block-ranking-r--goods-name {
  text-align: left;
}
.toranking_content .block-ranking-r--goods-name a {
  color: #000;
  font-size: 16px;
  text-align: left;
  display: inline-block;
}
.toranking_content .block-ranking-r--goods-comment {
  display: none;
}
.block-ranking-lightningrecommend .block-ranking-r--price {
  color: #000;
  text-align: left;
  margin-top: 10px;
  font-weight: bold;
}
.toranking_content .swiper-pagination {
  position: relative;
  inset: initial;
  display: flex;
  flex-flow: row wrap;
  margin-inline: auto;
  background: #F8F0CD;
  border-radius: 2px;
  overflow: hidden;
  margin-top: 30px;
}
.toranking_content .swiper-pagination .swiper-pagination-bullet {
  margin: 0;
  width: 50%;
  height: 6px;
  border-radius: 0;
  opacity: 1;
  background: transparent;
}
.toranking_content .swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
  background: #C3AE5B;
  border-radius: 2px;
}
.toranking_content .swiper-button-next,
.toranking_content .swiper-button-prev {
  display: inline-block;
  width: 48px;
  height: 48px;
  background: #CBB558;
  border-radius: 300px;
  inset: initial;
  top: 216px;
  margin: 0;
}
.toranking_content .swiper-button-next {
  left: clamp(1150px, 100vw, 1192px);
  translate: -100% -50%;
}
.toranking_content .swiper-button-prev {
  right: clamp(1150px, 100vw, 1192px);
  translate: 100% -50%;
}
.toranking_content .swiper-button-next::after,
.toranking_content .swiper-button-prev::after {
  content: "";
  display: inline-block;
  width: 12px;
  height: 12px;
  position: absolute;
  right: 50%;
  bottom: 50%;
  border-right: 2px solid #fff;
  border-top: 2px solid #fff;
  translate: 25% 50%;
}
.toranking_content .swiper-button-next::after {
  translate: 25% 50%;
  rotate: 45deg;
}
.toranking_content .swiper-button-prev::after {
  translate: 75% 50%;
  rotate: -135deg;
}


section#torecommend {
  background: var(--bglyellow);
  padding-block: 56px 80px;
}
.torecommend_content {
  margin-top: 100px;
  font-family: var(--sans);
  display: flex;
  flex-flow: column wrap;
  gap: 108px;
}
.torecommend_content_wrap {
  background: #F8F0CD;
  padding: 68px 32px 40px;
  position: relative;
}
.torecommend_content_wrap_icon {
  display: flex;
  flex-flow: row wrap;
  align-content: center;
  justify-content: center;
  align-items: center;
  width: 100px;
  height: 88px;
  position: absolute;
  right: 50%;
  top: 0;
  translate: 50% -50%;
}
.torecommend_content_wrap_icon::before {
  content: "";
  display: inline-block;
  width: 100%;
  height: 0;
  border-bottom: 44px solid #C3AE5B;
  border-inline: calc(tan(30deg)* 44px) solid transparent;
  position: absolute;
  left: 0;
  top: 0;
}
.torecommend_content_wrap_icon::after {
  content: "";
  display: inline-block;
  width: 100%;
  height: 0;
  border-top: 44px solid #C3AE5B;
  border-inline: calc(tan(30deg)* 44px) solid transparent;
  position: absolute;
  left: 0;
  bottom: 0;
}
.torecommend_content_wrap_icon svg {
  width: 46px;
  height: 52px;
  object-fit: contain;
  object-position: center;
  fill: #fff;
  position: relative;
  z-index: 2;
}
.torecommend_content_wrap_title {
  text-align: center;
  font-size: 32px;
  margin-bottom: 25px;
}
.torecommend_content_wrap_item {
    margin-bottom: 48px;
}

html[data-browse-mode=P] {
.torecommend_content_wrap_item ul {
    display: flex;
    flex-flow: row wrap;
    align-items: stretch;
    gap: 11px;
}
.torecommend_content_wrap_item li {
    flex: 1;
    margin-top: 32px;
    height: auto;
}
}
.torecommend_content_wrap_item a {
    display: inline-block;
    width: 100%;
    height: 100%;
    background: #fff;
    padding: 44px 12px 20px;
    position: relative;
    text-decoration: none;
}
.torecommend_content_item_catch {
  display: flex;
  width: calc(100% - 24px);
  height: 64px;
  position: absolute;
  align-content: center;
  justify-content: center;
  align-items: center;
  right: 50%;
  top: 0;
  translate: 50% -50%;
}
.torecommend_content_item_catch::before {
  content: "";
  display: inline-block;
  width: 100%;
  height: 0;
  border-bottom: 32px solid #5AAAAA;
  border-inline: calc(tan(30deg)* 32px) solid transparent;
  position: absolute;
  left: 0;
  top: 0;
}
.torecommend_content_item_catch::after {
  content: "";
  display: inline-block;
  width: 100%;
  height: 0;
  border-top: 32px solid #5AAAAA;
  border-inline: calc(tan(30deg)* 32px) solid transparent;
  position: absolute;
  left: 0;
  bottom: 0;
}
.torecommend_content_item_catch p {
  text-align: center;
  color: #fff;
  font-size: 16px;
  line-height: 1.3;
  position: relative;
  z-index: 2;
}
.torecommend_content_item_img {
  margin-bottom: 16px;
}
.torecommend_content_item_score {
  font-size: 16px;
  line-height: 1;
  position: relative;
  color: #ccc;
  margin-bottom: 16px;
  display: inline-block;
}
.torecommend_content_item_score::before {
  content: "★★★★★";
  display: inline-block;
  width: calc(20% * var(--score));
  white-space: nowrap;
  overflow: hidden;
  color: #C7A276;
  position: absolute;
}
.torecommend_content_item_score[score="3"] {--score:3;}
.torecommend_content_item_score[score="3.1"] {--score:3.1;}
.torecommend_content_item_score[score="3.2"] {--score:3.2;}
.torecommend_content_item_score[score="3.3"] {--score:3.3;}
.torecommend_content_item_score[score="3.4"] {--score:3.4;}
.torecommend_content_item_score[score="3.5"] {--score:3.5;}
.torecommend_content_item_score[score="3.6"] {--score:3.6;}
.torecommend_content_item_score[score="3.7"] {--score:3.7;}
.torecommend_content_item_score[score="3.8"] {--score:3.8;}
.torecommend_content_item_score[score="3.9"] {--score:3.9;}
.torecommend_content_item_score[score="4.0"] {--score:4;}
.torecommend_content_item_score[score="4.1"] {--score:4.1;}
.torecommend_content_item_score[score="4.2"] {--score:4.2;}
.torecommend_content_item_score[score="4.3"] {--score:4.3;}
.torecommend_content_item_score[score="4.4"] {--score:4.4;}
.torecommend_content_item_score[score="4.5"] {--score:4.5;}
.torecommend_content_item_score[score="4.6"] {--score:4.6;}
.torecommend_content_item_score[score="4.7"] {--score:4.7;}
.torecommend_content_item_score[score="4.8"] {--score:4.8;}
.torecommend_content_item_score[score="4.9"] {--score:4.9;}
.torecommend_content_item_score[score="5.0"] {--score:5;}
.torecommend_content_item_score[score="0"] {display: none;}

/*.torecommend_content_item_score::after {
  content: attr(score);
  color: #333;
  position: absolute;
  right: 0;
  top: 50%;
  translate: calc(100% + 10px) -50%;
}*/
.torecommend_content_item_score .count {
  position: absolute;
  left: 100%;
  color: #000;
}
.torecommend_content_item_score .count::after {
  content: "）";
}
.torecommend_content_item_score .count::before {
  content: "（";
}
.torecommend_content_item_shop {
  color: #A0ADC0;
  font-size: 14px;
  border-bottom: 1px solid #C4C4C4;
  margin-bottom: 8px;
  padding-bottom: 3px;
} 
.torecommend_content_item_name {
  color: #000;
  font-size: 16px;
  line-height: 1.5;
  margin-bottom: 21px;
}
.torecommend_content_item_price {
  display: flex;
  flex-flow: row wrap;
  align-items: flex-end;
  color: #000;
  font-size: 18px;
  line-height: 1;
}
.torecommend_content_item_price::before {
  content: "（税込）";
  order: 999;
  font-size: 12px;
}
.torecommend_content_item_price::after {
  content: "円";
  font-size: 12px;
  margin-left: 4px;
}
.torecommend_content_wrap_btn a {
  display: flex;
  flex-flow: row wrap;
  align-content: center;
  justify-content: center;
  align-items: center;
  width: 376px;
  margin-inline: auto;
  padding-block: 20px;
  background: #E6CD60;
  gap: 34px;
  color: #5F4D00;
  font-size: 18px;
  line-height: 1;
  text-decoration: none;
  position: relative;
}
.torecommend_content_wrap_btn a::before {
  content: "";
  display: inline-block;
  width: 8px;
  height: 8px;
  border-top: 2px solid;
  border-right: 2px solid;
  rotate: 45deg;
  order: 999;
}
.torecommend_content_wrap_btn a::after {
  content: "";
  display: inline-block;
  width: calc(100% - 10px);
  height: calc(100% - 10px);
  border: 1px solid #fff;
  position: absolute;
  right: 50%;
  bottom: 50%;
  translate: 50% 50%;
}


section#toarea {
  background: var(--bggray);
  padding-block: 56px 80px;
}
.toarea_catch {
  color: #453803;
  text-align: center;
  font-family: var(--sans);
  font-size: 18px;
  font-weight: 500;
  margin-bottom: 40px;
}
.toarea_content {
  display: flex;
  flex-flow: row wrap;
  align-content: center;
  justify-content: space-between;
  align-items: stretch;
}
ul.subareas {
  display: flex;
  flex-flow: row wrap;
  align-content: center;
  justify-content: space-between;
  align-items: stretch;
  gap: 20px;
  width: min(100%, 560px);
}
ul.subareas li {
  width: calc(50% - 10px);
  height: calc(50% - 10px);
}
ul.subareas li a {
  display: inline-block;
  width: 100%;
  height: 100%;
  background: #F8F0CD;
  padding: 12px;
  text-decoration: none;
}
.toarea_content_img {
  height: 104px;
  overflow: hidden;
  margin-bottom: 10px;
}
.toarea_content_name {
  text-align: center;
  color: #453803;
  font-family: var(--sans);
  font-size: 16px;
  margin-bottom: 9px;
}
.toarea_content_text {
  text-align: center;
  color: #453803;
  font-family: var(--sans);
  font-size: 13px;
  font-weight: 500;
}
.mainarea {
  width: min(100%, 540px);
}
.mainarea a {
  display: inline-block;
  width: 100%;
  height: 100%;
  background: #f8f0cd;
  padding: 20px;
  text-decoration: none;
}
.mainarea_img {
  margin-bottom: 22px;
}
.mainarea_name {
  font-family: var(--sans);
  text-align: center;
  color: #453803;
  font-size: 28px;
  margin-bottom: 17px;
}
.mainarea_text {
  text-align: center;
  color: #453803;
  font-family: var(--sans);
  font-size: 15px;
  font-weight: 500;
}



section#totheme {
  background: var(--bglyellow);
  padding-block: 56px 80px;
}
.totheme_content ul {
  display: flex;
  flex-flow: row wrap;
  align-content: center;
  justify-content: center;
  align-items: center;
  gap: 20px;
}
.totheme_content li {
  width: 360px;
  height: 270px;
}
.totheme_content a {
  display: flex;
  width: 100%;
  height: 100%;
  background: url(/img/usr/freepage/gw-tokyo-omiyage/theme01.jpg) no-repeat center / cover #bbb;
  background-blend-mode: multiply;
  flex-direction: row;
  flex-wrap: wrap;
  align-content: center;
  justify-content: center;
  align-items: center;
  color: #fff;
  font-family: var(--sans);
  font-size: 32px;
  text-decoration: none;
  text-shadow: 0 0 6px #0009;
}
.totheme_content li:nth-of-type(2) a {
  background-image: url(/img/usr/freepage/gw-tokyo-omiyage/theme02.jpg);
}
.totheme_content li:nth-of-type(3) a {
  background-image: url(/img/usr/freepage/gw-tokyo-omiyage/theme03.jpg);
}
.totheme_content li:nth-of-type(4) a {
  background-image: url(/img/usr/freepage/gw-tokyo-omiyage/theme04.jpg);
}
.totheme_content li:nth-of-type(5) a {
  background-image: url(/img/usr/freepage/gw-tokyo-omiyage/theme05.jpg);
}
.totheme_content li:nth-of-type(6) a {
  background-image: url(/img/usr/freepage/gw-tokyo-omiyage/theme06.jpg);
}


section#toprice {
  background: var(--bggray);
  padding-block: 56px 80px;
}
.toprice_content ul {
  display: flex;
  gap: 12px;
  align-items: stretch;
}
.toprice_content li {
  flex: 1;
}
.toprice_content a {
  display: flex;
  flex-flow: row wrap;
  align-content: center;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  background: #E6CD60;
  padding-block: 22px;
  font-family: var(--sans);
  color: #5F4D00;
  font-size: 20px;
  text-decoration: none;
  position: relative;
}
.toprice_content a::before {
  content: "";
  display: inline-block;
  width: calc(100% - 10px);
  height: calc(100% - 10px);
  border: 1px solid #fff;
  position: absolute;
  right: 50%;
  bottom: 50%;
  translate: 50% 50%;
}


section#totarget {
  background: var(--bglyellow);
  padding-block: 56px 80px;
}
.totarget_catch {
  color: #453803;
  text-align: center;
  font-family: var(--sans);
  font-size: 18px;
  font-weight: 500;
  margin-bottom: 40px;
}
.totarget_content ul {
  display: flex;
  align-items: stretch;
  gap: 12px;
}
.totarget_content li {
  flex: 1;
}
.totarget_content a {
  display: flex;
  flex-flow: column wrap;
  width: 100%;
  height: 100%;
  background: #DBC996;
  text-decoration: none;
}
.totarget_content_img {
  height: 150px;
}
.totarget_content_img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}
.totarget_content_text {
  padding-block: 22px;
  color: #453803;
  font-family: var(--sans);
  text-align: center;
  font-size: 24px;
}

section#toallbtn {
  padding-block: 56px 120px;
}
a.allbtn {
  display: flex;
  flex-flow: row wrap;
  align-content: center;
  justify-content: center;
  align-items: center;
  width: min(80%, 480px);
  height: 100%;
  background: #E6CD60;
  margin-inline: auto;
  padding-block: 22px;
  font-family: var(--sans);
  color: #5F4D00;
  font-size: 20px;
  text-decoration: none;
  position: relative;
}
a.allbtn:before {
  content: "";
  display: inline-block;
  width: calc(100% - 10px);
  height: calc(100% - 10px);
  border: 1px solid #fff;
  position: absolute;
  right: 50%;
  bottom: 50%;
  translate: 50% 50%;
}

html[data-browse-mode=P] {
  .tokyo_omiyage a {
    transition: .3s;
    &:hover {
      opacity: .7;
    }
  }
}


html[data-browse-mode=S] {
  .tosection_inner {
    padding-inline: 20px;
}
.tosection_title {
  margin-bottom: 38px;
}
.tosection_title::before {
  width: 40px;
  translate: 50% 12px;
}
.tosection_title_icon {
  height: 32px;
  margin-bottom: 6px;
}
.tosection_title_text {
  font-size: 24px;
}


section#tolead {
  padding-block: 42px 36px;
}
section#tolead .tosection_inner {
  padding-bottom: 106px;
  background-image: url(/img/usr/freepage/gw-tokyo-omiyage/bg_sp.png);
  background-size: calc(100% - 40px) auto;
}
.tolead_wrap {
  padding: 17px 0 0 0;
  width: calc(100vw + 40px);
  margin-inline: -40px;
  background-size: 88px auto;
  background-position: left top, right bottom 30px;
}
.tolead_catch {
  font-size: 20px;
  margin-bottom: 22px;
}
.tolead_text {
  font-size: 14px;
}
.coupon_inner {
  width: 375px;
  height: 200px;
  background-image: url(/img/usr/freepage/gw-home-gourmet/code_sp.jpg);
  margin-top: 28px;
}
.coupon_content {
  width: 85%;
  gap: 20px;
  padding: 6px 0;
} 
.coupon_content .code {
  font-size: 14px;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-content: center;
  justify-content: center;
  align-items: center;
  gap: 10px;
}
.coupon_content .code::before {
  margin: 0;
}
.coupon_content .button {
  width: 40%;
}
.coupon_content .button button {
  width: 100%;
  border-radius: 10px;
}
.coupon_note ul {
font-size: 8px;
padding-block: 2px;
width: 75%;
margin-inline: auto;
}
section#tonav {
  padding-block: 26px 40px;
}
.tonav_catch {
  font-size: 24px;
  margin-bottom: 21px;
}
.tonav_content ul {
  justify-content: center;
  gap: 15px;
}
.tonav_content li {
  flex: initial;
  width: calc(50% - 7.5px);
}
.tonav_content a {
  padding-bottom: 14px;
}
.tonav_icon {
  width: 32px;
  height: 32px;
  margin-bottom: 6px;
}
section#toranking {
  padding-block: 40px 72px;
}
.toranking_content .swiper-pagination {
  display: none;
}
.toranking_content .block-ranking-r--items {
  margin-bottom: 0;
  overflow: visible;
}
.toranking_content .block-ranking-lightningrecommend .block-ranking-r--items li {
  width: calc(100% + 20px);
  flex-wrap: nowrap;
  overflow: auto;
  scrollbar-color: #C3AE5B #F8F0CD;
  scrollbar-width: thin;
  gap: 12px;
  padding-bottom: 20px;
}
.toranking_content .block-ranking-lightningrecommend .block-ranking-r--items li .block-ranking-r--goods {
  width: 160px;
}
.toranking_content .block-ranking-r--goods-name {
  margin-bottom: 20px;
}
.toranking_content .block-ranking-lightningrecommend .block-ranking-r--goods-description .block-ranking-r--price {
  font-size: 16px;
  font-weight: bold;
}


section#torecommend {
  padding-block: 32px 40px;
}
.torecommend_content {
  margin-top: 64px;
  gap: 58px;
}
.torecommend_content_wrap {
  width: 100%;
  padding: 36px 16px 32px;
}
.torecommend_content_wrap_icon {
  width: 60px;
  height: 52px;
}
.torecommend_content_wrap_icon::before, .torecommend_content_wrap_icon::after {
  border-block-width: 26px;
  border-inline-width: calc(tan(30deg)* 26px);
}
.torecommend_content_wrap_icon svg {
  width: 27px;
  height: 31px;
}
.torecommend_content_wrap_title {
  font-size: 20px;
  margin-bottom: 16px;
}
.torecommend_content_wrap_item {
  margin-bottom: 40px;
  padding-top: 20px;
}
.torecommend_content_wrap_item .swiper-slide {
  height: auto;
}
.torecommend_content_wrap_item a {
  padding: 37px 16px 24px;
}
.torecommend_content_item_catch {
  width: calc(100% - 32px);
  height: 40px;
}
.torecommend_content_item_catch::before, .torecommend_content_item_catch::after {
  border-block-width: 20px;
  border-inline-width: 16px;
}
.torecommend_content_item_catch p {
    font-size: 15px;
}
.torecommend_content_pagination {
  display: flex;
  flex-flow: row wrap;
  justify-content: center;
  align-items: stretch;
  margin-top: 24px;
  gap: 9px;
}
.torecommend_content_pagination .swiper-pagination-bullet {
  width: 40px;
  height: 2px;
  background: #E5DBB2;
  border-radius: 0;
  opacity: 1;
}
.torecommend_content_pagination .swiper-pagination-bullet-active {
  background: #E6CD60;
}
.torecommend_content_wrap_btn a {
  width: 100%;
  padding-block: 15px;
  font-size: 16px;
}
.torecommend_content_wrap_btn a::before {
  position: absolute;
  right: 40px;
  bottom: 50%;
  translate: 0% 50%;
}

section#toarea {
  padding-block: 32px 48px;
}
.toarea_catch {
  font-size: 14px;
  margin-bottom: 25px;
}
ul.subareas {
  gap: 15px;
  margin-bottom: 15px;
}
ul.subareas li {
  width: calc(50% - 7.5px);
  height: auto;
}
ul.subareas li a, .mainarea a {
  padding: 8px 8px 16px;
}
.toarea_content_img {
  height: auto;
}
.mainarea_img {
  margin-bottom: 10px;
}
.toarea_content_name, .mainarea_name {
  font-size: 12px;
  margin-bottom: 8px;
}
.toarea_content_text, .mainarea_text {
  font-size: 11px;
}


section#totheme {
  padding-block: 32px 48px;
}
.totheme_content ul {
  gap: 15px;
}
.totheme_content li {
  width: calc(50vw - 27.5px);
  height: calc(50vw - 27.5px);
}
.totheme_content a {
  font-size: 18px;
}

section#toprice {
  padding-block: 32px 48px;
}
.toprice_content ul {
  gap: 16px;
  flex-wrap: wrap;
}
.toprice_content li {
  flex: initial;
  width: calc(50% - 8px);
}
.toprice_content a {
  font-size: 14px;
}
section#totarget {
  padding-block: 40px 80px;
}
.totarget_catch {
  font-size: 14px;
  margin-bottom: 25px;
}
.totarget_content ul {
  gap: 16px;
  flex-wrap: wrap;
}
.totarget_content li {
  flex: initial;
  width: calc(50% - 8px);
}
.totarget_content_img {
  height: 90px;
}
.totarget_content_text {
  padding-block: 12px;
  font-size: 15px;
}
section#toallbtn {
  padding-block: 40px 80px;
}
a.allbtn {
  font-size: 14px;
}
}