@charset "UTF-8";@import"https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;600&display=swap";@import"https://fonts.googleapis.com/css2?family=Jost:wght@400&text=0123456789&display=swap";/*! normalize.css v3.0.0 | MIT License | git.io/normalize */
body,h1,h2,h3,h4,h5,h6,p,ul,ol,dl,table,pre {
    margin: 0
}

article,aside,details,figcaption,figure,footer,header,hgroup,main,nav,section,summary {
    display: block
}

audio,canvas,progress,video {
    display: inline-block;
    vertical-align: baseline
}

audio:not([controls]) {
    display: none;
    height: 0
}

[hidden],template {
    display: none
}

a {
    background: transparent
}

a:active,a:hover {
    outline: 0
}

p,li,dt,dd,th,td,pre {
    -ms-line-break: strict;
    -ms-word-break: break-strict;
    line-break: strict;
    word-break: break-strict
}

abbr[title] {
    border-bottom: 1px dotted
}

b,strong {
    font-weight: 700
}

dfn {
    font-style: italic
}

h1 {
    font-size: 1.5em
}

mark {
    background: #ff0;
    color: #000
}

small {
    font-size: 80%
}

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

sup {
    top: -.25em
}

sub {
    bottom: -.25em
}

img {
    max-width: 100%;
    border: 0;
    vertical-align: middle
}

svg:not(:root) {
    overflow: hidden
}

figure {
    margin: 1em 40px
}

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

pre {
    overflow: auto
}

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

button,input,optgroup,select,textarea {
    margin: 0;
    color: inherit;
    font: inherit
}

button {
    overflow: visible
}

button,select {
    text-transform: none
}

button,html input[type=button],input[type=reset],input[type=submit] {
    -webkit-appearance: button;
    cursor: pointer
}

button[disabled],html input[disabled] {
    cursor: default
}

button::-moz-focus-inner,input::-moz-focus-inner {
    padding: 0;
    border: 0
}

input {
    line-height: normal
}

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

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

input[type=search] {
    -webkit-appearance: textfield;
    box-sizing: content-box
}

input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration {
    -webkit-appearance: none
}

fieldset {
    margin: 0 2px;
    padding: .35em .625em .75em;
    border: 1px solid #c0c0c0
}

legend {
    padding: 0;
    border: 0
}

textarea {
    overflow: auto
}

optgroup {
    font-weight: 700
}

table {
    border-collapse: collapse;
    border-spacing: 0
}

td,th {
    padding: 0
}

* {
    box-sizing: border-box;
    margin: 0;
    padding: 0
}

body {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    width: 100svw;
    overflow-x: hidden;
    background-color: #fff;
    color: #333;
    font-family: Noto Sans JP,serif
}

figure {
    margin: 0
}

picture {
    display: block;
    width: 100%;
    height: auto
}

img {
    -o-object-fit: cover;
    width: 100%;
    height: auto;
    object-fit: cover
}

video {
    width: 100%;
    height: auto
}

ul,ol {
    list-style: none
}

.u-onlyPc {
    display: none
}

.u-onlySp {
    display: block
}

.u-visuallyHidden {
    contain: strict!important;
    visibility: initial!important;
    position: fixed!important;
    inline-size: 4px!important;
    block-size: 4px!important;
    margin: unset!important;
    inset: 0!important;
    padding: unset!important;
    border: unset!important;
    opacity: 0!important;
    pointer-events: none!important
}

.u-fontFamilyEn {
    font-weight: 300;
    font-family: Jost,sans-serif
}

.u-fadeUp {
    animation: fadeUp 1s ease forwards
}

.u-fadeIn {
    animation: fadeIn 1s ease forwards
}

.u-fadeDown {
    animation: fadeDown 1s ease forwards
}

.u-scaleUp {
    animation: scaleUp 1s ease-in-out forwards
}

.u-blur {
    animation: blur 1.3s ease-in-out forwards
}

.u-textAnimation {
    overflow: hidden
}

.u-textAnimation .js-char {
    display: inline-block;
    transform: translateY(1.5em);
    opacity: 0;
    transition: opacity .3s cubic-bezier(.4,0,.2,1),transform .3s cubic-bezier(.4,0,.2,1);
    transition-delay: calc(.5s + var(--delay))
}

.u-textAnimation .js-char.is-visible {
    transform: translateY(0);
    opacity: 1
}

@keyframes scrollBarAnime {
    0% {
        height: 100%;
        opacity: .5
    }

    to {
        height: 0;
        opacity: 1
    }
}

@keyframes arrowMove {
    0% {
        bottom: 0%
    }

    50% {
        bottom: 4%
    }

    to {
        bottom: 0%
    }
}

@keyframes fadeUp {
    0% {
        transform: translateY(2rem);
        opacity: 0
    }

    to {
        transform: translateY(0);
        opacity: 1
    }
}

@keyframes fadeIn {
    0% {
        opacity: 0
    }

    to {
        opacity: 1
    }
}

@keyframes fadeDown {
    0% {
        transform: translateY(-3rem);
        opacity: 0
    }

    to {
        transform: translateY(0);
        opacity: 1
    }
}

@keyframes scaleUp {
    0% {
        transform: scale(.9);
        opacity: 0
    }

    to {
        transform: scale(1);
        opacity: 1
    }
}

