html {
  font-size: 62.8%;
  line-height: 1.8;
  color: #3b322e;
  letter-spacing: 0.1em;
}

img {
  display: block;
  max-width: 100%;
}

a {
  text-decoration: none;
}

h1,
h2,
h3 {
  font-weight: normal;
}

ul,
li {
  list-style: none;
}

a:hover {
  transition: background .3s;
}

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

/*---------------------------
  共通パーツ
---------------------------*/
.is-sp {
  display: none;
}

.is-pc {
  display: block;
}

.is-pc-i {
  display: inline;
}

.mid-txt {
  font-size: 1.6rem;
}

.sm-txt {
  font-size: 1.4rem;
}

.w-1200 {
  max-width: 1200px;
  margin: 0 auto;
}

.italic {
  font-style: italic;
}

.annotation {
  font-size: 1.2rem;
  text-indent: 1em;
  padding-left: 1em;
}

.annotation::before {
  content: '※';
  margin-left: -2em;
}

.annotation+.annotation {
  margin-top: 0;
}

.color-red {
  color: #c20000;
}

.content09-inner {
  padding: 0 20px;
}

.txt-indent {
  font-size: 1.4rem;
  padding-left: 1em;
  text-indent: -1em;
}

.is-soldout {
  background-color: #808088 !important;
  pointer-events: none;
}

@media screen and (max-width: 756px) {
  .is-pc {
    display: none;
  }

  .is-pc-i {
    display: none;
  }

  .mid-txt {
    font-size: 1.2rem;
  }

  .sm-txt {
    font-size: 1rem;
  }

  .annotation {
    font-size: 1.1rem;
  }
}

_::-webkit-full-page-media,
_:future,
:root .main-contents {
  font-family:
    '游明朝',
    'Yu Mincho',
    YuMincho,
    'Hiragino Mincho Pro',
    serif;
}

.main-contents {
  font-family: "Noto Serif JP",
    '游明朝',
    'Yu Mincho',
    YuMincho,
    'Hiragino Mincho Pro',
    serif;
  width: 100%;
  /* min-width: 1280px; */
  overflow: hidden;
  background: url("../images/bg-gray.png");
}


.fixed-nav {
  display: block;
  left: auto;
  right: 0;
  position: fixed;
  top: 120px;
  width: 60px;
  z-index: 200;
}

.bg-ptn {
  background: url(../images/bg_ptn.png) repeat-y;
  background-size: 100%;
}

header {
  padding: 25px 40px;
  display: flex;
  align-items: center;
  font-size: 1.2rem;
}

.header-logo {
  width: 63px;
  height: auto;
  margin-right: 26px;
}

.mv {
  position: relative;
}

.mv-deco {
  position: absolute;
  width: 17%;
  height: auto;
}

.mv-deco.top {
  top: -35px;
  right: 40px;
}

.mv-catch {
  position: absolute;
  bottom: 34px;
  right: 0;
  letter-spacing: 0.2em;
}

.mv-catch span {
  font-size: 3.3rem;
  background: #fff;
  padding: 0 35px;
  margin-bottom: 10px;
  display: inline-block;
}

.mv-deco.bottom {
  bottom: -35px;
  left: 40px;
}

.mv-img {
  max-width: 100%;
  width: 86%;
  height: auto;
  display: block;
  margin: auto;
}

_::-webkit-full-page-media,
_:future,
:root .content {
  font-family:
    '游明朝',
    'Yu Mincho',
    YuMincho,
    'Hiragino Mincho Pro',
    serif;
}

.content {
  width: 100%;
  max-width: 1000px;
  margin: 0 auto;
  font-family: "Noto Serif JP",
    '游明朝',
    'Yu Mincho',
    YuMincho,
    'Hiragino Mincho Pro',
    serif;
}


/*---------------------------
  小見出し関連
---------------------------*/
.subttl span {
  line-height: normal;
}

.subttl.bgbrown span {
  background: url(../images/bg-ttlbrown.png);
  color: #fff;
}

.subttl.bgwhite span {
  background: #fff;
}

.subttl.bgblack span {
  background: #3b312f;
  color: #fff;
}

.subttl.middle span {
  font-size: 3.6rem;
  display: inline-block;
  padding: 0 5px;
  margin-bottom: 10px;
  line-height: normal;
}

.subttl.vertical span {
  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  padding: 15px 0;
}

.subttl.v-middle {
  display: flex;
  flex-direction: row-reverse;
}

.subttl.v-middle span {
  font-size: 4rem;
  padding: 10px 0;
  margin-left: 10px;
  line-height: normal;
  display: inline-block;
}

.subttl.large span {
  font-size: 5.5rem;
  display: inline-block;
  margin-bottom: 10px;
  padding: 0 5px;
}

.subttl.center {
  text-align: center;
}

/*---------------------------
  ライブ準備期間
---------------------------*/

.live-content {
  padding: 0 20px;
  margin-top: 75px;
  padding-bottom: 55px;
}

.live-txt {
  margin-top: 26px;
  font-size: 18px;
  line-height: 2.22;
  font-weight: bold;
}

.live-txt-center {
  text-align: center;
}

.live-about {
  /* padding-bottom: 135px; */
}

.mt15 {
  margin-top: 15px;
}

.live-announce-txt {
  font-size: 16px;
}

.live-point {
  max-width: 1002px;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  background-color: #f8f8f8;
  border-top: 2px solid #b19571;
  border-bottom: 2px solid #b19571;
  padding: 70px 0px;
}

.live-point-content {
  max-width: 904px;
  width: 100%;
  margin: 0 auto;
}

.live-point-content-txt {
  margin-top: 20px;
}

