@charset "UTF-8";
/* --------------------------------------------------------------
   共通
-------------------------------------------------------------- */
body {
  min-width: 11.6rem;
  color: #373737;
  font-size: 0.21rem;
}

a {
  color: #000;
}

.wrapper {
  overflow: hidden;
}

.container {
  width: 12.3rem;
  margin: 0 auto;
}

.container_min {
  width: 9.9rem;
  margin: 0 auto;
}

@media screen and (min-width: 769px) {
  .btn_anim a img {
    transition: 0.5s;
  }
  .btn_anim a:hover {
    opacity: 1;
  }
  .btn_anim a:hover img {
    transform: scale(1.1, 1.1);
  }
}
.fixed_btn {
  width: 100%;
  opacity: 0;
  visibility: hidden;
  text-align: center;
  transform: translateY(1.72rem);
  transition: 0.4s;
  position: fixed;
  z-index: 15;
  bottom: 0;
  left: 0;
  background-color: #ffe7e9;
}
.fixed_btn a {
  display: block;
}
.fixed_btn img {
  margin-top: -0.35rem;
  width: 4.285rem;
}

.fixed_btn.show {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
  position: fixed;
  bottom: 0;
}

.fixed_btn.is_in {
  visibility: hidden;
  transform: translateY(1.72rem);
}

.mv {
  padding: 0.76rem 0 0;
  height: 9.36rem;
  position: relative;
  background-size: cover;
  background-image: url(../images/mv/bg.jpg);
}
.mv .container {
  width: 9rem;
  margin: 0 auto;
}
.mv .balloon {
  position: absolute;
  top: 0;
  right: 1.95rem;
}
.mv .balloon img {
  width: 3.89rem;
}
.mv .cat img {
  width: 3.44rem;
}
.mv .logo {
  margin: 0.35rem 0 0.17rem;
}
.mv .logo img {
  width: 3.28rem;
}
.mv .wrap {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
}
.mv .txt01 img {
  width: 3.275rem;
}
.mv .txt02 img {
  width: 5.5rem;
}
.mv .notes {
  margin: 0.6rem 0 0.1rem;
  text-align: center;
  font-size: 0.16rem;
}
.mv .btn {
  text-align: center;
}
.mv .btn img {
  width: 4.95rem;
}
.mv .scroll {
  text-align: center;
}
.mv .scroll img {
  width: 0.35rem;
}

.sec01 {
  margin-top: -0.3rem;
}
.sec01 .before .container {
  width: 12rem;
  margin: 0 auto;
  position: relative;
}
.sec01 .before .img01,
.sec01 .before .img02 {
  position: relative;
  z-index: 2;
}
.sec01 .before .img01 {
  margin-right: 0.3rem;
  text-align: right;
}
.sec01 .before .img01 img {
  width: 6.84rem;
}
.sec01 .before .img02 {
  margin: -2rem 0 0 0.25rem;
}
.sec01 .before .img02 img {
  width: 6.87rem;
}
.sec01 .after {
  padding: 0.5rem 0 0;
  position: relative;
  z-index: 1;
}
.sec01 .after::before {
  content: "";
  width: 100%;
  height: 8.86rem;
  position: absolute;
  top: -2rem;
  left: 0;
  background-repeat: no-repeat;
  background-size: 100%;
  background-image: url(../images/sec01/before_bg.png);
}
.sec01 .after .tit {
  margin-bottom: 0.5rem;
  text-align: center;
  position: relative;
  z-index: 1;
}
.sec01 .after .tit img {
  width: 5.125rem;
}
.sec01 .after .video {
  width: 6.14rem;
  margin: 0.7rem auto 0;
  position: relative;
  z-index: 1;
}
.sec01 .after .video iframe {
  width: 6.14rem;
  height: 3.5rem;
}

