@charset "UTF-8";
.div-mv {
  display: flex;
  align-items: center;
  justify-content: center;
  height: calc(100vh - 8rem);
  background: url("../../img/entry/bg_main.jpg") no-repeat 50% 50%;
  background-size: cover;
  position: relative;
  z-index: 1; }
  .div-mv:before, .div-mv:after {
    content: "";
    width: 100%;
    position: absolute;
    left: 0;
    bottom: 0; }
  .div-mv:before {
    height: 100%;
    background: #000;
    z-index: -1;
    opacity: 0.15; }
  .div-mv:after {
    height: 19rem;
    background-image: linear-gradient(0deg, black 0%, rgba(0, 0, 0, 0) 100%);
    opacity: 0.4;
    z-index: 1; }
  @media only screen and (max-width: 767px) {
    .div-mv {
      height: calc(100vh - 6rem);
      flex-direction: column; } }
  .div-mv-message {
    display: flex;
    flex-direction: column;
    align-items: center; }
    .div-mv-message-catch p {
      font-size: 12rem;
      text-align: center;
      font-weight: 700;
      line-height: 1;
      font-family: "Barlow", serif;
      color: #fff;
      text-shadow: 0 0 5rem rgba(0, 0, 0, 0.75); }
      @media only screen and (max-width: 1024px) {
        .div-mv-message-catch p {
          font-size: 10rem; } }
  @media only screen and (max-width: 1024px) and (max-width: 767px) {
    .div-mv-message-catch p {
      font-size: 4.6rem; } }

      .div-mv-message-catch p span {
        color: #B1D6E9; }
    .div-mv-message-txt {
      padding-bottom: 4rem;
      color: #fff;
      font-weight: 700;
      padding-top: 1rem; }
      @media only screen and (max-width: 767px) {
        .div-mv-message-txt {
          padding-bottom: 2rem; } }
      .div-mv-message-txt p {
        font-size: 1.6rem;
        text-shadow: 0 0 5rem rgba(0, 0, 0, 0.75); }
        @media only screen and (max-width: 767px) {
          .div-mv-message-txt p {
            font-size: 1.3rem; } }
    .div-mv-message-wanted {
      width: 22.5rem;
      border: .3rem solid #fff;
      background: rgba(0, 0, 0, 0.2);
      padding: .2rem 0;
      text-align: center;
      margin: 0 auto;
      font-size: 3.6rem;
      color: #fff;
      font-weight: 500; }
      @media only screen and (max-width: 767px) {
        .div-mv-message-wanted {
          font-size: 2.4rem;
          width: 18rem;
          margin: 1.5rem auto; } }
  .div-mv-info {
    position: absolute;
    right: 3rem;
    bottom: 3rem;
    font-weight: 700;
    color: #fff;
    z-index: 3; }
    @media only screen and (max-width: 767px) {
      .div-mv-info {
        width: 100%;
        right: 0;
        bottom: 1.5rem;
        font-size: 2rem;
        text-align: center;
        padding: 0 2rem; } }
    .div-mv-info-name {
      font-family: "Barlow", serif;
      font-size: 2.8rem;
      font-weight: 600;
      text-align: center; }
      @media only screen and (max-width: 767px) {
        .div-mv-info-name {
          font-size: 2rem; } }
      .div-mv-info-name span {
        color: #B1D6E9; }
    .div-mv-info-date {
      display: flex;
      align-items: center;
      justify-content: flex-start;
      font-size: 1.8rem; }
      @media only screen and (max-width: 767px) {
        .div-mv-info-date {
          font-size: 1.3rem; }
          .div-mv-info-date p {
            line-height: 1.3; } }
      .div-mv-info-date b {
        font-size: 2.4rem;
        font-family: "Barlow", serif; }
        @media only screen and (max-width: 767px) {
          .div-mv-info-date b {
            font-size: 1.7rem;
            font-weight: 600; } }
      .div-mv-info-date-adej {
        width: 7.7rem;
        flex-shrink: 0;
        margin-right: 1rem; }
@media only screen and (max-width: 1024px) and (max-width: 767px) {
  .div-mv-info-date-adej {
    width: 4rem; } }

.container .dl-bnr {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  padding: 1.5rem 0 8rem; }
  @media only screen and (max-width: 767px) {
    .container .dl-bnr {
      padding: 1.5rem 1.5rem 4rem; } }
  .container .dl-bnr dt {
    font-size: 2rem;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 2.5rem; }
    @media only screen and (max-width: 767px) {
      .container .dl-bnr dt {
        font-size: 1.6rem;
        margin-bottom: 1.5rem; } }
    .container .dl-bnr dt:before, .container .dl-bnr dt:after {
      content: "";
      width: 20rem;
      height: 1px;
      background: #a8d7ec;
      margin: 0 1.5rem; }
      @media only screen and (max-width: 767px) {
        .container .dl-bnr dt:before, .container .dl-bnr dt:after {
          width: 3rem; } }
  .container .dl-bnr dd ul {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    max-width: 90rem;
    margin: 0 auto; }
    .container .dl-bnr dd ul li {
      width: 25%;
      padding: 2rem 1rem;
      text-align: center; }
      @media only screen and (max-width: 767px) {
        .container .dl-bnr dd ul li {
          width: 50%;
          padding: .5rem; } }
      .container .dl-bnr dd ul li img {
        width: auto;
        height: 7rem; }
        @media only screen and (max-width: 767px) {
          .container .dl-bnr dd ul li img {
            height: 6rem; } }
.container .dl-support {
  display: flex;
  justify-content: center;
  padding: 5rem 0 8rem; }
  @media only screen and (max-width: 767px) {
    .container .dl-support {
      padding: 3rem 2rem; } }
  .container .dl-support div {
    margin: 0 3rem; }
    @media only screen and (max-width: 767px) {
      .container .dl-support div {
        margin: 0 1.5rem; } }
  .container .dl-support dt {
    font-size: 2rem;
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 2.5rem; }
    @media only screen and (max-width: 767px) {
      .container .dl-support dt {
        font-size: 1.6rem;
        margin-bottom: 0; } }
    .container .dl-support dt strong {
      flex-shrink: 0;
      margin: 0 1rem; }
    .container .dl-support dt:before, .container .dl-support dt:after {
      content: "";
      width: 100%;
      height: 1px;
      background: #a8d7ec; }
      @media only screen and (max-width: 767px) {
        .container .dl-support dt:before, .container .dl-support dt:after {
          width: 4rem; } }
  .container .dl-support dd ul {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    max-width: 90rem;
    margin: 0 auto; }
    .container .dl-support dd ul li {
      margin: 1.5rem; }
      .container .dl-support dd ul li img {
        width: 18rem; }
        @media only screen and (max-width: 767px) {
          .container .dl-support dd ul li img {
            width: 12rem; } }
.container .aside-photo {
  display: flex;
  overflow: hidden; }
@keyframes slider {
  from {
    transform: translateX(0); }
  to {
    transform: translateX(-100%); } }
  .container .aside-photo-img {
    display: flex;
    animation: slider 240s infinite linear 0.5s both; }
  .container .aside-photo-item {
    width: 42rem; }
    @media only screen and (max-width: 1024px) {
      .container .aside-photo-item {
        width: 32rem; } }
  @media only screen and (max-width: 1024px) and (max-width: 767px) {
    .container .aside-photo-item {
      width: 14rem; } }

.section-about {
  padding: 10rem 0 10rem 0;
  background: rgba(196, 235, 245, 0.3);
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  align-items: center; }
  @media only screen and (max-width: 1024px) {
    .section-about {
      padding: 5rem 3rem;
      align-items: flex-start; } }
  @media only screen and (max-width: 767px) {
    .section-about {
      padding: 3rem 0; } }
  .section-about-header {
    flex-shrink: 0;
    padding-right: 6rem; }
    @media only screen and (max-width: 1024px) {
      .section-about-header {
        padding-right: 0;
        margin-right: auto;
        margin-left: 2rem;
        margin-bottom: 2rem; } }
    .section-about-header-ttl {
      display: flex;
      justify-content: flex-start;
      flex-direction: column; }
      @media only screen and (max-width: 1024px) {
        .section-about-header-ttl {
          flex-direction: row;
          background: #053c7c;
          color: #fff;
          padding: .3rem 1.5rem; } }
      @media only screen and (max-width: 767px) {
        .section-about-header-ttl {
          flex-direction: column;
          background: none;
          padding: 0; } }
      .section-about-header-ttl strong {
        background: #053c7c;
        color: #fff;
        font-weight: 900;
        font-size: 3.8rem;
        padding: .3rem 1.5rem;
        margin: .5rem auto .5rem 1rem; }
        @media only screen and (max-width: 1024px) {
          .section-about-header-ttl strong {
            margin: 0;
            padding: 0; } }
        @media only screen and (max-width: 767px) {
          .section-about-header-ttl strong {
            font-size: 2.8rem;
            font-weight: 700;
            background: #053c7c;
            padding: .3rem 1.5rem;
            margin: .3rem auto .3rem 0; } }
  .section-about-inner {
    max-width: 50.8rem; }
    @media only screen and (max-width: 1024px) {
      .section-about-inner {
        max-width: 100%;
        padding: 0 3rem; } }
    @media only screen and (max-width: 767px) {
      .section-about-inner {
        padding: 0 2rem; } }
    .section-about-inner p {
      font-size: 1.8rem;
      line-height: 1.8;
      padding-bottom: 1.5em; }
      @media only screen and (max-width: 767px) {
        .section-about-inner p {
          font-size: 1.4rem;
          letter-spacing: .1rem;
          line-height: 1.6;
          padding: 0 0 1rem; } }
  .section-about-catch {
    width: 100%;
    font-size: 2rem;
    text-align: center;
    font-weight: 700;
    color: #053c7c;
    padding-top: 4rem; }
    @media only screen and (max-width: 1024px) {
      .section-about-catch {
        padding: 2.5rem 3rem; } }
  @media only screen and (max-width: 1024px) and (max-width: 767px) {
    .section-about-catch {
      font-size: 1.6rem;
      padding: 1.5rem; } }

  .section-about-mv {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding-top: 5rem; }
    @media only screen and (max-width: 1024px) {
      .section-about-mv {
        padding: 2rem; } }
    .section-about-mv dt {
      width: 27rem;
      height: 5rem;
      font-size: 2.4rem;
      background: #fff;
      border: 1px solid #c4dadf;
      border-radius: 5rem;
      display: flex;
      justify-content: center;
      align-items: center;
      margin-bottom: 2rem;
      color: #31a4ee; }
      @media only screen and (max-width: 1024px) {
        .section-about-mv dt {
          font-size: 2rem;
          height: 4.6rem;
          width: 24rem; } }
  @media only screen and (max-width: 1024px) and (max-width: 767px) {
    .section-about-mv dt {
      font-size: 1.6rem;
      height: 4rem;
      width: 20rem; } }

    .section-about-mv dd {
      max-width: 100%;
      width: 85rem; }
      .section-about-mv dd iframe {
        width: 100% !important;
        height: auto;
        aspect-ratio: 16/9; }
.section-box {
  padding: 10rem 3rem; }
  @media only screen and (max-width: 1024px) {
    .section-box {
      padding: 7rem 3rem; } }
  @media only screen and (max-width: 767px) {
    .section-box {
      padding: 5rem 5vw; } }
  .section-box-header {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    padding-bottom: 5rem; }
    @media only screen and (max-width: 1024px) {
      .section-box-header {
        padding-bottom: 3rem; } }
    @media only screen and (max-width: 767px) {
      .section-box-header {
        padding-bottom: 1.5rem; } }
    .section-box-header-en {
      background: #31a4ee;
      font-family: "Barlow", serif;
      border-radius: 5rem;
      font-size: 1.7rem;
      color: #fff;
      font-weight: 700;
      padding: 0 1rem;
      margin-bottom: .3rem; }
      @media only screen and (max-width: 1024px) {
        .section-box-header-en {
          font-size: 1.5rem; } }
  @media only screen and (max-width: 1024px) and (max-width: 767px) {
    .section-box-header-en {
      font-size: 1.2rem; } }

    .section-box-header-ttl {
      font-size: 4.8rem;
      color: #053c7c; }
      @media only screen and (max-width: 1024px) {
        .section-box-header-ttl {
          font-size: 3.6rem; } }
      @media only screen and (max-width: 767px) {
        .section-box-header-ttl {
          font-size: 2.4rem; } }
  .section-box-text {
    max-width: 90rem;
    margin: 0 auto 5rem;
    text-align: left; }
    @media only screen and (max-width: 1024px) {
      .section-box-text {
        margin-bottom: 2.5rem; } }
    @media only screen and (max-width: 767px) {
      .section-box-text {
        margin-bottom: 1.5rem; } }
    .section-box-text p {
      font-size: 1.8rem;
      line-height: 2; }
      @media only screen and (max-width: 767px) {
        .section-box-text p {
          font-size: 1.4rem;
          line-height: 1.5; } }
  .section-box-point {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    align-items: stretch; }
    .section-box-point .article-point {
      max-width: 32.5rem;
      width: 30%;
      background: linear-gradient(135deg, #31a4ee, #053c7c);
      padding: .5rem;
      position: relative;
      margin: 0 2rem 3rem;
      display: flex;
      flex-direction: column;
      align-items: center;
      justify-content: space-between; }
      @media only screen and (max-width: 1024px) {
        .section-box-point .article-point {
          width: 48%; } }
  @media only screen and (max-width: 1024px) and (max-width: 767px) {
    .section-box-point .article-point {
      width: 100%;
      margin: 0 0 2rem;
      padding: .3rem; } }

      .section-box-point .article-point:before {
        content: "";
        width: 3.6rem;
        height: 3.6rem;
        background: #31a4ee;
        border-radius: 50%;
        display: flex;
        justify-content: center;
        align-items: center;
        letter-spacing: 0;
        font-size: 2.4rem;
        font-weight: 600;
        color: #fff;
        position: absolute;
        left: 1.5rem;
        top: 1.5rem; }
        @media only screen and (max-width: 767px) {
          .section-box-point .article-point:before {
            width: 3rem;
            height: 3rem;
            font-size: 1.7rem; } }
      .section-box-point .article-point:nth-of-type(1):before {
        content: "1"; }
      .section-box-point .article-point:nth-of-type(2):before {
        content: "2"; }
      .section-box-point .article-point:nth-of-type(3):before {
        content: "3"; }
      .section-box-point .article-point:nth-of-type(4):before {
        content: "4"; }
      .section-box-point .article-point:nth-of-type(5):before {
        content: "5"; }
      .section-box-point .article-point:nth-of-type(6):before {
        content: "6"; }
      .section-box-point .article-point:nth-of-type(7):before {
        content: "7"; }
      .section-box-point .article-point:nth-of-type(8):before {
        content: "8"; }
      .section-box-point .article-point:nth-of-type(9):before {
        content: "9"; }
      .section-box-point .article-point-fig {
        width: 100%;
        background: #fff;
        padding: 2.5rem 0 0;
        text-align: center; }
        .section-box-point .article-point-fig img {
          width: auto;
          height: 15rem; }
          @media only screen and (max-width: 767px) {
            .section-box-point .article-point-fig img {
              height: 10rem; } }
      .section-box-point .article-point-ttl {
        width: 100%;
        font-size: 2.4rem;
        color: #053c7c;
        background: #fff;
        text-align: center;
        padding: 1.5rem; }
        @media only screen and (max-width: 767px) {
          .section-box-point .article-point-ttl {
            font-size: 1.8rem;
            padding: 0; } }
      .section-box-point .article-point p {
        width: 100%;
        height: 100%;
        background: #fff;
        font-size: 1.6rem;
        padding: 1.5rem; }
        @media only screen and (max-width: 767px) {
          .section-box-point .article-point p {
            font-size: 1.4rem; } }
  .section-box#target {
    background: rgba(196, 235, 245, 0.3); }
  .section-box-target {
    max-width: 100rem;
    margin: 0 auto;
    display: flex;
    justify-content: center;
    border-right: 1px solid rgba(5, 60, 124, 0.1); }
    @media only screen and (max-width: 1024px) {
      .section-box-target {
        flex-wrap: wrap;
        border: none; } }
    .section-box-target .article-target {
      width: 25%;
      padding: 0 1.5rem 3rem;
      position: relative;
      z-index: 1;
      border-left: 1px solid rgba(5, 60, 124, 0.1);
      display: flex;
      flex-direction: column;
      align-items: center; }
      @media only screen and (max-width: 1024px) {
        .section-box-target .article-target {
          width: 50%;
          max-width: 32rem;
          margin: 2.5rem 0;
          padding-top: 1rem; }
          .section-box-target .article-target:nth-of-type(2), .section-box-target .article-target:nth-of-type(4) {
            border-right: 1px solid rgba(5, 60, 124, 0.1); } }
  @media only screen and (max-width: 1024px) and (max-width: 767px) {
    .section-box-target .article-target {
      margin: 1.5rem 0;
      padding: 1rem .5rem; } }

      .section-box-target .article-target-fig {
        margin-bottom: 1.5rem;
        padding: 2rem 0; }
        .section-box-target .article-target-fig img {
          width: 12rem; }
          @media only screen and (max-width: 767px) {
            .section-box-target .article-target-fig img {
              width: 9rem; } }
        @media only screen and (max-width: 767px) {
          .section-box-target .article-target-fig {
            padding: 1.5rem 0;
            margin-bottom: 1rem; } }
      .section-box-target .article-target-en {
        position: absolute;
        font-size: 6rem;
        font-weight: 600;
        color: #fff;
        writing-mode: vertical-rl;
        left: 0;
        top: .5rem;
        z-index: -1; }
        @media only screen and (max-width: 767px) {
          .section-box-target .article-target-en {
            font-size: 4rem; } }
      .section-box-target .article-target-ttl {
        font-size: 2.4rem;
        margin: 0 auto 1rem;
        text-align: center;
        color: #053c7c; }
        .section-box-target .article-target-ttl span {
          color: #31a4ee; }
        @media only screen and (max-width: 767px) {
          .section-box-target .article-target-ttl {
            font-size: 1.8rem;
            margin-bottom: 1rem; } }
      .section-box-target .article-target ul {
        font-size: 1.6rem;
        margin: 0 auto; }
        @media only screen and (max-width: 767px) {
          .section-box-target .article-target ul {
            font-size: 1.1rem; } }
        .section-box-target .article-target ul li {
          display: flex;
          justify-content: flex-start;
          padding-top: .5rem; }
          .section-box-target .article-target ul li:before {
            content: "●";
            color: #053c7c;
            flex-shrink: 0;
            margin-right: .5rem; }
  .section-box#works {
    background: #053c7c;
    position: relative;
    z-index: 1;
    padding: 10rem 3vw;
    color: #fff; }
    @media only screen and (max-width: 767px) {
      .section-box#works {
        padding: 3rem 5vw 5rem; } }
    .section-box#works:before {
      content: "";
      width: 100%;
      height: 100%;
      background: url("../../img/top/bg_works.jpg") 50% 0%;
      background-size: 128rem auto;
      opacity: 0.05;
      position: absolute;
      left: 0;
      top: 0;
      z-index: -1; }
      @media only screen and (max-width: 767px) {
        .section-box#works:before {
          background-size: 100% auto; } }
    .section-box#works .section-box-header-ttl {
      display: flex;
      flex-direction: column;
      justify-content: center;
      align-items: center;
      line-height: 1.2;
      color: #fff; }
      .section-box#works .section-box-header-ttl span {
        font-size: 2.4rem; }
        @media only screen and (max-width: 767px) {
          .section-box#works .section-box-header-ttl span {
            font-size: 1.6rem; } }
        .section-box#works .section-box-header-ttl span b {
          font-family: "Barlow", serif;
          font-size: 3.6rem; }
          @media only screen and (max-width: 767px) {
            .section-box#works .section-box-header-ttl span b {
              font-size: 2rem; } }
  .section-box-works {
    display: flex;
    justify-content: center;
    padding-bottom: 10rem; }
    @media only screen and (max-width: 1024px) {
      .section-box-works {
        flex-wrap: wrap; } }
    @media only screen and (max-width: 767px) {
      .section-box-works {
        padding-bottom: 2rem;
        flex-direction: column; } }
    .section-box-works dl {
      width: 34rem;
      max-width: 50%;
      padding: 0 1.5vw;
      overflow: visible; }
      @media only screen and (max-width: 1024px) {
        .section-box-works dl {
          padding-bottom: 5rem; } }
      @media only screen and (max-width: 767px) {
        .section-box-works dl {
          max-width: 100%;
          margin: 0 auto; } }
      .section-box-works dl dt {
        width: 17rem;
        height: 4.6rem;
        border-radius: 5rem;
        display: flex;
        justify-content: center;
        align-items: center;
        background: #a8d7ec;
        font-size: 2.4rem;
        margin: 0 auto 1.5rem;
        color: #053c7c;
        position: relative;
        overflow: visible; }
        .section-box-works dl dt span {
          position: absolute;
          font-size: 1.8rem;
          color: #fff;
          left: 50%;
          margin-left: -6em;
          width: 12em;
          top: -2em;
          text-align: center; }
          @media only screen and (max-width: 767px) {
            .section-box-works dl dt span {
              font-size: 1.2rem; } }
        @media only screen and (max-width: 767px) {
          .section-box-works dl dt {
            font-size: 1.5rem;
            width: 10rem;
            height: 3.6rem;
            margin-bottom: 2rem; } }
      .section-box-works dl dd {
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center; }
        .section-box-works dl dd figure {
          margin: 0 auto .3rem; }
          .section-box-works dl dd figure img {
            width: auto;
            /* max-width: none;
          height: 22rem;*/ }
            @media only screen and (max-width: 767px) {
              .section-box-works dl dd figure img {
                height: 16rem; } }
        .section-box-works dl dd p {
          font-size: 1.6rem; }
          @media only screen and (max-width: 767px) {
            .section-box-works dl dd p {
              font-size: 1.3rem; } }
          .section-box-works dl dd p small {
            font-size: 1.2rem;
            display: inline-block; }
            @media only screen and (max-width: 767px) {
              .section-box-works dl dd p small {
                font-size: 1rem; } }
    @media only screen and (max-width: 767px) {
      .section-box-works:nth-of-type(1) dl:nth-of-type(1) dd {
        height: 20rem;
        display: flex;
        justify-content: center;
        align-items: center;
        overflow: hidden; } }
  .section-box-voice {
    display: flex;
    flex-direction: column;
    align-items: center; }
    .section-box-voice-ttl {
      background: #CBEAF3;
      border-radius: 5rem;
      font-size: 2.4rem;
      color: #053c7c;
      padding: .6rem 2rem;
      margin-bottom: 4rem; }
      @media only screen and (max-width: 767px) {
        .section-box-voice-ttl {
          font-size: 2rem; } }
    .section-box-voice dl {
      display: flex;
      justify-content: center;
      overflow: visible; }
      @media only screen and (max-width: 1024px) {
        .section-box-voice dl {
          flex-wrap: wrap; } }
      .section-box-voice dl div {
        width: 23.7rem;
        background: #fff;
        border-radius: 2rem;
        padding: 2rem;
        margin: .5rem;
        display: flex;
        flex-direction: column;
        justify-content: space-between; }
        @media only screen and (max-width: 1024px) {
          .section-box-voice dl div {
            width: 45%;
            margin: 1rem 1rem 3rem; } }
  @media only screen and (max-width: 1024px) and (max-width: 767px) {
    .section-box-voice dl div {
      width: 100%;
      margin: 0 0 3rem;
      padding: 1.5rem; } }

        .section-box-voice dl div dt {
          margin-top: -5rem;
          margin-bottom: 1.5rem;
          text-align: center;
          flex-shrink: 0; }
          @media only screen and (max-width: 767px) {
            .section-box-voice dl div dt {
              margin-top: -4rem; } }
          .section-box-voice dl div dt img {
            width: 9rem;
            background: #fff;
            border-radius: 50%;
            margin: 0 auto; }
            @media only screen and (max-width: 767px) {
              .section-box-voice dl div dt img {
                width: 6rem; } }
        .section-box-voice dl div dd {
          display: flex;
          height: 100%;
          flex-direction: column;
          justify-content: space-between;
          align-items: center; }
          .section-box-voice dl div dd p {
            font-size: 1.6rem;
            text-align: left;
            padding-bottom: .5rem;
            color: #313131; }
            @media only screen and (max-width: 767px) {
              .section-box-voice dl div dd p {
                font-size: 1.4rem; } }
            .section-box-voice dl div dd p:nth-of-type(1) {
              margin-bottom: auto; }
            .section-box-voice dl div dd p:nth-of-type(2) {
              font-size: 1.4rem;
              text-align: center;
              color: #053c7c;
              font-weight: 700;
              margin-top: auto; }
              @media only screen and (max-width: 767px) {
                .section-box-voice dl div dd p:nth-of-type(2) {
                  font-size: 1.2rem; } }
  .section-box-movie {
    display: flex;
    justify-content: center;
    align-items: center; }
    @media only screen and (max-width: 767px) {
      .section-box-movie {
        flex-direction: column; } }
    .section-box-movie-ttl {
      font-size: 4.5rem;
      line-height: 1;
      flex-shrink: 0;
      margin-right: 5vw;
      text-align: center; }
      @media only screen and (max-width: 767px) {
        .section-box-movie-ttl {
          font-size: 2.4rem;
          margin: 0 0 1.5rem; } }
      .section-box-movie-ttl span {
        font-size: 2rem; }
        @media only screen and (max-width: 767px) {
          .section-box-movie-ttl span {
            font-size: 1.4rem; } }
        .section-box-movie-ttl span b {
          font-size: 2.4rem;
          font-family: "Barlow", serif; }
          @media only screen and (max-width: 767px) {
            .section-box-movie-ttl span b {
              font-size: 1.8rem; } }
    .section-box-movie iframe {
      width: 100%;
      max-width: 65rem; }
  .section-box-outline .aside-fair {
    max-width: 90rem;
    margin: 0 auto;
    background: rgba(238, 238, 238, 0.5);
    padding: 3rem 2.5rem;
    display: flex;
    flex-direction: row-reverse;
    justify-content: space-between; }
    @media only screen and (max-width: 767px) {
      .section-box-outline .aside-fair {
        flex-direction: column;
        padding: 2rem; } }
    .section-box-outline .aside-fair-fig {
      width: 39rem;
      margin-left: 2.5rem;
      flex-shrink: 0; }
      @media only screen and (max-width: 1024px) {
        .section-box-outline .aside-fair-fig {
          width: 45%; } }
  @media only screen and (max-width: 1024px) and (max-width: 767px) {
    .section-box-outline .aside-fair-fig {
      width: 100%;
      margin: 0 0 1.5rem; } }

    .section-box-outline .aside-fair-inner {
      width: 100%; }
      .section-box-outline .aside-fair-inner p {
        font-size: 1.6rem;
        padding-bottom: 1.5rem; }
        @media only screen and (max-width: 767px) {
          .section-box-outline .aside-fair-inner p {
            font-size: 1.3rem;
            padding-bottom: 1rem; } }
      .section-box-outline .aside-fair-inner > dl {
        display: flex;
        justify-content: space-between;
        align-items: center;
        background: #fff;
        border-radius: .5rem;
        padding: 1rem 0;
        font-size: 1.6rem; }
        @media only screen and (max-width: 1024px) {
          .section-box-outline .aside-fair-inner > dl {
            flex-direction: column; } }
  @media only screen and (max-width: 1024px) and (max-width: 767px) {
    .section-box-outline .aside-fair-inner > dl {
      font-size: 1.3rem; } }

        .section-box-outline .aside-fair-inner > dl dt {
          width: 10rem;
          text-align: center;
          color: #053c7c;
          flex-shrink: 0; }
          @media only screen and (max-width: 1024px) {
            .section-box-outline .aside-fair-inner > dl dt {
              width: 100%;
              padding-bottom: 1rem; } }
        .section-box-outline .aside-fair-inner > dl dd {
          width: 100%; }
          @media only screen and (max-width: 1024px) {
            .section-box-outline .aside-fair-inner > dl dd {
              padding: 0 1.5rem; } }
          .section-box-outline .aside-fair-inner > dl dd div {
            display: flex;
            justify-content: space-between;
            padding: .2rem; }
            @media only screen and (max-width: 1024px) {
              .section-box-outline .aside-fair-inner > dl dd div {
                padding: 0; } }
          .section-box-outline .aside-fair-inner > dl dd dl dt {
            width: 7rem;
            font-weight: 400;
            font-size: 1.4rem;
            text-align: left; }
            @media only screen and (max-width: 1024px) {
              .section-box-outline .aside-fair-inner > dl dd dl dt {
                padding: 0; } }
  @media only screen and (max-width: 1024px) and (max-width: 767px) {
    .section-box-outline .aside-fair-inner > dl dd dl dt {
      width: 5rem;
      font-size: 1.2rem; } }

    .section-box-outline .aside-fair-ttl {
      line-height: 1.3;
      padding-bottom: 1.5rem;
      font-size: 2.4rem;
      color: #053c7c;
      display: flex;
      flex-wrap: wrap;
      align-items: center; }
      @media only screen and (max-width: 767px) {
        .section-box-outline .aside-fair-ttl {
          font-size: 2rem; } }
      .section-box-outline .aside-fair-ttl span {
        margin-right: 1rem;
        font-size: 1.6rem; }
        @media only screen and (max-width: 767px) {
          .section-box-outline .aside-fair-ttl span {
            font-size: 1.3rem; } }
  .section-box-outline > dl {
    max-width: 90rem;
    margin: 0 auto;
    border-bottom: 1px solid #eee;
    margin-bottom: 10rem; }
    @media only screen and (max-width: 767px) {
      .section-box-outline > dl {
        margin-bottom: 4rem; } }
    .section-box-outline > dl > div {
      border-top: 1px solid #eee;
      padding: 2rem 0;
      display: flex;
      justify-content: space-between;
      align-items: center;
      font-size: 1.6rem; }
      @media only screen and (max-width: 767px) {
        .section-box-outline > dl > div {
          font-size: 1.3rem; } }
    .section-box-outline > dl dt {
      width: 17rem;
      color: #053c7c;
      flex-shrink: 0;
      text-align: center; }
      @media only screen and (max-width: 767px) {
        .section-box-outline > dl dt {
          width: 8rem; } }
    .section-box-outline > dl dd {
      width: 100%;
      padding-left: 2.5rem;
      border-left: 1px solid #eee; }
      @media only screen and (max-width: 767px) {
        .section-box-outline > dl dd {
          padding-left: 1.5rem; } }
      .section-box-outline > dl dd ul {
        display: flex;
        align-items: center; }
        .section-box-outline > dl dd ul li {
          margin-right: 2rem; }
  .section-box-plan {
    max-width: 100rem;
    margin: 0 auto 3rem;
    padding: 0 3vw; }
    @media only screen and (max-width: 767px) {
      .section-box-plan {
        padding: 0 5vw; } }
    .section-box-plan .article-plan {
      padding-bottom: 5rem;
      margin-bottom: 5rem;
      border-bottom: 1px solid #eee; }
      @media only screen and (max-width: 767px) {
        .section-box-plan .article-plan {
          padding: 0 0 1.5rem;
          margin-bottom: 1.5rem; } }
      .section-box-plan .article-plan:nth-last-of-type(1) {
        border-bottom: none; }
      .section-box-plan .article-plan-wrap {
        display: flex;
        justify-content: center;
        align-items: flex-start; }
        @media only screen and (max-width: 767px) {
          .section-box-plan .article-plan-wrap {
            flex-direction: column-reverse; } }
        .section-box-plan .article-plan-wrap .article-type {
          width: 43.5%;
          padding: 2.5rem;
          background: rgba(168, 215, 236, 0.3);
          border-radius: 1rem;
          margin-right: 1.5%; }
          @media only screen and (max-width: 767px) {
            .section-box-plan .article-plan-wrap .article-type {
              width: 100%;
              padding: 2rem;
              margin: 0 0 1rem; } }
          .section-box-plan .article-plan-wrap .article-type:nth-of-type(2) {
            width: 55%;
            background: #053c7c;
            margin-right: 0; }
            @media only screen and (max-width: 767px) {
              .section-box-plan .article-plan-wrap .article-type:nth-of-type(2) {
                width: 100%; } }
            .section-box-plan .article-plan-wrap .article-type:nth-of-type(2) .article-type-ttl {
              color: #fff; }
            .section-box-plan .article-plan-wrap .article-type:nth-of-type(2) .article-type-price {
              background: #fff; }
            .section-box-plan .article-plan-wrap .article-type:nth-of-type(2) .article-type-content {
              background: #EFF8FC;
              display: flex;
              align-items: center;
              justify-content: center;
              color: #053c7c;
              padding: 2rem 1rem; }
              @media only screen and (max-width: 767px) {
                .section-box-plan .article-plan-wrap .article-type:nth-of-type(2) .article-type-content {
                  font-size: 1.2rem;
                  flex-direction: column; } }
              .section-box-plan .article-plan-wrap .article-type:nth-of-type(2) .article-type-content dt {
                width: 10rem;
                text-align: center; }
                @media only screen and (max-width: 767px) {
                  .section-box-plan .article-plan-wrap .article-type:nth-of-type(2) .article-type-content dt {
                    width: 100%;
                    margin-bottom: .5rem; }
                    .section-box-plan .article-plan-wrap .article-type:nth-of-type(2) .article-type-content dt br {
                      display: none; } }
              .section-box-plan .article-plan-wrap .article-type:nth-of-type(2) .article-type-content dd ul li {
                display: flex;
                justify-content: flex-start; }
                .section-box-plan .article-plan-wrap .article-type:nth-of-type(2) .article-type-content dd ul li:before {
                  content: "●";
                  color: #036fc4;
                  flex-shrink: 0;
                  margin-right: .3rem; }
          .section-box-plan .article-plan-wrap .article-type-ttl {
            font-size: 3rem;
            text-align: center;
            padding-bottom: 2rem;
            color: #053c7c; }
            @media only screen and (max-width: 767px) {
              .section-box-plan .article-plan-wrap .article-type-ttl {
                font-size: 1.6rem;
                padding-bottom: 1.2rem; } }
          .section-box-plan .article-plan-wrap .article-type-price {
            padding: 1.5rem 0;
            display: flex;
            flex-direction: column;
            align-items: center;
            color: #053c7c;
            font-weight: 700; }
            .section-box-plan .article-plan-wrap .article-type-price-base {
              font-size: 1.4rem; }
              @media only screen and (max-width: 767px) {
                .section-box-plan .article-plan-wrap .article-type-price-base {
                  font-size: 1.2rem; } }
              .section-box-plan .article-plan-wrap .article-type-price-base strong {
                font-size: 2rem; }
                @media only screen and (max-width: 767px) {
                  .section-box-plan .article-plan-wrap .article-type-price-base strong {
                    font-size: 1.5rem; } }
            .section-box-plan .article-plan-wrap .article-type-price > span {
              color: #a8d7ec;
              font-size: 4rem;
              line-height: 1;
              margin: 0; }
              @media only screen and (max-width: 767px) {
                .section-box-plan .article-plan-wrap .article-type-price > span {
                  font-size: 2.4rem; } }
            .section-box-plan .article-plan-wrap .article-type-price-sale {
              font-size: 1.5rem;
              line-height: 1;
              display: flex;
              justify-content: center;
              align-items: baseline;
              flex-wrap: wrap; }
              @media only screen and (max-width: 767px) {
                .section-box-plan .article-plan-wrap .article-type-price-sale {
                  font-size: 1.2rem; } }
              .section-box-plan .article-plan-wrap .article-type-price-sale p {
                width: 100%;
                text-align: center;
                font-weight: 700; }
              .section-box-plan .article-plan-wrap .article-type-price-sale .end {
                background: #f39800;
                color: #fff;
                font-size: 1.2rem;
                font-weight: 700;
                line-height: 1.1;
                text-align: center;
                padding: .8rem 1.2rem;
                border-radius: 5rem;
                margin-left: .5rem;
                margin-top: auto; }
                @media only screen and (max-width: 767px) {
                  .section-box-plan .article-plan-wrap .article-type-price-sale .end {
                    font-size: .9rem;
                    padding: .4rem .8rem;
                    margin: auto 0 0 0.3rem; } }
              .section-box-plan .article-plan-wrap .article-type-price-sale strong {
                font-size: 4rem;
                color: #e60012; }
                @media only screen and (max-width: 767px) {
                  .section-box-plan .article-plan-wrap .article-type-price-sale strong {
                    font-size: 2.4rem; } }
                .section-box-plan .article-plan-wrap .article-type-price-sale strong span {
                  font-size: 2rem; }
                  @media only screen and (max-width: 767px) {
                    .section-box-plan .article-plan-wrap .article-type-price-sale strong span {
                      font-size: 1.6rem; } }
      .section-box-plan .article-plan-header {
        display: flex;
        justify-content: center;
        align-items: center;
        flex-direction: column;
        padding-bottom: 1.5rem; }
        .section-box-plan .article-plan-header-ttl {
          color: #053c7c;
          font-size: 3rem;
          line-height: 1; }
          @media only screen and (max-width: 767px) {
            .section-box-plan .article-plan-header-ttl {
              font-size: 1.6rem; } }
          .section-box-plan .article-plan-header-ttl strong {
            font-size: 4.2rem; }
            @media only screen and (max-width: 767px) {
              .section-box-plan .article-plan-header-ttl strong {
                font-size: 2.4rem; } }
        .section-box-plan .article-plan-header-size {
          font-size: 2rem;
          background: #036fc4;
          border-radius: 5rem;
          padding: .1rem 1.2rem;
          color: #fff;
          margin-top: .5rem; }
          @media only screen and (max-width: 767px) {
            .section-box-plan .article-plan-header-size {
              font-size: 1.4rem; } }
      .section-box-plan .article-plan-price {
        padding: 2.5rem 0;
        font-weight: 700;
        font-size: 1.6rem;
        text-align: center; }
        @media only screen and (max-width: 767px) {
          .section-box-plan .article-plan-price {
            padding: 1.5rem 0;
            font-size: 1.2rem; } }
        .section-box-plan .article-plan-price strong {
          font-size: 4rem; }
          @media only screen and (max-width: 767px) {
            .section-box-plan .article-plan-price strong {
              font-size: 2rem; } }
          .section-box-plan .article-plan-price strong span {
            font-size: 2rem; }
            @media only screen and (max-width: 767px) {
              .section-box-plan .article-plan-price strong span {
                font-size: 1.4rem; } }
      .section-box-plan .article-plan-inner {
        background: rgba(168, 215, 236, 0.3);
        padding: 2.5rem;
        max-width: 45%;
        margin: 0 auto;
        border-radius: 1rem;
        color: #053c7c; }
        @media only screen and (max-width: 767px) {
          .section-box-plan .article-plan-inner {
            max-width: 100%;
            padding: 2rem; } }
        @media only screen and (max-width: 767px) {
          .section-box-plan .article-plan-inner > p {
            line-height: 1.2; } }
        .section-box-plan .article-plan-inner > p small {
          font-size: 1.2rem; }
          @media only screen and (max-width: 767px) {
            .section-box-plan .article-plan-inner > p small {
              font-size: 1rem; } }
  .section-box-option {
    max-width: 90rem;
    margin: 0 auto;
    padding: 0 3vw 8rem; }
    @media only screen and (max-width: 767px) {
      .section-box-option {
        padding: 0 5vw 3rem; } }
    .section-box-option-ttl {
      font-size: 2.4rem;
      line-height: 1;
      display: flex;
      align-items: flex-end;
      flex-wrap: wrap;
      padding-bottom: 2rem;
      border-bottom: 1px solid #eee;
      color: #053c7c; }
      @media only screen and (max-width: 767px) {
        .section-box-option-ttl {
          font-size: 1.6rem;
          flex-direction: column;
          align-items: flex-start;
          padding-bottom: 1rem; } }
      .section-box-option-ttl small {
        font-size: 1.2rem;
        line-height: 1.1;
        font-weight: 400;
        margin-left: 1rem; }
        @media only screen and (max-width: 767px) {
          .section-box-option-ttl small {
            font-size: 1rem;
            margin-left: 0;
            margin-top: .3rem; } }
    .section-box-option-service {
      padding-top: 2.5rem; }
      @media only screen and (max-width: 767px) {
        .section-box-option-service {
          padding-top: 2rem; } }
      .section-box-option-service h5 {
        font-size: 2rem;
        color: #053c7c; }
        @media only screen and (max-width: 767px) {
          .section-box-option-service h5 {
            font-size: 1.6rem;
            padding-bottom: .5rem; } }
      .section-box-option-service > p {
        font-size: 1.6rem;
        padding-bottom: 2.5rem; }
        @media only screen and (max-width: 767px) {
          .section-box-option-service > p {
            font-size: 1.3rem;
            padding-bottom: 1rem; } }
      .section-box-option-service-fig {
        width: 45rem;
        flex-shrink: 0;
        margin-right: 2rem; }
        @media only screen and (max-width: 767px) {
          .section-box-option-service-fig {
            width: 100%;
            margin: 0 0 1.5rem; } }
      .section-box-option-service-wrap {
        display: flex;
        justify-content: space-between; }
        @media only screen and (max-width: 767px) {
          .section-box-option-service-wrap {
            flex-direction: column; } }
        .section-box-option-service-wrap dl {
          width: 100%; }
          .section-box-option-service-wrap dl > div {
            background: rgba(238, 238, 238, 0.5);
            margin-bottom: 1.5rem;
            padding: 1.5rem; }
            @media only screen and (max-width: 767px) {
              .section-box-option-service-wrap dl > div {
                padding: 1rem; } }
            .section-box-option-service-wrap dl > div dt {
              text-align: center;
              color: #053c7c;
              font-size: 1.6rem;
              margin-bottom: .5rem; }
              @media only screen and (max-width: 767px) {
                .section-box-option-service-wrap dl > div dt {
                  font-size: 1.3rem; } }
            .section-box-option-service-wrap dl > div dd ul {
              display: flex;
              flex-wrap: wrap; }
              .section-box-option-service-wrap dl > div dd ul li {
                display: flex;
                font-size: 1.4rem;
                justify-content: flex-start;
                padding: .4rem; }
                @media only screen and (max-width: 767px) {
                  .section-box-option-service-wrap dl > div dd ul li {
                    font-size: 1.2rem; } }
                .section-box-option-service-wrap dl > div dd ul li:before {
                  content: "●";
                  color: #036fc4;
                  flex-shrink: 0;
                  margin-right: .3rem; }
    .section-box-option .dl-option {
      display: flex;
      justify-content: space-between;
      flex-wrap: wrap; }
      .section-box-option .dl-option > div {
        width: 49%;
        border-bottom: 1px solid #eee;
        display: flex;
        justify-content: space-between;
        font-size: 1.6rem;
        font-weight: 700;
        padding: 1rem; }
        @media only screen and (max-width: 767px) {
          .section-box-option .dl-option > div {
            width: 100%;
            padding: 1rem;
            font-size: 1.3rem;
            line-height: 1.3; } }
        .section-box-option .dl-option > div dt {
          text-align: left; }
        .section-box-option .dl-option > div dd {
          text-align: right; }
          .section-box-option .dl-option > div dd span {
            font-size: 1rem; }
