/** Shopify CDN: Minification failed

Line 399:0 "@charset" must be the first rule in the file
Line 400:0 All "@import" rules must come first

**/
@import url(https://fonts.googleapis.com/css2?family=Alatsi&family=Noto+Sans:ital,wght@0,100..900;1,100..900&family=Noto+Serif+JP:wght@200..900&display=swap);

.l-contents, .l-section {
    width: 100%;
}

.l-section {
    padding: 6rem 0;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.l-section__header {
    text-align: center;
    margin-bottom: 6.4rem;
}

@media screen and (max-width:1024px) {
    .l-section__header {
        margin-bottom: 2.5rem;
    }
}

.l-section__header--sub {
    color: #009d45;
    font-size: 1.6rem;
    font-family: "Alatsi", sans-serif !important;
    font-weight: 400;
    letter-spacing: .4rem;
    line-height: 1;
    margin-bottom: .4rem;
}

.l-section__header--main {
    font-size: clamp(3.2rem, 4.2vw, 4.8rem);
    font-weight: 700;
    margin-bottom: .4rem;
}

@media screen and (max-width:640px) {
    .l-section__header--main {
        line-height: 1.4;
        margin-bottom: 2rem;
    }
}

.l-section__header--detail {
    background: linear-gradient(89deg, #fcf099 .28%, #ae8d51 24.66%, #fdf19a 46.18%, #fcef98 71.04%, #c79631 99.72%);
    color: #000 !important;
    font-family: "Noto Serif JP", serif !important;
    font-weight: 800;
    font-size: clamp(1.8rem, 2.34vw, 2rem);
    margin: 0 auto;
    padding: .4rem 1.6rem;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
}

.l-block {
    margin: 0 auto;
    width: calc(100% - 4rem);
}

.l-block:not(:last-child) {
    margin-bottom: 4rem;
}

@media screen and (min-width:1025px) {
    .l-block {
        width: 95rem;
    }
}

.l-block.-full, .u-figure img {
    width: 100%;
}

.bg-black {
    background: #000;
}

.bg-black * {
    color: #fff;
}

.cont-width {
    display: block;
    margin: 0 auto;
    width: calc(100% - 6rem);
    position: relative;
    z-index: 10;
}

@media screen and (min-width:1025px) {
    .cont-width {
        width: 95rem;
    }
}

.l-clm, .l-lrbox__item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 4rem;
}

@media screen and (max-width:640px) {
    .l-lrbox__item.-sp_clear {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column
    }

    .l-lrbox__item.-sp_clear .l-lrbox__l, .l-lrbox__item.-sp_clear .l-lrbox__r {
        width: 100%;
    }
}

.l-clm {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

@media screen and (max-width:640px) {
    .l-clm.-sp_clear {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
    }
}

@media screen and (min-width:641px) {
    .l-clm.-nogap {
        gap: 0
    }

    .l-clm.-nogap.l-clm_2 .l-clm__item {
        width: 50%
    }

    .l-clm.-nogap.l-clm_3 .l-clm__item {
        width: calc(100%/3)
    }

    .l-clm_2 .l-clm__item {
        width: calc((100% - 4rem)/2)
    }

    .l-clm_3 .l-clm__item {
        width: calc((100% - (4rem*2))/3);
    }
}

.u-mb10 {
    margin-bottom: 1rem;
}

.u-mb20 {
    margin-bottom: 2rem;
}

.u-mb30 {
    margin-bottom: 3rem;
}

.u-mb40 {
    margin-bottom: 4rem;
}

.u-mb50 {
    margin-bottom: 5rem;
}

.u-mb60 {
    margin-bottom: 6rem;
}

.u-figure {
    display: block;
    margin-bottom: 2rem;
}

@media screen and (max-width:640px) {
    .u-figure {
        margin-bottom: 1rem;
    }
}

.u-texts, .u-texts p {
    margin-bottom: 1.2rem;
}

.u-white {
    color: #fff;
}

.u-center {
    text-align: center;
}

.u-right {
    text-align: right;
}

@media screen and (max-width:640px) {
    .u-left_sp {
        text-align: left;
    }
}

.u-min {
    font-family: "Noto Serif JP", serif !important;
}

.u-en {
    font-family: "Alatsi", sans-serif !important;
}

.u-large {
    font-size: clamp(1.8rem, 2.34vw, 2.4rem);
}

.u-bold {
    font-weight: 600;
}

.c-btn {
    border-radius: 100vmax;
    display: block;
    font-size: clamp(1.6rem, 2.1vw, 2.6rem);
    font-weight: 900;
    text-align: center;
    margin: 0 auto;
    padding: 1.6rem 2.4rem;
    position: relative;
    text-decoration: none;
}

@media screen and (max-width:640px) {
    .c-btn {
        padding: 1.2rem 1.6rem;
    }
}

@media screen and (min-width:641px) {
    .c-btn {
        width: 60rem;
    }
}

.c-btn::after {
    content: "";
    display: block;
    width: 1.4rem;
    height: 1.4rem;
    position: absolute;
    right: 2rem;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

.c-btn.btn-orange {
    background: #ff9d00;
    color: #fff;
}

.c-btn.btn-orange::after {
    background: center/contain no-repeat url('//www.fanta-shop.jp/cdn/shop/files/c-btn_arrow_white.svg?v=7336198382485449388');
}

.c-btn.btn-white {
    background: #fff;
    color: #000;
}

.c-btn.btn-white::after {
    background: center/contain no-repeat url('//www.fanta-shop.jp/cdn/shop/files/c-btn_arrow_green.svg?v=14755419386016602154');
}

@media screen and (max-width:640px) {
    .hide_sp {
        display: none !important;
    }
}

@media screen and (min-width:641px) and (max-width:1024px) {
    .hide_tb {
        display: none !important;
    }
}

@media screen and (max-width:1024px) {
    .hide_tbsp {
        display: none !important;
    }
}

@media screen and (min-width:1025px) {
    .hide_pc {
        display: none !important;
    }
}

body, html {
    -webkit-text-size-adjust: 100%;
    overflow-x: hidden;
}

html {
    font-size: 62.5%;
    font-family: sans-serif !important;
    line-height: 1.15;
    -webkit-tap-highlight-color: transparent;
}

body {
    -moz-text-size-adjust: 100%;
    -ms-text-size-adjust: 100%;
    text-size-adjust: 100%;
    font-family: "Noto Sans JP", sans-serif !important;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.8 !important;
    color: #000;
    text-align: left;
    background-color: #fff;
}

body img {
    max-width: 100%;
    height: auto;
}

*, ::after, ::before {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

article, aside, figcaption, figure, footer, h1 span, h2 span, h3 span, h4 span, h5 span, header, hgroup, main, nav, section {
    display: block;
}

body, h1, h2, h3, h4, h5, h6, ol li, p, ul li {
    margin: 0;
}

dd, dl, dt, ol, ul {
    margin: 0;
    padding: 0;
}

ol, ul {
    list-style-type: none;
}

dd, dl, dt {
    font-size: inherit;
    font-family: inherit !important;
    text-align: inherit;
}

a, em, li, p, span {
    font-style: normal;
    font-size: 1.6rem;
}

.bg-black p {
    font-weight: 500;
}

a {
    -webkit-transition: all .5s;
    transition: all .5s;
}

a:hover {
    opacity: .8;
}

mark {
    background: 0 0;
}

svg {
    overflow: hidden;
    vertical-align: middle;
}

@charset "UTF-8";
@import url(https://fonts.googleapis.com/css2?family=Alatsi&family=Noto+Sans:ital,wght@0,100..900;1,100..900&family=Noto+Serif+JP:wght@200..900&display=swap);

.l-contents, .l-section {
    width: 100%;
}

.l-section {
    padding: 6rem 0;
}

.l-section__header {
    text-align: center;
    margin-bottom: 6.4rem;
    line-height: 1.8;
}

@media screen and (max-width:1024px) {
    .l-section__header {
        margin-bottom: 2.5rem;
    }
}

.l-section__header--sub {
    color: #009d45;
    font-size: 1.6rem;
    font-family: "Alatsi", sans-serif !important;
    font-weight: 600;
    letter-spacing: .4rem;
    line-height: 1;
    margin-bottom: -.4rem;
}

.l-section__header--main {
    font-size: clamp(3.2rem, 4.2vw, 5rem);
    font-family: "Noto Sans JP", sans-serif !important;
    font-weight: 700;
    letter-spacing: .2rem;
    line-height: 2;
    margin-bottom: .4rem;
}

@media screen and (max-width:640px) {
    .l-section__header--sub {
        margin-bottom: .4rem;
    }
    .l-section__header--main {
        line-height: 1.2;
        margin-bottom: 2rem;
    }
}

.l-section__header--detail {
    background: linear-gradient(89deg, #fcf099 .28%, #ae8d51 24.66%, #fdf19a 46.18%, #fcef98 71.04%, #c79631 99.72%);
    color: #000 !important;
    font-family: "Noto Serif JP", serif !important;
    font-weight: 700;
    font-size: clamp(1.8rem, 2.34vw, 2rem);
    margin: 0 auto;
    padding: .4rem 1.6rem;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
}

.l-block {
    margin: 0 auto;
    width: calc(100% - 4rem);
}

.l-block:not(:last-child) {
    margin-bottom: 4rem;
}

@media screen and (min-width:1025px) {
    .l-block {
        width: 95rem;
    }
}

.l-block.-full, .u-figure img {
    width: 100%;
}

.bg-black {
    background: #000;
}

.bg-black * {
    color: #fff;
}

.cont-width {
    display: block;
    margin: 0 auto;
    width: calc(100% - 6rem);
}

@media screen and (min-width:1025px) {
    .cont-width {
        width: 95rem;
    }
}

.l-clm, .l-lrbox__item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 4rem;
}

@media screen and (max-width:640px) {
    .l-lrbox__item.-sp_clear {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column
    }

    .l-lrbox__item.-sp_clear .l-lrbox__l, .l-lrbox__item.-sp_clear .l-lrbox__r {
        width: 100%;
    }
}

.l-clm {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

@media screen and (max-width:640px) {
    .l-clm.-sp_clear {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
    }
}

@media screen and (min-width:641px) {
    .l-clm.-nogap {
        gap: 0
    }

    .l-clm.-nogap.l-clm_2 .l-clm__item {
        width: 50%
    }

    .l-clm.-nogap.l-clm_3 .l-clm__item {
        width: calc(100%/3)
    }

    .l-clm_2 .l-clm__item {
        width: calc((100% - 4rem)/2)
    }

    .l-clm_3 .l-clm__item {
        width: calc((100% - (4rem*2))/3);
    }
}

.u-mb10 {
    margin-bottom: 1rem;
}

.u-mb20 {
    margin-bottom: 2rem;
}

.u-mb30 {
    margin-bottom: 3rem;
}

.u-mb40 {
    margin-bottom: 4rem;
}

.u-mb50 {
    margin-bottom: 5rem;
}

.u-mb60 {
    margin-bottom: 6rem;
}

.u-figure {
    display: block;
    margin-bottom: 2rem;
}

@media screen and (max-width:640px) {
    .u-figure {
        margin-bottom: 1rem;
    }
}

.u-texts, .u-texts p {
    margin-bottom: 1.2rem;
}

.u-white {
    color: #fff;
}

.u-center {
    text-align: center;
}

.u-right {
    text-align: right;
}

@media screen and (max-width:640px) {
    .u-left_sp {
        text-align: left;
    }
}

.u-min {
    font-family: "Noto Serif JP", serif !important;
}

.u-en {
    font-family: "Alatsi", sans-serif !important;
}

.u-large {
    font-size: clamp(1.8rem, 2.34vw, 2.4rem);
}

#voice .l-clm__item p mark, .u-bold {
    font-weight: 700;
}

.c-btn {
    border-radius: 100vmax;
    display: block;
    font-size: clamp(1.6rem, 2.1vw, 2.6rem);
    font-weight: 900;
    text-align: center;
    margin: 0 auto;
    padding: 1.6rem 2.4rem;
    position: relative;
    text-decoration: none;
}

@media screen and (max-width:640px) {
    .c-btn {
        padding: 1.2rem 1.6rem;
    }
}

@media screen and (min-width:641px) {
    .c-btn {
        width: 60rem;
    }
}

.c-btn::after {
    width: 1.4rem;
    height: 1.4rem;
    right: 2rem;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

.c-btn.btn-orange {
    background: #ff9d00;
    color: #fff;
}

.c-btn.btn-orange::after {
    background: center/contain no-repeat url('//www.fanta-shop.jp/cdn/shop/files/c-btn_arrow_white.svg?v=7336198382485449388');
}

.c-btn.btn-white {
    background: #fff;
    color: #000;
}

.c-btn.btn-white::after {
    background: center/contain no-repeat url('//www.fanta-shop.jp/cdn/shop/files/c-btn_arrow_green.svg?v=14755419386016602154');
}

@media screen and (max-width:640px) {
    .hide_sp {
        display: none !important;
    }
}

@media screen and (min-width:641px) and (max-width:1024px) {
    .hide_tb {
        display: none !important;
    }
}

@media screen and (max-width:1024px) {
    .hide_tbsp {
        display: none !important;
    }
}

@media screen and (min-width:1025px) {
    .hide_pc {
        display: none !important;
    }
}

body, html {
    -webkit-text-size-adjust: 100%;
    overflow-x: hidden;
}

html {
    font-size: 62.5%;
    font-family: sans-serif !important;
    line-height: 1.15;
    -webkit-tap-highlight-color: transparent;
}

body {
    -moz-text-size-adjust: 100%;
    -ms-text-size-adjust: 100%;
    text-size-adjust: 100%;
    font-family: "Noto Sans JP", sans-serif !important;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.8;
    color: #000;
    text-align: left;
    background-color: #fff;
}

body img {
    max-width: 100%;
    height: auto;
}

*, ::after, ::before {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

#about .l-contents .l-cont.feature-cont .l-clm picture, #about .l-contents .ruminants__cont picture, article, aside, figcaption, figure, footer, h1 span, h2 span, h3 span, h4 span, h5 span, header, hgroup, main, nav, section {
    display: block;
}

body, h1, h2, h3, h4, h5, h6, ol li, p, ul li {
    margin: 0;
}

dd, dl, dt, ol, ul {
    margin: 0;
    padding: 0;
}

ol, ul {
    list-style-type: none;
}

dd, dl, dt {
    font-size: inherit;
    font-family: inherit !important;
    text-align: inherit;
}

a, em, li, p, span {
    font-style: normal;
    font-size: 1.6rem;
}

a {
    -webkit-transition: all .5s;
    transition: all .5s;
}

a:hover {
    opacity: .8;
}

mark {
    background: 0 0;
}

svg {
    overflow: hidden;
    vertical-align: middle;
}

.p-kv {
    background: #000;
    position: relative;
}

.p-kv__item {
    margin: 0 auto;
}

@media screen and (min-width:1025px) {
    .p-kv__item {
        width: 120rem;
    }
}

.p-kv__item h1 {
    position: absolute;
    left: 0;
    top: 0;
}

@media screen and (min-width:1025px) {
    .p-kv__item h1 {
        left: calc((100% - 120rem)/2);
    }
}

.p-kv__item h1 img {
    width: 16rem;
}

@media screen and (min-width:1025px) {
    .p-kv__item h1 img {
        width: 26rem;
    }
}

#intro .intro__header--main, #intro .intro__header--sub {
	font-family: "Noto Sans JP", sans-serif !important;
    text-align: center;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
}

#intro .intro__header--sub {
    background: #000;
    border: 4px solid;
    -o-border-image: linear-gradient(to right, #cfa442, #fdf19a 53%, #cda03d) 1;
    border-image: -webkit-gradient(linear, left top, right top, from(#cfa442), color-stop(53%, #fdf19a), to(#cda03d)) 1;
    border-image: linear-gradient(to right, #cfa442, #fdf19a 53%, #cda03d) 1;
    color: #fff;
    font-size: clamp(2rem, 2.6vw, 2.8rem);
    font-weight: 900;
    line-height: 1;
    padding: 1.2rem 2rem;
    margin: 0 auto 2.4rem;
}

#intro .intro__header--main {
    font-weight: 700;
    font-size: clamp(3.2rem, 4.2vw, 5rem);
    line-height: 1.4;
    margin: 0 auto;
}

@media screen and (min-width:641px) {
    #intro .intro__header--main {
        border-bottom: 2px solid #000;
    }
}

#intro .intro__header--main em {
    color: #009d45;
    font-weight: 700;
    font-size: clamp(3.2rem, 4.2vw, 5rem);
}

#about, #intro .l-cont {
    position: relative;
}

#about::after, #about::before, #intro .l-cont picture.warries::after, #intro .l-cont::after, #intro .l-cont::before, .c-btn::after {
    content: "";
    display: block;
    position: absolute;
}

#intro .l-cont::after {
    background: -webkit-gradient(linear, left top, left bottom, color-stop(64%, #e0e0e0), color-stop(80%, #fff));
    background: linear-gradient(180deg, #e0e0e0 64%, #fff 80%);
    z-index: 1;
    top: 0;
    width: 100%;
    height: 100%;
}

@media screen and (max-width:640px) {
    #intro .l-cont::after {
        background: -webkit-gradient(linear, left top, left bottom, color-stop(10%, #e0e0e0), color-stop(40%, #fff));
        background: linear-gradient(180deg, #e0e0e0 10%, #fff 40%);
    }
}

#intro .l-cont::before {
    background: #fff;
    border-radius: 50%/0 0 100% 100%;
    top: -8%;
    left: -2%;
    z-index: 2;
    width: 104%;
    height: 44%;
}

@media screen and (max-width:640px) {
    #intro .l-cont::before {
        top: 0;
        left: -10%;
        height: 24%;
        width: 120%;
    }
}

#intro .l-cont picture {
    padding: 1.6rem 0;
    position: relative;
}

@media screen and (min-width:1025px) {
    #intro .l-cont picture {
        padding: 6.4rem 0 0;
    }
}

#intro .l-cont picture.warries::after {
    background: center/contain no-repeat url('//www.fanta-shop.jp/cdn/shop/files/intro-warries_arrow.svg?v=15032455150766672127');
    width: 54rem;
    height: 10rem;
    bottom: -8.8rem;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
}

@media screen and (max-width:640px) {
    #intro .l-cont picture.warries::after {
        background: center/contain no-repeat url('//www.fanta-shop.jp/cdn/shop/files/intro-warries_arrow_sp.svg?v=17691296208702922748');
        width: 80%;
        height: 8rem;
        position: relative;
        bottom: 0;
        left: auto;
        -webkit-transform: none;
        transform: none;
        margin: 1.6rem auto 0;
    }
}

@media screen and (min-width:641px) and (max-width:1024px) {
    #intro .l-cont picture.warries::after {
        bottom: -2rem;
        width: 30rem;
        height: 5rem;
    }
}

#about {
    padding-bottom: 20%;
}

