@charset "UTF-8";
/*reset*/
html, body, div, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, dl, dt, dd, ol, ul, li, fieldset, form, legend, table, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  vertical-align: baseline;
  background: transparent;
  box-sizing: border-box;
  line-height: 1;
  font-size: 100%;
  font-style: normal;
  text-align: justify;
}

span, del, dfn, em, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, label, caption, time, mark {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  vertical-align: baseline;
  background: transparent;
  box-sizing: border-box;
  line-height: 1;
}

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section, main, picture, source {
  display: block;
  box-sizing: border-box;
}

ol, ul, li {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

blockquote:before, blockquote:after, q:before, q:after {
  content: "";
  content: none;
}

a {
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}

ins {
  text-decoration: none;
}

mark {
  font-style: italic;
  font-weight: bold;
}

del {
  text-decoration: line-through;
}

abbr[title], dfn[title] {
  border-bottom: 1px dotted;
  cursor: help;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #cccccc;
  margin: 1em 0;
  padding: 0;
}

input, select {
  vertical-align: middle;
}

input {
  border-radius: unset;
}

img {
  vertical-align: bottom;
  font-size: 0;
  line-height: 0;
  width: 100%;
  height: auto;
  border: 0;
  display: block;
}

h2, h3, h4, h5 {
  font-weight: 500;
}

/*base*/
html {
  -webkit-overflow-scrolling: touch;
}

html, body {
  height: 100%;
}

a {
  display: block;
  text-decoration: none;
  will-change: transform;
  color: inherit;
}

html {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  overflow-wrap: anywhere; /* 収まらない場合に折り返す */
  word-break: break-all; /* 単語の分割はデフォルトに依存 */
  line-break: strict; /* 禁則処理を厳格に適用 */
  color: #555555;
}

/* CSS Document */
/*Base*/
.header {
  position: fixed;
  width: 100%;
  padding: 0 5%;
  height: 104px;
  top: 0;
  left: 0;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  z-index: 100;
  transform: translateY(0%);
}

.headerMenu {
  cursor: pointer;
  margin-left: auto;
  margin-right: 0.8%;
  margin-top: 0.7%;
  flex: none;
  width: clamp(50px, 10vw, 60px);
  height: clamp(50px, 10vw, 60px);
  z-index: 10;
  transition: 0.3s width;
  background-color: #92d0d2;
  border-radius: 50%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}

body[data-menu=open] .headerMenu {
  background-color: #fff;
  margin-top: 0.8%;
  margin-right: 0.7%;
}

@media screen and (max-width: 640px) {
  .headerMenu {
    margin-right: -0.8%;
    margin-top: -0.4%;
  }
}
@media screen and (max-width: 640px) {
  body[data-menu=open] .headerMenu {
    margin-right: -0.5%;
    margin-top: -0.2%;
  }
}
.headerMenu__btn {
  position: relative;
  width: 50%;
  height: 4%;
  border-radius: 2px;
  background: #fff;
  margin-left: 0;
  margin-top: 0;
}

.headerMenu__btn + .headerMenu__btn {
  margin-top: 15%;
}

.headerMenu__btn--01 {
  transition: 1s transform, top;
}

body[data-menu=open] .headerMenu__btn--01 {
  transform: rotate(498deg);
  top: 20%;
}

.headerMenu__btn--02 {
  transition: 0.3s width;
}

@media screen and (max-width: 640px) {
  .headerMenu__btn--02 {
    margin-top: 1.71875vw;
  }
}
body[data-menu=open] .headerMenu__btn--02 {
  width: 0;
}

.headerMenu__btn--03 {
  transition: 1s transform, top;
}

@media screen and (max-width: 640px) {
  .headerMenu__btn--03 {
    margin-top: 1.71875vw;
  }
}
body[data-menu=open] .headerMenu__btn--03 {
  transform: rotate(-497deg);
  top: -18%;
}

.headerNav {
  display: flex;
  align-items: center;
  flex-direction: column;
  position: absolute;
  background: #fff;
  background: linear-gradient(65deg, #d9e021 -20%, #92d0d2 20%, #91c5e7 85%);
  width: 32.6%;
  height: auto;
  padding: 3.1% 2.2% 5%;
  transform: translateY(-100%);
  inset: 0 0 auto auto;
  transition: 0.8s transform;
}
@media screen and (max-width: 640px) {
  .headerNav {
    height: 90vh;
    padding: 3.1% 2.2%;
  }
}

body[data-menu=open] .headerNav {
  transform: translateY(0);
}

@media screen and (max-width: 640px) {
  .headerNav {
    padding: 4.7% 0;
    width: 100%;
    height: 100vh;
  }
}
.headerNav__link {
  width: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  margin: 2.7% 0 0;
}

@media screen and (max-width: 640px) {
  .headerNav__link {
    margin: 0;
  }
}
.headerList {
  margin: 0 4.3%;
}

@media screen and (max-width: 640px) {
  .headerList {
    margin: 9% 9.4%;
  }
}
.headerList__item {
  padding: 19px 0;
  border-bottom: 1px solid #fff;
}

@media screen and (max-width: 640px) {
  .headerList__item {
    padding: 3.2vw 0 2.5vw 0.53125vw;
  }
}
.headerList__link {
  font-size: 1.7rem;
  letter-spacing: 3px;
  color: #fff;
  transition: 0.3s;
}

.headerList__link:hover {
  opacity: 0.6;
}

@media screen and (max-width: 1024px) {
  .headerList__link {
    font-size: 1.5rem;
    letter-spacing: 0.1vw;
  }
}
@media screen and (max-width: 640px) {
  .headerList__link {
    font-size: 4.5vw;
    letter-spacing: 0.5vw;
  }
}
/* CSS Document */
body[data-menu=open].js-top .headerMenu__btn {
  background: #62bbbe;
}

.fvContainer {
  width: 100%;
  overflow: hidden;
}
.fvInner {
  position: relative;
  max-width: 1200px;
  width: 100%;
  margin: 0 auto;
}
.fv__img {
  width: 1600px;
  margin: 0 -200px;
}
@media screen and (min-width: 641px) and (max-width: 1200px) {
  .fv__img {
    width: 133.3333vw;
    margin: 0 -16.6666666667vw;
  }
}
@media screen and (max-width: 640px) {
  .fv__img {
    width: 100%;
    margin: 0;
  }
}
.fv__logo {
  position: absolute;
  max-width: 160px;
  width: 13.3333%;
  margin: 0 auto;
  inset: 10.7% 0 auto;
}
@media screen and (max-width: 640px) {
  .fv__logo {
    width: 25.2%;
    margin: 0 auto;
    inset: 8% 0 auto;
  }
}

.u-headerSub {
  margin: 0 0 1.4%;
  text-align: center;
  letter-spacing: 0.1rem;
  font-size: 1.1875rem;
}
@media screen and (min-width: 641px) and (max-width: 1200px) {
  .u-headerSub {
    letter-spacing: 0.1333333333vw;
    font-size: 1.5833333333vw;
  }
}
@media screen and (max-width: 640px) {
  .u-headerSub {
    margin: 0 0 3.3%;
    font-size: 3.125vw;
  }
}
.u-headerTtl {
  text-align: center;
  letter-spacing: 0.28rem;
  font-size: 1.5625rem;
}
@media screen and (min-width: 641px) and (max-width: 1200px) {
  .u-headerTtl {
    letter-spacing: 0.3733333333vw;
    font-size: 2.0833333333vw;
  }
}
@media screen and (max-width: 640px) {
  .u-headerTtl {
    font-size: 4.6875vw;
  }
}
.u-btn {
  position: relative;
  display: flex;
  width: 390px;
  height: 72px;
  margin: 0 auto;
  border-radius: 30px 0 0 0;
  background: #62bbbe;
  color: #fff;
  align-items: center;
  justify-content: center;
  letter-spacing: 0.12rem;
  font-size: 1.3125rem;
}
@media screen and (min-width: 641px) and (max-width: 1200px) {
  .u-btn {
    width: 32.5vw;
    height: 6vw;
    border-radius: 2.5vw 0 0 0;
    letter-spacing: 0.16vw;
    font-size: 1.75vw;
  }
}
@media screen and (max-width: 640px) {
  .u-btn {
    width: 73.28125vw;
    height: 13.4375vw;
    font-size: 3.90625vw;
  }
}
.u-btn svg {
  position: absolute;
  width: 2.3%;
  height: auto;
  inset: 6% 0 0 79%;
  margin: auto;
}
.pjOuter {
  position: relative;
  max-width: 1600px;
  width: 100%;
  margin: 0 auto;
  background: #fff7eb;
  z-index: 10;
}
.pjOuter--single {
  background: none;
}
.pjContainer {
  max-width: 1200px;
  width: 100%;
  margin: 0 auto;
  padding: 4% 0 2.5%;
}
@media screen and (max-width: 640px) {
  .pjContainer {
    padding: 7.4% 0 4.5%;
  }
}
.pjContainer--single {
  margin: 0 auto 10%;
  padding: 0;
}
.pjContainer--archive {
  padding: 4% 0 7%;
}
@media screen and (max-width: 640px) {
  .pjContainer--archive {
    padding: 7.4% 0 13%;
  }
}
.pjHeading {
  margin: 0 0 3.6%;
}
@media screen and (max-width: 640px) {
  .pjHeading {
    margin: 0 0 11.6%;
  }
}
.pjHeading__icon {
  width: 3.5%;
  margin: 0 auto 1.3%;
}
@media screen and (max-width: 640px) {
  .pjHeading__icon {
    width: 6.5%;
    margin: 0 auto 3.3%;
  }
}
.pjList {
  margin: 0 0 4.1%;
}
@media screen and (max-width: 640px) {
  .pjList {
    width: 87%;
    margin: 0 auto 8.4%;
  }
}
.pjList__link {
  position: relative;
}
.pjList__item {
  position: relative;
  margin: 0 0 2.5%;
  padding: 0 0 0 27.5%;
}
@media screen and (max-width: 640px) {
  .pjList__item {
    margin: 0 0 11.2%;
    padding: 0;
  }
}
.pjList__item:nth-last-child(1) {
  margin: 0;
}
.pjList__itemContainer {
  position: relative;
  width: 76.4%;
  padding: 2.2% 0 0;
  background: #fff;
  border-radius: 10px;
  box-shadow: rgba(250, 114, 6, 0.05) 10px 10px 5px;
  overflow: hidden;
  cursor: pointer;
}
@media screen and (min-width: 641px) and (max-width: 1200px) {
  .pjList__itemContainer {
    border-radius: 0.8333333333vw;
    box-shadow: rgba(250, 114, 6, 0.05) 0.8333333333vw 0.8333333333vw 0.4166666667vw;
  }
}
@media screen and (max-width: 640px) {
  .pjList__itemContainer {
    width: 100%;
    padding: 9.3% 0 0;
    text-align: center;
    border-radius: 3.125vw;
  }
}
.pjList__itemTerm {
  display: inline-block;
  height: 32px;
  margin: 0 0 1% 3.7%;
  padding: 1.2% 2.5% 0;
  border-radius: 16px;
  background: #eff8f8;
  letter-spacing: 0.1rem;
  font-size: 1rem;
}
@media screen and (min-width: 641px) and (max-width: 1200px) {
  .pjList__itemTerm {
    height: 2.6666666667vw;
    border-radius: 1.3333333333vw;
    letter-spacing: 0.1333333333vw;
    font-size: 1.3333333333vw;
  }
}
@media screen and (max-width: 640px) {
  .pjList__itemTerm {
    height: 5.625vw;
    margin: 0 0 2.8% 3.7%;
    border-radius: 2.8125vw;
    font-size: 2.8125vw;
    padding: 1.7% 3.5% 0;
  }
}
.pjList__itemHeading {
  margin: 0 0 1.3%;
  padding: 0 3.7%;
  line-height: 1.43;
  font-size: 1.4375rem;
}
@media screen and (min-width: 641px) and (max-width: 1200px) {
  .pjList__itemHeading {
    font-size: 1.9166666667vw;
  }
}
@media screen and (max-width: 640px) {
  .pjList__itemHeading {
    text-align: center;
    line-height: 1.44;
    font-size: 3.90625vw;
  }
}
.pjList__itemOverview {
  padding: 2.4% 20% 2.7% 3.7%;
  color: #81c9cb;
  background: #eff8f8;
  line-height: 1.33;
  font-size: 0.9375rem;
}
@media screen and (min-width: 641px) and (max-width: 1200px) {
  .pjList__itemOverview {
    font-size: 1.25vw;
  }
}
@media screen and (max-width: 640px) {
  .pjList__itemOverview {
    padding: 2.4% 3.7% 12.7%;
    background: none;
    text-align: center;
    font-size: 2.5vw;
  }
}
.pjList__itemMore {
  position: absolute;
  inset: auto 5.5% 10% auto;
  font-size: 0.875rem;
}
@media screen and (min-width: 641px) and (max-width: 1200px) {
  .pjList__itemMore {
    font-size: 1.1666666667vw;
  }
}
@media screen and (max-width: 640px) {
  .pjList__itemMore {
    font-size: 2.5vw;
    inset: auto 45.5% 9% auto;
  }
}
.pjList__itemMore span {
  position: absolute;
  width: 12px;
  height: 12px;
  inset: 2% -24% auto auto;
}
@media screen and (min-width: 641px) and (max-width: 1200px) {
  .pjList__itemMore span {
    width: 1vw;
    height: 1vw;
  }
}
@media screen and (max-width: 640px) {
  .pjList__itemMore span {
    width: 2.265625vw;
    height: 2.265625vw;
    inset: 13% -35% auto auto;
  }
}
.pjList__itemMore span::before, .pjList__itemMore span::after {
  position: absolute;
  content: "";
  display: block;
  width: 100%;
  height: 1px;
  inset: 0;
  margin: auto;
  background: #62bbbe;
}
.pjList__itemMore span::before {
  transform: rotate(90deg);
}
.pjList__date {
  position: absolute;
  width: 117px;
  height: 117px;
  inset: 2% auto auto 17.1%;
  padding: 1.8% 0 0;
  border-radius: 50%;
  background: linear-gradient(157.49deg, rgb(250, 187, 58) 17.66%, rgb(250, 114, 6) 90.89%);
  box-shadow: rgba(250, 114, 6, 0.05) 10px 10px 5px;
}
@media screen and (min-width: 641px) and (max-width: 1200px) {
  .pjList__date {
    width: 9.75vw;
    height: 9.75vw;
    box-shadow: rgba(250, 114, 6, 0.05) 0.8333333333vw 0.8333333333vw 0.4166666667vw;
  }
}
@media screen and (max-width: 640px) {
  .pjList__date {
    display: flex;
    justify-content: center;
    flex-wrap: nowrap;
    width: 41.40625vw;
    height: 9.375vw;
    border-radius: 3.75vw 0 0 0;
    inset: -10% 0 auto;
    margin: 0 auto;
    padding: 0;
    align-items: center;
    z-index: 5;
  }
}
.pjList__dateTtl {
  width: 57%;
  margin: 0 auto 12%;
  padding: 4% 0;
  background: #fff;
  text-align: center;
  color: #fa7206;
  font-size: 0.8125rem;
}
@media screen and (min-width: 641px) and (max-width: 1200px) {
  .pjList__dateTtl {
    font-size: 1.0833333333vw;
  }
}
@media screen and (max-width: 640px) {
  .pjList__dateTtl {
    display: flex;
    width: 30%;
    margin: 0 5% 0 0;
    height: 4.21875vw;
    font-size: 2.34375vw;
    align-items: center;
    justify-content: center;
  }
}
.pjList__dateRest {
  text-align: center;
  color: #fff;
  font-size: 1.3125rem;
}
@media screen and (min-width: 641px) and (max-width: 1200px) {
  .pjList__dateRest {
    font-size: 1.75vw;
  }
}
@media screen and (max-width: 640px) {
  .pjList__dateRest {
    font-size: 3.90625vw;
  }
}
.pj__bg {
  position: relative;
  z-index: 8;
}
.pj__zero {
  display: flex;
  max-width: 500px;
  width: 60%;
  height: 140px;
  align-items: center;
  justify-content: center;
  margin: 0 auto 50px;
  background: #fff;
}
@media screen and (min-width: 641px) and (max-width: 1200px) {
  .pj__zero {
    height: 11.6666666667vw;
    margin: 0 auto 4.1666666667vw;
  }
}
@media screen and (max-width: 640px) {
  .pj__zero {
    height: 21.875vw;
    margin: 0 auto 7.8125vw;
  }
}
.pjModalRemit {
  position: relative;
  display: flex;
  height: 100px;
  margin: 10% 0 0;
  display: flex;
  justify-content: center;
  flex-wrap: nowrap;
  background: linear-gradient(157.49deg, rgb(250, 187, 58) 17.66%, rgb(250, 114, 6) 90.89%);
  align-items: center;
  justify-content: center;
  border-radius: 10px 40px 0 0;
}
@media screen and (min-width: 641px) and (max-width: 1200px) {
  .pjModalRemit {
    border-radius: 0.8333333333vw 3.3333333333vw 0 0;
  }
}
@media screen and (max-width: 640px) {
  .pjModalRemit {
    border-radius: 1.5625vw 6.25vw 0 0;
  }
}
.pjModalRemit__txt {
  display: flex;
  flex: 0 1 20%;
  height: 32px;
  margin: 2% 4.5% 0 0;
  background: #fff;
  color: #fa7206;
  font-size: 1rem;
  align-items: center;
  justify-content: center;
}
@media screen and (min-width: 641px) and (max-width: 1200px) {
  .pjModalRemit__txt {
    height: 2.6666666667vw;
    font-size: 1.3333333333vw;
  }
}
@media screen and (max-width: 640px) {
  .pjModalRemit__txt {
    height: 5.46875vw;
    font-size: 2.8125vw;
  }
}
.pjModalRemit__date {
  padding: 1% 0 0;
  font-size: 1.875rem;
  font-weight: 600;
  color: #fff;
}
@media screen and (min-width: 641px) and (max-width: 1200px) {
  .pjModalRemit__date {
    font-size: 2.5vw;
  }
}
@media screen and (max-width: 640px) {
  .pjModalRemit__date {
    font-size: 5.15625vw;
  }
}
.pjModalRest {
  position: absolute;
  display: flex;
  justify-content: center;
  flex-wrap: nowrap;
  align-items: center;
  width: 142px;
  height: 46px;
  inset: -26% 0 auto;
  margin: 0 auto;
  border-radius: 23px;
  border: #fa7206 2px solid;
  background: #fff;
}
@media screen and (min-width: 641px) and (max-width: 1200px) {
  .pjModalRest {
    width: 11.8333333333vw;
    height: 3.8333333333vw;
    border-radius: 1.9166666667vw;
    border: #fa7206 0.1666666667vw solid;
  }
}
@media screen and (max-width: 640px) {
  .pjModalRest {
    width: 24.6875vw;
    height: 8.125vw;
    border-radius: 4.0625vw;
    border: #fa7206 0.3125vw solid;
  }
}
.pjModalRest__icon {
  flex: 0 1 16%;
  margin: 0 3% 0 0;
}
.pjModalRest__date {
  color: #fa7206;
  font-size: 1.1875rem;
  font-weight: 500;
}
@media screen and (min-width: 641px) and (max-width: 1200px) {
  .pjModalRest__date {
    font-size: 1.5833333333vw;
  }
}
@media screen and (max-width: 640px) {
  .pjModalRest__date {
    font-size: 3.28125vw;
  }
}
.pjModalInfo {
  background: #fff;
  padding: 4.9% 5.8% 5.3%;
}
.pjModalInfo__heading {
  margin: 0 0 3%;
  text-align: center;
  line-height: 1.45;
  font-size: 1.625rem;
}
@media screen and (min-width: 641px) and (max-width: 1200px) {
  .pjModalInfo__heading {
    font-size: 2.1666666667vw;
  }
}
@media screen and (max-width: 640px) {
  .pjModalInfo__heading {
    line-height: 1.44;
    font-size: 4.53125vw;
  }
}
.pjModalInfo__company {
  margin: 0 0 4.7%;
  text-align: center;
  color: #b3b3b3;
  font-size: 0.9375rem;
  font-weight: 500;
}
@media screen and (min-width: 641px) and (max-width: 1200px) {
  .pjModalInfo__company {
    font-size: 1.25vw;
  }
}
@media screen and (max-width: 640px) {
  .pjModalInfo__company {
    font-size: 2.5vw;
  }
}
.pjModalInfo__img {
  position: relative;
  margin: 0 0 3.5%;
}
.pjModalInfo__imgTerm {
  position: absolute;
  display: flex;
  width: 104px;
  height: 86px;
  inset: 0 auto auto 3.2%;
  font-size: 1.1875rem;
  line-height: 1.3;
  text-align: center;
  background: #eff8f8;
  align-items: center;
  justify-content: center;
  font-weight: 500;
}
@media screen and (min-width: 641px) and (max-width: 1200px) {
  .pjModalInfo__imgTerm {
    width: 8.6666666667vw;
    height: 7.1666666667vw;
    font-size: 1.5833333333vw;
  }
}
@media screen and (max-width: 640px) {
  .pjModalInfo__imgTerm {
    width: 17.96875vw;
    height: 16.5625vw;
    line-height: 1.31;
    font-size: 3.28125vw;
  }
}
.pjModalInfo__imgTerm::before, .pjModalInfo__imgTerm::after {
  position: absolute;
  background: #eff8f8;
  content: "";
  display: block;
  width: 50%;
  height: 10px;
}
@media screen and (min-width: 641px) and (max-width: 1200px) {
  .pjModalInfo__imgTerm::before, .pjModalInfo__imgTerm::after {
    height: 0.8333333333vw;
  }
}
@media screen and (max-width: 640px) {
  .pjModalInfo__imgTerm::before, .pjModalInfo__imgTerm::after {
    height: 1.71875vw;
  }
}
.pjModalInfo__imgTerm::before {
  inset: auto auto -10px 0;
  clip-path: polygon(0 0, 100% 0, 0 100%);
}
@media screen and (min-width: 641px) and (max-width: 1200px) {
  .pjModalInfo__imgTerm::before {
    inset: auto auto -0.8333333333vw 0;
  }
}
@media screen and (max-width: 640px) {
  .pjModalInfo__imgTerm::before {
    inset: auto auto -1.71875vw 0;
  }
}
.pjModalInfo__imgTerm::after {
  inset: auto 0 -10px auto;
  clip-path: polygon(0 0, 100% 0, 100% 100%);
}
@media screen and (min-width: 641px) and (max-width: 1200px) {
  .pjModalInfo__imgTerm::after {
    inset: auto 0 -0.8333333333vw auto;
  }
}
@media screen and (max-width: 640px) {
  .pjModalInfo__imgTerm::after {
    inset: auto 0 -1.71875vw auto;
  }
}
.pjModalInfo__condition {
  display: flex;
  justify-content: center;
  flex-wrap: nowrap;
}
.pjModalInfo__conditionTtl {
  position: relative;
  flex: 0 1 20%;
  line-height: 1.4334;
  font-size: 0.875rem;
  text-align: center;
}
@media screen and (min-width: 641px) and (max-width: 1200px) {
  .pjModalInfo__conditionTtl {
    font-size: 1.1666666667vw;
  }
}
@media screen and (max-width: 640px) {
  .pjModalInfo__conditionTtl {
    line-height: 1.394;
    font-size: 2.8125vw;
  }
}
.pjModalInfo__conditionTtl::before {
  position: absolute;
  content: "";
  display: block;
  width: 2px;
  height: 95%;
  background: #555555;
  inset: 9% 0 auto auto;
}
@media screen and (min-width: 641px) and (max-width: 1200px) {
  .pjModalInfo__conditionTtl::before {
    width: 0.1666666667vw;
  }
}
.pjModalInfo__conditionTxt {
  flex: 0 1 80%;
  padding: 0 0 0 2.3%;
  line-height: 1.4334;
  font-size: 0.875rem;
  text-align: justify;
}
@media screen and (min-width: 641px) and (max-width: 1200px) {
  .pjModalInfo__conditionTxt {
    font-size: 1.1666666667vw;
  }
}
@media screen and (max-width: 640px) {
  .pjModalInfo__conditionTxt {
    line-height: 1.394;
    font-size: 2.8125vw;
  }
}
.pjModalBot {
  padding: 5% 8.7% 6%;
  background: #eff8f8;
  border-radius: 0 0 10px 10px;
}
@media screen and (min-width: 641px) and (max-width: 1200px) {
  .pjModalBot {
    border-radius: 0 0 0.8333333333vw 0.8333333333vw;
  }
}
@media screen and (max-width: 640px) {
  .pjModalBot {
    border-radius: 0 0 1.5625vw 1.5625vw;
  }
}
.pjModalMerit {
  margin: 0 0 5%;
}
.pjModalMerit__item {
  margin: 0 0 3%;
  display: flex;
  justify-content: flex-start;
  flex-wrap: nowrap;
  align-items: flex-start;
}
.pjModalMerit__icon {
  flex: 0 1 5%;
  margin: 3px 1% 0 0;
}
@media screen and (min-width: 641px) and (max-width: 1200px) {
  .pjModalMerit__icon {
    margin: 0.25vw 1% 0 0;
  }
}
@media screen and (max-width: 640px) {
  .pjModalMerit__icon {
    margin: 0.4vw 1% 0 0;
  }
}
.pjModalMerit__txt {
  flex: 0 1 94%;
  line-height: 1.40795;
  font-size: 1rem;
  text-align: justify;
}
@media screen and (min-width: 641px) and (max-width: 1200px) {
  .pjModalMerit__txt {
    font-size: 1.3333333333vw;
  }
}
@media screen and (max-width: 640px) {
  .pjModalMerit__txt {
    line-height: 1.001212;
    font-size: 3.90625vw;
  }
}
.pjModalMerit__txt strong {
  color: #fa7206;
}
.pjModal__link {
  position: relative;
  display: flex;
  width: 97%;
  height: 70px;
  margin: 0 auto;
  background: #fff;
  font-size: 1.375rem;
  border-radius: 35px;
  align-items: center;
  justify-content: center;
  color: #fa7206;
}
@media screen and (min-width: 641px) and (max-width: 1200px) {
  .pjModal__link {
    height: 5.8333333333vw;
    border-radius: 2.9166666667vw;
    font-size: 1.8333333333vw;
  }
}
@media screen and (max-width: 640px) {
  .pjModal__link {
    height: 11.875vw;
    border-radius: 5.9375vw;
    font-size: 3.90625vw;
  }
}
.pjModal__link svg {
  position: absolute;
  width: 3.1%;
  inset: 2% 0 0 86%;
  margin: auto;
}
.usefulOuter {
  position: relative;
  max-width: 1600px;
  width: 100%;
  margin: -60px auto 0;
  overflow: hidden;
  z-index: 5;
}
@media screen and (min-width: 641px) and (max-width: 1200px) {
  .usefulOuter {
    margin: -5vw auto 0;
  }
}
.usefulContainer {
  max-width: 1200px;
  width: 100%;
  margin: 0 auto;
  padding: 4.6% 0 6.4%;
}
@media screen and (max-width: 640px) {
  .usefulContainer {
    padding: 15.2% 0 11.4%;
  }
}
.usefulHeading {
  margin: 0 0 4.2%;
}
@media screen and (max-width: 640px) {
  .usefulHeading {
    margin: 0 0 5.4%;
  }
}
.usefulHeading__icon {
  width: 3.1%;
  margin: 0 auto 1.1%;
}
@media screen and (max-width: 640px) {
  .usefulHeading__icon {
    width: 6%;
    margin: 0 auto 3.1%;
  }
}
.usefulList {
  width: 59.8%;
  margin: 0 auto;
}
@media screen and (min-width: 641px) {
  .usefulList {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
  }
}
@media screen and (max-width: 640px) {
  .usefulList {
    width: 87.8%;
  }
}
.usefulList__item {
  flex: 0 1 48%;
  margin: 0 0 3%;
}
.useful__bg {
  position: absolute;
  object-fit: cover;
  width: 100%;
  height: 100%;
  inset: 0 0 auto;
  z-index: -2;
}
.useful__bg img {
  object-fit: cover;
  width: 100%;
  height: 100%;
}
.useful__bgBot {
  position: absolute;
  inset: auto 0 0;
  z-index: -1;
}

.agentOuter {
  max-width: 1600px;
  width: 100%;
  margin: -50px auto 0;
}
@media screen and (min-width: 641px) and (max-width: 1200px) {
  .agentOuter {
    margin: -4.1666666667vw auto 0;
  }
}
.agentContainer {
  max-width: 1200px;
  width: 100%;
  margin: 0 auto;
  padding: 4% 0;
}
@media screen and (max-width: 640px) {
  .agentContainer {
    padding: 15% 0 20.4%;
  }
}
.agentHeading {
  margin: 0 0 4.5%;
}
@media screen and (max-width: 640px) {
  .agentHeading {
    margin: 0 0 7.2%;
  }
}
.agentHeading__icon {
  width: 3.2%;
  margin: 0 auto 1.4%;
}
@media screen and (max-width: 640px) {
  .agentHeading__icon {
    width: 6%;
    margin: 0 auto 2.4%;
  }
}
.agent__link {
  max-width: 490px;
  width: 95%;
  margin: 0 auto;
}
@media screen and (max-width: 640px) {
  .agent__link {
    max-width: none;
    width: 76.5%;
  }
}

.seminarOuter {
  position: relative;
  max-width: 1600px;
  width: 100%;
  margin: 100px auto 0;
  background: linear-gradient(to right, #eff8f8 50%, #fff 50%);
}
@media screen and (min-width: 641px) and (max-width: 1200px) {
  .seminarOuter {
    margin: 8.3333333333vw auto 0;
  }
}
@media screen and (max-width: 640px) {
  .seminarOuter {
    margin: 10% auto 0;
  }
}
.seminarOuter::before {
  position: absolute;
  content: "";
  display: block;
  width: 90%;
  margin: 0 auto;
  inset: 0;
  background: #eff8f8;
  border-radius: 0 50px 0 0;
}
@media screen and (min-width: 641px) and (max-width: 1200px) {
  .seminarOuter::before {
    border-radius: 0 4.1666666667vw 0 0;
  }
}
@media screen and (max-width: 640px) {
  .seminarOuter::before {
    width: 87.4%;
    border-radius: 0 7.8125vw 0 0;
  }
}
.seminar__curve {
  position: absolute;
  width: 14.7%;
  inset: -2.1% 4.3% auto auto;
}
@media screen and (max-width: 640px) {
  .seminar__curve {
    width: 31.9%;
    inset: -2.2vw 4.5vw auto auto;
  }
}
.seminarContainer {
  position: relative;
  max-width: 1200px;
  width: 100%;
  margin: 0 auto;
  padding: 4.7% 0;
  z-index: 8;
}
@media screen and (max-width: 640px) {
  .seminarContainer {
    padding: 10.2% 0 11.6%;
  }
}
.seminarHeading {
  margin: 0 0 4.4%;
}
@media screen and (max-width: 640px) {
  .seminarHeading {
    margin: 0 0 8.5%;
  }
}
.seminarHeading__icon {
  width: 3.4%;
  margin: 0 auto 1.5%;
}
@media screen and (max-width: 640px) {
  .seminarHeading__icon {
    width: 6.4%;
    margin: 0 auto 3.4%;
  }
}
.seminarList {
  width: 94%;
  margin: 0 auto 4%;
  display: flex;
  justify-content: center;
  flex-wrap: nowrap;
  gap: 3.5%;
}
@media screen and (max-width: 640px) {
  .seminarList {
    width: 74.4%;
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 5vw;
  }
}
.seminarList__item {
  flex: 0 1 31%;
  background: #fff;
}
@media screen and (max-width: 640px) {
  .seminarList__item {
    flex: 0 1 100%;
  }
}
.seminarList__link {
  padding: 0 0 5%;
}
@media screen and (max-width: 640px) {
  .seminarList__link {
    padding: 0 0 5.5%;
  }
}
.seminarList__img {
  margin: 0 0 3.8%;
}
.seminarList__info {
  margin: 0 0 2.3%;
  padding: 0 4.7%;
  display: flex;
  justify-content: flex-start;
  flex-wrap: nowrap;
  gap: 2%;
}
.seminarList__date {
  letter-spacing: 0.1rem;
  font-size: 0.9375rem;
}
@media screen and (min-width: 641px) and (max-width: 1200px) {
  .seminarList__date {
    letter-spacing: 0.1333333333vw;
    font-size: 1.25vw;
  }
}
@media screen and (max-width: 640px) {
  .seminarList__date {
    font-size: 2.96875vw;
  }
}
.seminarList__status {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 16px;
  padding: 0 1.6% 0.5%;
  border-radius: 8px;
  font-size: 0.75rem;
}
@media screen and (min-width: 641px) and (max-width: 1200px) {
  .seminarList__status {
    height: 1.3333333333vw;
    border-radius: 0.6666666667vw;
    font-size: 1vw;
  }
}
@media screen and (max-width: 640px) {
  .seminarList__status {
    height: 3.4375vw;
    border-radius: 1.71875vw;
    font-size: 2.1875vw;
  }
}
.seminarList__status--fl01 {
  border: #fa7206 1px solid;
  color: #fa7206;
}
.seminarList__status--fl02 {
  border: #fa7206 1px solid;
  background: #fa7206;
}
.seminarList__status--fl03 {
  border: #555555 1px solid;
  background: #555555;
  color: #fff;
}
.seminarList__heading {
  padding: 0 4.8%;
  font-size: 0.875rem;
  line-height: 1.4;
}
@media screen and (min-width: 641px) and (max-width: 1200px) {
  .seminarList__heading {
    font-size: 1.1666666667vw;
  }
}
@media screen and (max-width: 640px) {
  .seminarList__heading {
    font-size: 2.96875vw;
  }
}
.voiceOuter {
  position: relative;
  max-width: 1600px;
  width: 100%;
  margin: 0 auto;
}
.voiceContainer {
  position: relative;
  max-width: 1200px;
  width: 100%;
  margin: 0 auto 8%;
  padding: 3.3% 0;
}
@media screen and (max-width: 640px) {
  .voiceContainer {
    padding: 11.1% 0;
  }
}
.voiceHeading {
  margin: 0 0 4.1%;
}
@media screen and (max-width: 640px) {
  .voiceHeading {
    margin: 0 0 8%;
  }
}
.voiceHeading__icon {
  width: 4.1%;
  margin: 0 auto 1.2%;
}
@media screen and (max-width: 640px) {
  .voiceHeading__icon {
    width: 7.8%;
    margin: 0 auto 3.2%;
  }
}
.voiceList {
  width: 90%;
  margin: 0 auto 4%;
  display: flex;
  justify-content: center;
  flex-wrap: nowrap;
  gap: 3.7%;
}
@media screen and (max-width: 640px) {
  .voiceList {
    width: 74.6%;
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    margin: 0 auto 8.6%;
    gap: 5.9vw;
  }
}
.voiceList__item {
  flex: 0 1 31%;
  background: #fff;
  box-shadow: rgba(43, 93, 94, 0.2) 0 0 10px;
}
@media screen and (min-width: 641px) and (max-width: 1200px) {
  .voiceList__item {
    box-shadow: rgba(43, 93, 94, 0.2) 0 0 0.8333333333vw;
  }
}
@media screen and (max-width: 640px) {
  .voiceList__item {
    flex: 0 1 100%;
    box-shadow: rgba(43, 93, 94, 0.2) 0 0 10vw;
  }
}
.voiceList__link {
  position: relative;
  padding: 0 0 8%;
}
.voiceList__img {
  margin: 0 0 8%;
}
@media screen and (max-width: 640px) {
  .voiceList__img {
    margin: 0 0 7%;
  }
}
.voiceList__name {
  margin: 0 0 3%;
  padding: 0 8%;
  font-size: 0.875rem;
}
@media screen and (min-width: 641px) and (max-width: 1200px) {
  .voiceList__name {
    font-size: 1.1666666667vw;
  }
}
@media screen and (max-width: 640px) {
  .voiceList__name {
    margin: 0 0 3.5%;
    font-size: 2.96875vw;
  }
}
.voiceList__job {
  padding: 0 8%;
  font-size: 0.875rem;
}
@media screen and (min-width: 641px) and (max-width: 1200px) {
  .voiceList__job {
    font-size: 1.1666666667vw;
  }
}
@media screen and (max-width: 640px) {
  .voiceList__job {
    font-size: 2.96875vw;
  }
}
.voiceList__allow {
  position: absolute;
  width: 11.4%;
  inset: auto 8% 10% auto;
}
.voiceList__deco {
  position: absolute;
  width: 9%;
  inset: 3.7% auto auto 3%;
}
.pjArchive__home {
  max-width: 120px;
  width: 10%;
  margin: 20px auto;
}
@media screen and (max-width: 640px) {
  .pjArchive__home {
    width: 23%;
  }
}

.pjSingle .pjSingle__heading {
  margin: 0 0 2%;
  padding: 3.5% 2% 2%;
  background: linear-gradient(69.94deg, rgb(217, 224, 33) 0%, rgb(206, 222, 59) 2.82%, rgb(190, 218, 99) 7.8%, rgb(177, 215, 133) 13.11%, rgb(165, 212, 161) 18.73%, rgb(157, 210, 183) 24.75%, rgb(151, 209, 198) 31.39%, rgb(147, 208, 207) 39.09%, rgb(146, 208, 210) 50.42%, rgb(146, 207, 213) 74.6%, rgb(145, 202, 222) 90.6%, rgb(145, 197, 231) 100%);
  text-align: center;
}
@media screen and (max-width: 640px) {
  .pjSingle .pjSingle__heading {
    margin: 0 0 4%;
    padding: 3.5% 3% 2%;
  }
}
.pjSingle .pjSingle__headingTtl {
  margin: 0;
  font-size: 1.8rem;
  text-decoration: none;
  border: none;
  color: #fff;
  text-align: center;
}
.pjSingle .pjSingle__headingTerm {
  display: inline-block;
  height: 32px;
  margin: 0 0 1%;
  padding: 2px 2.5% 0;
  border-radius: 16px;
  background: #eff8f8;
  letter-spacing: 0.1rem;
  font-size: 1rem;
}
@media screen and (min-width: 641px) and (max-width: 1200px) {
  .pjSingle .pjSingle__headingTerm {
    height: 2.6666666667vw;
    border-radius: 1.3333333333vw;
    letter-spacing: 0.1333333333vw;
    font-size: 1.3333333333vw;
  }
}
@media screen and (max-width: 640px) {
  .pjSingle .pjSingle__headingTerm {
    height: 5.625vw;
    margin: 0 0 2.8% 3.7%;
    border-radius: 2.8125vw;
    font-size: 2.8125vw;
    padding: 0.3% 3.5% 0;
  }
}
.pjSingle .pjSingleInfo {
  max-width: 700px;
  width: 94%;
  margin: 0 auto 3%;
}
.pjSingle .pjSingleInfo__date {
  display: flex;
  justify-content: flex-start;
  flex-wrap: nowrap;
  align-items: center;
}
.pjSingle .pjSingleInfo__dateTtl {
  display: flex;
  margin: 0 2% 0 0;
  padding: 0.5% 1%;
  text-align: center;
  background: #fa7206;
  color: #fff;
  font-size: 0.8125rem;
  border-radius: 3px;
  align-items: center;
  justify-content: center;
}
@media screen and (min-width: 641px) and (max-width: 1200px) {
  .pjSingle .pjSingleInfo__dateTtl {
    font-size: 1.0833333333vw;
  }
}
@media screen and (max-width: 640px) {
  .pjSingle .pjSingleInfo__dateTtl {
    display: flex;
    width: 16%;
    margin: 0 2% 0 0;
    height: 4.21875vw;
    font-size: 2.34375vw;
    align-items: center;
    justify-content: center;
  }
}
.pjSingle .pjSingleInfo__dateRest {
  margin: 0;
  padding: 0;
  color: #fa7206;
  text-align: center;
  font-size: 1.3125rem;
}
@media screen and (min-width: 641px) and (max-width: 1200px) {
  .pjSingle .pjSingleInfo__dateRest {
    font-size: 1.75vw;
  }
}
@media screen and (max-width: 640px) {
  .pjSingle .pjSingleInfo__dateRest {
    font-size: 3.90625vw;
  }
}
.pjSingle__txt {
  max-width: 700px;
  width: 94%;
  margin: 0 auto 70px;
  padding: 0 0 60px;
  border-bottom: #555555 1px solid;
}
@media screen and (max-width: 640px) {
  .pjSingle__txt {
    width: 92%;
  }
}
.pjSingle h1, .pjSingle h2, .pjSingle h3, .pjSingle h4, .pjSingle h5, .pjSingle h6, .pjSingle p, .pjSingle blockquote, .pjSingle pre, .pjSingle abbr, .pjSingle address, .pjSingle cite, .pjSingle code, .pjSingle dl, .pjSingle dt, .pjSingle dd, .pjSingle ol, .pjSingle ul, .pjSingle li {
  margin: 1% 0 2%;
  line-height: 1.8;
}
@media screen and (max-width: 640px) {
  .pjSingle h1, .pjSingle h2, .pjSingle h3, .pjSingle h4, .pjSingle h5, .pjSingle h6, .pjSingle p, .pjSingle blockquote, .pjSingle pre, .pjSingle abbr, .pjSingle address, .pjSingle cite, .pjSingle code, .pjSingle dl, .pjSingle dt, .pjSingle dd, .pjSingle ol, .pjSingle ul, .pjSingle li {
    line-height: 2.2;
  }
}
.pjSingle a {
  display: inline;
  color: #62bbbe;
  text-decoration: underline;
}
.pjSingle ul {
  margin-bottom: 3%;
}
.pjSingle li {
  list-style-type: disc;
  margin: 0 0 0 3%;
}
@media screen and (max-width: 640px) {
  .pjSingle li {
    margin: 0 0 0 5%;
  }
}
.pjSingle h1 {
  margin: 6% 0 3%;
  padding: 0 0 2%;
  font-size: 1.6rem;
  border-bottom: #fa7206 3px solid;
  line-height: 1.6;
}
.pjSingle h2 {
  margin: 6% 0 3%;
  padding: 0 0 2%;
  font-size: 1.4rem;
  border-bottom: #62bbbe 2px solid;
  line-height: 1.6;
}
.pjSingle h3 {
  margin: 6% 0 3%;
  padding: 0 0 2%;
  font-size: 1.2rem;
  line-height: 1.6;
  border-bottom: #555555 1px solid;
}
.pjSingle h4, .pjSingle h5, .pjSingle h6 {
  margin: 6% 0 3%;
  padding: 0 0 2%;
  font-size: 1.1rem;
  line-height: 1.6;
}
.pjSingle mark {
  font-style: normal;
}
.pjSingle img {
  width: auto;
}
.pjSingle figure {
  margin: 2% 0 4%;
}

.post-type-archive-pj .pagination {
  display: flex;
  justify-content: center;
  flex-wrap: nowrap;
  gap: 8px;
}
@media screen and (min-width: 641px) and (max-width: 1200px) {
  .post-type-archive-pj .pagination {
    gap: 0.6666666667vw;
  }
}
@media screen and (max-width: 640px) {
  .post-type-archive-pj .pagination {
    padding: 0 2%;
    gap: 2vw;
  }
}
.post-type-archive-pj .pagination .page-numbers {
  display: flex;
  width: 32px;
  height: 36px;
  align-items: center;
  justify-content: center;
  background: #62bbbe;
  color: #fff;
  border-radius: 3px;
}
@media screen and (min-width: 641px) and (max-width: 1200px) {
  .post-type-archive-pj .pagination .page-numbers {
    width: 2.6666666667vw;
    height: 3vw;
    border-radius: 0.25vw;
  }
}
@media screen and (max-width: 640px) {
  .post-type-archive-pj .pagination .page-numbers {
    width: 9vw;
    height: 9vw;
    border-radius: 1vw;
  }
}
.post-type-archive-pj .pagination .dots {
  background: none;
  color: #555555;
}
.post-type-archive-pj .pagination .prev, .post-type-archive-pj .pagination .next {
  width: 60px;
}
@media screen and (min-width: 641px) and (max-width: 1200px) {
  .post-type-archive-pj .pagination .prev, .post-type-archive-pj .pagination .next {
    width: 5vw;
  }
}
@media screen and (max-width: 640px) {
  .post-type-archive-pj .pagination .prev, .post-type-archive-pj .pagination .next {
    width: 11vw;
  }
}
.post-type-archive-pj .pagination .current {
  background: none;
  color: #555555;
}

.nfContainer {
  padding: 70px 0 0;
}
@media screen and (min-width: 641px) and (max-width: 1200px) {
  .nfContainer {
    padding: 5.8333333333vw 0 0;
  }
}
@media screen and (max-width: 640px) {
  .nfContainer {
    padding: 10.9375vw 0 0;
  }
}
.nf__heading {
  font-size: 10rem;
  color: #62bbbe;
  text-align: center;
}
@media screen and (min-width: 641px) and (max-width: 1200px) {
  .nf__heading {
    font-size: 13.3333333333vw;
  }
}
@media screen and (max-width: 640px) {
  .nf__heading {
    font-size: 25vw;
  }
}
.nf__404 {
  font-size: 3.6rem;
  color: #888;
  text-align: center;
  margin: 0 0 60px;
}
@media screen and (min-width: 641px) and (max-width: 1200px) {
  .nf__404 {
    font-size: 4.8vw;
    margin: 0 0 5vw;
  }
}
@media screen and (max-width: 640px) {
  .nf__404 {
    font-size: 9vw;
    margin: 0 0 9.375vw;
  }
}
.nf__ttl {
  margin: 0 0 60px;
  font-size: 1.2rem;
  text-align: center;
}
@media screen and (min-width: 641px) and (max-width: 1200px) {
  .nf__ttl {
    margin: 0 0 5vw;
    font-size: 1.6vw;
  }
}
@media screen and (max-width: 640px) {
  .nf__ttl {
    margin: 0 0 9.375vw;
    font-size: 4.5vw;
  }
}
.nf__txt {
  max-width: 600px;
  width: 60%;
  margin: 0 auto 40px;
  text-align: center;
  line-height: 1.7;
}
@media screen and (min-width: 641px) and (max-width: 1200px) {
  .nf__txt {
    margin: 0 auto 3.3333333333vw;
  }
}
@media screen and (max-width: 640px) {
  .nf__txt {
    margin: 0 auto 6.25vw;
  }
}
.nf__top {
  color: #62bbbe;
  text-decoration: underline;
  text-align: center;
  margin: 0 auto 100px;
}
@media screen and (min-width: 641px) and (max-width: 1200px) {
  .nf__top {
    margin: 0 auto 8.3333333333vw;
  }
}
@media screen and (max-width: 640px) {
  .nf__top {
    margin: 0 auto 15.625vw;
  }
}

.modal__btn {
  cursor: pointer;
}
.modalContainer {
  position: fixed;
  display: none;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  opacity: 0;
  z-index: -1;
  pointer-events: none;
  box-sizing: border-box;
  justify-content: center;
  justify-items: center;
  align-items: center;
}
.modalContainer.js-active {
  display: flex;
  animation: 0.5s ease-in-out 0s modalOpen forwards;
}
.modalContainer.js-close {
  display: flex;
  animation: 0.5s ease-in-out 0s modalClose forwards;
}
.modalContents {
  position: relative;
  max-width: 476px;
  width: 90%;
  height: auto;
  border-radius: 10px;
  z-index: 200;
}
.modalContentsBody {
  position: relative;
  max-height: 80vh;
  overflow-y: auto;
}
.modal__close {
  position: absolute;
  width: 50px;
  height: 50px;
  top: 52px;
  right: 10px;
  border-radius: 50%;
  cursor: pointer;
}
@media screen and (min-width: 641px) and (max-width: 1200px) {
  .modal__close {
    width: 4.1666666667vw;
    height: 4.1666666667vw;
    top: 4.3333333333vw;
    right: 0.8333333333vw;
  }
}
@media screen and (max-width: 640px) {
  .modal__close {
    width: 10vw;
    height: 10vw;
    top: 10vw;
    right: 1.5625vw;
  }
}
.modal__close::before, .modal__close::after {
  position: absolute;
  content: "";
  display: block;
  background: #fff;
  width: 60%;
  height: 2px;
  top: 50%;
  left: 0;
  right: 0;
  margin: 0 auto;
}
.modal__close::before {
  transform: rotate(45deg);
}
.modal__close::after {
  transform: rotate(-45deg);
}
.modal__bg {
  position: absolute;
  width: 100%;
  height: 100%;
  background: rgba(255, 247, 235, 0.9);
}

@keyframes modalOpen {
  0% {
    z-index: 100;
    opacity: 0;
    pointer-events: auto;
  }
  100% {
    z-index: 100;
    opacity: 1;
    pointer-events: auto;
  }
}
@keyframes modalClose {
  0% {
    z-index: 100;
    opacity: 1;
    pointer-events: auto;
  }
  99% {
    z-index: 100;
    opacity: 0;
  }
  100% {
    z-index: -1;
    opacity: 0;
    pointer-events: none;
  }
}
.footer .btn01 {
  width: 11.5%;
  margin: 0 auto;
}
@media (max-width: 640px) {
  .footer .btn01 {
    width: 47.5%;
    margin: 5.5% auto 0;
  }
}

.footer__icon {
  display: flex;
  justify-content: center;
  margin: 1.3% auto 0.5%;
  width: 10.5%;
  height: auto;
  gap: 7%;
}
@media (max-width: 640px) {
  .footer__icon {
    width: 71%;
    margin: 5.5% auto 0;
    gap: 13.5%;
  }
}

.footer__link {
  display: flex;
  justify-content: center;
  margin: 0.7% 0 1%;
  font-size: clamp(10px, 2.5vw, 16px);
  white-space: nowrap;
  gap: clamp(6px, 2vw, 20px);
}
@media (max-width: 640px) {
  .footer__link {
    margin: 6% auto 8.5%;
  }
}

.copyright {
  text-align: center;
  font-size: clamp(9px, 2vw, 12px);
}
.btn02, .btn03, .btn04, .btn05 {
  flex: 0 1 25px;
}
@media screen and (min-width: 641px) and (max-width: 1200px) {
  .btn02, .btn03, .btn04, .btn05 {
    flex: 0 1 2.0833333333vw;
  }
}
@media screen and (max-width: 640px) {
  .btn02, .btn03, .btn04, .btn05 {
    flex: 0 1 10vw;
  }
}/*# sourceMappingURL=top.css.map */