@charset "UTF-8";

/* base.css上書き */
html {
    font-weight: normal;
    color: #977249;
    letter-spacing: 1px;
    background-color: white;
}

/* loading */
#loading {
    width: 100%;
    height: 100%;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    align-items: center;
    -ms-flex-align: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    background-color: white;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 10;
}

/* common */
.no-opacity a:hover {
    opacity: 1;
}

.logo {
    width: 200px;
    max-width: 80%;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    margin: 10px 20px;
}

.text-vertical {
    -ms-writing-mode: tb-rl;
    -webkit-writing-mode: vertical-rl;
    writing-mode: vertical-rl;
}

.text-horizontal {
    -ms-writing-mode: lr-tb;
    -webkit-writing-mode: horizontal-tb;
    writing-mode: horizontal-tb;
}

.text-black {
    color: #171717;
}

.text-gray {
    color: #4c4c4c;
}

.bgc-01 {
    background-color: #977249;
}

.bgc-02 {
    background-color: #725438;
}

.bgc-03 {
    background-color: #ead3aa;
}

.bgc-04 {
    background-color: #f3efe3;
}

.bgc-05 {
    background-color: #efefef;
}

.bgc-06 {
    background-color: #6f553c;
}

.bgc-07 {
    background-color: #aba79c;
}

