@charset "UTF-8";
/* ==========================================================================
   top.scss
   Top page (index.html) specific styles. Requires style.css to be loaded
   first for reset / base / header / footer. Compiles to ../css/top.css
   ========================================================================== */
@use 'sass:math';
@use 'sass:math';
.p-mv {
  position: relative;
  overflow: hidden;
  background: #000f43; }
  .p-mv__bg {
    position: absolute;
    inset: 0;
    z-index: 0; }
    .p-mv__bg img {
      width: 100%;
      height: 100%;
      object-fit: cover; }
  .p-mv__overlay {
    position: absolute;
    inset: 0;
    background: rgba(0, 76, 164, 0.8); }
  .p-mv__body {
    position: relative;
    z-index: 1;
    height: calc(100vh - 19rem);
    min-height: 50rem;
    display: flex;
    justify-content: center;
    align-items: center; }
    @media (max-width: 767px) {
      .p-mv__body {
        height: calc(80vh - 9rem);
        padding-top: 8rem;
        min-height: 0; } }
  .p-mv__inner {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    gap: 4rem; }
    @media (max-width: 767px) {
      .p-mv__inner {
        padding: 0 5vw; } }
  .p-mv__heading .p-mv__heading-line {
    display: block;
    overflow: hidden; }
    .p-mv__heading .p-mv__heading-line .p-mv__heading-chip {
      display: inline-block;
      background: rgba(255, 255, 255, 0.85);
      color: #000d3c;
      font-weight: 700;
      line-height: 1.6;
      letter-spacing: .3rem;
      padding: 0.1rem 1rem 0.1rem 2rem;
      white-space: nowrap;
      transform: translateY(110%);
      opacity: 0;
      transition: transform 1s cubic-bezier(0.19, 1, 0.22, 1), opacity 1s ease; }
      @media (max-width: 767px) {
        .p-mv__heading .p-mv__heading-line .p-mv__heading-chip {
          padding: 0.1rem 0.8rem 0.1rem 1.4rem; } }
    .p-mv__heading .p-mv__heading-line.line2 {
      margin-top: 1.4rem;
      margin-left: 15rem;
      text-align: right; }
      @media (max-width: 767px) {
        .p-mv__heading .p-mv__heading-line.line2 {
          margin-left: 6rem; } }
      .p-mv__heading .p-mv__heading-line.line2 .p-mv__heading-chip {
        transition-delay: 0.15s; }
  .p-mv__heading .fs-sm {
    font-size: 4rem; }
    @media (max-width: 767px) {
      .p-mv__heading .fs-sm {
        font-size: 2.4rem; } }
  .p-mv__heading .fs-md {
    font-size: 4.8rem; }
    @media (max-width: 767px) {
      .p-mv__heading .fs-md {
        font-size: 2.8rem; } }
  .p-mv__heading .fs-lg {
    font-size: 5.2rem; }
    @media (max-width: 767px) {
      .p-mv__heading .fs-lg {
        font-size: 3rem; } }
  .p-mv__heading.is-visible .p-mv__heading-chip {
    transform: translateY(0);
    opacity: 1; }
  .p-mv__lead {
    color: #ffffff;
    font-size: 1.6rem;
    line-height: 2.5;
    font-weight: 700;
    max-width: 42rem;
    padding-bottom: 0.6rem;
    opacity: 0;
    transform: translateY(16px);
    transition: transform 0.9s ease 0.5s, opacity 0.9s ease 0.5s; }
    .p-mv__lead.is-visible {
      opacity: 1;
      transform: translateY(0); }
    @media (max-width: 767px) {
      .p-mv__lead {
        font-size: 1.5rem;
        line-height: 1.9;
        padding: 0 3vw; } }
  .p-mv__slider {
    display: flex;
    /* スライドのグループを横並び */
    position: relative;
    z-index: 1;
    width: 100%;
    overflow: hidden;
    height: 17.5rem;
    background-image: linear-gradient(0deg, #000f43 0%, rgba(0, 76, 164, 0) 100%); }
    @media (max-width: 767px) {
      .p-mv__slider {
        height: 9rem; } }
  .p-mv__slider-track {
    display: flex;
    height: 100%;
    width: max-content;
    animation: mv-slide-pc 26s linear infinite; }
    @media (max-width: 767px) {
      .p-mv__slider-track {
        animation: mv-slide-pc 18s linear infinite; }
        .p-mv__slider-track.sp-hidden {
          display: none; } }
  .p-mv__slide {
    position: relative;
    flex: 0 0 27.5rem;
    height: 100%;
    margin-right: -2rem;
    clip-path: polygon(3rem 0, 100% 0, calc(100% - 3rem) 100%, 0 100%); }
    @media (max-width: 767px) {
      .p-mv__slide {
        flex: 0 0 16.5rem;
        margin-right: -2rem;
        clip-path: polygon(3rem 0, 100% 0, calc(100% - 3rem) 100%, 0 100%); } }
    .p-mv__slide img {
      width: 100%;
      height: 100%;
      object-fit: cover; }

@keyframes mv-slide-pc {
  0% {
    transform: translateX(0); }
  100% {
    transform: translateX(-100%); } }
.p-about {
  position: relative;
  padding: 20rem 0 12rem;
  background-image: url("../img/about-bg.jpg");
  background-repeat: repeat-x;
  background-position: center top;
  background-size: auto 100%;
  text-align: center;
  color: #ffffff; }
  .p-about:after {
    content: "";
    width: 100%;
    height: 6rem;
    position: absolute;
    left: 0;
    top: 0;
    background-image: linear-gradient(180deg, #000f43 0%, rgba(0, 15, 67, 0) 100%); }
    @media (min-width: 768px) and (max-width: 1100px) {
      .p-about:after {
        height: 3rem; } }
  @media (min-width: 768px) and (max-width: 1100px) {
    .p-about {
      padding: 7rem 0 5rem; } }
  @media (max-width: 767px) {
    .p-about {
      padding: 7rem 0 8rem; } }
  .p-about-header {
    max-width: 128rem;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    overflow: hidden;
    padding: 0 12rem; }
    @media (max-width: 767px) {
      .p-about-header {
        padding: 0 5vw;
        align-items: center; } }
  .p-about .c-section-title__en {
    color: rgba(0, 13, 60, 0.3);
    font-size: 10rem;
    font-weight: 500;
    margin-left: -8rem; }
    @media (max-width: 767px) {
      .p-about .c-section-title__en {
        font-size: 6rem;
        margin-left: 0; } }
  .p-about__lead {
    margin-top: -3.8rem;
    margin-left: 7.5rem;
    font-size: 1.3rem;
    font-weight: 700;
    letter-spacing: 0; }
    @media (max-width: 767px) {
      .p-about__lead {
        margin-top: -1.6rem;
        margin-left: 4rem;
        font-size: 1rem; } }
  .p-about__title {
    margin-top: -3rem;
    font-size: 4rem;
    font-weight: 700;
    letter-spacing: 0.06em; }
    @media (max-width: 767px) {
      .p-about__title {
        font-size: 4rem;
        margin-top: -1.5rem; } }
  .p-about__title-num {
    font-size: 10rem;
    font-weight: 600; }
    @media (max-width: 767px) {
      .p-about__title-num {
        font-size: 6rem; } }
  .p-about__title-sub {
    font-size: 5rem; }
    @media (max-width: 767px) {
      .p-about__title-sub {
        font-size: 3rem; } }
  .p-about__list {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 2.4rem;
    margin-top: 6rem; }
    @media (max-width: 767px) {
      .p-about__list {
        grid-template-columns: 1fr;
        gap: 2.4rem;
        margin-top: 4rem; } }
  .p-about__item {
    background: rgba(0, 15, 67, 0.4);
    border: 1px solid rgba(255, 255, 255, 0.8);
    border-radius: 0.6rem;
    padding: 1.6rem 1rem 3rem;
    box-shadow: inset 0 0 1.5rem rgba(0, 15, 67, 0.5), 0 0 2rem rgba(0, 0, 0, 0.05); }
  .p-about__num {
    display: block;
    font-size: 6rem;
    font-weight: 500;
    line-height: 1; }
    @media (max-width: 767px) {
      .p-about__num {
        font-size: 4rem; } }
  .p-about__label {
    margin-top: 1rem;
    font-size: 1.6rem;
    line-height: 1.3;
    font-weight: 700;
    letter-spacing: 0.05em; }
    .p-about__label .line {
      opacity: 0.5;
      font-weight: 400;
      margin: 0 0.2rem; }
  .p-about__label-en {
    margin-top: 0.2rem;
    font-size: 1.2rem;
    color: #00a4f0;
    letter-spacing: 0.04em; }
  .p-about__icon {
    width: 7rem;
    height: auto;
    margin: 2.4rem auto 0.4rem; }
  .p-about__item-title {
    font-size: 2.4rem;
    font-weight: 700;
    line-height: 1.2;
    height: 2.4em;
    overflow: hidden;
    margin-top: 1.8rem; }
    @media (max-width: 767px) {
      .p-about__item-title {
        font-size: 2.2rem; } }
    .p-about__item-title--center {
      display: flex;
      align-items: center;
      justify-content: center; }
  .p-about__item-text {
    margin-top: 1.4rem;
    font-size: 1.6rem;
    line-height: 1.9;
    color: #ffffff;
    font-weight: 500; }
    @media (max-width: 767px) {
      .p-about__item-text {
        font-size: 1.4rem; } }

.p-service {
  position: relative;
  padding: 11rem 0 9rem;
  overflow: hidden;
  background: #ffffff;
  text-align: center; }
  @media (max-width: 767px) {
    .p-service {
      padding: 7rem 0 6rem; } }
  .p-service__bg {
    position: absolute;
    inset: 0;
    z-index: 0; }
    .p-service__bg img {
      width: 100%;
      height: 100%;
      object-fit: cover;
      filter: blur(16px);
      opacity: 0.5;
      transform: scale(1.1); }
  .p-service__fade {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 30rem;
    background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 0%, white 100%);
    z-index: 0;
    pointer-events: none; }
  .p-service > .l-inner {
    position: relative;
    z-index: 1; }
  .p-service .c-section-title__en {
    font-size: 8rem;
    color: #00a4f0; }
    @media (max-width: 767px) {
      .p-service .c-section-title__en {
        font-size: 6.5rem; } }
  .p-service__lead {
    margin-top: 0.2rem;
    font-size: 1.2rem;
    font-weight: 700;
    letter-spacing: 0.1em;
    color: #001d7b; }
  .p-service__diagram {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-around;
    margin-top: 5.6rem;
    gap: 7rem 18rem; }
    @media (max-width: 767px) {
      .p-service__diagram {
        display: flex;
        flex-direction: column;
        gap: 3.6rem;
        margin-top: 4rem; } }
  .p-service__line {
    display: none; }
    @media (min-width: 768px) {
      .p-service__line {
        display: block;
        position: absolute;
        top: 50%;
        left: 50%;
        width: 100%;
        height: 1px;
        background: #ffffff;
        transform-origin: center; } }
    .p-service__line.line-a {
      transform: translate(-50%, -50%) rotate(45deg); }
    .p-service__line.line-b {
      transform: translate(-50%, -50%) rotate(-45deg); }
  .p-service__circle {
    position: absolute;
    top: 50%;
    left: 50%;
    z-index: 2;
    width: 32rem;
    height: 32rem;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(255, 255, 255, 0.9) 0%, rgba(255, 255, 255, 0) 50%);
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 9rem;
    transform: translate(-50%, -50%); }
    .p-service__circle img {
      width: 100%; }
    @media (max-width: 767px) {
      .p-service__circle {
        width: 18rem;
        height: auto;
        padding: 1.8rem;
        margin: 0 auto;
        position: static;
        text-align: center;
        transform: unset;
        background: none; } }
  .p-service__block {
    position: relative;
    z-index: 2;
    text-align: center; }
    .p-service__block.block-01, .p-service__block.block-04 {
      width: 100%;
      text-align: center; }
    .p-service__block.block-02 {
      max-width: 36rem; }
    .p-service__block.block-03 {
      max-width: 36rem; }
    @media (max-width: 767px) {
      .p-service__block {
        text-align: center !important;
        max-width: 100% !important;
        width: 100%; } }
  .p-service__num {
    font-size: 1.6rem;
    font-weight: 500;
    color: #00a4f0;
    letter-spacing: 0.08em; }
  .p-service__block-title {
    margin-top: 0.4rem;
    font-size: 3rem;
    font-weight: 700;
    color: #000d3c; }
    @media (max-width: 767px) {
      .p-service__block-title {
        font-size: 2.5rem; } }
  .p-service__checklist {
    width: 36rem;
    margin-top: 1.6rem;
    display: inline-flex;
    flex-direction: column;
    gap: 1rem;
    text-align: left; }
    @media (max-width: 767px) {
      .p-service__checklist {
        max-width: 100%; } }
    .p-service__checklist li {
      display: flex;
      align-items: center;
      gap: 0.8rem;
      background: #ffffff;
      border-radius: 10rem;
      padding: 1rem 1.6rem;
      box-shadow: 0 0.4rem 1.4rem rgba(0, 40, 100, 0.06); }
      .p-service__checklist li .material-symbols-outlined {
        font-size: 2.4rem;
        flex-shrink: 0;
        background: linear-gradient(90deg, #001d7b 0%, #00a4f0 100%);
        background-clip: text;
        -webkit-background-clip: text;
        -webkit-text-fill-color: transparent;
        color: transparent; }
      .p-service__checklist li .txt {
        display: flex;
        flex-direction: column;
        line-height: 1.4; }
      .p-service__checklist li .jp {
        font-size: 1.6rem;
        font-weight: 500;
        color: #000f43; }
      .p-service__checklist li .en {
        font-size: 1.2rem;
        color: #006ae4;
        letter-spacing: .02rem; }
  .p-service__cta {
    margin-top: 16rem; }
    @media (max-width: 767px) {
      .p-service__cta {
        margin-top: 5rem; } }
    .p-service__cta .c-btn {
      width: 46rem;
      max-width: 100%;
      height: 7.5rem;
      min-width: 0;
      padding: 0;
      border: 1px solid #ffffff;
      border-radius: 5rem;
      background: linear-gradient(-80deg, #005da6 0%, #00a4f0 53%, #001d7b 100%);
      box-shadow: 0 0 2rem 0 rgba(0, 0, 0, 0.2);
      font-size: 2rem;
      text-shadow: 0 0 0.5rem rgba(0, 0, 0, 0.4); }
      @media (max-width: 767px) {
        .p-service__cta .c-btn {
          font-size: 1.6rem;
          height: 6.4rem; } }

.p-news {
  position: relative;
  padding: 10rem 0;
  overflow: hidden; }
  @media (max-width: 767px) {
    .p-news {
      padding: 6rem 0; } }
  .p-news__fade {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 1px;
    height: 5rem;
    background-image: linear-gradient(180deg, #ffffff 0%, #cdd2de 100%);
    pointer-events: none;
    z-index: 1; }
  .p-news__inner {
    max-width: 128rem;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: nowrap;
    margin: 0 auto; }
    @media (max-width: 767px) {
      .p-news__inner {
        flex-direction: column;
        gap: 3rem; } }
    .p-news__inner .l-inner {
      width: 100%; }
  .p-news__head {
    flex: 0 0 auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 2.4rem; }
    @media (max-width: 767px) {
      .p-news__head {
        display: contents; } }
  .p-news__title {
    font-size: 7.2rem;
    color: #001d7b;
    padding: 0 3vw; }
    @media (max-width: 767px) {
      .p-news__title {
        font-size: 4.4rem; } }
  .p-news__more {
    width: 14rem;
    height: 3.6rem;
    min-width: 0;
    padding: 0;
    border: none;
    border-radius: 5rem;
    background: #ffffff;
    box-shadow: inset 0 0 1.5rem 0 rgba(0, 0, 0, 0.1);
    color: #000f43;
    font-size: 1.3rem;
    order: 2; }
    @media (max-width: 767px) {
      .p-news__more {
        min-width: auto;
        height: auto;
        padding: 1.4rem 1.6rem;
        order: 3; } }
  .p-news__slider {
    position: relative;
    flex: 1;
    min-width: 0;
    order: 2; }
    @media (max-width: 767px) {
      .p-news__slider {
        order: 2; } }
  .p-news__list {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 3rem; }
    @media (max-width: 767px) {
      .p-news__list {
        display: flex;
        flex-wrap: nowrap;
        gap: 1.6rem;
        overflow-x: auto;
        overscroll-behavior-x: contain;
        scroll-snap-type: x mandatory;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: none; }
        .p-news__list::-webkit-scrollbar {
          display: none; } }
  .p-news__item {
    min-width: 0; }
    @media (max-width: 767px) {
      .p-news__item {
        flex: 0 0 100%;
        scroll-snap-align: center;
        scroll-snap-stop: always; } }
  .p-news__item a {
    width: 100%;
    display: block; }
  .p-news__arrow {
    display: none; }
    @media (max-width: 767px) {
      .p-news__arrow {
        display: flex;
        align-items: center;
        justify-content: center;
        position: absolute;
        top: 10rem;
        z-index: 2;
        width: 3rem;
        height: 3rem;
        border-radius: 50%;
        background: rgba(255, 255, 255, 0.92);
        color: #004ca4;
        box-shadow: 0 0.4rem 1.4rem rgba(0, 13, 60, 0.18);
        transition: opacity 0.3s ease; }
        .p-news__arrow .material-symbols-outlined {
          font-size: 1.8rem; }
        .p-news__arrow:disabled {
          opacity: 0.35;
          pointer-events: none; } }
    .p-news__arrow--prev {
      left: -0.8rem; }
    .p-news__arrow--next {
      right: -0.8rem; }
  .p-news__thumb {
    display: block;
    width: 100%;
    aspect-ratio: 4 / 3;
    background: #f5f6f8;
    border-radius: 0.4rem; }
  .p-news__meta {
    display: flex;
    align-items: center;
    gap: 0.8rem;
    margin-top: 1.4rem; }
  .p-news__date {
    display: block;
    font-size: 1.5rem;
    color: #00a4f0;
    font-weight: 700; }
  .p-news__item-title {
    display: block;
    width: 100%;
    margin-top: 0.6rem;
    font-size: 1.4rem;
    font-weight: 700;
    line-height: 1.7;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden; }

.p-message {
  padding: 11rem 0;
  background-image: url("../img/message-bg.jpg");
  background-repeat: repeat-x;
  background-position: center top;
  background-size: auto 100%;
  box-shadow: inset 0 0 6rem 0 rgba(0, 0, 0, 0.3);
  color: #ffffff; }
  @media (max-width: 767px) {
    .p-message {
      padding: 6rem 0; } }
  .p-message > .l-inner {
    max-width: none;
    margin: 0 auto; }
  .p-message__title-wrap {
    text-align: left;
    max-width: 128rem;
    margin: 0 auto 7.2rem; }
    @media (max-width: 767px) {
      .p-message__title-wrap {
        max-width: none;
        text-align: center; } }
    .p-message__title-wrap .c-section-title__en {
      font-size: 8rem;
      color: rgba(255, 255, 255, 0.9); }
      @media (max-width: 767px) {
        .p-message__title-wrap .c-section-title__en {
          font-size: 6rem; } }
    .p-message__title-wrap .c-section-title__jp {
      font-weight: 700;
      font-size: 1.2rem;
      color: #003a7e; }
  .p-message__body {
    max-width: 85rem;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    flex-wrap: wrap;
    gap: 5rem; }
    @media (max-width: 767px) {
      .p-message__body {
        max-width: none;
        flex-direction: column-reverse; } }
  .p-message__text {
    flex: 1;
    min-width: 0; }
  .p-message__catch {
    font-size: 3.2rem;
    font-weight: 700;
    margin-bottom: 3rem; }
    .p-message__catch br {
      display: none; }
    @media (max-width: 767px) {
      .p-message__catch {
        font-size: 2.1rem;
        line-height: 1.5;
        text-align: center;
        margin-bottom: 2rem; }
        .p-message__catch br {
          display: block; } }
  .p-message__para {
    font-size: 1.6rem;
    line-height: 2.1;
    font-weight: 500;
    color: #ffffff; }
    .p-message__para + .p-message__para {
      margin-top: 2.2rem; }
    @media (max-width: 767px) {
      .p-message__para {
        font-size: 1.4rem;
        line-height: 1.9; }
        .p-message__para br {
          display: none; } }
    .p-message__para--emphasis {
      font-size: 2rem;
      font-weight: 600; }
      @media (max-width: 767px) {
        .p-message__para--emphasis {
          font-size: 1.5rem; } }
  .p-message__profile {
    flex: 0 0 22rem;
    text-align: center; }
    @media (max-width: 767px) {
      .p-message__profile {
        flex: 0 0 auto;
        margin: 0 auto; } }
  .p-message__photo {
    width: 25rem;
    height: 34rem;
    margin: 0 auto;
    border-radius: 0.4rem;
    overflow: hidden; }
    .p-message__photo img {
      width: 100%;
      height: 100%;
      object-fit: cover; }
    @media (max-width: 767px) {
      .p-message__photo {
        width: 18rem;
        height: 24rem; } }
  .p-message__org {
    margin-top: 1.6rem;
    font-size: 1.2rem;
    line-height: 1.6;
    color: #ffffff; }
  .p-message__name {
    margin-top: 0.6rem;
    font-weight: 700; }
    .p-message__name-title {
      font-size: 1.6rem; }
    .p-message__name-value {
      font-size: 2rem; }

.p-membership {
  position: relative;
  overflow: hidden;
  height: 39rem;
  display: flex;
  align-items: center; }
  @media (max-width: 767px) {
    .p-membership {
      height: auto;
      display: block;
      padding: 5rem 0; } }
  .p-membership > .l-inner {
    width: 100%;
    padding: 0 5vw; }
  .p-membership__bg {
    position: absolute;
    inset: 0;
    z-index: 0; }
    .p-membership__bg img {
      width: 100%;
      height: 100%;
      object-fit: cover; }
    .p-membership__bg::after {
      content: '';
      position: absolute;
      inset: 1.5rem;
      border: 1px solid #ffffff;
      background: rgba(255, 255, 255, 0.5); }
  .p-membership__inner {
    position: relative;
    z-index: 1;
    max-width: 128rem;
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: nowrap;
    gap: 2rem;
    min-height: 12rem; }
    @media (max-width: 767px) {
      .p-membership__inner {
        flex-direction: column;
        align-items: flex-start;
        min-height: 0; } }
  .p-membership__group {
    flex: 1 1 auto;
    min-width: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    gap: 3rem; }
    @media (max-width: 767px) {
      .p-membership__group {
        flex-direction: column;
        align-items: flex-start;
        width: 100%; } }
  .p-membership__left {
    flex: 0 0 auto; }
    @media (max-width: 767px) {
      .p-membership__left {
        width: 100%;
        text-align: center; } }
  .p-membership__title {
    font-size: 7.2rem;
    color: #00a4f0;
    line-height: 1; }
    @media (max-width: 767px) {
      .p-membership__title {
        font-size: 4.4rem;
        white-space: nowrap; } }
  .p-membership__jp {
    margin-top: 0.4rem;
    font-size: 1.4rem;
    font-weight: 700;
    letter-spacing: 0.1em;
    color: #000d3c;
    padding-left: .5em; }
  .p-membership__right {
    flex: 0 0 auto;
    text-align: center; }
    @media (max-width: 767px) {
      .p-membership__right {
        width: 100%; } }
  .p-membership__copy {
    font-size: 2rem;
    font-weight: 700; }
    @media (max-width: 767px) {
      .p-membership__copy {
        font-size: 1.6rem; } }
  .p-membership__rule {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.4rem;
    margin-top: 1rem;
    width: 16.5rem;
    height: 3.6rem;
    border-radius: 5rem;
    background: rgba(230, 233, 239, 0.5);
    font-size: 1.3rem;
    font-weight: 700;
    color: #000f43; }
    .p-membership__rule .material-symbols-outlined {
      font-size: 1.6rem;
      color: rgba(0, 15, 67, 0.5); }
  .p-membership__entry {
    width: 18rem;
    height: 18rem;
    border-radius: 50%;
    background-image: linear-gradient(0deg, #005da6 0%, #00a4f0 53%, #001d7b 100%);
    color: #ffffff;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    box-shadow: 0 1rem 2.4rem rgba(0, 40, 100, 0.3);
    flex-shrink: 0; }
    .p-membership__entry .en {
      font-size: 3rem;
      font-weight: 700; }
    .p-membership__entry .jp {
      margin-top: 0.2rem;
      font-size: 1.2rem;
      font-weight: 700;
      color: #000f43; }
    @media (max-width: 767px) {
      .p-membership__entry {
        width: 28rem;
        height: 6rem;
        max-width: 100%;
        border-radius: 5rem;
        gap: .2rem;
        align-self: center;
        margin-top: 1rem; }
        .p-membership__entry .en {
          font-size: 2.2rem; }
        .p-membership__entry .jp {
          margin-top: 0;
          font-size: 1rem; } }