@media screen and (max-width:640px) {
    #about {
        padding-bottom: 32rem;
    }
}

#about::after, #about::before {
    width: 100%;
    height: 100%;
    left: 0;
}

#about::before {
    background: top/100% no-repeat url('//www.fanta-shop.jp/cdn/shop/files/about-bg01.jpg?v=16130861979489644925');
    top: 0;
}

@media screen and (max-width:640px) {
    #about::before {
        background: top/100% no-repeat url('//www.fanta-shop.jp/cdn/shop/files/about-bg01_sp.png?v=11963640696555547637');
    }
}

#about::after {
    background: bottom/100% no-repeat url('//www.fanta-shop.jp/cdn/shop/files/about-bg02.png?v=15081965601707483084');
    bottom: 0;
}

@media screen and (max-width:640px) {
    #about::after {
        background: bottom center/85% no-repeat url('//www.fanta-shop.jp/cdn/shop/files/about-bg02_tb.png?v=13310818363004522722');
    }
}

@media screen and (max-width:460px) {
    #about::after {
        background: bottom/100% no-repeat url('//www.fanta-shop.jp/cdn/shop/files/about-bg02_sp.png?v=877128293143887392');
    }
}

#about .l-contents {
    position: relative;
    z-index: 10;
}

#about .l-contents .l-cont.feature-cont {
    margin-top: 4rem;
}

