@charset "UTF-8";
/*----------------------------------------
media query
----------------------------------------*/
/*----------------------------------------

	Default CSS
	default setting

-----------------------------------------*/
@import url("https://fonts.googleapis.com/css2?family=DotGothic16&family=Noto+Sans+JP:wght@400;500;700&family=Silkscreen:wght@400&display=swap");
body,
div,
dl,
dt,
dd,
th,
td,
ul,
ol,
li,
h1,
h2,
h3,
h4,
h5,
h6,
p,
form {
  margin: 0;
  padding: 0;
}

h1,
h2,
h3,
h4,
h5,
h6,
strong,
em,
p {
  font-size: 100%;
  font-style: normal;
  font-weight: normal;
}

th {
  text-align: left;
  font-weight: normal;
}

li {
  list-style: none;
  vertical-align: bottom;
}

li img {
  vertical-align: top;
}

img,
table,
th,
td {
  border: 0;
}

hr {
  display: none;
}

input,
textarea,
select {
  color: #333333;
  font-size: 100%;
  font-family: "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "Osaka", "メイリオ", "Meiryo", "ＭＳ Ｐゴシック", "MS P Gothic,sans-serif", sans-serif;
}

/*----------------------------------------
	body setting
-----------------------------------------*/
body {
  background-color: #fff;
  font-family: "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "Osaka", "メイリオ", "Meiryo", "ＭＳ Ｐゴシック", "MS P Gothic,sans-serif", sans-serif;
}

/*----------------------------------------
	link setting
-----------------------------------------*/
a:link,
a:visited {
  color: #111;
  text-decoration: none;
}

a:hover,
a:active {
  color: #111;
  text-decoration: none;
}

/*----------------------------------------
	clearfix
-----------------------------------------*/
.clearfix:after {
  content: ".";
  display: block;
  clear: both;
  visibility: hidden;
  height: 0px;
  font-size: 0.1px;
  line-height: 0.1px;
}

.clearfix {
  display: inline-block;
  position: relative;
  /* DW */
}

/* Hides from IE-mac \*/
.clearfix {
  display: block;
}

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

/* End hide from IE-mac */
/* iOSでのデフォルトスタイルをリセット */
input[type=submit],
input[type=button] {
  border-radius: 0;
  -webkit-box-sizing: content-box;
  -webkit-appearance: button;
  appearance: button;
  border: none;
  box-sizing: border-box;
}
input[type=submit]::-webkit-search-decoration,
input[type=button]::-webkit-search-decoration {
  display: none;
}
input[type=submit]::focus,
input[type=button]::focus {
  outline-offset: -2px;
}

