@charset "UTF-8";
/* CSS Document */
@import url("https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,400..900;1,400..900&family=Zen+Kaku+Gothic+New:wght@300;400;500;700;900&display=swap");
.none_text {
  display: none !important; }

@media screen and (min-width: 768px) {
  .pcNone {
    display: none !important; } }
@media screen and (max-width: 767px) {
  .spNone {
    display: none !important; }

  .tabNone {
    display: none !important; } }
@media screen and (min-width: 768px) and (max-width: 961px) {
  .tabNone {
    display: none !important; } }
@media screen and (min-width: 1025px) {
  .tabNone {
    display: none !important; } }
@media screen and (min-width: 769px) and (max-width: 1024px) {
  .tabNone {
    display: block !important; }

  .pcNone01 {
    display: none !important; } }
body {
  --color-black: #2f332f;
  /*ベースの黒*/
  --color-grey: #f7f7f7;
  /*薄いグレー*/ }

.font-01 {
  font-family: "Mochiy Pop P One", sans-serif; }

.font-02 {
  font-family: "Zen Maru Gothic", sans-serif; }

.font-03 {
  font-family: "Playfair Display", serif; }

/*flexbox 共通*/
.flex-box {
  display: flex;
  justify-content: space-between;
  align-items: center; }

/*リンクテキスト*/
.text-button a {
  font-size: min(1.8vw, 20px);
  border-bottom: 1px solid var(--color-black);
  font-weight: 300; }
  @media screen and (max-width: 767px) {
    .text-button a {
      font-size: 14px; } }

/*mv area*/
/*header ハンバーガーメニュー str*/
header .sns_list {
  display: flex;
  justify-content: flex-start;
  gap: 25px;
  margin: 0 0 40px;
  padding-left: 60px; }
  @media screen and (max-width: 767px) {
    header .sns_list {
      padding-left: 40px; } }
  @media screen and (min-width: 768px) and (max-width: 961px) {
    header .sns_list {
      gap: 20px;
      padding-left: 40px; } }
  @media screen and (min-width: 768px) and (max-width: 1200px) {
    header .sns_list {
      gap: 20px;
      padding-left: 60px; } }
  header .sns_list li {
    width: 12%;
    max-width: 25px; }
    @media screen and (max-width: 767px) {
      header .sns_list li {
        width: 9%; } }
header .hamburger-fade {
  position: fixed;
  top: 5%;
  left: 5%;
  z-index: 999;
  width: 60px;
  height: 60px;
  padding: 0;
  border: none;
  background: transparent;
  cursor: pointer;
  transition: 1s; }
  @media screen and (max-width: 767px) {
    header .hamburger-fade {
      width: 30px;
      height: 60px;
      top: 0%;
      left: 5%; } }
  header .hamburger-fade__wrapper {
    position: relative;
    width: 60px;
    height: 45px;
    margin: 20px auto;
    transition: 1s; }
    @media screen and (max-width: 767px) {
      header .hamburger-fade__wrapper {
        width: 30px;
        height: 30px; } }
  header .hamburger-fade__line {
    position: absolute;
    left: 0;
    width: 100%;
    height: 3px;
    background-color: var(--color-black);
    transition: all 0.5s cubic-bezier(0.23, 1, 0.32, 1); }
    header .hamburger-fade__line:nth-child(1) {
      top: 0; }
    header .hamburger-fade__line:nth-child(2) {
      top: 0;
      bottom: 0;
      margin: auto; }
    header .hamburger-fade__line:nth-child(3) {
      bottom: 0; }
  header .hamburger-fade.active .hamburger-fade__line {
    background-color: #fff; }
    header .hamburger-fade.active .hamburger-fade__line:nth-child(1) {
      transform: translateY(35px) rotate(45deg); }
      @media screen and (max-width: 767px) {
        header .hamburger-fade.active .hamburger-fade__line:nth-child(1) {
          transform: translateY(19px) rotate(45deg); } }
    header .hamburger-fade.active .hamburger-fade__line:nth-child(2) {
      opacity: 0;
      transform: translateX(20px); }
    header .hamburger-fade.active .hamburger-fade__line:nth-child(3) {
      transform: translateY(-9px) rotate(-45deg); }
header .nav-fade {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  visibility: hidden;
  z-index: 900; }
  header .nav-fade__bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.5s cubic-bezier(0.23, 1, 0.32, 1); }
  header .nav-fade__wrapper {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center;
    width: 100%;
    height: 100%;
    padding: 5vh 10vw; }
  header .nav-fade__list {
    margin: 0 0 25px;
    padding: 0;
    list-style: none; }
  header .nav-fade__item {
    position: relative;
    margin-bottom: 2vh;
    padding-left: 60px;
    opacity: 0;
    transform: translateY(20px);
    transition: all 0.5s cubic-bezier(0.23, 1, 0.32, 1); }
  header .nav-fade.active {
    visibility: visible; }
    header .nav-fade.active .nav-fade__bg {
      opacity: 1; }
    header .nav-fade.active .nav-fade__item {
      opacity: 1;
      transform: translateY(0); }
      header .nav-fade.active .nav-fade__item:nth-child(1) {
        transition-delay: 0.2s; }
      header .nav-fade.active .nav-fade__item:nth-child(2) {
        transition-delay: 0.3s; }
      header .nav-fade.active .nav-fade__item:nth-child(3) {
        transition-delay: 0.4s; }
      header .nav-fade.active .nav-fade__item:nth-child(4) {
        transition-delay: 0.5s; }
  header .nav-fade__link {
    display: inline-block;
    color: #fff;
    font-size: 32px;
    text-decoration: none;
    transition: color 0.3s ease; }
    header .nav-fade__link:hover {
      color: #4a90e2; }
  header .nav-fade__address, header .nav-fade__tel {
    margin: 5px 0; }
  @media (max-width: 768px) {
    header .nav-fade__link {
      font-size: 24px; }
    header .nav-fade__item {
      padding-left: 40px;
      margin-bottom: 1.5vh; } }
header.fixed .hamburger-fade {
  top: 2%;
  left: 2%;
  width: 30px;
  height: 25px;
  transition: 1s; }
  @media screen and (max-width: 767px) {
    header.fixed .hamburger-fade {
      width: 30px;
      height: 60px;
      top: 0%;
      left: 5%; } }
header.fixed .hamburger-fade__wrapper {
  width: 30px;
  height: 25px;
  margin: 20px auto;
  transition: 1s; }
  @media screen and (max-width: 767px) {
    header.fixed .hamburger-fade__wrapper {
      width: 30px;
      height: 30px; } }
header.fixed .hamburger-fade.active .hamburger-fade__line:nth-child(1) {
  transform: translateY(14px) rotate(45deg); }
  @media screen and (max-width: 767px) {
    header.fixed .hamburger-fade.active .hamburger-fade__line:nth-child(1) {
      transform: translateY(19px) rotate(45deg); } }

/*header ハンバーガーメニュー end*/
.logo_loop {
  width: 10%;
  position: fixed;
  right: 7%;
  top: 7%;
  z-index: 99; }
  @media screen and (max-width: 767px) {
    .logo_loop {
      width: 22%;
      right: 4%;
      top: 3%; } }
  .logo_loop p.logo {
    animation: 10s linear infinite kaiten01; }
@keyframes kaiten01 {
  0% {
    transform: rotate(0); }
  100% {
    transform: rotate(360deg); } }
main {
  position: relative;
  z-index: 1;
  background: #fff; }
  main #mv_area {
    width: 100%;
    position: relative;
    overflow: hidden;
    margin: 0 0 150px; }
    @media screen and (max-width: 767px) {
      main #mv_area {
        margin-bottom: 50px; } }
    @media screen and (max-width: 767px) {
      main #mv_area .mv_img_box {
        object-fit: cover;
        height: 100vh; } }
    main #mv_area .mv_img_box .swiper .swiper-slide img {
      height: 100vh;
      width: 100%;
      object-fit: cover; }
      @media screen and (max-width: 767px) {
        main #mv_area .mv_img_box .swiper .swiper-slide img {
          object-fit: cover;
          height: 100vh;
          object-position: center top; } }
    main #mv_area .mv_img_box .swiper-slide-active .swiper-img, main #mv_area .mv_img_box .swiper-slide-duplicate-active .swiper-img, main #mv_area .mv_img_box .swiper-slide-prev .swiper-img {
      animation: zoomUp 7s linear 0s normal both; }
    main #mv_area .mv_img_box .swiper-slide img {
      height: auto;
      width: 100%; }
@keyframes zoomUp {
  0% {
    transform: scale(1); }
  100% {
    transform: scale(1.15); } }
    main #mv_area .text_loop {
      position: absolute;
      left: 0;
      right: 0;
      bottom: 10%;
      z-index: 1; }
      @media screen and (max-width: 767px) {
        main #mv_area .text_loop {
          bottom: 20%; } }
      @media screen and (min-width: 960px) and (max-width: 1499px) {
        main #mv_area .text_loop {
          bottom: 20%; } }
      main #mv_area .text_loop .slider-wrapper {
        display: flex;
        overflow: hidden; }
        main #mv_area .text_loop .slider-wrapper .slider {
          animation: right-left 50s infinite linear .5s both;
          display: flex; }
          main #mv_area .text_loop .slider-wrapper .slider .slide {
            width: calc(150vw / 1); }
            @media screen and (max-width: 767px) {
              main #mv_area .text_loop .slider-wrapper .slider .slide {
                width: calc(300vw / 1); } }
            @media screen and (min-width: 768px) and (max-width: 961px) {
              main #mv_area .text_loop .slider-wrapper .slider .slide {
                width: calc(300vw / 1); } }
            @media screen and (min-width: 960px) and (max-width: 1499px) {
              main #mv_area .text_loop .slider-wrapper .slider .slide {
                width: calc(300vw / 1); } }
            @media screen and (min-width: 768px) and (max-width: 1200px) {
              main #mv_area .text_loop .slider-wrapper .slider .slide {
                width: calc(250vw / 1); } }
            main #mv_area .text_loop .slider-wrapper .slider .slide img {
              display: block;
              width: 100%; }
