@font-face {
    font-family: "Circular Pro";
    src: url("../font/lineto-circular-pro-bold.woff") format("woff");
    font-weight: normal;
    font-style: normal;
    font-display: swap
}

.u-desktop {
    display: none
}

@media screen and (min-width: 768px) {
    .u-desktop {
        display:block
    }
}

@media screen and (min-width: 768px) {
    .u-mobile {
        display:none
    }
}

.text-primary {
    color: #334e70
}

.text-blue {
    color: #334e70
}

html {
    font-size: 16px
}

@media(max-width: 375px) {
    html {
        font-size:4.2666666667vw
    }
}

@media screen and (min-width: 768px) {
    html {
        font-size:1.3333333333vw
    }
}

@media(min-width: 1200px) {
    html {
        font-size:16px
    }
}

a {
    text-decoration: none;
    color: inherit;
    -webkit-transition: opacity .3s;
    transition: opacity .3s
}

@media screen and (min-width: 768px) {
    a:hover {
        opacity:.8
    }
}

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

ul,ol {
    padding: 0
}

body,h1,h2,h3,h4,p,ul,ol,figure,blockquote,dl,dd {
    margin: 0
}

html {
    scroll-behavior: smooth
}

body {
    min-height: 100vh;
    text-rendering: optimizeSpeed;
    line-height: 1.5
}

ul,ol {
    list-style: none
}

a:not([class]) {
    -webkit-text-decoration-skip: ink;
    text-decoration-skip-ink: auto
}

img {
    max-width: 100%;
    display: block;
    width: 100%
}

article>*+* {
    margin-top: 1em
}

input,button,textarea,select {
    font: inherit
}

img:not([alt]) {
    -webkit-filter: blur(10px);
    filter: blur(10px)
}

input,button,select,textarea {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background: rgba(0,0,0,0);
    border: none;
    border-radius: 0;
    font: inherit;
    outline: none
}

textarea {
    resize: vertical
}

input[type=checkbox],input[type=radio] {
    display: none
}

input[type=submit],input[type=button],label,button,select {
    cursor: pointer
}

select::-ms-expand {
    display: none
}

body {
    font-family: "Noto Sans JP";
    color: #4d4d4d
}

h2 {
    font-weight: 500
}

.inner {
    width: 100%;
    padding-inline:1.25rem;margin-inline:auto}

@media screen and (min-width: 768px) {
    .inner {
        max-width:1250px;
        padding-inline:25px}
}

.footer {
    background-color: #fff;
    padding-block:3.75rem 6.875rem}

@media screen and (min-width: 768px) {
    .footer {
        padding-block:5rem
    }
}

.footer__link-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    gap: 2.875rem;
    padding-bottom: 1.875rem;
    border-bottom: 1px solid #4d4d4d
}

@media screen and (min-width: 768px) {
    .footer__link-list {
        gap:5rem;
        padding-bottom: 3.125rem
    }
}

.footer__link-logo {
    width: 2.5rem
}

@media screen and (min-width: 768px) {
    .footer__link-logo {
        width:4.875rem
    }
}

.footer__link-caption {
    font-size: .75rem;
    font-weight: 300;
    margin-top: .25rem
}

@media screen and (min-width: 768px) {
    .footer__link-caption {
        font-size:1.3125rem;
        margin-top: .4375rem
    }
}

.footer__detail {
    margin-top: 3.125rem;
    font-weight: 300
}

@media screen and (min-width: 768px) {
    .footer__detail {
        display:-webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: horizontal;
        -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
        flex-direction: row-reverse;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between
    }
}

.footer__details {
    padding-top: 50px;
    border-top: 1px solid #000
}

.footer__detail-link-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 1em
}

@media screen and (min-width: 768px) {
    .footer__detail-link-list {
        -webkit-box-align:end;
        -ms-flex-align: end;
        align-items: flex-end
    }
}

@media screen and (min-width: 768px) {
    .footer__detail-link-item {
        font-size:1.3125rem
    }
}

.footer__detail-link {
    text-decoration: underline
}

.footer__detail-bottom {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column
}

@media screen and (min-width: 768px) {
    .footer__detail-bottom {
        -webkit-box-align:start;
        -ms-flex-align: start;
        align-items: flex-start
    }
}

.footer__detail-logo {
    width: 13.5rem;
    margin-top: 3.125rem
}

@media screen and (min-width: 768px) {
    .footer__detail-logo {
        width:23.75rem;
        margin-top: 0
    }
}

.footer__detail-text {
    margin-top: 1.1875rem;
    font-size: .6875rem;
    text-align: center
}

@media screen and (min-width: 768px) {
    .footer__detail-text {
        text-align:left;
        margin-top: 1.875rem;
        font-size: 1.3125rem
    }
}

.footer__detail-copyright {
    font-size: .75rem;
    margin-top: 3.125rem
}

@media screen and (min-width: 768px) {
    .footer__detail-copyright {
        font-size:1rem;
        margin-top: 3.75rem
    }
}

.pagetop {
    position: fixed;
    width: 50px;
    height: 50px;
    background: #334e70;
    border-radius: 50px;
    right: 1%;
    bottom: 20px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    z-index: 2;
    opacity: 0;
    -webkit-transition: ease-in-out .3s;
    transition: ease-in-out .3s
}

.pagetop.appear {
    opacity: 1
}

@media screen and (min-width: 768px) {
    .pagetop {
        border:0;
        width: 60px;
        height: 60px;
        bottom: 5%
    }
}

.fixed-menu+.pagetop {
    bottom: 4.25rem
}

