@charset "UTF-8";
html,
body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font: inherit;
  font-size: 100%;
  vertical-align: baseline;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  margin-bottom: 1.5em;
  font-weight: bold;
}

h1 {
  font-size: 2em;
}

h2 {
  font-size: 1.8em;
}

h3 {
  font-size: 1.6em;
}

h4 {
  font-size: 1.4em;
}

h5 {
  font-size: 1.2em;
}

h6 {
  font-size: 1em;
}

ol,
ul {
  margin-bottom: 1.5em;
  padding-left: 1.5em;
}

table {
  width: 100%;
  margin-bottom: 1.5em;
  border-spacing: 0;
  border-collapse: collapse;
}

table th,
table td {
  padding: 0.5em;
  border: 1px solid #000;
}

table th {
  font-weight: bold;
}

caption,
table th,
table td {
  font-weight: normal;
  text-align: left;
  vertical-align: middle;
}

q,
blockquote {
  quotes: none;
}

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

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary {
  display: block;
}

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

body * {
  max-height: 99999em;
  word-break: break-word;
}

p {
  margin-bottom: 1.5em;
}

a {
  color: inherit;
}

a:hover {
  text-decoration: none;
}

img {
  display: inline-block;
  max-width: 100%;
  height: auto;
  vertical-align: middle;
}

a img {
  border: none;
}

input,
label,
select,
button {
  line-height: inherit;
}

input,
label,
select,
button,
textarea {
  display: inline-block;
  margin: 0;
  padding: 0;
  border: 0;
  background: none;
  font: inherit;
  word-break: normal;
  vertical-align: middle;
  white-space: normal;
  -webkit-appearance: none;
}

button {
  color: inherit;
}

textarea {
  overflow: auto;
  line-height: 1.5;
  white-space: pre-line;
  resize: none;
}

button:focus {
  outline: 0;
}

input:focus,
textarea:focus,
select:focus {
  outline: auto;
}

input[type=search] {
  -webkit-appearance: textfield;
}

::-webkit-search-decoration {
  display: none;
}

html {
  opacity: 0.01;
  -webkit-text-size-adjust: none;
  -moz-text-size-adjust: none;
  -ms-text-size-adjust: none;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
html.wf-active {
  opacity: 1;
}
@media print, (width >= 768px) {
  html {
    overflow: auto scroll;
    font-size: 625%;
  }
}
@media (768px <= width <= 1200px) {
  html {
    font-size: clamp(0.16rem, 8.3333333333vw, 625%);
  }
}
@media only screen and (width <= 767px) {
  html::-webkit-scrollbar {
    width: 0;
    opacity: 0;
  }
  html {
    min-height: 100vh;
    font-size: 25vw;
  }
}

body {
  color: #1e1e1e;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  -webkit-tap-highlight-color: rgba(255, 255, 255, 0);
  -webkit-font-feature-settings: "palt";
  font-feature-settings: "palt";
}
body * {
  letter-spacing: 0.06em;
}
@media print, (width >= 768px) {
  body {
    font-size: 0.16rem;
    line-height: 1.9375;
  }
}
@media only screen and (width <= 767px) {
  body {
    font-size: 0.14rem;
    line-height: 1.7142857143;
  }
  body.is-open-menu {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
  }
}

a:not([class]) {
  -webkit-transition: -webkit-text-decoration 0.3s ease;
  transition: -webkit-text-decoration 0.3s ease;
  transition: text-decoration 0.3s ease;
  transition: text-decoration 0.3s ease, -webkit-text-decoration 0.3s ease;
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 0.04rem;
  cursor: pointer;
}
@media (hover: hover) {
  a:not([class]):hover {
    -webkit-text-decoration-color: transparent;
    text-decoration-color: transparent;
  }
}

img,
svg {
  image-rendering: smooth;
  shape-rendering: geometricprecision;
}

.u-hidden {
  display: none;
}

@media print {
  html,
  body {
    width: 1600px;
    margin: 0;
  }
  body {
    -webkit-print-color-adjust: exact;
  }
  @page {
    margin: 0;
    size: 11in 14.028in;
  }
  @page :left {
    margin: 0;
  }
  @page :right {
    margin: 0;
  }
  @page :first {
    margin-top: 0;
  }
}
.l-container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
@media only screen and (width <= 767px) {
  .l-container {
    min-width: 320px;
  }
}

@media print, (width >= 768px) {
  .l-wrapper {
    width: calc(100% - 0.6rem);
    max-width: 10.8rem;
    margin-right: auto;
    margin-left: auto;
  }
}
@media only screen and (width <= 767px) {
  .l-wrapper {
    padding-right: 0.2rem;
    padding-left: 0.2rem;
  }
}

@media only screen and (width <= 767px) {
  #l-main {
    padding-top: 0.49rem;
  }
}

.l-footer__logo {
  display: block;
}
.l-footer__copyright {
  color: #02773a;
  font-family: "Outfit", sans-serif;
  font-weight: 700;
  letter-spacing: 0.02em;
}
.l-footer__link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin: 0;
  padding: 0;
  letter-spacing: 0.1em;
  list-style: none;
}
.l-footer__link-item {
  position: relative;
}
.l-footer__link-item::before {
  content: "";
  position: absolute;
  top: 50%;
  border-left: 0.01rem solid #1e1e1e;
}
.l-footer__link-detail {
  position: relative;
  text-decoration: none;
}
.l-footer__link-detail::before {
  content: "";
  position: absolute;
  right: 0;
  bottom: -0.02rem;
  width: 0;
  height: 0.01rem;
  -webkit-transition: 0.2s;
  transition: 0.2s;
  background-color: #1e1e1e;
}
.l-footer__link-detail:hover::before, .l-footer__link-detail--current::before {
  right: auto;
  left: 0;
  width: 100%;
}
.l-footer__link-detail[target=_blank] {
  position: relative;
}
.l-footer__link-detail[target=_blank]::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  background: url("../img/common/target_icn_01.svg") no-repeat center/auto 100%;
}
@media print, (width >= 768px) {
  .l-footer {
    padding: 0.77rem 0 0.5rem;
  }
  .l-footer__wrapper {
    width: calc(100% - 0.6rem);
    max-width: 11.4rem;
    margin: 0 auto;
  }
  .l-footer__main {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin-bottom: 0.31rem;
    padding-bottom: 0.39rem;
    border-bottom: 0.01rem solid #02773a;
  }
  .l-footer__logo {
    width: 1.95rem;
  }
  .l-footer__bottom {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
  }
  .l-footer__copyright {
    font-size: 0.12rem;
  }
  .l-footer__link {
    margin-right: -0.04rem;
  }
  .l-footer__link-item {
    padding: 0 0.19rem;
  }
  .l-footer__link-item::before {
    left: 0;
    height: 0.18rem;
    margin-top: -0.08rem;
  }
  .l-footer__link-item:first-child::before {
    display: none;
  }
  .l-footer__link-item:last-child {
    padding-right: 0;
  }
  .l-footer__link-detail[target=_blank] {
    padding-right: 0.2rem;
  }
  .l-footer__link-detail[target=_blank]::after {
    width: 0.15rem;
    height: 0.15rem;
    margin-top: -0.07rem;
  }
}
@media only screen and (width <= 767px) {
  .l-footer {
    padding: 0.3rem 0.2rem 0.5rem;
  }
  .l-footer__logo {
    width: 1.95rem;
    margin: 0 auto 0.25rem;
  }
  .l-footer__copyright {
    display: block;
    font-size: 0.1rem;
    text-align: center;
  }
  .l-footer__link {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 3.3rem;
    margin: 0 auto 0.19rem;
    row-gap: 0.03rem;
  }
  .l-footer__link-item {
    margin-bottom: -0.02rem;
    padding: 0 0.2rem;
  }
  .l-footer__link-item::before {
    right: 0;
    height: 0.14rem;
    margin-top: -0.06rem;
  }
  .l-footer__link-item:nth-child(even)::before, .l-footer__link-item:last-child::before {
    display: none;
  }
  .l-footer__link-detail[target=_blank] {
    padding-right: 0.16rem;
  }
  .l-footer__link-detail[target=_blank]::after {
    width: 0.13rem;
    height: 0.13rem;
    margin-top: -0.06rem;
  }
}

.l-footer-navigation {
  margin-right: -0.04rem;
  padding-top: 0.09rem;
}
.l-footer-navigation__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin: 0;
  padding: 0;
  list-style: none;
}
.l-footer-navigation__item {
  margin-left: 0.17rem;
}
.l-footer-navigation__link {
  position: relative;
  letter-spacing: 0.1em;
  text-decoration: none;
}
.l-footer-navigation__link::before {
  content: "";
  position: absolute;
  right: 0;
  bottom: -0.02rem;
  width: 0;
  height: 0.01rem;
  -webkit-transition: 0.2s;
  transition: 0.2s;
  background-color: #1e1e1e;
}
.l-footer-navigation__link:hover::before {
  right: auto;
  left: 0;
  width: 100%;
}
.l-footer-navigation__link--current::before {
  width: 100%;
}

.c-button-skip {
  position: absolute;
  z-index: 10001;
  width: 0.01rem;
  height: 0.01rem;
  margin: -0.01rem;
  padding: 0;
  overflow: hidden;
  clip: rect(0.01rem, 0.01rem, 0.01rem, 0.01rem);
  border: 0;
  -webkit-clip-path: inset(50%);
  clip-path: inset(50%);
}

.c-button-skip:focus {
  display: block;
  z-index: 1000;
  top: 0.05rem;
  left: 0.05rem;
  width: auto;
  height: auto;
  padding: 0.15rem 0.23rem 0.14rem;
  clip: auto;
  background-color: #eee;
  color: #444;
  font-size: 0.14rem;
  line-height: normal;
  text-decoration: none;
  -webkit-clip-path: none;
  clip-path: none;
}

.l-header {
  z-index: 10000;
  top: 0;
  left: 0;
}
.l-header__wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
.l-header__logo {
  display: block;
}
@media print, (width >= 768px) {
  .l-header {
    position: relative;
  }
  .l-header__wrapper {
    min-height: 0.77rem;
    padding: 0.32rem 0.29rem 0 0.31rem;
  }
  .l-header__logo {
    width: 1.63rem;
  }
}
@media only screen and (width <= 767px) {
  .l-header {
    position: absolute;
    width: 100%;
  }
  .l-header__wrapper {
    position: fixed;
    top: 0;
    right: 0;
    left: 0;
    min-height: 0.49rem;
    background-color: #fff;
  }
  .l-header__logo {
    width: 1.29rem;
    margin: 0.1rem 0 0.1rem 0.1rem;
  }
}

.l-header-navigation__list, .l-header-navigation__button {
  margin: 0;
  padding: 0;
  list-style: none;
}
.l-header-navigation__link {
  text-decoration: none;
}
.l-header-navigation .c-button--primary {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -ms-flex-direction: row-reverse;
  flex-direction: row-reverse;
  min-width: 1.65rem;
  min-height: 0.45rem;
  padding: 0.05rem 0.1rem;
  gap: 0;
}
.l-header-navigation .c-button--primary .c-button__icon {
  display: inline-block;
  position: relative;
  top: unset;
  right: unset;
  left: unset;
  -webkit-transform: unset;
  -ms-transform: unset;
  transform: unset;
}
.l-header-navigation .c-button--primary .c-button__text {
  bottom: 0.01rem;
  font-size: 0.16rem;
  letter-spacing: 0.1em;
}
.l-header-navigation .c-button--primary.c-button--orange {
  gap: 0.05rem;
}
@media print, (width >= 768px) {
  .l-header-navigation__inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }
  .l-header-navigation__list, .l-header-navigation__button {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }
  .l-header-navigation__list {
    margin-right: 0.09rem;
  }
  .l-header-navigation__item {
    margin-right: 0.17rem;
  }
  .l-header-navigation__link {
    position: relative;
    -webkit-transition: all 0.2s ease;
    transition: all 0.2s ease;
    font-size: 0.16rem;
    letter-spacing: 0.1em;
  }
  .l-header-navigation__link::before {
    content: "";
    position: absolute;
    right: 0;
    bottom: -0.02rem;
    width: 0;
    height: 0.01rem;
    -webkit-transition: 0.2s;
    transition: 0.2s;
    background-color: #1e1e1e;
  }
  .l-header-navigation__link:hover::before {
    right: auto;
    left: 0;
    width: 100%;
  }
  .l-header-navigation__button-item:first-child {
    margin-right: 0.1rem;
  }
}
@media (768px <= width <= 1280px) {
  .l-header-navigation__item {
    margin-right: 0.1rem;
  }
}
@media only screen and (width <= 767px) {
  .l-header-navigation {
    display: none;
    position: fixed;
    z-index: 999;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    height: 100vh;
    background: #02773a;
  }
  .l-header-navigation__logo {
    display: block;
    position: relative;
    top: 0.1rem;
    left: 0.1rem;
    width: 1.3rem;
  }
  .l-header-navigation__wrapper {
    height: 100%;
    padding-top: 0.2rem;
  }
  .l-header-navigation__inner {
    height: 100dvh;
    padding: 0.15rem 0.2rem 1.2rem;
    overflow-y: auto;
  }
  .l-header-navigation__inner::-webkit-scrollbar {
    display: none;
    -ms-overflow-style: none;
    scrollbar-width: none;
  }
  .l-header-navigation__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }
  .l-header-navigation__item {
    width: calc((100% - 0.2rem) / 2);
    margin-right: 0.2rem;
    border-bottom: 0.01rem solid #fff;
  }
  .l-header-navigation__item:nth-child(even) {
    margin-right: 0;
  }
  .l-header-navigation__link {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    position: relative;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    min-height: 0.45rem;
    padding: 0.05rem 0.25rem 0.05rem 0;
    color: #fff;
    font-size: 0.16rem;
    letter-spacing: 0.1em;
  }
  .l-header-navigation__link::after {
    content: "";
    position: absolute;
    top: 50%;
    right: 0;
    width: 0.16rem;
    height: 0.16rem;
    margin-top: -0.07rem;
    background: url("../img/common/icn_arrow_03.svg") no-repeat center/auto 100%;
  }
  .l-header-navigation__action {
    margin: 0.4rem auto 0.09rem;
  }
  .l-header-navigation .c-section-contact {
    padding: 0;
    background: unset;
  }
  .l-header-navigation .c-section-contact__inner {
    padding: 0;
    background: unset;
  }
}
.l-header-navigation__link--current::before {
  width: 100%;
}

.l-header-information {
  margin-top: 0.23rem;
  color: #fff;
}
.l-header-information__copyright {
  display: block;
  font-family: "Outfit", sans-serif;
  font-size: 0.1rem;
  font-weight: 700;
  letter-spacing: 0.02em;
  text-align: center;
}
.l-header-information__link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 3.3rem;
  margin: 0 auto 0.22rem;
  padding: 0;
  letter-spacing: 0.1em;
  list-style: none;
}
.l-header-information__link-item {
  position: relative;
  margin-bottom: -0.02rem;
  padding: 0 0.2rem;
}
.l-header-information__link-item::before {
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  height: 0.14rem;
  margin-top: -0.06rem;
  border-left: 0.01rem solid #fff;
}
.l-header-information__link-item:nth-child(even)::before, .l-header-information__link-item:last-child::before {
  display: none;
}
.l-header-information__link-detail {
  text-decoration: none;
}
.l-header-information__link-detail.l-header-information__link-detail--external {
  position: relative;
  padding-right: 0.16rem;
}
.l-header-information__link-detail.l-header-information__link-detail--external::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  width: 0.13rem;
  height: 0.13rem;
  margin-top: -0.06rem;
  background: url("../img/common/target_icn_01.svg") no-repeat center/auto 100%;
  -webkit-filter: brightness(0) invert(1);
  filter: brightness(0) invert(1);
}

.l-button-menu {
  position: relative;
  z-index: 1000;
  width: 0.41rem;
  height: 0.41rem;
  border-bottom-left-radius: 0.1rem;
  background-color: #02773a;
  cursor: pointer;
}
.l-button-menu__line {
  position: absolute;
  width: 0.2rem;
  height: 0.02rem;
  margin-left: 0.11rem;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
  border-bottom: 0.02rem solid #fff;
}
.l-button-menu__line:nth-child(1) {
  top: 0.12rem;
}
.l-button-menu__line:nth-child(2) {
  top: 0.19rem;
}
.l-button-menu__line:nth-child(3) {
  top: 0.26rem;
}
.l-button-menu.is-active .l-button-menu__line {
  border-color: #fff;
}
.l-button-menu.is-active .l-button-menu__line:nth-child(1) {
  top: 0.2rem;
  -webkit-transform: rotate(-30deg);
  -ms-transform: rotate(-30deg);
  transform: rotate(-30deg);
}
.l-button-menu.is-active .l-button-menu__line:nth-child(2) {
  opacity: 0;
}
.l-button-menu.is-active .l-button-menu__line:nth-child(3) {
  top: 0.2rem;
  -webkit-transform: rotate(30deg);
  -ms-transform: rotate(30deg);
  transform: rotate(30deg);
}
.l-button-menu.is-active .is-open {
  opacity: 0;
}
.l-button-menu.is-active .is-close {
  opacity: 1;
}