input:not([type=radio]),
textarea {
  -webkit-appearance: none;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

html,
body {
  height: 100%;
  -webkit-font-smoothing: antialiased;
  box-sizing: border-box;
}

html {
  font-size: 62.5%;
}

body {
  font-size: 1.7rem;
  line-height: 1.4;
}
@media screen and (max-width: 767px) {
  body {
    font-size: 1.4rem;
  }
}

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

section {
  position: relative;
}

h1 {
  font-size: 2.4rem;
  font-weight: bold;
}
@media screen and (max-width: 1023px) {
  h1 {
    font-size: 1.7rem;
  }
}

h2 {
  font-size: 2.3rem;
  font-weight: bold;
}
@media screen and (max-width: 1023px) {
  h2 {
    font-size: 1.7rem;
  }
}

h3 {
  font-size: 1.7rem;
  font-weight: bold;
}
@media screen and (max-width: 1023px) {
  h3 {
    font-size: 1.4rem;
  }
}

img {
  width: 100%;
  height: auto;
  vertical-align: bottom;
}

a:link,
a:visited,
a:hover {
  color: #323232;
  text-decoration: none;
  font-weight: bold;
}

a:hover {
  opacity: 0.5;
}

:focus {
  outline: none;
}

[v-cloak] {
  display: none;
}

.l-container {
  width: 100%;
  padding-top: 50px;
  padding-bottom: 35px;
  padding-left: 24px;
  padding-right: 24px;
  margin: 0 auto;
  text-align: left;
  max-width: 500px;
}
@media screen and (min-width: 768px) {
  .l-container {
    padding-top: 50px;
    padding-bottom: 50px;
    padding-left: 32px;
    padding-right: 32px;
    max-width: 540px;
  }
}
@media screen and (min-width: 1024px) {
  .l-container {
    max-width: 1420px;
    padding-top: 120px;
    padding-bottom: 120px;
    padding-left: 40px;
    padding-right: 40px;
  }
}

.l-container-fluid {
  width: 100%;
  padding: 110px 0px;
  min-width: 1024px;
}
@media screen and (max-width: 1023px) {
  .l-container-fluid {
    padding: 50px 0px;
    text-align: center;
    min-width: 320px;
  }
}

@media screen and (max-width: 1023px) {
  .l-tb-container-fluid {
    width: 100%;
    padding-left: 0px;
    padding-right: 0px;
  }
}

@media screen and (max-width: 767px) {
  .l-sp-container-fluid {
    width: 100%;
    padding-left: 0px;
    padding-right: 0px;
  }
}

.l-seciton {
  position: relative;
}

.l-wrapper {
  min-height: 100%;
  position: relative;
  overflow: hidden;
}
.l-nav {
  position: fixed;
  display: none;
  top: 0;
  left: 0;
  z-index: 100;
  width: 100%;
  height: 100vh;
  opacity: 0;
  transition: all 0.3s;
}
.l-nav.is-active {
  display: block;
  opacity: 1;
  animation: fadein 0.3s linear;
}

@keyframes fadein {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
.c-button.back img {
  width: auto;
  height: 31px;
}
@media screen and (min-width: 1024px) {
  .c-button.back img {
    width: auto;
    height: 45px;
  }
}

main a.c-link {
  color: #478abc;
}
main a.c-link:link,
main a.c-link :visited {
  color: #478abc;
  text-decoration: underline;
}

.c-heading {
  text-align: center;
  margin-bottom: 35px;
}
.c-heading h1 img,
.c-heading h2 img {
  height: 35px;
  width: auto;
}
.c-heading p {
  margin-bottom: 15px;
}
.c-heading p img {
  height: 22px;
  width: auto;
}
@media screen and (min-width: 1024px) {
  .c-heading {
    text-align: center;
    margin-bottom: 70px;
  }
  .c-heading h1 img,
  .c-heading h2 img {
    height: 62px;
    width: auto;
  }
  .c-heading p {
    margin-bottom: 25px;
  }
  .c-heading p img {
    height: 37px;
    width: auto;
  }
}

.c-flex {
  display: flex;
  flex-wrap: wrap;
}
.c-flex--nw {
  flex-wrap: nowrap;
}
.c-flex__col-1 {
  flex-basis: 8.3333333333%;
  max-width: 8.3333333333%;
}
.c-flex__col-2 {
  flex-basis: 16.6666666667%;
  max-width: 16.6666666667%;
}
.c-flex__col-3 {
  flex-basis: 25%;
  max-width: 25%;
}
.c-flex__col-4 {
  flex-basis: 33.3333333333%;
  max-width: 33.3333333333%;
}
.c-flex__col-5 {
  flex-basis: 41.6666666667%;
  max-width: 41.6666666667%;
}
.c-flex__col-6 {
  flex-basis: 50%;
  max-width: 50%;
}
.c-flex__col-7 {
  flex-basis: 58.3333333333%;
  max-width: 58.3333333333%;
}
.c-flex__col-8 {
  flex-basis: 66.6666666667%;
  max-width: 66.6666666667%;
}
.c-flex__col-9 {
  flex-basis: 75%;
  max-width: 75%;
}
.c-flex__col-10 {
  flex-basis: 83.3333333333%;
  max-width: 83.3333333333%;
}
.c-flex__col-11 {
  flex-basis: 91.6666666667%;
  max-width: 91.6666666667%;
}
.c-flex__col-12 {
  flex-basis: 100%;
  max-width: 100%;
}
@media screen and (max-width: 1023px) {
  .c-flex__col-1--sm {
    flex-basis: 8.3333333333%;
    max-width: 8.3333333333%;
  }
  .c-flex__col-2--sm {
    flex-basis: 16.6666666667%;
    max-width: 16.6666666667%;
  }
  .c-flex__col-3--sm {
    flex-basis: 25%;
    max-width: 25%;
  }
  .c-flex__col-4--sm {
    flex-basis: 33.3333333333%;
    max-width: 33.3333333333%;
  }
  .c-flex__col-5--sm {
    flex-basis: 41.6666666667%;
    max-width: 41.6666666667%;
  }
  .c-flex__col-6--sm {
    flex-basis: 50%;
    max-width: 50%;
  }
  .c-flex__col-7--sm {
    flex-basis: 58.3333333333%;
    max-width: 58.3333333333%;
  }
  .c-flex__col-8--sm {
    flex-basis: 66.6666666667%;
    max-width: 66.6666666667%;
  }
  .c-flex__col-9--sm {
    flex-basis: 75%;
    max-width: 75%;
  }
  .c-flex__col-10--sm {
    flex-basis: 83.3333333333%;
    max-width: 83.3333333333%;
  }
  .c-flex__col-11--sm {
    flex-basis: 91.6666666667%;
    max-width: 91.6666666667%;
  }
  .c-flex__col-12--sm {
    flex-basis: 100%;
    max-width: 100%;
  }
}
@media screen and (min-width: 768px) {
  .c-flex__col-1--md {
    flex-basis: 8.3333333333%;
    max-width: 8.3333333333%;
  }
  .c-flex__col-2--md {
    flex-basis: 16.6666666667%;
    max-width: 16.6666666667%;
  }
  .c-flex__col-3--md {
    flex-basis: 25%;
    max-width: 25%;
  }
  .c-flex__col-4--md {
    flex-basis: 33.3333333333%;
    max-width: 33.3333333333%;
  }
  .c-flex__col-5--md {
    flex-basis: 41.6666666667%;
    max-width: 41.6666666667%;
  }
  .c-flex__col-6--md {
    flex-basis: 50%;
    max-width: 50%;
  }
  .c-flex__col-7--md {
    flex-basis: 58.3333333333%;
    max-width: 58.3333333333%;
  }
  .c-flex__col-8--md {
    flex-basis: 66.6666666667%;
    max-width: 66.6666666667%;
  }
  .c-flex__col-9--md {
    flex-basis: 75%;
    max-width: 75%;
  }
  .c-flex__col-10--md {
    flex-basis: 83.3333333333%;
    max-width: 83.3333333333%;
  }
  .c-flex__col-11--md {
    flex-basis: 91.6666666667%;
    max-width: 91.6666666667%;
  }
  .c-flex__col-12--md {
    flex-basis: 100%;
    max-width: 100%;
  }
}

.c-grid--col-12, .c-grid--col-11, .c-grid--col-10, .c-grid--col-9, .c-grid--col-8, .c-grid--col-7, .c-grid--col-6, .c-grid--col-5, .c-grid--col-4, .c-grid--col-3, .c-grid--col-2 {
  display: grid;
}

.c-grid--col-2 {
  grid-template-columns: repeat(2, 1fr);
}
.c-grid--col-3 {
  grid-template-columns: repeat(3, 1fr);
}
.c-grid--col-4 {
  grid-template-columns: repeat(4, 1fr);
}
.c-grid--col-5 {
  grid-template-columns: repeat(5, 1fr);
}
.c-grid--col-6 {
  grid-template-columns: repeat(6, 1fr);
}
.c-grid--col-7 {
  grid-template-columns: repeat(7, 1fr);
}
.c-grid--col-8 {
  grid-template-columns: repeat(8, 1fr);
}
.c-grid--col-9 {
  grid-template-columns: repeat(9, 1fr);
}
.c-grid--col-10 {
  grid-template-columns: repeat(10, 1fr);
}
.c-grid--col-11 {
  grid-template-columns: repeat(11, 1fr);
}
.c-grid--col-12 {
  grid-template-columns: repeat(12, 1fr);
}
@media screen and (max-width: 767px) {
  .c-grid--col-1--sm {
    grid-template-columns: repeat(1, 1fr);
  }
  .c-grid--col-2--sm {
    grid-template-columns: repeat(2, 1fr);
  }
  .c-grid--col-3--sm {
    grid-template-columns: repeat(3, 1fr);
  }
  .c-grid--col-4--sm {
    grid-template-columns: repeat(4, 1fr);
  }
  .c-grid--col-5--sm {
    grid-template-columns: repeat(5, 1fr);
  }
  .c-grid--col-6--sm {
    grid-template-columns: repeat(6, 1fr);
  }
  .c-grid--col-7--sm {
    grid-template-columns: repeat(7, 1fr);
  }
  .c-grid--col-8--sm {
    grid-template-columns: repeat(8, 1fr);
  }
  .c-grid--col-9--sm {
    grid-template-columns: repeat(9, 1fr);
  }
  .c-grid--col-10--sm {
    grid-template-columns: repeat(10, 1fr);
  }
  .c-grid--col-11--sm {
    grid-template-columns: repeat(11, 1fr);
  }
  .c-grid--col-12--sm {
    grid-template-columns: repeat(12, 1fr);
  }
}
@media screen and (max-width: 1023px) {
  .c-grid--col-1--md {
    grid-template-columns: repeat(1, 1fr);
  }
  .c-grid--col-2--md {
    grid-template-columns: repeat(2, 1fr);
  }
  .c-grid--col-3--md {
    grid-template-columns: repeat(3, 1fr);
  }
  .c-grid--col-4--md {
    grid-template-columns: repeat(4, 1fr);
  }
  .c-grid--col-5--md {
    grid-template-columns: repeat(5, 1fr);
  }
  .c-grid--col-6--md {
    grid-template-columns: repeat(6, 1fr);
  }
  .c-grid--col-7--md {
    grid-template-columns: repeat(7, 1fr);
  }
  .c-grid--col-8--md {
    grid-template-columns: repeat(8, 1fr);
  }
  .c-grid--col-9--md {
    grid-template-columns: repeat(9, 1fr);
  }
  .c-grid--col-10--md {
    grid-template-columns: repeat(10, 1fr);
  }
  .c-grid--col-11--md {
    grid-template-columns: repeat(11, 1fr);
  }
  .c-grid--col-12--md {
    grid-template-columns: repeat(12, 1fr);
  }
}

.c-grid-g20 {
  gap: 20px;
}

.c-grid-g30 {
  gap: 30px;
}

.c-grid-g40 {
  gap: 40px;
}

.c-grid-g50 {
  gap: 50px;
}

.c-grid-g60 {
  gap: 60px;
}

.c-grid-g70 {
  gap: 70px;
}

.c-grid-g80 {
  gap: 80px;
}

.c-grid-g90 {
  gap: 90px;
}

.c-grid-g100 {
  gap: 100px;
}

.home {
  /*background: #5ECB93; */
  background: #5DCB92;
}
.home .main {
  position: relative;
  padding-top: 143vw;
}
.home .main__bg {
  position: fixed;
  top: 0px;
  left: 0;
  width: 100%;
  z-index: 0;
}
.home .main__bg.bg02, .home .main__bg.bg03, .home .main__bg.bg04 {
  top: 17px;
}
.home .main__menu-wrapper {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  max-height: calc(143vw + 50px);
}
.home .main__menu {
  position: absolute;
  left: 20px;
  bottom: 0px;
  padding: 6px;
  z-index: 100;
  display: flex;
  flex-direction: column;
  gap: 5px;
  justify-content: center;
  min-height: 80px;
  background: url(../images/main_menu_bg_sp.svg) no-repeat center center/contain;
}
.home .main__menu-item {
  position: relative;
  width: 136px;
  height: 42px;
}
.home .main__menu-item a {
  display: flex;
  align-items: center;
  font-size: 1.15rem;
  color: #20534C;
}
.home .main__menu-item a:link, .home .main__menu-item a:visited {
  color: #20534C;
}
.home .main__menu-item img {
  position: absolute;
}
.home .main__menu-arrow {
  width: 5px;
  position: absolute;
  top: 16px;
  left: 20px;
}
.home .main__menu-new {
  width: 33px;
  position: absolute;
  top: -13px;
  left: 95px;
}
@media screen and (min-width: 1024px) {
  .home .main {
    position: relative;
    padding-top: 633px;
  }
  .home .main__bg {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 0;
    display: flex;
    justify-content: center;
  }
  .home .main__bg img {
    flex-shrink: 0;
    width: 1420px;
  }
  .home .main__menu-wrapper {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    max-height: 808px;
  }
  .home .main__menu {
    position: absolute;
    left: 70px;
    bottom: 20px;
    padding: 7.5px;
    z-index: 100;
    display: flex;
    flex-direction: column;
    gap: 7.5px;
    justify-content: center;
    min-height: 110px;
    background: url(../images/main_menu_bg.svg) no-repeat center center/contain;
  }
  .home .main__menu-item {
    position: relative;
    width: 210px;
    height: 54px;
  }
  .home .main__menu-item a {
    font-size: 1.41rem;
    color: #20534C;
  }
  .home .main__menu-item a:link, .home .main__menu-item a:visited {
    color: #20534C;
  }
  .home .main__menu-item img {
    position: absolute;
  }
  .home .main__menu-arrow {
    width: 6px;
    position: absolute;
    top: 22px;
    left: 40px;
  }
  .home .main__menu-new {
    width: 43px;
    position: absolute;
    top: -19.5px;
    left: 154.5px;
  }
}
@media screen and (min-width: 1420px) {
  .home .main {
    position: relative;
    padding-top: 46vw;
  }
  .home .main__bg {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 0;
    display: block;
  }
  .home .main__bg img {
    width: 100%;
  }
  .home .main__menu-wrapper {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    max-height: calc(52vw + 70px);
  }
}
.home .desc {
  position: relative;
  background: url(../images/index_desc_bg_02_sp.png) no-repeat center bottom -1px/100% auto, url(../images/index_desc_bg_01_sp.png) no-repeat center top/100% auto;
}
.home .desc__inner {
  color: white;
  padding: 20vw 0px 20vw 0px;
  font-size: 1.4rem;
  line-height: 2.2;
}
.home .desc__inner .l-container {
  min-width: auto;
}
.home .desc__text {
  text-align: center;
  font-size: 1.4rem;
  line-height: 2.2;
  margin-bottom: 30px;
}
.home .desc__bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
}
.home .desc__bg.bg01 {
  top: 18vw;
}
.home .desc__bg.bg02 {
  top: 17vw;
}
.home .desc__about {
  text-align: center;
  margin-bottom: 20px;
}
.home .desc__about a {
  position: relative;
  display: inline-block;
}
.home .desc__about .mask {
  position: absolute;
  width: 5%;
  height: 30%;
  background: #7A522F;
  top: 32%;
  left: 9%;
}
.home .desc__navi {
  display: flex;
  gap: 15px;
  max-width: 860px;
  margin: 0 auto;
  flex-wrap: wrap;
}
.home .desc__navi-item {
  position: relative;
  flex-basis: calc(50% - 8px);
}
.home .desc__navi-item .mask {
  position: absolute;
  width: 40%;
  height: 13%;
  background: #26AD78;
  bottom: 13%;
  left: 30%;
}
@media screen and (min-width: 1024px) {
  .home .desc {
    background: none;
    position: relative;
  }
  .home .desc__image {
    display: flex;
    justify-content: center;
  }
  .home .desc__image img {
    margin: 0 auto;
    width: 1800px;
  }
  .home .desc__inner {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    color: white;
    padding: 0;
    font-size: 1.9rem;
    line-height: 2;
    letter-spacing: 0.2em;
    z-index: 2;
    display: flex;
    justify-content: center;
    align-items: center;
    height: 100%;
  }
  .home .desc__text {
    text-align: center;
    font-size: 2.3rem;
    line-height: 1.8;
    margin-bottom: 50px;
  }
  .home .desc__bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    text-align: center;
    display: flex;
    justify-content: center;
    z-index: 1;
  }
  .home .desc__bg img {
    width: 1620px;
  }
  .home .desc__bg.bg01 {
    top: 17vw;
  }
  .home .desc__bg.bg02 {
    top: 17vw;
  }
  .home .desc__about {
    text-align: center;
    margin-bottom: 50px;
  }
  .home .desc__about a {
    position: relative;
    display: inline-block;
  }
  .home .desc__about img {
    width: 496px;
  }
  .home .desc__about .mask {
    position: absolute;
    width: 15px;
    height: 20px;
    background: #7A522F;
    top: 39px;
    left: 50px;
  }
  .home .desc__navi {
    display: flex;
    gap: 40px;
    max-width: 860px;
    margin: 0 auto;
    flex-wrap: wrap;
  }
  .home .desc__navi-item {
    flex-basis: calc(50% - 20px);
    position: relative;
  }
  .home .desc__navi-item .mask {
    position: absolute;
    width: 15px;
    height: 22px;
    background: #26AD78;
    top: 84px;
    left: 123px;
    bottom: auto;
  }
}
@media screen and (min-width: 1420px) {
  .home .desc__image {
    display: block;
  }
  .home .desc__image img {
    width: 100%;
  }
  .home .desc__bg {
    display: block;
    width: 100%;
  }
  .home .desc__bg img {
    width: 100%;
  }
}
.home .event {
  background: url(../images/index_information_bg_01_sp.png) no-repeat left top 5px/130px auto, url(../images/index_information_bg_02_sp.png) no-repeat right top 5px/140px auto, #F2F5EA;
}
.home .event .l-container {
  background: url(../images/index_event_bg_03_sp.png) no-repeat center center/375px auto;
  padding-left: 0;
  padding-right: 0;
  max-width: none;
}
@media screen and (max-width: 1023px) {
  .home .event .l-container {
    padding-top: 80px;
    padding-bottom: 10vw;
  }
}
.home .event__bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  pointer-events: none;
}
.home .event__items {
  margin-bottom: 30px;
}
.home .event__item {
  border-radius: 12px;
  overflow: hidden;
  margin: 0 8px;
}
.home .event__more {
  text-align: center;
}
.home .event__more img {
  width: auto;
  height: 31px;
}
@media screen and (min-width: 1024px) {
  .home .event {
    background: #F2F5EA url(../images/index_information_bg.png) no-repeat center top 0px/1420px auto;
  }
  .home .event .l-container {
    background: none;
    padding-left: 0;
    padding-right: 0;
    max-width: none;
  }
  .home .event__items {
    margin-bottom: 100px;
  }
  .home .event__item {
    border-radius: 14px;
    overflow: hidden;
    margin: 0 20px;
  }
  .home .event__more {
    text-align: center;
  }
  .home .event__more img {
    width: auto;
    height: 45px;
  }
}
@media screen and (min-width: 1420px) {
  .home .event {
    background: #F2F5EA url(../images/index_information_bg.png) no-repeat center top 0px/100% auto;
  }
}
.home .video {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 120, 93, 0.85);
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  z-index: 3000;
}
.home .video__wrapper {
  background: url(../images/video_bg.svg) no-repeat center center/contain;
  padding: 20px;
  margin-bottom: 15px;
  width: 90%;
}
.home .video__item {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}
.home .video__item video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.home .video__youtube {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}
.home .video__youtube iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.home .video__close {
  text-align: center;
}
@media screen and (min-width: 1024px) {
  .home .video {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 120, 93, 0.85);
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    z-index: 3000;
  }
  .home .video__wrapper {
    background: url(../images/video_bg.svg) no-repeat center center/contain;
    padding: 48px;
    margin-bottom: 30px;
    width: auto;
  }
  .home .video__item {
    position: relative;
    width: 800px;
    padding-top: 450px;
  }
  .home .video__item video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
  .home .video__youtube {
    position: relative;
    width: 800px;
    padding-top: 450px;
  }
  .home .video__youtube iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
  .home .video__close {
    text-align: center;
  }
}
@media screen and (min-width: 1420px) {
  .home .video {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 120, 93, 0.85);
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    z-index: 3000;
  }
  .home .video__wrapper {
    background: url(../images/video_bg.svg) no-repeat center center/contain;
    padding: 60px;
    margin-bottom: 50px;
    width: auto;
  }
  .home .video__item {
    position: relative;
    width: 947px;
    padding-top: 530px;
  }
  .home .video__item video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
  .home .video__youtube {
    position: relative;
    width: 947px;
    padding-top: 530px;
  }
  .home .video__youtube iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
  .home .video__close {
    text-align: center;
  }
}
.home .js-video {
  display: none;
}

