@charset "UTF-8";
.rokushoku *:where(:not(html, iframe, canvas, img, svg, video, audio):not(svg*, symbol*)) {
  all: unset;
  display: revert;
}

*, *::before, *::after {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

a, button {
  cursor: revert;
}

ol, ul, menu, summary {
  list-style: none;
}

img {
  max-inline-size: 100%;
  max-block-size: 100%;
  display: inline-block;
}

table {
  border-collapse: collapse;
}

textarea {
  white-space: revert;
}

meter {
  -webkit-appearance: revert;
  -moz-appearance: revert;
       appearance: revert;
}

:where(pre) {
  all: revert;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

::-webkit-input-placeholder {
  color: unset;
}

::-moz-placeholder {
  color: unset;
}

:-ms-input-placeholder {
  color: unset;
}

::-ms-input-placeholder {
  color: unset;
}

::placeholder {
  color: unset;
}

:where([hidden]) {
  display: none;
}

:where([contenteditable]:not([contenteditable=false])) {
  -moz-user-modify: read-write;
  -webkit-user-modify: read-write;
  overflow-wrap: break-word;
  -webkit-line-break: after-white-space;
  -webkit-user-select: auto;
}

:where([draggable=true]) {
  -webkit-user-drag: element;
}

:where(dialog:modal) {
  all: revert;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.ly_contents picture {
  display: block;
}

#tmpl_content {
  min-width: 1190px !important;
}
@media screen and (max-width: 640px) {
  #tmpl_content {
    min-width: 100% !important;
  }
}

.mt-5 {
  margin-top: 5px !important;
}

.mt-10 {
  margin-top: 10px !important;
}

.mt-15 {
  margin-top: 15px !important;
}

.mt-20 {
  margin-top: 20px !important;
}

.mt-25 {
  margin-top: 25px !important;
}

.mt-30 {
  margin-top: 30px !important;
}

.mt-35 {
  margin-top: 35px !important;
}

.mt-40 {
  margin-top: 40px !important;
}

.mt-45 {
  margin-top: 45px !important;
}

.mt-50 {
  margin-top: 50px !important;
}

.mt-55 {
  margin-top: 55px !important;
}

.mt-60 {
  margin-top: 60px !important;
}

.mt-65 {
  margin-top: 65px !important;
}

.mt-70 {
  margin-top: 70px !important;
}

.mt-75 {
  margin-top: 75px !important;
}

.mt-80 {
  margin-top: 80px !important;
}

.mt-85 {
  margin-top: 85px !important;
}

.mt-90 {
  margin-top: 90px !important;
}

.mt-95 {
  margin-top: 95px !important;
}

.mt-100 {
  margin-top: 100px !important;
}

.mt-105 {
  margin-top: 105px !important;
}

.mt-110 {
  margin-top: 110px !important;
}

.mt-115 {
  margin-top: 115px !important;
}

.mt-120 {
  margin-top: 120px !important;
}

.mt-125 {
  margin-top: 125px !important;
}

.mt-130 {
  margin-top: 130px !important;
}

.mt-135 {
  margin-top: 135px !important;
}

.mt-140 {
  margin-top: 140px !important;
}

.mt-145 {
  margin-top: 145px !important;
}

.mt-150 {
  margin-top: 150px !important;
}

@media screen and (max-width: 640px) {
  .mt-sp-5 {
    margin-top: 5px !important;
  }
}

@media screen and (max-width: 640px) {
  .mt-sp-10 {
    margin-top: 10px !important;
  }
}

@media screen and (max-width: 640px) {
  .mt-sp-15 {
    margin-top: 15px !important;
  }
}

@media screen and (max-width: 640px) {
  .mt-sp-20 {
    margin-top: 20px !important;
  }
}

@media screen and (max-width: 640px) {
  .mt-sp-25 {
    margin-top: 25px !important;
  }
}

@media screen and (max-width: 640px) {
  .mt-sp-30 {
    margin-top: 30px !important;
  }
}

@media screen and (max-width: 640px) {
  .mt-sp-35 {
    margin-top: 35px !important;
  }
}

@media screen and (max-width: 640px) {
  .mt-sp-40 {
    margin-top: 40px !important;
  }
}

@media screen and (max-width: 640px) {
  .mt-sp-45 {
    margin-top: 45px !important;
  }
}

@media screen and (max-width: 640px) {
  .mt-sp-50 {
    margin-top: 50px !important;
  }
}

@media screen and (max-width: 640px) {
  .mt-sp-55 {
    margin-top: 55px !important;
  }
}

@media screen and (max-width: 640px) {
  .mt-sp-60 {
    margin-top: 60px !important;
  }
}

@media screen and (max-width: 640px) {
  .mt-sp-65 {
    margin-top: 65px !important;
  }
}

@media screen and (max-width: 640px) {
  .mt-sp-70 {
    margin-top: 70px !important;
  }
}

@media screen and (max-width: 640px) {
  .mt-sp-75 {
    margin-top: 75px !important;
  }
}

@media screen and (max-width: 640px) {
  .mt-sp-80 {
    margin-top: 80px !important;
  }
}

@media screen and (max-width: 640px) {
  .mt-sp-85 {
    margin-top: 85px !important;
  }
}

@media screen and (max-width: 640px) {
  .mt-sp-90 {
    margin-top: 90px !important;
  }
}

@media screen and (max-width: 640px) {
  .mt-sp-95 {
    margin-top: 95px !important;
  }
}

@media screen and (max-width: 640px) {
  .mt-sp-100 {
    margin-top: 100px !important;
  }
}

@media screen and (max-width: 640px) {
  .mt-sp-105 {
    margin-top: 105px !important;
  }
}

@media screen and (max-width: 640px) {
  .mt-sp-110 {
    margin-top: 110px !important;
  }
}

@media screen and (max-width: 640px) {
  .mt-sp-115 {
    margin-top: 115px !important;
  }
}

@media screen and (max-width: 640px) {
  .mt-sp-120 {
    margin-top: 120px !important;
  }
}

@media screen and (max-width: 640px) {
  .mt-sp-125 {
    margin-top: 125px !important;
  }
}

@media screen and (max-width: 640px) {
  .mt-sp-130 {
    margin-top: 130px !important;
  }
}

@media screen and (max-width: 640px) {
  .mt-sp-135 {
    margin-top: 135px !important;
  }
}

@media screen and (max-width: 640px) {
  .mt-sp-140 {
    margin-top: 140px !important;
  }
}

@media screen and (max-width: 640px) {
  .mt-sp-145 {
    margin-top: 145px !important;
  }
}

@media screen and (max-width: 640px) {
  .mt-sp-150 {
    margin-top: 150px !important;
  }
}

.mb-5 {
  margin-bottom: 5px !important;
}

.mb-10 {
  margin-bottom: 10px !important;
}

.mb-15 {
  margin-bottom: 15px !important;
}

.mb-20 {
  margin-bottom: 20px !important;
}

.mb-25 {
  margin-bottom: 25px !important;
}

.mb-30 {
  margin-bottom: 30px !important;
}

.mb-35 {
  margin-bottom: 35px !important;
}

.mb-40 {
  margin-bottom: 40px !important;
}

.mb-45 {
  margin-bottom: 45px !important;
}

.mb-50 {
  margin-bottom: 50px !important;
}

.mb-55 {
  margin-bottom: 55px !important;
}

.mb-60 {
  margin-bottom: 60px !important;
}

.mb-65 {
  margin-bottom: 65px !important;
}

.mb-70 {
  margin-bottom: 70px !important;
}

.mb-75 {
  margin-bottom: 75px !important;
}

.mb-80 {
  margin-bottom: 80px !important;
}

.mb-85 {
  margin-bottom: 85px !important;
}

.mb-90 {
  margin-bottom: 90px !important;
}

.mb-95 {
  margin-bottom: 95px !important;
}

.mb-100 {
  margin-bottom: 100px !important;
}

/*reset*/
/*** The new CSS reset - version 1.11.1 (last updated 24.10.2023) ***/
body {
  margin: 0;
}

.sp {
  display: none;
}
@media screen and (max-width: 640px) {
  .sp {
    display: block;
  }
}

.pc {
  display: block;
}
@media screen and (max-width: 640px) {
  .pc {
    display: none;
  }
}

.tl_c {
  text-align: center;
}

h2, h3 {
  font-family: "SST W20 Bold", "SST W55 Bold", Arial, "Helvetica Neue", Meiryo, "Hiragino Kaku Gothic ProN", sans-serif;
}

picture {
  line-height: 0;
}

.kyvis_outer {
  width: 100%;
  position: relative;
}
.kyvis_outer .kyvis {
  max-width: 1680px;
  overflow: hidden;
  margin: 0 auto;
  min-height: 500px;
}
.kyvis_outer .kyvis img {
  min-height: 480px;
  min-width: 1680px;
}
@media screen and (max-width: 640px) {
  .kyvis_outer .kyvis {
    min-height: 375px;
  }
}
.kyvis_outer .kyvis_t {
  position: absolute;
  z-index: 1;
  color: #fff;
  width: 30rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  top: 30%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  padding-top: 1.25rem;
  -webkit-transition-duration: 1s;
          transition-duration: 1s;
  -webkit-filter: brightness(0) invert(1);
          filter: brightness(0) invert(1);
}
.kyvis_outer .kyvis_t.kyvis_c {
  -webkit-filter: none;
          filter: none;
  -webkit-transition-duration: 2s;
          transition-duration: 2s;
}
@media screen and (max-width: 640px) {
  .kyvis_outer .kyvis_t {
    width: 20.125rem;
    top: 31%;
  }
}
.kyvis_outer .kyvis .slider_pause {
  width: 53px;
  height: 25px;
  background: hsla(0, 0%, 15%, 0.8);
  border: none;
  cursor: pointer;
  position: absolute;
  z-index: 1;
  right: 3%;
  bottom: 3%;
  -webkit-transition-duration: 0.3s;
          transition-duration: 0.3s;
}
.kyvis_outer .kyvis .slider_pause svg {
  height: 8px;
  width: 26px;
}
.kyvis_outer .kyvis .slider_pause.paused {
  background: hsla(0, 0%, 60%, 0.8);
}
.kyvis_outer .kyvis_text {
  margin-top: 9.9375rem;
  text-align: center;
  color: #20885C;
  font-size: 2.1875rem;
  font-family: "SST W20 Bold", "SST W55 Bold", Arial, "Helvetica Neue", Meiryo, "Hiragino Kaku Gothic ProN", sans-serif;
}
@media screen and (max-width: 640px) {
  .kyvis_outer .kyvis_text {
    margin-top: 3.4375rem;
    font-size: 1.375rem;
  }
}

.paused .vegas-slide-inner {
  -webkit-animation-play-state: paused;
          animation-play-state: paused;
}

.vegas-content {
  height: 100%;
}

.vegas-content-scrollable {
  position: absolute;
}

.vegas-slide-inner {
  -webkit-animation: scaleAnime;
          animation: scaleAnime;
  -webkit-animation-duration: 7s;
          animation-duration: 7s;
  /*アニメーション変化時間 ※デフォルト*/
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
  /*アニメーションの開始と終了*/
}

@-webkit-keyframes scaleAnime {
  0% {
    -webkit-transform: scale(1, 1);
            transform: scale(1, 1);
  }
  100% {
    -webkit-transform: scale(1.1, 1.1);
            transform: scale(1.1, 1.1);
  }
}

@keyframes scaleAnime {
  0% {
    -webkit-transform: scale(1, 1);
            transform: scale(1, 1);
  }
  100% {
    -webkit-transform: scale(1.1, 1.1);
            transform: scale(1.1, 1.1);
  }
}
.contents_block {
  color: #595959;
  max-width: 1190px;
  margin: 12.25rem auto 0;
  text-align: center;
}
@media screen and (max-width: 640px) {
  .contents_block {
    padding: 0 1.25rem;
    margin-top: 6.25rem;
  }
}
.contents_block:first-of-type {
  margin-top: 7.0625rem;
}
@media screen and (max-width: 640px) {
  .contents_block:first-of-type {
    margin-top: 1.4375rem;
    font-size: 1.375rem;
  }
}
.contents_block .h2_t {
  font-size: 1.75rem;
  letter-spacing: 0.05em;
  line-height: 1;
}
.contents_block .h2_t span {
  color: #20885C;
  font-size: 1.75rem;
  margin-bottom: 3.3125rem;
  display: block;
}
@media screen and (max-width: 640px) {
  .contents_block .h2_t span {
    font-size: 1.375rem;
    margin-bottom: 2.25rem;
  }
}
@media screen and (max-width: 640px) {
  .contents_block .h2_t {
    margin-top: 1.4375rem;
    font-size: 1rem;
  }
}
@media screen and (max-width: 640px) {
  .contents_block .h2_t.t_s {
    font-size: 1.375rem;
    text-align: center;
  }
}
.contents_block_p {
  margin-top: 3rem;
  font-size: 1rem;
  line-height: 2.3;
  letter-spacing: 0.05em;
  font-family: "SST W20 Bold", "SST W55 Bold", Arial, "Helvetica Neue", Meiryo, "Hiragino Kaku Gothic ProN", sans-serif;
}
@media screen and (max-width: 640px) {
  .contents_block_p {
    line-height: 1.8;
    margin-top: 1.3125rem;
    font-size: 0.8125rem;
    text-align: center;
  }
}
.contents_block .block01_img img {
  max-width: 28.125rem;
  width: 100%;
}
@media screen and (max-width: 640px) {
  .contents_block .block01_img img {
    padding: 0 1.5625rem;
  }
}
@media screen and (max-width: 640px) {
  .contents_block .block01_img {
    margin-top: 1.5625rem;
  }
}
.contents_block .block02_img img {
  max-width: 43.75rem;
  width: 100%;
}
@media screen and (max-width: 640px) {
  .contents_block .block02_img img {
    padding: 0 1.5625rem;
  }
}
@media screen and (max-width: 640px) {
  .contents_block .block02_img {
    margin-top: 1.5625rem;
  }
}
.contents_block .block03_img img {
  max-width: 72.75rem;
  width: 100%;
}
@media screen and (max-width: 640px) {
  .contents_block .block03_img img {
    padding: 0 1.5625rem;
  }
}
@media screen and (max-width: 640px) {
  .contents_block .block03_img {
    margin-top: 1.5625rem;
  }
}
.contents_block .block04_img img {
  padding: 20px;
}
@media screen and (max-width: 640px) {
  .contents_block .block04_img img {
    padding: 0 2.5rem;
  }
}
@media screen and (max-width: 640px) {
  .contents_block .block04_img {
    margin-top: 0;
    margin-bottom: 2.0625rem;
  }
}
.contents_block .block05_img img {
  padding: 20px;
  max-width: 54.625rem;
}
@media screen and (max-width: 640px) {
  .contents_block .block05_img img {
    padding: 0 1.25rem;
    max-width: 100%;
  }
}
@media screen and (max-width: 640px) {
  .contents_block .block05_img {
    margin-top: 0;
    margin-bottom: 2.0625rem;
  }
}
.contents_block .cul_4 {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  max-width: 1190px;
  margin: 6.8125rem auto;
}
.contents_block .cul_4_inner {
  -webkit-flex-basis: 22%;
      -ms-flex-preferred-size: 22%;
          flex-basis: 22%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
}
@media screen and (max-width: 640px) {
  .contents_block .cul_4_inner {
    margin-top: 1.4375rem;
  }
  .contents_block .cul_4_inner:first-of-type {
    margin-top: 0;
  }
}
.contents_block .cul_4_inner h3 {
  -webkit-box-ordinal-group: 3;
  -webkit-order: 2;
      -ms-flex-order: 2;
          order: 2;
  margin-top: 30px;
  font-size: 1rem;
  margin-bottom: 0;
  font-family: "SST W20 Bold", "SST W55 Bold", Arial, "Helvetica Neue", Meiryo, "Hiragino Kaku Gothic ProN", sans-serif;
}
@media screen and (max-width: 640px) {
  .contents_block .cul_4_inner h3 {
    font-size: 1rem;
  }
}
.contents_block .cul_4_inner h3 span {
  display: block;
  font-family: "SST W20 Roman", "SST W55 Regular", Arial, "Helvetica Neue", Meiryo, "Hiragino Kaku Gothic ProN", sans-serif;
  margin-bottom: 0.625rem;
  font-weight: normal;
  font-size: 0.9375rem;
}
.contents_block .cul_4_inner picture {
  -webkit-box-ordinal-group: 2;
  -webkit-order: 1;
      -ms-flex-order: 1;
          order: 1;
}
.contents_block .cul_4_inner p {
  -webkit-box-ordinal-group: 4;
  -webkit-order: 3;
      -ms-flex-order: 3;
          order: 3;
  text-align: left;
  font-size: 0.8125rem;
  line-height: 1.75;
  margin-top: 1.875rem;
  font-family: "SST W20 Roman", "SST W55 Regular", Arial, "Helvetica Neue", Meiryo, "Hiragino Kaku Gothic ProN", sans-serif;
}
@media screen and (max-width: 640px) {
  .contents_block .cul_4_inner p {
    font-size: 0.8125rem;
  }
}
@media screen and (max-width: 640px) {
  .contents_block .cul_4 {
    margin: 3.5rem auto;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    max-width: 20.3125rem;
  }
}
.contents_block .cul_3 {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  max-width: 881px;
  margin: 6.8125rem auto;
}
.contents_block .cul_3_inner {
  -webkit-flex-basis: 30.9%;
      -ms-flex-preferred-size: 30.9%;
          flex-basis: 30.9%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
}
@media screen and (max-width: 640px) {
  .contents_block .cul_3_inner {
    margin-top: 1.4375rem;
  }
  .contents_block .cul_3_inner:first-of-type {
    margin-top: 0;
  }
}
.contents_block .cul_3_inner h3 {
  -webkit-box-ordinal-group: 3;
  -webkit-order: 2;
      -ms-flex-order: 2;
          order: 2;
  margin-top: 30px;
  font-size: 1rem;
  margin-bottom: 0;
  font-family: "SST W20 Bold", "SST W55 Bold", Arial, "Helvetica Neue", Meiryo, "Hiragino Kaku Gothic ProN", sans-serif;
}
@media screen and (max-width: 640px) {
  .contents_block .cul_3_inner h3 {
    font-size: 1rem;
  }
}
.contents_block .cul_3_inner h3 span {
  display: block;
  font-family: "SST W20 Roman", "SST W55 Regular", Arial, "Helvetica Neue", Meiryo, "Hiragino Kaku Gothic ProN", sans-serif;
  margin-bottom: 0.625rem;
  font-weight: normal;
  font-size: 0.875rem;
}
.contents_block .cul_3_inner picture {
  -webkit-box-ordinal-group: 2;
  -webkit-order: 1;
      -ms-flex-order: 1;
          order: 1;
}
.contents_block .cul_3_inner p {
  -webkit-box-ordinal-group: 4;
  -webkit-order: 3;
      -ms-flex-order: 3;
          order: 3;
  text-align: left;
  font-size: 0.8125rem;
  line-height: 1.75;
  margin-top: 1.875rem;
  font-family: "SST W20 Roman", "SST W55 Regular", Arial, "Helvetica Neue", Meiryo, "Hiragino Kaku Gothic ProN", sans-serif;
}
@media screen and (max-width: 640px) {
  .contents_block .cul_3_inner p {
    font-size: 0.8125rem;
  }
}
@media screen and (max-width: 640px) {
  .contents_block .cul_3 {
    margin: 3.5rem auto;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    max-width: 20.3125rem;
  }
}
.contents_block .cul2 {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -webkit-flex-direction: row-reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
  max-width: 1190px;
  margin: 6.8125rem auto;
}
.contents_block .cul2_inner {
  -webkit-flex-basis: 48%;
      -ms-flex-preferred-size: 48%;
          flex-basis: 48%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  text-align: left;
  font-size: 1.125rem;
}
@media screen and (max-width: 640px) {
  .contents_block .cul2_inner {
    margin-top: 1.4375rem;
  }
}
.contents_block .cul2_inner h3 {
  font-weight: normal;
  font-size: 2.625rem;
  margin-top: 0;
  margin-bottom: 2.1875rem;
}
@media screen and (max-width: 640px) {
  .contents_block .cul2_inner h3 {
    font-size: 1.375rem;
    text-align: center;
  }
}
.contents_block .cul2_inner p {
  margin-top: 0;
  margin-bottom: 1.875rem;
  line-height: 1.7;
}
@media screen and (max-width: 640px) {
  .contents_block .cul2_inner p {
    margin-bottom: 0.625rem;
    font-size: 0.8125rem;
    text-align: center;
    line-height: 1.8;
  }
}
.contents_block .cul2_inner .block04_btn {
  height: 4.5625rem;
}
.contents_block .cul2_inner .block04_btn a {
  font-family: "SST W20 Bold", "SST W55 Bold", Arial, "Helvetica Neue", Meiryo, "Hiragino Kaku Gothic ProN", sans-serif;
  display: block;
  max-width: 24.4375rem;
  background: -webkit-linear-gradient(52deg, #d6e562 -20%, #1f857e 24%, #1e8e66 82%, #20875b 100%);
  background: linear-gradient(38deg, #d6e562 -20%, #1f857e 24%, #1e8e66 82%, #20875b 100%);
  font-size: 1.5rem;
  padding: 0.8125rem;
  text-align: center;
  border-radius: 3.4375rem;
  text-decoration: none;
  color: #fff;
}
@media screen and (max-width: 640px) {
  .contents_block .cul2 {
    margin: 3.5rem auto;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    max-width: 100%;
  }
}
@media screen and (max-width: 640px) {
  .contents_block.block05 {
    text-align: left;
  }
}
.contents_block.block06 {
  max-width: 74.375rem;
  margin-top: 12.5rem;
}
@media screen and (max-width: 640px) {
  .contents_block.block06 {
    margin-top: 11rem;
  }
}
.contents_block.block06 h2 {
  font-size: 1.75rem;
  margin-bottom: 1.5rem;
  text-align: left;
  line-height: 1;
  font-family: "SST W20 Bold", "SST W55 Bold", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "MS Pゴシック", Osaka, sans-serif;
}
.contents_block.block06 .cul_3 {
  max-width: 74.375rem;
  margin-top: 4.75rem;
}
.contents_block.block06 .cul_3_inner {
  -webkit-flex-basis: 32%;
      -ms-flex-preferred-size: 32%;
          flex-basis: 32%;
}
@media screen and (max-width: 640px) {
  .contents_block.block06 .cul_3_inner {
    margin-top: 2.25rem;
  }
  .contents_block.block06 .cul_3_inner:first-of-type {
    margin-top: 0;
  }
}
.contents_block.block06 .cul_3_inner a {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  text-align: left;
  color: #000;
  text-decoration: none;
}
@media screen and (max-width: 640px) {
  .contents_block.block06 .cul_3_inner a h3 {
    margin-top: 1.5rem;
  }
}
.contents_block a:hover {
  opacity: 0.8;
}

.block04 .cul2_old {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  max-width: 1133px;
  margin: auto;
  color: #000;
}

.block04 .cul2_old div {
  -webkit-flex-basis: 48%;
  -ms-flex-preferred-size: 48%;
  flex-basis: 48%;
}

.block04 .cul2_old div:nth-of-type(1) {
  max-width: 400px;
}

.block04 .cul2_old h3 {
  margin: 0;
  font-size: 1.625rem;
  line-height: 1;
  font-family: "SST W20 Bold", "SST W55 Bold", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "MS Pゴシック", Osaka, sans-serif;
}
@media screen and (max-width: 640px) {
  .block04 .cul2_old h3 {
    text-align: left;
  }
}

.block04 .cul2_old h3 span {
  font-size: 1rem;
  display: block;
  margin-top: 1.1875rem;
  font-family: "SST W55 Regular", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "MS Pゴシック", Osaka, "sans-serif";
}

.block04 .cul2_old p {
  margin-top: 1.875rem;
  font-size: 0.8125rem;
  margin-bottom: 0;
  line-height: 1.75;
}
@media screen and (max-width: 640px) {
  .block04 .cul2_old p {
    text-align: left;
  }
}

.v_btn a {
  text-decoration: none;
  color: #000;
  text-align: center;
  width: 380px;
  height: 58px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  background-color: #DADADA;
  border: 1px solid #DADADA;
  margin: 3.5625rem auto 0;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  font-size: 1.0625rem;
}

@media screen and (max-width: 640px) {
  .v_btn a {
    width: 100%;
    max-width: 250px;
    font-size: 0.9375rem;
    margin-top: 4.1875rem;
  }
}
.v_btn a:hover {
  background-color: #fff;
  opacity: 1;
}