.content-flex {
  display: flex;
}

.flex-between {
  justify-content: space-between;
}

.point-img {
  width: 346px;
  object-fit: cover;
}

.point-content-txt {
  width: calc(100% - 346px);
  padding-right: 40px;
}

.announce {
  padding-left: 1em;
  text-indent: -1em;
}

.announce-txt {
  font-size: 16px;
}

/*---------------------------
  ライブ公開
---------------------------*/
.live-movie {
  /* max-width: 100%;
  width: 86%; */
  height: auto;
  display: block;
  margin: auto;
  width: 100%;
  max-width: 1100px;
  margin-left: auto;
  margin-right: auto;
  padding: 20px 30px 38px;
  background: url(../images/live_movie_bg.png) no-repeat center center;
  background-size: cover;
}

.movie-content {
  width: 100%;
  max-width: 708px;
  margin-left: auto;
  margin-right: auto;
}

.movie-content img {
  width: 708px;
}

.movie-content .movie-content-sub-ttl {
  width: 315px;
  margin-top: 15px;
}

.movie-about {
  width: 100%;
  margin-top: 33px;
}

.movie-txt {
  font-size: 16px;
  font-weight: bold;
}

.movie-txt span {
  font-size: 24px;
}

.movie-txt .txt-prr {
  font-size: 16px;
}

.flex-center {
  justify-content: center;
  position: relative;
}

.txt-prr {
  position: absolute;
  right: 0;
  bottom: 5px;
}

.movie-area {
  max-width: 750px;
  width: 100%;
  margin: 0 auto;
  margin-top: 10px;
  border-radius: 20px;
}

.movie-area iframe {
  width: 100%;
  height: calc(708px * 0.658);
}

.live-no {
  display: none;
}

.material-content {
  width: 100%;
  max-width: 1002px;
  margin-top: 80px;
  margin-left: auto;
  margin-right: auto;
  border: solid 2px #3b322e;
  padding: 30px 60px;
}

.material-ttl {
  font-size: 14px;
}

.material-list {
  font-size: 12px;
}

.point-txt {
  font-size: 16px;
  line-height: 2;
}

/*---------------------------
  プロフィール
---------------------------*/

.profile-content {
  padding: 0;
  width: 100%;
  max-width: 1007px;
  margin-left: auto;
  margin-right: auto;
}

.content.profile-content {
  margin: 0;
}

.content-center {
  width: auto;
  margin: 0 auto;
}

.profile-ttl {
  display: inline-block;
  background-color: #fff;
  padding: 0 8px;
  font-size: 36px;
}

.profile-ttl-sub {
  display: inline-block;
  background-color: #fff;
  padding: 0 18px;
  font-size: 14px;
  margin-bottom: 10px;
}

.store-name {
  font-size: 26px;
}

.profile-content-top {
  margin-top: 53px;
}

.profile-txt {
  font-size: 16px;
}

.profile-flex-content {
  width: 100%;
}

.profile-mt30 {
  margin-top: 30px;
}

.profile-mt50 {
  margin-top: 50px;
}

.profile-mt65 {
  margin-top: 65px;
}

.profile-mt166 {
  margin-top: 150px;
}

.profile-txt-content {
  width: calc(100% - 379px);
  padding-right: 30px;
}

.profile-img {
  max-width: 379px;
  width: 100%;
}

.profile-img img {
  height: auto;
  max-width: 379px;
  width: 100%;

}

.profile-img-2 {
  max-width: 354px;
}

.profile-img-2 img {
  max-width: 354px;
}

.profile-position {
  position: relative;
}

.profile-img-abs {
  position: absolute;
  right: 0;
  top: -152px;
}

.profile-img-left {
  margin-left: 10%;
}


.profile-txt-content-2 {
  width: calc(100% - 354px);
  padding-left: 30px;
}


/*---------------------------
  content01
---------------------------*/
.content01 {
  margin-top: 80px;
  padding: 60px 0 70px;
  position: relative;
}

.content01 .subttl {
  margin-left: 73px;
}

.content01-pointblc {
  margin-top: 50px;
}

.content01-point {
  width: 60%;
  background: #fff;
  padding: 35px 0 30px 90px;
  margin-bottom: 20px;
}

.content01-point h3 {
  font-size: 1.8rem;
  font-weight: bold;
}

.content01-point p {
  font-size: 1.6rem;
  margin-top: 10px;
}

.content01-img {
  position: absolute;
  top: 0;
  right: 80px;
}


/*---------------------------
  content02
---------------------------*/
.content02 {
  background: url("../images/content02_1.png") no-repeat top left;
  background-size: 90%;
  position: relative;
  padding: 130px 0 100px;
}

.content02 .subttl {
  position: absolute;
  top: 0;
  right: 5%;
}

.content02-blc {
  width: 60%;
}

.content02-blc.right {
  margin-left: auto;
}

.content02-blc.left {
  margin-top: -380px;
}

.content02-txt {
  width: 100%;
  background: #fff;
  padding: 30px 0 30px 35px;
  font-size: 1.6rem;
}

.left .content02-txt {
  padding: 30px 0 30px 140px;
}

.content02-txt .italic {
  margin-top: 30px;
}

.content02-point {
  margin-top: 30px;
}

.left .content02-point {
  margin-left: 140px;
}

.content02-point span {
  display: inline-block;
  background: #a87071;
  color: #fff;
  margin-bottom: 10px;
  font-size: 2.2rem;
  padding: 0 5px;
  letter-spacing: 0.1em;
}

.content02-blc-img {
  margin-top: 44px;
}

.content02-lead {
  text-align: center;
  font-size: 2.6rem;
  margin-top: 140px;
  letter-spacing: 0.1em;
}

