@charset "UTF-8";

/* TOP - ABOUT
========================================= */
/* SLICK */
/* .top_about_slider{
  opacity: 0;
  transition: opacity .5s linear;
}
.top_about_slider.slick-initialized{
  opacity: 1;
} */
.top_about_slider.slick-dotted.slick-slider{
  margin-bottom: 0;
}
.top_about_slider .slick-dots{
  width: fit-content;
  height: fit-content;
  top: calc(8.2rem + 62.5vw);
  right: 1.5em;
}
.top_about_slider .slick-dots li button:before{
  color: var(--color-white);
  transform: scale(.8);
}
.top_about_slider .slick-dots li.slick-active button:before{
  color: var(--color-red);
}
.top_about_slider .slick-prev,
.top_about_slider .slick-next{
  top: calc(2.4rem + 100%);
  z-index: 10;
  background-repeat: no-repeat;
  background-size: auto;
  background-position: center;
  transition: opacity .5s;
}
.top_about_slider .slick-prev:hover,
.top_about_slider .slick-next:hover{
  opacity: .7;
}
.top_about_slider .slick-next{
  right: 2rem;
  background-image: url(/imgs/top_about_slick_arrow_right.svg);
}
.top_about_slider .slick-prev{
  left: inherit;
  right: calc(2rem + 3rem);
  background-image: url(/imgs/top_about_slick_arrow_left.svg);
}
.top_about_slider .slick-prev::before,
.top_about_slider .slick-next::before{
  content: '';
}
/* .slickFade{
  opacity: 0;
  transform: translateY(5px);
  transition: opacity 1s .2s , transform 1s .2s;
}
.slick-current .slickFade{
  opacity: 1;
  transform: translateY(0);
} */
.top_about_li_inner{
  position: relative;
  padding: 4em 0 0;
}
.top_about_ttl{
  position: relative;
  z-index: 1;
  font-size: 1rem;
  font-weight: 900;
  line-height: .98;
  letter-spacing: 0.1em;
  /* margin-bottom: -10em; */
  margin-left: -1em;
}
.top_about_ttl .line1{
  font-size: 4.4em;
}
.top_about_ttl .line2{
  display: block;
  font-size: 6.4em;
}
.top_about_num_box{
  position: absolute;
  top: 0;
  width: fit-content;
  margin-bottom: 0;
  z-index: 5;
}
.top_about_li:nth-child(odd) .top_about_num_box{
  right: 0;
  padding-right: var(--inn-w);
  margin-left: auto;
  text-align: right;
}
.top_about_li:nth-child(even) .top_about_num_box{
  margin-right: auto;
  padding-left: var(--inn-w);
  text-align: left;
}
.top_about_num{
  display: block;
  font-size: 8.5em;
  font-weight: 500;
  line-height: .95;
}
.top_about_li._01 .top_about_num{
  margin-right: -.1em;
}
.top_about_num_txt{
  display: block;
  font-size: 1.2rem;
  font-weight: 600;
  line-height: 1;
  padding: 0 0.5em;
  color: #fff;
  transition-delay: .4s;
}
.top_about_img_box{
  position: relative;
  display: block;
  margin-right: var(--inn-w);
}
.top_about_li:nth-child(even) .top_about_img_box{
  margin-right: 0;
  margin-left: var(--inn-w);
}
.top_about_txt_box{
  padding: 1em var(--inn-w) 2em;
}
.top_about_li_ttl{
  font-size: 2.15em;
  padding: .3em 0;
  white-space: nowrap;
  transition-delay: .5s;
}
.top_about_li_desc{
  font-size: 1.18em;
  letter-spacing: 0.03em;
  line-height: 1.7;
  padding: .5em 0;
  transition-delay: .7s;
}
.top_about_sub{
  font-size: clamp(10px,.9rem,10px);
  letter-spacing: .02em;
  padding-top: 2em;
  margin-top: 2em;
  color: var(--color-grey);
  border-top: 1px solid var(--color-black3);
}

