@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&display=swap");
.u-en {
  font-family: "europa", sans-serif;
}

/*** The new CSS reset - version 1.5.1 (last updated 1.3.2022) ***/
body {
  margin: 0;
  padding: 0;
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

a,
button {
  cursor: revert;
  color: inherit;
}

h1, h2, h3, h4, h5, h6, p {
  margin: 0;
}

ol,
ul,
menu {
  list-style: none;
  padding: 0;
  margin: 0;
}

img {
  max-width: 100%;
  width: 100%;
  height: auto;
}

table {
  border-collapse: collapse;
}

textarea {
  white-space: revert;
}

meter {
  -webkit-appearance: revert;
  appearance: revert;
}

::placeholder {
  color: unset;
}

:where([hidden]) {
  display: none;
}

:where([contenteditable]) {
  -moz-user-modify: read-write;
  -webkit-user-modify: read-write;
  overflow-wrap: break-word;
  -webkit-line-break: after-white-space;
}

:where([draggable=true]) {
  -webkit-user-drag: element;
}

/*------------------------------

  開発環境の初期化

------------------------------*/
html {
  scroll-behavior: smooth;
}
html:has(.l-sidebar) {
  overflow-x: unset;
}

body {
  font-family: "Noto Sans JP", sans-serif;
  color: #333333;
}
@media screen and (min-width: 768px) {
  body {
    margin-top: min(100px, 7.8125vw);
  }
}
@media screen and (max-width: 767px) {
  body {
    margin-top: 13.3333333333vw;
  }
}
body:has(.l-sidebar) {
  overflow-x: unset;
}
body a {
  text-decoration: none;
  transition: all 0.3s;
}

.l-inner {
  margin: 0 auto;
  position: relative;
  z-index: 3;
}
@media screen and (min-width: 768px) {
  .l-inner {
    width: min(1200px, 93.75vw);
  }
}
@media screen and (max-width: 767px) {
  .l-inner {
    width: 92vw;
  }
}

.l-header {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 10000001;
  background-color: #fff;
  width: 100vw;
}
@media screen and (min-width: 768px) {
  .l-header {
    height: min(100px, 7.8125vw);
  }
}
@media screen and (max-width: 767px) {
  .l-header {
    height: 13.3333333333vw;
  }
}
.l-header__inner {
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .l-header__inner {
    max-width: 1200px;
  }
}
@media screen and (max-width: 1200px) and (min-width: 768px) {
  .l-header__inner {
    padding-left: min(30px, 2.34375vw);
  }
}
@media screen and (max-width: 767px) {
  .l-header__inner {
    padding-left: 4vw;
  }
}
.l-header__logo {
  display: flex;
}
@media screen and (min-width: 768px) {
  .l-header__logo {
    width: min(332px, 25.9375vw);
  }
}
@media screen and (max-width: 767px) {
  .l-header__logo {
    width: 44.2666666667vw;
  }
}
@media screen and (max-width: 767px) {
  .l-header__navwrap {
    position: fixed;
    top: 13.3333333333vw;
    right: -120%;
    height: calc(100vh - 13.3333333333vw);
    width: 100vw;
    background-color: #fff;
    padding: 4vw;
    transition: all 0.6s;
  }
  .l-header__navwrap.is-panelactive {
    right: 0;
  }
}
.l-header__nav {
  display: flex;
}
@media screen and (min-width: 768px) {
  .l-header__nav {
    align-items: center;
    column-gap: min(50px, 3.90625vw);
  }
}
@media screen and (max-width: 767px) {
  .l-header__nav {
    flex-direction: column;
    row-gap: 8vw;
  }
}
.l-header__nav-list {
  display: flex;
}
@media screen and (min-width: 768px) {
  .l-header__nav-list {
    column-gap: min(50px, 3.90625vw);
  }
}
@media screen and (max-width: 767px) {
  .l-header__nav-list {
    flex-direction: column;
  }
}
.l-header__nav-list li {
  display: flex;
}
@media screen and (max-width: 767px) {
  .l-header__nav-list li {
    width: 100%;
    border-bottom: 1px solid #284F78;
  }
}
@media screen and (min-width: 768px) {
  .l-header__nav-list a {
    font-size: clamp(9px, 1.40625vw, 18px);
    line-height: 1;
    letter-spacing: 0em;
    font-weight: 700;
  }
}
@media screen and (max-width: 767px) {
  .l-header__nav-list a {
    font-size: calc(30 / 750 * 100vw);
    line-height: 1;
    letter-spacing: 0em;
    font-weight: 700;
  }
}
@media screen and (max-width: 767px) {
  .l-header__nav-list a {
    width: 100%;
    text-align: center;
    padding: 4vw;
  }
}
.l-header__nav-contact {
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #284F78;
  border: 1px solid #284F78;
  color: #fff;
}
@media screen and (min-width: 768px) {
  .l-header__nav-contact {
    font-size: clamp(9px, 1.40625vw, 18px);
    line-height: 1;
    letter-spacing: 0em;
    font-weight: 500;
  }
}
@media screen and (max-width: 767px) {
  .l-header__nav-contact {
    font-size: calc(30 / 750 * 100vw);
    line-height: 1;
    letter-spacing: 0em;
    font-weight: 500;
  }
}
@media screen and (min-width: 768px) {
  .l-header__nav-contact {
    width: min(240px, 18.75vw);
    height: min(100px, 7.8125vw);
  }
  .l-header__nav-contact:hover {
    background-color: #fff;
    color: #284F78;
  }
}
@media screen and (max-width: 767px) {
  .l-header__nav-contact {
    width: 100%;
    height: 13.3333333333vw;
  }
}
@media screen and (max-width: 767px) {
  .l-header__openbtn {
    position: relative;
    background-color: #284F78;
    width: 13.3333333333vw;
    height: 13.3333333333vw;
  }
}
.l-header__openbtn.is-active span:first-of-type {
  transform: rotate(45deg);
  top: 6vw;
}
.l-header__openbtn.is-active span:nth-of-type(2) {
  opacity: 0;
}
.l-header__openbtn.is-active span:last-of-type {
  bottom: auto;
  top: 6vw;
  transform: rotate(-45deg);
}
.l-header__openbtn span {
  position: absolute;
  left: 50%;
  width: 8vw;
  left: 2.6666666667vw;
  height: 1px;
  background-color: #fff;
  transition: all 0.6s;
}
.l-header__openbtn span:first-of-type {
  top: 4vw;
}
.l-header__openbtn span:nth-of-type(2) {
  top: 50%;
  transform: translateY(-50%);
}
.l-header__openbtn span:last-of-type {
  bottom: 4vw;
}

@media screen and (min-width: 768px) {
  .l-footer {
    padding: min(30px, 2.34375vw) 0;
  }
}
@media screen and (max-width: 767px) {
  .l-footer {
    padding: 6vw 0;
  }
}
.l-footer__inner {
  display: flex;
}
@media screen and (min-width: 768px) {
  .l-footer__inner {
    align-items: center;
    justify-content: space-between;
  }
}
@media screen and (max-width: 767px) {
  .l-footer__inner {
    position: relative;
    flex-direction: column;
    row-gap: 6.4vw;
  }
}
.l-footer__left {
  display: flex;
  align-items: center;
}
@media screen and (min-width: 768px) {
  .l-footer__left {
    column-gap: min(50px, 3.90625vw);
  }
}
@media screen and (max-width: 767px) {
  .l-footer__left {
    flex-direction: column;
  }
}
@media screen and (min-width: 768px) {
  .l-footer__logo {
    width: min(234px, 18.28125vw);
  }
}
@media screen and (max-width: 767px) {
  .l-footer__logo {
    width: 44.2666666667vw;
  }
}
.l-footer__copy {
  color: #9D9D9D;
}
@media screen and (min-width: 768px) {
  .l-footer__copy {
    font-size: clamp(7px, 1.09375vw, 14px);
    line-height: 1.2857142857;
    letter-spacing: 0em;
    font-weight: 300;
  }
}
@media screen and (max-width: 767px) {
  .l-footer__copy {
    font-size: calc(28 / 750 * 100vw);
    line-height: 1.2857142857;
    letter-spacing: 0em;
    font-weight: 300;
  }
}
.l-footer__right {
  display: flex;
}
@media screen and (min-width: 768px) {
  .l-footer__right {
    align-items: center;
    column-gap: min(95px, 7.421875vw);
  }
}
@media screen and (max-width: 767px) {
  .l-footer__right {
    flex-direction: column;
    width: 100%;
  }
}
.l-footer__list {
  display: flex;
}
@media screen and (min-width: 768px) {
  .l-footer__list {
    column-gap: min(50px, 3.90625vw);
  }
}
@media screen and (max-width: 767px) {
  .l-footer__list {
    flex-direction: column;
  }
}
.l-footer__list li {
  display: flex;
}
@media screen and (max-width: 767px) {
  .l-footer__list li {
    justify-content: center;
  }
}
@media screen and (min-width: 768px) {
  .l-footer__list li a {
    font-size: clamp(9px, 1.40625vw, 18px);
    line-height: 1;
    letter-spacing: 0em;
    font-weight: 700;
  }
}
@media screen and (max-width: 767px) {
  .l-footer__list li a {
    font-size: calc(30 / 750 * 100vw);
    line-height: 1;
    letter-spacing: 0em;
    font-weight: 700;
  }
}
@media screen and (max-width: 767px) {
  .l-footer__list li a {
    padding: 2.6666666667vw;
  }
}
.l-footer__totop {
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid #284F78;
  position: relative;
}
@media screen and (min-width: 768px) {
  .l-footer__totop {
    width: min(70px, 5.46875vw);
    height: min(70px, 5.46875vw);
  }
  .l-footer__totop:hover {
    background-color: #284F78;
  }
  .l-footer__totop:hover::after {
    background-image: url(../img/common/ic-arrow-totop-wh.png);
  }
}
@media screen and (max-width: 767px) {
  .l-footer__totop {
    width: 9.3333333333vw;
    height: 9.3333333333vw;
    margin-left: auto;
    margin-top: -2.6666666667vw;
  }
}
.l-footer__totop::after {
  position: absolute;
  content: "";
  display: block;
  background: center/contain no-repeat url(../img/common/ic-arrow-totop-bl.png);
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
@media screen and (min-width: 768px) {
  .l-footer__totop::after {
    width: min(18px, 1.40625vw);
    height: min(10.5px, 0.8203125vw);
  }
}
@media screen and (max-width: 767px) {
  .l-footer__totop::after {
    width: 2.4vw;
    height: 1.4vw;
  }
}

@media screen and (min-width: 768px) {
  .l-bread {
    padding: min(30px, 2.34375vw) 0;
  }
}
@media screen and (max-width: 767px) {
  .l-bread {
    padding: 6vw 0;
  }
}
.l-bread__list-item {
  display: inline;
  color: #959595;
}
@media screen and (min-width: 768px) {
  .l-bread__list-item {
    font-size: clamp(7px, 1.09375vw, 14px);
    line-height: 1.5;
    letter-spacing: 0em;
    font-weight: 400;
  }
}
@media screen and (max-width: 767px) {
  .l-bread__list-item {
    font-size: calc(24 / 750 * 100vw);
    line-height: 1.5;
    letter-spacing: 0em;
    font-weight: 400;
  }
}

.l-wrap {
  display: flex;
}
@media screen and (min-width: 768px) {
  .l-wrap {
    justify-content: space-between;
    align-items: flex-start;
    margin: 0 auto min(120px, 9.375vw);
    max-width: min(1200px, 93.75vw);
  }
}
@media screen and (max-width: 767px) {
  .l-wrap {
    flex-direction: column;
    row-gap: 10.6666666667vw;
    margin-bottom: 16vw;
  }
}

.l-main {
  box-shadow: 0 4px 20px 0 rgba(71, 102, 211, 0.2);
  background-color: #fff;
}
@media screen and (min-width: 768px) {
  .l-main {
    width: min(735px, 57.421875vw);
    border-radius: min(8px, 0.625vw);
  }
}
@media screen and (max-width: 767px) {
  .l-main {
    width: 100vw;
  }
}

.l-sidebar {
  box-shadow: 0 4px 20px 0 rgba(71, 102, 211, 0.2);
  background-color: #fff;
}
@media screen and (min-width: 768px) {
  .l-sidebar {
    position: sticky;
    top: min(120px, 9.375vw);
    width: min(400px, 31.25vw);
    border-radius: min(8px, 0.625vw);
    padding: min(30px, 2.34375vw);
  }
}
@media screen and (max-width: 767px) {
  .l-sidebar {
    padding: 8vw 4vw;
    width: 100vw;
  }
}
.l-sidebar__searchform {
  display: flex;
  position: relative;
}
@media screen and (min-width: 768px) {
  .l-sidebar__searchform {
    margin-bottom: min(30px, 2.34375vw);
  }
}
@media screen and (max-width: 767px) {
  .l-sidebar__searchform {
    margin-bottom: 8vw;
  }
}
.l-sidebar__searchform input {
  width: 100%;
  border: 1px solid #959595;
}
@media screen and (min-width: 768px) {
  .l-sidebar__searchform input {
    font-size: clamp(7px, 1.09375vw, 14px);
    line-height: 1.5;
    letter-spacing: 0em;
    font-weight: 400;
  }
}
@media screen and (max-width: 767px) {
  .l-sidebar__searchform input {
    font-size: calc(26 / 750 * 100vw);
    line-height: 1.5;
    letter-spacing: 0em;
    font-weight: 400;
  }
}
@media screen and (min-width: 768px) {
  .l-sidebar__searchform input {
    height: min(40px, 3.125vw);
    padding: 0 min(10px, 0.78125vw);
  }
}
@media screen and (max-width: 767px) {
  .l-sidebar__searchform input {
    height: 10vw;
    padding: 0 2.4vw;
  }
}
.l-sidebar__searchform ::placeholder {
  color: #959595;
}
.l-sidebar__searchform button {
  position: absolute;
  z-index: 1;
  right: 0;
  top: 0;
  background-color: transparent;
  border: none;
  cursor: pointer;
}
@media screen and (min-width: 768px) {
  .l-sidebar__searchform button {
    width: min(40px, 3.125vw);
    height: min(40px, 3.125vw);
  }
}
@media screen and (max-width: 767px) {
  .l-sidebar__searchform button {
    width: 10vw;
    height: 10vw;
  }
}
.l-sidebar__searchform button::after {
  position: absolute;
  content: "";
  display: block;
  background: center/contain no-repeat url(../img/common/ic-search.png);
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 50%;
  height: 50%;
  z-index: 1;
}
@media screen and (min-width: 768px) {
  .l-sidebar__item {
    margin-bottom: min(30px, 2.34375vw);
  }
}
@media screen and (max-width: 767px) {
  .l-sidebar__item {
    margin-bottom: 8vw;
  }
}
@media screen and (min-width: 768px) {
  .l-sidebar__item-category > .cat-item:not(:last-of-type) {
    margin-bottom: min(12px, 0.9375vw);
  }
}
@media screen and (max-width: 767px) {
  .l-sidebar__item-category > .cat-item:not(:last-of-type) {
    margin-bottom: 2.6666666667vw;
  }
}
.l-sidebar__item-category > .cat-item > a {
  position: relative;
  display: inline-block;
}
@media screen and (min-width: 768px) {
  .l-sidebar__item-category > .cat-item > a {
    font-size: clamp(9px, 1.40625vw, 18px);
    line-height: 1.5;
    letter-spacing: 0em;
    font-weight: 700;
  }
}
@media screen and (max-width: 767px) {
  .l-sidebar__item-category > .cat-item > a {
    font-size: calc(32 / 750 * 100vw);
    line-height: 1.5;
    letter-spacing: 0em;
    font-weight: 700;
  }
}
@media screen and (min-width: 768px) {
  .l-sidebar__item-category > .cat-item > a {
    padding-left: min(15px, 1.171875vw);
  }
  .l-sidebar__item-category > .cat-item > a:hover {
    opacity: 0.7;
  }
}
@media screen and (max-width: 767px) {
  .l-sidebar__item-category > .cat-item > a {
    padding-left: 3.2vw;
  }
}
.l-sidebar__item-category > .cat-item > a::before {
  position: absolute;
  content: "";
  display: block;
  background: center/contain no-repeat url(../img/common/ic-arrow-right-bl.png);
  left: 0;
  top: 50%;
  transform: translateY(-50%);
}
@media screen and (min-width: 768px) {
  .l-sidebar__item-category > .cat-item > a::before {
    width: min(10.5px, 0.8203125vw);
    height: min(18px, 1.40625vw);
  }
}
@media screen and (max-width: 767px) {
  .l-sidebar__item-category > .cat-item > a::before {
    width: 2.1333333333vw;
    height: 3.7333333333vw;
  }
}
.l-sidebar__item-category .children {
  display: flex;
  flex-wrap: wrap;
}
@media screen and (min-width: 768px) {
  .l-sidebar__item-category .children {
    padding-left: min(15px, 1.171875vw);
    gap: min(8px, 0.625vw);
    margin-top: min(8px, 0.625vw);
  }
}
@media screen and (max-width: 767px) {
  .l-sidebar__item-category .children {
    padding-left: 3.2vw;
    gap: 2.1333333333vw;
    margin-top: 2.1333333333vw;
  }
}
.l-sidebar__item-category .children .cat-item a {
  background-color: #284F78;
  color: #fff;
  padding: 0.2em 0.8em;
  display: inline-block;
  border: 1px solid #284F78;
}
@media screen and (min-width: 768px) {
  .l-sidebar__item-category .children .cat-item a {
    font-size: clamp(7px, 1.09375vw, 14px);
    line-height: 1.5;
    letter-spacing: 0em;
    font-weight: 700;
  }
}
@media screen and (max-width: 767px) {
  .l-sidebar__item-category .children .cat-item a {
    font-size: calc(26 / 750 * 100vw);
    line-height: 1.5;
    letter-spacing: 0em;
    font-weight: 700;
  }
}
@media screen and (min-width: 768px) {
  .l-sidebar__item-category .children .cat-item a:hover {
    background-color: #fff;
    color: #284F78;
  }
}
.l-sidebar__item-taglist {
  display: flex;
  flex-wrap: wrap;
}
@media screen and (min-width: 768px) {
  .l-sidebar__item-taglist {
    gap: min(8px, 0.625vw);
  }
}
@media screen and (max-width: 767px) {
  .l-sidebar__item-taglist {
    gap: 2.1333333333vw;
  }
}
.l-sidebar__item-taglist a {
  color: #959595;
}
@media screen and (min-width: 768px) {
  .l-sidebar__item-taglist a {
    font-size: clamp(7px, 1.09375vw, 14px);
    line-height: 1.5;
    letter-spacing: 0em;
    font-weight: 700;
  }
}
@media screen and (max-width: 767px) {
  .l-sidebar__item-taglist a {
    font-size: calc(26 / 750 * 100vw);
    line-height: 1.5;
    letter-spacing: 0em;
    font-weight: 700;
  }
}
@media screen and (min-width: 768px) {
  .l-sidebar__item-taglist a:hover {
    opacity: 0.7;
  }
}
.l-sidebar__item-title {
  border-left: 3px solid #284F78;
}
@media screen and (min-width: 768px) {
  .l-sidebar__item-title {
    font-size: clamp(11px, 1.71875vw, 22px);
    line-height: 1.5;
    letter-spacing: 0em;
    font-weight: 700;
  }
}
@media screen and (max-width: 767px) {
  .l-sidebar__item-title {
    font-size: calc(40 / 750 * 100vw);
    line-height: 1.5;
    letter-spacing: 0em;
    font-weight: 700;
  }
}
@media screen and (min-width: 768px) {
  .l-sidebar__item-title {
    padding-left: min(10px, 0.78125vw);
    margin-bottom: min(20px, 1.5625vw);
  }
}
@media screen and (max-width: 767px) {
  .l-sidebar__item-title {
    padding-left: 2.4vw;
    margin-bottom: 4.8vw;
  }
}
.l-sidebar__item-list.ranking .l-sidebar__item-item {
  counter-increment: ranking;
}
.l-sidebar__item-list.ranking .l-sidebar__item-item::before {
  position: absolute;
  content: counter(ranking);
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: "europa", sans-serif;
  color: #fff;
  background-color: #284F78;
}
@media screen and (min-width: 768px) {
  .l-sidebar__item-list.ranking .l-sidebar__item-item::before {
    font-size: clamp(6px, 0.9375vw, 12px);
    line-height: 1;
    letter-spacing: 0em;
    font-weight: 700;
  }
}
@media screen and (max-width: 767px) {
  .l-sidebar__item-list.ranking .l-sidebar__item-item::before {
    font-size: calc(24 / 750 * 100vw);
    line-height: 1;
    letter-spacing: 0em;
    font-weight: 700;
  }
}
@media screen and (min-width: 768px) {
  .l-sidebar__item-list.ranking .l-sidebar__item-item::before {
    width: min(24px, 1.875vw);
    height: min(24px, 1.875vw);
  }
}
@media screen and (max-width: 767px) {
  .l-sidebar__item-list.ranking .l-sidebar__item-item::before {
    width: 6.4vw;
    height: 6.4vw;
  }
}
.l-sidebar__item-list.ranking .l-sidebar__item-item:first-of-type::before {
  background-color: #FFD700;
}
.l-sidebar__item-list.ranking .l-sidebar__item-item:nth-of-type(2)::before {
  background-color: #C0C0C0;
}
.l-sidebar__item-list.ranking .l-sidebar__item-item:nth-of-type(3)::before {
  background-color: #CD7F32;
}
.l-sidebar__item-item {
  position: relative;
  transition: all 0.3s;
}
@media screen and (min-width: 768px) {
  .l-sidebar__item-item:hover {
    opacity: 0.7;
  }
}
@media screen and (min-width: 768px) {
  .l-sidebar__item-item:not(:last-of-type) {
    margin-bottom: min(20px, 1.5625vw);
  }
}
@media screen and (max-width: 767px) {
  .l-sidebar__item-item:not(:last-of-type) {
    margin-bottom: 4.8vw;
  }
}
.l-sidebar__item-item a {
  display: flex;
  align-items: center;
}
@media screen and (min-width: 768px) {
  .l-sidebar__item-item a {
    column-gap: min(10px, 0.78125vw);
  }
}
@media screen and (max-width: 767px) {
  .l-sidebar__item-item a {
    column-gap: 2.4vw;
  }
}
@media screen and (min-width: 768px) {
  .l-sidebar__item-item a img {
    width: min(100px, 7.8125vw);
  }
}
@media screen and (max-width: 767px) {
  .l-sidebar__item-item a img {
    width: 26.6666666667vw;
  }
}
.l-sidebar__item-item a .c-text-s {
  font-weight: 700;
  flex: 1;
}
@media screen and (min-width: 768px) {
  .l-sidebar .c-button {
    width: min(340px, 26.5625vw);
    height: min(80px, 6.25vw);
  }
}

@media screen and (min-width: 768px) {
  .c-hover:hover {
    opacity: 0.7;
  }
}

.c-button {
  display: flex;
  align-items: center;
  position: relative;
}
@media screen and (min-width: 768px) {
  .c-button {
    font-size: clamp(10px, 1.5625vw, 20px);
    line-height: 1;
    letter-spacing: 0em;
    font-weight: 700;
  }
}
@media screen and (max-width: 767px) {
  .c-button {
    font-size: calc(32 / 750 * 100vw);
    line-height: 1;
    letter-spacing: 0em;
    font-weight: 700;
  }
}
@media screen and (min-width: 768px) {
  .c-button {
    width: min(600px, 46.875vw);
    height: min(120px, 9.375vw);
    padding-left: min(50px, 3.90625vw);
  }
}
@media screen and (max-width: 767px) {
  .c-button {
    width: 92vw;
    height: 16vw;
    padding-left: 6.6666666667vw;
  }
}
.c-button::after {
  position: absolute;
  content: "";
  display: block;
  background-repeat: no-repeat;
  background-size: contain;
  top: 50%;
  transform: translateY(-50%);
}
@media screen and (min-width: 768px) {
  .c-button::after {
    width: min(52px, 4.0625vw);
    height: min(10px, 0.78125vw);
    right: min(40px, 3.125vw);
  }
}
@media screen and (max-width: 767px) {
  .c-button::after {
    width: 6.9333333333vw;
    height: 1.3333333333vw;
    right: 5.3333333333vw;
  }
}
.c-button--wh {
  background-color: #fff;
  border: 1px solid #284F78;
  color: #284F78;
}
.c-button--wh::after {
  background-image: url(../img/common/ic-arrow-bl.png);
}
@media screen and (min-width: 768px) {
  .c-button--wh:hover {
    background-color: #284F78;
    color: #fff;
    border: 1px solid #fff;
  }
  .c-button--wh:hover::after {
    background-image: url(../img/common/ic-arrow-wh.png);
  }
}
.c-button--bl {
  background-color: #284F78;
  color: #fff;
  border: 1px solid #fff;
}
@media screen and (min-width: 768px) {
  .c-button--bl:hover {
    background-color: #fff;
    border: 1px solid #284F78;
    color: #284F78;
  }
  .c-button--bl:hover::after {
    background-image: url(../img/common/ic-arrow-bl.png);
  }
}
.c-button--bl::after {
  background-image: url(../img/common/ic-arrow-wh.png);
}

.c-more-button {
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #fff;
  border: 1px solid #284F78;
  color: #284F78;
  font-family: "europa", sans-serif;
}
@media screen and (min-width: 768px) {
  .c-more-button {
    font-size: clamp(10px, 1.5625vw, 20px);
    line-height: 1;
    letter-spacing: 0em;
    font-weight: 700;
  }
}
@media screen and (max-width: 767px) {
  .c-more-button {
    font-size: calc(30 / 750 * 100vw);
    line-height: 1;
    letter-spacing: 0em;
    font-weight: 700;
  }
}
@media screen and (min-width: 768px) {
  .c-more-button {
    width: min(230px, 17.96875vw);
    height: min(60px, 4.6875vw);
  }
  .c-more-button:hover {
    background-color: #284F78;
    color: #fff;
  }
}
@media screen and (max-width: 767px) {
  .c-more-button {
    width: 46vw;
    height: 12vw;
  }
}

@media screen and (min-width: 768px) {
  .c-title-wrap {
    padding: min(100px, 7.8125vw) 0;
  }
}
@media screen and (max-width: 767px) {
  .c-title-wrap {
    padding: 16vw 0;
  }
}
.c-title-en {
  display: block;
  font-family: "europa", sans-serif;
  color: #284F78;
}
@media screen and (min-width: 768px) {
  .c-title-en {
    font-size: clamp(50px, 7.8125vw, 100px);
    line-height: 1;
    letter-spacing: 0em;
    font-weight: 700;
  }
}
@media screen and (max-width: 767px) {
  .c-title-en {
    font-size: calc(150 / 750 * 100vw);
    line-height: 1;
    letter-spacing: 0em;
    font-weight: 700;
  }
}
.c-title-jp {
  color: #959595;
  display: block;
}
@media screen and (min-width: 768px) {
  .c-title-jp {
    font-size: clamp(10px, 1.5625vw, 20px);
    line-height: 1.5;
    letter-spacing: 0em;
    font-weight: 700;
  }
}
@media screen and (max-width: 767px) {
  .c-title-jp {
    font-size: calc(30 / 750 * 100vw);
    line-height: 1.5;
    letter-spacing: 0em;
    font-weight: 700;
  }
}
@media screen and (min-width: 768px) {
  .c-title-jp {
    margin-top: min(16px, 1.25vw);
  }
}
@media screen and (max-width: 767px) {
  .c-title-jp {
    margin-top: 2.4vw;
  }
}

@media screen and (min-width: 768px) {
  .c-title02 {
    font-size: clamp(25px, 3.90625vw, 50px);
    line-height: 1.5;
    letter-spacing: 0em;
    font-weight: 700;
  }
}
@media screen and (max-width: 767px) {
  .c-title02 {
    font-size: calc(50 / 750 * 100vw);
    line-height: 1.5;
    letter-spacing: 0em;
    font-weight: 700;
  }
}

.c-title03 {
  position: relative;
}
@media screen and (min-width: 768px) {
  .c-title03 {
    font-size: clamp(20px, 3.125vw, 40px);
    line-height: 1.5;
    letter-spacing: 0em;
    font-weight: 700;
  }
}
@media screen and (max-width: 767px) {
  .c-title03 {
    font-size: calc(40 / 750 * 100vw);
    line-height: 1.5;
    letter-spacing: 0em;
    font-weight: 700;
  }
}
@media screen and (min-width: 768px) {
  .c-title03 {
    padding-left: min(140px, 10.9375vw);
  }
}
@media screen and (max-width: 767px) {
  .c-title03 {
    padding-left: 18.6666666667vw;
  }
}
.c-title03::before, .c-title03::after {
  position: absolute;
  content: "";
  display: block;
  top: 50%;
  transform: translateY(-50%);
  background-color: #284F78;
}
.c-title03::before {
  left: 0;
}
@media screen and (min-width: 768px) {
  .c-title03::before {
    width: min(10px, 0.78125vw);
    height: min(10px, 0.78125vw);
  }
}
@media screen and (max-width: 767px) {
  .c-title03::before {
    width: 1.3333333333vw;
    height: 1.3333333333vw;
  }
}
.c-title03::after {
  height: 1px;
}
@media screen and (min-width: 768px) {
  .c-title03::after {
    width: min(100px, 7.8125vw);
    left: min(10.5px, 0.8203125vw);
  }
}
@media screen and (max-width: 767px) {
  .c-title03::after {
    width: 13.3333333333vw;
    left: 1.4vw;
  }
}

@media screen and (min-width: 768px) {
  .c-text-l {
    font-size: clamp(9px, 1.40625vw, 18px);
    line-height: 2.2222222222;
    letter-spacing: 0em;
    font-weight: 400;
  }
}
@media screen and (max-width: 767px) {
  .c-text-l {
    font-size: calc(31.5 / 750 * 100vw);
    line-height: 2.2222222222;
    letter-spacing: 0em;
    font-weight: 400;
  }
}

@media screen and (min-width: 768px) {
  .c-text-m {
    font-size: clamp(8px, 1.25vw, 16px);
    line-height: 1.875;
    letter-spacing: 0em;
    font-weight: 400;
  }
}
@media screen and (max-width: 767px) {
  .c-text-m {
    font-size: calc(28 / 750 * 100vw);
    line-height: 1.875;
    letter-spacing: 0em;
    font-weight: 400;
  }
}

@media screen and (min-width: 768px) {
  .c-text-s {
    font-size: clamp(7px, 1.09375vw, 14px);
    line-height: 1.5;
    letter-spacing: 0em;
    font-weight: 400;
  }
}
@media screen and (max-width: 767px) {
  .c-text-s {
    font-size: calc(24.5 / 750 * 100vw);
    line-height: 1.5;
    letter-spacing: 0em;
    font-weight: 400;
  }
}

.c-text-note {
  text-indent: -1em;
  padding-left: 1em;
  color: #959595;
}
@media screen and (min-width: 768px) {
  .c-text-note {
    font-size: clamp(7px, 1.09375vw, 14px);
    line-height: 1.75;
    letter-spacing: 0em;
    font-weight: 400;
  }
}
@media screen and (max-width: 767px) {
  .c-text-note {
    font-size: calc(24.5 / 750 * 100vw);
    line-height: 1.75;
    letter-spacing: 0em;
    font-weight: 400;
  }
}

.c-ta-c {
  text-align: center;
}
@media screen and (min-width: 768px) {
  .c-ta-c-pc {
    text-align: center;
  }
}
@media screen and (max-width: 767px) {
  .c-ta-c-sp {
    text-align: center;
  }
}
.c-ta-l {
  text-align: left;
}
@media screen and (min-width: 768px) {
  .c-ta-l-pc {
    text-align: left;
  }
}
@media screen and (max-width: 767px) {
  .c-ta-l-sp {
    text-align: left;
  }
}
.c-ta-r {
  text-align: right;
}
@media screen and (min-width: 768px) {
  .c-ta-r-pc {
    text-align: right;
  }
}
@media screen and (max-width: 767px) {
  .c-ta-r-sp {
    text-align: right;
  }
}

@media screen and (min-width: 768px) {
  .c-mt-m {
    margin-top: min(20px, 1.5625vw);
  }
}
@media screen and (max-width: 767px) {
  .c-mt-m {
    margin-top: 4vw;
  }
}

.c-kv {
  color: #fff;
}
.c-kv--archive .c-kv__bg {
  background: center/cover no-repeat url(../img/archive/im-kv.jpg);
}
.c-kv__bg {
  position: relative;
}
@media screen and (min-width: 768px) {
  .c-kv__bg {
    display: flex;
    flex-direction: column;
    justify-content: center;
    height: min(240px, 18.75vw);
    row-gap: min(10px, 0.78125vw);
  }
}
@media screen and (max-width: 767px) {
  .c-kv__bg {
    padding: 12vw 0;
  }
}
.c-kv__bg::before {
  position: absolute;
  content: "";
  display: block;
  background-color: rgba(40, 79, 120, 0.9);
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.c-kv__title {
  position: relative;
}
@media screen and (min-width: 768px) {
  .c-kv__title {
    font-size: clamp(22px, 3.4375vw, 44px);
    line-height: 1.5;
    letter-spacing: 0em;
    font-weight: 700;
  }
}
@media screen and (max-width: 767px) {
  .c-kv__title {
    font-size: calc(66 / 750 * 100vw);
    line-height: 1.5;
    letter-spacing: 0em;
    font-weight: 700;
  }
}
@media screen and (min-width: 768px) {
  .c-kv__title {
    padding-left: min(74px, 5.78125vw);
  }
}
@media screen and (max-width: 767px) {
  .c-kv__title {
    padding-left: min(130px, 10.15625vw);
    margin-bottom: 3.2vw;
  }
}
.c-kv__title::before {
  position: absolute;
  content: "";
  display: block;
  background: center/contain no-repeat url(../img/common/ic-title.png);
  top: 50%;
  transform: translateY(-50%);
  left: 0;
}
@media screen and (min-width: 768px) {
  .c-kv__title::before {
    width: min(34px, 2.65625vw);
    height: min(34px, 2.65625vw);
  }
}
@media screen and (max-width: 767px) {
  .c-kv__title::before {
    width: 8vw;
    height: 8vw;
  }
}
.c-kv .c-text-l {
  line-height: 1.75;
}

.l-top .p-kv {
  position: relative;
}
.l-top .p-kv__img {
  position: relative;
  z-index: 1;
  display: flex;
}
@media screen and (max-width: 767px) {
  .l-top .p-kv__img {
    height: 108vw;
  }
}
.l-top .p-kv__img::before, .l-top .p-kv__img::after {
  position: absolute;
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}
.l-top .p-kv__img::before {
  z-index: 1;
  background-color: rgba(40, 79, 120, 0.5);
}
@media screen and (min-width: 768px) {
  .l-top .p-kv__img::after {
    z-index: 2;
    background: center/100% no-repeat url(../img/top/bg-kv.png);
  }
}
@media screen and (max-width: 767px) {
  .l-top .p-kv__img img {
    height: 100%;
    object-fit: cover;
  }
}
.l-top .p-kv__text {
  position: absolute;
  z-index: 2;
  color: #fff;
  left: 50%;
  transform: translateX(-50%);
}
@media screen and (min-width: 768px) {
  .l-top .p-kv__text {
    bottom: 15vw;
    width: min(1200px, 93.75vw);
  }
}
@media screen and (max-width: 767px) {
  .l-top .p-kv__text {
    text-align: center;
    top: 36vw;
    width: 92vw;
  }
}
@media screen and (min-width: 768px) {
  .l-top .p-kv__text-ttl {
    font-size: clamp(35px, 5.46875vw, 70px);
    line-height: 1.2857142857;
    letter-spacing: 0em;
    font-weight: 700;
  }
}
@media screen and (max-width: 767px) {
  .l-top .p-kv__text-ttl {
    font-size: calc(70 / 750 * 100vw);
    line-height: 1.2857142857;
    letter-spacing: 0em;
    font-weight: 700;
  }
}
@media screen and (min-width: 768px) {
  .l-top .p-kv__text-ttl {
    margin-bottom: min(8px, 0.625vw);
  }
}
@media screen and (max-width: 767px) {
  .l-top .p-kv__text-ttl {
    margin-bottom: 1.0666666667vw;
  }
}
@media screen and (min-width: 768px) {
  .l-top .p-kv__text-subttl {
    font-size: clamp(22px, 3.4375vw, 44px);
    line-height: 1.5;
    letter-spacing: 0em;
    font-weight: 700;
  }
}
@media screen and (max-width: 767px) {
  .l-top .p-kv__text-subttl {
    font-size: calc(44 / 750 * 100vw);
    line-height: 1.5;
    letter-spacing: 0em;
    font-weight: 700;
  }
}
@media screen and (min-width: 768px) {
  .l-top .p-kv__text-subttl {
    margin-bottom: min(48px, 3.75vw);
  }
}
@media screen and (max-width: 767px) {
  .l-top .p-kv__text-subttl {
    margin-bottom: 4vw;
  }
}
@media screen and (min-width: 768px) {
  .l-top .p-kv__text-txt {
    font-size: clamp(11px, 1.71875vw, 22px);
    line-height: 1.8181818182;
    letter-spacing: 0em;
    font-weight: 400;
  }
}
@media screen and (max-width: 767px) {
  .l-top .p-kv__text-txt {
    font-size: calc(30 / 750 * 100vw);
    line-height: 1.8;
    letter-spacing: 0em;
    font-weight: 400;
  }
}
.l-top .p-kv__btn {
  display: flex;
  justify-content: center;
  position: relative;
  z-index: 3;
}
@media screen and (min-width: 768px) {
  .l-top .p-kv__btn {
    column-gap: min(40px, 3.125vw);
    margin-top: max(-90px, -6.0810810811vw);
  }
}
@media screen and (max-width: 767px) {
  .l-top .p-kv__btn {
    margin-top: -6vw;
    flex-direction: column;
    align-items: center;
    row-gap: 4vw;
  }
}
@media screen and (min-width: 768px) {
  .l-top .p-kv__btn .c-button {
    font-size: clamp(11px, 1.71875vw, 22px);
    line-height: 1;
    letter-spacing: 0em;
    font-weight: 700;
  }
}
@media screen and (min-width: 768px) {
  .l-top .p-kv__btn .c-button {
    width: min(580px, 45.3125vw);
    height: min(180px, 14.0625vw);
  }
}
@media screen and (max-width: 767px) {
  .l-top .p-kv__btn .c-button {
    width: 80vw;
    height: 24vw;
  }
}
@media screen and (min-width: 768px) {
  .l-top .p-about {
    margin-top: max(-90px, -6.0810810811vw);
  }
}
@media screen and (max-width: 767px) {
  .l-top .p-about {
    margin-top: -46vw;
  }
}
.l-top .p-about__bg {
  position: relative;
}
@media screen and (min-width: 768px) {
  .l-top .p-about__bg {
    background: top left/72vw auto no-repeat url(../img/top/im-about-map.jpg);
    padding: min(196px, 15.3125vw) 0 min(170px, 13.28125vw);
  }
}
@media screen and (max-width: 767px) {
  .l-top .p-about__bg {
    padding: 64vw 0 22.6666666667vw;
    background: top left/135vw auto no-repeat url(../img/top/im-about-map-sp.jpg);
  }
}
.l-top .p-about__bg::after {
  position: absolute;
  content: "";
  display: block;
  bottom: 0;
  left: 0;
  z-index: -1;
}
@media screen and (min-width: 768px) {
  .l-top .p-about__bg::after {
    background: top center/cover no-repeat url(../img/top/bg-about.jpg);
    width: 100%;
    height: min(601px, 46.953125vw);
  }
}
@media screen and (max-width: 767px) {
  .l-top .p-about__bg::after {
    background: top center/cover repeat url(../img/top/bg-about.jpg);
    width: 100%;
    height: 120vw;
  }
}
@media screen and (min-width: 768px) {
  .l-top .p-about__text {
    width: min(550px, 42.96875vw);
    margin-left: auto;
    margin-bottom: min(78px, 6.09375vw);
  }
}
@media screen and (max-width: 767px) {
  .l-top .p-about__text {
    margin-top: 36vw;
    margin-bottom: 20vw;
  }
}
@media screen and (min-width: 768px) {
  .l-top .p-about__text .c-title02 {
    margin-bottom: min(54px, 4.21875vw);
  }
}
@media screen and (max-width: 767px) {
  .l-top .p-about__text .c-title02 {
    margin-bottom: 5.6vw;
  }
}
@media screen and (min-width: 768px) {
  .l-top .p-about__intro {
    margin-bottom: min(150px, 11.71875vw);
  }
}
@media screen and (max-width: 767px) {
  .l-top .p-about__intro {
    margin-bottom: 20vw;
  }
}
.l-top .p-about__intro-wrap {
  display: flex;
}
@media screen and (min-width: 768px) {
  .l-top .p-about__intro-wrap {
    justify-content: space-between;
    margin-top: min(50px, 3.90625vw);
  }
}
@media screen and (max-width: 767px) {
  .l-top .p-about__intro-wrap {
    flex-direction: column;
    row-gap: 8vw;
    margin-top: min(50px, 3.90625vw);
  }
}
@media screen and (min-width: 768px) {
  .l-top .p-about__intro-item {
    width: min(580px, 45.3125vw);
  }
}
@media screen and (max-width: 767px) {
  .l-top .p-about__intro-item {
    width: 100%;
  }
}
.l-top .p-about__intro-title {
  position: relative;
  display: flex;
  align-items: center;
}
@media screen and (min-width: 768px) {
  .l-top .p-about__intro-title {
    height: min(107px, 8.359375vw);
    column-gap: min(20px, 1.5625vw);
  }
}
@media screen and (max-width: 767px) {
  .l-top .p-about__intro-title {
    padding: 4vw 0;
    column-gap: 4vw;
  }
}
@media screen and (min-width: 768px) {
  .l-top .p-about__intro-title .logo {
    width: min(110px, 8.59375vw);
  }
}
@media screen and (max-width: 767px) {
  .l-top .p-about__intro-title .logo {
    width: 22vw;
  }
}
@media screen and (min-width: 768px) {
  .l-top .p-about__intro-title .txt {
    font-size: clamp(13px, 2.03125vw, 26px);
    line-height: 1;
    letter-spacing: 0em;
    font-weight: 700;
  }
}
@media screen and (max-width: 767px) {
  .l-top .p-about__intro-title .txt {
    font-size: calc(39 / 750 * 100vw);
    line-height: 1;
    letter-spacing: 0em;
    font-weight: 700;
  }
}
.l-top .p-about__intro-title .country {
  position: absolute;
  z-index: -1;
  color: #EFEFEF;
}
@media screen and (min-width: 768px) {
  .l-top .p-about__intro-title .country {
    font-size: clamp(50px, 7.8125vw, 100px);
    line-height: 1;
    letter-spacing: 0em;
    font-weight: 700;
  }
}
@media screen and (max-width: 767px) {
  .l-top .p-about__intro-title .country {
    font-size: calc(130 / 750 * 100vw);
    line-height: 1;
    letter-spacing: 0em;
    font-weight: 700;
  }
}
@media screen and (min-width: 768px) {
  .l-top .p-about__intro-title .country {
    right: 0;
    top: min(-16px, -1.25vw);
  }
}
@media screen and (max-width: 767px) {
  .l-top .p-about__intro-title .country {
    right: -3.2vw;
    top: -4vw;
  }
}
.l-top .p-about__intro-address {
  display: flex;
  align-items: flex-start;
}
@media screen and (min-width: 768px) {
  .l-top .p-about__intro-address {
    font-size: clamp(7px, 1.09375vw, 14px);
    line-height: 1.8571428571;
    letter-spacing: 0em;
    font-weight: 400;
  }
}
@media screen and (max-width: 767px) {
  .l-top .p-about__intro-address {
    font-size: calc(21 / 750 * 100vw);
    line-height: 1.8571428571;
    letter-spacing: 0em;
    font-weight: 400;
  }
}
@media screen and (min-width: 768px) {
  .l-top .p-about__intro-address {
    column-gap: min(36px, 2.8125vw);
    margin-top: min(30px, 2.34375vw);
  }
}
@media screen and (max-width: 767px) {
  .l-top .p-about__intro-address {
    column-gap: 4.8vw;
    margin-top: 4vw;
  }
}
.l-top .p-about__lawyer-list {
  display: flex;
  justify-content: space-between;
}
@media screen and (min-width: 768px) {
  .l-top .p-about__lawyer-list {
    margin-top: min(60px, 4.6875vw);
  }
}
@media screen and (max-width: 767px) {
  .l-top .p-about__lawyer-list {
    margin-top: 8vw;
    flex-wrap: wrap;
    row-gap: 6.4vw;
  }
}
@media screen and (min-width: 768px) {
  .l-top .p-about__lawyer-item {
    width: min(280px, 21.875vw);
  }
}
@media screen and (max-width: 767px) {
  .l-top .p-about__lawyer-item {
    width: 42.6666666667vw;
  }
}
.l-top .p-about__lawyer-img {
  position: relative;
}
.l-top .p-about__lawyer-img .wise-logo {
  display: block;
}
@media screen and (min-width: 768px) {
  .l-top .p-about__lawyer-img .wise-logo {
    width: min(84px, 6.5625vw);
    margin-bottom: min(14px, 1.09375vw);
  }
}
@media screen and (max-width: 767px) {
  .l-top .p-about__lawyer-img .wise-logo {
    width: 16.8vw;
    margin-bottom: 2.8vw;
  }
}
.l-top .p-about__lawyer-img .monolith-logo {
  display: block;
}
@media screen and (min-width: 768px) {
  .l-top .p-about__lawyer-img .monolith-logo {
    width: min(76px, 5.9375vw);
    margin-bottom: min(10px, 0.78125vw);
  }
}
@media screen and (max-width: 767px) {
  .l-top .p-about__lawyer-img .monolith-logo {
    width: 15.2vw;
    margin-bottom: 2vw;
  }
}
@media screen and (min-width: 768px) {
  .l-top .p-about__lawyer-text {
    margin-top: min(20px, 1.5625vw);
  }
}
@media screen and (max-width: 767px) {
  .l-top .p-about__lawyer-text {
    margin-top: 4vw;
  }
}
.l-top .p-about__lawyer-text .name {
  display: flex;
}
@media screen and (min-width: 768px) {
  .l-top .p-about__lawyer-text .name {
    align-items: center;
    height: min(40px, 3.125vw);
    column-gap: min(15px, 1.171875vw);
    margin-bottom: min(8px, 0.625vw);
  }
}
@media screen and (max-width: 767px) {
  .l-top .p-about__lawyer-text .name {
    flex-direction: column;
    row-gap: 1.6vw;
    margin-bottom: 1.6vw;
  }
}
@media screen and (min-width: 768px) {
  .l-top .p-about__lawyer-text .name-jp {
    font-size: clamp(15px, 2.34375vw, 30px);
    line-height: 1;
    letter-spacing: 0em;
    font-weight: 700;
  }
}
@media screen and (max-width: 767px) {
  .l-top .p-about__lawyer-text .name-jp {
    font-size: calc(45 / 750 * 100vw);
    line-height: 1;
    letter-spacing: 0em;
    font-weight: 700;
  }
}
.l-top .p-about__lawyer-text .name-right {
  color: #284F78;
}
@media screen and (min-width: 768px) {
  .l-top .p-about__lawyer-text .name-right {
    font-size: clamp(7px, 1.09375vw, 14px);
    line-height: 1.4285714286;
    letter-spacing: 0em;
    font-weight: 400;
  }
}
@media screen and (max-width: 767px) {
  .l-top .p-about__lawyer-text .name-right {
    font-size: calc(24 / 750 * 100vw);
    line-height: 1.4166666667;
    letter-spacing: 0em;
    font-weight: 400;
  }
}
@media screen and (min-width: 768px) {
  .l-top .p-about__lawyer-text .name.mb {
    margin-bottom: min(12px, 0.9375vw);
  }
}
@media screen and (max-width: 767px) {
  .l-top .p-about__lawyer-text .name.mb {
    margin-bottom: 2.4vw;
  }
}
.l-top .p-about__lawyer-text .position {
  color: #284F78;
}
@media screen and (min-width: 768px) {
  .l-top .p-about__lawyer-text .position {
    font-size: clamp(7px, 1.09375vw, 14px);
    line-height: 1.4285714286;
    letter-spacing: 0em;
    font-weight: 400;
  }
}
@media screen and (max-width: 767px) {
  .l-top .p-about__lawyer-text .position {
    font-size: calc(24 / 750 * 100vw);
    line-height: 1.4166666667;
    letter-spacing: 0em;
    font-weight: 400;
  }
}
@media screen and (min-width: 768px) {
  .l-top .p-about__lawyer-text .position {
    margin-bottom: min(12px, 0.9375vw);
  }
}
@media screen and (max-width: 767px) {
  .l-top .p-about__lawyer-text .position {
    margin-bottom: 2.4vw;
  }
}
.l-top .p-about__lawyer-text .subttl {
  color: #284F78;
}
@media screen and (min-width: 768px) {
  .l-top .p-about__lawyer-text .subttl {
    font-size: clamp(8px, 1.25vw, 16px);
    line-height: 1.875;
    letter-spacing: 0em;
    font-weight: 700;
  }
}
@media screen and (max-width: 767px) {
  .l-top .p-about__lawyer-text .subttl {
    font-size: calc(28 / 750 * 100vw);
    line-height: 1.875;
    letter-spacing: 0em;
    font-weight: 700;
  }
}
@media screen and (min-width: 768px) {
  .l-top .p-about__lawyer-text .subttl {
    margin-bottom: min(8px, 0.625vw);
  }
}
@media screen and (max-width: 767px) {
  .l-top .p-about__lawyer-text .subttl {
    margin-bottom: 1.6vw;
  }
}
@media screen and (min-width: 768px) {
  .l-top .p-about__lawyer-text .txt {
    font-size: clamp(8px, 1.25vw, 16px);
    line-height: 1.625;
    letter-spacing: 0em;
    font-weight: 400;
  }
}
@media screen and (max-width: 767px) {
  .l-top .p-about__lawyer-text .txt {
    font-size: calc(28 / 750 * 100vw);
    line-height: 1.625;
    letter-spacing: 0em;
    font-weight: 400;
  }
}
.l-top .p-service__bg {
  background: linear-gradient(to bottom, #EFEFEF 0%, #EFEFEF 88%, #fff 88%, #fff 100%);
  overflow: hidden;
  position: relative;
}
@media screen and (min-width: 768px) {
  .l-top .p-service__bg {
    padding-top: min(100px, 7.8125vw);
  }
}
@media screen and (max-width: 767px) {
  .l-top .p-service__bg {
    padding-top: 13.3333333333vw;
  }
}
.l-top .p-service__bg::before, .l-top .p-service__bg::after {
  position: absolute;
  content: "";
  display: block;
  border-radius: 50%;
}
@media screen and (min-width: 768px) {
  .l-top .p-service__bg::before, .l-top .p-service__bg::after {
    border: min(2px, 0.15625vw) solid #fff;
    width: min(560px, 43.75vw);
    height: min(560px, 43.75vw);
    top: max(-24px, -1.6216216216vw);
  }
}
@media screen and (max-width: 767px) {
  .l-top .p-service__bg::before, .l-top .p-service__bg::after {
    border: 0.2666666667vw solid #fff;
    width: 60vw;
    height: 60vw;
    top: -3.2vw;
  }
}
@media screen and (min-width: 768px) {
  .l-top .p-service__bg::before {
    right: calc((100vw - 2032px) / 2);
  }
}
@media screen and (max-width: 1920px) and (min-width: 768px) {
  .l-top .p-service__bg::before {
    right: -2.9166666667vw;
  }
}
@media screen and (max-width: 767px) {
  .l-top .p-service__bg::before {
    right: -40vw;
  }
}
@media screen and (min-width: 768px) {
  .l-top .p-service__bg::after {
    right: calc((100vw - 1152px) / 2);
  }
}
@media screen and (max-width: 1920px) and (min-width: 768px) {
  .l-top .p-service__bg::after {
    right: 22.2222222222vw;
  }
}
@media screen and (max-width: 767px) {
  .l-top .p-service__bg::after {
    right: 8vw;
  }
}
@media screen and (min-width: 768px) {
  .l-top .p-service__subtitle {
    margin: min(50px, 3.90625vw) 0 min(60px, 4.6875vw);
  }
}
@media screen and (max-width: 767px) {
  .l-top .p-service__subtitle {
    margin: 8vw 0;
  }
}
.l-top .p-service__list {
  display: flex;
  flex-wrap: wrap;
  border: 1px solid #284F78;
}
.l-top .p-service__list-item {
  background-color: #fff;
}
@media screen and (min-width: 768px) {
  .l-top .p-service__list-item {
    width: 33.3333333333%;
    display: flex;
    flex-direction: column;
    height: min(260px, 20.3125vw);
    padding: min(30px, 2.34375vw) min(28px, 2.1875vw) min(40px, 3.125vw);
  }
}
@media screen and (max-width: 767px) {
  .l-top .p-service__list-item {
    width: 50%;
    position: relative;
    padding: 4vw 2.6666666667vw;
  }
}
@media screen and (min-width: 768px) {
  .l-top .p-service__list-item:nth-of-type(n+4) {
    border-top: 1px solid #284F78;
  }
}
@media screen and (max-width: 767px) {
  .l-top .p-service__list-item:nth-of-type(n+3) {
    border-top: 1px solid #284F78;
  }
}
@media screen and (min-width: 768px) {
  .l-top .p-service__list-item:not(:nth-of-type(3n)) {
    border-right: 1px solid #284F78;
  }
}
@media screen and (max-width: 767px) {
  .l-top .p-service__list-item:nth-of-type(2n+1) {
    border-right: 1px solid #284F78;
  }
}
@media screen and (min-width: 768px) {
  .l-top .p-service__list-img {
    width: min(90px, 7.03125vw);
  }
}
@media screen and (max-width: 767px) {
  .l-top .p-service__list-img {
    width: 12vw;
  }
}
.l-top .p-service__list-wrap {
  display: flex;
  align-items: flex-start;
}
@media screen and (min-width: 768px) {
  .l-top .p-service__list-wrap {
    column-gap: min(10px, 0.78125vw);
  }
}
@media screen and (max-width: 767px) {
  .l-top .p-service__list-wrap {
    column-gap: 1.3333333333vw;
    margin-bottom: 2.6666666667vw;
    margin-left: -2.4vw;
  }
}
.l-top .p-service__list-title {
  color: #284F78;
}
@media screen and (min-width: 768px) {
  .l-top .p-service__list-title {
    font-size: clamp(15px, 2.34375vw, 30px);
    line-height: 1.5;
    letter-spacing: 0em;
    font-weight: 400;
  }
}
@media screen and (max-width: 767px) {
  .l-top .p-service__list-title {
    font-size: calc(36 / 750 * 100vw);
    line-height: 1.5;
    letter-spacing: 0em;
    font-weight: 400;
  }
}
.l-top .p-service__list-title .small {
  display: block;
  line-height: 1.25;
}
@media screen and (min-width: 768px) {
  .l-top .p-service__list .c-text-m {
    margin-top: auto;
  }
}
@media screen and (min-width: 768px) {
  .l-top .p-blog {
    padding: min(160px, 12.5vw) 0;
  }
}
@media screen and (max-width: 767px) {
  .l-top .p-blog {
    padding: 21.3333333333vw 0;
  }
}
@media screen and (min-width: 768px) {
  .l-top .p-blog .c-title02 {
    margin-top: min(50px, 3.90625vw);
  }
}
@media screen and (max-width: 767px) {
  .l-top .p-blog .c-title02 {
    margin-top: 6.6666666667vw;
  }
}
@media screen and (min-width: 768px) {
  .l-top .p-blog__sliderwrap {
    margin-top: min(60px, 4.6875vw);
  }
}
@media screen and (max-width: 767px) {
  .l-top .p-blog__sliderwrap {
    margin-top: 8vw;
  }
}
@media screen and (min-width: 768px) {
  .l-top .p-blog__slider-item {
    width: min(460px, 35.9375vw);
    margin-right: min(40px, 3.125vw);
  }
}
@media screen and (max-width: 767px) {
  .l-top .p-blog__slider-item {
    width: 92vw;
    margin: 0 4vw;
  }
}
@media screen and (min-width: 768px) {
  .l-top .p-blog__slider-item a:hover {
    opacity: 0.7;
  }
}
@media screen and (min-width: 768px) {
  .l-top .p-blog__slider-item img {
    margin-bottom: min(30px, 2.34375vw);
  }
}
@media screen and (max-width: 767px) {
  .l-top .p-blog__slider-item img {
    margin-bottom: 4vw;
  }
}
.l-top .p-blog__slider-date {
  display: block;
  font-family: "europa", sans-serif;
  color: #959595;
}
@media screen and (min-width: 768px) {
  .l-top .p-blog__slider-date {
    font-size: clamp(8px, 1.25vw, 16px);
    line-height: 1;
    letter-spacing: 0em;
    font-weight: 700;
  }
}
@media screen and (max-width: 767px) {
  .l-top .p-blog__slider-date {
    font-size: calc(28 / 750 * 100vw);
    line-height: 1;
    letter-spacing: 0em;
    font-weight: 700;
  }
}
@media screen and (min-width: 768px) {
  .l-top .p-blog__slider-date {
    margin-bottom: min(24px, 1.875vw);
  }
}
@media screen and (max-width: 767px) {
  .l-top .p-blog__slider-date {
    margin-bottom: 3.2vw;
  }
}
.l-top .p-blog__slider .c-text-m {
  font-weight: 700;
}
@media screen and (min-width: 768px) {
  .l-top .p-blog .splide__arrows {
    position: absolute;
    display: flex;
    top: max(-132px, -8.9189189189vw);
    column-gap: min(20px, 1.5625vw);
    right: calc((100vw - 1440px) / 2);
  }
}
@media screen and (min-width: 768px) and (max-width: 1480px) {
  .l-top .p-blog .splide__arrows {
    right: min(20px, 1.5625vw);
  }
}
.l-top .p-blog .splide__arrow {
  opacity: 1;
  border-radius: 50%;
  background-color: #fff;
  border: 1px solid #284F78;
  transition: all 0.3s;
}
@media screen and (min-width: 768px) {
  .l-top .p-blog .splide__arrow {
    position: relative;
    right: 0;
    left: 0;
    width: min(70px, 5.46875vw);
    height: min(70px, 5.46875vw);
  }
  .l-top .p-blog .splide__arrow:hover {
    background-color: #284F78;
  }
  .l-top .p-blog .splide__arrow:hover::after {
    background-image: url(../img/common/ic-arrow-right-wh.png);
  }
}
@media screen and (max-width: 767px) {
  .l-top .p-blog .splide__arrow {
    width: 14vw;
    height: 14vw;
  }
}
.l-top .p-blog .splide__arrow::after {
  position: absolute;
  content: "";
  display: block;
  background: center/contain no-repeat url(../img/common/ic-arrow-right-bl.png);
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
@media screen and (min-width: 768px) {
  .l-top .p-blog .splide__arrow::after {
    width: min(10.5px, 0.8203125vw);
    height: min(18px, 1.40625vw);
  }
}
@media screen and (max-width: 767px) {
  .l-top .p-blog .splide__arrow::after {
    width: 2.1333333333vw;
    height: 3.7333333333vw;
  }
}
@media screen and (min-width: 768px) {
  .l-top .p-blog .splide__arrow--prev {
    transform: scale(-1, 1);
  }
}
@media screen and (max-width: 767px) {
  .l-top .p-blog .splide__arrow--prev {
    transform: scale(-1, 1) translateY(-50%);
    left: 1.6vw;
  }
}
@media screen and (min-width: 768px) {
  .l-top .p-blog .splide__arrow--next {
    transform: none;
  }
}
@media screen and (max-width: 767px) {
  .l-top .p-blog .splide__arrow--next {
    right: 1.6vw;
  }
}
.l-top .p-blog__btn {
  width: max-content;
  margin-left: auto;
}
@media screen and (min-width: 768px) {
  .l-top .p-blog__btn {
    margin-top: min(60px, 4.6875vw);
  }
}
@media screen and (max-width: 767px) {
  .l-top .p-blog__btn {
    margin-top: 8vw;
  }
}
.l-top .p-contact {
  display: flex;
}
.l-top .p-contact__bg {
  width: 100%;
  position: relative;
  background: center/cover no-repeat url(../img/common/bg-contact.jpg);
}
@media screen and (min-width: 768px) {
  .l-top .p-contact__bg {
    height: min(400px, 31.25vw);
  }
}
@media screen and (max-width: 767px) {
  .l-top .p-contact__bg {
    padding: 13.3333333333vw 0;
  }
}
.l-top .p-contact__bg::before {
  position: absolute;
  content: "";
  display: block;
  background-color: rgba(40, 79, 120, 0.9);
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
}
.l-top .p-contact__inner {
  display: flex;
}
@media screen and (min-width: 768px) {
  .l-top .p-contact__inner {
    height: 100%;
    align-items: center;
    justify-content: space-between;
  }
}
@media screen and (max-width: 767px) {
  .l-top .p-contact__inner {
    flex-direction: column;
    row-gap: 6vw;
  }
}
.l-top .p-contact__inner .c-title-en, .l-top .p-contact__inner .c-title-jp {
  color: #fff;
}
.l-top .p-contact__text .c-text-l {
  color: #fff;
}
@media screen and (min-width: 768px) {
  .l-top .p-contact__text .c-text-l {
    margin-bottom: min(30px, 2.34375vw);
  }
}
@media screen and (max-width: 767px) {
  .l-top .p-contact__text .c-text-l {
    margin-bottom: 4vw;
  }
}

.l-archive {
  background: top center/contain repeat url(../img/top/bg-about.jpg);
}
@media screen and (min-width: 768px) {
  .l-archive .p-archive {
    padding: min(30px, 2.34375vw) min(28px, 2.1875vw) min(80px, 6.25vw);
  }
}
@media screen and (max-width: 767px) {
  .l-archive .p-archive {
    padding: 6vw 4vw 12vw;
  }
}
.l-archive .p-archive__sort {
  display: flex;
  align-items: center;
}
@media screen and (min-width: 768px) {
  .l-archive .p-archive__sort {
    column-gap: min(10px, 0.78125vw);
    margin-bottom: min(30px, 2.34375vw);
  }
}
@media screen and (max-width: 767px) {
  .l-archive .p-archive__sort {
    column-gap: 2vw;
    margin-bottom: 6vw;
  }
}
.l-archive .p-archive__sort-txt {
  color: #284F78;
}
@media screen and (min-width: 768px) {
  .l-archive .p-archive__sort-txt {
    font-size: clamp(7px, 1.09375vw, 14px);
    line-height: 1.5;
    letter-spacing: 0em;
    font-weight: 700;
  }
}
@media screen and (max-width: 767px) {
  .l-archive .p-archive__sort-txt {
    font-size: calc(24.5 / 750 * 100vw);
    line-height: 1.5;
    letter-spacing: 0em;
    font-weight: 700;
  }
}
.l-archive .p-archive__sort-form {
  display: flex;
  width: max-content;
  position: relative;
}
.l-archive .p-archive__sort-form::after {
  position: absolute;
  content: "";
  display: block;
  pointer-events: none;
  background: center/contain no-repeat url(../img/common/ic-arrow-totop-bl.png);
  top: 60%;
  transform: translateY(-50%) rotate(180deg);
  right: 0;
}
@media screen and (min-width: 768px) {
  .l-archive .p-archive__sort-form::after {
    width: min(12px, 0.9375vw);
    height: min(8px, 0.625vw);
  }
}
@media screen and (max-width: 767px) {
  .l-archive .p-archive__sort-form::after {
    width: 2.4vw;
    height: 1.6vw;
  }
}
.l-archive .p-archive__sort select {
  border: none;
  appearance: none;
  cursor: pointer;
}
@media screen and (min-width: 768px) {
  .l-archive .p-archive__sort select {
    font-size: clamp(7px, 1.09375vw, 14px);
    line-height: 1.5;
    letter-spacing: 0em;
    font-weight: 400;
  }
}
@media screen and (max-width: 767px) {
  .l-archive .p-archive__sort select {
    font-size: calc(24.5 / 750 * 100vw);
    line-height: 1.5;
    letter-spacing: 0em;
    font-weight: 400;
  }
}
@media screen and (min-width: 768px) {
  .l-archive .p-archive__sort select {
    padding-right: min(20px, 1.5625vw);
    padding-top: min(2px, 0.15625vw);
  }
}
@media screen and (max-width: 767px) {
  .l-archive .p-archive__sort select {
    padding-top: 0.4vw;
    padding-right: 4vw;
  }
}
.l-archive .p-archive__list {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
@media screen and (min-width: 768px) {
  .l-archive .p-archive__list {
    row-gap: min(40px, 3.125vw);
  }
}
@media screen and (max-width: 767px) {
  .l-archive .p-archive__list {
    row-gap: 4vw;
  }
}
.l-archive .p-archive__list-item {
  border: 1px solid #EFEFEF;
}
@media screen and (min-width: 768px) {
  .l-archive .p-archive__list-item {
    width: min(330px, 25.78125vw);
  }
}
@media screen and (max-width: 767px) {
  .l-archive .p-archive__list-item {
    width: 100%;
  }
}
.l-archive .p-archive__list-img {
  display: flex;
  position: relative;
}
.l-archive .p-archive__list-img .category {
  position: absolute;
  top: 0;
  left: 0;
  background-color: #284F78;
  color: #fff;
}
@media screen and (min-width: 768px) {
  .l-archive .p-archive__list-img .category {
    font-size: clamp(6px, 0.9375vw, 12px);
    line-height: 1.5;
    letter-spacing: 0em;
    font-weight: 700;
  }
}
@media screen and (max-width: 767px) {
  .l-archive .p-archive__list-img .category {
    font-size: calc(20 / 750 * 100vw);
    line-height: 1.5;
    letter-spacing: 0em;
    font-weight: 700;
  }
}
@media screen and (min-width: 768px) {
  .l-archive .p-archive__list-img .category {
    padding: min(5px, 0.390625vw) min(15px, 1.171875vw);
  }
}
@media screen and (max-width: 767px) {
  .l-archive .p-archive__list-img .category {
    padding: 1.0666666667vw 2.6666666667vw;
  }
}
@media screen and (min-width: 768px) {
  .l-archive .p-archive__list-text {
    padding: min(20px, 1.5625vw) min(20px, 1.5625vw) min(24px, 1.875vw);
  }
}
@media screen and (max-width: 767px) {
  .l-archive .p-archive__list-text {
    padding: 4vw 4vw 4.8vw;
  }
}
.l-archive .p-archive__list-text .date {
  color: #959595;
  font-family: "europa", sans-serif;
  display: block;
}
@media screen and (min-width: 768px) {
  .l-archive .p-archive__list-text .date {
    font-size: clamp(7px, 1.09375vw, 14px);
    line-height: 1.5;
    letter-spacing: 0em;
    font-weight: 700;
  }
}
@media screen and (max-width: 767px) {
  .l-archive .p-archive__list-text .date {
    font-size: calc(24 / 750 * 100vw);
    line-height: 1.5;
    letter-spacing: 0em;
    font-weight: 700;
  }
}
@media screen and (min-width: 768px) {
  .l-archive .p-archive__list-text .date {
    margin-bottom: min(10px, 0.78125vw);
  }
}
@media screen and (max-width: 767px) {
  .l-archive .p-archive__list-text .date {
    margin-bottom: 2vw;
  }
}
.l-archive .p-archive__list-text .title {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
}
@media screen and (min-width: 768px) {
  .l-archive .p-archive__list-text .title {
    font-size: clamp(10px, 1.5625vw, 20px);
    line-height: 1.5;
    letter-spacing: 0em;
    font-weight: 700;
  }
}
@media screen and (max-width: 767px) {
  .l-archive .p-archive__list-text .title {
    font-size: calc(35 / 750 * 100vw);
    line-height: 1.5;
    letter-spacing: 0em;
    font-weight: 700;
  }
}
@media screen and (min-width: 768px) {
  .l-archive .p-archive__list-text .title {
    margin-bottom: min(10px, 0.78125vw);
  }
}
@media screen and (max-width: 767px) {
  .l-archive .p-archive__list-text .title {
    margin-bottom: 2vw;
  }
}
.l-archive .p-archive__list-text .text {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  overflow: hidden;
}
.l-archive .p-archive__list-text .tags {
  display: flex;
  flex-wrap: wrap;
}
@media screen and (min-width: 768px) {
  .l-archive .p-archive__list-text .tags {
    margin-top: min(16px, 1.25vw);
    gap: min(10px, 0.78125vw);
  }
}
@media screen and (max-width: 767px) {
  .l-archive .p-archive__list-text .tags {
    margin-top: 3.2vw;
    grid-area: 1.3333333333vw;
  }
}
.l-archive .p-archive__list-text .tags-item {
  background-color: #EFEFEF;
  color: #284F78;
}
@media screen and (min-width: 768px) {
  .l-archive .p-archive__list-text .tags-item {
    font-size: clamp(6px, 0.9375vw, 12px);
    line-height: 1.5;
    letter-spacing: 0em;
    font-weight: 400;
  }
}
@media screen and (max-width: 767px) {
  .l-archive .p-archive__list-text .tags-item {
    font-size: calc(18 / 750 * 100vw);
    line-height: 1.5;
    letter-spacing: 0em;
    font-weight: 400;
  }
}
@media screen and (min-width: 768px) {
  .l-archive .p-archive__list-text .tags-item {
    padding: min(2px, 0.15625vw) min(10px, 0.78125vw);
  }
}
@media screen and (max-width: 767px) {
  .l-archive .p-archive__list-text .tags-item {
    padding: 0.4vw 2vw;
  }
}
@media screen and (min-width: 768px) {
  .l-archive .p-archive__pagination {
    margin-top: min(50px, 3.90625vw);
  }
}
@media screen and (max-width: 767px) {
  .l-archive .p-archive__pagination {
    margin-top: 10vw;
  }
}
.l-archive .p-archive__pagination .nav-links {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
@media screen and (min-width: 768px) {
  .l-archive .p-archive__pagination .nav-links {
    gap: min(10px, 0.78125vw);
  }
}
@media screen and (max-width: 767px) {
  .l-archive .p-archive__pagination .nav-links {
    gap: 2vw;
  }
}
.l-archive .p-archive__pagination .nav-links .page-numbers {
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: "europa", sans-serif;
  background-color: #fff;
  color: #284F78;
}
@media screen and (min-width: 768px) {
  .l-archive .p-archive__pagination .nav-links .page-numbers {
    font-size: clamp(10px, 1.5625vw, 20px);
    line-height: 1;
    letter-spacing: 0em;
    font-weight: 700;
  }
}
@media screen and (max-width: 767px) {
  .l-archive .p-archive__pagination .nav-links .page-numbers {
    font-size: calc(30 / 750 * 100vw);
    line-height: 1;
    letter-spacing: 0em;
    font-weight: 700;
  }
}
@media screen and (min-width: 768px) {
  .l-archive .p-archive__pagination .nav-links .page-numbers {
    width: min(40px, 3.125vw);
    height: min(40px, 3.125vw);
  }
}
@media screen and (max-width: 767px) {
  .l-archive .p-archive__pagination .nav-links .page-numbers {
    width: 8vw;
    height: 8vw;
  }
}
.l-archive .p-archive__pagination .nav-links .page-numbers.dots {
  border: none;
  background-color: none;
  border: none;
  width: auto;
}
.l-archive .p-archive__pagination .nav-links .page-numbers.current {
  color: #fff;
  background-color: #284F78;
}
.l-archive .p-archive__pagination .nav-links .page-numbers.next, .l-archive .p-archive__pagination .nav-links .page-numbers.prev {
  position: relative;
}
.l-archive .p-archive__pagination .nav-links .page-numbers.next::after, .l-archive .p-archive__pagination .nav-links .page-numbers.prev::after {
  position: absolute;
  content: "";
  display: block;
  background: center/contain no-repeat url(../img/common/ic-arrow-right-bl.png);
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
@media screen and (min-width: 768px) {
  .l-archive .p-archive__pagination .nav-links .page-numbers.next::after, .l-archive .p-archive__pagination .nav-links .page-numbers.prev::after {
    width: min(10.5px, 0.8203125vw);
    height: min(18px, 1.40625vw);
  }
}
@media screen and (max-width: 767px) {
  .l-archive .p-archive__pagination .nav-links .page-numbers.next::after, .l-archive .p-archive__pagination .nav-links .page-numbers.prev::after {
    width: 2.1333333333vw;
    height: 3.7333333333vw;
  }
}
.l-archive .p-archive__pagination .nav-links .page-numbers.prev {
  transform: scale(-1, 1);
}
.l-archive .p-contact {
  display: flex;
}
.l-archive .p-contact__bg {
  width: 100%;
  position: relative;
  background: center/cover no-repeat url(../img/common/bg-contact.jpg);
}
@media screen and (min-width: 768px) {
  .l-archive .p-contact__bg {
    height: min(400px, 31.25vw);
  }
}
@media screen and (max-width: 767px) {
  .l-archive .p-contact__bg {
    padding: 13.3333333333vw 0;
  }
}
.l-archive .p-contact__bg::before {
  position: absolute;
  content: "";
  display: block;
  background-color: rgba(40, 79, 120, 0.9);
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
}
.l-archive .p-contact__inner {
  display: flex;
}
@media screen and (min-width: 768px) {
  .l-archive .p-contact__inner {
    height: 100%;
    align-items: center;
    justify-content: space-between;
  }
}
@media screen and (max-width: 767px) {
  .l-archive .p-contact__inner {
    flex-direction: column;
    row-gap: 6vw;
  }
}
.l-archive .p-contact__inner .c-title-en, .l-archive .p-contact__inner .c-title-jp {
  color: #fff;
}
.l-archive .p-contact__text .c-text-l {
  color: #fff;
}
@media screen and (min-width: 768px) {
  .l-archive .p-contact__text .c-text-l {
    margin-bottom: min(30px, 2.34375vw);
  }
}
@media screen and (max-width: 767px) {
  .l-archive .p-contact__text .c-text-l {
    margin-bottom: 4vw;
  }
}

.l-single {
  background: top center/contain repeat url(../img/top/bg-about.jpg);
}
@media screen and (min-width: 768px) {
  .l-single .p-single__info {
    padding: min(30px, 2.34375vw);
  }
}
@media screen and (max-width: 767px) {
  .l-single .p-single__info {
    padding: 4vw;
  }
}
.l-single .p-single__info .post-categories {
  display: flex;
  flex-wrap: wrap;
}
@media screen and (min-width: 768px) {
  .l-single .p-single__info .post-categories {
    margin-bottom: min(12px, 0.9375vw);
    gap: min(8px, 0.625vw);
  }
}
@media screen and (max-width: 767px) {
  .l-single .p-single__info .post-categories {
    margin-bottom: 2.4vw;
    gap: 1.6vw;
  }
}
.l-single .p-single__info .post-categories li a {
  display: inline-block;
  background-color: #284F78;
  color: #fff;
}
@media screen and (min-width: 768px) {
  .l-single .p-single__info .post-categories li a {
    font-size: clamp(7px, 1.09375vw, 14px);
    line-height: 1.5;
    letter-spacing: 0em;
    font-weight: 400;
  }
}
@media screen and (max-width: 767px) {
  .l-single .p-single__info .post-categories li a {
    font-size: calc(24 / 750 * 100vw);
    line-height: 1.5;
    letter-spacing: 0em;
    font-weight: 400;
  }
}
@media screen and (min-width: 768px) {
  .l-single .p-single__info .post-categories li a {
    padding: min(4px, 0.3125vw) min(16px, 1.25vw);
  }
  .l-single .p-single__info .post-categories li a:hover {
    opacity: 0.7;
  }
}
@media screen and (max-width: 767px) {
  .l-single .p-single__info .post-categories li a {
    padding: 0.8vw 3.2vw;
  }
}
@media screen and (min-width: 768px) {
  .l-single .p-single__info-title {
    font-size: clamp(16px, 2.5vw, 32px);
    line-height: 1.5;
    letter-spacing: 0em;
    font-weight: 700;
  }
}
@media screen and (max-width: 767px) {
  .l-single .p-single__info-title {
    font-size: calc(48 / 750 * 100vw);
    line-height: 1.5;
    letter-spacing: 0em;
    font-weight: 700;
  }
}
@media screen and (min-width: 768px) {
  .l-single .p-single__info-title {
    margin-bottom: min(12px, 0.9375vw);
  }
}
@media screen and (max-width: 767px) {
  .l-single .p-single__info-title {
    margin-bottom: 2.4vw;
  }
}
.l-single .p-single__info-date {
  color: #959595;
}
@media screen and (min-width: 768px) {
  .l-single .p-single__info-date {
    font-size: clamp(7px, 1.09375vw, 14px);
    line-height: 1;
    letter-spacing: 0em;
    font-weight: 700;
  }
}
@media screen and (max-width: 767px) {
  .l-single .p-single__info-date {
    font-size: calc(24 / 750 * 100vw);
    line-height: 1;
    letter-spacing: 0em;
    font-weight: 700;
  }
}
@media screen and (min-width: 768px) {
  .l-single .p-single__content {
    padding: min(30px, 2.34375vw);
  }
}
@media screen and (max-width: 767px) {
  .l-single .p-single__content {
    padding: 4vw;
  }
}
.l-single .p-single__content #ez-toc-container {
  background-color: rgba(40, 79, 120, 0.1);
}
@media screen and (min-width: 768px) {
  .l-single .p-single__content #ez-toc-container {
    padding: min(20px, 1.5625vw);
    margin-top: min(40px, 3.125vw);
  }
}
@media screen and (max-width: 767px) {
  .l-single .p-single__content #ez-toc-container {
    padding: 4vw;
    margin-top: 8vw;
  }
}
.l-single .p-single__content #ez-toc-container .ez-toc-title {
  text-align: center;
}
@media screen and (min-width: 768px) {
  .l-single .p-single__content #ez-toc-container .ez-toc-title {
    font-size: clamp(10px, 1.5625vw, 20px);
    line-height: 1;
    letter-spacing: 0em;
    font-weight: 700;
  }
}
@media screen and (max-width: 767px) {
  .l-single .p-single__content #ez-toc-container .ez-toc-title {
    font-size: calc(35 / 750 * 100vw);
    line-height: 1;
    letter-spacing: 0em;
    font-weight: 700;
  }
}
@media screen and (min-width: 768px) {
  .l-single .p-single__content #ez-toc-container .ez-toc-link {
    font-size: clamp(8px, 1.25vw, 16px);
    line-height: 1.875;
    letter-spacing: 0em;
    font-weight: 400;
  }
}
@media screen and (max-width: 767px) {
  .l-single .p-single__content #ez-toc-container .ez-toc-link {
    font-size: calc(28 / 750 * 100vw);
    line-height: 1.875;
    letter-spacing: 0em;
    font-weight: 400;
  }
}
@media screen and (min-width: 768px) {
  .l-single .p-single__content #ez-toc-container .ez-toc-link:hover {
    opacity: 0.7;
  }
}
.l-single .p-single__content #ez-toc-container .ez-toc-heading-level-2 {
  counter-increment: toc-h2;
  counter-reset: toc-h3;
}
@media screen and (min-width: 768px) {
  .l-single .p-single__content #ez-toc-container .ez-toc-heading-level-2:not(:last-of-type) {
    margin-bottom: min(12px, 0.9375vw);
  }
}
@media screen and (max-width: 767px) {
  .l-single .p-single__content #ez-toc-container .ez-toc-heading-level-2:not(:last-of-type) {
    margin-bottom: 2.4vw;
  }
}
.l-single .p-single__content #ez-toc-container .ez-toc-heading-level-2::before {
  content: counter(toc-h2) ". ";
  font-weight: bold;
  margin-right: 0.25em;
}
@media screen and (min-width: 768px) {
  .l-single .p-single__content #ez-toc-container .ez-toc-heading-level-2::before {
    font-size: clamp(8px, 1.25vw, 16px);
    line-height: 1.875;
    letter-spacing: 0em;
    font-weight: 700;
  }
}
@media screen and (max-width: 767px) {
  .l-single .p-single__content #ez-toc-container .ez-toc-heading-level-2::before {
    font-size: calc(28 / 750 * 100vw);
    line-height: 1.875;
    letter-spacing: 0em;
    font-weight: 700;
  }
}
.l-single .p-single__content #ez-toc-container .ez-toc-heading-level-2 > .ez-toc-link {
  font-weight: 700;
}
@media screen and (min-width: 768px) {
  .l-single .p-single__content #ez-toc-container .ez-toc-list-level-3 {
    padding-left: min(20px, 1.5625vw);
  }
}
@media screen and (max-width: 767px) {
  .l-single .p-single__content #ez-toc-container .ez-toc-list-level-3 {
    padding-left: 4vw;
  }
}
.l-single .p-single__content #ez-toc-container .ez-toc-heading-level-3 {
  counter-increment: toc-h3;
}
@media screen and (min-width: 768px) {
  .l-single .p-single__content #ez-toc-container .ez-toc-heading-level-3::before {
    font-size: clamp(8px, 1.25vw, 16px);
    line-height: 1.875;
    letter-spacing: 0em;
    font-weight: 400;
  }
}
@media screen and (max-width: 767px) {
  .l-single .p-single__content #ez-toc-container .ez-toc-heading-level-3::before {
    font-size: calc(28 / 750 * 100vw);
    line-height: 1.875;
    letter-spacing: 0em;
    font-weight: 400;
  }
}
.l-single .p-single__content #ez-toc-container .ez-toc-heading-level-3::before {
  content: counter(toc-h2) "." counter(toc-h3) " ";
  margin-right: 0.25em;
}
.l-single .p-single__content h2 {
  border-left: 4px solid #284F78;
}
@media screen and (min-width: 768px) {
  .l-single .p-single__content h2 {
    font-size: clamp(13px, 2.03125vw, 26px);
    line-height: 1.5;
    letter-spacing: 0em;
    font-weight: 700;
  }
}
@media screen and (max-width: 767px) {
  .l-single .p-single__content h2 {
    font-size: calc(44 / 750 * 100vw);
    line-height: 1.5;
    letter-spacing: 0em;
    font-weight: 700;
  }
}
@media screen and (min-width: 768px) {
  .l-single .p-single__content h2 {
    padding-left: min(20px, 1.5625vw);
    margin: min(60px, 4.6875vw) 0 min(30px, 2.34375vw);
  }
}
@media screen and (max-width: 767px) {
  .l-single .p-single__content h2 {
    padding-left: 4vw;
    margin: 12vw 0 6vw;
  }
}
.l-single .p-single__content h3 {
  border-bottom: 1px solid #284F78;
}
@media screen and (min-width: 768px) {
  .l-single .p-single__content h3 {
    font-size: clamp(11px, 1.71875vw, 22px);
    line-height: 1.5;
    letter-spacing: 0em;
    font-weight: 700;
  }
}
@media screen and (max-width: 767px) {
  .l-single .p-single__content h3 {
    font-size: calc(38 / 750 * 100vw);
    line-height: 1.5;
    letter-spacing: 0em;
    font-weight: 700;
  }
}
@media screen and (min-width: 768px) {
  .l-single .p-single__content h3 {
    padding-bottom: min(8px, 0.625vw);
    margin: min(40px, 3.125vw) 0 min(15px, 1.171875vw);
  }
}
@media screen and (max-width: 767px) {
  .l-single .p-single__content h3 {
    padding-bottom: 1.6vw;
    margin: 8vw 0 4vw;
  }
}
@media screen and (min-width: 768px) {
  .l-single .p-single__content p {
    font-size: clamp(8px, 1.25vw, 16px);
    line-height: 1.875;
    letter-spacing: 0em;
    font-weight: 400;
  }
}
@media screen and (max-width: 767px) {
  .l-single .p-single__content p {
    font-size: calc(28 / 750 * 100vw);
    line-height: 1.875;
    letter-spacing: 0em;
    font-weight: 400;
  }
}
.l-single .p-single__content p {
  margin-bottom: 1em;
}
.l-single .p-single__content p a {
  color: #284F78;
  text-decoration: underline;
}
@media screen and (min-width: 768px) {
  .l-single .p-single__content p a:hover {
    opacity: 0.7;
  }
}
.l-single .p-single__content ul.wp-block-list {
  padding-left: 1em;
  list-style-type: disc;
  margin: 1em 0;
}
.l-single .p-single__content ol.wp-block-list {
  padding-left: 1em;
  list-style-type: decimal;
  margin: 1em 0;
}
@media screen and (min-width: 768px) {
  .l-single .p-single__content .wp-block-list li {
    font-size: clamp(8px, 1.25vw, 16px);
    line-height: 1.875;
    letter-spacing: 0em;
    font-weight: 400;
  }
}
@media screen and (max-width: 767px) {
  .l-single .p-single__content .wp-block-list li {
    font-size: calc(28 / 750 * 100vw);
    line-height: 1.875;
    letter-spacing: 0em;
    font-weight: 400;
  }
}
.l-single .p-single__content .wp-block-list li:not(:last-of-type) {
  margin-bottom: 0.25em;
}
.l-single .p-single__content .wp-block-list li a {
  color: #284F78;
  text-decoration: underline;
}
@media screen and (min-width: 768px) {
  .l-single .p-single__content .wp-block-list li a:hover {
    opacity: 0.7;
  }
}
.l-single .p-single__content blockquote {
  position: relative;
  padding: 30px 15px 8px 15px;
  font-style: italic;
  background: #EFEFEF;
  color: #959595;
  margin: 1em 0;
}
@media screen and (min-width: 768px) {
  .l-single .p-single__content blockquote {
    padding: min(30px, 2.34375vw) min(16px, 1.25vw) min(16px, 1.25vw);
  }
}
@media screen and (max-width: 767px) {
  .l-single .p-single__content blockquote {
    padding: 6vw 3.2vw 3.2vw;
  }
}
.l-single .p-single__content blockquote::before, .l-single .p-single__content blockquote::after {
  display: inline-block;
  position: absolute;
  font-family: sans-serif;
  color: #cfcfcf;
  line-height: 1;
}
@media screen and (min-width: 768px) {
  .l-single .p-single__content blockquote::before, .l-single .p-single__content blockquote::after {
    font-size: min(40px, 3.125vw);
  }
}
@media screen and (max-width: 767px) {
  .l-single .p-single__content blockquote::before, .l-single .p-single__content blockquote::after {
    font-size: 8vw;
  }
}
.l-single .p-single__content blockquote::before {
  top: 0;
  left: 0;
  content: "“";
}
.l-single .p-single__content blockquote::after {
  bottom: 0;
  right: 0.25em;
  content: "”";
}
.l-single .p-single__content blockquote a {
  text-decoration: underline;
}
@media screen and (min-width: 768px) {
  .l-single .p-single__content blockquote a:hover {
    opacity: 0.7;
  }
}
.l-single .p-single__content .wp-element-caption {
  color: #959595;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .l-single .p-single__content .wp-element-caption {
    font-size: clamp(8px, 1.25vw, 16px);
    line-height: 1.875;
    letter-spacing: 0em;
    font-weight: 400;
  }
}
@media screen and (max-width: 767px) {
  .l-single .p-single__content .wp-element-caption {
    font-size: calc(28 / 750 * 100vw);
    line-height: 1.875;
    letter-spacing: 0em;
    font-weight: 400;
  }
}
@media screen and (min-width: 768px) {
  .l-single .p-related {
    padding: min(30px, 2.34375vw);
  }
}
@media screen and (max-width: 767px) {
  .l-single .p-related {
    padding: 4vw;
  }
}
.l-single .p-related__title {
  border-left: 4px solid #284F78;
}
@media screen and (min-width: 768px) {
  .l-single .p-related__title {
    font-size: clamp(13px, 2.03125vw, 26px);
    line-height: 1.5;
    letter-spacing: 0em;
    font-weight: 700;
  }
}
@media screen and (max-width: 767px) {
  .l-single .p-related__title {
    font-size: calc(44 / 750 * 100vw);
    line-height: 1.5;
    letter-spacing: 0em;
    font-weight: 700;
  }
}
@media screen and (min-width: 768px) {
  .l-single .p-related__title {
    padding-left: min(20px, 1.5625vw);
    margin-bottom: min(30px, 2.34375vw);
  }
}
@media screen and (max-width: 767px) {
  .l-single .p-related__title {
    padding-left: 4vw;
    margin-bottom: 6vw;
  }
}
@media screen and (min-width: 768px) {
  .l-single .p-related__list-item:not(:last-of-type) {
    margin-bottom: min(20px, 1.5625vw);
  }
}
@media screen and (max-width: 767px) {
  .l-single .p-related__list-item:not(:last-of-type) {
    margin-bottom: 4vw;
  }
}
.l-single .p-related__list-link {
  display: flex;
}
@media screen and (min-width: 768px) {
  .l-single .p-related__list-link {
    align-items: center;
    column-gap: min(20px, 1.5625vw);
  }
}
@media screen and (max-width: 767px) {
  .l-single .p-related__list-link {
    align-items: flex-start;
    column-gap: 4vw;
  }
}
@media screen and (min-width: 768px) {
  .l-single .p-related__list-thumb {
    width: min(180px, 14.0625vw);
  }
}
@media screen and (max-width: 767px) {
  .l-single .p-related__list-thumb {
    width: 32vw;
  }
}
.l-single .p-related__list-content {
  flex: 1;
}
@media screen and (min-width: 768px) {
  .l-single .p-related__list-heading {
    font-size: clamp(9px, 1.40625vw, 18px);
    line-height: 1.5;
    letter-spacing: 0em;
    font-weight: 700;
  }
}
@media screen and (max-width: 767px) {
  .l-single .p-related__list-heading {
    font-size: calc(30 / 750 * 100vw);
    line-height: 1.5;
    letter-spacing: 0em;
    font-weight: 700;
  }
}
.l-single .p-related__list-excerpt {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
  line-height: 1.5;
  margin-top: 0.25em;
}
@media screen and (max-width: 767px) {
  .l-single .p-related__list-excerpt {
    font-size: 3.4666666667vw;
  }
}
.l-single .p-contact {
  display: flex;
}
.l-single .p-contact__bg {
  width: 100%;
  position: relative;
  background: center/cover no-repeat url(../img/common/bg-contact.jpg);
}
@media screen and (min-width: 768px) {
  .l-single .p-contact__bg {
    height: min(400px, 31.25vw);
  }
}
@media screen and (max-width: 767px) {
  .l-single .p-contact__bg {
    padding: 13.3333333333vw 0;
  }
}
.l-single .p-contact__bg::before {
  position: absolute;
  content: "";
  display: block;
  background-color: rgba(40, 79, 120, 0.9);
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
}
.l-single .p-contact__inner {
  display: flex;
}
@media screen and (min-width: 768px) {
  .l-single .p-contact__inner {
    height: 100%;
    align-items: center;
    justify-content: space-between;
  }
}
@media screen and (max-width: 767px) {
  .l-single .p-contact__inner {
    flex-direction: column;
    row-gap: 6vw;
  }
}
.l-single .p-contact__inner .c-title-en, .l-single .p-contact__inner .c-title-jp {
  color: #fff;
}
.l-single .p-contact__text .c-text-l {
  color: #fff;
}
@media screen and (min-width: 768px) {
  .l-single .p-contact__text .c-text-l {
    margin-bottom: min(30px, 2.34375vw);
  }
}
@media screen and (max-width: 767px) {
  .l-single .p-contact__text .c-text-l {
    margin-bottom: 4vw;
  }
}

