@charset "utf-8";
/* CSS Document */

#mmi-container .cp-container{
  font-family: noto;
}
#mmi-container .cp-container .contents header h1{
  margin-bottom:3em;
}
#mmi-container .cp-container section{
  text-align: center;
  box-shadow: 0 8px 12px -6px rgba(0, 0, 0, 0.15);
  padding-bottom:40px;
}
#mmi-container .cp-container section h2 span{
  color:#f62938;
  font-size:26px;
  display:inline-block;
  margin-bottom:0.5em;
}
#mmi-container .cp-container section h2 + h4{
  margin-top:0.5em;
}
#mmi-container .cp-container section h3{
  font-size:18px;
  color:#f62938;
  margin-bottom:1.5em;
}
#mmi-container .cp-container section h4{
  font-size:24px;
  margin-bottom:1em;
  span{
    font-size:0.8em;
  }
}
#mmi-container .cp-container section .accordion{
  text-align: left;
  font-size:15px;
  background-color:#fbf7f4;
  padding:1em;
  box-sizing: border-box;
  width:95%;
  margin:0 auto 2em;
  display:none;
}

#mmi-container .cp-container section .btn a{
  font-size:16px;
  color:#f62837;
  display:inline-block;
  border:solid 1px;
  border-radius: 3em;
  padding:0.5em 0em;
  position:relative;
  transition-duration: 0.3s;
  width:15em;
}
#mmi-container .cp-container section .btn a:hover{
  opacity:0.7;
  text-decoration: none;
}
#mmi-container .cp-container section .btn a:after{
  content: "";
  vertical-align: middle;
  position: absolute;
  top: 50%;
  margin-top: -0.4em;
  right: 1em;
  width: 0.4em;
  height: 0.4em;
  border-top: 0.15em solid #EB0100;
  border-right: 0.15em solid #EB0100;
  -webkit-transform: rotate(135deg);
  transform: rotate(135deg);
}
#mmi-container .cp-container section .btn a.close:after{
  display:none;
}
#mmi-container .cp-container section .btn a.link:after{
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  margin-top: -0.2em;
}

#mmi-container .cp-container section .slogan{
  margin:2em 0;
}
#mmi-container .cp-container section .flex{
  display:flex;
  justify-content: space-between;
  > div{
    width:47%;
    border-top:2px solid #dde5ec;
    h5{
      display:flex;
      justify-content: center;
      align-items: center;
      height: 4em;
      line-height: 1.3;
      font-size:24px;
      +img{
        +p{
          font-size:18px;
          text-align: left;
          width:84%;
          margin-left:auto;
          margin-right:auto;
        }
      }
    }
  }
}

#mmi-container .cp-container section.vision{
  ul{
    width:80%;
    margin:0 auto;
    border:solid 1px #b6c7d6;
    box-sizing: border-box;
    padding:1em;
    li{
      font-size:18px;
      text-align: left;
      margin-bottom:0.5em;
      &:last-child{
        margin-bottom:0px;
      }
      span{
        display: inline-block;
        width: 2em;
        height: 2em;
        line-height: 2em;
        text-align: center;
        border-radius: 50%;
        background-color: #f73644;
        color: #FFF;  
        font-weight: bold;
        font-size: 0.6em;
        top:-0.4em;
        position:relative;
      }
    }
  }
}

#mmi-container .cp-container section.plan{
  h2{
    span{
      margin-bottom:1.5em;
    }
  }
  dl{
    text-align: left;
    width:90%;
    margin:0 auto;
    height: 300px;
    dt{
      font-size:20px;
      span{
        display: inline-block;
        width: 2em;
        height: 2em;
        line-height: 2em;
        text-align: center;
        border-radius: 50%;
        background-color: #f73644;
        color: #FFF;  
        font-weight: bold;
        font-size: 0.6em;
        top:-0.4em;
        position:relative;
      }
    }
    dd{
      font-size:16px;
      margin-bottom:0.5em;
    }
  }
}

#mmi-container .cp-container .modal {
  display: none;
  position: fixed;
  z-index: 1000;
  inset: 0;
}

#mmi-container .cp-container .modal-bg {
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.5);
}

#mmi-container .cp-container .modal-content {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -40%);
  max-width: 500px;
  width: 90%;
  padding: 30px;
  background: #fff;
  z-index: 1001;
  text-align: center;
}

#mmi-container .cp-container .modal-close {
  position: absolute;
  top: 0px;
  right: 15px;
  background: none;
  border: none;
  font-size: 50px;
  cursor: pointer;
}

#mmi-container .cp-container .modal-content h6 {
  font-size: 26px;
  text-align: center;
  margin-bottom: 0.5em;
  display:inline-block;
  border-bottom:1px solid #f62938;
}

#mmi-container .cp-container .modal-content h6 .number {
  color: #f62938;
  font-weight: bold;
  font-size:1.4em;
}
#mmi-container .cp-container .modal-content h6 .number + span{
  color: #f62938;
}

#mmi-container .cp-container .question-list {
  counter-reset: number;
  list-style: none;
  padding: 0;
}

#mmi-container .cp-container .question-list li {
  counter-increment: number;
  position: relative;
  padding-left: 2.5em;
  margin: 0.8em 0;
  font-size:18px;
  text-align: left;
}

#mmi-container .cp-container .question-list li::before {
  content: counter(number);
  position: absolute;
  left: 0;
  top: 0;
  background: #f62938;
  color: #fff;
  font-weight: bold;
  border-radius: 6px;
  width: 1.8em;
  height: 1.8em;
  text-align: center;
  line-height: 1.8em;
}

@media screen and (max-width:767px){
  
  #mmi-container .cp-container section {
    padding-bottom:7vw;
    margin-bottom:10vw!important;
    margin-left:-4vw;
    margin-right:-4vw;
    padding-left:4vw;
    padding-right:4vw;
    box-sizing: border-box;
    h2{
      span{
        font-size:5vw;
      }
    }
    h3{
      font-size:4vw;
    }
    h4{
      font-size:4.3vw;
      text-align: left;
    }
    .btn{
      a{
        font-size:3.8vw;
      }
    }
    .slogan{
      padding:0 5vw;
    }
    .flex{
      display:block;
      width:100%;
      margin:0 auto;
      > div{
        width:100%;
        &:first-child{
          border-top:none;
          padding-bottom:5vw;
        }
        h5{
          font-size:5vw;
          + img{
            width:100%;
            +p{
              font-size:3.8vw;
              width:100%;
            }
          }
        }
      }
    }
    &.vision{
      ul{
        width:100%;
        li{
          font-size:3.8vw;
        }
      }
    }
    &.plan{
      dl{
        width:100%;
        height: auto;
        margin-bottom:5vw;
        dt{
          font-size:4vw;
        }
        dd{
          font-size:3.8vw;
        }
      }
    }
    
  }
  
  
  
  #mmi-container .cp-container .question-list li {
    font-size: 3.8vw;
}
  #mmi-container .cp-container .modal-content h6{
    font-size:5vw;
  }
  
  #mmi-container .cp-container .modal-content {
    padding: 4vw;
}
  

}

