@font-face {
    font-family: swiper-icons;
    src: url("data:application/font-woff;charset=utf-8;base64, d09GRgABAAAAAAZgABAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAGRAAAABoAAAAci6qHkUdERUYAAAWgAAAAIwAAACQAYABXR1BPUwAABhQAAAAuAAAANuAY7+xHU1VCAAAFxAAAAFAAAABm2fPczU9TLzIAAAHcAAAASgAAAGBP9V5RY21hcAAAAkQAAACIAAABYt6F0cBjdnQgAAACzAAAAAQAAAAEABEBRGdhc3AAAAWYAAAACAAAAAj//wADZ2x5ZgAAAywAAADMAAAD2MHtryVoZWFkAAABbAAAADAAAAA2E2+eoWhoZWEAAAGcAAAAHwAAACQC9gDzaG10eAAAAigAAAAZAAAArgJkABFsb2NhAAAC0AAAAFoAAABaFQAUGG1heHAAAAG8AAAAHwAAACAAcABAbmFtZQAAA/gAAAE5AAACXvFdBwlwb3N0AAAFNAAAAGIAAACE5s74hXjaY2BkYGAAYpf5Hu/j+W2+MnAzMYDAzaX6QjD6/4//Bxj5GA8AuRwMYGkAPywL13jaY2BkYGA88P8Agx4j+/8fQDYfA1AEBWgDAIB2BOoAeNpjYGRgYNBh4GdgYgABEMnIABJzYNADCQAACWgAsQB42mNgYfzCOIGBlYGB0YcxjYGBwR1Kf2WQZGhhYGBiYGVmgAFGBiQQkOaawtDAoMBQxXjg/wEGPcYDDA4wNUA2CCgwsAAAO4EL6gAAeNpj2M0gyAACqxgGNWBkZ2D4/wMA+xkDdgAAAHjaY2BgYGaAYBkGRgYQiAHyGMF8FgYHIM3DwMHABGQrMOgyWDLEM1T9/w8UBfEMgLzE////P/5//f/V/xv+r4eaAAeMbAxwIUYmIMHEgKYAYjUcsDAwsLKxc3BycfPw8jEQA/gZBASFhEVExcQlJKWkZWTl5BUUlZRVVNXUNTQZBgMAAMR+E+gAEQFEAAAAKgAqACoANAA+AEgAUgBcAGYAcAB6AIQAjgCYAKIArAC2AMAAygDUAN4A6ADyAPwBBgEQARoBJAEuATgBQgFMAVYBYAFqAXQBfgGIAZIBnAGmAbIBzgHsAAB42u2NMQ6CUAyGW568x9AneYYgm4MJbhKFaExIOAVX8ApewSt4Bic4AfeAid3VOBixDxfPYEza5O+Xfi04YADggiUIULCuEJK8VhO4bSvpdnktHI5QCYtdi2sl8ZnXaHlqUrNKzdKcT8cjlq+rwZSvIVczNiezsfnP/uznmfPFBNODM2K7MTQ45YEAZqGP81AmGGcF3iPqOop0r1SPTaTbVkfUe4HXj97wYE+yNwWYxwWu4v1ugWHgo3S1XdZEVqWM7ET0cfnLGxWfkgR42o2PvWrDMBSFj/IHLaF0zKjRgdiVMwScNRAoWUoH78Y2icB/yIY09An6AH2Bdu/UB+yxopYshQiEvnvu0dURgDt8QeC8PDw7Fpji3fEA4z/PEJ6YOB5hKh4dj3EvXhxPqH/SKUY3rJ7srZ4FZnh1PMAtPhwP6fl2PMJMPDgeQ4rY8YT6Gzao0eAEA409DuggmTnFnOcSCiEiLMgxCiTI6Cq5DZUd3Qmp10vO0LaLTd2cjN4fOumlc7lUYbSQcZFkutRG7g6JKZKy0RmdLY680CDnEJ+UMkpFFe1RN7nxdVpXrC4aTtnaurOnYercZg2YVmLN/d/gczfEimrE/fs/bOuq29Zmn8tloORaXgZgGa78yO9/cnXm2BpaGvq25Dv9S4E9+5SIc9PqupJKhYFSSl47+Qcr1mYNAAAAeNptw0cKwkAAAMDZJA8Q7OUJvkLsPfZ6zFVERPy8qHh2YER+3i/BP83vIBLLySsoKimrqKqpa2hp6+jq6RsYGhmbmJqZSy0sraxtbO3sHRydnEMU4uR6yx7JJXveP7WrDycAAAAAAAH//wACeNpjYGRgYOABYhkgZgJCZgZNBkYGLQZtIJsFLMYAAAw3ALgAeNolizEKgDAQBCchRbC2sFER0YD6qVQiBCv/H9ezGI6Z5XBAw8CBK/m5iQQVauVbXLnOrMZv2oLdKFa8Pjuru2hJzGabmOSLzNMzvutpB3N42mNgZGBg4GKQYzBhYMxJLMlj4GBgAYow/P/PAJJhLM6sSoWKfWCAAwDAjgbRAAB42mNgYGBkAIIbCZo5IPrmUn0hGA0AO8EFTQAA");
    font-weight: 400;
    font-style: normal
}

:root {
    --swiper-theme-color: #007aff
}

/*!
 * ress.css • v2.0.4
 * MIT License
 * github.com/filipelinhares/ress
 */
html {
    box-sizing: border-box;
    -webkit-text-size-adjust: 100%;
    word-break: normal;
    -moz-tab-size: 4;
    -o-tab-size: 4;
    tab-size: 4
}

*,::before,::after {
    background-repeat: no-repeat;
    box-sizing: inherit
}

::before,::after {
    text-decoration: inherit;
    vertical-align: inherit
}

* {
    padding: 0;
    margin: 0
}

hr {
    overflow: visible;
    height: 0
}

details,main {
    display: block
}

summary {
    display: list-item
}

small {
    font-size: 80%
}

[hidden] {
    display: none
}

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

a {
    background-color: rgba(0,0,0,0)
}

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

code,kbd,pre,samp {
    font-family: monospace,monospace
}

pre {
    font-size: 1em
}

b,strong {
    font-weight: bolder
}

img {
    border-style: none
}

progress {
    vertical-align: baseline
}

svg:not([fill]) {
    fill: currentColor
}

[aria-busy=true] {
    cursor: progress
}

[aria-controls] {
    cursor: pointer
}

[aria-disabled] {
    cursor: default
}

:root {
    --ratio: 1.5;
    --s-5: calc(var(--s-4) / var(--ratio));
    --s-4: calc(var(--s-3) / var(--ratio));
    --s-3: calc(var(--s-2) / var(--ratio));
    --s-2: calc(var(--s-1) / var(--ratio));
    --s-1: calc(var(--s0) / var(--ratio));
    --s0: 1rem;
    --s1: calc(var(--s0) * var(--ratio));
    --s2: calc(var(--s1) * var(--ratio));
    --s3: calc(var(--s2) * var(--ratio));
    --s4: calc(var(--s3) * var(--ratio));
    --s5: calc(var(--s4) * var(--ratio)) // font-size --font-size-small: .75rem;
    --font-size-smallish: .875rem;
    --font-size-base: var(--s0);
    --font-size-biggish: var(--s1);
    --font-size-big: var(--s2);
    --z-index-default: 1;
    --z-index-1: 100;
    --z-index-2: 200;
    --z-index-3: 300;
    --z-index-4: 400;
    --buffer: 50
}

:root {
    --gray: #e5e5e5;
    --gray-secondary: #ebebeb;
    --white: #fbfbfb;
    --black: #111;
    --blue: #165caf;
    --red: #fc4a3a
}

html,body {
    margin: 0;
    padding: 0;
    width: 100%;
    color: #6a6a6a
}

* {
    box-sizing: border-box
}

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

html {
    font-size: 16px
}

main {
    overflow-x: hidden;
    flex: 1
}

ul {
    margin: 0;
    padding: 0;
    list-style: none
}

p {
    margin: 0
}

a {
    color: inherit;
    text-decoration: none
}

.grid {
    display: grid;
    grid-gap: 30px;
    --minimum: 330px
}

@supports(width: min(var(--minimum), 100%)) {
    .grid {
        grid-template-columns:repeat(auto-fit, minmax(min(var(--minimum), 100%), 1fr))
    }
}

.l-cluster {
    --space: calc(16px / 2)
}

.l-cluster>* {
    display: flex;
    margin: calc(var(--space)/2*-1);
    flex-wrap: wrap;
    align-items: center
}

.l-cluster>*>* {
    margin: calc(var(--space)/2)
}

.l-cluster--large {
    --space: 81px
}

.l-cluster--large>* {
    display: flex;
    margin: calc(var(--space)/2*-1);
    flex-wrap: wrap;
    align-items: center
}

.l-cluster--large>*>* {
    margin: calc(var(--space)/2)
}

.frame {
    position: relative;
    padding-bottom: calc(var(--n)/var(--d)*100%);
    --n: 9;
    --d: 16
}

.frame>* {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    display: flex;
    overflow: hidden;
    justify-content: center;
    align-items: center
}

.frame>img,.frame>video,.frame>iframe {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

.commonWrap {
    position: relative;
    margin: 0 auto;
    width: clamp(301px,(100vw - 375px)*.8441314554 + 301px,1200px)
}

.pageHead {
    background-color: #f6f4f1
}

.pageHeadWrap {
    padding: 8px 3% 58px
}

.pageTitle {
    margin-top: 51px;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 27px;
    text-align: center
}

.pageTitleText {
    letter-spacing: .24em;
    font-weight: 400;
    line-height: 1.2;
    font-size: clamp(1.5625rem,2vw + 2vh,2.5rem);
    font-family: "Cormorant Garamond",serif;
    order: 0;
    color: #333
}

.pageTitleText--sub {
    position: relative;
    font-size: clamp(.75rem,1vw + 1vh,1rem);
    letter-spacing: .1em;
    line-height: 1.41;
    font-family: "Shippori Mincho",serif;
    order: 1
}

.pageTitleText--sub::after {
    position: absolute;
    top: -15px;
    left: 50%;
    content: "";
    background-color: #af8858;
    width: 80px;
    height: 1px;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%)
}

.breadcrumbList {
    display: flex;
    gap: 4px;
    font-size: .625rem;
    color: #6a6a6a
}

.breadcrumbItem {
    position: relative
}

.pageBridalWrap {
    padding: 60px 0
}

.pageBridalTitle {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 20px
}

.pageBridalTitleText {
    letter-spacing: .38em;
    font-weight: 400;
    line-height: 1.2;
    font-size: clamp(1.875rem,2vw + 2vh,2.5rem);
    font-family: "Cormorant Garamond",serif;
    order: 0
}

.pageBridalTitleText--sub {
    position: relative;
    font-size: clamp(.75rem,1vw + 1vh,1rem);
    letter-spacing: .17em;
    line-height: 1.41;
    font-weight: 400;
    font-family: "Shippori Mincho",serif;
    order: 1
}

.pageBridalTitleText--sub::after {
    position: absolute;
    top: -8px;
    left: 0;
    content: "";
    background-color: #af8858;
    width: 70px;
    height: 1px
}

.pageBridalBody {
    margin-top: 49px
}

.pagefootBridalSlider .pageBridalArticleThumb {
    position: relative;
    overflow: hidden;
    aspect-ratio: 328/226
}

.pagefootBridalSlider .swiper-slide img {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    top: 0;
    margin: auto;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

.pageBridalSwiper .swiper-button-next,.pageBridalSwiper .swiper-button-prev {
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    width: 10px;
    height: 26px;
    top: 44%
}

.pageBridalSwiper .swiper-button-next::after,.pageBridalSwiper .swiper-button-prev::after {
    content: ""
}

.pageBridalSwiper .swiper-button-next {
    right: auto;
    left: -8%;
    background-image: url(../img/images/swiperArrowL.png)
}

.pageBridalSwiper .swiper-button-prev {
    right: -8%;
    left: auto;
    background-image: url(../img/images/swiperArrowR.png)
}

.pageBridalSlider .swiper-slide {
    max-width: 224px;
    width: 100%
}

.pageBridalArticleLink {
    display: flex;
    flex-direction: column;
    align-items: center
}

.pageBridalArticleHead {
    order: 1;
    letter-spacing: .1em;
    font-family: "Shippori Mincho",serif;
    display: flex;
    flex-direction: column;
    margin-top: 12px;
    gap: 10px;
    width: 100%
}

.pageBridalArticleTitle {
    order: 1;
    font-size: .875rem;
    font-weight: 400;
    line-height: 1.57;
    text-align: left
}

.pageBridalArticleTime {
    order: 0;
    font-size: 1.25rem;
    font-weight: 400;
    line-height: 1.4;
    text-align: center
}

.pageBridalArticleBody {
    order: 0
}

.frontPageBridal .pageBridalArticleBody {
    width: 100%
}

.pageBridalArticleThumb {
    width: 100%;
    height: 224px
}

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

.pageBridalFoot {
    margin-top: 41px;
    margin-left: -2px
}

.pageBridalLink {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 15px;
    width: 198px;
    padding: 12px 28px;
    color: #af8858;
    border: 1px solid #af8858;
    background-color: #fff
}

.pageBridalLink::after {
    position: absolute;
    content: "";
    background-image: url(../img/images/pageViewMoreArrow.png);
    background-size: cover;
    background-repeat: no-repeat;
    width: 30px;
    height: 6px;
    right: -9%;
    top: 46%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%)
}

.pageBridalLinkIcon {
    order: 0
}

.pageBridalLinkText {
    order: 1;
    font-size: .75rem;
    font-weight: 500;
    letter-spacing: .1em
}

.pageBridalHeadCtaPc {
    display: none
}

.wp-pagenavi {
    font-family: "Shippori Mincho",serif;
    font-size: .625rem;
    line-height: 1.41;
    font-weight: 400;
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-top: 40px;
    gap: 16px
}

.wp-pagenavi .previouspostslink {
    position: relative;
    color: #fff;
    width: 35px;
    height: 35px
}

.wp-pagenavi .previouspostslink::after {
    position: absolute;
    content: "";
    background-image: url(../img/images/circleArrowL.png);
    background-size: cover;
    background-repeat: no-repeat;
    width: 100%;
    height: 100%;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%)
}

.wp-pagenavi .nextpostslink {
    position: relative;
    color: #fff;
    width: 35px;
    height: 35px
}

.wp-pagenavi .nextpostslink::after {
    position: absolute;
    content: "";
    background-image: url(../img/images/circleArrowR.png);
    background-size: cover;
    background-repeat: no-repeat;
    width: 100%;
    height: 100%;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%)
}

.wp-pagenavi .page {
    padding: 12px
}

.wp-pagenavi .current {
    background-color: #af8858;
    border-radius: 50%;
    color: #fff;
    width: 24px;
    height: 24px;
    display: flex;
    align-items: center;
    justify-content: center
}

.pageFairHead {
    background-color: #fff
}

.pageFairHeadDesc {
    font-family: "Shippori Mincho",serif;
    position: relative;
    margin: 0 auto;
    margin-top: 37px;
    width: clamp(330px,(100vw - 375px)*.2272300469 + 330px,572px);
    position: relative;
    padding: 22px 0 27px 0;
    border: 1px solid #b18a58
}

.pageFairHeadDesc::before {
    position: absolute;
    content: "";
    background-color: inherit;
    border-right: 1px solid #b18a58;
    border-bottom: 1px solid #b18a58;
    width: 100%;
    height: 100%;
    top: 7px;
    left: 7px;
    pointer-events: none
}

.pageFairHeadTitle {
    font-size: clamp(1rem,1vw + 1vh,1.25rem);
    line-height: 1.625;
    letter-spacing: .1em;
    color: #b18a58;
    font-weight: 400;
    text-align: center
}

.pageFairHeadText {
    margin-top: 11px;
    font-size: clamp(.6875rem,1vw + 1vh,.875rem);
    font-weight: 400;
    line-height: 1.8;
    letter-spacing: .1em;
    text-align: center
}

.pageFairFoot {
    font-family: "Shippori Mincho",serif;
    padding: 40px 0 67px 0
}

.pageFairFootWrap {
    position: relative;
    margin: 0 auto;
    width: clamp(330px,(100vw - 375px)*.8169014085 + 330px,1200px)
}

.pageFairFootWrap>*+* {
    margin-top: 37px
}

.pageFairFootItem {
    position: relative;
    padding: 22px;
    padding-bottom: 11px;
    border: 1px solid #b18a58;
    width: clamp(323px,(100vw - 375px)*.2338028169 + 323px,572px)
}

.pageFairFootItem::before {
    position: absolute;
    content: "";
    background-color: inherit;
    border-right: 1px solid #b18a58;
    border-bottom: 1px solid #b18a58;
    width: 100%;
    height: 100%;
    top: 7px;
    left: 7px;
    pointer-events: none
}

.pageFairFootItemInner {
    display: flex;
    align-items: flex-start;
    justify-content: space-between
}

.pageFairFootItemContent {
    position: relative;
    width: calc(100% - clamp(110px,(100vw - 375px)*.0845070423 + 110px,200px) - 8px)
}

.pageFairFootItemContent>*+* {
    margin-top: 8px
}

.pageFairFootItemTitle {
    font-size: 1.25rem;
    line-height: 1.3;
    letter-spacing: .1em;
    color: #b18a58;
    font-weight: 400
}

.pageFairFootItemText {
    font-size: clamp(.6875rem,1vw + 1vh,.875rem);
    font-weight: 400;
    line-height: 1.9;
    letter-spacing: .1em;
    text-align: justify
}

.pageFairFootItemAnnotation {
    font-size: clamp(.625rem,1vw + 1vh,.75rem);
    font-weight: 400;
    line-height: 1.9;
    letter-spacing: .05em;
    white-space: nowrap
}

.pageFairFootItemSmall {
    font-family: "Cormorant Garamond",serif;
    font-weight: 400;
    font-size: clamp(.625rem,1vw + 1vh,.75rem);
    text-align: center;
    color: #b18a58
}

.pageFairFootItemThanks {
    margin-top: 8px
}

.pageFairFootItemImage {
    width: clamp(110px,(100vw - 375px)*.0845070423 + 110px,200px)
}

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

.l-siteWrapper {
    display: flex;
    flex-direction: column;
    min-height: 100vh
}

main {
    padding-top: 50px
}

main.front {
    padding-top: 0
}

.headerWrap {
    display: flex;
    justify-content: space-between;
    align-items: center;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: var(--z-index-1);
    background-color: #fff
}

.headerWrap.js-headerWrap {
    background-color: rgba(0,0,0,0);
    color: #fff
}

.headerWrap.js-headerWrap.is-active {
    background-color: #fff;
    color: #323232
}

.headerWrap.js-headerWrap.is-active .headerLogoColor {
    display: block
}

.headerWrap.js-headerWrap.is-active .headerLogoNoColor {
    display: none
}

.headerLogoColor {
    display: none
}

.headerLogoNoColor {
    display: block
}

.headerWrapPc {
    display: none
}

.headerLogo {
    display: flex;
    flex-direction: column;
    gap: 2px;
    padding: 8px 0 7px 8px
}

.headerLogoLink {
    order: 1;
    width: 99px;
    height: 19px
}

.headerLogoLink img {
    width: 100%;
    height: 100%;
    -o-object-fit: contain;
    object-fit: contain;
    -o-object-position: left;
    object-position: left
}

.headerLogoText {
    font-size: .625rem;
    line-height: 1.4;
    font-weight: 400;
    order: 0
}

.headerNavigationButton {
    position: relative;
    z-index: var(--z-index-3);
    background-color: #333;
    color: #fff;
    font-family: "Cormorant Garamond",serif;
    font-size: .625rem;
    letter-spacing: .1em;
    line-height: 1.125;
    width: 50px;
    height: 50px;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 4.5px;
    padding-top: 10px
}

.headerNavigationButton.on .headerNavigationButtonText {
    opacity: 0
}

.headerNavigationButton.on .headerNavigationButtonLine {
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg)
}

.headerNavigationButton.on .headerNavigationButtonLine::before {
    top: 0;
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg)
}

.headerNavigationButton.is-active {
    position: fixed;
    top: 0;
    right: 0
}

.headerNavigationButtonText {
    transition: all .25s cubic-bezier(0.76, 0, 0.24, 1)
}

.headerNavigationButtonLine {
    position: relative;
    width: 50%;
    height: 1px;
    background-color: #fff;
    transition: .45s cubic-bezier(0.33, 1, 0.68, 1)
}

.headerNavigationButtonLine::before {
    transition: .45s cubic-bezier(0.33, 1, 0.68, 1);
    position: absolute;
    top: 8px;
    width: 100%;
    height: 100%;
    display: block;
    background-color: inherit;
    content: ""
}

.headerFixMenu {
    position: fixed;
    top: 0;
    left: 100%;
    z-index: var(--z-index-2);
    transition: all .45s cubic-bezier(0.33, 1, 0.68, 1);
    background-color: #f2eee6;
    height: 100vh;
    width: 100%
}

.headerFixMenu.on {
    left: 0
}

.headerFixMenu.on .headerFixMenuNavigation {
    transition: all .3s cubic-bezier(0.37, 0, 0.63, 1);
    opacity: 1
}

.headerFixMenuWrap {
    padding-top: 48px;
    height: 100%;
    color: #323232
}

.headerFixMenuNavigation {
    opacity: 0;
    transition: all .3s cubic-bezier(0.37, 0, 0.63, 1);
    transition-delay: .45s;
    border-top: 1px solid #e7dac2;
    padding-bottom: 28px;
    overflow-y: scroll;
    height: 100%
}

.headerFixMenuNavigationList {
    display: flex;
    flex-direction: column
}

.headerFixMenuNavigationList>*+* {
    border-top: 1px solid #e7dac2
}

.headerFixMenuNavigationItem a {
    display: block;
    width: 100%;
    padding: 16px 22px 16px 29px;
    font-size: 1rem;
    letter-spacing: .1em;
    line-height: 1.4375;
    font-family: "Shippori Mincho",serif
}

.headerFixMenuNavigationAccordion {
    cursor: pointer
}

.headerFixMenuNavigationAccordion.is-open .headerFixMenuNavigationAccordionIcon {
    -webkit-transform: rotate(180deg);
    transform: rotate(180deg)
}

.headerFixMenuNavigationAccordionTitle {
    display: flex;
    width: 100%;
    padding: 16px 22px 16px 29px;
    font-size: 1rem;
    letter-spacing: .1em;
    line-height: 1.4375;
    font-family: "Shippori Mincho",serif;
    justify-content: space-between;
    align-items: center
}

.headerFixMenuNavigationAccordionTitle::-webkit-details-marker {
    display: none
}

.headerFixMenuNavigationAccordionIcon {
    position: relative;
    background-color: #ae8758;
    border-radius: 50%;
    width: 16px;
    height: 16px;
    transition: all .3s cubic-bezier(0.37, 0, 0.63, 1)
}

.headerFixMenuNavigationAccordionIcon::before {
    position: absolute;
    content: "";
    background-image: url(../img/images/headerArrow.svg);
    width: 8px;
    height: 8px;
    background-size: contain;
    background-position: 0 2px;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%)
}

.headerFixMenuNavigationAccordionWrap {
    overflow: hidden
}

.headerFixMenuNavigationAccordionItem a {
    font-size: .875rem
}

.headerFixMenuNavigationAccordionItem a::before {
    content: "－"
}

.headerFixMenuNavigationItemChildren {
    display: flex;
    gap: 40px
}

.headerFixMenuNavigationItemChild a {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 4px;
    color: #ae8758;
    font-size: .875rem
}

.headerFixMenuNavigationItemChildIcon {
    position: relative;
    background-color: #ae8758;
    border-radius: 50%;
    width: 16px;
    height: 16px;
    -webkit-transform: rotate(-90deg);
    transform: rotate(-90deg)
}

.headerFixMenuNavigationItemChildIcon::before {
    position: absolute;
    content: "";
    background-image: url(../img/images/headerArrow.svg);
    width: 8px;
    height: 8px;
    background-size: contain;
    background-position: 0 2px;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%)
}

.headerFixMenuCta {
    margin-top: 18px;
    padding: 0 22px 0 29px
}

.headerFixMenuCtaLink {
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1rem;
    line-height: 1.375;
    text-align: center;
    height: 56px;
    background-color: #fff;
    color: #af8858;
    border: 1px solid #af8858;
    font-family: "Shippori Mincho",serif
}

.headerFixMenuCtaLink+.headerFixMenuCtaLink {
    margin-top: 10px
}

.headerFixMenuCtaLinkMajor {
    background-color: #af8858;
    color: #fff;
    border: none
}

.headerFixMenuCtaTel {
    flex-direction: column
}

.headerFixMenuCtaTelText {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px
}

.headerFixMenuCtaTelText::before {
    position: absolute;
    content: "";
    background-image: url(../img/images/headerTel.svg);
    background-size: contain;
    width: 13px;
    height: 17px;
    margin-top: 2px;
    left: -17px;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%)
}

.headerFixMenuCtaTelTextSub {
    font-size: .625rem;
    line-height: 2.4
}

@supports(-webkit-touch-callout: none) {
    .headerFixMenu {
        height: 100dvh
    }
}

.headerModalMenu {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    background-color: #f2eee6;
    color: #1d1f1e;
    opacity: 0;
    font-family: "Shippori Mincho",serif;
    padding-top: 60px;
    padding-bottom: 31px;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: var(--z-index-2);
    -webkit-transform: translateY(-10%);
    transform: translateY(-10%);
    transition: opacity .5s,-webkit-transform .5s;
    transition: opacity .5s,transform .5s;
    transition: opacity .5s,transform .5s,-webkit-transform .5s;
    pointer-events: none
}

.headerModalMenu.on {
    -webkit-transform: translateY(0%);
    transform: translateY(0%);
    transition: opacity .5s,-webkit-transform .5s;
    transition: opacity .5s,transform .5s;
    transition: opacity .5s,transform .5s,-webkit-transform .5s;
    opacity: 1;
    pointer-events: auto;
    overscroll-behavior-y: contain
}

.headerModalMenuNavigation {
    max-width: 1204px;
    width: 100%
}

.headerModalMenuNavigationList {
    margin: 0 auto;
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    gap: 30px
}

.headerModalMenuNavigationListItem a {
    font-family: "Shippori Mincho",serif;
    font-size: .875rem;
    font-weight: 500;
    line-height: 20px
}

.headerModalMenuNavigationListChild {
    margin-top: 15px
}

.headerModalMenuNavigationListChild>*+* {
    margin-top: 14px
}

.headerModalMenuNavigationListChild .headerModalMenuNavigationListItem a {
    font-size: .75rem
}

.headerModalMenuNavigationSub {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 64px;
    margin-top: 54px
}

.headerModalMenuNavigationSubItem {
    font-size: .875rem;
    font-weight: 400;
    line-height: 20px;
    letter-spacing: .1em;
    text-align: center;
    color: #ae8758
}

.headerModalMenuNavigationSubItem a {
    display: flex;
    align-items: center;
    gap: 7px
}

.headerModalMenuCta {
    margin-top: 29px
}

.headerModalMenuCta>*+* {
    margin-top: 31px
}

.headerModalMenuCtaButton {
    gap: 30px
}

.headerModalMenuNavigationListItemMajor>*+* {
    margin-top: 27px
}

.headerModalMenuCtaLink {
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: .875rem;
    font-weight: 400;
    line-height: 27px;
    letter-spacing: .1em;
    text-align: center;
    width: 290px;
    height: 70px;
    background-color: #fff;
    color: #af8858;
    border: 1px solid #af8858;
    font-family: "Shippori Mincho",serif
}

.headerModalMenuCtaLinkMajor {
    position: relative;
    background-color: #af8858;
    color: #fff;
    border: none
}

.headerModalMenuCtaLinkMajor img {
    position: absolute;
    top: 50%;
    left: 20px;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%)
}

.headerModalMenuCtaTel {
    color: #333
}

.headerModalMenuCtaTel>*+* {
    margin-top: 4px
}

.headerModalMenuCtaTelText {
    font-family: "Cormorant Garamond",serif;
    font-size: 1.25rem;
    font-weight: 400;
    line-height: 27px;
    letter-spacing: .1em;
    text-align: left
}

.headerModalMenuCtaTelTextLine {
    font-family: "EB Garamond",serif;
    font-size: 2.1875rem;
    font-weight: 400;
    line-height: 27px;
    letter-spacing: .15em;
    text-align: left;
    padding-left: 9px
}

.headerModalMenuCtaTelTextSub {
    font-family: "Shippori Mincho",serif;
    font-size: frem(14);
    font-weight: 400;
    line-height: 24px;
    letter-spacing: .1em;
    text-align: center
}

.headerCtaFair {
    background-color: #c76c68;
    height: 70px;
    width: 170px;
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    gap: 6px;
    font-family: "Shippori Mincho",serif;
    font-size: .8125rem;
    font-weight: 500;
    line-height: 18.82px;
    text-align: center
}

.headerCta {
    display: flex;
    align-items: center
}

.headerGolablNav {
    margin-left: auto;
    padding-right: 28px
}

.headerGolablNavList {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 29px
}

.headerGolablNavListItem a {
    font-family: "Shippori Mincho",serif;
    font-size: .75rem;
    font-weight: 500;
    line-height: 17.38px;
    text-align: left
}

.footer {
    line-height: 1.4;
    padding-bottom: 50px
}

.footerContact {
    background-image: url(../img/images/footerContactBackground.jpeg);
    background-size: cover;
    background-position: 50%;
    font-family: "Shippori Mincho",serif
}

.footerContactWrap {
    padding: 27px 0 46px;
    margin: 0 auto;
    width: clamp(320px,(100vw - 375px)*.8262910798 + 320px,1200px)
}

.footerContactList {
    --minimum: 155px;
    gap: 10px
}

.footerContactItem a {
    height: clamp(80px,(100vw - 375px)*.034741784 + 80px,117px)
}

.footerContactItemLink {
    display: flex;
    width: 100%;
    align-items: center;
    justify-content: center;
    text-align: center;
    font-size: clamp(.875rem,1vw + 1vh,1.125rem);
    line-height: 1.5;
    letter-spacing: .1em;
    height: clamp(80px,15vw,117px);
    background-size: cover;
    background-position: 50%;
    color: #fff
}

.footerContactItemLink[data-item=onlyone] {
    background-image: url(../img/images/footerContact01.png)
}

.footerContactItemLink[data-item=party] {
    background-image: url(../img/images/footerContact02.png)
}

.footerContactItemLink[data-item=dish] {
    background-image: url(../img/images/footerContact03.png)
}

.footerContactItemLink[data-item=dress] {
    background-image: url(../img/images/footerContact04.png)
}

.footerContactItemLink[data-item=report] {
    background-image: url(../img/images/footerContact05.png)
}

.footerContactBody {
    letter-spacing: .1em
}

.footerContactTitle {
    margin-top: 30px;
    padding-bottom: 18px;
    text-align: center;
    display: flex;
    align-items: center;
    flex-direction: column;
    justify-content: center;
    gap: 10px
}

