/* 全体設定
------------------------------------------------------------*/
@import url('https://fonts.googleapis.com/css2?family=Shippori+Mincho&display=swap');
/* 'Shippori Mincho', */
body {
  font-family: "Shippori Mincho", serif;
  font-weight: 400;
  font-style: normal;
  font-size: 18px;
  line-height: 1.6em;
  color: #333333;
  width: 100%;
  position: relative;
  word-wrap: break-word;
  overflow-wrap: break-word;
  font-feature-settings: "palt";
  background: #ffffff;
  overflow-x: hidden;
}
.pc {
  display: block;
}
.sp {
  display: none;
}
.brpc::before {
  content: "\A";
  white-space: pre;
}
.brsp::before {
  content: none;
  white-space: normal;
}
strong {
  font-weight: 700;
}
.mj_tume {
  font-feature-settings: "palt";
}
.mj_tume_001 {
  letter-spacing: -0.01em;
}
.mj_tume_005 {
  letter-spacing: -0.05em;
}
.mj_tume_01 {
  letter-spacing: -0.1em;
}
.mj_narrow {
  transform: scale(0.8, 1);
}
.mj_wide {
  transform: scale(1.5, 1);
}
@media only screen and (max-width: 767px) {
  body {
    font-size: 4.26666vw;
  }
  .pc {
    display: none;
  }
  .sp {
    display: block;
  }
  .brpc::before {
    content: none;
    white-space: normal;
  }
  .brsp::before {
    content: "\A";
    white-space: pre;
  }
}
.page_wrap {
  position: relative;
}
.link_hover {
  opacity: 1;
  transition: opacity .3s ease;
}
@media only screen and (min-width: 768px) {
  .link_hover:hover {
    opacity: 0.7;
  }
}
.img_fit {
  width: 100%;
  height: auto;
}
/* nav
-----------------------------*/
nav.u_nav_wrap {
  width: 100%;
  height: 70px;
  background-color: #f7f1e9;
  position: sticky;
  left: 0;
  top: 0;
  z-index: 100;
}
nav .u_nav_inner {
  width: 1010px;
  height: 100%;
  margin: 0 auto;
  display: flex;
  align-items: center;
  position: static;
}
nav ul.u_nav {
  width: 100%;
  list-style-type: none;
  display: flex;
  justify-content: space-between;
}
nav ul.u_nav li {
  width: calc(100% / 7);
  height: 30px;
  overflow-x: visible;
  font-size: 15px;
  line-height: 1.2em;
  margin: 0;
  padding: 0;
  border-right: 1px solid #333333;
  display: flex;
  justify-content: center;
  align-items: center;
}
nav ul.u_nav li:first-child {
  border-left: 1px solid #333333;
}
nav ul.u_nav li.no_border {
  border-right: none;
}
nav ul.u_nav li a.nav_txt {
  color: #333333;
}
nav ul.u_nav li.MealinGood_wrap {
  width: 220px;
  padding: 0 0 0 20px;
}
nav ul.u_nav li.MealinGood_wrap span.MealinGood {
  width: 118.687px;
}
nav ul.u_nav li.MealinGood_wrap a.icon_X {
  width: 40.8008px;
  margin-left: 20px;
}
@media only screen and (max-width: 767px) {
  nav .u_nav_inner {
    width: 100%;
    height: auto;
    margin: 0;
    display: block;
    overflow: visible;
    position: relative;
  }
}
@media (max-width: 930px) and (min-width: 768px) {
  nav .u_nav_inner {
    width: 90%;
  }
}
@media only screen and (max-width: 767px) {
  nav.u_nav_wrap {
    width: 100%;
    height: auto;
    background-color: transparent;
    position: fixed;
    left: 0;
    top: 40px;
    z-index: 100;
  }
  nav .u_nav_inner {
    width: 100%;
    height: auto;
    margin: 0;
    display: block;
    overflow: visible;
    position: relative;
  }
  nav ul.u_nav {
    list-style-type: none;
    display: block;
    width: 36vw;
    position: absolute;
    white-space: nowrap;
    top: 14vw;
    right: 4vw;
    background-color: rgba(255, 255, 255, 0.9);
    padding: 5px;
    pointer-events: none;
    opacity: 0;
    transition: all 0.3s;
  }
  nav ul.u_nav li {
    width: auto;
    display: block;
    font-size: 2.93333vw;
    line-height: 1.2em;
    margin: 0;
    padding: 2.5vw 0.66666vw;
    border-left: none;
    border-right: none;
    border-bottom: 1px solid #525252;
  }
  nav ul.u_nav li:first-child {
    border-left: none;
    border-right: none;
    border-top: 1px solid #525252;
  }
  nav ul.u_nav li a {
    color: #333333;
    opacity: 1;
    transition: none;
  }
  .hamburger {
    width: 8.66666vw; /*65px*/
    height: 8.66666vw;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    cursor: pointer;
    border: 0.3vw solid #ffffff;
    border-radius: 2px;
    position: absolute;
    top: 4vw;
    right: 4vw;
  }
  .hamburger .bar {
    width: 5.2vw;
    height: 0.4vw;
    background: #ffffff;
    border-radius: 2.6vw;
    display: block;
    position: absolute;
    transition: all 0.3s;
  }
  .hamburger .bar-top {
    transform: translate(0, -1.3vw);
  }
  .hamburger .bar-bottom {
    transform: translate(0, 1.3vw);
  }
  .hamburger.checked .bar-middle {
    opacity: 0;
  }
  .hamburger.checked .bar-top {
    transform: translate(0, 0) rotate(45deg);
  }
  .hamburger.checked .bar-bottom {
    transform: translate(0, 0) rotate(-45deg);
  }
  .hamburger.checked ~ ul.u_nav {
    display: block;
    pointer-events: auto;
    opacity: 1;
  }
  nav ul.u_nav li.MealinGood_wrap {
    width: auto;
    display: block;
    font-size: 2.93333vw;
    line-height: 1.2em;
    margin: 0;
    padding: 2.5vw 0.66666vw;
    border-left: none;
    border-right: none;
    border-bottom: 1px solid #525252;
  }
}
/* X link
-----------------------------*/
a.X_link {
  display: inline-block;
  width: 240px;
  height: 60px;
  border-radius: 30px;
  background-color: #ffffff;
  overflow: visible;
  color: #333333;
  opacity: 1;
  transition: opacity .3s ease;
  font-size: 16px;
  border: 2px solid #333333;
  letter-spacing: 0.15em;
  background-image: url(../image/icon_X.svg);
  background-position: right 40px center;
  background-size: 30px auto;
  background-repeat: no-repeat;
  padding-right: 2.5em;
}
a.X_link span {
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
}
.link_but_box {
  width: 886px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
}
.link_but {
  width: 423px;
  filter: drop-shadow(5px 5px 5px rgba(000, 000, 000, 0.4));
}
@media only screen and (min-width: 768px) {
  a.X_link:hover {
    opacity: 0.7;
  }
}
@media only screen and (max-width: 767px) {
  a.X_link {
    width: 44.8vw;
    height: 11.2vw;
    border-radius: 5.6vw;
    border: 0.37333vw solid #333333;
    font-size: 2.93333vw;
    background-position: right 5.6vw center;
    background-size: 5.6vw auto;
  }
  a.X_link span {}
  .link_but_box {
    width: 79vw;
    margin: 0 auto;
    display: block;
  }
  .link_but {
    width: 100%;
    filter: drop-shadow(0.8vw 0.8vw 0.8vw rgba(000, 000, 000, 0.4));
    margin-top: 5.5vw;
  }
}
/*-----------------------------------------------------------
    TOP
-----------------------------------------------------------*/
/* TOP kye visual
-----------------------------*/
.kye_visual {
  width: 100%;
  margin: 0 0 0 0;
  padding: 0;
  position: relative;
}
.kye_visual_slide {
  width: 100%;
}
.kv_slide {
  width: 100%;
  height: 550px;
  position: relative;
  overflow: hidden;
}
.kv_slide video {
  width: 100%;
  height: auto;
  object-fit: cover;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateX(-50%) translateY(-50%);
}
.kv_slide {
  width: 100%;
  height: 550px;
  overflow: hidden;
}
.kv_02 {
  width: 100%;
  height: 550px;
  overflow: hidden;
}
.kv_03 {
  width: 100%;
  height: 550px;
  overflow: hidden;
}
.kv_04 {
  width: 100%;
  height: 550px;
  overflow: hidden;
}
.kv_05 {
  width: 100%;
  height: 550px;
  overflow: hidden;
}
.icon_X_sp {
  display: none;
}
/**/
/**/
.KV_img_wrap {
  width: 100%;
  height: 550px;
  overflow: hidden;
}
.KV_img_wrap img {
  width: 100%;
  height: auto;
}
.zoomIn .KV_img_wrap img {
  transform: scale(1);
  transition: all 5s ease;
}
.zoomIn.slick-active .KV_img_wrap img {
  transform: scale(1.1);
}
.zoomIn2 .KV_img_wrap img {
  transform: scale(1) translateY(0);
  transition: all 5s ease;
}
.zoomIn2.slick-active .KV_img_wrap img {
  transform: scale(1.2) translateY(6%);
}
.zoomOut .KV_img_wrap img {
  transform: scale(1.1);
  transition: all 5s ease;
}
.zoomOut.slick-active .KV_img_wrap img {
  transform: scale(1);
}
.slideUp .KV_img_wrap img {
  transform: translateY(-10%);
  transition: all 10s ease;
}
.slideUp.slick-active .KV_img_wrap img {
  transform: translateY(-40%);
}
/**/
@media only screen and (max-width: 1379px) {
  .kv_slide, .KV_img_wrap, .kv_slide video {
    width: 100%;
    height: 39.84918vw;
  }
}
/**/
@media only screen and (max-width: 767px) {
  .kye_visual {}
  .kye_visual_slide {}
  .kv_01 {
    height: 109.33333vw;
  }
  .kv_slide, .KV_img_wrap, .kv_slide video {
    width: auto;
    height: 100%;
  }
  .kv_slide {
    height: 109.33333vw;
  }
  .kv_02 {
    height: 109.33333vw;
  }
  .kv_02.slick-active {}
  .kv_03 {
    height: 109.33333vw;
  }
  .kv_03.slick-active {}
  .kv_04 {
    height: 109.33333vw;
  }
  .kv_04.slick-active {}
  .kv_05 {
    height: 109.33333vw;
  }
  .kv_05.slick-active {}
  .icon_X_sp {
    display: block;
    width: 10.4vw;
    position: absolute;
    top: 3.46666vw;
    left: 4.8vw;
  }
}
/* TOP 見出し
-----------------------------*/
.top_ttl_box {
  position: relative;
  padding: 135px 0 55px 0; /*135px 0 55px 0*/
  border-top: 10px solid #760003;
  border-bottom: 10px solid #760003;
  background-image: url(../image/top/top_bg_01.svg); /*top_bg_01.svg*/
  background-position: center top;
  background-size: 188px auto; /*188.77px*/
  background-repeat: repeat;
  text-align: center;
}
.top_ttl_box h1 {
  width: 316px;
  position: absolute;
  left: 50%;
  top: -120px;
  transform: translateX(-50%) translateY(0);
  filter: drop-shadow(7px 7px 5px rgba(000, 000, 000, 0.7));
}
.top_ttl_box h2 {
  display: inline-block;
  width: 840px;
  position: relative;
  font-size: 60px;
  font-weight: 600;
  line-height: 1.2em;
  text-align: center;
  color: #ffffff;
  letter-spacing: 0.1em;
  overflow: visible;
}
.top_ttl_box h2 .top_bg_img_01 {
  display: block;
  position: absolute;
  width: 145px;
  top: 0.3em;
  right: -120px;
}
p.top_ttl_txt {
  font-size: 20px;
  line-height: 2.2em;
  text-align: center;
  margin-top: 30px;
  color: #ffffff;
  letter-spacing: 0.08em;
}
.top_ttl_X_link {
  width: 883px;
  height: 205px;
  margin: 5px auto 50px auto;
  padding-top: 35px;
  background-image: url(../image/top/top_bg_img_02.png);
  background-position: center top;
  background-size: cover;
  background-repeat: no-repeat;
}
@media only screen and (max-width: 767px) {
  .top_ttl_box {
    padding: 20vw 0 13.33333vw 0;
    /*background-size: 50.33866vw auto;*/
  }
  .top_ttl_box h1 {
    width: 56.26666vw;
    top: -25.33333vw;
    filter: drop-shadow(1.8vw 1.8vw 1.3vw rgba(000, 000, 000, 0.7));
  }
  .top_ttl_box h2 {
    display: inline;
    width: auto;
    font-size: 7vw;
    background-image: none;
  }
  .top_ttl_box h2 .top_bg_img_01 {
    display: none;
  }
  p.top_ttl_txt {
    font-size: 4vw;
    /*letter-spacing: 0.08em;*/
    margin-top: 4vw;
  }
  .top_ttl_X_link {
    width: 100%;
    height: auto;
    margin: 4vw auto 0 auto;
    padding-top: 0;
    background-image: none;
  }
}
/* TOP 商品リンクスライダ
-----------------------------*/
.top_link {
  padding: 0 0 30px 0;
}
.top_link_slide {}
.top_link_slide_img {
  width: 242px;
  margin: 0 10px;
	padding-top: 35px;
}


}
.top_link_slide .slick-dots > li:first-child:last-child {
  /*display: none;*/
}
.top_link_slide .slick-dots {
  bottom: -40px;
  z-index: 10;
}
.top_link_slide .slick-dots li {
  width: 12px;
  height: 12px;
  margin: 0 0.5em;
}
.top_link_slide .slick-dots li button {
  color: #cdc0b2;
}
.top_link_slide .slick-dots li button::before {
  content: "●";
  font-size: 14px;
  opacity: 1;
  color: #cdc0b2;
}
.top_link_slide .slick-dots li.slick-active button::before {
  opacity: 1;
  color: #5e2e00;
}
@media screen and (max-width: 767px) {
  .top_link_slide .slick-dots {
    bottom: -8vw;
  }
  .top_link_slide .slick-dots li {
    width: 2vw;
    height: 2vw;
  }
  .top_link_slide .slick-dots li button {}
  .top_link_slide .slick-dots li button:before {
    font-size: 3vw;
  }
}
/**/
.top_link_X_link {
  margin: 80px 0 50px 0;
  text-align: center;
}
.top_link_X_char_wrap {
  width: 451px;
  height: 250px;
  position: relative;
  margin: 50px auto 0 auto;
}
.top_link_X_char_BG {
  width: 451px;
  height: 250px;
  background-image: url(../image/top/top_link_X_char_BG.svg);
  background-position: center top;
  background-size: 451px auto;
  background-repeat: no-repeat;
  color: #333333;
  overflow: visible;
  position: absolute;
  left: 10px;
  top: 10px;
  z-index: 1;
}
.top_link_X_char_content {
  width: 451px;
  height: 250px;
  background-color: #ffffff;
  border-radius: 20px;
  position: absolute;
  left: 0;
  top: 0;
  z-index: 2;
  border: 1px solid #333333;
}
.top_link_X_char_inner {
  padding: 15px 30px 0 30px;
  color: #333333;
}
p.top_link_X_char_txt01 {
  font-size: 16px;
  line-height: 1.5em;
  text-align: left;
  font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
  font-feature-settings: normal;
  margin-left: 20px;
  margin-top: 1em;
}
p.top_link_X_char_txt01 a {
  color: #c7000b;
  text-decoration: underline;
}
.top_link_X_char {
  display: flex;
  margin-top: -15px;
}
.top_link_X_char img {
  width: 141px;
  height: 141px;
  margin: 30px 30px 0 0;
}
p.top_link_X_char_txt02 {
  font-size: 18px;
  line-height: 1.6em;
  text-align: left;
  /*margin-top: 1em;*/
  letter-spacing: 0.04em;
  font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
  font-feature-settings: normal;
}
p.top_link_X_char_txt02 a {
  display: inline-block;
  color: #c7000b;
  text-decoration: underline;
  margin-top: 1em;
}
p.top_link_X_char_txt02 span {
  font-weight: 500;
}
@media screen and (max-width: 767px) {
  .top_link_X_link {
    margin: 14.66666vw 0 8vw 0;
  }
  .top_link_X_char_wrap {
    width: 84vw;
    height: 46.5632vw;
    margin: 9.33333vw auto 0 auto;
  }
  .top_link_X_char_BG {
    width: 84vw;
    height: 46.5632vw;
    background-size: 84vw auto;
    left: 1.86666vw;
    top: 1.86666vw;
  }
  .top_link_X_char_content {
    width: 84vw;
    height: 46.5632vw;
    border-radius: 3.73333vw;
    border: 0.2vw solid #333333;
  }
  .top_link_X_char_inner {
    padding: 5.714285vw 5.6vw 0 5.6vw;
  }
  p.top_link_X_char_txt01 {
    font-size: 2.986666vw;
    margin-left: 3.73333vw;
    margin-top: 0.5em;
  }
  p.top_link_X_char_txt01 a {}
  .top_link_X_char {
    margin-top: -3.8vw;
  }
  .top_link_X_char img {
    width: 26.32vw;
    height: 26.32vw;
    margin: 5.6vw 5.6vw 0 0;
  }
  p.top_link_X_char_txt02 {
    font-size: 3.36vw;
  }
  p.top_link_X_char_txt02 a {}
  p.top_link_X_char_txt02 span {}
}
/* #top_Ank_concept
-----------------------------*/
#top_Ank_concept {}
.top_concept {
  padding: 50px 0 0 0;
}
@media only screen and (max-width: 767px) {
  #top_Ank_concept {}
  .top_concept {
    padding: 8vw 0 0 0;
  }
}
.top_concept_01 {
  margin-top: 50px;
  padding: 50px 0 40px 0;
  background-color: #fbebeb;
}
h4.top_h4_ttl {
  font-size: 30px;
  font-weight: 600;
  text-align: center;
  letter-spacing: 0.08em;
}
.top_concept_img_01 {
  width: 402px;
  margin: 20px auto 0 auto;
}
p.top_concept_img_01_txt {
  font-size: 18px;
  font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
  font-feature-settings: normal;
  text-align: center;
  margin-top: 0.1em;
}
@media only screen and (max-width: 767px) {
  .top_concept_01 {
    margin-top: 6.5vw;
    padding: 8vw 0 8vw 0;
  }
  h4.top_h4_ttl {
    font-size: 6.9vw;
    letter-spacing: 0;
  }
  .top_concept_img_01 {
    width: 82.13333vw;
    margin: 10vw auto 0 auto;
  }
  p.top_concept_img_01_txt {
    font-size: 3.7vw;
  }
}
.top_concept_mov_wrap {
  width: 959px;
  margin: 30px auto 0 auto;
  display: flex;
  justify-content: space-between;
}
.top_concept_mov {
  width: 310px;
  margin: 0;
  text-align: center;
}
.top_concept_mov h5 {
  width: 150px;
  height: 32px;
  background-color: #c7000b;
  color: #ffffff;
  border-radius: 16px;
  font-size: 20px;
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0 auto;
}
.top_concept_mov video {
  width: 100%;
  height: auto;
  margin-top: 10px;
}
.top_concept_mov p {
  font-size: 16px;
  line-height: 1.4em;
  margin-top: 0.05em;
}
@media only screen and (max-width: 767px) {
  .top_concept_mov_wrap {
    width: 82.66666vw; /*310*/
    margin: 0 auto 0 auto;
    display: block;
  }
  .top_concept_mov {
    width: 100%;
    margin-top: 10vw;
  }
  .top_concept_mov h5 {
    width: 40vw;
    height: 8.53333vw;
    border-radius: 4.26666vw;
    font-size: 5.33333vw;
  }
  .top_concept_mov video {
    margin-top: 2.66666vw;
  }
  .top_concept_mov p {
    font-size: 4.26666vw;
  }
}
.top_concept_02 {
  padding: 80px 0 60px 0;
  position: relative;
  overflow-x: hidden;
}
.top_concept_02 h4 {
  font-size: 30px;
  line-height: 1.5em;
  letter-spacing: 0.08em;
  text-align: center;
  margin-top: 100px;
}
.top_concept_02 h4.first_child {
  margin-top: 0;
}
.top_concept_02 h4.second_child {
  margin-top: 100px;
}
.top_concept_02 h4.third_child {
  margin-top: 100px;
}
.top_concept_02 p {
  font-size: 20px;
  line-height: 2.3em;
  letter-spacing: 0.08em;
  margin-top: 20px;
  text-align: center;
}
.top_concept_bg_01 {
  width: 371px;
  position: absolute;
  top: 340px;
  left: 50%;
  transform: translateX(calc(-50% + 630px)) translateY(0);
}
.top_concept_bg_01_sp {
  display: none;
}
.top_concept_bg_02_sp {
  display: none;
}
.top_concept_bg_03_sp {
  display: none;
}
@media only screen and (max-width: 767px) {
  .top_concept_02 {
    width: 90.13333vw;
    padding: 26.66666vw 0 50.66666vw 0;
    margin: 0 auto;
    overflow: visible;
  }
  .top_concept_02 h4 {
    font-size: 5.2vw;
    margin-top: 0;
  }
  .top_concept_02 h4.first_child {
    margin-top: 0;
  }
  .top_concept_02 h4.second_child {
    /*margin-top: 10.66666vw;*/
    margin-top: 40vw;
  }
  .top_concept_02 h4.third_child {
    margin-top: 40vw;
  }
  .top_concept_02 p {
    font-size: 3.73333vw;
    margin-top: 4vw;
    text-align: justify;
    text-justify: inter-ideograph;
  }
  .top_concept_bg_01 {
    display: none;
  }
  .top_concept_bg_01_sp {
    display: block;
    width: 32.26666vw;
    position: absolute;
    top: -9.2vw;
    left: 50%;
    transform: translateX(calc(-50% - 30vw)) translateY(0);
    z-index: 5;
  }
  .top_concept_bg_02_sp {
    display: block;
    width: 48.53333vw;
    position: absolute;
    top: 107vw;
    left: 50%;
    transform: translateX(calc(-50% + 18vw)) translateY(0);
    z-index: 5;
  }
  .top_concept_bg_03_sp {
    display: block;
    width: 56vw;
    position: absolute;
    bottom: 8vw;
    left: 50%;
    transform: translateX(-50%) translateY(0);
    z-index: 5;
  }
}
/* #top_Ank_CM
-----------------------------*/
#top_Ank_CM {}
#top_Ank_CM a.X_link {
  display: inline-block;
  width: 240px;
  height: 60px;
  border-radius: 30px;
  background-color: #ffffff;
  overflow: visible;
  color: #333333;
  opacity: 1;
  transition: opacity .3s ease;
  font-size: 16px;
  border: 2px solid #333333;
  letter-spacing: 0.15em;
  background-image: url(../image/icon_X.svg);
  background-position: right 40px center;
  background-size: 30px auto;
  background-repeat: no-repeat;
  padding-right: 2.5em;
}
#top_Ank_CM a.X_link span {
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
}
.top_CM {
  padding: 50px 0 40px 0;
  background-image: url(../image/top/top_bg_01.svg);
  background-position: center top;
  background-size: 188px auto;
  background-repeat: repeat;
  color: #ffffff;
}
.top_CM_mov_wrap {
  width: 960px;
  margin: 55px auto 0 auto;
  display: flex;
  justify-content: space-between;
  /*justify-content: center;*/
}
.top_CM_mov {
  width: 451px;
  text-align: center;
}
.top_CM_mov p {
  font-size: 24px;
  font-weight: 600;
}
.top_CM_mov p small {
  font-size: 20px;
}
.top_CM_mov img {
  margin-top: 10px;
}
.top_CM_img_01 {}
.top_CM_img_02 {}
p.top_h3_ttl_renew {
  font-size: 35px;
  text-align: center;
  line-height: 1.4em;
  letter-spacing: 0.08em;
  color: #ffffff;
  margin-bottom: 0.5em;
}
p.top_h3_ttl_renew span {
  font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
  font-feature-settings: normal;
}
p.top_h3_ttl_renew_s {
  display: block;
  width: 800px;
  font-size: 20px;
  text-align: left;
  line-height: 1.6em;
  letter-spacing: 0.08em;
  color: #ffffff;
  margin: 0 auto 2em auto;
}
.top_link_X_char_story_wrap {
  width: 800px;
  margin: 40px auto 40px auto;
  display: flex;
  justify-content: space-between;
  flex-direction: row-reverse;
  font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
  color: #ffffff;
}
.top_link_X_char_story_txt {
  width: 515px;
}
.top_link_X_char_story_txt p {
  font-size: 18px;
  line-height: 1.8em;
  text-align: justify;
  text-justify: inter-ideograph;
}
.top_link_X_char_story_txt p small {
  font-size: 15px;
}
.top_link_X_char_story_img {
  width: 240px;
}
.top_link_X_char_img_01 {
  width: 192px;
  margin: 40px auto 0 auto;
}
.top_link_X_char_story_img p {
  font-size: 18px;
  font-weight: bold;
  text-align: center;
}
.top_link_X_char_story_img p a {
  color: #ffffff;
  text-decoration: underline;
}
.top_link_X_char_story_img p small {
  font-size: 15px;
  font-weight: normal;
}
@media only screen and (max-width: 767px) {
  #top_Ank_CM {}
  /*.top_CM {
    padding: 8vw 0 7.5vw 0;
  }
  .top_CM_mov_wrap {
    width: 84vw;
    margin: 0 auto 0 auto;
    display: block;
  }
  .top_CM_mov {
    width: 100%;
  }
  .top_CM_mov p {
    font-size: 4.48vw;
  }
  .top_CM_mov p small {
    font-size: 3.73333vw;
  }
  .top_CM_mov img {
    margin-top: 2vw;
  }
  .top_CM_img_01 {
    margin-top: 8vw;
  }
  .top_CM_img_02 {
    margin-top: 10vw;
  }*/
  #top_Ank_CM a.X_link {
    display: inline-block;
    width: 44.8vw;
    height: 11.2vw;
    border-radius: 5.6vw;
    font-size: 2.98666vw;
    border: 0.373333vw solid #333333;
    background-position: right 7.46666vw center;
    background-size: 5.6vw auto;
  }
  #top_Ank_CM a.X_link span {}
  .top_CM {
    padding: 8vw 0 7.5vw 0;
  }
  .top_CM_mov_wrap {
    width: 84vw;
    margin: 0 auto 0 auto;
    display: block;
  }
  .top_CM_mov {
    width: 100%;
  }
  .top_CM_mov p {
    font-size: 4.48vw;
  }
  .top_CM_mov p small {
    font-size: 3.73333vw;
  }
  .top_CM_mov img {
    margin-top: 2vw;
  }
  .top_CM_img_01 {
    margin-top: 8vw;
  }
  .top_CM_img_02 {
    margin-top: 10vw;
  }
  p.top_h3_ttl_renew {
    font-size: 5.33333vw;
  }
  p.top_h3_ttl_renew span {}
  p.top_h3_ttl_renew_s {
    width: 100%;
    font-size: 4vw;
    text-align: center;
  }
  .top_link_X_char_story_wrap {
    width: 89.33333vw; /*335*/
    margin: 8vw auto 8vw auto;
    display: block;
  }
  .top_link_X_char_story_txt {
    width: 100%;
    margin-top: 1em;
  }
  .top_link_X_char_story_txt p {
    font-size: 3.73333vw;
  }
  .top_link_X_char_story_txt p small {
    font-size: 3.73333vw;
  }
  .top_link_X_char_story_img {
    width: 100%;
  }
  .top_link_X_char_img_01 {
    width: 33.33333vw;
    margin: 0 auto 0 auto;
  }
  .top_link_X_char_story_img p {
    font-size: 4vw;
  }
  .top_link_X_char_story_img p a {}
  .top_link_X_char_story_img p small {
    font-size: 3.73333vw;
  }
}
/* #top_Ank_lineup
-----------------------------*/
#top_Ank_lineup {}
.top_lineup {
  padding: 100px 0 70px 0;
  /*background-image: url(../image/top/top_lineup_bg_01.jpg);*/
  background-image: url(../image/top/top_exBG_01.jpg);
  background-position: center top;
  background-size: 3840px auto;
  background-repeat: repeat;
  position: relative;
}
.top_lineup_list_wrap {
  width: 999px;
  margin: 15px auto 0 auto;
  display: flex;
  flex-wrap: wrap;
}
.top_lineup_list {
  width: 295px;
  margin: 70px 19px 0 19px;
  padding: 15px 0;
  background-color: rgba(255, 255, 255, 0.7);
  ;
  text-align: center;
}
.top_lineup_list h4 {
  font-size: 20px;
  font-weight: 700;
  letter-spacing: 0.1em;
}
.top_lineup_list h4 small {
  font-size: 20px;
  /*font-size: 15px;
  font-weight: 500;
  vertical-align: 0.12em;*/
}
.top_lineup_list h4 span {
  font-size: 16px;
  vertical-align: 0.1em;
}
.top_lineup_img {
  width: 250px;
  margin: 5px auto 0 auto;
  filter: drop-shadow(4.5px 4.5px 4.5px rgba(000, 000, 000, 0.4));
}
.top_lineup_list hr {
  border: none;
  border-top: 2px dotted #333333;
  width: 250px;
  margin: 20px auto 5px auto;
}
.top_lineup_mat {
  width: 255px;
  margin: 0 auto;
  position: relative;
}
.top_lineup_time {
  width: 66px;
  position: absolute;
  top: 50%;
  right: 0px;
  transform: translateY(-50%);
}
.top_lineup_list p {
  font-size: 15px;
  line-height: 1.5em;
  margin-top: 1px;
  vertical-align: 0.04em;
}
.top_lineup_list p.top_lineup_list-small {
  font-size: 13px;
}
.top_lineup_bg_wrap_01 {
  width: 100%;
  position: absolute;
  z-index: 4;
  top: -77px;
  left: 0;
  overflow-y: visible;
}
.top_lineup_bg_img_01 {
  width: 311px;
  position: absolute;
  z-index: 5;
  top: 0;
  left: 50%;
  transform: translateX(calc(-50% - 650px)) translateY(0);
  overflow-x: hidden;
}
.top_lineup_bg_wrap_02 {
  width: 100%;
  /*height: 296px;*/
  position: absolute;
  top: 550px;
  left: 0;
  overflow-y: visible;
}
.top_lineup_bg_img_02 {
  width: 296px;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(calc(-50% + 650px)) translateY(0);
  overflow-x: hidden;
}
.top_lineup_bg_wrap_03 {
  width: 100%;
  /*height: 332px;*/
  position: absolute;
  bottom: 920px;
  left: 0;
  overflow-y: visible;
}
.top_lineup_bg_img_03 {
  width: 332px;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(calc(-50% - 700px)) translateY(0);
  overflow-x: hidden;
}
.top_lineup_bg_wrap_04 {
  width: 100%;
  /*height: 502px;*/
  position: absolute;
  bottom: 530px;
  left: 0;
  overflow-y: visible;
}
.top_lineup_bg_img_04 {
  width: 502px;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(calc(-50% + 650px)) translateY(0);
  overflow-x: hidden;
}
@media only screen and (max-width: 767px) {
  #top_Ank_lineup {}
  .top_lineup {
    background-image: url(../image/top/top_lineup_bg_01.jpg);
    background-size: 1920px auto;
    padding: 14.66666vw 0 10.66666vw 0;
  }
  .top_lineup_list_wrap {
    width: 78.66666vw;
    margin: 2.66666vw auto 0 auto;
    display: block;
  }
  .top_lineup_list {
    width: 100%;
    margin: 5.33333vw 0 0 0;
    padding: 6.66666vw 0 5.33333vw 0;
  }
  .top_lineup_list h4 {
    font-size: 5.33333vw;
  }
  .top_lineup_list h4 small {
    font-size: 5.33333vw;
    /*font-size: 4vw;*/
  }
  .top_lineup_list h4 span {
    font-size: 4.26666vw;
  }
  .top_lineup_img {
    width: 64.53333vw;
    margin: 1.33333vw auto 0 auto;
    filter: drop-shadow(1.2vw 1.2vw 1.2vw rgba(000, 000, 000, 0.4));
  }
  .top_lineup_list hr {
    border: none;
    border-top: 0.53333vw dotted #333333;
    width: 68vw;
    margin: 5.33333vw auto 1.33333vw auto;
  }
  .top_lineup_mat {
    width: 68vw;
  }
  .top_lineup_time {
    width: 17vw;
    right: 0vw;
  }
  .top_lineup_list p,
.top_lineup_list p.top_lineup_list-small {

    font-size: 4vw;
    margin-top: 0.5vw;
  }
}
/* #top_Ank_voice
-----------------------------*/
#top_Ank_voice {}
.top_voice {
  padding: 85px 0 100px 0;
}
.top_voice_list_wrap_out {
  width: 990px;
  margin: 40px auto 0 auto;
  position: relative;
}
.top_voice_list_wrap {
  width: 990px;
  margin: 0 auto 0 auto;
  display: flex;
  flex-wrap: wrap;
}
.top_voice_c01 {
  background-color: #eeb2b5;
}
.top_voice_c02 {
  background-color: #fee5b7;
}
.top_voice_c03 {
  background-color: #d5b1c3;
}
.top_voice_c04 {
  background-color: #bbdfb0;
}
.top_voice_c05 {
  background-color: #aad2b8;
}
.top_voice_list {
  width: 300px;
  height: 300px;
  margin: 45px 15px 0 15px;
  border-radius: 50%;
  /*display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;*/
  padding: 30px 23px 0 23px;
  box-sizing: border-box;
  position: relative;
}
.left, .right {
  height: 240px;
  width: 50px;
}
.left {
  float: left;
  shape-outside: polygon(0% 0%, 0% 100%, 100% 100%, 0% 70%, 0% 30%, 100% 0%);
}
.right {
  float: right;
  shape-outside: polygon(100% 0%, 100% 100%, 0% 100%, 100% 70%, 100% 30%, 0% 0%);
}
.top_voice_list p {
  font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
  font-feature-settings: normal;
  font-size: 16px;
  line-height: 1.8em;
  margin: 0;
  word-break: break-word;
  letter-spacing: -0.005em;
}
.top_voice_list p.author {
  margin-top: 16px;
  text-align: center;
}
.top_voice_icon_01 {
  width: 66px;
  position: absolute;
  right: 30px;
  bottom: 15px;
}
.top_voice_icon_02 {
  width: 77px;
  position: absolute;
  right: 20px;
  bottom: 15px;
}
.top_voice_icon_03 {
  width: 109px;
  position: absolute;
  left: 98px;
  top: 18px;
}
.top_voice_icon_04 {
  width: 111px;
  position: absolute;
  left: 89px;
  top: -5px;
}
.top_voice_icon_05 {
  width: 116px;
  position: absolute;
  right: 25px;
  bottom: 60px;
}
@media only screen and (max-width: 767px) {
  #top_Ank_voice {}
  .top_voice {
    padding: 10.66666vw 0 13.33333vw 0;
  }
  .top_voice_list_wrap_out {
    width: 86vw;
    margin: 4vw auto 0 auto;
  }
  .top_voice_list_wrap {
    width: 86vw;
    margin: 0 auto 0 auto;
    display: block;
  }
  .top_voice_list {
    width: 70.01166vw;
    height: 70.01166vw;
    margin: 10.50175vw 0 0 0;
    padding: 7.00116vw 5.36756vw 0 5.36756vw;
    box-sizing: border-box;
    position: relative;
  }
  .left, .right {
    height: 56.00933vw;
    width: 11.66861vw;
  }
  .left {}
  .right {}
  .top_voice_list p {
    font-size: 3.73395vw;
  }
  .top_voice_list p.author {
    font-size: 3.73395vw;
  }
  .top_voice_c01 {}
  .top_voice_c02 {
    margin-left: 16vw;
  }
  .top_voice_c03 {}
  .top_voice_c04 {
    margin-left: 16vw;
  }
  .top_voice_c05 {}
  .top_voice_icon_01 {
    width: 15.40256vw;
    right: 7.00116vw;
    bottom: 3.5005vw;
  }
  .top_voice_icon_02 {
    width: 17.96966vw;
    right: 4.66744vw;
    bottom: 3.5005vw;
  }
  .top_voice_icon_03 {
    width: 25.43757vw;
    left: 22.87047vw;
    top: 4.2007vw;
  }
  .top_voice_icon_04 {
    width: 25.90431vw;
    left: 20.77012vw;
    top: -1.16686vw;
  }
  .top_voice_icon_05 {
    width: 27.07117vw;
    right: 5.8343vw;
    bottom: 14.00233vw;
  }
}
/* #top_Ank_recipe
-----------------------------*/
#top_Ank_recipe {}
.top_recipe {
  padding: 80px 0 100px 0;
  background-image: url(../image/top/top_exBG_02.jpg);
  background-position: center top;
  background-size: 3840px auto;
  background-repeat: repeat;
  color: #ffffff;
  position: relative;
}
.top_recipe_but_list_wrap {
  margin-top: 30px;
}
.top_recipe_but_list {
  width: 670px;
  margin: 0 auto;
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
}
.top_recipe_but {
  text-align: center;
}
.top_recipe_but a {
  font-size: 18px;
  width: 200px;
  height: 50px;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 25px;
  border: 2px solid #333333;
  margin: 20px 10px 0 10px;
  background-color: #ffffff;
  transition: all 0.3s ease;
  color: #333333;
}
@media only screen and (min-width: 768px) {
  .top_recipe_but a:hover {
    background-color: #fbf000;
    opacity: 1;
  }
}
@media only screen and (max-width: 767px) {
  #top_Ank_recipe {}
  .top_recipe {
    background-image: url(../image/top/top_bg_01.svg);
    background-size: 188px auto;
    padding: 10.66666vw 0 16vw 0;
  }
  .top_recipe_but_list_wrap {
    margin-top: 8vw;
  }
  .top_recipe_but_list {
    width: 93.33333vw;
  }
  .top_recipe_but {}
  .top_recipe_but a {
    font-size: 3.73333vw;
    width: 42.66666vw;
    height: 10.66666vw;
    border-radius: 5.33333vw;
    border: 2px solid #333333;
    margin: 4vw 2vw 0 2vw;
  }
}
h4.top_recipe_ttl {
  font-size: 30px;
  font-weight: 600;
  text-align: center;
  margin-top: 40px;
  padding-top: 40px;
}
.top_recipe_list {
  width: 960px;
  margin: 20px auto 0 auto;
  display: flex;
  flex-wrap: wrap;
}
.top_recipe_box {
  width: 220px;
  margin: 20px 10px 0 10px;
  background-color: #ffffff;
  border-radius: 20px;
}
.top_recipe_box a {
  opacity: 1;
  transition: opacity 0.3s ease;
}
@media only screen and (min-width: 768px) {
  .top_recipe_box a:hover {
    opacity: 0.7;
  }
}
.top_recipe_name {
  height: 68px;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  color: #333333;
}
.top_recipe_img {
  width: 100%;
}
.top_recipe_sub {
  height: 62px;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  color: #333333;
  letter-spacing: 0.08em;
  line-height: 1.3em;
  font-size: 18px;
}
p.top_recipe_01 {
  font-size: 15px;
  line-height: 1.5em;
  letter-spacing: 0.08em;
}
p.top_recipe_02 {
  font-size: 24px;
  font-weight: 700;
  line-height: 1.2em;
  font-feature-settings: "palt";
  letter-spacing: 0.08em;
}
p.top_recipe_02 small {
  font-size: 18px;
  vertical-align: 0.12em;
}
.top_recipe_sub p {
  font-size: 18px;
  letter-spacing: 0.08em;
  line-height: 1.3em;
}
@media only screen and (max-width: 767px) {
  h4.top_recipe_ttl {
    font-size: 5.33333vw;
    margin-top: 8vw;
    padding-top: 8vw;
  }
  .top_recipe_list {
    width: 93.33333vw; /*350*/
    margin: 2.66666vw auto 0 auto;
    display: flex;
    flex-wrap: wrap;
  }
  .top_recipe_box {
    width: 42.66666vw;
    margin: 5.33333vw 2vw 0 2vw;
    border-radius: 3.86666vw;
  }
  .top_recipe_box a {}
  .top_recipe_name {
    height: 13.33333vw;
  }
  .top_recipe_img {}
  .top_recipe_sub {
    height: 12vw;
    font-size: 3.46666vw;
  }
  p.top_recipe_01 {
    font-size: 2.90666vw;
  }
  p.top_recipe_02 {
    font-size: 4.64vw;
  }
  p.top_recipe_02 small {
    font-size: 3vw;
  }
  .top_recipe_sub p {
    font-size: 3.46666vw;
    letter-spacing: 0.08em;
    line-height: 1.3em;
  }
}
.ttl_tume {
  transform: scale(0.8, 1);
  white-space: nowrap;
}
.ttl_c01 {
  color: #ec6901;
}
.ttl_c02 {
  color: #77ba36;
}
.ttl_c03 {
  color: #00984f;
}
.ttl_c04 {
  color: #b8381f;
}
.ttl_c05 {
  color: #e86462;
}
.ttl_c06 {
  color: #742528;
}
.ttl_c07 {
  color: #383638;
}
.ttl_c08 {
  color: #e09e0a;
}
.ttl_c09 {
  color: #b2afaa;
}
.ttl_c10 {
  color: #9f1666;
}
.top_recipe_bg_wrap_01 {
  width: 100%;
  /*height: 360px;*/
  position: absolute;
  top: -170px;
  left: 0;
  overflow-y: visible;
}
.top_recipe_bg_img_01 {
  width: 360px;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(calc(-50% - 700px)) translateY(0);
  overflow-x: hidden;
}
.top_recipe_bg_wrap_02 {
  width: 100%;
  /*height: 437px;*/
  position: absolute;
  top: 1050px;
  left: 0;
  overflow-y: visible;
}
.top_recipe_bg_img_02 {
  width: 437px;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(calc(-50% + 730px)) translateY(0);
  overflow-x: hidden;
}
.top_recipe_bg_wrap_03 {
  width: 100%;
  /*height: 392px;*/
  position: absolute;
  top: 1750px;
  left: 0;
  overflow-y: visible;
}
.top_recipe_bg_img_03 {
  width: 392px;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(calc(-50% - 700px)) translateY(0);
  overflow-x: hidden;
}
.top_recipe_bg_wrap_04 {
  width: 100%;
  /*height: 408px;*/
  position: absolute;
  bottom: 1600px;
  left: 0;
  overflow-y: visible;
}
.top_recipe_bg_img_04 {
  width: 408px;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(calc(-50% + 700px)) translateY(0);
  overflow-x: hidden;
}
.top_recipe_bg_wrap_05 {
  width: 100%;
  /*height: 399px;*/
  position: absolute;
  bottom: 800px;
  left: 0;
  overflow-y: visible;
}
.top_recipe_bg_img_05 {
  width: 399px;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(calc(-50% - 730px)) translateY(0);
  overflow-x: hidden;
}
/* .top_link_but
-----------------------------*/
.top_link_but {
  padding: 80px 0;
}
@media only screen and (max-width: 767px) {
  .top_link_but {
    padding: 8vw 0;
  }
}
/* TOP common
-----------------------------*/
h3.top_h3_ttlBG_B {
  width: 360px;
  height: 70px;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 30px;
  font-weight: 600;
  letter-spacing: 0.08em;
  background-image: url(../image/top/top_h3_ttlBG_B.svg);
  background-position: center center;
  background-size: 360px auto;
  background-repeat: no-repeat;
  margin: 0 auto;
}
h3.top_h3_ttlBG_W {
  width: 360px;
  height: 70px;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 30px;
  font-weight: 600;
  letter-spacing: 0.08em;
  background-image: url(../image/top/top_h3_ttlBG_W.svg);
  background-position: center center;
  background-size: 360px auto;
  background-repeat: no-repeat;
  margin: 0 auto;
  color: #ffffff;
}
@media only screen and (max-width: 767px) {
  h3.top_h3_ttlBG_B {
    width: 57.6vw; /*216*/
    height: 11.2vw; /*42*/
    font-size: 4.8vw; /*18*/
    background-size: 57.6vw auto;
  }
  h3.top_h3_ttlBG_W {
    width: 57.6vw; /*216*/
    height: 11.2vw; /*42*/
    font-size: 4.8vw; /*18*/
    background-size: 57.6vw auto;
  }
}
/**/
/**/
/**/
/**/
/**/
/* フェードアニメーション
-----------------------------*/
.f_01 {
  opacity: 0;
  transform: translateY(50px);
  transition: all 3s ease;
}
.f_01.view {
  opacity: 1;
  transform: translateY(0);
}
/* スライドインアニメーション
-----------------------------*/
.s_01 {
  opacity: 1;
  transform: translateX(100vw);
  transition: all 1s ease;
}
.s_01.view {
  opacity: 1;
  transform: translateX(0);
}
/* ふわふわフェードアニメーション
-----------------------------*/
.fluffy1 {
  animation: fluffy1 7s ease infinite;
}
.fluffy2 {
  animation: fluffy2 7s ease infinite;
}
@keyframes fluffy1 {
  0% {
    transform: translateY(-5px)
  }
  25% {
    transform: translateY(5px)
  }
  50% {
    transform: translateY(-5px)
  }
  75% {
    transform: translateY(5px)
  }
  100% {
    transform: translateY(-5px)
  }
}
@keyframes fluffy2 {
  0% {
    transform: translateY(5px)
  }
  25% {
    transform: translateY(-5px)
  }
  50% {
    transform: translateY(5px)
  }
  75% {
    transform: translateY(-5px)
  }
  100% {
    transform: translateY(5px)
  }
}
/* modal
-----------------------------*/
#modal_bg {
  width: 100vw;
  height: 100vh;
  background-color: #000000;
  opacity: 0.7;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 500;
  display: none;
}
.Commit_box {
  width: 46.37681vw;
  height: 23.1884vw;
  background-color: #fffaf1;
  position: fixed;
  left: 50%;
  top: 50%;
  transform: translateY(-50%) translateX(-50%);
  z-index: 501;
  display: none;
}
#modal_bg.view {}
.Commit_box.view {}
.Commit_box_inner {
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  position: relative;
}
.seq_close_x {
  width: 1.95652vw;
  position: absolute;
  top: 1vw;
  right: 1vw;
  cursor: pointer;
}
.Commit_txt {
  font-size: 2.31884vw;
  font-weight: 500;
  line-height: 1.7em;
  letter-spacing: 0.05em;
  margin-left: 2.17391vw;
  color: #5a2e00;
}
@media screen and (max-width: 767px) {
  #modal_bg {}
  .Commit_box {
    width: 85.33333vw;
    height: 42.66666vw;
  }
  .Commit_box_inner {}
  .seq_close_x {
    width: 3.6vw;
    top: -1vw;
    right: 2vw;
  }
  .Commit_txt {
    font-size: 4.26666vw;
    margin-left: 4vw;
  }
}
/**/
.seqsday_box {
  width: 730px;
  height: 530px;
  background-color: #fffaf1;
  position: fixed;
  left: 50%;
  top: 50%;
  transform: translateY(-50%) translateX(-50%);
  z-index: 501;
  display: none;
}
.seqsday_box.view {}
.seqsday_box_inner {
  font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
  font-feature-settings: normal;
  font-feature-settings: "palt";
  text-align: justify;
  text-justify: inter-ideograph;
  width: 100%;
  height: 100%;
  padding: 80px 60px 0 60px;
  display: flex;
  flex-direction: row-reverse;
  justify-content: space-between;
}
.seqsday_close_x {
  width: 38px;
  position: absolute;
  top: 25px;
  right: 30px;
  cursor: pointer;
}
.seqsday_img {
  width: 100%;
  margin: 0;
  padding: 0;
}
@media screen and (max-width: 767px) {
  .seqsday_box {
    width: 94.66666vw;
    height: auto;
    max-height: 85vh;
    overflow-y: scroll;
  }
  .seqsday_box_inner {
    display: block;
    padding: 10vw 6vw;
  }
  .seqsday_close_x {
    width: 5.6vw;
    top: 2.66666vw;
    right: 4vw;
  }
}
p.m_txt_01 {
  font-size: 20px;
  font-weight: bold;
  line-height: 1.6em;
  letter-spacing: 0.1em;
  margin-top: 1em;
}
p.m_txt_01 span {
  font-weight: normal;
}
.m_main_box {}
.m_main_img {
  width: 226px;
  margin: 0 0 0 0;
}
.m_main_txt {
  width: calc(100% - 226px - 40px);
  margin-top: 40px;
}
.m_main_txt p {
  font-size: 20px;
  line-height: 1.7em;
  letter-spacing: 0.1em;
  margin-top: 1em;
}
p.x_name {
  font-weight: bold;
  margin-top: 0;
}
@media screen and (max-width: 767px) {
  p.m_txt_01 {
    font-size: 3.73333vw;
  }
  .m_main_box {
    display: block;
    margin-top: 5.3vw;
  }
  .m_main_img {
    width: 42.13333vw;
    margin: 0 auto 0 auto;
  }
  .m_main_txt {
    width: 84vw;
    margin: 6vw auto 0 auto;
  }
  .m_main_txt p {
    font-size: 3.73333vw;
    margin-top: 0;
  }
  p.x_name {
    white-space: nowrap;
    margin-top: 0;
  }
  .m_main_img img {}
}
/* 周年要素移植
-----------------------------*/
#title_box {
  width: 100%;
  height: 395px;
  position: relative;
}
.contents_inner {
  width: 915px;
  margin: 0 auto;
  position: relative;
}
#title_box .top_p {
  position: absolute;
  top: 34px;
  right: -20px;
  opacity: 0;
}
#title_box {
  height: 541px;
  background: #FFF url(../image/top/title_bk02.jpg) no-repeat;
  background-position: 50% 0;
  -moz-background-size: cover;
  background-size: cover;
  opacity: 0;
}
#title_box_inner {
  width: 100%;
  height: 541px;
  background: url(../image/top/title_l_bk02.png) left bottom repeat-x;
  overflow: hidden;
}
#title_box_inner .contents_inner {
  height: 541px;
}
#title_box_b {
  width: 100%;
  height: 448px;
  background: #fff3e6 url(../image/top/title_bk.jpg) no-repeat;
  background-position: 50% 0;
  -moz-background-size: cover;
  background-size: cover;
  position: relative;
}
#title_box_inner_b {
  width: 100%;
  height: 448px;
  background: url(../image/top/title_l_bk.png) left bottom repeat-x;
  overflow: hidden;
}
#title_box h2 {
  position: absolute;
  top: 45px;
  left: 20px;
  opacity: 0;
}
#title_box h2 img {
  width: 410px;
  height: auto;
}
#title_box h3 {
  position: absolute;
  top: 326px;
  left: 83px;
}
#title_box .top01 {
  position: absolute;
  top: 0;
  /*right:-30px;*/
  right: 100px;
  opacity: 0;
}
#title_box .t_hot {
  position: absolute;
  top: 0;
  right: 0;
  opacity: 0;
}
#title_box .banner {
  display: block;
  position: absolute;
  bottom: -170px;
  left: 350px;
  opacity: 0;
}
#title_box .banner img {
  width: 100%;
  height: auto;
  -webkit-transition: 0.3s;
  -o-transition: 0.3s;
  -moz-transition: 0.3s;
  transition: 0.3s;
}
#title_box .banner img:hover {
  opacity: 0.7;
  -webkit-transition: 0.3s;
  -o-transition: 0.3s;
  -moz-transition: 0.3s;
  transition: 0.3s;
}
#title_box .top03 {
  position: absolute;
  top: 0;
  left: -28px;
  opacity: 0;
}
#title_box .eco_txt {
  position: absolute;
  bottom: 131px;
  left: 130px;
  opacity: 0;
}
#title_box .eco_btn {
  position: absolute;
  bottom: 88px;
  left: 70px;
  opacity: 0;
}
#title_box p.btn {
  position: absolute;
  top: 100px;
  right: -100px;
  opacity: 0;
}
#title_box a {
  opacity: 1;
  transition: 0.3s;
}
#title_box a:hover {
  opacity: 0.7;
  transition: 0.3s;
}
@media screen and (max-width: 767px) {
  #header_img {
    position: relative;
    margin-bottom: 0;
  }
  #header_img img {
    width: 100%;
  }
  #header_img a {
    display: block;
    /*padding: 0 4%;*/
  }
  #header_img a + a {
    padding-top: 20px;
  }
  #header_img h1 + a {
    padding-top: 0;
  }
  #header_img p.sns {
    text-align: center;
  }
  #header_img p.sns a {
    height: 8vw;
    font-size: 4vw;
    line-height: 8vw;
    color: #000;
    font-weight: bold;
    text-decoration: none;
    padding: 1vw 0 8vw;
    margin: 0;
    display: block;
  }
  #header_img p.sns a span {
    height: 8vw;
    padding-left: 10vw;
    background: url("../image/top/icon_x.png") left center no-repeat;
    -moz-background-size: auto 8vw;
    background-size: auto 8vw;
    display: inline-block;
  }
}
.new_schau {
  width: 100%;
  height: 3400px; /*3130px*/
  overflow: hidden;
  position: relative;
  background: #000;
}
.new_schau img {
  width: 100%;
  height: auto;
}
@media screen and (min-width: 768px) {
  .new_schau::before {
    content: "";
    width: 100%;
    height: 72px;
    background: #FFF;
    position: absolute;
    top: 0;
    left: 0;
  }
  .new_schau > div {
    width: 1748px;
    height: 3400px; /*3130px*/
    background: url("../image/top/new_schau/new_schau_bk3.jpg") center top no-repeat #000;
    background-size: 1748px auto;
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%)
  }
}
.new_schau h1 {
  width: 237px;
  position: absolute;
  top: 125px;
  left: 50%;
  transform: translateX(-600px)
}
.new_schau h2, .new_schau p {
  width: 632px;
  margin: 0 auto;
}
.new_schau h2 {
  margin: 590px auto 60px
}
.new_schau p {
  margin-bottom: 170px;
}
@media screen and (min-width: 768px) {
  .new_schau ul {
    width: 1125px;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    flex-flow: wrap;
  }
  .new_schau ul li {
    width: 560px;
  }
  .new_schau ul li + li {
    margin-top: 50px;
  }
  .new_schau ul li:nth-of-type(2) {
    margin-top: 190px;
  }
  .new_schau ul li + li:nth-of-type(odd) {
    margin-top: -160px;
  }
}
.new_schau ul a {
  display: block;
}
.new_schau .sns_box {
  width: 100%;
  height: 175px;
  padding-top: 56px;
  display: flex;
  justify-content: center;
  background: #000;
  position: absolute;
  bottom: 0;
  left: 0;
}
.new_schau .sns_box img {
  width: auto;
  height: 58px;
}
.new_schau .sns_box a + a {
  margin-left: 45px;
}
@media screen and (min-width: 768px) {
  .new_schau a {
    transition: .3s all;
  }
  .new_schau ul a {
    transition: .6s all;
  }
  .new_schau .sns_box a:hover {
    opacity: .6;
  }
  .new_schau ul a:hover {
    transform: translate(3px, 5px)
  }
}
.new_schau .in, .new_schau ul li {
  opacity: 0;
  transform: translateY(50px);
  transition: 1s all ease-out;
}
.new_schau .in.view, .new_schau ul li.view {
  opacity: 1;
  transform: translateY(0);
}
.new_schau .in2, .new_schau .in3 {
  opacity: 0;
  transform: translateY(50px);
  transition: 1s all ease-out;
}
.new_schau .in2.view, .new_schau .in3.view {
  opacity: 1;
  transform: translateY(0);
}
@media screen and (max-width: 767px) {
  .new_schau {
    width: 100%;
    height: auto;
  }
  .new_schau > div {
    width: 100%;
    height: auto;
    background: url("../image/top/new_schau/new_schau_bk3_sp.jpg") center top no-repeat #000;
    background-size: 100% auto;
    padding: 1px;
    padding-bottom: 24vw;
  }
  .new_schau h1 {
    width: 100%;
    position: static;
    top: auto;
    left: auto;
    transform: translateX(0)
  }
  .new_schau h2, .new_schau p {
    width: 100%;
  }
  .new_schau h2 {
    margin: 26.5vw auto 7.5vw
  }
  .new_schau p {
    margin-bottom: 11.5vw;
  }
  .new_schau ul {
    width: 100%;
    margin-bottom: 15vw
  }
  .new_schau ul li {
    width: 100%;
  }
  .new_schau .sns_box {
    width: 100%;
    height: 24vw;
    padding-top: 7vw;
  }
  .new_schau .sns_box img {
    height: 9.5vw;
  }
  .new_schau .sns_box a + a {
    margin-left: 8vw;
  }
  .new_schau .in, .new_schau ul li {
    transform: translateY(5vw);
  }
}
/* グローバルメニューの隙間調整 */
@media only screen and (min-width: 768px) {
  .link_hover:hover {
    opacity: 0.5;
  }
  .globalBlandHeader_flex {
    height: 70px !important;
  }
  #globalBlandHeader:after {
    top: 70px !important;
  }
}
/**/
.position_relative_wrap {
  position: relative;
}
.GoToTop {
  width: 74.63768vw;
  height: 1.62318vw;
  display: flex;
  justify-content: right;
  align-items: center;
  font-family: "Noto Sans JP", sans-serif;
  margin: 0.7vw auto 0 auto;
  text-align: right;
}
.GoToTop.ov {
  position: absolute;
  text-align: right;
  left: 50%;
  bottom: 0.7vw;
  transform: translateX(-50%);
}
.GoToTop a {
  color: #000000;
  font-size: 1.31884vw;
  background-image: url(/seq/image/all_icon_goTop.svg);
  background-position: right center;
  background-size: 1.62318vw auto;
  background-repeat: no-repeat;
  padding-right: calc(1.62318vw + 0.3em);
}
.GoToTop a.w {
  color: #ffffff;
  background-image: url(/seq/image/all_icon_goTop_w.svg);
}
@media screen and (max-width: 767px) {
  .GoToTop {
    width: 86.66666vw;
    height: 4.26666vw;
    margin: 5vw auto 0 auto;
  }
  .GoToTop.ov {
    bottom: 3vw;
  }
  .GoToTop a {
    font-size: 3.46666vw;
    background-size: 4.26666vw auto;
    padding-right: calc(4.26666vw + 0.3em);
  }
}
/*----------------------------------------------------*/
section {
  position: relative;
}
.note_all_image {
  font-size: 14px;
  color: #ffffff;
  position: absolute;
  bottom: 2em;
  right: 4em;
}
@media screen and (max-width: 767px) {
  .note_all_image {
    font-size: 3.2vw;
    right: 1.5em;
  }
}
.note_voice {
  font-size: 14px;
  line-height: 1.5em;
  position: absolute;
  bottom: 0.5em;
  right: 5em;
  padding-left: 1em;
  text-indent: -1em;
}
@media screen and (max-width: 767px) {
  .note_voice {
    font-size: 3.2vw;
    white-space: nowrap;
    position: static;
    text-align: center;
    margin-top: 2em;
  }
}
/* #top_Ank_topics
-----------------------------*/
#top_Ank_topics {}
.top_topics {
  padding: 50px 0 80px 0;
}
.top_topics h4.top_h4_ttl {
  line-height: 1.5em;
}
.top_topics .image-container {
  position: relative;
  width: 572px;
  height: 250px;
  margin: 20px auto 0;
}
.top_topics .image-container a img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  animation: switchImage 1s infinite;
  transition: opacity .3s ease; /* transitionを追加 */
}
.top_topics .image-container a img:nth-child(2) {
  animation-delay: 0.5s;
}
@keyframes switchImage {
  0% {
    opacity: 0;
  }
  49.9% {
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
  100% {
    opacity: 1;
  }
}
/* ホバー時はアニメーションを一時停止してホバー効果を有効化 */
.top_topics .image-container:hover a img {
  animation-play-state: paused;
}
.top_topics .image-container:hover a img.link_hover {
  opacity: 0.3 !important; /* またはお好みの透明度 */
}
@media screen and (max-width: 767px) {
  .top_topics {
    width: 90.13333vw;
    padding: 7vw 0;
    margin: 0 auto;
    overflow: visible;
    height: auto;
  }
  .top_topics .image-container {
    width: 100%;
    height: auto;
    aspect-ratio: 1144/500; /* アスペクト比を維持 */
  }
  .top_topics .image-container a img {
    width: 100%;
    height: auto;
  }
}
.top_CM_tokuhou_wrap {
  position: relative;
  padding: 80px 0;
  margin: 50px 0;
}
.top_CM_tokuhou_wrap::before {
  content: '';
  position: absolute !important;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-image: url("../image/top/top_tokuhou_img_02.svg");
  background-repeat: no-repeat;
	background-position: center;
  background-size: cover;
  mix-blend-mode: multiply;
  z-index: 1;
}
.top_CM_tokuhou_wrap .wave {
  width: 700px;
  margin: 0 auto;
  position: relative;
  z-index: 2;
  /* ここには乗算が適用されない */
}
.mirror-slash {
  display: inline-block;
  transform: scaleX(-1);
}
@media screen and (max-width: 767px) {
.top_CM_tokuhou_wrap {
  padding: 50px 0;
  margin: 50px 0;
}

.top_CM_tokuhou_wrap .wave {
    width: 90.13333vw;
}

}
.slick-track {
	display: flex;
	align-items: flex-end;
}