@charset "UFT-8";
/* 
使用font 

▶︎Nimbus Sans（ナビ）
 font-family: nimbus-sans, sans-serif;

▶︎Arno Pro Display(英字題名)
 font-family: arno-pro-display, serif;

▶︎Yu Mincho Pr6N（見出し）
font-family: yu-mincho-pr6n, sans-serif;

▶︎Yu Gothic Pr6N（本文）
font-family: yu-gothic-pr6n, sans-serif;

*/


html {
    font-size: 62.5%;
}

body {
    background-color: #F9F8F5;
    font-size: 1.6rem;
    line-height: 1.8;
    font-family: yu-gothic-pr6n, sans-serif;
    color: #333;
    width: 100%;
}

body#toppage {
    background-color: #fff;
}

a {
    text-decoration: none;
    color: #333;
    font-weight: bold;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

a[href^="tel:"] {
    pointer-events: none;
    font-weight: normal;
}

h2 {
    font-family: arno-pro-display, serif;
    color: #A9976D;
    font-weight: normal;
    text-align: center;
    margin-bottom: 40px;
    font-size: 4rem;
}

.wrapper {
    display: flex;
    flex-wrap: wrap;
}

.soudanBtn {
    line-height: 80px;
}

.soudanBtn a {
    background-color: #A9976D;
    border: 1px solid #A9976D;
    color: #FFF;
    display: block;
    padding: 0 20px;
    transition: .6s;
}

.soudanBtn a:hover {
    background-color: #FFF;
    color: #A9976D;
    transition: .6s;
}

.inner {
    max-width: 1200px;
    width: 100%;
    padding: 0 20px;
    margin-right: auto;
    margin-left: auto;
}

.br430 {
    display: none;
}

@media screen and (max-width:834px) {
    body {
        font-size: 1.4rem;
    }

    h2 {
        font-size: 3rem;
    }

    a[href^="tel:"] {
        pointer-events: auto;
    }

    .soudanBtn a {
        border: none;
    }

    .soudanBtn a:hover {
        background-color: #A9976D;
        color: #A9976D;
        color: #FFF;
        transition: .6s;
    }
}

@media screen and (max-width:430px) {
    .br430 {
        display: block;
    }
}


/* opv-------------------------------- */
.contents {
    display: none;
}

#opv-wrap {
    display: none;
}

video.opv {
    position: fixed;
    top: 0;
    left: 0;
    object-fit: cover;
    width: 100vw;
    height: 100vh;
    vertical-align: bottom;
}

video.opv.opv-pc {
    display: block;
}

video.opv.opv-sp {
    display: none;
}

@media screen and (max-width:834px) {
    video.opv.opv-pc {
        display: none;
    }

    video.opv.opv-sp {
        display: block;
    }
}


/* header-------------------------------- */
header {
    height: 80px;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    justify-content: space-between;
    border-bottom: 1px solid #C9CACA;
    background-color: #F9F8F5;
    z-index: 999;
    position: fixed;
    width: 100%;
}

#toppage header {
    backdrop-filter: blur(3px);
    -webkit-backdrop-filter: blur(3px);
    background-color: transparent;
}

header div img {
    padding-left: 10px;
    width: 50px;
    height: auto;
}

header ul li a.current,
nav ul li a.current {
    color: #A9976D;
}

header .soudanBtn {
    line-height: 78px;

}

header .pc_nav ul.wrapper {
    justify-content: center;
    align-items: center;
}

header .pc_nav ul li {
    text-align: center;
}

header .pc_nav ul li a {
    position: relative;
    padding: 5px;
    margin: 0 10px;
    font-family: nimbus-sans, sans-serif;
    font-weight: normal;
}

header .pc_nav ul li a img {
    margin-left: 15px;
    width: 20px;
    height: 20px;
}

header .pc_nav ul>li a::after {
    position: absolute;
    left: 0;
    content: '';
    width: 100%;
    height: 2px;
    background: #A9976D;
    bottom: -1px;
    transform: scale(0, 1);
    transform-origin: right top;
    transition: transform 0.3s;
}

header .pc_nav ul li a:hover::after {
    transform: scale(1, 1);
    transform-origin: left top;
}

header .pc_nav ul li.dropMenu {
    position: relative;
}

header .pc_nav ul.wrapper li.dropMenu .dropMenu_in {
    position: absolute;
    top: 40px;
    width: max-content;
    -webkit-transition: .2s;
    transition: .2s;
    background-color: #fff;
    opacity: 0;
    padding-top: 15px;
    padding-bottom: 15px;
}

header .pc_nav ul.wrapper li.dropMenu:hover .dropMenu_in {
    visibility: visible;
    opacity: 1;
}

header .pc_nav ul.wrapper li.dropMenu .dropMenu_in li {
    width: 100%;
    text-align: left;
}

header .pc_nav ul.wrapper li.dropMenu .dropMenu_in li a {
    display: block;
    font-size: 1.4rem;
}


@media screen and (max-width:834px) {
    #toppage header {
        backdrop-filter: blur(0px);
        -webkit-backdrop-filter: blur(0px);
    }

    header {
        height: 60px;
        background-color: transparent;
        border: none;

    }

    header .pc_nav {
        display: none;
    }

    header .soudanBtn {
        display: none;
    }

    header .soudanBtn a {
        border-radius: 0;
        display: block;
        padding-top: 0;
        padding-bottom: 0%;
    }
}



