@import url("https://cdn.jsdelivr.net/npm/destyle.css@4.0.0/destyle.min.css");
@import url("https://unpkg.com/tailwindcss@^2/dist/tailwind.min.css");
* {
  background-repeat: no-repeat;
}

@media (prefers-color-scheme: dark) {
  body::-webkit-scrollbar {
    background-color: #fff;
  }
  body::-webkit-scrollbar-thumb {
    background: #d6d6d6;
    border-radius: 6px;
    border-right: 3px solid transparent;
    border-left: 3px solid transparent;
    background-clip: padding-box;
  }
  ::-webkit-scrollbar-track {
    margin-top: 3px;
    margin-bottom: 3px;
  }
}
@media screen and (min-width: 600px) {
  a[href^="tel:"] {
    pointer-events: none;
  }
}
html {
  height: 100%;
  font-size: 62.5%;
}

body {
  /* height: 100%;
  height: 100dvh; */
  height: 100svh;
}
body:not(.home) {
  margin: 5.556vw 0 0 0;
}
@media screen and (max-width: 1023px) {
  body:not(.home) {
    margin: 7.813vw 0 0 0;
  }
}
@media screen and (max-width: 599px) {
  body:not(.home) {
    margin: 15.385vw 0 0 0;
  }
}

body, input, select, textarea {
  font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, "MS PGothic", sans-serif;
  line-height: 1.45;
  font-size: 1.111vw;
  width: 100%;
  color: #555555;
  background-color: #F6F6F6;
}
@media screen and (max-width: 1023px) {
  body, input, select, textarea {
    font-size: 2.083vw;
  }
}
@media screen and (max-width: 599px) {
  body, input, select, textarea {
    font-size: 4.103vw;
  }
}

input, select, textarea {
  background-color: #ffffff;
}

.body-wrap {
  overflow-x: hidden;
}

body.fixed {
  position: fixed;
  width: 100%;
}

.main {
  padding: 0 0 11.111vw 0;
}
@media screen and (max-width: 1023px) {
  .main {
    padding: 0 0 15.625vw 0;
  }
}
@media screen and (max-width: 599px) {
  .main {
    padding: 0 0 30.769vw 0;
  }
}
.main.--pb-none {
  padding-bottom: 0;
}

a {
  color: #555555;
}
a.hover:hover {
  opacity: 0.7;
}

p {
  margin: 2.778vw 0;
}
@media screen and (max-width: 1023px) {
  p {
    margin: 5.208vw 0;
  }
}
@media screen and (max-width: 599px) {
  p {
    margin: 10.256vw 0;
  }
}

strong {
  font-weight: 700;
}

hr {
  width: 100%;
  height: 1px;
  background-color: #999999;
  margin: 4.167vw 0;
}
@media screen and (max-width: 1023px) {
  hr {
    margin: 7.813vw 0;
  }
}
@media screen and (max-width: 599px) {
  hr {
    margin: 15.385vw 0;
  }
}

.l-wrap {
  max-width: 68.056vw;
  margin-left: auto;
  margin-right: auto;
}
.l-wrap > *:first-child {
  margin-top: 0;
}
.l-wrap > *:last-child {
  margin-bottom: 0;
}
@media screen and (max-width: 1023px) {
  .l-wrap {
    max-width: 100%;
    padding: 0 2.604vw;
  }
}
@media screen and (max-width: 599px) {
  .l-wrap {
    padding: 0 5.128vw;
  }
}
.l-wrap.--large {
  max-width: 88.889vw;
}
.l-wrap.--middle {
  max-width: 55.556vw;
}
.l-wrap.--small {
  max-width: 34.722vw;
}
@media screen and (max-width: 1023px) {
  .l-wrap.--small {
    max-width: 100%;
  }
}
.l-wrap.--padding-none {
  padding: 0;
}

.l-section {
  padding: 11.111vw 0 0;
}
.l-section.--pb {
  padding-bottom: 11.111vw;
}
@media screen and (max-width: 1023px) {
  .l-section {
    padding: 15.625vw 0;
  }
  .l-section.--pb {
    padding-bottom: 15.625vw;
  }
}
@media screen and (max-width: 599px) {
  .l-section {
    padding: 30.769vw 0;
  }
  .l-section.--pb {
    padding-bottom: 30.769vw;
  }
}
.l-section > *:first-child {
  margin-top: 0;
}
.l-section > *:last-child {
  margin-bottom: 0;
}
.l-section.--large {
  padding: 12.5vw 0 0;
}
.l-section.--large.--pb {
  padding-bottom: 12.5vw;
}
.l-section.--middle {
  padding: 6.25vw 0 0;
}
.l-section.--middle.--pb {
  padding-bottom: 6.25vw;
}
@media screen and (max-width: 1023px) {
  .l-section.--middle {
    padding: 9.115vw 0 0;
  }
  .l-section.--middle.--pb {
    padding-bottom: 9.115vw;
  }
}
@media screen and (max-width: 599px) {
  .l-section.--middle {
    padding: 17.949vw 0 0;
  }
  .l-section.--middle.--pb {
    padding-bottom: 17.949vw;
  }
}
.l-section.--small {
  padding: 2.778vw 0 0;
}
.l-section.--small.--pb {
  padding-bottom: 2.778vw;
}
@media screen and (max-width: 1023px) {
  .l-section.--small {
    padding: 5.208vw 0 0;
  }
}
@media screen and (max-width: 599px) {
  .l-section.--small {
    padding: 10.256vw 0 0;
  }
}
.l-section.--pt-0 {
  padding-top: 0;
}
.l-section.--pb-0 {
  padding-bottom: 0;
}

.l-header {
  position: fixed;
  left: 50%;
  top: 0;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  z-index: 100;
  width: 100%;
}

.l-header__inner {
  max-width: 88.889vw;
  height: 5.556vw;
  margin: 0 auto;
}
@media screen and (max-width: 1023px) {
  .l-header__inner {
    max-width: inherit;
    height: 7.813vw;
    padding: 0 1.953vw 0 0.521vw;
  }
}
@media screen and (max-width: 599px) {
  .l-header__inner {
    height: 15.385vw;
    padding: 0 3.846vw 0 1.026vw;
  }
}

.c-heading2-01 {
  margin: 0 0 4.167vw;
  text-align: center;
}
.c-heading2-01.--v-02 {
  margin: 0 0 2.083vw;
}
@media screen and (max-width: 1023px) {
  .c-heading2-01 {
    margin: 0 0 7.813vw;
  }
  .c-heading2-01.--v-02 {
    margin: 0 0 3.906vw;
  }
}
@media screen and (max-width: 599px) {
  .c-heading2-01 {
    margin: 0 0 15.385vw;
  }
  .c-heading2-01.--v-02 {
    margin: 0 0 7.692vw;
  }
}

.c-heading2-01__ja {
  font-size: 2.222vw;
  font-weight: 700;
}
@media screen and (max-width: 1023px) {
  .c-heading2-01__ja {
    font-size: 4.167vw;
  }
}
@media screen and (max-width: 599px) {
  .c-heading2-01__ja {
    font-size: 8.205vw;
  }
}

.c-heading2-01__en {
  font-size: 0.972vw;
  font-family: "Sarpanch";
  color: #999999;
  margin: 0.278vw 0 0 0;
}
@media screen and (max-width: 1023px) {
  .c-heading2-01__en {
    font-size: 1.823vw;
    margin: 0.521vw 0 0 0;
  }
}
@media screen and (max-width: 599px) {
  .c-heading2-01__en {
    font-size: 3.59vw;
    margin: 1.026vw 0 0 0;
  }
}