.event {
  color: #20534C;
}
.event .events {
  background: #F2F5EA url(../images/page_bottom_bg_sp.png) no-repeat right bottom/375px auto;
  padding-top: 40px;
}
.event .events__articles {
  padding: 0 20px;
  margin-bottom: 10px;
  display: flex;
  flex-direction: column;
  gap: 30px;
}
.event .events__link {
  text-align: center;
  margin-bottom: 40px;
}
.event .events__link img {
  width: 236px;
}
@media screen and (min-width: 1024px) {
  .event .events {
    padding-top: 0px;
    background: #F2F5EA;
  }
  .event .events .l-container {
    padding-top: 140px;
    padding-bottom: 80px;
  }
  .event .events__articles {
    max-width: 1120px;
    margin: 0 auto 100px auto;
    display: flex;
    flex-direction: column;
    gap: 113px;
  }
  .event .events__link {
    text-align: center;
    margin-bottom: 70px;
  }
  .event .events__link img {
    width: 470px;
  }
}
.event .article {
  padding: 0px 20px 0 20px;
  background: #F2F5EA url(../images/page_bottom_bg_sp.png) no-repeat right bottom/375px auto;
}
.event .article__inner {
  max-width: 930px;
  margin: 0 auto;
}
.event .article__heading {
  text-align: center;
  margin-bottom: 40px;
}
.event .article__category {
  font-size: 1.6rem;
  margin-bottom: 20px;
  font-weight: 500;
}
.event .article__category span {
  font-size: 1.1rem;
}
.event .article__title {
  background: url(../event/images/event_article_line.svg) no-repeat left top/auto 4px, url(../event/images/event_article_line.svg) no-repeat left bottom/auto 4px;
  padding: 30px 0;
  font-size: 1.8rem;
  font-weight: 500;
  letter-spacing: 0.05em;
  margin: 0 -10px 20px -10px;
  line-height: 1.2;
}
.event .article__title span {
  font-size: 1.4rem;
}
.event .article__tag {
  font-size: 1.3rem;
  border: solid 1px #20534C;
  border-radius: 30px;
  padding: 5px 20px;
  display: inline-block;
}
.event .article__contents p {
  font-size: 1.2rem;
  letter-spacing: 0.05em;
  line-height: 2;
  margin-bottom: 30px;
}
.event .article__contents img {
  border-radius: 16px;
  overflow: hidden;
}
.event .article__points {
  background: white;
  border-radius: 10px;
  display: flex;
  justify-content: center;
  gap: 10px;
  padding: 5px 0px;
  margin-bottom: 40px;
  color: #008163;
  font-weight: 500;
  font-size: 1rem;
  align-items: center;
}
.event .article__points-icon {
  margin: 0 0 0 -10px !important;
}
.event .article__points-icon img {
  width: 48px;
}
.event .article__points ul {
  flex-grow: 0;
  flex-shrink: 1;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  row-gap: 5px;
}
.event .article__points ul.w65-sp {
  flex-basis: 65%;
}
.event .article__about {
  background: #f0eede;
  border-radius: 10px;
  padding: 20px;
  margin-bottom: 40px;
  color: #008163;
  font-weight: 500;
  font-size: 1rem;
  text-align:left;
}
.event .article__about p {
  margin-bottom:0 !important;
}
.event .article__schedule {
  margin-bottom: 15px;
}
.event .article__schedule-item {
  display: flex;
  align-items: center;
  font-size: 1.2rem;
  background: url(../event/images/event_schedule_line.png) no-repeat center top/100% auto;
  padding: 15px 0;
}
.event .article__schedule-item:last-of-type {
  background: url(../event/images/event_schedule_line.png) no-repeat center top/100% auto, url(../event/images/event_schedule_line.png) no-repeat center bottom/100% auto;
}
.event .article__schedule-item dt {
  flex-shrink: 0;
}
.event .article__notice p {
  font-size: 1.1rem;
  font-weight: 400;
  margin-bottom: 0;
  line-height: 1.7;
  text-indent: -1em;
  padding-left: 1em;
}
.event .article__related {
  max-width: 753px;
  margin: 0 auto 60px auto;
  padding: 60px 15px 0 15px;
}
.event .article__back {
  text-align: center;
}
.event .article__back img {
  width: 142px;
}
@media screen and (min-width: 1024px) {
  .event {
    background: #F2F5EA;
    color: #20534C;
  }
  .event .article {
    padding: 0;
  }
  .event .article .l-container {
    padding-top: 120px;
  }
  .event .article__inner {
    max-width: 930px;
    margin: 0 auto;
  }
  .event .article__heading {
    text-align: center;
    margin-bottom: 50px;
  }
  .event .article__category {
    font-size: 1.8rem;
    margin-bottom: 30px;
    font-weight: 500;
  }
  .event .article__category span {
    font-size: 1.8rem;
  }
  .event .article__title {
    background: url(../event/images/event_article_line.svg) no-repeat center top/100% auto, url(../event/images/event_article_line.svg) no-repeat center bottom/100% auto;
    padding: 50px 0;
    font-size: 3.15rem;
    margin-bottom: 40px;
    font-weight: 500;
    letter-spacing: 0.05em;
    margin: 0 0 40px 0;
    line-height: 1.2;
  }
  .event .article__title span {
    font-size: 2rem;
  }
  .event .article__tag {
    font-size: 1.6rem;
    border: solid 1px #20534C;
    border-radius: 30px;
    padding: 5px 30px;
    display: inline-block;
  }
  .event .article__contents p {
    font-size: 1.8rem;
    letter-spacing: 0.05em;
    line-height: 2;
    margin-bottom: 40px;
  }
  .event .article__contents img {
    border-radius: 30px;
    overflow: hidden;
  }
  .event .article__points {
    background: white;
    border-radius: 10px;
    display: flex;
    justify-content: center;
    gap: 10px;
    padding: 15px 10px;
    margin-bottom: 40px;
    color: #008163;
    font-size: 1.8rem;
    font-weight: 500;
  }
  .event .article__points-icon {
    margin: -20px 0 !important;
  }
  .event .article__points-icon img {
    width: 68px;
  }
  .event .article__points ul {
    display: flex;
    gap: 10px;
  }
  .event .article__points ul.w65-sp {
    flex-basis: auto;
  }
  .event .article__schedule {
    margin-bottom: 15px;
  }
  .event .article__schedule-item {
    display: flex;
    font-size: 1.6rem;
    background: url(../event/images/event_schedule_line.png) no-repeat center top/100% auto;
    padding: 15px 0;
  }
  .event .article__schedule-item dt {
    padding-right:20px;
  }
  .event .article__schedule-item:last-of-type {
    background: url(../event/images/event_schedule_line.png) no-repeat center top/100% auto, url(../event/images/event_schedule_line.png) no-repeat center bottom/100% auto;
  }
  .event .article__notice p {
    font-size: 1.35rem;
    font-weight: 400;
    margin-bottom: 0;
    line-height: 1.7;
  }
  .event .article__notice p .u-dn-md {
    display: inline !important;
  }
  .event .article__related {
    max-width: 753px;
    margin: 0 auto 120px auto;
    padding: 120px 0 0 0;
  }
  .event .article__back {
    text-align: center;
  }
  .event .article__back img {
    width: 204px;
  }
}
.about {
  background: #0F775B;
}
.about .l-container {
  text-align: center;
}
.about .contents {
  background: url(../about/images/footer_bg_sp.png) no-repeat center bottom/100% auto, url(../about/images/about_bg_sp.png) no-repeat center top/cover;
  padding-top: 80px;
  padding-bottom: 35vw;
  color: white;
  text-align: center;
}
.about .contents h1 {
  text-align: center;
  margin-bottom: 40px;
}
.about .contents h1 img {
  width: auto;
  height: 60px;
}
.about__desc {
  padding: 0 10px;
  text-align: left;
  margin-bottom: 100px;
  font-size: 1.4rem;
  line-height: 2.2;
}
.about__desc p {
  margin-bottom: 20px;
}
.about .p-footer {
  margin-top: -10vw;
}
.about__bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  text-align: center;
  display: flex;
  justify-content: center;
  z-index: 1;
  pointer-events: none;
}
.about__bg.bg01 {
  background: url(../about/images/leaf_01.png) no-repeat center center/1800px auto;
  top: 17vw;
}
.about__bg.bg02 {
  background: url(../about/images/leaf_02.svg) no-repeat center center/1800px auto;
  top: 17vw;
}
@media screen and (min-width: 1024px) {
  .about .l-container {
    text-align: center;
  }
  .about .contents {
    background: url(../about/images/footer_bg.png) no-repeat center bottom/100% auto, url(../about/images/about_bg.jpg) no-repeat center top/cover;
    padding-top: 150px;
    padding-bottom: 20vw;
    color: white;
    text-align: center;
  }
  .about .contents h1 {
    text-align: center;
    margin-bottom: 70px;
  }
  .about .contents h1 img {
    width: auto;
    height: 32px;
  }
  .about__desc {
    text-align: center;
    margin-bottom: 70px;
    font-size: 2rem;
    line-height: 2.6;
  }
  .about__desc p {
    margin-bottom: 60px;
  }
  .about .p-footer {
    margin-top: -7vw;
  }
  .about__bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    text-align: center;
    display: flex;
    justify-content: center;
    z-index: 1;
    pointer-events: none;
  }
  .about__bg.bg01 {
    background: url(../about/images/leaf_01.png) no-repeat center center/1800px auto;
    top: 17vw;
  }
  .about__bg.bg02 {
    background: url(../about/images/leaf_02.svg) no-repeat center center/1800px auto;
    top: 17vw;
  }
}

