@charset "UTF-8";
/* Slider */
body{
  font-family: "微軟正黑體","Ryumin Light KL",serif !important;
}
.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  user-select: none;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent;
}

.slick-list {
  position: relative;
  overflow: hidden;
  display: block;
  margin: 0;
  padding: 0;
}

.slick-list:focus {
  outline: none;
}

.slick-list.dragging {
  cursor: pointer;
  cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list {
  transform: translate3d(0, 0, 0);
  line-height: 1;
}

.slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.slick-track:before, .slick-track:after {
  content: "";
  display: table;
}

.slick-track:after {
  clear: both;
}

.slick-loading .slick-track {
  visibility: hidden;
}

.slick-slide {
  float: left;
  height: 100%;
  min-height: 1px;
  line-height: 1;
  display: none;
}

[dir="rtl"] .slick-slide {
  float: right;
}

.slick-slide img {
  display: block;
}

.slick-slide.slick-loading img {
  display: none;
}

.slick-slide.dragging img {
  pointer-events: none;
}

.slick-initialized .slick-slide {
  display: block;
}

.slick-loading .slick-slide {
  visibility: hidden;
}

.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent;
}

.slick-arrow.slick-hidden {
  display: none;
}

body {
  background-color: #020202;
}

.global-header .logo-wrap {
  opacity: 1;
  visibility: visible;
}

.global-header .nav-wrap {
  color: #fff;
}

.global-header .nav-wrap .nav-item .icon-instagram {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2210.865%22%20height%3D%2210.865%22%20viewBox%3D%220%200%2010.865%2010.865%22%3E%20%3Cpath%20id%3D%22iconmonstr-instagram-11%22%20d%3D%22M5.433.979c1.451%2C0%2C1.623.005%2C2.2.032A2.041%2C2.041%2C0%2C0%2C1%2C9.855%2C3.238c.026.573.031.745.031%2C2.2s-.005%2C1.623-.031%2C2.2A2.041%2C2.041%2C0%2C0%2C1%2C7.628%2C9.855c-.573.026-.744.032-2.2.032s-1.623-.005-2.2-.032A2.042%2C2.042%2C0%2C0%2C1%2C1.01%2C7.628c-.026-.573-.032-.744-.032-2.2s.006-1.622.032-2.2A2.041%2C2.041%2C0%2C0%2C1%2C3.237%2C1.01c.573-.026.745-.031%2C2.2-.031Zm0-.979c-1.475%2C0-1.66.006-2.24.033a3%2C3%2C0%2C0%2C0-3.16%2C3.16C.006%2C3.773%2C0%2C3.957%2C0%2C5.433s.006%2C1.661.033%2C2.24a3%2C3%2C0%2C0%2C0%2C3.16%2C3.16c.58.026.765.033%2C2.24.033s1.661-.006%2C2.24-.033a3%2C3%2C0%2C0%2C0%2C3.16-3.16c.027-.579.033-.765.033-2.24s-.006-1.66-.033-2.24A3%2C3%2C0%2C0%2C0%2C7.673.033C7.093.006%2C6.908%2C0%2C5.433%2C0Zm0%2C2.643a2.79%2C2.79%2C0%2C1%2C0%2C2.79%2C2.79A2.79%2C2.79%2C0%2C0%2C0%2C5.433%2C2.643Zm0%2C4.6A1.811%2C1.811%2C0%2C1%2C1%2C7.243%2C5.433%2C1.811%2C1.811%2C0%2C0%2C1%2C5.433%2C7.243Zm2.9-5.362a.652.652%2C0%2C1%2C0%2C.651.652A.652.652%2C0%2C0%2C0%2C8.333%2C1.881Z%22%20transform%3D%22translate(0)%22%20fill%3D%22%23fff%22%2F%3E%3C%2Fsvg%3E");
}

.global-header:not(.fixed) .logo-wrap {
  opacity: 0;
  visibility: hidden;
}

.spmenu-opener .hamburger-item:nth-child(1), .spmenu-opener .hamburger-item:nth-child(2), .spmenu-opener .hamburger-item:nth-child(3) {
  background-color: #fff;
}

.page-header .ttl {
  color: #fff;
}

@media screen and (min-width: 751px) {
  .mainvisual {
    margin-bottom: 200px;
  }
}

