/*! Writen by SCSS */
.contents_wrap {
  position: relative;
  padding-top: 56.25%; }
  @media screen and (max-width: 480px) {
    .contents_wrap {
      padding-top: 100vh;
      padding-top: calc(var(--vh, 1vh) * 100); } }

.sec01 {
  position: relative;
  z-index: 4;
  background: url(../images/top/bg_03.jpg) center/cover no-repeat; }

.sec06 .bg_content {
  position: relative;
  z-index: 0; }
  .sec06 .bg_content::before {
    content: "";
    display: block;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 0;
    background: url("../images/top/bg_03.jpg") center/cover no-repeat; }

.wrap {
  padding-top: 0 !important; }

.inner {
  max-width: 1300px;
  width: calc(100% - 40px);
  margin: 0 auto; }

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

.ai_fs {
  align-items: flex-start; }

.flex_wrap {
  flex-wrap: wrap; }

.flex_rr {
  flex-direction: row-reverse; }

.pos_r {
  position: relative; }

.pos_a {
  position: absolute; }

.breadlist {
  display: none; }

.sec_main {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  z-index: 2; }
  .sec_main::before {
    content: "";
    display: block;
    width: 100%;
    padding-top: 112.5%; }
    @media screen and (max-width: 480px) {
      .sec_main::before {
        padding-top: 200vh;
        padding-top: calc(var(--vh, 1vh) * 200); } }
  .sec_main .main {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    height: 100%; }
  .sec_main video {
    position: sticky;
    top: 0;
    left: 0;
    right: 0;
    display: block;
    width: 100%; }
    @media screen and (max-width: 480px) {
      .sec_main video {
        object-fit: cover;
        height: 100vh;
        height: calc(var(--vh, 1vh) * 100); } }
  .sec_main .main_text_wrap {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 50%;
    z-index: 2;
    pointer-events: none; }
    .sec_main .main_text_wrap .main_text {
      position: absolute;
      left: 0;
      bottom: 7.78%;
      max-width: 202px;
      width: 16.84%; }
      @media screen and (max-width: 480px) {
        .sec_main .main_text_wrap .main_text {
          width: 25%;
          bottom: 70px; } }

.sec_head {
  font-size: clamp(60px, 10.48vw, 130px);
  line-height: 1;
  margin-bottom: 0.46em; }
  @media screen and (max-width: 480px) {
    .sec_head {
      margin-bottom: 0.5em; } }

.en_head {
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: clamp(55px, 3.87vw, 70px);
  line-height: 1; }
  .en_head .text_min {
    margin-right: 0.5em;
    font-size: 0.66em; }

.en_lead {
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: clamp(50px, 5.88vw, 75px);
  line-height: 1; }
  .en_lead .text_min {
    margin-right: 0.5em;
    font-size: 0.66em; }

.read_mincho {
  font-size: clamp(16px, 1.125vw, 18px);
  letter-spacing: 0.05em; }
  @media screen and (max-width: 480px) {
    .read_mincho {
      font-size: 3.4vw; } }

.read {
  font-size: clamp(14px, 1vw, 16px);
  line-height: 2; }
  @media screen and (max-width: 480px) {
    .read {
      font-size: 3.4vw; } }