@keyframes right-left {
  from {
    transform: translateX(0); }
  to {
    transform: translateX(-100%); } }
  main #top_story {
    width: 100%;
    margin: 0 0 150px; }
    @media screen and (max-width: 767px) {
      main #top_story {
        margin: 0 0 50px; } }
    main #top_story .top_story_box01 {
      margin: 0 0 75px; }
      main #top_story .top_story_box01 .flex-box {
        justify-content: center; }
        @media screen and (max-width: 767px) {
          main #top_story .top_story_box01 .flex-box {
            justify-content: flex-start;
            flex-flow: column; } }
        main #top_story .top_story_box01 .flex-box .left-box {
          width: 55%;
          position: relative; }
          @media screen and (max-width: 767px) {
            main #top_story .top_story_box01 .flex-box .left-box {
              width: 95%;
              margin-right: auto;
              margin-bottom: 50px; } }
          main #top_story .top_story_box01 .flex-box .left-box .text-box {
            position: absolute;
            right: -33%;
            top: 10%; }
            @media screen and (max-width: 767px) {
              main #top_story .top_story_box01 .flex-box .left-box .text-box {
                right: -2%;
                top: inherit;
                bottom: -10%; } }
            @media screen and (min-width: 768px) and (max-width: 961px) {
              main #top_story .top_story_box01 .flex-box .left-box .text-box {
                right: -42%; } }
            @media screen and (min-width: 960px) and (max-width: 1499px) {
              main #top_story .top_story_box01 .flex-box .left-box .text-box {
                right: -42%; } }
            @media screen and (min-width: 768px) and (max-width: 1200px) {
              main #top_story .top_story_box01 .flex-box .left-box .text-box {
                right: -47%; } }
            main #top_story .top_story_box01 .flex-box .left-box .text-box .sub_text {
              font-size: min(4.3vw, 30px);
              font-weight: 900;
              padding: 0;
              margin: 0 0 0 auto;
              letter-spacing: 0.1em; }
            main #top_story .top_story_box01 .flex-box .left-box .text-box h2 {
              font-size: min(13.4vw, 120px);
              font-weight: 900;
              margin: 0;
              line-height: 1; }
        main #top_story .top_story_box01 .flex-box .right-box {
          flex: 1;
          margin-right: 120px;
          text-align: center;
          margin-top: 5%; }
          @media screen and (max-width: 767px) {
            main #top_story .top_story_box01 .flex-box .right-box {
              width: 100%;
              margin: 40px auto 0; } }
          @media screen and (min-width: 768px) and (max-width: 961px) {
            main #top_story .top_story_box01 .flex-box .right-box {
              margin-right: 0;
              margin-top: 15%; } }
          @media screen and (min-width: 960px) and (max-width: 1499px) {
            main #top_story .top_story_box01 .flex-box .right-box {
              margin-right: 0;
              margin-top: 15%; } }
          main #top_story .top_story_box01 .flex-box .right-box .frame_text {
            margin: 0 auto;
            position: relative;
            width: 90%; }
            main #top_story .top_story_box01 .flex-box .right-box .frame_text:before {
              content: "";
              width: 10%;
              height: calc(100% + 5vh);
              border-top: 1px solid var(--color-black);
              border-left: 1px solid var(--color-black);
              position: absolute;
              left: 5%;
              top: -60px; }
              @media screen and (max-width: 767px) {
                main #top_story .top_story_box01 .flex-box .right-box .frame_text:before {
                  top: -20px;
                  height: 160%; } }
              @media screen and (min-width: 768px) and (max-width: 961px) {
                main #top_story .top_story_box01 .flex-box .right-box .frame_text:before {
                  width: 15%;
                  height: calc(100% + 3vh); } }
              @media screen and (min-width: 960px) and (max-width: 1499px) {
                main #top_story .top_story_box01 .flex-box .right-box .frame_text:before {
                  width: 15%;
                  height: calc(100% + 3vh); } }
              @media screen and (min-width: 768px) and (max-width: 1200px) {
                main #top_story .top_story_box01 .flex-box .right-box .frame_text:before {
                  width: 11%;
                  height: calc(100% + 3vh); } }
            main #top_story .top_story_box01 .flex-box .right-box .frame_text:after {
              content: "";
              width: 10%;
              height: calc(100% + 5vh);
              border-bottom: 1px solid var(--color-black);
              border-right: 1px solid var(--color-black);
              position: absolute;
              right: 5%;
              bottom: -60px; }
              @media screen and (max-width: 767px) {
                main #top_story .top_story_box01 .flex-box .right-box .frame_text:after {
                  bottom: -20px;
                  height: 160%; } }
              @media screen and (min-width: 768px) and (max-width: 961px) {
                main #top_story .top_story_box01 .flex-box .right-box .frame_text:after {
                  width: 15%;
                  height: calc(100% + 3vh); } }
              @media screen and (min-width: 960px) and (max-width: 1499px) {
                main #top_story .top_story_box01 .flex-box .right-box .frame_text:after {
                  width: 15%;
                  height: calc(100% + 3vh); } }
              @media screen and (min-width: 768px) and (max-width: 1200px) {
                main #top_story .top_story_box01 .flex-box .right-box .frame_text:after {
                  width: 11%;
                  height: calc(100% + 3vh); } }
            main #top_story .top_story_box01 .flex-box .right-box .frame_text p {
              font-size: min(2.2vw, 30px);
              letter-spacing: .6em; }
              @media screen and (max-width: 767px) {
                main #top_story .top_story_box01 .flex-box .right-box .frame_text p {
                  font-size: 18px; } }
    main #top_story .top_story_box02 {
      margin: 0 0 215px; }
      @media screen and (max-width: 767px) {
        main #top_story .top_story_box02 {
          margin: 0 0 100px; } }
      @media screen and (max-width: 767px) {
        main #top_story .top_story_box02 .flex-box {
          flex-flow: column;
          position: relative; } }
      main #top_story .top_story_box02 .flex-box .left-box {
        flex: 1; }
        @media screen and (max-width: 767px) {
          main #top_story .top_story_box02 .flex-box .left-box {
            order: 2;
            position: absolute;
            left: 0;
            right: 0;
            bottom: 5%;
            margin: auto;
            z-index: 9; } }
        main #top_story .top_story_box02 .flex-box .left-box h3 {
          font-size: min(3vw, 70px);
          line-height: 1;
          text-align: center; }
          @media screen and (max-width: 767px) {
            main #top_story .top_story_box02 .flex-box .left-box h3 {
              font-size: 32px;
              color: #fff; } }
          @media screen and (min-width: 960px) and (max-width: 1499px) {
            main #top_story .top_story_box02 .flex-box .left-box h3 {
              font-size: 42px; } }
          @media screen and (min-width: 768px) and (max-width: 1200px) {
            main #top_story .top_story_box02 .flex-box .left-box h3 {
              font-size: 38px; } }
          main #top_story .top_story_box02 .flex-box .left-box h3 span {
            font-size: min(2.5vw, 60px); }
            @media screen and (max-width: 767px) {
              main #top_story .top_story_box02 .flex-box .left-box h3 span {
                font-size: 28px; } }
            @media screen and (min-width: 960px) and (max-width: 1499px) {
              main #top_story .top_story_box02 .flex-box .left-box h3 span {
                font-size: 32px; } }
            @media screen and (min-width: 768px) and (max-width: 1200px) {
              main #top_story .top_story_box02 .flex-box .left-box h3 span {
                font-size: 28px; } }
      main #top_story .top_story_box02 .flex-box .right-box {
        width: 64%; }
        @media screen and (max-width: 767px) {
          main #top_story .top_story_box02 .flex-box .right-box {
            order: 1;
            width: 100%;
            margin-left: auto; } }
    @media screen and (max-width: 767px) {
      main #top_story .top_story_box03 .flex-box {
        flex-flow: column; } }
    main #top_story .top_story_box03 .flex-box .left-box {
      width: 46.5%;
      position: relative;
      margin-left: 5%; }
      @media screen and (max-width: 767px) {
        main #top_story .top_story_box03 .flex-box .left-box {
          width: 100%;
          margin: 0 auto 30px; } }
      main #top_story .top_story_box03 .flex-box .left-box .bit_img {
        width: 75%;
        margin-left: auto; }
        @media screen and (max-width: 767px) {
          main #top_story .top_story_box03 .flex-box .left-box .bit_img {
            width: 70%; } }
      main #top_story .top_story_box03 .flex-box .left-box .min_img {
        width: 33%;
        position: absolute;
        left: 0%;
        top: -25%; }
        @media screen and (max-width: 767px) {
          main #top_story .top_story_box03 .flex-box .left-box .min_img {
            width: 40%;
            top: -75%;
            left: 20px; } }
    main #top_story .top_story_box03 .flex-box .right-box {
      flex: 1; }
      @media screen and (max-width: 767px) {
        main #top_story .top_story_box03 .flex-box .right-box {
          width: 100%; } }
      main #top_story .top_story_box03 .flex-box .right-box .text-box {
        width: fit-content;
        margin: 0 auto; }
        main #top_story .top_story_box03 .flex-box .right-box .text-box .text01 {
          font-size: min(1.5vw, 16px);
          line-height: 2.8;
          letter-spacing: .15rem;
          margin: 0 0 2em; }
          @media screen and (max-width: 767px) {
            main #top_story .top_story_box03 .flex-box .right-box .text-box .text01 {
              font-size: 12px; } }
  main #top_feature {
    background: var(--color-grey);
    padding: 150px 0 100px; }
    @media screen and (min-width: 768px) and (max-width: 961px) {
      main #top_feature {
        padding: 80px 0; } }
    @media screen and (max-width: 767px) {
      main #top_feature {
        padding: 50px 0; } }
    main #top_feature .inner_box .text-box_01 {
      max-width: 2000px;
      margin: 0 auto -30px; }
      @media screen and (max-width: 2000px) {
        main #top_feature .inner_box .text-box_01 {
          padding: 0 5%; } }
      @media screen and (min-width: 768px) and (max-width: 961px) {
        main #top_feature .inner_box .text-box_01 {
          margin-bottom: -25px; } }
      @media screen and (max-width: 767px) {
        main #top_feature .inner_box .text-box_01 {
          margin-bottom: -15px; } }
      main #top_feature .inner_box .text-box_01 h2 {
        font-size: min(2.5vw, 30px);
        margin: 0 auto;
        padding: 0;
        letter-spacing: 0.1em;
        font-weight: 900; }
        @media screen and (max-width: 767px) {
          main #top_feature .inner_box .text-box_01 h2 {
            font-size: 16px; } }
      main #top_feature .inner_box .text-box_01 h3 {
        font-size: min(10vw, 120px);
        margin: 0 auto;
        padding: 0;
        font-weight: 900; }
        @media screen and (max-width: 767px) {
          main #top_feature .inner_box .text-box_01 h3 {
            font-size: 50px; } }
    main #top_feature .inner_box .product_slide {
      margin: 0 0 90px; }
      @media screen and (min-width: 768px) and (max-width: 961px) {
        main #top_feature .inner_box .product_slide {
          margin-bottom: 50px; } }
      @media screen and (max-width: 767px) {
        main #top_feature .inner_box .product_slide {
          margin: 7px 0 45px; } }
      main #top_feature .inner_box .product_slide .swiper .swiper-wrapper {
        transition-timing-function: linear; }
    main #top_feature .inner_box .text-box_02 {
      display: flex;
      justify-content: space-between;
      max-width: 2000px;
      align-items: center; }
      @media screen and (max-width: 2000px) {
        main #top_feature .inner_box .text-box_02 {
          padding: 0 5%; } }
      @media screen and (max-width: 767px) {
        main #top_feature .inner_box .text-box_02 {
          flex-flow: column; } }
      main #top_feature .inner_box .text-box_02 .left-box {
        display: flex;
        justify-content: flex-start;
        width: 50%; }
        @media screen and (max-width: 767px) {
          main #top_feature .inner_box .text-box_02 .left-box {
            width: 100%;
            margin: 0 0 15px;
            flex-direction: column; } }
        main #top_feature .inner_box .text-box_02 .left-box .vol {
          width: 30%;
          background: #fff;
          font-size: min(2.5vw, 70px);
          font-weight: 900;
          display: flex;
          justify-content: center;
          align-items: center;
          border-top: 2px solid var(--color-black);
          border-bottom: 2px solid var(--color-black);
          border-left: 2px solid var(--color-black); }
          @media screen and (max-width: 767px) {
            main #top_feature .inner_box .text-box_02 .left-box .vol {
              width: 25%;
              font-size: 20px;
              border-right: 2px solid var(--color-black);
              border-bottom: 0px solid var(--color-black);
              padding: 5px 0; } }
        main #top_feature .inner_box .text-box_02 .left-box .text {
          border: 2px solid var(--color-black);
          background: #fff;
          font-size: min(1.2vw, 16px);
          display: flex;
          justify-content: center;
          align-items: center;
          flex: 1;
          line-height: 1.8;
          padding: 20px 0; }
          @media screen and (min-width: 768px) and (max-width: 1200px) {
            main #top_feature .inner_box .text-box_02 .left-box .text {
              padding: 20px 5%; } }
          @media screen and (max-width: 767px) {
            main #top_feature .inner_box .text-box_02 .left-box .text {
              font-size: 12px;
              padding: 15px 0; } }
      @media screen and (max-width: 767px) {
        main #top_feature .inner_box .text-box_02 .right-box {
          margin-left: auto; } }
  main #top_about-us {
    max-width: 960px;
    margin: 0 auto;
    padding: 200px 0; }
    @media screen and (min-width: 768px) and (max-width: 961px) {
      main #top_about-us {
        padding: 200px 20px; } }
    @media screen and (max-width: 767px) {
      main #top_about-us {
        padding: 50px 0 100px; } }
    main #top_about-us h2 {
      font-size: min(10vw, 120px);
      text-align: center;
      font-weight: 900;
      margin: 0 auto 100px; }
      @media screen and (max-width: 767px) {
        main #top_about-us h2 {
          font-size: 50px;
          margin-bottom: 60px; } }
    main #top_about-us h3 {
      font-size: min(2.5vw, 30px);
      font-weight: 900;
      margin: 0 auto 80px;
      text-align: center;
      letter-spacing: 0.2em; }
      @media screen and (max-width: 767px) {
        main #top_about-us h3 {
          font-size: 20px;
          margin: 0 20px 25px;
          line-height: 1.3; } }
    main #top_about-us .about_logo {
      width: 27%;
      margin: 0 auto 85px; }
      @media screen and (max-width: 767px) {
        main #top_about-us .about_logo {
          width: 30%;
          margin: 0 auto 40px; } }
    main #top_about-us .text01 {
      font-size: 16px;
      line-height: 2.8;
      font-weight: 300;
      margin: 0 0 100px;
      letter-spacing: 0.1em; }
      @media screen and (max-width: 767px) {
        main #top_about-us .text01 {
          padding: 0 20px;
          font-size: 12px;
          margin: 0 0 50px; } }
    main #top_about-us .text-button {
      text-align: center; }
      @media screen and (max-width: 767px) {
        main #top_about-us .text-button {
          text-align: right;
          padding-right: 20px; } }
  main #top_news {
    background: var(--color-grey);
    padding: 150px 0;
    position: relative; }
    @media screen and (max-width: 767px) {
      main #top_news {
        padding: 60px 20px; } }
    main #top_news h2 {
      font-size: min(2.5vw, 40px);
      text-align: center;
      margin: 0 auto;
      position: absolute;
      top: -20px;
      left: 0;
      right: 0;
      letter-spacing: 0.2em;
      font-weight: 900; }
      @media screen and (max-width: 767px) {
        main #top_news h2 {
          font-size: 20px;
          top: -10px; } }
      @media screen and (min-width: 960px) and (max-width: 1499px) {
        main #top_news h2 {
          font-size: 30px;
          top: -20px; } }
      @media screen and (min-width: 768px) and (max-width: 1200px) {
        main #top_news h2 {
          font-size: 30px;
          top: -20px; } }
    main #top_news .inner_box {
      max-width: 960px;
      margin: 0 auto;
      position: relative; }
      @media screen and (min-width: 768px) and (max-width: 961px) {
        main #top_news .inner_box {
          padding: 0 20px; } }
      main #top_news .inner_box .news_box dl {
        display: flex;
        justify-content: flex-start;
        font-size: 14px;
        margin-bottom: 30px;
        padding-bottom: 30px;
        border-bottom: 1px solid var(--color-black);
        letter-spacing: .15rem;
        line-height: 1.5; }
        @media screen and (max-width: 767px) {
          main #top_news .inner_box .news_box dl {
            font-size: 12px; } }
        main #top_news .inner_box .news_box dl:last-child {
          margin-bottom: 0;
          padding-bottom: 0;
          border-bottom: none; }
        main #top_news .inner_box .news_box dl dt {
          margin-right: 20px; }

