@charset "UTF-8";

/*=======================================
 	             SMACSS  base
 ========================================*/
img {
  width: 100%;
}

/*=======================================
	         SMACSS  layout　　　　　　　       ( style.scss ) ( header.scss / main.scss / footer.scss ...) 
========================================*/
/*=======================================
          　　  　flex
========================================*/
/*=======================================
          　　   　js
========================================*/
.fade {
  -webkit-transition-duration: 1s;
  transition-duration: 1s;
  opacity: 0;
  -webkit-transform: translateY(50px);
  transform: translateY(50px);
  -webkit-transition: all 1500ms;
  transition: all 1500ms;
}

.fade.onView {
  opacity: 1;
  -webkit-transform: translateY(0);
  transform: translateY(0);
}

#fixed {
  position: fixed;
  -webkit-transform: rotate(-90deg);
  transform: rotate(-90deg);
  top: 50% !important;
  left: -92% !important;
  z-index: 99;
}

.left_side_ttl {
  display: inline-block;
  font-size: 1.6rem;
  opacity: 0;
  -webkit-transition: opacity .5s;
  transition: opacity .5s;
}

.left_side_ttl.view {
  opacity: 1;
}

.midnightHeader.default {
  color: #808080;
}

.midnightHeader.white {
  color: white;
}

/*=======================================
          　　   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: #a2a6a3;
  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_201002 {
  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: 128rem;
  margin: 4rem auto 0;
  position: relative;
}

.l-top__mv {
  width: 120rem;
  margin: 0 auto;
}

.l-top__ttl {
  width: 36rem;
  position: absolute;
  right: 15rem;
  top: 36.5rem;
  -webkit-transform: translateY(50%);
  transform: translateY(50%);
}

/* ===================z
	　　  common
=================== */
.sec {
  margin: 15rem auto 0;
}

.sec .blk01,
.sec .blk02 {
  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;
}

.sec_wrap {
  width: 128rem;
  margin: 0 auto;
}

/* ===================
	　　 section
=================== */
.sec01 {
  margin-top: 10rem;
  width: 80rem;
}

.sec01 .blk01 {
  width: 40rem;
}

.sec01 .blk01 .sec__ttl {
  width: 33.5rem;
}

.sec01 .blk02 {
  width: 35.2rem;
  margin-top: 15rem;
}

.sec02 {
  margin-top: 15.4rem;
  width: 86rem;
}

.sec02 .blk01 {
  width: 45rem;
}

.sec02 .blk01 .sec__ttl {
  width: 28.8rem;
  margin-left: 5rem;
}

.sec02 .blk02 {
  width: 36rem;
  margin-top: 20rem;
}

.sec03 {
  margin-top: 16.6rem;
  margin-left: 28.5rem;
  width: 78rem;
}

.sec03 .blk01 {
  width: 45rem;
}

.sec03 .blk02 {
  width: 26rem;
  margin-top: 14.3rem;
}

.sec03_bg {
  position: relative;
}

.sec03_bg::before {
  position: absolute;
  content: '';
  top: 22.6rem;
  left: 0;
  background: #a2a6a3;
  width: 100%;
  height: 55.5rem;
}

.sec04 {
  width: 89.8rem;
}

.sec04 .blk01 {
  width: 45rem;
}

.sec04 .blk02 {
  width: 30rem;
  margin-top: 30rem;
  margin-left: 5rem;
}

.sec04 .sec__ttl {
  width: 4.4rem;
  margin-top: 8rem;
  margin-left: 5.5rem;
}

.sec05 .sec__mv {
  width: 100%;
  height: 63rem;
}

.sec05 .flex {
  width: 82rem;
  margin: 0 auto;
}

.sec05 .flex .blk01 {
  width: 30rem;
  margin-top: -20rem;
}

.sec05 .flex .blk01 .sec__ttl {
  width: 34.4rem;
  margin-top: 15.5rem;
  margin-left: -5rem;
}

.sec05 .flex .blk02 {
  width: 42rem;
  margin-top: 10rem;
}

.sec06 {
  margin-left: 21.5rem;
  width: 87rem;
}

.sec06 .blk01 {
  width: 45rem;
}

.sec06 .blk01 .sec__ttl {
  width: 45.8rem;
  margin-left: -5rem;
}

