@charset "UTF-8";
@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=Montserrat:wght@100..900&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Shippori+Mincho:wght@400;500;600;700;800&display=swap");
img {
  width: 100%; }

.modalarea {
  display: none; }

footer #mqImg {
  z-index: -2; }

.modalcontouter {
  position: relative;
  overflow: auto;
  padding-top: 40px; }
  .modalcontouter .closebtn {
    width: 32px;
    height: 32px;
    position: absolute;
    right: 0;
    top: -0px; }
  .modalcontouter .modalcontinner {
    width: 800px;
    background: #fff;
    padding: 20px 40px 40px;
    position: relative;
    letter-spacing: 0.08em;
    border-radius: 20px; }
    .modalcontouter .modalcontinner .modallead {
      color: #603813;
      font-family: "Shippori Mincho", serif;
      font-weight: 500;
      text-align: center;
      font-size: 26px;
      line-height: 1.4;
      padding: 30px 0; }
      .modalcontouter .modalcontinner .modallead span {
        display: block;
        width: 80px;
        margin: 0 auto; }
      .modalcontouter .modalcontinner .modallead small {
        display: block;
        font-size: 15px; }
    .modalcontouter .modalcontinner .flexbox {
      display: flex;
      justify-content: space-between;
      align-items: center;
      flex-wrap: wrap; }
      .modalcontouter .modalcontinner .flexbox figure {
        width: 350px; }
      .modalcontouter .modalcontinner .flexbox h4 {
        width: 350px; }
        .modalcontouter .modalcontinner .flexbox h4 strong {
          display: block;
          color: #603813;
          font-size: 16px;
          font-weight: 700;
          margin-bottom: 15px; }

#contents p {
  padding-bottom: 0;
  line-height: 1.6;
  margin: 0;
  padding: 0; }

#contents .kyojo {
  overflow: hidden;
  max-width: 1030px;
  margin: 0 auto;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  font-size: 16px;
  letter-spacing: 0.08em;
  position: relative;
  padding-bottom: 0; }
  #contents .kyojo .logok {
    background: #fff;
    padding: 20px 0; }
    #contents .kyojo .logok img {
      display: block;
      width: 240px;
      margin: 0 auto; }