@keyframes blur {
    0% {
        scale: .5;
        filter: blur(50px)
    }

    to {
        scale: 1;
        filter: blur(0)
    }
}

.l-main__btnWrapper {
    margin-top: 4.9875rem;
    margin-bottom: 4.2875rem;
    text-align: center
}

.splide__container {
    box-sizing: border-box;
    position: relative
}

.splide__list {
    display: flex;
    height: 100%;
    margin: 0!important;
    padding: 0!important;
    backface-visibility: hidden
}

.splide.is-initialized:not(.is-active) .splide__list {
    display: block
}

.splide__pagination {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    margin: 0;
    pointer-events: none
}

.splide__pagination li {
    display: inline-block;
    margin: 0;
    line-height: 1;
    list-style-type: none;
    pointer-events: auto
}

.splide:not(.is-overflow) .splide__pagination {
    display: none
}

.splide__progress__bar {
    width: 0
}

.splide {
    visibility: hidden;
    position: relative
}

.splide.is-initialized,.splide.is-rendered {
    visibility: visible
}

.splide__slide {
    box-sizing: border-box;
    position: relative;
    flex-shrink: 0;
    margin: 0;
    backface-visibility: hidden;
    list-style-type: none!important
}

.splide__slide img {
    vertical-align: bottom
}

.splide__spinner {
    contain: strict;
    display: inline-block;
    position: absolute;
    inset: 0;
    width: 20px;
    height: 20px;
    margin: auto;
    border: 2px solid #999;
    border-radius: 50%;
    border-left-color: transparent;
    animation: splide-loading 1s linear infinite
}

.splide__sr {
    clip: rect(0 0 0 0);
    position: absolute;
    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;
    overflow: hidden;
    border: 0
}

.splide__toggle.is-active .splide__toggle__play,.splide__toggle__pause {
    display: none
}

.splide__toggle.is-active .splide__toggle__pause {
    display: inline
}

.splide__track {
    z-index: 0;
    position: relative;
    overflow: hidden
}

@keyframes splide-loading {
    0% {
        transform: rotate(0)
    }

    to {
        transform: rotate(1turn)
    }
}

.splide__track--draggable {
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none
}

.splide__track--fade>.splide__list>.splide__slide {
    z-index: 0;
    margin: 0!important;
    opacity: 0
}

.splide__track--fade>.splide__list>.splide__slide.is-active {
    z-index: 1;
    opacity: 1
}

.splide--rtl {
    direction: rtl
}

.splide__track--ttb>.splide__list {
    display: block
}

.splide__arrow {
    display: flex;
    z-index: 1;
    position: absolute;
    top: 50%;
    align-items: center;
    justify-content: center;
    width: 2em;
    height: 2em;
    padding: 0;
    transform: translateY(-50%);
    border: 0;
    border-radius: 50%;
    background: #ccc;
    cursor: pointer;
    opacity: .7
}

.splide__arrow svg {
    fill: #000;
    width: 1.2em;
    height: 1.2em
}

.splide__arrow:hover:not(:disabled) {
    opacity: .9
}

.splide__arrow:disabled {
    opacity: .3
}

.splide__arrow:focus-visible {
    outline: 3px solid #0bf;
    outline-offset: 3px
}

.splide__arrow--prev {
    left: 1em
}

.splide__arrow--prev svg {
    transform: scaleX(-1)
}

.splide__arrow--next {
    right: 1em
}

.splide.is-focus-in .splide__arrow:focus {
    outline: 3px solid #0bf;
    outline-offset: 3px
}

.splide__pagination {
    z-index: 1;
    position: absolute;
    right: 0;
    bottom: .5em;
    left: 0;
    padding: 0 1em
}

.splide__pagination__page {
    display: inline-block;
    position: relative;
    width: 8px;
    height: 8px;
    margin: 3px;
    padding: 0;
    border: 0;
    border-radius: 50%;
    background: #ccc;
    opacity: .7;
    transition: transform .2s linear
}

.splide__pagination__page.is-active {
    z-index: 1;
    transform: scale(1.4);
    background: #fff
}

.splide__pagination__page:hover {
    cursor: pointer;
    opacity: .9
}

.splide__pagination__page:focus-visible {
    outline: 3px solid #0bf;
    outline-offset: 3px
}

.splide.is-focus-in .splide__pagination__page:focus {
    outline: 3px solid #0bf;
    outline-offset: 3px
}

.splide__progress__bar {
    height: 3px;
    background: #ccc
}

.splide__slide {
    -webkit-tap-highlight-color: rgba(0,0,0,0)
}

.splide__slide:focus {
    outline: 0
}

@supports (outline-offset: -3px) {
    .splide__slide:focus-visible {
        outline:3px solid #0bf;
        outline-offset: -3px
    }
}

@supports (outline-offset: -3px) {
    .splide.is-focus-in .splide__slide:focus {
        outline:3px solid #0bf;
        outline-offset: -3px
    }
}

.splide__toggle {
    cursor: pointer
}

.splide__toggle:focus-visible {
    outline: 3px solid #0bf;
    outline-offset: 3px
}

.splide.is-focus-in .splide__toggle:focus {
    outline: 3px solid #0bf;
    outline-offset: 3px
}

.splide__track--nav>.splide__list>.splide__slide {
    border: 3px solid transparent;
    cursor: pointer
}

