@charset "utf-8";


.u-scrollAnim {
    transform: translateY(200px);
    opacity: 0;
    transition: opacity .6s, transform .6s cubic-bezier(0.025, 0.905, 0.31, 1.08)
}

.u-scrollAnim.-animated {
    transform: translateY(0) rotate(0) !important;
    opacity: 1
}

.c-lab {
    
    position: relative;
    background: url(../img/bg_saving.png) 0 0 no-repeat;
    background-size: inherit;
    position: relative;
    z-index: -1;
}



.c-lab .c-lab-inner {
    padding: 3.85rem 1.5rem 1rem;


}

.c-lab .c-lab-ttl ,.c-merit .c-merit-ttl{
 
    margin: 0 auto 2.05rem;
    padding-top: 3.9rem;
    padding-bottom: 1.75rem;
    position: relative;
    z-index: 2;
    font-size: 3rem;
    text-align: center;
}


.c-lab .c-lab-ttl  span ,.c-merit .c-merit-ttl span{
    font-size: 14px;
    display: block;
    letter-spacing: 0.1em;
    line-height: 2;
}
.c-lab .c-lab-ttl img {
    margin-top: -10.2rem;
    max-width: 55%;
}

.c-lab .c-lab-lead {
    width: 22.65rem;
    margin: 2.9rem auto 0
}


.c-liverlist {
    display: grid;
    gap: 10px;
    grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
    margin-top: 5rem
}


.c-liverlist-item {
    border-radius: 1em;
    text-align: center;
    overflow: hidden;
}


.c-liverlist-item img {
    max-width: 100%;
    height: auto;
}


.c-liverlist-item h3 {
    padding: 8px 0 10px;
    color: #25aded;
}

.c-lab .c-lab-ambassador {
    margin-top: 2.5rem
}

.c-lab .c-lab-doctor {
    margin-top: 4rem
}

.c-lab .c-lab-ambassadorTtl {
    width: 34.5rem;
    margin-bottom: 1.5rem
}

.c-lab .c-ambassador-profile:not(:last-child) {
    margin-bottom: 1rem
}

.m-profile {
    background-color: #51bdf1;
    padding: 2.05rem 3rem 3rem;
    border-radius: 1em
}

.m-profile .m-profile-ttl {
    display: flex;
    align-items: center
}

.m-profile .m-profile-img.-fukuhara {
    width: 14.65rem;
    position: relative;
    left: -1.65rem
}

.m-profile .m-profile-img.-wakana {
    width: 14.6rem
}

.m-profile .m-profile-img.-nishikawa {
    width: 14.6rem
}

.m-profile .m-profile-img.-suzuki {
    width: 14.6rem
}

.m-profile .m-profile-name.-fukuhara {
    width: 11.85rem
}

.m-profile .m-profile-name.-wakana {
    width: 14.15rem
}

.m-profile .m-profile-name.-nishikawa {
    width: 12.9rem;
    margin-top: -1.35rem
}

.m-profile .m-profile-name.-suzuki {
    width: 11.55rem;
    margin-top: -2rem
}

.m-profile-desc {
    background-color: #cbebfb;
    border-radius: 2.65rem;
    transition: border-radius .5s
}

.m-profile-desc .p-acdBtn {
    text-align: center;
    line-height: 0;
    display: block;
    position: relative;
    width: 28.5rem;
    padding-top: 2rem;
    padding-bottom: 2rem
}

.m-profile-desc .p-acdBtn img {
    width: 11.8rem
}

.m-profile-desc .p-acdBtn:hover {
    cursor: pointer
}

.m-profile-desc .p-acdBtn::after {
    content: "";
    display: block;
    background: url(../img/icon_profile_open.svg) 0 0 no-repeat;
    background-size: contain;
    width: 1.3rem;
    height: 1.3rem;
    position: absolute;
    right: 2rem;
    top: 50%;
    transform: translateY(-50%)
}

.m-profile-desc .m-profile-txtWrap {
    line-height: 2;
    letter-spacing: .06em;
    font-size: 1.3rem;
    display: block;
    word-break: break-all;
    opacity: 0;
    transition: opacity .5s, max-height .5s, padding .5s;
    max-height: 0;
    overflow: hidden;
    padding: 0 2rem
}