@keyframes scrollBounce {
  0%, 100% {
    transform: translateY(0); }
  50% {
    transform: translateY(15px); } }
  #contents .kyojo .kv {
    width: 100%;
    position: relative;
    background: linear-gradient(to bottom, #a0deff, #51819d); }
    #contents .kyojo .kv:after {
      position: absolute;
      content: url("../img/scroll.svg");
      width: 212px;
      height: 88px;
      left: 50%;
      margin-left: -106px;
      bottom: -44px;
      z-index: 2;
      animation: scrollBounce 2s ease-in-out infinite; }
    #contents .kyojo .kv .ttltop {
      font-family: "Shippori Mincho", serif;
      font-size: 44px;
      color: #1957b1;
      line-height: 1;
      text-align: center;
      padding-top: 56px; }
      #contents .kyojo .kv .ttltop span {
        position: relative; }
        #contents .kyojo .kv .ttltop span:before {
          position: absolute;
          content: "";
          width: 99%;
          height: 48px;
          top: 10px;
          left: -1%;
          background: #f68a8b;
          z-index: 0; }
        #contents .kyojo .kv .ttltop span strong {
          font-weight: 700;
          position: relative;
          z-index: 2; }
    #contents .kyojo .kv .leadtop {
      font-family: "Shippori Mincho", serif;
      font-weight: 700;
      font-size: 18px;
      line-height: 1.9;
      z-index: 2;
      color: #fff;
      text-align: center;
      margin-top: 26px; }
    #contents .kyojo .kv .leadtxt {
      font-family: "Shippori Mincho", serif;
      font-weight: 700;
      font-size: 18px;
      line-height: 2;
      z-index: 2.2;
      color: #fff;
      text-align: center;
      margin-top: 28px; }
      #contents .kyojo .kv .leadtxt strong {
        font-weight: 700;
        display: inline;
        background: #0684de;
        padding: 0em 5px 0.1em;
        margin: 0 3px;
        -webkit-box-decoration-break: clone;
        box-decoration-break: clone; }
    #contents .kyojo .kv figure {
      width: 586px;
      margin: 0 auto;
      margin-top: 40px; }
      #contents .kyojo .kv figure img {
        display: block;
        width: 100%;
        height: auto; }
      #contents .kyojo .kv figure #earth-canvas {
        opacity: 0.3;
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        margin-top: 1px;
        margin-left: -1px;
        width: 467px;
        height: 467px;
        z-index: 2;
        cursor: grab;
        filter: drop-shadow(0 0 30px rgba(255, 255, 255, 0.5)); }
        #contents .kyojo .kv figure #earth-canvas:active {
          cursor: grabbing; }
        #contents .kyojo .kv figure #earth-canvas canvas {
          display: block;
          width: 100% !important;
          height: 100% !important; }
  #contents .kyojo .case {
    padding: 0; }
    #contents .kyojo .case--box {
      padding: 10px 0 30px;
      position: relative; }
      #contents .kyojo .case--box:after {
        position: absolute;
        content: url("../img/scroll.svg");
        width: 212px;
        height: 88px;
        left: 50%;
        margin-left: -106px;
        bottom: -44px;
        z-index: 2;
        animation: scrollBounce 2s ease-in-out infinite; }
      #contents .kyojo .case--box .num {
        text-align: center;
        font-family: 'Montserrat', serif;
        font-weight: 500;
        font-size: 48px;
        color: #fff; }
        #contents .kyojo .case--box .num strong {
          font-family: 'Montserrat', serif;
          display: inline;
          font-weight: 500;
          font-size: 80px;
          margin-left: 20px; }
      #contents .kyojo .case--box .lead {
        font-family: "Shippori Mincho", serif;
        font-size: 32px;
        color: #1957b1;
        line-height: 1.6;
        text-align: center; }
        #contents .kyojo .case--box .lead span {
          position: relative; }
          #contents .kyojo .case--box .lead span:before {
            position: absolute;
            content: "";
            width: 101%;
            height: 40px;
            top: 5px;
            left: 0%;
            background: #f68a8b;
            z-index: 0; }
          #contents .kyojo .case--box .lead span strong {
            font-weight: 700;
            position: relative;
            z-index: 2; }
      #contents .kyojo .case--box figure {
        width: 386px;
        margin: 15px auto 0; }
      #contents .kyojo .case--box .undertxt {
        font-family: 'Noto Sans JP', sans-serif;
        font-weight: 500;
        color: #fff;
        text-align: center;
        font-size: 14px;
        line-height: 1.8;
        padding: 20px 0; }
    #contents .kyojo .case--box {
      background: linear-gradient(to bottom, #a0deff, #51819d); }
      #contents .kyojo .case--box.last:after {
        content: none; }
  #contents .kyojo .which {
    margin-top: 10px;
    padding-bottom: 0;
    background: linear-gradient(to right, #daf2fa 0%, #daf2fa 50%, #feedee 50%, #feedee 100%); }
    #contents .kyojo .which--topttl {
      background: #b864a3;
      color: #fff;
      font-family: "Shippori Mincho", serif;
      font-weight: 600;
      font-size: 38px;
      line-height: 1.6;
      text-align: center;
      padding: 3.4951456311vw 0;
      position: relative; }
      #contents .kyojo .which--topttl small {
        display: inline;
        font-weight: 700;
        font-size: 32px; }
      #contents .kyojo .which--topttl:after {
        position: absolute;
        content: "";
        background: url("../img/tri.svg") no-repeat center center/cover;
        width: 128px;
        height: 46px;
        left: 50%;
        margin-left: calc(-128px/2);
        bottom: -44px; }
    #contents .kyojo .which--lead {
      color: #b864a3;
      font-family: "Shippori Mincho", serif;
      font-weight: 500;
      font-size: 24px;
      text-align: center;
      margin: 100px auto 40px; }
    #contents .kyojo .which--ttl {
      color: #b864a3;
      font-family: "Shippori Mincho", serif;
      font-weight: 600;
      font-size: 38px;
      line-height: 1.4;
      text-align: center;
      position: relative; }
      #contents .kyojo .which--ttl small {
        display: inline;
        font-weight: 700;
        font-size: 32px; }
    #contents .kyojo .which--tpimg {
      display: flex;
      justify-content: center;
      align-items: center;
      margin-top: 40px; }
      #contents .kyojo .which--tpimg figure {
        width: 780px;
        margin: 0 20px; }
      #contents .kyojo .which--tpimg .lead {
        writing-mode: vertical-rl;
        text-orientation: mixed;
        font-family: "Shippori Mincho", serif;
        font-size: 32px;
        font-weight: 700;
        letter-spacing: 0.2em;
        line-height: 1; }
        #contents .kyojo .which--tpimg .lead.cl_1 {
          color: #06a5de; }
        #contents .kyojo .which--tpimg .lead.cl_2 {
          color: #f68a8b; }
    #contents .kyojo .which--case {
      position: relative;
      margin-top: 80px;
      padding: 0; }
      #contents .kyojo .which--case:before, #contents .kyojo .which--case:after {
        position: absolute;
        content: "";
        width: 50%;
        height: 100%;
        top: 0; }
      #contents .kyojo .which--case:before {
        left: 0;
        background: linear-gradient(to right, #8099cc, #9cb0d7); }
      #contents .kyojo .which--case:after {
        right: 0;
        background: linear-gradient(to left, #bf73ac, #cd92be); }
      #contents .kyojo .which--case .num {
        text-align: center;
        font-family: 'Montserrat', serif;
        font-weight: 500;
        font-size: 48px;
        color: #fff;
        position: relative;
        z-index: 2;
        padding-top: 20px;
        margin-bottom: -30px; }
        #contents .kyojo .which--case .num strong {
          display: inline;
          font-weight: 500;
          font-size: 80px;
          margin-left: 20px; }
      #contents .kyojo .which--case--box {
        display: flex;
        justify-content: space-around;
        position: relative;
        z-index: 2;
        border-bottom: 1px solid #fff;
        padding: 0 0 45px;
        margin: 0 28px; }
        #contents .kyojo .which--case--box:last-child {
          padding-bottom: 0; }
        #contents .kyojo .which--case--box .leadtxt {
          font-family: "Shippori Mincho", serif;
          font-weight: 700;
          font-size: 28px;
          letter-spacing: -0.01em;
          color: #fff;
          line-height: 1.6;
          padding-top: 10px; }
        #contents .kyojo .which--case--box .txts {
          font-family: 'Noto Sans JP', sans-serif;
          font-weight: 500;
          color: #fff;
          text-align: justify;
          font-size: 14px;
          line-height: 1.8;
          padding: 20px 0; }
        #contents .kyojo .which--case--box .keyw {
          display: flex;
          justify-content: space-between;
          align-items: center;
          box-sizing: border-box;
          background: #fff;
          border-radius: 10px; }
          #contents .kyojo .which--case--box .keyw .ttl {
            width: 150px;
            text-align: center;
            font-family: 'Montserrat', serif;
            font-weight: 700;
            font-size: 20px;
            color: #fff;
            padding: 45px 0; }
          #contents .kyojo .which--case--box .keyw .kybox {
            width: 280px;
            display: flex;
            flex-wrap: wrap;
            padding: 20px; }
            #contents .kyojo .which--case--box .keyw .kybox li {
              margin-right: 10px;
              font-size: 14px;
              font-weight: 500;
              padding-left: 18px;
              position: relative; }
        #contents .kyojo .which--case--box .leftbox {
          width: 430px; }
          #contents .kyojo .which--case--box .leftbox figure {
            width: 372px;
            position: relative;
            margin: 0 0 0 auto; }
          #contents .kyojo .which--case--box .leftbox .keyw {
            border: 4px solid #728ec6; }
            #contents .kyojo .which--case--box .leftbox .keyw .ttl {
              background: #728ec6;
              border-radius: 5px; }
            #contents .kyojo .which--case--box .leftbox .keyw li:before {
              position: absolute;
              content: "●";
              color: #728ec6;
              left: 0; }
        #contents .kyojo .which--case--box .rightbox {
          width: 430px; }
          #contents .kyojo .which--case--box .rightbox figure {
            width: 372px;
            position: relative;
            margin: 0 auto 0 0; }
          #contents .kyojo .which--case--box .rightbox .leadtxt {
            text-align: right; }
          #contents .kyojo .which--case--box .rightbox .keyw {
            border: 4px solid #b864a3; }
            #contents .kyojo .which--case--box .rightbox .keyw .ttl {
              background: #b864a3;
              border-radius: 5px; }
            #contents .kyojo .which--case--box .rightbox .keyw li:before {
              position: absolute;
              content: "●";
              color: #b864a3;
              left: 0; }
        #contents .kyojo .which--case--box .middle {
          position: absolute;
          width: 386px;
          left: 50%;
          margin-left: -193px;
          top: 30px;
          z-index: 3; }
  #contents .kyojo .contents {
    margin-top: 20px;
    padding-bottom: 0; }
    #contents .kyojo .contents--second {
      margin-top: 70px; }
      #contents .kyojo .contents--second--top {
        position: relative;
        color: #fff;
        text-align: center;
        padding: 65px 0 80px; }
        #contents .kyojo .contents--second--top:before, #contents .kyojo .contents--second--top:after {
          position: absolute;
          content: "";
          width: 50%;
          height: 100%;
          z-index: -1;
          mix-blend-mode: multiply;
          opacity: 0.7;
          top: 0; }
        #contents .kyojo .contents--second--top:before {
          left: 0;
          background: #83cef3; }
        #contents .kyojo .contents--second--top:after {
          right: 0;
          background: #f58b8c; }
        #contents .kyojo .contents--second--top .lead {
          font-family: "Shippori Mincho", serif;
          font-weight: 500;
          font-size: 36px;
          line-height: 1.6; }
        #contents .kyojo .contents--second--top .txt {
          font-family: "Shippori Mincho", serif;
          font-weight: 700;
          font-size: 16px;
          line-height: 1.8;
          margin-top: 30px; }
      #contents .kyojo .contents--second--cont {
        width: 900px;
        margin: 80px auto 0;
        background: #fff;
        border-radius: 20px;
        box-sizing: border-box;
        border: 2px solid #06a5de;
        padding: 0 45px 45px;
        color: #1e2945;
        box-sizing: border-box;
        background: #f2fafd; }
        #contents .kyojo .contents--second--cont .leadbox {
          margin-bottom: 50px; }
          #contents .kyojo .contents--second--cont .leadbox .topttl {
            text-align: center;
            width: 550px;
            background: #06a5de;
            margin: -22px auto 0;
            color: #fff;
            font-weight: 700;
            font-size: 18px;
            padding: 8px 0;
            position: relative; }
            #contents .kyojo .contents--second--cont .leadbox .topttl:after {
              position: absolute;
              content: "";
              width: 0px;
              height: 0px;
              border-style: solid;
              border-right: 20px solid transparent;
              border-left: 20px solid transparent;
              border-top: 20px solid #06a5de;
              border-bottom: 0;
              bottom: -10px;
              left: 50%;
              margin-left: -15px; }
          #contents .kyojo .contents--second--cont .leadbox .conttl {
            text-align: center;
            font-family: "Shippori Mincho", serif;
            font-weight: 700;
            font-size: 49px;
            color: #06a5de; }
            #contents .kyojo .contents--second--cont .leadbox .conttl span {
              display: block;
              width: 220px;
              margin: 0 auto; }
          #contents .kyojo .contents--second--cont .leadbox h4 {
            text-align: center;
            font-weight: 700;
            font-size: 16px;
            padding-top: 10px; }
        #contents .kyojo .contents--second--cont .flexbox {
          width: 100%;
          padding: 30px 0;
          display: flex;
          justify-content: space-between;
          border-top: 1px dashed #06a5de; }
          #contents .kyojo .contents--second--cont .flexbox figure {
            width: 248px; }
          #contents .kyojo .contents--second--cont .flexbox .box {
            width: 520px; }
            #contents .kyojo .contents--second--cont .flexbox .box h5 {
              color: #06a5de;
              font-size: 18px;
              line-height: 28px;
              font-weight: 700;
              padding-bottom: 20px; }
            #contents .kyojo .contents--second--cont .flexbox .box .txxts {
              font-size: 14px;
              line-height: 24px;
              letter-spacing: 0em; }
        #contents .kyojo .contents--second--cont .underbox {
          background: #daf2fa;
          padding-bottom: 30px;
          border-radius: 15px;
          overflow: hidden; }
          #contents .kyojo .contents--second--cont .underbox h4 {
            text-align: center;
            background: #06a5de;
            color: #fff;
            font-weight: 700;
            font-size: 19px;
            color: #fff;
            padding: 10px 0; }
          #contents .kyojo .contents--second--cont .underbox--inner {
            padding: 10px 36px 0; }
            #contents .kyojo .contents--second--cont .underbox--inner dl {
              display: flex;
              justify-content: space-between;
              margin-top: 10px;
              width: 100%; }
              #contents .kyojo .contents--second--cont .underbox--inner dl dt {
                width: 180px;
                text-align: center;
                box-sizing: border-box;
                border: 1px solid #06a5de;
                background: #fff;
                font-family: "Shippori Mincho", serif;
                font-weight: 700;
                font-size: 19px;
                color: #06a5de;
                display: flex;
                justify-content: center;
                align-items: center;
                padding: 10px 0;
                min-height: 60px; }
              #contents .kyojo .contents--second--cont .underbox--inner dl dd {
                width: calc(100% - 200px);
                display: flex;
                align-items: center; }
          #contents .kyojo .contents--second--cont .underbox h5 {
            text-align: center;
            background: #06a5de;
            font-weight: 700;
            font-size: 19px;
            color: #fff;
            padding: 5px 0;
            margin: 20px 36px 0; }
          #contents .kyojo .contents--second--cont .underbox ul {
            display: flex;
            justify-content: center;
            flex-wrap: wrap;
            padding: 20px;
            background: #fff;
            margin: 0 36px;
            border: 1px solid #06a5de; }
            #contents .kyojo .contents--second--cont .underbox ul li {
              font-size: 14px;
              margin: 0 10px; }
              #contents .kyojo .contents--second--cont .underbox ul li small {
                color: #6591cd; }
        #contents .kyojo .contents--second--cont.cl_2 {
          border: 2px solid #f68a8b;
          background: #fff9f9; }
          #contents .kyojo .contents--second--cont.cl_2 .leadbox .topttl {
            background: #f68a8b; }
            #contents .kyojo .contents--second--cont.cl_2 .leadbox .topttl:after {
              border-top: 20px solid #f68a8b; }
          #contents .kyojo .contents--second--cont.cl_2 .leadbox .conttl {
            color: #f68a8b; }
          #contents .kyojo .contents--second--cont.cl_2 .flexbox {
            border-top: 1px dashed #f68a8b; }
            #contents .kyojo .contents--second--cont.cl_2 .flexbox .box h5 {
              color: #f68a8b; }
            #contents .kyojo .contents--second--cont.cl_2 .flexbox .box .innerbox {
              margin-top: 10px;
              border: 1px solid #f68a8b;
              padding: 10px 15px;
              border-radius: 10px;
              font-size: 13px; }
              #contents .kyojo .contents--second--cont.cl_2 .flexbox .box .innerbox .leadpoint {
                color: #f68a8b;
                font-family: "Shippori Mincho", serif;
                font-weight: 700;
                font-size: 14px;
                padding-bottom: 5px; }
          #contents .kyojo .contents--second--cont.cl_2 .underbox {
            background: #feedee; }
            #contents .kyojo .contents--second--cont.cl_2 .underbox .ttl {
              background: #f68a8b; }
            #contents .kyojo .contents--second--cont.cl_2 .underbox--inner {
              padding: 10px 36px 0; }
              #contents .kyojo .contents--second--cont.cl_2 .underbox--inner dl dt {
                border: 1px solid #f68a8b;
                color: #f68a8b; }
            #contents .kyojo .contents--second--cont.cl_2 .underbox h5 {
              background: #f68a8b; }
            #contents .kyojo .contents--second--cont.cl_2 .underbox ul {
              border: 1px solid #f68a8b; }
            #contents .kyojo .contents--second--cont.cl_2 .underbox li small {
              color: #f57c8c; }
    #contents .kyojo .contents h3.lead {
      color: #b864a3;
      text-align: center;
      font-family: "Shippori Mincho", serif;
      font-weight: 700;
      font-size: 34px;
      position: relative;
      top: -30px;
      position: relative;
      padding: 0 0 10px; }
      #contents .kyojo .contents h3.lead:after {
        position: absolute;
        content: "";
        width: 80px;
        border-bottom: 5px solid #b864a3;
        left: 50%;
        margin-left: -40px;
        bottom: 0; }
    #contents .kyojo .contents--reason {
      margin-top: 100px;
      background: #f3e5ef;
      padding-bottom: 100px; }
      #contents .kyojo .contents--reason--box {
        width: 900px;
        margin: 30px auto 0;
        background: #fff;
        border-radius: 15px;
        display: flex;
        justify-content: space-between;
        align-items: center;
        padding: 0 25px; }
        #contents .kyojo .contents--reason--box h4 {
          width: 146px;
          position: relative;
          top: -10px; }
        #contents .kyojo .contents--reason--box .txts {
          width: 650px;
          font-weight: 700;
          font-size: 15px;
          padding: 20px 0; }
      #contents .kyojo .contents--reason--message {
        width: 900px;
        margin: 0px auto 0;
        position: relative; }
        #contents .kyojo .contents--reason--message .en {
          font-family: "Shippori Mincho", serif;
          font-weight: 700;
          font-size: 53px;
          color: #d29cc4;
          position: relative;
          z-index: 2;
          margin-bottom: -30px; }
        #contents .kyojo .contents--reason--message--flex {
          background: #fff;
          border-radius: 15px;
          padding: 40px 55px 35px;
          display: flex;
          justify-content: space-between;
          align-items: flex-end; }
          #contents .kyojo .contents--reason--message--flex .box {
            width: 590px; }
            #contents .kyojo .contents--reason--message--flex .box h4 {
              font-weight: 700;
              font-size: 22px;
              line-height: 1.6;
              color: #b864a3; }
            #contents .kyojo .contents--reason--message--flex .box .txts {
              font-weight: 700;
              text-align: justify;
              margin-top: 20px; }
          #contents .kyojo .contents--reason--message--flex figure {
            width: 172px; }
    #contents .kyojo .contents--under {
      margin-top: 0px;
      padding-bottom: 60px;
      background: #dfb9d6; }
      #contents .kyojo .contents--under h3.lead {
        top: -50px;
        position: relative;
        padding: 0 0 10px;
        margin-bottom: -40px; }
      #contents .kyojo .contents--under--top {
        position: relative;
        color: #fff;
        text-align: center;
        padding: 20px 0; }
        #contents .kyojo .contents--under--top .lead {
          font-family: "Shippori Mincho", serif;
          font-weight: 700;
          font-size: 38px;
          line-height: 1.6; }
      #contents .kyojo .contents--under--box {
        width: 900px;
        margin: 0 auto;
        display: flex;
        justify-content: space-between;
        align-items: center;
        padding: 40px 0;
        border-top: 1px dashed #603813; }
        #contents .kyojo .contents--under--box.border_t {
          border-top: none;
          padding-top: 0; }
        #contents .kyojo .contents--under--box figure {
          width: 410px; }
        #contents .kyojo .contents--under--box .txtbox {
          width: 420px; }
          #contents .kyojo .contents--under--box .txtbox .number {
            display: flex;
            align-items: center;
            justify-content: space-between; }
            #contents .kyojo .contents--under--box .txtbox .number dt {
              width: 100px;
              font-family: "Shippori Mincho", serif;
              font-weight: 700;
              font-size: 74px;
              letter-spacing: 0;
              line-height: 0.8;
              color: #b864a3; }
            #contents .kyojo .contents--under--box .txtbox .number dd {
              width: 310px;
              font-size: 20px;
              font-weight: 700;
              line-height: 1.4;
              color: #b864a3; }
          #contents .kyojo .contents--under--box .txtbox .txts {
            color: #1e2945;
            font-size: 14px;
            line-height: 24px;
            margin-top: 20px;
            text-align: justify; }
      #contents .kyojo .contents--under .underlead {
        color: #fff;
        font-family: "Shippori Mincho", serif;
        font-weight: 700;
        font-size: 33px;
        line-height: 1.6;
        text-align: center;
        position: relative;
        padding: 10px 0;
        margin-top: 20px; }
        #contents .kyojo .contents--under .underlead:after {
          position: absolute;
          content: "";
          width: 100%;
          height: 100%;
          background: #b864a3;
          left: 0;
          top: 0;
          opacity: 0.7;
          mix-blend-mode: multiply;
          z-index: -1; }
    #contents .kyojo .contents--faq {
      background: #f3e5ef;
      padding-bottom: 60px; }
      #contents .kyojo .contents--faq h3.lead {
        position: relative;
        margin-bottom: -40px; }
      #contents .kyojo .contents--faq--box {
        width: 645px;
        margin: 30px auto 0;
        border-radius: 15px; }
        #contents .kyojo .contents--faq--box .qbox {
          display: flex;
          justify-content: space-between;
          background: #fff;
          align-items: center;
          position: relative; }
          #contents .kyojo .contents--faq--box .qbox:before, #contents .kyojo .contents--faq--box .qbox:after {
            position: absolute;
            content: ""; }
          #contents .kyojo .contents--faq--box .qbox:before {
            width: 1.9417475728vw;
            border-top: 0.0970873786vw solid #b864a3;
            top: 50%;
            right: 0.9708737864vw; }
          #contents .kyojo .contents--faq--box .qbox:after {
            height: 1.9417475728vw;
            border-left: 0.0970873786vw solid #b864a3;
            top: 50%;
            margin-top: -0.9708737864vw;
            right: 1.9417475728vw; }
          #contents .kyojo .contents--faq--box .qbox.open:after {
            content: none; }
          #contents .kyojo .contents--faq--box .qbox dt {
            width: 55px;
            height: 55px;
            background: #b864a3;
            font-family: "Shippori Mincho", serif;
            font-weight: 700;
            font-size: 24px;
            color: #fff;
            display: flex;
            justify-content: center;
            align-items: center; }
          #contents .kyojo .contents--faq--box .qbox dd {
            width: 560px;
            padding-right: 35px;
            font-size: 14px;
            font-weight: 700;
            display: flex;
            justify-content: flex-start;
            align-items: center; }
        #contents .kyojo .contents--faq--box .abox {
          display: none;
          justify-content: space-between;
          align-items: flex-start;
          padding-top: 10px; }
          #contents .kyojo .contents--faq--box .abox dt {
            width: 55px;
            height: 55px;
            font-family: "Shippori Mincho", serif;
            font-weight: 700;
            font-size: 24px;
            color: #b864a3;
            display: flex;
            justify-content: center;
            align-items: flex-start; }
          #contents .kyojo .contents--faq--box .abox dd {
            width: 560px;
            padding-right: 10px;
            font-size: 14px;
            font-weight: 700;
            text-align: justify; }
            #contents .kyojo .contents--faq--box .abox dd span {
              display: inline;
              background: #f5dd2e; }
            #contents .kyojo .contents--faq--box .abox dd .link li {
              position: relative; }
              #contents .kyojo .contents--faq--box .abox dd .link li:before {
                position: absolute;
                content: "▶︎";
                color: #b864a3;
                left: -25px; }
              #contents .kyojo .contents--faq--box .abox dd .link li a {
                color: #b864a3;
                text-decoration: underline; }
            #contents .kyojo .contents--faq--box .abox dd .check {
              margin-top: 15px; }
              #contents .kyojo .contents--faq--box .abox dd .check li {
                position: relative; }
                #contents .kyojo .contents--faq--box .abox dd .check li:before {
                  position: absolute;
                  content: url("../img/check.svg");
                  width: 14px;
                  height: 11px;
                  left: -22px; }
                #contents .kyojo .contents--faq--box .abox dd .check li strong {
                  font-weight: 700;
                  color: #b864a3;
                  display: block; }
    #contents .kyojo .contents--lastlink .leadtxt {
      background: #b864a3;
      text-align: center;
      color: #fff;
      padding: 15px 0;
      font-family: "Shippori Mincho", serif;
      font-weight: 700;
      font-size: 26px; }
    #contents .kyojo .contents--lastlink .sh_links {
      display: flex;
      justify-content: center;
      flex-wrap: wrap;
      background: #fff;
      padding-top: 30px; }
      #contents .kyojo .contents--lastlink .sh_links li {
        width: 434px;
        margin: 25px 15px 0;
        border: 1px solid #b864a3;
        font-size: 17px;
        font-weight: 700; }
        #contents .kyojo .contents--lastlink .sh_links li a {
          display: block;
          padding: 15px 20px;
          border-bottom: 8px solid #b864a3;
          position: relative; }
          #contents .kyojo .contents--lastlink .sh_links li a:after {
            position: absolute;
            content: "";
            background: url("../img/img_arrow_b.svg");
            width: 20px;
            height: 20px;
            right: 15px;
            top: 50%;
            margin-top: -10px; }
    #contents .kyojo .contents--lastlink .logounder {
      background: #fff;
      padding: 30px 0; }
      #contents .kyojo .contents--lastlink .logounder img {
        display: block;
        width: 310px;
        margin: 0 auto; }