.bgc-half-04 {
    background: -webkit-gradient(linear, left bottom, left top, from(#f3efe3), color-stop(50%, #f3efe3), color-stop(50%, transparent), to(transparent));
    background: linear-gradient(0deg, #f3efe3 0%, #f3efe3 50%, transparent 50%, transparent 100%);
}

.border-bottom-07 {
    border-bottom: 2px solid #aba79c;
}

.map::after {
    padding-top: 25%;
}

.access-map::after {
    padding-top: 45%;
}

.shadow {
    position: relative;
}

.shadow::after {
    content: "";
    width: 100%;
    height: 100%;
    display: block;
    background-color: #e3e3e3;
    position: absolute;
    top: 30px;
    left: 40px;
    z-index: -1;
}

@media (max-width: 1024px) {
    .logo {
        width: 144px;
    }

    .text-vertical\@tb {
        -ms-writing-mode: tb-rl;
        -webkit-writing-mode: vertical-rl;
        writing-mode: vertical-rl;
    }

    .text-horizontal\@tb {
        -ms-writing-mode: lr-tb;
        -webkit-writing-mode: horizontal-tb;
        writing-mode: horizontal-tb;
    }

    .shadow::after {
        top: 20px;
        left: 30px;
    }

    .map::after {
        padding-top: 50%;
    }

    .access-map::after {
        padding-top: 65%;
    }
}

@media (max-width: 599px) {
    .logo {
        width: 160px;
    }

    .text-vertical\@sp {
        -ms-writing-mode: tb-rl;
        -webkit-writing-mode: vertical-rl;
        writing-mode: vertical-rl;
    }

    .text-horizontal\@sp {
        -ms-writing-mode: lr-tb;
        -webkit-writing-mode: horizontal-tb;
        writing-mode: horizontal-tb;
    }

    .map::after {
        padding-top: 80%;
    }

    .access-map::after {
        padding-top: 90%;
    }
}

/* icon */
.icon-nav {
    width: 100px;
    height: 100px;
}

.icon-nav img {
    width: 100%;
    height: 100% !important;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center center;
    object-position: center center;
    font-family: "object-fit: cover; object-position: center center;";
}

.icon-link {
    width: 80px;
    height: 80px;
}

.icon-link img {
    width: 100%;
    height: auto;
}

[class^="icon-sns"] {
    width: 35px;
    height: 35px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    align-items: center;
    -ms-flex-align: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

[class^="icon-sns"]::before {
    display: inline-block;
    font-family: "Font Awesome 5 Brands";
    font-weight: normal;
    font-size: 35px;
}

.icon-sns-line::before {
    content: "\f3c0";
    color: #01b901;
}

.icon-sns-instagram::before {
    content: "\f16d";
    color: transparent;
    background: #d6249f;
    background: radial-gradient(circle at 30% 107%, #fdf497 0%, #fdf497 5%, #fd5949 45%, #d6249f 60%, #285aeb 90%);
    -webkit-background-clip: text;
}

.icon-sns-facebook::before {
    content: "\f082";
    color: #1f449c;
}

.icon-sns-mybusiness::before {
    content: "";
    width: 35px;
    height: 35px;
    display: inline-block;
    background-image: url(/upload/tenant_1/d891c11c51e08a13dee81097bd387b27.png);
    background-size: 100% auto;
    background-repeat: no-repeat;
    background-position: center center;
}

@media (max-width: 1024px) {
    .icon-link {
        width: 65px;
        height: 65px;
    }
}

@media (max-width: 599px) {
    .icon-link {
        width: 50px;
        height: 50px;
    }
}

/* title */
.title-01 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    align-items: center;
    -ms-flex-align: center;
    margin-bottom: 50px;
    font-family: "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
    font-size: 36px;
    letter-spacing: 2px;
}

.title-01 span {
    display: block;
}

.title-01 .en {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    align-items: center;
    -ms-flex-align: center;
    font-size: 60%;
    letter-spacing: 4px;
}

.title-01 .en::before,
.title-01 .en::after {
    content: "";
    width: 45px;
    height: 5px;
    display: inline-block;
    margin: 0 15px;
    border-top: 1px solid #977249;
    border-bottom: 1px solid #977249;
}

.title-02 {
    margin-bottom: 50px;
    font-family: "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
    font-size: 36px;
    letter-spacing: 2px;
}

.title-02 span {
    display: block;
}

.title-02 .en {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    align-items: center;
    -ms-flex-align: center;
    font-size: 60%;
    letter-spacing: 4px;
}

.title-02::after {
    content: "";
    width: 45px;
    height: 5px;
    display: block;
    margin: 30px auto 30px 0;
    border-top: 1px solid #977249;
    border-bottom: 1px solid #977249;
}

.title-03 {
    margin-bottom: 50px;
    font-family: "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
    font-size: 36px;
    letter-spacing: 2px;
}

.title-04 {
    font-family: "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
    font-size: 26px;
    line-height: 2;
    text-align: center;
}

.title-04::after {
    content: "";
    width: 2px;
    height: 50px;
    display: block;
    margin: 20px auto;
    background-color: #aba79c;
}

.title-05 {
    padding: 15px 5px;
    font-family: "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
    font-size: 18px;
    text-align: center;
    border-bottom: 2px solid #aba79c;
}

.title-06 {
    font-size: 36px;
    position: relative;
}

.title-06::before {
    content: "";
    width: 75px;
    height: 2px;
    display: block;
    margin: auto;
    background-color: #aba79c;
    -webkit-transform: translate(-120%, -50%);
    transform: translate(-120%, -50%);
    position: absolute;
    top: 50%;
    left: 0;
    z-index: 1;
}

.title-06.text-vertical::before {
    width: 2px;
    height: 75px;
    -webkit-transform: translate(0, -120%);
    transform: translate(0, -120%);
    top: 0;
    left: 0;
    right: 0;
}

.title-06 span {
    display: block;
}

.title-06 .ja {
    font-size: 40%;
}

.title-07 {
    font-weight: normal;
    font-size: 22px;
}

.title-08 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    align-items: center;
    -ms-flex-align: center;
}

.title-08 .ja {
    font-family: "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
    font-size: 110%;
    border-bottom: 1px solid #bb9e74;
}

.title-09 {
    margin-bottom: 50px;
    font-weight: bold;
    font-size: 20px;
    color: #171717;
}

.title-10 {
    padding: 15px 5px;
    font-family: "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
    font-size: 26px;
    border-bottom: 2px solid #aba79c;
}

.title-11 {
    padding: 15px 5px;
    font-family: "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
    font-size: 20px;
    border-bottom: 2px solid #aba79c;
}

[class^="title"].-mb-large {
    margin-bottom: 80px;
}

[class^="title"].-mb-normal {
    margin-bottom: 50px;
}

[class^="title"].-mb-small {
    margin-bottom: 30px;
}

[class^="title"].-mb-0 {
    margin-bottom: 0;
}

@media (max-width: 1024px) {
    .title-01 {
        margin-bottom: 30px;
        font-size: 28.8px;
    }

    .title-02 {
        font-size: 28.8px;
    }

    .title-02::after {
        margin: 15px auto 15px 0;
    }

    .title-03 {
        margin-bottom: 30px;
        font-size: 28.8px;
    }

    .title-04 {
        font-size: 20.8px;
    }

    .title-05 {
        padding: 10px 5px;
        font-size: 22px;
    }

    .title-06 {
        font-size: 28.8px;
    }

    .title-07 {
        font-size: 20px;
    }

    .title-09 {
        margin-bottom: 30px;
        font-size: 16px;
    }

    .title-10 {
        padding: 10px 5px;
        font-size: 22px;
    }

    .title-11 {
        padding: 10px 5px;
        font-size: 18px;
    }

    [class^="title"].-mb-large\@tb {
        margin-bottom: 80px;
    }

    [class^="title"].-mb-normal\@tb {
        margin-bottom: 50px;
    }

    [class^="title"].-mb-small\@tb {
        margin-bottom: 30px;
    }

    [class^="title"].-mb-0\@tb {
        margin-bottom: 0;
    }
}

@media (max-width: 599px) {
    .title-01 {
        font-size: 21.6px;
    }

    .title-02 {
        font-size: 21.6px;
    }

    .title-03 {
        font-size: 21.6px;
    }

    .title-04 {
        font-size: 18px;
    }

    .title-04::after {
        width: 1px;
    }

    [class^="title"].-mb-large\@sp {
        margin-bottom: 80px;
    }

    [class^="title"].-mb-normal\@sp {
        margin-bottom: 50px;
    }

    [class^="title"].-mb-small\@sp {
        margin-bottom: 30px;
    }

    [class^="title"].-mb-0\@sp {
        margin-bottom: 0;
    }
}

/* list */
.list-flat {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.list-flat dt {
    -ms-flex-negative: 0;
    flex-shrink: 0;
}

.list-flat dd {
    width: 10%;
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    margin-left: 30px;
}

.list-flat.-border+.list-flat.-border {
    border-top: 1px solid #ccc;
}

.list-dot {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: start;
    align-items: flex-start;
    -ms-flex-align: start;
}

.list-dot dt {
    width: 30%;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    -moz-text-align-last: justify;
    text-align-last: justify;
}

.list-dot dt::after {
    content: "：";
    display: inline-block;
    float: right;
    margin: 0 5px;
}

.list-dot dd {
    width: 10%;
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
}

.list-menu li .parallel {
    padding: 50px 0;
}

.list-menu li:nth-of-type(4n+3) .parallel,
.list-menu li:nth-of-type(4n+4) .parallel {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    border-top: 2px solid #aba79c;
    border-bottom: 2px solid #aba79c;
}

.list-menu li .parallel-inner {
    height: 210px;
}

.list-link li .square-inner a {
    width: 100%;
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    align-items: center;
    -ms-flex-align: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    padding: 15px;
    border: 3px solid #bb9e74;
    position: relative;
}

.list-link li .square-inner a::after {
    content: "";
    width: 35px;
    height: 7px;
    display: inline-block;
    border-bottom: 1px solid #aba79c;
    border-right: 1px solid #aba79c;
    -webkit-transform: skew(45deg);
    transform: skew(45deg);
    position: absolute;
    bottom: 5px;
    right: 10px;
}

.list-link li .square-inner a .icon-link {
    margin-top: 10px;
}

.list-link li.link-dark .square-inner a {
    border: 3px solid #725438;
}

.list-link li.link-dark .square-inner a::after {
    border-bottom: 1px solid #725438;
    border-right: 1px solid #725438;
}

.list-link li.link-dark .square-inner a [class^="title"] {
    color: #725438;
}

.list-link li.link-dark .square-inner a [class^="title"] .ja {
    border-bottom: 1px solid #725438;
}

.list-faq dt {
    padding: 15px 50px;
    font-weight: bold;
    font-size: 20px;
    background-color: #efefef;
    position: relative;
}

.list-faq dt:hover {
    cursor: pointer;
}

.list-faq dt::before {
    content: "Q";
    margin: auto;
    font-family: "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
    font-weight: normal;
    font-size: 140%;
    -webkit-transform: translate(0, -50%);
    transform: translate(0, -50%);
    position: absolute;
    top: 50%;
    left: 10px;
    z-index: 1;
}

.list-faq dt::after {
    content: "\f078";
    display: inline-block;
    margin: auto;
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    font-size: inherit;
    line-height: 100%;
    -webkit-transition: 0.3s linear;
    transition: 0.3s linear;
    -webkit-transform: translate(0, -50%);
    transform: translate(0, -50%);
    position: absolute;
    top: 50%;
    right: 15px;
    z-index: 1;
}

.list-faq dt.action::after {
    -webkit-transform: rotate(180deg) translate(0, 50%);
    transform: rotate(180deg) translate(0, 50%);
}

.list-faq dd {
    padding: 30px 50px;
    font-size: 16px;
    color: #171717;
    line-height: 2;
}

.list-sns {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin: 15px 0;
}

.list-sns li {
    margin: 10px;
}

.list-sns li a {
    display: block;
}

@media (max-width: 1024px) {
    .list-flat dd {
        margin-left: 24px;
    }

    .list-menu li .parallel-inner {
        height: auto;
    }

    .list-menu li .parallel {
        padding: 30px 0;
    }

    .list-link li .square-inner a .icon-link {
        margin-top: 5px;
    }

    .list-faq dt {
        padding: 10px 30px;
        font-size: 18px;
    }

    .list-faq dt::before {
        font-size: 120%;
        left: 5px;
    }

    .list-faq dt::after {
        right: 5px;
    }

    .list-faq dd {
        padding: 10px 30px;
        font-size: 14px;
        line-height: 1.8;
    }
}

@media (max-width: 599px) {
    .list-dot dt {
        width: 35%;
    }

    .list-flat dt {
        width: 100%;
    }

    .list-flat dd {
        width: 100%;
        margin-left: 0;
    }

    .list-menu li:nth-of-type(4n+3) .parallel,
    .list-menu li:nth-of-type(4n+4) .parallel {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
        flex-direction: row-reverse;
        border-top: 1px solid #aba79c;
        border-bottom: none;
    }

    .list-menu li:nth-of-type(even) .parallel {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -ms-flex-direction: row;
        flex-direction: row;
    }

    .list-menu li+li .parallel {
        border-top: 1px solid #aba79c;
    }
}

/* button */
.btn {
    overflow: hidden;
    margin-top: 50px;
}

.btn-inner {
    position: relative;
    z-index: 1;
}

.btn.-text a::after,
.btn.-text button::after {
    content: "";
    width: 30px;
    height: 7px;
    display: inline-block;
    margin-left: 15px;
    border-bottom: 1px solid #977249;
    border-right: 1px solid #977249;
    -webkit-transform: skew(45deg);
    transform: skew(45deg);
}

.btn.-text.-back {
    text-align: right;
}

.btn.-text.-back a::before,
.btn.-text.-back button::before {
    content: "";
    width: 30px;
    height: 7px;
    display: inline-block;
    margin-right: 15px;
    border-bottom: 1px solid #977249;
    border-left: 1px solid #977249;
    -webkit-transform: skew(-45deg);
    transform: skew(-45deg);
}

.btn.-text.-back a::after,
.btn.-text.-back button::after {
    display: none;
}

.btn.-square {
    width: 200px;
    max-width: 90%;
    height: 40px;
    margin-left: auto;
    margin-right: auto;
}

.btn.-square a,
.btn.-square button {
    width: 100%;
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    align-items: center;
    -ms-flex-align: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    padding: 10px 20px;
    color: white;
    border: 1px solid #bb9e74;
    background-color: #bb9e74;
    position: relative;
}

.btn.-square a::after,
.btn.-square button::after {
    content: "";
    width: 0;
    height: 100%;
    display: block;
    background-color: white;
    -webkit-transition: 0.3s linear;
    transition: 0.3s linear;
    position: absolute;
    top: 0;
    right: 0;
}

.btn.-square a:hover,
.btn.-square button:hover {
    color: #bb9e74;
    opacity: 1;
}

.btn.-square a:hover::after,
.btn.-square button:hover::after {
    width: 100%;
}

.btn.-square.-vertical {
    width: 30px;
    height: 120px;
}

.btn.-square.-vertical a {
    padding: 5px;
    font-size: 12px;
    letter-spacing: 2px;
    -ms-writing-mode: tb-rl;
    -webkit-writing-mode: vertical-rl;
    writing-mode: vertical-rl;
    background-color: #725438;
}

.btn.-square.-vertical a::after {
    width: 100%;
    height: 0;
}

.btn.-square.-vertical a:hover::after {
    height: 100%;
}

.btn.-square.-wide {
    width: 400px;
}

.btn.-square.-height {
    height: 60px;
}

.btn.-mt-large {
    margin-top: 80px;
}

.btn.-mt-normal {
    margin-top: 50px;
}

.btn.-mt-small {
    margin-top: 30px;
}

.btn.-mt-ex-small {
    margin-top: 10px;
}

.btn.-mt-0 {
    margin-top: 0;
}

.btn.-left {
    margin-left: 0;
    margin-right: auto;
}

.btn.-right {
    margin-left: auto;
    margin-right: 0;
}

@media (max-width: 1024px) {
    .btn.-square.-horizontal\@tb {
        width: 200px;
        max-width: 90%;
        height: 30px;
    }

    .btn.-square.-horizontal\@tb a {
        -ms-writing-mode: lr-tb;
        -webkit-writing-mode: horizontal-tb;
        writing-mode: horizontal-tb;
    }

    .btn.-mt-large\@tb {
        margin-top: 80px;
    }

    .btn.-mt-normal\@tb {
        margin-top: 50px;
    }

    .btn.-mt-small\@tb {
        margin-top: 30px;
    }

    .btn.-mt-ex-small\@tb {
        margin-top: 10px;
    }

    .btn.-mt-0\@tb {
        margin-top: 0;
    }

    .btn.-left\@tb {
        margin-left: 0;
        margin-right: auto;
    }

    .btn.-right\@tb {
        margin-left: auto;
        margin-right: 0;
    }
}

@media (max-width: 599px) {
    .btn.-square.-horizontal\@sp {
        width: 200px;
        max-width: 90%;
        height: 30px;
    }

    .btn.-square.-horizontal\@sp a {
        -ms-writing-mode: lr-tb;
        -webkit-writing-mode: horizontal-tb;
        writing-mode: horizontal-tb;
    }

    .btn.-mt-large\@sp {
        margin-top: 80px;
    }

    .btn.-mt-normal\@sp {
        margin-top: 50px;
    }

    .btn.-mt-small\@sp {
        margin-top: 30px;
    }

    .btn.-mt-ex-small\@sp {
        margin-top: 10px;
    }

    .btn.-mt-0\@sp {
        margin-top: 0;
    }

    .btn.-left\@sp {
        margin-left: 0;
        margin-right: auto;
    }

    .btn.-right\@sp {
        margin-left: auto;
        margin-right: 0;
    }
}

/* header */
header {
    width: 100%;
    background-color: white;
    top: 0;
    left: 0;
    z-index: 5;
}

.scrolled header {
    -webkit-box-shadow: 0px 4px 2px -2px rgba(0, 0, 0, 0.2);
    box-shadow: 0px 4px 2px -2px rgba(0, 0, 0, 0.2);
}

.header-inner {
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin: auto;
}

.header-nav {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    align-items: center;
    -ms-flex-align: center;
    margin-left: 10px;
    margin-right: 10px;
}

.header-bnr [class^="type"] {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    align-items: center;
    -ms-flex-align: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    padding: 10px 30px;
    font-family: "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
    font-size: 18px;
    color: white;
    background-color: #ead3aa;
}

.header-bnr .type-b {
    background-color: #c4e0f1;
}

@media (max-width: 1024px) {
    header {
        width: 70%;
        height: 100%;
        background-color: #f3efe3;
        -webkit-transition: 0.3s linear;
        transition: 0.3s linear;
        -webkit-transform: translate(100%, 0);
        transform: translate(100%, 0);
        position: fixed !important;
        top: 0;
        left: auto;
        right: 0;
        z-index: 5;
    }

    .header-inner {
        height: 100%;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
    }

    .header-logo {
        margin-bottom: 30px;
        margin-left: auto;
        margin-right: auto;
    }

    .header-bnr [class^="type"] {
        padding: 10px 30px 20px;
    }

    .header-nav {
        height: 10%;
        display: block;
        -webkit-box-flex: 1;
        -ms-flex-positive: 1;
        flex-grow: 1;
        margin-left: 20px;
        margin-right: 20px;
    }

    .active header {
        -webkit-box-shadow: -2px 0px 15px -5px #000;
        box-shadow: -2px 0px 15px -5px #000;
        -webkit-transform: translate(0, 0);
        transform: translate(0, 0);
    }
}

@media (max-width: 599px) {
    header {
        width: 75%;
    }

    header-nav {
        margin-left: 15px;
        margin-right: 15px;
    }
}

/* nav */
.sp-only {
    display: none;
}

.nav-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    align-items: center;
    -ms-flex-align: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.nav-list>li>a {
    display: block;
    text-align: center;
    white-space: nowrap;
}

.nav-list>li+li {
    margin-left: 20px;
}

.nav-list li.logo-container {
    margin-left: 0;
}

.mega {
    overflow: hidden;
    position: relative;
}

.mega::after {
    content: "";
    width: 800px;
    height: 35px;
    border: 0;
    -webkit-transform: translate(-50%, 0);
    transform: translate(-50%, 0);
    position: absolute;
    left: 50%;
    right: 50%;
    z-index: 2;
}

.mega-btn {
    display: block;
    text-align: center;
    -webkit-transition: 0.3s linear;
    transition: 0.3s linear;
}

.mega-btn:hover {
    opacity: 0.6;
    cursor: pointer;
}

.mega-menu {
    width: 800px;
    height: auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin: 35px auto 0 auto;
    padding: 30px 20px;
    border-radius: 3px;
    background-color: white;
    -webkit-box-shadow: 0 -2px 16px rgba(0, 0, 0, 0.1);
    box-shadow: 0 -2px 16px rgba(0, 0, 0, 0.1);
    opacity: 0;
    -webkit-transition: all 0.3s linear;
    transition: all 0.3s linear;
    -webkit-transform: translate(0, -15px);
    transform: translate(0, -15px);
    position: absolute;
    top: 100%;
    left: -400px;
    right: -400px;
    z-index: 2;
}

.mega-menu::before {
    content: "";
    width: 0;
    height: 0;
    display: inline-block;
    margin: auto;
    border-width: 0 7px 7px 7px;
    border-style: solid;
    border-color: transparent transparent white transparent;
    position: absolute;
    top: -7px;
    left: 0;
    right: 0;
}

.mega-menu-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.mega-menu-list li {
    width: 48%;
    margin: 1%;
}

.mega-menu-list li a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    align-items: center;
    -ms-flex-align: center;
}

.mega-menu-list li a .icon-nav {
    margin-right: 10px;
}

.mega-menu-list li a .icon-nav+.nav-text {
    width: 10%;
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
}

.mega:hover {
    overflow: visible;
}

.mega:hover .mega-menu {
    opacity: 1;
    -webkit-transform: translate(0, 0);
    transform: translate(0, 0);
}

@media (max-width: 1024px) {
    .sp-only {
        display: block;
    }

    nav {
        height: 100%;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        padding: 0 0 30px 0;
        -webkit-transform: translate(0, 0) !important;
        transform: translate(0, 0) !important;
    }

    .nav-list {
        width: 100%;
        height: 10%;
        -webkit-box-flex: 1;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-pack: start;
        -ms-flex-pack: start;
        justify-content: flex-start;
        -ms-flex-positive: 1;
        flex-grow: 1;
        overflow-y: scroll;
        -webkit-overflow-scrolling: touch;
    }

    .nav-list li {
        width: 100%;
        -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
        order: 2;
    }

    .nav-list li a {
        text-align: left;
        white-space: normal;
    }

    .nav-list li+li {
        margin-top: 15px;
        margin-left: 0;
    }

    .nav-list li.logo-container {
        -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
        order: 1;
    }

    .mega {
        width: 100%;
        display: block;
        overflow: visible;
        margin-top: 0;
        padding: 0;
        background-color: inherit;
        -webkit-box-shadow: none;
        box-shadow: none;
        opacity: 1;
        -webkit-transition: none;
        transition: none;
        -webkit-transform: translate(0, 0);
        transform: translate(0, 0);
        position: static;
    }

    .mega::before {
        display: none;
    }

    .mega::after {
        display: none;
    }

    .mega-btn {
        text-align: left;
    }

    .mega-menu {
        width: 100%;
        margin-top: 0;
        padding: 10px 10px 10px 30px;
        background-color: transparent;
        -webkit-box-shadow: none;
        box-shadow: none;
        opacity: 1;
        -webkit-transform: translate(0, 0);
        transform: translate(0, 0);
        position: static;
    }

    .mega-menu::before {
        display: none;
    }

    .mega-menu-list li {
        width: 100%;
        margin: 0;
    }

    .mega-menu-list li+li {
        margin-top: 5px;
    }

    .mega-menu-list li a .icon-nav {
        width: 60px;
        height: 60px;
    }
}

@media (max-width: 599px) {
    .mega-menu {
        padding-left: 20px;
    }

    .mega-menu-list li a {
        font-size: 12px;
        line-height: 1.2;
    }

    .mega-menu-list li a .icon-nav {
        width: 50px;
        height: 50px;
    }
}

/* footer */
footer {
    background-color: #efefef;
}

.footer-upper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    padding: 60px 0 30px;
}

.footer-logo-box {
    -ms-flex-negative: 0;
    flex-shrink: 0;
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 1;
    order: 1;
}

.footer-info {
    width: 10%;
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    -webkit-box-ordinal-group: 3;
    -ms-flex-order: 2;
    order: 2;
    margin: 0 30px;
}

.footer-info .list-dot {
    font-weight: bold;
    font-size: 16px;
}

.footer-img {
    width: 30%;
    -webkit-box-ordinal-group: 4;
    -ms-flex-order: 3;
    order: 3;
}

.footer-nav-list {
    margin: 30px 0;
    -webkit-column-count: 3;
    -moz-column-count: 3;
    column-count: 3;
    -webkit-column-gap: 15px;
    -moz-column-gap: 15px;
    column-gap: 15px;
}

.footer-nav-list li {
    -webkit-column-break-inside: avoid;
    -moz-column-break-inside: avoid;
    break-inside: avoid;
}

.footer-nav-list li a {
    font-size: 14px;
}

.footer-bottom {
    padding: 0 0 80px 0;
    border-top: 2px solid #aba79c;
}

.footer-bottom .title-footer {
    margin: 30px auto;
    font-weight: bold;
    font-size: 18px;
    letter-spacing: 1px;
    text-align: center;
}

.footer-bnr {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

.footer-bnr-item {
    width: 48%;
    font-size: 16px;
    line-height: 1.2;
}

.footer-bnr-item a {
    width: 100%;
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
    align-items: center;
    -ms-flex-align: center;
    padding: 20px 15px;
    border: 2px solid #aba79c;
    background-color: white;
}

.footer-bnr-item a .footer-bnr-icon {
    width: 20%;
}

.footer-bnr-item a .footer-bnr-info {
    width: 10%;
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    margin-left: 10px;
}

.footer-bnr-item a .footer-bnr-info .title-bnr {
    font-weight: bold;
    font-size: 32px;
}

.footer-bnr-tel a {
    pointer-events: none;
}

.copy {
    padding: 30px 20px;
    font-size: 12px;
    color: white;
    text-align: center;
    background-color: #807778;
}

@media (max-width: 1024px) {
    .footer-upper {
        display: block;
        padding: 50px 0 20px;
    }

    .footer-logo-box {
        width: 100%;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        align-items: center;
        -ms-flex-align: center;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        float: left;
    }

    .footer-info {
        width: 55%;
        float: right;
        margin: 0;
    }

    .footer-img {
        width: 40%;
        float: left;
        clear: left;
        margin-top: 5px;
    }

    .footer-nav-list {
        -webkit-column-count: 2;
        -moz-column-count: 2;
        column-count: 2;
        -webkit-column-gap: 10px;
        -moz-column-gap: 10px;
        column-gap: 10px;
    }

    .footer-bottom {
        padding-bottom: 50px;
    }

    .footer-bnr-item {
        width: 80%;
        margin: 10px auto;
        font-size: 14px;
    }

    .footer-bnr-item a {
        padding: 15px;
    }

    .footer-bnr-item a .footer-bnr-info .title-bnr {
        font-size: 28px;
    }

    .footer-bnr-tel a {
        pointer-events: initial !important;
    }
}

@media (max-width: 599px) {
    .footer-logo {
        width: 160px;
        margin-left: auto;
        margin-right: auto;
    }

    .footer-logo-box {
        width: 100%;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        float: none;
    }

    .footer-info {
        width: 100%;
        float: none;
    }

    .footer-img {
        width: 80%;
        float: none;
        margin: 15px auto;
    }

    .footer-nav-list {
        -webkit-column-count: 1;
        -moz-column-count: 1;
        column-count: 1;
        -webkit-column-gap: 0;
        -moz-column-gap: 0;
        column-gap: 0;
    }

    .footer-bnr-item {
        width: 100%;
        margin: 5px auto;
    }

    .footer-bnr-item a .footer-bnr-icon {
        width: 15%;
    }

    .footer-bnr-item a .footer-bnr-info .title-bnr {
        font-size: 20px;
    }
}

/* main visual */
.visual {
    position: relative;
}

.visual-cont {
    margin: auto;
    -webkit-transform: translate(0, -50%);
    transform: translate(0, -50%);
    position: absolute;
    top: 50%;
    left: 0;
    right: 0;
    z-index: 1;
}

.visual-title {
    font-size: 46px;
    color: white;
    line-height: 2;
    text-align: center;
    text-shadow: 0 0 6px #725438;
}

.lower-image .img {
    width: 100%;
    display: block;
    position: relative;
}

.lower-image .img::after {
    content: "";
    display: block;
    padding-top: 30%;
}

.lower-image .img img {
    width: 100%;
    height: 100% !important;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: 50% 50%;
    object-position: 50% 50%;
    font-family: "object-fit: cover; object-position: 50% 50%;";
    position: absolute;
    top: 0;
    left: 0;
}

.lower .visual-cont .visual-title {
    line-height: 1.5;
}

@media (max-width: 1024px) {
    .visual-title {
        font-size: 36px;
    }

    .lower-image .img::after {
        padding-top: 50%;
    }
}

@media (max-width: 599px) {
    .visual-title {
        font-size: 26px;
    }

    lower-image .img::after {
        padding-top: 70%;
    }
}

/* parts */
.history-box {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

.history-graph {
    padding: 0 30px 30px 0;
    border-right: 2px solid #171717;
}

.history-graph .title-09 {
    position: relative;
}

.history-graph .title-09::after {
    content: "";
    width: 47px;
    height: 38px;
    background-image: url(/import/tenant_1/160.16.139.179/html/images/common/icon_007.png);
    background-size: 100% auto;
    background-repeat: no-repeat;
    background-position: center center;
    -webkit-transform: translate(100%, 0);
    transform: translate(100%, 0);
    position: absolute;
    top: 0;
    right: 0;
}

.list-history {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.list-history dt {
    width: 20%;
}

.list-history dd {
    width: 75%;
    margin-left: auto;
    position: relative;
}

.list-history dd+dd {
    margin-top: 15px;
}

.list-history dd::after {
    content: "●";
    display: inline-block;
    font-size: 12px;
    -webkit-transform: translate(50%, 0);
    transform: translate(50%, 0);
    position: absolute;
    top: 0;
    right: -32px;
}

.crossover-cont {
    width: calc(50% + 40px);
    margin-top: -80px;
    margin-bottom: 80px;
    padding: 80px calc(80px + 4%) 80px 0;
    padding-left: calc(50% - 500px);
}

.crossover-img {
    width: calc(50% + 40px);
    margin-left: -80px;
    z-index: 1;
}

.menu-bnr-list li {
    min-height: 140px;
}

.menu-bnr-list li .list-inner a {
    width: 100%;
    height: 100%;
    padding: 10px;
    border: 5px solid #bb9e74;
    position: relative;
}

.menu-bnr-list li .list-inner a .menu-bnr-bgimg {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
}

.menu-bnr-list li .list-inner a .menu-bnr-bgimg::before {
    content: "";
    width: 100%;
    height: 100%;
    display: block;
    background-color: rgba(255, 255, 255, 0.8);
    -webkit-transition: 0.3s linear;
    transition: 0.3s linear;
    position: absolute;
    top: 0;

    -ms-grid-column-align: 0;
    justify-self: 0;
}

.menu-bnr-list li .list-inner a .menu-bnr-title {
    width: 100%;
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    font-family: "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
    text-shadow: rgba(255, 255, 255, 0.6) 1px 1px 0, rgba(255, 255, 255, 0.6) -1px -1px 0, rgba(255, 255, 255, 0.6) -1px 1px 0, rgba(255, 255, 255, 0.6) 1px -1px 0, rgba(255, 255, 255, 0.6) 0px 1px 0, rgba(255, 255, 255, 0.6) 0 -1px 0, rgba(255, 255, 255, 0.6) -1px 0 0, rgba(255, 255, 255, 0.6) 1px 0 0;
    position: relative;
    z-index: 1;
}

.menu-bnr-list li .list-inner a:hover {
    opacity: 1;
}

.menu-bnr-list li .list-inner a:hover .menu-bnr-bgimg::before {
    background-color: transparent;
}

.calc-wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

.calc-cont {
    padding-left: calc(50% - 500px);
}

.table-price {
    font-family: "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
    text-align: center;
}

.table-price tr {
    border-bottom: 1px solid #725438;
}

.table-price tr .text-table-sub,
.table-price tr .title-table,
.table-price tr .size {
    text-align: left;
}

.table-price tr .title-table {
    margin: 5px 0;
    font-size: 18px;
}

.table-price tr .text-table-sub,
.table-price tr .size {
    font-size: 12px;
    color: #171717;
}

.table-price tr th {
    padding: 15px 5px;
}

.table-price tr td {
    font-size: 18px;
}

.table-price tr td .text-table-sub,
.table-price tr td .title-table,
.table-price tr td .size {
    text-align: center;
}

.table-price-w {
    width: 30%;
}

@media (max-width: 1024px) {
    .crossover-cont {
        width: calc(50% + 25px);
        margin-top: -50px;
        margin-bottom: 50px;
        padding: 50px calc(50px + 4%) 50px 0;
        padding-left: 4%;
    }

    .crossover-img {
        width: calc(50% + 25px);
        margin-left: -50px;
    }

    .list-history dt {
        width: 100%;
        margin-bottom: 5px;
        font-weight: bold;
    }

    .list-history dd {
        width: 100%;
        padding-left: 1em;
        font-size: 14px;
    }

    .list-history dd+dd {
        margin-top: 5px;
    }

    .menu-bnr-list li {
        min-height: 120px;
    }

    .menu-bnr-list li .list-inner a {
        padding: 5px;
        border: 3px solid #bb9e74;
    }

    .menu-bnr-list li .list-inner a .menu-bnr-title {
        font-size: 14px;
    }

    .calc-cont {
        padding-left: 2%;
    }

    .table-price tr th {
        padding: 10px 5px;
    }
}

@media (max-width: 599px) {
    .crossover-cont {
        width: 90%;
        margin-top: 0;
        margin-bottom: 0;
        padding: 30px 15px 60px 15px;
        padding-left: 4%;
    }

    .crossover-img {
        width: 90%;
        margin-top: -30px;
        margin-left: auto;
    }
}

/* custom contents */
.cc-wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

.cc-cont {
    width: 70%;
}

.cc-side {
    width: 25%;
}

.cc-side-wrap {
    margin-left: -999rem;
    padding: 50px;
    padding-left: 999rem;
    background-color: #f3efe3;
}

.cc-side-title {
    margin-bottom: 30px;
    font-family: "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
    font-size: 20px;
}

.cc-side-list li a {
    padding-left: 1em;
    color: #171717;
    position: relative;
}

.cc-side-list li a::before {
    content: "■";
    display: inline-block;
    font-size: 50%;
    color: #977249;
    position: absolute;
    top: 0;
    left: 0;
}

.cc-side .archive-list {
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.cc-side .archive-list li {
    width: 48%;
    margin: 1% 1% 20px 1%;
}

.cc-side .archive-list li a {
    font-size: 14px;
}

.list-gallery li {
    border: 2px solid #aba79c;
}

[class^="list-gallery"].-figure .figure {
    width: 100%;
    height: 100%;
    position: relative;
}

[class^="list-gallery"].-figure .caption {
    width: 100%;
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    padding: 10px;
    background-color: rgba(0, 0, 0, 0.6);
    opacity: 0;
    -webkit-transition: 0.3s linear;
    transition: 0.3s linear;
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: 1;
}

[class^="list-gallery"].-figure .caption-title {
    color: white;
}

[class^="list-gallery"].-figure li:hover .caption {
    opacity: 1;
    cursor: pointer;
}

.list-cc li {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.list-cc li .list-cc-thumb {
    width: 25%;
}

.list-cc li .list-cc-thumb a {
    height: 100%;
}

.list-cc li .list-cc-info {
    width: 10%;
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    margin-left: 2%;
}

.list-cc li .title-05 {
    font-size: 18px;
    text-align: left;
}

.list-cc li .btn {
    padding-right: 10px;
    text-align: right;
}

.date {
    color: #171717;
}

.date-gradation {
    margin: 10px 0;
    padding: 2px;
    font-weight: bold;
    font-size: 16px;
    letter-spacing: 2px;
    text-align: center;
    background: #977249;
    /* background: #ff860f; */
    /* background: linear-gradient(45deg, #ff860f 0%, #ff736a 50%, #8f21c9 100%); */
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff860f', endColorstr='#8f21c9', GradientType=1);
}

.date-inner {
    width: 100%;
    height: 100%;
    padding: 10px;
    background-color: white;
}

.title-cc {
    color: #4c4c4c;
}

.category span {
    display: inline-block;
    padding: 3px 10px;
    font-size: 12px;
    color: #171717;
    line-height: 1.2;
    background-color: #f3efe3;
}

.category span+span {
    margin-left: 5px;
}

.detail-box {
    margin: 50px 0;
}

.detail-box p {
    margin-bottom: 20px;
    font-family: ".HiraKakuInterface-W4";
    font-size: 16px;
}

.detail-box .bold {
    font-weight: bold;
}

.detail-box .bold-bg {
    font-weight: bold;
    font-size: 18px;
    background-color: rgb(255, 242, 204);
}

.recommend {
    margin-top: 100px;
    padding-left: 80px;
}

@media (max-width: 1024px) {
    .cc-cont {
        width: 100%;
    }

    .cc-side {
        width: 90%;
        margin-top: 50px;
        margin-right: auto;
    }

    .cc-side-wrap {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        margin-left: -999rem;
        padding: 30px;
        padding-left: 999rem;
    }

    .cc-side-item {
        width: 48%;
        margin: 1%;
    }

    .cc-side-title {
        margin-bottom: 20px;
        font-size: 18px;
    }

    .cc-side .archive-list {
        display: block;
    }

    .cc-side .archive-list li {
        width: 100%;
        margin: 0 0 20px 0;
    }

    .list-cc li .title-05 {
        padding: 5px;
        font-size: 16px;
    }

    .list-cc li .btn {
        font-size: 14px;
    }

    [class^="list-gallery"].-figure .caption {
        height: auto;
        min-height: 50%;
        max-height: 80%;
        padding: 10px;
        background-color: rgba(0, 0, 0, 0.2);
        opacity: 1;
    }

    [class^="list-gallery"].-figure .caption .category span {
        font-size: 10px;
    }

    .date-gradation {
        margin: 5px 0;
    }

    .date-inner {
        padding: 5px;
    }

    .recommend {
        margin-top: 80px;
        padding-left: 60px;
    }
}

@media (max-width: 599px) {
    .cc-side-item {
        width: 100%;
        margin: 0;
    }

    .cc-side-title {
        margin-bottom: 20px;
        font-size: 18px;
    }

    .list-cc li .list-cc-thumb {
        width: 30%;
    }

    .list-cc li .title-05 {
        padding: 2px 5px;
        font-size: 14px;
        border-bottom: 1px solid #aba79c;
    }

    .list-cc li .btn {
        margin-top: 5px;
        font-size: 12px;
    }

    .date {
        font-size: 12px;
    }

    .date-gradation {
        margin: 0 0 5px 0;
        font-size: 12px;
        letter-spacing: 1px;
    }

    .date-inner {
        padding: 2px;
    }

    .title-cc {
        font-size: 14px;
    }

    .category span {
        padding: 2px 5px;
    }

    .recommend {
        padding-left: 30px;
    }
}

/* form */
.must {
    display: inline-block;
    margin-left: 10px;
    padding: 3px 10px;
    font-size: 12px;
    color: white;
    line-height: 1;
    text-align: center;
    background-color: #bb9e74;
}

.contact-item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: start;
    align-items: flex-start;
    -ms-flex-align: start;
}

.contact-item dt {
    width: 20%;
}

.contact-item dd {
    width: 10%;
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    margin-left: 30px;
    color: #171717;
}

.contact-item dd input,
.contact-item dd textarea {
    color: #171717;
    border: none;
}

.radiobtn input {
    width: auto;
}

[class*="radiobtn-"] label {
    -ms-flex-negative: 0;
    flex-shrink: 0;
    margin: 7px 0;
}

.radiobtn label {
    display: inline-block;
    margin-bottom: 10px;
    padding: 0 10px 0 30px;
    position: relative;
}

.radiobtn input {
    display: none;
}

.radiobtn label:hover {
    text-decoration: underline;
    cursor: pointer;
}

.radiobtn label::before {
    content: "";
    width: 20px;
    height: 20px;
    display: block;
    border: 2px solid #dcdcdc;
    border-radius: 50%;
    background-color: #fff;
    position: absolute;
    top: 0;
    left: 0;
}

.radiobtn input:checked+label {
    text-decoration: underline;
}

.radiobtn input:checked+label::after {
    content: "";
    width: 14px;
    height: 14px;
    display: block;
    border-radius: 50%;
    background: #bb9e74;
    position: absolute;
    top: 3px;
    left: 3px;
}

.contact-btns {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
    align-items: center;
    -ms-flex-align: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin-top: 50px;
}

.contact-btns .btn {
    width: auto;
    min-width: 200px;
    margin-top: 15px;
    margin-bottom: 15px;
    margin-left: 30px;
    margin-right: 30px;
    font-size: 14px;
}

.order-box {
    padding: 30px 15px;
    background-color: #f5f5f5;
}

.order-box+.order-box {
    margin-top: 30px;
}

@media (max-width: 1024px) {
    .contact-item dt {
        width: 100%;
    }

    .contact-item dd {
        margin-top: 5px;
        margin-left: 0;
    }

    .contact-btns {
        margin-top: 50px;
    }
}

/* mailorder（メールオーダーアンカーリンク用） */
#mailorder {
  padding-top: 156px;
}


/* lightbox */
.uk-lb img {
    -webkit-transition: 0.3s all ease;
    transition: 0.3s all ease;
}

.uk-lb img:hover {
    cursor: pointer;
}

@media (max-width: 1024px) {
    .list-menu li .btn {
        margin-left: 15px;
    }
}

@media (max-width: 599px) {
    .area-02 .title-06 {
        -webkit-transform: translate(-50%, 0);
        transform: translate(-50%, 0);
    }

    .list-menu li .btn {
        margin-left: auto;
    }
}

/* 見たまま編集 */
[data-element-id] #loading {
    display: none;
}

[data-collection-list-pagination] {
    width: 100%;
}

[data-element-id] header {
    padding-bottom: 30px;
    padding-right: 100px;
    position: relative;
}

[data-element-id] .sp-only {
    display: block;
    border: 1px solid black;
}

[data-element-id] .sp-only::before {
    content: "スマホナビ";
    width: 100%;
    display: block;
    padding: 3px;
    font-size: 10px;
    color: white;
    text-align: center;
    background-color: black;
}

[data-element-id] .drawer-btn {
    display: block;
    position: absolute !important;
    bottom: 0;
    left: 0;
    z-index: 1;
}

[data-element-id] .nav-list {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

[data-element-id] .nav-list li {
    margin: 5px;
}

[data-element-id] .nav-list li a,
[data-element-id] .nav-list li .mega-btn {
    font-size: 14px;
}

[data-element-id] .mega {
    overflow: visible;
    position: static;
}

[data-element-id] .mega .mega-menu {
    width: 250px;
    padding: 20px 10px;
    opacity: 1;
    -webkit-transform: translate(0, 0);
    transform: translate(0, 0);
}

[data-element-id] .mega01 .mega-menu {
    left: 0;
    right: auto;
}

[data-element-id] .mega02 .mega-menu {
    left: auto;
    right: 0;
}

[data-element-id] .mega01 .mega-menu::after {
    content: "職業別写真";
    width: 100%;
    display: block;
    padding: 3px;
    font-size: 10px;
    color: white;
    text-align: center;
    background-color: black;
}

[data-element-id] .mega02 .mega-menu::after {
    content: "スタジオ撮影メニュー";
    width: 100%;
    display: block;
    padding: 3px;
    font-size: 10px;
    color: white;
    text-align: center;
    background-color: black;
}

[data-element-id] .mega-menu-list {
    width: 100%;
    display: block;
}

[data-element-id] .nav-list .mega-menu li {
    width: calc(100% - 10px);
    margin: 5px;
}

[data-element-id] .nav-list .mega02 .mega-menu li:nth-of-type(n+2) {
    display: none;
}

[data-element-id] .icon-nav {
    width: 50px;
    height: 50px;
}

[data-element-id] .cc-side .archive-list {
    display: block;
}

[data-element-id] .infinity {
    margin-left: -30%;
    margin-right: -30%;
    padding-left: 30%;
    padding-right: 30%;
}

[data-element-id] .infinity-left {
    margin-left: -30%;
    padding-left: 30%;
}

[data-element-id] .infinity-right {
    margin-right: -30%;
    padding-right: 30%;
}

[data-element-id] .cc-side-wrap {
    margin-left: -100%;
    padding-left: 100%;
}

[data-element-id] .square-inner.text-editable {
    position: absolute !important;
}

/* 画面下部固定ボタンの設置 */

/* 8/2 */
.icon-mobile::before {
    content: "\f3cd";
    color: white;
    display: inline-block;
    margin-right: 10px;
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    font-size: inherit;
    line-height: 100%;
}
.icon-mail::before {
    content: "\f0e0";
    color: white;
    display: inline-block;
    margin-right: 10px;
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    font-size: inherit;
    line-height: 100%;
}
.footericon{
  display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
    align-items: center;
    -ms-flex-align: center;
    padding: 20px 15px;
    border: 2px solid #aba79c;
    background-color: #e5c68e;
    color: white;
}
.deco{
  padding: 20px 15px;
    border: 2px solid #aba79c;
    background-color: white;
}
.deco2{
  padding: 20px 15px;
    border: 2px solid #aba79c;
    background-color: #977249;
}
.footericon2{
  display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
    align-items: center;
    -ms-flex-align: center;
    padding: 20px 15px;
    border: 2px solid #aba79c;
    background-color: #977249;
    color: white;
}
.disb{
      display: block;
}


@media (max-width: 599px) {
    .hide\@pc {
        display: none;
    }
    .nav-list li {
        width: 50%;
        -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
        order: 2;
    }

}


 #gnavbar{
    position: fixed;
    bottom: 0;
    background: #fff;
    width: 100%;
}

#footer{
        margin-bottom: 113px;
}
 .mrt10{
      margin-top: 10px;
      margin-bottom: 10px;
}


/* 2022.08.02 */

.footer01{
  margin-bottom: 113px;
}
#gnavbar .mega02{
padding: 0;
    height: 65px;
    width: 200px;
    display: flex;
    align-items: center;
    justify-content: center;  
    position: relative;
}

#gnavbar .mega02 a{
  width: 100%;
  height: 100%;
  display: flex;
  align-content: center;
  justify-content: center;
}


#gnavbar .mega02::after{
  display: none !important;
}

