@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Zen+Kaku+Gothic+New:wght@300;400;500;700;900&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100;300;400;500;700;900&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Rubik+Mono+One&display=swap");
img {
  width: 100%; }

main {
  overflow: hidden; }
  main article {
    width: 100%;
    font-family: "Zen Kaku Gothic New", serif;
    font-weight: 900;
    letter-spacing: 0; }
    main article .kv {
      background: url("../images/back.jpg") no-repeat center center/cover;
      height: 56.3689604685vw;
      position: relative; }
      main article .kv:after {
        position: absolute;
        content: "";
        background: url("../images/scroll.svg") no-repeat center center/cover;
        right: 0;
        bottom: 0;
        width: 3.513909224vw;
        height: 8.1991215227vw;
        z-index: 2; }
      main article .kv .logo {
        position: absolute;
        width: 7.467057101vw;
        height: 3.2210834553vw;
        left: 2.9282576867vw;
        top: 3.6603221083vw;
        z-index: 1; }
      main article .kv .kvimg {
        position: absolute;
        width: 70.2781844802vw;
        left: 0;
        bottom: 0;
        z-index: 2; }
      main article .kv--inner {
        width: 42.1669106881vw;
        height: 100%;
        background: #F3D100;
        margin: 0 0 0 auto;
        padding: 6.588579795vw 0 6.588579795vw 6.588579795vw;
        position: relative; }
        main article .kv--inner:before {
          position: absolute;
          content: "";
          background: url("../images/obj_1.svg") no-repeat center center/cover;
          width: 13.17715959vw;
          height: 9.8096632504vw;
          right: 5.8565153734vw;
          top: 7.5402635432vw; }
        main article .kv--inner:after {
          position: absolute;
          content: "";
          background: url("../images/obj_2.svg") no-repeat center center/cover;
          width: 16.4714494876vw;
          height: 3.0014641288vw;
          left: 6.2225475842vw;
          top: 16.4714494876vw; }
        main article .kv--inner .leadtxt {
          font-size: 1.4641288433vw;
          position: relative;
          z-index: 2;
          font-family: 'Zen Kaku Gothic New', serif;
          font-weight: 900; }
        main article .kv--inner h2 {
          font-family: 'Zen Kaku Gothic New', serif;
          font-weight: 900;
          font-size: 4.831625183vw;
          line-height: 1.2;
          margin-top: 0.3660322108vw;
          position: relative;
          z-index: 2;
          letter-spacing: -0.02em; }
          main article .kv--inner h2 span {
            font-size: 5.8565153734vw;
            position: relative;
            left: -2.9282576867vw;
            margin-right: -5.8565153734vw; }
        main article .kv--inner h3 {
          font-family: 'Zen Kaku Gothic New', serif;
          font-weight: 900;
          font-size: 1.1713030747vw;
          line-height: 2;
          margin-top: 1.4641288433vw;
          position: relative;
          z-index: 2;
          letter-spacing: -0.04em; }
    main article .anchor {
      border-top: 0.2928257687vw solid #000;
      border-bottom: 0.2928257687vw solid #000;
      background: url("../images/back.jpg") no-repeat center center/cover;
      padding: 3.6603221083vw 0; }
      main article .anchor ul {
        display: flex;
        justify-content: center; }
        main article .anchor ul li {
          font-family: 'Zen Kaku Gothic New', serif;
          font-weight: 900;
          width: auto;
          font-size: 1.0980966325vw;
          margin: 0 0.5856515373vw; }
          main article .anchor ul li a {
            display: block;
            background: #000;
            border-radius: 0.2928257687vw;
            font-size: 1.0980966325vw;
            padding: 1.0980966325vw 2.9282576867vw 1.0980966325vw 1.4641288433vw;
            color: #fff;
            position: relative; }
            main article .anchor ul li a:after {
              position: absolute;
              content: "";
              background: url("../images/arrow.svg") no-repeat center center/cover;
              width: 0.5856515373vw;
              height: 0.878477306vw;
              right: 1.4641288433vw;
              top: 50%;
              margin-top: -0.439238653vw; }
    main article .contents--inner {
      position: relative; }
      main article .contents--inner .ttl {
        font-family: 'Zen Kaku Gothic New', serif;
        font-weight: 900;
        font-size: 1.6105417277vw;
        position: relative; }
        main article .contents--inner .ttl span {
          background: #000;
          padding: 0.3660322108vw 0.7320644217vw;
          color: #fff;
          position: relative; }
          main article .contents--inner .ttl span:before {
            position: absolute;
            content: "";
            width: 0.2928257687vw;
            height: 100%;
            background: #000;
            left: -0.5856515373vw;
            top: 0; }
      main article .contents--inner.second .img {
        position: absolute;
        width: 100%;
        height: auto;
        left: 0;
        top: 0; }
      main article .contents--inner.second .contents--inner--box {
        padding: 12.8111273792vw 10.2489019034vw;
        position: relative;
        z-index: 1; }
        main article .contents--inner.second .contents--inner--box h3 {
          font-family: 'Zen Kaku Gothic New', serif;
          font-weight: 900;
          font-size: 3.2210834553vw;
          line-height: 1.2;
          padding: 2.9282576867vw 0 4.39238653vw; }
        main article .contents--inner.second .contents--inner--box h4 {
          font-family: 'Zen Kaku Gothic New', serif;
          font-weight: 900;
          width: 36.6032210835vw;
          font-size: 1.1713030747vw;
          line-height: 2; }
          main article .contents--inner.second .contents--inner--box h4 span {
            font-family: 'Zen Kaku Gothic New', serif;
            font-size: 0.878477306vw;
            font-weight: 400;
            display: block;
            padding-top: 0.7320644217vw; }
        main article .contents--inner.second .contents--inner--box--flex {
          background: #000;
          border-radius: 0.7320644217vw;
          overflow: hidden;
          display: flex;
          justify-content: space-between;
          align-items: center;
          margin-top: 3.6603221083vw; }
          main article .contents--inner.second .contents--inner--box--flex .right {
            width: 30.0146412884vw; }
          main article .contents--inner.second .contents--inner--box--flex div {
            width: 49.0483162518vw;
            padding: 0 3.2942898975vw;
            color: #fff; }
            main article .contents--inner.second .contents--inner--box--flex div h5 {
              font-family: 'Zen Kaku Gothic New', serif;
              font-weight: 900;
              font-size: 1.1713030747vw;
              margin-bottom: 1.1713030747vw; }
            main article .contents--inner.second .contents--inner--box--flex div h6 {
              font-family: 'Zen Kaku Gothic New', serif;
              font-size: 1.0248901903vw;
              line-height: 1.8;
              font-weight: 400; }
      main article .contents--inner.third {
        background: url("../images/back_2.jpg") repeat center center/100%; }
        main article .contents--inner.third .img {
          position: absolute;
          width: 100%;
          height: auto;
          left: 0;
          top: 0;
          z-index: 2; }
        main article .contents--inner.third .contents--inner--box {
          padding: 32.2108345534vw 10.2489019034vw 11.7130307467vw;
          position: relative;
          z-index: 3; }
          main article .contents--inner.third .contents--inner--box .flexs {
            display: flex;
            justify-content: space-between;
            margin-top: 1.4641288433vw; }
          main article .contents--inner.third .contents--inner--box h3 {
            font-family: 'Zen Kaku Gothic New', serif;
            font-weight: 900;
            width: 50%;
            font-size: 3.2210834553vw;
            line-height: 1.2;
            padding-top: 1.4641288433vw; }
            main article .contents--inner.third .contents--inner--box h3 span {
              display: block;
              position: relative;
              width: 16.8374816984vw;
              padding-top: 1.0980966325vw;
              font-size: 1.1713030747vw;
              text-align: right;
              margin: 0 8.78477306vw 0 auto; }
              main article .contents--inner.third .contents--inner--box h3 span:before {
                position: absolute;
                content: "";
                width: 5.4904831625vw;
                border-top: 0.0732064422vw solid #000;
                left: 0;
                margin-top: 0.5856515373vw; }
          main article .contents--inner.third .contents--inner--box h4 {
            font-family: 'Zen Kaku Gothic New', serif;
            font-weight: 900;
            width: 37.3352855051vw;
            font-size: 1.1713030747vw;
            line-height: 2; }
      main article .contents--inner.forth .contents--inner--cont {
        padding: 0vw 10.2489019034vw 4.39238653vw;
        background: #F3D100;
        position: relative;
        display: flex;
        align-items: flex-end; }
        main article .contents--inner.forth .contents--inner--cont figure {
          width: 43.9238653001vw;
          top: -2.9282576867vw;
          border-radius: 0.7320644217vw;
          margin-bottom: -2.9282576867vw;
          overflow: hidden;
          position: relative;
          z-index: 2; }
        main article .contents--inner.forth .contents--inner--cont h5 {
          font-family: 'Zen Kaku Gothic New', serif;
          font-weight: 900;
          width: 19.3265007321vw;
          margin: 0 2.196193265vw 0 2.9282576867vw;
          font-size: 1.1713030747vw;
          line-height: 2;
          position: relative;
          z-index: 2; }
        main article .contents--inner.forth .contents--inner--cont h4 {
          font-family: 'Zen Kaku Gothic New', serif;
          font-weight: 900;
          width: 10.980966325vw;
          -ms-writing-mode: tb-rl;
          writing-mode: vertical-rl;
          font-size: 3.2210834553vw;
          line-height: 1;
          position: relative;
          z-index: 2;
          margin-right: 1.0980966325vw; }
        main article .contents--inner.forth .contents--inner--cont .obj {
          position: absolute;
          width: 100%;
          bottom: -1.756954612vw;
          left: 0; }
      main article .contents--inner.forth .contents--inner--section {
        display: flex;
        justify-content: space-between;
        align-items: center;
        position: relative;
        border-top: 0.2928257687vw solid #000; }
        main article .contents--inner.forth .contents--inner--section:after {
          position: absolute;
          content: "";
          width: 50%;
          height: 100%;
          background: url("../images/back.jpg") no-repeat center center/cover;
          right: 0;
          top: 0;
          z-index: -1; }
        main article .contents--inner.forth .contents--inner--section .imgs {
          width: 58.5651537335vw; }
        main article .contents--inner.forth .contents--inner--section .txtarea {
          width: 41.4348462665vw;
          padding-left: 10.2489019034vw;
          position: relative; }
          main article .contents--inner.forth .contents--inner--section .txtarea:after {
            position: absolute;
            content: "";
            background: url("../images/point_1.svg") no-repeat center center/cover;
            width: 2.2693997072vw;
            height: 12.5183016105vw;
            right: 0;
            top: 0; }
          main article .contents--inner.forth .contents--inner--section .txtarea h6 {
            font-family: 'Zen Kaku Gothic New', serif;
            font-weight: 900;
            font-size: 3.2210834553vw;
            line-height: 1.2;
            margin-bottom: 1.8301610542vw; }
          main article .contents--inner.forth .contents--inner--section .txtarea .txt {
            font-family: 'Zen Kaku Gothic New', serif;
            font-weight: 900;
            font-size: 1.1713030747vw;
            line-height: 2; }
          main article .contents--inner.forth .contents--inner--section .txtarea.back_2:after {
            background: url("../images/point_2.svg") no-repeat center center/cover;
            right: 9.5168374817vw; }
          main article .contents--inner.forth .contents--inner--section .txtarea.back_3:after {
            background: url("../images/point_3.svg") no-repeat center center/cover; }
        main article .contents--inner.forth .contents--inner--section.rev {
          flex-direction: row-reverse; }
          main article .contents--inner.forth .contents--inner--section.rev:after {
            right: auto;
            left: 0; }
          main article .contents--inner.forth .contents--inner--section.rev .txtarea {
            padding-left: 0;
            padding-right: 10.2489019034vw; }
      main article .contents--inner.fifth {
        padding-bottom: 7.3206442167vw; }
        main article .contents--inner.fifth .contents--inner--cont {
          position: relative; }
          main article .contents--inner.fifth .contents--inner--cont .img {
            position: absolute;
            width: 100%;
            height: auto;
            left: 0;
            top: 0; }
          main article .contents--inner.fifth .contents--inner--cont div {
            padding: 10.980966325vw 10.2489019034vw 10.980966325vw;
            color: #fff; }
            main article .contents--inner.fifth .contents--inner--cont div h3 {
              font-family: 'Zen Kaku Gothic New', serif;
              font-weight: 900;
              font-size: 3.2210834553vw;
              margin-bottom: 2.196193265vw; }
            main article .contents--inner.fifth .contents--inner--cont div h4 {
              font-family: 'Zen Kaku Gothic New', serif;
              font-weight: 900;
              font-size: 1.1713030747vw;
              line-height: 2; }
        main article .contents--inner.fifth .contents--inner--env {
          padding: 0 10.2489019034vw 0;
          display: flex;
          justify-content: space-between;
          flex-wrap: wrap; }
          main article .contents--inner.fifth .contents--inner--env--box {
            width: 24.0117130307vw;
            border-top: 0.1464128843vw solid #000;
            margin-top: 3.6603221083vw; }
            main article .contents--inner.fifth .contents--inner--env--box.half {
              width: 37.7745241581vw; }
            main article .contents--inner.fifth .contents--inner--env--box dl {
              display: flex; }
              main article .contents--inner.fifth .contents--inner--env--box dl dt {
                width: 4.6852122987vw; }
              main article .contents--inner.fifth .contents--inner--env--box dl dd {
                font-family: 'Zen Kaku Gothic New', serif;
                font-weight: 900;
                font-size: 1.9033674963vw;
                padding: 1.317715959vw 0 1.317715959vw 1.0980966325vw;
                letter-spacing: -0.02em; }
            main article .contents--inner.fifth .contents--inner--env--box .txt {
              font-family: 'Zen Kaku Gothic New', serif;
              font-weight: 900;
              font-size: 1.1713030747vw;
              line-height: 2; }
      main article .contents--inner.interview {
        background: url("../images/back_2.jpg") repeat center center/100%;
        padding: 4.39238653vw 0 0; }
        main article .contents--inner.interview .contents--inner--cont {
          padding: 0vw 0vw 0vw; }
          main article .contents--inner.interview .contents--inner--cont h3 {
            text-align: center;
            font-family: "Rubik Mono One", serif;
            font-size: 13.4699853587vw;
            line-height: 1;
            color: #fff;
            font-style: normal;
            letter-spacing: -0.04em; }
            main article .contents--inner.interview .contents--inner--cont h3 span {
              display: block;
              font-family: 'Zen Kaku Gothic New', serif;
              font-weight: 900;
              font-size: 3.2210834553vw;
              text-align: center;
              position: relative;
              top: -4.39238653vw;
              color: #000;
              letter-spacing: 0.06em;
              line-height: 1; }
        main article .contents--inner.interview .contents--inner--int {
          margin-top: 2.196193265vw;
          padding: 0 10.2489019034vw 7.3206442167vw; }
          main article .contents--inner.interview .contents--inner--int .upper {
            position: relative; }
            main article .contents--inner.interview .contents--inner--int .upper .nameobj {
              font-family: "Rubik Mono One", serif;
              position: absolute;
              color: #F3D100;
              font-size: 6.2225475842vw;
              line-height: 1;
              bottom: -1.2445095168vw;
              letter-spacing: -0.04em; }
              main article .contents--inner.interview .contents--inner--int .upper .nameobj.front {
                left: 0; }
              main article .contents--inner.interview .contents--inner--int .upper .nameobj.last {
                right: 0; }
            main article .contents--inner.interview .contents--inner--int .upper--flex {
              display: flex;
              justify-content: space-between;
              align-items: center; }
              main article .contents--inner.interview .contents--inner--int .upper--flex h5 {
                font-family: 'Zen Kaku Gothic New', serif;
                font-weight: 900;
                width: 27.8184480234vw;
                font-size: 3.2210834553vw;
                letter-spacing: -0.06em;
                line-height: 1.2; }
                main article .contents--inner.interview .contents--inner--int .upper--flex h5 span {
                  letter-spacing: -0.5em; }
              main article .contents--inner.interview .contents--inner--int .upper--flex figure {
                width: 21.9619326501vw;
                position: relative;
                z-index: 2; }
              main article .contents--inner.interview .contents--inner--int .upper--flex .profile {
                width: 29.2825768668vw;
                border-top: 0.0732064422vw solid #000;
                padding: 1.4641288433vw 0; }
                main article .contents--inner.interview .contents--inner--int .upper--flex .profile dt {
                  font-family: 'Zen Kaku Gothic New', serif;
                  font-weight: 900;
                  font-size: 1.1713030747vw;
                  margin-bottom: 1.0980966325vw; }
                  main article .contents--inner.interview .contents--inner--int .upper--flex .profile dt span {
                    display: inline-block;
                    margin-left: 0.7320644217vw;
                    padding-left: 0.7320644217vw;
                    font-size: 1.0248901903vw;
                    border-left: 0.0732064422vw solid #000; }
                main article .contents--inner.interview .contents--inner--int .upper--flex .profile dd {
                  font-size: 1.0248901903vw;
                  font-weight: 400;
                  line-height: 2; }
          main article .contents--inner.interview .contents--inner--int .under {
            border: 0.2928257687vw solid #000;
            padding: 1.1713030747vw 5.8565153734vw 4.6852122987vw;
            position: relative;
            z-index: 2; }
            main article .contents--inner.interview .contents--inner--int .under .box {
              margin-top: 3.513909224vw; }
              main article .contents--inner.interview .contents--inner--int .under .box h6 {
                font-family: 'Zen Kaku Gothic New', serif;
                font-weight: 900;
                font-size: 1.9033674963vw;
                margin-bottom: 1.756954612vw;
                position: relative; }
                main article .contents--inner.interview .contents--inner--int .under .box h6:after {
                  position: absolute;
                  content: "";
                  width: 70%;
                  border-top: 0.0732064422vw solid #000;
                  top: 50%;
                  right: 0; }
                main article .contents--inner.interview .contents--inner--int .under .box h6 span {
                  position: relative;
                  z-index: 2;
                  padding-right: 1.4641288433vw; }
                main article .contents--inner.interview .contents--inner--int .under .box h6.wid_1:after {
                  width: 73%; }
                main article .contents--inner.interview .contents--inner--int .under .box h6.wid_2:after {
                  width: 66%; }
                main article .contents--inner.interview .contents--inner--int .under .box h6.wid_3:after {
                  width: 62%; }
                main article .contents--inner.interview .contents--inner--int .under .box h6.wid_4:after {
                  width: 54%; }
                main article .contents--inner.interview .contents--inner--int .under .box h6.wid_5:after {
                  width: 56%; }
              main article .contents--inner.interview .contents--inner--int .under .box .txt {
                font-family: 'Zen Kaku Gothic New', serif;
                font-weight: 900;
                font-size: 1.1713030747vw;
                line-height: 2; }
  main footer {
    background: url("../images/back_2.jpg") repeat center center/100%;
    padding: 9.5168374817vw 0 0;
    position: relative; }
    main footer .back {
      position: absolute;
      width: 20.7906295754vw;
      left: 50%;
      margin-left: -10.3953147877vw;
      top: 0; }
    main footer .footer--txt {
      position: relative;
      z-index: 2;
      text-align: center;
      font-size: 1.1713030747vw;
      padding-bottom: 11.7130307467vw; }
      main footer .footer--txt .logo {
        width: 10.102489019vw;
        margin: 0 auto; }
      main footer .footer--txt .txt {
        font-family: 'Zen Kaku Gothic New', serif;
        font-weight: 900;
        line-height: 2;
        padding: 2.3426061493vw 0 1.756954612vw; }
      main footer .footer--txt .link a {
        display: block;
        color: #000;
        text-decoration: underline; }
      main footer .footer--txt .linelink {
        width: 27.8184480234vw;
        margin: 2.9282576867vw auto 0; }
        main footer .footer--txt .linelink a {
          background: #000;
          color: #fff;
          border-radius: 2.9282576867vw; }
          main footer .footer--txt .linelink a dl {
            display: flex;
            justify-content: center;
            align-items: center;
            padding: 0.7320644217vw 0; }
          main footer .footer--txt .linelink a dt {
            width: 2.9282576867vw;
            margin-right: 0.7320644217vw; }
          main footer .footer--txt .linelink a dd {
            font-family: 'Zen Kaku Gothic New', serif;
            font-weight: 900;
            width: 19.0336749634vw;
            font-size: 1.1713030747vw; }
      main footer .footer--txt .address {
        text-align: center; }
        main footer .footer--txt .address li {
          font-family: 'Zen Kaku Gothic New', serif;
          font-weight: 900;
          margin-top: 1.756954612vw; }
          main footer .footer--txt .address li span {
            display: inline-block;
            width: 1.0980966325vw;
            top: 0.2928257687vw;
            margin-right: 0.7320644217vw;
            position: relative; }
      main footer .footer--txt address {
        font-size: 0.878477306vw;
        font-weight: 400;
        padding-top: 2.7818448023vw; }
      main footer .footer--txt .lastimg {
        position: absolute;
        width: 75.4026354319vw;
        left: 50%;
        margin-left: -37.701317716vw;
        bottom: -2.196193265vw; }

@media screen and (max-width: 767px) {
  main article .kv {
    height: auto; }
    main article .kv:after {
      content: none; }
    main article .kv .logo {
      position: relative;
      width: 20vw;
      margin: 0vw auto 0;
      padding-top: 8vw;
      height: auto;
      left: auto;
      top: auto; }
    main article .kv .kvimg {
      position: relative;
      width: 100vw;
      height: auto;
      left: auto;
      bottom: auto; }
    main article .kv--inner {
      width: 100vw;
      height: auto;
      margin: 0 auto;
      padding: 19.7333333333vw 0 19.7333333333vw 11.7333333333vw;
      position: relative; }
      main article .kv--inner:before {
        width: 33.9393939394vw;
        height: 25.4545454545vw;
        right: 11.2vw;
        top: 20vw; }
      main article .kv--inner:after {
        width: 42.8571428571vw;
        height: 7.8095238095vw;
        left: 11.7333333333vw;
        top: 45.3333333333vw; }
      main article .kv--inner .leadtxt {
        font-size: 4.2666666667vw; }
      main article .kv--inner h2 {
        font-size: 11.7333333333vw;
        margin-top: 1.3333333333vw;
        letter-spacing: -0.02em; }
        main article .kv--inner h2 span {
          font-size: 14.9333333333vw;
          left: -5.3333333333vw;
          margin-right: -10.6666666667vw; }
      main article .kv--inner h3 {
        font-size: 3.7333333333vw;
        margin-top: 2.6666666667vw; }
  main article .anchor {
    padding: 2.6666666667vw 6.4vw 8vw;
    border-top: 1.0666666667vw solid #000;
    border-bottom: 1.0666666667vw solid #000; }
    main article .anchor ul {
      flex-wrap: wrap; }
      main article .anchor ul li {
        width: 87.2vw;
        font-size: 3.7333333333vw;
        margin: 5.3333333333vw auto 0; }
        main article .anchor ul li a {
          border-radius: 1.0666666667vw;
          font-size: 3.7333333333vw;
          padding: 2.6666666667vw 10.6666666667vw 2.6666666667vw 5.3333333333vw; }
          main article .anchor ul li a:after {
            width: 2.1333333333vw;
            height: 3.2vw;
            right: 5.3333333333vw;
            margin-top: -1.6vw; }
  main article .contents--inner {
    position: relative; }
    main article .contents--inner .ttl {
      font-size: 5.8666666667vw;
      text-align: center; }
      main article .contents--inner .ttl span {
        padding: 1.3333333333vw 2.6666666667vw; }
        main article .contents--inner .ttl span:before {
          position: absolute;
          content: "";
          width: 1.0666666667vw;
          height: 100%;
          background: #000;
          left: -2.1333333333vw;
          top: 0; }
    main article .contents--inner.second .contents--inner--box {
      padding: 58.6666666667vw 0 0; }
      main article .contents--inner.second .contents--inner--box h3 {
        text-align: center;
        font-size: 7.4666666667vw;
        padding: 6.4vw;
        letter-spacing: -0.04em; }
      main article .contents--inner.second .contents--inner--box h4 {
        width: 100%;
        font-size: 3.7333333333vw;
        letter-spacing: -0.02em;
        padding: 0 6.4vw 13.3333333333vw; }
        main article .contents--inner.second .contents--inner--box h4 span {
          font-size: 3.2vw;
          padding-top: 3.7333333333vw; }
      main article .contents--inner.second .contents--inner--box--flex {
        border-radius: 0vw;
        margin-top: 0vw;
        flex-wrap: wrap; }
        main article .contents--inner.second .contents--inner--box--flex .right {
          width: 105%;
          margin-left: -2.5%; }
        main article .contents--inner.second .contents--inner--box--flex div {
          width: 100%;
          padding: 6.4vw; }
          main article .contents--inner.second .contents--inner--box--flex div h5 {
            font-size: 4.2666666667vw;
            margin-bottom: 4.2666666667vw; }
          main article .contents--inner.second .contents--inner--box--flex div h6 {
            font-size: 3.7333333333vw; }
    main article .contents--inner.third .contents--inner--box {
      padding: 37.3333333333vw 6.4vw 24vw; }
      main article .contents--inner.third .contents--inner--box .flexs {
        display: flex;
        justify-content: space-between;
        flex-wrap: wrap;
        margin-top: 5.3333333333vw; }
      main article .contents--inner.third .contents--inner--box h3 {
        width: 100%;
        font-size: 7.4666666667vw;
        padding-top: 5.3333333333vw;
        text-align: center; }
        main article .contents--inner.third .contents--inner--box h3 span {
          width: 62.4vw;
          padding-top: 4vw;
          font-size: 3.7333333333vw;
          margin: 0 13.3333333333vw 0 auto; }
          main article .contents--inner.third .contents--inner--box h3 span:before {
            width: 26.6666666667vw;
            border-top: 0.2666666667vw solid #000;
            margin-top: 2.1333333333vw; }
      main article .contents--inner.third .contents--inner--box h4 {
        width: 100%;
        font-size: 3.7333333333vw;
        letter-spacing: -0.02em;
        margin-top: 8vw; }
    main article .contents--inner.forth .contents--inner--cont {
      padding: 0vw 6.4vw 24vw;
      background: #F3D100;
      position: relative;
      display: flex;
      align-items: flex-start;
      flex-wrap: wrap; }
      main article .contents--inner.forth .contents--inner--cont figure {
        width: 87.2vw;
        top: -10.6666666667vw;
        border-radius: 2.6666666667vw;
        margin-bottom: -10.6666666667vw;
        overflow: hidden;
        position: relative;
        z-index: 2; }
      main article .contents--inner.forth .contents--inner--cont h5 {
        width: 54.1333333333vw;
        margin: 6.4vw 4vw 0 0vw;
        font-size: 3.7333333333vw; }
      main article .contents--inner.forth .contents--inner--cont h4 {
        width: 26.6666666667vw;
        -ms-writing-mode: tb-rl;
        writing-mode: vertical-rl;
        font-size: 7.4666666667vw;
        margin-right: 0vw;
        margin-top: 6.4vw; }
      main article .contents--inner.forth .contents--inner--cont .obj {
        width: 81.6vw;
        bottom: -2.6666666667vw;
        left: 50%;
        margin-left: -40.8vw; }
    main article .contents--inner.forth .contents--inner--section {
      display: flex;
      justify-content: space-between;
      align-items: center;
      flex-wrap: wrap;
      flex-direction: column-reverse;
      border-top: 1.0666666667vw solid #000; }
      main article .contents--inner.forth .contents--inner--section:after {
        position: absolute;
        content: "";
        width: 100%;
        height: 74.9333333333vw;
        background: url("../images/back.jpg") no-repeat center center/cover;
        right: 0;
        top: 0;
        z-index: -1; }
      main article .contents--inner.forth .contents--inner--section .imgs {
        width: 100%; }
      main article .contents--inner.forth .contents--inner--section .txtarea {
        width: 100%;
        padding: 13.3333333333vw 6.4vw; }
        main article .contents--inner.forth .contents--inner--section .txtarea:after {
          width: 5.3333333333vw;
          height: 27.2vw;
          right: 6.4vw;
          top: 13.3333333333vw; }
        main article .contents--inner.forth .contents--inner--section .txtarea h6 {
          font-size: 7.4666666667vw;
          margin-bottom: 6.6666666667vw; }
        main article .contents--inner.forth .contents--inner--section .txtarea .txt {
          font-size: 3.7333333333vw; }
        main article .contents--inner.forth .contents--inner--section .txtarea.back_2:after {
          right: 6.4vw; }
      main article .contents--inner.forth .contents--inner--section.rev {
        flex-direction: column-reverse; }
        main article .contents--inner.forth .contents--inner--section.rev:after {
          right: auto;
          left: 0;
          height: 70.9333333333vw; }
        main article .contents--inner.forth .contents--inner--section.rev .txtarea {
          padding-left: 6.4vw;
          padding-right: 6.4vw; }
    main article .contents--inner.fifth {
      padding-bottom: 7.3206442167vw; }
      main article .contents--inner.fifth .contents--inner--cont {
        position: relative; }
        main article .contents--inner.fifth .contents--inner--cont .img {
          position: inherit;
          width: 100%;
          height: auto;
          left: auto;
          top: auto; }
        main article .contents--inner.fifth .contents--inner--cont div {
          padding: 0vw 0vw 0vw;
          color: #000;
          text-align: center; }
          main article .contents--inner.fifth .contents--inner--cont div h3 {
            font-size: 7.4666666667vw;
            margin-bottom: 4vw; }
          main article .contents--inner.fifth .contents--inner--cont div h4 {
            font-size: 3.7333333333vw; }
      main article .contents--inner.fifth .contents--inner--env {
        padding: 0 6.4vw 8vw; }
        main article .contents--inner.fifth .contents--inner--env--box {
          width: 100%;
          border-top: 0.1464128843vw solid #000;
          margin-top: 9.6vw; }
          main article .contents--inner.fifth .contents--inner--env--box.half {
            width: 100%; }
          main article .contents--inner.fifth .contents--inner--env--box dl {
            display: flex; }
            main article .contents--inner.fifth .contents--inner--env--box dl dt {
              width: 12.8vw; }
            main article .contents--inner.fifth .contents--inner--env--box dl dd {
              font-size: 5.3333333333vw;
              padding: 4.2666666667vw 0 4.2666666667vw 4vw;
              letter-spacing: -0.04em; }
          main article .contents--inner.fifth .contents--inner--env--box .txt {
            font-size: 3.7333333333vw; }
    main article .contents--inner.interview {
      padding: 0vw 0 10.6666666667vw; }
      main article .contents--inner.interview .contents--inner--cont {
        padding: 0vw 0vw 0vw; }
        main article .contents--inner.interview .contents--inner--cont h3 {
          font-size: 11.4666666667vw; }
          main article .contents--inner.interview .contents--inner--cont h3 span {
            font-size: 6.4vw;
            text-align: center;
            top: -4vw;
            position: relative;
            display: block;
            position: relative;
            margin-top: 0vw; }
      main article .contents--inner.interview .contents--inner--int {
        margin-top: 4.6852122987vw;
        padding: 0 6.4vw 7.3206442167vw; }
        main article .contents--inner.interview .contents--inner--int .upper {
          position: relative; }
          main article .contents--inner.interview .contents--inner--int .upper .nameobj {
            font-size: 13.3333333333vw;
            line-height: 1;
            bottom: 24vw;
            transform: rotate(90deg); }
            main article .contents--inner.interview .contents--inner--int .upper .nameobj.front {
              left: -29.3333333333vw; }
              main article .contents--inner.interview .contents--inner--int .upper .nameobj.front.f_2s {
                left: -24vw; }
              main article .contents--inner.interview .contents--inner--int .upper .nameobj.front.f_3s {
                left: -24vw;
                bottom: 29.3333333333vw; }
            main article .contents--inner.interview .contents--inner--int .upper .nameobj.last {
              right: -29.3333333333vw; }
              main article .contents--inner.interview .contents--inner--int .upper .nameobj.last.f_4s {
                right: -33.3333333333vw;
                bottom: 29.3333333333vw; }
          main article .contents--inner.interview .contents--inner--int .upper--flex {
            display: flex;
            justify-content: space-between;
            align-items: center;
            flex-wrap: wrap; }
            main article .contents--inner.interview .contents--inner--int .upper--flex h5 {
              order: 1;
              width: 100%;
              font-size: 7.4666666667vw;
              letter-spacing: -0.06em;
              text-align: center;
              margin-bottom: 5.3333333333vw;
              line-height: 1.4; }
              main article .contents--inner.interview .contents--inner--int .upper--flex h5 span {
                letter-spacing: -0.3em; }
            main article .contents--inner.interview .contents--inner--int .upper--flex figure {
              order: 3;
              width: 53.8666666667vw;
              margin: 4vw 13.3333333333vw 0 16vw; }
            main article .contents--inner.interview .contents--inner--int .upper--flex .profile {
              order: 2;
              width: 100%;
              border-top: 0.5333333333vw solid #000;
              padding: 5.3333333333vw 0 0;
              text-align: center; }
              main article .contents--inner.interview .contents--inner--int .upper--flex .profile dt {
                font-size: 3.7333333333vw;
                margin-bottom: 4vw; }
                main article .contents--inner.interview .contents--inner--int .upper--flex .profile dt span {
                  display: inline-block;
                  margin-left: 2.6666666667vw;
                  padding-left: 2.6666666667vw;
                  font-size: 3.2vw;
                  border-left: 0.2666666667vw solid #000; }
              main article .contents--inner.interview .contents--inner--int .upper--flex .profile dd {
                font-size: 3.2vw;
                letter-spacing: -0.04em; }
        main article .contents--inner.interview .contents--inner--int .under {
          border: 1.0666666667vw solid #000;
          padding: 0vw 4.2666666667vw 8vw;
          position: relative;
          z-index: 2; }
          main article .contents--inner.interview .contents--inner--int .under .box {
            margin-top: 8vw; }
            main article .contents--inner.interview .contents--inner--int .under .box h6 {
              font-size: 4.8vw;
              margin-bottom: 3.2vw;
              letter-spacing: -0.04em; }
              main article .contents--inner.interview .contents--inner--int .under .box h6.wid_1:after {
                width: 43%; }
              main article .contents--inner.interview .contents--inner--int .under .box h6.wid_2:after {
                width: 29%; }
              main article .contents--inner.interview .contents--inner--int .under .box h6.wid_3:after {
                width: 20%; }
              main article .contents--inner.interview .contents--inner--int .under .box h6.wid_4:after {
                width: 5%; }
              main article .contents--inner.interview .contents--inner--int .under .box h6.wid_5:after {
                width: 5%; }
            main article .contents--inner.interview .contents--inner--int .under .box .txt {
              font-size: 3.7333333333vw;
              line-height: 2; }
  main footer {
    padding: 32vw 0 0; }
    main footer .back {
      width: 75.7333333333vw;
      margin-left: -37.8666666667vw;
      bottom: 0; }
    main footer .footer--txt {
      position: relative;
      z-index: 2;
      text-align: center;
      font-size: 3.7333333333vw;
      padding-bottom: 42.6666666667vw; }
      main footer .footer--txt .logo {
        width: 36.8vw;
        margin: 0 auto; }
      main footer .footer--txt .txt {
        line-height: 2;
        padding: 5.3333333333vw 0 5.3333333333vw; }
      main footer .footer--txt .linelink {
        width: 87.2vw;
        margin: 8vw auto 0; }
        main footer .footer--txt .linelink a {
          border-radius: 10.6666666667vw; }
          main footer .footer--txt .linelink a dl {
            padding: 2.6666666667vw 0; }
          main footer .footer--txt .linelink a dt {
            width: 10.6666666667vw;
            margin-right: 2.6666666667vw; }
          main footer .footer--txt .linelink a dd {
            width: 61.3333333333vw;
            font-size: 3.4666666667vw; }
      main footer .footer--txt .address {
        text-align: center;
        padding-top: 2.6666666667vw; }
        main footer .footer--txt .address li {
          margin-top: 4.2666666667vw; }
          main footer .footer--txt .address li span {
            display: inline-block;
            width: 4vw;
            top: 1.0666666667vw;
            margin-right: 2.6666666667vw;
            position: relative; }
      main footer .footer--txt address {
        font-size: 3.2vw;
        padding-top: 10.1333333333vw; }
      main footer .footer--txt .lastimg {
        position: absolute;
        width: 80vw;
        left: 50%;
        margin-left: -40vw;
        bottom: -2.196193265vw; } }
/* =========================================================
 * 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%; }

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: 'Zen Kaku Gothic New', serif;
  font-weight: 900;
  /*明朝体設定*/
  line-height: 1.6;
  color: #000000;
  background: #fff;
  font-weight: 900; }

a {
  width: 100%;
  height: auto;
  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*/
.zenkaku {
  font-family: 'Zen Kaku Gothic New', serif; }

.rubik-mono-one-regular {
  font-family: "Rubik Mono One", 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;
  transform: translate(0, 0); }

/* =========================================================
 * scrollbar　　   /*フスクロールバー
========================================================= */
::-webkit-scrollbar {
  display: none;
  -webkit-appearance: none; }