#about .l-contents .l-cont.feature-cont .l-clm {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

@media screen and (max-width:640px) {
    #about .l-contents .l-cont.feature-cont .l-clm {
        gap: 0;
    }
}

@media screen and (max-width:640px) {
    #about .l-contents .l-cont.feature-cont .l-clm__item:first-child {
        width: 60%
    }

    #about .l-contents .l-cont.feature-cont .l-clm__item:last-child {
        width: 40%
    }

    #about .l-contents .l-cont.feature-cont .l-clm__item:last-child img {
        -webkit-transform: scale(1.1);
        transform: scale(1.1);
    }
}

#about .l-contents .l-lrbox__item {
    gap: 2rem;
}

@media screen and (min-width:1025px) {
    #about .l-contents .l-lrbox__l {
        width: 24rem;
    }
}

@media screen and (min-width:641px) and (max-width:1024px) {
    #about .l-contents .l-lrbox__l {
        width: 18rem;
    }
}

@media screen and (max-width:640px) {
    #about .l-contents .l-lrbox__l img {
        display: block;
        margin: 0 auto;
        width: 72%;
    }
}

#about .l-contents .l-lrbox__r, #reasons .professor__cont p {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
}

#about .l-contents .l-lrbox__r em {
    border-bottom: 1px solid #fff;
    font-size: clamp(1.6rem, 2.1vw, 1.8rem);
}

