@charset "UTF-8";
/*====================================================
FONT
====================================================*/
@font-face {
  font-family: "Corporate Logo Bold ver3";
  src: url("../fonts/Corporate-Logo-Bold-ver3.woff2") format("woff2"), url("../fonts/Corporate-Logo-Bold-ver3.woff") format("woff");
  font-weight: 700;
}
/*====================================================
RESET
====================================================*/
#CONTENTSAREA {
  padding-bottom: 0;
}

#CONTENTSAREA main p {
  padding-bottom: 0;
}

#CONTBG {
  width: unset;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-weight: normal;
}

#CONTENTSAREA #BREADCLUMB {
  position: absolute;
  max-width: 1400px;
  width: 100%;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  padding-top: 120px;
}

#CONTENTSAREA #BREADCLUMB ul {
  width: 100%;
}

#CONTENTSAREA #BREADCLUMB ul li a {
  color: #237CBC;
}

@media screen and (max-width: 1400px) {
  #CONTENTSAREA #BREADCLUMB {
    padding-left: 1rem;
  }
}
@media screen and (max-width: 767px) {
  #CONTENTSAREA #BREADCLUMB {
    padding-top: 0.875rem;
  }
  #CONTENTSAREA #BREADCLUMB ul {
    width: 100%;
  }
}
.for-sp {
  display: none;
}

@media screen and (max-width: 576px) {
  .for-sp {
    display: block;
  }
}
/*====================================================
COMMON
====================================================*/
html {
  font-size: 62.5%;
  overflow-x: hidden;
}

body {
  font-size: 1.6rem;
  background: #FDFBD5;
}

main {
  font-family: "Noto Sans JP", noto, "メイリオ", "Meiryo", "游ゴシック", "Yu Gothic", "游ゴシック体", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", sans-serif;
  font-size: 16px;
  line-height: 1.6;
  background-image: url(../images/2025/img-main-bg.png);
  background-position: 0 47%;
  background-repeat: no-repeat;
  background-size: contain;
}

main * {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

main a {
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
}

main a:hover {
  opacity: 0.7;
  text-decoration: none;
}

main a img {
  -webkit-transition: inherit;
  transition: inherit;
  width: 100%;
}

main a:hover img {
  opacity: unset;
}

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

#CONTBG {
  position: relative;
}

@media screen and (max-width: 1440px) {
  main {
    font-size: 12px;
  }
}
@media screen and (max-width: 1400px) {
  main {
    padding-top: 4em;
  }
}
@media screen and (max-width: 767px) {
  main {
    padding-top: 0;
  }
}
@media screen and (max-width: 576px) {
  main {
    background-image: url(../images/2025/img-main-bg_sp.png);
    background-position: 0 50%;
    font-size: 16px;
  }
}
@media screen and (max-width: 450px) {
  main {
    padding-top: 1em;
  }
}
#mmi-wrapper {
  overflow-x: hidden;
}

/*====================================================
mainvisual
====================================================*/
.mainvisual {
  margin-bottom: -5em;
  min-width: 1000px;
  position: relative;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}

@media screen and (max-width: 900px) {
  .mainvisual {
    min-width: 900px;
    position: relative;
  }
}
@media screen and (max-width: 767px) {
  .mainvisual {
    min-width: auto;
  }
}
/*====================================================
report
====================================================*/
.report {
  max-width: 80em;
  width: 100%;
  padding-inline: 1.25em;
  margin-inline: auto;
  padding-bottom: 5em;
}

.activity {
  background: #FAEE00;
  padding: 3.25em 5em;
  max-width: 47.8125em;
  width: 100%;
  border: 0.0625em solid #181878;
  margin-left: auto;
}

.activity__title {
  max-width: 13.375em;
  margin-inline: auto;
  position: relative;
}

.activity__column {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 45% auto;
  grid-template-columns: 45% auto;
  margin-top: 2.5em;
}

.activity__detail {
  position: relative;
}

.activity__textarea {
  background: #fff;
  padding: 1.25em 1.875em;
}

#CONTENTSAREA .activity__date {
  font-size: 1em;
  color: #1D2089;
  background: #C7DBF3;
  padding: 0.3125em 0.5em;
  padding-bottom: 0.3125;
  line-height: 1;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  border-radius: 5.625em;
}

.activity__text {
  font-size: 1.125em;
  color: #1D2089;
  text-align: start;
  margin-top: 1em;
}

.activity__link {
  background: #181878;
  max-width: 13.1875em;
  width: 100%;
  padding: 0.875em 2em;
  position: absolute;
  bottom: 0;
  right: 0;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 10px;
}