.footerContactTitleText {
    font-size: clamp(1.875rem,2vw + 2vh,2.1875rem);
    font-weight: 400;
    font-family: "Cormorant Garamond",serif;
    order: 0;
    letter-spacing: .2em;
    line-height: 1.125
}

.footerContactTitleTextSub {
    font-size: clamp(.75rem,1vw + 1vh,.875rem);
    order: 1;
    line-height: 1.4
}

.footerContactReserve {
    border-top: 1px solid #6a6a6a;
    padding: 20px
}

.footerContactReserveInfo {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column
}

.footerContactReserveInfo>*+* {
    margin-top: 8px
}

.footerContactReserveInfoText {
    font-size: clamp(.75rem,1vw + 1vh,.875rem);
    line-height: 1.83;
    text-align: center
}

.footerContactReserveInfoText .footerSp {
    display: block
}

.footerContactReserveInfoText .footerPc {
    display: none
}

.footerContactReserveInfoTel {
    font-size: clamp(1rem,1vw + 1vh,1.25rem);
    font-weight: 400;
    line-height: 1.125;
    font-family: "EB Garamond",serif;
    white-space: nowrap
}

.footerContactReserveInfoTelLink {
    text-decoration: underline;
    text-decoration-thickness: 2px;
    font-size: clamp(1.875rem,2vw + 2vh,2.1875rem)
}

.footerContactReserveLink {
    width: 240px;
    height: 44px;
    display: block;
    margin: 0 auto;
    margin-top: 16px;
    font-size: .875rem;
    line-height: 1.9;
    text-align: center;
    padding: 8px 0;
    background-color: #fff;
    color: #af8858;
    border: 1px solid #af8858
}

.footerContactFoot {
    display: flex;
    align-items: center;
    flex-direction: column;
    gap: 16px;
    border-top: 1px solid #6a6a6a;
    padding-top: 20px
}

.footerContactCtaLink {
    width: 290px;
    height: 70px;
    background-color: #af8858;
    color: #fff;
    text-align: center;
    font-size: .875rem;
    padding: 22px 0;
    position: relative;
    letter-spacing: .1em;
    line-height: 1.9
}

.footerContactCtaLink:nth-child(1)::before {
    position: absolute;
    width: 20px;
    height: 20px;
    content: "";
    background-image: url(../img/images/footerContactFair.svg);
    left: 16px;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%)
}

.footerContactCtaLink:nth-child(2) {
    background-color: #fff;
    color: #af8858;
    border: 1px solid #af8858
}

.footerPcNav {
    display: none;
    background-color: #313131;
    color: #fff;
    font-family: "Zen Kaku Gothic New",sans-serif
}

.footerPcNavList {
    margin: 0 auto;
    width: clamp(300px,(100vw - 375px)*.8450704225 + 300px,1200px);
    display: flex;
    flex-wrap: wrap;
    gap: 30px
}

.footerPcNavListItem a {
    font-family: "Zen Kaku Gothic New",sans-serif;
    font-size: .875rem;
    font-weight: 400;
    line-height: 20px
}

.footerPcNavListItemMajor>*+* {
    margin-top: 27px
}

.footerHead {
    background-color: #313131;
    color: #fff;
    font-family: "Shippori Mincho",serif;
    font-weight: 400;
    letter-spacing: .1em
}

.footerHeadWrap {
    margin: 0 auto;
    padding: 48px 0 28px;
    width: clamp(300px,(100vw - 375px)*.8450704225 + 300px,1200px)
}

.footerHeadLinkBtnList {
    display: none
}

.footerHeadLogo {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 19px
}

.footerHeadLogoLink {
    max-width: 164px;
    width: 100%;
    height: auto
}

.footerHeadLogoLink img {
    width: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

.footerHeadLogoText {
    font-size: .75rem
}

.footerHeadAddress {
    font-style: normal;
    font-size: .875rem;
    text-align: center;
    margin-top: 24px;
    white-space: nowrap
}

.footerHeadAddressLink {
    font-size: .75rem;
    text-decoration: underline
}

.footerHeadExLink {
    margin-top: 28px;
    display: flex;
    justify-content: center
}

.footerHeadExLink img {
    width: 35px;
    height: 35px;
    -o-object-fit: cover;
    object-fit: cover
}

.footerBody {
    background-color: #af8858;
    color: #fff;
    padding: 37px 0 12px
}

.footerBodyWrap {
    margin: 0 auto;
    width: clamp(349px,(100vw - 375px)*.8215962441 + 349px,1224px)
}

.footerBodyTitle {
    font-size: clamp(1rem,2vw,1.125rem);
    font-family: "Shippori Mincho",serif;
    text-align: center
}

.footerBodyNavigation {
    margin-top: 29px
}

.footerBodyNavigationList {
    --minimum: 160px;
    -webkit-column-gap: 12px;
    -moz-column-gap: 12px;
    column-gap: 12px;
    row-gap: 30px
}

.footerBodyNavigationListItem:nth-child(2) {
    order: 3
}

.footerBodyNavigationListItem:nth-child(3) {
    order: 5
}

.footerBodyNavigationListItem:nth-child(4) {
    order: 2
}

.footerBodyNavigationListItem:nth-child(5) {
    order: 4
}

.footerBodyNavigationListItem:nth-child(6) {
    order: 6
}

.footerBodyNavigationListItemLink {
    display: flex;
    flex-direction: column;
    gap: 2px;
    padding-left: 10px;
    border-left: 1px solid #fff
}

.footerBodyNavigationListItemText {
    font-size: .875rem;
    font-weight: 400;
    display: flex;
    align-items: center;
    gap: 3px;
    order: 1
}

.footerBodyNavigationListItemText:nth-child(2) {
    font-size: .75rem;
    order: 0
}

.footerBodySiteCta {
    margin-top: 41px;
    display: flex;
    align-items: center;
    justify-content: center
}

.footerBodySiteCtaLink {
    display: flex;
    align-items: center;
    justify-content: center;
    color: #af8858;
    background-color: #fff;
    width: 280px;
    height: 44px;
    font-family: "Shippori Mincho",serif
}

.footerBodyLogo {
    margin-top: 19px;
    display: flex;
    justify-content: center;
    align-items: center
}

.footerBodyLogoLink {
    max-width: 214px;
    width: 100%;
    height: auto
}

.footerBodyLogoLink img {
    width: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

.footerBodyCopy {
    margin-top: 8px;
    font-family: "Shippori Mincho",serif;
    font-size: .78125rem;
    text-align: center
}

.commonSlider .swiper {
    overflow: visible
}

.commonSlider .swiper-slide {
    max-width: 224px
}

.commonSlider .swiper-slide img {
    max-width: 100%;
    height: auto
}

.commonSlider .swiper-scrollbar {
    bottom: calc(var(--s2)*-1);
    left: 0;
    width: 100%;
    height: 1px;
    border-radius: 0;
    background-color: var(--gray)
}

.commonSlider .swiper-scrollbar-drag {
    border-radius: 0;
    background: var(--orange)
}

.commonSlider .swiper-button-next,.commonSlider .swiper-button-prev {
    transition: all .35s cubic-bezier(0.76, 0, 0.24, 1);
    opacity: 1
}

.commonSlider .swiper-button-next.swiper-button-disabled,.commonSlider .swiper-button-prev.swiper-button-disabled {
    opacity: 0
}

.commonSliderWrapper {
    position: relative
}

.commonSliderSlide {
    letter-spacing: .08em;
    line-height: 1.5
}

.commonSliderSlide img {
    transition: -webkit-transform .45s cubic-bezier(0.76, 0, 0.24, 1);
    transition: transform .45s cubic-bezier(0.76, 0, 0.24, 1);
    transition: transform .45s cubic-bezier(0.76, 0, 0.24, 1), -webkit-transform .45s cubic-bezier(0.76, 0, 0.24, 1);
    order: 0
}

.commonSliderSlide>*+* {
    margin-top: 0
}

.commonButton {
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1rem;
    line-height: 1.375;
    text-align: center;
    height: 50px;
    background-color: #fff;
    color: #af8858;
    border: 1px solid #af8858;
    font-family: "Shippori Mincho",serif
}

.commonButtonMajor {
    background-color: #af8858;
    color: #fff;
    border: none
}

.commonButtonArrow {
    gap: 16px
}

.commonPageNav {
    margin-top: 60px
}

.commonPageNavList {
    --minimum: 120px;
    row-gap: 40px;
    -webkit-column-gap: 0;
    -moz-column-gap: 0;
    column-gap: 0
}

.commonPageNavList>*+* {
    border-right: 1px solid #af8858
}

.commonPageNavListItem {
    border-left: 1px solid #af8858
}

.commonPageNavListItem a {
    padding: 5px 0 19px 0;
    position: relative;
    display: block;
    font-size: clamp(.6875rem,1vw + 1vh,.875rem);
    color: #af8858;
    line-height: 1.4;
    text-align: center;
    font-weight: 400;
    align-items: center
}

.commonPageNavListItem a::after {
    content: "";
    position: absolute;
    bottom: 6px;
    left: 50%;
    width: 8px;
    height: 4px;
    background-image: url(../img/images/bottomArrow.png);
    background-size: cover;
    background-repeat: no-repeat;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%)
}

.commonPageNavListItem:first-child {
    border-right: 1px solid #af8858
}

.commonPageNavListItem:nth-child(even) {
    border-left: none
}

.commonHero {
    position: relative;
    height: 640px
}

.commonHeroWrap {
    height: 100%;
    display: flex;
    align-items: center
}

.commonHeroImage {
    position: absolute;
    width: 100%;
    height: 100%
}

.commonHeroImage img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center;
    object-position: center
}

.commonHeroText {
    font-family: "Shippori Mincho",serif;
    font-weight: 400;
    font-size: clamp(1.4375rem,3vw + 1vh,1.875rem);
    line-height: 1.8;
    letter-spacing: .2em;
    color: #fff;
    margin-top: -5px;
    margin-left: -17px
}

.commonHeroTextLine {
    display: block
}

.commonScrollDown {
    position: absolute;
    left: 50%;
    bottom: -60px;
    height: 120px;
    mix-blend-mode: plus-lighter
}

.commonScrollDown::after {
    content: "";
    position: absolute;
    top: 0;
    width: 1px;
    height: 60px;
    background: #545454;
    -webkit-animation: pathmove 1.4s ease-in-out infinite;
    animation: pathmove 1.4s ease-in-out infinite;
    opacity: 0
}

@-webkit-keyframes pathmove {
    0% {
        height: 0;
        top: 0;
        opacity: 0
    }

    50% {
        height: 60px;
        opacity: 1
    }

    100% {
        top: 64px;
        opacity: 0
    }
}

@keyframes pathmove {
    0% {
        height: 0;
        top: 0;
        opacity: 0
    }

    50% {
        height: 60px;
        opacity: 1
    }

    100% {
        top: 64px;
        opacity: 0
    }
}

body.fix {
    overflow: hidden
}

.js-fixFoot {
    display: block;
    opacity: 0;
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 99;
    transition: -webkit-transform .3s ease;
    transition: transform .3s ease;
    transition: transform .3s ease, -webkit-transform .3s ease;
    -webkit-animation-name: fadeOut;
    animation-name: fadeOut;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards;
    -webkit-animation-duration: 1s;
    animation-duration: 1s
}

.js-fixFoot.is-active {
    -webkit-animation-name: fadeIn;
    animation-name: fadeIn;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards;
    -webkit-animation-duration: 1s;
    animation-duration: 1s
}

@-webkit-keyframes fadeIn {
    0% {
        opacity: 0
    }

    100% {
        opacity: 1
    }
}

@keyframes fadeIn {
    0% {
        opacity: 0
    }

    100% {
        opacity: 1
    }
}

@-webkit-keyframes fadeOut {
    0% {
        opacity: 1
    }

    100% {
        opacity: 0
    }
}

@keyframes fadeOut {
    0% {
        opacity: 1
    }

    100% {
        opacity: 0
    }
}

.js-animeObj {
    visibility: hidden;
    opacity: 0;
    transition: opacity .8s cubic-bezier(0.37, 0, 0.63, 1) 0s,-webkit-transform .8s cubic-bezier(0.37, 0, 0.63, 1) 0s;
    transition: opacity .8s cubic-bezier(0.37, 0, 0.63, 1) 0s,transform .8s cubic-bezier(0.37, 0, 0.63, 1) 0s;
    transition: opacity .8s cubic-bezier(0.37, 0, 0.63, 1) 0s,transform .8s cubic-bezier(0.37, 0, 0.63, 1) 0s,-webkit-transform .8s cubic-bezier(0.37, 0, 0.63, 1) 0s
}

.js-animeObj[data-view=true] {
    visibility: visible;
    opacity: 1
}

.tempAboutTitle {
    display: inline-flex;
    flex-direction: column;
    font-size: clamp(1.25rem,2vw + 2vh,2rem);
    line-height: 1.99;
    font-weight: 400;
    letter-spacing: .1em;
    font-family: "Shippori Mincho",serif
}

.tempAboutDesc {
    margin-top: 18px;
    font-size: clamp(.75rem,1vw + 1vh,.8125rem);
    line-height: 2.25;
    letter-spacing: .1em;
    font-family: "Shippori Mincho",serif
}

.tempAboutDescText {
    display: block
}

.tempAboutDescText+.tempAboutDescText {
    margin-top: 23px
}

.tempAboutImage {
    margin-top: 40px
}

.tempAboutImage--full {
    margin: 0 calc(50% - 50vw);
    margin-top: 40px
}

.tempAboutHero {
    position: relative;
    height: 100vh;
    max-height: 640px
}

.tempAboutHeroWrap {
    height: 100%;
    display: flex;
    align-items: center
}

.tempAboutHeroImage {
    position: absolute;
    width: 100%;
    height: 100%
}

.tempAboutHeroImage img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center;
    object-position: center
}

.tempAboutHeroText {
    font-family: "Shippori Mincho",serif;
    font-weight: 400;
    font-size: clamp(1.25rem,2vw + 2vh,1.875rem);
    line-height: 1.8;
    letter-spacing: .15em;
    color: #fff
}

.tempAboutHeroTextLine {
    display: block
}

.tempAboutIntro {
    padding: 41px 0 88px 0
}

.tempAboutIntro .aboutPageHeroVideoSp {
    display: block
}

.tempAboutIntro .aboutPageHeroVideoPc {
    display: none
}

.tempAboutIntroBody {
    position: relative
}

.tempAboutIntroBody::after {
    content: "";
    position: absolute;
    right: -5%;
    bottom: -3%;
    background-image: url(../img/images/tempAboutDescDeco.png);
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    width: clamp(143px,(100vw - 375px)*.3455399061 + 143px,511px);
    height: clamp(40px,(100vw - 375px)*.0938967136 + 40px,140px)
}

.tempAboutLoopItem {
    display: flex;
    flex-direction: column
}

.tempAboutLoopContents>*+* {
    margin-top: 60px
}

.tempAboutLoopContent {
    position: relative;
    order: 1
}

.tempAboutLoopContent::after {
    content: "";
    position: absolute;
    right: 0;
    bottom: 50px;
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain
}

.tempAboutLoopContent[data-item="01"]::after {
    background-image: url(../img/images/tempAboutLoop01Deco.png);
    width: clamp(132px,(100vw - 375px)*.0366197183 + 132px,171px);
    height: clamp(45px,(100vw - 375px)*.0131455399 + 45px,59px)
}

.tempAboutLoopContent[data-item="02"]::after {
    background-image: url(../img/images/tempAboutLoop02Deco.png);
    width: clamp(140px,(100vw - 375px)*.0366197183 + 140px,179px);
    height: clamp(48px,(100vw - 375px)*.0131455399 + 48px,62px)
}

.tempAboutLoopContent[data-item="03"]::after {
    background-image: url(../img/images/tempAboutLoop03Deco.png);
    width: clamp(140px,(100vw - 375px)*.0535211268 + 140px,197px);
    height: clamp(44px,(100vw - 375px)*.0169014085 + 44px,62px)
}

.tempAboutLoopContentInner {
    position: relative;
    padding: 50px 0 108px 0
}

.tempAboutLoopContentInner>*+* {
    margin-top: 22px
}

.tempAboutLoopContentInner:before {
    position: absolute;
    content: "";
    top: 0;
    left: 0;
    width: 100vw;
    height: 100%;
    margin: 0 calc(50% - 50vw);
    background-color: #fbf9f7;
    z-index: 0
}

.tempAboutLoopContentHead {
    position: relative;
    display: flex;
    gap: 14px;
    flex-direction: column
}

.tempAboutLoopContentBody {
    position: relative
}

.tempAboutLoopContentBody>*+* {
    margin-top: 30px
}

.tempAboutLoopContentTitle {
    order: 1;
    font-family: "Shippori Mincho",serif;
    font-weight: 400;
    font-size: clamp(1rem,1vw + 1vh,1.25rem);
    line-height: 2;
    letter-spacing: .1em
}

.tempAboutLoopContentSubTitle {
    order: 0;
    font-family: "Lato",sans-serif;
    color: #af8858;
    font-weight: 400;
    line-height: 1.2;
    letter-spacing: .1em;
    font-size: clamp(.625rem,1vw + 1vh,.75rem)
}

.tempAboutLoopContentImage {
    position: relative;
    margin: 0 calc(50% - 50vw);
    order: 0
}

.tempAboutLoopContentImage img {
    width: 100%
}

.tempAboutLoopContentImage::before {
    content: "写真はイメージです。";
    position: absolute;
    bottom: -0.8rem;
    right: 0;
    font-size: clamp(.625rem,1vw + 1vh,.75rem);
    z-index: 1
}

.tempAboutLoopContentDesc {
    font-family: "Shippori Mincho",serif;
    font-weight: 400;
    font-size: clamp(.75rem,1vw + 1vh,.8125rem);
    line-height: 2;
    letter-spacing: .1em;
    text-align: justify
}

.tempAboutLoopContentCta {
    display: flex;
    align-items: center;
    justify-content: center
}

.tempAboutLoopContentLink {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: .75rem;
    line-height: 1.22;
    letter-spacing: .1em;
    width: 260px;
    height: 40px;
    color: #af8858;
    border: 1px solid #af8858;
    background-color: #fff
}

.tempAboutLoopContentLink::after {
    position: absolute;
    content: "";
    background-image: url(../img/images/pageViewMoreArrow.png);
    background-size: cover;
    background-repeat: no-repeat;
    width: 30px;
    height: 6px;
    right: -6%;
    top: 49%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%)
}

.tempAboutLoopIndex {
    margin-top: 40px
}

.tempAboutLoopIndex>*+* {
    margin-top: 16px
}

.tempAboutLoopIndexText {
    font-family: "shippori Mincho",serif;
    font-weight: 400;
    font-size: .875rem;
    line-height: 2.14;
    letter-spacing: .1em;
    text-align: center
}

.tempAboutLink {
    padding: 143px 0 90px 0
}

.tempAboutLinkList {
    margin-top: 34px;
    --minimum: 360px;
    grid-gap: 28px
}

.tempAboutLinkItem a {
    display: flex;
    gap: 14px
}

.tempAboutLinkItemContent {
    order: 1;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 33px
}

.tempAboutLinkItemTitle {
    display: flex;
    flex-direction: column;
    gap: 4px;
    font-family: "Shippori Mincho",serif;
    font-weight: 500
}

.tempAboutLinkItemTitleText {
    font-size: .9375rem;
    line-height: 1.4;
    order: 1;
    white-space: nowrap
}

.tempAboutLinkItemTitleText--sub {
    font-size: .6875rem;
    line-height: 1.35;
    order: 0;
    color: #af8858
}

.tempAboutLinkItemGuide {
    font-size: .6875rem;
    font-family: "Lato",sans-serif;
    letter-spacing: .1em;
    line-height: 1.3;
    font-weight: bold;
    display: flex;
    align-items: center;
    gap: 4px
}

.tempAboutLinkItemGuide img {
    padding-bottom: 4px;
    margin-left: 4px
}

.tempAboutLinkItemGuideText {
    color: #af8858
}

.tempAboutLinkItemImage {
    order: 0;
    width: clamp(138px,(100vw - 375px)*.2084507042 + 138px,360px)
}

.tempAboutLinkFoot {
    margin-top: 51px;
    display: flex;
    flex-direction: column;
    align-items: center
}

.tempAboutLinkFootText {
    font-size: clamp(.75rem,1vw + 1vh,.875rem);
    line-height: 1.41;
    letter-spacing: .1em;
    font-weight: 400;
    font-family: "Shippori Mincho",serif;
    white-space: nowrap
}

.tempAboutLinkFootCta {
    width: 300px;
    height: 44px;
    margin-top: 9px;
    font-size: .875rem;
    font-weight: 500;
    letter-spacing: .1em;
    position: relative
}

.tempAboutLinkFootCta img {
    position: absolute;
    top: 50%;
    right: 15px;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    padding-bottom: 4px
}

.tempAboutLinkFootCta .commonButtonArrowText {
    margin-right: 16px
}

.tempAboutCta {
    padding: 42px 0 47px 0;
    background-color: #fbf9f7
}

.tempAboutCta .tempAboutDesc {
    letter-spacing: .19em;
    margin-top: 16px
}

.tempAboutCta .tempAboutDescText+.tempAboutCta .tempAboutDescText {
    margin-top: 29px
}

.tempAboutCtaWrap {
    display: flex;
    flex-direction: column;
    gap: 29px
}

.tempAboutCtaTitle {
    font-size: clamp(1.125rem,1vw + 1vh,1.25rem)
}

.tempAboutCtaContainer {
    margin: 0 auto;
    margin-top: 9px;
    display: flex;
    flex-direction: column;
    gap: 16px;
    align-items: center
}

.tempAboutCtaLink {
    width: 250px;
    height: 50px;
    font-size: .875rem;
    line-height: 1.92;
    letter-spacing: .1em;
    font-family: "Zen Kaku Gothic New",sans-serif
}

.tempAboutCtaImage img {
    width: 100%
}

.tempAccessTitle {
    font-family: "Shippori Mincho",serif;
    font-size: clamp(1rem,1vw + 1vh,1.5rem);
    font-weight: 400;
    line-height: 36px;
    letter-spacing: .1em;
    text-align: center;
    padding-bottom: 15px;
    border-bottom: 1px solid #af8858
}

.tempAccessImage {
    margin-top: 21px
}

.tempAccessText {
    position: relative;
    font-size: clamp(.75rem,1vw + 1vh,.875rem);
    font-weight: 400;
    line-height: 27px;
    letter-spacing: .1em
}

.tempAccessText::before {
    position: absolute;
    content: "・";
    width: 1rem;
    height: 1rem;
    top: 0;
    left: -1rem
}

.tempAccessText.trainText {
    padding-left: 1rem
}

.tempAccessText.trainText::before {
    left: 0
}

.tempAccessIntro {
    padding: 50px 0;
    font-family: "Shippori Mincho",serif
}

.tempAccessIntroTitle {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    font-size: .875rem;
    font-weight: 400;
    line-height: 26px;
    letter-spacing: .1em;
    text-align: center
}

.tempAccessIntroBody {
    margin-top: 34px
}

.tempAccessIntroFrame {
    --n: 10.5
}

.tempAccessIntroFrame.frame {
    --d: 13.9
}

.tempAccessIntroData {
    margin-top: 10px
}

.tempAccessIntroData>*+* {
    border-top: 1px solid #d1d1d1;
    padding-top: 20px
}

.tempAccessIntroDataItem {
    padding-bottom: 20px;
    display: flex
}

.tempAccessIntroDataTitle {
    font-size: clamp(.75rem,1vw + 1vh,.875rem);
    font-weight: 400;
    line-height: 22px;
    letter-spacing: .1em;
    flex-basis: 30%
}

.tempAccessIntroDataContent {
    font-style: normal;
    flex-basis: 70%
}

.tempAccessIntroDataContent>*+* {
    margin-top: 12px
}

.tempAccessIntroDataText {
    font-size: clamp(.75rem,1vw + 1vh,.875rem);
    font-weight: 400;
    line-height: 22px;
    letter-spacing: .1em
}

.tempAccessIntroDataButton {
    width: 150px;
    height: 25px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid #333;
    font-size: clamp(.625rem,1vw + 1vh,.75rem);
    font-weight: 400;
    line-height: 21px;
    letter-spacing: .1em;
    text-align: center
}

.tempAccessCar {
    font-family: "Shippori Mincho",serif;
    padding: 46px 0 75px;
    background-color: #f6f4f1
}

.tempAccessCarHead .tempAccessTitle {
    padding-bottom: 6px
}

.tempAccessCarBody {
    display: flex;
    flex-direction: column;
    gap: 21px;
    align-items: center
}

.tempAccessTrain {
    padding-top: 44px
}

.tempAccessTrainHead .tempAccessTitle {
    padding-bottom: 7px
}

.tempAccessTrainContent {
    margin-top: 29px;
    font-family: "Shippori Mincho",serif
}

.tempAccessTrainContentTitle {
    font-size: clamp(.875rem,1vw + 1vh,1rem);
    font-weight: 400;
    line-height: 24px;
    letter-spacing: .1em
}

.tempAccessTrainContentNote {
    font-size: clamp(.625rem,1vw + 1vh,.6875rem);
    font-weight: 400;
    line-height: 32px;
    letter-spacing: .1em
}

.tempCalendarTabWap {
    margin-top: 45px
}

.tempCalendarTabFx {
    gap: 1%
}

.tempCalendarTabFx>* {
    flex: 1 0 49.5%
}

.btnTempCalendarTab {
    font-size: clamp(.875rem,1vw + 1vh,1rem);
    font-weight: 400;
    line-height: 2.57;
    letter-spacing: .1em;
    padding: 7px 0
}

.tempCalendarMainCntWrap {
    padding: 26px 0 46px 0;
    margin: 0 auto;
    width: clamp(330px,(100vw - 375px)*.7370892019 + 315px,1100px)
}

.tempCalendarMainSelectYM {
    align-items: center
}

.selectTempCalendarMainSelect {
    position: relative;
    font-family: "Shippori Mincho",serif
}

.selectTempCalendarMainSelect:first-child::before {
    content: "";
    width: 9px;
    height: 5px;
    background-image: url(../img/images/selectArrow.png);
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat;
    position: absolute;
    top: 50%;
    right: 13px;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    pointer-events: none
}

.chiceFairCalendar {
    width: 150px;
    font-family: "Shippori Mincho",serif;
    letter-spacing: .1em;
    background-color: #fff;
    color: #333;
    padding: 6px 13px 6px 10px;
    line-height: 1.2;
    font-size: clamp(.8125rem,1vw + 1vh,1rem);
    border: 1px solid #d1d1d1
}

.nextFiarCalendar {
    font-size: clamp(.75rem,1vw + 1vh,.875rem)
}

.tempCalendarMainIn .calendarSp {
    font-family: "Shippori Mincho",serif;
    width: 100%;
    margin-top: 18px
}

.tempCalendarMainIn .calendarSp tr {
    display: flex
}

.tempCalendarMainIn .calendarSp tr>* {
    flex: 1 0 13.2857%;
    display: flex;
    align-items: center;
    justify-content: center
}

.tempCalendarMainIn .calendarSp tr+tr {
    margin-top: 3%
}

.tempCalendarMainIn .calendarSp th {
    font-size: .875rem;
    padding: 8px 0
}

.tempCalendarMainIn .calendarSp th.sat {
    color: #1888ab
}

.tempCalendarMainIn .calendarSp th.sun {
    color: #b90000
}

.tempCalendarMainIn .calendarSp .dates .fiarCalendarLinkSp {
    border-radius: 50%;
    width: 37px;
    height: 37px
}

.tempCalendarMainIn .calendarSp .dates .fiarCalendarLinkNoneSp {
    border-radius: 50%;
    width: 37px;
    height: 37px;
    background-color: #d1d1d1
}

.tempCalendarMainIn .calendarPc {
    width: 100%;
    margin-top: 10px;
    border-bottom: 1px solid #d1d1d1
}

.tempCalendarMainIn .calendarPc tr {
    display: flex;
    background-color: #fff;
    border-top: 1px solid #d1d1d1
}

.tempCalendarMainIn .calendarPc tr>* {
    padding: 0 13px 6px;
    flex: 1 0 13.2857%;
    display: flex;
    flex-direction: column;
    border-left: 1px solid #d1d1d1
}

.tempCalendarMainIn .calendarPc .fiarCalendarDateTd {
    font-family: "Shippori Mincho",serif;
    font-size: .875rem;
    font-weight: 400;
    line-height: 32px;
    letter-spacing: .1em
}

.tempCalendarMainIn .calendarPc .fiarCalendarTxtFairDateTitle {
    font-size: .75rem;
    font-weight: 400;
    line-height: 17px
}

.tempCalendarMainIn .calendarPc .fiarCalendarFairEventCountMore {
    font-size: .625rem;
    font-weight: 400;
    line-height: 14px
}

.tempCalendarMainIn .calendarPc th {
    font-family: "Shippori Mincho",serif;
    font-size: .875rem;
    font-weight: 400;
    line-height: 32px;
    letter-spacing: .1em;
    text-align: center
}

.tempCalendarMainIn .calendarPc th.sat {
    color: #1888ab
}

.tempCalendarMainIn .calendarPc th.sun {
    color: #b90000
}

.conditionsFairSingleLoop {
    gap: 5px;
    order: 2
}

.liconditionsFairSingleLoop {
    padding: 2px 6px;
    border-radius: 7px;
    font-size: .75rem;
    letter-spacing: .05em;
    line-height: 1.41
}

.tempCalendardateLoopCnt {
    padding-top: 24px;
    padding-bottom: 45px
}

.tempCalendardateLoopCntMain {
    margin-top: 10px
}

.tempCalendardateLoopCntMain>*+* {
    margin-top: 20px
}

.tempCalendardateLoopCntLxn {
    margin: 0 auto;
    width: clamp(329px,(100vw - 375px)*.723943662 + 329px,1100px)
}

.txtTempCalendardateLoop {
    font-size: clamp(.6875rem,1vw + 1vh,.875rem);
    letter-spacing: .1em;
    line-height: 2.2
}

.h2TempCalendardateLoopCntMain {
    padding: 2px 14px;
    padding-left: 14px;
    font-size: clamp(1.125rem,1vw + 1vh,1.5rem);
    letter-spacing: .1em;
    line-height: 1.4
}

.inDetailTempCalendardateLoopCntMainFx {
    padding: 26px 0 15px 0;
    border-bottom: 1px solid #d1d1d1
}

.iconDetailTempCalendardateLoopCntMain {
    position: absolute;
    top: -8px;
    left: -8px;
    z-index: 1
}

.thumbsDetailTempCalendardateLoopCntMain {
    position: relative;
    max-width: 240px;
    width: 100%;
    margin: 0 auto;
    aspect-ratio: 240/240
}