.collection {
  color: #20534C;
  background: #F2F5EA;
}
.collection .l-container {
  text-align: center;
  background: url(../collection/images/bottom_bg_sp.svg) no-repeat right bottom/375px auto;
}
.collection__bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  text-align: center;
  display: flex;
  justify-content: center;
  z-index: 1;
  pointer-events: none;
}
.collection__bg.bg01 {
  top: -110px;
  background: url(../collection/images/leaf_01_sp.png) no-repeat left top 5px/130px auto, url(../collection/images/leaf_02_sp.png) no-repeat right top 5px/140px auto;
}
.collection .desc {
  text-align: left;
  font-size: 1.4rem;
  line-height: 2;
  margin-bottom: 30px;
  padding: 10px 10px 0 10px;
}
.collection .book {
  text-align: center;
  margin-bottom: 50px;
}
.collection .book__inner {
  max-width: 850px;
  margin: 0 auto;
}
.collection .book__heading-wrapper {
  padding: 60px 50px 30px 50px;
  margin-bottom: 20px;
}
.collection .book__heading-wrapper.plasticbag {
  background: url(../collection/images/book_01_bg_01_sp.svg) no-repeat center top/100% auto, url(../collection/images/book_01_bg_03_sp.svg) no-repeat center bottom/100% auto, url(../collection/images/book_01_bg_02_sp.svg) repeat-y center top/100% auto;
}
.collection .book__heading-wrapper.cleaning {
  background: url(../collection/images/book_02_bg_01_sp.svg) no-repeat center top/100% auto, url(../collection/images/book_02_bg_03_sp.svg) no-repeat center bottom/100% auto, url(../collection/images/book_02_bg_02_sp.svg) repeat-y center top/100% auto;
}
.collection .book h3 {
  margin-bottom: 20px;
}
.collection .book__heading {
  margin-bottom: 10px;
  border-top: solid 1.5px #20534C;
  border-bottom: solid 1.5px #20534C;
  padding: 10px 10px;
  text-align: center;
  position: relative;
}
.collection .book__heading h2 {
  background: url(../collection/images/arrow.svg) no-repeat left top 7px/7px auto;
  font-size: 1.7rem;
  padding-left: 15px;
  display: inline-block;
}
.collection .book__desc {
  text-align: left;
  font-size: 1.2rem;
  line-height: 2;
  margin-bottom: 30px;
}
.collection .book__notice {
  font-size: 1rem;
  margin-bottom: 10px;
}
.collection .book__item-wrapper {
  max-width: 305px;
  margin: 0 auto;
}
.collection .book__items {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
}
.collection .book__item {
  position: relative;
  flex-basis: calc(50% - 10px);
}
.collection .book__item-icon {
  position: absolute;
  top: -10px;
  left: -10px;
}
.collection .book__item-icon img {
  width: 53px;
}
.collection .book__item-image {
  margin-bottom: 5px;
}
.collection .book__item-get {
  font-size: 1.4rem;
  font-weight: 500;
}
@media screen and (min-width: 1024px) {
  .collection {
    background: #F2F5EA;
    color: #20534C;
  }
  .collection__bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    text-align: center;
    display: flex;
    justify-content: center;
    z-index: 1;
  }
  .collection__bg.bg01 {
    background: url(../collection/images/leaf_01.png) no-repeat center top/100% auto;
  }
  .collection__bg.bg02 {
    background: url(../collection/images/leaf_02.png) no-repeat center center/1800px auto;
  }
  .collection__bg.bg03 {
    background: url(../collection/images/leaf_03.svg) no-repeat center center/1800px auto;
  }
}
@media screen and (min-width: 1024px) and (min-width: 1420px) {
  .collection__bg.bg01 {
    background: url(../collection/images/leaf_01.png) no-repeat center top/100% auto;
  }
}
@media screen and (min-width: 1024px) {
  .collection .l-container {
    text-align: center;
    padding-top: 80px;
    padding-left: 0;
    padding-right: 0;
    background: none;
  }
  .collection .desc {
    text-align: center;
    font-size: 2rem;
    line-height: 2.2;
    margin-bottom: 70px;
    padding: 0;
  }
  .collection .book {
    text-align: center;
    margin-bottom: 80px;
  }
  .collection .book.plasticbag {
    background: url(../collection/images/book_01_bg_02.svg) repeat-y center top/858px auto;
  }
  .collection .book.cleaning {
    background: url(../collection/images/book_02_bg_02.svg) repeat-y center top/858px auto;
  }
  .collection .book__wrapper.plasticbag {
    background: url(../collection/images/book_01_bg_01.svg) no-repeat center top/858px auto, url(../collection/images/book_01_bg_03.svg) no-repeat center bottom/858px auto;
  }
  .collection .book__wrapper.cleaning {
    background: url(../collection/images/book_02_bg_01.svg) no-repeat center top/858px auto, url(../collection/images/book_02_bg_03.svg) no-repeat center bottom/858px auto;
  }
  .collection .book__inner {
    position: relative;
    max-width: 680px;
    margin: 0 auto;
    padding: 56px 0 104px 0;
  }
  .collection .book__heading-wrapper {
    background: none !important;
    padding: 0px;
    margin-bottom: 0px;
  }
  .collection .book h3 {
    margin-bottom: 16px;
  }
  .collection .book__heading {
    margin-bottom: 16px;
    border-top: none;
    border-bottom: solid 2px #20534C;
    padding: 12px;
    text-align: center;
    position: relative;
  }
  .collection .book__heading h2 {
    background: url(../collection/images/arrow.svg) no-repeat left center/11px auto;
    font-size: 2.3rem;
    padding-left: 20px;
    display: inline-block;
  }
  .collection .book__heading-bg {
    position: absolute;
  }
  .collection .book__heading-bg.bg01 {
    top: 264px;
    left: 40px;
    width: 50px;
  }
  .collection .book__heading-bg.bg02 {
    top: 216px;
    right: 48px;
    width: 41px;
  }
  .collection .book__heading-bg.bg03 {
    top: 128px;
    left: 56px;
    width: 34px;
  }
  .collection .book__heading-bg.bg04 {
    top: 170px;
    right: 20px;
    width: 73px;
  }
  .collection .book__desc {
    text-align: center;
    font-size: 1.36rem;
    line-height: 1.8;
    margin-bottom: 24px;
  }
  .collection .book__notice {
    font-size: 1rem;
    margin-bottom: 16px;
  }
  .collection .book__item-wrapper {
    max-width: none;
  }
  .collection .book__items {
    display: flex;
    gap: 20px;
    justify-content: center;
  }
  .collection .book__item {
    position: relative;
    flex-basis: 22%;
  }
  .collection .book__item-icon {
    position: absolute;
    top: -12px;
    left: -12px;
  }
  .collection .book__item-icon img {
    width: 58px;
  }
  .collection .book__item-image {
    margin-bottom: 8px;
  }
  .collection .book__item-get {
    font-size: 1.36rem;
    font-weight: 500;
  }
}
@media screen and (min-width: 1420px) {
  .collection .book {
    text-align: center;
    margin-bottom: 80px;
  }
  .collection .book.plasticbag {
    background: url(../collection/images/book_01_bg_02.svg) repeat-y center top/1073px auto;
  }
  .collection .book.cleaning {
    background: url(../collection/images/book_02_bg_02.svg) repeat-y center top/1073px auto;
  }
  .collection .book__wrapper.plasticbag {
    background: url(../collection/images/book_01_bg_01.svg) no-repeat center top/1073px auto, url(../collection/images/book_01_bg_03.svg) no-repeat center bottom/1073px auto;
  }
  .collection .book__wrapper.cleaning {
    background: url(../collection/images/book_02_bg_01.svg) no-repeat center top/1073px auto, url(../collection/images/book_02_bg_03.svg) no-repeat center bottom/1073px auto;
  }
  .collection .book__inner {
    position: relative;
    max-width: 850px;
    margin: 0 auto;
    padding: 70px 0 130px 0;
  }
  .collection .book__heading-wrapper {
    background: none !important;
    padding: 0px;
    margin-bottom: 0px;
  }
  .collection .book h3 {
    margin-bottom: 20px;
  }
  .collection .book__heading {
    margin-bottom: 20px;
    border-top: none;
    border-bottom: solid 2px #20534C;
    padding: 15px;
    text-align: center;
    position: relative;
  }
  .collection .book__heading h2 {
    background: url(../collection/images/arrow.svg) no-repeat left center/14px auto;
    font-size: 2.9rem;
    padding-left: 25px;
    display: inline-block;
  }
  .collection .book__heading-bg {
    position: absolute;
  }
  .collection .book__heading-bg.bg01 {
    top: 330px;
    left: 50px;
    width: 62px;
  }
  .collection .book__heading-bg.bg02 {
    top: 270px;
    right: 60px;
    width: 51px;
  }
  .collection .book__heading-bg.bg03 {
    top: 160px;
    left: 70px;
    width: 43px;
  }
  .collection .book__heading-bg.bg04 {
    top: 235px;
    right: 26px;
    width: 91px;
  }
  .collection .book__desc {
    text-align: center;
    font-size: 1.7rem;
    line-height: 1.8;
    margin-bottom: 30px;
  }
  .collection .book__notice {
    font-size: 1rem;
    margin-bottom: 20px;
  }
  .collection .book__item-wrapper {
    max-width: none;
  }
  .collection .book__items {
    display: flex;
    gap: 25px;
    justify-content: center;
  }
  .collection .book__item {
    position: relative;
    flex-basis: 22%;
  }
  .collection .book__item-icon {
    position: absolute;
    top: -15px;
    left: -15px;
  }
  .collection .book__item-icon img {
    width: 73px;
  }
  .collection .book__item-image {
    margin-bottom: 10px;
  }
  .collection .book__item-get {
    font-size: 1.7rem;
    font-weight: 500;
  }
}
.collection .status {
  color: white;
  padding: 20px 20px;
  width: 305px;
  height: 112px;
  margin: 0 auto 10px auto;
}
.collection .status.plasticbag {
  background: url(../collection/images/status_01_bg_sp.png) no-repeat center center/cover;
}
.collection .status.cleaning {
  background: url(../collection/images/status_02_bg_sp.png) no-repeat center center/cover;
}
.collection .status__heading {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  margin-bottom: 5px;
}
.collection .status__name {
  text-align: left;
  font-size: 1.5rem;
  background: url(../images/main_arrow.svg) no-repeat left top 4px/7px auto;
  padding-left: 15px;
}
.collection .status__num {
  font-size: 2.1rem;
}
.collection .status__meter {
  height: 18px;
  background: white;
  position: relative;
  border: solid 2px white;
  overflow: hidden;
}
.collection .status__meter span {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 50%;
  height: 100%;
  animation: meter 1.5s ease 2s forwards;
  transform: translateX(-100%);
}
.collection .status__meter.plasticbag span {
  background-image: linear-gradient(180deg, rgb(255, 233, 59) 49%, rgb(249, 190, 45) 50%);
}
.collection .status__meter.cleaning span {
  background-image: linear-gradient(180deg, rgb(70, 206, 146) 49%, rgb(0, 151, 102) 50%);
}
@media screen and (min-width: 1024px) {
  .collection .status {
    color: white;
    padding: 16px 24px;
    width: 381px;
    height: 81px;
    margin: 0 auto 16px auto;
  }
  .collection .status.plasticbag {
    background: url(../collection/images/status_01_bg.svg) no-repeat center center/cover;
  }
  .collection .status.cleaning {
    background: url(../collection/images/status_02_bg.svg) no-repeat center center/cover;
  }
  .collection .status__heading {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    margin-bottom: 4px;
  }
  .collection .status__name {
    font-size: 1.4rem;
    background: url(../images/main_arrow.svg) no-repeat left top 5px/8px auto;
    padding-left: 12px;
  }
  .collection .status__num {
    font-size: 1.68rem;
  }
  .collection .status__meter {
    height: 12.8px;
    background: white;
    position: relative;
    border: solid 2px white;
    overflow: hidden;
  }
  .collection .status__meter span {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 50%;
    height: 100%;
    animation: meter 1.5s ease 2s forwards;
    transform: translateX(-100%);
  }
  .collection .status__meter.plasticbag span {
    background-image: linear-gradient(180deg, rgb(255, 233, 59) 49%, rgb(249, 190, 45) 50%);
  }
  .collection .status__meter.cleaning span {
    background-image: linear-gradient(180deg, rgb(70, 206, 146) 49%, rgb(0, 151, 102) 50%);
  }
}
@media screen and (min-width: 1420px) {
  .collection .status {
    color: white;
    padding: 20px 30px;
    width: 477px;
    height: 101px;
    margin: 0 auto 20px auto;
  }
  .collection .status.plasticbag {
    background: url(../collection/images/status_01_bg.svg) no-repeat center center/cover;
  }
  .collection .status.cleaning {
    background: url(../collection/images/status_02_bg.svg) no-repeat center center/cover;
  }
  .collection .status__heading {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    margin-bottom: 5px;
  }
  .collection .status__name {
    font-size: 1.76rem;
    background: url(../images/main_arrow.svg) no-repeat left top 7px/10px auto;
    padding-left: 15px;
  }
  .collection .status__num {
    font-size: 2.1rem;
  }
  .collection .status__meter {
    height: 16px;
    background: white;
    position: relative;
    border: solid 2px white;
    overflow: hidden;
  }
  .collection .status__meter span {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 50%;
    height: 100%;
    animation: meter 1.5s ease 2s forwards;
    transform: translateX(-100%);
  }
  .collection .status__meter.plasticbag span {
    background-image: linear-gradient(180deg, rgb(255, 233, 59) 49%, rgb(249, 190, 45) 50%);
  }
  .collection .status__meter.cleaning span {
    background-image: linear-gradient(180deg, rgb(70, 206, 146) 49%, rgb(0, 151, 102) 50%);
  }
}

.efforts {
  color: #20534C;
  background: #F2F5EA;
}
.efforts .contents {
  padding-bottom: 20px;
  background: #F2F5EA url(../images/page_bottom_bg_sp.png) no-repeat right bottom/375px auto;
}
.efforts .desc {
  text-align: left;
  font-size: 1.4rem;
  line-height: 2;
  padding: 10px 10px;
}
.efforts .block {
  padding: 0 0 50px 0;
}
.efforts .block.block01 {
  background: url(../efforts/images/block_bg_01_sp.png) no-repeat center bottom/100% auto;
}
.efforts .block.block02 {
  padding: 0 0 30px 0;
  background: #E1E5D3;
}
.efforts .block.block03 {
  padding: 0 0 50px 0;
  background: url(../efforts/images/block_bg_02_sp.png) no-repeat center top/100% auto;
}
.efforts .block__heading {
  text-align: center;
  margin-bottom: 20px;
}
.efforts .block__heading img {
  width: 304px;
}
.efforts .block__heading.block03 img {
  width: 320px;
  transform: translateX(10px);
}
.efforts__back {
  text-align: center;
  margin-bottom: 30px;
}
@media screen and (min-width: 1024px) {
  .efforts {
    background: #F2F5EA;
    color: #20534C;
  }
  .efforts .contents {
    background: url(../efforts/images/effort_bg.svg) no-repeat center bottom/1800px auto;
  }
  .efforts .l-container {
    text-align: center;
    padding-top: 80px;
    padding-bottom: 80px;
    padding-left: 0;
    padding-right: 0;
    background: none;
  }
  .efforts .desc {
    text-align: center;
    font-size: 2rem;
    line-height: 2.2;
    padding: 0px 10px;
  }
  .efforts .block {
    padding: 0 0 150px 0;
  }
  .efforts .block.block01 {
    background: url(../efforts/images/block_bg_01.png) no-repeat center bottom/1800px auto;
  }
  .efforts .block.block02 {
    padding: 50px 0 180px 0;
    background: url(../efforts/images/block_bg_02.png) no-repeat center top/1800px auto, url(../efforts/images/block_bg_03.png) no-repeat center bottom -2px/1800px auto, #E1E5D3;
  }
  .efforts .block.block03 {
    padding: 0 0 120px 0;
    background: none;
  }
  .efforts .block__heading {
    text-align: center;
    margin-bottom: 45px;
  }
  .efforts .block__heading img {
    width: 515px;
  }
  .efforts .block__heading.block03 img {
    width: 603px;
  }
  .efforts__back {
    text-align: center;
    margin-bottom: 50px;
  }
}
@media screen and (min-width: 1420px) {
  .efforts .block.block01 {
    background: url(../efforts/images/block_bg_01.png) no-repeat center bottom/100% auto;
  }
  .efforts .block.block02 {
    background: url(../efforts/images/block_bg_02.png) no-repeat center top/100% auto, url(../efforts/images/block_bg_03.png) no-repeat center bottom -1px/100% auto, #E1E5D3;
  }
  .efforts .block__heading {
    text-align: center;
    margin-bottom: 50px;
  }
  .efforts .block__heading img {
    width: 573px;
  }
  .efforts .block__heading.block03 img {
    width: 670px;
  }
}