/* sp_nav-------------------------------- */
nav.sp_nav {
    display: none;
}

@media screen and (max-width:834px) {
    nav.sp_nav {
        display: block;
    }

    /* sp_nav_menu */
    nav.sp_nav .sp_nav_menu {
        position: fixed;
        z-index: 2;
        top: 0;
        left: 0;
        text-align: left;
        background-color: #fff;
        transform: translateY(100%);
        transition: .6s;
        opacity: 0;
        width: 100%;
        height: 100%;
    }

    nav.sp_nav .sp_nav_menu.open {
        opacity: 100;
        display: block;
        transform: translateY(0);
    }

    nav.sp_nav .sp_nav_menu.open div {
        display: block;
    }

    nav.sp_nav .sp_nav_menu div>ul {
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translateY(-50%) translateX(-50%);
        width: 280px;
    }

    nav.sp_nav .sp_nav_menu div>ul>li {
        line-height: 25px;
        margin-top: 20px;
        margin-bottom: 20px;
    }

    nav.sp_nav .sp_nav_menu div>ul>li:first-child {
        margin-top: 0;
    }


    nav.sp_nav .sp_nav_menu div>ul>li>a {
        font-family: nimbus-sans, sans-serif;
        font-weight: normal;
        font-size: 1.6rem;
    }

    nav.sp_nav .sp_nav_menu div ul li a img {
        width: 20px;
        height: 20px;
    }

    nav.sp_nav .sp_nav_menu div ul li.dropMenu .dropMenu_in li {
        margin: 5px;
    }

    nav.sp_nav .sp_nav_menu div ul li.dropMenu .dropMenu_in li a {
        font-size: 1.4rem;
        font-weight: normal;
    }

    /* navBtn */
    nav.sp_nav .navBtn {
        position: fixed;
        bottom: 0;
        left: 0;
        width: 100%;
        height: 80px;
        text-align: center;
        z-index: 999;
        border-top: 1px solid #C9CACA;
        background-color: #fff;
        justify-content: space-between;
    }

    nav.sp_nav .navBtn .navBtn_in {
        width: 80px;
        height: 79px;
        padding: 0 15px;
        -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
        position: fixed;
        bottom: 0;
        left: 0;
        background-color: #333;
    }

    nav.sp_nav .navBtn div.wrapper {
        margin-left: auto;
    }

    nav.sp_nav .navBtn div.wrapper div.cv {
        width: 80px;
        height: 80px;
    }

    nav.sp_nav .navBtn div.wrapper div.cv a {
        line-height: 0.8;
        display: block;
        font-size: 1.2rem;
        height: 80px;
        padding-top: 15px;
    }

    nav.sp_nav .navBtn div.wrapper div.cv a[href^="tel:"] {
        pointer-events: initial;
        font-weight: bold;
    }

    nav.sp_nav .navBtn div.wrapper div.cv a img {
        width: 30px;
        height: 30px;
        margin-left: auto;
        margin-right: auto;

    }

    nav.sp_nav .navBtn .soudanBtn a {
        padding: 0;
        width: 135px;
        line-height: 80px;
    }

    nav.sp_nav .navBtn span {
        display: block;
        position: absolute;
        width: 50px;
        height: 1px;
        background-color: #fff;
        transition: 0.3s ease-in-out;
        z-index: 1000;
        top: 30px;
        transition: .4s;

    }

    nav.sp_nav .navBtn .navBtn_in span:nth-child(2) {
        top: 40px;
    }

    nav.sp_nav .navBtn .navBtn_in span:nth-child(3) {
        top: 50px;
    }

    nav.sp_nav .navBtn .navBtn_in.open span:nth-child(1) {
        top: 40px;
    }

    nav.sp_nav .navBtn .navBtn_in.open span:nth-child(3) {
        top: 40px;
    }

}


/* split-------------------------------- */
.split {
    height: 100%;
}

.split .splitBox {
    width: 50%;
    height: 100vh;
}

@media screen and (max-width:834px) {
    .split .splitBox {
        width: 100%;
        height: calc(100vh - 60px);
    }
}


/* split_left */
.split .split_left {
    position: sticky;
    top: 0;
    left: 0;
}

.split .split_left .top_logo {
    position: absolute;
    bottom: 100px;
    left: 50%;
    transform: translateX(-50%);
}

.split .split_left .top_logo img {
    height: 40px;
}

.split .split_left .img_frame {
    width: 100%;
    height: 100vh;
    position: relative;
    overflow: hidden;
}

.split .split_left .img_frame img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    transition: opacity 2s ease-in-out;
    object-fit: cover;
    object-position: top;
}

.split .split_left .img_frame img.active {
    opacity: 1;
}

.split .split_left .img_frame img:nth-child(2),
.split .split_left .img_frame img:nth-child(3) {
    object-position: 50% 50%;
}

.split .split_left .img_frame img:nth-child(4) {
    object-position: left 50%;
}

