/* slick.css */
.slick-slider {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-touch-callout: none;
  -khtml-user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

.slick-list,
.slick-slider {
  position: relative;
  display: block;
}

.slick-list {
  overflow: hidden;
  margin: 0;
  padding: 0;
}

.slick-list:focus {
  outline: 0;
}

.slick-list.dragging {
  cursor: pointer;
  cursor: hand;
}

.slick-slider .slick-list,
.slick-slider .slick-track {
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

.slick-track {
  position: relative;
  top: 0;
  left: 0;
  display: block;
  display: flex;
}

.slick-track:after,
.slick-track:before {
  display: table;
  content: "";
}

.slick-track:after {
  clear: both;
}

.slick-loading .slick-track {
  visibility: hidden;
}

.slick-slide {
  display: none;
  float: left;
  height: 100%;
  min-height: 1px;
  height: auto !important;
}

[dir="rtl"] .slick-slide {
  float: right;
}

.slick-slide img {
  display: block;
}

.slick-slide.slick-loading img {
  display: none;
}

.slick-slide.dragging img {
  pointer-events: none;
}

.modalZoomSlider .slick-initialized .slick-slide {
  display: block;
  padding: 0px 0;
}
.slick-initialized .slick-slide.interviewItem {
  background: #fff;
}

.slick-loading .slick-slide {
  visibility: hidden;
}

.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent;
}

.slick-arrow.slick-hidden {
  display: none;
}

.slick-loading .slick-list {
  /* background: #fff url(ajax-loader.gif) center center no-repeat; */
}

@font-face {
  /* font-family: slick;
    font-weight: 400;
    font-style: normal;
    src: url(fonts/slick.eot);
    src: url("fonts/slick.eot?#iefix") format("embedded-opentype"), url("./fonts/slick.woff") format("woff"), url("./fonts/slick.ttf") format("truetype"), url("./fonts/slick.svg#slick") format("svg"); */
}

.modalZoomSlider .slick-next,
.modalZoomSlider .slick-prev {
  font-size: 0;
  line-height: 0;
  position: absolute;
  top: 50%;
  display: block;
  width: 20px;
  height: 20px;
  padding: 0;
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
  cursor: pointer;
  border: 0 0;
}

.modalZoomSlider .slick-next,
.modalZoomSlider .slick-next:focus,
.modalZoomSlider .slick-next:hover,
.modalZoomSlider .slick-prev,
.modalZoomSlider .slick-prev:focus,
.modalZoomSlider .slick-prev:hover {
  color: transparent;
  outline: 0;
  background: transparent;
}

.slick-next:focus:before,
.slick-next:hover:before,
.slick-prev:focus:before,
.slick-prev:hover:before {
  opacity: 1;
}

.slick-next.slick-disabled:before,
.slick-prev.slick-disabled:before {
  opacity: 0.25;
}

.slick-next:before,
.slick-prev:before {
  font-family: slick;
  font-size: 20px;
  line-height: 1;
  opacity: 0.75;
  color: #fff;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.slick-prev {
  left: -25px;
}

[dir="rtl"] .slick-prev {
  right: -25px;
  left: auto;
}

.slick-prev:before {
  content: "←";
}

[dir="rtl"] .slick-prev:before {
  content: "→";
}

.slick-next {
  right: -25px;
}

[dir="rtl"] .slick-next {
  right: auto;
  left: -25px;
}

.slick-next:before {
  content: "→";
}

[dir="rtl"] .slick-next:before {
  content: "←";
}

.slick-dotted.slick-slider {
  margin-bottom: 30px;
}

.slick-dots {
  position: absolute;
  bottom: -25px;
  display: block;
  width: 100%;
  padding: 0;
  margin: 0;
  list-style: none;
  text-align: center;
}

.slick-dots li {
  position: relative;
  display: inline-block;
  margin: 0 5px;
  padding: 0;
}

.slick-dots li,
.slick-dots li button {
  width: 20px;
  height: 20px;
  cursor: pointer;
}

.slick-dots li button {
  font-size: 0;
  line-height: 0;
  display: block;
  padding: 5px;
  color: transparent;
  border: 0;
  outline: 0;
  background: transparent;
}

.slick-dots li button:focus,
.slick-dots li button:hover {
  outline: 0;
}

.slick-dots li button:focus:before,
.slick-dots li button:hover:before {
  opacity: 1;
}

.slick-dots li button:before {
  font-family: slick;
  font-size: 6px;
  line-height: 20px;
  position: absolute;
  top: 0;
  left: 0;
  width: 20px;
  height: 20px;
  content: "•";
  text-align: center;
  opacity: 0.25;
  color: #000;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.slick-dots li.slick-active button:before {
  opacity: 0.75;
  color: #000;
}
/* colorbox.css */
/*
Colorbox Core Style:
The following CSS is consistent between example themes and should not be altered.
*/
#colorbox,
#cboxOverlay,
#cboxWrapper {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 9999;
  overflow: hidden;
  -webkit-transform: translate3d(0, 0, 0);
}