.splide__track--nav>.splide__list>.splide__slide.is-active {
    border: 3px solid #000
}

.splide__arrows--rtl .splide__arrow--prev {
    right: 1em;
    left: auto
}

.splide__arrows--rtl .splide__arrow--prev svg {
    transform: scaleX(1)
}

.splide__arrows--rtl .splide__arrow--next {
    right: auto;
    left: 1em
}

.splide__arrows--rtl .splide__arrow--next svg {
    transform: scaleX(-1)
}

.splide__arrows--ttb .splide__arrow {
    left: 50%;
    transform: translate(-50%)
}

.splide__arrows--ttb .splide__arrow--prev {
    top: 1em
}

.splide__arrows--ttb .splide__arrow--prev svg {
    transform: rotate(-90deg)
}

.splide__arrows--ttb .splide__arrow--next {
    top: auto;
    bottom: 1em
}

.splide__arrows--ttb .splide__arrow--next svg {
    transform: rotate(90deg)
}

.splide__pagination--ttb {
    display: flex;
    inset: 0 .5em 0 auto;
    flex-direction: column;
    padding: 1em 0
}

.c-btn {
    display: inline-flex;
    align-items: center;
    justify-content: space-between;
    padding: 1rem 1.2125rem .9375rem 1.375rem;
    gap: .55625rem;
    border: 1px solid #968525;
    border-radius: 3.125rem;
    background-color: #968525;
    color: #fff;
    font-weight: 600;
    font-size: 1rem;
    line-height: 1.0625;
    font-family: Noto Sans JP,serif;
    letter-spacing: .05rem;
    text-decoration: none;
    transition: background-color .3s ease,color .3s ease
}

.c-btn[type=sub] {
    padding: 1.125rem 1.40625rem 1.125rem 3.75rem;
    gap: 1.91875rem;
    border: 1px solid #D8BFAE;
    background-color: #d8bfae;
    transition: opacity .3s ease
}

.c-btn:after {
    width: .914375rem;
    height: .914375rem;
    background-image: url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='14.625'%20height='14.625'%20viewBox='0%200%2014.625%2014.625'%3e%3cdefs%3e%3cstyle%3e.a{fill:%23fff;}%3c/style%3e%3c/defs%3e%3cg%20transform='translate(-3.375%20-3.375)'%3e%3cpath%20class='a'%20d='M14.614,10.18a.681.681,0,0,1,.96,0l3.354,3.364a.678.678,0,0,1,.021.935l-3.3,3.315a.677.677,0,1,1-.96-.956l2.809-2.851-2.879-2.851A.671.671,0,0,1,14.614,10.18Z'%20transform='translate(-5.52%20-3.304)'/%3e%3cpath%20class='a'%20d='M3.375,10.688a7.313,7.313,0,1,0,7.313-7.312A7.311,7.311,0,0,0,3.375,10.688Zm1.125,0a6.194,6.194,0,1,1,1.814,4.373A6.134,6.134,0,0,1,4.5,10.688Z'/%3e%3c/g%3e%3c/svg%3e");
    background-size: contain;
    background-repeat: no-repeat;
    content: ""
}

.c-btn[type=sub]:after {
    width: .42625rem;
    height: .745rem;
    background-image: url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='6.818'%20height='11.924'%20viewBox='0%200%206.818%2011.924'%3e%3cpath%20id='Icon_ionic-ios-arrow-forward'%20data-name='Icon%20ionic-ios-arrow-forward'%20d='M16.009,12.156,11.5,7.647a.849.849,0,0,1,0-1.2.859.859,0,0,1,1.207,0l5.112,5.109a.851.851,0,0,1,.025,1.175l-5.134,5.144a.852.852,0,1,1-1.207-1.2Z'%20transform='translate(-11.246%20-6.196)'%20fill='%23fff'/%3e%3c/svg%3e")
}

.c-btn__line {
    display: inline-grid;
    position: relative;
    grid-template-columns: 1fr auto;
    justify-items: center;
    width: 15.625rem;
    padding: 1rem 1.15rem .9375rem 1.3125rem;
    border: 1px solid #71D077;
    background-color: #fff;
    color: #71d077
}

.c-btn__line:after {
    position: absolute;
    top: calc(50% - .4571875rem);
    right: 1.0875rem;
    background-image: url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='14.625'%20height='14.625'%20viewBox='0%200%2014.625%2014.625'%3e%3cdefs%3e%3cstyle%3e.a{fill:%2371d077;}%3c/style%3e%3c/defs%3e%3cg%20transform='translate(-3.375%20-3.375)'%3e%3cpath%20class='a'%20d='M14.614,10.18a.681.681,0,0,1,.96,0l3.354,3.364a.678.678,0,0,1,.021.935l-3.3,3.315a.677.677,0,1,1-.96-.956l2.809-2.851-2.879-2.851A.671.671,0,0,1,14.614,10.18Z'%20transform='translate(-5.52%20-3.304)'/%3e%3cpath%20class='a'%20d='M3.375,10.688a7.313,7.313,0,1,0,7.313-7.312A7.311,7.311,0,0,0,3.375,10.688Zm1.125,0a6.194,6.194,0,1,1,1.814,4.373A6.134,6.134,0,0,1,4.5,10.688Z'/%3e%3c/g%3e%3c/svg%3e");
    content: ""
}