@media screen and (max-width:834px) {
    .split .split_left {
        position: static;
        height: calc(100vh - 80px);

    }

    .split .split_left .top_logo {
        bottom: 20%;
    }

}


/* split_right */
.split .split_right {
    margin-left: auto;
    height: 100%;
}

.split .split_right .split_right_bg {
    background-image: url(../img/background.jpg);
    background-position: right;
    background-repeat: no-repeat;
    background-size: cover;
    position: fixed;
    top: 0;
    right: 0;
    height: 100vh;
    width: 50%;
    z-index: -1;
}

.split .split_right .topBox:not(:nth-child(1), :nth-child(2)) {
    text-align: center;
    padding-top: 160px;
    padding-right: 10px;
    padding-left: 10px;
    background-color: transparent;
}

.split .split_right .topBox:last-child {
    margin-bottom: 160px;
}

.split .split_right .topBox .top_inner {
    max-width: 500px;
    width: 100%;
    margin-right: auto;
    margin-left: auto;
}

.split .split_right .topBox.toPage>div div {
    width: 100%;
    height: 600px;
    background-size: cover;
}

.split .split_right .topBox.toPage div p {
    margin-top: 40px;
    margin-bottom: 40px;
}

.split .split_right .topBox.toPage div p span {
    display: inline-block;
}

.split .split_right .topBox.toPage div a {
    font-family: nimbus-sans, sans-serif;
    border-bottom: 1px solid #333;
    padding: 5px;
    transition: .4s;
    font-weight: normal;
}

.split .split_right .topBox.toPage div a:hover {
    border-bottom: 1px solid #A9976D;
    color: #A9976D;
    transition: .4s;
}

@media screen and (max-width:400px) {
    .split .split_right .topBox.toPage div div {
        height: 400px;
    }
}

@media screen and (max-width:834px) {
    .split .split_right .split_right_bg {
        display: none;
    }

    .split .split_right .topBox:not(:nth-child(1), :nth-child(2)) {
        padding-top: 120px;
        padding-right: 20px;
        padding-left: 20px;
    }
}



/* ====topBox_1 */
.split .split_right .topBox_1 {
    position: relative;
    height: 100vh;
    text-align: center;
}

.split .split_right .topBox_1 p {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateY(-50%) translateX(-50%);
    font-family: yu-mincho-pr6n, sans-serif;
    width: 100%;
}

.split .split_right .topBox_1 div {
    position: absolute;
    bottom: 5px;
    left: 50%;
    height: 90px;
}

.split .split_right .topBox_1 div::after {
    content: "";
    position: absolute;
    top: 0;
    width: 1px;
    height: 90px;
    background: #333;
    /*線の動き1.4秒かけて動く。永遠にループ*/
    animation: pathmove 1.4s ease-in-out infinite;
    opacity: 0;
}

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

    30% {
        height: 40px;
        opacity: 1;
    }

    100% {
        height: 0;
        top: 90px;
        opacity: 0;
    }
}

@media screen and (max-width:834px) {

    /* split_right */
    .split .split_right .topBox_1 {
        height: calc(100vh - 140px);
        background-image: url(../img/background.jpg);
        background-position: right;
        background-repeat: no-repeat;
        background-size: cover;
    }

    .split .split_right .topBox_1 div {
        height: 50px;
    }

    .split .split_right .topBox_1 div::after {
        height: 50px;
    }

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

        30% {
            height: 20px;
            opacity: 1;
        }

        100% {
            height: 0;
            top: 50px;
            opacity: 0;
        }
    }
}

/* ====topBox_2 */
.split .split_right .topBox_2>div {
    display: inline-block;
    text-align: left;
}

.split .split_right .topBox_2>div .featuresBox:not(:last-child) {
    margin-bottom: 50px;
}

.split .split_right .topBox_2>div .featuresBox p.num {
    color: #C9CACA;
    font-weight: bold;
    font-size: 1.4rem;
}

.split .split_right .topBox_2>div .featuresBox p.cap {
    font-family: yu-mincho-pr6n, sans-serif;
    font-size: 2rem;
    margin-top: 7px;
    margin-bottom: 12px;
}

.split .split_right .topBox_2>div .featuresBox p.cap span {
    display: inline-block;
    border-bottom: 1px solid #A9976D;
}

.split .split_right .topBox_2>div .featuresBox p.more {
    text-align: right;
    margin-top: 7px;
}

.split .split_right .topBox_2>div .featuresBox p.more a {
    padding: 10px;
    font-family: nimbus-sans, sans-serif;
    font-weight: normal;
    transition: .4s;
}

.split .split_right .topBox_2>div .featuresBox p.more a:hover {
    color: #A9976D;
    transition: .4s;
}

@media screen and (max-width:834px) {
    .split .split_right .topBox_2>div .featuresBox p.num {
        font-size: 1.2rem;
    }

    .split .split_right .topBox_2>div .featuresBox p.cap {
        font-size: 1.8rem;
    }
}


/* ====topBox_3 */
.split .split_right .topBox_3>div a:not(:first-child) {
    margin-top: 30px;
    display: block;
}


/* ====topBox_4 */
.split .split_right .topBox_4>div div {
    background-image: url(../img/plan.jpg);
    border-radius: 250px 250px 0 0;
    background-position: 50% 50%;
}


