/* 全体設定
------------------------------------------------------------*/
@import url('https://fonts.googleapis.com/css2?family=Kaisei+Decol&family=Zen+Kaku+Gothic+New:wght@400;500;700&display=swap');
@import url('https://cdn.jsdelivr.net/npm/yakuhanjp@3.2.0/dist/css/yakuhanjp.min.css');
/* 'Shippori Mincho', */
body {
  font-family: YakuHanJP, "Zen Kaku Gothic New", sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: 18px;
  line-height: 1.6em;
  color: #5a2e00;
  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;
}
@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.6;
  }
}
.img_fit {
  width: 100%;
  height: auto;
}
/* nav
-----------------------------*/
nav.u_nav_wrap {
  width: 100%;
  height: 60px;
  background-color: #f7f1e9;
  position: sticky;
  left: 0;
  top: 0;
  z-index: 100;
}
nav .u_nav_inner {
  width: 870px;
  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% / 6);
  font-size: 18px;
  line-height: 1.2em;
  margin: 0;
  padding: 0;
  border-right: 1px solid #5a2e00;
  display: flex;
  justify-content: center;
  align-items: center;
}
nav ul.u_nav li:first-child {
  border-left: 1px solid #5a2e00;
}
nav ul.u_nav li a.nav_txt {
  color: #333333;
}
@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: 23vw;
    position: absolute;
    white-space: nowrap;
    top: 14vw;
    right: 4vw;
    background-color: #FFFFFF;
    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 #525252;
    border-radius: 2px;
    position: absolute;
    top: 4vw;
    right: 4vw;
  }
  .hamburger .bar {
    width: 5.2vw;
    height: 0.4vw;
    background: #525252;
    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;
  }
}
/* kye visual
-----------------------------*/
.kv_wrap {
  width: 100%;
  height: 1000px;
  margin: 0 0 0 0;
  padding: 0;
  background-color: #eeeeee;
  display: flex;
  justify-content: center;
  align-items: center;
}
@media only screen and (max-width: 767px) {
  .kv_wrap {
    margin-top: 0;
  }
}
/* 見出し
-----------------------------*/
h1.cat_ttl {
  font-family: "Kaisei Decol", serif;
  font-size: 3.47826vw; /*48px*/
  text-align: center;
}
h2.cat_ttl {
  font-family: "Kaisei Decol", serif;
  font-size: 3.47826vw; /*48px*/
  text-align: center;
}
@media only screen and (max-width: 767px) {
  h1.cat_ttl {
    font-size: 7.46666vw; /*56px*/
  }
  h2.cat_ttl {
    font-size: 7.46666vw; /*56px*/
  }
}
/* ank_about
-----------------------------*/
.about_wrap {
  padding: 5vw 0 10vw 0;
}
.about_flex_wrap {
  width: 72.46376vw;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
}
.about_flex_01 {
  width: 34.34782vw;
}
.about_flex_02 {
  width: 36.23188vw;
}
.seq_product_catch {
  width: 100%;
  margin: 0 auto;
}
.seq_product_mainImage {
  width: 26.08695vw;
  margin: 3.5vw auto 0 auto;
  filter: drop-shadow(2vw 2vw 1.5vw rgba(0, 0, 0, 0.3));
}
.seq_product_logo {
  width: 100%;
  margin: 2vw auto 0 auto;
}
.seq_product_txt {
  font-size: 1.5942vw;
  font-weight: 700;
  line-height: 1.6em;
  text-align: center;
  margin: 1.5em 0 0 0;
  color: #5e2e00;
}
img.logo_40th {
	max-width: 220px;
  margin: 2vw auto 0 auto;
	display: block;
}
@media only screen and (max-width: 767px) {
  .about_wrap {
    padding: 12.66666vw 0;
  }
  .about_flex_wrap {
    width: 100%;
    display: block;
  }
  .about_flex_01 {
    width: 100%;
  }
  .about_flex_02 {
    width: 100%;
  }
  .seq_product_catch {
    width: 63.2vw;
    margin: 0 auto;
  }
  .seq_product_mainImage {
    width: 40.8vw;
    margin: 4.66666vw auto 0 auto;
    filter: drop-shadow(4vw 4vw 2vw rgba(0, 0, 0, 0.3));
  }
  .seq_product_logo {
    width: 70vw;
    margin: 8.66666vw auto 0 auto;
  }
  .seq_product_txt {
    font-size: 4.8vw;
    margin: 1.5em 0 0 0;
  }
	img.logo_40th {
	max-width: 200px;
  margin: 7vw auto 0 auto;

}
}
/* ank_topics (slick)
-----------------------------*/
.topics_wrap {
  padding: 5vw 0 6vw 0;
  /*background-color: #e6e6e6;*/
  border-top: 0.9vw solid #5a2e00;
  border-bottom: 0.9vw solid #5a2e00;
  background-image: url(../image/seq_topicks_bg.svg);
  background-position: center center;
  background-size: 3.6vw auto;
  background-repeat: repeat;
}
@media only screen and (max-width: 767px) {
  .topics_wrap {
    padding: 8.66666vw 0 12vw 0;
    border-top: 2vw solid #5a2e00;
    border-bottom: 2vw solid #5a2e00;
    background-size: 6.6vw auto;
  }
}
/**/
.item_img_slider_wrap {
  width: 100%;
}
.item_img_slider {
  width: 100%;
  margin: 3.6vw auto 0 auto;
}
.item_img_slider_box {
  width: 23.47826vw;
  height: 30.43478vw;
  margin: 0 1.5vw;
  border: 0.26086vw solid #5a2e00;
  border-top-left-radius: 1.73913vw 1.44927vw;
  border-bottom-right-radius: 1.73913vw 1.44927vw;
  overflow: hidden;
  position: relative;
}
.item_img_slider_box .hover_link {
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  background-color: #ffffff;
  opacity: 0;
  transition: opacity .3s ease;
  z-index: 10;
}
@media only screen and (min-width: 768px) {
  .item_img_slider_box .hover_link:hover {
    opacity: 0.4;
  }
}
@media only screen and (max-width: 767px) {
  .item_img_slider_wrap {}
  .item_img_slider {
    width: 100%;
    margin: 6vw auto 0 auto;
  }
  .item_img_slider_box {
    width: 72vw;
    height: 99vw;
    margin: 0 2vw;
    border: 0.8vw solid #5a2e00;
    border-top-left-radius: 9.33333vw 6.66666vw;
    border-bottom-right-radius: 9.33333vw 6.66666vw;
  }
}
.slick-dots > li:first-child:last-child {
  /*display: none;*/
}
/**/
.slider_01 {
  text-align: center;
  background-color: #faca72;
  color: #5a2e00;
}
.slider_02 {
  text-align: center;
  background-color: #fbab33;
  color: #5a2e00;
}
.slider_03 {
  text-align: center;
  background-color: #006837;
  color: #ffffff;
}
.slider_04 {
  text-align: center;
  background-color: #ffffff;
  color: #5a2e00;
}
.slider_05 {
  text-align: center;
  background-color: #fbab33;
  color: #5a2e00;
}
.slider_07 {
  text-align: center;
  background-color: #05143f;
  color: #FFF;
}
.seq_topicks_slideimage {
  width: 100%;
  margin: 0;
  padding: 0;
}
.seq_topicks_slidetxt_wrap {
  position: relative;
}
.seq_topicks_slidetxt_wrap .ov {
  position: absolute;
  top: -4.5vw;
}
.seq_topicks_slidetxt_wrap .ov_large {
  position: absolute;
  top: -7.5vw;
}
.seq_topicks_slidetxt {
  font-feature-settings: "palt";
}
.seq_topicks_txtLink {
  font-size: 1.3913vw;
  font-weight: 700;
  /*letter-spacing: -0.1em;*/
  text-align: left;
  margin-left: 2em;
  margin-top: 0.6em;
  line-height: 2em;
}
.seq_topicks_txtLink a {
  color: #ffffff;
  opacity: 1;
  transition: opacity .3s ease;
  background-image: url(../image/seq_topicks_linkArrow.svg);
  background-position: left center;
  background-size: 0.6vw auto;
  background-repeat: no-repeat;
  padding-left: 1.2em;
}
@media only screen and (min-width: 768px) {
  .seq_topicks_txtLink a:hover {
    opacity: 0.6;
  }
}
.slider_01 .seq_topicks_slidetxt, .slider_04 .seq_topicks_slidetxt, .slider_05 .seq_topicks_slidetxt {
  font-size: 1.73913vw;
  font-weight: 700;
  line-height: 1.6em;
  padding-top: 0.7em;
}
.slider_03 .seq_topicks_slidetxt {
  font-size: 1.73913vw;
  font-weight: 700;
  line-height: 1.6em;
  padding-top: 0.6em;
}
.slider_01 .seq_topicks_slidetxt small, .slider_02 .seq_topicks_slidetxt small, .slider_04 .seq_topicks_slidetxt small, .slider_05 .seq_topicks_slidetxt small {
  font-size: 1.3913vw;
}
.slider_02 .seq_topicks_slidetxt {
  font-size: 1.73913vw;
  font-weight: 700;
  line-height: 1.2em;
  padding-top: 0.8em;
}
.slider_02 .seq_topicks_slidetxt_2 {
  font-size: 1.04347vw;
  line-height: 1.4em;
  margin-top: 0.2em;
}
.slider_04 .seq_topicks_slidetxt {
  letter-spacing: -0.1em;
}
.slider_07 .seq_topicks_slidetxt {
  font-size: 1.5vw;
  font-weight: 700;
  line-height: 1.6em;
}
.slider_episode {
  text-align: center;
  background-color: #fbab33;
  color: #5a2e00;
}
.slider_episode .seq_topicks_slidetxt small {
  font-size: 1.3913vw;
}
.slider_episode .seq_topicks_slidetxt {
  font-size: 1.73913vw;
  font-weight: 700;
  line-height: 1.2em;
  padding-top: 0.8em;
}
.slider_episode .seq_topicks_slidetxt_2 {
  font-size: 1.04347vw;
  line-height: 1.4em;
  margin-top: 0.2em;
}
@media only screen and (max-width: 767px) {
  .seq_topicks_slideimage {}
  .seq_topicks_slidetxt_wrap {}
  .seq_topicks_slidetxt_wrap .ov {
    top: -13vw;
  }
	.seq_topicks_slidetxt_wrap .ov_large {
    top: -25.5vw;
	}
  .seq_topicks_slidetxt {}
  .seq_topicks_txtLink {
    font-size: 4.26666vw;
  }
  .seq_topicks_txtLink a {
    background-size: 2vw auto;
  }
  .slider_01 .seq_topicks_slidetxt, .slider_04 .seq_topicks_slidetxt, .slider_05 .seq_topicks_slidetxt {
    font-size: 5.33333vw;
    padding-top: 1.1em;
  }
  .slider_03 .seq_topicks_slidetxt {
    font-size: 5.33333vw;
    padding-top: 1.1em;
  }
  .slider_01 .seq_topicks_slidetxt small, .slider_02 .seq_topicks_slidetxt small, .slider_04 .seq_topicks_slidetxt small, .slider_05 .seq_topicks_slidetxt small {
    font-size: 4.26666vw;
  }
  .slider_02 .seq_topicks_slidetxt {
    font-size: 5.33333vw;
    padding-top: 1.1em;
  }
  .slider_02 .seq_topicks_slidetxt_2 {
    font-size: 3.2vw;
  }
  .slider_04 .seq_topicks_slidetxt {}
	.slider_07 .seq_topicks_slidetxt {
    font-size: 4.8vw;
    padding-top: 0.3em;
  }
  .slider_episode .seq_topicks_slidetxt small {
    font-size: 4.26666vw;
  }
  .slider_episode .seq_topicks_slidetxt {
    font-size: 5.33333vw;
    padding-top: 1.1em;
  }
  .slider_episode .seq_topicks_slidetxt_2 {
    font-size: 3.2vw;
  }
}