.sec02 {
  margin-top: -1.7rem;
  padding: 2.4rem 0 0;
  text-align: center;
  background-repeat: repeat;
  background-image: url(../images/sec02/bg.png);
  position: relative;
}
.sec02::before {
  content: "";
  width: 100%;
  height: 7.88rem;
  position: absolute;
  top: -2rem;
  left: 0;
  background-repeat: no-repeat;
  background-size: 100%;
  background-image: url(../images/sec02/bg_add01.png);
}
.sec02 .cat {
  text-align: center;
  position: relative;
  z-index: 1;
}
.sec02 .cat img {
  width: 4.48rem;
}
.sec02 .tit01 {
  margin: 0.05rem 0 0.28rem;
}
.sec02 .tit01 img {
  width: 7.02rem;
}
.sec02 .txt01 img {
  width: 6.89rem;
}
.sec02 .txt01 p {
  margin: 0.2rem auto 0;
  font-size: 0.13rem;
  line-height: 1.4;
  width: fit-content;
  text-align: left;
  text-indent: -1em;
}
.sec02 .txt02 {
  margin: 1rem 0 0.35rem;
  position: relative;
  z-index: 2;
}
.sec02 .txt02::before, .sec02 .txt02::after {
  content: "";
  position: absolute;
  z-index: -1;
  background-repeat: no-repeat;
  background-size: 100%;
}
.sec02 .txt02::before {
  width: 11.58rem;
  height: 6.66rem;
  top: calc(50% - 3.15rem);
  left: calc(50% - 5.79rem);
  background-image: url(../images/sec02/txt02_bg.png);
}
.sec02 .txt02::after {
  width: 100%;
  height: 8.66rem;
  top: 4.6rem;
  left: 0;
  background-image: url(../images/sec02/bg_add02.png);
}
.sec02 .txt02 img {
  width: 4.37rem;
}
.sec02 .tit02 {
  margin-bottom: 1rem;
  position: relative;
  z-index: 2;
}
.sec02 .tit02 img {
  width: 6.32rem;
}
.sec02 .item {
  padding: 0 0 0.5rem;
  position: relative;
}
.sec02 .item::before {
  content: "";
  width: 100%;
  position: absolute;
  z-index: 2;
  bottom: 0;
  left: 0;
  background-repeat: no-repeat;
  background-size: 100%;
}
.sec02 .item:not(.item01) {
  background-color: #ffffff;
}
.sec02 .item_tit {
  position: relative;
  z-index: 2;
}
.sec02 .item_tit img {
  width: 6.33rem;
}
.sec02 .item_txt {
  width: 7rem;
  margin: 0 auto;
  text-align: left;
  line-height: 1.66;
  color: #373737;
  position: relative;
  z-index: 2;
  font-feature-settings: "palt";
}
.sec02 .item_txt .strong {
  font-weight: 700;
}
.sec02 .item_txt p:not(:last-of-type) {
  margin-bottom: 0.17rem;
}
.sec02 .item_voice {
  position: relative;
  z-index: 2;
  margin: 0.4rem auto 0;
}
.sec02 .item_voice img {
  width: 8.09rem;
}
.sec02 .item01::before {
  height: 14.17rem;
  background-image: url(../images/sec02/item01_bg.png);
  position: absolute;
  left: 0;
  bottom: 0;
}
.sec02 .item01::after {
  content: "";
  width: 100%;
  height: 13rem;
  position: absolute;
  bottom: 0;
  left: 0;
  background-color: #ffffff;
}
.sec02 .item01 .item_tit {
  margin-bottom: 0.5rem;
}
.sec02 .item01 .main_skill {
  margin: 0 auto;
  width: 10.96rem;
  position: relative;
  z-index: 2;
  display: flex;
  justify-content: space-between;
}
.sec02 .item01 .main_skill li button {
  background-color: transparent;
  border: none;
  cursor: pointer;
  outline: none;
  padding: 0;
  appearance: none;
}
.sec02 .item01 .main_skill li img {
  width: 2.74rem;
}
.sec02 .item01 .img01,
.sec02 .item01 .img02 {
  position: relative;
  z-index: 2;
}
.sec02 .item01 .img02 {
  margin: 0.25rem 0 0.2rem;
}
.sec02 .item01 .img02 img {
  width: 10.5rem;
}
.sec02 .item01 .item_txt .strong {
  color: #f65c66;
}
.sec02 .item02 {
  padding: 0.38rem 0 0.65rem;
}
.sec02 .item02::before {
  height: 11.28rem;
  background-image: url(../images/sec02/item02_bg.png);
}
.sec02 .item02 .item_tit {
  margin-bottom: 0.65rem;
}
.sec02 .item02 .item_txt .strong {
  color: #288686;
}
.sec02 .item02 .item02_btn {
  margin-top: 0.45rem;
  position: relative;
  z-index: 2;
}
.sec02 .item02 .item02_btn button {
  background-color: transparent;
  border: none;
  cursor: pointer;
  outline: none;
  padding: 0;
  appearance: none;
}
.sec02 .item02 .item02_btn img {
  width: 3.52rem;
}
.sec02 .item02 .item_voice {
  margin-top: 0.5rem;
}
.sec02 .item03 {
  padding: 0.45rem 0 0.6rem;
}
.sec02 .item03::before {
  height: 12.67rem;
  background-image: url(../images/sec02/item03_bg.png);
}
.sec02 .item03 .img01 {
  margin: 0.72rem 0 0.2rem;
  position: relative;
  z-index: 2;
}
.sec02 .item03 .img01 img {
  width: 5.49rem;
}
.sec02 .item03 .item_txt .strong {
  color: #f65c66;
}
.sec02 .item04 {
  padding: 0.42rem 0 0.5rem;
}
.sec02 .item04::before {
  height: 9.93rem;
  background-image: url(../images/sec02/item04_bg.png);
}
.sec02 .item04 .item_tit {
  margin-bottom: 0.54rem;
}
.sec02 .item04 .item_txt .strong {
  color: #288686;
}
.sec02 .item05 {
  padding: 0.52rem 0 1.8rem;
}
.sec02 .item05::before {
  height: 10.3rem;
  background-image: url(../images/sec02/item05_bg.png);
}
.sec02 .item05 .item_tit {
  margin-bottom: 0.5rem;
}
.sec02 .item05 .item_txt .strong {
  color: #f65c66;
}

