.page-support .hero {
  min-height: 60svh;
  background-color: #fff;
  background-image: url("../../images/support/hero_support.png") !important;
  background-repeat: no-repeat;
  background-position: 35% 100%;
  background-size: auto 100%;
  text-align: right;
}
@media (min-width: 980px) {
  .page-support .hero {
    min-height: 100svh;
  }
}
@media (min-width: 1200px) {
  .page-support .hero {
    background-size: cover;
  }
}
.page-support .hero .page_title {
  max-width: 1200px;
  text-align: left !important;
  padding-block: 3em !important;
}
@media (min-width: 980px) {
  .page-support .hero .page_title {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
  }
}
.page-support .hero .page_title .jpn {
  max-width: 10em;
  line-height: 1.5;
  display: inline-block;
}
.page-support .hero .page_title .eng {
  display: none !important;
}
.page-support .hero .txt {
  display: inline-block;
  position: absolute;
  right: 0;
  bottom: -0.25em;
  z-index: -1;
}
.page #main #join {
  margin-block-end: 6em;
}
.page #main .article .entry_content > *:first-child {
  padding-block: 6em;
}
.page #main h2:not(.h2) {
  font-size: 6.2svw;
}
@media (min-width: 500px) {
  .page #main h2:not(.h2) {
    font-size: 4rem;
  }
}
.page #main h3:not(.h3):not(.h2) {
  font-size: 4.5svw;
}
@media (min-width: 500px) {
  .page #main h3:not(.h3):not(.h2) {
    font-size: 3rem;
  }
}
.page #main ol:not(.none) {
  padding-left: 3rem;
  margin-block-end: 1em;
}
.page #main ul:not(.none) {
  list-style: inherit;
  padding-left: 1.5em;
  margin-block-end: 1em;
}
.page #main ul:not(.none) li::marker {
  color: #067276;
}
.page #main.about #about01 .container {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 3em 5%;
}
@media (min-width: 768px) {
  .page #main.about #about01 .container:nth-of-type(2) {
    flex-direction: row-reverse;
  }
}
.page #main.about #about01 .container:nth-of-type(2) .picture {
  margin-inline-start: auto;
}
.page #main.about #about01 .container .title_wrap {
  width: 100%;
}
@media (min-width: 768px) {
  .page #main.about #about01 .container .title_wrap {
    width: 55%;
  }
}
.page #main.about #about01 .container .title_wrap .medium {
  line-height: 2;
  font-feature-settings: "palt";
}
.page #main.about #about01 .container .picture {
  width: 85%;
  max-width: 400px;
}
@media (min-width: 768px) {
  .page #main.about #about01 .container .picture {
    width: 40%;
    max-width: inherit;
  }
}
.page #main.about #about02 {
  background-image: linear-gradient(to bottom, #eee 0%, #fff 100%);
  position: relative;
  z-index: 0;
}
.page #main.about #about02 .txt {
  position: absolute;
  top: -0.34em;
  left: 0;
  z-index: -1;
}
.page #main.about #about02 .container .inner {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 3em;
}
@media (min-width: 768px) {
  .page #main.about #about02 .container .inner {
    grid-template-columns: repeat(3, 1fr);
  }
}
.page #main.about #about02 .container .inner .profile .picture {
  line-height: 0;
  position: relative;
}
.page #main.about #about02 .container .inner .profile .picture .badge {
  color: #fff;
  background-image: linear-gradient(to right, #3FB93F 0%, #2ED6FD 100%);
  font-weight: bold;
  letter-spacing: 0.2em;
  border-radius: 0;
  padding: 0.2em 1em 0.3em;
  position: absolute;
  right: 0;
  bottom: 0;
}
.page #main.about #about03 .container {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  -moz-column-gap: 5%;
       column-gap: 5%;
}
.page #main.about #about03 .container .title_wrap,
.page #main.about #about03 .container .content {
  width: 100%;
}
@media (min-width: 768px) {
  .page #main.about #about03 .container .title_wrap,
  .page #main.about #about03 .container .content {
    width: auto;
  }
}
.page #main.about #about03 .container .title_wrap {
  text-align: center;
}
@media (min-width: 768px) {
  .page #main.about #about03 .container .title_wrap {
    text-align: inherit;
  }
}
.page #main.about #about03 .container .content dl {
  display: grid;
  grid-template-columns: repeat(1, 1fr);
  gap: 1em 2em;
}
@media (min-width: 500px) {
  .page #main.about #about03 .container .content dl {
    grid-template-columns: 7em calc(100% - 9em);
  }
}
.page #main.about #about03 .container .content dl dt span {
  max-width: 7em;
  background-color: #067276;
  text-align: center;
  padding: 0.25em 0.5em 0.35em;
  display: block;
}
.page #main.about #about03 .container .content dl dd {
  margin-block-start: -0.5em;
}
@media (min-width: 500px) {
  .page #main.about #about03 .container .content dl dd {
    padding-block-start: 0.25em;
    margin-block-start: 0;
  }
}
.page #main.membership #membership01 .container .merit_wrap:not(:last-of-type) {
  box-shadow: 0 0 2em -0.5em rgba(6, 114, 118, 0.3);
  padding: 1.5em 2em 2em;
  border-radius: 1em;
}
.page #main.membership #membership01 .container .merit_wrap:not(:last-of-type) .h3 {
  text-align: center;
}
@media (min-width: 768px) {
  .page #main.membership #membership01 .container .merit_wrap:not(:last-of-type) .h3 {
    text-align: inherit;
  }
}
.page #main.membership #membership01 .container .merit_wrap:not(:last-of-type) .inner {
  display: grid;
  grid-template-columns: 100%;
  gap: 1em 4em;
}
@media (min-width: 768px) {
  .page #main.membership #membership01 .container .merit_wrap:not(:last-of-type) .inner {
    grid-template-columns: calc(35% - 4em) 65%;
  }
}
@media (min-width: 980px) {
  .page #main.membership #membership01 .container .merit_wrap:not(:last-of-type) .inner {
    grid-template-columns: calc(25% - 4em) 75%;
  }
}
.page #main.membership #membership01 .container .merit_wrap:not(:last-of-type) .inner .picture {
  text-align: center;
}
.page #main.membership #membership01 .container .merit_wrap:not(:last-of-type) .inner .picture img {
  width: 50%;
  max-width: 200px;
}
@media (min-width: 768px) {
  .page #main.membership #membership01 .container .merit_wrap:not(:last-of-type) .inner .picture img {
    width: 100%;
    max-width: 250px;
  }
}
.page #main.membership #membership01 .container .merit_wrap:not(:last-of-type) .inner .content {
  font-feature-settings: "palt";
}
.page #main.membership #membership01 .container .merit_wrap:not(:last-of-type) .inner .content > p {
  line-height: 2;
}
.page #main.membership #membership01 .container .merit_wrap:not(:last-of-type) .inner .content .example {
  padding: 1em;
}
.page #main.membership #membership01 .container .merit_wrap:not(:last-of-type) .inner .content .example > p {
  background-image: url(../../images/common/icon_check.svg);
  background-repeat: no-repeat;
  background-position: 0.1em calc(50% + 0.1em);
  background-size: 1em;
  padding-inline-start: 1.5em;
}
.page #main.membership #membership01 .container .merit_wrap:last-of-type {
  background-image: linear-gradient(to right, #ECFBEC 0%, #E7F6F7 100%);
  border-top-left-radius: 2em;
  border-top-right-radius: 2em;
  padding: 3em 5%;
  position: relative;
}
.page #main.membership #membership01 .container .merit_wrap:last-of-type .h2 {
  width: 100%;
  position: absolute;
  top: -0.8em;
  left: 0;
}
.page #main.membership #membership01 .container .merit_wrap:last-of-type p {
  line-height: 2;
}
.page #main.membership #membership02 .bg_light_gray {
  background-image: linear-gradient(to bottom, #eee 0%, #fff 100%);
  padding-block: 4em;
  position: relative;
}
.page #main.membership #membership02 .bg_light_gray .txt {
  color: #eee;
  width: 100%;
  text-align: center;
  position: absolute;
  top: -1em;
  left: 0;
  z-index: -1;
}
.page #main.membership #membership02 .bg_light_gray > p {
  padding-inline: 5%;
}
.page #main.membership #membership02 .bg_light_gray p {
  line-height: 2;
}
.page #main.membership #membership02 .bg_light_gray .container:nth-of-type(1) {
  display: grid;
  grid-template-columns: 100%;
  gap: 4em;
  align-items: center;
}
@media (min-width: 768px) {
  .page #main.membership #membership02 .bg_light_gray .container:nth-of-type(1) {
    grid-template-columns: calc(50% - 4em) 50%;
  }
}
.page #main.membership #membership02 .bg_light_gray .container:nth-of-type(2) {
  background-color: #fff;
  padding: 3em 2em;
  box-shadow: 0 0 2em -0.5em rgba(6, 114, 118, 0.3);
  border-radius: 1em;
  position: relative;
}
.page #main.membership #membership02 .bg_light_gray .container:nth-of-type(2) .h2 {
  width: 100%;
  position: absolute;
  top: -0.8em;
  left: 0;
}
.page #main.membership #membership03 .container:nth-of-type(1) .inner {
  display: grid;
}
.page #main.membership #membership03 .container:nth-of-type(1) .inner:nth-of-type(2) {
  grid-template-columns: repeat(1, 1fr);
  gap: 3em;
}
@media (min-width: 768px) {
  .page #main.membership #membership03 .container:nth-of-type(1) .inner:nth-of-type(2) {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (min-width: 980px) {
  .page #main.membership #membership03 .container:nth-of-type(1) .inner:nth-of-type(2) {
    grid-template-columns: repeat(3, 1fr);
  }
}
.page #main.membership #membership03 .container:nth-of-type(1) .inner:nth-of-type(2) .target {
  display: grid;
  grid-template-columns: calc(35% - 1em) 65%;
  align-items: center;
  -moz-column-gap: 1em;
       column-gap: 1em;
}
.page #main.membership #membership03 .container:nth-of-type(1) .inner:nth-of-type(3) {
  grid-template-columns: repeat(1, 1fr);
  gap: 0.5em 2em;
}
@media (min-width: 768px) {
  .page #main.membership #membership03 .container:nth-of-type(1) .inner:nth-of-type(3) {
    grid-template-columns: repeat(2, 1fr);
  }
}
.page #main.membership #membership03 .container:nth-of-type(1) .inner:nth-of-type(3) p {
  background-color: #eee;
  font-weight: bold;
  padding: 1em 0.8em;
}
.page #main.membership #membership03 .container:nth-of-type(2) {
  background-color: #fff;
  padding: 3em 5%;
  box-shadow: 0 0 2em -0.5em rgba(6, 114, 118, 0.3);
  border-radius: 1em;
  position: relative;
}
.page #main.membership #membership03 .container:nth-of-type(2) .h2 {
  width: 100%;
  position: absolute;
  top: -0.8em;
  left: 0;
}
.page #main.membership #membership03 .container:nth-of-type(2) .inner {
  display: grid;
  grid-template-columns: repeat(1, 1fr);
  gap: 0.5em 2em;
}
@media (min-width: 768px) {
  .page #main.membership #membership03 .container:nth-of-type(2) .inner {
    grid-template-columns: repeat(2, 1fr);
  }
}
.page #main.membership #membership03 .container:nth-of-type(2) .inner p {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: nowrap;
  background-color: #eee;
  padding: 1em 0.8em;
}
.page #main.membership #membership03 .container:nth-of-type(2) .inner + p {
  margin-block-start: 1em;
}
@media (min-width: 768px) {
  .page #main.membership #membership03 .container:nth-of-type(2) .inner + p {
    margin-block-start: -1.5em;
  }
}
.page #main.support {
  margin-block-start: -6%;
}
.page #main.support #support01 .container {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 3em 5%;
}
.page #main.support #support01 .container .title_wrap {
  width: 100%;
}
@media (min-width: 768px) {
  .page #main.support #support01 .container .title_wrap {
    width: 55%;
  }
}
.page #main.support #support01 .container .title_wrap .medium {
  line-height: 2;
  font-feature-settings: "palt";
}
.page #main.support #support01 .container .picture {
  width: 85%;
  max-width: 400px;
}
@media (min-width: 768px) {
  .page #main.support #support01 .container .picture {
    width: 40%;
    max-width: inherit;
  }
}
.page #main.support #support02 .bg_gradient {
  background-image: linear-gradient(to right, #ECFBEC 0%, #E7F6F7 100%);
  position: relative;
  z-index: 0;
}
.page #main.support #support02 .bg_gradient .txt {
  width: 100%;
  position: absolute;
  top: -0.34em;
  left: 50%;
  z-index: -1;
  transform: translateX(-50%);
}
.page #main.support #support02 .bg_gradient .container {
  display: grid;
  gap: 2em;
}
@media (min-width: 768px) {
  .page #main.support #support02 .bg_gradient .container {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (min-width: 1200px) {
  .page #main.support #support02 .bg_gradient .container {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media (min-width: 1500px) {
  .page #main.support #support02 .bg_gradient .container {
    gap: 2.5em;
  }
}
.page #main.support #support02 .bg_gradient .container .benefit {
  box-shadow: 0.1em 0.15em 1em -0.5em rgba(6, 114, 118, 0.5);
  padding: 1.25em 1.5em 1.5em;
}
.page #main.support #support02 .bg_gradient .container .benefit .h3 {
  display: flex;
  align-items: center;
  flex-wrap: nowrap;
  -moz-column-gap: 0.5em;
       column-gap: 0.5em;
  margin-block-end: 0.25em;
}
.page #main.support #support02 .bg_gradient .container .benefit .h3 br {
  display: none;
}
@media (min-width: 1200px) {
  .page #main.support #support02 .bg_gradient .container .benefit .h3 br {
    display: inherit;
  }
}
.page #main.support #support02 .bg_gradient .container .benefit p {
  line-height: 2;
}
.page #main.support #support02 .bg_gradient .container + p {
  padding-inline: 5%;
}
.page #main.support #support03 .container {
  display: grid;
  grid-template-columns: repeat(1, 1fr);
  row-gap: 2em;
}
@media (min-width: 980px) {
  .page #main.support #support03 .container {
    grid-template-columns: repeat(2, 1fr);
    -moz-column-gap: 4em;
         column-gap: 4em;
  }
}
.page #main.support #support03 .container .content:nth-of-type(1) .target {
  display: flex;
  align-items: flex-start;
  flex-wrap: nowrap;
  gap: 0.5em 1em;
}
.page #main.support #support03 .container .content:nth-of-type(1) .target .h4 span {
  color: #fff;
  min-width: 7em;
  background-color: #067276;
  text-align: center;
  padding: 0.5em 1em;
  display: inline-block;
}
.page #main.support #support03 .container .content:nth-of-type(2) p:not(.text_right) {
  background-color: #eee;
  padding: 1em 0.8em;
}
.page #main.faq .container .faq_inner .faq {
  border-bottom: #555 solid 1px;
  padding-block: 2em;
}
.page #main.faq .container .faq_inner .faq .question,
.page #main.faq .container .faq_inner .faq .answer {
  display: grid;
  grid-template-columns: 3em calc(100% - 4em);
  gap: 1em;
}
.page #main.faq .container .faq_inner .faq .question span,
.page #main.faq .container .faq_inner .faq .answer span {
  color: #fff;
  width: 2em;
  height: 2em;
  font-weight: bold;
  letter-spacing: 0;
  border-radius: 100%;
  display: grid;
  justify-content: center;
  align-items: center;
}
.page #main.faq .container .faq_inner .faq .question {
  padding-inline-end: 2.5em;
  position: relative;
  cursor: pointer;
}
.page #main.faq .container .faq_inner .faq .question::after {
  content: "";
  display: inline-block;
  width: 2.5em;
  height: 2.5em;
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%20-960%20960%20960%22%20fill%3D%22%23aaa%22%3E%3Cpath%20d%3D%22M440-440H200v-80h240v-240h80v240h240v80H520v240h-80v-240Z%22%2F%3E%3C%2Fsvg%3E");
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 0% 100%;
  position: absolute;
  top: 0;
  right: 0;
  transition: all 0.4s;
}
.page #main.faq .container .faq_inner .faq .question.opened::after {
  transform: rotate(135deg);
}
.page #main.faq .container .faq_inner .faq .answer {
  padding-block-start: 1em;
}
.page #main.sitemap .container .wp-block-page-list,
.page #main.sitemap .container .wp-block-list {
  margin-block-end: 0;
}
.page #main.sitemap .container .wp-block-page-list a,
.page #main.sitemap .container .wp-block-list a {
  color: #222;
  text-decoration: none;
  position: relative;
}
.page #main.sitemap .container .wp-block-page-list a:hover::before,
.page #main.sitemap .container .wp-block-list a:hover::before {
  width: 100%;
}
.page #main.sitemap .container .wp-block-page-list a::before,
.page #main.sitemap .container .wp-block-list a::before {
  content: "";
  width: 0%;
  border-bottom: #222 solid 1px;
  position: absolute;
  left: 0;
  bottom: -1px;
  z-index: 1;
  transition: all 0.4s;
}
.page #main.sitemap .container .wp-block-page-list > li:not(:last-of-type),
.page #main.sitemap .container .wp-block-list > li:not(:last-of-type) {
  margin-block-end: 0.5em;
}
.page #main.sitemap .container .wp-block-page-list > li.has-child:nth-of-type(5) ul,
.page #main.sitemap .container .wp-block-list > li.has-child:nth-of-type(5) ul {
  display: none;
}
.page #main.rule .container h3, .page #main.privacy .container h3 {
  margin-block: 2em 0.5em;
}
.page #main.rule .container p, .page #main.privacy .container p {
  line-height: 2;
}
.page #main.rule .container p + p, .page #main.privacy .container p + p {
  margin-block-start: 1em;
}
.page #main.rule .container ul, .page #main.privacy .container ul {
  margin-block-start: 1em;
}
.page #main.rule .container ul li, .page #main.privacy .container ul li {
  margin-block-end: 0.5em;
}
.page #main.rule .container ul li::marker, .page #main.privacy .container ul li::marker {
  color: #067276;
}
.page #main.rule .container ol, .page #main.privacy .container ol {
  counter-reset: number;
  list-style-type: none;
  margin-block-start: 1em;
}
.page #main.rule .container ol li, .page #main.privacy .container ol li {
  position: relative;
  list-style: none;
  margin-block-end: 0.5em;
  padding-inline-start: 0.25em;
}
.page #main.rule .container ol li:before, .page #main.privacy .container ol li:before {
  color: #fff;
  width: 1.75em;
  height: 1.75em;
  counter-increment: number;
  content: counter(number);
  margin-left: -2em;
  background-color: #067276;
  text-indent: 0;
  font-weight: bold;
  border-radius: 50%;
  font-size: 90%;
  line-height: 1.65em;
  letter-spacing: 0;
  text-align: center;
  display: inline-block;
  position: absolute;
  left: 0;
}
.page #main.contact .entry_content, .page #main.confirm .entry_content {
  padding-block-end: 5em;
  position: relative;
  z-index: 0;
}
.page #main.contact .container, .page #main.confirm .container {
  max-width: 900px;
}
.page #main.contact .container form, .page #main.confirm .container form {
  background-color: #fff;
  box-shadow: 0 0 1.5em -0.5em rgba(6, 114, 118, 0.3);
  border-radius: 1em;
  padding: 5%;
}
.page #main.contact .container .input_box, .page #main.confirm .container .input_box {
  display: flex;
  flex-wrap: wrap;
}
.page #main.contact .container .input_box label, .page #main.confirm .container .input_box label {
  min-width: 25rem;
}
.page #main.contact .container .input_box label + span, .page #main.confirm .container .input_box label + span {
  width: 100%;
}
@media (min-width: 768px) {
  .page #main.contact .container .input_box label + span, .page #main.confirm .container .input_box label + span {
    width: calc(100% - 25rem);
  }
}
.page #main.contact .container .acceptance .wpcf7-list-item-label,
.page #main.contact .container .acceptance .mwform-checkbox-field-text, .page #main.confirm .container .acceptance .wpcf7-list-item-label,
.page #main.confirm .container .acceptance .mwform-checkbox-field-text {
  display: none;
}
.page #main.contact .container .acceptance .error, .page #main.confirm .container .acceptance .error {
  display: inline;
}
.page #main.contact .container [data-name=type] .first,
.page #main.contact .container [data-name=advisor] .first, .page #main.confirm .container [data-name=type] .first,
.page #main.confirm .container [data-name=advisor] .first {
  margin-inline-start: 0;
}
.page #main.contact input[name=namae],
.page #main.contact input[name=company],
.page #main.contact input[name=ceo], .page #main.confirm input[name=namae],
.page #main.confirm input[name=company],
.page #main.confirm input[name=ceo] {
  margin-block-end: 0.5rem;
}
.page #main.contact input[name=zip], .page #main.confirm input[name=zip] {
  width: 10em;
}
.page #main.contact textarea,
.page #main.contact input[name=address], .page #main.confirm textarea,
.page #main.confirm input[name=address] {
  width: 100%;
}
.page #main.contact button,
.page #main.contact input[type=button],
.page #main.contact input[type=reset],
.page #main.contact input[type=submit], .page #main.confirm button,
.page #main.confirm input[type=button],
.page #main.confirm input[type=reset],
.page #main.confirm input[type=submit] {
  font-size: 125%;
}
.page #main.contact input[type=submit], .page #main.confirm input[type=submit] {
  color: #fff;
  background-color: transparent;
  font-weight: bold;
  border: none;
  padding: 0.9em 4em 0.9em 1.5em;
  margin: -0.8em -3.25em -0.8em -1.25em;
  display: inline-block;
}
.page #main.contact input[type=checkbox], .page #main.confirm input[type=checkbox] {
  width: 1.8rem;
  height: 1.8rem;
  position: relative;
  bottom: -0.15em;
}
.page #main.contact label, .page #main.confirm label {
  line-height: 1.8;
}
.page #main.contact .wpcf7-not-valid-tip, .page #main.confirm .wpcf7-not-valid-tip {
  letter-spacing: 0.05em;
}
.page #main.error_404 .container .page_content {
  text-align: center;
}
.page .effect.fade_up {
  opacity: 0;
  transform: translate(0, 30px);
  transition: all 2000ms;
}
.page .effect.fade_down {
  opacity: 0;
  transform: translate(0, -30px);
  transition: all 2000ms;
}
.page .effect.slide_left {
  opacity: 0;
  transform: translate(30px, 0);
  transition: all 2000ms;
}
.page .effect.slide_right {
  opacity: 0;
  transform: translate(-30px, 0);
  transition: all 2000ms;
}
.page .effect:not(.page_title).is_show {
  opacity: 1;
  transform: translate(0, 0);
}
.page .page_title.effect.fade_in {
  opacity: 0;
  transition: all 2000ms;
  transition-delay: 2s;
}
.page .page_title.effect.is_show {
  opacity: 1;
}/*# sourceMappingURL=page.css.map */