@charset "UTF-8";
.fadeIn {
  opacity: 0;
  -webkit-animation: animate-fadeIn 0.5s forwards;
          animation: animate-fadeIn 0.5s forwards;
}

@-webkit-keyframes animate-fadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

@keyframes animate-fadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
.fadeInUp {
  opacity: 0;
  -webkit-animation: animate-fadeInUp 0.5s forwards;
          animation: animate-fadeInUp 0.5s forwards;
}

@-webkit-keyframes animate-fadeInUp {
  from {
    opacity: 0;
    -webkit-transform: translate(0, 20px);
            transform: translate(0, 20px);
  }
  to {
    opacity: 1;
    -webkit-transform: translate(0);
            transform: translate(0);
  }
}

@keyframes animate-fadeInUp {
  from {
    opacity: 0;
    -webkit-transform: translate(0, 20px);
            transform: translate(0, 20px);
  }
  to {
    opacity: 1;
    -webkit-transform: translate(0);
            transform: translate(0);
  }
}
.fadeInLft {
  opacity: 0;
  -webkit-animation: animate-fadeInLft 0.5s forwards;
          animation: animate-fadeInLft 0.5s forwards;
}

@-webkit-keyframes animate-fadeInLft {
  from {
    opacity: 0;
    -webkit-transform: translate(-20px, 0);
            transform: translate(-20px, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: translate(0);
            transform: translate(0);
  }
}

@keyframes animate-fadeInLft {
  from {
    opacity: 0;
    -webkit-transform: translate(-20px, 0);
            transform: translate(-20px, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: translate(0);
            transform: translate(0);
  }
}
.fadeInRgt {
  opacity: 0;
  -webkit-animation: animate-fadeInRgt 0.5s forwards;
          animation: animate-fadeInRgt 0.5s forwards;
}

@-webkit-keyframes animate-fadeInRgt {
  from {
    opacity: 0;
    -webkit-transform: translate(20px, 0);
            transform: translate(20px, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: translate(0);
            transform: translate(0);
  }
}

@keyframes animate-fadeInRgt {
  from {
    opacity: 0;
    -webkit-transform: translate(20px, 0);
            transform: translate(20px, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: translate(0);
            transform: translate(0);
  }
}
.fadeInRoll {
  opacity: 0;
  -webkit-transform-origin: left bottom;
          transform-origin: left bottom;
  -webkit-animation: animate-fadeInRoll 0.8s forwards;
          animation: animate-fadeInRoll 0.8s forwards;
}

.open.fadeInRoll {
  opacity: 1;
  visibility: visible !important;
  -webkit-animation: animate-fadeIn 0.5s forwards !important;
          animation: animate-fadeIn 0.5s forwards !important;
}

@-webkit-keyframes animate-fadeInRoll {
  from {
    opacity: 0;
  }
  85% {
    -webkit-transform: rotate(-5deg);
            transform: rotate(-5deg);
  }
  90% {
    -webkit-transform: rotate(-5deg);
            transform: rotate(-5deg);
  }
  to {
    opacity: 1;
    -webkit-transform: rotate(0);
            transform: rotate(0);
  }
}

@keyframes animate-fadeInRoll {
  from {
    opacity: 0;
  }
  85% {
    -webkit-transform: rotate(-5deg);
            transform: rotate(-5deg);
  }
  90% {
    -webkit-transform: rotate(-5deg);
            transform: rotate(-5deg);
  }
  to {
    opacity: 1;
    -webkit-transform: rotate(0);
            transform: rotate(0);
  }
}
.scaleUp {
  -webkit-transform: scale(0.7);
          transform: scale(0.7);
  -webkit-animation: animate-scaleUp 0.8s forwards;
          animation: animate-scaleUp 0.8s forwards;
}

@-webkit-keyframes animate-scaleUp {
  0% {
    -webkit-transform: scale(0.7) translate(0, 0);
            transform: scale(0.7) translate(0, 0);
  }
  50% {
    -webkit-transform: scale(0.98, 0.9) translate(0, 5px);
            transform: scale(0.98, 0.9) translate(0, 5px);
    opacity: 1;
  }
  65% {
    -webkit-transform: scale(1.02, 1) translate(0, 8px);
            transform: scale(1.02, 1) translate(0, 8px);
  }
  77% {
    -webkit-transform: scale(0.98, 1.05) translate(0, -8px);
            transform: scale(0.98, 1.05) translate(0, -8px);
  }
  90% {
    -webkit-transform: scale(1, 0.9) translate(0, 5px);
            transform: scale(1, 0.9) translate(0, 5px);
  }
  100% {
    -webkit-transform: scale(1, 1) translate(0, 0);
            transform: scale(1, 1) translate(0, 0);
    opacity: 1;
  }
}

@keyframes animate-scaleUp {
  0% {
    -webkit-transform: scale(0.7) translate(0, 0);
            transform: scale(0.7) translate(0, 0);
  }
  50% {
    -webkit-transform: scale(0.98, 0.9) translate(0, 5px);
            transform: scale(0.98, 0.9) translate(0, 5px);
    opacity: 1;
  }
  65% {
    -webkit-transform: scale(1.02, 1) translate(0, 8px);
            transform: scale(1.02, 1) translate(0, 8px);
  }
  77% {
    -webkit-transform: scale(0.98, 1.05) translate(0, -8px);
            transform: scale(0.98, 1.05) translate(0, -8px);
  }
  90% {
    -webkit-transform: scale(1, 0.9) translate(0, 5px);
            transform: scale(1, 0.9) translate(0, 5px);
  }
  100% {
    -webkit-transform: scale(1, 1) translate(0, 0);
            transform: scale(1, 1) translate(0, 0);
    opacity: 1;
  }
}
.mincho {
  font-family: "游明朝", YuMincho, "Kozuka Mincho Pro", "Kozuka Mincho Std", "小塚明朝 Pro R", "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", "Sawarabi Mincho", serif;
}

.ffEN {
  font-family: Helvetica Neue, Helvetical, Arial, sans-serif;
  font-weight: 900;
}

.frame--main {
  overflow: hidden;
	
}
.frame--main .contents {
  overflow: hidden;
	  background: url("../img/bg.png");
	 background-attachment: fixed;
	  padding-bottom: 30px;
}

.fcRed {
  color: #e60012;
}

.acdBtn {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: calc(600/750*100vw);
  height: calc(100/750*100vw);
  background: #000;
  border: calc(2/750*100vw) solid #fff;
  border-radius: calc(10/750*100vw);
  margin: calc(20/750*100vw) auto 0;
  padding: 0 calc(25/750*100vw);
  cursor: pointer;
}
.acdBtn img {
  width: auto;
  height: calc(36/750*100vw);
}
.acdBtn::after {
  content: "";
  position: absolute;
  top: calc(50% - (22.5/750*100vw));
  right: calc(25/750*100vw);
  display: block;
  width: calc(45/750*100vw);
  height: calc(45/750*100vw);
  background: url(../img/btn_arw.png) no-repeat center/contain;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.acdBtn.close:after {
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg);
}

.mv {
  background: #fede2e;
}

.nav {
  top: 0;
  left: 0;
  width: 100%;
  padding: 15px 0;
  background: #32a768;
  z-index: 100;
}
.nav__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-pack: distribute;
      justify-content: space-around;
}
.nav__list li {
  width: 80px;
}

.event {
  padding-bottom: calc(100/750*100vw);
  background: url(../img/event_bg.png) no-repeat center bottom/100% auto, #99d4d5;
}
.event__ttl {
  position: relative;
  margin-bottom: calc(10/750*100vw);
  padding: calc(60/750*100vw) 0 0;
}
.event__slide--pagination {
  position: static;
}
.event__slide--pagination .swiper-pagination-bullet-active {
  background: #000;
}

.sale {
  padding: calc(40/750*100vw) 0 calc(140/750*100vw);
  background: url(../img/sale_bg.png) repeat-y center top/100% auto, #32a768;
}
.sale__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.sale__list--card {
  width: 49%;
  margin-top: 2%;
}
.sale__list--card:nth-of-type(n+5) {
  display: none;
}
.sale__list--btn {
  width: 90%;
  margin: 20px auto calc(20px - 2%);
}

.interview {
  padding: calc(40/750*100vw) 0 calc(60/750*100vw);
}
.interview__slide {
  margin-top: calc(60/750*100vw);
}
.interview__slide--pagination {
  position: static;
  width: 90% !important;
  margin: calc(20/750*100vw) auto 0;
  text-align: left;
}
.interview__slide--pagination .swiper-pagination-bullet {
  width: 26%;
  height: 6px;
  border-radius: 0;
  background: #de7f62;
  opacity: 1;
}
.interview__slide--pagination .swiper-pagination-bullet-active {
  background: #fede2e;
}

.column {
  padding: calc(80/750*100vw) 0 calc(140/750*100vw);
  background: #569793;
}
.column__ttl {
  margin-bottom: calc(90/750*100vw);
}
.column__blk--ttl {
  margin-bottom: calc(30/750*100vw);
}
.column__blk--img {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-top: calc(20/750*100vw);
}
.column__blk--img img {
  width: 48%;
}
.column__blk:nth-of-type(n+2) {
  margin-top: calc(60/750*100vw);
}

.ft {
  padding: calc(100/750*100vw) 0 calc(150/750*100vw);
  color: #222;
  background: #fff;
}
.ft__logo {
  display: block;
  width: 130px;
  margin: 0 auto;
}
.ft__copy {
  font-size: calc(20/750*100vw);
  text-align: center;
  margin-top: calc(40/750*100vw);
}
.ft #toTop {
  position: fixed;
  bottom: calc(40/750*100vw);
  right: calc(40/750*100vw);
  width: calc(100/750*100vw);
  width: calc(100/750*100vw);
  z-index: 100;
}

/* -----
  PC
  ----- */
@media print, screen and (min-width: 835px) {
  main {
    overflow: hidden;
    z-index: 0;
  }
  .head {
    width: 375px;
  }
  .frame {
    position: relative;
  }
  .frame--main {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    z-index: 100;
    background: url("../img/pc_bg.png")fixed top repeat-x #58bfc6;
  }
  .frame--main .contents {
    width: 375px;
	
  }
  .nav {
    left: calc(50% - 187.5px);
    width: 375px;
  }
  .event {
    padding-bottom: calc(100px/2);
  }
  .event__ttl {
    margin-bottom: calc(10px/2);
    padding: calc(60px/2) 0 0;
  }
  .event__slide {
    width: 88% imprtant;
  }
  .event__slide--pagination {
    position: static;
  }
  .event__slide--pagination .swiper-pagination-bullet-active {
    background: #000;
  }
  .sale {
    padding: calc(40px/2) 0 calc(140px/2);
  }
  .interview {
    padding: calc(40px/2) 0 calc(60px/2);
    background: #fff;
  }
  .interview__slide {
    margin-top: calc(60px/2);
  }
  .interview__slide--pagination {
    margin: calc(20px/2) auto 0;
  }
  .column {
    padding: calc(80px/2) 0 calc(140px/2);
  }
  .column__ttl {
    margin-bottom: calc(90px/2);
  }
  .column__blk--ttl {
    margin-bottom: calc(30px/2);
  }
  .column__blk--img {
    margin-top: calc(20px/2);
  }
  .column__blk:nth-of-type(n+2) {
    margin-top: calc(60px/2);
  }
  .ft {
    padding: calc(100px/2) 0 calc(150px/2);
  }
  .ft__copy {
    font-size: calc(20px/2);
    margin-top: calc(40px/2);
  }
}


/*shoplist*/

@media print, screen and (min-width: 769px) {
    .contents {
		width: 375px;}
}

.contents .shop.--shops {
    border: none;
    padding: 30px 9px;
	
}

.contents .shop:not(:first-of-type) {
    margin-top: 20px;
}

.contents .shop.--shops .shop__link {
    margin: 45px auto 0;
    width: 250px;
}


.contents .shop {
    max-width: 400px;
    width: 90%;
    margin: 0 auto;
    border: 4px solid;
    border-radius: 13px;
    background: #fff;
    padding: 0 10px;
}
.contents .shop.--shops h2 {
    margin-bottom: 30px;
}

.contents .shop.--shops .shop__lead {
    padding: 0 12px;
}
.contents .shop.--shops .shop__link {
    margin:  25px auto 0;
    width: 250px;
}

.contents .shop h2{max-width: 300px; margin: 0 auto;}

.contents .shop.--shops .shop__link a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    width: 100%;
    height: 50px;
    font-size: 16px;
    font-weight: bold;
    color: #fff;
    background: #0071b4;
    border-radius: 20px;
}
#pdf {padding: 30px 0;}
#pdf p{text-align: center;}

#pdf .shop__link a {
	max-width: 250px;
	margin: 1px auto 10px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    width: 100%;
    height: 50px;
    font-size: 16px;
    font-weight: bold;
    color: #569793;
    background:#fff;
    border-radius: 20px;
}