#about .l-contents .l-lrbox__r p {
    font-size: 1.3rem;
    line-height: 1.5;
    margin-top: .4rem;
}

#about .l-contents .l-lrbox__r ul li {
    font-size: 1.3rem;
    line-height: 1.5;
}

#about .l-contents .l-lrbox__r ul li::before {
    content: "●";
}

#about .l-contents .ruminants__cont p {
    font-size: 1.3rem;
}

#about .l-contents .ruminants__cont picture img {
    display: block;
    margin: 0 auto;
    width: 100%;
}

@media screen and (max-width:640px) {
    #about .l-contents .ruminants__cont picture img {
        max-width: 38rem;
    }
}

#about .l-contents .ruminants__header {
    border-bottom: 1px solid #fff;
    font-family: "Noto Sans JP", sans-serif !important;
    font-weight: 700;
    margin: 0 auto 1.2rem;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
}

@media screen and (max-width:640px) {
    #about .l-contents .ruminants__header {
        margin: 0 auto 1.2rem 0;
    }
}

#about .about__header--h3 span {
    font-size: clamp(2.6rem, 3.4vw, 3.6rem);
    font-weight: 700;
}

#about .about__header--h3 span::after {
    background: center/contain no-repeat url('//www.fanta-shop.jp/cdn/shop/files/icon-arrow_lp.svg?v=4785013716415686637');
    content: "";
    display: block;
    margin: 1.2rem auto 1.6rem;
    width: 5.6rem;
    height: 2.6rem;
}