#cboxWrapper {
  max-width: none;
}

#cboxOverlay {
  position: fixed;
  width: 100%;
  height: 100%;
}

#cboxMiddleLeft,
#cboxBottomLeft {
  clear: left;
}

#cboxContent {
  position: relative;
}

#cboxLoadedContent {
  overflow: auto;
  -webkit-overflow-scrolling: touch;
}

#cboxTitle {
  margin: 0;
}

#cboxLoadingOverlay,
#cboxLoadingGraphic {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

#cboxPrevious,
#cboxNext,
#cboxClose,
#cboxSlideshow {
  cursor: pointer;
}

.cboxPhoto {
  float: left;
  margin: auto;
  border: 0;
  display: block;
  max-width: none;
  -ms-interpolation-mode: bicubic;
}

.cboxIframe {
  width: 100%;
  height: 100%;
  display: block;
  border: 0;
  padding: 0;
  margin: 0;
}

#colorbox,
#cboxContent,
#cboxLoadedContent {
  box-sizing: content-box;
  -moz-box-sizing: content-box;
  -webkit-box-sizing: content-box;
}

/*
User Style:
Change the following styles to modify the appearance of Colorbox.  They are
ordered & tabbed in a way that represents the nesting of the generated HTML.
*/
#cboxOverlay {
  background: rgba(0, 0, 0, 0.6) repeat 0 0;
}

#colorbox {
  outline: 0;
}

#cboxContent {
  background: #fff;
  overflow: hidden;
  border-radius: 10px;
}

.cboxIframe {
  background: #fff;
}

#cboxError {
  padding: 50px;
  border: 1px solid #ccc;
}

#cboxLoadedContent {
  margin-bottom: 28px;
}

#cboxTitle {
  position: absolute;
  bottom: 4px;
  left: 0;
  text-align: center;
  width: 100%;
  color: #949494;
}

#cboxCurrent {
  position: absolute;
  bottom: 4px;
  left: 58px;
  color: #949494;
}

/*#cboxLoadingOverlay{background:url(../images/loading_background.png) no-repeat center center;}*/
/*#cboxLoadingGraphic{background:url(../images/loading.gif) no-repeat center center;}*/
/* these elements are buttons, and may need to have additional styles reset to avoid unwanted base styles */
#cboxPrevious,
#cboxNext,
#cboxSlideshow,
#cboxClose {
  border: 0;
  padding: 0;
  margin: 0;
  overflow: visible;
  width: auto;
  background: none;
}

/* avoid outlines on :active (mouseclick), but preserve outlines on :focus (tabbed navigating) */
#cboxPrevious:active,
#cboxNext:active,
#cboxSlideshow:active,
#cboxClose:active {
  outline: 0;
}

#cboxSlideshow {
  position: absolute;
  bottom: 4px;
  right: 30px;
  color: #0092ef;
}