.thumbsDetailTempCalendardateLoopCntMain>img {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    top: 0;
    margin: auto;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

.secDetailTempCalendardateLoopCntMain {
    padding: 15px 14px 26px 14px
}

.h3DetailTempCalendardateLoopCntMain {
    font-size: clamp(.75rem,1vw + 1vh,1rem);
    line-height: 1.41;
    letter-spacing: .1em
}

.h4DetailTempCalendardateLoopCntMain {
    margin-top: 8px;
    font-size: clamp(1.125rem,1vw + 1vh,1.5rem);
    line-height: 1.61;
    letter-spacing: .1em;
    text-align: justify
}

.txtTitleDetailTempCalendardateLoopCntMain {
    margin-top: 8px;
    font-size: clamp(.75rem,1vw + 1vh,.875rem);
    line-height: 1.58;
    letter-spacing: .1em;
    text-align: justify
}

.conditionsFairLoop {
    margin-top: 10px;
    gap: 5px;
    order: 2
}

.liConditionsFairLoop {
    padding: 2px 6px;
    border-radius: 7px;
    font-size: .75rem;
    letter-spacing: .05em;
    line-height: 1.41
}

.viewMoreBookingFairLoop {
    margin-top: 20px;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 10px
}

.viewMoreBookingFairLoop>* {
    width: 240px
}

.btnViewMoreFairLoop {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: .8125rem;
    line-height: 1.375;
    text-align: center;
    letter-spacing: .1em;
    height: 40px;
    background-color: #fff;
    color: #af8858;
    border: 1px solid #af8858;
    font-weight: 500
}

.btnViewMoreFairLoop::after {
    position: absolute;
    content: "";
    top: 50%;
    right: 24px;
    width: 13px;
    height: 4px;
    background-image: url(../img/images/viewMoreFairLoopArrow.png);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%)
}

.btnBookingFairLoop {
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: .8125rem;
    line-height: 1.375;
    text-align: center;
    letter-spacing: .1em;
    height: 40px;
    font-weight: 400
}

.tempCalendardateLoopButton {
    margin-top: 30px
}

.tempCalendardateLink {
    position: relative;
    font-family: "Zen Kaku Gothic New",sans-serif;
    font-weight: 500;
    font-size: .75rem;
    line-height: 1.41;
    letter-spacing: .1em;
    width: 260px
}

.tempCalendardateLink::before {
    position: absolute;
    content: "";
    top: 50%;
    left: -14px;
    width: 30px;
    height: 5px;
    background-image: url(../img/images/viewBackFairLoopArrow.png);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%)
}

.archiveFaq {
    padding: 30px 0 50px 0;
    background: #f5f5f5;
    font-family: "Shippori Mincho",serif
}

.archiveFaq[data-tab=true] {
    -webkit-animation-name: fadeIn;
    animation-name: fadeIn;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards;
    -webkit-animation-duration: 1s;
    animation-duration: 1s
}

.archiveFaqWrap {
    margin-bottom: 60px
}

@keyframes fadeIn {
    0% {
        opacity: 0
    }

    100% {
        opacity: 1
    }
}

.archiveFaqTab {
    display: flex;
    justify-content: space-between;
    gap: 3px
}

.archiveFaqTab>* {
    flex: 1 0 33%
}

.archiveFaqTabButton {
    font-family: "Shippori Mincho",serif;
    font-size: .75rem;
    font-weight: 400;
    line-height: 17px;
    letter-spacing: .1em;
    text-align: center;
    height: 60px;
    color: #fff;
    background-color: #d1d1d1
}

.archiveFaqTabButton[data-tab=true] {
    background-color: #b18a58
}

.archiveFaqHall {
    opacity: 0;
    visibility: hidden;
    display: none
}

.archiveFaqHall[data-tab=true] {
    display: block;
    opacity: 1;
    visibility: visible
}

.archiveFaqCostume {
    opacity: 0;
    visibility: hidden;
    display: none
}

.archiveFaqCostume[data-tab=true] {
    display: block;
    height: auto;
    opacity: 1;
    visibility: visible
}

.archiveFaqRestaurant {
    opacity: 0;
    visibility: hidden;
    display: none
}

.archiveFaqRestaurant[data-tab=true] {
    display: block;
    opacity: 1;
    visibility: visible
}

.archiveFaqTab {
    margin-top: 120px
}

.archiveFaqListTitle {
    font-size: clamp(1.0625rem,1vw + 1vh,1.25rem);
    font-weight: 400;
    line-height: 30px;
    letter-spacing: .1em;
    text-align: left
}

.archiveFaqList {
    margin-top: 27px
}

.archiveFaqList>*+* {
    margin-top: 40px
}

.archiveFaqAccordion {
    cursor: pointer
}

.archiveFaqAccordion .archiveFaqAccordionIcon {
    -webkit-transform: rotate(180deg);
    transform: rotate(180deg)
}

.archiveFaqAccordion .archiveFaqAccordionIcon::before {
    position: absolute;
    content: "";
    background-image: url(../img/images/faqAccArrow.png);
    width: 5px;
    height: 16px;
    background-size: contain;
    background-position: 0 2px;
    top: 50%;
    left: -59%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%)
}

.archiveFaqAccordion.is-open .archiveFaqAccordionIcon {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg)
}

.archiveFaqAccordion.is-open .archiveFaqAccordionIcon::before {
    position: absolute;
    content: "";
    background-image: url(../img/images/faqAccArrow.png);
    width: 5px;
    height: 16px;
    background-size: contain;
    background-position: 0 2px;
    top: 50%;
    left: 172%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%)
}

.archiveFaqAccordionTitle {
    position: relative;
    display: flex;
    width: 100%;
    padding: 14px;
    padding-top: 0;
    font-size: .875rem;
    font-size: clamp(.875rem,1vw + 1vh,1rem);
    letter-spacing: .1em;
    line-height: 1.92;
    padding-left: 27px;
    font-family: "Shippori Mincho",serif;
    justify-content: space-between;
    align-items: center;
    border-bottom: 1px solid #d1d1d1
}

.archiveFaqAccordionTitle::-webkit-details-marker {
    display: none
}

.archiveFaqAccordionTitle::before {
    position: absolute;
    top: 14px;
    left: 0;
    content: "";
    width: 16px;
    height: 23px;
    background-image: url(../img/images/Q.png);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%)
}

.archiveFaqAccordionIcon {
    position: relative;
    width: 16px;
    height: 16px;
    transition: all .3s cubic-bezier(0.37, 0, 0.63, 1)
}

.archiveFaqAccordionIcon::before {
    position: absolute;
    content: "";
    background-image: url(../img/images/faqAccArrow.png);
    width: 5px;
    height: 16px;
    background-size: contain;
    background-position: 0 2px;
    top: 50%;
    left: 172%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%)
}

.archiveFaqAccordionWrap {
    overflow: hidden
}

.archiveFaqAccordionInner {
    font-family: "Shippori Mincho",serif;
    position: relative;
    padding: 12px 0 0 27px
}

.archiveFaqAccordionInner::before {
    position: absolute;
    top: 12px;
    left: 0;
    content: "";
    width: 14px;
    height: 23px;
    background-image: url(../img/images/A.png);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat
}

.archiveFaqAccordionInner p {
    font-size: .75rem;
    font-weight: 400;
    line-height: 27px;
    letter-spacing: .08em
}

.singleFairTabFx {
    gap: 1%;
    flex-wrap: nowrap
}

.singleFairTabFx>* {
    flex: 1 0 33%
}

.btnsingleFairTab {
    height: 50px;
    font-size: clamp(.75rem,1vw + 1vh,1rem);
    font-weight: 400;
    letter-spacing: .1em;
    line-height: 3
}

.singleFairMainLxn {
    padding-top: 24px
}

.singleFairMainLxnWap {
    margin: 0 auto;
    width: clamp(301px,(100vw - 375px)*.7502347418 + 301px,1100px)
}

.thumbSingleFairMainLxnTop {
    width: 100%
}

.thumbSingleFairMainLxnTop img {
    width: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

.secSingleFairMainLxnTop {
    margin-top: 23px
}

.h2SingleFairMainLxnTop {
    margin-top: 8px;
    font-size: clamp(1.5rem,2vw + 2vh,1.875rem);
    line-height: 1.41;
    letter-spacing: .1em
}

.h3SingleFairMainLxnTop {
    margin-top: 8px;
    font-size: clamp(1.1875rem,1vw + 1vh,1.5rem);
    line-height: 1.73;
    letter-spacing: .1em;
    text-align: justify
}

.txtSingleFairMainLxnTop {
    margin-top: 8px;
    font-size: clamp(.75rem,1vw + 1vh,.875rem);
    line-height: 1.83;
    letter-spacing: .1em;
    text-align: justify
}

.txtSingleFairMainLxnTopTime {
    margin-top: 10px;
    font-size: clamp(.8125rem,1vw + 1vh,1rem);
    line-height: 2;
    letter-spacing: .1em
}

.txtSingleFairMainLxnTopTime+.txtSingleFairMainLxnTopTime {
    margin-top: 1px
}

.singleFairMainLxnTopFx .conditionsFairSingleLoop {
    margin-top: 20px;
    gap: 10px
}

.singleFairMainLxnTokuten {
    margin-top: 37px
}

.singleFairTokuten {
    position: relative;
    border: 1px solid #b18a58;
    padding: 18px 18px 22px 26px;
    margin-right: auto;
    width: clamp(294px,(100vw - 375px)*.7492957746 + 294px,1092px)
}

.singleFairTokuten::before {
    position: absolute;
    content: "";
    pointer-events: none;
    background-color: rgba(0,0,0,0);
    border-right: 1px solid #b18a58;
    border-bottom: 1px solid #b18a58;
    width: 100%;
    height: 100%;
    top: 7px;
    left: 7px
}

.h3SingleFairTokuten {
    font-size: clamp(1rem,1vw + 1vh,1.25rem);
    line-height: 2;
    letter-spacing: .1em
}

.txtSingleFairTokuten {
    font-size: clamp(.6875rem,1vw + 1vh,.875rem);
    line-height: 1.9;
    letter-spacing: .1em;
    text-align: justify
}

.tableSingleFairWap {
    margin-top: 51px;
    border-top: 1px solid #d9d9d9;
    border-bottom: 1px solid #d9d9d9
}

.tableSingleFairWap .tableSingleFair {
    width: 100%;
    font-size: clamp(.75rem,1vw + 1vh,.875rem);
    letter-spacing: .1em;
    line-height: 2.2;
    display: table
}

.tableSingleFairWap tbody {
    display: table-row-group;
    height: 100%
}

.tableSingleFairWap th {
    display: table-cell;
    height: 100%;
    vertical-align: middle;
    text-align: left
}

.tableSingleFairWap td {
    display: table-cell;
    height: 100%;
    vertical-align: middle
}

.tableSingleFairWap tr {
    height: 100%;
    display: flex;
    flex-direction: column
}

.tableSingleFairWap tr>* {
    width: 100%;
    padding: 6px 10px
}

.secSingleFairGenre {
    margin-top: 37px
}

.h3SingleFairGenre {
    font-size: clamp(.75rem,1vw + 1vh,1rem);
    line-height: 2;
    letter-spacing: .1em
}

.singleFairGenreFx {
    margin-top: 21px;
    gap: 10px
}

.singleFairGenreFx>* {
    flex-grow: 1
}

.singleFairGenreFxLxn {
    padding: 8px;
    width: 100%
}

.photoSingleFairGenreFxLxn {
    flex-wrap: nowrap;
    gap: clamp(8px,1vw + 1vh,12px)
}

.photoSingleFairGenre {
    width: clamp(96px,(100vw - 375px)*.1258215962 + 96px,230px)
}

.photoSingleFairGenre img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center;
    object-position: center
}

.photoSingleFairGenreFxWap {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center;
    width: calc(100% - clamp(96px,(100vw - 375px)*.1258215962 + 96px,230px))
}

.h3SingleFairGenreFx {
    font-size: clamp(.875rem,1vw + 1vh,1.5rem);
    line-height: 1.71;
    letter-spacing: .1em
}

.txtSingleFairGenreFx {
    font-size: clamp(.625rem,1vw + 1vh,.75rem);
    line-height: 1.4
}

.icnSingleFairGenreFx {
    position: absolute;
    top: 0;
    right: 0
}

.icnSingleFairGenreFxMain {
    padding: 1px 6px;
    font-size: clamp(.625rem,1vw + 1vh,.875rem);
    line-height: 1.4;
    letter-spacing: .1em
}

.singleFairBooking {
    width: 240px;
    margin: 0 auto;
    margin-top: 58px
}

.otherSingleFairDate {
    margin-top: 65px;
    border-top: 1px solid #d9d9d9;
    padding: 33px 0 45px 0
}

.otherSingleFairDateWrap {
    margin: 0 auto;
    width: clamp(326px,(100vw - 375px)*.7267605634 + 326px,1100px)
}

.titleOtherSingleFairDate {
    position: relative
}

.icnTitleOtherSingleFairDate {
    position: absolute;
    top: 50%;
    right: 15%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%)
}

.h3TitleOtherSingleFairDate {
    font-size: clamp(.75rem,1vw + 1vh,.875rem);
    line-height: 2.2;
    letter-spacing: .1em;
    font-weight: 400
}

.otherSingleFairDateFxGrid {
    --minimum: 360px;
    margin-top: 37px;
    gap: 6px
}

.otherSingleFairDateBox {
    padding: 8px 15px 12px 11px
}

.otherSingleFairDateFx {
    align-items: center
}

.h3OtherSingleFairDate {
    font-size: clamp(1.625rem,2vw + 2vh,1.875rem);
    line-height: 1.53;
    letter-spacing: .1em;
    font-weight: 400
}

.btnOtherSingleFairDate {
    padding: 4px 4px 2px 4px;
    font-size: clamp(.75rem,1vw + 1vh,.875rem);
    line-height: 1.41;
    letter-spacing: .1em;
    font-weight: 400;
    border-bottom: 1px solid #b18a58
}

.planNaviWap {
    margin-top: 23px
}

.secPlanNavi {
    margin: 0 auto;
    width: clamp(329px,(100vw - 375px)*.8178403756 + 329px,1200px);
    border: 1px solid #d1d1d1;
    padding: 13px 14px 23px 14px
}

.h2PlanNavi {
    font-size: clamp(.75rem,1vw + 1vh,.875rem);
    letter-spacing: .1em;
    line-height: 2.66
}

.ulBtnPlanNavis {
    flex-wrap: wrap;
    row-gap: 8px;
    -webkit-column-gap: 10px;
    -moz-column-gap: 10px;
    column-gap: 10px;
    margin-top: 10px
}

.liBtnPlanNavis {
    font-family: "Zen Kaku Gothic New",sans-serif;
    font-weight: 400;
    line-height: 1.4;
    letter-spacing: .05em;
    font-size: .625rem;
    padding: 2px 5px
}

.liBtnPlanNavis.on {
    background-color: #b18a58;
    color: #fff;
    border-radius: 7px
}

.liBtnPlanNavis:last-child {
    margin-left: auto
}

.planAllCnt {
    margin: 0 auto;
    margin-top: 20px;
    width: clamp(329px,(100vw - 375px)*.8178403756 + 329px,1200px)
}

.txtPlanAllCnt {
    font-size: clamp(.625rem,1vw + 1vh,.75rem);
    line-height: 1.4;
    letter-spacing: .1em;
    font-weight: 400;
    text-align: right
}

.planAllLoopWap {
    padding-bottom: 89px;
    margin: 0 auto;
    width: clamp(329px,(100vw - 375px)*.8178403756 + 329px,1200px)
}

.planAllLoop {
    position: relative;
    padding: 14px;
    padding-bottom: 89px
}

.planAllLoopTopFx {
    flex-direction: column;
    gap: 23px
}

.planAllLoopBigWap {
    margin-top: 10px
}

.planAllLoopBigWap>*+* {
    margin-top: 73px
}

.thumbsPlanAllLoopTopFx {
    position: relative;
    overflow: hidden;
    aspect-ratio: 301/301;
    max-width: 301px;
    width: 100%
}

.thumbsPlanAllLoopTopFx img {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    top: 0;
    margin: auto;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

.mainPlanAllLoopTopFx>*+* {
    margin-top: 16px
}

.ulPlanAllLoopTopFx {
    flex-wrap: wrap;
    row-gap: 8px;
    -webkit-column-gap: 10px;
    -moz-column-gap: 10px;
    column-gap: 10px
}

.liPlanAllLoopTopFx {
    font-family: "Zen Kaku Gothic New",sans-serif;
    font-weight: 400;
    line-height: 1.4;
    letter-spacing: .05em;
    font-size: .625rem;
    padding: 2px 5px;
    background-color: #b18a58;
    color: #fff;
    border-radius: 7px
}

.pricesMainPlanAllLoopTop {
    margin-top: 10px
}

.h2MainPlanAllLoopTop {
    font-size: clamp(1.1875rem,1vw + 1vh,1.5rem);
    line-height: 1.52;
    letter-spacing: .1em;
    text-align: justify
}

.pricePlanAllLoopTop,.priceIntAllLoopTop {
    font-size: clamp(1.4375rem,2vw + 2vh,1.75rem);
    letter-spacing: .1em
}

.priceYenPlanAllLoopTop {
    font-size: clamp(.9375rem,1vw + 1vh,1.0625rem);
    letter-spacing: .1em
}

.priceMeiPlanAllLoopTop {
    font-size: clamp(.9375rem,1vw + 1vh,1.0625rem);
    letter-spacing: .1em
}

.pricesMainPlanAllLoopTopTyusyaku {
    margin-top: 10px
}

.tyusyakuPlanAllLoopTop {
    font-size: .75rem;
    letter-spacing: .05em
}

.tyusyakuYenPlanAllLoopTop {
    font-size: .625rem;
    letter-spacing: .05em
}

.tokutenPlanLoop {
    margin-top: 26px;
    margin-right: -2px
}

.tokutenPlanLoopLxn {
    width: calc(100% - 8px);
    position: relative;
    padding: 10px 12px 13px 12px;
    border: 1px solid #b18a58;
    gap: 13px;
    align-items: center
}

.tokutenPlanLoopLxn::before {
    position: absolute;
    content: "";
    background-color: rgba(0,0,0,0);
    border-right: 1px solid #b18a58;
    border-bottom: 1px solid #b18a58;
    width: 100%;
    height: 100%;
    top: 7px;
    left: 7px;
    pointer-events: none
}

.h3TokutenPlanLoop {
    font-size: clamp(.8125rem,1vw + 1vh,1rem);
    line-height: 2;
    letter-spacing: .1em;
    width: clamp(28px,(100vw - 375px)*.0093896714 + 38px,38px)
}

.txtTokutenPlanLoop {
    font-size: clamp(.6875rem,1vw + 1vh,.75rem);
    line-height: 1.8;
    letter-spacing: .1em;
    text-align: justify;
    width: calc(100% - clamp(28px,(100vw - 375px)*.0056338028 + 34px,34px))
}

.tableTokutenPlanLoop {
    margin-top: 33px;
    font-size: clamp(.6875rem,1vw + 1vh,.875rem);
    line-height: 1.5;
    letter-spacing: .05em;
    border-left: 1px solid #b18a58
}

.tableTokutenPlanLoop tr {
    display: flex;
    gap: 16px;
    width: 100%;
    padding-left: 15px
}

.tableTokutenPlanLoop tr th {
    width: clamp(48px,(100vw - 375px)*.0056338028 + 48px,54px);
    white-space: nowrap
}

.tableTokutenPlanLoop tr td {
    width: calc(100% - clamp(48px,(100vw - 375px)*.0056338028 + 48px,54px))
}

.tableTokutenPlanLoop tr+tr {
    margin-top: 8px
}

.openPlanAllLoop {
    margin-top: 25px;
    display: none
}

.secPlanLoopMain>*+* {
    margin-top: 12px
}

.h2PlanLoopMain {
    font-size: clamp(.875rem,1vw + 1vh,1rem);
    line-height: 1.7;
    letter-spacing: .1em;
    text-align: justify
}

.txtPlanLoopMain {
    font-size: clamp(.75rem,1vw + 1vh,.875rem);
    line-height: 1.8;
    letter-spacing: .1em;
    text-align: justify
}

.h2TablePlanDetailCnt {
    font-size: clamp(.75rem,1vw + 1vh,1rem);
    line-height: 1.41;
    letter-spacing: .1em;
    text-align: center
}

.tablePlanDetailCnt {
    margin-top: 55px
}

.tablePlanDetailCnt .tablePlanDetail {
    width: 100%;
    font-size: clamp(.75rem,1vw + 1vh,.875rem);
    letter-spacing: .1em;
    line-height: 2.1
}

.tablePlanDetailCnt table {
    margin-top: 17px;
    border-top: 1px solid #d9d9d9;
    border-bottom: 1px solid #d9d9d9
}

.tablePlanDetailCnt th {
    text-align: center
}

.tablePlanDetailCnt td {
    text-align: center;
    line-height: 2
}

.tablePlanDetailCnt tr {
    display: flex;
    flex-direction: column
}

.tablePlanDetailCnt tr>* {
    width: 100%;
    padding: 6px 10px;
    line-height: 1.95
}

.readMorePlan {
    margin-top: 27px
}

.h2ReadMorePlan {
    font-size: clamp(.75rem,1vw + 1vh,1rem);
    line-height: 1.9;
    letter-spacing: .1em
}

.txtReadMorePlan {
    margin-top: 9px;
    font-size: clamp(.625rem,1vw + 1vh,.75rem);
    line-height: 2.1;
    letter-spacing: .1em
}

.telReadMorePlan {
    margin-top: 13px
}

.btnTelReadMorePlan {
    font-size: clamp(1.5625rem,2vw + 2vh,1.875rem);
    line-height: 1.12;
    letter-spacing: .1em;
    font-family: "EB Garamond",serif
}

.ulReadMorePlan {
    margin-top: 28px;
    gap: 15px;
    justify-content: center
}

.ulReadMorePlan>* {
    width: 240px
}

.btnReadMorePlan {
    font-size: .875rem;
    line-height: 2.2;
    letter-spacing: .1em;
    padding: 6px 0 7px 0;
    height: 45px
}

.btnReadMorePlanContact {
    border: 1px solid #b18a58
}

.btnPlanAllLoopLxn {
    position: absolute;
    bottom: -35px;
    left: 50%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 3px;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%)
}

.h4BtnPlanAllLoopLxn {
    font-size: .75rem;
    line-height: 1.75;
    letter-spacing: .1em
}

.btnPlanAllLoopLxn .h4BtnPlanAllLoopLxn.off {
    display: none
}

.btnPlanAllLoopLxn.off .h4BtnPlanAllLoopLxn.off {
    display: block
}

.btnPlanAllLoopLxn.off .h4BtnPlanAllLoopLxn.on {
    display: none
}

.btnPlanAllLoopLxn.off .iconBtnPlanAllLoopLxn {
    -webkit-transform: rotate(180deg);
    transform: rotate(180deg)
}

.btnPlanAllLoopLxn.on .h4BtnPlanAllLoopLxn.off {
    display: none
}

.btnPlanAllLoopLxn.on .h4BtnPlanAllLoopLxn.on {
    display: block
}

.btnPlanAllLoopLxn.on .iconBtnPlanAllLoopLxn {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg)
}

.iconBtnPlanAllLoopLxn {
    transition: -webkit-transform .3s ease-in-out;
    transition: transform .3s ease-in-out;
    transition: transform .3s ease-in-out, -webkit-transform .3s ease-in-out
}

.pageWeddingFood {
    font-family: "Shippori Mincho",serif
}

.tempFoodTitle {
    display: inline-flex;
    flex-direction: column;
    font-size: clamp(1.125rem,2vw + 1vh,1.25rem);
    line-height: 2;
    font-weight: 400;
    letter-spacing: .1em
}

.tempFoodDesc {
    margin-top: 18px;
    font-size: clamp(.75rem,1vw + 1vh,.8125rem);
    line-height: 2.25;
    letter-spacing: .1em
}

.tempFoodDescText {
    display: block
}

.tempFoodDescText+.tempFoodDescText {
    margin-top: 29px
}

.tempFoodIntro {
    margin-top: 40px
}

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

.tempFoodIntroBody {
    margin: 0 calc(50% - 50vw);
    margin-top: 30px;
    display: flex;
    align-items: flex-end;
    gap: clamp(14px,(100vw - 375px)*.0129449838 + 14px,34px)
}

.tempFoodIntroImage--secondary {
    display: flex;
    flex-direction: column;
    gap: clamp(14px,(100vw - 375px)*.0129449838 + 14px,34px)
}

.tempFoodNav {
    padding-bottom: 50px
}

.tempFoodNav .commonPageNavList {
    row-gap: 26px
}

.tempFoodNav .commonPageNavListItem a {
    padding-top: 3px
}

.tempFoodIntroContainer .tempFoodTitle {
    font-size: clamp(1.25rem,2vw + 1vh,2rem);
    letter-spacing: .2em
}

.tempFoodIntroContainer .tempFoodDesc {
    margin-top: 30px;
    letter-spacing: .14em
}

.tempFoodMenu {
    padding: 100px 0 60px 0;
    background-color: #f6f4f1
}

.tempFoodMenuContents {
    display: flex;
    flex-direction: column
}

.tempFoodMenuContent {
    position: relative
}

.tempFoodMenuContent#Ja .tempFoodDesc {
    margin-top: 25px
}

.tempFoodMenuContent#Ch {
    margin-top: 106px
}

.tempFoodMenuContent#Ch .tempFoodDesc {
    margin-top: 23px
}

.tempFoodMenuContent#Ch .tempFoodMenuImage {
    margin-top: 50px
}

.tempFoodMenuContent#Ca {
    margin-top: 134px
}

.tempFoodMenuContent#Ca .tempFoodTitle {
    letter-spacing: .25em
}

.tempFoodMenuContent#Ca .tempFoodDesc {
    margin-top: 22px
}

.tempFoodMenuContent#Fr {
    margin-top: 131px
}

.tempFoodMenuContent#Fr .tempFoodDesc {
    margin-top: 25px
}

.tempFoodMenuContent#Fr::before {
    top: 29px
}

.tempFoodMenuContent::before {
    content: "";
    position: absolute;
    top: 50px;
    left: 0;
    width: clamp(338px,(100vw - 375px)*.696713615 + 338px,1080px);
    height: clamp(491px,(100vw - 375px)*.0460093897 + 491px,540px);
    background-color: #fff
}

.tempFoodMenuTitle {
    display: flex;
    flex-direction: column;
    gap: 4px;
    font-family: "Cormorant Garamond",serif;
    color: #937c64;
    font-weight: 400;
    letter-spacing: .2em;
    line-height: 1.28;
    font-size: clamp(2.1875rem,3vw + 2vh,3.125rem)
}

.tempFoodMenuTitleText {
    order: 0
}

.tempFoodMenuTitleText--sub {
    order: 1;
    font-family: "Shippori Mincho",serif;
    font-size: clamp(.875rem,1vw + 1vh,1rem);
    letter-spacing: .1em
}

.tempFoodMenuBody {
    margin-top: 25px
}

.tempFoodMenuText {
    width: clamp(270px,(100vw - 375px)*.103286385 + 270px,380px)
}

.tempFoodMenuDescText {
    font-family: "Zen Kaku Gothic New",sans-serif;
    font-weight: 400;
    letter-spacing: .05em;
    line-height: 1.8
}

.tempFoodMenuImage {
    margin-top: 36px;
    max-width: 650px;
    margin-right: calc(50% - 50vw)
}