.m-profile-desc .m-profile-txtWrap .m-profile-txt:not(:last-child) {
    margin-bottom: 1.3rem
}

.m-profile-desc .m-profile-txtWrap .m-profile-txtLink {
    color: #6eb92b;
    text-decoration: underline
}

.m-profile-desc.-acd-open .p-acdBtn::before {
    content: "";
    display: block;
    background: url(../common/img/bdr_dotted.svg) 0 0 no-repeat;
    width: 24.5rem;
    height: .1rem;
    position: absolute;
    bottom: 0;
    left: 2rem
}

.m-profile-desc.-acd-open .p-acdBtn::after {
    content: "";
    background: url(../img/icon_profile_close.svg) 0 0 no-repeat;
    background-size: contain;
    width: 1.3rem;
    height: .2rem
}

.m-profile-desc.-acd-open .m-profile-txtWrap {
    opacity: 1;
    padding: 2rem
}

.m-profile-desc.-acd-open .m-profile-txtWrap.-fukuhara {
    max-height: 29rem
}

.m-profile-desc.-acd-open .m-profile-txtWrap.-wakana {
    max-height: 42.5rem
}

.m-profile-desc.-acd-open .m-profile-txtWrap.-nishikawa {
    max-height: 48.5rem
}

.m-profile-desc.-acd-open .m-profile-txtWrap.-suzuki {
    max-height: 37.5rem
}

.c-mv {
    padding: 0rem 0 4.85rem 0;
    /*background-image: url(../img/bg_mv.jpg);*/
    background-repeat: no-repeat;
    background-size: cover;
    background-position: top center
}

/*
.c-mv .c-mv-txt {
    padding-top: .7rem
}
*/

.c-mv .c-mv-ttl {
    width: 31.65rem;
    margin: -11.5rem auto 0;
    transform: translateX(0.2rem)
}

.c-topics {
    background: #0a4994;
    border-radius: 2.5rem;
    padding: 2.75rem 1.5rem 4rem;
    margin-top: 2rem;
    position: relative;
    scroll-margin-top: 7.25rem
}

.c-topics .c-topics-ttl {
    width: 27.4rem;
    margin: 0 auto 1.3rem
}

.c-topics .c-topics-cmCheck {
    position: absolute;
    top: -2rem;
    right: .95rem;
    width: 8.2rem
}

.c-topics .c-topicsIntro {
    background-color: #fff;
    border-radius: .5rem;
    padding: 1rem 1rem 1rem;
    margin-bottom: 1.5rem
}

.c-topics .c-topics-bnr {
    margin: 1rem auto 0
}

.c-topics .c-basic {
    padding-top: 2.55rem
}

.c-topics .c-basic .c-basic-ttl {
    width: 36.15rem;
    margin-bottom: 1.35rem;
    margin-left: -0.8rem
}

.c-topics .c-topicsMovie {
    padding-top: 3.5rem
}

.c-topics .c-topicsMovie .c-topicsMovie-ttl {
    margin-bottom: 1.15rem
}

.m-topicsList {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between
}

.m-topicsList .m-topicsList-item {
    width: 16.8rem;
    position: relative
}

.m-topicsList .m-topicsList-item:nth-child(n+3) {
    margin-top: 1rem
}

.m-topicsList.-food li {
    width: 15.75rem
}

.m-basicList .m-basicList-item {
    box-shadow: 1.125rem 1rem .5rem rgba(0, 0, 0, .1)
}

.m-basicList .m-basicList-item+.m-basicList-item {
    margin-top: 1rem
}

.c-topicsMovie-wrap {
    background-color: #fff;
    border-radius: .5rem;
    padding: 1.75rem 1rem 1rem
}

.m-movieList .m-movieList-item+.m-movieList-item {
    margin-top: 1.5rem
}

.m-movieList .m-movieList-itemTtl {
    width: 27.5rem;
    margin: 0 auto 1.5rem
}

.m-movieList .m-movieList-itemTtl.-tvcm {
    width: 6.7rem;
    margin: 0 auto 1rem
}

.m-movieList .m-movieList-thumb {
    background-color: #003370;
    border-radius: .5rem
}

.m-movieList .m-movieList-txt {
    margin: 0 auto
}

