body {
    padding: 0!important;
}
.lp .lpmv-sp {
    display: none;
    position: relative;
}
.lp .lpmv-pc {
    display: flex;
    justify-content: center;
    align-items: center;
    align-self: center;
    align-content: center;
    width: 100vw;
    height: 27.5vw;
    max-height: 600px;
    background: #00875c url(../img/mvpc.jpg) center center no-repeat;
    background-size: contain;
    position: relative;
}
.lp .lpmv-pc .inner,
.lp .obi .inner {
    width: min(calc((1000/1040)*100vw), 1000px);
}
.lp .lpmv-pc img {
    width: 42vw;
    max-width: 860px;
    position: relative;
    z-index: 1;
}
.lp .lpmv-pc p {
    position: absolute;
    left: 50%;
    top: 50%;
    z-index: 2;
    text-align: center;
    color: #fff;
    transform: translate(-50% , -5%);
    font-weight: bold;
    font-size: min(calc((13/1040)*100vw), 13px);
}
@media screen and (max-width: 1600px) {
    .lp .lpmv-pc {
        height: 44vw;
        background-size: cover;
    }
    .lp .lpmv-pc img {
        width: 60vw;
        max-width: 860px;
    }
    .lp .lpmv-pc .inner,
    .lp .obi .inner {
        width: calc((690/750)*100vw);
    }
}
@media screen and (max-width: 768px) {
    .lp .lpmv-sp {
        display: flex;
        justify-content: flex-start;
        align-items: center;
        align-self: center;
        align-content: center;
        width: 100%;
        height: 43.5vw;
        background: #00875c url(../img/mvsp.jpg) center center no-repeat;
        background-size: cover;
        position: relative;
        text-align: center;
        padding: 0 5%;
    }
    .lp .lpmv-sp img {
        width: 85%;
        max-width: 480px;
        position: relative;
        z-index: 1;
    }
    .lp .lpmv-sp p {
        position: absolute;
        left: 50%;
        top: 76%;
        z-index: 2;
        text-align: center;
        width: 100%;
        color: #fff;
        transform: translate(-50%, -50%);
        font-weight: bold;
        font-size: min(calc((28/1040)*100vw), 28px);
    }
    .lp .lpmv-pc {
        display: none;
        position: relative;
    }
    .lp .lpmv-pc .inner,
    .lp .obi .inner {
        width: 90%;
        margin: 0 auto;
    }
}
.lp .obi {
    background: #000;
    padding: 0;
    text-align: center;
}
.lp .obi img {
    width: 38vw;
    max-width: 600px;
}
@media screen and (max-width: 1600px) {
    .lp .obi img {
        width: 50vw;
        max-width: 520px;
    }
}
@media screen and (max-width: 768px) {
    .lp .obi img {
        width: 80vw;
        max-width: 750px;
    }
}


/* TEXT */
.lp .text {
    padding: min(calc((100/1040)*100vw), 100px) 0 0;
}
.lp .text p {
    font-size: min(calc((16/1040)*100vw), 18px);
    line-height: 190%;
}
@media screen and (max-width: 768px) {
    .lp .text {
        padding:calc((80/750)*100vw) 0　calc((20/750)*100vw);
    }
    .lp .text p {
        font-size: calc((26/750)*100vw);
    }
}


