@charset "UTF-8";
/* CSS Document */
header {height: 48em;background: url("../img/mv_bg01.webp") no-repeat bottom/cover;position: relative;}
header > a {width: 16em;position: absolute;top: 1em;left: 3em;}
header h1 {font-size: 237.5%;font-weight: bold;text-align: center;letter-spacing: 0.04em;width: 100%;position: absolute;top: 50%;left: 50%;z-index: 1;transform: translate(-50%,-50%);}
header h1 strong {color: var(--color-green1);font-size: 110%;}
header div {display: flex;flex-wrap: wrap;justify-content: space-between;width: 90%;max-width: 700px;position: absolute;left: 50%;bottom: 0;z-index: 1;transform: translate(-50%,50%);}
header div a {display: block;color: #fff;font-size: 125%;font-weight: bold;line-height: 3;text-align: center;padding-bottom: 0.5em;width: 50%;background: var(--color-green1);position: relative;}
header div a::after {display: block;content: '';width: 0.6em;height: 0.6em;background: url(../img/icon_arrow.svg) no-repeat center / contain;position: absolute;left: 50%;bottom: 0.4em;z-index: 1;transform: translate(-50%,0) rotate(90deg);}
header div a + a {border-left: 1px solid #fff;}
#Main > section {padding: 4em 0;}
#contact {color: #fff;font-size: 150%;font-weight: bold;line-height: 1.3;text-align: center;padding: 1em 1.5em 0.8em 1em;border-left: 5px solid #1d683d;background: var(--color-green1);position: fixed;right: 1em;bottom: 1em;z-index: 100;transition: 0.4s;opacity: 1;}
#contact::after {display: block;content: '';width: 0.8em;height: 0.8em;background: url(../img/icon_arrow.svg) no-repeat center / contain;position: absolute;top: 50%;right: 0.3em;z-index: 1;transform: translateY(-50%);}
#features .container:nth-of-type(1) {margin-top: 2em;}
#features .container:nth-of-type(1) ul {display: flex;flex-wrap: wrap;justify-content: space-between;margin: 0 -0.25em;}
#features .container:nth-of-type(1) ul li {width: 32.75%;padding: 2em 0;background: url("../img/features_img01.webp") no-repeat center/contain;}
#features .container:nth-of-type(1) ul li p {color: #fff;font-size: 187.5%;font-weight: bold;text-align: center;}
#features .container:nth-of-type(1) ul li p span {color: var(--color-yellow2);}
#features .container:nth-of-type(1) div {display: flex;flex-wrap: wrap;justify-content: space-between;align-items: center;margin-top: 2.5em;padding: 3px;background: var(--color-green1);}
#features .container:nth-of-type(1) div p {color: #fff;position: relative;}
#features .container:nth-of-type(1) div p:nth-child(1) {color: var(--color-green1);font-size: 175%;font-weight: bold;letter-spacing: 0.1em;text-align: center;width: 29%;padding: 1em 0;margin-right: 2.5em;background: var(--color-green2);}
#features .container:nth-of-type(1) div p:nth-child(1)::after {display: block;content: "";width: 0;height: 0;border-top: 2.5em solid transparent;border-left: 2em solid var(--color-green2);border-bottom: 2.5em solid transparent;position: absolute;top: 0;left: 100%;}
#features .container:nth-of-type(1) div p:nth-child(2) {font-size: 250%;font-weight: bold;line-height: 1;width: 40%;}
#features .container:nth-of-type(1) div p:nth-child(2) span:nth-child(1) {font-size: 50%;position: absolute;left: 0;bottom: 2.5em;}
#features .container:nth-of-type(1) div p:nth-child(2) span:nth-child(2) {display: inline-block;color: var(--color-yellow2);font-size: 200%;font-family: 'Oswald', sans-serif;line-height: 1;padding: 0 5px;transform: translateY(4px);}
#features .container:nth-of-type(1) div p:nth-child(3) {font-size: 87.5%;text-indent: -0.9em;margin-top: 3.3em;padding-left: 1.1em;width: 23%;}
#features .container:nth-of-type(2) {padding: 2em;margin-top: 4em;background: var(--color-grey1);}
#features .container:nth-of-type(2) > p {font-size: 212.5%;font-weight: bold;text-align: center;}
#features .container:nth-of-type(2) > p span {color: var(--color-green1);}
#features .container:nth-of-type(2) ul {display: flex;flex-wrap: wrap;justify-content: space-between;max-width: 1100px;margin: 2em auto 0;}
#features .container:nth-of-type(2) ul li {width: 23%;padding-top: 23%;background: #fff;border-radius: 50%;position: relative;}
#features .container:nth-of-type(2) ul li > * {position: absolute;top: 50%;left: 50%;transform: translate(-50%, -50%);}
#features .container:nth-of-type(2) ul li p {font-size: 150%;font-weight: bold;line-height: 1.3;text-align: center;width: 100%;}
#features .container:nth-of-type(2) ul li p::before {display: block;content: '';width: 70%;height: 4em;margin: 0 auto 0.5em;background-position: center bottom;background-repeat: no-repeat;}
#features .container:nth-of-type(2) ul li p span {color: var(--color-green1);font-size: 120%;}
#features .container:nth-of-type(2) ul li:nth-child(1) p::before {background-size: auto 90%;background-image: url("../img/features_img02.svg");}
#features .container:nth-of-type(2) ul li:nth-child(2) p::before {background-size: auto 80%;background-image: url("../img/features_img03.svg");}
#features .container:nth-of-type(2) ul li:nth-child(3) p::before {background-size: auto 70%;background-image: url("../img/features_img04.svg");}
#features .container:nth-of-type(2) ul li:nth-child(4) p::before {background-size: auto 100%;background-image: url("../img/features_img05.svg");}
#features .container:nth-of-type(4) {margin-top: 4em;}
#features .container:nth-of-type(4) ul {display: flex;flex-wrap: wrap;justify-content: space-between;}
#features .container:nth-of-type(4) ul li {text-align: center;width: 32%;margin-bottom: 25em;position: relative;}
#features .container:nth-of-type(4) ul li::after {display: block;content: '';width: 0;height: 0;border-style: solid;border-right: 0.7em solid transparent;border-left: 0.7em solid transparent;border-top: 2.75em solid var(--color-green3);border-bottom: 0;position: absolute;top: 100%;left: 50%;z-index: 1;transform: translateX(-50%);}
#features .container:nth-of-type(4) ul li::before {display: block;content: '';width: 0;height: 0;border-style: solid;border-right: 0.7em solid transparent;border-left: 0.7em solid transparent;border-top: 2.75em solid var(--color-green2);border-bottom: 0;position: absolute;top: calc(100% - 11px);left: 50%;z-index: 2;transform: translateX(-50%);}
#features .container:nth-of-type(4) ul li div {display: flex;align-items: center;height: 100%;padding: 0.75em 0.1em;background: var(--color-green2);border: 3px solid var(--color-green3);border-radius: 1em;position: relative;}
#features .container:nth-of-type(4) ul li div p {font-size: 175%;font-weight: bold;width: 100%;}
#features .container:nth-of-type(4) ul li div p span {color: var(--color-green1);}
#features .container:nth-of-type(4) ul li img {position: absolute;top: 11.5em;}
#concerns {background: var(--color-green2);}
#concerns .container:nth-of-type(1) {margin-top: 1em;}
#concerns .container:nth-of-type(1)::after {display: block;content: '';width: 90%;max-width: 480px;padding-top: 26%;margin: -2.5em auto 0;background: url("../img/concerns_img06.svg") no-repeat top center/contain;opacity: 0;transform: translateY(3em);transition: ease-out 0.35s 0.25s;}
#concerns .container:nth-of-type(1).on::after {opacity: 1;transform: translate(0);}
#concerns .container:nth-of-type(1) > p {color: #fff;font-size: 187.5%;font-weight: bold;letter-spacing: 0.04em;text-align: center;padding: 0.3em 0 0.1em;background: var(--color-green1);border-radius: 1em 1em 0 0;}
#concerns .container:nth-of-type(1) > p::before {display: inline-block;content: '';width: 2.5em;height: 2em;margin-right: 0.7em;background: url("../img/concerns_img01.svg") no-repeat center/contain;vertical-align: middle;transform: translateY(-3px);}
#concerns .container:nth-of-type(1) > p span {color: var(--color-yellow2);font-size: 123%;}
#concerns .container:nth-of-type(1) div {padding: 3em;background: #fff;}
#concerns .container:nth-of-type(1) ul {display: flex;flex-wrap: wrap;justify-content: space-between;max-width: 1100px;margin: 0 auto;}
#concerns .container:nth-of-type(1) ul li {width: 23%;padding-top: 23%;background: var(--color-grey1);border-radius: 50%;position: relative;}
#concerns .container:nth-of-type(1) ul li p {font-size: 150%;font-weight: bold;line-height: 1.3;text-align: center;width: 100%;position: absolute;top: 50%;left: 50%;transform: translate(-50%, -50%);}
#concerns .container:nth-of-type(1) ul li p::before {display: block;content: '';width: 70%;height: 4em;margin: 0 auto 0.5em;background-position: center bottom;background-repeat: no-repeat;}
#concerns .container:nth-of-type(1) ul li p span {color: var(--color-green1);font-size: 120%;}
#concerns .container:nth-of-type(1) ul li:nth-child(1) p::before {background-size: auto 90%;background-image: url("../img/concerns_img02.svg");}
#concerns .container:nth-of-type(1) ul li:nth-child(2) p::before {background-size: auto 94%;background-image: url("../img/concerns_img03.svg");}
#concerns .container:nth-of-type(1) ul li:nth-child(3) p::before {background-size: auto 94%;background-image: url("../img/concerns_img04.svg");}
#concerns .container:nth-of-type(1) ul li:nth-child(4) p::before {background-size: auto 98%;background-image: url("../img/concerns_img05.svg");}
#concerns .container:nth-of-type(2) {text-align: center;padding: 3em;margin-top: 2em;background: var(--color-green3);}
#concerns .container:nth-of-type(2) p {color: #fff;font-weight: bold;}
#concerns .container:nth-of-type(2) p span {color: var(--color-yellow2);}
#concerns .container:nth-of-type(2) p:nth-child(1) {font-size: 275%;}
#concerns .container:nth-of-type(2) p:nth-child(2) {font-size: 175%;}
#concerns .container:nth-of-type(2) p:nth-child(2)::before {display: block;content: '';width: 30%;max-width: 5.5em;height: 1px;margin: 1.5em auto;background: #fff;}
#concerns .container:nth-of-type(3) {padding: 3em;background: #fff;}
#concerns .container:nth-of-type(3) figure {max-width: 1100px;margin: 0 auto;}
#concerns .container:nth-of-type(4) {text-align: center;padding: 5em 0;}
#concerns .container:nth-of-type(4) p:nth-child(1) {color: var(--color-green1);font-size: 225%;font-weight: bold;}
#concerns .container:nth-of-type(4) p:nth-child(2) {color: var(--color-green1);font-size: 225%;font-weight: bold;}
#concerns .container:nth-of-type(4) p:nth-child(2)::before {display: block;content: '';width: 100%;height: 3px;margin: 1.5em auto;background: var(--color-green4);}
#concerns .container:nth-of-type(4) p:nth-child(3) {font-size: 175%;font-weight: bold;}
#concerns .container:nth-of-type(4) p:nth-child(3)::before {display: block;content: '';width: 30%;max-width: 5.5em;height: 1px;margin: 1.25em auto;background: var(--color-green1);}
#concerns .container:nth-of-type(4) p:nth-child(3) span {color: var(--color-green1);}
#concerns .container:nth-of-type(5) {padding: 3em;background: #fff;}
#concerns .container:nth-of-type(5) img {max-width: 1100px;margin: 0 auto;}
footer {padding: 4em 0 0;background: var(--color-yellow1);}
footer > .mw1300 {padding-bottom: 4em;}
footer .container:nth-of-type(1) {padding: 2.5em 2em 2em;margin-top: 3em;background: var(--color-green4);}
footer .container:nth-of-type(1) > p {color: var(--color-green1);font-size: 250%;font-weight: bold;text-align: center;padding: 0.25em 0.5em 0.1em;background: var(--color-yellow4);}
footer .container:nth-of-type(1) > div {padding: 2em;margin-top: 2em;background: #fff;}
footer .container:nth-of-type(1) > div > p {color: var(--color-green1);font-size: 250%;font-weight: bold;letter-spacing: 0.42em;text-align: center;}
footer .container:nth-of-type(1) > div div {display: flex;flex-wrap: wrap;justify-content: space-between;align-items: center;margin-top: 1em;padding: 3px;background: var(--color-green1);}
footer .container:nth-of-type(1) > div div p:nth-child(1) {color: var(--color-green1);font-size: 343.75%;font-weight: bold;letter-spacing: 0.1em;text-align: center;line-height: 1.25;width: calc(55% - 2.5em);padding: 0.35em 0;box-sizing: border-box;background: var(--color-green2);position: relative;}
footer .container:nth-of-type(1) > div div p:nth-child(1)::after {display: block;content: "";width: 0;height: 0;border-top: 1.6em solid transparent;border-left: 1.5em solid var(--color-green2);border-bottom: 1.6em solid transparent;position: absolute;top: 0;left: 100%;}
footer .container:nth-of-type(1) > div div p:nth-child(2) {color: #fff;font-size: 325%;font-weight: bold;letter-spacing: 0.04em;width: 45%;}
footer .container:nth-of-type(1) > div div p:nth-child(2) span {color: var(--color-yellow2);font-size: 113%;}
footer .container:nth-of-type(1) ul {display: flex;flex-wrap: wrap;justify-content: space-between;margin: 1.2% -0.7% 0 -0.3em;}
footer .container:nth-of-type(1) ul li {color: #fff;font-size: 250%;font-weight: bold;text-align: center;padding: 1em 0;width: calc(50% - 0.3%);background: url("../img/footer_img01.webp") no-repeat center/contain;}
footer .container:nth-of-type(1) ul li span {color: var(--color-yellow2);}
footer .container:nth-of-type(1) ul li:nth-child(2) p {font-size: 80%;font-weight: bold;padding: 0.15em 0.8em;margin-top: 0.5em;position: relative;}
footer .container:nth-of-type(1) ul li:nth-child(2) p::before,
footer .container:nth-of-type(1) ul li:nth-child(2) p::after {display: block;content: '';width: 0.5em;height: 100%;border: 1px solid #fff;position: absolute;top: 50%;left: 50%;transform: translate(-50%,-50%);}
footer .container:nth-of-type(1) ul li:nth-child(2) p::before {border-right: none;left: calc(50% - 5.5em);}
footer .container:nth-of-type(1) ul li:nth-child(2) p::after {border-left: none;left: calc(50% + 5.5em);}
footer .container:nth-of-type(2) {font-size: 125%;text-align: center;margin-top: 1.5em;}
footer .container:nth-of-type(3) {margin-top: 4em;padding: 0 3em;position: relative;z-index: 1;}
footer .container:nth-of-type(3)::after {display: block;content: '';width: 100%;height: 90%;background: rgba(255,255,255,0.7);position: absolute;left: 0;bottom: 0;z-index: -1;}
footer .container:nth-of-type(3) img {max-width: 1100px;margin: 0 auto;}
footer .area-style-01 {background: var(--color-green4);}
footer .contact {text-align: center;padding: 4em 0;background: #fff;}
footer .contact p:nth-of-type(1) {font-size: 125%;}
footer .contact > a {width: 70%;max-width: 500px;margin: 1em auto;}
footer .contact p:nth-of-type(2) {font-size: 125%;}
footer .contact address::before {display: block;content: '';width: 90%;max-width: 1300px;height: 1px;margin: 3em auto;background: #ccc;}
footer .contact address a {width: 60%;max-width: 300px;margin: 0 auto;}
footer .contact address p {margin-top: 1.5em;}
@media only screen and (max-width: 1700px) {
  header {height: 45vw;}
}
@media only screen and (min-width: 768px) and (max-width: 1500px) {
  body {font-size: 1vw;}
  footer .container:nth-of-type(1) ul li {padding: 1.3em 0;}
}
@media only screen and (max-width: 1000px) {
  header div a {font-size: 137.5%;line-height: 2.5;}
  header div a::after {width: 0.8em;height: 0.8em;}
}
@media only screen and (min-width: 768px) {}
@media only screen and (max-width: 767px) {
  #anchor-02,
  #anchor-01 {margin-top: -1em;padding-top: 1em;}
  header {height: 25em;background-position: bottom 0 left -5em;}
  header > a {width: 40%;top: 0.75em;left: 0.75em;}
  header h1 {font-size: 150%;top: 46%;}
  header div a {font-size: 125%;padding-bottom: 0.75em;}
  #Main > section {padding: 6em 0  3em;}
  #tel,
  #contact {box-shadow: 0 -4px 10px -2px rgba(0,0,0,0.4);}
  #tel {width: 50vw;height: 15vw;background: var(--color-yellow3);position: fixed;left: 0;bottom: 0;z-index: 100;opacity: 1;transition: 0.4s;}
  #tel img {width: 90%;position: absolute;top: 52%;left: 50%;z-index: 1;transform: translate(-50%,-50%);}
  #contact {font-size: 150%;width: 50vw;height: 15vw;border-left: none;right: 0;bottom: 0;}
  #contact::after {right: 0.5em;}  
  #contact br {display: none;}
  #contact > span {white-space: nowrap;position: absolute;top: 50%;left: 50%;z-index: 1;transform: translate(-50%,-50%);}
  #contact span span {display: none;}  
  #features .container:nth-of-type(1) {margin-top: 0;}
  #features .container:nth-of-type(1) ul li {width: 100%;padding: 2em 0;}
  #features .container:nth-of-type(1) div {text-align: center;padding-bottom: 1em;}
  #features .container:nth-of-type(1) div p:nth-child(1) {width: 100%;margin: 0 0 2.5em;padding-bottom: 0;}
  #features .container:nth-of-type(1) div p:nth-child(1)::after {width: 100%;height: 2em;background: var(--color-green2);border: none;clip-path: polygon(0 0, 100% 0, 50% 100%);top: 100%;left: 0;}
  #features .container:nth-of-type(1) div p:nth-child(2) {font-size: 210%;width: auto;margin: 0 auto;}
  #features .container:nth-of-type(1) div p:nth-child(3) {text-indent: -0.9em;width: 100%;margin-top: 1.5em;}
  #features .container:nth-of-type(1) div p:nth-child(3) br {display: none;}
  #features .container:nth-of-type(2) {padding: 5vw;margin-top: 2em;}
  #features .container:nth-of-type(2) > p {font-size: 137.5%;white-space: nowrap;}
  #features .container:nth-of-type(2) ul {margin-top: 1em;}
  #features .container:nth-of-type(2) ul li {width: 38.5vw;padding-top: 38.5vw;margin-top: 1em;}
  #features .container:nth-of-type(2) ul li p {font-size: 125%;}
  #features .container:nth-of-type(4) {margin-top: 2em;}
  #features .container:nth-of-type(4) ul {margin-bottom: 0;}
  #features .container:nth-of-type(4) ul li {width: 100%;margin-bottom: 56vw;}
  #features .container:nth-of-type(4) ul li + li {margin-top: 1em;}
  #features .container:nth-of-type(4) ul li div p {font-size: 137.5%;}
  #features .container:nth-of-type(4) ul li div p br:last-child {display: none;}
  #features .container:nth-of-type(4) ul li img {top: 7.5em;height: 48vw;object-fit: cover;object-position: 0 -1em;}
  #features .container:nth-of-type(4) ul li:nth-child(3) img {top: 6em;}  
  #concerns .container:nth-of-type(1) > p {font-size: 137.5%;}
  #concerns .container:nth-of-type(1) > p::before {width: 3em;height: 3em;position: absolute;top: 0.5em;left: 1.5em;transform: none;}
  #concerns .container:nth-of-type(1) div {padding: 5vw;}
  #concerns .container:nth-of-type(1) ul li {width: 38.5vw;padding-top: 38.5vw;margin-top: 1em;}
  #concerns .container:nth-of-type(1) ul li p {font-size: 125%;}
  #concerns .container:nth-of-type(1)::after {padding-top: 53%;margin: -1.6em auto 0;}
  #concerns .container:nth-of-type(2) {padding: 5vw;}
  #concerns .container:nth-of-type(2) p:nth-child(1) {font-size: 150%;white-space: nowrap;}
  #concerns .container:nth-of-type(2) p:nth-child(2) {font-size: 125%;white-space: nowrap;}
  #concerns .container:nth-of-type(2) p:nth-child(2)::before {margin: 1.5em auto;}
  #concerns .container:nth-of-type(3) {padding: 5vw;}
  #concerns .container:nth-of-type(4) {padding: 2.5em 0;}
  #concerns .container:nth-of-type(4) p:nth-child(1) {font-size: 150%;white-space: nowrap;}
  #concerns .container:nth-of-type(4) p:nth-child(2)::before {margin: 1em auto;}
  #concerns .container:nth-of-type(4) p:nth-child(2) {font-size: 150%;}
  #concerns .container:nth-of-type(4) p:nth-child(3) {font-size: 125%;white-space: nowrap;}
  #concerns .container:nth-of-type(4) p:nth-child(3)::before {margin: 1.5em auto;}
  #concerns .container:nth-of-type(5) {padding: 0;}
  #concerns .container:nth-of-type(5) > div {padding: 5vw;}
  footer {padding: 2em 0 0;}
  footer > .mw1300 {padding-bottom: 2em;}
  footer .container:nth-of-type(1) {padding: 5vw;margin-top: 1em;}
  footer .container:nth-of-type(1) > p {font-size: 137.5%;padding: 0.25em 0 0.1em;}
  footer .container:nth-of-type(1) > div {padding: 5vw 5vw 3vw;margin-top: 1em;}
  footer .container:nth-of-type(1) > div > p {font-size: 150%;letter-spacing: 0.2em;}
  footer .container:nth-of-type(1) > div div p:nth-child(1) {font-size: 150%;width: 100%;padding: 0.35em 0 0;}
  /*footer .container:nth-of-type(1) > div div p:nth-child(1) br {display: none;}*/
  footer .container:nth-of-type(1) > div div p:nth-child(1)::after {width: 100%;height: 1.5em;background: var(--color-green2);border: none;clip-path: polygon(0 0, 100% 0, 50% 100%);top: 99.9%;left: 0;}
  footer .container:nth-of-type(1) > div div p:nth-child(2) {font-size: 200%;text-align: center;width: 100%;margin-top: 1.5em;}
  footer .container:nth-of-type(1) ul {margin-top: 1em;}  
  footer .container:nth-of-type(1) ul li {font-size: 150%;padding: 1.2em 0;width: 100%;min-height: 7em;}
  footer .container:nth-of-type(1) ul li + li {margin-top: 0;}
  footer .container:nth-of-type(1) ul li:nth-child(2) p {font-size: 70%;}
  footer .container:nth-of-type(2) {font-size: 112.5%;}
  footer .container:nth-of-type(3) {margin-top: 1em;padding: 0 2vw;}
  footer .area-style-01 {margin-bottom: 0;}
  footer .contact address::before {margin: 2em auto 1.75em;}
  footer .contact {padding: 2em 0 6em;}
}
@media only screen and (max-width: 768px) and (orientation: landscape) {}