@media screen and (max-width: 750px) {
  .mainvisual {
    margin-bottom: 17.9487179487vw;
  }
}

.feature {
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  position: relative;
}

@media screen and (min-width: 751px) {
  .feature {
    max-width: 1220px;
  }
}

@media screen and (min-width: 751px) {
  .feature .feature-header .header-wrap {
    display: flex;
    justify-content: space-between;
  }
}

@media screen and (max-width: 750px) {
  .feature .feature-header .header-wrap {
    text-align: center;
  }
}

.feature .feature-header .ttl {
  writing-mode: vertical-rl;
  display: inline-block;
  color: #fff;
  font-family: "Ryumin Light KL", serif;
}

@media screen and (min-width: 751px) {
  .feature .feature-header .ttl {
    font-size: 34px;
    letter-spacing: 0.4em;
    line-height: 132.352941176%;
  }
}

@media screen and (max-width: 750px) {
  .feature .feature-header .ttl {
    margin-bottom: 17.9487179487vw;
    display: inline-block;
    font-size: 6.1538461538vw;
    letter-spacing: 0.4em;
    line-height: 250%;
    text-align: left;
  }
}

.feature .feature-header .ttl > span {
  display: block;
}

@media screen and (min-width: 751px) {
  .feature .feature-header .ttl > span {
    margin-right: .5em;
  }
}

@media screen and (max-width: 750px) {
  .feature .feature-header .img {
    margin-bottom: 17.9487179487vw;
  }
}

@media screen and (max-width: 750px) {
  .feature .conts {
    margin-bottom: 25.641025641vw;
    padding: 0 8.9743589744vw;
  }
}

@media screen and (min-width: 751px) {
  .feature .conts {
    padding: 0 100px;
  }
}

@media screen and (min-width: 751px) {
  .feature .conts .conts-wrap {
    display: flex;
    align-items: center;
    justify-content: space-between;
  }
}

.feature .conts .txt p {
  color: #fff;
}

@media screen and (min-width: 751px) {
  .feature .conts .txt p {
    font-size: 16px;
    letter-spacing: 0.06em;
    line-height: 250%;
  }
}

@media screen and (max-width: 750px) {
  .feature .conts .txt p {
    margin-bottom: 12.8205128205vw;
    font-size: 4.1025641026vw;
    letter-spacing: 0.06em;
    line-height: 212.5%;
  }
}

.feature .conts .img .caption {
  color: #fff;
  font-family: "Ryumin Regular KL", serif;
}

@media screen and (max-width: 750px) {
  .feature .conts .img .caption {
    margin-top: 7.6923076923vw;
  }
}

@media screen and (min-width: 751px) {
  .feature .conts .img .caption {
    margin-top: 25px;
    font-size: 14px;
    letter-spacing: 0.01em;
    line-height: 185.714285714%;
  }
}

@media screen and (max-width: 750px) {
  .feature .conts .img .caption {
    font-size: 3.0769230769vw;
    letter-spacing: 0.01em;
    line-height: 216.666666667%;
  }
}

.feature .conts .img .caption strong {
  margin-bottom: 0.5em;
  display: block;
}

@media screen and (min-width: 751px) {
  .feature .conts .img .caption strong {
    font-size: 18px;
    letter-spacing: 0.08em;
    line-height: 144.444444444%;
  }
}

@media screen and (max-width: 750px) {
  .feature .conts .img .caption strong {
    font-size: 4.1025641026vw;
    letter-spacing: 0.08em;
    line-height: 162.5%;
  }
}

@media screen and (min-width: 751px) {
  .feature:nth-of-type(1) {
    margin-bottom: 135px;
  }
}

@media screen and (min-width: 751px) {
  .feature:nth-of-type(1) .feature-header {
    margin-bottom: 130px;
    margin-left: -72px;
    width: calc(100% + 72px);
  }
}

@media screen and (min-width: 751px) {
  .feature:nth-of-type(1) .feature-header .header-wrap {
    flex-direction: row-reverse;
  }
}

@media screen and (min-width: 751px) {
  .feature:nth-of-type(1) .feature-header .img {
    width: 1063px;
  }
}

@media screen and (min-width: 751px) {
  .feature:nth-of-type(1) .conts {
    padding: 0 80px;
  }
}

@media screen and (min-width: 751px) {
  .feature:nth-of-type(1) .conts .conts-wrap {
    flex-direction: row-reverse;
  }
}