.activity__link img {
  width: 7.625em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.activity__linkArrow {
  display: inline-block;
  vertical-align: middle;
  color: #FAEE00;
  line-height: 1;
  position: relative;
  width: 1em;
  height: 0.08em;
  background: currentColor;
}

.activity__linkArrow::before {
  content: "";
  width: 0.6em;
  height: 0.6em;
  border: 0.15em solid #FAEE00;
  border-left: 0;
  border-bottom: 0;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  -webkit-transform-origin: top right;
          transform-origin: top right;
  position: absolute;
  top: 50%;
  right: -0.05em;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.theme {
  max-width: 66.125em;
  width: 100%;
  padding: 5em 7.5em;
  background: #fff;
  border: 0.125em solid #1C4199;
  position: relative;
  margin-top: 8.75em;
}

.theme::before {
  position: absolute;
  content: "";
  left: -0.625em;
  top: -0.625em;
  background-image: url(../images/2025/treat-theme-top-left.svg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  width: 5.625em;
  height: 5.625em;
}

.theme::after {
  position: absolute;
  content: "";
  right: -0.625em;
  bottom: -0.625em;
  background-image: url(../images/2025/treat-theme-bottom-right.svg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  width: 5.625em;
  height: 5.625em;
}

.theme__treat--right {
  width: 10.875em;
  height: 10.875em;
  position: absolute;
  right: -5.4375em;
  top: -5.4375em;
}

.theme__treat--left {
  width: 31.25em;
  height: 25.3125em;
  position: absolute;
  left: -25.625em;
  bottom: -5em;
}

#CONTENTSAREA .theme__head {
  max-width: 23.75em;
  width: 100%;
  background: #181878;
  border-radius: 5.625em;
  margin-inline: auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  height: 3.125em;
}

#CONTENTSAREA .theme__head img {
  max-width: 16.625em;
  width: 100%;
}

.theme__title {
  max-width: 31.25em;
  width: 100%;
  margin: 0.9375em auto 2.5em;
}

.theme__text {
  text-align: start;
  color: #181878;
  font-size: 1.125em;
}

@media screen and (max-width: 1000px) {
  .report {
    margin-top: 5em;
  }
}
@media screen and (max-width: 767px) {
  .theme__treat--left {
    width: 18.75em;
    height: 15.1875em;
    left: -12.625em;
    bottom: 5em;
  }
}
@media screen and (max-width: 576px) {
  .report {
    margin-top: 12em;
    padding-bottom: 6em;
  }
  .activity {
    padding: 2.5em 1.875em;
  }
  .activity__title {
    max-width: 48vw;
  }
  .activity__column {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
    margin-top: 1.25em;
  }
  .activity__img picture {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
  .activity__textarea {
    padding: 1.25em;
  }
  #CONTENTSAREA .activity__date {
    font-size: 4.44vw;
    padding: 0.5em 0.625em;
  }
  .activity__text {
    margin-top: 1em;
    font-size: 5.33vw;
  }
  .activity__link {
    position: unset;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    max-width: 100%;
  }
  .activity__link img {
    width: 33vw;
  }
  .theme {
    padding: 3.125em 1.875em;
    margin-top: 4.625em;
  }
  #CONTENTSAREA .theme__head {
    max-width: 100%;
    height: 2.4em;
  }
  #CONTENTSAREA .theme__head img {
    max-width: 38vw;
  }
  .theme__treat--right,
  .theme__treat--left {
    display: none;
  }
  .theme::before,
  .theme::after {
    width: 3.125em;
    height: 3.125em;
  }
  .theme::before {
    top: -0.45em;
    left: -0.45em;
  }
  .theme::after {
    right: -0.45em;
    bottom: -0.45em;
  }
  .theme__title {
    margin-bottom: 1.5em;
    max-width: 100%;
  }
  .theme__text {
    font-size: 5.33vw;
    margin-top: 1.5em;
  }
}
/*====================================================
member
====================================================*/
.member {
  position: relative;
  padding-bottom: 7.5em;
}

.member::after {
  content: "";
  clip-path: polygon(100% 24%, 100% 100%, 0 78%, 0 0);
  background: #1C4199;
  height: 39vw;
  display: block;
  position: absolute;
  top: 5em;
  width: 100%;
  z-index: 1;
}

.member__inner {
  position: relative;
}

.member__inner::before {
  content: "";
  clip-path: polygon(100% 0%, 100% 100%, 0 100%, 0 83%);
  background: #DC4E96;
  height: 13.375em;
  display: block;
  position: relative;
  z-index: 2;
}