.partner {
  color: #20534C;
  background: #F2F5EA;
}
.partner .contents {
  padding-bottom: 20px;
  background: #F2F5EA url(../images/page_bottom_bg_sp.png) no-repeat right bottom/375px auto;
}
.partner .desc {
  text-align: left;
  font-size: 1.4rem;
  line-height: 2;
  padding: 10px 10px;
  margin-bottom: 10px;
}
.partner .block {
  text-align: left;
  padding: 30px;
  max-width: 973px;
  margin: 0 auto 30px auto;
  background: url(../partner/images/partner_bg_t.svg) no-repeat center top/100% auto, url(../partner/images/partner_bg_b.svg) no-repeat center bottom/100% auto, white;
}
.partner .block__heading {
  margin-bottom: 20px;
}
.partner .block__contents {
  margin-bottom: 20px;
}
.partner .block__image {
  border-radius: 20px;
  margin-bottom: 15px;
  overflow: hidden;
}
.partner .block__effort {
  display: flex;
  gap: 15px;
  margin-bottom: 15px;
}
.partner .block__icon img {
  width: 65px;
}
.partner .block__effort-item {
  display: flex;
  flex-direction: column;
  gap: 10px;
  justify-content: center;
  font-size: 1.4rem;
  color: #EC8E00;
}
.partner .block__effort-item.block02 {
  color: #2681D0;
}
.partner .block__effort-item.block02 p {
  background: url(../partner/images/arrow_bl.svg) no-repeat left center/8px auto;
}
.partner .block__effort-item.block03 {
  color: #6ab34d;
}
.partner .block__effort-item.block03 p {
  background: url(../partner/images/arrow_bl3.svg) no-repeat left center/8px auto;
}
.partner .block__effort-item.block04 {
  color: #41bcd7;
}
.partner .block__effort-item.block04 p {
  background: url(../partner/images/arrow_bl4.svg) no-repeat left center/8px auto;
}
.partner .block__effort-item p {
  font-weight: 500;
  background: url(../partner/images/arrow_or.svg) no-repeat left center/8px auto;
  padding-left: 10px;
}
.partner .block__desc {
  margin-bottom: 10px;
  font-size: 1.2rem;
  line-height: 1.8;
}
.partner .block__link a {
  text-decoration: underline;
  font-size: 1.1rem;
  color: #EC8E00;
}
.partner .block__link a:link, .partner .block__link a:visited {
  color: #EC8E00;
}
.partner .block__link a.block02 {
  color: #2681D0;
}
.partner .block__link a.block02:link, .partner .block__link a.block02:visited {
  color: #2681D0;
}
.partner .block__link a.block03 {
  color: #6ab34d;
}
.partner .block__link a.block03:link, .partner .block__link a.block03:visited {
  color: #6ab34d;
}
.partner .block__link a.block04 {
  color: #41bcd7;
}
.partner .block__link a.block04:link, .partner .block__link a.block04:visited {
  color: #41bcd7;
}
.partner .block__message {
  background: url(../partner/images/partner_message_bg_t_sp.jpg) no-repeat center top/100% auto, url(../partner/images/partner_message_bg_b_sp.jpg) no-repeat center bottom/100% auto;
  padding: 20px 20px;
}
.partner .block__left {
  margin-top: -28px;
  margin-bottom: 5px;
  text-align: center;
}
.partner .block__message-icon img {
  width: 58px;
}
.partner .block__name {
  font-size: 1.25rem;
}
.partner .block__message-contents {
  line-height: 1.8;
  font-size: 1.2rem;
}
.partner__back {
  text-align: center;
  margin-bottom: 30px;
}
@media screen and (min-width: 1024px) {
  .partner {
    background: #F2F5EA;
    color: #20534C;
  }
  .partner .contents {
    background: url(../efforts/images/effort_bg.svg) no-repeat center bottom/1800px auto;
  }
  .partner .l-container {
    padding-top: 80px;
    padding-bottom: 80px;
    text-align: center;
    background: none;
  }
  .partner .desc {
    text-align: center;
    font-size: 2rem;
    line-height: 2.2;
    padding: 0px 10px;
    margin-bottom: 90px;
  }
  .partner .block {
    text-align: left;
    padding: 50px;
    max-width: 973px;
    margin: 0 auto 70px auto;
    background: url(../partner/images/partner_bg_t.svg) no-repeat center top/100% auto, url(../partner/images/partner_bg_b.svg) no-repeat center bottom/100% auto;
  }
  .partner .block__heading {
    margin-bottom: 40px;
  }
  .partner .block__contents {
    display: flex;
    gap: 50px;
    margin-bottom: 30px;
  }
  .partner .block__image {
    flex-basis: 50%;
    flex-shrink: 0;
    margin-bottom: 0;
    border-radius: 20px;
    overflow: hidden;
  }
  .partner .block__effort {
    display: flex;
    gap: 20px;
    margin-bottom: 20px;
  }
  .partner .block__icon img {
    width: 92px;
  }
  .partner .block__effort-item {
    display: flex;
    flex-direction: column;
    gap: 10px;
    justify-content: center;
    font-size: 1.6rem;
    color: #EC8E00;
  }
  .partner .block__effort-item.block02 {
    color: #2681D0;
  }
  .partner .block__effort-item.block02 p {
    background: url(../partner/images/arrow_bl.svg) no-repeat left center/10px auto;
  }
  .partner .block__effort-item p {
    font-weight: 500;
    background: url(../partner/images/arrow_or.svg) no-repeat left center/10px auto;
    padding-left: 15px;
  }
  .partner .block__desc {
    margin-bottom: 10px;
    font-size: 1.6rem;
    line-height: 1.8;
  }
  .partner .block__link a {
    text-decoration: underline;
    font-size: 1.5rem;
    color: #EC8E00;
  }
  .partner .block__link a:link, .partner .block__link a:visited {
    color: #EC8E00;
  }
  .partner .block__link a.block02 {
    color: #2681D0;
  }
  .partner .block__link a.block02:link, .partner .block__link a.block02:visited {
    color: #2681D0;
  }
  .partner .block__message {
    display: flex;
    justify-content: center;
    align-items: center;
    background: url(../partner/images/partner_message_bg_t.jpg) no-repeat center top/100% auto, url(../partner/images/partner_message_bg_b.jpg) no-repeat center bottom/100% auto;
    padding: 20px 30px;
  }
  .partner .block__left {
    text-align: center;
    flex-basis: 43%;
    margin: 0;
  }
  .partner .block__message-icon img {
    width: 83px;
  }
  .partner .block__name {
    font-size: 1.6rem;
  }
  .partner .block__message-contents {
    line-height: 1.8;
    font-size: 1.6rem;
  }
  .partner__back {
    text-align: center;
    margin-bottom: 0;
  }
}

.p-header {
  position: relative;
}
.p-header__logo {
  position: absolute;
  top: 20px;
  left: 20px;
  z-index: 100;
}
.p-header__logo img {
  width: 90px;
}
.p-header__logo.small img {
  width: 90px;
}
@media screen and (min-width: 1024px) {
  .p-header {
    position: relative;
  }
  .p-header__logo {
    position: absolute;
    top: 50px;
    left: 50px;
    z-index: 100;
  }
  .p-header__logo img {
    width: auto;
    height: 155px;
  }
  .p-header__logo.small img {
    width: 191px;
  }
}

.p-footer {
  position: relative;
}
.p-footer__inner {
  padding: 25vw 20px 20px 20px;
  background: #F2F5EA url(../images/footer_bg_sp.png) no-repeat center top/100% auto;
  color: white;
  text-align: center;
}
.p-footer__inner.about {
  background: url(../images/footer_bg_sp.png) no-repeat center top/100% auto;
}
.p-footer__logo {
  margin-bottom: 20px;
}
.p-footer__logo img {
  width: 155px;
}
.p-footer__nav {
  display: flex;
  justify-content: center;
  margin-bottom: 30px;
}
.p-footer__nav-item {
  color: white;
  border-right: solid 1px white;
  padding-right: 10px;
  margin-right: 10px;
  line-height: 1.2;
}
.p-footer__nav-item:last-of-type {
  border: none;
  padding-right: 0;
  margin-right: 0;
}
.p-footer__nav-item a {
  font-size: 1rem;
  line-height: 1;
}
.p-footer__nav-item a:link, .p-footer__nav-item a:visited {
  color: white;
}
.p-footer__link {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
  justify-content: center;
  margin-bottom: 10px;
}
.p-footer__link-item.tl img {
  width: 122px;
}
.p-footer__link-item.rs img {
  width: 184px;
}
.p-footer__copyrights {
  font-size: 1rem;
}
@media screen and (min-width: 1024px) {
  .p-footer {
    position: relative;
  }
  .p-footer__inner {
    padding: 14vw 70px 70px 70px;
    background: #F2F5EA url(../images/footer_bg.png) no-repeat center top/1420px auto;
    color: white;
    text-align: center;
  }
  .p-footer__inner.about {
    background: url(../images/footer_bg.png) no-repeat center top/1420px auto;
  }
  .p-footer__logo {
    margin-bottom: 40px;
  }
  .p-footer__logo img {
    width: 258px;
  }
  .p-footer__nav {
    display: flex;
    justify-content: center;
    margin-bottom: 50px;
  }
  .p-footer__nav-item {
    color: white;
    border-right: solid 1px white;
    padding-right: 20px;
    margin-right: 20px;
  }
  .p-footer__nav-item:last-of-type {
    border: none;
  }
  .p-footer__nav-item a {
    font-size: 1.6rem;
    line-height: 1.2;
  }
  .p-footer__nav-item a:link, .p-footer__nav-item a:visited {
    color: white;
  }
  .p-footer__link {
    display: flex;
    gap: 40px;
    justify-content: center;
    margin-bottom: 25px;
  }
  .p-footer__link-item.tl img {
    width: 245px;
  }
  .p-footer__link-item.rs img {
    width: 368px;
  }
  .p-footer__copyrights {
    font-size: 1.4rem;
  }
}
@media screen and (min-width: 1420px) {
  .p-footer {
    position: relative;
  }
  .p-footer__inner {
    padding: 12vw 70px 50px 70px;
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    background: #F2F5EA url(../images/footer_bg.png) no-repeat center top/100% auto;
    color: white;
    text-align: left;
  }
  .p-footer__inner.about {
    background: url(../images/footer_bg.png) no-repeat center top/100% auto;
  }
  .p-footer__logo {
    margin-bottom: 0;
  }
  .p-footer__logo img {
    width: 232px;
  }
  .p-footer__nav {
    display: flex;
    justify-content: flex-start;
    margin-bottom: 0;
  }
  .p-footer__nav-item {
    color: white;
    border-right: solid 1px white;
    padding-right: 20px;
    margin-right: 20px;
  }
  .p-footer__nav-item:last-of-type {
    border: none;
  }
  .p-footer__nav-item a {
    font-size: 1.6rem;
    line-height: 1.2;
  }
  .p-footer__nav-item a:link, .p-footer__nav-item a:visited {
    color: white;
  }
  .p-footer__link {
    display: flex;
    gap: 30px;
    justify-content: end;
    margin-bottom: 25px;
  }
  .p-footer__link-item.tl img {
    width: 209px;
  }
  .p-footer__link-item.rs img {
    width: 314px;
  }
  .p-footer__copyrights {
    font-size: 1.2rem;
  }
}

.p-heading {
  text-align: center;
  margin-bottom: 30px;
}
.p-heading__icon {
  margin-bottom: 20px;
  text-align: center;
}
.p-heading__icon img {
  width: auto;
  height: 33px;
}
.p-heading h2 {
  margin-bottom: 10px;
}
.p-heading h2 img {
  width: auto;
  height: 48px;
}
.p-heading__sub img {
  width: auto;
  height: 13px;
}
@media screen and (min-width: 1024px) {
  .p-heading {
    text-align: center;
    margin-bottom: 110px;
  }
  .p-heading__icon {
    margin-bottom: 30px;
    text-align: center;
  }
  .p-heading__icon img {
    width: auto;
    height: 51px;
  }
  .p-heading h2 {
    margin-bottom: 30px;
  }
  .p-heading h2 img {
    width: auto;
    height: 31.5px;
  }
  .p-heading__sub img {
    width: auto;
    height: 50px;
  }
}