@media screen and (max-width: 750px) {
  .feature:nth-of-type(1) .conts .img {
    margin: auto;
    width: 69.2307692308vw;
  }
}

@media screen and (min-width: 751px) {
  .feature:nth-of-type(1) .conts .img {
    width: 469px;
  }
}

@media screen and (min-width: 751px) {
  .feature:nth-of-type(2) {
    margin-bottom: 185px;
  }
}

@media screen and (min-width: 751px) {
  .feature:nth-of-type(2) .feature-header {
    margin-bottom: 100px;
    margin-left: 100px;
  }
}

@media screen and (min-width: 751px) {
  .feature:nth-of-type(2) .feature-header .header-wrap {
    flex-direction: row-reverse;
  }
}

@media screen and (min-width: 751px) {
  .feature:nth-of-type(2) .feature-header .ttl {
    font-size: 30px;
  }
}

@media screen and (min-width: 751px) {
  .feature:nth-of-type(2) .feature-header .img {
    width: 954px;
  }
}

@media screen and (min-width: 751px) {
  .feature:nth-of-type(2) .conts {
    padding: 0 100px;
  }
}

@media screen and (min-width: 751px) {
  .feature:nth-of-type(2) .conts .img {
    width: 467px;
  }
}

@media screen and (min-width: 751px) {
  .feature:nth-of-type(3) {
    margin-bottom: 210px;
  }
}

@media screen and (min-width: 751px) {
  .feature:nth-of-type(3) .feature-header {
    margin-bottom: 85px;
    margin-right: 100px;
  }
}

@media screen and (min-width: 751px) {
  .feature:nth-of-type(3) .feature-header .ttl {
    font-size: 30px;
  }
}

@media screen and (min-width: 751px) {
  .feature:nth-of-type(3) .feature-header .img {
    width: 900px;
  }
}

@media screen and (min-width: 751px) {
  .feature:nth-of-type(3) .conts {
    padding: 0 146px;
  }
}

@media screen and (min-width: 751px) {
  .feature:nth-of-type(3) .conts-wrap {
    display: block;
  }
}

@media screen and (min-width: 751px) {
  .feature:nth-of-type(3) .conts-wrap .txt {
    margin-bottom: 110px;
  }
}

@media screen and (min-width: 751px) {
  .products {
    margin-bottom: 140px;
  }
}

@media screen and (max-width: 750px) {
  .products {
    margin-bottom: 25.641025641vw;
  }
}

.products .wrap {
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  position: relative;
}

@media screen and (min-width: 751px) {
  .products .wrap {
    max-width: 1220px;
  }
}

@media screen and (max-width: 750px) {
  .products .wrap {
    display: flex;
    flex-direction: column;
  }
}

.products .section-header {
  font-family: "Ryumin Regular KL", serif;
  text-align: center;
}

@media screen and (min-width: 751px) {
  .products .section-header {
    position: absolute;
    top: 0;
    left: 0;
    margin-right: 45px;
    width: 100px;
    display: flex;
    align-items: flex-start;
    flex-direction: row-reverse;
  }
}

@media screen and (max-width: 750px) {
  .products .section-header {
    margin-bottom: 12.8205128205vw;
    margin-right: auto;
    order: 2;
    display: flex;
    justify-content: center;
    position: relative;
    left: 50%;
    transform: translateX(-50%);
  }
}

.products .section-header .cat {
  writing-mode: vertical-rl;
  width: 100%;
  color: #fff;
}

@media screen and (min-width: 751px) {
  .products .section-header .cat {
    display: inline-block;
    font-size: 14px;
    letter-spacing: 0.24em;
  }
}

@media screen and (max-width: 750px) {
  .products .section-header .cat {
    font-size: 3.0769230769vw;
    letter-spacing: 0.12em;
    line-height: 500%;
    text-align: left;
  }
}

@media screen and (min-width: 751px) {
  .products .section-header .ttl-wrap {
    padding: 0 15px 0 20px;
    display: flex;
    flex-direction: column;
    align-items: center;
  }
}

@media screen and (max-width: 750px) {
  .products .section-header .ttl-wrap {
    display: flex;
    flex-direction: row-reverse;
  }
}

.products .section-header .ttl {
  writing-mode: vertical-rl;
  color: #fff;
}