.sec_add_01 {
  margin: 0 0 1.1rem;
}

.cta .before {
  padding: 1.08rem 0 2.7rem;
  text-align: center;
  background-repeat: repeat;
  background-image: url(../images/cta/bg.png);
  position: relative;
}
.cta .before::before, .cta .before::after {
  content: "";
  width: 100%;
  position: absolute;
  left: 0;
  background-repeat: no-repeat;
  background-size: 100%;
}
.cta .before::before {
  height: 6.07rem;
  top: 0;
  background-image: url(../images/cta/bg_add01.png);
}
.cta .before::after {
  height: 4.57rem;
  bottom: 0;
  background-image: url(../images/cta/bg_add02.png);
}
.cta .before .tit01 img {
  width: 6.11rem;
}
.cta .before .txt {
  margin: 0.3rem 0 0.27rem;
}
.cta .before .txt img {
  width: 4.33rem;
}
.cta .before .lists {
  width: 6.46rem;
  margin: 0.22rem auto 0.16rem;
  display: flex;
  justify-content: space-between;
}
.cta .before .lists img {
  width: 2.91rem;
}
.cta .before .tit03 img {
  width: 4.83rem;
}
.cta .before .txt02 {
  margin: 0.2rem 0 0.35rem;
}
.cta .before .txt02 img {
  width: 10rem;
}
.cta .before .notes {
  margin: 0.5rem 0 0.1rem;
  text-align: center;
  font-size: 0.16rem;
  position: relative;
  z-index: 1;
}
.cta .before .btn {
  text-align: center;
  position: relative;
  z-index: 1;
}
.cta .before .btn img {
  width: 4.95rem;
}
.cta .after {
  margin-top: -2rem;
  text-align: center;
  position: relative;
}
.cta .after::before {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  top: -4.5rem;
  left: 0;
  background: linear-gradient(360deg, #ffffff, transparent);
}
.cta .after::after {
  content: "";
  width: 100%;
  height: 9.04rem;
  position: absolute;
  top: 0;
  left: 0;
  background-repeat: no-repeat;
  background-size: 100%;
  background-image: url(../images/cta/after_bg.png);
}
.cta .after .after_tit01 {
  margin-bottom: 0.25rem;
  position: relative;
  z-index: 1;
}
.cta .after .after_tit01 img {
  width: 4.07rem;
}
.cta .after .after_box_tit01 {
  position: relative;
  z-index: 1;
}
.cta .after .after_box_tit01 img {
  width: 2.54rem;
}
.cta .after .after_box {
  position: relative;
  z-index: 1;
}
.cta .after .after_box::before, .cta .after .after_box::after {
  content: "";
  width: 10.14rem;
  height: 1.14rem;
  position: absolute;
  left: calc(50% - 5.07rem);
  background-repeat: no-repeat;
  background-size: 100%;
  background-image: url(../images/cta/brackets.png);
}
.cta .after .after_box::before {
  top: 1rem;
}
.cta .after .after_box::after {
  bottom: -0.65rem;
  transform: rotate(180deg);
}
.cta .after .after_box_tit02 {
  margin: 0.1rem 0 0.45rem;
  font-size: 0.3rem;
  font-weight: 700;
}
.cta .after .after_box_tit02 .strong {
  color: #288686;
}
.cta .after .after_img img {
  width: 8.02rem;
}

.cta03 .before {
  padding: 1.08rem 0 3rem;
}
.cta03 .before .notes {
  margin-top: 0.3rem;
}
.cta03 .balloon {
  margin: 0.5rem auto 0 -0.4rem;
}
.cta03 .balloon img {
  width: 4.27rem;
}

.sec03 {
  padding: 2.45rem 0 0;
  position: relative;
  z-index: 2;
}
.sec03::before {
  content: "";
  width: 100%;
  height: 26.13rem;
  position: absolute;
  z-index: -1;
  top: 3rem;
  left: 0;
  background-repeat: no-repeat;
  background-size: 100%;
  background-image: url(../images/sec03/bg.png);
}
.sec03 .after {
  position: relative;
}
.sec03 .after::before {
  content: "";
  width: 100%;
  height: 26.12rem;
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  background-repeat: no-repeat;
  background-size: 100%;
  background-image: url(../images/sec03/bg02.png);
}
.sec03 .after .tit {
  margin: 0 0 0.3rem;
  text-align: center;
  position: relative;
}
.sec03 .after .tit::before {
  content: "";
  width: 9.99rem;
  height: 3.7rem;
  position: absolute;
  z-index: -1;
  top: -0.5rem;
  left: calc(50% - 4.995rem);
  background-repeat: no-repeat;
  background-size: 100%;
  background-image: url(../images/sec03/pic.png);
}
.sec03 .after .tit img {
  width: 8.76rem;
}
.sec03 .after .lists {
  width: 10rem;
  margin: 0 auto;
  position: relative;
  z-index: 1;
}
.sec03 .after .lists li {
  padding: 0.6rem 0.5rem 0.4rem;
  background-image: linear-gradient(0deg, transparent calc(100% - 1px), #eef3f8 calc(100% - 1px)), linear-gradient(90deg, transparent calc(100% - 1px), #eef3f8 calc(100% - 1px));
  background-size: 0.3rem 0.3rem;
  background-repeat: repeat;
  background-position: center center;
  border: 1px solid #ffc2c2;
  background-color: #ffffff;
  border-radius: 0.5rem;
}
.sec03 .after .lists li:not(:last-of-type) {
  margin-bottom: 0.45rem;
}
.sec03 .after .wrap {
  padding: 0 0.4rem 0 0.05rem;
  margin-bottom: 0.5rem;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.sec03 .after .name img {
  width: auto;
  height: 0.98rem;
}
.sec03 .after .graph img {
  width: 3.77rem;
}
.sec03 .after .user_pic {
  padding-left: 0.25rem;
  margin-right: 0.45rem;
  float: left;
}
.sec03 .after .user_pic img {
  width: 1.59rem;
}
.sec03 .after .user_txt {
  width: 6.7rem;
  margin-left: auto;
  line-height: 1.66;
  letter-spacing: 0.08em;
}
.sec03 .after .user_txt p:not(:last-of-type) {
  margin-bottom: 0.2rem;
}

.sec04 {
  padding: 1.6rem 0;
  text-align: center;
  position: relative;
  z-index: 1;
  background-repeat: repeat;
  background-image: url(../images/sec02/bg.png);
}
.sec04::before {
  content: "";
  position: absolute;
  width: 100%;
  height: 15%;
  top: -3rem;
  left: 0;
  background: linear-gradient(#ffffff, transparent);
}
.sec04::after {
  content: "";
  width: 100%;
  height: 6.2rem;
  position: absolute;
  z-index: -1;
  top: -3rem;
  left: 0;
  background-repeat: no-repeat;
  background-size: 100%;
  background-image: url(../images/sec04/bg_add01.png);
}
.sec04 .cat01,
.sec04 .tit01 {
  position: relative;
  z-index: 1;
}
.sec04 .cat01 img {
  width: 4.62rem;
}
.sec04 .tit01 {
  margin: 0.15rem 0 0.4rem;
}
.sec04 .tit01 img {
  width: 6.03rem;
}
.sec04 .lists li:not(:last-of-type) {
  margin-bottom: 2rem;
}
.sec04 .list_tit {
  position: relative;
  z-index: 1;
}
.sec04 .list_tit img {
  width: auto;
  height: 3.22rem;
}
.sec04 .contents {
  width: 10rem;
  margin: -1.5rem auto;
  display: flex;
  justify-content: space-between;
  align-items: center;
  background-color: #ffffff;
  border: 1px solid #ee847b;
  border-radius: 0.5rem;
  position: relative;
  z-index: 1;
}
.sec04 .list_txt {
  width: 5rem;
  text-align: left;
  line-height: 1.66;
}
.sec04 .list_txt .strong {
  font-weight: 700;
  color: #f65c66;
}
.sec04 .item01 .contents {
  padding: 0.1rem 0.5rem 0.1rem 0.25rem;
}
.sec04 .item01 .list_img img {
  width: 3.35rem;
}
.sec04 .item02 .contents {
  padding: 0.3rem 0.5rem 0.4rem 0.25rem;
}
.sec04 .item02 .list_img img {
  width: 3.4rem;
}
.sec04 .item03 .contents {
  padding: 0.3rem 0.5rem 0.3rem 0.25rem;
}
.sec04 .item03 .list_img img {
  width: 3.68rem;
}
.sec04 .balloon {
  margin: 2rem 0 0.4rem 0.7rem;
}
.sec04 .balloon img {
  width: 4.96rem;
}
.sec04 .cat02 img {
  width: 4.73rem;
}
.sec04 .after {
  position: relative;
}
.sec04 .after::before {
  content: "";
  width: 8.73rem;
  height: 8.64rem;
  position: absolute;
  z-index: -1;
  top: calc(50% - 3.6rem);
  left: calc(50% - 4.365rem);
  background-repeat: no-repeat;
  background-size: 100%;
  background-image: url(../images/sec04/bg.png);
}
.sec04 .tit02 {
  margin: 0.5rem 0 0.4rem 0.55rem;
}
.sec04 .tit02 img {
  width: 6.7rem;
}
.sec04 .after_txt {
  width: 6.15rem;
  margin: 0 auto;
  text-align: left;
  line-height: 1.66;
}
.sec04 .after_txt .strong {
  font-weight: 700;
  color: #f65c66;
}
.sec04 .after_txt p:not(:last-of-type) {
  margin-bottom: 0.2rem;
}

.sec05 {
  padding: 0.55rem 0 0.55rem;
  position: relative;
}
.sec05::before {
  content: "";
  position: absolute;
  width: 100%;
  height: 20%;
  top: -2.4rem;
  left: 0;
  z-index: 1;
  background: linear-gradient(360deg, #ffffff, transparent);
}
.sec05::after {
  content: "";
  width: 100%;
  height: 14.66rem;
  position: absolute;
  z-index: 1;
  top: -2rem;
  left: 0;
  background-repeat: no-repeat;
  background-size: 100%;
  background-image: url(../images/sec05/bg_add.png);
}
.sec05 .tit {
  text-align: center;
}
.sec05 .tit img {
  width: 3.2rem;
}
.sec05 .f_txt {
  margin: 0.45rem 0 0.8rem;
  text-align: center;
  line-height: 2.5;
  font-weight: 700;
  letter-spacing: 0.08em;
  position: relative;
}
.sec05 .f_txt::after {
  content: "";
  width: 0.54rem;
  height: 0.08rem;
  position: absolute;
  bottom: -0.35rem;
  left: calc(50% - 0.27rem);
  background-repeat: no-repeat;
  background-size: 100%;
  background-image: url(../images/sec05/add.png);
}
.sec05 .f_txt p:not(:last-of-type) {
  margin-bottom: 0.4rem;
}
.sec05 .blur {
  animation-name: blurAnime;
  animation-duration: 1s;
  animation-fill-mode: forwards;
}
@keyframes blurAnime {
  from {
    filter: blur(10px);
    transform: scale(1.02);
    opacity: 0;
  }
  to {
    filter: blur(0);
    transform: scale(1);
    opacity: 1;
  }
}
.sec05 .blurTrigger {
  opacity: 0;
}
.sec05 .txt {
  text-align: center;
}
.sec05 .txt img {
  width: 7.195rem;
}
.sec05 .name {
  width: 7rem;
  margin: 0.35rem auto 0 auto;
  text-align: right;
}
.sec05 .name img {
  width: 3.18rem;
}

.sec06 {
  padding: 1.5rem 0 1.2rem;
}
.sec06 .tit {
  margin-bottom: 0.57rem;
  text-align: center;
}
.sec06 .tit img {
  width: 1.645rem;
}

.ac {
  width: 10rem;
  margin: 0 auto;
}

.ac_parent {
  padding: 0.29rem 0 0.33rem 1.04rem;
  position: relative;
  font-weight: 700;
  letter-spacing: 0.03em;
  cursor: pointer;
  color: #ffffff;
  border-radius: 0.2rem 0.2rem 0 0;
  background-color: #f65c66;
}
.ac_parent::before, .ac_parent::after {
  content: "";
  position: absolute;
  z-index: 5;
  top: 50%;
  transform: translateY(-50%);
  background-repeat: no-repeat;
  background-size: 100%;
}
.ac_parent::before {
  width: 0.2rem;
  height: 0.16rem;
  left: 0.5rem;
  background-image: url(../images/sec06/q.png);
}
.ac_parent::after {
  width: 0.19rem;
  height: 0.11rem;
  right: 0.47rem;
  transform: rotate(180deg);
  transition: transform 0.4s;
  background-image: url(../images/sec06/arrow.png);
}
.ac_parent:not(:first-of-type) {
  margin-top: 0.47rem;
}

.ac_child {
  display: none;
  position: relative;
  padding: 0.2rem 0.2rem 0.25rem 1rem;
  letter-spacing: 0.03em;
  line-height: 1.66;
  border-right: 1px solid #f65c66;
  border-bottom: 1px solid #f65c66;
  border-left: 1px solid #f65c66;
  border-radius: 0 0 0.2rem 0.2rem;
}
.ac_child .strong {
  font-weight: 700;
  color: #f65c66;
}
.ac_child::after {
  content: "";
  width: 0.2rem;
  height: 0.16rem;
  position: absolute;
  top: 0.35rem;
  left: 0.48rem;
  background-repeat: no-repeat;
  background-size: 100%;
  background-image: url(../images/sec06/a.png);
}

.ac_parent.open::after {
  transform: rotate(0deg);
}

.sec07 {
  padding: 0 0 1.3rem;
  text-align: center;
  position: relative;
}
.sec07 .blur {
  animation-name: blurAnime;
  animation-duration: 1s;
  animation-fill-mode: forwards;
}
@keyframes blurAnime {
  from {
    filter: blur(10px);
    transform: scale(1.02);
    opacity: 0;
  }
  to {
    filter: blur(0);
    transform: scale(1);
    opacity: 1;
  }
}
.sec07 .blurTrigger {
  opacity: 0;
}
.sec07 .tit img {
  width: 3.39rem;
}
.sec07 .pic {
  margin: 0.3rem 0 0.6rem;
}
.sec07 .pic img {
  width: 7.62rem;
}
.sec07 .logo img {
  width: 3.93rem;
}

.modal-overlay {
  align-items: center;
  background: rgba(0, 0, 0, 0.5);
  bottom: 0;
  display: flex;
  justify-content: center;
  left: 0;
  position: fixed;
  right: 0;
  top: 0;
  z-index: 100;
}

.modal-container {
  background-color: #fff;
  max-height: 90vh;
  max-width: 8.1rem;
  overflow-y: auto;
  position: relative;
}

.modal-header {
  align-items: center;
  display: flex;
  justify-content: space-between;
}

.modal-close {
  border: 0;
  position: absolute;
  right: 0.2rem;
  top: 0.2rem;
  width: 0.5rem;
  height: 0.5rem;
  background: url(../images/sec02/modal_close_w.png) center/100% auto no-repeat;
}

#modal_teacher .modal-close {
  background: url(../images/sec02/modal_close_p.png) center/100% auto no-repeat;
}

.modal-header .modal-close::before {
  content: "✕";
}

.modal-content {
  margin: 0;
}
.modal-content picture {
  display: inline-block;
}

.modal-open {
  display: block;
  margin: 100px auto;
}

/* モーダルアニメーション */
@keyframes mmfadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes mmfadeOut {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}
@keyframes mmslideIn {
  from {
    transform: translateY(15%);
  }
  to {
    transform: translateY(0);
  }
}
@keyframes mmslideOut {
  from {
    transform: translateY(0);
  }
  to {
    transform: translateY(-10%);
  }
}
.micromodal-slide {
  display: none;
}

.micromodal-slide.is-open {
  display: block;
}

.micromodal-slide[aria-hidden=false] .modal-overlay {
  animation: mmfadeIn 0.3s cubic-bezier(0, 0, 0.2, 1);
}

.micromodal-slide[aria-hidden=false] .modal-container {
  animation: mmslideIn 0.3s cubic-bezier(0, 0, 0.2, 1);
}

.micromodal-slide[aria-hidden=true] .modal-overlay {
  animation: mmfadeOut 0.3s cubic-bezier(0, 0, 0.2, 1);
}

.micromodal-slide[aria-hidden=true] .modal-container {
  animation: mmslideOut 0.3s cubic-bezier(0, 0, 0.2, 1);
}

.micromodal-slide .modal-container,
.micromodal-slide .modal-overlay {
  will-change: transform;
}/*# sourceMappingURL=style.css.map */