@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100;300;400;500;700;900&display=swap");
article {
  padding-top: 0; }

.footer {
  width: 100%;
  background-color: #fff; }
  .footer--inner--wrap {
    padding-top: 70px; }
    .footer--inner--wrap h5 {
      width: calc(500px * 1.2);
      margin: 0 auto; }
    .footer--inner--wrap .cap_txt {
      width: calc(650px * 1.2);
      margin: 0 auto;
      font-size: 13px;
      line-height: 1.8;
      padding-top: 40px; }
    .footer--inner--wrap--address {
      width: calc(650px * 1.2);
      margin: 0 auto;
      position: relative;
      margin-top: 60px; }
      .footer--inner--wrap--address .obj {
        position: absolute;
        right: 0;
        top: -30px;
        width: calc(200px * 1.2); }
      .footer--inner--wrap--address .ttl {
        font-size: 24px;
        font-weight: 700; }
      .footer--inner--wrap--address .tel {
        font-size: 24px;
        font-weight: 500;
        padding: 10px 0 0; }
        .footer--inner--wrap--address .tel span {
          font-size: 14px;
          font-weight: 400; }
      .footer--inner--wrap--address dl {
        padding: 40px 0 0; }
        .footer--inner--wrap--address dl dt {
          width: 80px;
          text-align: center;
          font-size: 18px;
          font-weight: 500;
          border: 1px solid #000; }
        .footer--inner--wrap--address dl dd {
          font-size: 18px;
          line-height: 1.8;
          font-weight: 500; }
  .footer--under {
    background: #ACDDF7;
    padding: 60px 0;
    margin-top: 60px; }
    .footer--under .copyright {
      width: calc(650px * 1.2);
      margin: 0 auto; }
    .footer--under ul {
      display: flex;
      justify-content: center;
      margin-top: 40px; }
      .footer--under ul li {
        width: 280px;
        margin: 0 20px; }
        .footer--under ul li:last-child {
          width: 240px; }

.pagetop {
  width: 50px;
  height: 50px;
  position: fixed;
  right: 20px;
  bottom: 20px;
  z-index: 1; }

@media screen and (max-width: 767px) {
  article {
    padding-top: 0; }

  .footer {
    width: 100%;
    background-color: #fff; }
    .footer--inner {
      padding: 0 4vw; }
      .footer--inner--wrap {
        padding-top: 9.3333333333vw; }
        .footer--inner--wrap h5 {
          width: 45.3333333333vw;
          margin: 0 auto; }
        .footer--inner--wrap .cap_txt {
          width: 100%;
          font-size: 2.2666666667vw;
          line-height: 1.8;
          padding-top: 4vw; }
        .footer--inner--wrap--address {
          width: auto;
          margin: 0 auto;
          position: relative;
          margin-top: 5vw;
          padding: 0 6.6666666667vw; }
          .footer--inner--wrap--address .obj {
            position: absolute;
            right: 8vw;
            top: auto;
            bottom: 13.3333333333vw;
            width: 26.6666666667vw; }
          .footer--inner--wrap--address .ttl {
            font-size: 4vw;
            font-weight: 700; }
          .footer--inner--wrap--address .tel {
            font-size: 4vw;
            font-weight: 500;
            padding: 1.3333333333vw 0 0; }
            .footer--inner--wrap--address .tel span {
              font-size: 2.6666666667vw;
              font-weight: 400; }
          .footer--inner--wrap--address dl {
            padding: 5.3333333333vw 0 0; }
            .footer--inner--wrap--address dl dt {
              width: 13.3333333333vw;
              text-align: center;
              font-size: 3.2vw;
              font-weight: 500;
              border: 0.1333333333vw solid #000; }
            .footer--inner--wrap--address dl dd {
              font-size: 3.2vw;
              line-height: 1.8;
              font-weight: 500; }
    .footer--under {
      background: #ACDDF7;
      padding: 5.3333333333vw 5.3333333333vw;
      margin-top: 8vw; }
      .footer--under .copyright {
        width: 100%;
        margin: 0 auto; }
      .footer--under ul {
        display: flex;
        justify-content: flex-start;
        margin-top: 5.3333333333vw; }
        .footer--under ul li {
          width: 37.3333333333vw;
          margin: 0 3.3333333333vw 0 0; }
          .footer--under ul li:last-child {
            width: 32vw; }

  .pagetop {
    width: 9.3333333333vw;
    height: 9.3333333333vw;
    position: fixed;
    right: 2.6666666667vw;
    bottom: 2.6666666667vw;
    z-index: 1; } }
/* =========================================================
 * reset　　　    /*リセット
========================================================= */
blockquote, body, div, dl, dt, dd, fieldset, form, h1, h2, h3, h4, h5, h6, input, li, ol, p, pre, select, span, textarea, td, th, ul, figure, figcaption {
  margin: 0px;
  padding: 0px; }

fieldset, img {
  border: 0; }

h1, h2, h3, h4, h5, h6 {
  font-size: 100%;
  font-weight: normal; }

ol {
  list-style-type: none; }

ul {
  list-style-type: none; }
  ul li {
    list-style-type: none; }
    ul li img {
      line-height: 0;
      font-size: 0;
      vertical-align: top; }

img {
  border: none;
  vertical-align: bottom; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

caption, th {
  text-align: left; }

iframe {
  border: none; }

a:focus {
  outline: none; }

address, caption, cite, code, dfn, em, strong, th, var {
  font-style: normal;
  font-weight: normal; }

/* IE */
* html ul li dl, * html ol li dl {
  display: inline; }
*:first-child + html ul li dl, *:first-child + html ol li dl {
  display: inline; }

/* =========================================================
 * default settings      　   /*デフォルトセッティング
========================================================= */
html {
  font-size: 62.5%;
  overflow: auto; }

* {
  	/*box-sizing: border-box;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;*/
  word-break: break-all;
  /*CJK (中国語、台湾語、日本語、韓国語) 以外のテキストにおいて、単語中などでの文字の改行に関する禁則処理を解除し、どの文字の間でも改行するようにします。*/ }

body {
  overflow: hidden;
  -webkit-text-size-adjust: 100%;
  font: inherit;
  font-size: 1vw;
  font-family: 'Noto Sans JP', sans-serif;
  line-height: 1.4;
  color: #000;
  background: #fff; }

a {
  width: 100%;
  height: 100%;
  display: block;
  text-decoration: none;
  color: #333;
  -webkit-transition: opacity 0.3s ease-out;
  -moz-transition: opacity 0.3s ease-out;
  -ms-transition: opacity 0.3s ease-out;
  transition: opacity 0.3s ease-out; }
  a:hover {
    opacity: 0.7;
    -webkit-opacity: .7;
    -moz-opacity: .7;
    filter: alpha(opacity=70);
    -ms-filter: "alpha(opacity=70)"; }

.soon {
  pointer-events: none;
  opacity: .5; }

.hide, .hidden {
  visibility: hidden; }

p {
  line-break: strict; }

img {
  max-width: 100%; }

main {
  display: block; }

.pc {
  display: block; }

.sp {
  display: none; }

@media screen and (max-width: 767px) {
  body {
    -webkit-text-size-adjust: 100%;
    background: #fff;
    min-width: 100%; }

  a {
    -webkit-transition: none;
    -moz-transition: none;
    -ms-transition: none;
    transition: none; }
    a:hover {
      opacity: 1;
      -webkit-opacity: 1;
      -moz-opacity: 1;
      filter: alpha(opacity=100);
      /* IE lt 8 */
      -ms-filter: "alpha(opacity=100)";
      /* IE 8 */ }

  img {
    width: 100%; }

  .pc {
    display: none; }

  .sp {
    display: block; } }
/* =========================================================
 * font
========================================================= */
/*noto-sans*/
.font-noto {
  font-family: 'Noto Sans JP', sans-serif; }

/* =========================================================
 * clearfix　　   /*クリアフィックス
========================================================= */
.clearfix {
  zoom: 1; }
  .clearfix:before {
    content: "";
    display: table; }
  .clearfix:after {
    content: "";
    display: table;
    clear: both; }

/* =========================================================
 * fade Animation　　   /*フェード アニメーション
========================================================= */
.fade,
.fadein,
.fadein-top,
.fadein-left,
.fadein-right,
.opening {
  position: relative;
  opacity: 0;
  transition: opacity 0.875s ease-in-out , transform 0.875s ease-in-out; }

.fade {
  transform: translate(0, 0); }

.fadein {
  transform: translate(0, 50px); }

.fadein-top {
  transform: translate(0, -50px); }

.fadein-left {
  transform: translate(-50px, 0); }

.fadein-right {
  transform: translate(50px, 0); }

.fade.scrollin,
.fadein.scrollin,
.fadein-top.scrollin,
.fadein-left.scrollin,
.fadein-right.scrollin,
.opening.active {
  opacity: 1 !important;
  transform: translate(0, 0); }

/* =========================================================
 * scrollbar　　   /*フスクロールバー
========================================================= */
/* モーダルのスタイル */
.modal {
  display: none;
  /* 初期は非表示 */
  position: fixed;
  /* スクロールしても固定される */
  z-index: 3;
  /* 最前面に表示 */
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.5);
  /* 背景の半透明効果 */ }

.modal-outer {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%; }

.modal-content {
  background-color: none;
  margin: 0 auto;
  padding: 0;
  border: none;
  width: 26.6666666667vw;
  /* モーダルの幅を調整 */
  position: relative;
  max-height: 100vh;
  /* モーダルの高さを制限して、はみ出た場合にスクロール可能に */
  overflow-y: auto;
  /* 縦方向にスクロールできるようにする */ }

.close {
  position: absolute;
  width: 3.3333333333vw;
  height: 3.3333333333vw;
  right: 2.0833333333vw;
  top: 2.0833333333vw; }

.close:hover, .close:focus {
  color: black;
  text-decoration: none;
  cursor: pointer; }

#myModal2 .modal-content {
  width: 45.8333333333vw; }

.top img {
  max-width: 100%;
  width: 100%;
  height: auto; }
.top article {
  width: 100%;
  margin: 0 auto;
  position: relative;
  z-index: 1; }
  .top article .kv--back {
    max-width: 100%;
    height: auto;
    margin: 0 auto;
    background: url("../img/back_pc.jpg") no-repeat center center/cover;
    padding-bottom: 50px; }
    .top article .kv--back h1 {
      width: calc(750px * 1.2);
      margin: 0 auto;
      padding: 50px 0; }
    .top article .kv--back h2 {
      width: calc(650px * 1.2);
      margin: 0 auto; }
    .top article .kv--back--inner {
      width: calc(650px * 1.1);
      display: block;
      justify-content: space-between;
      margin: 50px auto 50px; }
      .top article .kv--back--inner h3 {
        width: calc(650px * 1.1);
        margin: 0.8333333333vw auto 0; }
    .top article .kv--back .btn {
      width: calc(650px * 1.2);
      margin: 15px auto 0;
      padding-bottom: 0px; }
  .top article .kv--ancher {
    display: flex;
    justify-content: space-between;
    width: calc(750px * 1.2);
    margin: 0 auto; }
    .top article .kv--ancher li {
      width: 25%; }
      .top article .kv--ancher li img {
        filter: drop-shadow(0px 5px 3px #545454); }
  .top article .contents--top h4 {
    width: calc(650px * 1.2);
    margin: 0 auto;
    padding: 50px 0 50px; }
  .top article .contents--top .modalbtn {
    width: calc(450px * 1.2);
    margin: 0 auto; }
  .top article .contents .contentsbox {
    padding-top: 50px; }
    .top article .contents .contentsbox .ttlsmall {
      width: calc(500px * 1.2);
      margin: 0 auto; }
    .top article .contents .contentsbox--flex {
      width: calc(650px * 1.2);
      display: block;
      justify-content: center;
      align-items: center;
      margin: 0vw auto 0; }
      .top article .contents .contentsbox--flex p {
        width: 100%; }
        .top article .contents .contentsbox--flex p:nth-child(2) {
          margin-top: 0vw; }
      .top article .contents .contentsbox--flex.wid_2 {
        padding-top: 50px; }
        .top article .contents .contentsbox--flex.wid_2 p {
          width: calc(550px * 1.2);
          margin: 0 auto; }
          .top article .contents .contentsbox--flex.wid_2 p:nth-child(2) {
            margin-top: 25px; }
    .top article .contents .contentsbox .under, .top article .contents .contentsbox .btn {
      width: calc(650px * 1.2);
      margin: 0 auto;
      padding: 50px 0 1.6666666667vw; }
    .top article .contents .contentsbox .btn {
      padding: 20px 0 0vw; }
    .top article .contents .contentsbox .map {
      width: calc(650px * 1.2);
      margin: 0 auto;
      margin-top: 0vw;
      margin-bottom: 2.5vw; }
    .top article .contents .contentsbox .mapttl {
      width: calc(650px * 1.2);
      margin: 50px auto -75px;
      text-align: center; }
      .top article .contents .contentsbox .mapttl img {
        width: calc(550px * 1.2); }
      .top article .contents .contentsbox .mapttl.toggle {
        position: relative; }
        .top article .contents .contentsbox .mapttl.toggle:after {
          position: absolute;
          content: "";
          width: 0;
          height: 0;
          right: 4.1666666667vw;
          top: 50%;
          margin-top: -0.625vw;
          border-left: 0.8333333333vw solid transparent;
          border-right: 0.8333333333vw solid transparent;
          border-top: 1.25vw solid #fff; }
        .top article .contents .contentsbox .mapttl.toggle.active:after {
          position: absolute;
          content: "";
          width: 0;
          height: 0;
          right: 4.1666666667vw;
          top: 50%;
          margin-top: -0.625vw;
          border-left: 0.8333333333vw solid transparent;
          border-right: 0.8333333333vw solid transparent;
          border-bottom: 1.25vw solid #fff;
          border-top: none; }
    .top article .contents .contentsbox .toggle_inner {
      width: calc(650px * 1.2);
      margin: 0 auto;
      padding-top: 40px; }
      .top article .contents .contentsbox .toggle_inner .innerflex {
        display: flex;
        justify-content: space-between;
        flex-wrap: wrap;
        box-sizing: border-box;
        border: 6px solid #e01714;
        padding: 30px; }
        .top article .contents .contentsbox .toggle_inner .innerflex li {
          width: 49.5%;
          margin-top: 2%; }
      .top article .contents .contentsbox .toggle_inner .captiontxt {
        font-size: 14px;
        line-height: 1.8;
        padding-top: 20px; }
    .top article .contents .contentsbox--inner {
      width: calc(700px * 1.2);
      margin: 0 auto;
      padding: 0 15px 40px;
      position: relative; }
      .top article .contents .contentsbox--inner:before {
        position: absolute;
        content: "";
        top: 0;
        left: 0;
        width: 100%;
        height: 105px;
        background: #fff; }
      .top article .contents .contentsbox--inner.cl_1 {
        background: #D9EAF6; }
      .top article .contents .contentsbox--inner.cl_2 {
        background: #FCE7D9;
        margin-top: 50px; }
      .top article .contents .contentsbox--inner--box {
        position: relative; }
        .top article .contents .contentsbox--inner--box .lead {
          padding: 50px 100px 20px; }
        .top article .contents .contentsbox--inner--box ul {
          display: flex;
          justify-content: space-between;
          align-items: flex-start;
          flex-wrap: wrap;
          padding: 0 0px; }
          .top article .contents .contentsbox--inner--box ul li {
            width: 49.5%;
            margin-top: 2%; }
    .top article .contents .contentsbox .capright {
      width: calc(730px * 1.2);
      margin: 0 auto;
      text-align: right;
      padding: 15px 0 0;
      font-size: 14px; }
    .top article .contents .contentsbox .middleimg {
      width: calc(650px * 1.2);
      margin: 0 auto;
      padding: 50px 0 0vw; }
    .top article .contents .contentsbox .middletxt {
      text-align: center;
      font-size: 14px;
      padding: 20px 0 120px; }
    .top article .contents .contentsbox--back {
      max-width: 100%;
      margin: 0 auto;
      background: url("../img/back_middle_pc.jpg") no-repeat top center/cover;
      padding-bottom: 5.8333333333vw; }
      .top article .contents .contentsbox--back .lead {
        width: calc(700px * 1.2);
        margin: 0 auto;
        position: relative;
        top: -50px; }
      .top article .contents .contentsbox--back .imgs {
        width: calc(700px * 1.2);
        margin: 0 auto; }
      .top article .contents .contentsbox--back .txtimg {
        width: calc(700px * 1.2);
        text-align: center;
        margin: 0 auto; }
      .top article .contents .contentsbox--back .wid_2 {
        width: calc(700px * 1.2);
        margin: 0 auto;
        display: flex;
        justify-content: space-between;
        flex-wrap: wrap; }
        .top article .contents .contentsbox--back .wid_2 li {
          width: 49.5%;
          margin-top: 2%; }
          .top article .contents .contentsbox--back .wid_2 li:last-child {
            margin-top: 2%; }
    .top article .contents .contentsbox--wrap {
      width: calc(700px * 1.2);
      margin: 0 auto; }
      .top article .contents .contentsbox--wrap--box {
        position: relative; }
        .top article .contents .contentsbox--wrap--box ul {
          display: flex;
          flex-wrap: wrap;
          justify-content: space-between; }
          .top article .contents .contentsbox--wrap--box ul li {
            width: 49.5%;
            margin-top: 2%; }
        .top article .contents .contentsbox--wrap--box .imgs {
          position: absolute;
          right: 0;
          bottom: -20px;
          width: calc(330px * 1.2); }
      .top article .contents .contentsbox--wrap--inner {
        padding-top: 0px;
margin-top: -40px;}
        .top article .contents .contentsbox--wrap--inner--box {
          background: #FFFF77;
          border-radius: 20px;
          padding: 30px; }
          .top article .contents .contentsbox--wrap--inner--box .imgs {
            width: calc(650px * 1.2);
            margin: 0 auto; }
          .top article .contents .contentsbox--wrap--inner--box .btnx {
            width: calc(650px * 1.2);
            margin: 15px auto 0; }
        .top article .contents .contentsbox--wrap--inner .cap_txt {
          font-size: 13px;
          line-height: 1.8;
          padding-top: 20px; }
  .top article .contents--first {
    margin-top: 50px; }
    .top article .contents--first h5 {
      width: 450px;
      margin: 0 auto -30px; }
  .top article .contents--second {
    margin-top: 150px;
    position: relative; }
    .top article .contents--second h5 {
      width: 450px;
      margin: 0 auto; }
    .top article .contents--second .obj {
      width: 200px;
      position: absolute;
      top: -50px;
      left: 50%;
      margin-left: -430px;
      z-index: 1; }
  .top article .contents--third {
    margin-top: 100px; }
    .top article .contents--third h5 {
      width: 450px;
      margin: 0 auto; }
  .top article .contents--forth {
    margin-top: 100px; }
    .top article .contents--forth h5 {
      width: 450px;
      margin: 0 auto;
      position: relative;
      margin-bottom: -50px; }
    .top article .contents--forth .contentsbox {
      background: #ACDDF7;
      padding: 70px 0;
      width: 100%; }

@media screen and (max-width: 767px) {
  .modal-content {
    background-color: none;
    margin: 10% auto;
    padding: 0;
    border: none;
    width: 85%;
    /* モーダルの幅を調整 */
    position: relative;
    max-height: 100vh;
    /* モーダルの高さを制限して、はみ出た場合にスクロール可能に */
    overflow-y: auto;
    /* 縦方向にスクロールできるようにする */ }

  .close {
    position: absolute;
    width: 6.6666666667vw;
    height: 6.6666666667vw;
    right: 5.3333333333vw;
    top: 5.3333333333vw; }

  #myModal2 .modal-content {
    width: 93.3333333333vw; }

  .top img {
    max-width: 100%;
    width: 100%;
    height: auto; }
  .top article {
    width: 100%; }
    .top article .kv--back {
      background: url("../img/back_sp.jpg") no-repeat top center/cover;
      padding-bottom: 6vw; }
      .top article .kv--back h1 {
        width: 96vw;
        margin: 0 auto;
        padding: 14.6666666667vw 0 6vw; }
      .top article .kv--back h2 {
        width: 76.6666666667vw;
        margin: 0 auto; }
      .top article .kv--back--inner {
        width: 76.6666666667vw;
        display: block;
        justify-content: space-between;
        margin: 3.3333333333vw auto 3.3333333333vw; }
        .top article .kv--back--inner h3 {
          width: 100%;
          margin-top: 2.6666666667vw; }
      .top article .kv--back .btn {
        width: 80vw;
        margin: 0.6666666667vw auto 0;
        padding-bottom: 0; }
    .top article .kv--ancher {
      display: flex;
      justify-content: space-between;
      width: 100%;
      margin: 0 auto; }
      .top article .kv--ancher li {
        width: 25%; }
        .top article .kv--ancher li img {
          filter: drop-shadow(0px 2px 2px #545454); }
    .top article .contents--top h4 {
      width: 77.3333333333vw;
      margin: 0 auto;
      padding: 11.3333333333vw 0 9.3333333333vw; }
    .top article .contents--top .modalbtn {
      width: 89.3333333333vw;
      margin: 0 auto; }
    .top article .contents .contentsbox {
      padding-top: 10.6666666667vw; }
      .top article .contents .contentsbox .ttlsmall {
        width: 30.6666666667vw;
        margin: 0 auto; }
      .top article .contents .contentsbox--flex {
        width: 100%;
        display: flex;
        justify-content: center;
        align-items: center;
        flex-wrap: wrap;
        margin: -10.6666666667vw auto 0; }
        .top article .contents .contentsbox--flex p {
          width: 89.3333333333vw; }
          .top article .contents .contentsbox--flex p:nth-child(2) {
            margin-top: 0vw; }
        .top article .contents .contentsbox--flex.wid_2 {
          margin: 0 auto;
          padding-top: 3.3333333333vw; }
          .top article .contents .contentsbox--flex.wid_2 p {
            width: 80vw;
            margin: 3.3333333333vw 0 0; }
      .top article .contents .contentsbox .under {
        width: 59.3333333333vw;
        margin: 0 auto;
        padding: 5.3333333333vw 0 0vw; }
      .top article .contents .contentsbox .btn {
        width: 74.6666666667vw;
        margin: 0 auto;
        padding: 2.6666666667vw 0 0vw; }
      .top article .contents .contentsbox .map {
        width: 93.3333333333vw;
        margin: 0 auto;
        margin-top: 0vw;
        margin-bottom: 4vw; }
      .top article .contents .contentsbox .mapttl {
        width: 88vw;
        margin: 0 auto -17.3333333333vw;
        text-align: center; }
        .top article .contents .contentsbox .mapttl img {
          width: 88vw; }
        .top article .contents .contentsbox .mapttl.toggle {
          position: relative; }
          .top article .contents .contentsbox .mapttl.toggle:after {
            position: absolute;
            content: "";
            width: 0;
            height: 0;
            right: 4.1666666667vw;
            top: 50%;
            margin-top: -1.25vw;
            border-left: 1.6666666667vw solid transparent;
            border-right: 1.6666666667vw solid transparent;
            border-top: 2.5vw solid #fff; }
          .top article .contents .contentsbox .mapttl.toggle.active:after {
            position: absolute;
            content: "";
            width: 0;
            height: 0;
            right: 4.1666666667vw;
            top: 50%;
            margin-top: -1.25vw;
            border-left: 1.6666666667vw solid transparent;
            border-right: 1.6666666667vw solid transparent;
            border-bottom: 2.5vw solid #fff;
            border-top: none; }
      .top article .contents .contentsbox .toggle_inner {
        width: 93.3333333333vw;
        margin: 0 auto; }
        .top article .contents .contentsbox .toggle_inner .innerflex {
          display: flex;
          justify-content: space-between;
          flex-wrap: wrap;
          box-sizing: border-box;
          border: 0.5333333333vw solid #e01714;
          padding: 10.6666666667vw 4vw 5.3333333333vw; }
          .top article .contents .contentsbox .toggle_inner .innerflex li {
            width: 49%;
            margin-top: 1.3333333333vw; }
        .top article .contents .contentsbox .toggle_inner .captiontxt {
          font-size: 2.2666666667vw;
          line-height: 1.8;
          padding-top: 2.6666666667vw; }
      .top article .contents .contentsbox--inner {
        width: 93.3333333333vw;
        margin: 0 auto;
        padding: 0 0vw 5.3333333333vw;
        position: relative; }
        .top article .contents .contentsbox--inner:before {
          position: absolute;
          content: "";
          top: 0;
          left: 0;
          width: 100%;
          height: 10.8333333333vw;
          background: #fff; }
        .top article .contents .contentsbox--inner.cl_1 {
          background: #D9EAF6; }
        .top article .contents .contentsbox--inner.cl_2 {
          background: #FCE7D9;
          margin-top: 13.3333333333vw; }
        .top article .contents .contentsbox--inner .ttl {
          padding: 0 2vw; }
        .top article .contents .contentsbox--inner--box {
          position: relative; }
          .top article .contents .contentsbox--inner--box .lead {
            width: 76vw;
            margin: 0 auto;
            padding: 10.6666666667vw 0vw 2.6666666667vw; }
          .top article .contents .contentsbox--inner--box ul {
            display: block;
            justify-content: space-between;
            align-items: flex-start;
            flex-wrap: wrap;
            padding: 0; }
            .top article .contents .contentsbox--inner--box ul li {
              width: 100%;
              position: relative;
              padding-bottom: 5.3333333333vw;
              margin-bottom: 5.3333333333vw; }
              .top article .contents .contentsbox--inner--box ul li:after {
                position: absolute;
                content: "";
                background: url("../img/line_1.svg") no-repeat center center/cover;
                width: 74.6666666667vw;
                height: 2.8vw;
                bottom: 0;
                left: 50%;
                margin-left: -37.3333333333vw; }
              .top article .contents .contentsbox--inner--box ul li:last-child:after {
                content: none; }
      .top article .contents .contentsbox .capright {
        width: 93.3333333333vw;
        margin: 0 auto;
        text-align: right;
        padding: 2vw 0 0;
        font-size: 2.2666666667vw; }
      .top article .contents .contentsbox .middleimg {
        width: 88vw;
        margin: 0 auto;
        padding: 4.1666666667vw 0 0vw; }
      .top article .contents .contentsbox .middletxt {
        text-align: center;
        font-size: 2.2666666667vw;
        padding: 2.6666666667vw 0 24vw; }
      .top article .contents .contentsbox--back {
        width: 100%;
        margin: 0 auto;
        background: url("../img/back_middle_sp.jpg") no-repeat top center/cover;
        padding-bottom: 16vw; }
        .top article .contents .contentsbox--back .lead {
          width: 92vw;
          margin: 0 auto;
          position: relative;
          top: -9.3333333333vw;
          margin-bottom: -5.3333333333vw; }
        .top article .contents .contentsbox--back .imgs {
          width: 100%;
          margin: 0 auto; }
        .top article .contents .contentsbox--back .txtimg {
          width: 96vw;
          text-align: center;
          margin: 0 auto; }
        .top article .contents .contentsbox--back .wid_2 {
          width: 96vw;
          margin: 0 auto;
          display: flex;
          justify-content: center;
          flex-wrap: wrap; }
          .top article .contents .contentsbox--back .wid_2 li {
            width: 50%;
            margin: 0 -1%;
            margin-top: 4vw; }
            .top article .contents .contentsbox--back .wid_2 li:last-child {
              margin-top: 4vw; }
      .top article .contents .contentsbox--wrap {
        width: 100%;
        background: #ACDDF7;
        padding: 9.3333333333vw 0vw; }
        .top article .contents .contentsbox--wrap--box {
          position: relative; }
          .top article .contents .contentsbox--wrap--box ul {
            width: auto;
            display: flex;
            flex-wrap: wrap;
            justify-content: space-between;
            padding: 4vw 2.6666666667vw; }
            .top article .contents .contentsbox--wrap--box ul li {
              width: 49.5%;
              margin-top: 1.3333333333vw; }
          .top article .contents .contentsbox--wrap--box .imgs {
            position: absolute;
            right: 4vw;
            bottom: -4vw;
            width: 45.3333333333vw; }
        .top article .contents .contentsbox--wrap--inner {
          padding: 0 4vw;
          padding-top: 0vw;
	    margin-top: -7.5vw;}
          .top article .contents .contentsbox--wrap--inner--box {
            border-radius: 2.6666666667vw;
            padding: 4vw; }
            .top article .contents .contentsbox--wrap--inner--box .imgs {
              width: 100%;
              margin: 0 auto; }
            .top article .contents .contentsbox--wrap--inner--box .btnx {
              width: 100%;
              margin: 2vw auto 0; }
          .top article .contents .contentsbox--wrap--inner .cap_txt {
            font-size: 2.2666666667vw;
            line-height: 1.8;
            padding-top: 2.6666666667vw; }
    .top article .contents--first {
      margin-top: 13.3333333333vw; }
      .top article .contents--first h5 {
        width: 45.3333333333vw;
        margin: 0 auto; }
    .top article .contents--second {
      margin-top: 26.6666666667vw;
      position: relative; }
      .top article .contents--second h5 {
        width: 45.3333333333vw;
        margin: 0 auto; }
      .top article .contents--second .obj {
        width: 22.6666666667vw;
        position: absolute;
        top: -9.3333333333vw;
        left: 2.6666666667vw;
        margin-left: 0; }
    .top article .contents--third {
      margin-top: 26.6666666667vw; }
      .top article .contents--third h5 {
        width: 45.3333333333vw;
        margin: 0 auto -2.6666666667vw; }
    .top article .contents--forth {
      margin-top: 20vw; }
      .top article .contents--forth h5 {
        width: 45.3333333333vw;
        margin: 0 auto;
        position: relative;
        margin-bottom: -5.3333333333vw; }
      .top article .contents--forth .contentsbox {
        width: 100%;
        padding: 0; } }