.c-section-product {
  color: #fff;
}
.c-section-product__wrapper {
  background: -webkit-gradient(linear, left top, right top, color-stop(20%, #007800), to(#004600));
  background: linear-gradient(90deg, #007800 20%, #004600 100%);
}
.c-section-product__wrapper:last-child {
  margin-bottom: 0;
}
@media print, (width >= 768px) {
  .c-section-product {
    margin-bottom: 1.2rem;
  }
  .c-section-product--margin {
    margin-bottom: 1.6rem;
  }
  .c-section-product__banner {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: 5.99rem;
  }
  .c-section-product__content {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    padding: 0.1rem 0 0.1rem 0.5rem;
  }
  .c-section-product__wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-bottom: 0.4rem;
    padding: 0.35rem 0.25rem 0.35rem 0.3rem;
    border-radius: 0.15rem;
  }
  .c-section-product__wrapper--revert {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
    padding: 0.28rem 1.18rem 0.37rem 0.3rem;
  }
  .c-section-product__wrapper--revert .c-section-product__banner {
    width: 4.65rem;
    margin-top: 0.1rem;
  }
  .c-section-product__wrapper--revert .c-section-product__content {
    padding: 0.15rem 0 0.15rem 0.3rem;
  }
  .c-section-product__title {
    margin-bottom: 0.08rem;
    font-size: 0.3rem;
  }
}
@media only screen and (width <= 767px) {
  .c-section-product {
    margin-bottom: 0.6rem;
  }
  .c-section-product__banner {
    width: 100%;
    margin-bottom: 0.22rem;
  }
  .c-section-product__title {
    position: absolute;
    top: 0.2rem;
    right: 0;
    left: 0;
    margin-bottom: 0.1rem;
    font-size: 0.24rem;
    text-align: center;
  }
  .c-section-product__wrapper {
    position: relative;
    margin-bottom: 0.3rem;
    padding: 0.8rem 0.25rem 0.3rem;
    border-radius: 0.1rem;
  }
  .c-section-product__content-detail {
    margin-bottom: 0.25rem;
    font-size: 0.14rem;
    line-height: 1.7142857143;
    text-align: center;
  }
  .c-section-product__content-button {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    max-width: 3rem;
    margin: 0 auto;
  }
}

.c-section-contact {
  background: -webkit-gradient(linear, left top, right top, color-stop(20%, #007800), to(#004600));
  background: linear-gradient(90deg, #007800 20%, #004600 100%);
  color: #fff;
}
.c-section-contact__list-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin: 0;
  padding: 0;
  list-style: none;
}
.c-section-contact__list-link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  overflow: hidden;
  background-color: #fff;
}
.c-section-contact a.c-section-contact__list-link {
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
  opacity: 1;
  text-decoration: none;
}
@media (hover: hover) {
  .c-section-contact a.c-section-contact__list-link:hover {
    opacity: 0.5;
  }
}
.c-section-contact__list-title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  color: #02773a;
  font-weight: 700;
}
.c-section-contact__list-title span {
  display: block;
}
.c-section-contact__title-english {
  letter-spacing: 0.1em;
}
.c-section-contact__title-japanese {
  letter-spacing: 0.1em;
  line-height: 0.775;
}
.c-section-contact__title-phone, .c-section-contact__title-english {
  font-family: "Outfit", sans-serif;
}
.c-section-contact__title-phone {
  margin-top: -0.05rem;
  letter-spacing: 0;
  line-height: 1;
}
.c-section-contact__heading {
  margin-bottom: 0.28rem;
  text-align: center;
}
.c-section-contact__title-note {
  font-weight: 400;
}
@media print, (width >= 768px) {
  .c-section-contact {
    padding: 0.5rem 0 0.7rem;
    border-radius: 0.3rem;
  }
  .c-section-contact__content {
    text-align: center;
  }
  .c-section-contact__title {
    margin-bottom: 0.12rem;
    font-size: 0.3rem;
    line-height: 1.5;
  }
  .c-section-contact__text {
    font-size: 0.18rem;
    line-height: 1.9444444444;
  }
  .c-section-contact__list-wrapper {
    margin: 0 -0.2rem;
  }
  .c-section-contact__list-item {
    width: 100%;
    max-width: 3.94rem;
    padding: 0 0.2rem;
  }
  .c-section-contact .l-wrapper {
    max-width: 11.4rem;
  }
  .c-section-contact__title-english {
    margin-bottom: 0.08rem;
    font-size: 0.16rem;
  }
  .c-section-contact__title-japanese {
    font-size: 0.4rem;
  }
  .c-section-contact__list-link {
    height: 100%;
    min-height: 1.9rem;
    padding: 0.5rem 0.2rem 0.2rem;
    border-radius: 0.1rem;
  }
  .c-section-contact__list-item:last-of-type .c-section-contact__list-link {
    padding-top: 0.43rem;
  }
  .c-section-contact__title-phone {
    font-size: 0.44rem;
  }
  .c-section-contact__heading {
    font-size: 0.24rem;
  }
  .c-section-contact__list-image {
    width: 1.59rem;
    margin: 0 auto 0.2rem;
  }
  .c-section-contact__list-title {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    text-align: center;
  }
}
@media print {
  .c-section-contact {
    -webkit-column-break-inside: avoid;
    -moz-column-break-inside: avoid;
    break-inside: avoid;
    page-break-inside: avoid;
  }
}
@media only screen and (width <= 767px) {
  .c-section-contact {
    padding-top: 0.24rem;
    padding-bottom: 0.3rem;
    border-radius: 0.2rem;
  }
  .c-section-contact__title {
    margin-bottom: 0.13rem;
    font-size: 0.2rem;
    line-height: 1.5;
    text-align: center;
  }
  .c-section-contact__list-wrapper {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 0.1rem;
  }
  .c-section-contact__title-english {
    margin-bottom: 0.04rem;
    font-size: 0.14rem;
  }
  .c-section-contact__title-japanese {
    font-size: 0.3rem;
  }
  .c-section-contact__title-phone {
    font-size: 0.34rem;
  }
  .c-section-contact__title-note {
    font-size: 0.14rem;
  }
  .c-section-contact__heading {
    margin-bottom: 0.25rem;
    font-size: 0.2rem;
    line-height: 1.5;
  }
  .c-section-contact__list-link {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding: 0.2rem 0.15rem 0.2rem 0.23rem;
    border-radius: 0.05rem;
    gap: 0.22rem;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    text-align: center;
  }
  .c-section-contact__list-image {
    width: 0.73rem;
  }
  .c-section-contact__list-title {
    margin-bottom: 0.12rem;
    font-size: 0.2rem;
  }
  .c-section-contact__list-title--spacing {
    margin-bottom: 0.02rem;
  }
}

.c-block-fixed {
  position: fixed;
  z-index: 998;
  right: 0;
  bottom: -0.01rem;
  left: 0;
}
.c-block-fixed__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin: 0;
  padding: 0;
  list-style: none;
}
.c-block-fixed__item {
  width: 50%;
}
.c-block-fixed .c-button__icon.c-button__icon--document {
  bottom: 0;
}
.c-block-fixed .c-button.c-button--primary {
  width: 100%;
  min-height: 0.45rem;
  padding: 0.04rem 0.2rem 0.06rem;
  border-radius: 0;
  font-size: 0.16rem;
  gap: 0.03rem;
}
.c-block-fixed .c-button--primary.c-button--orange {
  gap: 0.03rem;
}

.c-block-simulator__action-decoration {
  width: 1.71rem;
}
.c-block-simulator__action-decoration--width {
  position: relative;
  width: 2.31rem;
}
.c-block-simulator__action-button {
  display: block;
}
@media print, (width >= 768px) {
  .c-block-simulator {
    margin-bottom: 1.18rem;
  }
  .c-block-simulator .l-wrapper {
    max-width: 10rem;
  }
  .c-block-simulator__action {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
  }
  .c-block-simulator__action-decoration--width {
    right: -0.5rem;
  }
  .c-block-simulator__action-button {
    width: 5.2rem;
  }
  .c-block-simulator--margin {
    margin-bottom: 0;
  }
  .c-block-simulator--margin .c-block-simulator__action-decoration--width {
    right: -0.3rem;
  }
  .c-block-simulator--margin .l-wrapper {
    max-width: 10.8rem;
  }
}
@media only screen and (width <= 767px) {
  .c-block-simulator {
    margin-bottom: 0.6rem;
  }
  .c-block-simulator--margin {
    margin-bottom: 0;
  }
  .c-block-simulator__action-decoration {
    margin: 0 auto;
  }
  .c-block-simulator__action-button {
    margin: 0.4rem 0;
  }
}

.c-block-heading__date {
  display: block;
  color: #02773a;
  font-family: "Outfit", sans-serif;
  font-size: 0.16rem;
  font-weight: 700;
  letter-spacing: 0.1em;
}
.c-block-heading__title {
  color: #1e1e1e;
  font-weight: 700;
  line-height: 1.5;
}
.c-block-heading__title:last-child {
  margin-bottom: 0;
}
.c-block-heading__wrapper {
  position: relative;
  border-bottom: 1px solid #c8e6c8;
}
.c-block-heading--case .c-block-heading__title {
  margin-bottom: 0.22rem;
  color: #02773a;
}
.c-block-heading--case .c-block-heading__subtitle,
.c-block-heading--case .c-block-heading__describe {
  color: #0a0a0a;
  font-weight: 700;
}
.c-block-heading--case .c-block-heading__subtitle {
  margin-bottom: 0.2rem;
  font-size: 0.2rem;
}
.c-block-heading--case .c-block-heading__describe {
  margin-bottom: 0.1rem;
  font-size: 0.18rem;
}
@media print, (width >= 768px) {
  .c-block-heading {
    margin-bottom: 0.56rem;
  }
  .c-block-heading__title {
    font-size: 0.3rem;
  }
  .c-block-heading__wrapper {
    margin-bottom: 0.58rem;
    padding-bottom: 0.22rem;
  }
  .c-block-heading__image {
    width: 7.55rem;
    margin: 0 auto;
  }
}
@media only screen and (width <= 767px) {
  .c-block-heading {
    margin-bottom: 0.4rem;
  }
  .c-block-heading__title {
    font-size: 0.24rem;
  }
  .c-block-heading__wrapper {
    margin-bottom: 0.3rem;
    padding-bottom: 0.2rem;
  }
}

.c-block-faq {
  border-radius: 0.3rem;
  background-color: #f0faf0;
}
.c-block-faq__item-title {
  padding: 0.04rem 0.2rem 0 0.35rem;
  color: #02773a;
  font-size: 0.18rem;
  font-weight: 700;
  letter-spacing: 0.1em;
}
.c-block-faq__item-heading {
  position: relative;
  padding-bottom: 0.16rem;
  border-bottom: 1px solid #969696;
  cursor: pointer;
}
.c-block-faq__item-heading::before, .c-block-faq__item-heading::after {
  content: "";
  position: absolute;
  top: calc(50% - 0.06rem);
  right: 0.02rem;
  width: 0.1rem;
  height: 0.01rem;
  -webkit-transition: -webkit-transform 0.3s ease;
  transition: -webkit-transform 0.3s ease;
  transition: transform 0.3s ease;
  transition: transform 0.3s ease, -webkit-transform 0.3s ease;
  background-color: #1e1e1e;
}
.c-block-faq__item-heading::before {
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}
.c-block-faq__item-heading::after {
  -webkit-transform: translateY(-50%) rotate(90deg);
  -ms-transform: translateY(-50%) rotate(90deg);
  transform: translateY(-50%) rotate(90deg);
}
.c-block-faq__list-item:last-child {
  margin-bottom: 0;
}
.c-block-faq__list-item.is-active .c-block-faq__item-heading::after {
  -webkit-transform: translateY(-50%) rotate(0);
  -ms-transform: translateY(-50%) rotate(0);
  transform: translateY(-50%) rotate(0);
}
.c-block-faq__item-heading, .c-block-faq__item-inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  gap: 0.14rem;
}
.c-block-faq__content-note {
  display: block;
}
.c-block-faq__content-note--green {
  color: #02773a;
}
.c-block-faq__content-text {
  font-size: 0.16rem;
  line-height: 1.9375;
}
.c-block-faq__content-text:last-child {
  margin-bottom: 0;
}
.c-block-faq__item-content {
  display: none;
  padding-top: 0.1rem;
}
.c-block-faq__item-title, .c-block-faq__item-inner {
  position: relative;
}
.c-block-faq__item-title::before, .c-block-faq__item-inner::before {
  content: "";
  display: inline-block;
  left: 0;
  -webkit-box-flex: 0;
  -ms-flex: 0 0 auto;
  flex: 0 0 auto;
}
.c-block-faq__item-title::before {
  position: absolute;
  background: url("../img/common/icon_question.svg") center/100% auto no-repeat;
}
.c-block-faq__item-inner::before {
  position: relative;
  background: url("../img/common/icon_answer.svg") center/100% auto no-repeat;
}
@media print, (width >= 768px) {
  .c-block-faq {
    padding: 0.77rem 0.8rem;
  }
  .c-block-faq__list-item {
    margin-bottom: 0.45rem;
  }
  .c-block-faq__item-title::before, .c-block-faq__item-inner::before {
    top: 0.04rem;
    width: 0.23rem;
    height: 0.23rem;
  }
  .c-block-faq__item-title {
    line-height: 1.2;
  }
}
@media only screen and (width <= 767px) {
  .c-block-faq {
    padding: 0.4rem 0.2rem;
  }
  .c-block-faq__list-item {
    margin-bottom: 0.3rem;
  }
  .c-block-faq__item-title::before, .c-block-faq__item-inner::before {
    top: 0.07rem;
    width: 0.2rem;
    height: 0.2rem;
  }
  .c-block-faq__item-title {
    line-height: 1.5;
  }
}

.c-block-media__description {
  margin-bottom: 0;
}
@media print, (width >= 768px) {
  .c-block-media {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
  }
  .c-block-media__content {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    padding-right: 0.15rem;
  }
  .c-block-media__photo {
    -ms-flex-item-align: start;
    align-self: flex-start;
  }
  .c-block-media .c-heading--primary {
    margin-bottom: 0.24rem;
    line-height: 1.375;
  }
}
@media only screen and (width <= 767px) {
  .c-block-media__photo {
    width: 3.2rem;
    margin: 0 auto 0.32rem;
  }
  .c-block-media .c-heading--primary {
    margin-bottom: 0.24rem;
    text-align: center;
  }
}

.c-heading {
  position: relative;
}
.c-heading--primary {
  color: #02773a;
  font-weight: 700;
}
.c-heading--secondary {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  text-align: center;
}
.c-heading--secondary::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 50%;
  width: 0.5rem;
  height: 0.03rem;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
  background-color: #ff8c00;
}
.c-heading--secondary .c-heading__english {
  color: #fff;
  font-family: "Outfit", sans-serif;
  letter-spacing: 0.1em;
  line-height: 1;
}
.c-heading--secondary .c-heading__japanese {
  color: #02773a;
  line-height: 1.2;
}
.c-heading--secondary .c-heading__image img {
  width: auto;
  height: 100%;
}
.c-heading--secondary.c-heading--green .c-heading__english {
  color: #f0faf0;
}
.c-heading--tertiary {
  color: #02773a;
  font-weight: 700;
  line-height: 1.5;
  text-align: center;
}
.c-heading--quaternary {
  margin-bottom: 0;
  color: #c8e6c8;
  font-family: "Outfit", sans-serif;
}
.c-heading--quaternary .c-heading__box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 0.04rem;
}
.c-heading--quaternary span {
  display: inline-block;
  letter-spacing: 0.1em;
}
.c-heading--quaternary .c-heading__box-number {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 auto;
  flex: 0 0 auto;
  line-height: 1;
}
.c-heading--quinary {
  margin-bottom: 0;
  font-weight: 700;
}
.c-heading--quinary .c-heading__english {
  display: block;
  color: #02773a;
  font-family: "Outfit", sans-serif;
  letter-spacing: 0.1em;
}
.c-heading--quinary .c-heading__japanese {
  display: block;
  color: #1e1e1e;
  letter-spacing: 0.06em;
  line-height: 1.2;
}
.c-heading--quinary.c-heading--white .c-heading__english,
.c-heading--quinary.c-heading--white .c-heading__japanese {
  color: #fff;
}
@media print, (width >= 768px) {
  .c-heading--primary {
    font-size: 0.4rem;
    line-height: 1.5;
  }
  .c-heading--secondary {
    padding-bottom: 0.18rem;
  }
  .c-heading--secondary .c-heading__english {
    font-size: 1.2rem;
  }
  .c-heading--secondary .c-heading__japanese {
    margin-top: -0.45rem;
    font-size: 0.4rem;
  }
  .c-heading--secondary .c-heading__image {
    height: 0.49rem;
    margin-top: -0.46rem;
  }
  .c-heading--tertiary {
    font-size: 0.3rem;
  }
  .c-heading--quaternary .c-heading__box-text {
    font-size: 0.3rem;
  }
  .c-heading--quaternary .c-heading__box-number {
    font-size: 0.7rem;
  }
  .c-heading--quinary .c-heading__english {
    margin-bottom: 0.04rem;
    font-size: 0.14rem;
  }
  .c-heading--quinary .c-heading__japanese {
    font-size: 0.4rem;
  }
}
@media only screen and (width <= 767px) {
  .c-heading--primary {
    font-size: 0.26rem;
    line-height: 1.4166666667;
  }
  .c-heading--secondary {
    padding-bottom: 0.14rem;
  }
  .c-heading--secondary .c-heading__english {
    font-size: 0.4rem;
  }
  .c-heading--secondary .c-heading__japanese {
    margin-top: -0.15rem;
    font-size: 0.24rem;
  }
  .c-heading--secondary .c-heading__image {
    height: 0.28rem;
    margin-top: -0.14rem;
  }
  .c-heading--tertiary {
    font-size: 0.22rem;
  }
  .c-heading--quaternary .c-heading__box-text {
    font-size: 0.2rem;
  }
  .c-heading--quaternary .c-heading__box-number {
    font-size: 0.4rem;
  }
  .c-heading--quaternary .c-heading__box {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
  }
  .c-heading--quinary {
    margin-bottom: 0.4rem;
  }
  .c-heading--quinary .c-heading__english {
    font-size: 0.14rem;
    line-height: 1.4;
  }
  .c-heading--quinary .c-heading__japanese {
    font-size: 0.26rem;
  }
}