/**/
.slick-dots {
  bottom: -4vw;
  z-index: 10;
}
.slick-dots li {
  width: 1vw;
  height: 1vw;
  margin: 0 0.5em;
}
.slick-dots li button {
  color: #cdc0b2;
}
.slick-dots li button::before {
  content: "●";
  font-size: 1vw;
  opacity: 1;
  color: #cdc0b2;
}
.slick-dots li.slick-active button::before {
  opacity: 1;
  color: #5e2e00;
}
#stationery #lnavi ul li {
  color: #5e2e00;
}
#stationery #lnavi ul li a {
  color: #5e2e00;
}
@media screen and (max-width: 750px) {
  .slick-dots {
    bottom: -5.5vw;
  }
  .slick-dots li {
    width: 2vw;
    height: 2vw;
  }
  .slick-dots li button {}
  .slick-dots li button:before {
    font-size: 2vw;
  }
}
/* ank_contents
-----------------------------*/
.contents_wrap {
  margin: 0;
  padding: 3.9855vw 0 0 0;
}
.contents_bg_wrap {
  width: 100%;
  height: 340.86956vw;
  background-image: url(../image/seq_contents_bg_pc.png);
  background-position: center top;
  background-size: cover;
  background-repeat: no-repeat;
}
@media screen and (max-width: 767px) {
  .contents_wrap {
    padding-top: 13.33333vw;
  }
  .contents_bg_wrap {
    height: 948.66666vw;
    background-image: url(../image/seq_contents_bg_sp.png);
  }
}
/**/
.content_link a {
  font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", sans-serif;
}
.content_link a:hover {
  opacity: 0.6;
}
/*--- contents_01_wrap ---*/
.contents_01_wrap {
  margin: 0;
  padding: 0;
  position: relative;
}
.contents_01_wrap h3.content_ttl {
  width: 10.29782vw;
  position: absolute;
  top: 4.71014vw;
  left: 50%;
  transform: translateX(-50%);
  margin: 0;
}
.contents_01_wrap .content_flex_wrap {
  width: 100%;
  display: flex;
}
.contents_01_wrap .content_flex_01 {
  width: 56.88405vw;
  margin: 10.36231vw 0 0 0;
}
.contents_01_wrap .content_flex_02 {
  color: #ffffff;
  padding: 19vw 0 0 3.62318vw;
}
.contents_01_wrap h4.content_ttl {
  font-size: 3.1884vw;
  font-weight: 700;
  line-height: 1.5em;
  margin: 0;
}
.contents_01_wrap .content_txt {
  font-size: 1.5942vw;
  font-weight: Medium;
  line-height: 2.2em;
  margin: 2em 0 0 0;
}
.contents_01_wrap .content_link {
  margin: 2em 0 0 0;
}
.contents_01_wrap .content_link a {
  font-size: 1.44927vw;
  letter-spacing: 0.15em;
  font-weight: 700;
  text-decoration: underline;
  color: #ffffff;
  opacity: 1;
  transition: opacity .3s ease;
}
@media screen and (max-width: 767px) {
  .contents_01_wrap {}
  .contents_01_wrap h3.content_ttl {
    width: 23.33333vw;
    top: 8.53333vw;
    right: 4.7vw;
    left: auto;
    transform: translateX(0);
    margin: 0;
  }
  .contents_01_wrap .content_flex_wrap {
    display: block;
  }
  .contents_01_wrap .content_flex_01 {
    width: 100%;
    margin: 0;
    padding: 14.3vw 0 0 0;
  }
  .contents_01_wrap .content_flex_02 {
    margin-top: 5.33333vw;
    padding: 0 0 0 6.66666vw;
  }
  .contents_01_wrap h4.content_ttl {
    font-size: 6.4vw;
    line-height: 1.5em;
    margin: 0;
  }
  .contents_01_wrap .content_txt {
    font-size: 4.26666vw;
    line-height: 1.8em;
    margin: 0.3em 0 0 0;
  }
  .contents_01_wrap .content_link {
    margin: 1em 0 0 0;
  }
  .contents_01_wrap .content_link a {
    font-size: 4vw;
    letter-spacing: 0.15em;
  }
}
/*--- contents_02_wrap ---*/
.contents_02_wrap {
  margin: 5.43478vw 0 0 0;
  padding: 0;
  position: relative;
}
.contents_02_wrap h3.content_ttl {
  width: 8.69565vw;
  position: absolute;
  top: 1.3vw;
  left: 50%;
  transform: translateX(-50%);
  margin: 0;
}
.contents_02_wrap .content_flex_wrap {
  width: 100%;
  display: flex;
  flex-direction: row-reverse;
  justify-content: space-between;
}
.contents_02_wrap .content_flex_01 {
  width: 56.23188vw;
  margin: 0 0 0 0;
}
.contents_02_wrap .content_flex_02 {
  color: #5a2e00;
  padding: 19.4vw 0 0 13.76811vw;
}
.contents_02_wrap h4.content_ttl {
  font-size: 3.1884vw;
  font-weight: 700;
  line-height: 1.5em;
  margin: 0;
}
.contents_02_wrap .content_txt {
  font-size: 1.5942vw;
  font-weight: Medium;
  line-height: 2.2em;
  margin: 2em 0 0 0;
}
.contents_02_wrap .content_link {
  margin: 2em 0 0 0;
}
.contents_02_wrap .content_link a {
  font-size: 1.44927vw;
  letter-spacing: 0.15em;
  font-weight: 700;
  text-decoration: underline;
  color: #5a2e00;
  opacity: 1;
  transition: opacity .3s ease;
}
@media screen and (max-width: 767px) {
  .contents_02_wrap {
    margin-top: 0;
  }
  .contents_02_wrap h3.content_ttl {
    width: 20vw;
    top: 23vw;
    right: auto;
    left: 8vw;
    transform: translateX(0);
    margin: 0;
  }
  .contents_02_wrap .content_flex_wrap {
    display: block;
  }
  .contents_02_wrap .content_flex_01 {
    width: 100%;
    margin: 0;
    padding: 29vw 0 0 0;
  }
  .contents_02_wrap .content_flex_02 {
    margin-top: 4.5vw;
    padding: 0 0 0 37vw;
  }
  .contents_02_wrap h4.content_ttl {
    font-size: 6.4vw;
    line-height: 1.5em;
    margin: 0;
  }
  .contents_02_wrap .content_txt {
    font-size: 4.26666vw;
    line-height: 1.8em;
    margin: 0.3em 0 0 0;
  }
  .contents_02_wrap .content_link {
    margin: 1em 0 0 0;
  }
  .contents_02_wrap .content_link a {
    font-size: 4vw;
    letter-spacing: 0.15em;
  }
}
/*--- contents_03_wrap ---*/
.contents_03_wrap {
  margin: 0;
  padding: 0;
  position: relative;
}
.contents_03_wrap h3.content_ttl {
  width: 8.04347vw;
  position: absolute;
  top: 5.5vw;
  left: 50%;
  transform: translateX(-50%);
  margin: 0;
}
.contents_03_wrap .content_flex_wrap {
  width: 100%;
  display: flex;
}
.contents_03_wrap .content_flex_01 {
  width: 54.20289vw;
  margin: 5.5vw 0 0 0;
}
.contents_03_wrap .content_flex_02 {
  color: #5a2e00;
  padding: 24vw 0 0 5.7971vw;
}
.contents_03_wrap h4.content_ttl {
  font-size: 3.1884vw;
  font-weight: 700;
  line-height: 1.5em;
  margin: 0;
}
.contents_03_wrap .content_txt {
  font-size: 1.5942vw;
  font-weight: Medium;
  line-height: 2.2em;
  margin: 2em 0 0 0;
}
.contents_03_wrap .content_link {
  margin: 2em 0 0 0;
}
.contents_03_wrap .content_link a {
  font-size: 1.44927vw;
  letter-spacing: 0.15em;
  font-weight: 700;
  text-decoration: underline;
  color: #5a2e00;
  opacity: 1;
  transition: opacity .3s ease;
}
@media screen and (max-width: 767px) {
  .contents_03_wrap {}
  .contents_03_wrap h3.content_ttl {
    width: 18vw;
    top: 29vw;
    right: 6vw;
    left: auto;
    transform: translateX(0);
    margin: 0;
  }
  .contents_03_wrap .content_flex_wrap {
    display: block;
  }
  .contents_03_wrap .content_flex_01 {
    width: 100%;
    margin: 0;
    padding: 21.33333vw 0 0 0;
  }
  .contents_03_wrap .content_flex_02 {
    margin-top: 0;
    padding: 3vw 0 0 6.66666vw;
  }
  .contents_03_wrap h4.content_ttl {
    font-size: 6.4vw;
    line-height: 1.5em;
    margin: 0;
  }
  .contents_03_wrap .content_txt {
    font-size: 4.26666vw;
    line-height: 1.8em;
    margin: 0.3em 0 0 0;
  }
  .contents_03_wrap .content_link {
    margin: 1em 0 0 0;
  }
  .contents_03_wrap .content_link a {
    font-size: 4vw;
    letter-spacing: 0.15em;
  }
}
/*--- contents_04_wrap ---*/
.contents_04_wrap {
  margin: 10.86956vw 0 0 0;
  padding: 0;
  position: relative;
}
.contents_04_wrap h3.content_ttl {
  width: 7.17391vw;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  margin: 0;
}
.contents_04_wrap .content_flex_wrap {
  width: 100%;
  display: flex;
  flex-direction: row-reverse;
  justify-content: space-between;
}
.contents_04_wrap .content_flex_01 {
  width: 57.82608vw;
  margin: 2.5vw 1.73913vw 0 0;
}
.contents_04_wrap .content_flex_02 {
  color: #ffffff;
  padding: 16.5vw 0 0 13.76811vw;
}
.contents_04_wrap h4.content_ttl {
  font-size: 3.1884vw;
  font-weight: 700;
  line-height: 1.5em;
  margin: 0;
}
.contents_04_wrap .content_txt {
  font-size: 1.5942vw;
  font-weight: Medium;
  line-height: 2.2em;
  margin: 2em 0 0 0;
}
.contents_04_wrap .content_link {
  margin: 2em 0 0 0;
}
.contents_04_wrap .content_link a {
  font-size: 1.44927vw;
  letter-spacing: 0.15em;
  font-weight: 700;
  text-decoration: underline;
  color: #ffffff;
  opacity: 1;
  transition: opacity .3s ease;
}
@media screen and (max-width: 767px) {
  .contents_04_wrap {
    margin-top: 0;
  }
  .contents_04_wrap h3.content_ttl {
    width: 16.5vw;
    top: 26vw;
    right: auto;
    left: 8vw;
    transform: translateX(0);
    margin: 0;
  }
  .contents_04_wrap .content_flex_wrap {
    display: block;
  }
  .contents_04_wrap .content_flex_01 {
    width: 100%;
    margin: 0;
    padding: 31vw 0 0 0;
  }
  .contents_04_wrap .content_flex_02 {
    margin-top: 9vw;
    padding: 0 0 0 7.5vw;
  }
  .contents_04_wrap h4.content_ttl {
    font-size: 6.4vw;
    line-height: 1.5em;
    margin: 0;
  }
  .contents_04_wrap .content_txt {
    font-size: 4.26666vw;
    line-height: 1.8em;
    margin: 0.3em 0 0 0;
  }
  .contents_04_wrap .content_link {
    margin: 1em 0 0 0;
  }
  .contents_04_wrap .content_link a {
    font-size: 4vw;
    letter-spacing: 0.15em;
  }
}
/*--- contents_05_wrap ---*/
.contents_05_wrap {
  margin: 13vw 0 0 0;
  padding: 0;
  position: relative;
}
.contents_05_wrap h3.content_ttl {
  width: 7.97101vw;
  position: absolute;
  top: 0vw;
  left: 50%;
  transform: translateX(-50%);
  margin: 0;
}
.contents_05_wrap .content_flex_wrap {
  width: 100%;
  display: flex;
}
.contents_05_wrap .content_flex_01 {
  width: 56.37681vw;
  margin: 1.44927vw 0 0 0;
}
.contents_05_wrap .content_flex_02 {
  color: #5a2e00;
  padding: 17vw 0 0 4vw;
}
.contents_05_wrap h4.content_ttl {
  font-size: 3.1884vw;
  font-weight: 700;
  line-height: 1.5em;
  margin: 0;
}
.contents_05_wrap .content_txt {
  font-size: 1.5942vw;
  font-weight: Medium;
  line-height: 2.2em;
  margin: 1em 0 0 0;
}
.contents_05_wrap .content_link {
  margin: 2em 0 0 0;
}
.contents_05_wrap .content_link a {
  font-size: 1.44927vw;
  letter-spacing: 0.15em;
  font-weight: 700;
  text-decoration: underline;
  color: #5a2e00;
  opacity: 1;
  transition: opacity .3s ease;
}
@media screen and (max-width: 767px) {
  .contents_05_wrap {
    margin-top: 26vw;
  }
  .contents_05_wrap h3.content_ttl {
    width: 18.3vw;
    top: 0;
    right: auto;
    left: 7vw;
    transform: translateX(0);
    margin: 0;
  }
  .contents_05_wrap .content_flex_wrap {
    display: block;
  }
  .contents_05_wrap .content_flex_01 {
    width: 100%;
    margin: 0;
    padding: 13vw 0 0 0;
  }
  .contents_05_wrap .content_flex_02 {
    margin-top: 0;
    padding: 5vw 0 0 37vw;
  }
  .contents_05_wrap h4.content_ttl {
    font-size: 6.4vw;
    line-height: 1.5em;
    margin: 0;
  }
  .contents_05_wrap .content_txt {
    font-size: 4.26666vw;
    line-height: 1.8em;
    margin: 0.3em 0 0 0;
  }
  .contents_05_wrap .content_link {
    margin: 1em 0 0 0;
  }
  .contents_05_wrap .content_link a {
    font-size: 4vw;
    letter-spacing: 0.15em;
  }
}
/* フェードアニメーション
-----------------------------*/
.f_01 {
  opacity: 0;
  /*transform: translateY(2em);*/
  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: #ffffff;
  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: 46.37681vw;
  height: 23.1884vw;
  background-color: #ffffff;
  position: fixed;
  left: 50%;
  top: 50%;
  transform: translateY(-50%) translateX(-50%);
  z-index: 501;
  display: none;
}
.seqsday_box.view {}
.seqsday_box_inner {
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  position: relative;
}
.seqsday_close_x {
  width: 1.95652vw;
  position: absolute;
  top: -3vw;
  right: 1vw;
  cursor: pointer;
}
.seqsday_img {
  width: 100%;
  margin: 0;
  padding: 0;
}
@media screen and (max-width: 767px) {
  .seqsday_box {
    width: 85.33333vw;
    height: 42.66666vw;
  }
  .seqsday_box_inner {}
  .seqsday_close_x {
    width: 3.6vw;
    top: -10vw;
    right: 1vw;
  }
}
/* 周年要素移植
-----------------------------*/
#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);
  }
}