@media screen and (max-width: 767px) {
  #contents .kyojo {
    overflow: hidden;
    max-width: 100%;
    font-size: 3.7333333333vw;
    letter-spacing: 0.02em; }
    #contents .kyojo .logok {
      background: #fff;
      padding: 10px 0; }
      #contents .kyojo .logok img {
        display: block;
        width: 240px;
        margin: 0 auto; }
    #contents .kyojo .kv {
      width: 100%;
      position: relative; }
      #contents .kyojo .kv:after {
        width: 56.5333333333vw;
        height: 23.4666666667vw;
        margin-left: -28.2666666667vw;
        bottom: -11.7333333333vw; }
      #contents .kyojo .kv .ttltop {
        font-family: "Shippori Mincho", serif;
        font-weight: 700;
        font-size: 8vw;
        color: #1957b1;
        line-height: 1.4;
        text-align: center;
        padding-top: 8vw; }
        #contents .kyojo .kv .ttltop span {
          position: relative;
          display: inline;
          background: #f68a8b;
          padding: 0.5333333333vw 1.3333333333vw;
          z-index: 1;
          -webkit-box-decoration-break: clone;
          box-decoration-break: clone; }
          #contents .kyojo .kv .ttltop span:before {
            content: none; }
          #contents .kyojo .kv .ttltop span strong {
            font-family: "Shippori Mincho", serif;
            font-weight: 700; }
      #contents .kyojo .kv .leadtop {
        font-size: 4vw;
        margin-top: 5.3333333333vw; }
      #contents .kyojo .kv .leadtxt {
        font-size: 4.8vw;
        margin-top: 6.4vw; }
        #contents .kyojo .kv .leadtxt strong {
          font-family: "Shippori Mincho", serif;
          font-weight: 700;
          display: inline;
          background: #0684de;
          padding: 0em 1.3333333333vw 0.2666666667vw;
          margin: 0 0.8vw;
          -webkit-box-decoration-break: clone;
          box-decoration-break: clone; }
      #contents .kyojo .kv figure {
        width: 80vw;
        margin: 0 auto;
        margin-top: 5.3333333333vw;
        position: relative;
        z-index: 2; }
        #contents .kyojo .kv figure #earth-canvas {
          opacity: 0.3;
          position: absolute;
          top: 50%;
          left: 50%;
          transform: translate(-50%, -50%);
          margin-top: 0.2666666667vw;
          margin-left: -0.2666666667vw;
          width: 63.4666666667vw;
          height: 63.4666666667vw;
          z-index: 2;
          cursor: grab;
          filter: drop-shadow(0 0 30px rgba(255, 255, 255, 0.5)); }
          #contents .kyojo .kv figure #earth-canvas:active {
            cursor: grabbing; }
          #contents .kyojo .kv figure #earth-canvas canvas {
            display: block;
            width: 100% !important;
            height: 100% !important; }
    #contents .kyojo .case {
      padding: 0; }
      #contents .kyojo .case--box {
        padding: 8vw 0 8vw; }
        #contents .kyojo .case--box .num {
          font-size: 9.6vw;
          color: #fff; }
          #contents .kyojo .case--box .num strong {
            display: inline;
            font-weight: 500;
            font-size: 16vw;
            margin-left: 20px; }
        #contents .kyojo .case--box .lead {
          font-family: "Shippori Mincho", serif;
          font-size: 6.4vw;
          text-align: center; }
          #contents .kyojo .case--box .lead span {
            position: relative;
            display: inline;
            background: #f68a8b;
            padding: 0.5333333333vw 1.3333333333vw;
            z-index: 1;
            -webkit-box-decoration-break: clone;
            box-decoration-break: clone; }
            #contents .kyojo .case--box .lead span:before {
              content: none; }
            #contents .kyojo .case--box .lead span strong {
              font-family: "Shippori Mincho", serif;
              font-weight: 700;
              position: relative;
              z-index: 2; }
        #contents .kyojo .case--box figure {
          width: 66.6666666667vw;
          margin: 8vw auto 0; }
        #contents .kyojo .case--box .undertxt {
          font-size: 3.7333333333vw;
          line-height: 1.8;
          padding: 5.3333333333vw 0; }
      #contents .kyojo .case--box {
        background: linear-gradient(to bottom, #a0deff, #51819d); }
    #contents .kyojo .which {
      margin-top: 2.6666666667vw;
      padding-bottom: 0;
      background: linear-gradient(to right, #daf2fa 0%, #daf2fa 50%, #feedee 50%, #feedee 100%); }
      #contents .kyojo .which--topttl {
        font-size: 5.8666666667vw;
        padding: 2.6666666667vw 0; }
        #contents .kyojo .which--topttl small {
          font-size: 4.8vw; }
        #contents .kyojo .which--topttl:after {
          width: 18.962962963vw;
          height: 6.8148148148vw;
          margin-left: -9.4814814815vw;
          bottom: -6.5185185185vw; }
      #contents .kyojo .which--lead {
        font-size: 4.8vw;
        margin: 13.3333333333vw auto 5.3333333333vw; }
      #contents .kyojo .which--ttl {
        font-size: 7.2vw; }
        #contents .kyojo .which--ttl small {
          font-family: "Shippori Mincho", serif;
          display: inline;
          font-weight: 700;
          font-size: 5.8666666667vw; }
      #contents .kyojo .which--tpimg {
        display: flex;
        justify-content: center;
        align-items: center;
        margin-top: 5.3333333333vw; }
        #contents .kyojo .which--tpimg figure {
          width: 72vw;
          margin: 0 2.6666666667vw; }
        #contents .kyojo .which--tpimg .lead {
          writing-mode: vertical-rl;
          text-orientation: mixed;
          font-family: "Shippori Mincho", serif;
          font-size: 4.8vw; }
      #contents .kyojo .which--case {
        position: relative;
        margin-top: 10.6666666667vw;
        padding: 0; }
        #contents .kyojo .which--case:before, #contents .kyojo .which--case:after {
          position: absolute;
          content: "";
          width: 50%;
          height: 100%;
          top: 0; }
        #contents .kyojo .which--case:before {
          background: linear-gradient(to right, #8099cc, #9cb0d7); }
        #contents .kyojo .which--case:after {
          background: linear-gradient(to left, #bf73ac, #cd92be); }
        #contents .kyojo .which--case .js-scrollable {
          width: 100%;
          overflow-x: auto;
          -webkit-overflow-scrolling: touch;
          padding-bottom: 20px;
          z-index: 8; }
        #contents .kyojo .which--case .scroll-hint-icon,
        #contents .kyojo .which--case .scroll-hint-shadow {
          z-index: 10 !important; }
        #contents .kyojo .which--case .num {
          font-size: 9.6vw;
          color: #fff; }
          #contents .kyojo .which--case .num strong {
            display: inline;
            font-weight: 500;
            font-size: 16vw;
            margin-left: 20px; }
        #contents .kyojo .which--case--box {
          display: flex;
          justify-content: space-between;
          position: relative;
          z-index: 2;
          border-bottom: 0.2666666667vw solid #fff;
          padding: 0 0 9.6vw;
          margin: 0;
          width: 192vw;
          margin: 0;
          padding: 0 20px 5.3333333333vw; }
          #contents .kyojo .which--case--box:last-child {
            padding-bottom: 0; }
          #contents .kyojo .which--case--box .leadtxt {
            font-family: "Shippori Mincho", serif;
            font-weight: 700;
            font-size: 5.3333333333vw;
            letter-spacing: -0.01em;
            color: #fff;
            line-height: 1.6;
            padding-top: 2.6666666667vw; }
          #contents .kyojo .which--case--box .txts {
            font-size: 3.7333333333vw;
            padding: 2.6666666667vw 0; }
          #contents .kyojo .which--case--box .keyw {
            display: flex;
            justify-content: space-between;
            align-items: center;
            box-sizing: border-box;
            background: #fff;
            border-radius: 2.6666666667vw; }
            #contents .kyojo .which--case--box .keyw .ttl {
              width: 26.6666666667vw;
              text-align: center;
              font-family: 'Montserrat', serif;
              font-weight: 700;
              font-size: 3.7333333333vw;
              color: #fff;
              padding: 13.3333333333vw 0; }
            #contents .kyojo .which--case--box .keyw .kybox {
              width: 56vw;
              display: flex;
              flex-wrap: wrap;
              padding: 2.6666666667vw; }
              #contents .kyojo .which--case--box .keyw .kybox li {
                margin-right: 2.6666666667vw;
                font-size: 3.2vw;
                font-weight: 500;
                padding-left: 4.8vw;
                position: relative; }
          #contents .kyojo .which--case--box .leftbox {
            width: 82.6666666667vw;
            margin-top: 8vw; }
            #contents .kyojo .which--case--box .leftbox figure {
              width: 66.6666666667vw;
              position: relative;
              margin: 0 8vw 0 auto; }
            #contents .kyojo .which--case--box .leftbox .keyw {
              border: 4px solid #728ec6; }
              #contents .kyojo .which--case--box .leftbox .keyw .ttl {
                background: #728ec6;
                border-radius: 5px; }
              #contents .kyojo .which--case--box .leftbox .keyw li:before {
                position: absolute;
                content: "●";
                color: #728ec6;
                left: 0; }
          #contents .kyojo .which--case--box .rightbox {
            width: 82.6666666667vw;
            margin-top: 8vw; }
            #contents .kyojo .which--case--box .rightbox figure {
              width: 66.6666666667vw;
              position: relative;
              margin: 0 auto 0 8vw; }
            #contents .kyojo .which--case--box .rightbox .leadtxt {
              text-align: right; }
            #contents .kyojo .which--case--box .rightbox .keyw {
              border: 4px solid #b864a3; }
              #contents .kyojo .which--case--box .rightbox .keyw .ttl {
                background: #b864a3;
                border-radius: 5px; }
              #contents .kyojo .which--case--box .rightbox .keyw li:before {
                position: absolute;
                content: "●";
                color: #b864a3;
                left: 0; }
          #contents .kyojo .which--case--box .middle {
            position: absolute;
            width: 93.3333333333vw;
            left: 50%;
            margin-left: -46.6666666667vw;
            top: 5.3333333333vw;
            z-index: 3; }
    #contents .kyojo .contents {
      margin-top: 5.3333333333vw;
      padding-bottom: 0; }
      #contents .kyojo .contents--second {
        margin-top: 70px; }
        #contents .kyojo .contents--second--cont {
          width: 100%;
          margin: 80px auto 0;
          background: #fff;
          border-radius: 20px;
          box-sizing: border-box;
          border: 2px solid #06a5de;
          padding: 0 45px 45px;
          color: #1e2945;
          box-sizing: border-box;
          background: #f2fafd; }
          #contents .kyojo .contents--second--cont .leadbox {
            margin-bottom: 50px; }
            #contents .kyojo .contents--second--cont .leadbox .topttl {
              text-align: center;
              width: 550px;
              background: #06a5de;
              margin: -22px auto 0;
              color: #fff;
              font-weight: 700;
              font-size: 18px;
              padding: 8px 0;
              position: relative; }
              #contents .kyojo .contents--second--cont .leadbox .topttl:after {
                position: absolute;
                content: "";
                width: 0px;
                height: 0px;
                border-style: solid;
                border-right: 20px solid transparent;
                border-left: 20px solid transparent;
                border-top: 20px solid #06a5de;
                border-bottom: 0;
                bottom: -10px;
                left: 50%;
                margin-left: -15px; }
            #contents .kyojo .contents--second--cont .leadbox .conttl {
              text-align: center;
              font-family: "Shippori Mincho", serif;
              font-weight: 700;
              font-size: 49px;
              color: #06a5de; }
              #contents .kyojo .contents--second--cont .leadbox .conttl span {
                display: block;
                width: 220px;
                margin: 0 auto; }
            #contents .kyojo .contents--second--cont .leadbox h4 {
              text-align: center;
              font-weight: 700;
              font-size: 16px;
              padding-top: 10px; }
          #contents .kyojo .contents--second--cont .flexbox {
            width: 100%;
            padding: 30px 0;
            display: flex;
            justify-content: space-between;
            border-top: 1px dashed #06a5de; }
            #contents .kyojo .contents--second--cont .flexbox figure {
              width: 248px; }
            #contents .kyojo .contents--second--cont .flexbox .box {
              width: 520px; }
              #contents .kyojo .contents--second--cont .flexbox .box h5 {
                color: #06a5de;
                font-size: 18px;
                line-height: 28px;
                font-weight: 700;
                padding-bottom: 20px; }
              #contents .kyojo .contents--second--cont .flexbox .box .txxts {
                font-size: 14px;
                line-height: 24px;
                letter-spacing: 0em; }
          #contents .kyojo .contents--second--cont .underbox {
            background: #daf2fa;
            padding-bottom: 30px;
            border-radius: 15px;
            overflow: hidden; }
            #contents .kyojo .contents--second--cont .underbox h4 {
              text-align: center;
              background: #06a5de;
              color: #fff;
              font-weight: 700;
              font-size: 19px;
              color: #fff;
              padding: 10px 0; }
            #contents .kyojo .contents--second--cont .underbox--inner {
              padding: 10px 10px 0; }
              #contents .kyojo .contents--second--cont .underbox--inner dl {
                display: block;
                justify-content: space-between;
                margin-top: 10px;
                width: 100%; }
                #contents .kyojo .contents--second--cont .underbox--inner dl dt {
                  width: 100%;
                  text-align: center;
                  box-sizing: border-box;
                  border: 1px solid #06a5de;
                  background: #fff;
                  font-family: "Shippori Mincho", serif;
                  font-weight: 700;
                  font-size: 19px;
                  color: #06a5de;
                  display: flex;
                  justify-content: center;
                  align-items: center;
                  padding: 5px 0;
                  min-height: 60px; }
                #contents .kyojo .contents--second--cont .underbox--inner dl dd {
                  width: 100%;
                  display: flex;
                  align-items: center; }
            #contents .kyojo .contents--second--cont .underbox h5 {
              text-align: center;
              background: #06a5de;
              font-weight: 700;
              font-size: 19px;
              color: #fff;
              padding: 5px 0;
              margin: 20px 10px 0; }
            #contents .kyojo .contents--second--cont .underbox ul {
              display: flex;
              justify-content: center;
              flex-wrap: wrap;
              padding: 20px;
              background: #fff;
              margin: 0 10px;
              border: 1px solid #06a5de; }
              #contents .kyojo .contents--second--cont .underbox ul li {
                font-size: 14px;
                margin: 0 10px; }
                #contents .kyojo .contents--second--cont .underbox ul li small {
                  color: #6591cd; }
          #contents .kyojo .contents--second--cont.cl_2 {
            border: 2px solid #f68a8b;
            background: #fff9f9; }
            #contents .kyojo .contents--second--cont.cl_2 .leadbox .topttl {
              background: #f68a8b; }
              #contents .kyojo .contents--second--cont.cl_2 .leadbox .topttl:after {
                border-top: 20px solid #f68a8b; }
            #contents .kyojo .contents--second--cont.cl_2 .leadbox .conttl {
              color: #f68a8b; }
            #contents .kyojo .contents--second--cont.cl_2 .flexbox {
              border-top: 1px dashed #f68a8b; }
              #contents .kyojo .contents--second--cont.cl_2 .flexbox .box h5 {
                color: #f68a8b; }
              #contents .kyojo .contents--second--cont.cl_2 .flexbox .box .innerbox {
                margin-top: 10px;
                border: 1px solid #f68a8b;
                padding: 10px 15px;
                border-radius: 10px;
                font-size: 13px; }
                #contents .kyojo .contents--second--cont.cl_2 .flexbox .box .innerbox .leadpoint {
                  color: #f68a8b;
                  font-family: "Shippori Mincho", serif;
                  font-weight: 700;
                  font-size: 14px;
                  padding-bottom: 5px; }
            #contents .kyojo .contents--second--cont.cl_2 .underbox {
              background: #feedee; }
              #contents .kyojo .contents--second--cont.cl_2 .underbox .ttl {
                background: #f68a8b; }
              #contents .kyojo .contents--second--cont.cl_2 .underbox--inner {
                padding: 10px 10px 0; }
                #contents .kyojo .contents--second--cont.cl_2 .underbox--inner dl dt {
                  border: 1px solid #f68a8b;
                  color: #f68a8b; }
              #contents .kyojo .contents--second--cont.cl_2 .underbox h5 {
                background: #f68a8b; }
              #contents .kyojo .contents--second--cont.cl_2 .underbox ul {
                margin: 0 10px;
                border: 1px solid #f68a8b; }
              #contents .kyojo .contents--second--cont.cl_2 .underbox li small {
                color: #f57c8c; }
      #contents .kyojo .contents h3.lead {
        color: #b864a3;
        text-align: center;
        font-family: "Shippori Mincho", serif;
        font-weight: 700;
        font-size: 6.4vw;
        line-height: 1.4;
        position: relative;
        top: -8vw;
        position: relative;
        padding: 0 0 2.6666666667vw; }
        #contents .kyojo .contents h3.lead:after {
          position: absolute;
          content: "";
          width: 80px;
          border-bottom: 5px solid #b864a3;
          left: 50%;
          margin-left: -40px;
          bottom: 0; }
      #contents .kyojo .contents--reason {
        margin-top: 21.3333333333vw;
        background: #f3e5ef;
        padding-bottom: 16vw; }
        #contents .kyojo .contents--reason--box {
          width: 85.3333333333vw;
          margin: 5.3333333333vw auto 0;
          background: #fff;
          border-radius: 2.6666666667vw;
          display: block;
          justify-content: space-between;
          align-items: center;
          padding: 0 5.3333333333vw; }
          #contents .kyojo .contents--reason--box h4 {
            width: 38.9333333333vw;
            margin: 0 auto -2.6666666667vw;
            position: relative;
            top: -2.6666666667vw; }
          #contents .kyojo .contents--reason--box .txts {
            width: 100%;
            font-weight: 700;
            text-align: justify;
            font-size: 4vw;
            padding: 4vw 0; }
        #contents .kyojo .contents--reason--message {
          width: 85.3333333333vw;
          margin: 0px auto 0;
          position: relative; }
          #contents .kyojo .contents--reason--message .en {
            font-family: "Shippori Mincho", serif;
            font-weight: 700;
            font-size: 9.3333333333vw;
            color: #d29cc4;
            position: relative;
            z-index: 2;
            margin-bottom: -5.3333333333vw; }
          #contents .kyojo .contents--reason--message--flex {
            background: #fff;
            border-radius: 2.6666666667vw;
            padding: 8vw 4vw 4vw;
            display: flex;
            justify-content: space-between;
            align-items: flex-end;
            flex-wrap: wrap; }
            #contents .kyojo .contents--reason--message--flex .box {
              width: 590px; }
              #contents .kyojo .contents--reason--message--flex .box h4 {
                font-weight: 700;
                font-size: 4.8vw;
                line-height: 1.6;
                color: #b864a3; }
              #contents .kyojo .contents--reason--message--flex .box .txts {
                font-weight: 700;
                text-align: justify;
                margin-top: 4vw; }
            #contents .kyojo .contents--reason--message--flex figure {
              width: 40vw;
              margin: 2.6666666667vw auto 0; }
      #contents .kyojo .contents--second {
        margin-top: 10.6666666667vw; }
        #contents .kyojo .contents--second--top {
          padding: 10.6666666667vw 0 18.6666666667vw; }
          #contents .kyojo .contents--second--top .lead {
            font-size: 5.8666666667vw; }
          #contents .kyojo .contents--second--top .txt {
            font-size: 3.7333333333vw;
            margin-top: 4vw; }
        #contents .kyojo .contents--second--tab {
          margin-top: -10.6666666667vw; }
          #contents .kyojo .contents--second--tab .tablink {
            width: 45.3333333333vw;
            font-size: 4.2666666667vw;
            margin: 0 1.3333333333vw; }
            #contents .kyojo .contents--second--tab .tablink a {
              display: block;
              padding: 2.6666666667vw 0;
              position: relative; }
              #contents .kyojo .contents--second--tab .tablink a:after {
                width: 6.4vw;
                height: 6.4vw;
                border-right: 1.0666666667vw solid #000;
                border-bottom: 1.0666666667vw solid #000;
                margin-left: -2.6666666667vw;
                bottom: -1.0666666667vw; }
        #contents .kyojo .contents--second--cont {
          width: 89.3333333333vw;
          margin: 16vw auto 0;
          border-radius: 2.6666666667vw;
          border: 0.5333333333vw solid #06a5de;
          padding: 0 2.6666666667vw 2.6666666667vw; }
          #contents .kyojo .contents--second--cont .leadbox {
            margin-bottom: 8vw; }
            #contents .kyojo .contents--second--cont .leadbox .topttl {
              width: 80vw;
              margin: -8vw auto 8vw;
              font-size: 4.2666666667vw;
              padding: 1.0666666667vw 0; }
              #contents .kyojo .contents--second--cont .leadbox .topttl:after {
                border-right: 5.3333333333vw solid transparent;
                border-left: 5.3333333333vw solid transparent;
                border-top: 5.3333333333vw solid #06a5de;
                bottom: -2.6666666667vw;
                margin-left: -4vw; }
            #contents .kyojo .contents--second--cont .leadbox .conttl {
              font-size: 7.4666666667vw; }
              #contents .kyojo .contents--second--cont .leadbox .conttl span {
                width: 53.3333333333vw; }
            #contents .kyojo .contents--second--cont .leadbox h4 {
              font-size: 3.7333333333vw;
              padding-top: 2.6666666667vw; }
          #contents .kyojo .contents--second--cont .flexbox {
            width: 100%;
            padding: 4vw 0;
            flex-wrap: wrap;
            border-top: 0.2666666667vw dashed #06a5de; }
            #contents .kyojo .contents--second--cont .flexbox figure {
              width: 100%;
              padding-bottom: 4vw; }
            #contents .kyojo .contents--second--cont .flexbox .box {
              width: 100%; }
              #contents .kyojo .contents--second--cont .flexbox .box h5 {
                font-size: 4.2666666667vw;
                line-height: 1.8;
                padding-bottom: 4vw; }
              #contents .kyojo .contents--second--cont .flexbox .box .txxts {
                font-size: 3.4666666667vw;
                line-height: 1.6; }
          #contents .kyojo .contents--second--cont .underbox {
            border: 0.2666666667vw solid #6591cd; }
            #contents .kyojo .contents--second--cont .underbox h5 {
              font-size: 4vw;
              padding: 1.3333333333vw 0; }
            #contents .kyojo .contents--second--cont .underbox ul {
              padding: 1.3333333333vw 0;
              flex-wrap: wrap; }
              #contents .kyojo .contents--second--cont .underbox ul li {
                width: 100%;
                font-size: 3.4666666667vw;
                margin: 0 5.3333333333vw; }
          #contents .kyojo .contents--second--cont.cl_2 {
            border: 0.5333333333vw solid #f68a8b; }
            #contents .kyojo .contents--second--cont.cl_2 .leadbox .topttl:after {
              border-top: 5.3333333333vw solid #f68a8b; }
            #contents .kyojo .contents--second--cont.cl_2 .flexbox {
              border-top: 0.2666666667vw dashed #f68a8b; }
              #contents .kyojo .contents--second--cont.cl_2 .flexbox .box .innerbox {
                margin-top: 2.6666666667vw;
                border: 0.2666666667vw solid #f68a8b;
                padding: 4vw;
                border-radius: 2.1333333333vw;
                font-size: 3.2vw; }
                #contents .kyojo .contents--second--cont.cl_2 .flexbox .box .innerbox .leadpoint {
                  font-size: 3.4666666667vw;
                  padding-bottom: 1.3333333333vw; }
            #contents .kyojo .contents--second--cont.cl_2 .underbox {
              border: 0.2666666667vw solid #f57c8c; }
      #contents .kyojo .contents--under {
        margin-top: 0vw; }
        #contents .kyojo .contents--under--top {
          padding: 5.3333333333vw 0; }
          #contents .kyojo .contents--under--top .lead {
            font-size: 5.8666666667vw; }
        #contents .kyojo .contents--under--box {
          width: 89.3333333333vw;
          padding: 5.3333333333vw 0;
          border-top: 0.2666666667vw dashed #603813;
          flex-wrap: wrap; }
          #contents .kyojo .contents--under--box.border_t {
            border-top: none; }
          #contents .kyojo .contents--under--box figure {
            width: 100%;
            margin-bottom: 4vw; }
          #contents .kyojo .contents--under--box .txtbox {
            width: 100%; }
            #contents .kyojo .contents--under--box .txtbox .number {
              display: flex;
              align-items: center;
              justify-content: space-between; }
              #contents .kyojo .contents--under--box .txtbox .number dt {
                width: 21.3333333333vw;
                font-size: 13.3333333333vw; }
              #contents .kyojo .contents--under--box .txtbox .number dd {
                width: 68vw;
                font-size: 4.2666666667vw; }
            #contents .kyojo .contents--under--box .txtbox .txts {
              font-size: 3.4666666667vw;
              line-height: 1.6;
              margin-top: 4vw; }
        #contents .kyojo .contents--under .underlead {
          font-size: 5.3333333333vw;
          padding: 2.6666666667vw 0;
          margin-top: 5.3333333333vw; }
      #contents .kyojo .contents--faq {
        background: #f3e5ef;
        padding-bottom: 8vw; }
        #contents .kyojo .contents--faq h3.lead {
          position: relative;
          margin-bottom: -5.3333333333vw; }
        #contents .kyojo .contents--faq--box {
          width: 85.3333333333vw;
          margin: 30px auto 0;
          border-radius: 15px; }
          #contents .kyojo .contents--faq--box .qbox {
            display: flex;
            justify-content: space-between;
            background: #fff;
            align-items: center; }
            #contents .kyojo .contents--faq--box .qbox dt {
              width: 10.6666666667vw;
              height: 18.6666666667vw;
              background: #b864a3;
              font-family: "Shippori Mincho", serif;
              font-weight: 700;
              font-size: 5.3333333333vw;
              color: #fff;
              display: flex;
              justify-content: center;
              align-items: center; }
            #contents .kyojo .contents--faq--box .qbox dd {
              width: 69.3333333333vw;
              padding-right: 2.6666666667vw;
              font-size: 3.7333333333vw;
              line-height: 1.4;
              font-weight: 700;
              display: flex;
              justify-content: flex-start;
              align-items: center; }
          #contents .kyojo .contents--faq--box .abox {
            display: flex;
            justify-content: space-between;
            align-items: flex-start;
            padding-top: 10px; }
            #contents .kyojo .contents--faq--box .abox dt {
              width: 10.6666666667vw;
              height: auto;
              font-family: "Shippori Mincho", serif;
              font-weight: 700;
              font-size: 5.3333333333vw;
              color: #b864a3;
              display: flex;
              justify-content: center;
              align-items: flex-start; }
            #contents .kyojo .contents--faq--box .abox dd {
              width: 69.3333333333vw;
              padding-right: 2.6666666667vw;
              font-size: 3.7333333333vw;
              font-weight: 700;
              text-align: justify; }
              #contents .kyojo .contents--faq--box .abox dd span {
                display: inline;
                background: #f5dd2e; }
              #contents .kyojo .contents--faq--box .abox dd .link li {
                position: relative; }
                #contents .kyojo .contents--faq--box .abox dd .link li:before {
                  position: absolute;
                  content: "▶︎";
                  color: #b864a3;
                  left: -6.6666666667vw; }
                #contents .kyojo .contents--faq--box .abox dd .link li a {
                  color: #b864a3;
                  text-decoration: underline; }
              #contents .kyojo .contents--faq--box .abox dd .check {
                margin-top: 15px; }
                #contents .kyojo .contents--faq--box .abox dd .check li {
                  position: relative; }
                  #contents .kyojo .contents--faq--box .abox dd .check li:before {
                    position: absolute;
                    content: url("../img/check.svg");
                    width: 3.7333333333vw;
                    height: 2.9333333333vw;
                    left: -5.8666666667vw; }
                  #contents .kyojo .contents--faq--box .abox dd .check li strong {
                    font-weight: 700;
                    color: #b864a3;
                    display: block; }
      #contents .kyojo .contents--lastlink .leadtxt {
        background: #b864a3;
        text-align: center;
        color: #fff;
        padding: 2.6666666667vw 0;
        font-family: "Shippori Mincho", serif;
        font-weight: 700;
        font-size: 5.3333333333vw; }
      #contents .kyojo .contents--lastlink .sh_links {
        padding-top: 8vw; }
        #contents .kyojo .contents--lastlink .sh_links li {
          width: 100%;
          margin: 6.6666666667vw 4vw 0;
          border: 0.2666666667vw solid #b864a3;
          font-size: 4.2666666667vw; }
          #contents .kyojo .contents--lastlink .sh_links li a {
            padding: 4vw 5.3333333333vw;
            border-bottom: 2.1333333333vw solid #b864a3; }
            #contents .kyojo .contents--lastlink .sh_links li a:after {
              width: 5.3333333333vw;
              height: 5.3333333333vw;
              right: 4vw;
              margin-top: -2.6666666667vw; }
      #contents .kyojo .contents--lastlink .logounder {
        padding: 8vw 0; }
        #contents .kyojo .contents--lastlink .logounder img {
          display: block;
          width: 240px;
          margin: 0 auto; }

  .modalcontouter {
    position: relative;
    overflow: auto;
    padding-top: 10.6666666667vw; }
    .modalcontouter .closebtn {
      width: 8.5333333333vw;
      height: 8.5333333333vw;
      position: absolute;
      right: 0;
      top: -0px; }
    .modalcontouter .modalcontinner {
      width: 89.3333333333vw;
      padding: 0 0vw 8vw;
      border-radius: 5.3333333333vw; }
      .modalcontouter .modalcontinner .modallead {
        font-size: 5.8666666667vw;
        padding: 5.3333333333vw 0; }
        .modalcontouter .modalcontinner .modallead span {
          display: block;
          width: 21.3333333333vw;
          margin: 0 auto; }
        .modalcontouter .modalcontinner .modallead small {
          display: block;
          font-size: 3.7333333333vw; }
      .modalcontouter .modalcontinner .flexbox figure {
        width: 100%;
        margin-bottom: 4vw; }
      .modalcontouter .modalcontinner .flexbox h4 {
        width: 100%;
        font-size: 3.7333333333vw;
        padding: 0 8vw; }
        .modalcontouter .modalcontinner .flexbox h4 strong {
          font-size: 4.2666666667vw;
          font-weight: 700;
          margin-bottom: 1.3333333333vw; } }
/* =========================================================
 * 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;
  font-weight: 500;
  /*明朝体設定*/
  line-height: 1.8;
  color: #333;
  background: #fff; }

a {
  width: 100%;
  height: auto;
  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*/
/*Montserrat*/
/*shippori*/
.shippori-mincho {
  font-family: "Shippori Mincho", serif;
  font-weight: 400; }

.montserrat {
  font-family: 'Montserrat', serif; }

.arenq {
  font-family: 'Arenq', sans-serif; }

.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;
  transform: translate(0, 0); }

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