.contentsLink {
  background: url("../../common/imgs/bg-texture-01@1.5x.jpg") no-repeat center top/cover;
}

@media print, screen and (min-width: 768px) {
  .contentsLink {
    padding: 30px 25px 40px;
    width: 385px;
  }
}

@media screen and (max-width: 768px) {
  .contentsLink {
    -webkit-box-ordinal-group: 4;
        -ms-flex-order: 3;
            order: 3;
    padding: calc(50 / 750 * 100vw) calc(30 / 750 * 100vw);
  }
}

.contentsLink__head {
  color: #ffffff;
  text-align: center;
}

@media print, screen and (min-width: 768px) {
  .contentsLink__head {
    font-size: 22px;
  }
}

@media screen and (max-width: 768px) {
  .contentsLink__head {
    font-size: calc(40 / 750 * 100vw);
  }
}

.contentsLink__cont {
  border-top: 2px solid #948126;
}

@media print, screen and (min-width: 768px) {
  .contentsLink__cont {
    height: 340px;
    margin-top: 15px;
    padding-top: 40px;
    position: relative;
  }
}

@media screen and (max-width: 768px) {
  .contentsLink__cont {
    margin-top: calc(30 / 750 * 100vw);
    padding-top: calc(40 / 750 * 100vw);
  }
}

.contentsLink__cont .photo {
  margin: 0 auto;
  mask-image: -webkit-gradient(linear, left top, left bottom, color-stop(50%, black), to(transparent));
  mask-image: linear-gradient(to bottom, black 50%, transparent 100%);
  -webkit-mask-image: -webkit-gradient(linear, left top, left bottom, color-stop(50%, black), to(transparent));
  -webkit-mask-image: linear-gradient(to bottom, black 50%, transparent 100%);
}