@media screen and (min-width: 751px) {
  .products .section-header .ttl {
    margin-bottom: .5em;
    font-size: 40px;
    letter-spacing: 0.4em;
            line-height: 1.3em;
  }
}

@media screen and (max-width: 750px) {
  .products .section-header .ttl {
    font-size: 8.2051282051vw;
    text-align: left;
    letter-spacing: 0.4em;
    line-height: 187.5%;
  }
}

.products .section-header .sub-ttl {
  writing-mode: vertical-rl;
  color: #fff;
}

@media screen and (min-width: 751px) {
  .products .section-header .sub-ttl {
    margin-bottom: .5em;
    font-size: 18px;
    letter-spacing: 0.12em;
  }
}

@media screen and (max-width: 750px) {
  .products .section-header .sub-ttl {
    font-size: 4.1025641026vw;
    letter-spacing: 0.12em;
    line-height: 375%;
    text-align: left;
  }
}

@media screen and (min-width: 751px) {
  .products .img {
    margin-left: 145px;
    margin-bottom: 50px;
  }
}

@media screen and (max-width: 750px) {
  .products .img {
    order: 1;
    margin-bottom: 15.3846153846vw;
  }
}

@media screen and (min-width: 751px) {
  .products .thumbnail {
    margin-top: 6px;
  }
}

@media screen and (max-width: 750px) {
  .products .thumbnail {
    margin: 2.5641025641vw 5.1282051282vw 0;
  }
}

.products .thumbnail .item {
  cursor: pointer;
}

@media screen and (min-width: 751px) {
  .products .thumbnail .slick-list {
    margin-left: -6px;
  }
}

@media screen and (max-width: 750px) {
  .products .thumbnail .slick-list {
    margin-left: -1.0256410256vw;
  }
}

.products .thumbnail .slick-track {
  margin: auto;
  transform: unset !important;
}

@media screen and (min-width: 751px) {
  .products .thumbnail .slick-slide {
    margin-left: 6px;
  }
}

@media screen and (max-width: 750px) {
  .products .thumbnail .slick-slide {
    margin-left: 1.0256410256vw;
  }
}

@media screen and (min-width: 751px) {
  .products .conts {
    margin-left: 145px;
    display: flex;
    flex-direction: row-reverse;
  }
}

@media screen and (max-width: 750px) {
  .products .conts {
    order: 3;
    padding: 0 8.9743589744vw;
  }
}

@media screen and (min-width: 751px) {
  .products .spec {
    margin-right: 100px;
    width: 400px;
  }
}

@media screen and (max-width: 750px) {
  .products .spec {
    margin-bottom: 15.3846153846vw;
  }
}

@media screen and (min-width: 751px) {
  .products .spec .detail {
    margin-bottom: 20px;
  }
}

@media screen and (max-width: 750px) {
  .products .spec .detail {
    margin-bottom: 10.2564102564vw;
  }
}

.products .spec .detail li {
  position: relative;
  padding-left: 1.5em;
  color: #fff;
}

@media screen and (min-width: 751px) {
  .products .spec .detail li {
    font-size: 14px;
    letter-spacing: 0.06em;
    line-height: 171.428571429%;
  }
}

@media screen and (max-width: 750px) {
  .products .spec .detail li {
    font-size: 3.5897435897vw;
    letter-spacing: 0.06em;
    line-height: 200%;
  }
}

.products .spec .detail li::before {
  position: absolute;
  left: 0;
  content: "○";
  width: 1em;
}

.products .spec .notes li {
  position: relative;
  padding-left: 1em;
  color: #fff;
}

@media screen and (min-width: 751px) {
  .products .spec .notes li {
    font-size: 11px;
    line-height: 163.636363636%;
  }
}

@media screen and (max-width: 750px) {
  .products .spec .notes li {
    font-size: 2.8205128205vw;
    line-height: 163.636363636%;
  }
}

.products .spec .notes li::before {
  position: absolute;
  left: 0;
  content: "＊";
  width: 1em;
}

@media screen and (min-width: 751px) {
  .products .spec .taste {
    margin-bottom: 20px;
  }
}

@media screen and (max-width: 750px) {
  .products .spec .taste {
    margin-bottom: 5.1282051282vw;
  }
}

.products .spec .taste .ttl {
  margin-bottom: 5px;
  color: #fff;
  border-bottom: 1px solid #fff;
}