#gnavbar .mega02 div{
  width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.icon-mobile::before {
    content: "\f3cd";
    color: white;
    display: inline-block;
    margin-right: 10px;
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    font-size: inherit;
    line-height: 100%;
    position: absolute;
    left: 25px;
    top: 48%;
    transform: translateY(-50%);
}

/* .icon-mail::before {
    content: none;
    color: white;
    display: inline-block;
    margin-right: 10px;
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    font-size: inherit;
    line-height: 100%;
} */

@media (max-width: 1024px) {
.kotei01{
  display: none;
}

/* .icon-mail::before{
  display: none !important;
} */


}

#gnavbar .nav-list li {
      border: none;
    border-radius: 10px;
}

@media only screen and (max-width: 1024px){
  #gnavbar .nav-list{
    flex-direction: row !important;
    justify-content: space-evenly;
  }
  
  #gnavbar .nav-list li{
    width: 48%;
  }
  
  #gnavbar .mega02 {
    padding: 0;
    height: 55px;
    width: 200px;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
}

#gnavbar .nav-list li {
    width: 48%;
    border: none;
    border-radius: 10px;
}

 #gnavbar {
    position: fixed;
    bottom: 5px;
    background: #ffffffab;
    width: 100%;
    padding: 5px 0 5px;
}

