@charset "UTF-8";
/*=======================================
 	             SMACSS  base
 ========================================*/
img {
  width: 100%;
}

/*=======================================
	         SMACSS  layout　　　　　　　       ( style.scss ) ( header.scss / main.scss / footer.scss ...) 
========================================*/
/*=======================================
          　　  　flex
========================================*/
/*=======================================
          　　   　js
========================================*/
.fade {
  -webkit-transition-duration: 2s;
          transition-duration: 2s;
  opacity: 0;
}

.fade.onView {
  opacity: 1;
}

.fadeorder-01, .fadeorder-02, .fadeorder-03, .fadeorder-04, .fadeorder-05, .fadeorder-06, .fadeorder-07, .fadeorder-08, .fadeorder-09, .fadeorder-10, .fadeorder-11, .fadeorder-12, .fadeorder-13, .fadeorder-14, .fadeorder-15, .fadeorder-16, .fadeorder-17 {
  -webkit-transition-duration: 0.5s;
          transition-duration: 0.5s;
  opacity: 0;
}

/*=======================================
          　　   Animation
========================================*/
.turn {
  opacity: 0;
}

.turn_color {
  overflow: hidden;
  position: relative;
  opacity: 1;
}

.turn_color::before {
  -webkit-animation: turn_left 0.7s cubic-bezier(0.45, 0.19, 0.56, 0.91) forwards;
          animation: turn_left 0.7s cubic-bezier(0.45, 0.19, 0.56, 0.91) forwards;
  background: #808080;
  bottom: 0;
  content: '';
  left: 0;
  pointer-events: none;
  position: absolute;
  right: 0;
  top: 0;
  z-index: 1;
  opacity: 1;
}

@-webkit-keyframes turn_left {
  100% {
    -webkit-transform: translate(100%);
            transform: translate(100%);
  }
}

@keyframes turn_left {
  100% {
    -webkit-transform: translate(100%);
            transform: translate(100%);
  }
}

/*=======================================
                  PC   
========================================*/
/* ===================
	　　 General
=================== */
#aw2_201221 {
  width: 100%;
  margin: 0 auto;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
  font-family: 'Crimson Text', serif;
  font-size: 1.3rem;
  line-height: 1.7;
  letter-spacing: 0.015em;
  text-align: center;
}

/* ===================
	　　　 top
=================== */
.l-top {
  width: 100%;
  margin: 4rem auto 0;
}

.l-top__mv {
  width: 100%;
  height: 58rem;
  margin: 0 auto;
}

.l-top__ttl_wrap {
  width: 140rem;
  position: relative;
}

.l-top__ttl {
  width: 36rem;
  position: absolute;
  top: -41rem;
  right: 78rem;
  -webkit-transform: translateY(50%);
          transform: translateY(50%);
}

/* ===================z
	　　  common
=================== */
.sec-wrap {
  width: 140rem;
  margin: 0 auto;
}

.sec {
  margin: 15rem auto 0;
}

.sec .blk01, .sec .blk02, .sec .blk03, .sec .blk04 {
  position: relative;
}

.sec .sec__credit {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  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;
  text-align: center;
  opacity: 0;
  -webkit-transition: opacity 800ms;
  transition: opacity 800ms;
}

.sec .sec__credit .modal_bg {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.4);
  position: absolute;
  top: 0;
  left: 0;
}

.sec .sec__credit .modal_bg a {
  display: block;
  width: 100%;
  height: 100%;
}

.sec .sec__credit .credit_list {
  position: relative;
  z-index: 1;
}

.sec .sec__credit .credit_list li {
  margin-bottom: 1rem;
}

.sec .sec__credit .credit_list li a {
  color: #fff;
  font-size: 1.3rem;
  letter-spacing: 0.015em;
  line-height: 2;
  border-bottom: 1px solid #fff;
}

.sec .sec__credit:hover {
  opacity: 1;
}

.sec .sec__ttl {
  margin-top: 5.5rem;
}

/* ===================
	　　 section
=================== */
.sec01 {
  width: 98rem;
  margin-left: 21.7rem;
}

.sec01 .blk01 {
  width: 45rem;
}

.sec01 .blk01 .sec__ttl {
  position: absolute;
  width: 1.8rem;
  bottom: 8.5rem;
  right: -4rem;
}

.sec01 .blk02 {
  width: 35rem;
  margin-top: 23.5rem;
}

.sec01 .blk02 .bg {
  width: 42rem;
  position: absolute;
  top: -3.5rem;
  right: -3.7rem;
}