/*#cboxPrevious{position:absolute; bottom:0; left:0; background:url(../images/btn-prev.png) no-repeat -75px 0; width:25px; height:25px; text-indent:-9999px;}
#cboxPrevious:hover{background-position:-75px -25px;}
#cboxNext{position:absolute; bottom:0; left:27px; background:url(../images/btn-next.png) no-repeat -50px 0; width:25px; height:25px; text-indent:-9999px;}
#cboxNext:hover{background-position:-50px -25px;}*/
#cboxClose {
  position: absolute;
  top: 15px;
  right: 15px;
  background: url(../images/btn-close.png) no-repeat center center;
  width: 25px;
  height: 25px;
  text-indent: -9999px;
}

/*
The following fixes a problem where IE7 and IE8 replace a PNG's alpha transparency with a black fill
when an alpha filter (opacity change) is set on the element or ancestor element.  This style is not applied to or needed in IE9.
See: http://jacklmoore.com/notes/ie-transparency-problems/
*/
.cboxIE #cboxTopLeft,
.cboxIE #cboxTopCenter,
.cboxIE #cboxTopRight,
.cboxIE #cboxBottomLeft,
.cboxIE #cboxBottomCenter,
.cboxIE #cboxBottomRight,
.cboxIE #cboxMiddleLeft,
.cboxIE #cboxMiddleRight {
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr=#00FFFFFF,endColorstr=#00FFFFFF);
}

/* -----------------------------------------------------------------------
## colorbox ##############################################################
----------------------------------------------------------------------- */
#cboxLoadedContent {
  margin-bottom: 0;
}

#colorbox {
  overflow: visible !important;
}

#cboxClose {
  top: -48px;
  right: 0;
  width: 35px;
  height: 35px;
  background-image: url(../images/modal_close.png);
}

/* -----------------------------------------------------------------------
## modalPresent ##########################################################
----------------------------------------------------------------------- */
.modalPresent {
  width: 100%;
  margin: 0;
  background-color: #f3f1eb;
}

.modalPresentInner {
  padding: 60px;
}

.modalPresentFlex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.modalPresentInfo {
  width: calc(100% * (1040 - 60 - 60 - 540 - 60) / (1040 - 60 - 60));
}