#gnavbar .nav-list li{
  margin-top: 0px !important; 
}

.footer01 {
    margin-bottom: 80px;
}


}

@media only screen and (max-width: 599px){
  .footer01 {
    margin-bottom: 75px;
}

.icon-mobile::before{
  top: 50% !important;
}
}

@media only screen and (min-width: 600px) and (max-width: 1024px) {
.icon-mobile::before {
    content: "\f3cd";
    color: white;
    display: inline-block;
    margin-right: 10px;
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    font-size: inherit;
    line-height: 100%;
    position: absolute;
    left: 121px;
    top: 50%;
    transform: translateY(-50%);
}
}

@media only screen and (min-width: 1025px){
  #gnavbar .mega02 div {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 16px;
    font-weight: bold;
    margin-left: 35px;
}

.icon-mail::before {
    content: "\f0e0";
    color: white;
    display: inline-block;
    margin-right: 10px;
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    font-size: inherit;
    line-height: 100%;
    position: absolute;
    left: 35px;
    font-size: 20px;
}

.icon-mobile::before {
    content: "\f3cd";
    color: white;
    display: inline-block;
    margin-right: 10px;
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    font-size: inherit;
    line-height: 100%;
    position: absolute;
    left: 35px;
    top: 49%;
    transform: translateY(-50%);
    font-size: 22px;
}
  
  .mega02.sp-none{
    display: block;
  }
}