.m-movieList .m-movieList-txt.-tvcm {
    padding: 1.2rem 0 1.25rem;
    width: 21.8rem
}

.m-movieList .m-movieList-txt.-food {
    padding: 1.35rem 0;
    width: 29.45rem
}

.m-movieList .m-movieList-txt.-reitouchokin {
    color: #fff;
    text-decoration: none;
    font-size: 1.4rem;
    padding: 1.35rem 0 1.25rem;
    text-align: center;
    letter-spacing: .09em;
    font-weight: bold
}

.m-movieList .m-movieList-txt.-reitouchokin span {
    display: block;
    font-weight: normal;
    font-size: 1.2rem;
    margin-top: .75rem
}

.m-movieList .m-movieList-txtLink {
    color: #fff;
    text-decoration: underline;
    text-decoration-thickness: .1rem;
    text-underline-offset: 10%
}

.c-products {
    background-color: #eee;
    border-radius: 2.5rem;
    padding: 1.5rem 1.5rem 4rem;
    margin: -2rem 0 4rem;
    position: relative;
    z-index: 2
}

.c-products .c-productsTtlWrap {
    margin-bottom: 2rem;
    padding: 2rem 0 1.7rem;
    background-image: url(../img/bg_products.png);
    background-size: cover;
    position: relative
}

.c-products .c-productsTtlWrap::after {
    content: "";
    display: block;
    background: url(../img/bg_products_kuma.png) 0 0 no-repeat;
    background-size: contain;
    width: 8.4rem;
    height: 9.85rem;
    position: absolute;
    right: -1rem;
    bottom: -1rem
}

.c-products .c-productsTtlWrap-ttl {
    width: 14.35rem;
    margin: 0 auto;
    transform: translateX(-0.15rem)
}

.c-products .c-productsTtlWrap-txt {
    width: 21.35rem;
    margin: 1rem auto 0;
    transform: translateX(-0.05rem)
}

.c-products .c-products-note {
    font-size: 1.1rem;
    line-height: 1.38;
    letter-spacing: .1em;
    color: #555;
    margin-top: 2rem;
    text-align: left
}

.m-products {
    background-color: #fff;
    border-radius: .5rem;
    padding-bottom: 4rem;
    text-align: center
}

.m-products+.m-products {
    margin-top: 1.5rem
}

.m-products .m-products-img {
    box-shadow: 0 1rem 1.5rem rgba(0, 0, 0, .1)
}

.m-products .m-products-ttl {
    margin: 0 auto;
    margin-bottom: 2.6rem
}

.m-products.-saranwrap .m-products-img {
    width: 28.05rem;
    margin-top: 3.75rem
}

.m-products.-saranwrap .m-products-ttl {
    width: 13.1rem;
    margin-top: 3.55rem
}

.m-products.-ziploc .m-products-img {
    width: 20.5rem;
    margin-top: 3.65rem
}

.m-products.-ziploc .m-products-ttl {
    width: 28.8rem;
    margin-top: 3.25rem
}

.m-products figcaption {
    padding: 0 1.75rem 0 2.5rem
}

.m-products .m-descList .m-descList-item {
    font-size: 1.3rem;
    line-height: 1.4;
    letter-spacing: .1em;
    color: #555;
    text-align: left;
    padding-left: 1.7rem;
    position: relative
}

.m-products .m-descList .m-descList-item::before {
    content: "";
    width: .7rem;
    height: .7rem;
    border-radius: .35rem;
    position: absolute;
    left: 0px;
    top: 50%;
    transform: translateY(-50%)
}

.m-products .m-descList .m-descList-item+.m-descList-item {
    margin-top: 1.75rem
}

.m-products .m-descList.-saranwrap .m-descList-item::before {
    background-color: #8fc43d
}

.m-products .m-descList.-ziploc .m-descList-item::before {
    background-color: #0a4994
}

.c-about {
    background: url(../img/bg_saving.png) 0 0 no-repeat;
    background-size: cover;
    padding: 0;
    position: relative;
    z-index: -1
}

.c-about .c-about-ttl {
width: 100%;
    margin: -5rem 0rem 1rem -0.8rem;
    text-align: center;
    padding: 3.75rem 0 4.05rem;
}