/*下層ページ*/
.sub_page {
  /*story*/
  /*FEATURE*/
  /*ABOUT US*/ }
  .sub_page .sub_page_title {
    max-width: 2000px;
    margin: 0 auto 150px;
    padding-top: 250px; }
    @media screen and (max-width: 2000px) {
      .sub_page .sub_page_title {
        padding: 230px 5% 0; } }
    @media screen and (max-width: 767px) {
      .sub_page .sub_page_title {
        padding: 150px 20px 0;
        margin-bottom: 50px; } }
    .sub_page .sub_page_title h1 {
      font-size: min(10vw, 120px);
      font-weight: 900;
      margin: 0;
      line-height: 1; }
  .sub_page#story_page {
    padding-top: 350px; }
    @media screen and (max-width: 767px) {
      .sub_page#story_page {
        padding-top: 150px; } }
    .sub_page#story_page #sub_page_story_fv {
      margin: 0 0 250px; }
      @media screen and (min-width: 768px) and (max-width: 961px) {
        .sub_page#story_page #sub_page_story_fv {
          padding: 0 20px;
          margin: 0 0 100px; } }
      @media screen and (max-width: 767px) {
        .sub_page#story_page #sub_page_story_fv {
          margin: 0 0 100px; } }
      .sub_page#story_page #sub_page_story_fv .inner-box {
        position: relative;
        margin: 0 0 50px; }
        @media screen and (max-width: 767px) {
          .sub_page#story_page #sub_page_story_fv .inner-box {
            margin: 0 0 0; } }
        @media screen and (min-width: 768px) and (max-width: 961px) {
          .sub_page#story_page #sub_page_story_fv .inner-box {
            margin: 0 0 0; } }
        @media screen and (min-width: 960px) and (max-width: 1499px) {
          .sub_page#story_page #sub_page_story_fv .inner-box {
            margin: 0 0 0; } }
        .sub_page#story_page #sub_page_story_fv .inner-box .title_fv {
          position: absolute;
          left: 5%;
          top: -13%;
          width: fit-content; }
          .sub_page#story_page #sub_page_story_fv .inner-box .title_fv h1 {
            font-size: min(10vw, 120px);
            font-weight: 900;
            margin: 0;
            line-height: 1; }
        .sub_page#story_page #sub_page_story_fv .inner-box .main_fv {
          max-width: 960px;
          margin: 0 auto;
          position: relative;
          padding-bottom: 350px; }
          @media screen and (max-width: 767px) {
            .sub_page#story_page #sub_page_story_fv .inner-box .main_fv {
              padding-bottom: 210px; } }
          .sub_page#story_page #sub_page_story_fv .inner-box .main_fv .img_box {
            display: flex;
            flex-wrap: wrap;
            gap: 10px;
            width: 90.625%;
            margin-left: auto; }
            @media screen and (max-width: 767px) {
              .sub_page#story_page #sub_page_story_fv .inner-box .main_fv .img_box {
                width: 100%;
                padding: 0 20px; } }
            .sub_page#story_page #sub_page_story_fv .inner-box .main_fv .img_box .left-box {
              width: 62.5%; }
              @media screen and (max-width: 767px) {
                .sub_page#story_page #sub_page_story_fv .inner-box .main_fv .img_box .left-box {
                  width: 56%; } }
              @media screen and (min-width: 768px) and (max-width: 961px) {
                .sub_page#story_page #sub_page_story_fv .inner-box .main_fv .img_box .left-box {
                  width: 50%; } }
              @media screen and (min-width: 960px) and (max-width: 1499px) {
                .sub_page#story_page #sub_page_story_fv .inner-box .main_fv .img_box .left-box {
                  width: 50%; } }
            .sub_page#story_page #sub_page_story_fv .inner-box .main_fv .img_box .right-box {
              width: 27.1%;
              display: flex;
              flex-flow: column;
              justify-content: space-between; }
              @media screen and (max-width: 767px) {
                .sub_page#story_page #sub_page_story_fv .inner-box .main_fv .img_box .right-box {
                  width: 21%; } }
              @media screen and (min-width: 768px) and (max-width: 961px) {
                .sub_page#story_page #sub_page_story_fv .inner-box .main_fv .img_box .right-box {
                  width: 21.5%; } }
              @media screen and (min-width: 960px) and (max-width: 1499px) {
                .sub_page#story_page #sub_page_story_fv .inner-box .main_fv .img_box .right-box {
                  width: 21.6%; } }
              @media screen and (max-width: 767px) {
                .sub_page#story_page #sub_page_story_fv .inner-box .main_fv .img_box .right-box .img_02, .sub_page#story_page #sub_page_story_fv .inner-box .main_fv .img_box .right-box .img_03 {
                  object-fit: cover;
                  height: 48%; }
                  .sub_page#story_page #sub_page_story_fv .inner-box .main_fv .img_box .right-box .img_02 img, .sub_page#story_page #sub_page_story_fv .inner-box .main_fv .img_box .right-box .img_03 img {
                    height: 100%;
                    object-fit: cover; } }
          .sub_page#story_page #sub_page_story_fv .inner-box .main_fv .story_text_svg {
            position: absolute;
            left: 0;
            bottom: 7%;
            width: 90%; }
            @media screen and (max-width: 767px) {
              .sub_page#story_page #sub_page_story_fv .inner-box .main_fv .story_text_svg {
                padding: 0 20px;
                bottom: 3%; } }
        .sub_page#story_page #sub_page_story_fv .inner-box .text_fv {
          position: absolute;
          right: 5%;
          width: 20%;
          top: 10%;
          text-align: center;
          display: flex;
          justify-content: center;
          align-items: center;
          /*@media (max-width: 1300px) {
            width: fit-content;
          }*/
          /*p {
            font-size: min(2.8vw, 46px);
            font-weight: 400;
            -ms-writing-mode: tb-rl;
            writing-mode: vertical-rl;
            color: var(--color-black);
            letter-spacing: .2rem;
            @media (max-width: 1300px) {
              font-size: 2.5vw;
            }
            @include mq_sp() {
              font-size: 18px;
            }
          }*/ }
          @media screen and (max-width: 767px) {
            .sub_page#story_page #sub_page_story_fv .inner-box .text_fv {
              right: 5%;
              width: 10%;
              top: 11%; } }
          @media screen and (min-width: 768px) and (max-width: 961px) {
            .sub_page#story_page #sub_page_story_fv .inner-box .text_fv {
              right: 7%;
              width: 7%;
              top: 11%; } }
          @media screen and (min-width: 960px) and (max-width: 1499px) {
            .sub_page#story_page #sub_page_story_fv .inner-box .text_fv {
              right: 7%;
              width: 10%;
              top: 8%; } }
          @media screen and (min-width: 768px) and (max-width: 1200px) {
            .sub_page#story_page #sub_page_story_fv .inner-box .text_fv {
              right: 5%;
              width: 15%;
              top: 10%; } }
          .sub_page#story_page #sub_page_story_fv .inner-box .text_fv p {
            margin: 0 auto 0 0;
            width: 10%; }
            @media screen and (max-width: 767px) {
              .sub_page#story_page #sub_page_story_fv .inner-box .text_fv p {
                width: 45%; } }
            @media screen and (min-width: 768px) and (max-width: 961px) {
              .sub_page#story_page #sub_page_story_fv .inner-box .text_fv p {
                width: 60%; } }
            @media screen and (min-width: 960px) and (max-width: 1499px) {
              .sub_page#story_page #sub_page_story_fv .inner-box .text_fv p {
                width: 45%; } }
            @media screen and (min-width: 768px) and (max-width: 1200px) {
              .sub_page#story_page #sub_page_story_fv .inner-box .text_fv p {
                width: 20%; } }
            .sub_page#story_page #sub_page_story_fv .inner-box .text_fv p img {
              width: 100%; }
      .sub_page#story_page #sub_page_story_fv .detail_box {
        max-width: 960px;
        margin: 0 auto; }
        @media screen and (max-width: 767px) {
          .sub_page#story_page #sub_page_story_fv .detail_box {
            padding: 0 20px; } }
        .sub_page#story_page #sub_page_story_fv .detail_box .jp {
          font-size: 16px;
          line-height: 2.8;
          letter-spacing: .15rem;
          margin: 0 0 60px; }
          @media screen and (max-width: 767px) {
            .sub_page#story_page #sub_page_story_fv .detail_box .jp {
              font-size: 12px;
              margin: 0 0 10px; } }
        .sub_page#story_page #sub_page_story_fv .detail_box .en {
          font-size: 16px;
          line-height: 2.8;
          letter-spacing: .1rem;
          font-weight: 300; }
          @media screen and (max-width: 767px) {
            .sub_page#story_page #sub_page_story_fv .detail_box .en {
              font-size: 12px; } }
    .sub_page#story_page #sub_page_story_contents_01 {
      background: #f2ddbd;
      padding: 5vw 0 6vw;
      margin: 0 0 310px;
      position: relative; }
      @media screen and (min-width: 768px) and (max-width: 961px) {
        .sub_page#story_page #sub_page_story_contents_01 {
          margin: 0 0 150px; } }
      @media screen and (max-width: 767px) {
        .sub_page#story_page #sub_page_story_contents_01 {
          padding: 50px 0;
          margin: 0 0 150px; } }
      .sub_page#story_page #sub_page_story_contents_01 .number01 {
        position: absolute;
        right: 3%;
        top: -7%;
        width: 11.2%; }
        @media screen and (max-width: 767px) {
          .sub_page#story_page #sub_page_story_contents_01 .number01 {
            position: absolute;
            left: 5%;
            top: -45px;
            width: 25%; } }
      .sub_page#story_page #sub_page_story_contents_01 .inner-box {
        position: relative; }
        .sub_page#story_page #sub_page_story_contents_01 .inner-box .flex-box {
          padding: 0 5%;
          display: flex;
          justify-content: space-between;
          margin: 0 auto;
          align-items: flex-end; }
          @media screen and (max-width: 767px) {
            .sub_page#story_page #sub_page_story_contents_01 .inner-box .flex-box {
              flex-flow: column; } }
          .sub_page#story_page #sub_page_story_contents_01 .inner-box .flex-box .left-box {
            width: 28%; }
            @media screen and (max-width: 767px) {
              .sub_page#story_page #sub_page_story_contents_01 .inner-box .flex-box .left-box {
                order: 2;
                width: 100%;
                position: relative; } }
            .sub_page#story_page #sub_page_story_contents_01 .inner-box .flex-box .left-box .text-box .text_img01 {
              width: 100%;
              margin: 0 0 45px; }
              @media screen and (max-width: 767px) {
                .sub_page#story_page #sub_page_story_contents_01 .inner-box .flex-box .left-box .text-box .text_img01 {
                  margin: 0 0 20px; } }
            .sub_page#story_page #sub_page_story_contents_01 .inner-box .flex-box .left-box .text-box .text01 {
              font-size: 0.9vw;
              font-weight: 400;
              line-height: 2;
              letter-spacing: .15rem;
              margin: 0 0 20px; }
              @media screen and (max-width: 767px) {
                .sub_page#story_page #sub_page_story_contents_01 .inner-box .flex-box .left-box .text-box .text01 {
                  font-size: 12px; } }
            .sub_page#story_page #sub_page_story_contents_01 .inner-box .flex-box .left-box .text-box .text02 {
              font-size: 0.7vw;
              font-weight: 400;
              line-height: 1;
              letter-spacing: .15rem; }
              @media screen and (max-width: 767px) {
                .sub_page#story_page #sub_page_story_contents_01 .inner-box .flex-box .left-box .text-box .text02 {
                  font-size: 11px; } }
            .sub_page#story_page #sub_page_story_contents_01 .inner-box .flex-box .left-box .l_img01 {
              position: absolute;
              right: 0;
              bottom: -70%;
              width: 35%; }
          .sub_page#story_page #sub_page_story_contents_01 .inner-box .flex-box .right-box {
            width: 25%;
            padding-bottom: 15vw;
            margin-right: 5%;
            /*sp position*/ }
            @media screen and (max-width: 767px) {
              .sub_page#story_page #sub_page_story_contents_01 .inner-box .flex-box .right-box {
                width: 100%;
                margin: 0 auto 50px;
                padding-bottom: 0;
                position: relative; } }
            @media screen and (max-width: 767px) {
              .sub_page#story_page #sub_page_story_contents_01 .inner-box .flex-box .right-box .r_img01 {
                width: 85%;
                margin-right: auto; } }
            .sub_page#story_page #sub_page_story_contents_01 .inner-box .flex-box .right-box .r_img02 {
              position: absolute;
              right: -10px;
              top: -75px;
              width: 40%; }
            .sub_page#story_page #sub_page_story_contents_01 .inner-box .flex-box .right-box .r_img03 {
              position: absolute;
              right: 0;
              top: 45%;
              width: 45%; }
            .sub_page#story_page #sub_page_story_contents_01 .inner-box .flex-box .right-box .r_img04 {
              width: 100%;
              margin: 25px auto 0; }
              .sub_page#story_page #sub_page_story_contents_01 .inner-box .flex-box .right-box .r_img04 img {
                margin: 0 0 25px; }
              .sub_page#story_page #sub_page_story_contents_01 .inner-box .flex-box .right-box .r_img04 p {
                font-size: 12px;
                font-weight: 400;
                letter-spacing: 0.1em; }
        .sub_page#story_page #sub_page_story_contents_01 .inner-box .img_01 {
          position: absolute;
          width: 25vw;
          left: 5%;
          top: -20%; }
        .sub_page#story_page #sub_page_story_contents_01 .inner-box .img_02 {
          position: absolute;
          width: 14vw;
          left: 10%;
          top: 15%;
          right: 0;
          margin: auto; }
        .sub_page#story_page #sub_page_story_contents_01 .inner-box .img_03 {
          position: absolute;
          width: 22vw;
          left: 0%;
          bottom: -7%;
          right: 11%;
          margin: auto; }
          .sub_page#story_page #sub_page_story_contents_01 .inner-box .img_03 .img_price {
            position: relative; }
            .sub_page#story_page #sub_page_story_contents_01 .inner-box .img_03 .img_price p {
              position: absolute;
              top: 0;
              bottom: 0;
              font-size: 0.7vw;
              font-weight: 400;
              letter-spacing: 0.1em;
              right: -80%;
              margin: auto;
              display: flex;
              justify-content: center;
              align-items: center; }
        .sub_page#story_page #sub_page_story_contents_01 .inner-box .img_04 {
          position: absolute;
          width: 21vw;
          right: 0;
          bottom: -27%; }
      .sub_page#story_page #sub_page_story_contents_01 a:hover {
        text-decoration: underline; }
    .sub_page#story_page #sub_page_story_contents_02 {
      background: #f2e7e7;
      margin: 0 0 310px;
      position: relative; }
      @media screen and (min-width: 768px) and (max-width: 961px) {
        .sub_page#story_page #sub_page_story_contents_02 {
          margin: 0 0 150px; } }
      @media screen and (max-width: 767px) {
        .sub_page#story_page #sub_page_story_contents_02 {
          padding: 50px 0;
          margin-bottom: 150px; } }
      .sub_page#story_page #sub_page_story_contents_02 .number01 {
        position: absolute;
        left: 3%;
        top: -4%;
        width: 11.2%; }
        @media screen and (max-width: 767px) {
          .sub_page#story_page #sub_page_story_contents_02 .number01 {
            position: absolute;
            left: 5%;
            top: -45px;
            width: 25%; } }
      .sub_page#story_page #sub_page_story_contents_02 .inner-box {
        position: relative; }
        .sub_page#story_page #sub_page_story_contents_02 .inner-box .flex-box {
          padding: 0 0 0 5%;
          display: flex;
          justify-content: space-between;
          margin: 0 auto;
          align-items: stretch; }
          @media screen and (max-width: 767px) {
            .sub_page#story_page #sub_page_story_contents_02 .inner-box .flex-box {
              flex-flow: column;
              padding: 0 20px; } }
          .sub_page#story_page #sub_page_story_contents_02 .inner-box .flex-box .left-box {
            flex: 1;
            margin-right: 5%;
            display: flex;
            flex-flow: column; }
            @media screen and (max-width: 767px) {
              .sub_page#story_page #sub_page_story_contents_02 .inner-box .flex-box .left-box {
                order: 2;
                margin: 0 auto;
                width: 100%; } }
            .sub_page#story_page #sub_page_story_contents_02 .inner-box .flex-box .left-box .text-box01 {
              margin-left: auto;
              padding-top: 4vw;
              width: 53%; }
              @media screen and (max-width: 767px) {
                .sub_page#story_page #sub_page_story_contents_02 .inner-box .flex-box .left-box .text-box01 {
                  width: 100%;
                  padding: 0 0 25px; } }
              .sub_page#story_page #sub_page_story_contents_02 .inner-box .flex-box .left-box .text-box01 .text_img {
                width: 100%;
                margin: 0 0 25px; }
              .sub_page#story_page #sub_page_story_contents_02 .inner-box .flex-box .left-box .text-box01 .text01 {
                font-size: 0.9vw;
                font-weight: 400;
                line-height: 2;
                letter-spacing: .15rem;
                margin: 0 0 20px; }
                @media screen and (max-width: 767px) {
                  .sub_page#story_page #sub_page_story_contents_02 .inner-box .flex-box .left-box .text-box01 .text01 {
                    font-size: 12px; } }
              .sub_page#story_page #sub_page_story_contents_02 .inner-box .flex-box .left-box .text-box01 .text02 {
                font-size: 0.7vw;
                font-weight: 400;
                line-height: 1;
                letter-spacing: .15rem; }
                @media screen and (max-width: 767px) {
                  .sub_page#story_page #sub_page_story_contents_02 .inner-box .flex-box .left-box .text-box01 .text02 {
                    font-size: 11px; } }
            @media screen and (max-width: 767px) {
              .sub_page#story_page #sub_page_story_contents_02 .inner-box .flex-box .left-box .sp_only_img_box {
                width: 100%; }
                .sub_page#story_page #sub_page_story_contents_02 .inner-box .flex-box .left-box .sp_only_img_box ul {
                  display: flex;
                  justify-content: space-between; }
                  .sub_page#story_page #sub_page_story_contents_02 .inner-box .flex-box .left-box .sp_only_img_box ul li {
                    width: 30%;
                    transition: 1s; }
                  .sub_page#story_page #sub_page_story_contents_02 .inner-box .flex-box .left-box .sp_only_img_box ul.move_ani li {
                    margin-top: 25px;
                    transition: 1s; }
                    .sub_page#story_page #sub_page_story_contents_02 .inner-box .flex-box .left-box .sp_only_img_box ul.move_ani li:first-child {
                      margin-top: 0; }
                    .sub_page#story_page #sub_page_story_contents_02 .inner-box .flex-box .left-box .sp_only_img_box ul.move_ani li:last-child {
                      margin-top: 50px; } }
            .sub_page#story_page #sub_page_story_contents_02 .inner-box .flex-box .left-box .text-box02 {
              margin-top: auto;
              padding-bottom: 80px; }
              @media screen and (max-width: 767px) {
                .sub_page#story_page #sub_page_story_contents_02 .inner-box .flex-box .left-box .text-box02 {
                  padding: 20px 0 0; } }
              .sub_page#story_page #sub_page_story_contents_02 .inner-box .flex-box .left-box .text-box02 ul {
                display: flex;
                flex-flow: column;
                gap: 10px; }
                @media screen and (min-width: 768px) and (max-width: 961px) {
                  .sub_page#story_page #sub_page_story_contents_02 .inner-box .flex-box .left-box .text-box02 ul {
                    gap: 0; } }
                @media screen and (min-width: 768px) and (max-width: 1200px) {
                  .sub_page#story_page #sub_page_story_contents_02 .inner-box .flex-box .left-box .text-box02 ul {
                    gap: 0; } }
                .sub_page#story_page #sub_page_story_contents_02 .inner-box .flex-box .left-box .text-box02 ul li a {
                  font-size: 0.7vw;
                  font-weight: 400;
                  letter-spacing: 0.1em; }
                  @media screen and (max-width: 767px) {
                    .sub_page#story_page #sub_page_story_contents_02 .inner-box .flex-box .left-box .text-box02 ul li a {
                      font-size: 12px; } }
          .sub_page#story_page #sub_page_story_contents_02 .inner-box .flex-box .right-box {
            width: 45%; }
            @media screen and (max-width: 767px) {
              .sub_page#story_page #sub_page_story_contents_02 .inner-box .flex-box .right-box {
                order: 1;
                width: 100%;
                margin: 0 0 25px; } }
        .sub_page#story_page #sub_page_story_contents_02 .inner-box .img_01 {
          position: absolute;
          width: 15%;
          left: 5%;
          top: 30%;
          transition: 1s; }
          .sub_page#story_page #sub_page_story_contents_02 .inner-box .img_01.move_ani {
            left: 5%;
            top: 30%;
            transition: 1s; }
        .sub_page#story_page #sub_page_story_contents_02 .inner-box .img_02 {
          position: absolute;
          width: 15%;
          left: 21%;
          top: 30%;
          transition: 1s; }
          .sub_page#story_page #sub_page_story_contents_02 .inner-box .img_02.move_ani {
            left: 21%;
            top: 40%;
            transition: 1s; }
        .sub_page#story_page #sub_page_story_contents_02 .inner-box .img_03 {
          position: absolute;
          width: 15%;
          left: 37%;
          top: 30%;
          transition: 1s; }
          .sub_page#story_page #sub_page_story_contents_02 .inner-box .img_03.move_ani {
            left: 37%;
            top: 50%;
            transition: 1s; }
      .sub_page#story_page #sub_page_story_contents_02 a:hover {
        text-decoration: underline; }
    .sub_page#story_page #sub_page_story_contents_03 {
      background: #eae0d3;
      margin: 0 0 310px;
      position: relative;
      padding: 5vw 0 6vw; }
      @media screen and (min-width: 768px) and (max-width: 961px) {
        .sub_page#story_page #sub_page_story_contents_03 {
          margin: 0 0 150px; } }
      @media screen and (max-width: 767px) {
        .sub_page#story_page #sub_page_story_contents_03 {
          padding: 50px 0;
          margin-bottom: 50px; } }
      .sub_page#story_page #sub_page_story_contents_03 .number01 {
        position: absolute;
        left: 7%;
        top: 55%;
        width: 11.2%; }
        @media screen and (max-width: 767px) {
          .sub_page#story_page #sub_page_story_contents_03 .number01 {
            right: 5%;
            top: -45px;
            width: 25%;
            left: inherit; } }
      .sub_page#story_page #sub_page_story_contents_03 .inner-box {
        position: relative; }
        .sub_page#story_page #sub_page_story_contents_03 .inner-box .flex-box {
          padding: 0 0 0 5%;
          display: flex;
          justify-content: flex-start;
          margin: 0 auto;
          align-items: flex-end; }
          @media screen and (max-width: 767px) {
            .sub_page#story_page #sub_page_story_contents_03 .inner-box .flex-box {
              flex-flow: column;
              padding: 0 20px; } }
          .sub_page#story_page #sub_page_story_contents_03 .inner-box .flex-box .left-box {
            width: 29vw;
            position: relative;
            z-index: 1; }
            @media screen and (max-width: 767px) {
              .sub_page#story_page #sub_page_story_contents_03 .inner-box .flex-box .left-box {
                order: 2;
                width: 100%; } }
            .sub_page#story_page #sub_page_story_contents_03 .inner-box .flex-box .left-box .l_img01 {
              width: 16.5vw;
              margin-left: auto;
              margin-bottom: 2.5vw; }
              @media screen and (max-width: 767px) {
                .sub_page#story_page #sub_page_story_contents_03 .inner-box .flex-box .left-box .l_img01 {
                  width: 100%; } }
            .sub_page#story_page #sub_page_story_contents_03 .inner-box .flex-box .left-box .text-box01 {
              width: 100%; }
              .sub_page#story_page #sub_page_story_contents_03 .inner-box .flex-box .left-box .text-box01 ul {
                display: flex;
                flex-flow: column;
                gap: 10px; }
                @media screen and (min-width: 768px) and (max-width: 961px) {
                  .sub_page#story_page #sub_page_story_contents_03 .inner-box .flex-box .left-box .text-box01 ul {
                    gap: 0; } }
                @media screen and (min-width: 768px) and (max-width: 1200px) {
                  .sub_page#story_page #sub_page_story_contents_03 .inner-box .flex-box .left-box .text-box01 ul {
                    gap: 0; } }
                .sub_page#story_page #sub_page_story_contents_03 .inner-box .flex-box .left-box .text-box01 ul li a {
                  font-size: 0.7vw;
                  font-weight: 400;
                  letter-spacing: 0.1em; }
                  @media screen and (max-width: 767px) {
                    .sub_page#story_page #sub_page_story_contents_03 .inner-box .flex-box .left-box .text-box01 ul li a {
                      font-size: 12px; } }
          .sub_page#story_page #sub_page_story_contents_03 .inner-box .flex-box .right-box {
            width: 50%;
            padding-bottom: 39vw;
            margin-left: 12.5vw; }
            @media screen and (max-width: 767px) {
              .sub_page#story_page #sub_page_story_contents_03 .inner-box .flex-box .right-box {
                order: 1;
                position: relative;
                width: 100%;
                margin: 0 auto;
                padding-bottom: 5px; } }
            .sub_page#story_page #sub_page_story_contents_03 .inner-box .flex-box .right-box .text-box01 .text_img {
              width: 60%;
              margin: 0 0 25px; }
              @media screen and (max-width: 767px) {
                .sub_page#story_page #sub_page_story_contents_03 .inner-box .flex-box .right-box .text-box01 .text_img {
                  width: 100%; } }
            .sub_page#story_page #sub_page_story_contents_03 .inner-box .flex-box .right-box .text-box01 .text01 {
              font-size: 0.9vw;
              font-weight: 400;
              line-height: 2;
              letter-spacing: .15rem;
              margin: 0 0 20px; }
              @media screen and (max-width: 767px) {
                .sub_page#story_page #sub_page_story_contents_03 .inner-box .flex-box .right-box .text-box01 .text01 {
                  font-size: 12px; } }
            .sub_page#story_page #sub_page_story_contents_03 .inner-box .flex-box .right-box .text-box01 .text02 {
              font-size: 0.7vw;
              font-weight: 400;
              line-height: 1;
              letter-spacing: .15rem; }
              @media screen and (max-width: 767px) {
                .sub_page#story_page #sub_page_story_contents_03 .inner-box .flex-box .right-box .text-box01 .text02 {
                  font-size: 11px; } }
            .sub_page#story_page #sub_page_story_contents_03 .inner-box .flex-box .right-box .l_img01 {
              width: 85%;
              margin-left: auto; }
              .sub_page#story_page #sub_page_story_contents_03 .inner-box .flex-box .right-box .l_img01 img {
                object-fit: cover;
                height: 400px; }
            .sub_page#story_page #sub_page_story_contents_03 .inner-box .flex-box .right-box .l_img02 {
              position: absolute;
              left: -10px;
              top: -75px;
              width: 40%; }
            .sub_page#story_page #sub_page_story_contents_03 .inner-box .flex-box .right-box .l_img03 {
              margin: 25px auto; }
              .sub_page#story_page #sub_page_story_contents_03 .inner-box .flex-box .right-box .l_img03 img {
                object-fit: cover;
                height: 400px;
                object-position: center -50px; }
            .sub_page#story_page #sub_page_story_contents_03 .inner-box .flex-box .right-box .l_img04 {
              margin: 25px auto; }
        .sub_page#story_page #sub_page_story_contents_03 .inner-box .img_01 {
          position: absolute;
          width: 42vw;
          left: 0;
          top: -15%;
          transition: 1s; }
        .sub_page#story_page #sub_page_story_contents_03 .inner-box .img_02 {
          position: absolute;
          width: 26.5vw;
          right: 0;
          top: 0;
          transition: 1s;
          bottom: 0;
          margin: auto;
          height: fit-content; }
        .sub_page#story_page #sub_page_story_contents_03 .inner-box .img_03 {
          position: absolute;
          width: 23vw;
          left: 29%;
          bottom: -25%;
          transition: 1s;
          z-index: 0; }
        .sub_page#story_page #sub_page_story_contents_03 .inner-box .img_04 {
          position: absolute;
          width: 18vw;
          left: 53.8%;
          bottom: 15%;
          transition: 1s;
          z-index: 0; }
        .sub_page#story_page #sub_page_story_contents_03 .inner-box .img_05 {
          position: absolute;
          width: 13.5vw;
          left: 17.5%;
          bottom: 21%;
          transition: 1s;
          z-index: 0; }
        .sub_page#story_page #sub_page_story_contents_03 .inner-box .sc_trigger {
          opacity: 0;
          transition: 2s; }
          .sub_page#story_page #sub_page_story_contents_03 .inner-box .sc_trigger.move_ani {
            opacity: 1;
            transition: 2s; }
      .sub_page#story_page #sub_page_story_contents_03 a:hover {
        text-decoration: underline; }
    .sub_page#story_page #credit_box {
      padding-bottom: 250px; }
      @media screen and (max-width: 767px) {
        .sub_page#story_page #credit_box {
          padding-bottom: 100px; } }
      .sub_page#story_page #credit_box .inner_box {
        max-width: 960px;
        margin: 0 auto;
        border: 1px solid var(--color-black); }
        @media screen and (min-width: 768px) and (max-width: 961px) {
          .sub_page#story_page #credit_box .inner_box {
            width: calc(100% - 40px); } }
        @media screen and (max-width: 767px) {
          .sub_page#story_page #credit_box .inner_box {
            width: calc(100% - 40px); } }
      .sub_page#story_page #credit_box p {
        font-size: 14px;
        text-align: center;
        padding: 50px 0;
        line-height: 1.8;
        letter-spacing: .1rem;
        font-weight: 400; }
        @media screen and (max-width: 767px) {
          .sub_page#story_page #credit_box p {
            font-size: 10px;
            padding: 20px 10px; } }
  .sub_page#feature_page #sub_page_feature_contents01 .inner-box {
    max-width: 960px;
    margin: 0 auto 200px; }
    @media screen and (min-width: 768px) and (max-width: 961px) {
      .sub_page#feature_page #sub_page_feature_contents01 .inner-box {
        padding: 0 20px; } }
    @media screen and (max-width: 767px) {
      .sub_page#feature_page #sub_page_feature_contents01 .inner-box {
        margin: 0 auto 100px; } }
    .sub_page#feature_page #sub_page_feature_contents01 .inner-box .flex-box {
      align-items: center;
      margin: 0 0 50px; }
      @media screen and (max-width: 767px) {
        .sub_page#feature_page #sub_page_feature_contents01 .inner-box .flex-box {
          flex-flow: column; } }
      .sub_page#feature_page #sub_page_feature_contents01 .inner-box .flex-box .left-box {
        flex: 1;
        margin-right: 50px; }
        @media screen and (max-width: 767px) {
          .sub_page#feature_page #sub_page_feature_contents01 .inner-box .flex-box .left-box {
            order: 2;
            margin: 0 0 0 auto;
            padding: 0 20px; } }
        .sub_page#feature_page #sub_page_feature_contents01 .inner-box .flex-box .left-box p {
          font-size: 40px;
          line-height: 54px;
          font-weight: 900;
          letter-spacing: 0;
          text-align: right; }
          @media screen and (max-width: 767px) {
            .sub_page#feature_page #sub_page_feature_contents01 .inner-box .flex-box .left-box p {
              font-size: 32px;
              line-height: 37px; } }
      .sub_page#feature_page #sub_page_feature_contents01 .inner-box .flex-box .right-box {
        width: 57.29%; }
        @media screen and (max-width: 767px) {
          .sub_page#feature_page #sub_page_feature_contents01 .inner-box .flex-box .right-box {
            order: 1;
            width: 100%;
            margin: 0 0 10px; } }
        .sub_page#feature_page #sub_page_feature_contents01 .inner-box .flex-box .right-box.sc_trigger {
          filter: blur(1.5rem);
          transition: 1.5s; }
          .sub_page#feature_page #sub_page_feature_contents01 .inner-box .flex-box .right-box.sc_trigger.move_ani {
            filter: blur(0);
            transition: 1.5s; }
    .sub_page#feature_page #sub_page_feature_contents01 .inner-box .text-area {
      margin: 0 0 100px; }
      @media screen and (max-width: 767px) {
        .sub_page#feature_page #sub_page_feature_contents01 .inner-box .text-area {
          margin: 0 0 50px; } }
      .sub_page#feature_page #sub_page_feature_contents01 .inner-box .text-area .text-explanation {
        width: 80%;
        margin: 0 auto 100px;
        background: var(--color-grey);
        padding: 20px 0; }
        @media screen and (max-width: 767px) {
          .sub_page#feature_page #sub_page_feature_contents01 .inner-box .text-area .text-explanation {
            padding: 20px 20px;
            width: 100%;
            margin: 0 auto 50px; } }
        .sub_page#feature_page #sub_page_feature_contents01 .inner-box .text-area .text-explanation p {
          text-align: center;
          font-size: 16px;
          line-height: 1.8; }
          @media screen and (max-width: 767px) {
            .sub_page#feature_page #sub_page_feature_contents01 .inner-box .text-area .text-explanation p {
              font-size: 12px; } }
      .sub_page#feature_page #sub_page_feature_contents01 .inner-box .text-area .text-box {
        margin: 0 0 40px;
        text-align: center; }
        @media screen and (max-width: 767px) {
          .sub_page#feature_page #sub_page_feature_contents01 .inner-box .text-area .text-box {
            padding: 0 20px;
            margin: 0 0 20px; } }
        .sub_page#feature_page #sub_page_feature_contents01 .inner-box .text-area .text-box p {
          font-size: 14px;
          font-weight: 300;
          line-height: 2;
          letter-spacing: 0.15em; }
          @media screen and (max-width: 767px) {
            .sub_page#feature_page #sub_page_feature_contents01 .inner-box .text-area .text-box p {
              font-size: 12px; } }
          .sub_page#feature_page #sub_page_feature_contents01 .inner-box .text-area .text-box p.en {
            font-size: 16px;
            font-weight: 700;
            letter-spacing: 0.15em; }
            @media screen and (max-width: 767px) {
              .sub_page#feature_page #sub_page_feature_contents01 .inner-box .text-area .text-box p.en {
                font-size: 14px; } }
          .sub_page#feature_page #sub_page_feature_contents01 .inner-box .text-area .text-box p.sc_trigger {
            opacity: 0;
            transition: 1s; }
            .sub_page#feature_page #sub_page_feature_contents01 .inner-box .text-area .text-box p.sc_trigger.move_ani {
              opacity: 1;
              transition: 1s; }
    @media screen and (max-width: 767px) {
      .sub_page#feature_page #sub_page_feature_contents01 .inner-box .movie_area {
        padding: 0 20px; } }
    .sub_page#feature_page #sub_page_feature_contents01 .inner-box .movie_area video {
      width: 100%; }
  .sub_page#feature_page #sub_page_feature_contents02 {
    background: var(--color-grey);
    position: relative;
    padding: 200px 0; }
    @media screen and (max-width: 767px) {
      .sub_page#feature_page #sub_page_feature_contents02 {
        padding: 100px 0 50px; } }
    @media screen and (min-width: 960px) and (max-width: 1499px) {
      .sub_page#feature_page #sub_page_feature_contents02 {
        padding: 150px 0 50px; } }
    @media screen and (min-width: 768px) and (max-width: 1200px) {
      .sub_page#feature_page #sub_page_feature_contents02 {
        padding: 150px 0 50px; } }
    .sub_page#feature_page #sub_page_feature_contents02 h2 {
      font-size: 30px;
      font-weight: 900;
      letter-spacing: .1rem;
      text-align: center;
      position: absolute;
      left: 0;
      right: 0;
      top: -20px; }
      @media screen and (max-width: 767px) {
        .sub_page#feature_page #sub_page_feature_contents02 h2 {
          font-size: 20px;
          top: -10px; } }
      .sub_page#feature_page #sub_page_feature_contents02 h2.sc_trigger {
        transform: translateY(50px);
        transition: 0.8s;
        opacity: 0; }
        .sub_page#feature_page #sub_page_feature_contents02 h2.sc_trigger.move_ani {
          transform: translateY(0);
          transition: 0.8s;
          opacity: 1; }
    .sub_page#feature_page #sub_page_feature_contents02 .product_box {
      max-width: 960px;
      margin: 0 auto; }
      @media screen and (min-width: 768px) and (max-width: 961px) {
        .sub_page#feature_page #sub_page_feature_contents02 .product_box {
          padding: 0 20px; } }
      @media screen and (max-width: 767px) {
        .sub_page#feature_page #sub_page_feature_contents02 .product_box {
          padding: 0 20px; } }
      .sub_page#feature_page #sub_page_feature_contents02 .product_box h3 {
        font-size: 22px;
        font-weight: 900;
        margin: 0 0 100px;
        letter-spacing: 0.2em; }
        @media screen and (max-width: 767px) {
          .sub_page#feature_page #sub_page_feature_contents02 .product_box h3 {
            font-size: 14px;
            margin: 0 0 40px;
            letter-spacing: 0.15em; } }
        .sub_page#feature_page #sub_page_feature_contents02 .product_box h3.sc_trigger {
          transition: 1s;
          opacity: 0;
          position: relative; }
          .sub_page#feature_page #sub_page_feature_contents02 .product_box h3.sc_trigger:before {
            content: "";
            width: 0;
            height: 2px;
            background: var(--color-black);
            position: absolute;
            left: 0;
            bottom: -25px;
            transition: 1s;
            transition-delay: 0.5s; }
            @media screen and (max-width: 767px) {
              .sub_page#feature_page #sub_page_feature_contents02 .product_box h3.sc_trigger:before {
                bottom: -15px; } }
          .sub_page#feature_page #sub_page_feature_contents02 .product_box h3.sc_trigger.move_ani {
            transition: 1s;
            opacity: 1; }
            .sub_page#feature_page #sub_page_feature_contents02 .product_box h3.sc_trigger.move_ani:before {
              width: 100%;
              transition: 1s;
              transition-delay: 0.5s; }
      .sub_page#feature_page #sub_page_feature_contents02 .product_box ul {
        display: flex;
        justify-content: flex-start;
        gap: 2%;
        margin: 0 0 100px; }
        @media screen and (max-width: 767px) {
          .sub_page#feature_page #sub_page_feature_contents02 .product_box ul {
            margin: 0 0 50px; } }
        .sub_page#feature_page #sub_page_feature_contents02 .product_box ul li {
          width: 32%; }
          .sub_page#feature_page #sub_page_feature_contents02 .product_box ul li a .product_img {
            overflow: hidden; }
            .sub_page#feature_page #sub_page_feature_contents02 .product_box ul li a .product_img img {
              margin: 0 auto;
              transition: transform .6s ease; }
          .sub_page#feature_page #sub_page_feature_contents02 .product_box ul li a p {
            text-align: center;
            font-weight: 400;
            letter-spacing: .15rem; }
            .sub_page#feature_page #sub_page_feature_contents02 .product_box ul li a p.name {
              font-size: 16px;
              margin: 30px 0 15px; }
              @media screen and (max-width: 767px) {
                .sub_page#feature_page #sub_page_feature_contents02 .product_box ul li a p.name {
                  margin: 15px 0 10px;
                  font-size: 12px; } }
            @media screen and (max-width: 767px) {
              .sub_page#feature_page #sub_page_feature_contents02 .product_box ul li a p.price {
                font-size: 12px; } }
          .sub_page#feature_page #sub_page_feature_contents02 .product_box ul li a:hover img {
            transform: scale(1.1); }
  .sub_page#feature_page #credit_box {
    max-width: 960px;
    margin: 0 auto;
    padding: 100px 0 150px; }
    @media screen and (min-width: 768px) and (max-width: 961px) {
      .sub_page#feature_page #credit_box {
        padding: 100px 20px 150px; } }
    @media screen and (max-width: 767px) {
      .sub_page#feature_page #credit_box {
        padding: 50px 20px 100px; } }
    .sub_page#feature_page #credit_box h2 {
      font-size: 30px;
      font-weight: 900;
      margin: 0 0 15px;
      letter-spacing: 0.1em; }
      @media screen and (max-width: 767px) {
        .sub_page#feature_page #credit_box h2 {
          font-size: 20px; } }
    .sub_page#feature_page #credit_box h3 {
      font-size: 60px;
      line-height: 1;
      margin: 0 0 50px;
      font-weight: 400; }
      @media screen and (max-width: 767px) {
        .sub_page#feature_page #credit_box h3 {
          font-size: 50px;
          margin: 0 0 25px;
          line-height: 55px; } }
    .sub_page#feature_page #credit_box .inner_box {
      border: 1px solid var(--color-black);
      padding: 20px;
      width: 80%; }
      @media screen and (max-width: 767px) {
        .sub_page#feature_page #credit_box .inner_box {
          width: 100%;
          padding: 15px; } }
      .sub_page#feature_page #credit_box .inner_box p {
        font-size: 14px;
        line-height: 1.8;
        letter-spacing: .15rem; }
        @media screen and (max-width: 767px) {
          .sub_page#feature_page #credit_box .inner_box p {
            font-size: 12px; } }
  .sub_page#about_us_page #sub_page_about_us_contents01 .inner-box {
    max-width: 960px;
    margin: 0 auto 300px; }
    @media screen and (min-width: 768px) and (max-width: 961px) {
      .sub_page#about_us_page #sub_page_about_us_contents01 .inner-box {
        padding: 0 20px; } }
    @media screen and (max-width: 767px) {
      .sub_page#about_us_page #sub_page_about_us_contents01 .inner-box {
        padding: 0 20px;
        margin: 0 auto 100px; } }
    .sub_page#about_us_page #sub_page_about_us_contents01 .inner-box h2 {
      font-size: 30px;
      margin: 0 0 80px;
      text-align: center;
      font-weight: 900;
      letter-spacing: 0.2em; }
      @media screen and (max-width: 767px) {
        .sub_page#about_us_page #sub_page_about_us_contents01 .inner-box h2 {
          font-size: 20px;
          line-height: 1.3;
          margin: 0 0 50px; } }
    .sub_page#about_us_page #sub_page_about_us_contents01 .inner-box .anniversary_img {
      max-width: 220px;
      margin: 0 auto 80px; }
      @media screen and (max-width: 767px) {
        .sub_page#about_us_page #sub_page_about_us_contents01 .inner-box .anniversary_img {
          width: 40%;
          margin: 0 auto 50px; } }
    .sub_page#about_us_page #sub_page_about_us_contents01 .inner-box p.jp {
      font-size: 16px;
      line-height: 2.8;
      margin: 0 0 50px;
      letter-spacing: .15em; }
      @media screen and (max-width: 767px) {
        .sub_page#about_us_page #sub_page_about_us_contents01 .inner-box p.jp {
          font-size: 12px; } }
    .sub_page#about_us_page #sub_page_about_us_contents01 .inner-box p.en {
      font-size: 16px;
      line-height: 2.8;
      margin: 0 0 0;
      letter-spacing: .1em;
      font-weight: 300; }
      @media screen and (max-width: 767px) {
        .sub_page#about_us_page #sub_page_about_us_contents01 .inner-box p.en {
          font-size: 12px; } }
  .sub_page#about_us_page #sub_page_about_us_contents02 {
    position: relative;
    overflow: hidden; }
    @media screen and (max-width: 767px) {
      .sub_page#about_us_page #sub_page_about_us_contents02 {
        padding: 0 20px; } }
    .sub_page#about_us_page #sub_page_about_us_contents02 .about_us_logo {
      position: absolute;
      width: 70%;
      bottom: -10%;
      left: -25%;
      z-index: -1; }
      @media screen and (max-width: 767px) {
        .sub_page#about_us_page #sub_page_about_us_contents02 .about_us_logo {
          width: 85%;
          bottom: -4%;
          left: -14%; } }
    .sub_page#about_us_page #sub_page_about_us_contents02 .inner-box {
      max-width: 960px;
      margin: 0 auto; }
      @media screen and (min-width: 768px) and (max-width: 961px) {
        .sub_page#about_us_page #sub_page_about_us_contents02 .inner-box {
          padding: 0 20px; } }
      .sub_page#about_us_page #sub_page_about_us_contents02 .inner-box h2 {
        font-size: 30px;
        text-align: center;
        margin: 0 0 80px;
        font-weight: 900;
        letter-spacing: 0.2em; }
        @media screen and (max-width: 767px) {
          .sub_page#about_us_page #sub_page_about_us_contents02 .inner-box h2 {
            font-size: 20px;
            line-height: 37px;
            margin: 0 0 40px; } }
      .sub_page#about_us_page #sub_page_about_us_contents02 .inner-box .text-box {
        text-align: center;
        margin: 0 0 60px; }
        .sub_page#about_us_page #sub_page_about_us_contents02 .inner-box .text-box:last-child {
          margin-bottom: 0; }
        .sub_page#about_us_page #sub_page_about_us_contents02 .inner-box .text-box.mb100 {
          margin-bottom: 100px; }
        .sub_page#about_us_page #sub_page_about_us_contents02 .inner-box .text-box p {
          font-size: 16px;
          margin: 0 0 25px;
          letter-spacing: .15em; }
          @media screen and (max-width: 767px) {
            .sub_page#about_us_page #sub_page_about_us_contents02 .inner-box .text-box p {
              font-size: 12px;
              line-height: 2;
              margin: 0 0 10px; } }
          .sub_page#about_us_page #sub_page_about_us_contents02 .inner-box .text-box p.sc_trigger {
            opacity: 0;
            transition: 1s; }
            .sub_page#about_us_page #sub_page_about_us_contents02 .inner-box .text-box p.sc_trigger.move_ani {
              opacity: 1;
              transition: 1s; }
        .sub_page#about_us_page #sub_page_about_us_contents02 .inner-box .text-box p.en {
          font-size: 16px;
          margin: 0 0 25px;
          letter-spacing: .1rem;
          font-weight: 300; }
          @media screen and (max-width: 767px) {
            .sub_page#about_us_page #sub_page_about_us_contents02 .inner-box .text-box p.en {
              font-size: 12px;
              line-height: 2;
              margin: 0 0 10px; } }
      .sub_page#about_us_page #sub_page_about_us_contents02 .inner-box .logo {
        max-width: 160px;
        margin: 0 auto 150px; }
        @media screen and (max-width: 767px) {
          .sub_page#about_us_page #sub_page_about_us_contents02 .inner-box .logo {
            width: 100px; } }
      .sub_page#about_us_page #sub_page_about_us_contents02 .inner-box .store_box {
        background: var(--color-grey);
        padding: 80px 0;
        position: relative;
        margin: 0 0 150px; }
        @media screen and (max-width: 767px) {
          .sub_page#about_us_page #sub_page_about_us_contents02 .inner-box .store_box {
            padding: 20px 0; } }
        .sub_page#about_us_page #sub_page_about_us_contents02 .inner-box .store_box h3 {
          font-size: 30px;
          text-align: center;
          position: absolute;
          left: 0;
          right: 0;
          top: -20px;
          font-weight: 900;
          letter-spacing: 0.2em; }
          @media screen and (max-width: 767px) {
            .sub_page#about_us_page #sub_page_about_us_contents02 .inner-box .store_box h3 {
              font-size: 20px;
              top: -10px; } }
        .sub_page#about_us_page #sub_page_about_us_contents02 .inner-box .store_box ul {
          display: flex;
          justify-content: center;
          gap: 5%; }
          @media screen and (max-width: 767px) {
            .sub_page#about_us_page #sub_page_about_us_contents02 .inner-box .store_box ul {
              flex-flow: column;
              padding: 20px 40px;
              gap: 10px 0; } }
          .sub_page#about_us_page #sub_page_about_us_contents02 .inner-box .store_box ul li {
            letter-spacing: .2rem;
            font-weight: 900;
            width: 35%;
            max-width: 320px; }
            @media screen and (max-width: 767px) {
              .sub_page#about_us_page #sub_page_about_us_contents02 .inner-box .store_box ul li {
                width: 100%; } }
            .sub_page#about_us_page #sub_page_about_us_contents02 .inner-box .store_box ul li:first-child {
              background: #ec4500;
              border: 2px solid #ec4500;
              transition: 1s; }
              .sub_page#about_us_page #sub_page_about_us_contents02 .inner-box .store_box ul li:first-child:hover {
                background: #fff;
                transition: 1s; }
                .sub_page#about_us_page #sub_page_about_us_contents02 .inner-box .store_box ul li:first-child:hover a {
                  color: #ec4500; }
            .sub_page#about_us_page #sub_page_about_us_contents02 .inner-box .store_box ul li:last-child {
              background: #0729a3;
              border: 2px solid #0729a3;
              transition: 1s; }
              .sub_page#about_us_page #sub_page_about_us_contents02 .inner-box .store_box ul li:last-child:hover {
                background: #fff;
                transition: 1s; }
                .sub_page#about_us_page #sub_page_about_us_contents02 .inner-box .store_box ul li:last-child:hover a {
                  color: #0729a3; }
            .sub_page#about_us_page #sub_page_about_us_contents02 .inner-box .store_box ul li a {
              padding: 20px 0;
              display: flex;
              justify-content: center;
              align-items: center;
              color: #fff;
              font-size: 16px; }
              @media screen and (max-width: 767px) {
                .sub_page#about_us_page #sub_page_about_us_contents02 .inner-box .store_box ul li a {
                  font-size: 12px; } }

