@charset "UTF-8";
@media screen and (min-width: 769px) {
  #lp.page {
    padding-top: 100px; } }

@media (max-width: 768px) {
  #lp.page {
    padding-top: 60px; } }

#lp .content_outer {
  background-color: #ffffff; }

#lp .main {
  background-color: #ffffff;
  color: #00356d;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
  max-width: initial;
  padding-left: 0;
  padding-right: 0; }
  #lp .main .c_caption {
    margin-left: auto;
    margin-right: auto; }
    @media screen and (min-width: 769px) {
      #lp .main .c_caption {
        max-width: 1390px; } }
    @media (max-width: 768px) {
      #lp .main .c_caption {
        width: calc(690 / 750 * 100vw); } }

@media screen and (min-width: 769px) {
  #lp .wrap {
    margin: 0 auto;
    max-width: 960px;
    width: 100%; } }

@media (max-width: 768px) {
  #lp .wrap {
    padding: 0 calc(45 / 750 * 100vw); } }

#lp .caption {
  font-size: 10px;
  line-height: 1.6; }
  #lp .caption a {
    color: currentColor;
    text-decoration: none;
    word-break: break-all; }

#lp .photo {
  position: relative; }
  #lp .photo__capIn {
    bottom: 8px;
    position: absolute;
    right: 8px;
    text-align: right; }
    #lp .photo__capIn.caption {
      color: #ffffff;
      text-shadow: black 1px 1px 10px, black -1px 1px 10px, black 1px -1px 10px,black -1px -1px 10px; }
  #lp .photo__capOut {
    padding: 5px; }

#lp .lp-content--01 {
  background-color: #005d91;
  color: #ffffff;
  position: relative; }
  @media screen and (min-width: 769px) {
    #lp .lp-content--01 {
      padding: 250px 0 260px; } }
  @media (max-width: 768px) {
    #lp .lp-content--01 {
      padding: calc(200 / 750 * 100vw) 0 calc(570 / 750 * 100vw); } }
  #lp .lp-content--01:before, #lp .lp-content--01:after {
    content: '';
    inset: 0;
    pointer-events: none;
    position: absolute;
    -webkit-transform: rotate(0.0001deg);
    -ms-transform: rotate(0.0001deg);
    transform: rotate(0.0001deg); }
  #lp .lp-content--01:before {
    background: url("../imgs/bg-lp-01@1.5x.jpg") no-repeat left top/100% auto; }
  #lp .lp-content--01:after {
    background: url("../imgs/bg-lp-02@1.5x.jpg") no-repeat left bottom/100% auto; }

@media screen and (min-width: 769px) {
  #lp .lp-content--02 {
    padding: 160px 0 120px; } }

@media (max-width: 768px) {
  #lp .lp-content--02 {
    padding: calc(140 / 750 * 100vw) 0; } }