.modalPresentHeading {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.modalPresentLabel {
  padding: 6px 10px;
  border: 1px solid #d33661;
  color: #d33661;
  font-size: 16px;
  line-height: 1;
}

.modalPresentLabel:not(:first-child) {
  margin-left: 8px;
}

.modalPresentTtl {
  padding-top: 56px;
}

.modalPresentTtl > small {
  display: block;
  font-size: 18px;
  font-weight: normal;
}

.modalPresentTtl > strong {
  display: block;
  margin-top: 8px;
  font-size: 28px;
  font-weight: normal;
}

.modalPresentTxt {
  margin-top: 32px;
  font-size: 15px;
  line-height: 2;
}

.modalPresentNotes {
  display: block;
  margin-top: 24px;
  color: #7f7f7f;
  font-size: 12px;
  line-height: 1.5;
}

.modalPresentImage {
  position: relative;
  margin-top: 54px;
  width: calc(100% * 540 / (1040 - 60 - 60));
}

.modalPresentImage > img {
  display: block;
  width: 100%;
  border-radius: 12px;
}

.modalPresentImage > span {
  position: absolute;
  right: calc(100% * -20 / 540);
  top: 0;
  width: calc(100% * 99 / 540);
  margin-top: calc(100% * -22 / 540);
}

.modalPresentClose {
  margin-top: 32px;
}

.modalPresentClose > button {
  display: block;
  width: 144px;
  padding-top: 1.05em;
  padding-bottom: 1.1em;
  margin-left: auto;
  margin-right: auto;
  border: 1px solid #d0cfca;
  border-radius: 1.9em;
  text-align: center;
  font-size: 15px;
  line-height: 1;
  cursor: pointer;
}

.modalPresentClose > button:before {
  display: inline-block;
  width: 14px;
  height: 14px;
  margin-right: 18px;
  vertical-align: middle;
  background: url(../images/ico_close.png) no-repeat;
  content: "";
}

/* -----------------------------------------------------------------------
## modalPresentDetail ####################################################
----------------------------------------------------------------------- */
.modalPresentDetail {
  width: 100%;
  margin: 0;
  background-color: #f3f1eb;
}

.modalPresentDetailInner {
  padding: 70px 120px 80px;
}

.modalPresentDetailTtl {
  text-align: center;
  color: #7f7f7f;
  font-size: 36px;
  font-weight: normal;
}

.modalPresentDetailContent {
  margin-top: 80px;
}

.modalPresentDetailSect {
  padding-bottom: 44px;
  border-bottom: 1px solid #e5e5e5;
}

.modalPresentDetailSect:not(:first-child) {
  padding-top: 44px;
}

.modalPresentDetailSectTtl {
  font-size: 24px;
  font-weight: normal;
}

.modalPresentDetailTxt {
  margin-top: 32px;
  font-size: 16px;
  line-height: 2;
}

.modalPresentDetailTxt li {
  position: relative;
  padding-left: 28px;
}

.modalPresentDetailTxt li:before {
  position: absolute;
  left: 10px;
  top: 12px;
  width: 5px;
  height: 5px;
  border-radius: 3px;
  background-color: #393939;
  content: "";
}

.modalPresentDetailTxt li ul {
  padding-left: 14px;
}

.modalPresentDetailNotes {
  margin-top: 16px;
  color: #7f7f7f;
  font-size: 12px;
  line-height: 1.5;
}

.modalPresentDetailNotes li {
  padding-left: 2.5em;
  text-indent: -2.5em;
}

.modalPresentDetailCv {
  margin-top: 64px;
}

.modalPresentDetailCvTtl {
  text-align: center;
  font-size: 19px;
  font-weight: normal;
}

.modalPresentDetailCvTtl:before,
.modalPresentDetailCvTtl:after {
  display: inline-block;
  width: 21px;
  height: 41px;
  vertical-align: -14px;
  content: "";
}

.modalPresentDetailCvTtl:before {
  margin-right: 0.5em;
  background: url(../images/modal_cv_before.png) no-repeat;
}

.modalPresentDetailCvTtl:after {
  margin-left: 0.5em;
  background: url(../images/modal_cv_after.png) no-repeat;
}

.modalPresentDetailCvBtn {
  width: 440px;
  margin: 16px auto 0;
}

.modalPresentDetailCvBtn > a {
  position: relative;
  display: block;
  padding-top: 0.5em;
  padding-bottom: 0.5em;
  background-color: #55b6d5;
  border-radius: 1.95em;
  text-align: center;
  color: #fff;
  font-size: 20px;
  line-height: 1.5;
}

.modalPresentDetailCvBtn > a:after {
  position: absolute;
  right: 32px;
  top: 50%;
  width: 15px;
  height: 12px;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  background: url(../images/cv_arw.png) no-repeat;
  content: "";
}

.modalPresentDetailClose {
  margin-top: 82px;
}

.modalPresentDetailClose > button {
  display: block;
  width: 144px;
  padding-top: 1.05em;
  padding-bottom: 1.1em;
  margin-left: auto;
  margin-right: auto;
  border: 1px solid #d0cfca;
  border-radius: 1.9em;
  text-align: center;
  font-size: 15px;
  line-height: 1;
  cursor: pointer;
}

.modalPresentDetailClose > button:before {
  display: inline-block;
  width: 14px;
  height: 14px;
  margin-right: 18px;
  vertical-align: middle;
  background: url(../images/ico_close.png) no-repeat;
  content: "";
}

/* -----------------------------------------------------------------------
## modalProduct ##########################################################
----------------------------------------------------------------------- */
.modalProduct {
  width: 100%;
  margin: 0;
  background-color: #f3f1eb;
}

.modalProductInner {
  padding: 86px 0 80px;
}

.modalProductLogo {
  text-align: center;
}

.modalProductTtl {
  margin-top: 17px;
  text-align: center;
  color: #7f7f7f;
  font-size: 26px;
  font-weight: normal;
}

.modalProductContent {
  margin-top: 80px;
}

.modalProductSect {
  position: relative;
}

.modalProductSect:not(:first-child) {
  margin-top: 120px;
}

.modalProductSectNum {
  position: absolute;
  top: 0;
  color: #7f7f7f;
  font-size: 20px;
}

.modalProductSect:nth-child(2n + 1) .modalProductSectNum {
  left: 60px;
}

.modalProductSect:nth-child(2n) .modalProductSectNum {
  right: 60px;
}

.modalProductSectFlex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.modalProductSect:nth-child(2n + 1) .modalProductSectFlex {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -ms-flex-direction: row-reverse;
  flex-direction: row-reverse;
}

.modalProductSectImage {
  width: calc(100% * 480 / 1040);
}

.modalProductSectContent {
  width: calc(100% * 440 / 1040);
}

.modalProductSect:nth-child(2n + 1) .modalProductSectContent {
  padding-left: calc(100% * 200 / 1040);
}

.modalProductSect:nth-child(2n) .modalProductSectContent {
  padding-left: calc(100% * 60 / 1040);
  padding-top: 32px;
  padding-bottom: 32px;
}

.modalProductSectTtl {
  font-size: 24px;
  font-weight: normal;
  line-height: 1.58333;
}

.modalProductSect > .modalProductSectTtl {
  text-align: center;
}

.modalProductSectTxt {
  display: block;
  margin-top: 32px;
  font-size: 16px;
  line-height: 2;
}

.modalProductSectTxt + .modalProductSectTxt {
  margin-top: 16px;
}

.modalProductSectFigure {
  margin-top: 32px;
}

.modalProductSect > .modalProductSectFigure {
  margin-top: 16px;
  text-align: center;
}

.modalProductSectNotes {
  display: block;
  margin-top: 24px;
  color: #7f7f7f;
  font-size: 12px;
  line-height: 1.5;
}

.modalProductNotes {
  display: block;
  margin-top: 40px;
  padding-left: 60px;
  padding-right: 60px;
  color: #7f7f7f;
  font-size: 12px;
  line-height: 1.5;
}
ul.cau-list {
}
ul.cau-list > li {
  position: relative;
  font-size: 14px;
  margin: 0 0 10px;
  padding: 0 0 0 15px;
}
ul.cau-list > li:before {
  content: "※";
  position: absolute;
  left: 0;
  top: 0;
}
ul.cau-list > li > span {
  font-weight: 500;
}
.modalProductNotes.tow > span {
  font-weight: 500;
}
.modalProductClose {
  margin-top: 80px;
}

.modalProductClose > button {
  display: block;
  width: 144px;
  padding-top: 1.05em;
  padding-bottom: 1.1em;
  margin-left: auto;
  margin-right: auto;
  border: 1px solid #d0cfca;
  border-radius: 1.9em;
  text-align: center;
  font-size: 15px;
  line-height: 1;
  cursor: pointer;
}

.modalProductClose > button:before {
  display: inline-block;
  width: 14px;
  height: 14px;
  margin-right: 18px;
  vertical-align: middle;
  background: url(../images/ico_close.png) no-repeat;
  content: "";
}

/* -----------------------------------------------------------------------
## modalArea #############################################################
----------------------------------------------------------------------- */
.modalArea {
  width: 100%;
  margin: 0;
  background-color: #f3f1eb;
}

.modalAreaInner {
  padding: 78px 72px;
}

.modalAreaFlex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -ms-flex-direction: row-reverse;
  flex-direction: row-reverse;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.modalAreaMap {
  width: calc(100% * 538 / (1040 - 72 * 2));
}

.modalAreaContent {
  width: calc(100% * 320 / (1040 - 72 * 2));
}

.modalAreaTtl {
  font-size: 24px;
  font-weight: normal;
  line-height: 1.58333;
}

.modalAreaTxt {
  display: block;
  margin-top: 32px;
  font-size: 16px;
  line-height: 2;
}

.modalAreaNotes {
  display: block;
  margin-top: 24px;
  color: #7f7f7f;
  font-size: 12px;
  line-height: 1.5;
}

.modalAreaClose {
  margin-top: 50px;
}

.modalAreaClose > button {
  display: block;
  width: 144px;
  padding-top: 1.05em;
  padding-bottom: 1.1em;
  margin-left: auto;
  margin-right: auto;
  border: 1px solid #d0cfca;
  border-radius: 1.9em;
  text-align: center;
  font-size: 15px;
  line-height: 1;
  cursor: pointer;
}

.modalAreaClose > button:before {
  display: inline-block;
  width: 14px;
  height: 14px;
  margin-right: 18px;
  vertical-align: middle;
  background: url(../images/ico_close.png) no-repeat;
  content: "";
}

/* -----------------------------------------------------------------------
## modalZoom #############################################################
----------------------------------------------------------------------- */
.modalZoom {
  width: 100%;
  margin: 0;
  background-color: #f3f1eb;
}

.modalZoomFlex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -ms-flex-direction: row-reverse;
  flex-direction: row-reverse;
}