.c-btnLine {
    max-width: 17.625rem;
    margin: 3.125rem auto 0;
    padding: 1rem 1rem 1.25rem;
    background-color: #71d077
}

.c-btnLine__linkContainer {
    -moz-text-align-last: left;
    display: grid;
    grid-template-columns: 1fr;
    gap: .5625rem;
    text-align-last: left
}

.c-btnLine__linkInner {
    display: grid;
    grid-template-columns: 2.5rem 1fr;
    align-items: center;
    max-width: 14.3125rem;
    margin: 0 auto
}

.c-btnLine__text {
    color: #fff;
    font-weight: 700;
    font-size: 1rem;
    line-height: 1.25;
    font-family: Noto Sans JP,serif;
    letter-spacing: .15rem
}

.c-btnLine__linkBtnWrapper {
    padding: 0
}

.c-btnLineSmall {
    height: 2.25rem;
    color: #fff;
    font-weight: 600;
    font-size: .8125rem;
    line-height: 1.4615384615;
    font-family: Noto Sans JP,serif;
    letter-spacing: .05rem;
    text-decoration: none;
    transition: opacity .3s ease,color .3s ease
}

.c-btnLineSmall .c-btnLineSmall__container {
    display: inline-flex;
    align-items: center;
    justify-content: space-between;
    height: inherit;
    padding: .55625rem .65rem .50625rem .80625rem;
    gap: .55625rem;
    border: 1px solid #71D077;
    border-radius: 3.125rem;
    background-color: #71d077
}

.c-btnLineSmall .c-btnLineSmall__container:after {
    width: .914375rem;
    height: .914375rem;
    background-image: url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='14.625'%20height='14.625'%20viewBox='0%200%2014.625%2014.625'%3e%3cdefs%3e%3cstyle%3e.a{fill:%23fff;}%3c/style%3e%3c/defs%3e%3cg%20transform='translate(-3.375%20-3.375)'%3e%3cpath%20class='a'%20d='M14.614,10.18a.681.681,0,0,1,.96,0l3.354,3.364a.678.678,0,0,1,.021.935l-3.3,3.315a.677.677,0,1,1-.96-.956l2.809-2.851-2.879-2.851A.671.671,0,0,1,14.614,10.18Z'%20transform='translate(-5.52%20-3.304)'/%3e%3cpath%20class='a'%20d='M3.375,10.688a7.313,7.313,0,1,0,7.313-7.312A7.311,7.311,0,0,0,3.375,10.688Zm1.125,0a6.194,6.194,0,1,1,1.814,4.373A6.134,6.134,0,0,1,4.5,10.688Z'/%3e%3c/g%3e%3c/svg%3e");
    background-size: contain;
    background-repeat: no-repeat;
    content: ""
}

.c-btnLineSmall .c-btnLine__linkIcon {
    display: block;
    width: 1.23rem;
    height: 1.23rem
}

.c-templateListCard {
    display: block;
    overflow: hidden;
    background: #fff
}

.c-templateListCard__imgLink {
    display: block;
    text-decoration: none
}

.c-templateListCard__imgBox {
    position: relative;
    aspect-ratio: 215/450;
    margin: 0;
    overflow: hidden;
    border: 1px solid #ccc;
}

.c-templateListCard__img {
    -o-object-fit: cover;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: opacity .3s ease
}

.c-templateListCard__img:hover {
    opacity: .8
}

.c-templateListCard__titleLink {
    display: block;
    margin-top: 5.1282051282svw;
    color: inherit;
    text-decoration: none;
    transition: opacity .3s ease
}

.c-templateListCard__titleLink:hover {
    opacity: .8
}

.c-templateListCard__title {
    color: #333;
    font-weight: 400;
    font-size: 4.6153846154svw;
    line-height: 1.4444444444;
    letter-spacing: .05em
}

.c-templateListCard__desc {
    margin-top: 5.641025641svw;
    color: #333;
    font-weight: 300;
    font-size: 3.5897435897svw;
    line-height: 1.4285714286;
    letter-spacing: .025em
}

.c-templateListCard__desc span{
    background-color: #ABC1C6;
    color: #fff;
    font-size: 12px;
    font-weight: 500;
    padding: 2px 10px;
    margin-right: 5px;
    border-radius: 60px;
}

.c-templateListCard__linkBtn {
    display: block;
    width: -moz-fit-content;
    width: fit-content;
    margin-top: 5.1282051282svw;
    padding: 0 3.3333333333svw 1.0256410256svw;
    border-bottom: 1px solid #333333;
    color: #333;
    font-weight: 400;
    font-size: 2.5641025641svw;
    line-height: 1.5;
    text-decoration: none;
    transition: opacity .3s ease
}

.c-templateListCard__linkBtn:after {
    display: inline-block;
    width: .3rem;
    height: .5rem;
    margin-left: .61875rem;
    background-image: url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='4.639'%20height='8.114'%20viewBox='0%200%204.639%208.114'%3e%3cpath%20id='Icon_ionic-ios-arrow-forward'%20data-name='Icon%20ionic-ios-arrow-forward'%20d='M14.487,10.252,11.417,7.184a.577.577,0,0,1,0-.819.585.585,0,0,1,.821,0l3.479,3.476a.579.579,0,0,1,.017.8l-3.493,3.5a.58.58,0,0,1-.821-.819Z'%20transform='translate(-11.246%20-6.196)'%20fill='%23333'/%3e%3c/svg%3e");
    content: ""
}