@media only screen and (max-width: 1024px){
    .mega02.sp-none{
    display: none;
  }
}

@media only screen and (max-width: 1024px){
  #gnavbar .nav-list li {
    width: 30%;
    border: none;
    border-radius: 10px;
}
}

.tel-another-ite{
  position: relative;
}


.tel-another-item a::before {
    content: "\f879";
    display: inline-block;
    margin-right: 10px;
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    font-size: inherit;
    line-height: 100%;
    position: absolute;
    top: 50%;
    left: 35px;
    transform: translateY(-50%);
}

@media only screen and (max-width: 1024px){
  .icon-mail::before {
    content: "\f0e0";
    color: white;
    display: inline-block;
    margin-right: 10px;
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    font-size: inherit;
    line-height: 100%;
    position: absolute;
}

#gnavbar .mega02 div {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-left: 15px;
    position: relative;
}

.icon-mobile::before {
    top: 50% !important;
    left: 12px;
}

.icon-mail::before {
    content: "\f0e0";
    color: white;
    display: inline-block;
    margin-right: 10px;
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    font-size: inherit;
    line-height: 100%;
    position: absolute;
    left: 12px;
}

.tel-another-item a::before {
    content: "\f879";
    display: inline-block;
    margin-right: 10px;
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    font-size: inherit;
    line-height: 100%;
    position: absolute;
    top: 50%;
    left: 12px;
    transform: translateY(-50%);
}