.sec02 {
  width: 82rem;
  margin-top: 18.5rem;
  margin-left: 41.5rem;
}

.sec02 .blk01 {
  width: 42rem;
}

.sec02 .blk02 {
  width: 30rem;
  margin-top: 53rem;
  margin-left: -109rem;
}

.sec02 .blk02 .sec__ttl {
  width: 19.25rem;
  position: absolute;
  top: 16.2rem;
  left: 33rem;
}

.sec02 .blk03 {
  width: 35rem;
  margin-top: 19.5rem;
}

.sec02 .blk03 .sec__ttl {
  width: 22.6rem;
  position: absolute;
  top: -14.5rem;
  right: 0;
}

.sec03 {
  width: 48rem;
  margin-left: 47rem;
}

.sec03 .blk01 {
  width: 48rem;
}

.sec03 .blk01 .sec__ttl {
  width: 2.9rem;
  position: absolute;
  top: 9.5rem;
  left: -1.5rem;
}

.sec04 {
  width: 93rem;
  margin-left: 26rem;
}

.sec04 .blk01 {
  width: 45rem;
}

.sec04 .blk01 .sec__ttl {
  position: absolute;
  width: 42.95rem;
  bottom: -13.5rem;
  left: 0;
}

.sec04 .blk02 {
  width: 30rem;
  margin-top: 9rem;
  margin-left: -2rem;
  mix-blend-mode: multiply;
}

.sec04 .blk03 {
  width: 30rem;
  margin-top: -8.5rem;
  margin-left: 63rem;
}

.sec04 .blk03 .sec__ttl {
  position: absolute;
  width: 22.63rem;
  top: 35.5rem;
  left: -25.5rem;
}

.sec05 {
  width: 115rem;
}

.sec05 .left {
  position: relative;
  margin-left: 1rem;
}

.sec05 .left .blue {
  width: 12rem;
}

.sec05 .left .sec__ttl {
  position: absolute;
  width: 2.9rem;
  top: 9.5rem;
  left: -1.5rem;
}

.sec05 .sec__mv {
  width: 100%;
  height: 55.2rem;
  margin-left: 3rem;
}

.sec05 .blk01 {
  width: 100rem;
}

.sec06 {
  width: 82rem;
}

.sec06 .blk01 {
  width: 42rem;
}

.sec06 .blk01 .sec__ttl {
  position: absolute;
  width: 42.3rem;
  left: 3rem;
  bottom: 8.5rem;
}

.sec06 .set {
  margin-left: 9.8rem;
}

.sec06 .set .blk02 {
  width: 30rem;
  margin-top: 15rem;
}

.sec06 .set .blk03 {
  width: 30rem;
  margin-top: 2rem;
}

.sec07 {
  width: 40rem;
  margin-top: 18.5rem;
}

.sec07 .blk01 {
  width: 40rem;
}

.sec07 .blk01 .bg {
  width: 47rem;
  position: absolute;
  top: -3.5rem;
  right: -3.8rem;
}

.sec07 .blk01 .sec__ttl {
  position: absolute;
  width: 1.85rem;
  top: 29.5rem;
  right: -8rem;
}

.sec08 {
  width: 77rem;
  margin-left: 33.5rem;
}

.sec08 .blk01 {
  width: 30rem;
  margin-top: 12.5rem;
}

.sec08 .blk01 .sec__ttl {
  position: absolute;
  width: 49.6rem;
  top: -14.2rem;
  right: 27.5rem;
}

.sec08 .blk02 {
  width: 42rem;
  margin-top: 22.5rem;
}

.sec08 .blk02 .sec__ttl {
  position: absolute;
  width: 23.8rem;
  top: 38rem;
  right: -28.5rem;
}

.sec09 {
  width: 95.6rem;
}

.sec09 .blk01 {
  width: 52.6rem;
}

.sec09 .blk01 .sec__ttl {
  position: absolute;
  width: 41rem;
  bottom: -13.2rem;
  left: 0;
}

.sec09 .set {
  position: relative;
  margin-left: 47.5rem;
  margin-top: 7.7rem;
}

.sec09 .set .bg {
  position: absolute;
  width: 24rem;
  top: -6rem;
  left: 12rem;
}

.sec09 .set .blk02 {
  width: 25rem;
  margin-top: 5.2rem;
}

.sec09 .set .blk03 {
  width: 25rem;
  margin-top: -22.2rem;
  margin-left: -2rem;
}

.sec09 .set .blk03 .sec__ttl {
  position: absolute;
  width: 17rem;
  top: -10.8rem;
  right: 0;
}