@media screen and (min-width: 768px) {
    .fixed-menu+.pagetop {
        bottom:7.5rem
    }
}

.pagetop_arrow {
    height: 10px;
    width: 10px;
    border-top: 3px solid #fff;
    border-right: 3px solid #fff;
    -webkit-transform: translateY(20%) rotate(-45deg);
    transform: translateY(20%) rotate(-45deg)
}

@media screen and (min-width: 768px) {
    a[href^="tel:"] {
        pointer-events:none;
        cursor: default
    }
}

.btn {
    position: relative;
    text-align: center;
    display: inline-block;
    border-radius: 2.8125rem;
    max-width: 37.5rem
}

.btn__icon {
    width: 2.5rem;
    height: 1.5625rem;
    background-color: #2ab534;
    -webkit-mask-image: url(../images/icon/coupon.png);
    mask-image: url(../images/icon/coupon.png);
    -webkit-mask-size: cover;
    mask-size: cover
}

@media screen and (min-width: 768px) {
    .btn__icon {
        width:2.875rem;
        height: 1.8125rem
    }
}

.btn--arrow::after {
    position: absolute;
    content: "";
    width: .375rem;
    height: .625rem;
    background-color: #2ab534;
    -webkit-mask-image: url(../images/icon/arrow-right.png);
    mask-image: url(../images/icon/arrow-right.png);
    -webkit-mask-size: cover;
    mask-size: cover;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    right: .9375rem
}

@media screen and (min-width: 768px) {
    .btn--arrow::after {
        width:1rem;
        height: 1.5rem;
        right: 2.5rem
    }
}

.btn--plus::after {
    position: absolute;
    content: "";
    width: .75rem;
    height: .75rem;
    -webkit-mask-image: url(../images/icon/plus.png);
    mask-image: url(../images/icon/plus.png);
    -webkit-mask-size: cover;
    mask-size: cover;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    right: 15px
}

@media screen and (min-width: 768px) {
    .btn--plus::after {
        width:1.5rem;
        height: 1.5rem;
        right: 2.5rem
    }
}

.btn--plus.active::after {
    width: .75rem;
    height: .125rem;
    -webkit-mask-image: url(../images/icon/minus.png);
    mask-image: url(../images/icon/minus.png)
}

@media screen and (min-width: 768px) {
    .btn--plus.active::after {
        width:1.5rem;
        height: .25rem
    }
}

.btn--line {
    padding: .9375rem 1.5rem;
    font-size: 1.125rem;
    background-color: #fff;
    color: #2ab534;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: .375rem;
    margin-inline:auto;font-size: 1rem
}

@media screen and (min-width: 768px) {
    .btn--line {
        gap:.75rem;
        padding: 1.0625rem 2rem;
        font-size: 1.5rem
    }
}

.btn--line-green {
    padding: 1.0625rem 2rem;
    font-size: 1.125rem;
    background-color: #2ab534;
    color: #fff;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin-inline:auto;gap: 12px
}

@media screen and (min-width: 768px) {
    .btn--line-green {
        font-size:1.5rem
    }
}

.btn--line-green .btn__icon {
    background-color: #fff
}

.btn--red {
    padding: .9375rem;
    width: 100%;
    font-size: .875rem;
    border: 1px solid #334e70;
    background-color: #fff;
    color: #334e70;
    font-weight: bold
}

.btn--red::after {
    background-color: #334e70
}

@media screen and (min-width: 768px) {
    .btn--red {
        font-size:1.5rem;
        border-width: .125rem;
        padding: 1.6875rem 1.5rem 1.75rem
    }
}

.btn--green {
    padding: .9375rem;
    width: 100%;
    font-size: .875rem;
    border: 1px solid #306636;
    background-color: #fff;
    color: #306636;
    font-weight: bold
}

.btn--green::after {
    background-color: #306636
}

@media screen and (min-width: 768px) {
    .btn--green {
        font-size:1.5rem;
        border-width: .125rem;
        padding: 1.6875rem 1.5rem 1.75rem
    }
}

.btn--reserve {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    gap: 1.25rem;
    padding: .625rem 2rem;
    background-color: #334e70;
    color: #fff
}

@media screen and (min-width: 768px) {
    .btn--reserve {
        font-size:1.5rem;
        gap: 1.875rem
    }
}

.btn--reserve::before {
    display: inline-block;
    content: "";
    width: 1.1875rem;
    height: 2.1875rem;
    background: url("../images/icon/phone.png") center/cover
}

@media screen and (min-width: 768px) {
    .btn--reserve::before {
        width:1.875rem;
        height: 3.375rem
    }
}

.btn--reserve::after {
    content: "";
    display: inline-block;
    position: absolute;
    width: .5625rem;
    height: .9375rem;
    right: 1.25rem;
    background-color: #fff;
    -webkit-mask: url("../images/icon/arrow-right.png") center/cover;
    mask: url("../images/icon/arrow-right.png") center/cover
}

@media screen and (min-width: 768px) {
    .btn--reserve::after {
        width:.25rem;
        height: .5625rem;
        right: 1.75rem
    }
}

.btn--tel {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    padding: .625rem 2rem;
    background-color: #334e70;
    color: #fff
}

@media screen and (min-width: 768px) {
    .btn--tel {
        font-size:1.5rem
    }
}

.btn--tel::before {
    display: inline-block;
    content: "";
    width: 2.125rem;
    aspect-ratio: 1;
    background: url("../images/icon/tel.png") center/cover;
    margin-right: 1.25rem
}

@media screen and (min-width: 768px) {
    .btn--tel::before {
        width:3.375rem;
        margin-right: 1.875rem
    }
}

.btn--tel::after {
    content: "";
    display: inline-block;
    position: absolute;
    width: .5625rem;
    height: .9375rem;
    right: 1.25rem;
    background-color: #fff;
    -webkit-mask: url("../images/icon/arrow-right.png") center/cover;
    mask: url("../images/icon/arrow-right.png") center/cover
}

@media screen and (min-width: 768px) {
    .btn--tel::after {
        width:.25rem;
        height: .5625rem;
        right: 1.75rem;
        display: none
    }
}

.btn--primary {
    background-color: #334e70;
    color: #fff;
    width: 100%
}

.btn--down {
    position: relative;
    font-size: .875rem;
    padding: .9375rem 1.5rem;
    width: 100%
}

@media screen and (min-width: 768px) {
    .btn--down {
        font-size:1.5rem;
        padding: 1.5rem 2rem
    }
}

.btn--down::after {
    content: "";
    display: inline-block;
    position: absolute;
    top: 50%;
    right: 1.75rem;
    width: .3125rem;
    height: .625rem;
    background-color: #fff;
    -webkit-transform: translateY(-50%) rotate(90deg);
    transform: translateY(-50%) rotate(90deg);
    -webkit-mask: url("../images/icon/arrow-right.png") center/cover;
    mask: url("../images/icon/arrow-right.png") center/cover
}

@media screen and (min-width: 768px) {
    .btn--down::after {
        width:.8125rem;
        height: 1.5rem;
        right: 2.5rem
    }
}

.fixed-menu {
    position: fixed;
    left: 0;
    bottom: 0;
    width: 100%;
    opacity: 0;
    -webkit-transition: ease-in-out .3s;
    transition: ease-in-out .3s;
    z-index: 999
}

.fixed-menu.appear {
    opacity: 1
}

.fixed-menu--line {
    background-color: #2ab534
}

@media screen and (min-width: 768px) {
    .fixed-menu--line {
        background-color:#f6f6f6;
        padding: 1.25rem
    }
}

.fixed-menu__inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 1px
}

.fixed-menu__item {
    width: 50%
}

.fixed-menu__item a {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    gap: .375rem;
    color: #fff;
    padding: 1.125rem .625rem 1.1875rem;
    font-weight: bold;
    line-height: 1.125;
    width: 100%;
    height: 100%
}

@media screen and (max-width: 400px) {
    .fixed-menu__item a {
        font-size:.875rem
    }
}

.fixed-menu__item a::before {
    content: "";
    aspect-ratio: 1
}

.fixed-menu__item a::after {
    position: absolute;
    content: "";
    width: .375rem;
    height: .625rem;
    background-color: #fff;
    -webkit-mask-image: url(../images/icon/arrow-right.png);
    mask-image: url(../images/icon/arrow-right.png);
    -webkit-mask-size: cover;
    mask-size: cover;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    right: .5625rem
}

.fixed-menu__item--store a {
    background-color: #334e70
}

.fixed-menu__item--store a::before {
    width: 1.125rem;
    background: url(../images/icon/search.png) center/cover
}

@media screen and (max-width: 400px) {
    .fixed-menu__item--store a::before {
        width:1rem
    }
}

.fixed-menu__item--home a {
    background-color: #4d4d4d
}

.fixed-menu__item--home a::before {
    width: 1.25rem;
    background: url(../images/icon/deilvery.png) center/cover
}

@media screen and (max-width: 400px) {
    .fixed-menu__item--home a::before {
        width:1.125rem
    }
}

.accordion__body {
    margin-top: 1.5rem;
    padding: 1rem;
    background-color: #fff
}

.accordion__contents {
    text-align: left
}

.accordion__contents+.accordion__contents {
    margin-top: 1em
}

.accordion__contents h4 {
    margin-bottom: .375rem
}

.accordion__contents a {
    text-decoration: underline
}

.mv {
    width: 100vw;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
}

@media screen and (min-width: 768px) {
    .mv {
        -webkit-box-pack:center;
        -ms-flex-pack: center;
        justify-content: center;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        position: relative
    }
}

.taisho {
    padding-block:.75rem 1.125rem;background: #e4ecf5
}

@media screen and (min-width: 768px) {
    .taisho {
        padding-block:.5625rem 3rem
    }
}

.taisho__title {
    font-size: 1.0625rem;
    text-align: center;
    color: #334e70
}

@media screen and (min-width: 768px) {
    .taisho__title {
        font-size:1.9375rem
    }
}

.taisho__image {
    margin-top: .75rem
}

.tokuten {
    display: none;
    background-color: #e4ecf5;
    padding-block:.875rem 1.875rem}

@media screen and (min-width: 768px) {
    .tokuten {
        display:block;
        padding-block:3.125rem}
}

.tokuten__title {
    position: relative;
    font-size: 1.1875rem;
    color: #334e70;
    text-align: center
}

@media screen and (min-width: 768px) {
    .tokuten__title {
        font-size:1.9375rem
    }
}

.tokuten__title::before,.tokuten__title::after {
    position: absolute;
    content: "";
    background-color: #334e70;
    width: .125rem;
    height: 1.25rem;
    bottom: .375rem
}

@media screen and (min-width: 768px) {
    .tokuten__title::before,.tokuten__title::after {
        width:.25rem;
        height: 2.5rem;
        bottom: .125rem
    }
}

.tokuten__title::before {
    -webkit-transform: rotate(-20deg);
    transform: rotate(-20deg);
    left: calc(50% - 6.875rem)
}

@media screen and (min-width: 768px) {
    .tokuten__title::before {
        left:calc(50% - 12.25rem)
    }
}

.tokuten__title::after {
    -webkit-transform: rotate(20deg);
    transform: rotate(20deg);
    right: calc(50% - 6.875rem)
}

@media screen and (min-width: 768px) {
    .tokuten__title::after {
        right:calc(50% - 12.25rem)
    }
}

.tokuten__image {
    margin-top: .625rem;
    max-width: 46.875rem;
    margin-inline:auto}

@media screen and (min-width: 768px) {
    .tokuten__image {
        margin-top:1.625rem
    }
}

.tokuten__link {
    margin-top: .625rem;
    text-align: center
}

@media screen and (min-width: 768px) {
    .tokuten__link {
        margin-top:2rem
    }
}

.line-top {
    padding-top: 1.25rem;
    margin-bottom: 1rem;
}

@media screen and (min-width: 768px) {
    .line-top {
        margin-top:4.0625rem
    }
}

@media screen and (min-width: 768px) {
    .line-top__inner {
        max-width:1810px
    }
}

.line-top__body {
    padding: 1.875rem 1.25rem;
    background-color: #2bb534;
    color: #fff;
    text-align: center
}

@media screen and (min-width: 768px) {
    .line-top__body {
        padding-block:5rem
    }
}

.line-top__lead {
    line-height: 1.4444;
    text-align: center;
    font-weight: bold;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    gap: .375rem;
    font-size: .9375rem
}

@media screen and (min-width: 768px) {
    .line-top__lead {
        font-size:1.5rem;
        gap: .875rem
    }
}

.line-top__lead::before,.line-top__lead::after {
    content: "";
    width: 2.25rem;
    height: 2px;
    background: #fff
}

@media screen and (min-width: 768px) {
    .line-top__lead::before,.line-top__lead::after {
        width:8.75rem
    }
}

.line-top__title {
    font-size: 1.25rem;
    line-height: 1.52;
    text-align: center;
    font-weight: bold;
    margin-top: 1.3125rem
}

@media screen and (min-width: 768px) {
    .line-top__title {
        font-size:2.25rem
    }
}

.line-top__btn {
    margin-top: 1.375rem;
    font-weight: bold;
    text-align: center
}

@media screen and (min-width: 768px) {
    .line-top__btn {
        margin-top:3.25rem
    }
}

.method {
    overflow-x: clip;
    padding-block:1.5rem}

@media screen and (min-width: 768px) {
    .method {
        padding-block:3rem
    }
}

@media screen and (min-width: 768px) {
    .method__inner {
        max-width:900px
    }
}

.method__title {
    font-size: 1.5rem;
    color: #334e70;
    font-weight: 700;
    text-align: center
}

@media screen and (min-width: 768px) {
    .method__title {
        font-size:3.125rem
    }
}

.method__contents {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 7.5rem;
    margin-top: 2.5rem
}

@media screen and (min-width: 768px) {
    .method__contents {
        gap:12.5rem
    }
}

.method__img {
    margin-top: 1.875rem
}

@media screen and (min-width: 768px) {
    .method__img {
        margin-top:2.5rem
    }
}

.method__lead {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    gap: .625rem;
    font-size: 1.1875rem;
    color: #334e70;
    font-weight: 700;
    text-align: center;
    margin-bottom: 1.25rem
}

@media screen and (min-width: 768px) {
    .method__lead {
        font-size:1.9375rem
    }
}

.method__lead::before,.method__lead::after {
    content: "";
    display: block;
    width: 3px;
    height: 42px;
    background-color: #334e70;
    -webkit-transform-origin: bottom;
    transform-origin: bottom
}

.method__lead::before {
    -webkit-transform: rotate(-30deg);
    transform: rotate(-30deg)
}

.method__lead::after {
    -webkit-transform: rotate(30deg);
    transform: rotate(30deg)
}

.method__subtitle {
    font-size: 1.625rem;
    letter-spacing: .02em;
    color: #fff;
    background-color: #334e70;
    font-weight: bold;
    padding: .3125rem .625rem .4375rem;
    text-align: center
}

@media screen and (min-width: 768px) {
    .method__subtitle {
        font-size:2.5rem
    }
}

.method__text {
    font-size: 1.125rem;
    margin-top: 1.875rem;
    line-height: 2
}

@media screen and (min-width: 768px) {
    .method__text {
        font-size:1.3125rem;
        margin-top: 2.5rem
    }
}

.method__text-line {
    display: inline;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    background: -webkit-gradient(linear, left top, left bottom, color-stop(50%, transparent), color-stop(50%, #FFF495));
    background: linear-gradient(transparent 50%, #FFF495 50%)
}

.method__point {
    margin-top: 1.875rem
}

@media screen and (min-width: 768px) {
    .method__point {
        margin-top:2.5rem
    }
}

.method__body {
    padding: 1.875rem;
    margin-top: 1.875rem;
    background-color: #fff
}

@media screen and (min-width: 768px) {
    .method__body {
        margin-top:2.5rem;
        padding: 2.8125rem 3.125rem 3.125rem
    }
}

.method__list {
    margin-top: 1.3125rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 1rem
}

@media screen and (min-width: 768px) {
    .method__list {
        gap:1.25rem
    }
}

.method__step:nth-child(n+1) {
    border-bottom: 2px solid #cbcbcb
}

.method__banner {
    margin-top: 1.875rem;
    max-width: 490px;
    margin-inline:auto}

.method__link {
    margin-top: 1.875rem;
    text-align: center
}

#store .method__item {
    /* margin-top: 80px */
}

#store {background-color: #e4ecf5;}
#home {}
#pick {
    background-color: #fff9ef
}

#home .method__body {
    background-color: #e4ecf5
}
#pick .method__subtitle {
    font-size: 1.3125rem
}

@media screen and (min-width: 768px) {
    #pick .method__subtitle {
        font-size:1.625rem
    }
}

#pick .method__step:last-child {
    border-bottom: 0
}

.method-step {
    padding-bottom: 1.25rem
}

@media screen and (min-width: 768px) {
    .method-step {
        padding-bottom:1.875rem
    }
}

.method-step__wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start
}

.method-step__num {
    padding-bottom: .5rem;
    font-weight: bold;
    font-family: "Circular Pro",sans-serif
}

@media screen and (min-width: 768px) {
    .method-step__num {
        font-size:1.5rem;
        padding-bottom: .5625rem
    }
}

.method-step__num span {
    background-color: #334e70;
    font-family: "Noto Sans JP";
    color: #fff;
    padding: .1875rem .375rem .375rem;
    font-size: .625rem;
    font-weight: normal;
    margin-left: .625rem
}

@media screen and (min-width: 768px) {
    .method-step__num span {
        font-size:1rem;
        margin-left: 1.25rem;
        padding: .1875rem .625rem .375rem
    }
}

.method-step__num::after {
    content: "";
    display: block;
    width: 1.125rem;
    height: .1875rem;
    background: #334e70
}

@media screen and (min-width: 768px) {
    .method-step__num::after {
        width:1.6875rem;
        height: .25rem
    }
}

.method-step__way {
    font-size: 1.125rem;
    font-weight: bold
}

@media screen and (min-width: 768px) {
    .method-step__way {
        font-size:1.6875rem;
        margin-top: .9375rem
    }
}

.method-step__img {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 53.0487804878%;
    flex: 0 0 53.0487804878%
}

@media screen and (min-width: 768px) {
    .method-step__img {
        margin-top:.375rem;
        -webkit-box-flex: 0;
        -ms-flex: 0 0 28.8888888889%;
        flex: 0 0 28.8888888889%
    }
}

.method-step__text {
    margin-top: .625rem;
    font-size: .875rem
}

@media screen and (min-width: 768px) {
    .method-step__text {
        margin-top:.9375rem;
        font-size: 1.125rem
    }
}

.method-step__text small {
    font-size: .75rem
}

@media screen and (min-width: 768px) {
    .method-step__text small {
        font-size:.875rem
    }
}

.method-point {
    background-color: #e4ecf5;
    padding: 1.875rem 1.25rem
}

@media screen and (min-width: 768px) {
    .method-point {
        padding:1.25rem 3.125rem
    }
}

.method-point__title {
    color: #fff;
    background-color: #334e70;
    padding: .625rem;
    font-size: 1.1875rem;
    font-weight: bold;
    text-align: center;
    border-radius: 50px
}

@media screen and (min-width: 768px) {
    .method-point__title {
        font-size:1.625rem
    }
}

.method-point__list {
    display: grid;
    grid-template-columns: 1fr;
    margin-top: 1.25rem
}

@media screen and (min-width: 768px) {
    .method-point__list {
        grid-template-columns:repeat(3, 1fr)
    }
}

.method-point__item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    padding-inline:2.5rem;padding-block:1.875rem}

.method-point__item:nth-child(n+2) {
    border-top: 2px solid #cbcbcb
}

@media screen and (min-width: 768px) {
    .method-point__item:nth-child(n+2) {
        padding-block:.9375rem;
        border-top: none;
        border-left: 2px solid #cbcbcb
    }
}

.method-point__text {
    margin-top: 1.5rem;
    height: 3.75rem;
    font-size: 1.3125rem;
    font-weight: bold;
    text-align: center;
    color: #334e70
}

.method-pick__banner {
    margin-top: 1.875rem
}

@media screen and (min-width: 768px) {
    .method-pick__banner {
        margin-top:5rem
    }
}

.method-pick__cta {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 1.875rem;
    padding-block:1.875rem}

@media screen and (min-width: 768px) {
    .method-pick__cta {
        padding-block:5rem
    }
}

.method-pick__btn .btn {
    margin-inline:auto;margin-top: 10px
}

.method-pick__btn-title {
    text-align: center;
    font-weight: bold
}

@media screen and (min-width: 768px) {
    .method-pick__btn-title {
        font-size:1.5rem
    }
}

.method-pick__btn-description {
    font-size: .75rem;
    text-align: center;
    margin-top: .3125rem;
    color: #334e70
}

@media screen and (min-width: 768px) {
    .method-pick__btn-description {
        font-size:1rem;
        margin-top: .625rem
    }
}

.method-pick__why-problem {
    position: relative
}

.method-pick__why-problem::after {
    content: "";
    display: block;
    position: absolute;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    top: 100%;
    width: 0;
    height: 0;
    border-style: solid;
    border-right: 22px solid rgba(0,0,0,0);
    border-left: 22px solid rgba(0,0,0,0);
    border-top: 22px solid #334e70;
    border-bottom: 0
}

@media screen and (min-width: 768px) {
    .method-pick__why-problem::after {
        border-right:50px solid rgba(0,0,0,0);
        border-left: 50px solid rgba(0,0,0,0);
        border-top: 40px solid #334e70
    }
}

.method-pick__why-us {
    background-color: #e4ecf5;
    color: #334e70;
    text-align: center;
    padding-block:1.0625rem;border-radius: 1.25rem;
    margin-top: .8125rem
}

@media screen and (min-width: 768px) {
    .method-pick__why-us {
        padding-block:2.5rem;
        margin-top: 1.25rem
    }
}

.method-pick__why-us .subtitle {
    font-weight: bold
}

@media screen and (min-width: 768px) {
    .method-pick__why-us .subtitle {
        font-size:2.5rem
    }
}

.method-pick__why-us p {
    font-size: 1.625rem
}

@media screen and (min-width: 768px) {
    .method-pick__why-us p {
        font-size:4rem
    }
}

.method-pick__why-us .underline {
    background: -webkit-gradient(linear, left top, left bottom, color-stop(80%, transparent), color-stop(80%, #ffffff));
    background: linear-gradient(transparent 80%, #ffffff 80%)
}

.method-pick__point {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 32px;
    margin-top: 1.875rem
}

@media screen and (min-width: 768px) {
    .method-pick__point {
        margin-top:5rem
    }
}

.method-pick__point-item {
    position: relative;
    background-color: #fff
}

.method-pick__point-item img {
    display: block;
    width: 52.2222222222%
}

.method-pick__point-item:nth-child(odd) img {
    margin-left: auto
}

.method-pick__point-item:nth-child(odd) img {
    margin-left: auto
}

.method-pick__point-item:nth-child(odd) .method-pick__text {
    left: 1.25rem
}

@media screen and (min-width: 768px) {
    .method-pick__point-item:nth-child(odd) .method-pick__text {
        left:2.5rem
    }
}

.method-pick__text {
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    right: 1.25rem;
    font-size: 1.375rem;
    font-weight: bold;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: .5rem
}

@media screen and (min-width: 768px) {
    .method-pick__text {
        font-size:2.25rem;
        right: 2.5rem
    }
}

.method-pick__text span {
    background-color: #334e70;
    color: #fff;
    padding: .375rem .625rem
}

.method-pick__graph {
    margin-top: 1.875rem;
    width: calc(100% - 100px);
    margin-inline:auto}

@media screen and (min-width: 768px) {
    .method-pick__graph {
        margin-top:5rem
    }
}

.pick-method__us {
    background-color: #fff;
    padding: 1.875rem 1.25rem;
    margin-top: 1.875rem
}

@media screen and (min-width: 768px) {
    .pick-method__us {
        padding:3.125rem;
        margin-top: 5rem
    }
}

.pick-method__us-title {
    color: #334e70;
    font-size: 1.5625rem;
    text-align: center
}

@media screen and (min-width: 768px) {
    .pick-method__us-title {
        font-size:3.25rem
    }
}

.pick-method__us-description {
    text-align: center;
    margin-top: 1.875rem;
    line-height: 2
}

@media screen and (min-width: 768px) {
    .pick-method__us-description {
        font-size:1.3125rem
    }
}

.pick-method__us-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 20px;
    margin-top: 1.875rem
}

@media screen and (min-width: 768px) {
    .pick-method__us-list {
        margin-top:3.125rem
    }
}

.pick-method__us-item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: .9375rem;
    background-color: #e4ecf5;
    padding: 1.625rem 1.25rem;
    font-size: 1.125rem;
    font-weight: bold
}

@media screen and (min-width: 768px) {
    .pick-method__us-item {
        font-size:2rem;
        padding: 2.8125rem 3.125rem;
        gap: 2.5rem
    }
}

.pick-method__us-item::before {
    content: "";
    display: block;
    width: 2.875rem;
    height: 2.375rem;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    background: url(../images/icon/checkbox.png) center/cover
}

@media screen and (min-width: 768px) {
    .pick-method__us-item::before {
        width:4rem;
        height: 3.375rem
    }
}

.line {
    padding-block:2.5rem}

@media screen and (min-width: 768px) {
    .line {
        padding-block:5.5rem 6.25rem
    }
}

.line__inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column
}

@media screen and (min-width: 768px) {
    .line__inner {
        -webkit-box-orient:horizontal;
        -webkit-box-direction: normal;
        -ms-flex-direction: row;
        flex-direction: row;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        gap: 1.25rem
    }
}

.line__text-wrap {
    text-align: center;
    font-weight: bold;
    display: contents
}

@media screen and (min-width: 768px) {
    .line__text-wrap {
        display:block;
        text-align: left;
        font-size: 1.5rem
    }
}

.line__title {
    font-size: 1.5rem;
    font-weight: 700;
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 1;
    order: 1
}

@media screen and (min-width: 768px) {
    .line__title {
        font-size:2.5rem
    }
}

.line__title span {
    color: #2ab534
}

.line__lead {
    margin-top: .3125rem;
    -webkit-box-ordinal-group: 3;
    -ms-flex-order: 2;
    order: 2
}

@media screen and (min-width: 768px) {
    .line__lead {
        margin-top:1.875rem
    }
}

.line__text {
    margin-top: 1.25rem;
    -webkit-box-ordinal-group: 5;
    -ms-flex-order: 4;
    order: 4
}

@media screen and (min-width: 768px) {
    .line__text {
        margin-top:1.875rem
    }
}

.line__img {
    width: calc(100% - 60px);
    margin-top: 1.25rem;
    margin-inline:auto;-webkit-box-ordinal-group: 4;
    -ms-flex-order: 3;
    order: 3
}

@media screen and (min-width: 768px) {
    .line__img {
        -webkit-box-flex:0;
        -ms-flex: 0 0 45.4545454545%;
        flex: 0 0 45.4545454545%;
        margin: 0
    }
}

.line__btn {
    margin-top: 1.875rem;
    -webkit-box-ordinal-group: 6;
    -ms-flex-order: 5;
    order: 5
}