#gnavbar .nav-list li {
    width: 30%;
    border: none;
    border-radius: 10px;
    font-weight: bold;
}

.footer01 {
    margin-bottom: 75px;
}
}


  .bg-brown{
    background: brown !important;
  }
  
/*   @media only screen and (max-width: 1024px){
    .bg-green{
  background: #499772 !important;
}
} */

    .bg-green{
  background: #499772 !important;
}

  
@media only screen and (min-width: 1025px){
  .mega02.tel-another-item{
   display: none !important; 
  }
  
  [data-element-id].tel-another-item{
   display: flex !important; 
  }
}

.fw-txt{
  font-weight: bold;
}

@media only screen and (max-width: 599px){
  header .nav-list li {
    width: 100%;
    -webkit-box-ordinal-group: 3;
    -ms-flex-order: 2;
    order: 2;
}
}

#gnavbar .nav-list li {
    border: none;
    border-radius: 10px;
    font-weight: bold;
}

.consent input{
  width: 30px !important;
}

.prace-idphoto{
  display: flex;
    justify-content: space-between;
}

.id-photo01 table , .id-photo01 td, .id-photo01 th {
	border: 1px solid #977249;
	border-collapse: collapse;
}
.id-photo01 td, .id-photo01 th {
	padding: 15px 0;
    text-align: center;
    width: 30px;
    height: 25px;
    font-weight: bold;
    margin:10px 0;
    font-size: 16px;
}
.id-photo01 th {
	background: #f0e6cc;
}
.id-photo01 .even {
	background: #fbf8f0;
}
.id-photo01 .odd {
	background: #fefcf9;
}