@media (min-width: 769px) {
  .top_about_ttl{
    font-size: 1.2rem;
    margin-left: 0;
    margin-bottom: -7.2em;
  }
  .top_about_num_box {
    top: -6.5rem;
  }
  .top_about_num {
    font-size: 13em;
    font-weight: 400;
    line-height: .9;
  }
  .top_about_num_txt {
    font-size: 1.8rem;
  }
  /* .top_about_ttl .line1,
  .top_about_ttl .line2{
    font-size: 4.2em;
  }
  .top_about_ttl .line2{
    display: inline;
    margin-left: .3em;
  } */
  .top_about_li {
    padding: 2.5em 0;
  }
  .top_about_li_inner{
    position: relative;
    display: flex;
    flex-direction: row-reverse;
    justify-content: space-between;
    align-items: flex-end;
    padding: 5em;
  }
  .top_about_li._02 .top_about_li_inner{
    flex-direction: row;
  }
  .top_about_num_box{
    position: absolute;
    top: -4.5rem;
    right: 1.5rem;
    z-index: 10;
    padding: 0;
  }
  /* .top_about_li:nth-child(odd) {
    padding-left: 2.5em;
  }
  .top_about_li:nth-child(even) {
    padding-right: 2.5em;
  } */
  .top_about_li:nth-child(even) .top_about_num_box {
    right: inherit;
    padding-left: 0.5em;
  }
  .top_about_li:nth-child(even) .top_about_img_box {
    margin-right: 0;
    margin-left: 0;
  }
  .top_about_li:nth-child(even) .top_about_txt_box {
    padding: 0 var(--inn-w) 0 0;
  }
  .top_about_img_box {
    width: 55%;
    margin: 0;
  }
  .top_about_txt_box{
    width: 42%;
    padding: 0 0 0 var(--inn-w);
  }
  .top_about_li_ttl{
    font-size: 2.05em;
    line-height: 1.65;
  }
  .top_about_li_desc{
    font-size: 1.1em;
    padding-bottom: 0;
  }
  .top_about_slider .slick-dots {
    right: 3em;
    top: 82%;
  }
  .top_about_slider .slick-next{
    right: 3rem;
  }
  .top_about_slider .slick-prev {
    right: calc(3rem + 4rem);
  }
}/*  */
@media (min-width: 960px) {
  .top_about_li_ttl{
    font-size: 2.4em;
  }
  .top_about_slider .slick-next{
    right: 6rem;
  }
  .top_about_slider .slick-prev {
    right: calc(6rem + 4rem);
  }
}/*  */
@media (min-width: 1400px) {
  .top_about_slider .slick-next{
    right: 9rem;
  }
  .top_about_slider .slick-prev {
    right: calc(9rem + 4rem);
  }
}/*  */


/* TOP - ENJOY
========================================= */
.top_enjoy_ttl{
  position: relative;
  font-size: 1rem;
  padding: 6.7em 0 4em;
}
.top_enjoy_ttl .bg_txt{
  position: absolute;
  top: 0;
  left: 0;
  width: 24rem;
}
.top_enjoy_ttl .ja{
  font-size: 1.8rem;
  font-weight: 500;
  padding-left: .5em;
}
.top_enjoy_block{
  display: block;
  padding: 2em 0;
  overflow: hidden;
  /* justify-content: space-between;
  flex-wrap: wrap; */
}
.top_enjoy_box{
  padding: 2em 0;
} 
.top_enjoy_box:nth-child(odd){
  padding-left: var(--inn-w);
}
.top_enjoy_box:nth-child(even){
  padding-right: var(--inn-w);
}

/* .top_enjoy_box:nth-child(odd){
  padding-top: 12em;
}
.top_enjoy_box:nth-child(n+3){
  margin-top: -5em;
} */
/* .top_enjoy_box_inner{
  display: flex;
} */
.top_enjoy_img_box{
  position: relative;
  overflow: hidden;
  width: 76%;
}
.top_enjoy_box:nth-child(odd) .top_enjoy_img_box{
  margin-left: auto;
}
.top_enjoy_img_box::before{
  content: "";
  display: block;
  padding-top: 75%;
}
.top_enjoy_img{
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  height: auto;
  width: 100%;
  object-fit: cover;
}