/* JOIN */
.lp .join {
    padding: min(calc((100/1040)*100vw), 100px) 0;
    text-align: center;
}
.lp .text .inner,
.lp .join .inner,
.lp .speaker .inner {
    width: min(calc((1000/1040)*100vw), 1000px);
    margin: 0 auto;
}
.lp .join h3 {
    font-size: min(calc((26/1040)*100vw), 26px);
    line-height: 190%;
}
.lp .join h3 span {
    color: #E51C1C;
}
.lp .join a img {
    margin: min(calc((30/1040)*100vw), 30px) 0;
    width: 80%;
    max-width: 450px;
}
.lp .join p {
    font-size: min(calc((16/1040)*100vw), 16px);
}
.lp .join .spacer {
    padding: min(calc((10/1040)*100vw), 10px) 0  min(calc((20/1040)*100vw), 20px);
}
.lp .join a.textlink {
    font-size: min(calc((30/1040)*100vw), 30px);
    line-height: 190%;
    color: #3DAAC1;
    font-weight: bold;
    text-decoration: underline;
}
@media screen and (max-width: 768px) {
    .lp .join {
        padding:calc((80/750)*100vw) 0;
        text-align: center;
    }
    .lp .text .inner,
    .lp .join .inner,
    .lp .speaker .inner {
        width: calc((690/750)*100vw);
        margin: 0 auto;
    }
    .lp .join h3 {
        font-size: calc((36/750)*100vw);
    }
    .lp .join a img {
        margin: calc((50/750)*100vw) 0;
        width: 86%;
        max-width: 450px;
    }
    .lp .join p {
        font-size: calc((24/750)*100vw);
    }
    .lp .join .spacer {
        padding: calc((8/750)*100vw) 0 calc((20/750)*100vw) ;
    }
    .lp .join a.textlink {
        font-size: calc((38/750)*100vw);
    }
}


/* SPEAKER */
.pr-ttl {
      line-height: 1.73333;
      font-size: min(calc((30/1040)*100vw), 30px);
      margin-bottom: min(calc((40/1040)*100vw), 40px);
}
.pr-ttl::after {
    content: "";
    display: block;
    margin: auto;
    background: linear-gradient(to right, #18c8a5, #91f44f);
    margin: min(calc((25/1040)*100vw), 25px) auto 0;
    width: min(calc((42/1040)*100vw), 42px);
    height: min(calc((4/1040)*100vw), 4px)
}
.lp .flex {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}
.lp .flex dl {
    width: 46%;
    margin: 0;
    padding: 0;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    align-items: flex-start!important;
    align-content: flex-start!important;
    align-self: flex-start!important;
}
.lp .flex dt,
.lp .flex dd {
    width: 100%;
    margin: min(calc((10/1040)*100vw), 10px) 0;
    padding: 0;
}
.lp .flex dt img {
    width: 50%;
    max-width: 240px;
    margin: 0 auto;
}
.lp .flex dd h6 {
    font-size: min(calc((26/1040)*100vw), 26px);
    text-align: center;
    margin: min(calc((10/1040)*100vw), 10px) 0 0;
    padding: 0;
}
.lp .flex dd p {
    margin: min(calc((20/1040)*100vw), 20px) 0 0;
    text-align: left;
}
.lp .flex dd img {
    width: 100%;
    margin: 0 auto min(calc((60/1040)*100vw), 60px) ;
}
.lp .speaker {
    padding: min(calc((80/1040)*100vw), 80px) 0;
    text-align: center;
    background: #f8f8f8;
}
.add {
    margin:0;
    padding: 0;
}

@media screen and (max-width: 768px), print {
    .pr-ttl {
      font-weight: bold;
      text-align: center;
      line-height: 1.73333;
      font-size: calc((34/750)*100vw);
      letter-spacing: 0.15em;
      margin-bottom: calc((50/750)*100vw);
    }
    .pr-ttl::after {
      margin: calc((32/750)*100vw) auto calc((40/750)*100vw);
      width: calc((62/750)*100vw);
      height: calc((5/750)*100vw)
    }
    .lp .speaker {
        padding:calc((80/750)*100vw) 0;
    }
    .lp .flex dl {
        width: 100%;
        margin: 0;
    }
    .add {
        margin:calc((80/750)*100vw) 0 !important;
    }
    .lp .flex dd h6 {
        font-size: calc((32/750)*100vw);
        text-align: center;
        margin: calc((20/750)*100vw)  0 0;
        padding: 0;
    }
  }