/*---------------------------
  content03
---------------------------*/
.content03 {
  background: url(../images/content03_bg.jpg) no-repeat;
  background-size: cover;
  padding-bottom: 60px;
}

.content03-mv {
  width: 1030px;
  padding: 50px 0;
  margin: 0 auto;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.content03-mv-inner:last-of-type {
  width: 576px;
  height: auto;
}

.content03-lead {
  color: #fff;
  font-size: 2rem;
  margin-top: 60px;
}

.content03-lead span {
  font-size: 120%;
}

.content03-inner {
  background: rgba(0, 0, 0, .4);
  margin: 0 auto;
  border-radius: 6px;
  border: solid 3px #c1b4a4;
  width: 1130px;
  padding: 40px 65px;
  box-sizing: border-box;
}

.content03-comparison {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  justify-content: space-between;
  margin-top: 50px;
}

.content03-comparison-blc {
  width: calc(25% - 40px);
}

.comparison-blc-txt {
  background: #f2ede6;
  padding: 20px 0;
  font-size: 1.4rem;
}

.comparison-txt-inner {
  margin: auto;
  width: 9em;
}

.comparison-blc-ttl {
  text-align: center;
  font-size: 1.6rem;
}

.comparison-meter {
  margin-top: 60px;
}

.comparison-meter+.comparison-meter {
  margin-top: 20px;
}

/*---------------------------
  content04
---------------------------*/
.content04 {
  padding: 60px 0 100px;
}

.content04.bg-ptn {
  background-position: top -260px left;
}

.content04 h2 {
  margin-bottom: 70px;
}

.content04-blc {
  position: relative;
}

.content04-blc h3 {
  position: absolute;
  top: -127px;
}

.content04-blc.top h3 {
  right: 70px;
  height: 40em;
}

.content04-blc.bottom h3 {
  left: 70px;
  height: 38em;
}

.content04-point {
  background: #fff;
  width: 60%;
  font-size: 1.6rem;
  position: absolute;
  top: -40px;
}

.content04-point li {
  margin-bottom: 10px;
}

.content04-point li:last-of-type {
  margin-bottom: 0;
}

.content04-point li::before {
  content: '・';
  display: inline-block;
  margin-right: 0.5em;
}

.content04-point.left {
  padding: 40px 0 40px 140px;
  left: 0;
}

.content04-point.right {
  right: 0;
  padding: 21px 0 26px 80px;
}

.content04-img-blc {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  width: calc(100% - 70px);
}

.content04-img-blc.right {
  margin-left: auto;
}

.content04-img-large {
  width: 50%;
  height: auto;
}

.content04-img-small {
  width: 272px;
  height: auto;
}

.content04-mult {
  display: block;
  width: 78px;
  height: 78px;
  position: relative;
  margin: 20px auto 60px;
}

.content04-mult::before,
.content04-mult::after {
  content: "";
  display: block;
  width: 140%;
  height: 1px;
  background: #000;
  transform: rotate(45deg);
  transform-origin: 0% 50%;
  position: absolute;
  top: 0;
  left: 0;
}

.content04-mult::after {
  transform: rotate(-45deg);
  transform-origin: 100% 50%;
  left: auto;
  right: 0;
}

/*---------------------------
  content05
---------------------------*/
.content05 {
  background: url(../images/content05_bg.png) no-repeat top left 60px, url(../images/bg-beige.png);
}

.content05 .content {
  padding: 100px 140px;
}

.content05-lead {
  font-size: 1.6rem;
  line-height: 2.5;
  margin-top: 60px;
}

.content05-blc {
  position: relative;
}

.content05-blc.bottom {
  margin-top: 74px;
}

.content05-img {
  position: absolute;
}

.content05-blc.top .content05-img {
  top: -127px;
  right: -75px;
}

.content05-blc.bottom .content05-img {
  top: 0;
  left: -40px;
}

.content05-point {
  width: 666px;
  margin-left: auto;
  box-sizing: border-box;
}

.content05-point-ttl {
  background: #3b322e;
  font-size: 2.6rem;
  color: #fff;
  padding: 10px 0 10px 38px;
  line-height: normal;
}

.content05-point-txtblc {
  font-size: 2.1rem;
  background: #fff;
  opacity: .8;
  padding: 30px 40px;
  border: 1px solid #3b322e;
}

.content05-point-txt {
  margin-bottom: 30px;
}

.content05-capacity {
  font-size: 2.1rem;
  padding: 32px 0 28px 38px;
  background: url(../images/bg-red2.png);
  margin: 13px 0 0 auto;
  width: 666px;
  color: #fff;
}

/*---------------------------
  content06
---------------------------*/
.content06.bg-ptn {
  background-position: top -420px left;
}

.content06-inner {
  padding: 100px 0;
  background: url(../images/content06_1.png) no-repeat top 40px right;
}

.content06 h2 {
  margin-left: 70px;
}

.content06-lead {
  font-size: 2rem;
  margin: 56px 0 0 250px;
  letter-spacing: 0;
}

.content06-feature {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  justify-content: center;
  padding: 0 140px;
  flex-wrap: wrap;
  margin-top: 56px;
}

.content06-feature-blc {
  width: 306px;
  margin: 0 41px 56px 0;
}

.content06-feature-blc:nth-of-type(3n),
.content06-feature-blc:last-of-type {
  margin-right: 0;
}

.content06-feature-img {
  max-width: 100%;
  height: auto;
}

.content06-feature-caption {
  font-size: 1.4rem;
  text-align: center;
  line-height: 1.7;
  margin-top: 15px;
}

/*---------------------------
  content07
---------------------------*/
.content07 {
  background: url(../images/content07_1.png) no-repeat bottom left;
  background-size: contain;
  background-color: #000;
  padding: 76px 0;
}

.content07-inner {
  margin-left: 54%;
}

.content07 h2 .font-middle {
  font-size: 3.6rem;
  margin-bottom: 10px;
}

.content07 h2 {
  margin-bottom: 55px;
}

.content07-lead {
  font-size: 1.6rem;
  color: #fff;
}

.content07-lead+.content07-lead {
  margin-top: 26px;
}

/*-------------------------
  content08
---------------------------*/
.content08 {
  padding: 100px 0;
}

.content08 .content {
  padding: 0 73px;
}

.content08.bg-ptn {
  background-position: top -200px left;
}

.content08 h2 {
  margin-bottom: 60px;
}

.content08-howto {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  padding: 0 67px;
}

.content08-howto-blc {
  width: 50%;
  margin-bottom: 20px;
}

.content08-howto-blc.left {
  font-size: 1.6rem;
}

.content08-howto-blc.right {
  width: calc(50% - 30px);
  margin-left: auto;
}

.content08-howto-extop {
  font-size: 1.8rem;
  text-align: center;
  padding: 10px 0;
  background: url(../images/bg-beige.png);
}

.content08-howto-text {
  margin-bottom: 30px;
}

.content08-howto-exbottom {
  font-size: 2.1rem;
  color: #fff;
  text-align: center;
  padding: 18px 0 28px;
  background: url(../images/bg-red.png);
  background-color: rgba(255, 255, 255, 0.2);
  background-blend-mode: lighten;
}

.content08-howto-exbottom img {
  display: inline-block;
  margin-right: 4px;
}

.content08-howto-exbottom span {
  font-size: 3.4rem;
}

.content08 .arrow-bottom {
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 18px 14px 0 14px;
  border-color: #720000 transparent transparent transparent;
  display: block;
  margin: 0 auto 13px;
}

.content08-catch {
  text-align: center;
  font-size: 3rem;
}

.content08-catch span {
  font-size: 3.5rem;
}

.content08-use {
  width: 100%;
  margin-top: 100px;
}

.content08-use-ttl {
  background: #3b322e;
  text-align: center;
  font-size: 2.6rem;
  color: #fff;
  padding: 6px 0 8px
}

.content08-use-inner {
  padding: 60px 67px;
  box-sizing: border-box;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  justify-content: space-between;
  border: 1px solid #3b322e;
  background: rgba(255, 255, 255, .8);
}

.content08-use-img {
  width: 294px;
  height: auto;
  align-self: flex-start;
}

.content08-use-text {
  margin-left: 45px;
}

.content08-use-text p {
  font-size: 2rem;
  letter-spacing: normal;
}

.content08-use-text p+p {
  margin-top: 20px;
}

.content08-use-howto {
  background: url(../images/bg-red.png);
  padding: 25px 30px;
  background-color: rgba(255, 255, 255, 0.2);
  background-blend-mode: lighten;
  color: #fff;
  font-size: 1.6rem;
  margin-top: 28px;
}

/*---------------------------
  content09
 ---------------------------*/
_::-webkit-full-page-media,
_:future,
:root .content09 {
  font-family:
    '游明朝',
    'Yu Mincho',
    YuMincho,
    'Hiragino Mincho Pro',
    serif;
}

.content09 {
  background: url(../images/bg-beige.png);
  padding: 70px 0 190px;
  font-family: "Noto Serif JP",
    '游明朝',
    'Yu Mincho',
    YuMincho,
    'Hiragino Mincho Pro',
    serif;
}


.content09 h2 {
  margin-bottom: 60px;
}

.content09-lead {
  font-size: 1.6rem;
  text-align: center;
}

.content09-point {
  width: 1000px;
  margin: 60px auto 0;
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
}

.content09-point-blc {
  width: 306px;
  margin: 0 41px 40px 0;
}

.content09-point-blc:nth-of-type(3n) {
  margin-right: 0;
}

.content09-point-text {
  text-align: center;
  background: url(../images/bg-red2.png);
  color: #fff;
  font-size: 1.8rem;
  line-height: 1.4;
  padding: 10px 0;
}

/*---------------------------
  content10
---------------------------*/
.content10 {
  background: url(../images/content10_bg.jpg) no-repeat;
  background-size: cover;
  padding: 184px 0;
}

/*---------------------------
  content11
---------------------------*/
.content11 {
  background: url(../images/bg-beige.png);
  display: flex;
  align-items: center;
}

.content11-blc {
  width: 50%;
  font-size: 2.2rem;
}

div.content11-blc {
  display: flex;
  justify-content: center;
}

/*---------------------------
  lineup
---------------------------*/
.lineup {
  padding: 100px 0 90px;
}

.lineup .content {
  padding: 0 20px;
}

.lineup.bg-ptn {
  background-position: top -100px left;
}

.lineup h2 {
  margin-bottom: 66px;
}

.lineup-item {
  display: flex;
  justify-content: space-between;
}

.lineup-item+.lineup-item {
  margin-top: 100px;
}

.lineup-item-img {
  width: 360px;
}

.lineup-item-info {
  width: calc(100% - 360px);
  padding-left: 40px;
}

.lineup-item-thum {
  width: calc(100% + 20px);
  margin-right: -20px;
}

.lineup-item-thum li {
  margin: 20px 20px 0 0;
  cursor: pointer;
}

.lineup-item-note {
  font-size: 1.6rem;
}

.lineup-item-name {
  font-size: 2.2rem;
  line-height: 1.46;
}

.lineup-item-name span {
  font-size: 1.6rem;
}

.lineup-item-price {
  text-align: right;
  font-size: 2.2rem;
}

.lineup-item-price span {
  font-size: 1.6rem;
}

.lineup-item-price .badge-free {
  font-size: 1.4rem;
  background: #c20000;
  color: #fff;
  padding: 0 4px;
  display: inline-block;
  border-radius: 3px;
}

.lineup-item-feature {
  font-size: 1.6rem;
  line-height: 2;
  margin-top: 34px;
}

.lineup-item-feature+.lineup-item-feature {
  margin-top: 50px;
}

.lineup-item-detail {
  font-size: 1.4rem;
  margin-top: 50px;
}

.lineup-item-detail+.lineup-item-detail {
  margin-top: 30px;
}

.lineup-item-caution {
  font-size: 1.4rem;
  padding-left: 1em;
  text-indent: -1em;
}

/*---------------------------
  slide
---------------------------*/
.slick-track {
  display: flex;
  width: 100%;
}

.buybtn,
.detailbtn {
  border-radius: 3px;
  width: 100%;
  padding: 20px;
  color: #fff;
  text-align: center;
  font-size: 1.8rem;
  display: block;
}

.buybtn:hover,
.detailbtn:hover {
  opacity: .7;
}

.buybtn {
  background: #840b0b;
  margin-top: 50px;
}

.detailbtn {
  background: #20276f;
  margin-top: 20px;
}

footer {
  font-size: 1.2rem;
  color: #fff;
  background: #3b322e;
  padding: 30px 0;
  text-align: center;
}

.profile-second-content {
  font-size: 16px;
  line-height: 2.4;
}

.profile-second-content-margin {
  /* margin-top: -10px; */
}

.recipe-download {
  display: block;
  text-align: center;
  margin: 60px 0;
  font-size: 1.8rem;
  color: #3b322e;
  text-decoration: underline;
}

@media screen and (max-width: 756px) {
  .main-contents {
    min-width: auto;
    max-width: 100%;
  }

  .fixed-nav {
    top: 400px;
    width: 45px;
  }

  header {
    padding: 17px 20px;
    font-size: 0.9rem;
  }

  .header-logo {
    width: 38px;
    margin-right: 10px;
  }

  .mv-deco {
    position: absolute;
    width: 31.5%;
    height: auto;
  }

  .mv-deco.top {
    top: -22px;
    right: 0;
  }

  .mv-deco.bottom {
    bottom: -22px;
    left: 0px;
  }

  .mv-badge {
    position: absolute;
    width: 82px;
    height: auto;
    top: 10px;
    left: 12px;
  }

  .mv-catch {
    position: absolute;
    bottom: 15px;
    right: 0;
    letter-spacing: 0.1em;
  }

  .mv-catch span {
    font-size: 1.5rem;
    padding: 0 10px;
    margin-bottom: 0px;
    display: inline-block;
  }

  .mv-img {
    width: 100%;
  }

  _::-webkit-full-page-media,
  _:future,
  :root .content {
    font-family:
      '游明朝',
      'Yu Mincho',
      YuMincho,
      'Hiragino Mincho Pro',
      serif;
  }

  .content {
    width: 100%;
    max-width: 1000px;
    font-family: "Noto Serif JP",
      '游明朝',
      'Yu Mincho',
      YuMincho,
      'Hiragino Mincho Pro',
      serif;
  }


  /*---------------------------
    小見出し関連
  ---------------------------*/
  .subttl.left span {
    padding: 0 18px;
    letter-spacing: normal;
  }

  .subttl.large span {
    font-size: 4.1rem;
    display: inline-block;
    line-height: 1.6;
  }

  .subttl.middle span {
    font-size: 2.7rem;
    line-height: 1.2;
  }

  .subttl.small span {
    font-size: 2.5rem;
    line-height: 2;
  }

  .subttl span.inner-small {
    font-size: 2rem;
    line-height: 1.8;
  }

  .subttl span.inner-middle {
    font-size: 2.7rem;
    line-height: 1.2;
  }

  .subttl.vertical span {
    padding: 15px 0;
    line-height: normal;
  }

  .subttl.v-middle span {
    font-size: 2.4rem;
    padding: 10px 0;
    margin-left: 10px;
    line-height: normal;
    display: inline-block;
  }

  .subttl.vertical.large span {
    padding: 10px 0;
  }

  .subttl.center {
    text-align: center;
  }

  .subttl.center span {
    padding: 0 5px;
  }

  /*---------------------------
  ライブ見出し
---------------------------*/
  .live-content {
    padding: 0;
    margin-top: 60px;
  }

  .live-txt {
    font-size: 16px;
    line-height: 2.5;
  }

  .live-txt-center {
    text-align: center;
  }

  .live-about {
    padding: 0 20px;
  }

  .announce-txt {
    margin-top: 40px;
  }

  .announce-txt li {
    font-size: 15px;
    padding-left: 1em;
    text-indent: -1em;
  }

  .live-point {
    background: rgba(248, 248, 248, 0.5);
    margin: 0;
    padding-top: 37px;
    padding-right: 7%;
    padding-left: 7%;
    padding-bottom: 40px;
    border-top: 1px solid #67594a;
    border-bottom: 1px solid #67594a;
  }

  .point-mt30 {
    margin-top: 30px;
  }

  .point-mt45 {
    margin-top: 45px;
  }


  /*---------------------------
  ライブ公開
---------------------------*/
  .ttl-content-center {
    margin: 0 auto;
  }

  .live-movie {
    width: 100%;
    background: url(../images/live_movie_bg_sp.png) no-repeat center center;
    background-size: cover;
    padding: 45px 10px 50px;
  }

  .movie-content {
    padding: 0;
  }

  .movie-content img {
    width: 100%;
  }

  .movie-about {
    max-width: 708px;
    width: 100%;
    margin-top: 33px;
  }

  .movie-txt {
    font-size: 16px;
    font-weight: bold;
    text-align: center;
  }

  .movie-txt span {
    font-size: 18px;
  }

  .movie-txt .txt-prr {
    font-size: 18px;

  }

  .txt-right {
    text-align: right;
  }

  .txt-mt10 {
    margin-top: 10px;
  }

  .movie-area {
    max-width: 750px;
    width: 100%;
    height: auto;
    margin: 0 auto;
    margin-top: 10px;
    border-radius: 20px;
  }

  .movie-area iframe {
    width: 100%;
    height: calc((100vw - 20px) * 0.627);
  }

  .live-no {
    display: none;
  }

  .material-content {
    padding: 10px 12px;
    margin-top: 40px;
  }

  .material-ttl {
    font-size: 14px;
  }

  .material-list {
    font-size: 12px;
  }

  /*---------------------------
  購入
---------------------------*/

  .item-announce {
    padding-left: 1em;
    text-indent: -1em;
  }

  /*---------------------------
  プロフィール
---------------------------*/

  .profile-mt35 {
    margin-top: 35px;
  }

  .profile-content {
    padding: 0;
  }

  .profile-ttl {
    display: inline-block;
    background-color: #fff;
    padding: 0 8px;
    font-size: 26px;
  }

  .profile-ttl-sub {
    display: inline-block;
    background-color: #fff;
    padding: 0 18px;
    font-size: 10px;
    margin-bottom: 10px;
  }

  .store-name {
    font-size: 15px;
  }

  .profile-content-top {
    margin-top: 25px;
  }

  .profile-txt {
    font-size: 16px;
    line-height: 2.5;
  }

  .profile-short-content {
    max-width: 546px;
    width: 100%;
  }

  .profile-short-content p {
    font-size: 16px;
    line-height: 2.3;
  }


  .profile-mt65 {
    margin-top: 30px;
  }


  .profile-img {
    height: auto;
    width: 100%;
  }

  .profile-img img {
    height: auto;
    width: 100%;

  }

  .profile-mt166 {
    margin-top: 100px;
  }

  .profile-mb80 {
    margin-bottom: 40px;
  }

  /*---------------------------
    content01
  ---------------------------*/
  .content01 {
    margin-top: 0;
    padding: 65px 0 0;
    position: relative;
  }

  .content01 .subttl {
    margin-left: 0;
  }

  .content01-pointblc {
    margin-top: 30px;
  }

  .content01-point {
    width: 100%;
    padding: 25px 20px;
    margin-bottom: 15px;
  }

  .content01-point h3 {
    font-size: 1.4rem;
    font-weight: bold;
  }

  .content01-point p {
    font-size: 1.2rem;
    margin-top: 10px;
  }

  .content01-img {
    position: relative;
    top: auto;
    right: auto;
    margin: -30px 0 0 -4%;
    z-index: 100;
  }

  /*---------------------------
    content02
  ---------------------------*/
  .content02 {
    background: none;
    position: relative;
    padding: 0 0 35px;
    margin-top: -10px;
  }

  .content02 .subttl {
    position: absolute;
    top: 0;
    right: 15px;
  }

  .content02-blc {
    width: 100%;
  }

  .content02-blc.right {
    background: url(../images/content02_1_sp.png) no-repeat left bottom -150px;
    background-size: contain;
    background-color: #e9eef0;
    margin-left: 0;
    padding: 45px 0 333px;
  }

  .content02-blc.left {
    margin-top: 0;
  }

  .content02-txt {
    width: 100%;
    background: #fff;
    padding: 22px 80px 22px 20px;
    font-size: 1.2rem;
  }

  .left .content02-txt {
    padding: 27px 20px 23px;
  }

  .content02-txt .italic,
  .content02-point,
  .content02-blc-img {
    margin-top: 25px;
  }

  .left .content02-point {
    margin-left: 0;
  }

  .content02-point span {
    display: inline-block;
    margin-bottom: 6px;
    font-size: 1.7rem;
    padding: 0 20px;
    letter-spacing: normal;
  }

  .content02-lead {
    text-align: center;
    font-size: 2rem;
    margin-top: 40px;
  }

  /*---------------------------
    content03
  ---------------------------*/
  .content03 {
    background: url(../images/content03_bg_sp.png) no-repeat top, #3b322e;
    background-size: contain;
    padding-bottom: 60px;
  }

  .content03 h2 {
    font-size: 2.2rem;
  }

  .content03-mv {
    width: 100%;
    padding: 40px 0;
    margin: 0 auto;
    flex-direction: column;
  }

  .content03-mv-inner:last-of-type {
    width: 100%;
  }

  .content03-mv-img {
    width: 90%;
    margin: 25px auto 0;
  }

  .content03-lead {
    color: #fff;
    font-size: 1.4rem;
    margin: 25px 0 0 20px;
  }

  .content03-lead span {
    font-size: 135%;
  }

  .content03-inner {
    width: calc(100% - 20px);
    margin: 0 auto;
    padding: 20px 0;
  }

  .content03-comparison {
    display: flex;
    align-items: center;
    padding: 0 25px;
    margin-top: 26px;
  }

  .comparison-meter {
    width: 24px;
    height: auto;
    margin-top: 0;
  }

  .content03-comparison-blc {
    width: 77%;
    margin: 0 auto 25px;
  }

  .content03-comparison-blc:last-of-type {
    margin-bottom: 0;
  }

  .comparison-blc-txt {
    background: #f2ede6;
    padding: 13px 0;
    font-size: 1.4rem;
  }

  .comparison-txt-inner {
    margin: auto;
    width: 9em;
  }

  .comparison-blc-ttl {
    text-align: center;
    font-size: 1.6rem;
  }

  /*---------------------------
    content04
  ---------------------------*/
  .content04 {
    padding: 40px 0;
  }

  .content04.bg-ptn {
    background-position: top -160px left;
  }

  .content04 h2 {
    margin-bottom: 30px;
  }

  .content04-blc {
    position: relative;
  }

  .content04-blc h3 {
    top: 0px;
  }

  .content04-blc.top h3 {
    right: 10px;
    height: 25em;
  }

  .content04-blc.bottom h3 {
    left: 10px;
    height: 25em;
  }

  .content04-point {
    width: 100%;
    font-size: 1.2rem;
    position: static;
  }

  .content04-point li {
    padding-left: 1.5em;
  }

  .content04-point li::before {
    margin-right: 0;
    text-indent: -1.5em;
  }

  .content04-point.left {
    padding: 25px 102px 25px 20px;
    left: 0;
  }

  .content04-point.right {
    right: 0;
    padding: 25px 20px 25px 110px;
  }

  .content04-img-blc {
    justify-content: center;
    align-items: flex-end;
    flex-wrap: wrap;
    width: 100%;
  }

  .content04-img-blc.right {
    margin-left: auto;
  }

  .content04-img-large {
    width: 100%;
    height: auto;
  }

  .content04-img-small {
    width: calc(50% - 20px);
    height: auto;
    margin: 10px 10px 0 0;
  }

  .content04-img-small:last-of-type {
    margin-right: 0;
  }

  .content04-mult {
    display: block;
    width: 58px;
    height: 58px;
    position: relative;
    margin: 25px auto;
  }

  .content04-mult::before,
  .content04-mult::after {
    content: "";
    display: block;
    width: 140%;
    height: 1px;
    background: #000;
    transform: rotate(45deg);
    transform-origin: 0% 50%;
    position: absolute;
    top: 0;
    left: 0;
  }

  .content04-mult::after {
    transform: rotate(-45deg);
    transform-origin: 100% 50%;
    left: auto;
    right: 0;
  }

  /*---------------------------
    content05
  ---------------------------*/
  .content05 {
    background: url(../images/content05_bg.png) no-repeat top left -30px, url(../images/bg-beige.png);
    background-size: 58%;
  }

  .content05 .content {
    padding: 40px 10px;
  }

  .content05-lead {
    font-size: 1.2rem;
    line-height: 1.8;
    margin-top: 30px;
  }

  .content05-blc {
    position: relative;
  }

  .content05-blc.top {
    padding: 0 10px;
  }

  .content05-blc.bottom {
    margin-top: -35px;
  }

  .content05-img {
    position: static;
  }

  .content05-blc.top .content05-img {
    top: auto;
    right: auto;
    margin-top: 10px;
  }

  .content05-blc.bottom .content05-img {
    top: 0;
    left: auto;
    margin: -20px 0 0 17px;
  }

  .content05-point {
    width: 100%;
    margin-left: auto;
    box-sizing: border-box;
  }

  .content05-point-ttl {
    font-size: 2rem;
    padding: 10px 0 10px 14px;
  }

  .content05-point-txtblc {
    font-size: 1.6rem;
    padding: 25px 14px;
  }

  .content05-point-txt {
    margin-bottom: 20px;
  }

  .content05-capacity {
    font-size: 1.6rem;
    padding: 20px 15px;
    margin: 10px 0 0;
    width: 100%;
    position: relative;
  }

  /*---------------------------
    content06
  ---------------------------*/
  .content06.bg-ptn {
    background-position: top left;
  }

  .content06-inner {
    padding: 47px 20px 36px;
    background: url(../images/content06_1.png) no-repeat top 30px right -400%;
    background-size: 87%;
  }

  .content06 h2 {
    margin-left: -20px;
  }

  .content06-lead {
    font-size: 1.2rem;
    margin: 36px 0 0;
  }

  .content06-feature {
    flex-direction: column;
    padding: 0;
    margin-top: 30px;
  }

  .content06-feature-blc {
    width: 100%;
    margin: 0 0 28px;
  }

  .content06-feature-img {
    max-width: 100%;
    height: auto;
  }

  .content06-feature-caption {
    font-size: 1.2rem;
  }

  /*---------------------------
    content07
  ---------------------------*/
  .content07 {
    background: url(../images/content07_1_sp.jpg) no-repeat bottom left;
    background-size: cover;
    padding: 40px 0;
  }

  .content07-inner {
    margin-left: 0;
  }

  .content07 h2 .sp-middle {
    font-size: 2.7rem;
    margin-bottom: 10px;
  }

  .content07 h2 {
    margin-bottom: 30px;
  }

  .content07-lead {
    font-size: 1.2rem;
    padding: 0 20px;
  }

  .content07-lead+.content07-lead {
    margin-top: 20px;
  }

  /*-------------------------
    content08
  ---------------------------*/
  .content08 {
    padding: 40px 0;
  }

  .content08 .content {
    padding: 0 10px;
  }

  .content08.bg-ptn {
    background-position: top 1500px left;
  }

  .content08 h2 {
    margin-bottom: 30px;
  }

  .content08-howto {
    flex-direction: column;
    padding: 0;
  }

  .content08-howto-blc {
    width: 100%;
    margin-bottom: 20px;
  }

  .content08-howto-blc.left {
    font-size: 1.2rem;
    padding: 0 10px;
  }

  .content08-howto-blc.right {
    width: 100%;
  }

  .content08-howto-extop {
    font-size: 1.2rem;
  }

  .content08-howto-text {
    margin-bottom: 30px;
  }

  .content08-howto-exbottom {
    font-size: 1.4rem;
    padding: 12px 0;
  }

  .content08-howto-exbottom img {
    display: inline-block;
    margin-right: 4px;
  }

  .content08-howto-exbottom span {
    font-size: 2.3rem;
  }

  .content08 .arrow-bottom {
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 18px 14px 0 14px;
    border-color: #720000 transparent transparent transparent;
    display: block;
    margin: 0 auto 13px;
  }

  .content08-catch {
    text-align: center;
    font-size: 1.8rem;
  }

  .content08-catch span {
    font-size: 2.1rem;
  }

  .content08-use {
    margin-top: 40px;
  }

  .content08-use-ttl {
    font-size: 2rem;
    color: #fff;
    padding: 6px 0 8px
  }

  .content08-use-inner {
    padding: 25px 10px;
    flex-direction: column;
  }

  .content08-use-img {
    width: 100%;
    margin-top: 20px;
  }

  .content08-use-text {
    margin-left: 0;
  }

  .content08-use-text p {
    font-size: 1.2rem;
  }

  .content08-use-text p+p {
    margin-top: 10px;
  }

  .content08-use-howto {
    padding: 12px 17px;
    font-size: 1.2rem;
    margin-top: 25px;
  }

  /*---------------------------
    content09
   ---------------------------*/

  _::-webkit-full-page-media,
  _:future,
  :root .content09 {
    font-family:
      '游明朝',
      'Yu Mincho',
      YuMincho,
      'Hiragino Mincho Pro',
      serif;
  }

  .content09 {
    font-family: "Noto Serif JP",
      '游明朝',
      'Yu Mincho',
      YuMincho,
      'Hiragino Mincho Pro',
      serif;
    padding: 60px 20px 80px;
  }



  .content09 h2 {
    margin-bottom: 30px;
  }

  .content09-lead {
    font-size: 1.2rem;
    text-align: left;
  }

  .content09-point {
    width: 100%;
    margin: 28px auto 0;
    flex-direction: column;
  }

  .content09-point-blc {
    width: 100%;
    margin: 0 0 30px;
  }

  .content09-point-text {
    font-size: 1.7rem;
    padding: 10px 0;
  }


  /*---------------------------
    content10
  ---------------------------*/
  .content10 {
    background: url(../images/content10_bg_sp.jpg) no-repeat center top;
    background-size: cover;
    padding: 100px 0;
  }

  /*---------------------------
    content11
  ---------------------------*/
  .content11 {
    flex-direction: column;
  }

  .content11-blc {
    width: 100%;
    font-size: 1.7rem;
  }

  .content11-blc p {
    padding: 50px 35px;
    text-align: center;
  }

  div.content11-blc {
    display: flex;
    justify-content: center;
  }

  /*---------------------------
    lineup
  ---------------------------*/
  .lineup {
    padding: 40px 0;
  }

  .lineup .content {
    padding: 0 20px;
  }

  .lineup.bg-ptn {
    background-position: top -25px left;
  }

  .lineup h2 {
    margin-bottom: 30px;
  }

  .lineup-item {
    flex-direction: column;
  }

  .lineup-item+.lineup-item {
    margin-top: 40px;
  }

  .lineup-item-img {
    width: 100%;
  }

  .lineup-item-info {
    width: 100%;
    padding-left: 0;
  }

  .lineup-item-thum {
    width: calc(100% + 9px);
    margin-right: -10px;
    margin-bottom: 25px;
  }

  .lineup-item-thum li {
    margin: 10px 10px 0 0;
  }

  .slick-track {
    transform: translate3d(0px, 0px, 0px) !important;
  }

  .lineup-item-note {
    font-size: 1.2rem;
    margin-top: 25px;
  }

  .lineup-item-name {
    font-size: 2rem;
    line-height: normal;
  }

  .lineup-item-name span {
    font-size: 1.2rem;
  }

  .lineup-item-price {
    text-align: right;
    font-size: 1.6rem;
    margin-top: 15px;
  }

  .lineup-item-price span {
    font-size: 1.2rem;
  }

  .lineup-item-price .badge-free {
    font-size: 1rem;
    padding: 0 4px;
  }

  .lineup-item-feature {
    font-size: 1.2rem;
    margin-top: 23px;
  }

  .lineup-item-feature+.lineup-item-feature {
    margin-top: 35px;
  }

  .lineup-item-detail {
    font-size: 1.1rem;
    margin-top: 25px;
  }

  .lineup-item-detail+.lineup-item-detail {
    margin-top: 25px;
  }

  .lineup-item-caution {
    font-size: 1.1rem;
  }

  .buybtn {
    margin-top: 25px;
  }

  .detailbtn {
    margin-top: 15px;
  }

  footer {
    font-size: 0.8rem;
    padding: 26px 0;
    letter-spacing: normal;
  }

  .txt-indent {
    font-size: 1.1rem;
  }

  .recipe-download {
    margin: 50px 0;
  }

}

@media screen and (min-width: 800px) {
  .lineup .content {
    padding: 0;
  }

  .lineup-item-img {
    width: 460px;
  }

  .lineup-item-info {
    width: calc(100% - 460px);
    padding-left: 70px;
  }

  .content09-inner {
    padding: 0;
  }

  .profile-txt-content-2 {
    padding-left: 50px;
  }

  .profile-txt-content {
    padding-right: 70px;
  }
}