.tempFoodMenuImage img {
    margin-left: auto;
    width: clamp(307px,(100vw - 375px)*.3220657277 + 307px,650px);
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

.tempFoodMenuSwiper {
    overflow: visible;
    position: relative
}

.tempFoodMenuSwiper .swiper-button-next,.tempFoodMenuSwiper .swiper-button-prev {
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    width: clamp(30px,2vw + 2vh,40px);
    height: clamp(30px,2vw + 2vh,40px);
    top: 57%
}

.tempFoodMenuSwiper .swiper-button-next::after,.tempFoodMenuSwiper .swiper-button-prev::after {
    content: ""
}

.tempFoodMenuSwiper .swiper-button-next {
    left: auto;
    right: -5%;
    background-image: url(../img/images/boxArrowR.png)
}

.tempFoodMenuSwiper .swiper-button-prev {
    left: -5%;
    right: auto;
    background-image: url(../img/images/boxArrowL.png)
}

.tempFoodMenuSwiper .swiper-pagination-bullets.swiper-pagination-horizontal {
    bottom: -12.5%
}

.tempFoodMenuSwiper .swiper-pagination-bullet {
    width: 7px;
    height: 7px;
    margin: 0 4px
}

.tempFoodMenuSwiper .swiper-pagination-bullet-active {
    background: #af8858
}

.tempFoodMenuSlider .swiper-slide {
    max-width: inherit;
    width: 100%
}

.tempFoodMenuSlider .swiper-slide img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

.tempFoodMenuArticleImage {
    width: 100%;
    height: clamp(199px,(100vw - 375px)*.2234741784 + 199px,437px)
}

.tempFoodMenuFoot {
    margin-top: 50px
}

.tempFoodMenuSpecial {
    margin-top: 53px
}

.tempFoodMenuSpecialHead {
    display: flex;
    flex-direction: column
}

.tempFoodMenuSpecialTitle {
    order: 1;
    display: flex;
    flex-direction: column;
    margin-top: 16px;
    font-size: clamp(1rem,1vw + 1vh,1.25rem);
    font-weight: 400;
    line-height: 2;
    letter-spacing: .1em;
    text-align: center
}

.tempFoodSpecialGallery {
    margin-top: 22px;
    --minimum: 130px;
    row-gap: 20px;
    -webkit-column-gap: 27px;
    -moz-column-gap: 27px;
    column-gap: 27px
}

.tempFoodSpecialItem {
    display: flex;
    flex-direction: column;
    gap: 11px
}

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

.tempFoodMenuSpecialDesc {
    margin-top: 8px;
    order: 2;
    font-family: "Zen Kaku Gothic New",sans-serif;
    font-weight: 400;
    letter-spacing: .14em;
    text-align: justify;
    line-height: 1.75;
    font-size: clamp(.75rem,1vw + 1vh,.8125rem)
}

.tempFoodMenuSpecialImage {
    display: flex;
    align-items: center;
    justify-content: center;
    order: 0
}

.tempFoodMenuSpecialImage img {
    width: 140px
}

.tempFoodSpecialItemText {
    order: 1;
    font-family: "Zen Kaku Gothic New",sans-serif;
    font-weight: 400;
    letter-spacing: .1em;
    line-height: 1.4;
    font-size: clamp(.625rem,1vw + 1vh,.75rem)
}

.tempFoodMenuSpecialItemImage {
    order: 0
}

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

.tempFoodMenuNote {
    border: 1px solid #979797;
    margin-top: 25px
}

.tempFoodMenuNoteText {
    font-family: "Zen Kaku Gothic New",sans-serif;
    font-size: clamp(.625rem,1vw + 1vh,.8125rem);
    line-height: 1.48;
    font-weight: 400;
    padding: 8px;
    padding-bottom: 4px;
    letter-spacing: .01em
}

.tempFoodBanner {
    margin-top: 60px
}

.tempFoodBannerBody {
    margin-top: 30px
}

.tempFoodBannerChef {
    background: #979797;
    padding: 15px;
    padding-bottom: 22px;
    display: flex;
    flex-direction: column;
    gap: 6px
}

.tempFoodBannerChefHead {
    order: 1;
    display: flex;
    flex-direction: column;
    color: #fff
}

.tempFoodBannerChefBody {
    order: 0
}

.tempFoodBannerChefTitle {
    margin-top: 5px;
    order: 1;
    font-size: clamp(1rem,1vw + 1vh,1.25rem);
    font-weight: 400;
    line-height: 2;
    letter-spacing: .1em
}

.tempFoodBannerChefText {
    margin-top: 13px;
    order: 2;
    font-size: clamp(12px,1vw + 1vh,13px);
    line-height: 1.8;
    letter-spacing: .07em;
    font-weight: 400
}

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

.tempFoodBannerChefDecoImage {
    order: 0;
    width: clamp(138px,(100vw - 375px)*.1342723005 + 138px,281px)
}

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

.tempFoodBannerCard {
    padding: 63px 15px 85px 16px;
    background-image: url(../img/images/tempFoodBanner02.png);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat
}

.tempFoodBannerCardWrap {
    display: flex;
    flex-direction: column;
    gap: 20px;
    color: #fff
}

.tempFoodBannerCardTitle {
    font-size: clamp(1.125rem,1vw + 1vh,1.5rem);
    line-height: 1.4;
    letter-spacing: .1em;
    font-weight: 400;
    white-space: nowrap
}

.tempFoodBannerCardBody {
    display: flex;
    flex-direction: column;
    gap: 20px
}

.tempFoodBannerCardText {
    font-size: clamp(.875rem,1vw + 1vh,1rem);
    line-height: 1.7;
    letter-spacing: .1em
}

.tempFoodBannerCardCta {
    display: flex;
    align-items: center;
    justify-content: flex-start
}

.tempFoodBannerCardCta .pageBridalLink {
    width: 198px;
    height: 40px;
    padding: 0
}

.frontPageCommonTitle {
    display: flex;
    flex-direction: column;
    gap: 25px
}

.frontPageCommonTitleText--sub {
    position: relative;
    order: 1;
    font-family: "Shippori Mincho",serif;
    font-size: clamp(.75rem,1vw + 1vh,1rem);
    font-weight: 400;
    line-height: 1.41;
    letter-spacing: .17em
}

.frontPageCommonTitleText--sub::before {
    position: absolute;
    top: -12px;
    left: 0;
    content: "";
    background-color: #af8858;
    width: 70px;
    height: 1px
}

.frontPageCommonTitleText {
    order: 0;
    font-family: "Cormorant Garamond",serif;
    font-size: clamp(1.875rem,3vw + 2vh,3.125rem);
    font-weight: 400;
    line-height: 1.1;
    letter-spacing: .3em;
    color: #333
}

.frontPageHero {
    position: relative
}

.frontPageHeroFrame {
    position: relative;
    height: 100%
}

.frontPageHeroFrame>* {
    width: 100%
}

.frontPageHeroVideoSp {
    display: block;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: bottom;
    object-position: bottom
}

.frontPageHeroVideoPc {
    display: none
}

.frontPageIntoWrap {
    padding: 93px 0 96px 0;
    background-image: url(../img/images/frontPageIntroBg.png);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat
}

.frontPageIntroTitle {
    font-family: "Shippori Mincho",serif;
    font-size: clamp(1.375rem,2vw + 2vh,2.25rem);
    font-weight: 400;
    line-height: 1.77;
    letter-spacing: .14em;
    text-align: center;
    white-space: nowrap
}

.frontPageIntroText {
    margin-top: 29px;
    font-family: "Shippori Mincho",serif;
    font-size: 12px;
    font-size: clamp(.75rem,1vw + 1vh,.8125rem);
    font-weight: 400;
    line-height: 2.25;
    letter-spacing: .05em;
    text-align: center
}

.frontPageIntroImageTitle {
    margin-top: 24px;
    display: flex;
    align-items: center;
    justify-content: center
}

.frontPageIntroImageTitle img {
    max-width: 234px
}

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

.frontPageIntroFoot {
    margin-top: 35px
}

.frontPageIntroLink {
    width: 260px;
    height: 47px;
    padding: 12px;
    margin-left: -15px
}

.frontPageIntroLink::after {
    transition: all .3s ease-in-out;
    right: -6%;
    top: 46%
}

.frontPageIntroLink:hover::after {
    right: -10%
}

.frontPageIntroLinkText {
    font-family: "Zen Kaku Gothic New",sans-serif;
    font-size: .75rem;
    font-weight: 500;
    line-height: 1.41;
    letter-spacing: .05em;
    text-align: center
}

.frontPageHeroCta {
    display: none;
    position: absolute;
    left: 0;
    bottom: 0
}

.frontPageHeroCtaButton {
    display: grid;
    width: 155px;
    height: 54px;
    place-items: center;
    background: #201e1b;
    color: #fff;
    font-family: "Shippori Mincho",serif;
    font-size: .8125rem;
    font-weight: 500;
    line-height: 18.82px;
    text-align: center
}

.frontPageCeremonyTitle {
    position: relative;
    display: flex;
    flex-direction: column;
    padding-bottom: 17px;
    gap: 2px;
    font-family: "Cormorant Garamond",serif;
    color: #937c64;
    font-weight: 400;
    letter-spacing: .2em;
    line-height: 1.12;
    font-size: clamp(1.5625rem,2vw + 2vh,2.5rem);
    border-bottom: 1px solid #937c64
}

.frontPageCeremonyTitleText {
    order: 0
}

.frontPageCeremonyTitleText--sub {
    margin-top: 4px;
    order: 1;
    font-family: "Shippori Mincho",serif;
    font-size: clamp(.875rem,1vw + 1vh,1rem);
    letter-spacing: .1em
}

.frontPageCeremony {
    margin-top: 83px
}

.frontPageCeremonyCommonTitle {
    text-align: center
}

.frontPageCeremonyCommonTitleText--sub::before {
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%)
}

.frontPageCeremonyText[class] {
    text-align: center
}

.frontPageCeremonyBody {
    margin-top: 45px
}

.frontPageCeremonyContentText {
    position: relative;
    padding: 40px 0 40px 0;
    margin: 0 auto
}

.frontPageCeremonyContentText::before {
    content: "";
    position: absolute;
    top: 0;
    left: 50%;
    width: 100vw;
    max-width: 778px;
    height: 100%;
    background-color: #f2eee6;
    -webkit-transform: translate(-50%, 0);
    transform: translate(-50%, 0)
}

.frontPageCeremonyContentImage {
    margin: 0 calc(50% - 50vw);
    position: relative;
    width: 100vw;
    max-width: 1142px
}

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

.frontPageCeremonyContentTitle {
    position: relative;
    margin-top: 13px;
    display: inline-flex;
    font-family: "Shippori Mincho",serif;
    flex-direction: column;
    font-size: clamp(.875rem,1vw + 1vh,1rem);
    line-height: 1.78;
    font-weight: 400;
    letter-spacing: .1em
}

.frontPageCeremonyDesc {
    position: relative;
    margin-top: 10px;
    font-size: clamp(.75rem,1vw + 1vh,.8125rem);
    line-height: 1.9;
    text-align: justify;
    font-weight: 400
}

.frontPageCeremonyContentButton {
    position: relative;
    margin-top: 30px
}

.frontPageCeremonyContentButton[data-item=chapel] {
    margin-top: 55px
}

.fronPageBanquetBridalBody {
    margin-top: 32px
}

.frontPageBanquetWrap {
    padding: 0;
    margin-top: 83px
}

.frontPageBanquetSwiper {
    overflow: visible;
    position: relative
}

.frontPageBanquetArticleText {
    margin-top: 24px
}

.frontPageBanquetArticleT {
    font-family: "Cormorant Garamond",serif;
    font-size: clamp(1.5625rem,2vw + 2vh,1.875rem);
    font-weight: 400;
    line-height: 1.12;
    letter-spacing: .1em;
    text-align: center
}

.frontPageBanquetArticleDesc {
    width: 90%;
    margin: 10px auto 0;
    font-family: "Shippori Mincho",serif;
    font-size: clamp(.6875rem,1vw + 1vh,1rem);
    font-weight: 400;
    line-height: 2.09;
    text-align: center
}

.frontPageBanquetSwiper .swiper-button-disabled {
    opacity: 1 !important;
    cursor: pointer !important;
    pointer-events: auto !important
}

.frontPageBanquetSwiper .swiper-button-lock {
    display: block
}

.frontPageBanquetSwiper .swiper-button-next,.frontPageBanquetSwiper .swiper-button-prev {
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    width: clamp(28px,2vw + 2vh,40px);
    height: clamp(28px,2vw + 2vh,40px);
    top: 37%
}

.frontPageBanquetSwiper .swiper-button-next::after,.frontPageBanquetSwiper .swiper-button-prev::after {
    content: ""
}

.frontPageBanquetSwiper .swiper-button-next {
    left: auto;
    right: -10%;
    background-image: url(../img/images/frontPageBanquetArrowR.png)
}

.frontPageBanquetSwiper .swiper-button-prev {
    left: -10%;
    right: auto;
    background-image: url(../img/images/frontPageBanquetArrowL.png)
}

.frontPageBanquetSwiper .swiper-pagination-bullets.swiper-pagination-horizontal {
    bottom: -9%
}

.frontPageBanquetSwiper .swiper-pagination-bullet-active {
    background: #af8858
}

.frontPageBanquetSwiper .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
    margin: 0 6px
}

.frontPageBanquetSlider .swiper-slide {
    max-width: inherit;
    width: 100%
}

.frontPageBanquetSlider .swiper-slide img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    transition: all .3s ease-in-out
}

.frontPageBanquetSlider .swiper-slide img:hover {
    -webkit-transform: scale(1.05);
    transform: scale(1.05)
}

.frontPageBanquetSlider .swiper-slide img:active {
    -webkit-transform: scale(1.1);
    transform: scale(1.1)
}

.frontPageBanquetArticleImage {
    width: 100%;
    height: clamp(277px,(100vw - 375px)*.2920187793 + 277px,588px);
    overflow: hidden
}

.frontPageBanquetFoot {
    margin-top: 73px
}

.frontPagePlanWrap {
    padding-top: 84px;
    padding-bottom: 0
}

.frontPagePlanArticleTitle {
    letter-spacing: .1em
}

.frontPagePlanText {
    margin-top: 24px;
    font-family: "Shippori Mincho",serif;
    font-size: clamp(1rem,1vw + 1vh,1.25rem);
    font-weight: 400;
    line-height: 1.8;
    letter-spacing: .1em;
    text-align: justify
}

.frontPagePlanArticleText {
    order: 2;
    padding-top: 9px;
    border-top: 1px solid #6a6a6a;
    font-family: "Shippori Mincho",serif;
    font-size: .875rem;
    font-weight: 600;
    line-height: 1.42;
    letter-spacing: .05em;
    text-align: center
}

.frontPagePlanArticleTextLine {
    font-family: "Shippori Mincho",serif;
    font-size: clamp(1.625rem,2vw + 2vh,1.75rem);
    font-weight: 600;
    line-height: 1.46;
    letter-spacing: .05em
}

.frontPagePlanArticleTextSmall {
    display: block;
    font-family: "Zen Kaku Gothic New",sans-serif;
    font-size: clamp(.875rem,1vw + 1vh,1rem);
    font-weight: 400;
    line-height: 1.42;
    letter-spacing: .1em
}

.frontPagePlanSlider .swiper-button-disabled {
    opacity: 1 !important;
    cursor: pointer !important;
    pointer-events: auto !important
}

.frontPagePlanSlider .swiper-button-next,.frontPagePlanSlider .swiper-button-prev {
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    width: 10px;
    height: 26px;
    top: 55%
}

.frontPagePlanSlider .swiper-button-next::after,.frontPagePlanSlider .swiper-button-prev::after {
    content: ""
}

.frontPagePlanSlider .swiper-button-next {
    right: auto;
    left: -8%;
    background-image: url(../img/images/swiperArrowL.png)
}

.frontPagePlanSlider .swiper-button-prev {
    right: -8%;
    left: auto;
    background-image: url(../img/images/swiperArrowR.png)
}

.frontPagePlanSlider .swiper-pagination-bullets.swiper-pagination-horizontal {
    bottom: -6%
}

.frontPagePlanSlider .swiper-pagination-bullet[class] {
    margin: 0 5.5px
}

.frontPagePlanSlider .swiper-pagination-bullet-active {
    background: #af8858
}

.frontPagePlanSlider .pageBridalArticleThumb {
    position: relative;
    overflow: hidden;
    aspect-ratio: 224/224;
    width: 100%
}

.frontPagePlanSlider .pageBridalArticleThumb img {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    top: 0;
    margin: auto;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

.frontPagePlanSlider .pageBridalArticleBody {
    width: 100%
}

.frontPagePlanConList {
    margin-top: 10px;
    order: 3;
    gap: 7px
}

.frontPagePlanFoot {
    margin-top: 43px
}

.frontPageBridal {
    margin-top: 90px;
    background-image: url(../img/images/frontPageBridalBg.png);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat
}

.frontPageBridalWrap {
    padding-top: 84px;
    padding-bottom: 90px
}

.frontPageBridalArticleText {
    order: 2;
    font-family: "Zen Kaku Gothic New",sans-serif;
    font-size: .75rem;
    font-weight: 400;
    line-height: 1.5;
    text-align: justify
}

.frontPageBridalArticleConditionsList {
    order: 3
}

.frontPageBridalArticleConditions {
    font-size: clamp(.625rem,1vw + 1vh,.75rem)
}

.frontPageBridalFoot {
    margin-top: 35px
}

.frontPageBridalLink {
    width: 260px
}

.frontPageBridalSlider .pageBridalArticleThumb {
    position: relative;
    overflow: hidden;
    aspect-ratio: 224/224
}

.frontPageBridalSlider .pageBridalArticleThumb img {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    top: 0;
    margin: auto;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

.frontPageBridalSlider .swiper-button-next,.frontPageBridalSlider .swiper-button-prev {
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    width: 10px;
    height: 26px;
    top: 44%
}

.frontPageBridalSlider .swiper-button-next::after,.frontPageBridalSlider .swiper-button-prev::after {
    content: ""
}

.frontPageBridalSlider .swiper-button-next {
    right: auto;
    left: -8%;
    background-image: url(../img/images/swiperArrowL.png)
}

.frontPageBridalSlider .swiper-button-prev {
    right: -8%;
    left: auto;
    background-image: url(../img/images/swiperArrowR.png)
}

.frontPageBridalSlider .pageBridalArticleTime {
    font-size: clamp(1.25rem,2vw + 2vh,1.75rem)
}

.frontPageBridalSlider .pageBridalArticleTitle {
    font-size: clamp(.875rem,1vw + 1vh,1rem)
}

.frontPageWedding .frontPageCommonTitleText {
    color: #fff
}

.frontPageWeddingItem {
    position: relative;
    overflow: hidden;
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    height: clamp(170px,(100vw - 375px)*.2497652582 + 170px,436px)
}

.frontPageWeddingItem[data-item=dress]::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    background-image: url(../img/images/frontPageWedding01.png);
    transition: all .3s ease-in-out
}

.frontPageWeddingItem[data-item=cuisine]::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    background-image: url(../img/images/frontPageWedding02.png);
    transition: all .3s ease-in-out
}

.frontPageWeddingItem:hover::before {
    -webkit-transform: scale(1.05);
    transform: scale(1.05)
}

.frontPageWeddingItemInner {
    position: relative
}

.frontPageWeddingTitle {
    text-align: center
}

.frontPageWeddingTitleText--sub::before {
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%)
}

.frontPageWeddingText {
    margin-top: 11px;
    font-family: "Shippori Mincho",serif;
    font-size: clamp(.75rem,1vw + 1vh,1.25rem);
    font-weight: 400;
    line-height: 1.5;
    letter-spacing: .1em;
    text-align: center
}

.frontPageReport {
    margin-top: 86px
}

.frontPageReportBody {
    margin-top: 20px
}

.frontPageReportTextTitle {
    font-family: "Shippori Mincho",serif;
    font-size: clamp(1.375rem,2vw + 2vh,1.625rem);
    font-weight: 400;
    line-height: 2.18;
    letter-spacing: .1em
}

.frontPageReportTextDesc {
    margin-top: 12px
}

.frontPageReportTextDescText {
    font-size: clamp(.75rem,1vw + 1vh,.8125rem);
    font-weight: 400;
    line-height: 1.91;
    letter-spacing: .1em;
    text-align: justify
}

.frontPageReportLink {
    margin-top: 15px;
    display: flex;
    align-items: flex-end;
    gap: 9px
}

.frontPageReportLinkIcon img {
    padding-bottom: 3px
}

.frontPageReportImage {
    margin: 0 calc(50% - 50vw);
    margin-top: 40px
}

.frontPageReportLinkText {
    font-family: "Lato",sans-serif;
    font-size: .75rem;
    font-weight: 500;
    line-height: 1.16;
    letter-spacing: .1em;
    color: #af8858
}

.frontPageReportFoot {
    margin-top: 33px
}

.frontPageBanner {
    margin: 0 auto;
    margin-top: 95px;
    font-family: "Shippori Mincho",serif;
    color: #fff;
    width: clamp(375px,(100vw - 375px)*.7746478873 + 375px,1200px)
}

.frontPageBannerWrap {
    background-image: url(../img/images/frontPageBannerBg.png);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    padding: 25px 15px 15px 15px
}

.frontPageBannerTitle {
    position: relative;
    font-size: clamp(1.25rem,2vw + 2vh,1.625rem);
    font-weight: 400;
    line-height: 1.5;
    letter-spacing: .1em;
    display: flex;
    flex-direction: column;
    text-align: center
}

.frontPageBannerTitle::before,.frontPageBannerTitle::after {
    content: "";
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    width: clamp(25px,(100vw - 375px)*.0253521127 + 25px,52px);
    height: clamp(7px,1vw + 1vh,13px)
}

.frontPageBannerTitle::before {
    left: 0;
    background-image: url(../img/images/frontPageBannerTitleLeft.png);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat
}

.frontPageBannerTitle::after {
    right: 0;
    background-image: url(../img/images/frontPageBannerTitleRight.png);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat
}

.frontPageBannerContents {
    margin-top: 28px;
    --minimum: 167px;
    gap: 10px
}

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

.frontPageBannerContentItemText {
    padding: 0 7px;
    background-color: #c7ad8a;
    height: clamp(112px,(100vw - 375px)*.0685446009 + 112px,185px)
}

.frontPageBannerContentItemDesc {
    font-family: Shippori Mincho;
    font-size: clamp(.875rem,1vw + 1vh,1.4375rem);
    font-weight: 400;
    line-height: 1.4;
    text-align: center;
    height: clamp(57px,(100vw - 375px)*.0338028169 + 57px,93px);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center
}

.frontPageBannerContentItemDesc span {
    display: block;
    font-size: clamp(.625rem,1vw + 1vh,1.125rem);
    line-height: 1.4
}

.frontPageBannerContentItemTitle {
    border-top: 1px solid #fff;
    font-family: Shippori Mincho;
    font-size: clamp(1.5625rem,2vw + 2vh,2.6875rem);
    font-weight: 500;
    line-height: 1.44;
    text-align: center;
    height: clamp(54px,(100vw - 375px)*.0356807512 + 54px,92px);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center
}

.frontPageBannerContentItemTitle span {
    display: block;
    font-size: clamp(.6875rem,1vw + 1vh,1.125rem);
    line-height: 1.36
}

.frontPageBannerBtn {
    margin-top: 13px
}

.frontPageBannerBtnText {
    text-align: center;
    font-size: clamp(1rem,1vw + 1vh,1.5rem);
    letter-spacing: .1em;
    line-height: 1.4;
    position: relative
}

.frontPageBannerBtnImage {
    position: absolute;
    top: 50%;
    right: -20px;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%)
}

.frontPageInsta {
    width: 100%;
    margin-top: 60px
}

.frontPageInstaImage {
    width: 100%
}

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

.pageFairIntro {
    background-color: #f6f4f1
}

.pageFairIntroWrap {
    padding: 34px 0 93px 0;
    position: relative;
    margin: 0 auto;
    width: clamp(267px,(100vw - 375px)*.876056338 + 267px,1200px)
}

.pageFairIntroHead {
    display: flex;
    align-items: center;
    justify-content: center
}

.pageFairIntroTitle {
    width: clamp(114px,(100vw - 375px)*.0422535211 + 104px,149px)
}

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

.pageFairIntroBody {
    margin-top: 32px
}

.pageFairIntroSlider {
    position: relative
}

.pageFairIntroSlider .swiper-button-next,.pageFairIntroSlider .swiper-button-prev {
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    width: 10px;
    height: 26px;
    top: inherit;
    bottom: 5%
}

.pageFairIntroSlider .swiper-button-next::after,.pageFairIntroSlider .swiper-button-prev::after {
    content: ""
}

.pageFairIntroSlider .swiper-button-next {
    right: auto;
    left: -9%;
    background-image: url(../img/images/swiperArrowL.png)
}

.pageFairIntroSlider .swiper-button-prev {
    right: -9%;
    left: auto;
    background-image: url(../img/images/swiperArrowR.png)
}

.pageFairIntroSlider .swiper-pagination-bullets.swiper-pagination-horizontal {
    bottom: 6%
}

.pageFairIntroSlider .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
    margin: 0 6px
}

.pageFairIntroSlider .swiper-pagination-bullet-active {
    background: #af8858
}

.pageFairIntroSlider .swiper {
    overflow: hidden
}

.pageFairIntroSlider .swiper-slide {
    max-width: inherit;
    width: 100%
}

.pageFairIntroSlider .swiper-slide img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

.pageFairIntroArticleLink {
    display: flex;
    flex-direction: column;
    align-items: center
}

.pageFairIntroArticleHead {
    order: 1;
    letter-spacing: .1em;
    font-family: "Shippori Mincho",serif;
    display: flex;
    flex-direction: column;
    margin-top: 4px;
    gap: 10px;
    width: 267px
}

.pageFairIntroArticleTitle {
    order: 1;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.625;
    letter-spacing: .1em;
    text-align: justify;
    margin-top: -8px
}

.pageFairIntroArticleTime {
    order: 0;
    font-size: 1.75rem;
    font-weight: 400;
    line-height: 1.4;
    letter-spacing: .1em;
    text-align: center
}

.pageFairIntroArticleBody {
    order: 0;
    width: 100%;
    max-width: 267px
}

.pageFairIntroFoot {
    margin-top: 40px
}

.pageFairIntroLink {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 15px;
    padding: 13px 43px;
    color: #af8858;
    border: 1px solid #af8858;
    background-color: #fff
}

.pageFairIntroLink::after {
    position: absolute;
    content: "";
    background-image: url(../img/images/pageViewMoreArrow.png);
    background-size: cover;
    background-repeat: no-repeat;
    width: 30px;
    height: 6px;
    right: -8%;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%)
}

.pageFairIntroLinkIcon {
    order: 0
}

.pageFairIntroLinkText {
    order: 1;
    font-size: .75rem;
    font-weight: 500;
    letter-spacing: .1em
}

.pageGuests {
    font-family: "Shippori Mincho",serif
}

.tempGuestHead>*+* {
    margin-top: 25px
}

.tempGuestBody {
    margin-top: 25px
}

.tempGuestTitle {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    font-weight: 400;
    font-family: "Shippori Mincho",serif;
    gap: 6px
}

.tempGuestTitleText--sub {
    font-size: clamp(.875rem,1vw + 1vh,1rem);
    font-weight: 400;
    line-height: 20px;
    letter-spacing: .1em;
    text-align: center;
    order: 1
}

.tempGuestTitleText {
    font-family: "Cormorant Garamond",serif;
    font-size: clamp(1.5625rem,2vw + 2vh,2.25rem);
    font-weight: 400;
    line-height: 28px;
    letter-spacing: .2em;
    text-align: center;
    order: 0
}

.tempGuestText {
    font-size: clamp(.75rem,1vw + 1vh,.875rem);
    font-weight: 400;
    line-height: 27px;
    letter-spacing: .1em;
    text-align: center
}

.tempGuestNav {
    margin-top: 50px
}

.tempGuestInfo {
    margin-top: 80px
}

.tempGuestInfoList {
    --minimum: 300px;
    gap: 40px
}

.tempGuestInfoItem {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 13px
}

.tempGuestInfoItemHead {
    order: 1
}

.tempGuestInfoItemTitle {
    padding-bottom: 11px;
    font-size: clamp(.875rem,1vw + 1vh,1rem);
    font-weight: 400;
    line-height: 1.6;
    letter-spacing: .1em;
    text-align: center;
    border-bottom: 1px solid #af8858;
    order: 0
}

.tempGuestInfoItemText {
    margin-top: 8px;
    font-size: .75rem;
    line-height: 1.8;
    letter-spacing: .1em
}

.tempGuestInfoItemImage {
    order: 0
}

.tempGuestInfoItemImage img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center;
    object-position: center
}

.tempGuestDress {
    margin-top: 90px
}

.tempGuestDressBody {
    margin-top: 60px
}

.tempGuestDressBodyTitle {
    position: relative;
    font-size: clamp(1.125rem,1vw + 1vh,1.5rem);
    font-weight: 400;
    line-height: 26px;
    letter-spacing: .1em;
    text-align: center;
    padding-bottom: 5px;
    border-bottom: 1px solid #af8858
}

.tempGuestDressContent {
    margin-top: 14px
}

.tempGuestDressContentWrap>*+* {
    margin-top: 24px
}

.tempGuestDressContentWrap+.tempGuestDressContentWrap {
    margin-top: 85px
}

.tempGuestDressContentHead>*+* {
    margin-top: 13px
}

.tempGuestDressContentTitle {
    display: flex;
    gap: 15px;
    align-items: center;
    justify-content: center;
    font-size: clamp(1rem,1vw + 1vh,1.25rem);
    font-weight: 400;
    line-height: 19px;
    letter-spacing: .1em
}

.tempGuestDressContentTitleReserve {
    font-size: clamp(.6875rem,1vw + 1vh,.875rem);
    font-weight: 400;
    line-height: 15.93px;
    letter-spacing: .1em;
    text-align: center
}

.tempGuestDressContentNote {
    width: 50px;
    height: 21px;
    font-size: .625rem;
    font-weight: 400;
    line-height: 21px;
    letter-spacing: .1em;
    text-align: center;
    color: #fff;
    background-color: #af8858
}

.tempGuestDressContentText {
    font-size: clamp(.75rem,1vw + 1vh,.875rem);
    font-weight: 400;
    line-height: 21px;
    letter-spacing: .1em;
    text-align: center
}

.tempGuestDressTable {
    width: 100%;
    border: 1px solid #d2c9bc;
    border-collapse: collapse
}

.tempGuestDressTable tbody tr {
    display: flex
}

.tempGuestDressTable tbody th {
    padding: 16px 4px 18px 8px;
    flex-basis: 44%;
    background-color: #f5f3ec;
    font-size: .875rem;
    font-weight: 400;
    line-height: 20px;
    letter-spacing: .1em;
    text-align: left
}

.tempGuestDressTable tbody td {
    padding: 16px 4px 18px 16px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-basis: 56%;
    font-size: 1.125rem;
    font-weight: 400;
    line-height: 26px;
    letter-spacing: .1em
}

.tempGuestDressTable tbody>*+* {
    border-top: 1px solid #d2c9bc
}

.tempGuestDressSmall {
    font-size: .625rem;
    line-height: 1.4;
    padding-top: 8px
}

.tempGuestPrev {
    margin-top: 70px
}

.tempGuestPrevBody>*+* {
    margin-top: 87px
}

.tempGuestPrevBodyTitle {
    position: relative;
    font-size: clamp(.75rem,1vw + 1vh,.875rem);
    font-weight: 400;
    line-height: 27px;
    letter-spacing: .1em;
    text-align: center;
    padding-bottom: 5px
}

.tempGuestPrevBodyTitle::before {
    content: "";
    position: absolute;
    bottom: 0;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    width: 70px;
    height: 1px;
    background-color: #af8858
}

.tempGuestPrevWrap>*+* {
    margin-top: 42px
}

.tempGuestPrevImageList {
    --minimum: 135px;
    row-gap: 57px;
    -webkit-column-gap: 27px;
    -moz-column-gap: 27px;
    column-gap: 27px
}

.tempGuestPrevImageItem {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    max-width: 200px;
    gap: 5px
}

.tempGuestPrevImageItem img {
    order: 0
}

.tempGuestPrevImageText {
    font-size: clamp(.875rem,1vw + 1vh,1rem);
    font-weight: 400;
    line-height: 23px;
    letter-spacing: .1em;
    text-align: center;
    order: 1
}

.archiveReportIntro {
    padding-top: 50px
}

.archiveReportIntroText {
    font-family: "Shippori Mincho",serif;
    font-size: clamp(.75rem,1vw + 1vh,.875rem);
    line-height: 2.07;
    letter-spacing: .14em;
    max-width: 800px;
    width: 100%;
    margin: 0 auto
}

.archiveReportIntroAccordion {
    cursor: pointer;
    border: 1px solid #d1d1d1;
    margin: 0 auto;
    margin-top: 47px;
    max-width: 530px
}

.archiveReportIntroAccordion.is-open .archiveReportIntroAccordionIcon {
    -webkit-transform: rotate(180deg);
    transform: rotate(180deg)
}

.archiveReportIntroAccordionTitle {
    display: flex;
    width: 100%;
    padding: 10px;
    font-size: clamp(.75rem,1vw + 1vh,.875rem);
    letter-spacing: .05em;
    line-height: 2.75;
    font-family: "Shippori Mincho",serif;
    justify-content: space-between;
    align-items: center
}

.archiveReportIntroAccordionTitle::-webkit-details-marker {
    display: none
}

.archiveReportIntroAccordionIcon {
    position: relative;
    width: 16px;
    height: 16px;
    transition: all .3s cubic-bezier(0.37, 0, 0.63, 1)
}

.archiveReportIntroAccordionIcon::before {
    position: absolute;
    content: "";
    background-image: url(../img/images/reportAccArrow.png);
    width: 5px;
    height: 20px;
    background-size: contain;
    background-position: 0 2px;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%)
}

.archiveReportIntroAccordionWrap {
    overflow: hidden
}

.archiveReportIntroAccordionList {
    margin-top: -10px;
    padding: 0 24px
}

.archiveReportIntroAccordionItem {
    position: relative;
    z-index: 1
}

.archiveReportIntroAccordionItem a {
    display: block;
    font-size: clamp(.75rem,1vw + 1vh,.875rem);
    letter-spacing: .05em;
    line-height: 2.75;
    font-family: "Shippori Mincho",serif
}

.archiveReportList {
    --minimum: 300px;
    margin-top: 29px;
    gap: 20px
}

@supports(width: min(var(--minimum), 100%)) {
    .archiveReportList {
        grid-template-columns:repeat(auto-fill, minmax(min(var(--minimum), 100%), 1fr))
    }
}

.archiveReportListWrap .wp-pagenavi {
    max-width: 430px;
    margin: 0 auto;
    margin-top: 40px
}

.archiveReportListItemLink {
    display: flex;
    gap: 14px;
    align-items: flex-start;
    font-family: "Shippori Mincho",serif
}