.c-templateListCard__linkBtn:hover {
    opacity: .8
}

.l-header {
    z-index: 100;
    position: relative;
    top: 0;
    left: 0;
    width: 100%;
    height: 3.75rem;
    border-bottom: .5px solid #D8BFAE;
    background-color: #fff
}

.l-header__inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    max-width: 64.125rem;
    height: 100%;
    margin: 0 auto;
    padding: .75rem 1.25rem
}

.l-header__logo {
    flex-shrink: 0
}

.l-header__logo-link {
    display: block;
    text-decoration: none
}

.l-header__logo-img {
    -o-object-fit: contain;
    width: auto;
    height: 2.25rem;
    object-fit: contain
}

.l-header__nav {
    flex-shrink: 0
}

.p-list-section {
    padding: 50px 0 0
}

.p-list-section__title {
    color: #333;
    font-weight: 500;
    font-size: 1.25rem;
    line-height: 1.45;
    letter-spacing: .05em;
    text-align: center
}

.p-list {
    position: relative;
    margin-top: 2rem
}

.p-list__container {
    overflow: hidden
}

.p-list__item {
    width: 350px;
    margin-right: 20px
}

.p-list__item:last-child {
    margin-right: 0
}

.p-list__itemNumber {
    font-size: inherit;
    font-family: Jost,sans-serif
}

.splide__slide .c-templateListCard {
    transform: scale(.9);
    transition: transform .3s ease
}

.splide__slide.is-active .c-templateListCard {
    transform: scale(1)
}

.splide__slide:not(.is-active) .c-templateListCard__body {
    visibility: hidden
}

.splide__arrow {
    z-index: 10;
    position: absolute;
    top: 34%;
    width: 1.285625rem;
    height: 1.285625rem;
    transform: translateY(-50%);
    border: none;
    background: none;
    cursor: pointer;
    opacity: 1;
    transition: transform .2s ease,opacity .3s ease
}

.splide__arrow:hover {
    transform: translateY(-50%) scale(1.1)
}

.splide__arrow:disabled {
    cursor: not-allowed;
    opacity: .4
}

.splide__arrow:disabled:hover {
    transform: translateY(-50%)
}

.splide__arrow svg {
    display: none
}

.splide__arrow--prev {
    left: 10.2564102564svw;
    background-image: url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='45'%20height='45'%20viewBox='0%200%2045%2045'%3e%3cg%20id='Icon_ionic-ios-arrow-dropleft'%20data-name='Icon%20ionic-ios-arrow-dropleft'%20transform='translate(-3.375%20-3.375)'%3e%3cpath%20id='パス_1'%20data-name='パス%201'%20d='M26.269,10.583a2.176,2.176,0,0,0-3,0L12.781,20.8a2.014,2.014,0,0,0-.066,2.839L23.048,33.7a2.169,2.169,0,0,0,3,.011,2.016,2.016,0,0,0,0-2.914l-8.772-8.645,9-8.655A2.016,2.016,0,0,0,26.269,10.583Z'%20transform='translate(4.627%203.723)'%20fill='%23d8bfae'/%3e%3cpath%20id='パス_2'%20data-name='パス%202'%20d='M25.875,3.375a22.5,22.5,0,1,0,22.5,22.5A22.5,22.5,0,0,0,25.875,3.375ZM39.332,39.332A19.031,19.031,0,1,1,12.418,12.418,19.031,19.031,0,1,1,39.332,39.332Z'%20transform='translate(0%200)'%20fill='%23d8bfae'/%3e%3c/g%3e%3c/svg%3e");
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat
}

.splide__arrow--next {
    right: 10.2564102564svw;
    background-image: url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='45'%20height='45'%20viewBox='0%200%2045%2045'%3e%3cg%20id='Icon_ionic-ios-arrow-dropright'%20data-name='Icon%20ionic-ios-arrow-dropright'%20transform='translate(48.375%2048.375)%20rotate(180)'%3e%3cpath%20id='パス_1'%20data-name='パス%201'%20d='M26.269,10.583a2.176,2.176,0,0,0-3,0L12.781,20.8a2.014,2.014,0,0,0-.066,2.839L23.048,33.7a2.169,2.169,0,0,0,3,.011,2.016,2.016,0,0,0,0-2.914l-8.772-8.645,9-8.655A2.016,2.016,0,0,0,26.269,10.583Z'%20transform='translate(4.627%203.723)'%20fill='%23d8bfae'/%3e%3cpath%20id='パス_2'%20data-name='パス%202'%20d='M25.875,3.375a22.5,22.5,0,1,0,22.5,22.5A22.5,22.5,0,0,0,25.875,3.375ZM39.332,39.332A19.031,19.031,0,1,1,12.418,12.418,19.031,19.031,0,1,1,39.332,39.332Z'%20transform='translate(0%200)'%20fill='%23d8bfae'/%3e%3c/g%3e%3c/svg%3e");
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat
}

.l-footer {
    padding: 1.8125rem 0 .625rem;
    background-color: #605a57;
    color: #fff;
    text-align: center
}