.sec06 .blk02 {
  width: 30rem;
  margin-top: 25rem;
}

.sec07 {
  margin-top: 15.4rem;
  width: 73rem;
}

.sec07 .blk01 {
  width: 40rem;
}

.sec07 .blk02 {
  width: 26rem;
  margin-top: 10.6rem;
}

.sec07_bg {
  position: relative;
}

.sec07_bg::before {
  position: absolute;
  content: '';
  top: 22.6rem;
  left: 0;
  background: #a2a6a3;
  width: 100%;
  height: 48rem;
}

.sec08 {
  width: 85rem;
}

.sec08 .blk01 {
  width: 40rem;
}

.sec08 .blk01 .sec__ttl {
  width: 42rem;
  margin-top: 15.6rem;
  margin-left: 5rem;
}

.sec08 .blk02 {
  width: 40rem;
  margin-top: 10rem;
}

.sec09 {
  margin-top: 14.8rem;
}

.sec09 .sec__mv {
  width: 100%;
  height: 63rem;
  padding-left: 7.3rem;
  background: #a2a6a3;
}

.sec09 .blk02 {
  margin-top: 7rem;
  margin-left: 56rem;
}

.sec09 .blk02 .sec__img {
  width: 42rem;
}

.sec09 .blk02 .sec__ttl {
  width: 4.8rem;
  margin-top: 5.6rem;
  margin-left: 5.3rem;
}

.sec10 .sec__mv {
  width: 100%;
  height: 63rem;
}

.sec10 .flex {
  width: 80rem;
  margin: 0 auto 0 25rem;
}

.sec10 .flex .blk01 {
  width: 30rem;
  margin-top: -20rem;
}

.sec10 .flex .blk01 .sec__ttl {
  width: 34.4rem;
  margin-top: 15.5rem;
  margin-left: -5rem;
}

.sec10 .flex .blk02 {
  width: 40rem;
  margin-top: 10rem;
}

.sec11 {
  margin-left: 28.5rem;
  width: 78rem;
}

.sec11 .blk01 {
  width: 45rem;
}

.sec11 .blk02 {
  width: 26rem;
  margin-top: 14.3rem;
}

.sec11_bg {
  position: relative;
}

.sec11_bg::before {
  position: absolute;
  content: '';
  top: 22.6rem;
  left: 0;
  background: #a2a6a3;
  width: 100%;
  height: 55.5rem;
}

.sec12 {
  margin-left: 36.5rem;
  width: 66.5rem;
}

.sec12 .blk01 {
  width: 45rem;
}

.sec12 .blk01 .sec__ttl {
  width: 26.6rem;
  margin-top: 19rem;
  margin-left: 8.5rem;
  position: absolute;
  z-index: 1;
}

.sec12 .blk02 {
  width: 48rem;
  margin-top: 5rem;
  margin-left: 18.5rem;
}

.sec13 {
  width: 80rem;
}

.sec13 .blk01 {
  margin-top: 10.2rem;
  width: 40rem;
}

.sec13 .blk01 .sec__ttl {
  width: 51.5rem;
  margin-top: 5.5rem;
  margin-left: -40rem;
}

.sec13 .blk02 {
  width: 35rem;
}

.sec14 {
  margin-top: 14.8rem;
}

.sec14 .sec__mv {
  width: 100%;
  height: 63rem;
  padding-left: 7.3rem;
  background: #a2a6a3;
}

.sec14 .flex {
  width: 82rem;
  margin: 0 auto;
}

.sec14 .flex .blk01 {
  width: 30rem;
  margin-top: -20rem;
}

.sec14 .flex .blk01 .sec__ttl {
  width: 31.3rem;
  margin-top: 15.5rem;
  margin-left: -5rem;
}

.sec14 .flex .blk02 {
  width: 42rem;
  margin-top: 10rem;
}

.sec15 {
  margin-left: 23rem;
  width: 87rem;
}

.sec15 .blk01 {
  width: 45rem;
}

.sec15 .blk01 .sec__ttl {
  width: 38.4rem;
  margin-top: 15.5rem;
  margin-left: -37rem;
}

.sec15 .blk02 {
  width: 35rem;
  margin-top: 25rem;
}