/*footer*/
footer {
  background: var(--color-black);
  position: sticky;
  bottom: 0;
  padding: 140px 0 120px; }
  @media screen and (max-width: 767px) {
    footer {
      padding: 100px 20px; } }
  footer .flex-box {
    max-width: 960px;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    color: #fff;
    align-items: flex-end; }
    @media screen and (min-width: 768px) and (max-width: 961px) {
      footer .flex-box {
        padding: 0 20px; } }
    footer .flex-box .left-box .f_logo {
      width: 40%;
      max-width: 130px;
      margin: 0 0 40px; }
    footer .flex-box .left-box .f_text {
      font-size: 14px;
      margin: 0 0 20px;
      letter-spacing: 0.1em;
      font-weight: 400; }
    footer .flex-box .left-box .sns_list {
      display: flex;
      justify-content: flex-start;
      gap: 18px;
      margin: 0 0 40px; }
      footer .flex-box .left-box .sns_list li {
        width: 8%;
        max-width: 30px; }
    footer .flex-box .left-box nav ul.footer_nav {
      display: flex;
      justify-content: flex-start;
      gap: 25px; }
      @media screen and (max-width: 767px) {
        footer .flex-box .left-box nav ul.footer_nav {
          flex-flow: column; } }
      footer .flex-box .left-box nav ul.footer_nav li {
        font-weight: 400;
        font-size: 14px;
        letter-spacing: .1rem; }
        footer .flex-box .left-box nav ul.footer_nav li a {
          color: #fff; }
    footer .flex-box .right-box p {
      font-size: 14px;
      padding: 0;
      margin: 0;
      letter-spacing: 0.1em;
      font-weight: 400; }

/*footer end*/
.matrix-move01 img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center bottom; }

