@charset "UTF-8";
/* CSS Document */
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans&family=Noto+Sans+JP:wght@100;400;500;700&family=Noto+Serif+JP:wght@200..900&display=swap");

/* ========== Base ========== */
.c5-featureWrap {
  font-family: 'Noto Sans JP', sans-serif;
  overflow-x: hidden;
}

.c5-serif {
  font-family: "Noto Serif JP", serif;
}

a {
  margin: 0;
  padding: 0;
}

img {
  width: 100%;
}

.s5-returnToTop {
  margin: 0 !important;
}

.c5-only-sp,
.c5-only-inline-sp {
  display: none !important;
}

.c5-container {
  padding-top: 0 !important;
}

@media screen and (max-width:1050px) {
  .c5-only-pc {
    display: none !important;
  }

  .c5-only-sp {
    display: block !important;
  }

  .c5-only-inline-sp {
    display: inline !important;
  }
}

/* ========== Spacing utils ========== */
.c5-mgtop230 {
  margin-top: 230px !important;
}

.c5-mgtop190 {
  margin-top: 190px !important;
}

.c5-mgtop170 {
  margin-top: 170px !important;
}

.c5-mgtop155 {
  margin-top: 155px !important;
}

.c5-mgtop150 {
  margin-top: 150px !important;
}

.c5-mgtop140 {
  margin-top: 140px !important;
}

.c5-mgtop120 {
  margin-top: 120px !important;
}

.c5-mgtop110 {
  margin-top: 110px !important;
}

.c5-mgtop100 {
  margin-top: 100px !important;
}

.c5-mgtop95 {
  margin-top: 95px !important;
}

.c5-mgtop90 {
  margin-top: 90px !important;
}

.c5-mgtop80 {
  margin-top: 80px !important;
}

.c5-mgtop70 {
  margin-top: 70px !important;
}

.c5-mgtop65 {
  margin-top: 65px !important;
}

.c5-mgtop60 {
  margin-top: 60px !important;
}

.c5-mgtop50 {
  margin-top: 50px !important;
}

.c5-mgtop45 {
  margin-top: 45px !important;
}

.c5-mgtop40 {
  margin-top: 40px !important;
}

.c5-mgtop35 {
  margin-top: 35px !important;
}

.c5-mgtop30 {
  margin-top: 30px !important;
}

.c5-mgtop25 {
  margin-top: 25px !important;
}

.c5-mgtop20 {
  margin-top: 20px !important;
}

.c5-mgtop15 {
  margin-top: 15px !important;
}

.c5-mgtop10 {
  margin-top: 10px !important;
}

.c5-mgtop8 {
  margin-top: 8px !important;
}

.c5-mgtop5 {
  margin-top: 5px !important;
}

.c5-pull-up {
  display: inline-block;
  transform: translateY(-0.6em);
}

@media screen and (max-width:1050px) {
  .c5-pull-up {
    transform: translateY(0);
  }
}

/* ========== Main visual ========== */
.c5-cr-mainvisual {
  position: relative;
  overflow: hidden;
  margin: 0 auto;
  font-size: 0;
  width: 100%;
  height: 630px;
  background-image: url("../img/kv-bg_pc.jpg");
  background-position: center center;
  background-size: 2130px;
}

.c5-mainvisual-inner {
  max-width: 1075px;
  width: 90%;
  margin: 120px auto 50px;
  position: relative;
  padding: .1px;
}

.c5-mainvisual-logo {
  width: 36.6%;
  max-width: 393px;
  margin-right: auto;
}

@media screen and (max-width:1050px) {
  .c5-cr-mainvisual {
    background-image: url("../img/kv-bg_sp.jpg");
    height: 173.3vw;
    background-size: 100%;
  }

  .c5-mainvisual-inner {
    width: 95%;
    margin: 59vw auto 6.6vw;
  }

  .c5-mainvisual-logo {
    width: 90%;
    max-width: 90%;
    margin: 0 auto;
  }
}

.c5-menu-wrap {
  display: flex;
  justify-content: space-between;
  position: relative;
  margin-top: 45px;
}

.c5-menu-wrap li {
  max-width: 200px;
  width: 18.6%;
  background: linear-gradient(to right,
      rgba(195, 159, 95, 0.6),
      rgba(240, 223, 174, 0.6));
  border: 2px solid #000;
  border-radius: 9999px;
  text-align: center;
  font-size: 15px;
  font-weight: bold;
  line-height: 1.3;
  position: relative;
  transition: .3s;
  color: #000;
}

.c5-menu-wrap li a {
  display: block;
  height: 100%;
  width: calc(100% - 30px);
  padding: 15px;
}



.c5-menu-wrap li:hover {
  opacity: .8;
  color: #000;
}

.c5-menu-wrap li:hover a {
  opacity: .8;
  color: #000;
}

.c5-menu-wrap li::before {
  content: '';
  width: 20px;
  height: 20px;
  position: absolute;
  top: -9px;
  left: calc(50% - 10px);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
}

.c5-menu-wrap li:nth-child(1)::before {
  background-image: url("../img/menu-icon_01.svg");
}