.c-button {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  position: relative;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
  opacity: 1;
  text-decoration: none;
  cursor: pointer;
}
.c-button--primary {
  overflow: hidden;
  -webkit-transition: background 0.3s ease, color 0.3s ease, opacity 0.3s ease, border 0.3s ease;
  transition: background 0.3s ease, color 0.3s ease, opacity 0.3s ease, border 0.3s ease;
  background: -webkit-gradient(linear, left top, right top, from(#007800), to(#004600));
  background: linear-gradient(90deg, #007800, #004600);
  color: #fff;
  font-weight: 700;
  text-align: center;
}
.c-button--primary::after {
  content: "";
  position: absolute;
  z-index: 0;
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
  border-radius: inherit;
  opacity: 0;
  background: #fff;
  inset: 1px;
}
.c-button--primary::before {
  content: "";
  position: absolute;
  z-index: 2;
  padding: 0.02rem;
  border-radius: inherit;
  background: -webkit-gradient(linear, left top, right top, from(#007800), to(#004600));
  background: linear-gradient(90deg, #007800, #004600);
  inset: 0;
  -webkit-mask: -webkit-gradient(linear, left top, left bottom, from(#fff), to(#fff)) content-box, -webkit-gradient(linear, left top, left bottom, from(#fff), to(#fff));
  -webkit-mask: linear-gradient(#fff, #fff) content-box, linear-gradient(#fff, #fff);
  -webkit-mask-composite: xor;
  mask-composite: exclude;
}
@media (hover: hover) {
  .c-button--primary:hover {
    color: #007800;
  }
  .c-button--primary:hover::after {
    opacity: 1;
  }
}
.c-button--primary.c-button--orange {
  background: -webkit-gradient(linear, left top, right top, color-stop(20%, #ff8c00), to(#ff6e00));
  background: linear-gradient(90deg, #ff8c00 20%, #ff6e00 100%);
}
.c-button--primary.c-button--orange::before {
  background: -webkit-gradient(linear, left top, right top, color-stop(20%, #ff8c00), to(#ff6e00));
  background: linear-gradient(90deg, #ff8c00 20%, #ff6e00 100%);
}
@media (hover: hover) {
  .c-button--primary.c-button--orange:hover {
    color: #ff8c00;
  }
}
.c-button--primary.c-button--pink {
  background: -webkit-gradient(linear, left top, right top, color-stop(20%, #ff5064), to(#ff0064));
  background: linear-gradient(90deg, #ff5064 20%, #ff0064 100%);
}
.c-button--primary.c-button--pink::before {
  background: -webkit-gradient(linear, left top, right top, color-stop(20%, #ff5064), to(#ff0064));
  background: linear-gradient(90deg, #ff5064 20%, #ff0064 100%);
}
@media (hover: hover) {
  .c-button--primary.c-button--pink:hover {
    color: #ff5064;
  }
}
.c-button--primary .c-button__icon {
  z-index: 1;
  background-color: currentcolor;
}
.c-button--primary .c-button__icon--document {
  -webkit-mask-image: url("../img/common/document_icon_01.svg");
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-position: center;
  -webkit-mask-size: contain;
  mask-image: url("../img/common/document_icon_01.svg");
  mask-repeat: no-repeat;
  mask-position: center;
  mask-size: contain;
}
.c-button--primary .c-button__icon--calendar {
  -webkit-mask-image: url("../img/common/calendar_icn_01.svg");
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-position: center;
  -webkit-mask-size: contain;
  mask-image: url("../img/common/calendar_icn_01.svg");
  mask-repeat: no-repeat;
  mask-position: center;
  mask-size: contain;
}
.c-button--primary .c-button__icon--visit {
  -webkit-mask-image: url("../img/common/visit_icon_01.svg");
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-position: center;
  -webkit-mask-size: contain;
  mask-image: url("../img/common/visit_icon_01.svg");
  mask-repeat: no-repeat;
  mask-position: center;
  mask-size: contain;
}
.c-button--primary .c-button__text {
  position: relative;
  z-index: 1;
}
.c-button--secondary {
  width: 100%;
  min-height: 0.35rem;
  padding: 0.05rem 0.3rem;
  -webkit-transition: background-color 0.3s ease, color 0.3s ease;
  transition: background-color 0.3s ease, color 0.3s ease;
  border: 0.02rem solid #02773a;
  border-radius: 0.05rem;
  background-color: #fff;
  color: #02773a;
  font-size: 0.16rem;
  font-weight: 700;
  line-height: 1.2;
  text-align: center;
}
@media (hover: hover) {
  .c-button--secondary:hover {
    background-color: #02773a;
    color: #fff;
  }
  .c-button--secondary:hover::before {
    opacity: 1;
  }
  .c-button--secondary:hover::after {
    opacity: 0;
  }
}
.c-button--secondary::after, .c-button--secondary::before {
  content: "";
  position: absolute;
  top: 50%;
  right: 0.08rem;
  width: 0.16rem;
  height: 0.16rem;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}
.c-button--secondary::before {
  opacity: 0;
  background: url("../img/common/icn_arrow_03.svg") no-repeat center/contain;
}
.c-button--secondary::after {
  opacity: 1;
  background: url("../img/common/icn_arrow_02.svg") no-repeat center/contain;
}
.c-button--secondary.c-button--green, .c-button--secondary.c-button--md {
  min-height: 0.45rem;
  padding: 0.05rem 0.4rem;
}
.c-button--secondary.c-button--green::after, .c-button--secondary.c-button--green::before, .c-button--secondary.c-button--md::after, .c-button--secondary.c-button--md::before {
  width: 0.25rem;
  height: 0.25rem;
}
.c-button--secondary.c-button--green {
  background-color: #02773a;
  color: #fff;
}
.c-button--secondary.c-button--green input,
.c-button--secondary.c-button--green span {
  -webkit-transition: color 0.3s ease;
  transition: color 0.3s ease;
  color: #fff;
}
.c-button--secondary.c-button--green input {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  padding: 0.05rem 0.4rem 0.05rem 0.26rem;
  cursor: pointer;
}
.c-button--secondary.c-button--green::before {
  opacity: 1;
}
.c-button--secondary.c-button--green::after {
  opacity: 0;
}
@media (hover: hover) {
  .c-button--secondary.c-button--green:hover {
    background-color: #fff;
    color: #02773a;
  }
  .c-button--secondary.c-button--green:hover input,
  .c-button--secondary.c-button--green:hover span {
    color: #02773a;
  }
  .c-button--secondary.c-button--green:hover::before {
    opacity: 0;
  }
  .c-button--secondary.c-button--green:hover::after {
    opacity: 1;
  }
}
.c-button--secondary.c-button--md {
  background-color: #fff;
  color: #02773a;
}
@media (hover: hover) {
  .c-button--secondary.c-button--md:hover {
    background-color: #02773a;
    color: #fff;
  }
}
.c-button--secondary .c-button__text {
  position: relative;
  bottom: 0.01rem;
}
.c-button--tertiary {
  min-height: 0.35rem;
  -webkit-transition: background-color 0.3s ease, color 0.3s ease;
  transition: background-color 0.3s ease, color 0.3s ease;
  border: 1px solid #fff;
  border-radius: 0.05rem;
  background-color: #fff;
  color: #02773a;
  font-weight: 700;
  line-height: 1.2;
  text-align: center;
}
@media (hover: hover) {
  .c-button--tertiary:hover {
    background-color: #02773a;
    color: #fff;
  }
  .c-button--tertiary:hover::before {
    opacity: 1;
  }
  .c-button--tertiary:hover::after {
    opacity: 0;
  }
}
.c-button--tertiary::after, .c-button--tertiary::before {
  content: "";
  position: absolute;
  top: 50%;
  right: 0.08rem;
  width: 0.16rem;
  height: 0.16rem;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}
.c-button--tertiary::before {
  opacity: 0;
  background: url("../img/common/icn_arrow_05.svg") no-repeat center/contain;
}
.c-button--tertiary::after {
  opacity: 1;
  background: url("../img/common/icn_arrow_01.svg") no-repeat center/contain;
}
.c-button--tertiary.c-button--md::after, .c-button--tertiary.c-button--md::before {
  right: 0.14rem;
}
.c-button--tertiary .c-button__text {
  position: relative;
  bottom: 0.01rem;
}
@media print, (width >= 768px) {
  .c-button--primary {
    min-width: 2.08rem;
    min-height: 0.53rem;
    padding: 0.08rem 0.43rem 0.1rem 0.35rem;
    border-radius: 0.1rem;
    font-size: 0.18rem;
    gap: 0.1rem;
  }
  .c-button--primary .c-button__icon {
    position: absolute;
    top: 50%;
    right: 0.17rem;
    width: 0.21rem;
    height: 0.21rem;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
  }
  .c-button--tertiary {
    width: 100%;
    padding: 0.06rem 0.36rem 0.05rem 0.37rem;
    font-size: 0.16rem;
  }
  .c-button--tertiary.c-button--md {
    width: auto;
    min-width: 1.8rem;
    min-height: 0.45rem;
    padding: 0.05rem 0.36rem 0.05rem 0.14rem;
  }
}
@media print {
  .c-button--primary::before, .c-button--primary::after {
    z-index: -1;
  }
  .c-button--primary .c-button__text,
  .c-button--primary .c-button__icon {
    z-index: 999;
  }
}
@media only screen and (width <= 767px) {
  .c-button--primary {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
    width: 100%;
    min-height: 0.45rem;
    padding: 0.05rem 0.4rem;
    border-radius: 0.05rem;
    font-size: 0.16rem;
    gap: 0.03rem;
  }
  .c-button--primary .c-button__icon {
    display: inline-block;
    position: relative;
    width: 0.19rem;
    height: 0.19rem;
  }
  .c-button--primary.c-button--orange .c-button__icon--document {
    top: 0.01rem;
  }
  .c-button--tertiary {
    width: 100%;
    font-size: 0.14rem;
  }
}

.c-link--primary {
  -webkit-transition: -webkit-text-decoration 0.3s ease;
  transition: -webkit-text-decoration 0.3s ease;
  transition: text-decoration 0.3s ease;
  transition: text-decoration 0.3s ease, -webkit-text-decoration 0.3s ease;
  color: #02773a;
  text-decoration: underline;
  cursor: pointer;
  text-decoration-thickness: 1px;
  text-underline-offset: 0.05rem;
}
@media (hover: hover) {
  .c-link--primary:hover {
    -webkit-text-decoration-color: transparent;
    text-decoration-color: transparent;
  }
}
.c-list {
  position: relative;
}
.c-list .c-list__wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  margin: 0;
  padding: 0;
  list-style: none;
}
.c-list--primary .c-list__wrapper {
  gap: 0.39rem;
}
.c-list--secondary .c-list__item-image {
  overflow: hidden;
}
.c-list--secondary .c-list__item-heading {
  position: relative;
  font-family: "Outfit", sans-serif;
  font-weight: 700;
  text-align: end;
  -webkit-text-orientation: mixed;
  text-orientation: mixed;
  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
}
.c-list--secondary .c-list__item-heading::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  width: 1px;
  border-left: 1px solid #fff;
}
.c-list--secondary .c-list__item-heading span {
  display: block;
  letter-spacing: 0.1em;
}
.c-list--secondary .c-list__item-date {
  display: inline-block;
  font-family: "Outfit", sans-serif;
  font-weight: 700;
  letter-spacing: 0.1em;
}
.c-list--secondary .c-list__item-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.c-list--secondary a.c-list__item-wrapper {
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
  opacity: 1;
  text-decoration: none;
}
@media (hover: hover) {
  .c-list--secondary a.c-list__item-wrapper:hover {
    opacity: 0.8;
  }
}
.c-list--secondary.c-list--flexible .c-list__item-date {
  color: #02773a;
  font-weight: 700;
}
.c-list--secondary.c-list--flexible .c-list__item-heading::before {
  border-color: #1e1e1e;
}
.c-list--secondary.c-list--flexible .c-list__item-image {
  width: 2.91rem;
  height: 1.95rem;
  border-radius: 0.1rem;
}
.c-list--secondary.c-list--flexible .c-list__item-heading {
  height: 1.95rem;
}
.c-list--secondary.c-list--flexible .c-list__item-inner {
  display: block;
  margin-top: 0.15rem;
  margin-bottom: -0.02rem;
}
.c-list--secondary.c-list--flexible .c-list__item {
  max-width: 3.34rem;
}
.c-list--secondary.c-list--flexible .c-list__item-title {
  display: -webkit-box;
  overflow: hidden;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}
.c-list--tertiary .c-list__wrapper {
  gap: 0.58rem 0.4rem;
}
.c-list--tertiary .c-list__image,
.c-list--tertiary .c-list__content-image,
.c-list--tertiary .c-list__content-button {
  width: 2.74rem;
  margin: 0 auto;
}
.c-list--tertiary .c-list__content-button {
  position: absolute;
  bottom: 0.3rem;
  left: 50%;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
}
.c-list--tertiary .c-list__image {
  margin-bottom: 0.25rem;
}
.c-list--tertiary .c-list__content-image {
  height: 1.7rem;
  margin-bottom: 0.24rem;
  overflow: hidden;
  border-radius: 0.1rem;
}
.c-list--tertiary .c-list__item {
  width: 100%;
  max-width: 3.33rem;
  margin: 0 auto;
}
.c-list--tertiary .c-list__content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  padding: 0 0.1rem;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
.c-list--tertiary .c-list__content-title {
  color: #02773a;
  font-weight: 700;
}
.c-list--tertiary .c-list__content-description {
  margin-bottom: 0.22rem;
}
.c-list--tertiary .c-list__item-wrapper {
  position: relative;
  z-index: 1;
  height: 100%;
  padding: 0 0.2rem 0.65rem;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  min-height: 4.67rem;
}
.c-list--tertiary .c-list__item-wrapper::before {
  content: "";
  position: absolute;
  z-index: -1;
  /*   top: 1.11rem; */
  top: -0.3rem;
  right: 0;
  bottom: 0;
  left: 0;
  border-radius: 0.1rem;
  background-color: #f0faf0;
}
.c-list--dot .c-list__wrapper {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}
.c-list--dot .c-list__item {
  position: relative;
  padding-left: 0.07rem;
  color: #0a0a0a;
  font-size: 0.16rem;
  font-weight: 500;
  line-height: 1.9375;
}
.c-list--dot .c-list__item::before {
  content: "";
  position: absolute;
  left: 0;
  border-radius: 50%;
  background-color: #0a0a0a;
}
@media print, (width >= 768px) {
  .c-list--primary .c-list__item {
    width: 33.3333333333%;
    max-width: 3.34rem;
  }
  .c-list--secondary .c-list__item-image {
    width: 3.06rem;
    border-radius: 0.1346rem;
  }
  .c-list--secondary .c-list__item-date {
    font-size: 0.16rem;
  }
  .c-list--secondary .c-list__item-title {
    margin-bottom: 0.23rem;
    font-size: 0.2rem;
    line-height: 1.75;
  }
  .c-list--secondary .c-list__item-inner {
    margin-top: 0.2rem;
    margin-left: -0.42rem;
  }
  .c-list--secondary .c-list__item-heading {
    height: 2.05rem;
  }
  .c-list--secondary .c-list__item-wrapper {
    gap: 0.11rem;
  }
  .c-list--secondary .c-list__wrapper {
    gap: 0.62rem;
  }
  .c-list--secondary.c-list--flexible .c-list__item {
    width: 33.3333333333%;
  }
  .c-list--secondary.c-list--flexible .c-list__wrapper {
    gap: 0.3rem 0.39rem;
  }
  .c-list--tertiary .c-list__content-title {
    margin-bottom: 0.04rem;
    font-size: 0.2rem;
    line-height: 1.5;
  }
  .c-list--tertiary .c-list__content-description {
    font-size: 0.14rem;
    line-height: 1.9444444444;
  }
  .c-list--dot .c-list__item {
    font-size: 0.16rem;
    line-height: 1.9375;
  }
  .c-list--dot .c-list__item::before {
    top: 0.14rem;
    width: 0.04rem;
    height: 0.04rem;
  }
}
@media print {
  .c-list .c-list__item {
    -webkit-column-break-inside: avoid;
    -moz-column-break-inside: avoid;
    break-inside: avoid;
    page-break-inside: avoid;
  }
}
@media only screen and (width <= 767px) {
  .c-list .c-list__wrapper {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
  .c-list--secondary .c-list__item-date {
    font-size: 0.14rem;
  }
  .c-list--secondary .c-list__item-image {
    width: 3.22rem;
    height: 2.05rem;
    margin-left: 0.08rem;
    border-radius: 0.1rem;
  }
  .c-list--secondary .c-list__item-image img {
    display: block;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
  }
  .c-list--secondary .c-list__item-heading {
    height: 2.06rem;
    padding-left: 0.04rem;
  }
  .c-list--secondary .c-list__item-inner {
    margin-top: 0.14rem;
    margin-left: -0.28rem;
  }
  .c-list--secondary .c-list__item-title {
    margin-bottom: 0.16rem;
    font-size: 0.16rem;
    line-height: 1.625;
  }
  .c-list--secondary .c-list__item {
    margin-bottom: 0.6rem;
  }
  .c-list--secondary .c-list__item:last-child {
    margin-bottom: 0;
  }
  .c-list--secondary.c-list--flexible .c-list__item {
    margin: 0 auto;
  }
  .c-list--secondary.c-list--flexible .c-list__wrapper {
    gap: 0.35rem 0;
  }
  .c-list--tertiary .c-list__wrapper {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
  }
  .c-list--tertiary .c-list__content-title {
    margin-bottom: 0.1rem;
    font-size: 0.18rem;
    line-height: 1.5;
  }
  .c-list--tertiary .c-list__content-description {
    font-size: 0.14rem;
    line-height: 1.7142857143;
  }
  .c-list--dot .c-list__item {
    font-size: 0.14rem;
    line-height: 1.7142857143;
  }
  .c-list--dot .c-list__item::before {
    top: 0.11rem;
    width: 0.03rem;
    height: 0.03rem;
  }
  html.is-ios .c-list--dot .c-list__item::before {
    top: 0.12rem;
  }
}

.c-card {
  position: relative;
  width: 100%;
}
.c-card--primary {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  min-height: 4.8rem;
  padding: 0.34rem 0.2rem 0.4rem;
  border: 0.05rem solid #c8e6c8;
  border-radius: 0.15rem;
  background-color: #fff;
  text-align: center;
}
.c-card--primary .c-card__title {
  position: relative;
  margin-bottom: 0.3rem;
  padding-bottom: 0.2rem;
  color: #ff8c00;
  font-size: 0.25rem;
  font-weight: 700;
  line-height: 1.24;
}
.c-card--primary .c-card__title::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 50%;
  width: 0.5rem;
  height: 0.03rem;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
  background-color: #1e1e1e;
}
.c-card--primary .c-card__describe {
  position: relative;
  margin-bottom: 0.05rem;
  padding-bottom: 0.32rem;
  font-size: 0.18rem;
  font-weight: 700;
  line-height: 1.5555555556;
}
.c-card--primary .c-card__describe::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 50%;
  width: 0.17rem;
  height: 0.27rem;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
  background: url("../img/common/icn_arrow_04.svg") center/100% auto no-repeat;
}
.c-card--primary .c-card__content-button {
  width: 100%;
}
.c-card--primary .c-card__image {
  width: 1.6rem;
  margin-right: auto;
  margin-left: auto;
}
.c-card--primary .c-card__content {
  margin-bottom: 0.3rem;
}
.c-card--secondary {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: 100%;
  max-width: 2.55rem;
  height: 100%;
  padding: 0.32rem 0.3rem;
  border-radius: 0.15rem;
  background-color: #fff;
  -webkit-box-shadow: 0 0 0.15rem rgba(2, 119, 58, 0.1);
  box-shadow: 0 0 0.15rem rgba(2, 119, 58, 0.1);
}
.c-card--secondary .c-card__image {
  width: 1.87rem;
  margin: 0 auto 0.16rem;
}
.c-card--secondary .c-card__title {
  margin-bottom: 0;
  color: #1e1e1e;
  font-size: 0.18rem;
  font-weight: 700;
  line-height: 1.5555555556;
  text-align: center;
}
@media print, (width >= 768px) {
  .c-card--primary {
    height: 100%;
  }
  .c-card--primary .c-card__content-button {
    max-width: 2.44rem;
    margin: 0 auto;
  }
}

.c-text--center {
  text-align: center;
}
.c-text:last-child {
  margin-bottom: 0;
}
@media print, (width >= 768px) {
  .c-text--center {
    font-size: 0.18rem;
    line-height: 1.9444444444;
  }
}
.c-table--primary table {
  background: -webkit-gradient(linear, left top, right top, color-stop(0.9rem, #02773a), color-stop(0.9rem, #c8e6c8)) top/100% 1px no-repeat;
  background: linear-gradient(to right, #02773a 0.9rem, #c8e6c8 0.9rem) top/100% 1px no-repeat;
}
.c-table--primary tr,
.c-table--primary th,
.c-table--primary td {
  border: none;
  color: #1e1e1e;
}
.c-table--primary tr {
  position: relative;
  height: 0.66rem;
  background: -webkit-gradient(linear, left top, right top, color-stop(0.9rem, #02773a), color-stop(0.9rem, #c8e6c8)) bottom/100% 1px no-repeat;
  background: linear-gradient(to right, #02773a 0.9rem, #c8e6c8 0.9rem) bottom/100% 1px no-repeat;
}
.c-table--primary th,
.c-table--primary td {
  padding: 0.17rem 0.14rem 0.18rem 0;
  text-align: left;
  vertical-align: middle;
}
.c-table--primary th {
  width: 0.9rem;
  color: #02773a;
  font-weight: 700;
  letter-spacing: 0.1em;
}
.c-table--primary td {
  letter-spacing: 0.1em;
}

.c-pagination .c-pagination__pager {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  padding: 0 0.8rem;
  gap: 0.1rem;
  margin: 0;
  padding: 0;
  list-style: none;
}
.c-pagination--primary {
  position: relative;
  z-index: 1;
  max-width: 1.77rem;
  margin-right: auto;
  margin-left: auto;
}
.c-pagination--primary a {
  opacity: 1;
  text-decoration: none;
}
.c-pagination--primary a,
.c-pagination--primary span {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  color: #1e1e1e;
  font-family: "Outfit", sans-serif;
  font-size: 0.18rem;
  font-weight: 700;
  line-height: 1;
  text-align: center;
}
.c-pagination--primary .page-numbers {
  min-width: 0.19rem;
  padding: 0 0.02rem 0 0.03rem;
  -webkit-transition: border-color 0.3s ease;
  transition: border-color 0.3s ease;
  border-bottom: 0.03rem solid transparent;
}
@media (hover: hover) {
  .c-pagination--primary .page-numbers:hover {
    border-color: #02773a;
  }
}
.c-pagination--primary .page-numbers.current {
  border-color: #02773a;
  color: #02773a;
  cursor: auto;
  pointer-events: none;
}
.c-pagination__pager-arrow a {
  position: absolute;
  top: 50%;
  width: 0.36rem;
  height: 0.36rem;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
  opacity: 1;
}
.c-pagination__pager-arrow a::before, .c-pagination__pager-arrow a::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  width: 0.36rem;
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}
.c-pagination__pager-arrow a::before {
  opacity: 1;
  background: url("../img/common/icn_arrow_06.svg") center/100% auto no-repeat;
}
.c-pagination__pager-arrow a::after {
  opacity: 0;
  background: url("../img/common/icn_arrow_07.svg") center/100% auto no-repeat;
}
@media (hover: hover) {
  .c-pagination__pager-arrow a:hover::before {
    opacity: 0;
  }
  .c-pagination__pager-arrow a:hover::after {
    opacity: 1;
  }
}
.c-pagination__pager-arrow.is-disable a,
.c-pagination__pager-arrow.is-disable span {
  display: none;
}
.c-pagination__pager-arrow.prev a {
  left: 0;
}
.c-pagination__pager-arrow.prev a::before, .c-pagination__pager-arrow.prev a::after {
  -webkit-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  transform: rotate(180deg);
}
.c-pagination__pager-arrow.next a {
  right: 0;
}
.c-pagination__pager-link {
  -webkit-transition: -webkit-text-decoration-color 0.3s ease;
  transition: -webkit-text-decoration-color 0.3s ease;
  transition: text-decoration-color 0.3s ease;
  transition: text-decoration-color 0.3s ease, -webkit-text-decoration-color 0.3s ease;
  color: #02773a;
  font-size: 0.16rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-decoration: underline;
  cursor: pointer;
  text-decoration-thickness: 1px;
  text-underline-offset: 0.04rem;
}
@media (hover: hover) {
  .c-pagination__pager-link:hover {
    -webkit-text-decoration-color: transparent;
    text-decoration-color: transparent;
  }
}

.c-form__row {
  margin-bottom: 0.35rem;
}
.c-form__row.note {
  margin-top: -0.2rem;
  font-size: 80%;
  line-height: 1.4;
}
.c-form__heading {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  gap: 0.07rem;
}
.c-form__heading.learn {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
.c-form__heading-label {
  font-size: 0.16rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  line-height: 1.625;
}
.c-form__label-icon {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  position: relative;
  top: 0.05rem;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  min-width: 0.4rem;
  min-height: 0.18rem;
  padding: 0.02rem 0.04rem 0.04rem;
  border-radius: 0.03rem;
  background-color: #02773a;
  color: #fff;
  font-size: 0.12rem;
  letter-spacing: 0.1em;
  line-height: 1;
  text-align: center;
}
.c-form__confirmation {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  padding-top: 0.18rem;
}
.c-form__buttons {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  gap: 0.24rem;
}
.c-form__back {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 2rem;
  min-height: 0.45rem;
  padding: 0.05rem 0.4rem;
  -webkit-transition: background-color 0.3s ease, color 0.3s ease;
  transition: background-color 0.3s ease, color 0.3s ease;
  border: 0.02rem solid #02773a;
  border-radius: 0.05rem;
  background-color: #fff;
  color: #02773a;
  font-size: 0.16rem;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: 0.06em;
  text-align: center;
  cursor: pointer;
}
@media (hover: hover) {
  .c-form__back:hover {
    background-color: #02773a;
    color: #fff;
  }
}
.c-form .c-button--secondary {
  width: 2rem;
}
.c-form__content .c-form__heading-label {
  font-weight: 400;
}
@media print, (width >= 768px) {
  .c-form__heading {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 2rem;
    flex: 0 0 2rem;
    max-width: 2rem;
  }
  .c-form__row, .c-form__wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
  }
  .c-form__row {
    gap: 0.3rem;
  }
  .c-form__row--middle {
    -webkit-box-align: baseline;
    -ms-flex-align: baseline;
    align-items: baseline;
  }
  .c-form__wrapper {
    gap: 0.2rem;
  }
  .c-form__wrapper--half .c-input {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 50%;
    flex: 0 0 50%;
    max-width: 3.36rem;
  }
  .c-form__wrapper--margin {
    margin-bottom: 0.15rem;
  }
  .c-form__content {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    width: 100%;
  }
  .c-form__content .c-form__row {
    gap: 0.11rem;
    margin-bottom: 0.3rem;
  }
  .c-form__content .c-form__row:last-child {
    margin-bottom: 0;
  }
  .c-form__content .c-form__heading {
    max-width: 1.4rem;
  }
  .c-form__content .c-input,
  .c-form__content .c-select {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    width: 100%;
  }
  .c-form__agree {
    margin-bottom: 0.56rem;
  }
  .c-form__agree .c-radio .wpcf7-list-item-label::before {
    top: 0.19rem;
  }
}
@media only screen and (width <= 767px) {
  .c-form__heading {
    margin-bottom: 0.18rem;
  }
  .c-form__wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 0.15rem;
  }
  .c-form__wrapper--margin {
    margin-bottom: 0.2rem;
  }
  .c-form__agree {
    margin-bottom: 0.3rem;
  }
  .c-form__agree .c-radio .wpcf7-list-item-label::before {
    top: 0.18rem;
  }
  .c-form__agree .wpcf7-list-item-label {
    padding-bottom: 0.1rem;
  }
  .c-form__content--spacing .c-form__heading {
    margin-bottom: 0.08rem;
  }
  .c-form__content--spacing .c-form__row {
    margin-bottom: 0.3rem;
  }
}

.c-input .wpcf7-form-control,
.c-textarea .wpcf7-form-control,
.c-select .wpcf7-form-control {
  width: 100%;
  min-height: 0.44rem;
  padding: 0.05rem 0.14rem;
  border: 1px solid #c8e6c8;
  border-radius: 0.05rem;
}
.c-input .wpcf7-form-control::-webkit-input-placeholder, .c-textarea .wpcf7-form-control::-webkit-input-placeholder, .c-select .wpcf7-form-control::-webkit-input-placeholder {
  color: #969696;
}
.c-input .wpcf7-form-control::-moz-placeholder, .c-textarea .wpcf7-form-control::-moz-placeholder, .c-select .wpcf7-form-control::-moz-placeholder {
  color: #969696;
}
.c-input .wpcf7-form-control:-ms-input-placeholder, .c-textarea .wpcf7-form-control:-ms-input-placeholder, .c-select .wpcf7-form-control:-ms-input-placeholder {
  color: #969696;
}
.c-input .wpcf7-form-control::-ms-input-placeholder, .c-textarea .wpcf7-form-control::-ms-input-placeholder, .c-select .wpcf7-form-control::-ms-input-placeholder {
  color: #969696;
}
.c-input .wpcf7-form-control::placeholder,
.c-textarea .wpcf7-form-control::placeholder,
.c-select .wpcf7-form-control::placeholder {
  color: #969696;
}
@media print, (width >= 768px) {
  .c-input .wpcf7-form-control,
  .c-textarea .wpcf7-form-control,
  .c-select .wpcf7-form-control {
    font-size: 0.16rem;
  }
}
@media only screen and (width <= 767px) {
  .c-input .wpcf7-form-control,
  .c-textarea .wpcf7-form-control,
  .c-select .wpcf7-form-control {
    font-size: 0.14rem;
  }
}

.c-input {
  position: relative;
}

.c-textarea {
  position: relative;
}
.c-textarea .wpcf7-form-control {
  height: 1.72rem;
  padding: 0.08rem 0.14rem;
}

.c-select {
  position: relative;
}
.c-select .wpcf7-form-control {
  width: 100%;
  background: url("../img/common/icon_arrow_down.svg") no-repeat right 0.1rem center/0.12rem 0.07rem;
  background-color: #fff;
  color: #1e1e1e;
  cursor: pointer;
}
.c-select .wpcf7-form-control:has(option:first-child:checked) {
  color: #969696;
}
.c-select .wpcf7-form-control option {
  color: #1e1e1e;
}
.c-select .wpcf7-select option:first-child {
  display: none;
  color: #969696;
}

.c-radio {
  margin-bottom: 0.25rem;
}
.c-radio:last-child {
  margin-top: -0.05rem;
  margin-bottom: 0;
}
.c-radio input {
  letter-spacing: 0.1em;
}
.c-radio .wpcf7-form-control {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.c-radio .wpcf7-list-item-label {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  position: relative;
  top: 0;
  padding: 0.02rem 0 0.02rem 0.3rem;
}
.c-radio .wpcf7-list-item-label::before {
  content: "";
  position: absolute;
  left: 0;
  -webkit-box-flex: 0;
  -ms-flex: 0 0 auto;
  flex: 0 0 auto;
  width: 0.22rem;
  height: 0.22rem;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
  border: 1px solid #1e1e1e;
  border-radius: 999.99rem;
  -webkit-box-shadow: inset 0 0 0 0.03rem white;
  box-shadow: inset 0 0 0 0.03rem white;
}
.c-radio .wpcf7-list-item {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  margin-left: 0;
  overflow: hidden;
}
.c-radio .wpcf7-list-item label {
  position: relative;
  cursor: pointer;
}
.c-radio .wpcf7-list-item input {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  outline: none;
}
.c-radio .wpcf7-list-item input:checked + .wpcf7-list-item-label::before {
  background-color: #02773a;
}
@media print, (width >= 768px) {
  .c-radio .wpcf7-list-item-label::before {
    top: 0.185rem;
  }
  .c-radio input {
    font-size: 0.16rem;
  }
  .c-radio .wpcf7-form-control {
    gap: 0.05rem 0.27rem;
  }
}
@media only screen and (width <= 767px) {
  .c-radio .wpcf7-list-item-label::before {
    top: 0.15rem;
  }
  .c-radio input {
    font-size: 0.14rem;
  }
  .c-radio .wpcf7-form-control {
    gap: 0.1rem 0.25rem;
  }
}

.c-form__error {
  margin-top: 0.06rem;
  color: #ff5064;
  font-size: 0.14rem;
  line-height: 1.5;
  letter-spacing: 0.1em;
}

.js-form-confirm-flow .wpcf7-not-valid-tip {
  display: none;
}

.wpcf7-spinner {
  position: absolute;
  bottom: calc(50% - 0.5rem);
  left: 50%;
}

.wpcf7 form .wpcf7-response-output {
  border: none;
  color: #ffb900;
  font-weight: 500;
  text-align: center;
}

.wpcf7 .wpcf7-submit:disabled {
  opacity: 0.8;
  cursor: not-allowed;
}

.wpcf7-not-valid-tip {
  position: absolute;
  left: 0;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
}
@media print, (width >= 768px) {
  .wpcf7-not-valid-tip {
    bottom: -0.27rem;
    font-size: 0.14rem;
  }
}
@media only screen and (width <= 767px) {
  .wpcf7-not-valid-tip {
    bottom: -0.22rem;
    font-size: 0.12rem;
  }
}

.wpcf7-form-control-wrap {
  position: unset;
}

.c-post {
  overflow-wrap: break-word;
  color: #1e1e1e;
}
.c-post p {
  margin-bottom: 2em;
  letter-spacing: 0.1em;
}
.c-post p:last-child {
  margin-bottom: 0;
}
.c-post b,
.c-post strong {
  font-weight: 700;
}
.c-post i,
.c-post em {
  font-style: italic;
}
.c-post a {
  color: inherit;
  text-decoration: underline;
}
.c-post a:hover {
  text-decoration: none;
}
.c-post sup,
.c-post sub {
  position: relative;
  font-size: 0.6em;
}
.c-post sup {
  vertical-align: top;
}
.c-post sub {
  vertical-align: bottom;
}
.c-post figure,
.c-post picture,
.c-post img,
.c-post video,
.c-post iframe,
.c-post table {
  max-width: 100%;
  margin-bottom: 2em;
}
.c-post figure:last-child,
.c-post picture:last-child,
.c-post img:last-child,
.c-post video:last-child,
.c-post iframe:last-child,
.c-post table:last-child {
  margin-bottom: 0;
}
.c-post figure img,
.c-post figure video,
.c-post figure iframe,
.c-post figure table {
  margin-bottom: 0;
}
.c-post figcaption {
  margin: 0.5em 0;
  font-size: 0.8em;
}
.c-post figcaption:last-child {
  margin-bottom: 0;
}
.c-post blockquote {
  position: relative;
  margin-bottom: 2em;
  padding: 2em;
  background-color: #f8f8f8;
}
.c-post blockquote::before, .c-post blockquote::after {
  content: "“";
  position: absolute;
  font-size: 2em;
  line-height: 1;
}
.c-post blockquote::before {
  top: 0.3em;
  left: 0.3em;
}
.c-post blockquote::after {
  right: 0.3em;
  bottom: 0.3em;
  -webkit-transform: scale(-1, -1);
  -ms-transform: scale(-1, -1);
  transform: scale(-1, -1);
}
.c-post blockquote:last-child {
  margin-bottom: 0;
}
.c-post pre,
.c-post code {
  margin-bottom: 2em;
}
.c-post pre:last-child,
.c-post code:last-child {
  margin-bottom: 0;
}
.c-post ul li:last-child,
.c-post ol li:last-child {
  margin-bottom: 0;
}
.c-post ul {
  margin-bottom: 2em;
  padding-left: 2em;
  list-style: disc;
}
.c-post ul:last-child {
  margin-bottom: 0;
}
.c-post ol {
  margin-bottom: 2em;
  padding-left: 2em;
  list-style: decimal;
}
.c-post ol:last-child {
  margin-bottom: 0;
}
.c-post h2,
.c-post h3,
.c-post h4,
.c-post h5,
.c-post h6 {
  font-weight: 700;
  line-height: 1.2;
}
.c-post h2 {
  position: relative;
  margin-bottom: 0.36rem;
  padding-left: 0.13rem;
  color: #02773a;
  font-size: 0.24rem;
}
.c-post h2::before {
  content: "";
  position: absolute;
  top: 0.03rem;
  bottom: 0.03rem;
  left: 0;
  width: 0.03rem;
  background-color: #02773a;
}
.c-post h2:last-child {
  margin-bottom: 0;
}
.c-post h3 {
  margin-bottom: 0.26rem;
  color: #02773a;
  line-height: 1.625;
}
.c-post h3:last-child {
  margin-bottom: 0;
}
.c-post h4 {
  margin-bottom: 1em;
  font-size: 1.4em;
}
.c-post h4:last-child {
  margin-bottom: 0;
}
.c-post h5 {
  margin-bottom: 1em;
  font-size: 1.2em;
}
.c-post h5:last-child {
  margin-bottom: 0;
}
.c-post h6 {
  margin-bottom: 1em;
  font-size: 1em;
}
.c-post h6:last-child {
  margin-bottom: 0;
}
.c-post > div {
  margin-bottom: 2em;
}
.c-post > div:last-child {
  margin-bottom: 0;
}
.c-post .is-layout-flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.c-post .has-background {
  background-color: #ccc;
}
.c-post .has-small-font-size {
  font-size: 0.13rem;
}
.c-post .has-large-font-size {
  font-size: 0.36rem;
}
.c-post .has-x-large-font-size {
  font-size: 0.42rem;
}
.c-post .wp-block-table table {
  border-collapse: collapse;
  border: 1px solid #000;
}
.c-post .wp-block-table thead,
.c-post .wp-block-table tbody,
.c-post .wp-block-table tfoot {
  border: none;
}
.c-post .wp-block-table th,
.c-post .wp-block-table td {
  padding: 0.5em;
  border: 1px solid #000;
}
.c-post .wp-block-table th {
  background-color: #ccc;
  font-weight: 700;
}
.c-post .c-table--secondary table {
  border: none;
}
.c-post .c-table--secondary table th,
.c-post .c-table--secondary table td {
  border: none;
}
.c-post .wp-block-columns figure {
  margin-bottom: 0.5em;
}
.c-post .wp-block-columns figure:last-child {
  margin-bottom: 0;
}
.c-post .wp-block-column {
  margin: 0 1em;
}
.c-post .wp-block-column:first-child {
  margin-left: 0;
}
.c-post .wp-block-column:last-child {
  margin-right: 0;
}
.c-post .c-list.c-list--post-case {
  padding: 0;
  list-style: none;
}
.c-post .c-list.c-list--post-case h2 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 0.5rem;
  padding-bottom: 0.12rem;
  padding-left: 0;
  border-bottom: 1px solid #c8e6c8;
  letter-spacing: 0.1em;
  line-height: 1.5;
  gap: 0.2rem;
}
.c-post .c-list.c-list--post-case h2::before {
  content: none;
}
.c-post .c-list.c-list--post-case h2 > span {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 0;
  -ms-flex: 0 0 auto;
  flex: 0 0 auto;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  min-width: 0.73rem;
  min-height: 0.73rem;
  padding: 0.12rem 0 0.07rem 0.02rem;
  border-radius: 0.1rem;
  background-color: #02773a;
  color: #fff;
  font-family: "Outfit", sans-serif;
  font-size: 0.1rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-align: center;
}
.c-post .c-list.c-list--post-case h2 span > span {
  display: inline-block;
  margin-top: -0.06rem;
  padding-left: 0.03rem;
  font-size: 0.45rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  line-height: 1;
}
.c-post .c-list.c-list--post-case li:last-child {
  margin-bottom: 0;
}
.c-post .wp-block-table table:not(:has(th)) {
  overflow: hidden;
  border: none;
}
.c-post .wp-block-table table:not(:has(th)) tr,
.c-post .wp-block-table table:not(:has(th)) th,
.c-post .wp-block-table table:not(:has(th)) td {
  border: none;
  color: #1e1e1e;
}
.c-post .wp-block-table table:not(:has(th)) tr {
  position: relative;
  height: 0.76rem;
  border-top: 1px solid #c8e6c8;
}
.c-post .wp-block-table table:not(:has(th)) tr::before {
  content: "";
  position: absolute;
  top: -0.015rem;
  left: 0;
  width: 0.9rem;
  height: 0.02rem;
  background-color: #02773a;
}
.c-post .wp-block-table table:not(:has(th)) tr:last-child::after {
  content: "";
  position: absolute;
  bottom: -0.015rem;
  left: 0;
  width: 0.9rem;
  height: 0.02rem;
  background-color: #02773a;
}
.c-post .wp-block-table table:not(:has(th)) tr:last-child {
  border-bottom: 1px solid #c8e6c8;
}
.c-post .wp-block-table table:not(:has(th)) td {
  letter-spacing: 0.1em;
  text-align: left;
  vertical-align: middle;
}
.c-post .wp-block-table table:not(:has(th)) td:first-child {
  width: 0.9rem;
  color: #02773a;
  font-weight: bold;
  letter-spacing: 0.1em;
}
.c-post .wp-block-table table:not(:has(th)) td:last-child {
  width: 100%;
}
.c-post h2.c-heading--question {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 0.5rem;
  padding-bottom: 0.12rem;
  padding-left: 0;
  border-bottom: 1px solid #c8e6c8;
  letter-spacing: 0.1em;
  line-height: 1.5;
  gap: 0.2rem;
}
.c-post h2.c-heading--question::before {
  content: none;
}
.c-post h2.c-heading--question > span {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 0;
  -ms-flex: 0 0 auto;
  flex: 0 0 auto;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  min-width: 0.73rem;
  min-height: 0.73rem;
  padding: 0.12rem 0 0.07rem 0.02rem;
  border-radius: 0.1rem;
  background-color: #02773a;
  color: #fff;
  font-family: "Outfit", sans-serif;
  font-size: 0.1rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-align: center;
}
.c-post h2.c-heading--question span > span {
  display: inline-block;
  margin-top: -0.06rem;
  padding-left: 0.03rem;
  font-size: 0.45rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  line-height: 1;
}
@media print, (width >= 768px) {
  .c-post p {
    margin-bottom: 0.52rem;
    font-size: 0.16rem;
    line-height: 1.9375;
  }
  .c-post .c-list.c-list--post-case {
    margin-top: 1.04rem;
  }
  .c-post .c-list.c-list--post-case h2 {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    font-size: 0.3rem;
  }
  .c-post .c-list.c-list--post-case figure {
    width: 7.55rem;
    margin: 0.82rem auto 0;
  }
  .c-post .c-list.c-list--post-case li {
    margin-bottom: 1.1rem;
  }
  .c-post h3 {
    font-size: 0.24rem;
  }
  .c-post h2.c-heading--question {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    font-size: 0.3rem;
  }
}
@media only screen and (width <= 767px) {
  .c-post p {
    margin-bottom: 0.3rem;
    font-size: 0.14rem;
    line-height: 1.9;
  }
  .c-post .c-list.c-list--post-case li {
    margin-bottom: 0.6rem;
  }
  .c-post .c-list.c-list--post-case h2 {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    font-size: 0.2rem;
  }
  .c-post .c-list.c-list--post-case h2 > span {
    margin: 0 auto;
  }
  .c-post h3 {
    font-size: 0.18rem;
  }
  .c-post h2.c-heading--question {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    font-size: 0.2rem;
  }
  .c-post h2.c-heading--question > span {
    margin: 0 auto;
  }
}

.wow {
  visibility: hidden;
}

@media print {
  .wow {
    visibility: visible !important;
  }
}
.animated {
  transition: opacity 0.6s cubic-bezier(0.23, 1, 0.32, 1), transform 0.6s cubic-bezier(0.23, 1, 0.32, 1), -webkit-transform 0.6s cubic-bezier(0.23, 1, 0.32, 1);
  -webkit-animation-duration: 0.6s;
  animation-duration: 0.6s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
}

@-webkit-keyframes fade-in-up {
  0% {
    -webkit-transform: translateY(0.5rem);
    transform: translateY(0.5rem);
    opacity: 0;
  }
  100% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
    opacity: 1;
  }
}

@keyframes fade-in-up {
  0% {
    -webkit-transform: translateY(0.5rem);
    transform: translateY(0.5rem);
    opacity: 0;
  }
  100% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
    opacity: 1;
  }
}
@keyframes fade-in-up {
  0% {
    -webkit-transform: translateY(0.5rem);
    -ms-transform: translateY(0.5rem);
    transform: translateY(0.5rem);
    opacity: 0;
  }
  100% {
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
    opacity: 1;
  }
}
.fade-in-up {
  -webkit-animation-name: fade-in-up;
  animation-name: fade-in-up;
}

@-webkit-keyframes fade-in {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

@keyframes fade-in {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes fade-in {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
.fade-in {
  -webkit-animation-name: fade-in;
  animation-name: fade-in;
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-delay: 0s;
  animation-delay: 0s;
}

@-webkit-keyframes fade-in-left {
  from {
    -webkit-transform: translate3d(-0.5rem, 0, 0);
    transform: translate3d(-0.5rem, 0, 0);
    opacity: 0;
  }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
}

@keyframes fade-in-left {
  from {
    -webkit-transform: translate3d(-0.5rem, 0, 0);
    transform: translate3d(-0.5rem, 0, 0);
    opacity: 0;
  }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
}
@keyframes fade-in-left {
  from {
    -webkit-transform: translate3d(-0.5rem, 0, 0);
    transform: translate3d(-0.5rem, 0, 0);
    opacity: 0;
  }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
}
.fade-in-left {
  -webkit-animation-name: fade-in-left;
  animation-name: fade-in-left;
}

@-webkit-keyframes fade-in-right {
  from {
    -webkit-transform: translate3d(0.5rem, 0, 0);
    transform: translate3d(0.5rem, 0, 0);
    opacity: 0;
  }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
}

@keyframes fade-in-right {
  from {
    -webkit-transform: translate3d(0.5rem, 0, 0);
    transform: translate3d(0.5rem, 0, 0);
    opacity: 0;
  }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
}
.fade-in-right {
  -webkit-animation-name: fade-in-right;
  animation-name: fade-in-right;
}

.c-breadcrumb {
  position: relative;
}
.c-breadcrumb__item {
  font-weight: 500;
}
.c-breadcrumb__label {
  position: relative;
  letter-spacing: 0.1em;
}
.c-breadcrumb a.c-breadcrumb__label {
  color: #02773a;
}
.c-breadcrumb a.c-breadcrumb__label:hover {
  opacity: 1;
}
.c-breadcrumb a.c-breadcrumb__label:hover::after {
  width: 100%;
}
.c-breadcrumb a.c-breadcrumb__label::before, .c-breadcrumb a.c-breadcrumb__label::after {
  content: "";
  position: absolute;
  pointer-events: none;
  height: 1px;
}
.c-breadcrumb a.c-breadcrumb__label::before {
  top: calc(50% + 0.01rem);
  width: 0.2rem;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  background-color: #02773a;
}
.c-breadcrumb a.c-breadcrumb__label::after {
  left: 0;
  bottom: -0.02rem;
  width: 0;
  height: 0.01rem;
  -webkit-transition: 0.2s;
  transition: 0.2s;
  background-color: #02773a;
}
.c-breadcrumb__wrapper {
  margin: 0;
  padding: 0;
  list-style: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  overflow-x: auto;
  border-bottom: 1px solid #c8e6c8;
}
@media print, (width >= 768px) {
  .c-breadcrumb__wrapper {
    padding-bottom: 0.12rem;
    gap: 0.1rem 0.4rem;
  }
  .c-breadcrumb a.c-breadcrumb__label::before {
    right: -0.3rem;
  }
}
@media only screen and (width <= 767px) {
  .c-breadcrumb__wrapper {
    padding-bottom: 0.05rem;
    gap: 0.04rem 0.6rem;
  }
  .c-breadcrumb a.c-breadcrumb__label::before {
    right: -0.4rem;
  }
}

.c-keyvisual {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}
.c-keyvisual__wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.c-keyvisual__title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  margin: 0;
}
.c-keyvisual__title-english, .c-keyvisual__title-japanese {
  color: #02773a;
  font-weight: 700;
  letter-spacing: 0.1em;
  line-height: 1.2;
}
.c-keyvisual__title-english {
  font-family: "Outfit", sans-serif;
  letter-spacing: 0.1em;
}
.c-keyvisual__description {
  position: relative;
  margin: 0;
}
@media print, (width >= 768px) {
  .c-keyvisual {
    gap: 0.47rem;
    margin: 0.77rem 0 1.53rem;
  }
  .c-keyvisual__wrapper {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
  }
  .c-keyvisual__title {
    gap: 0.06rem;
  }
  .c-keyvisual__title-english {
    font-size: 0.16rem;
  }
  .c-keyvisual__title-japanese {
    font-size: 0.5rem;
  }
  .c-keyvisual__description {
    top: 0.05rem;
    line-height: 2.0625;
  }
  .c-keyvisual .c-keyvisual__wrapper:has(.c-keyvisual__description) .c-keyvisual__title {
    max-width: 60%;
  }
  .c-keyvisual .c-keyvisual__wrapper:has(.c-keyvisual__description) .c-keyvisual__description {
    max-width: 40%;
  }
}
@media only screen and (width <= 767px) {
  .c-keyvisual {
    gap: 0.3rem;
    margin: 0.5rem 0 0.8rem;
  }
  .c-keyvisual__wrapper {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 0.24rem;
  }
  .c-keyvisual__title {
    gap: 0.06rem;
  }
  .c-keyvisual__title-english {
    font-size: 0.16rem;
  }
  .c-keyvisual__title-japanese {
    font-size: 0.32rem;
  }
  .c-keyvisual__description {
    margin-right: -0.1rem;
    line-height: 1.6;
  }
}

.c-box {
  border-radius: 0.3rem;
  background-color: #f0faf0;
}

.u-hover-trans {
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
  opacity: 1;
  text-decoration: none;
}
@media (hover: hover) {
  .u-hover-trans:hover {
    opacity: 0.8;
  }
}

.u-load {
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
  opacity: 0.001;
}
html.wf-active .u-load {
  opacity: 1;
}

@media print, (width >= 768px) {
  .c-mb-0 {
    margin-bottom: 0;
  }
}
@media only screen and (width <= 767px) {
  .c-mb-0 {
    margin-bottom: 0;
  }
}

@media print, (width >= 768px) {
  .c-mb-1 {
    margin-bottom: 1.54rem;
  }
}
@media only screen and (width <= 767px) {
  .c-mb-1 {
    margin-bottom: 0.5rem;
  }
}

.u-image {
  display: block;
  width: 100%;
}

.u-object {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}

@media print, (width >= 768px) {
  .u-sp {
    /* stylelint-disable-next-line declaration-no-important */
    display: none !important;
  }
}

@media only screen and (width <= 767px) {
  .u-pc {
    /* stylelint-disable-next-line declaration-no-important */
    display: none !important;
  }
}

.p-section-top-hero__content-button {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}
.p-section-top-hero__wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.p-section-top-hero .c-heading--primary {
  position: relative;
  margin-bottom: 0.1rem;
}
.p-section-top-hero .c-button--primary {
  min-height: 0.62rem;
  padding: 0.08rem 0.5rem 0.1rem 0.85rem;
  overflow: inherit;
}
.p-section-top-hero .c-button--primary .c-button__describe,
.p-section-top-hero .c-button--primary .c-button__image {
  position: absolute;
}
.p-section-top-hero .c-button--primary .c-button__image {
  display: block;
  z-index: 1;
  top: 50%;
  left: 0.15rem;
  width: 0.71rem;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}
.p-section-top-hero .c-button--primary .c-button__icon {
  position: absolute;
  right: 0.14rem;
}
.p-section-top-hero .c-button--primary .c-button__describe {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  z-index: 2;
  top: -0.16rem;
  left: 50%;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  min-width: 2rem;
  min-height: 0.27rem;
  padding: 0.03rem 0.2rem;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
  border-radius: 0.15rem;
  background: -webkit-gradient(linear, left top, right top, from(#007800), to(#004600));
  background: linear-gradient(90deg, #007800, #004600);
  color: #02773a;
  font-size: 0.16rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  line-height: 1.2;
  text-align: center;
  text-wrap: auto;
  word-break: keep-all;
}
.p-section-top-hero .c-button--primary .c-button__describe::before {
  content: "";
  position: absolute;
  z-index: -1;
  top: 1px;
  right: 1px;
  bottom: 1px;
  left: 1px;
  border-radius: 0.1344rem;
  background: #fff;
}
.p-section-top-hero .c-button--primary.c-button--pink .c-button__describe {
  background: -webkit-gradient(linear, left top, right top, color-stop(20%, #ff5064), to(#ff0064));
  background: linear-gradient(90deg, #ff5064 20%, #ff0064 100%);
  color: #ff3164;
}
.p-section-top-hero__banner {
  position: relative;
}
.p-section-top-hero__object {
  position: absolute;
  will-change: transform;
  -webkit-animation: floatDrift 3s ease-in-out infinite;
  animation: floatDrift 3s ease-in-out infinite;
}
.p-section-top-hero__object img {
  display: block;
  width: 100%;
}
.p-section-top-hero__object--01 {
  top: 10%;
  left: 5%;
  width: 3.9695vw;
  -webkit-animation-duration: 6.6s;
  animation-duration: 6.6s;
  -webkit-animation-delay: 0s;
  animation-delay: 0s;
  -webkit-animation-direction: normal;
  animation-direction: normal;
}
.p-section-top-hero__object--02 {
  top: 10%;
  left: 22%;
  width: 5.2445vw;
  -webkit-animation-duration: 7.2s;
  animation-duration: 7.2s;
  -webkit-animation-delay: -0.6s;
  animation-delay: -0.6s;
  animation-direction: reverse;
}
.p-section-top-hero__object--03 {
  top: -6%;
  left: 37%;
  width: 10.625vw;
  -webkit-animation-duration: 7.8s;
  animation-duration: 7.8s;
  -webkit-animation-delay: -1.2s;
  animation-delay: -1.2s;
  -webkit-animation-direction: normal;
  animation-direction: normal;
}
.p-section-top-hero__object--04 {
  top: 0%;
  left: 70%;
  width: 13.4555vw;
  -webkit-animation-duration: 6s;
  animation-duration: 6s;
  -webkit-animation-delay: -1.8s;
  animation-delay: -1.8s;
  animation-direction: reverse;
}
.p-section-top-hero__object--05 {
  top: 26%;
  left: 65%;
  width: 3.9695vw;
  -webkit-animation-duration: 6.6s;
  animation-duration: 6.6s;
  -webkit-animation-delay: -2.4s;
  animation-delay: -2.4s;
  -webkit-animation-direction: normal;
  animation-direction: normal;
}
.p-section-top-hero__object--06 {
  top: 33%;
  left: 10%;
  width: 10.625vw;
  -webkit-animation-duration: 7.2s;
  animation-duration: 7.2s;
  -webkit-animation-delay: -3s;
  animation-delay: -3s;
  animation-direction: reverse;
}
.p-section-top-hero__object--07 {
  top: 40%;
  left: 58%;
  width: 3.5445vw;
  -webkit-animation-duration: 7.8s;
  animation-duration: 7.8s;
  -webkit-animation-delay: -3.6s;
  animation-delay: -3.6s;
  -webkit-animation-direction: normal;
  animation-direction: normal;
}
.p-section-top-hero__object--08 {
  top: 30%;
  left: 90%;
  width: 8.7805vw;
  -webkit-animation-duration: 6s;
  animation-duration: 6s;
  -webkit-animation-delay: 0s;
  animation-delay: 0s;
  animation-direction: reverse;
}
.p-section-top-hero__object--09 {
  top: 52%;
  left: 40%;
  width: 8.5vw;
  -webkit-animation-duration: 6.6s;
  animation-duration: 6.6s;
  -webkit-animation-delay: -0.6s;
  animation-delay: -0.6s;
  -webkit-animation-direction: normal;
  animation-direction: normal;
}
.p-section-top-hero__object--10 {
  top: 57%;
  left: 70%;
  width: 9.9195vw;
  -webkit-animation-duration: 7.2s;
  animation-duration: 7.2s;
  -webkit-animation-delay: -1.2s;
  animation-delay: -1.2s;
  animation-direction: reverse;
}
.p-section-top-hero__object--11 {
  top: 58%;
  left: 0%;
  width: 12.75vw;
  -webkit-animation-duration: 7.8s;
  animation-duration: 7.8s;
  -webkit-animation-delay: -1.8s;
  animation-delay: -1.8s;
  -webkit-animation-direction: normal;
  animation-direction: normal;
}
.p-section-top-hero__object--12 {
  top: 65%;
  left: 103%;
  width: 3.5445vw;
  -webkit-animation-duration: 6s;
  animation-duration: 6s;
  -webkit-animation-delay: -2.4s;
  animation-delay: -2.4s;
  animation-direction: reverse;
}
.p-section-top-hero__object--13 {
  top: 80%;
  left: 84%;
  width: 8.5vw;
  -webkit-animation-duration: 6.6s;
  animation-duration: 6.6s;
  -webkit-animation-delay: -3s;
  animation-delay: -3s;
  -webkit-animation-direction: normal;
  animation-direction: normal;
}
.p-section-top-hero__object--14 {
  top: 83%;
  left: 45%;
  width: 9.2055vw;
  -webkit-animation-duration: 7.2s;
  animation-duration: 7.2s;
  -webkit-animation-delay: -3.6s;
  animation-delay: -3.6s;
  animation-direction: reverse;
}
.p-section-top-hero__banner--motion-updown .p-section-top-hero__object {
  -webkit-animation-name: floatUpDown;
  animation-name: floatUpDown;
}
@media only screen and (width <= 767px) {
  .p-section-top-hero__object--04 {
    display: none;
  }
}
.p-section-top-hero__object--05 {
  -webkit-animation-name: floatTilt !important;
  animation-name: floatTilt !important;
}
@media only screen and (width <= 767px) {
  .p-section-top-hero__object--05 {
    display: none;
  }
}
@media only screen and (width <= 767px) {
  .p-section-top-hero__object--06 {
    -webkit-animation-name: floatTilt !important;
    animation-name: floatTilt !important;
  }
}
.p-section-top-hero__object--08 {
  -webkit-animation-name: floatTilt !important;
  animation-name: floatTilt !important;
}
@media only screen and (width <= 767px) {
  .p-section-top-hero__object--08 {
    display: none;
  }
}
@media only screen and (width <= 767px) {
  .p-section-top-hero__object--10 {
    display: none;
  }
}
@media only screen and (width <= 767px) {
  .p-section-top-hero__object--11 {
    -webkit-animation-name: floatTilt !important;
    animation-name: floatTilt !important;
  }
}
.p-section-top-hero__object--14 {
  -webkit-animation-name: floatTilt !important;
  animation-name: floatTilt !important;
}
@media print, (width >= 768px) {
  .p-section-top-hero {
    padding: 0.6rem 0 0.5rem;
  }
  .p-section-top-hero .l-wrapper {
    max-width: 100%;
    width: calc(100% - 2rem);
  }
  .p-section-top-hero__banner {
    position: relative;
    right: -0.01rem;
    width: 42vw;
    margin-top: -0.09rem;
    margin-right: -0.82rem;
  }
  .p-section-top-hero__content {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    max-width: 45vw;
    padding-top: 0.13rem;
  }
  .p-section-top-hero__content .c-heading {
    font-size: 6vw;
    line-height: 1.2;
    margin-bottom: 0rem;
    font-family: "Outfit", sans-serif;
  }
  .p-section-top-hero__content .c-heading--green {
    font-size: 6vw;
    color: #006428;
  }
  .p-section-top-hero__content-sub {
    font-size: 2.2vw;
    font-weight: bold;
    color: #02773a;
    margin-top: 0.05rem;
    margin-bottom: 0.2rem;
    line-height: 1;
  }
  .p-section-top-hero__content-button {
    gap: 0.37rem;
    max-width: 3.42rem;
  }
  .p-section-top-hero .c-button--primary {
    width: 100%;
  }
  .p-section-top-hero__content-detail {
    margin-right: -0.1rem;
    margin-bottom: 0.38rem;
  }
  .p-section-top-hero__wrapper {
    margin-bottom: 0.78rem;
  }
}
@media only screen and (width <= 767px) {
  .p-section-top-hero {
    position: relative;
    padding: 0.4rem 0 0.2rem;
  }
  .p-section-top-hero__wrapper {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    margin-bottom: 0.5rem;
  }
  .p-section-top-hero__content-button {
    -webkit-box-ordinal-group: 6;
    -ms-flex-order: 5;
    order: 5;
    gap: 0.3rem;
    width: 100%;
  }
  .p-section-top-hero .c-heading {
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 1;
    order: 1;
    text-align: left;
    font-family: "Outfit", sans-serif;
    font-size: 0.45rem;
    line-height: 1.2;
    margin-bottom: 0;
  }
  .p-section-top-hero .c-heading--green {
    color: #006428;
    font-family: "Outfit", sans-serif;
    font-size: 0.45rem;
  }
  .p-section-top-hero__content {
    display: contents;
  }
  .p-section-top-hero__content-sub {
    -webkit-box-ordinal-group: 3;
    -ms-flex-order: 2;
    order: 2;
    text-align: left;
    color: #02773a;
    font-weight: bold;
    font-size: 0.2rem;
    margin: 0.2rem 0 0.22rem;
    line-height: 1;
  }
  .p-section-top-hero__banner {
    -webkit-box-ordinal-group: 5;
    -ms-flex-order: 4;
    order: 4;
    width: 3.8rem;
    height: 2.2rem;
    margin: 0.25rem auto 0.3rem;
  }
  .p-section-top-hero__object--01 {
    top: 25%;
    left: 0%;
    width: 9.5625vw;
  }
  .p-section-top-hero__object--02 {
    top: 15%;
    left: 14%;
    width: 10.2vw;
  }
  .p-section-top-hero__object--03 {
    top: -7%;
    left: 34%;
    width: 24.225vw;
  }
  .p-section-top-hero__object--04 {
    top: 0%;
    left: 68%;
    width: 24.225vw;
  }
  .p-section-top-hero__object--05 {
    top: 26%;
    left: 62%;
    width: 7.225vw;
  }
  .p-section-top-hero__object--06 {
    top: 55%;
    left: 5%;
    width: 25.5vw;
  }
  .p-section-top-hero__object--07 {
    top: 43%;
    left: 26%;
    width: 7.8625vw;
  }
  .p-section-top-hero__object--08 {
    top: 30%;
    left: 78%;
    width: 15.725vw;
  }
  .p-section-top-hero__object--09 {
    top: 52%;
    left: 38%;
    width: 18.0625vw;
  }
  .p-section-top-hero__object--10 {
    top: 57%;
    left: 66%;
    width: 17.85vw;
  }
  .p-section-top-hero__object--11 {
    top: -5%;
    left: 66%;
    width: 25.5vw;
  }
  .p-section-top-hero__object--12 {
    top: 55%;
    left: 82%;
    width: 8.5vw;
  }
  .p-section-top-hero__object--13 {
    top: 18%;
    left: 50%;
    width: 25.5vw;
  }
  .p-section-top-hero__object--14 {
    top: 65%;
    left: 60%;
    width: 16.575vw;
  }
  .p-section-top-hero__content-detail {
    -webkit-box-ordinal-group: 4;
    -ms-flex-order: 3;
    order: 3;
    margin-bottom: 0rem;
    font-size: 0.14rem;
    line-height: 1.7142857143;
    text-align: left;
  }
}

@-webkit-keyframes floatDrift {
  0% {
    -webkit-transform: translate(0, -0.09rem) rotate(0deg);
    transform: translate(0, -0.09rem) rotate(0deg);
  }
  25% {
    -webkit-transform: translate(0.09rem, 0) rotate(2deg);
    transform: translate(0.09rem, 0) rotate(2deg);
  }
  50% {
    -webkit-transform: translate(0, 0.09rem) rotate(0deg);
    transform: translate(0, 0.09rem) rotate(0deg);
  }
  75% {
    -webkit-transform: translate(-0.09rem, 0) rotate(-2deg);
    transform: translate(-0.09rem, 0) rotate(-2deg);
  }
  100% {
    -webkit-transform: translate(0, -0.09rem) rotate(0deg);
    transform: translate(0, -0.09rem) rotate(0deg);
  }
}

@keyframes floatDrift {
  0% {
    -webkit-transform: translate(0, -0.09rem) rotate(0deg);
    transform: translate(0, -0.09rem) rotate(0deg);
  }
  25% {
    -webkit-transform: translate(0.09rem, 0) rotate(2deg);
    transform: translate(0.09rem, 0) rotate(2deg);
  }
  50% {
    -webkit-transform: translate(0, 0.09rem) rotate(0deg);
    transform: translate(0, 0.09rem) rotate(0deg);
  }
  75% {
    -webkit-transform: translate(-0.09rem, 0) rotate(-2deg);
    transform: translate(-0.09rem, 0) rotate(-2deg);
  }
  100% {
    -webkit-transform: translate(0, -0.09rem) rotate(0deg);
    transform: translate(0, -0.09rem) rotate(0deg);
  }
}
@-webkit-keyframes floatUpDown {
  0%, 100% {
    -webkit-transform: translateY(-0.09rem);
    transform: translateY(-0.09rem);
  }
  50% {
    -webkit-transform: translateY(0.22rem);
    transform: translateY(0.22rem);
  }
}
@keyframes floatUpDown {
  0%, 100% {
    -webkit-transform: translateY(-0.09rem);
    transform: translateY(-0.09rem);
  }
  50% {
    -webkit-transform: translateY(0.22rem);
    transform: translateY(0.22rem);
  }
}
@-webkit-keyframes floatTilt {
  0%, 100% {
    -webkit-transform: rotate(-5deg);
    transform: rotate(-5deg);
  }
  50% {
    -webkit-transform: rotate(5deg);
    transform: rotate(5deg);
  }
}
@keyframes floatTilt {
  0%, 100% {
    -webkit-transform: rotate(-5deg);
    transform: rotate(-5deg);
  }
  50% {
    -webkit-transform: rotate(5deg);
    transform: rotate(5deg);
  }
}
@media (prefers-reduced-motion: reduce) {
  .p-section-top-hero__object {
    -webkit-animation: none;
    animation: none;
  }
}
.p-section-top-hero__gallery {
  overflow: hidden;
}
.p-section-top-hero__gallery-list {
  margin: 0;
  padding: 0;
  list-style: none;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -webkit-transition-timing-function: linear !important;
  transition-timing-function: linear !important;
}
.p-section-top-hero__gallery-item {
  width: auto;
}
.p-section-top-hero__gallery-image {
  height: 0.35rem;
  margin: 0;
}
.p-section-top-hero__gallery-image img {
  width: auto;
  height: 100%;
}
.p-section-top-hero__gallery-slider:last-child {
  margin-bottom: 0;
}
@media print, (width >= 768px) {
  .p-section-top-hero__gallery {
    margin-top: 1.1rem;
  }
  .p-section-top-hero__gallery-slider {
    margin-bottom: 0.4rem;
  }
  .p-section-top-hero__gallery-item {
    padding-right: 0.5rem;
  }
}
@media only screen and (width <= 767px) {
  .p-section-top-hero__gallery {
    margin-top: 0.4rem;
  }
  .p-section-top-hero__gallery-slider {
    margin-bottom: 0.3rem;
  }
  .p-section-top-hero__gallery-item {
    padding-right: 0.2rem;
  }
}

.p-section-top-assignment {
  border-radius: 0.3rem;
  background: -webkit-gradient(linear, left top, right top, from(rgb(248, 255, 248)), to(rgb(235, 245, 235)));
  background: linear-gradient(90deg, rgb(248, 255, 248) 0%, rgb(235, 245, 235) 100%);
}
.p-section-top-assignment .c-heading--secondary {
  margin-bottom: 0.3rem;
}
.p-section-top-assignment .c-list--primary {
  margin-bottom: 0.6rem;
}
@media print, (width >= 768px) {
  .p-section-top-assignment {
    margin-bottom: 0.4rem;
    padding: 0.38rem 0 2.37rem;
  }
  .p-section-top-assignment .c-text--center {
    margin-bottom: 0.52rem;
  }
  .p-section-top-assignment__button {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    gap: 0.4rem;
    max-width: 5.36rem;
    margin: 0 auto;
  }
}
@media only screen and (width <= 767px) {
  .p-section-top-assignment {
    margin-bottom: 0.3rem;
    padding: 0.4rem 0 1rem;
  }
  .p-section-top-assignment .c-text--center {
    margin-bottom: 0.4rem;
  }
  .p-section-top-assignment .c-button--secondary {
    margin-bottom: 0.2rem;
  }
  .p-section-top-assignment .c-button--secondary:last-child {
    margin-bottom: 0;
  }
}

.p-section-top-case__list-action {
  max-width: 1.8rem;
  margin: 0 auto;
}
.p-section-top-case .c-button--green {
  padding: 0.05rem 0.4rem 0.05rem 0.16rem;
}
.p-section-top-case .c-heading--secondary {
  margin-bottom: 0.3rem;
}
.p-section-top-case .c-text--center {
  margin-bottom: 0.7rem;
}
@media print, (width >= 768px) {
  .p-section-top-case {
    margin-bottom: 1.6rem;
    padding-top: 1.2rem;
  }
  .p-section-top-case__list {
    margin-bottom: 1.2rem;
  }
  .p-section-top-case__banner {
    width: 6.62rem;
    margin: 0 auto 0.22rem;
  }
  .p-section-top-case .c-list--tertiary {
    margin-bottom: 0.6rem;
  }
}
@media only screen and (width <= 767px) {
  .p-section-top-case {
    margin-bottom: 0.6rem;
    padding-top: 0.4rem;
  }
  .p-section-top-case__list {
    margin-bottom: 0.4rem;
  }
  .p-section-top-case__banner,
  .p-section-top-case .c-list--tertiary {
    margin-bottom: 0.4rem;
  }
  .p-section-top-case .c-text--center {
    margin: 0 -0.05rem 0.52rem;
  }
}

.p-section-top-strength .c-heading--secondary {
  margin-bottom: 0.3rem;
}
.p-section-top-strength .c-text--center {
  margin-bottom: 0.32rem;
}
.p-section-top-strength__button {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}
.p-section-top-strength__button .c-button--secondary {
  width: 1.98rem;
  margin: 0 auto;
  padding: 0.05rem 0.4rem 0.05rem 0.16rem;
}
@media print, (width >= 768px) {
  .p-section-top-strength {
    margin-bottom: 1.6rem;
  }
  .p-section-top-strength .l-wrapper {
    max-width: 11.4rem;
  }
  .p-section-top-strength .c-block-strength {
    margin-bottom: 0.6rem;
  }
}
@media only screen and (width <= 767px) {
  .p-section-top-strength {
    margin-bottom: 0.6rem;
  }
  .p-section-top-strength .c-block-strength {
    margin-bottom: 0.4rem;
  }
}

.c-block-strength__list-wrapper {
  margin: 0;
  padding: 0;
  list-style: none;
}
.c-block-strength__content-number {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin-bottom: 0.14rem;
  color: #c8e6c8;
  font-family: "Outfit", sans-serif;
  letter-spacing: 0.1em;
  line-height: 1;
  gap: 0.05rem;
}
.c-block-strength__content-title {
  position: relative;
  color: #02773a;
}
.c-block-strength__content-title::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 0.49rem;
  height: 0.03rem;
  background-color: #ff8c00;
}
.c-block-strength__content-title, .c-block-strength__content-number {
  font-weight: 700;
}
.c-block-strength .c-button--secondary {
  min-height: 0.36rem;
}
.c-block-strength__list-item {
  position: relative;
}
.c-block-strength__list-item::before {
  content: "";
  position: absolute;
  z-index: -1;
  right: 0;
  bottom: 0;
  left: 0;
  background: -webkit-gradient(linear, left top, right top, from(rgb(248, 255, 248)), to(rgb(235, 245, 235)));
  background: linear-gradient(90deg, rgb(248, 255, 248) 0%, rgb(235, 245, 235) 100%);
}
.c-block-strength__list-item:last-child {
  margin-bottom: 0;
}
.c-block-strength__item-image {
  position: relative;
}
.c-block-strength__item-image::before, .c-block-strength__item-image::after {
  content: "";
  position: absolute;
  mix-blend-mode: multiply;
  pointer-events: none;
}
@media print, (width >= 768px) {
  .c-block-strength__content-number {
    font-size: 0.3rem;
  }
  .c-block-strength__content-number span {
    font-size: 0.7rem;
  }
  .c-block-strength__content-title {
    margin-bottom: 0.23rem;
    padding-bottom: 0.22rem;
    font-size: 0.3rem;
    margin-right: auto;
  }
  .c-block-strength__item-content {
    padding-top: 0.04rem;
  }
  .c-block-strength__list-item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin-bottom: 0.4rem;
    padding: 0 0.34rem 0.42rem 0.8rem;
  }
  .c-block-strength__list-item::before {
    top: 0.4rem;
    border-radius: 0.15rem;
  }
  .c-block-strength__list-item:nth-child(even) {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
    padding: 0 0.78rem 0.42rem 1.59rem;
  }
  .c-block-strength__list-item:nth-child(even) .c-block-strength__item-content {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
  }
  .c-block-strength__list-item:nth-child(even) .c-list__wrapper {
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
  }
  .c-block-strength__item-image {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
  }
  .c-block-strength .c-list--dot {
    margin-bottom: 0.26rem;
  }
  .c-block-strength__list-item--first .c-block-strength__item-content {
    margin-right: -0.42rem;
  }
  .c-block-strength__list-item--first .c-block-strength__item-image {
    width: 5.84rem;
  }
  .c-block-strength__list-item--first .c-block-strength__item-image::before, .c-block-strength__list-item--first .c-block-strength__item-image::after {
    width: 1.33rem;
    height: 0.25rem;
    background: url("../img/top/strength_decoration_01.svg") top left/100% 100% no-repeat;
  }
  .c-block-strength__list-item--first .c-block-strength__item-image::before {
    bottom: 0.03rem;
    left: 1.26rem;
  }
  .c-block-strength__list-item--first .c-block-strength__item-image::after {
    right: 0.99rem;
    bottom: -0.03rem;
  }
  .c-block-strength__list-item--second .c-block-strength__item-image {
    width: 4.5rem;
  }
  .c-block-strength__list-item--second .c-block-strength__item-image::before, .c-block-strength__list-item--second .c-block-strength__item-image::after {
    width: 1.47rem;
    height: 0.37rem;
    background: url("../img/top/strength_decoration_02.svg") top left/100% 100% no-repeat;
  }
  .c-block-strength__list-item--second .c-block-strength__item-image::before {
    bottom: -0.14rem;
    left: -0.03rem;
  }
  .c-block-strength__list-item--second .c-block-strength__item-image::after {
    right: 0.03rem;
    bottom: -0.14rem;
  }
  .c-block-strength__list-item--third .c-block-strength__item-image {
    width: 6.06rem;
    margin-top: -0.06rem;
    margin-right: 0.33rem;
  }
  .c-block-strength__list-item--third .c-block-strength__item-image::before {
    bottom: -0.09rem;
    left: 0.09rem;
    width: 2.18rem;
    height: 0.28rem;
    background: url("../img/top/strength_decoration_03.svg") top left/100% 100% no-repeat;
  }
  .c-block-strength .c-button--secondary {
    width: 1.5rem;
    padding: 0.05rem 0.3rem 0.05rem 0.17rem;
  }
}
@media only screen and (width <= 767px) {
  .c-block-strength__content-number {
    position: absolute;
    top: -0.07rem;
    right: 0;
    left: 0;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 100%;
    font-size: 0.2rem;
    text-align: center;
  }
  .c-block-strength__content-number span {
    font-size: 0.6rem;
  }
  .c-block-strength__content-title {
    margin-bottom: 0.25rem;
    padding-bottom: 0.17rem;
    font-size: 0.24rem;
    line-height: 1.4166666667;
  }
  .c-block-strength__list-item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -ms-flex-direction: column-reverse;
    flex-direction: column-reverse;
    margin-bottom: 0.5rem;
    padding: 0.74rem 0.3rem 0.3rem;
  }
  .c-block-strength__list-item::before {
    top: 0.24rem;
    border-radius: 0.1rem;
  }
  .c-block-strength .c-list--dot {
    margin-bottom: 0.24rem;
  }
  .c-block-strength__item-image {
    width: 2.58rem;
    margin: 0 auto 0.22rem;
  }
  .c-block-strength .c-button--secondary {
    width: 100%;
    padding: 0.05rem 0.31rem 0.05rem 0.32rem;
  }
  .c-block-strength__list-item--first .c-block-strength__item-image::before, .c-block-strength__list-item--first .c-block-strength__item-image::after {
    width: 0.58rem;
    height: 0.11rem;
    background: url("../img/top/strength_decoration_01.svg") top left/100% 100% no-repeat;
  }
  .c-block-strength__list-item--first .c-block-strength__item-image::before {
    bottom: 0;
    left: 0.56rem;
  }
  .c-block-strength__list-item--first .c-block-strength__item-image::after {
    right: 0.46rem;
    bottom: -0.03rem;
  }
  .c-block-strength__list-item--second .c-block-strength__item-image::before, .c-block-strength__list-item--second .c-block-strength__item-image::after {
    width: 0.78rem;
    height: 0.22rem;
    background: url("../img/top/strength_decoration_02.svg") top left/100% 100% no-repeat;
  }
  .c-block-strength__list-item--second .c-block-strength__item-image::before {
    bottom: -0.09rem;
    left: 0.11rem;
  }
  .c-block-strength__list-item--second .c-block-strength__item-image::after {
    right: 0.11rem;
    bottom: -0.1rem;
  }
  .c-block-strength__list-item--third .c-block-strength__item-image::before {
    bottom: -0.07rem;
    left: 0;
    width: 0.94rem;
    height: 0.19rem;
    background: url("../img/top/strength_decoration_03.svg") top left/100% 100% no-repeat;
  }
}

.p-section-top-function {
  position: relative;
  border-radius: 0.3rem;
}
.p-section-top-function::before, .p-section-top-function::after {
  content: "";
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  width: 100%;
  border-radius: 0.3rem;
  pointer-events: none;
}
.p-section-top-function::before {
  background: -webkit-gradient(linear, left top, left bottom, from(rgb(235, 245, 235)), to(rgb(248, 255, 248)));
  background: linear-gradient(180deg, rgb(235, 245, 235) 0%, rgb(248, 255, 248) 100%);
}
.p-section-top-function::after {
  mix-blend-mode: multiply;
  background: url("../img/common/decoration_bg_01.svg") bottom left/100% auto no-repeat;
}
.p-section-top-function__flow {
  margin-bottom: 0.45rem;
}
.p-section-top-function .c-heading--secondary {
  margin-bottom: 0.3rem;
}
.p-section-top-function .c-text--center {
  margin-bottom: 0.32rem;
}
.p-section-top-function__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  gap: 0.2rem;
  margin: 0;
  padding: 0;
  list-style: none;
}
.p-section-top-function__list-item {
  width: 100%;
  max-width: 2.55rem;
  min-height: 2.55rem;
}
@media print, (width >= 768px) {
  .p-section-top-function {
    margin-top: 1.6rem;
    margin-bottom: 1.58rem;
    padding: 0.37rem 0 0;
  }
  .p-section-top-function::after, .p-section-top-function::before {
    bottom: 0.8rem;
  }
  .p-section-top-function__flow-image {
    width: 10.83rem;
    margin: 0 -0.03rem;
  }
}
@media only screen and (width <= 767px) {
  .p-section-top-function {
    padding: 0.6rem 0;
  }
  .p-section-top-function::after, .p-section-top-function::before {
    bottom: 0;
  }
  .p-section-top-function__list {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }
  .p-section-top-function__flow {
    margin-right: -0.2rem;
    margin-left: -0.2rem;
    padding: 0 0.2rem;
  }
  .p-section-top-function__flow-image {
    width: 8.64rem;
  }
}

.p-section-top-seminar {
  border-radius: 0.3rem;
  background-color: #02773a;
  color: #fff;
}
.p-section-top-seminar__title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  font-weight: 700;
  line-height: 1.2;
}
.p-section-top-seminar__title::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 0.49rem;
  height: 0.03rem;
  background-color: #282828;
}
.p-section-top-seminar__title span {
  display: inline-block;
}
.p-section-top-seminar__title-english {
  color: #006428;
  font-family: "Outfit", sans-serif;
  letter-spacing: 0.1em;
}
.p-section-top-seminar__title-japanese {
  z-index: 1;
  color: #fff;
}
.p-section-top-seminar__content {
  position: relative;
  z-index: 1;
}
.p-section-top-seminar__item-title {
  display: -webkit-box;
  overflow: hidden;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}
.p-section-top-seminar .c-text--light {
  margin-bottom: 0.29rem;
}
@media print, (width >= 768px) {
  .p-section-top-seminar {
    padding-top: 0.55rem;
    padding-bottom: 1.2rem;
  }
  .p-section-top-seminar__title {
    margin-bottom: 0.3rem;
    padding-bottom: 0.18rem;
  }
  .p-section-top-seminar__title-english {
    position: absolute;
    width: -webkit-max-content;
    width: -moz-max-content;
    width: max-content;
    font-size: 1.2rem;
  }
  .p-section-top-seminar__title-japanese {
    padding-top: 0.9rem;
    font-size: 0.4rem;
  }
  .p-section-top-seminar .l-wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    gap: 0.5rem;
  }
  .p-section-top-seminar__heading {
    width: 2.5rem;
  }
  .p-section-top-seminar__content {
    max-width: 7.65rem;
    padding-top: 0.64rem;
    padding-left: 0.07rem;
  }
  .p-section-top-seminar .c-text--light {
    font-size: 0.18rem;
    line-height: 1.9444444444;
  }
  .p-section-top-seminar .c-list.c-list--secondary .c-list__item {
    width: 3.48rem;
  }
  .p-section-top-seminar .c-list.c-list--secondary .c-list__item:first-child {
    width: 100%;
  }
  .p-section-top-seminar .c-list.c-list--secondary .c-list__item:first-child .c-list__item-image {
    width: 4.19rem;
  }
  .p-section-top-seminar .c-list.c-list--secondary .c-list__item:first-child .c-list__item-content {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    gap: 0.3rem;
  }
  .p-section-top-seminar .c-list.c-list--secondary .c-list__item:first-child .c-list__item-heading {
    height: 2.57rem;
  }
  .p-section-top-seminar .c-list.c-list--secondary .c-list__item:first-child .c-list__item-inner {
    width: 2.74rem;
    margin: 0 -0.3rem 0 0;
  }
  .p-section-top-seminar .c-list.c-list--secondary .c-list__item:first-child .c-button--tertiary {
    max-width: 2.67rem;
  }
}
@media only screen and (width <= 767px) {
  .p-section-top-seminar {
    padding: 0.5rem 0 1rem;
  }
  .p-section-top-seminar__title {
    margin-bottom: 0.3rem;
    padding-bottom: 0.2rem;
  }
  .p-section-top-seminar__title-english {
    font-size: 0.5rem;
  }
  .p-section-top-seminar__title-japanese {
    margin-top: -0.26rem;
    font-size: 0.2rem;
  }
  .p-section-top-seminar__heading {
    margin-bottom: 0.4rem;
  }
  .p-section-top-seminar .c-text--light {
    font-size: 0.14rem;
    line-height: 1.7142857143;
  }
}

.p-section-top-company {
  text-align: center;
  background-color: #f0faf0;
}
.p-section-top-company__heading {
  text-align: center;
}
.p-section-top-company__heading-logo {
  display: inline-block;
  position: relative;
  width: 1.43rem;
}
@media print, (width >= 768px) {
  .p-section-top-company {
    padding: 0.65rem 0 0.8rem;
    margin-top: 1.5rem;
  }
}
@media print, print and (width >= 768px) {
  .p-section-top-company {
    margin-top: 2rem;
  }
}
@media print, (width >= 768px) {
  .p-section-top-company__heading {
    margin-bottom: 0.25rem;
    font-size: 0.3rem;
  }
  .p-section-top-company__heading-logo {
    top: 0.04rem;
    left: 0.05rem;
  }
  .p-section-top-company__heading-detail {
    margin-left: 0.09rem;
  }
}
@media only screen and (width <= 767px) {
  .p-section-top-company {
    padding: 0.6rem 0;
  }
  .p-section-top-company__heading {
    margin-bottom: 0.4rem;
    padding: 0 0.2rem;
    font-size: 0.25rem;
    line-height: 1.5555555556;
  }
  .p-section-top-company__heading-logo {
    position: relative;
    top: 0.05rem;
    margin-right: 0.05rem;
  }
  .p-section-top-company__heading-detail {
    line-height: 1.5555555556;
  }
}

.c-slider-keyvisual__slider {
  max-width: 100%;
  margin: 0 auto 0.38rem;
}
.c-slider-keyvisual__slider:last-child {
  margin-bottom: 0;
}
.c-slider-keyvisual__inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}
.c-slider-keyvisual__list {
  margin: 0;
  padding: 0;
  list-style: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.c-slider-keyvisual__item {
  max-width: 1.75rem;
  margin: 0 0.1rem;
}
.c-slider-keyvisual__item img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
  object-fit: contain;
}
.c-slider-keyvisual__image {
  overflow: hidden;
  border-radius: 0.1rem;
  background: #fff;
}
@media print, (width >= 768px) {
  .c-slider-keyvisual__slider {
    margin: 0 auto 0.28rem;
  }
  .c-slider-keyvisual--modify .c-slider-keyvisual__item:last-child {
    margin-right: 0;
  }
  .c-slider-keyvisual__image {
    height: 0.64rem;
  }
}
@media only screen and (width <= 767px) {
  .c-slider-keyvisual__slider {
    margin: 0 auto 0.2rem;
  }
  .c-slider-keyvisual--modify .c-slider-keyvisual__item {
    margin: 0 0.1rem;
    -ms-flex-negative: 0;
    flex-shrink: 0;
  }
  .c-slider-keyvisual--modify .c-slider-keyvisual__slider {
    overflow-y: auto;
    padding-bottom: 0.05rem;
    padding-left: 0.1rem;
    margin: 0 0.1rem 0.05rem;
  }
  .c-slider-keyvisual__slider .c-slider-keyvisual__list > li:last-child {
    padding-right: 0.2rem;
  }
  .c-slider-keyvisual--modify {
    overflow: hidden;
    padding: 0.4rem 0 0;
  }
  .c-slider-keyvisual__image {
    height: 0.64rem;
  }
}

@media print, (width >= 768px) {
  .p-block-top-banner {
    margin: -1.82rem 0 0.94rem;
  }
  .p-block-top-banner__image {
    width: 7.59rem;
    margin: 0 auto;
  }
}
@media only screen and (width <= 767px) {
  .p-block-top-banner {
    margin: -0.75rem 0 0.6rem;
  }
  .p-block-top-banner__image {
    padding: 0 0.5rem;
  }
}

.c-section-contact-form .c-heading--tertiary {
  margin-bottom: 0.2rem;
}
.c-section-contact-form .c-button--secondary {
  padding: 0.05rem 0.4rem 0.05rem 0.26rem;
}
@media print, (width >= 768px) {
  .c-section-contact-form {
    margin-bottom: 0.73rem;
  }
  .c-section-contact-form .c-text--center {
    margin-bottom: 0.72rem;
    font-size: 0.16rem;
    line-height: 1.9375;
  }
  .c-section-contact-form__action {
    max-width: 1.83rem;
    margin: 0 auto;
  }
  .c-section-contact-form__describe {
    margin-bottom: 0.69rem;
    font-size: 0.16rem;
    line-height: 1.9;
    text-align: center;
  }
  .c-section-contact-form .c-form {
    max-width: 9.2rem;
    margin: 0 auto;
  }
}
@media only screen and (width <= 767px) {
  .c-section-contact-form {
    margin-bottom: 0.6rem;
  }
  .c-section-contact-form .c-text--center {
    margin-bottom: 0.6rem;
    text-align: left;
  }
  .c-section-contact-form .c-heading--tertiary {
    text-align: left;
  }
  .c-section-contact-form__describe {
    margin-bottom: 0.7rem;
    font-size: 0.14rem;
    line-height: 1.7142857143;
  }
}

.p-section-assignment-comparison__row {
  position: relative;
}
.p-section-assignment-comparison__row::after {
  content: "";
  position: absolute;
  left: 50%;
  width: 0.45rem;
  height: 0.63rem;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
  background: url("../img/assignment/comparison_icn.svg") center/cover no-repeat;
}
.p-section-assignment-comparison__row:last-of-type {
  margin-bottom: 0;
}
.p-section-assignment-comparison__row:last-of-type::after {
  content: unset;
}
.p-section-assignment-comparison__head {
  display: block;
  color: #02773a;
  font-family: "Outfit", sans-serif;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-align: center;
}
.p-section-assignment-comparison__title {
  margin-bottom: 0;
  color: #02773a;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-align: center;
}
.p-section-assignment-comparison__row--orange .c-box {
  background-color: #fff5e1;
}
.p-section-assignment-comparison__row--orange .p-section-assignment-comparison__head,
.p-section-assignment-comparison__row--orange .p-section-assignment-comparison__title {
  color: #ff8c00;
}
.p-section-assignment-comparison__list {
  margin: 0;
  padding: 0;
  list-style: none;
}
.p-section-assignment-comparison__item {
  border-radius: 0.15rem;
  background-color: #fff;
}
.p-section-assignment-comparison__photo {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin-right: auto;
  margin-left: auto;
}
.p-section-assignment-comparison__photo .u-image {
  width: auto;
  height: 100%;
}
@media print, (width >= 768px) {
  .p-section-assignment-comparison {
    padding: 1rem 0 1.2rem;
  }
  .p-section-assignment-comparison__row {
    margin-bottom: 0.84rem;
  }
  .p-section-assignment-comparison__row::after {
    bottom: -0.74rem;
  }
  .p-section-assignment-comparison__head {
    margin-bottom: 0.02rem;
    font-size: 0.3rem;
  }
  .p-section-assignment-comparison__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 0.4rem;
  }
  .p-section-assignment-comparison__item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    width: 2.2rem;
    padding: 0.3rem 0.3rem 0.24rem;
  }
  .p-section-assignment-comparison__photo {
    height: 0.92rem;
    margin-bottom: 0.11rem;
  }
  .p-section-assignment-comparison__title {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    font-size: 0.2rem;
    line-height: 1.6;
  }
  .p-section-assignment-comparison .c-box {
    padding: 0.01rem 0.4rem 0.4rem;
  }
  .p-section-assignment-comparison .c-heading {
    margin-bottom: 0.33rem;
  }
}
@media only screen and (width <= 767px) {
  .p-section-assignment-comparison {
    padding: 0.6rem 0;
  }
  .p-section-assignment-comparison__row {
    margin-bottom: 0.9rem;
  }
  .p-section-assignment-comparison__row::after {
    bottom: -0.76rem;
  }
  .p-section-assignment-comparison__head {
    font-size: 0.22rem;
  }
  .p-section-assignment-comparison__item {
    margin-bottom: 0.2rem;
    padding: 0.2rem;
  }
  .p-section-assignment-comparison__item:last-of-type {
    margin-bottom: 0;
  }
  .p-section-assignment-comparison__photo {
    height: 0.92rem;
    margin-bottom: 0.1rem;
  }
  .p-section-assignment-comparison__title {
    font-size: 0.18rem;
    line-height: 1.5555555556;
  }
  .p-section-assignment-comparison .c-box {
    padding: 0 0.2rem 0.2rem;
  }
  .p-section-assignment-comparison .c-heading {
    margin-bottom: 0.5rem;
  }
}

@media print, (width >= 768px) {
  .p-section-assignment-introduction {
    padding: 1.48rem 0 1.04rem;
  }
  .p-section-assignment-introduction .c-block-media__photo {
    width: 3.22rem;
    margin-top: -0.08rem;
  }
}
@media only screen and (width <= 767px) {
  .p-section-assignment-introduction {
    padding-top: 0.6rem;
  }
}

.p-section-assignment__list {
  padding-left: 0;
  list-style-type: none;
}
.p-section-assignment__link {
  display: block;
}
.p-section-assignment__item-number {
  position: relative;
  width: 1.48rem;
  margin: 0 auto -0.1rem;
  padding: 0.02rem 0.05rem 0.01rem;
  border-radius: 0.05rem;
  background-color: #02773a;
  color: #fff;
  font-family: "Outfit", sans-serif;
  font-size: 0.14rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  line-height: 1.2;
  text-align: center;
}
html.is-ios .p-section-assignment__item-number {
  padding: 0.02rem 0.05rem;
}
.p-section-assignment__item-content {
  border-radius: 0.2rem;
  background-color: #f0faf0;
}
.p-section-assignment__item-heading {
  margin-bottom: 0;
  color: #02773a;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-align: center;
}
.p-section-assignment__item-description {
  margin-bottom: 0;
  color: #0a0a0a;
}
.p-section-assignment__item-image {
  width: 2rem;
  margin-right: auto;
  margin-left: auto;
}
.p-section-assignment__item-link {
  display: block;
  height: 100%;
}
@media print, (width >= 768px) {
  .p-section-assignment {
    padding: 0.3rem 0 0.51rem;
  }
  .p-section-assignment__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin: 0.26rem -0.2rem 1.3rem;
  }
  .p-section-assignment__item {
    width: 25%;
    padding: 0 0.2rem;
  }
  .p-section-assignment__item-content {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    height: 100%;
    min-height: 3.85rem;
    padding: 0.4rem 0.1rem 0.12rem;
  }
  .p-section-assignment__item-heading {
    margin-bottom: 0.06rem;
    font-size: 0.2rem;
    line-height: 1.5;
  }
  .p-section-assignment__item-image {
    min-height: 1.2rem;
    margin-bottom: 0.12rem;
  }
  .p-section-assignment__item-description {
    max-width: 1.8rem;
    margin-right: auto;
    margin-left: auto;
    font-size: 0.16rem;
    line-height: 1.9375;
  }
}
@media only screen and (width <= 767px) {
  .p-section-assignment {
    padding-top: 0.6rem;
  }
  .p-section-assignment .c-heading.c-heading--primary {
    margin-bottom: 0.5rem;
  }
  .p-section-assignment__list {
    margin-bottom: 0.5rem;
  }
  .p-section-assignment__item:not(:last-child) {
    margin-bottom: 0.3rem;
  }
  .p-section-assignment__item-content {
    padding: 0.3rem 0.3rem 0.25rem;
  }
  .p-section-assignment__item-heading {
    margin-bottom: 0.1rem;
    font-size: 0.18rem;
    line-height: 1.5555555556;
    text-align: center;
  }
  .p-section-assignment__item-image {
    margin-bottom: 0.2rem;
  }
}

.p-block-assignment-solution__list {
  margin-bottom: 0;
  padding-left: 0;
  list-style-type: none;
}
.p-block-assignment-solution__item {
  position: relative;
}
.p-block-assignment-solution__item:last-child {
  margin-bottom: 0;
}
.p-block-assignment-solution__box {
  border-radius: 0.15rem;
  background-color: #fff;
}
.p-block-assignment-solution__heading {
  position: relative;
  z-index: 1;
  margin-bottom: 0;
  border-radius: 0.15rem 0.15rem 0 0;
  background-color: #02773a;
  font-weight: 700;
  text-align: center;
}
.p-block-assignment-solution__heading-english {
  position: absolute;
  z-index: -1;
  top: 50%;
  left: 0;
  width: 100%;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  color: #006428;
  font-family: "Outfit", sans-serif;
  letter-spacing: 0.1em;
  line-height: 1;
  text-align: center;
}
.p-block-assignment-solution__box--solution {
  position: relative;
}
.p-block-assignment-solution__box--solution::after {
  content: "";
  position: absolute;
  background: url("../img/assignment/assignment_arrow.svg") no-repeat center center/cover;
}
.p-block-assignment-solution__box--solution .p-block-assignment-solution__heading {
  position: relative;
  background-color: #ff8c00;
}
.p-block-assignment-solution__box--solution .p-block-assignment-solution__heading::after {
  content: "";
  position: absolute;
  left: 50%;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
  border-top: 0.16rem solid #ff8c00;
  border-right: 0.18rem solid transparent;
  border-left: 0.18rem solid transparent;
}
.p-block-assignment-solution__box--solution .p-block-assignment-solution__heading-english {
  color: #eb7800;
}
.p-block-assignment-solution__heading-japanese {
  display: block;
  color: #fff;
  letter-spacing: 0.06em;
}
.p-block-assignment-solution__content {
  letter-spacing: 0.06em;
}
.p-block-assignment-solution__text:last-child {
  margin-bottom: 0;
}
.p-block-assignment-solution__subtitle {
  color: #ff8c00;
  font-weight: 700;
  letter-spacing: 0.06em;
}
.p-block-assignment-solution__wrapper {
  letter-spacing: 0.06em;
}
.p-block-assignment-solution .c-list--dot .c-list__item {
  letter-spacing: 0.06em;
  font-weight: normal;
}
.p-block-assignment-solution .c-text {
  letter-spacing: 0.06em;
  text-align: justify;
}
.p-block-assignment-solution .c-heading--quaternary {
  position: absolute;
}
.p-block-assignment-solution__estimate {
  border-bottom: 1px solid #02773a;
  color: #02773a;
  font-weight: 700;
  letter-spacing: 0;
}
@media print, (width >= 768px) {
  .p-block-assignment-solution .c-heading--quaternary {
    top: -0.36rem;
    left: 0.6rem;
  }
  .p-block-assignment-solution__item {
    margin-bottom: 1.2rem;
    padding: 0.4rem 0.6rem 0.6rem;
  }
  .p-block-assignment-solution__inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin: -0.05rem -0.3rem 0;
  }
  .p-block-assignment-solution__group {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-flex: 1;
    -ms-flex: 1 1 0px;
    flex: 1 1 0;
    padding: 0 0.2rem;
  }
  .p-block-assignment-solution__box {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    margin: 0 0.1rem 0.2rem;
  }
  .p-block-assignment-solution__group--column {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
  .p-block-assignment-solution__group--column .p-block-assignment-solution__box:last-child {
    margin-bottom: 0;
  }
  .p-block-assignment-solution__heading {
    padding: 0.08rem 0.1rem 0.09rem;
  }
  .p-block-assignment-solution__heading-english {
    font-size: 0.4rem;
  }
  .p-block-assignment-solution__heading-japanese {
    font-size: 0.2rem;
    line-height: 1.5555555556;
  }
  .p-block-assignment-solution__box--solution {
    margin-bottom: 0;
  }
  .p-block-assignment-solution__box--solution::after {
    top: 50%;
    left: -0.5rem;
    width: 0.4rem;
    height: 0.28rem;
    margin-top: 0.01rem;
  }
  .p-block-assignment-solution__box--solution .p-block-assignment-solution__heading {
    padding-top: 0.06rem;
    padding-bottom: 0.07rem;
  }
  .p-block-assignment-solution__box--solution .p-block-assignment-solution__heading::after {
    bottom: -0.13rem;
  }
  .p-block-assignment-solution__box--solution .p-block-assignment-solution__heading-japanese {
    font-size: 0.3rem;
  }
  .p-block-assignment-solution__inner--column {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    row-gap: 0.41rem;
  }
  .p-block-assignment-solution__inner--column .p-block-assignment-solution__box--solution::after {
    top: -0.46rem;
    left: 50%;
    width: 0.4rem;
    height: 0.28rem;
    -webkit-transform: translateX(-50%) rotate(90deg);
    -ms-transform: translateX(-50%) rotate(90deg);
    transform: translateX(-50%) rotate(90deg);
  }
  .p-block-assignment-solution__content {
    padding: 0.21rem 0.29rem 0.22rem;
  }
  .p-block-assignment-solution__text, .p-block-assignment-solution__content-list {
    font-size: 0.18rem;
    line-height: 1.8333333333;
  }
  .p-block-assignment-solution__subtitle {
    margin-top: -0.04rem;
    margin-bottom: 0.03rem;
    font-size: 0.24rem;
  }
  .p-block-assignment-solution__wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
  }
  .p-block-assignment-solution__image {
    -ms-flex-negative: 0;
    flex-shrink: 0;
    width: 1.85rem;
    margin: 0.2rem -0.09rem 0 0.18rem;
  }
  .p-block-assignment-solution__content--flex {
    position: relative;
    padding: 0.51rem 5.09rem 0.51rem 0.6rem;
  }
  .p-block-assignment-solution__content--flex .p-block-assignment-solution__image {
    position: absolute;
    z-index: 1;
  }
  .p-block-assignment-solution__content--flex .p-block-assignment-solution__wrapper {
    margin-top: 0.1rem;
  }
  .p-block-assignment-solution__image--medium {
    top: 0.1rem;
    right: 0.65rem;
    width: 3.95rem;
  }
  .p-block-assignment-solution__image--large {
    top: -0.56rem;
    right: 0.9rem;
    width: 3.22rem;
  }
  .p-block-assignment-solution .c-text {
    margin-bottom: 0;
  }
  .p-block-assignment-solution__estimate {
    margin-bottom: 0.44rem;
    font-size: 0.4rem;
  }
  .p-block-assignment-solution .c-list--dot {
    padding-left: 0.03rem;
  }
  .p-block-assignment-solution .c-list--dot .c-list__item {
    padding-left: 0.12rem;
    font-size: 0.18rem;
    line-height: 1.8333333333;
  }
}
@media only screen and (width <= 767px) {
  .p-block-assignment-solution .c-heading--quaternary {
    top: -0.2rem;
    left: 50%;
    width: 100%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
  }
  .p-block-assignment-solution__item {
    margin-bottom: 0.5rem;
    padding: 0.4rem 0.2rem 0.2rem;
  }
  .p-block-assignment-solution__inner {
    margin-top: -0.1rem;
  }
  .p-block-assignment-solution__heading {
    padding: 0.02rem 0.15rem;
  }
  .p-block-assignment-solution__heading-japanese {
    font-size: 0.18rem;
  }
  .p-block-assignment-solution__heading-english {
    margin-top: 0.01rem;
    font-size: 0.3rem;
  }
  .p-block-assignment-solution__box {
    margin-bottom: 0.15rem;
  }
  .p-block-assignment-solution__box--solution {
    margin-top: 0.5rem;
  }
  .p-block-assignment-solution__box--solution::after {
    top: -0.36rem;
    left: 50%;
    width: 0.34rem;
    height: 0.22rem;
    -webkit-transform: translateX(-50%) rotate(90deg);
    -ms-transform: translateX(-50%) rotate(90deg);
    transform: translateX(-50%) rotate(90deg);
  }
  .p-block-assignment-solution__box--solution .p-block-assignment-solution__heading-japanese {
    font-size: 0.24rem;
  }
  .p-block-assignment-solution__content {
    padding: 0.15rem 0.2rem;
  }
  .p-block-assignment-solution__image {
    width: 65%;
    margin: auto;
  }
  .p-block-assignment-solution__content--flex {
    padding: 0.3rem 0.2rem;
  }
  .p-block-assignment-solution__content--flex .p-block-assignment-solution__image {
    width: 100%;
  }
  .p-block-assignment-solution__subtitle {
    margin-bottom: 0.1rem;
    font-size: 0.2rem;
    line-height: 1.5555555556;
  }
}

.p-block-comparison-renovation__title {
  color: #02773a;
  font-weight: 700;
}
.p-block-comparison-renovation__image {
  width: 2.48rem;
}
@media print, (width >= 768px) {
  .p-block-comparison-renovation {
    padding-bottom: 1.2rem;
  }
  .p-block-comparison-renovation__wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    padding-right: 0.04rem;
    gap: 0.8rem;
  }
  .p-block-comparison-renovation__image {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
  }
  .p-block-comparison-renovation__title {
    margin-bottom: 0.24rem;
    font-size: 0.4rem;
    line-height: 1.375;
  }
  .p-block-comparison-renovation__inner {
    padding-top: 0.3rem;
  }
}
@media only screen and (width <= 767px) {
  .p-block-comparison-renovation {
    padding-bottom: 0.6rem;
  }
  .p-block-comparison-renovation__title {
    margin-bottom: 0.2rem;
    font-size: 0.3rem;
    line-height: 1.4;
  }
  .p-block-comparison-renovation__image {
    margin: 0 auto;
  }
  .p-block-comparison-renovation__inner {
    margin-bottom: 0.4rem;
  }
}

@media print, (width >= 768px) {
  .p-section-case .c-list--tertiary {
    margin-bottom: 0.62rem;
  }
  .p-section-case--details .p-section-case__wrapper .l-wrapper {
    max-width: 9.2rem;
  }
  .p-section-case--details .c-block-heading__image {
    max-width: 7.55rem;
  }
  .p-section-case .c-block-content {
    margin-bottom: 0.78rem;
  }
  .p-section-case .c-pagination--secondary {
    max-width: 8.4rem;
    margin: 0 auto;
  }
}
@media only screen and (width <= 767px) {
  .p-section-case .c-list--tertiary {
    margin-bottom: 0.4rem;
  }
  .p-section-case .c-block-content {
    margin-bottom: 0.6rem;
  }
}

@media print, (width >= 768px) {
  .p-section-function .c-keyvisual {
    margin-bottom: 1.48rem;
  }
}

@media print, (width >= 768px) {
  .p-section-function-feature {
    padding-bottom: 1rem;
  }
  .p-section-function-feature .c-block-media__photo {
    width: 4.65rem;
    margin-top: 0.07rem;
    margin-right: -0.1rem;
  }
}
@media only screen and (width <= 767px) {
  .p-section-function-feature {
    padding-bottom: 0.32rem;
  }
}

.p-section-function-step__list {
  margin: 0;
  padding: 0;
  list-style: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.p-section-function-step__link {
  display: block;
  position: relative;
  -webkit-transition: background 0.3s, color 0.3s;
  transition: background 0.3s, color 0.3s;
  border: 0.02rem solid #02773a;
  border-radius: 0.05rem;
  background-color: #02773a;
  color: #fff;
  font-weight: 700;
  text-align: center;
  text-decoration: none;
}
.p-section-function-step__link::after {
  content: "";
  position: absolute;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  -webkit-transition: background 0.3s;
  transition: background 0.3s;
  border-radius: 100%;
  background: url("../img/function/step_icn_02.png") center/cover no-repeat;
}
.p-section-function-step__link:hover {
  background-color: #fff;
  color: #02773a;
}
.p-section-function-step__link:hover::after {
  background: url("../img/function/step_icn_04.png") center/cover no-repeat;
}
.p-section-function-step__content {
  margin: 0;
  padding: 0;
  list-style: none;
}
.p-section-function-step__flow {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  border-radius: 0.15rem;
  background: -webkit-gradient(linear, left top, right top, from(#f8fff8), to(#ebf5eb));
  background: linear-gradient(90deg, #f8fff8 0%, #ebf5eb 100%);
}
.p-section-function-step__flow:last-child {
  margin-bottom: 0;
}
.p-section-function-step__flow#function18 {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
.p-section-function-step__flow#function18 .p-section-function-step__photo {
  -ms-flex-item-align: unset;
  align-self: unset;
  width: 5rem;
  margin: 0 auto;
}
.p-section-function-step__number {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  position: absolute;
  top: 0;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin-bottom: 0;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  color: #c8e6c8;
  font-family: "Outfit", sans-serif;
  font-weight: 700;
  letter-spacing: 0.1em;
  line-height: 1;
  gap: 0.05rem;
}
.p-section-function-step__title {
  position: relative;
  color: #02773a;
  font-weight: 700;
}
.p-section-function-step__title::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 0.5rem;
  height: 0.03rem;
  background-color: #ff8c00;
}
.p-section-function-step__title span {
  font-weight: 300;
}
@media print, (width >= 768px) {
  .p-section-function-step {
    padding: 0.5rem 0 1.6rem;
  }
  .p-section-function-step__list {
    gap: 0.2rem;
  }
  .p-section-function-step__link {
    min-height: 0.45rem;
    padding: 0.06rem 0.4rem 0.05rem;
  }
  .p-section-function-step__link::after {
    top: 51%;
    right: 0.08rem;
    width: 0.24rem;
    height: 0.24rem;
  }
  .is-safari .p-section-function-step__link {
    padding-top: 0.05rem;
  }
  .p-section-function-step__item {
    width: 3.465rem;
  }
  .p-section-function-step__item:nth-of-type(even) .p-section-function-step__link {
    border-color: #00963c;
    background-color: #00963c;
  }
  .p-section-function-step__item:nth-of-type(even) .p-section-function-step__link::after {
    background: url("../img/function/step_icn_01.png") center/cover no-repeat;
  }
  .p-section-function-step__item:nth-of-type(even) .p-section-function-step__link:hover {
    background-color: #fff;
    color: #00963c;
  }
  .p-section-function-step__item:nth-of-type(even) .p-section-function-step__link:hover::after {
    background: url("../img/function/step_icn_03.png") center/cover no-repeat;
  }
  .p-section-function-step__head {
    margin-bottom: 1.21rem;
  }
  .p-section-function-step__body {
    margin: 0 -0.3rem;
  }
  .p-section-function-step__flow {
    margin-bottom: 1.2rem;
    padding: 0.44rem 0.3rem 0.3rem 0.8rem;
  }
  .p-section-function-step__number {
    font-size: 0.3rem;
  }
  .p-section-function-step__number span {
    font-size: 0.7rem;
  }
  .p-section-function-step__info {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin-right: 0.4rem;
  }
  .p-section-function-step__flow--reverse {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
    padding: 0.44rem 0.8rem 0.3rem 0.3rem;
  }
  .p-section-function-step__flow--reverse .p-section-function-step__info {
    margin-right: 0;
    margin-left: 0.4rem;
  }
  .p-section-function-step__flow--reverse .p-section-function-step__number {
    margin-right: -0.04rem;
  }
  .p-section-function-step__title {
    margin-bottom: 0.32rem;
    padding-bottom: 0.18rem;
    font-size: 0.3rem;
  }
  .p-section-function-step__description {
    margin-bottom: 0.2rem;
  }
  .p-section-function-step__photo {
    -ms-flex-item-align: start;
    align-self: flex-start;
    width: 5.4rem;
  }
}
@media print {
  .p-section-function-step__number {
    -webkit-column-break-inside: avoid;
    -moz-column-break-inside: avoid;
    break-inside: avoid;
    page-break-inside: avoid;
  }
  .p-section-function-step__flow {
    -webkit-transform: translateY(0.35rem);
    -ms-transform: translateY(0.35rem);
    transform: translateY(0.35rem);
  }
}
@media only screen and (width <= 767px) {
  .p-section-function-step {
    padding: 0.32rem 0 1rem;
  }
  .p-section-function-step__list {
    gap: 0.1rem;
  }
  .p-section-function-step__link {
    padding: 0.05rem 0.2rem 0.05rem 0.05rem;
    font-size: 0.13rem;
    line-height: 1.4;
  }
  .p-section-function-step__link::after {
    top: 50%;
    right: 0.05rem;
    width: 0.12rem;
    height: 0.12rem;
  }
  .p-section-function-step__item {
    width: calc(50% - 0.05rem);
  }
  .p-section-function-step__item:nth-child(4n+1) .p-section-function-step__link, .p-section-function-step__item:nth-child(4n) .p-section-function-step__link {
    border-color: #00963c;
    background-color: #00963c;
  }
  .p-section-function-step__item:nth-child(4n+1) .p-section-function-step__link::after, .p-section-function-step__item:nth-child(4n) .p-section-function-step__link::after {
    background: url("../img/function/step_icn_01.png") center/cover no-repeat;
  }
  .p-section-function-step__item:nth-child(4n+1) .p-section-function-step__link:hover, .p-section-function-step__item:nth-child(4n) .p-section-function-step__link:hover {
    background-color: #fff;
    color: #00963c;
  }
  .p-section-function-step__item:nth-child(4n+1) .p-section-function-step__link:hover::after, .p-section-function-step__item:nth-child(4n) .p-section-function-step__link:hover::after {
    background: url("../img/function/step_icn_03.png") center/cover no-repeat;
  }
  .p-section-function-step__head {
    margin-bottom: 0.7rem;
  }
  .p-section-function-step__number {
    right: 0;
    left: 0;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    font-size: 0.2rem;
  }
  .p-section-function-step__number span {
    font-size: 0.6rem;
  }
  .p-section-function-step__title {
    margin-bottom: 0.25rem;
    padding-bottom: 0.17rem;
    font-size: 0.24rem;
    line-height: 1.3;
  }
  .p-section-function-step__description {
    margin-bottom: 0;
  }
  .p-section-function-step__photo {
    width: 2.4rem;
    margin: 0 auto 0.1rem;
  }
  .p-section-function-step__flow {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -ms-flex-direction: column-reverse;
    flex-direction: column-reverse;
    margin-bottom: 0.5rem;
    padding: 0.4rem 0.3rem 0.3rem;
  }
  .p-section-function-step__flow:nth-of-type(4) .p-section-function-step__photo, .p-section-function-step__flow:nth-of-type(8) .p-section-function-step__photo {
    -webkit-transform: translateX(-0.12rem);
    -ms-transform: translateX(-0.12rem);
    transform: translateX(-0.12rem);
  }
  .p-section-function-step__flow:nth-of-type(9) .p-section-function-step__photo, .p-section-function-step__flow:nth-of-type(10) .p-section-function-step__photo, .p-section-function-step__flow:nth-of-type(11) .p-section-function-step__photo {
    -webkit-transform: translateX(0.15rem);
    -ms-transform: translateX(0.15rem);
    transform: translateX(0.15rem);
  }
}

.c-heading-privacy {
  margin: 0;
  border-bottom: 1px solid #c8e6c8;
  color: #02773a;
  font-weight: 700;
  letter-spacing: 0.1em;
  line-height: 1.5;
}
@media print, (width >= 768px) {
  .c-heading-privacy {
    padding-bottom: 0.15rem;
    font-size: 0.18rem;
  }
}
@media only screen and (width <= 767px) {
  .c-heading-privacy {
    padding-bottom: 0.1rem;
    font-size: 0.16rem;
  }
}

.c-list-privacy {
  margin: 0;
  padding: 0;
  list-style: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  letter-spacing: 0.1em;
}
@media only screen and (width <= 767px) {
  .c-list-privacy {
    gap: 0.04rem;
  }
}

.p-section-privacy__list {
  margin: 0;
  padding: 0;
  list-style: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}
.p-section-privacy__item, .p-section-privacy__description {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}
.p-section-privacy__description-text {
  margin: 0;
  letter-spacing: 0.1em;
}
.p-section-privacy__highlight {
  color: #02773a;
  font-weight: 700;
}
@media print, (width >= 768px) {
  .p-section-privacy__wrapper {
    width: calc(100% - 0.6rem);
    max-width: 9.2rem;
    margin: 0 auto;
  }
  .p-section-privacy__list {
    gap: 0.66rem;
  }
  .p-section-privacy__item {
    gap: 0.22rem;
  }
  .p-section-privacy__description {
    gap: 0.31rem;
  }
  .p-section-privacy__description-text {
    font-size: 0.16rem;
  }
}
@media only screen and (width <= 767px) {
  .p-section-privacy__wrapper {
    padding: 0 0.2rem;
  }
  .p-section-privacy__list {
    gap: 0.42rem;
  }
  .p-section-privacy__item {
    gap: 0.2rem;
  }
  .p-section-privacy__description {
    gap: 0.26rem;
  }
}

@media print, (width >= 768px) {
  .p-section-strength-introduction {
    padding: 1.48rem 0 0.8rem;
  }
  .p-section-strength-introduction .c-block-media__photo {
    width: 3.3rem;
    margin-top: -0.56rem;
    margin-right: -0.07rem;
  }
}
@media only screen and (width <= 767px) {
  .p-section-strength-introduction {
    padding-top: 0.6rem;
  }
}

.p-section-strength__list {
  margin: 0;
  padding: 0;
  list-style: none;
}
.p-section-strength__item {
  position: relative;
}
.p-section-strength__item:last-child {
  margin-bottom: 0;
}
.p-section-strength__heading, .p-section-strength__subheading {
  color: #02773a;
  font-weight: 700;
  letter-spacing: 0.06em;
}
.p-section-strength__heading {
  position: relative;
  margin-bottom: 0.25rem;
  padding-bottom: 0.04rem;
}
.p-section-strength__heading::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 0.5rem;
  height: 0.03rem;
  background-color: #1e1e1e;
}
.p-section-strength__text {
  letter-spacing: 0.06em;
}
.p-section-strength .c-heading--quaternary {
  position: absolute;
}
.p-section-strength .c-box {
  background: -webkit-gradient(linear, left top, right top, from(rgb(248, 255, 248)), to(rgb(235, 245, 235)));
  background: linear-gradient(90deg, rgb(248, 255, 248) 0%, rgb(235, 245, 235) 100%);
}
.p-section-strength__image::before, .p-section-strength__image::after {
  content: "";
  position: absolute;
  z-index: 2;
  background: url("../img/strength/strength_decoration_01.svg") top left/100% 100% no-repeat;
  pointer-events: none;
  mix-blend-mode: multiply;
}
@media print, (width >= 768px) {
  .p-section-strength {
    padding-bottom: 1.6rem;
  }
  .p-section-strength .c-heading--quaternary {
    top: -0.36rem;
    left: 0.62rem;
  }
  .p-section-strength__heading {
    font-size: 0.4rem;
  }
  .p-section-strength__item {
    margin-bottom: 1.36rem;
    padding: 0.57rem 0.6rem 0.45rem;
  }
  .p-section-strength__subheading {
    margin-bottom: 0.19rem;
    font-size: 0.3rem;
    line-height: 1.8333333333;
  }
  .p-section-strength__text {
    margin-bottom: 0.52rem;
  }
  .p-section-strength .c-heading.c-heading--secondary {
    margin-bottom: 0.26rem;
    margin-left: 0.02rem;
  }
  .p-section-strength__image {
    position: absolute;
    top: 0.78rem;
    right: 0.48rem;
    width: 3.18rem;
  }
  .p-section-strength #strength-01 .p-section-strength__image::before, .p-section-strength #strength-01 .p-section-strength__image::after {
    width: 0.67rem;
    height: 0.13rem;
  }
  .p-section-strength #strength-01 .p-section-strength__image::before {
    bottom: 0.02rem;
    left: 0.75rem;
  }
  .p-section-strength #strength-01 .p-section-strength__image::after {
    right: 0.6rem;
    bottom: -0.02rem;
  }
  .p-section-strength #strength-02 .p-section-strength__image::before, .p-section-strength #strength-02 .p-section-strength__image::after {
    bottom: 0;
    width: 0.94rem;
    height: 0.24rem;
  }
  .p-section-strength #strength-02 .p-section-strength__image::before {
    left: 0.16rem;
  }
  .p-section-strength #strength-02 .p-section-strength__image::after {
    right: 0.07rem;
  }
  .p-section-strength #strength-03 .p-section-strength__image::before {
    bottom: 0;
    left: 0.06rem;
    width: 1.14rem;
    height: 0.14rem;
  }
  .p-section-strength #strength-03 .p-section-strength__image::after {
    content: none;
  }
}
@media only screen and (width <= 767px) {
  .p-section-strength {
    padding: 0.6rem 0 0.8rem;
  }
  .p-section-strength .c-heading--quaternary {
    top: -0.2rem;
    left: 50%;
    width: 100%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
  }
  .p-section-strength__heading {
    font-size: 0.26rem;
  }
  .p-section-strength__item {
    margin-bottom: 0.6rem;
    padding: 0.4rem 0.2rem 0.3rem;
  }
  .p-section-strength__subheading {
    margin-bottom: 0.2rem;
    font-size: 0.2rem;
    line-height: 1.5;
  }
  .p-section-strength__text {
    margin-bottom: 0.4rem;
  }
  .p-section-strength .c-heading.c-heading--secondary {
    margin-bottom: 0.2rem;
  }
  .p-section-strength__image {
    position: relative;
    width: 50%;
    margin: 0 auto 0.3rem;
  }
  .p-section-strength #strength-01 .p-section-strength__image::before, .p-section-strength #strength-01 .p-section-strength__image::after {
    bottom: 0;
    width: 0.47rem;
    height: 0.08rem;
  }
  .p-section-strength #strength-01 .p-section-strength__image::before {
    left: 0.3rem;
  }
  .p-section-strength #strength-01 .p-section-strength__image::after {
    right: 0.24rem;
  }
  .p-section-strength #strength-02 .p-section-strength__image::before, .p-section-strength #strength-02 .p-section-strength__image::after {
    bottom: 0;
    width: 0.54rem;
    height: 0.14rem;
  }
  .p-section-strength #strength-02 .p-section-strength__image::before {
    left: 0.05rem;
  }
  .p-section-strength #strength-02 .p-section-strength__image::after {
    right: 0.04rem;
  }
  .p-section-strength #strength-03 .p-section-strength__image::before {
    bottom: -0.03rem;
    left: 0.06rem;
    width: 0.54rem;
    height: 0.14rem;
  }
  .p-section-strength #strength-03 .p-section-strength__image::after {
    content: none;
  }
}

