@charset "UTF-8";
html {
  font-size: 100%;
}
@media (max-width: 375px) {
  html {
    font-size: 4.2666666667vw;
  }
}
@media screen and (min-width: 768px) {
  html {
    font-size: 1.7543859649vw;
  }
}
@media (min-width: 912px) {
  html {
    font-size: 100%;
  }
}

body {
  font-family: "Inter", sans-serif;
  color: #000000;
}

@media screen and (min-width: 768px) {
  a,
  button {
    -webkit-transition: 0.3s;
    transition: 0.3s;
  }
  a:hover,
  button:hover {
    opacity: 0.7;
    cursor: pointer;
  }
}

/*****************************
* A Modern CSS Reset (https://github.com/hankchizljaw/modern-css-reset)
* 上記に、ul要素,ol要素,a要素への記述追加
*****************************/
/* Box sizing rules */
*,
*::before,
*::after {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

/* Remove default margin */
body,
h1,
h2,
h3,
h4,
p,
figure,
blockquote,
dl,
dd,
ul,
li {
  margin: 0;
}

/* Remove list styles on ul, ol elements with a list role, which suggests default styling will be removed */
ul,
ol {
  list-style: none;
  padding: 0;
}

/* Set core root defaults */
html:focus-within {
  scroll-behavior: smooth;
}

/* Set core body defaults */
body {
  min-height: 100vh;
  text-rendering: optimizeSpeed;
  line-height: 1.5;
}

/* A elements that don't have a class get default styles */
a:not([class]) {
  text-decoration-skip-ink: auto;
}

a {
  text-decoration: none;
  color: inherit;
}

/* Make images easier to work with */
img,
picture {
  max-width: 100%;
  display: block;
}

/* Inherit fonts for inputs and buttons */
input,
button,
textarea,
select {
  font: inherit;
}

button {
  border: none;
  padding: 0;
  background-color: transparent;
  background-color: initial;
}

/* Remove all animations, transitions and smooth scroll for people that prefer not to see them */
.l-inner {
  width: 100%;
  padding-right: 0.9375rem;
  padding-left: 0.9375rem;
  margin-right: auto;
  margin-left: auto;
}
@media screen and (min-width: 768px) {
  .l-inner {
    max-width: 912px;
    padding-right: 1.5625rem;
    padding-left: 1.5625rem;
  }
}

.l-inner-fvwhiteBox {
  padding-right: 0.8125rem;
  padding-left: 0.8125rem;
}

@media screen and (min-width: 768px) {
  .l-inner-ctaWidth {
    max-width: 948px;
  }
  .l-inner--footerPc {
    max-width: 1170px;
  }
  .l-inner--headerPc {
    max-width: 1330px;
  }
}
.c-cta {
  background: #163AC7;
  padding: 1.1475rem;
  border-radius: 0.3825rem;
  -webkit-box-shadow: 0px 3.06px 3.06px rgba(0, 0, 0, .2);
          box-shadow: 0px 3.06px 3.06px rgba(0, 0, 0, .2);
  max-width: 400px;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 768px) {
  .c-cta {
    margin-left: unset;
    margin-right: unset;
    max-width: unset;
    padding: 1.5rem;
  }
}

.c-cta__title {
  color: #fff;
  font-weight: 700;
  font-size: 1.1475rem;
  text-align: center;
  line-height: 1.2;
}
@media screen and (min-width: 768px) {
  .c-cta__title {
    font-size: 1.5rem;
  }
  .c-cta__title br {
    display: none;
  }
}
.c-cta__title span {
  position: relative;
}
.c-cta__title span:after {
  position: absolute;
  content: "/";
  right: -3.25rem;
  font-size: 3.443125rem;
  font-weight: 700;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
@media screen and (min-width: 768px) {
  .c-cta__title span:after {
    font-size: 1.5rem;
    right: -1.375rem;
  }
}
.c-cta__title span:before {
  position: absolute;
  content: "\\";
  left: -3.25rem;
  font-size: 3.443125rem;
  font-weight: 700;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
@media screen and (min-width: 768px) {
  .c-cta__title span:before {
    font-size: 1.5rem;
    left: -1.375rem;
  }
}

@media screen and (min-width: 768px) {
  .c-cta__whiteBoxItems {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}

.c-cta__whiteBox {
  margin-top: 1.25rem;
  background: #fff;
  padding: 1.5rem 1.125rem;
  border-radius: 0.3825rem;
  max-width: 380px;
  margin-right: auto;
  margin-left: auto;
}
@media screen and (min-width: 768px) {
  .c-cta__whiteBox {
    max-width: unset;
    margin-top: 1.6875rem;
    padding: 2rem 1.78125rem;
  }
}

.c-cta__telSubText {
  font-weight: 700;
  font-size: 1.1475rem;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .c-cta__telSubText {
    font-size: 1.5rem;
  }
}

.c-cta__telNumber {
  display: inline-block;
  font-size: 1.9125rem;
  font-weight: 700;
  line-height: 1.2;
  margin-top: 0.625rem;
  padding-left: 3.25rem;
}
@media screen and (min-width: 768px) {
  .c-cta__telNumber {
    font-size: 2.5rem;
    padding-left: 4.25rem;
  }
}
.c-cta__telNumber span {
  position: relative;
}
.c-cta__telNumber span:after {
  position: absolute;
  content: "";
  left: -3.25rem;
  background: url("../images/phone-call.png");
  height: 2.295rem;
  width: 2.48625rem;
  background-size: cover;
}
@media screen and (min-width: 768px) {
  .c-cta__telNumber span:after {
    height: 3rem;
    width: 3.25rem;
    left: -4.25rem;
  }
}

.c-cta__telTimes {
  font-size: 0.8125rem;
  font-weight: 600;
  padding-left: 3.25rem;
}
@media screen and (min-width: 768px) {
  .c-cta__telTimes {
    font-size: 1rem;
    padding-left: 4.25rem;
  }
}

.c-cta__contactBtns {
  margin-top: 2.8125rem;
}
@media screen and (min-width: 768px) {
  .c-cta__contactBtns {
    margin-top: 0;
    width: 46.4%;
  }
}

.c-cta__contactSubTex {
  font-weight: 700;
  font-size: 1.1475rem;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .c-cta__contactSubTex {
    font-size: 1.5rem;
  }
}

.c-cta__contactBtn {
  margin-top: 0.625rem;
}
.c-cta__contactBtn a {
  background: #FF6A20;
  display: inline-block;
  padding: 0.765rem;
  border-radius: 0.19125rem;
  color: #fff;
  width: 100%;
  -webkit-box-shadow: 0px 3.06px 3.06px rgba(0, 0, 0, .2);
          box-shadow: 0px 3.06px 3.06px rgba(0, 0, 0, .2);
}

.c-cta__contactBtnSubtex {
  font-size: 0.794375rem;
  text-align: center;
  font-weight: 700;
}
@media screen and (min-width: 768px) {
  .c-cta__contactBtnSubtex {
    font-size: 0.875rem;
  }
}

.c-cta__contactBtnTex {
  font-weight: 700;
  font-size: 1.1475rem;
  text-align: center;
  line-height: 1.7;
  padding-right: 1.25rem;
}
@media screen and (min-width: 768px) {
  .c-cta__contactBtnTex {
    font-size: 1.5rem;
    margin-top: 0.5rem;
    padding-right: 1.875rem;
  }
}
.c-cta__contactBtnTex .c-cta__relativespan {
  position: relative;
}
.c-cta__contactBtnTex .c-cta__relativespan:after {
  position: absolute;
  content: "";
  right: -1.75rem;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  background: url("../../../images/cta-arow-right.png");
  height: 1.1475rem;
  width: 1.1475rem;
  background-size: cover;
}
@media screen and (min-width: 768px) {
  .c-cta__contactBtnTex .c-cta__relativespan:after {
    height: 1.5rem;
    width: 1.5rem;
    right: -2.0625rem;
  }
}
.c-cta__contactBtnTex .c-cta__cotactBorder {
  display: inline-block;
  margin-right: 0.5625rem;
  padding: 0.1875rem 0.5625rem;
  border: 1px solid #fff;
  font-size: 0.9375rem;
  line-height: 1.4;
}
@media screen and (min-width: 768px) {
  .c-cta__contactBtnTex .c-cta__cotactBorder {
    font-size: 1.25rem;
    margin-right: 0.75rem;
    padding: 0.25rem 0.75rem;
  }
}
.c-cta__contactBtnTex .c-cta__cotactArow {
  display: inline-block;
}
.c-cta__contactBtnTex .c-cta__cotactArow img {
  width: 1.25rem;
  height: 1.25rem;
}

.c-cta__telTexts {
  position: relative;
}
@media screen and (min-width: 768px) {
  .c-cta__telTexts {
    width: 46.5%;
  }
}
.c-cta__telTexts:after {
  position: absolute;
  content: "";
  bottom: -1.434375rem;
  height: 1.53px;
  background: #163AC7;
  width: 85%;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}
@media screen and (min-width: 768px) {
  .c-cta__telTexts:after {
    height: 4.5rem;
    width: 0.125rem;
    left: unset;
    top: 50%;
    right: -1.125rem;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
  }
}

.p-case {
  padding-top: 4.5rem;
  padding-bottom: 4.5rem;
  position: relative;
}
.p-case:after {
  position: absolute;
  content: "";
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  width: 100%;
  height: 100%;
  z-index: -2;
  background: #E8EBF9;
}

.p-case__title h2 {
  font-size: 2rem;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .p-case__title h2 {
    font-size: 2.5rem;
  }
}

.p-case__title h2 {
  letter-spacing: 0.1em;
}
.p-case__title h2 span {
  position: relative;
}
.p-case__title h2 span:after {
  position: absolute;
  content: "";
  width: 79%;
  height: 3px;
  background: #163AC7;
  bottom: -2.5rem;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}
@media screen and (min-width: 768px) {
  .p-case__title h2 span:after {
    max-width: 9.6875rem;
  }
}
.p-case__title h2 span:before {
  position: absolute;
  content: "";
  left: -4.75rem;
  top: 0.125rem;
  background: url("../images/p-case-title-before.png");
  height: 7.5rem;
  width: 7.5rem;
  background-size: cover;
}
@media screen and (min-width: 768px) {
  .p-case__title h2 span:before {
    height: 12.5rem;
    width: 12.5rem;
    top: -4.375rem;
    left: -10.375rem;
  }
}

.p-case__cards {
  padding-left: 0.25rem;
  padding-right: 0.25rem;
  padding-top: 2.5rem;
  max-width: 400px;
  margin-right: auto;
  margin-left: auto;
}
@media screen and (min-width: 768px) {
  .p-case__cards {
    max-width: 53.875rem;
    position: relative;
  }
}
@media screen and (min-width: 1161px) {
  .p-case__cards:before {
    position: absolute;
    content: "CASE";
    top: 2.5rem;
    left: -17.8125rem;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    font-weight: 700;
    color: rgba(208, 216, 244, .5);
    z-index: -1;
    font-size: 12.5rem;
    -webkit-transform: rotate(-90deg);
            transform: rotate(-90deg);
    -webkit-transform-origin: center center;
            transform-origin: center center;
  }
  .p-case__cards:after {
    position: absolute;
    content: "STUDY";
    bottom: 16.25rem;
    right: -22.1875rem;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    font-weight: 700;
    color: rgba(208, 216, 244, .5);
    z-index: -1;
    font-size: 12.5rem;
    -webkit-transform: rotate(-90deg);
            transform: rotate(-90deg);
    -webkit-transform-origin: center center;
            transform-origin: center center;
    line-height: 1;
  }
}

.p-case__card {
  background: #fff;
  padding: 1.25rem 1rem;
  margin-top: 2.5rem;
}
@media screen and (min-width: 768px) {
  .p-case__card {
    padding: 1.75rem 2.5rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}

.p-case__card:nth-child(odd) {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
}

.p-case__cardTextBox {
  margin-top: 0.75rem;
}
@media screen and (min-width: 768px) {
  .p-case__cardTextBox {
    width: 66.7%;
  }
}

.p-case__cardTitle {
  color: #fff;
  padding: 0.25rem 0.5rem;
  background: #163AC7;
  font-weight: 700;
  font-size: 1.25rem;
}

.p-case__cardMainTit {
  margin-top: 1rem;
  font-weight: 700;
  font-size: 1.25rem;
  position: relative;
}
.p-case__cardMainTit:after {
  position: absolute;
  content: "";
  width: 100%;
  height: 1px;
  background: #163AC7;
  left: 0;
  bottom: -0.5625rem;
}

.p-case__cardTex {
  margin-top: 1.5625rem;
  font-size: 0.875rem;
  font-weight: 500;
}

@media screen and (min-width: 768px) {
  .p-case__cardImg {
    width: 25.57%;
  }
}
.p-contact-thanks__contents {
  padding: 40px 5.5px 136px 5.5px;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .p-contact-thanks__contents {
    padding: 9rem 5.5px 18rem 5.5px;
  }
}

.p-contact-thanks__Tit {
  font-family: "Inter", sans-serif;
  font-size: 1.625rem;
  font-weight: 700;
}

.p-contact-thanks__TitSub {
  margin-top: 4rem;
  font-size: 1.5rem;
  font-weight: 700;
}

.p-contact-thanks__text {
  margin-top: 4rem;
  font-size: 0.96875rem;
  line-height: 1.8;
  font-weight: 400;
}

.p-contact-thanks__btn {
  margin-top: 5.25rem;
}
.p-contact-thanks__btn a {
  background: rgb(73, 73, 73);
  display: inline-block;
  color: #FFF;
  text-align: center;
  min-width: 15rem;
  padding: 0.84375rem;
}
.p-contact-thanks__btn a span {
  position: relative;
  display: inline-block;
}
.p-contact-thanks__btn a span:after {
  content: "＞";
  position: absolute;
  right: -4.375rem;
  display: inline-block;
}

.p-contanct-form {
  background: rgb(243, 245, 252);
  padding-top: 2.25rem;
  padding-bottom: 2.25rem;
}
@media screen and (min-width: 768px) {
  .p-contanct-form {
    padding-top: 4.5rem;
    padding-bottom: 4.5rem;
  }
}

.p-contanct-form h3 {
  font-size: 1.625rem;
}

.p-contanct-form p {
  margin-top: 1.5rem;
  font-weight: 500;
}

.p-contact-form__attention {
  margin-bottom: 1.5rem;
  padding-left: 0.875rem;
  position: relative;
}
.p-contact-form__attention:after {
  position: absolute;
  content: "";
  height: 0.375rem;
  width: 0.375rem;
  border-radius: 50%;
  background: rgb(202, 54, 4);
  left: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

.red-attentionEn {
  position: relative;
  display: inline-block;
}
.red-attentionEn:after {
  position: absolute;
  content: "";
  height: 0.375rem;
  width: 0.375rem;
  border-radius: 50%;
  background: rgb(202, 54, 4);
  right: -0.75rem;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

.formTable th, .formTable td {
  display: block; /* セル全体を縦に並べる */
  text-align: left;
}

.formTable th {
  font-weight: 400;
}

.formTable td {
  margin-bottom: 16px;
  width: 100%;
}

/* 姓と名、セイとメイの入力フィールドは横並び */
.formTable td input[type=text] {
  display: inline-block; /* 横並びにする */
  width: 100%;
  padding: 0.25rem 0.5rem;
}

/* テキストエリアやチェックボックスは全体的に調整 */
.formTable td textarea {
  display: block; /* テキストエリアは縦方向で調整 */
  margin-top: 5px;
  width: 100%;
  padding: 0.5rem;
}

.formTable .p-contact__nibunkatu input[type=text] {
  width: 47.5%;
}

.formTable .p-contact__nibunkatu input[type=text]:nth-child(n+2) {
  margin-left: 0.75rem;
}

.contact-submit {
  text-align: center;
}

.contact-submit-btn {
  text-align: center;
  min-width: 15rem;
  padding: 0.84375rem;
  color: #FFF;
  border: unset;
  background: rgb(255, 106, 32);
  font-size: 0.9375rem;
}

.contact-submit-btn:hover {
  cursor: pointer;
  opacity: 0.7;
}

.pripoli-contactde {
  text-decoration: underline;
}

.contact-checbox {
  -webkit-transform: scale(1.25);
          transform: scale(1.25);
}

@media screen and (min-width: 768px) {
  .formTable {
    width: 100%;
  }
  /* thとtdを横並びにする */
  .formTable tr {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
  .formTable th, .formTable td {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto; /* 幅を自動調整にする */
    text-align: left; /* 必要なら調整 */
  }
  /* 姓と名、セイとメイを横並びにする */
  .p-contact__nibunkatu {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 10px; /* フィールド間の余白 */
  }
  .formTable th {
    width: 9.25rem;
    padding-top: 0.625rem;
  }
  .formTable td {
    width: 100%;
    width: calc(100% - 158px);
  }
  .formTable td input {
    width: 100%;
  }
  .formTable .p-contact__nibunkatu input[type=text] {
    width: 48.7%;
  }
  .contact-checbox {
    -webkit-transform: scale(1.25);
            transform: scale(1.25);
  }
}
.p-cta {
  padding-top: 1.5rem;
  padding-bottom: 1.5rem;
  background: #fff;
}
@media screen and (min-width: 768px) {
  .p-cta {
    padding-top: 4.5rem;
    padding-bottom: 4.5rem;
  }
}

.p-cta--pconly {
  display: none;
}
@media screen and (min-width: 768px) {
  .p-cta--pconly {
    display: block;
    padding-top: 2.5rem;
    padding-bottom: 2.5rem;
  }
}

.p-feature {
  padding-top: 2rem;
  padding-bottom: 2rem;
  position: relative;
}
.p-feature:after {
  position: absolute;
  content: "";
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  width: 100%;
  height: 100%;
  z-index: -2;
  background: #E8EBF9;
}
@media screen and (min-width: 768px) {
  .p-feature {
    padding-bottom: 4.375rem;
    padding-top: 2.5rem;
  }
}

.p-feature__title h2 {
  font-size: 1.5rem;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .p-feature__title h2 {
    font-size: 3.125rem;
  }
}

.p-feature__title h2 {
  letter-spacing: 0.1em;
}
.p-feature__title h2 span {
  position: relative;
}
.p-feature__title h2 span:after {
  position: absolute;
  content: "";
  width: 63%;
  max-width: 4.84375rem;
  height: 3px;
  background: #163AC7;
  bottom: -1.25rem;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}
@media screen and (min-width: 768px) {
  .p-feature__title h2 span:after {
    max-width: 9.6875rem;
    bottom: -2.5rem;
  }
}
.p-feature__title h2 span:before {
  position: absolute;
  content: "FEATURE";
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  font-size: 3.75rem;
  font-weight: 700;
  color: rgba(208, 216, 244, .5);
  letter-spacing: 0.1em;
  z-index: -1;
}
@media screen and (min-width: 768px) {
  .p-feature__title h2 span:before {
    font-size: 12.5rem;
    top: 46%;
    letter-spacing: 0;
  }
}

.p-feature__cards {
  margin-top: 3rem;
  max-width: 400px;
  margin-right: auto;
  margin-left: auto;
}
@media screen and (min-width: 768px) {
  .p-feature__cards {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    max-width: unset;
    margin-right: 0;
    margin-left: 0;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin-top: 5rem;
    padding-left: 0.65625rem;
    padding-right: 0.65625rem;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    gap: 2.5rem 0;
  }
}

.p-feature__card {
  padding: 1rem;
  border: 9px solid #163AC7;
  border-radius: 6px;
  -webkit-box-shadow: 0px 4px 4px rgba(0, 0, 0, .2);
          box-shadow: 0px 4px 4px rgba(0, 0, 0, .2);
  background: #fff;
}
@media screen and (min-width: 768px) {
  .p-feature__card {
    width: 15.90625rem;
    padding: 1.25rem;
  }
}

.p-feature__card:nth-child(n+2) {
  margin-top: 1.25rem;
}
@media screen and (min-width: 768px) {
  .p-feature__card:nth-child(n+2) {
    margin-top: unset;
  }
}

.p-feature__card:nth-child(even) {
  border: 9px solid #FF6A20;
}

.p-feature__cardImgTit {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 10px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-pack: distribute;
      justify-content: space-around;
  padding: 0 2.25rem;
  position: relative;
}
.p-feature__cardImgTit:after {
  position: absolute;
  content: "";
  left: 0;
  bottom: -0.75rem;
  background: url("../images/feature-line-blue.png");
  height: 0.1625rem;
  width: 100%;
  background-size: cover;
}
@media screen and (min-width: 768px) {
  .p-feature__cardImgTit {
    display: block;
    padding: 0 0;
  }
}

.p-feature__card:nth-child(even) .p-feature__cardImgTit:after {
  background: url("../images/feature-line-orange.png");
  height: 0.15rem;
  width: 100%;
  background-size: cover;
}

.p-feature__cardImg {
  width: 20.3%;
  min-width: 4rem;
}
.p-feature__cardImg img {
  width: 100%;
}
@media screen and (min-width: 768px) {
  .p-feature__cardImg {
    margin-right: auto;
    margin-left: auto;
  }
}

.p-feature__cardTit {
  font-weight: 700;
  width: 73%;
  text-align: center;
  white-space: nowrap;
}
@media screen and (min-width: 768px) {
  .p-feature__cardTit {
    width: 100%;
    text-align: center;
    font-size: 1.21875rem;
    margin-top: 0.75rem;
  }
}

.p-feature__cardText {
  line-height: 1.8;
  font-size: 0.875rem;
  margin-top: 1.5rem;
}

.p-flow {
  padding-top: 2.25rem;
  padding-bottom: 2.25rem;
}
@media screen and (min-width: 768px) {
  .p-flow {
    padding-top: 4.5rem;
    padding-bottom: 4.5rem;
  }
}

.p-flow__title h2 {
  font-size: 1.5rem;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .p-flow__title h2 {
    font-size: 2.5rem;
  }
}

.p-flow__title h2 {
  letter-spacing: 0.1em;
}
.p-flow__title h2 span {
  position: relative;
}
.p-flow__title h2 span:after {
  position: absolute;
  content: "";
  width: 63%;
  max-width: 4.84375rem;
  height: 3px;
  background: #163AC7;
  bottom: -1.25rem;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}
@media screen and (min-width: 768px) {
  .p-flow__title h2 span:after {
    bottom: -2.5rem;
    max-width: 9.6875rem;
  }
}
.p-flow__title h2 span:before {
  position: absolute;
  content: "FLOW";
  top: 70%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  font-size: 3.75rem;
  font-weight: 700;
  color: rgba(208, 216, 244, .3);
  letter-spacing: 0.1em;
  z-index: -1;
}
@media screen and (min-width: 768px) {
  .p-flow__title h2 span:before {
    font-size: 7.5rem;
    -webkit-transform: unset;
            transform: unset;
    left: -15.75rem;
    top: 0.875rem;
  }
}
@media screen and (min-width: 1440px) {
  .p-flow__title h2 span:before {
    font-size: 12.5rem;
    -webkit-transform: unset;
            transform: unset;
    left: -29.5rem;
    top: -4.5rem;
  }
}

.p-flow__cards {
  margin-top: 2.5rem;
  max-width: 144px;
  margin-right: auto;
  margin-left: auto;
}
@media screen and (min-width: 768px) {
  .p-flow__cards {
    max-width: unset;
    margin-right: unset;
    margin-left: unset;
    margin-top: 5rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}

.p-flow__card {
  background: #2D4ECD;
  color: #fff;
  padding: 1.0625rem 0.71875rem;
  border-radius: 3.8px;
  -webkit-box-shadow: 0px 3.84px 3.84px rgba(0, 0, 0, .2);
          box-shadow: 0px 3.84px 3.84px rgba(0, 0, 0, .2);
  text-align: center;
  height: 9rem;
  position: relative;
}
@media screen and (min-width: 768px) {
  .p-flow__card {
    width: 17.4%;
  }
}

.p-flow__card:nth-child(n+2) {
  margin-top: 1.675rem;
}
@media screen and (min-width: 768px) {
  .p-flow__card:nth-child(n+2) {
    margin-top: 0rem;
  }
}
.p-flow__card:nth-child(n+2):before {
  position: absolute;
  content: "";
  left: 50%;
  top: -1.125rem;
  background: url("../images/flow-yajirusi2.png");
  height: 0.9375rem;
  width: 2.375rem;
  background-size: contain;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  background-repeat: no-repeat;
}
@media screen and (min-width: 768px) {
  .p-flow__card:nth-child(n+2):before {
    left: -0.875rem;
    top: 52%;
    -webkit-transform: translateY(50%) rotate(-90deg);
            transform: translateY(50%) rotate(-90deg);
    -webkit-transform-origin: 0 center;
            transform-origin: 0 center;
  }
}

.p-flow__card:nth-child(even) {
  background: #A2B0E9;
}

.p-flow__cardImg {
  max-width: 4.32rem;
  margin-right: auto;
  margin-left: auto;
}
@media screen and (min-width: 768px) {
  .p-flow__cardImg {
    max-width: 4.5rem;
  }
}
.p-flow__cardImg img {
  width: 100%;
  aspect-ratio: 1/1;
  -o-object-fit: cover;
     object-fit: cover;
}

.p-flow__cardTex {
  margin-top: 0.46875rem;
  font-size: 0.8375rem;
  line-height: 1.8;
  font-weight: 700;
}
@media screen and (min-width: 768px) {
  .p-flow__cardTex {
    font-size: 0.875rem;
    margin-top: 0.5rem;
  }
}

.p-flow__greenTex {
  margin-top: 1.25rem;
  border-radius: 50px;
  background: #88C100;
  color: #fff;
  font-weight: 700;
  max-width: 18.3125rem;
  margin-right: auto;
  margin-left: auto;
  text-align: center;
  padding: 0.625rem 1rem;
  font-size: 0.875rem;
}
@media screen and (min-width: 768px) {
  .p-flow__greenTex {
    font-size: 2rem;
    max-width: unset;
    padding: 1.25rem 1rem;
    margin-top: 2.5rem;
  }
}

.p-footer {
  padding-top: 1.625rem;
  padding-bottom: 0.9375rem;
  background: #163AC7;
  color: #fff;
}
@media screen and (min-width: 768px) {
  .p-footer {
    padding-top: 5.0625rem;
    padding-bottom: 2.125rem;
  }
}

@media screen and (min-width: 768px) {
  .p-footer__items {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .p-footer__companyName {
    font-size: 1.0625rem;
  }
}
.p-footer__address {
  margin-top: 1rem;
  font-size: 0.75rem;
}

.p-footer__telFaxNumber {
  font-size: 0.75rem;
}

.p-footer__pageLink {
  margin-top: 1rem;
}
.p-footer__pageLink a {
  border-bottom: 1px solid #fff;
  font-size: 0.75rem;
}

.p-footer__stgs {
  max-width: 15rem;
  margin-left: auto;
}

.p-footer__copylight {
  font-size: 0.75rem;
  color: #fff;
  text-align: center;
  margin-top: 0.1875rem;
}

.p-fv__cta {
  background: unset !important;
  padding-bottom: 2.236875rem !important;
}
@media screen and (min-width: 768px) {
  .p-fv__cta {
    display: none;
  }
}

.p-fv__backImg {
  position: relative;
  display: block;
}
.p-fv__backImg:after {
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  bottom: 0;
  background: url("../images/fv-sp-background.jpg");
  height: 100%;
  width: 100%;
  background-size: cover;
  z-index: -2;
  display: block;
}
@media screen and (min-width: 768px) {
  .p-fv__backImg:after {
    background: url("../images/fv-pc-backx1.jpg");
    background-position: center 90%;
    background-repeat: no-repeat;
    background-size: cover;
  }
}

.p-fv__titleimg {
  margin-top: 1.5rem;
}
@media screen and (min-width: 768px) {
  .p-fv__titleimg {
    margin-top: 2.373125rem;
  }
}
.p-fv__titleimg .p-fv__headingImg {
  text-align: center;
}
.p-fv__titleimg .p-fv__headingImg img {
  aspect-ratio: 310/76;
  -o-object-fit: contain;
     object-fit: contain;
  width: 19.375rem;
  text-align: center;
  margin-right: auto;
  margin-left: auto;
}
@media screen and (min-width: 768px) {
  .p-fv__titleimg .p-fv__headingImg img {
    aspect-ratio: 639/154;
    width: 39.9375rem;
  }
}

.p-fv__title {
  text-align: center;
  padding-top: 2.5625rem;
}

.p-fv__title h2 {
  color: #fff;
  background: #163AC7;
  font-size: 0.916875rem;
  text-align: center;
  display: inline-block;
  padding: 0.41875rem 0.39375rem 0.30625rem 0.45rem;
  font-weight: 700;
}
@media screen and (min-width: 768px) {
  .p-fv__title h2 {
    font-size: 2rem;
    padding: 0.7925rem 0.86rem 0.564375rem 0.985rem;
  }
}

.p-fv__titleReSpan {
  position: relative;
}
.p-fv__titleReSpan:after {
  position: absolute;
  content: "";
  width: 2.78125rem;
  height: 1.854375rem;
  background: rgb(69, 97, 210);
  z-index: -1;
  right: -1.875rem;
  top: 0.125rem;
}
@media screen and (min-width: 768px) {
  .p-fv__titleReSpan:after {
    width: 6.066875rem;
    height: 4.045rem;
    right: -4.6875rem;
    top: 0;
  }
}
.p-fv__titleReSpan:before {
  position: absolute;
  content: "";
  width: 2.78125rem;
  height: 1.854375rem;
  background: rgb(69, 97, 210);
  z-index: -1;
  left: -1.9375rem;
  top: 0.125rem;
}
@media screen and (min-width: 768px) {
  .p-fv__titleReSpan:before {
    width: 6.066875rem;
    height: 4.045rem;
    top: 0;
    left: -4.6875rem;
  }
}

.p-fv__titlespanRibon {
  position: relative;
}
.p-fv__titlespanRibon:after {
  position: absolute;
  content: "";
  right: -0.46875rem;
  bottom: -0.84375rem;
  background: url("../images/fv-vectorr-pc.png");
  height: 0.4125rem;
  width: 1.375rem;
  background-size: contain;
  background-repeat: no-repeat;
}
@media screen and (min-width: 768px) {
  .p-fv__titlespanRibon:after {
    width: 2.426875rem;
    height: 0.728125rem;
    bottom: -1.5625rem;
    right: -0.875rem;
    z-index: -1;
  }
}
.p-fv__titlespanRibon:before {
  position: absolute;
  content: "";
  left: -0.46875rem;
  bottom: -0.84375rem;
  background: url("../images/fv-vectorl-pc.png");
  height: 0.4125rem;
  width: 1.375rem;
  background-size: contain;
  background-repeat: no-repeat;
}
@media screen and (min-width: 768px) {
  .p-fv__titlespanRibon:before {
    width: 2.426875rem;
    height: 0.728125rem;
    bottom: -1.59375rem;
    left: -1.03125rem;
  }
}

.p-fv__coloryellow {
  color: rgb(255, 184, 28);
}

.p-fv__heading {
  margin-top: 1.5rem;
  text-align: center;
}
.p-fv__heading h2 {
  font-size: 1.94rem;
  font-family: "Inter", sans-serif;
  font-weight: 700;
  color: #FF6A20;
  -webkit-text-stroke: 0.8px #FFFFFF;
  text-shadow: 0.6px 0.6px 0.6px #FFFFFF, -0.6px -0.6px 0.6px #FFFFFF, -0.6px 0.6px 0.6px #FFFFFF, 0.6px -0.6px 0.6px #FFFFFF, 0.6px 0 0.6px #FFFFFF, -0.6px 0 0.6px #FFFFFF, 0 0.6px 0.6px #FFFFFF, 0 -0.6px 0.6px #FFFFFF, 0px 1.94px 1.94px rgba(0, 0, 0, .25);
}

.p-fv__whiteBox {
  margin-top: 1.5rem;
  background: rgba(255, 255, 255, .4);
  border-radius: 0.2425rem;
  padding: 0.725rem 1.2125rem;
  -webkit-box-shadow: 0 0.12125rem 0.12125rem 0 rgba(0, 0, 0, .25);
          box-shadow: 0 0.12125rem 0.12125rem 0 rgba(0, 0, 0, .25);
  backdrop-filter: blur(7.76px);
  -webkit-backdrop-filter: blur(7.76px);
}
@media screen and (min-width: 768px) {
  .p-fv__whiteBox {
    max-width: 45.75rem;
    margin-right: auto;
    margin-left: auto;
    margin-top: unset;
    padding: 1.5rem 2.5rem;
    -webkit-box-shadow: 0 0.25rem 0.25rem 0 rgba(0, 0, 0, .25);
            box-shadow: 0 0.25rem 0.25rem 0 rgba(0, 0, 0, .25);
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
  }
}

.p-fv__whiteBoxPcOnlyTex {
  display: none;
}
@media screen and (min-width: 768px) {
  .p-fv__whiteBoxPcOnlyTex {
    display: block;
    text-align: center;
    font-weight: 500;
    margin-top: 0.5rem;
    font-size: 0.75rem;
    line-height: 1.2;
  }
}

.p-fv__whiteBoxItems {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.p-fv__whiteBoxItem {
  background: #FFF;
  color: #FF7636;
  text-align: center;
  width: 30.76%;
  height: 3.125rem;
  border: 1.5px solid rgb(255, 106, 32);
  border-radius: 0.125rem;
  font-weight: 700;
  font-size: 0.745rem;
  line-height: 1.1;
  padding-top: 0.65625rem;
}
@media screen and (min-width: 768px) {
  .p-fv__whiteBoxItem {
    font-size: 1.49125rem;
    height: 6.25rem;
    padding-top: 1.1875rem;
    border-radius: 0.25rem;
    border: 3px solid rgb(255, 106, 32);
  }
}

@media screen and (min-width: 768px) {
  .p-fv__whiteBoxItem--first {
    padding-top: 1.3125rem;
  }
}

.p-fv__whiteBoxTexts {
  margin-top: 0.725rem;
  font-weight: 500;
  line-height: 1.6;
  font-size: 0.625rem;
}
@media screen and (min-width: 768px) {
  .p-fv__whiteBoxTexts {
    margin-top: 0.5rem;
    font-size: 1rem;
  }
}

.whiteBox-bigtex {
  font-size: 1.00125rem;
}
@media screen and (min-width: 768px) {
  .whiteBox-bigtex {
    font-size: 2.0025rem;
  }
}

.whiteBox-bigmidtex {
  font-size: 0.83875rem;
}
@media screen and (min-width: 768px) {
  .whiteBox-bigmidtex {
    font-size: 2.013125rem;
  }
}

.p-fv__bottomMargin-pc {
  display: none;
}
@media screen and (min-width: 768px) {
  .p-fv__bottomMargin-pc {
    display: block;
    padding-bottom: 2.5rem;
  }
}

.p-header {
  background: #fff;
  padding: 0.75rem 0;
}
@media screen and (min-width: 768px) {
  .p-header {
    height: 6.25rem;
    padding: unset;
  }
}

.p-header__items {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.p-header__rightItems {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 16px;
}

.p-header__logo {
  width: 5.25rem;
}
@media screen and (min-width: 768px) {
  .p-header__logo {
    width: 8.20375rem;
  }
}
.p-header__logo img {
  aspect-ratio: 84/64;
  -o-object-fit: cover;
     object-fit: cover;
  width: 5.25rem;
}
@media screen and (min-width: 768px) {
  .p-header__logo img {
    aspect-ratio: 131.26/100;
    width: 8.20375rem;
  }
}

.p-header__rightitem {
  background: #FFB81C;
  border-radius: 0.25rem;
  -webkit-box-shadow: 0 0.25rem 0.25rem 0 rgba(0, 0, 0, .25);
          box-shadow: 0 0.25rem 0.25rem 0 rgba(0, 0, 0, .25);
}
.p-header__rightitem a {
  display: inline-block;
  padding: 0.5rem 0.375rem;
}
@media screen and (min-width: 768px) {
  .p-header__rightitem a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding: 1rem 1.5rem;
    gap: 1.5rem;
    height: 3.5rem;
  }
}

.p-header__rightitem--green {
  background: #88C100;
}

.p-header__rightitemImg {
  width: 1.5rem;
  text-align: center;
  margin-right: auto;
  margin-left: auto;
}
.p-header__rightitemImg img {
  aspect-ratio: 24/24;
  -o-object-fit: cover;
     object-fit: cover;
  width: 1.5rem;
}

.p-header__rightitemTitle {
  color: #fff;
  line-height: 1.2;
  margin-top: 0.25rem;
  font-size: 0.625rem;
}
@media screen and (min-width: 768px) {
  .p-header__rightitemTitle {
    font-weight: 700;
    font-size: 1.25rem;
    margin-top: unset;
  }
}

@media screen and (min-width: 768px) {
  .p-header__rightitem--green a {
    padding: 0.5625rem 1.5rem;
    gap: 0.75rem;
  }
  .p-header__rightitem--green .p-header__rightitemImg img {
    display: inline-block;
  }
}
.p-navigation {
  background: #163AC7;
  color: #fff;
  padding-top: 0.4375rem;
  padding-bottom: 0.5rem;
}
@media screen and (min-width: 768px) {
  .p-navigation {
    padding-top: 0.75rem;
    padding-bottom: 0.75rem;
  }
}

.p-navigation__list {
  text-align: center;
  line-height: 1.2;
}

.p-navigation__list--PcOnly {
  display: none;
}
@media screen and (min-width: 768px) {
  .p-navigation__list--PcOnly {
    display: block;
  }
}

@media screen and (min-width: 768px) {
  .p-navigation__lists {
    width: 50rem;
    margin-right: auto;
    margin-left: auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}
.p-navigation__list a {
  font-weight: 700;
  font-size: 0.875rem;
}
@media screen and (min-width: 768px) {
  .p-navigation__list a {
    font-size: 1rem;
  }
}

.p-header__rightitemTitle--pcOnly {
  display: none;
}
@media screen and (min-width: 768px) {
  .p-header__rightitemTitle--pcOnly {
    display: block;
  }
}

@media screen and (min-width: 768px) {
  .p-header__rightitemTitle--spOnly {
    display: none;
  }
}

@media screen and (min-width: 768px) {
  .p-header__pcOnly--teltext {
    font-size: 1.5rem;
    font-weight: 500;
    letter-spacing: -0.05em;
    line-height: 0.6;
    padding-top: 0.3125rem;
  }
  .p-header__pcOnly--teltext span {
    font-size: 0.625rem;
    font-weight: 400;
    letter-spacing: 0;
  }
}

.p-merit {
  padding-top: 4.5rem;
  padding-bottom: 4.5rem;
  overflow: hidden;
  position: relative;
}
.p-merit:after {
  position: absolute;
  content: "";
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  width: 100%;
  height: 100%;
  z-index: -2;
  background: #E8EBF9;
}

.p-merit__spanBackImg {
  position: relative;
  display: block;
}
.p-merit__spanBackImg:after {
  position: absolute;
  content: "";
  right: -1.5rem;
  bottom: -7.5rem;
  background: url("../images/merit-title-span.png");
  height: 8rem;
  width: 8rem;
  background-size: cover;
  display: block;
}
@media screen and (min-width: 1117px) {
  .p-merit__spanBackImg:after {
    height: 12.5rem;
    width: 12.5rem;
    right: -7.75rem;
    bottom: -2.5rem;
  }
}

.p-merit__title h2 {
  font-size: 1.25rem;
  text-align: center;
  white-space: nowrap;
  margin-top: 0.75rem;
}
@media screen and (min-width: 768px) {
  .p-merit__title h2 {
    font-size: 2.75rem;
  }
}

.p-merit__title h2 .p-merti__title-span {
  position: relative;
}
.p-merit__title h2 .p-merti__title-span:after {
  position: absolute;
  content: "";
  width: 63%;
  max-width: 4.84375rem;
  height: 3px;
  background: #163AC7;
  bottom: -2.5rem;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}
@media screen and (min-width: 768px) {
  .p-merit__title h2 .p-merti__title-span:after {
    max-width: 9.6875rem;
  }
}
.p-merit__title h2 .p-merti__title-span:before {
  position: absolute;
  content: "MERIT";
  top: 180%;
  left: 53%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  font-size: 5.625rem;
  font-weight: 700;
  color: rgba(208, 216, 244, .5);
  letter-spacing: 0.1em;
  z-index: -1;
}
@media screen and (min-width: 768px) {
  .p-merit__title h2 .p-merti__title-span:before {
    font-size: 12.5rem;
    top: 50%;
    letter-spacing: 0;
  }
}
.p-merit__title h2 .big-3 {
  font-size: 1.6875rem;
}
@media screen and (min-width: 768px) {
  .p-merit__title h2 .big-3 {
    font-size: 3.4375rem;
  }
}

.p-mert__subTitle {
  font-size: 0.9375rem;
  text-align: center;
  color: #000;
  font-weight: 700;
}
@media screen and (min-width: 768px) {
  .p-mert__subTitle {
    font-size: 1.875rem;
  }
}
.p-mert__subTitle span {
  font-size: 1.21875rem;
  white-space: nowrap;
}
@media screen and (min-width: 768px) {
  .p-mert__subTitle span {
    font-size: 2.5rem;
  }
}

.p-merit__cards {
  margin-top: 5rem;
  max-width: 400px;
  margin-right: auto;
  margin-left: auto;
}
@media screen and (min-width: 768px) {
  .p-merit__cards {
    margin-right: unset;
    margin-left: unset;
    max-width: unset;
  }
}

.p-merit__card {
  border-radius: 0.5rem;
  background: #fff;
  padding: 2rem 1.5rem;
  -webkit-box-shadow: 0px 4px 4px rgba(0, 0, 0, .2);
          box-shadow: 0px 4px 4px rgba(0, 0, 0, .2);
}
@media screen and (min-width: 768px) {
  .p-merit__card {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}

.p-merit__card:nth-child(n+2) {
  margin-top: 1.5rem;
}

.p-merit__leftImg {
  text-align: center;
  margin-right: auto;
  margin-left: auto;
  width: 15rem;
}
.p-merit__leftImg img {
  aspect-ratio: 240/160;
  -o-object-fit: cover;
     object-fit: cover;
  text-align: center;
}

.p-merit__rightTexts {
  margin-top: 1rem;
}
@media screen and (min-width: 768px) {
  .p-merit__rightTexts {
    width: 35rem;
    margin-top: unset;
  }
}
.p-merit__rightTexts .p-merit__textTit {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0.75rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.p-merit__textTit {
  position: relative;
}
.p-merit__textTit:after {
  position: absolute;
  content: "";
  height: 2px;
  width: 100%;
  background: #163AC7;
  bottom: -0.5625rem;
}

.p-merit__cardNumber {
  padding: 0.5rem;
  color: #fff;
  background: #FF7636;
  font-weight: 700;
  font-size: 1.25rem;
  width: 2.5rem;
  height: 2.5rem;
  line-height: 1.2;
}

.p-merit__cardTitle {
  font-weight: 700;
  font-size: 1.25rem;
}
@media screen and (min-width: 768px) {
  .p-merit__cardTitle {
    font-size: 1.5rem;
  }
}

.p-merit__cardText {
  margin-top: 1.5rem;
  font-weight: 500;
  line-height: 1.8;
}

.p-onayami {
  padding-top: 4.5rem;
  padding-bottom: 4.5rem;
  position: relative;
}
.p-onayami:after {
  position: absolute;
  content: "";
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  width: 100%;
  height: 100%;
  z-index: -2;
  background: #D0D8F4;
}

.p-onayami:before {
  content: "";
  position: absolute;
  bottom: -84px;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  border-style: solid;
  border-width: 84px 50vw 0 50vw;
  border-color: #D0D8F4 transparent transparent transparent;
}

.p-onayami__title {
  text-align: center;
}

.p-onayami__title h2 {
  font-size: 0.9375rem;
  line-height: 2;
}
@media screen and (min-width: 768px) {
  .p-onayami__title h2 {
    font-size: 1.875rem;
  }
}

.p-onayami__titleMain {
  font-size: 1.245rem;
  letter-spacing: 0.1em;
}
@media screen and (min-width: 768px) {
  .p-onayami__titleMain {
    font-size: 2.49rem;
  }
}

.sec-title-bg {
  font-size: 1.711875rem;
  position: relative;
}
@media screen and (min-width: 768px) {
  .sec-title-bg {
    font-size: 3.424375rem;
  }
}

.sec-title-bg:after {
  position: absolute;
  content: "・";
  top: -18px;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  font-size: 14px;
}
@media screen and (min-width: 768px) {
  .sec-title-bg:after {
    font-size: 1.55625rem;
    top: -34px;
  }
}

.p-onayami__cards {
  margin-right: auto;
  margin-left: auto;
  max-width: 17.5rem;
  margin-top: 4.5rem;
}
@media screen and (min-width: 768px) {
  .p-onayami__cards {
    max-width: unset;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}

.p-onayami__card {
  padding: 1rem 1.25rem;
  background: #fff;
  width: 100%;
  border: 0.25rem solid #163AC7;
}
@media screen and (min-width: 768px) {
  .p-onayami__card {
    width: 32.4%;
  }
}

.p-onayami__card:nth-child(n+2) {
  margin-top: 0.75rem;
}
@media screen and (min-width: 768px) {
  .p-onayami__card:nth-child(n+2) {
    margin-top: 0;
  }
}

.p-onayami__cardImg {
  text-align: center;
}

.p-onayami__cardImg img {
  aspect-ratio: 128/128;
  -o-object-fit: cover;
     object-fit: cover;
  max-width: 8rem;
  text-align: center;
  margin-right: auto;
  margin-left: auto;
}

.p-onayami__cardText {
  margin-top: 1.5rem;
  font-weight: 700;
  padding-left: 1.9375rem;
  font-size: 0.9375rem;
  line-height: 1.2;
}
.p-onayami__cardText span {
  position: relative;
}
.p-onayami__cardText span:after {
  position: absolute;
  content: "";
  top: 50%;
  left: -1.9375rem;
  background: url("../images/onayami-check-circle.png");
  height: 1.5rem;
  width: 1.5rem;
  background-size: cover;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
@media screen and (min-width: 768px) {
  .p-onayami__cardText {
    font-size: 0.9375rem;
  }
}

.p-onayami-kaiketu {
  background: #E8EBF9;
  padding-top: 9.4375rem;
  padding-bottom: 1.75rem;
}
@media screen and (min-width: 768px) {
  .p-onayami-kaiketu {
    padding-bottom: 0.25rem;
    padding-top: 9.75rem;
  }
}

.p-onayami-kaiketu__subTitle {
  text-align: center;
  font-weight: 700;
  font-size: 1.25rem;
}
@media screen and (min-width: 768px) {
  .p-onayami-kaiketu__subTitle {
    font-size: 2.25rem;
  }
}

.p-onayami-kaiketu__title {
  text-align: center;
  font-weight: 700;
  font-size: 1.5rem;
  line-height: 1.3;
  margin-top: 0.375rem;
  color: #FF7636;
}
@media screen and (min-width: 768px) {
  .p-onayami-kaiketu__title {
    font-size: 2.125rem;
  }
  .p-onayami-kaiketu__title br {
    display: none;
  }
}

.p-onayami-kaiketu__subText {
  text-align: center;
  font-weight: 700;
  font-size: 0.875rem;
  margin-top: 1.125rem;
}
@media screen and (min-width: 768px) {
  .p-onayami-kaiketu__subText {
    font-size: 1.5rem;
    margin-top: 1.875rem;
  }
}

.p-onayami-kaiketu__img {
  margin-top: 1.75rem;
  width: 8.25rem;
  margin-right: auto;
  margin-left: auto;
}
@media screen and (min-width: 768px) {
  .p-onayami-kaiketu__img {
    width: 16.5rem;
    margin-top: 40px;
  }
}

.p-onayami-kaiketu__img img {
  aspect-ratio: 132/174.5;
  -o-object-fit: cover;
     object-fit: cover;
}

.p-onayami__titlRerative {
  position: relative;
}
.p-onayami__titlRerative:after {
  position: absolute;
  content: "PROBLEM";
  top: 2.25rem;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  font-size: 3.75rem;
  font-weight: 700;
  color: rgba(115, 137, 221, .2);
  z-index: -1;
}
@media screen and (min-width: 768px) {
  .p-onayami__titlRerative:after {
    font-size: 12.5rem;
    top: -1.25rem;
    left: 51%;
    max-width: 100vw;
    overflow-x: hidden;
  }
}
.p-onayami__titlRerative:before {
  position: absolute;
  content: "";
  top: 10.625rem;
  right: -0.75rem;
  background: url("../images/onayami-detail1.png");
  height: 11.25rem;
  width: 4.18375rem;
  background-size: cover;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
@media screen and (min-width: 768px) {
  .p-onayami__titlRerative:before {
    top: 60%;
    right: -6rem;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
  }
}

.p-privacy {
  padding-top: 2.5rem;
  padding-bottom: 2.5rem;
}

.p-privacy__subTit {
  font-size: 0.875rem;
  font-weight: 600;
  line-height: 1.4;
  font-family: "Inter", serif;
}
@media screen and (min-width: 768px) {
  .p-privacy__subTit {
    padding-left: 1.5rem;
  }
}

.p-privacy__title {
  font-size: 1.25rem;
  font-weight: 700;
  line-height: 1.4;
}
@media screen and (min-width: 768px) {
  .p-privacy__title {
    font-size: 2rem;
    padding-left: 1.5rem;
  }
}

.p-privacy-blue {
  padding: 5.25rem 0 4rem 0;
  background: rgb(243, 245, 252);
  font-family: "Zen Kaku Gothic New", serif;
  font-weight: 500;
  line-height: 1.9;
  font-size: 1rem;
}
@media screen and (min-width: 768px) {
  .p-privacy-blue {
    padding-top: 6rem;
    padding-bottom: 6rem;
  }
}

.p-privacy-blue__item {
  margin-top: 3.75rem;
}

.p-privacy-blue__title {
  font-weight: 600;
  position: relative;
  padding: 0.25rem 1.25rem;
}
.p-privacy-blue__title:after {
  position: absolute;
  content: "";
  width: 0.125rem;
  height: 100%;
  background: rgb(28, 55, 128);
  background: -webkit-gradient(linear, left top, right top, from(rgb(107, 137, 219)), to(rgb(28, 55, 128)));
  background: linear-gradient(to right, rgb(107, 137, 219), rgb(28, 55, 128));
  top: 0;
  left: 0;
}

.p-privacy-blue__text {
  margin-top: 4px;
}

.p-privacy-blue__olText {
  padding-left: 1.25rem;
}
.p-privacy-blue__olText ol {
  list-style-type: decimal;
}

.p-privacy-btn {
  text-align: center;
  margin-top: 2.5rem;
}

.p-question {
  padding-top: 4.5rem;
  padding-bottom: 4.5rem;
  position: relative;
}
.p-question:after {
  position: absolute;
  content: "";
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  width: 100%;
  height: 100%;
  z-index: -2;
  background: #E8EBF9;
}

.p-question__title h2 {
  font-size: 2.5rem;
  font-weight: 700;
  text-align: center;
  letter-spacing: 0.1em;
}
.p-question__title h2 span {
  position: relative;
}
.p-question__title h2 span:after {
  position: absolute;
  content: "FAQ";
  top: 0.375rem;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  font-size: 3.75rem;
  font-weight: 700;
  color: rgba(22, 58, 199, .1);
  letter-spacing: 0.1em;
  z-index: -1;
}
@media screen and (min-width: 768px) {
  .p-question__title h2 span:after {
    font-size: 7.5rem;
    top: 1.25rem;
    left: unset;
    right: -21rem;
    -webkit-transform: unset;
            transform: unset;
  }
}
@media screen and (min-width: 1161px) {
  .p-question__title h2 span:after {
    font-size: 12.5rem;
    top: -3.5rem;
    left: unset;
    right: -31.25rem;
    -webkit-transform: unset;
            transform: unset;
  }
}
.p-question__title h2 span:before {
  position: absolute;
  content: "";
  width: 100%;
  height: 3px;
  background: #163AC7;
  left: 0;
  bottom: -2.375rem;
}
@media screen and (min-width: 768px) {
  .p-question__title h2 span:before {
    width: 9.6875rem;
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
  }
}

.p-question__cards {
  padding-top: 2.5rem;
}
@media screen and (min-width: 768px) {
  .p-question__cards {
    max-width: 53.875rem;
    margin-right: auto;
    margin-left: auto;
  }
}

.p-question__card {
  margin-top: 2.5rem;
  background: #fff;
  padding: 1rem 1.25rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 12px;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (min-width: 768px) {
  .p-question__card {
    padding: 1rem 2.5rem;
  }
}

.p-question__card:nth-child(even) {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
}

.p-question__cardTexts {
  width: 80.45%;
}
@media screen and (min-width: 768px) {
  .p-question__cardTexts {
    width: 85.7%;
  }
}

.p-question__cardTex {
  font-size: 0.875rem;
  margin-top: 1rem;
  font-weight: 500;
}
.p-question__cardTex span {
  color: #163AC7;
  font-weight: 700;
}

.p-question__cardQue {
  background: #4561D2;
  color: #fff;
  padding: 0.25rem 0.5rem;
  font-weight: 700;
}

.p-question__cardImg {
  width: 16%;
}
@media screen and (min-width: 768px) {
  .p-question__cardImg {
    width: 3.5rem;
  }
}
.p-question__cardImg img {
  width: 100%;
}

.p-simulation {
  overflow: hidden;
  padding: 2.25rem 0;
  position: relative;
}
@media screen and (min-width: 768px) {
  .p-simulation {
    padding: 4.5rem 0;
  }
}
.p-simulation:after {
  position: absolute;
  content: "";
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  width: 100%;
  height: 100%;
  z-index: -2;
  background: #E8EBF9;
}

.p-simulation__spanBackImg {
  position: relative;
  display: block;
}
.p-simulation__spanBackImg:after {
  position: absolute;
  content: "";
  right: -1.75rem;
  bottom: 0.625rem;
  display: block;
  background: url("../images/simulation-span-back.png");
  height: 5rem;
  width: 6.2875rem;
  background-size: cover;
}
@media screen and (min-width: 768px) {
  .p-simulation__spanBackImg:after {
    height: 11.25rem;
    width: 15rem;
    bottom: -2.25rem;
    right: -5.875rem;
  }
}

.p-simulation__subTitle {
  text-align: center;
  font-weight: 700;
  font-size: 0.9375rem;
  line-height: 1.2;
}
@media screen and (min-width: 768px) {
  .p-simulation__subTitle {
    font-size: 1.875rem;
  }
  .p-simulation__subTitle br {
    display: none;
  }
}
.p-simulation__subTitle span {
  position: relative;
}
.p-simulation__subTitle span:after {
  position: absolute;
  content: "";
  width: 1.6675rem;
  top: 50%;
  right: -1.75rem;
  height: 0.0625rem;
  background: #000;
  -webkit-transform: translateY(-50%) rotate(105deg);
          transform: translateY(-50%) rotate(105deg);
  -webkit-transform-origin: center;
          transform-origin: center;
}
.p-simulation__subTitle span:before {
  position: absolute;
  content: "";
  width: 1.6675rem;
  top: 50%;
  left: -1.375rem;
  height: 0.0625rem;
  background: #000;
  -webkit-transform: translateY(-50%) rotate(-105deg);
          transform: translateY(-50%) rotate(-105deg);
  -webkit-transform-origin: center;
          transform-origin: center;
}
@media screen and (min-width: 768px) {
  .p-simulation__subTitle span:after {
    content: "/";
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    top: 0;
    height: 0;
    width: 0;
    right: 0rem;
  }
  .p-simulation__subTitle span:before {
    content: "\\";
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    top: 0;
    height: 0;
    width: 0;
    left: -1.25rem;
  }
}

.p-simulation__title h2 {
  font-size: 1.25rem;
  text-align: center;
  white-space: nowrap;
  margin-top: 0.75rem;
}
@media screen and (min-width: 768px) {
  .p-simulation__title h2 {
    font-size: 2.5rem;
  }
}

.p-simulation__title h2 .p-simulation__title-span {
  position: relative;
}
.p-simulation__title h2 .p-simulation__title-span:after {
  position: absolute;
  content: "";
  width: 63%;
  max-width: 4.84375rem;
  height: 3px;
  background: #163AC7;
  bottom: -1.25rem;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}
@media screen and (min-width: 768px) {
  .p-simulation__title h2 .p-simulation__title-span:after {
    bottom: -2.8125rem;
    max-width: 9.6875rem;
  }
}
.p-simulation__title h2 .p-simulation__title-span:before {
  position: absolute;
  content: "PROFIT" "\a" "SIMULATION";
  white-space: pre;
  top: 120%;
  left: 53%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  font-size: 3.75rem;
  font-weight: 700;
  color: rgba(208, 216, 244, .5);
  line-height: 1;
  z-index: -1;
}
@media screen and (min-width: 768px) {
  .p-simulation__title h2 .p-simulation__title-span:before {
    content: "PROFIT SIMULATION";
    font-size: 7.5rem;
    top: 228%;
    letter-spacing: 0;
  }
}

.p-simulation__tableItem {
  margin-top: 2.5rem;
}
@media screen and (min-width: 768px) {
  .p-simulation__tableItem {
    margin-top: 5rem;
  }
}

.p-simulation__table {
  width: 100%;
  border-collapse: collapse;
  text-align: center;
}

.p-simulation__table th, .p-simulation__table td {
  padding: 0.2875rem 0;
  vertical-align: middle;
  font-size: 0.625rem;
  font-weight: 700;
  width: 33.3%;
}
@media screen and (min-width: 768px) {
  .p-simulation__table th, .p-simulation__table td {
    font-size: 1rem;
  }
}

.p-simulation__table td {
  padding: 0.375rem 0.125rem;
}
@media screen and (min-width: 768px) {
  .p-simulation__table td {
    padding: 0.84625rem 1.09375rem;
  }
}

.p-simulation__table .th-minisi {
  font-size: 0.54rem;
}
@media screen and (min-width: 768px) {
  .p-simulation__table .th-minisi {
    font-size: 1rem;
    line-height: 1.2;
  }
}

/* Header row styles */
.p-simulation__table th {
  color: #fff;
}

.p-simulation__table th:first-child {
  background-color: #163AC7;
}

.p-simulation__table th:nth-child(2) {
  background-color: #7389DD;
}

.p-simulation__table th:nth-child(3) {
  background-color: #FF6A20;
}

.p-simulation__table .td-first {
  background: #F3F5FC;
}

.p-simulation__table .td-second {
  background: #F4F4F4;
}

.p-simulation__table .td-third {
  background: #FFF7F4;
}

.p-simulation__table .hiru-yoru-tex {
  font-size: 0.54rem;
}
@media screen and (min-width: 768px) {
  .p-simulation__table .hiru-yoru-tex {
    font-size: 1rem;
  }
  .p-simulation__table .hiru-yoru-tex br {
    display: none;
  }
}

.p-simulation__table .hiru-yoru-texMini {
  font-size: 0.45rem;
}
@media screen and (min-width: 768px) {
  .p-simulation__table .hiru-yoru-texMini {
    font-size: 0.875rem;
  }
  .p-simulation__table .hiru-yoru-texMini br {
    display: none;
  }
}

.p-simulation__table .big-texttab {
  font-size: 0.875rem;
}
@media screen and (min-width: 768px) {
  .p-simulation__table .big-texttab {
    font-size: 1.55rem;
  }
  .p-simulation__table .big-texttab span {
    font-size: 1.01rem;
  }
}

.p-simulation__table .tab-last-td1 {
  color: #fff;
  background: #FF7636;
  font-size: 0.72rem;
}
@media screen and (min-width: 768px) {
  .p-simulation__table .tab-last-td1 {
    font-size: 1.44rem;
  }
}

.p-simulation__table .tab-last-tdred {
  font-size: 0.5675rem;
  color: #CA3604;
  line-height: 1.1;
  background: #fff;
}
.p-simulation__table .tab-last-tdred span {
  font-size: 1rem;
}
@media screen and (min-width: 768px) {
  .p-simulation__table .tab-last-tdred {
    font-size: 1.25rem;
  }
  .p-simulation__table .tab-last-tdred span {
    font-size: 2rem;
  }
  .p-simulation__table .tab-last-tdred br {
    display: none;
  }
}

@media screen and (min-width: 768px) {
  .pc-bic-rieki {
    font-size: 1.25rem !important;
  }
  .pc-border-textbig {
    font-size: 1.25rem !important;
  }
  .hiru-left {
    padding-right: 1rem;
  }
  .yoru-right {
    padding-left: 1rem;
  }
  .hiru-left-big {
    padding-right: 2.375rem;
  }
  .yoru-right-big {
    padding-left: 2.375rem;
  }
}
.pc-senyou-text {
  display: none;
}
@media screen and (min-width: 768px) {
  .pc-senyou-text {
    font-size: 0.76rem;
    display: block;
    font-weight: 400;
  }
}

.u-desktop {
  display: none;
}
@media screen and (min-width: 768px) {
  .u-desktop {
    display: block;
  }
}

@media screen and (min-width: 768px) {
  .u-mobile {
    display: none;
  }
}
/*# sourceMappingURL=styles.css.map */