.collection .p-page-header {
  background: url(../collection/images/heading_bg_sp.png) no-repeat center bottom/100% auto;
  height: 309px;
  display: flex;
  justify-content: center;
  align-items: center;
}
.collection .p-page-header__heading {
  text-align: center;
  transform: translateY(0px);
}
.collection .p-page-header__title {
  background: none;
  padding: 0;
}
.collection .p-page-header__title img {
  width: 210px;
  height: auto;
}
@media screen and (max-width: 374px) {
  .collection .p-page-header {
    background: url(../collection/images/heading_bg_sp.png) no-repeat center bottom/375px auto;
  }
}
@media screen and (min-width: 1024px) {
  .collection .p-page-header {
    background: url(../collection/images/heading_bg.png) no-repeat center top/1420px auto;
    height: 440px;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .collection .p-page-header__heading {
    text-align: center;
    transform: translateY(0px);
  }
  .collection .p-page-header__title {
    background: none;
    padding: 0;
  }
  .collection .p-page-header__title img {
    width: 315px;
    height: auto;
  }
}
@media screen and (min-width: 1420px) {
  .collection .p-page-header {
    background: url(../collection/images/heading_bg.png) no-repeat center top/100% auto;
    height: 31vw;
  }
}

.p-page-header {
  background: url(../collection/images/heading_bg_sp.png) no-repeat center bottom/100% auto;
  height: 309px;
  display: flex;
  justify-content: center;
  align-items: center;
}
.p-page-header__heading {
  text-align: center;
  transform: translateY(0px);
}
.p-page-header__title {
  background: none;
  padding: 0;
}
.p-page-header__title img {
  width: 210px;
  height: auto;
}
.p-page-header__title.event img {
  width: 150px;
  height: auto;
}
.p-page-header__title.partner img {
  width: 189px;
  height: auto;
}
@media screen and (max-width: 374px) {
  .p-page-header {
    background: url(../collection/images/heading_bg_sp.png) no-repeat center bottom/375px auto;
  }
}
@media screen and (min-width: 1024px) {
  .p-page-header {
    background: url(../collection/images/heading_bg.png) no-repeat center top/1420px auto;
    height: 440px;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .p-page-header__heading {
    text-align: center;
    transform: translateY(0px);
  }
  .p-page-header__title {
    background: none;
    padding: 0;
  }
  .p-page-header__title img {
    width: 350px;
    height: auto;
  }
  .p-page-header__title.event img {
    width: 227px;
    height: auto;
  }
  .p-page-header__title.partner img {
    width: 310px;
    height: auto;
  }
}
@media screen and (min-width: 1420px) {
  .p-page-header {
    background: url(../collection/images/heading_bg.png) no-repeat center top/100% auto;
    height: 31vw;
  }
}

.p-page-bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  text-align: center;
  display: flex;
  justify-content: center;
  z-index: 0;
  pointer-events: none;
}
.p-page-bg.bg01 {
  top: -110px;
  background: url(../collection/images/leaf_01_sp.png) no-repeat left top 5px/130px auto, url(../collection/images/leaf_02_sp.png) no-repeat right top 5px/140px auto;
}
@media screen and (min-width: 1024px) {
  .p-page-bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    text-align: center;
    display: flex;
    justify-content: center;
    z-index: 0;
  }
  .p-page-bg.bg01 {
    background: url(../collection/images/leaf_01.png) no-repeat center top/100% auto;
  }
  .p-page-bg.bg02.events {
    min-height: 1400px;
    background: url(../event/images/index_leaf_01.png) no-repeat center top/1800px auto;
  }
  .p-page-bg.bg02.event {
    background: url(../event/images/event_leaf_01.png) no-repeat center top/1800px auto;
  }
  .p-page-bg.bg02.partner {
    background: url(../partner/images/leaf_01.png) no-repeat center top/1800px auto;
  }
  .p-page-bg.bg02.effort {
    min-height: 1000px;
    background: url(../efforts/images/leaf_01.png) no-repeat center top/1800px auto;
  }
  .p-page-bg.bg03.events {
    background: url(../event/images/index_leaf_02.svg) no-repeat center top/1800px auto;
  }
  .p-page-bg.bg03.event {
    background: url(../event/images/event_leaf_02.svg) no-repeat center top/1800px auto;
  }
  .p-page-bg.bg03.partner {
    background: url(../partner/images/leaf_02.svg) no-repeat center top/1800px auto;
  }
  .p-page-bg.bg03.effort {
    min-height: 1000px;
    background: url(../efforts/images/leaf_02.svg) no-repeat center top/1800px auto;
  }
}
@media screen and (min-width: 1024px) and (min-width: 1420px) {
  .p-page-bg.bg01 {
    background: url(../collection/images/leaf_01.png) no-repeat center top/100% auto;
  }
}

.p-event-card__thumbnail {
  position: relative;
}
.p-event-card__thumbnail img {
  border-radius: 15px;
  overflow: hidden;
}
.p-event-card__closed {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  color: white;
  border-radius: 15px;
  background: rgba(20, 58, 43, 0.63);
  font-size: 1.4rem;
  font-weight: 500;
}
.p-event-card__contents {
  padding: 20px 0;
  margin: 0 -20px;
  text-align: center;
  color: #20534C;
}
.p-event-card__category {
  font-size: 1.3rem;
  margin-bottom: 10px;
}
.p-event-card__date {
  font-size: 1.3rem;
  margin-bottom: 20px;
  letter-spacing: 0.1em;
}
.p-event-card__title {
  font-size: 1.9rem;
  margin-bottom: 10px;
  font-weight: 500;
  letter-spacing: 0em;
  line-height: 1.3;
}
.p-event-card__title span {
  font-size: 1.4rem;
  letter-spacing: 0.05em;
}
.p-event-card__tag {
  font-size: 1.3rem;
  border: solid 1px #20534C;
  border-radius: 30px;
  padding: 5px 20px;
  display: inline-block;
  font-size: 1.4rem;
  margin-bottom: 10px;
}
.p-event-card__more img {
  width: 142px;
}
@media screen and (min-width: 1024px) {
  .p-event-card {
    display: flex;
  }
  .p-event-card__thumbnail {
    flex-basis: 50%;
    margin-right: 70px;
  }
  .p-event-card__thumbnail img {
    border-radius: 30px;
    overflow: hidden;
  }
  .p-event-card__closed {
    border-radius: 30px;
    font-size: 2.2rem;
    font-weight: 500;
  }
  .p-event-card__contents {
    flex-basis: 50%;
    padding: 30px 0;
    text-align: left;
    margin: 0;
  }
  .p-event-card__category {
    font-size: 1.6rem;
    margin-bottom: 10px;
  }
  .p-event-card__date {
    font-size: 1.6rem;
    margin-bottom: 30px;
    color: #20534C;
    letter-spacing: 0.1em;
  }
  .p-event-card__title {
    font-size: 2.5rem;
    margin-bottom: 20px;
    font-weight: 500;
    letter-spacing: 0.1em;
    line-height: 1.3;
  }
  .p-event-card__title span {
    font-size: 2.1rem;
    letter-spacing: 0.05em;
  }
  .p-event-card__tag {
    font-size: 1.44rem;
    border: solid 1px #20534C;
    border-radius: 30px;
    padding: 5px 20px;
    display: inline-block;
    font-size: 1.26rem;
    margin-bottom: 20px;
  }
  .p-event-card__more img {
    width: 227px;
  }
}

.p-event-card-s {
  border-radius: 12px;
  overflow: hidden;
}
.p-event-card-s a {
  color: #20534C;
}
.p-event-card-s a:link, .p-event-card-s a:visited {
  color: #20534C;
}
.p-event-card-s__thumbnail img {
  height: 100%;
  object-fit: cover;
}
.p-event-card-s__contents {
  background: white url(../event/images/event_more.svg) no-repeat right 10px bottom 10px/16px auto;
  padding: 20px;
  text-align: left;
  margin: 0;
}
.p-event-card-s__category {
  font-size: 1rem;
  margin-bottom: 10px;
}
.p-event-card-s__title {
  font-size: 1.3rem;
  margin-bottom: 10px;
  font-weight: 500;
}
.p-event-card-s__title span {
  font-size: 1rem;
}
.p-event-card-s__tag {
  font-size: 1rem;
  border: solid 1px #20534C;
  border-radius: 30px;
  padding: 3px 10px;
  display: inline-block;
}
@media screen and (min-width: 1024px) {
  .p-event-card-s {
    border-radius: 20px;
    overflow: hidden;
  }
  .p-event-card-s a {
    display: flex;
  }
  .p-event-card-s__thumbnail {
    flex-basis: 50%;
  }
  .p-event-card-s__thumbnail img {
    height: 100%;
    object-fit: cover;
  }
  .p-event-card-s__contents {
    background: white url(../event/images/event_more.svg) no-repeat right 15px bottom 15px/23px auto;
    flex-basis: 50%;
    padding: 50px 0 50px 40px;
    text-align: left;
    margin: 0;
  }
  .p-event-card-s__category {
    font-size: 1.3rem;
    margin-bottom: 10px;
  }
  .p-event-card-s__title {
    font-size: 1.9rem;
    margin-bottom: 10px;
    font-weight: 500;
    letter-spacing: 0.1em;
  }
  .p-event-card-s__title span {
    font-size: 1.35rem;
    letter-spacing: 0;
  }
  .p-event-card-s__tag {
    font-size: 1.1rem;
    border: solid 1px #20534C;
    border-radius: 30px;
    padding: 3px 10px;
    display: inline-block;
  }
}

.p-effort-card {
  margin: 0 15px;
  border-radius: 7.5px;
  background: white;
  overflow: hidden;
}
.p-effort-card__thumbnail {
  object-fit: cover;
}
.p-effort-card__info {
  padding: 20px;
}
.p-effort-card__title {
  margin: 0 -10px 10px -10px;
  font-size: 1.3rem;
  font-weight: bold;
  text-align: center;
}
.p-effort-card__title span {
  font-size: 1rem;
  display: inline-block;
}
.p-effort-card__desc {
  font-size: 1rem;
  line-height: 1.8;
}
@media screen and (min-width: 1024px) {
  .p-effort-card {
    margin: 0 18px;
    border-radius: 12px;
    background: white;
    overflow: hidden;
  }
  .p-effort-card__thumbnail {
    position: relative;
    padding-top: 58%;
  }
  .p-effort-card__thumbnail img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
  .p-effort-card__info {
    padding: 27px;
  }
  .p-effort-card__title {
    margin: 0 -18px 18px -18px;
    font-size: 1.7rem;
    font-weight: bold;
    text-align: center;
  }
  .p-effort-card__title span {
    font-size: 1.1rem;
    display: inline-block;
  }
  .p-effort-card__desc {
    font-size: 1.35rem;
    line-height: 1.8;
  }
}
@media screen and (min-width: 1420px) {
  .p-effort-card {
    margin: 0 20px;
    border-radius: 13px;
    background: white;
    overflow: hidden;
  }
  .p-effort-card__thumbnail {
    position: relative;
    padding-top: 58%;
  }
  .p-effort-card__thumbnail img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
  .p-effort-card__info {
    padding: 30px;
  }
  .p-effort-card__title {
    margin: 0 -20px 20px -20px;
    font-size: 1.9rem;
    font-weight: bold;
    text-align: center;
  }
  .p-effort-card__title span {
    font-size: 1.2rem;
    display: inline-block;
  }
  .p-effort-card__desc {
    font-size: 1.5rem;
    line-height: 1.8;
  }
}

.intro {
  position: fixed;
  z-index: 1000;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  overflow: hidden;
}
.intro__main {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 100;
  width: 100%;
  height: calc(100% + 10vw);
  background: linear-gradient(0deg, rgb(21, 120, 91) 70%, rgba(21, 120, 91, 0) 70%);
}
.intro__main-bg img {
  transform: translateY(-8vw);
}
.intro__main-bg.leaf {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: calc(100% + 10vw);
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 101;
}
@media screen and (min-width: 1024px) {
  .intro__main {
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 1420px;
    height: calc(100% + 142px);
  }
  .intro__main-bg img {
    transform: translateY(-352px);
  }
  .intro__main-bg.leaf {
    height: calc(100% + 273px);
  }
}
@media screen and (min-width: 1420px) {
  .intro__main {
    top: 0;
    left: 0;
    width: 100%;
    transform: none;
    height: calc(100% + 10vw);
  }
  .intro__main-bg img {
    transform: translateY(-24vw);
  }
  .intro__main-bg.leaf {
    height: calc(100% + 18vw);
  }
}
.intro__logo {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: calc(100% - 10vw);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 101;
}
.intro__logo-inner {
  width: 248px;
}
.intro__logo-inner img {
  width: auto;
  height: 34px;
}
.intro__logo-main {
  margin-bottom: 2px;
}
.intro__logo-main p {
  margin-bottom: 16px;
}
.intro__logo-sub p {
  margin-bottom: 12px;
}
.intro__logo-sub img {
  height: 22px;
}
@media screen and (min-width: 1024px) {
  .intro__logo {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: calc(100% - 10vw);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 101;
  }
  .intro__logo-inner {
    width: 328px;
  }
  .intro__logo-inner img {
    width: auto;
    height: 44px;
  }
  .intro__logo-main {
    margin-bottom: 2.4px;
  }
  .intro__logo-main p {
    margin-bottom: 21.6px;
  }
  .intro__logo-sub p {
    margin-bottom: 13.6px;
  }
  .intro__logo-sub img {
    height: 29.6px;
  }
}

.home.intro_ready .main__bg.bg02 {
  transform: translateY(-25px);
}
.home.intro_ready .main__bg.bg03 {
  transform: translateY(-50px);
}
.home.intro_ready .main__bg.bg04 {
  transform: translateY(-150px);
}
.home.intro_ready .main__bg.bg05 {
  transform: translateY(-250px);
}
.home.intro_ready .main__bg.bg06 {
  transform: translateY(-350px);
}
@media screen and (min-width: 1024px) {
  .home.intro_ready .main__bg.bg02 {
    transform: translateY(-50px);
  }
  .home.intro_ready .main__bg.bg03 {
    transform: translateY(-100px);
  }
  .home.intro_ready .main__bg.bg04 {
    transform: translateY(-300px);
  }
  .home.intro_ready .main__bg.bg05 {
    transform: translateY(-500px);
  }
  .home.intro_ready .main__bg.bg06 {
    transform: translateY(-700px);
  }
}