.sec10 {
  width: 42rem;
  margin-left: 39.5rem;
}

.sec10 .blk01 {
  width: 42rem;
}

.sec10 .blk01 .bg {
  position: absolute;
  width: 35rem;
  top: 13.5rem;
  left: 10rem;
}

.sec10 .blk01 .sec__ttl._01 {
  width: 1.8rem;
  margin-top: -32.5rem;
  margin-left: -4.2rem;
}

.sec10 .blk01 .sec__ttl._02 {
  position: absolute;
  width: 5rem;
  top: -5.5rem;
  left: 60.2rem;
}

.sec11 {
  width: 77rem;
  margin-left: 34rem;
}

.sec11 .blk01 {
  width: 30rem;
}

.sec11 .blk01 .sec__ttl {
  position: absolute;
  width: 30rem;
  bottom: 11.8rem;
  right: 5rem;
}

.sec11 .blk02 {
  width: 42rem;
  margin-top: 10.3rem;
}

.sec12 {
  width: 101.2rem;
}

.sec12 .blk01 {
  width: 36rem;
}

.sec12 .blk02 {
  width: 60rem;
  margin-top: 10rem;
  margin-left: 5rem;
}

.sec12 .blk02 .sec__ttl {
  position: absolute;
  width: 25rem;
  margin-top: -21rem;
  margin-left: 31.7rem;
  z-index: 99;
}

.sec12 .blk03 {
  width: 35rem;
  margin-top: 3rem;
  margin-left: 11rem;
}

.sec12 .blk04 {
  width: 30rem;
  margin-top: 21rem;
  margin-left: 8rem;
}

.sec12 .blk04 .sec__ttl {
  position: absolute;
  width: 3rem;
  margin-top: -48rem;
  margin-left: 33rem;
}

.sec13 {
  width: 115rem;
  margin-left: 14.5rem;
}

.sec13 .blk01 {
  width: 45rem;
}

.sec13 .blk01 .sec__ttl._01 {
  position: absolute;
  width: 1.9rem;
  margin-top: -67.5rem;
  margin-left: -3.8rem;
}

.sec13 .blk01 .sec__ttl._02 {
  position: absolute;
  width: 26.8rem;
  margin-top: 5.8rem;
  margin-left: 0rem;
}

.sec13 .flex {
  margin-top: 30rem;
}

.sec13 .flex .blk02 {
  width: 40rem;
}

.sec13 .flex .blk02 .sec__ttl {
  position: absolute;
  width: 5rem;
  margin-top: -31.5rem;
  margin-left: 42.3rem;
}

.sec13 .flex .blk03 {
  width: 25rem;
  margin-top: -15rem;
  margin-left: -5rem;
}

.sec14 {
  width: 93rem;
  margin-left: 22rem;
}

.sec14 .blk01 {
  width: 45rem;
}

.sec14 .blk01 .sec__ttl {
  position: absolute;
  width: 47rem;
  bottom: -13.5rem;
  left: -5rem;
}

.sec14 .blk02 {
  width: 30rem;
  margin-top: 9rem;
  margin-left: -2rem;
  mix-blend-mode: multiply;
}

.sec14 .blk03 {
  width: 30rem;
  margin-top: -8.5rem;
  margin-left: 63rem;
}

.sec14 .blk03 .sec__ttl._01 {
  position: absolute;
  width: 3rem;
  top: 22.5rem;
  left: -6rem;
}

.sec14 .blk03 .sec__ttl._02 {
  position: absolute;
  width: 1.8rem;
  top: -31.5rem;
  left: 35.5rem;
}

.sec15 {
  width: 40rem;
  margin-top: 18.5rem;
}

.sec15 .blk01 {
  width: 40rem;
}

.sec15 .blk01 .bg {
  width: 47rem;
  position: absolute;
  top: -3.5rem;
  right: -3.8rem;
}

.sec15 .blk01 .sec__ttl {
  position: absolute;
  width: 1.8rem;
  top: 12rem;
  right: -8rem;
}

.sec16 {
  width: 92rem;
  margin-left: 21.5rem;
  margin-top: 18.5rem;
}

.sec16 .blk01 {
  width: 45rem;
  margin-top: 15rem;
}

.sec16 .blk01 .sec__ttl {
  position: absolute;
  width: 35rem;
  top: 28rem;
  right: 10rem;
}

.sec16 .blk02 {
  width: 42rem;
}

.sec16 .blk02 .bg {
  width: 30rem;
  position: absolute;
  top: 23rem;
  right: -5rem;
}