/* ====topBox_5 */
.split .split_right .topBox_5>div div {
    background-image: url(../img/dress.jpg);
    border-radius: 0;
    background-position: 50% 50%;
}

/* ====topBox_6 */
.split .split_right .topBox_6>div div {
    background-image: url(../img/flow.jpg);
    border-radius: 250px;
    background-position: 50% 50%;
}

/* ====topBox_7 */
.split .split_right .topBox.topBox_7>div div {
    height: auto;
}

@media screen and (max-width:420px) {
    .split .split_right .topBox.topBox_7>div div {
        height: auto;
    }
}

/* footer-------------------------------- */
footer {
    background-color: #F9F8F5;
    padding: 160px 20px 10px;
    text-align: center;
    border-top: 1px solid #C9CACA;
    margin-top: 160px;
}

#toppage footer {
    margin-top: 0;
}

footer div.cv_area {
    position: fixed;
    top: 120px;
    right: 0;
}

footer div.cv_area div.cv {
    width: 80px;
    height: 80px;
    background-color: #fff;
    margin-top: 20px;
    border-radius: 10px 0 0 10px;
}


footer div.cv_area div.cv a {
    line-height: 0.8;
    display: block;
    font-size: 1.2rem;
    padding-top: 15px;
    height: 80px;
    border: 1px solid #fff;
    border-radius: 10px 0 0 10px;
    transition: 0.4s;

}

footer div.cv_area div.cv a:hover {
    border: 1px solid #A9976D;
    transition: 0.4s;

}

footer div.cv_area div.cv a[href^="tel:"] {
    pointer-events: initial;
    font-weight: bold;
}

footer div.cv_area div.cv a img {
    width: 30px;
    height: 30px;
    margin-left: auto;
    margin-right: auto;
}

footer .wrapper {
    justify-content: space-around;
    margin-bottom: 100px;
}

footer .wrapper>div {
    width: 340px;
    text-align: left;
}

footer .wrapper>div:nth-child(2) {
    width: max-content;
}

footer .footer_left img {
    height: 50px;
    width: auto;
    margin-right: auto;
    margin-left: auto;
}

footer .footer_left>ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-top: 50px;
}

footer .footer_left>ul>li {
    margin-top: 10px;
    margin-bottom: 10px;

}

footer .footer_left>ul>li {
    width: 50%;
}

footer .footer_left li a {
    display: block;
    font-family: nimbus-sans, sans-serif;
    padding: 5px;
    font-weight: normal;
}

footer .footer_left li a:hover {
    color: #A9976D;
}

footer .footer_left li a img {
    width: 20px;
    height: 20px;
    margin-right: auto;
    margin-left: 0;
}

footer .footer_left li.dropMenu .dropMenu_in li {
    margin: 5px;
}

footer .footer_left li.dropMenu .dropMenu_in li a {
    font-size: 1.4rem;
    font-weight: normal;
}

footer .footer_right p:not(:first-child) {
    margin-top: 20px;
}

@media screen and (max-width:834px) {
    footer {
        padding-bottom: 90px;
        margin-top: 120px;
        padding-top: 120px;
    }

    footer .footer_right {
        margin-top: 100px;
    }

    footer div.cv_area {
        display: none;
    }
}

/* ====================
ここから下層ページです
======================*/
.under_title {
    margin-bottom: 160px;
    border-bottom: 1px solid #C9CACA;
}

.under_title .split_left>div {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateY(-50%) translateX(-50%);
    text-align: center;
}

.under_title .splitBox>div.sp_title {
    display: none;
}

.under_title .splitBox>div h2 {
    color: #333;
    margin-bottom: 10px;
}

.under_title .splitBox>div p {
    font-family: yu-mincho-pr6n, sans-serif;
}

.under_title .split_right {
    background-size: cover;
    background-repeat: no-repeat;
    height: 100vh;
}

@media screen and (max-width:834px) {
    .under_title {
        margin-bottom: 120px;
    }

    .under_title .splitBox>div.sp_title {
        display: block;
        text-align: left;
        position: absolute;
        bottom: 20%;
        left: 10%;
    }

    .under_title .split_left {
        display: none;
    }

    .under_title .split_right {
        height: calc(100vh - 80px);
    }

    .under_title .split_right>div.sp_title h2 {
        text-align: left;
        color: #fff;
        border-bottom: 1px solid #fff;
    }

    .under_title .split_right>div.sp_title p {
        font-weight: bold;
        color: #fff;
    }

}

/* privacy-------------------------------- */
#privacy .privacy {
    padding-top: 140px;
}

#privacy .privacy h3 {
    margin-top: 40px;
    font-size: 1.8rem;
}

#privacy .privacy p a {
    /* デフォルトスタイルをリセット */
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

#privacy .privacy p a.btn {
    background-color: #fff;
    padding: 5px 10px;
    border: 1px solid #333;
    margin-top: 10px;
    display: inline-block;
}

/* specials-------------------------------- */
#specials .specials {
    padding-top: 160px;
}

#specials .specials .campaign_area:not(:nth-child(2)) {
    padding-top: 100px;

}