.archiveReportListItemLink>* {
    flex: 1 0 calc(50% - 14px)
}

.archiveReportListItemContent {
    order: 1
}

.archiveReportListItemTitle {
    font-size: .75rem;
    line-height: 1.66;
    letter-spacing: .1em
}

.archiveReportListItemInfo {
    color: #af8858;
    font-size: .625rem;
    line-height: 1.5;
    letter-spacing: .1em;
    margin-top: 7px;
    padding-left: 2px
}

.archiveReportListItemImage {
    order: 0;
    width: 100%;
    position: relative;
    overflow: hidden;
    aspect-ratio: 143/94
}

.archiveReportListItemImage img {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    top: 0;
    margin: auto;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

.singleReportIntro {
    padding-top: 50px;
    font-family: "Shippori Mincho",serif
}

.singleReportIntro .commonWrap {
    width: clamp(329px,(100vw - 375px)*.8178403756 + 329px,1200px)
}

.singleReportIntroTitle {
    font-size: clamp(.9375rem,1vw + 1vh,1.5rem);
    font-weight: 400;
    line-height: 1.9;
    letter-spacing: .09em;
    text-align: center
}

.singleReportIntroInfo {
    position: relative;
    text-align: center;
    color: #af8858;
    font-size: clamp(.75rem,1vw + 1vh,.875rem);
    line-height: 2.2;
    letter-spacing: .1em;
    margin-top: 37px;
    white-space: nowrap
}

.singleReportIntroInfo::after {
    content: "";
    position: absolute;
    top: -10px;
    left: 50%;
    width: 160px;
    height: 1px;
    background-color: #af8858;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%)
}

.singleReportPoint {
    padding-top: 60px;
    font-family: "Shippori Mincho",serif
}

.singleReportPointWrap {
    width: clamp(320px,(100vw - 375px)*.8450704225 + 300px,1200px)
}

.singleReportPointList {
    margin-top: 32px;
    font-size: clamp(.8125rem,1vw + 1vh,1rem);
    display: flex;
    flex-direction: column
}

.singleReportPointListItem {
    letter-spacing: .1em;
    font-weight: 400;
    line-height: 2.76
}

.singleReportPointGallery {
    margin: 0 calc(50% - 50vw);
    margin-top: 49px;
    --minimum: 180px;
    gap: 1px
}

.singleReportPointGalleryItem {
    position: relative
}

.singleReportPointGalleryItem::before {
    content: "";
    position: absolute;
    bottom: 0;
    right: 0;
    width: 20px;
    height: 20px;
    background-image: url(../img/images/singleReportPointModalIcon.png);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat
}

.singleReportPointGalleryItem img {
    -o-object-fit: cover;
    object-fit: cover;
    aspect-ratio: 187/123;
    width: 100%;
    height: 100%
}

.singleReportMessage {
    padding: 60px 0 80px 0;
    font-family: "Shippori Mincho",serif
}

.singleReportHead .commonWrap {
    width: clamp(328px,(100vw - 375px)*.8187793427 + 328px,1200px)
}

.singleReportTitle {
    display: flex;
    flex-direction: column;
    align-items: center;
    color: #af8858;
    font-size: .8125rem;
    line-height: 1.76;
    letter-spacing: .1em
}

.singleReportTitle img {
    order: 0
}

.singleReportTitleText {
    order: 1
}

.singleReportMessageTitle {
    line-height: 1.9;
    font-size: clamp(.9375rem,1vw + 1vh,1.5rem);
    letter-spacing: .1em;
    font-weight: 400;
    text-align: center;
    margin-top: 48px
}

.singleReportMessageThumb {
    margin-top: 42px;
    position: relative;
    overflow: hidden;
    aspect-ratio: 328/226
}

.singleReportMessageThumb img {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    top: 0;
    margin: auto;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

.singleReportMessageText {
    font-size: clamp(.75rem,1vw + 1vh,.875rem);
    line-height: 2.17;
    letter-spacing: .137em;
    margin-top: 19px
}

.singleReportMessageWrapPc {
    display: block
}

.singleReportPlanner {
    margin-top: 50px;
    background-color: #f5f3ec;
    padding: 31px 0 26px 0
}

.singleReportPlannerTitle {
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    font-size: clamp(.75rem,1vw + 1vh,1rem);
    line-height: 1.41;
    letter-spacing: .1em
}

.singleReportPlannerTitle::before,.singleReportPlannerTitle::after {
    content: "";
    margin-top: 3px;
    flex-grow: 1;
    border-top: 1px solid #af8858
}

.singleReportPlannerTitle::before {
    margin-right: 12px
}

.singleReportPlannerTitle::after {
    margin-left: 12px
}

.singleReportPlannerMessageTitle {
    font-weight: 400;
    font-size: clamp(.9375rem,1vw + 1vh,1.25rem);
    line-height: 1.9;
    letter-spacing: .1em;
    text-align: center;
    margin-top: 19px
}

.singleReportPlannerMessageText {
    font-size: clamp(.75rem,1vw + 1vh,.875rem);
    line-height: 2.19;
    font-weight: 400;
    letter-spacing: .14em;
    margin-top: 19px
}

.singleReportMessageFootNav {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 40px;
    margin-top: 38px
}

.singleReportMessageFootLink {
    font-family: "Shippori Mincho",serif;
    font-weight: 400;
    font-size: .75rem;
    letter-spacing: .1em;
    line-height: 1.41;
    text-decoration: underline
}

.singleReportMessageFootPrev,.singleReportMessageFootNext {
    width: 35px;
    height: 35px
}

.singleReportOther {
    font-family: "Shippori Mincho",serif
}

.singleReportOtherTitle {
    font-weight: 400;
    font-size: 1.0625rem;
    line-height: 1.23;
    letter-spacing: .1em;
    text-align: center
}

.singleReportOtherSlider {
    margin-top: 34px
}

.singleReportOtherSlider .swiper {
    overflow: hidden
}

.singleReportOtherSlider .swiper-slide {
    max-width: inherit;
    width: 100%
}

.singleReportOtherSlider .swiper-button-next,.singleReportOtherSlider .swiper-button-prev {
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    width: 7px;
    height: 17px;
    top: 52%
}

.singleReportOtherSlider .swiper-button-next::after,.singleReportOtherSlider .swiper-button-prev::after {
    content: ""
}

.singleReportOtherSlider .swiper-button-next {
    right: auto;
    left: -7%;
    background-image: url(../img/images/swiperArrowL.png)
}

.singleReportOtherSlider .swiper-button-prev {
    right: -7%;
    left: auto;
    background-image: url(../img/images/swiperArrowR.png)
}

.singleReportOtherArticleLink {
    display: flex;
    flex-direction: column;
    gap: 8px
}

.singleReportOtherArticleHead {
    order: 1
}

.singleReportOtherArticleBody {
    order: 0
}

.singleReportOtherArticleThumb {
    width: 100%;
    position: relative;
    overflow: hidden;
    aspect-ratio: 301/198
}

.singleReportOtherSlider .swiper-slide img {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    top: 0;
    margin: auto;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

.singleReportOtherArticleTitle {
    font-size: clamp(.75rem,1vw + 1vh,.875rem);
    line-height: 2.2;
    letter-spacing: .1em;
    font-weight: 400
}

.singleReportOtherArticleInfo {
    display: block;
    color: #af8858;
    font-size: clamp(.625rem,1vw + 1vh,.75rem);
    line-height: 1.8;
    letter-spacing: .1em;
    margin-top: 5px
}

.mainSingle .pageTitle {
    margin-top: 42px
}

.selectFairArchivesLxn {
    gap: 41px;
    padding: 0 51px;
    padding-bottom: 40px;
    flex-wrap: nowrap
}

.selectFairArchivesBox {
    display: none
}

.selectFairArchivesBoxIn {
    padding: 16px 23px 14px 24px;
    width: 100%
}

.iconSelectFairArchivesBox {
    position: absolute;
    top: 50%;
    right: 14px;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%)
}

.tempFairArchivesLxn {
    padding-top: 24px;
    padding-bottom: 45px
}

.tempFairArchivesLxnLoops {
    margin: 0 auto;
    width: clamp(329px,(100vw - 375px)*.723943662 + 329px,1100px)
}

.pagerTempFairArchives {
    margin: 0 auto;
    width: clamp(301px,(100vw - 375px)*.1211267606 + 301px,430px)
}

.pageDress {
    font-family: "Shippori Mincho",serif
}

.tempDressNav .commonPageNavList {
    row-gap: 29px
}

.tempDressNav .commonPageNavListItem a {
    padding: 2px 0 19px 0
}

.tempDressTitle {
    margin-top: 30px;
    display: inline-flex;
    flex-direction: column;
    font-size: clamp(1.125rem,2vw + 1vh,1.25rem);
    line-height: 2;
    font-weight: 400;
    letter-spacing: .1em
}

.tempDressDesc {
    margin-top: 18px;
    font-size: .75rem;
    line-height: 2.25;
    letter-spacing: .1em
}

.tempDressDescText {
    display: block
}

.tempDressDescText+.tempDressDescText {
    margin-top: 29px
}

.tempDressCommonTitle {
    display: flex;
    flex-direction: column;
    gap: 4px;
    font-family: "Cormorant Garamond",serif;
    color: #937c64;
    font-weight: 400;
    letter-spacing: .2em;
    line-height: 1.28;
    font-size: clamp(2.1875rem,3vw + 2vh,3.125rem)
}

.tempDressCommonTitleText {
    order: 0;
    white-space: nowrap
}

.tempDressCommonTitleText--sub {
    order: 1;
    font-family: "Shippori Mincho",serif;
    font-size: clamp(.875rem,1vw + 1vh,1rem);
    letter-spacing: .1em
}

.tempDressCommonBody {
    margin-top: 18px
}

.tempDressCommonDescText {
    font-family: "Zen Kaku Gothic New",sans-serif;
    font-weight: 400;
    letter-spacing: .05em;
    line-height: 1.8;
    font-size: clamp(.75rem,1vw + 1vh,.8125rem);
    text-align: justify;
    text-justify: inter-ideograph
}

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

.tempDressContent {
    margin-top: 60px
}

.tempDressContentItem {
    position: relative;
    padding: 48px 0 36px 0
}

.tempDressContentItem::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #fbf9f7
}

.tempDressContentItem#Wd .tempDressCommonTitleText {
    letter-spacing: .24em;
    line-height: 1.2
}

.tempDressContentItem#Wd .tempDressTitle {
    line-height: 2.4
}

.tempDressContentItem#Wd .tempDressCommonDescText {
    line-height: 2.25;
    letter-spacing: .1em
}

.tempDressContentGalleryWrap {
    width: clamp(336px,(100vw - 375px)*.8112676056 + 336px,1200px)
}

.tempDressContentGallery {
    padding: 36px 0 100px 0;
    --minimum: 100px;
    gap: 6px;
    grid-template-columns: repeat(auto-fill, minmax(min(var(--minimum), 100%), 1fr))
}

.tempDressContentGalleryItem {
    position: relative;
    overflow: hidden;
    aspect-ratio: 108/108;
    max-width: 190px
}

.tempDressContentGalleryItem::after {
    content: "";
    position: absolute;
    bottom: 4px;
    right: 4px;
    width: 20px;
    height: 20px;
    background-image: url(../img/images/tempDressContentModalIcon.png);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat
}

.tempDressContentGalleryItem img {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    top: 0;
    margin: auto;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

.tempDressSalon {
    margin-top: 40px;
    padding: 42px 0 56px 0;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    background-image: url(../img/images/tempDressSalonBg.png)
}

.tempDressSalon .tempDressTitle {
    margin-top: 24px
}

.tempDressSalon .tempDressCommonBody {
    margin-top: 17px
}

.tempDressSalon .tempDressCommonDescText {
    line-height: 1.86;
    letter-spacing: .1em
}

.tempDressSalonWrap .tempDressCommonImage img {
    width: clamp(301px,(100vw - 375px)*.261971831 + 301px,580px)
}

.tempDressCommonSalonTitle {
    letter-spacing: .1em
}

.tempDressCommonSalonTitle .tempDressCommonTitleText {
    letter-spacing: .2em
}

.tempDressCommonSalonTitle .tempDressCommonTitleText--sub {
    line-height: 2.1
}

.tempDressSalonGallery {
    margin-top: 35px;
    --minimum: 130px;
    row-gap: 8px;
    -webkit-column-gap: 15px;
    -moz-column-gap: 15px;
    column-gap: 15px
}

@supports(width: min(var(--minimum), 100%)) {
}

.tempDressItem {
    display: flex;
    flex-direction: column;
    gap: 5px
}

.tempDressItemTitle {
    order: 1;
    font-weight: 400;
    letter-spacing: .05em;
    line-height: 1.75;
    font-size: clamp(.75rem,1vw + 1vh,1.0625rem);
    text-align: center
}

.tempDressItemText {
    order: 2;
    letter-spacing: .22em;
    text-align: justify;
    font-family: "Zen Kaku Gothic New",sans-serif;
    font-weight: 400;
    line-height: 1.65;
    margin-top: -4px;
    font-size: clamp(.625rem,1vw + 1vh,.75rem)
}

.tempDressSalonItemImage {
    order: 0;
    position: relative;
    overflow: hidden;
    aspect-ratio: 143/82
}

.tempDressSalonItemImage img {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    top: 0;
    margin: auto;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

.tempDressSalonBanner {
    margin-top: 40px
}

.tempDressBanner {
    background: #979797;
    padding: 15px;
    display: flex;
    flex-direction: column;
    gap: 11px
}

.tempDressBannerHead {
    order: 1;
    display: flex;
    flex-direction: column;
    color: #fff
}

.tempDressBannerBody {
    order: 0
}

.tempDressBannerTitle {
    text-align: justify;
    margin-top: 5px;
    order: 1;
    font-size: clamp(1rem,1vw + 1vh,1.25rem);
    font-weight: 400;
    line-height: 2.3;
    letter-spacing: .13em
}

.tempDressBannerText {
    margin-top: 3px;
    font-family: "Zen Kaku Gothic New",sans-serif;
    order: 2;
    font-size: clamp(12px,1vw + 1vh,13px);
    line-height: 1.76;
    letter-spacing: .05em;
    font-weight: 400;
    text-align: justify
}

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

.tempDressBannerDecoImage {
    order: 0;
    width: clamp(186px,(100vw - 375px)*.1201877934 + 186px,314px)
}

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

.pageWeddingVenue {
    font-family: "Shippori Mincho",serif
}

.tempVenueTitle {
    display: inline-flex;
    flex-direction: column;
    font-size: clamp(1.25rem,2vw + 2vh,2rem);
    line-height: 2;
    font-weight: 400;
    letter-spacing: .1em
}

.tempVenueDesc {
    margin-top: 30px;
    font-size: clamp(.75rem,1vw + 1vh,.8125rem);
    line-height: 2.25;
    letter-spacing: .1em
}

.tempVenueDescText {
    display: block
}

.tempVenueDescText+.tempVenueDescText {
    margin-top: 29px
}

.tempVenueCeremonyIntroTitle {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    font-weight: 400;
    font-family: "Shippori Mincho",serif;
    gap: 6px
}

.tempVenueCeremonyIntroTitleText--sub {
    font-size: clamp(.875rem,1vw + 1vh,1rem);
    font-weight: 400;
    line-height: 20px;
    letter-spacing: .1em;
    text-align: center;
    order: 1
}

.tempVenueCeremonyIntroTitleText {
    font-family: "Cormorant Garamond",serif;
    font-size: clamp(1.5625rem,2vw + 2vh,2.25rem);
    font-weight: 400;
    line-height: 28px;
    letter-spacing: .2em;
    text-align: center;
    order: 0
}

.tempVenueCeremonyIntro {
    position: relative;
    padding-top: 121px
}

.tempVenueCeremonyIntro::before {
    position: absolute;
    content: "";
    background-color: #666;
    width: 1px;
    height: 60px;
    top: 31px;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%)
}

.tempVenueCeremonyIntroBody {
    margin-top: 40px
}

.tempVenueCeremonyIntroFoot {
    margin-top: 30px;
    --minimum: 90px;
    -webkit-column-gap: 15px;
    -moz-column-gap: 15px;
    column-gap: 15px
}

.tempVenueCeremonyIntroItem a {
    position: relative;
    display: flex;
    flex-direction: column;
    gap: 12px;
    font-size: clamp(.75rem,1vw + 1vh,.875rem);
    color: #af8858;
    line-height: 1.4;
    text-align: center;
    font-weight: 400;
    align-items: center
}

.tempVenueCeremonyIntroItem a::after {
    content: "";
    position: absolute;
    bottom: -9px;
    left: 50%;
    width: 8px;
    height: 4px;
    background-image: url(../img/images/bottomArrow.png);
    background-size: cover;
    background-repeat: no-repeat;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%)
}

.tempVenueCeremonyIntroItemText {
    order: 1
}

.tempVenueCeremonyIntroItemImage {
    order: 0
}

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

.tempVenueCeremonyContents {
    margin-top: 48px
}

.tempVenueCeremonyContents>*+* {
    margin-top: 123px
}

.tempVenueCeremonyContent {
    position: relative;
    padding-top: 50px
}

.tempVenueCeremonyContent::before {
    pointer-events: none;
    background-color: #fbf9f7;
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: clamp(375px,(100vw - 375px)*.661971831 + 375px,1080px);
    height: 100%;
    max-height: clamp(620px,723px - (100vw - 375px)*.096713615,723px)
}

.tempVenueCeremonyWrap {
    position: relative;
    margin: 0 auto;
    width: clamp(301px,(100vw - 375px)*.9887323944 + 301px,1354px)
}

.tempVenueCeremonyTitle {
    display: flex;
    flex-direction: column;
    padding-bottom: 16px;
    gap: 2px;
    font-family: "Cormorant Garamond",serif;
    color: #937c64;
    font-weight: 400;
    letter-spacing: .2em;
    line-height: 1.28;
    font-size: clamp(2.1875rem,3vw + 2vh,3.125rem);
    border-bottom: 1px solid #937c64
}

.tempVenueCeremonyTitleText {
    order: 0
}

.tempVenueCeremonyTitleText--sub {
    order: 1;
    font-family: "Shippori Mincho",serif;
    font-size: clamp(.875rem,1vw + 1vh,1rem);
    letter-spacing: .1em
}

.tempVenueCeremonyContainer[data-item=Shinto] .tempVenueCeremonyContentImage {
    margin-top: 38px
}

.tempVenueCeremonyContainer[data-item=Public] .tempVenueCeremonyContentImage {
    margin-top: 41px
}

.tempVenueCeremonyContentWrap[data-item=Shinto] .tempVenueCeremonySpecification {
    margin-top: 45px
}

.tempVenueCeremonyBody {
    margin-top: 17px
}

.tempVenueCeremonyContentTitle {
    display: inline-flex;
    flex-direction: column;
    font-size: clamp(1rem,1vw + 1vh,1.25rem);
    line-height: 2;
    font-weight: 400;
    letter-spacing: .1em
}

.tempVenueCeremonyDesc {
    margin-top: 22px;
    font-size: clamp(.75rem,1vw + 1vh,.8125rem);
    line-height: 1.79;
    letter-spacing: .1em;
    text-align: justify;
    font-weight: 400
}

.tempVenueCeremonySpecification {
    margin-top: 35px
}

.tempVenueCeremonySpecificationText {
    font-family: "Cormorant Garamond",serif;
    font-size: clamp(.75rem,1vw + 1vh,.875rem);
    font-weight: 400;
    line-height: 1.125;
    letter-spacing: .2em;
    color: #937c64
}

.tempVenueCeremonySpecificationListWrap {
    margin-top: 15px;
    width: 100%
}

.tempVenueCeremonySpecificationList {
    display: flex;
    width: 100%;
    -webkit-column-gap: 34px;
    -moz-column-gap: 34px;
    column-gap: 34px
}

.tempVenueCeremonySpecificationList dt {
    width: 50%;
    max-width: 95px
}

.tempVenueCeremonySpecificationList dd {
    width: 50%
}

.tempVenueCeremonySpecificationList+.tempVenueCeremonySpecificationList {
    margin-top: 9px
}

.tempVenueCeremonySpecificationItem {
    font-family: "Zen Kaku Gothic New",sans-serif;
    font-size: .75rem;
    font-weight: 400;
    line-height: 1.41;
    letter-spacing: .1em;
    text-align: justify
}

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

.tempVenueCeremonyContentImage {
    margin: 0 calc(50% - 50vw);
    margin-top: 30px;
    display: flex;
    align-items: flex-end;
    gap: clamp(14px,(100vw - 375px)*.0129449838 + 14px,34px)
}

.tempVenueCeremonyImage--secondary {
    display: flex;
    flex-direction: column;
    gap: clamp(14px,(100vw - 375px)*.0129449838 + 14px,34px)
}

.tempVenueCeremonyFoot {
    margin-top: 49px
}

.tempVenueCeremonySlider {
    overflow: visible;
    position: relative
}

.tempVenueCeremonySlider .swiper-button-next,.tempVenueCeremonySlider .swiper-button-prev {
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    width: clamp(30px,1vw + 1vh,40px);
    height: clamp(30px,1vw + 1vh,40px);
    top: 57%
}

.tempVenueCeremonySlider .swiper-button-next::after,.tempVenueCeremonySlider .swiper-button-prev::after {
    content: ""
}

.tempVenueCeremonySlider .swiper-button-next {
    left: auto;
    right: -5%;
    background-image: url(../img/images/boxArrowR.png)
}

.tempVenueCeremonySlider .swiper-button-prev {
    left: -5%;
    right: auto;
    background-image: url(../img/images/boxArrowL.png)
}

.tempVenueCeremonySlider .swiper-pagination-bullets.swiper-pagination-horizontal {
    bottom: -12%
}

.tempVenueCeremonySlider .swiper-pagination-bullet {
    width: 7px;
    height: 7px;
    margin: 0 5px
}

.tempVenueCeremonySlider .swiper-pagination-bullet-active {
    background: #af8858
}

.tempVenueCeremonySlider .swiper-slide {
    max-width: inherit;
    width: 100%
}

.tempVenueCeremonySlider .swiper-slide img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

.tempVenueCeremonyArticleImage {
    width: 100%;
    height: clamp(199px,(100vw - 375px)*.2234741784 + 199px,437px)
}

.tempVenueBanquet {
    font-family: "Shippori Mincho",serif
}

.tempVenueBanquetIntroFoot {
    margin-top: 30px;
    --minimum: 90px;
    -webkit-column-gap: 15px;
    -moz-column-gap: 15px;
    column-gap: 15px;
    row-gap: 27px
}

.tempVenueBanquetIntroItem a {
    position: relative;
    display: flex;
    flex-direction: column;
    gap: 9px;
    font-size: clamp(.625rem,1vw + 1vh,.8125rem);
    color: #af8858;
    line-height: 1.4;
    white-space: nowrap;
    text-align: center;
    font-weight: 400;
    align-items: center
}

.tempVenueBanquetIntroItem a::after {
    content: "";
    position: absolute;
    bottom: -14px;
    left: 50%;
    width: 10px;
    height: 6px;
    background-image: url(../img/images/bottomArrow.png);
    background-size: contain;
    background-repeat: no-repeat;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%)
}

.tempVenueBanquetIntroItemText {
    order: 1
}

.tempVenueBanquetIntroItemImage {
    order: 0;
    position: relative;
    overflow: hidden;
    width: 100%;
    aspect-ratio: 90/90
}

.tempVenueBanquetIntroItemImage img {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    top: 0;
    margin: auto;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

.tempVenueBanquetIntroTitle {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    font-weight: 400;
    font-family: "Shippori Mincho",serif;
    gap: 6px
}

.tempVenueBanquetIntroTitleText--sub {
    font-size: clamp(.875rem,1vw + 1vh,1rem);
    font-weight: 400;
    line-height: 20px;
    letter-spacing: .1em;
    text-align: center;
    order: 1
}

.tempVenueBanquetIntroTitleText {
    font-family: "Cormorant Garamond",serif;
    font-size: clamp(1.5625rem,2vw + 2vh,2.25rem);
    font-weight: 400;
    line-height: 28px;
    letter-spacing: .2em;
    text-align: center;
    order: 0
}

.tempVenueBanquetIntro {
    position: relative;
    padding-top: 271px
}

.tempVenueBanquetIntro::before {
    position: absolute;
    content: "";
    background-color: #666;
    width: 1px;
    height: 60px;
    top: 182px;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%)
}

.tempVenueBanquetIntroBody {
    margin-top: 40px
}

.tempVenueBanquetTitleInfo {
    font-family: "Zen Kaku Gothic New",sans-serif;
    font-size: clamp(.625rem,1vw + 1vh,.75rem);
    font-weight: 400;
    line-height: 1.4;
    letter-spacing: .1em;
    color: #937c64;
    padding: 2px 6px;
    border: 1px solid #937c64
}

.tempVenueBanquetTitleInfo.-Dinner {
    padding: 2px 30px
}

.tempVenueBanquetWrap {
    position: relative;
    margin: 0 auto;
    width: clamp(301px,(100vw - 375px)*.8441314554 + 301px,1200px)
}

.tempVenueBanquetTitle {
    display: flex;
    flex-direction: column;
    gap: 9px;
    font-family: "Cormorant Garamond",serif;
    color: #937c64;
    font-weight: 400;
    letter-spacing: .2em;
    line-height: 1.28;
    font-size: clamp(1.875rem,3vw + 2vh,3.125rem)
}

.tempVenueBanquetTitleText {
    order: 0
}

.tempVenueBanquetTitleText--sub {
    order: 1;
    font-family: "Shippori Mincho",serif;
    font-size: clamp(.875rem,1vw + 1vh,1rem);
    letter-spacing: .1em;
    display: flex;
    align-items: center;
    gap: 14px
}

.tempVenueBanquetBody {
    margin-top: 34px
}

.tempVenueBanquetContents {
    margin-top: 64px
}

.tempVenueBanquetContents>*+* {
    margin-top: 50px
}

.tempVenueBanquetContent {
    position: relative;
    padding: 51px 0 83px 0;
    background-color: #fbf9f7
}

.tempVenueBanquetContentTitle {
    display: inline-flex;
    flex-direction: column;
    font-size: clamp(1.125rem,1vw + 1vh,1.25rem);
    line-height: 1.8;
    font-weight: 400;
    letter-spacing: .1em;
    text-align: justify
}

.tempVenueBanquetDesc {
    font-family: "Zen Kaku Gothic New",sans-serif;
    margin-top: 13px;
    font-size: clamp(.75rem,1vw + 1vh,.8125rem);
    line-height: 1.83;
    text-align: justify;
    font-weight: 400
}

.tempVenueBanquetReport {
    margin-top: 37px
}

.tempVenueBanquetReportText {
    font-family: "Zen Kaku Gothic New",sans-serif;
    font-size: clamp(.6875rem,1vw + 1vh,.75rem);
    font-weight: 400;
    line-height: 1.45;
    text-align: justify;
    color: #937c64
}

.tempVenueBanquetReportList {
    display: flex;
    gap: 15px;
    margin-top: 12px
}

.tempVenueBanquetReportItem {
    width: clamp(130px,(100vw - 375px)*.0187793427 + 130px,150px)
}

.tempVenueBanquetReportItemImage {
    position: relative;
    overflow: hidden;
    aspect-ratio: 130/70;
    width: 100%
}

