/*
 * jQuery FlexSlider v2.7.2
 * https://www.woocommerce.com/flexslider/
 *
 * Copyright 2012 WooThemes
 * Free to use under the GPLv2 and later license.
 * http://www.gnu.org/licenses/gpl-2.0.html
 *
 * Contributing author: Tyler Smith (@mbmufffin)
 *
 */
/* ====================================================================================================================
 * FONT-FACE
 * ====================================================================================================================*/
@font-face {
  font-family: 'flexslider-icon';
  src: url('fonts/flexslider-icon.eot');
  src: url('fonts/flexslider-icon.eot?#iefix') format('embedded-opentype'), url('fonts/flexslider-icon.woff') format('woff'), url('fonts/flexslider-icon.ttf') format('truetype'), url('fonts/flexslider-icon.svg#flexslider-icon') format('svg');
  font-weight: normal;
  font-style: normal;
}
/* ====================================================================================================================
 * RESETS
 * ====================================================================================================================*/
.flex-container a:hover,
.flex-slider a:hover {
  outline: none;
}
.slides,
.slides > li,
.flex-control-nav,
.flex-direction-nav {
  margin: 0;
  padding: 0;
  list-style: none;
}
.flex-pauseplay span {
  text-transform: capitalize;
}
/* ====================================================================================================================
 * BASE STYLES
 * ====================================================================================================================*/
.flexslider {
  margin: 0;
  padding: 0;
}
.flexslider .slides > li {
  display: none;
  -webkit-backface-visibility: hidden;
}
.flexslider .slides img {
  width: 100%;
  display: block;
}
.flexslider .slides:after {
  content: "\0020";
  display: block;
  clear: both;
  visibility: hidden;
  line-height: 0;
  height: 0;
}
html[xmlns] .flexslider .slides {
  display: block;
}
* html .flexslider .slides {
  height: 1%;
}
.no-js .flexslider .slides > li:first-child {
  display: block;
}
/* ====================================================================================================================
 * DEFAULT THEME
 * ====================================================================================================================*/
.flexslider {
  margin: 0;
  position: relative;
  zoom: 1;
}
.flexslider .slides {
  zoom: 1;
}
.flexslider .slides img {
  height: auto;
  -moz-user-select: none;
}
.flex-viewport {
  max-height: 2000px;
  -webkit-transition: all 1s ease;
  -moz-transition: all 1s ease;
  -ms-transition: all 1s ease;
  -o-transition: all 1s ease;
  transition: all 1s ease;
}
.loading .flex-viewport {
  max-height: 300px;
}
@-moz-document url-prefix() {
  .loading .flex-viewport {
    max-height: none;
  }
}
.carousel li {
  margin-right: 5px;
}
.flex-direction-nav {
  *height: 0;
}

.flex-direction-nav a {
  text-decoration: none;
  display: block;
  width:var(--flex_d_nav_size);
  height:var(--flex_d_nav_size);
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  z-index: 10;
  overflow: hidden;
  opacity: 0;
  filter:drop-shadow(0px 0px 16px rgba(255,0,0,1));
}
@media only screen and (min-width:1248px){
    .flex-direction-nav a {z-index: 1000;}
}
.flex-direction-nav a:before {
}
.flex-direction-nav a.flex-next:before {
}
.flex-direction-nav .flex-prev {
  left:var(--flex_d_nav);
  background:url("prev.svg") no-repeat center center / cover;
}
.flex-direction-nav .flex-next {
  right:var(--flex_d_nav);
  text-align: right;
  background:url("next.svg") no-repeat center center / cover;
}
.flexslider:hover .flex-direction-nav .flex-prev {
  opacity: 1;
}
.flexslider:hover .flex-direction-nav .flex-prev:hover {
  opacity: 0.8;
}
.flexslider:hover .flex-direction-nav .flex-next {
  opacity: 1;
}
.flexslider:hover .flex-direction-nav .flex-next:hover {
  opacity: 0.8;
}
.flex-direction-nav .flex-disabled {
  opacity: 0!important;
  filter: alpha(opacity=0);
  cursor: default;
  z-index: -1;
}
.flex-pauseplay a {
  display: block;
  width: 20px;
  height: 20px;
  position: absolute;
  bottom: 5px;
  left: 10px;
  opacity: 0.8;
  z-index: 10;
  overflow: hidden;
  cursor: pointer;
  color: #000;
}
.flex-pauseplay a:before {
  font-family: "flexslider-icon";
  font-size: 20px;
  display: inline-block;
  content: '\f004';
}
.flex-pauseplay a:hover {
  opacity: 1;
}
.flex-pauseplay a.flex-play:before {
  content: '\f003';
}
.flex-control-nav {
  display:flex;
  justify-content:flex-start;
  align-items:center;
  width:auto;
  height:6px;
  position:absolute;
  bottom:clamp(1rem, 0.751rem + 1.1vw, 2rem);
  z-index:2;
}