#specials .specials .speBox {
    background-color: #fff;
    padding: 60px 20px;
    text-align: center;
    box-shadow: 0 2px 15px 0 rgba(0, 0, 0, .2);
}

#specials .specials .speBox>div:not(:last-child) {
    margin-bottom: 60px;

}

#specials .specials .speBox div img {
    margin-left: auto;
    margin-right: auto;
    max-width: 800px;
    width: 100%;
}

#specials .specials .speBox p span {
    display: inline-block;
}

#specials .specials .speBox .speTitle p {
    font-size: 3rem;
    font-family: yu-mincho-pr6n, sans-serif;
}

#specials .specials .speBox .speTitle p.normalText {
    font-size: 2rem;
    margin-top: 20px;
}

#specials .specials .speBox .speDetail p {
    margin-bottom: 25px;
}

#specials .specials .speBox .speDetail p span.color {
    color: #A9976D;
    font-weight: bold;
}

#specials .specials .speBox .share p:first-child {
    border: 1px solid #333;
    padding: 5px 20px;
    display: inline-block;
}

@media screen and (max-width:834px) {
    #specials .specials .speBox .speTitle p {
        font-size: 2.4rem;
    }

    #specials .specials .speBox .speTitle p.normalText {
        font-size: 1.8rem;
    }
}



/* plan-------------------------------- */
#plan .under_title .split_right {
    background-image: url(../img/plan.jpg);
    background-position: bottom 50%;
}

#plan .plan_menu .menuBox>div {
    align-items: center;
}

#plan .plan_menu .menuBox:not(:first-child) {
    margin-top: 60px;
}

#plan .plan_menu .menuBox>div>div {
    width: 50%;
}

#plan .plan_menu .menuBox>div>div.menu_img img {
    border-radius: 50px;
}

#plan .plan_menu .menuBox>div>div.menu_name {
    position: relative;
    left: -20px;
}

#plan .plan_menu .menuBox>div>div.menu_name p span {
    background-color: #fff;
    display: inline-block;
    padding: 6px 12px;
    font-weight: normal;
    margin-bottom: 10px;
}

#plan .plan_menu .menuBox>div>div.menu_name p span.menu_title {
    font-family: arno-pro-display, serif;
    color: #A9976D;
    font-weight: normal;
    font-size: 4rem;
    padding-top: 0;
    padding-bottom: 0;
}

#plan .plan_menu .menuBox>div>div.menu_name p {}

#plan .plan_menu .menuBox>div>div.menu_name a {
    font-family: nimbus-sans, sans-serif;
    font-weight: normal;
    display: block;
    transition: .4s;
    color: #fff;
    background-color: #000;
    border-radius: 100px;
    margin-top: 20px;
    line-height: 70px;
    width: 70px;
    padding: 0;
    text-align: center;
    border: none;
}

#plan .plan_menu .menuBox>div>div.menu_name a:hover {
    color: #A9976D;
    transition: .3s;
    background-color: #fff;
}

@media screen and (max-width:834px) {
    #plan .plan_menu .menuBox>div {
        justify-content: center;
    }

    #plan .plan_menu .menuBox>div>div {
        width: 100%;
        max-width: 500px;
    }

    #plan .plan_menu .menuBox>div>div.menu_name {
        left: 20px;
        top: -20px;
    }

    #plan .plan_menu .menuBox>div>div.menu_name p span.menu_title {
        font-size: 3rem;
    }

    #plan .plan_menu .menuBox>div>div.menu_name a {
        margin-left: auto;
        margin-right: 20px;
        margin-top: 10px;
    }
}

@media screen and (max-width:430px) {
    #plan .plan_menu .menuBox>div>div.menu_name p span.menu_title {
        font-size: 2.6rem;
    }
}

/* plan_detail-------------------------------- */
#plan_detail .plan_detail {
    padding-top: 160px;
    margin-bottom: 0;
    padding-bottom: 120px;
}

#plan_detail .plan_detail .slider {
    margin-bottom: 60px;
}

#plan_detail .plan_detail .slider .slick-dots {
    bottom: -40px;
    display: block;
}

#plan_detail .plan_detail .slider .slick-slide img {
    filter: grayscale(100%);
}

#plan_detail .plan_detail .slider .slick-center img {
    filter: grayscale(0);
}

#plan_detail .plan_menu .menuBox {
    text-align: center;
    padding-bottom: 160px;
    padding-top: 160px;
    border-bottom: 1px solid #C9CACA;
}

#plan_detail .plan_menu .menuBox .menuTitle img {
    max-width: 600px;
    width: 100%;
    margin-right: auto;
    margin-left: auto;
    margin-bottom: 40px;
}

#plan_detail .plan_menu .menuBox .menuTitle p {
    font-family: yu-mincho-pr6n, sans-serif;
    font-size: 2rem;
}

#plan_detail .plan_menu .menuBox .menuTitle p.price {
    font-size: 3rem;
}

#plan_detail .plan_menu .menuBox .menuTitle p span {
    display: inline-block;
}

#plan_detail .plan_menu .menuBox .menuTitle p.price span {
    font-size: 1.6rem;
}

#plan_detail .plan_menu .menuBox .menuItem {
    margin-top: 40px;
}