#about .about__header--h3 span ruby rt {
    font-size: 1.2rem;
}

@media screen and (max-width:640px) {
    #about .about__header--h3 span ruby rt {
        font-size: 1.1rem;
    }
}

#about .about__header--h3 img {
    display: block;
    height: 4rem;
    width: auto;
    margin: 0 auto 4rem;
}

@media screen and (max-width:640px) {
    #about .about__header--h3 img {
        width: 100%;
        height: auto;
        margin-bottom: 2rem;
    }
}

@media screen and (min-width:641px) and (max-width:1024px) {
    #about .about__header--h3 img {
        height: 3.2rem;
    }
}

#about .about__header--h4 {
    font-size: clamp(2.4rem, 3.1vw, 3.2rem);
    font-weight: 600;
    margin-bottom: 1.6rem;
    line-height: 1.8;
}

#about .about__header--h5 {
    font-size: clamp(1.8rem, 2.34vw, 2.4rem);
    font-weight: 900;
    line-height: 1.8;
}

@media screen and (max-width:1024px) {
    #reasons .l-section__header {
        margin-bottom: 6.4rem;
    }
}

@media screen and (min-width:1025px) {
    #reasons .l-clm {
        gap: 5rem;
    }
}

#cta .l-contents .l-block, #reasons .l-clm__item, #regular .l-contents .l-block {
    position: relative;
}

@media screen and (max-width:640px) {
    #reasons .l-clm__item {
        margin-bottom: 2.4rem;
    }
}

@media screen and (min-width:1025px) {
    #reasons .l-clm__item {
        width: calc((100% - 5rem)/2);
    }
}

#reasons .l-clm__item .num img {
    position: absolute;
    width: 11rem;
    height: 11rem;
    -o-object-fit: contain;
    object-fit: contain;
    left: -2.4rem;
    top: -2.4rem;
}

@media screen and (max-width:1024px) {
    #reasons .l-clm__item .num img {
        left: -1rem;
        width: 10rem;
        height: 10rem;
    }
}

#reasons .reasons__header--h3 {
    font-size: clamp(2.2rem, 2.86vw, 3rem);
    font-weight: 800;
    margin-bottom: 2.4rem;
}

#reasons .professor__header {
    font-size: clamp(2.2rem, 2.86vw, 3.2rem);
    font-weight: 800;
    line-height: 1.4;
    margin-bottom: 1.6rem;
}

@media screen and (max-width:640px) {
    #reasons .professor__header {
        text-align: center;
    }
}

@media screen and (min-width:641px) {
    #reasons .professor__header {
        position: relative;
        left: 33.2rem;
    }
}

@media screen and (min-width:641px) and (max-width:1024px) {
    #reasons .professor__header {
        left: 23.2rem;
    }
}

#reasons .professor__header span {
    font-size: clamp(1.4rem, 1.8vw, 1.6rem);
    font-weight: 700;
}

#reasons .professor__cont {
    background: #000;
    border-radius: 1rem;
    padding: 2rem;
}

@media screen and (max-width:640px) {
    #reasons .professor__cont {
        position: relative;
        top: 44vw;
        margin-bottom: 44vw;
    }
}

@media screen and (min-width:641px) {
    #reasons .professor__cont {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        gap: 3.2rem;
    }
}

#reasons .professor__cont picture {
    display: block;
}

@media screen and (max-width:640px) {
    #reasons .professor__cont picture {
        margin: -50vw 0 1.2rem
    }

    #reasons .professor__cont picture img {
        display: block;
        width: 80%;
        margin: 0 auto;
    }
}

@media screen and (min-width:641px) {
    #reasons .professor__cont picture {
        margin-top: -12rem;
        width: 28rem
    }

    #reasons .professor__cont picture img {
        position: relative;
        bottom: -1.6rem;
    }
}

@media screen and (min-width:641px) and (max-width:1024px) {
    #reasons .professor__cont picture {
        width: 18rem;
    }
}

#cta, #regular {
    padding-top: 4rem;
}

#cta::after, #cta::before, #regular::after, #regular::before {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
}

#cta::before, #regular::before {
    background: top/100% no-repeat url('//www.fanta-shop.jp/cdn/shop/files/regular-bg01.jpg?v=11091977272874744380');
    top: 0;
}