.id-photo02 table , .id-photo02 td, .id-photo02 th {
	border: 1px solid #595959;
	border-collapse: collapse;
}
.id-photo02 td, .id-photo02 th {
	padding: 15px 0;
    text-align: center;
    width: 30px;
    height: 25px;
    font-weight: bold;
    margin:10px 0;
    font-size: 16px;
}
.id-photo02 th {
	background: #f0e6cc;
}
.id-photo02 .even {
	background: #fbf8f0;
}
.id-photo02 .odd {
	background: #fefcf9;
}

.tusuika-prace table , .tusuika-prace td, .tusuika-prace th {
	border: 1px solid #595959;
	border-collapse: collapse;
}
.tusuika-prace td, .tusuika-prace th {
	padding: 13px 0;
    text-align: center;
    width: 30px;
    height: 25px;
    font-weight: bold;
    margin:10px 0;
    font-size: 14px;
   
}
.tusuika-prace th {
	background: #f0e6cc;
}
.tusuika-prace .even {
	background: #fbf8f0;
}
.tusuika-prace .odd {
	background: #fefcf9;
}

.id-photo01, .id-photo02{
  display: flex;
}

.tusuika-prace{
  display: block;
}
.prace-flex{
  display: flex;
  margin-top: 20px;
}


.w35{
  width: 30%;
  padding: 50px 10px;
    margin-left: 50px;
}