#plan_detail .plan_menu .menuBox .menuItem .menuItemBtn {
    width: 120px;
    line-height: 40px;
    padding-left: 20px;
    border-radius: 100px;
    display: inline-block;
    position: relative;
    text-align: left;
    cursor: pointer;
    transition: .3s ease-in-out;
    background-color: #A9976D;
    color: #fff;
}

#plan_detail .plan_menu .menuBox .menuItem .menuItemBtn.is-open {
    background-color: #fff;
    color: #A9976D;
    margin-bottom: 60px;
}

#plan_detail .plan_menu .menuBox .menuItem .menuItemBtn p {
    font-weight: bold;
    font-family: nimbus-sans, sans-serif;
}

#plan_detail .plan_menu .menuBox .menuItem .menuItemBtn span {
    display: inline-block;
    height: 2px;
    width: 12px;
    position: absolute;
    top: 19px;
    right: 20px;
    background-color: #fff;
}

#plan_detail .plan_menu .menuBox .menuItem .menuItemBtn span:nth-child(2) {
    transform: rotate(90deg);
}

#plan_detail .plan_menu .menuBox .menuItem .menuItemBtn.is-open span:nth-child(3) {
    background-color: #A9976D;

}


#plan_detail .plan_menu .menuBox .menuItem .details {
    display: none;
}

#plan_detail .plan_menu .menuBox .menuItem .details ul {
    margin-bottom: 40px;
}

#plan_detail .plan_menu .menuBox .menuItem .details ul li {
    display: inline-block;
    padding: 5px 15px;
    background-color: #F2EFE9;
    margin: 5px;
}

#plan_detail .plan_menu .menuBox .menuItem .details p {
    margin-top: 20px;
}

#plan_detail .other_plan {
    margin-top: 80px;
}

#plan_detail .other_plan div ul {
    justify-content: center;
}

#plan_detail .other_plan div ul li {
    width: 250px;
    line-height: 150px;
    margin: 5px;
    text-align: center;
}

#plan_detail .other_plan div ul li {
    background-image: url(../img/plan/studio.jpg);
    background-position: 50%;
    background-size: cover;
}

#plan_detail .other_plan div ul li:nth-child(2) {
    background-image: url(../img/plan/location.jpg);
    background-position: bottom, 50%;
}

#plan_detail .other_plan div ul li:nth-child(3) {
    background-image: url(../img/plan/movie.jpg);
    background-position: bottom, 50%;
}

#plan_detail .other_plan div ul li a {
    display: block;
    background-color: rgb(000, 000, 000, 0.3);
    color: #fff;
    font-size: 2rem;
    font-weight: normal;
    font-family: nimbus-sans, sans-serif;
}

@media screen and (max-width:834px) {
    #plan_detail .plan_detail {
        padding-bottom: 80px;
    }

    #plan_detail .plan_menu .menuBox {
        padding-bottom: 120px;
        padding-top: 120px;
    }

    #plan_detail .plan_menu .menuBox .menuTitle p {
        font-size: 1.8rem;
    }

    #plan_detail .plan_menu .menuBox .menuTitle p.price {
        font-size: 2.8rem;
    }

    #plan_detail .plan_menu .menuBox .menuTitle p.price span {
        font-size: 1.4rem;
    }

    #plan_detail .other_plan div ul li {
        width: 200px;
        line-height: 100px;
    }

    #plan_detail .other_plan div ul li a {
        font-size: 1.8rem;
    }
}



/* dress-------------------------------- */
#dress .under_title .split_right {
    background-image: url(../img/dress.jpg);
    background-position: 50% 50%;
}

#dress .dress_menu {
    text-align: center;
}

#dress .dress_menu>p {
    padding-bottom: 180px;
    border-bottom: 1px solid #C9CACA;
}

#dress .dress_menu>p span {
    display: inline-block;
}

#dress .dress_menu .dressTab {
    padding-top: 160px;
}

#dress .dress_menu .dressTab li {
    display: inline-block;
    width: 160px;
    margin: 10px 30px;
    background-color: #fff;
    border: 1px solid #fff;
}

#dress .dress_menu .dressTab li a {
    display: block;
    padding: 5px 10px;
    font-family: nimbus-sans, sans-serif;
    font-weight: normal;
}

#dress .dress_menu .dressTab li.active {
    border: 1px solid #A9976D;
}

#dress .dress_menu .dressTab li.active a {
    color: #A9976D;
}

#dress .dress_menu .dressBox {
    padding-top: 100px;
    display: none;
    opacity: 0;
}

#dress .dress_menu .dressBox.is-active {
    display: block;
    opacity: 1;
}


#dress .dress_menu .dressBox ul {
    justify-content: center;
    align-items: top;
}


#dress .dress_menu .dressBox ul li {
    max-width: 300px;
    width: 40%;
    margin: 10px;
}

#dress .dress_menu p.dressTop {
    padding-bottom: 0;
    border-bottom: none;
    padding-top: 100px;
}

#dress .dress_menu p.dressTop a {
    font-weight: normal;
}

@media screen and (max-width:834px) {
    #dress .dress_menu>p {
        padding-bottom: 120px;
    }
}




/* flow-------------------------------- */
#flow .under_title {
    margin-bottom: 0;
}