.modalZoomMain {
  position: relative;
  width: calc(100% * 640 / 1000);
  height: 0;
  padding-top: calc(100% * 640 / 1000);
}

.modalZoomSlider {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
}

.modalZoomSlider .slick-arrow {
  width: 44px;
  height: 44px;
  border-radius: 22px;
  background-color: transparent;
  z-index: 1;
  cursor: pointer;
  border: none;
}

.modalZoomSlider .slick-arrow.slick-disabled {
  opacity: 0.4;
  cursor: default;
}

.modalZoomSlider .slick-prev:before,
.modalZoomSlider .slick-next:before {
  position: absolute;
  left: 50%;
  top: 50%;
  display: block;
  width: 12px;
  height: 12px;
  border-top: 2px solid #393939;
  border-left: 2px solid #393939;
  font-size: 0;
  content: "";
}

.modalZoomSlider .slick-prev {
  left: 24px;
}

.modalZoomSlider .slick-prev:before {
  -webkit-transform: translateX(-50%) translateY(-50%) rotate(-45deg);
  transform: translateX(-50%) translateY(-50%) rotate(-45deg);
}

.modalZoomSlider .slick-next {
  right: 24px;
}

.modalZoomSlider .slick-next:before {
  -webkit-transform: translateX(-50%) translateY(-50%) rotate(135deg);
  transform: translateX(-50%) translateY(-50%) rotate(135deg);
}