.l-footer__copy {
    font-weight: 400;
    font-size: .875rem;
    line-height: 1.7857142857;
    font-family: Noto Sans JP,serif;
    letter-spacing: .2rem
}

.l-footer__logoImage {
    display: block;
    width: 7.5rem;
    margin: 1.25rem auto 0
}

.l-footer__text {
    margin-top: 2.25rem;
    font-weight: 400;
    font-size: .875rem;
    line-height: 1.7857142857;
    font-family: Noto Sans JP,serif;
    letter-spacing: .2rem
}

.l-footer__btnWrapper {
    margin-top: 1.375rem
}

.js .l-footer__container.js-fadeIn {
    opacity: 0
}

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

    .u-onlySp .u-onlySp {
        display: none
    }

    .l-main__btnWrapper {
        margin-top: 6.2875rem;
        margin-bottom: 6.5375rem
    }

    .c-btn:hover {
        background-color: #fff;
        color: #968525
    }

    .c-btn:hover:after {
        background-image: url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='14.625'%20height='14.625'%20viewBox='0%200%2014.625%2014.625'%3e%3cdefs%3e%3cstyle%3e.a{fill:%23AE983C;}%3c/style%3e%3c/defs%3e%3cg%20transform='translate(-3.375%20-3.375)'%3e%3cpath%20class='a'%20d='M14.614,10.18a.681.681,0,0,1,.96,0l3.354,3.364a.678.678,0,0,1,.021.935l-3.3,3.315a.677.677,0,1,1-.96-.956l2.809-2.851-2.879-2.851A.671.671,0,0,1,14.614,10.18Z'%20transform='translate(-5.52%20-3.304)'/%3e%3cpath%20class='a'%20d='M3.375,10.688a7.313,7.313,0,1,0,7.313-7.312A7.311,7.311,0,0,0,3.375,10.688Zm1.125,0a6.194,6.194,0,1,1,1.814,4.373A6.134,6.134,0,0,1,4.5,10.688Z'/%3e%3c/g%3e%3c/svg%3e")
    }

    .c-btn:hover[type=sub] {
        background-color: #d8bfae;
        color: #fff;
        opacity: .8
    }

    .c-btn:hover[type=sub]:after {
        background-image: url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='6.818'%20height='11.924'%20viewBox='0%200%206.818%2011.924'%3e%3cpath%20id='Icon_ionic-ios-arrow-forward'%20data-name='Icon%20ionic-ios-arrow-forward'%20d='M16.009,12.156,11.5,7.647a.849.849,0,0,1,0-1.2.859.859,0,0,1,1.207,0l5.112,5.109a.851.851,0,0,1,.025,1.175l-5.134,5.144a.852.852,0,1,1-1.207-1.2Z'%20transform='translate(-11.246%20-6.196)'%20fill='%23fff'/%3e%3c/svg%3e")
    }

    .c-btn__line:hover {
        border: 1px solid #fff;
        background-color: #71d077;
        color: #fff
    }

    .c-btn__line:hover:after {
        background-image: url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='14.625'%20height='14.625'%20viewBox='0%200%2014.625%2014.625'%3e%3cdefs%3e%3cstyle%3e.a{fill:%23fff;}%3c/style%3e%3c/defs%3e%3cg%20transform='translate(-3.375%20-3.375)'%3e%3cpath%20class='a'%20d='M14.614,10.18a.681.681,0,0,1,.96,0l3.354,3.364a.678.678,0,0,1,.021.935l-3.3,3.315a.677.677,0,1,1-.96-.956l2.809-2.851-2.879-2.851A.671.671,0,0,1,14.614,10.18Z'%20transform='translate(-5.52%20-3.304)'/%3e%3cpath%20class='a'%20d='M3.375,10.688a7.313,7.313,0,1,0,7.313-7.312A7.311,7.311,0,0,0,3.375,10.688Zm1.125,0a6.194,6.194,0,1,1,1.814,4.373A6.134,6.134,0,0,1,4.5,10.688Z'/%3e%3c/g%3e%3c/svg%3e")
    }

    .c-btnLine {
        max-width: 36.1875rem;
        margin: 1.875rem auto 0;
        padding: 1.25rem 2.5rem
    }

    .c-btnLine__linkContainer {
        grid-template-columns: repeat(2,1fr);
        align-items: center;
        gap: 1.25rem
    }

    .c-btnLineSmall {
        height: 3.3125rem;
        font-size: 1.125rem;
        line-height: 1.4444444444;
        letter-spacing: .05rem
    }

    .c-btnLineSmall .c-btnLineSmall__container {
        padding: .74375rem .93125rem .76875rem 1.175rem
    }

    .c-btnLineSmall .c-btnLine__linkIcon {
        width: 1.7975rem;
        height: 1.7975rem
    }

    .c-btnLineSmall:hover {
        opacity: .6
    }

    .c-templateListCard {
        display: flex;
        flex-direction: row-reverse;
        align-items: flex-start
    }

    .c-templateListCard__imgLink {
        flex: 0 0 50%
    }

    .c-templateListCard__imgBox {
        aspect-ratio: 600/290
    }

    .c-templateListCard__body {
        display: flex;
        flex: 0 0 50%;
        flex-direction: column;
        justify-content: center
    }

    .c-templateListCard__titleLink {
        margin: 0
    }

    .c-templateListCard__title {
        padding-right: 5.2083333333svw;
        font-size: 1.6666666667svw;
        line-height: 1.4375
    }

    .c-templateListCard__desc {
        margin-top: 1.7708333333svw;
        padding-right: .5208333333svw;
        font-weight: 400;
        font-size: 1.25svw;
        line-height: 1.4583333333;
        letter-spacing: .025em
    }

    .c-templateListCard__linkBtn {
        margin-top: 1.5625svw;
        padding: 0 .78125svw .3385416667svw;
        font-size: .8333333333svw
    }

    .c-templateListCard__linkBtn:after {
        width: .3rem;
        height: .5rem;
        margin-left: .9375rem
    }

    .l-header {
        height: 6.25rem
    }

    .l-header__inner {
        padding: 1.125rem 0 1.3125rem
    }

    .l-header__logo-img {
        height: 3.8125rem
    }

    .p-list-section {
        padding: 5.6875rem 0 0
    }

    .p-list-section__title {
        font-weight: 400;
        font-size: 2.5rem;
        line-height: 1.45
    }

    .p-list {
        margin-top: 6.25rem;
        padding-bottom: 5.9375rem
    }

    .splide__slide .c-templateListCard,.splide__slide.is-active .c-templateListCard {
        transform: unset
    }

    .splide__slide:not(.is-active) .c-templateListCard__body {
        visibility: unset
    }

    .splide__arrows {
        display: flex;
        z-index: 10;
        position: absolute;
        bottom: 0;
        left: 50%;
        gap: 3.125rem;
        transform: translate(-50%)
    }

    .splide__arrow {
        z-index: auto;
        position: static;
        top: auto;
        width: 2.8125rem;
        height: 2.8125rem;
        transform: none
    }

    .splide__arrow:hover {
        transform: scale(1.1)
    }

    .splide__arrow:disabled:hover {
        transform: none
    }

    .splide__arrow--prev {
        left: auto
    }

    .splide__arrow--next {
        right: auto
    }

    .l-footer {
        padding: 1.875rem 0 .625rem
    }

    .l-footer__text {
        margin-top: 3.41875rem
    }
}