@media screen and (min-width: 751px) {
  .products .spec .taste .ttl {
    font-size: 12px;
    letter-spacing: 0.12em;
    line-height: 333.333333333%;
  }
}

@media screen and (max-width: 750px) {
  .products .spec .taste .ttl {
    font-size: 3.0769230769vw;
    letter-spacing: 0.12em;
    line-height: 333.333333333%;
  }
}

.products .spec .taste .rate {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.products .spec .taste .rate p {
  width: 5em;
  font-family: "Ryumin Regular KL", serif;
  color: #fff;
  text-align: center;
}

@media screen and (min-width: 751px) {
  .products .spec .taste .rate p {
    font-size: 12px;
    letter-spacing: 0.1em;
    line-height: 333.333333333%;
  }
}

@media screen and (max-width: 750px) {
  .products .spec .taste .rate p {
    font-size: 3.0769230769vw;
    letter-spacing: 0.1em;
    line-height: 333.333333333%;
  }
}

.products .spec .taste .rate .rate-table {
  flex: 1 1 0;
  display: table;
  width: 100%;
}

@media screen and (min-width: 751px) {
  .products .spec .taste .rate .rate-table {
    margin: 0 10px;
  }
}

@media screen and (max-width: 750px) {
  .products .spec .taste .rate .rate-table {
    margin: 0 2.5641025641vw;
  }
}

.products .spec .taste .rate .rate-table > span {
  display: table-cell;
  border: 1px solid #fff;
}

@media screen and (min-width: 751px) {
  .products .spec .taste .rate .rate-table > span {
    height: 15px;
  }
}

@media screen and (max-width: 750px) {
  .products .spec .taste .rate .rate-table > span {
    height: 3.8461538462vw;
  }
}

.products .spec .taste .rate .rate-table > span.current {
  background-color: #fff;
}

@media screen and (min-width: 751px) {
  .products .txt {
    flex: 1 1 0;
  }
}

@media screen and (max-width: 750px) {
  .products .txt {
    margin-bottom: 10.2564102564vw;
  }
}

.products .txt .desc {
  color: #fff;
}

@media screen and (min-width: 751px) {
  .products .txt .desc {
    margin-bottom: 60px;
    font-size: 16px;
    letter-spacing: 0.06em;
    line-height: 250%;
  }
}

@media screen and (max-width: 750px) {
  .products .txt .desc {
    font-size: 3.5897435897vw;
    letter-spacing: 0.06em;
    line-height: 242.857142857%;
  }
}

@media screen and (max-width: 750px) {
  .products .c-button-more {
    text-align: center;
  }
}

@media screen and (min-width: 751px) {
  .products .c-button-more:not(:last-child) {
    margin-bottom: 20px;
  }
}

@media screen and (max-width: 750px) {
  .products .c-button-more:not(:last-child) {
    margin-bottom: 5.1282051282vw;
  }
}

@media screen and (min-width: 751px) {
  .products .c-button-more > a {
    width: 300px;
  }
}

@media screen and (max-width: 750px) {
  .products .c-button-more > a {
    width: 71.7948717949vw;
  }
}

.ingredients {
  color: #fff;
}

@media screen and (min-width: 751px) {
  .ingredients {
    padding: 40px 0 140px;
  }
}

@media screen and (max-width: 750px) {
  .ingredients {
    padding: 5.1282051282vw 0 25.641025641vw;
  }
}

@media screen and (min-width: 751px) {
  .ingredients .wrap {
    margin: auto;
    max-width: 840px;
  }
}

@media screen and (max-width: 750px) {
  .ingredients .wrap {
    padding: 0 5.1282051282vw;
  }
}

@media screen and (max-width: 750px) {
  .ingredients .ingredients-header {
    padding: 0 3.8461538462vw;
  }
}

.ingredients .ingredients-header .ttl {
  margin-bottom: 3em;
  position: relative;
  text-align: center;
}

@media screen and (min-width: 751px) {
  .ingredients .ingredients-header .ttl {
    font-size: 24px;
    line-height: 108.333333333%;
  }
}

@media screen and (max-width: 750px) {
  .ingredients .ingredients-header .ttl {
    font-size: 5.1282051282vw;
    line-height: 130%;
  }
}

.ingredients .ingredients-header .ttl::after {
  position: absolute;
  bottom: -1.25em;
  left: 50%;
  content: "";
  display: block;
  height: 1px;
  background-color: #fff;
  transform: translateX(-50%);
}

@media screen and (min-width: 751px) {
  .ingredients .ingredients-header .ttl::after {
    width: 60px;
  }
}

@media screen and (max-width: 750px) {
  .ingredients .ingredients-header .ttl::after {
    width: 12.8205128205vw;
  }
}

.ingredients .ingredients-header .desc {
  margin-bottom: 3em;
}

@media screen and (min-width: 751px) {
  .ingredients .ingredients-header .desc {
    font-size: 14px;
    letter-spacing: 0.06em;
    line-height: 171.428571429%;
  }
}

@media screen and (max-width: 750px) {
  .ingredients .ingredients-header .desc {
    font-size: 3.5897435897vw;
    letter-spacing: 0.06em;
    line-height: 214.285714286%;
  }
}

.ingredients .conts {
  text-align: center;
  border: 1px solid #fff;
}

@media screen and (min-width: 751px) {
  .ingredients .conts {
    padding: 35px;
  }
}

@media screen and (max-width: 750px) {
  .ingredients .conts {
    padding: 7.6923076923vw 7.6923076923vw;
  }
}

.ingredients .ingredient-list {
  display: inline-block;
  text-align: left;
}

@media screen and (min-width: 751px) {
  .ingredients .ingredient-list li {
    display: flex;
  }
}

.ingredients .ingredient-list li:not(:last-of-type) {
  margin-bottom: 1em;
}

@media screen and (min-width: 751px) {
  .ingredients .ingredient-list li .name {
    width: 85px;
    font-size: 18px;
    letter-spacing: 0.06em;
    line-height: 177.777777778%;
  }
}

@media screen and (max-width: 750px) {
  .ingredients .ingredient-list li .name {
    font-size: 4.1025641026vw;
    letter-spacing: 0.06em;
    line-height: 200%;
  }
}

.ingredients .ingredient-list li .name::before {
  content: "・";
  font-family: "Ryumin Regular KL", serif;
}

@media screen and (min-width: 751px) {
  .ingredients .ingredient-list li .txt {
    font-size: 16px;
    letter-spacing: 0.06em;
    line-height: 175%;
  }
}

@media screen and (max-width: 750px) {
  .ingredients .ingredient-list li .txt {
    font-size: 3.5897435897vw;
    letter-spacing: 0.06em;
    line-height: 200%;
  }
}

.ingredients .ingredient-list li .notes {
  margin-top: 1em;
}

@media screen and (min-width: 751px) {
  .ingredients .ingredient-list li .notes {
    font-size: 11px;
  }
}

@media screen and (max-width: 750px) {
  .ingredients .ingredient-list li .notes {
    font-size: 3.0769230769vw;
  }
}

@media screen and (min-width: 751px) {
  .hyakuchin-tokubetsu {
    padding: 0 50px 160px 0;
    margin: auto;
    max-width: 1020px;
  }
}

@media screen and (max-width: 750px) {
  .hyakuchin-tokubetsu {
    padding: 0 8.9743589744vw 25.641025641vw;
  }
}

@media screen and (min-width: 751px) {
  .hyakuchin-tokubetsu .wrap {
    padding-right: 45px;
    display: flex;
  }
}

.hyakuchin-tokubetsu .section-header {
  font-family: "Ryumin Regular KL", serif;
}

@media screen and (min-width: 751px) {
  .hyakuchin-tokubetsu .section-header {
    flex: 1 1 0;
  }
}

@media screen and (max-width: 750px) {
  .hyakuchin-tokubetsu .section-header {
    margin-bottom: 12.8205128205vw;
    text-align: center;
  }
}

.hyakuchin-tokubetsu .section-header .ttl {
  color: #fff;
  writing-mode: vertical-rl;
  display: inline-block;
  border-top: 1px solid #fff;
  border-bottom: 1px solid #fff;
}

@media screen and (min-width: 751px) {
  .hyakuchin-tokubetsu .section-header .ttl {
    margin-bottom: .5em;
    padding: 15px 5px 10px;
    font-size: 25px;
    letter-spacing: 0.3em;
  }
}

@media screen and (max-width: 750px) {
  .hyakuchin-tokubetsu .section-header .ttl {
    padding: 15px 5px 5px;
    font-size: 6.4102564103vw;
    letter-spacing: 0.3em;
  }
}

.hyakuchin-tokubetsu .conts > .desc {
  margin-bottom: 1em;
  color: #fff;
}

@media screen and (min-width: 751px) {
  .hyakuchin-tokubetsu .conts > .desc {
    font-size: 18px;
    letter-spacing: 0.06em;
    line-height: 222.222222222%;
  }
}

@media screen and (max-width: 750px) {
  .hyakuchin-tokubetsu .conts > .desc {
    font-size: 3.5897435897vw;
    letter-spacing: 0.06em;
    line-height: 214.285714286%;
  }
}

.hyakuchin-tokubetsu .hyakuchin-list {
  position: relative;
}

@media screen and (min-width: 751px) {
  .hyakuchin-tokubetsu .hyakuchin-list {
    width: 840px;
  }
}

.hyakuchin-tokubetsu .hyakuchin-list .item {
  font-family: "Ryumin Regular KL", serif;
  border: 1px solid #222;
  border-radius: 5px;
  background-color: #fff;
}

@media screen and (min-width: 751px) {
  .hyakuchin-tokubetsu .hyakuchin-list .item {
    margin-bottom: 50px;
  }
}

@media screen and (max-width: 750px) {
  .hyakuchin-tokubetsu .hyakuchin-list .item {
    margin-bottom: 10.2564102564vw;
  }
}

.hyakuchin-tokubetsu .hyakuchin-list .item a {
  display: block;
  transition: all 400ms cubic-bezier(0.25, 0.1, 0.25, 1);
}

@media screen and (min-width: 751px) {
  .hyakuchin-tokubetsu .hyakuchin-list .item a {
    padding: 30px;
  }
}

@media screen and (max-width: 750px) {
  .hyakuchin-tokubetsu .hyakuchin-list .item a {
    padding: 5.1282051282vw;
  }
}

.hyakuchin-tokubetsu .hyakuchin-list .item .item-ttl {
  margin-bottom: 0.5em;
  text-align: center;
}

@media screen and (min-width: 751px) {
  .hyakuchin-tokubetsu .hyakuchin-list .item .item-ttl {
    font-size: 14px;
    letter-spacing: 0.06em;
    line-height: 285.714285714%;
  }
}

@media screen and (max-width: 750px) {
  .hyakuchin-tokubetsu .hyakuchin-list .item .item-ttl {
    font-size: 3.0769230769vw;
    letter-spacing: 0.05em;
    line-height: 285.714285714%;
  }
}

@media screen and (min-width: 751px) {
  .hyakuchin-tokubetsu .hyakuchin-list .item .item-wrap {
    padding: 40px 0;
    display: flex;
  }
}

@media screen and (max-width: 750px) {
  .hyakuchin-tokubetsu .hyakuchin-list .item .item-wrap {
    padding: 0 5.1282051282vw;
  }
}

.hyakuchin-tokubetsu .hyakuchin-list .item .txt {
  flex: 1 1 0;
  text-align: center;
}

.hyakuchin-tokubetsu .hyakuchin-list .item .ttl {
  margin-bottom: 0.5em;
  color: #222;
}

@media screen and (min-width: 751px) {
  .hyakuchin-tokubetsu .hyakuchin-list .item .ttl {
    font-size: 24px;
    letter-spacing: 0.06em;
    line-height: 166.666666667%;
  }
}

@media screen and (max-width: 750px) {
  .hyakuchin-tokubetsu .hyakuchin-list .item .ttl {
    font-size: 4.6153846154vw;
    letter-spacing: 0.06em;
    line-height: 166.666666667%;
  }
}

.hyakuchin-tokubetsu .hyakuchin-list .item .caption {
  color: #222;
}

@media screen and (min-width: 751px) {
  .hyakuchin-tokubetsu .hyakuchin-list .item .caption {
    font-size: 16px;
    letter-spacing: 0.06em;
    line-height: 250%;
  }
}

@media screen and (max-width: 750px) {
  .hyakuchin-tokubetsu .hyakuchin-list .item .caption {
    font-size: 3.5897435897vw;
    letter-spacing: 0.06em;
    line-height: 187.5%;
  }
}

.stickem-container {
  position: relative;
}

.stickit {
  margin-left: 660px;
  position: fixed;
  top: 0;
}

.stickit-end {
  bottom: 40px;
  position: absolute;
  right: 0;
}