@media screen and (min-width: 768px) {
  .l-contact .p-contact {
    margin-bottom: min(120px, 9.375vw);
  }
}
@media screen and (max-width: 767px) {
  .l-contact .p-contact {
    margin-bottom: 16vw;
  }
}
.l-contact .p-contact__inner {
  margin: 0 auto;
}
@media screen and (min-width: 768px) {
  .l-contact .p-contact__inner {
    max-width: min(900px, 70.3125vw);
  }
}
@media screen and (max-width: 767px) {
  .l-contact .p-contact__inner {
    max-width: 92vw;
  }
}
@media screen and (min-width: 768px) {
  .l-contact .p-contact__form {
    margin-top: min(100px, 7.8125vw);
  }
}
@media screen and (max-width: 767px) {
  .l-contact .p-contact__form {
    margin-top: 13.3333333333vw;
  }
}
@media screen and (min-width: 768px) {
  .l-contact .p-contact__form-item {
    margin-bottom: min(40px, 3.125vw);
  }
}
@media screen and (max-width: 767px) {
  .l-contact .p-contact__form-item {
    margin-bottom: 8vw;
  }
}
.l-contact .p-contact__form-item input,
.l-contact .p-contact__form-item textarea {
  width: 100%;
  background-color: #EFEFEF;
  border: none;
  font-family: inherit;
  border-radius: 4px;
}
@media screen and (min-width: 768px) {
  .l-contact .p-contact__form-item input,
  .l-contact .p-contact__form-item textarea {
    font-size: clamp(8px, 1.25vw, 16px);
    line-height: 1.875;
    letter-spacing: 0em;
    font-weight: 400;
  }
}
@media screen and (max-width: 767px) {
  .l-contact .p-contact__form-item input,
  .l-contact .p-contact__form-item textarea {
    font-size: calc(28 / 750 * 100vw);
    line-height: 1.875;
    letter-spacing: 0em;
    font-weight: 400;
  }
}
@media screen and (min-width: 768px) {
  .l-contact .p-contact__form-item input {
    height: min(70px, 5.46875vw);
    padding: 0 min(20px, 1.5625vw);
  }
}
@media screen and (max-width: 767px) {
  .l-contact .p-contact__form-item input {
    height: 13.3333333333vw;
    padding: 0 4vw;
  }
}
.l-contact .p-contact__form-item textarea {
  resize: vertical;
}
@media screen and (min-width: 768px) {
  .l-contact .p-contact__form-item textarea {
    height: px-vra(200);
    padding: min(20px, 1.5625vw);
  }
}
@media screen and (max-width: 767px) {
  .l-contact .p-contact__form-item textarea {
    height: 40vw;
    padding: 4vw;
  }
}
.l-contact .p-contact__form-item ::placeholder {
  color: #959595;
}
.l-contact .p-contact__form-title {
  display: block;
}
@media screen and (min-width: 768px) {
  .l-contact .p-contact__form-title {
    font-size: clamp(8px, 1.25vw, 16px);
    line-height: 1.875;
    letter-spacing: 0em;
    font-weight: 400;
  }
}
@media screen and (max-width: 767px) {
  .l-contact .p-contact__form-title {
    font-size: calc(28 / 750 * 100vw);
    line-height: 1.875;
    letter-spacing: 0em;
    font-weight: 400;
  }
}
@media screen and (min-width: 768px) {
  .l-contact .p-contact__form-title {
    margin-bottom: min(8px, 0.625vw);
  }
}
@media screen and (max-width: 767px) {
  .l-contact .p-contact__form-title {
    margin-bottom: 1.6vw;
  }
}
.l-contact .p-contact__form-title .required {
  color: red;
}
.l-contact .p-contact__form-privacy {
  text-align: center;
}
@media screen and (min-width: 768px) {
  .l-contact .p-contact__form-privacy {
    margin-bottom: min(40px, 3.125vw);
  }
}
@media screen and (max-width: 767px) {
  .l-contact .p-contact__form-privacy {
    margin-bottom: 8vw;
  }
}
.l-contact .p-contact__form-privacy .wpcf7-list-item {
  margin: 0;
}
.l-contact .p-contact__form-privacy label {
  cursor: pointer;
}
@media screen and (min-width: 768px) {
  .l-contact .p-contact__form-privacy .wpcf7-list-item-label {
    font-size: clamp(8px, 1.25vw, 16px);
    line-height: 1.875;
    letter-spacing: 0em;
    font-weight: 400;
  }
}
@media screen and (max-width: 767px) {
  .l-contact .p-contact__form-privacy .wpcf7-list-item-label {
    font-size: calc(28 / 750 * 100vw);
    line-height: 1.875;
    letter-spacing: 0em;
    font-weight: 400;
  }
}
.l-contact .p-contact__form-privacy .wpcf7-list-item-label a {
  text-decoration: underline;
}
@media screen and (min-width: 768px) {
  .l-contact .p-contact__form-privacy .wpcf7-list-item-label a:hover {
    opacity: 0.7;
  }
}
.l-contact .p-contact__form-btn {
  width: max-content;
  margin: 0 auto;
}
.l-contact .p-contact__form-btn input {
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #fff;
  border: 1px solid #284F78;
  color: #284F78;
  font-family: "Noto Sans JP", sans-serif;
  transition: all 0.3s;
  padding: 0;
  margin: 0;
  cursor: pointer;
}
@media screen and (min-width: 768px) {
  .l-contact .p-contact__form-btn input {
    font-size: clamp(9px, 1.40625vw, 18px);
    line-height: 1;
    letter-spacing: 0em;
    font-weight: 700;
  }
}
@media screen and (max-width: 767px) {
  .l-contact .p-contact__form-btn input {
    font-size: calc(30 / 750 * 100vw);
    line-height: 1;
    letter-spacing: 0em;
    font-weight: 700;
  }
}
@media screen and (min-width: 768px) {
  .l-contact .p-contact__form-btn input {
    width: min(230px, 17.96875vw);
    height: min(60px, 4.6875vw);
  }
  .l-contact .p-contact__form-btn input:hover {
    background-color: #284F78;
    color: #fff;
  }
}
@media screen and (max-width: 767px) {
  .l-contact .p-contact__form-btn input {
    width: 46vw;
    height: 12vw;
  }
}
.l-contact .p-contact__form-btn input:disabled {
  pointer-events: none;
}
.l-contact .p-contact__form-btn .wpcf7-spinner {
  margin: 0;
  position: absolute;
  top: 50%;
  transform: translate(-50%, 110%);
}
@media screen and (min-width: 768px) {
  .l-contact .p-thanks {
    padding: min(120px, 9.375vw) 0;
  }
}
@media screen and (max-width: 767px) {
  .l-contact .p-thanks {
    padding: 16vw 0;
  }
}
@media screen and (min-width: 768px) {
  .l-contact .p-thanks .c-title02 {
    margin-bottom: min(40px, 3.125vw);
  }
}
@media screen and (max-width: 767px) {
  .l-contact .p-thanks .c-title02 {
    margin-bottom: 8vw;
  }
}
.l-contact .p-thanks__btn {
  display: flex;
}
@media screen and (min-width: 768px) {
  .l-contact .p-thanks__btn {
    justify-content: center;
    margin-top: min(60px, 4.6875vw);
    column-gap: min(40px, 3.125vw);
  }
}
@media screen and (max-width: 767px) {
  .l-contact .p-thanks__btn {
    flex-direction: column;
    align-items: center;
    margin-top: 12vw;
    row-gap: 4vw;
  }
}