.sec16 {
  margin-top: 15.4rem;
  width: 82rem;
}

.sec16 .blk01 {
  width: 45rem;
}

.sec16 .blk02 {
  width: 30rem;
  margin-top: 11.2rem;
}

.sec16_bg {
  position: relative;
}

.sec16_bg::before {
  position: absolute;
  content: '';
  top: 20.6rem;
  left: 0;
  background: #a2a6a3;
  width: 100%;
  height: 56.5rem;
}

.sec17 {
  margin-left: 29rem;
  width: 77rem;
}

.sec17 .blk01 {
  width: 40rem;
}

.sec17 .blk01 .sec__ttl {
  width: 29.4rem;
  margin-top: -7.5rem;
  margin-left: -44rem;
}

.sec17 .blk02 {
  width: 30rem;
}

.sec18 {
  width: 90.4rem;
}

.sec18 .blk01 {
  width: 45rem;
}

.sec18 .blk02 {
  width: 33rem;
  margin-top: 30rem;
  margin-left: 5rem;
}

.sec18 .sec__ttl {
  width: 5.2rem;
  margin-top: 8rem;
  margin-left: 5.5rem;
}

.sec19 {
  width: 82rem;
}

.sec19 .blk01 {
  width: 45rem;
}

.sec19 .blk02 {
  width: 30rem;
  margin-top: 14.3rem;
}

.sec19_bg {
  position: relative;
}

.sec19_bg::before {
  position: absolute;
  content: '';
  top: 22.6rem;
  left: 0;
  background: #a2a6a3;
  width: 100%;
  height: 55.5rem;
}

.sec20 {
  margin-left: 31.5rem;
  width: 71.5rem;
}

.sec20 .blk01 {
  width: 45rem;
}

.sec20 .blk01 .sec__ttl {
  width: 31.1rem;
  margin-top: 16rem;
  margin-left: 3.5rem;
  position: absolute;
  z-index: 1;
}

.sec20 .blk02 {
  width: 48rem;
  margin-top: 5.2rem;
  margin-left: 23.5rem;
}