#flow .under_title .split_right {
    background-image: url(../img/flow.jpg);
    background-position: bottom 50%;
}

#flow .flow_menu {
    background-image: radial-gradient(rgba(255, 255, 255, .7) 0%, rgba(255, 255, 255, .7) 100%), url(../img/flow/background.jpg);
    background-position: 50% 50%;
    background-size: cover;
    text-align: center;
}

#flow .flow_menu .inner .stepber {
    margin: 0 auto;
    display: inline-block;
    text-align: left;
}

#flow .flow_menu .inner .stepber .stepberBox {
    position: relative;
    padding-top: 160px;
}

#flow .flow_menu .inner .stepber .stepberBox:last-child {
    padding-bottom: 160px;
}

#flow .flow_menu .inner .stepber .stepberBox .stepTitle {
    display: inline-flex;
    align-items: center;
}

#flow .flow_menu .inner .stepber .stepberBox .stepTitle .circle {
    display: inline-block;
    width: 15px;
    height: 15px;
    content: "";
    border-radius: 50%;
    background-color: #A9976D;
    border: 1px solid #A9976D;
    z-index: 1;
}

#flow .flow_menu .inner .stepber .stepberBox .stepTitle .num {
    padding-left: 50px;
    color: #C9CACA;
    font-family: nimbus-sans, sans-serif;
}

#flow .flow_menu .inner .stepber .stepberBox .stepTxt {
    padding-left: 65px;
}

#flow .flow_menu .inner .stepber .stepberBox .stepTxt .title {
    font-family: yu-mincho-pr6n, sans-serif;
    font-size: 3rem;
    margin: 10px 0;
}

#flow .flow_menu .inner .stepber .stepberBox .stepLine {
    width: 1px;
    height: 100%;
    background-color: #A9976D;
    position: absolute;
    top: 0;
    left: 7px;
}

#flow footer {
    margin-top: 0;
}

@media screen and (max-width:834px) {
    #flow .flow_menu .inner .stepber .stepberBox {
        padding-top: 120px;
    }

    #flow .flow_menu .inner .stepber .stepberBox:last-child {
        padding-bottom: 120px;
    }

    #flow .flow_menu .inner .stepber .stepberBox .stepTitle .num {
        padding-left: 15px;
    }

    #flow .flow_menu .inner .stepber .stepberBox .stepTxt {
        padding-left: 30px;
    }

    #flow .flow_menu .inner .stepber .stepberBox .stepTxt .title {
        font-size: 2rem;
    }
}


/* access-------------------------------- */
#access .under_title {
    margin-bottom: 0;
}

#access .under_title .split_right {
    background-image: url(../img/access.jpg);
    background-position: 50% 50%;
}

#access .access_menu .accessBox {
    border-bottom: 1px solid #C9CACA;
    padding: 120px 0;
    text-align: center;
}

#access .access_menu .accessBox:first-child {
    background-color: #A9976D;
    color: #fff;
    font-weight: bold;
}

#access .access_menu .accessBox:last-child {
    padding-bottom: 0;
    border-bottom: 0;
}

#access .access_menu .accessBox .title {
    color: #A9976D;
    font-size: 4rem;
    font-family: yu-mincho-pr6n, sans-serif;
}

#access .access_menu .accessBox .tex a {
    font-size: 1.6rem;
    font-weight: normal;
    font-variant-caps: #333;
}

#access .access_menu .accessBox iframe {
    margin-top: 50px;
    max-width: 1000px;
    width: 100%;
}

@media screen and (max-width:834px) {
    #access .access_menu .accessBox {
        padding: 60px 0;
    }

    #access .access_menu .accessBox .title {
        color: #A9976D;
        font-size: 3rem;
        font-family: yu-mincho-pr6n, sans-serif;
    }
}

/* gallery-------------------------------- */
#gallery .under_title .split_right {
    background-image: url(../img/gallery.jpg);
    background-position: 50% top;
}

#gallery .gallery_menu .gTitle {
    font-size: 2rem;
    font-weight: bold;
    text-align: center;
    margin-bottom: 40px;
}

#gallery .gallery_menu .gBox_in:not(:last-child) {
    margin-bottom: 160px;
}

#gallery .gallery_menu .point>div {
    justify-content: space-evenly;
}

#gallery .gallery_menu .point .pointBox {
    text-align: center;
}

#gallery .gallery_menu .point .gTitle {
    margin-bottom: 0;
}

#gallery .gallery_menu .point .pointBox p {
    margin-bottom: 20px;
}

#gallery .gallery_menu .point .pointBox p span {
    display: inline-block;
}

#gallery .gallery_menu .point .pointBox .p_nam {
    font-family: nimbus-sans, sans-serif;
    font-weight: bold;
    font-size: 4rem;
    line-height: 1;
}

#gallery .gallery_menu .point .pointBox .p_nam span {
    font-size: 1.4rem;
    display: block;
}


#gallery .gallery_menu .point .pointBox {
    width: 40%;
    min-width: 300px;
    margin-top: 40px;
}

#gallery .gallery_menu .gallery .gallery_in {
    justify-content: center;
}

#gallery .gallery_menu .gallery .gallery_in a {
    margin: 3px;
}