.matrix-move02 {
  transform: translateY(19.8937px);
  will-change: transform; }

.matrix-move03 img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center bottom; }

.matrix-move04 {
  transform: translateY(150px);
  will-change: transform; }

.matrix-move05 {
  transform: translateY(50px);
  will-change: transform; }

/*スクロールで文字表示*/
.sc_trigger.t_ani001 {
  transform: translateY(100px);
  transition: 0.8s;
  display: block;
  opacity: 0; }
  .sc_trigger.t_ani001.move_ani {
    transform: translateY(0);
    transition: 0.8s;
    opacity: 1; }

/*----------------------------
背景動き
----------------------------*/
@keyframes bg-up {
  0%, 100% {
    transform: translateY(0); }
  50% {
    transform: translateY(-40px); } }
/*----------------------------
scroll_up ｜下から上へ出現
----------------------------*/
.scroll_up {
  transition: 0.8s ease-in-out;
  transform: translateY(40px);
  opacity: 0; }

.scroll_up.on {
  transform: translateY(0);
  opacity: 1.0; }

/*op*/
#logo {
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 1001;
  opacity: 1;
  transition: opacity 0.8s ease-in-out;
  width: 10%; }

body {
  margin: 0; }

/* wrapper全体を初期で透明 */
#wrapper {
  opacity: 0;
  transition: opacity 0.8s ease; }