.tempVenueBanquetReportItemImage img {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    top: 0;
    margin: auto;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

.tempVenueBanquetReportItemText {
    padding: 3px 5px;
    font-family: "Zen Kaku Gothic New",sans-serif;
    font-size: clamp(.625rem,1vw + 1vh,.75rem);
    font-weight: 400;
    line-height: 1.4;
    text-align: justify;
    background-color: #fff
}

.tempVenueBanquetFoot {
    margin-top: 36px
}

.tempVenueBanquetSlider {
    overflow: visible;
    position: relative
}

.tempVenueBanquetSlider .swiper-button-next,.tempVenueBanquetSlider .swiper-button-prev {
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    width: clamp(30px,1vw + 1vh,40px);
    height: clamp(30px,1vw + 1vh,40px);
    top: 53%
}

.tempVenueBanquetSlider .swiper-button-next::after,.tempVenueBanquetSlider .swiper-button-prev::after {
    content: ""
}

.tempVenueBanquetSlider .swiper-button-next {
    left: auto;
    right: -5%;
    background-image: url(../img/images/boxArrowR.png)
}

.tempVenueBanquetSlider .swiper-button-prev {
    left: -5%;
    right: auto;
    background-image: url(../img/images/boxArrowL.png)
}

.tempVenueBanquetSlider .swiper-pagination-bullets.swiper-pagination-horizontal {
    bottom: -13%
}

.tempVenueBanquetSlider .swiper-pagination-bullet {
    width: 7px;
    height: 7px;
    margin: 0 5px
}

.tempVenueBanquetSlider .swiper-pagination-bullet-active {
    background: #af8858
}

.tempVenueBanquetSlider .swiper-slide {
    max-width: inherit;
    width: 100%
}

.tempVenueBanquetSlider .swiper-slide img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

.tempVenueBanquetArticleImage {
    width: 100%;
    height: clamp(199px,(100vw - 375px)*.2234741784 + 199px,437px)
}

.tempVenueIntro .commonPageNavList {
    margin: 0 auto;
    width: 301px
}

.fixFoot {
    background-color: #fff
}

.fixFootWrap {
    display: flex;
    gap: 2px
}

.fixFootLinkWrap {
    width: calc(100% - 50px);
    display: flex;
    justify-content: space-between;
    gap: 1px
}

.fixFootLinkWrap>* {
    flex: 1 0 50%
}

.fixFootLink {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    font-size: .8125rem;
    font-family: "Shippori Mincho",serif;
    color: #fff;
    height: 50px;
    font-weight: 500;
    line-height: 19px;
    letter-spacing: .1em;
    text-align: center;
    background-color: #c76c68
}

.fixFootLink:nth-child(2) {
    background-color: #958756
}

.fixFootTop {
    width: 50px;
    height: 50px;
    background-color: #333;
    display: flex;
    align-items: center;
    justify-content: center
}

.fixFrontBanner {
    position: fixed;
    right: 13px;
    bottom: 52px;
    border: 2px solid #af8858;
    width: clamp(345px,(100vw - 375px)*.2056338028 + 345px,564px);
    padding: 14px;
    background-color: #fff;
    display: flex;
    z-index: 100;
    gap: clamp(13px,(100vw - 375px)*.0131455399 + 13px,27px)
}

.fixFrontBannerImage {
    width: clamp(145px,(100vw - 375px)*.0892018779 + 145px,240px);
    height: clamp(145px,(100vw - 375px)*.0892018779 + 145px,240px);
    aspect-ratio: 1/1
}

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

.fixFrontBannerClose {
    position: absolute;
    right: -12px;
    top: -12px;
    display: block;
    width: 25px;
    height: 25px
}

.fixFrontBannerContent {
    width: clamp(150px,(100vw - 375px)*.0920187793 + 150px,248px);
    font-family: "Shippori Mincho",serif
}

.fixFrontBannerContentTime {
    font-weight: 500;
    line-height: 30.41px;
    text-align: center;
    font-size: clamp(1.3125rem,2vw + 2vh,2.1875rem)
}

.fixFrontBannerContentTitle {
    font-weight: 500;
    line-height: 17.36px;
    text-align: justify;
    color: #c76c68;
    font-size: clamp(.749375rem,1vw + 1vh,.9375rem);
    margin-top: clamp(9px,(100vw - 375px)*.0056338028 + 9px,15px)
}

.fixFrontBannerContentCta {
    margin-top: 11px;
    font-family: "Zen Kaku Gothic New",sans-serif;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    gap: 6px
}

.fixFrontBannerContentCtaButtonDetail {
    font-size: clamp(.625rem,1vw + 1vh,1rem);
    font-weight: 500;
    line-height: 14.48px;
    letter-spacing: .05em;
    text-align: center;
    width: clamp(150px,(100vw - 375px)*.0920187793 + 150px,248px);
    height: clamp(28px,(100vw - 375px)*.0178403756 + 28px,47px);
    background-color: #af8858;
    color: #fff;
    display: grid;
    place-items: center
}

.fixFrontBannerContentCtaButtonFair {
    display: grid;
    place-items: center;
    font-size: clamp(.625rem,1vw + 1vh,1rem);
    font-weight: 500;
    line-height: 14.48px;
    letter-spacing: .05em;
    text-align: center;
    color: #af8858;
    width: clamp(150px,(100vw - 375px)*.0920187793 + 150px,248px);
    height: clamp(28px,(100vw - 375px)*.0178403756 + 28px,47px);
    background-color: #fff;
    border: 1px solid #af8858
}

.tempBookingFlow {
    margin-top: 34px;
    font-family: "Shippori Mincho",serif;
    font-size: .9375rem;
    line-height: 40px;
    letter-spacing: .1em;
    text-align: center;
    width: clamp(301px,(100vw - 375px)*0.8178403756 + 329px,1200px)
}

.tempBookingFlowTitle {
    line-height: 40px;
    letter-spacing: .1em
}

.tempBookingFlowImage {
    display: block;
    margin-top: 25px
}

.tempBookingFlowImageLower {
    margin-top: 40px
}

.tempBookingForm {
    font-family: "Shippori Mincho",serif;
    margin-bottom: 80px;
    width: clamp(301px,(100vw - 375px)*.8178403756 + 329px,1200px)
}

.tempBookingForm .mw_wp_form {
    margin-top: 35px
}

.tempBookingForm .mw_wp_form_input {
    margin-top: 35px
}

.tempBookingForm .mw_wp_form .error {
    font-family: "Shippori Mincho",serif;
    font-size: .75rem;
    position: absolute;
    bottom: -20px
}

.tempBookingForm .mw_wp_form .error+.error {
    bottom: -40px
}

.tempBookingFormContainer {
    display: block;
    max-width: 100%
}

.tempBookingFormInner {
    display: flex;
    flex-direction: column;
    row-gap: 30px;
    max-width: 100%
}

.tempBookingFormRow {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    row-gap: 6px
}

.tempBookingFormHeading {
    display: flex;
    align-items: center;
    -webkit-column-gap: 10px;
    -moz-column-gap: 10px;
    column-gap: 10px
}

.tempBookingFormLabel {
    font-family: "Shippori Mincho",serif;
    font-size: .875rem;
    font-weight: 400;
    line-height: 21px;
    letter-spacing: .1em
}

.tempBookingFormRequired {
    font-family: "Zen Kaku Gothic New",sans-serif;
    font-size: .625rem;
    font-weight: 400;
    letter-spacing: 0;
    line-height: 14px;
    color: #fff;
    padding-inline:3px;background-color: #b90000
}

.tempBookingFormBox {
    width: 100%;
    position: relative
}

.tempBookingFormRadio {
    display: flex;
    flex-wrap: wrap;
    -webkit-column-gap: 42px;
    -moz-column-gap: 42px;
    column-gap: 42px;
    row-gap: 20px
}

.tempBookingFormRadio label {
    display: flex;
    align-items: center;
    -webkit-column-gap: 10px;
    -moz-column-gap: 10px;
    column-gap: 10px
}

.tempBookingFormRadio input[type=radio] {
    width: 20px;
    height: 20px;
    margin-right: 0
}

.tempBookingFormRadio .mwform-radio-field-text {
    font-family: "Shippori Mincho",serif;
    font-size: .75rem;
    letter-spacing: .1em
}

.tempBookingFormRadioTo {
    -webkit-column-gap: 27px;
    -moz-column-gap: 27px;
    column-gap: 27px
}

.tempBookingFormText input[type=text] {
    width: 100%;
    padding: 6px 20px;
    border: 1px solid #333;
    border-radius: 0;
    font-family: "Shippori Mincho",serif;
    font-size: .75rem;
    letter-spacing: .1em;
    line-height: 36px
}

.tempBookingFormText input[type=text]::-webkit-input-placeholder {
    font-size: .75rem;
    color: #989898;
    letter-spacing: .1em;
    line-height: 36px
}

.tempBookingFormText input[type=text]::-moz-placeholder {
    font-size: .75rem;
    color: #989898;
    letter-spacing: .1em;
    line-height: 36px
}

.tempBookingFormText input[type=text]:-ms-input-placeholder {
    font-size: .75rem;
    color: #989898;
    letter-spacing: .1em;
    line-height: 36px
}

.tempBookingFormText input[type=text]::-ms-input-placeholder {
    font-size: .75rem;
    color: #989898;
    letter-spacing: .1em;
    line-height: 36px
}

.tempBookingFormText input[type=text]::placeholder {
    font-size: .75rem;
    color: #989898;
    letter-spacing: .1em;
    line-height: 36px
}

.tempBookingFormText input[type=email] {
    width: 100%;
    padding: 6px 20px;
    border: 1px solid #333;
    border-radius: 0;
    font-family: "Shippori Mincho",serif;
    font-size: .75rem;
    letter-spacing: .1em;
    line-height: 36px
}

.tempBookingFormText input[type=email]::-webkit-input-placeholder {
    font-size: .75rem;
    color: #989898;
    letter-spacing: .1em;
    line-height: 36px
}

.tempBookingFormText input[type=email]::-moz-placeholder {
    font-size: .75rem;
    color: #989898;
    letter-spacing: .1em;
    line-height: 36px
}

.tempBookingFormText input[type=email]:-ms-input-placeholder {
    font-size: .75rem;
    color: #989898;
    letter-spacing: .1em;
    line-height: 36px
}

.tempBookingFormText input[type=email]::-ms-input-placeholder {
    font-size: .75rem;
    color: #989898;
    letter-spacing: .1em;
    line-height: 36px
}

.tempBookingFormText input[type=email]::placeholder {
    font-size: .75rem;
    color: #989898;
    letter-spacing: .1em;
    line-height: 36px
}

.tempBookingFormDate {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    -webkit-column-gap: 7px;
    -moz-column-gap: 7px;
    column-gap: 7px;
    row-gap: 10px
}

.tempBookingFormDate input[type=text] {
    width: 100%;
    padding: 6px 20px;
    border: 1px solid #333;
    border-radius: 0;
    font-family: "Shippori Mincho",serif;
    font-size: .75rem;
    letter-spacing: .1em;
    line-height: 36px
}

.tempBookingFormDate input[type=text]::-webkit-input-placeholder {
    font-size: .75rem;
    color: #989898;
    letter-spacing: .1em;
    line-height: 36px
}

.tempBookingFormDate input[type=text]::-moz-placeholder {
    font-size: .75rem;
    color: #989898;
    letter-spacing: .1em;
    line-height: 36px
}

.tempBookingFormDate input[type=text]:-ms-input-placeholder {
    font-size: .75rem;
    color: #989898;
    letter-spacing: .1em;
    line-height: 36px
}

.tempBookingFormDate input[type=text]::-ms-input-placeholder {
    font-size: .75rem;
    color: #989898;
    letter-spacing: .1em;
    line-height: 36px
}

.tempBookingFormDate input[type=text]::placeholder {
    font-size: .75rem;
    color: #989898;
    letter-spacing: .1em;
    line-height: 36px
}

.tempBookingFormDateFull .tempBookingFormDatePick {
    width: 100%
}

.tempBookingFormDatePick {
    width: 62%;
    display: flex;
    align-items: center;
    position: relative
}

.tempBookingFormDatePick::before {
    content: "";
    width: 21px;
    height: 21px;
    position: absolute;
    right: 10px;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    background: url(../img/images/calender_icon.svg) no-repeat;
    background-size: contain;
    pointer-events: none
}

.tempBookingFormTime {
    width: calc(31.665% - 7px);
    display: flex;
    align-items: center;
    -webkit-column-gap: 8px;
    -moz-column-gap: 8px;
    column-gap: 8px;
    position: relative
}

.tempBookingFormTime::before {
    content: "";
    width: 10px;
    height: 6px;
    position: absolute;
    right: 11px;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    background: url(../img/images/select-arrow.svg) no-repeat;
    background-size: contain;
    pointer-events: none
}

.tempBookingFormTime select {
    width: 100%;
    height: 50px;
    padding-inline:10px;font-size: .875rem;
    line-height: 32px;
    border: 1px solid #333;
    position: relative
}

.tempBookingFormUnit {
    font-family: "Shippori Mincho",serif;
    font-size: .75rem;
    line-height: 26px;
    padding-left: 6px
}

.tempBookingFormPeople {
    width: 100%;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    row-gap: 16px;
    -webkit-column-gap: 14px;
    -moz-column-gap: 14px;
    column-gap: 14px
}

.tempBookingFormPeople input[type=text] {
    width: 38.485%
}

.tempBookingFormName {
    font-family: "Shippori Mincho",serif;
    font-size: .875rem
}

.tempBookingFormTextArea textarea {
    width: 100%;
    height: 88px;
    padding: 6px 20px;
    font-size: .75rem;
    letter-spacing: .1em;
    line-height: 1.5;
    border: 1px solid #333
}

.tempBookingFormTextArea textarea ::-webkit-input-placeholder {
    font-size: .75rem;
    color: #989898;
    letter-spacing: .1em;
    line-height: 36px
}

.tempBookingFormTextArea textarea ::-moz-placeholder {
    font-size: .75rem;
    color: #989898;
    letter-spacing: .1em;
    line-height: 36px
}

.tempBookingFormTextArea textarea :-ms-input-placeholder {
    font-size: .75rem;
    color: #989898;
    letter-spacing: .1em;
    line-height: 36px
}

.tempBookingFormTextArea textarea ::-ms-input-placeholder {
    font-size: .75rem;
    color: #989898;
    letter-spacing: .1em;
    line-height: 36px
}

.tempBookingFormTextArea textarea ::placeholder {
    font-size: .75rem;
    color: #989898;
    letter-spacing: .1em;
    line-height: 36px
}

.tempBookingFormSelect {
    width: 100%;
    display: flex;
    align-items: center;
    -webkit-column-gap: 8px;
    -moz-column-gap: 8px;
    column-gap: 8px;
    position: relative
}

.tempBookingFormSelect::before {
    content: "";
    width: 10px;
    height: 6px;
    position: absolute;
    right: 32px;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    background: url(../img/images/select-arrow.svg) no-repeat;
    background-size: contain;
    pointer-events: none
}

.tempBookingFormSelect select {
    width: 100%;
    height: 50px;
    padding-inline:10px;font-size: .875rem;
    line-height: 32px;
    border: 1px solid #333;
    position: relative
}

.tempBookingFormSelectFair::before {
    right: 10px
}

.tempBookingFormSelectNumber {
    width: 65%;
    display: flex;
    align-items: center;
    -webkit-column-gap: 12px;
    -moz-column-gap: 12px;
    column-gap: 12px;
    position: relative
}

.tempBookingFormSelectNumber::before {
    content: "";
    width: 10px;
    height: 6px;
    position: absolute;
    right: 32px;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    background: url(../img/images/select-arrow.svg) no-repeat;
    background-size: contain;
    pointer-events: none
}

.tempBookingFormSelectNumber select {
    width: 100%;
    height: 50px;
    padding-inline:10px;font-size: .875rem;
    line-height: 32px;
    border: 1px solid #333;
    position: relative
}

.tempBookingForm .mw_wp_form .horizontal-item+.horizontal-item {
    margin-left: 0
}

.tempBookingFormPrivacy {
    margin-top: 48px
}

.tempBookingFormPrivacyLead {
    font-family: "Shippori Mincho",serif;
    font-size: .75rem;
    line-height: 36px;
    letter-spacing: .1em;
    text-align: center
}

.tempBookingFormPrivacyBox {
    height: 210px;
    margin-top: 11px;
    margin-inline:auto;max-width: 900px;
    padding: 10px;
    border: 1px solid #989898;
    overflow-y: auto
}

.tempBookingFormPrivacyBox>*+* {
    margin-top: 22px
}

.tempBookingFormPrivacyContent {
    font-family: "Shippori Mincho",serif;
    font-size: .75rem;
    letter-spacing: normal;
    line-height: 22px
}

.tempBookingFormSubmitConfirm {
    max-width: 300px;
    margin-top: 40px;
    margin-inline:auto;display: flex;
    flex-direction: column
}

.tempBookingFormSubmitConfirm button {
    padding: 14px 42px;
    border: 1px solid #b18a58;
    font-family: "Shippori Mincho",serif;
    font-size: .75rem;
    color: #b18a58;
    text-align: center;
    letter-spacing: .1em;
    line-height: 20px
}

.tempBookingFormSubmitConfirm button .large {
    display: block;
    font-size: .9375rem
}

.mw_wp_form_confirm .tempBookingFormInner {
    row-gap: 15px
}

.mw_wp_form_confirm .tempBookingFormRow {
    row-gap: 3px
}

.mw_wp_form_confirm .tempBookingFormLabel {
    font-size: .75rem;
    line-height: 24px;
    letter-spacing: .1em;
    color: #989898
}

.mw_wp_form_confirm .tempBookingFormRequired {
    display: none
}

.mw_wp_form_confirm .tempBookingFormBox {
    font-family: "Shippori Mincho",serif;
    font-size: .875rem;
    letter-spacing: .05em;
    -webkit-column-gap: 6px;
    -moz-column-gap: 6px;
    column-gap: 6px;
    row-gap: 15px
}

.mw_wp_form_confirm .tempBookingFormUnit {
    font-size: .875rem;
    line-height: 24px;
    letter-spacing: .05em
}

.mw_wp_form_confirm .tempBookingFormDatePick {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content
}

.mw_wp_form_confirm .tempBookingFormDatePick::before {
    display: none
}

.mw_wp_form_confirm .tempBookingFormTime {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content
}

.mw_wp_form_confirm .tempBookingFormTime::before {
    display: none
}

.mw_wp_form_confirm .tempBookingFormTime .tempBookingFormUnit {
    display: none
}

.mw_wp_form_confirm .tempBookingFormPeople {
    width: 100%;
    row-gap: 0;
    -webkit-column-gap: 0;
    -moz-column-gap: 0;
    column-gap: 0
}

.mw_wp_form_confirm .tempBookingFormName {
    width: 100%;
    display: block;
    font-size: .75rem;
    line-height: 24px;
    letter-spacing: .05em;
    color: #989898
}

.mw_wp_form_confirm .tempBookingFormPrivacy {
    display: none
}

.mw_wp_form_confirm .tempBookingFormSubmitConfirm {
    max-width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: row;
    flex-wrap: wrap;
    row-gap: 22px;
    -webkit-column-gap: 30px;
    -moz-column-gap: 30px;
    column-gap: 30px;
    margin-top: 60px
}

.mw_wp_form_confirm .tempBookingFormSubmitConfirm button {
    width: 300px;
    height: 50px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid #b18a58;
    font-size: .875rem;
    letter-spacing: .1em;
    line-height: 36px;
    color: #b18a58
}

.mw_wp_form_confirm .tempBookingFormSubmitConfirm button[value=send] {
    color: #fff;
    background-color: #b18a58
}

.mw_wp_form_confirm .tempBookingForm {
    margin-bottom: 100px
}

.mw_wp_form_confirm .tempBookingFormSelect::before {
    display: none
}

.tempBookingFormThanks {
    margin-top: 42px
}

.tempBookingFormThanks .tempBookingInfo {
    margin-top: 70px
}

.tempBookingFormThanks .tempBookingInfoText {
    font-size: .75rem;
    line-height: 28px;
    letter-spacing: .1em;
    text-align: center
}

.tempBookingFormThanks .tempBookingInfoTel {
    margin-top: 11px;
    font-size: 2.0625rem;
    letter-spacing: .1em;
    text-align: center
}

.tempBookingFormThanksText {
    font-size: .75rem;
    line-height: 28px;
    letter-spacing: .05em;
    text-align: center
}

.tempBookingFormThanksToTOP {
    width: 300px;
    height: 70px;
    margin-top: 70px;
    margin-inline:auto;display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: row;
    border: 1px solid #b18a58;
    font-size: .875rem;
    letter-spacing: .1em;
    line-height: 36px;
    color: #b18a58
}

.ui-datepicker select.ui-datepicker-month,.ui-datepicker select.ui-datepicker-year {
    width: auto !important
}

.u-textdecoration-underline {
    text-decoration: underline
}

.u-color-blue {
    color: #0057ff
}

.u-uppercase {
    text-transform: uppercase
}

.u-lowercase {
    text-transform: lowercase
}

.u-centerposition {
    display: flex;
    justify-content: center;
    align-items: center
}

.u-visually-hidden {
    position: absolute;
    overflow: hidden;
    clip: rect(0 0 0 0);
    margin: -1px;
    padding: 0;
    width: 1px;
    height: 1px;
    border: 0;
    white-space: nowrap;
    -webkit-clip-path: inset(50%);
    clip-path: inset(50%)
}

.u-bold {
    font-weight: bold
}

.u-color\:white {
    color: #fff
}

.u-block {
    display: block
}

.u-blockSp {
    display: block
}

.u-left {
    text-align: left
}

.u-center {
    text-align: center
}

.u-font-size\:smallish {
    font-size: var(--font-size-smallish)
}

.u-font-size\:biggish {
    font-size: var(--font-size-biggish)
}

.u-font-size\:big {
    font-size: var(--font-size-big)
}

.pcNone {
    display: block
}

.pcBlock {
    display: none
}

@media screen and (min-width: 375px) {
    .commonPageNavList {
        --minimum: 150px
    }
}

@media screen and (min-width: 576px) {
    .commonPageNavList {
        --minimum: 220px
    }

    .tempAboutLinkList {
        --minimum: 220px
    }

    .tempAboutLinkItem a {
        flex-direction: column
    }

    .tempAboutLinkItem a>* {
        flex: 1 0 100%
    }

    .tempAboutLinkItemGuide {
        justify-content: flex-end
    }

    .tempAboutLinkItemImage {
        width: 100%
    }

    .archiveReportList {
        --minimum: 220px
    }

    .archiveReportListWrap .wp-pagenavi {
        margin-top: 88px
    }

    .archiveReportListItemLink>* {
        flex: 1 0 100%
    }

    .archiveReportListItemLink {
        flex-direction: column
    }

    .tempVenueCeremonyContentWrap {
        width: clamp(300px,(100vw - 375px)*.1596244131 + 300px,470px)
    }
}

@media screen and (min-width: 768px) {
    :root {
        --buffer: 80
    }

    .pageTitleText--sub::after {
        top: -16px
    }

    .pageBridalSlider .pageBridalSwiper {
        overflow: hidden
    }

    .footerContactWrap {
        padding: 80px 0 80px
    }

    .footerContactReserveLink {
        margin-top: 8px
    }

    .footerBodyNavigation {
        margin-top: 26px
    }

    .footerBodyNavigationListItem:nth-child(2) {
        order: 1
    }

    .footerBodyNavigationListItem:nth-child(3) {
        order: 2
    }

    .footerBodySiteCta {
        margin-top: 40px
    }

    .commonPageNavList {
        --minimum: 300px
    }

    .commonHero {
        height: 940px
    }

    .tempAboutImage {
        margin-top: 81px
    }

    .tempAboutImage--full {
        margin: 64px auto 0 auto
    }

    .tempAboutIntro {
        padding: 116px 0 138px 0
    }

    .tempAboutIntro .aboutPageHeroVideoSp {
        display: none
    }

    .tempAboutIntro .aboutPageHeroVideoPc {
        display: block
    }

    .tempAboutIntroBody::after {
        bottom: -11%;
        right: -9%
    }

    .tempAboutLoopIndex>*+* {
        margin-top: 22px
    }

    .tempAboutLoopIndex {
        margin-top: 60px
    }

    .tempAboutLink {
        padding: 131px 0 120px 0
    }

    .tempAboutLinkList {
        margin-top: 60px
    }

    .tempAboutLinkFoot {
        margin-top: 64px
    }

    .tempAboutLinkFootCta {
        margin-top: 25px
    }

    .tempAboutCtaTitle {
        font-size: clamp(1.125rem,2vw + 2vh,1.25rem)
    }

    .archiveFaqTabButton {
        font-size: 1rem
    }

    .tempFoodHero {
        height: 850px
    }

    .tempFoodIntro {
        margin-top: 130px
    }

    .tempFoodNav {
        margin-top: 90px;
        padding-bottom: 101px
    }

    .tempFoodMenu {
        padding-top: 91px;
        padding-bottom: 45px
    }

    .tempFoodMenuContent#Ch {
        margin-top: 107px
    }

    .tempFoodMenuContent#Ca {
        margin-top: 206px
    }

    .tempFoodMenuContent#Fr {
        margin-top: 190px
    }

    .tempFoodMenuContent::before {
        left: 0;
        height: clamp(340px,(100vw - 375px)*.0751173709 + 340px,420px)
    }

    .tempFoodMenuBody {
        margin-top: 30px;
        display: flex;
        gap: 46px;
        justify-content: flex-end
    }

    .tempFoodMenuDescText {
        line-height: 2;
        letter-spacing: .1em;
        text-align: justify
    }

    .tempFoodMenuImage {
        max-width: inherit;
        margin-right: 0;
        margin-top: -80px
    }

    .tempFoodMenuImage.-oneLine {
        margin-top: -10px
    }

    .tempFoodMenuSwiper .swiper-button-next {
        right: 20.8%
    }

    .tempFoodMenuSwiper .swiper-button-prev {
        left: 20.8%
    }

    .tempFoodMenuFoot {
        margin-top: 54px
    }

    .tempFoodMenuSpecial {
        margin-top: 86px
    }

    .tempFoodMenuSpecialTitle {
        margin-top: 27px
    }

    .tempFoodMenuSpecialTitle br {
        display: none
    }

    .tempFoodSpecialGallery {
        gap: 36px;
        margin-top: 27px
    }

    .tempFoodMenuSpecialDesc {
        margin-top: 11px;
        text-align: center
    }

    .tempFoodMenuNote {
        margin-top: 40px
    }

    .tempFoodMenuNoteText {
        padding: 16px 28px;
        line-height: 1.8;
        padding-bottom: 11px;
        letter-spacing: .11em
    }

    .tempFoodBanner {
        margin-top: 84px
    }

    .tempFoodBannerBody {
        margin-top: 61px
    }

    .tempFoodBannerChef {
        padding: 25px 54px 25px 30px;
        flex-direction: row;
        gap: 51px;
        justify-content: space-between
    }

    .tempFoodBannerChefHead {
        width: clamp(271px,(100vw - 375px)*.39342723 + 271px,690px)
    }

    .tempFoodBannerChefTitle {
        margin-top: 20px
    }

    .tempFoodBannerChefText {
        margin-top: 12px
    }

    .tempFoodBannerChefImage img {
        width: clamp(271px,(100vw - 375px)*.0976525822 + 271px,375px)
    }

    .tempFoodBannerChefDecoImage img {
        -o-object-fit: contain;
        object-fit: contain;
        margin-top: 16px
    }

    .tempFoodBannerCard {
        display: flex;
        align-items: center;
        justify-content: flex-end;
        height: 280px;
        padding: 58px 0 48px 0
    }

    .tempFoodBannerCardWrap {
        padding-right: 91px
    }

    .tempFoodBannerCardTitle {
        font-size: clamp(1.125rem,2vw + 2vh,1.5rem)
    }

    .frontPageHero {
        height: auto
    }

    .frontPageHeroVideoSp {
        display: none
    }

    .frontPageHeroVideoPc {
        display: block
    }

    .frontPageIntoWrap {
        padding: 104px 0 104px 0
    }

    .frontPageIntroText {
        margin-top: 22px;
        line-height: 2.76;
        letter-spacing: .12em
    }

    .frontPageIntroImageTitle img {
        max-width: 634px
    }

    .frontPageCeremony {
        margin-top: 120px
    }

    .frontPageCeremonyBody {
        background-color: #f2eee6;
        margin-top: 70px
    }

    .frontPageCeremonyContentItem {
        display: flex;
        gap: 46px
    }

    .frontPageCeremonyContentItem[data-item=Shrine] {
        flex-direction: row-reverse
    }

    .frontPageCeremonyContentItem[data-item=Shrine] .frontPageCeremonyContentImage {
        margin: 0;
        margin-right: calc(50% - 50vw);
        width: 100%
    }

    .frontPageCeremonyContentText::before {
        content: none
    }

    .frontPageCeremonyContentText {
        width: clamp(300px,(100vw - 375px)*.0253521127 + 300px,327px);
        height: clamp(421px,(100vw - 375px)*.2563380282 + 421px,694px);
        padding-top: 82px
    }

    .frontPageCeremonyContentImage {
        margin: 0;
        margin-left: calc(50% - 50vw);
        width: 100%
    }

    .frontPageCeremonyContentImage img {
        width: clamp(375px,(100vw - 375px)*.7201877934 + 375px,1142px)
    }

    .frontPageCeremonyContentTitle {
        margin-top: 15px;
        line-height: 2
    }

    .frontPageCeremonyDesc {
        letter-spacing: .1em;
        margin-top: 15px;
        line-height: 1.95
    }

    .frontPageCeremonyContentButton {
        margin-top: 55px;
        justify-content: flex-start
    }

    .frontPageBanquetWrap {
        margin-top: 120px
    }

    .frontPageBanquetWrap .pageBridalHead {
        display: flex;
        gap: 122px
    }

    .frontPageBanquetWrap .frontPagePlanText {
        margin-top: 10px;
        margin-left: -6px
    }

    .frontPageBanquetWrap .pageBridalBody {
        margin-top: 73px
    }

    .frontPageBanquetFoot {
        margin-top: 93px;
        margin-left: -14px
    }

    .frontPagePlanWrap {
        padding-top: 120px
    }

    .frontPagePlanWrap .pageBridalHead {
        display: flex;
        gap: 108px
    }

    .frontPagePlanWrap .frontPagePlanText {
        margin-top: 8px;
        margin-left: -7px
    }

    .frontPagePlanWrap .pageBridalBody {
        margin-top: 70px
    }

    .frontPagePlanArticleText {
        white-space: nowrap
    }

    .frontPagePlanSlider .pageBridalSwiper {
        overflow: hidden;
        padding-bottom: 60px
    }

    .frontPagePlanSlider .swiper-button-next {
        left: -2%
    }

    .frontPagePlanSlider .swiper-button-prev {
        right: -2%
    }

    .frontPagePlanSlider .swiper-pagination-bullets.swiper-pagination-horizontal {
        bottom: 0
    }

    .frontPageBridal {
        margin-top: 120px
    }

    .frontPageBridalBody {
        margin-top: 70px
    }

    .frontPageBridalWrap {
        padding-top: 120px;
        padding-bottom: 122px
    }

    .frontPageBridalArticleConditionsList {
        margin-top: 12px
    }

    .frontPageBridalFoot {
        margin-top: 51px
    }

    .frontPageWeddingWrap {
        display: flex;
        align-items: center;
        gap: 2px
    }

    .frontPageWeddingWrap>* {
        flex: 1 0 50%
    }

    .frontPageWeddingText {
        margin-top: 25px
    }

    .frontPageReport {
        margin-top: 123px
    }

    .frontPageReportBody {
        margin-top: 80px
    }

    .frontPageReportArticle {
        display: flex;
        gap: 36px
    }

    .frontPageReportText {
        width: clamp(260px,768px - (100vw - 375px)*.4769953052,768px)
    }

    .frontPageReportTextDescText {
        line-height: 2.3
    }

    .frontPageReportLink {
        margin-top: 75px
    }

    .frontPageReportImage {
        margin: 0;
        width: clamp(375px,(100vw - 375px)*.461971831 + 375px,867px)
    }

    .frontPageReportFoot {
        margin-top: 44px
    }

    .frontPageBanner {
        margin-top: 96px
    }

    .frontPageBannerWrap {
        padding: 30px 28px 33px 28px;
        padding-top: 37px;
        padding-bottom: 36px
    }

    .frontPageBannerBtn {
        margin-top: 21px
    }

    .frontPageBannerBtnText br {
        display: none
    }

    .frontPageInsta {
        margin-top: 106px
    }

    .pageFairIntroArticleImage {
        width: 267px;
        height: 267px
    }

    .archiveReportIntro {
        padding-top: 120px
    }

    .archiveReportIntroText {
        text-align: center
    }

    .archiveReportIntroAccordion {
        width: 90%;
        margin-top: 112px
    }

    .archiveReportIntroAccordionTitle {
        padding: 13px 24px 12px 24px
    }

    .archiveReportIntroAccordionList {
        margin-top: -13px
    }

    .archiveReportList {
        margin-top: 100px;
        row-gap: 60px;
        gap: clamp(20px,(100vw - 375px)*.0356807512 + 20px,58px)
    }

    .singleReportPointGallery {
        margin: 0;
        margin-top: 55px
    }

    .tempDressNav {
        margin-top: 131px
    }

    .tempDressCommonImage img {
        width: clamp(301px,(100vw - 375px)*.4122065728 + 301px,740px)
    }

    .tempDressContent {
        margin-top: 90px
    }

    .tempDressContents {
        margin: 0 auto;
        width: clamp(301px,(100vw - 375px)*.8441314554 + 301px,1200px)
    }

    .tempDressContentWrap {
        display: flex;
        gap: 40px;
        justify-content: space-between;
        padding-left: 75px
    }

    .tempDressContentWrap[data-item=co] {
        flex-direction: row-reverse;
        padding-left: 0;
        padding-right: 75px
    }

    .tempDressContentWrap[data-item=me] {
        flex-direction: row-reverse;
        padding-left: 0;
        padding-right: 75px
    }

    .tempDressContentWrap .tempDressCommonHead {
        width: clamp(301px,(100vw - 375px)*.0647887324 + 301px,370px)
    }

    .tempDressContentWrap .tempDressCommonImage {
        margin-right: -100px;
        margin-top: 5px
    }

    .tempDressContentWrap .tempDressCommonImage img {
        width: clamp(301px,(100vw - 375px)*.4122065728 + 301px,740px)
    }

    .tempDressContentWrap[data-item=me] .tempDressCommonImage {
        margin: 0;
        margin-left: -100px
    }

    .tempDressContentWrap .tempDressCommonBody {
        margin-top: 0
    }

    .tempDressContentWrap .tempDressCommonDescText {
        letter-spacing: .1em;
        text-align: justify;
        line-height: 2
    }

    .tempDressContentGallery {
        --minimum: 190px;
        gap: 12px;
        padding: 54px 0 58px 0
    }

    .tempDressContentGalleryItem {
        overflow: hidden
    }

    .tempDressSalon {
        padding: 88px 0 103px;
        margin-top: 118px
    }

    .tempDressSalonWrap {
        display: flex;
        gap: 80px
    }

    .tempDressSalonWrap .tempDressCommonHead {
        width: clamp(301px,(100vw - 375px)*.1492957746 + 301px,460px)
    }

    .tempDressSalonGallery {
        margin-top: 53px;
        --minimum: 220px;
        -webkit-column-gap: 43px;
        -moz-column-gap: 43px;
        column-gap: 43px;
        row-gap: 16px
    }

    .tempDressSalonGallery {
        grid-template-columns: repeat(auto-fill, minmax(min(var(--minimum), 100%), 1fr))
    }

    .tempDressSalonItemImage::after {
        content: "";
        position: absolute;
        top: 0;
        left: 0;
        width: 0;
        height: 0;
        border-top: 14px solid #fff;
        border-right: 14px solid rgba(0,0,0,0)
    }

    .tempDressSalonItemImage::before {
        content: "";
        position: absolute;
        bottom: 0;
        right: 0;
        width: 0;
        height: 0;
        border-bottom: 14px solid #fff;
        border-left: 14px solid rgba(0,0,0,0);
        z-index: 1
    }

    .tempDressSalonBanner {
        margin-top: 86px
    }

    .tempDressBanner {
        padding: 25px 54px 25px 30px;
        flex-direction: row;
        gap: 51px;
        justify-content: space-between
    }

    .tempDressBannerHead {
        width: clamp(271px,(100vw - 375px)*.39342723 + 271px,690px)
    }

    .tempDressBannerTitle {
        margin-top: 17px
    }

    .tempDressBannerText {
        margin-top: 12px
    }

    .tempDressBannerImage img {
        width: clamp(271px,(100vw - 375px)*.0976525822 + 271px,375px)
    }

    .tempVenueNav {
        margin-top: 131px
    }

    .tempVenueCeremonyIntro {
        padding-top: 156px
    }

    .tempVenueCeremonyIntroBody {
        margin-top: 88px
    }

    .tempVenueCeremonyIntroFoot {
        max-width: 796px;
        margin: 0 auto;
        margin-top: 73px;
        -webkit-column-gap: 83px;
        -moz-column-gap: 83px;
        column-gap: 83px
    }

    .tempVenueCeremonyContents {
        margin-top: 111px
    }

    .tempVenueCeremonyContent#Shinto::before {
        left: inherit;
        right: 0
    }

    .tempVenueCeremonyContainer {
        display: flex;
        align-items: flex-start
    }

    .tempVenueCeremonyContainer[data-item=Shinto] {
        flex-direction: row-reverse
    }

    .tempVenueCeremonyContainer[data-item=Shinto] .tempVenueCeremonyContentImage {
        flex-direction: row-reverse
    }

    .tempVenueCeremonyContentWrap .tempVenueCeremonyContentTitle {
        padding-right: 9px
    }

    .tempVenueCeremonyContentWrap .tempVenueCeremonyDesc {
        margin-top: 20px;
        padding-right: 27px
    }

    .tempVenueCeremonyContentWrap[data-item=Shinto] .tempVenueCeremonyTitle {
        padding-left: 27px
    }

    .tempVenueCeremonyContentWrap[data-item=Shinto] .tempVenueCeremonyContentTitle {
        padding-left: 27px;
        padding-right: 0
    }

    .tempVenueCeremonyContentWrap[data-item=Shinto] .tempVenueCeremonyDesc {
        padding-left: 27px;
        padding-right: 0
    }

    .tempVenueCeremonyContentWrap[data-item=Shinto] .tempVenueCeremonySpecification {
        padding-left: 27px;
        padding-right: 0
    }

    .tempVenueCeremonyBody {
        margin-top: 21px
    }

    .tempVenueCeremonySpecificationList {
        -webkit-column-gap: 32px;
        -moz-column-gap: 32px;
        column-gap: 32px
    }

    .tempVenueCeremonyContentImage {
        margin: 0;
        width: clamp(375px,(100vw - 375px)*.4779342723 + 375px,884px)
    }

    .tempVenueCeremonyFoot {
        margin: 0 auto;
        margin-top: 54px;
        width: clamp(301px,(100vw - 375px)*.8441314554 + 301px,1200px)
    }

    .tempVenueCeremonySlider .swiper-button-next,.tempVenueCeremonySlider .swiper-button-prev {
        width: clamp(40px,1vw + 1vh,40px);
        height: clamp(40px,1vw + 1vh,40px)
    }

    .tempVenueCeremonySlider .swiper-button-next {
        right: 20.8%
    }

    .tempVenueCeremonySlider .swiper-button-prev {
        left: 20.8%
    }

    .tempVenueBanquetIntroFoot {
        -webkit-column-gap: 35px;
        -moz-column-gap: 35px;
        column-gap: 35px;
        margin-top: 74px
    }

    .tempVenueBanquetIntroTitle {
        gap: 9px
    }

    .tempVenueBanquetIntro::before {
        top: 176px
    }

    .tempVenueBanquetIntro {
        padding-top: 285px
    }

    .tempVenueBanquetIntroBody {
        margin-top: 80px
    }

    .tempVenueBanquetBody {
        margin-top: 40px
    }

    .tempVenueBanquetContents>*+* {
        margin-top: 120px
    }

    .tempVenueBanquetContents {
        margin-top: 89px
    }

    .tempVenueBanquetDesc {
        margin-top: 20px;
        line-height: 2
    }

    .tempVenueBanquetReport {
        margin-top: 52px
    }

    .tempVenueBanquetReportList {
        margin-top: 12px
    }

    .tempVenueBanquetSlider .swiper-button-next,.tempVenueBanquetSlider .swiper-button-prev {
        width: clamp(40px,1vw + 1vh,40px);
        height: clamp(40px,1vw + 1vh,40px);
        top: 51%
    }

    .tempVenueBanquetSlider .swiper-button-next {
        right: -3%
    }

    .tempVenueBanquetSlider .swiper-button-prev {
        left: -3%
    }

    .tempVenueIntro .commonPageNavList {
        width: 443px
    }

    .fixFoot {
        background-color: rgba(0,0,0,0);
        pointer-events: none
    }

    .fixFootWrap {
        justify-content: flex-end
    }

    .fixFootLinkWrap {
        display: none
    }

    .fixFootTop {
        pointer-events: auto
    }

    .fixFrontBanner {
        bottom: 19px;
        padding: 20px 22px;
        right: 24px
    }

    .fixFrontBannerClose {
        width: 41px;
        height: 41px;
        top: -23px;
        right: -22px
    }

    .fixFrontBannerClose img {
        width: 100%
    }

    .fixFrontBannerContentTitle {
        line-height: 29px;
        letter-spacing: .05em
    }

    .fixFrontBannerContentCta {
        gap: 10px
    }

    .tempBookingFlow {
        margin-top: 120px;
        font-size: 1.5rem
    }

    .tempBookingFlowImage {
        margin-top: 55px
    }

    .tempBookingForm {
        margin-bottom: 163px
    }

    .tempBookingForm .mw_wp_form {
        margin-top: 49px
    }

    .tempBookingForm .mw_wp_form_input {
        margin-top: 25px
    }

    .tempBookingForm .mw_wp_form .error {
        width: 100%;
        font-size: .875rem
    }

    .tempBookingFormInner {
        row-gap: 25px
    }

    .tempBookingFormRow {
        row-gap: 17px;
        flex-direction: row;
        align-items: center
    }

    .tempBookingFormHeading {
        -webkit-column-gap: 9px;
        -moz-column-gap: 9px;
        column-gap: 9px;
        width: 200px
    }

    .tempBookingFormBox {
        width: calc(100% - 200px)
    }

    .tempBookingFormRadio {
        -webkit-column-gap: 29px;
        -moz-column-gap: 29px;
        column-gap: 29px;
        row-gap: 16px
    }

    .tempBookingFormRadio .mwform-radio-field-text {
        font-size: .875rem;
        line-height: 1
    }

    .tempBookingFormRadioTo {
        -webkit-column-gap: 21px;
        -moz-column-gap: 21px;
        column-gap: 21px;
        row-gap: 0
    }

    .tempBookingFormText input[type=text] {
        font-size: .875rem;
        padding: 16px 24px
    }

    .tempBookingFormText input[type=text]::-webkit-input-placeholder {
        font-size: .875rem
    }

    .tempBookingFormText input[type=text]::-moz-placeholder {
        font-size: .875rem
    }

    .tempBookingFormText input[type=text]:-ms-input-placeholder {
        font-size: .875rem
    }

    .tempBookingFormText input[type=text]::-ms-input-placeholder {
        font-size: .875rem
    }

    .tempBookingFormText input[type=text]::placeholder {
        font-size: .875rem
    }

    .tempBookingFormText input[type=email] {
        font-size: .875rem;
        padding: 16px 24px
    }

    .tempBookingFormText input[type=email]::-webkit-input-placeholder {
        font-size: .875rem
    }

    .tempBookingFormText input[type=email]::-moz-placeholder {
        font-size: .875rem
    }

    .tempBookingFormText input[type=email]:-ms-input-placeholder {
        font-size: .875rem
    }

    .tempBookingFormText input[type=email]::-ms-input-placeholder {
        font-size: .875rem
    }

    .tempBookingFormText input[type=email]::placeholder {
        font-size: .875rem
    }

    .tempBookingFormDate {
        row-gap: 25px;
        -webkit-column-gap: 10px;
        -moz-column-gap: 10px;
        column-gap: 10px
    }

    .tempBookingFormDate input[type=text] {
        font-size: .875rem;
        padding: 16px 24px
    }

    .tempBookingFormDate input[type=text]::-webkit-input-placeholder {
        font-size: .875rem
    }

    .tempBookingFormDate input[type=text]::-moz-placeholder {
        font-size: .875rem
    }

    .tempBookingFormDate input[type=text]:-ms-input-placeholder {
        font-size: .875rem
    }

    .tempBookingFormDate input[type=text]::-ms-input-placeholder {
        font-size: .875rem
    }

    .tempBookingFormDate input[type=text]::placeholder {
        font-size: .875rem
    }

    .tempBookingFormDatePick {
        max-width: 301px
    }

    .tempBookingFormTime {
        width: 111px;
        -webkit-column-gap: 17px;
        -moz-column-gap: 17px;
        column-gap: 17px
    }

    .tempBookingFormTime::before {
        right: 10px
    }

    .tempBookingFormTime select {
        width: 100%;
        height: 70px;
        font-size: .875rem;
        padding-inline:16px}

    .tempBookingFormUnit {
        font-size: .875rem;
        padding-left: 0
    }

    .tempBookingFormPeople {
        width: 212px;
        margin-left: 0;
        -webkit-column-gap: 6px;
        -moz-column-gap: 6px;
        column-gap: 6px
    }

    .tempBookingFormPeople input[type=text] {
        width: 110px
    }

    .tempBookingFormName {
        width: -webkit-fit-content;
        width: -moz-fit-content;
        width: fit-content;
        font-size: .75rem
    }

    .tempBookingFormTextArea textarea {
        height: 185px;
        font-size: .875rem;
        padding: 16px 24px
    }

    .tempBookingFormTextArea textarea ::-webkit-input-placeholder {
        font-size: .875rem
    }

    .tempBookingFormTextArea textarea ::-moz-placeholder {
        font-size: .875rem
    }

    .tempBookingFormTextArea textarea :-ms-input-placeholder {
        font-size: .875rem
    }

    .tempBookingFormTextArea textarea ::-ms-input-placeholder {
        font-size: .875rem
    }

    .tempBookingFormTextArea textarea ::placeholder {
        font-size: .875rem
    }

    .tempBookingFormSelect {
        width: 429px;
        -webkit-column-gap: 17px;
        -moz-column-gap: 17px;
        column-gap: 17px
    }

    .tempBookingFormSelect::before {
        right: 10px
    }

    .tempBookingFormSelect select {
        height: 70px;
        font-size: .875rem;
        padding-inline:16px}

    .tempBookingFormSelectNumber {
        width: 222px;
        -webkit-column-gap: 17px;
        -moz-column-gap: 17px;
        column-gap: 17px
    }

    .tempBookingFormSelectNumber::before {
        right: 40px
    }

    .tempBookingFormSelectNumber select {
        width: 100%;
        height: 70px;
        font-size: .875rem;
        padding-inline:16px}

    .tempBookingFormPrivacy {
        margin-top: 109px
    }

    .tempBookingFormPrivacyLead {
        font-size: .875rem
    }

    .tempBookingFormPrivacyBox {
        margin-top: 13px;
        padding: 18px 25px
    }

    .tempBookingFormSubmitConfirm {
        margin-top: 50px
    }

    .mw_wp_form_confirm .tempBookingFormInner {
        row-gap: 31px
    }

    .mw_wp_form_confirm .tempBookingFormLabel {
        line-height: 17px
    }

    .mw_wp_form_confirm .tempBookingFormBox {
        font-size: .8125rem;
        line-height: 19px;
        width: calc(100% - 202px)
    }

    .mw_wp_form_confirm .tempBookingFormUnit {
        font-size: .8125rem;
        line-height: 19px
    }

    .mw_wp_form_confirm .tempBookingFormPeople {
        width: -webkit-fit-content;
        width: -moz-fit-content;
        width: fit-content;
        -webkit-column-gap: 0;
        -moz-column-gap: 0;
        column-gap: 0;
        margin-left: 101px
    }

    .mw_wp_form_confirm .tempBookingFormName {
        width: -webkit-fit-content;
        width: -moz-fit-content;
        width: fit-content;
        margin: 0;
        margin-right: 101px
    }

    .mw_wp_form_confirm .tempBookingFormSubmitConfirm {
        margin-top: 85px
    }

    .mw_wp_form_confirm .tempBookingFormSubmitConfirm button {
        height: 70px
    }

    .mw_wp_form_confirm .tempBookingForm {
        margin-top: 45px;
        margin-bottom: 160px
    }

    .mw_wp_form_confirm .tempBookingFormHeading {
        width: 202px;
        padding-top: 0
    }

    .tempBookingFlowImageConfirm {
        display: block;
        margin-top: 83px
    }

    .tempBookingFormThanks {
        margin-top: 70px
    }

    .tempBookingFormThanks .tempBookingInfo {
        margin-top: 60px
    }

    .tempBookingFormThanks .tempBookingInfoText {
        font-size: 1rem;
        line-height: 36px;
        letter-spacing: .1em
    }

    .tempBookingFormThanks .tempBookingInfoTel {
        margin-top: 21px;
        font-size: 2.5rem
    }

    .tempBookingFormThanksText {
        font-size: 1rem;
        line-height: 36px;
        letter-spacing: .1em
    }

    .tempBookingFormThanksToTOP {
        height: 70px;
        margin-top: 44px
    }
}