.p-list-strength {
  margin: 0;
  padding: 0;
  list-style: none;
}
.p-list-strength__item {
  overflow: hidden;
  border-radius: 0.2rem;
  background-color: #fff;
}
.p-list-strength__item-head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  background-color: #02773a;
  color: #fff;
}
.p-list-strength__item-number {
  margin-bottom: 0.04rem;
  font-family: "Outfit", sans-serif;
  font-size: 0.16rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  line-height: 1.2;
}
.p-list-strength__item-heading {
  margin-bottom: 0;
  font-size: 0.2rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  line-height: 1.6;
  text-align: center;
}
.p-list-strength__item-text {
  letter-spacing: 0.06em;
  text-align: justify;
}
.p-list-strength__item-text:last-child {
  margin-bottom: 0;
}
.p-list-strength__item-image {
  width: 2.18rem;
  height: 1.45rem;
  margin: 0 auto 0.2rem;
}
@media print, (width >= 768px) {
  .p-list-strength {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    row-gap: 0.4rem;
  }
  .p-list-strength__item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    position: relative;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    width: calc((100% - 0.8rem) / 3);
    margin: 0 0.4rem 0 0;
  }
  .p-list-strength__item:nth-child(3n) {
    margin-right: 0;
  }
  .p-list-strength__item-head {
    min-height: 1.17rem;
    padding: 0.4rem 0.2rem 0.13rem;
  }
  .p-list-strength__item-number {
    position: absolute;
    top: 0.17rem;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
  }
  .p-list-strength__item-content {
    min-height: 3.48rem;
    padding: 0.3rem 0.2rem 0.32rem;
  }
  .p-list-strength__item-text {
    padding: 0 0.2rem;
  }
}
@media only screen and (width <= 767px) {
  .p-list-strength__item {
    margin-bottom: 0.4rem;
  }
  .p-list-strength__item:last-child {
    margin-bottom: 0;
  }
  .p-list-strength__item-head {
    padding: 0.15rem;
  }
  .p-list-strength__item-content {
    padding: 0.3rem 0.2rem;
  }
}

.p-section-seminar .c-list--secondary {
  margin-bottom: 0.34rem;
}

@media print, (width >= 768px) {
  .p-section-seminar-detail__wrapper .l-wrapper {
    max-width: 9.2rem;
  }
  .p-section-seminar-detail .c-block-content {
    margin-bottom: 0.8rem;
  }
}
@media only screen and (width <= 767px) {
  .p-section-seminar-detail .c-block-content {
    margin-bottom: 0.6rem;
  }
}
@media print, (width >= 768px) {
  .single-case .c-keyvisual__title-japanese {
    font-size: 0.3rem;
  }
}
@media only screen and (width <= 767px) {
  .single-case .c-keyvisual__title-japanese {
    font-size: 0.24rem;
  }
}
/*# sourceMappingURL=styles.css.map */