@media screen and (min-width: 768px) {
  .l-pricacy .p-single__info {
    padding: min(30px, 2.34375vw);
  }
}
@media screen and (max-width: 767px) {
  .l-pricacy .p-single__info {
    padding: 4vw;
  }
}
.l-pricacy .p-single__info .post-categories {
  display: flex;
  flex-wrap: wrap;
}
@media screen and (min-width: 768px) {
  .l-pricacy .p-single__info .post-categories {
    margin-bottom: min(12px, 0.9375vw);
    gap: min(8px, 0.625vw);
  }
}
@media screen and (max-width: 767px) {
  .l-pricacy .p-single__info .post-categories {
    margin-bottom: 2.4vw;
    gap: 1.6vw;
  }
}
.l-pricacy .p-single__info .post-categories li a {
  display: inline-block;
  background-color: #284F78;
  color: #fff;
}
@media screen and (min-width: 768px) {
  .l-pricacy .p-single__info .post-categories li a {
    font-size: clamp(7px, 1.09375vw, 14px);
    line-height: 1.5;
    letter-spacing: 0em;
    font-weight: 400;
  }
}
@media screen and (max-width: 767px) {
  .l-pricacy .p-single__info .post-categories li a {
    font-size: calc(24 / 750 * 100vw);
    line-height: 1.5;
    letter-spacing: 0em;
    font-weight: 400;
  }
}
@media screen and (min-width: 768px) {
  .l-pricacy .p-single__info .post-categories li a {
    padding: min(4px, 0.3125vw) min(16px, 1.25vw);
  }
  .l-pricacy .p-single__info .post-categories li a:hover {
    opacity: 0.7;
  }
}
@media screen and (max-width: 767px) {
  .l-pricacy .p-single__info .post-categories li a {
    padding: 0.8vw 3.2vw;
  }
}
@media screen and (min-width: 768px) {
  .l-pricacy .p-single__info-title {
    font-size: clamp(16px, 2.5vw, 32px);
    line-height: 1.5;
    letter-spacing: 0em;
    font-weight: 700;
  }
}
@media screen and (max-width: 767px) {
  .l-pricacy .p-single__info-title {
    font-size: calc(48 / 750 * 100vw);
    line-height: 1.5;
    letter-spacing: 0em;
    font-weight: 700;
  }
}
@media screen and (min-width: 768px) {
  .l-pricacy .p-single__info-title {
    margin-bottom: min(12px, 0.9375vw);
  }
}
@media screen and (max-width: 767px) {
  .l-pricacy .p-single__info-title {
    margin-bottom: 2.4vw;
  }
}
.l-pricacy .p-single__info-date {
  color: #959595;
}
@media screen and (min-width: 768px) {
  .l-pricacy .p-single__info-date {
    font-size: clamp(7px, 1.09375vw, 14px);
    line-height: 1;
    letter-spacing: 0em;
    font-weight: 700;
  }
}
@media screen and (max-width: 767px) {
  .l-pricacy .p-single__info-date {
    font-size: calc(24 / 750 * 100vw);
    line-height: 1;
    letter-spacing: 0em;
    font-weight: 700;
  }
}
@media screen and (min-width: 768px) {
  .l-pricacy .p-single__content {
    padding: min(30px, 2.34375vw);
  }
}
@media screen and (max-width: 767px) {
  .l-pricacy .p-single__content {
    padding: 4vw;
  }
}
.l-pricacy .p-single__content #ez-toc-container {
  background-color: rgba(40, 79, 120, 0.1);
}
@media screen and (min-width: 768px) {
  .l-pricacy .p-single__content #ez-toc-container {
    padding: min(20px, 1.5625vw);
    margin-top: min(40px, 3.125vw);
  }
}
@media screen and (max-width: 767px) {
  .l-pricacy .p-single__content #ez-toc-container {
    padding: 4vw;
    margin-top: 8vw;
  }
}
.l-pricacy .p-single__content #ez-toc-container .ez-toc-title {
  text-align: center;
}
@media screen and (min-width: 768px) {
  .l-pricacy .p-single__content #ez-toc-container .ez-toc-title {
    font-size: clamp(10px, 1.5625vw, 20px);
    line-height: 1;
    letter-spacing: 0em;
    font-weight: 700;
  }
}
@media screen and (max-width: 767px) {
  .l-pricacy .p-single__content #ez-toc-container .ez-toc-title {
    font-size: calc(35 / 750 * 100vw);
    line-height: 1;
    letter-spacing: 0em;
    font-weight: 700;
  }
}
@media screen and (min-width: 768px) {
  .l-pricacy .p-single__content #ez-toc-container .ez-toc-link {
    font-size: clamp(8px, 1.25vw, 16px);
    line-height: 1.875;
    letter-spacing: 0em;
    font-weight: 400;
  }
}
@media screen and (max-width: 767px) {
  .l-pricacy .p-single__content #ez-toc-container .ez-toc-link {
    font-size: calc(28 / 750 * 100vw);
    line-height: 1.875;
    letter-spacing: 0em;
    font-weight: 400;
  }
}
@media screen and (min-width: 768px) {
  .l-pricacy .p-single__content #ez-toc-container .ez-toc-link:hover {
    opacity: 0.7;
  }
}
.l-pricacy .p-single__content #ez-toc-container .ez-toc-heading-level-2 {
  counter-increment: toc-h2;
  counter-reset: toc-h3;
}
@media screen and (min-width: 768px) {
  .l-pricacy .p-single__content #ez-toc-container .ez-toc-heading-level-2:not(:last-of-type) {
    margin-bottom: min(12px, 0.9375vw);
  }
}
@media screen and (max-width: 767px) {
  .l-pricacy .p-single__content #ez-toc-container .ez-toc-heading-level-2:not(:last-of-type) {
    margin-bottom: 2.4vw;
  }
}
.l-pricacy .p-single__content #ez-toc-container .ez-toc-heading-level-2::before {
  content: counter(toc-h2) ". ";
  font-weight: bold;
  margin-right: 0.25em;
}
@media screen and (min-width: 768px) {
  .l-pricacy .p-single__content #ez-toc-container .ez-toc-heading-level-2::before {
    font-size: clamp(8px, 1.25vw, 16px);
    line-height: 1.875;
    letter-spacing: 0em;
    font-weight: 700;
  }
}
@media screen and (max-width: 767px) {
  .l-pricacy .p-single__content #ez-toc-container .ez-toc-heading-level-2::before {
    font-size: calc(28 / 750 * 100vw);
    line-height: 1.875;
    letter-spacing: 0em;
    font-weight: 700;
  }
}
.l-pricacy .p-single__content #ez-toc-container .ez-toc-heading-level-2 > .ez-toc-link {
  font-weight: 700;
}
@media screen and (min-width: 768px) {
  .l-pricacy .p-single__content #ez-toc-container .ez-toc-list-level-3 {
    padding-left: min(20px, 1.5625vw);
  }
}
@media screen and (max-width: 767px) {
  .l-pricacy .p-single__content #ez-toc-container .ez-toc-list-level-3 {
    padding-left: 4vw;
  }
}
.l-pricacy .p-single__content #ez-toc-container .ez-toc-heading-level-3 {
  counter-increment: toc-h3;
}
@media screen and (min-width: 768px) {
  .l-pricacy .p-single__content #ez-toc-container .ez-toc-heading-level-3::before {
    font-size: clamp(8px, 1.25vw, 16px);
    line-height: 1.875;
    letter-spacing: 0em;
    font-weight: 400;
  }
}
@media screen and (max-width: 767px) {
  .l-pricacy .p-single__content #ez-toc-container .ez-toc-heading-level-3::before {
    font-size: calc(28 / 750 * 100vw);
    line-height: 1.875;
    letter-spacing: 0em;
    font-weight: 400;
  }
}
.l-pricacy .p-single__content #ez-toc-container .ez-toc-heading-level-3::before {
  content: counter(toc-h2) "." counter(toc-h3) " ";
  margin-right: 0.25em;
}
.l-pricacy .p-single__content h2 {
  border-left: 4px solid #284F78;
}
@media screen and (min-width: 768px) {
  .l-pricacy .p-single__content h2 {
    font-size: clamp(13px, 2.03125vw, 26px);
    line-height: 1.5;
    letter-spacing: 0em;
    font-weight: 700;
  }
}
@media screen and (max-width: 767px) {
  .l-pricacy .p-single__content h2 {
    font-size: calc(44 / 750 * 100vw);
    line-height: 1.5;
    letter-spacing: 0em;
    font-weight: 700;
  }
}
@media screen and (min-width: 768px) {
  .l-pricacy .p-single__content h2 {
    padding-left: min(20px, 1.5625vw);
    margin: min(60px, 4.6875vw) 0 min(30px, 2.34375vw);
  }
}
@media screen and (max-width: 767px) {
  .l-pricacy .p-single__content h2 {
    padding-left: 4vw;
    margin: 12vw 0 6vw;
  }
}
.l-pricacy .p-single__content h3 {
  border-bottom: 1px solid #284F78;
}
@media screen and (min-width: 768px) {
  .l-pricacy .p-single__content h3 {
    font-size: clamp(11px, 1.71875vw, 22px);
    line-height: 1.5;
    letter-spacing: 0em;
    font-weight: 700;
  }
}
@media screen and (max-width: 767px) {
  .l-pricacy .p-single__content h3 {
    font-size: calc(38 / 750 * 100vw);
    line-height: 1.5;
    letter-spacing: 0em;
    font-weight: 700;
  }
}
@media screen and (min-width: 768px) {
  .l-pricacy .p-single__content h3 {
    padding-bottom: min(8px, 0.625vw);
    margin: min(40px, 3.125vw) 0 min(15px, 1.171875vw);
  }
}
@media screen and (max-width: 767px) {
  .l-pricacy .p-single__content h3 {
    padding-bottom: 1.6vw;
    margin: 8vw 0 4vw;
  }
}
@media screen and (min-width: 768px) {
  .l-pricacy .p-single__content p {
    font-size: clamp(8px, 1.25vw, 16px);
    line-height: 1.875;
    letter-spacing: 0em;
    font-weight: 400;
  }
}
@media screen and (max-width: 767px) {
  .l-pricacy .p-single__content p {
    font-size: calc(28 / 750 * 100vw);
    line-height: 1.875;
    letter-spacing: 0em;
    font-weight: 400;
  }
}
.l-pricacy .p-single__content p {
  margin-bottom: 1em;
}
.l-pricacy .p-single__content p a {
  color: #284F78;
  text-decoration: underline;
}
@media screen and (min-width: 768px) {
  .l-pricacy .p-single__content p a:hover {
    opacity: 0.7;
  }
}
.l-pricacy .p-single__content ul.wp-block-list {
  padding-left: 1em;
  list-style-type: disc;
  margin: 1em 0;
}
.l-pricacy .p-single__content ol.wp-block-list {
  padding-left: 1em;
  list-style-type: decimal;
  margin: 1em 0;
}
@media screen and (min-width: 768px) {
  .l-pricacy .p-single__content .wp-block-list li {
    font-size: clamp(8px, 1.25vw, 16px);
    line-height: 1.875;
    letter-spacing: 0em;
    font-weight: 400;
  }
}
@media screen and (max-width: 767px) {
  .l-pricacy .p-single__content .wp-block-list li {
    font-size: calc(28 / 750 * 100vw);
    line-height: 1.875;
    letter-spacing: 0em;
    font-weight: 400;
  }
}
.l-pricacy .p-single__content .wp-block-list li:not(:last-of-type) {
  margin-bottom: 0.25em;
}
.l-pricacy .p-single__content .wp-block-list li a {
  color: #284F78;
  text-decoration: underline;
}
@media screen and (min-width: 768px) {
  .l-pricacy .p-single__content .wp-block-list li a:hover {
    opacity: 0.7;
  }
}
.l-pricacy .p-single__content blockquote {
  position: relative;
  padding: 30px 15px 8px 15px;
  font-style: italic;
  background: #EFEFEF;
  color: #959595;
  margin: 1em 0;
}
@media screen and (min-width: 768px) {
  .l-pricacy .p-single__content blockquote {
    padding: min(30px, 2.34375vw) min(16px, 1.25vw) min(16px, 1.25vw);
  }
}
@media screen and (max-width: 767px) {
  .l-pricacy .p-single__content blockquote {
    padding: 6vw 3.2vw 3.2vw;
  }
}
.l-pricacy .p-single__content blockquote::before, .l-pricacy .p-single__content blockquote::after {
  display: inline-block;
  position: absolute;
  font-family: sans-serif;
  color: #cfcfcf;
  line-height: 1;
}
@media screen and (min-width: 768px) {
  .l-pricacy .p-single__content blockquote::before, .l-pricacy .p-single__content blockquote::after {
    font-size: min(40px, 3.125vw);
  }
}
@media screen and (max-width: 767px) {
  .l-pricacy .p-single__content blockquote::before, .l-pricacy .p-single__content blockquote::after {
    font-size: 8vw;
  }
}
.l-pricacy .p-single__content blockquote::before {
  top: 0;
  left: 0;
  content: "“";
}
.l-pricacy .p-single__content blockquote::after {
  bottom: 0;
  right: 0.25em;
  content: "”";
}
.l-pricacy .p-single__content blockquote a {
  text-decoration: underline;
}
@media screen and (min-width: 768px) {
  .l-pricacy .p-single__content blockquote a:hover {
    opacity: 0.7;
  }
}
.l-pricacy .p-single__content .wp-element-caption {
  color: #959595;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .l-pricacy .p-single__content .wp-element-caption {
    font-size: clamp(8px, 1.25vw, 16px);
    line-height: 1.875;
    letter-spacing: 0em;
    font-weight: 400;
  }
}
@media screen and (max-width: 767px) {
  .l-pricacy .p-single__content .wp-element-caption {
    font-size: calc(28 / 750 * 100vw);
    line-height: 1.875;
    letter-spacing: 0em;
    font-weight: 400;
  }
}

@media screen and (max-width: 767px) {
  .is-pc {
    display: none;
  }
}

@media screen and (min-width: 768px) {
  .is-sp {
    display: none;
  }
}

/* animation */
[data-module=FadeIn] {
  opacity: 0;
  transform: translate3d(0, 100px, 0);
  transition-timing-function: ease-out;
  transition-property: opacity, transform;
  transition-duration: 0.6s;
}

[data-module=FadeIn].is-FadeIn {
  opacity: 1;
  transform: translateZ(0);
}