@charset "UTF-8";
/*
Theme Name: Language Code
*/
@import url("../css/reset.css");
@import url("https://fonts.googleapis.com/css2?family=Caveat:wght@400..700&family=Montserrat:ital,wght@0,100..900;1,100..900&family=Zen+Kaku+Gothic+New:wght@300;400;500;700;900&family=Zen+Old+Mincho:wght@400;500;600;700;900&display=swap");
input[type=submit],
input[type=button] {
  border-radius: 0;
  -webkit-box-sizing: content-box;
  -webkit-appearance: button;
  appearance: button;
  border: none;
  box-sizing: border-box;
}
input[type=submit]::-webkit-search-decoration,
input[type=button]::-webkit-search-decoration {
  display: none;
}
input[type=submit]:focus,
input[type=button]:focus {
  outline-offset: -2px;
}

.pc_only {
  display: block !important;
}
@media screen and (max-width: 959px) {
  .pc_only {
    display: none !important;
  }
}

.sp_only {
  display: none !important;
}
@media screen and (max-width: 959px) {
  .sp_only {
    display: block !important;
  }
}

.xl_under {
  display: none !important;
}
@media screen and (max-width: 1365px) {
  .xl_under {
    display: block !important;
  }
}

.lg_under {
  display: none !important;
}
@media screen and (max-width: 1099px) {
  .lg_under {
    display: block !important;
  }
}

.tb_under {
  display: none !important;
}
@media screen and (max-width: 649px) {
  .tb_under {
    display: block !important;
  }
}

.sm_under {
  display: none !important;
}
@media screen and (max-width: 479px) {
  .sm_under {
    display: block !important;
  }
}

.max-xl_only {
  display: block !important;
}
@media screen and (max-width: 1365px) {
  .max-xl_only {
    display: none !important;
  }
}

.xl-md_only {
  display: none !important;
}
@media screen and (max-width: 1365px) {
  .xl-md_only {
    display: block !important;
  }
}
@media screen and (max-width: 959px) {
  .xl-md_only {
    display: none !important;
  }
}

.lg-md_only {
  display: none !important;
}
@media screen and (max-width: 1099px) {
  .lg-md_only {
    display: block !important;
  }
}
@media screen and (max-width: 959px) {
  .lg-md_only {
    display: none !important;
  }
}

.pc-tb_only {
  display: block !important;
}
@media screen and (max-width: 649px) {
  .pc-tb_only {
    display: none !important;
  }
}

.tb-sp_only {
  display: none !important;
}
@media screen and (max-width: 649px) {
  .tb-sp_only {
    display: block !important;
  }
}

/* サイト設計 */
/* サイト設計 ここまで */
body {
  color: #1c1c1c !important;
  background-color: #fff;
  margin: 0 !important;
  font-family: "Zen Kaku Gothic New", sans-serif;
  width: 100%;
  height: 100%;
}
body input,
body button {
  font-family: inherit;
}
body a {
  color: inherit;
  text-decoration: none;
}
body li {
  list-style: none;
}
body img {
  max-width: 100%;
  height: auto;
}
body iframe {
  max-width: 100%;
}
@media screen and (min-width: 960px) {
  body a {
    transition: all 0.5s ease;
  }
  body a:hover {
    opacity: 0.6;
  }
}
@media screen and (max-width: 959px) {
  body {
    font-size: 14px;
  }
}

.circle-arrow {
  width: clamp(40px, 4vw, 3.8067349927 * 1vw);
  height: 100%;
  aspect-ratio: 1/1;
  background-color: #fbca41;
  border: solid 1px #fbca41;
  border-radius: 50%;
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: background-color 0.5s ease;
}
.circle-arrow span {
  content: "";
  width: clamp(14px, 4vw, 1.1713030747 * 1vw);
  height: clamp(14px, 4vw, 1.1713030747 * 1vw);
  background: url("../img/common/arrow-black.png") no-repeat center/contain;
  transition: background-image 0.5s ease;
  display: block;
}

.apply-button {
  width: clamp(270px, 50vw, 19.7657393851 * 1vw);
  aspect-ratio: 1/1;
  border-radius: 50%;
  background-color: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
}
@media screen and (max-width: 959px) {
  .apply-button {
    width: 235px;
  }
}
.apply-button::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 95%;
  height: 95%;
  transform: translate(-50%, -50%);
  border-radius: 50%;
  border: dashed 2px #fbca41;
}
.apply-button p {
  color: #06c755;
  font-weight: 700;
  text-align: center;
  white-space: nowrap;
  margin-bottom: clamp(28px, 4vw, 1.756954612 * 1vw);
  position: relative;
}
.apply-button p {
  letter-spacing: 0.1em;
}
@media screen and (max-width: 959px) {
  .apply-button p {
    letter-spacing: 0.1em;
  }
}
@media screen and (max-width: 479px) {
  .apply-button p {
    letter-spacing: 0.1em;
  }
}
.apply-button p {
  font-size: clamp(18px, 1.317715959vw, 9999px);
  line-height: 1.6666666667;
}
@media screen and (max-width: 959px) {
  .apply-button p {
    font-size: clamp(1rem, 0.9526992936rem + 0.2018163471vw, 1.125rem);
  }
}
@media screen and (max-width: 479px) {
  .apply-button p {
    font-size: 16px;
    line-height: 1.8125 !important;
  }
}
.apply-button p::after {
  content: "";
  position: absolute;
  width: clamp(30px, 2vw, 2.9282576867 * 1vw);
  aspect-ratio: 1/1;
  height: auto;
  background-image: url(../img/common/line_icon.svg);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  top: -3%;
  right: 3%;
  transform: rotate(15deg);
}
.apply-button__inner {
  padding-top: 5%;
}
.apply-button .circle-arrow {
  background-color: #06c755;
  border: 1px solid #06c755;
  width: clamp(40px, 4vw, 3.074670571 * 1vw);
}
.apply-button .circle-arrow span {
  background: url("../img/common/arrow-white.png") no-repeat center/contain;
}

.text-button a {
  width: fit-content;
  border-bottom: dashed 1px #2f5f98;
  padding-bottom: calc(0.7320644217 * 1vw);
  display: flex;
  align-items: center;
  justify-content: center;
  gap: calc(2.3426061493 * 1vw);
  font-weight: 700;
  color: #2f5f98;
}
.text-button a {
  font-size: clamp(18px, 1.317715959vw, 9999px);
  line-height: 1.5;
}
@media screen and (max-width: 959px) {
  .text-button a {
    font-size: clamp(1rem, 0.9526992936rem + 0.2018163471vw, 1.125rem);
  }
}
@media screen and (max-width: 479px) {
  .text-button a {
    font-size: 16px;
    line-height: 1.5 !important;
  }
}
.text-button a {
  letter-spacing: 0.15em;
}
@media screen and (max-width: 959px) {
  .text-button a {
    letter-spacing: 0.15em;
  }
}
@media screen and (max-width: 479px) {
  .text-button a {
    letter-spacing: 0.15em;
  }
}
@media screen and (max-width: 959px) {
  .text-button a {
    border-bottom: dashed 1px #2f5f98;
    padding-bottom: calc(1.3333333333 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .text-button a {
    padding-bottom: calc(2.6666666667 * 1vw);
  }
}
.text-button .circle-arrow {
  width: clamp(40px, 4vw, 3.1478770132 * 1vw);
}

.button-more a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: fit-content;
  gap: calc(1.317715959 * 1vw);
  font-family: "Caveat", cursive;
  font-weight: 700;
}
.button-more a {
  font-size: clamp(24px, 1.756954612vw, 9999px);
  line-height: 2.25;
}
@media screen and (max-width: 959px) {
  .button-more a {
    font-size: clamp(1.25rem, 1.1553985873rem + 0.4036326942vw, 1.5rem);
  }
}
@media screen and (max-width: 479px) {
  .button-more a {
    font-size: 20px;
    line-height: 2.4 !important;
  }
}
.button-more a {
  letter-spacing: 0.2em;
}
@media screen and (max-width: 959px) {
  .button-more a {
    letter-spacing: 0.2em;
  }
}
@media screen and (max-width: 479px) {
  .button-more a {
    letter-spacing: 0.2em;
  }
}
.button-more a:hover {
  opacity: 1;
}
.button-more a:hover .circle-arrow {
  background-color: #fff;
}
.button-more a:hover .circle-arrow span {
  background-image: url("../img/common/arrow-yellow.png");
}
@media screen and (max-width: 959px) {
  .button-more a {
    gap: calc(0.878477306 * 1vw);
  }
}

.button-more--small a {
  gap: calc(1.3909224012 * 1vw);
}
.button-more--small a {
  font-size: clamp(19px, 1.3909224012vw, 9999px);
  line-height: 2.2631578947;
}
@media screen and (max-width: 959px) {
  .button-more--small a {
    font-size: clamp(1.25rem, 1.2736503532rem - 0.1009081736vw, 1.1875rem);
  }
}
@media screen and (max-width: 479px) {
  .button-more--small a {
    font-size: 20px;
    line-height: 2.4 !important;
  }
}
.button-more--small a {
  letter-spacing: 0.2em;
}
@media screen and (max-width: 959px) {
  .button-more--small a {
    letter-spacing: 0.2em;
  }
}
@media screen and (max-width: 479px) {
  .button-more--small a {
    letter-spacing: 0.2em;
  }
}
@media screen and (max-width: 959px) {
  .button-more--small a {
    gap: calc(3.2 * 1vw);
  }
}
.button-more--small .circle-arrow {
  width: clamp(40px, 4vw, 3.1478770132 * 1vw);
}

.button-square {
  width: calc(15.3733528551 * 1vw);
  height: auto;
  padding: calc(0.5856515373 * 1vw) calc(0.878477306 * 1vw) calc(0.5856515373 * 1vw) calc(0.878477306 * 1vw);
  border: solid #2f5f98 2px;
  border-radius: calc(0.2928257687 * 1vw);
  background: #fff;
  position: relative;
  transform-origin: 0 0;
}
@media screen and (max-width: 959px) {
  .button-square {
    width: auto;
    padding: calc(1.6 * 1vw) calc(2.1333333333 * 1vw) calc(1.6 * 1vw) calc(3.2 * 1vw);
    border-radius: calc(0.8 * 1vw);
    border: solid #2f5f98 1px;
  }
}
.button-square__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-weight: 700;
  position: relative;
  z-index: 1;
}
.button-square__inner {
  font-size: clamp(18px, 1.317715959vw, 9999px);
  line-height: 1.5;
}
@media screen and (max-width: 959px) {
  .button-square__inner {
    font-size: clamp(0.875rem, 0.7803985873rem + 0.4036326942vw, 1.125rem);
  }
}
@media screen and (max-width: 479px) {
  .button-square__inner {
    font-size: 14px;
    line-height: 1.5 !important;
  }
}
.button-square__inner {
  letter-spacing: 0.2em;
}
@media screen and (max-width: 959px) {
  .button-square__inner {
    letter-spacing: 0.2em;
  }
}
@media screen and (max-width: 479px) {
  .button-square__inner {
    letter-spacing: 0.2em;
  }
}
@media screen and (max-width: 959px) {
  .button-square__inner {
    justify-content: center;
    gap: calc(4.2666666667 * 1vw);
  }
}
.button-square__inner:hover {
  opacity: 1;
}
.button-square__inner:hover .circle-arrow {
  background-color: #fff;
}
.button-square__inner:hover .circle-arrow span {
  background-image: url("../img/common/arrow-blue.png");
}
.button-square__map-pin {
  position: absolute;
  top: 50%;
  right: 1px;
  transform: translate(100%, -50%) rotate(45deg);
  transform-origin: 0 0;
  content: "";
  width: calc(5.8565153734 * 1vw);
  height: calc(0.1464128843 * 1vw);
  background-color: #2f5f98;
  z-index: -1;
}
@media screen and (max-width: 959px) {
  .button-square__map-pin {
    width: calc(21.3333333333 * 1vw);
    height: calc(0.2666666667 * 1vw);
  }
}
.button-square__map-pin::after {
  position: absolute;
  content: "";
  width: 10px;
  aspect-ratio: 1/1;
  height: auto;
  border-radius: 50%;
  background-color: #2f5f98;
  transform: translate(0%, -40%);
  right: 0;
}
@media screen and (max-width: 1099px) {
  .button-square__map-pin::after {
    width: 8px;
  }
}
@media screen and (max-width: 479px) {
  .button-square__map-pin::after {
    width: 6px;
  }
}
.button-square .circle-arrow {
  background-color: #2f5f98;
  border: 1px solid #2f5f98;
  width: clamp(23px, 4vw, 1.9765739385 * 1vw);
  margin: 0 0 0 auto;
}
@media screen and (max-width: 959px) {
  .button-square .circle-arrow {
    margin: 0 auto;
  }
}
.button-square .circle-arrow span {
  background: url("../img/common/arrow-white.png") no-repeat center/contain;
  width: clamp(12px, 4vw, 1.1713030747 * 1vw);
}

.top-title {
  text-align: center;
  width: fit-content;
}
.top-title h2 {
  font-family: "Caveat", cursive;
  font-weight: 700;
  color: #2f5f98;
}
.top-title h2 {
  font-size: clamp(70px, 5.1244509517vw, 9999px);
  line-height: 1;
}
@media screen and (max-width: 959px) {
  .top-title h2 {
    font-size: clamp(3.5rem, 3.1688950555rem + 1.4127144299vw, 4.375rem);
  }
}
@media screen and (max-width: 479px) {
  .top-title h2 {
    font-size: 56px;
    line-height: 1 !important;
  }
}
.top-title h2 {
  letter-spacing: 0.2em;
}
@media screen and (max-width: 959px) {
  .top-title h2 {
    letter-spacing: 0.2em;
  }
}
@media screen and (max-width: 479px) {
  .top-title h2 {
    letter-spacing: 0.2em;
  }
}
.top-title p {
  padding-top: calc(1.4641288433 * 1vw);
  font-weight: 700;
  color: #2f5f98;
  position: relative;
}
.top-title p {
  font-size: clamp(16px, 1.1713030747vw, 9999px);
  line-height: 1;
}
@media screen and (max-width: 959px) {
  .top-title p {
    font-size: clamp(1rem, 1rem + 0vw, 1rem);
  }
}
@media screen and (max-width: 479px) {
  .top-title p {
    font-size: 16px;
    line-height: 1 !important;
  }
}
.top-title p {
  letter-spacing: 0.05em;
}
@media screen and (max-width: 959px) {
  .top-title p {
    letter-spacing: 0.05em;
  }
}
@media screen and (max-width: 479px) {
  .top-title p {
    letter-spacing: 0.05em;
  }
}
@media screen and (max-width: 1099px) {
  .top-title p {
    padding-top: 20px;
  }
}
.top-title p::after {
  content: "";
  width: calc(15.8125915081 * 1vw);
  height: 100%;
  position: absolute;
  top: 20%;
  left: 50%;
  transform: translate(-50%, -50%);
  background-image: url(../img/top/title-left.png);
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  min-width: 213px;
}

.top-title--small h2 {
  font-size: clamp(50px, 3.6603221083vw, 9999px);
  line-height: 1;
}
@media screen and (max-width: 959px) {
  .top-title--small h2 {
    font-size: clamp(2.875rem, 2.7803985873rem + 0.4036326942vw, 3.125rem);
  }
}
@media screen and (max-width: 479px) {
  .top-title--small h2 {
    font-size: 46px;
    line-height: 1 !important;
  }
}

.blog-card {
  width: 100%;
}
@media screen and (min-width: 480px) {
  .blog-card:hover .blog-card__image img {
    transform: scale(1.1);
  }
}
.blog-card:hover a {
  opacity: 1;
}
.blog-card__inner {
  display: flex;
  align-items: start;
  justify-content: center;
  gap: calc(0.1464128843 * 1vw);
  width: fit-content;
}
@media screen and (max-width: 959px) {
  .blog-card__inner {
    gap: calc(0.5333333333 * 1vw);
  }
}
.blog-card__image {
  overflow: hidden;
  aspect-ratio: 1/1;
  width: 100%;
  margin-bottom: calc(1.1713030747 * 1vw);
}
@media screen and (max-width: 959px) {
  .blog-card__image {
    margin-bottom: calc(2.6666666667 * 1vw);
  }
}
.blog-card__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.5s ease;
}
.blog-card__date {
  writing-mode: vertical-rl;
  text-orientation: mixed;
}
@media screen and (max-width: 479px) {
  .blog-card__date span {
    display: inline-block;
    transform: rotate(90deg);
    margin: -4px;
  }
}
.blog-card__title {
  margin: calc(0.5856515373 * 1vw) 0 calc(1.1713030747 * 1vw) 0;
  font-weight: 700;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.blog-card__title {
  font-size: clamp(16px, 1.1713030747vw, 9999px);
  line-height: 1.8;
}
@media screen and (max-width: 959px) {
  .blog-card__title {
    font-size: clamp(1rem, 1rem + 0vw, 1rem);
  }
}
@media screen and (max-width: 479px) {
  .blog-card__title {
    font-size: 16px;
    line-height: 1.8 !important;
  }
}
.blog-card__title {
  letter-spacing: 0.05em;
}
@media screen and (max-width: 959px) {
  .blog-card__title {
    letter-spacing: 0.05em;
  }
}
@media screen and (max-width: 479px) {
  .blog-card__title {
    letter-spacing: 0.05em;
  }
}
@media screen and (max-width: 959px) {
  .blog-card__title {
    padding: calc(1.0666666667 * 1vw) 0 calc(2.1333333333 * 1vw) 0;
  }
}

.date {
  font-weight: 500;
  line-height: 1.4em !important;
}
.date {
  font-size: clamp(16px, 1.1713030747vw, 9999px);
  line-height: 1;
}
@media screen and (max-width: 959px) {
  .date {
    font-size: clamp(0.875rem, 0.8276992936rem + 0.2018163471vw, 1rem);
  }
}
@media screen and (max-width: 479px) {
  .date {
    font-size: 14px;
    line-height: 1 !important;
  }
}
.date {
  letter-spacing: 0.1em;
}
@media screen and (max-width: 959px) {
  .date {
    letter-spacing: 0.1em;
  }
}
@media screen and (max-width: 479px) {
  .date {
    letter-spacing: 0.1em;
  }
}
@media screen and (max-width: 959px) {
  .date {
    line-height: 1.3em !important;
  }
}

.categories {
  display: flex;
  flex-wrap: wrap;
  gap: calc(0.5856515373 * 1vw);
  row-gap: calc(0.2928257687 * 1vw);
  overflow: hidden;
}
@media screen and (max-width: 959px) {
  .categories {
    gap: calc(2.1333333333 * 1vw);
    row-gap: calc(1.0666666667 * 1vw);
  }
}

.category {
  background-color: #2f5f98;
  padding: calc(0.1464128843 * 1vw) calc(1.1713030747 * 1vw) calc(0.1464128843 * 1vw) calc(0.5856515373 * 1vw);
  width: fit-content;
  color: #fff;
  font-weight: 500;
  position: relative;
}
.category {
  font-size: clamp(14px, 1.0248901903vw, 9999px);
  line-height: 1.5714285714;
}
@media screen and (max-width: 959px) {
  .category {
    font-size: clamp(0.875rem, 0.875rem + 0vw, 0.875rem);
  }
}
@media screen and (max-width: 479px) {
  .category {
    font-size: 14px;
    line-height: 1.5714285714 !important;
  }
}
.category {
  letter-spacing: 0.05em;
}
@media screen and (max-width: 959px) {
  .category {
    letter-spacing: 0.05em;
  }
}
@media screen and (max-width: 479px) {
  .category {
    letter-spacing: 0.05em;
  }
}
@media screen and (max-width: 959px) {
  .category {
    padding: calc(0.2666666667 * 1vw) calc(3.2 * 1vw) calc(0.2666666667 * 1vw) calc(1.6 * 1vw);
  }
}
.category::after {
  content: "";
  position: absolute;
  width: calc(0.5856515373 * 1vw);
  height: 100%;
  background: #fff;
  clip-path: polygon(100% 0, 0 50%, 100% 100%);
  right: -1px;
  top: 0;
}
@media screen and (max-width: 959px) {
  .category::after {
    width: calc(2.1333333333 * 1vw);
  }
}

.tags {
  display: flex;
  flex-wrap: wrap;
  gap: calc(0.5856515373 * 1vw);
  row-gap: calc(0.2928257687 * 1vw);
  overflow: hidden;
}
@media screen and (max-width: 959px) {
  .tags {
    gap: calc(2.1333333333 * 1vw);
    row-gap: calc(1.0666666667 * 1vw);
  }
}

.tag {
  padding: calc(0.2196193265 * 1vw) calc(0.5856515373 * 1vw) calc(0.2928257687 * 1vw);
  border: solid 1px #2f5f98;
  font-weight: 700;
  color: #2f5f98;
  height: auto;
  border-radius: 2em;
  white-space: nowrap;
  background-color: #fff;
}
.tag {
  font-size: clamp(12px, 0.878477306vw, 9999px);
  line-height: 1.5;
}
@media screen and (max-width: 959px) {
  .tag {
    font-size: clamp(0.75rem, 0.75rem + 0vw, 0.75rem);
  }
}
@media screen and (max-width: 479px) {
  .tag {
    font-size: 12px;
    line-height: 1.5 !important;
  }
}
.tag {
  letter-spacing: 0.05em;
}
@media screen and (max-width: 959px) {
  .tag {
    letter-spacing: 0.05em;
  }
}
@media screen and (max-width: 479px) {
  .tag {
    letter-spacing: 0.05em;
  }
}
@media screen and (max-width: 959px) {
  .tag {
    padding: calc(0.2666666667 * 1vw) calc(1.0666666667 * 1vw) calc(0.5333333333 * 1vw);
  }
}

.story-card {
  width: 100%;
  position: relative;
}
.story-card a:hover {
  opacity: 1;
}
.story-card a:hover .story-card__mv img {
  transform: scale(1.1);
}
.story-card__upper {
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 959px) {
  .story-card__upper {
    flex-flow: row-reverse;
    padding-top: calc(8.5333333333 * 1vw);
  }
}
.story-card__spot {
  max-width: calc(17.7891654466 * 1vw);
  width: 100%;
  padding-top: calc(6.7349926794 * 1vw);
}
@media screen and (max-width: 959px) {
  .story-card__spot {
    max-width: calc(28.5333333333 * 1vw);
    padding-top: calc(2.6666666667 * 1vw);
  }
}
.story-card__spot .spot__bubble {
  text-align: right;
}
.story-card__spot .spot__bubble img {
  width: calc(9.3704245974 * 1vw);
  height: auto;
}
@media screen and (max-width: 959px) {
  .story-card__spot .spot__bubble img {
    width: calc(26.6666666667 * 1vw);
    max-width: 160px;
    margin-right: calc(1.3333333333 * 1vw);
  }
}
.story-card__spot .spot__image {
  aspect-ratio: 2/3;
  width: 100%;
  overflow: hidden;
}
.story-card__spot .spot__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
@media screen and (max-width: 959px) {
  .story-card__spot .spot__image {
    width: calc(21.3333333333 * 1vw);
    margin: 0 0 0 auto;
  }
}
.story-card__mv {
  position: relative;
  max-width: calc(37.9209370425 * 1vw);
  width: 100%;
}
@media screen and (max-width: 1365px) {
  .story-card__mv {
    max-width: calc(32.9428989751 * 1vw);
  }
}
@media screen and (max-width: 959px) {
  .story-card__mv {
    max-width: calc(67.4666666667 * 1vw);
  }
}
.story-card__mv::before {
  content: "";
  position: absolute;
  width: calc(17.7159590044 * 1vw);
  height: calc(3.6603221083 * 1vw);
  background-image: url(../img/top/story-dot_pc.png);
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  top: calc(1.4641288433 * 1vw);
  left: calc(-1.0980966325 * 1vw);
  transform: translate(-100%, 0%);
}
@media screen and (max-width: 959px) {
  .story-card__mv::before {
    width: calc(8 * 1vw);
    height: calc(9.0666666667 * 1vw);
    background-image: url(../img/top/story-dot_sp.png);
    bottom: 0;
    left: auto;
    top: auto;
    right: 0;
    transform: translate(50%, 0%);
  }
}
.story-card__mv-inner {
  overflow: hidden;
  aspect-ratio: 3/2;
  overflow: hidden;
}
.story-card__mv-inner img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.5s ease;
}
.story-card__experience {
  width: 100%;
}
.story-card__experience .experience {
  padding: calc(6.7349926794 * 1vw) calc(4.0263543192 * 1vw) calc(1.8301610542 * 1vw);
  box-sizing: border-box;
}
@media screen and (max-width: 959px) {
  .story-card__experience .experience {
    padding: calc(4.2666666667 * 1vw) calc(8 * 1vw) 0;
  }
}
.story-card__experience .experience__title {
  position: relative;
  padding-bottom: calc(1.317715959 * 1vw);
}
@media screen and (max-width: 959px) {
  .story-card__experience .experience__title {
    padding-bottom: calc(2.1333333333 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .story-card__experience .experience__title {
    padding-bottom: calc(3.2 * 1vw);
  }
}
.story-card__experience .experience__title p {
  margin: 0 0 calc(0.5856515373 * 1vw) calc(-0.5856515373 * 1vw);
  font-weight: 500;
  word-break: keep-all;
  line-break: strict;
  text-indent: -1em;
  padding-left: 1em;
}
.story-card__experience .experience__title p {
  font-size: clamp(14px, 1.0248901903vw, 9999px);
  line-height: 1.8;
}
@media screen and (max-width: 959px) {
  .story-card__experience .experience__title p {
    font-size: clamp(0.75rem, 0.7026992936rem + 0.2018163471vw, 0.875rem);
  }
}
@media screen and (max-width: 479px) {
  .story-card__experience .experience__title p {
    font-size: 12px;
    line-height: 1.8 !important;
  }
}
.story-card__experience .experience__title p {
  letter-spacing: 0.08em;
}
@media screen and (max-width: 959px) {
  .story-card__experience .experience__title p {
    letter-spacing: 0.08em;
  }
}
@media screen and (max-width: 479px) {
  .story-card__experience .experience__title p {
    letter-spacing: 0.08em;
  }
}
@media screen and (max-width: 959px) {
  .story-card__experience .experience__title p {
    margin: 0 0 calc(1.0666666667 * 1vw) calc(-0.8 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .story-card__experience .experience__title p {
    margin: 0 0 calc(2.1333333333 * 1vw) calc(-1.0666666667 * 1vw);
  }
}
.story-card__experience .experience__title p span {
  white-space: nowrap;
}
.story-card__experience .experience__title h3 {
  display: inline;
  background-color: #fbca41;
  padding: calc(0.1464128843 * 1vw) calc(0.5856515373 * 1vw);
  font-weight: 700;
  width: fit-content;
  box-decoration-break: clone;
  -webkit-box-decoration-break: clone;
  word-break: keep-all;
  overflow-wrap: anywhere;
}
.story-card__experience .experience__title h3 {
  font-size: clamp(26px, 1.9033674963vw, 9999px);
  line-height: 1.5;
}
@media screen and (max-width: 959px) {
  .story-card__experience .experience__title h3 {
    font-size: clamp(1.1875rem, 1.0219475277rem + 0.7063572149vw, 1.625rem);
  }
}
@media screen and (max-width: 479px) {
  .story-card__experience .experience__title h3 {
    font-size: 19px;
    line-height: 1.5 !important;
  }
}
.story-card__experience .experience__title h3 {
  letter-spacing: 0.1em;
}
@media screen and (max-width: 959px) {
  .story-card__experience .experience__title h3 {
    letter-spacing: 0.1em;
  }
}
@media screen and (max-width: 479px) {
  .story-card__experience .experience__title h3 {
    letter-spacing: 0.1em;
  }
}
@media screen and (max-width: 959px) {
  .story-card__experience .experience__title h3 {
    padding: calc(0.5333333333 * 1vw) calc(1.6 * 1vw);
  }
}
.story-card__experience .experience__title::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: calc(2.196193265 * 1vw);
  height: 1px;
  background-color: #1c1c1c;
}
@media screen and (max-width: 959px) {
  .story-card__experience .experience__title::after {
    width: calc(5.8666666667 * 1vw);
  }
}
.story-card__experience .experience__text {
  padding: calc(1.1713030747 * 1vw) 0 0 0;
}
@media screen and (max-width: 649px) {
  .story-card__experience .experience__text {
    padding: calc(2.1333333333 * 1vw) 0;
  }
}
.story-card__experience .experience__main-text {
  margin-bottom: calc(1.1713030747 * 1vw);
  background-color: #fff;
  display: -webkit-box;
  -webkit-line-clamp: 5;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.story-card__experience .experience__main-text {
  font-size: clamp(14px, 1.0248901903vw, 9999px);
  line-height: 2.0571428571;
}
@media screen and (max-width: 959px) {
  .story-card__experience .experience__main-text {
    font-size: clamp(0.875rem, 0.875rem + 0vw, 0.875rem);
  }
}
@media screen and (max-width: 479px) {
  .story-card__experience .experience__main-text {
    font-size: 14px;
    line-height: 2.0571428571 !important;
  }
}
.story-card__experience .experience__main-text {
  letter-spacing: 0.05em;
}
@media screen and (max-width: 959px) {
  .story-card__experience .experience__main-text {
    letter-spacing: 0.05em;
  }
}
@media screen and (max-width: 479px) {
  .story-card__experience .experience__main-text {
    letter-spacing: 0.05em;
  }
}
@media screen and (max-width: 959px) {
  .story-card__experience .experience__main-text {
    margin: calc(1.0666666667 * 1vw) 0;
  }
}
@media screen and (max-width: 649px) {
  .story-card__experience .experience__main-text {
    margin: calc(2.1333333333 * 1vw) 0;
  }
}
.story-card__experience .experience__sub-title {
  margin-bottom: calc(0.5856515373 * 1vw);
  background-color: #fff9d4;
  font-weight: 700;
}
.story-card__experience .experience__sub-title {
  font-size: clamp(16px, 1.1713030747vw, 9999px);
  line-height: 1.8;
}
@media screen and (max-width: 959px) {
  .story-card__experience .experience__sub-title {
    font-size: clamp(1rem, 1rem + 0vw, 1rem);
  }
}
@media screen and (max-width: 479px) {
  .story-card__experience .experience__sub-title {
    font-size: 16px;
    line-height: 1.8 !important;
  }
}
.story-card__experience .experience__sub-title {
  letter-spacing: 0.1em;
}
@media screen and (max-width: 959px) {
  .story-card__experience .experience__sub-title {
    letter-spacing: 0.1em;
  }
}
@media screen and (max-width: 479px) {
  .story-card__experience .experience__sub-title {
    letter-spacing: 0.1em;
  }
}
@media screen and (max-width: 959px) {
  .story-card__experience .experience__sub-title {
    margin-bottom: calc(1.0666666667 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .story-card__experience .experience__sub-title {
    margin-bottom: calc(2.1333333333 * 1vw);
  }
}
.story-card__experience .experience__info {
  display: flex;
  justify-content: space-between;
  align-items: start;
  gap: calc(0.5856515373 * 1vw);
}
@media screen and (max-width: 959px) {
  .story-card__experience .experience__info {
    gap: calc(2.1333333333 * 1vw);
  }
}
.story-card__lower {
  position: relative;
}
@media screen and (max-width: 1365px) {
  .story-card__lower {
    height: 100px;
  }
}
@media screen and (max-width: 959px) {
  .story-card__lower {
    height: auto;
  }
}
.story-card__lower-inner {
  display: flex;
  justify-content: end;
  align-items: end;
  gap: calc(2.3426061493 * 1vw);
  margin: 0 0 0 auto;
  padding-right: 9.7364568082%;
  right: 0;
  top: 0;
  transform: translate(0%, -40%);
}
@media screen and (max-width: 1365px) {
  .story-card__lower-inner {
    display: block;
    flex-direction: row-reverse;
    align-items: center;
    justify-content: center;
    gap: calc(4.39238653 * 1vw);
    width: fit-content;
    padding-right: 2.9282576867%;
    transform: translate(0%, -70%);
    right: auto;
    top: auto;
  }
}
@media screen and (max-width: 959px) {
  .story-card__lower-inner {
    gap: calc(0 * 1vw);
    transform: translate(0%, 0%);
    padding: calc(8.5333333333 * 1vw) 0 calc(8.5333333333 * 1vw) 0;
    width: 100%;
  }
}
.story-card__lower-inner .food {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: calc(0.878477306 * 1vw);
  transform: rotate(-5deg);
}
@media screen and (max-width: 1365px) {
  .story-card__lower-inner .food {
    gap: calc(3.2 * 1vw);
    justify-content: flex-end;
    width: fit-content;
  }
}
@media screen and (max-width: 959px) {
  .story-card__lower-inner .food {
    flex-flow: row-reverse;
    gap: calc(3.2 * 1vw);
    justify-content: flex-end;
    width: fit-content;
    margin: 0 auto calc(-16 * 1vw) 5px;
  }
}
.story-card__lower-inner .food__bubble {
  width: calc(8.78477306 * 1vw);
}
@media screen and (max-width: 959px) {
  .story-card__lower-inner .food__bubble {
    width: calc(25.3333333333 * 1vw);
  }
}
.story-card__lower-inner .food__image {
  aspect-ratio: 3/2;
  overflow: hidden;
  width: calc(15.3001464129 * 1vw);
  height: auto;
}
.story-card__lower-inner .food__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
@media screen and (max-width: 1365px) {
  .story-card__lower-inner .food__image {
    width: calc(19.0336749634 * 1vw);
  }
}
@media screen and (max-width: 959px) {
  .story-card__lower-inner .food__image {
    width: calc(40 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .story-card__lower-inner .food__image {
    width: calc(36 * 1vw);
  }
}
@media screen and (max-width: 1365px) {
  .story-card__button {
    margin: 0;
    width: fit-content;
  }
}
@media screen and (max-width: 959px) {
  .story-card__button {
    margin: 0 0 0 auto;
    width: fit-content;
    padding-right: calc(2.1333333333 * 1vw);
  }
}
.story-card__button .more-bubble {
  width: calc(10.6149341142 * 1vw);
  height: auto;
  rotate: -10deg;
}
@media screen and (max-width: 959px) {
  .story-card__button .more-bubble {
    width: calc(34.1333333333 * 1vw);
    rotate: 10deg;
    margin: 0 0 0 auto;
    max-width: 180px;
  }
}
.story-card__button .button-more {
  padding-left: calc(8.0527086384 * 1vw);
}
@media screen and (max-width: 1365px) {
  .story-card__button .button-more {
    padding-left: calc(4.39238653 * 1vw);
  }
}
@media screen and (max-width: 959px) {
  .story-card__button .button-more {
    padding: 0 calc(18.6666666667 * 1vw) 0 0;
    width: fit-content;
  }
}
@media screen and (max-width: 479px) {
  .story-card__button .button-more {
    padding: 0 calc(26.6666666667 * 1vw) 0 0;
    width: fit-content;
  }
}
.story-card__pager {
  position: absolute;
  left: calc(22.1083455344 * 1vw);
  top: 0;
  z-index: 1;
  margin-bottom: 0;
}
.story-card__pager .pager {
  margin: 0;
}
.story-card__pager .button-prev_story {
  cursor: pointer;
}
.story-card__pager .button-next_story {
  cursor: pointer;
}
@media screen and (max-width: 959px) {
  .story-card__pager {
    transform: translate(0%, 100%);
    top: auto;
    bottom: 72px;
    left: auto;
    right: calc(8 * 1vw);
    margin-top: 0;
  }
}
.story-card__pager .pager {
  margin: 0 auto 0 0;
}
@media screen and (max-width: 959px) {
  .story-card__pager .pager {
    margin: 0 0 0 auto;
  }
}

.no-articles {
  max-width: 80.5270863836%;
  width: 100%;
  margin: 0 auto;
  padding: calc(7.3206442167 * 1vw) 0;
  text-align: center;
}
.no-articles p {
  text-align: center;
  font-weight: 500;
}
.no-articles p {
  font-size: clamp(16px, 1.1713030747vw, 9999px);
  line-height: 1.8;
}
@media screen and (max-width: 959px) {
  .no-articles p {
    font-size: clamp(0.875rem, 0.8276992936rem + 0.2018163471vw, 1rem);
  }
}
@media screen and (max-width: 479px) {
  .no-articles p {
    font-size: 14px;
    line-height: 1.8 !important;
  }
}
.no-articles p {
  letter-spacing: 0.05em;
}
@media screen and (max-width: 959px) {
  .no-articles p {
    letter-spacing: 0.05em;
  }
}
@media screen and (max-width: 479px) {
  .no-articles p {
    letter-spacing: 0.05em;
  }
}

.experience-card__wrapper {
  padding: 0 calc(1.756954612 * 1vw) calc(1.756954612 * 1vw) calc(1.756954612 * 1vw);
  background-color: #fff9d4;
  background: linear-gradient(180deg, #fff 0%, #fff 15%, #fff9d4 15%, #fff9d4 100%);
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 959px) {
  .experience-card__wrapper {
    padding: 0 calc(3.2 * 1vw) calc(3.2 * 1vw) calc(3.2 * 1vw);
    background: linear-gradient(180deg, #fff 0%, #fff calc(5.3333333333 * 1vw), #fff9d4 calc(5.3333333333 * 1vw), #fff9d4 100%);
  }
}
@media screen and (max-width: 649px) {
  .experience-card__wrapper {
    padding: 0 calc(6.4 * 1vw) calc(6.4 * 1vw) calc(6.4 * 1vw);
    background: linear-gradient(180deg, #fff 0%, #fff calc(44.2666666667 * 1vw), #fff9d4 calc(44.2666666667 * 1vw), #fff9d4 100%);
    flex-flow: column;
    gap: calc(2.1333333333 * 1vw);
  }
}
.experience-card__upper {
  padding-bottom: calc(0.878477306 * 1vw);
  position: relative;
}
@media screen and (max-width: 959px) {
  .experience-card__upper {
    padding-bottom: calc(2.1333333333 * 1vw);
  }
}
.experience-card__upper:after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: calc(2.196193265 * 1vw);
  height: calc(0.0732064422 * 1vw);
  background-color: #1c1c1c;
}
@media screen and (max-width: 959px) {
  .experience-card__upper:after {
    width: calc(5.8666666667 * 1vw);
    height: calc(0.2666666667 * 1vw);
  }
}
.experience-card__middle {
  margin-top: calc(0.878477306 * 1vw);
}
@media screen and (max-width: 959px) {
  .experience-card__middle {
    margin-top: calc(1.0666666667 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .experience-card__middle {
    margin-top: calc(2.1333333333 * 1vw);
  }
}
.experience-card__category {
  margin-left: calc(-0.5856515373 * 1vw);
  margin-bottom: calc(0.5856515373 * 1vw);
  font-weight: 500;
  word-break: keep-all;
  line-break: strict;
  text-indent: -1em;
  padding-left: 1em;
}
.experience-card__category {
  font-size: clamp(14px, 1.0248901903vw, 9999px);
  line-height: 1.5;
}
@media screen and (max-width: 959px) {
  .experience-card__category {
    font-size: clamp(0.875rem, 0.875rem + 0vw, 0.875rem);
  }
}
@media screen and (max-width: 479px) {
  .experience-card__category {
    font-size: 14px;
    line-height: 1.5 !important;
  }
}
.experience-card__category {
  letter-spacing: 0.08em;
}
@media screen and (max-width: 959px) {
  .experience-card__category {
    letter-spacing: 0.08em;
  }
}
@media screen and (max-width: 479px) {
  .experience-card__category {
    letter-spacing: 0.08em;
  }
}
@media screen and (max-width: 959px) {
  .experience-card__category {
    margin-left: calc(-1.0666666667 * 1vw);
    margin-bottom: calc(1.0666666667 * 1vw);
  }
}
.experience-card__category span {
  white-space: nowrap;
}
.experience-card__sub-title {
  display: inline;
  box-sizing: border-box;
  box-decoration-break: clone;
  -webkit-box-decoration-break: clone;
  word-break: keep-all;
  overflow-wrap: anywhere;
  margin-top: calc(0.5856515373 * 1vw);
  width: fit-content;
  font-weight: 700;
  padding: calc(0.2928257687 * 1vw) calc(0.5856515373 * 1vw);
  background-color: #fbca41;
}
.experience-card__sub-title {
  font-size: clamp(20px, 1.4641288433vw, 9999px);
  line-height: 1.5;
}
@media screen and (max-width: 959px) {
  .experience-card__sub-title {
    font-size: clamp(1.25rem, 1.25rem + 0vw, 1.25rem);
  }
}
@media screen and (max-width: 479px) {
  .experience-card__sub-title {
    font-size: 20px;
    line-height: 1.5 !important;
  }
}
.experience-card__sub-title {
  letter-spacing: 0.1em;
}
@media screen and (max-width: 959px) {
  .experience-card__sub-title {
    letter-spacing: 0.1em;
  }
}
@media screen and (max-width: 479px) {
  .experience-card__sub-title {
    letter-spacing: 0.1em;
  }
}
@media screen and (max-width: 959px) {
  .experience-card__sub-title {
    margin-top: calc(2.1333333333 * 1vw);
  }
}
.experience-card__title {
  font-weight: 700;
}
.experience-card__title {
  font-size: clamp(16px, 1.1713030747vw, 9999px);
  line-height: 1.5;
}
@media screen and (max-width: 959px) {
  .experience-card__title {
    font-size: clamp(1rem, 1rem + 0vw, 1rem);
  }
}
@media screen and (max-width: 479px) {
  .experience-card__title {
    font-size: 16px;
    line-height: 1.5 !important;
  }
}
.experience-card__title {
  letter-spacing: 0.1em;
}
@media screen and (max-width: 959px) {
  .experience-card__title {
    letter-spacing: 0.1em;
  }
}
@media screen and (max-width: 479px) {
  .experience-card__title {
    letter-spacing: 0.1em;
  }
}
.experience-card__text {
  margin-top: calc(0.5856515373 * 1vw);
  background-color: #fff;
  text-align: justify;
  font-weight: 400;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.experience-card__text {
  font-size: clamp(14px, 1.0248901903vw, 9999px);
  line-height: 1.8;
}
@media screen and (max-width: 959px) {
  .experience-card__text {
    font-size: clamp(0.875rem, 0.875rem + 0vw, 0.875rem);
  }
}
@media screen and (max-width: 479px) {
  .experience-card__text {
    font-size: 14px;
    line-height: 1.5 !important;
  }
}
.experience-card__text {
  letter-spacing: 0.05em;
}
@media screen and (max-width: 959px) {
  .experience-card__text {
    letter-spacing: 0.05em;
  }
}
@media screen and (max-width: 479px) {
  .experience-card__text {
    letter-spacing: 0.05em;
  }
}
@media screen and (max-width: 959px) {
  .experience-card__text {
    margin-top: calc(1.0666666667 * 1vw);
    -webkit-line-clamp: 3;
  }
}
@media screen and (max-width: 649px) {
  .experience-card__text {
    margin-top: calc(2.1333333333 * 1vw);
    -webkit-line-clamp: 5;
  }
}
.experience-card__lower {
  margin-top: calc(0.878477306 * 1vw);
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 959px) {
  .experience-card__lower {
    display: flex;
    flex-flow: column-reverse;
    gap: calc(0.5333333333 * 1vw);
    margin-top: calc(1.0666666667 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .experience-card__lower {
    gap: calc(1.0666666667 * 1vw);
    margin-top: calc(2.1333333333 * 1vw);
  }
}
@media screen and (max-width: 959px) {
  .experience-card__lower .date {
    text-align: right;
    width: fit-content;
    margin: 0 0 0 auto;
  }
}
.experience-card__image {
  overflow: hidden;
  aspect-ratio: 1/1;
  width: 100%;
  height: auto;
  z-index: 1;
}
.experience-card__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.experience-card__left {
  width: 100%;
  max-width: 30.0480769231%;
}
@media screen and (max-width: 959px) {
  .experience-card__left {
    max-width: 29.9731182796%;
  }
}
@media screen and (max-width: 649px) {
  .experience-card__left {
    max-width: none;
  }
}
.experience-card__right {
  width: 100%;
  max-width: 63.2211538462%;
}
@media screen and (max-width: 959px) {
  .experience-card__right {
    max-width: 64.9193548387%;
  }
}
@media screen and (max-width: 649px) {
  .experience-card__right {
    max-width: none;
  }
}

.pager {
  margin: calc(1.756954612 * 1vw) auto 0 auto;
  width: fit-content;
}
.pager .swiper-pagination-bullet:only-child {
  display: block !important;
}
@media screen and (max-width: 959px) {
  .pager {
    margin: 0 auto;
  }
}
.pager__inner {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: calc(1.756954612 * 1vw);
  width: fit-content;
}
@media screen and (max-width: 959px) {
  .pager__inner {
    gap: calc(3.2 * 1vw);
  }
}
.pager__pagination {
  width: fit-content !important;
  position: relative !important;
  display: block !important;
  top: auto !important;
  bottom: auto !important;
}
.pager__pagination .swiper-pagination-bullet {
  margin: 0 calc(0.5856515373 * 1vw) !important;
  background-color: #2f5f98;
  opacity: 1;
  width: calc(0.3660322108 * 1vw);
  height: calc(0.3660322108 * 1vw);
}
@media screen and (max-width: 959px) {
  .pager__pagination .swiper-pagination-bullet {
    margin: 0 calc(1.0666666667 * 1vw) !important;
    width: calc(0.8 * 1vw) !important;
    height: calc(0.8 * 1vw) !important;
  }
}
@media screen and (max-width: 649px) {
  .pager__pagination .swiper-pagination-bullet {
    margin: 0 calc(1.6 * 1vw) !important;
    width: calc(1.0666666667 * 1vw) !important;
    height: calc(1.0666666667 * 1vw) !important;
  }
}
.pager__pagination .swiper-pagination-bullet-active {
  position: relative;
}
.pager__pagination .swiper-pagination-bullet-active::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 400%;
  height: 400%;
  border: solid 1px #fbca41;
  border-radius: 50%;
}
.pager__prev .circle-arrow {
  transform: rotate(-180deg);
}
.pager__prev, .pager__next {
  position: static !important;
  width: 100% !important;
  display: block !important;
  width: auto !important;
  height: auto !important;
  margin-top: auto !important;
}
.pager__prev::after, .pager__next::after {
  display: none;
}
.pager__prev:hover .circle-arrow, .pager__next:hover .circle-arrow {
  background-color: #2f5f98;
}
.pager__prev:hover .circle-arrow span, .pager__next:hover .circle-arrow span {
  background-image: url("../img/common/arrow-white.png");
}
.pager__prev .circle-arrow, .pager__next .circle-arrow {
  background-color: #fff;
  border: 1px #2f5f98 solid;
  width: clamp(40px, 4vw, 2.9282576867 * 1vw);
}
.pager__prev .circle-arrow span, .pager__next .circle-arrow span {
  background: url("../img/common/arrow-blue.png") no-repeat center/contain;
}

.text-mv {
  padding: calc(10.4685212299 * 1vw) 0 calc(2.9282576867 * 1vw);
  border-bottom: solid 1px #fbca41;
}
@media screen and (max-width: 959px) {
  .text-mv {
    padding: calc(16 * 1vw) 0 calc(2.6666666667 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .text-mv {
    padding: calc(25.8666666667 * 1vw) 0 calc(4.2666666667 * 1vw);
  }
}
.text-mv h2 {
  text-align: center;
  color: #2f5f98;
  font-weight: 700;
}
.text-mv h2 {
  font-size: clamp(32px, 2.3426061493vw, 9999px);
  line-height: 1;
}
@media screen and (max-width: 959px) {
  .text-mv h2 {
    font-size: clamp(1.625rem, 1.4830978809rem + 0.6054490414vw, 2rem);
  }
}
@media screen and (max-width: 479px) {
  .text-mv h2 {
    font-size: 26px;
    line-height: 1 !important;
  }
}
.text-mv h2 {
  letter-spacing: 0.1em;
}
@media screen and (max-width: 959px) {
  .text-mv h2 {
    letter-spacing: 0.1em;
  }
}
@media screen and (max-width: 479px) {
  .text-mv h2 {
    letter-spacing: 0.1em;
  }
}

.lower-mv {
  position: relative;
  width: 100%;
  height: 27.9648609078%;
}
@media screen and (max-width: 959px) {
  .lower-mv {
    height: auto;
    padding-top: calc(16 * 1vw);
  }
}
@media screen and (max-width: 479px) {
  .lower-mv {
    padding-top: calc(21.3333333333 * 1vw);
  }
}
.lower-mv__title {
  position: absolute;
  left: calc(9.8096632504 * 1vw);
  bottom: calc(4.6120058565 * 1vw);
}
@media screen and (max-width: 959px) {
  .lower-mv__title {
    position: relative;
    width: fit-content;
    text-align: left;
    left: auto;
    bottom: auto;
    max-width: 92%;
    width: 100%;
    margin: 0 auto;
    margin-bottom: calc(4.2666666667 * 1vw);
  }
}
.lower-mv__title h2 {
  font-family: "Caveat", cursive;
  font-weight: 700;
  color: #2f5f98;
}
.lower-mv__title h2 {
  font-size: clamp(80px, 5.8565153734vw, 9999px);
  line-height: 1.375;
}
@media screen and (max-width: 959px) {
  .lower-mv__title h2 {
    font-size: clamp(4rem, 3.6215943491rem + 1.614530777vw, 5rem);
  }
}
@media screen and (max-width: 479px) {
  .lower-mv__title h2 {
    font-size: 64px;
    line-height: 1.34375 !important;
  }
}
.lower-mv__title h2 {
  letter-spacing: 0.2em;
}
@media screen and (max-width: 959px) {
  .lower-mv__title h2 {
    letter-spacing: 0.2em;
  }
}
@media screen and (max-width: 479px) {
  .lower-mv__title h2 {
    letter-spacing: 0.2em;
  }
}
.lower-mv__title p {
  width: fit-content;
  padding-top: calc(1.0980966325 * 1vw);
  margin-left: calc(3.074670571 * 1vw);
  font-weight: 700;
  color: #2f5f98;
  position: relative;
}
.lower-mv__title p {
  font-size: clamp(18px, 1.317715959vw, 9999px);
  line-height: 1.5;
}
@media screen and (max-width: 959px) {
  .lower-mv__title p {
    font-size: clamp(1rem, 0.9526992936rem + 0.2018163471vw, 1.125rem);
  }
}
@media screen and (max-width: 479px) {
  .lower-mv__title p {
    font-size: 16px;
    line-height: 1.5 !important;
  }
}
.lower-mv__title p {
  letter-spacing: 0.05em;
}
@media screen and (max-width: 959px) {
  .lower-mv__title p {
    letter-spacing: 0.05em;
  }
}
@media screen and (max-width: 479px) {
  .lower-mv__title p {
    letter-spacing: 0.05em;
  }
}
@media screen and (max-width: 959px) {
  .lower-mv__title p {
    text-align: center;
    min-width: 196px;
    margin-left: 0;
    padding: calc(2.1333333333 * 1vw) calc(2.1333333333 * 1vw) 0 calc(2.1333333333 * 1vw);
  }
}
.lower-mv__title p::after {
  content: "";
  aspect-ratio: 270/50;
  width: 150%;
  height: auto;
  position: absolute;
  top: 0%;
  left: 50%;
  transform: translate(-50%, -50%);
  background-image: url(../img/common/lower-title.png);
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  min-width: 250px;
}
@media screen and (max-width: 959px) {
  .lower-mv__title p::after {
    min-width: 196px;
    width: 100%;
    left: 50%;
    transform: translate(-50%, -50%);
  }
}
.lower-mv__image {
  width: 100%;
  height: 100%;
}
@media screen and (max-width: 959px) {
  .lower-mv__image {
    height: calc(53.3333333333 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .lower-mv__image {
    height: calc(66.6666666667 * 1vw);
  }
}
.lower-mv__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.lower-mv__link {
  position: absolute;
  bottom: -1px;
  right: calc(9.7364568082 * 1vw);
  background-color: #fff;
  display: flex;
  align-items: center;
  gap: calc(0.5856515373 * 1vw);
  padding: calc(0.878477306 * 1vw) calc(1.756954612 * 1vw);
  border-radius: calc(0.878477306 * 1vw) calc(0.878477306 * 1vw) 0 0;
  text-align: center;
  color: #2f5f98;
  font-weight: 700;
}
.lower-mv__link {
  font-size: clamp(16px, 1.1713030747vw, 9999px);
  line-height: 1.375;
}
@media screen and (max-width: 959px) {
  .lower-mv__link {
    font-size: clamp(0.75rem, 0.6553985873rem + 0.4036326942vw, 1rem);
  }
}
@media screen and (max-width: 479px) {
  .lower-mv__link {
    font-size: 12px;
    line-height: 1.5 !important;
  }
}
.lower-mv__link {
  letter-spacing: 0.1em;
}
@media screen and (max-width: 959px) {
  .lower-mv__link {
    letter-spacing: 0.1em;
  }
}
@media screen and (max-width: 479px) {
  .lower-mv__link {
    letter-spacing: 0.1em;
  }
}
@media screen and (max-width: 959px) {
  .lower-mv__link {
    right: calc(4 * 1vw);
    gap: calc(2.1333333333 * 1vw);
    padding: calc(2.1333333333 * 1vw) calc(3.2 * 1vw);
    border-radius: calc(2.1333333333 * 1vw) calc(2.1333333333 * 1vw) 0 0;
  }
}
.lower-mv__link span {
  content: "";
  width: calc(0.7320644217 * 1vw);
  height: calc(0.1464128843 * 1vw);
  background-color: #fbca41;
  margin-right: calc(0.2196193265 * 1vw);
}
@media screen and (max-width: 959px) {
  .lower-mv__link span {
    width: calc(2.6666666667 * 1vw);
    height: calc(0.5333333333 * 1vw);
    margin-right: calc(0.5333333333 * 1vw);
  }
}

.lower-title {
  text-align: center;
  margin-bottom: calc(2.3426061493 * 1vw);
  word-break: keep-all;
}
@media screen and (max-width: 959px) {
  .lower-title {
    margin-bottom: calc(2.6666666667 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .lower-title {
    margin-bottom: calc(4.2666666667 * 1vw);
  }
}
@media screen and (max-width: 479px) {
  .lower-title {
    margin-bottom: calc(6.4 * 1vw);
  }
}
.lower-title p {
  font-family: "Caveat", cursive;
  font-weight: 700;
  color: #fbca41;
}
.lower-title p {
  font-size: clamp(24px, 1.756954612vw, 9999px);
  line-height: 1.5;
}
@media screen and (max-width: 959px) {
  .lower-title p {
    font-size: clamp(1.125rem, 0.9830978809rem + 0.6054490414vw, 1.5rem);
  }
}
@media screen and (max-width: 479px) {
  .lower-title p {
    font-size: 18px;
    line-height: 1.5 !important;
  }
}
.lower-title p {
  letter-spacing: 0.2em;
}
@media screen and (max-width: 959px) {
  .lower-title p {
    letter-spacing: 0.2em;
  }
}
@media screen and (max-width: 479px) {
  .lower-title p {
    letter-spacing: 0.2em;
  }
}
.lower-title h3 {
  font-weight: 700;
  color: #2f5f98;
  overflow-wrap: anywhere;
}
.lower-title h3 {
  font-size: clamp(30px, 2.196193265vw, 9999px);
  line-height: 1.5;
}
@media screen and (max-width: 959px) {
  .lower-title h3 {
    font-size: clamp(1.5rem, 1.3580978809rem + 0.6054490414vw, 1.875rem);
  }
}
@media screen and (max-width: 479px) {
  .lower-title h3 {
    font-size: 24px;
    line-height: 1.5 !important;
  }
}
.lower-title h3 {
  letter-spacing: 0.2em;
}
@media screen and (max-width: 959px) {
  .lower-title h3 {
    letter-spacing: 0.2em;
  }
}
@media screen and (max-width: 479px) {
  .lower-title h3 {
    letter-spacing: 0.2em;
  }
}

.lower-text {
  text-align: center;
  font-weight: 700;
}
.lower-text {
  font-size: clamp(16px, 1.1713030747vw, 9999px);
  line-height: 2.025;
}
@media screen and (max-width: 959px) {
  .lower-text {
    font-size: clamp(1rem, 1rem + 0vw, 1rem);
  }
}
@media screen and (max-width: 479px) {
  .lower-text {
    font-size: 16px;
    line-height: 1.775 !important;
  }
}
.lower-text {
  letter-spacing: 0.05em;
}
@media screen and (max-width: 959px) {
  .lower-text {
    letter-spacing: 0.05em;
  }
}
@media screen and (max-width: 479px) {
  .lower-text {
    letter-spacing: 0.05em;
  }
}

.vertical-title {
  writing-mode: vertical-rl;
  text-orientation: mixed;
  font-weight: 400;
  color: #2f5f98;
  display: flex;
  flex-flow: column;
  width: 100%;
  justify-content: center;
}
.vertical-title {
  font-size: clamp(22px, 1.6105417277vw, 9999px);
  line-height: 1.2727272727;
}
@media screen and (max-width: 959px) {
  .vertical-title {
    font-size: clamp(1.125rem, 1.0303985873rem + 0.4036326942vw, 1.375rem);
  }
}
@media screen and (max-width: 479px) {
  .vertical-title {
    font-size: 18px;
    line-height: 1.1666666667 !important;
  }
}
.vertical-title {
  letter-spacing: 0.15em;
}
@media screen and (max-width: 959px) {
  .vertical-title {
    letter-spacing: 0.15em;
  }
}
@media screen and (max-width: 479px) {
  .vertical-title {
    letter-spacing: 0.15em;
  }
}
@media screen and (max-width: 959px) {
  .vertical-title {
    width: 19.8757763975%;
  }
}
@media screen and (max-width: 649px) {
  .vertical-title {
    width: 26.6666666667%;
  }
}
.vertical-title__inner {
  height: fit-content;
  position: relative;
  width: 50%;
  display: flex;
  align-items: center;
}
.vertical-title__inner:first-child::after {
  content: "";
  right: 0;
  top: 0;
  position: absolute;
  width: 1px;
  height: 100%;
  background-color: #2f5f98;
}
.vertical-title__inner:last-child::after {
  content: "";
  right: 0;
  top: 0;
  position: absolute;
  width: 1px;
  height: 100%;
  background-color: #2f5f98;
}
.vertical-title__inner:last-child:before {
  content: "";
  left: 0;
  top: 0;
  position: absolute;
  width: 1px;
  height: 100%;
  background-color: #2f5f98;
}
.vertical-title p {
  text-align: center;
  margin: 0 auto;
  padding-top: calc(0.7320644217 * 1vw);
}

.dot-text span {
  position: relative;
  display: inline-block;
}
.dot-text span::after {
  content: "";
  background-color: #fbca41;
  position: absolute;
  top: -13%;
  left: 40%;
  transform: translate(-50%, 0%);
  border-radius: 50%;
  width: calc(0.439238653 * 1vw);
  height: auto;
  aspect-ratio: 1/1;
}
@media screen and (max-width: 959px) {
  .dot-text span::after {
    width: calc(0.8 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .dot-text span::after {
    width: calc(1.0666666667 * 1vw);
  }
}

.related-tags {
  margin-top: calc(1.756954612 * 1vw);
  background-color: #fff9d4;
  display: flex;
  align-items: start;
  justify-content: left;
  gap: calc(2.3426061493 * 1vw);
  padding: calc(1.756954612 * 1vw) calc(2.3426061493 * 1vw);
}
@media screen and (max-width: 959px) {
  .related-tags {
    margin-top: calc(5.3333333333 * 1vw);
    flex-flow: column;
    gap: calc(2.1333333333 * 1vw);
    padding: calc(4.8 * 1vw) calc(4.2666666667 * 1vw);
    margin: calc(5.3333333333 * 1vw) 0 0 0;
  }
}
.related-tags__title {
  min-width: calc(5.1244509517 * 1vw);
  width: fit-content;
}
@media screen and (max-width: 959px) {
  .related-tags__title {
    width: calc(17.3333333333 * 1vw);
  }
}
.related-tags__tags {
  width: 81.25%;
  margin: 0 0 0 auto;
  flex-wrap: wrap;
}
@media screen and (max-width: 959px) {
  .related-tags__tags {
    width: 90.4761904762%;
  }
}

.info__table {
  width: 100%;
}
.info__table {
  font-size: clamp(16px, 1.1713030747vw, 9999px);
  line-height: 1.5;
}
@media screen and (max-width: 959px) {
  .info__table {
    font-size: clamp(1rem, 1rem + 0vw, 1rem);
  }
}
@media screen and (max-width: 479px) {
  .info__table {
    font-size: 16px;
    line-height: 1.5 !important;
  }
}
.info__table table {
  position: relative;
  background-color: #fff;
}
.info__table table::before, .info__table table::after {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  transform: translate(-50%, -100%);
  width: 100%;
  height: calc(0.439238653 * 1vw);
  border-radius: calc(0.439238653 * 1vw);
  border: solid 1px #fbca41;
  background-color: #fff;
}
@media screen and (max-width: 959px) {
  .info__table table::before, .info__table table::after {
    height: calc(0.8 * 1vw);
    border-radius: calc(0.8 * 1vw);
  }
}
.info__table table::after {
  top: auto;
  bottom: 0;
  left: 50%;
  transform: translate(-50%, 100%);
}
.info__table table tbody {
  padding: 0 calc(0.3660322108 * 1vw);
}
@media screen and (max-width: 959px) {
  .info__table table tbody {
    padding: 0 calc(1.3333333333 * 1vw);
  }
}
.info__table table th {
  padding: calc(1.4641288433 * 1vw) calc(0.439238653 * 1vw);
  border-bottom: solid 1px #fbca41;
  width: 18.9655172414%;
  color: #2f5f98;
  font-weight: 700;
  padding: 0 calc(0.3660322108 * 1vw);
  padding: calc(1.4641288433 * 1vw) 0;
  vertical-align: middle;
  box-sizing: border-box;
}
.info__table table th {
  letter-spacing: 0.2em;
}
@media screen and (max-width: 959px) {
  .info__table table th {
    letter-spacing: 0.2em;
  }
}
@media screen and (max-width: 479px) {
  .info__table table th {
    letter-spacing: 0.2em;
  }
}
@media screen and (max-width: 959px) {
  .info__table table th {
    border: none;
    padding: calc(2.1333333333 * 1vw) calc(1.3333333333 * 1vw) 0;
    width: 100%;
    text-align: left;
    display: block;
  }
}
@media screen and (max-width: 649px) {
  .info__table table th {
    padding: calc(4.2666666667 * 1vw) calc(1.3333333333 * 1vw) 0;
  }
}
.info__table table td {
  border-bottom: solid 1px #d5dfea;
  width: 81.0344827586%;
  padding: calc(1.4641288433 * 1vw) calc(1.4641288433 * 1vw);
  font-weight: 500;
  vertical-align: middle;
  box-sizing: border-box;
}
.info__table table td {
  letter-spacing: 0.15em;
}
@media screen and (max-width: 959px) {
  .info__table table td {
    letter-spacing: 0.15em;
  }
}
@media screen and (max-width: 479px) {
  .info__table table td {
    letter-spacing: 0.15em;
  }
}
@media screen and (max-width: 959px) {
  .info__table table td {
    padding: 0 calc(1.3333333333 * 1vw) calc(2.1333333333 * 1vw);
    width: 100%;
    display: block;
    position: relative;
    box-sizing: border-box;
  }
}
@media screen and (max-width: 649px) {
  .info__table table td {
    padding: 0 calc(1.3333333333 * 1vw) calc(4.2666666667 * 1vw);
  }
}
@media screen and (max-width: 959px) {
  .info__table table td::before {
    content: "";
    position: absolute;
    width: 30%;
    height: 2px;
    background: #fbca41;
    bottom: -2px;
    left: 0;
    transform: translate(0%, -50%);
  }
}
.info__table table tr:last-child th,
.info__table table tr:last-child td {
  border: none !important;
}
.info__table table tr:last-child td::before {
  display: none;
}

.mv {
  width: 100%;
  height: 100vh;
  background-image: url(../img/top/mv_pc.png);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  position: relative;
}
@media screen and (max-width: 959px) {
  .mv {
    background-image: url(../img/top/mv_sp.png);
  }
}
.mv__inner {
  max-width: 87.8477306003%;
  width: 100%;
  margin: 0 auto;
  height: 100%;
  display: flex;
  flex-flow: column;
  justify-content: center;
}
@media screen and (max-width: 959px) {
  .mv__inner {
    max-width: 92%;
    width: 100%;
    margin: 0 auto;
    display: block;
    padding-top: 22.6666666667%;
    height: auto;
  }
}
.mv__title {
  font-family: "Montserrat", sans-serif;
  font-weight: 700;
  color: #2f5f98;
  margin-bottom: calc(1.0248901903 * 1vw);
}
.mv__title {
  letter-spacing: -0.037em;
}
@media screen and (max-width: 959px) {
  .mv__title {
    letter-spacing: -0.037em;
  }
}
@media screen and (max-width: 479px) {
  .mv__title {
    letter-spacing: -0.037em;
  }
}
.mv__title span {
  color: #fbca41;
}
.mv__title {
  font-size: clamp(49px, 3.5871156662vw, 9999px);
  line-height: 1.5102040816;
}
@media screen and (max-width: 959px) {
  .mv__title {
    font-size: clamp(2rem, 1.597943996rem + 1.7154389506vw, 3.0625rem);
  }
}
@media screen and (max-width: 479px) {
  .mv__title {
    font-size: 32px;
    line-height: 1.40625 !important;
  }
}
@media screen and (max-width: 959px) {
  .mv__title {
    margin-bottom: 0;
  }
}
.mv__img {
  width: 56.8032786885%;
}
@media screen and (max-width: 959px) {
  .mv__img {
    width: 54.4217687075%;
    min-width: 420px;
  }
}
@media screen and (max-width: 479px) {
  .mv__img {
    width: 96.8115942029%;
    min-width: auto;
  }
}
.mv__img svg #base path {
  fill: #2f5f98;
  /* 塗りの色 */
}
.mv__img svg #mask path {
  fill: none;
  /* 塗りの色 */
  stroke: #ffffff;
  /* 線の色 */
  stroke-width: 10px;
  /* 線幅 */
  stroke-linecap: round;
  /* 線端の形状 */
  stroke-linejoin: round;
  /* 角の形状 */
}
.mv__apply-button {
  position: absolute;
  right: 5.3440702782%;
  bottom: 2.9282576867%;
}
.mv__apply-button .apply-button {
  width: clamp(240px, 50vw, 17.5695461201 * 1vw);
}
@media screen and (max-width: 959px) {
  .mv__apply-button .apply-button {
    width: clamp(190px, 4vw, 13.9092240117 * 1vw);
  }
}
.mv__apply-button .apply-button p {
  font-size: clamp(16px, 1.1713030747vw, 9999px);
  line-height: 1.8125;
}
@media screen and (max-width: 959px) {
  .mv__apply-button .apply-button p {
    font-size: clamp(0.875rem, 0.8276992936rem + 0.2018163471vw, 1rem);
  }
}
@media screen and (max-width: 479px) {
  .mv__apply-button .apply-button p {
    font-size: 14px;
    line-height: 1.7857142857 !important;
  }
}
@media screen and (max-width: 959px) {
  .mv__apply-button .apply-button p {
    margin-bottom: clamp(20px, 4vw, 1.756954612 * 1vw);
  }
}
.mv__apply-button .apply-button p::after {
  width: clamp(26px, 2vw, 2.3426061493 * 1vw);
}
@media screen and (max-width: 959px) {
  .mv__apply-button .apply-button .circle-arrow {
    width: clamp(32px, 4vw, 2.3426061493 * 1vw);
  }
  .mv__apply-button .apply-button .circle-arrow img {
    width: clamp(12px, 4vw, 0.878477306 * 1vw);
    height: auto;
    min-width: 12px;
  }
}
.mv .scroll-down {
  display: block;
  left: 50%;
  transform: translateX(-50%);
  text-align: center;
  bottom: calc(1.4641288433 * 1vw);
  position: absolute;
  width: fit-content;
  cursor: pointer;
}
.mv .scroll-down:hover {
  opacity: 0.6;
}
@media screen and (max-width: 959px) {
  .mv .scroll-down {
    left: 4%;
    bottom: 2.6666666667%;
    transform: none;
  }
}
.mv .scroll-down p {
  color: #ffffff;
  font-weight: 700;
}
.mv .scroll-down p {
  font-size: clamp(14px, 1.0248901903vw, 9999px);
  line-height: 1;
}
@media screen and (max-width: 959px) {
  .mv .scroll-down p {
    font-size: clamp(0.75rem, 0.7026992936rem + 0.2018163471vw, 0.875rem);
  }
}
@media screen and (max-width: 479px) {
  .mv .scroll-down p {
    font-size: 12px;
    line-height: 1 !important;
  }
}
.mv .scroll-down p {
  letter-spacing: 0.2em;
}
@media screen and (max-width: 959px) {
  .mv .scroll-down p {
    letter-spacing: 0.2em;
  }
}
@media screen and (max-width: 479px) {
  .mv .scroll-down p {
    letter-spacing: 0.2em;
  }
}
.mv .scroll-down__mouse {
  position: relative;
  display: block;
  width: calc(1.4641288433 * 1vw);
  height: calc(2.196193265 * 1vw);
  margin: 0 auto 6px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  border: 1px solid #ffffff;
  border-radius: calc(0.7320644217 * 1vw);
}
@media screen and (max-width: 959px) {
  .mv .scroll-down__mouse {
    width: calc(5.3333333333 * 1vw);
    height: calc(8 * 1vw);
  }
}
.mv .scroll-down__mouse span {
  position: absolute;
  display: block;
  top: 10%;
  left: 50%;
  width: calc(0.2196193265 * 1vw);
  height: calc(0.2196193265 * 1vw);
  background: #ffffff;
  border-radius: 50%;
  animation: ani-mouse 2.5s linear infinite;
  transform: translate(-50%, -50%);
}
@media screen and (max-width: 959px) {
  .mv .scroll-down__mouse span {
    width: calc(0.8 * 1vw);
    height: calc(0.8 * 1vw);
  }
}
@keyframes ani-mouse {
  0% {
    opacity: 0;
    top: 50%;
  }
  40% {
    opacity: 0;
    top: 20%;
  }
  70% {
    opacity: 1;
    top: 20%;
  }
  100% {
    opacity: 1;
    top: 50%;
  }
}

@media screen and (max-width: 959px) {
  .header-line-top {
    transition: all 0.3s ease;
    opacity: 0;
    pointer-events: none;
  }
}
@media screen and (max-width: 959px) {
  .header-line-top.is-show {
    opacity: 1;
    pointer-events: auto;
  }
}

.about__inner {
  margin: calc(13.5431918009 * 1vw) calc(14.2752562225 * 1vw) calc(14.934114202 * 1vw) calc(17.7891654466 * 1vw);
  position: relative;
}
@media screen and (max-width: 1099px) {
  .about__inner {
    margin: calc(17.5695461201 * 1vw) calc(14.2752562225 * 1vw) calc(14.934114202 * 1vw) calc(17.7891654466 * 1vw);
  }
}
@media screen and (max-width: 959px) {
  .about__inner {
    margin: calc(12 * 1vw) 0 calc(9.3333333333 * 1vw) 0;
  }
}
@media screen and (max-width: 649px) {
  .about__inner {
    margin: calc(16 * 1vw) 0 calc(12.8 * 1vw) 0;
  }
}
@media screen and (max-width: 479px) {
  .about__inner {
    margin: calc(26.6666666667 * 1vw) 0 calc(16.5333333333 * 1vw) 0;
  }
}
.about__title {
  position: absolute;
  top: -24%;
  left: 0;
}
@media screen and (max-width: 1365px) {
  .about__title {
    left: -3%;
  }
}
@media screen and (max-width: 1099px) {
  .about__title {
    top: -26%;
    left: -12%;
  }
}
@media screen and (max-width: 959px) {
  .about__title {
    top: -2%;
    left: 6.25%;
  }
}
@media screen and (max-width: 479px) {
  .about__title {
    top: -5%;
    left: 8%;
  }
}
.about__content {
  width: 100%;
  display: flex;
  flex-flow: column;
  justify-content: center;
  position: relative;
}
.about__content::before {
  position: absolute;
  content: "";
  width: 100%;
  background-image: url(../img/top/about-bg_pc.png);
  background-size: contain;
  background-position: center bottom;
  background-repeat: no-repeat;
  aspect-ratio: 928/631;
  z-index: -1;
  min-width: 928px;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
@media screen and (max-width: 959px) {
  .about__content::before {
    background-size: cover;
    min-width: auto;
    width: 100%;
    height: 101%;
  }
}
@media screen and (max-width: 649px) {
  .about__content::before {
    background-image: url(../img/top/about-bg_sp.png);
    aspect-ratio: 463/670;
    width: 90%;
    min-width: 500px;
    height: auto;
  }
}
@media screen and (max-width: 479px) {
  .about__content::before {
    min-width: auto;
    height: 101%;
    width: 100%;
  }
}
.about__content-inner {
  width: fit-content;
  margin: 0 auto;
  padding-left: calc(4.6852122987 * 1vw);
}
@media screen and (max-width: 959px) {
  .about__content-inner {
    padding: 100px 1.5625% 80px 3.125%;
  }
}
@media screen and (max-width: 649px) {
  .about__content-inner {
    padding: 120px 2.3076923077% 100px 4.6153846154%;
  }
}
@media screen and (max-width: 479px) {
  .about__content-inner {
    padding: 21.3333333333% 4% 17.0666666667% 8%;
  }
}
.about__catch {
  padding-bottom: calc(2.3426061493 * 1vw);
}
@media screen and (max-width: 959px) {
  .about__catch {
    padding-bottom: 7.2727272727%;
  }
}
.about__catch p {
  font-weight: 700;
}
.about__catch p {
  font-size: clamp(29px, 2.1229868228vw, 9999px);
  line-height: 2.2068965517;
}
@media screen and (max-width: 959px) {
  .about__catch p {
    font-size: clamp(1.25rem, 1.0371468214rem + 0.9081735621vw, 1.8125rem);
  }
}
@media screen and (max-width: 479px) {
  .about__catch p {
    font-size: 20px;
    line-height: 2.5 !important;
  }
}
.about__catch p {
  letter-spacing: 0.15em;
}
@media screen and (max-width: 959px) {
  .about__catch p {
    letter-spacing: 0.15em;
  }
}
@media screen and (max-width: 479px) {
  .about__catch p {
    letter-spacing: 0.15em;
  }
}
.about__catch p picture {
  background-image: linear-gradient(to right, #fbca41 8px, transparent 8px);
  background-size: 12px 3px;
  background-repeat: repeat-x;
  background-position: left bottom;
  padding-bottom: calc(0.3660322108 * 1vw);
}
@media screen and (max-width: 959px) {
  .about__catch p picture {
    background-size: 12px 2px;
  }
}
.about__catch p picture img {
  display: inline-block;
  height: clamp(52px, 8vw, 3.8067349927 * 1vw);
  width: auto;
  vertical-align: text-bottom;
}
@media screen and (max-width: 959px) {
  .about__catch p picture img {
    height: clamp(37px, 8vw, 2.7086383602 * 1vw);
  }
}
.about__text {
  padding-bottom: calc(1.756954612 * 1vw);
}
.about__text p {
  font-weight: 700;
  padding-bottom: calc(1.1713030747 * 1vw);
}
.about__text p {
  font-size: clamp(16px, 1.1713030747vw, 9999px);
  line-height: 1.8;
}
@media screen and (max-width: 959px) {
  .about__text p {
    font-size: clamp(1rem, 1rem + 0vw, 1rem);
  }
}
@media screen and (max-width: 479px) {
  .about__text p {
    font-size: 16px;
    line-height: 1.8 !important;
  }
}
.about__text p {
  letter-spacing: 0.1em;
}
@media screen and (max-width: 959px) {
  .about__text p {
    letter-spacing: 0.1em;
  }
}
@media screen and (max-width: 479px) {
  .about__text p {
    letter-spacing: 0.1em;
  }
}
@media screen and (max-width: 959px) {
  .about__text p {
    padding-bottom: 4.8484848485%;
  }
  .about__text p {
    letter-spacing: 0.05em;
  }
}
@media screen and (max-width: 959px) and (max-width: 959px) {
  .about__text p {
    letter-spacing: 0.05em;
  }
}
@media screen and (max-width: 959px) and (max-width: 479px) {
  .about__text p {
    letter-spacing: 0.05em;
  }
}
.about__text p:last-child {
  padding-bottom: 0;
}
.about__text p .bold {
  font-weight: 700;
  position: relative;
  z-index: 1;
}
.about__text p .bold::before {
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translate(-50%, 0%);
  content: "";
  width: 100%;
  height: calc(0.5856515373 * 1vw);
  background-color: #fbca41;
  z-index: -1;
}
@media screen and (max-width: 959px) {
  .about__text p .bold::before {
    height: calc(2.1333333333 * 1vw);
  }
}
.about__text p .caveat {
  font-family: "Caveat", cursive;
  color: #2f5f98;
}
.about__text p .caveat {
  font-size: clamp(32px, 2.3426061493vw, 9999px);
  line-height: 1;
}
@media screen and (max-width: 959px) {
  .about__text p .caveat {
    font-size: clamp(2rem, 2rem + 0vw, 2rem);
  }
}
@media screen and (max-width: 479px) {
  .about__text p .caveat {
    font-size: 32px;
    line-height: 1 !important;
  }
}
.about__text p .caveat {
  letter-spacing: 0.2em;
}
@media screen and (max-width: 959px) {
  .about__text p .caveat {
    letter-spacing: 0.2em;
  }
}
@media screen and (max-width: 479px) {
  .about__text p .caveat {
    letter-spacing: 0.2em;
  }
}

.blog__inner {
  position: relative;
}
.blog__inner::after {
  content: "";
  position: absolute;
  height: calc(29.2825768668 * 1vw);
  width: calc(24.1581259151 * 1vw);
  position: absolute;
  top: 80%;
  left: 0%;
  background-color: #ffffff;
  background-image: linear-gradient(90deg, #fff9d4 2px, transparent 2px), linear-gradient(#fff9d4 2px, transparent 2px);
  background-position: 10px 10px;
  background-size: 22px 22px;
  z-index: -1;
  opacity: 0.5;
}
@media screen and (max-width: 959px) {
  .blog__inner::after {
    display: none;
  }
}
.blog__inner::before {
  content: "";
  position: absolute;
  height: calc(29.2825768668 * 1vw);
  width: calc(24.1581259151 * 1vw);
  position: absolute;
  top: 80%;
  right: 0%;
  background-color: #ffffff;
  background-image: linear-gradient(90deg, #fff9d4 2px, transparent 2px), linear-gradient(#fff9d4 2px, transparent 2px);
  background-position: 10px 10px;
  background-size: 22px 22px;
  z-index: -1;
  opacity: 0.5;
}
@media screen and (max-width: 959px) {
  .blog__inner::before {
    height: calc(74.6666666667 * 1vw);
    width: calc(88 * 1vw);
    top: 20%;
  }
}
@media screen and (max-width: 649px) {
  .blog__inner::before {
    height: calc(88 * 1vw);
  }
}
@media screen and (max-width: 479px) {
  .blog__inner::before {
    height: calc(125.3333333333 * 1vw);
  }
}
.blog__title {
  width: fit-content;
  margin: 0 auto;
}
.blog__title .top-title p::after {
  content: "";
  width: calc(9.8828696925 * 1vw);
  top: 25%;
  left: 50%;
  transform: translate(-50%, -50%);
  background-image: url(../img/top/title-small.png);
  min-width: 135px;
}
.blog__content {
  padding-top: calc(0.5856515373 * 1vw);
}
@media screen and (max-width: 959px) {
  .blog__content {
    padding-top: vw-to_sm(12);
  }
}
.blog__list {
  margin-top: calc(1.756954612 * 1vw);
}
@media screen and (max-width: 959px) {
  .blog__list {
    margin-top: calc(0.878477306 * 1vw);
  }
}
.blog__button {
  width: fit-content;
  margin: 0 calc(7.3206442167 * 1vw) 0 auto;
}
@media screen and (max-width: 959px) {
  .blog__button {
    margin: 0 calc(4 * 1vw) 0 auto;
  }
}
.blog .is-many {
  position: relative;
}
.blog .is-many::after {
  content: "";
  left: calc(11.4934114202 * 1vw);
  top: calc(-1.4641288433 * 1vw);
  position: absolute;
  width: calc(27.0863836018 * 1vw);
  aspect-ratio: 1/1;
  background-image: url(../img/top/blog-square.png);
  background-size: 100%;
  background-position: center;
  background-repeat: no-repeat;
}
@media screen and (max-width: 959px) {
  .blog .is-many::after {
    position: static;
    display: none;
  }
}
.blog .is-many::before {
  content: "";
  left: calc(10.980966325 * 1vw);
  top: calc(-1.4641288433 * 1vw);
  position: absolute;
  width: calc(5.270863836 * 1vw);
  aspect-ratio: 1/1;
  background-image: url(../img/top/radiation.png);
  background-size: 100%;
  background-position: center;
  background-repeat: no-repeat;
  transform: translate(-50%, -75%);
}
@media screen and (max-width: 959px) {
  .blog .is-many::before {
    position: static;
    display: none;
  }
}
.blog .is-many .swiper {
  margin-left: calc(-10.980966325 * 1vw);
}
@media screen and (max-width: 959px) {
  .blog .is-many .swiper {
    margin-left: calc(0 * 1vw);
  }
}
.blog .is-many .swiper-slide {
  width: fit-content;
  -webkit-transition: width 0.8s ease, height 0.8s ease;
  transition: width 0.8s ease, height 0.8s ease;
}
.blog .is-many .blog-card {
  transition: width 0.3s;
}
.blog .is-many .swiper-slide-next .blog-card {
  width: calc(28.1844802343 * 1vw);
  transition: width 0.3s;
}
@media screen and (max-width: 959px) {
  .blog .is-many .swiper-slide-next .blog-card {
    width: calc(48 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .blog .is-many .swiper-slide-next .blog-card {
    width: calc(56 * 1vw);
  }
}
@media screen and (max-width: 479px) {
  .blog .is-many .swiper-slide-next .blog-card {
    width: calc(66.6666666667 * 1vw);
  }
}
.blog .is-many .swiper-slide-next .blog-card__image {
  margin-bottom: calc(1.9033674963 * 1vw);
}
@media screen and (max-width: 959px) {
  .blog .is-many .swiper-slide-next .blog-card__image {
    margin-bottom: calc(2.6666666667 * 1vw);
  }
}
.blog .is-many .swiper-slide-next .blog-card__title {
  font-size: clamp(18px, 1.317715959vw, 9999px);
  line-height: 1.8;
}
@media screen and (max-width: 959px) {
  .blog .is-many .swiper-slide-next .blog-card__title {
    font-size: clamp(1rem, 0.9526992936rem + 0.2018163471vw, 1.125rem);
  }
}
@media screen and (max-width: 479px) {
  .blog .is-many .swiper-slide-next .blog-card__title {
    font-size: 16px;
    line-height: 1.8 !important;
  }
}
@media screen and (min-width: 960px) {
  .blog .is-few .pager {
    display: none;
  }
}
.blog .is-few .swiper {
  width: fit-content;
  margin: 0 auto;
  position: relative;
  overflow: visible !important;
}
@media screen and (max-width: 959px) {
  .blog .is-few .swiper {
    width: auto;
    margin: 0;
    overflow: hidden !important;
  }
}
.blog .is-few .swiper::after {
  content: "";
  position: absolute;
  top: calc(-1.4641288433 * 1vw);
  left: 0;
  position: absolute;
  width: calc(27.0863836018 * 1vw);
  aspect-ratio: 1/1;
  background-image: url(../img/top/blog-square.png);
  background-size: 100%;
  background-position: center;
  background-repeat: no-repeat;
}
@media screen and (max-width: 959px) {
  .blog .is-few .swiper::after {
    position: static;
    display: none;
  }
}
.blog .is-few .swiper::before {
  content: "";
  top: calc(-1.4641288433 * 1vw);
  left: 0%;
  transform: translate(-50%, 0%);
  position: absolute;
  width: calc(5.270863836 * 1vw);
  aspect-ratio: 1/1;
  background-image: url(../img/top/radiation.png);
  background-size: 100%;
  background-position: center;
  background-repeat: no-repeat;
  transform: translate(-50%, -75%);
}
@media screen and (max-width: 959px) {
  .blog .is-few .swiper::before {
    position: static;
    display: none;
  }
}
@media screen and (max-width: 959px) {
  .blog .is-few .swiper {
    margin-left: calc(0 * 1vw);
  }
}
.blog .is-few .swiper-slide {
  width: fit-content;
  -webkit-transition: width 0.8s ease, height 0.8s ease;
  transition: width 0.8s ease, height 0.8s ease;
}
.blog .is-few .blog-card {
  transition: width 0.3s;
}
@media screen and (min-width: 960px) {
  .blog .is-few .swiper-slide-active .blog-card {
    width: calc(28.1844802343 * 1vw);
    transition: width 0.3s;
  }
  .blog .is-few .swiper-slide-active .blog-card__image {
    margin-bottom: calc(1.9033674963 * 1vw);
  }
  .blog .is-few .swiper-slide-active .blog-card__title {
    font-size: clamp(18px, 1.317715959vw, 9999px);
    line-height: 1.8;
  }
}
@media screen and (min-width: 960px) and (max-width: 959px) {
  .blog .is-few .swiper-slide-active .blog-card__title {
    font-size: clamp(1rem, 0.9526992936rem + 0.2018163471vw, 1.125rem);
  }
}
@media screen and (min-width: 960px) and (max-width: 479px) {
  .blog .is-few .swiper-slide-active .blog-card__title {
    font-size: 16px;
    line-height: 1.8 !important;
  }
}
.blog__item {
  width: fit-content;
}
.blog__item .blog-card {
  width: calc(22.4011713031 * 1vw);
  padding: 0 calc(1.0980966325 * 1vw);
  box-sizing: border-box;
}
@media screen and (max-width: 959px) {
  .blog__item .blog-card {
    width: calc(48 * 1vw);
    padding: 0 0 0 calc(4 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .blog__item .blog-card {
    width: calc(56 * 1vw);
  }
}
@media screen and (max-width: 479px) {
  .blog__item .blog-card {
    width: calc(66.6666666667 * 1vw);
  }
}
.blog .pager {
  margin: calc(1.756954612 * 1vw) calc(7.3206442167 * 1vw) 0 auto;
}
@media screen and (max-width: 959px) {
  .blog .pager {
    margin: calc(4.2666666667 * 1vw) auto calc(1.0666666667 * 1vw);
  }
}

.search {
  position: relative;
  margin: calc(7.3206442167 * 1vw) 0 0;
  padding-bottom: calc(6.2225475842 * 1vw);
}
@media screen and (max-width: 959px) {
  .search {
    margin: calc(10.6666666667 * 1vw) 0 0;
    padding-bottom: calc(10.6666666667 * 1vw);
  }
}
@media screen and (max-width: 479px) {
  .search {
    padding-bottom: calc(16 * 1vw);
  }
}
.search::before {
  content: "";
  position: absolute;
  height: 95%;
  width: 100vw;
  position: absolute;
  top: 5%;
  right: 0%;
  background-color: #ffffff;
  background-image: linear-gradient(90deg, #2f5f98 2px, transparent 2px), linear-gradient(#2f5f98 2px, transparent 2px);
  background-position: 10px 10px;
  background-size: 22px 22px;
  z-index: -1;
  opacity: 0.1;
}
@media screen and (max-width: 959px) {
  .search::before {
    height: 99%;
    top: 1%;
  }
}
.search__inner {
  max-width: 80.5270863836%;
  width: 100%;
  margin: 0 auto;
}
@media screen and (max-width: 959px) {
  .search__inner {
    max-width: 92%;
    width: 100%;
    margin: 0 auto;
  }
}
@media screen and (max-width: 959px) {
  .search__title {
    width: fit-content;
    margin: 0 auto;
  }
}
.search__title .top-title p::after {
  content: "";
  width: calc(16.2518301611 * 1vw);
  background-image: url(../img/top/title-center.png);
  min-width: 226px;
}
.search .search-category {
  margin: calc(5.8565153734 * 1vw) 0 0 0;
}
@media screen and (max-width: 959px) {
  .search .search-category {
    margin: 60px 0 0 0;
  }
}
@media screen and (max-width: 479px) {
  .search .search-category {
    margin: calc(10.6666666667 * 1vw) 0 0 0;
  }
}
.search .search-category:last-child {
  margin: calc(5.8565153734 * 1vw) 0 0;
}
@media screen and (max-width: 959px) {
  .search .search-category:last-child {
    margin: 80px 0 0;
  }
}
@media screen and (max-width: 479px) {
  .search .search-category:last-child {
    margin: calc(17.6 * 1vw) 0 0;
  }
}
.search .search-category__inner {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
@media screen and (max-width: 959px) {
  .search .search-category__inner {
    display: block;
  }
}
.search .search-category__left {
  width: 45%;
}
@media screen and (max-width: 959px) {
  .search .search-category__left {
    width: 100%;
  }
}
.search .search-category__right {
  width: 55%;
}
@media screen and (max-width: 959px) {
  .search .search-category__right {
    width: 100%;
  }
}
.search .search-category__title {
  width: fit-content;
  margin: 0 auto 0 0;
}
@media screen and (max-width: 959px) {
  .search .search-category__title {
    margin: 0 auto;
  }
}
.search .search-category__title-inner {
  text-align: center;
  position: relative;
}
.search .search-category__title-inner h3 {
  font-family: "Caveat", cursive;
  color: #2f5f98;
}
.search .search-category__title-inner h3 {
  font-size: clamp(24px, 1.756954612vw, 9999px);
  line-height: 1;
}
@media screen and (max-width: 959px) {
  .search .search-category__title-inner h3 {
    font-size: clamp(1rem, 0.8107971746rem + 0.8072653885vw, 1.5rem);
  }
}
@media screen and (max-width: 479px) {
  .search .search-category__title-inner h3 {
    font-size: 16px;
    line-height: 1.5 !important;
  }
}
.search .search-category__title-inner h3 {
  letter-spacing: 0.2em;
}
@media screen and (max-width: 959px) {
  .search .search-category__title-inner h3 {
    letter-spacing: 0.2em;
  }
}
@media screen and (max-width: 479px) {
  .search .search-category__title-inner h3 {
    letter-spacing: 0.2em;
  }
}
.search .search-category__title-inner img {
  width: calc(18.1551976574 * 1vw);
  height: auto;
}
@media screen and (max-width: 959px) {
  .search .search-category__title-inner img {
    width: calc(49.0666666667 * 1vw);
    max-width: 248px;
  }
}
.search .search-category__title-inner::after {
  content: "";
  position: absolute;
  width: calc(18.1551976574 * 1vw);
  height: auto;
  aspect-ratio: 248/20;
  background-image: url(../img/top/purpose-line.png);
  background-size: 100%;
  background-position: center;
  background-repeat: no-repeat;
  position: absolute;
  bottom: calc(-1.4641288433 * 1vw);
  left: 50%;
  transform: translate(-50%, 0%);
}
@media screen and (max-width: 959px) {
  .search .search-category__title-inner::after {
    width: calc(49.8666666667 * 1vw);
    bottom: -24px;
    max-width: 248px;
  }
}
@media screen and (max-width: 479px) {
  .search .search-category__title-inner::after {
    bottom: calc(-5.3333333333 * 1vw);
  }
}
.search .search-category__hint-wrap {
  position: relative;
}
.search .search-category__hint {
  display: flex;
  flex-flow: column;
  align-items: center;
  justify-content: center;
}
@media screen and (min-width: 960px) {
  .search .search-category__hint {
    opacity: 0;
    transition: opacity 0.3s ease-in;
    border-radius: 50%;
    border: solid 2px #2f5f98;
    background-color: #ffffff;
    width: 77.7777777778%;
    aspect-ratio: 1/1;
    margin-top: calc(4.39238653 * 1vw);
    min-width: 330px;
  }
}
@media screen and (max-width: 959px) {
  .search .search-category__hint {
    width: 100%;
    margin-top: 60px;
    margin-bottom: 40px;
  }
}
@media screen and (max-width: 479px) {
  .search .search-category__hint {
    margin-top: calc(10.6666666667 * 1vw);
    margin-bottom: calc(6.4 * 1vw);
  }
}
.search .search-category__hint.on {
  opacity: 1;
  transition: opacity 0.3s ease-in;
}
@media screen and (min-width: 960px) {
  .search .search-category__hint-hover {
    width: 78.7878787879%;
    border-radius: 50%;
    aspect-ratio: 1/1;
    margin-top: 0;
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    background-color: transparent;
    position: absolute !important;
    top: 0;
    left: 0;
    opacity: 0;
    height: auto;
    transition: opacity 0.3s ease-in;
    min-width: 335px;
  }
  .search .search-category__hint-hover::before {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    color: #ffffff;
    white-space: nowrap;
    font-weight: 500;
  }
  .search .search-category__hint-hover::before {
    font-size: clamp(32px, 2.3426061493vw, 9999px);
    line-height: 1.6875;
  }
}
@media screen and (min-width: 960px) and (max-width: 959px) {
  .search .search-category__hint-hover::before {
    font-size: clamp(1.375rem, 1.1384964682rem + 1.0090817356vw, 2rem);
  }
}
@media screen and (min-width: 960px) and (max-width: 479px) {
  .search .search-category__hint-hover::before {
    font-size: 22px;
    line-height: 1.4545454545 !important;
  }
}
@media screen and (min-width: 960px) {
  .search .search-category__hint-hover::before {
    letter-spacing: 0.2em;
  }
}
@media screen and (min-width: 960px) and (max-width: 959px) {
  .search .search-category__hint-hover::before {
    letter-spacing: 0.2em;
  }
}
@media screen and (min-width: 960px) and (max-width: 479px) {
  .search .search-category__hint-hover::before {
    letter-spacing: 0.2em;
  }
}
@media screen and (min-width: 960px) {
  .search .search-category__hint-hover.hint-wh {
    background-image: url(../img/top/wh_pc.png);
    opacity: 1;
    height: auto;
    transition: opacity 0.3s ease-in;
  }
  .search .search-category__hint-hover.hint-wh::before {
    content: "働きながら学ぶ";
  }
  .search .search-category__hint-hover.hint-esl {
    background-image: url(../img/top/esl_pc.png);
    opacity: 1;
    height: auto;
    transition: opacity 0.3s ease-in;
  }
  .search .search-category__hint-hover.hint-esl::before {
    content: "語学力を伸ばす";
  }
  .search .search-category__hint-hover.hint-ddp {
    background-image: url(../img/top/ddp_pc.png);
    opacity: 1;
    height: auto;
    transition: opacity 0.3s ease-in;
  }
  .search .search-category__hint-hover.hint-ddp::before {
    content: "学位取得を目指す";
  }
  .search .search-category__hint-hover.hint-jsa {
    background-image: url(../img/top/junior_pc.png);
    opacity: 1;
    height: auto;
    transition: opacity 0.3s ease-in;
  }
  .search .search-category__hint-hover.hint-jsa::before {
    content: "留学に触れる";
  }
  .search .search-category__hint-hover.hint-canada {
    background-image: url(../img/top/canada_pc.png);
    opacity: 1;
    height: auto;
    transition: opacity 0.3s ease-in;
  }
  .search .search-category__hint-hover.hint-canada::before {
    content: "美しい発音を学ぶ";
  }
  .search .search-category__hint-hover.hint-australia {
    background-image: url(../img/top/australia_pc.png);
    opacity: 1;
    height: auto;
    transition: opacity 0.3s ease-in;
  }
  .search .search-category__hint-hover.hint-australia::before {
    content: "多文化に触れる";
  }
  .search .search-category__hint-hover.hint-newzealand {
    background-image: url(../img/top/nz_pc.png);
    opacity: 1;
    height: auto;
    transition: opacity 0.3s ease-in;
  }
  .search .search-category__hint-hover.hint-newzealand::before {
    content: "自然の中で学ぶ";
  }
  .search .search-category__hint-hover.hint-philippines {
    background-image: url(../img/top/philippines_pc.png);
    opacity: 1;
    height: auto;
    transition: opacity 0.3s ease-in;
  }
  .search .search-category__hint-hover.hint-philippines::before {
    content: "マンツーマン授業";
  }
}
.search .search-category__hint-title {
  font-weight: 700;
  margin-bottom: calc(1.1713030747 * 1vw);
  text-align: center;
}
.search .search-category__hint-title {
  font-size: clamp(20px, 1.4641288433vw, 9999px);
  line-height: 2;
}
@media screen and (max-width: 959px) {
  .search .search-category__hint-title {
    font-size: clamp(1.125rem, 1.0776992936rem + 0.2018163471vw, 1.25rem);
  }
}
@media screen and (max-width: 479px) {
  .search .search-category__hint-title {
    font-size: 18px;
    line-height: 2 !important;
  }
}
.search .search-category__hint-title {
  letter-spacing: 0.1em;
}
@media screen and (max-width: 959px) {
  .search .search-category__hint-title {
    letter-spacing: 0.1em;
  }
}
@media screen and (max-width: 479px) {
  .search .search-category__hint-title {
    letter-spacing: 0.1em;
  }
}
@media screen and (max-width: 959px) {
  .search .search-category__hint-title {
    background-color: #ffffff;
  }
}
.search .search-category__hint-text {
  font-weight: 500;
  padding: 0 12.987012987%;
  text-align: center;
  text-wrap: nowrap;
  white-space: nowrap;
}
.search .search-category__hint-text {
  font-size: clamp(16px, 1.1713030747vw, 9999px);
  line-height: 1.8;
}
@media screen and (max-width: 959px) {
  .search .search-category__hint-text {
    font-size: clamp(1rem, 1rem + 0vw, 1rem);
  }
}
@media screen and (max-width: 479px) {
  .search .search-category__hint-text {
    font-size: 16px;
    line-height: 1.5 !important;
  }
}
.search .search-category__hint-text {
  letter-spacing: 0.03em;
}
@media screen and (max-width: 959px) {
  .search .search-category__hint-text {
    letter-spacing: 0.03em;
  }
}
@media screen and (max-width: 479px) {
  .search .search-category__hint-text {
    letter-spacing: 0.03em;
  }
}
@media screen and (max-width: 959px) {
  .search .search-category__hint-text {
    width: 100%;
    padding: 0;
  }
  .search .search-category__hint-text {
    letter-spacing: 0em;
  }
}
@media screen and (max-width: 959px) and (max-width: 959px) {
  .search .search-category__hint-text {
    letter-spacing: 0em;
  }
}
@media screen and (max-width: 959px) and (max-width: 479px) {
  .search .search-category__hint-text {
    letter-spacing: 0em;
  }
}
@media screen and (max-width: 959px) {
  .search .search-category__hint-text span {
    display: block;
    background-color: #ffffff;
    width: fit-content;
    margin: 0 auto;
  }
}
.search .search-category__links {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  row-gap: calc(1.8301610542 * 1vw);
}
@media screen and (max-width: 959px) {
  .search .search-category__links {
    row-gap: calc(3.7333333333 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .search .search-category__links {
    flex-flow: column;
    row-gap: calc(4.8 * 1vw);
  }
}
.search .search-category__link {
  width: 47.7685950413%;
  height: auto;
  aspect-ratio: 1/1;
  background-color: #ffffff;
  border: dashed 2px #2f5f98;
  border-radius: 50%;
  display: flex;
  flex-flow: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  position: relative;
  transition: background-image 0.5s ease;
  cursor: pointer;
  box-sizing: border-box;
}
.search .search-category__link:hover {
  border: solid 2px #2f5f98;
}
.search .search-category__link:hover .search-category__link-arrow {
  background-color: #fff;
}
.search .search-category__link:hover .search-category__link-arrow span {
  background-image: url("../img/common/arrow-blue.png");
}
@media screen and (max-width: 959px) {
  .search .search-category__link {
    width: 47.9591836735%;
    justify-content: end;
    border: solid 2px #2f5f98;
  }
}
@media screen and (max-width: 649px) {
  .search .search-category__link {
    width: 78.2608695652%;
    max-width: 400px;
  }
}
@media screen and (max-width: 959px) {
  .search .search-category__link::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 94.4444444444%;
    aspect-ratio: 1/1;
    height: auto;
    background-image: url(../img/top/australia_sp.png);
    background-size: 100%;
    background-position: top center;
    background-repeat: no-repeat;
    pointer-events: none;
  }
  .search .search-category__link::after {
    content: "多文化に触れる";
    top: 45%;
    left: 50%;
    transform: translate(-50%, -50%);
    position: absolute;
    color: #ffffff;
    white-space: nowrap;
    font-weight: 700;
  }
  .search .search-category__link::after {
    font-size: clamp(22px, 1.6105417277vw, 9999px);
    line-height: 1.4545454545;
  }
}
@media screen and (max-width: 959px) and (max-width: 959px) {
  .search .search-category__link::after {
    font-size: clamp(1.375rem, 1.375rem + 0vw, 1.375rem);
  }
}
@media screen and (max-width: 959px) and (max-width: 479px) {
  .search .search-category__link::after {
    font-size: 22px;
    line-height: 1.4545454545 !important;
  }
}
@media screen and (max-width: 959px) {
  .search .search-category__link::after {
    letter-spacing: 0.2em;
  }
}
@media screen and (max-width: 959px) and (max-width: 959px) {
  .search .search-category__link::after {
    letter-spacing: 0.2em;
  }
}
@media screen and (max-width: 959px) and (max-width: 479px) {
  .search .search-category__link::after {
    letter-spacing: 0.2em;
  }
}
@media screen and (max-width: 959px) and (max-width: 959px) {
  .search .search-category__link::after {
    pointer-events: none;
  }
}
@media screen and (max-width: 959px) {
  .search .search-category__link#wh::before {
    background-image: url(../img/top/wh_sp.png);
  }
  .search .search-category__link#wh::after {
    content: "働きながら学ぶ";
  }
  .search .search-category__link#esl::before {
    background-image: url(../img/top/esl_sp.png);
  }
  .search .search-category__link#esl::after {
    content: "語学力を伸ばす";
  }
  .search .search-category__link#ddp::before {
    background-image: url(../img/top/ddp_sp.png);
  }
  .search .search-category__link#ddp::after {
    content: "学位取得を目指す";
  }
  .search .search-category__link#jsa::before {
    background-image: url(../img/top/junior_sp.png);
  }
  .search .search-category__link#jsa::after {
    content: "留学に触れる";
  }
  .search .search-category__link#canada::before {
    background-image: url(../img/top/canada_sp.png);
  }
  .search .search-category__link#canada::after {
    content: "美しい発音を学ぶ";
  }
  .search .search-category__link#australia::before {
    background-image: url(../img/top/australia_sp.png);
  }
  .search .search-category__link#australia::after {
    content: "多文化に触れる";
  }
  .search .search-category__link#newzealand::before {
    background-image: url(../img/top/nz_sp.png);
  }
  .search .search-category__link#newzealand::after {
    content: "自然の中で学ぶ";
  }
  .search .search-category__link#philippines::before {
    background-image: url(../img/top/philippines_sp.png);
  }
  .search .search-category__link#philippines::after {
    content: "マンツーマン授業";
  }
}
.search .search-category__link a {
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}
@media screen and (max-width: 959px) {
  .search .search-category__link a {
    align-items: flex-end;
  }
}
@media screen and (max-width: 959px) {
  .search .search-category__link-inner {
    height: 40%;
    display: flex;
    flex-flow: column;
    align-items: center;
    justify-content: center;
    padding-bottom: 2.3640661939%;
    box-sizing: border-box;
  }
}
@media screen and (max-width: 959px) and (max-width: 649px) {
  .search .search-category__link-inner {
    padding-bottom: 4.6376811594%;
  }
}
.search .search-category__link-label {
  padding-top: calc(0.5856515373 * 1vw);
}
@media screen and (max-width: 959px) {
  .search .search-category__link-label {
    padding-top: 0;
  }
}
.search .search-category__link-title-en {
  font-family: "Caveat", cursive;
  color: #2f5f98;
  font-weight: 700;
  margin-bottom: calc(0.439238653 * 1vw);
}
.search .search-category__link-title-en {
  font-size: clamp(16px, 1.1713030747vw, 9999px);
  line-height: 1.5;
}
@media screen and (max-width: 959px) {
  .search .search-category__link-title-en {
    font-size: clamp(0.875rem, 0.8276992936rem + 0.2018163471vw, 1rem);
  }
}
@media screen and (max-width: 479px) {
  .search .search-category__link-title-en {
    font-size: 14px;
    line-height: 1.5714285714 !important;
  }
}
.search .search-category__link-title-en {
  letter-spacing: 0.2em;
}
@media screen and (max-width: 959px) {
  .search .search-category__link-title-en {
    letter-spacing: 0.2em;
  }
}
@media screen and (max-width: 479px) {
  .search .search-category__link-title-en {
    letter-spacing: 0.2em;
  }
}
@media screen and (max-width: 959px) {
  .search .search-category__link-title-en {
    margin-bottom: calc(1.6 * 1vw);
  }
}
.search .search-category__link-title-ja {
  font-weight: 700;
  text-wrap: nowrap;
  white-space: nowrap;
}
.search .search-category__link-title-ja {
  font-size: clamp(22px, 1.6105417277vw, 9999px);
  line-height: 1.2727272727;
}
@media screen and (max-width: 959px) {
  .search .search-category__link-title-ja {
    font-size: clamp(1.125rem, 1.0303985873rem + 0.4036326942vw, 1.375rem);
  }
}
@media screen and (max-width: 479px) {
  .search .search-category__link-title-ja {
    font-size: 18px;
    line-height: 0.9444444444 !important;
  }
}
.search .search-category__link-title-ja {
  letter-spacing: 0.05em;
}
@media screen and (max-width: 959px) {
  .search .search-category__link-title-ja {
    letter-spacing: 0.05em;
  }
}
@media screen and (max-width: 479px) {
  .search .search-category__link-title-ja {
    letter-spacing: 0.05em;
  }
}
@media screen and (max-width: 1099px) {
  .search .search-category__link-title-ja {
    font-size: 19px;
  }
}
@media screen and (max-width: 959px) {
  .search .search-category__link-title-ja {
    font-size: clamp(22px, 1.6105417277vw, 9999px);
    line-height: 1.2727272727;
  }
}
@media screen and (max-width: 959px) and (max-width: 959px) {
  .search .search-category__link-title-ja {
    font-size: clamp(1.125rem, 1.0303985873rem + 0.4036326942vw, 1.375rem);
  }
}
@media screen and (max-width: 959px) and (max-width: 479px) {
  .search .search-category__link-title-ja {
    font-size: 18px;
    line-height: 0.9444444444 !important;
  }
}
.search .search-category__link-arrow {
  margin-top: calc(2.5622254758 * 1vw);
}
@media screen and (max-width: 959px) {
  .search .search-category__link-arrow {
    margin-top: calc(2.1333333333 * 1vw);
  }
}
.search .search-category .circle-arrow {
  width: clamp(32px, 4vw, 3.2942898975 * 1vw);
  height: auto;
  background-color: #2f5f98;
  border: 1px solid #2f5f98;
}
.search .search-category .circle-arrow span {
  content: "";
  width: clamp(14px, 4vw, 1.1713030747 * 1vw);
  height: clamp(14px, 4vw, 1.1713030747 * 1vw);
  background: url("../img/common/arrow-white.png") no-repeat center/contain;
  transition: background-image 0.5s ease;
  display: block;
}
.search .country .search-category__inner {
  flex-flow: row-reverse;
}
.search .country .search-category__title {
  margin: 0 0 0 auto;
}
@media screen and (max-width: 959px) {
  .search .country .search-category__title {
    margin: 0 auto;
  }
}
.search .country .search-category__title-inner h3 {
  color: #fbca41;
}
.search .country .search-category__title-inner img {
  width: calc(14.494875549 * 1vw);
}
@media screen and (max-width: 959px) {
  .search .country .search-category__title-inner img {
    width: calc(38.9333333333 * 1vw);
    max-width: 198px;
  }
}
.search .country .search-category__title-inner::after {
  background-image: url(../img/top/country-line.png);
}
.search .country .search-category__hint {
  margin: calc(4.39238653 * 1vw) 0 0 auto;
  border: solid 2px #fbca41;
}
@media screen and (max-width: 959px) {
  .search .country .search-category__hint {
    border: none;
    margin-top: 60px;
    margin-bottom: 40px;
  }
}
@media screen and (max-width: 479px) {
  .search .country .search-category__hint {
    margin-top: calc(10.6666666667 * 1vw);
    margin-bottom: calc(6.4 * 1vw);
  }
}
.search .country .search-category__link {
  border: dashed 2px #fbca41;
}
.search .country .search-category__link:hover {
  border: solid 2px #fbca41;
}
.search .country .search-category__link:hover .search-category__link-arrow span {
  background-image: url("../img/common/arrow-yellow.png");
}
@media screen and (max-width: 959px) {
  .search .country .search-category__link {
    border: solid 2px #fbca41;
  }
}
.search .country .search-category__link-title-en {
  color: #fbca41;
}
.search .country .search-category__link-arrow {
  background-color: #fbca41;
  border: 1px solid #fbca41;
}
.search .country .search-category__hint-hover {
  right: 0;
  left: auto;
}

.flow {
  position: relative;
  padding: calc(10.2489019034 * 1vw) 0 calc(14.2020497804 * 1vw);
  width: 100%;
  overflow-x: hidden;
}
@media screen and (max-width: 959px) {
  .flow {
    padding: calc(10.6666666667 * 1vw) 0 calc(19.7333333333 * 1vw);
  }
}
.flow .flow-bg--01,
.flow .flow-bg--02,
.flow .flow-bg--03,
.flow .flow-bg--04 {
  content: "";
  aspect-ratio: 1/1;
  height: auto;
  position: absolute;
  z-index: -1;
  background-image: repeating-linear-gradient(-45deg, #fde8ab, #fde8ab 5px, transparent 5px, transparent 10px);
}
.flow .flow-bg--01 {
  width: calc(33.8945827233 * 1vw);
  top: calc(5.8565153734 * 1vw);
  right: 0;
}
@media screen and (max-width: 959px) {
  .flow .flow-bg--01 {
    width: calc(48 * 1vw);
    top: calc(32 * 1vw);
    right: -25%;
  }
}
@media screen and (max-width: 649px) {
  .flow .flow-bg--01 {
    width: calc(64.5333333333 * 1vw);
    top: calc(38.4 * 1vw);
    right: -30%;
  }
}
.flow .flow-bg--02 {
  width: calc(16.3982430454 * 1vw);
  top: calc(41.2884333821 * 1vw);
  left: calc(17.7891654466 * 1vw);
}
@media screen and (max-width: 959px) {
  .flow .flow-bg--02 {
    width: calc(26.6666666667 * 1vw);
    top: calc(98.6666666667 * 1vw);
    left: calc(5.3333333333 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .flow .flow-bg--02 {
    width: calc(34.1333333333 * 1vw);
    top: calc(112 * 1vw);
    left: calc(8 * 1vw);
  }
}
.flow .flow-bg--03 {
  width: calc(26.9399707174 * 1vw);
  bottom: calc(26.3543191801 * 1vw);
  left: calc(2.196193265 * 1vw);
}
@media screen and (max-width: 959px) {
  .flow .flow-bg--03 {
    width: calc(48 * 1vw);
    bottom: calc(24 * 1vw);
    left: -25%;
  }
}
@media screen and (max-width: 649px) {
  .flow .flow-bg--03 {
    width: calc(64.5333333333 * 1vw);
    bottom: calc(26.6666666667 * 1vw);
    left: -35%;
  }
}
@media screen and (max-width: 479px) {
  .flow .flow-bg--03 {
    bottom: calc(42.6666666667 * 1vw);
  }
}
.flow .flow-bg--04 {
  width: calc(12.0790629575 * 1vw);
  bottom: calc(7.3206442167 * 1vw);
  right: calc(9.7364568082 * 1vw);
}
@media screen and (max-width: 1365px) {
  .flow .flow-bg--04 {
    right: calc(4.39238653 * 1vw);
  }
}
@media screen and (max-width: 959px) {
  .flow .flow-bg--04 {
    width: calc(21.3333333333 * 1vw);
    bottom: calc(10.6666666667 * 1vw);
    right: 0;
  }
}
@media screen and (max-width: 649px) {
  .flow .flow-bg--04 {
    width: calc(28 * 1vw);
    right: -10px;
  }
}
.flow__inner {
  max-width: 64.4216691069%;
  width: 100%;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 1365px) {
  .flow__inner {
    max-width: 80.3636363636%;
  }
}
@media screen and (max-width: 959px) {
  .flow__inner {
    display: block;
    max-width: 80%;
  }
}
@media screen and (max-width: 649px) {
  .flow__inner {
    display: block;
    max-width: 92%;
    width: 100%;
    margin: 0 auto;
  }
}
.flow__title {
  width: fit-content;
  margin: 0 0 0 0;
}
@media screen and (max-width: 959px) {
  .flow__title {
    margin: 0 auto calc(4.8 * 1vw);
  }
}
.flow__title .top-title p::after {
  content: "";
  width: calc(9.8828696925 * 1vw);
  top: 25%;
  left: 50%;
  transform: translate(-50%, -50%);
  background-image: url(../img/top/title-small.png);
  min-width: 135px;
}
.flow__content {
  width: 75%;
}
@media screen and (max-width: 1365px) {
  .flow__content {
    width: 79.185520362%;
  }
}
@media screen and (max-width: 959px) {
  .flow__content {
    width: 100%;
  }
}
.flow__list {
  counter-reset: flow;
}
.flow__item {
  border: solid 1px #fbca41;
  width: 83.3333333333%;
  background-color: #ffffff;
  box-sizing: border-box;
  padding: calc(2.3426061493 * 1vw) calc(2.9282576867 * 1vw);
  margin-bottom: calc(3.513909224 * 1vw);
  position: relative;
  counter-increment: flow;
}
@media screen and (max-width: 959px) {
  .flow__item {
    width: 95.652173913%;
    padding: calc(5.3333333333 * 1vw) calc(5.3333333333 * 1vw) calc(4 * 1vw);
    margin-bottom: calc(6.4 * 1vw);
  }
}
.flow__item:nth-child(odd) {
  margin: 0 0 calc(3.513909224 * 1vw) auto;
}
.flow__item:nth-child(odd)::after {
  transform: translate(-50%, 100%) scale(-1, 1);
}
@media screen and (max-width: 959px) {
  .flow__item:nth-child(odd) {
    margin: 0 0 calc(6.4 * 1vw) auto;
  }
}
.flow__item::after {
  content: "";
  background-image: url(../img/top/flow-dot_pc.png);
  background-size: 100%;
  background-position: center;
  background-repeat: no-repeat;
  width: calc(8.0527086384 * 1vw);
  height: calc(3.513909224 * 1vw);
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translate(-50%, 100%);
  z-index: -1;
}
@media screen and (max-width: 959px) {
  .flow__item::after {
    background-image: url(../img/top/flow-dot_sp.png);
    width: calc(12.8 * 1vw);
    height: calc(6.4 * 1vw);
  }
}
.flow__item:last-child {
  margin-bottom: 0;
}
.flow__item:last-child::after {
  display: none;
}
.flow__item .flow-item__title {
  padding-bottom: calc(0.5856515373 * 1vw);
  font-weight: 700;
  position: relative;
  z-index: 1;
}
.flow__item .flow-item__title {
  font-size: clamp(20px, 1.4641288433vw, 9999px);
  line-height: 1.5;
}
@media screen and (max-width: 959px) {
  .flow__item .flow-item__title {
    font-size: clamp(1rem, 0.9053985873rem + 0.4036326942vw, 1.25rem);
  }
}
@media screen and (max-width: 479px) {
  .flow__item .flow-item__title {
    font-size: 16px;
    line-height: 1.5 !important;
  }
}
.flow__item .flow-item__title {
  letter-spacing: 0.2em;
}
@media screen and (max-width: 959px) {
  .flow__item .flow-item__title {
    letter-spacing: 0.1em;
  }
}
@media screen and (max-width: 479px) {
  .flow__item .flow-item__title {
    letter-spacing: 0.1em;
  }
}
@media screen and (max-width: 959px) {
  .flow__item .flow-item__title {
    padding-bottom: calc(0.5333333333 * 1vw);
  }
}
@media screen and (max-width: 959px) {
  .flow__item .flow-item__title span {
    font-size: clamp(20px, 1.4641288433vw, 9999px);
    line-height: 1.5;
  }
}
@media screen and (max-width: 959px) and (max-width: 959px) {
  .flow__item .flow-item__title span {
    font-size: clamp(0.875rem, 0.7330978809rem + 0.6054490414vw, 1.25rem);
  }
}
@media screen and (max-width: 959px) and (max-width: 479px) {
  .flow__item .flow-item__title span {
    font-size: 14px;
    line-height: 1.5 !important;
  }
}
.flow__item .flow-item__title::after {
  content: counter(flow, decimal-leading-zero);
  position: absolute;
  left: 0;
  top: calc(-0.2196193265 * 1vw);
  transform: translate(-50%, -40%);
  font-weight: 400;
  font-family: "Caveat", cursive;
  color: #fbca41;
  z-index: -1;
}
.flow__item .flow-item__title::after {
  font-size: clamp(31px, 2.2693997072vw, 9999px);
  line-height: 1.0322580645;
}
@media screen and (max-width: 959px) {
  .flow__item .flow-item__title::after {
    font-size: clamp(1.5rem, 1.3344475277rem + 0.7063572149vw, 1.9375rem);
  }
}
@media screen and (max-width: 479px) {
  .flow__item .flow-item__title::after {
    font-size: 24px;
    line-height: 1 !important;
  }
}
.flow__item .flow-item__title::after {
  letter-spacing: 0.1em;
}
@media screen and (max-width: 959px) {
  .flow__item .flow-item__title::after {
    letter-spacing: 0.1em;
  }
}
@media screen and (max-width: 479px) {
  .flow__item .flow-item__title::after {
    letter-spacing: 0.1em;
  }
}
@media screen and (max-width: 959px) {
  .flow__item .flow-item__title::after {
    top: -3px;
  }
}
.flow__item .flow-item__text {
  font-weight: 500;
}
.flow__item .flow-item__text {
  font-size: clamp(16px, 1.1713030747vw, 9999px);
  line-height: 1.8;
}
@media screen and (max-width: 959px) {
  .flow__item .flow-item__text {
    font-size: clamp(0.875rem, 0.8276992936rem + 0.2018163471vw, 1rem);
  }
}
@media screen and (max-width: 479px) {
  .flow__item .flow-item__text {
    font-size: 14px;
    line-height: 1.5 !important;
  }
}
.flow__item .flow-item__text {
  letter-spacing: 0.05em;
}
@media screen and (max-width: 959px) {
  .flow__item .flow-item__text {
    letter-spacing: 0.05em;
  }
}
@media screen and (max-width: 479px) {
  .flow__item .flow-item__text {
    letter-spacing: 0.05em;
  }
}
.flow__item .flow-item__button {
  position: relative;
  width: fit-content;
  padding-top: calc(1.317715959 * 1vw);
}
@media screen and (max-width: 959px) {
  .flow__item .flow-item__button {
    padding-top: calc(4.8 * 1vw);
  }
}
.flow__item .flow-item__bubble {
  content: "";
  position: absolute;
  right: calc(-1.317715959 * 1vw);
  bottom: calc(0.6588579795 * 1vw);
  transform: translateX(100%);
}
@media screen and (max-width: 959px) {
  .flow__item .flow-item__bubble {
    right: calc(-2.1333333333 * 1vw);
    bottom: calc(-0.8 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .flow__item .flow-item__bubble {
    right: calc(-4 * 1vw);
    bottom: calc(0.5333333333 * 1vw);
  }
}
.flow__item .flow-item__bubble img {
  width: calc(10.7613469985 * 1vw);
  height: auto;
}
@media screen and (max-width: 959px) {
  .flow__item .flow-item__bubble img {
    width: calc(18.6666666667 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .flow__item .flow-item__bubble img {
    width: calc(30.6666666667 * 1vw);
  }
}

.story {
  width: 100%;
  overflow: hidden;
}
.story__inner {
  background: linear-gradient(180deg, #ffffff 0%, #ffffff 7%, #fff9d4 7%, #fff9d4 100%);
}
@media screen and (max-width: 959px) {
  .story__inner {
    background: linear-gradient(180deg, #ffffff 0%, #ffffff 3%, #fff9d4 3%, #fff9d4 100%);
  }
}
.story__title {
  width: fit-content;
  max-width: 87.8477306003%;
  width: 100%;
  margin: 0 auto;
  margin-bottom: calc(-1.0980966325 * 1vw);
}
@media screen and (max-width: 959px) {
  .story__title {
    max-width: 92%;
    width: 100%;
    margin: 0 auto;
  }
}
.story__title .top-title p {
  width: fit-content;
  padding-left: calc(2.9282576867 * 1vw);
}
@media screen and (max-width: 959px) {
  .story__title .top-title p {
    padding-left: 45px;
  }
}
.story__title .top-title p::after {
  content: "";
  width: calc(9.8828696925 * 1vw);
  top: 25%;
  left: 10%;
  transform: translate(0%, -50%);
  background-image: url(../img/top/title-small.png);
  min-width: 135px;
}
@media screen and (max-width: 959px) {
  .story__title .top-title p::after {
    left: 15px;
  }
}
.story__content {
  position: relative;
}

.instagram {
  padding: calc(7.3206442167 * 1vw) 0;
}
@media screen and (max-width: 959px) {
  .instagram {
    padding: calc(13.3333333333 * 1vw) 0;
  }
}
@media screen and (max-width: 649px) {
  .instagram {
    padding: calc(19.2 * 1vw) 0 calc(12.8 * 1vw);
  }
}
.instagram__title {
  width: fit-content;
  max-width: 56.3689604685%;
  width: 100%;
  margin: 0 auto;
}
@media screen and (max-width: 1099px) {
  .instagram__title {
    max-width: 80.5270863836%;
    width: 100%;
    margin: 0 auto;
  }
}
@media screen and (max-width: 959px) {
  .instagram__title {
    max-width: 92%;
    width: 100%;
    margin: 0 auto;
  }
}
.instagram__title .top-title p {
  width: fit-content;
  text-align: left;
  padding-left: calc(2.9282576867 * 1vw);
}
@media screen and (max-width: 959px) {
  .instagram__title .top-title p {
    padding-left: calc(12 * 1vw);
  }
}
.instagram__title .top-title p::after {
  content: "";
  top: 25%;
  left: 3%;
  transform: translate(0%, -50%);
  width: calc(16.8374816984 * 1vw);
  min-width: 230px;
}
@media screen and (max-width: 959px) {
  .instagram__title .top-title p::after {
    left: calc(9.3333333333 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .instagram__title .top-title p::after {
    left: calc(7.4666666667 * 1vw);
  }
}
.instagram__content {
  max-width: 64.4216691069%;
  width: 100%;
  margin: 0 auto;
  position: relative;
  display: flex;
  flex-flow: column;
}
@media screen and (max-width: 1099px) {
  .instagram__content {
    max-width: 80.5270863836%;
    width: 100%;
    margin: 0 auto;
  }
}
@media screen and (max-width: 959px) {
  .instagram__content {
    max-width: 84%;
    width: 100%;
    margin: 0 auto;
  }
}
@media screen and (max-width: 649px) {
  .instagram__content {
    flex-flow: column-reverse;
  }
}
.instagram__content::after {
  content: "";
  position: absolute;
  top: 55%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  height: calc(19.5461200586 * 1vw);
  background-color: #ffffff;
  background-image: linear-gradient(90deg, #ee7fa5 2px, transparent 2px), linear-gradient(#ee7fa5 2px, transparent 2px);
  background-position: 10px 10px;
  background-size: 22px 22px;
  z-index: -1;
  opacity: 0.1;
}
@media screen and (max-width: 959px) {
  .instagram__content::after {
    height: calc(29.3333333333 * 1vw);
    width: 100vw;
  }
}
@media screen and (max-width: 649px) {
  .instagram__content::after {
    top: 50%;
    height: calc(95.2 * 1vw);
  }
}
.instagram__button {
  margin: 0 0 0 auto;
  padding-right: calc(4.0263543192 * 1vw);
  width: fit-content;
}
.instagram__button:hover .circle-arrow span {
  background-image: url("../img/common/arrow-pink.png") !important;
}
.instagram__button .circle-arrow {
  background-color: #ee7fa5;
  border: 1px solid #ee7fa5;
}
.instagram__button .circle-arrow span {
  background: url("../img/common/arrow-white.png") no-repeat center/contain;
}
@media screen and (max-width: 649px) {
  .instagram__button {
    position: absolute;
    left: 0;
    bottom: 0;
  }
}
.instagram__list {
  padding: 0 calc(4.0263543192 * 1vw);
  display: flex;
  justify-content: space-between;
  gap: 6.2337662338%;
}
@media screen and (max-width: 959px) {
  .instagram__list {
    gap: 3.7267080745%;
  }
}
@media screen and (max-width: 649px) {
  .instagram__list {
    gap: 0;
    padding: calc(6.4 * 1vw) 0 0;
  }
}
.instagram__item {
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 649px) {
  .instagram__item {
    margin-left: calc(-14.6666666667 * 1vw);
  }
}
.instagram__item span {
  color: #ee7fa5;
  writing-mode: vertical-rl;
  text-orientation: mixed;
  font-family: "Caveat", cursive;
}
.instagram__item span {
  font-size: clamp(21px, 1.5373352855vw, 9999px);
  line-height: 1;
}
@media screen and (max-width: 959px) {
  .instagram__item span {
    font-size: clamp(1rem, 0.8817482341rem + 0.5045408678vw, 1.3125rem);
  }
}
@media screen and (max-width: 479px) {
  .instagram__item span {
    font-size: 16px;
    line-height: 1 !important;
  }
}
.instagram__item span {
  letter-spacing: 0.2em;
}
@media screen and (max-width: 959px) {
  .instagram__item span {
    letter-spacing: 0.2em;
  }
}
@media screen and (max-width: 479px) {
  .instagram__item span {
    letter-spacing: 0.2em;
  }
}
.instagram__item a {
  height: fit-content;
}
.instagram__item img {
  width: calc(15.7393850659 * 1vw);
  object-fit: contain;
}
@media screen and (max-width: 1099px) {
  .instagram__item img {
    width: calc(19.7657393851 * 1vw);
  }
}
@media screen and (max-width: 959px) {
  .instagram__item img {
    width: calc(36 * 1vw);
  }
}
.instagram__item:first-child {
  margin-left: 0;
}
.instagram__item:nth-child(2) {
  margin-top: calc(4.0263543192 * 1vw);
}
@media screen and (max-width: 649px) {
  .instagram__item:nth-child(2) {
    margin-top: calc(37.8666666667 * 1vw);
  }
}
.instagram__item:nth-child(3) {
  margin-top: calc(8.0527086384 * 1vw);
}
@media screen and (max-width: 649px) {
  .instagram__item:nth-child(3) {
    margin-top: calc(75.7333333333 * 1vw);
  }
}

.apply {
  background-image: repeating-linear-gradient(-45deg, #fff9d4, #fff9d4 5px, transparent 5px, transparent 10px);
  padding: calc(5.8565153734 * 1vw) 0;
}
@media screen and (max-width: 649px) {
  .apply {
    padding: calc(14.9333333333 * 1vw) 0;
  }
}
.apply__inner {
  max-width: 80.5270863836%;
  width: 100%;
  margin: 0 auto;
}
@media screen and (max-width: 959px) {
  .apply__inner {
    max-width: 84%;
    width: 100%;
    margin: 0 auto;
  }
}
.apply__wrapper {
  display: flex;
  justify-content: space-between;
  gap: calc(4.0263543192 * 1vw);
}
@media screen and (max-width: 959px) {
  .apply__wrapper {
    max-width: 640px;
    margin: 0 auto;
  }
}
@media screen and (max-width: 649px) {
  .apply__wrapper {
    display: block;
  }
}
.apply__title {
  width: fit-content;
}
@media screen and (max-width: 649px) {
  .apply__title {
    margin: 0 auto;
  }
}
.apply__title .top-title {
  margin: 0 auto;
}
.apply__title .top-title p {
  width: fit-content;
}
@media screen and (max-width: 959px) {
  .apply__title .top-title p {
    margin: 0 auto;
    text-align: center;
  }
}
.apply__title .top-title p::after {
  content: "";
  width: calc(9.8828696925 * 1vw);
  top: 30%;
  left: -5px;
  transform: translate(0%, -50%);
  background-image: url(../img/top/title-small.png);
  min-width: 135px;
}
@media screen and (max-width: 959px) {
  .apply__title .top-title p::after {
    left: 50%;
    transform: translate(-50%, -50%);
  }
}
.apply__text {
  margin-top: calc(2.3426061493 * 1vw);
  font-weight: 500;
}
.apply__text {
  font-size: clamp(18px, 1.317715959vw, 9999px);
  line-height: 1.9444444444;
}
@media screen and (max-width: 959px) {
  .apply__text {
    font-size: clamp(1rem, 0.9526992936rem + 0.2018163471vw, 1.125rem);
  }
}
@media screen and (max-width: 479px) {
  .apply__text {
    font-size: 16px;
    line-height: 1.8 !important;
  }
}
.apply__text {
  letter-spacing: 0.05em;
}
@media screen and (max-width: 959px) {
  .apply__text {
    letter-spacing: 0.05em;
  }
}
@media screen and (max-width: 479px) {
  .apply__text {
    letter-spacing: 0.05em;
  }
}
@media screen and (max-width: 959px) {
  .apply__text {
    margin: calc(6.4 * 1vw) 0 calc(8.5333333333 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .apply__text {
    text-align: center;
  }
}
.apply__right {
  position: relative;
  margin: 0 auto 0 0;
  display: flex;
  flex-flow: row-reverse;
  justify-content: end;
}
@media screen and (max-width: 1099px) {
  .apply__right {
    margin-right: -40px;
  }
}
@media screen and (max-width: 959px) {
  .apply__right {
    flex-flow: column;
    align-items: center;
    margin-right: auto;
  }
}
.apply__right .apply-button {
  width: clamp(296px, 50vw, 21.6691068814 * 1vw);
}
@media screen and (max-width: 959px) {
  .apply__right .apply-button {
    width: 32vw;
    min-width: 235px;
  }
}
@media screen and (max-width: 649px) {
  .apply__right .apply-button {
    width: clamp(235px, 4vw, 17.2035139092 * 1vw);
  }
}
.apply__right .apply-step {
  margin-left: calc(-6.588579795 * 1vw);
  font-family: "Caveat", cursive;
  color: #fbca41;
  text-align: center;
  font-weight: 700;
  white-space: nowrap;
  transform: rotate(11deg);
}
.apply__right .apply-step {
  font-size: clamp(29px, 2.1229868228vw, 9999px);
  line-height: 0.7931034483;
}
@media screen and (max-width: 959px) {
  .apply__right .apply-step {
    font-size: clamp(1.5rem, 1.3817482341rem + 0.5045408678vw, 1.8125rem);
  }
}
@media screen and (max-width: 479px) {
  .apply__right .apply-step {
    font-size: 24px;
    line-height: 0.625 !important;
  }
}
.apply__right .apply-step {
  letter-spacing: 0.2em;
}
@media screen and (max-width: 959px) {
  .apply__right .apply-step {
    letter-spacing: 0.2em;
  }
}
@media screen and (max-width: 479px) {
  .apply__right .apply-step {
    letter-spacing: 0.2em;
  }
}
@media screen and (max-width: 1365px) {
  .apply__right .apply-step {
    margin-left: calc(-10.2489019034 * 1vw);
  }
}
@media screen and (max-width: 959px) {
  .apply__right .apply-step {
    transform: rotate(4deg);
    width: fit-content;
    margin: 0 -40px 0 auto;
  }
}
@media screen and (max-width: 649px) {
  .apply__right .apply-step {
    margin: 0 0 -25px auto;
  }
}
@media screen and (max-width: 479px) {
  .apply__right .apply-step {
    margin: 0 0 0 auto;
  }
}
.apply__right .apply-step span img {
  width: calc(4.6120058565 * 1vw);
  height: auto;
  margin-top: calc(0.7320644217 * 1vw);
}
@media screen and (max-width: 959px) {
  .apply__right .apply-step span img {
    width: calc(6.6666666667 * 1vw);
    height: auto;
    margin-right: -80px;
  }
}
@media screen and (max-width: 649px) {
  .apply__right .apply-step span img {
    width: calc(10.6666666667 * 1vw);
    height: auto;
    margin-top: calc(0.7320644217 * 1vw);
    margin-right: -60px;
  }
}
@media screen and (max-width: 959px) {
  .apply__right .apply-step a {
    width: fit-content;
  }
}

.philosophy {
  position: relative;
  padding: calc(10.2489019034 * 1vw) 0;
}
@media screen and (max-width: 959px) {
  .philosophy {
    padding: calc(26.6666666667 * 1vw) 0 calc(32 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .philosophy {
    padding: calc(34.6666666667 * 1vw) 0;
  }
}
.philosophy__inner {
  text-align: center;
  width: fit-content;
  margin: 0 auto;
}
@media screen and (max-width: 959px) {
  .philosophy__inner {
    max-width: 84%;
    width: 100%;
    margin: 0 auto;
  }
}
.philosophy__content {
  color: #2f5f98;
}
.philosophy__catch {
  margin-bottom: calc(2.3426061493 * 1vw);
}
@media screen and (max-width: 959px) {
  .philosophy__catch {
    margin-bottom: calc(2.6666666667 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .philosophy__catch {
    margin-bottom: calc(4.2666666667 * 1vw);
  }
}
@media screen and (max-width: 479px) {
  .philosophy__catch {
    margin-bottom: calc(6.4 * 1vw);
  }
}
.philosophy__catch p {
  margin: 0 auto;
  width: fit-content;
  border-bottom: solid 2px #fbca41;
  color: #2f5f98;
  font-weight: 700;
}
.philosophy__catch p {
  font-size: clamp(22px, 1.6105417277vw, 9999px);
  line-height: 2;
}
@media screen and (max-width: 959px) {
  .philosophy__catch p {
    font-size: clamp(1.125rem, 1.0303985873rem + 0.4036326942vw, 1.375rem);
  }
}
@media screen and (max-width: 479px) {
  .philosophy__catch p {
    font-size: 18px;
    line-height: 1.6 !important;
  }
}
.philosophy__catch p {
  letter-spacing: 0.05em;
}
@media screen and (max-width: 959px) {
  .philosophy__catch p {
    letter-spacing: 0.05em;
  }
}
@media screen and (max-width: 479px) {
  .philosophy__catch p {
    letter-spacing: 0.05em;
  }
}
.philosophy__text {
  font-weight: 500;
}
.philosophy__text {
  font-size: clamp(16px, 1.1713030747vw, 9999px);
  line-height: 1.8;
}
@media screen and (max-width: 959px) {
  .philosophy__text {
    font-size: clamp(1rem, 1rem + 0vw, 1rem);
  }
}
@media screen and (max-width: 479px) {
  .philosophy__text {
    font-size: 16px;
    line-height: 1.8 !important;
  }
}
.philosophy__text {
  letter-spacing: 0.05em;
}
@media screen and (max-width: 959px) {
  .philosophy__text {
    letter-spacing: 0.05em;
  }
}
@media screen and (max-width: 479px) {
  .philosophy__text {
    letter-spacing: 0.05em;
  }
}
.philosophy__bk--01 {
  position: absolute;
  right: calc(9.663250366 * 1vw);
  top: calc(7.3206442167 * 1vw);
  width: calc(16.1054172767 * 1vw);
}
@media screen and (max-width: 959px) {
  .philosophy__bk--01 {
    right: 0;
    top: calc(8 * 1vw);
    width: calc(36 * 1vw);
  }
}
.philosophy__bk--02 {
  position: absolute;
  right: 0;
  bottom: calc(14.6412884334 * 1vw);
  width: calc(9.8828696925 * 1vw);
}
.philosophy__bk--03 {
  position: absolute;
  right: calc(18.4480234261 * 1vw);
  bottom: calc(5.8565153734 * 1vw);
  width: calc(7.3206442167 * 1vw);
}
@media screen and (max-width: 959px) {
  .philosophy__bk--03 {
    right: calc(4 * 1vw);
    bottom: calc(6.6666666667 * 1vw);
    width: calc(26.1333333333 * 1vw);
  }
}
.philosophy__bk--04 {
  position: absolute;
  left: calc(19.9121522694 * 1vw);
  top: calc(7.3206442167 * 1vw);
  width: calc(7.3206442167 * 1vw);
}
@media screen and (max-width: 959px) {
  .philosophy__bk--04 {
    left: calc(4 * 1vw);
    top: calc(14.6666666667 * 1vw);
    width: calc(26.1333333333 * 1vw);
  }
}
.philosophy__bk--05 {
  position: absolute;
  left: 0;
  top: calc(14.6412884334 * 1vw);
  width: calc(11.7130307467 * 1vw);
}
.philosophy__bk--06 {
  position: absolute;
  left: calc(9.663250366 * 1vw);
  bottom: 0;
  width: calc(16.1054172767 * 1vw);
}
@media screen and (max-width: 959px) {
  .philosophy__bk--06 {
    left: 0;
    width: calc(36 * 1vw);
  }
}

.point {
  position: relative;
  padding: calc(0.7320644217 * 1vw) 0 calc(14.6412884334 * 1vw);
  margin: calc(9.5168374817 * 1vw) 0 calc(2.9282576867 * 1vw);
}
@media screen and (max-width: 959px) {
  .point {
    margin: 0 0 calc(8 * 1vw);
    padding: calc(10.6666666667 * 1vw) 0;
  }
}
@media screen and (max-width: 649px) {
  .point {
    padding: calc(13.3333333333 * 1vw) 0 calc(0 * 1vw);
    margin: 0 0 calc(32 * 1vw);
  }
}
.point::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  height: 100%;
  background-color: #fff9d4;
  clip-path: polygon(0% calc(10.2489019034 * 1vw), 100% 0%, 100% 100%, 0% calc(100% - 10.2489019034 * 1vw));
  z-index: -1;
}
@media screen and (max-width: 959px) {
  .point::after {
    clip-path: polygon(0% calc(10.6666666667 * 1vw), 100% 0%, 100% 100%, 0% calc(100% - 10.6666666667 * 1vw));
  }
}
@media screen and (max-width: 649px) {
  .point::after {
    clip-path: polygon(0% calc(13.3333333333 * 1vw), 100% 0%, 100% 100%, 0% calc(100% - 13.3333333333 * 1vw));
  }
}
.point__content {
  display: flex;
  justify-content: center;
  align-items: stretch;
  gap: calc(4.0263543192 * 1vw);
}
@media screen and (max-width: 959px) {
  .point__content {
    display: block;
    max-width: 84%;
    width: 100%;
    margin: 0 auto;
  }
}
.point__outline {
  width: calc(16.1054172767 * 1vw);
  margin-top: calc(9.5168374817 * 1vw);
  height: auto;
  position: relative;
}
@media screen and (max-width: 1099px) {
  .point__outline {
    width: calc(22.6939970717 * 1vw);
  }
}
@media screen and (max-width: 959px) {
  .point__outline {
    position: fixed;
    bottom: -350px;
    left: calc(4 * 1vw);
    z-index: 100;
    margin-top: 0;
    width: 300px;
    opacity: 0;
    transition: all 0.3s ease;
  }
}
@media screen and (max-width: 649px) {
  .point__outline {
    bottom: -285px;
    width: calc(58.6666666667 * 1vw);
  }
}
.point__outline.on {
  opacity: 1;
  transition: all 0.3s ease;
}
.point__outline.open {
  bottom: 0;
  transition: all 0.3s ease;
}
.point__outline .outline {
  position: sticky;
  top: 25%;
}
@media screen and (max-width: 959px) {
  .point__outline .outline {
    position: relative;
  }
}
.point__outline .outline__title {
  width: calc(3.953147877 * 1vw);
  height: auto;
  margin: 0 auto;
}
@media screen and (max-width: 959px) {
  .point__outline .outline__title {
    background-color: #2f5f98;
    padding: calc(2.1333333333 * 1vw) calc(2.6666666667 * 1vw) calc(1.6 * 1vw);
    border-radius: calc(2.1333333333 * 1vw) calc(2.1333333333 * 1vw) 0 0;
    width: fit-content;
    height: 80px;
    box-sizing: border-box;
    position: absolute;
    top: -80px;
  }
  .point__outline .outline__title img {
    height: 100%;
    width: auto;
  }
}
@media screen and (max-width: 649px) {
  .point__outline .outline__title {
    height: calc(12.2666666667 * 1vw);
    top: calc(-12.2666666667 * 1vw);
  }
}
@media screen and (max-width: 959px) {
  .point__outline .outline__inner {
    background-color: #fff;
    padding: calc(4.2666666667 * 1vw) calc(4.2666666667 * 1vw) calc(6.4 * 1vw);
    border-top: solid 2px #2f5f98;
    box-sizing: border-box;
  }
}
.point__outline .outline__item {
  margin-top: calc(1.1713030747 * 1vw);
  text-align: center;
  color: #707070;
  font-weight: 500;
}
.point__outline .outline__item {
  font-size: clamp(16px, 1.1713030747vw, 9999px);
  line-height: 1.5;
}
@media screen and (max-width: 959px) {
  .point__outline .outline__item {
    font-size: clamp(0.875rem, 0.8276992936rem + 0.2018163471vw, 1rem);
  }
}
@media screen and (max-width: 479px) {
  .point__outline .outline__item {
    font-size: 14px;
    line-height: 1.5 !important;
  }
}
.point__outline .outline__item {
  letter-spacing: 0.05em;
}
@media screen and (max-width: 959px) {
  .point__outline .outline__item {
    letter-spacing: 0.05em;
  }
}
@media screen and (max-width: 479px) {
  .point__outline .outline__item {
    letter-spacing: 0.05em;
  }
}
@media screen and (max-width: 959px) {
  .point__outline .outline__item {
    margin-top: calc(3.2 * 1vw);
  }
  .point__outline .outline__item:first-child {
    margin-top: 0;
  }
}
.point__outline .outline__item a:hover {
  opacity: 1 !important;
  color: #1c1c1c !important;
  transition: color 0.3s ease;
}
.point__outline .outline__item.on {
  position: relative;
  color: #1c1c1c;
  z-index: 1;
}
.point__outline .outline__item.on::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: calc(4.39238653 * 1vw);
  height: calc(2.4890190337 * 1vw);
  background-image: url(../img/about/point-circle.png);
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  z-index: -1;
}
@media screen and (max-width: 959px) {
  .point__outline .outline__item.on::after {
    width: calc(8 * 1vw);
    height: calc(4.5333333333 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .point__outline .outline__item.on::after {
    width: calc(16 * 1vw);
    height: calc(9.0666666667 * 1vw);
  }
}
.point__title .lower-title {
  text-align: left;
}
@media screen and (max-width: 959px) {
  .point__title .lower-title {
    margin-bottom: calc(2.1333333333 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .point__title .lower-title {
    margin-bottom: calc(4.2666666667 * 1vw);
  }
}
.point__title .lower-title span {
  position: relative;
  color: #fff;
  z-index: 1;
}
.point__title .lower-title span {
  font-size: clamp(48px, 3.513909224vw, 9999px);
  line-height: 1;
}
@media screen and (max-width: 959px) {
  .point__title .lower-title span {
    font-size: clamp(2rem, 1.6215943491rem + 1.614530777vw, 3rem);
  }
}
@media screen and (max-width: 479px) {
  .point__title .lower-title span {
    font-size: 32px;
    line-height: 1 !important;
  }
}
.point__title .lower-title span {
  letter-spacing: 0em;
}
@media screen and (max-width: 959px) {
  .point__title .lower-title span {
    letter-spacing: 0em;
  }
}
@media screen and (max-width: 479px) {
  .point__title .lower-title span {
    letter-spacing: 0em;
  }
}
.point__title .lower-title span::before {
  content: "６";
  color: #2f5f98;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-text-stroke: calc(0.2928257687 * 1vw) #2f5f98;
  width: 100%;
  z-index: -1;
}
.point__title .lower-title span::before {
  font-size: clamp(48px, 3.513909224vw, 9999px);
  line-height: 2;
}
@media screen and (max-width: 959px) {
  .point__title .lower-title span::before {
    font-size: clamp(2rem, 1.6215943491rem + 1.614530777vw, 3rem);
  }
}
@media screen and (max-width: 479px) {
  .point__title .lower-title span::before {
    font-size: 32px;
    line-height: 2 !important;
  }
}
.point__title .lower-title span::before {
  letter-spacing: 0.15em;
}
@media screen and (max-width: 959px) {
  .point__title .lower-title span::before {
    letter-spacing: 0.15em;
  }
}
@media screen and (max-width: 479px) {
  .point__title .lower-title span::before {
    letter-spacing: 0.15em;
  }
}
@media screen and (max-width: 959px) {
  .point__title .lower-title span::before {
    -webkit-text-stroke: calc(0.8 * 1vw) #2f5f98;
  }
}
.point__detail {
  width: calc(72.4743777452 * 1vw);
  height: 100%;
}
@media screen and (max-width: 1099px) {
  .point__detail {
    width: calc(65.8857979502 * 1vw);
  }
}
@media screen and (max-width: 959px) {
  .point__detail {
    width: 100%;
  }
}
.point .point-item:nth-child(even) .point-item__img--top {
  transform: rotate(-4deg);
}
.point .point-item:nth-child(even) .point-item__img--top::before {
  transform: translate(-50%, -50%) rotate(4deg);
}
@media screen and (max-width: 649px) {
  .point .point-item:last-of-type .point-item__wrapper {
    padding-bottom: 0;
  }
}
.point .point-item:last-of-type .point-item__wrapper::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: calc(0.1464128843 * 1vw);
  background-color: #2f5f98;
}
@media screen and (max-width: 959px) {
  .point .point-item:last-of-type .point-item__wrapper::after {
    display: none;
  }
}
.point .point-item__wrapper {
  position: relative;
  padding: calc(3.513909224 * 1vw) 0;
}
@media screen and (max-width: 1099px) {
  .point .point-item__wrapper {
    padding: calc(4.39238653 * 1vw) 0;
  }
}
@media screen and (max-width: 959px) {
  .point .point-item__wrapper {
    padding: calc(6.4 * 1vw) 0;
  }
}
@media screen and (max-width: 649px) {
  .point .point-item__wrapper {
    padding: calc(6.4 * 1vw) 0 calc(14.4 * 1vw);
  }
}
.point .point-item__wrapper::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 88%;
  height: calc(0.1464128843 * 1vw);
  background-color: #2f5f98;
}
@media screen and (max-width: 1099px) {
  .point .point-item__wrapper::before {
    width: 84%;
  }
}
@media screen and (max-width: 959px) {
  .point .point-item__wrapper::before {
    width: 88%;
  }
}
@media screen and (max-width: 649px) {
  .point .point-item__wrapper::before {
    width: 82.5396825397%;
    height: calc(0.2666666667 * 1vw);
  }
}
.point .point-item__circle {
  position: absolute;
  transform: translate(0%, -50%);
  top: 0;
  right: 0;
  width: calc(6.9546120059 * 1vw);
  height: auto;
  aspect-ratio: 1/1;
  padding-top: calc(1.0980966325 * 1vw);
  display: flex;
  flex-flow: column;
  align-items: center;
  justify-content: center;
  font-family: "Caveat", cursive;
  color: #2f5f98;
  font-weight: 500;
  z-index: 1;
  margin-top: calc(1.756954612 * 1vw);
}
.point .point-item__circle {
  font-size: clamp(18px, 1.317715959vw, 9999px);
  line-height: 0.0555555556;
}
@media screen and (max-width: 959px) {
  .point .point-item__circle {
    font-size: clamp(0.625rem, 0.4357971746rem + 0.8072653885vw, 1.125rem);
  }
}
@media screen and (max-width: 479px) {
  .point .point-item__circle {
    font-size: 10px;
    line-height: 0.1 !important;
  }
}
.point .point-item__circle {
  letter-spacing: 0.1em;
}
@media screen and (max-width: 959px) {
  .point .point-item__circle {
    letter-spacing: 0.1em;
  }
}
@media screen and (max-width: 479px) {
  .point .point-item__circle {
    letter-spacing: 0.1em;
  }
}
@media screen and (max-width: 1099px) {
  .point .point-item__circle {
    width: calc(9.5168374817 * 1vw);
    margin-top: calc(2.635431918 * 1vw);
  }
}
@media screen and (max-width: 959px) {
  .point .point-item__circle {
    right: calc(-4 * 1vw);
    width: calc(13.3333333333 * 1vw);
    padding-top: calc(1.3333333333 * 1vw);
    font-size: 18px;
    margin-top: calc(3.2 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .point .point-item__circle {
    width: calc(16 * 1vw);
    margin-top: 0;
  }
  .point .point-item__circle {
    font-size: clamp(18px, 1.317715959vw, 9999px);
    line-height: 0.0555555556;
  }
}
@media screen and (max-width: 649px) and (max-width: 959px) {
  .point .point-item__circle {
    font-size: clamp(0.625rem, 0.4357971746rem + 0.8072653885vw, 1.125rem);
  }
}
@media screen and (max-width: 649px) and (max-width: 479px) {
  .point .point-item__circle {
    font-size: 10px;
    line-height: 0.1 !important;
  }
}
.point .point-item__circle::before {
  content: "";
  position: absolute;
  transform: translate(0%, -50%);
  top: 50%;
  right: 0;
  width: calc(6.9546120059 * 1vw);
  height: auto;
  aspect-ratio: 1/1;
  background-image: url(../img/about/flower.png);
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  z-index: -1;
}
@media screen and (max-width: 1099px) {
  .point .point-item__circle::before {
    width: calc(9.5168374817 * 1vw);
  }
}
@media screen and (max-width: 959px) {
  .point .point-item__circle::before {
    right: calc(-0.8 * 1vw);
    width: calc(13.3333333333 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .point .point-item__circle::before {
    width: calc(16 * 1vw);
  }
}
.point .point-item__circle span {
  text-align: left;
  width: fit-content;
  margin: 0 auto;
  padding-right: calc(1.0980966325 * 1vw);
}
.point .point-item__circle span {
  font-size: clamp(40px, 2.9282576867vw, 9999px);
  line-height: 1.25;
}
@media screen and (max-width: 959px) {
  .point .point-item__circle span {
    font-size: clamp(1.875rem, 1.6384964682rem + 1.0090817356vw, 2.5rem);
  }
}
@media screen and (max-width: 479px) {
  .point .point-item__circle span {
    font-size: 30px;
    line-height: 1 !important;
  }
}
.point .point-item__circle span {
  letter-spacing: -0.05em;
}
@media screen and (max-width: 959px) {
  .point .point-item__circle span {
    letter-spacing: -0.05em;
  }
}
@media screen and (max-width: 479px) {
  .point .point-item__circle span {
    letter-spacing: -0.05em;
  }
}
@media screen and (max-width: 959px) {
  .point .point-item__circle span {
    font-size: 40px;
  }
}
@media screen and (max-width: 649px) {
  .point .point-item__circle span {
    font-size: clamp(40px, 2.9282576867vw, 9999px);
    line-height: 1.25;
  }
}
@media screen and (max-width: 649px) and (max-width: 959px) {
  .point .point-item__circle span {
    font-size: clamp(1.875rem, 1.6384964682rem + 1.0090817356vw, 2.5rem);
  }
}
@media screen and (max-width: 649px) and (max-width: 479px) {
  .point .point-item__circle span {
    font-size: 30px;
    line-height: 1 !important;
  }
}
.point .point-item__title {
  width: fit-content;
  font-weight: 700;
  z-index: 1;
}
.point .point-item__title {
  font-size: clamp(24px, 1.756954612vw, 9999px);
  line-height: 1.5;
}
@media screen and (max-width: 959px) {
  .point .point-item__title {
    font-size: clamp(1.25rem, 1.1553985873rem + 0.4036326942vw, 1.5rem);
  }
}
@media screen and (max-width: 479px) {
  .point .point-item__title {
    font-size: 20px;
    line-height: 1.5 !important;
  }
}
.point .point-item__title {
  letter-spacing: 0.2em;
}
@media screen and (max-width: 959px) {
  .point .point-item__title {
    letter-spacing: 0.15em;
  }
}
@media screen and (max-width: 479px) {
  .point .point-item__title {
    letter-spacing: 0.15em;
  }
}
@media screen and (max-width: 649px) {
  .point .point-item__title {
    margin: 0 auto;
    text-align: center;
  }
}
.point .point-item__title--one p {
  background-color: #fff;
  padding: calc(1.1713030747 * 1vw) calc(1.1713030747 * 1vw) calc(0.5856515373 * 1vw) calc(1.1713030747 * 1vw);
}
@media screen and (max-width: 959px) {
  .point .point-item__title--one p {
    padding: calc(2.6666666667 * 1vw) calc(4.2666666667 * 1vw) calc(1.6 * 1vw) calc(4.2666666667 * 1vw);
  }
}
@media screen and (max-width: 959px) {
  .point .point-item__title--two p {
    margin: 0 auto;
    text-align: center;
    width: fit-content;
    background-color: #fff;
    padding: calc(2.6666666667 * 1vw) calc(4.2666666667 * 1vw) calc(1.6 * 1vw) calc(4.2666666667 * 1vw);
  }
  .point .point-item__title--two p:first-child {
    padding-bottom: 0;
  }
  .point .point-item__title--two p:last-child {
    padding-top: calc(1.0666666667 * 1vw);
  }
}
.point .point-item__inner {
  display: flex;
  justify-content: space-between;
  align-items: start;
  padding-top: calc(1.756954612 * 1vw);
}
@media screen and (max-width: 649px) {
  .point .point-item__inner {
    display: block;
    padding-top: calc(2.6666666667 * 1vw);
  }
}
.point .point-item__left {
  width: 16.6666666667%;
}
@media screen and (max-width: 1099px) {
  .point .point-item__left {
    width: 19.3370165746%;
  }
}
@media screen and (max-width: 959px) {
  .point .point-item__left {
    width: 24.8447204969%;
  }
}
@media screen and (max-width: 649px) {
  .point .point-item__left {
    width: 100%;
  }
}
.point .point-item__img {
  position: relative;
}
@media screen and (max-width: 959px) {
  .point .point-item__img {
    display: flex;
    align-items: center;
    justify-content: center;
  }
}
.point .point-item__img--top {
  position: relative;
  transform: rotate(4deg);
  z-index: 1;
  margin-top: calc(2.635431918 * 1vw);
  width: calc(12.0790629575 * 1vw);
}
@media screen and (max-width: 959px) {
  .point .point-item__img--top {
    margin-top: calc(7.4666666667 * 1vw);
    width: calc(44 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .point .point-item__img--top {
    margin-top: calc(9.6 * 1vw);
    transform: rotate(-4deg);
  }
}
.point .point-item__img--top::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) rotate(-4deg);
  width: 100%;
  height: 100%;
  background-color: #fbca41;
  z-index: -1;
}
@media screen and (max-width: 649px) {
  .point .point-item__img--top::before {
    transform: translate(-50%, -50%) rotate(4deg);
  }
}
.point .point-item__img--top .point-item__deco {
  content: "";
  position: absolute;
  top: calc(-0.7320644217 * 1vw);
  left: 50%;
  transform: translate(-50%, -50%) rotate(4deg);
  width: calc(9.5900439239 * 1vw);
  height: calc(4.3191800878 * 1vw);
  z-index: 2;
}
@media screen and (max-width: 959px) {
  .point .point-item__img--top .point-item__deco {
    top: calc(-5.3333333333 * 1vw);
    width: calc(21.3333333333 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .point .point-item__img--top .point-item__deco {
    top: calc(-2.6666666667 * 1vw);
    width: calc(34.9333333333 * 1vw);
    height: calc(15.7333333333 * 1vw);
  }
}
.point .point-item__img--middle {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: calc(0.878477306 * 1vw);
  height: calc(3.513909224 * 1vw);
  z-index: 3;
}
@media screen and (max-width: 959px) {
  .point .point-item__img--middle {
    top: 57%;
  }
}
@media screen and (max-width: 649px) {
  .point .point-item__img--middle {
    top: 50%;
  }
}
.point .point-item__img--bottom {
  position: relative;
  transform: rotate(-4deg);
  z-index: 1;
  margin-top: calc(2.635431918 * 1vw);
  width: calc(12.0790629575 * 1vw);
}
@media screen and (max-width: 959px) {
  .point .point-item__img--bottom {
    margin-top: calc(4.2666666667 * 1vw);
    width: calc(44 * 1vw);
  }
}
.point .point-item__img--bottom::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) rotate(4deg);
  width: 100%;
  height: 100%;
  background-color: #fbca41;
  z-index: -1;
}
.point .point-item__img--bottom .point-item__deco {
  content: "";
  position: absolute;
  bottom: calc(-0.7320644217 * 1vw);
  left: 50%;
  transform: translate(-50%, 100%) rotate(4deg);
  width: calc(9.5900439239 * 1vw);
  height: calc(4.3191800878 * 1vw);
  z-index: 2;
}
.point .point-item__right {
  width: 80.8080808081%;
}
@media screen and (max-width: 1099px) {
  .point .point-item__right {
    width: 76.5193370166%;
  }
}
@media screen and (max-width: 959px) {
  .point .point-item__right {
    width: 68.9440993789%;
  }
}
@media screen and (max-width: 649px) {
  .point .point-item__right {
    width: 100%;
    padding-top: calc(4.2666666667 * 1vw);
  }
}
.point .point-item__sub {
  height: calc(2.7086383602 * 1vw);
  position: relative;
  width: fit-content;
}
@media screen and (max-width: 959px) {
  .point .point-item__sub {
    height: auto;
  }
}
@media screen and (max-width: 649px) {
  .point .point-item__sub {
    margin: 0 auto;
  }
}
.point .point-item__sub img {
  height: 100%;
  width: auto;
  object-fit: contain;
}
@media screen and (max-width: 959px) {
  .point .point-item__sub--one {
    height: calc(4.5333333333 * 1vw);
    min-height: 35px;
  }
}
@media screen and (max-width: 649px) {
  .point .point-item__sub--one {
    height: calc(8.2666666667 * 1vw);
    min-height: auto;
  }
}
@media screen and (max-width: 959px) {
  .point .point-item__sub--two {
    height: calc(9.0666666667 * 1vw);
    min-height: 70px;
  }
}
@media screen and (max-width: 649px) {
  .point .point-item__sub--two {
    height: calc(16.5333333333 * 1vw);
    min-height: auto;
  }
}
.point .point-item__sub::before {
  content: "";
  position: absolute;
  width: calc(0.7320644217 * 1vw);
  height: calc(0.7320644217 * 1vw);
  left: calc(-0.3660322108 * 1vw);
  top: 0;
  background-image: url(../img/about/point_flontdeco.png);
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  z-index: 1;
}
@media screen and (max-width: 959px) {
  .point .point-item__sub::before {
    width: calc(2.1333333333 * 1vw);
    height: calc(2.1333333333 * 1vw);
    left: calc(-2.6666666667 * 1vw);
    top: calc(1.3333333333 * 1vw);
  }
}
.point .point-item__sub::after {
  content: "";
  position: absolute;
  width: calc(0.7320644217 * 1vw);
  height: calc(0.7320644217 * 1vw);
  right: calc(-0.3660322108 * 1vw);
  top: 0;
  background-image: url(../img/about/point_backdeco.png);
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  z-index: 1;
}
@media screen and (max-width: 959px) {
  .point .point-item__sub::after {
    width: calc(2.1333333333 * 1vw);
    height: calc(2.1333333333 * 1vw);
    right: calc(-2.1333333333 * 1vw);
    top: calc(1.3333333333 * 1vw);
  }
}
.point .point-item__text {
  padding: calc(0.878477306 * 1vw) 0 0 calc(0.439238653 * 1vw);
  font-weight: 500;
}
.point .point-item__text {
  font-size: clamp(14px, 1.0248901903vw, 9999px);
  line-height: 2.0714285714;
}
@media screen and (max-width: 959px) {
  .point .point-item__text {
    font-size: clamp(0.875rem, 0.875rem + 0vw, 0.875rem);
  }
}
@media screen and (max-width: 479px) {
  .point .point-item__text {
    font-size: 14px;
    line-height: 2.0714285714 !important;
  }
}
.point .point-item__text {
  letter-spacing: 0.05em;
}
@media screen and (max-width: 959px) {
  .point .point-item__text {
    letter-spacing: 0.05em;
  }
}
@media screen and (max-width: 479px) {
  .point .point-item__text {
    letter-spacing: 0.05em;
  }
}
@media screen and (max-width: 959px) {
  .point .point-item__text {
    padding: 0;
  }
}
.point .point-item__text span {
  font-weight: 700;
  text-decoration-line: underline;
  text-decoration-style: wavy;
  text-decoration-color: #fbca41;
}
.point .point-item__text span {
  font-size: clamp(16px, 1.1713030747vw, 9999px);
  line-height: 1.8125;
}
@media screen and (max-width: 959px) {
  .point .point-item__text span {
    font-size: clamp(1rem, 1rem + 0vw, 1rem);
  }
}
@media screen and (max-width: 479px) {
  .point .point-item__text span {
    font-size: 16px;
    line-height: 1.8125 !important;
  }
}
.point .point-item__text span {
  letter-spacing: 0.05em;
}
@media screen and (max-width: 959px) {
  .point .point-item__text span {
    letter-spacing: 0.05em;
  }
}
@media screen and (max-width: 479px) {
  .point .point-item__text span {
    letter-spacing: 0.05em;
  }
}
.point .point-item__button {
  margin-top: calc(1.317715959 * 1vw);
}
@media screen and (max-width: 959px) {
  .point .point-item__button {
    width: fit-content;
    margin: calc(10.6666666667 * 1vw) auto 0;
  }
}
.point .point-item__button .circle-arrow span {
  content: "";
  width: clamp(14px, 4vw, 1.1713030747 * 1vw);
  height: clamp(14px, 4vw, 1.1713030747 * 1vw);
  background: url("../img/common/arrow-blue.png") no-repeat center/contain;
  transition: background-image 0.5s ease;
  display: block;
}
.point .point-item__summary {
  margin-top: calc(2.635431918 * 1vw);
}
@media screen and (max-width: 959px) {
  .point .point-item__summary {
    margin-top: calc(10.6666666667 * 1vw);
  }
}
.point .point-item__summary .point-summary {
  display: flex;
  align-items: stretch;
  justify-content: space-between;
}
@media screen and (max-width: 959px) {
  .point .point-item__summary .point-summary {
    flex-flow: column;
    gap: calc(3.2 * 1vw);
  }
}
.point .point-item__summary .point-summary__item {
  width: 47.5%;
  background-color: #fff;
  height: auto;
}
@media screen and (max-width: 959px) {
  .point .point-item__summary .point-summary__item {
    width: 100%;
  }
}
.point .point-item__summary .point-summary__title {
  background-color: #fbca41;
  padding: calc(0.1464128843 * 1vw) 0;
  position: relative;
}
@media screen and (max-width: 959px) {
  .point .point-item__summary .point-summary__title {
    padding: calc(0.5333333333 * 1vw) 0;
  }
}
.point .point-item__summary .point-summary__title p {
  text-align: center;
  font-weight: 700;
}
.point .point-item__summary .point-summary__title p {
  font-size: clamp(15px, 1.0980966325vw, 9999px);
  line-height: 1.4666666667;
}
@media screen and (max-width: 959px) {
  .point .point-item__summary .point-summary__title p {
    font-size: clamp(0.9375rem, 0.9375rem + 0vw, 0.9375rem);
  }
}
@media screen and (max-width: 479px) {
  .point .point-item__summary .point-summary__title p {
    font-size: 15px;
    line-height: 1.4666666667 !important;
  }
}
.point .point-item__summary .point-summary__title p {
  letter-spacing: 0.1em;
}
@media screen and (max-width: 959px) {
  .point .point-item__summary .point-summary__title p {
    letter-spacing: 0.1em;
  }
}
@media screen and (max-width: 479px) {
  .point .point-item__summary .point-summary__title p {
    letter-spacing: 0.1em;
  }
}
.point .point-item__summary .point-summary__title::before, .point .point-item__summary .point-summary__title::after {
  content: "";
  width: calc(0.3660322108 * 1vw);
  height: auto;
  aspect-ratio: 1/1;
  background-color: #fff;
  border-radius: 50%;
  position: absolute;
  top: 50%;
  left: 3%;
  transform: translate(-50%, -50%);
}
@media screen and (max-width: 959px) {
  .point .point-item__summary .point-summary__title::before, .point .point-item__summary .point-summary__title::after {
    width: calc(1.3333333333 * 1vw);
  }
}
.point .point-item__summary .point-summary__title::after {
  right: 3%;
  left: auto;
}
.point .point-item__summary .point-summary__text {
  font-weight: 500;
  padding: calc(0.5856515373 * 1vw);
}
.point .point-item__summary .point-summary__text {
  font-size: clamp(13px, 0.9516837482vw, 9999px);
  line-height: 1.5;
}
@media screen and (max-width: 959px) {
  .point .point-item__summary .point-summary__text {
    font-size: clamp(0.8125rem, 0.8125rem + 0vw, 0.8125rem);
  }
}
@media screen and (max-width: 479px) {
  .point .point-item__summary .point-summary__text {
    font-size: 13px;
    line-height: 1.5 !important;
  }
}
@media screen and (max-width: 959px) {
  .point .point-item__summary .point-summary__text {
    padding: calc(2.1333333333 * 1vw);
  }
}
.point .point-item#point02 .point-item__img--top {
  margin-top: 0;
}
.point .point-item#point02 .point-item__img--bottom {
  position: absolute;
  bottom: -50%;
  left: 10%;
  transform: translate(0%, -50%) rotate(-14deg);
  z-index: 1;
  margin-top: 0;
  width: calc(6.8814055637 * 1vw);
}
@media screen and (max-width: 959px) {
  .point .point-item#point02 .point-item__img--bottom {
    width: calc(13.3333333333 * 1vw);
    bottom: calc(-20 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .point .point-item#point02 .point-item__img--bottom {
    width: calc(28 * 1vw);
    position: relative;
    transform: translate(0, 0) rotate(14deg);
    bottom: auto;
    left: auto;
  }
}
.point .point-item#point02 .point-item__img--bottom::before {
  display: none;
}
.point .point-item#point02 .point-item__img--bottom .point-item__deco {
  content: "";
  position: absolute;
  bottom: 5%;
  left: 3%;
  transform: translate(-50%, 100%) rotate(14deg);
  width: calc(9.663250366 * 1vw);
  height: calc(3.8067349927 * 1vw);
  z-index: 2;
}
@media screen and (max-width: 959px) {
  .point .point-item#point02 .point-item__img--bottom .point-item__deco {
    width: calc(18.6666666667 * 1vw);
    bottom: 10%;
    left: 30%;
  }
}
@media screen and (max-width: 649px) {
  .point .point-item#point02 .point-item__img--bottom .point-item__deco {
    width: calc(35.2 * 1vw);
    height: calc(13.8666666667 * 1vw);
    bottom: 0;
    left: 0;
    transform: translate(0, 100%) rotate(-28deg);
  }
}
.point .point-item#point03 .point-item__img--top {
  margin-top: 0;
}
@media screen and (max-width: 959px) {
  .point .point-item#point04 .point-item__img {
    flex-direction: column;
  }
}
@media screen and (max-width: 649px) {
  .point .point-item#point04 .point-item__img {
    flex-direction: row;
    gap: calc(2.6666666667 * 1vw);
    align-items: start;
  }
}
@media screen and (max-width: 959px) {
  .point .point-item#point04 .point-item__img--top {
    width: calc(20.8 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .point .point-item#point04 .point-item__img--top {
    width: calc(39.4666666667 * 1vw);
  }
}
.point .point-item#point04 .point-item__img--top .point-item__deco {
  top: calc(-0.7320644217 * 1vw);
  left: 45%;
  transform: translate(-50%, -50%) rotate(-4deg);
  width: calc(12.4450951684 * 1vw);
  height: calc(3.4407027818 * 1vw);
}
@media screen and (max-width: 959px) {
  .point .point-item#point04 .point-item__img--top .point-item__deco {
    top: calc(-2.6666666667 * 1vw);
    width: calc(22.6666666667 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .point .point-item#point04 .point-item__img--top .point-item__deco {
    left: 50%;
    width: calc(45.3333333333 * 1vw);
    height: calc(12.5333333333 * 1vw);
    transform: translate(-50%, -50%) rotate(4deg);
  }
}
@media screen and (max-width: 959px) {
  .point .point-item#point04 .point-item__img--middle {
    width: calc(2.1333333333 * 1vw);
    height: calc(8.5333333333 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .point .point-item#point04 .point-item__img--middle {
    width: calc(3.2 * 1vw);
    height: calc(12.8 * 1vw);
    transform: translate(-50%, -50%) rotate(-45deg);
  }
}
@media screen and (max-width: 959px) {
  .point .point-item#point04 .point-item__img--bottom {
    width: calc(20.8 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .point .point-item#point04 .point-item__img--bottom {
    width: calc(39.4666666667 * 1vw);
    margin-top: calc(26.6666666667 * 1vw);
    transform: rotate(4deg);
  }
  .point .point-item#point04 .point-item__img--bottom::before {
    transform: translate(-50%, -50%) rotate(-4deg);
  }
}
.point .point-item#point04 .point-item__img--bottom .point-item__deco {
  bottom: 0;
  left: 0%;
  transform: translate(0%, 100%) rotate(4deg);
  width: calc(9.5168374817 * 1vw);
  height: calc(2.196193265 * 1vw);
}
@media screen and (max-width: 959px) {
  .point .point-item#point04 .point-item__img--bottom .point-item__deco {
    width: calc(16 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .point .point-item#point04 .point-item__img--bottom .point-item__deco {
    bottom: auto;
    top: 0;
    transform: translate(0%, -100%) rotate(-4deg);
    width: calc(34.6666666667 * 1vw);
    height: calc(8 * 1vw);
  }
}
.point .point-item#point05 .point-item__img--top .point-item__deco {
  top: calc(-0.7320644217 * 1vw);
  left: 50%;
  transform: translate(-50%, -50%) rotate(4deg);
  width: calc(12.1522693997 * 1vw);
  height: calc(4.1727672035 * 1vw);
}
@media screen and (max-width: 959px) {
  .point .point-item#point05 .point-item__img--top .point-item__deco {
    top: calc(-2.6666666667 * 1vw);
    width: calc(21.3333333333 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .point .point-item#point05 .point-item__img--top .point-item__deco {
    width: calc(44.2666666667 * 1vw);
    height: calc(15.2 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .point .point-item#point06 .point-item__img {
    transform: rotate(8deg);
  }
}
.point .point-item#point06 .point-item__img--top {
  margin-top: 0;
}
@media screen and (max-width: 959px) {
  .point .point-item#point06 .point-item__img--top {
    margin-top: calc(4 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .point .point-item#point06 .point-item__img--top {
    margin: calc(6.4 * 1vw);
  }
  .point .point-item#point06 .point-item__img--top::before {
    transform: translate(-50%, -50%) rotate(-4deg);
  }
}
.point .point-item#point06 .point-item__img--top .point-item__deco {
  top: 0;
  left: 0;
  transform: translate(-50%, -50%) rotate(-4deg) scale(-1, 1);
  width: calc(2.196193265 * 1vw);
  height: calc(2.9282576867 * 1vw);
}
@media screen and (max-width: 959px) {
  .point .point-item#point06 .point-item__img--top .point-item__deco {
    top: calc(-0.8 * 1vw);
    width: calc(4.2666666667 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .point .point-item#point06 .point-item__img--top .point-item__deco {
    top: 0;
    width: calc(8 * 1vw);
    height: calc(10.6666666667 * 1vw);
  }
}
.point .point-item#point06 .point-item__img--top .point-item__deco:last-of-type {
  top: auto;
  left: auto;
  right: 0;
  bottom: 0;
  transform: translate(50%, 50%) rotate(-4deg);
  width: calc(2.196193265 * 1vw);
  height: calc(2.9282576867 * 1vw);
}
@media screen and (max-width: 959px) {
  .point .point-item#point06 .point-item__img--top .point-item__deco:last-of-type {
    bottom: calc(1.3333333333 * 1vw);
    width: calc(4.2666666667 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .point .point-item#point06 .point-item__img--top .point-item__deco:last-of-type {
    bottom: 0;
    width: calc(8 * 1vw);
    height: calc(10.6666666667 * 1vw);
  }
}
@media screen and (max-width: 959px) {
  .point .point-item#point06 .point-item__button {
    margin-top: calc(5.3333333333 * 1vw);
  }
}
.point__circle {
  width: calc(6.9546120059 * 1vw);
  aspect-ratio: 1/1;
  height: auto;
  background-image: url(../image/about/flower.png);
  background-size: 100%;
  background-position: center;
  background-repeat: no-repeat;
  font-family: "Caveat", cursive;
  color: #2f5f98;
}

.director {
  padding: 0 0 calc(7.3206442167 * 1vw) 0;
}
@media screen and (max-width: 959px) {
  .director {
    padding: 0 0 calc(16 * 1vw) 0;
  }
}
@media screen and (max-width: 649px) {
  .director {
    padding: 0 0 calc(21.3333333333 * 1vw) 0;
  }
}
.director__inner {
  max-width: 80.5270863836%;
  width: 100%;
  margin: 0 auto;
}
@media screen and (max-width: 959px) {
  .director__inner {
    max-width: 84%;
    width: 100%;
    margin: 0 auto;
  }
}
.director__content {
  display: flex;
  justify-content: space-between;
  align-items: start;
}
@media screen and (max-width: 959px) {
  .director__content {
    flex-flow: column;
  }
}
.director__vertical {
  width: 10%;
}
@media screen and (max-width: 959px) {
  .director__vertical {
    width: 100%;
    display: flex;
    justify-content: center;
    gap: calc(10.6666666667 * 1vw);
    margin-bottom: calc(4.2666666667 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .director__vertical {
    justify-content: space-between;
    gap: 0;
    margin-bottom: calc(6.1333333333 * 1vw);
  }
}
.director__vertical .vertical-title__inner:last-child {
  margin-top: calc(2.196193265 * 1vw);
}
@media screen and (max-width: 959px) {
  .director__vertical .vertical-title__inner:last-child {
    margin-top: 0;
  }
}
.director__vertical-img img {
  object-fit: cover;
  width: 100%;
  height: 100%;
}
@media screen and (max-width: 959px) {
  .director__vertical-img {
    width: calc(29.3333333333 * 1vw);
    aspect-ratio: 3/4;
  }
}
@media screen and (max-width: 649px) {
  .director__vertical-img {
    width: calc(53.3333333333 * 1vw);
  }
}
.director__message {
  width: 85.0909090909%;
}
@media screen and (max-width: 959px) {
  .director__message {
    width: 100%;
  }
}
.director__message-box {
  display: flex;
  justify-content: space-between;
  gap: calc(1.317715959 * 1vw);
}
@media screen and (max-width: 959px) {
  .director__message-box {
    display: block;
  }
}
@media screen and (max-width: 649px) {
  .director__message-box {
    display: flex;
    flex-flow: column;
    gap: calc(4.8 * 1vw);
  }
}
.director__message-box:nth-of-type(1) {
  margin-bottom: calc(2.3426061493 * 1vw);
}
.director__message-box:nth-of-type(1) .director__message-image {
  width: auto;
  aspect-ratio: 3/4;
  height: 100%;
  background-color: #707070;
}
.director__message-box:nth-of-type(1) .director__message-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.director__message-box:nth-of-type(2) .director__message-image {
  height: auto;
  aspect-ratio: 4/2;
  width: 100%;
}
.director__message-box:nth-of-type(2) .director__message-image img {
  height: 100%;
  width: 100%;
  object-fit: cover;
}
@media screen and (max-width: 959px) {
  .director__message-box:nth-of-type(2) .director__message-image {
    float: right;
    width: calc(42.6666666667 * 1vw);
    margin: 0 0 calc(1.3333333333 * 1vw) calc(5.3333333333 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .director__message-box:nth-of-type(2) .director__message-image {
    float: none;
    width: 100%;
    margin: 0;
  }
}
.director__message-text {
  width: 72.6495726496%;
  white-space: nowrap;
  font-weight: 500;
}
.director__message-text {
  font-size: clamp(14px, 1.0248901903vw, 9999px);
  line-height: 2;
}
@media screen and (max-width: 959px) {
  .director__message-text {
    font-size: clamp(0.875rem, 0.875rem + 0vw, 0.875rem);
  }
}
@media screen and (max-width: 479px) {
  .director__message-text {
    font-size: 14px;
    line-height: 1.8214285714 !important;
  }
}
.director__message-text {
  letter-spacing: 0.05em;
}
@media screen and (max-width: 959px) {
  .director__message-text {
    letter-spacing: 0.05em;
  }
}
@media screen and (max-width: 479px) {
  .director__message-text {
    letter-spacing: 0.05em;
  }
}
@media screen and (max-width: 959px) {
  .director__message-text {
    white-space: wrap;
    width: 100%;
  }
}
.director__name {
  margin-top: calc(1.4641288433 * 1vw);
  text-align: right;
  font-weight: 700;
  color: #2f5f98;
}
.director__name {
  font-size: clamp(14px, 1.0248901903vw, 9999px);
  line-height: 2;
}
@media screen and (max-width: 959px) {
  .director__name {
    font-size: clamp(0.875rem, 0.875rem + 0vw, 0.875rem);
  }
}
@media screen and (max-width: 479px) {
  .director__name {
    font-size: 14px;
    line-height: 1.8214285714 !important;
  }
}
.director__name {
  letter-spacing: 0.05em;
}
@media screen and (max-width: 959px) {
  .director__name {
    letter-spacing: 0.05em;
  }
}
@media screen and (max-width: 479px) {
  .director__name {
    letter-spacing: 0.05em;
  }
}
@media screen and (max-width: 959px) {
  .director__name {
    margin-top: calc(5.3333333333 * 1vw);
  }
  .director__name span {
    font-size: clamp(16px, 1.1713030747vw, 9999px);
    line-height: 1.5;
  }
}
@media screen and (max-width: 959px) and (max-width: 959px) {
  .director__name span {
    font-size: clamp(0.875rem, 0.8276992936rem + 0.2018163471vw, 1rem);
  }
}
@media screen and (max-width: 959px) and (max-width: 479px) {
  .director__name span {
    font-size: 14px;
    line-height: 1.5 !important;
  }
}
@media screen and (max-width: 959px) {
  .director__name span {
    letter-spacing: 0.05em;
  }
}
@media screen and (max-width: 959px) and (max-width: 959px) {
  .director__name span {
    letter-spacing: 0.05em;
  }
}
@media screen and (max-width: 959px) and (max-width: 479px) {
  .director__name span {
    letter-spacing: 0.05em;
  }
}
.director .company__inner {
  max-width: 80.5270863836%;
  width: 100%;
  margin: 0 auto;
}

.president__inner {
  position: relative;
  margin-bottom: calc(8.78477306 * 1vw);
}
@media screen and (max-width: 959px) {
  .president__inner {
    margin-bottom: calc(16 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .president__inner {
    margin-bottom: calc(21.3333333333 * 1vw);
  }
}
.president__inner::after {
  content: "";
  width: calc(51.2445095168 * 1vw);
  height: calc(32.5768667643 * 1vw);
  position: absolute;
  bottom: calc(-2.3426061493 * 1vw);
  right: 0;
  background-color: #ffffff;
  background-image: linear-gradient(90deg, #fbca41 2px, transparent 2px), linear-gradient(#fbca41 2px, transparent 2px);
  background-position: 10px 10px;
  background-size: 22px 22px;
  z-index: -1;
  opacity: 0.25;
}
@media screen and (max-width: 959px) {
  .president__inner::after {
    width: 100%;
    height: calc(90.6666666667 * 1vw);
    max-height: 720px;
    bottom: 16%;
  }
}
@media screen and (max-width: 649px) {
  .president__inner::after {
    width: 100%;
    height: calc(100 * 1vw);
    bottom: 23%;
  }
}
.president__content {
  max-width: 64.4216691069%;
  width: 100%;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 1365px) {
  .president__content {
    max-width: 70.2781844802%;
  }
}
@media screen and (max-width: 1099px) {
  .president__content {
    max-width: 80.5270863836%;
  }
}
@media screen and (max-width: 959px) {
  .president__content {
    display: block;
    max-width: 84%;
    width: 100%;
    margin: 0 auto;
  }
}
.president__left {
  width: auto;
  display: flex;
  flex-flow: column;
  justify-content: space-between;
}
.president__left .lower-text {
  white-space: nowrap;
}
@media screen and (max-width: 959px) {
  .president__left {
    display: block;
  }
}
@media screen and (max-width: 959px) {
  .president__right {
    margin-top: calc(6.4 * 1vw);
  }
}
.president__salon {
  height: calc(22.8404099561 * 1vw);
  margin-left: calc(50% - 50vw);
  background-image: url(../img/about/president-bk_pc.png);
  background-size: contain;
  background-position: right top;
  background-repeat: no-repeat;
}
@media screen and (max-width: 959px) {
  .president__salon {
    margin: calc(6.4 * 1vw) calc(50% - 50vw) 0;
    height: calc(37.3333333333 * 1vw);
    background-image: url(../img/about/president-bk_sp.png);
    background-size: cover;
    background-position: left top;
    background-repeat: no-repeat;
  }
}
@media screen and (max-width: 649px) {
  .president__salon {
    margin: calc(12.8 * 1vw) calc(50% - 50vw) 0;
    height: calc(48 * 1vw);
  }
}
.president__salon-inner {
  margin: 0 0 0 auto;
  width: fit-content;
  height: 100%;
  display: flex;
  flex-flow: column;
  justify-content: center;
}
@media screen and (max-width: 959px) {
  .president__salon-inner {
    margin-right: calc(10.6666666667 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .president__salon-inner {
    margin-right: calc(4 * 1vw);
  }
}
.president__logo {
  width: fit-content;
  text-align: center;
}
@media screen and (max-width: 959px) {
  .president__logo {
    margin: 0 auto;
  }
}
.president__logo p {
  text-align: center;
  padding-bottom: calc(0.878477306 * 1vw);
  font-weight: 500;
}
.president__logo p {
  font-size: clamp(16px, 1.1713030747vw, 9999px);
  line-height: 1.8;
}
@media screen and (max-width: 959px) {
  .president__logo p {
    font-size: clamp(0.875rem, 0.8276992936rem + 0.2018163471vw, 1rem);
  }
}
@media screen and (max-width: 479px) {
  .president__logo p {
    font-size: 14px;
    line-height: 2.0571428571 !important;
  }
}
.president__logo p {
  letter-spacing: 0.1em;
}
@media screen and (max-width: 959px) {
  .president__logo p {
    letter-spacing: 0.1em;
  }
}
@media screen and (max-width: 479px) {
  .president__logo p {
    letter-spacing: 0.1em;
  }
}
@media screen and (max-width: 959px) {
  .president__logo p {
    padding-bottom: calc(0.5856515373 * 1vw);
  }
}
.president__logo img {
  width: calc(16.4714494876 * 1vw);
  height: auto;
  margin: 0 auto;
}
@media screen and (max-width: 959px) {
  .president__logo img {
    width: calc(37.3333333333 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .president__logo img {
    width: calc(47.2 * 1vw);
  }
}
.president__logo .text-button a {
  gap: calc(1.317715959 * 1vw);
}
.president__logo .text-button a {
  font-size: clamp(16px, 1.1713030747vw, 9999px);
  line-height: 1.5;
}
@media screen and (max-width: 959px) {
  .president__logo .text-button a {
    font-size: clamp(1rem, 1rem + 0vw, 1rem);
  }
}
@media screen and (max-width: 479px) {
  .president__logo .text-button a {
    font-size: 16px;
    line-height: 1.5 !important;
  }
}
.president__logo .text-button .circle-arrow {
  width: clamp(43px, 4vw, 3.1478770132 * 1vw);
}
.president__button {
  margin: calc(1.756954612 * 1vw) auto 0 auto;
}
.president__button .text-button a {
  gap: calc(1.317715959 * 1vw);
}
.president__button .text-button a {
  font-size: clamp(16px, 1.1713030747vw, 9999px);
  line-height: 1.5;
}
@media screen and (max-width: 959px) {
  .president__button .text-button a {
    font-size: clamp(1rem, 1rem + 0vw, 1rem);
  }
}
@media screen and (max-width: 479px) {
  .president__button .text-button a {
    font-size: 16px;
    line-height: 1.5 !important;
  }
}
.president__button .text-button .circle-arrow {
  width: clamp(43px, 4vw, 3.1478770132 * 1vw);
}
.president__button .text-button .circle-arrow span {
  content: "";
  width: clamp(14px, 4vw, 1.1713030747 * 1vw);
  height: clamp(14px, 4vw, 1.1713030747 * 1vw);
  background: url("../img/common/break-blue.svg") no-repeat center/contain;
  transition: background-image 0.5s ease;
  display: block;
}
.president__message {
  width: calc(29.7218155198 * 1vw);
  margin: 0 auto;
  box-shadow: 0px 3px 6px 0px #cecece;
  position: relative;
  cursor: pointer;
}
@media screen and (max-width: 959px) {
  .president__message {
    width: 100%;
    max-width: 480px;
  }
}
@media screen and (max-width: 649px) {
  .president__message {
    max-width: none;
  }
}
.president__message img {
  width: 100%;
  height: auto;
}
.president__message::before {
  position: absolute;
  content: "";
  background-image: url(../img/about/flower.png);
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  width: calc(3.6603221083 * 1vw);
  aspect-ratio: 1/1;
  height: auto;
  position: absolute;
  top: 0;
  right: 0;
  transform: translate(50%, -50%);
}
@media screen and (max-width: 959px) {
  .president__message::before {
    width: calc(10.6666666667 * 1vw);
  }
}
.president__message::after {
  position: absolute;
  content: "";
  background-image: url(../img/about/glass.png);
  background-size: calc(1.6105417277 * 1vw) calc(1.6105417277 * 1vw);
  background-position: center;
  background-repeat: no-repeat;
  width: calc(3.6603221083 * 1vw);
  aspect-ratio: 1/1;
  height: auto;
  position: absolute;
  top: 0;
  right: 0;
  transform: translate(50%, -50%);
}
@media screen and (max-width: 959px) {
  .president__message::after {
    width: calc(13.3333333333 * 1vw);
    background-size: calc(4.8 * 1vw);
  }
}
.president__modal-content img {
  width: 100%;
  height: auto;
}
.president .president__message-title {
  font-weight: 700;
  margin-bottom: calc(6.4 * 1vw);
}
.president .president__message-title {
  font-size: clamp(24px, 1.756954612vw, 9999px);
  line-height: 1.1666666667;
}
@media screen and (max-width: 959px) {
  .president .president__message-title {
    font-size: clamp(1.5rem, 1.5rem + 0vw, 1.5rem);
  }
}
@media screen and (max-width: 479px) {
  .president .president__message-title {
    font-size: 24px;
    line-height: 1.1666666667 !important;
  }
}
.president .president__message-title {
  letter-spacing: 0.05em;
}
@media screen and (max-width: 959px) {
  .president .president__message-title {
    letter-spacing: 0.05em;
  }
}
@media screen and (max-width: 479px) {
  .president .president__message-title {
    letter-spacing: 0.05em;
  }
}
.president .president__message-text {
  font-weight: 500;
  margin-bottom: calc(6.4 * 1vw);
  text-align: left;
}
.president .president__message-text {
  font-size: clamp(16px, 1.1713030747vw, 9999px);
  line-height: 1.575;
}
@media screen and (max-width: 959px) {
  .president .president__message-text {
    font-size: clamp(1rem, 1rem + 0vw, 1rem);
  }
}
@media screen and (max-width: 479px) {
  .president .president__message-text {
    font-size: 16px;
    line-height: 1.575 !important;
  }
}
.president .president__message-text {
  letter-spacing: 0.025em;
}
@media screen and (max-width: 959px) {
  .president .president__message-text {
    letter-spacing: 0.025em;
  }
}
@media screen and (max-width: 479px) {
  .president .president__message-text {
    letter-spacing: 0.025em;
  }
}
.president .president__message-name {
  font-weight: 900;
  text-align: right;
}
.president .president__message-name {
  font-size: clamp(16px, 1.1713030747vw, 9999px);
  line-height: 1.575;
}
@media screen and (max-width: 959px) {
  .president .president__message-name {
    font-size: clamp(1rem, 1rem + 0vw, 1rem);
  }
}
@media screen and (max-width: 479px) {
  .president .president__message-name {
    font-size: 16px;
    line-height: 1.575 !important;
  }
}
.president .president__message-name {
  letter-spacing: 0.05em;
}
@media screen and (max-width: 959px) {
  .president .president__message-name {
    letter-spacing: 0.05em;
  }
}
@media screen and (max-width: 479px) {
  .president .president__message-name {
    letter-spacing: 0.05em;
  }
}
.president .president__message-name span {
  font-size: clamp(18px, 1.317715959vw, 9999px);
  line-height: 1.4;
}
@media screen and (max-width: 959px) {
  .president .president__message-name span {
    font-size: clamp(1.125rem, 1.125rem + 0vw, 1.125rem);
  }
}
@media screen and (max-width: 479px) {
  .president .president__message-name span {
    font-size: 18px;
    line-height: 1.4 !important;
  }
}
.president .modal {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  text-align: center;
  background: rgba(0, 0, 0, 0.5);
  padding: 40px 20px;
  overflow: auto;
  opacity: 0;
  visibility: hidden;
  transition: 0.3s;
  box-sizing: border-box;
  z-index: 100;
}
.president .modal.active {
  opacity: 1;
  visibility: visible;
}
.president .modal__content {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  max-width: 56.3689604685%;
  width: 100%;
  margin: 0 auto;
  height: auto;
  background-color: #fff;
  font-family: "Zen Old Mincho", serif;
}
@media screen and (max-width: 959px) {
  .president .modal__content {
    max-width: 92%;
    width: 100%;
    margin: 0 auto;
    max-width: none !important;
    padding: calc(8.5333333333 * 1vw) calc(4 * 1vw);
    width: auto;
  }
}
.president .modal__close {
  max-width: 56.3689604685%;
  width: 100%;
  margin: 0 auto;
  margin-top: calc(1.756954612 * 1vw);
  font-weight: 500;
  background-color: #fbca41;
  padding: calc(0.7320644217 * 1vw) auto calc(0.5856515373 * 1vw);
  display: flex;
  align-items: center;
  justify-content: center;
}
.president .modal__close {
  font-size: clamp(16px, 1.1713030747vw, 9999px);
  line-height: 2.0625;
}
@media screen and (max-width: 959px) {
  .president .modal__close {
    font-size: clamp(1rem, 1rem + 0vw, 1rem);
  }
}
@media screen and (max-width: 479px) {
  .president .modal__close {
    font-size: 16px;
    line-height: 2.0625 !important;
  }
}
.president .modal__close {
  letter-spacing: 0.05em;
}
@media screen and (max-width: 959px) {
  .president .modal__close {
    letter-spacing: 0.05em;
  }
}
@media screen and (max-width: 479px) {
  .president .modal__close {
    letter-spacing: 0.05em;
  }
}
@media screen and (max-width: 959px) {
  .president .modal__close {
    width: 100%;
    max-width: none;
    margin-top: calc(3.2 * 1vw);
    padding: calc(2.6666666667 * 1vw) 0 calc(2.1333333333 * 1vw);
  }
}
.president .modal__close span {
  position: relative;
  height: 100%;
  width: 100%;
  aspect-ratio: 1/1;
  margin-left: calc(0.5856515373 * 1vw);
}
@media screen and (max-width: 959px) {
  .president .modal__close span {
    margin-left: calc(2.1333333333 * 1vw);
  }
}
.president .modal__close span::before {
  content: "";
  position: absolute;
  width: calc(0.878477306 * 1vw);
  height: 2px;
  background-color: #1c1c1c;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) rotate(-45deg);
}
@media screen and (max-width: 959px) {
  .president .modal__close span::before {
    width: calc(3.2 * 1vw);
  }
}
.president .modal__close span::after {
  content: "";
  position: absolute;
  width: calc(0.878477306 * 1vw);
  height: 2px;
  background-color: #1c1c1c;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) rotate(45deg);
}
@media screen and (max-width: 959px) {
  .president .modal__close span::after {
    width: calc(3.2 * 1vw);
  }
}

.company {
  margin-bottom: calc(7.3206442167 * 1vw);
}
@media screen and (max-width: 959px) {
  .company {
    margin-bottom: calc(16 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .company {
    margin-bottom: calc(21.3333333333 * 1vw);
  }
}
.company table {
  width: 100%;
}
.company__inner {
  max-width: 80.5270863836%;
  width: 100%;
  margin: 0 auto;
  position: relative;
}
@media screen and (max-width: 959px) {
  .company__inner {
    width: 100%;
    max-width: none;
  }
}
.company__inner::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  transform: translate(0%, 25%);
  width: calc(21.2298682284 * 1vw);
  aspect-ratio: 1/1;
  height: auto;
  background-image: repeating-linear-gradient(-45deg, #fff9d4, #fff9d4 5px, transparent 5px, transparent 10px);
  z-index: -1;
}
.company__inner::before {
  content: "";
  position: absolute;
  right: 0;
  bottom: 0;
  transform: translate(0, 25%);
  width: calc(21.2298682284 * 1vw);
  aspect-ratio: 1/1;
  height: auto;
  background-image: repeating-linear-gradient(-45deg, #fff9d4, #fff9d4 5px, transparent 5px, transparent 10px);
  z-index: -1;
}
.company__content {
  width: 80%;
  margin: 0 auto;
}
@media screen and (max-width: 959px) {
  .company__content {
    max-width: 84%;
    width: 100%;
    margin: 0 auto;
  }
}

.mark {
  padding: calc(3.6603221083 * 1vw) 0 calc(20.4978038067 * 1vw);
}
@media screen and (max-width: 959px) {
  .mark {
    padding: 0 0 calc(37.3333333333 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .mark {
    padding: 0 0 calc(48 * 1vw);
    overflow: hidden;
  }
}
@media screen and (max-width: 479px) {
  .mark {
    padding: 0 0 calc(61.3333333333 * 1vw);
  }
}
.mark__inner {
  max-width: 80.5270863836%;
  width: 100%;
  margin: 0 auto;
  background-image: url(../img/about/mark-bk.png);
  background-size: 80%;
  background-position: top center;
  background-repeat: no-repeat;
  padding-top: calc(3.6603221083 * 1vw);
}
@media screen and (max-width: 1099px) {
  .mark__inner {
    background-size: 100%;
  }
}
@media screen and (max-width: 959px) {
  .mark__inner {
    width: 100%;
    background-size: 100%;
    background-position: center;
    max-width: none;
    padding-top: 0;
  }
}
.mark__catch {
  margin: 0 auto calc(1.756954612 * 1vw);
  width: calc(28.9165446559 * 1vw);
  min-width: 395px;
}
@media screen and (max-width: 959px) {
  .mark__catch {
    margin: 0 auto calc(4.2666666667 * 1vw);
    width: 70%;
    max-width: 500px;
    min-width: auto;
  }
}
@media screen and (max-width: 649px) {
  .mark__catch {
    margin: 0 auto calc(4.2666666667 * 1vw);
    width: 100%;
    max-width: 420px;
  }
}
.mark__content {
  position: relative;
  width: fit-content;
  margin: 0 auto;
}
@media screen and (max-width: 959px) {
  .mark__content {
    max-width: 84%;
    width: 100%;
    margin: 0 auto;
  }
}
.mark__logo {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-bottom: calc(1.756954612 * 1vw);
  gap: calc(2.3426061493 * 1vw);
}
@media screen and (max-width: 959px) {
  .mark__logo {
    flex-flow: column;
    margin-bottom: calc(4.2666666667 * 1vw);
    gap: calc(1.6 * 1vw);
  }
}
.mark__logo-img {
  width: calc(11.1273792094 * 1vw);
  height: auto;
}
@media screen and (max-width: 959px) {
  .mark__logo-img {
    width: calc(21.3333333333 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .mark__logo-img {
    width: calc(25.6 * 1vw);
  }
}
.mark__logo-img img {
  width: 100%;
  height: auto;
}
.mark__logo-text {
  font-family: "Montserrat", sans-serif;
  font-weight: 700;
  color: #2f5f98;
}
.mark__logo-text {
  letter-spacing: -0.037em;
}
@media screen and (max-width: 959px) {
  .mark__logo-text {
    letter-spacing: -0.037em;
  }
}
@media screen and (max-width: 479px) {
  .mark__logo-text {
    letter-spacing: -0.037em;
  }
}
.mark__logo-text span {
  color: #fbca41;
}
.mark__logo-text {
  font-size: clamp(34px, 2.4890190337vw, 9999px);
  line-height: 1.5;
}
@media screen and (max-width: 959px) {
  .mark__logo-text {
    font-size: clamp(1.8125rem, 1.6942482341rem + 0.5045408678vw, 2.125rem);
  }
}
@media screen and (max-width: 479px) {
  .mark__logo-text {
    font-size: 29px;
    line-height: 1.5 !important;
  }
}
.mark__text {
  text-align: center;
  font-weight: 700;
}
.mark__text {
  font-size: clamp(16px, 1.1713030747vw, 9999px);
  line-height: 1.8;
}
@media screen and (max-width: 959px) {
  .mark__text {
    font-size: clamp(0.875rem, 0.8276992936rem + 0.2018163471vw, 1rem);
  }
}
@media screen and (max-width: 479px) {
  .mark__text {
    font-size: 14px;
    line-height: 1.4285714286 !important;
  }
}
.mark__text {
  letter-spacing: 0.1em;
}
@media screen and (max-width: 959px) {
  .mark__text {
    letter-spacing: 0.1em;
  }
}
@media screen and (max-width: 479px) {
  .mark__text {
    letter-spacing: 0.1em;
  }
}
.mark__meaning {
  width: calc(24.3777452416 * 1vw);
  padding: calc(1.317715959 * 1vw);
  background-image: url(../img/about/mark-paper.png);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  position: absolute;
  bottom: 0;
  right: 0;
  transform: translate(30%, 100%) rotate(-6deg);
  box-sizing: border-box;
  min-width: 333px;
}
@media screen and (max-width: 959px) {
  .mark__meaning {
    width: calc(58.6666666667 * 1vw);
    padding: calc(3.2 * 1vw);
    bottom: -10%;
    right: 15%;
    transform: translate(12%, 100%) rotate(-3deg);
    min-width: auto;
  }
}
@media screen and (max-width: 649px) {
  .mark__meaning {
    width: calc(72 * 1vw);
    bottom: -5%;
    right: 0;
  }
}
.mark__meaning::after {
  content: "";
  background-image: url(../img/about/mark-arrow.png);
  background-size: 100%;
  background-position: center;
  background-repeat: no-repeat;
  width: calc(8.78477306 * 1vw);
  aspect-ratio: 1/1;
  height: auto;
  position: absolute;
  top: 10%;
  right: 0;
  transform: translate(0%, -100%) rotate(9deg);
}
@media screen and (max-width: 959px) {
  .mark__meaning::after {
    width: calc(18.6666666667 * 1vw);
    transform: translate(0%, -100%) rotate(9deg);
  }
}
@media screen and (max-width: 959px) {
  .mark__meaning::after {
    width: calc(24 * 1vw);
    right: -6%;
  }
}
.mark__meaning-title {
  width: calc(9.8096632504 * 1vw);
  margin-bottom: calc(0.5856515373 * 1vw);
  min-width: 134px;
}
@media screen and (max-width: 959px) {
  .mark__meaning-title {
    width: calc(22.9333333333 * 1vw);
    margin-bottom: calc(1.6 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .mark__meaning-title {
    width: calc(31.2 * 1vw);
    min-width: 117px;
    margin-bottom: calc(1.6 * 1vw);
  }
}
.mark__meaning-text {
  color: #2f5f98;
  font-weight: 700;
}
.mark__meaning-text {
  letter-spacing: 0em;
}
@media screen and (max-width: 959px) {
  .mark__meaning-text {
    letter-spacing: 0em;
  }
}
@media screen and (max-width: 479px) {
  .mark__meaning-text {
    letter-spacing: 0em;
  }
}
.mark__meaning-text {
  font-size: clamp(13px, 0.9516837482vw, 9999px);
  line-height: 1.8;
}
@media screen and (max-width: 959px) {
  .mark__meaning-text {
    font-size: clamp(0.75rem, 0.7263496468rem + 0.1009081736vw, 0.8125rem);
  }
}
@media screen and (max-width: 479px) {
  .mark__meaning-text {
    font-size: 12px;
    line-height: 1.5 !important;
  }
}

@media screen and (max-width: 649px) {
  .accordion {
    position: relative;
  }
  /* ボタン */
  .accordion-btn {
    background-color: #2f5f98;
    bottom: 0;
    color: #fff;
    cursor: pointer;
    display: inline-block;
    font-size: 12px;
    left: 0;
    margin: auto;
    padding: 4px 44px;
    position: absolute;
    right: 0;
    text-align: center;
    transition: all 0.1s;
    width: fit-content;
    z-index: 1;
    border-radius: 20px;
  }
  /* 続きを読むボタンの表記 */
  .accordion-btn::after {
    content: "続きを読む";
  }
  /* ボタンhover時のスタイル */
  .accordion-btn:hover {
    background-color: #fff;
    color: #2f5f98;
    border: solid 1px #2f5f98;
  }
  .accordion-text {
    overflow: hidden;
    max-height: 140px;
    transition: max-height 0.5s ease-in-out;
    position: relative;
  }
  .accordion-text.is-show {
    max-height: 1000px;
  }
  /* テキストをグラデーションで隠す */
  .accordion-text::before {
    background: -webkit-linear-gradient(top, rgba(255, 249, 212, 0) 0%, rgba(255, 249, 212, 0.9) 50%, rgba(255, 249, 212, 0.9) 50%, #fff9d4 100%);
    background: linear-gradient(top, rgba(255, 249, 212, 0) 0%, rgba(255, 249, 212, 0.9) 50%, rgba(255, 249, 212, 0.9) 50%, #fff9d4 100%);
    bottom: 0;
    content: "";
    height: calc(12.2666666667 * 1vw);
    /* グラデーションで隠す高さ */
    position: absolute;
    width: 100%;
    opacity: 1;
    transition: opacity 0.1s ease;
  }
  /* 閉じるボタンの位置 */
  .accordion-btn.is-show {
    bottom: -2em;
  }
  /* 閉じるボタンの表記 */
  .accordion-btn.is-show::after {
    content: "閉じる";
  }
  /* 続きを見るボタンをクリックしたらテキストを隠しているグラデーションを消す */
  .accordion-text.is-show::before {
    opacity: 0;
  }
}
.program-about {
  margin: calc(7.3206442167 * 1vw) 0;
}
@media screen and (max-width: 959px) {
  .program-about {
    margin: calc(10.6666666667 * 1vw) 0 calc(16 * 1vw) 0;
  }
}
@media screen and (max-width: 649px) {
  .program-about {
    margin: calc(10.6666666667 * 1vw) 0 calc(18.6666666667 * 1vw) 0;
  }
}
@media screen and (max-width: 479px) {
  .program-about {
    margin: calc(10.6666666667 * 1vw) 0 calc(29.3333333333 * 1vw) 0;
  }
}
.program-about__inner {
  position: relative;
}
.program-about__content {
  display: flex;
  justify-content: space-between;
  max-width: 80.5270863836%;
  width: 100%;
  margin: 0 auto;
}
@media screen and (max-width: 959px) {
  .program-about__content {
    flex-flow: column-reverse;
    max-width: 84%;
    width: 100%;
    margin: 0 auto;
  }
}
.program-about__left {
  width: 70%;
}
@media screen and (max-width: 959px) {
  .program-about__left {
    width: 100%;
    margin-top: calc(6.4 * 1vw);
  }
}
.program-about__title .lower-title {
  text-align: left;
}
.program-about__text {
  font-weight: 500;
}
.program-about__text {
  font-size: clamp(16px, 1.1713030747vw, 9999px);
  line-height: 2;
}
@media screen and (max-width: 959px) {
  .program-about__text {
    font-size: clamp(1rem, 1rem + 0vw, 1rem);
  }
}
@media screen and (max-width: 479px) {
  .program-about__text {
    font-size: 16px;
    line-height: 1.8 !important;
  }
}
.program-about__text {
  letter-spacing: 0.1em;
}
@media screen and (max-width: 959px) {
  .program-about__text {
    letter-spacing: 0.1em;
  }
}
@media screen and (max-width: 479px) {
  .program-about__text {
    letter-spacing: 0.1em;
  }
}
.program-about__situation {
  display: flex;
  justify-content: space-between;
  align-items: end;
  margin-top: calc(4.0263543192 * 1vw);
}
@media screen and (max-width: 959px) {
  .program-about__situation {
    margin-top: calc(6.4 * 1vw);
    display: block;
    position: relative;
  }
}
.program-about__situation .situation-deco {
  width: 22.4675324675%;
  position: relative;
  z-index: 1;
}
@media screen and (max-width: 959px) {
  .program-about__situation .situation-deco {
    width: auto;
    position: absolute;
    right: 0;
    bottom: 0;
    display: flex;
    justify-content: center;
    transform: translate(0%, 40%);
  }
}
.program-about__situation .situation-deco::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: calc(9.5168374817 * 1vw);
  aspect-ratio: 1/1;
  height: auto;
  background-image: repeating-linear-gradient(-45deg, #fbca41, #fbca41 5px, transparent 5px, transparent 10px);
  z-index: -1;
}
@media screen and (max-width: 959px) {
  .program-about__situation .situation-deco::after {
    right: 0;
    left: auto;
    bottom: calc(2.6666666667 * 1vw);
    width: calc(21.3333333333 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .program-about__situation .situation-deco::after {
    bottom: calc(4 * 1vw);
  }
}
.program-about__situation .situation-deco__bubble {
  width: calc(10.2489019034 * 1vw);
  margin-bottom: calc(-0.7320644217 * 1vw);
  height: auto;
}
@media screen and (max-width: 959px) {
  .program-about__situation .situation-deco__bubble {
    width: calc(21.3333333333 * 1vw);
    margin-bottom: 0;
    margin-right: calc(2.1333333333 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .program-about__situation .situation-deco__bubble {
    margin-right: 0;
  }
}
@media screen and (max-width: 479px) {
  .program-about__situation .situation-deco__bubble {
    width: calc(32 * 1vw);
    margin-right: calc(-5.3333333333 * 1vw);
  }
}
.program-about__situation .situation-deco__teacher {
  width: calc(9.5168374817 * 1vw);
  height: auto;
  margin: 0 0 0 auto;
}
@media screen and (max-width: 959px) {
  .program-about__situation .situation-deco__teacher {
    margin: 0 calc(2.6666666667 * 1vw) 0 auto;
    width: calc(19.2 * 1vw);
    transform: scale(-1, 1);
    margin-top: calc(-2.6666666667 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .program-about__situation .situation-deco__teacher {
    margin-top: calc(2.6666666667 * 1vw);
  }
}
@media screen and (max-width: 479px) {
  .program-about__situation .situation-deco__teacher {
    width: calc(25.6 * 1vw);
    margin-top: calc(7.4666666667 * 1vw);
  }
}
.program-about__situation .situation {
  width: 71.4285714286%;
}
@media screen and (max-width: 959px) {
  .program-about__situation .situation {
    width: 80%;
  }
}
@media screen and (max-width: 649px) {
  .program-about__situation .situation {
    width: 100%;
  }
}
.program-about__situation .situation__title {
  clip-path: polygon(0 0, 90% 0, 100% 100%, 0% 100%);
  padding: calc(1.1713030747 * 1vw) calc(2.9282576867 * 1vw) calc(0.2928257687 * 1vw) calc(1.756954612 * 1vw);
  width: fit-content;
  background-color: #fff9d4;
  color: #2f5f98;
  font-weight: 700;
}
.program-about__situation .situation__title {
  font-size: clamp(18px, 1.317715959vw, 9999px);
  line-height: 1;
}
@media screen and (max-width: 959px) {
  .program-about__situation .situation__title {
    font-size: clamp(1rem, 0.9526992936rem + 0.2018163471vw, 1.125rem);
  }
}
@media screen and (max-width: 479px) {
  .program-about__situation .situation__title {
    font-size: 16px;
    line-height: 1 !important;
  }
}
.program-about__situation .situation__title {
  letter-spacing: 0.1em;
}
@media screen and (max-width: 959px) {
  .program-about__situation .situation__title {
    letter-spacing: 0.1em;
  }
}
@media screen and (max-width: 479px) {
  .program-about__situation .situation__title {
    letter-spacing: 0.1em;
  }
}
@media screen and (max-width: 959px) {
  .program-about__situation .situation__title {
    padding: calc(2.6666666667 * 1vw) calc(6.4 * 1vw) calc(1.0666666667 * 1vw) calc(4.2666666667 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .program-about__situation .situation__title {
    padding: calc(3.2 * 1vw) calc(7.4666666667 * 1vw) calc(1.0666666667 * 1vw) calc(3.7333333333 * 1vw);
  }
}
.program-about__situation .situation__list {
  padding: calc(2.3426061493 * 1vw);
  background-color: #fff9d4;
  display: flex;
  justify-content: space-between;
  align-items: end;
  flex-wrap: wrap;
  gap: calc(1.756954612 * 1vw) calc(1.1713030747 * 1vw);
}
@media screen and (max-width: 959px) {
  .program-about__situation .situation__list {
    padding: calc(5.3333333333 * 1vw);
    gap: calc(2.6666666667 * 1vw) calc(6.9333333333 * 1vw);
    justify-content: flex-start;
    align-items: stretch;
  }
}
@media screen and (max-width: 649px) {
  .program-about__situation .situation__list {
    padding: calc(6.4 * 1vw);
    gap: calc(2.6666666667 * 1vw) calc(6.6666666667 * 1vw);
  }
}
@media screen and (max-width: 479px) {
  .program-about__situation .situation__list {
    padding: calc(4.2666666667 * 1vw);
    gap: calc(4.2666666667 * 1vw);
  }
}
.program-about__situation .situation__item {
  width: 16.4609053498%;
  display: flex;
  flex-flow: column;
  justify-content: end;
  align-items: center;
  gap: calc(0.5856515373 * 1vw);
}
@media screen and (max-width: 959px) {
  .program-about__situation .situation__item {
    width: 15.3550863724%;
    gap: calc(1.6 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .program-about__situation .situation__item {
    width: 17.4736842105%;
    gap: calc(1.6 * 1vw);
  }
}
@media screen and (max-width: 479px) {
  .program-about__situation .situation__item {
    width: 29.3286219081%;
    gap: 8px calc(4.2666666667 * 1vw);
  }
}
.program-about__situation .situation__item p {
  color: #2f5f98;
  text-align: center;
  font-weight: 500;
  white-space: nowrap;
}
.program-about__situation .situation__item p {
  font-size: clamp(14px, 1.0248901903vw, 9999px);
  line-height: 1;
}
@media screen and (max-width: 959px) {
  .program-about__situation .situation__item p {
    font-size: clamp(0.875rem, 0.875rem + 0vw, 0.875rem);
  }
}
@media screen and (max-width: 479px) {
  .program-about__situation .situation__item p {
    font-size: 14px;
    line-height: 1 !important;
  }
}
.program-about__situation .situation__item p {
  letter-spacing: 0em;
}
@media screen and (max-width: 959px) {
  .program-about__situation .situation__item p {
    letter-spacing: 0em;
  }
}
@media screen and (max-width: 479px) {
  .program-about__situation .situation__item p {
    letter-spacing: 0em;
  }
}
.program-about__situation .situation__img {
  width: calc(3.6603221083 * 1vw);
  height: auto;
  aspect-ratio: 1/1;
  margin: 0 auto;
}
@media screen and (max-width: 959px) {
  .program-about__situation .situation__img {
    width: calc(6.4 * 1vw);
  }
}
@media screen and (max-width: 479px) {
  .program-about__situation .situation__img {
    width: calc(12 * 1vw);
  }
}
.program-about__situation .situation__img img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  aspect-ratio: 1/1;
}
.program-about__right {
  width: 25%;
}
@media screen and (max-width: 959px) {
  .program-about__right {
    width: 100%;
    position: relative;
    padding-bottom: calc(32 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .program-about__right {
    padding-bottom: calc(40 * 1vw);
  }
}
@media screen and (max-width: 479px) {
  .program-about__right {
    padding-bottom: calc(20.2666666667 * 1vw);
  }
}
.program-about__vertical {
  width: 80%;
  z-index: 1;
}
@media screen and (max-width: 959px) {
  .program-about__vertical {
    width: 39.5833333333%;
    margin: calc(2.6666666667 * 1vw) calc(10.6666666667 * 1vw) 0 auto;
  }
}
@media screen and (max-width: 649px) {
  .program-about__vertical {
    width: 53.3333333333%;
    margin: 0 0 0 auto;
  }
}
@media screen and (max-width: 959px) {
  .program-about__vertical .vertical-title {
    width: 100%;
  }
}
.program-about__vertical .vertical-title__inner::after {
  content: "";
  right: 0;
  top: 0;
  position: absolute;
  width: 1px;
  height: 100%;
  background-color: #2f5f98;
}
.program-about__vertical .vertical-title__inner:before {
  content: "";
  left: 0;
  top: 0;
  position: absolute;
  width: 1px;
  height: 100%;
  background-color: #2f5f98;
}
.program-about__vertical .vertical-title__inner:nth-of-type(1)::before, .program-about__vertical .vertical-title__inner:nth-of-type(2)::before, .program-about__vertical .vertical-title__inner:nth-of-type(3)::before {
  display: none;
}
.program-about__img {
  position: absolute;
  bottom: 0;
  right: 0;
  z-index: -1;
  width: calc(25.8418740849 * 1vw);
}
@media screen and (max-width: 959px) {
  .program-about__img {
    width: calc(32 * 1vw);
    right: auto;
    left: calc(10.6666666667 * 1vw);
    min-width: 300px;
  }
}
@media screen and (max-width: 649px) {
  .program-about__img {
    width: calc(50.1333333333 * 1vw);
    min-width: auto;
    left: 0;
  }
}

.program-contents {
  margin: 0 auto calc(7.3206442167 * 1vw) auto;
}
@media screen and (max-width: 959px) {
  .program-contents {
    margin-bottom: calc(8 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .program-contents {
    margin-bottom: calc(10.6666666667 * 1vw);
  }
}
.program-contents__catch {
  padding-bottom: calc(1.1713030747 * 1vw);
  position: relative;
  text-align: center;
  font-weight: 700;
  color: #2f5f98;
  width: fit-content;
  margin: 0 auto;
}
.program-contents__catch {
  font-size: clamp(22px, 1.6105417277vw, 9999px);
  line-height: 1.2727272727;
}
@media screen and (max-width: 959px) {
  .program-contents__catch {
    font-size: clamp(1.125rem, 1.0303985873rem + 0.4036326942vw, 1.375rem);
  }
}
@media screen and (max-width: 479px) {
  .program-contents__catch {
    font-size: 18px;
    line-height: 1.6111111111 !important;
  }
}
.program-contents__catch {
  letter-spacing: 0.2em;
}
@media screen and (max-width: 959px) {
  .program-contents__catch {
    letter-spacing: 0.2em;
  }
}
@media screen and (max-width: 479px) {
  .program-contents__catch {
    letter-spacing: 0.2em;
  }
}
@media screen and (max-width: 959px) {
  .program-contents__catch {
    padding-bottom: calc(2.1333333333 * 1vw);
  }
}
.program-contents__catch--xl {
  font-weight: 900;
}
.program-contents__catch--xl {
  font-size: clamp(28px, 2.0497803807vw, 9999px);
  line-height: 1;
}
@media screen and (max-width: 959px) {
  .program-contents__catch--xl {
    font-size: clamp(1.375rem, 1.2330978809rem + 0.6054490414vw, 1.75rem);
  }
}
@media screen and (max-width: 479px) {
  .program-contents__catch--xl {
    font-size: 22px;
    line-height: 1.3181818182 !important;
  }
}
.program-contents__catch--lg {
  font-size: clamp(25px, 1.8301610542vw, 9999px);
  line-height: 1.12;
}
@media screen and (max-width: 959px) {
  .program-contents__catch--lg {
    font-size: clamp(1.125rem, 0.9594475277rem + 0.7063572149vw, 1.5625rem);
  }
}
@media screen and (max-width: 479px) {
  .program-contents__catch--lg {
    font-size: 18px;
    line-height: 1.6111111111 !important;
  }
}
.program-contents__catch::after {
  content: "";
  width: 108%;
  height: calc(0.0732064422 * 1vw);
  background-color: #fbca41;
  position: absolute;
  bottom: 0;
  left: 49%;
  transform: translate(-50%, -50%);
}
@media screen and (max-width: 959px) {
  .program-contents__catch::after {
    height: calc(0.2666666667 * 1vw);
  }
}
.program-contents__catch::before {
  content: "";
  width: 100vw;
  height: calc(0.0732064422 * 1vw);
  background-color: #c8c8c8;
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translate(-50%, -50%);
}
@media screen and (max-width: 959px) {
  .program-contents__catch::before {
    height: calc(0.2666666667 * 1vw);
  }
}
.program-contents__catch p {
  position: relative;
}
.program-contents__catch p::before, .program-contents__catch p::after {
  content: "";
  width: calc(0.7320644217 * 1vw);
  height: calc(1.4641288433 * 1vw);
  background-image: url(../img/program/content-deco.png);
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  position: absolute;
  top: 0;
  left: -3%;
  transform: translate(0%, 40%);
}
@media screen and (max-width: 959px) {
  .program-contents__catch p::before, .program-contents__catch p::after {
    top: 50%;
    left: -6%;
    transform: translate(-50%, -50%);
    width: calc(2.6666666667 * 1vw);
    height: calc(5.3333333333 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .program-contents__catch p::before, .program-contents__catch p::after {
    left: -8%;
  }
}
.program-contents__catch p::after {
  left: auto;
  right: -2%;
  transform: translate(0%, 40%) scale(-1, 1);
}
@media screen and (max-width: 959px) {
  .program-contents__catch p::after {
    top: 50%;
    right: -8%;
    transform: translate(-50%, -50%) scale(-1, 1);
  }
}
@media screen and (max-width: 649px) {
  .program-contents__catch p::after {
    top: 50%;
    right: -10%;
  }
}
.program-contents__inner {
  position: relative;
}
.program-contents__inner::after {
  content: "";
  position: absolute;
  bottom: 0;
  right: 0;
  width: calc(25.4758418741 * 1vw);
  height: calc(33.9677891654 * 1vw);
  background-color: #fff9d4;
  z-index: -1;
}
@media screen and (max-width: 959px) {
  .program-contents__inner::after {
    width: 90%;
    height: calc(50.6666666667 * 1vw);
    max-width: 660px;
    max-height: 420px;
    bottom: calc(2.1333333333 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .program-contents__inner::after {
    width: 78%;
    height: calc(90.6666666667 * 1vw);
    max-height: none;
    min-height: 500px;
    bottom: calc(4.2666666667 * 1vw);
  }
}
@media screen and (max-width: 479px) {
  .program-contents__inner::after {
    width: 78%;
    max-height: 460px;
    height: calc(112 * 1vw);
    min-height: 420px;
  }
}
.program-contents__content {
  max-width: 80.5270863836%;
  width: 100%;
  margin: 0 auto;
  margin-top: calc(2.635431918 * 1vw);
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 959px) {
  .program-contents__content {
    display: block;
    max-width: 92%;
    width: 100%;
    margin: 0 auto;
  }
}
.program-contents__left {
  width: 55%;
}
@media screen and (max-width: 959px) {
  .program-contents__left {
    width: 100%;
  }
}
.program-contents__right {
  width: 40%;
}
@media screen and (max-width: 959px) {
  .program-contents__right {
    width: 100%;
  }
}
@media screen and (max-width: 959px) {
  .program-contents__graph {
    margin-top: calc(8 * 1vw);
  }
}
.program-contents__graph .graph__title {
  margin-bottom: calc(0.878477306 * 1vw);
  padding-left: calc(1.0980966325 * 1vw);
  position: relative;
  font-weight: 500;
}
.program-contents__graph .graph__title {
  font-size: clamp(20px, 1.4641288433vw, 9999px);
  line-height: 1.5;
}
@media screen and (max-width: 959px) {
  .program-contents__graph .graph__title {
    font-size: clamp(1rem, 0.9053985873rem + 0.4036326942vw, 1.25rem);
  }
}
@media screen and (max-width: 479px) {
  .program-contents__graph .graph__title {
    font-size: 16px;
    line-height: 1.5 !important;
  }
}
.program-contents__graph .graph__title {
  letter-spacing: 0.1em;
}
@media screen and (max-width: 959px) {
  .program-contents__graph .graph__title {
    letter-spacing: 0.1em;
  }
}
@media screen and (max-width: 479px) {
  .program-contents__graph .graph__title {
    letter-spacing: 0.1em;
  }
}
@media screen and (max-width: 1099px) {
  .program-contents__graph .graph__title {
    margin-bottom: calc(4.39238653 * 1vw);
  }
}
@media screen and (max-width: 959px) {
  .program-contents__graph .graph__title {
    margin-bottom: calc(3.2 * 1vw);
    padding-left: calc(2.6666666667 * 1vw);
  }
}
.program-contents__graph .graph__title span {
  font-weight: 700;
  color: #2f5f98;
  margin: 0 calc(0.1464128843 * 1vw);
  padding: calc(0.1464128843 * 1vw) calc(0.1464128843 * 1vw) 0 calc(0.5856515373 * 1vw);
  border: solid 1px #fbca41;
}
.program-contents__graph .graph__title span {
  font-size: clamp(22px, 1.6105417277vw, 9999px);
  line-height: 1.2727272727;
}
@media screen and (max-width: 959px) {
  .program-contents__graph .graph__title span {
    font-size: clamp(1.125rem, 1.0303985873rem + 0.4036326942vw, 1.375rem);
  }
}
@media screen and (max-width: 479px) {
  .program-contents__graph .graph__title span {
    font-size: 18px;
    line-height: 1.8888888889 !important;
  }
}
.program-contents__graph .graph__title span {
  letter-spacing: 0.2em;
}
@media screen and (max-width: 959px) {
  .program-contents__graph .graph__title span {
    letter-spacing: 0.2em;
  }
}
@media screen and (max-width: 479px) {
  .program-contents__graph .graph__title span {
    letter-spacing: 0.2em;
  }
}
@media screen and (max-width: 959px) {
  .program-contents__graph .graph__title span {
    margin: 0 calc(0.5333333333 * 1vw);
    padding: calc(0.5333333333 * 1vw) calc(1.0666666667 * 1vw) calc(0.5333333333 * 1vw) calc(2.1333333333 * 1vw);
  }
}
.program-contents__graph .graph__title::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  transform: translate(0%, -50%);
  width: calc(0.2928257687 * 1vw);
  height: calc(1.9765739385 * 1vw);
  background-color: #2f5f98;
}
@media screen and (max-width: 959px) {
  .program-contents__graph .graph__title::after {
    width: calc(0.8 * 1vw);
    height: calc(4.5333333333 * 1vw);
  }
}
.program-contents__graph .graph__img {
  width: 100%;
}
@media screen and (max-width: 959px) {
  .program-contents__graph .graph__img {
    max-width: 660px;
    margin: 0 auto;
  }
}
@media screen and (max-width: 649px) {
  .program-contents__graph .graph__img {
    width: 100%;
  }
}
.program-contents__detail .detail {
  background-color: #fff;
  border: solid 2px #fbca41;
  text-align: center;
  padding: calc(4.5387994143 * 1vw) calc(2.9282576867 * 1vw) calc(2.3426061493 * 1vw);
}
@media screen and (max-width: 959px) {
  .program-contents__detail .detail {
    margin: calc(5.3333333333 * 1vw) auto 0;
    padding: calc(10.6666666667 * 1vw) calc(4.2666666667 * 1vw) calc(4.2666666667 * 1vw);
    width: 100%;
    max-width: 660px;
    box-sizing: border-box;
  }
}
@media screen and (max-width: 649px) {
  .program-contents__detail .detail {
    margin-top: calc(10.6666666667 * 1vw);
    padding: calc(15.2 * 1vw) calc(8 * 1vw) calc(7.4666666667 * 1vw);
  }
}
.program-contents__detail .detail__title {
  font-weight: 700;
  color: #2f5f98;
}
.program-contents__detail .detail__title {
  font-size: clamp(20px, 1.4641288433vw, 9999px);
  line-height: 1.3;
}
@media screen and (max-width: 959px) {
  .program-contents__detail .detail__title {
    font-size: clamp(1.125rem, 1.0776992936rem + 0.2018163471vw, 1.25rem);
  }
}
@media screen and (max-width: 479px) {
  .program-contents__detail .detail__title {
    font-size: 18px;
    line-height: 1.2777777778 !important;
  }
}
.program-contents__detail .detail__title {
  letter-spacing: 0.1em;
}
@media screen and (max-width: 959px) {
  .program-contents__detail .detail__title {
    letter-spacing: 0.1em;
  }
}
@media screen and (max-width: 479px) {
  .program-contents__detail .detail__title {
    letter-spacing: 0.1em;
  }
}
.program-contents__detail .detail__title span {
  content: "";
  width: 0.5em;
  position: relative;
  display: inline-block;
}
.program-contents__detail .detail__title span::after {
  content: "";
  position: absolute;
  top: calc(-0.7320644217 * 1vw);
  left: 0;
  transform: translate(-50%, -100%);
  width: calc(6.5153733529 * 1vw);
  height: calc(3.6603221083 * 1vw);
  background-image: url(../img/program/content-bubble_pc.png);
  background-size: 100%;
  background-position: center;
  background-repeat: no-repeat;
}
@media screen and (max-width: 1099px) {
  .program-contents__detail .detail__title span::after {
    top: calc(-1.0980966325 * 1vw);
  }
}
@media screen and (max-width: 959px) {
  .program-contents__detail .detail__title span::after {
    width: calc(16 * 1vw);
    height: calc(9.0666666667 * 1vw);
    top: calc(-1.0666666667 * 1vw);
    left: calc(-0.8 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .program-contents__detail .detail__title span::after {
    width: calc(20 * 1vw);
    height: calc(11.4666666667 * 1vw);
    top: calc(-2.6666666667 * 1vw);
    left: 0;
  }
}
.program-contents__detail .detail__list {
  margin: calc(1.1713030747 * 1vw) 0;
}
@media screen and (max-width: 959px) {
  .program-contents__detail .detail__list {
    margin: calc(2.6666666667 * 1vw) 0 calc(4.2666666667 * 1vw);
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
}
@media screen and (max-width: 649px) {
  .program-contents__detail .detail__list {
    margin: calc(4.2666666667 * 1vw) 0 calc(5.3333333333 * 1vw);
    display: block;
  }
}
.program-contents__detail .detail__list-item {
  font-weight: 700;
  padding: calc(0.5856515373 * 1vw) 0;
  border-bottom: #fbca41 1px dashed;
}
.program-contents__detail .detail__list-item {
  font-size: clamp(14px, 1.0248901903vw, 9999px);
  line-height: 1.5;
}
@media screen and (max-width: 959px) {
  .program-contents__detail .detail__list-item {
    font-size: clamp(0.875rem, 0.875rem + 0vw, 0.875rem);
  }
}
@media screen and (max-width: 479px) {
  .program-contents__detail .detail__list-item {
    font-size: 14px;
    line-height: 1.5 !important;
  }
}
.program-contents__detail .detail__list-item {
  letter-spacing: 0.05em;
}
@media screen and (max-width: 959px) {
  .program-contents__detail .detail__list-item {
    letter-spacing: 0.05em;
  }
}
@media screen and (max-width: 479px) {
  .program-contents__detail .detail__list-item {
    letter-spacing: 0.05em;
  }
}
@media screen and (max-width: 959px) {
  .program-contents__detail .detail__list-item {
    padding: calc(1.6 * 1vw) 0;
    width: 48%;
  }
}
@media screen and (max-width: 649px) {
  .program-contents__detail .detail__list-item {
    padding: calc(2.1333333333 * 1vw) 0;
    width: 100%;
  }
}
.program-contents__detail .detail__list-item:first-child {
  border-top: #fbca41 1px dashed;
}
@media screen and (max-width: 959px) {
  .program-contents__detail .detail__list-item:nth-child(2) {
    border-top: #fbca41 1px dashed;
  }
}
@media screen and (max-width: 649px) {
  .program-contents__detail .detail__list-item:nth-child(2) {
    border-top: none;
  }
}
.program-contents__detail .detail__summary {
  font-weight: 700;
  color: #2f5f98;
  position: relative;
  z-index: 1;
  padding: 0 calc(1.4641288433 * 1vw);
  width: fit-content;
  margin: 0 auto;
  z-index: 1;
  position: relative;
}
.program-contents__detail .detail__summary {
  font-size: clamp(17px, 1.2445095168vw, 9999px);
  line-height: 1.5;
}
@media screen and (max-width: 959px) {
  .program-contents__detail .detail__summary {
    font-size: clamp(1rem, 0.9763496468rem + 0.1009081736vw, 1.0625rem);
  }
}
@media screen and (max-width: 479px) {
  .program-contents__detail .detail__summary {
    font-size: 16px;
    line-height: 1.5 !important;
  }
}
.program-contents__detail .detail__summary {
  letter-spacing: 0.05em;
}
@media screen and (max-width: 959px) {
  .program-contents__detail .detail__summary {
    letter-spacing: 0em;
  }
}
@media screen and (max-width: 479px) {
  .program-contents__detail .detail__summary {
    letter-spacing: 0em;
  }
}
@media screen and (max-width: 959px) {
  .program-contents__detail .detail__summary {
    padding: 0 calc(3.2 * 1vw);
  }
}
.program-contents__detail .detail__summary::after {
  left: auto;
  right: 0;
  transform: translate(25%, -50%);
}
.program-contents__detail .detail__summary span {
  position: relative;
}
.program-contents__detail .detail__summary span::before {
  content: "";
  position: absolute;
  width: calc(2.9282576867 * 1vw);
  aspect-ratio: 1/1;
  height: auto;
  background-color: #fbca41;
  border-radius: calc(1.4641288433 * 1vw);
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: -1;
}
@media screen and (max-width: 1099px) {
  .program-contents__detail .detail__summary span::before {
    width: calc(3.2210834553 * 1vw);
    border-radius: calc(1.6105417277 * 1vw);
  }
}
@media screen and (max-width: 959px) {
  .program-contents__detail .detail__summary span::before {
    width: calc(5.3333333333 * 1vw);
    border-radius: calc(4.2666666667 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .program-contents__detail .detail__summary span::before {
    width: calc(8.5333333333 * 1vw);
  }
}

.program-features__inner {
  background-color: #fff9d4;
  position: relative;
  clip-path: polygon(50% calc(2.635431918 * 1vw), 100% 0, 100% 100%, 0 100%, 0 0);
  width: 100%;
  overflow: hidden;
}
@media screen and (max-width: 959px) {
  .program-features__inner {
    clip-path: polygon(50% calc(10.6666666667 * 1vw), 100% 0, 100% 100%, 0 100%, 0 0);
  }
}
.program-features__inner::after, .program-features__inner::before {
  content: "";
  width: calc(28.5505124451 * 1vw);
  border-radius: calc(13.5431918009 * 1vw);
  aspect-ratio: 1/1;
  height: auto;
  position: absolute;
  top: 0;
  left: 0;
  transform: translate(-40%, -40%);
  opacity: 0.5;
  background-image: repeating-linear-gradient(45deg, #fbca41, #fbca41 5px, transparent 5px, transparent 10px);
}
@media screen and (max-width: 959px) {
  .program-features__inner::after, .program-features__inner::before {
    width: calc(32 * 1vw);
    border-radius: calc(16 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .program-features__inner::after, .program-features__inner::before {
    width: calc(39.4666666667 * 1vw);
    border-radius: calc(19.7333333333 * 1vw);
  }
}
.program-features__inner::before {
  content: "";
  width: calc(19.0336749634 * 1vw);
  border-radius: calc(9.5168374817 * 1vw);
  top: auto;
  left: auto;
  bottom: 0;
  right: 0;
  transform: translate(40%, 40%);
  opacity: 0.5;
}
@media screen and (max-width: 959px) {
  .program-features__inner::before {
    width: calc(32 * 1vw);
    border-radius: calc(16 * 1vw);
    transform: translate(40%, 50%);
  }
}
@media screen and (max-width: 649px) {
  .program-features__inner::before {
    width: calc(39.4666666667 * 1vw);
    border-radius: calc(19.7333333333 * 1vw);
  }
}
.program-features__content {
  padding: calc(7.3206442167 * 1vw) 0;
  max-width: 80.5270863836%;
  width: 100%;
  margin: 0 auto;
}
@media screen and (max-width: 959px) {
  .program-features__content {
    max-width: 84%;
    width: 100%;
    margin: 0 auto;
    padding: calc(16 * 1vw) 0;
  }
}
@media screen and (max-width: 649px) {
  .program-features__content {
    padding: calc(21.3333333333 * 1vw) 0;
  }
}
.program-features__title .lower-title {
  margin-bottom: calc(0.5856515373 * 1vw);
}
@media screen and (max-width: 959px) {
  .program-features__title .lower-title {
    margin-bottom: calc(4.2666666667 * 1vw);
  }
}
.program-features__title .lower-text {
  font-weight: 700;
  color: #2f5f98;
}
.program-features__title .lower-text {
  font-size: clamp(16px, 1.1713030747vw, 9999px);
  line-height: 1.8;
}
@media screen and (max-width: 959px) {
  .program-features__title .lower-text {
    font-size: clamp(1rem, 1rem + 0vw, 1rem);
  }
}
@media screen and (max-width: 479px) {
  .program-features__title .lower-text {
    font-size: 16px;
    line-height: 1.5 !important;
  }
}
.program-features__benefits {
  margin-top: calc(2.9282576867 * 1vw);
}
@media screen and (max-width: 959px) {
  .program-features__benefits {
    margin-top: calc(5.3333333333 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .program-features__benefits {
    margin-top: calc(8.5333333333 * 1vw);
  }
}
.program-features__benefits .benefits {
  display: flex;
  align-items: stretch;
  margin-left: calc(0.5856515373 * 1vw);
}
@media screen and (max-width: 959px) {
  .program-features__benefits .benefits {
    display: block;
    margin-left: 0;
    margin-bottom: calc(2.1333333333 * 1vw);
  }
}
.program-features__benefits .benefits__list-item {
  width: 33.3%;
  height: auto;
  padding: calc(1.1713030747 * 1vw) calc(2.9282576867 * 1vw) calc(1.1713030747 * 1vw) calc(3.3674963397 * 1vw);
  background-color: #fff;
  border-radius: calc(0.5856515373 * 1vw) 0 0 calc(0.5856515373 * 1vw);
  margin-left: calc(-0.5856515373 * 1vw);
}
@media screen and (max-width: 959px) {
  .program-features__benefits .benefits__list-item {
    width: auto;
    margin-left: calc(0 * 1vw);
    margin-bottom: calc(-2.1333333333 * 1vw);
    padding: calc(4.2666666667 * 1vw) calc(4.2666666667 * 1vw) calc(6.4 * 1vw) calc(10.1333333333 * 1vw);
    border-radius: calc(2.1333333333 * 1vw) calc(2.1333333333 * 1vw) 0 0;
  }
}
.program-features__benefits .benefits__list-item:nth-child(2) {
  background-color: #ffebb4;
}
.program-features__benefits .benefits__list-item:nth-child(2) .benefits__list-title::after {
  background-color: #fbca41;
}
.program-features__benefits .benefits__list-item:nth-child(3) {
  background-color: #fbca41;
  border-radius: calc(0.5856515373 * 1vw);
}
@media screen and (max-width: 959px) {
  .program-features__benefits .benefits__list-item:nth-child(3) {
    border-radius: calc(2.1333333333 * 1vw);
    padding-bottom: calc(4.2666666667 * 1vw);
  }
}
.program-features__benefits .benefits__list-item:nth-child(3) .benefits__list-title::after {
  background-color: #fff;
}
.program-features__benefits .benefits__list-title {
  font-weight: 700;
  position: relative;
}
.program-features__benefits .benefits__list-title {
  font-size: clamp(16px, 1.1713030747vw, 9999px);
  line-height: 1.5;
}
@media screen and (max-width: 959px) {
  .program-features__benefits .benefits__list-title {
    font-size: clamp(0.875rem, 0.8276992936rem + 0.2018163471vw, 1rem);
  }
}
@media screen and (max-width: 479px) {
  .program-features__benefits .benefits__list-title {
    font-size: 14px;
    line-height: 1.5 !important;
  }
}
.program-features__benefits .benefits__list-title {
  letter-spacing: 0.1em;
}
@media screen and (max-width: 959px) {
  .program-features__benefits .benefits__list-title {
    letter-spacing: 0.1em;
  }
}
@media screen and (max-width: 479px) {
  .program-features__benefits .benefits__list-title {
    letter-spacing: 0.1em;
  }
}
@media screen and (max-width: 1099px) {
  .program-features__benefits .benefits__list-title {
    min-height: 3em;
  }
}
@media screen and (max-width: 959px) {
  .program-features__benefits .benefits__list-title {
    min-height: 0;
  }
}
.program-features__benefits .benefits__list-title::after {
  content: "";
  position: absolute;
  top: 50%;
  left: -3%;
  transform: translate(-100%, -50%) rotate(-45deg);
  width: calc(0.7320644217 * 1vw);
  aspect-ratio: 1/1;
  height: 1;
  background-color: #ffebb4;
}
@media screen and (max-width: 1099px) {
  .program-features__benefits .benefits__list-title::after {
    top: 28%;
  }
}
@media screen and (max-width: 959px) {
  .program-features__benefits .benefits__list-title::after {
    width: calc(2.1333333333 * 1vw);
    top: 50%;
  }
}
.program-features__benefits .benefits__list-text {
  margin-top: calc(0.2928257687 * 1vw);
  font-weight: 500;
}
.program-features__benefits .benefits__list-text {
  font-size: clamp(14px, 1.0248901903vw, 9999px);
  line-height: 1.5;
}
@media screen and (max-width: 959px) {
  .program-features__benefits .benefits__list-text {
    font-size: clamp(0.875rem, 0.875rem + 0vw, 0.875rem);
  }
}
@media screen and (max-width: 479px) {
  .program-features__benefits .benefits__list-text {
    font-size: 14px;
    line-height: 1.5 !important;
  }
}
.program-features__benefits .benefits__list-text {
  letter-spacing: 0.05em;
}
@media screen and (max-width: 959px) {
  .program-features__benefits .benefits__list-text {
    letter-spacing: 0.05em;
  }
}
@media screen and (max-width: 479px) {
  .program-features__benefits .benefits__list-text {
    letter-spacing: 0.05em;
  }
}
@media screen and (max-width: 1099px) {
  .program-features__benefits .benefits__list-text br {
    display: none;
  }
}
@media screen and (max-width: 649px) {
  .program-features__benefits .benefits__list-text br {
    display: block;
  }
}
@media screen and (max-width: 959px) {
  .program-features__benefits .benefits__list-text {
    margin-top: calc(0.5333333333 * 1vw);
  }
}
.program-features__cycle {
  margin-top: calc(5.8565153734 * 1vw);
}
@media screen and (max-width: 959px) {
  .program-features__cycle {
    margin-top: calc(10.1333333333 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .program-features__cycle {
    margin-top: calc(12.8 * 1vw);
  }
}
.program-features__cycle .cycle__title {
  font-weight: 700;
  position: relative;
  padding-bottom: calc(0.5856515373 * 1vw);
  width: fit-content;
  margin: 0 auto;
}
.program-features__cycle .cycle__title {
  font-size: clamp(20px, 1.4641288433vw, 9999px);
  line-height: 1.4;
}
@media screen and (max-width: 959px) {
  .program-features__cycle .cycle__title {
    font-size: clamp(1.125rem, 1.0776992936rem + 0.2018163471vw, 1.25rem);
  }
}
@media screen and (max-width: 479px) {
  .program-features__cycle .cycle__title {
    font-size: 18px;
    line-height: 1.1666666667 !important;
  }
}
.program-features__cycle .cycle__title {
  letter-spacing: 0.1em;
}
@media screen and (max-width: 959px) {
  .program-features__cycle .cycle__title {
    letter-spacing: 0.1em;
  }
}
@media screen and (max-width: 479px) {
  .program-features__cycle .cycle__title {
    letter-spacing: 0.1em;
  }
}
@media screen and (max-width: 959px) {
  .program-features__cycle .cycle__title {
    padding-bottom: calc(2.1333333333 * 1vw);
  }
}
.program-features__cycle .cycle__title::after {
  content: "";
  width: 80%;
  height: calc(0.1464128843 * 1vw);
  background-color: #fbca41;
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translate(-50%, 0%);
}
@media screen and (max-width: 959px) {
  .program-features__cycle .cycle__title::after {
    height: calc(0.5333333333 * 1vw);
  }
}
.program-features__cycle .cycle__list {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  row-gap: calc(5.5636896047 * 1vw);
  margin-top: calc(1.756954612 * 1vw);
  position: relative;
}
@media screen and (max-width: 959px) {
  .program-features__cycle .cycle__list {
    row-gap: calc(12 * 1vw);
    margin: calc(2.6666666667 * 1vw) auto 0;
    width: 70%;
  }
}
@media screen and (max-width: 649px) {
  .program-features__cycle .cycle__list {
    row-gap: calc(30.6666666667 * 1vw);
    margin: calc(5.3333333333 * 1vw) auto 0;
    width: 100%;
  }
}
.program-features__cycle .cycle__list-item {
  display: flex;
  justify-content: space-between;
  width: 43.6363636364%;
  align-items: center;
}
@media screen and (max-width: 959px) {
  .program-features__cycle .cycle__list-item {
    width: 35.4609929078%;
  }
}
@media screen and (max-width: 649px) {
  .program-features__cycle .cycle__list-item {
    width: 38.0952380952%;
  }
}
.program-features__cycle .cycle__list-item:nth-of-type(odd) {
  flex-flow: row-reverse;
  text-align: right;
}
@media screen and (max-width: 959px) {
  .program-features__cycle .cycle__list-item:nth-of-type(2) .cycle__list-title::before {
    content: "02";
  }
}
@media screen and (max-width: 959px) {
  .program-features__cycle .cycle__list-item:nth-of-type(3) .cycle__list-title::before {
    content: "04";
  }
}
@media screen and (max-width: 959px) {
  .program-features__cycle .cycle__list-item:nth-of-type(4) .cycle__list-title::before {
    content: "03";
  }
}
@media screen and (max-width: 959px) {
  .program-features__cycle .cycle__list-item:nth-of-type(4) .cycle__list-title--one {
    max-height: calc(5.8666666667 * 1vw);
  }
  .program-features__cycle .cycle__list-item:nth-of-type(4) .cycle__list-title--one img {
    height: 100%;
  }
}
@media screen and (max-width: 649px) {
  .program-features__cycle .cycle__list-item:nth-of-type(4) .cycle__list-title--one {
    max-height: calc(10.6666666667 * 1vw);
  }
}
.program-features__cycle .cycle__text {
  font-weight: 700;
  width: 59.5833333333%;
  position: relative;
}
.program-features__cycle .cycle__text {
  font-size: clamp(14px, 1.0248901903vw, 9999px);
  line-height: 2;
}
@media screen and (max-width: 959px) {
  .program-features__cycle .cycle__text {
    font-size: clamp(0.875rem, 0.875rem + 0vw, 0.875rem);
  }
}
@media screen and (max-width: 479px) {
  .program-features__cycle .cycle__text {
    font-size: 14px;
    line-height: 1.8 !important;
  }
}
.program-features__cycle .cycle__text {
  letter-spacing: 0.05em;
}
@media screen and (max-width: 959px) {
  .program-features__cycle .cycle__text {
    letter-spacing: 0.025em;
  }
}
@media screen and (max-width: 479px) {
  .program-features__cycle .cycle__text {
    letter-spacing: 0.025em;
  }
}
@media screen and (max-width: 959px) {
  .program-features__cycle .cycle__text {
    width: auto;
    padding-left: calc(8 * 1vw);
    counter-increment: cycle2;
  }
}
@media screen and (max-width: 649px) {
  .program-features__cycle .cycle__text {
    width: auto;
    margin: 0 0 calc(5.3333333333 * 1vw) auto;
    padding-left: calc(11.7333333333 * 1vw);
  }
  .program-features__cycle .cycle__text:last-of-type {
    margin-bottom: 0;
  }
}
@media screen and (max-width: 959px) {
  .program-features__cycle .cycle__text::after {
    content: counter(cycle2, decimal-leading-zero);
    color: #fff;
    font-family: "Caveat", cursive;
    width: calc(6.4 * 1vw);
    height: auto;
    aspect-ratio: 1/1;
    border-radius: calc(4.8 * 1vw);
    position: absolute;
    top: 0;
    left: 0;
    background-color: #fbca41;
    display: flex;
    align-items: center;
    justify-content: center;
    padding-right: calc(0.5333333333 * 1vw);
    box-sizing: border-box;
  }
  .program-features__cycle .cycle__text::after {
    font-size: clamp(28px, 2.0497803807vw, 9999px);
    line-height: 1;
  }
}
@media screen and (max-width: 959px) and (max-width: 959px) {
  .program-features__cycle .cycle__text::after {
    font-size: clamp(1rem, 0.7161957619rem + 1.2108980827vw, 1.75rem);
  }
}
@media screen and (max-width: 959px) and (max-width: 479px) {
  .program-features__cycle .cycle__text::after {
    font-size: 16px;
    line-height: 1 !important;
  }
}
@media screen and (max-width: 649px) {
  .program-features__cycle .cycle__text::after {
    width: calc(9.6 * 1vw);
  }
}
.program-features__cycle .cycle__list-title {
  background-color: #fbca41;
  max-width: 37.5%;
  width: 100%;
  aspect-ratio: 1/1;
  height: auto;
  border-radius: 50%;
  display: flex;
  align-items: center;
}
@media screen and (max-width: 959px) {
  .program-features__cycle .cycle__list-title {
    max-width: none;
    position: relative;
    flex-flow: column;
    justify-content: center;
    gap: calc(1.3333333333 * 1vw);
  }
  .program-features__cycle .cycle__list-title::before {
    content: "01";
    display: block;
    font-family: "Caveat", cursive;
    color: #fff;
    font-weight: 700;
    padding-right: calc(1.3333333333 * 1vw);
    box-sizing: border-box;
  }
  .program-features__cycle .cycle__list-title::before {
    font-size: clamp(45px, 3.2942898975vw, 9999px);
    line-height: 1;
  }
}
@media screen and (max-width: 959px) and (max-width: 959px) {
  .program-features__cycle .cycle__list-title::before {
    font-size: clamp(1.5rem, 1.0033425832rem + 2.1190716448vw, 2.8125rem);
  }
}
@media screen and (max-width: 959px) and (max-width: 479px) {
  .program-features__cycle .cycle__list-title::before {
    font-size: 24px;
    line-height: 1 !important;
  }
}
@media screen and (max-width: 649px) {
  .program-features__cycle .cycle__list-title {
    gap: calc(2.1333333333 * 1vw);
  }
}
.program-features__cycle .cycle__list-title--one {
  max-height: calc(1.8301610542 * 1vw);
  height: 100%;
  width: auto;
  margin: 0 auto;
}
@media screen and (max-width: 959px) {
  .program-features__cycle .cycle__list-title--one {
    max-height: calc(5.8666666667 * 1vw);
    height: 100%;
  }
}
@media screen and (max-width: 649px) {
  .program-features__cycle .cycle__list-title--one {
    max-height: calc(10.6666666667 * 1vw);
    height: 100%;
  }
}
.program-features__cycle .cycle__list-title--one img {
  height: 100%;
  width: auto;
  max-width: none;
}
@media screen and (max-width: 959px) {
  .program-features__cycle .cycle__list-title--one img {
    height: calc(2.9333333333 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .program-features__cycle .cycle__list-title--one img {
    height: calc(5.3333333333 * 1vw);
  }
}
.program-features__cycle .cycle__list-title--two {
  max-height: calc(4.0263543192 * 1vw);
  height: 100%;
  width: auto;
  margin: 0 auto;
}
@media screen and (max-width: 959px) {
  .program-features__cycle .cycle__list-title--two {
    max-height: calc(5.8666666667 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .program-features__cycle .cycle__list-title--two {
    max-height: calc(10.6666666667 * 1vw);
  }
}
.program-features__cycle .cycle__list-title--two img {
  height: 100%;
  width: auto;
  max-width: none;
}
.program-features__cycle .cycle__center {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background-color: #ffebb4;
  width: calc(29.2825768668 * 1vw);
  aspect-ratio: 1/1;
  height: auto;
  border-radius: calc(14.6412884334 * 1vw);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: -1;
}
@media screen and (max-width: 959px) {
  .program-features__cycle .cycle__center {
    width: calc(48 * 1vw);
    border-radius: calc(24 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .program-features__cycle .cycle__center {
    width: calc(74.6666666667 * 1vw);
    border-radius: calc(37.3333333333 * 1vw);
  }
}
.program-features__cycle .cycle__center-item {
  background-image: url(../img/program/features-img.png);
  background-size: 100%;
  background-position: center;
  background-repeat: no-repeat;
  width: calc(20.4978038067 * 1vw);
  aspect-ratio: 1/1;
  height: auto;
  text-align: center;
  font-weight: 700;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
}
@media screen and (max-width: 959px) {
  .program-features__cycle .cycle__center-item {
    width: calc(32 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .program-features__cycle .cycle__center-item {
    width: calc(58.6666666667 * 1vw);
  }
}
.program-features__cycle .cycle__center-item p {
  margin-top: calc(5.8565153734 * 1vw);
  color: #fff;
}
.program-features__cycle .cycle__center-item p {
  font-size: clamp(22px, 1.6105417277vw, 9999px);
  line-height: 1.6181818182;
}
@media screen and (max-width: 959px) {
  .program-features__cycle .cycle__center-item p {
    font-size: clamp(1.25rem, 1.2026992936rem + 0.2018163471vw, 1.375rem);
  }
}
@media screen and (max-width: 479px) {
  .program-features__cycle .cycle__center-item p {
    font-size: 20px;
    line-height: 1.35 !important;
  }
}
.program-features__cycle .cycle__center-item p {
  letter-spacing: 0.2em;
}
@media screen and (max-width: 959px) {
  .program-features__cycle .cycle__center-item p {
    letter-spacing: 0.2em;
  }
}
@media screen and (max-width: 479px) {
  .program-features__cycle .cycle__center-item p {
    letter-spacing: 0.2em;
  }
}
@media screen and (max-width: 1365px) {
  .program-features__cycle .cycle__center-item p {
    font-size: 18px;
  }
}
@media screen and (max-width: 959px) {
  .program-features__cycle .cycle__center-item p {
    margin-top: calc(10.6666666667 * 1vw);
  }
  .program-features__cycle .cycle__center-item p {
    font-size: clamp(22px, 1.6105417277vw, 9999px);
    line-height: 1.6181818182;
  }
}
@media screen and (max-width: 959px) and (max-width: 959px) {
  .program-features__cycle .cycle__center-item p {
    font-size: clamp(1.25rem, 1.2026992936rem + 0.2018163471vw, 1.375rem);
  }
}
@media screen and (max-width: 959px) and (max-width: 479px) {
  .program-features__cycle .cycle__center-item p {
    font-size: 20px;
    line-height: 1.35 !important;
  }
}
.program-features__cycle .cycle__center-item--line {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: calc(24.8901903367 * 1vw);
  aspect-ratio: 1/1;
  height: auto;
  border: dotted calc(0.2928257687 * 1vw) #fff;
  border-radius: calc(13.17715959 * 1vw);
}
@media screen and (max-width: 959px) {
  .program-features__cycle .cycle__center-item--line {
    width: calc(40 * 1vw);
    border: dotted calc(0.8 * 1vw) #fff;
    border-radius: calc(20 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .program-features__cycle .cycle__center-item--line {
    width: calc(64 * 1vw);
    border: dotted calc(1.0666666667 * 1vw) #fff;
    border-radius: calc(32 * 1vw);
  }
}
.program-features__cycle .cycle__center-item--side-arrow, .program-features__cycle .cycle__center-item--top-arrow {
  content: "";
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: calc(24.8901903367 * 1vw);
  height: calc(0.878477306 * 1vw);
}
@media screen and (max-width: 959px) {
  .program-features__cycle .cycle__center-item--side-arrow, .program-features__cycle .cycle__center-item--top-arrow {
    width: calc(40 * 1vw);
    height: calc(2.6666666667 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .program-features__cycle .cycle__center-item--side-arrow, .program-features__cycle .cycle__center-item--top-arrow {
    width: calc(64 * 1vw);
    height: calc(2.6666666667 * 1vw);
  }
}
.program-features__cycle .cycle__center-item--side-arrow::before, .program-features__cycle .cycle__center-item--side-arrow::after, .program-features__cycle .cycle__center-item--top-arrow::before, .program-features__cycle .cycle__center-item--top-arrow::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: calc(0.7320644217 * 1vw);
  height: calc(0.878477306 * 1vw);
  transform: translate(-70%, 0%);
  background-image: url(../img/program/content-arrow.png);
  background-size: 100%;
  background-position: center;
  background-repeat: no-repeat;
}
@media screen and (max-width: 959px) {
  .program-features__cycle .cycle__center-item--side-arrow::before, .program-features__cycle .cycle__center-item--side-arrow::after, .program-features__cycle .cycle__center-item--top-arrow::before, .program-features__cycle .cycle__center-item--top-arrow::after {
    width: calc(1.6 * 1vw);
    height: calc(2.6666666667 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .program-features__cycle .cycle__center-item--side-arrow::before, .program-features__cycle .cycle__center-item--side-arrow::after, .program-features__cycle .cycle__center-item--top-arrow::before, .program-features__cycle .cycle__center-item--top-arrow::after {
    width: calc(2.1333333333 * 1vw);
    height: calc(2.6666666667 * 1vw);
  }
}
.program-features__cycle .cycle__center-item--side-arrow::after, .program-features__cycle .cycle__center-item--top-arrow::after {
  content: "";
  right: 0;
  left: auto;
  bottom: 0;
  transform: translate(70%, 0%) scale(1, -1);
}
.program-features__cycle .cycle__center-item--top-arrow {
  transform: translate(-50%, -50%) rotate(90deg);
}
@media screen and (max-width: 959px) {
  .program-features__cycle .cycle__text-wrapper.sp_only {
    display: grid !important;
    grid-template-columns: 1fr 1fr;
    gap: calc(3.7333333333 * 1vw) calc(2.6666666667 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .program-features__cycle .cycle__text-wrapper.sp_only {
    display: block !important;
  }
}
@media screen and (max-width: 959px) {
  .program-features__cycle .cycle__text-wrapper {
    margin-top: calc(5.3333333333 * 1vw);
    counter-reset: cycle2;
  }
}
@media screen and (max-width: 649px) {
  .program-features__cycle .cycle__text-wrapper {
    margin-top: calc(8 * 1vw);
  }
}

.price {
  margin: calc(7.3206442167 * 1vw) 0;
}
@media screen and (max-width: 959px) {
  .price {
    margin: calc(5.8565153734 * 1vw) 0 0 0;
  }
}
.price__content {
  max-width: 80.5270863836%;
  width: 100%;
  margin: 0 auto;
}
@media screen and (max-width: 959px) {
  .price__content {
    width: 100%;
    max-width: none;
  }
}
.price__plan {
  display: flex;
  justify-content: space-between;
  gap: calc(4.0263543192 * 1vw);
  counter-reset: price;
}
@media screen and (max-width: 1099px) {
  .price__plan {
    flex-wrap: wrap;
    gap: calc(2.9282576867 * 1vw);
    justify-content: center;
  }
}
@media screen and (max-width: 649px) {
  .price__plan {
    flex-flow: column;
    flex-wrap: nowrap;
    gap: calc(8.5333333333 * 1vw);
    width: 100%;
    max-width: 84%;
    width: 100%;
    margin: 0 auto;
  }
}
.price .price-card {
  counter-increment: price;
  background-color: #fff9d4;
  padding: calc(1.756954612 * 1vw) calc(1.756954612 * 1vw) calc(2.635431918 * 1vw);
  position: relative;
  z-index: 1;
  border-bottom: solid 1px #2f5f98;
  width: calc(333.3333333333 * 1vw);
}
@media screen and (max-width: 1099px) {
  .price .price-card {
    width: 42%;
  }
}
@media screen and (max-width: 649px) {
  .price .price-card {
    width: auto;
    padding: calc(5.3333333333 * 1vw) calc(4.2666666667 * 1vw) calc(8.5333333333 * 1vw);
  }
}
.price .price-card__tag {
  content: "";
  position: absolute;
  top: 0%;
  left: 0%;
  clip-path: polygon(0 0, 0% 100%, 100% 0);
  width: calc(4.5387994143 * 1vw);
  height: auto;
  aspect-ratio: 1/1;
  background-color: #2f5f98;
  z-index: 2;
}
@media screen and (max-width: 959px) {
  .price .price-card__tag {
    width: calc(8 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .price .price-card__tag {
    width: calc(16 * 1vw);
    max-width: 60px;
  }
}
.price .price-card__tag::before {
  content: counter(price, decimal-leading-zero);
  transform: translate(0%, 0%) rotate(-45deg);
  position: absolute;
  top: 0%;
  left: 0%;
  color: #fff;
  width: calc(2.3426061493 * 1vw);
  height: auto;
  aspect-ratio: 1/1;
  font-weight: 700;
  z-index: 3;
  display: flex;
  align-items: end;
  justify-content: center;
  text-align: center;
}
.price .price-card__tag::before {
  font-size: clamp(16px, 1.1713030747vw, 9999px);
  line-height: 1;
}
@media screen and (max-width: 959px) {
  .price .price-card__tag::before {
    font-size: clamp(1rem, 1rem + 0vw, 1rem);
  }
}
@media screen and (max-width: 479px) {
  .price .price-card__tag::before {
    font-size: 16px;
    line-height: 1 !important;
  }
}
@media screen and (max-width: 959px) {
  .price .price-card__tag::before {
    width: calc(4 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .price .price-card__tag::before {
    width: calc(8 * 1vw);
    max-width: 30px;
  }
}
.price .price-card__title {
  color: #2f5f98;
  font-weight: 700;
  font-family: "Caveat", cursive;
  position: relative;
  z-index: 1;
  text-align: center;
  margin-bottom: calc(1.4641288433 * 1vw);
}
.price .price-card__title {
  font-size: clamp(28px, 2.0497803807vw, 9999px);
  line-height: 1.4642857143;
}
@media screen and (max-width: 959px) {
  .price .price-card__title {
    font-size: clamp(1.75rem, 1.75rem + 0vw, 1.75rem);
  }
}
@media screen and (max-width: 479px) {
  .price .price-card__title {
    font-size: 28px;
    line-height: 1.4642857143 !important;
  }
}
.price .price-card__title {
  letter-spacing: 0.2em;
}
@media screen and (max-width: 959px) {
  .price .price-card__title {
    letter-spacing: 0.2em;
  }
}
@media screen and (max-width: 479px) {
  .price .price-card__title {
    letter-spacing: 0.2em;
  }
}
@media screen and (max-width: 959px) {
  .price .price-card__title {
    margin-bottom: calc(5.3333333333 * 1vw);
  }
}
.price .price-card__title--big {
  font-size: clamp(41px, 3.0014641288vw, 9999px);
  line-height: 1;
}
@media screen and (max-width: 959px) {
  .price .price-card__title--big {
    font-size: clamp(2.5625rem, 2.5625rem + 0vw, 2.5625rem);
  }
}
@media screen and (max-width: 479px) {
  .price .price-card__title--big {
    font-size: 41px;
    line-height: 1 !important;
  }
}
.price .price-card__title::before {
  content: "";
  width: 105%;
  height: calc(0.1464128843 * 1vw);
  position: absolute;
  bottom: calc(-0.5856515373 * 1vw);
  left: calc(-1.756954612 * 1vw);
  transform: translate(0%, 0%);
  border-bottom: 1px #2f5f98 dashed;
}
@media screen and (max-width: 959px) {
  .price .price-card__title::before {
    width: 100%;
    height: calc(0.5333333333 * 1vw);
    bottom: calc(-2.1333333333 * 1vw);
    left: calc(-1.3333333333 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .price .price-card__title::before {
    left: calc(-4.2666666667 * 1vw);
  }
}
.price .price-card__title::after {
  content: "";
  width: calc(1.317715959 * 1vw);
  height: auto;
  aspect-ratio: 1/1;
  background-image: url(../img/program/price-plane.png);
  background-size: 100%;
  background-position: center;
  background-repeat: no-repeat;
  position: absolute;
  bottom: calc(-0.5856515373 * 1vw);
  right: calc(-1.1713030747 * 1vw);
  transform: translate(0%, 45%);
}
@media screen and (max-width: 959px) {
  .price .price-card__title::after {
    width: calc(2.4 * 1vw);
    bottom: calc(-2.1333333333 * 1vw);
    right: calc(-1.3333333333 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .price .price-card__title::after {
    width: calc(4.8 * 1vw);
    right: calc(-3.2 * 1vw);
  }
}
.price .price-card__title-bk {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  color: #fff;
  width: 100%;
  height: auto;
  z-index: -1;
  -webkit-text-stroke-width: calc(0.2196193265 * 1vw);
  -webkit-text-stroke-color: #fff;
}
@media screen and (max-width: 959px) {
  .price .price-card__title-bk {
    -webkit-text-stroke-width: calc(0.8 * 1vw);
  }
}
.price .price-card__text {
  font-weight: 500;
  margin-bottom: calc(0.5856515373 * 1vw);
}
.price .price-card__text {
  font-size: clamp(14px, 1.0248901903vw, 9999px);
  line-height: 1.5;
}
@media screen and (max-width: 959px) {
  .price .price-card__text {
    font-size: clamp(0.875rem, 0.875rem + 0vw, 0.875rem);
  }
}
@media screen and (max-width: 479px) {
  .price .price-card__text {
    font-size: 14px;
    line-height: 1.5 !important;
  }
}
.price .price-card__text {
  letter-spacing: 0.05em;
}
@media screen and (max-width: 959px) {
  .price .price-card__text {
    letter-spacing: 0.05em;
  }
}
@media screen and (max-width: 479px) {
  .price .price-card__text {
    letter-spacing: 0.05em;
  }
}
@media screen and (max-width: 959px) {
  .price .price-card__text {
    margin-bottom: calc(2.1333333333 * 1vw);
  }
}
.price .price-card__price {
  display: flex;
  justify-content: center;
  align-items: end;
  gap: calc(1.756954612 * 1vw);
  position: relative;
  padding-bottom: calc(0.878477306 * 1vw);
}
@media screen and (max-width: 1365px) {
  .price .price-card__price {
    display: block;
    text-align: center;
  }
}
@media screen and (max-width: 1099px) {
  .price .price-card__price {
    display: flex;
    text-align: left;
  }
}
@media screen and (max-width: 959px) {
  .price .price-card__price {
    gap: calc(3.2 * 1vw);
    padding-bottom: calc(2.1333333333 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .price .price-card__price {
    gap: calc(6.4 * 1vw);
    padding-bottom: calc(3.2 * 1vw);
  }
}
.price .price-card__price::after {
  content: "";
  width: 100%;
  height: calc(0.7320644217 * 1vw);
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translate(-50%, 0%);
  background: url(../img/common/under.png) bottom repeat-x;
  background-size: calc(1.2445095168 * 1vw);
}
@media screen and (max-width: 959px) {
  .price .price-card__price::after {
    background-size: calc(4.5333333333 * 1vw);
  }
}
@media screen and (max-width: 959px) {
  .price .price-card__price::after {
    height: calc(1.0666666667 * 1vw);
    background-size: calc(2.6666666667 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .price .price-card__price::after {
    height: calc(2.6666666667 * 1vw);
    background-size: calc(4 * 1vw);
  }
}
.price .price-card__price .price-standard {
  color: #2f5f98;
  font-weight: 700;
}
.price .price-card__price .price-standard {
  font-size: clamp(16px, 1.1713030747vw, 9999px);
  line-height: 2;
}
@media screen and (max-width: 959px) {
  .price .price-card__price .price-standard {
    font-size: clamp(1rem, 1rem + 0vw, 1rem);
  }
}
@media screen and (max-width: 479px) {
  .price .price-card__price .price-standard {
    font-size: 16px;
    line-height: 2 !important;
  }
}
.price .price-card__price .price-standard {
  letter-spacing: 0.05em;
}
@media screen and (max-width: 959px) {
  .price .price-card__price .price-standard {
    letter-spacing: 0.05em;
  }
}
@media screen and (max-width: 479px) {
  .price .price-card__price .price-standard {
    letter-spacing: 0.05em;
  }
}
.price .price-card__price .price-value {
  color: #2f5f98;
  font-weight: 700;
}
.price .price-card__price .price-value {
  font-size: clamp(45px, 3.2942898975vw, 9999px);
  line-height: 1;
}
@media screen and (max-width: 959px) {
  .price .price-card__price .price-value {
    font-size: clamp(2.8125rem, 2.8125rem + 0vw, 2.8125rem);
  }
}
@media screen and (max-width: 479px) {
  .price .price-card__price .price-value {
    font-size: 45px;
    line-height: 1 !important;
  }
}
.price .price-card__price .price-value {
  letter-spacing: 0.05em;
}
@media screen and (max-width: 959px) {
  .price .price-card__price .price-value {
    letter-spacing: 0.05em;
  }
}
@media screen and (max-width: 479px) {
  .price .price-card__price .price-value {
    letter-spacing: 0.05em;
  }
}
.price .price-card__price .price-value--small {
  font-size: clamp(24px, 1.756954612vw, 9999px);
  line-height: 1;
}
@media screen and (max-width: 959px) {
  .price .price-card__price .price-value--small {
    font-size: clamp(1.5rem, 1.5rem + 0vw, 1.5rem);
  }
}
@media screen and (max-width: 479px) {
  .price .price-card__price .price-value--small {
    font-size: 24px;
    line-height: 1 !important;
  }
}
.price .price-card__campaign {
  margin-top: calc(1.4641288433 * 1vw);
}
@media screen and (max-width: 959px) {
  .price .price-card__campaign {
    margin-top: calc(2.6666666667 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .price .price-card__campaign {
    margin-top: calc(5.3333333333 * 1vw);
  }
}
.price .price-card__campaign .campaign {
  width: 100%;
  margin: 0 auto;
}
.price .price-card__campaign .campaign .campaign-bubble {
  text-align: center;
  width: auto;
  height: auto;
  margin: 0 auto;
  font-weight: 500;
  padding: calc(1.1713030747 * 1vw) calc(1.756954612 * 1vw) calc(0.878477306 * 1vw);
  background-image: url(../img/program/price-bubble_bk.png);
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  position: relative;
  white-space: nowrap;
}
.price .price-card__campaign .campaign .campaign-bubble {
  font-size: clamp(13px, 0.9516837482vw, 9999px);
  line-height: 1.6153846154;
}
@media screen and (max-width: 959px) {
  .price .price-card__campaign .campaign .campaign-bubble {
    font-size: clamp(0.8125rem, 0.8125rem + 0vw, 0.8125rem);
  }
}
@media screen and (max-width: 479px) {
  .price .price-card__campaign .campaign .campaign-bubble {
    font-size: 13px;
    line-height: 1.6153846154 !important;
  }
}
@media screen and (max-width: 959px) {
  .price .price-card__campaign .campaign .campaign-bubble {
    padding: calc(2.6666666667 * 1vw) calc(4.8 * 1vw) calc(2.6666666667 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .price .price-card__campaign .campaign .campaign-bubble {
    padding: calc(4.2666666667 * 1vw) calc(6.4 * 1vw) calc(3.2 * 1vw);
  }
}
.price .price-card__campaign .campaign .campaign-bubble::after {
  content: "";
  position: absolute;
  bottom: 0;
  right: calc(1.1713030747 * 1vw);
  transform: translate(0, 50%);
  width: calc(13.17715959 * 1vw);
  height: calc(2.3426061493 * 1vw);
  background-image: url(../img/program/price-bubble.png);
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
}
@media screen and (max-width: 1099px) {
  .price .price-card__campaign .campaign .campaign-bubble::after {
    right: calc(6.9546120059 * 1vw);
  }
}
@media screen and (max-width: 959px) {
  .price .price-card__campaign .campaign .campaign-bubble::after {
    right: calc(3.7333333333 * 1vw);
    width: calc(24 * 1vw);
    height: calc(4.2666666667 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .price .price-card__campaign .campaign .campaign-bubble::after {
    right: 20%;
    width: calc(48 * 1vw);
    height: calc(8.5333333333 * 1vw);
    max-width: 200px;
  }
}
@media screen and (max-width: 479px) {
  .price .price-card__campaign .campaign .campaign-bubble::after {
    width: 180px;
    right: 12%;
  }
}
.price .price-card__campaign .campaign .campaign-bubble__logo {
  font-family: "Montserrat", sans-serif;
  font-weight: 700;
  color: #2f5f98;
}
.price .price-card__campaign .campaign .campaign-bubble__logo {
  letter-spacing: -0.037em;
}
@media screen and (max-width: 959px) {
  .price .price-card__campaign .campaign .campaign-bubble__logo {
    letter-spacing: -0.037em;
  }
}
@media screen and (max-width: 479px) {
  .price .price-card__campaign .campaign .campaign-bubble__logo {
    letter-spacing: -0.037em;
  }
}
.price .price-card__campaign .campaign .campaign-bubble__logo span {
  color: #fbca41;
}
.price .price-card__campaign .campaign .campaign-bubble__logo {
  font-size: clamp(16px, 1.1713030747vw, 9999px);
  line-height: 1;
}
@media screen and (max-width: 959px) {
  .price .price-card__campaign .campaign .campaign-bubble__logo {
    font-size: clamp(1rem, 1rem + 0vw, 1rem);
  }
}
@media screen and (max-width: 479px) {
  .price .price-card__campaign .campaign .campaign-bubble__logo {
    font-size: 16px;
    line-height: 1 !important;
  }
}
.price .price-card__campaign .campaign .campaign-bubble__bold {
  font-weight: 700;
}
.price .price-card__campaign .campaign .campaign-bubble__caveat {
  font-family: "Caveat", cursive;
  color: #2f5f98;
  margin-right: calc(0.2928257687 * 1vw);
}
.price .price-card__campaign .campaign .campaign-bubble__caveat {
  font-size: clamp(22px, 1.6105417277vw, 9999px);
  line-height: 1.0454545455;
}
@media screen and (max-width: 959px) {
  .price .price-card__campaign .campaign .campaign-bubble__caveat {
    font-size: clamp(1.375rem, 1.375rem + 0vw, 1.375rem);
  }
}
@media screen and (max-width: 479px) {
  .price .price-card__campaign .campaign .campaign-bubble__caveat {
    font-size: 22px;
    line-height: 1.0454545455 !important;
  }
}
.price .price-card__campaign .campaign .campaign-bubble__caveat {
  letter-spacing: 0.1em;
}
@media screen and (max-width: 959px) {
  .price .price-card__campaign .campaign .campaign-bubble__caveat {
    letter-spacing: 0.1em;
  }
}
@media screen and (max-width: 479px) {
  .price .price-card__campaign .campaign .campaign-bubble__caveat {
    letter-spacing: 0.1em;
  }
}
@media screen and (max-width: 959px) {
  .price .price-card__campaign .campaign .campaign-bubble__caveat {
    margin-right: calc(1.0666666667 * 1vw);
  }
}
.price .price-card__campaign .campaign__inner {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: calc(4.0263543192 * 1vw);
}
@media screen and (max-width: 959px) {
  .price .price-card__campaign .campaign__inner {
    gap: calc(8 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .price .price-card__campaign .campaign__inner {
    gap: calc(14.6666666667 * 1vw);
  }
}
.price .price-card__campaign .campaign__standard {
  color: #2f5f98;
  font-weight: bold;
}
.price .price-card__campaign .campaign__standard {
  font-size: clamp(13px, 0.9516837482vw, 9999px);
  line-height: 1.5384615385;
}
@media screen and (max-width: 959px) {
  .price .price-card__campaign .campaign__standard {
    font-size: clamp(0.8125rem, 0.8125rem + 0vw, 0.8125rem);
  }
}
@media screen and (max-width: 479px) {
  .price .price-card__campaign .campaign__standard {
    font-size: 13px;
    line-height: 1.5384615385 !important;
  }
}
.price .price-card__campaign .campaign__value {
  color: #2f5f98;
  font-weight: bold;
  background-image: linear-gradient(transparent 0.5em, #2f5f98 0, #2f5f98 calc(0.5em + 1px), transparent 0, transparent calc(0.5em + 3px), #2f5f98 0, #2f5f98 calc(0.5em + 4px), transparent 0);
  text-decoration: none;
  position: relative;
}
.price .price-card__campaign .campaign__value {
  font-size: clamp(30px, 2.196193265vw, 9999px);
  line-height: 1;
}
@media screen and (max-width: 959px) {
  .price .price-card__campaign .campaign__value {
    font-size: clamp(1.875rem, 1.875rem + 0vw, 1.875rem);
  }
}
@media screen and (max-width: 479px) {
  .price .price-card__campaign .campaign__value {
    font-size: 30px;
    line-height: 1 !important;
  }
}
.price .price-card__campaign .campaign__value {
  letter-spacing: 0.1em;
}
@media screen and (max-width: 959px) {
  .price .price-card__campaign .campaign__value {
    letter-spacing: 0.1em;
  }
}
@media screen and (max-width: 479px) {
  .price .price-card__campaign .campaign__value {
    letter-spacing: 0.1em;
  }
}
.price .price-card__campaign .campaign__value--small {
  padding: 0 2px;
}
.price .price-card__campaign .campaign__value--small {
  font-size: clamp(18px, 1.317715959vw, 9999px);
  line-height: 1;
}
@media screen and (max-width: 959px) {
  .price .price-card__campaign .campaign__value--small {
    font-size: clamp(1.125rem, 1.125rem + 0vw, 1.125rem);
  }
}
@media screen and (max-width: 479px) {
  .price .price-card__campaign .campaign__value--small {
    font-size: 18px;
    line-height: 1 !important;
  }
}
.price .price-card__campaign .campaign__value::after {
  content: "";
  position: absolute;
  bottom: 0;
  right: 0;
  transform: translate(120%, 50%);
  background-image: url(../img/program/price-arrow.png);
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  width: calc(2.635431918 * 1vw);
  height: calc(0.6588579795 * 1vw);
}
@media screen and (max-width: 959px) {
  .price .price-card__campaign .campaign__value::after {
    width: calc(5.3333333333 * 1vw);
    height: calc(2.6666666667 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .price .price-card__campaign .campaign__value::after {
    width: calc(9.6 * 1vw);
    height: calc(2.4 * 1vw);
  }
}
.price .price-card__campaign .campaign__free {
  color: #2f5f98;
  font-weight: 700;
  position: relative;
}
.price .price-card__campaign .campaign__free {
  font-size: clamp(22px, 1.6105417277vw, 9999px);
  line-height: 1;
}
@media screen and (max-width: 959px) {
  .price .price-card__campaign .campaign__free {
    font-size: clamp(1.375rem, 1.375rem + 0vw, 1.375rem);
  }
}
@media screen and (max-width: 479px) {
  .price .price-card__campaign .campaign__free {
    font-size: 22px;
    line-height: 1 !important;
  }
}
.price .price-card__campaign .campaign__free {
  letter-spacing: 0em;
}
@media screen and (max-width: 959px) {
  .price .price-card__campaign .campaign__free {
    letter-spacing: 0em;
  }
}
@media screen and (max-width: 479px) {
  .price .price-card__campaign .campaign__free {
    letter-spacing: 0em;
  }
}
.price .price-card__campaign .campaign__free span {
  color: #fff;
  position: relative;
  padding-right: calc(0.6588579795 * 1vw);
}
.price .price-card__campaign .campaign__free span {
  font-size: clamp(60px, 4.39238653vw, 9999px);
  line-height: 1;
}
@media screen and (max-width: 959px) {
  .price .price-card__campaign .campaign__free span {
    font-size: clamp(3.75rem, 3.75rem + 0vw, 3.75rem);
  }
}
@media screen and (max-width: 479px) {
  .price .price-card__campaign .campaign__free span {
    font-size: 60px;
    line-height: 1 !important;
  }
}
.price .price-card__campaign .campaign__free span {
  letter-spacing: 0em;
}
@media screen and (max-width: 959px) {
  .price .price-card__campaign .campaign__free span {
    letter-spacing: 0em;
  }
}
@media screen and (max-width: 479px) {
  .price .price-card__campaign .campaign__free span {
    letter-spacing: 0em;
  }
}
@media screen and (max-width: 959px) {
  .price .price-card__campaign .campaign__free span {
    padding-right: 9px;
  }
}
.price .price-card__campaign .campaign__free::after {
  content: "";
  display: block;
  position: absolute;
  width: calc(2.196193265 * 1vw);
  aspect-ratio: 61/71;
  background-image: url(../img/program/price-deco.png);
  background-size: contain;
  top: calc(-0.5124450952 * 1vw);
  right: calc(1.1713030747 * 1vw);
}
@media screen and (max-width: 1099px) {
  .price .price-card__campaign .campaign__free::after {
    width: 30px;
    top: -7px;
    right: 10px;
  }
}
.price .price-card__campaign .campaign__free-bk {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  color: #2f5f98;
  width: 100%;
  height: auto;
  z-index: -1;
  -webkit-text-stroke-width: calc(0.2928257687 * 1vw);
  -webkit-text-stroke-color: #2f5f98;
  text-shadow: calc(0.2928257687 * 1vw) calc(0.2928257687 * 1vw) #fbca41;
}
@media screen and (max-width: 959px) {
  .price .price-card__campaign .campaign__free-bk {
    -webkit-text-stroke-width: calc(0.5333333333 * 1vw);
    text-shadow: calc(0.5333333333 * 1vw) calc(0.5333333333 * 1vw) #fbca41;
  }
}
@media screen and (max-width: 649px) {
  .price .price-card__campaign .campaign__free-bk {
    -webkit-text-stroke-width: calc(1.0666666667 * 1vw);
    text-shadow: calc(1.0666666667 * 1vw) calc(1.0666666667 * 1vw) #fbca41;
  }
}

.best {
  margin-top: calc(3.513909224 * 1vw);
  padding: calc(2.3426061493 * 1vw) calc(2.3426061493 * 1vw) calc(2.9282576867 * 1vw) calc(4.39238653 * 1vw);
  background-image: url(../img/program/best-bk_pc.png);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  position: relative;
}
@media screen and (max-width: 959px) {
  .best {
    margin-top: calc(8 * 1vw);
    padding: calc(8 * 1vw) calc(8 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .best {
    margin-top: calc(10.6666666667 * 1vw);
    padding: calc(10.6666666667 * 1vw) calc(8 * 1vw);
  }
}
.best__inner {
  display: flex;
  justify-content: space-between;
  align-items: end;
  width: auto;
}
@media screen and (max-width: 959px) {
  .best__inner {
    flex-flow: column;
    gap: calc(5.3333333333 * 1vw);
  }
}
.best__text {
  width: 68.0612244898%;
}
@media screen and (max-width: 959px) {
  .best__text {
    width: 100%;
  }
}
.best__title {
  font-weight: 700;
  color: #2f5f98;
  position: relative;
  z-index: 1;
  width: fit-content;
}
.best__title {
  font-size: clamp(20px, 1.4641288433vw, 9999px);
  line-height: 1;
}
@media screen and (max-width: 959px) {
  .best__title {
    font-size: clamp(1.125rem, 1.0776992936rem + 0.2018163471vw, 1.25rem);
  }
}
@media screen and (max-width: 479px) {
  .best__title {
    font-size: 18px;
    line-height: 1 !important;
  }
}
.best__title {
  letter-spacing: 0.1em;
}
@media screen and (max-width: 959px) {
  .best__title {
    letter-spacing: 0.1em;
  }
}
@media screen and (max-width: 479px) {
  .best__title {
    letter-spacing: 0.1em;
  }
}
@media screen and (max-width: 959px) {
  .best__title {
    margin: 0 auto;
  }
}
.best__title::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  transform: translate(0%, -10%);
  height: calc(1.4641288433 * 1vw);
  background-color: #fff;
  z-index: -1;
}
@media screen and (max-width: 959px) {
  .best__title::after {
    height: calc(2.6666666667 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .best__title::after {
    height: calc(4 * 1vw);
  }
}
@media screen and (max-width: 479px) {
  .best__title::after {
    height: calc(5.3333333333 * 1vw);
  }
}
.best__title .dot-text span {
  font-weight: 900;
}
.best__title .dot-text span {
  font-size: clamp(28px, 2.0497803807vw, 9999px);
  line-height: 1.7857142857;
}
@media screen and (max-width: 959px) {
  .best__title .dot-text span {
    font-size: clamp(1.5rem, 1.4053985873rem + 0.4036326942vw, 1.75rem);
  }
}
@media screen and (max-width: 479px) {
  .best__title .dot-text span {
    font-size: 24px;
    line-height: 1.8333333333 !important;
  }
}
.best__title .dot-text span {
  letter-spacing: 0.1em;
}
@media screen and (max-width: 959px) {
  .best__title .dot-text span {
    letter-spacing: 0.1em;
  }
}
@media screen and (max-width: 479px) {
  .best__title .dot-text span {
    letter-spacing: 0.1em;
  }
}
.best__title .dot-text span::after {
  top: 0%;
  left: 50%;
}
.best__list {
  margin-top: calc(1.1713030747 * 1vw);
  width: auto;
}
@media screen and (max-width: 959px) {
  .best__list {
    margin-top: calc(4.2666666667 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .best__list {
    margin-top: calc(6.4 * 1vw);
  }
}
.best__list li {
  font-weight: 500;
  padding: 0 0 calc(0.5856515373 * 1vw) calc(2.0497803807 * 1vw);
  border-bottom: #fbca41 dashed 2px;
  margin-bottom: calc(0.878477306 * 1vw);
  position: relative;
  width: auto;
}
.best__list li {
  font-size: clamp(18px, 1.317715959vw, 9999px);
  line-height: 1.5;
}
@media screen and (max-width: 959px) {
  .best__list li {
    font-size: clamp(1.125rem, 1.125rem + 0vw, 1.125rem);
  }
}
@media screen and (max-width: 479px) {
  .best__list li {
    font-size: 18px;
    line-height: 1.5 !important;
  }
}
.best__list li {
  letter-spacing: 0.1em;
}
@media screen and (max-width: 959px) {
  .best__list li {
    letter-spacing: 0.05em;
  }
}
@media screen and (max-width: 479px) {
  .best__list li {
    letter-spacing: 0.05em;
  }
}
@media screen and (max-width: 959px) {
  .best__list li {
    padding: 0 0 calc(1.0666666667 * 1vw) calc(5.3333333333 * 1vw);
    margin-bottom: calc(3.2 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .best__list li {
    padding: 0 0 calc(2.1333333333 * 1vw) calc(6.4 * 1vw);
    margin-bottom: calc(4.2666666667 * 1vw);
  }
}
.best__list li:last-of-type {
  margin-bottom: 0;
}
.best__list li::after {
  content: "";
  position: absolute;
  left: 0;
  top: calc(1.0248901903 * 1vw);
  width: calc(1.0248901903 * 1vw);
  height: auto;
  aspect-ratio: 1/1;
  border: #2f5f98 solid 1px;
  box-sizing: border-box;
  z-index: -1;
}
@media screen and (max-width: 959px) {
  .best__list li::after {
    top: calc(0.5333333333 * 1vw);
    width: calc(2.6666666667 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .best__list li::after {
    top: 8px;
    width: calc(3.2 * 1vw);
  }
}
.best__list li::before {
  content: "✓";
  color: #fbca41;
  font-family: "Caveat", cursive;
  font-weight: 700;
  position: absolute;
  left: 0;
  top: calc(0.439238653 * 1vw);
  z-index: 1;
}
.best__list li::before {
  font-size: clamp(21px, 1.5373352855vw, 9999px);
  line-height: 1;
}
@media screen and (max-width: 959px) {
  .best__list li::before {
    font-size: clamp(1.125rem, 1.0540489405rem + 0.3027245207vw, 1.3125rem);
  }
}
@media screen and (max-width: 479px) {
  .best__list li::before {
    font-size: 18px;
    line-height: 1 !important;
  }
}
@media screen and (max-width: 959px) {
  .best__list li::before {
    font-size: 26px;
    bottom: calc(1.6 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .best__list li::before {
    top: calc(1.6 * 1vw);
  }
  .best__list li::before {
    font-size: clamp(21px, 1.5373352855vw, 9999px);
    line-height: 1;
  }
}
@media screen and (max-width: 649px) and (max-width: 959px) {
  .best__list li::before {
    font-size: clamp(1.125rem, 1.0540489405rem + 0.3027245207vw, 1.3125rem);
  }
}
@media screen and (max-width: 649px) and (max-width: 479px) {
  .best__list li::before {
    font-size: 18px;
    line-height: 1 !important;
  }
}
@media screen and (max-width: 479px) {
  .best__list li::before {
    top: calc(0.5333333333 * 1vw);
  }
}
.best__img {
  width: 31.6326530612%;
  margin-bottom: calc(-4.39238653 * 1vw);
  position: relative;
  height: 1;
  z-index: 2;
}
@media screen and (max-width: 959px) {
  .best__img {
    width: 34.7826086957%;
    margin-bottom: calc(3.2 * 1vw);
    margin: calc(5.3333333333 * 1vw) 0 0 auto;
  }
}
@media screen and (max-width: 649px) {
  .best__img {
    width: 73.0158730159%;
    margin: calc(12.8 * 1vw) auto calc(3.2 * 1vw) auto;
  }
}
.best__img::after {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  transform: translate(0%, -80%);
  background-image: url(../img/program/best-bubble01_pc.png);
  background-size: 100%;
  background-position: center;
  background-repeat: no-repeat;
  width: calc(10.3953147877 * 1vw);
  aspect-ratio: 143/63;
  height: auto;
}
@media screen and (max-width: 959px) {
  .best__img::after {
    width: calc(24 * 1vw);
    aspect-ratio: 128/58;
    transform: translate(-80%, -40%);
  }
}
@media screen and (max-width: 649px) {
  .best__img::after {
    width: calc(34.1333333333 * 1vw);
    transform: translate(-30%, -60%);
  }
}
.best__img::before {
  content: "";
  position: absolute;
  right: 0;
  top: 0;
  transform: translate(0%, -100%);
  background-image: url(../img/program/best-bubble02_pc.png);
  background-size: 100%;
  background-position: center;
  background-repeat: no-repeat;
  width: calc(10.3953147877 * 1vw);
  aspect-ratio: 143/63;
  height: auto;
}
@media screen and (max-width: 959px) {
  .best__img::before {
    width: calc(24 * 1vw);
    aspect-ratio: 128/58;
    transform: translate(5%, -90%);
  }
}
@media screen and (max-width: 649px) {
  .best__img::before {
    width: calc(34.1333333333 * 1vw);
    transform: translate(30%, -70%);
  }
}
.best__comment {
  padding: calc(0.5856515373 * 1vw) calc(1.756954612 * 1vw);
  background-color: #fbca41;
  width: calc(28.5505124451 * 1vw);
  height: auto;
  position: absolute;
  bottom: 0;
  left: 48%;
  transform: translate(-50%, 50%);
  z-index: 2;
}
@media screen and (max-width: 959px) {
  .best__comment {
    position: relative;
    padding: calc(1.6 * 1vw) calc(4.2666666667 * 1vw);
    width: 60%;
    transform: none;
    left: auto;
    margin-top: calc(-10.1333333333 * 1vw);
    z-index: 1;
  }
}
@media screen and (max-width: 649px) {
  .best__comment {
    position: relative;
    padding: calc(2.1333333333 * 1vw) calc(6.4 * 1vw);
    width: auto;
    margin-top: 0;
  }
}

.archive__inner {
  margin: calc(5.8565153734 * 1vw) auto calc(7.3206442167 * 1vw);
}
@media screen and (max-width: 959px) {
  .archive__inner {
    margin: calc(10.6666666667 * 1vw) auto 0;
  }
}
.archive__content {
  max-width: 64.4216691069%;
  width: 100%;
  margin: 0 auto;
}
@media screen and (max-width: 959px) {
  .archive__content {
    max-width: 84%;
    width: 100%;
    margin: 0 auto;
  }
}
.archive .pager__pagination {
  font-weight: 500;
  color: #2f5f98;
}
.archive .pager__pagination {
  font-size: clamp(16px, 1.1713030747vw, 9999px);
  line-height: 0.875;
}
@media screen and (max-width: 959px) {
  .archive .pager__pagination {
    font-size: clamp(1rem, 1rem + 0vw, 1rem);
  }
}
@media screen and (max-width: 479px) {
  .archive .pager__pagination {
    font-size: 16px;
    line-height: 0.875 !important;
  }
}
.archive .pager__pagination .page-numbers {
  padding: 0 calc(0.5856515373 * 1vw);
}
@media screen and (max-width: 959px) {
  .archive .pager__pagination .page-numbers {
    padding: 0 calc(1.6 * 1vw);
  }
}
.archive .pager__pagination .current {
  position: relative;
  z-index: 1;
}
.archive .pager__pagination .current::after {
  content: "";
  position: absolute;
  top: 55%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: calc(1.6837481698 * 1vw);
  aspect-ratio: 1/1;
  height: auto;
  border: solid 1px #fbca41;
  border-radius: 50%;
  z-index: -1;
}
@media screen and (max-width: 959px) {
  .archive .pager__pagination .current::after {
    width: calc(5.3333333333 * 1vw);
  }
}
.archive .pager__pagination a:hover {
  color: #fbca41;
  opacity: 1;
}

.archive-single__inner {
  margin: calc(11.7130307467 * 1vw) auto calc(7.3206442167 * 1vw);
  position: relative;
  width: 100%;
}
@media screen and (max-width: 959px) {
  .archive-single__inner {
    margin: calc(16 * 1vw) auto 0;
  }
}
@media screen and (max-width: 649px) {
  .archive-single__inner {
    margin: calc(21.3333333333 * 1vw) auto 0;
  }
}
@media screen and (max-width: 479px) {
  .archive-single__inner {
    margin: calc(26.6666666667 * 1vw) auto 0;
  }
}
.archive-single__content {
  max-width: 64.4216691069%;
  width: 100%;
  margin: 0 auto;
}
@media screen and (max-width: 959px) {
  .archive-single__content {
    max-width: 84%;
    width: 100%;
    margin: 0 auto;
  }
}
.archive-single__wrapper {
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 959px) {
  .archive-single__wrapper {
    flex-flow: column;
    gap: calc(5.3333333333 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .archive-single__wrapper {
    flex-flow: column;
    gap: calc(10.6666666667 * 1vw);
  }
}
.archive-single__left {
  max-width: 62.5%;
  width: 100%;
}
@media screen and (max-width: 959px) {
  .archive-single__left {
    max-width: none;
  }
}
.archive-single__right {
  max-width: 31.25%;
  width: 100%;
}
@media screen and (max-width: 959px) {
  .archive-single__right {
    max-width: none;
  }
}
.archive-single__pagination {
  margin-top: calc(2.3426061493 * 1vw);
  display: flex;
  justify-content: space-between;
  align-items: center;
}
@media screen and (max-width: 959px) {
  .archive-single__pagination {
    margin-top: calc(6.4 * 1vw);
  }
}
.archive-single__pagination-item:first-of-type a .circle-arrow {
  transform: rotate(180deg);
}
.archive-single__pagination-item a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: fit-content;
  gap: calc(0.878477306 * 1vw);
  font-family: "Caveat", cursive;
  font-weight: 700;
}
.archive-single__pagination-item a {
  font-size: clamp(19px, 1.3909224012vw, 9999px);
  line-height: 1;
}
@media screen and (max-width: 959px) {
  .archive-single__pagination-item a {
    font-size: clamp(1.125rem, 1.1013496468rem + 0.1009081736vw, 1.1875rem);
  }
}
@media screen and (max-width: 479px) {
  .archive-single__pagination-item a {
    font-size: 18px;
    line-height: 1 !important;
  }
}
.archive-single__pagination-item a {
  letter-spacing: 0.2em;
}
@media screen and (max-width: 959px) {
  .archive-single__pagination-item a {
    letter-spacing: 0.2em;
  }
}
@media screen and (max-width: 479px) {
  .archive-single__pagination-item a {
    letter-spacing: 0.2em;
  }
}
@media screen and (max-width: 959px) {
  .archive-single__pagination-item a {
    gap: calc(2.1333333333 * 1vw);
  }
}
.archive-single__pagination-item:hover .circle-arrow {
  background-color: #2f5f98;
}
.archive-single__pagination-item:hover .circle-arrow span {
  background-image: url("../img/common/arrow-white.png");
}
.archive-single__pagination-item .circle-arrow {
  background-color: #fff;
  border: 1px #2f5f98 solid;
  width: clamp(32px, 4vw, 2.9282576867 * 1vw);
}
.archive-single__pagination-item .circle-arrow span {
  background: url("../img/common/arrow-blue.png") no-repeat center/contain;
}
.archive-single__pickup {
  position: sticky;
  top: calc(5.8565153734 * 1vw);
}
@media screen and (max-width: 959px) {
  .archive-single__pickup {
    position: relative;
    top: 0;
  }
}
.archive-single__pickup .pickup-title {
  padding-bottom: calc(0.5856515373 * 1vw);
  border-bottom: solid 2px #fbca41;
  position: relative;
}
@media screen and (max-width: 959px) {
  .archive-single__pickup .pickup-title {
    padding-bottom: calc(1.6 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .archive-single__pickup .pickup-title {
    padding-bottom: calc(2.1333333333 * 1vw);
  }
}
.archive-single__pickup .pickup-title__en {
  font-family: "Caveat", cursive;
  color: #fff;
  position: relative;
  z-index: 1;
}
.archive-single__pickup .pickup-title__en {
  font-size: clamp(40px, 2.9282576867vw, 9999px);
  line-height: 1;
}
@media screen and (max-width: 959px) {
  .archive-single__pickup .pickup-title__en {
    font-size: clamp(2.8125rem, 2.9307517659rem - 0.5045408678vw, 2.5rem);
  }
}
@media screen and (max-width: 479px) {
  .archive-single__pickup .pickup-title__en {
    font-size: 45px;
    line-height: 1 !important;
  }
}
.archive-single__pickup .pickup-title__en {
  letter-spacing: 0.2em;
}
@media screen and (max-width: 959px) {
  .archive-single__pickup .pickup-title__en {
    letter-spacing: 0.2em;
  }
}
@media screen and (max-width: 479px) {
  .archive-single__pickup .pickup-title__en {
    letter-spacing: 0.2em;
  }
}
@media screen and (max-width: 1365px) {
  .archive-single__pickup .pickup-title__en {
    font-size: 34px;
  }
}
@media screen and (max-width: 1099px) {
  .archive-single__pickup .pickup-title__en {
    font-size: 28px;
  }
}
@media screen and (max-width: 959px) {
  .archive-single__pickup .pickup-title__en {
    font-size: clamp(40px, 2.9282576867vw, 9999px);
    line-height: 1;
  }
}
@media screen and (max-width: 959px) and (max-width: 959px) {
  .archive-single__pickup .pickup-title__en {
    font-size: clamp(2.8125rem, 2.9307517659rem - 0.5045408678vw, 2.5rem);
  }
}
@media screen and (max-width: 959px) and (max-width: 479px) {
  .archive-single__pickup .pickup-title__en {
    font-size: 45px;
    line-height: 1 !important;
  }
}
.archive-single__pickup .pickup-title__en::before {
  content: "pick up";
  color: #2f5f98;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-text-stroke: calc(0.1464128843 * 1vw) #2f5f98;
  width: 100%;
  z-index: -1;
  text-shadow: calc(0.2196193265 * 1vw) calc(0.2196193265 * 1vw) #fbca41;
}
@media screen and (max-width: 959px) {
  .archive-single__pickup .pickup-title__en::before {
    transform: translate(-50%, -51%);
    -webkit-text-stroke: calc(0.5333333333 * 1vw) #2f5f98;
    text-shadow: calc(0.5333333333 * 1vw) calc(0.5333333333 * 1vw) #fbca41;
  }
}
.archive-single__pickup .pickup-title__tab {
  bottom: -1px;
  right: calc(0.5856515373 * 1vw);
  border-radius: calc(0.1464128843 * 1vw) calc(0.1464128843 * 1vw) 0 0;
  border: 2px solid #fbca41;
  border-bottom: none;
  position: absolute;
  padding: calc(0.2928257687 * 1vw) calc(0.7320644217 * 1vw);
  color: #2f5f98;
  background-color: #fff;
  z-index: 1;
  font-weight: 700;
}
.archive-single__pickup .pickup-title__tab {
  font-size: clamp(12px, 0.878477306vw, 9999px);
  line-height: 1.5;
}
@media screen and (max-width: 959px) {
  .archive-single__pickup .pickup-title__tab {
    font-size: clamp(0.875rem, 0.9223007064rem - 0.2018163471vw, 0.75rem);
  }
}
@media screen and (max-width: 479px) {
  .archive-single__pickup .pickup-title__tab {
    font-size: 14px;
    line-height: 1.5 !important;
  }
}
.archive-single__pickup .pickup-title__tab {
  letter-spacing: 0.05em;
}
@media screen and (max-width: 959px) {
  .archive-single__pickup .pickup-title__tab {
    letter-spacing: 0.05em;
  }
}
@media screen and (max-width: 479px) {
  .archive-single__pickup .pickup-title__tab {
    letter-spacing: 0.05em;
  }
}
@media screen and (max-width: 959px) {
  .archive-single__pickup .pickup-title__tab {
    right: calc(2.1333333333 * 1vw);
    border-bottom: none;
    border-radius: calc(0.4 * 1vw) calc(0.4 * 1vw) 0 0;
    padding: calc(0.8 * 1vw) calc(1.8666666667 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .archive-single__pickup .pickup-title__tab {
    right: calc(2.1333333333 * 1vw);
    border-bottom: none;
    border-radius: calc(0.5333333333 * 1vw) calc(0.5333333333 * 1vw) 0 0;
    padding: calc(1.0666666667 * 1vw) calc(2.6666666667 * 1vw);
  }
}
.archive-single__pickup .pickup__item {
  padding: calc(1.1713030747 * 1vw) 0;
  border-bottom: dashed 1px #fbca41;
}
@media screen and (max-width: 959px) {
  .archive-single__pickup .pickup__item {
    padding: calc(2.1333333333 * 1vw) 0;
  }
}
@media screen and (max-width: 649px) {
  .archive-single__pickup .pickup__item {
    padding: calc(4.2666666667 * 1vw) 0;
  }
}
.archive-single__pickup .pickup__inner {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
}
@media screen and (max-width: 959px) {
  .archive-single__pickup .pickup__inner {
    align-items: center;
  }
}
@media screen and (max-width: 649px) {
  .archive-single__pickup .pickup__inner {
    align-items: flex-start;
  }
}
.archive-single__pickup .pickup__img {
  overflow: hidden;
  aspect-ratio: 1/1;
  width: 31.2727272727%;
  z-index: 1;
}
@media screen and (max-width: 959px) {
  .archive-single__pickup .pickup__img {
    width: 19.8757763975%;
  }
}
@media screen and (max-width: 649px) {
  .archive-single__pickup .pickup__img {
    width: 31.746031746%;
  }
}
.archive-single__pickup .pickup__img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.archive-single__pickup .pickup__text {
  width: 64.7272727273%;
}
@media screen and (max-width: 959px) {
  .archive-single__pickup .pickup__text {
    width: 74.9068322981%;
  }
}
@media screen and (max-width: 649px) {
  .archive-single__pickup .pickup__text {
    width: 64.4444444444%;
  }
}
.archive-single__pickup .pickup__date {
  font-weight: 500;
}
.archive-single__pickup .pickup__date {
  font-size: clamp(12px, 0.878477306vw, 9999px);
  line-height: 1;
}
@media screen and (max-width: 959px) {
  .archive-single__pickup .pickup__date {
    font-size: clamp(0.8125rem, 0.8361503532rem - 0.1009081736vw, 0.75rem);
  }
}
@media screen and (max-width: 479px) {
  .archive-single__pickup .pickup__date {
    font-size: 13px;
    line-height: 1 !important;
  }
}
.archive-single__pickup .pickup__date {
  letter-spacing: 0.1em;
}
@media screen and (max-width: 959px) {
  .archive-single__pickup .pickup__date {
    letter-spacing: 0.1em;
  }
}
@media screen and (max-width: 479px) {
  .archive-single__pickup .pickup__date {
    letter-spacing: 0.1em;
  }
}
.archive-single__pickup .pickup__title {
  margin-top: calc(0.2928257687 * 1vw);
  font-weight: 700;
}
.archive-single__pickup .pickup__title {
  font-size: clamp(14px, 1.0248901903vw, 9999px);
  line-height: 1.5;
}
@media screen and (max-width: 959px) {
  .archive-single__pickup .pickup__title {
    font-size: clamp(0.875rem, 0.875rem + 0vw, 0.875rem);
  }
}
@media screen and (max-width: 479px) {
  .archive-single__pickup .pickup__title {
    font-size: 14px;
    line-height: 1.5 !important;
  }
}
.archive-single__pickup .pickup__title {
  letter-spacing: 0.05em;
}
@media screen and (max-width: 959px) {
  .archive-single__pickup .pickup__title {
    letter-spacing: 0.05em;
  }
}
@media screen and (max-width: 479px) {
  .archive-single__pickup .pickup__title {
    letter-spacing: 0.05em;
  }
}
@media screen and (max-width: 1365px) {
  .archive-single__pickup .pickup__title {
    margin-top: calc(0.3660322108 * 1vw);
    font-size: 13px;
  }
}
@media screen and (max-width: 959px) {
  .archive-single__pickup .pickup__title {
    margin-top: calc(0.3660322108 * 1vw);
  }
  .archive-single__pickup .pickup__title {
    font-size: clamp(14px, 1.0248901903vw, 9999px);
    line-height: 1.5;
  }
}
@media screen and (max-width: 959px) and (max-width: 959px) {
  .archive-single__pickup .pickup__title {
    font-size: clamp(0.875rem, 0.875rem + 0vw, 0.875rem);
  }
}
@media screen and (max-width: 959px) and (max-width: 479px) {
  .archive-single__pickup .pickup__title {
    font-size: 14px;
    line-height: 1.5 !important;
  }
}
.archive-single__pickup .pickup__keyword {
  padding: calc(1.1713030747 * 1vw) 0;
  border-bottom: solid 2px #fbca41;
}
@media screen and (max-width: 959px) {
  .archive-single__pickup .pickup__keyword {
    padding: calc(2.1333333333 * 1vw) 0;
  }
}
@media screen and (max-width: 649px) {
  .archive-single__pickup .pickup__keyword {
    padding: calc(4.2666666667 * 1vw) 0;
  }
}
.archive-single__pickup .pickup__keyword .keyword__title {
  width: calc(9.1508052709 * 1vw);
  margin-bottom: calc(0.5856515373 * 1vw);
}
@media screen and (max-width: 959px) {
  .archive-single__pickup .pickup__keyword .keyword__title {
    width: calc(21.3333333333 * 1vw);
    margin-bottom: calc(1.0666666667 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .archive-single__pickup .pickup__keyword .keyword__title {
    width: calc(33.3333333333 * 1vw);
    margin-bottom: calc(2.1333333333 * 1vw);
  }
}
.archive-single__pickup .pickup__keyword p {
  margin: 0 auto;
}
.archive-single__pickup .pickup__keyword p {
  font-size: clamp(11px, 0.8052708638vw, 9999px);
  line-height: 1.6363636364;
}
@media screen and (max-width: 959px) {
  .archive-single__pickup .pickup__keyword p {
    font-size: clamp(0.6875rem, 0.6875rem + 0vw, 0.6875rem);
  }
}
@media screen and (max-width: 479px) {
  .archive-single__pickup .pickup__keyword p {
    font-size: 11px;
    line-height: 1.6363636364 !important;
  }
}
.archive-single__pickup .pickup__keyword p {
  letter-spacing: 0.05em;
}
@media screen and (max-width: 959px) {
  .archive-single__pickup .pickup__keyword p {
    letter-spacing: 0.05em;
  }
}
@media screen and (max-width: 479px) {
  .archive-single__pickup .pickup__keyword p {
    letter-spacing: 0.05em;
  }
}
.archive-single__pickup .pickup__keyword .search-bar input {
  padding: calc(0.5856515373 * 1vw) calc(2.9282576867 * 1vw) calc(0.5856515373 * 1vw) calc(0.5856515373 * 1vw);
}
@media screen and (max-width: 959px) {
  .archive-single__pickup .pickup__keyword .search-bar input {
    padding: calc(1.0666666667 * 1vw) calc(5.8666666667 * 1vw) calc(1.0666666667 * 1vw) calc(1.0666666667 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .archive-single__pickup .pickup__keyword .search-bar input {
    padding: calc(2.1333333333 * 1vw) calc(11.7333333333 * 1vw) calc(2.1333333333 * 1vw) calc(2.1333333333 * 1vw);
  }
}

.single__inner {
  display: flex;
  justify-content: space-between;
}
.single__title {
  text-align: justify;
  margin-top: calc(0.878477306 * 1vw);
  font-weight: 700;
}
.single__title {
  font-size: clamp(28px, 2.0497803807vw, 9999px);
  line-height: 1.8;
}
@media screen and (max-width: 959px) {
  .single__title {
    font-size: clamp(1.375rem, 1.2330978809rem + 0.6054490414vw, 1.75rem);
  }
}
@media screen and (max-width: 479px) {
  .single__title {
    font-size: 22px;
    line-height: 1.7090909091 !important;
  }
}
.single__title {
  letter-spacing: 0.08em;
}
@media screen and (max-width: 959px) {
  .single__title {
    letter-spacing: 0.08em;
  }
}
@media screen and (max-width: 479px) {
  .single__title {
    letter-spacing: 0.08em;
  }
}
@media screen and (max-width: 959px) {
  .single__title {
    margin-top: calc(1.6 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .single__title {
    margin-top: calc(3.2 * 1vw);
  }
}
.single__image {
  position: relative;
  margin-top: calc(2.3426061493 * 1vw);
}
@media screen and (max-width: 959px) {
  .single__image {
    margin-top: calc(3.2 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .single__image {
    margin-top: calc(6.4 * 1vw);
  }
}
.single__image-inner {
  overflow: hidden;
  aspect-ratio: 1/1;
  width: calc(100% - 0.3660322108 * 1vw);
  z-index: 1;
}
@media screen and (max-width: 959px) {
  .single__image-inner {
    width: calc(100% - 1.3333333333 * 1vw);
  }
}
.single__image-inner::after {
  content: "";
  position: absolute;
  right: 0;
  bottom: calc(-0.3660322108 * 1vw);
  width: 100%;
  aspect-ratio: 1/1;
  height: auto;
  z-index: -1;
  background-image: repeating-linear-gradient(-45deg, #fbca41, #fbca41 5px, transparent 5px, transparent 10px);
}
@media screen and (max-width: 959px) {
  .single__image-inner::after {
    bottom: calc(-1.3333333333 * 1vw);
  }
}
.single__image-inner img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.single__outline {
  position: relative;
  margin-top: calc(2.9282576867 * 1vw);
}
@media screen and (max-width: 959px) {
  .single__outline {
    margin-top: calc(5.3333333333 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .single__outline {
    margin-top: calc(8.5333333333 * 1vw);
  }
}
.single__outline .outline {
  padding: calc(2.9282576867 * 1vw) calc(2.0497803807 * 1vw);
  border: solid 1px #fbca41;
  border-radius: calc(0.7320644217 * 1vw);
}
@media screen and (max-width: 959px) {
  .single__outline .outline {
    padding: calc(3.2 * 1vw) calc(2.1333333333 * 1vw);
    border-radius: calc(0.8 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .single__outline .outline {
    padding: calc(6.4 * 1vw) calc(4.2666666667 * 1vw);
    border-radius: calc(1.6 * 1vw);
  }
}
.single__outline .outline__title {
  position: absolute;
  top: 0;
  transform: translate(0%, -40%);
  background-color: #fff;
}
.single__outline .outline__title img {
  width: calc(3.513909224 * 1vw);
  height: auto;
}
@media screen and (max-width: 959px) {
  .single__outline .outline__title img {
    width: calc(6.4 * 1vw);
    padding: 0 calc(0.5333333333 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .single__outline .outline__title img {
    width: calc(11.4666666667 * 1vw);
    padding: 0 calc(1.0666666667 * 1vw);
  }
}
.single__outline .outline__item {
  margin-top: calc(0.5856515373 * 1vw);
}
@media screen and (max-width: 959px) {
  .single__outline .outline__item {
    margin-top: calc(1.0666666667 * 1vw);
  }
}
.single__outline .outline__item:first-of-type {
  margin-top: 0;
}
.single__outline .outline__item::before {
  display: none;
}
.single__outline .outline__item a {
  color: #1c1c1c;
  border-bottom: none;
  font-weight: 500;
  text-indent: -1em;
  padding-left: 1em;
}
.single__outline .outline__item a {
  font-size: clamp(16px, 1.1713030747vw, 9999px);
  line-height: 1.5;
}
@media screen and (max-width: 959px) {
  .single__outline .outline__item a {
    font-size: clamp(0.875rem, 0.8276992936rem + 0.2018163471vw, 1rem);
  }
}
@media screen and (max-width: 479px) {
  .single__outline .outline__item a {
    font-size: 14px;
    line-height: 1.4285714286 !important;
  }
}
.single__outline .outline__item a {
  letter-spacing: 0.025em;
}
@media screen and (max-width: 959px) {
  .single__outline .outline__item a {
    letter-spacing: 0.025em;
  }
}
@media screen and (max-width: 479px) {
  .single__outline .outline__item a {
    letter-spacing: 0.025em;
  }
}
.single__outline .outline__item a::after {
  display: none;
}
.single__outline .outline__item a span {
  padding-right: calc(0.878477306 * 1vw);
}
.single__outline .outline__item a span {
  font-size: clamp(12px, 0.878477306vw, 9999px);
  line-height: 2;
}
@media screen and (max-width: 959px) {
  .single__outline .outline__item a span {
    font-size: clamp(0.625rem, 0.5776992936rem + 0.2018163471vw, 0.75rem);
  }
}
@media screen and (max-width: 479px) {
  .single__outline .outline__item a span {
    font-size: 10px;
    line-height: 2.4 !important;
  }
}
.single__outline .outline__item a span {
  letter-spacing: 0.025em;
}
@media screen and (max-width: 959px) {
  .single__outline .outline__item a span {
    letter-spacing: 0.025em;
  }
}
@media screen and (max-width: 479px) {
  .single__outline .outline__item a span {
    letter-spacing: 0.025em;
  }
}
@media screen and (max-width: 959px) {
  .single__outline .outline__item a span {
    padding-right: calc(1.0666666667 * 1vw);
  }
}
.single__content {
  margin-top: calc(2.9282576867 * 1vw);
}
@media screen and (max-width: 959px) {
  .single__content {
    margin-top: calc(6.4 * 1vw);
  }
}
.single__content p {
  margin-top: calc(2.3426061493 * 1vw);
  font-weight: 500;
}
.single__content p {
  font-size: clamp(16px, 1.1713030747vw, 9999px);
  line-height: 1.5;
}
@media screen and (max-width: 959px) {
  .single__content p {
    font-size: clamp(0.875rem, 0.8276992936rem + 0.2018163471vw, 1rem);
  }
}
@media screen and (max-width: 479px) {
  .single__content p {
    font-size: 14px;
    line-height: 1.7142857143 !important;
  }
}
.single__content p {
  letter-spacing: 0.05em;
}
@media screen and (max-width: 959px) {
  .single__content p {
    letter-spacing: 0.05em;
  }
}
@media screen and (max-width: 479px) {
  .single__content p {
    letter-spacing: 0.05em;
  }
}
@media screen and (max-width: 959px) {
  .single__content p {
    margin-top: calc(3.2 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .single__content p {
    margin-top: calc(6.4 * 1vw);
  }
}
.single__content h2 {
  margin-top: calc(2.9282576867 * 1vw);
  border-top: solid 2px #fbca41;
  border-bottom: solid 2px #fbca41;
  padding: 0 calc(0.5856515373 * 1vw);
  font-weight: 700;
}
.single__content h2 {
  font-size: clamp(20px, 1.4641288433vw, 9999px);
  line-height: 1.8;
}
@media screen and (max-width: 959px) {
  .single__content h2 {
    font-size: clamp(1.125rem, 1.0776992936rem + 0.2018163471vw, 1.25rem);
  }
}
@media screen and (max-width: 479px) {
  .single__content h2 {
    font-size: 18px;
    line-height: 1.5 !important;
  }
}
.single__content h2 {
  letter-spacing: 0.1em;
}
@media screen and (max-width: 959px) {
  .single__content h2 {
    letter-spacing: 0.1em;
  }
}
@media screen and (max-width: 479px) {
  .single__content h2 {
    letter-spacing: 0.1em;
  }
}
@media screen and (max-width: 959px) {
  .single__content h2 {
    margin-top: calc(5.3333333333 * 1vw);
    padding: calc(1.6 * 1vw) calc(1.0666666667 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .single__content h2 {
    margin-top: calc(8.5333333333 * 1vw);
    padding: calc(3.2 * 1vw) calc(2.1333333333 * 1vw);
  }
}
.single__content h3 {
  margin-top: calc(2.3426061493 * 1vw);
  position: relative;
  padding-bottom: calc(0.439238653 * 1vw);
  font-weight: 700;
}
.single__content h3 {
  font-size: clamp(18px, 1.317715959vw, 9999px);
  line-height: 2;
}
@media screen and (max-width: 959px) {
  .single__content h3 {
    font-size: clamp(1rem, 0.9526992936rem + 0.2018163471vw, 1.125rem);
  }
}
@media screen and (max-width: 479px) {
  .single__content h3 {
    font-size: 16px;
    line-height: 2 !important;
  }
}
.single__content h3 {
  letter-spacing: 0.1em;
}
@media screen and (max-width: 959px) {
  .single__content h3 {
    letter-spacing: 0.1em;
  }
}
@media screen and (max-width: 479px) {
  .single__content h3 {
    letter-spacing: 0.1em;
  }
}
@media screen and (max-width: 959px) {
  .single__content h3 {
    margin-top: calc(3.7333333333 * 1vw);
    padding-bottom: calc(0.8 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .single__content h3 {
    margin-top: calc(6.4 * 1vw);
    padding-bottom: calc(1.6 * 1vw);
  }
}
.single__content h3::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translate(-50%, 0%);
  width: 100%;
  height: calc(0.2928257687 * 1vw);
  background-image: repeating-linear-gradient(-45deg, #fbca41, #fbca41 5px, transparent 5px, transparent 10px);
}
@media screen and (max-width: 959px) {
  .single__content h3::after {
    height: calc(0.5333333333 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .single__content h3::after {
    height: calc(1.0666666667 * 1vw);
  }
}
.single__content h4 {
  margin-top: calc(1.756954612 * 1vw);
  position: relative;
  padding-left: calc(0.7320644217 * 1vw);
  font-weight: 500;
}
.single__content h4 {
  font-size: clamp(18px, 1.317715959vw, 9999px);
  line-height: 1.5;
}
@media screen and (max-width: 959px) {
  .single__content h4 {
    font-size: clamp(1rem, 0.9526992936rem + 0.2018163471vw, 1.125rem);
  }
}
@media screen and (max-width: 479px) {
  .single__content h4 {
    font-size: 16px;
    line-height: 1.5 !important;
  }
}
.single__content h4 {
  letter-spacing: 0.1em;
}
@media screen and (max-width: 959px) {
  .single__content h4 {
    letter-spacing: 0.1em;
  }
}
@media screen and (max-width: 479px) {
  .single__content h4 {
    letter-spacing: 0.1em;
  }
}
@media screen and (max-width: 959px) {
  .single__content h4 {
    margin-top: calc(2.4 * 1vw);
    padding-left: calc(2.1333333333 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .single__content h4 {
    margin-top: calc(4.2666666667 * 1vw);
    padding-left: calc(3.2 * 1vw);
  }
}
.single__content h4::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 0%;
  transform: translate(0%, -50%);
  width: calc(0.2196193265 * 1vw);
  height: 80%;
  background-color: #fbca41;
  border-radius: calc(0.1098096633 * 1vw);
}
@media screen and (max-width: 959px) {
  .single__content h4::after {
    border-radius: calc(0.2666666667 * 1vw);
    width: calc(0.5333333333 * 1vw);
    height: 80%;
  }
}
@media screen and (max-width: 649px) {
  .single__content h4::after {
    border-radius: calc(0.4 * 1vw);
    width: calc(0.8 * 1vw);
  }
}
.single__content h5 {
  margin-top: calc(1.1713030747 * 1vw);
  padding-bottom: calc(0.1464128843 * 1vw);
  width: fit-content;
  font-weight: 500;
  background: url(../img/common/under.png) bottom repeat-x;
  background-size: calc(1.2445095168 * 1vw);
}
.single__content h5 {
  font-size: clamp(16px, 1.1713030747vw, 9999px);
  line-height: 1.5;
}
@media screen and (max-width: 959px) {
  .single__content h5 {
    font-size: clamp(0.875rem, 0.8276992936rem + 0.2018163471vw, 1rem);
  }
}
@media screen and (max-width: 479px) {
  .single__content h5 {
    font-size: 14px;
    line-height: 1.7142857143 !important;
  }
}
.single__content h5 {
  letter-spacing: 0.05em;
}
@media screen and (max-width: 959px) {
  .single__content h5 {
    letter-spacing: 0.05em;
  }
}
@media screen and (max-width: 479px) {
  .single__content h5 {
    letter-spacing: 0.05em;
  }
}
@media screen and (max-width: 959px) {
  .single__content h5 {
    background-size: calc(4.5333333333 * 1vw);
  }
}
@media screen and (max-width: 959px) {
  .single__content h5 {
    margin-top: calc(1.0666666667 * 1vw);
    padding-bottom: calc(0.5333333333 * 1vw);
    background-size: calc(2.1333333333 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .single__content h5 {
    margin-top: calc(2.1333333333 * 1vw);
    background-size: calc(2.6666666667 * 1vw);
  }
}
@media screen and (max-width: 479px) {
  .single__content h5 {
    margin-top: calc(2.1333333333 * 1vw);
    padding-bottom: calc(0.5333333333 * 1vw);
    background: url(../img/common/under.png) bottom repeat-x;
    background-size: calc(1.2445095168 * 1vw);
  }
}
@media screen and (max-width: 479px) and (max-width: 959px) {
  .single__content h5 {
    background-size: calc(4.5333333333 * 1vw);
  }
}
.single__content h6 {
  margin-top: calc(1.1713030747 * 1vw);
  padding-left: calc(2.9282576867 * 1vw);
  position: relative;
  color: #2f5f98;
  width: fit-content;
  font-weight: 500;
}
.single__content h6 {
  font-size: clamp(16px, 1.1713030747vw, 9999px);
  line-height: 1.5;
}
@media screen and (max-width: 959px) {
  .single__content h6 {
    font-size: clamp(0.875rem, 0.8276992936rem + 0.2018163471vw, 1rem);
  }
}
@media screen and (max-width: 479px) {
  .single__content h6 {
    font-size: 14px;
    line-height: 1.7142857143 !important;
  }
}
.single__content h6 {
  letter-spacing: 0.05em;
}
@media screen and (max-width: 959px) {
  .single__content h6 {
    letter-spacing: 0.05em;
  }
}
@media screen and (max-width: 479px) {
  .single__content h6 {
    letter-spacing: 0.05em;
  }
}
@media screen and (max-width: 959px) {
  .single__content h6 {
    margin-top: calc(1.0666666667 * 1vw);
    padding-left: calc(5.3333333333 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .single__content h6 {
    margin-top: calc(2.1333333333 * 1vw);
    padding-left: calc(10.6666666667 * 1vw);
  }
}
.single__content h6::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 0%;
  transform: translate(0%, -50%);
  width: calc(2.3426061493 * 1vw);
  background-color: #2f5f98;
  height: calc(0.0732064422 * 1vw);
}
@media screen and (max-width: 959px) {
  .single__content h6::after {
    width: calc(4.2666666667 * 1vw);
    height: calc(0.2133333333 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .single__content h6::after {
    width: calc(8.5333333333 * 1vw);
    height: calc(0.2666666667 * 1vw);
  }
}
.single__content small {
  font-size: clamp(14px, 1.0248901903vw, 9999px);
  line-height: 1.7142857143;
}
@media screen and (max-width: 959px) {
  .single__content small {
    font-size: clamp(0.75rem, 0.7026992936rem + 0.2018163471vw, 0.875rem);
  }
}
@media screen and (max-width: 479px) {
  .single__content small {
    font-size: 12px;
    line-height: 2 !important;
  }
}
.single__content small {
  letter-spacing: 0.05em;
}
@media screen and (max-width: 959px) {
  .single__content small {
    letter-spacing: 0.05em;
  }
}
@media screen and (max-width: 479px) {
  .single__content small {
    letter-spacing: 0.05em;
  }
}
.single__content figure {
  padding: calc(1.317715959 * 1vw) 0;
  margin: 0;
}
@media screen and (max-width: 959px) {
  .single__content figure {
    padding: calc(2.6666666667 * 1vw) 0;
  }
}
@media screen and (max-width: 649px) {
  .single__content figure {
    padding: calc(4.8 * 1vw) 0;
  }
}
.single__content blockquote {
  margin-top: calc(1.756954612 * 1vw);
  position: relative;
  font-weight: 500;
  background-color: #fff9d4;
  padding: calc(1.756954612 * 1vw) calc(4.0263543192 * 1vw);
}
.single__content blockquote {
  font-size: clamp(16px, 1.1713030747vw, 9999px);
  line-height: 1.5;
}
@media screen and (max-width: 959px) {
  .single__content blockquote {
    font-size: clamp(0.875rem, 0.8276992936rem + 0.2018163471vw, 1rem);
  }
}
@media screen and (max-width: 479px) {
  .single__content blockquote {
    font-size: 14px;
    line-height: 1.7142857143 !important;
  }
}
.single__content blockquote {
  letter-spacing: 0.05em;
}
@media screen and (max-width: 959px) {
  .single__content blockquote {
    letter-spacing: 0.05em;
  }
}
@media screen and (max-width: 479px) {
  .single__content blockquote {
    letter-spacing: 0.05em;
  }
}
@media screen and (max-width: 959px) {
  .single__content blockquote {
    padding: calc(4.2666666667 * 1vw) calc(2.1333333333 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .single__content blockquote {
    padding: calc(5.8666666667 * 1vw) calc(4.2666666667 * 1vw);
  }
}
.single__content blockquote p {
  margin-top: 0;
}
.single__content blockquote::after, .single__content blockquote::before {
  content: "";
  position: absolute;
  top: 0%;
  left: 0%;
  margin: calc(0.878477306 * 1vw);
  width: calc(1.317715959 * 1vw);
  aspect-ratio: 18/15;
  height: auto;
  background-image: url(../img/archive/blockquote-deco01.png);
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
}
@media screen and (max-width: 959px) {
  .single__content blockquote::after, .single__content blockquote::before {
    margin: calc(1.6 * 1vw);
    width: calc(2.1333333333 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .single__content blockquote::after, .single__content blockquote::before {
    margin: calc(2.1333333333 * 1vw);
    width: calc(3.2 * 1vw);
  }
}
.single__content blockquote::before {
  top: auto;
  left: auto;
  bottom: 0;
  right: 0;
  background-image: url(../img/archive/blockquote-deco02.png);
}
.single__content blockquote cite {
  display: block;
  margin: 0 0 0 auto;
  text-align: right;
  color: #646464 !important;
  font-weight: 400;
  border: none;
  padding-right: 0;
}
.single__content blockquote cite {
  font-size: clamp(12px, 0.878477306vw, 9999px);
  line-height: 2;
}
@media screen and (max-width: 959px) {
  .single__content blockquote cite {
    font-size: clamp(0.75rem, 0.75rem + 0vw, 0.75rem);
  }
}
@media screen and (max-width: 479px) {
  .single__content blockquote cite {
    font-size: 12px;
    line-height: 2 !important;
  }
}
.single__content blockquote cite {
  letter-spacing: 0.05em;
}
@media screen and (max-width: 959px) {
  .single__content blockquote cite {
    letter-spacing: 0.05em;
  }
}
@media screen and (max-width: 479px) {
  .single__content blockquote cite {
    letter-spacing: 0.05em;
  }
}
.single__content blockquote cite a {
  font-weight: 500;
  color: #646464 !important;
  border: none;
  padding-right: 0;
}
.single__content blockquote cite a {
  font-size: clamp(12px, 0.878477306vw, 9999px);
  line-height: 2;
}
@media screen and (max-width: 959px) {
  .single__content blockquote cite a {
    font-size: clamp(0.75rem, 0.75rem + 0vw, 0.75rem);
  }
}
@media screen and (max-width: 479px) {
  .single__content blockquote cite a {
    font-size: 12px;
    line-height: 2 !important;
  }
}
.single__content blockquote cite a {
  letter-spacing: 0.05em;
}
@media screen and (max-width: 959px) {
  .single__content blockquote cite a {
    letter-spacing: 0.05em;
  }
}
@media screen and (max-width: 479px) {
  .single__content blockquote cite a {
    letter-spacing: 0.05em;
  }
}
.single__content blockquote cite a::after {
  display: none;
}
.single__content strong {
  font-weight: 700;
  position: relative;
  z-index: 1;
}
.single__content strong {
  font-size: clamp(16px, 1.1713030747vw, 9999px);
  line-height: 1.5;
}
@media screen and (max-width: 959px) {
  .single__content strong {
    font-size: clamp(0.875rem, 0.8276992936rem + 0.2018163471vw, 1rem);
  }
}
@media screen and (max-width: 479px) {
  .single__content strong {
    font-size: 14px;
    line-height: 1.7142857143 !important;
  }
}
.single__content strong {
  letter-spacing: 0.05em;
}
@media screen and (max-width: 959px) {
  .single__content strong {
    letter-spacing: 0.05em;
  }
}
@media screen and (max-width: 479px) {
  .single__content strong {
    letter-spacing: 0.05em;
  }
}
.single__content strong::before {
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translate(-50%, 0%);
  content: "";
  width: 100%;
  height: calc(0.5856515373 * 1vw);
  background-color: #fbca41;
  z-index: -1;
}
@media screen and (max-width: 959px) {
  .single__content strong::before {
    height: calc(2.1333333333 * 1vw);
  }
}
.single__content a {
  display: inline-block;
  width: fit-content;
  border-bottom: solid 1px #2f5f98;
  color: #2f5f98;
  font-weight: 700;
  position: relative;
  padding-right: calc(1.1713030747 * 1vw);
}
.single__content a {
  font-size: clamp(16px, 1.1713030747vw, 9999px);
  line-height: 1.5;
}
@media screen and (max-width: 959px) {
  .single__content a {
    font-size: clamp(0.875rem, 0.8276992936rem + 0.2018163471vw, 1rem);
  }
}
@media screen and (max-width: 479px) {
  .single__content a {
    font-size: 14px;
    line-height: 1.7142857143 !important;
  }
}
.single__content a {
  letter-spacing: 0.05em;
}
@media screen and (max-width: 959px) {
  .single__content a {
    letter-spacing: 0.05em;
  }
}
@media screen and (max-width: 479px) {
  .single__content a {
    letter-spacing: 0.05em;
  }
}
@media screen and (max-width: 959px) {
  .single__content a {
    padding-right: 16px;
  }
}
.single__content a::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  transform: translate(0%, -50%);
  width: calc(1.1713030747 * 1vw);
  height: auto;
  aspect-ratio: 1/1;
  background-image: url(../img/common/break-blue.svg);
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
}
@media screen and (max-width: 959px) {
  .single__content a::after {
    width: 14px;
  }
}
.single__content ul {
  counter-reset: ul;
  margin-top: calc(0.5856515373 * 1vw);
}
@media screen and (max-width: 959px) {
  .single__content ul {
    margin-top: calc(1.0666666667 * 1vw);
  }
}
.single__content ul li {
  counter-increment: ul;
  margin-top: calc(0.2928257687 * 1vw);
  position: relative;
  font-weight: 500;
}
.single__content ul li {
  font-size: clamp(16px, 1.1713030747vw, 9999px);
  line-height: 1.5;
}
@media screen and (max-width: 959px) {
  .single__content ul li {
    font-size: clamp(0.875rem, 0.8276992936rem + 0.2018163471vw, 1rem);
  }
}
@media screen and (max-width: 479px) {
  .single__content ul li {
    font-size: 14px;
    line-height: 1.7142857143 !important;
  }
}
.single__content ul li {
  letter-spacing: 0.05em;
}
@media screen and (max-width: 959px) {
  .single__content ul li {
    letter-spacing: 0.05em;
  }
}
@media screen and (max-width: 479px) {
  .single__content ul li {
    letter-spacing: 0.05em;
  }
}
@media screen and (max-width: 959px) {
  .single__content ul li {
    margin-top: calc(1.0666666667 * 1vw);
  }
}
.single__content ul li:first-child {
  margin-top: 0;
}
.single__content ul li::before {
  padding-right: calc(0.3660322108 * 1vw);
  color: #fbca41;
  font-weight: 700;
  font-family: "Caveat", cursive;
  content: counter(ul, decimal-leading-zero) ".";
}
.single__content ul li::before {
  font-size: clamp(22px, 1.6105417277vw, 9999px);
  line-height: 1;
}
@media screen and (max-width: 959px) {
  .single__content ul li::before {
    font-size: clamp(1.25rem, 1.2026992936rem + 0.2018163471vw, 1.375rem);
  }
}
@media screen and (max-width: 479px) {
  .single__content ul li::before {
    font-size: 20px;
    line-height: 1 !important;
  }
}
.single__content ul li::before {
  letter-spacing: 0.05em;
}
@media screen and (max-width: 959px) {
  .single__content ul li::before {
    letter-spacing: 0.05em;
  }
}
@media screen and (max-width: 479px) {
  .single__content ul li::before {
    letter-spacing: 0.05em;
  }
}
@media screen and (max-width: 959px) {
  .single__content ul li::before {
    padding-right: calc(1.3333333333 * 1vw);
  }
}
.single__content ol {
  margin-top: calc(0.5856515373 * 1vw);
}
@media screen and (max-width: 959px) {
  .single__content ol {
    margin-top: calc(1.0666666667 * 1vw);
  }
}
.single__content ol li {
  padding-left: calc(0.878477306 * 1vw);
  margin-top: calc(0.2928257687 * 1vw);
  position: relative;
  font-weight: 500;
}
.single__content ol li {
  font-size: clamp(16px, 1.1713030747vw, 9999px);
  line-height: 1.5;
}
@media screen and (max-width: 959px) {
  .single__content ol li {
    font-size: clamp(0.875rem, 0.8276992936rem + 0.2018163471vw, 1rem);
  }
}
@media screen and (max-width: 479px) {
  .single__content ol li {
    font-size: 14px;
    line-height: 1.7142857143 !important;
  }
}
.single__content ol li {
  letter-spacing: 0.05em;
}
@media screen and (max-width: 959px) {
  .single__content ol li {
    letter-spacing: 0.05em;
  }
}
@media screen and (max-width: 479px) {
  .single__content ol li {
    letter-spacing: 0.05em;
  }
}
@media screen and (max-width: 959px) {
  .single__content ol li {
    padding-left: calc(1.6 * 1vw);
    margin-top: calc(1.0666666667 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .single__content ol li {
    padding-left: calc(3.2 * 1vw);
  }
}
.single__content ol li:first-child {
  margin-top: 0;
}
.single__content ol li::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0%;
  transform: translate(0%, -50%);
  width: calc(0.439238653 * 1vw);
  aspect-ratio: 1/1;
  height: auto;
  border-radius: calc(0.2196193265 * 1vw);
  background-color: #fbca41;
}
@media screen and (max-width: 959px) {
  .single__content ol li::before {
    width: calc(0.8 * 1vw);
    border-radius: calc(0.4 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .single__content ol li::before {
    width: calc(1.6 * 1vw);
    border-radius: calc(0.8 * 1vw);
  }
}
.single__content hr {
  position: relative;
  opacity: 1;
}
.single__content .wp-block-separator {
  color: #fbca41;
  border-top: 1px solid;
}
.single__content .wp-block-separator.is-style-dots {
  border-top: 2px dotted !important;
}
.single__content .wp-block-separator.is-style-dots::before {
  content: none;
}
.single__story {
  margin-top: calc(1.4641288433 * 1vw);
}
@media screen and (max-width: 959px) {
  .single__story {
    margin-top: calc(2.1333333333 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .single__story {
    margin-top: calc(4.2666666667 * 1vw);
  }
}
.single__story-category {
  font-weight: 500;
  margin-left: calc(-0.5856515373 * 1vw);
  margin-bottom: calc(1.4641288433 * 1vw);
}
.single__story-category {
  font-size: clamp(16px, 1.1713030747vw, 9999px);
  line-height: 1;
}
@media screen and (max-width: 959px) {
  .single__story-category {
    font-size: clamp(0.75rem, 0.6553985873rem + 0.4036326942vw, 1rem);
  }
}
@media screen and (max-width: 479px) {
  .single__story-category {
    font-size: 12px;
    line-height: 1 !important;
  }
}
.single__story-category {
  letter-spacing: 0.025em;
}
@media screen and (max-width: 959px) {
  .single__story-category {
    letter-spacing: 0.025em;
  }
}
@media screen and (max-width: 479px) {
  .single__story-category {
    letter-spacing: 0.025em;
  }
}
@media screen and (max-width: 959px) {
  .single__story-category {
    margin-left: calc(-1.0666666667 * 1vw);
    margin-bottom: calc(1.3333333333 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .single__story-category {
    margin-left: calc(-2.1333333333 * 1vw);
    margin-bottom: calc(2.6666666667 * 1vw);
  }
}
.single__story-title {
  width: fit-content;
  padding: calc(0.2928257687 * 1vw) calc(1.1713030747 * 1vw);
  background-color: #fbca41;
  font-weight: 700;
  display: inline;
  word-break: keep-all;
  box-decoration-break: clone;
  -webkit-box-decoration-break: clone;
}
.single__story-title {
  font-size: clamp(24px, 1.756954612vw, 9999px);
  line-height: 1.5;
}
@media screen and (max-width: 959px) {
  .single__story-title {
    font-size: clamp(1.25rem, 1.1553985873rem + 0.4036326942vw, 1.5rem);
  }
}
@media screen and (max-width: 479px) {
  .single__story-title {
    font-size: 20px;
    line-height: 1.5 !important;
  }
}
.single__story-title {
  letter-spacing: 0.1em;
}
@media screen and (max-width: 959px) {
  .single__story-title {
    letter-spacing: 0.1em;
  }
}
@media screen and (max-width: 479px) {
  .single__story-title {
    letter-spacing: 0.1em;
  }
}
@media screen and (max-width: 959px) {
  .single__story-title {
    padding: calc(0.5333333333 * 1vw) calc(2.1333333333 * 1vw);
  }
}
.single .tags {
  margin-top: calc(1.4641288433 * 1vw);
}
@media screen and (max-width: 959px) {
  .single .tags {
    margin-top: calc(2.1333333333 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .single .tags {
    margin-top: calc(4.2666666667 * 1vw);
  }
}

.archive-blog__list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-column-gap: calc(1.9033674963 * 1vw);
  grid-row-gap: calc(3.513909224 * 1vw);
}
@media screen and (max-width: 959px) {
  .archive-blog__list {
    grid-template-columns: 1fr 1fr;
    grid-column-gap: calc(2.6666666667 * 1vw);
    grid-row-gap: calc(4.8 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .archive-blog__list {
    grid-template-columns: 1fr;
    grid-column-gap: 0;
    grid-row-gap: calc(9.6 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .archive-blog__item {
    padding: 0 calc(6.1333333333 * 1vw);
  }
}
.archive-blog .no-articles {
  grid-column-start: 1;
  grid-column-end: 4;
}
@media screen and (max-width: 959px) {
  .archive-blog .no-articles {
    grid-column-end: 3;
  }
}
@media screen and (max-width: 649px) {
  .archive-blog .no-articles {
    grid-column-end: 1;
  }
}

.archive-story__list {
  display: grid;
  grid-template-columns: 1fr;
  grid-row-gap: calc(3.513909224 * 1vw);
}
@media screen and (max-width: 959px) {
  .archive-story__list {
    grid-template-columns: 1fr;
    grid-column-gap: 0;
    grid-row-gap: calc(6.4 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .archive-story__list {
    grid-row-gap: calc(9.6 * 1vw);
  }
}

.archive-latest {
  margin-top: calc(5.8565153734 * 1vw);
}
@media screen and (max-width: 959px) {
  .archive-latest {
    margin-top: calc(10.6666666667 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .archive-latest {
    margin-top: calc(14.9333333333 * 1vw);
  }
}
.archive-latest__title {
  margin-bottom: calc(2.3426061493 * 1vw);
}
@media screen and (max-width: 959px) {
  .archive-latest__title {
    margin: 0 auto calc(6.4 * 1vw) auto;
    width: fit-content;
  }
}
.archive-latest__title .top-title--small p {
  padding-top: calc(2.0497803807 * 1vw);
}
@media screen and (max-width: 959px) {
  .archive-latest__title .top-title--small p {
    padding-top: calc(3.7333333333 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .archive-latest__title .top-title--small p {
    padding-top: calc(7.4666666667 * 1vw);
  }
}
.archive-latest__title .top-title--small p::after {
  top: 35%;
}
@media screen and (max-width: 959px) {
  .archive-latest__content {
    margin-left: -1.6%;
    overflow: hidden;
  }
}
@media screen and (max-width: 649px) {
  .archive-latest__content {
    margin: 0 calc(50% - 50vw);
    width: 100vw;
    overflow: hidden;
  }
}
@media screen and (min-width: 960px) {
  .archive-latest__content .swiper-wrapper {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-column-gap: calc(1.9033674963 * 1vw);
    grid-row-gap: calc(3.513909224 * 1vw);
  }
}
@media screen and (max-width: 959px) {
  .archive-latest__content .swiper-slide {
    width: 47.65% !important;
    margin: 0 1.6%;
  }
}
@media screen and (max-width: 649px) {
  .archive-latest__content .swiper-slide {
    width: calc(72 * 1vw) !important;
    margin: 0 calc(2.1333333333 * 1vw);
  }
}

.pager {
  margin: calc(3.8067349927 * 1vw) auto 0;
}
@media screen and (max-width: 959px) {
  .pager {
    margin: calc(6.4 * 1vw) auto 0;
  }
}

.archive-filter {
  background-color: #fff9d4;
  border: solid 1px #fbca41;
  margin-top: calc(5.8565153734 * 1vw);
}
@media screen and (max-width: 959px) {
  .archive-filter {
    max-width: none;
    border-left: none;
    border-right: none;
    margin: calc(7.4666666667 * 1vw) calc(50% - 50vw) 0;
    width: 100vw;
  }
}
@media screen and (max-width: 649px) {
  .archive-filter {
    border-left: none;
    border-right: none;
    margin: calc(14.9333333333 * 1vw) calc(50% - 50vw) 0;
  }
}
.archive-filter p {
  margin: 0 auto;
  width: fit-content;
  font-weight: 500;
}
.archive-filter p {
  font-size: clamp(12px, 0.878477306vw, 9999px);
  line-height: 1.5;
}
@media screen and (max-width: 959px) {
  .archive-filter p {
    font-size: clamp(0.75rem, 0.75rem + 0vw, 0.75rem);
  }
}
@media screen and (max-width: 479px) {
  .archive-filter p {
    font-size: 12px;
    line-height: 1.5 !important;
  }
}
.archive-filter p {
  letter-spacing: 0.05em;
}
@media screen and (max-width: 959px) {
  .archive-filter p {
    letter-spacing: 0.05em;
  }
}
@media screen and (max-width: 479px) {
  .archive-filter p {
    letter-spacing: 0.05em;
  }
}
.archive-filter__title {
  margin: 0 auto;
  width: fit-content;
  margin-bottom: calc(1.4641288433 * 1vw);
}
@media screen and (max-width: 959px) {
  .archive-filter__title {
    margin-bottom: calc(2.1333333333 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .archive-filter__title {
    margin-bottom: calc(4.2666666667 * 1vw);
  }
}
.archive-filter__title-en {
  text-align: center;
  color: #fbca41;
  font-family: "Caveat", cursive;
  font-weight: 700;
}
.archive-filter__title-en {
  font-size: clamp(16px, 1.1713030747vw, 9999px);
  line-height: 1.5;
}
@media screen and (max-width: 959px) {
  .archive-filter__title-en {
    font-size: clamp(1rem, 1rem + 0vw, 1rem);
  }
}
@media screen and (max-width: 479px) {
  .archive-filter__title-en {
    font-size: 16px;
    line-height: 1.5 !important;
  }
}
.archive-filter__title-en {
  letter-spacing: 0.2em;
}
@media screen and (max-width: 959px) {
  .archive-filter__title-en {
    letter-spacing: 0.2em;
  }
}
@media screen and (max-width: 479px) {
  .archive-filter__title-en {
    letter-spacing: 0.2em;
  }
}
.archive-filter__title-ja {
  text-align: center;
  color: #2f5f98;
  font-weight: 700;
}
.archive-filter__title-ja {
  font-size: clamp(22px, 1.6105417277vw, 9999px);
  line-height: 1.5;
}
@media screen and (max-width: 959px) {
  .archive-filter__title-ja {
    font-size: clamp(1.375rem, 1.375rem + 0vw, 1.375rem);
  }
}
@media screen and (max-width: 479px) {
  .archive-filter__title-ja {
    font-size: 22px;
    line-height: 1.5 !important;
  }
}
.archive-filter__title-ja {
  letter-spacing: 0.05em;
}
@media screen and (max-width: 959px) {
  .archive-filter__title-ja {
    letter-spacing: 0.05em;
  }
}
@media screen and (max-width: 479px) {
  .archive-filter__title-ja {
    letter-spacing: 0.05em;
  }
}
.archive-filter__inner {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  border-bottom: dashed 1px #fbca41;
}
@media screen and (max-width: 959px) {
  .archive-filter__inner {
    grid-template-columns: 1fr;
  }
}
.archive-filter__category {
  border-right: dashed 1px #fbca41;
}
@media screen and (max-width: 959px) {
  .archive-filter__category {
    border-right: none;
    border-bottom: dashed 1px #fbca41;
  }
}
.archive-filter__category .category::after {
  background-color: #fff9d4;
}
.archive-filter__category, .archive-filter__hashtag {
  padding: calc(2.3426061493 * 1vw) calc(2.9282576867 * 1vw);
}
@media screen and (max-width: 959px) {
  .archive-filter__category, .archive-filter__hashtag {
    padding: calc(3.2 * 1vw) calc(4 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .archive-filter__category, .archive-filter__hashtag {
    padding: calc(6.4 * 1vw) calc(8 * 1vw);
  }
}
.archive-filter__keyword {
  padding: calc(2.3426061493 * 1vw) calc(2.9282576867 * 1vw) calc(2.635431918 * 1vw);
}
@media screen and (max-width: 959px) {
  .archive-filter__keyword {
    padding: calc(3.2 * 1vw) calc(4 * 1vw) calc(5.6 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .archive-filter__keyword {
    padding: calc(6.4 * 1vw) calc(8 * 1vw) calc(11.2 * 1vw);
  }
}
.archive-filter .categories,
.archive-filter .tags {
  max-height: none !important;
}

.archive-search__filter {
  position: relative;
  width: fit-content;
  transform: rotate(-3deg);
}
@media screen and (max-width: 959px) {
  .archive-search__filter {
    margin-bottom: calc(1.0666666667 * 1vw);
  }
}
.archive-search__filter::after {
  content: "";
  position: absolute;
  top: 48%;
  left: 0%;
  transform: translate(-60%, -50%);
  width: calc(4.9780380673 * 1vw);
  aspect-ratio: 68/36;
  height: auto;
  background-image: url(../img/archive/ribbon.png);
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  z-index: 2;
}
@media screen and (max-width: 959px) {
  .archive-search__filter::after {
    width: calc(8.5333333333 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .archive-search__filter::after {
    width: calc(11.4666666667 * 1vw);
  }
}
.archive-search__filter-item {
  width: fit-content;
  box-sizing: border-box;
  clip-path: polygon(95% 0, 100% 20%, 100% 100%, 0 100%, 0 0);
  background-color: #fff9d4;
  padding: calc(1.4641288433 * 1vw) calc(1.4641288433 * 1vw) calc(1.4641288433 * 1vw) calc(2.196193265 * 1vw);
  z-index: 1;
  position: relative;
}
@media screen and (max-width: 959px) {
  .archive-search__filter-item {
    clip-path: polygon(90% 0, 100% 25%, 100% 100%, 0 100%, 0 0);
    padding: calc(2.4 * 1vw) calc(5.8666666667 * 1vw) calc(2.4 * 1vw) calc(6.6666666667 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .archive-search__filter-item {
    clip-path: polygon(90% 0, 100% 25%, 100% 100%, 0 100%, 0 0);
    padding: calc(3.2 * 1vw) calc(7.4666666667 * 1vw) calc(3.2 * 1vw) calc(8.5333333333 * 1vw);
  }
}
.archive-search__filter-item p {
  font-size: clamp(16px, 1.1713030747vw, 9999px);
  line-height: 1.5;
}
@media screen and (max-width: 959px) {
  .archive-search__filter-item p {
    font-size: clamp(1rem, 1rem + 0vw, 1rem);
  }
}
@media screen and (max-width: 479px) {
  .archive-search__filter-item p {
    font-size: 16px;
    line-height: 1.5 !important;
  }
}
.archive-search__filter-item p {
  letter-spacing: 0.05em;
}
@media screen and (max-width: 959px) {
  .archive-search__filter-item p {
    letter-spacing: 0.05em;
  }
}
@media screen and (max-width: 479px) {
  .archive-search__filter-item p {
    letter-spacing: 0.05em;
  }
}
.archive-search__filter-item p span {
  font-weight: 700;
  padding-right: calc(0.5856515373 * 1vw);
}
@media screen and (max-width: 959px) {
  .archive-search__filter-item p span {
    padding-right: calc(1.0666666667 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .archive-search__filter-item p span {
    padding-right: calc(2.1333333333 * 1vw);
  }
}
.archive-search__filter-bk {
  content: "";
  position: absolute;
  box-sizing: border-box;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: calc(100% + 0.2196193265 * 1vw);
  height: calc(100% + 0.2196193265 * 1vw);
  clip-path: polygon(95% 0, 100% 20%, 100% 100%, 0 100%, 0 0);
  background-color: #fbca41;
  z-index: -2;
  background-image: repeating-linear-gradient(-45deg, #fff9d4, #fff9d4 5px, transparent 5px, transparent 10px);
}
@media screen and (max-width: 959px) {
  .archive-search__filter-bk {
    clip-path: polygon(90% 0, 100% 25%, 100% 100%, 0 100%, 0 0);
    width: calc(100% + 0.5333333333 * 1vw);
    height: calc(100% + 0.5333333333 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .archive-search__filter-bk {
    width: calc(100% + 1.0666666667 * 1vw);
    height: calc(100% + 1.0666666667 * 1vw);
  }
}
.archive-search__button {
  margin: 0 0 calc(2.3426061493 * 1vw) auto;
  width: fit-content;
}
@media screen and (max-width: 959px) {
  .archive-search__button {
    margin: 0 0 calc(6.4 * 1vw) auto;
  }
}

.search-bar {
  margin: 0 auto;
  width: 100%;
  max-width: calc(48.3162518302 * 1vw);
  margin-bottom: calc(0.7320644217 * 1vw);
  position: relative;
}
@media screen and (max-width: 959px) {
  .search-bar {
    max-width: calc(84 * 1vw);
    margin-bottom: calc(1.3333333333 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .search-bar {
    margin-bottom: calc(2.6666666667 * 1vw);
  }
}
.search-bar input {
  border-radius: calc(0.2928257687 * 1vw);
  width: 100%;
  border: solid 1px #fbca41;
  padding: calc(0.5856515373 * 1vw) calc(3.953147877 * 1vw) calc(0.5856515373 * 1vw) calc(1.4641288433 * 1vw);
  box-sizing: border-box;
  resize: vertical;
}
.search-bar input {
  font-size: clamp(14px, 1.0248901903vw, 9999px);
  line-height: 1.5;
}
@media screen and (max-width: 959px) {
  .search-bar input {
    font-size: clamp(0.875rem, 0.875rem + 0vw, 0.875rem);
  }
}
@media screen and (max-width: 479px) {
  .search-bar input {
    font-size: 14px;
    line-height: 1.5 !important;
  }
}
.search-bar input {
  letter-spacing: 0.025em;
}
@media screen and (max-width: 959px) {
  .search-bar input {
    letter-spacing: 0.025em;
  }
}
@media screen and (max-width: 479px) {
  .search-bar input {
    letter-spacing: 0.025em;
  }
}
@media screen and (max-width: 959px) {
  .search-bar input {
    border-radius: calc(0.5333333333 * 1vw);
    padding: calc(1.0666666667 * 1vw) calc(6.4 * 1vw) calc(1.0666666667 * 1vw) calc(2.1333333333 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .search-bar input {
    border-radius: calc(1.0666666667 * 1vw);
    padding: calc(2.1333333333 * 1vw) calc(13.8666666667 * 1vw) calc(2.1333333333 * 1vw) calc(4.2666666667 * 1vw);
  }
}
.search-bar input::placeholder {
  color: #d8d8d8;
}
.search-bar input::placeholder {
  font-size: clamp(14px, 1.0248901903vw, 9999px);
  line-height: 1.5;
}
@media screen and (max-width: 959px) {
  .search-bar input::placeholder {
    font-size: clamp(0.875rem, 0.875rem + 0vw, 0.875rem);
  }
}
@media screen and (max-width: 479px) {
  .search-bar input::placeholder {
    font-size: 14px;
    line-height: 1.5 !important;
  }
}
.search-bar input::placeholder {
  letter-spacing: 0.025em;
}
@media screen and (max-width: 959px) {
  .search-bar input::placeholder {
    letter-spacing: 0.025em;
  }
}
@media screen and (max-width: 479px) {
  .search-bar input::placeholder {
    letter-spacing: 0.025em;
  }
}
.search-bar input:focus {
  outline: none;
  box-shadow: none;
}
.search-bar button {
  content: "a";
  position: absolute;
  right: 0;
  top: 50%;
  transform: translate(0%, -50%);
  width: calc(2.635431918 * 1vw);
  aspect-ratio: 1/1;
  height: 100%;
  background-color: #fbca41;
  border-radius: 0 calc(0.2928257687 * 1vw) calc(0.2928257687 * 1vw) 0;
}
@media screen and (max-width: 959px) {
  .search-bar button {
    width: calc(4.8 * 1vw);
    border-radius: 0 calc(0.5333333333 * 1vw) calc(0.5333333333 * 1vw) 0;
  }
}
@media screen and (max-width: 649px) {
  .search-bar button {
    width: calc(9.6 * 1vw);
    border-radius: 0 calc(1.0666666667 * 1vw) calc(1.0666666667 * 1vw) 0;
  }
}
.search-bar button img {
  width: calc(1.4641288433 * 1vw);
  aspect-ratio: 1/1;
  height: auto;
}
@media screen and (max-width: 959px) {
  .search-bar button img {
    width: calc(2.4 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .search-bar button img {
    width: calc(4.8 * 1vw);
  }
}

@media screen and (min-width: 960px) {
  #archive-story .swiper-wrapper {
    grid-template-columns: 1fr;
    align-items: stretch;
  }
}
@media screen and (max-width: 959px) {
  #archive-story .swiper-slide {
    width: calc(84 * 1vw) !important;
    margin: 0 calc(2.1333333333 * 1vw);
    height: auto;
    display: flex;
  }
}
@media screen and (max-width: 959px) {
  #archive-story .swiper-slide > * {
    flex: 1;
  }
}
@media screen and (max-width: 959px) {
  #archive-story .single__title {
    margin-top: calc(1.0666666667 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  #archive-story .single__title {
    margin-top: calc(2.1333333333 * 1vw);
  }
}
#archive-story .single__image-inner {
  aspect-ratio: 3/2;
}
#archive-story .single__image-inner::after {
  aspect-ratio: 3/2;
}
@media screen and (max-width: 959px) {
  #archive-story .experience-card__wrapper {
    height: 100%;
    box-sizing: border-box;
  }
}
@media screen and (max-width: 649px) {
  #archive-story .experience-card__wrapper {
    justify-content: flex-start;
  }
}

.privacypolicy__inner {
  position: relative;
  z-index: 1;
}
.privacypolicy__inner::before, .privacypolicy__inner::after {
  content: "";
  z-index: -1;
  position: absolute;
  top: 5%;
  left: 0;
  width: calc(9.7364568082 * 1vw);
  height: calc(51.4641288433 * 1vw);
  background-image: repeating-linear-gradient(-45deg, #fff9d4, #fff9d4 5px, transparent 5px, transparent 10px);
}
@media screen and (max-width: 959px) {
  .privacypolicy__inner::before, .privacypolicy__inner::after {
    display: none;
  }
}
.privacypolicy__inner::after {
  top: auto;
  left: auto;
  right: 0;
  bottom: 5%;
}
.privacypolicy p {
  font-weight: 500;
}
.privacypolicy p {
  font-size: clamp(16px, 1.1713030747vw, 9999px);
  line-height: 1.8;
}
@media screen and (max-width: 959px) {
  .privacypolicy p {
    font-size: clamp(0.875rem, 0.8276992936rem + 0.2018163471vw, 1rem);
  }
}
@media screen and (max-width: 479px) {
  .privacypolicy p {
    font-size: 14px;
    line-height: 1.8 !important;
  }
}
.privacypolicy p {
  letter-spacing: 0.05em;
}
@media screen and (max-width: 959px) {
  .privacypolicy p {
    letter-spacing: 0.05em;
  }
}
@media screen and (max-width: 479px) {
  .privacypolicy p {
    letter-spacing: 0.05em;
  }
}
.privacypolicy p span {
  font-weight: 700;
}
.privacypolicy ul li {
  font-weight: 500;
  padding-left: 1em;
  text-indent: -1em;
}
.privacypolicy ul li {
  font-size: clamp(16px, 1.1713030747vw, 9999px);
  line-height: 1.8;
}
@media screen and (max-width: 959px) {
  .privacypolicy ul li {
    font-size: clamp(0.875rem, 0.8276992936rem + 0.2018163471vw, 1rem);
  }
}
@media screen and (max-width: 479px) {
  .privacypolicy ul li {
    font-size: 14px;
    line-height: 1.8 !important;
  }
}
.privacypolicy ul li {
  letter-spacing: 0.05em;
}
@media screen and (max-width: 959px) {
  .privacypolicy ul li {
    letter-spacing: 0.05em;
  }
}
@media screen and (max-width: 479px) {
  .privacypolicy ul li {
    letter-spacing: 0.05em;
  }
}
.privacypolicy a p {
  display: flex;
  align-items: center;
  gap: calc(0.2928257687 * 1vw);
  width: fit-content;
  border-bottom: solid 1px #2f5f98;
  color: #2f5f98;
  font-weight: 700;
}
.privacypolicy a p {
  font-size: clamp(16px, 1.1713030747vw, 9999px);
  line-height: 1.8;
}
@media screen and (max-width: 959px) {
  .privacypolicy a p {
    font-size: clamp(0.875rem, 0.8276992936rem + 0.2018163471vw, 1rem);
  }
}
@media screen and (max-width: 479px) {
  .privacypolicy a p {
    font-size: 14px;
    line-height: 1.8 !important;
  }
}
.privacypolicy a p {
  letter-spacing: 0.05em;
}
@media screen and (max-width: 959px) {
  .privacypolicy a p {
    letter-spacing: 0.05em;
  }
}
@media screen and (max-width: 479px) {
  .privacypolicy a p {
    letter-spacing: 0.05em;
  }
}
.privacypolicy a p span {
  position: relative;
  width: calc(1.1713030747 * 1vw);
  height: auto;
  aspect-ratio: 1/1;
}
@media screen and (max-width: 959px) {
  .privacypolicy a p span {
    width: calc(3.2 * 1vw);
  }
}
.privacypolicy a p span::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: calc(1.1713030747 * 1vw);
  height: auto;
  aspect-ratio: 1/1;
  background-image: url(../img/common/break-blue.svg);
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
}
@media screen and (max-width: 959px) {
  .privacypolicy a p span::after {
    width: calc(3.2 * 1vw);
  }
}
.privacypolicy__content {
  max-width: 64.4216691069%;
  width: 100%;
  margin: 0 auto;
  margin: calc(4.39238653 * 1vw) auto calc(7.3206442167 * 1vw);
}
@media screen and (max-width: 959px) {
  .privacypolicy__content {
    max-width: 84%;
    width: 100%;
    margin: 0 auto;
    margin: calc(6.4 * 1vw) auto calc(9.6 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .privacypolicy__content {
    margin: calc(8.5333333333 * 1vw) auto calc(16 * 1vw);
  }
}

.privacypolicy-list__item {
  margin-top: calc(4.39238653 * 1vw);
}
@media screen and (max-width: 959px) {
  .privacypolicy-list__item {
    margin-top: calc(5.3333333333 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .privacypolicy-list__item {
    margin-top: calc(8.5333333333 * 1vw);
  }
}
.privacypolicy-list__text {
  margin-top: calc(1.0248901903 * 1vw);
}
@media screen and (max-width: 959px) {
  .privacypolicy-list__text {
    margin-top: calc(2.1333333333 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .privacypolicy-list__text {
    margin-top: calc(3.7333333333 * 1vw);
  }
}
.privacypolicy-list__title {
  position: relative;
  padding-left: calc(1.4641288433 * 1vw);
  font-weight: 500;
}
.privacypolicy-list__title {
  font-size: clamp(22px, 1.6105417277vw, 9999px);
  line-height: 1.3090909091;
}
@media screen and (max-width: 959px) {
  .privacypolicy-list__title {
    font-size: clamp(1.125rem, 1.0303985873rem + 0.4036326942vw, 1.375rem);
  }
}
@media screen and (max-width: 479px) {
  .privacypolicy-list__title {
    font-size: 18px;
    line-height: 1.5 !important;
  }
}
.privacypolicy-list__title {
  letter-spacing: 0.2em;
}
@media screen and (max-width: 959px) {
  .privacypolicy-list__title {
    letter-spacing: 0.15em;
  }
}
@media screen and (max-width: 479px) {
  .privacypolicy-list__title {
    letter-spacing: 0.15em;
  }
}
@media screen and (max-width: 959px) {
  .privacypolicy-list__title {
    padding-left: calc(2.1333333333 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .privacypolicy-list__title {
    padding-left: calc(4.2666666667 * 1vw);
  }
}
.privacypolicy-list__title::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 0%;
  transform: translate(0%, -50%);
  width: calc(0.2928257687 * 1vw);
  height: 80%;
  background-color: #fbca41;
  border-radius: calc(0.1464128843 * 1vw);
}
@media screen and (max-width: 959px) {
  .privacypolicy-list__title::after {
    border-radius: calc(0.2666666667 * 1vw);
    width: calc(0.5333333333 * 1vw);
    height: 80%;
  }
}
@media screen and (max-width: 649px) {
  .privacypolicy-list__title::after {
    border-radius: calc(0.4 * 1vw);
    width: calc(0.8 * 1vw);
  }
}

.contact p {
  text-align: center;
  font-weight: 500;
}
.contact p {
  font-size: clamp(16px, 1.1713030747vw, 9999px);
  line-height: 1.8;
}
@media screen and (max-width: 959px) {
  .contact p {
    font-size: clamp(0.875rem, 0.8276992936rem + 0.2018163471vw, 1rem);
  }
}
@media screen and (max-width: 479px) {
  .contact p {
    font-size: 14px;
    line-height: 1.8 !important;
  }
}
.contact p {
  letter-spacing: 0.05em;
}
@media screen and (max-width: 959px) {
  .contact p {
    letter-spacing: 0.05em;
  }
}
@media screen and (max-width: 479px) {
  .contact p {
    letter-spacing: 0.05em;
  }
}
.contact p span {
  font-weight: 700;
}
.contact__title {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: calc(1.1713030747 * 1vw);
  margin-bottom: calc(1.1713030747 * 1vw);
}
@media screen and (max-width: 959px) {
  .contact__title {
    flex-flow: column;
    gap: calc(2.1333333333 * 1vw);
    margin-bottom: calc(2.1333333333 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .contact__title {
    margin-bottom: calc(4.2666666667 * 1vw);
  }
}
.contact__title p {
  font-weight: 700;
}
.contact__title p {
  font-size: clamp(22px, 1.6105417277vw, 9999px);
  line-height: 1.5909090909;
}
@media screen and (max-width: 959px) {
  .contact__title p {
    font-size: clamp(1.25rem, 1.2026992936rem + 0.2018163471vw, 1.375rem);
  }
}
@media screen and (max-width: 479px) {
  .contact__title p {
    font-size: 20px;
    line-height: 1.45 !important;
  }
}
.contact__title p {
  letter-spacing: 0.1em;
}
@media screen and (max-width: 959px) {
  .contact__title p {
    letter-spacing: 0.1em;
  }
}
@media screen and (max-width: 479px) {
  .contact__title p {
    letter-spacing: 0.1em;
  }
}
.contact__title-icon {
  width: calc(2.7818448023 * 1vw);
  aspect-ratio: 1/1;
  height: auto;
  background-color: #fbca41;
  border-radius: 50%;
  position: relative;
  min-width: 38px;
}
@media screen and (max-width: 959px) {
  .contact__title-icon {
    max-width: 38px;
    width: calc(9.6 * 1vw);
    min-width: 36px;
  }
}
.contact__title-icon::after {
  font-weight: 700;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  content: "?";
  color: #fff;
}
.contact__title-icon::after {
  font-size: clamp(30px, 2.196193265vw, 9999px);
  line-height: 1;
}
@media screen and (max-width: 959px) {
  .contact__title-icon::after {
    font-size: clamp(1.625rem, 1.5303985873rem + 0.4036326942vw, 1.875rem);
  }
}
@media screen and (max-width: 479px) {
  .contact__title-icon::after {
    font-size: 26px;
    line-height: 1 !important;
  }
}
.contact__content {
  max-width: 48.3162518302%;
  width: 100%;
  margin: 0 auto;
  margin: calc(4.39238653 * 1vw) auto calc(7.3206442167 * 1vw);
}
@media screen and (max-width: 1099px) {
  .contact__content {
    max-width: 64.4216691069%;
    width: 100%;
    margin: 0 auto;
    margin: calc(4.39238653 * 1vw) auto calc(7.3206442167 * 1vw);
  }
}
@media screen and (max-width: 959px) {
  .contact__content {
    max-width: 72%;
    width: 100%;
    margin: 0 auto;
    margin: calc(6.4 * 1vw) auto calc(9.6 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .contact__content {
    max-width: 84%;
    width: 100%;
    margin: 0 auto;
    margin: calc(8.5333333333 * 1vw) auto calc(16 * 1vw);
  }
}
.contact .apply {
  background-image: repeating-linear-gradient(-45deg, #fff9d4, #fff9d4 5px, transparent 5px, transparent 10px);
  padding: calc(3.513909224 * 1vw) 0;
}
@media screen and (max-width: 649px) {
  .contact .apply {
    padding: calc(14.9333333333 * 1vw) 0;
  }
}
.contact .apply__inner {
  max-width: 64.4216691069%;
  width: 100%;
  margin: 0 auto;
}
@media screen and (max-width: 959px) {
  .contact .apply__inner {
    max-width: 84%;
    width: 100%;
    margin: 0 auto;
  }
}
.contact .apply__wrapper {
  display: flex;
  justify-content: space-between;
  gap: calc(2.9282576867 * 1vw);
}
@media screen and (max-width: 959px) {
  .contact .apply__wrapper {
    max-width: 640px;
    margin: 0 auto;
  }
}
@media screen and (max-width: 649px) {
  .contact .apply__wrapper {
    display: block;
  }
}
.contact .apply__title {
  width: fit-content;
}
@media screen and (max-width: 649px) {
  .contact .apply__title {
    margin: 0 auto;
  }
}
.contact .apply__title .top-title p {
  font-weight: 700;
  padding-top: calc(0.9516837482 * 1vw);
}
@media screen and (max-width: 1099px) {
  .contact .apply__title .top-title p {
    padding-top: 20px;
  }
}
.contact .apply__title .top-title p::after {
  content: "";
  width: calc(9.8828696925 * 1vw);
  top: 30%;
  left: -5px;
  transform: translate(0%, -50%);
  background-image: url(../img/top/title-small.png);
  min-width: 135px;
}
@media screen and (max-width: 959px) {
  .contact .apply__title .top-title p::after {
    left: 50%;
    transform: translate(-50%, -50%);
  }
}
.contact .apply__text {
  margin-top: calc(1.756954612 * 1vw);
  padding-left: calc(1.756954612 * 1vw);
  font-weight: 500;
}
.contact .apply__text {
  font-size: clamp(16px, 1.1713030747vw, 9999px);
  line-height: 1.8;
}
@media screen and (max-width: 959px) {
  .contact .apply__text {
    font-size: clamp(1rem, 1rem + 0vw, 1rem);
  }
}
@media screen and (max-width: 479px) {
  .contact .apply__text {
    font-size: 16px;
    line-height: 1.8 !important;
  }
}
.contact .apply__text {
  letter-spacing: 0.05em;
}
@media screen and (max-width: 959px) {
  .contact .apply__text {
    letter-spacing: 0.05em;
  }
}
@media screen and (max-width: 479px) {
  .contact .apply__text {
    letter-spacing: 0.05em;
  }
}
@media screen and (max-width: 959px) {
  .contact .apply__text {
    margin: calc(6.4 * 1vw) 0 calc(8.5333333333 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .contact .apply__text {
    text-align: center;
  }
}
.contact .apply__right .apply-button {
  margin-top: calc(5.8565153734 * 1vw);
  width: clamp(235px, 50vw, 17.5695461201 * 1vw);
  aspect-ratio: 1/1;
  border-radius: 50%;
  background-color: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
}
@media screen and (max-width: 959px) {
  .contact .apply__right .apply-button {
    width: 235px;
    margin-top: calc(0 * 1vw);
  }
}
.contact .apply__right .apply-button p {
  font-weight: 700;
  margin-bottom: clamp(28px, 4vw, 1.9033674963 * 1vw);
}
.contact .apply__right .apply-button p {
  font-size: clamp(16px, 1.1713030747vw, 9999px);
  line-height: 1.8125;
}
@media screen and (max-width: 959px) {
  .contact .apply__right .apply-button p {
    font-size: clamp(1rem, 1rem + 0vw, 1rem);
  }
}
@media screen and (max-width: 479px) {
  .contact .apply__right .apply-button p {
    font-size: 16px;
    line-height: 1.8125 !important;
  }
}
.contact .apply__right .apply-button__inner {
  padding-top: 8%;
}
.contact .apply__right .apply-button .circle-arrow {
  width: clamp(40px, 4vw, 2.4890190337 * 1vw);
}
.contact .apply__right .apply-step {
  margin-left: calc(-11.7130307467 * 1vw);
  margin-top: calc(1.4641288433 * 1vw);
}
.contact .apply__right .apply-step {
  font-size: clamp(26px, 1.9033674963vw, 9999px);
  line-height: 1;
}
@media screen and (max-width: 959px) {
  .contact .apply__right .apply-step {
    font-size: clamp(1.5rem, 1.4526992936rem + 0.2018163471vw, 1.625rem);
  }
}
@media screen and (max-width: 479px) {
  .contact .apply__right .apply-step {
    font-size: 24px;
    line-height: 1 !important;
  }
}
@media screen and (max-width: 1365px) {
  .contact .apply__right .apply-step {
    margin-left: calc(-11.7130307467 * 1vw);
  }
}
@media screen and (max-width: 959px) {
  .contact .apply__right .apply-step {
    transform: rotate(4deg);
    width: fit-content;
    margin: 0 -40px 0 auto;
  }
}
@media screen and (max-width: 649px) {
  .contact .apply__right .apply-step {
    margin: 0 0 -25px auto;
  }
}
@media screen and (max-width: 479px) {
  .contact .apply__right .apply-step {
    margin: 0 0 0 auto;
  }
}
.contact .apply__right .apply-step span img {
  width: calc(3.953147877 * 1vw);
}
@media screen and (max-width: 959px) {
  .contact .apply__right .apply-step span img {
    width: calc(6.6666666667 * 1vw);
    height: auto;
    margin-right: -80px;
  }
}
@media screen and (max-width: 649px) {
  .contact .apply__right .apply-step span img {
    width: calc(10.6666666667 * 1vw);
    height: auto;
    margin-top: calc(0.7320644217 * 1vw);
    margin-right: -60px;
  }
}
.contact .contact-form {
  margin: calc(3.953147877 * 1vw) 0;
}
@media screen and (max-width: 959px) {
  .contact .contact-form {
    margin: calc(5.3333333333 * 1vw) 0;
  }
}
@media screen and (max-width: 649px) {
  .contact .contact-form {
    margin: calc(10.6666666667 * 1vw) 0;
  }
}
.contact .contact-form p {
  margin-top: calc(1.756954612 * 1vw);
  text-align: left;
}
@media screen and (max-width: 959px) {
  .contact .contact-form p {
    margin-top: calc(4.2666666667 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .contact .contact-form p {
    margin-top: calc(8.5333333333 * 1vw);
  }
}
.contact .contact-form p:first-of-type {
  margin-top: 0;
}
.contact .contact-form label span {
  font-weight: 700;
  color: #2f5f98;
}
.contact .contact-form label span {
  font-size: clamp(16px, 1.1713030747vw, 9999px);
  line-height: 1.375;
}
@media screen and (max-width: 959px) {
  .contact .contact-form label span {
    font-size: clamp(1rem, 1rem + 0vw, 1rem);
  }
}
@media screen and (max-width: 479px) {
  .contact .contact-form label span {
    font-size: 16px;
    line-height: 1.375 !important;
  }
}
.contact .contact-form label span {
  letter-spacing: 0.1em;
}
@media screen and (max-width: 959px) {
  .contact .contact-form label span {
    letter-spacing: 0.1em;
  }
}
@media screen and (max-width: 479px) {
  .contact .contact-form label span {
    letter-spacing: 0.1em;
  }
}
.contact .contact-form label sup {
  margin-left: calc(0.7320644217 * 1vw);
  padding: calc(0.1464128843 * 1vw) calc(0.5856515373 * 1vw);
  background-color: #fbca41;
  font-weight: 700;
  color: #fff;
}
.contact .contact-form label sup {
  font-size: clamp(14px, 1.0248901903vw, 9999px);
  line-height: 1;
}
@media screen and (max-width: 959px) {
  .contact .contact-form label sup {
    font-size: clamp(0.875rem, 0.875rem + 0vw, 0.875rem);
  }
}
@media screen and (max-width: 479px) {
  .contact .contact-form label sup {
    font-size: 14px;
    line-height: 1 !important;
  }
}
.contact .contact-form label sup {
  letter-spacing: 0.1em;
}
@media screen and (max-width: 959px) {
  .contact .contact-form label sup {
    letter-spacing: 0.1em;
  }
}
@media screen and (max-width: 479px) {
  .contact .contact-form label sup {
    letter-spacing: 0.1em;
  }
}
@media screen and (max-width: 959px) {
  .contact .contact-form label sup {
    margin-left: calc(1.3333333333 * 1vw);
    padding: calc(0.2666666667 * 1vw) calc(1.0666666667 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .contact .contact-form label sup {
    margin-left: calc(2.6666666667 * 1vw);
    padding: calc(0.5333333333 * 1vw) calc(2.1333333333 * 1vw);
  }
}
.contact .contact-form label input,
.contact .contact-form label textarea {
  margin-top: calc(0.878477306 * 1vw);
  border-radius: calc(0.2928257687 * 1vw);
  width: 100%;
  border: solid 1px #fbca41;
  padding: calc(0.878477306 * 1vw);
  box-sizing: border-box;
  resize: vertical;
}
.contact .contact-form label input,
.contact .contact-form label textarea {
  font-size: clamp(16px, 1.1713030747vw, 9999px);
  line-height: 1.375;
}
@media screen and (max-width: 959px) {
  .contact .contact-form label input,
  .contact .contact-form label textarea {
    font-size: clamp(1rem, 1rem + 0vw, 1rem);
  }
}
@media screen and (max-width: 479px) {
  .contact .contact-form label input,
  .contact .contact-form label textarea {
    font-size: 16px;
    line-height: 1.375 !important;
  }
}
.contact .contact-form label input,
.contact .contact-form label textarea {
  letter-spacing: 0.1em;
}
@media screen and (max-width: 959px) {
  .contact .contact-form label input,
  .contact .contact-form label textarea {
    letter-spacing: 0.1em;
  }
}
@media screen and (max-width: 479px) {
  .contact .contact-form label input,
  .contact .contact-form label textarea {
    letter-spacing: 0.1em;
  }
}
@media screen and (max-width: 959px) {
  .contact .contact-form label input,
  .contact .contact-form label textarea {
    margin-top: calc(1.0666666667 * 1vw);
    border-radius: calc(0.5333333333 * 1vw);
    padding: calc(1.6 * 1vw) calc(2.1333333333 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .contact .contact-form label input,
  .contact .contact-form label textarea {
    margin-top: calc(2.1333333333 * 1vw);
    border-radius: calc(1.0666666667 * 1vw);
    padding: calc(3.2 * 1vw) calc(4.2666666667 * 1vw);
  }
}
.contact .contact-form label input::placeholder,
.contact .contact-form label textarea::placeholder {
  color: #d8d8d8;
}
.contact .contact-form label input::placeholder,
.contact .contact-form label textarea::placeholder {
  font-size: clamp(16px, 1.1713030747vw, 9999px);
  line-height: 1.375;
}
@media screen and (max-width: 959px) {
  .contact .contact-form label input::placeholder,
  .contact .contact-form label textarea::placeholder {
    font-size: clamp(1rem, 1rem + 0vw, 1rem);
  }
}
@media screen and (max-width: 479px) {
  .contact .contact-form label input::placeholder,
  .contact .contact-form label textarea::placeholder {
    font-size: 16px;
    line-height: 1.375 !important;
  }
}
.contact .contact-form label input::placeholder,
.contact .contact-form label textarea::placeholder {
  letter-spacing: 0.1em;
}
@media screen and (max-width: 959px) {
  .contact .contact-form label input::placeholder,
  .contact .contact-form label textarea::placeholder {
    letter-spacing: 0.1em;
  }
}
@media screen and (max-width: 479px) {
  .contact .contact-form label input::placeholder,
  .contact .contact-form label textarea::placeholder {
    letter-spacing: 0.1em;
  }
}
.contact .contact-form label input:focus,
.contact .contact-form label textarea:focus {
  outline: none;
  box-shadow: none;
}
.contact .contact-form__text {
  width: fit-content;
  margin: calc(1.756954612 * 1vw) auto 0;
}
@media screen and (max-width: 959px) {
  .contact .contact-form__text {
    margin: calc(3.2 * 1vw) auto 0;
  }
}
@media screen and (max-width: 649px) {
  .contact .contact-form__text {
    margin: calc(6.4 * 1vw) auto 0;
  }
}
.contact .contact-form__text p {
  text-align: center !important;
  color: #646464;
}
.contact .contact-form__text p {
  font-size: clamp(12px, 0.878477306vw, 9999px);
  line-height: 1.75;
}
@media screen and (max-width: 959px) {
  .contact .contact-form__text p {
    font-size: clamp(0.75rem, 0.75rem + 0vw, 0.75rem);
  }
}
@media screen and (max-width: 479px) {
  .contact .contact-form__text p {
    font-size: 12px;
    line-height: 1.75 !important;
  }
}
.contact .contact-form__text p {
  letter-spacing: 0.1em;
}
@media screen and (max-width: 959px) {
  .contact .contact-form__text p {
    letter-spacing: 0.1em;
  }
}
@media screen and (max-width: 479px) {
  .contact .contact-form__text p {
    letter-spacing: 0.1em;
  }
}
.contact .contact-form__text a {
  color: #2f5f98;
  border-bottom: 1px solid #2f5f98;
}
.contact .contact-form__acceptance {
  margin: calc(1.1713030747 * 1vw) auto 0;
}
@media screen and (max-width: 959px) {
  .contact .contact-form__acceptance {
    margin: calc(2.1333333333 * 1vw) auto 0;
  }
}
@media screen and (max-width: 649px) {
  .contact .contact-form__acceptance {
    margin: calc(4.2666666667 * 1vw) auto 0;
  }
}
.contact .contact-form__acceptance p {
  text-align: center !important;
}
.contact .contact-form__acceptance .wpcf7-list-item {
  margin: 0 auto;
}
.contact .contact-form__acceptance label {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: calc(0.5856515373 * 1vw);
}
@media screen and (max-width: 959px) {
  .contact .contact-form__acceptance label {
    margin-top: calc(0.8 * 1vw);
    gap: calc(2.1333333333 * 1vw);
  }
}
.contact .contact-form__acceptance label span {
  font-weight: 500;
  color: #1c1c1c !important;
}
.contact .contact-form__acceptance label span {
  font-size: clamp(16px, 1.1713030747vw, 9999px);
  line-height: 1.375;
}
@media screen and (max-width: 959px) {
  .contact .contact-form__acceptance label span {
    font-size: clamp(1rem, 1rem + 0vw, 1rem);
  }
}
@media screen and (max-width: 479px) {
  .contact .contact-form__acceptance label span {
    font-size: 16px;
    line-height: 1.375 !important;
  }
}
.contact .contact-form__acceptance label span {
  letter-spacing: 0.1em;
}
@media screen and (max-width: 959px) {
  .contact .contact-form__acceptance label span {
    letter-spacing: 0.1em;
  }
}
@media screen and (max-width: 479px) {
  .contact .contact-form__acceptance label span {
    letter-spacing: 0.1em;
  }
}
.contact .contact-form .contact-form__acceptance-button {
  width: calc(1.0248901903 * 1vw);
  aspect-ratio: 1/1;
  height: auto;
  margin-top: auto;
  accent-color: #2f5f98;
  min-width: 14px;
}
@media screen and (max-width: 959px) {
  .contact .contact-form .contact-form__acceptance-button {
    width: calc(1.8666666667 * 1vw);
    min-width: 12px;
  }
}
@media screen and (max-width: 649px) {
  .contact .contact-form .contact-form__acceptance-button {
    width: calc(3.7333333333 * 1vw);
  }
}
.contact .contact-form sup {
  padding: calc(0.1464128843 * 1vw) calc(0.5856515373 * 1vw);
  background-color: #fbca41;
  font-weight: 700;
  color: #fff;
}
.contact .contact-form sup {
  font-size: clamp(14px, 1.0248901903vw, 9999px);
  line-height: 1;
}
@media screen and (max-width: 959px) {
  .contact .contact-form sup {
    font-size: clamp(0.875rem, 0.875rem + 0vw, 0.875rem);
  }
}
@media screen and (max-width: 479px) {
  .contact .contact-form sup {
    font-size: 14px;
    line-height: 1 !important;
  }
}
.contact .contact-form sup {
  letter-spacing: 0.1em;
}
@media screen and (max-width: 959px) {
  .contact .contact-form sup {
    letter-spacing: 0.1em;
  }
}
@media screen and (max-width: 479px) {
  .contact .contact-form sup {
    letter-spacing: 0.1em;
  }
}
@media screen and (max-width: 959px) {
  .contact .contact-form sup {
    padding: calc(0.2666666667 * 1vw) calc(1.0666666667 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .contact .contact-form sup {
    padding: calc(0.5333333333 * 1vw) calc(2.1333333333 * 1vw);
  }
}
.contact .contact-form__button input {
  width: 100%;
  margin-top: calc(1.756954612 * 1vw);
  font-weight: 500;
  background-color: #fbca41;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: calc(0.878477306 * 1vw) 0;
}
.contact .contact-form__button input {
  font-size: clamp(16px, 1.1713030747vw, 9999px);
  line-height: 1.5;
}
@media screen and (max-width: 959px) {
  .contact .contact-form__button input {
    font-size: clamp(1rem, 1rem + 0vw, 1rem);
  }
}
@media screen and (max-width: 479px) {
  .contact .contact-form__button input {
    font-size: 16px;
    line-height: 1.5 !important;
  }
}
.contact .contact-form__button input {
  letter-spacing: 0.2em;
}
@media screen and (max-width: 959px) {
  .contact .contact-form__button input {
    letter-spacing: 0.2em;
  }
}
@media screen and (max-width: 479px) {
  .contact .contact-form__button input {
    letter-spacing: 0.2em;
  }
}
@media screen and (max-width: 959px) {
  .contact .contact-form__button input {
    margin-top: calc(4.2666666667 * 1vw);
    padding: calc(1.6 * 1vw) 0;
  }
}
@media screen and (max-width: 649px) {
  .contact .contact-form__button input {
    margin-top: calc(8.5333333333 * 1vw);
    padding: calc(3.2 * 1vw) 0;
  }
}
.contact .contact-form .wpcf7-not-valid-tip {
  font-weight: 400;
  color: #1c1c1c;
}
.contact .contact-form .wpcf7-not-valid-tip {
  font-size: clamp(13px, 0.9516837482vw, 9999px);
  line-height: 2.1538461538;
}
@media screen and (max-width: 959px) {
  .contact .contact-form .wpcf7-not-valid-tip {
    font-size: clamp(0.8125rem, 0.8125rem + 0vw, 0.8125rem);
  }
}
@media screen and (max-width: 479px) {
  .contact .contact-form .wpcf7-not-valid-tip {
    font-size: 13px;
    line-height: 2.1538461538 !important;
  }
}
.contact .contact-form .wpcf7-not-valid-tip {
  letter-spacing: 0.05em;
}
@media screen and (max-width: 959px) {
  .contact .contact-form .wpcf7-not-valid-tip {
    letter-spacing: 0.05em;
  }
}
@media screen and (max-width: 479px) {
  .contact .contact-form .wpcf7-not-valid-tip {
    letter-spacing: 0.05em;
  }
}

.notfound__title {
  margin-bottom: calc(1.1713030747 * 1vw);
  text-align: center;
  font-weight: 700;
}
.notfound__title {
  font-size: clamp(20px, 1.4641288433vw, 9999px);
  line-height: 1.5;
}
@media screen and (max-width: 959px) {
  .notfound__title {
    font-size: clamp(1.125rem, 1.0776992936rem + 0.2018163471vw, 1.25rem);
  }
}
@media screen and (max-width: 479px) {
  .notfound__title {
    font-size: 18px;
    line-height: 1.7 !important;
  }
}
.notfound__title {
  letter-spacing: 0.1em;
}
@media screen and (max-width: 959px) {
  .notfound__title {
    letter-spacing: 0.1em;
  }
}
@media screen and (max-width: 479px) {
  .notfound__title {
    letter-spacing: 0.1em;
  }
}
@media screen and (max-width: 959px) {
  .notfound__title {
    margin-bottom: calc(4.2666666667 * 1vw);
  }
}
.notfound p {
  text-align: center;
  font-weight: 500;
}
.notfound p {
  font-size: clamp(16px, 1.1713030747vw, 9999px);
  line-height: 1.8;
}
@media screen and (max-width: 959px) {
  .notfound p {
    font-size: clamp(0.875rem, 0.8276992936rem + 0.2018163471vw, 1rem);
  }
}
@media screen and (max-width: 479px) {
  .notfound p {
    font-size: 14px;
    line-height: 1.8 !important;
  }
}
.notfound p {
  letter-spacing: 0.05em;
}
@media screen and (max-width: 959px) {
  .notfound p {
    letter-spacing: 0.05em;
  }
}
@media screen and (max-width: 479px) {
  .notfound p {
    letter-spacing: 0.05em;
  }
}
.notfound p span {
  font-weight: 700;
}
.notfound__content {
  max-width: 64.4216691069%;
  width: 100%;
  margin: 0 auto;
  margin: calc(4.39238653 * 1vw) auto calc(5.8565153734 * 1vw);
}
@media screen and (max-width: 959px) {
  .notfound__content {
    max-width: 92%;
    width: 100%;
    margin: 0 auto;
    margin: calc(8.5333333333 * 1vw) auto calc(16 * 1vw);
  }
}
.notfound__button {
  margin: calc(2.3426061493 * 1vw) auto 0;
  width: fit-content;
}
@media screen and (max-width: 959px) {
  .notfound__button {
    margin: calc(8.5333333333 * 1vw) auto 0;
  }
}

.lower-search {
  display: flex;
  align-items: stretch;
  justify-content: space-between;
}
@media screen and (max-width: 959px) {
  .lower-search {
    display: block;
  }
}
.lower-search__navi {
  width: 17.7891654466%;
  position: sticky;
  height: 100%;
  top: 0;
}
@media screen and (max-width: 959px) {
  .lower-search__navi {
    width: 300px;
    position: fixed;
    top: auto;
    left: calc(4 * 1vw);
    z-index: 99;
    height: auto;
    transform: translate(0%, 0%);
    opacity: 0;
    pointer-events: none;
  }
}
@media screen and (max-width: 649px) {
  .lower-search__navi {
    width: 55.4666666667%;
  }
}
@media screen and (max-width: 959px) {
  .lower-search__navi.on {
    opacity: 1;
    transition: all 0.3s ease;
    pointer-events: auto;
  }
}
@media screen and (max-width: 959px) {
  .lower-search__navi.open {
    transition: all 0.3s ease;
  }
}
.lower-search .search-navi {
  height: 100svh;
}
@media screen and (max-width: 959px) {
  .lower-search .search-navi {
    height: auto;
    background-color: transparent;
  }
}
.lower-search .search-navi__upper {
  max-height: 84.6354166667%;
  padding-top: calc(3.4407027818 * 1vw);
  box-sizing: border-box;
  height: 100%;
  display: flex;
  flex-flow: column;
  align-items: center;
  justify-content: center;
  position: relative;
  width: 100%;
}
@media screen and (max-width: 959px) {
  .lower-search .search-navi__upper {
    max-height: none;
    padding: 0;
    height: auto;
    box-sizing: border-box;
  }
}
.lower-search .search-navi__upper::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  height: 100%;
  background-color: #ffffff;
  background-image: linear-gradient(90deg, #2f5f98 2px, transparent 2px), linear-gradient(#2f5f98 2px, transparent 2px);
  background-position: 10px 10px;
  background-size: 22px 22px;
  z-index: -1;
  opacity: 0.1;
}
@media screen and (max-width: 959px) {
  .lower-search .search-navi__upper::after {
    display: none;
  }
}
.lower-search .search-navi__lower {
  background-color: #fbca41;
  max-height: 15.3645833333%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}
@media screen and (max-width: 959px) {
  .lower-search .search-navi__lower {
    max-height: none;
    height: auto;
    padding: calc(1.0666666667 * 1vw) 0 calc(3.2 * 1vw);
  }
}
.lower-search .search-navi__lower .search-navi__title {
  color: #fff;
}
@media screen and (max-width: 959px) {
  .lower-search .search-navi__lower .search-navi__title {
    position: relative;
    background-color: transparent;
    transform: translate(0%, 0%);
    padding: 0;
  }
}
.lower-search .search-navi__lower .search-navi__title img {
  width: calc(8.78477306 * 1vw);
  height: auto;
}
@media screen and (max-width: 959px) {
  .lower-search .search-navi__lower .search-navi__title img {
    width: 116px;
  }
}
@media screen and (max-width: 649px) {
  .lower-search .search-navi__lower .search-navi__title img {
    width: calc(17.3333333333 * 1vw);
  }
}
.lower-search .search-navi__lower .search-navi__title::after {
  content: "";
  position: absolute;
  width: calc(10.6149341142 * 1vw);
  height: auto;
  aspect-ratio: 145/11;
  background-image: url(../img/search/line-white.png);
  background-size: 100%;
  background-position: center;
  background-repeat: no-repeat;
  position: absolute;
  bottom: calc(-0.5856515373 * 1vw);
  left: 50%;
  transform: translate(-50%, 0%);
}
@media screen and (max-width: 959px) {
  .lower-search .search-navi__lower .search-navi__title::after {
    width: 160px;
    bottom: calc(-1.0666666667 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .lower-search .search-navi__lower .search-navi__title::after {
    width: calc(24 * 1vw);
  }
}
.lower-search .search-navi__title {
  text-align: center;
  position: relative;
  font-family: "Caveat", cursive;
  color: #2f5f98;
}
.lower-search .search-navi__title {
  font-size: clamp(16px, 1.1713030747vw, 9999px);
  line-height: 1.5;
}
@media screen and (max-width: 959px) {
  .lower-search .search-navi__title {
    font-size: clamp(0.625rem, 0.4830978809rem + 0.6054490414vw, 1rem);
  }
}
@media screen and (max-width: 479px) {
  .lower-search .search-navi__title {
    font-size: 10px;
    line-height: 1.5 !important;
  }
}
.lower-search .search-navi__title {
  letter-spacing: 0.2em;
}
@media screen and (max-width: 959px) {
  .lower-search .search-navi__title {
    letter-spacing: 0.2em;
  }
}
@media screen and (max-width: 479px) {
  .lower-search .search-navi__title {
    letter-spacing: 0.2em;
  }
}
@media screen and (max-width: 959px) {
  .lower-search .search-navi__title {
    color: #fff;
    transform: translate(0%, 0%);
    background-color: #2f5f98;
    padding: calc(1.6 * 1vw) calc(4.2666666667 * 1vw) calc(2.6666666667 * 1vw);
    border-radius: calc(2.1333333333 * 1vw) calc(2.1333333333 * 1vw) 0 0;
    margin: 0 auto -1px 0;
  }
}
.lower-search .search-navi__title img {
  width: calc(10.980966325 * 1vw);
  height: auto;
}
@media screen and (max-width: 959px) {
  .lower-search .search-navi__title img {
    width: 140px;
  }
}
@media screen and (max-width: 649px) {
  .lower-search .search-navi__title img {
    width: calc(20.2666666667 * 1vw);
  }
}
.lower-search .search-navi__title::after {
  content: "";
  position: absolute;
  width: calc(10.6149341142 * 1vw);
  height: auto;
  aspect-ratio: 145/11;
  background-image: url(../img/search/line-blue.png);
  background-size: 100%;
  background-position: center;
  background-repeat: no-repeat;
  position: absolute;
  bottom: calc(-0.5856515373 * 1vw);
  left: 50%;
  transform: translate(-50%, 0%);
  position: absolute;
}
@media screen and (max-width: 959px) {
  .lower-search .search-navi__title::after {
    width: 160px;
    aspect-ratio: 85/6;
    bottom: calc(1.6 * 1vw);
    background-image: url(../img/search/line-white.png);
  }
}
@media screen and (max-width: 649px) {
  .lower-search .search-navi__title::after {
    width: calc(24 * 1vw);
  }
}
.lower-search .search-navi__list {
  margin-top: calc(3.074670571 * 1vw);
}
@media screen and (max-width: 959px) {
  .lower-search .search-navi__list {
    margin-top: 0;
    background-color: #fff;
    width: 100%;
    position: relative;
    padding: calc(5.3333333333 * 1vw) 0;
    border-top: 2px solid #2f5f98;
    box-sizing: border-box;
  }
  .lower-search .search-navi__list::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
    height: 100%;
    background-color: #ffffff;
    background-image: linear-gradient(90deg, #2f5f98 2px, transparent 2px), linear-gradient(#2f5f98 2px, transparent 2px);
    background-position: 10px 10px;
    background-size: 22px 22px;
    z-index: 1;
    opacity: 0.1;
    pointer-events: none;
  }
}
.lower-search .search-navi__list-item {
  text-align: center;
  margin-bottom: calc(2.3426061493 * 1vw);
  z-index: 1;
}
@media screen and (max-width: 959px) {
  .lower-search .search-navi__list-item {
    margin-bottom: calc(4.2666666667 * 1vw);
  }
}
.lower-search .search-navi__list-item:last-of-type {
  margin-bottom: 0;
}
.lower-search .search-navi__list-item--en {
  font-family: "Caveat", cursive;
  font-weight: 700;
  color: #2f5f98;
}
.lower-search .search-navi__list-item--en {
  font-size: clamp(16px, 1.1713030747vw, 9999px);
  line-height: 1.5;
}
@media screen and (max-width: 959px) {
  .lower-search .search-navi__list-item--en {
    font-size: clamp(0.625rem, 0.4830978809rem + 0.6054490414vw, 1rem);
  }
}
@media screen and (max-width: 479px) {
  .lower-search .search-navi__list-item--en {
    font-size: 10px;
    line-height: 1.5 !important;
  }
}
.lower-search .search-navi__list-item--en {
  letter-spacing: 0.2em;
}
@media screen and (max-width: 959px) {
  .lower-search .search-navi__list-item--en {
    letter-spacing: 0.2em;
  }
}
@media screen and (max-width: 479px) {
  .lower-search .search-navi__list-item--en {
    letter-spacing: 0.2em;
  }
}
@media screen and (max-width: 1099px) {
  .lower-search .search-navi__list-item--en {
    font-size: 14px;
  }
}
@media screen and (max-width: 959px) {
  .lower-search .search-navi__list-item--en {
    font-size: clamp(16px, 1.1713030747vw, 9999px);
    line-height: 1.5;
  }
}
@media screen and (max-width: 959px) and (max-width: 959px) {
  .lower-search .search-navi__list-item--en {
    font-size: clamp(0.625rem, 0.4830978809rem + 0.6054490414vw, 1rem);
  }
}
@media screen and (max-width: 959px) and (max-width: 479px) {
  .lower-search .search-navi__list-item--en {
    font-size: 10px;
    line-height: 1.5 !important;
  }
}
.lower-search .search-navi__list-item--ja {
  font-weight: 700;
}
.lower-search .search-navi__list-item--ja {
  font-size: clamp(18px, 1.317715959vw, 9999px);
  line-height: 1.3333333333;
}
@media screen and (max-width: 959px) {
  .lower-search .search-navi__list-item--ja {
    font-size: clamp(0.875rem, 0.7803985873rem + 0.4036326942vw, 1.125rem);
  }
}
@media screen and (max-width: 479px) {
  .lower-search .search-navi__list-item--ja {
    font-size: 14px;
    line-height: 1.2857142857 !important;
  }
}
.lower-search .search-navi__list-item--ja {
  letter-spacing: 0em;
}
@media screen and (max-width: 959px) {
  .lower-search .search-navi__list-item--ja {
    letter-spacing: 0em;
  }
}
@media screen and (max-width: 479px) {
  .lower-search .search-navi__list-item--ja {
    letter-spacing: 0em;
  }
}
@media screen and (max-width: 1099px) {
  .lower-search .search-navi__list-item--ja {
    font-size: 16px;
  }
}
@media screen and (max-width: 959px) {
  .lower-search .search-navi__list-item--ja {
    font-size: clamp(18px, 1.317715959vw, 9999px);
    line-height: 1.3333333333;
  }
}
@media screen and (max-width: 959px) and (max-width: 959px) {
  .lower-search .search-navi__list-item--ja {
    font-size: clamp(0.875rem, 0.7803985873rem + 0.4036326942vw, 1.125rem);
  }
}
@media screen and (max-width: 959px) and (max-width: 479px) {
  .lower-search .search-navi__list-item--ja {
    font-size: 14px;
    line-height: 1.2857142857 !important;
  }
}
.lower-search .search-navi__list-item.on {
  position: relative;
}
.lower-search .search-navi__list-item.on::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: calc(6.6617862372 * 1vw);
  height: calc(3.8067349927 * 1vw);
  background-image: url(../img/search/circle.png);
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  z-index: -1;
  pointer-events: none;
}
@media screen and (max-width: 959px) {
  .lower-search .search-navi__list-item.on::before {
    width: calc(9.6 * 1vw);
    height: calc(5.6 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .lower-search .search-navi__list-item.on::before {
    width: calc(19.4666666667 * 1vw);
    height: calc(11.2 * 1vw);
  }
}
.lower-search__content {
  width: 82.2840409956%;
}
@media screen and (max-width: 959px) {
  .lower-search__content {
    width: 100%;
  }
}
.lower-search .search-navi--country .search-navi__upper::after {
  background-image: linear-gradient(90deg, #fbca41 2px, transparent 2px), linear-gradient(#fbca41 2px, transparent 2px);
  opacity: 0.3;
}
.lower-search .search-navi--country .search-navi__lower {
  background-color: #2f5f98;
}
.lower-search .search-navi--country .search-navi__lower .search-navi__title {
  color: #fff;
}
@media screen and (max-width: 959px) {
  .lower-search .search-navi--country .search-navi__lower .search-navi__title {
    position: relative;
    background-color: transparent;
    transform: translate(0%, 0%);
    padding: 0;
  }
}
.lower-search .search-navi--country .search-navi__lower .search-navi__title img {
  width: calc(10.980966325 * 1vw);
}
@media screen and (max-width: 959px) {
  .lower-search .search-navi--country .search-navi__lower .search-navi__title img {
    width: calc(20.2666666667 * 1vw);
  }
}
.lower-search .search-navi--country .search-navi__lower .search-navi__title::after {
  background-image: url(../img/search/line-white.png);
}
.lower-search .search-navi--country .search-navi__title {
  color: #fbca41;
}
@media screen and (max-width: 959px) {
  .lower-search .search-navi--country .search-navi__title {
    color: #fff;
    background-color: #fbca41;
  }
}
.lower-search .search-navi--country .search-navi__title img {
  width: calc(8.78477306 * 1vw);
}
@media screen and (max-width: 959px) {
  .lower-search .search-navi--country .search-navi__title img {
    width: calc(16 * 1vw);
  }
}
.lower-search .search-navi--country .search-navi__title::after {
  background-image: url(../img/search/line-yellow.png);
}
@media screen and (max-width: 959px) {
  .lower-search .search-navi--country .search-navi__title::after {
    background-image: url(../img/search/line-white.png);
  }
}
@media screen and (max-width: 959px) {
  .lower-search .search-navi--country .search-navi__list {
    border-top: 2px solid #fbca41;
  }
  .lower-search .search-navi--country .search-navi__list::after {
    background-image: linear-gradient(90deg, #fbca41 2px, transparent 2px), linear-gradient(#fbca41 2px, transparent 2px);
  }
}
.lower-search .search-navi--country .search-navi__list-item--en {
  color: #fbca41;
}
.lower-search .search-navi--country .search-navi__list-item.on::before {
  background-image: url(../img/search/circle-blue.png);
}

.search-about {
  margin: calc(5.8565153734 * 1vw) 0 calc(8.78477306 * 1vw);
}
@media screen and (max-width: 959px) {
  .search-about {
    margin: calc(10.6666666667 * 1vw) 0 calc(13.3333333333 * 1vw);
    overflow: hidden;
  }
}
@media screen and (max-width: 649px) {
  .search-about {
    margin: calc(10.6666666667 * 1vw) 0 calc(16 * 1vw);
  }
}
.search-about__inner {
  margin-left: 9.7864768683%;
}
@media screen and (max-width: 959px) {
  .search-about__inner {
    max-width: 84%;
    width: 100%;
    margin: 0 auto;
  }
}
.search-about__title .lower-title {
  text-align: left;
}
.search-about__content {
  display: flex;
  justify-content: space-between;
  gap: calc(4.0263543192 * 1vw);
}
@media screen and (max-width: 959px) {
  .search-about__content {
    flex-flow: column;
    gap: calc(8.5333333333 * 1vw);
  }
}
.search-about__subtitle {
  margin-bottom: calc(1.1713030747 * 1vw);
  color: #2f5f98;
  font-weight: 700;
  word-break: keep-all;
  overflow-wrap: anywhere;
}
.search-about__subtitle {
  font-size: clamp(22px, 1.6105417277vw, 9999px);
  line-height: 1.8181818182;
}
@media screen and (max-width: 959px) {
  .search-about__subtitle {
    font-size: clamp(1.125rem, 1.0303985873rem + 0.4036326942vw, 1.375rem);
  }
}
@media screen and (max-width: 479px) {
  .search-about__subtitle {
    font-size: 18px;
    line-height: 1.7777777778 !important;
  }
}
.search-about__subtitle {
  letter-spacing: 0.1em;
}
@media screen and (max-width: 959px) {
  .search-about__subtitle {
    letter-spacing: 0.1em;
  }
}
@media screen and (max-width: 479px) {
  .search-about__subtitle {
    letter-spacing: 0.1em;
  }
}
@media screen and (max-width: 959px) {
  .search-about__subtitle {
    margin-bottom: calc(3.2 * 1vw);
  }
}
.search-about__text {
  font-weight: 500;
}
.search-about__text {
  font-size: clamp(16px, 1.1713030747vw, 9999px);
  line-height: 2;
}
@media screen and (max-width: 959px) {
  .search-about__text {
    font-size: clamp(1rem, 1rem + 0vw, 1rem);
  }
}
@media screen and (max-width: 479px) {
  .search-about__text {
    font-size: 16px;
    line-height: 1.8 !important;
  }
}
.search-about__text {
  letter-spacing: 0.1em;
}
@media screen and (max-width: 959px) {
  .search-about__text {
    letter-spacing: 0.1em;
  }
}
@media screen and (max-width: 479px) {
  .search-about__text {
    letter-spacing: 0.1em;
  }
}
.search-about__text span {
  font-weight: 700;
}
@media screen and (max-width: 959px) {
  .search-about__right {
    margin: 0 calc(50% - 50vw);
    width: 100vw;
    height: auto;
  }
}
.search-about__img-list {
  width: calc(20.0585651537 * 1vw);
  height: auto;
}
@media screen and (max-width: 959px) {
  .search-about__img-list {
    width: auto;
    height: 100%;
  }
}
.search-about__img-item {
  width: 100%;
  height: 100%;
  aspect-ratio: 3/2;
}
.search-about__img-item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

@media screen and (min-width: 960px) {
  .swiper-search .swiper-wrapper {
    display: block !important;
  }
}
@media screen and (max-width: 959px) {
  .swiper-search .swiper-wrapper {
    pointer-events: none;
    transition-timing-function: linear !important;
  }
}

.search-can {
  margin: 0 0 calc(8.78477306 * 1vw);
}
@media screen and (max-width: 959px) {
  .search-can {
    margin: 0 0 calc(8 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .search-can {
    margin: 0 0 calc(16 * 1vw);
  }
}
.search-can__inner {
  max-width: 78.3615316118%;
  width: 100%;
  margin: 0 auto;
}
@media screen and (max-width: 959px) {
  .search-can__inner {
    width: 100%;
    max-width: none;
  }
}
.search-can__content {
  width: 87.5%;
  margin: 0 auto 0 0;
  padding: calc(5.8565153734 * 1vw) calc(4.0263543192 * 1vw);
  position: relative;
  z-index: 1;
  border-left: solid 2px #fbca41;
  border-right: solid 2px #fbca41;
  box-sizing: border-box;
  background-color: #fff;
  box-sizing: border-box;
}
@media screen and (max-width: 1365px) {
  .search-can__content {
    width: 90.9090909091%;
  }
}
@media screen and (max-width: 959px) {
  .search-can__content {
    width: 79.9791449426%;
    margin: 0 auto;
  }
}
@media screen and (max-width: 649px) {
  .search-can__content {
    width: 100%;
    border: none;
    padding: calc(8.5333333333 * 1vw) calc(8 * 1vw);
  }
}
.search-can__line {
  position: absolute;
  transform: translate(0%, -100%);
  width: calc(100% + 4px);
  left: -2px;
  top: 3px;
  height: auto;
  width: 100%;
}
.search-can__line svg {
  width: calc(100% + 4px);
  height: auto;
  aspect-ratio: 773/25;
}
.search-can__line svg .cls-1 {
  fill: #fff;
}
.search-can__line svg .cls-2 {
  fill: none;
  stroke: #fbca41;
  stroke-miterlimit: 10;
  stroke-width: 1.5px;
}
@media screen and (max-width: 1365px) {
  .search-can__line svg .cls-2 {
    stroke-width: 2px;
  }
}
@media screen and (max-width: 1099px) {
  .search-can__line svg .cls-2 {
    stroke-width: 2.5px;
  }
}
.search-can__line--lower {
  top: auto;
  bottom: 4px;
  transform: translate(0%, 100%) scale(1, -1);
}
.search-can__bg {
  position: relative;
  z-index: 1;
  padding-bottom: calc(4.0263543192 * 1vw);
}
@media screen and (max-width: 959px) {
  .search-can__bg {
    padding-bottom: calc(4.2666666667 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .search-can__bg {
    padding-bottom: calc(7.4666666667 * 1vw);
  }
}
.search-can__bg::after {
  content: "";
  height: 100%;
  width: 87.5%;
  position: absolute;
  right: 0;
  bottom: 0;
  z-index: -1;
  opacity: 0.5;
  clip-path: polygon(0 calc(1.4641288433 * 1vw), 2.5% 0, 5% calc(1.4641288433 * 1vw), 7.5% 0, 10% calc(1.4641288433 * 1vw), 12.5% 0, 15% calc(1.4641288433 * 1vw), 17.5% 0, 20% calc(1.4641288433 * 1vw), 22.5% 0, 25% calc(1.4641288433 * 1vw), 27.5% 0, 30% calc(1.4641288433 * 1vw), 32.5% 0, 35% calc(1.4641288433 * 1vw), 37.5% 0, 40% calc(1.4641288433 * 1vw), 42.5% 0, 45% calc(1.4641288433 * 1vw), 47.5% 0, 50% calc(1.4641288433 * 1vw), 52.5% 0, 55% calc(1.4641288433 * 1vw), 57.5% 0, 60% calc(1.4641288433 * 1vw), 62.5% 0, 65% calc(1.4641288433 * 1vw), 67.5% 0, 70% calc(1.4641288433 * 1vw), 72.5% 0, 75% calc(1.4641288433 * 1vw), 77.5% 0, 80% calc(1.4641288433 * 1vw), 82.5% 0, 85% calc(1.4641288433 * 1vw), 87.5% 0, 90% calc(1.4641288433 * 1vw), 92.5% 0, 95% calc(1.4641288433 * 1vw), 97.5% 0, 100% calc(1.4641288433 * 1vw), 100% calc(100% - 1.4641288433 * 1vw), 97.5% 100%, 95% calc(100% - 1.4641288433 * 1vw), 92.5% 100%, 90% calc(100% - 1.4641288433 * 1vw), 87.5% 100%, 85% calc(100% - 1.4641288433 * 1vw), 82.5% 100%, 80% calc(100% - 1.4641288433 * 1vw), 77.5% 100%, 75% calc(100% - 1.4641288433 * 1vw), 72.5% 100%, 70% calc(100% - 1.4641288433 * 1vw), 67.5% 100%, 65% calc(100% - 1.4641288433 * 1vw), 62.5% 100%, 60% calc(100% - 1.4641288433 * 1vw), 57.5% 100%, 55% calc(100% - 1.4641288433 * 1vw), 52.5% 100%, 50% calc(100% - 1.4641288433 * 1vw), 47.5% 100%, 45% calc(100% - 1.4641288433 * 1vw), 42.5% 100%, 40% calc(100% - 1.4641288433 * 1vw), 37.5% 100%, 35% calc(100% - 1.4641288433 * 1vw), 32.5% 100%, 30% calc(100% - 1.4641288433 * 1vw), 27.5% 100%, 25% calc(100% - 1.4641288433 * 1vw), 22.5% 100%, 20% calc(100% - 1.4641288433 * 1vw), 17.5% 100%, 15% calc(100% - 1.4641288433 * 1vw), 12.5% 100%, 10% calc(100% - 1.4641288433 * 1vw), 7.5% 100%, 5% calc(100% - 1.4641288433 * 1vw), 2.5% 100%, 0 calc(100% - 1.4641288433 * 1vw));
  background-image: repeating-linear-gradient(-45deg, #fbca41, #fbca41 5px, transparent 5px, transparent 10px);
}
@media screen and (max-width: 1365px) {
  .search-can__bg::after {
    width: 90.9090909091%;
  }
}
@media screen and (max-width: 959px) {
  .search-can__bg::after {
    width: 79.9791449426%;
    right: 5.2137643379%;
    bottom: 0;
    clip-path: polygon(0 calc(2.6666666667 * 1vw), 2.5% 0, 5% calc(2.6666666667 * 1vw), 7.5% 0, 10% calc(2.6666666667 * 1vw), 12.5% 0, 15% calc(2.6666666667 * 1vw), 17.5% 0, 20% calc(2.6666666667 * 1vw), 22.5% 0, 25% calc(2.6666666667 * 1vw), 27.5% 0, 30% calc(2.6666666667 * 1vw), 32.5% 0, 35% calc(2.6666666667 * 1vw), 37.5% 0, 40% calc(2.6666666667 * 1vw), 42.5% 0, 45% calc(2.6666666667 * 1vw), 47.5% 0, 50% calc(2.6666666667 * 1vw), 52.5% 0, 55% calc(2.6666666667 * 1vw), 57.5% 0, 60% calc(2.6666666667 * 1vw), 62.5% 0, 65% calc(2.6666666667 * 1vw), 67.5% 0, 70% calc(2.6666666667 * 1vw), 72.5% 0, 75% calc(2.6666666667 * 1vw), 77.5% 0, 80% calc(2.6666666667 * 1vw), 82.5% 0, 85% calc(2.6666666667 * 1vw), 87.5% 0, 90% calc(2.6666666667 * 1vw), 92.5% 0, 95% calc(2.6666666667 * 1vw), 97.5% 0, 100% calc(2.6666666667 * 1vw), 100% calc(100% - 2.6666666667 * 1vw), 97.5% 100%, 95% calc(100% - 2.6666666667 * 1vw), 92.5% 100%, 90% calc(100% - 2.6666666667 * 1vw), 87.5% 100%, 85% calc(100% - 2.6666666667 * 1vw), 82.5% 100%, 80% calc(100% - 2.6666666667 * 1vw), 77.5% 100%, 75% calc(100% - 2.6666666667 * 1vw), 72.5% 100%, 70% calc(100% - 2.6666666667 * 1vw), 67.5% 100%, 65% calc(100% - 2.6666666667 * 1vw), 62.5% 100%, 60% calc(100% - 2.6666666667 * 1vw), 57.5% 100%, 55% calc(100% - 2.6666666667 * 1vw), 52.5% 100%, 50% calc(100% - 2.6666666667 * 1vw), 47.5% 100%, 45% calc(100% - 2.6666666667 * 1vw), 42.5% 100%, 40% calc(100% - 2.6666666667 * 1vw), 37.5% 100%, 35% calc(100% - 2.6666666667 * 1vw), 32.5% 100%, 30% calc(100% - 2.6666666667 * 1vw), 27.5% 100%, 25% calc(100% - 2.6666666667 * 1vw), 22.5% 100%, 20% calc(100% - 2.6666666667 * 1vw), 17.5% 100%, 15% calc(100% - 2.6666666667 * 1vw), 12.5% 100%, 10% calc(100% - 2.6666666667 * 1vw), 7.5% 100%, 5% calc(100% - 2.6666666667 * 1vw), 2.5% 100%, 0 calc(100% - 2.6666666667 * 1vw));
    background-image: repeating-linear-gradient(-45deg, #fbca41, #fbca41 5px, transparent 5px, transparent 10px);
  }
}
@media screen and (max-width: 649px) {
  .search-can__bg::after {
    width: 100%;
    right: 0;
  }
}
.search-can__title .lower-title {
  text-align: left;
}
.search-can__list-item {
  margin-bottom: calc(1.756954612 * 1vw);
}
@media screen and (max-width: 959px) {
  .search-can__list-item {
    margin-bottom: calc(3.2 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .search-can__list-item {
    margin-bottom: calc(6.4 * 1vw);
  }
}
.search-can__list-item:last-of-type {
  margin-bottom: 0;
}
.search-can__subtitle {
  position: relative;
  font-weight: 700;
  padding: 0 0 calc(0.5856515373 * 1vw) calc(2.0497803807 * 1vw);
  border-bottom: #fbca41 dashed 2px;
  word-break: keep-all;
  overflow-wrap: anywhere;
}
.search-can__subtitle {
  font-size: clamp(18px, 1.317715959vw, 9999px);
  line-height: 1.6;
}
@media screen and (max-width: 959px) {
  .search-can__subtitle {
    font-size: clamp(1rem, 0.9526992936rem + 0.2018163471vw, 1.125rem);
  }
}
@media screen and (max-width: 479px) {
  .search-can__subtitle {
    font-size: 16px;
    line-height: 1.8 !important;
  }
}
.search-can__subtitle {
  letter-spacing: 0.1em;
}
@media screen and (max-width: 959px) {
  .search-can__subtitle {
    letter-spacing: 0.1em;
  }
}
@media screen and (max-width: 479px) {
  .search-can__subtitle {
    letter-spacing: 0.1em;
  }
}
@media screen and (max-width: 1365px) {
  .search-can__subtitle {
    padding: 0 0 calc(0.5856515373 * 1vw) 28px;
  }
}
@media screen and (max-width: 959px) {
  .search-can__subtitle {
    padding: 0 0 calc(1.0666666667 * 1vw) 28px;
    border-bottom: #fbca41 dashed 1px;
  }
}
@media screen and (max-width: 649px) {
  .search-can__subtitle {
    padding: 0 0 calc(2.1333333333 * 1vw) 28px;
  }
}
.search-can__subtitle::after {
  content: "";
  position: absolute;
  left: 0;
  top: 14px;
  width: calc(1.0248901903 * 1vw);
  height: auto;
  aspect-ratio: 1/1;
  border: #fbca41 solid 1px;
  box-sizing: border-box;
  z-index: -1;
}
@media screen and (max-width: 1365px) {
  .search-can__subtitle::after {
    top: 8px;
    width: 14px;
  }
}
.search-can__subtitle::before {
  content: "✓";
  color: #2f5f98;
  font-family: "Caveat", cursive;
  font-weight: 500;
  position: absolute;
  left: 0;
  top: calc(0.439238653 * 1vw);
  z-index: 1;
}
.search-can__subtitle::before {
  font-size: clamp(21px, 1.5373352855vw, 9999px);
  line-height: 1;
}
@media screen and (max-width: 959px) {
  .search-can__subtitle::before {
    font-size: clamp(1.125rem, 1.0540489405rem + 0.3027245207vw, 1.3125rem);
  }
}
@media screen and (max-width: 479px) {
  .search-can__subtitle::before {
    font-size: 18px;
    line-height: 1 !important;
  }
}
@media screen and (max-width: 1365px) {
  .search-can__subtitle::before {
    top: 4px;
    bottom: auto;
  }
}
.search-can__text {
  font-weight: 500;
  padding-top: calc(0.5856515373 * 1vw);
}
.search-can__text {
  font-size: clamp(14px, 1.0248901903vw, 9999px);
  line-height: 1.8;
}
@media screen and (max-width: 959px) {
  .search-can__text {
    font-size: clamp(0.875rem, 0.875rem + 0vw, 0.875rem);
  }
}
@media screen and (max-width: 479px) {
  .search-can__text {
    font-size: 14px;
    line-height: 1.8 !important;
  }
}
.search-can__text {
  letter-spacing: 0.05em;
}
@media screen and (max-width: 959px) {
  .search-can__text {
    letter-spacing: 0.05em;
  }
}
@media screen and (max-width: 479px) {
  .search-can__text {
    letter-spacing: 0.05em;
  }
}
.search-can__text span {
  font-weight: 700;
}
@media screen and (max-width: 959px) {
  .search-can__text {
    padding-top: calc(1.0666666667 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .search-can__text {
    padding-top: calc(2.1333333333 * 1vw);
  }
}

.purpose-visa {
  margin: 0 0 calc(8.78477306 * 1vw);
}
@media screen and (max-width: 959px) {
  .purpose-visa {
    margin: 0 0 calc(8 * 1vw);
    overflow: hidden;
  }
}
@media screen and (max-width: 649px) {
  .purpose-visa {
    margin: 0 0 calc(16 * 1vw);
  }
}
.purpose-visa__content {
  max-width: 78.3615316118%;
  width: 100%;
  margin: 0 auto;
}
@media screen and (max-width: 959px) {
  .purpose-visa__content {
    max-width: none;
    margin: 0;
  }
}

.purpose-cost {
  margin: 0 0 calc(8.78477306 * 1vw);
  position: relative;
}
@media screen and (max-width: 959px) {
  .purpose-cost {
    margin: 0 0 calc(10.6666666667 * 1vw);
    overflow: hidden;
  }
}
@media screen and (max-width: 649px) {
  .purpose-cost {
    margin: 0 0 calc(16 * 1vw);
  }
}
.purpose-cost__content {
  max-width: 78.3615316118%;
  width: 100%;
  margin: 0 auto;
}
@media screen and (max-width: 959px) {
  .purpose-cost__content {
    max-width: none;
    margin: 0;
  }
}
.purpose-cost__pager {
  position: absolute;
  right: calc(9.663250366 * 1vw);
  bottom: 0;
  z-index: 2;
}
@media screen and (max-width: 959px) {
  .purpose-cost__pager {
    display: flex;
    justify-content: center;
    position: relative;
    right: auto;
  }
}
@media screen and (max-width: 959px) {
  .purpose-cost__pager .pager {
    margin: calc(3.4666666667 * 1vw) calc(4 * 1vw) 0;
  }
}
@media screen and (max-width: 959px) {
  .purpose-cost .search-table thead th {
    width: 10em;
  }
}
.purpose-cost .search-table thead th img {
  height: calc(2.5622254758 * 1vw);
  width: auto;
  object-fit: contain;
  display: block;
}
@media screen and (max-width: 959px) {
  .purpose-cost .search-table thead th img {
    width: auto;
    height: calc(5.3333333333 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .purpose-cost .search-table thead th img {
    height: calc(7.2 * 1vw);
  }
}
.purpose-cost .search-table thead th:first-child {
  padding: calc(1.4641288433 * 1vw) calc(1.756954612 * 1vw) calc(0.7320644217 * 1vw);
  opacity: 1;
  background-color: #fbca41 !important;
  width: 4em;
}
@media screen and (max-width: 959px) {
  .purpose-cost .search-table thead th:first-child {
    padding: calc(3.2 * 1vw) calc(2.1333333333 * 1vw) calc(2.1333333333 * 1vw);
    white-space: nowrap;
    width: 8.5em;
  }
}
@media screen and (max-width: 649px) {
  .purpose-cost .search-table thead th:first-child {
    padding: calc(4.2666666667 * 1vw) calc(4.2666666667 * 1vw) calc(3.2 * 1vw);
  }
}

.search-table {
  overflow: hidden;
}
@media screen and (max-width: 959px) {
  .search-table {
    width: auto;
    padding: 0 calc(4 * 1vw);
    box-sizing: border-box;
  }
}
@media screen and (max-width: 959px) {
  .search-table__wrapper {
    width: auto;
    overflow-y: hidden;
    overflow-x: auto;
    padding-bottom: calc(2.1333333333 * 1vw);
    -webkit-overflow-scrolling: touch;
    display: block;
    margin-right: calc(50% - 50vw);
  }
  .search-table__wrapper::-webkit-scrollbar {
    height: calc(0.8 * 1vw);
    border-radius: calc(0.8 * 1vw);
  }
  .search-table__wrapper::-webkit-scrollbar-thumb {
    background: #fbca41;
  }
  .search-table__wrapper::-webkit-scrollbar-track {
    background: #d5d5d5;
    margin: 0 calc(4 * 1vw) 0 0;
    border-radius: calc(0.8 * 1vw);
  }
}
@media screen and (max-width: 959px) {
  .search-table__inner {
    width: fit-content;
    padding-right: calc(4 * 1vw);
  }
}
.search-table__footer {
  margin-top: calc(0.5856515373 * 1vw);
  font-weight: 400;
}
.search-table__footer {
  font-size: clamp(12px, 0.878477306vw, 9999px);
  line-height: 1.5;
}
@media screen and (max-width: 959px) {
  .search-table__footer {
    font-size: clamp(0.6875rem, 0.6638496468rem + 0.1009081736vw, 0.75rem);
  }
}
@media screen and (max-width: 479px) {
  .search-table__footer {
    font-size: 11px;
    line-height: 1.4545454545 !important;
  }
}
.search-table__footer {
  letter-spacing: 0.1em;
}
@media screen and (max-width: 959px) {
  .search-table__footer {
    letter-spacing: 0.025em;
  }
}
@media screen and (max-width: 479px) {
  .search-table__footer {
    letter-spacing: 0.025em;
  }
}
@media screen and (max-width: 959px) {
  .search-table__footer {
    margin-top: calc(1.0666666667 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .search-table__footer {
    margin-top: calc(2.1333333333 * 1vw);
  }
}
.search-table__order {
  font-weight: 500;
  text-align: right;
  margin-bottom: calc(0.5856515373 * 1vw);
}
@media screen and (max-width: 959px) {
  .search-table__order {
    margin-bottom: calc(1.0666666667 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .search-table__order {
    margin-bottom: calc(2.1333333333 * 1vw);
  }
}
.search-table table {
  border-collapse: collapse;
  width: 100%;
  box-sizing: border-box;
  table-layout: fixed;
}
.search-table table thead th {
  border-radius: calc(1.1713030747 * 1vw) calc(1.1713030747 * 1vw) 0 0;
  background-color: #fff9d4;
  padding: calc(1.4641288433 * 1vw) 0 calc(0.7320644217 * 1vw);
  position: relative;
  color: #2f5f98;
  font-weight: 700;
  vertical-align: middle;
  width: 9em;
}
.search-table table thead th {
  font-size: clamp(16px, 1.1713030747vw, 9999px);
  line-height: 1.375;
}
@media screen and (max-width: 959px) {
  .search-table table thead th {
    font-size: clamp(0.875rem, 0.8276992936rem + 0.2018163471vw, 1rem);
  }
}
@media screen and (max-width: 479px) {
  .search-table table thead th {
    font-size: 14px;
    line-height: 1.3571428571 !important;
  }
}
.search-table table thead th {
  letter-spacing: 0.1em;
}
@media screen and (max-width: 959px) {
  .search-table table thead th {
    letter-spacing: 0.05em;
  }
}
@media screen and (max-width: 479px) {
  .search-table table thead th {
    letter-spacing: 0.05em;
  }
}
@media screen and (max-width: 959px) {
  .search-table table thead th {
    border-radius: calc(2.1333333333 * 1vw) calc(2.1333333333 * 1vw) 0 0;
    padding: calc(3.2 * 1vw) calc(2.1333333333 * 1vw) calc(2.1333333333 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .search-table table thead th {
    padding: calc(4.2666666667 * 1vw) calc(3.2 * 1vw) calc(3.2 * 1vw);
  }
}
.search-table table thead th::after {
  content: "";
  position: absolute;
  inset: 0;
  border: solid 1px #fbca41;
  border-radius: inherit;
  pointer-events: none;
  border-bottom: none;
}
.search-table table thead th img {
  height: calc(2.5622254758 * 1vw);
  width: fit-content;
  object-fit: contain;
  margin: 0 auto;
}
@media screen and (max-width: 959px) {
  .search-table table thead th img {
    height: calc(5.3333333333 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .search-table table thead th img {
    height: calc(7.2 * 1vw);
  }
}
.search-table table thead th:first-child {
  opacity: 0;
  padding: calc(0.5856515373 * 1vw) calc(1.756954612 * 1vw);
  width: 4em;
}
@media screen and (max-width: 959px) {
  .search-table table thead th:first-child {
    padding: calc(3.2 * 1vw) calc(6.4 * 1vw);
    width: 6em;
  }
}
.search-table table thead th.on {
  opacity: 1 !important;
  width: 6em;
  padding: calc(1.4641288433 * 1vw) calc(1.756954612 * 1vw) calc(0.7320644217 * 1vw);
  opacity: 1;
  color: #fff;
  background-color: #2f5f98 !important;
  width: 6em;
}
@media screen and (max-width: 959px) {
  .search-table table thead th.on {
    padding: calc(4.2666666667 * 1vw) calc(4.2666666667 * 1vw) calc(3.2 * 1vw);
    white-space: nowrap;
    width: 8.5em;
  }
}
.search-table table thead th.on img {
  height: calc(2.3426061493 * 1vw);
  width: auto;
  aspect-ratio: 1/1;
  object-fit: contain;
  display: block;
  margin-bottom: calc(0.5856515373 * 1vw);
}
@media screen and (max-width: 959px) {
  .search-table table thead th.on img {
    height: calc(7.2 * 1vw);
    margin-bottom: calc(1.0666666667 * 1vw);
  }
}
.search-table table tbody th {
  border: solid 1px #fbca41;
  background-color: #fff9d4;
  color: #2f5f98;
  font-weight: 700;
  vertical-align: middle;
  padding: calc(0.878477306 * 1vw) 0;
}
.search-table table tbody th {
  font-size: clamp(16px, 1.1713030747vw, 9999px);
  line-height: 1.5;
}
@media screen and (max-width: 959px) {
  .search-table table tbody th {
    font-size: clamp(0.875rem, 0.8276992936rem + 0.2018163471vw, 1rem);
  }
}
@media screen and (max-width: 479px) {
  .search-table table tbody th {
    font-size: 14px;
    line-height: 1.5 !important;
  }
}
.search-table table tbody th {
  letter-spacing: 0.1em;
}
@media screen and (max-width: 959px) {
  .search-table table tbody th {
    letter-spacing: 0.05em;
  }
}
@media screen and (max-width: 479px) {
  .search-table table tbody th {
    letter-spacing: 0.05em;
  }
}
@media screen and (max-width: 959px) {
  .search-table table tbody th {
    padding: calc(2.1333333333 * 1vw) 0;
  }
}
@media screen and (max-width: 649px) {
  .search-table table tbody th {
    padding: calc(3.2 * 1vw) 0;
  }
}
.search-table table tbody th p {
  font-size: clamp(12px, 0.878477306vw, 9999px);
  line-height: 1.4166666667;
}
@media screen and (max-width: 959px) {
  .search-table table tbody th p {
    font-size: clamp(0.75rem, 0.75rem + 0vw, 0.75rem);
  }
}
@media screen and (max-width: 479px) {
  .search-table table tbody th p {
    font-size: 12px;
    line-height: 1.4166666667 !important;
  }
}
.search-table table tbody th p {
  letter-spacing: 0.1em;
}
@media screen and (max-width: 959px) {
  .search-table table tbody th p {
    letter-spacing: 0.05em;
  }
}
@media screen and (max-width: 479px) {
  .search-table table tbody th p {
    letter-spacing: 0.05em;
  }
}
.search-table table tbody td {
  width: 25%;
  border: solid 1px #fbca41;
  text-align: center;
  font-weight: 500;
  padding: calc(0.878477306 * 1vw) calc(0.5856515373 * 1vw);
  vertical-align: middle;
}
.search-table table tbody td {
  font-size: clamp(16px, 1.1713030747vw, 9999px);
  line-height: 1.5;
}
@media screen and (max-width: 959px) {
  .search-table table tbody td {
    font-size: clamp(0.875rem, 0.8276992936rem + 0.2018163471vw, 1rem);
  }
}
@media screen and (max-width: 479px) {
  .search-table table tbody td {
    font-size: 14px;
    line-height: 1.5 !important;
  }
}
.search-table table tbody td {
  letter-spacing: 0.1em;
}
@media screen and (max-width: 959px) {
  .search-table table tbody td {
    letter-spacing: 0.05em;
  }
}
@media screen and (max-width: 479px) {
  .search-table table tbody td {
    letter-spacing: 0.05em;
  }
}
@media screen and (max-width: 959px) {
  .search-table table tbody td {
    padding: calc(2.1333333333 * 1vw) calc(2.1333333333 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .search-table table tbody td {
    padding: calc(3.2 * 1vw) calc(2.1333333333 * 1vw);
  }
}
.search-table table tbody td p {
  font-weight: 500;
  padding-left: 1em;
  text-indent: -1em;
}
.search-table table tbody td p {
  font-size: clamp(12px, 0.878477306vw, 9999px);
  line-height: 1.5;
}
@media screen and (max-width: 959px) {
  .search-table table tbody td p {
    font-size: clamp(0.6875rem, 0.6638496468rem + 0.1009081736vw, 0.75rem);
  }
}
@media screen and (max-width: 479px) {
  .search-table table tbody td p {
    font-size: 11px;
    line-height: 1.4545454545 !important;
  }
}
.search-table table tbody td p {
  letter-spacing: 0.1em;
}
@media screen and (max-width: 959px) {
  .search-table table tbody td p {
    letter-spacing: 0.025em;
  }
}
@media screen and (max-width: 479px) {
  .search-table table tbody td p {
    letter-spacing: 0.025em;
  }
}
.search-table__note-list {
  padding-left: 1em;
  text-indent: -1em;
}
@media screen and (max-width: 959px) {
  .search-table__note-list {
    margin: 0 calc(4 * 1vw) 0 0;
  }
}

.search-blog {
  margin: 0 0 calc(8.78477306 * 1vw);
  position: relative;
}
@media screen and (max-width: 959px) {
  .search-blog {
    margin: 0 0 calc(16 * 1vw);
    overflow: hidden;
  }
}
.search-blog__content {
  max-width: 78.3615316118%;
  width: 100%;
  margin: 0 auto;
}
@media screen and (max-width: 959px) {
  .search-blog__content {
    max-width: none;
    width: auto;
    margin: 0 calc(4 * 1vw);
  }
}
.search-blog__upper {
  display: flex;
  justify-content: space-between;
  align-items: end;
  margin-bottom: calc(2.3426061493 * 1vw);
}
@media screen and (max-width: 959px) {
  .search-blog__upper {
    display: block;
    margin: 0 0 calc(4.2666666667 * 1vw);
  }
}
.search-blog__title .lower-title {
  text-align: left;
  margin-bottom: 0;
}
.search-blog__button {
  width: fit-content;
  margin: 0 0 0 auto;
}
@media screen and (max-width: 959px) {
  .search-blog__button {
    margin: 0 0 0 auto;
  }
}
.search-blog__item {
  width: fit-content;
}
.search-blog__list .pager {
  margin: calc(1.756954612 * 1vw) 0 0 auto;
}
@media screen and (max-width: 959px) {
  .search-blog__list .pager {
    margin: calc(4.2666666667 * 1vw) auto 0 auto;
  }
}
.search-blog .tags {
  max-height: none;
}
.search-blog .blog-card {
  width: auto;
  padding: 0;
}

.search-story {
  width: auto;
  overflow: hidden;
}
.search-story .swiper-story {
  position: relative;
}
.search-story__inner {
  background: linear-gradient(180deg, #ffffff 0%, #ffffff 6%, #fff9d4 6%, #fff9d4 100%);
  padding-bottom: calc(5.8565153734 * 1vw);
}
.search-story__title {
  margin: 0 auto 0 calc(8.0527086384 * 1vw);
}
.search-story__title .lower-title {
  text-align: left;
}
.search-story__content {
  position: relative;
}
.search-story .related-tags {
  background-color: #fff;
  width: 82.2840409956%;
  margin: calc(1.756954612 * 1vw) auto 0;
}
.search-story .related-tags .tags {
  max-height: none;
}
.search-story .story-card__spot {
  max-width: calc(12.4450951684 * 1vw);
  padding-top: 0;
}
@media screen and (max-width: 959px) {
  .search-story .story-card__spot {
    max-width: calc(28.5333333333 * 1vw);
    padding-top: calc(2.6666666667 * 1vw);
  }
}
.search-story .story-card__mv {
  max-width: calc(25.1830161054 * 1vw);
  width: 100%;
  height: auto;
}
@media screen and (max-width: 959px) {
  .search-story .story-card__mv {
    max-width: calc(67.4666666667 * 1vw);
  }
}
.search-story .story-card__mv img {
  width: 100%;
  height: auto;
  object-fit: cover;
  aspect-ratio: 4/3;
  overflow: hidden;
}
@media screen and (max-width: 959px) {
  .search-story .story-card__mv img {
    width: 100%;
    aspect-ratio: 3/2;
    overflow: hidden;
  }
}
.search-story .story-card__mv::before {
  display: none;
}
.search-story .story-card__experience {
  width: 100%;
}
.search-story .story-card__experience .experience {
  padding: 0 calc(4.0263543192 * 1vw) calc(1.8301610542 * 1vw);
}
@media screen and (max-width: 959px) {
  .search-story .story-card__experience .experience {
    padding: calc(4.2666666667 * 1vw) calc(8 * 1vw) calc(2.1333333333 * 1vw);
  }
}
.search-story .story-card__lower-inner {
  padding-right: calc(4.39238653 * 1vw);
}
@media screen and (max-width: 959px) {
  .search-story .story-card__lower-inner {
    padding-right: 0;
  }
}
.search-story .story-card__lower-inner .food__bubble {
  width: calc(6.588579795 * 1vw);
}
@media screen and (max-width: 959px) {
  .search-story .story-card__lower-inner .food__bubble {
    width: calc(25.3333333333 * 1vw);
  }
}
.search-story .story-card__lower-inner .food__image {
  width: calc(11.7130307467 * 1vw);
}
@media screen and (max-width: 959px) {
  .search-story .story-card__lower-inner .food__image {
    width: calc(36 * 1vw);
  }
}
.search-story .story-card__button .button-more {
  padding-left: calc(4.5387994143 * 1vw);
}
@media screen and (max-width: 959px) {
  .search-story .story-card__button .button-more {
    padding: 0 calc(26.6666666667 * 1vw) 0 0;
    width: fit-content;
  }
}
.search-story .story-card__pager {
  left: calc(16.4714494876 * 1vw);
}
@media screen and (max-width: 959px) {
  .search-story .story-card__pager {
    left: auto;
    right: calc(8 * 1vw);
    margin-bottom: 156px;
  }
}

.country-info {
  margin: 0 0 calc(8.78477306 * 1vw);
}
@media screen and (max-width: 959px) {
  .country-info {
    margin: 0 0 calc(16 * 1vw);
    overflow: hidden;
  }
}
.country-info__content {
  max-width: 78.3615316118%;
  width: 100%;
  margin: 0 auto;
}
@media screen and (max-width: 959px) {
  .country-info__content {
    max-width: 84%;
    width: 100%;
    margin: 0 auto;
    padding: calc(2.1333333333 * 1vw) 0;
  }
}
.country-info__title .lower-title {
  text-align: left;
}
.country-info .info__table table {
  width: 100%;
}

.country-city {
  margin: 0 0 calc(8.78477306 * 1vw);
}
@media screen and (max-width: 959px) {
  .country-city {
    margin: 0 0 calc(16 * 1vw);
    overflow: hidden;
  }
}
.country-city__title .lower-title {
  text-align: left;
}
.country-city__content {
  max-width: 78.3615316118%;
  width: 100%;
  margin: 0 auto;
}
@media screen and (max-width: 959px) {
  .country-city__content {
    max-width: 92%;
    width: 100%;
    margin: 0 auto;
  }
}
.country-city__map {
  position: relative;
  width: auto;
  height: calc(34.1142020498 * 1vw);
}
@media screen and (max-width: 959px) {
  .country-city__map {
    width: 550px;
    margin: 0 auto;
    max-height: 466px;
    height: 466px;
    padding-bottom: 55px;
  }
}
@media screen and (max-width: 649px) {
  .country-city__map {
    width: 400px;
    max-height: 339px;
    height: 339px;
  }
}
@media screen and (max-width: 479px) {
  .country-city__map {
    width: 345px;
    max-height: 292px;
    height: 292px;
  }
}
.country-city__map::after {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  transform: translate(-50%, 0%);
  width: calc(40.2635431918 * 1vw);
  height: auto;
  aspect-ratio: 550/466;
  background-image: url(../img/search/canada-map.png);
  background-size: contain;
  background-position: top center;
  background-repeat: no-repeat;
  z-index: -2;
}
@media screen and (max-width: 959px) {
  .country-city__map::after {
    width: 550px;
  }
}
@media screen and (max-width: 649px) {
  .country-city__map::after {
    width: 400px;
    aspect-ratio: 400/339;
  }
}
@media screen and (max-width: 479px) {
  .country-city__map::after {
    width: 345px;
    aspect-ratio: 345/292;
  }
}
.country-city__map--australia {
  position: relative;
}
@media screen and (max-width: 959px) {
  .country-city__map--australia {
    width: 550px;
    margin: 0 auto;
    max-height: 499px;
    height: 499px;
    padding-bottom: 55px;
  }
}
@media screen and (max-width: 649px) {
  .country-city__map--australia {
    width: 400px;
    max-height: 363px;
    height: 363px;
  }
}
@media screen and (max-width: 479px) {
  .country-city__map--australia {
    width: 345px;
    max-height: 313px;
    height: 313px;
  }
}
.country-city__map--australia::after {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  transform: translate(-50%, 0%);
  width: calc(40.2635431918 * 1vw);
  height: auto;
  aspect-ratio: 550/499;
  background-image: url(../img/search/australia-map.png);
  background-size: contain;
  background-position: top center;
  background-repeat: no-repeat;
  z-index: -2;
}
@media screen and (max-width: 959px) {
  .country-city__map--australia::after {
    width: 550px;
  }
}
@media screen and (max-width: 649px) {
  .country-city__map--australia::after {
    width: 400px;
    aspect-ratio: 400/363;
  }
}
@media screen and (max-width: 479px) {
  .country-city__map--australia::after {
    width: 345px;
    aspect-ratio: 345/313;
  }
}
.country-city__map--australia .country-city__button .button-square {
  min-width: 150px;
}
@media screen and (max-width: 959px) {
  .country-city__map--australia .country-city__button .button-square {
    min-width: auto;
  }
}
.country-city__map--australia .country-city__button:nth-of-type(1) {
  position: absolute;
  left: 0;
  bottom: 42%;
}
@media screen and (max-width: 959px) {
  .country-city__map--australia .country-city__button:nth-of-type(1) {
    bottom: 50%;
  }
}
@media screen and (max-width: 479px) {
  .country-city__map--australia .country-city__button:nth-of-type(1) {
    bottom: auto;
    top: 19%;
  }
}
.country-city__map--australia .country-city__button:nth-of-type(1) .button-square__map-pin {
  position: absolute;
  top: 100%;
  right: 48%;
  transform: translate(100%, -50%) rotate(30deg);
  transform-origin: 0 0;
  content: "";
  width: calc(8.0527086384 * 1vw);
  height: calc(0.1464128843 * 1vw);
  background-color: #2f5f98;
  z-index: -1;
}
@media screen and (max-width: 959px) {
  .country-city__map--australia .country-city__button:nth-of-type(1) .button-square__map-pin {
    transform: translate(100%, -50%) rotate(130deg);
  }
}
@media screen and (max-width: 479px) {
  .country-city__map--australia .country-city__button:nth-of-type(1) .button-square__map-pin {
    top: auto;
    bottom: 0;
    transform: translate(100%, -50%) rotate(106deg);
    width: 103px;
    height: calc(0.2666666667 * 1vw);
  }
}
.country-city__map--australia .country-city__button:nth-of-type(2) {
  position: absolute;
  left: 28%;
  bottom: 0%;
}
@media screen and (max-width: 959px) {
  .country-city__map--australia .country-city__button:nth-of-type(2) {
    left: auto;
    right: 36%;
    bottom: 22%;
  }
}
@media screen and (max-width: 479px) {
  .country-city__map--australia .country-city__button:nth-of-type(2) {
    left: 3%;
    right: auto;
    bottom: 25%;
  }
}
.country-city__map--australia .country-city__button:nth-of-type(2) .button-square__map-pin {
  position: absolute;
  top: 50%;
  right: 0;
  transform: translate(100%, -50%) rotate(-18deg);
  transform-origin: 0 0;
  content: "";
  width: calc(7.3206442167 * 1vw);
  height: calc(0.1464128843 * 1vw);
  background-color: #2f5f98;
  z-index: -1;
}
@media screen and (max-width: 959px) {
  .country-city__map--australia .country-city__button:nth-of-type(2) .button-square__map-pin {
    transform: translate(100%, -50%) rotate(0deg);
  }
}
@media screen and (max-width: 479px) {
  .country-city__map--australia .country-city__button:nth-of-type(2) .button-square__map-pin {
    width: 98px;
    transform: translate(100%, -50%) rotate(0deg);
    height: calc(0.2666666667 * 1vw);
  }
}
.country-city__map--australia .country-city__button:nth-of-type(3) {
  position: absolute;
  left: auto;
  right: 0;
  bottom: 66%;
}
@media screen and (max-width: 479px) {
  .country-city__map--australia .country-city__button:nth-of-type(3) {
    bottom: 67%;
  }
}
.country-city__map--australia .country-city__button:nth-of-type(3) .button-square__map-pin {
  position: absolute;
  top: 100%;
  right: 52%;
  transform: translate(100%, -50%) rotate(124deg);
  transform-origin: 0 0;
  content: "";
  width: calc(7.3206442167 * 1vw);
  height: calc(0.1464128843 * 1vw);
  background-color: #2f5f98;
  z-index: -1;
}
@media screen and (max-width: 959px) {
  .country-city__map--australia .country-city__button:nth-of-type(3) .button-square__map-pin {
    top: 100%;
    right: 46%;
    transform: translate(100%, -50%) rotate(30deg);
    width: 96px;
  }
}
@media screen and (max-width: 479px) {
  .country-city__map--australia .country-city__button:nth-of-type(3) .button-square__map-pin {
    top: 100%;
    right: 44%;
    width: 72px;
    height: calc(0.2666666667 * 1vw);
  }
}
.country-city__map--australia .country-city__button:nth-of-type(4) {
  position: absolute;
  left: auto;
  right: 0;
  bottom: 3%;
}
@media screen and (max-width: 959px) {
  .country-city__map--australia .country-city__button:nth-of-type(4) {
    bottom: 10%;
  }
}
.country-city__map--australia .country-city__button:nth-of-type(4) .button-square__map-pin {
  position: absolute;
  top: 4%;
  right: 50%;
  transform: translate(100%, -50%) rotate(-156deg);
  transform-origin: 0 0;
  content: "";
  width: calc(8.0527086384 * 1vw);
  height: calc(0.1464128843 * 1vw);
  background-color: #2f5f98;
  z-index: -1;
}
@media screen and (max-width: 959px) {
  .country-city__map--australia .country-city__button:nth-of-type(4) .button-square__map-pin {
    top: 0;
    right: 45%;
    transform: translate(100%, -50%) rotate(-70deg);
    width: 80px;
  }
}
@media screen and (max-width: 479px) {
  .country-city__map--australia .country-city__button:nth-of-type(4) .button-square__map-pin {
    height: calc(0.2666666667 * 1vw);
  }
}
.country-city__map--newzealand {
  position: relative;
}
@media screen and (max-width: 959px) {
  .country-city__map--newzealand {
    width: 483px;
    margin: 0 auto;
    max-height: 500px;
    height: 500px;
    padding-bottom: 55px;
  }
}
@media screen and (max-width: 649px) {
  .country-city__map--newzealand {
    width: 448px;
    max-height: 465px;
    height: 465px;
  }
}
@media screen and (max-width: 479px) {
  .country-city__map--newzealand {
    width: 345px;
    max-height: 363px;
    height: 363px;
  }
}
.country-city__map--newzealand::after {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  transform: translate(-50%, 0%);
  width: calc(25.2562225476 * 1vw);
  height: auto;
  aspect-ratio: 345/500;
  background-image: url(../img/search/newzealand-map.png);
  background-size: contain;
  background-position: top center;
  background-repeat: no-repeat;
  z-index: -2;
}
@media screen and (max-width: 959px) {
  .country-city__map--newzealand::after {
    width: 345px;
  }
}
@media screen and (max-width: 649px) {
  .country-city__map--newzealand::after {
    width: 320px;
    aspect-ratio: 320/465;
  }
}
@media screen and (max-width: 479px) {
  .country-city__map--newzealand::after {
    width: 250px;
    aspect-ratio: 250/363;
  }
}
.country-city__map--newzealand .country-city__button:nth-of-type(1) {
  position: absolute;
  left: 21%;
  bottom: auto;
  top: 0;
}
@media screen and (max-width: 1099px) {
  .country-city__map--newzealand .country-city__button:nth-of-type(1) {
    left: 19%;
  }
}
@media screen and (max-width: 959px) {
  .country-city__map--newzealand .country-city__button:nth-of-type(1) {
    bottom: auto;
    top: 12%;
    left: 0;
  }
}
.country-city__map--newzealand .country-city__button:nth-of-type(1) .button-square__map-pin {
  position: absolute;
  top: 100%;
  right: 16%;
  transform: translate(100%, -50%) rotate(20deg);
  transform-origin: 0 0;
  content: "";
  width: calc(9.9560761347 * 1vw);
  height: calc(0.1464128843 * 1vw);
  background-color: #2f5f98;
  z-index: -1;
}
@media screen and (max-width: 959px) {
  .country-city__map--newzealand .country-city__button:nth-of-type(1) .button-square__map-pin {
    top: 50%;
    bottom: auto;
    right: 0;
    transform: translate(100%, -50%) rotate(0deg);
    width: 104px;
  }
}
@media screen and (max-width: 479px) {
  .country-city__map--newzealand .country-city__button:nth-of-type(1) .button-square__map-pin {
    height: calc(0.2666666667 * 1vw);
    width: 64px;
  }
}
.country-city__map--newzealand .country-city__button:nth-of-type(2) {
  position: absolute;
  left: 1%;
  bottom: 0;
}
@media screen and (max-width: 1099px) {
  .country-city__map--newzealand .country-city__button:nth-of-type(2) {
    left: 0;
  }
}
@media screen and (max-width: 959px) {
  .country-city__map--newzealand .country-city__button:nth-of-type(2) {
    left: 0;
    bottom: 30%;
  }
}
.country-city__map--newzealand .country-city__button:nth-of-type(2) .button-square__map-pin {
  position: absolute;
  top: 50%;
  right: 0;
  transform: translate(100%, -50%) rotate(0deg);
  transform-origin: 0 0;
  content: "";
  width: calc(10.3953147877 * 1vw);
  height: calc(0.1464128843 * 1vw);
  background-color: #2f5f98;
  z-index: -1;
}
@media screen and (max-width: 1099px) {
  .country-city__map--newzealand .country-city__button:nth-of-type(2) .button-square__map-pin {
    width: calc(8.0527086384 * 1vw);
  }
}
@media screen and (max-width: 959px) {
  .country-city__map--newzealand .country-city__button:nth-of-type(2) .button-square__map-pin {
    top: 100%;
    right: 50%;
    transform: translate(100%, -50%) rotate(32deg);
    width: 104px;
  }
}
@media screen and (max-width: 479px) {
  .country-city__map--newzealand .country-city__button:nth-of-type(2) .button-square__map-pin {
    width: 64px;
    transform: translate(100%, -50%) rotate(24deg);
    height: calc(0.2666666667 * 1vw);
  }
}
.country-city__map--newzealand .country-city__button:nth-of-type(3) {
  position: absolute;
  left: auto;
  right: 0;
  top: 51%;
}
@media screen and (max-width: 959px) {
  .country-city__map--newzealand .country-city__button:nth-of-type(3) {
    right: auto;
    left: 0;
    top: 30%;
  }
}
.country-city__map--newzealand .country-city__button:nth-of-type(3) .button-square__map-pin {
  position: absolute;
  top: 50%;
  right: 100%;
  transform: translate(100%, -50%) rotate(180deg);
  transform-origin: 0 0;
  content: "";
  width: calc(9.9560761347 * 1vw);
  height: calc(0.1464128843 * 1vw);
  background-color: #2f5f98;
  z-index: -1;
}
@media screen and (max-width: 1099px) {
  .country-city__map--newzealand .country-city__button:nth-of-type(3) .button-square__map-pin {
    width: calc(7.906295754 * 1vw);
  }
}
@media screen and (max-width: 959px) {
  .country-city__map--newzealand .country-city__button:nth-of-type(3) .button-square__map-pin {
    top: 50%;
    right: 0;
    transform: translate(100%, -50%) rotate(32deg);
    width: 128px;
  }
}
@media screen and (max-width: 479px) {
  .country-city__map--newzealand .country-city__button:nth-of-type(3) .button-square__map-pin {
    height: calc(0.2666666667 * 1vw);
    transform: translate(100%, -50%) rotate(34deg);
    width: 80px;
  }
}
.country-city__map--newzealand .country-city__button:nth-of-type(4) {
  position: absolute;
  left: auto;
  right: 20%;
  bottom: 5%;
}
@media screen and (max-width: 1599px) {
  .country-city__map--newzealand .country-city__button:nth-of-type(4) {
    bottom: 4%;
  }
}
@media screen and (max-width: 1099px) {
  .country-city__map--newzealand .country-city__button:nth-of-type(4) {
    right: 15%;
    bottom: 3%;
  }
}
@media screen and (max-width: 959px) {
  .country-city__map--newzealand .country-city__button:nth-of-type(4) {
    right: 0;
    bottom: 6%;
  }
}
@media screen and (max-width: 479px) {
  .country-city__map--newzealand .country-city__button:nth-of-type(4) {
    right: 0;
    bottom: 8%;
  }
}
.country-city__map--newzealand .country-city__button:nth-of-type(4) .button-square {
  min-width: 320px;
}
@media screen and (max-width: 1599px) {
  .country-city__map--newzealand .country-city__button:nth-of-type(4) .button-square {
    min-width: 280px;
  }
}
@media screen and (max-width: 1365px) {
  .country-city__map--newzealand .country-city__button:nth-of-type(4) .button-square {
    min-width: 230px;
  }
}
@media screen and (max-width: 959px) {
  .country-city__map--newzealand .country-city__button:nth-of-type(4) .button-square {
    min-width: auto;
  }
}
.country-city__map--newzealand .country-city__button:nth-of-type(4) .button-square__map-pin {
  position: absolute;
  top: 4%;
  right: 62%;
  transform: translate(100%, -50%) rotate(-155deg);
  transform-origin: 0 0;
  content: "";
  width: calc(8.0527086384 * 1vw);
  height: calc(0.1464128843 * 1vw);
  background-color: #2f5f98;
  z-index: -1;
}
@media screen and (max-width: 1599px) {
  .country-city__map--newzealand .country-city__button:nth-of-type(4) .button-square__map-pin {
    right: 58%;
  }
}
@media screen and (max-width: 1365px) {
  .country-city__map--newzealand .country-city__button:nth-of-type(4) .button-square__map-pin {
    right: 62%;
  }
}
@media screen and (max-width: 959px) {
  .country-city__map--newzealand .country-city__button:nth-of-type(4) .button-square__map-pin {
    right: 50%;
    transform: translate(100%, -50%) rotate(-130deg);
    width: 160px;
  }
}
@media screen and (max-width: 479px) {
  .country-city__map--newzealand .country-city__button:nth-of-type(4) .button-square__map-pin {
    height: calc(0.2666666667 * 1vw);
    transform: translate(100%, -50%) rotate(-124deg);
    width: 108px;
  }
}
.country-city__map--philippines {
  position: relative;
}
@media screen and (max-width: 959px) {
  .country-city__map--philippines {
    width: 571px;
    margin: 0 auto;
    max-height: 500px;
    height: 500px;
    padding-bottom: 0;
  }
}
@media screen and (max-width: 649px) {
  .country-city__map--philippines {
    width: 525px;
    max-height: 460px;
    height: 460px;
  }
}
@media screen and (max-width: 479px) {
  .country-city__map--philippines {
    width: 345px;
    max-height: 368px;
    height: 368px;
  }
}
.country-city__map--philippines::after {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  transform: translate(-50%, 0%);
  width: calc(29.8682284041 * 1vw);
  height: auto;
  aspect-ratio: 408/500;
  background-image: url(../img/search/philippines-map.png);
  background-size: contain;
  background-position: top center;
  background-repeat: no-repeat;
  z-index: -2;
}
@media screen and (max-width: 959px) {
  .country-city__map--philippines::after {
    width: 408px;
  }
}
@media screen and (max-width: 649px) {
  .country-city__map--philippines::after {
    width: 375px;
    aspect-ratio: 375/460;
  }
}
@media screen and (max-width: 479px) {
  .country-city__map--philippines::after {
    width: 300px;
    aspect-ratio: 300/368;
  }
}
.country-city__map--philippines .country-city__button .button-square {
  min-width: auto;
}
.country-city__map--philippines .country-city__button:nth-of-type(1) {
  position: absolute;
  left: 7%;
  bottom: auto;
  top: 25%;
}
@media screen and (max-width: 959px) {
  .country-city__map--philippines .country-city__button:nth-of-type(1) {
    left: 2%;
    top: 22%;
  }
}
@media screen and (max-width: 479px) {
  .country-city__map--philippines .country-city__button:nth-of-type(1) {
    left: 0;
    top: 39%;
  }
}
.country-city__map--philippines .country-city__button:nth-of-type(1) .button-square__map-pin {
  position: absolute;
  top: 50%;
  right: 0;
  transform: translate(100%, -50%) rotate(0deg);
  transform-origin: 0 0;
  content: "";
  width: calc(7.3206442167 * 1vw);
  height: calc(0.1464128843 * 1vw);
  background-color: #2f5f98;
  z-index: -1;
}
@media screen and (max-width: 479px) {
  .country-city__map--philippines .country-city__button:nth-of-type(1) .button-square__map-pin {
    top: 0;
    right: 40%;
    transform: translate(100%, -50%) rotate(-34deg);
    width: 80px;
    height: calc(0.2666666667 * 1vw);
  }
}
.country-city__map--philippines .country-city__button:nth-of-type(2) {
  position: absolute;
  left: 23%;
  bottom: 20%;
}
@media screen and (max-width: 959px) {
  .country-city__map--philippines .country-city__button:nth-of-type(2) {
    left: 33%;
    bottom: 28%;
  }
}
@media screen and (max-width: 479px) {
  .country-city__map--philippines .country-city__button:nth-of-type(2) {
    left: 24%;
    bottom: 19%;
  }
}
.country-city__map--philippines .country-city__button:nth-of-type(2) .button-square__map-pin {
  position: absolute;
  top: 50%;
  right: 0;
  transform: translate(100%, -50%) rotate(-18deg);
  transform-origin: 0 0;
  content: "";
  width: calc(7.3206442167 * 1vw);
  height: calc(0.1464128843 * 1vw);
  background-color: #2f5f98;
  z-index: -1;
}
@media screen and (max-width: 479px) {
  .country-city__map--philippines .country-city__button:nth-of-type(2) .button-square__map-pin {
    transform: translate(100%, -50%) rotate(-36deg);
    width: 78px;
    height: calc(0.2666666667 * 1vw);
  }
}
.country-city__map--philippines .country-city__button:nth-of-type(3) {
  position: absolute;
  left: auto;
  right: 16%;
  bottom: auto;
  top: 0;
}
@media screen and (max-width: 479px) {
  .country-city__map--philippines .country-city__button:nth-of-type(3) {
    right: 4%;
  }
}
.country-city__map--philippines .country-city__button:nth-of-type(3) .button-square__map-pin {
  position: absolute;
  top: 50%;
  right: 100%;
  transform: translate(100%, -50%) rotate(148deg);
  transform-origin: 0 0;
  content: "";
  width: calc(9.5168374817 * 1vw);
  height: calc(0.1464128843 * 1vw);
  background-color: #2f5f98;
  z-index: -1;
}
@media screen and (max-width: 959px) {
  .country-city__map--philippines .country-city__button:nth-of-type(3) .button-square__map-pin {
    transform: translate(100%, -50%) rotate(140deg);
    width: 104px;
  }
}
@media screen and (max-width: 479px) {
  .country-city__map--philippines .country-city__button:nth-of-type(3) .button-square__map-pin {
    transform: translate(100%, -50%) rotate(148deg);
    width: 88px;
    height: calc(0.2666666667 * 1vw);
  }
}
.country-city__map--philippines .country-city__button:nth-of-type(4) {
  position: absolute;
  left: auto;
  right: 12%;
  bottom: auto;
  top: 30%;
}
@media screen and (max-width: 959px) {
  .country-city__map--philippines .country-city__button:nth-of-type(4) {
    right: 15%;
    top: 27%;
  }
}
@media screen and (max-width: 479px) {
  .country-city__map--philippines .country-city__button:nth-of-type(4) {
    right: 0;
  }
}
.country-city__map--philippines .country-city__button:nth-of-type(4) .button-square__map-pin {
  position: absolute;
  top: 50%;
  right: 100%;
  transform: translate(100%, -50%) rotate(180deg);
  transform-origin: 0 0;
  content: "";
  width: calc(9.5168374817 * 1vw);
  height: calc(0.1464128843 * 1vw);
  background-color: #2f5f98;
  z-index: -1;
}
@media screen and (max-width: 479px) {
  .country-city__map--philippines .country-city__button:nth-of-type(4) .button-square__map-pin {
    width: 82px;
    height: calc(0.2666666667 * 1vw);
  }
}
.country-city__button .button-square {
  min-width: 180px;
}
@media screen and (max-width: 959px) {
  .country-city__button .button-square {
    min-width: auto;
  }
}
.country-city__button:nth-of-type(1) {
  position: absolute;
  left: 0;
  bottom: 40%;
}
@media screen and (max-width: 959px) {
  .country-city__button:nth-of-type(1) {
    bottom: 50%;
  }
}
@media screen and (max-width: 649px) {
  .country-city__button:nth-of-type(1) {
    bottom: auto;
    top: 30%;
  }
}
@media screen and (max-width: 479px) {
  .country-city__button:nth-of-type(1) {
    top: 28%;
  }
}
.country-city__button:nth-of-type(1) .button-square__map-pin {
  position: absolute;
  top: 100%;
  right: 40%;
  transform: translate(100%, -50%) rotate(30deg);
  transform-origin: 0 0;
  content: "";
  width: calc(8.0527086384 * 1vw);
  height: calc(0.1464128843 * 1vw);
  background-color: #2f5f98;
  z-index: -1;
}
@media screen and (max-width: 1365px) {
  .country-city__button:nth-of-type(1) .button-square__map-pin {
    transform: translate(100%, -50%) rotate(35deg);
    width: calc(7.027818448 * 1vw);
  }
}
@media screen and (max-width: 959px) {
  .country-city__button:nth-of-type(1) .button-square__map-pin {
    top: auto;
    bottom: 0;
    transform: translate(100%, -50%) rotate(120deg);
    width: 88px;
  }
}
@media screen and (max-width: 479px) {
  .country-city__button:nth-of-type(1) .button-square__map-pin {
    height: calc(0.2666666667 * 1vw);
  }
}
.country-city__button:nth-of-type(2) {
  position: absolute;
  left: 11%;
  bottom: 0%;
}
@media screen and (max-width: 1365px) {
  .country-city__button:nth-of-type(2) {
    left: 9%;
  }
}
@media screen and (max-width: 959px) {
  .country-city__button:nth-of-type(2) {
    left: 4%;
    bottom: 19%;
  }
}
@media screen and (max-width: 649px) {
  .country-city__button:nth-of-type(2) {
    left: 3%;
    bottom: 17%;
  }
}
@media screen and (max-width: 479px) {
  .country-city__button:nth-of-type(2) {
    left: 0;
  }
}
.country-city__button:nth-of-type(2) .button-square__map-pin {
  position: absolute;
  top: 4%;
  right: 50%;
  transform: translate(100%, -50%) rotate(-90deg);
  transform-origin: 0 0;
  content: "";
  width: calc(6.149341142 * 1vw);
  height: calc(0.1464128843 * 1vw);
  background-color: #2f5f98;
  z-index: -1;
}
@media screen and (max-width: 959px) {
  .country-city__button:nth-of-type(2) .button-square__map-pin {
    right: 75%;
    width: 43px;
    transform: translate(100%, -50%) rotate(-120deg);
  }
}
@media screen and (max-width: 479px) {
  .country-city__button:nth-of-type(2) .button-square__map-pin {
    height: calc(0.2666666667 * 1vw);
    right: 68%;
  }
}
.country-city__button:nth-of-type(3) {
  position: absolute;
  left: auto;
  right: 0;
  bottom: 37%;
}
@media screen and (max-width: 959px) {
  .country-city__button:nth-of-type(3) {
    right: 2%;
    bottom: 0;
  }
}
@media screen and (max-width: 649px) {
  .country-city__button:nth-of-type(3) {
    right: 0;
  }
}
.country-city__button:nth-of-type(3) .button-square__map-pin {
  position: absolute;
  top: 100%;
  right: 80%;
  transform: translate(100%, -50%) rotate(140deg);
  transform-origin: 0 0;
  content: "";
  width: calc(9.8828696925 * 1vw);
  height: calc(0.1464128843 * 1vw);
  background-color: #2f5f98;
  z-index: -1;
}
@media screen and (max-width: 1365px) {
  .country-city__button:nth-of-type(3) .button-square__map-pin {
    right: 70%;
  }
}
@media screen and (max-width: 959px) {
  .country-city__button:nth-of-type(3) .button-square__map-pin {
    top: 0;
    right: 50%;
    transform: translate(100%, -50%) rotate(-90deg);
    width: 100px;
  }
}
@media screen and (max-width: 649px) {
  .country-city__button:nth-of-type(3) .button-square__map-pin {
    top: 0;
    right: 45%;
    width: 76px;
  }
}
@media screen and (max-width: 479px) {
  .country-city__button:nth-of-type(3) .button-square__map-pin {
    height: calc(0.2666666667 * 1vw);
  }
}
.country-city__button:nth-of-type(4) {
  position: absolute;
  left: auto;
  right: 0;
  bottom: 3%;
}
@media screen and (max-width: 959px) {
  .country-city__button:nth-of-type(4) {
    right: 52%;
    bottom: 0;
  }
}
@media screen and (max-width: 649px) {
  .country-city__button:nth-of-type(4) {
    right: 55%;
    bottom: 0%;
  }
}
@media screen and (max-width: 479px) {
  .country-city__button:nth-of-type(4) {
    right: auto;
    left: 0;
  }
}
.country-city__button:nth-of-type(4) .button-square__map-pin {
  position: absolute;
  top: 50%;
  right: 100%;
  transform: translate(100%, -50%) rotate(180deg);
  transform-origin: 0 0;
  content: "";
  width: calc(9.5168374817 * 1vw);
  height: calc(0.1464128843 * 1vw);
  background-color: #2f5f98;
  z-index: -1;
}
@media screen and (max-width: 1099px) {
  .country-city__button:nth-of-type(4) .button-square__map-pin {
    width: calc(7.027818448 * 1vw);
  }
}
@media screen and (max-width: 959px) {
  .country-city__button:nth-of-type(4) .button-square__map-pin {
    top: 0;
    right: 0;
    transform: translate(100%, -50%) rotate(-30deg);
    width: 104px;
  }
}
@media screen and (max-width: 649px) {
  .country-city__button:nth-of-type(4) .button-square__map-pin {
    top: 0;
    right: 0;
    width: 88px;
  }
}
@media screen and (max-width: 479px) {
  .country-city__button:nth-of-type(4) .button-square__map-pin {
    transform: translate(100%, -50%) rotate(-24deg);
    width: 102px;
    height: calc(0.2666666667 * 1vw);
  }
}
.country-city .modal {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  text-align: center;
  background: rgba(0, 0, 0, 0.5);
  overflow: auto;
  opacity: 0;
  visibility: hidden;
  transition: 0.3s;
  box-sizing: border-box;
  z-index: 100;
}
.country-city .modal.active {
  opacity: 1;
  visibility: visible;
}
.country-city .modal__content {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  display: inline-block;
  vertical-align: middle;
  max-width: 64.4216691069%;
  width: 100%;
  margin: 0 auto;
  height: auto;
  background-color: #fff;
  border: solid #fbca41 2px;
  border-radius: calc(0.5856515373 * 1vw);
}
@media screen and (max-width: 959px) {
  .country-city .modal__content {
    position: relative;
    top: auto;
    left: auto;
    transform: translate(0%, 0%);
    max-width: 92%;
    width: 100%;
    margin: 0 auto;
    margin: calc(6.4 * 1vw) auto;
  }
}
.country-city .modal__close {
  width: 100%;
  margin-top: calc(1.756954612 * 1vw);
  font-weight: 500;
  background-color: #fbca41;
  padding: calc(0.7320644217 * 1vw) auto calc(0.5856515373 * 1vw);
  display: flex;
  align-items: center;
  justify-content: center;
}
.country-city .modal__close {
  font-size: clamp(16px, 1.1713030747vw, 9999px);
  line-height: 2.0625;
}
@media screen and (max-width: 959px) {
  .country-city .modal__close {
    font-size: clamp(1rem, 1rem + 0vw, 1rem);
  }
}
@media screen and (max-width: 479px) {
  .country-city .modal__close {
    font-size: 16px;
    line-height: 2.0625 !important;
  }
}
.country-city .modal__close {
  letter-spacing: 0.05em;
}
@media screen and (max-width: 959px) {
  .country-city .modal__close {
    letter-spacing: 0.05em;
  }
}
@media screen and (max-width: 479px) {
  .country-city .modal__close {
    letter-spacing: 0.05em;
  }
}
@media screen and (max-width: 959px) {
  .country-city .modal__close {
    width: 100%;
    max-width: none;
    margin-top: calc(2.1333333333 * 1vw);
    padding: calc(1.0666666667 * 1vw) 0;
  }
}
.country-city .modal__close span {
  position: relative;
  height: 100%;
  width: 100%;
  aspect-ratio: 1/1;
  margin-left: calc(0.5856515373 * 1vw);
}
@media screen and (max-width: 959px) {
  .country-city .modal__close span {
    margin-left: calc(2.1333333333 * 1vw);
  }
}
.country-city .modal__close span::before {
  content: "";
  position: absolute;
  width: calc(0.878477306 * 1vw);
  height: 2px;
  background-color: #1c1c1c;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) rotate(-45deg);
}
@media screen and (max-width: 959px) {
  .country-city .modal__close span::before {
    width: calc(3.2 * 1vw);
  }
}
.country-city .modal__close span::after {
  content: "";
  position: absolute;
  width: calc(0.878477306 * 1vw);
  height: 2px;
  background-color: #1c1c1c;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) rotate(45deg);
}
@media screen and (max-width: 959px) {
  .country-city .modal__close span::after {
    width: calc(3.2 * 1vw);
  }
}
.country-city .city-modal__inner {
  padding: calc(4.0263543192 * 1vw);
}
@media screen and (max-width: 959px) {
  .country-city .city-modal__inner {
    padding: calc(6.4 * 1vw) calc(4 * 1vw);
  }
}
.country-city .city-modal__title {
  display: flex;
  justify-content: start;
  align-items: center;
  gap: calc(0.878477306 * 1vw);
  padding-bottom: calc(0.5856515373 * 1vw);
  border-bottom: solid 1px #fbca41;
}
@media screen and (max-width: 959px) {
  .country-city .city-modal__title {
    gap: calc(3.2 * 1vw);
    padding-bottom: calc(2.1333333333 * 1vw);
  }
}
.country-city .city-modal__title p {
  font-weight: 700;
}
.country-city .city-modal__title p {
  font-size: clamp(22px, 1.6105417277vw, 9999px);
  line-height: 1;
}
@media screen and (max-width: 959px) {
  .country-city .city-modal__title p {
    font-size: clamp(1.25rem, 1.2026992936rem + 0.2018163471vw, 1.375rem);
  }
}
@media screen and (max-width: 479px) {
  .country-city .city-modal__title p {
    font-size: 20px;
    line-height: 1 !important;
  }
}
.country-city .city-modal__title p {
  letter-spacing: 0.1em;
}
@media screen and (max-width: 959px) {
  .country-city .city-modal__title p {
    letter-spacing: 0.1em;
  }
}
@media screen and (max-width: 479px) {
  .country-city .city-modal__title p {
    letter-spacing: 0.1em;
  }
}
.country-city .city-modal__title span {
  font-weight: 400;
  color: #fbca41;
  font-family: "Caveat", cursive;
}
.country-city .city-modal__title span {
  font-size: clamp(16px, 1.1713030747vw, 9999px);
  line-height: 1;
}
@media screen and (max-width: 959px) {
  .country-city .city-modal__title span {
    font-size: clamp(1rem, 1rem + 0vw, 1rem);
  }
}
@media screen and (max-width: 479px) {
  .country-city .city-modal__title span {
    font-size: 16px;
    line-height: 1 !important;
  }
}
.country-city .city-modal__title span {
  letter-spacing: 0.2em;
}
@media screen and (max-width: 959px) {
  .country-city .city-modal__title span {
    letter-spacing: 0.2em;
  }
}
@media screen and (max-width: 479px) {
  .country-city .city-modal__title span {
    letter-spacing: 0.2em;
  }
}
.country-city .city-modal__content {
  margin-top: calc(1.756954612 * 1vw);
  display: flex;
  justify-content: space-between;
  align-items: stretch;
}
@media screen and (max-width: 959px) {
  .country-city .city-modal__content {
    margin-top: 8;
    flex-flow: column;
    gap: calc(3.2 * 1vw);
    align-items: start;
  }
}
.country-city .city-modal__left {
  width: 48.0519480519%;
}
@media screen and (max-width: 959px) {
  .country-city .city-modal__left {
    width: auto;
  }
}
.country-city .city-modal__right {
  width: 48.0519480519%;
  background-color: #fff9d4;
  height: auto;
}
@media screen and (max-width: 959px) {
  .country-city .city-modal__right {
    width: auto;
  }
}
.country-city .city-modal__img {
  width: 100%;
  height: auto;
  aspect-ratio: 3/2;
}
.country-city .city-modal__img img {
  object-fit: cover;
}
.country-city .city-modal__text {
  text-align: left;
  font-weight: 500;
  margin-top: calc(1.1713030747 * 1vw);
}
.country-city .city-modal__text {
  font-size: clamp(16px, 1.1713030747vw, 9999px);
  line-height: 1.5;
}
@media screen and (max-width: 959px) {
  .country-city .city-modal__text {
    font-size: clamp(0.875rem, 0.8276992936rem + 0.2018163471vw, 1rem);
  }
}
@media screen and (max-width: 479px) {
  .country-city .city-modal__text {
    font-size: 14px;
    line-height: 1.7142857143 !important;
  }
}
.country-city .city-modal__text {
  letter-spacing: 0em;
}
@media screen and (max-width: 959px) {
  .country-city .city-modal__text {
    letter-spacing: 0em;
  }
}
@media screen and (max-width: 479px) {
  .country-city .city-modal__text {
    letter-spacing: 0em;
  }
}
@media screen and (max-width: 959px) {
  .country-city .city-modal__text {
    margin-top: calc(3.2 * 1vw);
  }
}
.country-city .city-modal__list {
  padding: calc(1.756954612 * 1vw);
  height: 100%;
  text-align: left;
  display: flex;
  flex-flow: column;
  justify-content: space-between;
}
@media screen and (max-width: 959px) {
  .country-city .city-modal__list {
    padding: calc(3.2 * 1vw);
    gap: calc(2.1333333333 * 1vw);
  }
}
.country-city .city-modal__list-title {
  font-weight: 700;
  width: fit-content;
  position: relative;
}
.country-city .city-modal__list-title {
  font-size: clamp(16px, 1.1713030747vw, 9999px);
  line-height: 1.5;
}
@media screen and (max-width: 959px) {
  .country-city .city-modal__list-title {
    font-size: clamp(0.875rem, 0.8276992936rem + 0.2018163471vw, 1rem);
  }
}
@media screen and (max-width: 479px) {
  .country-city .city-modal__list-title {
    font-size: 14px;
    line-height: 1.5714285714 !important;
  }
}
.country-city .city-modal__list-title {
  letter-spacing: 0.1em;
}
@media screen and (max-width: 959px) {
  .country-city .city-modal__list-title {
    letter-spacing: 0.1em;
  }
}
@media screen and (max-width: 479px) {
  .country-city .city-modal__list-title {
    letter-spacing: 0.1em;
  }
}
.country-city .city-modal__list-title::after {
  content: "";
  width: calc(1.0980966325 * 1vw);
  aspect-ratio: 1/1;
  height: auto;
  position: absolute;
  top: 50%;
  right: calc(-0.2928257687 * 1vw);
  transform: translate(100%, -50%);
  background-image: url(../img/search/price-plane_yellow.png);
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
}
@media screen and (max-width: 959px) {
  .country-city .city-modal__list-title::after {
    width: calc(4 * 1vw);
    right: calc(-1.0666666667 * 1vw);
  }
}
.country-city .city-modal__list-text {
  font-weight: 400;
}
.country-city .city-modal__list-text {
  font-size: clamp(14px, 1.0248901903vw, 9999px);
  line-height: 1.7142857143;
}
@media screen and (max-width: 959px) {
  .country-city .city-modal__list-text {
    font-size: clamp(0.875rem, 0.875rem + 0vw, 0.875rem);
  }
}
@media screen and (max-width: 479px) {
  .country-city .city-modal__list-text {
    font-size: 14px;
    line-height: 1.5 !important;
  }
}
.country-city .city-modal__list-text {
  letter-spacing: 0.025em;
}
@media screen and (max-width: 959px) {
  .country-city .city-modal__list-text {
    letter-spacing: 0.025em;
  }
}
@media screen and (max-width: 479px) {
  .country-city .city-modal__list-text {
    letter-spacing: 0.025em;
  }
}

.country-cost {
  margin: 0 0 calc(8.78477306 * 1vw);
  position: relative;
}
@media screen and (max-width: 959px) {
  .country-cost {
    margin: 0 0 calc(16 * 1vw);
    overflow: hidden;
  }
}
.country-cost__content {
  max-width: 78.3615316118%;
  width: 100%;
  margin: 0 auto;
}
@media screen and (max-width: 959px) {
  .country-cost__content {
    max-width: none;
    margin: 0;
  }
}
.country-cost__pager {
  position: absolute;
  right: calc(9.663250366 * 1vw);
  bottom: 0;
  z-index: 2;
}
@media screen and (max-width: 959px) {
  .country-cost__pager {
    display: flex;
    justify-content: center;
    position: relative;
    right: auto;
  }
}
@media screen and (max-width: 959px) {
  .country-cost__pager .pager {
    margin: calc(3.4666666667 * 1vw) calc(4 * 1vw) 0;
  }
}
@media screen and (max-width: 959px) {
  .country-cost .search-table thead th {
    width: 10em;
  }
}
.country-cost .search-table thead th img {
  height: calc(2.9282576867 * 1vw);
  width: auto;
  aspect-ratio: 1/1;
  object-fit: contain;
  display: block;
}
@media screen and (max-width: 959px) {
  .country-cost .search-table thead th img {
    height: calc(5.3333333333 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .country-cost .search-table thead th img {
    height: calc(7.2 * 1vw);
  }
}
.country-cost .search-table thead th:first-child {
  padding: calc(1.4641288433 * 1vw) calc(1.756954612 * 1vw) calc(0.7320644217 * 1vw);
  opacity: 1;
  color: #fff;
  background-color: #2f5f98 !important;
  width: 4em;
}
@media screen and (max-width: 959px) {
  .country-cost .search-table thead th:first-child {
    padding: calc(3.2 * 1vw) calc(2.1333333333 * 1vw) calc(2.1333333333 * 1vw);
    white-space: nowrap;
    width: 8.5em;
  }
}
@media screen and (max-width: 649px) {
  .country-cost .search-table thead th:first-child {
    padding: calc(4.2666666667 * 1vw) calc(4.2666666667 * 1vw) calc(3.2 * 1vw);
  }
}

.header {
  color: #2f5f98;
  position: fixed;
  width: 100vw;
  z-index: 100;
  top: 0;
}
.header__inner {
  margin: 1.8301610542% 1.8301610542% 0;
  grid-template-columns: 20% 1fr 20%;
  display: grid;
}
@media screen and (max-width: 1365px) {
  .header__inner {
    display: flex;
    justify-content: space-between;
  }
}
@media screen and (max-width: 959px) {
  .header__inner {
    display: flex;
    justify-content: space-between;
    margin: 5.3333333333% 4% 0;
  }
}
@media screen and (max-width: 959px) {
  .header .header__hamburger {
    cursor: pointer;
    width: 40px;
    height: 40px;
    z-index: 2;
    position: relative;
  }
}
@media screen and (max-width: 959px) {
  .header .header__hamburger img {
    width: 40px;
    height: auto;
  }
}
@media screen and (max-width: 959px) {
  .header .header__hamburger p {
    position: relative;
  }
  .header .header__hamburger p::before {
    content: "menu";
    font-family: "Caveat", cursive;
    font-weight: 700;
    text-align: center;
    display: block;
  }
  .header .header__hamburger p::before {
    font-size: clamp(20px, 1.4641288433vw, 9999px);
    line-height: 1;
  }
}
@media screen and (max-width: 959px) and (max-width: 959px) {
  .header .header__hamburger p::before {
    font-size: clamp(1.25rem, 1.25rem + 0vw, 1.25rem);
  }
}
@media screen and (max-width: 959px) and (max-width: 479px) {
  .header .header__hamburger p::before {
    font-size: 20px;
    line-height: 1 !important;
  }
}
@media screen and (max-width: 959px) {
  .header .header__hamburger p::before {
    letter-spacing: 0.1em;
  }
}
@media screen and (max-width: 959px) and (max-width: 959px) {
  .header .header__hamburger p::before {
    letter-spacing: 0.1em;
  }
}
@media screen and (max-width: 959px) and (max-width: 479px) {
  .header .header__hamburger p::before {
    letter-spacing: 0.1em;
  }
}
.header .header__hamburger span {
  opacity: 0;
}
@media screen and (max-width: 959px) {
  .header .header__hamburger.on img {
    opacity: 0;
  }
}
@media screen and (max-width: 959px) {
  .header .header__hamburger.on span {
    position: absolute;
    top: 32%;
    left: 50%;
    width: 40px;
    height: 1px;
    background-color: #2f5f98;
    transform-origin: center;
    transition: opacity 0.3s ease;
    transform: translate(-50%, 0%) rotate(25deg);
    opacity: 1;
  }
  .header .header__hamburger.on span:nth-of-type(2) {
    transform: translate(-50%, 0%) rotate(-25deg);
  }
}
@media screen and (max-width: 959px) {
  .header .header__hamburger.on p::before {
    content: "close";
    margin-left: -4px;
  }
}
.header .header-logo {
  z-index: 2;
}
.header .header-logo img {
  height: 100%;
  width: auto;
}
.header .header-nav {
  display: flex;
  justify-content: center;
  align-items: center;
}
@media screen and (max-width: 1099px) {
  .header .header-nav {
    gap: calc(2.3426061493 * 1vw);
  }
}
@media screen and (max-width: 959px) {
  .header .header-nav {
    display: none;
    position: fixed;
    background-color: #ffffff;
    width: 100vw;
    height: 100vh;
    top: 0;
    left: 0;
    padding: calc(14.9333333333 * 1vw) calc(4 * 1vw) 0;
    max-height: 100vh;
    overflow-y: scroll;
    -webkit-overflow-scrolling: touch;
  }
}
@media screen and (max-width: 649px) {
  .header .header-nav {
    padding: calc(17.0666666667 * 1vw) calc(4 * 1vw) 0;
  }
}
@media screen and (max-width: 479px) {
  .header .header-nav {
    padding: calc(21.3333333333 * 1vw) calc(4 * 1vw) 0;
  }
}
@media screen and (max-width: 959px) {
  .header .header-nav.on {
    display: block;
  }
}
.header .header-nav li {
  text-align: center;
  padding: 0 3.1746031746%;
  position: relative;
}
@media screen and (max-width: 1099px) {
  .header .header-nav li {
    padding: 0;
  }
}
@media screen and (max-width: 959px) {
  .header .header-nav li {
    text-align: left;
    padding: calc(2.1333333333 * 1vw) 0 calc(2.6666666667 * 1vw);
    border-bottom: solid 1px #ececec;
    position: relative !important;
  }
}
@media screen and (max-width: 649px) {
  .header .header-nav li {
    padding: calc(2.6666666667 * 1vw) 0 calc(3.2 * 1vw);
  }
}
@media screen and (max-width: 479px) {
  .header .header-nav li {
    padding: calc(3.2 * 1vw) 0 calc(4.2666666667 * 1vw);
  }
}
.header .header-nav li:hover a {
  opacity: 1;
}
@media screen and (min-width: 960px) {
  .header .header-nav li:hover:after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: calc(8.78477306 * 1vw);
    height: calc(8.78477306 * 1vw);
    background-image: url(../img/common/header-circle.png);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    z-index: -1;
  }
}
@media screen and (min-width: 960px) {
  .header .header-nav li:hover .header-nav__menu-wrapper {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transition: opacity 0.3s ease, visibility 0s linear 0s;
  }
}
@media screen and (min-width: 960px) and (hover: hover) and (pointer: fine) {
  .header .header-nav li .header-nav__title:hover:after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: calc(8.78477306 * 1vw);
    height: calc(8.78477306 * 1vw);
    background-image: url(../img/common/header-circle.png);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    z-index: -1;
  }
}
.header .header-nav__title {
  white-space: nowrap;
}
@media screen and (max-width: 959px) {
  .header .header-nav__title {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0 calc(4 * 1vw);
  }
}
@media screen and (max-width: 419px) {
  .header .header-nav__title {
    padding: 0 calc(3.2 * 1vw) 0 calc(1.0666666667 * 1vw);
  }
}
@media screen and (max-width: 959px) {
  .header .header-nav__arrow {
    width: 15px;
  }
}
.header .header-nav__title-en {
  font-weight: 700;
  font-family: "Caveat", cursive;
}
.header .header-nav__title-en {
  font-size: clamp(24px, 1.756954612vw, 9999px);
  line-height: 1;
}
@media screen and (max-width: 959px) {
  .header .header-nav__title-en {
    font-size: clamp(1.5rem, 1.5rem + 0vw, 1.5rem);
  }
}
@media screen and (max-width: 479px) {
  .header .header-nav__title-en {
    font-size: 24px;
    line-height: 1.3333333333 !important;
  }
}
.header .header-nav__title-en {
  letter-spacing: 0.2em;
}
@media screen and (max-width: 959px) {
  .header .header-nav__title-en {
    letter-spacing: 0.2em;
  }
}
@media screen and (max-width: 479px) {
  .header .header-nav__title-en {
    letter-spacing: 0.2em;
  }
}
@media screen and (max-width: 1099px) {
  .header .header-nav__title-en {
    letter-spacing: 0.1em;
  }
}
@media screen and (max-width: 1099px) and (max-width: 959px) {
  .header .header-nav__title-en {
    letter-spacing: 0.1em;
  }
}
@media screen and (max-width: 1099px) and (max-width: 479px) {
  .header .header-nav__title-en {
    letter-spacing: 0.1em;
  }
}
@media screen and (max-width: 959px) {
  .header .header-nav__title-en {
    color: #fbca41;
  }
  .header .header-nav__title-en {
    letter-spacing: 0.2em;
  }
}
@media screen and (max-width: 959px) and (max-width: 959px) {
  .header .header-nav__title-en {
    letter-spacing: 0.2em;
  }
}
@media screen and (max-width: 959px) and (max-width: 479px) {
  .header .header-nav__title-en {
    letter-spacing: 0.2em;
  }
}
@media screen and (min-width: 960px) {
  .header .header-nav__title-en.on {
    position: relative;
    width: fit-content;
    margin: 0 auto;
  }
  .header .header-nav__title-en.on::before {
    content: "";
    position: absolute;
    background-image: url(../img/common/header-point.png);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    width: calc(0.5856515373 * 1vw);
    height: calc(0.5856515373 * 1vw);
    top: 4px;
    left: -14px;
  }
  .header .header-nav__title-en.on::after {
    content: "";
    position: absolute;
    background-image: url(../img/common/header-point2.png);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    width: calc(0.5856515373 * 1vw);
    height: calc(0.5856515373 * 1vw);
    top: 4px;
    right: -14px;
  }
}
.header .header-nav__title-ja {
  margin-top: 8px;
  font-weight: 700;
  font-size: 10px;
}
.header .header-nav__title-ja {
  font-size: clamp(10px, 0.7320644217vw, 9999px);
  line-height: 1;
}
@media screen and (max-width: 959px) {
  .header .header-nav__title-ja {
    font-size: clamp(1.25rem, 1.4865035318rem - 1.0090817356vw, 0.625rem);
  }
}
@media screen and (max-width: 479px) {
  .header .header-nav__title-ja {
    font-size: 20px;
    line-height: 1.1 !important;
  }
}
.header .header-nav__title-ja {
  letter-spacing: 0.05em;
}
@media screen and (max-width: 959px) {
  .header .header-nav__title-ja {
    letter-spacing: 0.1em;
  }
}
@media screen and (max-width: 479px) {
  .header .header-nav__title-ja {
    letter-spacing: 0.1em;
  }
}
@media screen and (max-width: 1099px) {
  .header .header-nav__title-ja {
    letter-spacing: 0.02em;
  }
}
@media screen and (max-width: 1099px) and (max-width: 959px) {
  .header .header-nav__title-ja {
    letter-spacing: 0.02em;
  }
}
@media screen and (max-width: 1099px) and (max-width: 479px) {
  .header .header-nav__title-ja {
    letter-spacing: 0.02em;
  }
}
@media screen and (max-width: 959px) {
  .header .header-nav__title-ja {
    margin-left: 8px;
    margin-top: calc(-0.0732064422 * 1vw);
  }
  .header .header-nav__title-ja {
    letter-spacing: 0.1em;
  }
}
@media screen and (max-width: 959px) and (max-width: 959px) {
  .header .header-nav__title-ja {
    letter-spacing: 0.1em;
  }
}
@media screen and (max-width: 959px) and (max-width: 479px) {
  .header .header-nav__title-ja {
    letter-spacing: 0.1em;
  }
}
@media screen and (max-width: 419px) {
  .header .header-nav__title-ja {
    margin-left: 6px;
  }
}
@media screen and (max-width: 959px) {
  .header .header-nav__plus {
    width: 15px;
    height: 15px;
    position: relative;
    margin-top: 10px;
    cursor: pointer;
  }
}
.header .header-nav__plus.on span:first-child {
  transform: translate(-50%, -50%) rotate(0deg);
  height: 1px;
}
.header .header-nav__plus.on span:last-child {
  transform: translate(-50%, -50%) rotate(-90deg);
}
@media screen and (max-width: 959px) {
  .header .header-nav__plus span {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 100%;
    height: 1px;
    background-color: #2f5f98;
    transform: translate(-50%, -50%);
    transition: 0.3s ease;
  }
  .header .header-nav__plus span:first-child {
    transform: translate(-50%, -50%) rotate(0deg);
    height: 0;
  }
  .header .header-nav__plus span:last-child {
    transform: translate(-50%, -50%) rotate(0deg);
  }
}
.header .header-nav__menu {
  position: relative;
  top: 0;
  left: 0;
  transform: none;
}
@media screen and (max-width: 959px) {
  .header .header-nav__menu {
    position: relative;
  }
}
.header .header-nav__menu-wrapper {
  margin-top: calc(2.3426061493 * 1vw);
  justify-content: left;
  gap: calc(1.756954612 * 1vw);
  background-color: #ffffff;
  border: solid 1px #fbca41;
  border-radius: 16px;
  width: auto;
  z-index: 1;
  padding: calc(1.4641288433 * 1vw) calc(1.756954612 * 1vw) calc(1.4641288433 * 1vw) calc(1.756954612 * 1vw);
  opacity: 0;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  visibility: hidden;
  pointer-events: none;
  display: flex;
  transition: opacity 0.3s ease, visibility 0s linear 0.3s;
}
@media screen and (max-width: 959px) {
  .header .header-nav__menu-wrapper {
    background: none;
    margin-top: 0;
    border: none;
    border-radius: 0;
    padding: 0 7.9365079365%;
    position: static;
    transform: translateY(-12px);
    max-height: 0;
    left: auto;
    transition: max-height 0.3s cubic-bezier(0.25, 0.8, 0.25, 1), opacity 0.4s ease, transform 0.5s cubic-bezier(0.25, 0.8, 0.25, 1);
  }
}
@media screen and (max-width: 959px) {
  .header .header-nav__menu-wrapper.on {
    padding: calc(1.6 * 1vw) calc(6.6666666667 * 1vw) 0;
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    max-height: 600px;
    transform: translateY(0);
    transition: max-height 0.3s cubic-bezier(0.25, 0.8, 0.25, 1), opacity 0.4s ease, transform 0.5s cubic-bezier(0.25, 0.8, 0.25, 1);
    gap: calc(3.2 * 1vw);
  }
}
@media screen and (max-width: 649px) {
  .header .header-nav__menu-wrapper.on {
    gap: none;
  }
}
@media screen and (max-width: 479px) {
  .header .header-nav__menu-wrapper.on {
    padding: calc(2.6666666667 * 1vw) calc(6.6666666667 * 1vw) 0;
  }
}
@media screen and (max-width: 419px) {
  .header .header-nav__menu-wrapper.on {
    padding: calc(2.6666666667 * 1vw) calc(3.2 * 1vw) 0;
    gap: calc(2.6666666667 * 1vw);
  }
}
.header .header-nav__menu-wrapper::before {
  content: "";
  position: absolute;
  width: 20px;
  height: 22px;
  background-image: url(../img/common/header-bubble.png);
  top: -19px;
  z-index: 2;
  left: 50%;
  transform: translateX(-50%);
}
@media screen and (max-width: 959px) {
  .header .header-nav__menu-wrapper::before {
    background-image: none;
  }
}
.header .header-nav__menu-inner {
  width: 100%;
  text-align: left;
}
@media screen and (max-width: 959px) {
  .header .header-nav__menu-inner {
    width: fit-content;
  }
}
.header .header-nav__menu-inner li {
  text-align: left;
  width: 100%;
  display: flex;
  align-items: center;
  margin-bottom: calc(0.2928257687 * 1vw);
  pointer-events: auto;
  padding: 0;
}
@media screen and (max-width: 959px) {
  .header .header-nav__menu-inner li {
    border-bottom: none;
    padding-bottom: calc(0.2666666667 * 1vw);
  }
}
@media screen and (max-width: 479px) {
  .header .header-nav__menu-inner li {
    padding-bottom: calc(0.8 * 1vw);
  }
}
.header .header-nav__menu-inner li:last-child {
  margin-bottom: 0;
}
@media screen and (max-width: 959px) {
  .header .header-nav__menu-inner li:last-child {
    padding-bottom: 0;
  }
}
.header .header-nav__menu-inner li:after {
  background-image: none !important;
}
.header .header-nav__menu-inner li span {
  display: inline-block;
  width: 10px;
  height: 2px;
  margin-right: 8px;
  background-color: #fbca41;
  transform: translateX(-6px);
  transition: transform 0.5s ease;
}
@media screen and (max-width: 959px) {
  .header .header-nav__menu-inner li span {
    transform: none;
  }
}
@media screen and (max-width: 419px) {
  .header .header-nav__menu-inner li span {
    margin-right: 4px;
  }
}
.header .header-nav__menu-inner li a {
  display: flex;
  align-items: center;
  white-space: nowrap;
  font-weight: 500;
}
.header .header-nav__menu-inner li a {
  font-size: clamp(13px, 0.9516837482vw, 9999px);
  line-height: 1.5384615385;
}
@media screen and (max-width: 959px) {
  .header .header-nav__menu-inner li a {
    font-size: clamp(1rem, 1.0709510595rem - 0.3027245207vw, 0.8125rem);
  }
}
@media screen and (max-width: 479px) {
  .header .header-nav__menu-inner li a {
    font-size: 16px;
    line-height: 1.5 !important;
  }
}
.header .header-nav__menu-inner li a {
  letter-spacing: 0.05em;
}
@media screen and (max-width: 959px) {
  .header .header-nav__menu-inner li a {
    letter-spacing: 0.05em;
  }
}
@media screen and (max-width: 479px) {
  .header .header-nav__menu-inner li a {
    letter-spacing: 0.05em;
  }
}
.header .header-nav__menu-inner li a:hover {
  opacity: 1;
}
.header .header-nav__menu-inner li a:hover span {
  transform: translateX(0);
  transition: transform 0.5s ease;
}
.header .header-nav__menu-category {
  font-weight: 700;
  margin-bottom: calc(0.5856515373 * 1vw);
}
.header .header-nav__menu-category {
  font-size: clamp(14px, 1.0248901903vw, 9999px);
  line-height: 1.5714285714;
}
@media screen and (max-width: 959px) {
  .header .header-nav__menu-category {
    font-size: clamp(1rem, 1.0473007064rem - 0.2018163471vw, 0.875rem);
  }
}
@media screen and (max-width: 479px) {
  .header .header-nav__menu-category {
    font-size: 16px;
    line-height: 1.5 !important;
  }
}
.header .header-nav__menu-category {
  letter-spacing: 0.05em;
}
@media screen and (max-width: 959px) {
  .header .header-nav__menu-category {
    letter-spacing: 0.05em;
  }
}
@media screen and (max-width: 479px) {
  .header .header-nav__menu-category {
    letter-spacing: 0.05em;
  }
}
@media screen and (max-width: 959px) {
  .header .header-nav__menu-category {
    margin-bottom: calc(0.5333333333 * 1vw) !important;
  }
}
@media screen and (max-width: 479px) {
  .header .header-nav__menu-category {
    margin-bottom: calc(0.8 * 1vw) !important;
  }
}
@media screen and (max-width: 959px) {
  .header .header-nav__others {
    padding: calc(3.2 * 1vw) calc(2.1333333333 * 1vw) !important;
    border-bottom: none !important;
  }
}
@media screen and (max-width: 649px) {
  .header .header-nav__others {
    padding: calc(5.3333333333 * 1vw) calc(4.2666666667 * 1vw) !important;
  }
}
@media screen and (max-width: 959px) {
  .header .header-nav__others-item {
    margin-bottom: 8px;
  }
}
@media screen and (max-width: 959px) {
  .header .header-nav__others-item a {
    padding-right: 10px;
    font-weight: 700;
  }
  .header .header-nav__others-item a {
    font-size: clamp(13px, 0.9516837482vw, 9999px);
    line-height: 1.6923076923;
  }
}
@media screen and (max-width: 959px) and (max-width: 959px) {
  .header .header-nav__others-item a {
    font-size: clamp(0.8125rem, 0.8125rem + 0vw, 0.8125rem);
  }
}
@media screen and (max-width: 959px) and (max-width: 479px) {
  .header .header-nav__others-item a {
    font-size: 13px;
    line-height: 1.6923076923 !important;
  }
}
@media screen and (max-width: 959px) {
  .header .header-nav__others-item a {
    letter-spacing: 0.08em;
  }
}
@media screen and (max-width: 959px) and (max-width: 959px) {
  .header .header-nav__others-item a {
    letter-spacing: 0.08em;
  }
}
@media screen and (max-width: 959px) and (max-width: 479px) {
  .header .header-nav__others-item a {
    letter-spacing: 0.08em;
  }
}
@media screen and (max-width: 959px) {
  .header .header-nav__others-sns a {
    padding-right: 10px;
  }
}
@media screen and (max-width: 959px) {
  .header .header-nav__others-sns img {
    width: 20px;
    height: auto;
  }
}
@media screen and (max-width: 959px) {
  .header .header-nav__apply {
    padding: 0 !important;
    width: 100vw;
    margin: 0 calc(50% - 50vw);
    border-bottom: none !important;
    background-image: repeating-linear-gradient(-45deg, #fff9d4, #fff9d4 5px, transparent 5px, transparent 10px);
  }
}
@media screen and (max-width: 959px) {
  .header .header-nav__apply .header-nav__title {
    padding: 0;
    margin: 0 auto;
    display: block;
    text-align: center;
  }
}
@media screen and (max-width: 959px) {
  .header .header-nav__apply .header-nav__title p {
    font-weight: 500;
    padding: 0 0 2.1333333333% 0;
    color: #1c1c1c;
    text-align: center;
  }
  .header .header-nav__apply .header-nav__title p {
    font-size: clamp(13px, 0.9516837482vw, 9999px);
    line-height: 2.2307692308;
  }
}
@media screen and (max-width: 959px) and (max-width: 959px) {
  .header .header-nav__apply .header-nav__title p {
    font-size: clamp(0.8125rem, 0.8125rem + 0vw, 0.8125rem);
  }
}
@media screen and (max-width: 959px) and (max-width: 479px) {
  .header .header-nav__apply .header-nav__title p {
    font-size: 13px;
    line-height: 2.2307692308 !important;
  }
}
@media screen and (max-width: 649px) {
  .header .header-nav__apply .header-nav__title p {
    padding: 0 0 4.2666666667% 0;
  }
}
.header .header-nav__apply .header-nav__title-inner {
  padding: 0 0 1.6% 0;
}
@media screen and (max-width: 649px) {
  .header .header-nav__apply .header-nav__title-inner {
    padding: 0 0 2.1333333333% 0;
  }
}
.header .header-nav__apply-inner {
  padding: calc(5.3333333333 * 1vw) 0 calc(9.6 * 1vw);
}
@media screen and (max-width: 649px) {
  .header .header-nav__apply-inner {
    padding: calc(8.5333333333 * 1vw) 0 calc(17.0666666667 * 1vw);
  }
}
@media screen and (max-width: 959px) {
  .header .header-nav__apply-button {
    margin: 0 auto;
    width: fit-content;
    position: relative;
  }
}
@media screen and (max-width: 959px) {
  .header .header-nav .apply-step {
    position: absolute;
    bottom: -10%;
    left: -27%;
    font-family: "Caveat", cursive;
    color: #fbca41;
    text-align: center;
    transform: rotate(4deg);
  }
  .header .header-nav .apply-step {
    font-size: clamp(20px, 1.4641288433vw, 9999px);
    line-height: 0.75;
  }
}
@media screen and (max-width: 959px) and (max-width: 959px) {
  .header .header-nav .apply-step {
    font-size: clamp(1.25rem, 1.25rem + 0vw, 1.25rem);
  }
}
@media screen and (max-width: 959px) and (max-width: 479px) {
  .header .header-nav .apply-step {
    font-size: 20px;
    line-height: 0.75 !important;
  }
}
@media screen and (max-width: 959px) {
  .header .header-nav .apply-step {
    letter-spacing: 0.2em;
  }
}
@media screen and (max-width: 959px) and (max-width: 959px) {
  .header .header-nav .apply-step {
    letter-spacing: 0.2em;
  }
}
@media screen and (max-width: 959px) and (max-width: 479px) {
  .header .header-nav .apply-step {
    letter-spacing: 0.2em;
  }
}
@media screen and (max-width: 959px) {
  .header .header-nav .apply-step span img {
    width: 30px;
    height: auto;
    transform: rotate(180deg);
  }
}
.header .header-line {
  height: 86%;
  width: fit-content;
  margin: 0 0 0 auto;
  padding: 0 8%;
  border: 1px solid #fbca41;
  border-radius: 6px;
  background-color: #ffffff;
  display: flex;
  justify-content: center;
  align-items: center;
}
@media screen and (max-width: 1365px) {
  .header .header-line {
    flex-shrink: 0;
    white-space: nowrap;
    padding: 0 calc(1.317715959 * 1vw);
  }
}
@media screen and (max-width: 959px) {
  .header .header-line {
    position: fixed;
    height: auto;
    border: none;
    background-color: transparent;
    z-index: -1;
    right: -15px;
    bottom: -35px;
  }
}
.header .header-line a {
  display: flex;
  justify-content: center;
  align-items: center;
}
.header .header-line__image {
  height: 10%;
  margin-right: 8px;
}
.header .header-line__image img {
  height: 100%;
  width: auto;
}
.header .header-line__text {
  color: #06c755;
  font-weight: 700;
}
.header .header-line__text {
  letter-spacing: 0.1em;
}
@media screen and (max-width: 959px) {
  .header .header-line__text {
    letter-spacing: 0.1em;
  }
}
@media screen and (max-width: 479px) {
  .header .header-line__text {
    letter-spacing: 0.1em;
  }
}
.header .header-line__text {
  font-size: clamp(14px, 1.0248901903vw, 9999px);
  line-height: 1;
}
@media screen and (max-width: 959px) {
  .header .header-line__text {
    font-size: clamp(0.875rem, 0.875rem + 0vw, 0.875rem);
  }
}
@media screen and (max-width: 479px) {
  .header .header-line__text {
    font-size: 14px;
    line-height: 1 !important;
  }
}
@media screen and (max-width: 959px) {
  .header .header-line .apply-button {
    width: calc(37.3333333333 * 1vw);
    max-width: 140px;
  }
}
@media screen and (max-width: 959px) {
  .header .header-line .apply-button p {
    height: 0;
  }
  .header .header-line .apply-button p {
    font-size: clamp(12px, 0.878477306vw, 9999px);
    line-height: 1.5;
  }
}
@media screen and (max-width: 959px) and (max-width: 959px) {
  .header .header-line .apply-button p {
    font-size: clamp(0.75rem, 0.75rem + 0vw, 0.75rem);
  }
}
@media screen and (max-width: 959px) and (max-width: 479px) {
  .header .header-line .apply-button p {
    font-size: 12px;
    line-height: 1.5 !important;
  }
}
@media screen and (max-width: 959px) {
  .header .header-line .apply-button p::after {
    width: 24px;
    top: 0;
    right: 0;
    transform: rotate(0deg) translate(-150%, -100%);
  }
}
.header .header-line .apply-button__inner {
  padding-top: 5%;
}
@media screen and (max-width: 959px) {
  .header .header-line .apply-button__inner {
    padding: 0 0 5% 0;
  }
}

.footer {
  background-color: #2f5f98;
  color: #fff;
  position: relative;
}
.footer__page-top {
  transform: rotate(-90deg) translate(50%, 100%);
  position: absolute;
  right: 0;
  bottom: 0;
}
@media screen and (max-width: 959px) {
  .footer__page-top {
    transform: rotate(-90deg) translate(120%, 120%);
  }
}
@media screen and (max-width: 649px) {
  .footer__page-top {
    transform: rotate(-90deg) translate(140%, 160%);
  }
}
.footer__page-top p {
  font-family: "Caveat", cursive;
}
.footer__page-top p {
  font-size: clamp(19px, 1.3909224012vw, 9999px);
  line-height: 1;
}
@media screen and (max-width: 959px) {
  .footer__page-top p {
    font-size: clamp(0.9375rem, 0.8428985873rem + 0.4036326942vw, 1.1875rem);
  }
}
@media screen and (max-width: 479px) {
  .footer__page-top p {
    font-size: 15px;
    line-height: 1 !important;
  }
}
.footer__page-top p {
  letter-spacing: 0.2em;
}
@media screen and (max-width: 959px) {
  .footer__page-top p {
    letter-spacing: 0.2em;
  }
}
@media screen and (max-width: 479px) {
  .footer__page-top p {
    letter-spacing: 0.2em;
  }
}
.footer__page-top-inner {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: calc(1.317715959 * 1vw);
}
.footer__page-top-inner .circle-arrow {
  margin: 0;
  width: clamp(28px, 15vw, 3.1478770132 * 1vw);
}
.footer__page-top-inner .circle-arrow img {
  width: clamp(12px, 15vw, 1.0248901903 * 1vw);
}
@media screen and (max-width: 959px) {
  .footer__page-top-inner .circle-arrow img {
    min-width: 12px;
  }
}
.footer__inner {
  padding: 7.3206442167% 0 1.756954612%;
  max-width: 80.5270863836%;
  width: 100%;
  margin: 0 auto;
}
@media screen and (max-width: 959px) {
  .footer__inner {
    max-width: 92%;
    width: 100%;
    margin: 0 auto;
    padding: 7.4666666667% 0 4.2666666667%;
  }
}
@media screen and (max-width: 649px) {
  .footer__inner {
    padding: 14.9333333333% 0 4.2666666667%;
  }
}
.footer__top {
  display: flex;
  justify-content: space-between;
  align-items: top;
}
.footer__logo {
  color: #fff !important;
  font-family: "Montserrat", sans-serif;
  font-weight: 700;
  color: #2f5f98;
}
.footer__logo {
  font-size: clamp(42px, 3.074670571vw, 9999px);
  line-height: 1;
}
@media screen and (max-width: 959px) {
  .footer__logo {
    font-size: clamp(2.0625rem, 1.8496468214rem + 0.9081735621vw, 2.625rem);
  }
}
@media screen and (max-width: 479px) {
  .footer__logo {
    font-size: 33px;
    line-height: 1 !important;
  }
}
.footer__logo {
  letter-spacing: -0.037em;
}
@media screen and (max-width: 959px) {
  .footer__logo {
    letter-spacing: -0.037em;
  }
}
@media screen and (max-width: 479px) {
  .footer__logo {
    letter-spacing: -0.037em;
  }
}
.footer__logo span {
  color: #fbca41;
}
@media screen and (max-width: 959px) {
  .footer .footer-icon {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-top: 16px;
  }
}
.footer .footer-icon__instagram {
  width: 1.46vw;
  min-width: 20px;
  margin-bottom: 1.1vw;
}
@media screen and (max-width: 959px) {
  .footer .footer-icon__instagram {
    margin-bottom: 0;
  }
}
.footer .footer-icon__instagram img {
  width: 100%;
  height: auto;
}
.footer .footer-icon__line {
  width: 1.46vw;
  min-width: 20px;
}
.footer .footer-icon__line img {
  width: 100%;
  height: auto;
}
.footer__box {
  width: 92.0909090909%;
  margin: 2.9090909091% auto 0;
  display: flex;
  justify-content: space-between;
  align-items: stretch;
}
@media screen and (max-width: 1099px) {
  .footer__box {
    width: 100%;
  }
}
@media screen and (max-width: 959px) {
  .footer__box {
    flex-wrap: wrap;
    row-gap: clamp(20px, 2vw, 1.4641288433 * 1vw);
  }
}
@media screen and (max-width: 959px) {
  .footer .footer-nav {
    width: 46.3768115942%;
  }
}
.footer .footer-nav__title {
  font-weight: 700;
  width: 100%;
  padding-left: clamp(9px, 2vw, 0.7320644217 * 1vw);
  padding-bottom: clamp(8px, 2vw, 0.7320644217 * 1vw);
}
.footer .footer-nav__title {
  font-size: clamp(16px, 1.1713030747vw, 9999px);
  line-height: 1;
}
@media screen and (max-width: 959px) {
  .footer .footer-nav__title {
    font-size: clamp(0.8125rem, 0.7415489405rem + 0.3027245207vw, 1rem);
  }
}
@media screen and (max-width: 479px) {
  .footer .footer-nav__title {
    font-size: 13px;
    line-height: 1 !important;
  }
}
.footer .footer-nav__title {
  letter-spacing: 0.08em;
}
@media screen and (max-width: 959px) {
  .footer .footer-nav__title {
    letter-spacing: 0.08em;
  }
}
@media screen and (max-width: 479px) {
  .footer .footer-nav__title {
    letter-spacing: 0.08em;
  }
}
.footer .footer-nav__title span {
  text-wrap: nowrap;
  margin-left: clamp(-9px, 2vw, -0.7320644217 * 1vw);
  transform: translateY(-100%);
  color: #fbca41;
  font-family: "Caveat", cursive;
  font-weight: 400;
}
.footer .footer-nav__title span {
  font-size: clamp(24px, 1.756954612vw, 9999px);
  line-height: 1.25;
}
@media screen and (max-width: 959px) {
  .footer .footer-nav__title span {
    font-size: clamp(1rem, 0.8107971746rem + 0.8072653885vw, 1.5rem);
  }
}
@media screen and (max-width: 479px) {
  .footer .footer-nav__title span {
    font-size: 16px;
    line-height: 1.375 !important;
  }
}
.footer .footer-nav__title span {
  letter-spacing: 0.2em;
}
@media screen and (max-width: 959px) {
  .footer .footer-nav__title span {
    letter-spacing: 0.2em;
  }
}
@media screen and (max-width: 479px) {
  .footer .footer-nav__title span {
    letter-spacing: 0.2em;
  }
}
.footer .footer-nav__item {
  padding: clamp(8px, 2vw, 0.878477306 * 1vw) 10px 0;
  border-top: solid 1px #fff;
}
.footer .footer-nav__item li {
  padding-bottom: clamp(6px, 2vw, 1.0248901903 * 1vw);
}
.footer .footer-nav__item li:last-child {
  padding-bottom: 0;
}
.footer .footer-nav__item a {
  display: flex;
  justify-content: left;
  align-items: center;
  position: relative;
  font-weight: 500;
}
.footer .footer-nav__item a {
  font-size: clamp(14px, 1.0248901903vw, 9999px);
  line-height: 1.3928571429;
}
@media screen and (max-width: 959px) {
  .footer .footer-nav__item a {
    font-size: clamp(0.75rem, 0.7026992936rem + 0.2018163471vw, 0.875rem);
  }
}
@media screen and (max-width: 479px) {
  .footer .footer-nav__item a {
    font-size: 12px;
    line-height: 1.625 !important;
  }
}
.footer .footer-nav__item a {
  letter-spacing: 0.05em;
}
@media screen and (max-width: 959px) {
  .footer .footer-nav__item a {
    letter-spacing: 0.05em;
  }
}
@media screen and (max-width: 479px) {
  .footer .footer-nav__item a {
    letter-spacing: 0.05em;
  }
}
.footer .footer-nav__item a span {
  display: inline-block;
  width: 10px;
  height: 2px;
  background-color: #fbca41;
  margin-right: 8px;
}
.footer .footer-nav__box {
  display: flex;
  margin-bottom: clamp(8px, 2vw, 1.756954612 * 1vw);
}
@media screen and (max-width: 1099px) {
  .footer .footer-nav__box {
    display: block;
  }
}
.footer .footer-nav__box:last-child {
  margin-bottom: 0;
}
.footer .footer-nav__box p {
  display: block;
  width: calc(6.588579795 * 1vw);
  font-weight: 500;
}
.footer .footer-nav__box p {
  font-size: clamp(14px, 1.0248901903vw, 9999px);
  line-height: 1.5;
}
@media screen and (max-width: 959px) {
  .footer .footer-nav__box p {
    font-size: clamp(0.8125rem, 0.7888496468rem + 0.1009081736vw, 0.875rem);
  }
}
@media screen and (max-width: 479px) {
  .footer .footer-nav__box p {
    font-size: 13px;
    line-height: 1.5384615385 !important;
  }
}
.footer .footer-nav__box p {
  letter-spacing: 0.05em;
}
@media screen and (max-width: 959px) {
  .footer .footer-nav__box p {
    letter-spacing: 0.05em;
  }
}
@media screen and (max-width: 479px) {
  .footer .footer-nav__box p {
    letter-spacing: 0.05em;
  }
}
@media screen and (max-width: 1099px) {
  .footer .footer-nav__box p {
    margin-bottom: clamp(4px, 2vw, 0.2928257687 * 1vw);
    width: 100%;
  }
}
.footer .footer-nav__link-item {
  display: flex;
  gap: calc(1.1713030747 * 1vw);
  font-weight: 700;
  margin-top: calc(-1.0248901903 * 1vw);
}
.footer .footer-nav__link-item {
  font-size: clamp(14px, 1.0248901903vw, 9999px);
  line-height: 1.5714285714;
}
@media screen and (max-width: 959px) {
  .footer .footer-nav__link-item {
    font-size: clamp(0.8125rem, 0.7888496468rem + 0.1009081736vw, 0.875rem);
  }
}
@media screen and (max-width: 479px) {
  .footer .footer-nav__link-item {
    font-size: 13px;
    line-height: 1.6923076923 !important;
  }
}
.footer .footer-nav__link-item {
  letter-spacing: 0.08em;
}
@media screen and (max-width: 959px) {
  .footer .footer-nav__link-item {
    letter-spacing: 0.08em;
  }
}
@media screen and (max-width: 479px) {
  .footer .footer-nav__link-item {
    letter-spacing: 0.08em;
  }
}
@media screen and (max-width: 959px) {
  .footer .footer-nav__link-item {
    display: block;
    margin-top: 19px;
    row-gap: calc(0.5856515373 * 1vw);
    column-gap: 0;
  }
}
.footer .copyright {
  margin-top: clamp(40px, 2vw, 3.4407027818 * 1vw);
  font-weight: 700;
}
.footer .copyright {
  font-size: clamp(12px, 0.878477306vw, 9999px);
  line-height: 1;
}
@media screen and (max-width: 959px) {
  .footer .copyright {
    font-size: clamp(0.625rem, 0.5776992936rem + 0.2018163471vw, 0.75rem);
  }
}
@media screen and (max-width: 479px) {
  .footer .copyright {
    font-size: 10px;
    line-height: 1 !important;
  }
}
.footer .copyright {
  letter-spacing: 0.05em;
}
@media screen and (max-width: 959px) {
  .footer .copyright {
    letter-spacing: 0.05em;
  }
}
@media screen and (max-width: 479px) {
  .footer .copyright {
    letter-spacing: 0.05em;
  }
}

.archive-search__filter-item span {
  margin-left: calc(0.5856515373 * 1vw);
}
.archive-search__filter-item .category {
  margin-right: calc(0.2928257687 * 1vw);
  padding: calc(0.1464128843 * 1vw) calc(1.1713030747 * 1vw) calc(0.1464128843 * 1vw) calc(0.5856515373 * 1vw);
  font-weight: 500;
}
.archive-search__filter-item .category {
  font-size: clamp(14px, 1.0248901903vw, 9999px);
  line-height: 1.5714285714;
}
@media screen and (max-width: 959px) {
  .archive-search__filter-item .category {
    font-size: clamp(0.875rem, 0.875rem + 0vw, 0.875rem);
  }
}
@media screen and (max-width: 479px) {
  .archive-search__filter-item .category {
    font-size: 14px;
    line-height: 1.5714285714 !important;
  }
}
.archive-search__filter-item .category {
  letter-spacing: 0.05em;
}
@media screen and (max-width: 959px) {
  .archive-search__filter-item .category {
    letter-spacing: 0.05em;
  }
}
@media screen and (max-width: 479px) {
  .archive-search__filter-item .category {
    letter-spacing: 0.05em;
  }
}
@media screen and (max-width: 959px) {
  .archive-search__filter-item .category {
    margin: 0 0 0 calc(-1.0666666667 * 1vw);
    padding: calc(0.2666666667 * 1vw) calc(3.2 * 1vw) calc(0.2666666667 * 1vw) calc(1.6 * 1vw);
  }
}
.archive-search__filter-item .category::after {
  background: #fff9d4;
}
.archive-search__filter-item .tag {
  margin-right: calc(0.2928257687 * 1vw);
}
@media screen and (max-width: 959px) {
  .archive-search__filter-item .tag {
    margin-right: 0;
  }
}

.experience-card a:hover {
  opacity: 1;
}
.experience-card a:hover .experience-card__image img {
  transform: scale(1.1);
  transition: transform 0.5s ease;
}

.archive-single__pickup a:hover {
  opacity: 1;
}
.archive-single__pickup a:hover .pickup__img img {
  transform: scale(1.1);
  transition: transform 0.5s ease;
}

.pickup__text {
  width: 100%;
}