@media screen and (max-width:1024px) {
    #cta::before, #regular::before {
        background: top/100% no-repeat url('//www.fanta-shop.jp/cdn/shop/files/regular-bg01_sp.jpg?v=16776752837717564545');
    }
}

@media screen and (min-width:1441px) {
    #cta::before, #regular::before {
        background: bottom/100% no-repeat url('//www.fanta-shop.jp/cdn/shop/files/regular-bg01.jpg?v=11091977272874744380');
        bottom: 0;
    }
}

#cta::after, #regular::after {
    background: bottom/100% no-repeat url('//www.fanta-shop.jp/cdn/shop/files/regular-bg02.jpg?v=11904671131211997028');
    bottom: 0;
}

@media screen and (min-width:1441px) {
    #cta::after, #regular::after {
        display: none;
    }
}

@media screen and (max-width:1024px) {
    #cta::after, #regular::after {
        display: none
    }

    #cta .regular__cont, #regular .regular__cont {
        position: relative
    }

    #cta .regular__cont::before, #regular .regular__cont::before {
        content: "";
        display: block;
        position: absolute;
        z-index: -1;
        width: 16rem;
        height: 100%;
        bottom: 0
    }

    #cta .regular__cont.-cat::before, #regular .regular__cont.-cat::before {
        background: left/contain no-repeat url('//www.fanta-shop.jp/cdn/shop/files/regular-bg02-01_sp.png?v=5880848295167265186');
        left: 0
    }

    #cta .regular__cont.-dog::before, #regular .regular__cont.-dog::before {
        background: right/contain no-repeat url('//www.fanta-shop.jp/cdn/shop/files/regular-bg02-02_sp.png?v=7797256862309359656');
        right: 0;
    }
}

@media screen and (min-width:641px) and (max-width:1024px) {
    #cta .regular__cont::before, #regular .regular__cont::before {
        bottom: -1rem;
        width: 20%;
        height: 44rem;
    }
}

#cta .l-contents, #merit .l-contents, #regular .l-contents {
    position: relative;
    z-index: 10;
}

#cta .l-contents .logo img, #regular .l-contents .logo img {
    display: block;
    margin: 0 auto 4rem;
}

@media screen and (min-width:641px) {
    #cta .l-contents .logo img, #regular .l-contents .logo img {
        position: absolute;
    }
}

@media screen and (max-width:1024px) {
    #cta .l-contents .logo img, #regular .l-contents .logo img {
        width: 18.5rem;
        height: 8rem;
    }
}

@media screen and (min-width:641px) and (max-width:1024px) {
    #cta .l-contents .logo img, #regular .l-contents .logo img {
        left: 1rem;
        top: -2rem;
    }
}

@media screen and (min-width:1025px) {
    #cta .l-contents .logo img, #regular .l-contents .logo img {
        top: 0;
        width: 24rem;
        height: 10rem;
        left: calc((100% - 120rem)/2);
    }
}

#cta .l-contents .regular__header, #regular .l-contents .regular__header {
	font-family: "Noto Sans JP", sans-serif !important;
	font-weight: 700;
    margin: 0 auto 5rem;
    position: relative;
    text-align: center;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
}

#cta .l-contents .regular__header--pic img, #regular .l-contents .regular__header--pic img {
    width: 17rem;
    height: 17rem;
    -o-object-fit: contain;
    object-fit: contain;
    position: absolute;
    right: -12rem;
    top: -6rem;
    z-index: -1;
}

@media screen and (max-width:640px) {
    #cta .l-contents .regular__header--pic img, #regular .l-contents .regular__header--pic img {
        width: 9rem;
        height: 9rem;
        right: -2rem;
        top: -8rem;
        z-index: 1;
    }
}

@media screen and (min-width:641px) and (max-width:1024px) {
    #cta .l-contents .regular__header--pic img, #regular .l-contents .regular__header--pic img {
        width: 10rem;
        height: 10rem;
        right: -4rem;
        top: -6rem;
        z-index: 1;
    }
}

#cta .l-contents .regular__header--sub, #regular .l-contents .regular__header--sub {
    background: #009d45;
    color: #fff;
    font-size: clamp(3.8rem, 4.9vw, 4rem);
    font-weight: 900;
    line-height: 1;
    padding: .8rem;
    margin: 0 auto .8rem;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
}

#cta .l-contents .regular__header--main, #regular .l-contents .regular__header--main {
    border-bottom: 2px solid #fff;
    display: inline;
    font-size: clamp(2rem, 2.6vw, 2.8rem);
    font-weight: 800;
    line-height: 1.4;
}

@media screen and (max-width:640px) {
    #cta .l-contents .regular__header--main, #regular .l-contents .regular__header--main {
        line-height: 1.6;
    }
}

#cta .l-contents .regular__header--main span, #regular .l-contents .regular__header--main span {
    display: inline;
    font-weight: 800;
}

#cta .l-contents .regular__header--main .s1, #regular .l-contents .regular__header--main .s1 {
    font-size: clamp(3rem, 3.9vw, 4.5rem);
}

#cta .l-contents .regular__header--main .s2, #regular .l-contents .regular__header--main .s2 {
    font-size: clamp(2rem, 2.6vw, 3.4rem);
}

#cta .l-contents .regular__header--main .s3, #regular .l-contents .regular__header--main .s3 {
    font-size: clamp(2rem, 2.6vw, 4.2rem);
}

#cta .l-contents .l-lrbox, #regular .l-contents .l-lrbox {
    margin: 0 auto 2rem;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
}

#cta .l-contents .l-lrbox span, #merit .merit__header--h3 span, #regular .l-contents .l-lrbox span {
    background: #009d45;
    line-height: 1;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
}