.contentsLink__cont .generalBtn {
  border-radius: 30px;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

@media print, screen and (min-width: 768px) {
  .contentsLink__cont .generalBtn {
    bottom: 0;
    left: 50%;
    position: absolute;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    width: 275px;
  }
}

@media screen and (max-width: 768px) {
  .contentsLink__cont .generalBtn {
    width: calc(520 / 750 * 100vw);
  }
}

.contentsLink__cont .generalBtn__inner {
  letter-spacing: .08em;
  text-align: center;
}

@media print, screen and (min-width: 768px) {
  .contentsLink__cont .generalBtn__inner {
    font-size: 16px;
  }
}

@media screen and (max-width: 768px) {
  .contentsLink__cont .generalBtn__inner {
    font-size: calc(30 / 750 * 100vw);
    padding: calc(12 / 750 * 100vw) 0;
  }
}

@media print, screen and (min-width: 768px) {
  .contentsLink__cont .generalBtn__arrow {
    right: 25px;
  }
}

@media screen and (max-width: 768px) {
  .contentsLink--select {
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
  }
}

@media print, screen and (min-width: 768px) {
  .contentsLink--select .contentsLink__cont {
    padding-top: 29px;
  }
}

@media print, screen and (min-width: 768px) {
  .contentsLink--select .contentsLink__cont .photo {
    width: 245px;
  }
}

@media screen and (max-width: 768px) {
  .contentsLink--select .contentsLink__cont .photo {
    width: calc(420 / 750 * 100vw);
  }
}

@media screen and (max-width: 768px) {
  .contentsLink--pamphlet {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
  }
}

.inductionSect__ttl {
  font-family: "Cinzel", serif;
  line-height: .8;
  text-align: center;
}

@media print, screen and (min-width: 768px) {
  .inductionSect__ttl {
    font-size: 38px;
  }
}

@media screen and (max-width: 768px) {
  .inductionSect__ttl {
    font-size: 30px;
    letter-spacing: .01em;
  }
}

@media print, screen and (min-width: 768px) {
  .inductionSect__head + .inductionSect__cont {
    margin-top: 60px;
  }
}

@media screen and (max-width: 768px) {
  .inductionSect__head + .inductionSect__cont {
    margin-top: 40px;
  }
}

.inductionSect .inductionBnr {
  display: block;
}

@media print, screen and (min-width: 768px) {
  .inductionSect .inductionBnr {
    margin: 0 auto;
    -webkit-transition: all .3s;
    transition: all .3s;
    width: 462px;
  }
  .inductionSect .inductionBnr:hover {
    opacity: .8;
  }
}

@media screen and (max-width: 768px) {
  .inductionSect .inductionBnr {
    margin-top: 40px;
  }
}

.infoSect {
  border: 2px solid #989174;
}

@media screen and (max-width: 768px) {
  .infoSect {
    border-width: 1px;
  }
}

.infoSect__head {
  background-color: #989174;
  color: #ffffff;
}

@media print, screen and (min-width: 768px) {
  .infoSect__head {
    padding: 8px 10px 14px;
  }
}

@media screen and (max-width: 768px) {
  .infoSect__head {
    padding: 8px;
  }
}

.infoSect__ttl {
  font-family: "EB Garamond", serif;
  letter-spacing: .11em;
  text-align: center;
  line-height: 1.75;
}

.infoSect__ttl:before {
  content: '';
  margin-top: calc((1 - 1.75) * .5em);
}

.infoSect__ttl:after {
  margin-bottom: calc((1 - 1.75) * .5em);
}

.infoSect__ttl:before, .infoSect__ttl:after {
  content: '';
  display: block;
  height: 0;
  width: 0;
}

@media print, screen and (min-width: 768px) {
  .infoSect__ttl {
    font-size: 16px;
  }
}

@media screen and (max-width: 768px) {
  .infoSect__ttl {
    font-size: 12px;
  }
}

.infoSect__cont {
  background-color: #f7f8f8;
  text-align: center;
}

@media print, screen and (min-width: 768px) {
  .infoSect__cont {
    padding: 30px 20px 40px;
  }
}

@media screen and (max-width: 768px) {
  .infoSect__cont {
    padding: 30px 10px;
  }
}

.infoSect__heading {
  letter-spacing: .1em;
  position: relative;
  line-height: 1.33333;
}

.infoSect__heading:before {
  content: '';
  margin-top: calc((1 - 1.33333) * .5em);
}

.infoSect__heading:after {
  margin-bottom: calc((1 - 1.33333) * .5em);
}

.infoSect__heading:before, .infoSect__heading:after {
  content: '';
  display: block;
  height: 0;
  width: 0;
}

@media print, screen and (min-width: 768px) {
  .infoSect__heading {
    font-size: 36px;
    padding-bottom: 30px;
  }
}

@media screen and (max-width: 768px) {
  .infoSect__heading {
    font-size: 22px;
    padding-bottom: 20px;
  }
}

.infoSect__heading--gold {
  color: #7f754c;
}

@media print, screen and (min-width: 768px) {
  .infoSect__heading .small {
    font-size: 24px;
  }
}

@media screen and (max-width: 768px) {
  .infoSect__heading .small {
    font-size: 16px;
  }
}

.infoSect__txt {
  letter-spacing: .11em;
  line-height: 1.66667;
}

.infoSect__txt:before {
  content: '';
  margin-top: calc((1 - 1.66667) * .5em);
}

.infoSect__txt:after {
  margin-bottom: calc((1 - 1.66667) * .5em);
}

.infoSect__txt:before, .infoSect__txt:after {
  content: '';
  display: block;
  height: 0;
  width: 0;
}

@media print, screen and (min-width: 768px) {
  .infoSect__txt {
    font-size: 18px;
  }
}

@media screen and (max-width: 768px) {
  .infoSect__txt {
    font-size: 12px;
  }
}

.infoSect__txt + .generalBtn {
  margin-top: 20px;
}

@media print, screen and (min-width: 768px) {
  .infoSect__heading + .infoSect__txt {
    margin-top: 28px;
  }
}

@media screen and (max-width: 768px) {
  .infoSect__heading + .infoSect__txt {
    margin-top: 20px;
  }
}

.infoSect__holiday {
  border: #c73b26 solid 1px;
}

@media print, screen and (min-width: 768px) {
  .infoSect__holiday {
    margin: 35px auto 0;
    padding: 15px;
    width: 740px;
  }
}

@media screen and (max-width: 768px) {
  .infoSect__holiday {
    margin-top: 25px;
    padding: 15px 10px;
  }
}

.infoSect__holiday .txt {
  color: #c73b26;
}

@media screen and (max-width: 768px) {
  .infoSect__holiday .txt {
    letter-spacing: .01em;
  }
}

.infoSect .generalBtn {
  background-color: #153157;
}

@media print, screen and (min-width: 768px) {
  .infoSect .generalBtn {
    width: 350px;
  }
}

@media screen and (max-width: 768px) {
  .infoSect .generalBtn {
    width: 260px;
  }
}

.introductionArea {
  text-align: center;
}

.linkSect__ttl {
  font-family: "Cinzel", serif;
  line-height: .8;
  text-align: center;
}

@media print, screen and (min-width: 768px) {
  .linkSect__ttl {
    font-size: 38px;
  }
}

@media screen and (max-width: 768px) {
  .linkSect__ttl {
    font-size: 30px;
    letter-spacing: .03em;
  }
}

.linkSect__cont {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-perspective: 1000px;
          perspective: 1000px;
}

@media print, screen and (min-width: 768px) {
  .linkSect__cont {
    -webkit-column-gap: 30px;
       -moz-column-gap: 30px;
            column-gap: 30px;
  }
}

@media screen and (max-width: 768px) {
  .linkSect__cont {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    row-gap: calc(60 / 750 * 100vw);
  }
}

@media print, screen and (min-width: 768px) {
  .linkSect__head + .linkSect__cont {
    margin-top: 60px;
  }
}

@media screen and (max-width: 768px) {
  .linkSect__head + .linkSect__cont {
    margin-top: 40px;
  }
}

@media print, screen and (min-width: 768px) {
  .limited-intro {
    padding-top: 100px;
  }
}

@media screen and (max-width: 768px) {
  .limited-intro {
    padding-top: 60px;
  }
}

@media screen and (max-width: 768px) {
  .limited-intro .introductionArea {
    text-align: left;
  }
}

@media print, screen and (min-width: 768px) {
  .limited-contents {
    padding-top: 100px;
  }
}

@media screen and (max-width: 768px) {
  .limited-contents {
    padding-top: 60px;
  }
}