@media screen and (min-width: 992px) {
    .pageHeadWrap {
        padding:8px 0 63px;
        width: clamp(329px,(100vw - 375px)*.8178403756 + 329px,1200px);
        margin: 0 auto
    }

    .pageTitle {
        white-space: nowrap
    }

    .pageBridalTitle {
        gap: 29px
    }

    .pageBridalTitleText {
        line-height: 1.25;
        letter-spacing: .2em
    }

    .pageBridalTitleText--sub::after {
        top: -13px;
        width: 80px
    }

    .pageBridalBodyPc {
        margin-top: 0
    }

    .pagefootBridalSlider .pageBridalArticleThumb {
        aspect-ratio: 200/200;
        margin: 0;
        width: 100%
    }

    .pageBridalSwiper .swiper-button-next,.pageBridalSwiper .swiper-button-prev {
        display: none
    }

    .pageBridalSlider .swiper-slide {
        max-width: 200px
    }

    .pageBridalArticleHead {
        gap: 3px;
        margin-top: 7px
    }

    .pageBridalArticleThumb {
        height: 200px
    }

    .pageBridalFootCommon {
        display: none
    }

    .pageBridalWrapPc {
        display: flex;
        gap: 88px;
        padding-top: 120px;
        padding-bottom: 110px
    }

    .pageBridalHeadCtaPc {
        display: block;
        margin-top: 78px
    }

    .pageBridalHeadCtaPc .pageBridalLink {
        width: 198px;
        height: 40px;
        padding: 0
    }

    .wp-pagenavi {
        font-size: .875rem;
        margin-top: 28px
    }

    .wp-pagenavi .previouspostslink {
        width: 49px;
        height: 49px
    }

    .wp-pagenavi .nextpostslink {
        width: 49px;
        height: 49px
    }

    .wp-pagenavi .current {
        width: 33px;
        height: 33px
    }

    .pageFairHeadWrap {
        max-width: 1200px;
        width: 90%;
        margin: 0 auto;
        padding-bottom: 61px
    }

    .pageFairHeadWrap .pageTitle {
        margin-top: 0;
        padding-top: 26px
    }

    .pageFairHeadContainer {
        display: flex;
        justify-content: space-between;
        margin-top: 25px;
        gap: 287px
    }

    .pageFairHeadDesc {
        margin-top: 3px;
        margin-right: 8px;
        padding: 31px 0 34px 0
    }

    .pageFairHeadDesc::before {
        top: 9px;
        left: 9px
    }

    .pageFairHeadText {
        line-height: 2.2
    }

    .pageFairFoot {
        padding: 64px 0 113px 0
    }

    .pageFairFootWrap>*+* {
        margin-top: 0
    }

    .pageFairFootWrap {
        display: flex;
        justify-content: space-between
    }

    .pageFairFootItem {
        padding: 32px 41px 17px 41px
    }

    .pageFairFootItemInner {
        gap: 0;
        justify-content: space-between
    }

    .pageFairFootItemContent>*+* {
        margin-top: 4px
    }

    .pageFairFootItemText {
        line-height: 32px
    }

    .pageFairFootItemAnnotation {
        letter-spacing: .1em
    }

    .pageFairFootItemSmall {
        letter-spacing: .5em
    }

    .pageFairFootItemThanks {
        margin-top: 37px
    }

    main {
        padding-top: 70px
    }

    .headerWrapSp {
        display: none
    }

    .headerWrapPc {
        display: flex
    }

    .headerLogo {
        padding-top: 0;
        padding-bottom: 0;
        margin-top: -8px
    }

    .headerLogoLink {
        width: 150px;
        height: 30px;
        margin-top: 3px
    }

    .headerLogoText {
        line-height: 1
    }

    .headerNavigationButton {
        width: 70px;
        height: 70px;
        justify-content: center;
        padding-bottom: 24px
    }

    .headerNavigationButtonText {
        margin-top: -5px
    }

    .headerNavigationButtonLine::before {
        top: 11px
    }

    .headerNavigationButtonLine {
        width: 35px
    }

    .headerModalMenuNavigationListItem {
        display: flex;
        flex-direction: column
    }

    .headerGolablNav {
        padding-right: clamp(10px,1vw,28px)
    }

    .headerGolablNavList {
        gap: clamp(5px,.5vw,29px)
    }

    .headerGolablNavListItem a {
        font-size: clamp(.625rem,1vw,.75rem)
    }

    .footer {
        padding-bottom: 0
    }

    .footerContactContainer {
        margin-top: 51px;
        display: flex;
        justify-content: center;
        align-items: center
    }

    .footerContactList {
        gap: 20px
    }

    .footerContactBody {
        display: flex;
        align-items: center
    }

    .footerContactTitle {
        padding-right: 40px;
        padding-bottom: 2px;
        margin-top: 0
    }

    .footerContactReserve {
        border-top: none;
        border-left: 1px solid #6a6a6a;
        padding: 0 40px
    }

    .footerContactReserveInfoText .footerSp {
        display: none
    }

    .footerContactReserveInfoText .footerPc {
        display: block
    }

    .footerContactFoot {
        border-left: 1px solid #6a6a6a;
        border-top: none;
        padding-left: 40px;
        padding-top: 11px;
        padding-bottom: 11px
    }

    .footerContactCtaLink:nth-child(1)::before {
        background-image: none
    }

    .footerPcNav {
        display: block;
        padding-top: 66px
    }

    .footerPcNavListItem {
        display: flex;
        flex-direction: column
    }

    .footerPcNavListChild {
        margin-top: 11px
    }

    .footerPcNavListChild>*+* {
        margin-top: 14px
    }

    .footerPcNavListChild .footerPcNavListItem a {
        font-size: .75rem
    }

    .footerPcNavListItemRecruit {
        margin-top: 30px
    }

    .footerHeadWrap {
        display: flex;
        justify-content: space-between;
        padding-top: 13px;
        padding-bottom: 27px
    }

    .footerHeadSubContent {
        display: flex;
        align-items: center;
        gap: 24px;
        margin-top: 15px
    }

    .footerHeadLinkBtnList {
        display: flex;
        gap: 8px;
        align-items: flex-end;
        padding-bottom: 4px
    }

    .footerHeadLinkBtn {
        border: 1px solid #fff;
        width: 160px;
        height: 53px;
        display: flex;
        align-items: center;
        justify-content: center;
        font-family: "Zen Kaku Gothic New",sans-serif;
        font-size: .875rem;
        font-weight: 400;
        line-height: 20px;
        letter-spacing: .1em;
        text-align: center
    }

    .footerHeadLogo {
        flex-direction: row;
        gap: 23px
    }

    .footerHeadLogoText {
        letter-spacing: .1em
    }

    .footerHeadAddressText {
        letter-spacing: .08em
    }

    .footerHeadAddress {
        text-align: left;
        margin-top: 0
    }

    .footerHeadAddressLink {
        margin-top: 13px;
        display: block
    }

    .footerHeadExLink {
        margin-top: 0
    }

    .footerBodyTitle {
        letter-spacing: .1em;
        margin-top: -6px
    }

    .footerBodyLogo {
        margin-top: 12px
    }

    .footerBodyLogoLink {
        max-width: 184px
    }

    .footerBodyCopy {
        letter-spacing: .08em;
        margin-top: 6px
    }

    .commonPageNavList {
        --minimum: 200px
    }

    .commonHero {
        height: 940px
    }

    .tempAboutDesc {
        margin-top: 16px
    }

    .tempAboutHero {
        height: 850px;
        max-height: inherit
    }

    .tempAboutIntro .tempAboutImage {
        margin-top: 83px
    }

    .tempAboutIntroHead .tempAboutTitleText {
        letter-spacing: .2em
    }

    .tempAboutIntroHead .tempAboutTitleText:nth-child(2) {
        letter-spacing: .2em;
        line-height: 1.8
    }

    .tempAboutIntroHead .tempAboutTitleText:nth-child(3) {
        line-height: 1.8
    }

    .tempAboutIntroHead .tempAboutDesc {
        margin-top: 5px;
        line-height: 2.86
    }

    .tempAboutLoopItem {
        flex-direction: row
    }

    .tempAboutLoopItem:nth-child(2n) {
        flex-direction: row-reverse
    }

    .tempAboutLoopItem>* {
        width: clamp(375px,(100vw - 375px)*.2112676056 + 375px,600px)
    }

    .tempAboutLoopContents>*+* {
        margin-top: 56px
    }

    .tempAboutLoopContent::after {
        bottom: 0
    }

    .tempAboutLoopContent[data-item="01"] .tempAboutLoopContentInner {
        padding-left: 40px
    }

    .tempAboutLoopContent[data-item="02"] .tempAboutLoopContentInner {
        padding-left: 40px
    }

    .tempAboutLoopContent[data-item="02"] .tempAboutLoopContentDesc {
        line-height: 1.9
    }

    .tempAboutLoopContent[data-item="03"] .tempAboutLoopContentInner {
        padding-left: 40px
    }

    .tempAboutLoopContent[data-item="03"] .tempAboutLoopContentDesc {
        line-height: 2
    }

    .tempAboutLoopContentInner:before {
        display: none
    }

    .tempAboutLoopContentInner {
        display: flex;
        flex-direction: column;
        justify-content: center;
        background-color: #fbf9f7;
        height: 100%;
        padding: 40px 70px
    }

    .tempAboutLoopContentBody>*+* {
        margin-top: 22px
    }

    .tempAboutLoopContentImage {
        margin: 0
    }

    .tempAboutLoopContentImage img {
        height: 100%;
        -o-object-fit: cover;
        object-fit: cover
    }

    .tempAboutLoopContentImage::before {
        right: inherit;
        left: 0
    }

    .tempAboutLoopContentImage[data-item="02"]::before {
        right: 0;
        left: inherit
    }

    .tempAboutLoopContentCta {
        justify-content: flex-start
    }

    .tempAboutLoopContentCta[class] {
        margin-top: 31px
    }

    .tempAboutLoopIndexCta {
        justify-content: center
    }

    .tempAboutLoopIndexCta[class] {
        margin-top: 22px;
        margin-left: -13px
    }

    .tempAboutLink .tempAboutDesc {
        margin-top: 4px;
        line-height: 2.7
    }

    .tempAboutLink .tempAboutTitleText {
        letter-spacing: .2em;
        line-height: 1.4
    }

    .tempAboutLink .tempAboutTitleText:nth-child(2) {
        letter-spacing: .2em;
        line-height: 2.4
    }

    .tempAboutLink .tempAboutTitleText:nth-child(3) {
        line-height: 1.3
    }

    .tempAboutLinkList {
        --minimum: 240px
    }

    .tempAboutLinkItemContent {
        gap: 5px
    }

    .tempAboutLinkItemTitleText {
        font-size: 1.25rem
    }

    .tempAboutLinkItemTitleText--sub {
        font-size: .75rem
    }

    .tempAboutLinkItemGuide {
        letter-spacing: .2em
    }

    .tempAboutCta {
        padding: 84px 0
    }

    .tempAboutCtaWrap {
        flex-direction: row;
        gap: 60px
    }

    .tempAboutCtaContainer {
        flex-direction: row;
        margin-top: 14px
    }

    .tempAboutCtaImage {
        width: clamp(301px,(100vw - 375px)*.2807511737 + 301px,600px)
    }

    .tempAboutCtaHead {
        width: calc(100% - clamp(301px,(100vw - 375px)*.2807511737 + 301px,600px))
    }

    .tempAccessTitle {
        padding-bottom: 17px
    }

    .tempAccessImage {
        max-width: 580px;
        width: 100%;
        margin-top: 0
    }

    .tempAccessCarImage {
        width: 50%
    }

    .tempAccessCarBody .tempAccessImage {
        width: 50%
    }

    .tempAccessText {
        line-height: 2.28
    }

    .tempAccessCarText {
        width: 50%
    }

    .tempAccessCarBody .tempAccessTextWrap {
        width: 70%
    }

    .tempAccessIntro {
        padding: 120px 0 86px 0
    }

    .tempAccessIntroTitle {
        font-size: 1.25rem;
        line-height: 35px
    }

    .tempAccessIntroBody {
        display: flex;
        gap: 40px;
        margin-top: 61px
    }

    .tempAccessIntroFrame {
        max-width: 580px;
        width: 50%;
        --n: 6;
        --d: 19
    }

    .tempAccessIntroFrame.frame {
        max-width: 580px;
        width: 50%;
        --n: 6;
        --d: 19
    }

    .tempAccessIntroData {
        margin-top: 0;
        flex-grow: 1;
        width: 50%
    }

    .tempAccessIntroData>*+* {
        padding-top: 32px;
        padding-bottom: 30px
    }

    .tempAccessIntroDataItem {
        padding-bottom: 20px
    }

    .tempAccessIntroDataTitle {
        margin-right: 8px;
        flex-basis: 19%
    }

    .tempAccessIntroDataContent {
        flex-basis: 81%
    }

    .tempAccessIntroDataText {
        line-height: 2.285
    }

    .tempAccessCar {
        padding: 100px 0 100px 0
    }

    .tempAccessCarHead .tempAccessTitle {
        padding-bottom: 15px
    }

    .tempAccessCarBody {
        flex-direction: row;
        gap: 40px;
        margin-top: 44px;
        align-items: flex-start
    }

    .tempAccessTrain {
        padding-top: 100px
    }

    .tempAccessTrainHead .tempAccessTitle {
        padding-bottom: 15px
    }

    .tempAccessTrainContent {
        margin-top: 10px
    }

    .tempAccessTrainContent .tempAccessImage {
        margin-top: 54px
    }

    .tempAccessTrainContentNote {
        display: block
    }

    .tempAccessTrainBody {
        margin-top: 37px;
        display: flex;
        gap: 40px;
        align-items: flex-start
    }

    .tempCalendarTabWap {
        margin-top: 81px
    }

    .btnTempCalendarTab {
        height: 60px
    }

    .tempCalendarMainCntWrap {
        padding: 42px 0 90px 0
    }

    .tempCalendardateLoopCnt {
        padding-top: 36px;
        padding-bottom: 72px
    }

    .inDetailTempCalendardateLoopCntMainFx {
        padding: 20px;
        flex-wrap: nowrap;
        align-items: flex-start
    }

    .inDetailTempCalendardateLoopCntMainFx>*+* {
        margin-left: 50px
    }

    .thumbsDetailTempCalendardateLoopCntMain {
        margin: 0
    }

    .secDetailTempCalendardateLoopCntMain {
        padding: 0;
        width: calc(100% - 290px)
    }

    .h3DetailTempCalendardateLoopCntMain {
        line-height: 2.25
    }

    .h4DetailTempCalendardateLoopCntMain {
        margin-top: 14px
    }

    .txtTitleDetailTempCalendardateLoopCntMain {
        margin-top: 13px
    }

    .conditionsFairLoop {
        margin-top: 34px
    }

    .viewMoreBookingFairLoop {
        flex-direction: row;
        gap: 15px;
        margin-top: 15px;
        justify-content: flex-start
    }

    .tempCalendardateLoopButton {
        margin-top: 44px
    }

    .tempCalendardateLink {
        height: 40px
    }

    .archiveFaq {
        padding: 70px 0
    }

    .archiveFaqWrap {
        margin: 0 auto;
        margin-bottom: 125px;
        width: clamp(329px,(100vw - 375px)*.8178403756 + 329px,1200px)
    }

    .archiveFaqListWrap {
        width: clamp(329px,(100vw - 375px)*.6300469484 + 329px,1000px)
    }

    .archiveFaqTab {
        gap: .5%
    }

    .archiveFaqList>*+* {
        margin-top: 47px
    }

    .archiveFaqList {
        margin-top: 46px
    }

    .archiveFaqAccordion .archiveFaqAccordionIcon::before {
        width: 8px;
        height: 24px;
        top: 50%;
        left: 17%;
        -webkit-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%)
    }

    .archiveFaqAccordion.is-open .archiveFaqAccordionIcon::before {
        width: 8px;
        height: 24px;
        top: 50%;
        left: 99%;
        -webkit-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%)
    }

    .archiveFaqAccordionIcon::before {
        top: 50%;
        left: 50%;
        -webkit-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%)
    }

    .singleFairTabFx {
        gap: .5%
    }

    .singleFairMainLxn {
        padding-top: 50px
    }

    .thumbSingleFairMainLxnTop {
        max-width: 408px
    }

    .secSingleFairMainLxnTop {
        width: calc(100% - 445px)
    }

    .txtSingleFairMainLxnTopTime {
        margin-top: 15px
    }

    .singleFairMainLxnTopFx {
        flex-wrap: nowrap;
        justify-content: flex-start;
        gap: 37px
    }

    .singleFairTokuten {
        justify-content: center;
        gap: 44px
    }

    .h3SingleFairTokuten {
        letter-spacing: .3em
    }

    .tableSingleFairWap {
        margin-top: 48px
    }

    .tableSingleFairWap .tableSingleFair {
        width: 50%
    }

    .tableSingleFairWap th {
        text-align: center
    }

    .tableSingleFairWap tr {
        display: table-row
    }

    .tableSingleFairWap tr+tr {
        border-top: 1px solid #d1d1d1
    }

    .tableSingleFairWap tr>* {
        width: 50%
    }

    .singleFairGenreFxLxn {
        max-width: calc(50% - 5px);
        padding: 20px
    }

    .photoSingleFairGenreFxLxn {
        gap: 0;
        justify-content: space-between
    }

    .h3SingleFairGenreFx {
        margin-left: 20px
    }

    .txtSingleFairGenreFx {
        line-height: 1.75;
        margin-left: 20px
    }

    .otherSingleFairDate {
        padding-top: 18px;
        padding-bottom: 47px;
        margin-top: 49px
    }

    .otherSingleFairDateFxGrid {
        margin-top: 31px
    }

    .planNaviWap {
        margin-top: 120px
    }

    .secPlanNavi {
        padding-top: 8px
    }

    .ulBtnPlanNavis {
        justify-content: center;
        margin-top: 13px;
        cursor: pointer
    }

    .liBtnPlanNavis:last-child {
        margin-left: 0
    }

    .planAllCnt {
        margin-top: 30px
    }

    .txtPlanAllCnt {
        font-size: 14px;
        letter-spacing: .01em
    }

    .planAllLoopWap {
        padding-bottom: 138px
    }

    .planAllLoop {
        padding: 50px;
        padding-bottom: 80px
    }

    .planAllLoopTopFx {
        flex-direction: row;
        align-items: flex-start;
        justify-content: flex-start;
        gap: 40px;
        flex-wrap: nowrap
    }

    .planAllLoopBigWap {
        margin-top: 12px
    }

    .planAllLoopBigWap>*+* {
        margin-top: 81px
    }

    .thumbsPlanAllLoopTopFx {
        max-width: 300px;
        aspect-ratio: 300/300
    }

    .mainPlanAllLoopTopFx {
        width: 100%
    }

    .tokutenPlanLoopLxn {
        gap: 35px;
        padding-left: 16px;
        height: 50px
    }

    .tokutenPlanLoopLxn::before {
        top: 9px
    }

    .h3TokutenPlanLoop {
        width: 39px
    }

    .tableTokutenPlanLoop {
        margin-top: 31px;
        font-size: 12px;
        line-height: 1.2
    }

    .openPlanAllLoop {
        margin-top: 36px
    }

    .txtPlanLoopMain {
        line-height: 2.285
    }

    .h2TablePlanDetailCnt {
        text-align: left
    }

    .tablePlanDetailCnt {
        margin-top: 31px
    }

    .tablePlanDetailCnt tbody {
        display: flex;
        flex-wrap: wrap
    }

    .tablePlanDetailCnt table {
        border-top: none;
        margin-top: 15px
    }

    .tablePlanDetailCnt th {
        display: table-cell;
        vertical-align: middle
    }

    .tablePlanDetailCnt td {
        text-align: left;
        display: table-cell;
        vertical-align: middle
    }

    .tablePlanDetailCnt tr {
        flex-direction: row;
        width: 100%;
        border-top: 1px solid #d1d1d1;
        display: table
    }

    .tablePlanDetailCnt tr>* {
        padding: 12px;
        line-height: 1.8
    }

    .tablePlanDetailCnt .thTablePlanDetail {
        width: 17%
    }

    .tablePlanDetailCnt .tdTablePlanDetail {
        width: 33%
    }

    .readMorePlan {
        margin-top: 25px
    }

    .txtReadMorePlan {
        line-height: 2
    }

    .ulReadMorePlan {
        margin-top: 22px;
        margin-left: -9px;
        gap: 22px
    }

    .tempFoodHero {
        height: 850px
    }

    .tempFoodHero .commonHeroText {
        margin-top: 11px;
        margin-left: -1px
    }

    .tempFoodIntroHead {
        padding-top: 76px;
        width: clamp(300px,(100vw - 375px)*.103286385 + 300px,410px)
    }

    .tempFoodIntroHead .tempFoodDesc {
        line-height: 2.7;
        letter-spacing: .12em
    }

    .tempFoodIntroBody {
        margin: 0
    }

    .tempFoodIntroBody {
        gap: 34px;
        width: clamp(375px,(100vw - 375px)*.4779342723 + 375px,884px)
    }

    .tempFoodNav .commonPageNavListItem:nth-child(3) {
        border-left: none
    }

    .tempFoodNavWrap {
        max-width: 885px;
        margin: 0 auto
    }

    .tempFoodIntroWrap {
        width: clamp(300px,(100vw - 375px)*.9896713615 + 300px,1354px)
    }

    .tempFoodIntroContainer {
        display: flex;
        gap: 60px;
        justify-content: space-between
    }

    .tempFoodIntroContainer .tempFoodDesc {
        margin-top: 66px
    }

    .tempFoodMenuContent#Ja .tempFoodDesc {
        margin-top: 14px
    }

    .tempFoodMenuContent#Ch .tempFoodDesc {
        margin-top: 13px
    }

    .tempFoodMenuContent#Ch .tempFoodMenuImage {
        margin-top: -80px
    }

    .tempFoodMenuContent#Ca .tempFoodTitle {
        letter-spacing: .09em;
        text-align: justify
    }

    .tempFoodMenuContent#Ca .tempFoodDesc {
        margin-top: 11px
    }

    .tempFoodMenuContent#Ca .tempFoodMenuImage {
        margin-top: -87px
    }

    .tempFoodMenuContent#Fr .tempFoodDesc {
        margin-top: 20px
    }

    .tempFoodMenuSwiper .swiper-button-next,.tempFoodMenuSwiper .swiper-button-prev {
        top: 50.5%
    }

    .tempFoodMenuSwiper .swiper-pagination-bullets.swiper-pagination-horizontal {
        bottom: -7%
    }

    .tempFoodMenuSpecialImage img {
        width: 196px
    }

    .frontPageCommonTitleText--sub::before {
        width: 80px
    }

    .frontPageHero {
        height: auto
    }

    .frontPageIntroTitle {
        letter-spacing: .2em;
        padding-left: 8px;
        margin-top: -2px
    }

    .frontPageIntroFoot {
        margin-top: 14px;
        margin-left: 12px
    }

    .frontPageHeroCta {
        display: flex;
        gap: 1px
    }

    .frontPageCeremony .frontPageCommonTitleText {
        padding-left: 10px;
        letter-spacing: .24em
    }

    .frontPageCeremonyText[class] {
        margin-top: 28px
    }

    .frontPageCeremonyContentItem {
        gap: 91px
    }

    .frontPageCeremonyContentText {
        padding-top: 165px
    }

    .frontPageCeremonyContentTitle {
        white-space: nowrap
    }

    .frontPageBanquet .frontPageCommonTitleText {
        letter-spacing: .21em
    }

    .frontPageBanquet .frontPageCommonTitleText--sub {
        letter-spacing: .1em
    }

    .frontPageBanquetArticleDesc {
        margin: 16px auto 0;
        letter-spacing: .1em
    }

    .frontPageBanquetSwiper .swiper-button-next,.frontPageBanquetSwiper .swiper-button-prev {
        top: 40.5%
    }

    .frontPageBanquetSwiper .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
        width: 7px;
        height: 7px
    }

    .frontPagePlan .frontPageCommonTitleText {
        letter-spacing: .21em
    }

    .frontPagePlan .frontPageCommonTitleText--sub {
        letter-spacing: .1em
    }

    .frontPagePlanSlider .swiper-button-next,.frontPagePlanSlider .swiper-button-prev {
        display: block
    }

    .frontPagePlanSlider .swiper-slide {
        max-width: inherit;
        width: 100%
    }

    .frontPagePlanSlider .pageBridalArticleThumb {
        aspect-ratio: 267/267;
        height: auto
    }

    .frontPagePlanConListItem {
        font-size: .75rem;
        padding: 3px 6px
    }

    .frontPageBridal .frontPageCommonTitleText {
        letter-spacing: .21em
    }

    .frontPageBridal .frontPageCommonTitleText--sub {
        letter-spacing: .1em
    }

    .frontPageBridalSlider .swiper-slide {
        max-width: inherit;
        width: 100%
    }

    .frontPageBridalSlider .pageBridalArticleThumb {
        aspect-ratio: 267/267;
        height: auto
    }

    .frontPageBridalSlider .swiper-button-next,.frontPageBridalSlider .swiper-button-prev {
        display: block
    }

    .frontPageBridalSlider .swiper-button-next {
        left: -2%
    }

    .frontPageBridalSlider .swiper-button-prev {
        right: -2%
    }

    .pageFairIntroWrap {
        padding: 66px 0 119px 0
    }

    .pageFairIntroTitle {
        width: 168px;
        height: 60px
    }

    .pageFairIntroTitle img {
        -o-object-fit: contain;
        object-fit: contain
    }

    .pageFairIntroBody {
        margin-top: 29px
    }

    .pageFairIntroSlider .swiper-button-next,.pageFairIntroSlider .swiper-button-prev {
        bottom: 64%;
        width: 7px
    }

    .pageFairIntroSlider .swiper-button-next {
        left: -3%
    }

    .pageFairIntroSlider .swiper-button-prev {
        right: -3%
    }

    .pageFairIntroSlider .swiper-pagination-bullets.swiper-pagination-horizontal {
        bottom: 8%
    }

    .pageFairIntroSlider .swiper-pagination-bullets.swiper-pagination-horizontal {
        bottom: -17%
    }

    .pageFairIntroArticleHead {
        gap: 5px;
        margin-top: 11px
    }

    .pageFairIntroArticleHead .conditionsFairSingleLoop {
        margin-top: 8px
    }

    .pageFairIntroArticleTitle {
        margin-top: 4px
    }

    .pageFairIntroArticleTime {
        line-height: 1
    }

    .tempGuestHead>*+* {
        margin-top: 52px
    }

    .tempGuestBody {
        margin-top: 106px
    }

    .tempGuestTitle {
        gap: 12px
    }

    .tempGuestText {
        line-height: 32px
    }

    .tempGuestNav {
        margin-top: 120px
    }

    .tempGuestNavWrap {
        width: 667px
    }

    .tempGuestInfo {
        margin-top: 101px
    }

    .tempGuestInfoList {
        -webkit-column-gap: 60px;
        -moz-column-gap: 60px;
        column-gap: 60px;
        row-gap: 50px;
        -webkit-column-gap: 3vw;
        -moz-column-gap: 3vw;
        column-gap: 3vw;
        --minimum: 262px
    }

    .tempGuestInfoItemHead {
        width: 100%
    }

    .tempGuestInfoItemTitle {
        line-height: 1.9;
        padding-bottom: 4px
    }

    .tempGuestInfoItemText {
        text-align: center
    }

    .tempGuestDress {
        margin-top: 216px
    }

    .tempGuestDressBodyTitle {
        padding-bottom: 30px
    }

    .tempGuestDressContent {
        margin-top: 38px
    }

    .tempGuestDressContentWrapPc {
        display: flex;
        align-items: start;
        gap: 40px
    }

    .tempGuestDressContentWrapPc .tempGuestDressContentImage {
        max-width: 580px;
        width: 100%
    }

    .tempGuestDressContentWrapPc[data-order="2"] {
        margin-top: 35px
    }

    .tempGuestDressContentWrap>*+* {
        margin-top: 38px;
        margin-top: 45px
    }

    .tempGuestDressContentWrap+.tempGuestDressContentWrap {
        margin-top: 71px
    }

    .tempGuestDressContentWrapBanner[class] {
        margin-top: 48px
    }

    .tempGuestDressContentWrapBanner[class] .tempGuestDressContentImage {
        margin-top: 26px
    }

    .tempGuestDressContentHead>*+* {
        margin-top: 23px
    }

    .tempGuestDressContentTitle {
        letter-spacing: .2em
    }

    .tempGuestDressContentText {
        line-height: 15px
    }

    .tempGuestDressTable tbody th {
        flex-basis: 56%;
        font-size: 1rem;
        padding: 27px 5px 25px 14px
    }

    .tempGuestDressTable tbody td {
        padding-right: 2px;
        justify-content: flex-end;
        font-size: 1.25rem
    }

    .tempGuestDressSmall {
        padding-top: 18px
    }

    .tempGuestPrev {
        margin-top: 193px
    }

    .tempGuestPrevBody>*+* {
        margin-top: 73px
    }

    .tempGuestPrevBody {
        margin-top: 61px
    }

    .tempGuestPrevBodyTitle::before {
        width: 120px;
        bottom: -10px
    }

    .tempGuestPrevImageList {
        justify-items: center
    }

    .tempGuestPrevImageListCus {
        margin-top: 63px
    }

    .tempGuestPrevImageListCus .tempGuestPrevImageItem {
        gap: 17px
    }

    .tempGuestPrevImageListCus .tempGuestPrevImageItem:nth-child(1) {
        margin-left: 200px
    }

    .tempGuestPrevImageListCus .tempGuestPrevImageItem:nth-child(3) {
        margin-right: 200px
    }

    .tempGuestPrevImageItem {
        gap: 30px;
        width: 100%
    }

    .tempGuestPrevImageText {
        white-space: nowrap
    }

    .archiveReportIntroText {
        width: 90%;
        letter-spacing: .09em
    }

    .archiveReportList {
        --minimum: 238px
    }

    .archiveReportListItemTitle {
        font-size: .875rem;
        line-height: 2.2
    }

    .archiveReportListItemInfo {
        font-size: .75rem;
        margin-top: 5px
    }

    .archiveReportListItemImage {
        aspect-ratio: 360/242
    }

    .singleReportIntro {
        padding-top: 120px
    }

    .singleReportIntroTitle {
        margin: 0 auto;
        max-width: 710px
    }

    .singleReportIntroInfo::after {
        top: -19px;
        width: 200px
    }

    .singleReportIntroInfo {
        margin-top: 47px
    }

    .singleReportPoint {
        padding-top: 102px
    }

    .singleReportPointWrap {
        width: clamp(320px,(100vw - 375px)*1.0328638498 + 300px,1200px)
    }

    .singleReportPointList {
        margin-left: 10px
    }

    .singleReportPointListItem {
        line-height: 2.3
    }

    .singleReportPointGallery {
        --minimum: 300px;
        gap: 3px
    }

    .singleReportPointGalleryItem::before {
        width: 30px;
        height: 30px
    }

    .singleReportPointGalleryItem {
        width: -webkit-fit-content;
        width: -moz-fit-content;
        width: fit-content
    }

    .singleReportPointGalleryItem img {
        aspect-ratio: 398/263
    }

    .singleReportMessage {
        padding: 100px 0 105px 0
    }

    .singleReportTitleText {
        margin-top: 5px;
        font-size: 1rem
    }

    .singleReportMessageTitle {
        line-height: 1.8;
        margin-top: 55px;
        max-width: 711px;
        margin: 55px auto 0
    }

    .singleReportMessageThumb {
        aspect-ratio: 580/400;
        margin: 0;
        width: 100%
    }

    .singleReportMessageText {
        margin-top: 0;
        max-width: 580px;
        width: 100%;
        line-height: 2.29
    }

    .singleReportBody {
        margin: 0 auto;
        width: clamp(301px,(100vw - 375px)*.8441314554 + 301px,1200px)
    }

    .singleReportMessageWrapPc {
        display: flex;
        gap: 42px;
        align-items: flex-start;
        margin-top: 56px
    }

    .singleReportPlanner {
        margin-top: 80px;
        padding: 43px 0 57px 0
    }

    .singleReportPlannerTitle::before,.singleReportPlannerTitle::after {
        flex-grow: unset;
        width: 70px
    }

    .singleReportPlannerTitle::before {
        margin-right: 39px
    }

    .singleReportPlannerTitle::after {
        margin-left: 39px
    }

    .singleReportPlannerMessageTitle {
        margin-top: 28px
    }

    .singleReportPlannerMessageText {
        padding: 0 100px;
        margin-top: 20px
    }

    .singleReportMessageFootNav {
        gap: 28px;
        margin-top: 62px
    }

    .singleReportMessageFootLink {
        font-size: .875rem
    }

    .singleReportMessageFootPrev,.singleReportMessageFootNext {
        width: 49px;
        height: 49px
    }

    .singleReportOtherTitle {
        font-size: 1.25rem
    }

    .singleReportOtherSlider {
        margin-top: 30px
    }

    .singleReportOtherSlider .swiper-button-next,.singleReportOtherSlider .swiper-button-prev {
        width: 10px;
        height: 26px;
        top: 46%
    }

    .singleReportOtherSlider .swiper-button-next {
        left: -3%
    }

    .singleReportOtherSlider .swiper-button-prev {
        right: -3%
    }

    .singleReportOtherArticleLink {
        gap: 11px
    }

    .singleReportOtherArticleThumb {
        aspect-ratio: 361/238
    }

    .singleReportOtherArticleInfo {
        margin-top: 7px
    }

    .selectFairArchivesLxn>* {
        flex: 1 1 50%
    }

    .selectFairArchivesBox {
        position: relative;
        border: 1px solid #d1d1d1;
        display: flex;
        background-color: #fff;
        justify-content: space-between;
        font-size: .875rem;
        font-weight: 400;
        letter-spacing: .1em;
        text-align: left
    }

    .tempFairArchivesLxn {
        padding-top: 33px
    }

    .tempDressNav .commonPageNavListItem:nth-child(3) {
        border-left: none
    }

    .tempDressNavWrap {
        max-width: 885px
    }

    .tempDressHero {
        height: 850px
    }

    .tempDressContentWrap {
        display: flex;
        gap: 115px
    }

    .tempDressContentWrap[data-item=co] .tempDressCommonImage {
        margin: 0;
        margin-left: -100px
    }

    .tempDressContentItem {
        padding: 90px 0 90px 0
    }

    .tempDressContentItem#Wd .tempDressCommonTitleText--sub {
        line-height: 2.4
    }

    .tempDressContentItem#Wd .tempDressTitle {
        line-height: 2;
        margin-top: 19px
    }

    .tempDressContentItem#Wd .tempDressCommonDescText {
        line-height: 2
    }

    .tempDressContentItem#Wd .tempDressCommonHead {
        padding-top: 52px
    }

    .tempDressContentGalleryItem {
        aspect-ratio: 190/190;
        width: 100%
    }

    .tempDressSalonWrap {
        gap: 160px
    }

    .tempDressSalonGallery {
        --minimum: 180px
    }

    .tempDressSalonItemImage {
        aspect-ratio: 267/152
    }

    .tempVenueHero {
        height: 850px
    }

    .tempVenueCeremonyIntro::before {
        top: 56px
    }

    .tempVenueCeremonyIntroBody {
        display: flex;
        align-items: center;
        gap: 67px
    }

    .tempVenueCeremonyIntroBody .tempVenueTitle {
        letter-spacing: .2em;
        white-space: nowrap;
        width: clamp(300px,(100vw - 375px)*.0253521127 + 300px,327px)
    }

    .tempVenueCeremonyIntroBody .tempVenueDesc {
        margin-top: 13px;
        line-height: 2.8;
        letter-spacing: .11em;
        width: clamp(300px,(100vw - 375px)*.3286384977 + 300px,650px)
    }

    .tempVenueCeremonyContent#Chapel {
        padding-top: 65px
    }

    .tempVenueCeremonyContent#Chapel .tempVenueCeremonyContentTitle {
        line-height: 1.8
    }

    .tempVenueCeremonyContent#Chapel .tempVenueCeremonyContentImage {
        margin-top: 8px
    }

    .tempVenueCeremonyContent#Chapel .tempVenueCeremonyDesc {
        line-height: 2
    }

    .tempVenueCeremonyContent#Chapel .tempVenueCeremonySpecification {
        margin-top: 57px
    }

    .tempVenueCeremonyContent#Public {
        padding-top: 65px;
        margin-top: 150px
    }

    .tempVenueCeremonyContent#Public .tempVenueCeremonyContentTitle {
        line-height: 1.8
    }

    .tempVenueCeremonyContent#Public .tempVenueCeremonyDesc {
        line-height: 2
    }

    .tempVenueCeremonyContent#Public .tempVenueCeremonySpecification {
        margin-top: 96px
    }

    .tempVenueCeremonyContent#Shinto {
        padding-top: 69px;
        margin-top: 149px
    }

    .tempVenueCeremonyContent#Shinto .tempVenueCeremonyContentTitle {
        line-height: 1.8
    }

    .tempVenueCeremonyContent#Shinto .tempVenueCeremonyDesc {
        line-height: 2
    }

    .tempVenueCeremonyContainer[data-item=Shinto] .tempVenueCeremonyContentImage {
        margin-top: 7px
    }

    .tempVenueCeremonyContainer[data-item=Public] .tempVenueCeremonyContentImage {
        margin-top: 8px
    }

    .tempVenueCeremonyContentWrap .tempVenueCeremonyContentTitle {
        padding-right: 18px
    }

    .tempVenueCeremonyContentWrap .tempVenueCeremonyDesc {
        padding-right: 53px
    }

    .tempVenueCeremonyContentWrap[data-item=Shinto] .tempVenueCeremonyTitle {
        padding-left: 53px
    }

    .tempVenueCeremonyContentWrap[data-item=Shinto] .tempVenueCeremonyContentTitle {
        padding-left: 53px;
        padding-right: 0
    }

    .tempVenueCeremonyContentWrap[data-item=Shinto] .tempVenueCeremonyDesc {
        padding-left: 53px;
        padding-right: 0
    }

    .tempVenueCeremonyContentWrap[data-item=Shinto] .tempVenueCeremonySpecification {
        margin-top: 31px;
        padding-left: 53px;
        padding-right: 0
    }

    .tempVenueCeremonySlider .swiper-button-next,.tempVenueCeremonySlider .swiper-button-prev {
        top: 50.5%
    }

    .tempVenueCeremonySlider .swiper-pagination-bullets.swiper-pagination-horizontal {
        bottom: -7.4%
    }

    .tempVenueBanquetIntroItemImage {
        aspect-ratio: 212/212;
        width: 100%
    }

    .tempVenueBanquetIntroTitleText--sub {
        margin-top: 5px
    }

    .tempVenueBanquetIntroBody {
        display: flex;
        align-items: center;
        gap: 67px
    }

    .tempVenueBanquetIntroBody .tempVenueTitle {
        white-space: nowrap;
        letter-spacing: .2em;
        width: clamp(300px,(100vw - 375px)*.1089201878 + 300px,416px)
    }

    .tempVenueBanquetIntroBody .tempVenueDesc {
        margin-top: 3px;
        line-height: 2.8;
        width: clamp(300px,(100vw - 375px)*.3286384977 + 300px,650px)
    }

    .tempVenueBanquetWrap {
        display: flex;
        padding: 70px 0 61px 0;
        gap: 50px
    }

    .tempVenueBanquetWrap::before {
        content: "";
        position: absolute;
        top: 0;
        left: -50px;
        width: 100%;
        height: 100%;
        background-color: #fbf9f7
    }

    .tempVenueBanquetWrap[data-item=Villa] {
        padding-top: 91px
    }

    .tempVenueBanquetWrap[data-item=Delle] {
        flex-direction: row-reverse
    }

    .tempVenueBanquetWrap[data-item=Delle]::before {
        left: initial;
        right: -50px
    }

    .tempVenueBanquetWrap[data-item=Delle] .tempVenueBanquetReportList {
        margin-top: 10px
    }

    .tempVenueBanquetWrap[data-item=La] {
        flex-direction: row-reverse
    }

    .tempVenueBanquetWrap[data-item=La]::before {
        left: initial;
        right: -50px
    }

    .tempVenueBanquetWrap[data-item=Costa] .tempVenueBanquetDesc {
        margin-top: 16px
    }

    .tempVenueBanquetWrap[data-item=Costa] .tempVenueBanquetReportList {
        margin-top: 17px
    }

    .tempVenueBanquetContentWrap {
        position: relative;
        width: clamp(300px,(100vw - 375px)*.1098591549 + 300px,417px)
    }

    .tempVenueBanquetTitle {
        line-height: 1.125;
        gap: 2px
    }

    .tempVenueBanquetTitleText {
        white-space: nowrap
    }

    .tempVenueBanquetContent {
        padding: 0;
        background-color: inherit
    }

    .tempVenueBanquetReportItemImage {
        aspect-ratio: 150/80
    }

    .tempVenueBanquetFoot {
        margin-top: 0
    }

    .tempVenueBanquetSlider {
        max-width: 660px;
        width: clamp(300px,(100vw - 375px)*.338028169 + 300px,660px)
    }

    .tempVenueBanquetSlider .swiper-pagination-bullets.swiper-pagination-horizontal {
        bottom: -32px
    }

    .fixFrontBannerContentTime {
        line-height: 1.42;
        margin-right: -14px
    }
}