#cta .l-contents .l-lrbox span, #regular .l-contents .l-lrbox span {
    display: block;
    font-size: 2rem;
    font-weight: 900;
    padding: .6rem .8rem;
    margin-bottom: 1.6rem;
}

@media screen and (max-width:640px) {
    #cta .l-contents .l-lrbox span, #regular .l-contents .l-lrbox span {
        margin: 0 auto 1.6rem;
    }
}

#cta .l-contents .l-lrbox__item, #regular .l-contents .l-lrbox__item {
    gap: 1rem;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin-bottom: 1rem;
}

#cta .l-contents .l-lrbox__l, #regular .l-contents .l-lrbox__l {
    width: 24rem;
}

@media screen and (max-width:640px) {
    #cta .l-contents .l-lrbox__l, #regular .l-contents .l-lrbox__l {
        margin: 0 auto;
    }
}

#cta .l-contents .l-lrbox__r, #regular .l-contents .l-lrbox__r {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
}

#cta .l-contents .c-btn, #regular .l-contents .c-btn {
    margin-bottom: 6rem;
}

#cta .l-contents.lineup-contents picture img, #regular .l-contents.lineup-contents picture img {
    display: block;
    width: 14rem;
    height: auto;
    margin: 6.4rem auto .4rem;
}

#cta .l-contents.lineup-contents .lineup__header, #regular .l-contents.lineup-contents .lineup__header {
    margin-top: 9rem;
    padding-bottom: 1rem;
    text-align: center;
}

@media screen and (max-width:640px) {
    #cta .l-contents.lineup-contents .lineup__header, #regular .l-contents.lineup-contents .lineup__header {
        margin-top: 0;
    }
}

@media screen and (min-width:1441px) {
    #cta .l-contents.lineup-contents .lineup__header, #regular .l-contents.lineup-contents .lineup__header {
        margin-top: 0;
    }
}

#cta .l-contents.lineup-contents .lineup__header--sub, #regular .l-contents.lineup-contents .lineup__header--sub {
    background: #009d45;
    color: #fff;
    font-size: 2rem;
    font-weight: 900;
    line-height: 1;
    padding: .4rem .8rem;
    margin: 0 auto 1.2rem;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
}

#cta .l-contents.lineup-contents .lineup__header--main, #regular .l-contents.lineup-contents .lineup__header--main {
    font-size: clamp(3.2rem, 4.2vw, 4.8rem);
    font-weight: 900;
    letter-spacing: .4rem;
    line-height: 1;
    margin-bottom: 1rem;
}

@media screen and (min-width:641px) {
    #cta .l-contents.lineup-contents .lineup__pic, #regular .l-contents.lineup-contents .lineup__pic {
        display: none;
    }
}

@media screen and (min-width:1441px) {
    #cta .l-contents.lineup-contents .lineup__pic, #regular .l-contents.lineup-contents .lineup__pic {
        display: block;
    }
}

#cta .l-contents.lineup-contents p, #regular .l-contents.lineup-contents p {
    border-bottom: 2px solid #fff;
    font-size: clamp(1.5rem, 1.95vw, 2.4rem);
    font-weight: 900;
    margin: 0 auto 4rem;
    padding-bottom: .4rem;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
}

#cta, #merit, #regular {
    position: relative;
}

#merit::after, #merit::before {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
}

#merit::before {
    background: top/100% no-repeat url('//www.fanta-shop.jp/cdn/shop/files/merit-bg01.png?v=2715248097319641729');
    top: 0;
}

#merit::after {
    background: bottom/100% no-repeat url('//www.fanta-shop.jp/cdn/shop/files/merit-bg02.png?v=14707121308142240500');
    bottom: 0;
}

#merit .merit__header--h3 {
    font-size: clamp(2rem, 2.6vw, 3.2rem);
    font-family: "Noto Serif JP", serif !important;
    font-weight: 800;
    line-height: 1.6;
    margin-bottom: 1.2rem;
}

@media screen and (max-width:640px) {
    #merit .merit__header--h3 {
        margin-bottom: .8rem;
    }
}

#merit .merit__header--h3 span {
    color: #fff;
    font-family: "Noto Sans JP", sans-serif !important;
    font-weight: 800 !important;
    margin-bottom: .8rem;
    padding: .8rem;
}

#merit .l-lrbox__item {
    margin-bottom: 3rem;
}

@media screen and (max-width:640px) {
    #merit .l-lrbox__item {
        gap: 1rem;
    }
}

@media screen and (min-width:641px) {
    #merit .l-lrbox__item:nth-child(2n) {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
        flex-direction: row-reverse
    }

    #merit .l-lrbox__l {
        width: 34rem;
    }
}

#merit .l-lrbox__l img {
    width: 100%;
}

#merit .l-lrbox__r {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
}

#lineup .l-section__header {
    margin-bottom: 2rem;
}

#lineup .l-section__header+p, #merit .merit__header--h3 span {
    font-size: clamp(1.6rem, 2.1vw, 2rem);
    font-weight: 700;
}

#lineup .lineup__info {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 1rem;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin: 2rem auto 6rem;
}

#lineup .lineup__info span {
    border: 2px solid #000;
    border-radius: .5rem;
    font-weight: 700;
    padding: .4rem 1rem;
    text-align: center;
    width: 14.5rem;
}

@media screen and (max-width:640px) {
    #lineup .lineup__info span {
        line-height: 1;
    }
}