.c5-menu-wrap li:nth-child(2)::before {
  background-image: url("../img/menu-icon_02.svg");
}

.c5-menu-wrap li:nth-child(3)::before {
  background-image: url("../img/menu-icon_03.svg");
}

.c5-menu-wrap li:nth-child(4)::before {
  background-image: url("../img/menu-icon_04.svg");
}

.c5-menu-wrap li:nth-child(5)::before {
  background-image: url("../img/menu-icon_05.svg");
}

.c5-menu-wrap li::after {
  content: '';
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 7px 0 7px 10px;
  border-color: transparent transparent transparent #333;
  position: absolute;
  top: 0;
  right: 9px;
  bottom: 0;
  margin: auto;
}

@media screen and (max-width:1050px) {
  .c5-menu-wrap {
    margin-top: 0;
    flex-wrap: wrap;
    justify-content: center;
  }

  .c5-menu-wrap li {
    max-width: 48.8%;
    width: 48.8%;
    border: .3vw solid #000;
    font-size: 3.11vw;
    margin-top: 4vw;
    margin-right: 1%;
  }

  .c5-menu-wrap li:nth-child(2n) {
    margin-right: 0;
  }

  .c5-menu-wrap li:last-child {
    max-width: 55%;
    width: 55%;
  }

  .c5-menu-wrap li a {
    padding: 2.6vw 0vw;
    margin: 0 auto;
  }

  .c5-menu-wrap li::before {
    top: -1.3vw;
    width: 3.3vw;
    height: 3.3vw;
  }

  .c5-menu-wrap li::after {
    border-width: 1.3vw 0 1.3vw 1.5vw;
    right: 2vw;
  }
}

/* ========== Containers & headings ========== */
.c5-readcurtain {
  width: 100%;
  position: relative;
}

.c5-readcurtain-l,
.c5-readcurtain-r {
  position: absolute;
  top: 0;
  width: 236px;
  z-index: 0;
}

.c5-readcurtain-l {
  left: 0;
}

.c5-readcurtain-r {
  right: 0;
  transform: scale(-1, 1);
}

.c5-readarea {
  background-image: url("../img/read-bg_pc.jpg");
  background-repeat: repeat-x;
  background-position: top center;
  background-size: 1890px;
  width: 90%;
  padding: .1px 5% 70px;
}

.c5-readarea-inner {
  max-width: 980px;
  margin: 70px auto;
  writing-mode: vertical-rl;
  display: flex;
  justify-content: center;
  position: relative;
  z-index: 10;
}

@media screen and (max-width:1050px) {

  .c5-readcurtain-l,
  .c5-readcurtain-r {
    display: none;
  }

  .c5-readarea {
    background-image: url("../img/read-bg_sp.jpg");
    background-repeat: no-repeat;
    background-size: 100%;
    padding: .1px 5% 11.5vw;
  }

  .c5-readarea-inner {
    margin: 10vw auto;
    writing-mode: horizontal-tb;
  }
}

.v-quote {
  width: 1em;
  /* 文字の大きさに合わせる */
  height: auto;
  vertical-align: middle;
  display: inline-block;
  /* 必要であればここで位置を微調整 */
  transform: translateX(-0.25em);
}

.c5-readtext-wrap {
  text-align: left;
  color: #fff;
}

.c5-readbigtitle {
  font-size: 34px;
  line-height: 1.5;
  font-weight: 400;
}

.c5-readtitle {
  font-size: 20px;
  line-height: 1.9;
  margin-right: 30px;
  font-weight: 400;
}

.c5-readmiddletitle {
  font-size: 25px;
  line-height: 1.9;
  margin-right: 30px;
  font-weight: 500;
}

.c5-lift-up,
.c5-lift-up2,
.c5-lift-up3 {
  font-weight: 400;
}

@media screen and (max-width:1050px) {
  .c5-readtext-wrap {
    text-align: center;
  }

  .c5-readbigtitle {
    font-size: 6vw;
    line-height: 1.7;
  }

  .c5-readtitle {
    font-size: 3.3vw;
    margin-right: 0;
    margin-top: 5.866vw;
  }

  .c5-readtitle-second {
    margin-top: 3vw;
  }

  .c5-readmiddletitle {
    font-size: 4.4vw;
    line-height: 1.55;
    margin-right: 0;
    margin-top: 0;
  }

  .c5-lift-up {
    transform: translateY(-.8em);
    display: block;
  }

  .c5-lift-up2 {
    transform: translateY(-1.6em);
    display: block;
  }

  .c5-lift-up3 {
    transform: translateY(-2.4em);
    display: block;
  }
}

.c5-popcorn-titlearea {
  display: flex;
  justify-content: space-between;
  max-width: 980px;
  margin: 100px auto 0;
  color: #fff;
  position: relative;
  z-index: 10;
}

.c5-popcorn-title,
.c5-popcorn-text {
  width: 34.6%;
}

.c5-popcorn-text {
  text-align: center;
}

.c5-popcorn-sub {
  font-size: 23px;
  line-height: 1.5;
  font-weight: 500;
}

.c5-popcorn-main {
  font-size: 46px;
  line-height: 1.3;
  font-weight: bold;
  margin-top: 15px;
}