#lp .lpVisual {
  position: relative; }
  #lp .lpVisual__bg .photo__image {
    width: 100%; }
  #lp .lpVisual__desc {
    color: #ffffff;
    left: 50%;
    position: absolute;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    width: 100%;
    z-index: 1; }
  #lp .lpVisual__heading {
    letter-spacing: .08em;
    text-align: center; }
    @media screen and (min-width: 769px) {
      #lp .lpVisual__heading {
        line-height: 1.14286;
        font-size: 56px; }
        #lp .lpVisual__heading:before {
          content: '';
          margin-top: calc((1 - 1.14286) * .5em); }
        #lp .lpVisual__heading:after {
          margin-bottom: calc((1 - 1.14286) * .5em); }
        #lp .lpVisual__heading:before, #lp .lpVisual__heading:after {
          content: '';
          display: block;
          height: 0;
          width: 0; } }
    @media (max-width: 768px) {
      #lp .lpVisual__heading {
        line-height: 1.11111;
        font-size: calc(72 / 750 * 100vw); }
        #lp .lpVisual__heading:before {
          content: '';
          margin-top: calc((1 - 1.11111) * .5em); }
        #lp .lpVisual__heading:after {
          margin-bottom: calc((1 - 1.11111) * .5em); }
        #lp .lpVisual__heading:before, #lp .lpVisual__heading:after {
          content: '';
          display: block;
          height: 0;
          width: 0; } }
    #lp .lpVisual__heading .small {
      display: inline-block;
      letter-spacing: .2em; }
      @media screen and (min-width: 769px) {
        #lp .lpVisual__heading .small {
          font-size: 24px;
          padding-bottom: 24px; } }
      @media (max-width: 768px) {
        #lp .lpVisual__heading .small {
          font-size: calc(36 / 750 * 100vw);
          padding-bottom: calc(36 / 750 * 100vw); } }
    @media screen and (min-width: 769px) {
      #lp .lpVisual__heading + .lpVisual__txt {
        margin-top: 48px; } }
    @media (max-width: 768px) {
      #lp .lpVisual__heading + .lpVisual__txt {
        margin-top: calc(56 / 750 * 100vw); } }
  #lp .lpVisual__txt {
    letter-spacing: .12em; }
    @media screen and (min-width: 769px) {
      #lp .lpVisual__txt {
        line-height: 2;
        font-size: 16px;
        text-align: center; }
        #lp .lpVisual__txt:before {
          content: '';
          margin-top: calc((1 - 2) * .5em); }
        #lp .lpVisual__txt:after {
          margin-bottom: calc((1 - 2) * .5em); }
        #lp .lpVisual__txt:before, #lp .lpVisual__txt:after {
          content: '';
          display: block;
          height: 0;
          width: 0; } }
    @media (max-width: 768px) {
      #lp .lpVisual__txt {
        line-height: 1.42857;
        font-size: calc(28 / 750 * 100vw);
        padding: 0 calc(45 / 750 * 100vw); }
        #lp .lpVisual__txt:before {
          content: '';
          margin-top: calc((1 - 1.42857) * .5em); }
        #lp .lpVisual__txt:after {
          margin-bottom: calc((1 - 1.42857) * .5em); }
        #lp .lpVisual__txt:before, #lp .lpVisual__txt:after {
          content: '';
          display: block;
          height: 0;
          width: 0; } }

#lp .symbolArea {
  background: no-repeat center / cover; }
  @media screen and (min-width: 769px) {
    #lp .symbolArea {
      background-image: url("../imgs/pc/bg-symbol-01@1.5x.jpg");
      padding: 160px 0 156px; } }
  @media (max-width: 768px) {
    #lp .symbolArea {
      background-image: url("../imgs/sp/bg-symbol-01.jpg");
      padding: calc(196 / 750 * 100vw) calc(45 / 750 * 100vw); } }
  @media screen and (min-width: 769px) {
    #lp .symbolArea__inner {
      margin: 0 auto;
      width: 660px; } }