.w65{
  width: 65%;
  padding: 20px 10px;
}

.id-photo01 p, .id-photo02 p{
  width: 15%;
  text-align: center;
    display: flex;
    align-items: center;
    font-size: 18px;
}

.plus, .plus2{
  padding-left: 82px;
    text-align: center;
    font-size: 21px;
    font-weight: bold;
    margin: 5px auto;
}

.joken{
  margin: -16px auto 30px;
  text-align: center;
}

.prace-jikou02{
  padding-bottom: 5rem;
  margin-top: 20px;
  text-align: right;
}

.prace-jikou01{
  margin-top: 20px;
}

@media (max-width: 599px) {
.prace-flex {
    display: block;
    margin-top: 20px;
}

.w65 {
    width: 100%;
    padding: 0px 0px;
}

.id-photo01 p, .id-photo02 p {
    width: 8%;
    text-align: center;
    display: flex;
    align-items: center;
    font-size: 14px;
}

.id-photo01 table, .id-photo01 td, .id-photo01 th {
    width: 85%;
}


.id-photo01 td, .id-photo01 th {
    font-size: 12px;
    white-space: nowrap;
}

.id-photo02 td, .id-photo02 th {
    font-size: 12px;
    white-space: nowrap;
    padding: 15px 2px;
}

.plus, .plus2 {
    padding-left: 54px;
    text-align: center;
    font-size: 16px;
}

.w35 {
    width: 100%;
    padding: 50px 0px;
}

.joken {
    margin: -16px auto 20px;
}

.prace-jikou01 {
    margin-top: 0px;
    line-height: 1.8;
}

.id-photo01 p, .id-photo02 p {
        font-size: 14px;
    }
}



.no-table{
  display: flex;
  justify-content: space-between;
  margin-bottom: 10px;
}

.fs18{
  font-size: 18px;
}

.id-photo01{
    margin-bottom: 10px;
}

.or-none, .or{
  font-size: 16px;
  font-weight: bold;
  text-align: center;
}

.id-photo01 p, .fwb{
  font-weight: bold;
    padding-right: 16px;
}

.or-none{
  border: 1px solid #977249;
  padding: 15px 0px;
    width: 25%;
}

.or{
  width: 3%;
    display: flex;
    align-items: center;
}

.fwb{
  display: flex;
    align-items: center;
}

.tsuika-p{
  width: 30% !important;
}


@media (max-width: 599px) {
.fs18 {
    font-size: 14px;
}

.fwb {
    font-weight: bold;
    padding-right: 0px;
    text-align: center;
}

.or-none, .or {
    font-size: 12px;
}

.or-none {
    border: 1px solid #977249;
    padding: 15px 0px;
    width: 43%;
}

.or {
        width: 8%;
        padding-left: 2px;
        text-align: center;
        white-space: nowrap;
        display: flex;
        align-items: center;
    }
    
.wsn{
      width: 49%;
    }
    
.id-photo01 p{
    font-weight: bold;
    padding-right: 0px;
}

.w35 {
        width: 92%;
        padding: 50px 0px;
        margin: auto;
    }
    
.plus, .plus2 {
        padding-left: 20px;
}
}

/* 2025/02/04 */
.no-table.ver02 .left{
  width: 8%;
}

.no-table.ver02 .right{
  width: 85%;
  display: flex;
  position: relative;
}

.no-table.ver02 .right .or-none{
  width: calc( 100% / 3 );
}

.no-table.ver02 .right .or {
  position: absolute;
  top: 50%;
  left: 32%;
  transform: translateY(-50%);
  background-color: rgba(255,255,255,0.8);
}

.no-table.ver02 .right .or.ver02 {
  left: auto;
  right: 32%;
}

.id-photo01 table.ver02{
  width: 85%;
}

@media(max-width:599px) {
.no-table.ver02 .right .or {
  width: 1.5em;
}

.no-table.ver02 .right {
    width: 92%;
}

.no-table.ver02 .left {
    display: flex;
    align-items: center;
}
}