#lineup .lineup__header--h3 {
    border-bottom: 4px solid #000;
    font-family: "Noto Sans JP", sans-serif !important;
    font-size: clamp(2.4rem, 3.1vw, 3.2rem);
    font-weight: 900;
    line-height: 1;
    padding-bottom: 1.2rem;
    margin-bottom: 4rem;
}

#lineup .lineup__header--h4 {
    border-radius: .4rem;
    color: #fff;
    font-family: "Noto Sans JP", sans-serif !important;
    font-size: 2.2rem;
    font-weight: 800;
    text-align: center;
    line-height: 1;
    margin-bottom: 1rem;
    padding: .8rem .8rem 1rem;
}

@media screen and (max-width:640px) {
    #lineup .lineup__header--h4 {
        margin: 0 auto 1rem;
        width: -webkit-fit-content;
        width: -moz-fit-content;
        width: fit-content;
    }
}

#lineup .lineup__header--h4.-green {
    background: #03b743;
}

#lineup .lineup__header--h4.-yellow {
    background: #ffb004;
}

#lineup .lineup__header--h4.-orange {
    background: #e76226;
}

#lineup .lineup__header--h4.-red {
    background: #c91c2c;
}

#lineup .lineup__header--h4.-lightblue {
    background: #00a8d6;
}

#lineup .lineup__header--h4.-blue {
    background: #0b77ba;
}

#lineup .lineup__header--h4.-bluegreen {
    background: #00bab1;
}

#lineup .lineup__header--h5 {
    text-align: center;
    font-family: "Noto Sans JP", sans-serif !important;
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 1.5;
    margin-bottom: 1rem;
}

@media screen and (min-width:641px) {
    #lineup .l-clm {
        gap: 2.5rem;
    }
}

@media screen and (min-width:1025px) {
    #lineup .l-clm__item {
        width: calc((100% - 5rem)/3);
    }
}

@media screen and (min-width:641px) and (max-width:1024px) {
    #lineup .l-clm__item {
        width: calc((100% - 2.5rem)/2);
    }
}

#lineup .l-clm__item img {
    display: block;
    margin: 0 auto 1rem;
    width: auto;
}

#lineup .l-clm__item p {
    font-size: 1.4rem;
    font-weight: 500;
    line-height: 1.5;
}

#lineup .cat-block img {
    height: 14rem;
}

#lineup .dog-block img {
    height: 18rem;
}

#voice {
    background: #009d45;
}

#voice .voice__header {
    background: center/contain no-repeat url('//www.fanta-shop.jp/cdn/shop/files/voice__header-bg.svg?v=5451831908671507965');
    margin: 0 auto 3.2rem;
    padding: 2.4rem 7rem;
    position: relative;
    text-align: center;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
}

#voice .voice__header--sub {
    color: #009d45;
    font-size: 1.6rem;
    font-family: "Alatsi", sans-serif !important;
    font-weight: 500;
    letter-spacing: .4rem;
    line-height: 1;
    margin-bottom: .4rem;
}

#voice .voice__header--main {
	font-family: "Noto Sans JP", sans-serif !important;
    font-size: clamp(3.2rem, 4.2vw, 4.8rem);
    font-weight: 700;
    line-height: 1.4;
    margin-bottom: .4rem;
}

#voice .voice__header::after {
    background: center/contain no-repeat url('//www.fanta-shop.jp/cdn/shop/files/voice__header-decoration.svg?v=6227958496573813600');
    content: "";
    display: block;
    width: 20rem;
    height: 9rem;
    position: absolute;
    right: -22rem;
    bottom: 1.6rem;
}

@media screen and (max-width:640px) {
    #voice .voice__header::after {
        display: none;
    }
}

#voice .voice__header--h3 {
    font-size: 2.2rem;
    font-family: "Noto Serif JP", serif !important;
    font-weight: 700;
    margin-bottom: 1.2rem;
    line-height: 1.4;
}

#voice .voice__header--h3 em {
    color: #009d45;
    font-size: 2.2rem;
    font-weight: 700;
}

#voice .l-clm {
    gap: 3rem;
}

@media screen and (max-width:1024px) {
    #voice .l-clm {
        gap: 1.5rem;
    }
}

#voice .l-clm__item {
    background: #fff;
    -webkit-box-shadow: 8px 8px 0 0 rgba(0, 0, 0, .25);
    box-shadow: 8px 8px 0 0 rgba(0, 0, 0, .25);
    border-radius: 1rem;
    padding: 3rem 2rem 2rem;
    position: relative;
}

@media screen and (min-width:1025px) {
    #voice .l-clm__item {
        width: calc((100% - 6rem)/3);
    }
}

@media screen and (min-width:641px) and (max-width:1024px) {
    #voice .l-clm__item {
        width: calc((100% - 1.5rem)/2);
    }
}

#voice .l-clm__item img {
    border-radius: .5rem;
    display: block;
    width: 100%;
    height: 25rem;
    margin-bottom: 1.6rem;
    -o-object-fit: cover;
    object-fit: cover;
}

@media screen and (max-width:640px) {
    #voice .l-clm__item img {
        width: 80%;
        margin: 0 auto 1.6rem;
    }
}

#faq .faq__cont:not(:last-child) {
    margin-bottom: 4rem;
}

#faq .faq__q {
    background: #f3f3f3;
    margin-bottom: 1rem;
    padding: 1rem;
}

#faq .faq__q p {
    font-size: clamp(2rem, 2.6vw, 2.4rem);
    font-weight: 700;
}

#faq .faq__a p {
    font-size: clamp(1.6rem, 2.1vw, 1.8rem);
    font-weight: 500;
}

#faq .faq__a p mark {
    color: #009d45;
    font-size: 1.8rem;
}