.intro_end .intro__main {
  animation: open;
  animation-duration: 1s;
  animation-delay: 1.5s;
  animation-timing-function: cubic-bezier(0.76, 0, 0.24, 1);
  animation-fill-mode: forwards;
  animation-name: open-s;
}
@media screen and (min-width: 1024px) {
  .intro_end .intro__main {
    animation-name: open-l;
  }
}
@media screen and (min-width: 1420px) {
  .intro_end .intro__main {
    animation-name: open-xl;
  }
}
.intro_end .intro__main.finished {
  display: none;
}
.intro_end .main__bg {
  animation-duration: 1s;
  animation-delay: 1.5s;
  animation-timing-function: cubic-bezier(0.76, 0, 0.24, 1);
  animation-fill-mode: forwards;
  animation-name: open_bg;
}

.typing {
  overflow: hidden;
  opacity: 0;
}

.intro_ready .typing {
  overflow: hidden;
  border-right: 3px solid #A3E66A;
  opacity: 0;
}
.intro_ready .typing.typing01 {
  width: 130px;
  animation: typing 0.2s steps(4), effect 0.1s step-end infinite alternate;
}
.intro_ready .typing.typing02 {
  width: 248px;
  animation: typing 0.35s steps(7) 0.2s, effect 0.1s step-end infinite alternate;
}
.intro_ready .typing.typing03 {
  width: 248px;
  animation: typing 0.35s steps(7) 0.6s, effect 0.1s step-end infinite alternate;
}
.intro_ready .typing.typing04 {
  width: 238px;
  animation: typing 0.4s steps(8) 1.3s, effect 0.1s step-end infinite alternate;
}
.intro_ready .typing.typing05 {
  width: 238px;
  animation: typing 0.4s steps(8) 1.7s, effect 0.15s step-end infinite alternate;
}
.intro_ready .typing.finished {
  opacity: 1;
}
.intro_ready .typing.finished:not(.typing05) {
  animation: none;
  border-right: none;
}
@media screen and (min-width: 1024px) {
  .intro_ready .typing {
    overflow: hidden;
    border-right: 5px solid #A3E66A;
    opacity: 0;
  }
  .intro_ready .typing.typing01 {
    width: 168px;
  }
  .intro_ready .typing.typing02 {
    width: 328px;
  }
  .intro_ready .typing.typing03 {
    width: 328px;
  }
  .intro_ready .typing.typing04 {
    width: 320px;
  }
  .intro_ready .typing.typing05 {
    width: 320px;
  }
  .intro_ready .typing.finished {
    opacity: 1;
  }
}

.animation-appearup,
.animation-appeardown,
.animation-scale {
  opacity: 0;
}

.intro_end .animation-appeardown {
  animation: appeardown 0.3s ease-out 3s forwards;
}
.intro_end .animation-appearup {
  animation: appearup 0.3s ease-out 3s forwards;
}
.intro_end .animation-meter {
  animation: meter 1.5s ease 3s forwards;
}

.intro_skip .animation-appeardown {
  animation: appeardown 0.3s ease-out 0.5s forwards;
}
.intro_skip .animation-appearup {
  animation: appearup 0.3s ease-out 0.5s forwards;
}
.intro_skip .animation-scale {
  animation: bubble 0.3s cubic-bezier(0.34, 1.56, 0.64, 1) 1.5s forwards;
}
.intro_skip .animation-meter {
  animation: meter 1.5s ease 1s forwards;
}