.sec {
  position: relative;
  z-index: 2;
  color: #fff; }
  .sec.sec06 {
    z-index: 1; }

.sec02 {
  position: relative;
  background: url("../images/top/bg_02.jpg") center/cover no-repeat;
  padding-top: min(100px,calc(100% / 16));
  padding-bottom: min(345px,calc(345% / 16)); }

.sec04 {
  background: #fff;
  color: #333; }

.sec01 .inner {
  padding-top: clamp(80px, 10%, 160px);
  padding-bottom: clamp(60px, 6.25%, 100px);
  justify-content: center; }
  @media screen and (max-width: 480px) {
    .sec01 .inner {
      display: block; } }
  .sec01 .inner .image_box {
    max-width: 650px;
    width: 50%;
    margin-right: -0.71%; }
    @media screen and (max-width: 768px) {
      .sec01 .inner .image_box {
        width: 50%;
        margin-right: -2%; } }
    @media screen and (max-width: 480px) {
      .sec01 .inner .image_box {
        width: 100%;
        margin: 0 0 30px; } }
  .sec01 .inner .text_box {
    width: 35.39%; }
    @media screen and (max-width: 768px) {
      .sec01 .inner .text_box {
        width: 40%; } }
    @media screen and (max-width: 480px) {
      .sec01 .inner .text_box {
        width: 100%; } }
    .sec01 .inner .text_box .en_lead {
      margin-bottom: 0.8em; }
      @media screen and (max-width: 480px) {
        .sec01 .inner .text_box .en_lead {
          margin-bottom: 0.6em; } }
    .sec01 .inner .text_box .jp_lead {
      margin: 0 auto;
      max-width: 310px;
      width: 77.5%;
      line-height: 0; }
      @media screen and (max-width: 480px) {
        .sec01 .inner .text_box .jp_lead {
          max-width: 310px;
          width: 82.67%; } }
    .sec01 .inner .text_box .read_mincho {
      margin-top: 3em; }
      @media screen and (max-width: 480px) {
        .sec01 .inner .text_box .read_mincho {
          margin-top: 2em;
          text-align: center; } }

.sec02_inner .jp_lead {
  max-width: 400px;
  width: 33.34%;
  margin: 6.67% auto 3.34%;
  line-height: 0; }
  @media screen and (max-width: 480px) {
    .sec02_inner .jp_lead {
      margin: 4% auto 3%;
      width: 100%; } }

.sec03 {
  padding-top: clamp(60px, 7.82%, 125px);
  padding-bottom: clamp(60px, 7.82%, 125px);
  background: #282828; }

.sec03_wrap {
  justify-content: center;
  align-items: center; }
  @media screen and (max-width: 480px) {
    .sec03_wrap {
      display: block; } }
  .sec03_wrap .text_box {
    width: 46.16%;
    position: relative;
    z-index: 2; }
    @media screen and (max-width: 768px) {
      .sec03_wrap .text_box {
        width: 60%; } }
    @media screen and (max-width: 480px) {
      .sec03_wrap .text_box {
        width: 100%;
        margin-top: 30px; } }
    .sec03_wrap .text_box .en_head {
      text-align: center; }
    .sec03_wrap .text_box .jp_lead {
      max-width: 244px;
      width: 71.77%;
      margin: 4.42% auto 5.89%; }
      @media screen and (max-width: 480px) {
        .sec03_wrap .text_box .jp_lead {
          max-width: 174px;
          width: 46.4%;
          margin: 15px auto 20px; } }
  .sec03_wrap .image_box {
    margin-left: -20.83%;
    max-width: 990px;
    width: 82.5%; }
    @media screen and (max-width: 768px) {
      .sec03_wrap .image_box {
        width: 80%;
        margin-left: -16%; } }
    @media screen and (max-width: 480px) {
      .sec03_wrap .image_box {
        width: calc(100% + 40px);
        margin-left: -20px;
        margin-right: -20px; } }

.sec04 {
  padding-top: clamp(60px, 6.25%, 100px);
  padding-bottom: clamp(60px, 6.25%, 100px); }

.sec04_wrap {
  justify-content: center;
  align-items: center;
  position: relative; }
  @media screen and (max-width: 768px) {
    .sec04_wrap {
      justify-content: space-between; } }
  @media screen and (max-width: 480px) {
    .sec04_wrap {
      display: block; } }
  .sec04_wrap .image_box {
    max-width: 580px;
    width: 48.34%; }
    @media screen and (max-width: 768px) {
      .sec04_wrap .image_box {
        width: 58%; } }
    @media screen and (max-width: 480px) {
      .sec04_wrap .image_box {
        width: 100%;
        margin-left: auto;
        margin-right: auto;
        margin-bottom: 20px; } }
  .sec04_wrap .text_box {
    position: relative;
    z-index: 3;
    width: 40.39%;
    margin-left: 2.92%; }
    @media screen and (max-width: 768px) {
      .sec04_wrap .text_box {
        width: 38%;
        margin-left: 0; } }
    @media screen and (max-width: 480px) {
      .sec04_wrap .text_box {
        width: 100%;
        margin-top: 30px; } }
    .sec04_wrap .text_box .en_head {
      text-align: center; }
    .sec04_wrap .text_box .jp_lead {
      max-width: 525px;
      width: 100%;
      line-height: 0;
      margin: 6.67% auto 9.53%; }
      @media screen and (max-width: 480px) {
        .sec04_wrap .text_box .jp_lead {
          max-width: 350px;
          width: 79.55%;
          margin: 15px auto 20px; } }
  .sec04_wrap .leaf_wrap {
    position: absolute;
    z-index: 2;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    width: 37.5%;
    top: -18.18%;
    right: 22.33%;
    left: 40.16%; }
    @media screen and (max-width: 480px) {
      .sec04_wrap .leaf_wrap {
        width: 50%;
        left: 0;
        right: auto;
        top: -20px; } }
    .sec04_wrap .leaf_wrap .leaf_01 {
      max-width: 55px;
      width: 12.23%;
      margin-top: 35.12%; }
    .sec04_wrap .leaf_wrap .leaf_02 {
      max-width: 69px;
      width: 15.34%;
      margin-top: 13.34%; }
    .sec04_wrap .leaf_wrap .leaf_03 {
      max-width: 80px;
      width: 17.78%;
      margin-top: 25.12%; }
    .sec04_wrap .leaf_wrap .leaf_04 {
      max-width: 133px;
      width: 29.56%; }

.sec05,
.sec06 {
  padding-top: clamp(60px, 10.63%, 170px); }

.sec06 {
  padding-bottom: clamp(50px, 4.38%, 70px); }

.sec05_lead {
  margin-bottom: clamp(50px, 4.38%, 70px); }
  .sec05_lead .en_lead {
    margin-top: 3.34%;
    margin-bottom: 3.34%; }
  @media screen and (max-width: 480px) {
    .sec05_lead .jp_lead {
      max-width: 160px;
      width: 42.67%;
      margin-left: auto;
      margin-right: auto; } }

.sec05 .sec05_wrap {
  padding-bottom: clamp(60px, 9.24%, 120px); }

.sec05_wrap {
  position: relative; }
  .sec05_wrap .text_box,
  .sec05_wrap .item_image {
    position: absolute;
    z-index: 2; }
  @media screen and (max-width: 480px) {
    .sec05_wrap .text_box {
      position: static;
      margin-bottom: 20px; } }
  .sec05_wrap .text_box .item_name {
    font-size: clamp(40px, 4.19vw, 64px);
    line-height: 1;
    margin-bottom: 0.46em; }
  .sec05_wrap .text_box .read .text_under_l {
    text-decoration: underline; }
  .sec05_wrap .image_box {
    width: 100%;
    position: relative;
    z-index: 1; }

.store_btn a {
  margin-top: 0.9em;
  margin-left: auto;
  margin-right: auto;
  font-size: clamp(20px, 2.58vw, 34px);
  display: block;
  line-height: 0.9;
  border-radius: 50%;
  width: 3.95em;
  height: 3.95em;
  display: flex;
  justify-content: center;
  align-items: center;
  transition: all 0.3s ease-in-out;
  color: #322800;
  background: #fff; }
  body:not(.mobile) .store_btn a:hover {
    color: #fff;
    background: #00AB1C; }

.sec05_wrap_01 {
  width: min(1305px,calc(100% - 20px));
  margin-left: auto;
  margin-right: 5.63%; }
  @media screen and (max-width: 1240px) {
    .sec05_wrap_01 {
      margin-right: 0; } }
  .sec05_wrap_01 .text_box {
    width: max(400px,calc(400% / 13.05));
    bottom: 8.7%;
    left: -3.44%; }
    @media screen and (max-width: 1360px) {
      .sec05_wrap_01 .text_box {
        left: 0; } }
    @media screen and (max-width: 480px) {
      .sec05_wrap_01 .text_box {
        width: 100%;
        padding-right: 10px; } }
  .sec05_wrap_01 .item_image {
    max-width: 310px;
    width: 23.76%;
    bottom: 11.25%;
    left: max(280px,calc(280% / 13.05)); }
    @media screen and (max-width: 480px) {
      .sec05_wrap_01 .item_image {
        width: 40%;
        bottom: 5%;
        left: 0; } }

.sec05_wrap_02 {
  width: min(1560px,calc(100% - 20px)); }
  .sec05_wrap_02 .text_box {
    width: max(500px,18.5%);
    bottom: 12%;
    right: 16.99%; }
    @media screen and (max-width: 960px) {
      .sec05_wrap_02 .text_box {
        right: 12%; } }
    @media screen and (max-width: 480px) {
      .sec05_wrap_02 .text_box {
        width: 100%;
        padding-left: 10px; } }
  .sec05_wrap_02 .item_image {
    max-width: 203px;
    width: 13.02%;
    bottom: 12.45%;
    right: max(760px,calc(760% / 15.6)); }
    @media screen and (max-width: 960px) {
      .sec05_wrap_02 .item_image {
        right: calc(30% + 290px); } }
    @media screen and (max-width: 480px) {
      .sec05_wrap_02 .item_image {
        width: 20%;
        right: 0;
        bottom: 0%; } }

.sec05_wrap_03 {
  width: min(1559px,calc(100% - 20px));
  margin-left: auto; }
  .sec05_wrap_03 .text_box {
    width: max(500px,20%);
    bottom: 11.25%;
    left: 7.06%; }
    @media screen and (max-width: 768px) {
      .sec05_wrap_03 .text_box {
        left: 5%; } }
    @media screen and (max-width: 480px) {
      .sec05_wrap_03 .text_box {
        width: 100%;
        padding-right: 10px; } }
  .sec05_wrap_03 .item_image {
    max-width: 309px;
    width: 19.83%;
    bottom: 14.25%;
    left: max(450px,calc(450% / 15.59)); }
    @media screen and (max-width: 768px) {
      .sec05_wrap_03 .item_image {
        left: calc(5% + 260px); } }
    @media screen and (max-width: 768px) {
      .sec05_wrap_03 .item_image {
        left: calc(10% + 260px); } }
    @media screen and (max-width: 480px) {
      .sec05_wrap_03 .item_image {
        width: 40%;
        bottom: 5%;
        left: 0; } }

.sec06_lead {
  margin-bottom: clamp(30px, 4.17%, 50px); }
  .sec06_lead .jp_lead_wrap {
    max-width: 750px;
    margin-top: clamp(20px, 6.67%, 80px);
    margin-left: auto;
    margin-right: auto;
    align-items: center;
    line-height: 0; }
    @media screen and (max-width: 480px) {
      .sec06_lead .jp_lead_wrap {
        display: block; } }
    .sec06_lead .jp_lead_wrap .jp_lead_left {
      max-width: 310px;
      width: 41.34%; }
      @media screen and (max-width: 480px) {
        .sec06_lead .jp_lead_wrap .jp_lead_left {
          max-width: 310px;
          width: 70.46%;
          margin: 0 auto 20px; } }
    .sec06_lead .jp_lead_wrap .jp_lead_right {
      max-width: 430px;
      width: 57.34%; }
      @media screen and (max-width: 480px) {
        .sec06_lead .jp_lead_wrap .jp_lead_right {
          max-width: 430px;
          width: 97.73%;
          margin: 0 auto; } }

.sec06_wrap_top {
  max-width: 900px;
  max-width: 1000px;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: clamp(40px, 6.67%, 80px);
  position: relative; }
  .sec06_wrap_top .sec06_t_image {
    width: 99.3%;
    margin-left: auto;
    margin-right: auto; }
    @media screen and (max-width: 480px) {
      .sec06_wrap_top .sec06_t_image {
        width: 98%; } }
  .sec06_wrap_top .sec06_t_text {
    width: 27.78%;
    position: absolute;
    z-index: 2;
    top: 12.14%;
    right: 10.56%; }
    @media screen and (max-width: 480px) {
      .sec06_wrap_top .sec06_t_text {
        position: static;
        display: flex;
        align-items: center;
        justify-content: space-between;
        width: 100%; } }
    .sec06_wrap_top .sec06_t_text .sec06_t_name {
      max-width: 152px;
      width: 72.39%;
      margin-left: auto;
      margin-right: auto;
      margin-bottom: 16.67%;
      line-height: 0; }
      @media screen and (max-width: 480px) {
        .sec06_wrap_top .sec06_t_text .sec06_t_name {
          width: 26%;
          margin: 0; } }
    @media screen and (max-width: 480px) {
      .sec06_wrap_top .sec06_t_text .read {
        width: 72%; } }
  .sec06_wrap_top::after {
    content: "";
    display: block;
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    padding-top: 2px;
    background: #322800;
    z-index: 2;
    mix-blend-mode: overlay; }

.sec06_wrap {
  max-width: 810px;
  margin-left: auto;
  margin-right: auto;
  justify-content: center;
  margin-bottom: clamp(40px, 10%, 120px);
  align-items: flex-end; }
  @media screen and (max-width: 480px) {
    .sec06_wrap {
      display: block; } }
  .sec06_wrap .sec06_image {
    margin-left: auto;
    margin-right: auto; }
  .sec06_wrap .text_box {
    width: 54.57%; }
    @media screen and (max-width: 480px) {
      .sec06_wrap .text_box {
        width: 100%; } }
    .sec06_wrap .text_box .name_wrap {
      align-items: center; }
      .sec06_wrap .text_box .name_wrap .name {
        max-width: 195px;
        width: 44.12%;
        mix-blend-mode: overlay; }
      .sec06_wrap .text_box .name_wrap .time {
        max-width: 224px;
        width: 50.68%; }
    .sec06_wrap .text_box .read {
      position: relative;
      z-index: 2;
      margin-top: -2.5em; }

.sec06_wrap_01 .sec06_image {
  max-width: 242px;
  width: 29.88%; }
  @media screen and (max-width: 480px) {
    .sec06_wrap_01 .sec06_image {
      max-width: 242px;
      width: 55%; } }
.sec06_wrap_02 .sec06_image {
  max-width: 213px;
  width: 26.3%; }
  @media screen and (max-width: 480px) {
    .sec06_wrap_02 .sec06_image {
      max-width: 213px;
      width: 48.41%; } }
.sec06_wrap_03 .sec06_image {
  max-width: 237px;
  width: 29.26%; }
  @media screen and (max-width: 480px) {
    .sec06_wrap_03 .sec06_image {
      max-width: 237px;
      width: 53.87%; } }
.sec06_wrap_04 .sec06_image {
  max-width: 300px;
  width: 37.04%; }
  @media screen and (max-width: 480px) {
    .sec06_wrap_04 .sec06_image {
      max-width: 300px;
      width: 68.19%; } }

/*# sourceMappingURL=top.css.map */