#lp .topicSect {
  position: relative;
  z-index: 1; }
  @media screen and (min-width: 769px) {
    #lp .topicSect + .topicSect {
      margin-top: 114px; } }
  @media (max-width: 768px) {
    #lp .topicSect + .topicSect {
      margin-top: calc(180 / 750 * 100vw); } }
  #lp .topicSect__ttl {
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
    aspect-ratio: 161 / 187;
    background: url("../imgs/icon-topic-bg.png") no-repeat center/cover;
    color: #ffffff;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    font-family: "Arsenal", sans-serif;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    letter-spacing: .04em;
    line-height: 1;
    text-align: center; }
    @media screen and (min-width: 769px) {
      #lp .topicSect__ttl {
        padding-bottom: 60px;
        width: 161px; } }
    @media (max-width: 768px) {
      #lp .topicSect__ttl {
        margin: 0 auto;
        padding-bottom: calc(72 / 750 * 100vw);
        width: calc(192 / 750 * 100vw); } }
    @media screen and (min-width: 769px) {
      #lp .topicSect__ttl + .topicSect__heading {
        margin-top: 40px; } }
    @media (max-width: 768px) {
      #lp .topicSect__ttl + .topicSect__heading {
        margin-top: calc(80 / 750 * 100vw); } }
    #lp .topicSect__ttl .num {
      border-bottom: 1px solid #ffffff;
      display: inline-block;
      position: relative; }
      @media screen and (min-width: 769px) {
        #lp .topicSect__ttl .num {
          font-size: 48px; } }
      @media (max-width: 768px) {
        #lp .topicSect__ttl .num {
          font-size: calc(58 / 750 * 100vw); } }
      #lp .topicSect__ttl .num:before {
        bottom: 100%;
        content: 'TOPIC';
        left: 50%;
        letter-spacing: .4em;
        position: absolute;
        -webkit-transform: translate(-50%, 0);
        -ms-transform: translate(-50%, 0);
        transform: translate(-50%, 0);
        white-space: nowrap; }
        @media screen and (min-width: 769px) {
          #lp .topicSect__ttl .num:before {
            font-size: 14px; } }
        @media (max-width: 768px) {
          #lp .topicSect__ttl .num:before {
            font-size: calc(20 / 750 * 100vw); } }
  #lp .topicSect__heading {
    letter-spacing: .12em; }
    @media screen and (min-width: 769px) {
      #lp .topicSect__heading {
        line-height: 1.33333;
        font-size: 24px; }
        #lp .topicSect__heading:before {
          content: '';
          margin-top: calc((1 - 1.33333) * .5em); }
        #lp .topicSect__heading:after {
          margin-bottom: calc((1 - 1.33333) * .5em); }
        #lp .topicSect__heading:before, #lp .topicSect__heading:after {
          content: '';
          display: block;
          height: 0;
          width: 0; } }
    @media (max-width: 768px) {
      #lp .topicSect__heading {
        line-height: 1.4;
        font-size: calc(40 / 750 * 100vw);
        text-align: center; }
        #lp .topicSect__heading:before {
          content: '';
          margin-top: calc((1 - 1.4) * .5em); }
        #lp .topicSect__heading:after {
          margin-bottom: calc((1 - 1.4) * .5em); }
        #lp .topicSect__heading:before, #lp .topicSect__heading:after {
          content: '';
          display: block;
          height: 0;
          width: 0; } }
    @media screen and (min-width: 769px) {
      #lp .topicSect__heading + .topicSect__txt {
        margin-top: 48px; } }
    @media (max-width: 768px) {
      #lp .topicSect__heading + .topicSect__txt {
        margin-top: calc(80 / 750 * 100vw); } }
  #lp .topicSect__txt {
    letter-spacing: .12em; }
    @media screen and (min-width: 769px) {
      #lp .topicSect__txt {
        line-height: 1.71429;
        font-size: 14px; }
        #lp .topicSect__txt:before {
          content: '';
          margin-top: calc((1 - 1.71429) * .5em); }
        #lp .topicSect__txt:after {
          margin-bottom: calc((1 - 1.71429) * .5em); }
        #lp .topicSect__txt:before, #lp .topicSect__txt:after {
          content: '';
          display: block;
          height: 0;
          width: 0; } }
    @media (max-width: 768px) {
      #lp .topicSect__txt {
        line-height: 1.42857;
        font-size: calc(28 / 750 * 100vw); }
        #lp .topicSect__txt:before {
          content: '';
          margin-top: calc((1 - 1.42857) * .5em); }
        #lp .topicSect__txt:after {
          margin-bottom: calc((1 - 1.42857) * .5em); }
        #lp .topicSect__txt:before, #lp .topicSect__txt:after {
          content: '';
          display: block;
          height: 0;
          width: 0; } }
    @media screen and (min-width: 769px) {
      #lp .topicSect__txt + .caption {
        margin-top: 24px; } }
    @media (max-width: 768px) {
      #lp .topicSect__txt + .caption {
        margin-top: calc(48 / 750 * 100vw); } }
  #lp .topicSect__collages {
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; }
    @media (max-width: 768px) {
      #lp .topicSect__collages {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap; } }
    @media screen and (min-width: 769px) {
      #lp .topicSect__collages .photo {
        width: 100%; } }
    @media (max-width: 768px) {
      #lp .topicSect__collages .photo {
        width: 50%; } }
    #lp .topicSect__collages .photo .photo__image {
      width: 100%; }
  #lp .topicSect--01, #lp .topicSect--02, #lp .topicSect--03 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; }
    @media screen and (min-width: 769px) {
      #lp .topicSect--01, #lp .topicSect--02, #lp .topicSect--03 {
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between; } }
    @media (max-width: 768px) {
      #lp .topicSect--01, #lp .topicSect--02, #lp .topicSect--03 {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        gap: calc(80 / 750 * 100vw); } }
    @media screen and (min-width: 769px) {
      #lp .topicSect--01 .topicSect__head, #lp .topicSect--02 .topicSect__head, #lp .topicSect--03 .topicSect__head {
        width: calc(404 / 960 * 100%); } }
    @media screen and (min-width: 769px) {
      #lp .topicSect--01 .topicSect__cont, #lp .topicSect--02 .topicSect__cont, #lp .topicSect--03 .topicSect__cont {
        width: calc(496 / 960 * 100%); } }
    @media (max-width: 768px) {
      #lp .topicSect--01 .topicSect__cont .photo + .photo, #lp .topicSect--02 .topicSect__cont .photo + .photo, #lp .topicSect--03 .topicSect__cont .photo + .photo {
        margin-top: calc(32 / 750 * 100vw); } }
  @media screen and (min-width: 769px) {
    #lp .topicSect--01 .topicSect__head {
      padding-top: 72px; } }
  #lp .topicSect--01 .topicSect__cont .photo__image {
    width: 100%; }
  @media (max-width: 768px) {
    #lp .topicSect--01 .topicSect__cont .photo:nth-child(1) {
      margin-left: calc(-45 / 750 * 100vw);
      width: calc(595 / 750 * 100vw); } }
  @media screen and (min-width: 769px) {
    #lp .topicSect--01 .topicSect__cont .photo:nth-child(2) {
      margin: 24px calc((100vw - 960px) / -2) 0 auto;
      width: calc(((100vw - 960px) / 2) + 240px); } }
  @media (max-width: 768px) {
    #lp .topicSect--01 .topicSect__cont .photo:nth-child(2) {
      margin-left: auto;
      margin-right: calc(-45 / 750 * 100vw);
      width: calc(576 / 750 * 100vw); } }
  @media screen and (min-width: 769px) {
    #lp .topicSect--01 .topicSect__cont .photo:nth-child(3) {
      margin-top: -56px;
      width: 216px; } }
  @media (max-width: 768px) {
    #lp .topicSect--01 .topicSect__cont .photo:nth-child(3) {
      width: calc(480 / 750 * 100vw); } }
  @media screen and (min-width: 769px) {
    #lp .topicSect--02 {
      -webkit-box-orient: horizontal;
      -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
      flex-direction: row-reverse; } }
  @media screen and (min-width: 769px) {
    #lp .topicSect--02 .topicSect__head {
      padding-top: 72px; } }
  #lp .topicSect--02 .topicSect__cont .photo__image {
    width: 100%; }
  @media screen and (min-width: 769px) {
    #lp .topicSect--02 .topicSect__cont .photo:nth-child(1) {
      margin-left: calc((100vw - 960px) / -2);
      width: calc(((100vw - 960px) / 2) + 400px); } }
  @media (max-width: 768px) {
    #lp .topicSect--02 .topicSect__cont .photo:nth-child(1) {
      margin-left: calc(-45 / 750 * 100vw);
      width: calc(706 / 750 * 100vw); } }
  @media screen and (min-width: 769px) {
    #lp .topicSect--02 .topicSect__cont .photo:nth-child(2) {
      margin: 48px 0 0 auto;
      width: 400px; } }
  @media (max-width: 768px) {
    #lp .topicSect--02 .topicSect__cont .photo:nth-child(2) {
      margin-left: auto;
      margin-right: calc(-45 / 750 * 100vw);
      width: calc(480 / 750 * 100vw); } }
  @media screen and (min-width: 769px) {
    #lp .topicSect--03 {
      -webkit-box-align: end;
      -ms-flex-align: end;
      align-items: flex-end; } }
  @media screen and (min-width: 769px) {
    #lp .topicSect--03 .topicSect__cont {
      padding-bottom: 32px; } }
  #lp .topicSect--03 .topicSect__cont .photo__image {
    width: 100%; }
  @media screen and (min-width: 769px) {
    #lp .topicSect--03 .topicSect__cont .photo:nth-child(1) {
      margin-right: calc(((100vw - 960px) / -2) - 104px);
      width: calc((((100vw - 960px) / 2) - 104px) + 496px); } }
  @media screen and (min-width: 769px) {
    #lp .topicSect--04 .topicSect__ttl, #lp .topicSect--05 .topicSect__ttl {
      margin: 0 auto; } }
  @media screen and (min-width: 769px) {
    #lp .topicSect--04 .topicSect__head, #lp .topicSect--05 .topicSect__head {
      margin: 0 auto;
      text-align: center;
      width: 680px; } }
  @media screen and (min-width: 769px) {
    #lp .topicSect--04 .topicSect__head + .topicSect__cont, #lp .topicSect--05 .topicSect__head + .topicSect__cont {
      margin-top: 64px; } }
  @media (max-width: 768px) {
    #lp .topicSect--04 .topicSect__head + .topicSect__cont, #lp .topicSect--05 .topicSect__head + .topicSect__cont {
      margin-top: calc(80 / 750 * 100vw); } }
  @media screen and (min-width: 769px) {
    #lp .topicSect--04 .topicSect__cont, #lp .topicSect--05 .topicSect__cont {
      -webkit-box-align: start;
      -ms-flex-align: start;
      align-items: flex-start;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: justify;
      -ms-flex-pack: justify;
      justify-content: space-between; } }
  @media (max-width: 768px) {
    #lp .topicSect--04 .topicSect__cont .photo + .photo, #lp .topicSect--05 .topicSect__cont .photo + .photo {
      margin-top: calc(64 / 750 * 100vw); } }
  @media screen and (min-width: 769px) {
    #lp .topicSect--04 .topicSect__cont .photo {
      width: 468px; } }
  @media screen and (min-width: 769px) {
    #lp .topicSect--05 .topicSect__cont .photo:nth-child(1) {
      width: 498px; } }
  @media screen and (min-width: 769px) {
    #lp .topicSect--05 .topicSect__cont .photo:nth-child(2) {
      width: 438px; } }
  #lp .topicSect--06 .topicSect__inner {
    position: relative; }
  #lp .topicSect--06 .topicSect__head {
    left: 50%;
    position: absolute;
    -webkit-transform: translate(-50%, 0);
    -ms-transform: translate(-50%, 0);
    transform: translate(-50%, 0);
    z-index: 2; }
    @media screen and (min-width: 769px) {
      #lp .topicSect--06 .topicSect__head {
        top: 120px;
        width: 680px; } }
    @media (max-width: 768px) {
      #lp .topicSect--06 .topicSect__head {
        padding: 0 calc(45 / 750 * 100vw);
        width: 100%; } }
  #lp .topicSect--06 .topicSect__ttl {
    margin: 0 auto; }
  #lp .topicSect--06 .topicSect__heading {
    text-align: center; }
  @media screen and (min-width: 769px) {
    #lp .topicSect--06 .topicSect__cont {
      min-height: 1056px;
      height: calc(1056 / 1440 * 100vw); } }
  #lp .topicSect--06 .topicSect__cont .photo,
  #lp .topicSect--06 .topicSect__cont .photo__pic,
  #lp .topicSect--06 .topicSect__cont .photo__image {
    display: block;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%; }