.sec17 {
  width: 85rem;
  margin-top: 20rem;
}

.sec17 .blk01 {
  width: 40rem;
}

.sec17 .blk01 .sec__ttl {
  position: absolute;
  width: 46.2rem;
  bottom: -8.5rem;
  left: 0;
}

.sec17 .blk02 {
  width: 40rem;
}

.sec18 {
  width: 120rem;
  margin-top: 24rem;
}

.sec18 .blk01 {
  width: 120rem;
}

.sec18 .blk01 .sec__ttl {
  position: absolute;
  width: 5rem;
  top: 7.8rem;
  left: 3.5rem;
}

.sec19 {
  width: 96.5rem;
  margin-left: 14rem;
}

.sec19 .blk01 {
  width: 42rem;
}

.sec19 .blk01 .sec__ttl._01 {
  position: absolute;
  width: 17rem;
  bottom: 23.5rem;
  left: 0;
}

.sec19 .blk01 .sec__ttl._02 {
  position: absolute;
  width: 1.8rem;
  top: 23rem;
  left: 44.5rem;
}

.sec19 .blk02 {
  width: 40rem;
  margin-top: 40rem;
}

.sec19 .blk02 .sec__ttl {
  position: absolute;
  width: 1.8rem;
  top: 20rem;
  left: 42.5rem;
}

.sec19 .blk02 .bg {
  width: 30rem;
  position: absolute;
  top: -25rem;
  right: -15.5rem;
}

.sec20 {
  width: 95rem;
  margin-left: 22.7rem;
}

.sec20 .blk01 {
  width: 35rem;
}

.sec20 .blk01 .sec__ttl {
  position: absolute;
  width: 31rem;
  bottom: 16.5rem;
  left: -4.8rem;
}

.sec20 .blk02 {
  width: 45rem;
  margin-top: 15rem;
}

.sec20 .blk02 .sec__ttl {
  position: absolute;
  width: 1.8rem;
  top: 33rem;
  left: 47.5rem;
}

.sec21 {
  width: 60rem;
}

.sec21 .blk01 {
  width: 60rem;
}

/* ===================
	　　  button
=================== */
.m-btn {
  width: 60rem;
  margin: 0 auto;
  padding: 9.7rem 0;
}

.m-btn a {
  width: 60rem;
  height: 6.4rem;
  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;
  border: 1px solid #000;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background-color: #fff;
  font-family: 'Crimson Text', serif;
  font-size: 1.1rem;
  line-height: 1.54;
  letter-spacing: 0.002em;
  text-align: center;
}

