@import url("https://fonts.googleapis.com/css2?family=Zen+Old+Mincho:wght@400;500;700;900&display=swap");
*, *::before, *::after {
    box-sizing: border-box
}
ol, ul {
    list-style: none
}
img {
    max-width: 100%
}
table {
    border-collapse: collapse
}
html {
    height: 100%;
    font-size: 62.5%
}
html.is-nav-open {
    position: fixed;
    top: 0;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 100vh
}
body {
    font-family: "Zen Old Mincho", serif;
    font-size: 1.6rem;
    letter-spacing: 0.05em;
    line-height: 1.75;
    font-weight: 300;
    min-height: 100vh;
    color: #000
}
body.is-fixed-blur .p-top-kv_video-overlay {
    background-color: rgba(255, 255, 255, 0.7);
    opacity: 1
}
main {
    flex: 1
}
a {
    color: #000;
    text-decoration: none;
    cursor: pointer
}
a:hover {
    color: #9f8a6b
}
button {
    appearance: none;
    padding: 0;
    background-color: transparent;
    border: none;
    outline: none;
    cursor: pointer;
    touch-action: manipulation
}
html, body, p, ol, ul, li, dl, dt, dd, blockquote, figure, fieldset, legend, textarea, pre, iframe, h1, h2, h3, h4, h5, h6, hr {
    margin: 0;
    padding: 0
}
ul, ol, li {
    list-style: none
}
img {
    height: auto
}
.p-contact_inner, .p-faq_inner, .p-news-detail_header, .p-news-detail_body, .p-blog-detail_header, .p-blog-detail_body {
    max-width: 1000px;
    margin: 0 auto
}
.l-container, .l-contact_inner, .l-footer_inner, .c-breadcrumbs {
    padding: 0 4vw;
    margin: 0 auto;
    max-width: 1500px
}
@media screen and (min-width: 744px) {
    .l-container, .l-contact_inner, .l-footer_inner, .c-breadcrumbs {
        padding: 0 6vw
    }
}
@media screen and (min-width: 1500px) {
    .l-container, .l-contact_inner, .l-footer_inner, .c-breadcrumbs {
        padding: 0
    }
}
.page_main {
    overflow: hidden
}
.page_main.faq {
    overflow: unset
}
.form-control, .form-control:focus {
    background-color: #fff
}
.form-empty {
    color: #fff
}
.form-text {
    color: #000
}
.form-textarea {
    height: 350px;
    display: block;
    resize: none
}
.l-loading {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 100vh;
    background: radial-gradient(#fff, #d9d9d9);
    position: fixed;
    top: 0;
    left: 0;
    user-select: none;
    opacity: 0;
    visibility: hidden;
    z-index: 9999;
    transition: 0.7s ease
}
.l-loading.is-active {
    pointer-events: all;
    visibility: visible;
    opacity: 100%
}
.l-loading.is-active .l-loading_loader {
    opacity: 100%;
    animation: fade-in 0.5s 0.1s 1 forwards
}
.l-loading_wrapper {
    position: relative
}
.l-loading_illust {
    position: absolute;
    width: 170px;
    height: auto;
    top: calc(50% - 170px);
    left: -85px
}
@media screen and (min-width: 744px) {
    .l-loading_illust {
        width: 200px;
        top: calc(50% - 200px);
        left: -100px
    }
}
@media screen and (min-width: 1024px) {
    .l-loading_illust {
        width: 250px;
        top: calc(50% - 250px);
        left: -125px
    }
}
@keyframes fade-in {
    0% {
        opacity: 0
    }
    100% {
        opacity: 100%
    }
}
@keyframes spin {
    0% {
        transform: rotate(0deg)
    }
    100% {
        transform: rotate(360deg)
    }
}
.l-section {
    position: relative;
    padding: 70px 0
}
@media screen and (min-width: 744px) {
    .l-section {
        padding: 100px 0
    }
}
.l-section.white {
    background-color: #fff
}
.l-section.gray {
    background-color: #f9f9f9
}
.l-content_body {
    position: relative
}
.l-header {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    width: 100%;
    z-index: 100;
    background: linear-gradient(180deg, #fff -40%, transparent 100%);
    line-height: normal;
    transition: background-color 0.5s, color 0.5s
}
.l-header_wrapper {
    display: flex;
    justify-content: space-between;
    align-items: center;
    position: relative;
    padding: 20px 15px;
    transition: all 0.5s
}
@media screen and (min-width: 744px) {
    .l-header_wrapper {
        padding: 30px 20px
    }
}
.l-header_logo {
    width: 130px;
    height: auto;
    z-index: 999
}
@media screen and (min-width: 744px) {
    .l-header_logo {
        width: 270px
    }
}
.l-header_logo h1 {
    line-height: 0
}
.l-header_logo h1 a {
    position: relative;
    display: block;
    width: fit-content
}
.l-header_logo h1 a #logo_image {
    opacity: 1;
    pointer-events: auto;
    transition: all 0.3s
}
@media screen and (min-width: 1024px) {
    .l-header_logo h1 a #logo_image.is-hidden {
        opacity: 0;
        pointer-events: none;
        transition: all 0.3s
    }
}
.l-header_logo h1 a #logo_image-white {
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
    pointer-events: none
}
@media screen and (min-width: 1024px) {
    .l-header_logo h1 a #logo_image-white {
        opacity: 1;
        pointer-events: auto;
        transition: all 0.3s
    }
}
@media screen and (min-width: 1024px) {
    .l-header_logo h1 a #logo_image-white.is-hidden {
        opacity: 0;
        pointer-events: none;
        transition: all 0.3s
    }
}
.l-header-menu {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 999
}
.l-header-menu_formBtn {
    display: none
}
@media screen and (min-width: 744px) {
    .l-header-menu_formBtn {
        display: block;
        opacity: 1;
        pointer-events: auto;
        transition: all 0.3s;
        margin-right: 25px
    }
}
@media screen and (min-width: 744px) {
    .l-header-menu_formBtn.is-hidden {
        opacity: 0;
        pointer-events: none;
        transition: all 0.3s
    }
}
.l-header-menu_btn {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    cursor: pointer
}
.l-header-menu_btn-text {
    display: inline-block;
    margin-right: 5px;
    font-size: 0.8rem;
    font-weight: 600
}
@media screen and (min-width: 744px) {
    .l-header-menu_btn-text {
        margin-right: 10px;
        font-size: 1rem;
        width: 35px
    }
}
.l-header-menu_btn-trigger {
    margin-top: -5px;
    width: 30px;
    height: 30px;
    transform: rotate(90deg);
    z-index: 9999
}
@media screen and (min-width: 744px) {
    .l-header-menu_btn-trigger {
        width: 40px;
        height: 40px
    }
}
.l-header-menu_btn-trigger span {
    display: block;
    margin: 0 auto 0 0;
    width: 30px;
    height: 1px;
    background: #232d68
}
@media screen and (min-width: 744px) {
    .l-header-menu_btn-trigger span {
        width: 40px
    }
}
.l-header-menu_btn-trigger span:nth-child(1) {
    width: 30px;
    margin-bottom: 9px;
    transition: all 0.7s cubic-bezier(0.19, 1, 0.22, 1)
}
@media screen and (min-width: 744px) {
    .l-header-menu_btn-trigger span:nth-child(1) {
        width: 40px;
        margin-bottom: 12px
    }
}
.l-header-menu_btn-trigger span:nth-child(2) {
    width: 22px
}
@media screen and (min-width: 744px) {
    .l-header-menu_btn-trigger span:nth-child(2) {
        width: 30px
    }
}
.l-header-menu_btn-trigger span:nth-child(3) {
    width: 14px;
    margin-top: 9px;
    transition: all 0.7s cubic-bezier(0.19, 1, 0.22, 1)
}
@media screen and (min-width: 744px) {
    .l-header-menu_btn-trigger span:nth-child(3) {
        width: 20px;
        margin-top: 12px
    }
}
.l-header-menu_btn:hover .l-header-menu_btn-trigger span:nth-child(1), .l-header-menu_btn:hover .l-header-menu_btn-trigger span:nth-child(3) {
    width: 30px
}
@media screen and (min-width: 744px) {
    .l-header-menu_btn:hover .l-header-menu_btn-trigger span:nth-child(1), .l-header-menu_btn:hover .l-header-menu_btn-trigger span:nth-child(3) {
        width: 45px
    }
}
.l-header-menu_btn.is-active .l-header-menu_btn-trigger span:nth-child(1) {
    width: 35px;
    margin-bottom: 3px;
    margin-left: -8px;
    transform: rotate(-45deg) translate(0, 11px)
}
@media screen and (min-width: 744px) {
    .l-header-menu_btn.is-active .l-header-menu_btn-trigger span:nth-child(1) {
        width: 45px;
        margin-bottom: 5px;
        margin-left: -9px
    }
}
.l-header-menu_btn.is-active .l-header-menu_btn-trigger span:nth-child(2) {
    opacity: 0
}
.l-header-menu_btn.is-active .l-header-menu_btn-trigger span:nth-child(3) {
    width: 35px;
    margin-top: 9px;
    margin-left: 5px;
    transform: rotate(45deg) translate(-7px, 0)
}
@media screen and (min-width: 744px) {
    .l-header-menu_btn.is-active .l-header-menu_btn-trigger span:nth-child(3) {
        width: 45px;
        transform: rotate(45deg) translate(-10px, 0)
    }
}
.l-header-bnr {
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100vw;
    height: auto;
    overflow: hidden;
    z-index: 90
}
@media screen and (min-width: 744px) {
    .l-header-bnr {
        bottom: 50px;
        left: unset;
        right: 0;
        width: 450px
    }
}
@media screen and (min-width: 1024px) {
    .l-header-bnr:hover .l-header-bnr_overlay {
        opacity: 0.2;
        transition: all 0.3s
    }
}
.l-header-bnr_img-sp {
    position: relative;
    display: block;
    width: 100%;
    height: auto;
    z-index: 0
}
@media screen and (min-width: 744px) {
    .l-header-bnr_img-sp {
        display: none
    }
}
.l-header-bnr_img-sp img {
    display: block;
    width: 100%;
    height: auto;
    object-fit: cover
}
.l-header-bnr_img-pc {
    position: relative;
    display: none;
    z-index: 0
}
@media screen and (min-width: 744px) {
    .l-header-bnr_img-pc {
        display: block;
        width: 100%;
        height: auto
    }
}
.l-header-bnr_img-pc img {
    display: block;
    width: 100%;
    height: auto;
    object-fit: cover
}
.l-header-bnr_overlay {
    position: absolute;
    content: "";
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 100%;
    background-color: #fff;
    opacity: 0;
    z-index: 1;
    transition: all 0.3s
}
.l-header-bnr.is-hidden {
    opacity: 0;
    pointer-events: none;
    transition: all 0.3s
}
.l-header-bnr.is-active {
    opacity: 1;
    pointer-events: auto;
    transition: all 0.3s
}
.l-header-bnr.is-removed {
    opacity: 0;
    pointer-events: none;
    transition: all 0.3s
}
.l-gnav {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    pointer-events: none;
    opacity: 0
}
.l-gnav.is-active {
    pointer-events: auto
}
.l-gnav-bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: url(../img/nav-bg.jpg) no-repeat #9f8a6b center top/cover;
    z-index: 0
}
.l-gnav-bg_overlay {
    position: absolute;
    content: "";
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.3)
}
.l-gnav_wrapper {
    position: relative;
    width: 100vw;
    height: 100vh
}
.l-gnav_catch {
    display: none
}
@media screen and (min-width: 1024px) {
    .l-gnav_catch {
        position: absolute;
        display: flex;
        align-items: center;
        justify-content: center;
        width: calc(100% - 35vw);
        height: 100%;
        font-size: 3.5rem;
        letter-spacing: 0.1em;
        writing-mode: vertical-rl;
        color: #fff;
        font-weight: 500
    }
}
@media screen and (min-width: 1500px) {
    .l-gnav_catch {
        width: calc(100% - 650px);
        font-size: 4.5rem
    }
}
.l-gnav_inner {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    padding: 80px 4vw 100px;
    width: 100%;
    height: 100vh;
    background-color: #fff;
    overflow: scroll;
    z-index: 1
}
@media screen and (min-width: 1024px) {
    .l-gnav_inner {
        padding: 50px 5vw;
        margin: 0 0 0 auto;
        width: 35vw
    }
}
@media screen and (min-width: 1500px) {
    .l-gnav_inner {
        padding: 120px 120px 80px;
        width: 40vw;
        max-width: 650px
    }
}
.l-gnav_inner::-webkit-scrollbar {
    display: none
}
.l-gnav-menu {
    padding: 0 4vw
}
@media screen and (min-width: 744px) {
    .l-gnav-menu {
        padding: 0 6vw
    }
}
@media screen and (min-width: 1024px) {
    .l-gnav-menu {
        padding: 0
    }
}
.l-gnav-menu_list {
    padding: 30px 0
}
@media screen and (min-width: 744px) {
    .l-gnav-menu_list {
        padding: 40px 0
    }
}
.l-gnav-menu_list-item {
    position: relative;
    display: flex;
    align-items: flex-start;
    padding: 15px 15px 15px 0;
    border-bottom: 1px solid silver
}
.l-gnav-menu_list-item:last-child {
    border: none
}
@media screen and (min-width: 744px) {
    .l-gnav-menu_list-item {
        padding: 25px 15px 25px 0
    }
}
@media screen and (min-width: 1500px) {
    .l-gnav-menu_list-item {
        padding: 30px 15px 30px 0
    }
}
.l-gnav-menu_list_title {
    display: block;
    padding-right: 30px;
    margin-bottom: 15px;
    font-size: 2rem;
    font-weight: 400;
    writing-mode: tb-rl
}
@media screen and (min-width: 744px) {
    .l-gnav-menu_list_title {
        font-size: 2.5rem
    }
}
.l-gnav-menu_list-link {
    display: flex;
    align-items: baseline
}
.l-gnav-subMenu {
    position: relative
}
.l-gnav-subMenu_list {
    position: relative;
    margin-bottom: 15px;
    padding-left: 25px
}
.l-gnav-subMenu_list a {
    display: flex;
    align-items: center;
    transition: all 0.3s 0s ease
}
.l-gnav-subMenu_list a:hover {
    color: #232d68
}
.l-gnav-subMenu_list a:hover .l-gnav-subMenu_list-icon::before {
    transform: translate(13px, -50%)
}
.l-gnav-subMenu_list-icon {
    position: relative;
    display: inline-block;
    width: 20px;
    height: 1px;
    margin-right: 8px;
    background-color: #000
}
.l-gnav-subMenu_list-icon::before {
    content: "";
    display: block;
    position: absolute;
    left: 0;
    top: 50%;
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background-color: #000;
    transform: translateY(-50%);
    transition: all 0.3s 0s ease
}
.l-gnav-bottom {
    padding: 0 4vw
}
@media screen and (min-width: 744px) {
    .l-gnav-bottom {
        padding: 0 6vw
    }
}
@media screen and (min-width: 1024px) {
    .l-gnav-bottom {
        padding: 0
    }
}
.l-gnav_contact .l-contact_tel {
    width: 100% !important;
    padding: 0
}
.l-gnav_contact .l-contact_tel_inner {
    border: 1px solid #000;
    color: #000
}
.l-content_footer {
    margin-top: 50px
}
@media screen and (min-width: 744px) {
    .l-content_footer {
        margin-top: 70px
    }
}
@media screen and (min-width: 1024px) {
    .l-content_footer {
        margin-top: 100px
    }
}
.l-footer {
    position: relative;
    background-color: #fff;
    z-index: 1
}
.l-footer_inner {
    padding-top: 50px;
    padding-bottom: 50px
}
@media screen and (min-width: 1024px) {
    .l-footer_inner {
        padding-top: 70px;
        padding-bottom: 70px
    }
}
.l-footer_body {
    display: flex;
    flex-direction: column
}
@media screen and (min-width: 1024px) {
    .l-footer_body {
        flex-direction: row;
        align-items: flex-start;
        justify-content: space-between
    }
}
.l-footer_body-left {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-bottom: 50px
}
@media screen and (min-width: 1024px) {
    .l-footer_body-left {
        flex-direction: row;
        margin-bottom: 0
    }
}
.l-footer_body-right {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 260px;
    margin: 0 auto
}
@media screen and (min-width: 1024px) {
    .l-footer_body-right {
        width: 360px;
        margin: 0
    }
}
@media screen and (min-width: 1500px) {
    .l-footer_body-right {
        width: 480px
    }
}
.l-footer_body-right .c-btn {
    width: 100%
}
@media screen and (min-width: 1024px) {
    .l-footer_body-right .c-btn {
        display: flex;
        align-items: center;
        justify-content: center;
        height: 60px
    }
}
@media screen and (min-width: 1500px) {
    .l-footer_body-right .c-btn {
        height: 80px
    }
}
.l-footer_logo {
    text-align: center;
    margin-bottom: 30px
}
@media screen and (min-width: 1024px) {
    .l-footer_logo {
        margin-right: 30px;
        margin-bottom: 0
    }
}
.l-footer_logo img {
    width: 170px
}
.l-footer_address-wrapper {
    position: relative;
    display: flex;
    flex-direction: column
}
.l-footer_address {
    letter-spacing: 0.05em;
    line-height: 1.75;
    font-size: 1.4rem
}
.l-footer_address i {
    font-size: 20px
}
.l-footer_address:nth-of-type(1) {
    margin-bottom: 30px
}
.l-footer_address-title {
    margin-bottom: 5px;
    font-size: 1.75rem;
    color: #9f8a6b
}
.l-footer_sns {
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 25px 0;
    font-size: 30px
}
@media screen and (min-width: 1024px) {
    .l-footer_sns {
        justify-content: flex-end;
        margin: 0
    }
}
.l-footer_sns_item {
    margin-right: 15px
}
.l-footer_sns_item:last-child {
    margin-right: 0
}
.l-footer_copy {
    display: block;
    text-align: center;
    font-size: 1.2rem
}
@media screen and (min-width: 1024px) {
    .l-footer_copy {
        text-align: right
    }
}
.l-hero {
    display: block;
    position: relative;
    width: 100%;
    padding-bottom: 50px
}
@media screen and (min-width: 744px) {
    .l-hero {
        padding-bottom: 100px;
        overflow: visible
    }
}
.l-hero_wrapper {
    position: relative;
    width: 100%;
    height: 100%;
    padding: 100px 4vw 0
}
@media screen and (min-width: 744px) {
    .l-hero_wrapper {
        padding: 180px 6vw 0
    }
}
@media screen and (min-width: 1500px) {
    .l-hero_wrapper {
        padding: 180px 0 0
    }
}
.l-hero_body {
    position: relative;
    width: calc(100% + (100vw - 100%));
    padding: 30px 0;
    margin-left: calc(((100vw - 100%) / 2) * -1);
    margin-right: calc(((100vw - 100%) / 2) * -1)
}
@media screen and (min-width: 744px) {
    .l-hero_body {
        padding: 40px 0
    }
}
@media screen and (min-width: 1024px) {
    .l-hero_body {
        padding: 50px 0
    }
}
@media screen and (min-width: 1500px) {
    .l-hero_body {
        padding: 70px 0
    }
}
.l-hero_body_bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 80%;
    height: 100%;
    background: linear-gradient(0deg, #f5f5f5 0%, #fff 100%)
}
.l-hero_inner {
    display: flex;
    align-items: center;
    margin: 0 auto;
    max-width: 1500px
}
.l-hero_title {
    display: flex;
    align-items: center;
    position: relative;
    width: 25vw;
    word-break: keep-all;
    writing-mode: tb-rl
}
.l-hero_title_text {
    position: relative;
    font-size: 2.5rem;
    font-weight: 700;
    line-height: 1.5
}
@media screen and (min-width: 744px) {
    .l-hero_title_text {
        font-size: 3.5rem
    }
}
@media screen and (min-width: 1500px) {
    .l-hero_title_text {
        font-size: 4.5rem
    }
}
.l-hero_title_text::before {
    content: "";
    display: inline-block;
    position: absolute;
    bottom: -30px;
    left: -40px;
    width: 80px;
    height: 80px;
    background: url(../img/bg-mark.svg) center/cover no-repeat
}
.l-hero_title-en {
    display: block;
    font-size: 1.2rem;
    font-weight: 400
}
@media screen and (min-width: 744px) {
    .l-hero_title-en {
        font-size: 1.4rem
    }
}
@media screen and (min-width: 1024px) {
    .l-hero_title-en {
        font-size: 1.75rem
    }
}
.l-hero_lead {
    position: relative;
    display: flex;
    justify-content: flex-end;
    max-width: 1500px;
    padding: 75px 15px 15px 0;
    margin: -85px auto 0;
    border-right: 1px solid #000;
    font-size: 1.4rem
}
@media screen and (min-width: 744px) {
    .l-hero_lead {
        font-size: 1.75rem
    }
}
@media screen and (min-width: 1024px) {
    .l-hero_lead {
        padding: 115px 15px 15px 0;
        margin-top: -135px;
        font-size: 2rem
    }
}
.l-hero_lead_text {
    display: inline-block;
    color: #777777
}
.l-hero-img {
    position: relative;
    width: 75vw;
    margin-right: calc((100vw - 100%) / 2 * -1)
}
.l-hero-img.is-reveal .l-hero-img_body::after {
    width: 0
}
.l-hero-img_body {
    position: relative;
    height: 230px;
    overflow: hidden
}
@media screen and (min-width: 744px) {
    .l-hero-img_body {
        height: 40vw
    }
}
@media screen and (min-width: 1500px) {
    .l-hero-img_body {
        height: 480px
    }
}
.l-hero-img_body::after {
    display: block;
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    width: 100%;
    height: 100%;
    z-index: 10;
    background: #fff;
    -webkit-transition: width 1.8s cubic-bezier(0.77, 0, 0.175, 1);
    transition: width 1.8s cubic-bezier(0.77, 0, 0.175, 1);
    will-change: width
}
.l-hero-img_body img {
    object-fit: cover;
    width: 100%;
    height: 100%
}
.l-hero_pageTitle {
    position: relative;
    display: flex;
    align-items: flex-end;
    padding-left: 30px;
    margin-bottom: 25px;
    word-break: keep-all
}
@media screen and (min-width: 1024px) {
    .l-hero_pageTitle {
        margin-bottom: 0;
        padding-right: 40px;
        margin-bottom: 30px
    }
}
.l-hero_pageTitle::before {
    content: "";
    display: inline-block;
    position: absolute;
    top: -10px;
    left: 0;
    width: 71px;
    height: 70px;
    background: url(../img/bg-mark.svg) center/cover no-repeat
}
.l-hero_pageTitle_text {
    font-size: 2.5rem;
    font-weight: 400;
    line-height: 1.6
}
@media screen and (min-width: 744px) {
    .l-hero_pageTitle_text {
        font-size: 3.5rem;
        line-height: 1.3
    }
}
@media screen and (min-width: 1500px) {
    .l-hero_pageTitle_text {
        font-size: 4.5rem
    }
}
.l-hero_pageTitle-en {
    display: block;
    font-size: 1.4rem;
    font-weight: 300
}
@media screen and (min-width: 744px) {
    .l-hero_pageTitle-en {
        font-size: 1.75rem
    }
}
.l-hero_pageTitle_lead {
    font-size: 1.4rem
}
@media screen and (min-width: 744px) {
    .l-hero_pageTitle_lead {
        font-size: inherit
    }
}
.l-contact {
    position: relative;
    overflow: hidden;
    z-index: 0;
    padding: 70px 0
}
@media screen and (min-width: 1024px) {
    .l-contact {
        padding: 150px 0
    }
}
.l-contact::after {
    content: "";
    position: absolute;
    left: -9px;
    top: -9px;
    right: -9px;
    bottom: -9px;
    backdrop-filter: blur(15px);
    -webkit-backdrop-filter: blur(15px);
    background-color: rgba(0, 0, 0, 0.4);
    z-index: -2
}
.l-contact_body {
    display: flex;
    flex-direction: column
}
@media screen and (min-width: 1024px) {
    .l-contact_body {
        flex-direction: row;
        align-items: flex-start
    }
}
.l-contact_heading {
    text-align: center
}
@media screen and (min-width: 1024px) {
    .l-contact_heading {
        width: 30%;
        text-align: left
    }
}
.l-contact_form {
    display: flex;
    align-items: center;
    margin: 40px 0 30px
}
@media screen and (min-width: 1024px) {
    .l-contact_form {
        width: 35%;
        margin: 0
    }
}
.l-contact_form_item {
    width: 50%;
    padding: 0 10px;
    border-right: 1px solid #fff;
    color: white;
    text-align: center
}
@media screen and (min-width: 744px) {
    .l-contact_form_item {
        padding: 0 25px
    }
}
@media screen and (min-width: 1024px) {
    .l-contact_form_item {
        padding: 0 40px
    }
}
.l-contact_form_item:last-child {
    border: none
}
@media screen and (min-width: 1024px) {
    .l-contact_form_title {
        font-size: 1.75rem
    }
}
.l-contact_form_title i {
    font-size: 40px
}
.l-contact_form_title .text {
    margin-top: 8px
}
.l-contact_form_divider {
    width: 50px;
    height: 1px;
    background-color: #fff;
    margin: 20px auto 25px
}
.l-contact_tel {
    position: relative;
    padding: 0 10px
}
@media screen and (min-width: 744px) {
    .l-contact_tel {
        padding: 0 25px
    }
}
@media screen and (min-width: 1024px) {
    .l-contact_tel {
        width: 35%;
        padding-left: 30px
    }
}
.l-contact_tel_inner {
    padding: 25px;
    border: 2px solid #fff;
    border-radius: 10px;
    text-align: center;
    color: #fff
}
.l-contact_tel_title {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 15px
}
.l-contact_tel_title i {
    font-size: 40px
}
.l-contact_tel_title .text {
    display: inline-block;
    margin-left: 5px
}
.l-contact_tel_number {
    font-size: 3rem
}
.l-contact_tel_number a {
    color: #fff
}
.l-contact_tel_option {
    width: 100%;
    margin-top: 30px
}
.l-contact_tel_option-text {
    text-align: center;
    color: #fff
}
.l-contact_tel_option-text a {
    color: #fff
}
.l-intro {
    position: relative;
    padding: 40px 0 150px
}
@media screen and (min-width: 1024px) {
    .l-intro {
        padding: 100px 0 200px
    }
}
.l-intro_body {
    position: relative;
    display: flex;
    flex-direction: column
}
@media screen and (min-width: 1024px) {
    .l-intro_body {
        flex-direction: row-reverse;
        justify-content: space-between
    }
}
.l-intro_content {
    position: relative;
    margin-bottom: 40px
}
@media screen and (min-width: 1024px) {
    .l-intro_content {
        width: 35%;
        margin-bottom: 0
    }
}
.l-intro_content_bg {
    position: absolute;
    bottom: -100px;
    right: -30vw;
    width: 110vw;
    z-index: -1
}
@media screen and (min-width: 744px) {
    .l-intro_content_bg {
        bottom: -120px;
        width: 70vw
    }
}
@media screen and (min-width: 1024px) {
    .l-intro_content_bg {
        bottom: -280px;
        right: calc(((100vw - 285%) / 2) * -1);
        width: 850px
    }
}
.l-intro_content_bg img {
    width: 100%
}
.l-intro_title {
    margin: 0 auto 30px;
    font-size: 2.5rem;
    font-weight: 600;
    writing-mode: tb-rl
}
@media screen and (min-width: 1024px) {
    .l-intro_title {
        margin: 0 auto 50px;
        font-size: 3rem
    }
}
.l-intro_img {
    position: relative
}
@media screen and (min-width: 1024px) {
    .l-intro_img {
        padding-top: 70px;
        width: 55%
    }
}
.l-intro_img_item img {
    display: block;
    width: 100%
}
@media screen and (min-width: 1024px) {
    .l-intro_img_item img {
        min-height: 600px;
        object-fit: cover
    }
}
.l-intro_img_bg-left {
    position: absolute;
    bottom: -150px;
    left: -30vw;
    width: 70vw;
    z-index: -1
}
@media screen and (min-width: 744px) {
    .l-intro_img_bg-left {
        bottom: -250px;
        left: -17vw;
        width: 55vw
    }
}
@media screen and (min-width: 1024px) {
    .l-intro_img_bg-left {
        bottom: -250px;
        left: -250px;
        width: 600px
    }
}
@media screen and (min-width: 1500px) {
    .l-intro_img_bg-left {
        width: 660px
    }
}
.l-intro_img_bg-left img {
    width: 100%
}
.l-intro_img_bg-right {
    position: absolute;
    bottom: -70px;
    right: -23vw;
    width: 85vw;
    z-index: -1
}
@media screen and (min-width: 744px) {
    .l-intro_img_bg-right {
        bottom: -130px;
        right: -23vw;
        width: 75vw
    }
}
@media screen and (min-width: 1024px) {
    .l-intro_img_bg-right {
        bottom: -120px;
        right: -500px;
        width: 750px
    }
}
@media screen and (min-width: 1500px) {
    .l-intro_img_bg-right {
        width: 849px
    }
}
.l-intro_img_bg-right img {
    width: 100%
}
.c-breadcrumbs_list {
    display: flex;
    align-items: center;
    padding: 25px 0;
    white-space: nowrap;
    overflow-x: scroll;
    -ms-overflow-style: none;
    scrollbar-width: none
}
.c-breadcrumbs_list::-webkit-scrollbar {
    display: none
}
.c-breadcrumbs_item {
    position: relative;
    padding-left: 26px;
    line-height: 1.5;
    font-size: 1.2rem;
    color: silver
}
@media screen and (min-width: 744px) {
    .c-breadcrumbs_item {
        padding-left: 40px;
        font-size: inherit
    }
}
.c-breadcrumbs_item:first-child {
    padding-left: 0
}
.c-breadcrumbs_item:first-child::after {
    display: none
}
.c-breadcrumbs_item::after {
    position: absolute;
    top: 50%;
    left: 10px;
    display: block;
    width: 6px;
    height: 1px;
    content: "";
    background-color: #000
}
@media screen and (min-width: 744px) {
    .c-breadcrumbs_item::after {
        left: 15px;
        width: 10px
    }
}
.c-list-attention {
    font-size: 1.2rem;
    color: #000
}
.c-list-attention li {
    padding-left: 15px;
    text-indent: -15px;
    margin-bottom: 5px
}
.c-list-attention li::before {
    display: inline;
    content: "※";
    padding-right: 5px;
    color: #9f8a6b
}
.c-list-attention li:last-child {
    margin-bottom: 0
}
.c-list-dot {
    padding-left: 25px
}
.c-list-dot li {
    list-style: square;
    padding: 5px 0
}
.c-list-circle {
    padding-left: 20px
}
.c-list-circle li {
    list-style: disc;
    padding: 5px 0
}
.c-list-circle li::marker {
    color: #9f8a6b
}
.c-btn {
    position: relative;
    display: inline-block;
    overflow: hidden;
    min-width: 220px;
    padding: 8px;
    border: 1px solid #232d68;
    font-size: 1.75rem;
    text-align: center;
    color: #232d68;
    transition: all 0.3s
}
.c-btn_inner {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center
}
.c-btn i {
    font-size: 25px;
    margin-right: 5px
}
.c-btn:hover {
    color: #fff;
    background-color: #232d68;
    transition: all 0.3s
}
.c-btn.is-full {
    width: 100%;
    min-width: inherit
}
.c-btn.is-full-sp {
    width: 100%;
    min-width: inherit
}
@media screen and (min-width: 744px) {
    .c-btn.is-full-sp {
        width: fit-content
    }
}
.c-btn.white {
    color: white;
    border: 1px solid #fff
}
.c-btn.white:hover {
    color: #232d68;
    background-color: #fff;
    border-color: #232d68
}
.c-btn.small {
    min-width: 150px;
    padding: 5px;
    font-size: 1.2rem
}
.c-btn.bg-white {
    background-color: #fff
}
.c-btn.bg-white:hover {
    color: #fff;
    background-color: #232d68
}
.c-btn.bg-primary {
    background-color: #232d68;
    color: #fff
}
.c-btn.bg-primary:hover {
    background-color: #fff;
    color: #232d68
}
.c-btn-arrow {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    min-width: 250px;
    padding: 8px;
    border: 1px solid #232d68;
    font-size: 1.75rem;
    text-align: center;
    color: #232d68;
    transition: all 0.3s
}
.c-btn-arrow::after {
    content: "";
    display: inline-block;
    position: absolute;
    right: 20px;
    width: 25px;
    height: 7px;
    border-bottom: 1px solid #232d68;
    border-right: 1px solid #232d68;
    transform: skew(45deg);
    transition: all 0.3s
}
.c-btn-arrow:hover {
    color: #fff;
    background-color: #232d68
}
.c-btn-arrow:hover::after {
    right: 10px;
    border-bottom: 1px solid #fff;
    border-right: 1px solid #fff
}
.c-btn-arrow.back::after {
    content: "";
    display: inline-block;
    position: absolute;
    right: inherit;
    left: 20px;
    width: 25px;
    height: 7px;
    border-bottom: inherit;
    border-right: initial;
    border-left: 1px solid #232d68;
    transform: skew(135deg);
    transition: all 0.3s
}
.c-btn-arrow.back:hover::after {
    left: 10px;
    border-bottom: 1px solid #fff;
    border-left: 1px solid #fff
}
.c-btn-arrow.is-full {
    width: 100%
}
.c-btn-arrow.is-full-sp {
    width: 100%
}
@media screen and (min-width: 744px) {
    .c-btn-arrow.is-full-sp {
        width: fit-content
    }
}
.c-btn-arrow.white {
    color: white;
    border: 1px solid #fff
}
.c-btn-arrow.white.c-btn-arrow::after {
    border-bottom: 1px solid #fff;
    border-right: 1px solid #fff
}
.c-btn-arrow.white:hover {
    color: #232d68;
    background-color: #fff;
    border-color: #232d68
}
.c-btn-arrow.white:hover::after {
    right: 10px;
    border-bottom: 1px solid #232d68;
    border-right: 1px solid #232d68
}
.c-btn-arrow.bg-white {
    background-color: #fff
}
.c-btn-arrow.bg-white:hover {
    color: #fff;
    background-color: #232d68
}
.c-btn-arrow.bg-white:hover::after {
    right: 10px;
    border-bottom: 1px solid #fff;
    border-right: 1px solid #fff
}
.c-btn-vertical {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    min-height: 250px;
    padding: 8px;
    border: 1px solid #232d68;
    font-size: 1.75rem;
    text-align: center;
    color: #232d68;
    writing-mode: vertical-rl;
    transition: all 0.3s
}
.c-btn-vertical::after {
    content: "";
    display: inline-block;
    position: absolute;
    right: 20px;
    width: 25px;
    height: 7px;
    border-bottom: 1px solid #232d68;
    border-right: 1px solid #232d68;
    transform: skew(45deg);
    transition: all 0.3s
}
.c-btn-vertical:hover {
    color: #fff;
    background-color: #232d68
}
.c-btn-vertical:hover::after {
    right: 10px;
    border-bottom: 1px solid #fff;
    border-right: 1px solid #fff
}
.c-btn-vertical.is-full {
    width: 100%
}
.c-btn-vertical.is-full-sp {
    width: 100%
}
@media screen and (min-width: 744px) {
    .c-btn-vertical.is-full-sp {
        width: fit-content
    }
}
.c-btn-vertical.white {
    color: white;
    border: 1px solid #fff
}
.c-btn-vertical.white:hover {
    color: #232d68;
    background-color: #fff;
    border-color: #232d68
}
.c-btn-arrow-under {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    margin-bottom: 8px;
    transition: all 0.3s
}
.c-btn-arrow-under::after {
    content: "";
    display: inline-block;
    position: absolute;
    bottom: 16px;
    right: 20px;
    width: 40px;
    height: 7px;
    border-bottom: 1px solid #232d68;
    border-right: 1px solid #232d68;
    transform: skew(60deg);
    transition: all 0.3s
}
.c-btn-arrow-under:hover {
    color: #232d68
}
.c-btn-arrow-under:hover::after {
    right: 10px
}
.c-btn-arrow-under:hover span::before {
    transform: translateX(0%)
}
.c-btn-arrow-under span {
    position: relative;
    display: block;
    width: 100%;
    padding: 5px 80px 5px 5px;
    font-size: 1.75rem;
    text-align: center;
    color: #232d68
}
.c-btn-arrow-under span::before {
    position: absolute;
    content: "";
    bottom: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 1px;
    background-color: #232d68;
    transform: translateX(-102%);
    z-index: 2;
    transition: all 0.3s
}
.c-btn-arrow-under span::after {
    position: absolute;
    content: "";
    bottom: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 1px;
    background-color: #d9d9d9;
    z-index: 1
}
.c-pagenation {
    display: inline-flex;
    font-size: 1.4rem;
    font-weight: 500;
    line-height: 1;
    text-align: center;
    letter-spacing: -0.4em
}
.c-pagenation_arrow {
    height: 35px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding-bottom: 5px;
    font-size: 2rem
}
@media screen and (min-width: 744px) {
    .c-pagenation_arrow {
        height: 50px;
        font-size: 3rem
    }
}
.c-pagenation_item {
    height: 35px;
    display: inline-block;
    margin: 0 8px;
    letter-spacing: normal
}
@media screen and (min-width: 744px) {
    .c-pagenation_item {
        height: 50px;
        margin: 0 10px
    }
}
.c-pagenation a {
    height: 35px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0 5px;
    color: silver
}
@media screen and (min-width: 744px) {
    .c-pagenation a {
        height: 50px
    }
}
.c-pagenation a:hover {
    color: #9f8a6b
}
.c-pagenation .is-active {
    color: #000;
    border-bottom: 1px solid #000
}
.c-article_pagenation {
    display: flex;
    align-items: center;
    justify-content: space-between;
    max-width: 1500px;
    padding: 30px 0;
    margin: 80px auto 0;
    border-top: 1px solid #d9d9d9
}
@media screen and (min-width: 1024px) {
    .c-article_pagenation {
        margin-top: 120px
    }
}
.c-article_pagenation-text {
    display: inline-block;
    margin: 0 5px;
    font-size: 1.2rem
}
@media screen and (min-width: 744px) {
    .c-article_pagenation-text {
        margin: 0 8px;
        font-size: 1.4rem;
        font-weight: 400
    }
}
.c-article_pagenation a {
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none
}
.c-article_pagenation a:hover {
    color: #9f8a6b
}
.c-article_pagenation .before_arrow, .c-article_pagenation .after_arrow {
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    left: inherit;
    right: inherit;
    width: 40px;
    height: 40px;
    transition: 0.7s
}
@media screen and (min-width: 1024px) {
    .c-article_pagenation .before_arrow, .c-article_pagenation .after_arrow {
        width: 50px;
        height: 50px
    }
}
.c-article_pagenation .before_arrow-icon, .c-article_pagenation .after_arrow-icon {
    display: flex;
    position: relative
}
.c-article_pagenation .before_arrow-icon::before, .c-article_pagenation .after_arrow-icon::before {
    content: "";
    display: inline-block;
    width: 17px;
    height: 7px;
    border-bottom: 1px solid #000;
    border-left: 1px solid #000;
    transform: skew(-45deg)
}
.c-article_pagenation .after_arrow-icon::before {
    border-left: none;
    border-right: 1px solid #000;
    transform: skew(45deg)
}
.c-article_pagenation .all {
    font-size: 3rem;
    transition: 0.8s
}
@media screen and (min-width: 744px) {
    .c-article_pagenation .all {
        font-size: 4rem
    }
}
.c-article_pagenation .all:hover {
    color: #9f8a6b !important
}
.c-filter {
    letter-spacing: 0.05em;
    font-weight: 300
}
@media screen and (min-width: 1024px) {
    .c-filter {
        position: sticky;
        top: 140px;
        padding-bottom: 60px
    }
}
.c-filter_title {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 15px;
    font-size: 1.75rem;
    cursor: pointer
}
@media screen and (min-width: 1024px) {
    .c-filter_title {
        display: block;
        font-size: 2rem;
        cursor: none;
        pointer-events: none
    }
}
.c-filter_title-icon {
    transition: all 0.5s 0s ease
}
@media screen and (min-width: 1024px) {
    .c-filter_title-icon {
        display: none
    }
}
.c-filter_title.is-open .c-filter_title-icon {
    transform: rotateX(-180deg)
}
.c-filter-wrapper {
    padding-top: 15px;
    border-top: 1px solid silver
}
.c-filter-wrapper.black {
    border-top: 1px solid silver
}
.c-filter_list {
    display: none;
    padding-bottom: 15px;
    margin-bottom: 25px;
    border-bottom: 1px solid silver
}
.c-filter_list.black {
    border-bottom: 1px solid silver
}
.c-filter_list.is-open {
    display: block
}
@media screen and (min-width: 1024px) {
    .c-filter_list {
        display: block
    }
}
.c-filter_list li {
    padding: 5px;
    font-size: 1.2rem
}
@media screen and (min-width: 1024px) {
    .c-filter_list li {
        margin: 5px 0;
        font-size: 1.4rem
    }
}
.c-filter_list li.current-cat {
    background-color: #232d68;
    color: #fff;
    pointer-events: none
}
.c-filter_list li.current-cat a {
    color: #fff
}
.c-title-h2 {
    position: relative;
    margin-bottom: 25px;
    font-size: 2.5rem;
    font-weight: 400;
    letter-spacing: 0.05em;
    line-height: 1.5;
    color: #000
}
@media screen and (min-width: 744px) {
    .c-title-h2 {
        margin-bottom: 30px;
        font-size: 3rem
    }
}
@media screen and (min-width: 1024px) {
    .c-title-h2 {
        font-size: 3.5rem
    }
}
.c-title-h2 span {
    display: block;
    letter-spacing: 0.1em
}
.c-title-h2 .en {
    font-size: 1.4rem;
    color: #232d68
}
@media screen and (min-width: 1024px) {
    .c-title-h2 .en {
        font-size: 1.75rem
    }
}
.c-title-h2.primary {
    color: #232d68
}
.c-title-h2.secondary .en {
    color: #9f8a6b
}
.c-title-h2.white {
    color: #fff
}
.c-title-h2.white .en {
    color: #fff
}
.c-title-h2.center {
    text-align: center
}
.c-title-h3 {
    position: relative;
    margin-bottom: 25px;
    font-size: 1.75rem;
    font-weight: 700;
    letter-spacing: 0.05em;
    line-height: 1.5;
    color: #000
}
@media screen and (min-width: 744px) {
    .c-title-h3 {
        margin-bottom: 30px;
        font-size: 2rem
    }
}
@media screen and (min-width: 1024px) {
    .c-title-h3 {
        font-size: 2.5rem
    }
}
.c-title-h3.primary {
    color: #232d68
}
.c-title-h3.white {
    color: #fff
}
.c-title-h3.center {
    text-align: center
}
.c-title-sub {
    position: relative;
    font-size: 1.4rem;
    font-weight: 400;
    letter-spacing: 0.05em;
    line-height: 1.75;
    color: #000
}
@media screen and (min-width: 744px) {
    .c-title-sub {
        font-size: 1.75rem
    }
}
.c-title-under {
    display: inline-block;
    position: relative;
    padding: 0 25px 15px;
    margin: 0 auto 15px;
    font-size: 2.5rem;
    letter-spacing: 0.05em;
    line-height: 1.75;
    border-bottom: 1px solid #d9d9d9
}
.c-table {
    width: 100%;
    border-collapse: collapse;
    border-spacing: 0
}
.c-table tr {
    border-bottom: 1px solid #d9d9d9
}
@media screen and (min-width: 744px) {
    .c-table tr {
        border: none
    }
}
.c-table th {
    display: block;
    padding: 25px 0;
    width: 100%;
    text-align: left;
    color: #9f8a6b
}
@media screen and (min-width: 744px) {
    .c-table th {
        display: table-cell;
        width: 20%;
        padding: 30px 0;
        border-bottom: 1px solid #d9d9d9
    }
}
.c-table td {
    display: block;
    padding: 0 0 25px 0;
    width: 100%;
    text-align: left
}
@media screen and (min-width: 744px) {
    .c-table td {
        display: table-cell;
        padding: 30px 0;
        border-bottom: 1px solid #d9d9d9
    }
}
.c-table.thin th {
    padding: 15px 0
}
.c-table.thin td {
    padding: 0 0 15px 0
}
@media screen and (min-width: 744px) {
    .c-table.thin td {
        padding: 15px 0
    }
}
.c-table-bg-beige {
    width: 100%;
    border-collapse: collapse;
    border-spacing: 0
}
.c-table-bg-beige tr {
    border-bottom: 1px solid #d9d9d9
}
@media screen and (min-width: 744px) {
    .c-table-bg-beige tr {
        border: none
    }
}
.c-table-bg-beige th {
    display: block;
    padding: 25px;
    width: 100%;
    background-color: rgba(159, 138, 107, 0.4);
    text-align: left;
    font-weight: 700
}
@media screen and (min-width: 744px) {
    .c-table-bg-beige th {
        display: table-cell;
        width: 20%;
        padding: 30px;
        border-bottom: 1px solid #d9d9d9
    }
}
.c-table-bg-beige td {
    display: block;
    padding: 25px;
    width: 100%;
    background-color: rgba(159, 138, 107, 0.1);
    text-align: left
}
@media screen and (min-width: 744px) {
    .c-table-bg-beige td {
        display: table-cell;
        padding: 30px;
        border-bottom: 1px solid #d9d9d9
    }
}
.c-table-bg-beige.thin th {
    padding: 15px
}
.c-table-bg-beige.thin td {
    min-height: 58px;
    padding: 15px;
    font-size: 1.4rem
}
@media screen and (min-width: 744px) {
    .c-table-bg-beige.thin td {
        padding: 15px
    }
}
@media screen and (min-width: 744px) {
    .c-table-bg-beige.head-align-right th {
        text-align: right
    }
}
.c-table-bg-beige.disable {
    position: relative;
    opacity: 0.5
}
.c-table-bg-beige.disable::before {
    position: absolute;
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    background-color: rgba(217, 217, 217, 0.2);
    z-index: 1
}
.swiper-slide {
    width: 100%;
    object-fit: cover
}
.swiper-report {
    margin-bottom: 40px
}
@media screen and (min-width: 1024px) {
    .swiper-report {
        margin-bottom: 70px
    }
}
.swiper-report_btn {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    margin-bottom: 30px
}
.swiper-report_btn .swiper-report_btn-prev, .swiper-report_btn .swiper-report_btn-next {
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    left: inherit;
    right: inherit;
    margin: 0 8px;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background-color: #232d68;
    transition: 0.7s
}
@media screen and (min-width: 1024px) {
    .swiper-report_btn .swiper-report_btn-prev, .swiper-report_btn .swiper-report_btn-next {
        margin: 0 15px;
        width: 50px;
        height: 50px
    }
}
.swiper-report_btn .swiper-report_btn-prev:hover, .swiper-report_btn .swiper-report_btn-next:hover {
    opacity: 0.8
}
.swiper-report_btn .swiper-report_btn-prev:hover::after, .swiper-report_btn .swiper-report_btn-next:hover::after {
    opacity: 1
}
.swiper-report_btn-prev::after {
    content: "";
    display: inline-block;
    width: 17px;
    height: 7px;
    border-bottom: 1px solid #fff;
    border-left: 1px solid #fff;
    transform: skew(-45deg)
}
.swiper-report_btn-next::after {
    content: "";
    display: inline-block;
    width: 17px;
    height: 7px;
    border-bottom: 1px solid #fff;
    border-right: 1px solid #fff;
    transform: skew(45deg)
}
.swiper-photo {
    padding-left: 20px;
    overflow: visible
}
@media screen and (min-width: 1024px) {
    .swiper-photo {
        padding-left: 0
    }
}
.swiper-photo .swiper-pagination-v {
    display: flex;
    flex-direction: column;
    left: -10px !important;
    width: auto !important
}
@media screen and (min-width: 1024px) {
    .swiper-photo .swiper-pagination-v {
        left: -35px !important
    }
}
.swiper-photo .swiper-pagination-v .swiper-pagination-bullet {
    width: 10px;
    height: 10px;
    margin-top: 10px !important;
    background-color: silver
}
@media screen and (min-width: 1024px) {
    .swiper-photo .swiper-pagination-v .swiper-pagination-bullet {
        width: 12px;
        height: 12px;
        margin-top: 15px !important
    }
}
.swiper-photo .swiper-pagination-v .swiper-pagination-bullet-active {
    background-color: #9f8a6b
}
.swiper-fair {
    width: 80%;
    margin-bottom: 15px
}
@media screen and (min-width: 744px) {
    .swiper-fair {
        width: 100%
    }
}
.swiper-fair .swiper-wrapper {
    transition-timing-function: cubic-bezier(0.6, 0, 0, 0.8)
}
.swiper-fair .swiper-pagination-bullet-active {
    background-color: #9f8a6b
}
.swiper-fair_btn {
    position: absolute;
    top: calc(50vw + 70px);
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%
}
@media screen and (min-width: 744px) {
    .swiper-fair_btn {
        position: relative;
        top: 350px;
        width: 575px;
        margin: 0 auto
    }
}
@media screen and (min-width: 1024px) {
    .swiper-fair_btn {
        top: 380px;
        width: 600px
    }
}
.swiper-fair_btn .swiper-fair_btn-prev, .swiper-fair_btn .swiper-fair_btn-next {
    position: absolute;
    top: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 8px;
    width: 40px;
    height: 40px;
    transition: 0.7s
}
@media screen and (min-width: 744px) {
    .swiper-fair_btn .swiper-fair_btn-prev, .swiper-fair_btn .swiper-fair_btn-next {
        margin: 0
    }
}
@media screen and (min-width: 1024px) {
    .swiper-fair_btn .swiper-fair_btn-prev, .swiper-fair_btn .swiper-fair_btn-next {
        width: 50px;
        height: 50px
    }
}
.swiper-fair_btn .swiper-fair_btn-prev:hover, .swiper-fair_btn .swiper-fair_btn-next:hover {
    opacity: 0.8
}
.swiper-fair_btn .swiper-fair_btn-prev:hover::after, .swiper-fair_btn .swiper-fair_btn-next:hover::after {
    opacity: 1
}
.swiper-fair_btn-prev {
    left: 0
}
.swiper-fair_btn-prev::after {
    content: "";
    display: inline-block;
    width: 25px;
    height: 25px;
    border-bottom: 2px solid #000;
    border-left: 2px solid #000;
    transform: rotate(45deg)
}
@media screen and (min-width: 1024px) {
    .swiper-fair_btn-prev::after {
        width: 35px;
        height: 35px
    }
}
.swiper-fair_btn-next {
    right: 0
}
.swiper-fair_btn-next::after {
    content: "";
    display: inline-block;
    width: 25px;
    height: 25px;
    border-bottom: 2px solid #000;
    border-right: 2px solid #000;
    transform: rotate(-45deg)
}
@media screen and (min-width: 1024px) {
    .swiper-fair_btn-next::after {
        width: 35px;
        height: 35px
    }
}
.c-frame {
    position: relative;
    display: flex;
    flex-direction: column
}
.c-frame_inner {
    position: relative;
    display: flex;
    flex-direction: column;
    width: 100%;
    height: 100%;
    padding: 30px 25px;
    border-radius: 10px
}
@media screen and (min-width: 744px) {
    .c-frame_inner {
        padding: 40px 30px;
        border-radius: 20px
    }
}
@media screen and (min-width: 1024px) {
    .c-frame_inner {
        border-radius: 30px
    }
}
.c-frame_title {
    position: relative;
    display: inline-block;
    padding-bottom: 25px;
    margin-bottom: 25px;
    font-size: 1.75rem;
    font-weight: 700;
    color: #232d68
}
@media screen and (min-width: 1024px) {
    .c-frame_title {
        font-size: 2rem
    }
}
.c-frame_title::before {
    position: absolute;
    content: "";
    bottom: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 1px;
    background: linear-gradient(90deg, #9f8a6b 20%, #d9d9d9 20%);
    z-index: 1
}
.c-frame_lead {
    display: inline-block;
    font-size: 1.4rem
}
.c-frame_list {
    position: relative
}
.c-frame_list-item {
    position: relative;
    display: inline-block;
    padding-left: 20px;
    font-size: 1.4rem
}
.c-frame_list-item::before {
    position: absolute;
    top: 0;
    left: 0
}
.c-frame_list-item:nth-of-type(1)::before {
    content: "1."
}
.c-frame_list-item:nth-of-type(2)::before {
    content: "2."
}
.c-frame_list-item:nth-of-type(3)::before {
    content: "3."
}
.c-frame_list-item:nth-of-type(4)::before {
    content: "4."
}
.c-frame_list-item:nth-of-type(5)::before {
    content: "5."
}
.c-frame_list-item:nth-of-type(6)::before {
    content: "6."
}
.c-frame_list-item:nth-of-type(7)::before {
    content: "7."
}
.c-frame_list-item:nth-of-type(8)::before {
    content: "8."
}
.c-frame_list-item:nth-of-type(9)::before {
    content: "9."
}
.c-frame_list-item:nth-of-type(10)::before {
    content: "10."
}
.c-frame.bg-secondary .c-frame_inner {
    background-color: rgba(159, 138, 107, 0.1)
}
.c-calendar {
    position: relative;
    width: 100%;
    margin-bottom: 30px
}
.c-calendar #mc_mini_widget-3 #mc_head_mc_mini_widget-3 {
    position: relative;
    z-index: -1
}
.c-calendar #mc_mini_widget-3 #mc_head_mc_mini_widget-3 span {
    display: inline-block;
    font-size: 2rem
}
.c-calendar #mc_mini_widget-3 .my-calendar-header {
    position: absolute;
    top: 3px;
    left: 0;
    display: flex;
    flex-direction: column;
    width: 100%;
    padding: 0;
    z-index: 1
}
@media screen and (min-width: 744px) {
    .c-calendar #mc_mini_widget-3 .my-calendar-header {
        top: 0
    }
}
.c-calendar #mc_mini_widget-3 .my-calendar-header .my-calendar-nav {
    position: relative;
    width: 100%
}
.c-calendar #mc_mini_widget-3 .my-calendar-header .my-calendar-nav .my-calendar-prev {
    position: absolute;
    top: 0;
    left: 0
}
.c-calendar #mc_mini_widget-3 .my-calendar-header .my-calendar-nav .my-calendar-prev a {
    border-radius: inherit;
    background-color: transparent
}
.c-calendar #mc_mini_widget-3 .my-calendar-header .my-calendar-nav .my-calendar-prev a:hover {
    outline: 0px;
    opacity: 0.7
}
.c-calendar #mc_mini_widget-3 .my-calendar-header .my-calendar-nav .my-calendar-today {
    display: none
}
.c-calendar #mc_mini_widget-3 .my-calendar-header .my-calendar-nav .my-calendar-next {
    position: absolute;
    top: 0;
    right: 0
}
.c-calendar #mc_mini_widget-3 .my-calendar-header .my-calendar-nav .my-calendar-next a {
    border-radius: inherit;
    background-color: transparent
}
.c-calendar #mc_mini_widget-3 .my-calendar-header .my-calendar-nav .my-calendar-next a:hover {
    outline: 0px;
    opacity: 0.7
}
.c-calendar #mc_mini_widget-3 .my-calendar-header .my-calendar-date-switcher {
    padding-top: 50px
}
.c-calendar #mc_mini_widget-3 .mc-content {
    padding-top: 15px
}
@media screen and (min-width: 744px) {
    .c-calendar #mc_mini_widget-3 .mc-content {
        padding-top: 50px
    }
}
.c-calendar #mc_mini_widget-3 .mc-content .my-calendar-table {
    display: flex;
    flex-direction: column
}
.c-calendar #mc_mini_widget-3 .mc-content .my-calendar-table thead {
    border-bottom: 0
}
@media screen and (min-width: 744px) {
    .c-calendar #mc_mini_widget-3 .mc-content .my-calendar-table thead {
        margin-bottom: 30px
    }
}
.c-calendar #mc_mini_widget-3 .mc-content .my-calendar-table thead .mc-row {
    display: flex;
    justify-content: space-between
}
.c-calendar #mc_mini_widget-3 .mc-content .my-calendar-table thead .mc-row th {
    width: 100%;
    border-bottom: none
}
.c-calendar #mc_mini_widget-3 .mc-content .my-calendar-table thead .mc-row th.sat {
    color: #9f8a6b
}
.c-calendar #mc_mini_widget-3 .mc-content .my-calendar-table thead .mc-row th.sun {
    color: #3f52c2
}
.c-calendar #mc_mini_widget-3 .mc-content .my-calendar-table tbody {
    display: flex;
    flex-direction: column;
    background-color: transparent
}
.c-calendar #mc_mini_widget-3 .mc-content .my-calendar-table tbody .mc-row {
    display: flex;
    justify-content: space-between
}
.c-calendar #mc_mini_widget-3 .mc-content .my-calendar-table tbody .mc-row td {
    position: relative;
    width: 100%;
    height: 50px;
    border: none;
    background: none;
    cursor: pointer
}
@media screen and (min-width: 744px) {
    .c-calendar #mc_mini_widget-3 .mc-content .my-calendar-table tbody .mc-row td {
        height: 63px
    }
}
.c-calendar #mc_mini_widget-3 .mc-content .my-calendar-table tbody .mc-row td::before {
    position: absolute;
    content: "";
    top: 0;
    bottom: 0;
    left: 0;
    right: 1px;
    display: block;
    width: 35px;
    height: 35px;
    margin: auto;
    border-radius: 50%;
    border: none;
    background-color: transparent;
    z-index: 0;
    transition: all 0.3s
}
@media screen and (min-width: 744px) {
    .c-calendar #mc_mini_widget-3 .mc-content .my-calendar-table tbody .mc-row td::before {
        width: 50px;
        height: 50px
    }
}
.c-calendar #mc_mini_widget-3 .mc-content .my-calendar-table tbody .mc-row td:hover::before {
    background-color: #fff;
    transition: all 0.3s
}
.c-calendar #mc_mini_widget-3 .mc-content .my-calendar-table tbody .mc-row td:nth-of-type(6) .mc-date-container .mc-date span {
    color: #9f8a6b
}
.c-calendar #mc_mini_widget-3 .mc-content .my-calendar-table tbody .mc-row td:nth-of-type(7) .mc-date-container .mc-date span {
    color: #3f52c2
}
.c-calendar #mc_mini_widget-3 .mc-content .my-calendar-table tbody .mc-row td.nextmonth {
    cursor: auto
}
.c-calendar #mc_mini_widget-3 .mc-content .my-calendar-table tbody .mc-row td.nextmonth::before {
    display: none
}
.c-calendar #mc_mini_widget-3 .mc-content .my-calendar-table tbody .mc-row td.past-day .mc-date-container {
    opacity: 0.3
}
.c-calendar #mc_mini_widget-3 .mc-content .my-calendar-table tbody .mc-row td.current-day {
    outline: none
}
.c-calendar #mc_mini_widget-3 .mc-content .my-calendar-table tbody .mc-row td.current-day::before {
    display: block;
    border: 1px solid #232d68
}
.c-calendar #mc_mini_widget-3 .mc-content .my-calendar-table tbody .mc-row td.is-date-chosen::before {
    background-color: #ffe0d7;
    transition: all 0.3s
}
.c-calendar #mc_mini_widget-3 .mc-content .my-calendar-table tbody .mc-row td .mc-date-container {
    position: relative;
    width: 100%;
    height: 100%;
    opacity: 1;
    z-index: 1
}
.c-calendar #mc_mini_widget-3 .mc-content .my-calendar-table tbody .mc-row td .mc-date-container .mc-date {
    position: relative;
    height: 100%
}
.c-calendar #mc_mini_widget-3 .mc-content .my-calendar-table tbody .mc-row td .mc-date-container .mc-date span {
    position: relative;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    z-index: 0
}
.c-calendar #mc_mini_widget-3 .mc-content .my-calendar-table tbody .mc-row td .mc-date-container .mc-date span.screen-reader-text {
    position: absolute;
    top: 0;
    z-index: 999
}
.u-mt-0 {
    margin-top: 0px !important
}
.u-mb-0 {
    margin-bottom: 0px !important
}
.u-ml-0 {
    margin-left: 0px !important
}
.u-mr-0 {
    margin-right: 0px !important
}
.u-m-0 {
    margin: 0px !important
}
.u-mt-1 {
    margin-top: 5px !important
}
.u-mb-1 {
    margin-bottom: 5px !important
}
.u-ml-1 {
    margin-left: 5px !important
}
.u-mr-1 {
    margin-right: 5px !important
}
.u-m-1 {
    margin: 5px !important
}
.u-mt-2 {
    margin-top: 10px !important
}
.u-mb-2 {
    margin-bottom: 10px !important
}
.u-ml-2 {
    margin-left: 10px !important
}
.u-mr-2 {
    margin-right: 10px !important
}
.u-m-2 {
    margin: 10px !important
}
.u-mt-3 {
    margin-top: 15px !important
}
.u-mb-3 {
    margin-bottom: 15px !important
}
.u-ml-3 {
    margin-left: 15px !important
}
.u-mr-3 {
    margin-right: 15px !important
}
.u-m-3 {
    margin: 15px !important
}
.u-mt-4 {
    margin-top: 20px !important
}
.u-mb-4 {
    margin-bottom: 20px !important
}
.u-ml-4 {
    margin-left: 20px !important
}
.u-mr-4 {
    margin-right: 20px !important
}
.u-m-4 {
    margin: 20px !important
}
.u-mt-5 {
    margin-top: 25px !important
}
.u-mb-5 {
    margin-bottom: 25px !important
}
.u-ml-5 {
    margin-left: 25px !important
}
.u-mr-5 {
    margin-right: 25px !important
}
.u-m-5 {
    margin: 25px !important
}
.u-mt-6 {
    margin-top: 30px !important
}
.u-mb-6 {
    margin-bottom: 30px !important
}
.u-ml-6 {
    margin-left: 30px !important
}
.u-mr-6 {
    margin-right: 30px !important
}
.u-m-6 {
    margin: 30px !important
}
.u-mt-7 {
    margin-top: 35px !important
}
.u-mb-7 {
    margin-bottom: 35px !important
}
.u-ml-7 {
    margin-left: 35px !important
}
.u-mr-7 {
    margin-right: 35px !important
}
.u-m-7 {
    margin: 35px !important
}
.u-mt-8 {
    margin-top: 40px !important
}
.u-mb-8 {
    margin-bottom: 40px !important
}
.u-ml-8 {
    margin-left: 40px !important
}
.u-mr-8 {
    margin-right: 40px !important
}
.u-m-8 {
    margin: 40px !important
}
.u-mt-9 {
    margin-top: 45px !important
}
.u-mb-9 {
    margin-bottom: 45px !important
}
.u-ml-9 {
    margin-left: 45px !important
}
.u-mr-9 {
    margin-right: 45px !important
}
.u-m-9 {
    margin: 45px !important
}
.u-mt-10 {
    margin-top: 50px !important
}
.u-mb-10 {
    margin-bottom: 50px !important
}
.u-ml-10 {
    margin-left: 50px !important
}
.u-mr-10 {
    margin-right: 50px !important
}
.u-m-10 {
    margin: 50px !important
}
.u-mt-11 {
    margin-top: 55px !important
}
.u-mb-11 {
    margin-bottom: 55px !important
}
.u-ml-11 {
    margin-left: 55px !important
}
.u-mr-11 {
    margin-right: 55px !important
}
.u-m-11 {
    margin: 55px !important
}
.u-mt-12 {
    margin-top: 60px !important
}
.u-mb-12 {
    margin-bottom: 60px !important
}
.u-ml-12 {
    margin-left: 60px !important
}
.u-mr-12 {
    margin-right: 60px !important
}
.u-m-12 {
    margin: 60px !important
}
.u-mt-13 {
    margin-top: 65px !important
}
.u-mb-13 {
    margin-bottom: 65px !important
}
.u-ml-13 {
    margin-left: 65px !important
}
.u-mr-13 {
    margin-right: 65px !important
}
.u-m-13 {
    margin: 65px !important
}
.u-mt-14 {
    margin-top: 70px !important
}
.u-mb-14 {
    margin-bottom: 70px !important
}
.u-ml-14 {
    margin-left: 70px !important
}
.u-mr-14 {
    margin-right: 70px !important
}
.u-m-14 {
    margin: 70px !important
}
.u-mt-15 {
    margin-top: 75px !important
}
.u-mb-15 {
    margin-bottom: 75px !important
}
.u-ml-15 {
    margin-left: 75px !important
}
.u-mr-15 {
    margin-right: 75px !important
}
.u-m-15 {
    margin: 75px !important
}
.u-mt-16 {
    margin-top: 80px !important
}
.u-mb-16 {
    margin-bottom: 80px !important
}
.u-ml-16 {
    margin-left: 80px !important
}
.u-mr-16 {
    margin-right: 80px !important
}
.u-m-16 {
    margin: 80px !important
}
.u-mt-17 {
    margin-top: 85px !important
}
.u-mb-17 {
    margin-bottom: 85px !important
}
.u-ml-17 {
    margin-left: 85px !important
}
.u-mr-17 {
    margin-right: 85px !important
}
.u-m-17 {
    margin: 85px !important
}
.u-mt-18 {
    margin-top: 90px !important
}
.u-mb-18 {
    margin-bottom: 90px !important
}
.u-ml-18 {
    margin-left: 90px !important
}
.u-mr-18 {
    margin-right: 90px !important
}
.u-m-18 {
    margin: 90px !important
}
.u-mt-19 {
    margin-top: 95px !important
}
.u-mb-19 {
    margin-bottom: 95px !important
}
.u-ml-19 {
    margin-left: 95px !important
}
.u-mr-19 {
    margin-right: 95px !important
}
.u-m-19 {
    margin: 95px !important
}
.u-mt-20 {
    margin-top: 100px !important
}
.u-mb-20 {
    margin-bottom: 100px !important
}
.u-ml-20 {
    margin-left: 100px !important
}
.u-mr-20 {
    margin-right: 100px !important
}
.u-m-20 {
    margin: 100px !important
}
.u-pt-0 {
    padding-top: 0px !important
}
.u-pb-0 {
    padding-bottom: 0px !important
}
.u-pl-0 {
    padding-left: 0px !important
}
.u-pr-0 {
    padding-right: 0px !important
}
.u-p-0 {
    padding: 0px !important
}
.u-pt-1 {
    padding-top: 5px !important
}
.u-pb-1 {
    padding-bottom: 5px !important
}
.u-pl-1 {
    padding-left: 5px !important
}
.u-pr-1 {
    padding-right: 5px !important
}
.u-p-1 {
    padding: 5px !important
}
.u-pt-2 {
    padding-top: 10px !important
}
.u-pb-2 {
    padding-bottom: 10px !important
}
.u-pl-2 {
    padding-left: 10px !important
}
.u-pr-2 {
    padding-right: 10px !important
}
.u-p-2 {
    padding: 10px !important
}
.u-pt-3 {
    padding-top: 15px !important
}
.u-pb-3 {
    padding-bottom: 15px !important
}
.u-pl-3 {
    padding-left: 15px !important
}
.u-pr-3 {
    padding-right: 15px !important
}
.u-p-3 {
    padding: 15px !important
}
.u-pt-4 {
    padding-top: 20px !important
}
.u-pb-4 {
    padding-bottom: 20px !important
}
.u-pl-4 {
    padding-left: 20px !important
}
.u-pr-4 {
    padding-right: 20px !important
}
.u-p-4 {
    padding: 20px !important
}
.u-pt-5 {
    padding-top: 25px !important
}
.u-pb-5 {
    padding-bottom: 25px !important
}
.u-pl-5 {
    padding-left: 25px !important
}
.u-pr-5 {
    padding-right: 25px !important
}
.u-p-5 {
    padding: 25px !important
}
.u-pt-6 {
    padding-top: 30px !important
}
.u-pb-6 {
    padding-bottom: 30px !important
}
.u-pl-6 {
    padding-left: 30px !important
}
.u-pr-6 {
    padding-right: 30px !important
}
.u-p-6 {
    padding: 30px !important
}
.u-pt-7 {
    padding-top: 35px !important
}
.u-pb-7 {
    padding-bottom: 35px !important
}
.u-pl-7 {
    padding-left: 35px !important
}
.u-pr-7 {
    padding-right: 35px !important
}
.u-p-7 {
    padding: 35px !important
}
.u-pt-8 {
    padding-top: 40px !important
}
.u-pb-8 {
    padding-bottom: 40px !important
}
.u-pl-8 {
    padding-left: 40px !important
}
.u-pr-8 {
    padding-right: 40px !important
}
.u-p-8 {
    padding: 40px !important
}
.u-pt-9 {
    padding-top: 45px !important
}
.u-pb-9 {
    padding-bottom: 45px !important
}
.u-pl-9 {
    padding-left: 45px !important
}
.u-pr-9 {
    padding-right: 45px !important
}
.u-p-9 {
    padding: 45px !important
}
.u-pt-10 {
    padding-top: 50px !important
}
.u-pb-10 {
    padding-bottom: 50px !important
}
.u-pl-10 {
    padding-left: 50px !important
}
.u-pr-10 {
    padding-right: 50px !important
}
.u-p-10 {
    padding: 50px !important
}
.u-pt-11 {
    padding-top: 55px !important
}
.u-pb-11 {
    padding-bottom: 55px !important
}
.u-pl-11 {
    padding-left: 55px !important
}
.u-pr-11 {
    padding-right: 55px !important
}
.u-p-11 {
    padding: 55px !important
}
.u-pt-12 {
    padding-top: 60px !important
}
.u-pb-12 {
    padding-bottom: 60px !important
}
.u-pl-12 {
    padding-left: 60px !important
}
.u-pr-12 {
    padding-right: 60px !important
}
.u-p-12 {
    padding: 60px !important
}
.u-pt-13 {
    padding-top: 65px !important
}
.u-pb-13 {
    padding-bottom: 65px !important
}
.u-pl-13 {
    padding-left: 65px !important
}
.u-pr-13 {
    padding-right: 65px !important
}
.u-p-13 {
    padding: 65px !important
}
.u-pt-14 {
    padding-top: 70px !important
}
.u-pb-14 {
    padding-bottom: 70px !important
}
.u-pl-14 {
    padding-left: 70px !important
}
.u-pr-14 {
    padding-right: 70px !important
}
.u-p-14 {
    padding: 70px !important
}
.u-pt-15 {
    padding-top: 75px !important
}
.u-pb-15 {
    padding-bottom: 75px !important
}
.u-pl-15 {
    padding-left: 75px !important
}
.u-pr-15 {
    padding-right: 75px !important
}
.u-p-15 {
    padding: 75px !important
}
.u-pt-16 {
    padding-top: 80px !important
}
.u-pb-16 {
    padding-bottom: 80px !important
}
.u-pl-16 {
    padding-left: 80px !important
}
.u-pr-16 {
    padding-right: 80px !important
}
.u-p-16 {
    padding: 80px !important
}
.u-pt-17 {
    padding-top: 85px !important
}
.u-pb-17 {
    padding-bottom: 85px !important
}
.u-pl-17 {
    padding-left: 85px !important
}
.u-pr-17 {
    padding-right: 85px !important
}
.u-p-17 {
    padding: 85px !important
}
.u-pt-18 {
    padding-top: 90px !important
}
.u-pb-18 {
    padding-bottom: 90px !important
}
.u-pl-18 {
    padding-left: 90px !important
}
.u-pr-18 {
    padding-right: 90px !important
}
.u-p-18 {
    padding: 90px !important
}
.u-pt-19 {
    padding-top: 95px !important
}
.u-pb-19 {
    padding-bottom: 95px !important
}
.u-pl-19 {
    padding-left: 95px !important
}
.u-pr-19 {
    padding-right: 95px !important
}
.u-p-19 {
    padding: 95px !important
}
.u-pt-20 {
    padding-top: 100px !important
}
.u-pb-20 {
    padding-bottom: 100px !important
}
.u-pl-20 {
    padding-left: 100px !important
}
.u-pr-20 {
    padding-right: 100px !important
}
.u-p-20 {
    padding: 100px !important
}
.u-text-primary {
    color: #232d68 !important
}
.u-text-secondary {
    color: #9f8a6b !important
}
.u-text-white {
    color: #fff !important
}
.u-text-notion {
    font-size: 1.2rem
}
.u-link:hover {
    color: inherit;
    opacity: 0.8
}
.u-link.secondary {
    color: #9f8a6b
}
@media screen and (min-width: 1024px) {
    .u-break {
        display: contents
    }
}
.u-break-sp {
    display: block
}
@media screen and (min-width: 744px) {
    .u-break-sp {
        display: none
    }
}
.u-text-center {
    text-align: center
}
.u-scroll-animation-slide {
    display: block;
    overflow: hidden;
    position: relative
}
.u-scroll-animation-slide::before {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    right: 0;
    top: 0;
    transition: all 0.8s cubic-bezier(0.8, 0, 0.15, 1);
    transition-timing-function: cubic-bezier(0.8, 0, 0.15, 1);
    z-index: 1;
    transition-delay: 0.2s;
    background-color: #232d68
}
.u-scroll-animation-slide::after {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    right: 0;
    top: 0;
    transition: all 0.8s cubic-bezier(0.8, 0, 0.15, 1);
    transition-timing-function: cubic-bezier(0.8, 0, 0.15, 1);
    background-color: #fff;
    z-index: 2
}
.is-visible .u-scroll-animation-slide::before {
    right: -100%
}
.is-visible .u-scroll-animation-slide::after {
    right: -100%
}
.u-scroll-animation-slideInLeft {
    opacity: 0;
    transform: translate(20px, 0)
}
.u-scroll-animation-slideInLeft.is-visible {
    opacity: 1;
    transform: translate(0, 0);
    transition: transform 0.8s ease, opacity 0.8s ease
}
.u-scroll-animation-slideInBottom {
    opacity: 0;
    transform: translate(0, 20px)
}
.u-scroll-animation-slideInBottom.is-visible {
    opacity: 1;
    transform: translate(0, 0);
    transition: transform 0.8s ease, opacity 0.8s ease
}
.js-pageTitle-illust {
    transform: translate(50px, 0px);
    transform: scale(0.2)
}
.p-top-main {
    padding-top: 100px;
    overflow: hidden
}
@media screen and (min-width: 1024px) {
    .p-top-main {
        padding-top: 200px
    }
}
.p-top-kv, .p-top-kv_inner {
    position: relative;
    width: 100%;
    min-height: 100vh
}
.p-top-kv {
    z-index: 0
}
.p-top-kv_inner {
    display: flex;
    align-items: center;
    justify-content: center
}
.p-top-kv_title {
    position: absolute;
    top: 40vw;
    right: 18%;
    font-size: 2.5rem;
    writing-mode: vertical-rl;
    text-align: left;
    letter-spacing: 0.3em;
    color: #fff
}
@media screen and (min-width: 744px) {
    .p-top-kv_title {
        top: 35vw;
        right: 15%;
        font-size: 3.5rem
    }
}
@media screen and (min-width: 1024px) {
    .p-top-kv_title {
        top: 13vw;
        right: 17%;
        font-size: 4.5rem
    }
}
.p-top-kv_video {
    position: fixed;
    z-index: -1;
    top: 0;
    left: 0;
    overflow: hidden;
    width: 100%;
    height: 100vh;
    background-size: cover
}
.p-top-kv_video video {
    position: absolute;
    top: 50%;
    left: 50%;
    z-index: 0;
    min-width: 100%;
    min-height: 100%;
    transform: translate3d(-50%, -50%, 0);
    transition: all 0.8s
}
.p-top-kv_video-overlay {
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 100%;
    background-color: #000;
    opacity: 0.4;
    transition: all 0.8s
}
.p-top-scrollDown {
    display: inline-block;
    position: absolute;
    height: 80px;
    left: 4vw;
    bottom: 0;
    z-index: 2;
    color: #000;
    font-size: 1.2rem;
    line-height: 40px;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    text-decoration: none;
    writing-mode: vertical-lr
}
@media screen and (min-width: 744px) {
    .p-top-scrollDown {
        height: 100px;
        left: 6vw
    }
}
@media screen and (min-width: 1024px) {
    .p-top-scrollDown {
        left: 4vw;
        font-size: 1.4rem;
        line-height: 40px;
        bottom: 100px
    }
}
@media screen and (min-width: 1500px) {
    .p-top-scrollDown {
        height: 130px
    }
}
.p-top-scrollDown::before {
    content: "";
    position: absolute;
    bottom: 0;
    width: 2px;
    height: 80px;
    background: #d9d9d9
}
@media screen and (min-width: 744px) {
    .p-top-scrollDown::before {
        height: 100px
    }
}
@media screen and (min-width: 1500px) {
    .p-top-scrollDown::before {
        height: 130px
    }
}
.p-top-scrollDown::after {
    content: "";
    position: absolute;
    bottom: 0;
    width: 2px;
    height: 80px;
    background: #303e8e;
    animation: sdl 1.5s cubic-bezier(1, 0, 0, 1) infinite
}
@media screen and (min-width: 744px) {
    .p-top-scrollDown::after {
        height: 100px
    }
}
@media screen and (min-width: 1500px) {
    .p-top-scrollDown::after {
        height: 130px
    }
}
@keyframes sdl {
    0% {
        transform: scale(1, 0);
        transform-origin: 0 0
    }
    50% {
        transform: scale(1, 1);
        transform-origin: 0 0
    }
    50.1% {
        transform: scale(1, 1);
        transform-origin: 0 100%
    }
    100% {
        transform: scale(1, 0);
        transform-origin: 0 100%
    }
}
.p-top-about {
    position: relative
}
@media screen and (min-width: 1024px) {
    .p-top-about {
        padding: 100px 0
    }
}
.p-top-about_inner {
    position: relative;
    display: flex;
    flex-direction: column-reverse
}
@media screen and (min-width: 1024px) {
    .p-top-about_inner {
        align-items: flex-start;
        flex-direction: row
    }
}
.p-top-about_content {
    display: flex;
    flex-direction: row-reverse;
    justify-content: center;
    width: 100%;
    margin-bottom: 40px
}
@media screen and (min-width: 1024px) {
    .p-top-about_content {
        width: 60%;
        margin-bottom: 0
    }
}
.p-top-about_title {
    position: relative;
    padding: 15px 0 0 25px;
    writing-mode: vertical-rl
}
@media screen and (min-width: 744px) {
    .p-top-about_title {
        padding-left: 40px
    }
}
.p-top-about_title::before {
    content: "";
    display: inline-block;
    position: absolute;
    top: -20px;
    right: -18px;
    width: 71px;
    height: 70px;
    background: url(../img/bg-mark.svg) center/cover no-repeat
}
@media screen and (min-width: 1500px) {
    .p-top-about_title::before {
        width: 96px;
        height: 95px;
        right: -29px
    }
}
.p-top-about_text {
    padding-top: 25px;
    writing-mode: vertical-rl;
    line-height: 1.6;
    letter-spacing: 0.05em
}
@media screen and (min-width: 744px) {
    .p-top-about_text {
        padding-top: 40px;
        font-size: 1.75rem;
        line-height: 1.8
    }
}
@media screen and (min-width: 1500px) {
    .p-top-about_text {
        line-height: 2;
        letter-spacing: 0.08em
    }
}
.p-top-about_movie {
    position: relative;
    width: 100%
}
@media screen and (min-width: 1024px) {
    .p-top-about_movie {
        width: 40%
    }
}
.p-top-about_movie_img {
    position: relative;
    width: fit-content;
    margin: 0 auto
}
.p-top-about_movie_img img {
    display: block;
    width: 80vw;
    max-width: 500px;
    height: 80vw;
    max-height: 500px;
    border-radius: 50%;
    filter: grayscale(100%);
    transition: all 0.3s ease-in
}
@media screen and (min-width: 1024px) {
    .p-top-about_movie_img img {
        width: 35vw;
        height: 35vw
    }
}
.p-top-about_movie_img.is-movie-none img {
    filter: grayscale(0%)
}
.p-top-about_movie_btn {
    display: flex;
    align-items: flex-end;
    position: absolute;
    bottom: -5%;
    left: 0;
    cursor: pointer
}
@media screen and (min-width: 744px) {
    .p-top-about_movie_btn {
        bottom: 0
    }
}
@media screen and (min-width: 1024px) {
    .p-top-about_movie_btn {
        bottom: -5%
    }
}
@media screen and (min-width: 1500px) {
    .p-top-about_movie_btn {
        bottom: -20px
    }
}
.p-top-about_movie_btn_text {
    display: inline-block;
    padding: 10px 10px 80px;
    margin-right: 15px;
    border-left: 1px solid #000;
    writing-mode: vertical-rl;
    font-size: 1.4rem;
    transform: rotate(180deg)
}
@media screen and (min-width: 1024px) {
    .p-top-about_movie_btn_text {
        padding: 10px 10px 90px;
        margin-right: 25px;
        font-size: 1.75rem
    }
}
.p-top-about_movie_btn_play {
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    width: 60px;
    height: 60px;
    background-color: #9f8a6b;
    border-radius: 50%;
    font-size: 2.5rem;
    color: #fff;
    transition: all 0.3s ease-in
}
@media screen and (min-width: 744px) {
    .p-top-about_movie_btn_play {
        width: 75px;
        height: 75px;
        font-size: 3rem
    }
}
@media screen and (min-width: 1500px) {
    .p-top-about_movie_btn_play {
        width: 80px;
        height: 80px;
        font-size: 4rem
    }
}
.p-top-about_movie_btn_play::before {
    content: "";
    width: 90%;
    height: 10px;
    position: absolute;
    top: 100%;
    left: 5%;
    background: radial-gradient(ellipse at center, rgba(0, 0, 0, 0.35) 0%, transparent 80%);
    z-index: -1;
    opacity: 0;
    transition: 0.3s
}
.p-top-about_movie_btn:hover .p-top-about_movie_btn_play {
    transform: translateY(-7px)
}
.p-top-about_movie_btn:hover .p-top-about_movie_btn_play::before {
    transform: translateY(7px);
    opacity: 1
}
.p-top-about_movie:hover .p-top-about_movie_img img {
    filter: grayscale(0%)
}
.p-top-about_movie:hover .p-top-about_movie_img.is-movie-none img {
    filter: inherit
}
.p-top-about_btn {
    display: flex;
    margin-right: 25px
}
@media screen and (min-width: 744px) {
    .p-top-about_btn {
        margin-right: 40px
    }
}
.p-top-about_btn .c-btn-vertical {
    margin: 0 0 auto
}
.p-top-mainList {
    position: relative;
    margin-bottom: 100px
}
@media screen and (min-width: 1024px) {
    .p-top-mainList {
        margin-bottom: 200px
    }
}
.p-top-mainList_inner {
    position: relative;
    display: flex;
    flex-direction: column
}
@media screen and (min-width: 1024px) {
    .p-top-mainList_inner {
        flex-direction: row;
        align-items: center
    }
}
.p-top-mainList_catch {
    position: relative;
    margin-bottom: 30px
}
@media screen and (min-width: 1024px) {
    .p-top-mainList_catch {
        width: 50%;
        padding-right: 50px;
        margin-bottom: 0
    }
}
.p-top-mainList_catch_bg {
    position: absolute;
    top: -50px;
    left: -25vw;
    width: 80vw;
    max-width: inherit
}
@media screen and (min-width: 744px) {
    .p-top-mainList_catch_bg {
        top: -160px;
        left: -22vw;
        width: 60vw
    }
}
@media screen and (min-width: 1024px) {
    .p-top-mainList_catch_bg {
        top: -250px;
        left: -25vw;
        width: 700px
    }
}
@media screen and (min-width: 1500px) {
    .p-top-mainList_catch_bg {
        top: -360px;
        left: -400px;
        width: 959px
    }
}
@media screen and (min-width: 1024px) {
    .p-top-mainList_content {
        width: 50%
    }
}
.p-top-mainList_img {
    margin-bottom: 40px;
    width: calc(100% + ((100vw - 100%) / 2));
    height: 45vw;
    margin-right: calc(((100vw - 100%) / 2) * -1);
    overflow: hidden
}
@media screen and (min-width: 1024px) {
    .p-top-mainList_img {
        width: calc(100% + ((100vw - 200%) / 2));
        margin-right: calc(((100vw - 200%) / 2) * -1);
        height: 450px
    }
}
@media screen and (min-width: 1500px) {
    .p-top-mainList_img {
        margin-bottom: 50px;
        height: 550px
    }
}
.p-top-mainList_img img {
    width: 100%;
    height: 100%;
    object-fit: cover
}
.p-top-mainList_btn {
    margin-top: 40px
}
@media screen and (min-width: 1500px) {
    .p-top-mainList_btn {
        margin-bottom: 50px
    }
}
@media screen and (min-width: 1024px) {
    .p-top-mainList:nth-child(2n) .p-top-mainList_inner {
        flex-direction: row-reverse
    }
}
@media screen and (min-width: 1024px) {
    .p-top-mainList:nth-child(2n) .p-top-mainList_catch_bg {
        left: inherit;
        right: -25vw
    }
}
@media screen and (min-width: 1500px) {
    .p-top-mainList:nth-child(2n) .p-top-mainList_catch_bg {
        right: -400px
    }
}
@media screen and (min-width: 1024px) {
    .p-top-mainList:nth-child(2n) .p-top-mainList_catch {
        padding: 0 0 0 70px
    }
}
@media screen and (min-width: 1500px) {
    .p-top-mainList:nth-child(2n) .p-top-mainList_catch {
        padding: 0 0 0 100px
    }
}
.p-top-mainList:nth-child(2n) .p-top-mainList_img {
    margin-left: calc(((100vw - 100%) / 2) * -1);
    margin-right: 0
}
@media screen and (min-width: 1024px) {
    .p-top-mainList:nth-child(2n) .p-top-mainList_img {
        margin-left: calc(((100vw - 200%) / 2) * -1)
    }
}
.p-top-subList {
    position: relative;
    padding: 70px 0
}
.p-top-subList_bg {
    position: absolute;
    top: 0;
    left: 0;
    width: calc(100% + ((100vw - 100%) / 2) + 7px);
    height: 100%;
    margin-left: calc(((100vw - 100%) / 2) * -1);
    background-color: #fff;
    border-radius: 0 30px 30px 0
}
@media screen and (min-width: 1024px) {
    .p-top-subList_bg {
        width: calc(40vw + ((100vw - 100%) / 2));
        border-radius: 0 50px 50px 0
    }
}
.p-top-subList_inner {
    position: relative
}
.p-top-subList_item {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-bottom: 50px
}
@media screen and (min-width: 1024px) {
    .p-top-subList_item {
        flex-direction: row;
        margin-bottom: 100px
    }
}
.p-top-subList_item:last-child {
    margin-bottom: 0
}
.p-top-subList_item_heading {
    display: flex;
    margin-bottom: 30px
}
@media screen and (min-width: 1024px) {
    .p-top-subList_item_heading {
        width: 35%;
        margin-bottom: 0
    }
}
@media screen and (min-width: 1500px) {
    .p-top-subList_item_heading {
        width: 30%
    }
}
.p-top-subList_item_heading .c-title-h2 {
    writing-mode: vertical-rl
}
.p-top-subList_item_text {
    padding-left: 15px;
    font-size: 1.2rem
}
@media screen and (min-width: 744px) {
    .p-top-subList_item_text {
        padding-left: 25px;
        font-size: 1.4rem
    }
}
@media screen and (min-width: 1024px) {
    .p-top-subList_item_text {
        padding-left: 30px;
        font-size: inherit
    }
}
@media screen and (min-width: 1500px) {
    .p-top-subList_item_text {
        padding-left: 40px
    }
}
.p-top-subList_item_text p {
    margin-bottom: 30px
}
.p-top-subList_item_img {
    margin-right: calc(((100vw - 100%) / 2) * -1)
}
@media screen and (min-width: 1024px) {
    .p-top-subList_item_img {
        width: 65%;
        padding-left: 50px;
        margin-right: 0
    }
}
@media screen and (min-width: 1500px) {
    .p-top-subList_item_img {
        width: 70%;
        padding-left: 100px
    }
}
.p-top-bnr {
    padding-bottom: 100px;
    background-color: #fff
}
@media screen and (min-width: 1024px) {
    .p-top-bnr {
        padding-bottom: 200px
    }
}
.p-top-bnr_img {
    display: block;
    width: 100%;
    max-width: 1200px;
    height: auto;
    margin: 0 auto;
    border-radius: 10px;
    overflow: hidden;
    text-align: center
}
@media screen and (min-width: 744px) {
    .p-top-bnr_img {
        border-radius: 20px
    }
}
.p-top-bnr_img img {
    display: block;
    width: 100%;
    height: auto
}
.p-top-news {
    position: relative
}
@media screen and (min-width: 1024px) {
    .p-top-news {
        display: flex;
        align-items: flex-start
    }
}
.p-top-news_bg {
    position: absolute;
    top: -40px;
    right: -15vw;
    width: 80vw
}
@media screen and (min-width: 744px) {
    .p-top-news_bg {
        top: -120px;
        right: -9vw;
        width: 70vw
    }
}
@media screen and (min-width: 1024px) {
    .p-top-news_bg {
        top: -200px;
        left: -330px;
        right: inherit;
        width: 770px
    }
}
.p-top-news_bg img {
    width: 100%
}
.p-top-news_title {
    position: relative;
    width: 100%;
    margin-bottom: 30px
}
@media screen and (min-width: 1024px) {
    .p-top-news_title {
        width: 35%;
        padding-right: 50px
    }
}
@media screen and (min-width: 1500px) {
    .p-top-news_title {
        padding-right: 70px
    }
}
.p-top-news_text {
    display: flex;
    flex-direction: row;
    font-size: 1.4rem
}
@media screen and (min-width: 1024px) {
    .p-top-news_text {
        flex-direction: column;
        font-size: inherit
    }
}
.p-top-news_text_img {
    width: 35%
}
@media screen and (min-width: 1024px) {
    .p-top-news_text_img {
        margin-top: 50px;
        width: 60%
    }
}
.p-top-news_content {
    position: relative;
    width: 100%
}
@media screen and (min-width: 1024px) {
    .p-top-news_content {
        width: 65%
    }
}
.p-top-news_btn {
    display: flex;
    justify-content: flex-end
}
.p-top-report {
    position: relative;
    width: 100%
}
.p-top-report_heading {
    position: relative;
    margin-bottom: 50px
}
@media screen and (min-width: 1024px) {
    .p-top-report_heading {
        margin-bottom: 100px
    }
}
.p-top-report_btn {
    display: flex;
    justify-content: flex-end
}
.p-top-gallery {
    position: relative;
    background-color: #fff
}
.p-top-gallery_btn {
    display: flex;
    align-items: center;
    justify-content: center;
    position: absolute;
    top: 50%;
    left: 50%;
    width: 220px;
    height: 240px;
    background-color: #fff;
    transform: translate(-50%, -50%);
    clip-path: polygon(0 25%, 50% 0, 100% 25%, 100% 74%, 50% 100%, 0 75%);
    text-align: center;
    z-index: 2
}
@media screen and (min-width: 1024px) {
    .p-top-gallery_btn {
        width: 290px;
        height: 320px
    }
}
.p-top-gallery_btn::after {
    content: "";
    display: inline-block;
    position: absolute;
    bottom: 50px;
    width: 50px;
    height: 7px;
    border-bottom: 1px solid #232d68;
    border-right: 1px solid #232d68;
    transform: translateX(-50%);
    transform: skew(45deg);
    transition: all 0.3s
}
.p-top-gallery_btn_title .en {
    font-size: 1.2rem
}
@media screen and (min-width: 1024px) {
    .p-top-gallery_btn_title .en {
        font-size: 1.4rem
    }
}
.p-top-gallery_btn_title .ja {
    font-size: 2rem;
    line-height: 1.5;
    letter-spacing: 0.1em
}
@media screen and (min-width: 1024px) {
    .p-top-gallery_btn_title .ja {
        font-size: 3.5rem
    }
}
.p-top-gallery_btn:hover::after {
    width: 65px;
    border-bottom: 1px solid #9f8a6b;
    border-right: 1px solid #9f8a6b
}
.p-top-gallery_img {
    display: flex;
    flex-wrap: nowrap;
    position: relative;
    height: 400px
}
@media screen and (min-width: 1024px) {
    .p-top-gallery_img {
        height: 400px
    }
}
.p-top-gallery_img li {
    width: calc(100% / 3)
}
.p-top-gallery_img li img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover
}
.p-top-gallery_img::before {
    content: "";
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 100%;
    background-color: #000;
    opacity: 0.4
}
.p-top-info {
    position: relative
}
.p-top-info_head {
    position: relative;
    margin-bottom: 50px
}
@media screen and (min-width: 1024px) {
    .p-top-info_head {
        text-align: center;
        margin-bottom: 70px
    }
}
.p-top-info_lead {
    max-width: 1000px;
    margin: 0 auto
}
.p-top-info_btn {
    max-width: 800px;
    margin: 0 auto
}
.p-request_stepper {
    position: relative;
    max-width: 768px;
    margin: 0 auto;
    text-align: center
}
.p-request_body {
    position: relative;
    max-width: 1100px;
    margin: 40px auto
}
@media screen and (min-width: 1024px) {
    .p-request_body {
        margin: 70px auto
    }
}
.p-request_alart {
    padding: 15px;
    margin-bottom: 40px;
    text-align: center;
    border: 1px solid #000;
    border-radius: 10px
}
@media screen and (min-width: 1024px) {
    .p-request_alart {
        padding: 25px;
        margin-bottom: 70px
    }
}
.p-request_alart_text {
    font-size: 1.4rem
}
@media screen and (min-width: 1024px) {
    .p-request_alart_text {
        font-size: 2rem
    }
}
.p-request_alart_tel {
    display: block;
    margin: 8px 0;
    font-size: 2.5rem;
    color: #9f8a6b;
    word-break: keep-all
}
@media screen and (min-width: 1024px) {
    .p-request_alart_tel {
        font-size: 3.5rem
    }
}
.p-request_alart_tel a {
    color: #9f8a6b
}
.p-request_form-group {
    position: relative;
    text-align: left;
    padding-top: 40px;
    line-height: 1.75;
    letter-spacing: 0.05em
}
@media screen and (min-width: 744px) {
    .p-request_form-group {
        display: flex
    }
}
.p-request_form-title {
    display: block;
    width: 100%;
    padding-bottom: 15px;
    font-size: 1.4rem;
    line-height: 2
}
@media screen and (min-width: 744px) {
    .p-request_form-title {
        flex-basis: 180px;
        padding: 0
    }
}
@media screen and (min-width: 1024px) {
    .p-request_form-title {
        flex-basis: 220px;
        padding-top: 8px
    }
}
.p-request_form-title span {
    color: #e15f35
}
.p-request_form-el {
    width: 100%
}
.p-request_form-el-into-halves {
    padding-bottom: 15px
}
@media screen and (min-width: 744px) {
    .p-request_form-el-into-halves {
        width: 49%;
        padding-bottom: inherit
    }
}
.p-request_form-el-into-thirds {
    padding-bottom: 15px
}
@media screen and (min-width: 744px) {
    .p-request_form-el-into-thirds {
        width: 32%;
        padding-bottom: inherit
    }
}
.p-request_form-policy {
    margin: 50px 0;
    padding: 30px 0;
    border-top: 1px solid #d9d9d9;
    border-bottom: 1px solid #d9d9d9
}
.p-request_form-policy .mwform-checkbox-field {
    display: block;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content
}
.p-request_form-policy a {
    position: relative;
    display: inline-block;
    margin-right: 8px;
    margin-left: 15px;
    cursor: pointer
}
.p-request_form-policy .check-required {
    color: #e15f35
}
.p-request_form_btn {
    display: flex;
    align-items: center;
    justify-content: center
}
.mw_wp_form_confirm .p-request_form-el-into-halves {
    padding-bottom: 0;
    padding-right: 8px
}
@media screen and (min-width: 744px) {
    .mw_wp_form_confirm .p-request_form-el-into-halves {
        width: auto
    }
}
.mw_wp_form_confirm .p-request_form-el-into-thirds {
    padding-bottom: 0;
    padding-right: 8px
}
@media screen and (min-width: 744px) {
    .mw_wp_form_confirm .p-request_form-el-into-thirds {
        width: auto
    }
}
.mw_wp_form_confirm .p-request_form_btn {
    display: flex;
    flex-direction: column;
    align-items: center
}
@media screen and (min-width: 744px) {
    .mw_wp_form_confirm .p-request_form_btn {
        flex-direction: row
    }
}
.mw_wp_form_confirm .p-request_form_btn button {
    margin-bottom: 40px
}
@media screen and (min-width: 744px) {
    .mw_wp_form_confirm .p-request_form_btn button {
        margin: 0 auto
    }
}
.p-request-thanks {
    margin-bottom: 50px
}
@media screen and (min-width: 1024px) {
    .p-request-thanks {
        margin-bottom: 70px
    }
}
.p-request-thanks_title {
    margin-top: 30px;
    font-size: 2rem;
    letter-spacing: 0.05em;
    line-height: 1.8;
    font-weight: 700;
    text-align: center
}
@media screen and (min-width: 1024px) {
    .p-request-thanks_title {
        margin-top: 40px;
        font-size: 2.5rem
    }
}
.p-request-thanks_text {
    margin: 30px 0;
    letter-spacing: 0.05em;
    line-height: 1.8;
    text-align: left
}
@media screen and (min-width: 744px) {
    .p-request-thanks_text {
        margin: 40px 0;
        text-align: center
    }
}
.p-news_flexbox {
    display: flex;
    flex-direction: column-reverse;
    justify-content: flex-end
}
@media screen and (min-width: 1024px) {
    .p-news_flexbox {
        flex-direction: row
    }
}
.p-news_main {
    flex: auto
}
@media screen and (min-width: 1024px) {
    .p-news_main {
        flex: 1;
        padding-right: 6%
    }
}
.p-news_main-title {
    margin-top: 30px;
    margin-bottom: 30px;
    font-size: 1.75rem;
    letter-spacing: 0.05em;
    font-weight: 400
}
@media screen and (min-width: 1024px) {
    .p-news_main-title {
        margin-top: 0;
        margin-bottom: 50px;
        font-size: 2rem
    }
}
.p-news_side {
    flex-basis: auto
}
@media screen and (min-width: 1024px) {
    .p-news_side {
        flex-basis: 250px
    }
}
.p-news_list {
    position: relative;
    width: 100%;
    margin-bottom: 40px
}
.p-news_list-item {
    position: relative;
    padding: 15px 40px 15px 0;
    margin-bottom: 8px;
    border-bottom: 1px solid silver
}
@media screen and (min-width: 744px) {
    .p-news_list-item {
        padding-right: 50px
    }
}
.p-news_list-item a {
    display: block
}
.p-news_list-item a:hover {
    color: #000
}
.p-news_list-item a:hover .p-news_list_title {
    color: #232d68
}
.p-news_list-item a:hover .p-news_achive_arrow::before {
    transform: translate(13px, -50%)
}
.p-news_list__arrow {
    position: absolute;
    top: 50%;
    right: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 50px;
    height: 30px;
    transition: 0.8s
}
.p-news_list__arrow-icon {
    display: inline-block;
    vertical-align: middle;
    color: #000;
    line-height: 1;
    position: relative;
    width: 18px;
    height: 0.2em;
    background: currentColor
}
.p-news_list__arrow-icon::before {
    content: "";
    position: absolute;
    top: 50%;
    right: -0.2em;
    width: 13px;
    height: 13px;
    border: 0.2em solid currentColor;
    border-left: 0;
    border-bottom: 0;
    transform: translate(0, 0.025em) rotate(45deg);
    transform-origin: top right
}
.p-news_list_header {
    display: flex;
    align-items: center;
    margin-bottom: 8px
}
@media screen and (min-width: 744px) {
    .p-news_list_header {
        margin-bottom: 15px
    }
}
.p-news_list-date {
    margin-right: 10px;
    font-size: 1.2rem;
    color: #232d68
}
@media screen and (min-width: 744px) {
    .p-news_list-date {
        font-size: 1.4rem
    }
}
.p-news_list-category {
    font-size: 1.2rem;
    display: flex;
    align-items: center;
    padding: 0 10px;
    letter-spacing: 0.05em;
    border: 1px solid #d9d9d9
}
@media screen and (min-width: 744px) {
    .p-news_list-category {
        font-size: 1.4rem
    }
}
.p-news_list_title {
    font-size: 1.4rem;
    letter-spacing: 0.05em;
    font-weight: 400
}
@media screen and (min-width: 744px) {
    .p-news_list_title {
        font-size: 1.75rem
    }
}
.p-news_achive_arrow {
    position: absolute;
    top: 50%;
    right: 0;
    display: inline-block;
    width: 20px;
    height: 1px;
    margin-right: 8px;
    background-color: #000
}
.p-news_achive_arrow::before {
    content: "";
    display: block;
    position: absolute;
    left: 0;
    top: 50%;
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background-color: #000;
    transform: translateY(-50%);
    transition: all 0.3s 0s ease
}
.p-news-detail_header {
    width: 100%;
    padding-bottom: 15px;
    border-bottom: 1px solid silver
}
.p-news-detail_title {
    font-size: 2rem;
    font-weight: 400;
    line-height: 1.6
}
@media screen and (min-width: 744px) {
    .p-news-detail_title {
        font-size: 3rem
    }
}
.p-news-detail_body {
    position: relative;
    margin: 0 auto;
    line-height: 2
}
.p-news-detail_body p {
    margin-bottom: 30px
}
.p-news-detail_body img {
    height: auto
}
.p-news_pagenation {
    margin-top: 50px;
    text-align: center
}
.p-news_btn {
    margin: 25px 0 40px;
    text-align: center
}
.p-faq_inner {
    display: flex;
    flex-direction: column-reverse;
    justify-content: flex-end;
    max-width: unset
}
@media screen and (min-width: 1024px) {
    .p-faq_inner {
        flex-direction: row
    }
}
.p-faq_main {
    flex: auto;
    padding-right: 6%;
    overflow: auto
}
@media screen and (min-width: 1024px) {
    .p-faq_main {
        flex: 1;
        padding-right: 6%
    }
}
.p-faq_side {
    flex-basis: auto
}
@media screen and (min-width: 1024px) {
    .p-faq_side {
        flex-basis: 350px;
        padding-top: 50px
    }
}
@media screen and (min-width: 1024px) {
    .p-faq_side .c-filter_list-item {
        margin: 15px 0
    }
}
.p-faq_side .c-filter_list-item_link {
    position: relative;
    display: inline-block;
    padding-left: 30px;
    font-size: 1.6rem;
    color: #000
}
@media screen and (min-width: 1024px) {
    .p-faq_side .c-filter_list-item_link {
        color: #d9d9d9
    }
}
.p-faq_side .c-filter_list-item_link::before {
    position: absolute;
    content: "—";
    top: 0;
    left: 0
}
@media screen and (min-width: 1024px) {
    .p-faq_side .c-filter_list-item_link.is-active {
        color: #000
    }
}
.p-faq_group {
    padding-top: 50px;
    margin-bottom: 50px
}
.p-faq_group-list {
    margin-bottom: 15px
}
.p-faq_group-item {
    position: relative;
    margin-bottom: 15px;
    cursor: pointer;
    letter-spacing: 0.05em;
    border-bottom: 1px solid silver
}
.p-faq_group-item-title {
    position: relative;
    padding: 15px 0;
    cursor: pointer
}
@media screen and (min-width: 744px) {
    .p-faq_group-item-title {
        padding: 25px 0;
        font-size: 1.75rem;
        line-height: 2
    }
}
.p-faq_group-item-title span {
    display: block;
    position: relative;
    padding-left: 40px;
    padding-right: 25px;
    pointer-events: none
}
@media screen and (min-width: 744px) {
    .p-faq_group-item-title span {
        padding-left: 50px;
        padding-right: 60px
    }
}
.p-faq_group-item-title span::before {
    content: "Q";
    display: flex;
    align-items: center;
    justify-content: center;
    position: absolute;
    width: 30px;
    height: 30px;
    left: 0;
    top: 0;
    font-size: 1.5rem;
    color: #fff;
    background-color: #232d68;
    border-radius: 50%
}
.p-faq_group-item-title::before {
    content: "";
    position: absolute;
    right: 8px;
    top: 0;
    bottom: 0;
    margin: auto 0;
    background-color: #000;
    width: 15px;
    height: 1px;
    transition: all 0.3s
}
@media screen and (min-width: 744px) {
    .p-faq_group-item-title::before {
        right: 25px
    }
}
.p-faq_group-item-title::after {
    content: "";
    position: absolute;
    right: 8px;
    top: 0;
    bottom: 0;
    margin: auto 0;
    background-color: #000;
    width: 15px;
    height: 1px;
    transform: rotate(90deg);
    transition: all 0.3s
}
@media screen and (min-width: 744px) {
    .p-faq_group-item-title::after {
        right: 25px
    }
}
.p-faq_group-item-content {
    display: none;
    padding: 0 0 8px;
    cursor: pointer;
    color: #000
}
@media screen and (min-width: 744px) {
    .p-faq_group-item-content {
        padding: 0 0 25px
    }
}
.p-faq_group-item-content span {
    display: block;
    position: relative;
    padding-left: 40px;
    padding-right: 25px;
    pointer-events: none
}
@media screen and (min-width: 744px) {
    .p-faq_group-item-content span {
        padding-left: 50px;
        padding-right: 60px
    }
}
.p-faq_group-item-content span::before {
    content: "A";
    display: flex;
    align-items: center;
    justify-content: center;
    position: absolute;
    width: 30px;
    height: 30px;
    left: 0;
    top: 0;
    margin: auto 0;
    font-size: 1.5rem;
    color: #fff;
    background-color: #9f8a6b;
    border-radius: 50%
}
.p-faq_group-item-content.is-open {
    display: block
}
.p-faq_group-item.is-active .p-faq_group-item-title::before {
    transform: rotate(180deg)
}
.p-faq_group-item.is-active .p-faq_group-item-title::after {
    transform: rotate(180deg);
    opacity: 0
}
.p-access_body {
    position: relative;
    margin: 0 auto
}
.p-access_info {
    display: flex;
    align-items: center;
    flex-direction: column-reverse;
    margin: 0 auto 100px
}
@media screen and (min-width: 1024px) {
    .p-access_info {
        flex-direction: row;
        margin-bottom: 150px
    }
}
.p-access_info_detail {
    display: flex;
    flex-direction: column;
    max-width: 400px;
    margin: 0 auto;
    font-size: 1.2rem
}
@media screen and (min-width: 1024px) {
    .p-access_info_detail {
        width: 30%;
        padding: 0 30px
    }
}
.p-access_info_detail_inner {
    position: relative
}
.p-access_info_detail_inner:first-child {
    margin-bottom: 50px
}
.p-access_info_logo {
    margin-bottom: 15px
}
@media screen and (min-width: 1024px) {
    .p-access_info_logo img {
        width: 80%;
        margin-bottom: 30px
    }
}
.p-access_info_name {
    margin-bottom: 8px;
    font-size: 2rem;
    color: #9f8a6b
}
.p-access_info_address {
    margin-bottom: 15px
}
.p-access_info_tel {
    margin-bottom: 15px
}
.p-access_info_btn {
    margin-top: 25px
}
@media screen and (min-width: 1024px) {
    .p-access_info_btn {
        margin-top: 40px
    }
}
.p-access_info_btn .c-btn {
    display: block;
    margin: 0 auto
}
@media screen and (min-width: 744px) {
    .p-access_info_btn .c-btn {
        width: fit-content
    }
}
@media screen and (min-width: 1024px) {
    .p-access_info_btn .c-btn {
        margin-left: 0
    }
}
.p-access_info_map {
    margin-bottom: 50px
}
@media screen and (min-width: 1024px) {
    .p-access_info_map {
        width: 70%;
        padding: 0 30px;
        margin-bottom: 0
    }
}
.p-access_info_map img {
    width: 100%
}
.p-access_otherInfo {
    padding: 15px;
    background-color: #ebe7e1;
    border-radius: 10px
}
@media screen and (min-width: 744px) {
    .p-access_otherInfo {
        padding: 40px
    }
}
@media screen and (min-width: 1024px) {
    .p-access_otherInfo {
        padding: 70px
    }
}
.p-report_list {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    row-gap: 70px;
    position: relative;
    width: 100%
}
.p-report_list_item {
    width: 100%;
    cursor: pointer
}
@media screen and (min-width: 744px) {
    .p-report_list_item {
        width: 48%
    }
}
.p-report_list_item:hover .p-report_list_title::after {
    right: -55px;
    width: 60px
}
@media screen and (min-width: 1024px) {
    .p-report_list_item:hover .p-report_list_title::after {
        right: -85px;
        width: 70px
    }
}
.p-report_list_item:hover .p-report_list_img img {
    transform: scale(1.2);
    transition-duration: 0.5s
}
.p-report_list_img {
    position: relative;
    width: 100%;
    overflow: hidden
}
.p-report_list_img img {
    display: block;
    width: 100%;
    transition-duration: 0.5s
}
.p-report_list_info {
    position: relative;
    width: 88%;
    padding: 10px 20px 10px 10px;
    margin-top: -60px;
    background-color: #fff
}
@media screen and (min-width: 1024px) {
    .p-report_list_info {
        padding: 10px 30px 10px 10px
    }
}
@media screen and (min-width: 1500px) {
    .p-report_list_info {
        width: 85%;
        padding: 13px 40px 13px 13px;
        margin-top: -70px
    }
}
.p-report_list_info span {
    display: block;
    font-size: 1rem
}
@media screen and (min-width: 1024px) {
    .p-report_list_info span {
        font-size: 1.2rem
    }
}
.p-report_list_title {
    position: relative;
    padding-top: 8px;
    margin-top: 8px;
    border-top: 1px solid #d9d9d9
}
.p-report_list_title::after {
    content: "";
    display: inline-block;
    position: absolute;
    right: -35px;
    bottom: 8px;
    width: 40px;
    height: 7px;
    border-bottom: 1px solid #232d68;
    border-right: 1px solid #232d68;
    transform: skew(45deg);
    transition: all 0.3s
}
@media screen and (min-width: 1024px) {
    .p-report_list_title::after {
        right: -65px;
        width: 50px
    }
}
.p-article_heading {
    position: relative;
    width: calc(100% + 6vw);
    margin-right: -6vw
}
@media screen and (min-width: 744px) {
    .p-article_heading {
        width: calc(100% + 9vw);
        margin-right: -9vw
    }
}
@media screen and (min-width: 1024px) {
    .p-article_heading {
        width: 100%;
        margin-right: 0
    }
}
.p-article_heading_bg {
    display: inline-block;
    position: absolute;
    left: -10px;
    font-size: 3rem;
    color: #d9d9d9;
    writing-mode: vertical-rl
}
@media screen and (min-width: 744px) {
    .p-article_heading_bg {
        font-size: 5rem
    }
}
@media screen and (min-width: 1500px) {
    .p-article_heading_bg {
        font-size: 8rem
    }
}
.p-article_heading_img {
    position: relative;
    padding-left: 40px
}
@media screen and (min-width: 744px) {
    .p-article_heading_img {
        padding-left: 100px
    }
}
@media screen and (min-width: 1500px) {
    .p-article_heading_img {
        padding-left: 150px
    }
}
.p-article_heading_img img {
    width: 100%;
    height: 45vw;
    object-fit: cover
}
@media screen and (min-width: 744px) {
    .p-article_heading_img img {
        height: 400px
    }
}
@media screen and (min-width: 1024px) {
    .p-article_heading_img img {
        height: 500px
    }
}
@media screen and (min-width: 1500px) {
    .p-article_heading_img img {
        height: 600px
    }
}
.p-article_heading_info {
    position: relative;
    width: 95%;
    padding: 10px;
    margin-top: -40px;
    background-color: #fff
}
@media screen and (min-width: 744px) {
    .p-article_heading_info {
        width: 85%;
        padding: 13px 30px 13px 13px;
        margin-top: -50px
    }
}
@media screen and (min-width: 1024px) {
    .p-article_heading_info {
        padding: 15px 40px 15px 15px;
        margin-top: -70px
    }
}
.p-article_heading_info span {
    display: block;
    font-size: 1rem
}
@media screen and (min-width: 1024px) {
    .p-article_heading_info span {
        font-size: 1.2rem
    }
}
.p-article_heading_title {
    position: relative;
    padding-top: 8px;
    margin-top: 8px;
    border-top: 1px solid #d9d9d9
}
@media screen and (min-width: 1024px) {
    .p-article_heading_title {
        font-size: 2rem
    }
}
.p-article-detail_body {
    position: relative;
    margin: 0 auto;
    line-height: 2
}
.p-article-detail_body p {
    margin-bottom: 30px
}
.p-article-detail_body img {
    height: auto
}
.p-gallery_item {
    position: relative
}
.p-gallery_item img {
    display: block;
    width: 100%
}
.p-gallery_item a {
    display: block;
    position: relative
}
.p-gallery_item_info {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    padding: 15px;
    background: linear-gradient(transparent, rgba(0, 0, 0, 0.7))
}
.p-gallery_item_info_inner {
    padding: 5px 8px;
    border-left: 1px solid #fff;
    color: #fff
}
.p-gallery_item_title {
    font-size: 1.75rem;
    line-height: 1.4
}
.p-gallery_item_cat {
    font-size: 1.2rem
}
.p-gallery_item_btn {
    position: absolute;
    top: 0;
    right: 0;
    color: #fff;
    font-size: 2.5rem;
    padding: 8px;
    line-height: 1
}
@media screen and (min-width: 1024px) {
    .p-facility:nth-of-type(2n) .p-facility_block_heading {
        left: unset;
        right: -30px
    }
}
@media screen and (min-width: 1024px) {
    .p-facility:nth-of-type(2n) .p-facility_group {
        flex-direction: row-reverse;
        padding-left: 0;
        padding-right: 80px
    }
}
@media screen and (min-width: 1024px) {
    .p-facility:nth-of-type(2n) .p-facility_group_slider {
        margin-right: 0;
        margin-left: calc(((100vw - 100%) / 2) * -1);
        padding-left: 0;
        padding-right: 80px
    }
}
@media screen and (min-width: 1024px) {
    .p-facility:nth-of-type(2n) .p-facility_group_slider_item {
        justify-content: flex-end
    }
}
@media screen and (min-width: 1024px) {
    .p-facility:nth-of-type(2n) .p-facility_group_slider_title {
        display: flex;
        flex-direction: column;
        align-items: flex-end
    }
    .p-facility:nth-of-type(2n) .p-facility_group_slider_title span {
        padding-left: 0;
        padding-right: 30px
    }
}
@media screen and (min-width: 1024px) {
    .p-facility:nth-of-type(2n) .swiper-photo .swiper-pagination-v {
        left: unset !important;
        right: -35px
    }
}
.p-facility_block {
    position: relative
}
@media screen and (min-width: 1024px) {
    .p-facility_block {
        padding-top: 80px
    }
}
.p-facility_block_body {
    width: 100%
}
@media screen and (min-width: 1024px) {
    .p-facility_block_body {
        padding-left: 200px
    }
}
.p-facility_block_body .p-facility_others {
    padding-top: 70px
}
@media screen and (min-width: 1024px) {
    .p-facility_block_body .p-facility_others {
        padding-top: 0;
        padding-bottom: 100px
    }
    .p-facility_block_body .p-facility_others .p-facility_others_head {
        text-align: left
    }
    .p-facility_block_body .p-facility_others .p-facility_others_head .c-title-under {
        width: 400px;
        padding: 0 0 15px
    }
}
@media screen and (min-width: 1024px) {
    .p-facility_block_body .p-facility_others:last-child {
        padding-bottom: 0
    }
}
.p-facility_block_heading {
    position: relative;
    display: flex;
    align-items: center;
    line-height: 1
}
@media screen and (min-width: 1024px) {
    .p-facility_block_heading {
        position: absolute;
        top: 0;
        left: -30px;
        writing-mode: vertical-rl;
        line-height: 60px
    }
}
.p-facility_block_heading_icon {
    position: absolute;
    bottom: -20px;
    left: 0;
    display: block;
    width: auto;
    height: 100px
}
@media screen and (min-width: 1024px) {
    .p-facility_block_heading_icon {
        bottom: inherit;
        top: 0;
        width: 90px;
        height: auto
    }
}
.p-facility_block_heading_icon img {
    display: block;
    width: auto;
    height: 100%
}
@media screen and (min-width: 1024px) {
    .p-facility_block_heading_icon img {
        width: 100%;
        height: auto
    }
}
.p-facility_block_heading_inner {
    position: relative;
    display: flex;
    flex-direction: column;
    width: 60vw;
    padding-left: 30px
}
@media screen and (min-width: 1024px) {
    .p-facility_block_heading_inner {
        flex-direction: row;
        width: 90px;
        padding: 70px 15px 0
    }
}
.p-facility_block_title {
    font-size: 1.75rem;
    color: #9f8a6b;
    word-break: keep-all
}
.p-facility_block_line {
    width: 100%;
    height: 1px;
    margin: 8px 0;
    background-color: #000
}
@media screen and (min-width: 1024px) {
    .p-facility_block_line {
        width: 1px;
        height: 150px;
        margin: 25px auto
    }
}
.p-facility_block_enTitle {
    word-break: keep-all
}
.p-facility_group {
    display: flex;
    align-items: center;
    flex-direction: column;
    position: relative;
    margin: 50px 0 70px
}
@media screen and (min-width: 1024px) {
    .p-facility_group {
        flex-direction: row;
        padding-left: 80px;
        margin: 70px 0 150px
    }
}
.p-facility_group_content {
    width: 100%
}
@media screen and (min-width: 1024px) {
    .p-facility_group_content {
        width: 35%
    }
}
@media screen and (min-width: 1500px) {
    .p-facility_group_content {
        width: 45%
    }
}
.p-facility_group_slider {
    width: calc(100% + ((100vw - 100%) / 2));
    margin-right: calc(((100vw - 100%) / 2) * -1);
    margin-top: 40px
}
@media screen and (min-width: 1024px) {
    .p-facility_group_slider {
        width: calc(65% + ((100vw - 100%) / 2));
        padding-left: 80px;
        margin-top: 0
    }
}
@media screen and (min-width: 1500px) {
    .p-facility_group_slider {
        width: calc(55% + ((100vw - 100%) / 2))
    }
}
.p-facility_group_slider_item {
    position: relative;
    display: flex;
    align-items: flex-end;
    width: 100%;
    height: 60vw;
    overflow: hidden
}
@media screen and (min-width: 1024px) {
    .p-facility_group_slider_item {
        height: 45vw
    }
}
@media screen and (min-width: 1500px) {
    .p-facility_group_slider_item {
        height: 600px
    }
}
.p-facility_group_slider_item img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    z-index: 0
}
.p-facility_group_slider_filter {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
    background: linear-gradient(transparent, rgba(0, 0, 0, 0.7))
}
.p-facility_group_slider_title {
    position: relative;
    width: 80%;
    margin-bottom: 30px;
    color: #fff;
    border-bottom: 1px solid #fff;
    z-index: 2
}
@media screen and (min-width: 744px) {
    .p-facility_group_slider_title {
        width: 70%;
        margin-bottom: 50px
    }
}
.p-facility_group_slider_title span {
    display: inline-block;
    padding-left: 30px;
    padding-bottom: 5px
}
@media screen and (min-width: 744px) {
    .p-facility_group_slider_title span {
        padding-left: 30px;
        font-size: 25px
    }
}
.p-facility_others.spec-only {
    padding-top: 70px
}
@media screen and (min-width: 1024px) {
    .p-facility_others.spec-only {
        padding-top: 0;
        padding-left: 200px
    }
}
@media screen and (min-width: 1024px) {
    .p-facility_others.spec-only .p-facility_others_head {
        text-align: left
    }
}
@media screen and (min-width: 1024px) {
    .p-facility_others.spec-only .p-facility_others_head .c-title-under {
        width: 400px;
        padding: 0 0 15px
    }
}
.p-facility_others_body {
    padding: 15px 25px 25px;
    background-color: #ebe7e1;
    border-radius: 10px
}
@media screen and (min-width: 744px) {
    .p-facility_others_body {
        padding: 25px 40px 40px
    }
}
@media screen and (min-width: 1024px) {
    .p-facility_others_body {
        padding: 70px 50px
    }
}
.p-facility_others_inner {
    max-width: 1000px;
    margin: 0 auto
}
.p-facility-incidental {
    margin: 50px 0 25px
}
@media screen and (min-width: 1024px) {
    .p-facility-incidental {
        width: 80%;
        max-width: 1200px;
        padding-left: 0;
        margin: 0 0 0 auto
    }
}
.p-facility-incidental_main {
    margin-bottom: 70px
}
@media screen and (min-width: 1024px) {
    .p-facility-incidental_main {
        margin-bottom: 40px
    }
}
.p-facility-incidental_main_lead {
    margin-bottom: 15px
}
.p-facility-incidental_main_notionList {
    position: relative;
    display: flex;
    flex-direction: column
}
.p-facility-incidental_main_notionList-item {
    position: relative;
    display: inline-block;
    padding-left: 15px;
    font-size: 1.2rem
}
.p-facility-incidental_main_notionList-item::before {
    position: absolute;
    content: "※";
    top: 0;
    left: 0
}
.p-facility-incidental_main_imgList {
    display: flex;
    flex-wrap: wrap;
    gap: 50px;
    margin-top: 40px
}
@media screen and (min-width: 744px) {
    .p-facility-incidental_main_imgList {
        margin-top: 70px
    }
}
.p-facility-incidental_main_imgList-item {
    display: block;
    width: 100%;
    height: 50vw
}
@media screen and (min-width: 744px) {
    .p-facility-incidental_main_imgList-item {
        width: calc((100% - 50px) / 2);
        height: 23vw
    }
}
@media screen and (min-width: 1024px) {
    .p-facility-incidental_main_imgList-item {
        height: 18vw
    }
}
@media screen and (min-width: 1500px) {
    .p-facility-incidental_main_imgList-item {
        height: 300px
    }
}
.p-facility-incidental_main_imgList-item img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover
}
.p-facility-incidental_list {
    margin-bottom: 50px
}
@media screen and (min-width: 1024px) {
    .p-facility-incidental_list {
        margin-bottom: 70px
    }
}
.p-facility-incidental_list_item {
    position: relative;
    cursor: pointer;
    letter-spacing: 0.05em;
    border-bottom: 1px solid silver
}
.p-facility-incidental_list_item_title {
    position: relative;
    padding: 20px 25px 20px 10px;
    cursor: pointer;
    font-size: 2rem;
    color: #232d68
}
@media screen and (min-width: 744px) {
    .p-facility-incidental_list_item_title {
        padding: 20px 25px 20px 10px;
        font-size: 2.5rem;
        line-height: 2
    }
}
.p-facility-incidental_list_item_title::before {
    content: "";
    position: absolute;
    right: 8px;
    top: 0;
    bottom: 0;
    margin: auto 0;
    background-color: #000;
    width: 15px;
    height: 1px;
    transition: all 0.3s
}
@media screen and (min-width: 744px) {
    .p-facility-incidental_list_item_title::before {
        right: 25px;
        width: 20px
    }
}
.p-facility-incidental_list_item_title::after {
    content: "";
    position: absolute;
    right: 8px;
    top: 0;
    bottom: 0;
    margin: auto 0;
    background-color: #000;
    width: 15px;
    height: 1px;
    transform: rotate(90deg);
    transition: all 0.3s
}
@media screen and (min-width: 744px) {
    .p-facility-incidental_list_item_title::after {
        right: 25px;
        width: 20px
    }
}
.p-facility-incidental_list_item_body {
    display: none;
    padding: 20px 25px 20px 10px;
    cursor: pointer;
    color: #000
}
.p-facility-incidental_list_item_body.is-open {
    display: flex;
    flex-direction: column;
    margin-bottom: 30px
}
@media screen and (min-width: 1024px) {
    .p-facility-incidental_list_item_body.is-open {
        flex-direction: row;
        justify-content: space-between
    }
}
.p-facility-incidental_list_item_content {
    display: flex;
    flex-direction: column;
    width: 100%
}
@media screen and (min-width: 1024px) {
    .p-facility-incidental_list_item_content {
        flex: 1;
        width: auto
    }
}
.p-facility-incidental_list_item_content_lead {
    margin-bottom: 15px
}
.p-facility-incidental_list_item_content_notionList {
    position: relative;
    display: flex;
    flex-direction: column
}
.p-facility-incidental_list_item_content_notionList-item {
    position: relative;
    display: inline-block;
    padding-left: 15px;
    font-size: 1.2rem
}
.p-facility-incidental_list_item_content_notionList-item::before {
    position: absolute;
    content: "※";
    top: 0;
    left: 0
}
.p-facility-incidental_list_item_imgList {
    display: flex;
    flex-direction: column;
    width: 100%;
    margin-top: 50px
}
@media screen and (min-width: 744px) {
    .p-facility-incidental_list_item_imgList {
        flex-direction: row
    }
}
@media screen and (min-width: 1024px) {
    .p-facility-incidental_list_item_imgList {
        flex-direction: column;
        width: 300px;
        margin-top: 0;
        margin-left: 50px
    }
}
.p-facility-incidental_list_item_imgList-item {
    display: block;
    width: 100%;
    height: 50vw;
    margin-bottom: 30px
}
@media screen and (min-width: 744px) {
    .p-facility-incidental_list_item_imgList-item {
        width: calc((100% - 50px) / 2);
        height: 23vw;
        margin-bottom: 0;
        margin-right: 50px
    }
}
@media screen and (min-width: 1024px) {
    .p-facility-incidental_list_item_imgList-item {
        width: 100%;
        height: 180px;
        margin-bottom: 30px
    }
}
.p-facility-incidental_list_item_imgList-item:last-child {
    margin-bottom: 0
}
@media screen and (min-width: 744px) {
    .p-facility-incidental_list_item_imgList-item:last-child {
        margin-right: 0
    }
}
@media screen and (min-width: 1024px) {
    .p-facility-incidental_list_item_imgList-item:last-child {
        margin-bottom: 0
    }
}
.p-facility-incidental_list_item_imgList-item img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover
}
.p-facility-incidental_list_item.is-active .p-facility-incidental_list_item_title::before {
    transform: rotate(180deg)
}
.p-facility-incidental_list_item.is-active .p-facility-incidental_list_item_title::after {
    transform: rotate(180deg);
    opacity: 0
}
.p-cuisine-intro {
    position: relative
}
.p-cuisine-intro_img {
    position: relative;
    width: 100%;
    height: 200px
}
@media screen and (min-width: 744px) {
    .p-cuisine-intro_img {
        height: 30vw
    }
}
@media screen and (min-width: 1024px) {
    .p-cuisine-intro_img {
        height: 300px
    }
}
@media screen and (min-width: 1500px) {
    .p-cuisine-intro_img {
        height: 400px
    }
}
.p-cuisine-intro_img_overlay {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 100%;
    background: linear-gradient(0deg, rgba(255, 255, 255, 0.7) -10%, transparent 50%)
}
.p-cuisine-intro_img img {
    width: 100%;
    height: 100%;
    object-fit: cover
}
.p-cuisine-intro_text {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 100%;
    margin-top: -30px;
    z-index: 1
}
@media screen and (min-width: 744px) {
    .p-cuisine-intro_text {
        flex-direction: row;
        margin-top: -40px
    }
}
@media screen and (min-width: 1024px) {
    .p-cuisine-intro_text {
        margin-top: -50px
    }
}
.p-cuisine-intro_title {
    display: flex;
    width: 100%;
    font-size: 2rem;
    font-weight: 600;
    letter-spacing: 0.1em;
    line-height: 2;
    writing-mode: vertical-rl
}
@media screen and (min-width: 744px) {
    .p-cuisine-intro_title {
        width: 35%;
        font-size: 2.5rem
    }
}
@media screen and (min-width: 1024px) {
    .p-cuisine-intro_title {
        width: 35%;
        font-size: 3.5rem
    }
}
@media screen and (min-width: 744px) {
    .p-cuisine-intro_title span {
        display: block;
        margin: 0 auto
    }
}
@media screen and (min-width: 744px) {
    .p-cuisine-intro_lead {
        width: 65%
    }
}
@media screen and (min-width: 1024px) {
    .p-cuisine-mainList-item:nth-of-type(2n+1) .p-cuisine_group {
        flex-direction: row-reverse
    }
    .p-cuisine-mainList-item:nth-of-type(2n+1) .p-cuisine_group_slider {
        margin-right: 0;
        margin-left: calc(((100vw - 100%) / 2) * -1);
        padding-left: 0;
        padding-right: 80px
    }
    .p-cuisine-mainList-item:nth-of-type(2n+1) .p-cuisine_group_slider .swiper-pagination-v {
        left: unset !important;
        right: -35px
    }
}
.p-cuisine_block {
    position: relative;
    margin-bottom: 50px
}
@media screen and (min-width: 1024px) {
    .p-cuisine_block {
        margin-bottom: 70px
    }
}
.p-cuisine_group {
    display: flex;
    align-items: center;
    flex-direction: column;
    position: relative
}
@media screen and (min-width: 1024px) {
    .p-cuisine_group {
        flex-direction: row
    }
}
.p-cuisine_group_content {
    width: 100%
}
@media screen and (min-width: 1024px) {
    .p-cuisine_group_content {
        width: 35%
    }
}
@media screen and (min-width: 1500px) {
    .p-cuisine_group_content {
        width: 40%
    }
}
.p-cuisine_group_content .en {
    display: block;
    margin-bottom: 5px;
    font-size: 2rem;
    color: #d9d9d9
}
@media screen and (min-width: 1024px) {
    .p-cuisine_group_content .en {
        margin-bottom: 15px;
        font-size: 3rem
    }
}
.p-cuisine_group_content .c-title-h2 .en {
    color: #9f8a6b
}
.p-cuisine_group_slider {
    width: calc(100% + ((100vw - 100%) / 2));
    margin-right: calc(((100vw - 100%) / 2) * -1);
    margin-top: 40px
}
@media screen and (min-width: 1024px) {
    .p-cuisine_group_slider {
        width: calc(65% + ((100vw - 100%) / 2));
        padding-left: 80px;
        margin-top: 0
    }
}
@media screen and (min-width: 1500px) {
    .p-cuisine_group_slider {
        width: calc(60% + ((100vw - 100%) / 2));
        padding-left: 120px;
        margin-top: 0
    }
}
.p-cuisine_group_slider_item {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    width: 100%;
    height: 60vw;
    overflow: hidden
}
@media screen and (min-width: 1024px) {
    .p-cuisine_group_slider_item {
        height: 45vw
    }
}
@media screen and (min-width: 1500px) {
    .p-cuisine_group_slider_item {
        height: 600px
    }
}
.p-cuisine_group_slider_item img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    z-index: 0
}
.p-cuisine_group_slider_item_inner {
    position: relative;
    display: flex;
    flex-direction: column;
    width: fit-content;
    padding-bottom: 15px
}
@media screen and (min-width: 744px) {
    .p-cuisine_group_slider_item_inner {
        padding-bottom: 40px
    }
}
.p-cuisine_group_slider_filter {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
    background: linear-gradient(transparent, rgba(0, 0, 0, 0.7))
}
.p-cuisine_group_slider_title {
    position: relative;
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: flex-end;
    width: calc(((100vw - 4vw) - 20px) - 4vw);
    padding: 0 25px 15px;
    color: #fff;
    z-index: 2
}
@media screen and (min-width: 744px) {
    .p-cuisine_group_slider_title {
        width: 500px
    }
}
.p-cuisine_group_slider_title .en {
    display: inline-block;
    width: fit-content;
    max-width: 50%;
    margin-right: 8px;
    font-size: 2rem
}
@media screen and (min-width: 744px) {
    .p-cuisine_group_slider_title .en {
        margin-right: 25px;
        font-size: 3rem
    }
}
.p-cuisine_group_slider_title .ja {
    display: inline-block;
    width: fit-content;
    padding-bottom: 3px;
    font-size: 1.2rem;
    word-break: break-all
}
@media screen and (min-width: 744px) {
    .p-cuisine_group_slider_title .ja {
        padding-bottom: 6px;
        font-size: 1.75rem
    }
}
.p-cuisine_group_slider_description {
    position: relative;
    width: calc(((100vw - 4vw) - 20px) - 4vw);
    padding: 15px 25px 0;
    color: #fff;
    font-size: 1.2rem;
    z-index: 2
}
@media screen and (min-width: 744px) {
    .p-cuisine_group_slider_description {
        width: 500px;
        font-size: 1.4rem
    }
}
.p-cuisine_group_slider_description::before {
    position: absolute;
    content: "";
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 1px;
    background-color: #fff
}
.p-cuisine-detail {
    position: relative;
    display: flex;
    flex-direction: column;
    padding-top: 30px
}
@media screen and (min-width: 1024px) {
    .p-cuisine-detail {
        flex-direction: row;
        justify-content: space-between
    }
}
.p-cuisine-detail_heading {
    position: relative;
    margin-bottom: 15px
}
@media screen and (min-width: 1024px) {
    .p-cuisine-detail_heading {
        width: 30%;
        min-width: 250px;
        margin-bottom: 0
    }
}
@media screen and (min-width: 1500px) {
    .p-cuisine-detail_heading {
        width: 500px
    }
}
.p-cuisine-detail_heading_title {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    width: fit-content;
    padding: 25px 0
}
@media screen and (min-width: 1024px) {
    .p-cuisine-detail_heading_title {
        width: 250px;
        height: 250px;
        padding: 0;
        border-radius: 50%;
        border: 1px solid #d9d9d9;
        margin: 0 auto
    }
}
.p-cuisine-detail_heading_title_icon {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: auto;
    height: 100px
}
@media screen and (min-width: 1024px) {
    .p-cuisine-detail_heading_title_icon {
        display: none
    }
}
.p-cuisine-detail_heading_title_icon img {
    display: block;
    width: auto;
    height: 100%
}
.p-cuisine-detail_heading_title_text {
    position: relative;
    display: inline-block;
    padding: 15px 15px 15px 30px;
    letter-spacing: 0.2em;
    font-size: 2rem
}
@media screen and (min-width: 1024px) {
    .p-cuisine-detail_heading_title_text {
        padding: 30px;
        writing-mode: vertical-rl;
        word-break: keep-all;
        white-space: nowrap;
        letter-spacing: 0.3em
    }
}
.p-cuisine-detail_body {
    display: flex;
    flex-direction: column;
    width: 100%
}
@media screen and (min-width: 1024px) {
    .p-cuisine-detail_body {
        width: 70%;
        padding-left: 30px
    }
}
@media screen and (min-width: 1500px) {
    .p-cuisine-detail_body {
        width: 1000px;
        padding-left: 0
    }
}
.p-cuisine-detail_content {
    position: relative;
    display: flex;
    flex-direction: column;
    margin-bottom: 50px;
    border-bottom: 1px solid #d9d9d9
}
.p-cuisine-detail_content:last-child {
    margin-bottom: 0
}
.p-cuisine-detail_content_title {
    margin-bottom: 15px;
    font-size: 2.5rem;
    color: #9f8a6b
}
.p-cuisine-detail_content_description {
    margin-bottom: 30px
}
.p-cuisine-detail_content_tagList {
    position: relative;
    display: flex;
    flex-wrap: wrap
}
.p-cuisine-detail_content_tagList-item {
    display: inline-block;
    width: fit-content;
    padding: 3px 15px;
    margin-right: 10px;
    margin-bottom: 10px;
    border-radius: 5px;
    background-color: rgba(217, 217, 217, 0.5);
    font-size: 1.2rem;
    color: #000
}
.p-cuisine-detail_content_tagList-item.include {
    background-color: #232d68;
    color: #fff
}
.p-cuisine-detail_content_tagList-item:last-child {
    margin-right: 0
}
.p-cuisine-detail_content_price {
    position: relative;
    margin: 40px 0
}
.p-cuisine-detail_content_price-head {
    color: rgba(0, 0, 0, 0.6)
}
.p-cuisine-detail_content_price-main {
    font-size: 3rem
}
@media screen and (min-width: 744px) {
    .p-cuisine_cake_heading {
        text-align: center
    }
}
@media screen and (min-width: 744px) {
    .p-cuisine_cake_heading .c-title-h2 {
        margin-bottom: 100px
    }
}
.p-cuisine_cake_heading .c-title-h2 .en {
    display: block;
    margin-bottom: 5px;
    font-size: 2rem;
    color: #9f8a6b
}
@media screen and (min-width: 1024px) {
    .p-cuisine_cake_heading .c-title-h2 .en {
        margin-bottom: 15px;
        font-size: 3rem
    }
}
.p-cuisine_cake_heading_lead {
    max-width: 800px;
    margin: 0 auto
}
@media screen and (min-width: 744px) {
    .p-cuisine_cake_heading_lead {
        margin-bottom: 100px
    }
}
.p-cuisine_cake_list {
    display: flex;
    flex-direction: column;
    margin-top: 50px
}
@media screen and (min-width: 744px) {
    .p-cuisine_cake_list {
        flex-direction: row;
        flex-wrap: wrap;
        justify-content: center;
        gap: 50px;
        margin-top: 70px
    }
}
@media screen and (min-width: 1024px) {
    .p-cuisine_cake_list {
        gap: 70px
    }
}
.p-cuisine_cake_item {
    width: 100%;
    margin-bottom: 50px
}
@media screen and (min-width: 744px) {
    .p-cuisine_cake_item {
        width: 300px;
        margin-bottom: 0
    }
}
@media screen and (min-width: 1500px) {
    .p-cuisine_cake_item {
        width: 450px
    }
}
.p-cuisine_cake_item_img {
    display: block;
    width: 100%;
    height: 92vw
}
@media screen and (min-width: 744px) {
    .p-cuisine_cake_item_img {
        height: 300px
    }
}
@media screen and (min-width: 1500px) {
    .p-cuisine_cake_item_img {
        height: 450px
    }
}
.p-cuisine_cake_item_img img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover
}
.p-cuisine_cake_item_title {
    margin: 25px 0 15px;
    padding-bottom: 15px;
    border-bottom: 1px solid #000;
    font-size: 1.75rem;
    font-weight: 600
}
@media screen and (min-width: 1024px) {
    .p-cuisine_cake_item_title {
        margin: 30px 0 25px;
        font-size: 2rem
    }
}
.p-staff {
    position: relative
}
.p-staff_list {
    display: flex;
    flex-wrap: wrap;
    flex-direction: column
}
@media screen and (min-width: 744px) {
    .p-staff_list {
        flex-direction: row-reverse;
        justify-content: space-between
    }
}
.p-staff_list_item {
    position: relative;
    width: 100%;
    margin-bottom: 70px
}
@media screen and (min-width: 744px) {
    .p-staff_list_item {
        width: 40%;
        margin-bottom: 0
    }
}
@media screen and (min-width: 1500px) {
    .p-staff_list_item {
        width: 42%
    }
}
@media screen and (min-width: 744px) {
    .p-staff_list_item:nth-child(even) {
        margin-top: 15vw
    }
}
@media screen and (min-width: 1500px) {
    .p-staff_list_item:nth-child(even) {
        margin-top: 250px
    }
}
.p-staff_list_item_heading {
    position: relative;
    max-width: 400px;
    margin: 0 auto;
    padding: 0 7rem 40px
}
@media screen and (min-width: 1024px) {
    .p-staff_list_item_heading {
        max-width: inherit;
        padding: 0 7rem 40px
    }
}
@media screen and (min-width: 1500px) {
    .p-staff_list_item_heading {
        padding: 0 8rem 60px
    }
}
.p-staff_list_item_bg {
    position: absolute;
    top: 0;
    left: 0;
    font-size: 4rem;
    color: #d9d9d9;
    line-height: 1;
    writing-mode: vertical-rl;
    word-break: keep-all
}
@media screen and (min-width: 1024px) {
    .p-staff_list_item_bg {
        font-size: 5.5rem
    }
}
@media screen and (min-width: 1500px) {
    .p-staff_list_item_bg {
        font-size: 6.5rem
    }
}
.p-staff_list_item_img {
    width: 100%
}
.p-staff_list_item_img img {
    width: 100%;
    object-fit: cover;
    clip-path: polygon(0 25%, 50% 0, 100% 25%, 100% 74%, 50% 100%, 0 75%)
}
.p-staff_list_item_title {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    position: absolute;
    bottom: 0;
    right: -10px;
    width: 140px;
    height: 180px;
    background-color: #d9d9d9;
    writing-mode: vertical-rl;
    clip-path: polygon(0 25%, 50% 0, 100% 25%, 100% 74%, 50% 100%, 0 75%)
}
@media screen and (min-width: 744px) {
    .p-staff_list_item_title {
        right: -45px;
        width: 150px;
        height: 190px
    }
}
@media screen and (min-width: 1024px) {
    .p-staff_list_item_title {
        right: -60px;
        width: 200px;
        height: 240px
    }
}
@media screen and (min-width: 1500px) {
    .p-staff_list_item_title {
        right: -90px;
        width: 260px;
        height: 300px
    }
}

