@charset "UTF-8";

*{
  box-sizing: border-box;
}

#mymelody50th_kuromi20th{
  font-family: "Zen Maru Gothic", serif;
}

.block-topic-path--list{
  font-family: YuGothic, "Yu Gothic Medium", "Yu Gothic", Meiryo, sans-serif;
}

.pane-contents{
  padding-bottom: 0;
}

img{
  max-width: 100%;
}

.pc{
  display: block;
}

.sp {
  display: none;
}

#mymelody50th_kuromi20th {
  text-align: center;
  font-size: 24px;
}

.bg{
  background-image: url(https://www.infirmiere.co.jp/img/usr/feature/fea_mymelody50th_kuromi20th/mymelody_kuromi_bg.jpg);
  background-attachment: fixed;
  background-size: cover;
  background-position: center;
  margin: 0 calc(50% - 50vw);
  width: 100vw;
}

.bg_inner{
  width: 1024px;
  padding: 0 30px;
  margin: 0 auto;
}

#mv {
  margin-bottom: 100px;
}

p {
  line-height: 1.5em;
}

.set h3{
  font-size:18px;
  text-align: left;
  line-height: 1.2;
  margin-bottom: 5px;
}

.set img {
  vertical-align: bottom;
  margin: 0;
  padding: 0;
}

.set .name {
  margin-top: 20px;
  text-align-last: left;
  font-size: 21px;
}

.set .value {
  margin-top: 10px;
  font-size: 40px;
}

.set .value span {
  font-size: 20px;
}

.set .detail {
  font-size: 28px;
  text-decoration: none;
  color: #ffffff;
  padding: 15px 70px 15px 80px;
  display: block;
}

.flex_item{
  width: 49%;
}

.flex_item:nth-of-type(odd){
  margin-right: 16px;
}

.heading{
  margin-bottom: 50px;
}

.arrow{
  margin-bottom: 50px;
}

/* <!-- #intro --> */
#intro{
  padding-top: 100px;
}

#intro .intro_inner{
  border-radius: 30px;
  background: rgba(255, 255, 255, 0.9);
  -webkit-backdrop-filter: blur(5px);
  backdrop-filter: blur(5px);
  font-size: 28px;
  margin-bottom: 100px;
}

#intro p{
  padding: 30px 30px 30px 80px;
  text-align: left;
  line-height: 1.2;
}

#intro img{
  border-radius: 30px 30px 0 0;
}

#intro .flexbox{
  display: flex;
  align-items: center;
  margin-left: 30px;
}

#intro .flexbox p{
  padding: 0;
}

#intro .flexbox img{
  width: 50px;
}

/* <!-- #item --> */
.flex_container{
  display: flex;
  flex-wrap: wrap;
}

.flex_container a{
  text-decoration: none;
}

.flex_container a:hover{
  opacity: 0.7;
  transition: 0.5s;
}

#item .title{
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 10px 0 5px 0;
  color: #FFF;
  background-color: #FF4C9C;
  margin: 0 calc(50% - 50vw);
  width: 100vw;
}

#item .title h2{
  font-size: 40px;
  font-weight: bold;
  text-align: center;
  line-height: 1.2;
}

#item .title p{
  width: 60px;
}

#item .sub_title h3{
  color: #FF4C9C;
  font-size: 24px;
  font-weight: bold;
}

#item .button p{
  font-family: YuGothic, "Yu Gothic Medium", "Yu Gothic", Meiryo, sans-serif;
  color: #000;
}

#item .button .detail{
  background-color: #FF4C9C;
  color: #FFF;
}

.flex_item{
  border-radius: 30px;
  background-color: #fff;
  background: rgba(255, 255, 255, 0.9);
  -webkit-backdrop-filter: blur(5px);
  backdrop-filter: blur(5px);
  padding: 20px;
}

.flex_item:nth-of-type(-n+2){
  margin-top: 50px;
  margin-bottom: 20px;
}



/* <!-- .click_banner --> */

.click_banner{
  padding: 100px 0;
}

.click_banner_inner{
  background-color: #0053AB;
  padding: 30px;
  border-radius: 40px;
}

.click_banner p{
  font-weight: bold;
  color: #fff;
  margin-bottom: 5px;
}

/* SP */

@media screen and (max-width: 520px) { /* SP */

.pc {
    display: none;
}

.sp {
    display: block;
}

.pane-main > div:last-child{
  padding-bottom: 0;
}

#mymelody50th_kuromi20th{
  padding-bottom: 0;
  background-image: none;
  background-attachment: scroll;
}

#mv {
  margin-bottom: 50px;
}

.bg{
  background-image: none;
}

.bg_inner{
  width: 100%;
}

h1 {
  margin-bottom: 10px;
}

h2 {
  background-color: transparent;
  font-weight: normal;
}

.title h2 {
  font-size: 20px;
  padding-left: 0;
}

.set .name {
  margin-top: 10px;
  font-size: 17px;
  letter-spacing: 0.03em;
  text-align: left;
}

.set .value {
  margin-top: 10px;
  font-size: 28px;
  line-height: 1;
}

.set .value span {
  font-size: 16px;
  letter-spacing: 0.01em;
}

.set .detail {
  margin-top: 10px;
  font-size: 20px;
  padding: 10px;
}

.set h3{
  font-size: 14px;
}

.heading{
  margin-bottom: 30px;
}

/* <!-- #intro --> */


#intro{
  padding: 30px;
  background-image: url(https://www.infirmiere.co.jp/img/usr/feature/fea_mymelody50th_kuromi20th/sp/mymelody_bg.jpg);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  margin: 0 calc(50% - 50vw);
  width: 100vw;
}

#intro .intro_inner{
  font-size: 0px;
  margin-bottom: 0;
}

#intro p{
  font-size: 12px;
  text-align: left;
  padding: 10px 20px 10px 40px;
  letter-spacing: 0;
}

#intro .flexbox{
  margin: 2px 10px;
}

#intro .flexbox p{
  margin-bottom: 5px;
}

#intro .flexbox img{
  width: 25px;
}


/* <!-- #rogo --> */
#rogo{
  width: 100%;
  margin: 30px auto;
}

/* <!-- #item --> */

  .flex_item{
  width: 100%;
  }

  .flex_item:nth-of-type(-n+2){
    margin: 0;
  }

  .flex_container{
    display: block;
  }

  .flex_container a{
    color: #FFF;
  }

  .flex_container a:hover{
  opacity: 1;
}

  .flex_contents{
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    margin: 0 calc(50% - 50vw);
    width: 100vw;
    padding: 30px;
  }

  .flex_contents:nth-of-type(2n-1){
    background-image: url(https://www.infirmiere.co.jp/img/usr/feature/fea_mymelody50th_kuromi20th/sp/kuromi_bg.jpg);
  }

  .flex_contents:nth-of-type(2n){
    background-image: url(https://www.infirmiere.co.jp/img/usr/feature/fea_mymelody50th_kuromi20th/sp/mymelody_bg.jpg);
  }

  #item .title{
    padding: 10px 0;
    margin-bottom: 20px;
  }

  #item .title h2{
    font-size: 18px;
    margin: 0 10px;
    line-height: 1.2;
  }

  #item .title p{
    width: 50px;
  }

  #item .sub_title h3{
    font-size: 16px;
    letter-spacing: 0.03em;
  }

  /* <!-- .click_banner --> */

  .click_banner{
    padding: 30px 0;
  }

  .click_banner_inner{
    padding: 10px;
    border-radius: 20px;
  }

  .click_banner p{
    font-size: 14px;
    line-height: 1.2;
    margin-bottom: 3px;
  }

}