/*=======================================
               Responsive   
========================================*/
/* for PC */
@media screen and (min-width: 768px) {
  .sp_only {
    display: none !important;
  }
  .slick-slider .slick-track::before,
  .slick-slider .slick-track::after,
  .slick-slider .slick-list::before,
  .slick-slider .slick-list::after {
    content: "" !important;
    display: none !important;
  }
  .codinate___img ul li {
    display: block !important;
  }
  html {
    font-size: 62.5%;
  }
  .flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
  .fdrr {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
  }
  .jcsb {
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .fw {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}

/* for tablet */
@media screen and (min-device-width: 768px) and (max-device-width: 1200px) and (-webkit-min-device-pixel-ratio: 1) {
  html {
    font-size: calc(10 * (100vw / 1200));
  }
}

/* for SP */
@media screen and (max-width: 767px) {
  .pc_only {
    display: none !important;
  }
  html {
    font-size: calc(10* (100vw / 750)) !important;
  }
  .main-area .main-inner {
    width: 100%;
  }
  #breadcrumb .cateList {
    text-overflow: ellipsis;
    white-space: nowrap;
    overflow: hidden;
  }
  /*=======================================
                  SP    
========================================*/
  /* ===================
	　　 General
=================== */
  #aw2_201221 {
    width: 75rem;
    overflow: hidden;
  }
  /* モーダルCSSここから */
  .modalArea {
    visibility: hidden;
    /* displayではなくvisibility */
    opacity: 0;
    position: fixed;
    z-index: 10000;
    /* サイトによってここの数値は調整 */
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -webkit-transition: 0.4s;
    transition: 0.4s;
  }
  .closeModal {
    cursor: pointer;
  }
  .is-show {
    /* モーダル表示用クラス */
    visibility: visible;
    opacity: 1;
  }
  .modalBg {
    position: fixed;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(255, 255, 255, 0.8);
  }
  .modalWrapper {
    width: 100%;
    height: 100%;
  }
  .modalWrapper .modalContents {
    width: 100%;
    height: 100%;
    overflow-x: hidden;
    overflow-y: scroll;
  }
  .modalWrapper .modal___content_inner {
    padding: calc(83* (100vw / 2160)) 0 0;
    position: relative;
  }
  .modalWrapper .modal___content_inner .slick-prev:before,
  .modalWrapper .modal___content_inner .slick-next:before {
    content: "" !important;
    font-size: 0 !important;
  }
  .modalWrapper .modal___header {
    width: calc(650* (100vw / 750));
    margin: 0 auto calc(40* (100vw / 750));
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    font-size: calc(26 * (100vw / 750));
  }
  #make___slide {
    width: calc(650* (100vw / 750));
    margin: 0 auto;
  }
  #make___slide .slick-arrow {
    width: calc(50* (100vw / 750));
    height: calc(50* (100vw / 750));
    top: 33%;
  }
  #make___slide .slick-arrow::before, #make___slide .slick-arrow::after {
    width: calc(2* (100vw / 750));
    height: calc(28* (100vw / 750));
    left: 50%;
  }
  #make___slide .slick-arrow::before {
    -webkit-transform: rotate(-35deg);
            transform: rotate(-35deg);
  }
  #make___slide .slick-arrow::after {
    -webkit-transform: rotate(35deg);
            transform: rotate(35deg);
  }
  #make___slide .slick-arrow.slick-prev {
    left: calc(-50* (100vw / 750));
    -webkit-transform: translateY(-50%) scale(-1, 1);
            transform: translateY(-50%) scale(-1, 1);
  }
  #make___slide .slick-arrow.slick-next {
    right: calc(-50* (100vw / 750));
  }
  #make___slide .codinate___img {
    margin-bottom: calc(38* (100vw / 750));
  }
  #make___slide .codinate___img ul li picture {
    width: calc(650* (100vw / 750));
    display: block;
  }
  #make___slide .codinate___img ul li picture img {
    width: calc(650* (100vw / 750));
  }
  #make___slide .sec__credit {
    display: block;
    margin-top: calc(38* (100vw / 750));
  }
  #make___slide .sec__credit .credit_list {
    position: relative;
    z-index: 999;
  }
  #make___slide .sec__credit .modal_bg {
    display: block;
    width: calc(650* (100vw / 750));
    height: calc(978* (100vw / 750));
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
  }
  #make___slide .sec__credit .modal_bg a {
    display: block;
    width: 100%;
    height: 100%;
  }
  #make___slide .credit_list li {
    margin-bottom: calc(12* (100vw / 750));
    text-align: left;
  }
  #make___slide .credit_list li a {
    font-size: calc(23* (100vw / 750));
    letter-spacing: 0.015em;
    line-height: 182.6087%;
    border-bottom: 1px solid #d2d2d2;
  }
  #make___slide .slick-slide {
    position: relative;
  }
  #make___slide .sec12 .sec__credit .modal_bg,
  #make___slide .sec20 .sec__credit .modal_bg {
    display: block;
    width: calc(650* (100vw / 750));
    height: calc(650* (100vw / 750));
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
  }
  .slick-counter {
    letter-spacing: 0;
  }
  .m-btn {
    width: calc(615* (100vw / 750));
    margin: calc(155* (100vw / 750)) auto calc(250* (100vw / 750));
  }
  .m-btn 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;
    border: 1px solid #898989;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    background-color: #fff;
    font-size: calc(22* (100vw / 750));
    line-height: 154.54545%;
    padding: 1.5em 0;
    text-align: center;
  }
  .modalArea {
    font-family: 'Crimson Text';
  }
  .modalArea img {
    width: 100%;
    display: block;
  }
  .modalArea .inpage___slide li:nth-child(n+2), .modalArea .inpage___slide_sponly li:nth-child(n+2) {
    display: none !important;
  }
  /* ===================
　　　 top
=================== */
  .l-top {
    width: 75rem;
    margin: 0 auto;
    position: relative;
  }
  .l-top__mv {
    width: 75rem;
    height: 100%;
    margin: 0 auto;
  }
  .l-top__ttl_wrap {
    width: unset;
    position: unset;
  }
  .l-top__ttl {
    width: 41rem;
    position: absolute;
    right: 32rem;
    top: 39rem;
    -webkit-transform: translateY(50%);
            transform: translateY(50%);
  }
  /* ===================
　　  common
=================== */
  .sec-wrap {
    width: 75rem;
    margin: 0 auto;
  }
  .sec {
    width: 75rem;
    margin: 17.5rem auto 0;
  }
  .sec .sec__credit {
    display: none;
  }
  .sec .sec__credit .modal_bg {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.4);
    position: absolute;
    top: 0;
    left: 0;
  }
  .sec .sec__credit .modal_bg a {
    display: block;
    width: 100%;
    height: 100%;
  }
  .sec .sec__credit .credit_list {
    position: relative;
    z-index: 1;
  }
  .sec .sec__credit .credit_list li {
    margin-bottom: 1rem;
  }
  .sec .sec__credit .credit_list li a {
    color: #fff;
    font-size: 1.3rem;
    letter-spacing: 0.015em;
    line-height: 2;
    border-bottom: 1px solid #fff;
  }
  .sec .sec__credit:hover {
    opacity: 1;
  }
  .sec .sec__ttl {
    margin-top: 8rem;
  }
  /* ===================
　　 section
=================== */
  .sec01 {
    width: 75rem;
    margin-left: unset;
  }
  .sec01 .blk01 {
    width: 62rem;
  }
  .sec01 .blk01 .sec__ttl {
    width: 3.3rem;
    bottom: 0.3rem;
    right: -6.5rem;
  }
  .sec01 .blk02 {
    width: 49rem;
    margin-top: 12rem;
    margin-left: 21rem;
  }
  .sec01 .blk02 .bg {
    width: 59rem;
    top: -5rem;
    right: -5rem;
  }
  .sec02 {
    width: 75rem;
    margin-top: 22.7rem;
    margin-left: unset;
  }
  .sec02 .blk01 {
    width: 46rem;
    margin-left: 29rem;
  }
  .sec02 .blk01 .sec__ttl {
    width: 36rem;
    margin-left: -9rem;
  }
  .sec02 .blk02 {
    width: 40rem;
    margin-top: -16.5rem;
    margin-left: 0;
  }
  .sec02 .blk02 .sec__ttl {
    width: 14rem;
    top: 16.5rem;
    left: 46rem;
  }
  .sec02 .blk03 {
    width: 62rem;
    margin: 7.5rem auto;
  }
  .sec02 .blk03 .sec__ttl {
    width: 33.8rem;
    top: 90.5rem;
    right: 0;
  }
  .sec03 {
    width: 75rem;
    margin-left: unset;
    margin-top: 29rem;
  }
  .sec03 .blk01 {
    width: 70rem;
    margin-left: 5rem;
  }
  .sec03 .blk01 .sec__ttl {
    width: 5rem;
    top: 8rem;
    left: -2.5rem;
  }
  .sec04 {
    width: 75rem;
    margin-left: unset;
  }
  .sec04 .blk01 {
    width: 62rem;
    margin-left: 0;
  }
  .sec04 .blk01 .sec__ttl {
    width: 13rem;
    bottom: -91rem;
    left: 2.5rem;
  }
  .sec04 .blk02 {
    width: 56rem;
    margin-top: 7.5rem;
    margin-left: 19rem;
  }
  .sec04 .blk03 {
    width: 49rem;
    margin-top: 7.5rem;
    margin-left: 5rem;
  }
  .sec04 .blk03 .sec__ttl {
    width: 33.8rem;
    top: 71rem;
    left: 31.2rem;
  }
  .sec05 {
    width: 75rem;
    margin-top: 29rem;
  }
  .sec05 .flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
  .sec05 .left {
    margin-left: 5rem;
  }
  .sec05 .left .blue {
    width: 10rem;
  }
  .sec05 .left .sec__ttl {
    width: 5rem;
    top: 10.5rem;
    left: -2.5rem;
  }
  .sec05 .sec__mv {
    height: 80rem;
    margin-left: 2.5rem;
  }
  .sec05 .blk01 {
    width: 57.5rem;
  }
  .sec06 {
    width: 75rem;
  }
  .sec06 .blk01 {
    width: 62rem;
    margin: 0 auto;
  }
  .sec06 .blk01 .sec__ttl {
    width: 3.3rem;
    left: 58rem;
    bottom: -85rem;
  }
  .sec06 .set {
    margin-left: 0;
  }
  .sec06 .set .blk02 {
    width: 40rem;
    margin-top: 8rem;
    margin-left: 0;
  }
  .sec06 .set .blk03 {
    width: 40rem;
    margin-top: 2.5rem;
    margin-left: 17.5rem;
  }
  .sec07 {
    width: 75rem;
    margin-top: 22.5rem;
  }
  .sec07 .blk01 {
    width: 56rem;
    margin-left: 5rem;
  }
  .sec07 .blk01 .bg {
    width: 65.8rem;
    top: -4.5rem;
    right: -4.8rem;
  }
  .sec07 .blk01 .sec__ttl {
    width: 3.3rem;
    top: 30.5rem;
    right: -11rem;
  }
  .sec08 {
    width: 75rem;
    margin-left: 29rem;
    margin-top: 47rem;
  }
  .sec08 .blk01 {
    width: 46rem;
    margin-top: unset;
  }
  .sec08 .blk01 .sec__ttl {
    width: 51.6rem;
    top: -31.5rem;
    right: 11.5rem;
  }
  .sec08 .blk02 {
    width: 62rem;
    margin-top: 7.5rem;
    margin-left: -29rem;
  }
  .sec08 .blk02 .sec__ttl {
    width: 42.9rem;
    top: 90.5rem;
    right: -7.5rem;
  }
  .sec09 {
    width: 75rem;
    margin-top: 32.5rem;
  }
  .sec09 .blk01 {
    width: 75rem;
  }
  .sec09 .blk01 .sec__ttl {
    width: 35rem;
    bottom: -146.8rem;
    left: 7.9rem;
  }
  .sec09 .set {
    position: relative;
    margin-left: unset;
    margin-top: 7.7rem;
  }
  .sec09 .set .bg {
    width: 48rem;
    top: -27.5rem;
    left: 13.5rem;
  }
  .sec09 .set .blk02 {
    width: 40rem;
    margin-top: 57.5rem;
  }
  .sec09 .set .blk03 {
    width: 40rem;
    margin-top: -110rem;
    margin-left: 35rem;
  }
  .sec09 .set .blk03 .sec__ttl {
    width: 4.5rem;
    top: 75rem;
    right: 4.5rem;
  }
  .sec10 {
    width: 75rem;
    margin-left: 8rem;
    margin-top: 108rem;
  }
  .sec10 .blk01 {
    width: 56rem;
  }
  .sec10 .blk01 .bg {
    width: 48rem;
    top: 15rem;
    left: 11rem;
  }
  .sec10 .blk01 .sec__ttl._01 {
    width: 54rem;
    margin-top: 11.5rem;
    margin-left: -5.2rem;
  }
  .sec10 .blk01 .sec__ttl._02 {
    width: 3.4rem;
    top: -17.5rem;
    left: 61.2rem;
  }
  .sec11 {
    width: 75rem;
    margin-left: 29rem;
    margin-top: 18rem;
  }
  .sec11 .blk01 {
    width: 46rem;
  }
  .sec11 .blk01 .sec__ttl {
    width: 13rem;
    bottom: 0rem;
    right: 54rem;
  }
  .sec11 .blk02 {
    width: 62rem;
    margin-top: 7.5rem;
    margin-left: -29rem;
  }
  .sec12 {
    width: 75rem;
  }
  .sec12 .blk01 {
    width: 43rem;
    margin-left: 32rem;
  }
  .sec12 .blk02 {
    width: 75rem;
    margin-top: 5rem;
    margin-left: 0;
  }
  .sec12 .blk02 .sec__ttl {
    width: 28.5rem;
    margin-top: -29rem;
    margin-left: 41rem;
  }
  .sec12 .blk03 {
    width: 49rem;
    margin-top: 5rem;
    margin-left: 0;
  }
  .sec12 .blk04 {
    width: 56rem;
    margin-top: 5rem;
    margin-left: 19rem;
  }
  .sec12 .blk04 .sec__ttl {
    width: 4.8rem;
    margin-top: -152rem;
    margin-left: 40.5rem;
  }
  .sec13 {
    width: 75rem;
    margin-left: unset;
  }
  .sec13 .blk01 {
    width: 62rem;
    margin: 0 auto;
  }
  .sec13 .blk01 .sec__ttl._01 {
    width: 2.2rem;
    margin-top: -89.2rem;
    margin-left: 3.2rem;
  }
  .sec13 .blk01 .sec__ttl._02 {
    width: 46.7rem;
    margin-top: 6.8rem;
    margin-left: 15.3rem;
  }
  .sec13 .flex {
    margin-top: 32rem;
  }
  .sec13 .flex .blk02 {
    width: 56rem;
    margin-top: 82rem;
  }
  .sec13 .flex .blk02 .sec__ttl {
    width: 9.1rem;
    margin-top: -57.5rem;
    margin-left: 61rem;
  }
  .sec13 .flex .blk03 {
    width: 40rem;
    margin-top: -134rem;
    margin-left: 35rem;
  }
  .sec14 {
    width: 75rem;
    margin-left: 0;
    margin-top: 70.5em;
  }
  .sec14 .blk01 {
    width: 62rem;
  }
  .sec14 .blk01 .sec__ttl {
    width: 13rem;
    bottom: -91.5rem;
    left: 2.5rem;
  }
  .sec14 .blk02 {
    width: 56rem;
    margin-top: 7.5rem;
    margin-left: 19rem;
    mix-blend-mode: multiply;
  }
  .sec14 .blk03 {
    width: 49rem;
    margin-top: 7.5rem;
    margin-left: 5rem;
  }
  .sec14 .blk03 .sec__ttl._01 {
    width: 27.1rem;
    top: 71rem;
    left: 0rem;
  }
  .sec14 .blk03 .sec__ttl._02 {
    width: 3.2rem;
    top: 9.4rem;
    left: 52.2rem;
  }
  .sec15 {
    width: 75rem;
    margin-top: 33.5rem;
  }
  .sec15 .blk01 {
    width: 56rem;
    margin-left: 14rem;
  }
  .sec15 .blk01 .bg {
    width: 66rem;
    top: -5rem;
    right: -5rem;
  }
  .sec15 .blk01 .sec__ttl {
    width: 3.3rem;
    top: -3.2rem;
    right: 64rem;
  }
  .sec16 {
    width: 75rem;
    margin-left: unset;
    margin-top: 22.5rem;
  }
  .sec16 .blk01 {
    width: 75rem;
    margin-top: 15rem;
  }
  .sec16 .blk01 .sec__ttl {
    width: 64.2rem;
    top: 48rem;
    right: 7rem;
  }
  .sec16 .blk02 {
    width: 62rem;
    margin-top: 17.5rem;
    margin-left: 4rem;
  }
  .sec16 .blk02 .bg {
    width: 42rem;
    top: 35rem;
    right: -5rem;
  }
  .sec17 {
    width: 75rem;
    margin-top: 22.5rem;
  }
  .sec17 .blk01 {
    width: 49rem;
    margin-left: 26rem;
  }
  .sec17 .blk01 .sec__ttl {
    width: 13rem;
    bottom: 0.5rem;
    left: -17.5rem;
  }
  .sec17 .blk02 {
    width: 62rem;
    margin-top: 7.5rem;
  }
  .sec18 {
    width: 75rem;
    margin-top: 17.5rem;
  }
  .sec18 .blk01 {
    width: 75rem;
  }
  .sec18 .blk01 .sec__ttl {
    width: 9rem;
    top: 6rem;
    left: 2rem;
  }
  .sec19 {
    width: 75rem;
    margin-left: unset;
  }
  .sec19 .blk01 {
    width: 62rem;
  }
  .sec19 .blk01 .sec__ttl._01 {
    width: 27rem;
    bottom: -12.5rem;
    left: 7.5rem;
  }
  .sec19 .blk01 .sec__ttl._02 {
    width: 3.3rem;
    top: 23.4rem;
    left: 65.2rem;
  }
  .sec19 .blk02 {
    width: 56rem;
    margin-top: 67rem;
    margin-left: 3rem;
  }
  .sec19 .blk02 .sec__ttl {
    width: 3.3rem;
    top: 12.8rem;
    left: 59.2rem;
  }
  .sec19 .blk02 .bg {
    width: 40rem;
    top: -35rem;
    right: -12.5rem;
  }
  .sec20 {
    width: 75rem;
    margin-left: unset;
  }
  .sec20 .blk01 {
    width: 56rem;
    margin: 0 auto;
  }
  .sec20 .blk01 .sec__ttl {
    width: 54rem;
    bottom: -21.8rem;
    left: 0.2rem;
  }
  .sec20 .blk02 {
    width: 62rem;
    margin-top: 40.5rem;
  }
  .sec20 .blk02 .sec__ttl {
    width: 3.4rem;
    top: 30.5rem;
    left: 65rem;
  }
  .sec21 {
    width: 75rem;
  }
  .sec21 .blk01 {
    width: 75rem;
  }
  /* ===================
　　  button
=================== */
  .m-btn {
    width: 62rem;
    margin: 0 auto;
    padding: 15rem 0;
  }
  .m-btn a {
    width: 62rem;
    height: 12.4rem;
    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;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    background-color: #fff;
    font-family: 'Crimson Text', serif;
    font-size: 2.2rem;
    line-height: 1.54;
    letter-spacing: 0.002em;
    text-align: center;
  }
}
/*# sourceMappingURL=style.css.map */