/* reset */
@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Mina&family=Noto+Sans+JP:wght@400;500;600;700&family=Zen+Kaku+Gothic+Antique:wght@500;700&family=Zen+Old+Mincho:wght@500;600;700&display=swap');

html,
body,
div,
span,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
abbr,
address,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
samp,
small,
strong,
sub,
sup,
var,
b,
i,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section,
summary,
time,
mark,
audio,
video {
    margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
    font-size: 100%;
    vertical-align: baseline;
    background: transparent;
}

* {
    -webkit-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
    min-width: 0;
    min-height: 0;
}

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

html {
    font-size: 62.5%;
    scroll-behavior: smooth;
}

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

nav ul {
    list-style: none;
}

blockquote,
q {
    quotes: none;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
    content: '';
    content: none;
}

a {
    margin: 0;
    padding: 0;
    font-size: 100%;
    vertical-align: baseline;
    background: transparent;
    text-decoration: none;
    cursor: pointer;
}

body {
    font-size: 1.4rem;
    line-height: calc(33/14);
    color: #333333;
    font-family: "Noto Sans JP", sans-serif;
    word-break: break-word;
    font-weight: 500;
    letter-spacing: 0.1em;
}

/*remove highlight color touch on mobile*/
input,
textarea,
button,
select,
div,
a,
span {
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

a,
input,
div,
select,
textarea,
img,
button {
    outline: none;
}

a:focus,
a:visited,
input:focus,
select:focus,
textarea:focus,
button:focus {
    outline: none !important;
    box-shadow: none;
}

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

li {
    list-style: none;
}

.dflex {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}

a {
    color: #000;
}



.container {
    width: calc(100% - 40px);
    max-width: 990px;
    margin: 0 auto;
}

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

.anchorlink {
    position: relative;
}

.anchorlink>div {
    position: absolute;
    top: -96.5px;
    left: 0;
}

@media (max-width: 768px) {
    .anchorlink>div {
        top: -114.73px;
    }
}

/* ==================================================================== */
/* ============================ Start Menu ============================ */
/* ==================================================================== */
header {
    background: #fff;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
    padding: 0px 0 0 40px;
    font-family: 'Zen Kaku Gothic Antique', sans-serif;
    font-weight: bold;
    /* box-shadow: rgba(149, 157, 165, 0.2) 0px 8px 24px; */
}

header .nav-menu {
    align-items: center;
    letter-spacing: 0.12em;
}

header .nav-menu .nav-list>li>a {
    margin-right: 40px;
    position: relative;
    transition: all 0.3s;
}

header .nav-menu .nav-list>li>a:hover {
    color: #b39d72;
}

header .nav-menu .nav-list>li>a::after {
    content: '';
    position: absolute;
    width: 1px;
    height: 30px;
    right: -25px;
    top: 35%;
    background-color: #000;
    transform: rotate(30deg);
}

header .nav-menu .nav-list>li>a.is-active {
    color: #b39d72;
}

header .nav-menu .nav-list>li:last-child>a::after {
    display: none;
}

header .nav-menu .nav-item>a {
    font-weight: bold;
    padding: 36px 0;
    display: block;
    line-height: calc(24.5/14);
    letter-spacing: 0.12em;

}


header .nav-menu .sub-menu {
    flex-wrap: wrap;
}

header .nav-menu .sub-menu ul {
    display: flex;
    align-items: center;
}

header .nav-menu .sub-menu ul.menu-flex {
    align-items: center;

}

header .nav-menu .sub-menu li {
    margin-right: 25px;
}

header .nav-menu .sub-menu li a {
    align-items: center;
    transition: all 0.4s;
}
header .nav-menu .sub-menu li a:hover {
    color: #b39d72 !important;
}

header .nav-menu .sub-menu li a p {
    transition: all 0.4s;

}

header .nav-menu .sub-menu li a:hover p {
    color: #b39d72 !important;
}

header .nav-menu .sub-menu li a .info {
    margin: 0 20px;
    position: relative;
    padding-bottom: 16px;
}

header .nav-menu .sub-menu li a .info .store-name {
    font-family: 'Zen Old Mincho', serif;
    font-weight: 700;
    font-size: 1.262rem;
    color: #908db1;
    display: flex;
    align-items: center;
    line-height: calc(14.2/12.62);
    letter-spacing: 0.06em;
}

header .nav-menu .sub-menu li a .txt {
    font-size: 1.3rem;
    line-height: calc(22.75/13);
}

header .nav-menu .sub-menu li .txt-img {
    display: flex;
    align-items: center;
}

header .nav-menu .sub-menu li a .info.store-2 .store-name {
    color: #b9777d;
}

header .nav-menu .sub-menu li a .info.store-3 .store-name {
    color: #586a14;
}

header .nav-menu .sub-menu li a .info .store-name span {
    font-size: 2rem;
}

header .nav-menu .sub-menu .page-name {
    width: 100%;
    font-size: 1.3rem;
    font-weight: bold;
    margin-bottom: 25px;
}

header .nav-menu .sub-menu .page-name a {
    display: inline-block;
}

header .nav-menu .sub-menu .page-name a:hover {
    color: #b39d72;
}

header .nav-menu .sub-menu li a .info img {
    transition: all 0.4s;
    position: absolute;
    left: 0;
    padding-top: 8px;
}

header .nav-menu .sub-menu li a:hover .info img {
    margin-left: 10px;
}

header .nav-menu .sub-menu .person-baby {
    width: 53%;
    overflow-x: hidden;
}

header .nav-menu .sub-menu .person-right {
    width: 40.5%;
    overflow-x: hidden;
}

header .nav-menu .sub-menu .menu-person .person-other {
    width: 100%;
}

header .nav-menu .sub-menu .menu-person .tit-person {
    position: relative;
}

header .nav-menu .sub-menu .menu-person .tit-person::after {
    position: absolute;
    content: '';
    height: 1px;
    width: 100%;
    background-color: #000;
    top: 15px;
    left: 140px;
}

header .nav-menu .sub-menu .menu-person .tit-person span {
    background-color: #b39d72;
    font-size: 1.6rem;
    font-weight: bold;
    margin-bottom: 20px;
    line-height: calc(17/16);
    padding: 5px 20px;
    display: inline-block;
    color: #333333;
}

header .nav-menu .sub-menu .menu-person ul {
    align-items: center;
}

header .nav-menu .sub-menu .menu-person ul li a {
    display: flex;
    align-items: center;
}

header .nav-menu .sub-menu .menu-person ul li a.is-active p {
    color: #b39d72;
}

header .nav-menu .sub-menu .menu-person .txt-person {
    margin-left: 12px;
    font-size: 1.4rem;
    color: #534741;
    letter-spacing: 0.06em;
    line-height: calc(23.25/14);
}

header .nav-menu .sub-menu .person-baby ul li {
    width: 25%;
    margin-bottom: 24px;
    margin-right: 0;
}

header .nav-menu .sub-menu .person-right ul li {
    width: 30%;
    margin-bottom: 24px;
    margin-right: 0;
}

header .nav-menu .sub-menu .person-adult .tit-person::after {
    left: 110px;
}

header .nav-menu .sub-menu .person-other .tit-person::after {
    left: 78px;
}

header .first-users {
    background: #333333;
    width: 84px;
    height: 78px;
    color: #fff;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    transition: all 0.3s;
    border: 1px solid #fff;
}

header .first-users:hover {
    background-color: #b39d72;
}

header .first-users p {
    font-size: 1rem;
    margin-top: 5px;
    letter-spacing: 0.02em;
    line-height: calc(17.5/10);
    transition: all 0.3s;
}

header .nav-menu .nav-item.only-pc-1040 .sub-menu a {
    transition: all 0.4s;
}

header .nav-menu .nav-item.only-pc-1040 .sub-menu a:hover {
    text-decoration: underline;
}

header .nav-menu .nav-item.only-pc-1040.second .sub-menu a:hover {
    text-decoration: none;
}

/* footer */
footer {
    padding: 90px 0;
    background-color: #333333;
    color: #fff;
}

footer .logo-ft {
    margin-bottom: 30px;
}

footer ul li a,
footer ul li .box-sub {
    color: #fff;
    display: flex;
    align-items: center;
}

footer ul li a p,
footer ul li .box-sub p {
    margin-left: 6px;
    font-size: 1.5rem;
    letter-spacing: 0.18em;
    line-height: calc(37/15);
}
footer ul li a p,
footer ul li .box-sub p {
    margin-left: 4px;
}

footer ul li a p {
    transition: all 0.4s;
}

footer ul li a:hover p,
footer ul li a:hover {
    text-decoration: underline;
}


footer .menu-ft {
    width: 42%;
    font-family: 'Zen Kaku Gothic Antique', sans-serif;
    padding-top: 40px;
}

footer .menu-ft .menu-ft-bt {
    width: 100%;
    display: flex;
    justify-content: space-between;
    margin-top: 40px;
    flex-wrap: wrap;
    font-family: "Noto Sans JP", sans-serif;
    line-height: calc(27/14);
}

footer .menu-ft .sub-menu-ft {
    font-size: 1.3rem;
    letter-spacing: 0.02em;
    line-height: calc(29/13);
    list-style-type: disc;
    padding-left: 30px;
}

footer .menu-ft .sub-menu-ft li {
    list-style-type: disc;
}

footer .brand-ft {
    padding: 35px 0;
    border-bottom: 2px solid #5B5B5B;
    border-top: 2px solid #5B5B5B;
}

footer .brand-ft a {
    display: inline-block;
    transition: all 0.3s;
    position: relative;
    z-index: 1;
    margin: 1%;
}
@media (max-width: 768px) {
    footer .brand-ft a {
        margin: 3%;
    }
}

footer .brand-ft a:hover {
    opacity: 0.8;
}

footer .brand-ft p {
    font-family: 'Zen Kaku Gothic Antique', sans-serif;
    font-size: 1.6rem;
    line-height: calc(40/16);
    letter-spacing: 0.22em;
    margin-bottom: 10px;
    font-weight: bold;
}

footer .contact {
    margin-top: 40px;
}

footer .contact p {
    font-size: 1.4rem;
    letter-spacing: 0.04em;
    line-height: calc(29/14);
}

footer .contact .company-name {
    font-size: 1.5rem;
    letter-spacing: 0.22em;
    line-height: calc(33/15);
    font-weight: bold;
    font-family: 'Zen Kaku Gothic Antique', sans-serif;
}

footer .contact p.copy-r {
    font-size: 1.1rem;
    margin-top: 30px;
    line-height: calc(19/11);
    font-weight: 400;
}

footer .book-photo {
    width: fit-content;
    background-color: #333333;
    color: #fff;
    position: fixed;
    right: 30px;
    bottom: 2%;
    padding: 9px 16px;
    border-radius: 4px;
    z-index: 999;
    border: 1px solid#5B5B5B;
}

footer .book-photo h5 {
    font-size: 1.6rem;
    letter-spacing: 0.16em;
    text-align: center;
    line-height: calc(28/16);
    letter-spacing: 0.16em;
}

footer .book-photo ul {
    align-items: center;
}

footer .book-photo ul li:not(:last-child) {
    padding: 0 10px;
    height: fit-content;

}

footer .book-photo ul li:not(:last-child) a {
    display: flex;
    align-items: center;
    text-align: center;
    transition: all 0.3s;
}

footer .book-photo ul li:not(:last-child) a:hover {
    opacity: 0.8;
}

footer .book-photo ul li p {
    font-size: 1.3rem;
    line-height: 1.2;
    letter-spacing: 0.04em;
    color: #fff;
}

footer .book-photo ul li a {
    display: block;
    width: 100%;
    text-align: center;
    padding: 5px 10px;
}
@media (max-width: 768px) {
    footer .book-photo ul li a {
        padding: 0px;
    }
}

footer .book-photo ul li:nth-of-type(2) {
    border-left: 1px solid #c2c2c2;
    border-right: 1px solid #c2c2c2;
}


footer .book-photo ul li:last-child {
    background-color: #ab995b;
    border-radius: 4px;
}

footer .book-photo ul li:last-child p {
    font-size: 1.2rem;
    line-height: calc(21/12);
}

footer .book-photo ul li:last-child div {
    max-width: 80px;
    margin: auto;
    background-color: #fff;
    color: #333;
    font-size: 1.2rem;
    border-radius: 40px;
    margin-top: 2px;
    transition: all 0.4s;
    line-height: calc(21/12);
}

/* footer .book-photo ul li:last-child div:hover {
    background-color: #333;
    color: #fff;
} */

/* footer .book-photo ul li img {
    margin-right: 6px;
} */
footer .book-photo ul li img {
    margin-right: 1px;
    width: 20px;
}

.only-sp-1040 {
    display: none;
}

.only-pc-1040 {
    display: block;
}

@media (min-width: 1041px) {

    header .nav-menu .sub-menu {
        height: 0;
        overflow: hidden;
        transition: height 0.4s;
        display: flex;
        padding: 30px;
    }

    header .nav-menu .sub-menu {
        height: max-content;
        position: absolute;
        left: 0;
        right: 0;
        top: 6.5rem;
        background-color: rgba(365, 365, 365, 0.8);
        pointer-events: none;
        opacity: 0;
        transition: top 0.4s, opacity 0.3s;
        width: 100%;
        box-shadow: 0px 8px 16px rgba(0, 0, 0, 0.1);
    }

    header .nav-menu .sub-menu .sub-plan img {
        margin-right: 5px;
    }

    header .nav-menu .nav-item:hover .sub-menu {
        top: 96.5px;
        opacity: 1;
        pointer-events: initial;
        cursor: initial;
    }

    header .nav-menu .nav-item.first ul li a:hover p {
        text-decoration: underline;
    }

}

header .btn-bar {
    display: none;
}

header .nav-menu .nav-item.first .btn-link-camera {
    display: none;
}

header {
    position: fixed;
    width: 100%;
    top: 0;
    left: 0;
    z-index: 9999;
}

header .menu-ic {
    position: relative;
    z-index: 1;
}

header .sub-menu-sp-ic {
    position: absolute;
    right: 0;
    display: flex;
    flex-direction: column;
    width: 100px;
    padding: 10px 5px;
    border-radius: 5px;
    background-color: rgba(365, 365, 365, 0.8);
    box-shadow: 0 2px 1px rgba(0, 0, 0, .05), 0 0 1px rgba(0, 0, 0, .25);
    display: none;
}

header .menu-ic.active .sub-menu-sp-ic {
    display: block;
}

header .menu-ic.active .sub-menu-sp-ic a {
    font-size: 0.9rem;
}

header .menu-ic .sub-menu-sp-ic li {
    width: 100% !important;
    border-right: none;
    padding-bottom: 5px;
    border-bottom: 1px solid #e0e0e0;
}

header .menu-ic .sub-menu-sp-ic li:last-child {
    padding-bottom: 0;
    border-bottom: none;
}

@media (max-width: 1140px) {
    header.bg-header {
        background-color: rgba(365, 365, 365, 0.8);
    }

    header.bg-header.active-bg {
        background-color: rgba(365, 365, 365, 1);
    }

    header * {
        color: #333333;
    }

    .only-sp-1040 {
        display: block;
    }

    .only-pc-1040 {
        display: none;
    }

    header {
        padding: 10px 5px 10px;
    }


    header h1 {
        width: 100%;
        text-align: center;
        height: 50px;
    }

    header .nav-menu .nav-link {
        display: none;
    }

    header .nav-menu .first-users {
        display: none;
    }

    header .btn-bar {
        position: absolute;
        right: 20px;
        top: 30.5px;
        transform: translateY(-50%);
    }

    header .btn-bar {
        padding: 0px 5px;
        display: flex;
        align-items: center;
        justify-content: center;
        width: 36px;
        cursor: pointer;
        flex-direction: column;
        font-size: 12px;
        color: #fff;
        background-color: #000;
        padding-top: 2px;
        border-radius: 50%;
        height: 36px;
        border: none;
    }

    header .btn-bar .box-line {
        width: 30px;
        height: 30px;
        position: relative;
    }

    header .btn-bar span {
        background-color: #fff;
        width: 18px;
        height: 2px;
        display: block;
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        transition: all 0.4s;
    }

    .btn-bar span.line-1 {
        transform: translate(-50%, -6px);
        transition: all 0.4s;
    }

    .btn-bar span.line-3 {
        transform: translate(-50%, 4px);
        transition: all 0.4s;
    }

    .btn-bar.isActive .line-1 {
        transform: translate(-50%, -50%) rotate(-45deg);
    }

    .btn-bar.isActive .line-2 {
        width: 0;
    }

    .btn-bar.isActive .line-3 {
        transform: translate(-50%, -50%) rotate(45deg);
    }

    .btn-bar .close {
        display: none;
    }

    .btn-bar.isActive .close {
        display: block;
    }

    .btn-bar.isActive .open {
        display: none;
    }

    header .nav-menu .nav-link {
        position: absolute;
        top: 59.45px;
        left: 0;
        background-color: #fff;
        width: 100%;
        height: 100vh;
        overflow-y: scroll;
        padding-bottom: 200px;
        padding-top: 30px;
        z-index: 2;
    }

    header .nav-menu .nav-list .nav-item {
        width: 100%;
    }

    header .nav-menu .nav-list .nav-item.active .btn-down a {
        color: #b39d72;
    }

    header .nav-menu .nav-list .nav-item.dropdown.is-active .btn-down a {
        color: #b39d72;
    }

    header .nav-menu .nav-list>li>a::after {
        display: none;
    }

    header .nav-menu .sub-menu {
        height: fit-content;
        overflow: hidden;
        transition: height 0.4s;
        display: flex;
        padding: 30px;
    }

    .txt-dflex {
        display: flex;
        align-items: center;
    }

    header .nav-menu .sub-menu {
        height: max-content;
        position: absolute;
        left: 0;
        right: 0;
        top: 6.5rem;
        background-color: rgba(365, 365, 365, 0.8);
        pointer-events: none;
        opacity: 0;
        transition: top 0.4s, opacity 0.3s;
        width: 100%;
    }

    header .nav-menu .nav-item .sub-menu {
        position: relative;
        top: unset;
        opacity: 1;
        pointer-events: initial;
        cursor: initial;
    }

    header .nav-menu .nav-list>li>a {
        margin-right: 0;
    }

    header .nav-link .btn-link-sp {
        font-weight: bold;
        max-width: 276px;
        margin: 0 auto 15px;
        text-align: center;
        font-size: 1.5rem;
        letter-spacing: 0.12em;
        line-height: calc(26.25/15);
        border: 1px solid #333333;
        color: #333333;
        border-radius: 40px;
        padding: 6px 0;
        background: url('../imgs/common/arr_left-sp.png');
        background-repeat: no-repeat;
        background-position: center right 15px;

    }

    header .nav-link .about-reservations {
        padding: 30px 20px;
        background-color: #f8f6f3;
        color: #333333;
    }

    header .nav-link .about-reservations h3 {
        text-align: center;
        font-weight: bold;
        font-size: 2.2rem;
        letter-spacing: 0.16em;
        line-height: calc(37.25/22);
        margin-bottom: 20px;
    }

    header .nav-link .reservations-link {
        background-color: #fff;
        box-shadow: 0 0 4px #000;
        display: block;
        text-align: center;
        padding: 10px 0;
        font-weight: bold;
        border-radius: 10px;
        background-image: url('../imgs/common/arr_wt.png');
        background-repeat: no-repeat;
        background-position: center right 15px;
        margin-bottom: 20px;
        transition: background-color 0.3s;
        transition: all 0.4s;

    }

    header .nav-link .reservations-link:hover {
        background: #333 url('../imgs/common/arr_left-sp.png');
        background-repeat: no-repeat;
        background-position: center right 10px;
    }

    header .nav-link .reservations-link:hover p {
        color: #fff !important;
    }

    header .nav-link .reservations-link p {
        font-size: 1.2rem;
        font-weight: bold;
        color: #333333;
        transition: all 0.4s;

    }

    header .nav-link .reservations-link p.book {
        font-size: 1.6rem;
        letter-spacing: 0.16em;
        line-height: calc(28/16);
    }

    header .nav-link .camera {
        background-color: #d3c6b1;
        padding: 30px 10px 20px;
        text-align: center;
        border-radius: 10px;
    }

    header .nav-link .camera .txt-desc {
        font-size: 1.2rem;
        line-height: calc(21/12);
        font-weight: bold;
        letter-spacing: 0;
    }

    header .nav-link .camera h4 {
        font-size: 1.6rem;
        letter-spacing: 0.12em;
        line-height: calc(28/16);
        display: inline-block;
        background: url('../imgs/common/camera.png');
        background-repeat: no-repeat;
        background-position: center left;
        padding-left: 25px;
    }

    header .nav-link .camera ul {
        margin-top: 10px;
    }

    header .nav-link .camera ul li {
        width: 32%;
        background-color: #fff;
        border-radius: 8px;
    }

    header .nav-link .camera ul li a {
        font-size: 1.3rem;
        line-height: calc(17/13);
        display: block;
        padding: 6px 0;
        font-weight: bold;
        /* background: url("../imgs/common/arr_left-sp.png"); */
        background-repeat: no-repeat;
        background-position: center right 5px;
        box-shadow: 0 0 2px #ccc;
        transition: all 0.4s;
    }

    header .nav-link .camera ul li a:hover {
        color: #fff;
        background: #333 url("../imgs/common/arr_wt.png");
        background-repeat: no-repeat;
        background-position: center right 5px;
        border-radius: 8px;

    }

    header .nav-link .first>a {
        text-align: center;
        font-size: 2.2rem;
        line-height: calc(37.25/22);
        letter-spacing: 0.16em;
        padding: 30px 0;
    }

    header .nav-menu .sub-menu .person-baby {
        width: 100%;
    }

    header .nav-menu .sub-menu .person-right {
        width: 100%;
    }

    header .nav-menu .nav-item .brd-last {
        border-bottom: 1px solid #c2c2c2 !important;
    }

    header .nav-menu .sub-menu .person-adult {
        width: 100%;
    }

    header .nav-menu .sub-menu .person-baby ul li {
        width: 30%;
    }

    header .nav-menu .sub-menu .person-baby ul li,
    header .nav-menu .sub-menu .person-right ul li {
        width: 50%;
        padding-bottom: 5px;
        border-bottom: 1px solid #c2c2c2;
        height: 50px;
    }

    header .nav-menu .sub-menu ul li.no-brd {
        border-bottom: none;
        margin-bottom: 0;
    }

    header .nav-menu .sub-menu .menu-person .tit-person::after {
        display: none;
    }

    header .nav-menu .tit-cam {
        font-size: 1.5rem;
    }

    header .nav-menu .nav-item {
        margin: 0 15px;
    }

    header .nav-menu .first {
        margin: 0;
    }

    header .nav-menu .sub-menu .menu-person .txt-person {
        margin-left: 8px;
        font-size: 1.2rem;
        letter-spacing: 0.02em;
    }

    header .nav-menu .sub-menu .menu-person .baby-kids,
    header .nav-menu .sub-menu .menu-person .adult,
    header .nav-menu .sub-menu .menu-person .other {
        padding: 10px;
    }

    header .nav-menu .tit-cam {
        text-align: center;
        font-size: 1.5rem;
        letter-spacing: 0.12em;
        line-height: calc(26.25/15);
        margin-top: 40px;
    }

    header .nav-menu .nav-item.first>a {
        border: none;
    }

    header .nav-menu .nav-item.first .btn-link-camera {
        font-size: 1.5rem;
        letter-spacing: 0.12em;
        line-height: calc(26.25/15);
        max-width: 340px;
        margin: 10px auto 40px;
        border: 1px solid #333333;
        border-radius: 40px;
        padding: 6px 0;
        background: url('../imgs/common/arr_left-sp.png');
        background-repeat: no-repeat;
        background-position: center right 15px;
        color: #333333;
        display: block;

    }

    header .nav-menu .nav-item>.btn-down {
        transition: all 0.4s;
        padding: 15px 0;
        border-top: 1px solid #c2c2c2;
        position: relative;
        cursor: pointer;
    }

    header .nav-menu .nav-item>.btn-down:hover {
        box-shadow: rgba(149, 157, 165, 0.2) 0px 8px 24px;
        background: #f8f8f8;
    }

    header .nav-menu .nav-item>.btn-down a {
        transition: all 0.4s;
    }

    header .nav-menu .nav-item>.btn-down:hover a {
        color: #b39d72;
    }

    header .nav-menu .nav-item>.btn-down:hover a .txt {
        color: #b39d72;
    }

    header .nav-menu .nav-item>.btn-down a.is-active {
        color: #b39d72;
    }

    header .nav-item .sub-menu ul li a.is-active {
        color: #b39d72;
        ;
    }

    /* header .nav-menu .nav-item > a.btn-down:hover .txt{
        color: red;
    }
    header .nav-menu .nav-item > a.btn-down:hover .icon-downArrow::after{
        border-color: red;
    } */
    header .nav-menu .nav-item>a {
        padding: 15px 0;
        border-top: 1px solid #c2c2c2;
    }

    header .nav-menu .nav-item:last-child>a {
        border-bottom: 1px solid #c2c2c2;

    }

    header .nav-menu .nav-item>a.btn-down.is-open {
        border-bottom: 1px solid #c2c2c2;
    }

    header .nav-menu .nav-item.first .sub-menu {
        padding: 0px;
    }

    header .nav-menu .nav-item .sub-menu {
        padding: 10px;
    }

    header .nav-menu .nav-item.dropdown .sub-menu {
        position: unset;
        opacity: 1;
        display: none;
    }

    header .nav-menu .sub-menu ul {
        flex-wrap: wrap;
        width: 100%;
    }

    header .nav-menu .sub-menu>ul>li {
        width: 100%;
        margin-right: 0;
        text-align: center;
        border-bottom: 1px dashed #c0b9b2;
        padding: 10px 0;
    }

    header .nav-menu .sub-menu>ul>li:last-child {
        border-bottom: none;
    }

    header .nav-menu .nav-item>a.btn-down {
        position: relative;
        display: flex;
        justify-content: space-between;
        align-items: center;
    }

    .icon-downArrow::after {
        transition: 0s linear;
    }

    .icon-downArrow::after {
        position: absolute;
        content: "";
        border: solid #333333;
        border-width: 0 2px 2px 0;
        display: inline-block;
        padding: 3px;
        right: 0;
        transform: rotate(-45deg);
        -webkit-transform: rotate(-45deg);
        transition: 0.2s linear;
        top: 45%;
    }

    header .nav-menu .nav-item.first>a {
        background: none;
        padding: 30px 0;
    }

    .btn-down.is-open .icon-downArrow::after {
        transform: rotate(45deg);
        -webkit-transform: rotate(45deg);
    }

    header .nav-menu .nav-item.first .sub-menu ul li>a {
        background: url('../imgs/common/arr_ic.png');
        background-repeat: no-repeat;
        background-position: center right 5px;
    }

    header .nav-menu .nav-item.first .sub-menu ul li:nth-of-type(2n+1)>a {
        background-position: center right 15px;
    }

    header .nav-menu .btn-link-sp,
    header .nav-menu .nav-item.first .btn-link-camera {
        transition: all 0.4s;
    }

    header .nav-menu .btn-link-sp:hover,
    header .nav-menu .nav-item.first .btn-link-camera:hover {
        color: #fff;
        box-shadow: 0 0 4px #ccc;
        background: #333 url('../imgs/common/arr_wt.png');
        background-repeat: no-repeat;
        background-position: center right 10px;

    }

    header .icon-menu {
        width: 100%;
        margin-top: 0px;
    }

    header.bg-header .icon-menu {
        display: none;
    }

    header .icon-menu li {
        text-align: center;
        font-size: 1rem;
        width: 23%;
        border-right: 1px solid #e0e0e0;
        letter-spacing: 0;
    }
    header .icon-menu li a{
        display: block;
    }

    header .icon-menu li:nth-of-type(2),
    header .icon-menu li:nth-of-type(3),
    header .icon-menu li:nth-of-type(4) {
        width: 18%;
    }

    header .icon-menu li:last-child {
        border-right: none;
    }
}

@media (min-width: 769px) {
    .only-sp {
        display: none !important;
    }

    .only-pc {
        display: block !important;
    }
}

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

    .only-pc {
        display: none !important;
    }

    body {
        font-size: 1.3rem;
        line-height: calc(29/13);
    }
}

@media (max-width: 768px) {
    footer .logo-ft .container a {
        width: 100%;
        text-align: center;
    }

    footer .logo-ft .container a>img.only-sp {
        margin: auto;
    }

    footer .logo-ft .menu-ft {
        width: 100%;
    }

    footer .logo-ft .menu-ft .menu-ft-left {
        width: 48%;
    }

    footer .logo-ft .menu-ft .menu-ft-right {
        width: 48%;
    }

    footer .logo-ft .menu-ft .menu-ft-bt li {
        width: 50%;
    }

    footer .brand-ft {
        border: none;
        padding: 10px 0;
        text-align: center;
    }

    header .btn-bar {
        top: 32.5px;
    }


}


/* main */
.main {
    margin-top: 100.5px;
    position: relative;
    color: #333333;
}

/* Hero */
.main .hero {
    width: 100%;
    height: calc(100vh - 100px);
    min-height: 650px;
    position: relative;
    padding: 10px 0 30px;
    z-index: 10;
    margin: 0 0 80px;
    pointer-events: none;
}

.main .hero:after {
    content: '';
    position: absolute;
    bottom: -80px;
    top: 50%;
    left: 0;
    width: 80.55%;
    display: block;
    background-color: #f0ebe4;
    z-index: -1;
}

.main .hero-tit {
    position: absolute;
    bottom: 15px;
    left: 1.1em;
    width: 21%;
    display: flex;
    flex-wrap: wrap;
    flex-direction: row-reverse;
    align-content: flex-end;
    align-items: flex-end;
    z-index: 2;
    font-size: min(3.5vw, 3.5rem);
    line-height: 1;
    letter-spacing: 0.16em;
    font-weight: bold;
    font-family: 'Zen Old Mincho', serif;

}

.main .hero-tit li {
    padding: 0.65em 0.65em 0.5em;
    writing-mode: vertical-lr;
    -ms-writing-mode: vertical-lr;
    -webkit-writing-mode: vertical-lr;
    background: rgba(255, 255, 255, .8);
}

.main .hero-tit li:nth-of-type(1) {
    margin: 0 0 2em 0.8em;
}

.main .hero-wrap {
    padding: 0 0 0 21%;
    position: relative;
    z-index: 1;
}

.main .hero-slider .slick-slide {
    height: calc(100vh - 140px);
    min-height: 610px;
}

.main [class*="hero-slide_bg"] {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
    will-change: transform, opacity;
    transform-origin: center;
}

.main .hero-slide_bg1 {
    background: url("../imgs/top/slide-1.jpg") no-repeat center center/cover;
}

.main .hero-slide_bg2 {
    background: url("../imgs/top/slide-2.jpg") no-repeat center center/cover;
}

.main .hero-slide_bg3 {
    background: url("../imgs/top/slide-3.jpg") no-repeat center center/cover;
}

.main .hero-slider .slick-slide.is-active [class*="hero-slide_bg"] {
    opacity: 1;
    -webkit-animation: heroZoom 9s ease-out;
    animation: heroZoom 9s ease-out;
}

@-webkit-keyframes heroZoom {
    0% {
        -webkit-transform: scale(1.2) translateZ(0);
        transform: scale(1.2) translateZ(0);
    }

    100% {
        -webkit-transform: scale(1) translateZ(0);
        transform: scale(1) translateZ(0);
    }
}

@keyframes heroZoom {
    0% {
        -webkit-transform: scale(1.2) translateZ(0);
        transform: scale(1.2) translateZ(0);
    }

    100% {
        -webkit-transform: scale(1) translateZ(0);
        transform: scale(1) translateZ(0);
    }
}

.main .hero-slider .slick-dots {
    position: absolute;
    bottom: -20px;
    right: 7%;
    width: 93% !important;
    display: flex;
    justify-content: flex-end;
    height: auto !important;
}

.main .hero-slider .slick-dots li {
    width: 40px !important;
    height: 2px !important;
    background: #999999;
    overflow: hidden;
}

.main .hero-slider .slick-dots button {
    display: none !important;
}

.main .hero-slider .slick-dots li:after {
    content: '';
    position: absolute;
    top: 0;
    right: -100%;
    width: 100%;
    height: 100%;
    background: #333333;
    -webkit-transition: .8s;
    transition: .8s;
}

.main .hero-slider .slick-dots li.slick-active:after {
    right: 0;
    -webkit-animation: heroBar 3s linear both;
    animation: heroBar 3s linear both;
}

@-webkit-keyframes heroBar {
    0% {
        left: -100%;
    }

    100% {
        left: 0;
    }
}

@keyframes heroBar {
    0% {
        left: -100%;
    }

    100% {
        left: 0;
    }
}

@media (max-width: 768px) {
    .main .hero {
        height: 124vw;
        min-height: 1px;
        padding: 0;
        margin: 0 0 40px;
    }

    .main .hero:after {
        top: 60%;
        bottom: -40px;
    }

    .main .hero-tit {
        font-size: 4.53vw;
        bottom: 20%;
        left: -6%;
        width: 28%;
    }

    .main .hero-tit li:nth-of-type(1) {
        margin: 0 0 2em 0.5em;
    }

    .main .hero-wrap {
        padding: 0 0 0 10%;
    }

    .main .hero-slider .slick-slide {
        /* height: 124vw; */
        height: 124vw !important;
        min-height: 1px;
    }

    .main .hero-slide_bg1 {
        background: url("../imgs/top/slide-1-sp.jpg") no-repeat center center/cover;
    }

    .main .hero-slide_bg2 {
        background: url("../imgs/top/slide-2-sp.jpg") no-repeat center center/cover;
    }

    .main .hero-slide_bg3 {
        background: url("../imgs/top/slide-3-sp.jpg") no-repeat center center/cover;
    }

    .main .hero-slider .slick-dots {
        bottom: -12px;
        right: 7px;
    }

    .main .hero-slider .slick-dots li {
        width: 30px !important;
    }
}


.title {
    font-size: 3.4rem;
    line-height: calc(65.25/34);
    letter-spacing: 0.16em;
    font-family: 'Zen Old Mincho', serif;
}

.center {
    text-align: center;
}

.main .rate .rate-slider {
    margin-top: 60px;
}

.main .rate .rate-slider .slick-list {
    padding: 10px 0;
}

.main .rate .slide .es-items,
.main .rate .slide .es-items-inner {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.main .rate .slide .es-items {
    margin-bottom: 10px;
}

.main .rate .slide .es-text {
    color: #111827;
    font-size: 1.4rem;
    line-height: calc(22/14);
    word-break: break-word;
}

.main .rate .es-see-more {
    color: #000;
    font-weight: 700;
    margin-left: 5px;
    text-decoration: none;
}

.main .rate .es-text-container:hover .es-see-more {
    text-decoration: underline;
}

.main .rate .slide .es-username {
    color: #111827;
    font-size: 1.4rem;
    font-weight: 700;
    line-height: calc(16/14);
    margin-bottom: 5px;
    word-break: break-all;
}

.main .rate .slide .es-date {
    color: #9ca0ac;
    font-size: 1.2rem;
    line-height: calc(14/12);
}

.main .rate .slide .es-star {
    display: inline-block;
    margin-right: 6px;
}

.main .rate .slide .es-items .es-avatar {
    background: #111827;
    border-radius: 50%;
    color: #fff;
    height: 40px;
    margin-right: 10px;
    min-width: 40px;
    overflow: hidden;
    position: relative;
    width: 40px;
}

.es-box.cursor-pointer:hover {
    box-shadow: 0 0 10px rgba(0, 0, 0, .15);
}

.main .rate .slide .es-box {
    background-color: #fff;
    border: 1px solid #d6dae4;
    border-radius: 15px;
    box-shadow: 0 2px 1px rgba(0, 0, 0, .05), 0 0 1px rgba(0, 0, 0, .25);
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    overflow: hidden;
    position: relative;
    margin: 0 10px;
    height: 400px;
    transition: all 0.3s;
}

.main .rate .slide .es-box:hover {
    box-shadow: 0 0 10px rgba(0, 0, 0, .15);
}

.main .rate .slick-next {
    right: -10px;
}

.main .rate .slick-prev {
    left: -10px;
}

.main .rate .slick-next,
.main .rate .slick-prev {
    fill-opacity: .5;
    background: #fff;
    border: 1px solid #d6dae4;
    border-radius: 50%;
    box-shadow: 0 2px 1px rgba(0, 0, 0, .05), 0 0 1px rgba(0, 0, 0, .25);
    cursor: pointer;
    height: 40px;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 40px;
    z-index: 10;
}

.main .rate .slick-next::before {
    content: '';
    border: solid black;
    border-width: 0 3px 3px 0;
    display: inline-block;
    padding: 3px;
    transform: rotate(-45deg);
    -webkit-transform: rotate(-45deg);
}

.main .rate .slick-prev::before {
    content: '';
    border: solid black;
    border-width: 0 3px 3px 0;
    display: inline-block;
    padding: 3px;
    transform: rotate(135deg);
    -webkit-transform: rotate(135deg);
}




.main .rate .slide .es-box-top {
    font-size: 1.4rem;
    padding: 25px;
}

.main .bg-txt {
    position: relative;
}

.main .bg-txt span {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    font-family: 'Zen Kaku Gothic Antique', sans-serif;
    line-height: calc(61.05/34);
    font-weight: 500;
}

.ft-old {
    font-family: 'Zen Old Mincho', serif;
}

.main .concept {
    position: relative;
}

.main .concept::after {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    width: 80.55%;
    height: 230px;
    z-index: -1;
    background-color: #f0ebe4;
}

.main .concept::before {
    content: '';
    position: absolute;
    right: 0;
    top: 0;
    width: 0%;
    height: 418px;
    z-index: -1;
    background-color: #f8f6f3;
    transition: 2s 0.5s;
    display: block;
}

.main .concept.is-view::before {
    width: 33.8%;

}

.main .concept .txt-desc {
    font-size: 2rem;
    font-weight: bold;
    line-height: calc(47.25/20);
    letter-spacing: 0.04em;
    text-align: center;
    margin: 20px 0 40px;
}

.main .btn-link {
    max-width: 254px;
    margin: 0 auto;
    display: block;
    text-align: center;
    font-size: 1.6rem;
    line-height: calc(28/16);
    letter-spacing: 0.12em;
    border: 1px solid #333;
    background: url('../imgs/top/arr_bl.png');
    background-repeat: no-repeat;
    background-position: center right 15px;
    border-radius: 40px;
    background-size: 10px 9px;
    font-weight: bold;
    padding: 10px 0;
    margin-bottom: 20px;
    transition: all 0.4s;
    background-color: #fff;
    font-family: 'Zen Kaku Gothic Antique', sans-serif;
}

.main .btn-link.bg-black {
    color: #fff;
    background: #333333 url('../imgs/top/arr_wt.png');
    background-position: center right 15px;
    background-repeat: no-repeat;
    border-color: transparent;
    background-size: 10px 9px;
}

.main .btn-link:hover {
    color: #fff;
    background: #333333 url('../imgs/top/arr_wt.png');
    background-position: center right 10px;
    background-repeat: no-repeat;
    border-color: transparent;
    background-size: 10px 9px;
}

.main .btn-link.bg-black:hover {
    color: #333333;
    border: 1px solid #333;
    background: #fff url('../imgs/top/arr_bl.png');
    background-repeat: no-repeat;
    background-position: center right 10px;
    background-size: 10px 9px;
}

.main .concept .box-img {
    padding: 0px 0 210px;
    position: relative;
    max-width: 1440px;
    margin: auto;
    margin-top: 120px;

}

.main .concept .box-img img.abs {
    position: absolute;
    top: 0;
    top: 32.1%;
    left: 53.125%;
}

.main .concept .box-img img.abs.img2 {
    top: 16.53%;
    left: 76.04%;
}

.main .tit-brd {
    padding-left: 25px;
    position: relative;
}

.main .tit-brd::after {
    content: '';
    position: absolute;
    left: 0;
    top: 50%;
    width: 20px;
    height: 1px;
    background-color: #333333;
}

.main .m-title {
    font-size: 2rem;
    line-height: calc(36/20);
    letter-spacing: 0.14em;
    font-weight: bold;
    margin-bottom: 30px;
    font-family: 'Zen Kaku Gothic Antique', sans-serif;
}

.main .md-title {
    font-size: 2.3rem;
    line-height: calc(40/25);
    letter-spacing: 0.22em;
    font-weight: bold;
    font-family: 'Zen Kaku Gothic Antique', sans-serif;
}

.main .store {
    padding-top: 60px;
    font-weight: bold;
}

.main .store {
    margin-bottom: min(15vw, 270px);
    background-color: #f8f6f3;
}

.main .store .container {
    position: relative;

}

.main .store .txt-bg {
    font-size: 18.7rem;
    letter-spacing: 0.08em;
    line-height: 1;
    color: #fff;
    width: 100%;
    transform: translateX(-60px);
}

.main .store .tit-store .desc {
    margin: 20px 0 60px;
    font-weight: 500;
}

.main .tit-store {
    width: 41.40%;
    position: relative;
}

.main .tit-store .m-title {
    margin-bottom: 10px;
}

.main .list-store {
    width: 48.28%;
    position: absolute;
    right: 0;
    top: 80px;
}

.main .list-store [class*="store-"] {
    background-color: #fff;
    margin-bottom: 24px;
}

.main .list-store [class*="store-"] .info-store {
    width: 43.6%;
    text-align: center;
}

.main .list-store .store-name {
    font-size: 1.4rem;
    line-height: 1;
    letter-spacing: 0.06em;
    margin-top: 15px;
    font-family: 'Zen Old Mincho', serif;
}

.main .list-store .store-name span {
    display: block;
    font-size: 2.8rem;
}

.main .list-store .info-store .desc {
    font-size: 1.7rem;
    line-height: calc(30.22/17);
    letter-spacing: 0.1em;
    font-family: 'Zen Kaku Gothic Antique', sans-serif;
}

.main .list-store .store-1 .info-store .desc {
    line-height: calc(25.72/17);
}

.main .list-store .info-store .desc span {
    font-size: 1.4rem;
}

.main .list-store .box-store {
    box-shadow: 0 0 4px #ccc;
    transition: all 0.4s;
    overflow: hidden;
}

/* .main .list-store .box-store:hover {
    box-shadow: 0 0 10px #333;
} */

.main .list-store .info-store {
    position: relative;
}

.main .list-store .info-store .abs-ic {
    position: absolute;
    right: 20px;
    bottom: 10px;
    transition: all 0.4s;
}

.main .list-store .box-store:hover .info-store .abs-ic {
    right: 10px;
}

.main .list-store .box-store figure {
    width: 56.4%;
    overflow: hidden;

}

.main .list-store .box-store figure img {
    width: 100%;
    height: 100%;
    transition: all 0.4s;
}

.main .list-store .box-store:hover figure img {
    transform: scale(1.2);
}

.clr-purple {
    color: #908db1;
}

.clr-red {
    color: #b9777d;
}

.clr-green {
    color: #586a14;
}

.main .store-campaign {
    overflow: hidden;
    position: relative;
}

.main .store-campaign .store-slide .slide {
    margin: 0 25px;
    position: relative;
    padding-bottom: 100px;
}

.main .store-campaign .store-slide .slide a {
    transition: all 0.3s;
 height: 330px;
 display: block;
}
@media (max-width: 769px) {
.main .store-campaign .store-slide .slide a {
 height: 210px;
}
}

.main .store-campaign .store-slide .slide a:hover {
    opacity: 0.7;
}

.main .store-campaign .store-slide .slide img {
    max-width: 100%;
 height: 100%;
object-fit: cover;
}

.main .store-campaign .store-slide .slide .info-slide {
    position: absolute;
    left: 6.6%;
    bottom: 0px;
    height: 125px;
    padding: 20px 30px;
    background-color: rgba(365, 365, 365, 0.8);
    width: fit-content;
}

.store-campaign h2 {
    margin-bottom: 60px;
}

.main .store-campaign {
    margin-bottom: 120px;
}

.main .store-campaign .store-slide .slide .time {
    font-size: 1.4rem;
    color: #000;
}

.main .store-campaign .store-slide .slide .desc {
    font-size: 1.8rem;
    line-height: calc(33/18);
    font-weight: bold;
    letter-spacing: 0.18em;
    -o-text-overflow: ellipsis;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    display: -webkit-box;
    overflow: hidden;
    text-overflow: ellipsis;
    height: 66px;
}

.main .store-campaign .btn-link {
    margin-top: 40px;
}

.main .store-campaign .slick-next,
.main .store-campaign .slick-prev {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    border: 1px solid #333333;
}

.main .store-campaign .slick-next {
    right: calc(50% - 500px);
    top: -90px;
}

.main .store-campaign .slick-prev {
    left: unset;
    right: calc(50% - 380px);
    top: -90px;

}

.main .store-campaign .slick-next::before,
.main .store-campaign .slick-prev::before {
    color: #000
}

.main .slide-count {
    width: fit-content;
    position: absolute;
    right: calc(50% - 450px);
    top: 18px;
    font-weight: bold;
    font-size: 1.4rem;
}

.main .plan {
    background: url('../imgs/top/bg-plan.jpg');
    padding: 140px 0;
    background-position: center top;
    margin-bottom: 100px;
}

.main .plan .sub-txt {
    margin: 50px 0;
    letter-spacing: 0.1em;
}

.main .plan .photograph .box-img {
    max-width: 1440px;
    margin: 0 auto;
    text-align: right;
    position: relative;
    padding-bottom: 130px;
    margin-bottom: 120px;
}

.main .plan .photograph .box-img .abs-img {
    position: absolute;
}

.main .plan .photograph .box-img .abs-img1 {
    left: 4.16%;
    bottom: 65px;
}

.main .plan .photograph .box-img .abs-img2 {
    left: 19.16%;
    bottom: 0;
    z-index: 2;
}

.main .plan .photograph .box-img .abs-img3 {
    left: 33.5%;
    bottom: 80px;
    z-index: 1;
}

.main .plan .photograph .box-img .abs-img4 {
    right: 16.3%;
    top: 0;
}

.main .plan .plan-info {
    padding: 80px 0;
    background: url("../imgs/top/bg-plan-w.png");
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    text-align: center;
}

.main .plan .mark-plan {
    font-size: 1.4rem;
    letter-spacing: 0.06em;
    background-color: #b39d72;
    color: #fff;
    font-weight: bold;
    padding: 0 10px;
}

.main .plan .plan-info>.md-title {
    margin: 20px 0 25px;
}

.main .plan .plan-info .txt-desc {
    margin-top: 20px;
}

.main .plan .plan-info .img {
    position: relative;
    margin-bottom: 40px;
    padding-bottom: 90px;
    text-align: left;
    padding-left: 8%;
}

.main .plan .plan-info .txt {
    padding: 40px;
    background-color: rgba(365, 365, 365, 0.8);
    position: absolute;
    bottom: 0;
    right: 8%;
    text-align: center;
}

.main .plan .plan-info .txt h3 {
    font-size: 2.6rem;
    line-height: calc(37.25/26);
    letter-spacing: 0.16em;
    font-family: 'Zen Old Mincho', serif;
}

.main .plan .plan-slide {
    margin-bottom: 60px;
}

.main .plan-list {
    margin-top: 130px;
}

.main .plan-list h2 {
    margin-bottom: 60px;
    letter-spacing: 0.22em;
    line-height: calc(40/34);
    font-family: 'Zen Kaku Gothic Antique', sans-serif;

}

.main .plan-list .list-img .box .txt {
    background-color: rgba(365, 365, 365, 0.8);
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    height: 138px;
}

.main .plan-list .list-img .box .txt span {
    position: absolute;
    left: 0;
    top: 0;
    font-size: 1.4rem;
    letter-spacing: 0.06em;
    background-color: #b39d72;
    color: #fff;
    font-weight: bold;
    padding: 0 10px;
    font-family: 'Zen Old Mincho', serif;
    line-height: 1.4;
    text-transform: capitalize;

}

.main .plan-list .list-img .box .txt p {
    font-size: 1.8rem;
    line-height: calc(30.62/18);
    letter-spacing: 0.16em;
    font-weight: bold;
    transition: all 0.4s;
    font-family: 'Zen Kaku Gothic Antique', sans-serif;
}

.main .plan-list .list-img .box .txt .abs-ic {
    position: absolute;
    bottom: 18px;
    right: 18px;
    transition: all 0.4s;
}

.main .plan-list .list-img .mt-part {
    margin-top: 45px;
}

.main .plan-list .list-img .mt-full {
    margin-top: 90px;
}

.main .plan-list .btn-link {
    margin-top: 60px;
}

.main .plan-list .list-img .box {
    transition: all 0.4s;
    height: fit-content;
    box-shadow: 0 0 4px #ccc;
}

.main .plan-list .list-img .box figure {
    overflow: hidden;
}

.main .plan-list .list-img .box figure img {
    transition: all 0.4s;

}

.main .plan-list .list-img .box:hover figure img {
    transform: scale(1.2);
}

.main .plan-list .list-img .box:hover .txt p {
    color: #b39d72;
}

.main .plan-list .list-img .box:hover .txt .abs-ic {
    right: 10px;
}

.main .costume {
    padding-top: 130px;
}

.main .costume .tit-dorekana {
    width: 48.78%;
}

.main .costume .tit-dorekana h2 {
    margin-bottom: 40px;
}

.main .costume .info-dorekana {
    width: 47%;
    margin-top: 200px;
    text-align: center;
}

.main .costume .info-dorekana .txt-desc {
    text-align: left;
    margin: 40px 0;

}

.main .dorekana-info {
    position: relative;
}

.main .dorekana-info::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 11.5%;
    background-color: #f0ebe4;
    z-index: -1;
}

.main .costume-info {
    padding-top: 50px;
    position: relative;
}

.main .costume-info h3 {
    line-height: calc(36/25);
    letter-spacing: 0.14em;
}

.main .costume .bg-txt span {
    padding-right: 25px;
    font-weight: bold;
    letter-spacing: 0.14em;
    line-height: calc(36/25);
}

.main .costume-info::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 80%;
    background-color: #f0ebe4;
    z-index: -1;
}

.main .costume-info .tit-brd::before {
    right: 10px;
    content: '';
    position: absolute;
    top: 50%;
    width: 20px;
    height: 1px;
    background-color: #333333;
}

.main .costume-info .info-block {
    margin-top: 40px;
    margin-bottom: 120px;
}

.main .costume-info .info-block .block-costume {
    background-color: #fff;
    box-shadow: 0 0 6px #ccc;
    text-align: center;
    width: 30.80%;

}

.main .costume-info .info-block .block-costume figure {
    overflow: hidden;
}

.main .costume-info .info-block .block-costume figure img {
    transition: all 0.3s;

}

.main .costume-info .info-block .block-costume:hover figure img {
    transform: scale(1.2);
}

.main .costume-info .info-block .block-costume:hover .btn-link.bg-black {
    color: #333333;
    border: 1px solid #333;
    background: #fff url('../imgs/top/arr_bl.png');
    background-position-x: 0%;
    background-position-y: 0%;
    background-repeat: repeat;
    background-repeat: no-repeat;
    background-position: center right 10px;
    background-size: 10px 9px;
}

.main .costume-info .info-block .block-costume .txt {
    padding: 40px 0;
}

.main .costume-info .info-block .block-costume .txt p {
    font-size: 1.6rem;
    letter-spacing: 0.1em;
    line-height: calc(32.86/16);
    font-weight: bold;
    margin-bottom: 18px;
}

.main .costume-info .info-block .block-costume .btn-link {
    max-width: 185px;
    font-size: 1.5rem;
    letter-spacing: 0.1em;
}

.main .staff {
    padding: 90px 0;
    position: relative;
    margin-top: 100px;
}

.main .staff::before {
    position: absolute;
    content: '';
    width: 0%;
    height: 80%;
    bottom: 0;
    left: 0;
    background-color: #f8f6f3;
    z-index: -2;
    transition: 2s 0.3s;
    display: block;
}

.main .is-view.staff::before {
    width: 80%;
}

.main .staff::after {
    position: absolute;
    content: '';
    width: 0%;
    height: 50%;
    top: 0;
    right: 0;
    z-index: -1;
    background-color: #f0ebe4;
    transition: 2s 0.5s;
    display: block;
}

.main .is-view.staff::after {
    width: 78%;
}

.main .staff .box-img {
    max-width: 1440px;
    margin: 35px auto 70px;
    position: relative;
    padding-left: 7%;
    padding-top: 46px;
}

.main .staff h2 {
    position: relative;
}

.main .staff h2::after {
    content: '';
    width: 1px;
    height: 0px;
    background-color: #333333;
    top: -120px;
    left: 50%;
    position: absolute;
    transition: 2s .3s;
    display: block;
}

.main .staff h2 span {
    font-family: 'Zen Old Mincho', serif;
    font-weight: bold;
    line-height: calc(65.25/34);
    letter-spacing: 0.16em;
}

.main .staff h2.is-view::after {
    height: 70px;
}

.main .staff .box-img .abs-img {
    position: absolute;
}

.main .staff .box-img .abs-img2 {
    top: 0;
    left: 52.76%;
}

.main .staff .box-img .abs-img3 {
    top: 200px;
    left: 70.8%;
}

.main .staff .box-img .abs-img4 {
    bottom: 0;
    left: 57.76%;
}

.main .staff .desc {
    font-weight: bold;
    max-width: 600px;
    margin: 0 auto 56px;
}

.main .notice {
    padding: 90px 0;
}

.main .notice .time-notice {
    display: flex;
    justify-content: flex-end;
    margin-top: 40px;
    flex-wrap: wrap;
}

.main .notice .time-notice .box-info {
    width: 72%;
}

.main .notice .time-notice ul li a {
    display: flex;
    align-items: center;
    font-size: 1.4rem;
    line-height: calc(63/14);
    letter-spacing: 0.06em;
    border-bottom: 1px solid #c2c2c2;

}

.main .notice .time-notice ul li a:hover p {
    opacity: 0.7;
}

.main .notice .time-notice ul li>a:hover span {
    opacity: 0.7;

}

.main .notice .time-notice p {
    height: 63px;
    font-weight: 400;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;

}

.main .notice .time-notice span {
    font-weight: bold;
    margin-right: 15px;
}

.main .notice .time-notice .btn-detail {
    margin-top: 30px;
    display: flex;
    justify-content: flex-end;
    align-items: center;
    font-size: 1.4rem;
    letter-spacing: 0.14em;
    transition: all 0.4s;
    width: fit-content;
    margin-left: auto;
    width: 100%;
}

.main .notice .time-notice .btn-detail:hover {
    text-decoration: underline;
}

.main .notice .time-notice .btn-detail img {
    margin-left: 12px;
}

.main .contact {
    padding: 90px 0 40px;
    background: url('../imgs/top/bg-contact.png');
    background-position: top left;
    position: relative;
}

.main .contact .contact-info {
    text-align: center;
    padding: 60px 0;
    background: url('../imgs/top/bg-w.png');
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    position: relative;
    clip-path: polygon(2.5% 0%, 97.5% 0%, 100% 3.5%, 100% 96%, 96% 100%, 3.5% 100%, 0% 96%, 0% 3.5%);
}

.main .contact::after {
    content: '';
    width: 1px;
    height: 0;
    background-color: #333333;
    top: 50px;
    left: 50%;
    position: absolute;
    transition: 2s .3s;
    display: block;
}

.main .is-view.contact::after {
    height: 70px;
}

.main .contact .mark-contact {
    font-size: 1.1rem;
    letter-spacing: 0.06em;
    background-color: #b39d72;
    color: #fff;
    font-weight: bold;
    padding: 0 8.45px;
}

.main .contact .desc {
    max-width: 590px;
    margin: auto;
    text-align: left;
}

.main .contact .note {
    max-width: 590px;
    margin: auto;
    font-size: 1.2rem;
    line-height: calc(23/14);
    letter-spacing: 0.06em;
    text-align: left;
    margin-top: 8px;
}

.main .contact .box-tel {
    max-width: 800px;
    margin: 40px auto;
}

.main .contact .box-tel .box-data {
    display: flex;
    align-items: center;
    width: 32%;
}

.main .contact .box-tel .info-tel {
    text-align: left;
    margin-left: 10px;
    font-size: 1.6rem;
    font-weight: bold;
    line-height: calc(24.25/16);
    letter-spacing: 0.1em;
    font-family: 'Zen Kaku Gothic Antique', sans-serif;

}

.main .contact .box-tel .info-tel p {
    font-size: 1.6rem;
}

.main .contact .box-tel .info-tel div {
    padding-bottom: 5px;
    font-size: 1.7rem;
    border-bottom: 1px solid #c2c2c2;
    color: #333;
}

.main .contact .btn-link {
    max-width: 275px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.5rem;
    position: relative;
}

/* .main .contact .btn-link::after {
    content: '';
    position: absolute;
    width: 20px;
    height: 15px;
    top: 52%;
    transform: translateY(-50%);
    left: 18px;
    background: url('../imgs/top/email.png');
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    transition: all 0.4s;
}

.main .contact .btn-link:hover::after {
    background: url('../imgs/top/email_black.png');
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
} */

.main .contact .contact-intro {
    max-width: 780px;
    margin: 80px auto 0;
}

.main .contact .contact-intro .desc {
    max-width: 100%;
    text-align: center;
}

.main .contact .contact-intro .social-contact {
    margin-top: 40px;
}

.main .contact .contact-intro .social-contact .box {
    width: 45%;
    margin-bottom: 60px;
}

.main .contact .contact-intro .social-contact .box ul {
    display: flex;
    padding-left: 30px;
}

.main .contact .contact-intro .social-contact .box ul li {
    font-weight: bold;
    font-size: 1.2rem;
    line-height: calc(15/12);
    text-align: center;
    margin-left: 20px;
    letter-spacing: 0.06em;
}

.main .contact .contact-intro .social-contact .box ul li a {
    color: #534741;

}

.main .contact .contact-intro .social-contact .box ul li a img {
    margin-bottom: 4px;
    transition: all 0.3s;
}

.main .contact .contact-intro .social-contact .box ul li a:hover img {
    transform: scale(1.1);
}

.main .contact .contact-intro .social-contact .box ul li a p {
    transition: all 0.3s;
}

.main .contact .contact-intro .social-contact .box ul li a:hover p {
    color: #b39d72;
}

.main .contact .contact-intro .social-contact .box ul li:first-child {
    margin-left: 0;
}

.main .contact .contact-intro .social-contact .box .tit-box {
    font-size: 1.5rem;
    line-height: calc(40/15);
    letter-spacing: 0.18em;
    position: relative;
    z-index: 2;
    padding-left: 20px;
    font-weight: bold;
    overflow: hidden;
    margin-bottom: 20px;
    font-family: 'Zen Kaku Gothic Antique', sans-serif;

}

.main .contact .contact-intro .social-contact .box .tit-box::after {
    content: '';
    position: absolute;
    width: 170px;
    height: 40px;
    background-color: rgba(179, 157, 114, 0.6);
    top: 0;
    left: 0;
    z-index: -1;

}

.main .contact .contact-intro .social-contact .box .tit-box::before {
    position: absolute;
    content: '';
    width: 100%;
    height: 1px;
    top: 50%;
    left: 140px;
    background: #333333;
}

.main .contact .contact-intro .social-contact .box4 .tit-box::before {
    left: 80px;
}

.main .contact .contact-intro .social-contact .box3 .tit-box::before {
    left: 150px;
}

/* .main .book-photo {
    width: fit-content;
    background-color: #333333;
    color: #fff;
    position: fixed;
    right: 30px;
    bottom: 2%;
    padding: 9px 16px;
    border-radius: 4px;
    z-index: 99;
    border: 1px solid#5B5B5B;

}

.main .book-photo h5 {
    font-size: 1.6rem;
    letter-spacing: 0.16em;
    text-align: center;
    line-height: calc(28/16);
    letter-spacing: 0.16em;
}

.main .book-photo ul {
    align-items: center;
}

.main .book-photo ul li:not(:last-child) {

    padding: 0 10px;
    height: fit-content;

}

.main .book-photo ul li:not(:last-child) a {
    display: flex;
    align-items: center;
    text-align: center;
    transition: all 0.3s;
}

.main .book-photo ul li:not(:last-child) a:hover {
    opacity: 0.8;
}

.main .book-photo ul li p {
    font-size: 1.3rem;
    line-height: 1.2;
    letter-spacing: 0.04em;
    color: #fff;
}

.main .book-photo ul li a {
    display: block;
    width: 100%;
    text-align: center;
}

.main .book-photo ul li:nth-of-type(2) {
    border-left: 1px solid #c2c2c2;
    border-right: 1px solid #c2c2c2;
}

.main .book-photo ul li:last-child {
    padding: 5px 10px;
    background-color: #ab995b;
    border-radius: 4px;
}

.main .book-photo ul li:last-child p {
    font-size: 1.2rem;
    line-height: calc(21/12);
}

.main .book-photo ul li:last-child a {
    max-width: 80px;
    margin: auto;
    background-color: #fff;
    color: #333;
    font-size: 1.2rem;
    border-radius: 40px;
    margin-top: 2px;
    transition: all 0.4s;
    line-height: calc(21/12);
}

.main .book-photo ul li:last-child a:hover {
    background-color: #333;
    color: #fff;
}

.main .book-photo ul li img {
    margin-right: 6px;
} */

.main .concept h2 {
    font-family: 'Zen Kaku Gothic Antique', sans-serif;
    line-height: calc(61.05/34);
    font-weight: 500;
}

@media (min-width: 1441px) {
    .main::after {
        height: 1105px;
    }

    .main .staff::before {
        position: absolute;
        content: '';
        width: 0%;
        height: 80%;
        bottom: 0;
        left: 0;
        background-color: #f8f6f3;
        z-index: -2;
    }

    .main .staff::after {
        position: absolute;
        content: '';
        width: 0%;
        height: 50%;
        top: 0;
        right: 0;
        z-index: -1;
        background-color: #f0ebe4;
    }

    .main .staff.is-view::before,
    .main .staff.is-view::after {
        width: 70%;
    }



}

@media (max-width: 1040px) {
    .main {
        margin-top: 139px;
    }
}

@media (max-width: 1060px) {
    .main .concept .box-img img.abs.img2 {
        right: 0;
        left: unset;
    }

    .main .concept .box-img img.abs {
        left: 30%;
    }

    .main .store-campaign .slick-next {
        right: calc(50% - 250px);
    }

    .main .store-campaign .slick-prev {
        left: calc(50% + 80px);
    }

    .main .slide-count {
        right: calc(50% - 195px);
        top: 7px;
    }

    .main .staff .box-img .abs-img2 {
        left: 45%;
    }

    .main .staff .box-img .abs-img3 {
        left: 50%;
    }

    .main .staff .box-img .abs-img4 {
        left: unset;
        right: 0;
    }

    .main .notice .time-notice span {
        width: 22%;
    }

    .main .md-title {
        font-size: 2.2rem;
    }

    .main .title {
        font-size: 2.8rem;
    }

    .main .plan-list .list-img .box {
        width: 30%;
    }

    .main .store .txt-bg {
        font-size: 15rem;
        transform: translateX(0);
    }
}

@media (max-width: 768px) {

    .main {
        margin-top: 116.5px;
    }

    .main .title {
        font-size: 2.6rem;
    }

    .main .concept .box-img img {
        width: 70%;
    }

    .main .concept .box-img .img1 {
        width: 40%;

    }

    .main .concept .box-img img.abs {
        left: unset;
        right: 8%;
    }

    .main .concept .box-img {
        padding-bottom: 80px;
        margin-top: 100px;
    }

    .main .concept::after {
        height: 450px;
    }

    .main .concept .txt-desc {
        font-size: 1.6rem;
        line-height: calc(33.25/16);
        letter-spacing: 0.16em;
    }

    .main .concept::before {
        height: 520px;
        width: 0%;
        transition: 2s 0.5s;
        display: block;
    }

    .main .concept h2 {
        line-height: calc(40/22);
    }

    .main .concept.is-view::before {
        width: 65%;
    }

    .main .tit-store {
        width: 100%;
    }

    .main .rate .rate-slider {
        margin-top: 30px;
    }

    /* .main .book-photo ul li p {
        color: #333333;
    } */

    .main .list-store {
        width: 100%;
        position: relative;
        right: unset;
        top: unset;
    }

    .main .store {
        padding-top: 0;
        background-color: #fff;
        margin-bottom: 40px;
    }

    .main .plan {
        padding: 60px 0;
        background: url('../imgs/top/bg-plan-sp.jpg');
        background-repeat: no-repeat;
        background-size: cover;
        background-position: center top;
        margin-bottom: 50px;
    }

    .main .plan>.container {
        width: calc(100% - 24px);
    }

    .main .plan .plan-info .txt h3 {
        font-size: 2.2rem;
    }

    .main .plan .sub-txt {
        margin: 30px 0 20px;
        text-align: left;
        padding: 0 20px;
        letter-spacing: 0.02em;
    }

    .main .plan .photograph .box-img img.img-5 {
        width: 61.6%;
    }

    .main .plan .photograph .box-img .abs-img3 {
        width: 41.86%;
        left: unset;
        right: 20px;
        bottom: 10px;
    }

    .main .plan .photograph .box-img .abs-img2 {
        width: 35.7%;
        left: 10.6%;
    }

    .main .plan .photograph .box-img .abs-img4 {
        left: 5.3%;
        width: 55.7%;
    }

    .main .plan .photograph .box-img {
        margin-bottom: 40px;
    }

    .main .plan .plan-info .txt {
        position: relative;
        right: unset;
        bottom: unset;
        background-color: transparent;
    }

    .main .plan .plan-info {
        padding: 40px 0;
        clip-path: polygon(5% 0, 95% 0, 100% 2.5%, 100% 97.5%, 95% 100%, 5% 100%, 0 97.5%, 0 2.5%);
        /* background: url('../imgs/top/bg-plan-info.png'); */
        /* background-repeat: no-repeat; */
        /* background-size: cover; */
        /* background-position: center; */

    }

    .main .book-photo ul li:last-child a {
        font-size: 1.1rem;
    }

    .main .plan .plan-info .txt {
        padding: 24px 0 33px;
    }

    .main .plan .plan-info .img {
        padding-left: 0;
        padding: 0 25px;
        margin-bottom: 0;
        text-align: center;
    }

    .main .plan-list {
        margin-top: 60px;
    }

    .main .plan-list .container {
        width: calc(100% - 24px);
    }

    .main .plan-list h2 {
        margin-bottom: 40px;
        font-size: 1.8rem;
    }

    .main .plan-list .list-img .box {
        width: 48%;
        margin-top: 0;
    }

    .main .plan-list .list-img .box .txt>img {
        width: 10px;
        height: 9px;
    }

    .main .plan-list .list-img .box .txt .abs-ic {
        right: 10px;
        bottom: 10px;
    }

    .main .plan-list .list-img .box figure>img {
        width: 100%;
    }

    .main .plan-list .list-img .mt-part,
    .main .plan-list .list-img .mt-sp {
        margin-top: 30px;
    }

    .main .plan-list .list-img .box:nth-of-type(5) {
        margin-top: 0;
    }

    .main .plan-list .list-img .box:nth-of-type(6) {
        margin-top: 30px;
    }

    .main .costume {
        padding-top: 60px;
    }

    .main .costume .tit-dorekana {
        width: 100%;
    }

    .main .costume .info-dorekana {
        width: 100%;
        margin-top: 30px;
    }

    .main .dorekana-info::after {
        width: 80%;
        height: 6%;
    }

    .main .costume-info::after {
        width: 80%;
        height: 110%;
    }

    .main .costume-info .info-block .block-costume {
        width: 100%;
        display: flex;
        margin-bottom: 20px;
        align-items: center;
    }

    .main .costume-info .info-block .block-costume figure {
        width: 51%;
    }

    .main .costume-info .info-block .block-costume .txt {
        width: 58%;
        padding: 0;
    }

    /* .main .book-photo ul {
        border-top: 2px solid #c2c2c2;
    } */

    .main .costume-info .info-block .block-costume .txt p {
        font-size: 1.5rem;
        margin-bottom: 5px;
        line-height: calc(22.25/15);
    }

    .main .costume-info .info-block .block-costume .btn-link {
        margin-bottom: 0;
        max-width: 125px;
        font-size: 1.3rem;
        padding: 2px 0;
        line-height: calc(22.25/13);
    }

    .main .costume-info .info-block {
        margin-bottom: 80px;
    }

    .main .staff {
        padding-top: 20px;
        padding-bottom: 40px;
    }

    .main .staff h2::after {

        top: -60px;

    }

    .main .staff .box-img {
        padding-top: 40px;
        margin-top: 0;
        padding-left: 0;
    }

    .main .staff .box-img .img1 {
        width: 69.33%;
        position: relative;
        z-index: 2;
    }

    .main .staff .box-img .abs-img4 {
        width: 32.5%;
    }

    .main .staff .box-img .abs-img3 {
        width: 30.9%;
        top: 0;
        left: unset;
        right: 4%;
        z-index: 1;
    }

    .main .staff .desc {
        text-align: left;
        padding: 0 20px;
    }

    .main .staff::after {
        height: 82%;
    }

    .main .staff::before {
        height: 90%;
    }

    .main .notice {
        padding: 60px 0;

    }

    .main .notice .time-notice .box-info {
        width: 100%;
    }

    .main .notice .time-notice ul li * {
        font-size: 1.3rem;
    }

    .main .notice .time-notice {
        margin-top: 20px;
    }

    .main .notice .time-notice span {
        width: 30%;
        margin-right: 0;
    }

    .main .notice .time-notice p {
        width: 68%;
        height: 60px;
    }

    .main .contact .contact-info {
        background: #fff;
        /* background: url('../imgs/top/bg-contact-sp.png');
        background-size: cover;
        background-position: center; */
    }

    .main .contact .contact-info {
        padding: 40px 15px;
        padding-bottom: 20px;
        clip-path: polygon(5% 0, 95% 0, 100% 2.5%, 100% 97.5%, 95% 100%, 5% 100%, 0 97.5%, 0 2.5%);
    }
    .main .contact .contact-info .m-title{
        line-height: 2.7rem;
        margin-top: 10px;
    }

    .main .contact .box-tel .box-data {
        width: 100%;
        margin-bottom: 20px;
        text-align: center;
        justify-content: center;
    }

    .main .contact .box-tel {
        margin-bottom: 20px;
    }

    .main .contact .contact-intro .social-contact .box {
        width: 100%;
        margin-right: 20px;
    }

    .main .contact .contact-intro .m-title {
        font-size: 1.8rem;
    }

    .main .contact .con-sp {
        width: 100%;
    }

    .main .contact .contact-intro .social-contact .box {
        margin-bottom: 20px;
    }

    .main .contact .contact-intro .desc {
        font-size: 1.3rem;
        letter-spacing: 0.03em;
    }

    footer {
        padding: 40px 0 120px;
    }

    /* .main .book-photo {
        width: 100%;
        right: 0;
        background-color: #f8f6f3;
        color: #333;
        padding: 0;
        bottom: 0;
        top: unset;
        border-radius: 0;
    }

    .main .book-photo ul li {
        width: 24.8%;
    }

    .main .book-photo ul li:not(:last-child) {
        padding: 0 0 0 10px;
    }

    .main .book-photo ul li p {
        font-size: 1.2rem;
    }

    .main .book-photo ul li:last-child p {
        font-size: 1.1rem;
        color: #fff;
        letter-spacing: 0.04em;
    }

    .main .book-photo ul li:last-child {
        padding: 2.5px 0px;
        border-radius: 0;
        text-align: center;
    } */


    .main .list-store .store-name {
        margin-bottom: 15px;
    }

    .main .list-store .info-store .desc {
        margin-bottom: 30px;
    }

    .main .list-store .info-store .desc {
        font-size: 1.5rem;
        line-height: calc(24.25/15);
        height: 45.4px;
    }

    .main .list-store .info-store .desc span {
        font-size: 1.2rem;
    }

    .main .store-campaign {
        margin-bottom: 40px;
    }

    .main .plan-list .list-img .box .txt p {
        font-size: 1.5rem;
    }

    .main .plan-list .list-img .box .txt span {
        font-size: 1.1rem;
    }

    .main .plan-list .list-img .box .txt {
        height: 80px;
    }

    .main .costume .info-dorekana .txt-desc {
        margin: 30px 0 20px;
    }

    .main .costume .bg-txt span {
        width: 80%;
        /* background-color: #fff; */
        font-size: 1.4rem;
        position: relative;
        top: unset;
        left: unset;
        transform: unset;
        padding: 6px 35px;
    }

    .main .costume-info .tit-brd::after {
        left: 10px;
    }

    .main .costume-info .tit-brd::before {
        right: 10px;
        content: '';
        position: absolute;
        top: 50%;
        width: 20px;
        height: 1px;
        background-color: #333333;
    }

    .main .store .store-concept h2 {
        padding-left: 25px;
    }

    .main .store-campaign .store-slide .slide .info-slide {
        bottom: 0;
        left: 0;
        width: 100%;
        height: auto;
        padding: 10px 15px;
        background-color: rgba(365, 365, 365, 0.7);
    }

    .main .store-campaign .store-slide .slide {
        margin: 0;
    }

    .main .store-campaign .store-slide .slide .time {
        font-size: 1rem;
    }

    .main .store-campaign .store-slide .slide .desc {
        font-size: 1.3rem;
        height: 24px;
        width: 85%;
        letter-spacing: 0.1em;
        -o-text-overflow: ellipsis;
        -webkit-line-clamp: 1;
        -webkit-box-orient: vertical;
        display: -webkit-box;
        overflow: hidden;
        text-overflow: ellipsis;
    }

    .main .store-campaign .store-slide .slide {
        padding-bottom: 0;
    }

    .main .store-campaign .store-slide .slide {
        padding: 0;
    }

    .main .store-campaign .slick-next,
    .main .store-campaign .slick-prev {
        top: unset;
        bottom: -34vw;
    }

    .main .store-campaign .slick-next {
        right: 0%;
    }

    .main .store-campaign .slick-prev {
        right: 20vw;
        left: unset;
    }

    .main .store-campaign .slider-nav {
        display: flex;
    }

    .slider-nav .slick-slide {
        width: 32% !important;
        margin: 2% 2% 0 0;
     overflow: hidden;
height: 65px;
    }

    .slider-nav .slick-slide:nth-of-type(3) {
        margin: 2% 0 0 0;
    }

    .main .store-campaign .slider-nav .slick-track,
    .main .store-campaign .slider-nav .slick-list {
        width: 100% !important;
        -webkit-transform: translate3d(0, 0, 0) !important;
        -moz-transform: translate3d(0, 0, 0) !important;
        -ms-transform: translate3d(0, 0, 0) !important;
        -o-transform: translate3d(0, 0, 0) !important;
        transform: translate3d(0, 0, 0) !important;
    }

    .main .store-campaign .btn-link {
        margin-top: 80px;
    }

    .main .store-campaign .only-sp {
        position: relative;
    }

    .main .store-campaign .slide-counter {
        position: absolute;
        right: 12vw;
        bottom: -8.2vw;
    }

    .main #store-slide-sp .slide {
        padding-top: 23px;
    }

    .bg-black {
        background-color: #333333;
    }

    .bg-purple {
        background-color: #908db1;
    }

    .bg-red {
        background-color: #b9777d;
    }

    .bg-green {
        background-color: #586a14;
    }

    .main #store-slide-sp ul {
        position: absolute;
        left: 10px;
        top: 0px;
        display: flex;
    }

    .main #store-slide-sp ul li {
        width: 46px;
        height: 46px;
        border-radius: 50%;
        display: flex;
        justify-content: center;
        align-items: center;
        font-size: 1.2rem;
        color: #fff;
        margin-right: 6px;
    }

    .store-campaign h2 {
        margin-bottom: 30px;
    }

    .slider-nav .slick-current {
        border: 4px solid #c2c2c2;
    }

    footer .book-photo ul li p {
        color: #333333;
    }
    footer .book-photo {
        width: 100%;
        right: 0;
        background-color: #f8f6f3;
        color: #333;
        padding: 0;
        bottom: 0;
        top: unset;
        border-radius: 0;
    }

    footer .book-photo ul li {
        width: 24.8%;
    }

    footer .book-photo ul li:not(:last-child) {
        padding: 0 0 0 7px;
    }

    footer .book-photo ul li p {
        font-size: 1.2rem;
    }

    footer .book-photo ul li:last-child p {
        font-size: 1.1rem;
        color: #fff;
        letter-spacing: 0.04em;
    }

    /* footer .book-photo ul li:last-child {
        padding: 2.5px 0px;
        border-radius: 0;
        text-align: center;
    } */

    footer .book-photo ul li:last-child {
        padding: 5px 0px;
        border-radius: 0;
        text-align: center;
    }

}

@media (max-width: 576px) {
    .main .store-campaign .slide-counter {
        position: absolute;
        right: 11vw;
        bottom: -7.5vw;
    }
}

@media (max-width: 480px) {
    footer .menu-ft .sub-menu-ft {
        padding-left: 25px;
    }

    .main .store-campaign .slick-next,
    .main .store-campaign .slick-prev {
        top: unset;
        bottom: -40vw;
    }

    .main .store-campaign .slick-prev {
        right: 28vw;
    }

    .main .store-campaign .slide-counter {
        position: absolute;
        right: 15.5vw;
        bottom: -12vw;
    }

    .main .title {
        font-size: 2.2rem;
        line-height: calc(37.25/22);
    }

    .main .costume .tit-dorekana h2 {
        margin-bottom: 24px;
        padding-left: 25px;
    }

    .main .m-title {
        font-size: 1.6rem;
        line-height: calc(36/16);
    }

    .main .m-title {
        margin-bottom: 10px;
    }

    .main .store .tit-store .desc {
        margin: 30px 0;
    }

    .main .rate .slide .es-box {
        height: fit-content !important;
    }

    .main .rate .es-text-container {
        height: 105px;
        overflow-y: scroll;
    }

    .main .rate .slick-dots {
        bottom: 0;
        padding-top: 20px;
    }

    .main .rate .slick-dots li button::before {
        content: '';
        width: 10px;
        height: 10px;
        background-color: #c2c2c2;
        border-radius: 50%;
        box-shadow: 0 0 15px #fff;
    }

    .main .rate .slick-dots li.slick-active button::before {
        opacity: 1;
        background-color: #4e81e5;
    }

    .main .rate .slick-next,
    .main .rate .slick-prev {
        border: none;
        background: transparent;
        border-radius: 0;
        box-shadow: unset;
    }

    .main .rate .slick-next {
        right: -20px;
    }

    .main .rate .slick-prev {
        left: -20px;
    }

    .main .rate .slick-next::before,
    .main .rate .slick-prev::before {
        border-width: 0 3px 3px 0;
        display: inline-block;
        padding: 6px;
        border-color: #aaa;
    }

    .main .rate .slide .es-box-top {
        background-color: #fafafa;
        border: 0;
    }

}



/* Animate */
.fade-in {
    opacity: 0;
    filter: blur(5px) brightness(105%);
    transition: opacity 2s ease, filter 2s ease;
}

.fade-in.is-view {
    opacity: 1;
    filter: blur(0) brightness(100%);
}

.fade-up {
    opacity: 0;
    transform: translateY(40px);
    -webkit-transform: translateY(40px);
    filter: blur(5px) brightness(105%);
    transition: opacity 1.5s ease, transform 1.5s ease, filter 1.5s ease;
}

.fade-up.is-view {
    opacity: 1;
    transform: translateY(0);
    -webkit-transform: translateY(0);
    filter: blur(0) brightness(100%);
}

.fade-down {
    opacity: 0;
    transform: translateY(-40px);
    -webkit-transform: translateY(-40px);
    filter: blur(5px) brightness(105%);
    transition: opacity 1.5s ease, transform 1.5s ease, filter 1.5s ease;
}

.fade-down.is-view {
    opacity: 1;
    transform: translateY(0);
    -webkit-transform: translateY(0);
    filter: blur(0) brightness(100%);
}

.fade-left {
    opacity: 0;
    transform: translateX(-40px);
    -webkit-transform: translateX(-40px);
    filter: blur(5px) brightness(105%);
    transition: opacity 1.5s ease, transform 1.5s ease, filter 1.5s ease;
}

.fade-left.is-view {
    opacity: 1;
    transform: translateY(0);
    -webkit-transform: translateY(0);
    filter: blur(0) brightness(100%);
}

.fade-right {
    opacity: 0;
    transform: translateX(40px);
    -webkit-transform: translateX(40px);
    filter: blur(5px) brightness(105%);
    transition: opacity 1.5s ease, transform 1.5s ease, filter 1.5s ease;
}

.fade-right.is-view {
    opacity: 1;
    transform: translateY(0);
    -webkit-transform: translateY(0);
    filter: blur(0) brightness(100%);
}

.zoom-in {
    opacity: 0;
    overflow: hidden;
    transform: scale(0.7, 0.7);
    -webkit-transform: scale(0.7, 0.7);
    transition: opacity 1.5s ease, transform 1.5s ease;
}

.zoom-in.is-view {
    opacity: 1;
    transform: scale(1, 1);
    -webkit-transform: scale(1, 1);
}

.zoom-out {
    opacity: 0;
    overflow: hidden;
    transform: scale(1.2, 1.2);
    -webkit-transform: scale(1.2, 1.2);
    transition: opacity 1.5s ease, transform 1.5s ease;
}

.zoom-out.is-view {
    opacity: 1;
    transform: scale(1, 1);
    -webkit-transform: scale(1, 1);
}

.roll-left {
    position: relative;
    overflow: hidden;
}

.roll-left img {
    opacity: 0;
    transition: opacity 1.5s ease .5s;
}

.roll-left:after {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    background: #f0ebe4;
}

.roll-left.is-view img {
    opacity: 1;
}

.roll-left.is-view:after {
    animation: rollLeft 1.5s ease;
}

@keyframes rollLeft {
    0% {
        left: 0;
        right: 100%;
    }

    50% {
        left: 0;
        right: 0;
    }

    100% {
        left: 100%;
        right: 0;
    }
}

@-webkit-keyframes rollLeft {
    0% {
        left: 0;
        right: 100%;
    }

    50% {
        left: 0;
        right: 0;
    }

    100% {
        left: 100%;
        right: 0;
    }
}

.roll-right {
    position: relative;
    overflow: hidden;
}

.roll-right img {
    opacity: 0;
    transition: opacity 1.5s ease .5s;
}

.roll-right:after {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    background: #3a6531;
}

.roll-right.is-view img {
    opacity: 1;
}

.roll-right.is-view:after {
    animation: rollRight 1.5s ease;
}

@keyframes rollRight {
    0% {
        right: 0;
        left: 100%;
    }

    50% {
        right: 0;
        left: 0;
    }

    100% {
        right: 100%;
        left: 0;
    }
}

@-webkit-keyframes rollRight {
    0% {
        right: 0;
        left: 100%;
    }

    50% {
        right: 0;
        left: 0;
    }

    100% {
        right: 100%;
        left: 0;
    }
}

@media (min-width: 768px) {
    .delay1 {
        transition-delay: .4s;
    }

    .delay2 {
        transition-delay: .6s;
    }

    .delay3 {
        transition-delay: .8s;
    }

    .delay4 {
        transition-delay: 1.2s;
    }

}

/* =================About================ */

.page-title {
    text-align: center;
    margin-bottom: 60px;
    font-family: 'Zen Kaku Gothic Antique', sans-serif;
    padding-top: 80px;
}

.page-title .title {
    font-family: 'Zen Kaku Gothic Antique', sans-serif;
    font-weight: 500;
    line-height: calc(61.05/34);
}

.page-title .page-name-en {
    letter-spacing: 0.16em;
    line-height: 2;
}

.mv-page {
    text-align: right;
    padding: 0 0 85px 14.5%;
    position: relative;
}

.mv-page::after {
    content: '';
    position: absolute;
    width: 85%;
    height: 85%;
    background-color: #f0ebe4;
    left: 0;
    bottom: 0;
    z-index: -1;
}

.contents-page {
    padding-top: 60px;
    text-align: center;
}

.o-title {
    font-family: 'Zen Old Mincho', serif;
    font-size: 2.4rem;
    line-height: calc(55.25/24);
    letter-spacing: 0.04em;
}

.contents-page .o-title {
    margin-bottom: 40px;
}

.contents-page .selected-contents {
    margin-top: 90px;
}

.contents-page .selected-contents .bg-tit {
    font-size: 1.4rem;
    font-family: 'Zen Old Mincho', serif;
    font-weight: bold;
    line-height: calc(28/14);
    letter-spacing: 0.06em;
    color: #fff;
    width: fit-content;
    margin: auto;
    padding: 0 10px;
    background-color: #b39d72;
}

.contents-page .selected-contents .box-select {
    max-width: 700px;
    margin: 40px auto 60px;
    justify-content: flex-start;
}

.contents-page .selected-contents .box-select a {
    font-size: 1.3rem;
    line-height: calc(22.25/13);
    letter-spacing: 0.06em;
    width: 28.58%;
    margin-right: 40px;
    padding: 10px 0;
    text-align: left;
    margin-bottom: 40px;
    border-bottom: 2px solid #b39d72;
    color: #333333;
    position: relative;
    font-weight: bold;
}

.contents-page .selected-contents .box-select a:nth-of-type(3n) {
    margin-right: 0;
}

.contents-page .selected-contents .box-select a::after {
    content: '';
    position: absolute;
    border: solid #333;
    border-width: 0 2px 2px 0;
    display: inline-block;
    padding: 3px;
    right: 3px;
    top: 40%;
    transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
}

.about .album-picture {
    background: url('../imgs/about/bg-about.jpg');
    background-repeat: no-repeat;
    background-size: cover;
    padding-top: min(11.5vw, 115px);
}

.album-picture .list-album .box-pictrure-detail {
    width: 45.8%;
    position: relative;
    padding-bottom: 115px;
    margin-bottom: min(11.5vw, 115px);
}

.album-picture .list-album .box-pictrure-detail .box-link {
    text-align: center;
    position: absolute;
    background: rgba(365, 365, 365, 0.9);
    width: 81%;
    left: 50%;
    transform: translateX(-50%);
    bottom: 0;
    padding: 34px 0;
    box-shadow: 0 0 4px #ccc;
}

.album-picture .list-album .box-pictrure-detail p {
    line-height: calc(27/14);
}

.album-picture .list-album .box-pictrure-detail .tit-picture {
    font-size: 1.8rem;
    font-weight: bold;
    line-height: calc(22.25/18);
    letter-spacing: 0.1em;
    font-family: 'Zen Kaku Gothic Antique', sans-serif;
    margin-bottom: 10px;
    position: relative;
    display: inline-block;
    padding: 0 20px;
}

.album-picture .list-album .box-pictrure-detail .tit-picture::before {
    content: '';
    position: absolute;
    width: 12px;
    height: 1px;
    left: 0;
    top: 50%;
    background: #333333;
}

.album-picture .list-album .box-pictrure-detail .tit-picture::after {
    content: '';
    position: absolute;
    width: 12px;
    height: 1px;
    right: 0;
    top: 50%;
    background: #333333;
}

.album-picture .list-album .box-pictrure-detail .box-link .btn-link {
    margin-bottom: 0;
    max-width: 150px;
    font-size: 1.5rem;
    padding: 5px 0;
    background-size: 10px 9px;
    margin-top: 20px;
}

.contents-page .in-select {
    position: relative;
    overflow: hidden;
}

/* .contents-page .in-select::before {
    content: '';
    position: absolute;
    background-color: #b39d72;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 0;
    transition: height 0.3s;
    z-index: -1;
    font-family: 'Zen Kaku Gothic Antique', sans-serif;

} */

/* .contents-page .in-select:hover::before {
    height: 100%;
} */

.contents-page .selected-contents .box-select a,
.contents-page .selected-contents .box-select a::after {
    transition: all 0.4s;
}

.contents-page .selected-contents .box-select a:hover {
    color: #b39d72;
}

.contents-page .selected-contents .box-select a:hover::after {
    border-color: #b39d72;
}

@media (max-width: 768px) {

    .page-title {
        padding-top: 40px;
        margin-bottom: 40px;
    }

    .mv-page {
        padding-bottom: 30px;
    }

    .contents-page {
        padding-top: 35px;
    }

    .o-title {
        font-size: 2rem;
        line-height: calc(41.25/20);
        letter-spacing: 0.04em;
    }

    .contents-page .o-title {
        margin-bottom: 30px;
    }

    .contents-page .m-desc {
        text-align: left;
    }

    .contents-page .selected-contents {
        margin-top: 50px;
    }

    .contents-page .selected-contents .bg-tit {
        font-size: 1.1rem;
        line-height: 2;
    }

    .contents-page .selected-contents .box-select {
        justify-content: space-between;
    }

    .contents-page .selected-contents .box-select a {
        margin-right: 0px;
        width: 48%;
        font-size: 1.2rem;
        margin-bottom: 25px;
        line-height: calc(14.5/12);
    }

    .contents-page .selected-contents .box-select {
        margin-bottom: 25px;
    }

    .album-picture .list-album .box-pictrure-detail {
        width: 100%;
        margin-bottom: 60px;
    }

    .album-picture .list-album .box-pictrure-detail figure img {
        width: 100%;
    }

    .album-picture .list-album .box-pictrure-detail .tit-picture {
        font-size: 1.7rem;
    }

    .album-picture .list-album .box-pictrure-detail .box-link {
        padding: 20px 0;
        width: 86%;
    }

    .album-picture .list-album .box-pictrure-detail .box-link .btn-link {
        margin-top: 20px;
    }

    .contents-page .selected-contents .box-select a {
        padding: 13px 0;
    }

}

/* end about */
/* ===========plan============= */
.mb-40 {
    margin-bottom: 40px;
}

.title-2 {
    font-size: 3rem;
    font-family: 'Zen Old Mincho', serif;
    letter-spacing: 0.16em;
    line-height: calc(65.25/30);
    font-weight: bold;
    color: #333333;
    margin-bottom: 45px;
}

/* plan */

.plan .album-picture {
    background: url('../imgs/plan/bg-plan.jpg');
    background-repeat: no-repeat;
    background-size: cover;
    padding-top: min(11.5vw, 115px);
}

.plan .box-what {
    margin-bottom: 160px;
    margin-top: 100px;
}

.plan .box-what .info .m-desc {
    width: 45%;
}

.plan .box-what .info table {
    width: 45%;
    border-collapse: collapse;
}

.plan .box-what .info table tr th,
.plan .box-what .info table tr td {
    padding: 0 20px;
    text-align: left;
    font-size: 1.3rem;
    letter-spacing: 0.1em;
    border-bottom: 1px solid #fff;
}

.plan .box-what .info table tr th {
    background-color: #f0ebe4;
    line-height: calc(56/13);
}

.plan .box-what .info table tr td {
    background-color: #f8f6f3;
    line-height: calc(37/13);
}

.plan .album-kid {
    padding-bottom: 120px;
}

.plan .album-kid .title-2 {
    line-height: calc(51.25/30);
}

.plan .album-kid .title-2.tit-brd::after {
    top: 30%;
}

.plan .album-kid .box-img {
    padding: 0px 0 120px;
    position: relative;
    max-width: 1440px;
    width: calc(100% - 40px);
    margin: 40px auto 60px;
}

.plan .album-kid .box-img .abs-img {
    position: absolute;
}

.plan .album-kid .box-img .img1 {
    bottom: 0;
    right: 14.7%;
}

.plan .album-kid .box-img .img2 {
    top: 18.9%;
    right: 5.9%;
}

.plan .album-kid .txt-bottom {
    letter-spacing: 0.05em;
}

.plan .list-album .select-diff {
    width: 100%;
    background: rgba(365, 365, 365, 0.9);
    max-width: 850px;
    margin: 0 auto 115px;
    box-shadow: 0 0 4px #ccc;
    padding: 50px;
}

.plan .album-picture .list-album .box-pictrure-detail {
    margin-bottom: 90px;
}

.plan .album-picture .list-album .box-pictrure-detail .tit-picture span {
    color: #b39d72;
    font-size: 1.3rem;
    line-height: calc(29/13);
    font-weight: bold;
    font-family: "Noto Sans JP", sans-serif;
}

.plan .select-diff .tit-diff {
    text-align: center;
}

.plan .select-diff .tit-diff span {
    font-size: 1.3rem;
    color: #b39d72;
    line-height: calc(27/13);
    font-weight: bold;
    display: block;
}

.plan .select-diff .tit-diff p {
    font-size: 2rem;
    line-height: calc(34/20);
    letter-spacing: 0.14em;
    font-weight: bold;
    font-family: 'Zen Kaku Gothic Antique', sans-serif;
}

.plan .select-diff .info-select-diff {
    margin-top: 25px;
}

.plan .select-diff .info-select-diff .txt {
    width: 57.67%;
    line-height: calc(27/14);
}

.plan .select-diff .info-select-diff figure {
    width: 38.8%;
}

.plan .select-diff .info-select-diff .txt .btn-link {
    margin-top: 35px;
    margin-bottom: 0;
}

.plan .select-diff .info-select-diff .txt p span {
    color: #b23d53;
    font-weight: bold;
}

.plan .dorekana {
    padding-top: 110px;
    padding-bottom: 75px;
    position: relative;
}

.plan .dorekana::after {
    content: '';
    position: absolute;
    width: 40%;
    height: calc(80% - 110px);
    background-color: #f0ebe4;
    right: 0;
    bottom: 0;
    z-index: -1;
}

.plan .dorekana .info .img {
    width: 45%;
}

.plan .dorekana .info .img .tit-img {
    text-align: center;
    margin-bottom: 25px;
}

.plan .dorekana .info .img p {
    margin-bottom: 20px;
}

.plan .dorekana .info .location-box {
    width: 45%;
    margin-top: 80px;
    text-align: center;
}

.plan .dorekana .info .location-box .location-block {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 30px;
    background-color: #fff;
    box-shadow: 0 0 4px #ccc;
}

.plan .dorekana .info .location-box .location-block:last-child {
    margin-bottom: 0;
}

.plan .dorekana .info .location-box .location-block figure {
    width: 41.77%;
}

.plan .dorekana .info .location-box .location-block .txt {
    width: 58.23%;
    text-align: center;
}

.plan .dorekana .info .location-box .location-block .txt p {
    font-size: 1.6rem;
    font-weight: bold;
    line-height: calc(22.25/16);
    letter-spacing: 0.1em;
    margin-bottom: 10px;
}

.plan .dorekana .info .location-box .location-block .txt .btn-link {
    max-width: 150px;
    padding: 3px 0;
    margin-bottom: 0;
}

.plan .dorekana .info .location-box .tit-location-box {
    font-size: 1.8rem;
    letter-spacing: 0.14em;
    line-height: calc(36/18);
    font-weight: bold;
    font-family: 'Zen Kaku Gothic Antique', sans-serif;
    text-align: center;
    display: inline-block;
    margin-bottom: 30px;
    background-color: #fff;
    position: relative;
    padding-right: 25px;
}

.plan .dorekana .info .location-box .tit-location-box::before {
    content: '';
    position: absolute;
    right: 0;
    top: 50%;
    width: 20px;
    height: 1px;
    background-color: #333333;
}

.plan .booking {
    margin-top: 170px;
    text-align: center;
    position: relative;
}

.plan .booking .info-booking {
    padding: 60px 50px 30px 25px;
    background-color: #f0ebe4;
}

.plan .booking .info-booking h3 {
    position: relative;
}

.plan .booking .info-booking h3::after {
    content: '';
    width: 1px;
    height: 70px;
    background-color: #333333;
    top: -100px;
    left: 50%;
    position: absolute;
    transition: 2s .3s;
    display: block;
}

.plan .booking::after {
    content: '';
    position: absolute;
    width: 50%;
    height: 100%;
    right: 0;
    top: 0;
    background-color: #f0ebe4;
    z-index: -1;
}

.plan .booking::before {
    content: '';
    position: absolute;
    width: 80.55%;
    height: 100%;
    left: 0;
    top: 17%;
    background-color: #f8f6f3;
    z-index: -1;
}

.plan .booking .box-tel {
    margin-top: 60px;
    margin-bottom: 55px;

}

.plan .booking .box-tel .box-data {
    width: 30%;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.plan .booking .box-tel .info-tel {
    text-align: left;
    margin-left: 10px;
    font-size: 1.75rem;
    font-weight: bold;
    line-height: calc(26.67/17.5);
    letter-spacing: 0.1em;
    font-family: 'Zen Kaku Gothic Antique', sans-serif;
    font-weight: bold;
}

.plan .booking .box-tel .info-tel div {
    padding-bottom: 5px;
    font-size: 1.9rem;
    letter-spacing: 0.1em;
    line-height: calc(26.67/19);
    border-bottom: 1px solid #c2c2c2;
    color: #333;
}

.plan .booking .info-booking .btn-link {
    position: relative;
}

.plan .booking .info-booking .btn-link::after {
    content: '';
    position: absolute;
    width: 18px;
    height: 15px;
    top: 52%;
    transform: translateY(-50%);
    left: 25%;
    background: url('../imgs/plan/fly-wt.png');
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    transition: all 0.4s;
}

.plan .booking .info-booking .btn-link:hover::after {
    content: '';
    position: absolute;
    width: 18px;
    height: 15px;
    top: 52%;
    transform: translateY(-50%);
    left: 25%;
    background: url('../imgs/plan/fly-bl.png');
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    transition: all 0.4s;
}

.plan .booking .info-booking p a {
    text-decoration: underline;
    color: #333333;
}

.plan .booking .info-booking p a:hover {
    opacity: 0.7;
}

.plan .voice {
    /* margin-top: 220px; */
    margin-bottom: 140px;
}

.plan .voice .voice-slide {
    margin: 0 25px;
    position: relative;
    padding-bottom: 100px;
    transition: all 0.4s;
}

.plan .voice .voice-slide:hover {
    opacity: 0.6;
}

.plan .voice {
    overflow: hidden;
}

.plan .voice .voice-slide .info-slide {
    position: absolute;
    left: 6.6%;
    bottom: 0px;
    height: 125px;
    padding: 20px 30px;
    background-color: rgba(365, 365, 365, 0.8);
    width: 86%;
}

.plan .voice .voice-slide .desc {
    font-size: 1.8rem;
    line-height: calc(33/18);
    font-weight: bold;
    letter-spacing: 0.18em;
    -o-text-overflow: ellipsis;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    display: -webkit-box;
    overflow: hidden;
    text-overflow: ellipsis;
    height: 66px;
    color: #333333;
}

.plan .voice .slick-next {
    top: calc(50% - 50px);
}

.plan .voice .slick-prev {
    top: calc(50% - 50px);
}

.plan .btn-global .slick-next {
    right: calc(50% - 285px);
    width: 40px;
    height: 40px;
    background: url('../imgs/plan/arr_next.png');
    background-size: cover;
}

.plan .btn-global .slick-next:hover {
    opacity: 0.8;
}

.plan .btn-global .slick-next::before {
    content: '';
}

.plan .btn-global .slick-prev {
    left: calc(50% - 285px);
    width: 40px;
    height: 40px;
    background: url('../imgs/plan/arr_prev.png');
    background-size: 40px 40px;
    z-index: 999;
}

.plan .btn-global .slick-prev::before {
    content: '';
}

.plan .voice .btn-link {
    margin-top: 40px;
}

.plan .gallery {
    overflow: hidden;
    margin-top: 220px;
    margin-bottom: 140px;
}

.plan .gallery .btn-link {
    margin-top: 40px;
}

.plan .gallery .gallery-slide-container a {
    margin: 0 25px;
    position: relative;
    transition: all 0.4s;
 height: 300px;
}

.plan .gallery .gallery-slide-container a:hover {
    opacity: 0.6;
}

.plan .video-yt {
    overflow: hidden;
}

.plan .video-slide {
    margin: 0 25px;
    /*    position: relative;*/
    transition: all 0.4s;
}

/* @media (max-width: 768px) { */
@media (min-width: 1441px) {

    .plan .video-slide .video-wrap {
        position: relative;
        padding-bottom: 56.25%;
    }

    .plan .video-slide .video-wrap iframe {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
    }
}

/* } */
@media (max-width: 768px) {
    .plan .video-slide .video-wrap {
        position: relative;
        padding-bottom: 56.25%;
    }

    .plan .video-slide .video-wrap iframe {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
    }
}



.plan .s-tit {
    font-size: 2.6rem;
    line-height: calc(34/26);
    letter-spacing: 0.14em;
    margin-bottom: 80px;
    text-align: center;
    font-family: 'Zen Kaku Gothic Antique', sans-serif;
}

.plan .video-yt .btn-link {
    margin-top: 40px;
}

.plan .column {
    max-width: 675px;
    margin: min(12vw, 120px) auto min(12vw, 120px);
}

.plan .column ul li a {
    font-size: 1.4rem;
    line-height: calc(63/14);
    letter-spacing: 0.06em;
    -o-text-overflow: ellipsis;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    display: -webkit-box;
    overflow: hidden;
    text-overflow: ellipsis;
    height: 63px;
    border-bottom: 1px solid #707070;
    position: relative;
    padding-left: 20px;
}

.plan .column ul li a::after {
    content: '';
    position: absolute;
    left: 0;
    top: 45%;
    border: solid #707070;
    border-width: 0 2px 2px 0;
    display: inline-block;
    padding: 3px;
    transform: rotate(-45deg);
    -webkit-transform: rotate(-45deg);
}

.plan .column ul li a:hover {
    opacity: 0.7;
}

.plan .btn-detail {
    margin-top: 30px;
    display: flex;
    justify-content: flex-end;
    align-items: center;
    font-size: 1.4rem;
    letter-spacing: 0.14em;
    transition: all 0.4s;
    width: fit-content;
    margin-left: auto;
    width: 100%;
}

.plan .btn-detail img {
    margin-left: 12px;
}

.plan .btn-detail:hover {
    text-decoration: underline;
}

.plan .dorekana .info .location-box .location-block figure {
    overflow: hidden;
}

.plan .dorekana .info .location-box .location-block {
    transition: all 0.4s;
}

/* 
.plan .dorekana .info .location-box .location-block:hover {
    box-shadow: 0 0 10px #333;
} */

.plan .dorekana .info .location-box .location-block:hover figure img {
    transform: scale(1.2);
}

.plan .dorekana .info .location-box .location-block figure img {
    width: 100%;
    height: 100%;
    transition: all 0.4s;
}

.plan .dorekana .info .location-box .location-block:hover .btn-link {
    color: #333333;
    border: 1px solid #333;
    background: #fff url('../imgs/top/arr_bl.png');
    background-position-x: 0%;
    background-position-y: 0%;
    background-repeat: repeat;
    background-size: auto;
    background-repeat: no-repeat;
    background-position: center right 10px;
    background-size: 10px 9px;
}

@media (max-width: 1100px) {
    .plan .booking .box-tel .info-tel {
        font-size: 1.4rem;
    }

    .plan .booking .box-tel .info-tel div {
        font-size: 1.5rem;
    }

    .plan .box-what .info table {
        width: 50%;
    }
}

@media (max-width: 768px) {
    .page-title .title {
        line-height: calc(40/22);
    }

    .page-title .page-name-en {
        font-size: 1.2rem;
    }

    .plan .box-what .info .m-desc {
        width: 100%;
        margin-bottom: 20px;
    }

    .plan .box-what .info table {
        width: 100%;
    }

    .plan .box-what .info table tr th,
    .plan .box-what .info table tr td {
        padding: 10px;
        line-height: calc(42/13);
    }

    .plan .box-what {
        margin-bottom: 60px;
        margin-top: 40px;
    }

    .title-2 {
        font-size: 2.2rem;
        line-height: calc(37.25/22);
        letter-spacing: 0.16em;
        margin-bottom: 30px;
    }

    .plan .album-kid .box-img .img-root {
        width: 83%;
    }

    .plan .album-kid .box-img .img1 {
        width: 45%;
        right: 0;

    }

    .plan .album-kid .box-img {
        padding-bottom: 70px;
        margin-bottom: 20px;
    }

    .plan .album-kid {
        padding-bottom: 50px;
    }

    .plan .album-picture .list-album .box-pictrure-detail {
        margin-bottom: 50px;
    }

    .plan .select-diff .tit-diff p {
        font-size: 1.7rem;
        line-height: calc(18.25/17);
    }

    .plan .list-album .select-diff {
        padding: 40px 20px;
        margin-bottom: 60px;
    }

    .plan .dorekana .info .location-box .location-block {
        margin-bottom: 20px;
    }

    .plan .select-diff .info-select-diff figure {
        width: 100%;
    }

    .plan .select-diff .info-select-diff .txt {
        width: 100%;
    }

    .plan .select-diff .info-select-diff .txt .btn-link {
        margin-top: 30px;
    }

    .plan .dorekana {
        padding-top: 60px;
    }

    .plan .dorekana h3 span {
        margin-left: -10px;
        letter-spacing: 0.05em;
    }

    .plan .dorekana .info .img {
        width: 100%;
    }

    .plan .dorekana .info .location-box {
        width: 94%;
        /* margin-top: 40px; */
        margin: 40px auto 0 auto;
    }

    .plan .dorekana::after {
        right: unset;
        left: 0;
        width: 82.66%;
        height: calc(80% - 180px);
        ;
    }

    .plan .dorekana .info .location-box .location-block .txt p {
        font-size: 1.5rem;
        line-height: calc(22.25/15);
        margin-bottom: 6px;
    }

    .plan .dorekana .info .location-box .location-block .txt .btn-link {
        font-size: 1.3rem;
        line-height: calc(22.25/13);
        max-width: 125px;
    }

    .plan .booking {
        margin-top: 70px;
    }

    .plan .booking .box-tel .box-data {
        width: 100%;
        margin-bottom: 20px;
    }

    .plan .booking .info-booking {
        background: transparent;
        padding: 60px 0;
    }

    .plan .booking .box-tel {
        max-width: 240px;
        margin: 50px auto 10px;
    }

    .plan .booking::after {
        width: 78%;
        height: 65%;
        top: unset;
        bottom: 0;
    }

    .plan .booking::before {
        top: unset;
        bottom: -40px;
        height: 55%;
    }

    .plan .booking .info-booking .m-desc {
        text-align: left;
    }

    .plan .voice {
        margin-top: 140px;
        margin-bottom: 60px;
    }

    .plan .voice-slide-container {
        padding: 0 20px;
    }

    .plan .voice-slide-container img {
        width: 332px;
    }

    .plan .btn-global .slick-next {
        right: calc(50% - 180px);
    }

    .plan .btn-global .slick-prev {
        left: calc(50% - 180px);
    }


    .plan .voice .slick-next,
    .plan .voice .slick-prev {
        top: 50%;
    }

    .plan .voice .voice-slide {
        padding-bottom: 0;
    }

    .plan .voice .voice-slide .info-slide {
        width: 100%;
        left: 0;
        height: auto;
        padding: 5px 20px;
    }

    .plan .voice .voice-slide .desc {
        -webkit-line-clamp: 1;
        height: 24px;
        line-height: calc(22.94/13);
        font-size: 1.3rem;
        font-family: "Noto Sans JP", sans-serif;
        color: #333333;
    }

    .plan .gallery {
        margin-top: 140px;
        margin-bottom: 60px;
    }

    .plan .gallery-slide-container img {
        width: 332px;
    }

    .plan .video-yt-slide-container img {
        width: 332px;
    }

    .plan .s-tit {
        font-size: 1.8rem;
        letter-spacing: 0.22em;
        line-height: calc(40/18);
        margin-bottom: 20px;
    }

    .plan .column ul li a {
        font-size: 1.3rem;
        line-height: calc(49/13);
        height: 49px;
    }

    .plan .column {
        margin: 60px 0;
    }

    .plan .booking .info-booking h3::after {
        height: 40px;
        top: -60px;
    }

    .plan .dorekana .info .location-box .tit-location-box {
        font-size: 1.6rem;
        line-height: calc(36/16);
    }

    .plan .dorekana .info .location-box .location-block .txt .btn-link {
        background-position: center right 10px;
    }

    .plan .booking .info-booking p a {
        font-weight: bold;
    }
}

/* plan-detail */
.plan-detail .album-picture .list-album .box-pictrure-detail {
    padding: 40px 55px;
    background-color: #fff;
    text-align: center;

}



.plan .album-picture .list-album .box-pictrure-detail .tit-picture span {
    margin-right: 6px;
}

.plan-detail .album-picture .list-album .box-pictrure-detail span {
    font-size: 1.9rem;
    line-height: calc(25.05/19);
}

.plan-detail .album-picture .list-album .box-pictrure-detail .m-desc {
    text-align: left;
    margin: 25px 0;
}

.plan-detail .album-picture .list-album .info-detail {
    transition: all 0.3s;
}

.plan-detail .album-picture .list-album .info-detail:hover button {
    opacity: 0.8;
}

.plan-detail .album-picture .list-album .info-detail button {
    width: 100%;
    background-color: #f0ebe4;
    color: #655f54;
    border: none;
    font-weight: bold;
    font-size: 1.3rem;
    line-height: calc(42/13);
    cursor: pointer;
    position: relative;

}

.plan-detail .album-picture .list-album .info-detail button::after {
    content: "+";
    position: absolute;
    display: inline-block;
    color: #655f54;
    font-weight: 500;
    font-size: 1.2em;
    right: 15px;
    top: 30%;
    line-height: 1;
}

.plan-detail .album-picture .list-album .info-detail p {
    text-align: left;
    background-color: #f0ebe4;
    border-top: 1px solid #fff;
    padding: 20px;
    font-size: 1.3rem;
    display: none;
    color: #655f54;
}

.plan-detail .album-picture .list-album .info-detail.is-open button::after {
    content: "";
    width: 10px;
    height: 1px;
    position: absolute;
    display: inline-block;
    background-color: #333;
    font-weight: bold;
    right: 15px;
    top: 50%;
}

.plan-detail .album-picture {
    background: url('../imgs/plan/bg-plan.jpg');
    background-repeat: repeat;
    background-size: auto;
    background-repeat: no-repeat;
    background-size: unset;
}

.plan-detail .album-picture .list-album .link {
    margin-top: 30px;
}

.plan-detail .album-picture .list-album .link .link-item span {
    font-size: 1.4rem;
    font-weight: bold;
    color: #333;
    font-family: 'Zen Kaku Gothic Antique', sans-serif;
    line-height: calc(22.25/14);
    transition: all 0.3s;
}

.plan-detail .album-picture .list-album .link .link-item a {
    font-size: 1.3rem;
    font-weight: bold;
    color: #fff;
    line-height: 1;
    background-color: #333;
    margin-left: 10px;
    padding: 7.5px 15px;
    border-radius: 40px;
    transition: all 0.4s;
    letter-spacing: 0.12em;
}

.plan-detail .album-picture .list-album .link .link-item {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    margin-bottom: 15px;
}

.plan-detail .album-picture .list-album .link .link-item a:hover {
    color: #333;
    background-color: #f0ebe4;
}


.plan-detail .album-picture .list-album .box-content .m-desc {
    min-height: 135px;
}

.plan-detail .album-picture .list-album .box-pictrure-detail.last .box-content .m-desc {
    min-height: 209px;
}

.plan-detail .box-what {
    margin-top: 150px;
}

.plan-detail .box-what table a {
    text-decoration: underline;
    transition: all 0.4s;
    color: #333;
}

.plan-detail .box-what table a:hover {
    opacity: 0.7;
}

.plan-detail .album-picture .title-2.tit-brd::after {
    top: 27.5%;
}

.contents-page .selected-contents .box-select a {
    display: flex;
    align-items: center;
}

.plan-detail .album-picture .list-album .box-pictrure-detail .tit-picture {
    margin-bottom: 40px;
}

.plan-detail .instagram-feed {
    margin-bottom: 60px;
}

.plan .btn-global.video-yt .slick-prev {
    left: calc(50% - 315px);

}

.plan .btn-global.video-yt .slick-next {
    right: calc(50% - 315px);
}

@media (max-width: 1921px) {
    .plan .btn-global.video-yt .slick-prev {
        left: 34.5%;

    }

    .plan .btn-global.video-yt .slick-next {
        right: 34.5%;
    }
}


@media (max-width: 1440px) {
    .plan .btn-global.video-yt .slick-prev {
        left: calc(50% - 300px);

    }

    .plan .btn-global.video-yt .slick-next {
        right: calc(50% - 300px);
    }
}

@media (max-width: 992px) {
    .plan-detail .album-picture .list-album .box-pictrure-detail {
        padding: 30px 20px;
    }

    .plan-detail .album-picture .list-album .box-content .m-desc {
        min-height: 170px;
    }

    .plan-detail .album-picture .list-album .link .link-item span {
        font-size: 1.2rem;
    }

    .plan-detail .album-picture .list-album .link .link-item a {
        font-size: 1.1rem;
    }

    .plan-detail .album-picture .list-album .box-pictrure-detail.last .box-content .m-desc {
        min-height: 240px;
    }

}

.plan .video-slide {
    text-align: center;
}

@media (max-width: 768px) {
    .plan .btn-global.video-yt .slick-prev {
        left: 0px;

    }

    .plan .btn-global.video-yt .slick-next {
        right: 0px;
    }

    .plan-detail .album-picture .list-album .box-title,
    .plan-detail .album-picture .list-album .box-pictrure-detail.last .box-content .m-desc {
        min-height: auto;
    }

    .plan-detail .album-picture .list-album .box-content .m-desc,
    .plan-detail .album-picture .list-album .box-content .m-desc {
        min-height: auto;
    }

    .plan-detail .album-picture {
        background-size: cover;
    }

    .plan-detail .album-picture .list-album .box-pictrure-detail .tit-picture {
        margin-bottom: 25px;
    }

    .plan-detail .box-what {
        margin-top: 90px;
    }

    .plan-detail .album-picture .list-album .box-pictrure-detail .m-desc {
        margin: 15px 0;
    }

    .plan-detail .album-picture .list-album .link {
        margin-top: 25px;
    }

    .plan-detail .album-picture .list-album .link .link-item span {
        font-size: 1.3rem;
        letter-spacing: 0.06em;
    }

    .plan-detail .album-picture .list-album .link .link-item a {
        font-size: 1.2rem;
    }

    .plan-detail .instagram-feed {
        margin-bottom: 30px;
    }

    .plan .video-slide {
        margin: 0;

    }

    .plan .video-slide iframe {
        width: 100%;
        height: 210px;
    }

    .plan .video-yt .video-yt-slide-container {
        padding: 0 20px;
    }
}

@media (max-width: 576px) {
    .plan .video-yt.btn-global .slick-next {
        right: 5px;
    }

    .plan .video-yt.btn-global .slick-prev {
        left: 5px;
    }
}

/* =========== Start about 2 =========== */
.about2 .tit-store .title {
    font-size: 3.4rem;
}

.about2 .title {
    font-size: 3rem;
}

.about__equipment {
    margin-bottom: 175px;
}

.about__equipment .sub-txt {
    text-align: center;
}

.about__equipment .box-img {
    padding: 0px 0 140px;
    position: relative;
    max-width: 1440px;
    margin: auto;
    margin-top: 55px;
}

.about__equipment .box-img img.abs {
    position: absolute;
    top: 0;
    top: 32.1%;
    left: 53.125%;
}

.about__equipment .box-img img.abs.img2 {
    top: 16.53%;
    left: 76.04%;
}

.about__equipment .btn-link {
    margin-top: 50px;
}

@media (max-width: 1060px) {
    .about2 .tit-store .title {
        font-size: 2.8rem;
    }

    .about__equipment .box-img img.abs.img2 {
        right: 0;
        left: unset;
    }

    .about__equipment .box-img img.abs {
        left: 30%;
    }
}

@media (max-width: 768px) {
    .about2 .main .btn-link {
        margin-top: 15px;
    }

    .about2 .main .store {
        margin-bottom: 100px;
        margin-top: 40px;
    }

    .about2 .title {
        font-size: 2.2rem;
    }

    .about__equipment {
        margin-bottom: 100px;
    }

    .about__equipment .sub-txt {
        text-align: left;
    }

    .about2 .tit-store .title {
        font-size: 2.6rem;
    }

    .about__equipment .box-img img {
        width: 80%;
    }

    .about__equipment .box-img .img1 {
        width: 40%;
    }

    .about__equipment .box-img img.abs {
        left: unset;
        right: 0;
        top: 50.1%;
    }

    .about__equipment .box-img {
        padding-bottom: min(17vw, 160px);
        margin: 35px 15px 0 15px;
    }
}

/* end */
.about__step .title {
    margin-bottom: 60px;
}

.about-step__box {
    max-width: 800px;
    width: 100%;
    margin: 0 auto 105px;
    padding: 75px 50px 80px 50px;
    -webkit-box-shadow: 0px 0px 7px 0px rgba(0, 0, 0, 0.2);
    box-shadow: 0px 0px 7px 0px rgba(0, 0, 0, 0.2);
}

.step-box__subtitle {
    font-size: 1.4rem;
    font-family: 'Zen Old Mincho', serif;
    font-weight: bold;
    line-height: 1;
    text-align: center;
    letter-spacing: 0.06em;
    color: #fff;
    width: 69px;
    margin: auto;
    background-color: #B39D72;
    padding: 2px 0 4px 0;
}

.step-box__title {
    font-family: 'Zen Kaku Gothic Antique', sans-serif;
    font-size: 2rem;
    font-weight: bold;
    letter-spacing: 0.1em;
    text-align: center;
    margin-top: 26px;
    line-height: calc(30.25/20);
}

.step-box__note {
    font-size: 1.3rem;
    text-align: center;
    line-height: calc(30.25/13);

}

.step-box__img {
    margin: 30px auto 0;
    text-align: center;
}

.step-box__desc {
    margin: 30px 0 0 0;
    line-height: calc(27/14);
}

.step-box__desc span {
    font-size: 1.3rem;
}

.step-box__table {
    margin: 50px 0 0 0;
    padding-bottom: 20px;
}

.step-box__table table {
    width: 100%;
    border-collapse: collapse;
    border-spacing: 0;
}

.step-box__table table tr th,
.step-box__table table tr td {
    width: 50%;
    border: 2px solid #ffffff;
}

.step-box__table table tr th {
    color: #B23D53;
    font-weight: bold;
    letter-spacing: 0.06em;
    background: #F0EBE4;
    padding: 6px 0;
}

.step-box__table table tr td {
    background: #F8F6F3;
    padding: 15px 30px;
}

.step__faq {
    margin-top: 40px;
}

.step-faq__item:not(:last-of-type) {
    margin: 0 0 25px 0;
}

.faq-item__show {
    display: flex;
    justify-content: space-between;
    align-items: center;
    background: #F0EBE4;
    padding: 6px 20px;
    font-weight: bold;
    cursor: pointer;
}

.faq-item__title {
    font-size: 1.3rem;
    padding-left: 1em;
    text-indent: -1em;
    color: #655f54;
}

.faq-item__btn {
    position: relative;
    width: 11px;
    height: 11px;
}

.faq-item__btn::before,
.faq-item__btn::after {
    content: '';
    position: absolute;
    background: #655F54;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    transition: 0.2s ease-in-out;
}

.faq-item__btn::after {
    width: 1px;
    height: 100%;
}

.faq-item__btn::before {
    width: 100%;
    height: 1px;
}

.faq-item__show.is-open .faq-item__btn::after {
    height: 0;
}

.faq-item__hide {
    padding: 20px;
    background: #F0EBE4;
    margin: 2px 0 0 0;
    display: none;
}

.faq-item__hide p {
    font-size: 1.3rem;
    line-height: calc(27/13);
}

@media (max-width: 768px) {
    .about__step .title {
        margin-bottom: 50px;
    }

    .about-step__box {
        box-shadow: unset;
        padding: 0;
        margin: 0 auto 65px;
        width: calc(100% - 40px);
    }

    .step-box__title {
        margin-top: 10px;
        font-size: 1.7rem;
        line-height: calc(23/17);
    }

    .step-box__subtitle {
        font-size: 1.2rem;
    }

    .step-box__desc {
        margin: 20px 0 0 0;
    }

    .step-box__table {
        margin: 20px 0 0 0;
        padding-bottom: 10px;
    }

    .step__faq {
        margin-top: 15px;
    }

    .step-faq__item:not(:last-of-type) {
        margin: 0 0 15px 0;
    }

    .faq-item__show {
        padding: 9px 10px 9px 20px;
    }

    .step-box__note {
        font-size: 1.2rem;
    }

    .step-box__img {
        margin: 25px auto 0;
    }

    .step-box__table table tr td {
        font-size: 1.2rem;
        padding: 10px;
    }

    .faq-item__title {
        line-height: calc(20/13);
        width: calc(100% - 11px);
    }
}

/* end faq*/
.about2 .plan-list {
    position: relative;
    background: url('../imgs/about-detail/bg-planlist.jpg') no-repeat;
    padding: 140px 0;
    background-position: center top;
    background-size: 100% 100%;
}

.about2 .plan-list .title {
    font-family: 'Zen Old Mincho', serif;
}

.plan-list__txtabs {
    position: absolute;
    right: 2%;
    bottom: 20%;
    font-size: min(10vw, 18.7rem);
    letter-spacing: 0.08em;
    line-height: 1;
    color: #fff;
    font-family: 'Zen Old Mincho', serif;
}

.about2 .plan-list .btn-link {
    margin-top: 100px;
}

@media (max-width: 768px) {
    .about2 .plan-list {
        padding: 40px 0;
    }

    .about2 .plan-list .btn-link {
        margin-top: 40px;
    }

    .main .plan-list .list-img .box:nth-of-type(odd) {
        margin-top: -15px;
    }

    .main .plan-list .list-img .box:nth-of-type(even) {
        margin-top: 15px;
    }
}

/* =========== End about 2 =========== */

/* ================Store=============== */
.store .store-1,
.store .store-2,
.store .store-3 {
    position: relative;
    margin-bottom: 250px;
}

.store .store-info {
    background-color: rgba(365, 365, 365, 0.9);
    padding: 22.5px 40px;
    max-width: 546px;
    margin-left: auto;
    position: absolute;
    top: 90px;
    right: 0;
    box-shadow: 0 0 3px #ccc;
}

.store .store-info .title-store {
    display: flex;
    align-items: flex-end;
    justify-content: center;
}

.store .store-info .title-store .num-store {
    text-align: center;
    font-family: 'Zen Old Mincho', serif;
}

.store .store-info .title-store .num-store span {
    font-size: 1.219rem;
    line-height: calc(13.71/12.19);
    font-weight: bold;
}

.store .store-info .title-store .num-store p {
    font-size: 2.438rem;
    line-height: calc(13.71/24.38);
    font-weight: bold;
    margin-bottom: 4px;

}

.store .store-info .title-store h4 {
    font-size: 2.4rem;
    line-height: calc(27.25/24);
    letter-spacing: 0.16em;
    padding-left: 6px;
    font-family: 'Zen Old Mincho', serif;
}

.store .store-info .sub-tit {
    text-align: center;
    font-size: 1.2rem;
}

.store .store-1 .num-store {
    color: #908db1;
}

.store .store-2 .num-store {
    color: #b9777d;
}

.store .store-3 .num-store {
    color: #586a14;
}

.store .store-info h5 {
    font-size: 1.8rem;
    line-height: calc(24.25/18);
    font-family: 'Zen Kaku Gothic Antique', sans-serif;
    font-weight: bold;
    text-align: center;
    margin: 25px 0;
}

.store .store-info .m-desc {
    margin-bottom: 20px;
}

.store .store-info .btn-link {
    max-width: 150px;
    padding: 5px 0;
    font-size: 1.5rem;
    margin-bottom: 0;
}

@media (max-width: 768px) {
    .store .slide-store figure img {
        width: 100%;
    }

    .store .store-info {
        margin: 0 4%;
        right: unset;
        max-width: 100%;
        top: 80%;
        padding: 25px 25px 35px;
    }

    .store .store-1,
    .store .store-2,
    .store .store-3 {
        margin-bottom: 325px;
    }
}

@media (max-width: 576px) {
    .store .store-info .title-store .num-store span {
        font-size: 1rem;
    }

    .store .store-info .title-store .num-store p {
        font-size: 2rem;
    }

    .store .store-info .title-store h4 {
        font-size: 2.2rem;
    }

    .store .store-info h5 {
        font-size: 1.5rem;
        margin: 25px 0 15px;
    }

    .store .store-1,
    .store .store-2,
    .store .store-3 {
        margin-bottom: 400px;
    }

}


/* =========== Store-detail ============= */
.store-detail .contents-page {
    padding-top: 100px;
}

.store-detail .contents-page .concept-info {
    position: relative;
}

.store-detail .contents-page .img-concept {
    position: absolute;
    top: -40px;
    left: 23.7%;
}

.store-detail .contents-page .box-img {
    max-width: 1440px;
    margin: auto;
    padding-bottom: 120px;
    position: relative;
    text-align: left;
    margin-bottom: 60px;
}

.store-detail .contents-page .box-img .img-abs {
    position: absolute;
}

.store-detail .contents-page .box-img .img2 {
    right: 15%;
    bottom: 0;
}

.store-detail .contents-page .box-img .img3 {
    right: 6%;
    top: 18%;
}

.store-detail .slide-photo {
    overflow: hidden;
}


.store-detail .btn-global .slick-next {
    right: calc(50% - 285px);
    width: 40px;
    height: 40px;
    background: url('../imgs/plan/arr_next.png');
    background-size: cover;
}

.store-detail .btn-global .slick-next:hover {
    opacity: 0.8;
}

.store-detail .btn-global .slick-next::before {
    content: '';
}

.store-detail .btn-global .slick-prev {
    left: calc(50% - 285px);
    width: 40px;
    height: 40px;
    background: url('../imgs/plan/arr_prev.png');
    background-size: 40px 40px;
    z-index: 999;
}

.store-detail .btn-global .slick-prev::before {
    content: '';
}

.store-detail .btn-global a {
    margin: 0 25px;
    transition: all 0.4s;
}

.store-detail .btn-global a:hover {
    opacity: 0.7;
}

.store-detail .photo-store {
    margin-bottom: 160px;
}

.store-detail .shooting {
    margin-bottom: 160px;
}

.store-detail .costume-gallery {
    margin-bottom: 200px;
}

.store-detail .costume-gallery .info {
    align-items: flex-end;
}

.store-detail .costume-gallery .info .img {
    width: 47%;
    text-align: center;
}

.store-detail .costume-gallery .info .txt {
    width: 47%;
}

.store-detail .costume-gallery .info .dorekana {
    margin-bottom: 40px;
}

.store-detail .costume-gallery .info .txt a {
    margin-top: 20px;
    font-size: 1.5rem;
    background-position: center right 10px;
}

.store-detail .info-booking {
    background-color: #f0ebe4;
    text-align: center;
    padding: 50px 0 70px;
    margin-bottom: 160px;
    position: relative;
}

.store-detail .info-booking::before {
    content: '';
    width: 1px;
    height: 70px;
    background-color: #333333;
    top: -35px;
    left: 50%;
    position: absolute;
    transition: 2s .3s;
    display: block;
}

.store-detail .info-booking .box-data {
    max-width: 250px;
    margin: 40px auto;
    align-items: center;
    font-weight: bold;
}

.store-detail .info-booking .box-data .info-tel {
    text-align: left;
}

.store-detail .info-booking .box-data .info-tel p {
    font-size: 1.6rem;
    font-family: 'Zen Kaku Gothic Antique', sans-serif;
    line-height: calc(24.25/17);

}

.store-detail .info-booking .box-data .info-tel div {
    font-size: 1.7rem;
    font-family: 'Zen Kaku Gothic Antique', sans-serif;
    color: #333333;
    line-height: calc(24.25/17);
    padding-bottom: 5px;
    border-bottom: 1px solid #c2c2c2;
}

.store-detail .info-booking .box-link {
    max-width: 800px;
    margin: auto;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}

.store-detail .info-booking .box-link a {
    width: 47%;
    max-width: unset;
    border-radius: 8px;
    font-size: 1.2rem;
    letter-spacing: 0;
    line-height: calc(21/12);
    font-weight: 500;
    padding: 5px 0;
}

.store-detail .info-booking .box-link a span.m-txt {
    font-size: 1.6rem;
    line-height: calc(28/16);
    letter-spacing: 0.12em;
    font-weight: bold;
}

.store-detail .info-booking .box-link a span.leter-txt {
    letter-spacing: 0.04em;
}

.store-detail .info-booking .box-link a .img-cam {
    background: url('../imgs/store-detail/cam_wt.png') no-repeat;
    padding-left: 22px;
    background-position: center left;
    background-size: 16px 14px;

}

.store-detail .info-booking .box-link a:hover .img-cam {
    background: url('../imgs/store-detail/cam_bl.png') no-repeat;
    padding-left: 22px;
    background-position: center left;
    background-size: 16px 14px;
}

.store-detail .map-store {
    margin-bottom: 160px;
}

.store-detail .map-store .area-map {
    text-align: center;
}

.store-detail .map-store .info-map {
    max-width: 700px;
    margin: 40px auto;
}

.store-detail .map-store .info-map p {
    line-height: calc(25/14);
    letter-spacing: 0.06em;
    font-weight: 400;
}

.store-detail .map-store .info-map .data-ct a {
    line-height: calc(25/14);
    letter-spacing: 0.06em;
    font-weight: 400;
}

.store-detail .map-store .info-map .info-title {
    font-size: 1.4rem;
    font-weight: bold;

}

.store-detail .map-store .info-map .vehicle {
    padding: 25px 35px;
    background-color: #f8f6f3;
    margin-bottom: 35px;
    margin-top: 20px;
}

.store-detail .map-store .info-map .vehicle li {
    position: relative;
}

.store-detail .map-store .info-map .vehicle li::after {
    position: absolute;
    content: '';
    width: 10px;
    height: 1px;
    background-color: #333333;
    top: 14px;
    left: -20px;
}

.store-detail .map-store .info-map .vehicle .by-vehicle {
    font: 1.3rem;
    font-weight: bold;
    line-height: calc(25/13);
}

.store-detail .map-store .info-map .vehicle .note {
    font-size: 1.2rem;
    font-weight: bold;
    color: #b23d53;
    margin-bottom: 25px;
}

.store-detail .map-store .info-map .data-ct {
    padding: 30px 0;
    border-top: 1px solid #999999;
}

.store-detail .map-store .info-map .data-ct:last-child {
    border-bottom: 1px solid #999999;
}

.store-detail .staff-blog {
    text-align: center;
    position: relative;
    padding-bottom: 65px;
    margin-bottom: 160px;
}

.store-detail .staff-blog::after {
    position: absolute;
    content: '';
    background-color: #f8f6f3;
    width: 100%;
    height: 70%;
    bottom: 0;
    left: 0;
    z-index: -1;
}

.store-detail .staff-blog .blog {
    position: relative;
    padding-bottom: 120px;
    display: inline-block;
}

.store-detail .staff-blog .blog .box-link {
    position: absolute;
    left: 9%;
    width: 82%;
    background-color: rgba(365, 365, 365, 0.9);
    box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.2);
    bottom: 0;
    padding: 30px 0 15px;
}

.store-detail .staff-blog .blog .box-link a {
    max-width: 150px;
    padding: 5px 0;
    margin-top: 10px;
}

.store-detail .staff-blog .blog .box-link .tit-picture {
    font-size: 1.8rem;
    font-weight: bold;
    line-height: calc(22.25/18);
    letter-spacing: 0.1em;
    font-family: 'Zen Kaku Gothic Antique', sans-serif;
    margin-bottom: 10px;
    position: relative;
    display: inline-block;
    padding: 0 20px;
}

.store-detail .staff-blog .blog .box-link .tit-picture::before {
    content: '';
    position: absolute;
    width: 12px;
    height: 1px;
    left: 0;
    top: 50%;
    background: #333333;
}

.store-detail .staff-blog .blog .box-link .tit-picture::after {
    content: '';
    position: absolute;
    width: 12px;
    height: 1px;
    right: 0;
    top: 50%;
    background: #333333;
}

.store-detail .other-stores .link-store a {
    width: 48.38%;
    background-color: #fff;
    box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.2);
    transition: all 0.4s;


}

/* 
.store-detail .other-stores .link-store a:hover {
    box-shadow: 0 0 10px #333;
} */

.store-detail .other-stores .link-store a>figure {
    width: 56.18%;
}

.store-detail .other-stores .link-store a .info-store {
    width: 43.82%;
    text-align: center;
    padding-top: 15px;
    position: relative;
}

.store-detail .other-stores .link-store a .info-store .store-name {
    font-size: 1.4rem;
}

.store-detail .other-stores .link-store a .info-store .store-name span {
    font-size: 2.8rem;
    display: block;
    line-height: calc(15.98/28);
    font-weight: bold;
    font-family: 'Zen Old Mincho', serif;
}

.store-detail .other-stores .link-store a .info-store .desc {
    font-size: 1.7rem;
    line-height: calc(30/17);
    font-weight: bold;
    font-family: 'Zen Kaku Gothic Antique', sans-serif;
    color: #333333;
    margin-top: min(1.5vw, 30px);
}

.store-detail .other-stores .link-store a .info-store img {
    position: absolute;
    right: 10px;
    bottom: 10px;
    transition: all 0.4s;
}

.store-detail .other-stores .link-store a:hover .info-store img {
    right: 5px;
}

.store-detail .other-stores .link-store a figure {
    overflow: hidden;
}

.store-detail .other-stores .link-store a figure img {
    transition: all 0.4s;
}

.store-detail .other-stores .link-store a:hover figure img {
    transform: scale(1.2);
}

.store-detail .plan-list {
    position: relative;
    background: url('../imgs/about-detail/bg-planlist.jpg') no-repeat;
    padding: 140px 0;
    background-position: center top;
    background-size: 100% 100%;
    margin-top: 160px;
}

.store-detail .plan-list .title {
    font-family: 'Zen Old Mincho', serif;
}

.plan-list__txtabs {
    position: absolute;
    right: 2%;
    bottom: 20%;
    font-size: min(10vw, 18.7rem);
    letter-spacing: 0.08em;
    line-height: 1;
    color: #fff;
    font-family: 'Zen Old Mincho', serif;
}

.store-detail .plan-list .btn-link {
    margin-top: 100px;
}

/* shooting */
.store-detail .shooting-wrap {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-start;
}

.store-detail .shooting-map {
    width: 50.31%;
    max-width: 498px;
    line-height: 1;
    position: relative;
}

/* .store-detail .shooting-map a {
    background: #908DB1;
    width: 6.025%;
    border-radius: 100%;
    position: absolute;
    display: block;
} */

/* .store-detail .shooting-map a:hover {
    background: #b39d72;
}

.store-detail .shooting-map a:after {
    content: '';
    padding-bottom: 100%;
    display: block;
} */

/* .store-detail .shooting-map a span {
    position: absolute;
    width: 100%;
    height: 100%;
    display: block;
    text-align: center;
    font-size: min(1.6vw, 1.6rem);
    line-height: 1.7;
    color: #fff;
    font-weight: bold;
    font-family: 'Zen Kaku Gothic Antique', sans-serif;
} */

/* .store-detail .shooting-map a.spot-1 {
    top: 28.8%;
    left: 14.5%;
}

.store-detail .shooting-map a.spot-2 {
    top: 33.8%;
    left: 44.5%;
}

.store-detail .shooting-map a.spot-3 {
    top: 63.8%;
    left: 40.9%;
}

.store-detail .shooting-map a.spot-4 {
    top: 68%;
    left: 54.9%;
}

.store-detail .shooting-map a.spot-5 {
    top: 87.5%;
    left: 56.5%;
}

.store-detail .shooting-map a.spot-6 {
    top: 70.8%;
    left: 71.2%;
}

.store-detail .shooting-map a.spot-7 {
    top: 56.8%;
    right: 0;
}

.store-detail .shooting-map a.spot-8 {
    top: 29.3%;
    left: 62.5%;
}

.store-detail .shooting-map a.spot-9 {
    top: 29.5%;
    left: 80.5%;
}

.store-detail .shooting-map a.spot-10 {
    top: 12%;
    right: 1%;
}

.store-detail .shooting-map a.spot-11 {
    top: 16.5%;
    left: 69.5%;
} */

.store-detail .shooting-box {
    width: 46.77%;
}

.store-detail .shooting-slider-for {
    background: #fff;
    box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.2);
    margin: 0 0 20px;
}

.store-detail .shooting-slide .img {
    position: relative;
}

.store-detail .shooting-slide .img p {
    position: absolute;
    top: 7px;
    left: 7px;
    width: 30px;
    height: 30px;
    border-radius: 100%;
    background: #908DB1;
    display: block;
    text-align: center;
    font-size: 1.6rem;
    line-height: 1.7;
    color: #fff;
    font-weight: bold;
    font-family: 'Zen Kaku Gothic Antique', sans-serif;
    z-index: 1;
}

.store-detail .shooting-slide .inner {
    padding: 15px 20px;
    line-height: 1.6;
    letter-spacing: 0;
}

.store-detail .shooting-slide .tit {
    font-weight: bold;
}

.store-detail .shooting-thumb {
    width: 110px;
    margin: 0 4px;
    position: relative;
    cursor: pointer;
}

.store-detail .shooting-thumb p {
    position: absolute;
    top: 3px;
    left: 3px;
    width: 15px;
    height: 15px;
    border-radius: 100%;
    background: #908DB1;
    display: block;
    text-align: center;
    font-size: 1rem;
    line-height: 1.2;
    color: #fff;
    font-weight: bold;
    font-family: 'Zen Kaku Gothic Antique', sans-serif;
    z-index: 1;
}

.store-detail .shooting-slider .slick-arrow {
    position: absolute;
    top: 50%;
    width: 40px;
    height: 40px;
    z-index: 1;
}

.store-detail .shooting-slider .slick-prev {
    left: -20px;
    background: url("../imgs/plan/arr_prev.png") no-repeat top left/100% 100%;
}

.store-detail .shooting-slider .slick-next::before,
.store-detail .shooting-slider .slick-prev::before {
    content: '';
}

.store-detail .shooting-slider .slick-next {
    right: -20px;
    background: url("../imgs/plan/arr_next.png") no-repeat top left/100% 100%;
}

.shooting-slider-nav .slick-list {
    margin: 0 -3px;
}

@media (min-width: 1100px) {
    .store-detail .shooting-map {
        margin-left: -40px;
    }

    .store-detail .shooting-box {
        margin-right: -30px;
    }
}

.main .plan-list h2.title-2 {
    font-family: 'Zen Old Mincho', serif;
}

@media (max-width: 768px) {
    .main .plan-list h2.title-2 {
        font-size: 2.2rem;
        line-height: calc(37.25/22);
        letter-spacing: 0.16em;
        font-family: 'Zen Old Mincho', serif;
    }

    .store-detail .shooting-map {
        width: calc(100% + 30px);
        margin: 0 -15px 20px;
    }

    .store-detail .shooting-map a span {
        font-size: min(3vw, 1.6rem);
    }

    .store-detail .shooting-box {
        width: 100%;
    }

    .store-detail .shooting-slider-for {
        margin: 0 10px 20px;
    }

    .store-detail .shooting-slide .img img {
        width: 100%;
    }

    .store-detail .contents-page .img-concept {
        top: -60px;
    }

    .store-detail .contents-page .box-img {
        margin-left: 20px;
        margin-right: 20px;
        margin-bottom: 25px;
    }

    .store-detail .contents-page .box-img .img1 {
        width: 74.13%;
    }

    .store-detail .contents-page .box-img .img2 {
        width: 45.2%;
        right: 0;
        bottom: 25%;
    }

    .store-detail .contents-page .box-img .img3 {
        width: 41.8%;
        bottom: 0;
        top: unset;
        left: 6%;

    }

    .store-detail .area-map iframe {
        max-width: 100%;
    }

    .store-detail .slide-photo img {
        width: 100%;
    }

    .store-detail .slide-photo a {
        margin: 0 20px;
    }

    .store-detail .slide-photo .slick-next {
        right: 5px;
    }


    .store-detail .slide-photo .slick-prev {
        left: 5px;
    }

    .store-detail .slider-nav-photo {
        display: flex;
        margin: 1% auto 0;
        /* gap: 1%; */
    }

    .store-detail .slider-nav-photo .slick-slide {
        /* width: 32% !important; */
        /* margin: 1% 1% 0 0; */
        padding: 0 2px;

    }

    .store-detail .slider-nav-photo .slick-slide:nth-of-type(3) {
        /* margin: 1% 0 0 0; */
        /* margin-right: 0; */
    }

    .store-detail .slider-nav-photo .slick-track,
    .store-detail .slider-nav-photo .slick-list {
        /* width: 100% !important; */
        /* -webkit-transform: translate3d(0, 0, 0) !important;
        -moz-transform: translate3d(0, 0, 0) !important;
        -ms-transform: translate3d(0, 0, 0) !important;
        -o-transform: translate3d(0, 0, 0) !important;
        transform: translate3d(0, 0, 0) !important; */
        /* transform: unset !important; */
    }

    /* .store-detail .slider-nav-photo .slick-current {
        border: 4px solid #c2c2c2;
    } */
    .store-detail .photo-store,
    .store-detail .shooting,
    .store-detail .costume-gallery,
    .store-detail .info-booking,
    .store-detail .map-store,
    .store-detail .staff-blog {
        margin-bottom: 60px;
    }

    .store-detail .costume-gallery .info .img {
        width: 100%;
    }

    .store-detail .costume-gallery .info .txt {
        width: 100%;
        margin-top: 10px;
    }

    .store-detail .info-booking .box-link a {
        width: 100%;
        letter-spacing: -0.1em;
    }

    .store-detail .info-booking .m-desc {
        text-align: left;
    }

    .store-detail .info-booking .box-data {
        margin: 25px auto;
    }

    .store-detail .costume-gallery .info .dorekana {
        margin-bottom: 25px;
    }

    .store-detail .costume-gallery h3 span {
        margin-left: -10px;
        letter-spacing: 0.05em;
    }

    .store-detail .map-store .info-map .info-title {
        font-size: 1.3rem;
    }

    .store-detail .map-store .info-map .data-ct {
        padding: 20px 0;
    }

    .store-detail .staff-blog .blog .box-link a {
        margin-bottom: 0;
    }

    .store-detail .staff-blog .blog .box-link {
        padding: 20px 0;
    }

    .store-detail .other-stores .link-store a {
        width: 100%;
        margin-bottom: 20px;
    }

    .store-detail .plan-list {
        margin-top: 60px;
    }

    .store-detail .other-stores .link-store a .info-store .desc {
        margin: 20px 0 30px;
    }

    .store-detail .other-stores .link-store a .info-store .store-name {
        font-size: 1rem;
    }

    .store-detail .other-stores .link-store a .info-store {
        padding-top: 10px;
    }

    .store-detail .other-stores .link-store a .info-store .store-name span {
        font-size: 2rem;
    }

    .store-detail .other-stores .link-store a .info-store .desc {
        font-size: 1.5rem;
    }

    .store-detail .other-stores .link-store a .info-store img {
        width: 10px;
        height: 9px;
    }

    .store-detail .plan-list {
        padding: 40px 0;
    }

    .store-detail .plan-list .btn-link {
        margin-top: 40px;
    }
}

@media (max-width: 576px) {
    .store-detail .contents-page {
        padding-top: 60px;
    }

    .store-detail .contents-page .img-concept {
        left: 0;
        top: -40px;
        width: 125px;
    }
}



/* =========== Start Staff =========== */
/* Staff Intro */
.staff__intro {
    padding-top: 30px;
    margin-bottom: 170px;
}

.staff-intro__contain {
    width: 100%;
    max-width: 1077px;
    margin: 106px auto 0;
    position: relative;
}

.staff-intro__contain::after {
    width: min(70vw, 715px);
    height: min(39vw, 557px);
    background: #F0EBE4;
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: -1;
}

.staff-intro__item {
    position: relative;
    width: 46.983%;
}

.intro-item__head {
    position: absolute;
    top: -28px;
    right: 32px;
    width: 220px;
    height: 73px;
    display: flex;
    justify-content: center;
    align-items: center;
    background: #ffffffed;
    -webkit-box-shadow: 0px 0px 8px 1px rgba(0, 0, 0, 0.2);
    box-shadow: 0px 0px 8px 1px rgba(0, 0, 0, 0.2);
}

.intro-item__head::after {
    mask: url(../imgs/staff/staff-txt.svg) no-repeat center center/100% 100%;
    -webkit-mask: url(../imgs/staff/staff-txt.svg) no-repeat center center/100% 100%;
    width: 104px;
    height: 45px;
    background: #908DB1;
    position: absolute;
    top: -33%;
    left: -6%;
    content: "";
}

.staff-intro__item:nth-of-type(2) .intro-item__head::after {
    background: #B9777D;
}

.staff-intro__item:nth-of-type(3) .intro-item__head::after {
    background: #586A14;
}

.intro-item__title {
    font-family: 'Zen Kaku Gothic Antique', sans-serif;
    font-size: 2rem;
    font-weight: bold;
}

.intro-item__subtitle {
    position: absolute;
    left: 0;
    top: 0;
}

.staff-intro__desc {
    width: 47%;
    margin: -45px 0 0 auto;
}

@media (min-width: 769px) {
    .staff-intro__item:nth-of-type(1) {
        margin-bottom: 130px;
    }

    .staff-intro__item:nth-of-type(2) {
        position: absolute;
        right: 0;
        top: 50%;
        transform: translateY(-50%);
    }
}

@media (max-width: 768px) {
    .staff-intro__contain::after {
        display: none;
    }

    .intro-item__head {
        width: 160px;
        height: 53px;
        right: -10px;
    }

    .intro-item__head::after {
        width: 75px;
        height: 32px;
    }

    .intro-item__title {
        font-size: 1.6rem;
    }

    .intro-item__img img {
        width: 100%;
    }

    .staff-intro__contain {
        width: calc(100% - 40px);
        display: flex;
        flex-direction: column;
        margin: 70px auto 0;
    }

    .staff-intro__item {
        width: 100%;
    }

    .staff-intro__item:not(:last-of-type) {
        margin-bottom: 70px;
    }

    .staff-intro__desc {
        margin: 35px auto 0;
        width: 100%;
    }

    .staff__intro {
        padding-top: 30px;
        margin-bottom: 70px;
    }
}

/* End Staff Intro */

.staff__box:not(:last-of-type) {
    margin: 0 0 90px 0;
}

.staff-box__outer {
    max-width: 1274px;
    width: 100%;
    margin: 75px auto 0;
}

.staff-box__img--lg {
    margin: 0 auto -195px 0;
}

.staff-box__contain {
    position: relative;
    z-index: 2;
}

.staff-box__inner {
    width: 100%;
    max-width: 899px;
    height: 435px;
    display: flex;
    justify-content: center;
    align-items: center;
    background: #F0EBE4;
    margin-left: auto;
}

.staff-box__title {
    text-align: center;
    font-family: 'Zen Kaku Gothic Antique', sans-serif;
    font-size: 2rem;
    line-height: calc(42/20);
    margin-bottom: 40px;
}

.staff-box__desc {
    width: 480px;
}

.staff-box__img--sm {
    display: flex;
    justify-content: flex-end;
    margin: -40px 60px 0 0;
}

@media (max-width: 1150px) {
    .staff-box__img--lg {
        margin: 0 auto -6vw 0;
    }
}

@media (max-width: 768px) {
    .staff-box__outer {
        margin: 20px auto 0;
    }

    .staff-box__img--lg {
        width: calc(100% - 70px);
        text-align: center;
        margin: 0 auto max(-16vw, -75px);
    }

    .staff-box__img--lg img {
        width: 100%;
    }

    .staff-box__title {
        margin-bottom: 15px;
        font-size: 1.7rem;
        line-height: calc(30.25/17);
    }

    .staff__box:not(:last-of-type) {
        margin: 0 0 70px 0;
    }

    .staff-box__img--sm {
        margin: -55px 35px 0 0;
    }

    .staff__box:nth-of-type(2n) .staff-box__img--sm {
        justify-content: flex-start;
        margin: -55px 0 0 35px;
    }

    .staff .staff-blog::after {
        display: none;
    }

    .staff-box__desc {
        width: calc(100% - 80px);
        margin: 0 auto;
    }
}

@media (max-width: 430px) {
    .staff-box__img--sm img {
        width: 170px;
        height: auto;
    }
}

/* end */

.staff .staff-blog {
    text-align: center;
    position: relative;
    padding-bottom: 65px;
    margin-top: 230px;
}

.staff .staff-blog .blog {
    width: 45.8%;
    position: relative;
    padding-bottom: 120px;
    display: inline-block;
}

.staff .staff-blog .blog .box-link {
    position: absolute;
    left: 9%;
    width: 82%;
    background-color: rgba(365, 365, 365, 0.9);
    box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.2);
    bottom: 0;
    padding: 30px 0 15px;
}

.staff .staff-blog .blog .box-link .tit-picture {
    font-size: 1.8rem;
    font-weight: bold;
    line-height: calc(22.25/18);
    letter-spacing: 0.1em;
    font-family: 'Zen Kaku Gothic Antique', sans-serif;
    margin-bottom: 10px;
    position: relative;
    display: inline-block;
    padding: 0 20px;
}

.staff .staff-blog .blog .box-link .tit-picture::before {
    content: '';
    position: absolute;
    width: 12px;
    height: 1px;
    left: 0;
    top: 50%;
    background: #333333;
}

.staff .staff-blog .blog .box-link .tit-picture::after {
    content: '';
    position: absolute;
    width: 12px;
    height: 1px;
    right: 0;
    top: 50%;
    background: #333333;
}

.staff .staff-blog .blog .box-link a {
    max-width: 150px;
    padding: 5px 0;
    margin-top: 10px;
}

.staff .staff-blog::after {
    position: absolute;
    content: '';
    background-color: #f8f6f3;
    width: 100%;
    height: 70%;
    bottom: 0;
    left: 0;
    z-index: -1;
}

.staff .plan-list {
    position: relative;
}

.staff .plan-list {
    position: relative;
    background: url('../imgs/about-detail/bg-planlist.jpg') no-repeat;
    padding: 140px 0;
    background-position: center top;
    background-size: 100% 100%;
    margin-top: 160px;
}

@media (max-width: 768px) {
    .staff .staff-blog .blog .box-link {
        left: 5%;
        width: 90%;
        padding: 20px 0 0;
    }

    .staff .staff-blog {
        margin-top: 80px;
        padding-bottom: 0;
    }

    .staff .staff-blog .blog {
        width: 100%;
        margin-bottom: 60px;
    }

    .staff .staff-blog .blog img {
        width: 100%;
    }

    .staff-blog .container {
        width: calc(100% - 70px);
    }

    .staff .plan-list {
        margin-top: 0;
        padding: 40px 0 70px 0;
    }

    .staff .staff-blog .blog .box-link .tit-picture {
        font-size: 1.7rem;
    }
}

/* =========== End Staff =========== */

/* =========== Start Product List =========== */
.prolist__block {
    padding-top: 70px;
    margin-bottom: 240px;
}

.prolist-box {
    position: relative;
}

.prolist-box:not(:last-of-type) {
    margin-bottom: 210px;
}

.prolist-box__contain {
    position: absolute;
    right: 0;
    top: 90px;
    padding: 45px 40px;
    width: 60%;
    max-width: 546px;
    height: 295px;
    background-color: rgba(365, 365, 365, 0.9);
    -webkit-box-shadow: 0px 0px 10px 0px rgba(122, 115, 92, 0.25);
    -moz-box-shadow: 0px 0px 10px 0px rgba(122, 115, 92, 0.25);
    box-shadow: 0px 0px 10px 0px rgba(122, 115, 92, 0.25);
}

.prolist-box__title {
    font-size: 2.4rem;
    line-height: calc(27.25/24);
    letter-spacing: 0.16em;
    font-family: 'Zen Old Mincho', serif;
    font-weight: bold;
    text-align: center;
}

.prolist-box__desc {
    margin: 30px 0;
}

.prolist-box__btn .btn-link {
    max-width: 150px;
    padding: 5px 0;
    font-size: 1.5rem;
}

.prolist-more__desc {
    margin-top: 40px;
}

.prolist-more__desc span {
    color: #B23D53;
    line-height: calc(29/13);
    font-size: 1.3rem;
    display: block;
    font-weight: bold;
}

.product-list .plan-list {
    position: relative;
    background: url('../imgs/about-detail/bg-planlist.jpg') no-repeat;
    padding: 140px 0;
    background-position: center top;
    background-size: 100% 100%;
}

.product-list .plan-list .btn-link {
    margin-top: 100px;
}

@media (max-width: 768px) {
    .prolist-box__img img {
        width: 100%;
    }

    .prolist-box__contain {
        position: relative;
        top: 0;
        width: calc(100% - 30px);
        max-width: 100%;
        margin: -40px auto 0;
        padding: 20px 17px 45px;
        height: 267px;
    }

    .prolist-box:not(:last-of-type) {
        margin-bottom: 70px;
    }

    .prolist-box__title {
        font-size: 2rem;
        line-height: calc(41.25/20);
        letter-spacing: 0.04em;
    }

    .prolist-box__desc {
        margin: 15px 0 20px 0;
        text-align: justify;
        text-justify: inter-ideograph;
    }

    .prolist__block {
        padding-top: 35px;
        margin-bottom: 80px;
    }

    .prolist-more__desc {
        margin-top: 20px;
        text-align: justify;
        text-justify: inter-ideograph;
    }

    .product-list .plan-list {
        padding: 40px 0;
    }
}

/* =========== End Product List =========== */

/* =========== Start Goods =========== */
.goods__block .title {
    margin-bottom: 25px;
}

.goods__group {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

.goods__box {
    width: 46.465%;
    padding: min(4vw, 40px) min(3vw, 50px);
    -webkit-box-shadow: 0px 0px 10px 0px rgba(122, 115, 92, 0.25);
    -moz-box-shadow: 0px 0px 10px 0px rgba(122, 115, 92, 0.25);
    box-shadow: 0px 0px 10px 0px rgba(122, 115, 92, 0.25);
    display: flex;
    flex-direction: column;
    margin: 65px 0 0 0;
}

.goods-box__title {
    text-align: center;
    font-family: 'Zen Kaku Gothic Antique', sans-serif;
    font-size: 1.8rem;
    line-height: calc(22.25/18);
    font-weight: bold;
    position: relative;
    width: fit-content;
    margin: 0 auto;
}

.goods-box__title::before,
.goods-box__title::after {
    position: absolute;
    width: 10px;
    height: 1px;
    top: 50%;
    transform: translateX(-50%);
    background: #333333;
    content: "";
}

.goods-box__title::before {
    left: -12px;
}

.goods-box__title::after {
    right: -18px;
}

.goods-box__title span {
    font-size: 1.3rem;
    line-height: calc(22.25/13);
}

.goods-box__img {
    margin: min(3.5vw, 35px) 0 min(2.5vw, 25px) 0;
}

.goods-box__img img {
    width: 100%;
}

.goods-box__desc {
    line-height: calc(27/14);
    letter-spacing: 0.05em;
    margin: 0 0 18px 0;
}

.goods-box__price {
    background: #F0EBE4;
    padding: min(2.7vw, 27px) min(2vw, 22px);
}

.goods-box__price:nth-of-type(2) {
    margin-top: 20px;
}

.goods-box__price--lg {
    min-height: 191px;
}

.goods-box__price--md {
    min-height: 162px;
}

.goods-box-price__title {
    text-align: center;
    font-weight: bold;
    color: #333333;
    line-height: calc(25/14);
    font-size: 1.4rem;
}

.goods-box-price__title span {
    font-size: 2rem;
}

.goods-box-price__desc {
    line-height: calc(29/14);
    font-size: 1.4rem;
}

.goods-box__size {
    margin: 18px 0 0 0;
    font-size: 1.4rem;
}

.goods-box__size li {
    display: flex;
}

.goods-box__size li p:nth-of-type(1) {
    width: 78px;
    font-weight: bold;
}

.goods-box__size li p:nth-of-type(2) {
    width: calc(100% - 78px);
}

.goods-box-price__top {
    flex: 1;
}

.goods-box-price__bottom {
    margin-top: auto;
}

.goods__box--recommend {
    position: relative;
}

.goods__box--recommend::before {
    position: absolute;
    content: "おすすめ";
    top: -24px;
    left: min(2vw, 26px);
    width: 74px;
    height: 74px;
    border-radius: 100%;
    background: #AB995B;
    color: #FFFFFF;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 1.3rem;
    line-height: calc(13.5/13);
    letter-spacing: 0.04em;
    transform: rotate(-15deg);
}

.goods__service {
    margin: 170px 0 205px 0;
}

.goods-service__block {
    display: flex;
    justify-content: space-between;
    margin-top: 40px;
}

.goods-service__desc {
    width: 45.455%;
}

.goods-service__problems {
    width: 45.253%;
    background: #F0EBE4;
    padding: 20px min(2vw, 46px) 25px;
}

.goods-service__problems p {
    font-family: 'Zen Kaku Gothic Antique', sans-serif;
    font-size: 1.7rem;
    line-height: calc(22.25/17);
    font-weight: bold;
    margin-bottom: 7px;
}

.related__block {
    display: flex;
    justify-content: space-between;
}

.related__item {
    width: 48.384%;
    display: flex;
    -webkit-box-shadow: 0px 0px 10px 0px rgba(122, 115, 92, 0.25);
    -moz-box-shadow: 0px 0px 10px 0px rgba(122, 115, 92, 0.25);
    box-shadow: 0px 0px 10px 0px rgba(122, 115, 92, 0.25);
    transition: all 0.4s;
}

.related-item__img {
    width: 56.159%;
}

.related-item__img {
    transition: all 0.4s;
    overflow: hidden;

}

.related__item .related-item__img img {
    transition: all 0.4s;
}

.related__item:hover .related-item__img img {
    transform: scale(1.2);
}

.related-item__content {
    width: 43.841%;
    background: #FFFFFF;
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
}

.related-item__content::after {
    background: url(../imgs/top/arr-gray.png) no-repeat center center/100% 100%;
    width: 15px;
    height: 12px;
    content: "";
    position: absolute;
    right: 12px;
    bottom: 10px;
    transition: 0.2s linear;
}

.related__item:hover .related-item__content::after {
    right: 6px;
}

.related-item__title {
    font-family: 'Zen Kaku Gothic Antique', sans-serif;
    font-size: 1.7rem;
    line-height: calc(30.22/17);
}

.goods-page .plan-list {
    margin-top: 200px;
    position: relative;
    background: url('../imgs/about-detail/bg-planlist.jpg') no-repeat;
    padding: 140px 0;
    background-position: center top;
    background-size: 100% 100%;
}

@media (max-width: 768px) {
    .goods__block .title {
        margin-bottom: 25px;
    }

    .goods__group {
        flex-direction: column;
    }

    .goods__box {
        width: 100%;
        margin: 0 0 55px 0;
        padding: 40px 20px;
    }

    .goods__box:last-of-type {
        margin-bottom: 0;
    }

    .goods-box__img {
        margin: 19px 10px;
    }

    .goods-box__title span {
        font-size: 1.2rem;
    }

    .goods-box-price__title {
        font-size: 1.3rem;
    }

    .goods-box-price__title span {
        font-size: 1.6rem;
    }

    .goods-box-price__desc {
        font-size: 1.3rem;
        margin: 5px 0 0 0;
    }

    .goods-box__price {
        padding: 20px 10px;
        min-height: auto !important;
    }

    .goods-box__size {
        margin: 15px 0 0 0;
        font-size: 1.3rem;
    }

    .goods-box__size li p:nth-of-type(1) {
        width: 72px;
    }

    .goods-box__size .txt-sp {
        letter-spacing: 0.01em;
    }

    .goods__box--recommend::before {
        font-size: 1.1rem;
        width: 62px;
        height: 62px;
        left: 11px;
        top: -20px;
    }

    .goods-box__title {
        font-size: 1.7rem;
    }

    .goods__service {
        margin: 50px 0 60px 0;
    }

    .goods-service__block {
        flex-direction: column;
        margin-top: 20px;
    }

    .goods-service__desc {
        width: 100%;
    }

    .goods-service__problems {
        margin-top: 25px;
        width: 100%;
        padding: 25px 20px;
    }

    .goods-service__problems p {
        margin-bottom: 10px;
    }

    .related__block {
        flex-direction: column;
    }

    .related__item {
        width: 100%;
    }

    .related__item:not(:last-of-type) {
        margin-bottom: 20px;
    }

    .related-item__title {
        font-size: 1.5rem;
    }

    .goods-page .plan-list {
        margin-top: 78px;
        padding: 40px 0;
    }
}

/* =========== End Goods =========== */

/* ==========reserve============= */

.reserve .box-tit-page>p {
    margin-bottom: 40px;
}

.reserve .box-tit-page .box-plan {
    max-width: 800px;
    padding: 40px 0;
    background-color: #f8f6f3;
    margin: 0 auto 40px;
}

.reserve .box-tit-page .box-plan h5 {
    font-size: 1.4rem;
    letter-spacing: 0.06em;
    line-height: calc(42/14);
    color: #b23d53;
}

.reserve .box-tit-page .box-plan p {
    max-width: 680px;
    margin: 0 auto;
    text-align: left;
    font-size: 1.3rem;
    line-height: calc(33/13);
}

.reserve .form-booking {
    max-width: 800px;
    margin: 80px auto 0;
    -webkit-box-shadow: 0px 0px 6px 0px rgba(51, 51, 51, 0.2);
    box-shadow: 0px 0px 6px 0px rgba(51, 51, 51, 0.2);
    padding: 80px 40px 60px;
    text-align: left;
}

.reserve .form-booking h3 {
    font-size: 2rem;
    text-align: center;
    font-family: 'Zen Kaku Gothic Antique', sans-serif;
    line-height: calc(22.25/20);
    margin-bottom: 40px;
}

.reserve .form-booking .form-control {
    margin-bottom: 40px;
}

.reserve .form-booking .form-control .tit-box {
    font-weight: bold;
    font-size: 1.5rem;
    list-style: calc(29/15);
 display: block;
}

.reserve .form-booking .form-control input.txt {
    display: block;
    width: 100%;
    height: 45px;
    border-radius: 5px;
    border: 1px solid #333;
    outline: none;
    margin-top: 10px;
    padding-left: 16px;
}

.reserve .plan-list {
    margin-top: 200px;
    position: relative;
    background: url('../imgs/about-detail/bg-planlist.jpg') no-repeat;
    padding: 140px 0;
    background-position: center top;
    background-size: 100% 100%;
}

.reserve .form-booking .required-txt {
    background: #b23d53;
    color: #fff;
    font-weight: 400;
    font-size: 1rem;
    line-height: calc(29/10);
    height: 16px;
    padding: 0 5px;
    display: inline-flex;
    align-items: center;
    margin-left: 6px;
    margin-bottom: 2px;
}

.reserve .form-booking .form-control p.note {
    font-size: 1.3rem;
    font-weight: 500;
    margin-top: 10px;
}

.reserve .form-booking .form-control p.note a {
    color: #b23d53;
    text-decoration: underline;
    transition: all 0.4s;
}
.reserve .form-booking .form-control p.note a:hover{
    opacity: 0.6;
}

.reserve .form-booking .form-control select {
    display: block;
    height: 45px;
    width: 100%;
    padding-left: 16px;
    background: transparent;
    border: 1px solid #333;
    border-radius: 5px;
    margin-top: 10px;
    color: #7a7a7a;
    background-color: #fff;

}
.reserve .form-bottom .tit-box {
    width: 100%;
}

.reserve .form-bottom .form-control {
    width: 48%;
}

.reserve textarea {
    width: 100%;
    border: 1px solid #333;
    border-radius: 5px;
    padding: 10px;
    word-wrap: break-word;
}

.reserve .form-bottom .ic-pub {
    position: relative;
}

.reserve .form-bottom .ic-pub::after {
    content: '';
    position: absolute;
    width: 14px;
    height: 16px;
    background: url('../imgs/reserve/ic-pub.png');
    background-size: cover;
    background-position: center right;
    background-repeat: no-repeat;
    right: 16px;
    top: 45%;
}

.reserve .form-booking .form-control p.note.bottom{
    margin-top: 0;
}
.reserve .form-booking .form-control p.note.bottom a{
    color: #333;
    transition: all 0.4s;
}
.reserve .form-booking .form-control p.note.bottom a:hover{
    opacity: 0.8;
    
}
.reserve #modal{
    background: transparent;
    padding: 16px ;
    -webkit-padding: 16px ;
    position: relative;
}
.reserve #modal .modal-box{
    max-width: 800px;
    height: 600px;
    overflow-y: scroll;
}
.reserve #modal h2{
    font-size: 1.6rem;
    line-height: calc(24/16);
    font-weight: bold;
    text-align: center;
    margin-bottom: 40px;
}
.reserve #modal .content{
    padding: 40px 80px;
    margin: 0 auto;
    background-color: #fff;
}
.reserve #modal .content .sub-tit{
    font-weight: 500;
}
.reserve #modal .content .tit-content{
    font-weight: bold;
    margin-top: 40px;
}
.reserve #modal .content ul li a{
    text-decoration: underline;
    font-weight: 500;
    transition: all 0.4s;
}
.reserve #modal .content ul li a:hover{
    color: #b23d53;
}
.fancybox-slide--html .fancybox-close-small{
    display: none;
}
.reserve #modal .btn-close{
    position: absolute;
    top: 0;
    right: 0px;
    background: none;
    border: none;
    padding: 0;
    cursor: pointer;
    -webkit-position: absolute;
    -webkit-top: 0;
    -webkit-right: 0px;
    -webkit-background: none;
    -webkit-border: none;
    -webkit-padding: 0;
    -webkit-cursor: pointer;
}

.reserve .box-radio .box-first{
    width: 30%;
    display: flex;
    align-items: center;
}
.reserve .box-radio .box-used{
    width: 70%;
    display: flex;
    align-items: center;
}

.reserve input[type="radio"] {
    accent-color: #333;
    width: 16px;
    height: 16px;
    margin-right: 6px;
  }
  .reserve  input[type="checkbox"]{
    accent-color: #333;
    width: 16px;
    height: 16px;
  }



@media (max-width: 768px) {
    .reserve .text-center-sp{
        text-align: center;
    }
    .reserve .box-tit-page > p{
        margin-bottom: 30px;
    }
    .reserve .form-booking{
        margin-top: 60px;
    }
    .reserve .form-booking{
        padding: 0;
        box-shadow: none;
    }
    .reserve .box-radio .box-first{
        width: 100%;
    }
    .reserve .box-radio .box-used{
        width: 100%;
    }
    .reserve .form-booking .form-control .tit-box{
        font-size: 1.4rem;
    }
    .reserve .form-bottom .form-control{
        width: 100%;
        margin-bottom: 0px;
    }
    .reserve .form-bottom .form-control:last-child{
        margin-bottom: 40px;
    }
    .reserve .form-bottom .ic-pub::after {
        right: 5px;
    }
    .reserve .form-booking .form-control p.note.bottom{
        font-size: 1.2rem;
    }
    .reserve .plan-list{
        margin-top: 60px;
        padding: 40px 0;
    }
    .reserve .box-tit-page .box-plan p{
        font-size: 1.2rem;
    }
    .reserve .box-tit-page .box-plan{
        padding: 30px 10px;
    }
    .reserve #modal .content{
        padding: 30px 20px;
    }
    .reserve #modal h2{
        font-size: 1.5rem;
        margin-bottom: 20px;
    }
    .reserve #modal .content .tit-content{
        margin-top: 30px;
    }
}
/* =========== About detail 2 =========== */
.about-point__block{
    padding-top: 160px;
}
.point__box{
    position: relative;
    margin-bottom: 270px;
}
.point__box:last-child{
    margin-bottom: 0;
}
.point-box__head{
    position: relative;
}
.point-box__title{
    font-family: 'Zen Old Mincho', serif;
    font-size: 3.4rem;
    letter-spacing: 0.16em;
    line-height: calc(65.25/34);
    text-align: center;
}
.point-box__lead{
    width: fit-content;
    position: absolute;
    top: -93%;
    left: 188px;
}
.point-box__contain{
    width: 100%;
    max-width: 1440px;
    margin: 0 auto;
}
.point-box__imgmain{
    position: absolute;
    z-index: 2;
    top: 108px;
    width: 38.403%;
}
.point-box__outer{
    max-width: 899px;
    width: 62.43%;
    margin-left: min(27vw, 370px);
    background: #F0EBE4;
    padding: min(6vw, 70px) min(6vw, 135px) min(7vw, 80px) min(15vw, 315px);
    position: relative;
}

.point-box__desc{
    margin: 0 auto;
    max-width: 460px;
    width: 100%;
}
.point-box__imgabs{
    position: absolute;
    width: min(20vw, 210px);
}

.point__box--01 .point-box__imgabs{
    right: -50px;
    top: 45%;
}
.point-box__inner figure{
    margin: 35px 0 75px 0;
    text-align: center;
}

.point__box--01 .point-box__imgmain{
    top: 130px;
}
.point__box--01 .point-box__contain{
    margin-top: 140px;
}
.point-box-child{
    background: #F8F6F3;
    padding: min(5vw, 55px) min(3.5vw, 40px);
}
.point-box-child-title{
    font-family: 'Zen Kaku Gothic Antique', sans-serif;
    font-weight: bold;
    font-size: 2rem;
    line-height: calc(15.83/14.23);
    letter-spacing: 0.1em;
    text-align: center;
}
.point__box--02 .point-box__contain{
    margin-top: 90px;
}
.point__box--02 .point-box__outer{
    padding-right: min(4vw, 87px);
    padding-left: min(15vw, 260px);
}
.point-box-child-img{
    position: relative;
}
.point-box-child-img .img-hori{
    margin: 0;
    width: min(19vw, 222px);
    position: absolute;
    top: 44%;
    left: -38%;
}
.point-box-child-img .img-main{
    text-align: center;
    margin: 25px 0 45px;
}
.point-box-child-img .img-ver{
    margin: 0;
    width: min(14vw, 191px);
    position: absolute;
    top: -68%;
    right: -33%;
}
.point-box-child-desc span{
    font-size: 1.2rem;
}
.point-box-child:nth-of-type(1){
    margin: 55px 0 100px 0;
}

.point-box-child:nth-of-type(2) .point-box-child-img .img-hori{
    top: -68%;
    left: -32%;
    width: min(14vw, 191px);
}
.point-box-child:nth-of-type(2) .point-box-child-img .img-ver{
    top: 42%;
    right: -37.5%;
    width: min(19vw, 222px);
}
.point-box-child:nth-of-type(2){
    margin-bottom: 75px;
}
.point-box__subtitle{
    font-size: 2rem;
    font-family: 'Zen Old Mincho', serif;
    letter-spacing: 0.16em;
    line-height: calc(23.25/20);
    text-align: center;
    font-weight: bold;
}
.point__box--03 .point-box__imgabs{
    right: -45px;
    top: 36.5%;
}

.point__box--03 .point-box__contain{
    margin-top: 100px;
}
.point__box--03 .btn-link{
    margin-top: 55px;
}

.point__box--04 .point-box__imgabs{
    right: -46px;
    top: 25%;
}
.point__box--04 .point-box__contain{
    margin-top: 100px;
}
.point__box--04 .point-box__outer {
    padding-right: min(4vw, 87px);
    padding-left: min(15vw, 260px);
}
.point__box--04 .point-box__inner figure{
    margin: 70px 0 77px 0;
}
.title--line{
    width: fit-content;
    position: relative;
    margin: 0 auto;
}
.title--line::before,
.title--line::after{
    width: 20px;
    height: 1px;
    background: #333333;
    top: 50%;
    transform: translateX(-50%);
    content: "";
    position: absolute;
}
.title--line::before{
    left: -20px;
}
.title--line::after{
    right: -35px;
}
.list__store{
    margin: 44px auto 0;
    width: 100%;
    max-width: 370px;
}
.list-store__item{
    display: flex;
    -webkit-box-shadow: 0px 0px 7px 0px rgba(0,0,0,0.2);
    box-shadow: 0px 0px 7px 0px rgba(0,0,0,0.2);
    background: #FFFFFF;
}
.list-store-item__img{
    width: 48.379%;
    transition: 0.2s linear;
}
.list-store-item__content{
    display: flex;
    justify-content: center;
    align-items: center;
    width: 51.621%;
}
.list-store-item__inner{
    width: 140px;
}
.list-store-item__title{
    text-align: center;
    font-family: 'Zen Kaku Gothic Antique', sans-serif;
    font-size: 1.7rem;
    font-weight: bold;
    line-height: calc(22.25/17);
}
.list-store-item__content .btn-link{
    font-size: 1.4rem;
    line-height: calc(22.25/14);
    padding: 3px 0 5px 0;
    margin: 10px 0 0 0;
}
.list-store__item:not(:last-of-type){
    margin-bottom: 21px;
}
.point__box--04 .point-box-child{
    margin: 47px 0 0 0;
}

.point__box--05 .point-box__contain{
    margin-top: 100px;
}
.point__box--05 .point-box__imgabs{
    right: -5%;
    bottom: -19%;
}
.point-box__btn{
    margin-top: 50px;
}
.point-box__btn .btn-link{
    margin-bottom: 34px;
}
.point-box__btn .btn-link:last-child{
    margin-bottom: 0;
}

.point__box--06 .point-box__contain{
    margin-top: 100px;
}
.point__box--06 .point-box__imgabs{
    right: -5%;
    bottom: -19%;
}

.about-detail-2 .plan-list{
    position: relative;
    background: url('../imgs/about-detail/bg-planlist.jpg') no-repeat;
    padding: 140px 0;
    background-position: center top;
    background-size: 100% 100%;
    margin-top: 160px;
}
.about-detail-2 .plan-list .btn-link{
    margin-top: 100px;
}
@media (max-width: 768px) {
    .about-point__block{
        padding-top: 70px;
    }
    .point-box__title{
        font-size: min(6.8vw, 2.2rem);
        line-height: 1.4;
    }
    .point-box__lead{
        left: 30%;
        top: -40px;
        width: 94px;
    }
    .point-box__imgmain{
        width: calc(100% - 40px);
        margin: 0 auto -105px;
        position: relative;
        z-index: 2;
        top: 0 !important;
    }
    .point-box__imgmain img{
        width: 100%;
        height: 100%;
        object-fit: cover;
    }
    .point__box--01 .point-box__imgmain{
        top: 50px;
    }
    .point__box--01 .point-box__contain {
        margin-top: 20px;
    }
    .point-box__outer{
        width: 100%;
        margin: 0;
        padding: 125px 15px 60px 15px !important;
    }
    .point-box__desc{
        max-width: 100%;
    }
    .point-box__inner figure{
        text-align: left;
        margin: 25px 0 85px 0;
    }
    .point__box--01 .point-box__imgabs{
        right: 30%;
        top: 60%;
        width: 152px;
    }
    .point__box {
        margin-bottom: 125px;
    }
    .point-box__subtitle{
        font-size: 1.4rem;
    }
    .point-box__contain{
        margin-top: 15px !important;
    }
    .point-box-child:nth-of-type(1){
        margin: 45px 0 45px 0;
    }
    .point-box-child-img .img-hori{
        position: relative;
        top: unset;
        left: unset;
        width: 168px;
        margin: 0 0 20px 15px;
    }
    .point-box-child-title{
        font-size: 1.7rem;
    }
    .point-box-child{
        padding: 40px 0;
        position: relative;
        z-index: 2;
        background: transparent;
    }
    .point-box-child::after{
        position: absolute;
        background: #F8F6F3;
        top: 0;
        left: -15px;
        height: 100%;
        width: calc(100% - 30px);
        content: "";
        z-index: -1;
    }
    .point-box-child-img .img-main{
        margin: 22px 0 29px;
    }
    .point-box-child-img .img-ver{
        width: min(35vw, 130px);
        top: 28%;
        right: 0;
    }
    .point-box-child-desc span{
        font-size: 1.1rem;
    }
    .point-box-child:nth-of-type(2) .point-box-child-img .img-hori{
        position: absolute;
        width: min(35vw, 130px);
        top: 28%;
        right: 68%;
        margin: 0;
        left: unset;
    }
    .point-box-child:nth-of-type(2){
        padding-left: 30px;
        margin: 0 0 40px 0;
    }
    .point-box-child:nth-of-type(2)::after{
        left: unset;
        right: -15px;
    }
    .point-box-child:nth-of-type(2) .img-main{
        margin-left: auto;
    }
    .point-box-child:nth-of-type(2) .point-box-child-desc{
        margin-left: -30px;
    }
    .point-box-child:nth-of-type(2) .point-box-child-img .img-ver{
        position: relative;
        top: unset;
        right: unset;
        width: min(47vw, 174px);
        margin-left: auto;
        margin-bottom: 15px;
    }
    .point__box--03 .point-box__imgabs{
        right: 31%;
        top: 47%;
        width: 152px;
    }
    .point__box--04 .point-box__inner figure{
        margin: 26px 0 90px 0;
    }
    .point__box--04 .point-box__imgabs{
        right: 31%;
        top: 30%;
        width: 152px;
    }
    .point__box--04 .point-box-child{
        margin: 20px 0 0 0 !important;
        width: 100%;
        padding: 35px 0 !important;
        position: relative;
        background: transparent;
        z-index: 2;
    }
    .point__box--04 .point-box-child::after{
        position: absolute;
        background: #F8F6F3;
        top: 0;
        left: -15px;
        height: 100%;
        width: 100%;
        content: "";
        z-index: -1;
    }
    .list__store{
        margin: 37px 0 0 0;
        max-width: 80%;
    }
    .list-store-item__img img{
        width: 100%;
    }
    .list-store-item__content .btn-link{
        font-size: 1.3rem;
    }
    .list-store-item__title{
        font-size: 1.5rem;
    }
    .point-box__btn{
        margin-top: 30px;
    }
    .point-box__btn .btn-link {
        margin-bottom: 25px;
    }
    .about-detail-2 .plan-list{
        padding: 50px 0;
        margin-top: 75px;
    }
}
@media (max-width: 430px) {
    .point-box__lead {
        left: 11%;
    }
    .point-box__inner figure{
        text-align: left;
        margin: 26px 0 90px 0;
        max-width: 280px;
        width: 100%;
    }
    .point__box--01 .point-box__imgabs{
        right: 15px;
        top: 423px;
    }
    .point__box--03 .point-box__imgabs{
        right: 15px;
        top: 423px;
    }
    .point__box--04 .point-box__imgabs{
        right: 15px;
        top: 359px;
    }
    .list__store{
        max-width: 100%;
    }
}
/* =========== End About detail 2 =========== */

/* =========== Start Gallery =========== */

.gallery__note{
    max-width: 1240px;
    width: calc(100% - 30px);
    margin: 65px auto 40px;
    font-size: 1.3rem;
    line-height: calc(29/13);
}
.gallery__filter{
    max-width: 700px;
    margin: 0 auto;
}
.gallery__filter .faq-item__title{
    text-align: center;
    width: calc(100% - 13px);
}
.gallery-filter__list{
    color: #655F54;
    font-weight: bold;
    font-size: 1.3rem;
    line-height: calc(26/13);
    max-width: 450px;
    width: 100%;
    margin: 0 auto 10px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.gallery-filter__list li{
    width: 48%;
    max-width: 190px;
}
.gallery-filter__list li:nth-child(2n + 2){
    max-width: 140px;
}
.gallery__tag{
    padding-top: 10px;
}
.gallery-tag__block{
    font-family: 'Zen Kaku Gothic Antique', sans-serif;
}
.gallery-tag__block:not(:last-child){
    margin-bottom: 20px;
}
.gallery-tag__title{
    font-weight: bold;
    line-height: calc(22.25/14);
    letter-spacing: 0.06em;
}
.gallery-tag__gr{
    display: flex;
    flex-wrap: wrap;
}
.gallery-tag__item{
    font-size: 1.3rem;
    line-height: calc(22.25/13);
    letter-spacing: 0.06em;
    padding: 2px 11px;
    text-align: center;
    margin: 9px 8px 0 0;
    border-radius: 20px;
    border: 1px solid #333333;
    font-weight: 500;
    display: block;
    transition: 0.2s linear;
    cursor: pointer;
}
.gallery-tag__item:hover,
.gallery-tag__item.active{
    background: #333333;
    color: #FFFFFF;
}
.gallery-tag__item:last-child{
    margin-right: 0;
}
.gallery__photo{
    max-width: 1095px;
    width: calc(100% - 26px);
    margin: 80px auto 0;
}
.gallery-photo__gr{
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    padding-bottom: 50px;
}
.gallery-photo__item{
    display: block;
    box-shadow: 0px 0px 8px 0px rgba(0, 0, 0, 0.2) !important;
    -webkit-box-shadow: 0px 0px 8px 0px rgba(0, 0, 0, 0.2) !important;
    width: 30.229%;
    font-family: 'Zen Kaku Gothic Antique', sans-serif;
    margin: 0 1.5% 45px 1.5%;
}
.photo-item__img{
    overflow: hidden;
 height: 200px;
}
#bring .photo-item__img, #plan-list .photo-item__img{
 height: 140px;
}
@media (max-width: 768px) {
#bring .photo-item__img, #plan-list .photo-item__img{
 height: 100px;
}
}
.photo-item__img img{
    transition: all 0.4s;
 object-fit: cover;
 height: 100%;
}
@media (max-width: 768px) {
.photo-item__img{
 height: 100px;
}
}
.gallery-photo__item:hover .photo-item__img img{
    transform: scale(1.2);
}
.photo-item__content{
    padding: 10px 12px 25px;
}
.photo-item__date{
    font-size: 1.3rem;
    line-height: 1;
    letter-spacing: 0.06em;
    color: #655F54;
    font-weight: 500;
}
.photo-item__name{
    font-size: 1.7rem;
    letter-spacing: 0.06em;
    font-weight: 500;
    text-align: center;
    margin-top: 15px;
    line-height: 1.7;
}

.pagination{
    max-width: 415px;
    width: calc(100% - 20px);
    margin: 0 auto;
    display: flex;
    justify-content: center;
    align-items: center;
}
.page-item{
    width: 36px;
    height: 36px;
    display: flex;
    justify-content: center;
    align-items: center;
    color: #333333;
    border: 1px solid #333333;
    font-family: 'Zen Kaku Gothic Antique', sans-serif;
    letter-spacing: 0.06em;
    font-size: 1.6rem;
    line-height: 1;
    font-weight: bold;
 margin: 0 10px;
}
.page-item.active{
    background: #333333;
    color: #FFFFFF;
}

.gallery-page .plan-list{
    position: relative;
}
.gallery-page .plan-list {
    position: relative;
    background: url('../imgs/about-detail/bg-planlist.jpg') no-repeat;
    padding: 120px 0;
    background-position: center top;
    background-size: 100% 100%;
    margin-top: 185px;
}
@media (max-width: 768px) {
    .gallery__note{
        margin: 35px auto 20px;
    }
    .gallery__filter .step-faq__item{
        margin: 0 25px 10px 25px;
    }
    .gallery-photo__item{
        width: 47.45%;
        margin: 0 0 clamp(17px, 4vw, 40px) 0;
    }
    .photo-item__img img{
        width: 100%;
        height: 100%;
        object-fit: cover;
    }
    .photo-item__date{
        font-size: 1.1rem;
    }
    .photo-item__name{
        font-size: 1.3rem;
        line-height: calc(22.25/13);
        margin-top: 10px;
    }
    .gallery-filter__list{
        flex-direction: column;
    }
    .gallery-filter__list li{
        width: 100%;
        max-width: 100% !important;
    }
    .gallery-tag__item{
        font-size: 1.2rem;
    }
    .gallery__photo {
        margin: 50px auto 0;
    }
    .gallery-photo__gr{
        padding-bottom: 10px;
     justify-content: space-between;
    }
    .page-item{
        font-size: 1.3rem;
        width: 29px;
        height: 29px;
    }
    .gallery-page .plan-list{
        padding: 40px 0;
        margin-top: 88px;
    }
    .photo-item__content{
        padding: 10px 11px;
    }
}
/* =========== End Gallery =========== */



/****************************************
 add_style
*****************************************/
/* プラン一覧　プラン詳細 */
#plan .list-album .box-pictrure-detail img {
    width: 453px;
    height: 356px;
    object-fit: cover;
}

.plan .booking .box-tel .box-data02 {
    flex-wrap: wrap;
}
.plan .booking .box-tel .box-data02 .btn-link {
    width: 100%;
    padding-left: 7%;
    line-height: 1;
    margin-top: 15px;
}
.plan .booking .box-tel .box-data02 .btn-link::after {
    background: url(../imgs/plan/camera-wt.png);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: left;
    left: 8%;
}
.plan .booking .box-tel .box-data02 .btn-link:hover::after {
    background: url(../imgs/plan/camera-bl.png);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: left;
}
.plan .booking .box-tel .box-data02 .btn-link span {
    font-size: 1.2rem;
    font-weight: normal;
    letter-spacing: normal;
}
.plan .booking .box-tel .box-data02 a.flex{
    display: flex;
    align-items: center;
}
.m-desc02 {
    font-size: 1.3rem;
    font-weight: bold;
}

.box-pictrure-detail .info img {
    width: 343px;
    height: 200px;
    object-fit: cover;
}
.video-box {
    width: 560px;
    height: 322px;
    margin: 0 auto 80px;
}
.video-box iframe {
    width: 100%;
    display: block;
    margin: 0 auto;
    aspect-ratio: 16/9;
}

.plan-detail .album-kid {
    text-align: left;
}
.plan-detail .album-kid .box-img {
    margin: 90px auto 0;
}

.plan .album-kid .box-img img {
    object-fit: cover;
}
.plan .album-kid .box-img .img0 {
    width: 700px;
    height: 407px;
}
.plan .album-kid .box-img .img1 {
    width: 453px;
    height: 323px;
}
.plan .album-kid .box-img .img2 {
    width: 254px;
    height: 181px;
}

.plan .box-what02 .info .m-desc {
    width: 100%;
}

.title-3 {
    font-size: 3.4rem;
    font-family: 'Zen Old Mincho', serif;
    letter-spacing: 0.16em;
    line-height: calc(65.25/30);
    font-weight: bold;
    color: #333333;
    margin-bottom: 25px;
    text-align: center;
}
.title-3_desc {
    padding-bottom: 80px;
    font-size: 1.6rem;
    font-weight: bold;
    text-align: center;
}
.title-3_desc span {
    display: block;
    font-size: 1.4rem;
    font-weight: normal;
}
.table_box + .table_box {
    margin-top: 100px;
}
.plan .box-what .info .table_100 {
    width: 100%;
}
.plan .box-what .info .table_100 th {
    width: 32%;
}
.plan .box-what .info .table_100 td .item {
    line-height: 2;
}
.plan .box-what .info .table_100 td .price {
    padding: 15px 0;
    text-align: right;
    line-height: 1.7;
}
.plan .box-what .info .table_100 td .price span {
    font-size: 1.6rem;
}
.table_box .text01 {
    font-size: 1.8rem;
    font-family: 'Zen Old Mincho', serif;
}
.table_box .note {
    padding-top: 10px;
    font-size: 1.3rem;
    font-weight: 500;
}
.table_box .btn-link {
    margin: 75px auto 0;
}
.table_box .btn-link + .btn-link {
    margin: 20px auto 0;
}

.list-album02 {
    margin-top: 50px;
}
.list-album02 .info-select-diff::after {
    content: "";
    display: block;
    width: 100%;
    height: 1px;
    margin: 35px auto;
    background: #c2c2c2;
}
.list-album02 .info-select-diff:last-of-type::after {
    content: none;
}
.list-album02 .txt02 .price {
    line-height: 1.7;
}
.list-album02 .txt02 .price span {
    font-size: 1.7rem;
    font-weight: bold;
}
.list-album02 .txt02_01 {
    padding-bottom: 10px;
}
.list-album02 .txt02_02 {
    padding: 0 0 10px;
}
.list-album02 .txt02_02 a {
    display: block;
    font-weight: 500;
    line-height: 1.7;
    text-decoration: underline;
}
.list-album02 .txt02_02 a:hover {
    text-decoration: none;
}
.list-album02 .txt02_03 {
    margin-bottom: 5px;
    padding: 10px 15px;
    background: #f8f6f3;
}
.plan-detail .album-picture .list-album .box-content .m-desc02 {
    min-height: 130px !important;
}
.plan-detail .album-picture.wedding .list-album .box-content .m-desc02 {
    min-height: auto !important;
}
.desc_caution {
    width: 100%;
    text-align: center;
    font-size: 2.4rem;
    font-weight: 500;
    font-family: 'Zen Old Mincho', serif;
    color: #333333;
    margin-bottom: 20px;
    line-height: 1.7;
}
.plan-detail .album-picture.wedding {
    background-repeat: inherit;
}

.box-pictrure-detail .info .flow {
    display: flex;
    align-items: center;
    padding-bottom: 20px;
    margin-top: -40px;
}
.box-pictrure-detail .info .flow span {
    color: #333;
    font-size: 1.5rem !important;
    text-decoration: underline #333;
    margin-left: 6px;
}
.box-pictrure-detail .info .flow img {
    width: 10px;
    height: 10px;
    object-fit: contain;
}
.box-pictrure-detail .info .flow:hover span {
    text-decoration: none;
}

.plan-detail .album-picture .list-album .link .link-item02 {
    display: block;
}
.plan-detail .album-picture .list-album .link .link-item02 span {
    display: block;
    text-align: left;
    margin-bottom: 10px;
}
.plan-detail .album-picture .list-album .link .link-item02 + .link-item02 {
    margin-bottom: 0;
}

.plan-detail .album-picture .list-album .link .link-item02 .in-box {
    display: flex;
    justify-content: flex-end;
}
.plan-detail .album-picture .list-album .link .link-item02 .in-box a {
    display: flex;
    align-items: center;
    line-height: 1.3;
    margin: 0 0 5px 10px;
}
.plan-detail .album-picture .list-album .link .link-item03 {
    align-items: baseline;
    margin-bottom: 0;
}
.plan-detail .album-picture .list-album .link .link-item .price {
    font-size: 1.6rem;
    margin-left: 20px;
}
.plan-detail .album-picture .list-album .link .link-item .price span {
    font-size: 2.4rem;
}
.plan-detail .album-picture .list-album .link .note {
    text-align: right;
    font-size: 1.3rem;
}

.plan-detail .wedding  {
    padding-bottom: 50px;
}
.plan-detail .wedding .box-what {
    margin: 0 auto;
    padding: 50px 20px;
    background: #fff;
}

.plan-detail .box-what.wedding {
    margin: 100px auto;
}
.plan-detail .box-what.wedding .table_box {
    margin-bottom: 80px;
}
.plan-detail .box-what.wedding .btn-link {
    margin: 80px auto 0;
}
.plan-detail .box-what.wedding .note {
    padding: 5px 0 0;
}
.plan-detail .box-what.wedding .note a {
    text-decoration: underline;
}
.plan-detail .box-what.wedding .note a:hover {
    text-decoration: none;
}

.maternity .table_100 .text {
    line-height: 1.7;
    padding-bottom: 10px;
}

.id .table_box + .table_box,
.sns .table_box + .table_box {
    margin-bottom: 160px;
}
.plan .id .booking,
.plan .sns .booking {
    margin-bottom: 250px;
}

.rental table td span {
    display: block;
    padding-bottom: 20px;
    font-size: 1.3rem;
    line-height: 1.7;
    font-weight: 500;
}
.rental .info + .info {
    margin-top: 50px;
}
.plan-detail .album-picture.hatachi {
    background-repeat: inherit;
}

/* 個人情報について
   サイトポリシー
   サイトマップ
*/
.low_block {
    max-width: 1010px;
    margin: 0 auto;
    padding: 60px 10px;
}
.low_block .desc {
    padding-bottom: 80px;
}
.low_block .block_in {
    padding-bottom: 100px;
}
.low_block .block_in .text01 {
    font-size: 1.8rem;
    font-weight: 500;
}
.low_block .block_in ul {
    padding: 20px 0 0;
}
.low_block .block_in ul li {
    text-indent: -1.4rem;
    padding-left: 1.4rem;
}
.low_block .block_in > div {
    padding-top: 20px;
}
.low_block .block_in a {
    display: block;
    text-decoration: underline;
    transition: all .3s;
}
.low_block .block_in a:hover {
    opacity: .7;
}
.low_block .btn-link{
    text-decoration: none !important;
    margin: 50px auto;
}

/* サイトマップ */
.sitemap ul.list li {
    text-indent: unset;
    padding-left: 0;
}
.sitemap .block_in {
    display: flex;
    gap: 2%;
}
.sitemap .list_outer {
    width: 29%;
    margin: 0 auto;
}
.sitemap .list_outer:first-of-type {
    width: 38%;
}
.sitemap .block_in .list_outer ul {
    padding-top: 0;
}
.sitemap .block_in .list_outer ul a {
    text-decoration: none;
}
.sitemap .block_in .list_outer .list_child {
    padding-left: 3.5rem;
    margin-bottom: 30px;
}
.sitemap .block_in .list_outer .list_grandchild {
    margin-bottom: 30px;
}
.sitemap .block_in .list_child li {
    list-style: disc;
}
.sitemap .block_in .list_grandchild li {
    list-style: none;
}
.sitemap .block_in .list_grandchild li a::before {
    content: "-　";
    display: inline-block;
}

/* moritas */
.moritas .logo_img {
    display: block;
    width: 119px;
    margin: 0 auto 20px;
}
.moritas01 {
    padding: 80px 10px;
}
.moritas01 .block {
    padding-top: 100px;
}
.moritas01 .block_in .image {
    max-width: 460px;
    width: 44%;
}
.moritas01 .block_in .content {
   flex: 1;
   padding-left: 7%;
}
.moritas01 .block_in02 {
    padding-top: 65px;
}
.moritas01 .title-4 {
    padding-bottom: 35px;
    font-size: 1.8rem;
    font-weight: bold;
    font-family: 'Zen Old Mincho', serif;
    text-align: center;
}
.moritas01 .text02 {
    font-size: 1.6rem;
    font-weight: bold;
    text-align: center;
}
.moritas01 .info table {
    width: 100%;
    border-collapse: collapse;
}
.moritas01 .info table tr th,
.moritas01 .info table tr td {
    padding: 0 20px;
    text-align: left;
    font-size: 1.3rem;
    letter-spacing: 0.1em;
    border-bottom: 1px solid #fff;
}
.moritas01 .info table tr th {
    background-color: #f0ebe4;
    line-height: calc(56/13);
    width: 32%;
}
.moritas01 .info table tr td {
    background-color: #f8f6f3;
    line-height: calc(37/13);
}
.moritas01 .info .note {
    padding: 10px 0 0;
}
.moritas01 .block_in02_item .content {
    flex: 1;
    padding-right: 7%;
}
.moritas01 .block_in02_item .movie {
    max-width: 460px;
    width: 50%;
    aspect-ratio: 16/9;
}
.moritas01 .block02 .block_in .image img {
    display: block;
    max-width: 270px;
    margin: 0 auto;
}
.moritas01 .block02 .block_in .content p {
    padding-bottom: 60px;
}
.text_b {
    font-weight: bold;
}
.moritas .color01 {
    font-weight: bold;
    color: #b23d53;
}
.moritas01 .block .btn-link {
    margin: 45px auto;
}
.moritas01 .block05 .text {
    text-align: center;
}
.moritas01 .inst_link {
    display: block;
    width: fit-content;
    margin: 30px auto;
    transition: all .3s;
}
.moritas01 .inst_link:hover {
    opacity: .7;
}
.moritas01 .block07 .info + .info {
    padding-top: 50px;
}
.moritas01 .block07 .table_title {
    padding-bottom: 25px;
    font-size: 1.8rem;
    font-weight: bold;
    font-family: 'Zen Old Mincho', serif;
    text-align: center;
}
.moritas01 .block07 .info table tr th {
    width: 53%;
}

.moritas02 .desc {
    padding: 35px 0;
    text-align: center;
    font-size: 1.6rem;
}
.main .moritas03.plan {
    background: none;
    padding: 60px 0;
}
.moritas03 .heading {
    padding-bottom: 50px;
    font-size: 2.4rem;
    font-family: 'Zen Old Mincho', serif;
    text-align: center;
}
.moritas03 .m-desc {
    text-align: center;
    padding-bottom: 40px;
}
.moritas .plan-list {
    position: relative;
    background: url('../imgs/about-detail/bg-planlist.jpg') no-repeat;
    padding: 140px 0;
    background-position: center top;
    background-size: 100% 100%;
}

/* 商品一覧 写真小物 */
.print .goods__block {
    padding-top: 100px;
}
.print .goods-box__desc {
    min-height: 100px;
}
.print .goods-box__price--lg {
    min-height: auto;
    padding: 15px;
}
.print .goods-box__size li {
    display: block;
}
.print .goods-box__size li p:nth-of-type(2) {
    width: 100%;
}
.print p.note {
    font-size: 1.4rem;
    line-height: 1.7;
    text-align: center;
}
.print .product__related {
    margin-top: 150px;
}

/* 商品一覧 データ販売 */
.data .desc {
    padding: 0 0 20px;
}
.data .table_box .text01 span {
    font-size: 1.5rem;
}
.data .info table {
    width: 100%;
    border-collapse: collapse;
}
.data .info table tr th,
.data .info table tr td {
    padding: 0 20px;
    text-align: left;
    font-size: 1.3rem;
    letter-spacing: 0.1em;
    border-bottom: 1px solid #fff;
}
.data .info table tr th {
    background-color: #f0ebe4;
    line-height: calc(56/13);
    width: 32%;
}
.data .info table tr td {
    background-color: #f8f6f3;
    line-height: calc(37/13);
}
.data .info + .info {
    margin-top: 40px;
}
.data .info ul {
    padding-top: 30px;
}
.data .info ul li {
    text-indent: -1.4rem;
    padding-left: 1.4rem;
}
.data .info .text02 {
    font-size: 1.8rem;
    font-weight: bold;
    font-family: 'Zen Old Mincho', serif;
}
.data .info ul.ul02 {
    padding-top: 10px;
}
.data .product__related {
    margin-top: 150px;
}


@media (max-width: 768px) {
    /* プラン一覧　プラン詳細 */
    .video-box {
        width: 95%;
        height: 100%;
    }

    .plan .album-kid .box-img img {
        aspect-ratio: 16/9;
    }
    .plan .album-kid .box-img .img0 {
        width: 83%;
        height: auto;
        min-height: 160px;
    }
    .plan .album-kid .box-img .img1 {
        width: 45%;
        height: auto;
        min-height: 107px;
    }

    .title-3 {
        font-size: 2.4rem;
        margin-bottom: 15px;
    }

    .plan .box-what .info .table_100 th,
    .plan .box-what .info .table_100 td {
        display: block;
        width: 100%;
    }
    .plan .box-what .info .table_100 td .price {
        padding: 5px 0;
    }
    .plan .box-what .info .table_100 td .price span {
        font-size: 1.4rem;
    }
    .table_box .text01 {
        font-size: 1.6rem;
        letter-spacing: -.02em;
    }
    .table_box .text01 span {
        font-size: 1.3rem;
    }
    .table_box .text01 .size01 {
        display: block;
        font-size: 1.3rem;
        line-height: 1.7;
        padding-bottom: 5px;
    }

    .plan-detail .select-diff .tit-diff p {
        line-height: 1.5;
    }

    .id .table_box + .table_box,
    .sns .table_box + .table_box {
        margin: 50px auto 80px;
    }

    .plan .id .booking,
    .plan .sns .booking {
        margin-bottom: 130px;
    }

    .plan-detail .album-picture.wedding,
    .plan-detail .album-picture.hatachi {
        background-repeat: inherit;
        background-size: auto;
    }

    /* 個人情報について
    　　サイトポリシー
    　　サイトマップ
    */
    .low_block {
        padding: 30px 10px;
    }
    .low_block .desc {
        padding-bottom: 60px;
    }
    .low_block .block_in {
        padding-bottom: 60px;
    }
    .low_block .block_in .text01 {
        font-size: 1.6rem;
    }
    .low_block .block_in ul {
        padding: 20px 0 0;
    }
    .low_block .block_in > div {
        padding-top: 20px;
    }
    .low_block .block_in a {
        word-break: break-all;
    }
    .low_block .btn-link{
        margin: 30px auto;
    }

    /* サイトマップ */
    .sitemap .low_block {
        padding: 10px 10px 30px;
    }
    .sitemap .block_in {
        gap: 0;
        flex-direction: column;
    }
    .sitemap .list_outer {
        width: 100%;
    }
    .sitemap .list_outer:first-of-type {
        width: 100%;
    }
    .sitemap .block_in .list_outer .list_child {
        margin-bottom: 0;
    }
    .sitemap .block_in .list_outer03 {
        padding-top: 0;
    }
    .sitemap .block_in .list_outer02 .list_child,
    .sitemap .block_in .list_outer03 .list_child {
        padding: 10px 0 20px 3.5rem;
    }
    .sitemap .block_in .list_outer .list_grandchild {
        margin-bottom: 15px;
    }
    .low_block .block_in ul li.mb-40 {
        margin-bottom: 15px;
    }

    /* moritas */
    .moritas .logo_img {
        margin: 0 auto 20px;
    }
    .moritas01 {
        padding: 40px 0;
    }
    .moritas01 .block {
        padding-top: 60px;
    }
    .moritas01 .block_in {
        flex-direction: column;
    }
    .moritas01 .block_in .image {
        max-width: 100%;
        width: 100%;
    }
    .moritas01 .block_in .content {
        padding-left: 0;
        padding-top: 20px;
    }
    .moritas01 .block_in02 {
        padding-top: 45px;
    }
    .moritas01 .title-4 {
        padding-bottom: 20px;
        font-size: 1.6rem;
    }
    .moritas01 .text02 {
        font-size: 1.4rem;
    }
    .moritas01 .info table tr th,
    .moritas01 .info table tr td {
        display: block;
        line-height: 2;
        padding: 15px;
    }
    .moritas01 .info table tr th {
        width: 100%;
    }
    .moritas01 .info table tr td {
        width: 100%;
    }
    .moritas01 .info .note {
        padding: 7px 0 0;
        font-size: 1.2rem;
    }
    .moritas01 .block_in02_item {
        flex-direction: column;
    }
    .moritas01 .block_in02_item .content {
        padding-right: 0;
        padding-bottom: 20px;
    }
    .moritas01 .block_in02_item .movie {
        max-width: 800px;
        width: 100%;
    }
    .moritas01 .block02 .block_in .image img {
        max-width: 180px;
    }
    .moritas01 .block02 .block_in .content p {
        padding-bottom: 20px;
    }
    .moritas01 .block .btn-link {
        margin: 35px auto 20px;
    }
    .moritas01 .block05 .text {
        text-align: center;
    }
    .moritas01 .inst_link {
        margin: 20px auto;
    }
    .moritas01 .block07 .info + .info {
        padding-top: 40px;
    }
    .moritas01 .block07 .table_title {
        padding-bottom: 20px;
        font-size: 1.8rem;
        line-height: 1.7;
    }
    .moritas01 .block07 .info table tr th {
        width: 100%;
    }
    .moritas02 .desc {
        padding: 35px 0;
    }
    .main .moritas03.plan {
        padding: 40px 0;
    }
    .moritas03 .heading {
        padding-bottom: 30px;
        font-size: 2.4rem;
    }
    .moritas03 .m-desc {
        padding: 0 20px 40px;
    }
    .moritas .plan-list {
        padding: 40px 0;
    }

    /* 商品一覧 写真小物 */
    .print .goods__block {
        padding-top: 60px;
    }
    .print .goods-box__desc {
        min-height: auto;
    }
    .print .goods-box__size li {
        display: block;
    }
    .print p.note {
        font-size: 1.4rem;
        line-height: 1.7;
        text-align: center;
    }
    .print .product__related {
        margin-top: 50px;
    }

    /* 商品一覧 データ販売 */
    .data .desc {
        padding: 0 0 10px;
    }
    .data .table_box .text01 {
        line-height: 1.7;
        padding-bottom: 5px;
    }
    .data .table_box .text01 span {
        font-size: 1.3rem;
        display: block;
    }
    .data .info table tr th,
    .data .info table tr td {
        display: block;
        line-height: 2;
        padding: 15px;
    }
    .data .info table tr th {
        width: 100%;
    }
    .data .info table tr td {
        width: 100%;
    }
    .data .table_box + .table_box {
        margin-top: 50px;
    }
    .data .info + .info {
        margin-top: 40px;
    }
    .data .info ul {
        padding-top: 30px;
    }
    .data .info .text02 {
        font-size: 1.6rem;
        line-height: 1.7;
    }
    .data .info ul.ul02 {
        padding-top: 10px;
    }
    .data .product__related {
        margin-top: 50px;
    }
}


/* 店舗詳細 */
.store-detail.oyama .shooting-slide .img p {
    background: #b9777d;
}
.store-detail.oyama .shooting-thumb p {
    background: #b9777d;
}
.store-detail.sano .shooting-slide .img p {
    background: #586a14;
}
.store-detail.sano .shooting-thumb p {
    background: #586a14;
}

/* お問い合わせ */
#contact .box-radio .box {
    width: 30%;
    display: flex;
    align-items: center;
}
#contact .box-check {
    justify-content: flex-start;
    gap: 5%;
}
#contact .box-check .box {
    width: fit-content;
    min-width: 30%;
}
#contact .form-control .memo {
    width: 100%;
    padding: 20px 0 0;
    font-weight: bold;
    font-size: 1.3rem;
}
#contact .form-control .memo02 {
    font-size: 1.3rem;
}
#contact .box-radio .box-first {
    width: 30%;
    display: flex;
    align-items: center;
}
#contact .box-radio .box-second {
    width: 70%;
    display: flex;
    align-items: center;
}

@media (max-width: 768px) {
    /* お問い合わせ */
    #contact .box-radio {
        flex-direction: column;
    }
    #contact .box-radio .box {
        width: 100%;
        display: flex;
        align-items: center;
    }
    #contact .box-check {

        justify-content: flex-start;
        gap: 0;
    }
    #contact .box-check .box {
        width: fit-content;
        min-width: 49%;
    }
    #contact .form-control .memo {
        width: 100%;
        padding: 20px 0 0;
        font-weight: bold;
        font-size: 1.3rem;
    }
    #contact .form-control .memo02 {
        font-size: 1.3rem;
    }
    #contact .box-radio .box-first {
        width: 30%;
        display: flex;
        align-items: center;
    }
    #contact .box-radio .box-second {
        width: 70%;
        display: flex;
        align-items: center;
    }
}

/* 投稿
    スタッフブログ
    お知らせ
    お客様の声
    イベントキャンペーン
*/
#post .photo-item__name {
    text-align: left;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
}
.column-wrap {
    max-width: 1100px;
    margin: 65px auto 40px;
    padding: 40px 10px;
    display: flex;
    justify-content: space-between;
    line-height: 1.7;
}
.column-main {
    max-width: 800px;
    width: 100%;
    padding: 4% 5%;
    /* height: 300px; */
    box-shadow: 0px 0px 8px 0px rgba(0, 0, 0, 0.2) !important;
    -webkit-box-shadow: 0px 0px 8px 0px rgba(0, 0, 0, 0.2) !important;
}
.ariticle-title {
    margin-bottom: 35px;
    font-size: 2.4rem;
    font-family: 'Zen Old Mincho', serif;
    border-bottom: 1px solid #333;
}
.column-main p {
    padding-bottom: 30px;
}
.column-main .caution {
    color: #b23d53;
    font-weight: bold;
}
.column-main .image {
    display: block;
    max-width: 620px;
    margin: 0 auto;
    margin-bottom: 35px;
}
.column-main .h2-title {
    margin-bottom: 15px;
    padding: 4px 10px;
    font-size: 2rem;
    background: #f0ebe4;
}
.column-main .h3-title {
    margin-bottom: 15px;
    padding-left: 4px;
    font-size: 1.8rem;
    line-height: 1.5;
    border-left: 7px solid #f0ebe4;
}
.column-main .h4-title {
    margin-bottom: 15px;
    font-size: 1.6rem;
}
.column-main h2 {
    margin-bottom: 15px;
    padding: 4px 10px;
    font-size: 2rem;
    background: #f0ebe4;
}
.column-main h3 {
    margin-bottom: 15px;
    padding-left: 4px;
    font-size: 1.8rem;
    line-height: 1.5;
    border-left: 7px solid #f0ebe4;
}
.column-main h4 {
    margin-bottom: 15px;
    font-size: 1.6rem;
}
/* .column-main .gallery-photo__item {
    position: relative;
}
.column-main .gallery-photo__item ul {
    position: absolute;
    left: 10px;
    top: 0px;
    display: flex;
}
.column-main .gallery-photo__item ul li {
    width: 46px;
    height: 46px;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 1.2rem;
    color: #fff;
    margin-right: 6px;
} */


.column-side {
    max-width: 210px;
    width: 100%;
}
.column-side .side-title {
    margin-bottom: 15px;
    padding: 2px 10px;
    font-size: 1.8rem;
    font-weight: bold;
    background: #f0ebe4;
}
.column-side .side-list-item a {
    display: flex;
    margin-bottom: 15px;
    padding-bottom: 15px;
    border-bottom: 1px solid #bebebe;
    transition: all .3s;
}
.column-side .side-list-item a:hover {
    opacity: .7;
}
.column-side .side-list-item .image {
    width: 65px;
    aspect-ratio: 16/9;
}
.column-side .side-list-item .image img {
    object-fit: cover;
    width: 100%;
    height: 100%;
}
.column-side .side-list-item .text {
    flex: 1;
    padding-left: 10px;
    font-size: 1.3rem;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
}

@media (max-width: 768px) {
    .column-wrap {
        margin: 40px auto 0;
        padding: 30px 10px 0;
        flex-direction: column;
    }
    .column-main {
        width: 100%;
        padding: 4% 5%;
    }
    .ariticle-title {
        margin-bottom: 35px;
        font-size: 2.2rem;
    }
    .column-main p {
        padding-bottom: 25px;
    }
    .column-main .image {
        width: 100%;
        margin-bottom: 35px;
    }
    .column-main .h2-title {
        margin-bottom: 15px;
        padding: 4px 10px;
        font-size: 1.7rem;
    }
    .column-main .h3-title {
        margin-bottom: 15px;
        font-size: 1.5rem;
        line-height: 1.7;
    }
    .column-main .h4-title {
        margin-bottom: 15px;
        font-size: 1.5rem;
    }
    .column-main h2 {
        margin-bottom: 15px;
        padding: 4px 10px;
        font-size: 1.7rem;
    }
    .column-main h3 {
        margin-bottom: 15px;
        font-size: 1.5rem;
        line-height: 1.7;
    }
    .column-main h4 {
        margin-bottom: 15px;
        font-size: 1.5rem;
    }

    .column-side {
        max-width: 100%;
        margin: 40px 0 0;
    }
    .column-side .side-title {
        margin-bottom: 15px;
        padding: 2px 10px;
        font-size: 1.8rem;
    }
    .column-side .side-list-item .image {
        width: 80px;
    }

}

.event .gallery-photo__item {
    position: relative;
}
.event .gallery-photo__item ul {
    position: absolute;
    left: 10px;
    top: -10px;
    display: flex;
    z-index: 100;
}
.event .gallery-photo__item ul li {
    width: 46px;
    height: 46px;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 1.2rem;
    color: #fff;
    margin-right: 6px;
}
.bg-black {
    background-color: #333333;
}
.bg-purple {
    background-color: #908db1;
}
.bg-red {
    background-color: #b9777d;
}
.bg-green {
    background-color: #586a14;
}
@media (max-width: 768px) {
    .event .gallery-photo__item ul {
        left: 0;
    }
    .event .gallery-photo__item ul li {
        width: 35px;
        height: 35px;
        font-size: 1rem;
        margin-right: 4px;
    }
}

/* 撮影プラン一覧 */
.list-table .container01 {
    max-width: 1165px;
    padding: 0 10px;
}
.list-table .container01.last {
    padding-bottom: 100px;
}
.list-table .h3-title {
    margin-bottom: 20px;
    padding-left: 25px;
    position: relative;
}
.list-table .h3-title span {
    background-color: #b39d72;
    font-size: 1.6rem;
    font-weight: bold;
    line-height: 1.7;
    padding: 5px 25px;
    display: inline-block;
    color: #333333;
}
.list-table .h3-title::before {
    content: "";
    display: block;
    width: 38px;
    height: 1px;
    background: #333;
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    margin: auto;
}
.list-table .gallery__photo {
    max-width: 100%;
    width: 100%;
    margin: 40px auto 0;
}
.list-table .gallery-photo__gr {
    justify-content: flex-start;
    gap: 1.25%;
    padding-bottom: 50px;
}
.list-table .gallery-photo__item {
    box-shadow: 0px 0px 3px 0px rgba(0, 0, 0, 0.2) !important;
    -webkit-box-shadow: 0px 0px 3px 0px rgba(0, 0, 0, 0.2) !important;
    width: 19%;
}
.list-table .photo-item__text {
    font-size: 1.3rem;
    text-align: center;
    line-height: 1.7;
}
.list-table .gallery-photo__item {
    position: relative;
}
.list-table .gallery-photo__item .abs-ic {
    position: absolute;
    bottom: 15px;
    right: 18px;
    transition: all 0.4s;
}
.list-table .gallery-photo__item:hover .abs-ic {
    right: 10px;
}
@media (max-width: 768px) {
    .list-table .container01 {
        padding: 0;
        width: calc(100% - 26px);;
    }
    .list-table .container01.last {
        padding-bottom: 60px;
    }
    .list-table .h3-title {
        margin-bottom: 15px;
        padding-left: 20px;
    }
    .list-table .h3-title span {
        font-size: 1.4rem;
        padding: 4px 25px;
    }
    .list-table .h3-title::before {
        width: 34px;
    }
    .list-table .gallery__photo {
        margin: 40px auto 0;
    }
    .list-table .gallery-photo__gr {
        gap: 4%;
        padding-bottom: 50px;
    }
    .list-table .gallery-photo__item {
        width: 48%;
    }
    .list-table 
    .list-table .photo-item__text {
        font-size: 1.3rem;
    }
    
    .list-table .gallery-photo__item .abs-ic {
        bottom: 10px;
        right: 10px;
    }
}

/* お持込衣装確認リスト */
#bring .photo-item__content {
    padding: 10px 9px 25px;
}

/* カタログ請求 */
.catalog .contents-page .btn-link {
    position: relative;
}
.catalog .contents-page .btn-link::after {
    content: '';
    position: absolute;
    width: 20px;
    height: 15px;
    top: 52%;
    transform: translateY(-50%);
    left: 18px;
    background: url('../imgs/top/email.png');
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    transition: all 0.4s;
}
.catalog .contents-page .btn-link:hover::after {
    background: url('../imgs/top/email_black.png');
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
}
.catalog .container {
    width: calc(100% - 10px);
    max-width: 1080px;
    margin: 0 auto 130px;
}
.catalog .title-2 {
    margin-left: 40px;
}
.catalog .block {
    display: flex;
    justify-content: center;
    gap: 3.5%;
    margin: 0 auto 70px;
    line-height: 1.7;
}
.catalog .block02 {
    padding-top: 60px;
}
.catalog .block_item {
    width: 32%;
    max-width: 332px;
    font-weight: bold;
    text-align: center;
}
.catalog .block_item .text01 {
    font-size: 1.8rem;
    padding-bottom: 25px;
}
.catalog .block_item .text01 span {
    display: block;
    font-size: 1.6rem;
    color: #ab995b;
}
.catalog .block_item a {
    display: block;
    border: 1px solid #bfbfc1;
    transition: all .3s;
}
.catalog .block_item a:hover {
    opacity: .7;
}
.catalog .btn-link.bg-black {
    font-size: 1.5rem;
}

@media (max-width: 768px) {
    .catalog .container {
        width: calc(100% - 40px);
        margin: 0 auto 80px;
    }
    .catalog .title-2 {
        margin-left: 0;
    }
    .catalog .block {
        flex-direction: column;
        gap: 0;
        margin: 0 auto;
    }
    .catalog .block02 {
        padding-top: 60px;
    }
    .catalog .block_item {
        width: 100%;
        margin-bottom: 40px;
    }
    .catalog .block_item .text01 {
        font-size: 1.7rem;
        padding-bottom: 15px;
    }
    .catalog .block_item .text01 span {
        font-size: 1.4rem;
    }
    .catalog .btn-link.bg-black {
        font-size: 1.5rem;
    }
}

/* 企業紹介 */
.company_block  {
    padding: 100px 0;
}
.company_block .title {
    text-align: center;
    position: relative;
    /* width: fit-content; */
}
.company_block .title .h_text {
    position: absolute;
    top: -50px;
    left: 25%;
    width: 223px;
}
.company_block .title .h_text02 {
    top: -45px;
    left: 30%;
    width: 131px;
}
.company_block .title .h_text03 {
    top: -45px;
    left: 30%;
    width: 158px;
}
.company_block .title .h_text04 {
    top: -45px;
    left: 9.5%;
    width: 158px;
}

.company_box:not(:last-of-type) {
    margin: 0 0 180px 0;
}
.company_box_outer {
    max-width: 1274px;
    width: 100%;
    margin: 75px auto 0;
}
.company_box_img {
    margin: 0 auto -195px 0;
}
.company_box_contain {
    position: relative;
    z-index: 2;
}
.company_box_inner {
    width: 100%;
    max-width: 899px;
    display: flex;
    justify-content: center;
    align-items: center;
    background: #F0EBE4;
    margin-left: auto;
    padding: 80px 0 80px 13%;
}
.company_box_title {
    text-align: center;
    font-family: 'Zen Kaku Gothic Antique', sans-serif;
    font-size: 2rem;
    line-height: calc(42/20);
    margin-bottom: 40px;
}
.company_box_desc {
    width: 480px;
}

.company_box02 {
    width: 100%;
    max-width: 1077px;
    margin: 106px auto 230px;
    /* position: relative; */
}
.company_box02_in {
    margin: 50px auto;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between;
    max-width: 980px;
    width: 100%;
    padding: 50px 10px;

}
.company_box02_in::after {
    width: min(70vw, 715px);
    height: min(39vw, 410px);
    background: #F0EBE4;
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: -1;
}
.company_box02_in .content {
    max-width: 510px;
    width: 57%;
}
.company_box02_in .content p:not(:last-of-type) {
    padding-bottom: 5px;
}
.company_box02_in .content p span {
    display: inline-block;
    font-weight: bold;
    color: #655f54;
}
.company_box02_in .movie {
    width: 361px;
    aspect-ratio: 16/9;
    font-size: 1.3rem;
}
.company_box03 {
    max-width: 900px;
    margin: 0 auto;
    padding: 0 10px;
}
.company_box03_list {
    max-width: 700px;
    margin: 50px auto 0;
    border-top: 1px solid #999;
}
.company_box03_list .list_item {
    display: flex;
    align-items: center;
    padding: 10px 0;
    border-bottom: 1px solid #999;
    min-height: 60px;
    line-height: 2;
}
.company_box03_list .list_item .date {
    width: 27%;
    padding-left: 10px;
    font-weight: bold;
}
.company_box03_list .list_item .img {
    width: 95px;
    margin: 0 3% 0 0;
}

@media (max-width: 1150px) {
    .company_box_img {
        margin: 0 auto -6vw 0;
    }
}

@media (max-width: 768px) {
    .company_block {
        padding: 100px 0 0;
    }
    .company_block .title .h_text {
        top: -35px;
        left: 11%;
        width: 123px;
    }
    .company_block .title .h_text02 {
        top: -30px;
        left: 18%;
        width: 72px;
    }
    .company_block .title .h_text03 {
        top: -30px;
        left: 17%;
        width: 87px;
    }
    .company_block .title .h_text04 {
        top: -40px;
        left: 0%;
        width: 87px;
    }
    .company_box_outer {
        margin: 20px auto 0;
    }
    .company_box_img {
        width: calc(100% - 40px);
        text-align: center;
        margin: 0 auto max(-16vw, -75px);
    }
    .company_box_img img {
        width: 100%;
    }
    .company_box_inner {
        padding: 80px 0;
    }

    .company_box_title {
        margin-bottom: 15px;
        font-size: 1.7rem;
        line-height: calc(30.25/17);
    }
    .company_box:not(:last-of-type) {
        margin: 0 0 70px 0;
    }
    .company_box_desc {
        width: calc(100% - 40px);
        margin: 0 auto;
    }

    .company_box02 {
        margin: 106px auto 130px;
    }
    .company_box02_in {
        margin: 30px auto;
        flex-direction: column;
        padding: 0;
        width: calc(100% - 40px);
    }
    .company_box02_in::after {
        content: none;
    }
    .company_box02_in .content {
        max-width: 100%;
        width:100%;
    }
    .company_box02_in .movie {
        width: 100%;
        margin: 20px auto;
        font-size: 1.2rem;
    }
    .company_box03_list {
        max-width: 100%;
        margin: 30px auto 0;
    }
    .company_box03_list .list_item {
        flex-wrap: wrap;
        padding: 10px 0;
        min-height: 60px;
    }
    .company_box03_list .list_item .date {
        width: 100%;
        text-align: center;
        padding-bottom: 10px;
    }
    .company_box03_list .list_item .img {
        width: 95px;
        margin: 0 15px 0 0;
    }
    .company_box03_list .list_item .text {
        flex: 1;
    }
}

/* header */
.l_height {
    line-height: 1.5;
}
header .nav-menu .sub-menu .page-name a:hover {
    text-decoration: underline;
}
header .nav-menu .nav-item>.btn-down a.dorekana {
    display: inline-block;
    padding: 0;
}

/* クチコミ */
.review .contents-page {
    padding-bottom: 70px;
}
.review_container {
    padding-top: 115px;
}
.review .rate {
    /* display: flex;
    flex-wrap: wrap;
    gap: 2%;
    margin-bottom: 30px; */
}
.review .rate_in {
    display: flex;
    flex-wrap: wrap;
    gap: 2%;
    margin-bottom: 30px;
}
.review .es-box {
    width: 32%;
    background-color: #fff;
    border: 1px solid #d6dae4;
    border-radius: 15px;
    box-shadow: 0 2px 1px rgba(0, 0, 0, .05), 0 0 1px rgba(0, 0, 0, .25);
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    overflow: hidden;
    position: relative;
    margin: 0 0 40px;
    /* height: 400px; */
    /* transition: all 0.3s; */
}
.review .es-box:hover {
    box-shadow: 0 0 10px rgba(0, 0, 0, .15);
}
.review .es-box-top {
    font-size: 1.4rem;
    padding: 25px;
}
.review .es-items,
.review .es-items-inner {
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.review .es-items {
    margin-bottom: 10px;
}
.review .es-text {
    color: #111827;
    font-size: 1.4rem;
    line-height: calc(22/14);
    word-break: break-word;
}
.review .es-see-more {
    color: #000;
    font-weight: 700;
    margin-left: 5px;
    text-decoration: none;
}
.review .es-text-container:hover .es-see-more {
    text-decoration: underline;
}
.review .es-username {
    color: #111827;
    font-size: 1.4rem;
    font-weight: 700;
    line-height: calc(16/14);
    margin-bottom: 5px;
    word-break: break-all;
}
.review .es-date {
    color: #9ca0ac;
    font-size: 1.2rem;
    line-height: calc(14/12);
}
.review .es-star {
    display: inline-block;
    margin-right: 6px;
}
.review .es-items .es-avatar {
    background: #111827;
    border-radius: 50%;
    color: #fff;
    height: 40px;
    margin-right: 10px;
    min-width: 40px;
    overflow: hidden;
    position: relative;
    width: 40px;
}
.review .es-box.cursor-pointer:hover {
    box-shadow: 0 0 10px rgba(0, 0, 0, .15);
}

.btn-link02 {
    margin-bottom: 35px !important;
    background-image: none !important;
}
.text-link {
    display: block;
    width: fit-content;
    margin: 40px auto 0;
    text-align: center;
    position: relative;
    transition: all .3s;
}
.text-link:hover {
    opacity: .7;
    text-decoration: underline;
}
.text-link img {
    display: inline-block;
    position: absolute;
    right: -15px;
    top: 0;
    bottom: 0;
    margin: auto;
    width: 10px;
    transition: all .3s;
}
.text-link:hover img {
    right: -20px;
}

@media (max-width: 768px) {
    .review .contents-page {
        padding-bottom: 50px;
    }
    .review_container {
        padding-top: 50px;
    }
    .review .rate {
        gap: 4%;
        margin-bottom: 30px;
    }
    .review .es-box {
        width: 100%;
        margin: 0 0 20px;
    }
    .review .es-box-top {
        padding: 20px;
    }
    .btn-link02 {
        margin-bottom: 25px !important;
    }
    .text-link {
        margin: 30px auto 0;
    }

}

.top .main .rate .btn-link {
    margin: 60px auto 120px;
}

/* 着付・お直しについて*/
.tailoring .table_box_in {
    margin-bottom: 80px;
}
.tailoring .h3-title {
    font-size: 2rem;
    line-height: calc(65.25/34);
    letter-spacing: 0.16em;
    font-family: 'Zen Old Mincho', serif;
}
.tailoring .box-what .info .info_in {
    width: 45%;
}
.tailoring table {
    width: 100% !important;
}
@media (max-width: 768px) {
    .tailoring .box-what .info .info_in {
        width: 100%;
        padding-bottom: 30px;
    }
}

/* モーダル */
.no_scroll {
    overflow: hidden;
  }
.modal-window {
    display: none;
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background: #fff;
    z-index: 10001;
    max-width: 800px;
    width: 100%;
}
.modal-window .content {
    padding: 40px 80px;
    margin: 0 auto;
    width: 100%;
    height: 600px;
    background: #fff;
    overflow: auto;
    z-index: 11;
}
.modal-window .content .modal-title {
    font-size: 1.6rem;
    line-height: calc(24/16);
    font-weight: bold;
    text-align: center;
    margin-bottom: 40px;
}

.modal-window .content .sub-tit{
    font-weight: 500;
}
.modal-window .content .tit-content{
    font-weight: bold;
    margin-top: 40px;
}
.modal-window .content ul li a{
    text-decoration: underline;
    font-weight: 500;
    transition: all 0.4s;
}
.modal-window .content ul li a:hover{
    color: #b23d53;
}

.reserve .button-close{
    position: absolute;
    top: -15px;
    right: -15px;
    z-index: 30;
    background: none;
    border: none;
    padding: 0;
    cursor: pointer;
    -webkit-position: absolute;
    -webkit-top: 0;
    -webkit-right: 0px;
    -webkit-background: none;
    -webkit-border: none;
    -webkit-padding: 0;
    -webkit-cursor: pointer;
}
.overlay {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    background-color: rgba(0, 0, 0, 0.7);
    width: 100%;
    height: 100%;
    z-index: 10000;
}

@media (max-width: 768px) {
    .modal-window {
        width: 88%;
        /* margin: 0 auto; */
    }
    .modal-window .content {
        padding: 30px 20px;
        width: 100%;
        height: 550px;
    }
}

/* 20231211追加 */
.gallery-filter__list li a {
    white-space: nowrap;
}
.gallery_slide_image {
    /* height: 332px; */
 object-fit: cover;
height: 100%;
}
input[type="submit"].btn-link {
    display: block;
    width: 254px;
}

.mw_wp_form_confirm .back {
    color: #fff;
    background: #939393 url(../imgs/top/arr_wt.png);
    background-position: center right 15px;
    background-repeat: no-repeat;
    border-color: transparent;
    background-size: 10px 9px;
    display: block;
    width: 254px;

    max-width: 254px;
    margin: 0 auto;
    display: block;
    text-align: center;
    font-size: 1.6rem;
    line-height: calc(28/16);
    letter-spacing: 0.12em;
    border: 1px solid #939393;
    background-repeat: no-repeat;
    background-position: center right 15px;
    border-radius: 40px;
    background-size: 10px 9px;
    font-weight: bold;
    padding: 10px 0;
    margin-bottom: 20px;
    transition: all 0.4s;
    background-color: #939393;
    font-family: 'Zen Kaku Gothic Antique', sans-serif;
}
.mw_wp_form_confirm .back:hover {
    color: #939393;
    border: 1px solid #939393;
    background: #fff url('../imgs/top/arr_bl.png');
    background-repeat: no-repeat;
    background-position: center right 10px;
    background-size: 10px 9px;
}

.mw_wp_form_confirm .button_group {
    display: flex;
    justify-content: center;
}

@media (max-width: 768px) {
    .mw_wp_form_confirm .button_group {
        flex-direction: column-reverse;
    }
    header .header_logo {
        width: 100%;
        text-align: center;
        height: 50px;
    }
}

.reserve .button-close {
    top: 0px !important;
    right: 0px !important;
}

#store-slide ul {
    position: absolute;
    top: 15px;
    left: 8px;
    display: flex;
    gap: 8px;
}
#store-slide ul li{
    width: 50px;
    height: 50px;
    display: flex;
    justify-content: center;
    align-items: center;
    color: white;
    border-radius: 50px;
    font-size: 13px;
    font-weight: 200;
}
header .nav-menu .sub-menu .baby-kids.dflex{
    justify-content: flex-start;
}

@media (max-width: 1180px) {
 .main .hero-tit{
  font-size: min(3.5vw, 3rem);
 }
}
/* TOPバナー追加 */
.top_bannerbox{
    width: 100%;
    margin: 0 auto 30px auto;
    position: relative;
}
.top_bannerbox:after {
    content: '';
    position: absolute;
    bottom: -100px;
    top: 0;
    left: 0;
    width: 80.55%;
    display: block;
    background-color: #f0ebe4;
    z-index: -1;
}
.top_bannerbox a{
    max-width: 650px;
    width: 100%;
    height: auto;
    margin: 0 auto 10px;
    display: block;
    transition: all 0.3s;
}
.top_bannerbox a:hover{
    opacity: 0.7;
}
.top_bannerbox a.only-sp {
    padding: 5% 5% 0;
}
.top_bannerbox.hero_on:after {
    content: none;
}
/* 宇都宮店詳細 限定商品ボタン追加 */
.main .store-u .btn-link{
    max-width: 320px;
    border-radius: 6px;
    margin: 0 auto 100px auto;
}
/* お問い合わせ 画像追加 */
.main .contact .contact-info-img{
    max-width: 400px;
    width: 100%;
    margin: 15px auto;
}
.main .contact .contact-info-img img{
    width: 100%;
    height: auto;
}
/* アルバム 宇都宮限定商品ボタン追加 */
.main.goods-page .store-u .btn-link{
    max-width: 320px;
    border-radius: 6px;
    margin: 100px auto 0 auto;
}
@media (max-width: 768px) {
    .main.goods-page .store-u .btn-link{
        margin: 50px auto 0 auto;
    }
}

.review .es-items .es-avatar img {
    width: 100%;
    height: 100%;
}

.main .rate .es-text-container:hover .es-see-more {
    cursor: pointer;
}

.review_title {
    margin-bottom: 0px;
}
.review_desc {
    margin-top: -10px;
    margin-bottom: 40px;
}
@media (max-width: 768px) {
    .review_desc {
        margin-top: 0px;
        margin-bottom: 30px;
    }
}
/*H1追加 */
.top_h1{
    width: 100%;
    margin: 0 auto 70px auto;
    font-size: 13px;
    text-align: center;
    position: relative;
}
.top_h1:after {
    content: '';
    position: absolute;
    bottom: -30px;
    top: 0;
    left: 0;
    width: 80.55%;
    display: block;
    background-color: #f0ebe4;
    z-index: -1;
}
@media (max-width: 768px) {
    .top_h1{
        font-size: 11px;
        margin: 0 auto 50px auto;
 }
}
.contents-page .h1-text{
    width: 100%;
    margin: 0 auto 25px auto;
    font-size: 13px;
    font-weight: 500;
    text-align: center;
}
.contents-page .o-title{
    margin-bottom: 50px;
    position: relative;
}
.contents-page .o-title::before{
    content: "";
    width: 70px;
    height: 1px;
    background: #ab995b;
    position: absolute;
    bottom: -20px;
    left: 46%;
}
@media (max-width: 768px) {
    .contents-page .h1-text{
        font-size: 11px;
        font-weight: 500;
        margin: 0 auto 15px auto;
    }
    .contents-page .o-title{
        margin-bottom: 40px;
    }
    .contents-page .o-title::before{
        content: "";
        height: 1px;
        background: #ab995b;
        position: absolute;
        bottom: -20px;
        left: 39%;
    }}

.title-3_desc span.strong{
        font-size: 1.6rem;
        font-weight: bold;
        text-align: center;
        color: #B23D53;
        display: inline-block;
    }
/* add20240508 */
.store-detail .staff-blog .blog .box-link .tit-picture span{
    color: #b39d72;
    font-size: 1.3rem;
    font-weight: bold;
    font-family: "Noto Sans JP", sans-serif;
}
@media (max-width: 1140px) {
    header .nav-menu .sub-menu li a{
        display: inline-block;
        width:100%;
    }
}
/* add20240515 */
.goods__setgoods{
    margin: 170px auto 0 auto;
}
.goods__setgoods .setgoods_cont{
    width: 100%;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    margin: 15px 0 0 0 ;
}
.goods__setgoods .setgoods_cont .setgoods_box{
    width: 30%;
    padding: 30px 10px;
    background-color: #fff;
    text-align: center;
    webkit-box-shadow: 0px 0px 10px 0px rgba(122, 115, 92, 0.25);
    -moz-box-shadow: 0px 0px 10px 0px rgba(122, 115, 92, 0.25);
    box-shadow: 0px 0px 10px 0px rgba(122, 115, 92, 0.25);

}
.goods__setgoods .setgoods_cont .setgoods_box .link{
    margin-top: 30px;
}
.goods__setgoods .setgoods_cont .setgoods_box .link .link-item {
    display: flex;
    align-items: center;
    margin-bottom: 15px;
    justify-content: center;
}
.goods__setgoods .setgoods_cont .setgoods_box .link .link-item span {
    font-size: 1.4rem;
    font-weight: bold;
    color: #333;
    font-family: 'Zen Kaku Gothic Antique', sans-serif;
    line-height: calc(22.25/14);
    transition: all 0.3s;
}
.goods__setgoods .setgoods_cont .setgoods_box .link .link-item a {
    font-size: 1.3rem;
    font-weight: bold;
    color: #fff;
    line-height: 1;
    background-color: #333;
    margin-left: 10px;
    padding: 7.5px 15px;
    border-radius: 40px;
    transition: all 0.4s;
    letter-spacing: 0.12em;
}
.goods__setgoods .setgoods_cont .setgoods_box .link .link-item a:hover {
    color: #333;
    background-color: #f0ebe4;
}

@media (max-width: 768px) {
    .goods__setgoods{
        margin: 50px auto 0 auto;
    }
    .goods__setgoods .setgoods_cont{
        flex-direction: column;
    }
    .goods__setgoods .setgoods_cont .setgoods_box{
        width: 100%;
        margin: 0 0 30px 0;
    }
    .goods__setgoods .setgoods_cont .setgoods_box .link{
        margin-top: 25px;
    }
    .goods__setgoods .setgoods_cont .setgoods_box .link .link-item span {
        font-size: 1.3rem;
        letter-spacing: 0.06em;
    }
    .goods__setgoods .setgoods_cont .setgoods_box .link .link-item a {
        font-size: 1.2rem;
    }
    }
.plan .box-what .info table td.pd-adj{
        padding: 10px 20px;
    }
.plan .box-what .info table td span.bold{
    font-weight: bold;
}
.plan .box-what .info table td.lh-adj{
    line-height: 2.5rem;
}
@media (max-width: 768px) {
    .plan .box-what .info table td.pd-adj{
        padding: 10px 10px;
    }
    }
.intro-box__btn{
    margin-top: 20px;
}
/* add20240607七五三 上部ギャラリーへの案内 */
.shichigosan_newgallery {
    max-width: 600px;
    width: 100%;
    margin: 0 auto 30px auto;
    box-shadow: 0 0 4px #ccc;
    padding: 20px 15px 0 15px;

}
.shichigosan_newgallery p{
    font-weight: bold;
    margin: 0 0 10px 0;
}
.shichigosan_newgallery .btn_box{
    display: flex;
    width: 100%;
}
.shichigosan_newgallery .btn_box a{
    width: 30%;
    padding: 5px 0;
    font-size: 14px;
}
@media (max-width: 768px) {
    .shichigosan_newgallery {
        max-width: 100%;
        width: 98%;
        padding: 20px 10px 15px 10px;
    }
    .shichigosan_newgallery p {
        margin: 0 0 4% 0;
        line-height: 1.7;
    }
    .shichigosan_newgallery .btn_box{
        width: 100%;
        flex-direction: column;
    }
    .shichigosan_newgallery .btn_box a {
        width: 80%;
        margin: 0 auto 12px auto;
    }
}


/* 20240613 アルバム */
.goods__block .box_link {
    max-width: 850px;
    margin: 0 auto 50px;
    display: flex;
    flex-wrap: wrap;
    gap: 1.5%
}
.goods__block .box_link a {
    width: 23.875%;
    margin-bottom: 18px;
    padding: 4px;
    font-size: 1.4rem;
    text-align: center;
    background-color: #f0ebe4;
    border-radius: 30px;
}
.add_goods_group {
    max-width: 850px;
    margin: 0 auto;
}
.goods_item {
    margin-bottom: 50px;
    padding: 5% 6%;
    -webkit-box-shadow: 0px 0px 10px 0px rgba(122, 115, 92, 0.25);
    -moz-box-shadow: 0px 0px 10px 0px rgba(122, 115, 92, 0.25);
    box-shadow: 0px 0px 10px 0px rgba(122, 115, 92, 0.25);
}
.goods_item .title {
    margin-bottom: 35px;
    font-size: 2.4rem;
    font-weight: 100;
    font-family: 'Zen Old Mincho', serif;
    text-align: center;
}
.goods_item .title span {
    font-size: 1.8rem;

}
.goods_item .column {
    display: flex;
    justify-content: space-between;
}
.goods_item .column > div {
    width: 50%;
}
.goods_item .slider {
    padding-right: 3%;
}
.goods_item .main_slider {
    list-style: none;
}
.goods_item .main_slider .slide-arrow {
    bottom: 0;
    cursor: pointer;
    margin: auto;
    position: absolute;
    top: 0;
    width: 36px !important;
    z-index: 100;
}

/*-----------height調整----------*/
/*.slick-slide{ height:auto!important;}*/
.slick-slide{ height:auto;}

/*-----------矢印表示----------*/
.goods_item .main_slider .slick-next {
    right: -20px !important;
}
.goods_item .main_slider .slick-prev {
    left: -20px !important;
}
.goods_item .main_slider .slick-next:before{
    background: url(../imgs/goods/add/arrow_next.png)!important;
    background-size: contain!important;
    background-repeat: no-repeat !important;
}
.goods_item .main_slider .slick-prev:before{
    background: url(../imgs/goods/add/arrow_prev.png)!important;
    background-size: contain!important;
    background-repeat: no-repeat !important;
}
.goods_item .main_slider .slick-arrow{
    z-index:2!important;
    width: 36px !important;
    height: 36px !important;
}
.goods_item .main_slider .slick-arrow:before{
    content:""!important;
    width: 100%!important;
    height: 100%!important;
    position: absolute;
    top: 0;
    left: 0;
    opacity:1!important;
}

.goods_item .main_slider .goods_box .content{
    line-height: calc(27/14);
    letter-spacing: 0.05em;
    margin: 0 0 18px 0;
}
.goods_item .main_slider img,
.goods_item .thumb_slider img {
    width: 100%;
}
.goods_item .thumb_slider {
    list-style: none;
    margin-top: 20px;
}
.goods_item .thumb_slider li {
    width: 23.5% !important;
    margin: .75%;
}
.goods_item .thumb_slider .slick-track {
    transform: unset !important;
    width: 100% !important;
}

.goods_item .content {
    padding-left: 3%;
    line-height: 1.5;
}
.goods_item .content .lead {
    margin-bottom: 10px;
    font-size: 1.8rem;
    font-weight: bold;
}
.goods_item .content .tags {
    margin-bottom: 10px;
}
.goods_item .content .tags span {
    display: inline-block;
    padding: 2px 10px;
    font-size: 1.3rem;
    color: #fff;
    background-color: #b39d72;
}
.goods_item .content .text {
    line-height: 2;
    margin-bottom: 20px;
}
.goods_item .content .box {
    background: #F0EBE4;
    padding: min(2.7vw, 27px) min(2vw, 22px);
    line-height: 2;
}
.goods-box-price__desc span {
    font-weight: bold;
}
.goods_item .content .recommend {
    padding: 20px 0;
}
.goods_item .content .recommend p {
    font-size: 1.4rem;
    font-weight: bold;
    padding-bottom: 10px;
}
.goods_item .content .recommend a {
    display: inline-block;
    margin: 0 5px 10px 0;
    padding: 2px 10px;
    font-size: 1.3rem;
    font-weight: 500;
    border: 1.5px solid #333;
    border-radius: 999px;
    transition: all .3s;
}
.goods_item .content .recommend a:hover {
    color: #fff;
    background-color: #333;
}
.goods_video {
    max-width: 600px;
    aspect-ratio: 16/9;
    margin: 50px auto 0;
}

@media (max-width: 768px) {
    .goods__block .box_link {
        max-width: 850px;
        margin: 0 auto 25px;
        display: flex;
        flex-wrap: wrap;
        gap: 2%
    }
    .goods__block .box_link a {
        width: 49%;
        margin-bottom: 8px;
        padding: 4px;
        font-size: 1.2rem;
    }
    .add_goods_group {
        max-width: 850px;
        margin: 0 auto;
    }
    .goods_item {
        margin-bottom: 40px;
        padding: 5% 6%;
    }
    .goods_item .title {
        margin-bottom: 25px;
        font-size: 2rem;
    }
    .goods_item .title span {
        font-size: 1.5rem;
    }
    .goods_item .column {
        flex-direction: column;
    }
    .goods_item .column>div {
        width: 100%;
    }
    .goods_item .slider {
        padding: 0 0 30px;
    }
    .goods_item .main_slider .slide-arrow {
        top: 0;
        width: 30px !important;
    }

    /*-----------矢印表示----------*/
    .goods_item .main_slider .slick-next {
        right: -15px !important;
    }
    .goods_item .main_slider .slick-prev {
        left: -15px !important;
    }
    /* .goods_item .main_slider .slick-next:before {
        background: url(../imgs/goods/add/arrow_next.png) !important;
        background-size: contain !important;
        background-repeat: no-repeat !important;
    }
    .goods_item .main_slider .slick-prev:before {
        background: url(../imgs/goods/add/arrow_prev.png) !important;
        background-size: contain !important;
        background-repeat: no-repeat !important;
    } */
    .goods_item .main_slider .slick-arrow {
        z-index: 2 !important;
        width: 30px !important;
        height: 30px !important;
    }

    .goods_item .content {
        padding-left: 0;
    }
    .goods_item .content .lead {
        margin-bottom: 10px;
        font-size: 1.6rem;
    }
    .goods_item .content .tags {
        margin-bottom: 10px;
    }
    .goods_item .content .tags span {
        padding: 2px 10px;
        font-size: 1.2rem;
    }
    .goods_item .content .text {
        margin-bottom: 20px;
        font-size: 1.3rem;
    }
    .goods_item .content .recommend {
        padding: 20px 0;
    }
    .goods_item .content .recommend p {
        font-size: 1.3rem;
        padding-bottom: 10px;
    }
    .goods_item .content .recommend a {
        font-size: 1.2rem;
    }
    .goods_video {
        margin: 40px auto 0;
    }
}


.gallery_search_container .gallery-tag__title {
 text-align: center;
}
.gallery_search_container .gallery-filter__list_shop {
    display: flex;
    justify-content: center;
    color: #333;
}
.gallery_search_container .gallery-filter__list_shop li {
    width: 30%;
}
.gallery_search_container .gallery-filter__list {
    color: #333;
}
.gallery_search_container .gallery-filter__list li {
    white-space: nowrap;
}
.gallery_search_container input {
    border-radius: 0;
}

.gallery_search_container input[type="checkbox"] {
    position: relative;
    width: 16px;
    height: 16px;
    border: 1.5px solid #333;
    vertical-align: -5px;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}
  
.gallery_search_container input[type="checkbox"]:checked:before {
    position: absolute;
    top: 1.5px;
    left: 5px;
    transform: rotate(50deg);
    width: 5px;
    height: 9px;
    border-right: 2px solid #333;
    border-bottom: 2px solid #333;
    content: '';
}

.gallery_search_button {
    max-width: 254px;
    margin: 0 auto;
    display: block;
    text-align: center;
    font-size: 1.6rem;
    line-height: calc(28/16);
    letter-spacing: 0.12em;
    border: 1px solid #333;
    background-repeat: no-repeat;
    background-position: center right 15px;
    border-radius: 40px;
    background-size: 10px 9px;
    font-weight: bold;
    padding: 10px 0;
    margin-bottom: 20px;
    transition: all 0.4s;
    background-color: #fff;
    font-family: 'Zen Kaku Gothic Antique', sans-serif;
    color: #fff;
    background: #333333;
    background-position: center right 15px;
    background-repeat: no-repeat;
    border-color: transparent;
    background-size: 10px 9px;
    min-width: 40%;
    cursor: pointer;
}
.gallery_search_button:hover {
    color: #333333;
    border: 1px solid #333;
    background: #fff;
    background-repeat: no-repeat;
    background-position: center right 10px;
    background-size: 10px 9px;
}
@media (max-width: 768px) {
    .gallery_search_button {
        padding: 8px 0;
        width: 60%;
    }
}


/* add20240712 */
.store-detail .concept-info .m-desc {
    max-width: 700px;
    margin: 0 auto;
    text-align: left;
}
.store-detail .concept-info .m-desc span {
    display: block;
    margin-bottom: 20px;
    font-family: 'Zen Kaku Gothic Antique';
    font-size: 1.8rem;
    font-weight: bold;
    text-align: center;
}
.store-detail .image01 {
    margin: 45px auto 50px;
}
.store-detail .content_info {
    max-width: 1440px;
    margin: 0 auto;
    display: flex;
    align-items: flex-start;
}
.store-detail .content_info .box-img {
    margin: 0;
    max-width: 720px;
    padding-right: 3%;
    padding-bottom: 11.5%;
    width: 50%;
}
.store-detail .content_info .box-img .img1 {
    max-width: 660px;
    width: 100%;
}
.store-detail .content_info .box-img .img2 {
    max-width: 325px;
    width: 46%;
    right: 0;
    bottom: 0;
}
.store-detail .content_info .box-desc {
    width: 31%;
    margin-left: 5%;
    text-align: left;
}
.store-detail .content_info .box-desc p + p{
    margin-top: 30px;
}
.store-detail .about-shooting {
    width: calc(100% - 40px);
    max-width: 990px;
    margin: 0 auto;
    padding: 5% 0 0;
}
.store-detail .about-shooting .add_title {
    font-family: 'Zen Kaku Gothic Antique';
    font-size: 2rem;
    text-align: center;
    margin-bottom: 50px;
}
.store-detail .about-shooting .block01 {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding-bottom: 50px;
}
.store-detail .about-shooting .block01 > div {
    width: 48%;
    position: relative;
}
.store-detail .about-shooting .images {
    padding-bottom: 15%;
}
.store-detail .about-shooting .img1 {
    max-width: 456px;
    width: 97%;
}
.store-detail .about-shooting .img2 {
    max-width: 265px;
    width: 57%;
    position: absolute;
    right: -6%;
    bottom: 0;
}
.store-detail .about-shooting .content {
    padding-left: 5%;
}
.store-detail .about-shooting .content .btn-link {
    margin: 40px auto;
}
.store-detail .about-shooting .block02 {
    padding: 5%;
    box-shadow: 0px 0px 3px 0px rgba(0, 0, 0, 0.2) !important;
}
.store-detail .about-shooting .block02 p {
    margin-bottom: 30px;
    font-family: 'Zen Kaku Gothic Antique';
    font-size: 2rem;
    font-weight: bold;
    text-align: center;
}
.store-detail .about-shooting .block02_in {
    display: flex;
    flex-wrap: wrap;
    gap: 2.5%;
    max-width: 540px;
    margin: 0 auto 30px;
}
.store-detail .about-shooting .block02_in a {
    max-width: 170px;
    width: 100%;
    margin: 0 0 15px;
    padding: 5px;
    font-size: 1.4rem;
}
.store-detail .about-shooting .block02 > .btn-link {
    margin: 0 auto;
}
.store-detail .shop-studio,
.store-detail .instagram-feed {
    margin-bottom: 150px;
}
.store-detail .shop-studio .m-desc {
    margin-bottom: 50px;
}
.store-detail .studio-block {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    padding: 60px 0 80px;
    position: relative;
}
.store-detail .studio-block .img-studio {
    position: absolute;
    top: 0;
    left: 0;
    max-width: 140px;
    width: 15%;
}
.store-detail .studio-block .image {
    position: relative;
    width: 51%;
}
.store-detail .img-abs {
    position: absolute;
}
.store-detail .studio-block .image .img1 {
    max-width: 460px;
    width: 92%;
}
.store-detail .studio-block .image .img2 {
    max-width: 265px;
    width: 53%;
    right: 0;
    bottom: 8%;
}
.store-detail .studio-block .image .img3 {
    max-width: 214px;
    width: 44%;
    margin-top: 30px;
}
.store-detail .studio-block02 .image .img1 {
    max-width: 100%;
    width: 100%;
}
.store-detail .studio-block .content {
    width: 49%;
    padding: 5% 0 0 5%;
}
.store-detail .studio-block .content .text01 {
    margin-bottom: 25px;
    font-family: 'Zen Kaku Gothic Antique';
    font-size: 2rem;
    font-weight: bold;
    text-align: center;
    line-height: 1.7;
}
.store-detail .studio .bottom-text {
    width: 90%;
    margin: 0 auto;
}
.store-detail .shop-staff {
    margin-bottom: 150px;
}
.store-detail .shop-staff-block {
    max-width: 800px;
    margin: 0 auto;
}
.store-detail .shop-staff-block .m-desc {
    width: 90%;
    margin: 40px auto;
    letter-spacing: -.01em;
}

/* 店舗 撮影について */
.abt-shooting .concept-info .m-desc {
    margin-bottom: 70px;
}
.abt-shooting .container01 {
    width: calc(100% - 40px);
    max-width: 1100px;
    margin: 0 auto;
}
.abt-shooting .shooting-point {
    margin-bottom: 160px;
}
.abt-shooting .shooting-point .block {
    margin-top: 180px;
    padding: 50px 5% 5%;
    display: flex;
    justify-content: space-between;
    background-color: #f0ebe4;
    position: relative;
}
.abt-shooting .shooting-point .block .img-point {
    position: absolute;
    top: -21%;
    left: 5%;
    max-width: 160px;
    width: 15%;
}
.abt-shooting .shooting-point .block .image {
    position: relative;
    width: 52%;
    padding-bottom: 35%;
}
.abt-shooting .shooting-point .image .img1 {
    max-width: 460px;
    width: 92%;
    top: min(-26%, -70px);
}
.abt-shooting .shooting-point .image .img2 {
    max-width: 265px;
    width: 52%;
    right: 0;
    top: 42%;
}
.abt-shooting .shooting-point .image .img3 {
    max-width: 214px;
    width: 42%;
    top: 60%;
}
.abt-shooting .shooting-point .block .content {
    flex: 1;
    padding-left: 5%;
}
.abt-shooting .shooting-point .block .content .title {
    font-family: 'Zen Kaku Gothic Antique';
    font-size: 2rem;
    font-weight: bold;
    text-align: center;
    margin-bottom: 20px;
}
.abt-shooting .shooting-environment {
    margin-bottom: 260px;
}

.abt-shooting .shooting-environment .block {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    padding: 60px 0 40px;
    position: relative;
}
.abt-shooting .shooting-environment .block .image {
    position: relative;
    width: 51%;
}
.abt-shooting .shooting-environment .img-abs {
    position: absolute;
}
.abt-shooting .shooting-environment .block .image .img1 {
    max-width: 460px;
    width: 92%;
}
.abt-shooting .shooting-environment .block .image .img2 {
    max-width: 265px;
    width: 53%;
    right: 0;
    bottom: 8%;
}
.abt-shooting .shooting-environment .block .content {
    width: 49%;
    padding: 5% 0 0 5%;
}
.abt-shooting .shooting-environment .block .content .text01 {
    margin-bottom: 25px;
    font-family: 'Zen Kaku Gothic Antique';
    font-size: 2rem;
    font-weight: bold;
    text-align: center;
    line-height: 1.7;
}
.abt-shooting .shooting-environment .block01 .image .img1 {
    max-width: 100%;
    width: 100%;
}
.abt-shooting .shooting-environment .block02 {
    flex-direction: row-reverse;
}
.abt-shooting .shooting-environment .block02 .content {
    width: 49%;
    padding: 0 5% 0 0;
}
.abt-shooting .shooting-environment .block02 .image .img2 {
    max-width: 265px;
    width: 53%;
    right: 0;
    bottom: -56%;
}

/* 店舗 プランへの取り組み */
.efforts-wrap {
    padding-bottom: 120px;
}
.efforts .contents-page02 {
    padding-top: 0;
}
.efforts-block .block01 {
    max-width: 670px;
    margin: 0 auto 70px;
}
.efforts-block .block01.last {
    margin-bottom: 0;
}
.efforts-block .block01 .text01 {
    margin: 0 auto 40px;
    font-family: 'Zen Kaku Gothic Antique';
    font-size: 1.8rem;
    font-weight: bold;
    text-align: center;
    line-height: 1.8;
}
.efforts-block .block01 .text02 {
    font-size: 1.4rem;
    font-weight: 500;
    letter-spacing: 0;
}

.efforts .photo-store {
    margin-bottom: 60px;
}
.efforts-block .block02 {
    display: flex;
    justify-content: space-between;
    padding-bottom: 50px;
}
.efforts-block .block02 > div {
    width: 48%;
    position: relative;
}
.efforts-block .block02 .images {
    padding-bottom: 15%;
}
.efforts-block .block02 .img1 {
    max-width: 456px;
    width: 97%;
}
.efforts-block .block02 .img2 {
    max-width: 265px;
    width: 57%;
    position: absolute;
    right: -6%;
    bottom: 0;
}
.efforts-block .block02 .content {
    padding-left: 5%;
}
.efforts-block .block02 .content .btn-link {
    margin: 40px auto;
}
.efforts-block02 {
    max-width: 1440px;
    margin: 0 auto;
    display: flex;
    align-items: flex-start;
}
.efforts-block02 .box-img {
    margin: 0;
    max-width: 720px;
    padding-right: 2%;
    padding-bottom: 11.5%;
    width: 50%;
    position: relative;
}
.efforts-block02 .box-img .img1 {
    max-width: 700px;
    width: 100%;
}
.efforts-block02 .box-img .img2 {
    max-width: 340px;
    width: 48%;
    right: 0;
    bottom: 20px;
}
.efforts-block02 .box-img .img3 {
    max-width: 275px;
    width: 40%;
    left: 10%;
    bottom: -20px;
}
.efforts-block02 .box-desc {
    width: 31%;
    margin-left: 5%;
    text-align: left;
}
.efforts-block02 .box-desc .title {
    font-family: 'Zen Kaku Gothic Antique';
    font-size: 2rem;
    font-weight: bold;
    text-align: center;
    margin-bottom: 20px;
}
.efforts-block02 .box-desc p + p{
    margin-top: 15px;
}
.efforts-block02 .box-desc .btn-link {
    margin: 40px auto;
}



@media (max-width: 768px) {
    .store-detail .concept-info .m-desc span {
        margin-bottom: 10px;
        font-size: 1.5rem;
    }
    .store-detail .image01 {
        margin: 25px auto;
    }
    .store-detail .content_info {
        width: calc(100% - 40px);
        max-width: 990px;
        margin: 0 auto;
        flex-direction: column;
    }
    .store-detail .content_info .box-img {
        margin: 20px auto;
        width:100%;
    }
    .store-detail .content_info .box-img .img1 {
        width: 80%;
    }
    .store-detail .content_info .box-desc {
        width: 100%;
        margin-left: 0;
    }
    .store-detail .content_info .box-desc p + p{
        margin: 30px auto;
    }
    .store-detail .about-shooting {
        padding: 40px 0 0;
    }
    .store-detail .about-shooting .add_title {
        font-size: 1.5rem;
        margin-bottom: 20px;
    }
    .store-detail .about-shooting .block01 {
        flex-direction: column;
        padding-bottom: 50px;
    }
    .store-detail .about-shooting .block01 > div {
        width: 100%;
    }
    .store-detail .about-shooting .images {
        padding-bottom: 25%;
        margin-bottom: 20px;
    }
    .store-detail .about-shooting .img1 {
        width: 80%;
    }
    .store-detail .about-shooting .img2 {
        width: 45%;
        right: 0;
        bottom: 0;
    }
    .store-detail .about-shooting .content {
        padding-left: 0;
    }
    .store-detail .about-shooting .block02 {
        padding: 5% 0;
        box-shadow: none !important;
    }
    .store-detail .about-shooting .block02 p {
        margin-bottom: 30px;
        font-size: 1.5rem;
        line-height: 1.7;
    }
    .store-detail .about-shooting .block02_in {
        gap: 4%;
        margin: 0 auto 30px;
    }
    .store-detail .about-shooting .block02_in a {
        max-width: 100%;
        width: 48%;
        margin: 0 0 15px;
        padding: 5px;
        font-size: 1.4rem;
    }
    .store-detail .about-shooting .block02 > .btn-link {
        margin: 0 auto;
    }
    .store-detail .shop-studio,
    .store-detail .instagram-feed {
        margin-bottom: 60px;
    }
    .store-detail .shop-studio .m-desc {
        margin-bottom: 30px;
    }
    .store-detail .studio-block {
        flex-direction: column;
        padding: 45px 0;
    }
    .store-detail .studio-block .img-studio {
        max-width: 140px;
        width: 42%;
    }
    .store-detail .studio-block .image {
        position: relative;
        width: 100%;
        margin-bottom: 20px;
    }
    .store-detail .studio-block .image .img-abs {
        position: absolute;
    }
    .store-detail .studio-block .image .img1 {
        width: 87%;
    }
    .store-detail .studio-block .image .img2 {
        width: 47%;
        right: 0;
        bottom: 16%;
    }
    .store-detail .studio-block .image .img3 {
        width: 42%;
        margin-top: 20px;
        margin-left: 20px;
    }
    .store-detail .studio-block02 .image .img1 {
        max-width: 100%;
        width: 100%;
    }
    .store-detail .studio-block .content {
        width: 100%;
        padding: 5% 0 0;
    }
    .store-detail .studio-block .content .text01 {
        margin-bottom: 20px;
        font-size: 1.5rem;
    }
    .store-detail .studio .bottom-text {
        width: 90%;
        margin: 0 auto;
    }
    .store-detail .shop-staff {
        margin-bottom: 100px;
    }
    .store-detail .shop-staff-block .m-desc {
        width: 100%;
        margin: 20px auto;
    }

    /* 店舗 撮影について */
    .abt-shooting .contents-page {
        padding-bottom: 30px;
    }
    .abt-shooting .concept-info .m-desc {
        margin-bottom: 20px;
    }
    /* .abt-shooting .container01 {
        width: calc(100% - 40px);
        max-width: 1100px;
        margin: 0 auto;
    } */
    .abt-shooting .shooting-point {
        margin-bottom: 80px;
    }
    .abt-shooting .shooting-point .block {
        margin-top: 145px;
        padding: 50px 0 40px;
        flex-direction: column;
        border-image:linear-gradient( #f0ebe4,#f0ebe4 ) fill 0 /1/  0 100vw;
    }
    .abt-shooting .shooting-point .block .img-point {
        position: absolute;
        top: -104px;
        left: 0;
        max-width: 155px;
        width: 47%;
        z-index: 1;
    }
    .abt-shooting .shooting-point .block .image {
        position: relative;
        width: 100%;
        padding-bottom: 65%;
    }
    .abt-shooting .shooting-point .image .img1 {
        max-width: 460px;
        width: 92%;
        top: min(-26%, -110px);
    }
    .abt-shooting .shooting-point .image .img2 {
        max-width: 265px;
        width: 52%;
        right: 0;
        top: 15%;
    }
    .abt-shooting .shooting-point .image .img3 {
        max-width: 214px;
        width: 38%;
        top: 40%;
        left: 3%;
    }
    .abt-shooting .shooting-point .block02 .image {
        padding-bottom: 50%;
    }
    .abt-shooting .shooting-point .block .content {
        padding-left: 0;
    }
    .abt-shooting .shooting-point .block .content .title {
        font-size: 1.5rem;
        font-weight: bold;
        text-align: center;
        margin-bottom: 10px;
    }
    .abt-shooting .shooting-environment {
        margin-bottom: 60px;
    }
    .abt-shooting .shooting-environment .block {
        flex-direction: column;
        padding: 0;
        position: relative;
    }
    .abt-shooting .shooting-environment .block .image {
        position: relative;
        width: 100%;
    }
    .abt-shooting .shooting-environment .img-abs {
        position: absolute;
    }
    .abt-shooting .shooting-environment .block .image .img1 {
        max-width: 460px;
        width: 92%;
    }
    .abt-shooting .shooting-environment .block .image .img2 {
        max-width: 265px;
        width: 53%;
        right: 0;
        bottom: 8%;
    }
    .abt-shooting .shooting-environment .block .content {
        width: 100%;
        padding: 8% 0;
    }
    .abt-shooting .shooting-environment .block .content .text01 {
        margin-bottom: 20px;
        font-size: 1.5rem;
    }
    .abt-shooting .shooting-environment .block01 .image .img1 {
        max-width: 100%;
        width: 100%;
        
    }
    .abt-shooting .shooting-environment .block02 {
        flex-direction: column;
    }
    .abt-shooting .shooting-environment .block02 .content {
        width: 100%;
        padding: 30px 0;
    }
    .abt-shooting .shooting-environment .block02 .image {
        padding-bottom: 23%;
    }
    .abt-shooting .shooting-environment .block02 .image .img2 {
        max-width: 265px;
        width: 45%;
        right: 0;
        bottom: inherit;
        top: 56%;
    }

    /* 店舗 プランへの取り組み */
    .efforts-wrap {
        padding-bottom: 40px;
    }
    .efforts .contents-page02 {
        padding: 0;
    }
    .efforts-block .block01 {
        max-width: 670px;
        margin: 0 auto 20px;
    }
    .efforts-block .block01.last {
        margin-bottom: 0;
    }
    .efforts-block .block01 .text01 {
        margin: 0 auto 20px;
        font-size: 1.5rem;
        line-height: 1.7;
    }
    .efforts-block .block01 .text02 {
        font-size: 1.3rem;
    }
    .efforts .photo-store {
        margin-bottom: 30px;
    }
    .efforts-block .block02 {
        flex-direction: column;
        padding-bottom: 0;
    }
    .efforts-block .block02 > div {
        width: 100%;
        position: relative;
    }
    .efforts-block .block02 .images {
        padding-bottom: 20px;
        display: flex;
        justify-content: space-between;
    }
    .efforts-block .block02 .img1 {
        max-width: 100%;
        width: 49%;
    }
    .efforts-block .block02 .img2 {
        max-width: 100%;
        width: 49%;
        position: static;
    }
    .efforts-block .block02 .content {
        padding-left: 0;
    }
    .efforts-block .block02 .content .btn-link {
        margin: 40px auto;
    }

    .efforts-block02 {
        max-width: 1440px;
        width: calc(100% - 40px);
        margin: 0 auto;
        flex-direction: column;
    }

    .efforts-block02 .box-img {
        margin: 0;
        max-width: 720px;
        padding-right: 0;
        padding-bottom: 11.5%;
        width: 100%;
    }
    .efforts-block02 .box-img {
        margin: 0;
        max-width: 100%;
        padding-right: 0;
        padding-bottom: 20px;
        width: 100%;
        position: relative;
    }
    .efforts-block02 .box-img .img1 {
        max-width: 100%;
        width: 100%;
    }
    .efforts-block02 .box-desc .img2 {
        width: 100%;
        margin: 15px auto;
    }
    .efforts-block02 .box-desc .img3 {
        width: 100%;
        margin: 15px auto;
    }
    .efforts-block02 .box-desc {
        width: 100%;
        margin-left: 0;
    }
    .efforts-block02 .box-desc .title {
        font-size: 1.5rem;
        margin-bottom: 20px;
    }

}

.contents-page .selected-contents .box-select a {
    letter-spacing: -.01em;
}
.store-detail .studio-block_pb .image {
    padding-bottom: 15%;
}
.store-detail .studio-block_pb .image .img2 {
    bottom: 0;
}


/* add20240910 dorekana */
.add_dorekana {
    position: relative;
    padding: 3% 2% 2% 3%;
}
.add_dorekana::after {
    content: '';
    position: absolute;
    bottom: -100px;
    top: 0;
    left: 0;
    width: 80.55%;
    display: block;
    background-color: #f0ebe4;
    z-index: -1;
}
.add_dorekana .block {
    max-width: 990px;
    padding: 35px 8%;
    margin: 0 auto;
    background-color: rgba(255,255,255,.7);
    box-shadow: 0 0 6px #ccc;
}
.add_dorekana .text01 {
    padding-bottom: 30px;
    font-size: 2rem;
    font-weight: bold;
    text-align: center;
}
.add_dorekana .row {
    display: flex;
    justify-content: center;
}
.add_dorekana .row .image {
    max-width: 300px;
}
.add_dorekana .row .content {
    width: fit-content;
    padding-left: 6%;
}
.add_dorekana .row .content p {
    font-size: 1.4rem;
    font-weight: 500;
    padding-bottom: 40px;
}

footer .footer_dorekana {
    max-width: 320px;
    width: fit-content;
    position: fixed;
    left: 30px;
    bottom: 2%;
    padding: 9px 16px;
    z-index: 999;
    display: none;
}
footer .footer_dorekana a {
    display: block;
}
footer .footer_dorekana .ic-close {
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    max-width: 26px;
}

@media (max-width: 768px) {
    .add_dorekana {
        padding: 7% 5% 6% 5%;
    }
    .add_dorekana .block {
        padding: 30px 6% 20px;
    }
    .add_dorekana .text01 {
        padding-bottom: 15px;
        font-size: 1.6rem;
        line-height: 2;
    }
    .add_dorekana .row {
        flex-direction: column;
    }
    .add_dorekana .row .image {
        width: 85%;
        margin: 0 auto 20px;
    }
    .add_dorekana .row .content {
        width: 100%;
        padding-left: 0;
    }
    .add_dorekana .row .content p {
        padding-bottom: 20px;
    }

    footer .footer_dorekana {
        left: 0;
        right: 0;
        margin: auto;
        bottom: 7%;
        padding: 10px;
    }
}

.dorekana-link-banner {
    max-width: 850px;
    width: 100%;
    margin: 0 auto 40px auto;
    }

.header-dorekana-link{
    width: 90%;
    margin: 10px auto;
}

.footer-forekana-link{
    margin-left: 260px;
    margin-top: -55px;
}

.footer-forekana-link a img{
    width: 210%;
    max-width: none;
}


/* add20240917 サイト内検索 */
.search_block {
    width: 100%;
    margin-bottom: 80px;
}
.search_block form {
    display: flex;
    align-items: center;
    overflow: hidden;
    border-radius: 10px;
    height: 70px;
}
.search_block button{
    background-color: transparent;
    border: none;
    cursor: pointer;
    outline: none;
    padding: 0;
    appearance: none;
    width: 80px;
    height: 70px;
    padding: 20px;
    background-color: #333;
}
.search_block button img {
    width: 20px;
}
.search_block input {
    width: calc(100% - 80px);;
    height: 70px;
    padding: 0 0 0 30px;
    border-radius: 10px 0 0 10px;
    border: 2px solid #333;
    font-size: 1.6rem;
}
.search_results > p {
    font-weight: bold;
    margin-bottom: 20px;
}
.search_results .results_list {
    border-top: 1px solid #ddd;
    padding-top: 0 !important;
}
.search_results .results_list .item {
    display: block;
    padding: 30px 0;
    border-bottom: 1px solid #ddd;
    text-decoration: none;
    transition: all .3s;
}
.search_results .results_list .item_title {
    margin-bottom: 10px;
    font-weight: bold;
    font-size: 1.6rem;
}
.search_results .results_list .item:hover {
    opacity: .7;
    color: #b39d72;
}
.search_results .pagenav {
	padding: 80px 0 0 !important;
	display: flex;
	align-items: center;
	justify-content: center;
}
.search_results .pagenav a {
    text-decoration: none;
}
.search_results .pagenav .current,
.search_results .pagenav a.number,
.search_results .pagenav a.arrow  {
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 0 10px;
    padding: 5px 10px;
    font-size: 1.2rem;
    font-weight: bold;
    width: 50px;
	height: 50px;
    background-color: #fff;
	color: #333;
    border-radius: 999px;
    border: 1px solid #333;
    transition: all .3s;
}
.search_results .pagenav a.arrow {
    border: 1px solid #333;
}
.search_results .pagenav a.arrow span {
    display: inline-block;
    margin: 0 5px;
}
.search_results .pagenav a.arrow.prev {
	margin-right: 15px; 
}
.search_results .pagenav a.arrow.next {
	margin-left: 15px; 
}
.search_results .pagenav a.arrow span {
    display: inline-block;
    width: 8px;
    height: 8px;
    margin: 0;
    transform: rotate(45deg);
}
.search_results .pagenav a.arrow.prev span {
    border-left: 2px solid #333;
    border-bottom: 2px solid #333;
}
.search_results .pagenav a.arrow.next span {
    border-top: 2px solid #333;
    border-right: 2px solid #333;
}
.search_results .pagenav a.arrow.prev:hover span {
    border-left: 2px solid #fff;
    border-bottom: 2px solid #fff;
}
.search_results .pagenav a.arrow.next:hover span {
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
}
.search_results .pagenav a.arrow.prev:hover,
.search_results .pagenav a.arrow.next:hover {
   opacity: .7;
}
.search_results .pagenav .current {
    background-color: #333;
    color: #fff;
}
.search_results .pagenav a.number:hover,
.search_results .pagenav a.arrow:hover {
    background-color: #333;
    color: #fff;
}

@media (max-width: 768px) {
    .search_block {
        width: calc(100% - 30px);
        margin: 0 auto 40px;
    }
    .search_block form {
        height: 60px;
    }
    .search_block button {
        width: 70px;
        height: 60px;
    }
    .search_block button img {
        width: 20px;
    }
    .search_block input {
        width: calc(100% - 70px);
        height: 60px;
        padding: 0 0 0 15px;
        font-size: 1.5rem;
    }

    .search_results {
        width: calc(100% - 20px);
        margin: 0 auto;
    }
    .search_results .pagenav {
        padding: 30px 0 0;
    }
    .search_results .pagenav .current,
    .search_results .pagenav a.number,
    .search_results .pagenav a.arrow {
        margin: 0 7px;
        padding: 5px 10px;
        font-size: 1.1rem;
        width: 48px;
        height: 48px;
    }
    .search_results .pagenav a.arrow.prev {
        margin-right: 10px;
    }
    .search_results .pagenav a.arrow.next {
        margin-left: 10px;
    }
}

header .search_block {
    width: fit-content;
    height: auto;
    margin: 0 10px;
}
header .search_block form {
    height: 100%;
    width: fit-content;
    justify-content: center;
}
header .search_block input {
    width: calc(100% - 40px);
    height: 40px;
    padding: 0 0 0 15px;
    font-size: 1.4rem;
}
header .search_block button {
    width: 40px;
    height: 40px;
    padding: 5px;
    border-radius: 0 10px 10px 0;
}
header .search_block button img {
    width: 13px;
}
@media (max-width: 1140px) {
    header .icon-menu {
        margin-top: 20px;
    }
    header .search_block {
        position: absolute;
        top: 15px;
        right: 60px;
        margin: 0 10px;
    }
    header .search_block input {
        width: calc(100% - 30px);
        height: 35px;
        padding: 0 0 0 15px;
        font-size: 1.4rem;
    }
    header .search_block button {
        width: 30px;
        height: 35px;
        padding: 5px;
        border-radius: 0 10px 10px 0;
    }
}
@media (max-width: 768px) {
    header .header_logo {
        text-align: left;
    }
    header .search_block {
        width: auto;
        margin: 0;
    }
    header .search_block form {
        justify-content: flex-end;
    }
    header .search_block input {
        width: calc(85% - 30px);
        height: 35px;
        padding: 0 0 0 15px;
        font-size: 1.4rem;
    }
    header .btn-bar {
        right: 13px;
    }

}

/* 20241015 佐野 */
.store-detail.sano .image01 {
    margin: 45px auto 80px;
}
.store-detail.sano .content_info .box-img {
    padding-top: 11.5%;
    padding-bottom: 0;
}
.store-detail.sano .content_info .box-img .img2 {
    right: 0;
    bottom: inherit;
    top: 0;
}
.store-detail.sano .about-shooting .img1 {
    display: block;
    margin-left: auto;
    position: relative;
    right: -2%;
}
.store-detail.sano .about-shooting .img2 {
    right: inherit;
    left: 0;
}
@media (max-width: 768px) {
    .store-detail.sano .image01 {
        margin: 25px auto;
    }
    .store-detail.sano .content_info .box-img {
        padding-top: 17.5%;
    }
    .store-detail.sano .about-shooting .img1 {
        right: 0;
    }
    .store-detail.sano .about-shooting .content {
        padding-top: 2% !important;
    }

    .contents-page .selected-contents .box-select a {
        padding-right: 5%;
    }
}

/* 20241022 小山 */
.store-detail.oyama .content_info {
    align-items: center;
}
.store-detail.oyama .studio-block .content .text01 {
    font-size: 1.9rem;
}
.abt-shooting.oyama .shooting-environment:not(:last-of-type) {
    margin-bottom: 190px;
}
@media (max-width: 768px) {
    .store-detail.oyama .studio-block .content .text01 {
        font-size: 1.5rem;
    }

    .abt-shooting.oyama .shooting-environment:not(:last-of-type) {
        margin-bottom: 90px;
    }
    .abt-shooting.oyama .shooting-environment:not(:last-of-type) {
        margin-bottom: 50px;
    }
}
/* 20241223 TOP 来年の七五三情報追加 */
.add_shichigosan_news {
    position: relative;
    padding: 0 2% 3%;
}
.add_shichigosan_news::after {
    content: '';
    position: absolute;
    bottom: -100px;
    top: 0;
    left: 0;
    width: 80.55%;
    display: block;
    background-color: #f0ebe4;
    z-index: -1;
}
.add_shichigosan_news .block {
    max-width: 990px;
    padding: 35px 8%;
    margin: 0 auto;
    background-color: rgba(255,255,255,.7);
    box-shadow: 0 0 6px #ccc;
}
.add_shichigosan_news .text01 {
    padding-bottom: 30px;
    font-size: 2rem;
    font-weight: bold;
    text-align: center;
}
.add_shichigosan_news .row {
    display: flex;
    justify-content: center;
}
.add_shichigosan_news .row .image {
    max-width: 300px;
    width: 100%;
}
.add_shichigosan_news .row .content {
    width: fit-content;
    padding-right: 3%;
}
.add_shichigosan_news .row .content p {
    font-size: 1.4rem;
    font-weight: 500;
    padding-bottom: 40px;
}
.add_shichigosan_news .row .content p span {
    font-size: 1.6rem;
    font-weight: 500;
    color: #B23D53;
}

@media (max-width: 768px) {
    .add_shichigosan_news {
        padding: 2% 5% 6%;
    }
    .add_shichigosan_news .block {
        padding: 30px 6% 20px;
    }
    .add_shichigosan_news .text01 {
        padding-bottom: 15px;
        font-size: 1.6rem;
        line-height: 2;
    }
    .add_shichigosan_news .row {
        flex-direction: column-reverse;
    }
    .add_shichigosan_news .row .image {
        width: 85%;
        margin: 0 auto 20px;
    }
    .add_shichigosan_news .row .content {
        width: 100%;
        padding-right: 0;
    }
    .add_shichigosan_news .row .content p {
        padding-bottom: 0;
    }
    .add_shichigosan_news .row .content p span {
        font-size: 1.4rem;
    }
}


/********************

20250115 七五三改修

********************/
.new_753 {
    line-height: 1.5;
}
.new_753 .contents-page {
    position: relative;
    height: auto;
}
.new_753 .contents-page .add_title {
    padding: 20px 0 35px;
    font-size: 2.4rem;
    font-family: 'Zen Old Mincho', serif;
    letter-spacing: 0.16em;
}
.zen_kaku {
    font-family: 'Zen Kaku Gothic Antique', sans-serif;
    font-weight: bold;
}

/***** キャンペーン情報 *****/
.new_753 .contents-page_list {
    display: flex;
    justify-content: space-between;
    position: relative;
    padding-bottom: 50px;
    margin-bottom: 65px;
}
.new_753 .contents-page::after {
    content: "";
    display: inline-block;
    width: 100%;
    height: 20%;
    background-color: #f0ebe4;
    position: absolute;
    left: 0;
    bottom: 33%;
    z-index: -1;
}
.new_753 .contents-page_list .item {
    width: 46%;
    padding: 30px;
    background-color: rgba(255,255,255,.9);
    box-shadow: 0 0 8px rgba(51,51,51,.2);
    line-height: 1.5;
}
.new_753 .contents-page_list .item_title {
    display: flex;
    align-items: center;
    justify-content: center;
    padding-bottom: 10px;
    font-size: 1.8rem;
}
.new_753 .contents-page_list .item_title::before,
.new_753 .contents-page_list .item_title::after {
    content: "";
    display: inline-block;
    width: 10px;
    height: 2px;
    margin: 0 10px;
    background-color: #333333;
}
.new_753 .contents-page_list .item_text01 {
    padding-bottom: 10px;
    font-size: 1.9rem;
    font-weight: bold;
    color: #b23d53;
}
.new_753 .contents-page_list .item_img {
    max-width: 300px;
    width: 100%;
    margin: 10px auto 15px;
}
.new_753 .contents-page_list .item_cont {
    line-height: 1.7;
    font-size: 1.4rem;
}
.new_753 .contents-page_list .item_cont .text02 {
    font-weight: bold;
}
.new_753 .contents-page_list .item_cont .text02 span {
   font-size: 1.8rem;
   color: #b23d53;
   border-bottom: 1px solid #b23d53
}
.new_753 .contents-page_list .item .btn-link {
    margin-top: 30px;
}

/***** 5つのこだわりポイント *****/
.new_753 .sec01 {
    padding-bottom: 100px;
}
.new_753 .sec01 .slider_outer {
    padding: 0 0 60px;
}
.new_753 .slider_753_01 .item {
    margin: 0 40px;
    text-align: center;
    position: relative;
}
.new_753 .slider_753_01 .item .content {
    background-color:rgba(255,255,255,.7);
    position: relative;
    bottom: 30px;
    padding: 15px 0 30px;
    box-shadow: 0 0 3px rgba(51,51,51,.2);
}
.new_753 .slider_753_01 .item .content .text01 {
    padding-bottom: 15px;
    font-size: 1.4rem;
    font-weight: bold;
    color: #b9777d;
    font-family: 'Zen Old Mincho', serif;
    line-height: 1;
}
.new_753 .slider_753_01 .item .content .text02 {
    padding-bottom: 15px;
    font-size: 1.8rem;
}
.new_753 .slider_753_01 .item .content .text03 {
    font-size: 1.4rem;
}
.new_753 .slider_753_01 .item .content .text01 span {
    display: block;
    font-size: 2.8rem;
}
.new_753 .slider_753_01 .item .content .btn-link {
    width: 150px;
    font-size: 1.5rem;
    padding: 5.5px;
    margin: 20px auto 0;
}

/* スライダー 矢印 */
.new_753 .slick-slider .slick-next {
    width: 40px;
    height: 40px;
    background: url('../imgs/plan/arr_next.png');
    background-size: 40px 40px;
}
.new_753 .slick-slider .slick-next:hover,
.new_753 .slick-slider .slick-prev:hover {
    opacity: 0.8;
}
.new_753 .slick-slider .slick-next::before,
.new_753 .slick-slider .slick-prev::before {
    content: '';
}
.new_753 .slick-slider .slick-prev {
    width: 40px;
    height: 40px;
    background: url('../imgs/plan/arr_prev.png');
    background-size: 40px 40px;
    z-index: 20;
}
.new_753 .slider_753_01 .slick-next {
    right: calc(50% - 14.5%);
}
.new_753 .slider_753_01 .slick-prev {
    left: calc(50% - 14.5%);
}


/* モーダルウィンドウ */
.modal_window {
    display: none;
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    max-width: 720px;
    width: 100%;
    max-height: 550px;
    height: auto;
    background-color: rgba(255,255,255,.9);
    z-index: 50;
    overflow-y: scroll;
}
.modal_window .inner {
    padding: 50px 10%;
}
.new_753 .modal_window .text01 {
    padding-bottom: 10px;
    font-size: 1.4rem;
    font-weight: bold;
    color: #b9777d;
    font-family: 'Zen Old Mincho', serif;
    line-height: 1;
    text-align: center;
}
.new_753 .modal_window .text01 span {
    display: block;
    font-size: 2.8rem;
}
.new_753 .modal_window .text02 {
    padding-bottom: 15px;
    font-size: 1.8rem;
    text-align: center;
}
.new_753 .modal_window .text03 {
    padding-bottom: 25px;
    font-size: 1.4rem;
    text-align: center;
}
.new_753 .modal_window .desc {
    font-size: 1.4rem;
    line-height: 2.4;
}
.new_753 .modal_window .desc p::before {
    content: "";
    display: inline-block;
    width: 10px;
    height: 10px;
    margin-right: 5px;
    border-radius: 999px;
    background-color: #b9777d;
}
.new_753 .modal_window .btn_close {
    width: 150px;
    padding: 5.5px;
    font-size: 1.5rem;
    margin: 30px auto 0;
}
.new_753 .modal_window .btn_close,
.new_753 .modal_window .btn_close:hover {
    background-image: none;
}
body.no_scroll {
    overflow: hidden;
}
/*  オーバーレイ */ 
.modal_over {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  background-color: rgba(0, 0, 0, 0.5);
  width: 100%;
  height: 100%;
  z-index: 40;
}


/***** 七五三ギャラリー *****/
.new_753 .sec02 {
    padding-bottom: 140px;
}
.new_753 .sec02 .container {
    width: calc(100% - 4%);
    max-width: 1440px;
    margin: 0 auto;
    position: relative;
}
.new_753 .sec02 .deco {
    position: absolute;
}
.new_753 .sec02 .deco01 {
    max-width: 240px;
    width: 18%;
    left: 8%;
    top: -80px;
}
.new_753 .sec02 .deco02 {
    max-width: 280px;
    width: 21%;
    left: 3%;
    top: 46%;
}
.new_753 .sec02 .deco03 {
    max-width: 254px;
    width: 19%;
    right: 0;
    top: 38%;
}
.new_753 .sec02 .deco04 {
    max-width: 316px;
    width: 23%;
    right: 4%;
    bottom: -60px;
}
.new_753 .sec02 .heading_box {
    max-width: 510px;
    margin: 0 auto;
    position: relative;
}
.new_753 .sec02 .heading {
    display: inline-block;
    width: 100%;
    padding: 90px 0;
    text-align: center;
    font-size: 2.5rem;
    letter-spacing: 0.16em;
}
.new_753 .sec02 .heading_box img {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
}
.new_753 .sec02 .box {
    max-width: 445px;
    margin: 0 auto;
}
.new_753 .sec02 .box .item {
    display: flex;
    margin-bottom: 25px;
    box-shadow: 0 0 10px rgba(51,51,51,.2);
}
.new_753 .sec02 .box .item .img {
    max-width: 185px;
    width: 100%;
}
.new_753 .sec02 .box .item .img img {
    object-fit: cover;
    width: 100%;
    height: 100%;
}
.new_753 .sec02 .box .item .content {
    flex: 1;
    padding: 25px 0;
    text-align: center;
    background-color: #fff;
    font-size: 1.6rem;
}
.new_753 .sec02 .box .item .btn-link {
    max-width: 205px;
    margin: 15px auto 0;
    padding: 5.5px;
    font-size: 1.5rem;
}

/***** 衣装のご紹介 *****/
.new_753 .sec03  {
    padding-bottom: 150px;
    position: relative;
}
.new_753 .sec03::before {
    content: "";
    display: inline-block;
    width: 100%;
    height: 20%;
    background-color: #f0ebe4;
    position: absolute;
    left: 0;
    bottom: 7%;
    z-index: -1;
}
.new_753 .sec03 .title-2 {
    margin-bottom: 20px;
}
.new_753 .sec03 .sec03_01 {
    display: flex;
    padding-bottom: 60px;
}
.new_753 .sec03 .sec03_01 .content {
    flex: 1;
    padding-right: 5%;
}
.new_753 .sec03 .sec03_01 .content .text01 {
    padding-bottom: 10px;
    /* font-family: 'Zen Kaku Gothic Antique', sans-serif; */
    font-size: 2rem;
    /* font-weight: bold; */
}
.new_753 .sec03 .sec03_01 .content .text02 {
    padding-bottom: 10px;
    font-size: 1.4rem;
    line-height: 2.4;
}
.new_753 .sec03 .sec03_01 .img {
    max-width: 410px;
    width: 42%;
}
.new_753 .sec03 .sec03_02 .heading_box {
    position: relative;
    width: fit-content;
    margin: 0 auto;
    padding: 50px 0;
    text-align: center;
}
.new_753 .sec03 .sec03_02 .heading_box img {
    display: block;
    max-width: 190px;
    position: absolute;
    top: -5px;
    left: -30%;
}
.new_753 .sec03 .sec03_02 .heading {
    font-size: 2.5rem;
    letter-spacing: 0.16em;
}
.new_753 .sec03 .sec03_02 .slider_block {
    display: flex;
    justify-content: space-between;
}
.new_753 .sec03 .sec03_02 .slider_block .box {
    width: 29%;
}
.new_753 .sec03 .sec03_02 .slider_block .box .title {
    font-size: 2rem;
    text-align: center;
    padding-bottom: 20px;
}
.new_753 .sec03 .sec03_02 .ranking_slider .slick-slide {
    position: relative;
}
.new_753 .sec03 .sec03_02 .ranking_slider .slick-slide .tag {
    position: absolute;
    top: 0;
    left: 0;
    padding: 2px 6px;
    font-size: 1.4rem;
    font-family: 'Zen Kaku Gothic Antique', sans-serif;
    background-color: #908db1;
    color: #fff;
}
.new_753 .sec03 .sec03_02 .ranking_slider .slick-slide .tag02 {
    background-color: #b9777d;
}
.new_753 .sec03 .sec03_02 .ranking_slider .slick-slide .tag03 {
    background-color: #586a14;
}
.new_753 .sec03 .sec03_02 .link {
    display: block;
    width: 85%;
    margin: 15px auto 0;
    padding: 10px 3px;
    font-size: 1.3rem;
    border-top: 1.5px solid #333;
    border-bottom: 1.5px solid #333;
    position: relative;
    transition: all .3s;
}
.new_753 .sec03 .sec03_02 .link::after {
    content: "";
    display: block;
    width: 6px;
    height: 6px;
    position: absolute;
    top: 0;
    bottom: 0;
    right: 10px;
    margin: auto 0;
    border-top: 1px solid #333;
    border-right: 1px solid #333;
    transform: rotate(45deg);
}
.new_753 .sec03 .sec03_02 .link:hover {
    background-color: #333;
    color: #fff;
}
.new_753 .sec03 .sec03_02 .link:hover::after {
    border-color: #fff;
}

/***** 料金プラン *****/
.new_753 .sec04 {}
.new_753 .sec04_01 {
    margin-top: 100px;
    background-color: #f8f6f3;
    position: relative;
    padding: 0 0 80px;
}

/* タブ切り替え */
.tab-area {
    display: flex;
    cursor: pointer;
    max-width: 570px;
    width: 100%;
    margin: 0 auto;
    position: absolute;
    bottom: 100%;
    right: 0;
    left: 0;
}
.tab {
    display: flex;
    justify-content: center;
    align-items: center;
    width: calc(100%/2);
    margin: 0 5px;
    padding: 10px;
    background-color: #333;
    color: #fff;
    border-radius: 8px 8px 0 0;
    text-align: center;
    font-size: 1.5rem;
    font-family: 'Zen Kaku Gothic Antique', sans-serif;
}
.tab.active {
    background-color: #f8f6f3;
    color: #333;
}
.panel {
    display: none;
    width: 100%;
    margin: 0 auto;
    padding: 40px 0;
}
.panel.active {
    display: block;
}
.panel_heading {
    font-size: 2.5rem;
    text-align: center;
}
.plan_753 .row {
    display: flex;
    justify-content: space-between;
    padding: 50px 0;
}
.plan_753 .box {
    width: 47%;
    position: relative;

    display: flex;
    flex-direction: column;
}
.plan_753 .box .img {
    display: block;
    box-shadow: 0 0 10px rgba(51, 51, 51, .2);
}
.plan_753 .box .content_title {
    padding: 10px;
    font-size: 2rem;
    border-bottom: 1px solid #999;
    color: #3b3c4d;
    background-color: #fff;
}
.plan_753 .box .content_title .text {
    font-size: 2.4rem;
}
.plan_753 .box .content_title .icon {
    display: inline-block;
    width: 24px;
    margin-right: 5px;
    vertical-align: -1px;
}
.plan_753 .box .content_title._02 .icon {
    width: 28px;
}
.plan_753 .box .content_title .icon img {
    display: block;
}
.plan_753 .box .drop_btn {
    position: relative;
    padding: 20px 40px;
    z-index: 1;
    box-shadow: 0 0 10px rgba(51, 51, 51, .2);
    font-weight: bold;
    /* cursor: pointer; */
}
.plan_753 .box .drop_btn::after {
    content: none;
    display: block;
    width: 10px;
    height: 10px;
    position: absolute;
    top: 0;
    bottom: 0;
    right: 10%;
    margin: auto 0;
    border-top: 1px solid #333;
    border-right: 1px solid #333;
    /* transform: rotate(-45deg); */
    transform: rotate(135deg);
}
.plan_753 .box .content {
    display: flex;
    flex-direction: column;
    flex-grow: 1;
}
.plan_753 .box .content_in {
    position: relative;
    padding: 0 40px 40px;
    background-color: #fff;
    box-shadow: 0 5px 10px rgba(51, 51, 51, .2);
    z-index: 10;
    /* display: flex; */
    /* flex-direction: column; */
    flex-grow: 1;
}
.plan_753 .box .content_in .dl {
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 15px;
}
.plan_753 .box .content_in .dl dt,
.plan_753 .box .content_in .dl dd {
    padding: 15px 0;
    border-bottom: 1px solid #999;
}
.plan_753 .box .content_in .dl dt {
    width: 28%;
    text-align: center;
    font-family: 'Zen Kaku Gothic Antique', sans-serif;
    font-weight: bold;
    font-size: 1.8rem;
}
.plan_753 .box .content_in .dl dt span {
    display: inline-block;
    margin: 0 2px;
    padding: 0 5px;
    line-height: 1.3;
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 500;
    font-size: 1.4rem;
    background-color: #333;
    color: #fff;
}
.plan_753 .box .content_in .dl dd {
    width: 72%;
    padding-left: 7%;
    font-size: 1.4rem;
    display: flex;
    flex-direction: column;
    justify-content: center;
}
.plan_753 .box .content_in .dl dd p {
    font-weight: bold;
}
.plan_753 .box .content_in .dl dd p span {
    font-size: 2rem;
    font-weight: bold;
}
.plan_753 .box .content_in .dl02 dt {
    width: 50%;
    text-align: left;
    font-family: "Noto Sans JP", sans-serif;
    font-weight: bold;
    font-size: 1.4rem;
}
.plan_753 .box .content_in .dl02 dt p {
    font-family: 'Zen Kaku Gothic Antique', sans-serif;
    font-weight: bold;
    font-size: 1.8rem;
}
.plan_753 .box .content_in .dl02 dd {
    width: 50%;
    font-size: 1.8rem;
}
.plan_753 .box .content_in .items {
    padding: 10px 20px;
    font-size: 1.4rem;
    color: #655f54;
    background-color: #f8f6f3;
}
.plan_753 .box .content_in .symbol {
    width: 20px;
    height: 20px;
    margin: 25px auto;
    position: relative;
}
.plan_753 .box .content_in .symbol::before,
.plan_753 .box .content_in .symbol::after {
    content: "";
    display: inline-block;
    width: 100%;
    height: 2px;
    background-color: #333;
    position: absolute;
}
.plan_753 .box .content_in .symbol::before {
    top: 0;
    bottom: 0;
    margin: auto 0;
}
.plan_753 .box .content_in .symbol::after {
    top: 0;
    bottom: 0;
    margin: auto 0;
    transform: rotate(90deg);
}
.plan_753 .box .content_in .note {
    padding: 10px 0 0;
    font-size: 1.3rem;
}
.new_753 .sec04_01_01 {
    padding: 50px 0;
}
.new_753 .sec04_01_01 .block_title {
    font-size: 2.5rem;
    text-align: center;
    padding-bottom: 30px;
}
.new_753 .sec04_01_01 .block_title span {
    color: #b23d53;
}
.new_753 .sec04_01_01 .list {
    display: flex;
    flex-wrap: wrap;
    gap: 0.333333%;
}
.new_753 .sec04_01_01 .list .item {
    width: 33%;
    margin-bottom: 3px;
    padding: 40px 15px 30px;
    background-color: #fff;
}
.new_753 .sec04_01_01 .list .item .text01 {
    text-align: center;
    font-size: 2rem;
    padding-bottom: 15px;
}
.new_753 .sec04_01_01 .list .item .icon {
    width: 45%;
    margin: 0 auto 25px;
}
.new_753 .sec04_01_01 .list .item .icon img {
    display: block;
}
.new_753 .sec04_01_01 .list .item .text02 {
    padding-bottom: 20px;
    font-size: 1.4rem;
    line-height: 1.7;
    letter-spacing: .02em;
}
.new_753 .sec04_01_01 .list .item .text02 span {
    font-size: 1.7rem;
    color: #b23d53;
}
.new_753 .sec04_01_01 .list .item .text02 span.span02 {
    font-size: 1.4rem;
}
.new_753 .sec04_01_01 .list .item .note {
    font-size: 1.3rem;
    line-height: 1.7;
}
.new_753 .sec04_01_01 .memo {
    padding-top: 10px;
    font-size: 1.3rem;
}
.new_753 .sec04_01_02 {
    padding: 0 0 70px;
}
.new_753 .sec04_01_02 .heading_box {
    position: relative;
    width: fit-content;
    margin: 0 auto;
    padding: 50px 0;
    text-align: center;
}
.new_753 .sec04_01_02 .heading {
    padding-bottom: 20px;
    font-size: 2.5rem;
    letter-spacing: 0.16em;
}
.new_753 .sec04_01_02 .heading_box img {
    display: block;
    max-width: 240px;
    position: absolute;
    top: -10px;
    left: -20%;
}
.new_753 .sec04_01_02 .heading_box p {
    line-height: 2;
    letter-spacing: .05em;
}
.new_753 .sec04_01_02 .list {
    display: flex;
    flex-wrap: wrap;
    gap: 0.333333%;
    height: auto;
}
.new_753 .sec04_01_02 .list .item {
    width: 33%;
    margin-bottom: 3px;
    background-color: #fff;
    height:auto;
    display: flex;
    flex-direction: column;
}
.new_753 .sec04_01_02 .list .item_in {
    padding: 10px 15px 30px;
}
.new_753 .sec04_01_02 .list .item .label {
    width: fit-content;
    margin: 0 auto 10px;
    padding: 0 20px;
    font-size: 1.4rem;
    border-radius: 999px;
    border: 1px solid #333;
}
.new_753 .sec04_01_02 .list .item .text01 {
    font-size: 1.8rem;
    line-height: 1.5;
    min-height: 105px;
    letter-spacing: .05em;
}
.new_753 .sec04_01_02 .list .item .text01 span {
    display: block;
    font-size: 1.6rem;
    letter-spacing: .02em;
}
.new_753 .sec04_01_02 .list .item .ribon {
    margin: 10px auto;
    padding: 2px;
    font-size: 1.4rem;
    text-align: center;
    color: #fff;
    background-color: #b23d53;
}
.new_753 .sec04_01_02 .list .item .ribon._02 {
    background-color: #333;
}
.new_753 .sec04_01_02 .list .item .text02 {
    font-size: 1.4rem;
    line-height: 1.9;
    min-height: 115px;
}
.new_753 .sec04_01_02 .list .item .text02 span {
    font-size: 1.8rem;
    font-weight: bold;
    color: #b23d53;
}
.new_753 .sec04_01_02 .list .item .text03 {
    font-size: 1.4rem;
    line-height: 1.9;
}
.new_753 .sec04_01_02 .list .item .text03 span {
    font-size: 1.8rem;
    font-weight: bold;
    color: #b23d53;
}
.new_753 .sec04_01_03 {
    max-width: 850px;
    margin: 0 auto;
    padding: 30px 3% 50px;
    background-color: #fff;
    box-shadow: 0 0 8px rgba(51, 51, 51, .2);
}
.new_753 .sec04_01_03 .box {
    width: 100%;
}
.new_753 .sec04_01_03 .box:nth-of-type(1) {
    padding-bottom: 35px;
    border-bottom: 1px solid #c2c2c2;
}
.new_753 .sec04_01_03 .box:nth-of-type(2) {
    padding-top: 35px;
}
.new_753 .sec04_01_03 .box .title {
    padding-bottom: 25px;
    font-size: 2rem;
    text-align: center;
}
.new_753 .sec04_01_03 .box .title span {
    display: block;
    font-size: 1.3rem;
    font-family: "Noto Sans JP", sans-serif;
    color: #b39d72;
}
.new_753 .sec04_01_03 .box .text {
    font-size: 1.4rem;
    line-height: 1.7;
}
.new_753 .sec04_01_03 .box .text span {
    font-size: 1.7rem;
    font-weight: bold;
}
.new_753 .sec04_01_03 .box .note {
    font-size: 1.3rem;
    padding-top: 10px;
    line-height: 1.7;
}
.new_753 .sec04_01_03 .box .note span {
    color: #b23d53;
}
.new_753 .sec04_02 {
    padding: 80px ;
}
.new_753 .sec04_02_in {
    max-width: 850px;
    margin: 0 auto;
    padding: 40px;
    box-shadow: 0 0 8px rgba(51, 51, 51, .2);
}
.new_753 .sec04_02 .text {
    padding: 45px 0 30px;
    font-size: 1.4rem;
    text-align: center;
}

/***** 七五三 商品紹介 *****/
.new_753 .sec05 {
    background-image: url(../imgs/plan/753_new/sec05_bg.jpg);
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
}
.new_753 .sec05_in {
    max-width: 590px;
    width: 100%;
    margin: 0 auto;
    padding: 50px 45px;
    background-color: rgba(255,255,255,.9);
}
.new_753 .sec05 .heading_box {
    position: relative;
    width: fit-content;
    margin: 0 auto;
    padding: 50px 0 30px;
    text-align: center;
}
.new_753 .sec05 .heading {
    font-size: 2.5rem;
    letter-spacing: 0.16em;
}
.new_753 .sec05 .heading_box img {
    display: block;
    max-width: 130px;
    position: absolute;
    top: -15px;
    left: -25%;
}
.new_753 .sec05 p {
    font-size: 1.4rem;
    text-align: center;
    line-height: 2.1;
    letter-spacing: .01em;
}
.new_753 .sec05 .btn-link {
    margin: 30px auto;
}

/***** ご利用の流れ *****/
.new_753 .sec06 {
    padding: 80px 0 100px;
}
.new_753 .sec06 .slider_outer {
    padding: 50px 0;
}
.new_753 .sec06 .slider_753_02 .slick-track {
    display: flex;
}
.new_753 .sec06 .slider_753_02 .slick-slide {
    height: auto !important;
  }
.new_753 .sec06 .slider_753_02 .item {
    background-color: rgba(255, 255, 255, .7);
    padding: 30px 20px;
    margin: 10px 40px;
    box-shadow: 0 0 3px rgba(51, 51, 51, .2);
}
.new_753 .sec06 .slider_753_02 .item_top {
    display: flex;
}
.new_753 .sec06 .slider_753_02 .item_top .img {
    width: 70px;
}
.new_753 .sec06 .slider_753_02 .item_top .img img {
    display: block;
}
.new_753 .sec06 .slider_753_02 .item_top .heading {
    flex: 1;
    padding-left: 10px;
}
.new_753 .sec06 .slider_753_02 .item_top .heading .text01 {
    font-family: 'Zen Old Mincho', serif;
    font-size: 1.6rem;
    font-weight: bold;
    color: #b39d72;
    border-bottom: 1px solid #b39d72;
}
.new_753 .sec06 .slider_753_02 .item_top .heading .text02 {
    font-size: 2rem;
}
.new_753 .sec06 .slider_753_02 .content {
    padding: 10px 0;
    font-size: 1.3rem;
    line-height: 1.8;
}
.new_753 .sec06 .slider_753_02 .content span {
    color: #b23d53;
}
.new_753 .slider_753_02 .slick-next {
    right: calc(50% - 15%);
}
.new_753 .slider_753_02 .slick-prev {
    left: calc(50% - 15%);
}
.new_753 .sec06_in {
    max-width: 730px;
    margin: 0 auto;
    padding: 30px 20px 15px;
    background-color: #f8f6f3;
}
.new_753 .sec06_in > div {
    display: flex;
    padding-bottom: 15px;
}
.new_753 .sec06_in > div::before {
    content: "";
    display: block;
    width: 15px;
    height: 1.5px;
    margin: 12px 0 0;
    background-color: #333;
}
.new_753 .sec06_in p {
    flex: 1;
    padding-left: 5px;
    line-height: 2;
}
.new_753 .sec06_in p span {
    display: block;
    font-weight: bold;
}

/***** 予約会・見学予約のご案内 ******/
.new_753 .sec07 {
    padding: 75px 0;
    background: url(../imgs/about/bg-about.jpg);
    background-repeat: no-repeat;
    background-size: cover;
}
.new_753 .sec07 .title {
    padding: 0 0 30px;
    font-size: 3rem;
    text-align: center;
}
.new_753 .sec07_in {
    display: flex;
    justify-content: space-between;
}
.new_753 .sec07_in .content {
    flex: 1;
    padding-right: 5%;
    font-size: 1.4rem;
    line-height: 2.2;
    letter-spacing: .01em;
}
.new_753 .sec07_in .content span {
    color:#b23d53;
    font-weight: bold;
}
.new_753 .sec07_in .img {
    max-width: 410px;
    width: 40%;
}

/***** Q&A ******/
.new_753 .sec08 {
    padding: 100px 0;
}
.new_753 .sec08_in {
    max-width: 700px;
    padding: 50px 0 0;
    margin: 0 auto;
    color: #655f54;
}
.new_753 .sec08_in .item {
    margin-bottom: 20px;
}
.new_753 .sec08_in .q {
    padding: 10px;
    font-size: 1.3rem;
    font-weight: bold;
    color: #655f54;
    background-color: #f0ebe4;
    position: relative;
    cursor: pointer;
}
.new_753 .sec08_in .q span {
    display: block;
    width: 10px;
    height: 10px;
    position: absolute;
    top: 0;
    bottom: 0;
    right: 20px;
    margin: auto 0;
}
.new_753 .sec08_in .q span::before,
.new_753 .sec08_in .q span::after {
    content: "";
    display: inline-block;
    width: 100%;
    height: 1.5px;
    background-color: #655f54;
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto 0;
    transition: all .3s;
}
.new_753 .sec08_in .q span::after {
    transform: rotate(90deg);
}
.new_753 .sec08_in .q.open span::after {
    transform: rotate(0deg);
}
.new_753 .sec08_in .a {
    display: none;
    padding: 20px 20px 10px;
    font-size: 1.3rem;
}

@media (max-width: 1000px) {
    .new_753 .slider_753_01 .slick-next {
        right: calc(50% - 43%);
    }
    .new_753 .slider_753_01 .slick-prev {
        left: calc(50% - 43%);
    }

    .new_753 .slider_753_02 .slick-next {
        right: calc(50% - 42.2%);
    }
    .new_753 .slider_753_02 .slick-prev {
        left: calc(50% - 42.2%);
    }
    .new_753 .sec06 .slider_753_02 .item {
        margin: 10px 30px;
    }
}
@media screen and (max-width: 768px) {

    .new_753 .contents-page .add_title {
        padding: 15px 0 30px;
        font-size: 2rem;
    }

    /***** キャンペーン情報 *****/
    .new_753 .contents-page_list {
        flex-direction: column;
        padding-bottom: 50px;
        margin-bottom: 50px;
    }
    .new_753 .contents-page::after {
        width: 100%;
        height: 18%;
        bottom: 26%;
    }
    .new_753 .contents-page_list .item {
        width: 100%;
        margin-bottom: 20px;
        padding: 20px;
    }
    .new_753 .contents-page_list .item_title {
        font-size: 1.5rem;
    }
    .new_753 .contents-page_list .item_text01 {
        padding-bottom: 10px;
        font-size: 1.6rem;
    }
    .new_753 .contents-page_list .item_img {
        max-width: 260px;
        width: 100%;
        margin: 10px auto 15px;
    }
    .new_753 .contents-page_list .item_cont {
        line-height: 1.7;
        font-size: 1.4rem;
    }
    .new_753 .contents-page_list .item_cont .text02 span {
       font-size: 1.8rem;
    }
    .new_753 .contents-page_list .item .btn-link {
        margin: 20px auto 0;
        font-size: 1.5rem;
    }
    
    /***** 5つのこだわりポイント *****/
    .new_753 .sec01 {
        padding-bottom: 60px;
    }
    .new_753 .sec01 .slider_outer {
        padding: 0 0 60px;
    }
    .new_753 .slider_753_01 .item {
        margin: 0 10px;
    }
    .new_753 .slider_753_01 .item .content {
        bottom: 30px;
        padding: 15px 0 30px;
    }
    .new_753 .slider_753_01 .item .content .text01 {
        padding-bottom: 15px;
        font-size: 1.4rem;
        line-height: 1;
    }
    .new_753 .slider_753_01 .item .content .text02 {
        padding-bottom: 15px;
        font-size: 1.8rem;
    }
    .new_753 .slider_753_01 .item .content .text03 {
        font-size: 1.4rem;
    }
    .new_753 .slider_753_01 .item .content .text01 span {
        display: block;
        font-size: 2.8rem;
    }
    .new_753 .slider_753_01 .item .content .btn-link {
        width: 150px;
        font-size: 1.5rem;
        padding: 5.5px;
        margin: 20px auto 0;
    }
    
    /* スライダー 矢印 */
    .new_753 .slick-slider .slick-next {
        width: 35px;
        height: 35px;
        background: url('../imgs/plan/arr_next.png');
        background-size: 35px 35px;
    }
    .new_753 .slick-slider .slick-prev {
        width: 35px;
        height: 35px;
        background: url('../imgs/plan/arr_prev.png');
        background-size: 35px 35px;
        z-index: 20;
    }
    .new_753 .slider_753_01 .slick-next {
        right: calc(50% - 43%);
    }
    .new_753 .slider_753_01 .slick-prev {
        left: calc(50% - 43%);
    }
    
    /* モーダルウィンドウ */
    .modal_window {
        width: 90%;
    }
    .modal_window .inner {
        padding: 40px 7%;
    }
    .new_753 .modal_window .text01 {
        padding-bottom: 10px;
        font-size: 1.4rem;
    }
    .new_753 .modal_window .text01 span {
        display: block;
        font-size: 2.8rem;
    }
    .new_753 .modal_window .text02 {
        padding-bottom: 15px;
        font-size: 1.8rem;
        text-align: center;
    }
    .new_753 .modal_window .text03 {
        padding-bottom: 25px;
        font-size: 1.4rem;
        text-align: center;
    }
    .new_753 .modal_window .desc {
        font-size: 1.4rem;
        line-height: 2.4;
    }
    .new_753 .modal_window .desc p::before {
        content: "";
        display: inline-block;
        width: 10px;
        height: 10px;
        margin-right: 5px;
        border-radius: 999px;
        background-color: #b9777d;
    }
    .new_753 .modal_window .btn_close {
        width: 150px;
        padding: 5.5px;
        font-size: 1.5rem;
        margin: 30px auto 0;
    }
    .new_753 .modal_window .btn_close,
    .new_753 .modal_window .btn_close:hover {
        background-image: none;
    }
    
    /***** 七五三ギャラリー *****/
    .new_753 .sec02 {
        padding-bottom: 140px;
    }
    .new_753 .sec02 .container {
        width: calc(100% - 4%);
        max-width: 1440px;
        margin: 0 auto;
        position: relative;
    }
   .new_753 .sec02 .deco01 {
        display: none;
    }
    .new_753 .sec02 .deco02 {
        max-width: 280px;
        width: 35%;
        left: 3%;
        top: -100px;
    }
    .new_753 .sec02 .deco03 {
        width: 30%;
        right: 20px;
        top: inherit;
        bottom: -100px;
    }
    .new_753 .sec02 .deco04 {
        display: none;
    }
    .new_753 .sec02 .heading {
        width: 100%;
        padding: 50px 0;
        font-size: 2rem;
    }
    .new_753 .sec02 .box .item {
        margin-bottom: 20px;
    }
    .new_753 .sec02 .box .item .img {
        max-width: 185px;
        width: 45%;
    }
    .new_753 .sec02 .box .item .content {
        padding: 20px 0;
        font-size: 1.6rem;
    }
    .new_753 .sec02 .box .item .btn-link {
        width: 90%;
        margin: 15px auto 0;
        padding: 5px;
        font-size: 1.3rem;
        background-position: center right 8px;
    }
    
    /***** 衣装のご紹介 *****/
    .new_753 .sec03  {
        padding-bottom: 80px;
    }
    .new_753 .sec03::before {
        height: 47%;
        bottom: 3%;
    }
    .new_753 .sec03 .title-2 {
        margin-bottom: 20px;
    }
    .new_753 .sec03 .sec03_01 {
        flex-direction: column;
        padding-bottom: 60px;
    }
    .new_753 .sec03 .sec03_01 .content {
        padding-right: 0;
    }
    .new_753 .sec03 .sec03_01 .content .text01 {
        padding-bottom: 10px;
        font-size: 2rem;
    }
    .new_753 .sec03 .sec03_01 .content .text02 {
        padding-bottom: 10px;
        font-size: 1.3rem;
        line-height: 2.4;
    }
    .new_753 .sec03 .sec03_01 .img {
        max-width: 100%;
        width: 100%;
        margin: 0 auto;
    }
    .new_753 .sec03 .sec03_02 .heading_box {
        padding: 50px 0;
    }
    .new_753 .sec03 .sec03_02 .heading_box img {
        top: -8px;
        left: -30%;
    }
    .new_753 .sec03 .sec03_02 .heading {
        font-size: 2rem;
        letter-spacing: 0.16em;
    }
    .new_753 .sec03 .sec03_02 .slider_block {
        flex-direction: column;
        width: 100vw;
        margin: 0 calc(50% - 50vw);
    }
    .new_753 .ranking_slider .slick-next {
        right: calc(50% - 43%);
    }
    .new_753 .ranking_slider .slick-prev {
        left: calc(50% - 43%);
    }
    .new_753 .sec03 .sec03_02 .slider_block .box {
        width: 100%;
        padding: 0;
        margin-bottom: 30px;
    }
    .new_753 .sec03 .sec03_02 .slider_block .box .title {
        font-size: 1.8rem;
        padding-bottom: 10px;
    }
    .new_753 .sec03 .sec03_02 .ranking_slider .slick-slide {
        margin: 0 5px;
    }
    .new_753 .sec03 .sec03_02 .ranking_slider .slick-slide .tag {
        padding: 2px 6px;
        font-size: 1.2rem;
    }


    /***** 料金プラン *****/
    .new_753 .sec04_01 {
        margin-top: 100px;
        position: relative;
        padding: 0 0 50px;
    }
    
    /* タブ切り替え */
    .tab-area {
        display: flex;
        cursor: pointer;
        max-width: 570px;
        width: 100%;
        margin: 0 auto;
        position: absolute;
        bottom: 100%;
        right: 0;
        left: 0;
    }
    .tab {
        margin: 0 5px;
        padding: 6px;
        font-size: 1.3rem;
    }
    .panel {
        padding: 40px 0;
    }
    .panel_heading {
        font-size: 2rem;
    }
    .plan_753 .row {
        flex-direction: column;
        padding: 30px 15px;
    }
    .plan_753 .box {
        width: 100%;
        margin-bottom: 20px;
    
        display: flex;
        flex-direction: column;
    }
    .plan_753 .box .img {
        display: block;
        box-shadow: 0 0 10px rgba(51, 51, 51, .2);
    }
    .plan_753 .box .content_title {
        padding: 10px;
        font-size: 1.6rem;
    }
    .plan_753 .box .content_title .text {
        font-size: 1.9rem;
    }
    .plan_753 .box .content_title .icon {
        width: 20px;
        margin-right: 5px;
    }
    .plan_753 .box .content_title._02 .icon {
        width: 28px;
    }
    .plan_753 .box .drop_btn {
        padding: 20px;
    }
    .plan_753 .box .drop_btn::after {
        content: "";
    }
    .plan_753 .box .drop_btn.open::after {
        transform: rotate(-45deg);
    }
    .plan_753 .box .content_in {
        padding: 10px 20px 40px;
        display: none;
    }
    .plan_753 .box .content_in .dl {
        margin-bottom: 15px;
    }
    .plan_753 .box .content_in .dl dt,
    .plan_753 .box .content_in .dl dd {
        padding: 15px 0;
    }
    .plan_753 .box .content_in .dl dt {
        width: 28%;
        font-size: 1.5rem;
    }
    .plan_753 .box .content_in .dl dt span {
        margin: 0 2px;
        padding: 2px 5px;
        font-size: 1.2rem;
    }
    .plan_753 .box .content_in .dl dd {
        width: 72%;
        padding-left: 5%;
        font-size: 1.4rem;
    }
    .plan_753 .box .content_in .dl dd p span {
        font-size: 2rem;
    }
    .plan_753 .box .content_in .dl02 dt {
        width: 52%;
        font-size: 1.3rem;
    }
    .plan_753 .box .content_in .dl02 dt p {
        font-size: 1.6rem;
    }
    .plan_753 .box .content_in .dl02 dd {
        width: 48%;
        font-size: 1.6rem;
    }
    .plan_753 .box .content_in .items {
        padding: 10px 20px;
        font-size: 1.2rem;
    }
    .plan_753 .box .content_in .symbol {
        width: 15px;
        height: 15px;
        margin: 20px auto 15px;
    }
    .plan_753 .box .content_in .note {
        padding: 10px 0 0;
        font-size: 1.1rem;
    }
    .new_753 .sec04_01_01 {
        padding: 30px 0;
    }
    .new_753 .sec04_01_01 .block_title {
        font-size: 2rem;
        text-align: center;
        padding-bottom: 30px;
    }
    .new_753 .sec04_01_01 .sp_scroll {
        overflow: scroll;
        width: 100vw;
        margin: 0 calc(50% - 50vw);
    }
    .new_753 .sec04_01_01 .list {
        display: flex;
        flex-wrap: nowrap;
        gap: 1%;
        width: 900px;
        padding: 0 20px;
    }
    .new_753 .sec04_01_01 .list .item {
        width: 33%;
        margin-bottom: 3px;
        padding: 20px 10px;
    }
    .new_753 .sec04_01_01 .list .item .text01 {
        font-size: 1.8rem;
        padding-bottom: 15px;
    }
    .new_753 .sec04_01_01 .list .item .icon {
        width: 40%;
        margin: 10px auto;
    }
    .new_753 .sec04_01_01 .list .item .text02 {
        padding-bottom: 15px;
        font-size: 1.4rem;
    }
    .new_753 .sec04_01_01 .list .item .text02 span {
        font-size: 1.5rem;
    }
    .new_753 .sec04_01_01 .list .item .text02 span.span02 {
        font-size: 1.4rem;
    }
    .new_753 .sec04_01_01 .list .item .note {
        font-size: 1.3rem;
    }
    .new_753 .sec04_01_01 .memo {
        padding-top: 10px;
        font-size: 1.1rem;
    }
    .new_753 .panel02 .sec04_01_01 .list {
        width: 1510px;
        padding: 0 20px;
    }

    .new_753 .sec04_01_02 {
        padding: 0 0 70px;
    }
    .new_753 .sec04_01_02 .heading_box {
        position: relative;
        width: fit-content;
        margin: 0 auto;
        padding: 50px 0 30px;
        text-align: center;
    }
    .new_753 .sec04_01_02 .heading {
        padding-bottom: 20px;
        font-size: 2rem;
        letter-spacing: 0.16em;
    }
    .new_753 .sec04_01_02 .heading_box img {
        max-width: 200px;
        top: -10px;
        left: 0px;
    }
    .new_753 .sec04_01_02 .heading_box p {
        line-height: 2;
        letter-spacing: .05em;
    }
    .new_753 .sec04_01_02 .sp_scroll {
        overflow: scroll;
        width: 100vw;
        margin: 0 calc(50% - 50vw);
    }
    .new_753 .sec04_01_02 .list {
        flex-wrap: nowrap;
        gap: 1%;
        width: 900px;
        padding: 0 20px;
    }
    .new_753 .sec04_01_02 .list .item {
        width: 33%;
        margin-bottom: 3px;
        flex-direction: column;
    }
    .new_753 .sec04_01_02 .list .item_in {
        padding: 10px 15px 30px;
    }
    .new_753 .sec04_01_02 .list .item .label {
        margin: 0 auto 10px;
        padding: 0 20px;
        font-size: 1.2rem;
    }
    .new_753 .sec04_01_02 .list .item .text01 {
        font-size: 1.5rem;
        line-height: 1.5;
        min-height: 100px;
    }
    .new_753 .sec04_01_02 .list .item .text01 span {
        font-size: 1.4rem;
    }
    .new_753 .sec04_01_02 .list .item .ribon {
        margin: 10px auto;
        font-size: 1.4rem;
    }
    .new_753 .sec04_01_02 .list .item .text02 {
        font-size: 1.3rem;
        line-height: 1.7;
        min-height: 100px;
    }
    .new_753 .sec04_01_02 .list .item .text02 span {
        font-size: 1.6rem;
    }
    .new_753 .sec04_01_02 .list .item .text03 {
        font-size: 1.3rem;
        line-height: 1.7;
    }
    .new_753 .sec04_01_02 .list .item .text03 span {
        font-size: 1.6rem;
    }
    .new_753 .sec04_01_03 {
        width: calc(100% - 40px);
        padding: 30px 5%;
    }
    .new_753 .sec04_01_03 .box {
        width: 100%;
    }
    .new_753 .sec04_01_03 .box:nth-of-type(1) {
        padding-bottom: 35px;
        border-bottom: 1px solid #c2c2c2;
    }
    .new_753 .sec04_01_03 .box:nth-of-type(2) {
        padding-top: 35px;
    }
    .new_753 .sec04_01_03 .box .title {
        padding-bottom: 20px;
        font-size: 1.7rem;
    }
    .new_753 .sec04_01_03 .box .title span {
        font-size: 1.3rem;
        font-family: "Noto Sans JP", sans-serif;
        color: #b39d72;
    }
    .new_753 .sec04_01_03 .box .text {
        font-size: 1.4rem;
        line-height: 1.7;
    }
    .new_753 .sec04_01_03 .box .text span {
        font-size: 1.7rem;
        font-weight: bold;
    }
    .new_753 .sec04_01_03 .box .note {
        font-size: 1.3rem;
        padding-top: 10px;
        line-height: 1.7;
    }
    .new_753 .sec04_01_03 .box .note span {
        color: #b23d53;
    }
    .new_753 .sec04_02 {
        padding: 80px 0 50px;
    }
    .new_753 .sec04_02_in {
        padding: 30px;
    }
    .new_753 .sec04_02 .text {
        padding: 45px 20px 30px;
        font-size: 1.4rem;
    }
    
    /***** 七五三 商品紹介 *****/
    .new_753 .sec05 {
        background-image: url(../imgs/plan/753_new/sec05_bg.jpg);
        background-size: cover;
        background-position: center center;
        background-repeat: no-repeat;
    }
    .new_753 .sec05_in {
        max-width: 590px;
        width: 100%;
        margin: 0 auto;
        padding: 50px 20px;
        background-color: rgba(255,255,255,.9);
    }
    .new_753 .sec05 .heading_box {
        position: relative;
        width: fit-content;
        margin: 0 auto;
        padding: 50px 0 30px;
        text-align: center;
    }
    .new_753 .sec05 .heading {
        font-size: 2rem;
        letter-spacing: 0.16em;
    }
    .new_753 .sec05 .heading_box img {
        display: block;
        max-width: 130px;
        position: absolute;
        top: -15px;
        left: -25%;
    }
    .new_753 .sec05 p {
        font-size: 1.4rem;
        text-align: center;
        line-height: 2.1;
        letter-spacing: .01em;
    }
    .new_753 .sec05 .btn-link {
        margin: 30px auto;
    }
    
    /***** ご利用の流れ *****/
    .new_753 .sec06 {
        padding: 80px 0;
    }
    .new_753 .sec06 .slider_outer {
        padding: 50px 0;
    }
    .new_753 .sec06 .slider_753_02 .item {
        padding: 15px;
        margin: 10px;
    }
    .new_753 .sec06 .slider_753_02 .item_top .img {
        width: 70px;
    }
    .new_753 .sec06 .slider_753_02 .item_top .heading {
        padding-left: 10px;
    }
    .new_753 .sec06 .slider_753_02 .item_top .heading .text01 {
        font-size: 1.4rem;
    }
    .new_753 .sec06 .slider_753_02 .item_top .heading .text02 {
        font-size: 1.7rem;
    }
    .new_753 .sec06 .slider_753_02 .content {
        padding: 10px 0;
        font-size: 1.3rem;
        line-height: 1.8;
    }
    .new_753 .slider_753_02 .slick-next {
        right: calc(50% - 43%);
    }
    .new_753 .slider_753_02 .slick-prev {
        left: calc(50% - 43%);
    }
    .new_753 .sec06_in {
        padding: 30px 20px 15px;
    }
    .new_753 .sec06_in > div {
        display: flex;
        padding-bottom: 15px;
    }
    .new_753 .sec06_in > div::before {
        content: "";
        display: block;
        width: 15px;
        height: 1.5px;
        margin: 12px 0 0;
        background-color: #333;
    }
    .new_753 .sec06_in p {
        flex: 1;
        padding-left: 5px;
        line-height: 2;
    }
    .new_753 .sec06_in p span {
        display: block;
        font-weight: bold;
    }
    
    /***** 予約会・見学予約のご案内 ******/
    .new_753 .sec07 {
        padding: 50px 0;
    }
    .new_753 .sec07 .title {
        padding: 0 0 30px;
        font-size: 2.2rem;
    }
    .new_753 .sec07_in {
        flex-direction: column-reverse;
    }
    .new_753 .sec07_in .content {
        padding: 10px 0 0;
        font-size: 1.4rem;
        line-height: 1.8;
        letter-spacing: normal;
    }
    .new_753 .sec07_in .img {
        max-width: 100%;
        width: 100%;
    }
    
    /***** Q&A ******/
    .new_753 .sec08 {
        padding: 50px 20px;
    }
    .new_753 .sec08_in {
        padding: 30px 0 0;
        margin: 0 auto;
    }
    .new_753 .sec08_in .item {
        margin-bottom: 20px;
    }
    .new_753 .sec08_in .q {
        padding: 10px 25px 10px 10px;
        font-size: 1.3rem;
        font-weight: bold;
        color: #655f54;
        background-color: #f0ebe4;
        position: relative;
        cursor: pointer;
    }
    .new_753 .sec08_in .q span {
        display: block;
        width: 10px;
        height: 10px;
        position: absolute;
        top: 0;
        bottom: 0;
        right: 10px;
        margin: auto 0;
    }
    .new_753 .sec08_in .q span::before,
    .new_753 .sec08_in .q span::after {
        content: "";
        display: inline-block;
        width: 100%;
        height: 1.5px;
        background-color: #655f54;
        position: absolute;
        top: 0;
        bottom: 0;
        margin: auto 0;
        transition: all .3s;
    }
    .new_753 .sec08_in .q span::after {
        transform: rotate(90deg);
    }
    .new_753 .sec08_in .q.open span::after {
        transform: rotate(0deg);
    }
    .new_753 .sec08_in .a {
        display: none;
        padding: 20px 20px 10px;
        font-size: 1.3rem;
    }

}
.plan-detail a.textlink_deco{
    text-decoration: underline;
    color: #333333;
    }
/* add20250303 TOP 七五三プラン内予約会日程 */
.plan-info .limitedtime{
    width: 85%;
    padding: 2%;
    border: 1px solid #B23D53;
    margin: 0 auto 40px auto;
}
.plan-info .limitedtime .title{
    padding-bottom: 5px;
    font-size: 2rem;
    font-weight: bold;
    text-align: center;
}
.plan-info .limitedtime .text .red{
    color: #B23D53;
    font-weight: bold;
    font-size: 1.8rem;
}
.plan-info .limitedtime .text .bold{
    font-weight: bold;
}
@media screen and (max-width: 768px) {
    .plan-info .limitedtime{
        width: 100%;
        padding: 5% 2%;
        margin: 20px auto 0px auto;
    }
    .plan-info .limitedtime .title{
        font-size: 1.6rem;
    }
    .plan-info .limitedtime .text{
        line-height: 2.4rem;
    }
    .plan-info .limitedtime .text .red{
        font-size: 1.5rem;
    }
    .plan-info .limitedtime .text .bold{
        font-weight: bold;
        font-size: 1.2rem;
    }
}
/* add20250310 見学予約ページ メモ追加 */
.reserve_memo {
    max-width: 800px;
    width: 100%;
    padding: 2% 3%;
    border: 1px solid #333333;
    font-size: 1.1rem;
    margin: 30px auto 0;
    text-align: left;
}
.reserve_memo .title{
    font-size: 1.3rem;
    font-family: "Noto Sans JP", sans-serif;
    text-align: center;
    margin: 10px 0 20px 0;
}
.reserve_memo p{
    margin: 3% 0;
}
.reserve_memo p a{
    text-decoration: underline;
}
@media screen and (max-width: 768px) {
    .reserve_memo {
        padding: 4%;
        font-size: 1.0rem;
    }
    .reserve_memo .title{
        font-size: 1.2rem;
        margin: 0 0 20px 0;
    }
}

/* add20250523 トップ ピックアップ改修 */
.top_pickup {
    margin: 0 auto;
    padding: 60px 0 0;
}
.top_pickup .title {
    max-width: 990px;
    margin: 0 auto;
}
.top_pickup_in {
    margin: 120px auto 0;
    padding: 0 10px 85px;
    background-color: #f8f6f3;
}
.top_pickup .container {
    position: relative;
    max-width: 1130px;
    margin: 0 auto;
    padding: 30px 10px 0;
}
.top_pickup .tab-area {
    max-width: 1130px;
    width: 100%;
}
.top_pickup .tab-area .tab {
    width: calc(100% / 4);
}
.top_pickup .tab-area .tab02 {
    background-color: #908db1;
}
.top_pickup .tab-area .tab03 {
    background-color: #b9777d;
}
.top_pickup .tab-area .tab04 {
    background-color: #586a14;
}
.top_pickup .tab-area .tab.active {
    background-color: #f8f6f3 !important;
}
.top_pickup .panel .list {
    display: flex;
    flex-wrap: wrap;
    gap: 4%;
}
.top_pickup .panel .list_item {
    width: 48%;
    position: relative;
    padding-bottom: 100px;
    margin-bottom: 50px;
}
.top_pickup .panel .list_item a {
    display: block;
    transition: all .3s;
}
.top_pickup .panel .list_item a:hover {
    transition: all .3s;
    opacity: .7;
}
.top_pickup .panel .list_item ul {
    position: absolute;
    top: 15px;
    left: 8px;
    display: flex;
    gap: 8px;
}
.top_pickup .panel .list_item ul li {
    width: 50px;
    height: 50px;
    display: flex;
    justify-content: center;
    align-items: center;
    color: white;
    border-radius: 50px;
    font-size: 13px;
    font-weight: 200;
}
.top_pickup .panel .list_item_desc {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    width: 85%;
    height: 125px;
    margin: 0 auto;
    padding: 20px 30px;
    background-color: rgba(365, 365, 365, 0.8);
}
.top_pickup .panel .list_item_desc .time {
    font-size: 1.4rem;
    color: #000;
    line-height: 1.2;
}
.top_pickup .panel .list_item_desc .desc {
    font-size: 1.8rem;
    line-height: calc(33/18);
    font-weight: bold;
    letter-spacing: 0.18em;
    -o-text-overflow: ellipsis;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    display: -webkit-box;
    overflow: hidden;
    text-overflow: ellipsis;
    height: 66px;
}
@media screen and (max-width: 768px) {
    .top_pickup {
        padding: 30px 0 0;
    }
    .top_pickup .title {
        margin: 0 auto;
        width: calc(100% - 40px);
    }
    .top_pickup_in {
        margin: 75px auto 0;
        padding: 0 10px 40px;
    }
    .top_pickup .container {
        width: 100%;
        padding: 30px 0 0;
    }
    .top_pickup .tab-area {
        max-width: 1130px;
        width: 100%;
    }
    .top_pickup .tab-area .tab {
        margin: 0 2px;
        line-height: 1.5;
    }
    .top_pickup .panel {
       padding: 20px 0 0;
    }
    .top_pickup .panel .list {
        gap: 2%;
    }
    .top_pickup .panel .list_item {
        width: 49%;
        padding-bottom: 55px;
        margin-bottom: 40px;
    }
    .top_pickup .panel .list_item ul {
        position: absolute;
        left: 10px;
        top: -20px;
        display: flex;
    }
    .top_pickup .panel .list_item ul li {
        width: 46px;
        height: 46px;
        border-radius: 50%;
        display: flex;
        justify-content: center;
        align-items: center;
        font-size: 1.2rem;
        color: #fff;
        margin-right: 0;
    }
    .top_pickup .panel .list_item_desc {
        left: 0;
        right: 0;
        bottom: 0;
        width: 100%;
        height: auto;
        margin: 0 auto;
        padding: 7px 10px;
    }
    .top_pickup .panel .list_item_desc .time {
        font-size: 1rem;
        line-height: 1.2;
    }
    .top_pickup .panel .list_item_desc .desc {
        font-size: 1.3rem;
        letter-spacing: 0.1em;
        -o-text-overflow: ellipsis;
        -webkit-line-clamp: 2;
        -webkit-box-orient: vertical;
        display: -webkit-box;
        overflow: hidden;
        text-overflow: ellipsis;
        height: 45px;
    }
}
.plan .booking {
    margin-bottom: 170px;
}
@media (max-width: 768px) {
    .plan .booking {
    margin-bottom: 70px;
}
}

footer .footer_dorekana{
    max-width: 200px;
}
footer .footer_dorekana a{
    box-shadow: 0 0px 20px rgba(0,0,0,0.2);
}
@media (max-width: 768px) {
    footer .footer_dorekana {
    max-width: 150px;
    left: auto;
    right: 2%;
    bottom: 8%;
}
}
/***** Q&A ******/
.plan_qa.sec08 {
    padding: 100px 0;
}
.plan_qa .sec08_in {
    max-width: 700px;
    padding: 50px 0 0;
    margin: 0 auto;
    color: #655f54;
}
.plan_qa .sec08_in .item {
    margin-bottom: 20px;
}
.plan_qa .sec08_in .q {
    padding: 10px;
    font-size: 1.3rem;
    font-weight: bold;
    color: #655f54;
    background-color: #f0ebe4;
    position: relative;
    cursor: pointer;
}
.plan_qa .sec08_in .q span {
    display: block;
    width: 10px;
    height: 10px;
    position: absolute;
    top: 0;
    bottom: 0;
    right: 20px;
    margin: auto 0;
}
.plan_qa .sec08_in .q span::before,
.plan_qa .sec08_in .q span::after {
    content: "";
    display: inline-block;
    width: 100%;
    height: 1.5px;
    background-color: #655f54;
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto 0;
    transition: all .3s;
}
.plan_qa .sec08_in .q span::after {
    transform: rotate(90deg);
}
.plan_qa .sec08_in .q.open span::after {
    transform: rotate(0deg);
}
.plan_qa .sec08_in .a {
    display: none;
    padding: 20px 20px 10px;
    font-size: 1.3rem;
}
.plan_qa .link_box{
    max-width: 700px;
    margin: 0 auto;
}
.plan_qa .link_box a{
    text-decoration: underline;
}
.plan_qa .link_box a:hover{
    text-decoration: none;
}
@media screen and (max-width: 768px) {
/***** Q&A ******/
    .plan_qa.sec08 {
        padding: 50px 20px;
    }
    .plan_qa .sec08_in {
        padding: 30px 0 0;
        margin: 0 auto;
    }
    .plan_qa .sec08_in .item {
        margin-bottom: 20px;
    }
    .plan_qa .sec08_in .q {
        padding: 10px 25px 10px 10px;
        font-size: 1.3rem;
        font-weight: bold;
        color: #655f54;
        background-color: #f0ebe4;
        position: relative;
        cursor: pointer;
    }
    .plan_qa .sec08_in .q span {
        display: block;
        width: 10px;
        height: 10px;
        position: absolute;
        top: 0;
        bottom: 0;
        right: 10px;
        margin: auto 0;
    }
    .plan_qa .sec08_in .q span::before,
    .plan_qa .sec08_in .q span::after {
        content: "";
        display: inline-block;
        width: 100%;
        height: 1.5px;
        background-color: #655f54;
        position: absolute;
        top: 0;
        bottom: 0;
        margin: auto 0;
        transition: all .3s;
    }
    .plan_qa .sec08_in .q span::after {
        transform: rotate(90deg);
    }
    .plan_qa .sec08_in .q.open span::after {
        transform: rotate(0deg);
    }
    .plan_qa .sec08_in .a {
        display: none;
        padding: 20px 20px 10px;
        font-size: 1.3rem;
    }
}
.plan_qa.pd_adj{
    padding: 0 0 100px 0;
}

.plan_qa .text_box{
    width: calc(100% - 40px);
    max-width: 990px;
    margin: 0 auto;
}
.plan_qa .text_box a{
    font-weight: bold;
    text-decoration: underline;
}
.plan_qa .text_box a:hover{
    text-decoration: none;
}
@media screen and (max-width: 768px) {
    .plan_qa.pd_adj{
    padding: 0 20px 50px 20px;
}
    .plan_qa .text_box{
    width: 100%;
}
}
.nav-link .btn-link-sp-in{
    display: none
}
@media screen and (max-width: 1140px) {
.nav-link .btn-link-sp-in{
    display: block;
    display: flex;
    justify-content: center;
}
header .nav-link .btn-link-sp{
    width: 40%;
    margin: 0 2% 25px;
    padding: 10px 0;
    font-size: 1.2rem;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    border-radius: 10px;
    border: none;
    box-shadow: 0 0 4px gray;
    background: none;
}
}
.plan_qa .plan_qa_ttl{
    font-size: 18px;
    margin: 15px auto 10px;
}
@media screen and (max-width: 1140px) {
.plan_qa .plan_qa_ttl{
    font-size: 15px;
}
}
.plan_qa .plan_qa_ttl{
    position: relative;
    padding-left: 25px;
}
.plan_qa .plan_qa_ttl::after {
    content: '';
    position: absolute;
    left: 0;
    top: 50%;
    width: 20px;
    height: 1px;
    background-color: #333333;
}
.hm_add_ttl {
    display: none;
}
@media screen and (max-width: 1140px) {
    .plan_qa .plan_qa_ttl{
    padding-left: 19px;
    font-size: 14px;
}
    .plan_qa .plan_qa_ttl::after {
    width: 15px;
}
}
.header-dorekana-link {
    width: 70%;
    margin: 0px auto 20px;
}
@media screen and (max-width: 1140px) {
header .nav-link .about-reservations h3 {
    font-size: 1.8rem;
}
header .nav-link .camera {
    background-color: transparent;
    padding: 0;
}
header .nav-link .camera ul li a {
    color: #fff;
    background-image: url("../imgs/common/arr_left-sp-wh.png");
    background-size: 13px;
    background-color: #333333;
    border-radius: 4px;
}
 header .nav-link .camera ul li a:hover {
    color: #333;
    background: #fff url("../imgs/common/arr_left-sp.png");
    background-repeat: no-repeat;
    background-position: center right 5px;
    border-radius: 8px;
 }
header .nav-link .reservations-link {
    background-color: #AB995B;
    box-shadow: 0 0 4px #afafaf;
    border-radius: 50px;
    width: 90%;
    margin: 0 auto 10px;
    display: flex;
    justify-content: center;
}
header .nav-link .reservations-link p{
    color: #fff;
}
.hm_add_ttl {
    display: block;
    font-size: 1.6rem;
    text-align: center;
    font-weight: normal;
    position: relative;
}
.hm_add_ttl:before,
.hm_add_ttl:after {
  position: relative;
  display: inline-block;
  content: "";
  background: #333333;
  width: 1px;
  height: 1em;
  margin: 0 0.5em;
  margin-top: -.2em;
  vertical-align: middle;
}
.hm_add_ttl:before {
  transform: rotate(-35deg);
}
.hm_add_ttl:after {
  transform: rotate(35deg);
}
/* .hm_add_ttl02{
    font-size: 1.8rem;
    text-align: center;
    margin: 15px auto;
} */
 header .nav-menu .nav-item.first>a {
    font-size: 1.8rem;
}
header .nav-link .about-reservations {
     padding: 25px 20px;
}
header .nav-link .camera {
    margin: 20px auto 0;
}
header .nav-link .reservations-link img{
    width: 20px;
    height: 22px;
    margin-right: 7px;
}
}
.goods-page .contents-page .memo {
    font-size: 1.2rem;
    margin: 20px auto 0;
    padding: 20px 0;
    background: #f8f6f3;
    max-width: 750px;
}
.goods-page .contents-page .memo span{
    font-weight: bold;
    display:block;
}
@media screen and (max-width: 768px) {
    .goods-page .contents-page .memo {
    text-align: left;
    padding: 20px;
}
.goods-page .contents-page .memo span{
    text-align: center;
}
}