.flex-control-nav{filter:drop-shadow(0px 0px 16px rgba(255,0,0,1));}
.flex-control-nav_r .flex-control-nav{right:clamp(1rem, 0.751rem + 1.1vw, 2rem);}
@media only screen and (max-width:1023px){
    .flex-control-nav_l .flex-control-nav{left:clamp(1rem, 0.751rem + 1.1vw, 2rem);}
}
@media only screen and (min-width:1024px){
    .flex-control-nav_l .flex-control-nav{left:clamp(1rem, 0.751rem + 1.1vw, 2rem);}
}

@media only screen and (max-width:1023px){
    .flex-control-nav_c .flex-control-nav{right:clamp(1rem, 0.751rem + 1.1vw, 2rem);}
}
@media only screen and (min-width:1024px){
    .flex-control-nav_c .flex-control-nav{left:50%; transform:translateX(-50%);}
}

@media only screen and (max-width:1023px){
    .flex-control-nav_h .flex-control-nav{left:clamp(1rem, 0.751rem + 1.1vw, 2rem);}
}
@media only screen and (min-width:1024px){
    .flex-control-nav_h .flex-control-nav{left:clamp(1rem, 0.751rem + 1.1vw, 2rem);}
}

.flex-control-nav li {
  margin: 0 4px;
  display: inline-block;
  zoom: 1;
  *display: inline;
}
.flex-control-paging li a {
  position:relative;
  display: block;
  width: 8px;
  height: 8px;
  background:transparent;
  cursor: pointer;
  text-indent: -9999px;
  position:relative;
}
.flex-control-paging li a::before{content:""; display:inline-block; width:8px; height:8px; border:1px solid #fff; border-radius:50%; box-sizing:border-box; position:absolute; left:50%; top:50%; transform:translate(-50%, -50%) scale(0.5); transition:all 0.5s ease;}
.flex-control-paging li a:hover::before,
.flex-control-paging li a.flex-active::before{content:""; display:inline-block; width:8px; height:8px; background:rgba(255,255,255,.8); transform: translate(-50%, -50%) scale(1);}

.flex-control-paging li a.flex-active::before{
  cursor:default;
}

.flexslider .caption{position:absolute; top:var(--px16_40); right:var(--px16_40); z-index:2; background:var(--wh_a09); padding:var(--px8_16); box-sizing:border-box;}
.flexslider .caption .main{white-space:nowrap; letter-spacing:.05em; font-size:var(--px13_15); line-height:1;}

.flexslider .caption_en{top:var(--px16_24); right:var(--px16_24); padding:.5em;}

/*flexslider_thumb*/
.flexslider_thumb{display:flex; flex-wrap:wrap; width:100%;}
.flexslider_thumb li{cursor:pointer; cursor:hand;}
.thumb_img{object-fit:cover; width:100%; height:auto; transition:all .5s ease;}
.flex-active .thumb_img{filter:brightness(.4); border-radius:0;}
.thumb_img{aspect-ratio:1/.6;}

@media only screen and (max-width:1023px){
    .flexslider_thumb_a{justify-content:space-between;}
    .flexslider_thumb_a li{margin-top:2%; width:23.5%;}
    .flexslider_thumb_a li:last-of-type{margin-right:0;}
    .flexslider_thumb_a_01::after{content:""; display:inline-block; width:23.5%;}
    .flexslider_thumb_a_02::after{content:""; display:inline-block; width:49%;}
    .flexslider_thumb_a_03::after{content:""; display:inline-block; width:76.5%;}
}
@media only screen and (min-width:1024px){
    .flexslider_thumb_a{justify-content:center;}
    .flexslider_thumb_a li{width:12%; margin-top:.5em; margin-right:.5em;}
    .flexslider_thumb_a li:last-of-type{margin-right:0;}
}

.flexslider{position:relative;}