.c-about .c-about-ttl img {
    width: 33.05rem;
    transform: translateX(0.5rem)
}

.c-about .c-about-lead {
    width: 32rem;
    margin: -0.6rem auto 2.6rem;
    position: relative;
    z-index: 2
}

.c-about .c-acd {
    text-align: center
}

.c-about .c-acd.-open .c-acd-toggleBtn::after {
    content: "";
    background: url(../img/icon_profile_close.svg) 0 0 no-repeat;
    background-size: contain;
    width: 1.3rem;
    height: .2rem
}

.c-about .c-acd.-open .c-acd-desc {
    max-height: 38rem;
    opacity: 1;
    padding: .9rem 0 3.1rem
}

.c-about .c-acd-desc {
    opacity: 0;
    max-height: 0;
    overflow: hidden;
    transition: opacity .5s, max-height .5s, padding .5s
}

.c-about .c-acd-desc .c-acd-descImg:nth-of-type(1) {
    width: 24.25rem
}

.c-about .c-acd-desc .c-acd-descImg:nth-of-type(2) {
    width: 28.8rem;
    margin-top: 3.5rem
}

.c-about .c-acd-toggleBtn {
    width: 28.5rem;
    padding: 2rem 0;
    border-radius: 2.65rem;
    background-color: #cbebfb;
    box-shadow: .7071rem .7071rem 1.5rem 0px rgba(0, 0, 0, .05);
    position: relative
}

.c-about .c-acd-toggleBtn::after {
    content: "";
    display: block;
    background: url(../img/icon_profile_open.svg) 0 0 no-repeat;
    background-size: contain;
    width: 1.3rem;
    height: 1.3rem;
    position: absolute;
    right: 2rem;
    top: 50%;
    transform: translateY(-50%)
}

.c-about .c-acd-toggleBtn .p-acdToggleBtn {
    display: none;
    margin: 0 auto
}

.c-about .c-acd-toggleBtn .p-acdToggleBtn.-open {
    width: 6.7rem
}

.c-about .c-acd-toggleBtn .p-acdToggleBtn.-close {
    width: 3.8rem
}

.c-about .c-acd-toggleBtn .p-acdToggleBtn.is-current {
    display: block
}

.c-merit {
      margin-top: 0;
    padding-top: 9.6rem;
    position: relative;
}

/*
.c-merit::before {
    content: "";
    display: block;
    background: url(../img/bg_merit.png) 0 0 no-repeat;
    background-size: cover;
    width: 34.5rem;
    height: 17.6rem;
    position: absolute;
    top: 0;
    left: 1.5rem
}
*/

.c-merit .c-merit-inner {
    background-color: #e8f2f9;
    border-radius: 2.5rem;
    padding: 1.5rem 1.75rem 10.25rem 1.35rem;
    margin-top: -11.75rem
}

.c-merit .c-merit-ttl {
   color: #75b3db;
    margin: 0 auto 2.05rem;
    padding-top: 3.9rem;
    padding-bottom: 1.75rem;
    position: relative;
    z-index: 2;
    font-size: 3rem;
    text-align: center;
}

.c-merit-ttl span{
font-size: 14px;
    display: block;
    letter-spacing: 0.1em;
    line-height: 2;
}

.m-meritList {
    display: grid;
    gap: 15px;
    grid-template-columns: 1fr;
}

.m-meritList .m-meritList-item {
    padding-bottom: 3rem;
    border-radius: 1em
}



.m-meritList .m-meritList-item .m-meritList-itemTtl {

    position: relative
}

.m-meritList .m-meritList-item .m-meritList-itemTtl::before {
    content: "";
    display: block;
    position: absolute;
    left: 3.05rem;
    top: 2.5rem
}

.m-meritList .m-meritList-item.-time {
    background-color: #ffffff;
    padding: 18px;
}

.m-meritList .m-meritList-item.-time .m-meritList-itemTtl {
    padding-top: 1.5rem;
    margin-bottom: 1.2rem;
        color: #75b3db;
}


.m-meritList .m-meritList-item img {
    border-radius: 10px;
}

.m-meritList p {
    font-size: 1.3rem;
    line-height: 1.6;
    font-weight: 400;
    letter-spacing: 0.03em;
}