@media screen and (-ms-high-contrast: none) {
    .splide__slide:focus-visible {
        border: 3px solid #0bf
    }

    .splide.is-focus-in .splide__slide:focus {
        border: 3px solid #0bf
    }

    .splide.is-focus-in .splide__track>.splide__list>.splide__slide:focus {
        border-color: #0bf
    }
}
/*-------------------------------- パンフレット以下 --------------------------------*/
.sec_p{
    width: 100%;
    background-color: #F4F4F4;
    padding: 50px 0;
}
@media screen and (min-width: 768px){
    .sec_p{
        padding: 5.6875rem 0;
    }
}
.sec_p h2{
    font-size: 1.25rem;
    margin-bottom: 20px;
    text-align: center;
    letter-spacing: 1.5px;
}
@media screen and (min-width: 768px){
    .sec_p h2{
        font-size: 2.5rem;
        font-weight: 400;
        margin-bottom: 40px;
    }
}
.sec_p img{
    width: 70%;
    display: block;
    margin: 0 auto 20px;
}
@media screen and (min-width: 768px){
    .sec_p img{
        width: 80%;
    }
}
.sec_p h3{
    font-size: 1.1rem;
    margin-bottom: 10px;
    text-align: center;
    letter-spacing: 1.5px;
}
@media screen and (min-width: 768px){
    .sec_p h3{
        font-size: 1.3rem;
    }
}
.sec_p h3 span{
    letter-spacing: 3px;
    margin-right: 5px;
}
a {
text-decoration: none;
color: #333;
}
.btn {
	position: relative;
	border: none;
	border-bottom: 1px solid #666;
	width: fit-content;
    margin: 15px auto 0;
    font-size: 0.85rem;
    padding-bottom: 5px;
}
@media screen and (min-width: 768px){
    .btn{
        font-size: 0.9rem;
    }
}
.btn a::after {
	content: ">";
	margin-left: 20px;
}
.sec_p a:hover{
    transition : 1s;
    opacity: 0.7;
}
.sec_box{
    margin-bottom: 50px;
}
@media screen and (min-width: 768px){
    .sec_flex{
        display: flex;
        justify-content: flex-start;
        align-items: center;
        margin: 0 auto;
        max-width: 1000px;
        gap: 50px;
    }
}
.sec_p_text{
    background-color: #fff;
    width: 90%;
    border-radius: 10px;
    margin: auto;
    padding: 20px 0;
}
@media screen and (min-width: 768px){
    .sec_p_text{
        max-width: 1000px;
    }
}
.sec_p_text p{
    width: 90%;
    margin: auto;
    padding: 0px 0 20px;
    font-size: 0.9rem;
    letter-spacing: 1.2px;
    line-height: 1.4;
}
@media screen and (min-width: 768px){
    .sec_p_text p{
        font-size: 1.0rem;
    }
}
.mark_p{
    color: #FE667C;
    font-weight: 600;
}
.sptag{
    width: 90%;
    margin: auto;
}
.sec_p_tag{
    background-color: #ABC1C6;
    color: #fff;
    font-size: 0.7rem;
    padding: 5px 10px;
    margin-right: 5px;
    margin-bottom: 5px;
    display: inline-block;
    border-radius: 60px;
    font-weight: 600;
}
@media screen and (min-width: 768px){
    .sec_p_tag{
        font-size: 0.8rem;
    }
}
.sp{
    display: block;
}
@media screen and (min-width: 768px){
    .sp{
    display: none;
}
}
/*------------- 動画 -------------*/
.sec_move{
    width: 90%;
    margin: 50px auto;
}
.sec_move h2{
    font-size: 1.25rem;
    margin-bottom: 20px;
    text-align: center;
    letter-spacing: 1.5px;
}
@media screen and (min-width: 768px){
    .sec_move h2{
        font-size: 2.5rem;
        font-weight: 400;
        margin-bottom: 40px;
    }
}
.sec_move h3{
    font-size: 1.1rem;
    margin-top: 10px;
    margin-bottom: 10px;
    text-align: center;
    letter-spacing: 1.5px;
}
@media screen and (min-width: 768px){
    .sec_move h3{
        font-size: 1.3rem;
    }
}
.sec_move h3 span{
    letter-spacing: 3px;
    margin-right: 5px;
}
.p-memories {
  position: relative;
  display: inline-block;
  width: 100%;
  max-width: 800px; /* 任意で調整 */
}
.p-memories__video {
  width: 100%;
  height: auto;
  display: block;
  cursor: pointer;
  border: 1px solid #F4F4F4;
}
.p-memories__playButton {
    z-index: 2;
  width: 60px;
  height: 60px;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  border: none;
  background: none;
  cursor: pointer;
  transition: transform 0.2s ease, opacity 0.2s ease;
}
.p-memories__playButton:hover {
  transform: translate(-50%, -50%) scale(1.05);
  opacity: 0.9;
}
.p-memories.is-playing .p-memories__playButton{
  display: none;
}
.sec_box02{
    margin-bottom: 50px;
}
@media screen and (min-width: 768px){
    .sec_flex02{
        display: flex;
        justify-content: flex-start;
        align-items: center;
        margin: 0 auto;
        max-width: 1300px;
        gap: 30px;
    }
}
.p_textbox{
    width: 100%;
    margin: auto;
    padding: 20px 0;
    background-color: #F4F4F4;
    border-radius: 10px;
}
@media screen and (min-width: 768px){
    .p_textbox{
        max-width: 1000px;
    }
}
.p_textbox p{
    padding: 0 20px 20px;
}
@media screen and (min-width: 768px){
    .p_textbox p{
    width: 95%;
    margin: auto;
    font-size: 1.0rem;
}
}
.p_textbox_span{
    width: 90%;
    margin: auto;
}