.c-heading2-02 {
  margin: 0 0 2.778vw 0;
}
.c-heading2-02::after {
  content: "";
  display: block;
  margin: 0.833vw 0 0 0;
  height: 2px;
  background: -webkit-linear-gradient(left, #005098 0%, #005098 40px, #D9D9D9 40px, #D9D9D9 100%);
  background: linear-gradient(90deg, #005098 0%, #005098 40px, #D9D9D9 40px, #D9D9D9 100%);
}
@media screen and (max-width: 1023px) {
  .c-heading2-02 {
    margin: 0 0 5.208vw 0;
  }
  .c-heading2-02::after {
    margin: 1.563vw 0 0 0;
  }
}
@media screen and (max-width: 599px) {
  .c-heading2-02 {
    margin: 0 0 10.256vw 0;
  }
  .c-heading2-02::after {
    margin: 3.077vw 0 0 0;
  }
}

.c-heading2-02__heading {
  font-size: 1.667vw;
  font-weight: 700;
}
@media screen and (max-width: 1023px) {
  .c-heading2-02__heading {
    font-size: 3.125vw;
  }
}
@media screen and (max-width: 599px) {
  .c-heading2-02__heading {
    font-size: 6.154vw;
  }
}

.c-heading3-01 {
  margin: 0 0 1.736vw;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end;
  gap: 0 0.556vw;
}
@media screen and (max-width: 1023px) {
  .c-heading3-01 {
    margin: 0 0 3.255vw;
    gap: 0 1.042vw;
  }
}
@media screen and (max-width: 599px) {
  .c-heading3-01 {
    margin: 0 0 6.41vw;
    gap: 0 2.051vw;
  }
}

.c-heading3-01__ja {
  font-size: 1.667vw;
  font-weight: 700;
}
@media screen and (max-width: 1023px) {
  .c-heading3-01__ja {
    font-size: 3.125vw;
  }
}
@media screen and (max-width: 599px) {
  .c-heading3-01__ja {
    font-size: 6.154vw;
  }
}

.c-heading3-01__en {
  font-size: 0.833vw;
  font-family: "Sarpanch";
}
@media screen and (max-width: 1023px) {
  .c-heading3-01__en {
    font-size: 1.563vw;
  }
}
@media screen and (max-width: 599px) {
  .c-heading3-01__en {
    font-size: 3.077vw;
  }
}

.c-text-01 {
  font-size: 1.389vw;
  font-weight: 700;
  margin-top: 1.389vw;
}
@media screen and (max-width: 1023px) {
  .c-text-01 {
    font-size: 2.604vw;
    margin-top: 2.604vw;
  }
}
@media screen and (max-width: 599px) {
  .c-text-01 {
    font-size: 5.128vw;
    margin-top: 5.128vw;
  }
}

.c-text-02 {
  font-weight: 700;
  margin-top: 4.167vw;
}
@media screen and (max-width: 1023px) {
  .c-text-02 {
    margin-top: 7.813vw;
  }
}
@media screen and (max-width: 599px) {
  .c-text-02 {
    margin-top: 15.385vw;
  }
}

.c-img-bg-01 {
  overflow: hidden;
  height: 48.611vw;
}
.c-img-bg-01 img {
  width: 100%;
}
@media screen and (max-width: 1023px) {
  .c-img-bg-01 {
    height: 52.083vw;
  }
}
@media screen and (max-width: 599px) {
  .c-img-bg-01 {
    height: 102.564vw;
  }
}

.c-img-bg-02 {
  position: relative;
  overflow: hidden;
}
.c-img-bg-02 img {
  width: 100%;
  position: absolute;
  left: 0;
  bottom: 0;
  z-index: -1;
}

.c-img-hover-01 {
  overflow: hidden;
}
.c-img-hover-01 img {
  -webkit-transition: -webkit-transform 0.2s;
  transition: -webkit-transform 0.2s;
  transition: transform 0.2s;
  transition: transform 0.2s, -webkit-transform 0.2s;
}
.c-img-hover-01:hover img {
  -webkit-transform: scale(1.08);
          transform: scale(1.08);
}

.c-button-01 {
  margin: 5.556vw 0 0 0;
}
@media screen and (max-width: 1023px) {
  .c-button-01 {
    margin: 10.417vw 0 0 0;
  }
}
@media screen and (max-width: 599px) {
  .c-button-01 {
    margin: 20.513vw 0 0 0;
  }
}
.c-button-01 a,
.c-button-01 input {
  position: relative;
  overflow: hidden;
  background-color: #005098;
  border: 2px solid #005098;
  border-radius: 6.944vw;
  width: 20.833vw;
  height: 3.889vw;
  margin: 0 auto;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (max-width: 1023px) {
  .c-button-01 a,
.c-button-01 input {
    width: 39.063vw;
    height: 7.292vw;
  }
}
@media screen and (max-width: 599px) {
  .c-button-01 a,
.c-button-01 input {
    width: 76.923vw;
    height: 14.359vw;
  }
}
.c-button-01 a::before,
.c-button-01 input::before {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 0;
  height: 100%;
  background-color: #ffffff;
  -webkit-transition: width 0.2s;
  transition: width 0.2s;
}
.c-button-01 a span,
.c-button-01 input span {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
  color: #ffffff;
  font-weight: 700;
  background-image: url(../img/common/aroow-right_01.svg);
  background-size: 0.556vw auto;
  background-position: right 1.389vw center;
  z-index: 1;
  -webkit-transition: color 0.3s;
  transition: color 0.3s;
}
@media screen and (max-width: 1023px) {
  .c-button-01 a span,
.c-button-01 input span {
    background-size: 1.042vw auto;
    background-position: right 2.604vw center;
  }
}
@media screen and (max-width: 599px) {
  .c-button-01 a span,
.c-button-01 input span {
    background-size: 2.051vw auto;
    background-position: right 5.128vw center;
  }
}
.c-button-01 a:hover::before,
.c-button-01 input:hover::before {
  width: 100%;
}
.c-button-01 a:hover span,
.c-button-01 input:hover span {
  color: #005098;
  background-image: url(../img/common/aroow-right_01-02.svg);
}
.c-button-01 input {
  background-image: url(../img/common/aroow-right_01.svg);
  background-repeat: no-repeat;
  background-size: 0.556vw auto;
  background-position: right 1.389vw center;
}
@media screen and (max-width: 1023px) {
  .c-button-01 input {
    background-size: 1.042vw auto;
    background-position: right 2.604vw center;
  }
}
@media screen and (max-width: 599px) {
  .c-button-01 input {
    background-size: 2.051vw auto;
    background-position: right 5.128vw center;
  }
}
.c-button-01.--yellow a,
.c-button-01.--yellow input {
  background-color: #FFCD00;
  border: 2px solid #FFCD00;
}
.c-button-01.--yellow a:hover span,
.c-button-01.--yellow input:hover span {
  color: #FFCD00;
  background-image: url(../img/common/aroow-right_01-03.svg);
}
.c-button-01.--return a,
.c-button-01.--return input {
  background-color: #F6F6F6;
  border: 2px solid #F6F6F6;
}
.c-button-01.--return a span,
.c-button-01.--return input span {
  color: #555555;
  background-image: url(../img/common/aroow-left_01-03.svg);
  background-position: left 1.389vw center;
}
.c-button-01.--return input {
  color: #555555;
  background-image: url(../img/common/aroow-left_01-03.svg);
  background-position: left 1.389vw center;
}
@media screen and (max-width: 1023px) {
  .c-button-01.--return input {
    background-position: left 2.604vw center;
  }
}
@media screen and (max-width: 599px) {
  .c-button-01.--return input {
    background-position: left 5.128vw center;
  }
}
.c-button-01.--top-small {
  margin: 2.778vw 0 0 0;
}
@media screen and (max-width: 1023px) {
  .c-button-01.--top-small {
    margin: 5.208vw 0 0 0;
  }
}
@media screen and (max-width: 599px) {
  .c-button-01.--top-small {
    margin: 10.256vw 0 0 0;
  }
}
.c-button-01.--full a {
  width: 100%;
}

.c-link-01 {
  margin: 2.778vw 0 0 0;
  text-align: right;
}
.c-link-01.--top-small {
  margin: 1.389vw 0 0 0;
}
.c-link-01.--left {
  text-align: left;
}
.c-link-01 a {
  color: #005098;
  font-weight: 700;
}
.c-link-01 a::after {
  content: "";
  display: inline-block;
  vertical-align: middle;
  width: 2.778vw;
  height: 2.778vw;
  background-image: url(../img/common/aroow-right_02.svg);
  background-size: 2.778vw auto;
  margin: 0 0 0 0.833vw;
}
.c-link-01 a:hover::after {
  background-image: url(../img/common/aroow-right_02-02.svg);
}
@media screen and (max-width: 1023px) {
  .c-link-01 {
    margin: 5.208vw 0 0 0;
  }
  .c-link-01.--top-small {
    margin: 2.604vw 0 0 0;
  }
  .c-link-01 a::after {
    width: 5.208vw;
    height: 5.208vw;
    background-size: 5.208vw auto;
    margin: 0 0 0 1.563vw;
  }
}
@media screen and (max-width: 599px) {
  .c-link-01 {
    margin: 10.256vw 0 0 0;
  }
  .c-link-01.--top-small {
    margin: 5.128vw 0 0 0;
  }
  .c-link-01 a::after {
    width: 10.256vw;
    height: 10.256vw;
    background-size: 10.256vw auto;
    margin: 0 0 0 3.077vw;
  }
}

.c-list-01 li {
  background-image: url(../img/common/icon-square_01.svg);
  background-position: left top 1px;
  background-size: 1.389vw auto;
  padding: 0 0 0 1.667vw;
  font-weight: 700;
}
.c-list-01 li + li {
  margin: 0.556vw 0 0;
}
.c-list-01 li a {
  color: #005098;
  text-decoration: underline;
}
.c-list-01 li a:hover {
  text-decoration: none;
}
@media screen and (max-width: 1023px) {
  .c-list-01 li {
    background-size: 2.604vw auto;
    padding: 0 0 0 3.125vw;
  }
  .c-list-01 li + li {
    margin: 1.042vw 0 0;
  }
}
@media screen and (max-width: 599px) {
  .c-list-01 li {
    background-size: 5.128vw auto;
    padding: 0 0 0 6.154vw;
  }
  .c-list-01 li + li {
    margin: 2.051vw 0 0;
  }
}

.c-list-02 {
  margin: 4.167vw 0 0 0;
}
.c-list-02 li {
  text-indent: -1em;
  padding-left: 1em;
}
@media screen and (max-width: 1023px) {
  .c-list-02 {
    margin: 7.813vw 0 0 0;
  }
}
@media screen and (max-width: 599px) {
  .c-list-02 {
    margin: 15.385vw 0 0 0;
  }
}

.c-list-03 > dl {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding: 0.556vw 0;
  border-bottom: 1px solid #D9D9D9;
}
.c-list-03 > dl > dt {
  width: 8.611vw;
  background-color: #005098;
  color: #ffffff;
  padding: 0.694vw 0;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  text-align: center;
}
.c-list-03 > dl > dd {
  -webkit-box-flex: 1;
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
  padding: 0.694vw 0 0.694vw 1.111vw;
}
@media screen and (max-width: 1023px) {
  .c-list-03 > dl {
    padding: 1.042vw 0;
  }
  .c-list-03 > dl > dt {
    width: 11.719vw;
    padding: 1.302vw 0;
  }
  .c-list-03 > dl > dd {
    padding: 1.302vw 0 1.302vw 2.083vw;
  }
}
@media screen and (max-width: 599px) {
  .c-list-03 > dl {
    padding: 2.051vw 0;
  }
  .c-list-03 > dl > dt {
    width: 23.077vw;
    padding: 2.564vw 0;
  }
  .c-list-03 > dl > dd {
    padding: 2.564vw 0 2.564vw 4.103vw;
  }
}

.c-list-04 > dl {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding: 0.278vw 0;
}
.c-list-04 > dl > dt {
  width: 8.611vw;
  background-color: #E0F0FF;
  padding: 0.694vw 0.833vw;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
.c-list-04 > dl > dd {
  -webkit-box-flex: 1;
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
  padding: 0.694vw 0 0.694vw 1.111vw;
}
@media screen and (max-width: 1023px) {
  .c-list-04 > dl {
    padding: 0.521vw 0;
  }
  .c-list-04 > dl > dt {
    width: 11.719vw;
    padding: 1.302vw 1.563vw;
  }
  .c-list-04 > dl > dd {
    -webkit-box-flex: 1;
    -webkit-flex: 1;
        -ms-flex: 1;
            flex: 1;
    padding: 1.302vw 0 1.302vw 2.083vw;
  }
  .c-list-04.--v-02 > dl > dt {
    width: 16.146vw;
  }
}
@media screen and (max-width: 599px) {
  .c-list-04 > dl {
    padding: 1.026vw 0;
  }
  .c-list-04 > dl > dt {
    width: 23.077vw;
    padding: 2.564vw 3.077vw;
  }
  .c-list-04 > dl > dd {
    padding: 2.564vw 0 2.564vw 4.103vw;
  }
  .c-list-04.--v-02 > dl > dt {
    width: 31.795vw;
  }
}

.c-list-05 {
  counter-reset: count 0;
}
.c-list-05 li {
  padding-left: 1.15em;
  text-indent: -1.15em;
}
.c-list-05 li::before {
  content: counter(count) ". ";
  counter-increment: count 1;
}

.c-bg-01 {
  background: -webkit-linear-gradient(top, #F6F6F6 0%, #F6F6F6 100px, #005098 100px, #005098 100%);
  background: linear-gradient(180deg, #F6F6F6 0%, #F6F6F6 100px, #005098 100px, #005098 100%);
}

.c-bg-blue {
  background-color: #E0F0FF;
}

.c-bg-white {
  background-color: #ffffff;
}

.c-map-wrap {
  overflow: hidden;
  height: 34.722vw;
  position: relative;
}
.c-map-wrap iframe {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 100%;
  height: 62.5vw;
}
@media screen and (max-width: 1023px) {
  .c-map-wrap {
    height: 45.573vw;
  }
  .c-map-wrap iframe {
    height: 97.656vw;
  }
}
@media screen and (max-width: 599px) {
  .c-map-wrap {
    height: 89.744vw;
  }
  .c-map-wrap iframe {
    height: 192.308vw;
  }
}

.c-hidden-pc {
  display: none;
}
@media screen and (max-width: 1023px) {
  .c-hidden-pc {
    display: block;
  }
}

@media screen and (max-width: 1023px) {
  .c-hidden-sp {
    display: none;
  }
}

.c-inview-01,
.c-inview-02,
.c-inview-03 {
  opacity: 0;
  -webkit-transform: translateY(30px);
          transform: translateY(30px);
  -webkit-transition: opacity 1.5s, -webkit-transform 1.5s;
  transition: opacity 1.5s, -webkit-transform 1.5s;
  transition: opacity 1.5s, transform 1.5s;
  transition: opacity 1.5s, transform 1.5s, -webkit-transform 1.5s;
}
.c-inview-01.is-inview,
.c-inview-02.is-inview,
.c-inview-03.is-inview {
  opacity: 1;
  -webkit-transform: translateY(0);
          transform: translateY(0);
}

.c-inview-01.is-inview {
  -webkit-transition-delay: 0.3s;
          transition-delay: 0.3s;
}

.c-inview-02.is-inview {
  -webkit-transition-delay: 1.3s;
          transition-delay: 1.3s;
}

.c-inview-03.is-inview {
  -webkit-transition-delay: 2.3s;
          transition-delay: 2.3s;
}

.c-inview-04 {
  opacity: 0;
  -webkit-transition: opacity 1.5s;
  transition: opacity 1.5s;
}
.c-inview-04.is-inview {
  opacity: 1;
  -webkit-transition-delay: 0.5s;
          transition-delay: 0.5s;
}

.p-header {
  background-color: #ffffff;
  -webkit-box-shadow: 2px 2px 20px rgba(0, 0, 0, 0.05);
          box-shadow: 2px 2px 20px rgba(0, 0, 0, 0.05);
}
.home .p-header {
  background: none;
  -webkit-box-shadow: none;
          box-shadow: none;
  -webkit-transition: background 0.5s;
  transition: background 0.5s;
}
.home .p-header.--sticky {
  background: #ffffff;
  -webkit-box-shadow: 2px 2px 20px rgba(0, 0, 0, 0.05);
          box-shadow: 2px 2px 20px rgba(0, 0, 0, 0.05);
}
.home .p-header.--sticky .p-header__logo__logo .sticky-off {
  display: none;
}
.home .p-header.--sticky .p-header__logo__logo .sticky-on {
  display: block;
}
.home .p-header.--sticky .p-header__logo__text {
  color: #005098;
}
.home .p-header.--sticky .p-header__navi__list li a {
  color: #555555;
}
.home .p-header.--sticky .p-header__navi__list li a::after {
  background-color: #005098;
}
.home .p-header.--sticky .p-header__menu-open span {
  background-color: #005098;
}

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

.p-header__logo {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.p-header__logo__logo .sticky-on {
  display: none;
}
@media screen and (max-width: 1023px) {
  .p-header__logo__logo img {
    width: 15.104vw;
  }
}
@media screen and (max-width: 599px) {
  .p-header__logo__logo img {
    width: 29.744vw;
  }
}

.p-header__logo__text {
  color: #005098;
  font-size: 0.972vw;
  font-weight: 700;
}
.home .p-header__logo__text {
  color: #ffffff;
  -webkit-transition: color 0.8s;
  transition: color 0.8s;
}
@media screen and (max-width: 1023px) {
  .p-header__logo__text {
    font-size: 1.302vw;
  }
}
@media screen and (max-width: 599px) {
  .p-header__logo__text {
    font-size: 2.564vw;
  }
}

.p-header__navi {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0 2.778vw;
}
@media screen and (max-width: 1023px) {
  .p-header__navi {
    display: none;
  }
}
@media screen and (max-width: 599px) {
  .p-header__navi {
    display: none;
  }
}

.p-header__navi__list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0 1.667vw;
}
.p-header__navi__list li {
  position: relative;
}
.p-header__navi__list li a {
  font-weight: 700;
}
.home .p-header__navi__list li a {
  color: #ffffff;
  -webkit-transition: color 0.8s;
  transition: color 0.8s;
}
.p-header__navi__list li a::after {
  position: absolute;
  left: 0;
  bottom: -1.944vw;
  content: "";
  display: block;
  height: 0.278vw;
  width: 100%;
  background-color: #005098;
  -webkit-transform: scale(0, 1);
          transform: scale(0, 1);
  -webkit-transform-origin: right top;
          transform-origin: right top;
  -webkit-transition: -webkit-transform 0.3s;
  transition: -webkit-transform 0.3s;
  transition: transform 0.3s;
  transition: transform 0.3s, -webkit-transform 0.3s;
}
.home .p-header__navi__list li a::after {
  background-color: #ffffff;
}
.p-header__navi__list li a:hover::after {
  -webkit-transform-origin: left top;
          transform-origin: left top;
  -webkit-transform: scale(1, 1);
          transform: scale(1, 1);
}
.p-header__navi__list li.--current a::after {
  position: absolute;
  left: 0;
  bottom: -1.944vw;
  content: "";
  display: block;
  height: 0.278vw;
  width: 100%;
  background-color: #005098;
  -webkit-transform: none;
          transform: none;
}
.home .p-header__navi__list li.--current a::after {
  background-color: #ffffff;
}

.p-header__navi__btn a {
  position: relative;
  overflow: hidden;
  background-color: #FFCD00;
  border: 2px solid #FFCD00;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  width: 11.389vw;
  height: 3.333vw;
  border-radius: 6.944vw;
}
.p-header__navi__btn a::before {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 0;
  height: 100%;
  background-color: #ffffff;
  -webkit-transition: width 0.2s;
  transition: width 0.2s;
}
.p-header__navi__btn a span {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0 0.417vw;
  color: #ffffff;
  font-weight: 700;
  line-height: 1;
  z-index: 1;
  -webkit-transition: color 0.3s;
  transition: color 0.3s;
}
.p-header__navi__btn a span::before {
  content: "";
  display: inline-block;
  width: 1.389vw;
  height: 1.111vw;
  background-image: url(../img/common/icon-mail_01.svg);
  background-size: 1.389vw auto;
  margin: 0.139vw 0 0 0;
}
.p-header__navi__btn a:hover::before {
  width: 100%;
}
.p-header__navi__btn a:hover span {
  color: #FFCD00;
}
.p-header__navi__btn a:hover span::before {
  background-image: url(../img/common/icon-mail_01-02.svg);
}

.p-header__menu-open {
  display: none;
}
@media screen and (max-width: 1023px) {
  .p-header__menu-open {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    gap: 0.781vw 0;
    width: 3.646vw;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
  }
  .p-header__menu-open span {
    display: block;
    width: 100%;
    height: 2px;
    background-color: #005098;
  }
  .home .p-header__menu-open span {
    background-color: #ffffff;
  }
}
@media screen and (max-width: 599px) {
  .p-header__menu-open {
    gap: 1.538vw 0;
    width: 7.179vw;
  }
}

.p-footer__inner-01 {
  background-image: url(../img/common/bg-footer_01.jpg);
  background-size: cover;
  padding: 6.944vw 0;
  text-align: center;
  color: #ffffff;
}
@media screen and (max-width: 1023px) {
  .p-footer__inner-01 {
    background-image: url(../img/common/bg-footer_01-sp.jpg);
    padding: 13.021vw 0;
  }
}
@media screen and (max-width: 599px) {
  .p-footer__inner-01 {
    padding: 25.641vw 0;
  }
}

.p-footer__heading {
  font-size: 2.222vw;
  font-weight: 700;
}
@media screen and (max-width: 1023px) {
  .p-footer__heading {
    font-size: 4.167vw;
  }
}
@media screen and (max-width: 599px) {
  .p-footer__heading {
    font-size: 8.205vw;
  }
}

.p-footer__text {
  margin: 2.778vw 0 0;
}
.p-footer__text dt {
  font-size: 1.389vw;
  font-weight: 700;
}
.p-footer__text dd {
  font-size: 0.972vw;
  margin: 1.389vw 0 0 0;
}
@media screen and (max-width: 1023px) {
  .p-footer__text {
    margin: 5.208vw 0 0 0;
  }
  .p-footer__text dt {
    font-size: 2.604vw;
  }
  .p-footer__text dd {
    font-size: 1.823vw;
    margin: 2.604vw 0 0 0;
  }
}
@media screen and (max-width: 599px) {
  .p-footer__text {
    margin: 10.256vw 0 0 0;
  }
  .p-footer__text dt {
    font-size: 5.128vw;
  }
  .p-footer__text dd {
    font-size: 3.59vw;
    margin: 5.128vw 0 0 0;
  }
}

.p-footer__inner-02 {
  background-color: #005098;
}
.p-footer__inner-02 > div {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  height: 4.167vw;
}
@media screen and (max-width: 1023px) {
  .p-footer__inner-02 > div {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    gap: 1.563vw 0;
    height: 11.719vw;
  }
}
@media screen and (max-width: 599px) {
  .p-footer__inner-02 > div {
    gap: 3.077vw 0;
    height: 23.077vw;
  }
}

.p-footer__inner-02__link {
  display: flex;
  align-items: center;
  gap: 0 8px;
}
.p-footer__inner-02__link a {
  color: #ffffff;
  font-size: 0.972vw;
}
@media screen and (max-width: 1023px) {
  .p-footer__inner-02__link a {
    font-size: 1.823vw;
  }
}
@media screen and (max-width: 599px) {
  .p-footer__inner-02__link img {
    width: 16px;
  }
  .p-footer__inner-02__link a {
    font-size: 3.59vw;
  }
}
.p-footer__inner-02__link a:hover {
  text-decoration: underline;
}

.p-footer__inner-02__copy {
  color: #ffffff;
  font-size: 0.833vw;
  margin: 0;
}
@media screen and (max-width: 1023px) {
  .p-footer__inner-02__copy {
    font-size: 1.563vw;
  }
}
@media screen and (max-width: 599px) {
  .p-footer__inner-02__copy {
    font-size: 3.077vw;
  }
}

.p-kv__home {
  position: relative;
}

.p-kv__home__musk {
  position: absolute;
  left: 0;
  bottom: -1px;
  width: 100%;
  z-index: 10;
}

.p-kv__home__content {
  position: absolute;
  left: 50%;
  top: calc(50% + 3.472vw);
  -webkit-transform: translateX(-50%) translateY(-50%);
          transform: translateX(-50%) translateY(-50%);
  color: #ffffff;
  z-index: 10;
}
@media screen and (max-width: 1023px) {
  .p-kv__home__content {
    padding: 0 2.604vw;
    width: 100%;
  }
}
@media screen and (max-width: 599px) {
  .p-kv__home__content {
    padding: 0 5.128vw;
  }
}

.p-kv__home__content__text {
  text-shadow: 0px 2px 6px rgba(0, 0, 0, 0.35);
  text-align: center;
}
.p-kv__home__content__text dt {
  font-size: 4.167vw;
  font-weight: 700;
  white-space: nowrap;
}
.p-kv__home__content__text dd {
  font-size: 1.389vw;
  font-weight: 500;
  line-height: 1.8;
  margin: 1.667vw 0 0;
}
@media screen and (max-width: 1023px) {
  .p-kv__home__content__text dt {
    font-size: 4.688vw;
  }
  .p-kv__home__content__text dd {
    font-size: 2.083vw;
    margin: 5.469vw 0 0;
  }
}
@media screen and (max-width: 599px) {
  .p-kv__home__content__text dt {
    font-size: 9.231vw;
  }
  .p-kv__home__content__text dd {
    font-size: 4.103vw;
    margin: 10.769vw 0 0;
  }
}

.p-kv__home__content__btn {
  margin: 4.167vw 0 0 0;
}
.p-kv__home__content__btn a {
  position: relative;
  overflow: hidden;
  border: 2px solid #ffffff;
  border-radius: 6.944vw;
  width: 30.556vw;
  height: 4.514vw;
  margin: 0 auto;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  color: #ffffff;
  font-weight: 700;
  background-image: url(../img/common/aroow-right_01.svg);
  background-position: right 1.389vw center;
  -webkit-transition: color 0.3s;
  transition: color 0.3s;
}
.p-kv__home__content__btn a::before {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 0;
  height: 100%;
  background-color: #ffffff;
  z-index: -1;
  -webkit-transition: width 0.2s;
  transition: width 0.2s;
}
.p-kv__home__content__btn a:hover {
  color: #005098;
  background-image: url(../img/common/aroow-right_01-02.svg);
}
.p-kv__home__content__btn a:hover::before {
  width: 100%;
}
@media screen and (max-width: 1023px) {
  .p-kv__home__content__btn {
    margin: 7.813vw 0 0 0;
  }
  .p-kv__home__content__btn a {
    width: 100%;
    height: 6.901vw;
    font-size: 1.823vw;
    background-size: 1.042vw auto;
    background-position: right 2.604vw center;
  }
}
@media screen and (max-width: 599px) {
  .p-kv__home__content__btn {
    margin: 15.385vw 0 0 0;
  }
  .p-kv__home__content__btn a {
    height: 13.59vw;
    font-size: 3.59vw;
    background-size: 2.051vw auto;
    background-position: right 5.128vw center;
  }
}

.swiper-home-kv .swiper-slide img {
  width: 100%;
  height: auto;
}
.swiper-home-kv .swiper-pagination {
  bottom: 2.778vw;
  z-index: 20;
}
.swiper-home-kv .swiper-pagination .swiper-pagination-bullet {
  background-color: #ffffff;
  opacity: 1;
  width: 0.694vw;
  height: 0.694vw;
  margin: 0 0.556vw;
  vertical-align: middle;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}
.swiper-home-kv .swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
  width: 1.25vw;
  height: 1.25vw;
}
@media screen and (max-width: 1023px) {
  .swiper-home-kv {
    height: 100svh;
  }
  .swiper-home-kv .swiper-slide {
    height: 100%;
  }
  .swiper-home-kv .swiper-slide .swiper-img {
    height: 100%;
  }
  .swiper-home-kv .swiper-slide .swiper-img img {
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
  }
  .swiper-home-kv .swiper-pagination {
    bottom: 5.208vw;
  }
  .swiper-home-kv .swiper-pagination .swiper-pagination-bullet {
    width: 1.302vw;
    height: 1.302vw;
    margin: 0 1.042vw;
  }
  .swiper-home-kv .swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
    width: 2.344vw;
    height: 2.344vw;
  }
}
@media screen and (max-width: 599px) {
  .swiper-home-kv .swiper-pagination {
    bottom: 10.256vw;
  }
  .swiper-home-kv .swiper-pagination .swiper-pagination-bullet {
    width: 2.564vw;
    height: 2.564vw;
    margin: 0 2.051vw;
  }
  .swiper-home-kv .swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
    width: 4.615vw;
    height: 4.615vw;
  }
}

@-webkit-keyframes zoomUp {
  0% {
    -webkit-transform: scale(1.15);
            transform: scale(1.15);
  }
  100% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}

@keyframes zoomUp {
  0% {
    -webkit-transform: scale(1.15);
            transform: scale(1.15);
  }
  100% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}
.swiper-slide-active .swiper-img,
.swiper-slide-duplicate-active .swiper-img,
.swiper-slide-prev .swiper-img {
  -webkit-animation: zoomUp 5.5s linear 0s normal both;
          animation: zoomUp 5.5s linear 0s normal both;
}

.p-kv__under {
  position: relative;
}

.p-kv__under__img img {
  width: 100%;
}

.p-kv__under__inner {
  position: absolute;
  left: 50%;
  top: 50%;
  -webkit-transform: translateX(-50%) translateY(-50%);
          transform: translateX(-50%) translateY(-50%);
  color: #ffffff;
  text-align: center;
  width: 100%;
  padding: 0 1.389vw;
}
@media screen and (max-width: 1023px) {
  .p-kv__under__inner {
    padding: 0 2.604vw;
  }
}
@media screen and (max-width: 599px) {
  .p-kv__under__inner {
    padding: 0 5.128vw;
  }
}

.p-kv__under__ja {
  font-size: 2.222vw;
  font-weight: 700;
}
@media screen and (max-width: 1023px) {
  .p-kv__under__ja {
    font-size: 4.167vw;
  }
}
@media screen and (max-width: 599px) {
  .p-kv__under__ja {
    font-size: 8.205vw;
  }
}

.p-kv__under__en {
  font-size: 0.972vw;
  margin: 0.278vw 0 0 0;
}
@media screen and (max-width: 1023px) {
  .p-kv__under__en {
    font-size: 1.823vw;
    margin: 0.521vw 0 0 0;
  }
}
@media screen and (max-width: 599px) {
  .p-kv__under__en {
    font-size: 3.59vw;
    margin: 1.026vw 0 0 0;
  }
}

.p-kv__under__text {
  font-size: 0.972vw;
  font-weight: 700;
  line-height: 1.7;
  margin: 1.389vw 0 0 0;
}
@media screen and (max-width: 1023px) {
  .p-kv__under__text {
    font-size: 1.823vw;
    margin: 2.604vw 0 0 0;
  }
}
@media screen and (max-width: 599px) {
  .p-kv__under__text {
    font-size: 3.59vw;
    margin: 5.128vw 0 0 0;
  }
}

.p-post-list__item a {
  display: block;
}
@media screen and (max-width: 599px) {
  .p-post-list__item + .p-post-list__item {
    margin: 10.256vw 0 0 0;
  }
}

.p-post-list__item__img {
  overflow: hidden;
  border-radius: 1.389vw;
  position: relative;
}
.p-post-list__item__img img {
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
  height: 14.236vw;
}
@media screen and (max-width: 1023px) {
  .p-post-list__item__img {
    border-radius: 2.604vw;
  }
  .p-post-list__item__img img {
    height: 29.948vw;
  }
}
@media screen and (max-width: 599px) {
  .p-post-list__item__img {
    border-radius: 5.128vw;
  }
  .p-post-list__item__img img {
    height: 58.974vw;
  }
}

.p-post-list__item__catch {
  position: absolute;
  left: 0;
  top: 1.389vw;
  color: #ffffff;
  background-color: #FFCD00;
  display: inline-block;
  padding: 0.139vw 0.556vw;
  font-size: 0.833vw;
  font-weight: 700;
}
.p-post-list__item__catch.--end {
  background-color: #D0D0D0;
  color: #999999;
}
@media screen and (max-width: 1023px) {
  .p-post-list__item__catch {
    top: 2.604vw;
    padding: 0.26vw 1.042vw;
    font-size: 1.563vw;
  }
}
@media screen and (max-width: 599px) {
  .p-post-list__item__catch {
    top: 5.128vw;
    padding: 0.513vw 2.051vw;
    font-size: 3.077vw;
  }
}

.p-post-list__item__text {
  margin: 1.111vw 0 0 0;
}
.p-post-list__item__text dt {
  font-size: 0.972vw;
  color: #999999;
}
.p-post-list__item__text dd {
  font-weight: 700;
  margin: 0.139vw 0 0 0;
}
@media screen and (max-width: 1023px) {
  .p-post-list__item__text {
    margin: 2.083vw 0 0 0;
  }
  .p-post-list__item__text dt {
    font-size: fsTab(14);
  }
  .p-post-list__item__text dd {
    margin: 0.26vw 0 0 0;
  }
}
@media screen and (max-width: 599px) {
  .p-post-list__item__text {
    margin: 4.103vw 0 0 0;
  }
  .p-post-list__item__text dt {
    font-size: 3.59vw;
  }
  .p-post-list__item__text dd {
    margin: 0.513vw 0 0 0;
  }
}

.p-post {
  background-color: #ffffff;
  border-radius: 2.778vw;
  padding: 5.556vw 4.167vw;
}
@media screen and (max-width: 1023px) {
  .p-post {
    border-radius: 3.906vw;
    padding: 5.208vw 2.604vw;
  }
}
@media screen and (max-width: 599px) {
  .p-post {
    border-radius: 7.692vw;
    padding: 10.256vw 5.128vw;
  }
}

.p-post__header {
  margin: 0 0 2.778vw 0;
}
@media screen and (max-width: 1023px) {
  .p-post__header {
    margin: 0 0 5.208vw 0;
  }
}
@media screen and (max-width: 599px) {
  .p-post__header {
    margin: 0 0 10.256vw 0;
  }
}

.p-post__header__catch {
  color: #ffffff;
  background-color: #FFCD00;
  display: inline-block;
  padding: 0.139vw 0.556vw;
  font-size: 0.833vw;
  font-weight: 700;
  margin: 0 0 0.833vw 0;
}
.p-post__header__catch.--end {
  background-color: #D0D0D0;
  color: #999999;
}
@media screen and (max-width: 1023px) {
  .p-post__header__catch {
    padding: 0.26vw 1.042vw;
    font-size: 1.563vw;
    margin: 0 0 1.563vw 0;
  }
}
@media screen and (max-width: 599px) {
  .p-post__header__catch {
    padding: 0.513vw 2.051vw;
    font-size: 3.077vw;
    margin: 0 0 3.077vw 0;
  }
}

.p-post__header__heading {
  font-size: 1.944vw;
  font-weight: 700;
  line-height: 1.45;
}
@media screen and (max-width: 1023px) {
  .p-post__header__heading {
    font-size: 3.646vw;
  }
}
@media screen and (max-width: 599px) {
  .p-post__header__heading {
    font-size: 7.179vw;
  }
}

.p-post__header__date {
  font-size: 0.833vw;
  color: #999999;
  margin: 0.833vw 0 0 0;
}
@media screen and (max-width: 1023px) {
  .p-post__header__date {
    font-size: 1.563vw;
    margin: 1.563vw 0 0 0;
  }
}
@media screen and (max-width: 599px) {
  .p-post__header__date {
    font-size: 3.077vw;
    margin: 3.077vw 0 0 0;
  }
}

.p-post__content > * {
  margin: 1.389vw 0;
}
.p-post__content img {
  margin: 2.778vw 0;
  margin-left: auto;
  margin-right: auto;
}
.p-post__content h2 {
  font-size: 1.389vw;
  font-weight: 700;
  margin-top: 2.778vw;
}
.p-post__content a {
  text-decoration: underline;
  color: #005098;
}
.p-post__content a:hover {
  text-decoration: none;
}
.p-post__content > *:first-child {
  margin-top: 0;
}
.p-post__content > *:last-child {
  margin-bottom: 0;
}
@media screen and (max-width: 1023px) {
  .p-post__content > * {
    margin: 2.604vw 0;
  }
  .p-post__content img {
    margin: 5.208vw 0;
    margin-left: auto;
    margin-right: auto;
  }
  .p-post__content h2 {
    font-size: 2.604vw;
    margin-top: 5.208vw;
  }
}
@media screen and (max-width: 599px) {
  .p-post__content > * {
    margin: 5.128vw 0;
  }
  .p-post__content img {
    margin: 10.256vw 0;
  }
  .p-post__content h2 {
    font-size: 5.128vw;
    margin-top: 10.256vw;
  }
}

.p-products-list-01 {
  position: relative;
  margin: -8.333vw 0 0 !important;
  background-color: #ffffff;
  border-radius: 2.778vw;
  padding: 6.944vw 4.167vw;
}
@media screen and (max-width: 1023px) {
  .p-products-list-01 {
    margin: -15.625vw 0 0 !important;
    border-radius: 5.208vw;
    padding: 10.417vw 2.604vw;
  }
}
@media screen and (max-width: 599px) {
  .p-products-list-01 {
    margin: -30.769vw 0 0 !important;
    border-radius: 10.256vw;
    padding: 20.513vw 5.128vw;
  }
}

.p-products-list-01__item-01 {
  background-color: #E0F0FF;
  border-radius: 1.389vw;
  padding: 1.389vw;
  display: block;
}
@media screen and (max-width: 1023px) {
  .p-products-list-01__item-01 {
    border-radius: 2.604vw;
    padding: 2.604vw;
  }
}
@media screen and (max-width: 599px) {
  .p-products-list-01__item-01 {
    border-radius: 5.128vw;
    padding: 5.128vw;
  }
  .p-products-list-01__item-01 + .p-products-list-01__item-01 {
    margin: 7.692vw 0 0 0;
  }
}

.p-products-list-01__item-01__logo {
  text-align: center;
}
.p-products-list-01__item-01__logo dt {
  font-weight: 700;
}
.p-products-list-01__item-01__logo dd {
  margin: 1.111vw 0 0 0;
}
@media screen and (max-width: 1023px) {
  .p-products-list-01__item-01__logo dd {
    margin: 2.083vw 0 0 0;
  }
}
@media screen and (max-width: 599px) {
  .p-products-list-01__item-01__logo dd {
    margin: 4.103vw 0 0 0;
  }
}

.p-products-list-01__item-01__text {
  background-color: #ffffff;
  border-radius: 0.694vw;
  padding: 1.389vw 1.389vw 1.667vw;
  font-size: 0.972vw;
  margin: 1.111vw 0 0 0;
}
@media screen and (max-width: 1023px) {
  .p-products-list-01__item-01__text {
    border-radius: 1.302vw;
    padding: 2.604vw;
    font-size: 1.823vw;
    margin: 2.083vw 0 0 0;
  }
}
@media screen and (max-width: 599px) {
  .p-products-list-01__item-01__text {
    border-radius: 2.564vw;
    padding: 5.128vw;
    font-size: 3.59vw;
    margin: 4.103vw 0 0 0;
  }
}

.p-products-list-01__item-02 a {
  display: block;
}
@media screen and (max-width: 599px) {
  .p-products-list-01__item-02 + .p-products-list-01__item-02 {
    margin: 7.179vw 0 0 0;
  }
}

.p-products-list-01__item-02__img {
  overflow: hidden;
  border-radius: 2.778vw 2.778vw 0 0;
}
.p-products-list-01__item-02__img img {
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
  height: 11.111vw;
}
@media screen and (max-width: 1023px) {
  .p-products-list-01__item-02__img {
    border-radius: 5.208vw 5.208vw 0 0;
  }
  .p-products-list-01__item-02__img img {
    height: 24.089vw;
  }
}
@media screen and (max-width: 599px) {
  .p-products-list-01__item-02__img {
    border-radius: 10.256vw 10.256vw 0 0;
  }
  .p-products-list-01__item-02__img img {
    height: 47.436vw;
  }
}

.p-products-list-01__item-02__text {
  background-color: #005098;
  color: #ffffff;
  border-radius: 0 0 2.778vw 0;
  font-size: 1.667vw;
  font-weight: 700;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 0 0 0 1.389vw;
  height: 3.472vw;
}
@media screen and (max-width: 1023px) {
  .p-products-list-01__item-02__text {
    border-radius: 0 0 5.208vw 0;
    font-size: 3.125vw;
    padding: 0 0 0 2.995vw;
    height: 7.552vw;
  }
}
@media screen and (max-width: 599px) {
  .p-products-list-01__item-02__text {
    border-radius: 0 0 10.256vw 0;
    font-size: 6.154vw;
    padding: 0 0 0 5.897vw;
    height: 14.872vw;
  }
}

.p-products-list-02 {
  position: relative;
  padding: 5.556vw 0 0 0;
}
.p-products-list-02 + .p-products-list-02 {
  margin: 4.167vw 0 0 0;
}
@media screen and (max-width: 1023px) {
  .p-products-list-02 {
    padding: 10.417vw 0 0 0;
  }
  .p-products-list-02 + .p-products-list-02 {
    margin: 7.813vw 0 0 0;
  }
}
@media screen and (max-width: 599px) {
  .p-products-list-02 {
    padding: 47.436vw 0 0 0;
  }
  .p-products-list-02 + .p-products-list-02 {
    margin: 15.385vw 0 0 0;
  }
}

.p-products-list-02__img {
  position: absolute;
  left: 0;
  top: 0;
  width: 34.722vw;
}
@media screen and (max-width: 1023px) {
  .p-products-list-02__img {
    width: 52.083vw;
  }
}
@media screen and (max-width: 599px) {
  .p-products-list-02__img {
    width: 84.615vw;
  }
}

.p-products-list-02__text {
  position: relative;
  width: 38.889vw;
  margin: 0 0 0 auto;
  background-color: #ffffff;
  border-radius: 1.389vw;
  padding: 2.083vw 2.778vw;
}
@media screen and (max-width: 1023px) {
  .p-products-list-02__text {
    width: 58.333vw;
    border-radius: 2.604vw;
    padding: 3.906vw 5.208vw;
  }
}
@media screen and (max-width: 599px) {
  .p-products-list-02__text {
    width: 84.615vw;
    border-radius: 5.128vw;
    padding: 7.692vw;
  }
}

.p-products-list-02__text__heading {
  font-size: 1.667vw;
  font-weight: 700;
  padding: 0 0 0.833vw 0;
  border-bottom: 1px solid #999999;
}
@media screen and (max-width: 1023px) {
  .p-products-list-02__text__heading {
    font-size: 3.125vw;
    padding: 0 0 1.563vw 0;
  }
}
@media screen and (max-width: 599px) {
  .p-products-list-02__text__heading {
    font-size: 6.154vw;
    padding: 0 0 3.077vw 0;
  }
}

.p-products-list-02__text__logo {
  margin: 1.389vw 0 0 0;
}
@media screen and (max-width: 1023px) {
  .p-products-list-02__text__logo {
    margin: 2.604vw 0 0 0;
  }
}
@media screen and (max-width: 599px) {
  .p-products-list-02__text__logo {
    margin: 5.128vw 0 0 0;
  }
}

.p-products-list-02__text__p {
  margin: 1.389vw 0;
}
@media screen and (max-width: 1023px) {
  .p-products-list-02__text__p {
    margin: 2.604vw 0;
  }
}
@media screen and (max-width: 599px) {
  .p-products-list-02__text__p {
    margin: 5.128vw 0;
  }
}

.p-products-list-03 + .p-products-list-03 {
  margin: 2.778vw 0 0 0;
}
@media screen and (max-width: 1023px) {
  .p-products-list-03 + .p-products-list-03 {
    margin: 5.208vw 0 0 0;
  }
}
@media screen and (max-width: 599px) {
  .p-products-list-03 + .p-products-list-03 {
    margin: 10.256vw 0 0 0;
  }
}

.p-products-list-03__heading {
  background-color: #E0F0FF;
  border-radius: 1.389vw;
  padding: 2.431vw 4.167vw;
  position: relative;
}
.p-products-list-03__heading > dl {
  display: inline-block;
  width: 9.028vw;
}
.p-products-list-03__heading > dl dt img {
  margin: 0 auto;
}
.p-products-list-03__heading > dl dd {
  font-size: 1.389vw;
  font-weight: 700;
  color: #005098;
  margin: 0.833vw 0 0 0;
  text-align: center;
}
@media screen and (max-width: 1023px) {
  .p-products-list-03__heading {
    border-radius: 2.604vw;
    padding: 4.557vw 7.813vw;
  }
  .p-products-list-03__heading > dl {
    width: 16.927vw;
  }
  .p-products-list-03__heading > dl dd {
    font-size: 2.604vw;
    margin: 1.563vw 0 0 0;
  }
}
@media screen and (max-width: 599px) {
  .p-products-list-03__heading {
    border-radius: 5.128vw;
    padding: 8.974vw 0 0 0;
    width: 66.667vw;
    height: 100vw;
    margin: 0 auto;
  }
  .p-products-list-03__heading > dl {
    display: block;
    width: 100%;
  }
  .p-products-list-03__heading > dl dd {
    font-size: 5.128vw;
    margin: 3.077vw 0 0 0;
  }
}

.p-products-list-03__content {
  position: absolute;
  right: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 44.444vw;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 0 2.778vw;
}
.p-products-list-03__content dd {
  position: relative;
  background-color: #005098;
  color: #ffffff;
  font-size: 1.389vw;
  font-weight: 700;
  text-align: center;
  padding: 0.833vw 0;
  margin: -1.667vw 1.389vw 0;
}
.p-products-list-03__content dd.--v-02 {
  margin: -1.667vw 4.167vw 0;
}
@media screen and (max-width: 1023px) {
  .p-products-list-03__content {
    width: 59.896vw;
    gap: 0 3.646vw;
  }
  .p-products-list-03__content dd {
    font-size: 1.823vw;
    padding: 1.172vw 0;
    margin: -2.344vw 1.823vw 0;
  }
  .p-products-list-03__content dd.--v-02 {
    margin: -2.344vw 5.599vw 0;
  }
}
@media screen and (max-width: 599px) {
  .p-products-list-03__content {
    right: auto;
    top: auto;
    bottom: 0;
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    width: calc(100vw - 10.256vw);
    gap: 0 5.128vw;
  }
  .p-products-list-03__content dd {
    font-size: 3.59vw;
    padding: 3.077vw 0;
    margin: -2.564vw 2.564vw 0;
  }
  .p-products-list-03__content dd.--v-02 {
    margin: pxSP(-10) 5.128vw 0;
  }
}

.p-page-list {
  background-color: #ffffff;
  border-radius: 2.778vw;
  padding: 0.694vw;
}
@media screen and (max-width: 1023px) {
  .p-page-list {
    border-radius: 5.208vw;
    padding: 1.302vw;
  }
}
@media screen and (max-width: 599px) {
  .p-page-list {
    border-radius: 10.256vw;
    padding: 2.564vw;
  }
  .p-page-list + .p-page-list {
    margin: 10.256vw 0 0 0;
  }
}

.p-page-list__inner {
  border: 0.139vw solid #005098;
  border-radius: 2.083vw;
  padding: 2.083vw 1.389vw 1.389vw;
  text-align: center;
}
.p-page-list__inner p {
  margin: 0;
}
@media screen and (max-width: 1023px) {
  .p-page-list__inner {
    border: 0.26vw solid #005098;
    border-radius: 3.906vw;
    padding: 3.906vw 2.604vw 2.604vw;
  }
}
@media screen and (max-width: 599px) {
  .p-page-list__inner {
    border: 0.513vw solid #005098;
    border-radius: 7.692vw;
    padding: 7.692vw 5.128vw 5.128vw;
  }
}

.p-bnr-list-01 {
  display: block;
}
.p-bnr-list-01:hover .p-bnr-list-01__img::before {
  width: 100%;
}

.p-bnr-list-01__img {
  position: relative;
}
.p-bnr-list-01__img::before {
  content: "";
  display: block;
  border-radius: 0.694vw;
  position: absolute;
  left: 0;
  top: 0;
  width: 0;
  height: 100%;
  background-color: rgba(0, 77, 138, 0.2);
  -webkit-transition: width 0.2s;
  transition: width 0.2s;
}
.p-bnr-list-01__img img {
  width: 100%;
}

.p-bnr-list-01__text {
  text-align: center;
  font-size: 0.972vw;
  font-weight: 700;
  margin: 0.556vw 0 0 0;
}
@media screen and (max-width: 1023px) {
  .p-bnr-list-01__text {
    font-size: 1.302vw;
    margin: 1.042vw 0 0 0;
    letter-spacing: -0.05em;
  }
}
@media screen and (max-width: 599px) {
  .p-bnr-list-01__text {
    font-size: 2.564vw;
    margin: 2.051vw 0 0 0;
  }
}

.p-bnr-list-02 {
  margin: 2.778vw 0 0 0;
  border-radius: 0.694vw;
  overflow: hidden;
}
.p-bnr-list-02 a {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -webkit-flex-direction: row-reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
  background-color: #ffffff;
  height: 12.5vw;
  position: relative;
}
.p-bnr-list-02 a::before {
  content: "";
  display: block;
  border-radius: 0.694vw;
  position: absolute;
  left: 0;
  top: 0;
  width: 0;
  height: 100%;
  background-color: rgba(0, 77, 138, 0.2);
  -webkit-transition: width 0.2s;
  transition: width 0.2s;
}
.p-bnr-list-02 a:hover::before {
  width: 100%;
}
@media screen and (max-width: 1023px) {
  .p-bnr-list-02 {
    margin: 2.604vw 0 0 0;
    border-radius: 1.302vw;
  }
  .p-bnr-list-02 a {
    display: block;
    height: auto;
  }
}
@media screen and (max-width: 599px) {
  .p-bnr-list-02 {
    margin: 5.128vw 0 0 0;
    border-radius: 2.564vw;
  }
}

.p-bnr-list-02__logo {
  width: 15.278vw;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
.p-bnr-list-02__logo .e-logo-01 {
  display: none;
}
@media screen and (max-width: 1023px) {
  .p-bnr-list-02__logo {
    width: 100%;
    gap: 0 3.255vw;
    padding: 3.125vw 0;
  }
  .p-bnr-list-02__logo .e-logo-01 {
    display: block;
    width: 19.792vw;
  }
  .p-bnr-list-02__logo .e-logo-02 {
    width: 17.578vw;
  }
}
@media screen and (max-width: 599px) {
  .p-bnr-list-02__logo {
    gap: 0 6.41vw;
    padding: 6.154vw 0;
  }
  .p-bnr-list-02__logo .e-logo-01 {
    width: 38.974vw;
  }
  .p-bnr-list-02__logo .e-logo-02 {
    width: 34.615vw;
  }
}

.p-bnr-list-02__text {
  -webkit-box-flex: 1;
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
  background-color: #005098;
  color: #ffffff;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  padding: 1.181vw 0 0 0.694vw;
}
.p-bnr-list-02__text dd {
  font-size: 1.389vw;
  font-weight: 700;
  padding: 0 0 0 2.083vw;
}
@media screen and (max-width: 1023px) {
  .p-bnr-list-02__text {
    -webkit-box-flex: 1;
    -webkit-flex: auto;
        -ms-flex: auto;
            flex: auto;
    display: block;
    padding: 2.604vw 1.953vw;
    border-radius: 0 0 1.302vw 1.302vw;
  }
  .p-bnr-list-02__text dt {
    display: none;
  }
  .p-bnr-list-02__text dd {
    font-size: 2.083vw;
    margin: 0;
  }
}
@media screen and (max-width: 599px) {
  .p-bnr-list-02__text {
    padding: 5.128vw 3.846vw;
    border-radius: 0 0 2.564vw 2.564vw;
  }
  .p-bnr-list-02__text dd {
    font-size: 4.103vw;
  }
}

.p-breadcrumbs {
  font-size: 0.833vw;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 0 0.833vw;
  padding: 1.389vw 0 5.556vw;
}
.p-breadcrumbs a {
  color: #005098;
  text-decoration: underline;
  white-space: nowrap;
}
.p-breadcrumbs a:hover {
  text-decoration: none;
}
@media screen and (max-width: 1023px) {
  .p-breadcrumbs {
    font-size: 1.563vw;
    gap: 0 1.563vw;
    padding: 2.604vw 0 7.813vw;
  }
}
@media screen and (max-width: 599px) {
  .p-breadcrumbs {
    font-size: 3.077vw;
    gap: 0 3.077vw;
    padding: 5.128vw 0 15.385vw;
  }
}

.p-brand-block {
  border-radius: 2.778vw;
  background-color: #ffffff;
  padding: 2.778vw 5.556vw 2.083vw;
}
@media screen and (max-width: 1023px) {
  .p-brand-block {
    border-radius: 5.208vw;
    padding: 5.208vw 10.417vw 3.906vw;
  }
}
@media screen and (max-width: 599px) {
  .p-brand-block {
    border-radius: 10.256vw;
    padding: 10.256vw 5.128vw 7.692vw;
  }
}

.p-brand-block__catch {
  font-family: "Sarpanch";
  font-weight: 700;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0 0.556vw;
}
.p-brand-block__catch::before, .p-brand-block__catch::after {
  content: "";
  display: inline-block;
  width: 0.694vw;
  height: 1px;
  background-color: #555555;
}
@media screen and (max-width: 1023px) {
  .p-brand-block__catch {
    gap: 0 1.042vw;
  }
  .p-brand-block__catch::before, .p-brand-block__catch::after {
    width: 1.302vw;
  }
}
@media screen and (max-width: 599px) {
  .p-brand-block__catch {
    gap: 0 2.051vw;
  }
  .p-brand-block__catch::before, .p-brand-block__catch::after {
    width: 2.564vw;
  }
}

.p-brand-block__logo {
  margin: 2.222vw 0 0 0;
}
.p-brand-block__logo img {
  width: 19.931vw;
  margin: 0 auto;
}
@media screen and (max-width: 1023px) {
  .p-brand-block__logo {
    margin: 4.167vw 0 0 0;
  }
  .p-brand-block__logo img {
    width: 37.37vw;
  }
}
@media screen and (max-width: 599px) {
  .p-brand-block__logo {
    margin: 8.205vw 0 0 0;
  }
  .p-brand-block__logo img {
    width: 73.59vw;
  }
}

.p-brand-block__text {
  font-size: 0.972vw;
  margin: 2.778vw 0 0 0;
}
@media screen and (max-width: 1023px) {
  .p-brand-block__text {
    font-size: 1.823vw;
    margin: 5.208vw 0 0 0;
  }
}
@media screen and (max-width: 599px) {
  .p-brand-block__text {
    font-size: 3.59vw;
    margin: 10.256vw 0 0 0;
  }
}

.p-item-01 {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -webkit-flex-direction: row-reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
  margin: 0 0 4.167vw 0;
}
@media screen and (max-width: 1023px) {
  .p-item-01 {
    margin: 0 0 7.813vw 0;
  }
}
@media screen and (max-width: 599px) {
  .p-item-01 {
    display: block;
    margin: 0 0 15.385vw 0;
  }
}

.p-item-01__img {
  width: 36.111vw;
}
@media screen and (max-width: 1023px) {
  .p-item-01__img {
    width: 54.688vw;
  }
}
@media screen and (max-width: 599px) {
  .p-item-01__img {
    width: 100%;
  }
}

.p-item-01__content {
  -webkit-box-flex: 1;
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.p-item-01__content > * {
  margin: 1.389vw 0;
}
.p-item-01__content > *:first-child {
  margin-top: 0;
}
.p-item-01__content > *:last-child {
  margin-bottom: 0;
}
.p-item-01__content h2 {
  background-color: #ffffff;
  font-size: 1.667vw;
  font-weight: 700;
  padding: 0.833vw;
}
.p-item-01__content p {
  padding: 0 2.778vw 0 0;
}
.p-item-01__content dl dd {
  margin: 0.556vw 0 0 0;
}
@media screen and (max-width: 1023px) {
  .p-item-01__content > * {
    margin: 2.604vw 0;
  }
  .p-item-01__content h2 {
    font-size: 3.125vw;
    padding: 1.563vw;
  }
  .p-item-01__content p {
    padding: 0 2.604vw 0 0;
  }
  .p-item-01__content dl dd {
    margin: 1.042vw 0 0 0;
  }
}
@media screen and (max-width: 599px) {
  .p-item-01__content {
    -webkit-box-flex: 1;
    -webkit-flex: auto;
        -ms-flex: auto;
            flex: auto;
    margin: 5.128vw 0 0 0;
  }
  .p-item-01__content > * {
    margin: 5.128vw 0;
  }
  .p-item-01__content h2 {
    font-size: 6.154vw;
    padding: 3.077vw;
  }
  .p-item-01__content p {
    padding: 0;
  }
  .p-item-01__content dl dd {
    margin: 2.051vw 0 0 0;
  }
}

@media screen and (max-width: 1023px) {
  .p-item-01__content__logo {
    width: 33.854vw;
  }
}
@media screen and (max-width: 599px) {
  .p-item-01__content__logo {
    width: inherit;
  }
}

.p-item-02 dl dd {
  margin: 1.389vw 0 0 0;
}
.p-item-02 dl dd + dd {
  margin: 0.833vw 0 0 0;
}
@media screen and (max-width: 1023px) {
  .p-item-02 dl dd {
    margin: 2.604vw 0 0 0;
  }
  .p-item-02 dl dd + dd {
    margin: 1.563vw 0 0 0;
  }
}
@media screen and (max-width: 599px) {
  .p-item-02 dl dd {
    margin: 5.128vw 0 0 0;
  }
  .p-item-02 dl dd + dd {
    margin: 3.077vw 0 0 0;
  }
}

.p-comment-01 {
  background-color: #ffffff;
  border-radius: 1.389vw;
  padding: 2.222vw;
  color: #005098;
  font-size: 1.667vw;
  font-weight: 700;
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0 4.167vw;
  margin: 4.306vw 0 0 0;
}
.p-comment-01::before {
  content: "";
  position: absolute;
  top: -2.083vw;
  left: 50%;
  margin-left: -1.181vw;
  border: 1.181vw solid transparent;
  border-bottom: 2.222vw solid #ffffff;
  border-top: none;
}
.p-comment-01 img {
  width: 15.972vw;
}
@media screen and (max-width: 1023px) {
  .p-comment-01 {
    border-radius: 2.604vw;
    padding: 3.125vw 2.604vw;
    font-size: 3.125vw;
    display: block;
    margin: 8.073vw 0 0 0;
  }
  .p-comment-01::before {
    top: -3.906vw;
    margin-left: -2.214vw;
    border: 2.214vw solid transparent;
    border-bottom: 4.167vw solid #ffffff;
    border-top: none;
  }
  .p-comment-01 img {
    width: 28.125vw;
    margin: 0 auto 2.604vw;
  }
}
@media screen and (max-width: 599px) {
  .p-comment-01 {
    border-radius: 5.128vw;
    padding: 6.154vw 5.128vw;
    font-size: 6.154vw;
    margin: 15.897vw 0 0 0;
  }
  .p-comment-01::before {
    top: -7.692vw;
    margin-left: -4.359vw;
    border: 4.359vw solid transparent;
    border-bottom: 8.205vw solid #ffffff;
  }
  .p-comment-01 img {
    width: 55.385vw;
    margin: 0 auto 5.128vw;
  }
}

.p-navigation-01 {
  margin: 0 0 4.167vw 0;
}
@media screen and (max-width: 1023px) {
  .p-navigation-01 {
    margin: 0 0 5.208vw 0;
  }
}
@media screen and (max-width: 599px) {
  .p-navigation-01 {
    margin: 0 0 10.256vw 0;
  }
}
.p-navigation-01 ul {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (max-width: 1023px) {
  .p-navigation-01 ul {
    width: 100%;
  }
}
@media screen and (max-width: 1023px) {
  .p-navigation-01 ul li {
    width: 50%;
  }
}
.p-navigation-01 ul li a {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  background-color: #ffffff;
  color: #005098;
  width: 13.889vw;
  height: 3.056vw;
  font-weight: 700;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.p-navigation-01 ul li a:hover {
  background-color: #005098;
  color: #ffffff;
}
@media screen and (max-width: 1023px) {
  .p-navigation-01 ul li a {
    width: 100%;
    height: 5.729vw;
  }
}
@media screen and (max-width: 599px) {
  .p-navigation-01 ul li a {
    height: 11.282vw;
  }
}
.p-navigation-01 ul li.--current a {
  background-color: #005098;
  color: #ffffff;
}
.p-navigation-01 ul li:first-child a {
  border-radius: 100px 0 0 100px;
}
.p-navigation-01 ul li:last-child a {
  border-radius: 0 100px 100px 0;
}

.p-navigation-archives {
  margin: 5.556vw 0 0 0;
}
@media screen and (max-width: 1023px) {
  .p-navigation-archives {
    margin: 16.667vw 0 0 0;
  }
}
@media screen and (max-width: 599px) {
  .p-navigation-archives {
    margin: 32.821vw 0 0 0;
  }
}

.p-navigation-archives__inner {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 0 2.778vw;
}
@media screen and (max-width: 1023px) {
  .p-navigation-archives__inner {
    gap: 0 1.302vw;
    position: relative;
  }
}
@media screen and (max-width: 599px) {
  .p-navigation-archives__inner {
    gap: 0 2.564vw;
  }
}

.p-navigation-archives__prev,
.p-navigation-archives__next {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 0 0.556vw;
}
@media screen and (max-width: 1023px) {
  .p-navigation-archives__prev,
.p-navigation-archives__next {
    gap: 0 0.781vw;
  }
}
@media screen and (max-width: 599px) {
  .p-navigation-archives__prev,
.p-navigation-archives__next {
    gap: 0 1.538vw;
  }
}

.p-navigation-archives__prev__first a,
.p-navigation-archives__prev__prev a,
.p-navigation-archives__next__next a,
.p-navigation-archives__next__last a {
  background-color: #ffffff;
  color: #005098;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0 0.556vw;
  height: 3.056vw;
  padding: 0 0.833vw;
  border-radius: 0.556vw;
  font-weight: 700;
  line-height: 1;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.p-navigation-archives__prev__first a:hover,
.p-navigation-archives__prev__prev a:hover,
.p-navigation-archives__next__next a:hover,
.p-navigation-archives__next__last a:hover {
  background-color: #005098;
  color: #ffffff;
}
@media screen and (max-width: 1023px) {
  .p-navigation-archives__prev__first a,
.p-navigation-archives__prev__prev a,
.p-navigation-archives__next__next a,
.p-navigation-archives__next__last a {
    gap: 0 1.042vw;
    height: 5.729vw;
    padding: 0 1.563vw;
    border-radius: 1.042vw;
  }
}
@media screen and (max-width: 599px) {
  .p-navigation-archives__prev__first a,
.p-navigation-archives__prev__prev a,
.p-navigation-archives__next__next a,
.p-navigation-archives__next__last a {
    gap: 0 2.051vw;
    height: 11.282vw;
    padding: 0 3.077vw;
    border-radius: 2.051vw;
  }
}

.p-navigation-archives__prev__first a::before,
.p-navigation-archives__prev__prev a::before {
  content: "";
  display: inline-block;
  width: 0.556vw;
  height: 0.833vw;
  background-size: 0.556vw auto;
  background-image: url(../img/common/aroow-left_01-02.svg);
}
@media screen and (max-width: 1023px) {
  .p-navigation-archives__prev__first a::before,
.p-navigation-archives__prev__prev a::before {
    width: 1.042vw;
    height: 1.563vw;
    background-size: 1.042vw auto;
  }
}
@media screen and (max-width: 599px) {
  .p-navigation-archives__prev__first a::before,
.p-navigation-archives__prev__prev a::before {
    width: 2.051vw;
    height: 3.077vw;
    background-size: 2.051vw auto;
  }
}
.p-navigation-archives__prev__first a:hover::before,
.p-navigation-archives__prev__prev a:hover::before {
  background-image: url(../img/common/aroow-left_01.svg);
}

.p-navigation-archives__next__next a::after,
.p-navigation-archives__next__last a::after {
  content: "";
  display: inline-block;
  width: 0.556vw;
  height: 0.833vw;
  background-size: 0.556vw auto;
  background-image: url(../img/common/aroow-right_01-02.svg);
}
@media screen and (max-width: 1023px) {
  .p-navigation-archives__next__next a::after,
.p-navigation-archives__next__last a::after {
    width: 1.042vw;
    height: 1.563vw;
    background-size: 1.042vw auto;
  }
}
@media screen and (max-width: 599px) {
  .p-navigation-archives__next__next a::after,
.p-navigation-archives__next__last a::after {
    width: 2.051vw;
    height: 3.077vw;
    background-size: 2.051vw auto;
  }
}
.p-navigation-archives__next__next a:hover::after,
.p-navigation-archives__next__last a:hover::after {
  background-image: url(../img/common/aroow-right_01.svg);
}

.number-box {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 0 0.556vw;
}
@media screen and (max-width: 1023px) {
  .number-box {
    gap: 0 1.563vw;
    position: absolute;
    left: 50%;
    top: -68px;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
  }
}
@media screen and (max-width: 599px) {
  .number-box {
    gap: 0 3.077vw;
  }
}
.number-box .number.current,
.number-box .number a {
  background-color: #ffffff;
  color: #999999;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  width: 3.056vw;
  height: 3.056vw;
  border-radius: 0.556vw;
  font-weight: 700;
}
@media screen and (max-width: 1023px) {
  .number-box .number.current,
.number-box .number a {
    width: 5.729vw;
    height: 5.729vw;
    border-radius: 1.042vw;
  }
}
@media screen and (max-width: 599px) {
  .number-box .number.current,
.number-box .number a {
    width: 11.282vw;
    height: 11.282vw;
    border-radius: 2.051vw;
  }
}
.number-box .number.current {
  background-color: #005098;
  color: #ffffff;
}
.number-box .number a {
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.number-box .number a:hover {
  background-color: #005098;
  color: #ffffff;
}

.p-navigation-post {
  margin: 5.903vw auto 0;
  width: 28.333vw;
  height: 3.056vw;
  position: relative;
}
.p-navigation-post > * {
  display: inline-block;
}
@media screen and (max-width: 1023px) {
  .p-navigation-post {
    margin: 7.813vw auto 0;
    width: 100%;
    height: 5.729vw;
  }
}
@media screen and (max-width: 599px) {
  .p-navigation-post {
    margin: 15.385vw auto 0;
    height: 11.282vw;
  }
}

.p-navigation-post__prev,
.p-navigation-post__next {
  position: absolute;
}
.p-navigation-post__prev a,
.p-navigation-post__next a {
  background-color: #ffffff;
  border-radius: 0.556vw;
  width: 5.139vw;
  height: 3.056vw;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0 0.556vw;
  line-height: 1;
  color: #ffffff;
  font-weight: 700;
  color: #005098;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.p-navigation-post__prev a:hover,
.p-navigation-post__next a:hover {
  background-color: #005098;
  color: #ffffff;
}
@media screen and (max-width: 1023px) {
  .p-navigation-post__prev a,
.p-navigation-post__next a {
    border-radius: 1.042vw;
    width: 9.635vw;
    height: 5.729vw;
    gap: 0 1.042vw;
  }
}
@media screen and (max-width: 599px) {
  .p-navigation-post__prev a,
.p-navigation-post__next a {
    border-radius: 2.051vw;
    width: 18.974vw;
    height: 11.282vw;
    gap: 0 2.051vw;
  }
}

.p-navigation-post__prev {
  left: 0;
}
.p-navigation-post__prev a::before {
  content: "";
  width: 0.556vw;
  height: 0.833vw;
  background-size: 0.556vw auto;
  background-image: url(../img/common/aroow-left_01-02.svg);
}
@media screen and (max-width: 1023px) {
  .p-navigation-post__prev a::before {
    width: 1.042vw;
    height: 1.563vw;
    background-size: 1.042vw auto;
  }
}
@media screen and (max-width: 599px) {
  .p-navigation-post__prev a::before {
    width: 2.051vw;
    height: 3.077vw;
    background-size: 2.051vw auto;
  }
}
.p-navigation-post__prev a:hover::before {
  background-image: url(../img/common/aroow-left_01.svg);
}

.p-navigation-post__return {
  position: absolute;
  left: 50%;
  top: 0.694vw;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}
@media screen and (max-width: 1023px) {
  .p-navigation-post__return {
    top: 1.302vw;
  }
}
@media screen and (max-width: 599px) {
  .p-navigation-post__return {
    top: 2.564vw;
  }
}
.p-navigation-post__return a {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0 0.556vw;
  color: #005098;
  font-weight: 700;
}
@media screen and (max-width: 1023px) {
  .p-navigation-post__return a {
    gap: 0 1.042vw;
  }
}
@media screen and (max-width: 599px) {
  .p-navigation-post__return a {
    gap: 0 2.051vw;
  }
}
.p-navigation-post__return a::before {
  content: "";
  width: 0.972vw;
  height: 0.972vw;
  background-image: url(../img/common/icon-square_02.svg);
  background-size: 0.972vw auto;
}
@media screen and (max-width: 1023px) {
  .p-navigation-post__return a::before {
    width: 1.823vw;
    height: 1.823vw;
    background-size: 1.823vw auto;
  }
}
@media screen and (max-width: 599px) {
  .p-navigation-post__return a::before {
    width: 3.59vw;
    height: 3.59vw;
    background-size: 3.59vw auto;
  }
}
.p-navigation-post__return a:hover span {
  text-decoration: underline;
}

.p-navigation-post__next {
  right: 0;
}
.p-navigation-post__next a::after {
  content: "";
  width: 0.556vw;
  height: 0.833vw;
  background-size: 0.556vw auto;
  background-image: url(../img/common/aroow-right_01-02.svg);
}
@media screen and (max-width: 1023px) {
  .p-navigation-post__next a::after {
    width: 1.042vw;
    height: 1.563vw;
    background-size: 1.042vw auto;
  }
}
@media screen and (max-width: 599px) {
  .p-navigation-post__next a::after {
    width: 2.051vw;
    height: 3.077vw;
    background-size: 2.051vw auto;
  }
}
.p-navigation-post__next a:hover::after {
  background-image: url(../img/common/aroow-right_01.svg);
}

.p-menu {
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100vh;
  overflow-y: scroll;
  background-color: #ffffff;
  z-index: 10000;
  -webkit-transform: translateX(100%);
          transform: translateX(100%);
  -webkit-transition: -webkit-transform 0.3s;
  transition: -webkit-transform 0.3s;
  transition: transform 0.3s;
  transition: transform 0.3s, -webkit-transform 0.3s;
}
.p-menu.--show {
  -webkit-transform: translateX(0);
          transform: translateX(0);
}

.p-menu__header {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  height: 7.813vw;
  padding: 0 2.604vw;
}
@media screen and (max-width: 599px) {
  .p-menu__header {
    height: 15.385vw;
    padding: 0 5.128vw;
  }
}

.p-menu__header__logo {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0 2.604vw;
}
@media screen and (max-width: 599px) {
  .p-menu__header__logo {
    gap: 0 5.128vw;
  }
}

.p-menu__header__logo__logo img {
  width: 13.672vw;
}
@media screen and (max-width: 599px) {
  .p-menu__header__logo__logo img {
    width: 26.923vw;
  }
}

.p-menu__header__logo__text {
  font-size: 1.302vw;
  font-weight: 700;
}
@media screen and (max-width: 599px) {
  .p-menu__header__logo__text {
    font-size: 2.564vw;
  }
}

.p-menu__header__close {
  position: relative;
  width: 3.385vw;
  height: 3.385vw;
}
.p-menu__header__close::before, .p-menu__header__close::after {
  content: "";
  display: inline-block;
  width: 3.646vw;
  height: 0.26vw;
  background-color: #005098;
  position: absolute;
  left: 50%;
  top: 50%;
}
.p-menu__header__close::before {
  -webkit-transform: translateX(-50%) translateY(-50%) rotate(-45deg);
          transform: translateX(-50%) translateY(-50%) rotate(-45deg);
}
.p-menu__header__close::after {
  -webkit-transform: translateX(-50%) translateY(-50%) rotate(45deg);
          transform: translateX(-50%) translateY(-50%) rotate(45deg);
}
@media screen and (max-width: 599px) {
  .p-menu__header__close {
    width: 6.667vw;
    height: 6.667vw;
  }
  .p-menu__header__close::before, .p-menu__header__close::after {
    width: 7.179vw;
    height: 0.513vw;
  }
}

.p-menu__inner {
  padding: 2.604vw 7.813vw;
}
@media screen and (max-width: 599px) {
  .p-menu__inner {
    padding: 5.128vw 15.385vw;
  }
}

.p-menu__list li {
  border-bottom: 1px solid #D9D9D9;
  text-align: center;
}
.p-menu__list li a {
  display: block;
  font-weight: 700;
  line-height: 1;
  padding: 2.604vw 0;
}
@media screen and (max-width: 599px) {
  .p-menu__list li a {
    padding: 5.128vw 0;
  }
}

.p-menu__btn {
  margin: 2.604vw 0 0 0;
}
.p-menu__btn a {
  position: relative;
  overflow: hidden;
  background-color: #FFCD00;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
  height: 6.25vw;
  border-radius: 13.021vw;
}
.p-menu__btn a span {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0 0.781vw;
  color: #ffffff;
  font-weight: 700;
  line-height: 1;
  z-index: 1;
}
.p-menu__btn a span::before {
  content: "";
  display: inline-block;
  width: 2.604vw;
  height: 2.083vw;
  background-image: url(../img/common/icon-mail_01.svg);
  background-size: 2.604vw auto;
  margin: 0.26vw 0 0 0;
}
@media screen and (max-width: 599px) {
  .p-menu__btn {
    margin: 5.128vw 0 0 0;
  }
  .p-menu__btn a {
    height: 12.308vw;
    border-radius: 6.944vw;
  }
  .p-menu__btn a span {
    gap: 0 1.538vw;
  }
  .p-menu__btn a span::before {
    width: 5.128vw;
    height: 4.103vw;
    background-size: 5.128vw auto;
    margin: 0.513vw 0 0 0;
  }
}

.p-menu__link {
  margin: 5.208vw 0 0 0;
  font-size: 1.823vw;
  text-align: center;
}
@media screen and (max-width: 599px) {
  .p-menu__link {
    margin: 10.256vw 0 0 0;
    font-size: 3.59vw;
  }
}

.p-contact__navi {
  width: 25.694vw;
  margin: 0 auto;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  position: relative;
}
@media screen and (max-width: 1023px) {
  .p-contact__navi {
    width: 100%;
    padding: 0 1.302vw;
  }
}
@media screen and (max-width: 599px) {
  .p-contact__navi {
    padding: 0 2.564vw;
  }
}
.p-contact__navi > dl {
  width: 4.861vw;
  height: 4.861vw;
  border-radius: 100px;
  background-color: #D9D9D9;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  color: #ffffff;
}
.p-contact__navi > dl > dt {
  font-size: 0.694vw;
  font-family: "Sarpanch";
  font-weight: 400;
}
.p-contact__navi > dl > dd {
  font-weight: 700;
}
.p-contact__navi > dl.--current {
  background-color: #005098;
}
@media screen and (max-width: 1023px) {
  .p-contact__navi > dl {
    width: 9.115vw;
    height: 9.115vw;
  }
  .p-contact__navi > dl > dt {
    font-size: 1.302vw;
  }
}
@media screen and (max-width: 599px) {
  .p-contact__navi > dl {
    width: 17.949vw;
    height: 17.949vw;
  }
  .p-contact__navi > dl > dt {
    font-size: 2.564vw;
  }
}
.p-contact__navi::before {
  content: "";
  display: block;
  width: 100%;
  height: 2px;
  position: absolute;
  left: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  z-index: -1;
}
.page-template-page-contact .p-contact__navi::before {
  background: #D9D9D9;
}
.page-template-page-contact-conf .p-contact__navi::before {
  background: -webkit-gradient(linear, left top, right top, from(#005098), color-stop(50%, #005098), color-stop(50%, #D9D9D9), to(#D9D9D9));
  background: -webkit-linear-gradient(left, #005098 0%, #005098 50%, #D9D9D9 50%, #D9D9D9 100%);
  background: linear-gradient(90deg, #005098 0%, #005098 50%, #D9D9D9 50%, #D9D9D9 100%);
}
.page-template-page-contact-comp .p-contact__navi::before {
  background: #005098;
}
@media screen and (max-width: 1023px) {
  .p-contact__navi::before {
    width: calc(100% - 2.604vw);
    left: 50%;
    -webkit-transform: translateX(-50%) translateY(-50%);
            transform: translateX(-50%) translateY(-50%);
  }
}
@media screen and (max-width: 599px) {
  .p-contact__navi::before {
    width: calc(100% - 5.128vw);
  }
}

.p-contact__content {
  background-color: #ffffff;
  border-radius: 2.778vw;
  padding: 5.556vw 4.167vw;
  margin: 4.167vw 0 0 0;
}
@media screen and (max-width: 1023px) {
  .p-contact__content {
    border-radius: 2.604vw;
    padding: 5.208vw 2.604vw;
    margin: 7.813vw 0 0 0;
  }
}
@media screen and (max-width: 599px) {
  .p-contact__content {
    border-radius: 5.128vw;
    padding: 10.256vw 5.128vw;
    margin: 15.385vw 0 0 0;
  }
}
.p-contact__content > dl + dl {
  margin: 2.778vw 0 0 0;
}
.p-contact__content > dl > dt {
  font-size: 1.25vw;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0 0.417vw;
}
.p-contact__content > dl > dt span {
  font-size: 0.972vw;
  font-weight: 400;
  color: #005098;
}
.p-contact__content > dl > dd {
  margin: 0.833vw 0 0 0;
}
@media screen and (max-width: 1023px) {
  .p-contact__content > dl + dl {
    margin: 5.208vw 0 0 0;
  }
  .p-contact__content > dl > dt {
    font-size: 2.344vw;
    gap: 0 0.781vw;
  }
  .p-contact__content > dl > dt span {
    font-size: 1.823vw;
  }
  .p-contact__content > dl > dd {
    margin: 1.563vw 0 0 0;
  }
}
@media screen and (max-width: 599px) {
  .p-contact__content > dl + dl {
    margin: 10.256vw 0 0 0;
  }
  .p-contact__content > dl > dt {
    font-size: 4.615vw;
    gap: 0 1.538vw;
  }
  .p-contact__content > dl > dt span {
    font-size: 3.59vw;
  }
  .p-contact__content > dl > dd {
    margin: 3.077vw 0 0 0;
  }
}
.p-contact__content > *:first-child {
  margin-top: 0;
}
.p-contact__content > *:last-child {
  margin-bottom: 0;
}

.p-contact__content__bottom {
  margin: 4.167vw 0 0 0;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0 2.778vw;
}
@media screen and (max-width: 1023px) {
  .p-contact__content__bottom {
    margin: 7.813vw 0 0 0;
    display: block;
  }
}
@media screen and (max-width: 599px) {
  .p-contact__content__bottom {
    margin: 15.385vw 0 0 0;
  }
}

.p-contact__content__bottom__btn {
  margin: 0;
}
.p-contact__content__bottom__btn input {
  color: #ffffff;
  font-weight: 700;
}
@media screen and (max-width: 1023px) {
  .p-contact__content__bottom__btn + .p-contact__content__bottom__btn {
    margin: 2.604vw 0 0 0;
  }
}
@media screen and (max-width: 599px) {
  .p-contact__content__bottom__btn + .p-contact__content__bottom__btn {
    margin: 5.128vw 0 0 0;
  }
}

.p-contact__content__error {
  display: block;
  width: 100%;
  margin: 0.833vw 0 0 0;
}
.p-contact__content__error .error {
  color: #F32A39 !important;
  font-size: 0.833vw !important;
}
@media screen and (max-width: 1023px) {
  .p-contact__content__error {
    margin: 1.563vw 0 0 0;
  }
  .p-contact__content__error .error {
    font-size: 1.563vw !important;
  }
}
@media screen and (max-width: 599px) {
  .p-contact__content__error {
    margin: 3.077vw 0 0 0;
  }
  .p-contact__content__error .error {
    font-size: 3.077vw !important;
  }
}

.p-contact__error-message {
  border: 2px solid #F32A39;
  text-align: center;
  color: #F32A39;
  font-weight: 700;
  padding: 1.389vw 0;
  margin: 0 0 2.778vw 0;
  display: none;
}
.p-contact__error-message.is-error {
  display: block;
}
@media screen and (max-width: 1023px) {
  .p-contact__error-message {
    text-align: left;
    padding: 2.604vw;
    margin: 0 0 5.208vw 0;
  }
}
@media screen and (max-width: 599px) {
  .p-contact__error-message {
    padding: 5.128vw;
    margin: 0 0 10.256vw 0;
  }
}

.is-error input[type=text],
.is-error textarea {
  background-color: #FFF3F4 !important;
}

::-webkit-input-placeholder {
  color: #999999;
}

::-moz-placeholder {
  color: #999999;
}

:-ms-input-placeholder {
  color: #999999;
}

::-ms-input-placeholder {
  color: #999999;
}

::placeholder {
  color: #999999;
}

input[type=text] {
  background-color: #F6F6F6;
  padding: 0.833vw 1.389vw;
  border-radius: 0.278vw;
}
@media screen and (max-width: 1023px) {
  input[type=text] {
    padding: 1.563vw 2.604vw;
    border-radius: 0.521vw;
  }
}
@media screen and (max-width: 599px) {
  input[type=text] {
    padding: 3.077vw 5.128vw;
    border-radius: 1.026vw;
  }
}

textarea {
  background-color: #F6F6F6;
  padding: 0.833vw 1.389vw;
  border-radius: 0.278vw;
  height: 17.361vw;
  overflow: auto;
}
@media screen and (max-width: 1023px) {
  textarea {
    padding: 1.563vw 2.604vw;
    border-radius: 0.521vw;
    height: 32.552vw;
  }
}
@media screen and (max-width: 599px) {
  textarea {
    padding: 3.077vw 5.128vw;
    border-radius: 1.026vw;
    height: 64.103vw;
  }
}

.p-contact__content__comp-text {
  font-size: 1.667vw;
  font-weight: 700;
  text-align: center;
}
@media screen and (max-width: 1023px) {
  .p-contact__content__comp-text {
    font-size: 2.604vw;
  }
}
@media screen and (max-width: 599px) {
  .p-contact__content__comp-text {
    font-size: 5.128vw;
  }
}

.p-contact__content__comp-link {
  margin: 4.167vw 0 0 0;
  font-weight: 700;
  text-align: center;
}
.p-contact__content__comp-link a {
  color: #005098;
}
@media screen and (max-width: 1023px) {
  .p-contact__content__comp-link {
    margin: 7.813vw 0 0 0;
  }
}
@media screen and (max-width: 599px) {
  .p-contact__content__comp-link {
    margin: 15.385vw 0 0 0;
  }
}

.u-clearfix:after {
  content: "";
  display: block;
  clear: both;
}

.u-clearfix:before {
  content: "";
  display: block;
  clear: both;
}

.u-lite {
  font-weight: 300;
}

.u-regular {
  font-weight: 400;
}

.u-medium {
  font-weight: 500;
}

.u-semi-bold {
  font-weight: 600;
}

.u-bold {
  font-weight: 700;
}

.u-txt-center {
  text-align: center !important;
}

.u-txt-center-left {
  text-align: center !important;
}
@media screen and (max-width: 1023px) {
  .u-txt-center-left {
    text-align: left !important;
  }
}

.u-txt-left-center {
  text-align: left !important;
}
@media screen and (max-width: 1023px) {
  .u-txt-left-center {
    text-align: center !important;
  }
}

@media screen and (max-width: 1023px) {
  .u-sp-fs-20 {
    font-size: 2.604vw;
  }
  .u-sp-fs-18 {
    font-size: 2.344vw;
  }
  .u-sp-fs-16 {
    font-size: 2.083vw;
  }
  .u-sp-fs-14 {
    font-size: 1.823vw;
  }
}
@media screen and (max-width: 599px) {
  .u-sp-fs-20 {
    font-size: 5.128vw;
  }
  .u-sp-fs-18 {
    font-size: 4.615vw;
  }
  .u-sp-fs-16 {
    font-size: 4.103vw;
  }
  .u-sp-fs-14 {
    font-size: 3.59vw;
  }
}
/**
* Foundation
* ========================== */
/**
* Layout
* ========================== */
/* Object
* ========================== */
/* Component ------------ */
/* Project ------------ */
/* Utility ------------ *//*# sourceMappingURL=style.css.map */