.m-meritList .m-meritList-item.-time .m-meritList-itemTtl img {
    width: 19.95rem;
}



.m-meritList .m-meritList-item.-nutrition {
    background-color: #c2d94e
}

.m-meritList .m-meritList-item.-nutrition .m-meritList-itemTtl {
    padding-top: 3.15rem;
    margin-bottom: 2.65rem
}

.m-meritList .m-meritList-item.-nutrition .m-meritList-itemTtl img {
    width: 19.95rem
}



.m-meritList .m-meritList-item.-money {
    background-color: #fed900
}

.m-meritList .m-meritList-item.-money .m-meritList-itemTtl {
    padding-top: 2.7rem;
    margin-bottom: 2.3rem
}

.m-meritList .m-meritList-item.-money .m-meritList-itemTtl img {
    width: 20.15rem
}



.m-meritTxtList {
    margin-left: 3rem
}

.m-meritTxtList .m-meritTxtList-item+.m-meritTxtList-item {
    margin-top: 1.55rem
}

.m-meritTxtList.-time .m-meritTxtList-item:nth-of-type(1) {
    width: 18.2rem
}

.m-meritTxtList.-time .m-meritTxtList-item:nth-of-type(2) {
    width: 16.9rem
}

.m-meritTxtList.-nutrition .m-meritTxtList-item:nth-of-type(1) {
    width: 13.85rem
}

.m-meritTxtList.-nutrition .m-meritTxtList-item:nth-of-type(2) {
    width: 28.15rem
}

.m-meritTxtList.-money .m-meritTxtList-item:nth-of-type(1) {
    width: 21.1rem
}

.m-meritTxtList.-money .m-meritTxtList-item:nth-of-type(2) {
    width: 13.5rem
}

.c-yutorium {
    position: relative;
    padding: 10.35rem 1.5rem 5.9rem;
    background-color: #bbd65f
}

.c-yutorium::after {
    content: "";
    display: block;
    background: url(../img/bg_yutorium.png) 0 0 no-repeat;
    background-size: cover;
    width: 100%;
    height: 6.45rem;
    position: absolute;
    top: -1px;
    left: 0
}

.c-yutorium .c-yutorium-ttl {
    margin-bottom: 2rem
}

.c-yutorium .c-yutorium-txt {
    text-align: center;
    margin-bottom: 2.5rem
}

.c-yutorium .c-yutorium-txt img {
    width: 23.9rem
}

.m-yutorium {
    background-color: #fff;
    padding: 2.55rem 3rem 3rem;
    border-radius: 10px 10px 0 0
}

.m-yutorium .m-yutorium-ttl img {
    width: 20.95rem
}

.m-yutorium .m-yutorium-logoWrap {
    display: flex
}

.m-yutorium .m-yutorium-logoWrap .-yutorium {
    width: 6.35rem
}

.m-yutorium .m-yutorium-desc {
    margin-bottom: 3rem
}

.m-yutorium .m-yutorium-desc img {
    height: 100%
}

.m-yutorium .m-yutorium-desc.-reitouchokin {
    width: 20.95rem;
    margin-right: 1.6rem;
    margin-bottom: 1.9rem
}

.m-yutorium .m-yutorium-btn {
    display: block;
    text-align: center;
    background-color: #8fc43d;
    width: 28.5rem;
    padding: 2rem 0 2.05rem;
    border-radius: 53px;
    box-shadow: 7.1px 7.1px 30px 0px rgba(0, 0, 0, .05);
    position: relative
}

.m-yutorium .m-yutorium-btn img {
    width: 7.6rem
}

.m-yutorium .m-yutorium-btn::after {
    content: "";
    display: block;
    background: url(../common/img/icon_blank.png) 0 0 no-repeat;
    background-size: contain;
    width: 1.1rem;
    height: 1.1rem;
    position: absolute;
    top: 50%;
    right: 2rem;
    transform: translateY(-50%)
}

.m-yutorium-partner {
    background: #fff;
    border-radius: 0 0 10px 10px
}

.m-yutorium-partner .m-yutorium-partnerInner {
    background-color: rgba(187, 214, 95, .2);
    padding-top: 2.15rem;
    padding-bottom: 1.5rem;
    border-radius: 0 0 10px 10px
}