.member__inner::after {
  content: "";
  clip-path: polygon(100% 0, 100% 13%, 0 100%, 0 0);
  background: #DC4E96;
  height: 11.375em;
  display: block;
  position: relative;
  z-index: 2;
}

.member__column {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: (1fr)[6];
  grid-template-columns: repeat(6, 1fr);
  position: relative;
  z-index: 10;
}

.member__column::before {
  content: "";
  background-image: url(../images/2025/img-member-title.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  position: absolute;
  top: -5em;
  right: 3.5em;
  width: 47em;
  height: 3.1em;
}

.member__item {
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  aspect-ratio: 32/45;
  position: relative;
}

.member__item:nth-child(1) {
  background-image: url(../images/2025/img-member-takeshita.png);
}

.member__item:nth-child(2) {
  background-image: url(../images/2025/img-member-inoue.png);
}

.member__item:nth-child(3) {
  background-image: url(../images/2025/img-member-otomo.png);
}

.member__item:nth-child(4) {
  background-image: url(../images/2025/img-member-sano.png);
}

.member__item:nth-child(5) {
  background-image: url(../images/2025/img-member-kano.png);
}

.member__item:nth-child(6) {
  background-image: url(../images/2025/img-member-saito.png);
}

.member__item img {
  position: absolute;
  width: 1.25em;
  left: 0;
  top: 0.75em;
}

.member__profile {
  max-width: 15.625em;
  width: 100%;
  background: rgba(220, 78, 150, 0.8);
  padding: 1em 1.25em;
  position: absolute;
  right: 0;
  bottom: 0;
  min-height: 7.5em;
}

.member__name {
  font-size: 1.625em;
  color: #fff;
  text-align: start;
  line-height: 1;
}

.member__text {
  font-size: 0.875em;
  color: #fff;
  text-align: start;
  margin-top: 1em;
}

.memberAbout {
  max-width: 50.375em;
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 2.5em 3.125em;
  gap: 1.8em;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background: #fff;
  border: 0.125em solid #181878;
  margin-top: 3.125em;
  z-index: 10;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  left: 50%;
  position: absolute;
}

.memberAbout__title {
  max-width: 26em;
  width: 100%;
}

.memberAbout__text {
  font-size: 1.125em;
  color: #333;
  text-align: start;
  margin-top: 1.5em;
}

@media screen and (max-width: 1200px) {
  .member__column::before {
    width: 35em;
    height: 1.9em;
  }
}
@media screen and (max-width: 1150px) and (min-width: 1000px) {
  .member__text {
    font-size: 0.75em;
  }
}
@media screen and (max-width: 1000px) {
  .member__column {
    -ms-grid-columns: (1fr)[3];
    grid-template-columns: repeat(3, 1fr);
  }
  .memberAbout {
    width: calc(100% - 2.5em);
  }
  .member::after {
    height: 119vw;
  }
}
@media screen and (max-width: 576px) {
  .member {
    padding-bottom: 0;
  }
  .member__column {
    -ms-grid-columns: (1fr)[2];
    grid-template-columns: repeat(2, 1fr);
  }
  .member__column::before {
    background-image: url(../images/2025/img-member-title_sp.png);
    top: -7em;
    right: 1.18em;
    width: 71vw;
    height: 18.2vw;
  }
  .member__item {
    aspect-ratio: 9/16;
  }
  .member__item img {
    width: 3.11vw;
  }
  .member__item:nth-child(1) {
    background-image: url(../images/2025/img-member-takeshita_sp.png);
  }
  .member__item:nth-child(2) {
    background-image: url(../images/2025/img-member-inoue_sp.png);
  }
  .member__item:nth-child(3) {
    background-image: url(../images/2025/img-member-otomo_sp.png);
  }
  .member__item:nth-child(4) {
    background-image: url(../images/2025/img-member-sano_sp.png);
  }
  .member__item:nth-child(5) {
    background-image: url(../images/2025/img-member-kano_sp.png);
  }
  .member__item:nth-child(6) {
    background-image: url(../images/2025/img-member-saito_sp.png);
  }
  .member::after {
    clip-path: polygon(100% 4%, 100% 100%, 0 97%, 0 0);
    height: 100%;
    top: 0;
  }
  .member__inner::after {
    height: calc(387px + 118vw);
    clip-path: polygon(100% 0, 100% 91%, 0 100%, 0 0);
  }
  .member__inner::before {
    clip-path: polygon(100% 0%, 100% 100%, 0 100%, 0 40%);
  }
  .member__profile {
    max-width: 100%;
    padding: 4vw 3.5vw;
    height: 28vw;
  }
  .member__item:nth-child(1) .member__profile,
  .member__item:nth-child(2) .member__profile {
    height: 33.7vw;
  }
  .member__name {
    font-size: 5.33vw;
  }
  .member__text {
    font-size: 3.56vw;
    margin-top: 1em;
  }
  .memberAbout {
    display: -ms-grid;
    display: grid;
    padding: 3.125em 1.875em;
  }
  .memberAbout__textarea {
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
  }
  .memberAbout__title {
    width: 66.67vw;
    margin-inline: auto;
  }
  .memberAbout__text {
    font-size: 5vw;
    margin-top: 1.5em;
  }
  .memberAbout__logo {
    width: 40vw;
    margin-inline: auto;
  }
}
/*====================================================
archive
====================================================*/
.archive {
  padding-block: 8.75em 8.4375em;
  position: relative;
}

.archive::after {
  position: absolute;
  content: "";
  background-image: url(../images/2025/treat-archive.svg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  width: 29.3125em;
  height: 31.625em;
  right: -2.5em;
  bottom: -7.5em;
  z-index: 1;
}

.archive__container {
  max-width: 90em;
  width: 100%;
  margin-inline: auto;
}

.archive__title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  max-width: 61.25em;
  width: 100%;
  background: #1C4199;
  height: 8.75em;
  position: relative;
  margin-inline: auto;
}

.archive__title:before {
  content: "";
  background-image: url(../images/2025/img-archive-photo-left.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  width: 24em;
  height: 14em;
  left: -10em;
  position: absolute;
}

.archive__title::after {
  content: "";
  background-image: url(../images/2025/img-archive-photo-right.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  width: 23.5em;
  height: 14em;
  right: -11.875em;
  position: absolute;
}

.archive__title img {
  max-width: 22.5em;
  width: 100%;
}

.archive__column {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 2.5em 1fr 2.5em 1fr 2.5em 1fr 2.5em 1fr;
  grid-template-columns: repeat(5, 1fr);
  gap: 2.5em;
  margin-top: 5em;
  padding-inline: 1.25em;
}

@media screen and (max-width: 1000px) {
  .archive__title:before,
  .archive__title::after {
    display: none;
  }
}
@media screen and (max-width: 767px) {
  .archive::after {
    width: 17.5875em;
    height: 18.975em;
  }
}
@media screen and (max-width: 576px) {
  .archive {
    padding-block: 5em;
  }
  .archive__title {
    height: 24vw;
  }
  .archive__title img {
    width: 80vw;
    height: 6.7vw;
  }
  .archive__column {
    -ms-grid-columns: 1fr 1.5em 1fr;
    grid-template-columns: repeat(2, 1fr);
    gap: 1.5em;
  }
  .archive::after {
    display: none;
  }
}
/*====================================================
contact
====================================================*/
.contact {
  background-image: url(../images/2025/img-contact-bg.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  height: 29.375em;
  position: relative;
  padding-inline: 1.5em;
}

.contact__container {
  background: #fff;
  max-width: 50.375em;
  width: 100%;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translateX(-50%) translateY(-50%);
          transform: translateX(-50%) translateY(-50%);
  padding: 4.0625em 1.25em 3.125em 1.25em;
}

.contact__container::before {
  content: "";
  background-image: url(../images/2025/icon-mail.svg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  width: 4.375em;
  height: 4.375em;
  top: -2.1875em;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  position: absolute;
}

.contact__inner {
  display: -ms-grid;
  display: grid;
  position: relative;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.contact__title {
  font-size: 1.875em;
  line-height: 1.46;
  color: #181878;
  font-weight: 700;
}

.contact__text {
  font-size: 1.5em;
  line-height: 1.83;
  color: #181878;
  font-weight: 700;
}

.contact__mail {
  font-size: 1.75em;
  line-height: 1.57;
  color: #181878;
  font-weight: 700;
}

.contact__mail span {
  color: #E9528E;
}

@media screen and (max-width: 1000px) {
  .contact__container {
    width: calc(100% - 3em);
  }
}
@media screen and (max-width: 576px) {
  .contact {
    background-image: url(../images/2025/img-contact-bg_sp.png);
    height: 41em;
  }
  .contact__title {
    font-size: 6.67vw;
  }
  .contact__text {
    font-size: 5.33vw;
  }
  .contact__mail {
    font-size: 6.22vw;
  }
}
/*# sourceMappingURL=2025.css.map */