/* CSS（共通） */
.video-card {
  position: relative;
  width: 100%;
  max-width: 960px;
  aspect-ratio: 16 / 9;            /* レスポンシブ */
  background: #000;
  border-radius: 16px;
  overflow: hidden;
}

.video-card__media {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

/* 再生ボタン */
.video-card__play {
  position: absolute;
  inset: 0;
  margin: auto;
  width: clamp(72px, 12vmin, 120px);
  height: clamp(72px, 12vmin, 120px);
  display: grid;
  place-items: center;
  border: none;
  background: transparent;
  cursor: pointer;
  transition: transform .2s ease;
}
.video-card__play:focus-visible { outline: 3px solid #66a3ff; outline-offset: 3px; }
.video-card__play:hover { transform: scale(1.04); }

.video-card__icon { width: 100%; height: 100%; }
.video-card__icon-bg { fill: rgba(255,255,255,.85); }
.video-card__icon-play { fill: #000; }

/* 再生中はボタンを隠す */
.video-card.is-playing .video-card__play { display: none; }

/*------------- 機能 -------------*/
.function{
    width: 100%;
    background-color: #F4F4F4;
    padding: 50px 0;
}
@media screen and (min-width: 768px){
    .function{
        padding: 5.6875rem 0;
    }
}
.function h2{
    font-size: 1.25rem;
    margin-bottom: 20px;
    text-align: center;
    letter-spacing: 1.5px;
}
@media screen and (min-width: 768px){
    .function h2{
        font-size: 2.5rem;
        font-weight: 400;
        margin-bottom: 40px;
    }
}
.function h3{
    font-size: 1.1rem;
    margin-bottom: 15px;
    text-align: center;
    letter-spacing: 1.5px;
}
@media screen and (min-width: 768px){
    .function h3{
        font-size: 1.3rem;
    }
}
.f_box{
    width: 90%;
    margin: 0 auto 30px;
    background-color: #fff;
    border-radius: 10px;
    padding: 20px 0;
}
@media screen and (min-width: 768px){
    .f_box{
        width: 40%;
        height: 380px;
    }
    .f_box_h{
        height: 100%;
    }
}
.f_box img{
    width: 90%;
    display: block;
    margin: 0 auto 20px;
    border: 1px solid #F4F4F4;
}
.f_box p{
    width: 90%;
    margin: auto;
}
@media screen and (min-width: 768px){
    .sec_flex03{
        display: flex;
        flex-wrap: wrap;
        justify-content: flex-start;
        align-items: center;
        margin: 0 auto;
        max-width: 1000px;
        gap: 30px;
    }
}