
@charset "UTF-8";
* {
  box-sizing: border-box; }

:root {
  --YuGothic: "Yu Gothic","游ゴシック体","游ゴシック","メイリオ",Meiryo,Verdana,sans-serif;
  --s-font-helvetica: 'Helvetica Neue', Arial, sans-serif; }

html {
  font-size: 16px;
  /* ルート要素 */ }
  @media (max-width: 1346px) {
    html {
      font-size: 16px; } }
  @media (max-width: 959px) {
    html {
      font-size: 14px; } }
  @media (max-width: 767px) {
    html {
      font-size: 13px; } }
  html body {
    color: #1a1a1a;
    line-height: 1.5;
    font-feature-settings: "palt";
    font-family: var(--YuGothic, sans-serif); }
    @media (max-width: 1100px) {
      html body.over {
        overflow: hidden; }
        html body.over header {
          background: #1a1a1a; } }
    html body.sub header {
      background: none; }
    html body a, html body img {
      display: block; }
    html body img {
      width: 100%;
      height: auto; }
    html body span.red {
      color: #FF3838; }
    html body span.cell {
      display: table-cell; }
      html body span.cell:first-of-type {
        padding-right: 0.5em; }
    html body .mt_none {
      margin-top: 0 !important; }
    html body .mb_none {
      margin-bottom: 0 !important; }
    html body .pt_none {
      padding-top: 0 !important; }
    html body .pb_none {
      padding-bottom: 0 !important; }
    html body .mt_1 {
      margin-top: 1rem !important; }
    html body .mb_1 {
      margin-bottom: 1rem !important; }
    html body .pt_1 {
      padding-top: 1rem !important; }
    html body .pb_1 {
      padding-bottom: 1rem !important; }
    html body .mt_2 {
      margin-top: 2rem !important; }
    html body .mb_2 {
      margin-bottom: 2rem !important; }
    html body .pt_2 {
      padding-top: 2rem !important; }
    html body .pb_2 {
      padding-bottom: 2rem !important; }
    html body .mt_3 {
      margin-top: 3rem !important; }
    html body .mb_3 {
      margin-bottom: 3rem !important; }
    html body .pt_3 {
      padding-top: 3rem !important; }
    html body .pb_3 {
      padding-bottom: 3rem !important; }
    html body .btn_back {
      background-color: #54C3F1;
      padding: 2rem 0; }
      html body .btn_back .a_btn {
        margin: 0; }
    html body .contentWrap.sideVer {
      display: grid;
      grid-template-columns: 1fr 300px;
      grid-template-rows: 1fr auto;
      grid-template-areas: "main side" "footer side"; }
      @media (min-width: 2000px) {
        html body .contentWrap.sideVer {
          grid-template-columns: 1fr 500px; } }
      @media (max-width: 959px) {
        html body .contentWrap.sideVer {
          grid-template-columns: 1fr 200px; } }
      @media (max-width: 767px) {
        html body .contentWrap.sideVer {
          display: block; } }
      html body .contentWrap.sideVer header {
        margin-right: 300px;
        display: grid; }
        @media (min-width: 2000px) {
          html body .contentWrap.sideVer header {
            margin-right: 500px;
            padding-left: 220px; } }
        @media (max-width: 959px) {
          html body .contentWrap.sideVer header {
            margin-right: 200px;
            max-width: 1600px; } }
        @media (max-width: 767px) {
          html body .contentWrap.sideVer header {
            margin-right: 0; } }
      html body .contentWrap.sideVer footer {
        grid-area: footer; }
      html body .contentWrap.sideVer .mainContents {
        grid-area: main; }
      html body .contentWrap.sideVer .sideBlock {
        grid-area: side; }
        @media (min-width: 2000px) {
          html body .contentWrap.sideVer .sideBlock .block {
            position: relative; }
            html body .contentWrap.sideVer .sideBlock .block::after {
              position: fixed;
              content: "";
              background-color: #fff;
              height: 4em;
              width: 151px;
              top: 0;
              right: 0;
              display: block; } }
    html body .titleBlock {
      padding-top: 0.5rem;
      padding-bottom: 1rem;
      width: 100%;
      color: #1a1a1a; }
      html body .titleBlock span.b_line {
        display: inline-block;
        position: relative; }
        html body .titleBlock span.b_line::after {
          position: absolute;
          width: 100%;
          height: 3px;
          content: "";
          bottom: 2px;
          left: 0;
          background-color: #54C3F1; }
      html body .titleBlock h2 span.b_line::after {
        bottom: 0; }
      html body .titleBlock h1 {
        color: #1a1a1a;
        font-weight: 600; }
      html body .titleBlock h2 {
        color: #1a1a1a;
        font-size: 1.875rem;
        font-weight: 600; }
        @media (max-width: 767px) {
          html body .titleBlock h2 {
            font-size: 1.75rem; } }
        @media (max-width: 380px) {
          html body .titleBlock h2 {
            font-size: 1.5rem; } }
      html body .titleBlock h3.titleBig {
        color: #1a1a1a;
        font-size: 1.75rem;
        font-weight: 600; }
        @media (max-width: 767px) {
          html body .titleBlock h3.titleBig {
            font-size: 1.5rem; } }
      html body .titleBlock h3, html body .titleBlock p.title {
        color: #1a1a1a;
        font-size: 1.5rem;
        font-weight: 600;
        padding-bottom: 0.5rem; }
        html body .titleBlock h3.line, html body .titleBlock p.title.line {
          position: relative; }
          html body .titleBlock h3.line::after, html body .titleBlock p.title.line::after {
            position: absolute;
            bottom: 0;
            left: 50%;
            transform: translatex(-50%);
            content: "";
            width: 1.5rem;
            height: 3px;
            background-color: #173D8C; }
      html body .titleBlock b {
        line-height: 1; }
        html body .titleBlock b.sub {
          font-family: var(--s-font-helvetica); }
      html body .titleBlock p {
        font-size: 1.125rem;
        line-height: 1.8;
        margin: 1.5rem 0;
        margin-bottom: 1rem; }
        @media (max-width: 767px) {
          html body .titleBlock p {
            font-size: 1rem;
            line-height: 2; } }
      html body .titleBlock.gradation_fukidashi {
        padding: 7rem 0 2rem 0;
        background: linear-gradient(to bottom, #DDF9FF, #DDE7FF);
        margin-top: -5rem;
        margin-bottom: 2rem;
        position: relative; }
        html body .titleBlock.gradation_fukidashi::after {
          content: "";
          position: absolute;
          bottom: -2.9rem;
          left: 50%;
          transform: translateX(-50%);
          width: 5rem;
          height: 3rem;
          min-width: 5rem;
          min-height: 3rem;
          background-color: #DDE7FF;
          clip-path: polygon(0 0, 100% 0, 50% 100%); }
      html body .titleBlock.logo_h2.center div {
        justify-content: center; }
      html body .titleBlock.logo_h2 div {
        display: flex;
        align-items: center;
        flex-wrap: wrap;
        text-align: center;
        padding: 0.4rem 0; }
      html body .titleBlock.logo_h2 .logo {
        display: inline-block;
        width: 25rem;
        max-width: 100%;
        margin-right: 0.5rem; }
        @media (max-width: 380px) {
          html body .titleBlock.logo_h2 .logo {
            width: 20rem; } }
        html body .titleBlock.logo_h2 .logo img {
          width: 100%;
          height: auto; }
      html body .titleBlock.line b {
        font-family: var(--s-font-helvetica);
        color: #1a1a1a;
        position: relative;
        padding-left: 2rem;
        font-size: 1.125rem;
        font-weight: 600;
        margin-bottom: 0.5rem;
        display: inline-block; }
        html body .titleBlock.line b::after {
          position: absolute;
          top: 50%;
          left: 0;
          transform: translateY(-50%);
          content: "";
          width: 1.5rem;
          height: 3px;
          background-color: #54C3F1; }
      html body .titleBlock.line h2 {
        color: #1a1a1a;
        font-family: var(--YuGothic, sans-serif); }
      html body .titleBlock.line.center {
        text-align: center; }
        html body .titleBlock.line.center b {
          padding-right: 2rem; }
          html body .titleBlock.line.center b::before {
            position: absolute;
            top: 50%;
            right: 0;
            transform: translateY(-50%);
            content: "";
            width: 1.5rem;
            height: 3px;
            background-color: #54C3F1; }
      html body .titleBlock.line.line_white b::after, html body .titleBlock.line.line_white b::before {
        background-color: #fff; }
      html body .titleBlock.white h2, html body .titleBlock.white p, html body .titleBlock.white h3, html body .titleBlock.white h4, html body .titleBlock.white b {
        color: #fff; }
      html body .titleBlock.navy h2, html body .titleBlock.navy p, html body .titleBlock.navy h3, html body .titleBlock.navy h4, html body .titleBlock.navy b {
        color: #173D8C; }
      html body .titleBlock.center h2, html body .titleBlock.center p, html body .titleBlock.center h3, html body .titleBlock.center h4, html body .titleBlock.center b {
        text-align: center; }
      html body .titleBlock.b_big b {
        font-size: 3rem;
        color: #173D8C; }
      html body .titleBlock.b_big h2 {
        font-size: 1.125rem; }
      html body .titleBlock.b_big.center b {
        text-align: center;
        display: block;
        padding-bottom: 0.5rem; }
      html body .titleBlock.b_big.center h2 {
        text-align: center; }
      html body .titleBlock.flex {
        display: flex;
        align-items: flex-end;
        flex-wrap: wrap; }
        html body .titleBlock.flex b {
          padding-right: 1rem; }
        html body .titleBlock.flex .text {
          width: 100%; }
        html body .titleBlock.flex h2 {
          font-size: 1.25rem;
          display: inline-block;
          margin: 0; }
      html body .titleBlock h2.white, html body .titleBlock p.white, html body .titleBlock h3.white, html body .titleBlock h4.white, html body .titleBlock b.white {
        color: #fff; }
      html body .titleBlock h2.navy, html body .titleBlock p.navy, html body .titleBlock h3.navy, html body .titleBlock h4.navy, html body .titleBlock b.navy {
        color: #173D8C; }
    html body .leftSlide {
      clip-path: inset(0 100% 0 0);
      transition: 1s cubic-bezier(0.37, 0, 0.63, 1);
      transition-property: clip-path;
      opacity: 0; }
      html body .leftSlide.animated {
        opacity: 1;
        clip-path: inset(0); }
    html body .rightSlide {
      clip-path: inset(0 0 0 100%);
      transition: 1s cubic-bezier(0.37, 0, 0.63, 1);
      transition-property: clip-path;
      opacity: 0; }
      html body .rightSlide.animated {
        opacity: 1;
        clip-path: inset(0); }
    html body .line_anime {
      display: inline-block !important;
      overflow: hidden;
      position: relative;
      transition: all ease 0.5s;
      clip-path: polygon(0% 0, 0% 0%, 0% 100%, 0 100%); }
      html body .line_anime::after {
        content: "";
        display: block;
        width: 100%;
        height: 100%;
        top: 0;
        position: absolute;
        right: 0;
        background: rgba(0, 0, 0, 0);
        transition: all ease 0.5s;
        animation-delay: 0.5s; }
    html body .animated .line_anime {
      clip-path: polygon(0% 0, 100% 0%, 100% 100%, 0 100%); }
      html body .animated .line_anime::after {
        width: 100%;
        animation: h2SpanAnimation 0.5s linear forwards;
        animation-delay: 0.5s; }
@keyframes h2SpanAnimation {
  from {
    right: 0; }
  to {
    width: 0; } }
    html body .white_round {
      overflow: hidden;
      position: relative;
      z-index: 3;
      margin-top: -5rem; }
      html body .white_round .round {
        background-color: #fff;
        height: 10rem;
        width: 110%;
        border-radius: 50%;
        margin-left: -5%; }
    html body .round_area {
      position: relative;
      z-index: 4;
      padding-bottom: 0; }
    html body .round_padding {
      padding-top: 8rem;
      margin-top: -5rem; }
    html body ul.point_list {
      display: grid;
      grid-template-columns: repeat(1, 1fr);
      margin: 6rem 0 4rem 0;
      gap: 3rem; }
      @media (max-width: 767px) {
        html body ul.point_list {
          gap: 2rem; } }
      html body ul.point_list li {
        display: flex;
        justify-content: space-between;
        background-color: #fff; }
        html body ul.point_list li .text {
          width: 50%; }
          @media (max-width: 767px) {
            html body ul.point_list li .text {
              width: 100%; } }
          html body ul.point_list li .text .box {
            position: relative;
            z-index: 4;
            width: calc(100% + 1.5rem);
            padding: 3rem 0 1rem 1.5rem;
            border-radius: 0.5rem;
            background: linear-gradient(to bottom, #DDF9FF, #DDE7FF);
            margin-left: -1.5rem;
            min-height: 60%; }
            @media (max-width: 767px) {
              html body ul.point_list li .text .box {
                width: 100%;
                z-index: 6;
                padding: 2rem 0;
                margin: 0 !important; } }
            html body ul.point_list li .text .box h3 {
              border-bottom: 2px solid #173D8C;
              padding: 0 1rem 0.5rem 1rem;
              margin-bottom: 1rem;
              color: #173D8C;
              font-size: 1.5rem;
              font-weight: 600; }
              @media (max-width: 767px) {
                html body ul.point_list li .text .box h3 {
                  font-size: 1.25rem; } }
            html body ul.point_list li .text .box p {
              padding: 0 1rem; }
            html body ul.point_list li .text .box b {
              font-family: var(--s-font-helvetica);
              color: #173D8C;
              position: absolute;
              top: -2rem;
              left: 0.5rem;
              font-size: 3rem;
              font-weight: 600;
              display: inline-block; }
              @media (max-width: 767px) {
                html body ul.point_list li .text .box b {
                  top: -2.5rem; } }
        html body ul.point_list li figure {
          overflow: hidden;
          width: 50%;
          display: flex;
          align-items: center;
          justify-content: center;
          margin-top: 3rem;
          background-color: #fff;
          box-shadow: 0px 0px 10px 4px rgba(110, 188, 255, 0.5);
          border-radius: 0.5rem;
          padding: 2rem;
          display: flex;
          justify-content: center;
          align-items: center;
          position: relative;
          z-index: 5; }
          @media (max-width: 767px) {
            html body ul.point_list li figure {
              padding: 1rem;
              box-shadow: 0px 0px 10px 0px rgba(110, 188, 255, 0.5);
              width: 90%;
              margin: 0 auto 1rem auto; } }
        @media (max-width: 767px) {
          html body ul.point_list li {
            display: block; } }
        html body ul.point_list li:nth-of-type(even) {
          flex-direction: row-reverse; }
          html body ul.point_list li:nth-of-type(even) .box {
            padding: 3rem 2rem 1.5rem 0;
            margin-left: 0; }
            @media (max-width: 767px) {
              html body ul.point_list li:nth-of-type(even) .box {
                padding: 2rem 0; } }
    html body ul.voice_list {
      display: grid;
      grid-template-columns: repeat(2, 1fr);
      margin: 2rem 0 0 0;
      gap: 1.5rem; }
      @media (max-width: 767px) {
        html body ul.voice_list {
          grid-template-columns: repeat(1, 1fr); } }
      html body ul.voice_list li {
        display: flex;
        flex-direction: column;
        justify-content: space-between; }
        html body ul.voice_list li .fukidashi {
          background-color: #fff;
          box-shadow: 0px 8px 10px 4px rgba(110, 188, 255, 0.5);
          padding: 1rem 1rem 4rem 1rem;
          position: relative;
          border-radius: 0.5rem;
          flex-grow: 1; }
          @media (max-width: 767px) {
            html body ul.voice_list li .fukidashi {
              box-shadow: 0px 8px 10px 0px rgba(110, 188, 255, 0.5); } }
          html body ul.voice_list li .fukidashi::after {
            content: "";
            position: absolute;
            bottom: -1.9rem;
            left: 28%;
            width: 3rem;
            height: 2rem;
            min-width: 3rem;
            min-height: 2rem;
            background-color: #fff;
            clip-path: polygon(30% 0, 0% 100%, 100% 0); }
          html body ul.voice_list li .fukidashi h3 {
            padding: 0 0 1rem 0;
            font-size: 1.125rem;
            font-weight: 600;
            color: #173D8C; }
          html body ul.voice_list li .fukidashi p {
            font-size: 0.875rem; }
          html body ul.voice_list li .fukidashi b {
            width: 73%;
            color: #173D8C;
            text-align: right;
            position: absolute;
            bottom: 1rem;
            right: 1rem;
            font-size: 0.875rem; }
        html body ul.voice_list li figure {
          width: 25%;
          pointer-events: none;
          margin-top: -3rem;
          position: relative;
          z-index: 2; }
    html body ul.work_list {
      display: flex;
      justify-content: center;
      flex-wrap: wrap; }
      html body ul.work_list li {
        margin: 0 0.5rem 1rem 0.5rem;
        width: 9em;
        background-color: #707070;
        color: #fff;
        font-weight: 600;
        text-align: center;
        padding: 0.25rem; }
        html body ul.work_list li:last-of-type {
          margin-right: none; }
        @media (max-width: 1346px) {
          html body ul.work_list li {
            font-size: 0.875rem; } }
    html body ul.support_list {
      display: grid;
      grid-template-columns: repeat(4, 1fr);
      margin: 0 0 1rem 0;
      gap: 1rem; }
      @media (max-width: 1346px) {
        html body ul.support_list {
          grid-template-columns: repeat(2, 1fr); } }
      html body ul.support_list li {
        padding: 2rem 1rem;
        border: 2px solid #fff;
        border-radius: 0.5rem;
        text-align: center; }
        html body ul.support_list li b {
          font-weight: 600;
          font-size: 1.25rem;
          font-family: var(--s-font-helvetica);
          background: linear-gradient(to bottom, #DDF9FF, #DDE7FF);
          -webkit-background-clip: text;
          -webkit-text-fill-color: transparent;
          /* Firefox用 */
          background-clip: text;
          color: transparent; }
        html body ul.support_list li h3 {
          font-size: 1.25rem;
          padding: 1rem 0;
          font-weight: 600; }
        html body ul.support_list li p {
          font-size: 0.875rem; }
    html body ul.function_list {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      margin-top: 1rem;
      gap: 1.5rem; }
      @media (max-width: 1346px) {
        html body ul.function_list {
          gap: 1rem; } }
      @media (max-width: 767px) {
        html body ul.function_list {
          grid-template-columns: repeat(2, 1fr); } }
      html body ul.function_list li.block {
        background-color: #fff;
        box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.2);
        border-radius: 0.5rem;
        overflow: hidden;
        margin-bottom: 0.5rem; }
        html body ul.function_list li.block h3 {
          padding: 1rem 1rem 0.8rem 1rem;
          text-align: center;
          color: #173D8C;
          font-size: 1.125rem;
          font-weight: 600;
          position: relative; }
          html body ul.function_list li.block h3::after {
            position: absolute;
            height: 3px;
            width: 100%;
            content: "";
            background: linear-gradient(to right, #54C3F1, #0097E0);
            bottom: 0;
            left: 0; }
        html body ul.function_list li.block figure {
          width: 100%;
          padding-top: 60%;
          position: relative;
          overflow: hidden;
          margin: 0; }
          html body ul.function_list li.block figure img {
            position: absolute;
            width: 100%;
            height: 100%;
            object-fit: cover;
            top: 0;
            left: 0; }
        html body ul.function_list li.block .text {
          padding: 1rem 2rem 2rem 2rem; }
          @media (max-width: 1346px) {
            html body ul.function_list li.block .text {
              padding: 1rem 1rem 2rem 1rem; } }
    html body ul.image_list {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      margin-top: 2rem;
      gap: 1.5rem;
      position: relative;
      z-index: 2; }
      @media (max-width: 1346px) {
        html body ul.image_list {
          gap: 1rem; } }
      @media (max-width: 767px) {
        html body ul.image_list {
          grid-template-columns: repeat(1, 1fr);
          width: 90%;
          margin: 2rem auto 0 auto;
          gap: 1.5rem; } }
      html body ul.image_list li {
        background-color: #fff;
        box-shadow: 0px 0px 10px 4px rgba(110, 188, 255, 0.5);
        border-radius: 0.5rem;
        overflow: hidden;
        display: flex;
        flex-direction: column;
        justify-content: space-between; }
        @media (max-width: 767px) {
          html body ul.image_list li {
            box-shadow: 0px 0px 10px 0px rgba(110, 188, 255, 0.5); } }
        html body ul.image_list li figure {
          width: 100%;
          padding-top: 56%;
          position: relative;
          overflow: hidden;
          border-radius: 0.5rem 0.5rem 0 0;
          margin: 0; }
          html body ul.image_list li figure img {
            position: absolute;
            width: 100%;
            height: 100%;
            object-fit: cover;
            top: 0;
            left: 0; }
        html body ul.image_list li h3 {
          padding: 1rem;
          text-align: center;
          font-size: 1.125rem;
          font-weight: 600;
          color: #173D8C;
          flex-grow: 1;
          display: flex;
          justify-content: center;
          align-items: center; }
          @media (max-width: 1346px) {
            html body ul.image_list li h3 br {
              display: none; } }
          @media (max-width: 767px) {
            html body ul.image_list li h3 br {
              display: inline-block; } }
    html body br.sp {
      display: none; }
      @media (max-width: 767px) {
        html body br.sp {
          display: inline-block; } }
    html body br.pc_none {
      display: inline-block; }
      @media (max-width: 1346px) {
        html body br.pc_none {
          display: none; } }
    html body br.tb_none {
      display: inline-block; }
      @media (max-width: 959px) {
        html body br.tb_none {
          display: none; } }
    html body br.sp_none {
      display: inline-block; }
      @media (max-width: 767px) {
        html body br.sp_none {
          display: none; } }
    html body .coverBlock {
      background-color: #54C3F1;
      padding: 1rem 0;
      color: #fff;
      overflow: hidden; }
      html body .coverBlock .logo {
        width: 100%;
        display: block;
        margin: 1rem 0 1.5rem 0;
        max-width: 30rem; }
        @media (max-width: 767px) {
          html body .coverBlock .logo {
            max-width: 100%; } }
      html body .coverBlock b {
        font-size: min(5vw, 1.25rem);
        white-space: nowrap; }
        @media (max-width: 1346px) {
          html body .coverBlock b {
            font-size: min(5vw, 1.125rem); } }
        @media (max-width: 767px) {
          html body .coverBlock b {
            font-size: min(5vw, 1.25rem); } }
      @media (max-width: 767px) {
        html body .coverBlock .titleBlock {
          padding: 2rem 0; } }
      html body .coverBlock .titleBlock h1.title {
        color: #1a1a1a;
        line-height: 1.1;
        font-size: min(7vw, 4.25rem);
        letter-spacing: 0.02em;
        line-height: 1.1;
        white-space: nowrap; }
        @media (max-width: 1346px) {
          html body .coverBlock .titleBlock h1.title {
            font-size: min(6vw, 3.5rem); } }
        @media (max-width: 1100px) {
          html body .coverBlock .titleBlock h1.title {
            font-size: min(6vw, 3rem); } }
        @media (max-width: 959px) {
          html body .coverBlock .titleBlock h1.title {
            font-size: min(8vw, 4.25rem); } }
        @media (max-width: 767px) {
          html body .coverBlock .titleBlock h1.title {
            font-size: min(12vw, 8rem); } }
      html body .coverBlock .innerFlex {
        display: flex;
        justify-content: space-between;
        align-items: center; }
        @media (max-width: 959px) {
          html body .coverBlock .innerFlex {
            padding-top: 0;
            flex-direction: column;
            align-items: center;
            justify-content: flex-start; } }
        html body .coverBlock .innerFlex div.block {
          position: relative;
          z-index: 3;
          width: 42%; }
          @media (max-width: 1100px) {
            html body .coverBlock .innerFlex div.block {
              width: 50%; } }
          @media (max-width: 959px) {
            html body .coverBlock .innerFlex div.block {
              width: 100%; } }
        html body .coverBlock .innerFlex figure.block {
          width: 58%;
          z-index: 2;
          position: relative;
          margin-top: 3rem; }
          @media (max-width: 1100px) {
            html body .coverBlock .innerFlex figure.block {
              width: 50%; } }
          @media (max-width: 959px) {
            html body .coverBlock .innerFlex figure.block {
              margin: 2rem 0 0 auto;
              width: 80%; } }
          @media (max-width: 767px) {
            html body .coverBlock .innerFlex figure.block {
              width: 100%;
              margin: 1rem 0 0 0; } }
          html body .coverBlock .innerFlex figure.block img.pc {
            width: 100%;
            height: auto; }
          html body .coverBlock .innerFlex figure.block .mark {
            width: 20%;
            position: absolute; }
            html body .coverBlock .innerFlex figure.block .mark.mark01 {
              top: 1%;
              left: 20%; }
            html body .coverBlock .innerFlex figure.block .mark.mark02 {
              top: -5%;
              right: -2%; }
            html body .coverBlock .innerFlex figure.block .mark.mark03 {
              top: 39%;
              left: 11%; }
            html body .coverBlock .innerFlex figure.block .mark.mark04 {
              top: 56%;
              right: 5%; }
            html body .coverBlock .innerFlex figure.block .mark img {
              width: 100%;
              height: auto;
              position: relative;
              z-index: 5; }
    html body figure.pc {
      max-width: 50rem;
      margin: 0 auto 4rem auto; }
    html body figure.point {
      margin: 1.5rem 0 0 0; }
      html body figure.point img.pc {
        display: block; }
        @media (max-width: 959px) {
          html body figure.point img.pc {
            display: none; } }
      html body figure.point img.sp {
        display: none; }
        @media (max-width: 959px) {
          html body figure.point img.sp {
            display: block; } }
    html body .video_width {
      width: 100%;
      max-width: 55rem;
      margin: 0 auto;
      padding: 1rem 0; }
      html body .video_width .video_padding {
        width: 100%;
        position: relative;
        padding-top: 56.25%;
        height: 0;
        overflow: hidden; }
        html body .video_width .video_padding iframe, html body .video_width .video_padding img, html body .video_width .video_padding video {
          position: absolute;
          top: 0;
          left: 0;
          width: 100%;
          height: 100%; }
    html body summary {
      cursor: pointer; }
      html body summary::marker {
        display: none !important;
        content: "" !important; }
    html body summary::-webkit-details-marker {
      display: none; }
    html body .faqBlock {
      display: grid;
      grid-template-columns: repeat(1, 1fr);
      margin: 1.5rem auto;
      gap: 1rem;
      align-items: flex-start; }
      html body .faqBlock details {
        background-color: #fff;
        border-radius: 0.5rem;
        cursor: pointer;
        line-height: 1.8;
        display: flex;
        flex-direction: column;
        height: 100%; }
        html body .faqBlock details summary.faq_q {
          border-radius: 0.5rem;
          background-color: #fff;
          border: 2px solid #173D8C;
          display: block;
          list-style: none !important;
          padding: 1rem;
          padding-left: 3.75rem;
          padding-right: 3.75rem;
          position: relative;
          z-index: 2;
          font-weight: 600; }
          html body .faqBlock details summary.faq_q::marker {
            display: none !important;
            content: "" !important; }
          html body .faqBlock details summary.faq_q .plus {
            position: absolute;
            width: 3.75rem;
            height: 100%;
            top: 0;
            right: 0;
            transform: scale(0.8);
            pointer-events: none; }
            html body .faqBlock details summary.faq_q .plus::after, html body .faqBlock details summary.faq_q .plus::before {
              position: absolute;
              width: 1.25rem;
              height: 3px;
              content: "";
              display: block;
              background-color: #173D8C; }
            html body .faqBlock details summary.faq_q .plus::before {
              right: 0.98rem;
              top: 1.75rem; }
            html body .faqBlock details summary.faq_q .plus::after {
              width: 3px;
              height: 1.25rem;
              top: 1.25rem;
              right: 1.5rem; }
          html body .faqBlock details summary.faq_q::before {
            position: absolute;
            top: 0.65rem;
            left: 0.6rem;
            content: "";
            width: 2.5rem;
            height: 2.5rem;
            display: block;
            background-image: url("/dk-connect-bm/pict/q.svg");
            background-position: center;
            background-size: contain; }
        html body .faqBlock details .faq_a {
          flex-grow: 1;
          padding: 1rem;
          padding-left: 3.75rem;
          padding-top: 1.8rem;
          border-radius: 0.5rem;
          background-color: #F0F0F0;
          border-radius: 0.5rem;
          border: 2px solid #173D8C;
          position: relative;
          margin-top: -0.8rem;
          font-size: 0.875rem; }
          html body .faqBlock details .faq_a::before {
            position: absolute;
            top: 1.4rem;
            left: 0.6rem;
            content: "";
            width: 2.5rem;
            height: 2.5rem;
            display: block;
            background-image: url("/dk-connect-bm/pict/a.svg");
            background-position: center;
            background-size: contain; }
      html body .faqBlock details[open] {
        background-color: #fff; }
      html body .faqBlock details[open] summary.faq_q {
        padding-bottom: 1rem; }
        html body .faqBlock details[open] summary.faq_q .plus::after {
          display: none; }
    html body .sideBlock .block {
      background-color: #F0F0F0;
      height: 100%; }
      @media (max-width: 767px) {
        html body .sideBlock .block {
          display: none; }
          html body .sideBlock .block.show {
            position: fixed;
            width: 100%;
            height: calc(100vh - 4em);
            top: 4em;
            left: 0;
            display: block;
            z-index: 201;
            overflow-y: scroll; }
            html body .sideBlock .block.show h2 {
              position: static; } }
    html body .sideBlock .formArea {
      position: sticky;
      top: 0;
      right: 0;
      padding: 0 0 2rem 0;
      overflow-y: auto;
      height: 100vh; }
      @media (max-width: 1346px) {
        html body .sideBlock .formArea {
          padding: 0 0 2rem 0; } }
      @media (max-width: 767px) {
        html body .sideBlock .formArea {
          position: static;
          height: auto; } }
      html body .sideBlock .formArea dl, html body .sideBlock .formArea .checkBlock, html body .sideBlock .formArea .text {
        padding: 0.5rem 1rem; }
      html body .sideBlock .formArea .a_btn {
        padding: 0 1rem; }
        html body .sideBlock .formArea .a_btn .btn {
          margin: 0; }
    html body .formDl {
      max-width: 840px;
      margin: 0 auto; }
      @media (max-width: 767px) {
        html body .formDl {
          max-width: 100%; } }
      html body .formDl .title {
        padding-top: 4em; }
        @media (max-width: 767px) {
          html body .formDl .title {
            padding-top: 0; } }
      html body .formDl h2 {
        position: fixed;
        top: 0;
        right: 0;
        font-weight: 600;
        text-align: center;
        background-color: #fff;
        height: 4em;
        width: 300px;
        font-size: 1rem;
        color: #173D8C;
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        z-index: 20; }
        @media (min-width: 2000px) {
          html body .formDl h2 {
            width: 500px; } }
        @media (max-width: 959px) {
          html body .formDl h2 {
            width: 200px; } }
        @media (max-width: 767px) {
          html body .formDl h2 {
            width: 100%;
            padding: 0 1rem;
            text-align: left;
            flex-direction: inherit;
            justify-content: flex-start;
            align-content: center;
            font-size: 1.25rem; } }
        html body .formDl h2 span {
          display: block;
          font-size: 0.875rem; }
          @media (max-width: 767px) {
            html body .formDl h2 span {
              font-size: 1rem;
              margin-left: 0.5rem; } }
      html body .formDl .contentInclude {
        padding: 1rem; }
        html body .formDl .contentInclude ul li {
          font-weight: 600;
          font-size: 0.875rem; }
          @media (max-width: 767px) {
            html body .formDl .contentInclude ul li {
              font-size: 1rem; } }
      html body .formDl .text p {
        font-size: 0.75rem; }
        @media (max-width: 767px) {
          html body .formDl .text p {
            font-size: 0.875rem; } }
      html body .formDl .smpForm {
        padding: 1rem; }
        @media (max-width: 767px) {
          html body .formDl .smpForm {
            width: 100%; } }
        html body .formDl .smpForm form input,
        html body .formDl .smpForm form button,
        html body .formDl .smpForm form select,
        html body .formDl .smpForm form textarea {
          -webkit-appearance: none;
          -moz-appearance: none;
          appearance: none;
          background: transparent;
          border: none;
          border-radius: 0;
          margin: 0;
          font: inherit;
          outline: none; }
        html body .formDl .smpForm form input, html body .formDl .smpForm form textarea {
          background-color: #fff;
          width: 100%;
          font-size: 16px !important;
          padding: 0.4rem 0.5rem;
          border-radius: 2px; }
          html body .formDl .smpForm form input:focus, html body .formDl .smpForm form textarea:focus {
            outline: 2px solid #0097E0;
            background-color: #DEF4FF; }
        html body .formDl .smpForm form select {
          background-color: #fff;
          width: 100%;
          font-size: 16px !important;
          padding: 0.4rem 0.5rem;
          border-radius: 2px; }
          html body .formDl .smpForm form select:focus {
            outline: 2px solid #0097E0; }
        html body .formDl .smpForm form textarea {
          field-sizing: content;
          min-height: 3lh;
          width: 100%; }
          html body .formDl .smpForm form textarea:focus {
            outline: 2px solid #0097E0;
            background-color: #DEF4FF; }
        html body .formDl .smpForm form input[type=checkbox], html body .formDl .smpForm form input[type=radio] {
          width: 1.75rem;
          height: 1.75rem;
          min-width: 1.75rem;
          min-height: 1.75rem;
          border-radius: 0;
          accent-color: #54C3F1;
          margin-right: 0.5rem;
          position: relative;
          cursor: pointer; }
          html body .formDl .smpForm form input[type=checkbox]:focus, html body .formDl .smpForm form input[type=radio]:focus {
            outline: 2px solid #0097E0;
            background-color: #DEF4FF; }
          html body .formDl .smpForm form input[type=checkbox]:checked, html body .formDl .smpForm form input[type=radio]:checked {
            background-color: #0097E0; }
            html body .formDl .smpForm form input[type=checkbox]:checked::after, html body .formDl .smpForm form input[type=radio]:checked::after {
              position: absolute;
              top: 0.5rem;
              left: 0.3rem;
              content: '';
              width: 1rem;
              height: 0.5rem;
              border-left: 3px solid #fff;
              border-bottom: 3px solid #fff;
              transform: rotate(-45deg); }
          html body .formDl .smpForm form input[type=checkbox]:focus, html body .formDl .smpForm form input[type=radio]:focus {
            outline: none; }
        html body .formDl .smpForm form input[type=radio] {
          border-radius: 20rem; }
        html body .formDl .smpForm form input[type=button] {
          border: none;
          cursor: pointer;
          color: #fff;
          font-weight: 600;
          border-radius: 0;
          margin: 0.5rem auto;
          font-size: 1.25rem;
          max-width: 25rem;
          border-radius: 2px;
          width: 100%;
          padding: 1rem;
          background: linear-gradient(to right, #54C3F1, #0097E0);
          display: flex;
          align-items: center;
          justify-content: center;
          -webkit-transition: all ease 0.5s;
          transition: all ease 0.5s;
          font-size: 1.125rem; }
          html body .formDl .smpForm form input[type=button]:hover {
            opacity: 0.8; }
        html body .formDl .smpForm form .ss_container .ss_contents .ss_visitor_form fieldset {
          margin-top: 0;
          background: none;
          border: none;
          padding: 0 0 0.5rem 0; }
          html body .formDl .smpForm form .ss_container .ss_contents .ss_visitor_form fieldset .ss_form_title {
            font-size: 0.875rem;
            padding: 0 0 0.25rem 0;
            font-weight: 600;
            width: 100%; }
            html body .formDl .smpForm form .ss_container .ss_contents .ss_visitor_form fieldset .ss_form_title .ss_user_notnull {
              font-weight: 600;
              transform: scale(0.8);
              display: inline-block;
              color: #FF3838;
              margin-left: 0.25rem; }
          html body .formDl .smpForm form .ss_container .ss_contents .ss_visitor_form fieldset .ss_grid {
            display: flex;
            flex-wrap: wrap;
            align-items: center; }
            html body .formDl .smpForm form .ss_container .ss_contents .ss_visitor_form fieldset .ss_grid .ss_input {
              width: 100%;
              display: flex;
              flex-wrap: wrap;
              align-items: center;
              font-size: 0.875rem; }
              html body .formDl .smpForm form .ss_container .ss_contents .ss_visitor_form fieldset .ss_grid .ss_input input[type=checkbox], html body .formDl .smpForm form .ss_container .ss_contents .ss_visitor_form fieldset .ss_grid .ss_input input[type=radio] {
                margin-left: 1rem; }
                html body .formDl .smpForm form .ss_container .ss_contents .ss_visitor_form fieldset .ss_grid .ss_input input[type=checkbox]:first-of-type, html body .formDl .smpForm form .ss_container .ss_contents .ss_visitor_form fieldset .ss_grid .ss_input input[type=radio]:first-of-type {
                  margin-left: 0; }
              html body .formDl .smpForm form .ss_container .ss_contents .ss_visitor_form fieldset .ss_grid .ss_input .ss_warning_label {
                margin: 0 0.25rem 0.25rem 0; }
              html body .formDl .smpForm form .ss_container .ss_contents .ss_visitor_form fieldset .ss_grid .ss_input .ss_error_msg, html body .formDl .smpForm form .ss_container .ss_contents .ss_visitor_form fieldset .ss_grid .ss_input .errorMsg {
                margin: 0 0 0.25rem 0; }
              html body .formDl .smpForm form .ss_container .ss_contents .ss_visitor_form fieldset .ss_grid .ss_input .ss_upComment {
                margin: 0 0 0.25rem 0;
                width: 100%; }
              html body .formDl .smpForm form .ss_container .ss_contents .ss_visitor_form fieldset .ss_grid .ss_input .ss_leftComment {
                margin: 0 0.25rem 0 0; }
              html body .formDl .smpForm form .ss_container .ss_contents .ss_visitor_form fieldset .ss_grid .ss_input .ss_rightComment {
                margin: 0 0 0 0.25rem; }
          html body .formDl .smpForm form .ss_container .ss_contents .ss_visitor_form fieldset.ss_required_field .ss_input .ss_upComment br {
            display: none; }
          html body .formDl .smpForm form .ss_container .ss_contents .ss_visitor_form fieldset.ss_required_field .ss_input .ss_upComment span {
            display: flex;
            flex-wrap: wrap; }
            html body .formDl .smpForm form .ss_container .ss_contents .ss_visitor_form fieldset.ss_required_field .ss_input .ss_upComment span font, html body .formDl .smpForm form .ss_container .ss_contents .ss_visitor_form fieldset.ss_required_field .ss_input .ss_upComment span a {
              margin: 0.5rem 0.25rem 0.5rem 0; }
            html body .formDl .smpForm form .ss_container .ss_contents .ss_visitor_form fieldset.ss_required_field .ss_input .ss_upComment span a {
              margin: 0.5rem 0;
              color: #173D8C;
              text-decoration: underline; }
              html body .formDl .smpForm form .ss_container .ss_contents .ss_visitor_form fieldset.ss_required_field .ss_input .ss_upComment span a:hover {
                text-decoration: none; }
          html body .formDl .smpForm form .ss_container .ss_contents .ss_visitor_form fieldset#ss_prefecture_master_id .ss_input {
            position: relative; }
            html body .formDl .smpForm form .ss_container .ss_contents .ss_visitor_form fieldset#ss_prefecture_master_id .ss_input::after {
              content: "";
              width: 8px;
              height: 8px;
              border-top: solid 2px #0097E0;
              border-right: solid 2px #0097E0;
              position: absolute;
              -webkit-transform: translateY(-50%) rotate(135deg);
              transform: translateY(-50%) rotate(135deg);
              right: 0.5rem;
              top: 50%;
              pointer-events: none; }
            html body .formDl .smpForm form .ss_container .ss_contents .ss_visitor_form fieldset#ss_prefecture_master_id .ss_input select {
              padding-right: 1.5rem; }
          html body .formDl .smpForm form .ss_container .ss_contents .ss_visitor_form fieldset#ss_company_name .ss_input .ss_upComment, html body .formDl .smpForm form .ss_container .ss_contents .ss_visitor_form fieldset#ss_tel .ss_input .ss_upComment, html body .formDl .smpForm form .ss_container .ss_contents .ss_visitor_form fieldset#ss_name .ss_input .ss_upComment {
            display: none; }
          html body .formDl .smpForm form .ss_container .ss_contents .ss_visitor_form fieldset#ss_name .ss_grid {
            display: flex;
            align-items: flex-start;
            justify-content: space-between;
            flex-wrap: wrap; }
          html body .formDl .smpForm form .ss_container .ss_contents .ss_visitor_form fieldset#ss_name .ss_input {
            display: flex;
            flex-wrap: wrap;
            align-items: center;
            width: calc((100% - 0.5rem)/2); }
            @media (max-width: 959px) {
              html body .formDl .smpForm form .ss_container .ss_contents .ss_visitor_form fieldset#ss_name .ss_input {
                width: 100%; }
                html body .formDl .smpForm form .ss_container .ss_contents .ss_visitor_form fieldset#ss_name .ss_input:first-of-type {
                  padding-bottom: 0.5rem; } }
            @media (max-width: 767px) {
              html body .formDl .smpForm form .ss_container .ss_contents .ss_visitor_form fieldset#ss_name .ss_input {
                width: calc((100% - 0.5rem)/2); }
                html body .formDl .smpForm form .ss_container .ss_contents .ss_visitor_form fieldset#ss_name .ss_input:first-of-type {
                  padding-bottom: 0; } }
            html body .formDl .smpForm form .ss_container .ss_contents .ss_visitor_form fieldset#ss_name .ss_input .ss_rightComment {
              display: none; }
          html body .formDl .smpForm form .ss_container .ss_contents .ss_visitor_form fieldset#ss_name input {
            width: calc(100% - 1.5em); }
          html body .formDl .smpForm form .ss_container .ss_contents .ss_visitor_form fieldset#ss_VisitorData\.attribute115, html body .formDl .smpForm form .ss_container .ss_contents .ss_visitor_form fieldset#ss_VisitorData\.attribute1509, html body .formDl .smpForm form .ss_container .ss_contents .ss_visitor_form fieldset#ss_VisitorData\.attribute1542, html body .formDl .smpForm form .ss_container .ss_contents .ss_visitor_form fieldset#ss_VisitorData\.attribute1575, html body .formDl .smpForm form .ss_container .ss_contents .ss_visitor_form fieldset#ss_VisitorData\.attribute1576, html body .formDl .smpForm form .ss_container .ss_contents .ss_visitor_form fieldset#ss_VisitorData\.attribute1577, html body .formDl .smpForm form .ss_container .ss_contents .ss_visitor_form fieldset#ss_VisitorData\.attribute1578, html body .formDl .smpForm form .ss_container .ss_contents .ss_visitor_form fieldset#ss_VisitorData\.attribute1579, html body .formDl .smpForm form .ss_container .ss_contents .ss_visitor_form fieldset#ss_VisitorData\.attribute1608, html body .formDl .smpForm form .ss_container .ss_contents .ss_visitor_form fieldset#ss_VisitorData\.attribute1839, html body .formDl .smpForm form .ss_container .ss_contents .ss_visitor_form fieldset#ss_VisitorData\.attribute1872, html body .formDl .smpForm form .ss_container .ss_contents .ss_visitor_form fieldset#ss_VisitorData\.attribute1873, html body .formDl .smpForm form .ss_container .ss_contents .ss_visitor_form fieldset#ss_VisitorData\.attribute1905, html body .formDl .smpForm form .ss_container .ss_contents .ss_visitor_form fieldset#ss_VisitorData\.attribute1938, html body .formDl .smpForm form .ss_container .ss_contents .ss_visitor_form fieldset#ss_VisitorData\.attribute2103, html body .formDl .smpForm form .ss_container .ss_contents .ss_visitor_form fieldset#ss_VisitorData\.attribute2268, html body .formDl .smpForm form .ss_container .ss_contents .ss_visitor_form fieldset#ss_permission_type_master_id, html body .formDl .smpForm form .ss_container .ss_contents .ss_visitor_form fieldset #ss_VisitorData\.attribute1807 {
            padding: 0; }
    html body .dlWrap {
      margin: 1.5rem 0;
      line-height: 1.8;
      display: flex;
      justify-content: space-between;
      flex-wrap: wrap; }
      html body .dlWrap.navy {
        color: #173D8C; }
      html body .dlWrap dl {
        display: flex;
        padding: 0.5rem 0;
        font-size: 0.875rem;
        width: calc((100% - 2rem)/2); }
        @media (max-width: 767px) {
          html body .dlWrap dl {
            width: 100%; } }
        html body .dlWrap dl:last-of-type {
          border-bottom: none;
          width: 100%; }
        html body .dlWrap dl dt {
          padding: 0.5rem 0;
          font-weight: 600;
          border-right: 1px solid #173D8C;
          min-width: 5em; }
        html body .dlWrap dl dd {
          width: calc(100% - 7em);
          padding: 0.5rem 0 0.5rem 1rem; }
          html body .dlWrap dl dd ul li::before {
            background-color: #173D8C;
            top: 0.62em; }
    html body .contentInclude *:first-child {
      margin-top: 0 !important; }
    html body .contentInclude *:last-child {
      margin-bottom: 0 !important; }
    html body .contentInclude p a, html body .contentInclude span a, html body .contentInclude ol li a, html body .contentInclude ul li a {
      color: #0097E0;
      display: inline; }
    html body .contentInclude p.red, html body .contentInclude span.red, html body .contentInclude ol li.red, html body .contentInclude ul li.red {
      color: #FF3838; }
    html body .contentInclude ol li h2, html body .contentInclude ol li h3, html body .contentInclude ol li h4, html body .contentInclude ol li h5, html body .contentInclude ol li h6, html body .contentInclude ul li h2, html body .contentInclude ul li h3, html body .contentInclude ul li h4, html body .contentInclude ul li h5, html body .contentInclude ul li h6 {
      margin-bottom: 0.5rem;
      font-size: 1rem; }
    html body .contentInclude ol li P, html body .contentInclude ul li P {
      margin: 0 0 1.5rem 0 !important; }
    html body .contentInclude p {
      line-height: 2;
      margin: 1.5rem 0; }
      html body .contentInclude p.center {
        text-align: center; }
    html body .contentInclude ul {
      margin: 1.5rem 0 0 0;
      text-align: left; }
      html body .contentInclude ul li {
        margin: 0.5rem 0;
        padding-left: 1.5em;
        position: relative;
        font-size: 0.875rem; }
        html body .contentInclude ul li:first-of-type {
          margin: 0 0 0.5rem 0; }
        html body .contentInclude ul li:last-of-type {
          margin: 0.5rem 0 0 0; }
        html body .contentInclude ul li::before {
          position: absolute;
          top: 0.51em;
          left: 0.05rem;
          content: "";
          background-color: #54C3F1;
          border-radius: 50%;
          height: 0.5em;
          width: 0.5em;
          min-height: 0.5em;
          min-width: 0.5em; }
      html body .contentInclude ul.white {
        color: #fff; }
        html body .contentInclude ul.white li::before {
          background-color: #fff; }
      html body .contentInclude ul.big li {
        font-size: 1.125rem; }
    html body .text_img_flex {
      display: flex;
      flex-wrap: wrap;
      justify-content: space-between;
      align-items: flex-start;
      margin: 1.5rem 0; }
      html body .text_img_flex .text {
        width: 50%; }
        @media (max-width: 767px) {
          html body .text_img_flex .text {
            width: 100%; } }
      html body .text_img_flex figure {
        overflow: hidden;
        margin-top: 0;
        width: calc((100% - 2rem)/2); }
        @media (max-width: 767px) {
          html body .text_img_flex figure {
            width: 100%;
            margin-top: 1.5rem; } }
        html body .text_img_flex figure.sticky {
          position: sticky;
          top: 5em;
          right: 0; }
          @media (max-width: 767px) {
            html body .text_img_flex figure.sticky {
              position: static; } }
        @media (max-width: 767px) {
          html body .text_img_flex figure.sp_max80 {
            max-width: 80%;
            margin: 1.5rem auto 0 auto; } }
    html body .jump_id {
      display: block;
      margin-top: -6em !important;
      padding-top: 6em !important;
      pointer-events: none; }
      @media (max-width: 767px) {
        html body .jump_id {
          margin-top: -5em !important;
          padding-top: 5em !important; } }
    html body section {
      padding: 6em 0; }
      @media (max-width: 767px) {
        html body section {
          padding: 5em 0; } }
      html body section.top {
        padding-top: 0; }
      html body section.hidden {
        display: none !important; }
      html body section.back_blue {
        background-color: #54C3F1; }
      html body section.back_gray {
        background-color: #F5F5F5; }
      html body section.back_gradation {
        background: linear-gradient(to bottom, #DDF9FF, #DDE7FF); }
      html body section.back_image {
        background-position: center;
        background-size: cover;
        background-repeat: no-repeat; }
        html body section.back_image.f_navy {
          position: relative; }
          html body section.back_image.f_navy::after {
            position: absolute;
            content: "";
            background-color: #1C3967;
            width: 100%;
            height: 100%;
            top: 0;
            left: 0;
            opacity: 0.8;
            mix-blend-mode: multiply;
            display: block;
            pointer-events: none; }
          html body section.back_image.f_navy .pageWidth {
            position: relative;
            z-index: 5;
            color: #fff; }
        html body section.back_image.f_white {
          position: relative; }
          html body section.back_image.f_white::after {
            position: absolute;
            content: "";
            background-color: #fff;
            width: 100%;
            height: 100%;
            top: 0;
            left: 0;
            opacity: 0.7;
            display: block;
            pointer-events: none; }
          html body section.back_image.f_white .pageWidth {
            position: relative;
            z-index: 5; }
    html body .whiteBox {
      background-color: #fff;
      box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.2);
      border-radius: 0.5rem;
      padding: 2rem 1rem 0rem 1rem;
      margin: 2rem 0; }
      html body .whiteBox.shadow_none {
        box-shadow: inherit;
        background: rgba(255, 255, 255, 0.85); }
    html body .figure_flex {
      display: flex;
      justify-content: space-between;
      flex-wrap: wrap;
      padding: 0 1rem; }
      html body .figure_flex figure {
        width: calc((100% - 1rem)/2); }
        @media (max-width: 767px) {
          html body .figure_flex figure {
            width: 100%; }
            html body .figure_flex figure:first-of-type {
              margin-bottom: 1.5rem; } }
    html body .lineBox {
      border: 2px solid #173D8C;
      border-radius: 0.5rem;
      padding: 1.5rem 1rem 0rem 1rem;
      margin: 1rem 0 0 0;
      background-color: #FAFAFA; }
      html body .lineBox h4 {
        color: #173D8C;
        font-size: 1.25rem;
        font-weight: 600; }
        @media (max-width: 767px) {
          html body .lineBox h4 {
            font-size: 1.125rem; } }
    html body .headerSpacer {
      padding-top: 5rem; }
    html body .pageWidth {
      max-width: 1100px;
      margin: 0 auto;
      padding: 0 1rem; }
      @media (min-width: 1800px) {
        html body .pageWidth {
          max-width: 1160px; } }
      html body .pageWidth.medi {
        max-width: 960px; }
      html body .pageWidth.narrow {
        max-width: 780px; }
    html body .a_btn {
      margin: 1rem 0;
      display: flex;
      flex-wrap: wrap; }
      html body .a_btn.center {
        justify-content: center; }
        html body .a_btn.center a.btn, html body .a_btn.center div.btn, html body .a_btn.center button.btn {
          margin: 0.5rem 1rem; }
      @media (max-width: 767px) {
        html body .a_btn.sp_center {
          justify-content: center; }
          html body .a_btn.sp_center a.btn, html body .a_btn.sp_center div.btn, html body .a_btn.sp_center button.btn {
            margin: 0.5rem 1rem; } }
      html body .a_btn a.btn, html body .a_btn div.btn, html body .a_btn button.btn {
        max-width: 18rem;
        border: none;
        cursor: pointer;
        color: #fff;
        width: 100%;
        font-weight: 600;
        padding: 0.5rem 1rem;
        border-radius: 20rem;
        margin: 0.5rem 1rem 0.5rem 0;
        background: linear-gradient(to right, #54C3F1, #0097E0);
        display: flex;
        align-items: center;
        justify-content: center;
        -webkit-transition: all ease 0.5s;
        transition: all ease 0.5s;
        font-size: 1.125rem; }
        html body .a_btn a.btn:hover, html body .a_btn div.btn:hover, html body .a_btn button.btn:hover {
          opacity: 0.8; }
        html body .a_btn a.btn.navy, html body .a_btn div.btn.navy, html body .a_btn button.btn.navy {
          background: none;
          background-color: #173D8C;
          color: #fff; }
        html body .a_btn a.btn.white, html body .a_btn div.btn.white, html body .a_btn button.btn.white {
          background-color: #fff;
          color: #0097E0;
          border: 1px solid #0097E0; }
          html body .a_btn a.btn.white:hover, html body .a_btn div.btn.white:hover, html body .a_btn button.btn.white:hover {
            background-color: #54C3F1;
            opacity: 1; }
        html body .a_btn a.btn.square, html body .a_btn div.btn.square, html body .a_btn button.btn.square {
          border-radius: 0;
          border: 2px solid #fff; }
        html body .a_btn a.btn.small, html body .a_btn div.btn.small, html body .a_btn button.btn.small {
          width: fit-content;
          padding: 0.5rem 1.5rem;
          font-size: 0.875rem; }
        html body .a_btn a.btn.big, html body .a_btn div.btn.big, html body .a_btn button.btn.big {
          font-size: 1.25rem;
          max-width: 25rem;
          width: 100%;
          padding: 1rem; }
        html body .a_btn a.btn.pc, html body .a_btn div.btn.pc, html body .a_btn button.btn.pc {
          display: flex; }
          @media (max-width: 767px) {
            html body .a_btn a.btn.pc, html body .a_btn div.btn.pc, html body .a_btn button.btn.pc {
              display: none; } }
        html body .a_btn a.btn.sp, html body .a_btn div.btn.sp, html body .a_btn button.btn.sp {
          display: none; }
          @media (max-width: 767px) {
            html body .a_btn a.btn.sp, html body .a_btn div.btn.sp, html body .a_btn button.btn.sp {
              display: flex; } }
      html body .a_btn.form_btn a.btn {
        display: none; }
      html body .a_btn.form_btn div.btn {
        display: flex; }
      @media (max-width: 959px) {
        html body .a_btn.form_btn {
          display: flex;
          justify-content: center; } }
      @media (max-width: 767px) {
        html body .a_btn.form_btn a.btn {
          display: flex; }
        html body .a_btn.form_btn div.btn {
          display: none; } }
    html body header {
      margin: 0 auto;
      top: 0;
      left: 0;
      right: 0;
      z-index: 200;
      background: rgba(0, 0, 0, 0.7);
      position: fixed; }
      html body header .headerInner {
        display: flex;
        height: 4em;
        justify-content: space-between;
        padding: 0 0 0 1rem; }
        @media (max-width: 1100px) {
          html body header .headerInner {
            padding: 0 4rem 0 1rem;
            position: relative; } }
      html body header .logo {
        width: 100%;
        max-width: 14rem;
        display: flex;
        align-items: center;
        margin-right: 1rem;
        position: relative;
        z-index: 210; }
      html body header .headerNav {
        display: flex;
        justify-content: center;
        align-items: center; }
        @media (max-width: 1100px) {
          html body header .headerNav .menuBlock {
            display: none; } }
        html body header .headerNav ul {
          display: flex;
          flex-wrap: wrap;
          justify-content: flex-end; }
          html body header .headerNav ul li {
            font-size: 0.875rem;
            font-weight: 600;
            margin-right: 1rem; }
            @media (max-width: 767px) {
              html body header .headerNav ul li {
                font-size: 1.125rem; } }
            html body header .headerNav ul li a, html body header .headerNav ul li div.a {
              cursor: pointer;
              padding: 0.25rem 0; }
              @media (max-width: 1100px) {
                html body header .headerNav ul li a, html body header .headerNav ul li div.a {
                  padding: 0.5rem; } }
              html body header .headerNav ul li a span, html body header .headerNav ul li div.a span {
                color: #fff; }
            @media (max-width: 1100px) {
              html body header .headerNav ul li div.a {
                cursor: inherit;
                padding-bottom: 0 !important; } }
      html body header .a_btn.contact {
        margin: 0; }
        html body header .a_btn.contact a.btn, html body header .a_btn.contact div.btn {
          margin: 0;
          font-size: 1rem;
          white-space: nowrap;
          border-radius: 0;
          padding: 0.8rem 0;
          text-align: center;
          height: 4em;
          display: none;
          -webkit-transition: inherit;
          transition: inherit;
          opacity: 1; }
          @media (max-width: 767px) {
            html body header .a_btn.contact a.btn, html body header .a_btn.contact div.btn {
              min-width: 7em;
              display: flex;
              justify-content: center;
              align-items: center; } }
          @media (max-width: 767px) {
            html body header .a_btn.contact a.btn span, html body header .a_btn.contact div.btn span {
              font-size: min(3vw, 0.675rem); } }
          html body header .a_btn.contact a.btn span.open, html body header .a_btn.contact div.btn span.open {
            display: inline-block; }
          html body header .a_btn.contact a.btn span.close, html body header .a_btn.contact div.btn span.close {
            display: none; }
        html body header .a_btn.contact.active {
          width: auto;
          top: 0;
          right: 0;
          position: absolute; }
          html body header .a_btn.contact.active .btn {
            min-width: inherit;
            background: #707070;
            width: 4em;
            height: 4em;
            padding: 0.5rem;
            position: relative;
            z-index: 230;
            opacity: 1; }
            html body header .a_btn.contact.active .btn:before, html body header .a_btn.contact.active .btn::after {
              /* 共通設定 */
              content: "";
              position: absolute;
              top: 50%;
              left: 50%;
              width: 1px;
              height: 60%;
              background: #fff; }
            html body header .a_btn.contact.active .btn::before {
              transform: translate(-50%, -50%) rotate(45deg); }
            html body header .a_btn.contact.active .btn::after {
              transform: translate(-50%, -50%) rotate(-45deg); }
            html body header .a_btn.contact.active .btn span.open {
              display: none; }
            html body header .a_btn.contact.active .btn span.close {
              display: inline-block;
              opacity: 0; }
      html body header #menu_trigger {
        display: none; }
      html body header .menu_trigger {
        display: none; }
        @media (max-width: 1100px) {
          html body header .menu_trigger {
            display: flex;
            justify-content: center;
            align-items: center;
            position: absolute;
            z-index: 99;
            transform: translateY(-50%);
            top: 50%;
            right: 0;
            width: 4em;
            height: 4em;
            min-width: 4em;
            min-height: 4em;
            background-color: #F0F0F0; } }
        html body header .menu_trigger div {
          position: relative;
          width: 2.5rem;
          height: 2rem;
          background: none;
          border: none;
          -webkit-appearance: none;
          -moz-appearance: none;
          appearance: none;
          cursor: pointer;
          transition: all .4s;
          box-sizing: border-box;
          z-index: 250;
          transform: scale(0.7); }
          html body header .menu_trigger div span {
            position: absolute;
            left: 0;
            height: 1px;
            background-color: #1a1a1a;
            display: inline-block;
            transition: all .4s;
            box-sizing: border-box; }
            html body header .menu_trigger div span:first-of-type {
              top: 0;
              width: 100%; }
            html body header .menu_trigger div span:nth-of-type(2) {
              top: 1rem;
              width: 100%; }
              html body header .menu_trigger div span:nth-of-type(2)::after {
                position: absolute;
                top: 0;
                left: 0;
                content: '';
                width: 100%;
                height: 1px;
                background-color: #1a1a1a;
                border-radius: 4px;
                transition: all .4s; }
            html body header .menu_trigger div span:last-of-type {
              bottom: 0;
              width: 100%; }
      html body header #menu_trigger:checked + label span:first-of-type {
        transform: translateY(0.95rem) scale(0); }
        html body header #menu_trigger:checked + label span:first-of-type::after {
          background-color: #fff; }
      html body header #menu_trigger:checked + label span:nth-of-type(2) {
        transform: rotate(-45deg);
        width: 100%; }
        html body header #menu_trigger:checked + label span:nth-of-type(2)::after {
          transform: rotate(90deg); }
      html body header #menu_trigger:checked + label span:last-of-type {
        transform: translateY(-0.95rem) scale(0); }
        html body header #menu_trigger:checked + label span:last-of-type::after {
          background-color: #fff; }
      html body header #menu_trigger:checked ~ .headerNav .menuBlock {
        display: block;
        position: absolute;
        top: 4em;
        right: 0;
        width: 20rem;
        height: 100vh;
        background-color: #fff;
        padding: 1rem 0; }
        @media (max-width: 1100px) {
          html body header #menu_trigger:checked ~ .headerNav .menuBlock {
            width: 30%; } }
        @media (max-width: 959px) {
          html body header #menu_trigger:checked ~ .headerNav .menuBlock {
            width: 50%; } }
        @media (max-width: 767px) {
          html body header #menu_trigger:checked ~ .headerNav .menuBlock {
            width: 100%; } }
        html body header #menu_trigger:checked ~ .headerNav .menuBlock ul.menu {
          display: block; }
          html body header #menu_trigger:checked ~ .headerNav .menuBlock ul.menu li {
            margin-bottom: 0.25rem; }
            html body header #menu_trigger:checked ~ .headerNav .menuBlock ul.menu li a, html body header #menu_trigger:checked ~ .headerNav .menuBlock ul.menu li div.a {
              padding: 1rem 1rem 1rem 2.5rem;
              position: relative; }
              html body header #menu_trigger:checked ~ .headerNav .menuBlock ul.menu li a::before, html body header #menu_trigger:checked ~ .headerNav .menuBlock ul.menu li div.a::before {
                content: "";
                width: 0.75rem;
                height: 0.75rem;
                border-top: solid 3px #54C3F1;
                border-right: solid 3px #54C3F1;
                position: absolute;
                -webkit-transform: translateY(-50%) rotate(45deg);
                transform: translateY(-50%) rotate(45deg);
                top: 50%;
                left: 1rem; }
              html body header #menu_trigger:checked ~ .headerNav .menuBlock ul.menu li a span, html body header #menu_trigger:checked ~ .headerNav .menuBlock ul.menu li div.a span {
                color: #1a1a1a; }
    html body #site-footer .inner {
      max-width: 1160px;
      margin: 0 auto;
      padding: 2rem 1rem;
      font-size: 0.875rem; }
      @media (max-width: 767px) {
        html body #site-footer .inner {
          font-size: 1rem; } }
    html body #site-footer #site-footer-column {
      display: flex; }
      @media (max-width: 959px) {
        html body #site-footer #site-footer-column {
          flex-wrap: wrap; } }
      html body #site-footer #site-footer-column #site-footer-logo {
        margin-right: 3rem; }
        @media (max-width: 959px) {
          html body #site-footer #site-footer-column #site-footer-logo {
            width: 100%;
            margin-right: 0; } }
        html body #site-footer #site-footer-column #site-footer-logo img {
          max-width: 13rem; }
          @media (max-width: 767px) {
            html body #site-footer #site-footer-column #site-footer-logo img {
              margin: 0 auto 1rem auto; } }
    html body #site-footer .copyright {
      text-align: center;
      font-size: 0.75rem;
      padding: 1rem;
      width: 100%;
      display: block; }
    html body #site-footer #site-footer-info {
      margin-right: 1.5rem;
      padding-right: 1.5rem;
      margin-top: 1rem;
      border-right: 1px solid #C3C3C3; }
      @media (max-width: 767px) {
        html body #site-footer #site-footer-info {
          padding-right: 0;
          width: 100%;
          margin-bottom: 0;
          padding-bottom: 1rem;
          border-right: none;
          border-bottom: 1px solid #C3C3C3; } }
      html body #site-footer #site-footer-info h2 {
        font-size: 1.125rem;
        font-weight: 600;
        position: relative;
        padding-left: 0.8rem; }
        html body #site-footer #site-footer-info h2::before {
          content: "";
          position: absolute;
          height: 100%;
          width: 3px;
          background-color: #54C3F1;
          display: block;
          top: 0;
          left: 0; }
      html body #site-footer #site-footer-info p {
        line-height: 2;
        margin: 1rem 0 0 0; }
    html body #site-footer #site-footer-nav {
      margin-top: 1rem; }
      @media (max-width: 767px) {
        html body #site-footer #site-footer-nav {
          width: 100%; } }
      html body #site-footer #site-footer-nav ul li {
        margin-bottom: 0.25rem; }
        html body #site-footer #site-footer-nav ul li a {
          position: relative;
          padding: 0.25rem 0.5rem 0.25rem 1.5rem; }
          html body #site-footer #site-footer-nav ul li a::before {
            content: "";
            width: 0.75rem;
            height: 0.75rem;
            border-top: solid 3px #54C3F1;
            border-right: solid 3px #54C3F1;
            position: absolute;
            -webkit-transform: translateY(-50%) rotate(45deg);
            transform: translateY(-50%) rotate(45deg);
            top: 50%;
            left: 0; }


html body .coverBlock {
  width: 100%;
  height: 600px;
  position: relative;
  background-repeat: no-repeat;
  background-size: cover;
  background-image: url(/SC/pics/psl-lp-top-pc.jpg);
  margin-top:64px;
  @media (max-width: 959px) {
    margin-top:56px;
    height: 300px;
  }
  @media (max-width: 767px) {
    background-image: url(/SC/pics/psl-lp-top-smp.jpg);
    margin-top:52px;
  }
}
html body header .headerInner {
    padding: revert;
}

/*# sourceMappingURL=bm-style.css.map */




