.wrap_1200, .intro_inner, .works, .shop_inner, .access_inner {
  width: 90%;
  max-width: 1200px;
  margin: 0 auto;
}

@media screen and (max-width: 800px) {
  .wrap_1200, .intro_inner, .works, .shop_inner, .access_inner {
    width: 84%;
  }
}
.wrap_1200, .intro_inner, .works, .shop_inner, .access_inner {
  width: 90%;
  max-width: 1200px;
  margin: 0 auto;
}

@media screen and (max-width: 800px) {
  .wrap_1200, .intro_inner, .works, .shop_inner, .access_inner {
    width: 84%;
  }
}
/* ========================================

common

======================================== */
.jp_r {
  font-weight: 400;
}

.jp_b {
  font-weight: 700;
}

.jp_bl {
  font-weight: 900;
}

.p_hover a:hover {
  opacity: 0.6;
}

.svg.c_white svg {
  fill: #fff;
}
.svg.c_black svg {
  fill: #000;
}

.img-fit {
  position: relative;
  overflow: hidden;
  z-index: 1;
}
.img-fit::before {
  width: 100%;
  height: 0;
  content: '';
  display: block;
  padding-top: 60%;
  position: relative;
}
.img-fit img {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  background-position: 50% 50%;
  background-size: cover;
  -o-object-fit: cover;
     object-fit: cover;
  z-index: 1;
}

.replace_img {
  width: 100%;
  height: 100%;
  display: block;
  overflow: hidden;
  text-indent: 100%;
  white-space: nowrap;
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 50% 50%;
}

.l_tel {
  pointer-events: none;
}

@media screen and (max-width: 800px) {
  .l_tel {
    pointer-events: auto;
  }
}
/* ========================================

button

======================================== */
.link_line {
  font-size: 32px;
  font-weight: 400;
  text-align: center;
  margin-bottom: 12px;
}
.link_line a {
  padding: 0 4px 4px;
  border-bottom: 1px solid #000;
}