.modalZoomSlide {
  cursor: none;
}

.modalZoomZoomer {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
  pointer-events: none;
}

.modalZoomZoomer > img {
  position: absolute;
  max-width: none;
  -webkit-transition: opacity 0.2s;
  transition: opacity 0.2s;
  opacity: 0;
}

.modalZoomZoomer > img.is-visible {
  opacity: 1;
}

.modalZoomThumb {
  width: calc(100% * 360 / 1000);
}

.modalZoomThumbInner {
  padding: 38px 42px;
}

.modalZoomThumb ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.modalZoomThumb ul li {
  width: calc(100% * 84 / 276);
  margin-left: calc(100% * 12 / 276);
  margin-top: calc(100% * 12 / 276);
  border: 2px solid #f3f1eb;
  border-radius: 3px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  overflow: hidden;
  cursor: pointer;
}

.modalZoomThumb ul li.is-active {
  border: 3px solid #94d1ca;
  pointer-events: none;
  cursor: default;
}

.modalZoomThumb ul li.is-active:hover {
  opacity: 1;
}

.modalZoomThumb ul li:nth-child(-n + 3) {
  margin-top: 0;
}

.modalZoomThumb ul li:nth-child(3n + 1) {
  margin-left: 0;
}

.modalZoomCursor {
  position: fixed;
  z-index: 99999;
  width: 21px;
  height: 21px;
  background: url(../images/modal_cursor_zoomin.png) no-repeat;
  pointer-events: none;
  opacity: 0;
}

.modalZoomCursor.is-visible {
  opacity: 1;
}

.modalZoomCursor.is-zoom {
  background-image: url(../images/modal_cursor_zoomout.png);
}

.modalZoomCursor.is-zoom.is-grabbing {
  background-image: url(../images/modal_cursor_grabbing.png);
}

.modalZoomSlide.slick-slide.slick-current.slick-active.is-zoom {
  opacity: 0!important;
}

.slick-list.draggable {
  background: #fff;
}