@keyframes open-s {
  100% {
    transform: translateY(153vw);
  }
}
@keyframes open-l {
  100% {
    transform: translate(-50%, 1005px);
  }
}
@keyframes open-xl {
  100% {
    transform: translateY(70vw);
  }
}
@keyframes open_bg {
  100% {
    transform: translateY(0);
  }
}
@keyframes typing {
  from {
    opacity: 1;
    width: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes effect {
  50% {
    border-color: transparent;
  }
}
@keyframes appeardown {
  from {
    opacity: 0;
    transform: translateY(-100px);
  }
  to {
    opacity: 1;
    transform: translateY(0px);
  }
}
@keyframes appearup {
  from {
    opacity: 0;
    transform: translateY(30px);
  }
  to {
    opacity: 1;
    transform: translateY(0px);
  }
}
.loading {
  position: fixed;
  width: 100%;
  height: 100%;
  z-index: 2000;
  left: 0;
  top: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #14785b;
}
.loading .finished {
  display: none;
}

.loader {
  width: 50px;
  aspect-ratio: 1;
  border-radius: 50%;
  border: 5px solid #A3E66A;
  animation: l20-1 0.8s infinite linear alternate, l20-2 1.6s infinite linear;
}

@keyframes l20-1 {
  0% {
    clip-path: polygon(50% 50%, 0 0, 50% 0%, 50% 0%, 50% 0%, 50% 0%, 50% 0%);
  }
  12.5% {
    clip-path: polygon(50% 50%, 0 0, 50% 0%, 100% 0%, 100% 0%, 100% 0%, 100% 0%);
  }
  25% {
    clip-path: polygon(50% 50%, 0 0, 50% 0%, 100% 0%, 100% 100%, 100% 100%, 100% 100%);
  }
  50% {
    clip-path: polygon(50% 50%, 0 0, 50% 0%, 100% 0%, 100% 100%, 50% 100%, 0% 100%);
  }
  62.5% {
    clip-path: polygon(50% 50%, 100% 0, 100% 0%, 100% 0%, 100% 100%, 50% 100%, 0% 100%);
  }
  75% {
    clip-path: polygon(50% 50%, 100% 100%, 100% 100%, 100% 100%, 100% 100%, 50% 100%, 0% 100%);
  }
  100% {
    clip-path: polygon(50% 50%, 50% 100%, 50% 100%, 50% 100%, 50% 100%, 50% 100%, 0% 100%);
  }
}
@keyframes l20-2 {
  0% {
    transform: scaleY(1) rotate(0deg);
  }
  49.99% {
    transform: scaleY(1) rotate(135deg);
  }
  50% {
    transform: scaleY(-1) rotate(0deg);
  }
  100% {
    transform: scaleY(-1) rotate(-135deg);
  }
}
.animate {
  animation-timing-function: ease;
  animation-fill-mode: forwards;
}
.animate-delay100ms {
  animation-delay: 100ms;
}
.animate-delay200ms {
  animation-delay: 200ms;
}
.animate-delay300ms {
  animation-delay: 300ms;
}
.animate-delay400ms {
  animation-delay: 400ms;
}
.animate-delay500ms {
  animation-delay: 500ms;
}
.animate-delay600ms {
  animation-delay: 600ms;
}
.animate-delay700ms {
  animation-delay: 700ms;
}
.animate-delay800ms {
  animation-delay: 800ms;
}
.animate-delay900ms {
  animation-delay: 900ms;
}
.animate-delay1000ms {
  animation-delay: 1000ms;
}
.animate-delay1100ms {
  animation-delay: 1100ms;
}
.animate-delay1200ms {
  animation-delay: 1200ms;
}
.animate-delay1300ms {
  animation-delay: 1300ms;
}
.animate-delay1400ms {
  animation-delay: 1400ms;
}
.animate-delay1500ms {
  animation-delay: 1500ms;
}
.animate-delay1600ms {
  animation-delay: 1600ms;
}
.animate-delay1700ms {
  animation-delay: 1700ms;
}
.animate-delay1800ms {
  animation-delay: 1800ms;
}

.fadein_l {
  opacity: 0;
}

.fadein_r {
  opacity: 0;
}

.fadein {
  opacity: 0;
}

.fadein_u {
  opacity: 0;
}

.fadein_u--s {
  opacity: 0;
}

.bounce {
  opacity: 0;
}

.scroll_effect.se_active .fadein_l {
  opacity: 0;
  animation-duration: 0.35s;
  animation-name: fadein_l;
  animation-timing-function: cubic-bezier(0.5, 1, 0.89, 1);
  animation-fill-mode: forwards;
}
.scroll_effect.se_active .fadein_r {
  opacity: 0;
  animation-duration: 0.4s;
  animation-name: fadein_r;
  animation-timing-function: cubic-bezier(0.5, 1, 0.89, 1);
  animation-fill-mode: forwards;
}
.scroll_effect.se_active .fadein {
  opacity: 0;
  animation-duration: 0.35s;
  animation-name: fadein;
  animation-timing-function: linear;
  animation-fill-mode: forwards;
}
.scroll_effect.se_active .fadein_u {
  opacity: 0;
  animation-duration: 0.4s;
  animation-name: fadein_u;
  animation-timing-function: cubic-bezier(0.5, 1, 0.89, 1);
  animation-fill-mode: forwards;
}
.scroll_effect.se_active .fadein_u--s {
  opacity: 0;
  animation-duration: 0.4s;
  animation-name: fadein_u--s;
  animation-timing-function: cubic-bezier(0.5, 1, 0.89, 1);
  animation-fill-mode: forwards;
}
.scroll_effect.se_active .scale {
  transform-origin: 50% 50%;
  opacity: 0;
  animation-duration: 0.4s;
  animation-name: scale;
  animation-timing-function: cubic-bezier(0.5, 1, 0.89, 1);
  animation-fill-mode: forwards;
}
.scroll_effect.se_active .bounce {
  opacity: 0;
  animation-duration: 0.4s;
  animation-name: scale;
  animation-timing-function: cubic-bezier(0.34, 1.56, 0.64, 1);
  animation-fill-mode: forwards;
}

@keyframes fadein_l {
  0% {
    opacity: 0;
    transform: translateX(-10vw) translateY(0.5vw);
  }
  100% {
    opacity: 1;
    transform: translateX(0) translateY(0);
  }
}
@keyframes fadein_r {
  0% {
    opacity: 0;
    transform: translateX(70px);
  }
  100% {
    opacity: 1;
    transform: translateX(0);
  }
}
@keyframes fadein_u {
  0% {
    opacity: 0;
    transform: translateY(100px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes fadein_u--s {
  0% {
    opacity: 0;
    transform: translateY(40px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes fadein {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes scale {
  0% {
    opacity: 0;
    transform: scale(1.4) rotate(-50deg);
  }
  100% {
    opacity: 1;
    transform: scale(1) rotate(0);
  }
}
@keyframes movedown {
  0% {
    transform: translateY(-100%);
  }
  10% {
    transform: translateY(-100%);
  }
  75% {
    transform: translateY(-3px);
  }
  100% {
    transform: translateY(-3px);
  }
}
.p-teaser {
  background: url(../images/index_teaser_bg_sp.jpg) no-repeat center top/100% auto;
  display: flex;
  justify-content: center;
  align-items: center;
  height: 82.6vw;
}
.p-teaser__logo {
  text-align: center;
}
.p-teaser__logo img {
  min-width: 136px;
  width: 36.2vw;
}
.p-teaser__bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
}
@media screen and (min-width: 1024px) {
  .p-teaser {
    background: url(../images/index_teaser_bg.jpg) no-repeat center top/1420px auto;
    display: flex;
    justify-content: center;
    align-items: center;
    height: 326px;
  }
  .p-teaser__logo img {
    width: 207px;
  }
  .p-teaser__bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 0;
    display: flex;
    justify-content: center;
  }
  .p-teaser__bg img {
    flex-shrink: 0;
    width: 1420px;
  }
}
@media screen and (min-width: 1420px) {
  .p-teaser {
    background: url(../images/index_teaser_bg.jpg) no-repeat center top/100% auto;
    display: flex;
    justify-content: center;
    align-items: center;
    height: 23vw;
  }
  .p-teaser__logo img {
    width: 207px;
  }
  .p-teaser__bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
  }
  .p-teaser__bg img {
    width: 100%;
  }
}

.p-status {
  position: absolute;
  top: 20px;
  right: 20px;
  z-index: 100;
  color: white;
  width: 210px;
  height: 126px;
  padding: 10px 15px;
  background: url(../images/status_bg_sp.svg) no-repeat center center/contain;
}
.p-status__item {
  position: relative;
  margin-bottom: 10px;
}
.p-status__item:hover .p-status__bubble {
  transform-origin: 0 25%;
  animation: bubble 0.3s cubic-bezier(0.34, 1.56, 0.64, 1) forwards;
}
.p-status__item.show-bubble .p-status__bubble {
  transform-origin: 0 25%;
  animation: bubble 0.3s cubic-bezier(0.34, 1.56, 0.64, 1) forwards;
}
.p-status__heading {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  margin-bottom: 5px;
}
.p-status__arrow {
  width: 5px;
  margin-right: 2px;
}
.p-status__name {
  display: flex;
  align-items: baseline;
  font-size: 1rem;
}
.p-status__num {
  font-size: 1.35rem;
  letter-spacing: -0.1em;
}
.p-status__meter {
  height: 12.5px;
  background: white;
  position: relative;
  border: solid 2px white;
  overflow: hidden;
}
.p-status__meter span {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 50%;
  height: 100%;
  transform: translateX(-100%);
}
.p-status__meter.plasticbag span {
  background-image: linear-gradient(180deg, rgb(255, 233, 59) 49%, rgb(249, 190, 45) 50%);
}
.p-status__meter.cleaning span {
  background-image: linear-gradient(180deg, rgb(70, 206, 146) 49%, rgb(0, 151, 102) 50%);
}
.p-status__bubble {
  position: absolute;
  left: 0;
  bottom: -55px;
  height: 49px;
  min-width: 146px;
  display: inline-block;
  font-size: 1rem;
  padding: 15px;
  z-index: 1;
  opacity: 0;
  pointer-events: none;
  background: url(../images/status_bl_l.png) no-repeat left center/auto 49px, url(../images/status_bl_r.png) no-repeat right center/auto 49px;
}
@media screen and (min-width: 1024px) {
  .p-status {
    position: absolute;
    top: 50px;
    right: 50px;
    z-index: 100;
    color: white;
    width: 361px;
    height: 139.5px;
    padding: 16px 24px;
    background: url(../images/status_bg.svg) no-repeat center center/contain;
  }
  .p-status__item {
    position: relative;
    margin-bottom: 16px;
  }
  .p-status__item:hover .p-status__bubble {
    transform-origin: 0 25%;
    animation: bubble 0.3s cubic-bezier(0.34, 1.56, 0.64, 1) forwards;
  }
  .p-status__heading {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    margin-bottom: 4px;
  }
  .p-status__arrow {
    width: 6.3px;
    margin-right: 4px;
  }
  .p-status__name {
    font-size: 1.3rem;
  }
  .p-status__num {
    font-size: 1.46rem;
    letter-spacing: -0.1em;
  }
  .p-status__meter {
    height: 14.2px;
    background: white;
    position: relative;
    border: solid 2px white;
    overflow: hidden;
  }
  .p-status__meter span {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 50%;
    height: 100%;
    transform: translateX(-100%);
  }
  .p-status__meter.plasticbag span {
    background-image: linear-gradient(180deg, rgb(255, 233, 59) 49%, rgb(249, 190, 45) 50%);
  }
  .p-status__meter.cleaning span {
    background-image: linear-gradient(180deg, rgb(70, 206, 146) 49%, rgb(0, 151, 102) 50%);
  }
  .p-status__bubble {
    position: absolute;
    left: 0;
    bottom: -100px;
    height: 91px;
    min-width: 246px;
    display: inline-block;
    font-size: 1.4rem;
    padding: 25px;
    opacity: 0;
    pointer-events: none;
    background: url(../images/status_bl_l.png) no-repeat left center/auto 91px, url(../images/status_bl_r.png) no-repeat right center/auto 91px;
  }
}

@keyframes meter {
  0% {
    transform: translateX(-100%);
  }
  100% {
    transform: translateX(0);
  }
}
@keyframes bubble {
  from {
    opacity: 0;
    transform: scale(0.7);
  }
  to {
    opacity: 1;
    transform: scale(1);
  }
}
.animation-blink {
  animation: blink 0.5s step-end infinite alternate;
}
.animation-blink-r {
  animation: blink 0.5s step-end 0.5s infinite alternate;
}
.animation-sway {
  transform-origin: center bottom;
  animation: sway 1.2s ease-in-out infinite alternate;
}

@keyframes blink {
  50% {
    opacity: 0;
  }
}
@keyframes sway {
  0%, 100% {
    transform: rotate(10deg);
  }
  50% {
    transform: rotate(-10deg);
  }
}
.slick-arrow {
  position: absolute;
  top: calc(50% - 10px);
  display: block;
  width: 32px;
  height: 32px;
  padding: 0;
  cursor: pointer;
  z-index: 10;
  border: none;
}
.slick-prev {
  left: 6%;
  background: url(../images/slick_prev.svg) no-repeat center center/cover;
}
.slick-next {
  right: 6%;
  background: url(../images/slick_next.svg) no-repeat center center/cover;
}
.slick-track {
  display: flex !important;
}
.slick-slide {
  height: auto !important;
}
@media screen and (min-width: 1024px) {
  .slick-arrow {
    position: absolute;
    top: calc(50% - 30px);
    display: block;
    width: 40px;
    height: 40px;
    padding: 0;
    cursor: pointer;
    z-index: 10;
    border: none;
  }
  .slick-prev {
    left: 10%;
    background: url(../images/slick_prev.svg) no-repeat center center/cover;
  }
  .slick-next {
    right: 10%;
    background: url(../images/slick_next.svg) no-repeat center center/cover;
  }
}

.u-font-noto, body {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
}

.u-font-dot, .home .main__menu-item a, .home .desc__inner, .collection .status, .p-status {
  font-family: "DotGothic16", sans-serif;
  font-weight: 400;
  font-style: normal;
}

.u-font-silkscreen, .collection .status__num, .p-status__num {
  font-family: "Silkscreen", sans-serif;
  font-weight: 400;
  font-style: normal;
}

.u-mt0 {
  margin-top: 0px;
}

.u-mt10 {
  margin-top: 10px;
}

.u-mt20 {
  margin-top: 20px;
}

.u-mt30 {
  margin-top: 30px;
}

.u-mt40 {
  margin-top: 40px;
}

.u-mt50 {
  margin-top: 50px;
}

.u-mt60 {
  margin-top: 60px;
}

.u-mt70 {
  margin-top: 70px;
}

.u-mt80 {
  margin-top: 80px;
}

.u-mt90 {
  margin-top: 90px;
}

.u-mt100 {
  margin-top: 100px;
}

@media screen and (max-width: 767px) {
  .u-sm-mt0 {
    margin-top: 0px;
  }
}

@media screen and (max-width: 767px) {
  .u-sm-mt10 {
    margin-top: 10px;
  }
}

@media screen and (max-width: 767px) {
  .u-sm-mt20 {
    margin-top: 20px;
  }
}

@media screen and (max-width: 767px) {
  .u-sm-mt30 {
    margin-top: 30px;
  }
}

@media screen and (max-width: 767px) {
  .u-sm-mt40 {
    margin-top: 40px;
  }
}

@media screen and (max-width: 767px) {
  .u-sm-mt50 {
    margin-top: 50px;
  }
}

@media screen and (max-width: 767px) {
  .u-sm-mt60 {
    margin-top: 60px;
  }
}

@media screen and (max-width: 767px) {
  .u-sm-mt70 {
    margin-top: 70px;
  }
}

@media screen and (max-width: 767px) {
  .u-sm-mt80 {
    margin-top: 80px;
  }
}

@media screen and (max-width: 767px) {
  .u-sm-mt90 {
    margin-top: 90px;
  }
}

@media screen and (max-width: 767px) {
  .u-sm-mt100 {
    margin-top: 100px;
  }
}

.u-mb0 {
  margin-bottom: 0px;
}

.u-mb10 {
  margin-bottom: 10px;
}

.u-mb20 {
  margin-bottom: 20px;
}

.u-mb30 {
  margin-bottom: 30px;
}

.u-mb40 {
  margin-bottom: 40px;
}

.u-mb50 {
  margin-bottom: 50px;
}

.u-mb60 {
  margin-bottom: 60px;
}

.u-mb70 {
  margin-bottom: 70px;
}

.u-mb80 {
  margin-bottom: 80px;
}

.u-mb90 {
  margin-bottom: 90px;
}

@media screen and (max-width: 767px) {
  .u-sm-mb0 {
    margin-bottom: 0px;
  }
}

@media screen and (max-width: 767px) {
  .u-sm-mb10 {
    margin-bottom: 10px;
  }
}

@media screen and (max-width: 767px) {
  .u-sm-mb20 {
    margin-bottom: 20px;
  }
}

@media screen and (max-width: 767px) {
  .u-sm-mb30 {
    margin-bottom: 30px;
  }
}

@media screen and (max-width: 767px) {
  .u-sm-mb40 {
    margin-bottom: 40px;
  }
}

@media screen and (max-width: 767px) {
  .u-sm-mb50 {
    margin-bottom: 50px;
  }
}

@media screen and (max-width: 767px) {
  .u-sm-mb60 {
    margin-bottom: 60px;
  }
}

@media screen and (max-width: 767px) {
  .u-sm-mb70 {
    margin-bottom: 70px;
  }
}

@media screen and (max-width: 767px) {
  .u-sm-mb80 {
    margin-bottom: 80px;
  }
}

@media screen and (max-width: 767px) {
  .u-sm-mb90 {
    margin-bottom: 90px;
  }
}

@media screen and (max-width: 767px) {
  .u-sm-mb100 {
    margin-bottom: 100px;
  }
}

.u-pt0 {
  padding-top: 0px;
}

.u-pt10 {
  padding-top: 10px;
}

.u-pt20 {
  padding-top: 20px;
}

.u-pt30 {
  padding-top: 30px;
}

.u-pt40 {
  padding-top: 40px;
}

.u-pt50 {
  padding-top: 50px;
}

.u-pt60 {
  padding-top: 60px;
}

.u-pt70 {
  padding-top: 70px;
}

.u-pt80 {
  padding-top: 80px;
}

.u-pt90 {
  padding-top: 90px;
}

@media screen and (max-width: 767px) {
  .u-sm-pt0 {
    padding-top: 0px;
  }
}

@media screen and (max-width: 767px) {
  .u-sm-pt10 {
    padding-top: 10px;
  }
}

@media screen and (max-width: 767px) {
  .u-sm-pt20 {
    padding-top: 20px;
  }
}

@media screen and (max-width: 767px) {
  .u-sm-pt30 {
    padding-top: 30px;
  }
}

@media screen and (max-width: 767px) {
  .u-sm-pt40 {
    padding-top: 40px;
  }
}

@media screen and (max-width: 767px) {
  .u-sm-pt50 {
    padding-top: 50px;
  }
}

@media screen and (max-width: 767px) {
  .u-sm-pt60 {
    padding-top: 60px;
  }
}

@media screen and (max-width: 767px) {
  .u-sm-pt70 {
    padding-top: 70px;
  }
}

@media screen and (max-width: 767px) {
  .u-sm-pt80 {
    padding-top: 80px;
  }
}

@media screen and (max-width: 767px) {
  .u-sm-pt90 {
    padding-top: 90px;
  }
}

@media screen and (max-width: 767px) {
  .u-sm-pt100 {
    padding-top: 100px;
  }
}

.u-pb0 {
  padding-bottom: 0px;
}

.u-pb10 {
  padding-bottom: 10px;
}

.u-pb20 {
  padding-bottom: 20px;
}

.u-pb30 {
  padding-bottom: 30px;
}

.u-pb40 {
  padding-bottom: 40px;
}

.u-pb50 {
  padding-bottom: 50px;
}

.u-pb60 {
  padding-bottom: 60px;
}

.u-pb70 {
  padding-bottom: 70px;
}

.u-pb80 {
  padding-bottom: 80px;
}

.u-pb90 {
  padding-bottom: 90px;
}

@media screen and (max-width: 767px) {
  .u-sm-pb0 {
    padding-bottom: 0px;
  }
}

@media screen and (max-width: 767px) {
  .u-sm-pb10 {
    padding-bottom: 10px;
  }
}

@media screen and (max-width: 767px) {
  .u-sm-pb20 {
    padding-bottom: 20px;
  }
}

@media screen and (max-width: 767px) {
  .u-sm-pb30 {
    padding-bottom: 30px;
  }
}

@media screen and (max-width: 767px) {
  .u-sm-pb40 {
    padding-bottom: 40px;
  }
}

@media screen and (max-width: 767px) {
  .u-sm-pb50 {
    padding-bottom: 50px;
  }
}

@media screen and (max-width: 767px) {
  .u-sm-pb60 {
    padding-bottom: 60px;
  }
}

@media screen and (max-width: 767px) {
  .u-sm-pb70 {
    padding-bottom: 70px;
  }
}

@media screen and (max-width: 767px) {
  .u-sm-pb80 {
    padding-bottom: 80px;
  }
}

@media screen and (max-width: 767px) {
  .u-sm-pb90 {
    padding-bottom: 90px;
  }
}

@media screen and (max-width: 767px) {
  .u-sm-pb100 {
    padding-bottom: 100px;
  }
}

.u-text-primary {
  color: #20534C;
}

.u-text-secondary {
  color: #E2F800;
}

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

.u-text-small {
  font-size: 1rem;
}

.u-text-center {
  text-align: center;
}

.u-text-left {
  text-align: left;
}

.u-text-right {
  text-align: right;
}

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

.u-bg-primary {
  background: #E2F800;
}

.u-bg-secondary {
  background: #E2F800;
}

.u-bg-tertiary {
  background: #f3ecda;
}

.u-pos--relative {
  position: relative;
}
.u-pos--absolute {
  position: absolute;
}

.u-dn-sm {
  display: none !important;
}
@media screen and (min-width: 768px) {
  .u-dn-sm {
    display: inherit !important;
  }
}

.u-dn-lg {
  display: none !important;
}
@media screen and (max-width: 1023px) {
  .u-dn-lg {
    display: inherit !important;
  }
}

.u-dn-md {
  display: none !important;
}
@media screen and (min-width: 1024px) {
  .u-dn-md {
    display: inherit !important;
  }
}