#gallery .gallery_menu .gallery .gallery_in a img {
    object-fit: cover;
    width: 150px;
    height: 150px;
    object-position: 50% 50%;
}

@media screen and (max-width:834px) {
    #gallery .gallery_menu .gTitle {
        font-size: 1.8rem;

    }

    #gallery .gallery_menu .point .pointBox .p_nam {
        font-size: 3rem;
    }

    #gallery .gallery_menu .point .pointBox .p_nam span {
        font-size: 1.2rem;
    }
}


/* contact-------------------------------- */
#contact .contact_area {
    background-image: radial-gradient(rgba(255, 255, 255, .5) 0%, rgba(255, 255, 255, .5) 100%), url(../img/contact.jpg);
    background-position: 36% top;
    background-size: cover;
    text-align: center;
    padding-top: 160px;
    padding-bottom: 120px;
}

#contact .contact_area .contactTitle p span {
    display: inline-block;
}

#contact .contact_area .btn_all {
    color: #A9976D;
    font-weight: bold;
    max-width: 230px;
    width: 100%;
    line-height: 60px;
    background-color: #fff;
    border: 1px solid #A9976D;
    transition: .3s;
    margin-top: 40px;
    font-size: 1.6rem;
}

#contact .contact_area .btn_all:hover {
    background-color: #A9976D;
    color: #fff;
}

#contact .contact_area .btn_back {
    max-width: 160px;
    line-height: 50px;
    background-color: transparent;
    transition: .3s;

}

#contact .contact_area .btn_back:hover {
    background-color: #333;
}

#contact .contact_area .contact_form p span {
    display: inline-block;
}

#contact .contact_area .contact_form p a {
    font-weight: normal;
    border-bottom: 1px solid #333;
}

#contact .contact_area .contact_form table {
    margin: 80px auto 40px;
    text-align: left;
    width: 100%;
    max-width: 600px;
}

#contact .contact_area .contact_form table a {
    pointer-events: none;
    font-weight: normal;
}

#contact .contact_area .contact_form table tr th {
    width: 180px;
    font-weight: normal;
    padding: 15px 0;
}

#contact .contact_area .contact_form table tr td {
    width: 410px;
    padding: 10px 0;
}

#contact .contact_area .contact_form table tr:last-child td {
    padding-bottom: 0;
}


#contact .contact_area .contact_form table tr td>input,
#contact .contact_area .contact_form table tr td textarea,
#contact .contact_area .contact_form table tr td select,
#contact .contact_area .contact_form table tr td div.answer {
    width: 100%;
    border: 1px solid #A9976D;
    padding-right: 10px;
    padding-left: 10px;
    height: 45px;
    font-size: 1.6rem;
    background-color: #fff;
    color: #333;
    border-radius: 0;

    /* デフォルトスタイルをリセット */
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

#contact .contact_area .contact_form table tr td>input:focus,
#contact .contact_area .contact_form table tr td textarea:focus,
#contact .contact_area .contact_form table tr td select:focus {
    outline: none;
}

input[type="date"]::-webkit-date-and-time-value {
    text-align: left;
}

#contact .contact_area .contact_form table tr td>input.day {
    padding-right: 20px;
}

#contact .contact_area .contact_form table tr td select {
    -webkit-appearance: none;
    appearance: none;
    /* デフォルトの矢印を非表示 */
}

#contact .contact_area .contact_form table tr td select {
    background-image: url(../img/select.png);
    background-position: right 20px center;
    background-repeat: no-repeat;
    background-size: 20px 6px;
}

#contact .contact_area .contact_form table tr td textarea {
    height: 140px;
}



#contact .contact_area .contact_form table tr td label input {
    margin-right: 5px;
}

#contact .contact_area .contact_form table tr td.wrapper {
    align-items: center;
}

#contact .contact_area .contact_form table tr td.wrapper>div:last-child {
    margin-left: 40px;
}

#contact .contact_area .contact_form table tr td input div {
    font-family: yu-gothic-pr6n, sans-serif;
    font-weight: normal;
    text-align: left;
}

#contact .contact_area .contact_form table tr td div.answer {
    border: none;
    padding: 10px;
}


#contact .contact_area .contact_form table tr:last-child td div.answer {
    height: 140px;
}

#contact footer {
    margin-top: 0;
}



@media screen and (max-width:834px) {
    #contact .contact_area {
        padding-bottom: 80px;
    }

    #contact .contact_area .contactTitle.send {
        height: calc(100vh - 140px);
    }

    #contact .contact_area .contact_form table tr th {
        width: 100%;
        display: block;
        font-weight: normal;
        padding: 0;
    }

    #contact .contact_area .contact_form table tr td {
        width: 100%;
        display: block;
        padding: 10px 0 25px;
    }

    #contact .contact_area .contact_form table tr td.wrapper {
        align-items: center;
        display: block;
    }

    #contact .contact_area .contact_form table tr td.wrapper>div {
        display: inline-block;
        font-size: 1.6rem;
    }

    #contact .contact_area .btn_all:hover {
        background-color: #fff;
        color: #A9976D;
    }


    #contact .contact_area .btn_back:hover {
        background-color: transparent;
    }



}