/* visibleクラスでフェードイン */
#wrapper.visible {
  opacity: 1; }

/* ===== 共通カーテン（白） ===== */
.topCurtainbg, .bottomCurtainbg, .leftCurtainbg, .rightCurtainbg {
  position: fixed;
  z-index: 1000;
  background-color: #fff;
  animation-duration: 1.2s;
  animation-timing-function: ease-in-out;
  animation-fill-mode: forwards; }

/* 上下カーテン */
.topCurtainbg, .bottomCurtainbg {
  width: 100%;
  height: 50%;
  left: 0; }

.topCurtainbg {
  top: 0;
  transform: scaleY(1);
  transform-origin: top; }

.bottomCurtainbg {
  bottom: 0;
  transform: scaleY(1);
  transform-origin: bottom; }

/* 左右カーテン */
.leftCurtainbg, .rightCurtainbg {
  width: 50%;
  height: 100%;
  top: 0; }

.leftCurtainbg {
  left: 0;
  transform: scaleX(1);
  transform-origin: left; }

.rightCurtainbg {
  right: 0;
  transform: scaleX(1);
  transform-origin: right; }

/* ===== カーテンアニメーション ===== */
@keyframes curtainTop {
  0% {
    transform: scaleY(1); }
  100% {
    transform: scaleY(0); } }
@keyframes curtainBottom {
  0% {
    transform: scaleY(1); }
  100% {
    transform: scaleY(0); } }
@keyframes curtainLeft {
  0% {
    transform: scaleX(1); }
  100% {
    transform: scaleX(0); } }
@keyframes curtainRight {
  0% {
    transform: scaleX(1); }
  100% {
    transform: scaleX(0); } }
/* ===== コンテンツフェードイン ===== */
body.pageOn #container {
  animation: PageAnimeOn 1s forwards;
  opacity: 0; }

@keyframes PageAnimeOn {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }
