/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
html {
    -webkit-text-size-adjust: 100%;
    line-height: 1.15
}

body {
    margin: 0
}

main {
    display: block
}

h1 {
    font-size: 2em;
    margin: .67em 0
}

hr {
    box-sizing: content-box;
    height: 0;
    overflow: visible
}

pre {
    font-family: monospace, monospace;
    font-size: 1em
}

a {
    background-color: transparent
}

abbr[title] {
    border-bottom: none;
    text-decoration: underline;
    -webkit-text-decoration: underline dotted;
    text-decoration: underline dotted
}

b,
strong {
    font-weight: bolder
}

code,
kbd,
samp {
    font-family: monospace, monospace;
    font-size: 1em
}

small {
    font-size: 80%
}

sub,
sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline
}

sub {
    bottom: -.25em
}

sup {
    top: -.5em
}

img {
    border-style: none
}

button,
input,
optgroup,
select,
textarea {
    font-family: inherit;
    font-size: 100%;
    line-height: 1.15;
    margin: 0
}

button,
input {
    overflow: visible
}

button,
select {
    text-transform: none
}

[type=button],
[type=reset],
[type=submit],
button {
    -webkit-appearance: button
}

[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner,
button::-moz-focus-inner {
    border-style: none;
    padding: 0
}

[type=button]:-moz-focusring,
[type=reset]:-moz-focusring,
[type=submit]:-moz-focusring,
button:-moz-focusring {
    outline: 1px dotted ButtonText
}

fieldset {
    padding: .35em .75em .625em
}

legend {
    box-sizing: border-box;
    color: inherit;
    display: table;
    max-width: 100%;
    padding: 0;
    white-space: normal
}

progress {
    vertical-align: baseline
}

textarea {
    overflow: auto
}

[type=checkbox],
[type=radio] {
    box-sizing: border-box;
    padding: 0
}

[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
    height: auto
}

[type=search] {
    -webkit-appearance: textfield;
    outline-offset: -2px
}

[type=search]::-webkit-search-decoration {
    -webkit-appearance: none
}

::-webkit-file-upload-button {
    -webkit-appearance: button;
    font: inherit
}

details {
    display: block
}

summary {
    display: list-item
}

@font-face {
    font-family: FSEX300;
    src: url(/fonts/FSEX300.ttf) format("truetype")
}

@font-face {
    font-family: Rammetto One;
    src: url(/fonts/RammettoOne-Regular.ttf) format("truetype")
}

@font-face {
    font-family: Zen Maru Gothic;
    src: url(/fonts/ZenMaruGothic-Bold.ttf) format("truetype")
}

.sp,
[hidden],
template {
    display: none
}

@media(max-width:768px) {
    .sp {
        display: block
    }
}

.pc {
    display: block
}

@media(max-width:768px) {
    .pc {
        display: none
    }
}

*,
:after,
:before {
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
    box-sizing: border-box
}

body,
html {
    font-family: Hiragino Sans, ヒラギノ角ゴシック, Hiragino Kaku Gothic ProN, Meiryo UI, Meiryo, メイリオ, Yu Gothic UI, 游ゴシック体, MS Pゴシック, Noto Sans CJK, sans-serif
}

body {
    color: #333;
    height: 100%;
    word-break: break-all
}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-weight: 400;
    margin: 0
}

ol,
ul {
    margin: 0;
    padding: 0
}

ul {
    list-style: none
}

a {
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
    outline: none
}

a,
a:hover {
    color: #333;
    text-decoration: none
}

figure,
label,
p {
    margin: 0
}

button {
    padding: 0
}

sup {
    font-size: 50%;
    position: relative;
    vertical-align: top
}

button,
input[type=button],
input[type=email],
input[type=password],
input[type=submit],
input[type=text],
select,
textarea {
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
    -moz-appearance: none;
    appearance: none;
    -webkit-appearance: none;
    background: none;
    border: none;
    border-radius: 0;
    outline: none;
    padding: 0;
    -webkit-user-select: auto
}

img,
svg {
    height: auto;
    vertical-align: bottom;
    width: 100%
}

strong {
    font-weight: 700
}

.header {
    left: 0;
    position: absolute;
    top: 0;
    width: 100%;
    z-index: 9
}

.header .inner {
    padding: 40px 0 0 44px;
    position: relative
}

.header .inner:after,
.header .inner:before {
    content: "";
    display: block;
    position: absolute
}

@media(max-width:768px) {
    .header .inner {
        padding-left: 4.1vw;
        padding-top: 4.61vw
    }
}

.header .inner:after,
.header .inner:before {
    background-color: #ffeb35;
    border-radius: 50%;
    left: 0;
    top: 0;
    z-index: 1
}

.header .inner:before {
    height: 322px;
    left: -51px;
    top: -88px;
    width: 322px
}

@media(max-width:768px) {
    .header .inner:before {
        height: 47.43vw;
        left: -10.52vw;
        top: -7.7vw;
        width: 47.43vw
    }
}

.header .inner:after {
    height: 157px;
    left: 245px;
    top: -56px;
    width: 157px
}

@media(max-width:768px) {
    .header .inner:after {
        height: 21.02vw;
        left: 28.97vw;
        top: -10.52vw;
        width: 21.02vw
    }
}

.header .inner .logo {
    position: relative;
    z-index: 2
}

.header .inner .logo a {
    display: inline-block
}

.header .inner .logo a:hover {
    cursor: pointer;
    opacity: .8
}

.header .inner .logo a img {
    display: block;
    height: 138px;
    width: 142px
}

@media(max-width:768px) {
    .header .inner .logo a img {
        height: 22.82vw;
        width: 23.58vw
    }
}

footer {
    background-color: #ffeb35;
    overflow: hidden;
    padding: 150px 0 54px;
    position: relative
}

footer:before {
    content: "";
    display: block
}

@media(max-width:768px) {
    footer {
        background: linear-gradient(#ffeb35 50%, #fef643 0);
        padding: 20.51vw 0 12.82vw
    }
}

footer:before {
    background-image: url(/images/common/bg-footer.svg);
    bottom: 0;
    height: 746px;
    left: 50%;
    position: absolute;
    transform: translateX(-50%);
    width: 2931px;
    z-index: 0
}

@media(max-width:768px) {
    footer:before {
        background-image: url(/images/common/bg-footer-sp.svg);
        background: none;
        background-color: #fef643;
        border-radius: 50%;
        bottom: auto;
        height: 251.28vw;
        top: 54.35vw;
        width: 281.53vw
    }
}

footer>.loop {
    animation-duration: 70s;
    animation-iteration-count: infinite;
    animation-name: loop-footer;
    animation-timing-function: linear;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    position: relative;
    width: 9858px
}

@media(max-width:768px) {
    footer>.loop {
        animation-name: loop-footer-sp;
        width: 1423.58vw
    }
}

@keyframes loop-footer {
    0% {
        left: 0
    }

    to {
        left: -2472px
    }
}

@keyframes loop-footer-sp {
    0% {
        left: 0
    }

    to {
        left: -356.93vw
    }
}

footer>.loop .imgWrap {
    position: relative
}

footer>.loop .imgWrap .fukidashiWrap {
    height: 43px;
    left: 585px;
    position: absolute;
    top: -31px;
    width: 97px
}

@media(max-width:768px) {
    footer>.loop .imgWrap .fukidashiWrap {
        height: 8.46vw;
        left: 83.07vw;
        top: -6.93vw;
        width: 20.51vw
    }
}

footer>.loop .imgWrap .fukidashiWrap .fukidashi {
    animation: fukidashi-hidden .4s ease 1 forwards
}

footer>.loop .imgWrap .fukidashiWrap.active .fukidashi {
    animation: fukidashi .8s ease 1 forwards
}

@keyframes fukidashi {
    0% {
        transform: scale(0)
    }

    60% {
        transform: scale(1)
    }

    85% {
        transform: scale(.85)
    }

    to {
        transform: scale(1)
    }
}

@keyframes fukidashi-hidden {
    0% {
        transform: scale(1)
    }

    to {
        transform: scale(0)
    }
}

footer>.loop .imgWrap .text {
    width: 588px
}

@media(max-width:768px) {
    footer>.loop .imgWrap .text {
        width: 85.12vw
    }
}

footer>.inner {
    margin: 0 auto;
    max-width: 1064px;
    padding: 0 20px;
    position: relative;
    width: 100%;
    z-index: 1
}

@media(max-width:768px) {
    footer>.inner {
        margin: 0 auto;
        padding: 0;
        width: 83.58vw
    }
}

footer>.inner>.sns {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin: 73px 0 120px
}

@media(max-width:768px) {
    footer>.inner>.sns {
        margin: 8.2vw 0 17.94vw
    }
}

footer>.inner>.sns li {
    width: calc(25% - 32px)
}

@media(max-width:768px) {
    footer>.inner>.sns li {
        margin-bottom: 4.1vw;
        width: 39.74vw
    }
}

footer>.inner>.sns li a {
    background-color: #fff;
    border-radius: 15px;
    display: block;
    height: 160px;
    position: relative
}

@media(max-width:768px) {
    footer>.inner>.sns li a {
        border-radius: 3.84vw;
        height: 27.43vw
    }
}

footer>.inner>.sns li a .imgWrap {
    left: 50%;
    position: absolute;
    top: 50%;
    transform: translateX(-50%) translateY(-50%)
}

footer>.inner>.sns li a .imgWrap img {
    display: block
}

@media(min-width:769px) {
    footer>.inner>.sns li a:hover img {
        animation: hover-bounce .5s ease 1
    }
}

footer>.inner>.sns li.tiktok img {
    height: 48px;
    width: 48px
}

@media(max-width:768px) {
    footer>.inner>.sns li.tiktok img {
        height: 8.2vw;
        width: 8.2vw
    }
}

footer>.inner>.sns li.twitter img {
    height: 35px;
    width: 44px
}

@media(max-width:768px) {
    footer>.inner>.sns li.twitter img {
        height: 6vw;
        width: 7.53vw
    }
}

footer>.inner>.sns li.instagram img {
    height: 48px;
    width: 48px
}

@media(max-width:768px) {
    footer>.inner>.sns li.instagram img {
        height: 8.2vw;
        width: 8.2vw
    }
}

footer>.inner>.sns li.youtube img {
    height: 32px;
    width: 46px
}

@media(max-width:768px) {
    footer>.inner>.sns li.youtube img {
        height: 5.48vw;
        width: 7.87vw
    }
}

footer>.inner .links {
    display: flex;
    position: relative
}

@media(max-width:768px) {
    footer>.inner .links {
        display: block
    }
}

footer>.inner .links .pagetop {
    display: block;
    height: 80px;
    position: absolute;
    right: 0;
    top: 0;
    width: 80px
}

@media(max-width:930px) {
    footer>.inner .links .pagetop {
        bottom: 0;
        top: auto
    }
}

@media(max-width:768px) {
    footer>.inner .links .pagetop {
        height: 17.94vw;
        width: 17.94vw
    }
}

@media(min-width:769px) {
    footer>.inner .links .pagetop:hover {
        animation: hover-bounce .5s ease 1;
        cursor: pointer
    }
}

footer>.inner .links a {
    color: #1e22b0;
    font-family: Zen Maru Gothic
}

@media(min-width:769px) {
    footer>.inner .links a:hover {
        text-decoration: underline
    }
}

footer>.inner .links .left {
    margin-right: 120px;
    width: 232px;
    /*border: 1px, solid, #eb5757;*/
}

@media(max-width:768px) {
    footer>.inner .links .left {
        position: relative
    }

    footer>.inner .links .left:after {
        background-color: #1e22b0;
        bottom: 0;
        content: "";
        display: block;
        height: 1px;
        left: 0;
        position: absolute;
        width: 2.56vw
    }

    footer>.inner .links .left {
        margin-right: 0;
        padding-bottom: 7.69vw;
        width: 100%
    }
}

footer>.inner .links .left .logo {
    display: block;
    margin-bottom: 72px
}

@media(max-width:768px) {
    footer>.inner .links .left .logo {
        margin-bottom: 12.82vw;
        width: 61.79vw
    }
}

footer>.inner .links .left li {
    margin-bottom: 10px
}

footer>.inner .links .left li:last-child {
    margin-bottom: 0
}

@media(max-width:768px) {
    footer>.inner .links .left li {
        margin-bottom: 2.56vw
    }
}

footer>.inner .links .left li a {
    align-items: center;
    display: flex;
    height: 30px
}

@media(max-width:768px) {
    footer>.inner .links .left li a {
        height: 7.69vw
    }
}

footer>.inner .links .left li a img {
    display: block;
    height: 24px;
    margin-right: 5px;
    width: 24px
}

@media(max-width:768px) {
    footer>.inner .links .left li a img {
        height: 6.15vw;
        margin-right: 1.28vw;
        width: 5.12vw
    }
}

footer>.inner .links .left li a .en {
    font-family: Rammetto One;
    font-size: 18px;
    margin-right: 10px
}

@media(max-width:768px) {
    footer>.inner .links .left li a .en {
        font-size: 4.61vw;
        margin-right: 2.56vw
    }
}

footer>.inner .links .left li a .ja {
    color: #1e22b0;
    font-family: Zen Maru Gothic;
    font-size: 12px;
    letter-spacing: .05em;
    line-height: 1em
}

@media(max-width:768px) {
    footer>.inner .links .left li a .ja {
        font-size: 2.56vw
    }
}

footer>.inner .links .center {
    margin-right: 58px;
    padding-top: 6.15vw;
    width: 206px;
    /*border: 1px, solid, #eb5757;*/
}

@media(max-width:768px) {
    footer>.inner .links .center {
        position: relative
    }

    footer>.inner .links .center:after {
        background-color: #1e22b0;
        bottom: 0;
        content: "";
        display: block;
        height: 1px;
        left: 0;
        position: absolute;
        width: 2.56vw
    }

    footer>.inner .links .center {
        margin-right: 0;
        padding-bottom: 7.69vw;
        padding-top: 7.69vw;
        width: 100%
    }
}

footer>.inner .links .center li {
    margin-bottom: 16px
}

footer>.inner .links .center li:last-child {
    margin-bottom: 0
}

@media(max-width:768px) {
    footer>.inner .links .center li {
        margin-bottom: 2.3vw
    }
}

footer>.inner .links .center li a {
    color: #1e22b0;
    font-family: Zen Maru Gothic;
    font-size: 14px;
    letter-spacing: .05em;
    line-height: 1em
}

@media(max-width:768px) {
    footer>.inner .links .center li a {
        font-size: 3.07vw
    }
}

footer>.inner .links .center li a.blank:after {
    background-image: url(/images/common/icon-blank.svg);
    background-repeat: no-repeat;
    background-size: contain;
    content: "";
    display: inline-block;
    height: 12px;
    margin-left: 5px;
    width: 14px
}

@media(max-width:768px) {
    footer>.inner .links .center li a.blank:after {
        height: 1.75vw;
        margin-bottom: .25vw;
        margin-left: 1.28vw;
        width: 2.05vw
    }
}

footer>.inner .links .right {
    width: 184px;
    padding-top: 6.15vw;
    /*border: 1px, solid, #eb5757;*/
}

@media(max-width:768px) {
    footer>.inner .links .right {
        padding-top: 7.69vw;
        width: 100%
    }
}

footer>.inner .links .right li {
    margin-bottom: 15px
}

footer>.inner .links .right li:last-child {
    margin-bottom: 0
}

@media(max-width:768px) {
    footer>.inner .links .right li {
        margin-bottom: 1.79vw
    }
}

footer>.inner .links .right li a {
    color: #1e22b0;
    font-family: Zen Maru Gothic;
    font-size: 12px;
    letter-spacing: .05em;
    line-height: 1em
}

@media(max-width:768px) {
    footer>.inner .links .right li a {
        font-size: 2.56vw
    }
}

footer>.inner .links .right li a.blank:after {
    background-image: url(/images/common/icon-blank.svg);
    background-repeat: no-repeat;
    background-size: contain;
    content: "";
    display: inline-block;
    height: 12px;
    margin-left: 5px;
    width: 14px
}

@media(max-width:768px) {
    footer>.inner .links .right li a.blank:after {
        height: 1.75vw;
        margin-bottom: .25vw;
        margin-left: 1.28vw;
        width: 2.05vw
    }
}

footer>.inner .copyright {
    color: #1e22b0;
    font-family: Rammetto One;
    font-size: 13px;
    line-height: 1em;
    margin-top: 138px;
    text-align: center
}

@media(max-width:768px) {
    footer>.inner .copyright {
        font-size: 2.56vw;
        margin-top: 14.87vw
    }
}

.c-menu {
    position: fixed;
    right: 40px;
    top: 40px;
    z-index: 100
}

@media(max-width:768px) {
    .c-menu {
        bottom: 0;
        opacity: 1;
        right: 0;
        top: auto;
        transition: .2s
    }
}

.c-menu .outer {
    position: relative
}

.c-menu .outer>.btn {
    background-color: #1e22b0;
    border-radius: 50%;
    height: 80px;
    position: absolute;
    right: 0;
    top: 0;
    width: 80px;
    z-index: 1
}

.c-menu .outer>.btn:hover {
    cursor: pointer
}

.c-menu .outer>.btn .icon {
    display: block;
    height: 8px;
    margin: 27px auto 8px;
    position: relative;
    width: 16px
}

.c-menu .outer>.btn .icon:after,
.c-menu .outer>.btn .icon:before {
    background-color: #ffeb35;
    border-radius: 9999px;
    content: "";
    display: block;
    height: 2px;
    position: absolute;
    transition: .6s;
    width: 16px
}

@media(max-width:768px) {

    .c-menu .outer>.btn .icon:after,
    .c-menu .outer>.btn .icon:before {
        height: .51vw;
        width: 4.1vw
    }
}

.c-menu .outer>.btn .icon:before {
    top: 0
}

.c-menu .outer>.btn .icon:after {
    bottom: 0
}

.c-menu .outer>.btn p {
    color: #1e22b0;
    color: #fff;
    font-family: Rammetto One;
    font-size: 12px;
    text-align: center
}

@media(max-width:768px) {
    .c-menu .outer>.btn {
        position: static
    }
}

.c-menu .outer .inner {
    background-color: #fff;
    border-radius: 100px;
    box-shadow: 0 20px 20px 0 rgba(51, 51, 51, .15);
    height: 80px;
    overflow: hidden;
    position: relative;
    width: 441px;
    z-index: 0
}

@media(max-width:768px) {
    .c-menu .outer .inner {
        background-color: transparent;
        border-radius: 0;
        border-radius: 5.12vw 5.12vw 0 0;
        box-shadow: none;
        box-shadow: 0 -5px 15px rgba(51, 51, 51, .15);
        height: 15.38vw;
        width: 100vw
    }

    .c-menu .outer .inner.hidden {
        box-shadow: none
    }
}

.c-menu .outer .inner>.close {
    display: flex;
    left: 0;
    padding: 28px 0 28px 30px;
    position: absolute;
    top: 0;
    z-index: 1
}

@media(max-width:768px) {
    .c-menu .outer .inner>.close {
        padding: 0;
        position: static
    }

    .c-menu .outer .inner>.close.hidden {
        opacity: 0;
        pointer-events: none;
        transition: .3s
    }
}

.c-menu .outer .inner>.close li {
    height: 24px;
    margin-right: 20px
}

@media(max-width:768px) {
    .c-menu .outer .inner>.close li {
        background-color: #fff;
        height: 15.38vw;
        margin-right: 0;
        width: 25%
    }
}

.c-menu .outer .inner>.close li a {
    align-items: center;
    display: flex
}

@media(max-width:768px) {
    .c-menu .outer .inner>.close li a {
        border-right: 1px solid #e1e1e8;
        display: block
    }
}

.c-menu .outer .inner>.close li a .icon {
    height: 24px;
    margin-right: 5px;
    width: 24px
}

@media(max-width:768px) {
    .c-menu .outer .inner>.close li a .icon {
        display: block;
        margin: 2.56vw auto 0
    }
}

.c-menu .outer .inner>.close li a .text {
    color: #1e22b0;
    display: block;
    font-family: Rammetto One;
    font-size: 16;
    line-height: 1em
}

@media(max-width:768px) {
    .c-menu .outer .inner>.close li a .text {
        font-size: 2.56vw;
        line-height: normal;
        text-align: center
    }
}

@media(min-width:769px) {
    .c-menu .outer .inner>.close li a:hover {
        position: relative
    }

    .c-menu .outer .inner>.close li a:hover:before {
        background-color: #fef643;
        border-radius: 50%;
        content: "";
        display: block;
        height: 48px;
        left: -12px;
        position: absolute;
        width: 48px;
        z-index: -1
    }

    .c-menu .outer .inner>.close li a:hover .text {
        animation: hover-bounce .5s ease 1
    }
}

@media(max-width:768px) {
    .c-menu .outer .inner>.close li:first-child {
        border-radius: 5.12vw 0 0 0
    }
}

.c-menu .outer .inner>.close li.btn {
    background-color: #1e22b0;
    border-radius: 0 5.12vw 0 0
}

.c-menu .outer .inner>.close li.btn .icon {
    display: block;
    height: 2.05vw;
    line-height: normal;
    margin: 5.12vw auto 2.3vw;
    position: relative;
    width: 4.1vw
}

.c-menu .outer .inner>.close li.btn .icon:after,
.c-menu .outer .inner>.close li.btn .icon:before {
    background-color: #ffeb35;
    border-radius: 9999px;
    content: "";
    display: block;
    height: .51vw;
    position: absolute;
    width: 4.1vw
}

.c-menu .outer .inner>.close li.btn .icon:before {
    top: 0
}

.c-menu .outer .inner>.close li.btn .icon:after {
    bottom: 0
}

.c-menu .outer .inner>.close li.btn p {
    color: #1e22b0;
    color: #fff;
    font-family: Rammetto One;
    font-size: 2.56vw;
    text-align: center
}

.c-menu .outer .inner>.open {
    display: block
}

@media(max-width:768px) {
    .c-menu .outer .inner>.open {
        height: 100vh;
        left: 0;
        opacity: 0;
        overflow: scroll;
        padding: 4.1vw 0;
        position: fixed;
        top: 0;
        visibility: hidden;
        width: 83.58vw;
        width: 100vw
    }
}

.c-menu .outer .inner>.open>.inner {
    padding: 114px 0 114px 80px
}

@media(max-width:768px) {
    .c-menu .outer .inner>.open>.inner {
        background-color: #fff;
        border-radius: 7.69vw;
        box-shadow: 0 20px 20px 0 rgba(51, 51, 51, .15);
        height: 100%;
        height: auto;
        margin: 0 auto;
        overflow: scroll;
        overflow: visible;
        padding: 15.38vw 0 15.38vw 12.82vw;
        width: 100%;
        width: 83.58vw
    }
}

.c-menu .outer .inner>.open>.inner a {
    color: #1e22b0;
    font-family: Zen Maru Gothic
}

.c-menu .outer .inner>.open>.inner .en {
    color: #1e22b0;
    font-family: Rammetto One
}

@media(min-width:769px) {
    .c-menu .outer .inner>.open>.inner ul li a:hover {
        position: relative
    }

    .c-menu .outer .inner>.open>.inner ul li a:hover:before {
        background-color: #1e22b0;
        border-radius: 50%;
        content: "";
        display: block;
        position: absolute;
        top: 50%;
        transform: translateY(-50%)
    }
}

.c-menu .outer .inner>.open>.inner>ul:first-child {
    margin-bottom: 40px
}

@media(max-width:768px) {
    .c-menu .outer .inner>.open>.inner>ul:first-child {
        margin-bottom: 10.25vw
    }
}

.c-menu .outer .inner>.open>.inner>ul:first-child li {
    margin-bottom: 24px
}

.c-menu .outer .inner>.open>.inner>ul:first-child li:last-child {
    margin-bottom: 0
}

@media(max-width:768px) {
    .c-menu .outer .inner>.open>.inner>ul:first-child li {
        margin-bottom: 6.15vw
    }
}

.c-menu .outer .inner>.open>.inner>ul:first-child li a {
    align-items: center;
    display: flex
}

@media(min-width:769px) {
    .c-menu .outer .inner>.open>.inner>ul:first-child li a:hover:before {
        height: 8px;
        left: -13px;
        width: 8px
    }
}

.c-menu .outer .inner>.open>.inner>ul:first-child li .en {
    font-size: 26px;
    line-height: 1em;
    margin-right: 10px
}

@media(max-width:768px) {
    .c-menu .outer .inner>.open>.inner>ul:first-child li .en {
        font-size: 7.69vw;
        margin-right: 2.56vw
    }
}

.c-menu .outer .inner>.open>.inner>ul:first-child li .ja {
    font-size: 12px;
    letter-spacing: .02em;
    line-height: .75em;
    margin-top: 0
}

@media(max-width:768px) {
    .c-menu .outer .inner>.open>.inner>ul:first-child li .ja {
        font-size: 3.07vw
    }
}

.c-menu .outer .inner>.open>.inner>ul:nth-child(2) li {
    margin-bottom: 12px
}

.c-menu .outer .inner>.open>.inner>ul:nth-child(2) li:last-child {
    margin-bottom: 0
}

@media(max-width:768px) {
    .c-menu .outer .inner>.open>.inner>ul:nth-child(2) li {
        margin-bottom: 3.84vw
    }
}

.c-menu .outer .inner>.open>.inner>ul:nth-child(2) li a {
    color: #1e22b0;
    font-family: Zen Maru Gothic;
    font-size: 14px;
    letter-spacing: .05em;
    line-height: 1em
}

@media(max-width:768px) {
    .c-menu .outer .inner>.open>.inner>ul:nth-child(2) li a {
        font-size: 3.07vw
    }
}

.c-menu .outer .inner>.open>.inner>ul:nth-child(2) li a.blank:after {
    background-image: url(/images/common/icon-blank.svg);
    background-repeat: no-repeat;
    background-size: contain;
    content: "";
    display: inline-block;
    height: 12px;
    margin-left: 5px;
    width: 14px
}

@media(max-width:768px) {
    .c-menu .outer .inner>.open>.inner>ul:nth-child(2) li a.blank:after {
        height: 1.75vw;
        margin-bottom: .25vw;
        margin-left: 1.28vw;
        width: 2.05vw
    }
}

@media(min-width:769px) {
    .c-menu .outer .inner>.open>.inner>ul:nth-child(2) li a:hover:before {
        height: 4px;
        left: -9px;
        width: 4px
    }
}

.c-menu .outer .inner>.open>.inner .sns {
    align-items: center;
    display: flex;
    margin-top: 60px
}

@media(max-width:768px) {
    .c-menu .outer .inner>.open>.inner .sns {
        margin-top: 10.25vw
    }
}

.c-menu .outer .inner>.open>.inner .sns a {
    display: block;
    margin-right: 24px
}

@media(max-width:768px) {
    .c-menu .outer .inner>.open>.inner .sns a {
        margin-right: 6.15vw
    }
}

.c-menu .outer .inner>.open>.inner .sns a img {
    display: block
}

.c-menu .outer .inner>.open>.inner .sns a img.line {
    height: 22.94px;
    width: 22.94px
}

@media(max-width:768px) {
    .c-menu .outer .inner>.open>.inner .sns a img.line {
        height: 5.88vw;
        width: 5.88vw
    }
}

.c-menu .outer .inner>.open>.inner .sns a img.twitter {
    height: 16.73px;
    width: 21.03px
}

@media(max-width:768px) {
    .c-menu .outer .inner>.open>.inner .sns a img.twitter {
        height: 4.28vw;
        width: 5.39vw
    }
}

.c-menu .outer .inner>.open>.inner .sns a img.instagram {
    height: 22.94px;
    width: 22.94px
}

@media(max-width:768px) {
    .c-menu .outer .inner>.open>.inner .sns a img.instagram {
        height: 5.88vw;
        width: 5.88vw
    }
}

.c-menu .outer .inner>.open>.inner .sns a img.youtube {
    height: 15.29px;
    width: 21.98px
}

@media(max-width:768px) {
    .c-menu .outer .inner>.open>.inner .sns a img.youtube {
        height: 3.92vw;
        width: 5.63vw
    }
}

@media(min-width:769px) {
    .c-menu .outer .inner>.open>.inner .sns a:hover img {
        animation: hover-bounce .5s ease 1
    }
}

.c-menu .outer .inner>.open>.inner>.btn-sp {
    background-color: #1e22b0;
    border-radius: 50%;
    height: 80px;
    position: absolute;
    width: 80px;
    z-index: 1
}

.c-menu .outer .inner>.open>.inner>.btn-sp:hover {
    cursor: pointer
}

.c-menu .outer .inner>.open>.inner>.btn-sp .icon {
    display: block;
    height: 8px;
    margin: 27px auto 8px;
    position: relative;
    width: 16px
}

.c-menu .outer .inner>.open>.inner>.btn-sp .icon:after,
.c-menu .outer .inner>.open>.inner>.btn-sp .icon:before {
    background-color: #ffeb35;
    border-radius: 9999px;
    content: "";
    display: block;
    height: 2px;
    position: absolute;
    transition: .6s;
    width: 16px
}

@media(max-width:768px) {

    .c-menu .outer .inner>.open>.inner>.btn-sp .icon:after,
    .c-menu .outer .inner>.open>.inner>.btn-sp .icon:before {
        height: .51vw;
        width: 4.1vw
    }
}

.c-menu .outer .inner>.open>.inner>.btn-sp .icon:before {
    top: 0
}

.c-menu .outer .inner>.open>.inner>.btn-sp .icon:after {
    bottom: 0
}

.c-menu .outer .inner>.open>.inner>.btn-sp p {
    color: #1e22b0;
    color: #fff;
    font-family: Rammetto One;
    font-size: 12px;
    text-align: center
}

@media(max-width:768px) {
    .c-menu .outer .inner>.open>.inner>.btn-sp {
        bottom: 0;
        display: block;
        height: 15.38vw;
        position: absolute;
        right: 8.2vw;
        right: 0;
        width: 15.38vw
    }

    .c-menu .outer .inner>.open>.inner>.btn-sp .icon {
        margin-top: 4.1vw
    }

    .c-menu .outer .inner>.open>.inner>.btn-sp .icon:before {
        top: 50%;
        transform: rotate(45deg) translateY(-50%)
    }

    .c-menu .outer .inner>.open>.inner>.btn-sp .icon:after {
        bottom: 50%;
        transform: rotate(-45deg) translateY(50%)
    }

    .c-menu .outer .inner>.open>.inner>.btn-sp p {
        font-size: 2.56vw
    }
}

.c-menu.active .btn .icon:before {
    top: 50%;
    transform: rotate(45deg) translateY(-50%)
}

.c-menu.active .btn .icon:after {
    bottom: 50%;
    transform: rotate(-45deg) translateY(50%)
}

.c-menu.active .inner {
    border-radius: 40px;
    height: 720px;
    transition: .6s
}

@media(max-width:768px) {
    .c-menu.active .inner {
        border-radius: 0;
        height: auto
    }
}

.c-menu.active .inner>.close {
    opacity: 0;
    transition: .6s;
    visibility: hidden
}

@media(max-width:768px) {
    .c-menu.active .inner>.close {
        transition: 0s
    }

    .c-menu.active .inner>.open {
        display: block;
        opacity: 1;
        transition: .4s;
        visibility: visible
    }
}

.c-menu.close .inner {
    transition: .6s
}

@media(max-width:768px) {
    .c-menu.close .inner>.open {
        transition: .6s
    }
}

.c-menu.close .inner>.close {
    transition: .6s
}

@media(max-width:768px) {
    .c-menu.active .outer .inner {
        box-shadow: none
    }
}

.kv-pages {
    background-color: #ffeb35;
    overflow: hidden;
    width: 100%
}

.kv-pages img {
    left: 50%;
    min-width: 1440px;
    position: relative;
    transform: translateX(-50%);
    width: 100%
}

@media(max-width:768px) {
    .kv-pages img {
        min-width: auto
    }
}

.title-pages {
    background-color: #ffeb35;
    padding: 120px 0 100px;
    text-align: center
}

@media(max-width:768px) {
    .title-pages {
        padding-bottom: 15.38vw;
        padding-top: 15.38vw
    }
}

.title-pages .en {
    color: #1e22b0;
    font-family: Rammetto One;
    font-size: 80px
}

@media(max-width:768px) {
    .title-pages .en {
        font-size: 12.3vw
    }
}

.title-pages .en .mojiWrap {
    display: inline-block;
    overflow: hidden
}

.title-pages .en .mojiWrap .moji {
    display: inline-block;
    transform: translateY(100%)
}

.title-pages .ja {
    color: #1e22b0;
    font-family: Zen Maru Gothic;
    font-size: 14px;
    line-height: 1em;
    margin-top: -7px
}

@media(max-width:768px) {
    .title-pages .ja {
        font-size: 3.33vw;
        margin-top: -1.29vw
    }
}

.title-pages .ja.ja-shop {
    margin-top: 0
}

.shop-pages {
    background-color: #1e22b0;
    border-radius: 9999px;
    width: 100%
}

@media(max-width:768px) {
    .shop-pages {
        border-radius: 256.41vw;
        margin: 0 auto;
        width: 83.58vw
    }
}

.shop-pages>.inner {
    display: block;
    padding: 80px 0;
    text-align: center
}

@media(max-width:768px) {
    .shop-pages>.inner {
        padding-bottom: 32.56vw;
        padding-top: 30.76vw
    }
}

.shop-pages>.inner>.title {
    margin-bottom: 30px
}

@media(max-width:768px) {
    .shop-pages>.inner>.title {
        padding-bottom: 7.69vw
    }
}

.shop-pages>.inner>.title .en {
    color: #fff;
    font-family: Rammetto One;
    font-size: 48px;
    margin-bottom: 5px
}

@media(max-width:768px) {
    .shop-pages>.inner>.title .en {
        font-size: 12.3vw;
        margin-bottom: 1.28vw
    }
}

.shop-pages>.inner>.title .ja {
    color: #fff;
    font-family: Zen Maru Gothic;
    font-size: 14px;
    line-height: 1em
}

@media(max-width:768px) {
    .shop-pages>.inner>.title .ja {
        font-size: 3.33vw
    }
}

.shop-pages>.inner>.text {
    color: #fff;
    font-family: Zen Maru Gothic;
    font-size: 16px;
    line-height: 1.7em;
    margin-bottom: 30px
}

@media(max-width:768px) {
    .shop-pages>.inner>.text {
        font-size: 3.33vw;
        margin-bottom: 7.69vw
    }
}

.c-rotatePages {
    height: 481px;
    overflow: hidden;
    position: absolute;
    right: 0;
    top: 0;
    width: 100%
}

@media(max-width:768px) {
    .c-rotatePages {
        height: 73.33vw
    }
}

.c-rotatePages img {
    animation: rotate-page 60s linear infinite;
    height: 481px;
    position: absolute;
    right: -124px;
    top: -161px;
    width: 476px
}

@media(max-width:768px) {
    .c-rotatePages img {
        height: 57.94vw;
        right: -10vw;
        top: 15.38vw;
        width: 57.94vw
    }
}

@keyframes rotate-page {
    0% {
        transform: rotate(0deg)
    }

    to {
        transform: rotate(-359deg)
    }
}

.c-bgPages {
    height: 983px;
    overflow: hidden;
    position: absolute;
    top: 0;
    width: 100%
}

@media(max-width:768px) {
    .c-bgPages {
        height: 306.66vw
    }
}

.c-bgPages .circle {
    background-color: #fef643;
    border-radius: 50%;
    height: 1508px;
    left: 50%;
    position: absolute;
    top: -825px;
    transform: translateX(-50%);
    width: 3248px
}

@media(max-width:768px) {
    .c-bgPages .circle {
        height: 341.02vw;
        top: -243.59vw;
        width: 382.05vw
    }
}

.c-newsInfo>.inner {
    margin: 0 auto;
    max-width: 1064px;
    padding: 0 20px;
    width: 100%
}

@media(max-width:768px) {
    .c-newsInfo>.inner {
        margin: 0 auto;
        padding: 0;
        width: 91.79vw
    }
}

.c-newsInfo>.inner .tabs {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    width: 100%
}

.c-newsInfo>.inner .tabs .tab {
    text-align: center;
    width: 48.4375%
}

@media(max-width:768px) {
    .c-newsInfo>.inner .tabs .tab {
        width: 43.84vw
    }
}

.c-newsInfo>.inner .tabs .tab a,
.c-newsInfo>.inner .tabs .tab p {
    background-color: #e1e1e8;
    border-radius: 50px 50px 0 0;
    color: #afafaf;
    display: block;
    font-family: Zen Maru Gothic;
    font-size: 20px;
    line-height: 1em;
    padding: 36px 0 37px
}

@media(max-width:768px) {

    .c-newsInfo>.inner .tabs .tab a,
    .c-newsInfo>.inner .tabs .tab p {
        border-radius: 6.41vw 6.41vw 0 0;
        font-size: 2.82vw;
        padding-bottom: 6.15vw;
        padding-top: 6.41vw
    }
}

.c-newsInfo>.inner .tabs .tab.active a,
.c-newsInfo>.inner .tabs .tab.active p {
    background-color: #fff;
    color: #333
}

.c-newsInfo>.inner .listsWrap {
    background-color: #fff;
    border-radius: 0 0 50px 50px
}

@media(max-width:768px) {
    .c-newsInfo>.inner .listsWrap {
        border-radius: 0 0 6.41vw 6.41vw
    }
}

.c-newsInfo>.inner ul.lists {
    padding: 80px
}

@media(max-width:768px) {
    .c-newsInfo>.inner ul.lists {
        padding: 10.25vw 7.69vw
    }
}

.c-newsInfo>.inner .wp-pagenavi {
    display: flex;
    justify-content: center;
    padding-bottom: 80px;
    width: 100%
}

@media(max-width:768px) {
    .c-newsInfo>.inner .wp-pagenavi {
        padding-bottom: 10.25vw
    }
}

.c-newsInfo>.inner .wp-pagenavi a,
.c-newsInfo>.inner .wp-pagenavi span {
    border-radius: 50%;
    color: #1e22b0;
    display: block;
    font-family: Rammetto One;
    font-size: 13px;
    height: 50px;
    line-height: 50px;
    margin: 0 5px;
    text-align: center;
    width: 50px
}

@media(max-width:768px) {

    .c-newsInfo>.inner .wp-pagenavi a,
    .c-newsInfo>.inner .wp-pagenavi span {
        font-size: 2.82vw;
        height: 7.69vw;
        line-height: 7.69vw;
        margin-left: 1.02vw;
        margin-right: 1.02vw;
        width: 7.69vw
    }
}

.c-newsInfo>.inner .wp-pagenavi a.page,
.c-newsInfo>.inner .wp-pagenavi span.page {
    background-color: #ffeb35
}

.c-newsInfo>.inner .wp-pagenavi a.current,
.c-newsInfo>.inner .wp-pagenavi span.current {
    background-color: #1e22b0;
    color: #ffeb35
}

.c-newsInfo>.inner .wp-pagenavi a.first,
.c-newsInfo>.inner .wp-pagenavi span.first {
    background-image: url(/images/news_info/arrow-newsinfo-double-first.svg);
    background-repeat: no-repeat;
    background-size: cover
}

@media(max-width:768px) {

    .c-newsInfo>.inner .wp-pagenavi a.first,
    .c-newsInfo>.inner .wp-pagenavi span.first {
        background-image: url(/images/news_info/arrow-newsinfo-double-first-sp.svg);
        background-size: 100%
    }
}

.c-newsInfo>.inner .wp-pagenavi a.previouspostslink,
.c-newsInfo>.inner .wp-pagenavi span.previouspostslink {
    background-image: url(/images/news_info/arrow-newsinfo-single-pre.svg);
    background-repeat: no-repeat;
    background-size: cover
}

@media(max-width:768px) {

    .c-newsInfo>.inner .wp-pagenavi a.previouspostslink,
    .c-newsInfo>.inner .wp-pagenavi span.previouspostslink {
        background-image: url(/images/news_info/arrow-newsinfo-single-pre-sp.svg);
        background-size: 100%
    }
}

.c-newsInfo>.inner .wp-pagenavi a.last,
.c-newsInfo>.inner .wp-pagenavi span.last {
    background-image: url(/images/news_info/arrow-newsinfo-double-last.svg);
    background-repeat: no-repeat;
    background-size: cover
}

@media(max-width:768px) {

    .c-newsInfo>.inner .wp-pagenavi a.last,
    .c-newsInfo>.inner .wp-pagenavi span.last {
        background-image: url(/images/news_info/arrow-newsinfo-double-last-sp.svg);
        background-size: 100%
    }
}

.c-newsInfo>.inner .wp-pagenavi a.nextpostslink,
.c-newsInfo>.inner .wp-pagenavi span.nextpostslink {
    background-image: url(/images/news_info/arrow-newsinfo-single-next.svg);
    background-repeat: no-repeat;
    background-size: cover
}

@media(max-width:768px) {

    .c-newsInfo>.inner .wp-pagenavi a.nextpostslink,
    .c-newsInfo>.inner .wp-pagenavi span.nextpostslink {
        background-image: url(/images/news_info/arrow-newsinfo-single-next-sp.svg);
        background-size: 100%
    }
}

@media(min-width:769px) {
    .c-newsInfo>.inner .wp-pagenavi a:hover {
        animation: hover-bounce .5s ease 1
    }
}

.c-newsItem {
    border-bottom: 2px solid #e1e1e8;
    padding: 40px 0 20px
}

@media(max-width:768px) {
    .c-newsItem {
        padding-bottom: 5.64vw;
        padding-top: 7.69vw
    }
}

.c-newsItem:first-child {
    padding-top: 0
}

.c-newsItem a {
    display: block;
    padding-right: 48px;
    position: relative
}

@media(max-width:768px) {
    .c-newsItem a {
        padding-right: 11.28vw
    }
}

.c-newsItem a .top {
    align-items: center;
    display: flex;
    margin-bottom: 10px
}

.c-newsItem a .top .cate {
    background-color: #ffeb35;
    border-radius: 9999px;
    color: #1e22b0;
    font-family: Zen Maru Gothic;
    font-size: 12;
    line-height: 1em;
    margin-right: 20px;
    padding: 5px 10px
}

@media(max-width:768px) {
    .c-newsItem a .top .cate {
        font-size: 3.07vw;
        margin-right: 4.87vw;
        padding: 1.28vw 2.56vw
    }
}

.c-newsItem a .top .date {
    color: #1e22b0;
    font-family: Rammetto One;
    font-size: 13px
}

@media(max-width:768px) {
    .c-newsItem a .top .date {
        font-size: 3.07vw
    }
}

.c-newsItem a .bottom {
    color: #333;
    font-size: 16px;
    font-weight: 400;
    letter-spacing: .05em;
    line-height: 1.5em
}

@media(max-width:768px) {
    .c-newsItem a .bottom {
        font-size: 3.33vw
    }
}

.c-newsItem a .arrow {
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%)
}

.c-newsItem a .arrow .arrow-bg {
    background-color: #1e22b0;
    border-radius: 50%;
    display: block;
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%;
    z-index: 0
}

.c-newsItem a .arrow img {
    display: block;
    height: 24px;
    position: relative;
    width: 24px;
    z-index: 1
}

@media(max-width:768px) {
    .c-newsItem a .arrow img {
        height: 6.15vw;
        width: 6.15vw
    }
}

@media(min-width:769px) {
    .c-newsItem a:hover .bottom {
        color: #1e22b0
    }

    .c-newsItem a:hover .arrow .arrow-bg {
        transform: scale(1.5);
        transform-origin: center;
        transition: .5s
    }
}

.c-button {
    background-color: #ffeb35;
    border-radius: 9999px;
    display: block;
    margin: 0 auto;
    position: relative;
    text-align: center;
    width: 160px
}

@media(max-width:768px) {
    .c-button {
        height: 12.82vw;
        width: 35.89vw
    }
}

.c-button.yellow {
    background-color: #ffeb35
}

.c-button.blue {
    background-color: #1e22b0
}

.c-button.white {
    background-color: #fff
}

.c-button>p {
    color: #1e22b0;
    font-family: Rammetto One;
    font-size: 16px;
    padding: 21px 0 20px
}

@media(max-width:768px) {
    .c-button>p {
        font-size: 3.58vw;
        line-height: 12.82vw;
        padding: 0
    }
}

.c-button>p.yellow {
    color: #1e22b0;
    font-family: Rammetto One
}

.c-button>p.blue {
    color: #fff;
    font-family: Rammetto One
}

.c-button>p.black {
    color: #333;
    font-family: Zen Maru Gothic
}

.c-button>.arrow {
    height: 20px;
    position: absolute;
    right: 16px;
    top: 50%;
    transform: translateY(-50%);
    width: 20px
}

@media(max-width:768px) {
    .c-button>.arrow {
        height: 5.12vw;
        right: 3.84vw;
        width: 5.12vw
    }
}

.c-button>.arrow>.arrow-bg {
    background-color: #1e22b0;
    border-radius: 50%;
    display: block;
    height: 20px;
    position: absolute;
    width: 20px;
    z-index: 0
}

@media(max-width:768px) {
    .c-button>.arrow>.arrow-bg {
        display: none
    }
}

.c-button>.arrow>.arrow-bg.yellow {
    background-color: #1e22b0
}

.c-button>.arrow>.arrow-bg.blue {
    background-color: #ffeb35
}

.c-button>.arrow>img {
    display: block;
    height: 20px;
    position: relative;
    width: 20px;
    z-index: 1
}

@media(max-width:768px) {
    .c-button>.arrow>img {
        height: 5.12vw;
        width: 5.12vw
    }
}

@media(min-width:769px) {
    .c-button:hover {
        animation: hover-bounce .5s ease 1
    }

    .c-button:hover>.arrow>.arrow-bg {
        transform: scale(1.5);
        transform-origin: center;
        transition: .5s
    }
}

.c-buttonBack {
    background-color: #ffeb35;
    border-radius: 9999px;
    display: block;
    margin: 0 auto;
    position: relative;
    width: 160px
}

@media(max-width:768px) {
    .c-buttonBack {
        height: 12.82vw;
        width: 35.89vw
    }
}

.c-buttonBack.yellow {
    background-color: #ffeb35
}

.c-buttonBack.blue {
    background-color: #1e22b0
}

.c-buttonBack>p {
    color: #1e22b0;
    font-family: Zen Maru Gothic;
    font-size: 13px;
    letter-spacing: .02em;
    padding: 21px 0 20px 62px
}

@media(max-width:768px) {
    .c-buttonBack>p {
        font-size: 3.33vw;
        line-height: 12.82vw;
        padding: 0 0 0 13.58vw
    }
}

.c-buttonBack>p.yellow {
    color: #1e22b0;
    font-family: Zen Maru Gothic
}

.c-buttonBack>p.blue {
    color: #fff;
    font-family: Zen Maru Gothic
}

.c-buttonBack>.arrow {
    height: 20px;
    left: 16px;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 20px
}

@media(max-width:768px) {
    .c-buttonBack>.arrow {
        height: 5.12vw;
        right: 3.84vw;
        width: 5.12vw
    }
}

.c-buttonBack>.arrow>.arrow-bg {
    background-color: #1e22b0;
    border-radius: 50%;
    display: block;
    height: 20px;
    position: absolute;
    width: 20px;
    z-index: 0
}

@media(max-width:768px) {
    .c-buttonBack>.arrow>.arrow-bg {
        display: none
    }
}

.c-buttonBack>.arrow>.arrow-bg.yellow {
    background-color: #1e22b0
}

.c-buttonBack>.arrow>.arrow-bg.blue {
    background-color: #ffeb35
}

.c-buttonBack>.arrow>img {
    display: block;
    height: 20px;
    position: relative;
    transform: rotate(180deg);
    width: 20px;
    z-index: 1
}

@media(max-width:768px) {
    .c-buttonBack>.arrow>img {
        height: 5.12vw;
        width: 5.12vw
    }
}

@media(min-width:769px) {
    .c-buttonBack:hover {
        animation: hover-bounce .5s ease 1
    }

    .c-buttonBack:hover>.arrow>.arrow-bg {
        transform: scale(1.5);
        transform-origin: center;
        transition: .5s
    }
}

.c-newsBlock {
    background-color: #fff;
    border-radius: 50px;
    padding: 100px
}

@media(max-width:768px) {
    .c-newsBlock {
        border-radius: 6.41vw;
        padding: 10.25vw 7.69vw
    }
}

.c-newsBlock>.inner {
    position: relative;
    z-index: 0
}

.c-newsBlock>.inner>.title {
    color: #1e22b0;
    font-family: Rammetto One;
    font-size: 56px;
    margin-bottom: 10px
}

@media(max-width:768px) {
    .c-newsBlock>.inner>.title {
        font-size: 10.25vw;
        margin-bottom: 1.28vw
    }
}

.c-newsBlock>.inner>.subtitle {
    color: #1e22b0;
    font-family: Zen Maru Gothic;
    font-size: 14px;
    letter-spacing: .02em;
    line-height: 1em;
    margin-bottom: 60px
}

@media(max-width:768px) {
    .c-newsBlock>.inner>.subtitle {
        font-size: 3.58vw;
        margin-bottom: 10.25vw
    }
}

.c-newsBlock>.inner>ul>li {
    border-bottom: 2px solid #e1e1e8;
    padding-bottom: 20px;
    position: relative
}

@media(max-width:768px) {
    .c-newsBlock>.inner>ul>li {
        padding-bottom: 5.64vw
    }
}

.c-newsBlock>.inner>ul>li:not(:first-child) {
    margin-top: 40px
}

@media(max-width:768px) {
    .c-newsBlock>.inner>ul>li:not(:first-child) {
        margin-top: 7.69vw
    }
}

.c-newsBlock>.inner>ul>li a {
    display: block;
    padding-right: 30px;
    position: relative
}

@media(max-width:768px) {
    .c-newsBlock>.inner>ul>li a {
        padding-right: 11.28vw
    }
}

.c-newsBlock>.inner>ul>li a>.arrowWrap {
    display: block;
    height: 24px;
    position: relative;
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 24px
}

.c-newsBlock>.inner>ul>li a>.arrowWrap:before {
    content: "";
    display: block;
    position: absolute
}

@media(min-width:769px) {
    .c-newsBlock>.inner>ul>li a>.arrowWrap:before {
        background-color: #1e22b0;
        border-radius: 50%;
        height: 24px;
        left: 0;
        top: 0;
        width: 24px
    }
}

.c-newsBlock>.inner>ul>li a>.arrowWrap>.arrow {
    background-image: url(/images/common/arrow-blue.svg);
    background-repeat: no-repeat;
    background-size: contain;
    display: block;
    height: 24px;
    position: relative;
    width: 24px;
    z-index: 1
}

@media(max-width:768px) {
    .c-newsBlock>.inner>ul>li a>.arrowWrap>.arrow {
        height: 6.15vw;
        width: 6.15vw
    }
}

.c-newsBlock>.inner>ul>li a .top {
    align-items: flex-start;
    color: #1e22b0;
    display: flex;
    margin-bottom: 10px
}

.c-newsBlock>.inner>ul>li a .top .cate {
    background-color: #ffeb35;
    border-radius: 9999px;
    color: #1e22b0;
    font-family: Zen Maru Gothic;
    font-size: 12px;
    letter-spacing: .05em;
    line-height: 1em;
    margin-right: 20px;
    padding: 5px 10px
}

@media(max-width:768px) {
    .c-newsBlock>.inner>ul>li a .top .cate {
        font-size: 3.07vw;
        margin-right: 2.56vw;
        padding: 1.28vw 2.56vw
    }
}

.c-newsBlock>.inner>ul>li a .top .date {
    font-family: Rammetto One;
    font-size: 13px;
    letter-spacing: .02em;
    padding-top: 4px
}

@media(max-width:768px) {
    .c-newsBlock>.inner>ul>li a .top .date {
        font-size: 3.07vw;
        padding-top: 1.53vw
    }
}

.c-newsBlock>.inner>ul>li a .bottom .title {
    font-size: 16px;
    font-weight: 600;
    letter-spacing: .05em;
    line-height: 1.5em
}

@media(max-width:768px) {
    .c-newsBlock>.inner>ul>li a .bottom .title {
        font-size: 3.07vw
    }
}

.c-newsBlock>.inner>ul>li a:hover .arrowWrap:before {
    transform: scale(1.5);
    transform-origin: center;
    transition: .5s
}

.c-newsBlock>.inner .buttonWrap {
    position: absolute;
    right: 0;
    top: 0;
    z-index: 1
}

@media(max-width:768px) {
    .c-newsBlock>.inner .buttonWrap {
        margin-top: 10.25vw;
        position: static
    }
}

.c-newsBlock>.inner .buttonWrap .Button {
    margin: 0
}

@media(max-width:768px) {
    .c-newsBlock>.inner .buttonWrap .Button {
        margin: 0 auto
    }
}

.c-shopBlock h2 {
    font-family: Zen Maru Gothic;
    font-size: 24px;
    letter-spacing: .05em;
    line-height: 1em;
    margin-bottom: 40px
}

@media(max-width:768px) {
    .c-shopBlock h2 {
        font-size: 4.61vw;
        margin-bottom: 7.69vw
    }
}

.c-shopBlock>ul>li {
    border-bottom: 2px solid #e1e1e8;
    margin-bottom: 40px
}

.c-shopBlock>ul>li:last-child {
    margin-bottom: 0
}

@media(max-width:768px) {
    .c-shopBlock>ul>li {
        margin-bottom: 7.69vw
    }
}

.c-shopBlock>ul>li.open {
    border: none
}

.c-shopBlock>ul>li h3 {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    height: 40px;
    justify-content: space-between;
    margin-bottom: 20px
}

@media(max-width:768px) {
    .c-shopBlock>ul>li h3 {
        height: 10.25vw;
        margin-bottom: 2.56vw
    }
}

.c-shopBlock>ul>li h3>.name {
    color: #333;
    font-size: 16px;
    font-weight: 600;
    letter-spacing: .05em;
    line-height: 1.5em
}

@media(max-width:768px) {
    .c-shopBlock>ul>li h3>.name {
        font-size: 3.33vw;
        font-size: 3.84vw
    }
}

.c-shopBlock>ul>li h3>.icon {
    height: 40px;
    position: relative;
    width: 40px
}

.c-shopBlock>ul>li h3>.icon:before {
    content: "";
    display: block;
    position: absolute
}

@media(max-width:768px) {
    .c-shopBlock>ul>li h3>.icon {
        height: 10.25vw;
        width: 10.25vw
    }
}

.c-shopBlock>ul>li h3>.icon:before {
    background-color: #1e22b0;
    border-radius: 50%;
    height: 40px;
    width: 40px;
    z-index: 0
}

@media(max-width:768px) {
    .c-shopBlock>ul>li h3>.icon:before {
        display: none
    }
}

.c-shopBlock>ul>li h3>.icon .iconInner {
    background-color: #1e22b0;
    border-radius: 50%;
    display: block;
    height: 40px;
    position: relative;
    width: 40px;
    z-index: 1
}

.c-shopBlock>ul>li h3>.icon .iconInner:after,
.c-shopBlock>ul>li h3>.icon .iconInner:before {
    content: "";
    display: block
}

@media(max-width:768px) {
    .c-shopBlock>ul>li h3>.icon .iconInner {
        height: 10.25vw;
        width: 10.25vw
    }
}

.c-shopBlock>ul>li h3>.icon .iconInner:after,
.c-shopBlock>ul>li h3>.icon .iconInner:before {
    background-color: #fff;
    height: 2px;
    left: 50%;
    position: absolute;
    top: 50%;
    transform: translateX(-50%) translateY(-50%);
    transition: .3s;
    width: 10px
}

@media(max-width:768px) {

    .c-shopBlock>ul>li h3>.icon .iconInner:after,
    .c-shopBlock>ul>li h3>.icon .iconInner:before {
        height: .51vw;
        width: 2.56vw
    }
}

.c-shopBlock>ul>li h3>.icon .iconInner:after {
    transform: translateX(-50%) translateY(-50%) rotate(90deg)
}

.c-shopBlock>ul>li h3>.icon.open .iconInner:after {
    transform: translateX(-50%) translateY(-50%);
    transition: .5s
}

@media(min-width:769px) {
    .c-shopBlock>ul>li h3:hover {
        cursor: pointer
    }

    .c-shopBlock>ul>li h3:hover .icon:before {
        transform: scale(1.5);
        transform-origin: center;
        transition: .5s
    }
}

.c-shopBlock>ul>li .listWrap {
    height: 0;
    overflow: hidden
}

.c-shopBlock>ul>li .listWrap ul {
    background-color: #f2f2f6;
    border-radius: 10px;
    display: flex;
    flex-wrap: wrap;
    padding: 40px 40px 26px
}

@media(max-width:768px) {
    .c-shopBlock>ul>li .listWrap ul {
        border-radius: 2.56vw;
        justify-content: space-between;
        padding: 6.15vw 5.38vw 1.02vw
    }
}

.c-shopBlock>ul>li .listWrap ul li {
    margin-bottom: 24px;
    margin-right: 16px;
    width: calc(25% - 12px)
}

@media(max-width:768px) {
    .c-shopBlock>ul>li .listWrap ul li {
        margin-bottom: 5.12vw;
        margin-right: 0;
        width: 30.76vw
    }
}

.c-shopBlock>ul>li .listWrap ul li:nth-child(4n) {
    margin-right: 0
}

.c-shopBlock>ul>li .listWrap ul li a,
.c-shopBlock>ul>li .listWrap ul li>span {
    align-items: center;
    border-bottom: 2px solid #333;
    display: block;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    padding-bottom: 10px
}

@media(max-width:768px) {

    .c-shopBlock>ul>li .listWrap ul li a,
    .c-shopBlock>ul>li .listWrap ul li>span {
        border-color: #e1e1e8
    }
}

.c-shopBlock>ul>li .listWrap ul li a .name,
.c-shopBlock>ul>li .listWrap ul li>span .name {
    font-size: 14px;
    font-weight: 600;
    letter-spacing: .05em;
    line-height: 1em
}

@media(max-width:768px) {

    .c-shopBlock>ul>li .listWrap ul li a .name,
    .c-shopBlock>ul>li .listWrap ul li>span .name {
        font-size: 3.07vw
    }
}

.c-shopBlock>ul>li .listWrap ul li a .arrow,
.c-shopBlock>ul>li .listWrap ul li>span .arrow {
    display: block;
    height: 24px;
    position: relative;
    width: 24px
}

.c-shopBlock>ul>li .listWrap ul li a .arrow:before,
.c-shopBlock>ul>li .listWrap ul li>span .arrow:before {
    content: "";
    position: absolute
}

@media(max-width:768px) {

    .c-shopBlock>ul>li .listWrap ul li a .arrow,
    .c-shopBlock>ul>li .listWrap ul li>span .arrow {
        height: 6.15vw;
        width: 6.15vw
    }
}

.c-shopBlock>ul>li .listWrap ul li a .arrow:before,
.c-shopBlock>ul>li .listWrap ul li>span .arrow:before {
    background-color: #1e22b0;
    border-radius: 50%;
    display: block;
    height: 24px;
    width: 24px;
    z-index: 0
}

@media(max-width:768px) {

    .c-shopBlock>ul>li .listWrap ul li a .arrow:before,
    .c-shopBlock>ul>li .listWrap ul li>span .arrow:before {
        display: none
    }
}

.c-shopBlock>ul>li .listWrap ul li a .arrow .arrow-icon,
.c-shopBlock>ul>li .listWrap ul li>span .arrow .arrow-icon {
    background-image: url(/images/common/arrow-blue.svg);
    background-repeat: no-repeat;
    background-size: cover;
    display: block;
    height: 24px;
    position: relative;
    width: 24px;
    z-index: 1
}

@media(max-width:768px) {

    .c-shopBlock>ul>li .listWrap ul li a .arrow .arrow-icon,
    .c-shopBlock>ul>li .listWrap ul li>span .arrow .arrow-icon {
        height: 6.15vw;
        width: 6.15vw
    }
}

@media(min-width:769px) {
    .c-shopBlock>ul>li .listWrap ul li a:hover .arrow:before {
        transform: scale(1.5);
        transform-origin: center;
        transition: .5s
    }
}

.c-shopBlock>ul>li .listWrap ul li>span {
    color: #afafaf
}

.c-shopBlock>ul>li .listWrap ul li>span .arrow:before {
    display: none
}

.c-shopBlock>ul>li .listWrap ul li>span .arrow .arrow-icon {
    background-image: url(/images/common/arrow-gray-1.svg)
}

.c-searchBlock {
    width: 100%
}

.c-searchBlock>.inner>.title {
    font-family: Zen Maru Gothic;
    font-size: 24;
    letter-spacing: .05em;
    line-height: 1em;
    margin-bottom: 40px
}

@media(max-width:768px) {
    .c-searchBlock>.inner>.title {
        font-size: 4.61vw;
        margin-bottom: 7.69vw
    }
}

.c-searchBlock>.inner>form {
    display: flex
}

.c-searchBlock>.inner>form input {
    background-color: #f2f2f6;
    border-radius: 3px 0 0 3px;
    color: #333;
    display: block;
    font-size: 16px;
    font-weight: 600;
    height: 50px;
    letter-spacing: .05em;
    line-height: 1em;
    padding: 0 20px;
    width: calc(100% - 100px)
}

@media(max-width:768px) {
    .c-searchBlock>.inner>form input {
        border-radius: .76vw 0 0 .76vw;
        font-size: 3.84vw;
        height: 10.25vw;
        padding: 0 2.82vw;
        width: calc(100% - 15.38vw)
    }
}

.c-searchBlock>.inner>form input::-moz-placeholder {
    color: #afafaf;
    font-weight: 400
}

.c-searchBlock>.inner>form input::placeholder {
    color: #afafaf;
    font-weight: 400
}

.c-searchBlock>.inner>form input:focus {
    border: 1px solid #e1e1e8
}

.c-searchBlock>.inner>form button {
    background-color: #333;
    border-radius: 0 3px 3px 0;
    color: #fff;
    display: block;
    font-size: 16px;
    font-weight: 600;
    height: 50px;
    letter-spacing: .2em;
    line-height: 1em;
    width: 100px
}

@media(max-width:768px) {
    .c-searchBlock>.inner>form button {
        border-radius: 0 .76vw .76vw 0;
        font-size: 3.33vw;
        height: 10.25vw;
        width: 15.38vw
    }
}

@media(min-width:769px) {
    .c-searchBlock>.inner>form button:hover {
        animation: hover-bounce-font .5s ease 1;
        cursor: pointer
    }

    @keyframes hover-bounce-font {
        0% {
            font-size: 16px
        }

        40% {
            font-size: 14px
        }

        to {
            font-size: 16px
        }
    }
}

.c-shopResult .headline {
    margin-bottom: 80px
}

@media(max-width:768px) {
    .c-shopResult .headline {
        margin-bottom: 15.38vw
    }
}

.c-shopResult .headline>.subtitle {
    color: #1e22b0;
    font-family: Zen Maru Gothic;
    font-size: 16px;
    letter-spacing: .02em;
    line-height: 1em;
    margin-bottom: 20px;
    padding-left: 14px;
    position: relative
}

.c-shopResult .headline>.subtitle:before {
    content: "";
    display: block;
    position: absolute
}

@media(max-width:768px) {
    .c-shopResult .headline>.subtitle {
        font-size: 3.58vw;
        margin-bottom: 5.12vw;
        padding-left: 2.82vw
    }
}

.c-shopResult .headline>.subtitle:before {
    background-color: #1e22b0;
    border-radius: 50%;
    height: 9px;
    left: 0;
    top: 4px;
    width: 9px
}

@media(max-width:768px) {
    .c-shopResult .headline>.subtitle:before {
        height: 1.53vw;
        top: .76vw;
        width: 1.53vw
    }
}

.c-shopResult .headline>.title {
    font-feature-settings: "palt";
    font-size: 30px;
    font-weight: 600;
    letter-spacing: .05em;
    line-height: 1em;
    margin-bottom: 40px
}

@media(max-width:768px) {
    .c-shopResult .headline>.title {
        font-size: 6.15vw;
        margin-bottom: 7.69vw
    }
}

.c-shopResult .headline>.count {
    font-size: 16px;
    letter-spacing: .05em;
    line-height: 1em
}

@media(max-width:768px) {
    .c-shopResult .headline>.count {
        font-size: 3.07vw
    }
}

.c-shopResult .headline>.count strong {
    font-weight: 600
}

.c-shopResult .result .service {
    margin-bottom: 80px
}

@media(max-width:768px) {
    .c-shopResult .result .service {
        margin-bottom: 15.38vw
    }
}

.c-shopResult .result .service>.title {
    color: #333;
    font-family: Zen Maru Gothic;
    font-size: 24px;
    letter-spacing: .05em;
    line-height: 1em;
    margin-bottom: 30px
}

@media(max-width:768px) {
    .c-shopResult .result .service>.title {
        font-size: 4.61vw;
        margin-bottom: 5.12vw
    }
}

.c-shopResult .result>.list ul li {
    border-bottom: 2px solid #e1e1e8;
    padding: 40px 0 20px
}

@media(max-width:768px) {
    .c-shopResult .result>.list ul li {
        padding-bottom: 5.12vw;
        padding-top: 7.69vw
    }
}

.c-shopResult .result>.list ul li:first-child {
    padding-top: 0
}

.c-shopResult .result>.list ul li>a {
    display: block;
    position: relative
}

@media(max-width:768px) {
    .c-shopResult .result>.list ul li>a>.top {
        position: relative;
        z-index: 0
    }

    .c-shopResult .result>.list ul li>a>.top .text {
        padding-right: 11.28vw
    }
}

.c-shopResult .result>.list ul li>a>.top .text>.title {
    font-size: 22px;
    font-weight: 600;
    letter-spacing: .02em;
    line-height: 1.2em;
    margin-bottom: 20px
}

@media(max-width:768px) {
    .c-shopResult .result>.list ul li>a>.top .text>.title {
        font-size: 4.61vw;
        margin-bottom: 2.56vw
    }
}

.c-shopResult .result>.list ul li>a>.top .text .address {
    font-size: 16px;
    font-weight: 600;
    letter-spacing: .05em;
    line-height: 1.5em;
    margin-bottom: 20px
}

@media(max-width:768px) {
    .c-shopResult .result>.list ul li>a>.top .text .address {
        font-size: 3.07vw
    }
}

.c-shopResult .result>.list ul li>a>.top .arrowWrap {
    height: 24px;
    position: relative;
    position: absolute;
    right: 0;
    top: 50%;
    top: 56px;
    transform: translateY(-50%);
    width: 24px
}

.c-shopResult .result>.list ul li>a>.top .arrowWrap:before {
    content: "";
    display: block;
    position: absolute
}

@media(max-width:768px) {
    .c-shopResult .result>.list ul li>a>.top .arrowWrap {
        height: 6.15vw;
        width: 6.15vw
    }
}

.c-shopResult .result>.list ul li>a>.top .arrowWrap:before {
    background-color: #1e22b0;
    border-radius: 50%;
    height: 24px;
    left: 0;
    top: 0;
    width: 24px;
    z-index: 0
}

@media(max-width:768px) {
    .c-shopResult .result>.list ul li>a>.top .arrowWrap:before {
        display: none
    }
}

.c-shopResult .result>.list ul li>a>.top .arrowWrap .arrow {
    background-image: url(/images/common/arrow-blue.svg);
    background-repeat: no-repeat;
    background-size: contain;
    display: block;
    height: 24px;
    position: relative;
    width: 24px;
    z-index: 1
}

@media(max-width:768px) {
    .c-shopResult .result>.list ul li>a>.top .arrowWrap .arrow {
        height: 6.15vw;
        width: 6.15vw
    }
}

.c-shopResult .result>.list ul li>a>.icons {
    display: flex
}

@media(max-width:768px) {
    .c-shopResult .result>.list ul li>a>.icons {
        justify-content: space-between
    }
}

.c-shopResult .result>.list ul li>a>.icons .icon {
    display: block;
    height: 54px;
    margin-right: 10px;
    width: 54px
}

.c-shopResult .result>.list ul li>a>.icons .icon:last-child {
    margin: 0
}

@media(max-width:768px) {
    .c-shopResult .result>.list ul li>a>.icons .icon {
        height: 13.84vw;
        margin-right: 0;
        width: 13.84vw
    }
}

.c-shopResult .result>.list ul li>a>.icons .icon:first-child:not(.is-active) {
    background-image: url(/images/shop-search/icon-1.svg);
    background-repeat: no-repeat;
    background-size: cover
}

.c-shopResult .result>.list ul li>a>.icons .icon:nth-child(2):not(.is-active) {
    background-image: url(/images/shop-search/icon-2.svg);
    background-repeat: no-repeat;
    background-size: cover
}

.c-shopResult .result>.list ul li>a>.icons .icon:nth-child(3):not(.is-active) {
    background-image: url(/images/shop-search/icon-3.svg);
    background-repeat: no-repeat;
    background-size: cover
}

.c-shopResult .result>.list ul li>a>.icons .icon:nth-child(4):not(.is-active) {
    background-image: url(/images/shop-search/icon-4.svg);
    background-repeat: no-repeat;
    background-size: cover
}

.c-shopResult .result>.list ul li>a>.icons .icon:nth-child(5):not(.is-active) {
    background-image: url(/images/shop-search/icon-5.svg);
    background-repeat: no-repeat;
    background-size: cover
}

.c-shopResult .result>.list ul li>a>.icons .icon:first-child.is-active {
    background-image: url(/images/shop-search/icon-1-active.svg);
    background-repeat: no-repeat;
    background-size: cover
}

.c-shopResult .result>.list ul li>a>.icons .icon:nth-child(2).is-active {
    background-image: url(/images/shop-search/icon-2-active.svg);
    background-repeat: no-repeat;
    background-size: cover
}

.c-shopResult .result>.list ul li>a>.icons .icon:nth-child(3).is-active {
    background-image: url(/images/shop-search/icon-3-active.svg);
    background-repeat: no-repeat;
    background-size: cover
}

.c-shopResult .result>.list ul li>a>.icons .icon:nth-child(4).is-active {
    background-image: url(/images/shop-search/icon-4-active.svg);
    background-repeat: no-repeat;
    background-size: cover
}

.c-shopResult .result>.list ul li>a>.icons .icon:nth-child(5).is-active {
    background-image: url(/images/shop-search/icon-5-active.svg);
    background-repeat: no-repeat;
    background-size: cover
}

@media(min-width:769px) {
    .c-shopResult .result>.list ul li a:hover .arrowWrap:before {
        transform: scale(1.5);
        transform-origin: center;
        transition: .5s
    }
}

.c-shopResult+.c-buttonBack {
    margin-top: 50px;
    width: 200px
}

@media(max-width:768px) {
    .c-shopResult+.c-buttonBack {
        margin-bottom: 10.25vw;
        width: 51.28vw
    }
}

.c-shopResult+.c-buttonBack>p.blue {
    padding-left: 50px
}

@media(max-width:768px) {
    .c-shopResult+.c-buttonBack>p.blue {
        padding-left: 14.1vw
    }
}

.c-shopResult .reSearch .search-block-outer {
    margin-bottom: 80px;
    max-width: 584px;
    width: 100%
}

@media(max-width:768px) {
    .c-shopResult .reSearch .search-block-outer {
        margin-bottom: 10.25vw;
        max-width: 100%
    }
}

.c-shopService {
    display: flex
}

@media(max-width:768px) {
    .c-shopService {
        justify-content: space-between
    }
}

.c-shopService>.item {
    margin-right: 24px;
    width: 72px
}

.c-shopService>.item:last-child {
    margin: 0
}

@media(max-width:768px) {
    .c-shopService>.item {
        margin-right: 0;
        width: 13.84vw
    }
}

.c-shopService>.item>.icon {
    background-color: #f2f2f6;
    border-radius: 7px;
    display: block;
    height: 72px;
    margin-bottom: 5px;
    width: 72px
}

@media(max-width:768px) {
    .c-shopService>.item>.icon {
        border-radius: 1.02vw;
        height: 13.84vw;
        margin-bottom: 1.28vw;
        width: 13.84vw
    }
}

.c-shopService>.item>.name {
    color: #333;
    font-family: Zen Maru Gothic;
    font-size: 13px;
    letter-spacing: .02em;
    line-height: 1.2em;
    text-align: center
}

@media(max-width:768px) {
    .c-shopService>.item>.name {
        font-size: 2.56vw
    }
}

.c-shopService>.item:first-child .icon.is-active {
    background-image: url(/images/shop-search/icon-1-active.svg);
    background-repeat: no-repeat;
    background-size: cover
}

.c-shopService>.item:nth-child(2) .icon.is-active {
    background-image: url(/images/shop-search/icon-2-active.svg);
    background-repeat: no-repeat;
    background-size: cover
}

.c-shopService>.item:nth-child(3) .icon.is-active {
    background-image: url(/images/shop-search/icon-3-active.svg);
    background-repeat: no-repeat;
    background-size: cover
}

.c-shopService>.item:nth-child(4) .icon.is-active {
    background-image: url(/images/shop-search/icon-4-active.svg);
    background-repeat: no-repeat;
    background-size: cover
}

.c-shopService>.item:nth-child(5) .icon.is-active {
    background-image: url(/images/shop-search/icon-5-active.svg);
    background-repeat: no-repeat;
    background-size: cover
}

.c-shopService>.item:first-child .icon {
    background-image: url(/images/shop-search/icon-1.svg);
    background-repeat: no-repeat;
    background-size: cover
}

.c-shopService>.item:nth-child(2) .icon {
    background-image: url(/images/shop-search/icon-2.svg);
    background-repeat: no-repeat;
    background-size: cover
}

.c-shopService>.item:nth-child(3) .icon {
    background-image: url(/images/shop-search/icon-3.svg);
    background-repeat: no-repeat;
    background-size: cover
}

.c-shopService>.item:nth-child(4) .icon {
    background-image: url(/images/shop-search/icon-4.svg);
    background-repeat: no-repeat;
    background-size: cover
}

.c-shopService>.item:nth-child(5) .icon {
    background-image: url(/images/shop-search/icon-5.svg);
    background-repeat: no-repeat;
    background-size: cover
}

.c-contactProgress>ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin: 0 auto;
    position: relative;
    width: 336px
}

.c-contactProgress>ul:before {
    content: "";
    display: block
}

@media(max-width:768px) {
    .c-contactProgress>ul {
        width: 52.05vw
    }
}

.c-contactProgress>ul:before {
    background-color: #f2f2f6;
    bottom: 9px;
    height: 2px;
    left: 50%;
    position: absolute;
    transform: translateX(-50%);
    width: 300px
}

@media(max-width:768px) {
    .c-contactProgress>ul:before {
        bottom: 2.3vw;
        height: .51vw;
        width: 44.1vw
    }
}

.c-contactProgress>ul li {
    width: 30px
}

@media(max-width:768px) {
    .c-contactProgress>ul li {
        width: 7.69vw
    }
}

.c-contactProgress>ul li p {
    color: #afafaf;
    font-family: Zen Maru Gothic;
    font-size: 14px;
    letter-spacing: .05em;
    line-height: 1em;
    margin-bottom: 9px
}

@media(max-width:768px) {
    .c-contactProgress>ul li p {
        font-size: 3.58vw;
        margin-bottom: 2.3vw
    }
}

.c-contactProgress>ul li p.active {
    color: #1e22b0
}

.c-contactProgress>ul li .iconWrap {
    border-radius: 50%;
    display: block;
    height: 20px;
    margin: 0 auto;
    position: relative;
    width: 20px;
    z-index: 0
}

@media(max-width:768px) {
    .c-contactProgress>ul li .iconWrap {
        height: 5.12vw;
        width: 5.12vw
    }
}

.c-contactProgress>ul li .iconWrap .icon {
    background-color: #afafaf;
    border-radius: 50%;
    display: block;
    height: 10px;
    left: 50%;
    position: absolute;
    top: 50%;
    transform: translateX(-50%) translateY(-50%);
    width: 10px
}

@media(max-width:768px) {
    .c-contactProgress>ul li .iconWrap .icon {
        height: 2.56vw;
        width: 2.56vw
    }
}

.c-contactProgress>ul li .iconWrap.active {
    background-color: #f2f2f6
}

.c-contactProgress>ul li .iconWrap.active .icon {
    background-color: #1e22b0
}

.p-index {
    background-color: #ffeb35;
    background-color: #fff100;
    overflow: hidden;
    position: relative
}

.p-index:before {
    background-image: url(/images/index/img-hand.png);
    background-position: 50%;
    background-repeat: no-repeat;
    background-size: cover;
    content: "";
    display: block;
    height: 100vh;
    position: absolute;
    position: fixed;
    top: 0;
    transform: translateZ(-1px);
    width: 100%;
    z-index: 0
}

@media(max-width:768px) {
    .p-index:before {
        background-color: #fff100;
        background-image: url(/images/index/img-hand-sp.png);
        background-position: bottom;
        background-size: cover
    }
}

.p-index>.inner {
    position: relative;
    z-index: 0
}

.p-index>.inner .kv-index {
    min-height: 800px
}

@media(max-width:768px) {
    .p-index>.inner .kv-index {
        min-height: auto
    }
}

.p-index>.inner .kv-index>.inner {
    position: relative;
    width: 100%;
    z-index: 1
}

.p-index>.inner .kv-index>.inner .deco {
    background-image: url(/images/index/kv-deco.svg);
    background-repeat: no-repeat;
    background-size: cover;
    bottom: -178px;
    height: 410px;
    position: absolute;
    right: -54px;
    width: 355px;
    z-index: 1
}

@media(max-width:768px) {
    .p-index>.inner .kv-index>.inner .deco {
        display: none
    }
}

.p-index>.inner .kv-index>.inner .imgwrap {
    background-color: #f8eb83;
    overflow: hidden;
    position: relative;
    width: 100%;
    z-index: 0
}

@media(max-width:1654px) {
    .p-index>.inner .kv-index>.inner .imgwrap {
        height: 800px
    }
}

@media(max-width:768px) {
    .p-index>.inner .kv-index>.inner .imgwrap {
        height: auto;
        height: 166.66vw
    }
}

.p-index>.inner .kv-index>.inner .imgwrap img {
    display: block;
    left: 50%;
    position: relative;
    transform: translateX(-50%) scale(1.5);
    width: 100%
}

@media(max-width:1654px) {
    .p-index>.inner .kv-index>.inner .imgwrap img {
        width: 1654px
    }
}

@media(max-width:768px) {
    .p-index>.inner .kv-index>.inner .imgwrap img {
        height: 166.66vw;
        position: absolute;
        width: 276.92vw
    }
}

.p-index>.inner>.slider {
    background-color: #ffeb35;
    position: relative;
    width: 100%;
    z-index: 2
}

.p-index>.inner>.slider .outer {
    left: 50%;
    max-width: 1550px;
    overflow: hidden;
    padding-top: 78px;
    position: absolute;
    top: -200px;
    transform: translateX(-50%);
    width: 100%
}

@media(max-width:768px) {
    .p-index>.inner>.slider .outer {
        max-width: 100%;
        overflow: visible;
        padding-top: 0;
        top: -20.77vw
    }
}

.p-index>.inner>.slider .inner {
    height: 369px;
    text-align: center;
    width: 100%
}

@media(max-width:768px) {
    .p-index>.inner>.slider .inner {
        height: 49.74vw
    }
}

.p-index>.inner>.slider .inner ul.splide__list {
    align-items: center;
    display: flex
}

.p-index>.inner>.slider .inner ul.splide__list li {
    display: block
}

.p-index>.inner>.slider .inner ul.splide__list li span {
    display: block;
    transform: scale(1);
    transition: transform .8s
}

.p-index>.inner>.slider .inner ul.splide__list li span img {
    border-radius: 15px;
    overflow: hidden;
    width: 340px
}

@media(max-width:768px) {
    .p-index>.inner>.slider .inner ul.splide__list li span img {
        border-radius: 3.84vw;
        width: 46.66vw
    }
}

.p-index>.inner>.slider .inner ul.splide__list li.is-active span {
    transform: scale(1.647)
}

@media(max-width:768px) {
    .p-index>.inner>.slider .inner ul.splide__list li.is-active span {
        transform: scale(1.79) translateY(-2.44vw)
    }

    .p-index>.inner>.slider .inner ul.splide__list li.is-active span img {
        border-radius: 2.56vw
    }
}

.p-index>.inner>.slider .inner .pagenation-outer {
    bottom: 0;
    left: 50%;
    position: absolute;
    transform: translateX(-50%)
}

.p-index>.inner>.slider .inner .pagenation-outer .cover {
    display: flex;
    justify-content: space-between;
    pointer-events: none;
    position: absolute;
    z-index: 2
}

.p-index>.inner>.slider .inner .pagenation-outer .cover li {
    background-color: transparent;
    border: 1px solid #ffeb35;
    border-radius: 50%;
    height: 18px;
    margin: 0 3px;
    transform: scale(1.1);
    width: 18px
}

@media(max-width:768px) {
    .p-index>.inner>.slider .inner .pagenation-outer .cover li {
        border: 2px solid #ffeb35;
        height: 4.61vw;
        transform: scale(1.2);
        width: 4.61vw
    }
}

.p-index>.inner>.slider .inner .pagenation-outer .slider-pagenation {
    display: flex;
    justify-content: space-between;
    position: relative;
    z-index: 1
}

.p-index>.inner>.slider .inner .pagenation-outer .slider-pagenation li {
    border-radius: 50%;
    height: 18px;
    list-style: none;
    margin: 0 3px;
    overflow: hidden;
    position: relative;
    width: 18px;
    z-index: 0
}

.p-index>.inner>.slider .inner .pagenation-outer .slider-pagenation li:after,
.p-index>.inner>.slider .inner .pagenation-outer .slider-pagenation li:before {
    content: "";
    display: block;
    position: absolute
}

@media(max-width:768px) {
    .p-index>.inner>.slider .inner .pagenation-outer .slider-pagenation li {
        height: 4.61vw;
        width: 4.61vw
    }
}

.p-index>.inner>.slider .inner .pagenation-outer .slider-pagenation li button {
    background-color: #fff;
    border: 3px solid #ffeb35;
    border-radius: 50%;
    box-sizing: content-box;
    display: block;
    height: 8px;
    left: 50%;
    position: absolute;
    top: 50%;
    transform: translateX(-50%) translateY(-50%);
    width: 8px;
    z-index: 2
}

@media(max-width:768px) {
    .p-index>.inner>.slider .inner .pagenation-outer .slider-pagenation li button {
        border-width: .76vw;
        height: 2.05vw;
        width: 2.05vw
    }
}

.p-index>.inner>.slider .inner .pagenation-outer .slider-pagenation li button:hover {
    cursor: pointer
}

.p-index>.inner>.slider .inner .pagenation-outer .slider-pagenation li button.is-active {
    background-color: #1e22b0
}

.p-index>.inner>.slider .inner .pagenation-outer .slider-pagenation li.active {
    background-color: #1e22b0;
    position: relative
}

.p-index>.inner>.slider .inner .pagenation-outer .slider-pagenation li.active:after,
.p-index>.inner>.slider .inner .pagenation-outer .slider-pagenation li.active:before {
    background-color: #ffeb35;
    content: "";
    display: block;
    height: 18px;
    position: absolute;
    top: 0;
    width: 18px
}

@media(max-width:768px) {

    .p-index>.inner>.slider .inner .pagenation-outer .slider-pagenation li.active:after,
    .p-index>.inner>.slider .inner .pagenation-outer .slider-pagenation li.active:before {
        height: 4.61vw;
        width: 4.61vw
    }
}

.p-index>.inner>.slider .inner .pagenation-outer .slider-pagenation li.active:before {
    animation: index-pagenation-before 6.2s linear 1;
    background-color: #ffeb35;
    left: -9px;
    transform: rotate(0deg);
    transform-origin: right center
}

@media(max-width:768px) {
    .p-index>.inner>.slider .inner .pagenation-outer .slider-pagenation li.active:before {
        left: -2.31vw
    }
}

.p-index>.inner>.slider .inner .pagenation-outer .slider-pagenation li.active:after {
    animation: index-pagenation-after 6.2s linear 1;
    background-color: #ffeb35;
    left: 9px;
    transform: rotate(0deg);
    transform-origin: left center
}

@media(max-width:768px) {
    .p-index>.inner>.slider .inner .pagenation-outer .slider-pagenation li.active:after {
        left: 2.3vw
    }
}

.p-index>.inner>.slider .inner .pagenation-outer .slider-pagenation li.active.first:before {
    animation: index-pagenation-before 7s linear 1
}

.p-index>.inner>.slider .inner .pagenation-outer .slider-pagenation li.active.first:after {
    animation: index-pagenation-after 7s linear 1
}

@keyframes index-pagenation-after {
    0% {
        background-color: #ffeb35;
        transform: rotate(0deg);
        transform-origin: left center
    }

    50% {
        background-color: #ffeb35;
        transform: rotate(180deg);
        transform-origin: left center
    }

    50.1% {
        background-color: #1e22b0;
        transform: rotate(0deg);
        transform-origin: left center
    }

    to {
        background-color: #1e22b0;
        transform: rotate(0deg);
        transform-origin: left center
    }
}

@keyframes index-pagenation-before {
    0% {
        transform: rotate(0deg);
        transform-origin: right center
    }

    50% {
        transform: rotate(0deg);
        transform-origin: right center
    }

    50.1% {
        transform: rotate(0deg);
        transform-origin: right center
    }

    to {
        transform: rotate(180deg);
        transform-origin: right center
    }
}

.p-index>.inner>.about {
    background-color: #ffeb35;
    position: relative;
    z-index: 0
}

.p-index>.inner>.about .bg-rotate {
    height: 474px;
    left: 50%;
    position: absolute;
    top: 936px;
    transform: translateX(-50%);
    width: 1332px;
    z-index: 1
}

@media(max-width:768px) {
    .p-index>.inner>.about .bg-rotate {
        height: 62.3vw;
        left: 52.05vw;
        top: 100vw;
        transform: translateX(0);
        width: 62.3vw
    }
}

.p-index>.inner>.about .bg-rotate>span {
    animation: about-rotate 60s linear infinite;
    background-image: url(/images/index/about-rotate.svg);
    background-repeat: no-repeat;
    background-size: cover;
    display: block;
    height: 474px;
    position: absolute;
    right: 0;
    width: 474px
}

@media(max-width:768px) {
    .p-index>.inner>.about .bg-rotate>span {
        height: 100%;
        position: relative;
        width: 100%
    }
}

@keyframes about-rotate {
    0% {
        transform: rotate(0deg)
    }

    to {
        transform: rotate(-359deg)
    }
}

.p-index>.inner>.about .bg {
    background-image: url(/images/index/bg-about.png);
    background-repeat: no-repeat;
    background-size: contain;
    height: 1194px;
    left: 50%;
    position: absolute;
    top: 424px;
    transform: translateX(-50%);
    width: 1672px;
    z-index: 2
}

@media(max-width:768px) {
    .p-index>.inner>.about .bg {
        background-image: url(/images/index/bg-about-sp.png);
        background-repeat: no-repeat;
        background-size: contain;
        height: 303.58vw;
        left: 0;
        top: 51.79vw;
        transform: translateX(0);
        width: 100vw
    }
}

.p-index>.inner>.about .inner {
    color: #1e22b0;
    font-family: Zen Maru Gothic;
    padding: 576px 0 486px;
    text-align: center
}

@media(max-width:768px) {
    .p-index>.inner>.about .inner {
        margin: 0 auto;
        padding: 109.23vw 0 100vw;
        width: 100vw
    }
}

.p-index>.inner>.about .inner .textblock {
    position: relative;
    z-index: 3
}

.p-index>.inner>.about .inner .textblock h2 {
    font-family: Rammetto One;
    font-size: 26px;
    margin-bottom: 6px
}

@media(max-width:768px) {
    .p-index>.inner>.about .inner .textblock h2 {
        font-size: 4.61vw;
        margin-bottom: 2.56vw
    }
}

.p-index>.inner>.about .inner .textblock .subtitle {
    font-size: 14px;
    letter-spacing: .05em;
    line-height: 1em;
    margin-bottom: 60px
}

@media(max-width:768px) {
    .p-index>.inner>.about .inner .textblock .subtitle {
        font-size: 3.33vw;
        margin-bottom: 5.89vw
    }
}

.p-index>.inner>.about .inner .textblock .headline {
    font-size: 60px;
    letter-spacing: .02em;
    line-height: 1.5em;
    margin-bottom: 10px
}

.p-index>.inner>.about .inner .textblock .headline span {
    display: inline-block
}

.p-index>.inner>.about .inner .textblock .headline .itemWrap {
    overflow: hidden
}

.p-index>.inner>.about .inner .textblock .headline .item {
    transform: translateY(110%)
}

.p-index>.inner>.about .inner .textblock .headline.display .item {
    transform: translateY(0);
    transition: .8s
}

.p-index>.inner>.about .inner .textblock .headline.display .itemWrap:first-child .item {
    transition-delay: .1s
}

.p-index>.inner>.about .inner .textblock .headline.display .itemWrap:nth-child(2) .item {
    transition-delay: .2s
}

.p-index>.inner>.about .inner .textblock .headline.display .itemWrap:nth-child(3) .item {
    transition-delay: .3s
}

.p-index>.inner>.about .inner .textblock .headline.display .itemWrap:nth-child(4) .item {
    transition-delay: .4s
}

.p-index>.inner>.about .inner .textblock .headline.display .itemWrap:nth-child(5) .item {
    transition-delay: .5s
}

.p-index>.inner>.about .inner .textblock .headline.display .itemWrap:nth-child(6) .item {
    transition-delay: .6s
}

.p-index>.inner>.about .inner .textblock .headline.display .itemWrap:nth-child(7) .item {
    transition-delay: .7s
}

.p-index>.inner>.about .inner .textblock .headline.display .itemWrap:nth-child(8) .item {
    transition-delay: .8s
}

.p-index>.inner>.about .inner .textblock .headline.display .itemWrap:nth-child(9) .item {
    transition-delay: .9s
}

.p-index>.inner>.about .inner .textblock .headline.display .itemWrap:nth-child(10) .item {
    transition-delay: 1s
}

.p-index>.inner>.about .inner .textblock .headline.display .itemWrap:nth-child(11) .item {
    transition-delay: 1.1s
}

.p-index>.inner>.about .inner .textblock .headline.display .itemWrap:nth-child(12) .item {
    transition-delay: 1.2s
}

@media(max-width:768px) {
    .p-index>.inner>.about .inner .textblock .headline {
        font-size: 8.71vw;
        margin-bottom: 0
    }
}

.p-index>.inner>.about .inner .textblock .headline>span:nth-child(10),
.p-index>.inner>.about .inner .textblock .headline>span:nth-child(11),
.p-index>.inner>.about .inner .textblock .headline>span:nth-child(12),
.p-index>.inner>.about .inner .textblock .headline>span:nth-child(8),
.p-index>.inner>.about .inner .textblock .headline>span:nth-child(9) {
    transform: translateY(-18px)
}

@media(max-width:768px) {

    .p-index>.inner>.about .inner .textblock .headline>span:nth-child(10),
    .p-index>.inner>.about .inner .textblock .headline>span:nth-child(11),
    .p-index>.inner>.about .inner .textblock .headline>span:nth-child(12),
    .p-index>.inner>.about .inner .textblock .headline>span:nth-child(8),
    .p-index>.inner>.about .inner .textblock .headline>span:nth-child(9) {
        transform: translateY(-2.06vw)
    }
}

.p-index>.inner>.about .inner .textblock .text {
    font-size: 20px;
    letter-spacing: .05em;
    line-height: 2em;
    margin-bottom: 60px
}

@media(max-width:768px) {
    .p-index>.inner>.about .inner .textblock .text {
        font-size: 4.1vw;
        margin-bottom: 7.69vw
    }
}

.p-index>.inner .lineup {
    color: #1e22b0;
    font-family: Zen Maru Gothic;
    position: relative
}

.p-index>.inner .lineup:before {
    content: "";
    display: block;
    position: absolute
}

@media(max-width:768px) {
    .p-index>.inner .lineup:before {
        background-color: #fef643;
        height: 8vw;
        left: 0;
        top: 8vw;
        width: 100vw;
        z-index: 2
    }
}

.p-index>.inner .lineup>.deco-top {
    background-color: #ffeb35
}

.p-index>.inner .lineup>.outer {
    background-color: #fef643;
    padding-bottom: 153px;
    padding-top: 60px
}

@media(max-width:768px) {
    .p-index>.inner .lineup>.outer {
        padding-bottom: 16.15vw;
        padding-top: 2.56vw
    }
}

.p-index>.inner .lineup>.outer>.inner {
    margin: 0 auto;
    max-width: 1064px;
    padding: 0 20px;
    position: relative;
    width: 100%
}

@media(max-width:768px) {
    .p-index>.inner .lineup>.outer>.inner {
        padding-left: 0;
        padding-right: 0;
        width: 83.58vw
    }
}

.p-index>.inner .lineup>.outer>.inner>.c-button {
    margin: 0;
    position: absolute;
    right: 0;
    text-align: center;
    top: 0;
    top: 30px
}

@media(max-width:768px) {
    .p-index>.inner .lineup>.outer>.inner>.c-button {
        display: none
    }
}

.p-index>.inner .lineup>.outer>.inner>.title {
    color: #1e22b0;
    font-family: Rammetto One;
    font-size: 80px;
    line-height: 1em;
    margin-bottom: 10px;
    overflow: hidden;
    padding-top: 30px
}

.p-index>.inner .lineup>.outer>.inner>.title span {
    display: inline-block
}

.p-index>.inner .lineup>.outer>.inner>.title .itemWrap {
    overflow: hidden
}

.p-index>.inner .lineup>.outer>.inner>.title .item {
    transform: translateY(110%)
}

.p-index>.inner .lineup>.outer>.inner>.title.display .item {
    transform: translateY(0);
    transition: .8s
}

.p-index>.inner .lineup>.outer>.inner>.title.display .itemWrap:first-child .item {
    transition-delay: .1s
}

.p-index>.inner .lineup>.outer>.inner>.title.display .itemWrap:nth-child(2) .item {
    transition-delay: .2s
}

.p-index>.inner .lineup>.outer>.inner>.title.display .itemWrap:nth-child(3) .item {
    transition-delay: .3s
}

.p-index>.inner .lineup>.outer>.inner>.title.display .itemWrap:nth-child(4) .item {
    transition-delay: .4s
}

.p-index>.inner .lineup>.outer>.inner>.title.display .itemWrap:nth-child(5) .item {
    transition-delay: .5s
}

.p-index>.inner .lineup>.outer>.inner>.title.display .itemWrap:nth-child(6) .item {
    transition-delay: .6s
}

.p-index>.inner .lineup>.outer>.inner>.title.display .itemWrap:nth-child(7) .item {
    transition-delay: .7s
}

.p-index>.inner .lineup>.outer>.inner>.title.display .itemWrap:nth-child(8) .item {
    transition-delay: .8s
}

.p-index>.inner .lineup>.outer>.inner>.title.display .itemWrap:nth-child(9) .item {
    transition-delay: .9s
}

.p-index>.inner .lineup>.outer>.inner>.title.display .itemWrap:nth-child(10) .item {
    transition-delay: 1s
}

.p-index>.inner .lineup>.outer>.inner>.title.display .itemWrap:nth-child(11) .item {
    transition-delay: 1.1s
}

.p-index>.inner .lineup>.outer>.inner>.title.display .itemWrap:nth-child(12) .item {
    transition-delay: 1.2s
}

@media(max-width:768px) {
    .p-index>.inner .lineup>.outer>.inner>.title {
        font-size: 12.3vw;
        margin-bottom: 1.28vw;
        padding-top: 7.69vw
    }
}

.p-index>.inner .lineup>.outer>.inner>.title .itemWrap {
    overflow: visible
}

.p-index>.inner .lineup>.outer>.inner>.subtitle {
    font-size: 14px;
    letter-spacing: .05em;
    line-height: 1em;
    margin-bottom: 50px
}

@media(max-width:768px) {
    .p-index>.inner .lineup>.outer>.inner>.subtitle {
        font-size: 3.33vw;
        margin-bottom: 7.69vw
    }
}

.p-index>.inner .lineup>.outer>.inner>.desc {
    font-size: 16px;
    letter-spacing: .05em;
    line-height: 1em;
    margin-bottom: 80px
}

@media(max-width:768px) {
    .p-index>.inner .lineup>.outer>.inner>.desc {
        font-size: 3.58vw;
        line-height: 1.7em;
        margin-bottom: 12.82vw
    }
}

.p-index>.inner .lineup>.outer>.inner .listWrap {
    position: relative;
    z-index: 0
}

.p-index>.inner .lineup>.outer>.inner .listWrap>ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    width: 100%
}

.p-index>.inner .lineup>.outer>.inner .listWrap>ul:after {
    content: "";
    display: block;
    width: calc(33.33333% - 21.33333px)
}

.p-index>.inner .lineup>.outer>.inner .listWrap>ul li {
    margin-bottom: 80px;
    width: calc(33.33333% - 21.33333px)
}

@media(max-width:768px) {
    .p-index>.inner .lineup>.outer>.inner .listWrap>ul li {
        margin-bottom: 10.25vw;
        width: 39.74vw
    }
}

.p-index>.inner .lineup>.outer>.inner .listWrap>ul li:nth-child(4),
.p-index>.inner .lineup>.outer>.inner .listWrap>ul li:nth-child(5) {
    margin-bottom: 0
}

.p-index>.inner .lineup>.outer>.inner .listWrap>ul li a {
    display: block
}

.p-index>.inner .lineup>.outer>.inner .listWrap>ul li a .imgWrap {
    border-radius: 50px;
    margin-bottom: 20px;
    overflow: hidden;
    position: relative;
    z-index: 0
}

@media(max-width:768px) {
    .p-index>.inner .lineup>.outer>.inner .listWrap>ul li a .imgWrap {
        border-radius: 6.41vw;
        margin-bottom: 2.56vw
    }
}

.p-index>.inner .lineup>.outer>.inner .listWrap>ul li a .imgWrap img {
    display: block;
    width: 100%
}

.p-index>.inner .lineup>.outer>.inner .listWrap>ul li a .title {
    align-items: center;
    display: flex
}

@media(max-width:768px) {
    .p-index>.inner .lineup>.outer>.inner .listWrap>ul li a .title {
        padding-right: 0
    }
}

.p-index>.inner .lineup>.outer>.inner .listWrap>ul li a .title>p {
    color: #1e22b0;
    font-size: 20px;
    letter-spacing: .05em;
    line-height: 1em;
    margin-right: 10px
}

@media(max-width:768px) {
    .p-index>.inner .lineup>.outer>.inner .listWrap>ul li a .title>p {
        font-size: 3.84vw;
        margin-right: 1.28vw
    }
}

.p-index>.inner .lineup>.outer>.inner .listWrap>ul li a .title .arrowWrap {
    height: 24px;
    position: relative;
    width: 24px
}

.p-index>.inner .lineup>.outer>.inner .listWrap>ul li a .title .arrowWrap:before {
    content: "";
    display: block;
    position: absolute
}

@media(max-width:768px) {
    .p-index>.inner .lineup>.outer>.inner .listWrap>ul li a .title .arrowWrap {
        height: 4.1vw;
        width: 4.1vw
    }
}

.p-index>.inner .lineup>.outer>.inner .listWrap>ul li a .title .arrowWrap:before {
    background-color: #1e22b0;
    border-radius: 50%;
    height: 24px;
    width: 24px
}

@media(max-width:768px) {
    .p-index>.inner .lineup>.outer>.inner .listWrap>ul li a .title .arrowWrap:before {
        height: 4.1vw;
        width: 4.1vw
    }
}

.p-index>.inner .lineup>.outer>.inner .listWrap>ul li a .title .arrowWrap .arrow {
    background-image: url(/images/common/arrow-blue.svg);
    background-repeat: no-repeat;
    background-size: contain;
    display: block;
    height: 24px;
    position: absolute;
    width: 24px;
    z-index: 1
}

@media(max-width:768px) {
    .p-index>.inner .lineup>.outer>.inner .listWrap>ul li a .title .arrowWrap .arrow {
        height: 4.1vw;
        width: 4.1vw
    }
}

@media(min-width:769px) {
    .p-index>.inner .lineup>.outer>.inner .listWrap>ul li a:hover .imgWrap img {
        transform: scale(1.2);
        transform-origin: center;
        transition: .5s
    }

    .p-index>.inner .lineup>.outer>.inner .listWrap>ul li a:hover .arrowWrap:before,
    .p-index>.inner .lineup>.outer>.inner .listWrap>ul li a:hover .title img {
        transform: scale(1.5);
        transform-origin: center;
        transition: .5s
    }
}

.p-index>.inner>.news {
    background: linear-gradient(#fef643 50%, #ffeb35 0);
    position: relative
}

.p-index>.inner>.news .outer {
    margin: 0 auto;
    max-width: 888px;
    padding: 0 20px;
    position: relative;
    width: 100%;
    z-index: 1
}

@media(max-width:768px) {
    .p-index>.inner>.news .outer {
        padding: 0;
        width: 91.79vw
    }
}

.p-index>.inner>.news:before {
    content: "";
    display: block
}

@media(max-width:768px) {
    .p-index>.inner>.news {
        background: #ffeb35
    }
}

.p-index>.inner>.news:before {
    background-image: url(/images/index/bg-news.png);
    background-repeat: no-repeat;
    background-size: 100% auto;
    height: 841px;
    left: 50%;
    min-width: 1440px;
    pointer-events: none;
    position: absolute;
    top: -357px;
    transform: translateX(-50%);
    width: 100%;
    z-index: 0
}

@media(max-width:768px) {
    .p-index>.inner>.news:before {
        background-image: url(/images/index/bg-news-sp.svg);
        background-size: contain;
        height: 90vw;
        left: 0;
        top: 0;
        top: -54.62vw;
        transform: translateX(0);
        width: 100vw
    }
}

.p-index>.inner>.news .shou {
    display: block;
    position: absolute;
    z-index: 10
}

.p-index>.inner>.news .shou.shou-1 {
    animation: index-news-shou 3s linear infinite;
    height: 101px;
    left: calc(50% + 316px);
    top: -266px;
    width: 128px
}

@media(max-width:1070px) {
    .p-index>.inner>.news .shou.shou-1 {
        left: calc(50% + 216px)
    }
}

@media(max-width:768px) {
    .p-index>.inner>.news .shou.shou-1 {
        height: 19.23vw;
        left: auto;
        right: 4.1vw;
        top: -34.36vw;
        width: 24.1vw
    }
}

.p-index>.inner>.news .shou.shou-2 {
    animation: index-news-shou 3s linear 1.5s infinite;
    height: 73px;
    left: calc(50% + 432px);
    top: -349px;
    width: 85px
}

@media(max-width:1070px) {
    .p-index>.inner>.news .shou.shou-2 {
        left: calc(50% + 332px)
    }
}

@media(max-width:768px) {
    .p-index>.inner>.news .shou.shou-2 {
        height: 13.07vw;
        left: auto;
        right: 19.23vw;
        top: -53.08vw;
        width: 16.15vw
    }
}

@keyframes index-news-shou {
    0% {
        transform: rotate(0deg)
    }

    24% {
        transform: rotate(0deg)
    }

    25% {
        transform: rotate(10deg)
    }

    49% {
        transform: rotate(10deg)
    }

    50% {
        transform: rotate(0deg)
    }

    74% {
        transform: rotate(0deg)
    }

    75% {
        transform: rotate(-10deg)
    }

    99% {
        transform: rotate(-10deg)
    }

    to {
        transform: rotate(0deg)
    }
}

.p-index>.inner>.loop {
    background-color: #ffeb35;
    overflow: hidden;
    padding: 150px 0 86px;
    width: 100%
}

@media(max-width:768px) {
    .p-index>.inner>.loop {
        margin: 0;
        padding-bottom: 17.94vw;
        padding-top: 17.94vw
    }
}

.p-index>.inner>.loop .inner {
    animation-duration: 30s;
    animation-iteration-count: infinite;
    animation-name: loop-index;
    animation-timing-function: linear;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    position: relative;
    width: 3178px
}

@keyframes loop-index {
    0% {
        transform: translateX(0)
    }

    to {
        transform: translateX(-1614px)
    }
}

@media(max-width:768px) {
    .p-index>.inner>.loop .inner {
        animation-name: loop-index-sp;
        height: 11.79vw;
        width: 404.1vw
    }

    @keyframes loop-index-sp {
        0% {
            left: 0
        }

        to {
            left: -204.62vw
        }
    }
}

.p-index>.inner>.loop .inner span {
    background-image: url(/images/index/loop.png);
    background-repeat: no-repeat;
    background-size: contain;
    display: block;
    height: 118px;
    width: 1564px
}

@media(max-width:768px) {
    .p-index>.inner>.loop .inner span {
        background-image: url(/images/index/loop-sp.png);
        height: 11.79vw;
        width: 199.48vw
    }
}

.p-index>.inner .shop {
    background: linear-gradient(#ffeb35 50%, transparent);
    position: relative
}

.p-index>.inner .shop:after,
.p-index>.inner .shop:before {
    background-image: url(/images/index/bg-shop.svg);
    background-repeat: no-repeat;
    background-size: contain;
    background-size: 3248px 1508px;
    content: "";
    display: block;
    height: 1000px;
    left: 50%;
    position: absolute;
    transform: translateX(-50%);
    width: 3248px;
    z-index: 0
}

@media(max-width:768px) {

    .p-index>.inner .shop:after,
    .p-index>.inner .shop:before {
        background-image: url(/images/index/bg-shop-sp.svg);
        background-size: 382.05vw 341.02vw;
        height: 170.51vw;
        width: 382.05vw
    }
}

.p-index>.inner .shop:before {
    top: 104px
}

@media(max-width:768px) {
    .p-index>.inner .shop:before {
        top: 13.33vw
    }
}

.p-index>.inner .shop:after {
    background-position: bottom;
    bottom: 0
}

.p-index>.inner .shop>.outer {
    padding: 218px 0 97px;
    position: relative;
    z-index: 1
}

@media(max-width:768px) {
    .p-index>.inner .shop>.outer {
        padding: 37.43vw 0 23.84vw
    }
}

.p-index>.inner .shop>.outer .faceWrap {
    display: block;
    left: 50%;
    position: absolute;
    top: 0;
    transform: translateX(-50%);
    width: 174px
}

@media(max-width:768px) {
    .p-index>.inner .shop>.outer .faceWrap {
        width: 22.82vw
    }
}

.p-index>.inner .shop>.outer .faceWrap .face {
    animation: index-shop-face 2s linear infinite
}

@keyframes index-shop-face {
    0% {
        transform: rotate(0deg)
    }

    24% {
        transform: rotate(0deg)
    }

    25% {
        transform: rotate(10deg)
    }

    49% {
        transform: rotate(10deg)
    }

    50% {
        transform: rotate(0deg)
    }

    74% {
        transform: rotate(0deg)
    }

    75% {
        transform: rotate(-10deg)
    }

    99% {
        transform: rotate(-10deg)
    }

    to {
        transform: rotate(0deg)
    }
}

.p-index>.inner .shop>.outer>.inner {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin: 0 auto;
    max-width: 1064px;
    padding: 0 20px;
    position: relative;
    width: 100%;
    z-index: 1
}

@media(max-width:768px) {
    .p-index>.inner .shop>.outer>.inner {
        width: 100%
    }
}

.p-index>.inner .shop>.outer>.inner .left {
    color: #fff;
    font-family: Zen Maru Gothic;
    width: 413px
}

@media(max-width:768px) {
    .p-index>.inner .shop>.outer>.inner .left {
        margin-bottom: 16.41vw;
        width: 100%
    }
}

.p-index>.inner .shop>.outer>.inner .left>.title {
    font-family: Rammetto One;
    font-size: 80px
}

.p-index>.inner .shop>.outer>.inner .left>.title span {
    display: inline-block
}

.p-index>.inner .shop>.outer>.inner .left>.title .itemWrap {
    overflow: hidden
}

.p-index>.inner .shop>.outer>.inner .left>.title .item {
    transform: translateY(110%)
}

.p-index>.inner .shop>.outer>.inner .left>.title.display .item {
    transform: translateY(0);
    transition: .8s
}

.p-index>.inner .shop>.outer>.inner .left>.title.display .itemWrap:first-child .item {
    transition-delay: .1s
}

.p-index>.inner .shop>.outer>.inner .left>.title.display .itemWrap:nth-child(2) .item {
    transition-delay: .2s
}

.p-index>.inner .shop>.outer>.inner .left>.title.display .itemWrap:nth-child(3) .item {
    transition-delay: .3s
}

.p-index>.inner .shop>.outer>.inner .left>.title.display .itemWrap:nth-child(4) .item {
    transition-delay: .4s
}

.p-index>.inner .shop>.outer>.inner .left>.title.display .itemWrap:nth-child(5) .item {
    transition-delay: .5s
}

.p-index>.inner .shop>.outer>.inner .left>.title.display .itemWrap:nth-child(6) .item {
    transition-delay: .6s
}

.p-index>.inner .shop>.outer>.inner .left>.title.display .itemWrap:nth-child(7) .item {
    transition-delay: .7s
}

.p-index>.inner .shop>.outer>.inner .left>.title.display .itemWrap:nth-child(8) .item {
    transition-delay: .8s
}

.p-index>.inner .shop>.outer>.inner .left>.title.display .itemWrap:nth-child(9) .item {
    transition-delay: .9s
}

.p-index>.inner .shop>.outer>.inner .left>.title.display .itemWrap:nth-child(10) .item {
    transition-delay: 1s
}

.p-index>.inner .shop>.outer>.inner .left>.title.display .itemWrap:nth-child(11) .item {
    transition-delay: 1.1s
}

.p-index>.inner .shop>.outer>.inner .left>.title.display .itemWrap:nth-child(12) .item {
    transition-delay: 1.2s
}

@media(max-width:768px) {
    .p-index>.inner .shop>.outer>.inner .left>.title {
        font-size: 12.3vw;
        margin-bottom: 1.28vw;
        text-align: center
    }
}

.p-index>.inner .shop>.outer>.inner .left>.subtitle {
    font-size: 16px;
    letter-spacing: .05em;
    line-height: 1em;
    margin-bottom: 50px
}

@media(max-width:768px) {
    .p-index>.inner .shop>.outer>.inner .left>.subtitle {
        font-size: 3.33vw;
        margin-bottom: 7.69vw;
        text-align: center
    }
}

.p-index>.inner .shop>.outer>.inner .left>.desc {
    font-size: 16px;
    letter-spacing: .05em;
    line-height: 1em;
    margin-bottom: 50px
}

@media(max-width:768px) {
    .p-index>.inner .shop>.outer>.inner .left>.desc {
        font-size: 3.33vw;
        line-height: 1em;
        margin-bottom: 12.82vw;
        text-align: center
    }
}

.p-index>.inner .shop>.outer>.inner .left>.c-button {
    margin: 0
}

@media(max-width:768px) {
    .p-index>.inner .shop>.outer>.inner .left>.c-button {
        margin: 0 auto
    }
}

.p-index>.inner .shop>.outer>.inner .right {
    width: calc(100% - 448px)
}

@media(max-width:768px) {
    .p-index>.inner .shop>.outer>.inner .right {
        margin: 0 auto;
        width: 81.79vw
    }
}

.p-index>.inner .shop>.outer>.inner .right .imageWrap {
    position: relative;
    width: 100%;
    z-index: 0
}

.p-index>.inner .shop>.outer>.inner .right .imageWrap:hover {
    cursor: pointer
}

.p-index>.inner .shop>.outer>.inner .right .imageWrap img {
    display: inline-block
}

.p-index>.inner .shop>.outer>.inner .right .imageWrap img.active {
    left: 0;
    position: absolute;
    top: 0;
    z-index: 1
}

.p-index>.inner .shop>.outer .news {
    margin-top: 97px;
    position: relative;
    z-index: 0
}

.p-index>.inner .shop>.outer .news .outer {
    margin: 0 auto;
    max-width: 888px;
    padding: 0 20px;
    position: relative;
    width: 100%;
    z-index: 1
}

@media(max-width:768px) {
    .p-index>.inner .shop>.outer .news .outer {
        padding: 0;
        width: 91.79vw
    }
}

.p-index>.inner .shop>.outer .news:before {
    content: "";
    display: block
}

@media(max-width:768px) {
    .p-index>.inner .shop>.outer .news {
        margin-top: 18.2vw
    }
}

.p-index>.inner .shop>.outer .news:before {
    background-color: #1e22b0;
    height: 200px;
    left: -20px;
    position: absolute;
    top: -180px;
    width: calc(100% + 40px)
}

@media(max-width:768px) {
    .p-index>.inner .shop>.outer .news:before {
        height: 46.15vw;
        left: 0;
        top: -18.21vw;
        width: 100%
    }
}

.p-index>.inner .hand {
    position: relative;
    width: 100%
}

.p-index>.inner .hand img {
    display: block
}

.p-index>.inner .hand .img-hand {
    height: 1040px;
    width: 100%
}

@media(max-width:768px) {
    .p-index>.inner .hand .img-hand {
        height: 123.33vw
    }
}

.p-index>.inner .hand .img-border {
    bottom: 0;
    left: 0;
    position: absolute
}

.p-index>.inner>.info {
    position: relative
}

.p-index>.inner>.info>img {
    background-color: #ffeb35
}

.p-index>.inner>.info>.outer {
    background-color: #fff;
    padding: 84px 0
}

@media(max-width:768px) {
    .p-index>.inner>.info>.outer {
        padding: 9.48vw 0
    }
}

.p-index>.inner>.info>.outer>.inner {
    margin: 0 auto;
    max-width: 1064px;
    padding: 0 20px;
    width: 100%
}

@media(max-width:768px) {
    .p-index>.inner>.info>.outer>.inner {
        margin: 0 auto;
        padding: 0;
        width: 83.58vw
    }
}

.p-index>.inner>.info>.outer>.inner>.block:first-child {
    margin-bottom: 150px
}

@media(max-width:768px) {
    .p-index>.inner>.info>.outer>.inner>.block:first-child {
        margin-bottom: 20.51vw
    }
}

.p-index>.inner>.info>.outer>.inner>.block li {
    border-bottom: 2px solid #e1e1e8
}

.p-index>.inner>.info>.outer>.inner>.block li:first-child {
    border-top: 2px solid #e1e1e8
}

.p-index>.inner>.info>.outer>.inner>.block .title {
    color: #1e22b0;
    font-family: Zen Maru Gothic;
    font-size: 32px;
    letter-spacing: .05em;
    line-height: 1em;
    margin-bottom: 80px
}

@media(max-width:768px) {
    .p-index>.inner>.info>.outer>.inner>.block .title {
        font-size: 5.12vw;
        margin-bottom: 9.74vw
    }
}

.p-index>.inner>.info>.outer>.inner>.block a {
    display: block;
    position: relative;
    z-index: 0
}

.p-index>.inner>.info>.outer>.inner>.block a .arrowWrap {
    height: 24px;
    position: relative;
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 24px
}

.p-index>.inner>.info>.outer>.inner>.block a .arrowWrap:before {
    content: "";
    display: block;
    position: absolute
}

@media(max-width:768px) {
    .p-index>.inner>.info>.outer>.inner>.block a .arrowWrap {
        height: 6.15vw;
        width: 6.15vw
    }
}

.p-index>.inner>.info>.outer>.inner>.block a .arrowWrap:before {
    background-color: #1e22b0;
    border-radius: 50%;
    height: 24px;
    left: 0;
    top: 0;
    width: 24px;
    z-index: 0
}

@media(max-width:768px) {
    .p-index>.inner>.info>.outer>.inner>.block a .arrowWrap:before {
        display: none
    }
}

.p-index>.inner>.info>.outer>.inner>.block a .arrowWrap .arrow {
    background-image: url(/images/common/arrow-blue.svg);
    background-repeat: no-repeat;
    background-size: contain;
    display: block;
    height: 24px;
    position: relative;
    width: 24px;
    z-index: 1
}

@media(max-width:768px) {
    .p-index>.inner>.info>.outer>.inner>.block a .arrowWrap .arrow {
        height: 6.15vw;
        width: 6.15vw
    }
}

.p-index>.inner>.info>.outer>.inner>.block a[target=_blank] .arrowWrap .arrow {
    background-image: url(/images/common/arrow-blank.svg)
}

@media(min-width:769px) {
    .p-index>.inner>.info>.outer>.inner>.block a:hover .arrowWrap:before {
        transform: scale(1.5);
        transform-origin: center;
        transition: .5s
    }
}

.p-index>.inner>.info>.outer>.inner>.block:first-child li:first-child a:before {
    background-image: url(/images/index/icon-info-1.svg);
    background-repeat: no-repeat;
    background-size: contain
}

.p-index>.inner>.info>.outer>.inner>.block:first-child li:nth-child(2) a:before {
    background-image: url(/images/index/icon-info-2.svg);
    background-repeat: no-repeat;
    background-size: contain
}

.p-index>.inner>.info>.outer>.inner>.block:first-child li:nth-child(3) a:before {
    background-image: url(/images/index/icon-info-3.svg);
    background-repeat: no-repeat;
    background-size: contain
}

.p-index>.inner>.info>.outer>.inner>.block:first-child li:nth-child(4) a:before {
    background-image: url(/images/index/icon-info-5.svg);
    background-repeat: no-repeat;
    background-size: contain
}

.p-index>.inner>.info>.outer>.inner>.block:first-child li a {
    padding: 52px 0 52px 112px;
    position: relative
}

.p-index>.inner>.info>.outer>.inner>.block:first-child li a:after,
.p-index>.inner>.info>.outer>.inner>.block:first-child li a:before {
    content: "";
    display: block;
    position: absolute
}

@media(max-width:768px) {
    .p-index>.inner>.info>.outer>.inner>.block:first-child li a {
        padding: 5.64vw 10.25vw 5.64vw 16.41vw
    }
}

.p-index>.inner>.info>.outer>.inner>.block:first-child li a:before {
    height: 80px;
    left: 0;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 80px
}

@media(max-width:768px) {
    .p-index>.inner>.info>.outer>.inner>.block:first-child li a:before {
        height: 12.3vw;
        width: 12.3vw
    }
}

.p-index>.inner>.info>.outer>.inner>.block:first-child li a .top {
    color: #1e22b0;
    font-family: Zen Maru Gothic;
    font-size: 24px;
    letter-spacing: .05em;
    line-height: 1em;
    margin-bottom: 20px
}

@media(max-width:768px) {
    .p-index>.inner>.info>.outer>.inner>.block:first-child li a .top {
        font-size: 4.61vw;
        line-height: 1.5em;
        margin-bottom: 1.53vw
    }
}

.p-index>.inner>.info>.outer>.inner>.block:first-child li a .bottom {
    font-size: 16px;
    font-weight: 600;
    letter-spacing: .05em;
    line-height: 1.7em
}

@media(max-width:768px) {
    .p-index>.inner>.info>.outer>.inner>.block:first-child li a .bottom {
        font-size: 3.33vw;
        line-height: 1.5em
    }
}

.p-index>.inner>.info>.outer>.inner .block:nth-child(2) li a {
    color: #1e22b0;
    font-family: Zen Maru Gothic;
    font-size: 24px;
    letter-spacing: .05em;
    line-height: 1em;
    padding: 52px 0;
    position: relative
}

.p-index>.inner>.info>.outer>.inner .block:nth-child(2) li a:after {
    content: "";
    display: block;
    position: absolute
}

@media(max-width:768px) {
    .p-index>.inner>.info>.outer>.inner .block:nth-child(2) li a {
        font-size: 4.61vw;
        line-height: 1.5em;
        padding: 5.76vw 10.25vw 5.76vw 0
    }
}

.p-index>.inner>.info>.outer>.inner .banner .title {
    color: #1e22b0;
    font-family: Zen Maru Gothic;
    font-size: 32px;
    line-height: 1em;
    margin-bottom: 80px
}

@media(max-width:768px) {
    .p-index>.inner>.info>.outer>.inner .banner .title {
        font-size: 5.12vw;
        margin-bottom: 9.74vw
    }
}

.p-index>.inner>.info>.outer>.inner .banner li {
    margin-bottom: 30px;
    width: calc(33.33333% - 21.33333px)
}

.p-index>.inner>.info>.outer>.inner .banner li:last-child {
    margin-bottom: 0
}

@media(max-width:768px) {
    .p-index>.inner>.info>.outer>.inner .banner li {
        width: 100%
    }
}

.p-index>.inner>.info>.outer>.inner .banner li a {
    display: block
}

.p-index>.inner>.info>.outer>.inner .banner li a img {
    margin-bottom: 20px
}

@media(max-width:768px) {
    .p-index>.inner>.info>.outer>.inner .banner li a img {
        margin-bottom: 5.12vw
    }
}

.p-index>.inner>.info>.outer>.inner .banner li a>span {
    align-items: center;
    display: flex
}

.p-index>.inner>.info>.outer>.inner .banner li a>span .text {
    font-size: 13px;
    font-weight: 600;
    letter-spacing: .02em;
    line-height: 1em;
    padding-right: 10px
}

@media(max-width:768px) {
    .p-index>.inner>.info>.outer>.inner .banner li a>span .text {
        font-size: 3.33vw;
        padding-right: 1.28vw
    }
}

.p-index>.inner>.info>.outer>.inner .banner li a>span .arrowWrap {
    height: 24px;
    left: auto;
    position: absolute;
    position: relative;
    right: 0;
    top: 50%;
    top: auto;
    transform: translateY(-50%);
    transform: translateX(0) translateY(0);
    width: 24px
}

.p-index>.inner>.info>.outer>.inner .banner li a>span .arrowWrap:before {
    content: "";
    display: block;
    position: absolute
}

@media(max-width:768px) {
    .p-index>.inner>.info>.outer>.inner .banner li a>span .arrowWrap {
        height: 6.15vw;
        width: 6.15vw
    }
}

.p-index>.inner>.info>.outer>.inner .banner li a>span .arrowWrap:before {
    background-color: #1e22b0;
    border-radius: 50%;
    height: 24px;
    left: 0;
    top: 0;
    width: 24px;
    z-index: 0
}

@media(max-width:768px) {
    .p-index>.inner>.info>.outer>.inner .banner li a>span .arrowWrap:before {
        display: none
    }
}

.p-index>.inner>.info>.outer>.inner .banner li a>span .arrowWrap .arrow {
    background-image: url(/images/common/arrow-blue.svg);
    background-repeat: no-repeat;
    background-size: contain;
    display: block;
    height: 24px;
    position: relative;
    width: 24px;
    z-index: 1
}

@media(max-width:768px) {
    .p-index>.inner>.info>.outer>.inner .banner li a>span .arrowWrap .arrow {
        height: 6.15vw;
        width: 6.15vw
    }
}

.p-index>.inner>.info>.outer>.inner .banner li a>span .arrowWrap .arrow {
    background-image: url(/images/common/arrow-blank.svg)
}

.p-index>.inner>.info>.outer>.inner .banner li a:hover>span .text {
    color: #1e22b0
}

@media(min-width:769px) {
    .p-index>.inner>.info>.outer>.inner .banner li a:hover .arrowWrap:before {
        transform: scale(1.5);
        transform-origin: center;
        transition: .5s
    }
}

.p-index .fixedBnr {
    border-radius: 15px;
    bottom: 32px;
    position: fixed;
    right: 32px;
    transition: opacity .3s;
    width: 250px;
    z-index: 99
}

@media(max-width:768px) {
    .p-index .fixedBnr {
        bottom: 20.51vw;
        right: 5.12vw;
        width: 89.74vw
    }
}

.p-index .fixedBnr.hidden {
    opacity: 0;
    pointer-events: none
}

.p-index .fixedBnr button {
    background-image: url(/images/common/ico-close.svg);
    background-repeat: no-repeat;
    background-size: cover;
    cursor: pointer;
    height: 18px;
    position: absolute;
    right: 0;
    top: -25px;
    width: 18px
}

@media(min-width:769px) {
    .p-index .fixedBnr button {
        transition: opacity .3s
    }

    .p-index .fixedBnr button:hover {
        opacity: .7
    }
}

.p-index .fixedBnr a {
    display: block
}

.p-index .fixedBnr a img {
    border-radius: 15px;
    display: block
}

@media(max-width:768px) {
    .p-index .fixedBnr a img {
        border-radius: 3.84vw
    }
}

.p-lineup {
    background-color: #ffeb35
}

.p-lineup main>.contents {
    margin: 0 auto;
    max-width: 1064px;
    padding: 0 20px;
    width: 100%
}

@media(max-width:768px) {
    .p-lineup main>.contents {
        padding: 0;
        width: 83.58vw
    }
}

.p-lineup main>.contents>.blocks {
    margin-bottom: 100px
}

@media(max-width:768px) {
    .p-lineup main>.contents>.blocks {
        margin-bottom: 10.25vw
    }
}

.p-lineup main>.contents>.blocks .block {
    margin-bottom: 50px
}

.p-lineup main>.contents>.blocks .block:last-child {
    margin-bottom: 0
}

@media(max-width:768px) {
    .p-lineup main>.contents>.blocks .block {
        margin-bottom: 4.35vw
    }
}

.p-lineup main>.contents>.blocks .block>.title {
    color: #1e22b0;
    font-family: Zen Maru Gothic;
    font-size: 32px;
    line-height: 1em;
    margin-bottom: 50px
}

@media(max-width:768px) {
    .p-lineup main>.contents>.blocks .block>.title {
        font-size: 5.12vw;
        margin-bottom: 12.82vw
    }
}

.p-lineup main>.contents>.blocks .block>.items {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between
}

.p-lineup main>.contents>.blocks .block>.items:after {
    content: "";
    display: block;
    width: calc(33.33333% - 21.33333px)
}

@media(max-width:768px) {
    .p-lineup main>.contents>.blocks .block>.items:after {
        width: 39.74vw
    }
}

.p-lineup main>.contents>.blocks .block>.items .item {
    margin-bottom: 50px;
    width: calc(33.33333% - 21.33333px)
}

@media(max-width:768px) {
    .p-lineup main>.contents>.blocks .block>.items .item {
        margin-bottom: 10.25vw;
        width: 39.74vw
    }
}

.p-lineup main>.contents>.blocks .block>.items .item a {
    display: block
}

.p-lineup main>.contents>.blocks .block>.items .item a>.imgWrap {
    border-radius: 50px;
    margin-bottom: 20px;
    overflow: hidden;
    position: relative;
    z-index: 0
}

@media(max-width:768px) {
    .p-lineup main>.contents>.blocks .block>.items .item a>.imgWrap {
        border-radius: 6.41vw;
        margin-bottom: 2.56vw
    }
}

.p-lineup main>.contents>.blocks .block>.items .item a>.imgWrap>.img {
    display: block
}

.p-lineup main>.contents>.blocks .block>.items .item a>.title {
    align-items: center;
    display: flex
}

.p-lineup main>.contents>.blocks .block>.items .item a>.title p {
    color: #1e22b0;
    font-family: Zen Maru Gothic;
    font-size: 20;
    line-height: 1.5em;
    margin-right: 10px
}

@media(max-width:768px) {
    .p-lineup main>.contents>.blocks .block>.items .item a>.title p {
        font-size: 3.84vw
    }
}

.p-lineup main>.contents>.blocks .block>.items .item a>.title .arrow {
    position: relative
}

.p-lineup main>.contents>.blocks .block>.items .item a>.title .arrow .arrow-bg {
    background-color: #1e22b0;
    border-radius: 50%;
    display: block;
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%;
    z-index: 0
}

.p-lineup main>.contents>.blocks .block>.items .item a>.title .arrow img {
    display: block;
    height: 24px;
    position: relative;
    width: 24px;
    z-index: 1
}

@media(max-width:768px) {
    .p-lineup main>.contents>.blocks .block>.items .item a>.title .arrow img {
        height: 4.1vw;
        width: 4.1vw
    }
}

@media(min-width:769px) {
    .p-lineup main>.contents>.blocks .block>.items .item a:hover .img {
        transform: scale(1.2);
        transform-origin: center;
        transition: .5s
    }

    .p-lineup main>.contents>.blocks .block>.items .item a:hover .arrow .arrow-bg {
        transform: scale(1.5);
        transform-origin: center;
        transition: .5s
    }
}

.p-lineup-detail {
    background-color: #ffeb35
}

.p-lineup-detail main>.inner {
    margin: 0 auto;
    max-width: 1064px;
    padding: 180px 20px 0;
    position: relative;
    width: 100%;
    z-index: 3
}

@media(max-width:768px) {
    .p-lineup-detail main>.inner {
        max-width: 100%;
        padding: 50vw 0 0
    }
}

.p-lineup-detail main .overview {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-bottom: 100px
}

@media(max-width:768px) {
    .p-lineup-detail main .overview {
        display: block;
        margin: 0 auto 15.38vw;
        width: 91.79vw
    }
}

.p-lineup-detail main .overview>.img {
    border-radius: 50px;
    display: inline-block;
    max-width: 495px;
    width: 50%
}

@media(max-width:768px) {
    .p-lineup-detail main .overview>.img {
        border-radius: 6.41vw;
        margin-bottom: 10.25vw;
        max-width: 100%;
        width: 100%
    }
}

.p-lineup-detail main .overview>.right {
    color: #1e22b0;
    padding-left: 11.81640625%;
    width: 50%
}

@media(max-width:768px) {
    .p-lineup-detail main .overview>.right {
        margin: 0 auto;
        padding: 0;
        width: 83.58vw
    }
}

.p-lineup-detail main .overview>.right .info {
    font-family: Zen Maru Gothic;
    font-size: 16px;
    line-height: 1em;
    margin-bottom: 20px;
    padding-left: 14px;
    position: relative
}

.p-lineup-detail main .overview>.right .info:before {
    content: "";
    display: block
}

@media(max-width:768px) {
    .p-lineup-detail main .overview>.right .info {
        font-size: 3.33vw;
        margin-bottom: 5.12vw;
        padding-left: 2.82vw
    }
}

.p-lineup-detail main .overview>.right .info:before {
    background-color: #1e22b0;
    border-radius: 50%;
    height: 9px;
    left: 0;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 9px
}

@media(max-width:768px) {
    .p-lineup-detail main .overview>.right .info:before {
        height: 1.53vw;
        width: 1.53vw
    }
}

.p-lineup-detail main .overview>.right .title {
    font-family: Zen Maru Gothic;
    font-size: 32px;
    letter-spacing: .02em;
    line-height: 1.5em;
    margin-bottom: 20px
}

@media(max-width:768px) {
    .p-lineup-detail main .overview>.right .title {
        font-size: 7.69vw;
        margin-bottom: 5.12vw
    }
}

.p-lineup-detail main .overview>.right .price {
    font-family: Zen Maru Gothic;
    font-size: 13px;
    letter-spacing: .02em;
    line-height: 1.5em;
    margin-bottom: 10px
}

@media(max-width:768px) {
    .p-lineup-detail main .overview>.right .price {
        font-size: 2.82vw
    }
}

.p-lineup-detail main .overview>.right .price span {
    font-family: Rammetto One;
    font-size: 18px;
    letter-spacing: 0;
    margin-left: 10px
}

@media(max-width:768px) {
    .p-lineup-detail main .overview>.right .price span {
        font-size: 5.12vw;
        margin-left: 1.28vw
    }
}

.p-lineup-detail main .overview>.right .note {
    margin-bottom: 20px
}

@media(max-width:768px) {
    .p-lineup-detail main .overview>.right .note {
        margin-bottom: 5.12vw
    }
}

.p-lineup-detail main .overview>.right .note li {
    font-size: 13px;
    letter-spacing: .02em;
    line-height: 1.7em
}

@media(max-width:768px) {
    .p-lineup-detail main .overview>.right .note li {
        font-size: 2.82vw
    }
}

.p-lineup-detail main .overview>.right .note li:before {
    content: "※"
}

.p-lineup-detail main .overview>.right .link {
    align-items: center;
    display: flex;
    font-size: 16px;
    line-height: 1em
}

@media(max-width:768px) {
    .p-lineup-detail main .overview>.right .link {
        font-size: 3.33vw
    }
}

@media(min-width:769px) {
    .p-lineup-detail main .overview>.right .link:hover span {
        text-decoration: underline
    }
}

.p-lineup-detail main .overview>.right .link span {
    color: #1e22b0;
    font-size: 16;
    font-weight: 700;
    letter-spacing: .02em;
    line-height: 1em
}

@media(max-width:768px) {
    .p-lineup-detail main .overview>.right .link span {
        font-size: 3.33vw
    }
}

.p-lineup-detail main .overview>.right .link img {
    display: inline-block;
    height: 30px;
    margin-left: 10px;
    width: 45px
}

@media(max-width:768px) {
    .p-lineup-detail main .overview>.right .link img {
        height: 7.17vw;
        margin-left: 2.56vw;
        width: 10.25vw
    }
}

.p-lineup-detail main .detail {
    margin-bottom: 150px
}

@media(max-width:768px) {
    .p-lineup-detail main .detail {
        margin-bottom: 20.51vw
    }
}

.p-lineup-detail main .detail>.inner {
    background-color: #fff;
    border-radius: 50px;
    padding: 80px
}

@media(max-width:768px) {
    .p-lineup-detail main .detail>.inner {
        border-radius: 6.41vw;
        margin: 0 auto;
        padding: 10.25vw 7.69vw;
        width: 91.79vw
    }
}

.p-lineup-detail main .detail>.inner .title {
    font-family: Zen Maru Gothic;
    letter-spacing: .02em
}

.p-lineup-detail main .detail>.inner>.headline .title {
    font-size: 16;
    line-height: 1.7em;
    margin-bottom: 30px
}

@media(max-width:768px) {
    .p-lineup-detail main .detail>.inner>.headline .title {
        font-size: 3.33vw;
        margin-bottom: 2.56vw
    }
}

.p-lineup-detail main .detail>.inner>.headline .note li {
    font-size: 13px;
    letter-spacing: .02em;
    line-height: 1.7em
}

@media(max-width:768px) {
    .p-lineup-detail main .detail>.inner>.headline .note li {
        font-size: 2.82vw
    }
}

.p-lineup-detail main .detail>.inner>.headline .note li:before {
    content: "※"
}

.p-lineup-detail main .detail>.inner>.limited>.period {
    margin-bottom: 58px;
    margin-top: 60px
}

@media(max-width:768px) {
    .p-lineup-detail main .detail>.inner>.limited>.period {
        margin-bottom: 10.25vw;
        margin-top: 10.25vw
    }
}

.p-lineup-detail main .detail>.inner>.limited>.period .title {
    font-size: 24px;
    letter-spacing: .05em;
    line-height: 1em;
    margin-bottom: 20px
}

@media(max-width:768px) {
    .p-lineup-detail main .detail>.inner>.limited>.period .title {
        font-size: 4.61vw;
        margin-bottom: 5.12vw
    }
}

.p-lineup-detail main .detail>.inner>.limited>.period p {
    font-size: 16px;
    letter-spacing: .02em;
    line-height: 1em
}

@media(max-width:768px) {
    .p-lineup-detail main .detail>.inner>.limited>.period p {
        font-size: 3.33vw
    }
}

.p-lineup-detail main .detail>.inner>.limited>.info {
    margin-top: 58px
}

@media(max-width:768px) {
    .p-lineup-detail main .detail>.inner>.limited>.info {
        margin-top: 10.25vw
    }
}

.p-lineup-detail main .detail>.inner>.limited>.info .title {
    font-size: 24px;
    letter-spacing: .05em;
    line-height: 1em;
    margin-bottom: 30px
}

@media(max-width:768px) {
    .p-lineup-detail main .detail>.inner>.limited>.info .title {
        font-size: 4.61vw;
        margin-bottom: 5.12vw
    }
}

.p-lineup-detail main .detail>.inner>.limited>.info .infoLinks {
    display: flex
}

@media(max-width:768px) {
    .p-lineup-detail main .detail>.inner>.limited>.info .infoLinks {
        display: block
    }
}

.p-lineup-detail main .detail>.inner>.limited>.info .infoLinks a {
    display: block;
    max-width: 268px;
    width: 100%
}

.p-lineup-detail main .detail>.inner>.limited>.info .infoLinks a:hover {
    cursor: pointer;
    opacity: .8
}

@media(max-width:768px) {
    .p-lineup-detail main .detail>.inner>.limited>.info .infoLinks a {
        margin-bottom: 2.56vw;
        max-width: 100%
    }
}

.p-lineup-detail main .detail>.inner>.limited>.info .infoLinks a:first-child {
    margin-right: 30px
}

@media(max-width:768px) {
    .p-lineup-detail main .detail>.inner>.limited>.info .infoLinks a:first-child {
        margin-bottom: 4vw
    }

    .p-lineup-detail main .detail>.inner>.limited>.info .infoLinks a:first-child:last-child {
        margin: 0
    }
}

.p-lineup-detail main .detail>.inner>.limited>.info .infoLinks a .img {
    display: block;
    width: 100%
}

.p-lineup-detail main .links {
    margin-bottom: 150px
}

@media(max-width:768px) {
    .p-lineup-detail main .links {
        margin-bottom: 5.12vw
    }
}

.p-lineup-detail main .links>.inner {
    margin: 0 auto;
    max-width: 888px;
    padding: 0 20px;
    width: 100%
}

@media(max-width:768px) {
    .p-lineup-detail main .links>.inner {
        margin: 0 auto;
        padding: 0;
        width: 83.58vw
    }
}

.p-lineup-detail main .links>.inner>.title {
    color: #1e22b0;
    font-family: Zen Maru Gothic;
    font-size: 32px;
    letter-spacing: .05em;
    line-height: 1em;
    margin-bottom: 80px
}

@media(max-width:768px) {
    .p-lineup-detail main .links>.inner>.title {
        font-size: 5.12vw;
        margin-bottom: 10.25vw
    }
}

.p-lineup-detail main .links>.inner .items {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between
}

.p-lineup-detail main .links>.inner .items .item {
    width: 16.9811320755%
}

@media(max-width:768px) {
    .p-lineup-detail main .links>.inner .items .item {
        margin-bottom: 10.25vw;
        width: 39.74vw
    }
}

.p-lineup-detail main .links>.inner .items .item a {
    display: block
}

.p-lineup-detail main .links>.inner .items .item a>.imgWrap {
    border-radius: 25px;
    margin-bottom: 20px;
    overflow: hidden
}

@media(max-width:768px) {
    .p-lineup-detail main .links>.inner .items .item a>.imgWrap {
        border-radius: 6.41vw;
        margin-bottom: 5.12vw
    }
}

.p-lineup-detail main .links>.inner .items .item a>.imgWrap .img {
    display: block;
    width: 100%
}

.p-lineup-detail main .links>.inner .items .item a .title {
    align-items: center;
    display: flex
}

.p-lineup-detail main .links>.inner .items .item a .title p {
    color: #1e22b0;
    font-family: Zen Maru Gothic;
    font-size: 16;
    letter-spacing: .05em;
    line-height: 1.5em
}

@media(max-width:768px) {
    .p-lineup-detail main .links>.inner .items .item a .title p {
        font-size: 3.84vw
    }
}

.p-lineup-detail main .links>.inner .items .item a .title>.arrowWrap {
    margin-left: 5px
}

@media(max-width:768px) {
    .p-lineup-detail main .links>.inner .items .item a .title>.arrowWrap {
        margin-left: 1.28vw
    }
}

@media(min-width:769px) {
    .p-lineup-detail main .links>.inner .items .item a .title>.arrowWrap {
        position: relative
    }

    .p-lineup-detail main .links>.inner .items .item a .title>.arrowWrap:before {
        background-color: #1e22b0;
        border-radius: 50%;
        content: "";
        display: block;
        height: 16px;
        position: absolute;
        width: 16px
    }
}

.p-lineup-detail main .links>.inner .items .item a .title>.arrowWrap>img {
    display: block;
    height: 16px;
    position: relative;
    width: 16px;
    z-index: 1
}

@media(max-width:768px) {
    .p-lineup-detail main .links>.inner .items .item a .title>.arrowWrap>img {
        height: 4.1vw;
        margin-left: 1.28vw;
        width: 4.1vw
    }
}

@media(min-width:769px) {
    .p-lineup-detail main .links>.inner .items .item a:hover>.imgWrap img {
        transform: scale(1.2);
        transform-origin: center;
        transition: .5s
    }

    .p-lineup-detail main .links>.inner .items .item a:hover .title>.arrowWrap:before {
        transform: scale(1.5);
        transform-origin: center;
        transition: .5s
    }
}

.p-news,
.p-news-detail {
    background-color: #ffeb35
}

.p-news-detail main {
    margin-top: 300px
}

@media(max-width:768px) {
    .p-news-detail main {
        margin-top: 51.28vw
    }
}

.p-news-detail main>.inner {
    margin: 0 auto;
    max-width: 1064px;
    padding: 0 20px;
    position: relative;
    width: 100%;
    z-index: 1
}

@media(max-width:768px) {
    .p-news-detail main>.inner {
        margin: 0 auto;
        padding: 0;
        width: 91.79vw
    }
}

.p-news-detail main>.inner>.contents {
    background-color: #fff;
    border-radius: 50px;
    padding: 80px
}

@media(max-width:768px) {
    .p-news-detail main>.inner>.contents {
        border-radius: 6.41vw;
        padding: 10.25vw 7.69vw
    }
}

.p-news-detail main>.inner>.contents time {
    color: #1e22b0;
    display: block;
    font-family: Rammetto One;
    font-size: 12px;
    letter-spacing: .02em;
    margin-bottom: 20px
}

@media(max-width:768px) {
    .p-news-detail main>.inner>.contents time {
        font-size: 3.07vw;
        margin-bottom: 2.56vw
    }
}

.p-news-detail main>.inner>.contents strong {
    font-weight: 700
}

.p-news-detail main>.inner>.contents h1 {
    color: #333;
    font-size: 30px;
    font-weight: 700;
    letter-spacing: .05em;
    line-height: 1.5em;
    margin-bottom: 50px
}

@media(max-width:768px) {
    .p-news-detail main>.inner>.contents h1 {
        font-size: 4.61vw;
        margin-bottom: 7.69vw
    }
}

.p-news-detail main>.inner>.contents>img {
    display: block;
    margin: 0 auto 50px;
    width: 100%
}

@media(max-width:768px) {
    .p-news-detail main>.inner>.contents>img {
        margin-bottom: 7.69vw
    }
}

.p-news-detail main>.inner>.contents .dynamicArea a:not(.pdf-link) {
    text-decoration: underline
}

.p-news-detail main>.inner>.contents .dynamicArea h2 {
    color: #333;
    font-size: 24px;
    font-weight: 700;
    letter-spacing: .05em;
    line-height: 1.5em;
    margin: 100px 0 50px
}

@media(max-width:768px) {
    .p-news-detail main>.inner>.contents .dynamicArea h2 {
        font-size: 3.84vw;
        margin-bottom: 7.69vw;
        margin-top: 12.82vw
    }
}

.p-news-detail main>.inner>.contents .dynamicArea h3 {
    color: #333;
    font-size: 16px;
    font-weight: 700;
    letter-spacing: .05em;
    line-height: 1.5em;
    margin: 50px 0 25px
}

@media(max-width:768px) {
    .p-news-detail main>.inner>.contents .dynamicArea h3 {
        font-size: 3.33vw;
        margin-bottom: 5.12vw;
        margin-top: 7.69vw
    }
}

.p-news-detail main>.inner>.contents .dynamicArea p {
    color: #333;
    font-size: 16px;
    font-weight: 400;
    letter-spacing: .05em;
    line-height: 1.7em;
    margin-bottom: 26px
}

@media(max-width:768px) {
    .p-news-detail main>.inner>.contents .dynamicArea p {
        font-size: 3.33vw;
        margin-bottom: 6.41vw
    }
}

.p-news-detail main>.inner>.contents .dynamicArea p.is-style-no-margin {
    margin-bottom: 0
}

.p-news-detail main>.inner>.contents .dynamicArea>figure img {
    display: block;
    margin: 0 auto 30px;
    max-width: 100%;
    width: auto
}

@media(max-width:768px) {
    .p-news-detail main>.inner>.contents .dynamicArea>figure img {
        margin-bottom: 6.41vw
    }
}

.p-news-detail main>.inner>.contents .dynamicArea ul:not(.is-style-asterisk) {
    margin-bottom: 26px
}

@media(max-width:768px) {
    .p-news-detail main>.inner>.contents .dynamicArea ul:not(.is-style-asterisk) {
        margin-bottom: 6.41vw
    }
}

.p-news-detail main>.inner>.contents .dynamicArea ul:not(.is-style-asterisk) li {
    color: #333;
    font-size: 16px;
    font-weight: 400;
    letter-spacing: .05em;
    line-height: 1.7em
}

@media(max-width:768px) {
    .p-news-detail main>.inner>.contents .dynamicArea ul:not(.is-style-asterisk) li {
        font-size: 3.33vw
    }
}

.p-news-detail main>.inner>.contents .dynamicArea ul:not(.is-style-asterisk) li:before {
    content: "・"
}

.p-news-detail main>.inner>.contents .dynamicArea ul.is-style-asterisk {
    margin-bottom: 50px
}

@media(max-width:768px) {
    .p-news-detail main>.inner>.contents .dynamicArea ul.is-style-asterisk {
        margin-bottom: 7.69vw
    }
}

.p-news-detail main>.inner>.contents .dynamicArea ul.is-style-asterisk li {
    color: #333;
    font-size: 13px;
    font-weight: 400;
    letter-spacing: .05em;
    line-height: 1.7em
}

@media(max-width:768px) {
    .p-news-detail main>.inner>.contents .dynamicArea ul.is-style-asterisk li {
        font-size: 2.82vw
    }
}

.p-news-detail main>.inner>.contents .dynamicArea ul.is-style-asterisk li:before {
    content: "※"
}

.p-news-detail main>.inner>.contents .dynamicArea ol {
    margin-bottom: 50px;
    padding-left: 24px
}

@media(max-width:768px) {
    .p-news-detail main>.inner>.contents .dynamicArea ol {
        margin-bottom: 7.69vw;
        padding-left: 5.12vw
    }
}

.p-news-detail main>.inner>.contents .dynamicArea ol li {
    color: #333;
    font-size: 16px;
    font-weight: 400;
    letter-spacing: .05em;
    line-height: 1.7em
}

@media(max-width:768px) {
    .p-news-detail main>.inner>.contents .dynamicArea ol li {
        font-size: 3.33vw
    }
}

.p-news-detail main>.inner>.contents .pdf {
    display: inline-block;
    margin-bottom: 80px
}

@media(max-width:768px) {
    .p-news-detail main>.inner>.contents .pdf {
        margin-bottom: 10.25vw
    }
}

.p-news-detail main>.inner>.contents .pdf a.pdf-link {
    align-items: center;
    display: flex;
    margin-bottom: 20px
}

.p-news-detail main>.inner>.contents .pdf a.pdf-link:last-child {
    margin-bottom: 0
}

@media(max-width:768px) {
    .p-news-detail main>.inner>.contents .pdf a.pdf-link {
        font-size: 3.33vw;
        margin-bottom: 2.56vw
    }
}

.p-news-detail main>.inner>.contents .pdf a.pdf-link span {
    margin-right: 10px
}

@media(max-width:768px) {
    .p-news-detail main>.inner>.contents .pdf a.pdf-link span {
        margin-right: 2.56vw
    }
}

.p-news-detail main>.inner>.contents .pdf a.pdf-link img {
    display: block;
    height: 30px;
    width: 45px
}

@media(max-width:768px) {
    .p-news-detail main>.inner>.contents .pdf a.pdf-link img {
        height: 7.17vw;
        width: 10.25vw
    }
}

.p-news-detail main>.inner>.contents .pdf a:hover span {
    text-decoration: underline
}

.p-shop {
    background-color: #ffeb35
}

.p-shop .contents {
    margin: 0 auto;
    max-width: 1064px;
    padding: 0 20px;
    width: 100%
}

@media(max-width:768px) {
    .p-shop .contents {
        margin: 0 auto;
        padding: 0;
        width: 91.79vw
    }
}

.p-shop .contents .shops {
    background-color: #fff;
    border-radius: 50px;
    padding: 100px 80px
}

@media(max-width:768px) {
    .p-shop .contents .shops {
        border-radius: 6.41vw;
        padding: 10.25vw 7.69vw
    }
}

.p-shop .contents .shops .search-block-outer {
    margin-bottom: 80px;
    max-width: 584px;
    width: 100%
}

@media(max-width:768px) {
    .p-shop .contents .shops .search-block-outer {
        margin-bottom: 10.25vw;
        max-width: 100%
    }
}

.p-shop .contents .newsblockWrap {
    margin-top: 80px
}

@media(max-width:768px) {
    .p-shop .contents .newsblockWrap {
        margin-top: 10.25vw
    }
}

.p-shopSearch {
    background-color: #ffeb35
}

.p-shopSearch main>.inner {
    background-color: #fff;
    border-radius: 50px;
    margin: 300px auto 0;
    max-width: 1064px;
    padding: 80px;
    position: relative;
    width: 100%;
    z-index: 3
}

@media(max-width:768px) {
    .p-shopSearch main>.inner {
        border-radius: 6.41vw;
        margin-top: 51.28vw;
        padding: 10.25vw 7.69vw;
        width: 91.79vw
    }
}

.p-shopDetail {
    background-color: #ffeb35
}

.p-shopDetail main>.inner {
    position: relative;
    z-index: 5
}

.p-shopDetail main>.inner>.contents {
    margin-top: 150px
}

@media(max-width:768px) {
    .p-shopDetail main>.inner>.contents {
        margin-top: 51.28vw
    }
}

.p-shopDetail main>.inner>.contents>.headline {
    margin: 0 auto 100px;
    max-width: 712px;
    padding: 0 20px;
    width: 100%
}

@media(max-width:768px) {
    .p-shopDetail main>.inner>.contents>.headline {
        margin: 0 auto 10.25vw;
        padding: 0;
        width: 91.79vw
    }
}

.p-shopDetail main>.inner>.contents>.headline .mapWrap {
    background-color: #fef643;
    border-radius: 50px;
    margin-bottom: 40px;
    overflow: hidden
}

@media(max-width:768px) {
    .p-shopDetail main>.inner>.contents>.headline .mapWrap {
        border-radius: 6.41vw;
        height: 56.41vw;
        margin-bottom: 10.25vw
    }
}

.p-shopDetail main>.inner>.contents>.headline .mapWrap .map {
    display: block;
    height: 384px;
    width: 100%
}

@media(max-width:768px) {
    .p-shopDetail main>.inner>.contents>.headline .mapWrap .map {
        height: 56.41vw
    }
}

.p-shopDetail main>.inner>.contents>.headline .mapWrap .map iframe {
    border-radius: 50px
}

.p-shopDetail main>.inner>.contents>.headline .mapWrap .map .gm-style {
    border-radius: 50px;
    overflow: hidden
}

@media(max-width:768px) {
    .p-shopDetail main>.inner>.contents>.headline .mapWrap .map .gm-style {
        border-radius: 6.41vw
    }
}

.p-shopDetail main>.inner>.contents>.headline>.subtitle {
    color: #1e22b0;
    font-family: Zen Maru Gothic;
    font-size: 16px;
    letter-spacing: .02em;
    line-height: 1em;
    margin-bottom: 20px;
    padding-left: 14px;
    position: relative
}

.p-shopDetail main>.inner>.contents>.headline>.subtitle:before {
    content: "";
    display: block
}

@media(max-width:768px) {
    .p-shopDetail main>.inner>.contents>.headline>.subtitle {
        font-size: 3.58vw;
        margin: 0 auto 2.56vw;
        padding-left: 2.82vw;
        width: 83.58vw
    }
}

.p-shopDetail main>.inner>.contents>.headline>.subtitle:before {
    background-color: #1e22b0;
    border-radius: 50%;
    height: 9px;
    left: 0;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 9px
}

@media(max-width:768px) {
    .p-shopDetail main>.inner>.contents>.headline>.subtitle:before {
        height: 1.53vw;
        width: 1.53vw
    }
}

.p-shopDetail main>.inner>.contents>.headline>.title {
    color: #1e22b0;
    font-size: 30px;
    font-weight: 600;
    letter-spacing: .02em;
    line-height: 1.2em;
    margin-bottom: 20px
}

@media(max-width:768px) {
    .p-shopDetail main>.inner>.contents>.headline>.title {
        font-size: 7.17vw;
        line-height: 1.4em;
        margin: 0 auto 7.69vw;
        width: 83.58vw
    }
}

.p-shopDetail main>.inner>.contents>.headline>.access,
.p-shopDetail main>.inner>.contents>.headline>.address {
    margin-bottom: 20px
}

@media(max-width:768px) {

    .p-shopDetail main>.inner>.contents>.headline>.access,
    .p-shopDetail main>.inner>.contents>.headline>.address {
        margin: 0 auto 2.56vw;
        width: 83.58vw
    }
}

.p-shopDetail main>.inner>.contents>.headline>.access .static,
.p-shopDetail main>.inner>.contents>.headline>.address .static {
    color: #1e22b0;
    font-family: Zen Maru Gothic;
    font-size: 13px;
    letter-spacing: .02em;
    line-height: 1em;
    margin-bottom: 10px
}

@media(max-width:768px) {

    .p-shopDetail main>.inner>.contents>.headline>.access .static,
    .p-shopDetail main>.inner>.contents>.headline>.address .static {
        font-size: 2.82vw;
        margin-bottom: 2.56vw
    }
}

.p-shopDetail main>.inner>.contents>.headline>.access .dynamic,
.p-shopDetail main>.inner>.contents>.headline>.address .dynamic {
    color: #1e22b0;
    font-size: 13px;
    font-weight: 600;
    letter-spacing: .02em;
    line-height: 1.5em
}

@media(max-width:768px) {

    .p-shopDetail main>.inner>.contents>.headline>.access .dynamic,
    .p-shopDetail main>.inner>.contents>.headline>.address .dynamic {
        font-size: 2.82vw
    }

    .p-shopDetail main>.inner>.contents>.headline>.linkWrap {
        margin: 0 auto;
        width: 83.58vw
    }
}

.p-shopDetail main>.inner>.contents>.headline>.linkWrap .link {
    align-items: center;
    display: inline-flex
}

.p-shopDetail main>.inner>.contents>.headline>.linkWrap .link .text {
    color: #1e22b0;
    font-size: 16px;
    font-weight: 600;
    letter-spacing: .02em;
    line-height: 1em;
    margin-right: 10px
}

@media(max-width:768px) {
    .p-shopDetail main>.inner>.contents>.headline>.linkWrap .link .text {
        font-size: 3.33vw;
        margin-right: 2.56vw
    }
}

.p-shopDetail main>.inner>.contents>.headline>.linkWrap .link .icon {
    background-image: url(/images/common/icon-blank-border.svg);
    background-repeat: no-repeat;
    background-size: cover;
    display: block;
    height: 30px;
    width: 45px
}

@media(max-width:768px) {
    .p-shopDetail main>.inner>.contents>.headline>.linkWrap .link .icon {
        background-image: url(/images/common/icon-blank-border-sp.svg);
        height: 7.17vw;
        width: 10.25vw
    }
}

@media(min-width:769px) {
    .p-shopDetail main>.inner>.contents>.headline>.linkWrap .link:hover .text {
        text-decoration: underline
    }
}

.p-shopDetail main>.inner>.contents>.infoWrap {
    margin: 0 auto;
    max-width: 1064px;
    padding: 0 20px;
    width: 100%
}

.p-shopDetail main>.inner>.contents>.infoWrap>.info {
    background-color: #fff;
    border-radius: 50px;
    padding: 80px
}

@media(max-width:768px) {
    .p-shopDetail main>.inner>.contents>.infoWrap>.info {
        border-radius: 6.41vw;
        margin: 0 auto;
        padding: 10.25vw 7.69vw;
        width: 91.79vw
    }
}

.p-shopDetail main>.inner>.contents>.infoWrap>.info>.block {
    margin-bottom: 50px
}

.p-shopDetail main>.inner>.contents>.infoWrap>.info>.block:last-child {
    margin: 0
}

@media(max-width:768px) {
    .p-shopDetail main>.inner>.contents>.infoWrap>.info>.block {
        margin-bottom: 10.25vw
    }
}

.p-shopDetail main>.inner>.contents>.infoWrap>.info>.block>.title {
    color: #333;
    font-family: Zen Maru Gothic;
    font-size: 24px;
    letter-spacing: .05em;
    line-height: 1em;
    margin-bottom: 30px
}

@media(max-width:768px) {
    .p-shopDetail main>.inner>.contents>.infoWrap>.info>.block>.title {
        font-size: 4.61vw;
        margin-bottom: 5.12vw
    }
}

.p-shopDetail main>.inner>.contents>.infoWrap>.info>.block.tel .number {
    font-size: 13px;
    font-weight: 700;
    letter-spacing: .02em;
    line-height: 1.7em
}

@media(max-width:768px) {
    .p-shopDetail main>.inner>.contents>.infoWrap>.info>.block.tel .number {
        font-size: 3.33vw;
        letter-spacing: .05em
    }
}

.p-shopDetail main>.inner>.contents>.infoWrap>.info>.block.tel a.number {
    display: inline-block;
    text-decoration: underline
}

.p-shopDetail main>.inner>.contents>.infoWrap>.info>.block.tel a.number.sp {
    display: none
}

@media(max-width:768px) {
    .p-shopDetail main>.inner>.contents>.infoWrap>.info>.block.tel a.number.sp {
        display: inline-block
    }
}

.p-shopDetail main>.inner>.contents>.infoWrap>.info>.block.time tr {
    display: flex
}

.p-shopDetail main>.inner>.contents>.infoWrap>.info>.block.time th {
    display: block;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: .02em;
    line-height: 1.7em;
    margin-right: 10px;
    min-width: 40px;
    text-align: left
}

@media(max-width:768px) {
    .p-shopDetail main>.inner>.contents>.infoWrap>.info>.block.time th {
        font-size: 3.33vw;
        letter-spacing: .05em
    }
}

.p-shopDetail main>.inner>.contents>.infoWrap>.info>.block.time td {
    display: block;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: .02em;
    line-height: 1.7em
}

@media(max-width:768px) {
    .p-shopDetail main>.inner>.contents>.infoWrap>.info>.block.time td {
        font-size: 3.33vw;
        letter-spacing: .05em
    }
}

.p-shopDetail main>.inner>.contents>.infoWrap>.info>.block.service .shop-service-outer {
    margin-bottom: 34px
}

@media(max-width:768px) {
    .p-shopDetail main>.inner>.contents>.infoWrap>.info>.block.service .shop-service-outer {
        margin-bottom: 5.12vw
    }
}

.p-shopDetail main>.inner>.contents>.infoWrap>.info>.block.service>.link {
    align-items: center;
    display: inline-flex;
    margin-bottom: 20px
}

.p-shopDetail main>.inner>.contents>.infoWrap>.info>.block.service>.link .text {
    font-size: 13px;
    font-weight: 600;
    letter-spacing: .02em;
    line-height: 1.7em;
    margin-right: 10px
}

@media(max-width:768px) {
    .p-shopDetail main>.inner>.contents>.infoWrap>.info>.block.service>.link .text {
        font-size: 2.82vw;
        margin-right: 1.28vw
    }
}

.p-shopDetail main>.inner>.contents>.infoWrap>.info>.block.service>.link .arrowWrap {
    display: block;
    height: 24px;
    position: relative;
    width: 24px
}

.p-shopDetail main>.inner>.contents>.infoWrap>.info>.block.service>.link .arrowWrap:before {
    content: "";
    position: absolute
}

@media(max-width:768px) {
    .p-shopDetail main>.inner>.contents>.infoWrap>.info>.block.service>.link .arrowWrap {
        height: 6.15vw;
        width: 6.15vw
    }
}

.p-shopDetail main>.inner>.contents>.infoWrap>.info>.block.service>.link .arrowWrap:before {
    background-color: #1e22b0;
    border-radius: 50%;
    display: block;
    height: 24px;
    width: 24px;
    z-index: 0
}

@media(max-width:768px) {
    .p-shopDetail main>.inner>.contents>.infoWrap>.info>.block.service>.link .arrowWrap:before {
        display: none
    }
}

.p-shopDetail main>.inner>.contents>.infoWrap>.info>.block.service>.link .arrowWrap .arrow {
    background-image: url(/images/common/arrow-blue.svg);
    background-repeat: no-repeat;
    background-size: contain;
    display: block;
    height: 24px;
    position: relative;
    width: 24px;
    z-index: 1
}

@media(max-width:768px) {
    .p-shopDetail main>.inner>.contents>.infoWrap>.info>.block.service>.link .arrowWrap .arrow {
        height: 6.15vw;
        width: 6.15vw
    }
}

@media(min-width:769px) {
    .p-shopDetail main>.inner>.contents>.infoWrap>.info>.block.service>.link:hover .arrowWrap:before {
        transform: scale(1.5);
        transform-origin: center;
        transition: .5s
    }
}

.p-shopDetail main>.inner>.contents>.infoWrap>.info>.block.service>.text {
    font-size: 13px;
    letter-spacing: .02em;
    line-height: 1.7em
}

@media(max-width:768px) {
    .p-shopDetail main>.inner>.contents>.infoWrap>.info>.block.service>.text {
        font-size: 2.82vw;
        letter-spacing: .05em
    }
}

.p-shopDetail main>.inner>.contents>.infoWrap>.info>.block.text {
    margin-bottom: 60px
}

@media(max-width:768px) {
    .p-shopDetail main>.inner>.contents>.infoWrap>.info>.block.text {
        margin-bottom: 7.69vw
    }
}

.p-shopDetail main>.inner>.contents>.infoWrap>.info>.block.text>p {
    font-feature-settings: "palt";
    font-size: 13px;
    letter-spacing: .02em;
    line-height: 1.7em
}

@media(max-width:768px) {
    .p-shopDetail main>.inner>.contents>.infoWrap>.info>.block.text>p {
        font-size: 3.33vw;
        letter-spacing: .05em
    }
}

.p-contact {
    background-color: #ffeb35
}

.p-contact main .contents>.outer {
    margin: 0 auto;
    max-width: 1064px;
    padding: 0 20px;
    width: 100%
}

@media(max-width:768px) {
    .p-contact main .contents>.outer {
        padding: 0;
        width: 91.79vw
    }
}

.p-contact main .contents>.outer>.inner {
    background-color: #fff;
    border-radius: 50px;
    padding: 80px
}

@media(max-width:768px) {
    .p-contact main .contents>.outer>.inner {
        border-radius: 6.41vw;
        padding: 10.25vw 7.69vw
    }
}

.p-contact main .contents>.outer>.inner .caution {
    color: #eb5757;
    font-size: 13px;
    letter-spacing: .02em;
    line-height: 1.7em;
    margin-bottom: 20px
}

@media(max-width:768px) {
    .p-contact main .contents>.outer>.inner .caution {
        font-size: 2.82vw;
        margin-bottom: 5.12vw
    }
}

.p-contact main .contents>.outer>.inner .caution a {
    color: #eb5757;
    text-decoration: underline
}

@media(min-width:769px) {
    .p-contact main .contents>.outer>.inner .caution a:hover {
        text-decoration: none
    }
}

.p-contact main .contents>.outer>.inner .note {
    margin-bottom: 80px
}

@media(max-width:768px) {
    .p-contact main .contents>.outer>.inner .note {
        margin-bottom: 15.38vw
    }
}

.p-contact main .contents>.outer>.inner .note li {
    font-size: 13px;
    letter-spacing: .02em;
    line-height: 1em;
    margin-bottom: 16;
    padding-left: 10px;
    position: relative
}

.p-contact main .contents>.outer>.inner .note li:last-child {
    margin-bottom: 0
}

.p-contact main .contents>.outer>.inner .note li:before {
    content: "";
    display: block;
    position: absolute
}

@media(max-width:768px) {
    .p-contact main .contents>.outer>.inner .note li {
        font-size: 2.82vw;
        line-height: 1.7em;
        margin-bottom: 5.12vw;
        padding-left: 2.56vw
    }
}

.p-contact main .contents>.outer>.inner .note li:nth-child(4) {
    line-height: 1.7em
}

.p-contact main .contents>.outer>.inner .note li:before {
    background-color: #333;
    border-radius: 50%;
    height: 5px;
    left: 0;
    top: 4px;
    width: 5px
}

@media(max-width:768px) {
    .p-contact main .contents>.outer>.inner .note li:before {
        height: 1.28vw;
        top: 1.28vw;
        width: 1.28vw
    }
}

.p-contact main .contents>.outer>.inner .note li:nth-child(4):before {
    top: 8px
}

@media(max-width:768px) {
    .p-contact main .contents>.outer>.inner .note li:nth-child(4):before {
        top: 1.28vw
    }
}

.p-contact main .contents>.outer>.inner .contact-progress-outer {
    margin-bottom: 80px
}

@media(max-width:768px) {
    .p-contact main .contents>.outer>.inner .contact-progress-outer {
        margin-bottom: 15.38vw
    }
}

.p-contact main .contents>.outer>.inner .formWrap form>.block {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-bottom: 60px
}

@media(max-width:768px) {
    .p-contact main .contents>.outer>.inner .formWrap form>.block {
        display: block;
        margin-bottom: 10.25vw
    }
}

.p-contact main .contents>.outer>.inner .formWrap form>.block input,
.p-contact main .contents>.outer>.inner .formWrap form>.block select,
.p-contact main .contents>.outer>.inner .formWrap form>.block textarea {
    background-color: #f2f2f6;
    border: 1px solid #f2f2f6;
    border-radius: 3px;
    display: block;
    font-size: 16px;
    letter-spacing: .05em;
    line-height: 1.5em;
    padding: 13px 20px;
    width: 100%
}

@media(max-width:768px) {

    .p-contact main .contents>.outer>.inner .formWrap form>.block input,
    .p-contact main .contents>.outer>.inner .formWrap form>.block select,
    .p-contact main .contents>.outer>.inner .formWrap form>.block textarea {
        border-radius: .76vw;
        font-size: 3.84vw;
        padding: 3.33vw 2.82vw
    }
}

.p-contact main .contents>.outer>.inner .formWrap form>.block input:focus,
.p-contact main .contents>.outer>.inner .formWrap form>.block select:focus,
.p-contact main .contents>.outer>.inner .formWrap form>.block textarea:focus {
    border: 1px solid #afafaf
}

.p-contact main .contents>.outer>.inner .formWrap form>.block input[type=mail],
.p-contact main .contents>.outer>.inner .formWrap form>.block input[type=tel] {
    border: 1px solid #f2f2f6
}

.p-contact main .contents>.outer>.inner .formWrap form>.block input[type=mail]:focus,
.p-contact main .contents>.outer>.inner .formWrap form>.block input[type=tel]:focus {
    border: 1px solid #afafaf;
    outline: none
}

.p-contact main .contents>.outer>.inner .formWrap form>.block input::-moz-placeholder {
    color: #afafaf;
    font-weight: 300
}

.p-contact main .contents>.outer>.inner .formWrap form>.block input::placeholder {
    color: #afafaf;
    font-weight: 300
}

.p-contact main .contents>.outer>.inner .formWrap form>.block .selectWrap {
    position: relative
}

.p-contact main .contents>.outer>.inner .formWrap form>.block .selectWrap:after {
    background-image: url(/images/contact/arrow-select.svg);
    background-repeat: no-repeat;
    background-size: contain;
    content: "";
    display: block;
    height: 7px;
    position: absolute;
    right: 19px;
    top: 22px;
    width: 12px;
    z-index: 1
}

@media(max-width:768px) {
    .p-contact main .contents>.outer>.inner .formWrap form>.block .selectWrap:after {
        height: 1.79vw;
        right: 3.33vw;
        top: 5.38vw;
        width: 3.07vw
    }
}

.p-contact main .contents>.outer>.inner .formWrap form>.block .selectWrap select {
    color: #333;
    position: relative;
    z-index: 0
}

.p-contact main .contents>.outer>.inner .formWrap form>.block .selectWrap select.active {
    color: #333
}

.p-contact main .contents>.outer>.inner .formWrap form>.block .mw-wp-form_file>a,
.p-contact main .contents>.outer>.inner .formWrap form>.block .mwform-file-delete {
    display: none
}

.p-contact main .contents>.outer>.inner .formWrap form>.block .error,
.p-contact main .contents>.outer>.inner .formWrap form>.block .wpcf7-not-valid-tip {
    color: #eb5757;
    display: block;
    font-size: 16px;
    font-weight: 600;
    letter-spacing: .05em;
    line-height: 1em;
    margin-top: 15px
}

@media(max-width:768px) {

    .p-contact main .contents>.outer>.inner .formWrap form>.block .error,
    .p-contact main .contents>.outer>.inner .formWrap form>.block .wpcf7-not-valid-tip {
        font-size: 4.1vw;
        margin-top: 3.84vw
    }
}

.p-contact main .contents>.outer>.inner .formWrap form>.block>.left {
    display: flex;
    width: calc(100% - 504px)
}

@media(max-width:955px) {
    .p-contact main .contents>.outer>.inner .formWrap form>.block>.left {
        display: block
    }
}

@media(max-width:768px) {
    .p-contact main .contents>.outer>.inner .formWrap form>.block>.left {
        display: flex;
        margin-bottom: 7.69vw;
        width: 100%
    }
}

.p-contact main .contents>.outer>.inner .formWrap form>.block>.left h2 {
    color: #333;
    font-family: Zen Maru Gothic;
    font-size: 20px;
    letter-spacing: .05em;
    line-height: 1em;
    margin-top: 15px
}

@media(max-width:768px) {
    .p-contact main .contents>.outer>.inner .formWrap form>.block>.left h2 {
        font-size: 4.1vw;
        margin-top: 0
    }
}

.p-contact main .contents>.outer>.inner .formWrap form>.block>.left .nonrequired,
.p-contact main .contents>.outer>.inner .formWrap form>.block>.left .required {
    font-family: Zen Maru Gothic;
    font-size: 14px;
    letter-spacing: .05em;
    line-height: 1em;
    margin-left: 10px;
    margin-top: 18px
}

@media(max-width:955px) {

    .p-contact main .contents>.outer>.inner .formWrap form>.block>.left .nonrequired,
    .p-contact main .contents>.outer>.inner .formWrap form>.block>.left .required {
        margin-left: 0
    }
}

@media(max-width:768px) {

    .p-contact main .contents>.outer>.inner .formWrap form>.block>.left .nonrequired,
    .p-contact main .contents>.outer>.inner .formWrap form>.block>.left .required {
        font-size: 2.3vw;
        margin-left: 1.28vw;
        margin-top: .89vw
    }
}

.p-contact main .contents>.outer>.inner .formWrap form>.block>.left .required {
    color: #eb5757
}

.p-contact main .contents>.outer>.inner .formWrap form>.block>.left .nonrequired {
    color: #afafaf
}

.p-contact main .contents>.outer>.inner .formWrap form>.block>.right {
    width: 504px
}

@media(max-width:768px) {
    .p-contact main .contents>.outer>.inner .formWrap form>.block>.right {
        width: 100%
    }
}

.p-contact main .contents>.outer>.inner .formWrap form>.block.shopname .right p {
    font-size: 13px;
    letter-spacing: .02em;
    line-height: 1.7em;
    margin-top: 20px
}

@media(max-width:768px) {
    .p-contact main .contents>.outer>.inner .formWrap form>.block.shopname .right p {
        font-size: 2.82vw;
        letter-spacing: .05em;
        margin-top: 2.56vw
    }
}

.p-contact main .contents>.outer>.inner .formWrap form>.block.date .right,
.p-contact main .contents>.outer>.inner .formWrap form>.block.date .right>label {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between
}

.p-contact main .contents>.outer>.inner .formWrap form>.block.date .right .day,
.p-contact main .contents>.outer>.inner .formWrap form>.block.date .right .month {
    width: 145px
}

@media(max-width:768px) {

    .p-contact main .contents>.outer>.inner .formWrap form>.block.date .right .day,
    .p-contact main .contents>.outer>.inner .formWrap form>.block.date .right .month {
        width: 21.79vw
    }
}

.p-contact main .contents>.outer>.inner .formWrap form>.block.date .right .hour {
    width: 163px
}

@media(max-width:768px) {
    .p-contact main .contents>.outer>.inner .formWrap form>.block.date .right .hour {
        width: 25.38vw
    }
}

.p-contact main .contents>.outer>.inner .formWrap form>.block.date .right .selectWrap {
    width: 120px
}

@media(max-width:768px) {
    .p-contact main .contents>.outer>.inner .formWrap form>.block.date .right .selectWrap {
        width: 16.41vw
    }
}

.p-contact main .contents>.outer>.inner .formWrap form>.block.date .right p {
    display: block;
    font-size: 16px;
    font-weight: 600;
    letter-spacing: .05em;
    line-height: 1.5em;
    margin-top: 13px
}

@media(max-width:768px) {
    .p-contact main .contents>.outer>.inner .formWrap form>.block.date .right p {
        font-size: 3.33vw;
        line-height: 1em;
        margin-top: 4.61vw
    }
}

.p-contact main .contents>.outer>.inner .formWrap form>.block.comment {
    margin-bottom: 20px
}

@media(max-width:768px) {
    .p-contact main .contents>.outer>.inner .formWrap form>.block.comment {
        margin-bottom: 5.12vw
    }
}

.p-contact main .contents>.outer>.inner .formWrap form>.block.comment textarea {
    height: 260px;
    resize: none
}

@media(max-width:768px) {
    .p-contact main .contents>.outer>.inner .formWrap form>.block.comment textarea {
        height: 51.28vw
    }
}

.p-contact main .contents>.outer>.inner .formWrap form>.block.comment .text {
    font-size: 13px;
    letter-spacing: .02em;
    line-height: 1em;
    margin-top: 20px
}

@media(max-width:768px) {
    .p-contact main .contents>.outer>.inner .formWrap form>.block.comment .text {
        font-size: 2.82vw;
        letter-spacing: .05em;
        line-height: 1.7em;
        margin-top: 2.56vw
    }
}

.p-contact main .contents>.outer>.inner .formWrap form>.block.comment img {
    display: none;
    margin-top: 20px;
    max-width: 100%;
    width: auto
}

@media(max-width:768px) {
    .p-contact main .contents>.outer>.inner .formWrap form>.block.comment img {
        margin-top: 2.56vw
    }
}

.p-contact main .contents>.outer>.inner .formWrap form>.block.comment img.active {
    display: block
}

@media(max-width:768px) {
    .p-contact main .contents>.outer>.inner .formWrap form>.block.image .left {
        display: none
    }
}

.p-contact main .contents>.outer>.inner .formWrap form>.block.image .right {
    display: flex
}

.p-contact main .contents>.outer>.inner .formWrap form>.block.image .delete,
.p-contact main .contents>.outer>.inner .formWrap form>.block.image label {
    display: inline-block;
    font-size: 16px;
    font-weight: 600;
    letter-spacing: .02em;
    line-height: 1em;
    padding-left: 30px;
    padding-top: 5px;
    position: relative;
    z-index: 0
}

@media(max-width:768px) {

    .p-contact main .contents>.outer>.inner .formWrap form>.block.image .delete,
    .p-contact main .contents>.outer>.inner .formWrap form>.block.image label {
        font-size: 2.82vw;
        height: 6.41vw;
        padding-left: 6.41vw;
        padding-top: 1.15vw
    }
}

.p-contact main .contents>.outer>.inner .formWrap form>.block.image .delete .icon,
.p-contact main .contents>.outer>.inner .formWrap form>.block.image label .icon {
    background-image: url(/images/contact/icon-image.svg);
    background-repeat: no-repeat;
    background-size: contain;
    display: block;
    height: 25px;
    left: 0;
    position: absolute;
    top: 0;
    width: 25px;
    z-index: 1
}

@media(max-width:768px) {

    .p-contact main .contents>.outer>.inner .formWrap form>.block.image .delete .icon,
    .p-contact main .contents>.outer>.inner .formWrap form>.block.image label .icon {
        height: 5.12vw;
        width: 5.12vw
    }
}

.p-contact main .contents>.outer>.inner .formWrap form>.block.image .delete input,
.p-contact main .contents>.outer>.inner .formWrap form>.block.image label input {
    display: none
}

.p-contact main .contents>.outer>.inner .formWrap form>.block.image label:hover {
    cursor: pointer;
    text-decoration: underline
}

.p-contact main .contents>.outer>.inner .formWrap form>.block.image .delete {
    margin-left: 40px
}

@media(max-width:768px) {
    .p-contact main .contents>.outer>.inner .formWrap form>.block.image .delete {
        margin-left: 5.12vw
    }
}

.p-contact main .contents>.outer>.inner .formWrap form>.block.image .delete .icon {
    background-image: url(/images/contact/icon-delete.svg);
    background-repeat: no-repeat;
    background-size: contain
}

.p-contact main .contents>.outer>.inner .formWrap form>.block.image .delete:hover {
    cursor: pointer
}

.p-contact main .contents>.outer>.inner .formWrap form>.block.image .delete:hover p {
    text-decoration: underline
}

.p-contact main .contents>.outer>.inner .formWrap form>.block.replay {
    margin-bottom: 75px
}

@media(max-width:768px) {
    .p-contact main .contents>.outer>.inner .formWrap form>.block.replay {
        margin-bottom: 10.25vw
    }
}

.p-contact main .contents>.outer>.inner .formWrap form>.block.replay input {
    display: none
}

.p-contact main .contents>.outer>.inner .formWrap form>.block.replay .left h2 {
    margin-top: 0
}

.p-contact main .contents>.outer>.inner .formWrap form>.block.replay .left p {
    margin-top: 3px
}

@media(max-width:768px) {
    .p-contact main .contents>.outer>.inner .formWrap form>.block.replay .left p {
        margin-top: .89vw
    }
}

.p-contact main .contents>.outer>.inner .formWrap form>.block.replay .right {
    display: flex
}

.p-contact main .contents>.outer>.inner .formWrap form>.block.replay label {
    align-items: center;
    display: flex;
    height: 100%;
    margin-right: 40px
}

@media(max-width:768px) {
    .p-contact main .contents>.outer>.inner .formWrap form>.block.replay label {
        margin-right: 7.69vw
    }
}

.p-contact main .contents>.outer>.inner .formWrap form>.block.replay label span {
    display: block;
    font-size: 16px;
    letter-spacing: .02em;
    line-height: 1em;
    padding-left: 30px;
    position: relative
}

.p-contact main .contents>.outer>.inner .formWrap form>.block.replay label span:after,
.p-contact main .contents>.outer>.inner .formWrap form>.block.replay label span:before {
    content: "";
    display: block;
    position: absolute
}

@media(max-width:768px) {
    .p-contact main .contents>.outer>.inner .formWrap form>.block.replay label span {
        font-size: 3.33vw;
        padding-left: 7.69vw
    }
}

.p-contact main .contents>.outer>.inner .formWrap form>.block.replay label span:before {
    background-color: #f2f2f6;
    border-radius: 50%;
    display: block;
    height: 20px;
    left: 0;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 20px
}

@media(max-width:768px) {
    .p-contact main .contents>.outer>.inner .formWrap form>.block.replay label span:before {
        height: 5.12vw;
        width: 5.12vw
    }
}

.p-contact main .contents>.outer>.inner .formWrap form>.block.replay label input:checked+span:after {
    background-color: #333;
    border-radius: 50%;
    height: 10px;
    left: 5px;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 10px
}

@media(max-width:768px) {
    .p-contact main .contents>.outer>.inner .formWrap form>.block.replay label input:checked+span:after {
        height: 2.56vw;
        width: 2.56vw
    }
}

.p-contact main .contents>.outer>.inner .formWrap form>.block.replay label:hover {
    cursor: pointer
}

.p-contact main .contents>.outer>.inner .formWrap form .block.name .right>div {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between
}

.p-contact main .contents>.outer>.inner .formWrap form .block.name .right>div label {
    display: block;
    width: 232px
}

@media(max-width:768px) {
    .p-contact main .contents>.outer>.inner .formWrap form .block.name .right>div label {
        width: 35.89vw
    }
}

.p-contact main .contents>.outer>.inner .formWrap form .block.name .right>div label p {
    font-size: 16px;
    font-weight: 600;
    letter-spacing: .05em;
    line-height: 1em;
    margin-bottom: 15px
}

@media(max-width:768px) {
    .p-contact main .contents>.outer>.inner .formWrap form .block.name .right>div label p {
        font-size: 3.33vw;
        letter-spacing: .02em;
        margin-bottom: 2.56vw
    }
}

.p-contact main .contents>.outer>.inner .formWrap form .block.name .right .kanji {
    margin-bottom: 25px
}

@media(max-width:768px) {
    .p-contact main .contents>.outer>.inner .formWrap form .block.name .right .kanji {
        margin-bottom: 7.69vw
    }
}

.p-contact main .contents>.outer>.inner .formWrap form .block.address .right label {
    display: block;
    margin-bottom: 25px
}

.p-contact main .contents>.outer>.inner .formWrap form .block.address .right label:last-child {
    margin-bottom: 0
}

@media(max-width:768px) {
    .p-contact main .contents>.outer>.inner .formWrap form .block.address .right label {
        margin-bottom: 7.69vw
    }
}

.p-contact main .contents>.outer>.inner .formWrap form .block.address .right label p {
    font-size: 16px;
    font-weight: 600;
    letter-spacing: .05em;
    line-height: 1em;
    margin-bottom: 15px
}

@media(max-width:768px) {
    .p-contact main .contents>.outer>.inner .formWrap form .block.address .right label p {
        font-size: 3.33vw;
        letter-spacing: .02em;
        margin-bottom: 2.56vw
    }
}

.p-contact main .contents>.outer>.inner .formWrap form .accept {
    text-align: center
}

@media(max-width:768px) {
    .p-contact main .contents>.outer>.inner .formWrap form .accept {
        text-align: left
    }
}

.p-contact main .contents>.outer>.inner .formWrap form .accept label {
    align-items: center;
    display: inline-flex;
    position: relative
}

@media(max-width:768px) {
    .p-contact main .contents>.outer>.inner .formWrap form .accept label {
        display: flex
    }
}

.p-contact main .contents>.outer>.inner .formWrap form .accept label .mwform-checkbox-field-text {
    display: none
}

.p-contact main .contents>.outer>.inner .formWrap form .accept label .error {
    color: #eb5757;
    display: block;
    font-size: 16px;
    font-weight: 600;
    letter-spacing: .05em;
    line-height: 1em;
    position: absolute;
    top: 35px
}

@media(max-width:768px) {
    .p-contact main .contents>.outer>.inner .formWrap form .accept label .error {
        font-size: 4.1vw;
        top: 12.82vw
    }
}

.p-contact main .contents>.outer>.inner .formWrap form .accept label>.box {
    background-color: #f2f2f6;
    border-radius: 3px;
    display: block;
    height: 20px;
    width: 20px
}

@media(max-width:768px) {
    .p-contact main .contents>.outer>.inner .formWrap form .accept label>.box {
        border-radius: .76vw;
        height: 5.12vw;
        width: 5.12vw
    }
}

.p-contact main .contents>.outer>.inner .formWrap form .accept label>.box.active {
    background-image: url(/images/contact/icon-check.svg);
    background-repeat: no-repeat;
    background-size: contain;
    height: 20px;
    left: 0;
    top: 0;
    width: 20px
}

@media(max-width:768px) {
    .p-contact main .contents>.outer>.inner .formWrap form .accept label>.box.active {
        height: 5.12vw;
        width: 5.12vw
    }
}

.p-contact main .contents>.outer>.inner .formWrap form .accept label>.text {
    margin-left: 10px
}

@media(max-width:768px) {
    .p-contact main .contents>.outer>.inner .formWrap form .accept label>.text {
        margin-left: 2.56vw;
        width: 68.46vw
    }
}

.p-contact main .contents>.outer>.inner .formWrap form .accept label>.text a,
.p-contact main .contents>.outer>.inner .formWrap form .accept label>.text span {
    font-size: 13px;
    letter-spacing: .02em;
    line-height: 1em
}

@media(max-width:768px) {

    .p-contact main .contents>.outer>.inner .formWrap form .accept label>.text a,
    .p-contact main .contents>.outer>.inner .formWrap form .accept label>.text span {
        font-size: 2.82vw;
        line-height: 1.7em
    }
}

.p-contact main .contents>.outer>.inner .formWrap form .accept label>.text a {
    text-decoration: underline
}

.p-contact main .contents>.outer>.inner .formWrap form .accept label input {
    display: none
}

.p-contact main .contents>.outer>.inner .formWrap form>.buttons {
    margin: 60px auto 0;
    width: 160px
}

@media(max-width:768px) {
    .p-contact main .contents>.outer>.inner .formWrap form>.buttons {
        margin-top: 10.25vw;
        width: 35.89vw
    }
}

.p-contact main .contents>.outer>.inner .formWrap form>.buttons input {
    background-color: #afafaf;
    border-radius: 9999px;
    color: #fff;
    display: block;
    font-family: Zen Maru Gothic;
    font-size: 16px;
    letter-spacing: .02em;
    line-height: 1em;
    padding: 22px 0;
    pointer-events: none;
    text-align: center;
    width: 100%
}

@media(max-width:768px) {
    .p-contact main .contents>.outer>.inner .formWrap form>.buttons input {
        font-size: 3.84vw;
        padding: 4.35vw 0 4.61vw
    }
}

.p-contact main .contents>.outer>.inner .formWrap form>.buttons input:hover {
    cursor: pointer
}

@media(min-width:769px) {
    .p-contact main .contents>.outer>.inner .formWrap form>.buttons input:hover {
        animation: hover-bounce .5s ease 1
    }
}

.p-contact main .contents>.outer>.inner .formWrap form>.buttons input.active:not(:disabled) {
    background-color: #1e22b0;
    pointer-events: auto
}

.p-contact main .contents>.outer>.inner .formWrap form .g-recaptcha {
    margin: 0 0 35px
}

.p-contactConfirm {
    background-color: #ffeb35
}

.p-contactConfirm main .contents>.outer {
    margin: 0 auto;
    max-width: 1064px;
    padding: 0 20px;
    width: 100%
}

@media(max-width:768px) {
    .p-contactConfirm main .contents>.outer {
        padding: 0;
        width: 91.79vw
    }
}

.p-contactConfirm main .contents>.outer>.inner {
    background-color: #fff;
    border-radius: 50px;
    padding: 80px
}

@media(max-width:768px) {
    .p-contactConfirm main .contents>.outer>.inner {
        border-radius: 6.41vw;
        padding: 10.25vw 7.69vw
    }
}

.p-contactConfirm main .contents>.outer>.inner .contact-progress-outer {
    margin-bottom: 95px
}

@media(max-width:768px) {
    .p-contactConfirm main .contents>.outer>.inner .contact-progress-outer {
        margin-bottom: 15.38vw
    }
}

.p-contactConfirm main .contents>.outer>.inner .contact-progress-outer ul>li:first-child p {
    color: #333
}

.p-contactConfirm main .contents>.outer>.inner .blocks .block {
    align-items: center;
    display: flex;
    margin-bottom: 50px
}

.p-contactConfirm main .contents>.outer>.inner .blocks .block:last-child {
    margin-bottom: 0
}

@media(max-width:768px) {
    .p-contactConfirm main .contents>.outer>.inner .blocks .block {
        display: block;
        margin-bottom: 10.25vw
    }
}

.p-contactConfirm main .contents>.outer>.inner .blocks .block .left {
    width: 360px
}

@media(max-width:768px) {
    .p-contactConfirm main .contents>.outer>.inner .blocks .block .left {
        width: 100%
    }
}

.p-contactConfirm main .contents>.outer>.inner .blocks .block .left p {
    display: none
}

.p-contactConfirm main .contents>.outer>.inner .blocks .block .right {
    font-size: 16px;
    font-weight: 600;
    letter-spacing: .02em;
    line-height: 1em;
    margin-bottom: 20;
    width: calc(100% - 360px)
}

.p-contactConfirm main .contents>.outer>.inner .blocks .block .right:last-child {
    margin-bottom: 0
}

@media(max-width:768px) {
    .p-contactConfirm main .contents>.outer>.inner .blocks .block .right {
        font-size: 3.33vw;
        margin-bottom: 2.56vw;
        width: 100%
    }
}

.p-contactConfirm main .contents>.outer>.inner .blocks .block .right .selectWrap {
    font-size: 16px;
    font-weight: 600;
    letter-spacing: .02em;
    line-height: 1em;
    margin-bottom: 20
}

.p-contactConfirm main .contents>.outer>.inner .blocks .block .right .selectWrap:last-child {
    margin-bottom: 0
}

@media(max-width:768px) {
    .p-contactConfirm main .contents>.outer>.inner .blocks .block .right .selectWrap {
        font-size: 3.33vw;
        margin-bottom: 2.56vw
    }
}

.p-contactConfirm main .contents>.outer>.inner .blocks .block h2 {
    color: #333;
    font-family: Zen Maru Gothic;
    font-size: 20px;
    letter-spacing: .05em;
    line-height: 1em
}

@media(max-width:768px) {
    .p-contactConfirm main .contents>.outer>.inner .blocks .block h2 {
        font-size: 4.1vw;
        margin-bottom: 5.12vw
    }
}

.p-contactConfirm main .contents>.outer>.inner .blocks .block p {
    font-size: 16px;
    font-weight: 600;
    letter-spacing: .02em;
    line-height: 1em;
    margin-bottom: 20
}

.p-contactConfirm main .contents>.outer>.inner .blocks .block p:last-child {
    margin-bottom: 0
}

@media(max-width:768px) {
    .p-contactConfirm main .contents>.outer>.inner .blocks .block p {
        font-size: 3.33vw;
        margin-bottom: 2.56vw
    }
}

.p-contactConfirm main .contents>.outer>.inner .blocks .block.comment p {
    font-size: 16px;
    font-weight: 300;
    letter-spacing: .05em;
    line-height: 1.5em
}

@media(max-width:768px) {
    .p-contactConfirm main .contents>.outer>.inner .blocks .block.comment p {
        font-size: 3.33vw
    }
}

.p-contactConfirm main .contents>.outer>.inner .blocks .block.address,
.p-contactConfirm main .contents>.outer>.inner .blocks .block.comment,
.p-contactConfirm main .contents>.outer>.inner .blocks .block.name {
    align-items: flex-start
}

.p-contactConfirm main .contents>.outer>.inner .blocks .block.shopname p {
    display: none
}

.p-contactConfirm main .contents>.outer>.inner .blocks .block.date .right,
.p-contactConfirm main .contents>.outer>.inner .blocks .block.date .right label {
    display: flex
}

.p-contactConfirm main .contents>.outer>.inner .blocks .block.comment {
    margin-bottom: 20px
}

@media(max-width:768px) {
    .p-contactConfirm main .contents>.outer>.inner .blocks .block.comment {
        margin-bottom: 2.56vw
    }
}

.p-contactConfirm main .contents>.outer>.inner .blocks .block.comment img,
.p-contactConfirm main .contents>.outer>.inner .blocks .block.comment p {
    display: none
}

.p-contactConfirm main .contents>.outer>.inner .blocks .block.comment .right {
    font-size: 16px;
    font-weight: 400;
    letter-spacing: .05em;
    line-height: 1.5em
}

@media(max-width:768px) {
    .p-contactConfirm main .contents>.outer>.inner .blocks .block.comment .right {
        font-size: 3.33vw
    }
}

.p-contactConfirm main .contents>.outer>.inner .blocks .block.image .delete,
.p-contactConfirm main .contents>.outer>.inner .blocks .block.image .none {
    display: none
}

.p-contactConfirm main .contents>.outer>.inner .blocks .block.image a {
    text-decoration: underline
}

.p-contactConfirm main .contents>.outer>.inner .blocks .block.name label p {
    display: none
}

.p-contactConfirm main .contents>.outer>.inner .blocks .block.name .kanji {
    margin-bottom: 20px
}

@media(max-width:768px) {
    .p-contactConfirm main .contents>.outer>.inner .blocks .block.name .kanji {
        margin-bottom: 2.56vw
    }
}

.p-contactConfirm main .contents>.outer>.inner .blocks .block.name .kana,
.p-contactConfirm main .contents>.outer>.inner .blocks .block.name .kanji {
    display: flex
}

.p-contactConfirm main .contents>.outer>.inner .blocks .block.name .kana label:first-child,
.p-contactConfirm main .contents>.outer>.inner .blocks .block.name .kanji label:first-child {
    margin-right: 1em
}

.p-contactConfirm main .contents>.outer>.inner .blocks .block.address .right p {
    display: none
}

.p-contactConfirm main .contents>.outer>.inner .blocks .block.address .right label {
    display: block;
    margin-bottom: 20px
}

.p-contactConfirm main .contents>.outer>.inner .blocks .block.address .right label:last-child {
    margin-bottom: 0
}

@media(max-width:768px) {
    .p-contactConfirm main .contents>.outer>.inner .blocks .block.address .right label {
        margin-bottom: 2.56vw
    }
}

.p-contactConfirm main .contents>.outer>.inner .blocks .accept {
    display: none
}

.p-contactConfirm main .contents>.outer>.inner .buttons {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin: 78px auto 0;
    width: 352px
}

@media(max-width:768px) {
    .p-contactConfirm main .contents>.outer>.inner .buttons {
        flex-direction: column-reverse;
        flex-wrap: wrap;
        margin-top: 10.25vw;
        width: 35.89vw
    }
}

.p-contactConfirm main .contents>.outer>.inner .buttons input {
    background-color: #333;
    border-radius: 9999px;
    color: #fff;
    display: block;
    font-family: Zen Maru Gothic;
    font-size: 16px;
    letter-spacing: .02em;
    line-height: 1em;
    padding: 22px 0;
    width: 160px
}

@media(max-width:768px) {
    .p-contactConfirm main .contents>.outer>.inner .buttons input {
        font-size: 3.84vw;
        margin: 0 auto;
        padding: 4.35vw 0 4.61vw;
        width: 100%
    }
}

.p-contactConfirm main .contents>.outer>.inner .buttons input.next {
    background-color: #1e22b0
}

@media(max-width:768px) {
    .p-contactConfirm main .contents>.outer>.inner .buttons input.next {
        margin-bottom: 5.12vw
    }
}

.p-contactConfirm main .contents>.outer>.inner .buttons input:hover {
    cursor: pointer
}

@media(min-width:769px) {
    .p-contactConfirm main .contents>.outer>.inner .buttons input:hover {
        animation: hover-bounce .5s ease 1
    }
}

.p-contactConfirm main .contents>.outer>.inner .g-recaptcha {
    display: none
}

.p-contactThanks {
    background-color: #ffeb35
}

.p-contactThanks main .contents>.outer {
    margin: 0 auto;
    max-width: 1064px;
    padding: 0 20px;
    width: 100%
}

@media(max-width:768px) {
    .p-contactThanks main .contents>.outer {
        padding: 0;
        width: 91.79vw
    }
}

.p-contactThanks main .contents>.outer>.inner {
    background-color: #fff;
    border-radius: 50px;
    padding: 80px
}

@media(max-width:768px) {
    .p-contactThanks main .contents>.outer>.inner {
        border-radius: 6.41vw;
        padding: 10.25vw 7.69vw
    }
}

.p-contactThanks main .contents>.outer>.inner .contact-progress-outer {
    margin-bottom: 95px
}

@media(max-width:768px) {
    .p-contactThanks main .contents>.outer>.inner .contact-progress-outer {
        margin-bottom: 15.38vw
    }
}

.p-contactThanks main .contents>.outer>.inner .contact-progress-outer ul>li:first-child p,
.p-contactThanks main .contents>.outer>.inner .contact-progress-outer ul>li:nth-child(2) p {
    color: #333
}

.p-contactThanks main .contents>.outer>.inner>h2 {
    font-size: 24px;
    font-weight: 600;
    letter-spacing: .05em;
    line-height: 1.5em;
    margin-bottom: 30px
}

@media(max-width:768px) {
    .p-contactThanks main .contents>.outer>.inner>h2 {
        font-size: 3.84vw;
        margin-bottom: 5.12vw
    }
}

.p-contactThanks main .contents>.outer>.inner>p {
    font-size: 16px;
    letter-spacing: .05em;
    line-height: 1.5em;
    margin-bottom: 60px
}

@media(max-width:768px) {
    .p-contactThanks main .contents>.outer>.inner>p {
        font-size: 3.33vw;
        margin-bottom: 10.25vw
    }
}

.p-contactThanks main .contents>.outer>.inner>a.link {
    background-color: #333;
    border-radius: 9999px;
    color: #fff;
    display: block;
    font-family: Zen Maru Gothic;
    font-size: 16px;
    letter-spacing: .02em;
    line-height: 1em;
    margin: 0 auto;
    padding: 22px 0;
    text-align: center;
    width: 160px
}

@media(max-width:768px) {
    .p-contactThanks main .contents>.outer>.inner>a.link {
        font-size: 3.84vw;
        margin: 0 auto;
        padding: 4.35vw 0 4.61vw;
        width: 35.89vw
    }
}

.p-contactThanks main .contents>.outer>.inner>a.link:hover {
    cursor: pointer
}

@media(min-width:769px) {
    .p-contactThanks main .contents>.outer>.inner>a.link:hover {
        animation: hover-bounce .5s ease 1
    }
}

.p-about {
    background-color: #ffeb35
}

.p-about main>.copy {
    overflow: hidden;
    padding-bottom: 150px;
    width: 100%
}

@media(max-width:768px) {
    .p-about main>.copy {
        padding-bottom: 22.56vw
    }
}

.p-about main>.copy>.inner {
    margin: 0 auto;
    max-width: 1064px;
    padding: 0 20px;
    width: 100%
}

@media(max-width:768px) {
    .p-about main>.copy>.inner {
        max-width: 100%;
        padding: 0
    }
}

.p-about main>.copy>.inner .title-pages {
    padding-bottom: 96px
}

@media(max-width:768px) {
    .p-about main>.copy>.inner .title-pages {
        padding-bottom: 15.38vw
    }
}

.p-about main>.copy>.inner .title-pages .ja {
    margin-top: 0
}

.p-about main>.copy>.inner .blocks {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between
}

@media(max-width:920px) {
    .p-about main>.copy>.inner .blocks {
        display: block
    }
}

.p-about main>.copy>.inner .blocks .left p {
    color: #1e22b0;
    font-family: Zen Maru Gothic;
    font-size: 20px;
    letter-spacing: .02em;
    line-height: 1.7em;
    padding-top: 67px;
    width: 584px
}

@media(max-width:920px) {
    .p-about main>.copy>.inner .blocks .left p {
        padding-top: 0;
        text-align: center;
        width: 100%
    }
}

@media(max-width:768px) {
    .p-about main>.copy>.inner .blocks .left p {
        font-size: 4.1vw;
        margin-bottom: 16.41vw
    }
}

.p-about main>.copy>.inner .blocks .right {
    width: calc(100% - 586px)
}

@media(max-width:920px) {
    .p-about main>.copy>.inner .blocks .right {
        margin: 30px auto 0;
        width: 500px
    }
}

@media(max-width:768px) {
    .p-about main>.copy>.inner .blocks .right {
        margin: 0;
        position: relative;
        width: 100%;
        z-index: 0
    }
}

.p-about main>.copy>.inner .blocks .right .imgWrap {
    position: relative
}

.p-about main>.copy>.inner .blocks .right .imgWrap:after {
    animation: about-text 60s linear infinite;
    background-image: url(/images/about/text-copy.svg);
    background-repeat: no-repeat;
    background-size: cover;
    bottom: -6.6398390342%;
    content: "";
    display: block;
    height: 180px;
    height: 36.2173038229%;
    position: absolute;
    right: -9.1954022989%;
    width: 180px;
    width: 41.3793103448%
}

@media(max-width:1020px) {
    .p-about main>.copy>.inner .blocks .right .imgWrap:after {
        right: 0
    }
}

@media(max-width:768px) {
    .p-about main>.copy>.inner .blocks .right .imgWrap:after {
        bottom: -6.5vw;
        height: 25.64vw;
        right: 8.2vw;
        top: auto;
        width: 25.64vw
    }
}

@keyframes about-text {
    0% {
        transform: rotate(0deg)
    }

    to {
        transform: rotate(-359deg)
    }
}

@media(max-width:768px) {
    .p-about main>.copy>.inner .blocks .right .imgWrap img {
        display: block;
        margin: 0 auto;
        width: 67.69vw
    }
}

.p-about main>.copy>.inner .blocks .right .animWrap .anim {
    display: block;
    position: absolute;
    top: 0;
    z-index: 1
}

.p-about main>.copy>.inner .blocks .right .animWrap .anim.anim-1 {
    animation: index-news-shou 3s linear infinite;
    left: 9.33vw;
    top: 10.89vw;
    width: 18.06vw
}

.p-about main>.copy>.inner .blocks .right .animWrap .anim.anim-2 {
    animation: index-news-shou 3s linear 1.5s infinite;
    left: 23.83vw;
    top: 1.27vw;
    width: 12.11vw
}

.p-about main>.copy>.inner .blocks .right .animWrap .anim.anim-3 {
    animation: index-news-shou 3s linear infinite;
    left: 17.66vw;
    top: -3.99vw;
    width: 5.85vw
}

@keyframes about-anim {
    0% {
        transform: rotate(0deg)
    }

    24% {
        transform: rotate(0deg)
    }

    25% {
        transform: rotate(10deg)
    }

    49% {
        transform: rotate(10deg)
    }

    50% {
        transform: rotate(0deg)
    }

    74% {
        transform: rotate(0deg)
    }

    75% {
        transform: rotate(-10deg)
    }

    99% {
        transform: rotate(-10deg)
    }

    to {
        transform: rotate(0deg)
    }
}

.p-about main .detail>.inner {
    margin: 0 auto;
    max-width: 1064px;
    padding: 0 20px;
    width: 100%
}

@media(max-width:768px) {
    .p-about main .detail>.inner {
        padding: 0
    }
}

.p-about main .detail>.inner .buttons {
    margin-bottom: 150px
}

@media(max-width:768px) {
    .p-about main .detail>.inner .buttons {
        margin: 0 auto 20.51vw;
        width: 83.58vw
    }
}

.p-about main .detail>.inner .buttons ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between
}

@media(max-width:768px) {
    .p-about main .detail>.inner .buttons ul {
        display: block
    }
}

.p-about main .detail>.inner .buttons ul li {
    background-color: #1e22b0;
    border-radius: 9999px;
    position: relative;
    width: calc(33.33333% - 21.33333px)
}

@media(max-width:1010px) {
    .p-about main .detail>.inner .buttons ul li {
        width: calc(33.33333% - 10.66667px)
    }
}

@media(max-width:768px) {
    .p-about main .detail>.inner .buttons ul li {
        margin-bottom: 6.15vw;
        width: 100%
    }

    .p-about main .detail>.inner .buttons ul li:last-child {
        margin-bottom: 0
    }
}

.p-about main .detail>.inner .buttons ul li:last-child a {
    padding: 19px 0 19px 40px
}

@media(max-width:768px) {
    .p-about main .detail>.inner .buttons ul li:last-child a {
        padding: 4.61vw 0 4.87vw
    }
}

.p-about main .detail>.inner .buttons ul li a {
    display: block;
    padding: 29px 0 30px 40px
}

@media(max-width:980px) {
    .p-about main .detail>.inner .buttons ul li a {
        padding: 19px 0 19px 40px
    }
}

@media(max-width:768px) {
    .p-about main .detail>.inner .buttons ul li a {
        padding: 4.61vw 0 4.87vw;
        text-align: center
    }
}

.p-about main .detail>.inner .buttons ul li a p {
    color: #fff;
    font-family: Zen Maru Gothic;
    font-size: 16px;
    letter-spacing: .05em;
    line-height: 1.3em
}

@media(max-width:870px) {
    .p-about main .detail>.inner .buttons ul li a p {
        font-size: 13px
    }
}

@media(max-width:768px) {
    .p-about main .detail>.inner .buttons ul li a p {
        font-size: 3.33vw;
        letter-spacing: .02em;
        line-height: 1
    }
}

.p-about main .detail>.inner .buttons ul li a p .mid {
    display: none
}

@media(max-width:980px) {
    .p-about main .detail>.inner .buttons ul li a p .mid {
        display: block
    }
}

@media(max-width:768px) {
    .p-about main .detail>.inner .buttons ul li a p .mid {
        display: none
    }
}

.p-about main .detail>.inner .buttons ul li a .arrowWrap {
    height: 30px;
    position: relative;
    position: absolute;
    right: 0;
    right: 20px;
    top: 50%;
    transform: translateY(-50%);
    width: 30px
}

.p-about main .detail>.inner .buttons ul li a .arrowWrap:before {
    content: "";
    display: block;
    position: absolute
}

@media(max-width:768px) {
    .p-about main .detail>.inner .buttons ul li a .arrowWrap {
        height: 6.15vw;
        width: 6.15vw
    }
}

.p-about main .detail>.inner .buttons ul li a .arrowWrap:before {
    background-color: #1e22b0;
    border-radius: 50%;
    height: 30px;
    left: 0;
    top: 0;
    width: 30px;
    z-index: 0
}

@media(max-width:768px) {
    .p-about main .detail>.inner .buttons ul li a .arrowWrap:before {
        display: none
    }
}

.p-about main .detail>.inner .buttons ul li a .arrowWrap .arrow {
    background-image: url(/images/common/arrow-blue.svg);
    display: block;
    height: 30px;
    position: relative;
    width: 30px;
    z-index: 1
}

@media(max-width:768px) {
    .p-about main .detail>.inner .buttons ul li a .arrowWrap .arrow {
        height: 6.15vw;
        width: 6.15vw
    }

    .p-about main .detail>.inner .buttons ul li a .arrowWrap {
        right: 3.84vw
    }
}

.p-about main .detail>.inner .buttons ul li a .arrowWrap:before {
    background-color: #ffeb35
}

.p-about main .detail>.inner .buttons ul li a .arrowWrap .arrow {
    background-image: url(/images/about/icon-arrow-down.svg);
    background-repeat: no-repeat;
    background-size: contain
}

@media(min-width:769px) {
    .p-about main .detail>.inner .buttons ul li:hover {
        animation: hover-bounce .5s ease 1;
        cursor: pointer
    }

    .p-about main .detail>.inner .buttons ul li:hover .arrowWrap:before {
        transform: scale(1.5);
        transform-origin: center;
        transition: .5s
    }
}

@media(max-width:768px) {
    .p-about main .detail>.inner>section {
        margin: 0 auto;
        width: 91.79vw
    }
}

.p-about main .detail>.inner>section .inner {
    background-color: #fff;
    border-radius: 50px;
    padding: 100px 80px
}

@media(max-width:768px) {
    .p-about main .detail>.inner>section .inner {
        border-radius: 6.41vw;
        padding: 10.25vw 7.69vw
    }
}

.p-about main .detail>.inner>section .headline {
    margin-bottom: 100px
}

@media(max-width:768px) {
    .p-about main .detail>.inner>section .headline {
        margin-bottom: 12.82vw
    }
}

.p-about main .detail>.inner>section .headline h2 {
    color: #1e22b0;
    font-family: Zen Maru Gothic;
    font-size: 32px;
    letter-spacing: .05em;
    line-height: 1em;
    margin-bottom: 50px
}

@media(max-width:768px) {
    .p-about main .detail>.inner>section .headline h2 {
        font-size: 6.15vw;
        letter-spacing: .02em;
        line-height: 1.3em;
        margin-bottom: 7.69vw
    }
}

.p-about main .detail>.inner>section .headline p {
    color: #333;
    font-family: Zen Maru Gothic;
    font-size: 16px;
    letter-spacing: .02em;
    line-height: 1.7em
}

@media(max-width:768px) {
    .p-about main .detail>.inner>section .headline p {
        font-size: 3.58vw;
        letter-spacing: .05em
    }
}

.p-about main .detail>.inner>section .textblock {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between
}

@media(max-width:768px) {
    .p-about main .detail>.inner>section .textblock {
        display: block
    }
}

.p-about main .detail>.inner>section .textblock .left {
    width: calc(100% - 360px)
}

@media(max-width:950px) {
    .p-about main .detail>.inner>section .textblock .left {
        width: calc(100% - 260px)
    }
}

@media(max-width:768px) {
    .p-about main .detail>.inner>section .textblock .left {
        width: 100%
    }
}

.p-about main .detail>.inner>section .textblock .left h3 {
    color: #333;
    font-family: Zen Maru Gothic;
    font-size: 24px;
    letter-spacing: .05em;
    line-height: 1em;
    margin-bottom: 20px;
    padding-left: 18px;
    position: relative
}

.p-about main .detail>.inner>section .textblock .left h3:before {
    content: "";
    display: block
}

@media(max-width:840px) {
    .p-about main .detail>.inner>section .textblock .left h3 {
        font-size: 18px
    }
}

@media(max-width:768px) {
    .p-about main .detail>.inner>section .textblock .left h3 {
        font-size: 4.61vw;
        margin-bottom: 5.12vw;
        padding-left: 4.1vw
    }
}

.p-about main .detail>.inner>section .textblock .left h3:before {
    background-color: #333;
    border-radius: 50%;
    height: 8px;
    left: 0;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 8px
}

@media(max-width:768px) {
    .p-about main .detail>.inner>section .textblock .left h3:before {
        height: 1.53vw;
        width: 1.53vw
    }
}

.p-about main .detail>.inner>section .textblock .left p {
    font-feature-settings: "palt";
    color: #333;
    font-size: 13px;
    letter-spacing: .05em;
    line-height: 1.7em
}

@media(max-width:768px) {
    .p-about main .detail>.inner>section .textblock .left p {
        font-size: 3.33vw
    }
}

.p-about main .detail>.inner>section .textblock .left a {
    align-items: center;
    display: inline-flex;
    margin-top: 21px;
    position: relative;
    z-index: 0
}

@media(max-width:768px) {
    .p-about main .detail>.inner>section .textblock .left a {
        margin-top: 5.12vw
    }
}

.p-about main .detail>.inner>section .textblock .left a span {
    display: block;
    font-size: 13px;
    font-weight: 600;
    letter-spacing: .02em;
    line-height: 1.7em;
    margin-right: 10px
}

@media(max-width:768px) {
    .p-about main .detail>.inner>section .textblock .left a span {
        font-size: 2.82vw;
        line-height: 1em;
        margin-right: 1.28vw
    }
}

.p-about main .detail>.inner>section .textblock .left a .arrowWrap {
    height: 24px;
    left: 0;
    position: absolute;
    position: relative;
    right: 0;
    top: 50%;
    top: 0;
    transform: translateY(-50%);
    transform: translateY(0);
    width: 24px
}

.p-about main .detail>.inner>section .textblock .left a .arrowWrap:before {
    content: "";
    display: block;
    position: absolute
}

@media(max-width:768px) {
    .p-about main .detail>.inner>section .textblock .left a .arrowWrap {
        height: 6.15vw;
        width: 6.15vw
    }
}

.p-about main .detail>.inner>section .textblock .left a .arrowWrap:before {
    background-color: #1e22b0;
    border-radius: 50%;
    height: 24px;
    left: 0;
    top: 0;
    width: 24px;
    z-index: 0
}

@media(max-width:768px) {
    .p-about main .detail>.inner>section .textblock .left a .arrowWrap:before {
        display: none
    }
}

.p-about main .detail>.inner>section .textblock .left a .arrowWrap .arrow {
    background-image: url(/images/common/arrow-blue.svg);
    background-repeat: no-repeat;
    background-size: contain;
    display: block;
    height: 24px;
    position: relative;
    width: 24px;
    z-index: 1
}

@media(max-width:768px) {
    .p-about main .detail>.inner>section .textblock .left a .arrowWrap .arrow {
        height: 6.15vw;
        width: 6.15vw
    }
}

@media(min-width:769px) {
    .p-about main .detail>.inner>section .textblock .left a:hover .arrowWrap:before {
        transform: scale(1.5);
        transform-origin: center;
        transition: .5s
    }
}

.p-about main .detail>.inner>section .textblock .right {
    width: 328px
}

@media(max-width:950px) {
    .p-about main .detail>.inner>section .textblock .right {
        width: 240px
    }
}

@media(max-width:768px) {
    .p-about main .detail>.inner>section .textblock .right {
        margin-top: 7.69vw;
        width: 100%
    }
}

.p-about main .detail>.inner>section .textblock .right img {
    display: block;
    width: 100%
}

@media(max-width:768px) {
    .p-about main .detail>.inner>section .textblock .right img {
        border-radius: 6.41vw
    }
}

.p-about main .detail>.inner .section-1,
.p-about main .detail>.inner .section-2 {
    margin-bottom: 80px
}

@media(max-width:768px) {

    .p-about main .detail>.inner .section-1,
    .p-about main .detail>.inner .section-2 {
        margin-bottom: 10.25vw
    }
}

.p-about main .detail>.inner section.section-1 .textblock {
    margin-bottom: 60px
}

@media(max-width:768px) {
    .p-about main .detail>.inner section.section-1 .textblock {
        margin-bottom: 12.82vw
    }
}

.p-about main .detail>.inner section.section-1 .banner {
    background-image: url(/images/about/img-1-3.png);
    background-position: 50%;
    background-repeat: no-repeat;
    background-size: 100%;
    background-size: 100% auto;
    border-radius: 15px;
    display: block;
    height: 219px;
    margin-top: 90px;
    position: relative;
    width: 100%;
    z-index: 0
}

@media(max-width:1064px) {
    .p-about main .detail>.inner section.section-1 .banner {
        background-size: cover
    }
}

@media(max-width:768px) {
    .p-about main .detail>.inner section.section-1 .banner {
        background-image: url(/images/about/img-1-3-sp.png);
        border-radius: 6.41vw;
        height: 76.41vw;
        margin-top: 12.82vw;
        width: 76.41vw
    }
}

@media(min-width:769px) {
    .p-about main .detail>.inner section.section-1 .banner:hover {
        background-size: 120%;
        transition: background-size .6s
    }
}

.p-about main .detail>.inner section.section-1 .banner span {
    color: #fff;
    display: block;
    font-family: Zen Maru Gothic;
    font-size: 20px;
    left: 50%;
    letter-spacing: .05em;
    line-height: 1.7em;
    position: absolute;
    text-align: center;
    top: 50%;
    transform: translateX(-50%) translateY(-50%);
    width: 100%
}

@media(max-width:768px) {
    .p-about main .detail>.inner section.section-1 .banner span {
        font-size: 4.61vw
    }
}

.p-about main .detail>.inner section.section-2 .textblock {
    margin-bottom: 50px
}

@media(max-width:768px) {
    .p-about main .detail>.inner section.section-2 .textblock {
        margin-bottom: 12.82vw
    }
}

.p-about main .detail>.inner section.section-2 .listblock h4 {
    color: #333;
    font-family: Zen Maru Gothic;
    font-size: 20px;
    letter-spacing: .05em;
    line-height: 1em;
    margin-bottom: 40px
}

@media(max-width:768px) {
    .p-about main .detail>.inner section.section-2 .listblock h4 {
        font-size: 4.61vw;
        margin-bottom: 7.69vw
    }
}

.p-about main .detail>.inner section.section-2 .listblock ul li {
    width: calc(25% - 21px)
}

@media(max-width:768px) {
    .p-about main .detail>.inner section.section-2 .listblock ul li {
        width: 34.87vw
    }

    .p-about main .detail>.inner section.section-2 .listblock ul li:first-child,
    .p-about main .detail>.inner section.section-2 .listblock ul li:nth-child(2) {
        margin-bottom: 5.12vw
    }
}

.p-about main .detail>.inner section.section-2 .listblock ul li .thumbnail {
    width: 100%
}

.p-about main .detail>.inner section.section-2 .listblock ul li .thumbnail img {
    display: block
}

@media(max-width:768px) {
    .p-about main .detail>.inner section.section-2 .listblock ul li .thumbnail img {
        border-radius: 6.41vw
    }
}

.p-about main .detail>.inner section.section-2 .listblock ul li p {
    color: #333;
    font-family: Zen Maru Gothic;
    font-size: 14px;
    letter-spacing: .05em;
    line-height: 1em;
    margin-top: 20px
}

@media(max-width:768px) {
    .p-about main .detail>.inner section.section-2 .listblock ul li p {
        font-size: 2.56vw;
        margin-top: 2.56vw
    }
}

.p-about main .detail>.inner section.section-2 .listblock-1 {
    margin-bottom: 100px
}

@media(max-width:768px) {
    .p-about main .detail>.inner section.section-2 .listblock-1 {
        margin-bottom: 16.15vw
    }
}

.p-about main .detail>.inner section.section-2 .listblock-1 ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between
}

.p-about main .detail>.inner section.section-2 .listblock-2 ul {
    display: flex
}

@media(max-width:768px) {
    .p-about main .detail>.inner section.section-2 .listblock-2 ul {
        justify-content: space-between
    }
}

.p-about main .detail>.inner section.section-2 .listblock-2 ul li:first-child {
    margin-right: 28px
}

@media(max-width:768px) {
    .p-about main .detail>.inner section.section-2 .listblock-2 ul li:first-child {
        margin-right: 0
    }
}

.p-about main .detail>.inner section.section-2 .listblock-2 ul li p {
    font-size: 14px;
    letter-spacing: .05em;
    line-height: 1.5em
}

@media(max-width:768px) {
    .p-about main .detail>.inner section.section-2 .listblock-2 ul li p {
        font-size: 2.56vw
    }
}

.p-about main .detail>.inner section.section-2 .listblock-2 ul li a {
    display: block;
    font-size: 14px;
    letter-spacing: .05em;
    line-height: 1.5em
}

@media(max-width:768px) {
    .p-about main .detail>.inner section.section-2 .listblock-2 ul li a {
        font-size: 2.56vw
    }
}

.p-about main .detail>.inner section.section-2 .listblock-2 ul li a .thumbnail {
    border-radius: 25px;
    overflow: hidden;
    position: relative;
    z-index: 0
}

.p-about main .detail>.inner section.section-2 .listblock-2 ul li a .thumbnail:before {
    content: "";
    display: block;
    position: absolute
}

@media(max-width:768px) {
    .p-about main .detail>.inner section.section-2 .listblock-2 ul li a .thumbnail {
        border-radius: 6.41vw
    }
}

.p-about main .detail>.inner section.section-2 .listblock-2 ul li a .thumbnail.deco:before {
    background-image: url(/images/about/icon-list-2.png);
    background-repeat: no-repeat;
    background-size: cover;
    height: 100%;
    left: 0;
    top: 0;
    width: 100%;
    z-index: 2
}

.p-about main .detail>.inner section.section-2 .listblock-2 ul li a .thumbnail img {
    display: block;
    position: relative;
    z-index: 1
}

.p-about main .detail>.inner section.section-2 .listblock-2 ul li a .textWrap {
    position: relative;
    z-index: 0
}

.p-about main .detail>.inner section.section-2 .listblock-2 ul li a .textWrap .text {
    color: #333;
    display: block;
    font-family: Zen Maru Gothic;
    font-size: 14px;
    letter-spacing: .05em;
    line-height: 1.5em;
    margin-top: 20px;
    padding-right: 50px
}

@media(max-width:768px) {
    .p-about main .detail>.inner section.section-2 .listblock-2 ul li a .textWrap .text {
        font-size: 2.56vw;
        line-height: 1.3em;
        margin-top: 2.56vw;
        padding-right: 2.56vw
    }
}

.p-about main .detail>.inner section.section-2 .listblock-2 ul li a .textWrap .arrowWrap {
    height: 24px;
    position: relative;
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 24px
}

.p-about main .detail>.inner section.section-2 .listblock-2 ul li a .textWrap .arrowWrap:before {
    content: "";
    display: block;
    position: absolute
}

@media(max-width:768px) {
    .p-about main .detail>.inner section.section-2 .listblock-2 ul li a .textWrap .arrowWrap {
        height: 4.1vw;
        width: 4.1vw
    }
}

.p-about main .detail>.inner section.section-2 .listblock-2 ul li a .textWrap .arrowWrap:before {
    background-color: #1e22b0;
    border-radius: 50%;
    height: 24px;
    left: 0;
    top: 0;
    width: 24px;
    z-index: 0
}

@media(max-width:768px) {
    .p-about main .detail>.inner section.section-2 .listblock-2 ul li a .textWrap .arrowWrap:before {
        display: none
    }
}

.p-about main .detail>.inner section.section-2 .listblock-2 ul li a .textWrap .arrowWrap .arrow {
    background-image: url(/images/common/arrow-blue.svg);
    background-repeat: no-repeat;
    background-size: contain;
    display: block;
    height: 24px;
    position: relative;
    width: 24px;
    z-index: 1
}

@media(max-width:768px) {
    .p-about main .detail>.inner section.section-2 .listblock-2 ul li a .textWrap .arrowWrap .arrow {
        height: 4.1vw;
        width: 4.1vw
    }

    .p-about main .detail>.inner section.section-2 .listblock-2 ul li a .textWrap .arrowWrap {
        right: 2.05vw
    }
}

@media(min-width:769px) {
    .p-about main .detail>.inner section.section-2 .listblock-2 ul li a:hover .arrowWrap:before {
        transform: scale(1.5);
        transform-origin: center;
        transition: .5s
    }

    .p-about main .detail>.inner section.section-2 .listblock-2 ul li a:hover .thumbnail img {
        transform: scale(1.2);
        transform-origin: center;
        transition: .5s
    }
}

.p-about main .detail>.inner section.section-2 .listblock-2 ul li:nth-child(2) a .textWrap .text {
    padding-right: 0
}

@media(max-width:768px) {
    .p-about main .detail>.inner section.section-2 .listblock-2 ul li:nth-child(2) a .textWrap .arrowWrap {
        right: 0
    }
}

.p-about main .detail>.inner section.section-3 .headline {
    margin-bottom: 50px
}

@media(max-width:768px) {
    .p-about main .detail>.inner section.section-3 .headline {
        margin-bottom: 7.69vw
    }

    .p-about main .detail>.inner section.section-3 .headline h2 {
        font-size: 6.41vw
    }
}

.p-about main .detail>.inner section.section-3 .textblock .left {
    max-width: 458px
}

.p-about main .detail>.inner section.section-3 .textblock .left p {
    color: #333;
    font-family: Zen Maru Gothic;
    font-size: 16px;
    letter-spacing: .05em;
    line-height: 1.7em
}

@media(max-width:768px) {
    .p-about main .detail>.inner section.section-3 .textblock .left p {
        font-size: 3.58vw;
        margin-bottom: 10.25vw
    }
}

@media(min-width:769px) {
    .p-about main .detail>.inner section.section-3 .textblock .left a {
        display: none
    }
}

.p-about main .detail>.inner section.section-3 .textblock .left a.first {
    margin-top: 0
}

.p-about main .detail>.inner section.section-3 .textblock .left a.first .arrowWrap .arrow {
    background-image: url(/images/about/icon-arrow-blank.svg)
}

.p-about main .detail>.inner section.section-3 .links {
    display: flex;
    margin-top: 50px
}

@media(max-width:768px) {
    .p-about main .detail>.inner section.section-3 .links {
        display: none
    }
}

.p-about main .detail>.inner section.section-3 .links a {
    align-items: center;
    display: inline-flex;
    position: relative;
    z-index: 0
}

@media(max-width:768px) {
    .p-about main .detail>.inner section.section-3 .links a {
        margin-top: 5.12vw
    }
}

.p-about main .detail>.inner section.section-3 .links a:first-child {
    margin-right: 50px
}

.p-about main .detail>.inner section.section-3 .links a span {
    display: block;
    font-size: 13px;
    font-weight: 600;
    letter-spacing: .02em;
    line-height: 1.7em;
    margin-right: 10px
}

@media(max-width:768px) {
    .p-about main .detail>.inner section.section-3 .links a span {
        font-size: 2.82vw;
        line-height: 1em;
        margin-right: 1.28vw
    }
}

.p-about main .detail>.inner section.section-3 .links a .arrowWrap {
    height: 24px;
    left: 0;
    position: absolute;
    position: relative;
    right: 0;
    top: 50%;
    top: 0;
    transform: translateY(-50%);
    transform: translateY(0);
    width: 24px
}

.p-about main .detail>.inner section.section-3 .links a .arrowWrap:before {
    content: "";
    display: block;
    position: absolute
}

@media(max-width:768px) {
    .p-about main .detail>.inner section.section-3 .links a .arrowWrap {
        height: 6.15vw;
        width: 6.15vw
    }
}

.p-about main .detail>.inner section.section-3 .links a .arrowWrap:before {
    background-color: #1e22b0;
    border-radius: 50%;
    height: 24px;
    left: 0;
    top: 0;
    width: 24px;
    z-index: 0
}

@media(max-width:768px) {
    .p-about main .detail>.inner section.section-3 .links a .arrowWrap:before {
        display: none
    }
}

.p-about main .detail>.inner section.section-3 .links a .arrowWrap .arrow {
    background-image: url(/images/common/arrow-blue.svg);
    background-repeat: no-repeat;
    background-size: contain;
    display: block;
    height: 24px;
    position: relative;
    width: 24px;
    z-index: 1
}

@media(max-width:768px) {
    .p-about main .detail>.inner section.section-3 .links a .arrowWrap .arrow {
        height: 6.15vw;
        width: 6.15vw
    }
}

@media(min-width:769px) {
    .p-about main .detail>.inner section.section-3 .links a:hover .arrowWrap:before {
        transform: scale(1.5);
        transform-origin: center;
        transition: .5s
    }
}

.p-about main .detail>.inner section.section-3 .links a:first-child .arrowWrap .arrow {
    background-image: url(/images/about/icon-arrow-blank.svg)
}

.p-app {
    background-color: #ffeb35
}

.p-app main>.copy {
    overflow: hidden;
    padding-bottom: 150px;
    width: 100%
}

@media(max-width:768px) {
    .p-app main>.copy {
        padding-bottom: 22.56vw
    }
}

.p-app main>.copy>.inner {
    margin: 0 auto;
    max-width: 1064px;
    padding: 0 20px;
    width: 100%
}

@media(max-width:768px) {
    .p-app main>.copy>.inner {
        max-width: 100%
    }
}

.p-app main>.copy>.inner .title-pages {
    padding-bottom: 100px
}

@media(max-width:768px) {
    .p-app main>.copy>.inner .title-pages {
        padding-bottom: 15.38vw
    }
}

.p-app main>.copy>.inner .title-pages .ja {
    margin-top: 0
}

.p-app main>.copy>.inner .lead {
    margin: 0 auto;
    max-width: 848px
}

.p-app main>.copy>.inner .lead>p {
    color: #1e22b0;
    font-family: Zen Maru Gothic;
    font-size: 16px;
    letter-spacing: .03em;
    line-height: 1.7em
}

@media(max-width:768px) {
    .p-app main>.copy>.inner .lead>p {
        font-size: 3.58vw;
        letter-spacing: .05em
    }
}

.p-app main>.copy>.inner .lead .youtube {
    margin: 80px auto 0;
    max-width: 672px;
    position: relative
}

@media(max-width:768px) {
    .p-app main>.copy>.inner .lead .youtube {
        margin-top: 10.25vw
    }
}

.p-app main>.copy>.inner .lead .youtube:after {
    content: "";
    display: block;
    padding-top: 56.25%;
    width: 100%
}

.p-app main>.copy>.inner .lead .youtube iframe {
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%
}

.p-app main>.copy>.inner .lead .bnr {
    margin: 80px auto 0
}

@media(max-width:768px) {
    .p-app main>.copy>.inner .lead .bnr {
        margin-top: 10.25vw
    }
}

.p-app main>.copy>.inner .lead .note {
    margin: 50px 0 0
}

@media(max-width:768px) {
    .p-app main>.copy>.inner .lead .note {
        margin-top: 5.12vw
    }
}

.p-app main>.copy>.inner .lead .note li {
    color: #1e22b0;
    font-size: 13px;
    letter-spacing: .026em;
    line-height: 1.7em
}

@media(max-width:768px) {
    .p-app main>.copy>.inner .lead .note li {
        font-size: 2.82vw;
        letter-spacing: .05em;
        line-height: 1.5
    }
}

.p-app main>.copy>.inner .lead .btn {
    background-color: #1e22b0;
    border-radius: 9999px;
    margin: 80px auto 0;
    position: relative;
    width: 496px
}

@media(max-width:768px) {
    .p-app main>.copy>.inner .lead .btn {
        margin-top: 12.82vw;
        width: 100%
    }
}

.p-app main>.copy>.inner .lead .btn a {
    display: block;
    padding: 29px 0 30px
}

@media(max-width:768px) {
    .p-app main>.copy>.inner .lead .btn a {
        padding: 4.61vw 0 4.87vw;
        text-align: center
    }
}

.p-app main>.copy>.inner .lead .btn a p {
    color: #fff;
    font-family: Zen Maru Gothic;
    font-size: 16px;
    letter-spacing: .05em;
    line-height: 1.3em;
    text-align: center
}

@media(max-width:768px) {
    .p-app main>.copy>.inner .lead .btn a p {
        font-size: 3.33vw;
        letter-spacing: .02em;
        line-height: 1
    }
}

.p-app main>.copy>.inner .lead .btn a .arrowWrap {
    height: 30px;
    position: relative;
    position: absolute;
    right: 0;
    right: 20px;
    top: 50%;
    transform: translateY(-50%);
    width: 30px
}

.p-app main>.copy>.inner .lead .btn a .arrowWrap:before {
    content: "";
    display: block;
    position: absolute
}

@media(max-width:768px) {
    .p-app main>.copy>.inner .lead .btn a .arrowWrap {
        height: 6.15vw;
        width: 6.15vw
    }
}

.p-app main>.copy>.inner .lead .btn a .arrowWrap:before {
    background-color: #1e22b0;
    border-radius: 50%;
    height: 30px;
    left: 0;
    top: 0;
    width: 30px;
    z-index: 0
}

@media(max-width:768px) {
    .p-app main>.copy>.inner .lead .btn a .arrowWrap:before {
        display: none
    }
}

.p-app main>.copy>.inner .lead .btn a .arrowWrap .arrow {
    background-image: url(/images/common/arrow-blue.svg);
    display: block;
    height: 30px;
    position: relative;
    width: 30px;
    z-index: 1
}

@media(max-width:768px) {
    .p-app main>.copy>.inner .lead .btn a .arrowWrap .arrow {
        height: 6.15vw;
        width: 6.15vw
    }

    .p-app main>.copy>.inner .lead .btn a .arrowWrap {
        right: 3.84vw
    }
}

.p-app main>.copy>.inner .lead .btn a .arrowWrap:before {
    background-color: #ffeb35
}

.p-app main>.copy>.inner .lead .btn a .arrowWrap .arrow {
    background-image: url(/images/about/icon-arrow-down.svg);
    background-repeat: no-repeat;
    background-size: contain
}

@media(min-width:769px) {
    .p-app main>.copy>.inner .lead .btn:hover {
        animation: hover-bounce .5s ease 1;
        cursor: pointer
    }

    .p-app main>.copy>.inner .lead .btn:hover .arrowWrap:before {
        transform: scale(1.5);
        transform-origin: center;
        transition: .5s
    }
}

.p-app main .detail>.inner {
    margin: 0 auto;
    max-width: 1064px;
    padding: 0 20px;
    width: 100%
}

@media(max-width:768px) {
    .p-app main .detail>.inner {
        padding: 0
    }

    .p-app main .detail>.inner>.section {
        margin: 0 auto;
        width: 91.79vw
    }
}

.p-app main .detail>.inner>.section .inner {
    background-color: #fff;
    border-radius: 50px;
    padding: 100px 80px
}

@media(max-width:768px) {
    .p-app main .detail>.inner>.section .inner {
        border-radius: 6.41vw;
        padding: 10.25vw 7.69vw
    }
}

.p-app main .detail>.inner>.section .secTtl {
    color: #1e22b0;
    font-family: Zen Maru Gothic;
    font-size: 32px;
    letter-spacing: .05em;
    line-height: 1.5em;
    margin-bottom: 80px
}

@media(max-width:768px) {
    .p-app main .detail>.inner>.section .secTtl {
        font-size: 6.15vw;
        letter-spacing: .02em;
        line-height: 1.3;
        margin-bottom: 12.82vw
    }
}

.p-app main .detail>.inner>.section p {
    color: #333;
    font-size: 13px;
    letter-spacing: .02em;
    line-height: 1.7em
}

@media(max-width:768px) {
    .p-app main .detail>.inner>.section p {
        font-size: 3.33vw;
        letter-spacing: .05em
    }
}

.p-app main .detail>.inner>.section p+p {
    margin-top: 40px
}

@media(max-width:768px) {
    .p-app main .detail>.inner>.section p+p {
        margin-top: 7.69vw
    }
}

.p-app main .detail>.inner>.section .inner>ul+* {
    margin-top: 40px
}

@media(max-width:768px) {
    .p-app main .detail>.inner>.section .inner>ul+* {
        margin-top: 7.69vw
    }
}

.p-app main .detail>.inner>.section .textblock {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-bottom: 60px
}

@media(max-width:768px) {
    .p-app main .detail>.inner>.section .textblock {
        display: block;
        margin-bottom: 12.82vw
    }

    .p-app main .detail>.inner>.section .textblock:last-child {
        margin-bottom: 0
    }
}

.p-app main .detail>.inner>.section .textblock .left {
    width: calc(100% - 360px)
}

@media(max-width:950px) {
    .p-app main .detail>.inner>.section .textblock .left {
        width: calc(100% - 260px)
    }
}

@media(max-width:768px) {
    .p-app main .detail>.inner>.section .textblock .left {
        width: 100%
    }
}

.p-app main .detail>.inner>.section .textblock .left h3.subTtl {
    margin-bottom: 40px
}

@media(max-width:768px) {
    .p-app main .detail>.inner>.section .textblock .left h3.subTtl {
        margin-bottom: 7.69vw
    }
}

.p-app main .detail>.inner>.section .textblock .left h3.subTtl b {
    color: #1e22b0;
    display: block;
    font-family: Rammetto One;
    font-size: 28px;
    letter-spacing: 0;
    line-height: 1em;
    margin-bottom: 20px
}

@media(max-width:768px) {
    .p-app main .detail>.inner>.section .textblock .left h3.subTtl b {
        font-size: 6.15vw;
        margin-bottom: 2.56vw
    }
}

.p-app main .detail>.inner>.section .textblock .left h3.subTtl span {
    color: #1e22b0;
    display: block;
    font-family: Zen Maru Gothic;
    font-size: 14px;
    letter-spacing: .02em;
    line-height: 1em
}

@media(max-width:768px) {
    .p-app main .detail>.inner>.section .textblock .left h3.subTtl span {
        font-size: 3.58vw;
        margin-bottom: 1.28vw
    }
}

.p-app main .detail>.inner>.section .textblock .left .note {
    margin-top: 20px
}

@media(max-width:768px) {
    .p-app main .detail>.inner>.section .textblock .left .note {
        margin-top: 5.12vw
    }
}

.p-app main .detail>.inner>.section .textblock .left .note li {
    font-size: 11px;
    letter-spacing: .05em;
    line-height: 1.7em
}

@media(max-width:768px) {
    .p-app main .detail>.inner>.section .textblock .left .note li {
        font-size: 2.82vw;
        letter-spacing: .05em
    }
}

.p-app main .detail>.inner>.section .textblock .right {
    width: 328px
}

@media(max-width:950px) {
    .p-app main .detail>.inner>.section .textblock .right {
        width: 240px
    }
}

@media(max-width:768px) {
    .p-app main .detail>.inner>.section .textblock .right {
        margin-top: 7.69vw;
        width: 100%
    }
}

.p-app main .detail>.inner>.section .textblock .right img {
    display: block;
    width: 100%
}

@media(max-width:768px) {
    .p-app main .detail>.inner>.section .textblock .right img {
        border-radius: 6.41vw
    }
}

.p-app main .detail>.inner .app {
    margin: 80px auto 0;
    padding-top: 87px
}

@media(max-width:768px) {
    .p-app main .detail>.inner .app {
        margin: 10.25vw auto 0;
        padding-top: 13.58vw;
        width: 91.79vw
    }
}

.p-app main .detail>.inner .app .inner {
    background-color: #1e22b0;
    border-radius: 50px;
    padding: 100px 30px;
    position: relative;
    text-align: center
}

@media(max-width:768px) {
    .p-app main .detail>.inner .app .inner {
        border-radius: 6.41vw;
        padding: 21.28vw 5.12vw 10.25vw
    }
}

.p-app main .detail>.inner .app .ttl a {
    align-items: center;
    color: #fff;
    display: flex;
    font-family: Zen Maru Gothic;
    font-size: 32px;
    justify-content: center;
    letter-spacing: .05em;
    line-height: 1em
}

@media(max-width:768px) {
    .p-app main .detail>.inner .app .ttl a {
        font-size: 6.15vw;
        letter-spacing: .05em
    }
}

.p-app main .detail>.inner .app .ttl .arrowWrap {
    height: 24px;
    left: 0;
    margin-left: 10px;
    position: absolute;
    position: relative;
    right: 0;
    top: 50%;
    top: 0;
    transform: translateY(-50%);
    transform: translateY(0);
    width: 24px
}

.p-app main .detail>.inner .app .ttl .arrowWrap:before {
    content: "";
    display: block;
    position: absolute
}

@media(max-width:768px) {
    .p-app main .detail>.inner .app .ttl .arrowWrap {
        height: 6.15vw;
        width: 6.15vw
    }
}

.p-app main .detail>.inner .app .ttl .arrowWrap:before {
    background-color: #1e22b0;
    border-radius: 50%;
    height: 24px;
    left: 0;
    top: 0;
    width: 24px;
    z-index: 0
}

@media(max-width:768px) {
    .p-app main .detail>.inner .app .ttl .arrowWrap:before {
        display: none
    }
}

.p-app main .detail>.inner .app .ttl .arrowWrap .arrow {
    background-image: url(/images/common/arrow-blue.svg);
    display: block;
    height: 24px;
    position: relative;
    width: 24px;
    z-index: 1
}

@media(max-width:768px) {
    .p-app main .detail>.inner .app .ttl .arrowWrap .arrow {
        height: 6.15vw;
        width: 6.15vw
    }

    .p-app main .detail>.inner .app .ttl .arrowWrap {
        margin-left: 2.56vw
    }
}

.p-app main .detail>.inner .app .ttl .arrowWrap .arrow {
    background-image: url(/images/common/arrow-yellow.svg);
    background-repeat: no-repeat;
    background-size: contain
}

@media(min-width:769px) {
    .p-app main .detail>.inner .app .ttl a:hover .arrowWrap .arrow {
        transform: scale(1.5);
        transform-origin: center;
        transition: .5s
    }
}

.p-app main .detail>.inner .app .face {
    left: 50%;
    position: absolute;
    top: -87px;
    transform: translateX(-50%);
    width: 125px
}

@media(max-width:768px) {
    .p-app main .detail>.inner .app .face {
        top: -13.59vw;
        width: 23.07vw
    }
}

.p-app main .detail>.inner .app .qr {
    margin: 50px auto 0;
    width: 120px
}

@media(max-width:768px) {
    .p-app main .detail>.inner .app .qr {
        display: none
    }
}

.p-app main .detail>.inner .app .downloads {
    display: flex;
    justify-content: center;
    margin: 40px auto 0
}

@media(max-width:768px) {
    .p-app main .detail>.inner .app .downloads {
        justify-content: space-between;
        margin-top: 10.25vw
    }
}

.p-app main .detail>.inner .app .downloads .btn:first-child {
    width: 163px
}

@media(max-width:768px) {
    .p-app main .detail>.inner .app .downloads .btn:first-child {
        width: 35.12vw
    }
}

.p-app main .detail>.inner .app .downloads .btn:last-child {
    margin-left: 32px;
    width: 203px
}

@media(max-width:768px) {
    .p-app main .detail>.inner .app .downloads .btn:last-child {
        margin-left: 3.84vw;
        width: 43.58vw
    }
}

.p-app main .detail>.inner .app .downloads .btn a {
    display: block
}

@media(min-width:769px) {
    .p-app main .detail>.inner .app .downloads .btn a:hover {
        animation: hover-bounce .5s ease 1
    }

    @keyframes hover-bounce {
        0% {
            transform: scale(1)
        }

        40% {
            transform: scale(.85)
        }

        to {
            transform: scale(1)
        }
    }
}

.p-app main .detail>.inner .app .inner>p {
    color: #fff;
    font-size: 13px;
    letter-spacing: .05em;
    line-height: 1.7em;
    margin: 40px auto 0
}

@media(max-width:768px) {
    .p-app main .detail>.inner .app .inner>p {
        font-size: 2.82vw;
        letter-spacing: .05em;
        margin-top: 7.69vw;
        padding-left: 2.56vw;
        padding-right: 2.56vw;
        text-align: left
    }
}

.p-app main .detail>.inner .section-2 {
    margin-top: 100px
}

@media(max-width:768px) {
    .p-app main .detail>.inner .section-2 {
        margin-top: 10.25vw
    }
}

.p-app main .detail>.inner .section-2 .inner {
    background-color: #f2f2f6
}

@media(max-width:768px) {
    .p-app main .detail>.inner .section-2 .inner {
        overflow: hidden
    }
}

.p-app main .detail>.inner .section-2 .inner .secTtl {
    margin-bottom: 40px
}

.p-app main .detail>.inner .section-2 .inner .lead {
    color: #1e22b0;
    font-family: Zen Maru Gothic;
    font-size: 16px;
    letter-spacing: .02em;
    line-height: 1.7em
}

.p-app main .detail>.inner .section-2 .inner .splide {
    margin-top: 100px
}

@media(max-width:768px) {
    .p-app main .detail>.inner .section-2 .inner .splide {
        margin-top: 12.82vw;
        padding-left: 3.84vw;
        padding-right: 3.84vw
    }
}

@media(min-width:769px) {
    .p-app main .detail>.inner .section-2 .inner .splide .splide__track {
        overflow: hidden
    }
}

.p-app main .detail>.inner .section-2 .inner .splide ul.splide__list {
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    display: flex;
    margin: 0 !important;
    padding: 0 !important
}

.p-app main .detail>.inner .section-2 .inner .splide ul.splide__list li {
    background-color: #fff;
    border-radius: 25px;
    display: flex;
    flex-direction: column;
    flex-shrink: 0;
    justify-content: space-between;
    padding: 47px 0 25px;
    position: relative
}

@media(max-width:768px) {
    .p-app main .detail>.inner .section-2 .inner .splide ul.splide__list li {
        padding: 12.05vw 0 5.12vw
    }
}

.p-app main .detail>.inner .section-2 .inner .splide ul.splide__list li .num {
    align-items: center;
    background-color: #1e22b0;
    border-radius: 50%;
    color: #ffeb35;
    display: flex;
    font-family: Rammetto One;
    font-size: 16px;
    height: 50px;
    justify-content: center;
    left: 0;
    letter-spacing: 0;
    line-height: 1em;
    position: absolute;
    top: 0;
    width: 50px
}

@media(max-width:768px) {
    .p-app main .detail>.inner .section-2 .inner .splide ul.splide__list li .num {
        font-size: 4.1vw;
        height: 12.82vw;
        width: 12.82vw
    }
}

.p-app main .detail>.inner .section-2 .inner .splide ul.splide__list li .txt {
    color: #1e22b0;
    font-family: Zen Maru Gothic;
    font-size: 13px;
    letter-spacing: .02em;
    line-height: 1.5em;
    margin-top: 34px;
    padding: 0 25px
}

@media(max-width:768px) {
    .p-app main .detail>.inner .section-2 .inner .splide ul.splide__list li .txt {
        font-size: 3.58vw
    }
}

.p-app main .detail>.inner .section-2 .inner .splide .splide__sr {
    display: none
}

.p-app main .detail>.inner .section-2 .inner .splide .splide__pagination {
    display: flex;
    justify-content: center;
    margin-top: 30px;
    overflow: hidden;
    position: relative;
    z-index: 1
}

@media(max-width:768px) {
    .p-app main .detail>.inner .section-2 .inner .splide .splide__pagination {
        margin-top: 7.69vw
    }
}

.p-app main .detail>.inner .section-2 .inner .splide .splide__pagination li {
    border-radius: 50%;
    height: 16px;
    list-style: none;
    margin: 0 3px;
    overflow: hidden;
    position: relative;
    width: 16px;
    z-index: 0
}

.p-app main .detail>.inner .section-2 .inner .splide .splide__pagination li:after,
.p-app main .detail>.inner .section-2 .inner .splide .splide__pagination li:before {
    content: "";
    display: block;
    position: absolute
}

@media(max-width:768px) {
    .p-app main .detail>.inner .section-2 .inner .splide .splide__pagination li {
        height: 4.61vw;
        margin: 0;
        width: 4.61vw
    }
}

.p-app main .detail>.inner .section-2 .inner .splide .splide__pagination li button {
    background-color: #e1e1e8;
    border-radius: 50%;
    box-sizing: content-box;
    display: block;
    height: 8px;
    left: 50%;
    position: absolute;
    top: 50%;
    transform: translateX(-50%) translateY(-50%);
    width: 8px;
    z-index: 2
}

@media(max-width:768px) {
    .p-app main .detail>.inner .section-2 .inner .splide .splide__pagination li button {
        border-width: .76vw;
        height: 2.05vw;
        width: 2.05vw
    }
}

.p-app main .detail>.inner .section-2 .inner .splide .splide__pagination li button:hover {
    cursor: pointer
}

.p-app main .detail>.inner .section-2 .inner .splide .splide__pagination li button.is-active {
    background-color: #1e22b0
}

.p-app main .detail>.inner .section-3,
.p-app main .detail>.inner .section-4 {
    margin-top: 100px
}

@media(max-width:768px) {

    .p-app main .detail>.inner .section-3,
    .p-app main .detail>.inner .section-4 {
        margin-top: 10.25vw
    }
}

.p-app main .detail>.inner .section-3 .list,
.p-app main .detail>.inner .section-4 .list {
    margin-top: 40px
}

@media(max-width:768px) {

    .p-app main .detail>.inner .section-3 .list,
    .p-app main .detail>.inner .section-4 .list {
        margin-top: 7.69vw
    }
}

.p-app main .detail>.inner .section-3 .list li,
.p-app main .detail>.inner .section-4 .list li {
    font-size: 13px;
    font-weight: 600;
    letter-spacing: .05em;
    line-height: 1.7em;
    padding-left: 1em;
    position: relative
}

@media(max-width:768px) {

    .p-app main .detail>.inner .section-3 .list li,
    .p-app main .detail>.inner .section-4 .list li {
        font-size: 3.33vw;
        letter-spacing: .05em
    }
}

.p-app main .detail>.inner .section-3 .list li:before,
.p-app main .detail>.inner .section-4 .list li:before {
    content: "・";
    left: 0;
    position: absolute;
    top: 0
}

.p-app main .detail>.inner .section-3 .list li+li,
.p-app main .detail>.inner .section-4 .list li+li {
    margin-top: 30px
}

@media(max-width:768px) {

    .p-app main .detail>.inner .section-3 .list li+li,
    .p-app main .detail>.inner .section-4 .list li+li {
        margin-top: 5.12vw
    }
}

.p-app main .detail>.inner .section-3 .note,
.p-app main .detail>.inner .section-4 .note {
    margin-top: 40px
}

@media(max-width:768px) {

    .p-app main .detail>.inner .section-3 .note,
    .p-app main .detail>.inner .section-4 .note {
        margin-top: 7.69vw
    }
}

.p-app main .detail>.inner .section-3 .note li,
.p-app main .detail>.inner .section-4 .note li {
    font-size: 13px;
    letter-spacing: .05em;
    line-height: 1.7em
}

@media(max-width:768px) {

    .p-app main .detail>.inner .section-3 .note li,
    .p-app main .detail>.inner .section-4 .note li {
        font-size: 3.33vw;
        letter-spacing: .05em
    }
}

.p-app main .detail>.inner .section-3 a,
.p-app main .detail>.inner .section-4 a {
    align-items: center;
    display: inline-flex;
    margin-top: 50px;
    position: relative;
    z-index: 0
}

@media(max-width:768px) {

    .p-app main .detail>.inner .section-3 a,
    .p-app main .detail>.inner .section-4 a {
        margin-top: 7.69vw
    }
}

.p-app main .detail>.inner .section-3 a span,
.p-app main .detail>.inner .section-4 a span {
    display: block;
    font-size: 13px;
    font-weight: 600;
    letter-spacing: .02em;
    line-height: 1.7em;
    margin-right: 10px
}

@media(max-width:768px) {

    .p-app main .detail>.inner .section-3 a span,
    .p-app main .detail>.inner .section-4 a span {
        font-size: 2.82vw;
        line-height: 1em;
        margin-right: 1.28vw
    }
}

.p-app main .detail>.inner .section-3 a .arrowWrap,
.p-app main .detail>.inner .section-4 a .arrowWrap {
    height: 24px;
    left: 0;
    position: absolute;
    position: relative;
    right: 0;
    top: 50%;
    top: 0;
    transform: translateY(-50%);
    transform: translateY(0);
    width: 24px
}

.p-app main .detail>.inner .section-3 a .arrowWrap:before,
.p-app main .detail>.inner .section-4 a .arrowWrap:before {
    content: "";
    display: block;
    position: absolute
}

@media(max-width:768px) {

    .p-app main .detail>.inner .section-3 a .arrowWrap,
    .p-app main .detail>.inner .section-4 a .arrowWrap {
        height: 6.15vw;
        width: 6.15vw
    }
}

.p-app main .detail>.inner .section-3 a .arrowWrap:before,
.p-app main .detail>.inner .section-4 a .arrowWrap:before {
    background-color: #1e22b0;
    border-radius: 50%;
    height: 24px;
    left: 0;
    top: 0;
    width: 24px;
    z-index: 0
}

@media(max-width:768px) {

    .p-app main .detail>.inner .section-3 a .arrowWrap:before,
    .p-app main .detail>.inner .section-4 a .arrowWrap:before {
        display: none
    }
}

.p-app main .detail>.inner .section-3 a .arrowWrap .arrow,
.p-app main .detail>.inner .section-4 a .arrowWrap .arrow {
    background-image: url(/images/common/arrow-blue.svg);
    background-repeat: no-repeat;
    background-size: contain;
    display: block;
    height: 24px;
    position: relative;
    width: 24px;
    z-index: 1
}

@media(max-width:768px) {

    .p-app main .detail>.inner .section-3 a .arrowWrap .arrow,
    .p-app main .detail>.inner .section-4 a .arrowWrap .arrow {
        height: 6.15vw;
        width: 6.15vw
    }
}

@media(min-width:769px) {

    .p-app main .detail>.inner .section-3 a:hover .arrowWrap .arrow,
    .p-app main .detail>.inner .section-4 a:hover .arrowWrap .arrow {
        transform: scale(1.5);
        transform-origin: center;
        transition: .5s
    }
}

.p-app main .detail>.inner .section-4 a .arrowWrap .arrow {
    background-image: url(/images/about/icon-arrow-blank.svg)
}

.p-app main .detail>.inner .section-5 {
    margin-top: 100px
}

@media(max-width:768px) {
    .p-app main .detail>.inner .section-5 {
        margin-top: 10.25vw
    }
}

.p-app main .detail>.inner .section-5 .qa-list+.qa-list {
    margin-top: 50px
}

@media(max-width:768px) {
    .p-app main .detail>.inner .section-5 .qa-list+.qa-list {
        margin-top: 7.69vw
    }
}

.p-app main .detail>.inner .section-5 .qa-list dd,
.p-app main .detail>.inner .section-5 .qa-list dt {
    font-size: 13px;
    font-weight: 600;
    letter-spacing: .02em;
    line-height: 1.7em;
    padding-left: 46px;
    position: relative
}

@media(max-width:768px) {

    .p-app main .detail>.inner .section-5 .qa-list dd,
    .p-app main .detail>.inner .section-5 .qa-list dt {
        font-size: 3.33vw;
        padding-left: 10.25vw
    }
}

.p-app main .detail>.inner .section-5 .qa-list dd span,
.p-app main .detail>.inner .section-5 .qa-list dt span {
    font-family: Rammetto One;
    font-size: 26px;
    left: 0;
    letter-spacing: 0;
    line-height: 1em;
    position: absolute;
    top: 50%;
    transform: translateY(-50%)
}

@media(max-width:768px) {

    .p-app main .detail>.inner .section-5 .qa-list dd span,
    .p-app main .detail>.inner .section-5 .qa-list dt span {
        font-size: 7.69vw
    }
}

.p-app main .detail>.inner .section-5 .qa-list dd {
    color: #1e22b0;
    margin-left: 0;
    margin-top: 20px
}

@media(max-width:768px) {
    .p-app main .detail>.inner .section-5 .qa-list dd {
        margin-top: 2.56vw
    }
}

.p-app main .detail>.inner .section-5 .qa-list dd p {
    color: #1e22b0
}

.p-app main .detail>.inner .section-5 .qa-list dd p+p {
    margin-top: 20px
}

@media(max-width:768px) {
    .p-app main .detail>.inner .section-5 .qa-list dd p+p {
        margin-top: 2.56vw
    }
}

.p-app main .detail>.inner .section-5 .qa-list dd b {
    font-weight: 700;
    text-decoration: underline
}

.p-app main .detail>.inner .section-5 .txt {
    margin-top: 50px
}

@media(max-width:768px) {
    .p-app main .detail>.inner .section-5 .txt {
        margin-top: 7.69vw
    }
}

.p-404 main>section {
    background-color: #ffeb35;
    position: relative
}

.p-404 main>section:before {
    background-image: url(/images/404/bg-404.svg);
    background-position: bottom;
    background-size: 100%;
    content: "";
    height: 726px;
    left: 50%;
    position: absolute;
    top: 0;
    transform: translateX(-50%);
    width: 2931px;
    z-index: 0
}

@media(max-width:768px) {
    .p-404 main>section:before {
        background-image: url(/images/404/bg-404-sp.svg);
        background-size: 100%;
        bottom: auto;
        height: 156.28vw;
        top: 0;
        width: 100vw
    }
}

.p-404 main>section .inner {
    margin: 0 auto;
    max-width: 1064px;
    padding: 244px 20px 100px;
    position: relative;
    text-align: center;
    width: 100%;
    z-index: 3
}

@media(max-width:768px) {
    .p-404 main>section .inner {
        padding-bottom: 26.66vw;
        padding-top: 51.28vw
    }
}

.p-404 main>section .inner .ttl {
    color: #1e22b0;
    font-family: Rammetto One;
    font-size: 100px
}

@media(max-width:768px) {
    .p-404 main>section .inner .ttl {
        font-size: 15.38vw
    }
}

.p-404 main>section .inner .copy {
    color: #1e22b0;
    font-family: Zen Maru Gothic;
    font-size: 16px;
    line-height: 1.7;
    margin-top: 20px
}

@media(max-width:768px) {
    .p-404 main>section .inner .copy {
        font-size: 3.58vw;
        margin-top: 3.84vw
    }
}

.p-404 main>section .inner .c-button {
    margin-top: 40px
}

@media(max-width:768px) {
    .p-404 main>section .inner .c-button {
        margin-top: 7.69vw
    }
}