/* ===================
	　　  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;
  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;
  }
}

/* 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_201002 {
    width: 75rem;
  }

  /* モーダル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: 40%;
  }

  #make___slide .slick-arrow::before,
  #make___slide .slick-arrow::after {
    width: calc(4* (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 .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;
  }

  #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;
  }

  .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;
    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;
  }

  /* ===================
　　  common
=================== */
  .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;
  }

  .sec_wrap {
    width: unset;
    margin: unset;
  }

  /* ===================
　　　 top
=================== */
  .l-top {
    width: 75rem;
    margin: 0 auto;
    position: relative;
  }

  .l-top__mv {
    width: 75rem;
    margin: 0 auto;
  }

  .l-top__ttl {
    width: 61.4rem;
    position: absolute;
    right: 6.7rem;
    top: 72.8rem;
    -webkit-transform: translateY(50%);
    transform: translateY(50%);
  }

  #fixed {
    position: fixed;
    -webkit-transform: rotate(-90deg);
    transform: rotate(-90deg);
    top: 50% !important;
    left: -92% !important;
    z-index: 99;
  }

  /* ===================
　　 section
=================== */
  .sec01 {
    margin-top: 10rem;
  }

  .sec01 .blk01 {
    width: 60rem;
    margin-left: 15rem;
  }

  .sec01 .blk01 .sec__ttl {
    width: 41.8rem;
    margin-left: -9rem;
  }

  .sec01 .blk02 {
    width: 52rem;
    margin-top: 8.5rem;
    margin-left: 6rem;
  }

  .sec02 .blk01 {
    width: 60rem;
    margin-left: 15rem;
  }

  .sec02 .blk01 .sec__ttl {
    width: 36rem;
    margin-left: -9rem;
  }

  .sec02 .blk02 {
    width: 52rem;
    margin-top: 8rem;
    margin-left: 6rem;
  }

  .sec03 {
    margin-left: unset;
  }

  .sec03 .blk01 {
    width: 58rem;
    margin: 0 auto;
  }

  .sec03 .blk02 {
    width: 40rem;
    margin: 7.5rem auto 0;
  }

  .sec03_bg {
    position: relative;
  }

  .sec03_bg::before {
    position: absolute;
    content: '';
    top: 32.3rem;
    left: 0;
    background: #a2a6a3;
    width: 100%;
    height: 147.2rem;
  }

  .sec04 {
    margin-top: 25rem;
  }

  .sec04 .blk01 {
    width: 60rem;
    margin-left: 6rem;
  }

  .sec04 .blk02 {
    width: 52rem;
    margin-top: 7.5rem;
    margin-left: 10rem;
    position: relative;
  }

  .sec04 .sec__ttl {
    position: absolute;
    width: 5.5rem;
    margin-top: -71rem;
    margin-left: 65.5rem;
  }

  .sec05 .sec__mv {
    width: 100%;
    height: 75rem;
  }

  .sec05 .flex {
    width: 75rem;
    margin: 0 auto;
  }

  .sec05 .flex .blk01 {
    width: 40rem;
    margin-top: 7.5rem;
    margin-left: 29rem;
  }

  .sec05 .flex .blk01 .sec__ttl {
    width: 43rem;
    margin-top: 8rem;
    margin-left: -23rem;
  }

  .sec05 .flex .blk02 {
    width: 63rem;
    margin-top: 7.8rem;
    margin-left: 6rem;
  }

  .sec06 {
    margin-left: unset;
  }

  .sec06 .blk01 {
    width: 60rem;
    margin-left: 15rem;
  }

  .sec06 .blk01 .sec__ttl {
    width: 57.1rem;
    margin-left: -9rem;
  }

  .sec06 .blk02 {
    width: 52rem;
    margin-top: 8rem;
    margin-left: 6rem;
  }

  .sec07 .blk01 {
    width: 58rem;
    margin: 0 auto;
  }

  .sec07 .blk02 {
    width: 40rem;
    margin: 7.5rem auto 0;
  }

  .sec07_bg {
    position: relative;
  }

  .sec07_bg::before {
    position: absolute;
    content: '';
    top: 32.6rem;
    left: 0;
    background: #a2a6a3;
    width: 100%;
    height: 147.3rem;
  }

  .sec08 {
    margin-top: 25rem;
  }

  .sec08 .blk01 {
    width: 60rem;
    margin-left: 15rem;
  }

  .sec08 .blk01 .sec__ttl {
    width: 52rem;
    margin-top: 8.2rem;
    margin-left: -9rem;
  }

  .sec08 .blk02 {
    width: 52rem;
    margin-top: 7.7rem;
    margin-left: 6rem;
  }

  .sec09 .sec__mv {
    width: 100%;
    height: 75rem;
    padding-left: unset;
    background: none;
  }

  .sec09 .blk02 {
    margin-top: 7.5rem;
    margin-left: 10rem;
    position: relative;
  }

  .sec09 .blk02 .sec__img {
    width: 52rem;
  }

  .sec09 .blk02 .sec__ttl {
    position: absolute;
    width: 6rem;
    margin-top: -71.5rem;
    margin-left: 55.5rem;
  }

  .sec10 .sec__mv {
    width: 100%;
    height: 75rem;
  }

  .sec10 .flex {
    width: 75rem;
    margin: 0 auto;
  }

  .sec10 .flex .blk01 {
    width: 40rem;
    margin-top: 7.5rem;
    margin-left: 29rem;
  }

  .sec10 .flex .blk01 .sec__ttl {
    width: 42.8rem;
    margin-top: 8rem;
    margin-left: -23rem;
  }

  .sec10 .flex .blk02 {
    width: 63rem;
    margin-top: 7.8rem;
    margin-left: 6rem;
  }

  .sec11 .blk01 {
    width: 58rem;
    margin: 0 auto;
  }

  .sec11 .blk02 {
    width: 40rem;
    margin: 7.5rem auto 0;
  }

  .sec11_bg {
    position: relative;
  }

  .sec11_bg::before {
    position: absolute;
    content: '';
    top: 32.6rem;
    left: 0;
    background: #a2a6a3;
    width: 100%;
    height: 147.3rem;
  }

  .sec12 {
    margin-top: 25rem;
    margin-left: unset;
  }

  .sec12 .blk01 {
    width: 60rem;
    margin-left: 15rem;
  }

  .sec12 .blk01 .sec__ttl {
    width: 33.2rem;
    margin-top: 8rem;
    margin-left: -9rem;
    position: absolute;
    z-index: 1;
  }

  .sec12 .blk02 {
    width: 63rem;
    margin: 21rem auto 0;
  }

  .sec13 .blk01 {
    width: 60rem;
    margin-left: 15rem;
  }

  .sec13 .blk01 .sec__ttl {
    width: 64.4rem;
    margin-top: 8.2rem;
    margin-left: -9rem;
  }

  .sec13 .blk02 {
    width: 52rem;
    margin-top: 7.7rem;
    margin-left: 6rem;
  }

  .sec14 .sec__mv {
    width: 100%;
    height: 75rem;
    padding-left: unset;
    background: none;
  }

  .sec14 .flex {
    width: 75rem;
    margin: 0 auto;
  }

  .sec14 .flex .blk01 {
    width: 40rem;
    margin-top: 7.5rem;
    margin-left: 29rem;
  }

  .sec14 .flex .blk01 .sec__ttl {
    width: 39.1rem;
    margin-top: 8rem;
    margin-left: -23rem;
  }

  .sec14 .flex .blk02 {
    width: 63rem;
    margin-top: 7.5rem;
    margin-left: 6rem;
  }

  .sec15 .blk01 {
    width: 60rem;
    margin-left: 15rem;
  }

  .sec15 .blk01 .sec__ttl {
    width: 47.9rem;
    margin-top: 8.2rem;
    margin-left: -9rem;
  }

  .sec15 .blk02 {
    width: 52rem;
    margin-top: 8rem;
    margin-left: 6rem;
  }

  .sec16 .blk01 {
    width: 58rem;
    margin: 0 auto;
  }

  .sec16 .blk02 {
    width: 40rem;
    margin: 7.5rem auto 0;
  }

  .sec16_bg {
    position: relative;
  }

  .sec16_bg::before {
    position: absolute;
    content: '';
    top: 32.6rem;
    left: 0;
    background: #a2a6a3;
    width: 100%;
    height: 147.3rem;
  }

  .sec17 {
    margin-top: 25rem;
    margin-left: unset;
  }

  .sec17 .blk01 {
    width: 60rem;
    margin-left: 15rem;
  }

  .sec17 .blk01 .sec__ttl {
    width: 36.7rem;
    margin-top: 8rem;
    margin-left: -9rem;
    position: absolute;
    z-index: 1;
  }

  .sec17 .blk02 {
    width: 52rem;
    margin-left: 6rem;
    margin-top: 29.8rem;
  }

  .sec18 .blk01 {
    width: 60rem;
    margin-left: 6rem;
  }

  .sec18 .blk02 {
    width: 52rem;
    margin-top: 7.5rem;
    margin-left: 10rem;
    position: relative;
  }

  .sec18 .sec__ttl {
    position: absolute;
    width: 6rem;
    margin-top: -78rem;
    margin-left: 65.5rem;
  }

  .sec19 .blk01 {
    width: 58rem;
    margin: 0 auto;
  }

  .sec19 .blk02 {
    width: 40rem;
    margin: 7.5rem auto 0;
  }

  .sec19_bg {
    position: relative;
  }

  .sec19_bg::before {
    position: absolute;
    content: '';
    top: 32.6rem;
    left: 0;
    background: #a2a6a3;
    width: 100%;
    height: 147.3rem;
  }

  .sec20 {
    margin-top: 25rem;
    margin-left: unset;
  }

  .sec20 .blk01 {
    width: 60rem;
    margin-left: 15rem;
  }

  .sec20 .blk01 .sec__ttl {
    width: 38.9rem;
    margin-top: 8rem;
    margin-left: -9rem;
    position: absolute;
    z-index: 1;
  }

  .sec20 .blk02 {
    width: 63rem;
    margin: 29.6rem auto 0;
  }

  /* ===================
　　  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;
    box-sizing: border-box;
    border: 1px solid #000;
    background-color: #fff;
    font-family: 'Crimson Text', serif;
    font-size: 2.2rem;
    line-height: 1.54;
    letter-spacing: 0.002em;
    text-align: center;
  }
}