@media screen and (min-width: 1200px) {
    .pageBridalWrapPc {
        gap:103px
    }

    .headerModalMenuNavigationList {
        gap: 45px
    }

    .headerGolablNavList {
        gap: clamp(10px,1.5vw,29px)
    }

    .footerPcNavList {
        gap: 28px
    }

    .footerBodyNavigationList {
        display: flex;
        justify-content: space-between
    }

    .tempAboutIntroHead {
        display: flex;
        justify-content: space-between
    }

    .tempAboutIntroHead .tempAboutTitle {
        width: calc(100% - clamp(301px,(100vw - 375px)*.3276995305 + 301px,650px))
    }

    .tempAboutIntroHead .tempAboutDesc {
        width: clamp(301px,(100vw - 375px)*.3276995305 + 301px,650px)
    }

    .tempAboutLoopContent::after {
        right: 68px;
        bottom: 5%
    }

    .tempAboutLoopContent[data-item="01"]::after {
        right: 1vw;
        bottom: 5%
    }

    .tempAboutLoopContent[data-item="02"]::after {
        right: 1vw;
        bottom: 5%
    }

    .tempAboutLoopContent[data-item="03"]::after {
        right: 1vw;
        bottom: 5%
    }

    .tempAboutTextContent {
        display: flex;
        justify-content: space-between
    }

    .tempAboutTextContent .tempAboutTitle {
        width: calc(100% - clamp(301px,(100vw - 375px)*.3276995305 + 301px,650px))
    }

    .tempAboutTextContent .tempAboutDesc {
        width: clamp(301px,(100vw - 375px)*.3276995305 + 301px,650px)
    }

    .tempAboutLinkList {
        --minimum: 291px;
        row-gap: 30px;
        -webkit-column-gap: 60px;
        -moz-column-gap: 60px;
        column-gap: 60px
    }

    .tempFoodMenuContent::before {
        height: clamp(491px,(100vw - 375px)*.0460093897 + 491px,540px)
    }

    .tempFoodSpecialItem {
        max-width: 273px
    }

    .tempFoodSpecialItem img {
        width: 273px;
        height: 200px
    }

    .frontPageCeremonyContentItem {
        gap: 91px
    }

    .frontPageReportArticle {
        display: flex;
        gap: 73px;
        align-items: center
    }

    .frontPageBannerTitle::before {
        left: 13%
    }

    .frontPageBannerTitle::after {
        right: 13%
    }

    .frontPageBannerTitle {
        flex-direction: row;
        align-items: center;
        justify-content: center
    }

    .archiveReportList {
        --minimum: 290px
    }

    .singleReportPointWrap {
        width: clamp(320px,(100vw - 375px)*.8450704225 + 300px,1200px);
        padding: 0
    }

    .tempDressSalonGallery {
        --minimum: 200px
    }

    .tempVenueCeremonyIntroBody {
        gap: 223px
    }

    .tempVenueBanquetIntroBody {
        gap: 134px
    }

    .tempVenueBanquetWrap {
        gap: 103px
    }

    .tempVenueBanquetWrap::before {
        left: -100px
    }

    .tempVenueBanquetWrap[data-item=Delle]::before {
        left: initial;
        right: -100px
    }

    .tempVenueBanquetWrap[data-item=La]::before {
        left: initial;
        right: -100px
    }

    .tempBookingFormDate {
        row-gap: 25px;
        -webkit-column-gap: 17px;
        -moz-column-gap: 17px;
        column-gap: 17px
    }

    .tempBookingFormPeople {
        margin-left: 62px;
        -webkit-column-gap: 18px;
        -moz-column-gap: 18px;
        column-gap: 18px
    }

    .pcNone {
        display: none
    }

    .pcBlock {
        display: block
    }
}

@media screen and (min-width: 1300px) {
    .tempAboutLoopContent[data-item="01"]::after {
        right:4vw;
        bottom: 5%
    }

    .tempAboutLoopContent[data-item="02"]::after {
        right: 4vw;
        bottom: 5%
    }

    .tempAboutLoopContent[data-item="03"]::after {
        right: 4vw;
        bottom: 5%
    }
}

@media screen and (min-width: 1400px) {
    .footerPcNavList {
        gap:50px
    }

    .tempAboutLoopContent::after {
        right: 68px;
        bottom: 42px
    }

    .tempAboutLoopContent[data-item="01"] .tempAboutLoopContentInner {
        padding: 88px 68px 94px 72px
    }

    .tempAboutLoopContent[data-item="02"] .tempAboutLoopContentInner {
        padding: 74px 68px 94px 72px
    }

    .tempAboutLoopContent[data-item="03"] .tempAboutLoopContentInner {
        padding: 88px 68px 94px 72px
    }

    .tempAboutLoopContentInner {
        justify-content: flex-start;
        padding: 88px 68px 94px 72px
    }

    .tempFoodMenuContent::before {
        top: 2%;
        height: clamp(491px,(100vw - 375px)*.0460093897 + 491px,540px);
        left: 50%;
        -webkit-transform: translate(-50%, 0);
        transform: translate(-50%, 0)
    }

    .tempDressSalonGallery {
        --minimum: 255px
    }

    .tempDressItem {
        max-width: 267px
    }

    .tempVenueCeremonySpecification {
        display: flex;
        align-items: center;
        gap: 37px;
        margin-top: 45px
    }

    .tempVenueCeremonySpecificationListWrap {
        margin-top: 0
    }
}

@media screen and (min-width: 1920px) {
    .frontPageBanquetSwiper .swiper-button-next {
        right:-28%
    }

    .frontPageBanquetSwiper .swiper-button-prev {
        left: -28%
    }
}

@media screen {
    [hidden~=screen] {
        display: inherit
    }

    [hidden~=screen]:not(:active):not(:focus):not(:target) {
        position: absolute !important;
        clip: rect(0 0 0 0) !important
    }
}

/*# sourceMappingURL=style.css.map*/