.p-staff_list_item_title .name {
    display: block;
    font-size: 1.75rem;
    line-height: 2.2;
    letter-spacing: 0.1em
}
@media screen and (min-width: 744px) {
    .p-staff_list_item_title .name {
        font-size: 2rem
    }
}
@media screen and (min-width: 1024px) {
    .p-staff_list_item_title .name {
        font-size: 2.5rem
    }
}
.p-staff_list_item_text {
    line-height: 1.8
}
.p-guarantee-bestrate_bnr {
    width: 90%;
    max-width: 800px;
    display: block;
    padding-bottom: 70px;
    margin: 0 auto
}
@media screen and (min-width: 744px) {
    .p-guarantee-bestrate_bnr {
        width: 80%
    }
}
.p-guarantee-bestrate_title {
    font-size: 2rem;
    padding-bottom: 25px;
    text-align: center
}
@media screen and (min-width: 744px) {
    .p-guarantee-bestrate_title {
        font-size: 2.5rem
    }
}
.p-guarantee-bestrate_text {
    text-align: center;
    padding-bottom: 50px;
    margin: 0 auto
}
@media screen and (min-width: 744px) {
    .p-guarantee-bestrate_text {
        width: 80%;
        font-size: 1.75rem
    }
}
@media screen and (min-width: 1024px) {
    .p-guarantee-bestrate_text {
        width: 70%;
        font-size: 1.75rem
    }
}
.p-guarantee-bestrate_flow {
    display: block;
    width: 100%;
    margin: 0 auto
}
@media screen and (min-width: 744px) {
    .p-guarantee-bestrate_flow {
        width: 90%
    }
}
.c-title-h2 .en {
    font-size: 2rem;
    color: #d9d9d9;
    padding-bottom: 15px
}
.p-guarantee-fair_list {
    width: 80%
}
@media screen and (min-width: 744px) {
    .p-guarantee-fair_list {
        height: 400px;
        width: 100%
    }
}
.p-guarantee-fair_item {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-bottom: 25px
}
@media screen and (min-width: 744px) {
    .p-guarantee-fair_item {
        margin-bottom: 100px
    }
}
.p-guarantee-fair_item picture {
    display: flex;
    justify-content: center;
    height: 75vw;
    margin: 0 auto
}
@media screen and (min-width: 744px) {
    .p-guarantee-fair_item picture {
        height: 70%;
        width: 100%
    }
}
.p-guarantee-fair_item picture source {
    object-fit: cover
}
.p-guarantee-fair_item picture img {
    object-fit: cover
}
.p-guarantee-fair_item p {
    display: flex;
    justify-content: center;
    padding-top: 8px;
    padding-bottom: 2.5rem;
    margin: 0 auto
}
.p-guarantee-fair_btn {
    width: 100%
}
@media screen and (min-width: 744px) {
    .p-guarantee-fair_btn .c-btn-arrow {
        width: 300px;
        margin: 0 auto
    }
}
.p-guarantee-info_text {
    text-align: center;
    padding-bottom: 100px;
    margin: 0 auto
}
@media screen and (min-width: 744px) {
    .p-guarantee-info_text {
        width: 80%;
        font-size: 1.75rem
    }
}
@media screen and (min-width: 744px) {
    .p-guarantee-info_text {
        width: 70%;
        font-size: 1.75rem
    }
}
.p-guarantee-info_list {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    position: relative;
    padding-bottom: 250px
}
.p-guarantee-info_list::after {
    content: url(../img/bestrate_balloon-sp.png);
    position: absolute;
    bottom: 20px;
    transform: scale(0.5)
}
@media screen and (min-width: 744px) {
    .p-guarantee-info_list {
        flex-direction: row;
        justify-content: space-between;
        align-items: flex-end;
        height: 200px;
        width: 100%;
        margin-top: 80px;
        padding-bottom: 6rem
    }
    .p-guarantee-info_list::after {
        content: ""
    }
}
.p-guarantee-info_item {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    height: 100px;
    width: 100%;
    border-bottom: 1px solid #000;
    background-color: #ebe7e1
}
.p-guarantee-info_item:first-child {
    height: 70px;
    background-color: #232d68;
    border-bottom: none
}
.p-guarantee-info_item:last-child {
    background-color: #ffffc4;
    border-bottom: none
}
@media screen and (min-width: 744px) {
    .p-guarantee-info_item {
        justify-content: flex-end;
        height: 100%;
        width: 100%;
        background-color: transparent;
        border-bottom: none
    }
    .p-guarantee-info_item:first-child {
        height: 100%;
        background-color: transparent
    }
    .p-guarantee-info_item:last-child {
        background-color: transparent
    }
}
.p-guarantee-info_item_inner {
    display: flex;
    flex-direction: column;
    align-items: center
}
@media screen and (min-width: 744px) {
    .p-guarantee-info_item_inner {
        height: 100%;
        width: 100%
    }
}
.p-guarantee-info_item_title {
    color: #000;
    text-align: center;
    font-size: 1.4rem
}
@media screen and (min-width: 744px) {
    .p-guarantee-info_item_title {
        display: flex;
        justify-content: center;
        align-items: center;
        height: 50%;
        width: 100%;
        font-size: 1.2rem
    }
}
@media screen and (min-width: 1024px) {
    .p-guarantee-info_item_title {
        font-size: 1.4rem
    }
}
.p-guarantee-info_item_title-last {
    color: #9f8a6b;
    font-size: 2rem
}
@media screen and (min-width: 744px) {
    .p-guarantee-info_item_title-last {
        display: flex;
        justify-content: center;
        align-items: center;
        height: 50%;
        width: 100%;
        font-size: 1.4rem;
        position: relative
    }
    .p-guarantee-info_item_title-last::after {
        content: url(../img/bestrate_balloon.png);
        position: absolute;
        top: -200px;
        transform: scale(0.5)
    }
}
@media screen and (min-width: 1024px) {
    .p-guarantee-info_item_title-last {
        font-size: 2rem
    }
}
.p-guarantee-info_item_plan {
    color: #fff;
    font-size: 2.5rem
}
@media screen and (min-width: 744px) {
    .p-guarantee-info_item_plan {
        display: flex;
        justify-content: center;
        align-items: center;
        height: 50%;
        width: 100%;
        background-color: #232d68;
        font-size: 1.75rem;
        line-height: 7rem
    }
}
.p-guarantee-info_item_price {
    color: #000;
    font-size: 3rem;
    line-height: 2.5rem
}
@media screen and (min-width: 744px) {
    .p-guarantee-info_item_price {
        display: flex;
        justify-content: center;
        align-items: center;
        height: 50%;
        width: 100%;
        border-right: 1px solid #000;
        background-color: #ebe7e1;
        font-size: 2.5rem;
        line-height: 7rem
    }
}
.p-guarantee-info_item_price-last {
    color: #000;
    font-size: 3rem;
    line-height: 2.5rem
}
@media screen and (min-width: 744px) {
    .p-guarantee-info_item_price-last {
        display: flex;
        justify-content: center;
        align-items: center;
        height: 50%;
        width: 100%;
        background-color: #ffffc4;
        font-size: 2.5rem;
        line-height: 7rem
    }
}
.p-guarantee-info_notation {
    background-color: #ebe7e1;
    border-radius: 10px
}
@media screen and (min-width: 744px) {
    .p-guarantee-info_notation {
        margin-top: 50px;
        padding: 40px
    }
}
.p-guarantee-info_notation h3 {
    color: #9f8a6b;
    font-size: 2rem;
    padding-top: 25px
}
.p-guarantee-info_notation p {
    padding: 25px
}
.p-fair-tagList {
    position: relative;
    display: flex;
    flex-wrap: wrap
}
.p-fair-tagList-item {
    display: inline-block;
    padding: 0 5px;
    margin: 0 8px 8px 0;
    border: 1px solid #d9d9d9;
    font-size: 1.2rem;
    color: #d9d9d9
}
@media screen and (min-width: 744px) {
    .p-fair-tagList-item {
        font-size: 1.4rem
    }
}
.p-fair-tagList-item.use {
    display: none
}
.p-fair-tagList-item.include {
    border: 1px solid #000;
    color: #000
}
.p-fair-recommend {
    position: relative;
    display: flex;
    flex-direction: column;
    background-color: #f9f9f9
}
.p-fair-recommend_head {
    margin-bottom: 50px
}
.p-fair-recommend_body {
    position: relative;
    max-width: 100vw;
    padding-bottom: 70px
}
.p-fair-recommend_body.is-only-post {
    padding-bottom: 0
}
@media screen and (min-width: 744px) {
    .p-fair-recommend_body.is-only-post .p-fair-recommend_list-item_body {
        flex-direction: row-reverse
    }
}
@media screen and (min-width: 744px) {
    .p-fair-recommend_body.is-only-post .p-fair-recommend_list-item_content {
        width: calc(100% - 300px)
    }
}
@media screen and (min-width: 1024px) {
    .p-fair-recommend_body.is-only-post .p-fair-recommend_list-item_content {
        width: calc(100% - 400px)
    }
}
@media screen and (min-width: 1500px) {
    .p-fair-recommend_body.is-only-post .p-fair-recommend_list-item_content {
        width: calc(100% - 500px)
    }
}
@media screen and (min-width: 744px) {
    .p-fair-recommend_body.is-only-post .p-fair-recommend_list-item_img {
        width: 300px;
        height: auto
    }
}
@media screen and (min-width: 1024px) {
    .p-fair-recommend_body.is-only-post .p-fair-recommend_list-item_img {
        width: 400px
    }
}
@media screen and (min-width: 1500px) {
    .p-fair-recommend_body.is-only-post .p-fair-recommend_list-item_img {
        width: 500px
    }
}
.p-fair-recommend_body.is-only-post .p-guarantee-fair_btn {
    padding-top: 70px
}
@media screen and (min-width: 744px) {
    .p-fair-recommend_body.is-only-post .p-guarantee-fair_btn {
        padding-top: 100px
    }
}
.p-fair-recommend_list {
    position: relative
}
.p-fair-recommend_list .swiper-fair {
    width: 100%
}
.p-fair-recommend_list .swiper-wrapper {
    display: flex;
    align-items: center
}
.p-fair-recommend_list .swiper-pagination {
    bottom: -50px
}
.p-fair-recommend_list .swiper-pagination-bullet-active {
    background-color: #9f8a6b
}
@media screen and (min-width: 744px) {
    .p-fair-recommend_list .swiper-slide .p-fair-recommend_list-item_img img {
        transform: scale(1);
        opacity: 0.7;
        transition: all 1s
    }
}
@media screen and (min-width: 744px) {
    .p-fair-recommend_list .swiper-slide-active .p-fair-recommend_list-item_img img {
        transform: scale(1.2);
        opacity: 1;
        transition: all 1s
    }
}
.p-fair-recommend_list-item {
    position: relative;
    width: 88vw
}
@media screen and (min-width: 744px) {
    .p-fair-recommend_list-item {
        width: 500px
    }
}
.p-fair-recommend_list-item_body {
    position: relative;
    display: flex;
    flex-direction: column-reverse;
    background-color: #fff
}
.p-fair-recommend_list-item_content {
    position: relative;
    padding: 25px 15px
}
@media screen and (min-width: 744px) {
    .p-fair-recommend_list-item_content {
        padding: 30px
    }
}
@media screen and (min-width: 1024px) {
    .p-fair-recommend_list-item_content {
        padding: 40px
    }
}
.p-fair-recommend_list-item_content_schedule {
    position: relative;
    display: flex;
    justify-content: flex-start;
    align-items: flex-end;
    width: 100%;
    margin-bottom: 15px;
    z-index: 1
}
@media screen and (min-width: 1024px) {
    .p-fair-recommend_list-item_content_schedule {
        margin-bottom: 25px
    }
}
.p-fair-recommend_list-item_content_schedule::before {
    position: absolute;
    content: "";
    bottom: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 10px;
    margin-bottom: -3px;
    background-color: rgba(217, 217, 217, 0.2);
    z-index: 0
}
.p-fair-recommend_list-item_content_schedule .date {
    display: inline-block;
    font-size: 1.75rem;
    line-height: 1;
    white-space: nowrap;
    color: #232d68
}
@media screen and (min-width: 1024px) {
    .p-fair-recommend_list-item_content_schedule .date {
        font-size: 2.5rem
    }
}
.p-fair-recommend_list-item_content_schedule .day-of-week {
    display: inline-block;
    padding-left: 8px;
    font-size: 1.2rem;
    line-height: 1;
    color: #232d68
}
@media screen and (min-width: 1024px) {
    .p-fair-recommend_list-item_content_schedule .day-of-week {
        font-size: 1.4rem;
        padding-left: 15px
    }
}
.p-fair-recommend_list-item_content_title {
    display: inline-block;
    height: 60px;
    margin-bottom: 15px;
    font-size: 1.6rem;
    color: #9f8a6b
}
@media screen and (min-width: 1024px) {
    .p-fair-recommend_list-item_content_title {
        height: 70px;
        margin-bottom: 25px;
        font-size: 2rem
    }
}
.p-fair-recommend_list-item_content .p-fair-tagList-item {
    font-size: 1.2rem
}
@media screen and (min-width: 1024px) {
    .p-fair-recommend_list-item_content .p-fair-tagList-item {
        font-size: 1.4rem
    }
}
.p-fair-recommend_list-item_content_lead {
    height: 50px;
    margin: 10px 0 15px;
    font-size: 1.4rem
}
@media screen and (min-width: 1024px) {
    .p-fair-recommend_list-item_content_lead {
        margin: 25px 0 15px
    }
}
.p-fair-recommend_list-item_content_link {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: flex-end
}
.p-fair-recommend_list-item_content_link-detail {
    width: fit-content;
    margin-bottom: 15px
}
.p-fair-recommend_list-item_content_link-reserve {
    width: 100%
}
.p-fair-recommend_list-item_img {
    display: block;
    width: 100%;
    height: 50vw;
    overflow: hidden
}
@media screen and (min-width: 744px) {
    .p-fair-recommend_list-item_img {
        height: 300px
    }
}
.p-fair-recommend_list-item_img img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover
}
.p-fair-archive {
    position: relative
}
.p-fair-archive_search {
    position: relative;
    margin-bottom: 100px
}
.p-fair-archive_search_head {
    display: flex;
    flex-direction: column;
    justify-content: center;
    width: 100%
}
.p-fair-archive_search_head_title {
    width: 100%
}
.p-fair-archive_search_head_list {
    position: relative;
    display: flex;
    flex-direction: row;
    justify-content: space-around;
    width: 100%;
    margin-bottom: 40px
}
@media screen and (min-width: 1024px) {
    .p-fair-archive_search_head_list {
        display: none
    }
}
.p-fair-archive_search_head_list-item {
    display: block;
    margin: 0 auto
}
.p-fair-archive_search_head_list-item button {
    position: relative;
    display: block;
    width: fit-content;
    padding: 8px 0;
    margin: 0 auto;
    text-align: center;
    color: #d9d9d9;
    overflow: hidden;
    transition: all 0.3s
}
.p-fair-archive_search_head_list-item button::before {
    position: absolute;
    content: "";
    bottom: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 3px;
    background-color: #9f8a6b;
    opacity: 0;
    transition: all 0.3s
}
.p-fair-archive_search_head_list-item button.is-tabBtn-selected {
    color: #9f8a6b;
    font-weight: 700;
    transition: all 0.3s
}
.p-fair-archive_search_head_list-item button.is-tabBtn-selected::before {
    opacity: 1;
    transition: all 0.3s
}
.p-fair-archive_search_body {
    display: grid;
    grid-template-columns: 1fr;
    grid-template-rows: auto;
    gap: 30px
}
@media screen and (min-width: 1024px) {
    .p-fair-archive_search_body {
        grid-template-columns: 1fr 1fr
    }
}
.p-fair-archive_search_body_title {
    display: none
}
@media screen and (min-width: 1024px) {
    .p-fair-archive_search_body_title {
        display: block;
        font-size: 2.5rem;
        color: #9f8a6b;
        margin-bottom: 40px
    }
}
.p-fair-archive_search_body .p-fair-archive_search_tag, .p-fair-archive_search_body .p-fair-archive_search_calendar {
    display: none
}
@media screen and (min-width: 1024px) {
    .p-fair-archive_search_body .p-fair-archive_search_tag, .p-fair-archive_search_body .p-fair-archive_search_calendar {
        display: flex
    }
}
.p-fair-archive_search_body .p-fair-archive_search_tag.is-tab-show, .p-fair-archive_search_body .p-fair-archive_search_calendar.is-tab-show {
    display: flex
}
.p-fair-archive_search_body .p-fair-archive_search_tag.fade-in, .p-fair-archive_search_body .p-fair-archive_search_calendar.fade-in {
    animation-name: fade;
    animation-duration: 0.5s
}
@keyframes fade {
    from {
        opacity: 0
    }
    to {
        opacity: 1
    }
}
@media screen and (min-width: 744px) {
    .p-fair-archive_search_body .c-btn {
        width: 400px;
        margin: 0 auto
    }
}
@media screen and (min-width: 1024px) {
    .p-fair-archive_search_body .c-btn {
        width: 100%;
        max-width: 500px
    }
}
.p-fair-archive_search_tag {
    flex-direction: column;
    width: 100%;
    padding: 30px 15px;
    background-color: rgba(159, 138, 107, 0.1);
    border-radius: 10px
}
@media screen and (min-width: 744px) {
    .p-fair-archive_search_tag {
        padding: 40px 25px;
        border-radius: 20px
    }
}
@media screen and (min-width: 1024px) {
    .p-fair-archive_search_tag {
        border-radius: 30px
    }
}
.p-fair-archive_search_tag_list {
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
    gap: 20px;
    width: 100%;
    margin-bottom: 30px
}
.p-fair-archive_search_tag_list-item {
    display: flex;
    width: calc((100% - 20px) / 2);
    height: fit-content;
    background-color: #fff
}
@media screen and (min-width: 744px) {
    .p-fair-archive_search_tag_list-item {
        width: calc((100% - 40px) / 3)
    }
}
.p-fair-archive_search_tag_list-item_btn {
    position: relative;
    display: inline-block;
    width: 100%;
    padding: 8px 5px;
    font-size: 1.4rem;
    text-align: center;
    overflow: hidden;
    z-index: 0;
    cursor: pointer;
    transition: all 0.3s
}
.p-fair-archive_search_tag_list-item_btn:hover {
    background-color: #232d68;
    color: #fff;
    transition: all 0.3s
}
.p-fair-archive_search_tag_list-item_btn:hover::before {
    opacity: 0.1;
    transition: all 0.3s
}
.p-fair-archive_search_tag_list-item_btn.is-tag-chosen {
    color: #fff;
    background-color: #232d68;
    transition: all 0.3s
}
.p-fair-archive_search_calendar {
    flex-direction: column;
    width: 100%;
    padding: 30px 25px;
    background-color: rgba(159, 138, 107, 0.1);
    border-radius: 10px
}
@media screen and (min-width: 744px) {
    .p-fair-archive_search_calendar {
        padding: 40px 25px;
        border-radius: 20px
    }
}
@media screen and (min-width: 1024px) {
    .p-fair-archive_search_calendar {
        border-radius: 30px
    }
}
.p-fair-archive_search_selected-content {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    margin-bottom: 30px
}
@media screen and (min-width: 744px) {
    .p-fair-archive_search_selected-content {
        flex-direction: row;
        align-items: center
    }
}
@media screen and (min-width: 1024px) {
    .p-fair-archive_search_selected-content {
        flex-direction: column;
        align-items: flex-start
    }
}
@media screen and (min-width: 1500px) {
    .p-fair-archive_search_selected-content {
        flex-direction: row;
        align-items: center
    }
}
.p-fair-archive_search_selected-content span {
    padding-bottom: 15px;
    color: #9f8a6b
}
@media screen and (min-width: 744px) {
    .p-fair-archive_search_selected-content span {
        padding-bottom: 0;
        padding-right: 15px
    }
}
@media screen and (min-width: 1024px) {
    .p-fair-archive_search_selected-content span {
        padding-bottom: 15px;
        padding-right: 0
    }
}
@media screen and (min-width: 1500px) {
    .p-fair-archive_search_selected-content span {
        padding-bottom: 0;
        padding-right: 15px
    }
}
.p-fair-archive_result {
    position: relative;
    display: flex;
    flex-direction: column
}
.p-fair-archive_result_head {
    position: relative;
    display: block;
    width: 100%;
    padding-bottom: 15px;
    margin-bottom: 50px
}
.p-fair-archive_result_head::before {
    position: absolute;
    content: "";
    bottom: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 1px;
    background: linear-gradient(90deg, #9f8a6b 75px, #d9d9d9 75px);
    z-index: 1
}
.p-fair-archive_result_head_title {
    display: inline-block;
    font-size: 1.6rem
}
@media screen and (min-width: 744px) {
    .p-fair-archive_result_head_title {
        font-size: 2rem
    }
}
.p-fair-archive_result_head_title #js-search-list {
    position: relative;
    display: inline
}
.p-fair-archive_result_head_title #js-search-list li {
    position: relative;
    display: inline
}
.p-fair-archive_result_head_title #js-search-list li::after {
    position: relative;
    content: "、"
}
.p-fair-archive_result_head_title #js-search-list li:last-child:after {
    display: none
}
.p-fair-archive_result_head_title .number {
    color: #9f8a6b
}
.p-fair-archive_btn {
    display: flex;
    width: 100%;
    margin-top: 70px
}
.p-fair-archive_btn .c-btn {
    margin: 0 auto
}
@media screen and (min-width: 744px) {
    .p-fair-archive_btn .c-btn {
        width: 400px
    }
}
.p-fair_list {
    position: relative
}
.p-fair_list-item {
    position: relative;
    margin-bottom: 70px
}
@media screen and (min-width: 744px) {
    .p-fair_list-item {
        margin-bottom: 100px
    }
}
@media screen and (min-width: 1024px) {
    .p-fair_list-item {
        margin-bottom: 120px
    }
}
.p-fair_list-item.js-fairList-item-disable {
    display: none
}
.p-fair_list-item.js-fairList-item-hit {
    display: block
}
.p-fair_list-item_inner {
    position: relative;
    display: flex;
    flex-direction: column-reverse
}
@media screen and (min-width: 1024px) {
    .p-fair_list-item_inner {
        flex-direction: row-reverse
    }
}
.p-fair_list-item_content {
    display: flex;
    flex-direction: column;
    width: 100%
}
@media screen and (min-width: 1024px) {
    .p-fair_list-item_content {
        width: calc(100% - 450px);
        padding-left: 50px
    }
}
@media screen and (min-width: 1500px) {
    .p-fair_list-item_content {
        width: calc(100% - 600px);
        padding-left: 70px
    }
}
.p-fair_list-item_content_schedule {
    position: relative;
    display: flex;
    justify-content: flex-start;
    align-items: flex-end;
    width: 100%;
    margin-bottom: 30px
}
.p-fair_list-item_content_schedule::before {
    position: absolute;
    content: "";
    bottom: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 10px;
    margin-bottom: -3px;
    background-color: rgba(217, 217, 217, 0.2);
    z-index: -1
}
.p-fair_list-item_content_schedule .date {
    display: inline-block;
    font-size: 3rem;
    line-height: 1;
    white-space: nowrap;
    color: #232d68
}
.p-fair_list-item_content_schedule .day-of-week {
    display: inline-block;
    padding-left: 8px;
    font-size: 1.4rem;
    line-height: 1;
    color: #232d68
}
@media screen and (min-width: 1024px) {
    .p-fair_list-item_content_schedule .day-of-week {
        font-size: 1.75rem
    }
}
.p-fair_list-item_content_title {
    display: inline-block;
    margin-bottom: 30px;
    font-size: 1.75rem;
    color: #9f8a6b
}
@media screen and (min-width: 744px) {
    .p-fair_list-item_content_title {
        font-size: 2rem
    }
}
@media screen and (min-width: 1024px) {
    .p-fair_list-item_content_title {
        font-size: 2.5rem
    }
}
.p-fair_list-item_content_lead {
    margin: 25px 0 15px;
    font-size: 1.4rem
}
.p-fair_list-item_content_table {
    position: relative;
    margin-bottom: 30px
}
.p-fair_list-item_content_table .c-table th {
    font-size: 1.4rem
}
.p-fair_list-item_content_table .c-table td {
    font-size: 1.4rem
}
.p-fair_list-item_content_link {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: flex-end
}
.p-fair_list-item_content_link-detail {
    width: fit-content;
    margin-bottom: 15px
}
.p-fair_list-item_content_link-reserve {
    width: 100%
}
.p-fair_list-item_thumbnail {
    display: block;
    width: 100%;
    height: 92vw;
    margin-bottom: 30px;
    overflow: hidden
}
@media screen and (min-width: 744px) {
    .p-fair_list-item_thumbnail {
        height: 400px
    }
}
@media screen and (min-width: 1024px) {
    .p-fair_list-item_thumbnail {
        width: 450px;
        height: 450px
    }
}
@media screen and (min-width: 1500px) {
    .p-fair_list-item_thumbnail {
        width: 600px;
        height: 600px
    }
}
.p-fair_list-item_thumbnail img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover
}
.p-fair-detail-basic {
    position: relative;
    max-width: 1200px;
    margin: 0 auto
}
.p-fair-detail-basic_schedule {
    position: relative;
    display: flex;
    justify-content: flex-start;
    align-items: flex-end;
    width: 100%;
    margin-bottom: 30px
}
@media screen and (min-width: 1024px) {
    .p-fair-detail-basic_schedule {
        margin-bottom: 50px
    }
}
.p-fair-detail-basic_schedule::before {
    position: absolute;
    content: "";
    bottom: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 10px;
    margin-bottom: -3px;
    background-color: rgba(217, 217, 217, 0.2);
    z-index: -1
}
.p-fair-detail-basic_schedule .date {
    display: inline-block;
    font-size: 3rem;
    line-height: 1;
    white-space: nowrap;
    color: #232d68
}
.p-fair-detail-basic_schedule .day-of-week {
    display: inline-block;
    padding-left: 8px;
    font-size: 1.4rem;
    line-height: 1;
    color: #232d68
}
@media screen and (min-width: 1024px) {
    .p-fair-detail-basic_schedule .day-of-week {
        font-size: 1.75rem
    }
}
.p-fair-detail-basic_title {
    display: inline-block;
    margin-bottom: 30px;
    font-size: 1.75rem;
    color: #9f8a6b
}
@media screen and (min-width: 744px) {
    .p-fair-detail-basic_title {
        font-size: 2rem
    }
}
@media screen and (min-width: 1024px) {
    .p-fair-detail-basic_title {
        margin-bottom: 50px;
        font-size: 2.5rem
    }
}
.p-fair-detail-basic_img {
    display: block;
    width: 100%;
    height: auto;
    margin-bottom: 40px
}
@media screen and (min-width: 1024px) {
    .p-fair-detail-basic_img {
        margin-bottom: 70px
    }
}
.p-fair-detail-basic_img img {
    display: block;
    width: 100%;
    height: auto
}
.p-fair-detail-basic_devider {
    position: relative;
    content: "";
    display: block;
    width: 100%;
    height: 1px;
    margin: 30px 0;
    background-color: #d9d9d9
}
@media screen and (min-width: 1024px) {
    .p-fair-detail-basic_devider {
        margin: 70px 0
    }
}
.p-fair-detail-basic_lead {
    margin-bottom: 25px;
    font-size: 1.4rem
}
@media screen and (min-width: 744px) {
    .p-fair-detail-basic_lead {
        font-size: 1.6rem
    }
}
@media screen and (min-width: 1024px) {
    .p-fair-detail-basic_lead {
        margin-bottom: 40px
    }
}
.p-fair-detail-body {
    position: relative;
    margin-bottom: 120px
}
.p-fair-detail-benefits {
    position: relative;
    max-width: 1200px;
    margin: 0 auto
}
.p-fair-detail-benefits_inner {
    width: 100%;
    padding: 30px 0 50px
}
@media screen and (min-width: 1024px) {
    .p-fair-detail-benefits_inner {
        padding-bottom: 100px
    }
}
.p-fair-detail-benefits_list {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    flex-direction: column;
    gap: 30px
}
@media screen and (min-width: 1024px) {
    .p-fair-detail-benefits_list {
        flex-direction: row;
        justify-content: space-between;
        align-items: stretch;
        gap: 40px
    }
}
.p-fair-detail-benefits_list-item {
    display: flex;
    width: 100%
}
@media screen and (min-width: 1024px) {
    .p-fair-detail-benefits_list-item {
        width: calc(50% - (40px / 2))
    }
}
.p-fair-detail-content {
    position: relative;
    max-width: 1200px;
    margin: 0 auto 50px
}
.p-fair-detail-content_inner {
    position: relative;
    display: flex;
    flex-direction: column;
    width: 100%;
    padding: 70px 0 15px
}
.p-fair-detail-content_head {
    position: relative;
    margin-bottom: 50px
}
.p-fair-detail-content_body {
    position: relative;
    display: flex;
    flex-direction: column
}
.p-fair-detail-content_list {
    position: relative;
    margin-bottom: 30px
}
.p-fair-detail-content_list-item {
    position: relative;
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 50px
}
@media screen and (min-width: 744px) {
    .p-fair-detail-content_list-item {
        margin-bottom: 70px
    }
}
.p-fair-detail-content_list-item:last-child {
    margin-bottom: 0
}
.p-fair-detail-content_list-item_img {
    display: block;
    width: 100px;
    height: 100px
}
@media screen and (min-width: 744px) {
    .p-fair-detail-content_list-item_img {
        width: 150px;
        height: 150px
    }
}
.p-fair-detail-content_list-item_img img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover
}
.p-fair-detail-content_list-item_frame {
    width: calc(100% - 120px)
}
@media screen and (min-width: 744px) {
    .p-fair-detail-content_list-item_frame {
        width: calc(100% - 200px)
    }
}
.p-fair-detail-content_list-item_frame .c-frame_title {
    padding-bottom: 15px;
    margin-bottom: 15px
}
.p-fair-detail-content_notion_list {
    position: relative;
    display: flex;
    flex-direction: column;
    padding: 50px 0 30px
}
.p-fair-detail-content_notion_list-item {
    position: relative;
    display: inline-block;
    padding-left: 15px;
    margin-bottom: 5px;
    font-size: 1.2rem
}
.p-fair-detail-content_notion_list-item::before {
    position: absolute;
    content: "※";
    top: 0;
    left: 0
}
.p-fair-detail-btn {
    display: flex;
    width: 100%
}
.p-fair-detail-btn .c-btn {
    margin: 0 auto
}
@media screen and (min-width: 744px) {
    .p-fair-detail-btn .c-btn {
        width: 400px
    }
}
.p-plan-bnr {
    position: relative
}
.p-plan-bnr_img {
    display: block;
    width: 100%;
    max-width: 1000px;
    margin: 0 auto;
    border-radius: 10px;
    overflow: hidden
}
@media screen and (min-width: 744px) {
    .p-plan-bnr_img {
        border-radius: 20px
    }
}
.p-plan-bnr_img img {
    display: block;
    width: 100%
}
.p-plan-category {
    position: relative;
    padding: 50px 0 0
}
.p-plan-category_inner {
    position: relative;
    display: flex;
    flex-direction: column
}
.p-plan-category_title {
    display: inline-block;
    margin-bottom: 30px;
    font-size: 2.5rem;
    color: #9f8a6b
}
.p-plan-category_list {
    display: flex;
    flex-wrap: wrap
}
.p-plan-category_list-item {
    position: relative;
    display: block;
    margin-right: 15px;
    margin-bottom: 15px
}
.p-plan-category_list-item button {
    position: relative;
    display: block;
    width: 150px;
    padding: 5px;
    border: 1px solid #232d68;
    overflow: hidden;
    font-size: 1.4rem;
    text-align: center;
    color: #232d68;
    transition: all 0.3s
}
.p-plan-category_list-item button::before {
    position: absolute;
    content: "";
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 100%;
    background-color: #232d68;
    transform: translateX(-100%);
    z-index: -1;
    transition: all 0.3s
}
.p-plan-category_list-item button:hover {
    color: #fff;
    transition: all 0.3s
}
.p-plan-category_list-item button:hover::before {
    transform: translateX(0);
    transition: all 0.3s
}
.p-plan-category_list-item button.is-selected {
    background-color: #232d68;
    color: #fff
}
.p-plan-catalogue {
    position: relative;
    display: none;
    flex-direction: column
}
.p-plan-catalogue.is-show {
    display: flex
}
.p-plan-catalogue.fade-in {
    animation-name: fade;
    animation-duration: 0.5s
}
@keyframes fade {
    from {
        opacity: 0
    }
    to {
        opacity: 1
    }
}
.p-plan-catalogue_head {
    position: relative;
    display: block;
    width: 100%;
    padding-bottom: 15px;
    margin-bottom: 50px
}
@media screen and (min-width: 1024px) {
    .p-plan-catalogue_head {
        margin-bottom: 70px
    }
}
.p-plan-catalogue_head::before {
    position: absolute;
    content: "";
    bottom: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 1px;
    background: linear-gradient(90deg, #9f8a6b 75px, #d9d9d9 75px);
    z-index: 1
}
.p-plan-catalogue_head_title {
    display: inline-block;
    font-size: 1.6rem
}
@media screen and (min-width: 744px) {
    .p-plan-catalogue_head_title {
        font-size: 2rem
    }
}
.p-plan-catalogue_body {
    position: relative
}
.p-plan-catalogue_list {
    position: relative;
    display: flex;
    flex-direction: column
}
.p-plan-catalogue_list-item {
    position: relative;
    display: flex;
    flex-direction: column;
    margin-bottom: 100px
}
.p-plan-catalogue_list-item_main {
    position: relative;
    display: flex;
    flex-direction: column-reverse;
    margin-bottom: 15px
}
@media screen and (min-width: 1024px) {
    .p-plan-catalogue_list-item_main {
        flex-direction: row-reverse;
        justify-content: flex-end;
        margin-bottom: 30px
    }
}
.p-plan-catalogue_list-item_main_content {
    position: relative;
    display: flex;
    flex-direction: column;
    width: 100%
}
@media screen and (min-width: 1024px) {
    .p-plan-catalogue_list-item_main_content {
        width: calc(100% - 450px);
        padding-left: 50px
    }
}
.p-plan-catalogue_list-item_main_content_categoryList {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    margin-bottom: 10px
}
.p-plan-catalogue_list-item_main_content_categoryList-item {
    display: inline-block;
    padding: 5px 8px;
    margin-right: 10px;
    margin-bottom: 10px;
    border: 1px solid #d9d9d9;
    font-size: 1.2rem;
    color: #d9d9d9
}
.p-plan-catalogue_list-item_main_content_categoryList-item.use {
    display: none
}
.p-plan-catalogue_list-item_main_content_categoryList-item.include {
    border-color: #000;
    color: #000
}
.p-plan-catalogue_list-item_main_content_title {
    margin-bottom: 25px;
    font-size: 2.5rem;
    color: #9f8a6b
}
.p-plan-catalogue_list-item_main_content_tagList {
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 25px
}
.p-plan-catalogue_list-item_main_content_tagList-item {
    display: flex;
    align-items: center;
    margin-right: 15px
}
.p-plan-catalogue_list-item_main_content_tagList-item_icon {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 30px;
    height: 30px;
    margin-right: 8px;
    background-color: #9f8a6b;
    border-radius: 50%
}
.p-plan-catalogue_list-item_main_content_tagList-item_icon i {
    display: block;
    color: #fff;
    font-size: 2rem;
    padding-bottom: 1px;
    padding-left: 1px
}
.p-plan-catalogue_list-item_main_content_tagList-item_text {
    display: inline-block;
    font-size: 1.4rem
}
.p-plan-catalogue_list-item_main_content_catch {
    margin-bottom: 25px;
    font-size: 2rem;
    font-weight: 500
}
.p-plan-catalogue_list-item_main_content_lead {
    margin-bottom: 30px;
    font-size: 1.4rem
}
.p-plan-catalogue_list-item_main_content_price {
    margin-bottom: 30px;
    font-size: 2rem;
    color: #232d68
}
.p-plan-catalogue_list-item_main_content_price span {
    font-size: 3.5rem;
    font-weight: 500
}
.p-plan-catalogue_list-item_main_content_link .c-btn-arrow-under {
    display: block;
    width: fit-content;
    margin-right: 0;
    margin-left: auto
}
.p-plan-catalogue_list-item_main_img {
    display: block;
    width: 100%;
    height: 92vw;
    margin-bottom: 25px
}
@media screen and (min-width: 744px) {
    .p-plan-catalogue_list-item_main_img {
        height: 700px
    }
}
@media screen and (min-width: 1024px) {
    .p-plan-catalogue_list-item_main_img {
        width: 450px;
        height: 450px;
        margin-bottom: 0
    }
}
.p-plan-catalogue_list-item_main_img img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover
}
.p-plan-catalogue_list-item_bottom .c-btn {
    display: block
}
.p-plan-detail_head {
    position: relative;
    display: flex;
    flex-direction: column-reverse;
    width: 100%;
    max-width: 1200px
}
@media screen and (min-width: 1024px) {
    .p-plan-detail_head {
        flex-direction: row-reverse;
        justify-content: space-between;
        margin: 0 auto
    }
}
.p-plan-detail_head_content {
    position: relative;
    display: flex;
    flex-direction: column;
    width: 100%
}
@media screen and (min-width: 1024px) {
    .p-plan-detail_head_content {
        width: calc(100% - 35vw);
        padding-left: 40px
    }
}
@media screen and (min-width: 1500px) {
    .p-plan-detail_head_content {
        width: calc(100% - 600px);
        padding-left: 50px
    }
}
.p-plan-detail_head_content_title {
    position: relative;
    margin-bottom: 15px;
    font-size: 2.5rem;
    color: #9f8a6b
}
@media screen and (min-width: 1024px) {
    .p-plan-detail_head_content_title {
        font-size: 3rem
    }
}
.p-plan-detail_head_content_catch {
    position: relative;
    margin-bottom: 25px;
    font-size: 2rem;
    font-weight: 500
}
.p-plan-detail_head_content_lead {
    position: relative;
    margin-bottom: 25px;
    font-size: 1.4rem
}
@media screen and (min-width: 1024px) {
    .p-plan-detail_head_content_table .c-table th {
        width: 30%
    }
}
.p-plan-detail_head_img {
    display: block;
    width: 100vw;
    height: 100vw;
    margin: 0 calc(((100vw - 100%) / 2) * -1) 70px
}
@media screen and (min-width: 1024px) {
    .p-plan-detail_head_img {
        width: 35vw;
        height: 35vw;
        margin: 0
    }
}
@media screen and (min-width: 1500px) {
    .p-plan-detail_head_img {
        width: 600px;
        height: 600px
    }
}
.p-plan-detail_head_img img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover
}
.p-plan-detail_main {
    position: relative;
    display: flex;
    flex-direction: column;
    width: 100%;
    max-width: 1200px;
    margin: 0 auto 100px
}
.p-plan-detail_main_title {
    width: fit-content;
    margin: 0 auto 50px
}
.p-plan-detail_main_body {
    position: relative;
    width: 100%;
    max-width: 1100px;
    margin: 0 auto
}
.p-plan-detail_main_list {
    position: relative;
    display: flex;
    flex-direction: column;
    margin-bottom: 50px
}
.p-plan-detail_main_list-item {
    position: relative;
    display: flex;
    flex-direction: row-reverse;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 50px
}
.p-plan-detail_main_list-item.disable .p-plan-detail_main_list-item_content_frame .c-frame_title {
    color: rgba(0, 0, 0, 0.3)
}
.p-plan-detail_main_list-item.disable .p-plan-detail_main_list-item_content_frame .c-frame_title::before {
    background: rgba(0, 0, 0, 0.3)
}
.p-plan-detail_main_list-item.disable .p-plan-detail_main_list-item_content_frame .c-frame_lead {
    color: rgba(0, 0, 0, 0.3)
}
.p-plan-detail_main_list-item.disable .p-plan-detail_main_list-item_content_includeList-item_icon {
    background-color: rgba(0, 0, 0, 0.3)
}
.p-plan-detail_main_list-item.disable .p-plan-detail_main_list-item_content_includeList-item_text {
    color: rgba(0, 0, 0, 0.3)
}
.p-plan-detail_main_list-item.disable .p-plan-detail_main_list-item_thumbnail img {
    opacity: 0.3;
    filter: grayscale(100%)
}
.p-plan-detail_main_list-item.disable .p-plan-detail_main_list-item_thumbnail_dummy {
    background-color: rgba(0, 0, 0, 0.3)
}
.p-plan-detail_main_list-item_content {
    width: calc(100% - 120px)
}
@media screen and (min-width: 744px) {
    .p-plan-detail_main_list-item_content {
        width: calc(100% - 200px)
    }
}
.p-plan-detail_main_list-item_content_frame .c-frame_title {
    padding-bottom: 15px;
    margin-bottom: 15px
}
.p-plan-detail_main_list-item_content_includeList {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    margin-top: 15px
}
.p-plan-detail_main_list-item_content_includeList-item {
    display: flex;
    align-items: center;
    width: fit-content;
    padding: 5px 20px 8px 0
}
.p-plan-detail_main_list-item_content_includeList-item_icon {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 30px;
    height: 30px;
    margin-right: 8px;
    background-color: #9f8a6b;
    border-radius: 50%
}
.p-plan-detail_main_list-item_content_includeList-item_icon i {
    display: block;
    color: #fff;
    font-size: 2rem;
    padding-bottom: 1px;
    padding-left: 1px
}
.p-plan-detail_main_list-item_content_includeList-item_text {
    display: inline-block;
    font-size: 1.4rem
}
.p-plan-detail_main_list-item_thumbnail {
    position: relative;
    display: block;
    width: 100px;
    height: 100px
}
@media screen and (min-width: 744px) {
    .p-plan-detail_main_list-item_thumbnail {
        width: 150px;
        height: 150px
    }
}
.p-plan-detail_main_list-item_thumbnail img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover
}
.p-plan-detail_main_list-item_thumbnail_dummy {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 100%;
    padding: 10px;
    background-color: #9f8a6b;
    overflow: hidden
}
.p-plan-detail_main_list-item_thumbnail_dummy span {
    display: inline-block;
    max-height: 100%;
    overflow: hidden;
    text-align: center;
    line-height: 1;
    color: #fff
}
.p-plan-detail_main_table {
    position: relative;
    margin-bottom: 50px
}
.p-plan-detail_main_notionList {
    display: flex;
    flex-direction: column;
    margin-bottom: 70px
}
.p-plan-detail_main_notionList-item {
    position: relative;
    display: inline-block;
    padding-left: 20px;
    margin-bottom: 15px;
    font-size: 1.4rem
}
.p-plan-detail_main_notionList-item::before {
    position: absolute;
    content: "※";
    top: 0;
    left: 0
}
.p-plan-detail_main_notionList-item_inner {
    display: flex;
    align-items: center;
    flex-wrap: wrap
}
.p-plan-detail_main_notionList-item_body {
    display: flex;
    align-items: center;
    width: fit-content;
    margin-bottom: 15px
}
.p-plan-detail_main_notionList-item_icon {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 30px;
    height: 30px;
    margin: 0 15px;
    background-color: #9f8a6b;
    border-radius: 50%
}
.p-plan-detail_main_notionList-item_icon i {
    display: block;
    color: #fff;
    font-size: 2rem;
    padding-bottom: 1px;
    padding-left: 1px
}
.p-plan-detail_main_notionList-item_text {
    display: inline-block
}
.p-plan-detail_main_link {
    position: relative;
    display: flex;
    width: 100%
}
.p-plan-detail_main_link .c-btn {
    margin: 0 auto
}
@media screen and (min-width: 744px) {
    .p-plan-detail_main_link .c-btn {
        width: 600px
    }
}
.p-privilege {
    margin-top: 70px
}
@media screen and (min-width: 1024px) {
    .p-privilege {
        margin-top: 100px
    }
}
.p-privilege_list {
    position: relative
}
.p-privilege_item {
    display: flex;
    flex-direction: column;
    margin-bottom: 120px
}
@media screen and (min-width: 1024px) {
    .p-privilege_item {
        flex-direction: row;
        margin-bottom: 170px
    }
}
.p-privilege_item:last-child {
    margin-bottom: 0
}
.p-privilege_item_img {
    position: relative;
    width: 100%;
    margin-bottom: -50px
}
@media screen and (min-width: 1024px) {
    .p-privilege_item_img {
        width: calc(40% + 70px);
        margin-right: -70px;
        margin-top: -70px
    }
}
.p-privilege_item_img img {
    display: block
}
@media screen and (min-width: 1024px) {
    .p-privilege_item_img img {
        width: 100%;
        height: 450px;
        object-fit: cover
    }
}
.p-privilege_item_content {
    padding: 70px 20px 50px;
    margin-left: -4vw;
    margin-right: -4vw;
    background-color: #ebe7e1
}
@media screen and (min-width: 744px) {
    .p-privilege_item_content {
        padding: 70px 40px 50px;
        margin-left: -6vw;
        margin-right: -6vw
    }
}
@media screen and (min-width: 1024px) {
    .p-privilege_item_content {
        width: 60%;
        padding: 70px 50px 70px 120px;
        margin: 0
    }
}
@media screen and (min-width: 1500px) {
    .p-privilege_item_content {
        padding: 70px 100px 70px 150px
    }
}
.p-privilege_item_tagList {
    display: flex;
    flex-wrap: wrap
}
.p-privilege_item_tagList-item {
    display: inline-block;
    padding: 0 8px;
    margin-right: 8px;
    margin-bottom: 8px;
    font-size: 1.2rem;
    line-height: 2;
    color: #fff;
    background-color: #9f8a6b;
    border-radius: 5px
}
.p-privilege_item_tagList-item:last-child {
    margin-right: 0
}
.p-privilege_item_term {
    margin-bottom: 25px;
    font-size: 1.75rem;
    font-weight: 600;
    color: #9f8a6b
}
@media screen and (min-width: 1024px) {
    .p-privilege_item_term {
        font-size: 2rem
    }
}
.p-privilege_item_btn {
    margin-top: 25px
}
@media screen and (min-width: 1024px) {
    .p-privilege_item_btn {
        margin-top: 40px
    }
}
.p-privacy {
    position: relative;
    max-width: 1200px;
    margin: 0 auto
}
.p-privacy-heading {
    position: relative;
    margin-bottom: 50px;
    border-bottom: 1px solid #d9d9d9
}
.p-privacy-heading_title {
    display: flex;
    margin-bottom: 30px
}
.p-privacy-heading_title-en {
    padding-right: 15px;
    font-size: 3rem;
    font-weight: 700;
    letter-spacing: 0.1em
}
.p-privacy-heading_title-ja {
    font-size: 3rem;
    font-weight: 700;
    letter-spacing: 0.1em
}
.p-privacy-heading_lead {
    margin-bottom: 50px
}
.p-privacy-body {
    position: relative;
    display: flex;
    flex-direction: column;
    gap: 40px
}
.p-privacy-mainList {
    position: relative;
    display: flex;
    flex-direction: column;
    gap: 40px
}
.p-privacy-mainList_item {
    display: flex;
    flex-direction: column;
    gap: 15px
}
.p-privacy-mainList_item:nth-of-type(1) .p-privacy-mainList_title::before {
    content: "1."
}
.p-privacy-mainList_item:nth-of-type(2) .p-privacy-mainList_title::before {
    content: "2."
}
.p-privacy-mainList_item:nth-of-type(3) .p-privacy-mainList_title::before {
    content: "3."
}
.p-privacy-mainList_item:nth-of-type(4) .p-privacy-mainList_title::before {
    content: "4."
}
.p-privacy-mainList_item:nth-of-type(5) .p-privacy-mainList_title::before {
    content: "5."
}
.p-privacy-mainList_item:nth-of-type(6) .p-privacy-mainList_title::before {
    content: "6."
}
.p-privacy-mainList_item:nth-of-type(7) .p-privacy-mainList_title::before {
    content: "7."
}
.p-privacy-mainList_item:nth-of-type(8) .p-privacy-mainList_title::before {
    content: "8."
}
.p-privacy-mainList_item:nth-of-type(9) .p-privacy-mainList_title::before {
    content: "9."
}
.p-privacy-mainList_item:nth-of-type(10) .p-privacy-mainList_title::before {
    content: "10."
}
.p-privacy-mainList_title {
    position: relative;
    padding-left: 25px;
    font-size: 2rem;
    font-weight: 500
}
.p-privacy-mainList_title::before {
    position: absolute;
    top: 0;
    left: 0;
    display: inline-block
}
.p-privacy-mainList_text {
    padding-left: 30px;
    font-size: 1.4rem
}
.p-privacy-mainList_tel {
    display: inline-block;
    padding-right: 15px
}
.p-privacy-mainList_tel a {
    color: #000;
    text-decoration: none
}
.p-privacy-subList {
    position: relative;
    display: flex;
    flex-direction: column;
    padding-left: 30px;
    gap: 5px
}
.p-privacy-subList_item {
    position: relative;
    display: inline-block;
    padding-left: 25px;
    font-size: 1.4rem
}
.p-privacy-subList_item::before {
    position: absolute;
    top: 0;
    left: 0;
    display: inline-block
}
.p-privacy-subList_item:nth-of-type(1)::before {
    content: "1、"
}
.p-privacy-subList_item:nth-of-type(2)::before {
    content: "2、"
}
.p-privacy-subList_item:nth-of-type(3)::before {
    content: "3、"
}
.p-privacy-subList_item:nth-of-type(4)::before {
    content: "4、"
}
.p-privacy-subList_item:nth-of-type(5)::before {
    content: "5、"
}
.p-privacy-subList_item:nth-of-type(6)::before {
    content: "6、"
}
.p-privacy-subList_item:nth-of-type(7)::before {
    content: "7、"
}
.p-privacy-subList_item:nth-of-type(8)::before {
    content: "8、"
}
.p-privacy-subList_item:nth-of-type(9)::before {
    content: "9、"
}
.p-privacy-subList_item:nth-of-type(10)::before {
    content: "10、"
}
.p-privacy-notionList {
    position: relative;
    padding-top: 25px;
    border-top: 1px solid #d9d9d9
}
.p-privacy-notionList_item {
    position: relative;
    display: inline-block;
    padding-left: 20px;
    font-size: 1.4rem
}
.p-privacy-notionList_item::before {
    position: absolute;
    content: "※";
    top: 0;
    left: 0;
    display: inline-block
}
.js-pageTitle-title, .js-pageTitle-catch, .js-blurOut {
    opacity: 0;
    will-change: filter
}
@media screen and (min-width: 744px) {
    .modaal-close {
        width: 65px;
        height: 65px
    }
}
.modaal-close:after, .modaal-close:before {
    width: 1px
}
@media screen and (min-width: 744px) {
    .modaal-close:after, .modaal-close:before {
        left: 32px;
        height: 40px
    }
}
.modaal-close:focus:after, .modaal-close:focus:before, .modaal-close:hover:after, .modaal-close:hover:before {
    background: #232d68
}
.modaal-video-wrap {
    margin: auto 10px
}
.modaal-inner-wrapper {
    padding-left: 0;
    padding-right: 0
}