@media screen and (min-width: 768px) {
    .line__btn {
        margin-top:3.875rem
    }
}

.line--ec .line__lead {
    -webkit-box-ordinal-group: 3;
    -ms-flex-order: 2;
    order: 2
}

.line--ec .line__text {
    -webkit-box-ordinal-group: 4;
    -ms-flex-order: 3;
    order: 3
}

.line--ec .line__lead,.line--ec .line__text {
    margin-top: .5rem
}

.line-bottom {
    background-color: #2bb534;
    color: #fff;
    text-align: center;
    padding-block:2.5rem}

@media screen and (min-width: 768px) {
    .line-bottom {
        padding-block:6.25rem
    }
}

.line-bottom__title {
    font-size: 1.5rem;
    line-height: 1.52;
    text-align: center;
    font-weight: bold
}

@media screen and (min-width: 768px) {
    .line-bottom__title {
        font-size:2.5rem
    }
}

.line-bottom__btn {
    margin-top: 2rem;
    font-weight: bold
}

@media screen and (min-width: 768px) {
    .line-bottom__btn {
        margin-top:3.75rem
    }
}

.line-bottom__notes {
    margin-top: .625rem;
    font-weight: 300
}

@media screen and (min-width: 768px) {
    .line-bottom__notes {
        margin-top:1.25rem;
        font-size: 1.125rem
    }
}

.line-bottom__link {
    display: block;
    text-align: center;
    color: #fff;
    text-decoration: underline;
    font-weight: 300;
    margin-top: 1.875rem
}

@media screen and (min-width: 768px) {
    .line-bottom__link {
        font-size:1.875rem;
        margin-top: 3.8125rem
    }
}

.line-bottom_link:visited {
    color: #fff
}

.product {
    padding-block:1.25rem 3.125rem}

@media screen and (min-width: 768px) {
    .product {
        padding-block:5rem 6.5rem
    }
}

.product__title {
    font-size: 1.5rem;
    font-weight: bold;
}

@media screen and (min-width: 768px) {
    .product__title {
        font-size:2.5rem
    }
}

.product__kaitori-link a {
    display: block;
    text-align: center;
    font-weight: 300;
    text-decoration: underline
}

@media screen and (min-width: 768px) {
    .product__kaitori-link a {
        font-size:1.5rem
    }
}

.product__nav-list {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: .625rem;
    margin-top: 1.25rem
}

@media screen and (min-width: 768px) {
    .product__nav-list {
        grid-template-columns:repeat(4, 1fr);
        gap: 1.6875rem;
        margin-top: 2.5625rem
    }
}

.product__nav-link {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    background-color: #e4ecf5;
    color: #334e70;
    font-weight: 700;
    padding: .25rem .625rem .3125rem;
    font-size: 1.25rem
}

@media screen and (min-width: 768px) {
    .product__nav-link {
        font-size:2.125rem;
        padding: .375rem .625rem .75rem
    }
}

.product__nav-link span {
    color: #4d4d4d;
    font-weight: 300;
    font-size: .625rem;
    margin-top: -0.125rem
}

@media screen and (min-width: 768px) {
    .product__nav-link span {
        font-size:.875rem;
        margin-top: -0.4375rem
    }
}

.product__nav-link::after {
    position: absolute;
    display: block;
    content: "";
    width: .625rem;
    height: .3125rem;
    background: url("../images/icon/arrow-down.png") center/cover;
    top: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    right: .75rem
}

@media screen and (min-width: 768px) {
    .product__nav-link::after {
        width:1rem;
        height: .5rem;
        right: 1.25rem
    }
}

.product__subtitle {
    background-color: #e4ecf5;
    color: #334e70;
    font-weight: 700;
    padding: .0625rem 1.25rem .25rem;
    font-size: 1.5rem
}

@media screen and (min-width: 768px) {
    .product__subtitle {
        font-size:2.5rem;
        padding: .4375rem 2.5rem .5625rem
    }
}

.product__subtitle span {
    color: #4d4d4d;
    font-weight: 300;
    font-size: .75rem;
    margin-left: 1.25rem
}

@media screen and (min-width: 768px) {
    .product__subtitle span {
        font-size:1.3125rem
    }
}

.product__contents {
    /* margin-top: 2rem */
}

@media screen and (min-width: 768px) {
    .product__contents {
        /* margin-top:5rem */
    }
}

.product__contents+.product__contents {
    /* margin-top: 3.125rem */
}

@media screen and (min-width: 768px) {
    .product__contents+.product__contents {
        /* margin-top:6.25rem */
    }
}

.product__list,
.catch__list {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: .625rem 1.25rem;
    margin-top: 1.25rem
}

.catch {
    margin: 20px 0;
    background: #f7f7f7;
    padding: 1.5rem 0;
}
.catch__title {
    text-align: center;
    font-size: 2rem;
    margin-bottom: 2rem 0;
}
.catch .catch__list {
    margin-top:0;
}

@media screen and (min-width: 768px) {
    .product__list,
    .catch__list {
        grid-template-columns:repeat(4, 1fr);
        gap: 1rem;
        margin-top: 2.5rem
    }
}

.product__link {
    margin-top: 1.875rem;
    text-align: center
}

@media screen and (min-width: 768px) {
    .product__link {
        margin-top:3.75rem
    }
}


.product-item {
    font-weight: bold;
    display: grid;
    grid-template-rows: subgrid;
    grid-row: span 6;
    gap: 0
}

.catch-item {
    background-color: #fff;
    padding:10px;
}