.btn_line {
  font-size: 35.4px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.btn_line a {
  color: #fff;
  display: block;
  position: relative;
  padding: 14px 20px 20px;
  background-color: #897970;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.btn_line a::before, .btn_line a::after {
  width: 100%;
  height: 2px;
  content: '';
  display: block;
  position: absolute;
  left: 0;
  background-color: #fff;
}
.btn_line a::before {
  top: 2px;
}
.btn_line a::after {
  bottom: 2px;
}

@media screen and (max-width: 800px) {
  .link_line {
    font-size: 13px;
  }

  .btn_line {
    font-size: 15px;
  }
  .btn_line a {
    padding: 8px 10px 10px;
  }
  .btn_line a::before, .btn_line a::after {
    height: 1px;
  }
}
/* ========================================

intro

======================================== */
.intro {
  text-align: center;
  margin-bottom: 130px;
}
.intro h2 {
  width: 340px;
  margin: 0 auto;
  margin-bottom: 120px;
}
.intro .player {
  margin-bottom: 140px;
}
.intro .player video {
  width: 100%;
}
.intro h3 {
  font-size: 35.4px;
  margin-bottom: 75px;
}
.intro .txt {
  font-size: 17px;
  line-height: 2.35;
  margin-bottom: 180px;
}
.intro ol {
  text-align: left;
  margin-bottom: 110px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.intro ol li {
  width: 336px;
}
.intro ol li .num {
  font-size: 42.5px;
  font-weight: 900;
  margin-bottom: 45px;
}
.intro ol li h4 {
  font-size: 25.5px;
  line-height: 1.64;
  margin-bottom: 20px;
}
.intro ol li .desc {
  font-size: 17px;
  line-height: 1.76;
}

@media screen and (max-width: 800px) {
  .intro {
    margin-bottom: 60px;
    padding-top: 30px;
  }
  .intro h2 {
    width: 82px;
    margin-bottom: 40px;
  }
  .intro .player {
    margin-bottom: 40px;
  }
  .intro h3 {
    font-size: 15.5px;
    margin-bottom: 20px;
  }
  .intro .txt {
    font-size: 10px;
    line-height: 1.8;
    margin-bottom: 50px;
  }
  .intro ol {
    margin-bottom: 50px;
  }
  .intro ol li {
    width: 100%;
  }
  .intro ol li:not(:last-of-type) {
    margin-bottom: 40px;
  }
  .intro ol li .num {
    font-size: 18.4px;
    margin-bottom: 15px;
  }
  .intro ol li h4 {
    font-size: 12.7px;
    line-height: 1.64;
    margin-bottom: 10px;
  }
  .intro ol li .desc {
    font-size: 10px;
  }
}
/* ========================================

works

======================================== */
.works {
  margin-bottom: 245px;
}
.works h2 {
  font-size: 42.5px;
  font-weight: 900;
  margin-bottom: 30px;
}
.works .tit_en {
  font-size: 28.3px;
  margin-bottom: 96px;
}
.works ul {
  max-width: 820px;
  margin: 0 auto 166px;
}
.works ul li {
  margin-bottom: 76px;
}
.works ul li a {
  display: block;
}
.works ul li a .img {
  aspect-ratio: 820 / 560;
  overflow: hidden;
}
.works ul li a .img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.works ul li a .txt {
  font-size: 20.5px;
  line-height: 1.6;
  letter-spacing: 0.06em;
  margin-top: 16px;
}

@media screen and (max-width: 800px) {
  .works {
    margin-bottom: 70px;
  }
  .works h2 {
    font-size: 18.4px;
    margin-bottom: 10px;
  }
  .works .tit_en {
    font-size: 12.7px;
    margin-bottom: 48px;
  }
  .works ul {
    width: 85.7143%;
    margin-bottom: 60px;
  }
  .works ul li {
    margin-bottom: 24px;
  }
  .works ul li a .txt {
    font-size: 10px;
    margin-top: 4px;
  }
}
/* ========================================

shop

======================================== */
.shop {
  margin-bottom: 115px;
}
.shop h2 {
  font-size: 42.5px;
  font-weight: 900;
  margin-bottom: 30px;
}
.shop .txt {
  font-size: 28.3px;
  margin-bottom: 60px;
}
.shop ul {
  text-align: center;
  margin-bottom: 60px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.shop ul li {
  width: 320px;
  margin-bottom: 95px;
}
.shop ul li .img {
  margin-bottom: 20px;
}
.shop ul li .tit {
  font-size: 17px;
}
.shop_detail {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.shop_detail .img {
  width: 294px;
}
.shop_detail .box_text {
  width: 324px;
  margin-left: 80px;
}
.shop_detail .box_text h3 {
  font-size: 25.5px;
  font-weight: 700;
  margin-bottom: 25px;
}
.shop_detail .box_text p {
  font-size: 15.5px;
  line-height: 2.19;
  position: relative;
}
.shop_detail .box_text p .instagram {
  width: 32px;
  position: absolute;
  right: 0;
  bottom: 0;
  display: block;
  z-index: 2;
}

@media screen and (max-width: 800px) {
  .shop {
    margin-bottom: 60px;
  }
  .shop h2 {
    font-size: 15.5px;
    margin-bottom: 15px;
  }
  .shop .txt {
    font-size: 10px;
    margin-bottom: 20px;
  }
  .shop ul {
    text-align: center;
    margin-bottom: 30px;
  }
  .shop ul li {
    width: 28%;
    margin-bottom: 20px;
  }
  .shop ul li .img {
    margin-bottom: 5px;
  }
  .shop ul li .tit {
    font-size: 10px;
    line-height: 1.4;
  }
  .shop_detail {
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .shop_detail .img {
    width: 114px;
  }
  .shop_detail .box_text {
    width: calc(100% - 130px);
    margin-left: 0;
  }
  .shop_detail .box_text h3 {
    font-size: 15.5px;
    margin-bottom: 25px;
  }
  .shop_detail .box_text p {
    font-size: 10px;
    line-height: 1.74;
  }
  .shop_detail .box_text p .instagram {
    width: 20px;
  }
}
/* ========================================

access

======================================== */
.access h2 {
  font-size: 42.5px;
  font-weight: 900;
  margin-bottom: 45px;
}
.access .txt {
  font-size: 17px;
  line-height: 2.19;
  margin-bottom: 30px;
}
.access .txt span {
  width: 3em;
  display: inline-block;
}
.access .map {
  height: 652px;
}
.access .map iframe {
  width: 100%;
  height: 100%;
  /* -webkit-filter: grayscale(100%);
          filter: grayscale(100%); */
}

@media screen and (max-width: 800px) {
  .access h2 {
    font-size: 15.5px;
    margin-bottom: 20px;
  }
  .access .txt {
    font-size: 10px;
    margin-bottom: 10px;
  }
  .access .map {
    height: 48vw;
  }
}

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