@media screen and (max-width:1050px) {
  .c5-popcorn-titlearea {
    display: block;
    margin: 60vw auto 0;
  }

  .c5-popcorn-title,
  .c5-popcorn-text {
    width: 100%;
    text-align: center;
  }

  .c5-popcorn-sub {
    font-size: 4vw;
  }

  .c5-popcorn-main {
    font-size: 6vw;
    margin-top: 2vw;
  }
}

.c5-popcorn-logo {
  margin: 0 15px;
}

.c5-popcorn-ann {
  font-size: 13px;
  font-weight: 400;
  margin-top: 30px;
  line-height: 1.5;
}

.c5-popcorn-last-text {
  text-align: center;
  font-size: 45px;
  line-height: 1.5;
  font-weight: bold;
  margin-top: 145px;
  color: #d7be78;
  position: relative;
  z-index: 10;
}

.c5-popcorn-last-text-icon {
  height: 57px;
  width: 57px;
  vertical-align: -0.25em;
  margin: 0 5px;
}

@media screen and (max-width:1050px) {
  .c5-popcorn-logo {
    width: 47%;
    margin: 3vw auto 0;
  }

  .c5-popcorn-ann {
    font-size: 2.53vw;
    margin-top: 3vw;
  }

  .c5-popcorn-last-text {
    font-size: 7vw;
    margin-top: 6.7vw;
  }

  .c5-popcorn-last-text-icon {
    height: 7.6vw;
    width: 7.6vw;
    vertical-align: 0;
    margin: 0;
  }

  .c5-popcorn-lift-up {
    transform: translateY(-.28em);
    display: block;
  }
}

.c5-flavor-area {
  width: 100%;
  background-color: #000;
  background-image: url("../img/flavor-bg_pc.png");
  background-repeat: no-repeat;
  background-position: center bottom;
  background-size: 1550px;
  padding: .1px;
}

.c5-flavor-inner {
  width: 90%;
  max-width: 1000px;
  margin: 0 auto;
  padding: .1px 0 90px;
}

.c5-flavor-title {
  font-size: 25px;
  line-height: 1.72;
  color: #fff;
  font-weight: 500;
  text-align: center;
  margin-top: 60px;
}

@media screen and (max-width:1050px) {
  .c5-flavor-area {
    background-image: url("../img/flavor-bg_sp.png");
    background-size: 100%;
  }

  .c5-flavor-inner {
    padding: .1px 0 16.7vw;
  }

  .c5-flavor-title {
    font-size: 4.7vw;
    margin-top: 11.3vw;
  }
}

.c5-flavor-list-wrap {
  display: flex;
  justify-content: space-between;
  margin-top: 50px;
  width: 100%;
}

.c5-flavor-list-wrap li {
  width: 32%;
  background-color: rgba(215, 190, 120, .15);
  text-align: center;
  padding: .1px 0 25px;
}

.c5-flavor-list-wrap li:last-child {
  border: solid 5px #910d0f;
}

@media screen and (max-width:1050px) {
  .c5-flavor-list-wrap {
    display: block;
    margin: 6vw auto;
    width: 80%;
  }

  .c5-flavor-list-wrap li {
    width: 100%;
    padding: .1px 0 7vw;
    margin-top: 3.85vw;
  }

  .c5-flavor-list-wrap li:last-child {
    border: solid 1vw #910d0f;
  }
}

.c5-flavor-list-subtitle {
  font-size: 16px;
  line-height: 1.5;
  color: #d7be78;
  letter-spacing: 0.2em;
  margin-top: 20px;
}

.c5-flavor-list-subtitle span {
  font-size: 28px;
  vertical-align: -0.1em;
}

.c5-flavor-list-title {
  margin: 10px auto 0;
  width: 90%;
}

.c5-flavor-list-detail-wrap {
  margin: 10px auto 0;
  width: 78%;
}

.c5-flavor-list-text {
  font-size: 16px;
  line-height: 1.5;
  color: #fff;
  text-align: left;
}

.c5-flavor-list-img {
  margin-top: 10px;
}

.c5-flavor-list-icon {
  margin: 20px auto 0;
  width: 80%;
}

.c5-flavor-list-detail-text {
  font-size: 14px;
  line-height: 1.64;
  color: #d7be78;
  margin: 5px 0 0;
  text-align: left;
}

@media screen and (max-width:1050px) {
  .c5-flavor-list-subtitle {
    font-size: 3.59vw;
    margin-top: 4vw;
  }

  .c5-flavor-list-subtitle span {
    font-size: 6.3vw;
  }

  .c5-flavor-list-title {
    margin: 2vw auto 0;
  }

  .c5-flavor-list-detail-wrap {
    margin: 2.66vw auto 0;
  }

  .c5-flavor-list-text {
    font-size: 3.6vw;
  }

  .c5-flavor-list-img {
    margin-top: 1vw;
  }

  .c5-flavor-list-icon {
    margin: 3vw auto 0;
  }

  .c5-flavor-list-detail-text {
    font-size: 3.2vw;
    margin: 1vw 0 0;
  }
}

