@charset "UTF-8";
/************************************************/
.mv {
  height: 1000px;
  width: 100%;
  position: relative;
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  justify-content: center;
  align-items: flex-start; }
  .mv .character {
    position: absolute;
    content: "";
    bottom: -50px;
    right: 20px; }
    .mv .character img {
      aspect-ratio: 171/240;
      width: 100%;
      max-width: 171px;
      height: auto; }
  .mv h1 {
    max-width: 1600px;
    width: calc(100% - 100px);
    margin: 0 auto;
    font: 6rem/1.6em "Noto Sans JP", YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
    font-weight: 700;
    color: #fff; }
    .mv h1 span {
      margin: 0 0 25px;
      display: block;
      background: url("../image/index/mv_txt.svg") center center no-repeat;
      background-size: contain;
      aspect-ratio: 393/50;
      width: 100%;
      max-width: 393px;
      height: auto;
      overflow: hidden;
      text-indent: 100%;
      white-space: nowrap; }
    .mv h1 small {
      margin: 20px 0 0;
      font: 1.5rem/1.8em "Noto Sans JP", YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
      font-weight: 500;
      display: block; }
  .mv .video {
    height: 100%;
    width: 100%;
    position: absolute;
    z-index: -1; }
    .mv .video video, .mv .video img {
      height: 100%;
      width: 100%;
      object-fit: cover; }

@media (max-width: 1024px) {
  .mv {
    height: 850px; }
    .mv h1 {
      font: 5.8rem/1.6em "Noto Sans JP", YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
      font-weight: 700; } }
/*max-width:1024px*/
@media (max-width: 768px) {
  .mv {
    height: 850px; }
    .mv .character {
      position: absolute;
      content: "";
      bottom: 20px;
      right: 20px; }
      .mv .character img {
        aspect-ratio: 171/240;
        width: 100%;
        max-width: 150px;
        height: auto; }
    .mv h1 {
      max-width: 1600px;
      width: calc(100% - 60px);
      margin: 0 auto;
      font: 7vw/1.8em "Noto Sans JP", YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
      font-weight: 700;
      padding: 0 0 50px; }
      .mv h1 span {
        margin: 0 0 20px;
        max-width: 393px;
        width: 65%; }
      .mv h1 small {
        margin: 20px 0 0;
        font: 1.3rem/1.8em "Noto Sans JP", YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
        font-weight: 500;
        display: block; } }
/*max-width:768px*/
@media (max-width: 480px) {
  .mv {
    height: 850px; }
    .mv .character {
      bottom: 10px;
      right: 10px; }
      .mv .character img {
        max-width: 160px; }
    .mv h1 {
      max-width: 350px;
      width: calc(100% - 40px);
      font: 3rem/1.8em "Noto Sans JP", YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
      font-weight: 700;
      padding: 50px 0 0 0; }
      .mv h1 span {
        max-width: 260px;
        width: 100%; }
      .mv h1 small {
        font: 1.2rem/1.8em "Noto Sans JP", YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
        font-weight: 500; } }
/*max-width:480px*/
/************************************************/
.btn {
  display: block;
  width: fit-content;
  font: 2rem/53px "Noto Sans JP", YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
  font-weight: 700;
  letter-spacing: 0.05em;
  padding: 0 70px 0 0;
  position: relative;
  text-decoration: none; }
  .btn:before {
    transition: .3s;
    display: block;
    width: 54px;
    height: 54px;
    right: 0;
    top: 0;
    background-color: #009B63;
    position: absolute;
    content: "";
    border-radius: 50%; }
  .btn:after {
    transition: .3s;
    position: absolute;
    content: "";
    width: 10px;
    height: 10px;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    top: 22px;
    right: 24px; }

@media (hover: hover) {
  .btn:hover:before {
    right: -5px; }
  .btn:hover:after {
    right: 19px; } }
@media (max-width: 480px) {
  .btn {
    font: 1.8rem/49px "Noto Sans JP", YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
    font-weight: 700;
    padding: 0 65px 0 0; }
    .btn:before {
      width: 50px;
      height: 50px; }
    .btn:after {
      top: 20px;
      right: 22px; } }
/*max-width:480px*/
/************************************************/
.about_all {
  padding: 130px 0 200px;
  position: relative;
  max-width: 1920px;
  width: 100%; }
  .about_all:before {
    transition: .3s;
    position: absolute;
    content: "";
    display: block;
    background: url("../image/index/about03.jpg") center center no-repeat;
    background-size: contain;
    aspect-ratio: 1/1;
    width: 100%;
    max-width: 200px;
    height: auto;
    left: 25%;
    top: auto;
    bottom: -30px;
    border-radius: 20px;
    z-index: 1; }
  .about_all:after {
    transition: .3s;
    border-radius: 20px;
    position: absolute;
    content: "";
    display: block;
    background: url("../image/index/about_02.jpg") center center no-repeat;
    background-size: contain;
    aspect-ratio: 1/1;
    width: 100%;
    max-width: 320px;
    height: auto;
    left: 6%;
    bottom: 200px;
    border-radius: 20px 0 0 20px; }

.about_box {
  max-width: 1600px;
  width: 100%;
  padding: 0 0 0 50px;
  margin: 0 0 0 auto;
  position: relative; }
  .about_box h2 {
    position: absolute;
    left: 50px;
    top: 0;
    color: #009B63;
    font: 20rem/1em "Oswald", Arial, Helvetica, "sans-serif";
    font-weight: 400;
    width: fit-content;
    margin: 0 0 30px; }
    .about_box h2 small {
      margin: 10px 0 0;
      letter-spacing: 0.05em;
      display: block;
      font: 2.6rem/1em "Noto Sans JP", YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
      font-weight: 500; }

.about_item {
  position: relative;
  z-index: 10;
  max-width: 1380px;
  padding: 150px  0 0 0;
  margin: 0 0 0 auto;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: flex-end; }
  .about_item .txt {
    position: relative;
    z-index: 10;
    width: 520px;
    border-radius: 20px;
    padding: 30px;
    margin: 135px 0 0;
    background-color: rgba(255, 255, 255, 0.8); }
  .about_item .pic {
    border-radius: 20px 0 0 20px;
    width: calc(100% - 540px);
    max-width: 800px;
    height: 600px;
    background: url("../image/index/about01.jpg") center left no-repeat;
    background-size: cover; }
  .about_item h3 {
    font: 3.4rem/1.6em "Noto Sans JP", YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
    font-weight: 700;
    letter-spacing: 0.05em;
    margin-bottom: 45px; }
  .about_item p {
    text-align: justify;
    text-justify: inter-ideograph;
    max-width: 410px;
    font: 1.8rem/2.2em "Noto Sans JP", YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
    letter-spacing: 0.05em;
    margin-bottom: 45px; }
  .about_item .btn {
    color: #009B63; }

@media (max-width: 1280px) {
  .about_all {
    padding: 130px 0 620px;
    position: relative; }
    .about_all:before {
      left: 380px;
      bottom: 10px; }
    .about_all:after {
      left: 40px;
      bottom: 220px; }

  .about_box {
    padding: 0 0 0 50px; }
    .about_box h2 {
      position: absolute;
      left: 65px;
      top: 0; }

  .about_item .txt {
    position: relative;
    z-index: 10;
    width: 520px;
    border-radius: 20px;
    padding: 0;
    margin: 140px 0 0;
    background-color: rgba(255, 255, 255, 0.8); }
  .about_item .pic {
    background: url("../image/index/about01.jpg") center left -30px no-repeat;
    background-size: cover; } }
/*max-width:1280px*/
@media (max-width: 1024px) {
  .about_all {
    padding: 130px 0 550px;
    position: relative; }
    .about_all:before {
      left: 52%;
      bottom: 10px;
      width: 180px; }
    .about_all:after {
      left: calc(50% - 280px);
      bottom: 200px;
      width: 280px; }

  .about_box {
    padding: 0; }
    .about_box h2 {
      width: calc(100% - 80px);
      margin: 0 auto 50px;
      position: relative;
      left: auto;
      top: auto; }

  .about_item {
    flex-direction: column;
    padding: 0; }
    .about_item .txt {
      order: 2;
      max-width: 800px;
      width: calc(100% - 100px);
      margin: 0 auto;
      padding: 0; }
    .about_item .pic {
      margin: 0 0 80px auto;
      order: 1;
      background: url("../image/index/about01.jpg") center left 0 no-repeat;
      background-size: cover;
      aspect-ratio: 800/640;
      width: calc(100% - 40px);
      max-width: 800px;
      height: auto; }
    .about_item h3 {
      font: 3.4rem/2em "Noto Sans JP", YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
      font-weight: 700; }
    .about_item p {
      max-width: 100%;
      width: 100%;
      margin: 0 0 45px; }
    .about_item .btn {
      margin: 0 0 0 auto; } }
/*max-width:1024px*/
@media (max-width: 768px) {
  .about_all {
    padding: 130px 0 470px;
    position: relative; }
    .about_all:before {
      left: auto;
      right: 5%;
      bottom: 10px;
      width: 150px; }
    .about_all:after {
      left: 5%;
      bottom: 170px;
      width: 250px; }

  .about_box {
    padding: 0; }
    .about_box h2 {
      width: calc(100% - 60px);
      margin: 0 auto 50px;
      font: 12rem/1em "Oswald", Arial, Helvetica, "sans-serif";
      font-weight: 400; }
      .about_box h2 small {
        margin: 10px 0 0;
        font: 2.3rem/1em "Noto Sans JP", YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
        font-weight: 500; }

  .about_item .txt {
    width: calc(100% - 60px); }
  .about_item .pic {
    margin: 0 0 50px auto;
    width: calc(100% - 30px); }
  .about_item h3 {
    font: 3rem/2em "Noto Sans JP", YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
    font-weight: 700; }
  .about_item p {
    margin: 0 0 35px; } }
/*max-width:768px*/
@media (max-width: 480px) {
  .about_all {
    padding: 50px 0 370px; }
    .about_all:before {
      right: 20px;
      width: 120px; }
    .about_all:after {
      left: 20px;
      bottom: 140px;
      width: 190px; }

  .about_box {
    padding: 0; }
    .about_box h2 {
      max-width: 350px;
      width: calc(100% - 40px);
      margin: 0 auto 25px;
      font: 8rem/1em "Oswald", Arial, Helvetica, "sans-serif";
      font-weight: 400; }
      .about_box h2 small {
        margin: 10px 0 0;
        font: 2.1rem/1em "Noto Sans JP", YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
        font-weight: 500; }

  .about_item .txt {
    width: calc(100% - 40px);
    max-width: 350px; }
  .about_item .pic {
    margin: 0 0 40px auto;
    width: calc(100% - 20px); }
  .about_item h3 {
    font: 2.65rem/2em "Noto Sans JP", YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
    font-weight: 700;
    margin: 0 0 30px; }
  .about_item p {
    font: 1.7rem/2.2em "Noto Sans JP", YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
    font-weight: 400;
    margin: 0 0 35px; } }
/*max-width:480px*/
/************************************************/
.news_all {
  width: 100%;
  position: relative;
  z-index: 20; }
  .news_all:before {
    position: absolute;
    content: "";
    display: block;
    height: calc(100% + 70px);
    width: 60%;
    background-color: #EFF8FE;
    right: 0;
    bottom: -175px;
    z-index: -14;
    border-radius: 20px 0 0 20px; }

.news_box {
  max-width: 1200px;
  width: calc(100% - 100px);
  margin: 0 auto; }

.news_item {
  max-width: 680px;
  width: 100%;
  margin: 0 0 0 auto;
  padding: 0 0 30px; }
  .news_item h2 {
    color: #0079C2;
    font: 20rem/1em "Oswald", Arial, Helvetica, "sans-serif";
    font-weight: 400;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: flex-end;
    width: fit-content;
    margin: 0 0 50px;
    position: relative; }
    .news_item h2 small {
      letter-spacing: 0.05em;
      margin: 0 0 10px 15px;
      display: block;
      font: 2.6rem/1em "Noto Sans JP", YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
      font-weight: 500; }
  .news_item ul {
    width: 100%;
    max-width: 680px; }
  .news_item li {
    border-bottom: 1px solid #C8C9C9; }
    .news_item li a {
      transition: .3s;
      display: -webkit-box;
      display: -ms-flexbox;
      display: -webkit-flex;
      display: flex;
      flex-direction: row;
      flex-wrap: wrap;
      -webkit-box-pack: justify;
      -ms-flex-pack: justify;
      -webkit-justify-content: flex-start;
      justify-content: flex-start;
      align-items: flex-start;
      padding: 20px 20px;
      text-decoration: none; }
    .news_item li time {
      color: #0079C2;
      font: 1.7rem/1.8em "Oswald", Arial, Helvetica, "sans-serif";
      font-weight: 400;
      letter-spacing: 0.03em;
      width: 140px; }
    .news_item li p {
      color: #4C4948;
      font: 1.8rem/1.8em "Noto Sans JP", YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
      font-weight: 500;
      width: calc(100% - 140px); }
  .news_item .btn {
    margin: 50px 0 0 auto;
    color: #0079C2; }
    .news_item .btn:before {
      background-color: #0079C2; }

@media (hover: hover) {
  .news_item li a:hover {
    background-color: #CEEDFF; } }
@media (max-width: 1280px) {
  .news_all:before {
    height: calc(100% + 70px);
    width: 80%; } }
/*max-width:1280px*/
@media (max-width: 1024px) {
  .news_all {
    margin: 100px 0 0 0; }
    .news_all:before {
      width: 100%;
      border-radius: 0; }

  .news_box {
    max-width: 1200px;
    width: 100%;
    margin: 0 auto; }

  .news_item {
    max-width: 100%;
    width: 100%;
    margin: 0 0 0 auto;
    padding: 0 75px 75px; }
    .news_item ul {
      width: 100%;
      max-width: 600px;
      margin: 0 0 0 auto; } }
/*max-width:1024px*/
@media (max-width: 768px) {
  .news_all:before {
    bottom: -136px; }

  .news_item {
    margin: 0 auto;
    padding: 0 30px 65px; }
    .news_item h2 {
      font: 12rem/1em "Oswald", Arial, Helvetica, "sans-serif";
      font-weight: 400;
      display: block; }
      .news_item h2 small {
        letter-spacing: 0.05em;
        margin: 10px 0 0;
        display: block;
        font: 2.3rem/1em "Noto Sans JP", YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
        font-weight: 500; }
    .news_item ul {
      width: 100%;
      max-width: 600px;
      margin: 0 0 0 auto; }
    .news_item li {
      display: block; }
      .news_item li p {
        width: 100%; } }
/*max-width:768px*/
@media (max-width: 480px) {
  .news_all:before {
    bottom: -116px; }

  .news_item {
    margin: 0 auto;
    padding: 0 20px 45px; }
    .news_item h2 {
      font: 8rem/1em "Oswald", Arial, Helvetica, "sans-serif";
      font-weight: 400;
      display: block;
      margin-bottom: 30px; }
      .news_item h2 small {
        letter-spacing: 0.05em;
        margin: 10px 0 0;
        display: block;
        font: 2.1rem/1em "Noto Sans JP", YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
        font-weight: 500; }
    .news_item ul {
      width: 100%;
      max-width: 350px;
      margin: 0 auto; }
    .news_item li {
      display: block; }
      .news_item li p {
        width: 100%; }
    .news_item .btn {
      margin: 30px 0 0 auto; } }
/*max-width:480px*/
/************************************************/
.activity_all {
  position: relative;
  z-index: 30; }

.activity_box {
  max-width: 1600px;
  width: calc(100% - 100px);
  margin: 0 auto; }

.activity_item {
  border-radius: 20px;
  background-color: #FABE00;
  max-width: 1280px;
  padding: 75px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  align-items: flex-start; }
  .activity_item h2 {
    color: #fff;
    font: 13rem/1em "Oswald", Arial, Helvetica, "sans-serif";
    font-weight: 400;
    display: block;
    width: fit-content;
    margin: 0;
    position: relative; }
    .activity_item h2 small {
      letter-spacing: 0.05em;
      margin: 10px 0 0 0;
      display: block;
      font: 2.6rem/1em "Noto Sans JP", YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
      font-weight: 500; }
  .activity_item div {
    max-width: 600px;
    width: calc(100% - 460px); }
  .activity_item li {
    border-bottom: 1px solid #707070; }
    .activity_item li a {
      display: -webkit-box;
      display: -ms-flexbox;
      display: -webkit-flex;
      display: flex;
      flex-direction: row;
      flex-wrap: wrap;
      -webkit-box-pack: justify;
      -ms-flex-pack: justify;
      -webkit-justify-content: flex-start;
      justify-content: flex-start;
      align-items: flex-start;
      padding: 20px;
      transition: .3s;
      text-decoration: none; }
    .activity_item li time {
      color: #4C4948;
      font: 1.7rem/35px "Oswald", Arial, Helvetica, "sans-serif";
      font-weight: 400;
      letter-spacing: 0.03em;
      margin: 0 0 0 15px; }
    .activity_item li .tab {
      display: block;
      width: 170px;
      height: 35px;
      border-radius: 25px;
      background-color: #fff;
      text-align: center;
      font: 1.5rem/32px "Noto Sans JP", YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
      font-weight: 700; }
    .activity_item li p {
      margin: 5px 0 0 0;
      color: #4C4948;
      font: 1.8rem/1.8em "Noto Sans JP", YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
      font-weight: 500;
      width: 100%; }
  .activity_item .btn {
    margin: 50px 0 0 auto;
    color: #4C4948; }
    .activity_item .btn:before {
      background-color: #4C4948; }

@media (hover: hover) {
  .activity_item li a:hover {
    background-color: #FFCC2C; } }
@media (max-width: 1280px) {
  .activity_box {
    max-width: 1600px;
    width: 100%;
    padding: 0 0 0 50px;
    margin: 0 auto; }

  .activity_item {
    border-radius: 20px 0 0 20px;
    background-color: #FABE00;
    padding: 75px 50px 75px 60px; } }
/*max-width:1280px*/
@media (max-width: 1024px) {
  .activity_box {
    max-width: 1600px;
    width: 100%;
    padding: 0;
    margin: 0 auto;
    border-radius: 0; }

  .activity_item {
    border-radius: 0;
    max-width: 1280px;
    padding: 75px;
    display: block; }
    .activity_item h2 {
      margin: 0 0 30px; }
    .activity_item div {
      max-width: 600px;
      width: 100%;
      margin: 0 0 0 auto; } }
/*max-width:1024px*/
@media (max-width: 768px) {
  .activity_box {
    max-width: 1600px;
    width: 100%;
    padding: 0;
    margin: 0 auto;
    border-radius: 0; }

  .activity_item {
    border-radius: 0;
    max-width: 1280px;
    padding: 60px 30px;
    display: block; }
    .activity_item h2 {
      font: 12rem/1em "Oswald", Arial, Helvetica, "sans-serif";
      font-weight: 400; }
      .activity_item h2 small {
        font: 2.3rem/1em "Noto Sans JP", YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
        font-weight: 500; }
    .activity_item h2 {
      margin: 0 0 30px; }
    .activity_item div {
      max-width: 600px;
      width: 100%;
      margin: 0 0 0 auto; } }
/*max-width:768px*/
@media (max-width: 480px) {
  .activity_box {
    max-width: 1600px;
    width: 100%;
    padding: 0;
    margin: 0 auto;
    border-radius: 0; }

  .activity_item {
    border-radius: 0;
    max-width: 1280px;
    padding: 50px 20px;
    display: block; }
    .activity_item h2 {
      font: 8rem/1em "Oswald", Arial, Helvetica, "sans-serif";
      font-weight: 400;
      margin: 0 auto 30px;
      max-width: 350px; }
      .activity_item h2 small {
        font: 2.1rem/1em "Noto Sans JP", YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
        font-weight: 500; }
    .activity_item div {
      max-width: 350px;
      width: 100%;
      margin: 0 auto; }
    .activity_item .btn {
      margin: 30px 0 0 auto;
      color: #4C4948; }
      .activity_item .btn:before {
        background-color: #4C4948; } }
/*max-width:480px*/
/************************************************/
.message_all {
  padding: 160px 0 0; }

.message_box {
  border: 1px solid #009B63;
  max-width: 1135px;
  width: calc(100% - 100px);
  margin: 0 auto;
  background-color: #FFFEF7;
  padding: 0 40px 60px;
  position: relative;
  border-radius: 20px; }
  .message_box h2 {
    text-align: center;
    font: 9rem/1em "Oswald", Arial, Helvetica, "sans-serif";
    font-weight: 400;
    letter-spacing: 0.05em;
    display: block;
    width: fit-content;
    margin: -50px auto 0;
    position: relative;
    color: #009B63; }
    .message_box h2 small {
      margin: 10px 0 0 0;
      display: block;
      font: 2.6rem/1em "Noto Sans JP", YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
      font-weight: 500; }
    .message_box h2 span {
      position: relative;
      z-index: 5; }
    .message_box h2:before {
      display: block;
      position: absolute;
      width: 120%;
      height: 10px;
      content: "";
      top: 43%;
      left: 50%;
      -webkit-transform: translate(-50%, -50%);
      /* Safari用 */
      transform: translate(-50%, -50%);
      z-index: 0;
      background-color: #FFFEF7; }
  .message_box .this_month {
    position: relative;
    font: 3.4rem/1em "Noto Sans JP", YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
    font-weight: 700;
    letter-spacing: 0.034em;
    padding: 0 100px;
    text-decoration: none;
    display: block;
    width: fit-content;
    margin: 70px auto 70px;
    transition: .3s; }
    .message_box .this_month:before, .message_box .this_month:after {
      position: absolute;
      content: "";
      aspect-ratio: 51/45;
      width: 100%;
      max-width: 51px;
      height: auto; }
    .message_box .this_month:after {
      top: -30px;
      left: 0;
      background: url("../image/index/message01.svg") center center no-repeat;
      background-size: contain; }
    .message_box .this_month:before {
      top: auto;
      bottom: -30px;
      left: auto;
      right: 0;
      background: url("../image/index/message02.svg") center center no-repeat;
      background-size: contain; }
  .message_box .btn {
    color: #009B63;
    margin: 0 auto; }
  .message_box .no_single {
    text-align: center;
    font-size: 2.2em !important; }

@media (hover: hover) {
  .message_box .this_month:hover {
    color: #93CCA7; } }
/*max-width:1280px*/
/*max-width:1024px*/
@media (max-width: 768px) {
  .message_all {
    padding: 120px 0 0; }

  .message_box {
    width: calc(100% - 60px);
    padding: 0 40px 50px; }
    .message_box h2 {
      font: 7rem/1em "Oswald", Arial, Helvetica, "sans-serif";
      font-weight: 400;
      margin: -50px auto 0; }
      .message_box h2 small {
        font: 2.1rem/1em "Noto Sans JP", YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
        font-weight: 500; }
      .message_box h2:before {
        top: 44%; }
    .message_box .this_month {
      font: 3rem/1em "Noto Sans JP", YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
      font-weight: 700;
      padding: 30px 0;
      margin: 80px auto; }
      .message_box .this_month:before, .message_box .this_month:after {
        max-width: 45px; } }
/*max-width:768px*/
@media (max-width: 480px) {
  .message_all {
    padding: 50px 0 0; }

  .message_box {
    width: calc(100% - 40px);
    max-width: 350px;
    padding: 40px 0 40px; }
    .message_box h2 {
      margin: 0 auto; }
      .message_box h2:before {
        display: none; }
    .message_box .this_month {
      font: 2.65rem/1em "Noto Sans JP", YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
      font-weight: 700;
      padding: 20px 0;
      margin: 80px auto; }
      .message_box .this_month:before, .message_box .this_month:after {
        max-width: 45px; } }
/*max-width:480px*/
/************************************************/
.bnr {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-start;
  max-width: 1135px;
  width: calc(100% - 100px);
  margin: 0 auto;
  padding: 140px 0 100px; }
  .bnr li {
    width: calc((100% - 55px)/2);
    aspect-ratio: 54/15;
    max-width: 540px;
    height: auto;
    margin-bottom: 55px;
    border: 1px solid #ccc; }
  .bnr a {
    display: block;
    width: 100%;
    height: 100%;
    overflow: hidden; }
  .bnr img {
    object-fit: cover;
    width: 100%;
    height: 100%; }

@media (hover: hover) {
  .bnr a:hover {
    opacity: 0.5; } }
/*max-width:1280px*/
@media (max-width: 1024px) {
  .bnr {
    width: calc(100% - 100px);
    margin: 0 auto;
    padding: 140px 0 120px; }
    .bnr li {
      width: calc((100% - 30px)/2);
      margin-bottom: 30px; } }
/*max-width:1024px*/
@media (max-width: 768px) {
  .bnr {
    width: calc(100% - 60px);
    padding: 80px 0 80px; }
    .bnr li {
      width: calc((100% - 10px)/2);
      margin-bottom: 10px; } }
/*max-width:768px*/
@media (max-width: 480px) {
  .bnr {
    width: calc(100% - 40px); }
    .bnr li {
      max-width: 350px;
      width: 100%;
      margin: 0 auto 10px; } }
/*max-width:480px*/