.catch-item__title {
    background-color: #e66d0e;
    color:#fff;
    text-align: center;
    padding: 2.5px;
    letter-spacing: 2px;
    font-size: 1.25rem;
    margin-bottom:10px;
}

.product-item__brand {
    font-size: .75rem;
    margin-top: .625rem
}

@media screen and (min-width: 768px) {
    .product-item__brand {
        font-size:1.125rem
    }
}


.product-item__name {
    font-size: .75rem;
    margin-top: .1875rem;
    line-height: 1.16;
    min-height: 2em
}

.catch-item__name {
    font-size: 1rem;
    margin-top: .1875rem;
    line-height: 1.16;
    min-height: 2em;
    text-align: center;;
    margin-bottom:10px;
}

@media screen and (min-width: 768px) {
    .product-item__name {
        font-size:1.125rem;
        margin-top: .6875rem;
        line-height: 1.3333
    }
}

.product-item__regular {
    font-size: 1rem;
    margin-top: .4375rem;
    line-height: 1.16
}
.product-item__regular-title {
    font-size: 1.2rem;
    margin-top: .4375rem;
    line-height: 1.16;
    font-weight: bold;
}

@media screen and (min-width: 768px) {
    .product-item__regular {
        font-size:1.3rem;
        margin-top: .6875rem
    }
    .product-item__regular-title {
        font-size: 1.6rem;
        margin-top: .6875rem;
    }
}

.product-item__limit {
    color: #d31555;
    font-size: 1rem;
    margin-top: .1875rem;
    line-height: 1.4444
}

@media screen and (min-width: 768px) {
    .product-item__limit {
        font-size:1.5rem;
        margin-top: .375rem;
        line-height: 1.4583
    }
}

.product-item__price {
    color: #d31555;
    font-size: 1.6875rem;
    margin-top: -0.375rem
}
.catch-item__price {
    color: #e66d0e;
    font-size: 2rem;
    margin-top: -0.375rem;
    font-weight: bold;
    text-align: center;
}
.catch-item__notice {
    text-align: center;
}


@media screen and (min-width: 768px) {
    .product-item__price {
        font-size:2.5625rem;
        margin-top: -0.75rem
    }
}

.product-item__price-yen {
    font-size: 1.3125rem
}

@media screen and (min-width: 768px) {
    .product-item__price-yen {
        font-size:2rem
    }
}

.page-nav {
    padding-block:1.875rem .625rem}

@media screen and (min-width: 768px) {
    .page-nav {
        padding-block:2.5rem
    }
}

.page-nav__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 1.25rem
}

@media screen and (min-width: 768px) {
    .page-nav__list {
        display:grid;
        grid-template-columns: repeat(3, 1fr);
        gap: 1.875rem
    }
}

.page-nav__item {
    width: calc(50% - .625rem)
}

@media screen and (min-width: 768px) {
    .page-nav__item {
        width:auto
    }
}

/* タブコンテンツ */

.tab-content {
    display: none;
}
.tab-content.active {
    display: block;
}

.tab-section {
    display: flex;
    margin: 1rem auto;
}

.tab {
    font-size: 14px;
    padding: 10px 5px;
    flex: 1;
    text-align: center;
    background-color: #fff;
    border: 1px solid #314F73;
    color: #314F73;
    cursor: pointer;
}
.tab.active {
    background-color: #314F73;
    color: white;
}

@media screen and (min-width: 768px) {
    .tab-section {
        margin: 30px auto;
    }
    .tab {
        font-size: 27px;
        padding: 3px;
    }
}

.service-button {
    max-width: 522px;
    width: 100%;
    background: #334e70;
    margin: 10px auto;
}
.service-button.no-icon {
    background-color: #fff;
    color:#334e70;
    border: 1px solid #334e70;
}

.service-button a {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 10px 0;
    position: relative
}
.service-button.no-icon a {
    padding: 19.5px;
}

.service-button a:after {
    position: absolute;
    content: "";
    background: url(../images/icon/ic_arrow_wh-Drh4EGyo.svg) no-repeat 0 0;
    background-size: 7px 12px;
    width: 7px;
    height: 12px;
    top: 0;
    bottom: 0;
    right: 20px;
    margin: auto;
}
.service-button.no-icon a:after {
    background: url(../images/icon/ic_arrow_wh_colored.svg) no-repeat 0 0;
    width: 9px;
    height: 13px;
    right: 18px;
}
.service-button-text {
    pointer-events: none;
    color: #fff;
    text-align: right;
    font-family: Noto Sans JP;
    font-size: 20px;
    line-height: 23px;
    font-weight: 700;
    letter-spacing: 2.2px;
    padding: 0 15px;
    position: relative;
    text-align: center;
    margin-top: -7px;
    display: block;
}
.service-button.no-icon .service-button-text {
    color: #334e70;
    margin:0;
}
.service-button-text small{
    font-size: 14px;
}
.service-button-icon {
    pointer-events: none;
}
.service-button-icon img {
    width: 35px;
    height: 38px;
}

.header {
    position: relative;
    z-index: 1;
    height: 35px;
    display: flex;
    align-items: center;
    padding: 15px 20px;
}

@media screen and (min-width: 768px) {
    .header {height:60px}
    .p-logo__img {
        width: 212px;
    }
}

.button-nav .lead-text {
    display: block;
}
.lead-text {
    font-size: 14px;
    margin:15px auto;
    display: none;
}
.lead-text.active {
    display: block;
}
.lead-text a,
#notice a {
    color: #41A0FF;
    text-decoration: underline;
}


@media screen and (min-width: 768px) {
    .lead-text {
        font-size: 16px;
    }
}