.m-yutorium-partner .m-yutorium-partnerInner .m-yutorium-partnerLogo {
    display: flex;
    justify-content: center;
    margin-bottom: 1.5rem
}

.m-yutorium-partner .m-yutorium-partnerInner .m-yutorium-partnerLogo .-saranwrap {
    width: 6rem
}

.m-yutorium-partner .m-yutorium-partnerInner .m-yutorium-partnerLogo .-ziploc {
    margin-left: 1.8rem;
    width: 5.55rem
}

.m-yutorium-partner .m-yutorium-partnerInner .m-yutorium-txt {
    text-align: center;
    line-height: 1.75;
    letter-spacing: .01em;
    font-size: 1.1rem;
    color: #555
}

body {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
font-family: 'Noto Sans CJK JP', 'Noto Sans JP', sans-serif;

}

.c-main {
    background-color: #fff
}

.u-txtTop {
    vertical-align: top;
    font-size: .5em
}

/*# sourceMappingURL=style.css.map */



/* solid019 */
.button_solid019 a {
    position: relative;
    display: flex;
    justify-content: space-around;
    align-items: center;
    margin: 0 auto;
    max-width: 240px;
    padding: 1em;
    color: #FFF;
    transition: 0.3s ease-in-out;
    font-weight: 400;
    background: #000;
    filter: drop-shadow(0px 2px 4px #ccc);
    border-radius: 3px;
    border-radius: 50px;
    line-height: 2;
    margin-top: 3rem;
    text-decoration: none;
}

.button_solid019 a:after {
    content: '';
    width: 8px;
    height: 8px;
    border-top: 3px solid #FFF;
    border-right: 3px solid #FFF;
    transform: rotate(45deg) translateY(-50%);
    position: absolute;
    top: 50%;
    right: 20px;
    border-radius: 1px;
    transition: 0.3s ease-in-out;
}

.button_solid019 a:hover {
    transform: translateY(-2px);
    box-shadow: 0 15px 30px -5px rgb(0 0 0 / 15%), 0 0 5px rgb(0 0 0 / 10%);
}



#step .c-merit-inner{
 background-color: transparent;
  
    border-left: 0;
    border-right: 0;
    border-radius: 2.5rem;
    padding: 1.5rem 1.75rem 5rem 1.35rem;
    margin-top: 0;
}





.grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem;
  margin-bottom: 1.5rem;
}

.footer {

  padding: 6rem 3rem; 
  font-size: 14px;
  color: #474747;
     background: #f6faff;
     position: relative;
     z-index: 2;
}

.footer__navi-heading {
  font-weight: 600;
}

.footer__logo {
  display: inline-block;
  margin-bottom: 2rem;
}

.footer__logo img{
width: 160px;
}

address{
   font-style: normal;
    font-size: 1.2rem;
    margin-bottom: 2em;
    line-height: 1.6;
    font-weight: 600;
}

.footer__navi li {
  margin-bottom: 2rem;

}

.footer__navi a{
    text-decoration: none;
    font-weight: 600;
    color: #222;

}

.footer__social a {
  display: inline-block;
  width: 24px;
  opacity: 0.7;
}

.footer__social a:not(:last-child) {
  margin-right: 16px;
}

@media (min-width: 768px) {
  .md-flex {
    display: flex;
  }

  .md-justify-between {
    justify-content: space-between;
  }

  .grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

.copyright{
    font-size: 11px;

}

.copyright a{
     text-decoration: none;

    color: #222;

}

.nav-item{
        text-align: center;
    margin-bottom: 2rem;
}

.nav-item a{
        color: #75b3db;
    font-weight: 600;
    font-size: 2rem;
    text-decoration: none;
}



.sample01 {
    margin: 0 auto -2px;
    width: 100%;
    font-size: 140px;
    text-align: center;
    overflow: hidden;
    bottom: 0;
    color: #75b3db;
    position: fixed;
}

.sample01 p {
    margin: 0;
    display: inline-block;
    white-space: nowrap;
    line-height: 1em;
    animation: scrollSample01 20s linear infinite;
    font-weight: bold;
}


#qa{
    margin-top: 60px;
}