.c5-flavor-list-detail-text span {
  font-weight: 900;
}

.c5-flavor-btn {
  margin: 80px auto 0;
  text-align: center;
  padding: .1px;
}

.c5-flavor-btn a {
  border: 1px solid #d7be78;
  color: #d7be78;
  border-radius: 9999px;
  font-size: 16px;
  line-height: 1.3;
  padding: 20px 40px;
  position: relative;
}

.c5-flavor-btn a span {
  font-size: 20px;
  font-weight: bold;
  vertical-align: -0.05em;
}

.c5-flavor-btn a::before {
  content: '';
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 8px 0 8px 10px;
  border-color: transparent transparent transparent #d7be78;
  position: absolute;
  top: 0;
  right: 15px;
  bottom: 0;
  margin: auto;
}

@media screen and (max-width:1050px) {
  .c5-flavor-btn {
    margin: 10.6vw auto 0;
  }

  .c5-flavor-btn a {
    font-size: 3.6vw;
    padding: 4vw 0;
    display: block;
  }

  .c5-flavor-btn a span {
    font-size: 4.66vw;
  }

  .c5-flavor-btn a::before {
    border-width: 2vw 0 2vw 2.5vw;
    right: 3vw;
  }
}

.c5-report-area {
  width: 100%;
  padding: .1px;
  background-image:
    url("../img/report-bg_pc.png"),
    /* 1枚目：左上（通常） */
    url("../img/report-bg-flipped_pc.png"),
    /* 2枚目：右下（反転版） */
    linear-gradient(to right, #462800 15%, #7e5306 50%, #462800 85%);
  /* 3枚目：背景グラデ */

  /* それぞれの設定をカンマ区切りで指定（3つ目はグラデなので自動で全面に広がります） */
  background-repeat: no-repeat, no-repeat, repeat-x;
  background-position: top left, bottom right, center center;
  background-size: 250px, 250px, 2200px 100%;
  text-align: center;
  background-blend-mode: multiply;
}

.c5-report-subtitle {
  font-size: 23px;
  line-height: 1.5;
  color: #ebd5aa;
  font-weight: bold;
  margin-top: 65px;
  position: relative;
  display: inline-block;
}

.c5-report-subtitle::before {
  content: "";
  height: 27px;
  width: 2px;
  background-color: #ebd5aa;
  display: block;
  position: absolute;
  bottom: 3px;
  left: -20px;
  transform: rotate(-30deg);
}

.c5-report-subtitle::after {
  content: "";
  height: 27px;
  width: 2px;
  background-color: #ebd5aa;
  display: block;
  position: absolute;
  bottom: 3px;
  right: -10px;
  transform: rotate(30deg);
}

.c5-report-title {
  font-size: 39px;
  color: #fff;
  font-weight: bold;
  margin-top: 20px;
}

.c5-report-text {
  margin: 30px auto 0;
  width: 90%;
  border-top: solid 1px #c1a474;
  max-width: 860px;
  font-size: 17px;
  font-weight: 500;
  line-height: 1.76;
  color: #fff;
  padding-top: 25px;
}

@media screen and (max-width:1050px) {
  .c5-report-area {
    background-size: 24vw, 26.7vw, 303vw 100%;
  }

  .c5-report-subtitle {
    font-size: 3.68vw;
    margin-top: 11.3vw;
  }

  .c5-report-subtitle::before {
    height: 5.3vw;
    width: .32vw;
    bottom: 0;
    left: -3vw;
  }

  .c5-report-subtitle::after {
    height: 5.3vw;
    width: .32vw;
    bottom: 0;
    right: -2vw;
  }

  .c5-report-title {
    font-size: 5.86vw;
    margin-top: 4vw;
    line-height: 1.5;
  }

  .c5-report-text {
    margin: 4vw auto 0;
    font-size: 4vw;
    line-height: 2;
    padding-top: 5vw;
    text-align: left;
  }
}

.c5-carousel-title {
  margin-top: 15px;
  font-size: 15px;
  line-height: 1.7;
  color: #fff;
  text-align: left;
}

/* カルーセルの外枠：左右カーテンより手前に出し、幅を保証 */
.c5-report-carousel {
  position: relative;
  z-index: 10;
  width: 90%;
  max-width: 1200px;
  margin: 40px auto 0;
  padding: 0;
}

@media screen and (max-width:1050px) {
  .c5-carousel-title {
    margin-top: 3vw;
    font-size: 3.3vw;
  }

  .c5-report-carousel {
    margin: 10vw 0 0 5%;
    width: 95%;
  }
}

.swiper-horizontal {
  touch-action: pan-y;
}

.swiperBtnWrap-sec {
  display: flex;
  align-items: center;
  width: 100%;
  margin-top: 30px;
}

.swiperBtn-line-l {
  width: calc(50% - 185px);
  height: 1px;
  background-color: #c1a474;
}

.swiperBtn-line-r {
  width: calc(50% - 95px);
  height: 1px;
  background-color: #c1a474;
}

.swiperBtn-main {
  width: 220px;
  margin: 0 30px;
  text-align: center;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

@media screen and (max-width:1050px) {
  .swiperBtnWrap-sec {
    margin-top: 6.6vw;
  }

  .swiperBtn-main {
    width: 64.4vw;
    margin: 0;
  }

  .swiperBtn-line-l {
    width: 2.66vw;
    height: 0;
  }

  .swiperBtn-line-r {
    width: 29vw;
    height: 0;
  }
}

.swiper-pagination {
  position: relative !important;
  display: inline-block !important;
  text-align: left;
  color: #fff;
  filter: drop-shadow(0px 0px 2px rgba(0, 0, 0, 0.6))
}

.swiper-pagination-fraction {
  bottom: auto !important;
  left: auto !important;
}

.swiperBtnWrap {
  display: flex;
  gap: 24px;
  align-items: center;
  z-index: 100;
}

.swiper-button-stop {
  width: 13px;
  position: relative;
  line-height: 0;
  cursor: pointer;
}

.swiper-button-stop img {
  width: 100%;
  height: auto
}

.swiper-button-stop.stopNow img.stopIcon {
  opacity: 0
}

.swiper-button-stop img.stopIcon {
  opacity: 1
}

.swiper-button-stop.stopNow img.startIcon {
  opacity: 1
}

.swiper-button-stop img.startIcon {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  opacity: 0;
  height: 100%;
  width: auto
}

.swiper-button-prev {
  position: relative !important;
  top: auto !important;
  bottom: auto !important;
  right: auto !important;
  left: auto !important;
  width: 40px;
  height: 40px;
  margin: 0 !important
}

.swiper-button-prev:after {
  content: "";
  background-size: contain;
  background-image: url("../img/slidePrevArrow.svg") !important;
  background-repeat: no-repeat !important;
  width: 100%;
  height: 100%
}

.swiper-button-next {
  position: relative !important;
  top: auto !important;
  bottom: auto !important;
  right: auto !important;
  left: auto !important;
  width: 40px;
  height: 40px;
  margin: 0 !important
}

@media screen and (max-width:1050px) {
  .swiper-button-stop {
    width: 5vw;
  }

  .swiper-button-prev,
  .swiper-button-next {
    width: 12vw;
    height: 12vw;
  }
}

.swiper-button-next:after {
  content: "";
  background-size: contain;
  background-image: url("../img/slideNextArrow.svg") !important;
  background-repeat: no-repeat !important;
  width: 100%;
  height: 100%
}

.c5-voice-wrap {
  width: 90%;
  max-width: 950px;
  margin: 60px auto 0;
  text-align: center;
}

.c5-voice-title {
  font-size: 30px;
  font-weight: bold;
  color: #ebd5aa;
  letter-spacing: 0.3em;
}

.c5-balloon-wrap {
  display: flex;
  justify-content: space-between;
}

.c5-balloon,
.c5-balloon-down {
  width: 31.6%;
}

.c5-balloon-down {
  margin-top: 40px;
}

@media screen and (max-width:1050px) {
  .c5-voice-wrap {
    margin: 15vw auto 0;
  }

  .c5-voice-title {
    font-size: 6.6vw;
  }

  .c5-balloon-wrap {
    display: block;
  }

  .c5-balloon,
  .c5-balloon-down {
    width: 100%;
    margin-top: 6vw;
  }

}

.c5-balloon-text {
  font-size: 15px;
  line-height: 1.7;
  color: #000;
  padding: 20px 30px;
  text-align: left;
  background-color: rgba(255, 255, 255, 0.4);
  border-radius: 20px;
  position: relative;
}

.c5-balloon-text::after {
  content: "";
  width: 33px;
  height: 18px;
  background-image: url(../img/balloon-acs.svg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
  position: absolute;
  bottom: -18px;
  right: 57px;
}

@media screen and (max-width:1050px) {
  .c5-balloon-text {
    font-size: 3.59vw;
    padding: 5.33vw 6.66vw;
    border-radius: 4vw;
  }

  .c5-balloon-text::after {
    width: 7.3vw;
    height: 4vw;
    bottom: -4vw;
    right: 24vw;
  }
}

.c5-voice-last-text {
  font-size: 25px;
  line-height: 1.64;
  color: #fff;
  margin: 55px 0 80px;
}

.c5-voice-last-text span {
  font-weight: bold;
}

@media screen and (max-width:1050px) {
  .c5-voice-last-text {
    font-size: 4.66vw;
    margin: 11.3vw 0 10vw;
    text-align: left;
  }
}

.c5-comment-area {
  background-color: #000;
  padding: .1px;
  width: 100%;
}

.c5-comment-area-inner {
  width: 90%;
  max-width: 800px;
  margin: 80px auto;
  padding: .1px;
}

.c5-comment-flex {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.c5-comment-flex-text {
  width: auto;
}

.c5-comment-flex-img {
  width: 50%;
}

@media screen and (max-width:1050px) {
  .c5-comment-area-inner {
    margin: 12vw auto;
    text-align: center;
  }

  .c5-comment-flex {
    display: block;
  }

  .c5-comment-flex-text,
  .c5-comment-flex-img {
    width: 100%;
  }

  .c5-comment-flex-img {
    margin-top: 7.3vw;
  }

}

.c5-comment-flex-subtitle {
  font-size: 17px;
  color: #d7be78;
  line-height: 1.5;
}

.c5-comment-flex-title01 {
  font-size: 19px;
  color: #fff;
  line-height: 1.5;
  margin-top: 25px;
}

.c5-comment-flex-title02 {
  font-size: 27px;
  color: #fff;
  line-height: 1.74;
  margin-top: 5px;
}

@media screen and (max-width:1050px) {
  .c5-comment-flex-subtitle {
    font-size: 4vw;
  }

  .c5-comment-flex-title01 {
    font-size: 4.26vw;
    margin-top: 6.6vw;
  }

  .c5-comment-flex-title02 {
    font-size: 6.13vw;
    margin-top: 2vw;
  }
}

.c5-comment-text-bg {
  background-color: rgba(255, 255, 255, 0.2);
  border-radius: 20px;
  margin-top: 15px;
  padding: .1px;
}

.c5-comment-text-inner {
  margin: 25px 27px;
}

.c5-comment-text-title {
  font-size: 18px;
  font-weight: 500;
  line-height: 1.5;
  color: #d7be78;
}

.c5-comment-text {
  font-size: 16px;
  color: #fff;
  line-height: 2;
  margin-top: 13px;
}

@media screen and (max-width:1050px) {
  .c5-comment-text-bg {
    border-radius: 5vw;
    margin-top: 6.66vw;
  }

  .c5-comment-text-inner {
    margin: 6.66vw;
    text-align: left;
  }

  .c5-comment-text-title {
    font-size: 4vw;
  }

  .c5-comment-text {
    font-size: 3.59vw;
    margin-top: 4vw;
  }
}

.c5-get-area {
  width: 100%;
  padding: .1px;
  background-image:
    url("../img/get-bg_pc.png"),
    url("../img/get-bg-flipped_pc.png"),
    linear-gradient(to right, #462800 15%, #7e5306 50%, #462800 85%);

  background-repeat: no-repeat, no-repeat, repeat-x;
  background-position: top left, bottom right, center center;
  background-size: 252px, 348px, 2200px 100%;
  text-align: center;
  background-blend-mode: multiply;
}

.c5-get-area-inner-bg {
  width: 100%;
  padding: .1px;
  background-image:
    url("../img/get-bg-btm_pc.png");
  background-repeat: no-repeat;
  background-position: bottom center;
  background-size: 1511px;
}

.c5-get-title-img {
  width: 300px;
  margin: 40px auto 0;
}

.c5-get-subtitle {
  font-size: 20px;
  line-height: 1.3;
  font-weight: 500;
  color: #fff;
  margin-top: 10px;
}

.c5-get-title {
  font-size: 30px;
  font-weight: bold;
  line-height: 1.3;
  color: #fff;
  margin-top: 5px;
  position: relative;
  display: inline-block;
}

.c5-get-title::before {
  content: "";
  position: absolute;
  width: 113px;
  height: 147px;
  background-image: url(../img/get-title-acs-l.png);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  bottom: -15px;
  left: -130px;
}

.c5-get-title::after {
  content: "";
  position: absolute;
  width: 113px;
  height: 147px;
  background-image: url(../img/get-title-acs-r.png);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  bottom: -15px;
  right: -130px;
}

@media screen and (max-width:1050px) {
  .c5-get-area {
    background-size: 24.93vw, 31.46vw, 303vw 100%;
    text-align: left;
  }

  .c5-get-area-inner-bg {
    background-image:
      url("../img/get-bg-btm_sp.png");
    background-size: 100%;
  }

  .c5-get-title-img {
    width: 51vw;
    margin: 6.666vw auto 0 14vw;
  }

  .c5-get-subtitle {
    font-size: 3.33vw;
    margin-top: 2.666vw;
    margin-left: 15.46vw;
    text-align: left;
  }

  .c5-get-title {
    font-size: 6.66vw;
    margin-top: 0;
    margin-left: 15.46vw;
    text-align: left;
  }

  .c5-get-title::before {
    display: none;
  }

  .c5-get-title::after {
    width: 27vw;
    height: 34vw;
    bottom: -1vw;
    right: -30vw;
  }
}

.c5-get-inner {
  width: 90%;
  max-width: 800px;
  margin: 0 auto;
  padding: .1px;
}

.c5-get-bg-white {
  background-color: #fff;
  margin-top: 30px;
  padding: .1px;
}

.c5-get-inner-inner {
  margin: 30px;
  padding: .1px;
}

.c5-get-icon {
  width: 80px;
}

.c5-get-inner-title {
  font-size: 21px;
  font-weight: bold;
  line-height: 1.6;
  text-align: left;
  margin-top: 20px;
  color: #956f29;
}

.c5-get-inner-title span {
  font-size: 14px;
}

.c5-get-inner-ann {
  font-size: 13px;
  font-weight: 400;
  line-height: 1.5;
  margin-top: 15px;
  text-align: left;
}

@media screen and (max-width:1050px) {
  .c5-get-bg-white {
    margin-top: 6.66vw;
  }

  .c5-get-inner-inner {
    margin: 6.4vw;
  }

  .c5-get-icon {
    width: 17.3vw;
  }

  .c5-get-inner-title {
    font-size: 4.66vw;
    margin-top: 3vw;
  }

  .c5-get-inner-title span {
    font-size: 3.33vw;
  }

  .c5-get-inner-ann {
    font-size: 2.53vw;
    margin-top: 2.6vw;
  }
}

.c5-get-store-title {
  font-size: 17px;
  font-weight: bold;
  line-height: 1.5;
  padding-left: 40px;
  position: relative;
  text-align: left;
  margin-top: 35px;
}

.c5-get-store-title::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 32px;
  height: 30px;
  background-image: url(../img/sony-store-icon.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}

.c5-get-store-flex {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}

.c5-get-store-li {
  width: 49%;
  margin-top: 17px;
  background-color: #2c75c7;
  padding: .1px;
}

.c5-get-store-li a {
  color: #fff;
  font-size: 14px;
  line-height: 1.5;
  text-align: left;
  padding: 12px 20px;
  display: block;
}

@media screen and (max-width:1050px) {
  .c5-get-store-title {
    font-size: 4vw;
    padding-left: 8.66vw;
    margin-top: 6vw;
  }

  .c5-get-store-title::before {
    bottom: 0;
    left: 0;
    width: 7.19vw;
    height: 6.66vw;
  }

  .c5-get-store-flex {
    display: block;
  }

  .c5-get-store-li {
    width: 100%;
    margin-top: 4vw;
  }

  .c5-get-store-li a {
    font-size: 3.3vw;
    padding: 2vw 4vw;
  }
}

.c5-get-icon-flex {
  display: flex;
  align-items: center;
}

.c5-get-icon-reserve {
  width: 86px;
  text-align: center;
  background-color: #d14615;
  font-size: 15px;
  font-weight: bold;
  color: #fff;
  padding: 6px;
  display: block;
  margin-left: 20px;
}

.c5-get-inner-text {
  font-size: 15px;
  line-height: 1.87;
  text-align: left;
  margin-top: 20px;
}

.c5-get-experience-flex {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-direction: row-reverse;
}

.c5-get-experience-text {
  width: 47%;
  text-align: left;
}

.c5-get-experience-img {
  width: 49%;
}

@media screen and (max-width:1050px) {
  .c5-get-icon-reserve {
    width: 19vw;
    font-size: 3.33vw;
    padding: 1.2vw;
    margin-left: 2.6vw;
  }

  .c5-get-inner-text {
    font-size: 3.3vw;
    margin-top: 5vw;
  }

  .c5-get-experience-flex {
    margin-top: 5.3vw;
    display: block;
  }

  .c5-get-experience-text,
  .c5-get-experience-img {
    width: 100%;
  }
}

.c5-get-experience-title {
  font-size: 17px;
  line-height: 1.5;
  font-weight: bold;
}

.c5-get-experience-ann {
  font-size: 13px;
  line-height: 1.6;
  margin-top: 10px;
}

.c5-get-experience-btn {
  background-color: #2c75c7;
  margin-top: 15px;
}

.c5-get-experience-btn a {
  font-size: 14px;
  line-height: 1.8;
  color: #fff;
  width: 100%;
  height: 40px;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
}

@media screen and (max-width:1050px) {
  .c5-get-experience-title {
    font-size: 4vw;
    margin-top: 6.6vw;
  }

  .c5-get-experience-ann {
    font-size: 2.53vw;
    margin-top: 1.3vw;
  }

  .c5-get-experience-btn a {
    font-size: 3.3vw;
    height: 9vw;
  }
}

.c5-get-regi-title,
.c5-get-regi-last-title {
  font-size: 20px;
  font-weight: bold;
  line-height: 2;
  color: #fff;
  position: relative;
  margin-top: 40px;
  display: inline-block;
}

.c5-get-regi-title {
  margin-top: 80px;
}

.c5-get-regi-title::before {
  content: "";
  height: 40px;
  width: 1px;
  display: block;
  background-color: #fff;
  position: absolute;
  bottom: -5px;
  left: -20px;
  transform: rotate(-25deg);
}

.c5-get-regi-title::after {
  content: "";
  height: 40px;
  width: 1px;
  display: block;
  background-color: #fff;
  position: absolute;
  bottom: -5px;
  right: -20px;
  transform: rotate(25deg);
}

@media screen and (max-width:1050px) {

  .c5-get-regi-title {
    font-size: 4.66vw;
    margin: 12vw auto 0;
    text-align: center;
    display: block;
    line-height: 1.8;
  }

  .c5-get-regi-last-title {
    font-size: 4.66vw;
    margin: 12vw auto 0 17vw;
    text-align: left;
    line-height: 1.8;
  }

  .c5-get-regi-title::before {
    height: 25vw;
    width: 0.26vw;
    bottom: 0;
    left: 5vw;
    transform: rotate(-10deg);
  }

  .c5-get-regi-title::after {
    height: 25vw;
    width: 0.26vw;
    bottom: 0;
    right: 5vw;
    transform: rotate(10deg);
  }
}

.c5-get-regi-new-btn {
  margin-top: 30px;
  background-color: #2c75c7;
  display: inline-block;
  filter: drop-shadow(4px 4px 4px rgba(0, 0, 0, 0.5));
  transition: .3s;
}

.c5-get-regi-new-btn:hover {
  filter: drop-shadow(0px 0px 0px rgba(0, 0, 0, 0.5));
}

.c5-get-regi-new-btn a {
  width: 600px;
  height: 65px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 15px;
  font-weight: bold;
  color: #fff;
}

.c5-fcl-btn {
  margin-top: 70px;
  margin-bottom: 70px;
  background-color: #000;
  display: inline-block;
  filter: drop-shadow(4px 4px 4px rgba(0, 0, 0, 0.5));
  transition: .3s;
}

.c5-fcl-btn:hover {
  filter: drop-shadow(0px 0px 0px rgba(0, 0, 0, 0.5));
}

.c5-fcl-btn a {
  width: 600px;
  height: 65px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 15px;
  font-weight: bold;
  color: #fff;
  line-height: 1.8;
}

@media screen and (max-width:1050px) {
  .c5-get-regi-new-btn {
    margin-top: 7.3vw;
    width: 100%;
  }

  .c5-get-regi-new-btn a {
    width: 100%;
    height: 20vw;
    font-size: 3.73vw;
  }

  .c5-fcl-btn {
    margin-top: 13.33vw;
    margin-bottom: 13.33vw;
    width: 100%;
  }

  .c5-fcl-btn a {
    width: 100%;
    height: 16vw;
    font-size: 3.33vw;
    display: inline-block;
    text-align: center;
    padding-top: 4vw;
  }
}

.c5-fcl-btn a span {
  font-weight: 400;
}

.c5-last-area {
  width: 90%;
  max-width: 990px;
  margin: 0 auto;
  text-align: center;
  padding: .1px;
}

.c5-last-title {
  font-size: 23px;
  font-weight: bold;
  line-height: 1.5;
  margin-top: 50px;
}

.c5-last-flex {
  display: flex;
  justify-content: space-between;
  margin-top: 35px;
}

.c5-last-flex-img {
  width: 28%;
}

.c5-last-flex-text {
  width: 68%;
  text-align: left;
}

.c5-last-flex-text-title {
  font-size: 17px;
  font-weight: bold;
  line-height: 1.5;
}

.c5-last-flex-text-nomal {
  font-size: 16px;
  line-height: 1.875;
  margin-top: 13px;
}

.c5-last-flex-text-ann {
  font-size: 13px;
  line-height: 1.5;
  margin-top: 10px;
}

@media screen and (max-width:1050px) {
  .c5-last-title {
    font-size: 4.66vw;
    margin-top: 9.33vw;
    text-align: left;
  }

  .c5-last-flex {
    display: block;
    margin-top: 4.66vw;
  }

  .c5-last-flex-img {
    width: 70%;
    margin: 0 auto;
  }

  .c5-last-flex-text {
    width: 100%;
  }

  .c5-last-flex-text-title {
    font-size: 3.86vw;
    margin-top: 6.6vw;
  }

  .c5-last-flex-text-nomal {
    font-size: 3.59vw;
    margin-top: 1.3vw;
  }

  .c5-last-flex-text-ann {
    font-size: 2.53vw;
    margin-top: 2vw;
  }
}


.c5-inner-width1060 {
  width: 90%;
  max-width: 1060px;
  margin: 0 auto;
}



/* ========== Footer CTA ========== */
.c5-footer-cont {
  width: 100%;
  background: #F5F5F5;
  overflow: hidden;
  position: relative;
  padding-bottom: 100px;
  font-family: 'Noto Sans JP', sans-serif;
}

@media screen and (max-width:640px) {
  .c5-footer-cont {
    margin-top: 13.333333333333334vw !important;
  }
}

.c5-detail-info-btn-wrap {
  text-align: center;
}

.c5-questionnaire-btn {
  font-size: 1.125rem;
  color: #fff;
  background: #000;
  padding: 20px 0;
  max-width: 630px;
  display: inline-block;
  width: 100%;
  line-height: 1.3;
}

.c5-questionnaire-btn:hover {
  color: #fff !important;
}

.c5-questionnaire_title {
  font-weight: 400;
  text-align: center;
  font-size: 2.1875rem;
  color: #444;
  line-height: 1.3;
}

.c5-questionnaire_read {
  color: #444;
  font-weight: 500;
  text-align: center;
  font-size: 1.125rem;
  line-height: 2;
}

@media screen and (max-width:640px) {
  .c5-questionnaire_title {
    font-size: 6vw !important;
    margin-top: 8vw !important;
  }

  .c5-questionnaire_read {
    font-size: 4vw !important;
    text-align: left;
    margin-top: 6vw !important;
  }
}

.c5-name {
  font-weight: 700;
  color: #73632f;
}

/* ========== Misc ========== */
sup {
  font-size: 13px;
}

@media screen and (max-width:640px) {
  sup {
    font-size: 2.666666666666667vw !important;
  }
}