.top_enjoy_box_ttl{
  position: relative;
  font-size: 1rem;
  margin-top: -1.4em;
  filter: drop-shadow(0 0 1.5em #333);
  z-index: 10;
}
.top_enjoy_box:nth-child(odd) .top_enjoy_box_ttl{
  padding-left: 1em;
}
.top_enjoy_box:nth-child(even) .top_enjoy_box_ttl{
  width: fit-content;
  margin-left: auto;
  padding-right: 1em;
}
.top_enjoy_box_ttl .en{
  display: block;
  font-size: 2.8em;
  line-height: 1;
  /* white-space: nowrap; */
}
.top_enjoy_box_ttl .ja{
  display: block;
  font-size: 1.1em;
  letter-spacing: 0.02em;
}

@media (min-width: 769px) {
  /* .top_enjoy_pc_wrap{
    display: flex;
    justify-content: space-between;
  } */
  .top_enjoy_block{
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    width: 74%;
    margin-left: auto;
    margin-right: var(--inn-w);
  }
  .top_enjoy_box{
    width: 47%;
    padding: 2.5em 0 !important;
  }
  .top_enjoy_img_box{
    width: 84%;
    margin-left: auto;
  }
  .top_enjoy_ttl_box {
    width: 46%;
    padding-bottom: 1em;
    margin: 0;
  }
  .top_enjoy_ttl{
    width: 100%;
    padding: 10.3em 0 0;
    margin-top: -1.2em;
  }
  .top_enjoy_ttl .bg_txt {
    width: 35em;
  }
  .top_enjoy_box:nth-child(even) .top_enjoy_box_ttl{
    margin-left: inherit;
  }
  /* .top_enjoy_img_box{
    width: 95%;
    padding-top: 95%;
    margin-left: auto;
  } */
  /* .top_enjoy_box:nth-child(odd) {
    padding-top: 9.5em;
  } */
}/* 769 */


/* KEY VISUAL - SVG ANIMATION 
=============================================== */

@media (max-width:768px){
  .st0,.st1,.st2{
    fill:none;
    stroke-width:.7;
    stroke-miterlimit:10
  }
  .st1{
    display:inline;
    stroke:#fff;
  }
  .st2{
    stroke:#fff;
  }
  svg .svg-elem-1{stroke-dashoffset:3501.1435546875px;stroke-dasharray:3501.1435546875px;-webkit-transition:stroke-dashoffset 4s cubic-bezier(0.47,0,0.745,0.715) 0s;transition:stroke-dashoffset 4s cubic-bezier(0.47,0,0.745,0.715) 0s}svg.on .svg-elem-1{stroke-dashoffset:0}
}/* SP */

@media (min-width:769px){

  .st0{
    fill:none;stroke:#fff;stroke-width:.6;stroke-miterlimit:10;
  }
  svg .svg-elem-1{stroke-dashoffset:4103.3935546875px;stroke-dasharray:4103.3935546875px;-webkit-transition:stroke-dashoffset 4s cubic-bezier(0.47,0,0.745,0.715) 0s;transition:stroke-dashoffset 4s cubic-bezier(0.47,0,0.745,0.715) 0s}svg.on .svg-elem-1{stroke-dashoffset:0}

}/* PC */


/* TOP BOTTOM CONTACT */
.top_bottom_contact_box{
  position: relative;
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  padding: 3.5em 1.8em;
  margin: 0 auto 3em;
  border-radius: .2em;
  overflow: hidden;
  background-color: rgba(0, 0, 0, .75);
  /* background-color: var(--color-white); */
  /* max-width: 52em; */
}
.top_bottom_contact_txt_wrap{
  color: var(--color-white);
}
.top_bottom_contact_ttl{
  font-weight: 600;
  letter-spacing: .05em;
  margin: 0 0 1.5em;
}
.top_bottom_contact_ttl .en{
  display: block;
  font-size: 2.4em;
  line-height: 1.1;
}
.top_bottom_contact_ttl .ja{
  display: block;
  font-size: 1em;
}
.top_bottom_contact_txt{
  margin: .1em 0;
  letter-spacing: .03em;
}
.top_bottom_contact_img {
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  width: 100%;
  height: 100%;
  mix-blend-mode: multiply;
  filter: grayscale(1);
}
.top_bottom_contact_img img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: top;
  transition: transform .5s ;
}
.top_bottom_contact_box .arrow_circle {
  background-color: transparent;
  border: 1px solid var(--color-white);
}
/* .top_bottom_contact_box .arrow_circle_img{
  filter: none;
} */
@media (min-width: 769px) {
  .top_bottom_contact_box {
    padding: 7em 4.5em;
    /* max-width: 80%; */
  }
  .top_bottom_contact_ttl  {
    font-size: 1.2em;
  }
  .top_bottom_contact_ttl .en {
    font-size: 3.8em;
  }
  .top_bottom_contact_txt {
    font-size: 1.1em;
  }
  .top_bottom_contact_box .arrow_circle {
    font-size: 1.2em;
  }
  .top_bottom_contact_box:hover .top_bottom_contact_img img{
    transform: scale(1.05);
  }
}/*  */