@charset "UTF-8";

/* ==========================================================================
Foundation
========================================================================== */
/* Reset
   ----------------------------------------------------------------- */
/*
html5doctor.com Reset Stylesheet
v1.6.1
Last Updated: 2010-09-17
Author: Richard Clark - http://richclarkdesign.com
Twitter: @rich_clark
*/
html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video {
    margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
    font-size: 100%;
    vertical-align: baseline;
    background: transparent;
}

body {
    line-height: 1;
}

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

ul, ol {
    list-style: none;
}

blockquote, q {
    quotes: none;
}

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

a {
    margin: 0;
    padding: 0;
    font-size: 100%;
    vertical-align: baseline;
    background: transparent;
}

/*! change colours to suit your needs */
ins {
    background-color: #ff9;
    color: #000;
    text-decoration: none;
}

/*! change colours to suit your needs */
mark {
    background-color: #ff9;
    color: #000;
    font-style: italic;
    font-weight: bold;
}

del {
    text-decoration: line-through;
}

abbr[title], dfn[title] {
    border-bottom: 1px dotted;
    cursor: help;
}

table {
    border-collapse: collapse;
    border-spacing: 0;
}

/*! change border colour to suit your needs */
hr {
    display: block;
    height: 1px;
    border: 0;
    border-top: 1px solid #ccc;
    margin: 1em 0;
    padding: 0;
}

input, select {
    vertical-align: middle;
}

main {
    display: block;
}

/* Base
   ----------------------------------------------------------------- */
html {
    font-size: 62.5%;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
}

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

body {
    color: #000;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 400;
    -webkit-font-feature-settings: 'palt';
            font-feature-settings: 'palt';
    line-height: 1;
    word-break: normal;
    word-wrap: break-word;
    -webkit-text-size-adjust: 100%;
    letter-spacing: .05em;
}

@media screen and (max-width: 767px) {
    body {
        font-size: 32px;
        font-size: 4.27vw;
    }
}

@media screen and (min-width: 768px) {
    body {
        font-size: 16px;
        font-size: 1.6rem;
        min-width: 1240px;
        margin: 0 auto;
    }
}

body.is-fixed {
    position: fixed;
    width: 100%;
    height: 100%;
}

a {
    color: #000;
}

a:hover, a:active, a:focus {
    opacity: .8;
    text-decoration: none;
}

p {
    line-height: 1.8;
}

/* フルードイメージにします。 */
img {
    max-width: 100%;
    height: auto;
    vertical-align: middle;
}

/* svgのIEバグ回避 */
img[src$='.svg'] {
    width: 100%;
    height: auto;
}

code, pre {
    font-family: Consolas, Menlo, Courier, monospace;
}

@media screen and (max-width: 1023px) {
    .pc {
        display: none !important;
    }
}

@media screen and (max-width: 767px) {
    .tablet {
        display: none !important;
    }
}

@media screen and (min-width: 1024px) {
    .tablet {
        display: none !important;
    }
}

@media screen and (min-width: 768px) {
    .sp {
        display: none !important;
    }
}

/* Container
   ----------------------------------------------------------------- */
.l-container {
    overflow: hidden;
}

/* Project
----------------------------------------------------------------- */
/* p-container
-------------------------------------------------------------------------- */
@media screen and (min-width: 768px) {
    .p-container {
        overflow: hidden;
    }
}

@media screen and (max-width: 767px) {
    .p-container--page {
        padding-top: 17.33vw;
    }
}

@media screen and (min-width: 768px) {
    .p-container--page {
        padding-top: 95px;
    }
}

/* p-access
-------------------------------------------------------------------------- */
.p-access {
    position: relative;
}

@media screen and (max-width: 767px) {
    .p-access {
        padding-top: 6.67vw;
        padding-bottom: 20vw;
    }
}

@media screen and (min-width: 768px) {
    .p-access {
        padding-top: 25px;
    }
}

@media screen and (max-width: 767px) {
    .p-access::after {
        position: absolute;
        top: 0;
        right: 0;
        display: block;
        content: '';
        width: 40vw;
        height: 106.66667vw;
        z-index: -1;
        background: #f8f1e3;
    }
}

@media screen and (min-width: 768px) {
    .p-access::after {
        position: absolute;
        top: 0;
        right: 0;
        display: block;
        content: '';
        width: 40.36%;
        height: 750px;
        z-index: -1;
        background: #f8f1e3;
    }
}

@media screen and (max-width: 767px) {
    .p-access__heading {
        margin-bottom: 10.67vw;
    }
}

@media screen and (min-width: 768px) {
    .p-access__heading {
        margin-bottom: 40px;
    }
}

.p-access__map {
    width: 100%;
}

@media screen and (max-width: 767px) {
    .p-access__map {
        height: 117.33333vw;
        margin-bottom: 5.33vw;
    }
}

@media screen and (min-width: 768px) {
    .p-access__map {
        margin-bottom: 20px;
        height: 510px;
    }
}

@media screen and (min-width: 768px) {
    .p-access__content {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center;
    }
}

.p-access__label {
    text-align: center;
    background: #f8f1e3;
}

@media screen and (max-width: 767px) {
    .p-access__label {
        padding: 5.33vw 0vw 5.33vw 0vw;
        margin-bottom: 5.33vw;
    }
}

@media screen and (min-width: 768px) {
    .p-access__label {
        margin-right: 16.66%;
        width: 240px;
        height: 50px;
        line-height: 50px;
    }
}

.p-access__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

@media screen and (max-width: 767px) {
    .p-access__item {
        width: 46%;
        margin-right: 8%;
        margin-top: 4vw;
    }
}

@media screen and (min-width: 768px) {
    .p-access__item {
        margin-right: 60px;
    }
}

@media screen and (max-width: 767px) {
    .p-access__item:nth-child(-n+2) {
        margin-top: 0;
    }
}

@media screen and (max-width: 767px) {
    .p-access__item:nth-child(2n) {
        margin-right: 0;
    }
}

/* Component
----------------------------------------------------------------- */
/* button
-------------------------------------------------------------------------- */
.c-button {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
    padding: 0;
    cursor: pointer;
    text-align: center;
    text-decoration: none;
    border: none;
    border-color: transparent;
    background-color: transparent;
    outline: none;
    -webkit-transition: .3s ease;
    transition: .3s ease;
}

.c-button--more {
    color: #fff;
    background-color: transparent;
    font-family: 'Josefin Sans', sans-serif;
    font-weight: 400;
}

@media screen and (max-width: 767px) {
    .c-button--more {
        width: 45.33333vw;
        height: 8vw;
        font-size: 28px;
        font-size: 3.73vw;
        padding-top: 1.33vw;
        border: .26667vw solid #fff;
    }
}

@media screen and (min-width: 768px) {
    .c-button--more {
        border: 1px solid #fff;
        width: 260px;
        height: 40px;
        padding-top: 5px;
    }
}

@media screen and (min-width: 768px) {
    .c-button--more:hover {
        opacity: 1;
        color: #5d330d;
        background: #fff;
    }
}

@media screen and (min-width: 768px) {
    .c-button__wrap {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center;
        -webkit-box-pack: spacebetween;
            -ms-flex-pack: spacebetween;
                justify-content: spacebetween;
    }
}

.c-button--more2btn {
    color: #fff;
    background-color: transparent;
    font-weight: 400;
}

@media screen and (max-width: 767px) {
    .c-button--more2btn {
        width: 45.33333vw;
        height: 8vw;
        font-size: 28px;
        font-size: 3.73vw;
        margin-bottom: 2vw;
        border: .26667vw solid #fff;
    }
}

@media screen and (min-width: 768px) {
    .c-button--more2btn {
        border: 1px solid #fff;
        width: 48%;
        height: 40px;
    }
}

@media screen and (min-width: 768px) {
    .c-button--more2btn:hover {
        opacity: 1;
        color: #5d330d;
        background: #fff;
    }
}

@media screen and (max-width: 767px) {
    .c-button--more2btn:last-child {
        margin-bottom: 0;
    }
}

@media screen and (max-width: 767px) {
    .c-button--large {
        padding: 4.8vw 0vw 4.8vw 0vw;
        line-height: 1.4;
    }
}

@media screen and (min-width: 768px) {
    .c-button--large {
        font-size: 20px;
        font-size: 2rem;
        padding: 19px 0;
    }
}

@media screen and (max-width: 767px) {
    .c-button--large .c-button__arrow {
        margin-left: .5em;
        font-size: 40px;
        font-size: 5.33vw;
    }
}

@media screen and (min-width: 768px) {
    .c-button--large .c-button__arrow {
        margin-left: 1em;
        font-size: 30px;
        font-size: 3rem;
    }
}

.c-button--secondary {
    background-color: #f8f1e3;
}

@media screen and (max-width: 767px) {
    .c-button--secondary {
        border: .26667vw solid #f8f1e3;
    }
}

@media screen and (min-width: 768px) {
    .c-button--secondary {
        border: 1px solid #f8f1e3;
    }
}

@media screen and (min-width: 768px) {
    .c-button--secondary:hover {
        background-color: #fff;
    }
}

.c-button--register {
    color: #fff;
    background: #5cb563;
}

.c-button--login {
    color: #5cb563;
    background: #fff;
}

@media screen and (min-width: 768px) {
    .c-button--login {
        border: 1px solid #5cb563;
    }
}

.c-button__arrow {
    display: inline-block;
    line-height: 1;
}

.c-button__arrow--more {
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
}

@media screen and (max-width: 767px) {
    .c-button__arrow--more {
        right: 2.67vw;
        margin-top: .27vw;
        font-size: 50px;
        font-size: 6.67vw;
    }
}

@media screen and (min-width: 768px) {
    .c-button__arrow--more {
        right: 20px;
        font-size: 30px;
        font-size: 3rem;
    }
}

.c-button__arrow--more2btn {
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
}

@media screen and (max-width: 767px) {
    .c-button__arrow--more2btn {
        right: .67vw;
        margin-top: .27vw;
        font-size: 35px;
        font-size: 4.67vw;
    }
}

@media screen and (min-width: 768px) {
    .c-button__arrow--more2btn {
        right: 5px;
        font-size: 15px;
        font-size: 1.5rem;
    }
}

/* formbtn
   ----------------------------------------------------------------- */
.formbtn {
    font-size: 30px;
    font-size: 3.0rem;
    text-align: center;
    line-height: 1.3;
    background: #f8f1e3;
    text-decoration: none;
    padding: 20px 40px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.formbtn .c-link__arrow {
    font-size: 40px;
    font-size: 4rem;
}

@media screen and (max-width: 767px) {
    .formbtn {
        font-size: 18px;
        font-size: 1.8rem;
        padding: 10px 15px;
    }
}

/* nextbtn
   ----------------------------------------------------------------- */
.nextbtn {
    font-size: 30px;
    font-size: 3.0rem;
    text-align: center;
    line-height: 1.3;
    background: #5d330d;
    color: #fff;
    text-decoration: none;
    padding: 20px 40px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    width: 100%;
}

.nextbtn .c-link__arrow {
    font-size: 40px;
    font-size: 4rem;
}

@media screen and (max-width: 767px) {
    .nextbtn {
        font-size: 18px;
        font-size: 1.8rem;
        padding: 10px 15px;
    }
}

.btnArea {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    width: 100%;
    margin-top: 60px;
}

@media (min-width: 751px) {
    a[href*='tel:'] {
        pointer-events: none;
        cursor: default;
        text-decoration: none;
    }
}

.member_box {
    width: 100%;
    display: block;
    position: absolute;
    left: 0;
    bottom: 15px;
}

.member_box__in {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
}

@media screen and (max-width: 767px) {
    .member_box__in {
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
        -webkit-box-pack: end;
            -ms-flex-pack: end;
                justify-content: flex-end;
    }
}

/* p-formNavigation
-------------------------------------------------------------------------- */
@media screen and (max-width: 767px) {
    .p-formNavigation {
        width: 100%;
        margin-bottom: 5px;
    }
}

.p-formNavigation__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

@media screen and (max-width: 767px) {
    .p-formNavigation__list {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center;
        -webkit-box-pack: justify;
            -ms-flex-pack: justify;
                justify-content: space-between;
        width: 100%;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    }
}

.p-formNavigation__item {
    margin-top: 0;
}

@media screen and (max-width: 767px) {
    .p-formNavigation__item {
        width: 100%;
        margin-right: 2%;
        margin-top: 4vw;
    }
}

@media screen and (min-width: 768px) {
    .p-formNavigation__item {
        margin-right: 60px;
    }
}

@media screen and (max-width: 767px) {
    .p-formNavigation__item:nth-child(3n) {
        margin-right: 0;
    }
}

/* p-memberNavigation
-------------------------------------------------------------------------- */
@media screen and (max-width: 767px) {
    .p-memberNavigation {
        width: 100%;
        margin-bottom: 5px;
    }
}

.p-memberNavigation__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

@media screen and (max-width: 767px) {
    .p-memberNavigation__list {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center;
        -webkit-box-pack: justify;
            -ms-flex-pack: justify;
                justify-content: space-between;
        width: 100%;
    }
}

.p-memberNavigation__item {
    margin-top: 0;
}

@media screen and (max-width: 767px) {
    .p-memberNavigation__item {
        width: 31%;
        margin-right: 2%;
        margin-top: 4vw;
        font-size: 15px;
    }
}

@media screen and (min-width: 768px) {
    .p-memberNavigation__item {
        margin-right: 60px;
    }
}

@media screen and (max-width: 767px) {
    .p-memberNavigation__item:last-child {
        width: 33%;
    }
}

@media screen and (min-width: 768px) {
    .p-memberNavigation__item:last-child {
        margin-right: 0;
    }
}

@media screen and (max-width: 767px) {
    .p-memberNavigation__item:nth-child(3n) {
        margin-right: 0;
    }
}

/* p-realdetail
-------------------------------------------------------------------------- */
.p-realdetail__inner {
    position: relative;
}

@media screen and (min-width: 768px) {
    .p-realdetail__inner {
        max-width: 1200px;
        margin-left: auto;
        margin-right: auto;
    }
}

.p-realdetail__container {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

@media screen and (max-width: 767px) {
    .p-realdetail__container {
        background-color: #f8f1e3;
        padding: 10px 0;
    }
}

@media screen and (min-width: 768px) {
    .p-realdetail__container {
        width: 100%;
    }
}

@media screen and (min-width: 768px) {
    .p-realdetail__container::after {
        position: absolute;
        top: 0;
        left: 50%;
        -webkit-transform: translateX(-50%);
                transform: translateX(-50%);
        display: block;
        content: '';
        width: 500%;
        height: 100%;
        background-color: #f8f1e3;
        z-index: -1;
    }
}

@media screen and (max-width: 767px) {
    .p-realdetail__container {
        background-color: #f8f1e3;
    }
}

.p-realdetail__container2 {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

.p-realdetail__container2 .p-realdetail__jp {
    color: #fff;
}

@media screen and (max-width: 767px) {
    .p-realdetail__container2 {
        background-color: #9e856e;
        padding: 20px 0 15px;
    }
    .p-realdetail__container2 .p-realdetail__jp {
        margin-top: 15px;
        color: #fff;
    }
}

@media screen and (min-width: 768px) {
    .p-realdetail__container2 {
        width: 100%;
    }
}

@media screen and (min-width: 768px) {
    .p-realdetail__container2::after {
        position: absolute;
        top: 0;
        left: 50%;
        -webkit-transform: translateX(-50%);
                transform: translateX(-50%);
        display: block;
        content: '';
        width: 500%;
        height: 100%;
        background-color: #9e856e;
        z-index: -1;
    }
}

@media screen and (max-width: 767px) {
    .p-realdetail__container2 {
        background-color: #9e856e;
    }
}

@media screen and (max-width: 767px) {
    .p-realdetail__logo {
        width: 29.33333vw;
    }
}

@media screen and (min-width: 768px) {
    .p-realdetail__logo {
        width: 175px;
    }
}

.p-realdetail__logo img {
    width: 100%;
    height: auto;
}

.p-realdetail__heading {
    text-align: center;
}

@media screen and (max-width: 767px) {
    .p-realdetail__heading {
        -webkit-box-flex: 1;
            -ms-flex: 1;
                flex: 1;
    }
}

@media screen and (min-width: 768px) {
    .p-realdetail__heading {
        -webkit-box-flex: 1;
            -ms-flex: 1;
                flex: 1;
        padding: 23px 0 23px;
    }
}

.p-realdetail__en {
    display: inline-block;
    width: 100%;
    color: #5d330d;
    background-color: #fff;
    font-weight: 400;
}

@media screen and (max-width: 767px) {
    .p-realdetail__en {
        font-size: 50px;
        font-size: 9vw;
        padding: 4vw 0vw 2vw;
        padding: 4vw 0vw 2vw;
    }
}

@media screen and (min-width: 768px) {
    .p-realdetail__en {
        margin-bottom: 20px;
        padding: 14px 0 0 24px;
        font-size: 46px;
        font-size: 4.6rem;
        letter-spacing: .05em;
    }
}

@media screen and (min-width: 768px) {
    .p-realdetail__en .jp {
        font-family: 'Noto Sans JP', sans-serif;
        font-size: 42px;
        font-size: 4.2rem;
        display: inline-block;
    }
}

@media screen and (max-width: 767px) {
    .p-realdetail__en .jp {
        font-weight: normal;
        font-size: 7vw;
    }
}

.p-realdetail__jp {
    display: inline-block;
    font-weight: normal;
    line-height: 1.5;
}

@media screen and (max-width: 767px) {
    .p-realdetail__jp {
        margin-top: 1.33vw;
        font-size: 16px;
        font-size: 1.6rem;
    }
}

@media screen and (min-width: 768px) {
    .p-realdetail__jp {
        padding-left: 18px;
        font-size: 24px;
        font-size: 2.4rem;
    }
}

.p-realdetail__jp img {
    width: 24px;
    height: 24px;
    margin-right: 10px;
    margin-bottom: 5px;
}

@media screen and (max-width: 767px) {
    .p-realdetail__images {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: justify;
            -ms-flex-pack: justify;
                justify-content: space-between;
    }
}

.p-realdetail__image {
    display: inline-block;
}

@media screen and (max-width: 767px) {
    .p-realdetail__image {
        width: 50%;
    }
}

@media screen and (min-width: 768px) {
    .p-realdetail__image {
        position: absolute;
    }
}

.p-realdetail__image img {
    width: 100%;
}

@media screen and (max-width: 767px) {
    .p-realdetail__image img {
        height: 53.33333vw;
    }
}

@media screen and (min-width: 768px) {
    .p-realdetail__image img {
        height: 500px;
    }
}

@media screen and (min-width: 768px) {
    .p-realdetail__image img {
        height: auto;
    }
}

@media screen and (min-width: 768px) {
    .p-realdetail__image--small {
        top: -18px;
        width: 240px;
        right: 300px;
    }
}

@media screen and (min-width: 768px) {
    .p-realdetail__image--large {
        top: -70px;
        right: 0;
        width: 320px;
    }
}

@media screen and (max-width: 767px) {
    .p-realdetail__text {
        margin-top: 2.67vw;
        margin-left: 2.67vw;
        margin-right: 2.67vw;
    }
}

@media screen and (min-width: 768px) {
    .p-realdetail__text {
        margin-top: 10px;
        margin-left: 20px;
    }
}

/* sort-area
-------------------------------------------------------------------------- */
.sort-area {
    color: #fff;
    background: rgba(93, 51, 13, .6);
}

@media screen and (max-width: 767px) {
    .sort-area {
        padding: 15px 0;
    }
}

.sort-area__content {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    height: 60px;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
}

@media screen and (max-width: 767px) {
    .sort-area__content {
        height: auto;
    }
}

.sort-area__margin {
    margin: 60px 0 60px;
}

.sort-area__btn {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    max-width: 600px;
    height: 100%;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
}

.sort-area__btn a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 150px;
    text-decoration: none;
    color: #fff;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
}

@media screen and (max-width: 767px) {
    .sort-area__btn a {
        font-size: 18px;
        font-size: 1.8rem;
        width: 27%;
        margin-top: 20px;
    }
}

.sort-area__btn a img {
    margin-left: 10px;
    width: 20px;
    height: 12px;
    color: #fff;
}

.sort-area__btn p {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-right: 30px;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
}

@media screen and (max-width: 767px) {
    .sort-area__btn p {
        width: 100%;
        height: 30px;
        margin-right: 0;
    }
}

.sort-area__btn p span {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 80px;
    height: 30px;
    color: #fff;
    border: 1px solid #fff;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    line-height: 1em;
}

@media screen and (max-width: 767px) {
    .sort-area__btn p span {
        width: 100%;
        height: 30px;
    }
}

/* checkArea
-------------------------------------------------------------------------- */
.checkArea {
    background: #f8f1e3;
    width: 100%;
}

.check-area {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    height: 60px;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
}

@media screen and (max-width: 767px) {
    .check-area {
        height: auto;
    }
}

.check-area__select {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
}

.check-area__select input[type='checkbox'] {
    margin-right: 10px;
    margin-left: 20px;
}

.check-area__select div {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
}

.check-area__select div select {
    font-size: 16px;
    font-size: 1.6rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 80px;
    height: 30px;
    background: #fff;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
}

@media screen and (max-width: 767px) {
    .check-area__select {
        width: 100%;
        margin: 20px 0;
    }
}

.check-area__content {
    display: block;
    width: 100%;
}

@media screen and (max-width: 767px) {
    .check-area__content {
        height: auto;
        margin: 0;
    }
}

.check-area__btn {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    text-align: center;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
}

.check-area__btn p {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    margin-left: 10px;
}

@media screen and (max-width: 767px) {
    .check-area__btn p {
        width: 100%;
        height: auto;
        margin-right: 0;
    }
    .check-area__btn p:last-child {
        width: 95%;
        height: auto;
        margin: 0 auto 20px;
        -webkit-box-pack: justify;
            -ms-flex-pack: justify;
                justify-content: space-between;
    }
}

.check-area__btn p span {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
}

@media screen and (max-width: 767px) {
    .check-area__btn p span {
        width: 100%;
        height: 30px;
    }
}

.check-area__btn p a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 155px;
    height: 40px;
    text-decoration: none;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    margin-left: 20px;
    cursor: pointer;
}

@media screen and (max-width: 767px) {
    .check-area__btn p a {
        margin-left: 0;
        font-size: 18px;
        font-size: 1.8rem;
        width: 49%;
        margin-top: 20px;
    }
}

.check-area__btn p a:first-of-type {
    margin-right: 10px;
}

@media screen and (max-width: 767px) {
    .check-area__btn p a:first-of-type {
        margin-right: 0;
    }
}

.c-checkBtn__btn--m {
    font-size: 16px;
    font-size: 1.6rem;
    height: 40px;
    border: solid 2px #ddd;
    background: #fff;
}

.blown_back {
    background-color: #f8f1e3;
    padding-top: 60px;
    padding-bottom: 60px;
}

@media screen and (max-width: 1023px) {
    .pc {
        display: none !important;
    }
}

@media screen and (max-width: 767px) {
    .tablet {
        display: none !important;
    }
}

@media screen and (min-width: 1024px) {
    .tablet {
        display: none !important;
    }
}

@media screen and (max-width: 767px) {
    .tb {
        display: none !important;
    }
}

@media screen and (min-width: 1024px) {
    .tb {
        display: none !important;
    }
}

@media screen and (min-width: 768px) {
    .sp {
        display: none !important;
    }
}

@media screen and (max-width: 767px) {
    .pc_tb {
        display: none !important;
    }
}

@media screen and (min-width: 1024px) {
    .sp_tb {
        display: none !important;
    }
}

.checkbox-input {
    display: none;
}

.checkbox-input:checked + .checkbox-parts {
    background: #f8f1e3;
}

.checkbox-input:checked + .checkbox-parts::after {
    position: absolute;
    top: 5px;
    left: 15px;
    display: block;
    width: 10px;
    height: 20px;
    content: '';
    -webkit-transform: rotate(40deg);
            transform: rotate(40deg);
    border-right: 3px solid #000;
    border-bottom: 3px solid #000;
}

.checkbox-input:checked + .checkbox-parts2::after {
    position: absolute;
    top: 0;
    right: 0;
    left: 15px;
    display: block;
    width: 10px;
    height: 20px;
    content: '';
    -webkit-transform: rotate(40deg);
            transform: rotate(40deg);
    border-right: 3px solid #000;
    border-bottom: 3px solid #000;
}

.checkbox-input:checked + .checkbox-parts3 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
}

.checkbox-input:checked + .checkbox-parts3::after {
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    display: block;
    width: 10px;
    height: 20px;
    margin: auto;
    content: '';
    -webkit-transform: rotate(40deg);
            transform: rotate(40deg);
    border-right: 3px solid #000;
    border-bottom: 3px solid #000;
}

.checkbox-parts {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    margin-right: 20px;
    padding: 0;
    padding-left: 20px;
    cursor: pointer;
    -webkit-transition: .3s ease;
    transition: .3s ease;
    text-align: center;
    text-decoration: none;
    border: none;
    border-color: transparent;
    outline: none;
    background: #fff;
    background-color: transparent;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
}

.checkbox-parts::before {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 10px;
    display: block;
    width: 20px;
    height: 20px;
    margin: auto;
    content: '';
    border: 1px solid #d4d4d4;
    background: #fff;
}

.checkbox-parts__none {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    height: 30px;
    padding: 0;
    -webkit-transition: .3s ease;
    transition: .3s ease;
    background: #e3d1a3;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
}

.checkbox-parts2 {
    position: relative;
    padding: 0;
    cursor: pointer;
    -webkit-transition: .3s ease;
    transition: .3s ease;
}

.checkbox-parts2::before {
    position: relative;
    top: 4px;
    display: inline-block;
    width: 20px;
    height: 20px;
    margin: 0 10px;
    content: '';
    border: 1px solid #d4d4d4;
    background: #fff;
}

.checkbox-parts3 {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    height: 30px;
    padding: 0;
    cursor: pointer;
    -webkit-transition: .3s ease;
    transition: .3s ease;
    background: #e3d1a3;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
}

.checkbox-parts3::before {
    position: relative;
    top: 0;
    display: inline-block;
    width: 20px;
    height: 20px;
    margin: 0 10px;
    content: '';
    border: 1px solid #d4d4d4;
    background: #fff;
}

.checkbox-parts4 {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    height: 30px;
    padding: 0;
    cursor: pointer;
    -webkit-transition: .3s ease;
    transition: .3s ease;
    background: #e3d1a3;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
}

.st-select {
    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;
}

.st-select__content2 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    margin-bottom: 30px;
    background: #fff;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    padding-bottom: 15px;
}

@media screen and (max-width: 767px) {
    .st-select__content2 {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        width: 100%;
        height: auto;
        margin-top: 0;
        margin-bottom: 30px;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    }
}

.st-select__content {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 48.6%;
    margin-bottom: 25px;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
}

@media screen and (max-width: 767px) {
    .st-select__content {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        width: 100%;
        height: auto;
        margin-bottom: 30px;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    }
}

.st-select__content-select {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 64%;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
}

@media screen and (max-width: 767px) {
    .st-select__content-select {
        width: 90%;
        margin: 0 auto 20px;
    }
}

.st-select__content-select2 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 82%;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
}

@media screen and (max-width: 767px) {
    .st-select__content-select2 {
        width: 90%;
        margin: 0 auto 20px;
    }
    .st-select__content-select2 p {
        font-size: 1.6rem;
        margin-top: 10px;
        display: inline-block;
        margin-left: 5px;
    }
    .st-select__content-select2 ul {
        width: 100%;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    }
    .st-select__content-select2 li {
        display: block;
        width: 50%;
        margin-bottom: 20px;
    }
    .st-select__content-select2 li:first-of-type {
        display: block;
        margin-bottom: 20px;
    }
}

.st-select__content-select2 div {
    width: 100%;
}

.st-select__content-select2 p {
    display: inline-block;
    margin-left: 10px;
}

.st-select__content-select2 ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin: 15px 0 10px;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
}

.st-select__content-select3 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 82%;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
}

@media screen and (max-width: 767px) {
    .st-select__content-select3 {
        width: 90%;
        margin: 0 auto 20px;
    }
}

.st-select__content-select3 div {
    width: 100%;
}

.st-select__content-select3 p {
    display: inline-block;
    margin-left: 10px;
}

@media screen and (max-width: 767px) {
    .st-select__content-select3 p {
        font-size: 1.4rem;
        display: inline-block;
        margin-left: 5px;
    }
}

.st-select__content-select3 ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin: 20px 0;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
}

@media screen and (max-width: 767px) {
    .st-select__content-select3 ul {
        width: 100%;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    }
}

.st-select__content-select3 ul li {
    margin-right: 13%;
}

@media screen and (max-width: 767px) {
    .st-select__content-select3 ul li {
        display: block;
        width: 100%;
        margin-bottom: 20px;
    }
}

.st-select__content-title {
    font-weight: bold;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 30%;
    height: 60px;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
}

@media screen and (max-width: 767px) {
    .st-select__content-title {
        font-weight: bold;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        width: 100%;
        height: 60px;
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center;
        -webkit-box-pack: center;
            -ms-flex-pack: center;
                justify-content: center;
    }
}

.st-select__content-title2 {
    font-weight: bold;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 15%;
    height: 60px;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
}

@media screen and (max-width: 767px) {
    .st-select__content-title2 {
        font-weight: bold;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        width: 100%;
        height: 60px;
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center;
        -webkit-box-pack: center;
            -ms-flex-pack: center;
                justify-content: center;
    }
}

.st-select__content-title3 {
    font-weight: bold;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 15%;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
}

@media screen and (max-width: 767px) {
    .st-select__content-title3 {
        width: 100%;
        height: 60px;
    }
}

/* btn
-------------------------------------------------------------------------- */
.c-btn {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
    padding: 0;
    width: 100%;
    cursor: pointer;
    font-weight: bold;
    text-align: center;
    text-decoration: none;
    border: none;
    border-color: transparent;
    background-color: transparent;
    outline: none;
    -webkit-transition: .3s ease;
    transition: .3s ease;
}

.c-btn--primary {
    -webkit-transition: .3s ease;
    transition: .3s ease;
}

@media screen and (max-width: 767px) {
    .c-btn--primary {
        border: .53333vw solid #000;
    }
}

@media screen and (min-width: 768px) {
    .c-btn--primary {
        border: 2px solid #000;
    }
}

.c-btn--primary:hover {
    opacity: 1;
    color: #fff;
    background: #000;
}

.c-btn--secondary {
    -webkit-transition: .3s ease;
    transition: .3s ease;
}

@media screen and (max-width: 767px) {
    .c-btn--secondary {
        border: .53333vw solid #f8f1e3;
    }
}

@media screen and (min-width: 768px) {
    .c-btn--secondary {
        border: 2px solid #f8f1e3;
    }
}

.c-btn--arrow2::after {
    position: absolute;
    content: '';
    display: block;
    top: 50%;
    -webkit-transform-origin: center;
            transform-origin: center;
    -webkit-transform: translateY(-50%) rotate(45deg);
            transform: translateY(-50%) rotate(45deg);
}

@media screen and (max-width: 767px) {
    .c-btn--arrow2::after {
        right: 4vw;
        width: 2.66667vw;
        height: 2.66667vw;
        border-top: .53333vw solid #000;
        border-right: .53333vw solid #000;
    }
}

@media screen and (min-width: 768px) {
    .c-btn--arrow2::after {
        right: 20px;
        width: 12px;
        height: 12px;
        border-top: 3px solid #000;
        border-right: 3px solid #000;
    }
}

.c-btn--arrow2:hover::after {
    border-color: #fff;
}

/* st-select
-------------------------------------------------------------------------- */
.st-select__content-select2 .selectWrap {
    width: 170px;
}

.st-select__content .p-login__btn {
    height: 100px;
}

.selectWrap {
    position: relative;
    display: inline-block;
    width: 150px;
}

.selectWrap::after {
    position: absolute;
    z-index: 1;
    top: 8px;
    right: 15px;
    bottom: 0;
    width: 14px;
    height: 14px;
    content: '';
    -webkit-transform: rotate(45deg);
            transform: rotate(45deg);
    border: 0;
    border-right: solid 2px #d4d4d4;
    border-bottom: solid 2px #d4d4d4;
}

.select {
    font-size: 1.6rem;
    position: relative;
    z-index: 1;
    width: 100%;
    height: 40px;
    padding: 0 40px 0 10px;
    border: solid 2px #ddd;
    background: transparent;
    background: #fff;
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
}

select::-ms-expand {
    display: none;
}

.c-checkBtn__btn--m {
    font-size: 16px;
    font-size: 1.6rem;
    height: 40px;
    border: solid 2px #ddd;
    background: #fff;
}

@media screen and (max-width: 767px) {
    .p-mypage__inner {
        padding: 0vw 5.33vw 0vw 5.33vw;
    }
}

@media screen and (min-width: 768px) {
    .p-mypage__inner {
        max-width: 1120px;
        margin-right: auto;
        margin-left: auto;
        padding-right: 20px;
        padding-left: 20px;
    }
}

.toggle_contents {
    background: #f8f1e3 !important;
}

.p-login__btn {
    font-weight: bold;
    height: 60px;
}

.p-login__btn img {
    margin-right: 15px;
}

@media screen and (min-width: 768px) {
    .p-login__btn {
        font-size: 24px;
        font-size: 2.4rem;
        font-weight: bold;
        height: 80px;
    }
    .p-login__btn span {
        margin-right: 15px;
    }
}

.p-realestate-list__btn {
    font-size: 24px;
    font-size: 2.4rem;
    font-weight: bold;
    height: 60px;
    background: #5d330d;
    color: #fff;
}

@media screen and (max-width: 767px) {
    .p-realestate-list__btn {
        font-size: 16px;
        font-size: 1.6rem;
    }
}

.p-realestate-list__btn:hover {
    opacity: .8;
}

.p-realestate-list__btn img {
    margin: 0 15px;
}

.c-btn--glay {
    background-color: #fff;
    border: 1px solid #666;
    font-weight: bold;
}

.st-select__content3 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    margin-bottom: 30px;
    background: #fff;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    /* height: 125px; */
}

@media screen and (max-width: 767px) {
    .st-select__content3 {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        width: 100%;
        height: auto;
        margin-bottom: 30px;
        background: #fff;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    }
}

.st-select__content-select3 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 82%;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: space-between;
}

@media screen and (max-width: 767px) {
    .st-select__content-select3 {
        width: 90%;
        margin: 0 auto 20px;
    }
}

.st-select__content-select3 div {
    width: 100%;
}

.st-select__content-select3 p {
    display: inline-block;
    margin-left: 10px;
}

@media screen and (max-width: 767px) {
    .st-select__content-select3 p {
        font-size: 1.4rem;
        display: inline-block;
        margin-left: 5px;
    }
}

.st-select__content-select3 ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin: 20px 0;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: flex-start;
}

.st-select__content-select3 ul li {
    margin-right: 13%;
}

@media screen and (max-width: 767px) {
    .st-select__content-select3 ul {
        width: 100%;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    }
    .st-select__content-select3 ul li {
        display: block;
        width: 100%;
        margin-bottom: 20px;
    }
}

.st-select__content-title3 {
    /* height: 60px; */
    font-weight: bold;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 15%;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

@media screen and (max-width: 767px) {
    .st-select__content-title3 {
        font-weight: bold;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        width: 100%;
        height: 60px;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
    }
}

/* p-campain
-------------------------------------------------------------------------- */
.p-campain__block {
    margin-top: 80px;
}

@media screen and (max-width: 767px) {
    .p-campain__block {
        margin-top: 30px;
    }
}

@media screen and (max-width: 767px) {
    .p-campain__block {
        margin-top: 10vw;
    }
}

.p-campain:hover {
    opacity: .8;
}

.p-campain__inner {
    position: relative;
}

@media screen and (min-width: 768px) {
    .p-campain__inner {
        max-width: 1200px;
        margin-left: auto;
        margin-right: auto;
    }
}

.p-campain__container {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

@media screen and (max-width: 767px) {
    .p-campain__container {
        background-color: #f8f1e3;
        padding: 10px 0;
    }
}

@media screen and (min-width: 768px) {
    .p-campain__container {
        width: 100%;
    }
}

@media screen and (min-width: 768px) {
    .p-campain__container::after {
        position: absolute;
        top: 0;
        left: 0;
        -webkit-transform: translateX(-50%);
                transform: translateX(-50%);
        display: block;
        content: '';
        width: 100%;
        height: 100%;
        background-color: #f8f1e3;
        z-index: -1;
    }
}

@media screen and (max-width: 767px) {
    .p-campain__container {
        background-color: #f8f1e3;
    }
}

.p-campain__container2 {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

.p-campain__container2 .p-realdetail__jp {
    color: #fff;
}

@media screen and (max-width: 767px) {
    .p-campain__container2 {
        background-color: #9e856e;
        padding: 20px 0 15px;
    }
    .p-campain__container2 .p-realdetail__jp {
        margin-top: 15px;
        color: #fff;
    }
}

@media screen and (min-width: 768px) {
    .p-campain__container2 {
        width: 100%;
    }
}

@media screen and (min-width: 768px) {
    .p-campain__container2::after {
        position: absolute;
        top: 0;
        left: 0;
        display: block;
        content: '';
        width: 100%;
        height: 100%;
        background-color: #5cb563;
        z-index: -1;
    }
}

@media screen and (max-width: 767px) {
    .p-campain__container2 {
        background-color: #5cb563;
    }
}

@media screen and (max-width: 767px) {
    .p-campain__logo {
        width: 29.33333vw;
    }
}

@media screen and (min-width: 768px) {
    .p-campain__logo {
        width: 175px;
    }
}

.p-campain__logo img {
    width: 100%;
    height: auto;
}

.p-campain__heading {
    text-align: center;
}

@media screen and (max-width: 767px) {
    .p-campain__heading {
        -webkit-box-flex: 1;
            -ms-flex: 1;
                flex: 1;
    }
}

@media screen and (min-width: 768px) {
    .p-campain__heading {
        -webkit-box-flex: 1;
            -ms-flex: 1;
                flex: 1;
        padding: 23px 0 23px;
    }
}

.p-campain__en {
    display: inline-block;
    width: 100%;
    color: #5d330d;
    background-color: #fff;
    font-weight: 400;
}

@media screen and (max-width: 767px) {
    .p-campain__en {
        font-size: 50px;
        font-size: 9vw;
        padding: 4vw 0vw 2vw;
        padding: 4vw 0vw 2vw;
    }
}

@media screen and (min-width: 768px) {
    .p-campain__en {
        margin-bottom: 20px;
        padding: 8px 0 0 24px;
        font-size: 46px;
        font-size: 4.6rem;
        letter-spacing: .05em;
    }
}

@media screen and (min-width: 768px) {
    .p-campain__en .jp {
        font-family: 'Noto Sans JP', sans-serif;
        font-size: 42px;
        font-size: 4.2rem;
        display: inline-block;
    }
}

@media screen and (max-width: 767px) {
    .p-campain__en .jp {
        font-weight: normal;
        font-size: 7vw;
    }
}

.p-campain__jp {
    display: inline-block;
    font-weight: normal;
    line-height: 1.5;
    color: #fff;
}

@media screen and (max-width: 767px) {
    .p-campain__jp {
        margin-top: 1.33vw;
        font-size: 16px;
        font-size: 1.6rem;
    }
}

@media screen and (min-width: 768px) {
    .p-campain__jp {
        padding-left: 18px;
        font-size: 24px;
        font-size: 2.4rem;
    }
}

.p-campain__jp img {
    width: 24px;
    height: 24px;
    margin-right: 10px;
    margin-bottom: 5px;
}

@media screen and (max-width: 767px) {
    .p-campain__images {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: justify;
            -ms-flex-pack: justify;
                justify-content: space-between;
    }
}

.p-campain__image {
    display: inline-block;
}

@media screen and (max-width: 767px) {
    .p-campain__image {
        width: 50%;
    }
}

@media screen and (min-width: 768px) {
    .p-campain__image {
        position: absolute;
    }
}

.p-campain__image img {
    width: 100%;
}

@media screen and (max-width: 767px) {
    .p-campain__image img {
        height: 53.33333vw;
    }
}

@media screen and (min-width: 768px) {
    .p-campain__image img {
        height: 500px;
    }
}

@media screen and (min-width: 768px) {
    .p-campain__image img {
        height: auto;
    }
}

@media screen and (min-width: 768px) {
    .p-campain__image--small {
        top: -18px;
        width: 240px;
        right: 300px;
    }
}

@media screen and (min-width: 768px) {
    .p-campain__image--large {
        top: -70px;
        right: 0;
        width: 320px;
    }
}

@media screen and (max-width: 767px) {
    .p-campain__text {
        margin-top: 2.67vw;
        margin-left: 2.67vw;
        margin-right: 2.67vw;
    }
}

@media screen and (min-width: 768px) {
    .p-campain__text {
        margin-top: 10px;
        margin-left: 20px;
    }
}

/* c-en
   ----------------------------------------------------------------- */
.c-en {
    font-family: 'Josefin Sans', sans-serif;
    font-weight: 400;
}

/* c-hamburger
-------------------------------------------------------------------------- */
.c-hamburger {
    position: relative;
    display: block;
    outline: none;
    width: 100%;
    -webkit-transition: all .4s;
    transition: all .4s;
}

@media screen and (max-width: 767px) {
    .c-hamburger {
        width: 7.2vw;
        height: 5.86667vw;
    }
}

@media screen and (min-width: 768px) {
    .c-hamburger {
        width: 26px;
        height: 18px;
    }
}

.c-hamburger span {
    position: absolute;
    content: '';
    left: 0;
    display: block;
    background: #000;
    -webkit-transition: -webkit-transform .3s;
    transition: -webkit-transform .3s;
    transition: transform .3s;
    transition: transform .3s, -webkit-transform .3s;
}

@media screen and (max-width: 767px) {
    .c-hamburger span {
        width: 100%;
        height: .53333vw;
    }
}

@media screen and (min-width: 768px) {
    .c-hamburger span {
        width: 100%;
        height: 2px;
    }
}

.c-hamburger span:nth-of-type(1) {
    top: 0;
}

@media screen and (max-width: 767px) {
    .c-hamburger span:nth-of-type(1) {
        -webkit-animation: menu-bar01-sp .65s forwards;
                animation: menu-bar01-sp .65s forwards;
    }
}

@media screen and (min-width: 768px) {
    .c-hamburger span:nth-of-type(1) {
        -webkit-animation: menu-bar01 .65s forwards;
                animation: menu-bar01 .65s forwards;
    }
}

.c-hamburger span:nth-of-type(2) {
    -webkit-transition: -webkit-transform .25s .25s;
    transition: -webkit-transform .25s .25s;
    transition: transform .25s .25s;
    transition: transform .25s .25s, -webkit-transform .25s .25s;
    opacity: 1;
}

@media screen and (max-width: 767px) {
    .c-hamburger span:nth-of-type(2) {
        top: 2.93vw;
        margin-top: -.27vw;
    }
}

@media screen and (min-width: 768px) {
    .c-hamburger span:nth-of-type(2) {
        top: 50%;
        -webkit-transform: translateY(-50%);
                transform: translateY(-50%);
    }
}

.c-hamburger span:nth-of-type(3) {
    bottom: 0;
}

@media screen and (max-width: 767px) {
    .c-hamburger span:nth-of-type(3) {
        -webkit-animation: menu-bar02-sp .65s forwards;
                animation: menu-bar02-sp .65s forwards;
    }
}

@media screen and (min-width: 768px) {
    .c-hamburger span:nth-of-type(3) {
        -webkit-animation: menu-bar02 .65s forwards;
                animation: menu-bar02 .65s forwards;
    }
}

.c-hamburger.is-open span {
    background: #fff;
}

@media screen and (max-width: 767px) {
    .c-hamburger.is-open span:nth-of-type(1) {
        -webkit-animation: active-menu-bar01-sp .65s forwards;
                animation: active-menu-bar01-sp .65s forwards;
    }
}

@media screen and (min-width: 768px) {
    .c-hamburger.is-open span:nth-of-type(1) {
        -webkit-animation: active-menu-bar01 .65s forwards;
                animation: active-menu-bar01 .65s forwards;
    }
}

.c-hamburger.is-open span:nth-of-type(2) {
    opacity: 0;
}

@media screen and (max-width: 767px) {
    .c-hamburger.is-open span:nth-of-type(3) {
        -webkit-animation: active-menu-bar03-sp .65s forwards;
                animation: active-menu-bar03-sp .65s forwards;
    }
}

@media screen and (min-width: 768px) {
    .c-hamburger.is-open span:nth-of-type(3) {
        -webkit-animation: active-menu-bar03 .65s forwards;
                animation: active-menu-bar03 .65s forwards;
    }
}

@-webkit-keyframes menu-bar01 {
    0% {
        -webkit-transform: translateY(8px) rotate(45deg);
                transform: translateY(8px) rotate(45deg);
    }
    50% {
        -webkit-transform: translateY(8px) rotate(0);
                transform: translateY(8px) rotate(0);
    }
    100% {
        -webkit-transform: translateY(0) rotate(0);
                transform: translateY(0) rotate(0);
    }
}

@keyframes menu-bar01 {
    0% {
        -webkit-transform: translateY(8px) rotate(45deg);
                transform: translateY(8px) rotate(45deg);
    }
    50% {
        -webkit-transform: translateY(8px) rotate(0);
                transform: translateY(8px) rotate(0);
    }
    100% {
        -webkit-transform: translateY(0) rotate(0);
                transform: translateY(0) rotate(0);
    }
}

@-webkit-keyframes menu-bar02 {
    0% {
        -webkit-transform: translateY(-8px) rotate(-45deg);
                transform: translateY(-8px) rotate(-45deg);
    }
    50% {
        -webkit-transform: translateY(-8px) rotate(0);
                transform: translateY(-8px) rotate(0);
    }
    100% {
        -webkit-transform: translateY(0) rotate(0);
                transform: translateY(0) rotate(0);
    }
}

@keyframes menu-bar02 {
    0% {
        -webkit-transform: translateY(-8px) rotate(-45deg);
                transform: translateY(-8px) rotate(-45deg);
    }
    50% {
        -webkit-transform: translateY(-8px) rotate(0);
                transform: translateY(-8px) rotate(0);
    }
    100% {
        -webkit-transform: translateY(0) rotate(0);
                transform: translateY(0) rotate(0);
    }
}

@-webkit-keyframes active-menu-bar01 {
    0% {
        -webkit-transform: translateY(0) rotate(0);
                transform: translateY(0) rotate(0);
    }
    50% {
        -webkit-transform: translateY(8px) rotate(0);
                transform: translateY(8px) rotate(0);
    }
    100% {
        -webkit-transform: translateY(8px) rotate(45deg);
                transform: translateY(8px) rotate(45deg);
    }
}

@keyframes active-menu-bar01 {
    0% {
        -webkit-transform: translateY(0) rotate(0);
                transform: translateY(0) rotate(0);
    }
    50% {
        -webkit-transform: translateY(8px) rotate(0);
                transform: translateY(8px) rotate(0);
    }
    100% {
        -webkit-transform: translateY(8px) rotate(45deg);
                transform: translateY(8px) rotate(45deg);
    }
}

@-webkit-keyframes active-menu-bar03 {
    0% {
        -webkit-transform: translateY(0) rotate(0);
                transform: translateY(0) rotate(0);
    }
    50% {
        -webkit-transform: translateY(-8px) rotate(0);
                transform: translateY(-8px) rotate(0);
    }
    100% {
        -webkit-transform: translateY(-8px) rotate(-45deg);
                transform: translateY(-8px) rotate(-45deg);
    }
}

@keyframes active-menu-bar03 {
    0% {
        -webkit-transform: translateY(0) rotate(0);
                transform: translateY(0) rotate(0);
    }
    50% {
        -webkit-transform: translateY(-8px) rotate(0);
                transform: translateY(-8px) rotate(0);
    }
    100% {
        -webkit-transform: translateY(-8px) rotate(-45deg);
                transform: translateY(-8px) rotate(-45deg);
    }
}

@-webkit-keyframes menu-bar01-sp {
    0% {
        -webkit-transform: translateY(2.66667vw) rotate(45deg);
                transform: translateY(2.66667vw) rotate(45deg);
    }
    50% {
        -webkit-transform: translateY(2.66667vw) rotate(0);
                transform: translateY(2.66667vw) rotate(0);
    }
    100% {
        -webkit-transform: translateY(0) rotate(0);
                transform: translateY(0) rotate(0);
    }
}

@keyframes menu-bar01-sp {
    0% {
        -webkit-transform: translateY(2.66667vw) rotate(45deg);
                transform: translateY(2.66667vw) rotate(45deg);
    }
    50% {
        -webkit-transform: translateY(2.66667vw) rotate(0);
                transform: translateY(2.66667vw) rotate(0);
    }
    100% {
        -webkit-transform: translateY(0) rotate(0);
                transform: translateY(0) rotate(0);
    }
}

@-webkit-keyframes menu-bar02-sp {
    0% {
        -webkit-transform: translateY(-2.66667vw) rotate(-45deg);
                transform: translateY(-2.66667vw) rotate(-45deg);
    }
    50% {
        -webkit-transform: translateY(-2.66667vw) rotate(0);
                transform: translateY(-2.66667vw) rotate(0);
    }
    100% {
        -webkit-transform: translateY(0) rotate(0);
                transform: translateY(0) rotate(0);
    }
}

@keyframes menu-bar02-sp {
    0% {
        -webkit-transform: translateY(-2.66667vw) rotate(-45deg);
                transform: translateY(-2.66667vw) rotate(-45deg);
    }
    50% {
        -webkit-transform: translateY(-2.66667vw) rotate(0);
                transform: translateY(-2.66667vw) rotate(0);
    }
    100% {
        -webkit-transform: translateY(0) rotate(0);
                transform: translateY(0) rotate(0);
    }
}

@-webkit-keyframes active-menu-bar01-sp {
    0% {
        -webkit-transform: translateY(0) rotate(0);
                transform: translateY(0) rotate(0);
    }
    50% {
        -webkit-transform: translateY(2.66667vw) rotate(0);
                transform: translateY(2.66667vw) rotate(0);
    }
    100% {
        -webkit-transform: translateY(2.66667vw) rotate(45deg);
                transform: translateY(2.66667vw) rotate(45deg);
    }
}

@keyframes active-menu-bar01-sp {
    0% {
        -webkit-transform: translateY(0) rotate(0);
                transform: translateY(0) rotate(0);
    }
    50% {
        -webkit-transform: translateY(2.66667vw) rotate(0);
                transform: translateY(2.66667vw) rotate(0);
    }
    100% {
        -webkit-transform: translateY(2.66667vw) rotate(45deg);
                transform: translateY(2.66667vw) rotate(45deg);
    }
}

@-webkit-keyframes active-menu-bar03-sp {
    0% {
        -webkit-transform: translateY(0) rotate(0);
                transform: translateY(0) rotate(0);
    }
    50% {
        -webkit-transform: translateY(-2.66667vw) rotate(0);
                transform: translateY(-2.66667vw) rotate(0);
    }
    100% {
        -webkit-transform: translateY(-2.66667vw) rotate(-45deg);
                transform: translateY(-2.66667vw) rotate(-45deg);
    }
}

@keyframes active-menu-bar03-sp {
    0% {
        -webkit-transform: translateY(0) rotate(0);
                transform: translateY(0) rotate(0);
    }
    50% {
        -webkit-transform: translateY(-2.66667vw) rotate(0);
                transform: translateY(-2.66667vw) rotate(0);
    }
    100% {
        -webkit-transform: translateY(-2.66667vw) rotate(-45deg);
                transform: translateY(-2.66667vw) rotate(-45deg);
    }
}

/* c-heading
-------------------------------------------------------------------------- */
.c-heading {
    width: 100%;
    text-align: right;
}

.c-heading__more {
    position: relative;
    display: inline-block;
    font-family: 'Josefin Sans', sans-serif;
    font-weight: 400;
    text-decoration: none;
}

@media screen and (max-width: 767px) {
    .c-heading__more {
        margin-top: 2.67vw;
        margin-bottom: 2.67vw;
        padding-right: 8vw;
    }
}

@media screen and (min-width: 768px) {
    .c-heading__more {
        margin-top: 10px;
        margin-bottom: 20px;
        padding-right: 40px;
    }
}

.c-heading__arrow {
    position: absolute;
    top: 50%;
    right: 0;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    display: inline-block;
    color: #000;
    line-height: 1;
}

@media screen and (max-width: 767px) {
    .c-heading__arrow {
        font-size: 50px;
        font-size: 6.67vw;
        height: 6.66667vw;
    }
}

@media screen and (min-width: 768px) {
    .c-heading__arrow {
        font-size: 30px;
        font-size: 3rem;
        height: 30px;
    }
}

.c-heading__text {
    text-align: left;
    background-color: #f8f1e3;
}

@media screen and (max-width: 767px) {
    .c-heading__text {
        padding: 1.33vw 2.67vw 1.33vw 2.67vw;
    }
}

@media screen and (min-width: 768px) {
    .c-heading__text {
        padding: 1px 15px;
    }
}

/* c-body
-------------------------------------------------------------------------- */
.c-body {
    width: 100%;
    text-align: right;
}

.c-body__more {
    width: 100%;
    text-align: right;
    position: relative;
    display: inline-block;
    font-family: 'Josefin Sans', sans-serif;
    font-weight: 400;
    text-decoration: none;
}

@media screen and (max-width: 767px) {
    .c-body__more {
        margin-top: 2.67vw;
        margin-bottom: 2.67vw;
        padding-right: 8vw;
    }
}

@media screen and (min-width: 768px) {
    .c-body__more {
        margin-top: 10px;
        margin-bottom: 20px;
        padding-right: 40px;
    }
}

.c-body__arrow {
    position: absolute;
    top: 50%;
    right: 0;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    display: inline-block;
    color: #000;
    line-height: 1;
}

@media screen and (max-width: 767px) {
    .c-body__arrow {
        font-size: 50px;
        font-size: 6.67vw;
        height: 6.66667vw;
    }
}

@media screen and (min-width: 768px) {
    .c-body__arrow {
        font-size: 30px;
        font-size: 3rem;
        height: 30px;
    }
}

.c-body__text {
    text-align: left;
    background-color: #f8f1e3;
}

@media screen and (max-width: 767px) {
    .c-body__text {
        padding: 1.33vw 2.67vw 1.33vw 2.67vw;
    }
}

@media screen and (min-width: 768px) {
    .c-body__text {
        padding: 1px 15px;
    }
}

@font-face {
    font-family: 'iconfont';
    src: url('../fonts/iconfont.eot');
    src: url('../fonts/iconfont.eot?#iefix') format('eot'), url('../fonts/iconfont.woff') format('woff'), url('../fonts/iconfont.ttf') format('truetype'), url('../fonts/iconfont.svg#iconfont') format('svg');
    font-weight: normal;
    font-style: normal;
}

[class^='c-icon-'], [class*='c-icon-'] {
    display: inline-block;
    font-family: 'iconfont' !important;
    speak: none;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.c-icon-arrow_left::before {
    content: '\EA01';
}

.c-icon-arrow_right::before {
    content: '\EA02';
}

.c-icon-facebook::before {
    content: '\EA03';
}

.c-icon-instagram::before {
    content: '\EA04';
}

.c-icon-next::before {
    content: '\EA05';
}

.c-icon-prev::before {
    content: '\EA06';
}

.c-icon-twitter::before {
    content: '\EA07';
}

@media screen and (max-width: 767px) {
    .c-inner {
        padding: 0vw 5.33vw 0vw 5.33vw;
    }
}

@media screen and (min-width: 768px) {
    .c-inner {
        max-width: 1240px;
        margin-left: auto;
        margin-right: auto;
        padding-left: 20px;
        padding-right: 20px;
    }
}

/* c-inset
-------------------------------------------------------------------------- */
.c-inset {
    -o-object-fit: contain;
       object-fit: contain;
    font-family: 'object-fit: contain;';
}

/* c-label
-------------------------------------------------------------------------- */
.c-label {
    position: absolute;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    color: #fff;
    font-weight: 400;
    text-align: center;
}

@media screen and (max-width: 767px) {
    .c-label:nth-child(1) {
        top: 2.67vw;
        left: 2.67vw;
    }
}

@media screen and (min-width: 768px) {
    .c-label:nth-child(1) {
        top: 10px;
        left: 10px;
    }
}

@media screen and (max-width: 767px) {
    .c-label:nth-child(2) {
        top: 2.67vw;
        right: 2.67vw;
    }
}

@media screen and (min-width: 768px) {
    .c-label:nth-child(2) {
        top: 10px;
        right: 10px;
    }
}

@media screen and (max-width: 767px) {
    .c-label:nth-child(3) {
        bottom: 2.67vw;
        left: 2.67vw;
    }
}

@media screen and (min-width: 768px) {
    .c-label:nth-child(3) {
        bottom: 10px;
        left: 10px;
    }
}

@media screen and (max-width: 767px) {
    .c-label:nth-child(4) {
        bottom: 2.67vw;
        right: 2.67vw;
    }
}

@media screen and (min-width: 768px) {
    .c-label:nth-child(4) {
        bottom: 10px;
        right: 10px;
    }
}

@media screen and (max-width: 767px) {
    .c-label:nth-child(5) {
        top: 2.67vw;
        right: 0vw;
        left: 0vw;
        margin: auto;
    }
}

@media screen and (min-width: 768px) {
    .c-label:nth-child(5) {
        top: 10px;
        right: 0;
        left: 0;
        margin: auto;
    }
}

@media screen and (max-width: 767px) {
    .c-label:nth-child(6) {
        bottom: 2.67vw;
        right: 0vw;
        left: 0vw;
        margin: auto;
    }
}

@media screen and (min-width: 768px) {
    .c-label:nth-child(6) {
        bottom: 10px;
        right: 0;
        left: 0;
        margin: auto;
    }
}

@media screen and (max-width: 767px) {
    .c-label {
        width: 16vw;
        height: 16vw;
        border-radius: 8vw;
    }
}

@media screen and (min-width: 768px) {
    .c-label {
        width: 60px;
        height: 60px;
        border-radius: 50%;
    }
}

.c-label--new, .c-label--discount {
    font-family: 'Josefin Sans', sans-serif;
}

@media screen and (max-width: 767px) {
    .c-label--new, .c-label--discount {
        font-size: 25px;
        font-size: 3.33vw;
    }
}

.c-label--new {
    background-color: #f00;
}

.c-label--new.voiceonly {
    font-family: 'Josefin Sans', sans-serif;
}

@media screen and (max-width: 767px) {
    .c-label--new.voiceonly {
        font-size: 20px;
        font-size: 2.67vw;
        width: 10.66667vw;
        height: 10.66667vw;
        border-radius: 5.33333vw;
    }
}

.c-label--discount {
    background-color: #008aff;
}

@media screen and (min-width: 768px) {
    .c-label--discount {
        font-size: 14px;
        font-size: 1.4rem;
    }
}

.c-label--image, .c-label--information {
    line-height: 1.18;
}

@media screen and (max-width: 767px) {
    .c-label--image, .c-label--information {
        font-size: 30px;
        font-size: 4vw;
    }
}

.c-label--image {
    background-color: #be4c00;
}

.c-label--information {
    background-color: #cfa100;
}

.c-label--event {
    background-color: #ffabc2;
    font-size: 13px;
    font-size: 1.3rem;
}

.c-label--event span {
    font-size: 14px;
    font-size: 1.4rem;
}

.c-label--member {
    background-color: #5cb563;
}

/* link
-------------------------------------------------------------------------- */
.c-link {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    text-decoration: none;
}

@media screen and (max-width: 767px) {
    .c-link {
        width: 100%;
    }
}

.c-link--menu {
    font-family: 'Josefin Sans', sans-serif;
    font-weight: 400;
}

@media screen and (max-width: 767px) {
    .c-link--menu .c-link__arrow {
        position: absolute;
        top: 50%;
        right: 0;
        -webkit-transform: translateY(-50%);
                transform: translateY(-50%);
        margin-top: -.53vw;
    }
}

@media screen and (min-width: 768px) {
    .c-link--menu .c-link__arrow {
        margin-top: -2px;
    }
}

.c-link__arrow {
    display: inline-block;
}

@media screen and (max-width: 767px) {
    .c-link__arrow {
        margin-left: 2.67vw;
        font-size: 40px;
        font-size: 5.33vw;
    }
}

@media screen and (min-width: 768px) {
    .c-link__arrow {
        margin-left: 10px;
        font-size: 30px;
        font-size: 3rem;
    }
}

/* logo
-------------------------------------------------------------------------- */
.c-logo {
    display: block;
}

/* modal
-------------------------------------------------------------------------- */
.c-modal {
    position: fixed;
    display: none;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    overflow-y: auto;
    background: rgba(93, 51, 13, .95);
    opacity: 0;
    visibility: hidden;
    -webkit-transition: .3s;
    transition: .3s;
    z-index: 100;
    -webkit-overflow-scrolling: touch;
}

@media screen and (max-width: 767px) {
    .c-modal__inner {
        padding: 0vw 2.67vw 0vw 2.67vw;
    }
}

@media screen and (min-width: 768px) {
    .c-modal__inner {
        width: 100%;
        padding: 0 20px;
        max-width: 1240px;
        margin-left: auto;
        margin-right: auto;
    }
}

.c-modal__contents {
    width: 100%;
}

@media screen and (min-width: 768px) {
    .c-modal__contents {
        padding-bottom: 40px;
    }
}

.c-modal.is-open {
    display: block;
    opacity: 1;
    visibility: visible;
}

/* c-outset
-------------------------------------------------------------------------- */
.c-outset {
    -o-object-fit: cover;
       object-fit: cover;
    font-family: 'object-fit: cover;';
}

/* peagerSimple
   ----------------------------------------------------------------- */
.peager_num-area {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    width: 70%;
}

.peager_num-area .peager-btn {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    width: 300px;
    height: 40px;
    font-weight: bold;
    text-decoration: none;
    cursor: pointer;
    background: #5d330d;
    color: #fff;
    font-size: 20px;
}

@media screen and (max-width: 767px) {
    .peager_num-area .peager-btn {
        width: 100%;
        height: 35px;
        text-decoration: none;
    }
}

.peager-list {
    margin: 60px auto 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
}

@media screen and (max-width: 767px) {
    .peager-list {
        margin: 30px auto 30px;
    }
}

.peager-list.bottom {
    margin: 0 auto 60px;
}

@media screen and (max-width: 767px) {
    .peager-list.bottom {
        margin: 0 auto 30px;
    }
}

@media screen and (max-width: 767px) {
    .peager-list.margin_on {
        margin: 30px auto 60px;
    }
}

.peager-list .peager_btn-area:last-child .peager-btn:before {
    content: '';
    -webkit-transform: translateX(25%) translateY(-50%) rotate(45deg);
            transform: translateX(25%) translateY(-50%) rotate(45deg);
    width: 18px;
    height: 18px;
    border-top: 5px solid #fff;
    border-right: 5px solid #fff;
    right: 50%;
}

.peager-list .peager_btn-area:first-child .peager-btn:after {
    content: '';
    -webkit-transform: translateX(-25%) translateY(-50%) rotate(225deg);
            transform: translateX(-25%) translateY(-50%) rotate(225deg);
    width: 18px;
    height: 18px;
    border-top: 5px solid #fff;
    border-right: 5px solid #fff;
    left: 50%;
}

.peager-list .peager_btn-area:last-child .peager-btn:before, .peager-list .peager_btn-area:first-child .peager-btn:after {
    position: absolute;
    line-height: .9;
    display: block;
    top: 50%;
    -webkit-transform-origin: center;
            transform-origin: center;
}

.peager-list .peager_btn-area .peager-btn {
    position: relative;
    width: 150px;
    height: 40px;
    text-decoration: none;
    cursor: pointer;
    background: #5d330d;
    color: #fff;
}

@media screen and (max-width: 767px) {
    .peager-list .peager_btn-area .peager-btn {
        width: 100%;
        height: 35px;
        text-decoration: none;
    }
}

.peager-list .list_back {
    padding: 20px 40px;
    font-size: 24px;
    font-size: 2.4rem;
    font-weight: bold;
    text-decoration: none;
    position: relative;
    color: #fff;
    background: #000;
}

@media screen and (max-width: 767px) {
    .peager-list .list_back {
        padding: 10px 30px 10px 10px;
        font-size: 16px;
        font-size: 1.6rem;
    }
}

.c-btn--arrow::after {
    right: 20px;
    width: 14px;
    height: 14px;
    border-top: 4px solid #fff;
    border-right: 4px solid #fff;
}

@media screen and (max-width: 767px) {
    .c-btn--arrow::after {
        right: 13px;
    }
}

.peager_btn-area {
    width: 150px;
    height: 40px;
}

.peager_btn-area .peager-btn {
    margin-left: auto;
    text-decoration: none;
    width: 100%;
    height: 100%;
    display: block;
}

@media screen and (max-width: 767px) {
    .peager_btn-area {
        width: 35px;
        height: 35px;
    }
    .peager_btn-area .peager-btn {
        height: 35px;
    }
}

.peager-num {
    font-size: 24px;
    font-size: 2.4rem;
    font-weight: bold;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin: 0 1%;
    text-align: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.peager-num.now {
    height: 40px;
    padding: 15px;
    color: #5d330d;
    background: #fff;
}

.peager-num.now a {
    background: inherit;
}

.peager-num a {
    color: #000;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    height: 40px;
    padding: 0 15px;
    margin: 0 5px;
    text-align: center;
    text-decoration: none;
    background: #f8f1e3;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

@media screen and (max-width: 767px) {
    .peager-num {
        font-size: 20px;
        font-size: 2.0rem;
    }
    .peager-num a {
        width: 100%;
        height: 35px;
        margin: 0 2px;
        padding: 0 10px;
        text-decoration: none;
    }
    .peager-num.now {
        height: 35px;
        padding: 0 15px;
    }
}

@media screen and (max-width: 767px) {
    .mb-spPlus {
        padding-bottom: 30px;
    }
}

@media screen and (max-width: 767px) {
    .mb-spPlus60 {
        padding-bottom: 60px;
    }
}

/* c-status
-------------------------------------------------------------------------- */
.c-status {
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    width: 100%;
    left: 0;
    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;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    color: #fff;
}

@media screen and (max-width: 767px) {
    .c-status {
        height: 16vw;
    }
}

@media screen and (min-width: 768px) {
    .c-status {
        height: 60px;
    }
}

.c-status--applying {
    background: rgba(171, 165, 0, .8);
}

.c-status--soldout {
    background: rgba(171, 0, 0, .8);
}

.c-status__en {
    font-family: 'Josefin Sans', sans-serif;
    font-weight: 400;
}

@media screen and (max-width: 767px) {
    .c-status__en {
        font-size: 48px;
        font-size: 6.4vw;
    }
}

@media screen and (min-width: 768px) {
    .c-status__en {
        font-size: 24px;
        font-size: 2.4rem;
    }
}

@media screen and (max-width: 767px) {
    .c-status__jp {
        font-size: 28px;
        font-size: 3.73vw;
    }
}

@media screen and (min-width: 768px) {
    .c-status__jp {
        font-size: 16px;
        font-size: 1.6rem;
    }
}

/* subpage
-------------------------------------------------------------------------- */
.p-subpage {
    position: relative;
}

@media screen and (min-width: 768px) {
    .p-subpage__inner {
        width: 100%;
    }
}

.p-subpage__container {
    position: relative;
    z-index: 2;
    background-color: #f8f1e3;
}

@media screen and (max-width: 767px) {
    .p-subpage__container {
        padding: 8vw 8vw 8vw 8vw;
    }
}

@media screen and (min-width: 768px) {
    .p-subpage__container {
        width: 100%;
        max-width: 690px;
        padding: 40px;
    }
}

@media screen and (max-width: 767px) {
    .p-subpage__body {
        padding-top: 8vw;
    }
}

@media screen and (min-width: 768px) {
    .p-subpage__body {
        padding-top: 60px;
    }
}

@media screen and (max-width: 767px) {
    .p-subpage__title {
        margin-top: 8vw;
        margin-bottom: 2.67vw;
        font-size: 20px;
        font-size: 2.0rem;
        line-height: 1.6;
    }
}

@media screen and (min-width: 768px) {
    .p-subpage__title {
        margin-top: 60px;
        margin-bottom: 20px;
        font-size: 30px;
        font-size: 3rem;
        line-height: 1.6;
    }
}

@media screen and (min-width: 768px) {
    .p-subpage__title.center {
        text-align: center;
    }
}

.p-subpage__text {
    line-height: 1.6;
}

.p-subpage__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -ms-flex-line-pack: distribute;
        align-content: space-around;
}

@media screen and (max-width: 767px) {
    .p-subpage__list {
        margin-top: 12vw;
        margin-bottom: 12vw;
    }
}

@media screen and (min-width: 768px) {
    .p-subpage__list {
        margin-top: 60px;
        margin-bottom: 60px;
    }
}

@media screen and (max-width: 767px) {
    .p-subpage__item {
        width: 46%;
        margin-right: 8%;
        margin-top: 4vw;
    }
}

@media screen and (min-width: 768px) {
    .p-subpage__item {
        margin-right: 60px;
    }
}

@media screen and (max-width: 767px) {
    .p-subpage__item:nth-child(-n+2) {
        margin-top: 0;
    }
}

.p-subpage__item:nth-child(2n) {
    margin-right: 0;
}

@media screen and (max-width: 767px) {
    .p-subpage__item:nth-child(2n) {
        margin-right: 0;
    }
}

/* c-table
-------------------------------------------------------------------------- */
.c-table {
    width: 100%;
}

@media screen and (max-width: 767px) {
    .c-table--regular {
        line-height: 1.8;
    }
}

@media screen and (min-width: 768px) {
    .c-table--regular {
        line-height: 1.8;
        font-size: 16px;
        font-size: 1.6rem;
    }
}

@media screen and (max-width: 767px) {
    .c-table--regular tbody th, .c-table--regular tbody td {
        display: block;
        width: 100%;
        padding-left: 4vw;
        padding-right: 4vw;
    }
}

@media screen and (min-width: 768px) {
    .c-table--regular tbody th, .c-table--regular tbody td {
        padding-top: 23px;
        padding-bottom: 23px;
        vertical-align: middle;
    }
}

@media screen and (max-width: 767px) {
    .c-table--regular tbody th {
        padding-top: 2.67vw;
        padding-bottom: 2.67vw;
    }
}

@media screen and (min-width: 768px) {
    .c-table--regular tbody th {
        font-weight: 400;
        text-align: left;
        width: 24.16%;
        padding-left: 5%;
    }
}

@media screen and (max-width: 767px) {
    .c-table--regular tbody td {
        padding-top: 5.33vw;
        padding-bottom: 5.33vw;
    }
}

@media screen and (min-width: 768px) {
    .c-table--regular tbody td {
        padding-left: 10%;
        padding-right: 3.33%;
        text-align: left;
    }
}

@media screen and (max-width: 767px) {
    .c-table--primary {
        border-top: none;
        border-bottom: .26667vw solid #cacaca;
    }
}

@media screen and (max-width: 767px) {
    .c-table--primary th {
        background-color: #fbf7f3;
        border: .26667vw solid #dac292;
    }
}

@media screen and (min-width: 768px) {
    .c-table--primary th {
        border-top: 1px solid #dac292;
        border-bottom: 1px solid #dac292;
    }
}

@media screen and (max-width: 767px) {
    .c-table--primary td {
        border-left: .26667vw solid #cacaca;
        border-right: .26667vw solid #cacaca;
    }
}

@media screen and (min-width: 768px) {
    .c-table--primary td {
        border-top: 1px solid #cacaca;
        border-bottom: 1px solid #cacaca;
    }
}

.c-table--detail {
    margin-top: 60px;
}

@media screen and (max-width: 767px) {
    .c-table--detail {
        border-top: none;
        border-bottom: none;
    }
}

@media screen and (min-width: 768px) {
    .c-table--detail tbody {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
    }
    .c-table--detail tbody tr {
        display: table;
        width: 50%;
    }
}

.c-table--detail th {
    background: #5d330d;
    color: #fff;
    padding: 10px;
    text-align: left;
}

@media screen and (max-width: 767px) {
    .c-table--detail th {
        border: .26667vw solid #5d330d;
        width: 100%;
        display: block;
    }
}

@media screen and (min-width: 768px) {
    .c-table--detail th {
        border: 1px solid #5d330d;
        width: 15%;
    }
}

.c-table--detail td {
    padding: 10px;
}

@media screen and (max-width: 767px) {
    .c-table--detail td {
        border: .26667vw solid #5d330d;
        width: 100%;
        display: block;
    }
}

@media screen and (min-width: 768px) {
    .c-table--detail td {
        border: 1px solid #5d330d;
        width: 35%;
    }
}

.c-table__text {
    margin-bottom: 1.5em;
}

.c-table__text:last-child {
    margin-bottom: 0;
}

/* c-table
-------------------------------------------------------------------------- */
.c-table2 {
    width: 100%;
}

@media screen and (min-width: 768px) {
    .c-table2 {
        margin-top: 60px;
    }
}

@media screen and (max-width: 767px) {
    .c-table2 {
        margin-top: 30px;
    }
}

@media screen and (max-width: 767px) {
    .c-table2--regular {
        line-height: 1.8;
    }
}

@media screen and (min-width: 768px) {
    .c-table2--regular {
        line-height: 1.8;
        font-size: 16px;
        font-size: 1.6rem;
    }
}

@media screen and (max-width: 767px) {
    .c-table2--regular tbody th, .c-table2--regular tbody td {
        display: block;
        width: 100%;
        padding-left: 4vw;
        padding-right: 4vw;
    }
}

@media screen and (min-width: 768px) {
    .c-table2--regular tbody th, .c-table2--regular tbody td {
        padding-top: 23px;
        padding-bottom: 23px;
        vertical-align: middle;
    }
}

@media screen and (max-width: 767px) {
    .c-table2--regular tbody th {
        padding-top: 2.67vw;
        padding-bottom: 2.67vw;
    }
}

@media screen and (min-width: 768px) {
    .c-table2--regular tbody th {
        font-weight: bold;
        text-align: left;
        width: 16.66%;
        padding-left: 2.5%;
        padding-right: 2.5%;
    }
}

@media screen and (max-width: 767px) {
    .c-table2--regular tbody td {
        padding-top: 5.33vw;
        padding-bottom: 5.33vw;
    }
}

@media screen and (min-width: 768px) {
    .c-table2--regular tbody td {
        padding-left: 1.25%;
        padding-right: 1.25%;
        text-align: left;
        width: 33.33%;
    }
}

@media screen and (max-width: 767px) {
    .c-table2--primary {
        border-top: none;
        border-bottom: .26667vw solid #cacaca;
    }
}

@media screen and (max-width: 767px) {
    .c-table2--primary th {
        background-color: #fbf7f3;
        border: .26667vw solid #dac292;
    }
}

@media screen and (min-width: 768px) {
    .c-table2--primary th {
        background-color: #fbf7f3;
        border: .06667vw solid #dac292;
    }
}

@media screen and (max-width: 767px) {
    .c-table2--primary td {
        border-left: .26667vw solid #cacaca;
        border-right: .26667vw solid #cacaca;
    }
}

@media screen and (min-width: 768px) {
    .c-table2--primary td {
        border-top: .06667vw solid #cacaca;
        border-bottom: .06667vw solid #cacaca;
        border-right: .06667vw solid #cacaca;
    }
}

.c-table2--primary td:last-child {
    border-right: .06667vw solid #cacaca;
}

.c-table2--detail {
    margin-top: 60px;
}

@media screen and (max-width: 767px) {
    .c-table2--detail {
        border-top: none;
        border-bottom: none;
    }
}

@media screen and (min-width: 768px) {
    .c-table2--detail tbody {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
    }
    .c-table2--detail tbody tr {
        display: table;
        width: 50%;
    }
}

.c-table2--detail th {
    background: #5d330d;
    color: #fff;
    padding: 10px;
    text-align: left;
}

@media screen and (max-width: 767px) {
    .c-table2--detail th {
        border: .26667vw solid #5d330d;
        width: 100%;
        display: block;
    }
}

.c-table2--detail td {
    padding: 10px;
}

@media screen and (max-width: 767px) {
    .c-table2--detail td {
        border: .26667vw solid #5d330d;
        width: 100%;
        display: block;
    }
}

.c-table2__text {
    margin-bottom: 1.5em;
}

.c-table2__text:last-child {
    margin-bottom: 0;
}

/* c-tel
   ----------------------------------------------------------------- */
.c-tel {
    text-decoration: none;
    color: #000;
    font-family: 'Josefin Sans', sans-serif;
    font-weight: 600;
}

@media screen and (max-width: 767px) {
    .c-tel__label {
        font-size: 50px;
        font-size: 6.67vw;
    }
}

@media screen and (min-width: 768px) {
    .c-tel__label {
        font-size: 36px;
        font-size: 3.6rem;
    }
}

.c-tel__number {
    line-height: 1;
}

@media screen and (max-width: 767px) {
    .c-tel__number {
        font-size: 80px;
        font-size: 10.67vw;
    }
}

@media screen and (min-width: 768px) {
    .c-tel__number {
        font-size: 56px;
        font-size: 5.6rem;
    }
}

/* c-text
-------------------------------------------------------------------------- */
.c-text {
    line-height: 1.8;
    letter-spacing: .5em;
}

@media screen and (min-width: 768px) {
    .c-text {
        font-size: 16px;
        font-size: 1.6rem;
    }
}

/* title
-------------------------------------------------------------------------- */
.c-title {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    font-weight: 400;
    text-align: left;
}

.c-title--center {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    text-align: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
}

.c-title--center .c-title__en::after {
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
}

.c-title__en {
    position: relative;
    font-family: 'Josefin Sans', sans-serif;
    font-weight: 400;
}

@media screen and (max-width: 767px) {
    .c-title__en {
        padding-bottom: 2.67vw;
        font-size: 54px;
        font-size: 7.2vw;
    }
}

@media screen and (min-width: 768px) {
    .c-title__en {
        font-size: 40px;
        font-size: 4rem;
        padding-bottom: 10px;
    }
}

.c-title__en::after {
    position: absolute;
    left: 0;
    bottom: 0;
    display: block;
    content: '';
    background: #5d330d;
}

@media screen and (max-width: 767px) {
    .c-title__en::after {
        width: 29.33333vw;
        height: .53333vw;
    }
}

@media screen and (min-width: 768px) {
    .c-title__en::after {
        width: 150px;
        height: 2px;
    }
}

.c-title__en--realestate::after {
    background-color: #5cb563;
}

.c-title__en--rent::after {
    background-color: #f9b9c0;
}

.c-title__en--management::after {
    background-color: #fdf43f;
}

.c-title__en--architecture::after {
    background-color: #59b0e0;
}

@media screen and (max-width: 767px) {
    .c-title__jp {
        margin-top: 2.67vw;
        font-size: 36px;
        font-size: 4.8vw;
        line-height: 1.4;
    }
}

@media screen and (min-width: 768px) {
    .c-title__jp {
        margin-top: 20px;
        font-size: 20px;
        font-size: 2rem;
    }
}

/* title2
-------------------------------------------------------------------------- */
.c-title2 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    font-weight: 400;
    text-align: left;
}

.c-title2--center {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    text-align: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
}

.c-title2--center .c-title__en::after {
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
}

.c-title2__en {
    position: relative;
    font-family: 'Josefin Sans', sans-serif;
    font-weight: 400;
}

@media screen and (max-width: 767px) {
    .c-title2__en {
        font-size: 36px;
        font-size: 4.8vw;
    }
}

@media screen and (min-width: 768px) {
    .c-title2__en {
        font-size: 20px;
        font-size: 2rem;
        padding-bottom: 10px;
    }
}

.c-title2__en--realestate::after {
    background-color: #5cb563;
}

.c-title2__en--rent::after {
    background-color: #f9b9c0;
}

.c-title2__en--management::after {
    background-color: #fdf43f;
}

.c-title2__en--architecture::after {
    background-color: #59b0e0;
}

.c-title2__en--share::after {
    background-color: #5d330d;
}

@media screen and (max-width: 767px) {
    .c-title2__jp {
        margin-top: 1.33vw;
        line-height: 1.4;
        font-size: 54px;
        font-size: 7.2vw;
    }
}

@media screen and (min-width: 768px) {
    .c-title2__jp {
        font-size: 40px;
        font-size: 4rem;
        line-height: 1.3;
    }
}

/* title-xc
-------------------------------------------------------------------------- */
.c-title-xc {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    font-weight: 400;
    text-align: left;
}

@media screen and (max-width: 767px) {
    .c-title-xc {
        margin-top: 8vw;
        margin-bottom: 8vw;
    }
}

@media screen and (min-width: 768px) {
    .c-title-xc {
        margin-top: 60px;
        margin-bottom: 60px;
    }
}

.c-title-xc--center {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    text-align: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
}

.c-title-xc--center .c-title__en::after {
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
}

.c-title-xc__en {
    position: relative;
    font-family: 'Josefin Sans', sans-serif;
    font-weight: 400;
}

@media screen and (max-width: 767px) {
    .c-title-xc__en {
        font-size: 46px;
        font-size: 6.13vw;
    }
}

@media screen and (min-width: 768px) {
    .c-title-xc__en {
        font-size: 25px;
        font-size: 2.5rem;
    }
}

@media screen and (max-width: 767px) {
    .c-title-xc__jp {
        font-size: 20px;
        font-size: 2.0rem;
        line-height: 1.6;
    }
}

@media screen and (min-width: 768px) {
    .c-title-xc__jp {
        font-size: 30px;
        font-size: 3rem;
        line-height: 1.6;
    }
}

.balloon {
    position: relative;
    display: inline-block;
    background-color: #9e866e;
    color: #fff;
    padding: 16px;
    width: 100%;
    text-align: center;
}

@media screen and (max-width: 767px) {
    .balloon {
        margin-bottom: 8vw;
    }
}

@media screen and (min-width: 768px) {
    .balloon {
        margin-bottom: 60px;
    }
}

@media screen and (max-width: 767px) {
    .balloon {
        font-size: 18px;
        font-size: 1.8rem;
        line-height: 1.6;
    }
}

@media screen and (min-width: 768px) {
    .balloon {
        font-size: 25px;
        font-size: 2.5rem;
        line-height: 1.6;
    }
}

.balloon::before {
    content: '';
    position: absolute;
    border: solid 12px transparent;
    border-top: solid 12px #9e866e;
    top: 100%;
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
}

.balloon p {
    margin: 0;
    padding: 0;
}

/* title-wmax
-------------------------------------------------------------------------- */
.c-title-wmax {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    font-weight: 400;
    text-align: left;
}

@media screen and (max-width: 767px) {
    .c-title-wmax {
        margin-top: 8vw;
        margin-bottom: 8vw;
    }
}

@media screen and (min-width: 768px) {
    .c-title-wmax {
        margin-top: 60px;
        margin-bottom: 60px;
    }
}

.c-title-wmax__en {
    position: relative;
    font-family: 'Josefin Sans', sans-serif;
    font-weight: 400;
}

@media screen and (max-width: 767px) {
    .c-title-wmax__en {
        padding-bottom: 2.67vw;
        font-size: 44px;
        font-size: 5.87vw;
        line-height: 1.5;
        text-align: center;
    }
}

@media screen and (min-width: 768px) {
    .c-title-wmax__en {
        font-size: 30px;
        font-size: 3rem;
        padding-bottom: 10px;
    }
}

@media screen and (min-width: 768px) {
    .c-title-wmax__en {
        font-size: 45px;
        font-size: 4.5rem;
        padding-bottom: 10px;
    }
}

@media screen and (max-width: 767px) {
    .c-title-wmax__en span {
        font-size: 44px;
        font-size: 5.87vw;
    }
}

@media screen and (min-width: 768px) {
    .c-title-wmax__en span {
        font-size: 28px;
        font-size: 2.8rem;
    }
}

.c-title-wmax__en::before {
    position: absolute;
    left: 0;
    bottom: 0;
    display: block;
    content: '';
    background: #5d330d;
}

@media screen and (max-width: 767px) {
    .c-title-wmax__en::before {
        width: 100%;
        height: .53333vw;
    }
}

@media screen and (min-width: 768px) {
    .c-title-wmax__en::before {
        width: 100%;
        height: 2px;
    }
}

@media screen and (max-width: 767px) {
    .c-title-wmax__jp {
        margin-top: 2.67vw;
        margin-bottom: 2.67vw;
        font-size: 36px;
        font-size: 4.8vw;
        line-height: 1.4;
    }
}

@media screen and (min-width: 768px) {
    .c-title-wmax__jp {
        margin-top: 20px;
        margin-bottom: 20px;
        font-size: 30px;
        font-size: 3rem;
    }
}

/* utility
----------------------------------------------------------------- */
/* ==========================================================================
page ä¸‹å±¤ãƒšãƒ¼ã‚¸å…±é€šéƒ¨åˆ†
========================================================================== */
/* p-mv
   ----------------------------------------------------------------- */
.p-mv {
    position: relative;
    width: 100%;
    overflow: hidden;
}

.p-mv__title {
    position: absolute;
    top: 0;
    left: 50%;
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    position: absolute;
    z-index: 10;
    color: #fff;
    white-space: nowrap;
    text-align: left;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
}

@media screen and (max-width: 767px) {
    .p-mv__title {
        height: 100%;
        padding: 0vw 5.33vw 21.33vw 5.33vw;
    }
}

@media screen and (min-width: 768px) {
    .p-mv__title {
        height: 100vh;
        max-width: 1240px;
        margin-left: auto;
        margin-right: auto;
        padding-left: 20px;
        padding-right: 20px;
    }
}

.p-mv__en {
    font-weight: 900;
    width: 100%;
    line-height: 1.2;
}

@media screen and (max-width: 767px) {
    .p-mv__en {
        font-size: 64px;
        font-size: 8.53vw;
    }
}

@media screen and (min-width: 768px) {
    .p-mv__en {
        font-size: 70px;
        font-size: 7rem;
    }
}

.p-mv__jp {
    position: relative;
    font-weight: bold;
    letter-spacing: .1em;
    line-height: 1;
    font-weight: 400;
}

@media screen and (max-width: 767px) {
    .p-mv__jp {
        margin-top: 2.67vw;
        font-size: 28px;
        font-size: 3.73vw;
        line-height: 1.8;
    }
}

@media screen and (min-width: 768px) {
    .p-mv__jp {
        margin-top: 25px;
        font-size: 20px;
        font-size: 2rem;
        line-height: 1.8;
    }
}

.p-mv__wrapper {
    position: relative;
}

.p-mv__container, .p-mv__wrapper {
    width: 100%;
    height: 100vh !important;
    overflow: hidden;
}

@media screen and (min-width: 768px) {
    .p-mv__container, .p-mv__wrapper {
        min-height: 800px;
    }
}

.p-mv__slide {
    height: 100%;
    overflow: hidden;
}

.p-mv__image {
    background-size: cover;
    background-repeat: no-repeat;
    overflow: hidden;
    background-position: center center;
}

@media screen and (max-width: 767px) {
    .p-mv__image {
        width: 100%;
        height: 100%;
    }
}

@media screen and (min-width: 768px) {
    .p-mv__image {
        width: 100%;
        height: 100%;
    }
}

@media screen and (max-width: 767px) {
    .p-mv__image--01 {
        background-image: url(../images/index_slide_01_sp.jpg);
    }
}

@media screen and (min-width: 768px) {
    .p-mv__image--01 {
        background-image: url(../images/index_slide_01.jpg);
    }
}

@media screen and (max-width: 767px) {
    .p-mv__image--02 {
        background-image: url(../images/index_slide_02_sp.jpg);
    }
}

@media screen and (min-width: 768px) {
    .p-mv__image--02 {
        background-image: url(../images/index_slide_02.jpg);
    }
}

@media screen and (max-width: 767px) {
    .p-mv__image--03 {
        background-image: url(../images/index_slide_03_sp.jpg);
    }
}

@media screen and (min-width: 768px) {
    .p-mv__image--03 {
        background-image: url(../images/index_slide_03.jpg);
    }
}

@media screen and (max-width: 767px) {
    .p-mv__image--04 {
        background-image: url(../images/index_slide_04_sp.jpg);
    }
}

@media screen and (min-width: 768px) {
    .p-mv__image--04 {
        background-image: url(../images/index_slide_04.jpg);
    }
}

@media screen and (max-width: 767px) {
    .p-mv__image--05 {
        background-image: url(../images/index_slide_05_sp.jpg);
    }
}

@media screen and (min-width: 768px) {
    .p-mv__image--05 {
        background-image: url(../images/index_slide_05.jpg);
    }
}

@media screen and (max-width: 767px) {
    .p-mv__image--06 {
        background-image: url(../images/index_slide_06_sp.jpg);
    }
}

@media screen and (min-width: 768px) {
    .p-mv__image--06 {
        background-image: url(../images/index_slide_06.jpg);
    }
}

@media screen and (max-width: 767px) {
    .p-mv__image--07 {
        background-image: url(../images/index_slide_07_sp.jpg);
    }
}

@media screen and (min-width: 768px) {
    .p-mv__image--07 {
        background-image: url(../images/index_slide_07.jpg);
    }
}

@media screen and (max-width: 767px) {
    .p-mv__image--architecture01 {
        background-image: url(../images/kenchiku_bg_01_sp.jpg);
    }
}

@media screen and (min-width: 768px) {
    .p-mv__image--architecture01 {
        background-image: url(../images/kenchiku_bg_01.jpg);
    }
}

@media screen and (max-width: 767px) {
    .p-mv__image--architecture02 {
        background-image: url(../images/kenchiku_bg_02_sp.jpg);
    }
}

@media screen and (min-width: 768px) {
    .p-mv__image--architecture02 {
        background-image: url(../images/kenchiku_bg_02.jpg);
    }
}

@media screen and (max-width: 767px) {
    .p-mv__image--architecture03 {
        background-image: url(../images/kenchiku_bg_03_sp.jpg);
    }
}

@media screen and (min-width: 768px) {
    .p-mv__image--architecture03 {
        background-image: url(../images/kenchiku_bg_03.jpg);
    }
}

@media screen and (max-width: 767px) {
    .p-mv__image--modelhouse01 {
        background-image: url(../images/modelhouse_bg_01_sp.jpg);
    }
}

@media screen and (min-width: 768px) {
    .p-mv__image--modelhouse01 {
        background-image: url(../images/modelhouse_bg_01.jpg);
    }
}

@media screen and (max-width: 767px) {
    .p-mv__image--modelhouse02 {
        background-image: url(../images/modelhouse_bg_02_sp.jpg);
    }
}

@media screen and (min-width: 768px) {
    .p-mv__image--modelhouse02 {
        background-image: url(../images/modelhouse_bg_02.jpg);
    }
}

@media screen and (max-width: 767px) {
    .p-mv__image--modelhouse03 {
        background-image: url(../images/modelhouse_bg_03_sp.jpg);
    }
}

@media screen and (min-width: 768px) {
    .p-mv__image--modelhouse03 {
        background-image: url(../images/modelhouse_bg_03.jpg);
    }
}

.p-mv .swiper-slide-active .p-mv__image, .p-mv .swiper-slide-duplicate-active .p-mv__image, .p-mv .swiper-slide-prev .p-mv__image {
    -webkit-animation: zoomUp 10s linear 0s 1 normal both;
            animation: zoomUp 10s linear 0s 1 normal both;
}

.p-mv .slide-img img {
    display: block;
}

@-webkit-keyframes zoomUp {
    0% {
        -webkit-transform: scale(1);
                transform: scale(1);
    }
    100% {
        -webkit-transform: scale(1.15) rotate(.1deg);
                transform: scale(1.15) rotate(.1deg);
    }
}

@keyframes zoomUp {
    0% {
        -webkit-transform: scale(1);
                transform: scale(1);
    }
    100% {
        -webkit-transform: scale(1.15) rotate(.1deg);
                transform: scale(1.15) rotate(.1deg);
    }
}

/* p-main
   ----------------------------------------------------------------- */
@media screen and (max-width: 767px) {
    .p-main--top {
        padding: 0vw 0vw 20vw 0vw;
    }
}

@media screen and (min-width: 768px) {
    .p-main--top {
        padding-bottom: 120px;
    }
}

@media screen and (max-width: 767px) {
    .p-main--inside {
        padding: 0vw 0vw 0vw 0vw;
    }
}

@media screen and (min-width: 768px) {
    .p-main--inside {
        padding-bottom: 80px;
    }
}

.p-main__heading {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    background-color: #f8f1e3;
}

@media screen and (max-width: 767px) {
    .p-main__heading {
        padding: 26.67vw 0vw 26.67vw 0vw;
    }
}

@media screen and (min-width: 768px) {
    .p-main__heading {
        height: 300px;
    }
}

.p-main__title {
    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;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    letter-spacing: .05em;
    text-align: center;
}

@media screen and (max-width: 767px) {
    .p-main__en {
        font-size: 80px;
        font-size: 10.67vw;
    }
}

@media screen and (min-width: 768px) {
    .p-main__en {
        font-size: 60px;
        font-size: 6rem;
    }
}

.p-main__jp {
    font-weight: 400;
}

@media screen and (max-width: 767px) {
    .p-main__jp {
        margin-top: 2.67vw;
        font-size: 40px;
        font-size: 5.33vw;
    }
}

@media screen and (min-width: 768px) {
    .p-main__jp {
        margin-top: 20px;
        font-size: 24px;
        font-size: 2.4rem;
    }
}

/* p-page
-------------------------------------------------------------------------- */
.p-page {
    overflow: hidden;
}

.p-page__heading {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: distribute;
        justify-content: space-around;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    width: 100%;
    text-align: center;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
}

@media screen and (max-width: 767px) {
    .p-page__heading {
        height: 69.33333vw;
    }
}

@media screen and (min-width: 768px) {
    .p-page__heading {
        height: 500px;
    }
}

@media screen and (max-width: 767px) {
    .p-page__heading--company {
        background-image: url(../images/company_bg_01_sp.jpg);
    }
}

@media screen and (min-width: 768px) {
    .p-page__heading--company {
        background-image: url(../images/company_bg_01.jpg);
    }
}

.p-page__title {
    color: #fff;
}

.p-page__en, .p-page__jp {
    display: block;
    text-align: center;
}

.p-page__en {
    font-family: 'Josefin Sans', sans-serif;
    font-weight: 900;
}

@media screen and (max-width: 767px) {
    .p-page__en {
        font-size: 72px;
        font-size: 9.6vw;
    }
}

@media screen and (min-width: 768px) {
    .p-page__en {
        font-size: 50px;
        font-size: 5rem;
    }
}

.p-page__jp {
    letter-spacing: .1em;
    font-weight: 700;
}

@media screen and (max-width: 767px) {
    .p-page__jp {
        margin-top: 2vw;
        font-size: 34px;
        font-size: 4.53vw;
    }
}

@media screen and (min-width: 768px) {
    .p-page__jp {
        margin-top: 30px;
        font-size: 20px;
        font-size: 2rem;
    }
}

/* p-contentsBlock
----------------------------------------------------------------- */
@media screen and (max-width: 767px) {
    .p-contentsBlock {
        padding-top: 10vw;
    }
}

@media screen and (min-width: 768px) {
    .p-contentsBlock {
        padding-top: 80px;
    }
}

@media screen and (min-width: 768px) {
    .p-contentsBlock:first-child {
        padding-top: 60px;
        padding-bottom: 60px;
    }
}

@media screen and (max-width: 767px) {
    .p-contentsBlock--recruit {
        margin-top: 10vw;
    }
}

@media screen and (min-width: 768px) {
    .p-contentsBlock--recruit {
        margin-top: 0;
    }
}

@media screen and (max-width: 767px) {
    .p-contentsBlock--recommend {
        padding-top: 10px;
    }
}

@media screen and (min-width: 768px) {
    .p-contentsBlock--recommend {
        padding-top: 10px;
    }
}

@media screen and (min-width: 768px) {
    .p-contentsBlock--section {
        margin-top: 100px;
    }
}

@media screen and (min-width: 768px) {
    .p-contentsBlock--serviceMenu {
        margin-top: 60px;
        padding-bottom: 10px;
    }
}

@media screen and (max-width: 767px) {
    .p-contentsBlock--member {
        margin-top: 8vw;
        margin-bottom: 2.67vw;
    }
}

@media screen and (min-width: 768px) {
    .p-contentsBlock--member {
        margin-top: 60px;
        padding-bottom: 10px;
    }
}

@media screen and (max-width: 767px) {
    .p-contentsBlock--memberBox {
        margin-bottom: 6.67vw;
        margin-top: 20vw;
    }
}

@media screen and (min-width: 768px) {
    .p-contentsBlock--memberBox {
        margin-top: 15px;
        padding-bottom: 10px;
    }
}

@media screen and (min-width: 768px) {
    .p-contentsBlock--conversion {
        margin-top: 100px;
    }
}

@media screen and (min-width: 768px) {
    .p-contentsBlock--modelhouse01 {
        margin-top: 145px;
    }
}

@media screen and (max-width: 767px) {
    .p-contentsBlock--modelhouse02 {
        padding-top: 0 !important;
        padding-bottom: 20vw;
    }
}

@media screen and (min-width: 768px) {
    .p-contentsBlock--modelhouse02 {
        margin-top: 90px;
        margin-bottom: 45px;
    }
}

@media screen and (min-width: 768px) {
    .p-contentsBlock__grid {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: justify;
            -ms-flex-pack: justify;
                justify-content: space-between;
        max-width: 1200px;
        margin-left: auto;
        margin-right: auto;
    }
}

.p-contentsBlock__cell {
    position: relative;
}

@media screen and (max-width: 767px) {
    .p-contentsBlock__cell {
        padding: 0vw 5.33vw 13.33vw 5.33vw;
    }
}

@media screen and (min-width: 768px) {
    .p-contentsBlock__cell {
        width: 50%;
        padding: 40px 0 25px;
    }
}

@media screen and (max-width: 767px) {
    .p-contentsBlock__cell--secondary {
        padding: 13.33vw 5.33vw 13.33vw 5.33vw;
    }
}

@media screen and (min-width: 768px) {
    .p-contentsBlock__cell--secondary {
        padding-left: 25px;
    }
}

@media screen and (min-width: 768px) {
    .p-contentsBlock__cell:nth-child(odd) {
        padding-right: 20px;
    }
}

@media screen and (min-width: 768px) {
    .p-contentsBlock__cell:nth-child(even) {
        padding-left: 25px;
    }
}

.p-contentsBlock__cell--secondary::after {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    content: '';
    width: 1000%;
    height: 100%;
    background-color: #f8f1e3;
    z-index: -1;
}

@media screen and (max-width: 767px) {
    .p-contentsBlock__body {
        padding-top: 10.67vw;
    }
}

@media screen and (min-width: 768px) {
    .p-contentsBlock__body {
        padding-top: 40px;
    }
}

@media screen and (max-width: 767px) {
    .p-contentsBlock__shop {
        padding-top: 5.33vw;
        padding-bottom: 5.33vw;
    }
}

@media screen and (min-width: 768px) {
    .p-contentsBlock__shop {
        padding-top: 40px;
        padding-bottom: 40px;
    }
}

@media screen and (min-width: 768px) {
    .p-contentsBlock__text--center {
        text-align: center;
    }
}

@media screen and (max-width: 767px) {
    .p-contentsBlock__text--menu {
        padding-left: 5.33vw;
        padding-right: 5.33vw;
        margin-top: 5.33vw;
    }
}

@media screen and (max-width: 767px) {
    .p-contentsBlock__button {
        margin-top: 10.67vw;
    }
}

@media screen and (min-width: 768px) {
    .p-contentsBlock__button {
        margin-top: 40px;
    }
}

/* p-visual
-------------------------------------------------------------------------- */
.p-visual {
    position: relative;
    width: 100%;
    height: 100vh;
    overflow: hidden;
    background-size: cover;
    background-position: center center;
}

@media screen and (min-width: 768px) {
    .p-visual {
        min-height: 800px;
    }
}

.p-visual--architecture .p-visual__en::after {
    background-color: #59b0e0;
}

.p-visual--architecture .p-visual__en::before {
    background-color: #5d330d;
}

.p-visual__container {
    position: absolute;
    top: 0;
    left: 50%;
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    position: absolute;
    z-index: 10;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
}

@media screen and (max-width: 767px) {
    .p-visual__container {
        height: 100%;
        padding: 0vw 5.33vw 0vw 5.33vw;
    }
}

@media screen and (min-width: 768px) {
    .p-visual__container {
        height: 100vh;
        max-width: 1240px;
        margin-left: auto;
        margin-right: auto;
        padding-left: 20px;
        padding-right: 20px;
    }
}

@media screen and (min-width: 768px) {
    .p-visual__container {
        height: 100vh;
        min-height: 710px;
        max-width: 1240px;
        margin-left: auto;
        margin-right: auto;
        padding-left: 20px;
        padding-right: 20px;
    }
}

.p-visual__title {
    color: #fff;
    text-align: center;
}

@media screen and (max-width: 767px) {
    .p-visual__title {
        -webkit-transform: translateY(0%);
                transform: translateY(0%);
    }
}

@media screen and (min-width: 768px) {
    .p-visual__title {
        -webkit-transform: translateY(0%);
                transform: translateY(0%);
    }
}

.p-visual__en {
    position: relative;
    font-weight: 900;
    line-height: 1.2;
    display: inline-block;
}

@media screen and (max-width: 767px) {
    .p-visual__en {
        padding-bottom: .67vw;
        font-size: 80px;
        font-size: 10.67vw;
    }
}

@media screen and (min-width: 768px) {
    .p-visual__en {
        font-size: 70px;
        font-size: 7rem;
    }
}

.p-visual__en::after {
    position: absolute;
    left: 0;
    bottom: 0;
    display: block;
    content: '';
    width: 50%;
}

@media screen and (max-width: 767px) {
    .p-visual__en::after {
        height: .4vw;
    }
}

@media screen and (min-width: 768px) {
    .p-visual__en::after {
        height: 2px;
    }
}

.p-visual__en::before {
    position: absolute;
    left: 0;
    bottom: 0;
    display: block;
    content: '';
    width: 100%;
}

@media screen and (max-width: 767px) {
    .p-visual__en::before {
        height: .4vw;
    }
}

@media screen and (min-width: 768px) {
    .p-visual__en::before {
        height: 2px;
    }
}

.p-visual__jp {
    position: relative;
    font-weight: bold;
    letter-spacing: .05em;
    line-height: 1;
    font-weight: 400;
}

@media screen and (max-width: 767px) {
    .p-visual__jp {
        margin-top: 1.33vw;
        font-size: 40px;
        font-size: 5.33vw;
        line-height: 1.8;
    }
}

@media screen and (min-width: 768px) {
    .p-visual__jp {
        padding-top: 12px;
        font-size: 30px;
        font-size: 3rem;
        line-height: 1;
    }
}

.p-visual__soldout {
    position: relative;
    font-weight: bold;
    letter-spacing: .05em;
    line-height: 1;
    color: red;
}

@media screen and (max-width: 767px) {
    .p-visual__soldout {
        margin-top: 1.33vw;
        font-size: 40px;
        font-size: 5.33vw;
        line-height: 1.8;
    }
}

@media screen and (min-width: 768px) {
    .p-visual__soldout {
        padding-top: 12px;
        font-size: 30px;
        font-size: 3rem;
        line-height: 1;
    }
}

.p-visual__image {
    display: inline-block;
    width: 470px;
    background: rgba(255, 255, 255, .5);
    padding: 10px 20px;
    margin-top: 30px;
}

@media screen and (max-width: 767px) {
    .p-visual__image {
        width: 300px;
    }
}

.p-visual__slider {
    position: absolute;
    top: 0;
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    width: 100%;
    height: 100%;
}

/* p-deals
   ----------------------------------------------------------------- */
.p-deals {
    color: #fff;
    z-index: 90;
    width: 100%;
    background-color: rgba(93, 51, 13, .7);
}

@media screen and (max-width: 767px) {
    .p-deals {
        padding: 4vw 0vw 4vw 0vw;
        background-color: #5d330d;
    }
}

@media screen and (min-width: 768px) {
    .p-deals {
        position: absolute;
        bottom: 0;
        left: 0;
        padding: 18px 0 14px;
    }
}

.p-deals__message {
    text-align: center;
}

@media screen and (max-width: 767px) {
    .p-deals__message {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
            -ms-flex-direction: column;
                flex-direction: column;
        margin-bottom: 4vw;
    }
}

@media screen and (min-width: 768px) {
    .p-deals__message {
        margin-bottom: 20px;
    }
}

.p-deals__en {
    font-weight: 700;
}

@media screen and (max-width: 767px) {
    .p-deals__en {
        margin-bottom: .67vw;
        font-size: 28px;
        font-size: 3.73vw;
    }
}

@media screen and (min-width: 768px) {
    .p-deals__en {
        font-size: 26px;
        font-size: 2.6rem;
    }
}

@media screen and (min-width: 768px) {
    .p-deals__en {
        margin-right: 15px;
        font-size: 30px;
        font-size: 3rem;
    }
}

.p-deals__jp {
    font-weight: 400;
}

@media screen and (max-width: 767px) {
    .p-deals__jp {
        font-size: 26px;
        font-size: 3.47vw;
    }
}

@media screen and (min-width: 768px) {
    .p-deals__jp {
        font-size: 26px;
        font-size: 2.6rem;
    }
}

.p-deals__container {
    position: relative;
}

@media screen and (max-width: 767px) {
    .p-deals__container {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
            -ms-flex-direction: column;
                flex-direction: column;
        padding: 0vw 5.33vw 0vw 5.33vw;
    }
}

@media screen and (min-width: 768px) {
    .p-deals__container {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        padding: 0 20px;
        margin-left: auto;
        margin-right: auto;
    }
}

@media screen and (min-width: 768px) {
    .p-deals__container {
        -webkit-box-pack: center;
            -ms-flex-pack: center;
                justify-content: center;
        max-width: 1160px;
    }
}

.p-deals__col {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
}

@media screen and (max-width: 767px) {
    .p-deals__col {
        width: 100%;
        margin-top: 3.33vw;
    }
}

@media screen and (min-width: 768px) {
    .p-deals__col {
        width: 50%;
        padding: 5px 0 14px;
    }
}

@media screen and (max-width: 767px) {
    .p-deals__col:nth-child(1) {
        margin-top: 0;
    }
}

@media screen and (min-width: 768px) {
    .p-deals__col:nth-child(1) {
        padding-right: 30px;
    }
}

@media screen and (min-width: 768px) {
    .p-deals__col:nth-child(2) {
        padding-left: 40px;
        border-left: 1px solid #fff;
    }
}

@media screen and (max-width: 767px) {
    .p-deals__label {
        display: block;
        font-size: 22px;
        font-size: 2.93vw;
        margin-bottom: 1.33vw;
    }
}

@media screen and (min-width: 768px) {
    .p-deals__label {
        display: inline-block;
        font-size: 14px;
        font-size: 1.4rem;
    }
}

@media screen and (min-width: 768px) {
    .p-deals__label {
        margin-bottom: 15px;
        font-size: 16px;
        font-size: 1.6rem;
    }
}

@media screen and (max-width: 767px) {
    .p-deals__title {
        font-size: 28px;
        font-size: 3.73vw;
    }
}

@media screen and (min-width: 768px) {
    .p-deals__title {
        font-size: 20px;
        font-size: 2rem;
    }
}

@media screen and (min-width: 768px) {
    .p-deals__title {
        font-size: 30px;
        font-size: 3rem;
    }
}

.p-deals__counter {
    font-weight: 700;
    line-height: 1;
}

@media screen and (max-width: 767px) {
    .p-deals__counter {
        font-size: 60px;
        font-size: 8vw;
    }
}

@media screen and (min-width: 768px) {
    .p-deals__counter {
        -webkit-transform: translateY(5px);
                transform: translateY(5px);
        font-size: 40px;
        font-size: 4rem;
    }
}

@media screen and (min-width: 768px) {
    .p-deals__counter {
        font-size: 60px;
        font-size: 6rem;
    }
}

.p-deals__counter::after {
    content: '\4EF6';
}

@media screen and (max-width: 767px) {
    .p-deals__counter::after {
        font-size: 28px;
        font-size: 3.73vw;
    }
}

@media screen and (min-width: 768px) {
    .p-deals__counter::after {
        font-size: 30px;
        font-size: 3rem;
    }
}

/* p-serviceMenu
----------------------------------------------------------------- */
@media screen and (min-width: 768px) {
    .p-serviceMenu--inside .p-serviceMenu__item {
        margin-top: 0;
        padding-top: 20px;
        padding-left: 20px;
        max-width: 380px;
        width: 31.66%;
    }
}

@media screen and (min-width: 768px) {
    .p-serviceMenu--inside .p-serviceMenu__heading {
        width: 300px;
        padding: 30px;
    }
}

@media screen and (min-width: 768px) {
    .p-serviceMenu--inside .p-serviceMenu__en {
        font-size: 29px;
        font-size: 2.9rem;
    }
}

@media screen and (min-width: 768px) {
    .p-serviceMenu--inside .p-serviceMenu__jp {
        margin-bottom: 20px;
        font-size: 20px;
        font-size: 2rem;
    }
}

@media screen and (min-width: 768px) {
    .p-serviceMenu--inside .p-serviceMenu__caption {
        font-size: 15px;
        font-size: 1.5rem;
    }
}

@media screen and (min-width: 768px) {
    .p-serviceMenu__list {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
    }
}

@media screen and (min-width: 768px) {
    .p-serviceMenu__list {
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
        -webkit-box-pack: justify;
            -ms-flex-pack: justify;
                justify-content: space-between;
    }
}

.p-serviceMenu__item {
    position: relative;
}

@media screen and (max-width: 767px) {
    .p-serviceMenu__item {
        margin-top: 8vw;
        padding: 5.33vw 0vw 0vw 8vw;
    }
}

@media screen and (min-width: 768px) {
    .p-serviceMenu__item {
        margin-top: 50px;
        padding-top: 50px;
        padding-left: 80px;
        width: 560px;
    }
}

@media screen and (min-width: 768px) {
    .p-serviceMenu__item {
        max-width: 560px;
        width: 46.66%;
    }
}

@media screen and (max-width: 767px) {
    .p-serviceMenu__item:first-child {
        margin-top: 0;
    }
}

@media screen and (min-width: 768px) {
    .p-serviceMenu__item:nth-child(-n+2) {
        margin-top: 0;
    }
}

.p-serviceMenu__heading {
    position: absolute;
    top: 0;
    left: 0;
    color: #fff;
    background: rgba(93, 51, 13, .6);
}

@media screen and (max-width: 767px) {
    .p-serviceMenu__heading {
        width: 58.66667vw;
        padding: 4.67vw 5.33vw 4.67vw 5.33vw;
    }
}

@media screen and (min-width: 768px) {
    .p-serviceMenu__heading {
        width: 360px;
        padding: 18px 20px 20px;
    }
}

.p-serviceMenu__title {
    font-weight: 400;
}

.p-serviceMenu__en {
    display: block;
    line-height: 1.25;
}

@media screen and (max-width: 767px) {
    .p-serviceMenu__en {
        padding-bottom: 1.33vw;
        margin-bottom: 3.33vw;
        font-size: 44px;
        font-size: 5.87vw;
    }
}

@media screen and (min-width: 768px) {
    .p-serviceMenu__en {
        padding-bottom: 3px;
        margin-bottom: 20px;
        font-size: 38px;
        font-size: 3.8rem;
    }
}

@media screen and (max-width: 767px) {
    .p-serviceMenu__en--realestate {
        border-bottom: .26667vw solid #5cb563;
    }
}

@media screen and (min-width: 768px) {
    .p-serviceMenu__en--realestate {
        border-bottom: 1px solid #5cb563;
    }
}

@media screen and (max-width: 767px) {
    .p-serviceMenu__en--rent {
        border-bottom: .26667vw solid #f9b9c0;
    }
}

@media screen and (min-width: 768px) {
    .p-serviceMenu__en--rent {
        border-bottom: 1px solid #f9b9c0;
    }
}

@media screen and (max-width: 767px) {
    .p-serviceMenu__en--architecture {
        border-bottom: .26667vw solid #59b0e0;
    }
}

@media screen and (min-width: 768px) {
    .p-serviceMenu__en--architecture {
        border-bottom: 1px solid #59b0e0;
    }
}

@media screen and (max-width: 767px) {
    .p-serviceMenu__en--management {
        border-bottom: .26667vw solid #fdf43f;
    }
}

@media screen and (min-width: 768px) {
    .p-serviceMenu__en--management {
        border-bottom: 1px solid #fdf43f;
    }
}

.p-serviceMenu__jp {
    display: block;
    line-height: 1;
}

@media screen and (max-width: 767px) {
    .p-serviceMenu__jp {
        margin-bottom: 4vw;
        font-size: 36px;
        font-size: 4.8vw;
    }
}

@media screen and (min-width: 768px) {
    .p-serviceMenu__jp {
        margin-bottom: 30px;
        font-size: 30px;
        font-size: 3rem;
    }
}

.p-serviceMenu__button {
    margin-left: auto;
    margin-right: auto;
}

@media screen and (min-width: 768px) {
    .p-serviceMenu__visual {
        width: 100%;
    }
}

@media screen and (min-width: null) {
    .p-serviceMenu__visual {
        max-width: 480px;
    }
}

@media screen and (max-width: 767px) {
    .p-serviceMenu__caption {
        margin-top: 1.33vw;
    }
}

@media screen and (min-width: 768px) {
    .p-serviceMenu__caption {
        margin-top: 12px;
    }
}

/* p-pickup
-------------------------------------------------------------------------- */
.p-pickup {
    color: #fff;
}

.p-pickup--advantage {
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
}

@media screen and (max-width: 767px) {
    .p-pickup--advantage {
        background-image: url(../images/top_bg_01_sp.jpg);
    }
}

@media screen and (min-width: 768px) {
    .p-pickup--advantage {
        background-image: url(../images/common_bg_01.jpg);
    }
}

@media screen and (min-width: 768px) {
    .p-pickup__list {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: justify;
            -ms-flex-pack: justify;
                justify-content: space-between;
    }
}

.p-pickup__item {
    width: 100%;
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
}

@media screen and (min-width: 768px) {
    .p-pickup__item {
        width: 50%;
    }
}

@media screen and (max-width: 767px) {
    .p-pickup__item--advantage {
        background-image: url(../images/top_bg_01_sp.jpg);
    }
}

@media screen and (min-width: 768px) {
    .p-pickup__item--advantage {
        background-image: url(../images/top_bg_01.jpg);
    }
}

@media screen and (min-width: 768px) {
    .p-pickup__item--advantage .p-pickup__content {
        margin-left: auto;
    }
}

@media screen and (max-width: 767px) {
    .p-pickup__item--voice {
        background-image: url(../images/top_bg_02_sp.jpg);
    }
}

@media screen and (min-width: 768px) {
    .p-pickup__item--voice {
        background-image: url(../images/top_bg_02.jpg);
    }
}

@media screen and (min-width: 768px) {
    .p-pickup__item--voice .p-pickup__content {
        margin-right: auto;
    }
}

.p-pickup__content {
    width: 100%;
    text-align: center;
    margin-left: auto;
    margin-right: auto;
}

@media screen and (max-width: 767px) {
    .p-pickup__content {
        padding: 12vw 5.33vw 12vw 5.33vw;
    }
}

@media screen and (min-width: 768px) {
    .p-pickup__content {
        padding: 90px 0 95px;
    }
}

@media screen and (min-width: 768px) {
    .p-pickup__content {
        max-width: 600px;
    }
}

@media screen and (min-width: 768px) {
    .p-pickup__content--col1 {
        padding: 43px 0;
    }
}

.p-pickup__title {
    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;
}

@media screen and (max-width: 767px) {
    .p-pickup__title {
        margin-bottom: 5.33vw;
    }
}

@media screen and (min-width: 768px) {
    .p-pickup__title {
        margin-bottom: 20px;
    }
}

.p-pickup__en {
    position: relative;
    font-weight: 700;
}

@media screen and (max-width: 767px) {
    .p-pickup__en {
        font-size: 60px;
        font-size: 8vw;
        padding-bottom: 2.67vw;
    }
}

@media screen and (min-width: 768px) {
    .p-pickup__en {
        font-size: 50px;
        font-size: 5rem;
        padding-bottom: 20px;
    }
}

.p-pickup__en::after {
    display: block;
    content: '';
    position: absolute;
    bottom: 0;
    left: 50%;
    background-color: #fff;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
}

@media screen and (max-width: 767px) {
    .p-pickup__en::after {
        width: 50%;
        height: .53333vw;
    }
}

@media screen and (min-width: 768px) {
    .p-pickup__en::after {
        width: 340px;
        height: 2px;
    }
}

.p-pickup__jp {
    font-weight: 400;
}

@media screen and (max-width: 767px) {
    .p-pickup__jp {
        margin-top: 2.67vw;
        font-size: 40px;
        font-size: 5.33vw;
    }
}

@media screen and (min-width: 768px) {
    .p-pickup__jp {
        margin-top: 30px;
        font-size: 30px;
        font-size: 3rem;
    }
}

@media screen and (max-width: 767px) {
    .p-pickup__caption {
        text-align: left;
        margin-bottom: 5.33vw;
    }
}

@media screen and (min-width: 768px) {
    .p-pickup__caption {
        margin-bottom: 20px;
    }
}

.p-pickup__button {
    margin-left: auto;
    margin-right: auto;
}

/* p-entriesGroup
   ----------------------------------------------------------------- */
@media screen and (min-width: 768px) {
    .p-entriesGroup__container {
        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;
    }
}

@media screen and (max-width: 767px) {
    .p-entriesGroup__col {
        margin-top: 16vw;
    }
}

@media screen and (min-width: 768px) {
    .p-entriesGroup__col {
        margin-top: 60px;
    }
}

@media screen and (min-width: 768px) {
    .p-entriesGroup__col {
        width: 48.33%;
    }
}

@media screen and (min-width: 768px) {
    .p-entriesGroup__col {
        width: 45.83%;
    }
}

@media screen and (max-width: 767px) {
    .p-entriesGroup__col:first-child {
        margin-top: 0;
    }
}

@media screen and (min-width: 768px) {
    .p-entriesGroup__col:nth-child(-n+2) {
        margin-top: 0;
    }
}

.p-entriesGroup__body {
    width: 100%;
}

@media screen and (max-width: 767px) {
    .p-entriesGroup__body {
        padding-top: 5.33vw;
    }
}

@media screen and (min-width: 768px) {
    .p-entriesGroup__body {
        padding-top: 20px;
    }
}

@media screen and (min-width: 768px) {
    .p-entriesGroup__list--grid {
        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;
    }
}

@media screen and (min-width: 768px) {
    .p-entriesGroup__list--grid .p-entriesGroup__item {
        width: 48.33%;
        margin-bottom: 0;
        margin-top: 20px;
    }
}

@media screen and (min-width: 768px) {
    .p-entriesGroup__list--grid .p-entriesGroup__item:nth-child(-n+2) {
        margin-top: 0;
    }
}

@media screen and (max-width: 767px) {
    .p-entriesGroup__item {
        margin-bottom: 4.67vw;
        padding-bottom: 4.67vw;
        border-bottom: .26667vw solid #c2c2c2;
    }
}

@media screen and (min-width: 768px) {
    .p-entriesGroup__item {
        margin-bottom: 20px;
        padding-bottom: 15px;
        border-bottom: 1px solid #c2c2c2;
    }
}

@media screen and (min-width: 768px) {
    .p-entriesGroup__item:last-child {
        margin-bottom: 0;
    }
}

/* p-entries
   ----------------------------------------------------------------- */
.p-entries {
    display: block;
    text-decoration: none;
}

.p-entries__meta {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
}

@media screen and (max-width: 767px) {
    .p-entries__meta {
        margin-bottom: 1.87vw;
    }
}

@media screen and (min-width: 768px) {
    .p-entries__meta {
        margin-bottom: 7px;
    }
}

.p-entries__date {
    display: inline-block;
    font-weight: 400;
}

@media screen and (max-width: 767px) {
    .p-entries__date {
        margin-top: 1.07vw;
    }
}

@media screen and (min-width: 768px) {
    .p-entries__date {
        margin-top: 2px;
        font-size: 16px;
        font-size: 1.6rem;
    }
}

.p-entries__label {
    display: inline-block;
    color: #fff;
    font-weight: 400;
    background-color: #ff0a0a;
}

@media screen and (max-width: 767px) {
    .p-entries__label {
        font-size: 20px;
        font-size: 2.67vw;
        padding: 1.33vw .8vw .67vw .8vw;
        margin-left: 2.67vw;
    }
}

@media screen and (min-width: 768px) {
    .p-entries__label {
        margin-left: 10px;
        padding: 5px 4px 2px;
        font-size: 10px;
        font-size: 1rem;
    }
}

.p-entries__title {
    font-weight: 700;
    line-height: 1.8;
}

@media screen and (min-width: 768px) {
    .p-entries__title {
        font-size: 16px;
        font-size: 1.6rem;
    }
}

.p-entries__text {
    font-weight: 400;
    line-height: 1.8;
}

@media screen and (min-width: 768px) {
    .p-entries__text {
        font-size: 16px;
        font-size: 1.6rem;
    }
}

/* p-entriesSub
   ----------------------------------------------------------------- */
.p-entriesSub {
    display: block;
    text-decoration: none;
}

.p-entriesSub__meta {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
}

@media screen and (max-width: 767px) {
    .p-entriesSub__meta {
        margin-bottom: 1.87vw;
    }
}

@media screen and (min-width: 768px) {
    .p-entriesSub__meta {
        margin-bottom: 7px;
    }
}

.p-entriesSub__date {
    display: inline-block;
    font-weight: 400;
}

@media screen and (max-width: 767px) {
    .p-entriesSub__date {
        margin-top: 1.07vw;
    }
}

@media screen and (min-width: 768px) {
    .p-entriesSub__date {
        margin-top: 2px;
        font-size: 16px;
        font-size: 1.6rem;
    }
}

.p-entriesSub__label {
    display: inline-block;
    color: #fff;
    font-weight: 400;
    background-color: #ff0a0a;
}

@media screen and (max-width: 767px) {
    .p-entriesSub__label {
        font-size: 20px;
        font-size: 2.67vw;
        padding: 1.33vw .8vw .67vw .8vw;
        margin-left: 2.67vw;
    }
}

@media screen and (min-width: 768px) {
    .p-entriesSub__label {
        margin-left: 10px;
        padding: 5px 4px 2px;
        font-size: 10px;
        font-size: 1rem;
    }
}

.p-entriesSub__title {
    font-weight: 700;
    line-height: 1.8;
}

@media screen and (min-width: 768px) {
    .p-entriesSub__title {
        font-size: 16px;
        font-size: 1.6rem;
    }
}

.p-entriesSub__text {
    font-weight: 400;
    line-height: 1.8;
}

@media screen and (min-width: 768px) {
    .p-entriesSub__text {
        font-size: 16px;
        font-size: 1.6rem;
    }
}

/* p-menuButton
   ----------------------------------------------------------------- */
.p-menuButton {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    text-decoration: none;
    background-color: #fff;
}

@media screen and (max-width: 767px) {
    .p-menuButton {
        padding: 2.67vw 4vw 2.67vw 4vw;
        border: .26667vw solid #c9c9c9;
    }
}

@media screen and (min-width: 768px) {
    .p-menuButton {
        padding: 14px 20px;
        border: 1px solid #c9c9c9;
        min-height: 115px;
    }
}

@media screen and (min-width: 768px) {
    .p-menuButton--contact {
        max-width: 440px;
    }
}

@media screen and (max-width: 767px) {
    .p-menuButton--contact .p-menuButton__icon {
        margin-right: 12vw;
    }
}

@media screen and (min-width: 768px) {
    .p-menuButton--contact .p-menuButton__icon {
        margin-right: 60px;
    }
}

@media screen and (max-width: 767px) {
    .p-menuButton--contact .p-menuButton__en {
        padding-top: 1.33vw;
    }
}

@media screen and (min-width: 768px) {
    .p-menuButton--contact .p-menuButton__en {
        padding-top: 10px;
    }
}

@media screen and (min-width: 768px) {
    .p-menuButton--reserve {
        max-width: 100%;
        text-align: center;
    }
    .p-menuButton--reserve .p-menuButton__title {
        width: 60%;
        text-align: center;
    }
}

@media screen and (max-width: 767px) {
    .p-menuButton--reserve .p-menuButton__icon {
        margin-right: 12vw;
    }
}

@media screen and (min-width: 768px) {
    .p-menuButton--reserve .p-menuButton__icon {
        margin-right: 60px;
    }
}

@media screen and (max-width: 767px) {
    .p-menuButton--reserve .p-menuButton__en {
        padding-top: 1.33vw;
    }
}

@media screen and (min-width: 768px) {
    .p-menuButton--reserve .p-menuButton__en {
        font-size: 50px;
        font-size: 5rem;
        padding-top: 10px;
    }
}

.p-menuButton__icon {
    display: inline-block;
}

@media screen and (max-width: 767px) {
    .p-menuButton__icon {
        width: 14.66667vw;
        margin-right: 2.67vw;
    }
}

@media screen and (min-width: 768px) {
    .p-menuButton__icon {
        width: 70px;
        margin-right: 10px;
    }
}

.p-menuButton__title {
    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;
}

@media screen and (max-width: 767px) {
    .p-menuButton__en {
        font-size: 50px;
        font-size: 6.67vw;
    }
}

@media screen and (min-width: 768px) {
    .p-menuButton__en {
        font-size: 32px;
        font-size: 3.2rem;
    }
}

@media screen and (min-width: 768px) {
    .p-menuButton__en {
        font-size: 36px;
        font-size: 3.6rem;
    }
}

.p-menuButton__jp {
    color: #4e4e4e;
    font-weight: 400;
}

@media screen and (max-width: 767px) {
    .p-menuButton__jp {
        margin-top: 1.07vw;
        font-size: 32px;
        font-size: 4.27vw;
    }
}

@media screen and (min-width: 768px) {
    .p-menuButton__jp {
        margin-top: 4px;
        font-size: 18px;
        font-size: 1.8rem;
    }
}

/* p-carousel
   ----------------------------------------------------------------- */
.p-carousel {
    position: relative;
}

@media screen and (min-width: 768px) {
    .p-carousel {
        width: 100%;
    }
}

.p-carousel .swiper-button-prev, .p-carousel .swiper-button-next {
    display: block;
    color: #000;
}

@media screen and (max-width: 767px) {
    .p-carousel .swiper-button-prev, .p-carousel .swiper-button-next {
        width: 10.66667vw;
        height: 10.66667vw;
        font-size: 80px;
        font-size: 10.67vw;
        margin-top: -12vw;
    }
}

@media screen and (min-width: 768px) {
    .p-carousel .swiper-button-prev, .p-carousel .swiper-button-next {
        width: 80px;
        height: 80px;
        font-size: 80px;
        font-size: 8rem;
        margin-top: -68px;
    }
}

.p-carousel .swiper-button-prev::after, .p-carousel .swiper-button-next::after {
    display: none;
}

@media screen and (max-width: 767px) {
    .p-carousel .swiper-button-prev {
        left: -6.67vw;
    }
}

@media screen and (min-width: 768px) {
    .p-carousel .swiper-button-prev {
        left: 0;
    }
}

@media screen and (min-width: 1400px) {
    .p-carousel .swiper-button-prev {
        left: -100px;
    }
}

@media screen and (max-width: 767px) {
    .p-carousel .swiper-button-next {
        right: -6.67vw;
    }
}

@media screen and (min-width: 768px) {
    .p-carousel .swiper-button-next {
        right: 0;
    }
}

@media screen and (min-width: 1400px) {
    .p-carousel .swiper-button-next {
        right: -100px;
    }
}

/* p-voiceEntries
   ----------------------------------------------------------------- */
.p-voiceEntries {
    display: block;
    text-decoration: none;
    text-align: center;
}

.p-voiceEntries__heading {
    line-height: 1.8;
}

@media screen and (max-width: 767px) {
    .p-voiceEntries__heading {
        margin-top: 2.67vw;
    }
}

@media screen and (min-width: 768px) {
    .p-voiceEntries__heading {
        margin-top: 12px;
    }
}

.p-voiceEntries__title {
    font-weight: 400;
}

@media screen and (min-width: 768px) {
    .p-voiceEntries__thumbnail img {
        height: 294px;
        width: 294px;
    }
}

@media screen and (max-width: 767px) {
    .p-voiceEntries__thumbnail img {
        height: 30.5vw;
        width: 30.5vw;
    }
}

@media screen and (max-width: 767px) {
    .p-voiceEntries__thumbnail img {
        height: 42vw;
        width: 42vw;
    }
}

/* p-realestateCard
-------------------------------------------------------------------------- */
.p-realestateCard {
    background-color: #fff;
}

@media screen and (max-width: 767px) {
    .p-realestateCard {
        padding: 5.33vw 5.33vw 5.33vw 5.33vw;
        border: .26667vw solid #b7b7b7;
    }
}

@media screen and (min-width: 768px) {
    .p-realestateCard {
        padding: 19px;
        border: 1px solid #b7b7b7;
    }
}

.p-realestateCard__link {
    display: block;
    text-decoration: none;
}

.p-realestateCard__link:hover {
    opacity: .8;
}

@media screen and (min-width: 768px) {
    .p-realestateCard__content {
        width: 100%;
        margin-bottom: 20px;
    }
}

@media screen and (min-width: 768px) {
    .p-realestateCard__content {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: justify;
            -ms-flex-pack: justify;
                justify-content: space-between;
    }
}

.p-realestateCard__thumbnail {
    position: relative;
}

@media screen and (max-width: 767px) {
    .p-realestateCard__thumbnail {
        margin-bottom: 5.33vw;
    }
}

@media screen and (min-width: 768px) {
    .p-realestateCard__thumbnail {
        -webkit-box-flex: 1;
            -ms-flex: 1;
                flex: 1;
    }
}

@media screen and (max-width: 767px) {
    .p-realestateCard__image {
        width: 100%;
        height: 60vw;
    }
}

@media screen and (min-width: 768px) {
    .p-realestateCard__image {
        width: 100%;
        height: 100%;
    }
}

@media screen and (max-width: 767px) {
    .p-realestateCard__label {
        width: 10.66667vw;
        height: 10.66667vw;
    }
}

@media screen and (min-width: 768px) {
    .p-realestateCard__label {
        width: 60px;
        height: 60px;
        border-radius: 30px;
    }
}

@media screen and (min-width: 768px) {
    .p-realestateCard__summary {
        width: 210px;
        margin-left: 3.38%;
    }
}

.p-realestateCard__category {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    padding: 0;
    width: 100%;
    font-weight: 400;
    text-decoration: none;
    text-align: center;
}

@media screen and (max-width: 767px) {
    .p-realestateCard__category {
        width: 100%;
        font-size: 40px;
        font-size: 5.33vw;
        height: 10.66667vw;
    }
}

@media screen and (min-width: 768px) {
    .p-realestateCard__category {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: center;
            -ms-flex-pack: center;
                justify-content: center;
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center;
        height: 40px;
        line-height: 1;
        font-size: 20px;
        font-size: 2rem;
    }
}

.p-realestateCard__category--newhouse {
    background: #ffd1df;
}

.p-realestateCard__category--usedhouse {
    background: #c8effc;
}

.p-realestateCard__category--house {
    background: #e0cbfd;
}

.p-realestateCard__category--land {
    background: #c5e6a8;
}

.p-realestateCard__category--member {
    background: #5cb563;
    color: #fff;
}

.p-realestateCard__category--walkup {
    background: #c8effc;
}

.p-realestateCard__category--apartment {
    background: #ffbc90;
}

.p-realestateCard__category--terracehouse {
    background: #ffd1df;
}

.p-realestateCard__category--tenant {
    background: #f4efa2;
}

.p-realestateCard__category--lease {
    background: #c5e6a8;
}

.p-realestateCard__category--parking {
    background: #dadada;
}

.p-realestateCard__size {
    line-height: 1.8;
}

@media screen and (max-width: 767px) {
    .p-realestateCard__size {
        margin-top: 4vw;
        font-size: 40px;
        font-size: 5.33vw;
    }
}

@media screen and (min-width: 768px) {
    .p-realestateCard__size {
        margin-top: 10px;
        font-size: 16px;
        font-size: 1.6rem;
    }
}

.p-realestateCard__size::before {
    content: '\3010';
}

.p-realestateCard__size::after {
    content: '\3011';
}

@media screen and (min-width: 768px) {
    .p-realestateCard__size::before {
        margin-right: 8px;
    }
}

@media screen and (min-width: 768px) {
    .p-realestateCard__size::after {
        margin-left: 8px;
    }
}

.p-realestateCard__text {
    line-height: 1.8;
}

.p-realestateCard__price {
    font-weight: bold;
    line-height: 1;
}

@media screen and (max-width: 767px) {
    .p-realestateCard__price {
        margin-top: 4vw;
        font-size: 68px;
        font-size: 9.07vw;
    }
}

@media screen and (min-width: 768px) {
    .p-realestateCard__price {
        margin-top: 12px;
        font-size: 30px;
        font-size: 3rem;
    }
}

.p-realestateCard__unit {
    line-height: 1;
    font-weight: 400;
}

@media screen and (max-width: 767px) {
    .p-realestateCard__unit {
        margin-left: 1.33vw;
        font-size: 30px;
        font-size: 4vw;
    }
}

@media screen and (min-width: 768px) {
    .p-realestateCard__unit {
        font-size: 16px;
        font-size: 1.6rem;
        margin-left: 5px;
    }
}

.p-realestateCard__message {
    background: #f8f1e3;
}

@media screen and (max-width: 767px) {
    .p-realestateCard__message {
        margin-top: 6.67vw;
        line-height: 1.6;
        padding: 2.67vw 4vw 2.67vw 4vw;
        font-size: 32px;
        font-size: 4.27vw;
    }
}

@media screen and (min-width: 768px) {
    .p-realestateCard__message {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center;
        padding: 12px 15px;
        font-size: 16px;
        font-size: 1.6rem;
    }
}

.p-realestateCard__checkbox {
    background: #9d846d;
    min-height: 30px;
}

/* p-realestateCardGroup
-------------------------------------------------------------------------- */
.p-realestateCardGroup__list {
    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;
}

@media screen and (max-width: 767px) {
    .p-realestateCardGroup__item {
        margin: 5.33vw 0vw 0vw 0vw;
    }
}

@media screen and (min-width: 768px) {
    .p-realestateCardGroup__item {
        width: 48.33%;
        margin-top: 3.33%;
    }
}

@media screen and (max-width: 767px) {
    .p-realestateCardGroup__item:first-child {
        margin-top: 0;
    }
}

@media screen and (min-width: 768px) {
    .p-realestateCardGroup__item:nth-child(-n+2) {
        margin-top: 0;
    }
}

@media screen and (max-width: 767px) {
    .p-realestateCardGroup__button {
        margin-top: 10.67vw;
        padding: 5.33vw 0vw 5.33vw 0vw;
        font-size: 36px;
        font-size: 4.8vw;
    }
}

@media screen and (min-width: 768px) {
    .p-realestateCardGroup__button {
        margin-top: 40px;
        padding: 24px 0;
        padding-left: 70px;
        border-width: 2px;
        font-size: 20px;
        font-size: 2rem;
    }
}

@media screen and (max-width: 767px) {
    .p-realestateCardGroup__arrow {
        margin-left: 2.67vw;
        font-size: 48px;
        font-size: 6.4vw;
    }
}

@media screen and (min-width: 768px) {
    .p-realestateCardGroup__arrow {
        font-size: 30px;
        font-size: 3rem;
        margin-left: 40px;
    }
}

/* p-subNavigation
-------------------------------------------------------------------------- */
@media screen and (max-width: 767px) {
    .p-subNavigation--head {
        margin-top: 16vw;
        margin-bottom: 16vw;
    }
}

@media screen and (min-width: 768px) {
    .p-subNavigation--head {
        margin-top: 60px;
        margin-bottom: 90px;
    }
}

@media screen and (max-width: 767px) {
    .p-subNavigation--foot {
        margin-top: 16vw;
    }
}

@media screen and (min-width: 768px) {
    .p-subNavigation--foot {
        margin-top: 90px;
        margin-bottom: 0;
    }
}

.p-subNavigation__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

@media screen and (max-width: 767px) {
    .p-subNavigation__list {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    }
}

@media screen and (max-width: 767px) {
    .p-subNavigation__item {
        width: 46%;
        margin-right: 8%;
        margin-top: 4vw;
    }
}

@media screen and (min-width: 768px) {
    .p-subNavigation__item {
        margin-right: 60px;
    }
}

@media screen and (min-width: 768px) {
    .p-subNavigation__item:last-child {
        margin-right: 0;
    }
}

@media screen and (max-width: 767px) {
    .p-subNavigation__item:nth-child(-n+2) {
        margin-top: 0;
    }
}

@media screen and (max-width: 767px) {
    .p-subNavigation__item:nth-child(2n) {
        margin-right: 0;
    }
}

/* p-menuCardGroup
   ----------------------------------------------------------------- */
.p-menuCardGroup {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
}

@media screen and (min-width: 768px) {
    .p-menuCardGroup {
        -webkit-box-pack: center;
            -ms-flex-pack: center;
                justify-content: center;
    }
}

@media screen and (max-width: 767px) {
    .p-menuCardGroup--tab-col1 .p-menuCardGroup__item {
        width: 100%;
    }
}

@media screen and (min-width: 768px) {
    .p-menuCardGroup--tab-col1 .p-menuCardGroup__item {
        width: 100%;
    }
}

@media screen and (min-width: 768px) {
    .p-menuCardGroup--tab-col1 .p-menuCardGroup__item {
        width: calc(100% / 3);
    }
}

@media screen and (max-width: 767px) {
    .p-menuCardGroup--tab-col2 .p-menuCardGroup__item {
        width: 100%;
    }
}

@media screen and (min-width: 768px) {
    .p-menuCardGroup--tab-col2 .p-menuCardGroup__item {
        width: calc(100% / 2);
    }
}

@media screen and (min-width: 768px) {
    .p-menuCardGroup--tab-col2 .p-menuCardGroup__item {
        width: calc(100% / 3);
    }
}

@media screen and (max-width: 767px) {
    .p-menuCardGroup--management .p-menuCardGroup__item {
        width: 100%;
    }
}

@media screen and (min-width: 768px) {
    .p-menuCardGroup--management .p-menuCardGroup__item {
        width: 100%;
    }
}

@media screen and (min-width: 768px) {
    .p-menuCardGroup--management .p-menuCardGroup__item {
        width: calc(100% / 3);
    }
}

@media screen and (min-width: 768px) {
    .p-menuCardGroup--architecture {
        -webkit-box-pack: start;
            -ms-flex-pack: start;
                justify-content: flex-start;
        margin-bottom: 40px;
    }
}

@media screen and (max-width: 767px) {
    .p-menuCardGroup--architecture .p-menuCardGroup__item {
        width: 100%;
    }
}

@media screen and (min-width: 768px) {
    .p-menuCardGroup--architecture .p-menuCardGroup__item {
        width: calc(100% / 2);
    }
}

@media screen and (min-width: 768px) {
    .p-menuCardGroup--architecture .p-menuCardGroup__item {
        width: calc(100% / 4);
    }
}

@media screen and (max-width: 767px) {
    .p-menuCardGroup__item {
        width: calc(100% / 2);
    }
}

@media screen and (min-width: 768px) {
    .p-menuCardGroup__item {
        width: calc(100% / 2);
    }
}

@media screen and (min-width: 768px) {
    .p-menuCardGroup__item {
        width: calc(100% / 5);
    }
}

/* p-menuCards
   ----------------------------------------------------------------- */
.p-menuCard {
    position: relative;
    display: block;
    text-decoration: none;
}

@media screen and (max-width: 767px) {
    .p-menuCard--large .p-menuCard__en {
        font-size: 32px;
        font-size: 4.27vw;
    }
}

@media screen and (min-width: 768px) {
    .p-menuCard--large .p-menuCard__en {
        margin-bottom: .78125vw;
    }
}

@media screen and (max-width: 767px) {
    .p-menuCard--large .p-menuCard__jp {
        font-size: 42px;
        font-size: 5.6vw;
    }
}

@media screen and (max-width: 767px) {
    .p-menuCard--large .p-menuCard__description {
        font-size: 32px;
        font-size: 4.27vw;
    }
}

@media screen and (max-width: 767px) {
    .p-menuCard--large .p-menuCard__image {
        height: 64vw;
    }
}

.p-menuCard--01 .p-menuCard__jp {
    background-color: rgba(87, 87, 87, .4);
}

.p-menuCard--01 .p-menuCard__image::after {
    background-color: rgba(66, 66, 66, .4);
}

.p-menuCard--02 .p-menuCard__jp {
    background-color: rgba(76, 172, 81, .4);
}

.p-menuCard--02 .p-menuCard__image::after {
    background-color: rgba(19, 80, 13, .2);
}

.p-menuCard--03 .p-menuCard__jp {
    background-color: rgba(190, 142, 81, .4);
}

.p-menuCard--03 .p-menuCard__image::after {
    background-color: rgba(65, 35, 0, .2);
}

.p-menuCard--04 .p-menuCard__jp {
    background-color: rgba(93, 133, 206, .4);
}

.p-menuCard--04 .p-menuCard__image::after {
    background-color: rgba(28, 61, 130, .2);
}

.p-menuCard--05 .p-menuCard__jp {
    background-color: rgba(242, 151, 155, .4);
}

.p-menuCard--05 .p-menuCard__image::after {
    background-color: rgba(114, 13, 39, .2);
}

.p-menuCard--06 .p-menuCard__jp {
    background-color: rgba(58, 104, 219, .4);
}

.p-menuCard--06 .p-menuCard__image::after {
    background-color: rgba(22, 61, 174, .2);
}

.p-menuCard--07 .p-menuCard__jp {
    background-color: rgba(33, 160, 179, .4);
}

.p-menuCard--07 .p-menuCard__image::after {
    background-color: rgba(8, 74, 102, .2);
}

.p-menuCard--08 .p-menuCard__jp {
    background-color: rgba(134, 70, 146, .4);
}

.p-menuCard--08 .p-menuCard__image::after {
    background-color: rgba(119, 21, 104, .2);
}

.p-menuCard--09 .p-menuCard__jp {
    background-color: rgba(33, 82, 14, .4);
}

.p-menuCard--09 .p-menuCard__image::after {
    background-color: rgba(30, 132, 95, .2);
}

.p-menuCard--10 .p-menuCard__jp {
    background-color: rgba(214, 223, 70, .4);
}

.p-menuCard--10 .p-menuCard__image::after {
    background-color: rgba(107, 114, 28, .5);
}

.p-menuCard--11 .p-menuCard__jp {
    background-color: rgba(133, 128, 0, .5);
}

.p-menuCard--11 .p-menuCard__image::after {
    background-color: rgba(102, 101, 0, .3);
}

.p-menuCard--12 .p-menuCard__jp {
    background-color: rgba(148, 21, 36, .4);
}

.p-menuCard--12 .p-menuCard__image::after {
    background-color: rgba(125, 5, 5, .2);
}

.p-menuCard--13 .p-menuCard__jp {
    background-color: rgba(5, 77, 150, .4);
}

.p-menuCard--13 .p-menuCard__image::after {
    background-color: rgba(6, 70, 142, .2);
}

.p-menuCard--14 .p-menuCard__jp {
    background-color: rgba(34, 34, 34, .4);
}

.p-menuCard--14 .p-menuCard__image::after {
    background-color: rgba(0, 0, 0, .2);
}

.p-menuCard--15 .p-menuCard__jp {
    background-color: rgba(106, 50, 6, .4);
}

.p-menuCard--15 .p-menuCard__image::after {
    background-color: rgba(127, 64, 1, .3);
}

.p-menuCard--16 .p-menuCard__jp {
    background-color: rgba(5, 77, 150, .4);
}

.p-menuCard--16 .p-menuCard__image::after {
    background-color: rgba(6, 70, 142, .2);
}

.p-menuCard--17 .p-menuCard__jp {
    background-color: rgba(133, 31, 171, .4);
}

.p-menuCard--17 .p-menuCard__image::after {
    background-color: rgba(115, 11, 111, .2);
}

.p-menuCard--18 .p-menuCard__jp {
    background-color: rgba(38, 110, 38, .4);
}

.p-menuCard--18 .p-menuCard__image::after {
    background-color: rgba(4, 118, 26, .2);
}

.p-menuCard--19 .p-menuCard__jp {
    background-color: rgba(110, 117, 0, .4);
}

.p-menuCard--19 .p-menuCard__image::after {
    background-color: rgba(74, 66, 0, .3);
}

.p-menuCard--20 .p-menuCard__jp {
    background-color: rgba(202, 212, 48, .4);
}

.p-menuCard--20 .p-menuCard__image::after {
    background-color: rgba(0, 0, 0, .15);
}

.p-menuCard--21 .p-menuCard__jp {
    background-color: rgba(76, 172, 81, .4);
}

.p-menuCard--21 .p-menuCard__image::after {
    background-color: rgba(0, 0, 0, .15);
}

.p-menuCard--22 .p-menuCard__jp {
    background-color: rgba(169, 111, 38, .4);
}

.p-menuCard--22 .p-menuCard__image::after {
    background-color: rgba(0, 0, 0, .15);
}

.p-menuCard--23 .p-menuCard__jp {
    background-color: rgba(93, 133, 206, .4);
}

.p-menuCard--23 .p-menuCard__image::after {
    background-color: rgba(0, 0, 0, .15);
}

.p-menuCard--24 .p-menuCard__jp {
    background-color: rgba(225, 108, 113, .4);
}

.p-menuCard--24 .p-menuCard__image::after {
    background-color: rgba(0, 0, 0, .15);
}

.p-menuCard--25 .p-menuCard__jp {
    background-color: rgba(58, 104, 219, .4);
}

.p-menuCard--25 .p-menuCard__image::after {
    background-color: rgba(0, 0, 0, .15);
}

.p-menuCard--26 .p-menuCard__jp {
    background-color: rgba(33, 160, 179, .4);
}

.p-menuCard--26 .p-menuCard__image::after {
    background-color: rgba(0, 0, 0, .15);
}

.p-menuCard--27 .p-menuCard__jp {
    background-color: rgba(134, 70, 146, .4);
}

.p-menuCard--27 .p-menuCard__image::after {
    background-color: rgba(0, 0, 0, .15);
}

.p-menuCard__content {
    color: #fff;
    position: absolute;
    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;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    top: 0;
    width: 100%;
    height: 100%;
    text-align: center;
    z-index: 2;
}

.p-menuCard__title {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
}

.p-menuCard__en {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    line-height: 1.4;
}

@media screen and (max-width: 767px) {
    .p-menuCard__en {
        height: 10.66667vw;
        font-size: 24px;
        font-size: 3.2vw;
    }
}

@media screen and (min-width: 768px) {
    .p-menuCard__en {
        height: 72px;
        margin-bottom: 8px;
        font-size: 26px;
        font-size: 2.6rem;
    }
}

@media screen and (min-width: 768px) {
    .p-menuCard__en {
        margin-bottom: .41667vw;
        height: 3.75vw;
        font-size: 26px;
        font-size: 1.35vw;
    }
}

.p-menuCard__jp {
    width: 100%;
    font-weight: 400;
}

@media screen and (max-width: 767px) {
    .p-menuCard__jp {
        padding: 2.67vw 0vw 2.67vw 0vw;
        font-size: 36px;
        font-size: 4.8vw;
        letter-spacing: .2em;
    }
}

@media screen and (min-width: 768px) {
    .p-menuCard__jp {
        padding-top: 20px;
        padding-bottom: 20px;
        font-size: 30px;
        font-size: 3rem;
        letter-spacing: .45em;
    }
}

@media screen and (min-width: 768px) {
    .p-menuCard__jp {
        padding-top: 1.04167vw;
        padding-bottom: 1.04167vw;
        font-size: 30px;
        font-size: 1.56vw;
    }
}

.p-menuCard__description {
    letter-spacing: .1em;
}

@media screen and (max-width: 767px) {
    .p-menuCard__description {
        margin-top: 1.33vw;
        font-size: 22px;
        font-size: 2.93vw;
    }
}

@media screen and (min-width: 768px) {
    .p-menuCard__description {
        margin-top: 13px;
        font-size: 16px;
        font-size: 1.6rem;
    }
}

@media screen and (min-width: 768px) {
    .p-menuCard__description {
        font-size: 16px;
        font-size: .83vw;
    }
}

.p-menuCard__image {
    position: relative;
}

@media screen and (max-width: 767px) {
    .p-menuCard__image {
        height: 40vw;
    }
}

.p-menuCard__image img {
    width: 100%;
    height: 100%;
}

.p-menuCard__image::after {
    display: block;
    content: '';
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
}

/* p-card
   ----------------------------------------------------------------- */
.p-card {
    position: relative;
    display: block;
    text-decoration: none;
}

@media screen and (max-width: 767px) {
    .p-card {
        padding: 5.07vw 5.07vw 5.07vw 5.07vw;
        border: .26667vw solid #b7b7b7;
    }
}

@media screen and (min-width: 768px) {
    .p-card {
        padding: 19px;
        height: 100%;
        border: 1px solid #b7b7b7;
    }
}

.p-card__thumbnail {
    position: relative;
}

@media screen and (max-width: 767px) {
    .p-card__copy {
        padding: 2.67vw 0vw 2.67vw 0vw;
        font-size: 34px;
        font-size: 4.53vw;
    }
}

@media screen and (min-width: 768px) {
    .p-card__copy {
        padding: 8px 0 11px;
        font-size: 20px;
        font-size: 2rem;
    }
}

.p-card__title {
    font-weight: 400;
    text-align: center;
    background-color: #f8f1e3;
}

@media screen and (max-width: 767px) {
    .p-card__title {
        padding: 2.67vw 0vw 2.67vw 0vw;
    }
}

@media screen and (min-width: 768px) {
    .p-card__title {
        padding: 12px 0;
        font-size: 16px;
        font-size: 1.6rem;
    }
}

/* p-cardGroup
   ----------------------------------------------------------------- */
@media screen and (min-width: 768px) {
    .p-cardGroup {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    }
}

@media screen and (max-width: 767px) {
    .p-cardGroup__item {
        margin-top: 5.33vw;
    }
}

@media screen and (min-width: 768px) {
    .p-cardGroup__item {
        margin-top: 2.5%;
        width: 31.66%;
        margin-right: 2.5%;
    }
}

@media screen and (max-width: 767px) {
    .p-cardGroup__item:nth-child(1) {
        margin-top: 0;
    }
}

@media screen and (min-width: 768px) {
    .p-cardGroup__item:nth-child(3n) {
        margin-right: 0;
    }
}

@media screen and (min-width: 768px) {
    .p-cardGroup__item:nth-child(-n+3) {
        margin-top: 0;
    }
}

/* p-conversion
   ----------------------------------------------------------------- */
.p-conversion-mh {
    position: relative;
}

@media screen and (max-width: 767px) {
    .p-conversion-mh {
        padding: 0vw 0vw 20vw 0vw;
    }
}

@media screen and (min-width: 768px) {
    .p-conversion-mh {
        padding: 100px 0 0;
    }
}

@media screen and (min-width: 768px) {
    .p-conversion-mh::after {
        position: absolute;
        top: 0;
        right: 0;
        display: block;
        content: '';
        width: 50%;
        height: 100%;
        z-index: -1;
    }
}

@media screen and (max-width: 767px) {
    .p-conversion-mh__heading {
        margin-bottom: 10.67vw;
    }
}

@media screen and (min-width: 768px) {
    .p-conversion-mh__heading {
        margin-bottom: 60px;
    }
}

.p-conversion-mh__title {
    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;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
}

@media screen and (max-width: 767px) {
    .p-conversion-mh__title {
        margin-bottom: 5.33vw;
    }
}

@media screen and (min-width: 768px) {
    .p-conversion-mh__title {
        margin-bottom: 20px;
    }
}

.p-conversion-mh__en {
    position: relative;
    font-weight: 700;
}

@media screen and (max-width: 767px) {
    .p-conversion-mh__en {
        font-size: 70px;
        font-size: 9.33vw;
    }
}

@media screen and (min-width: 768px) {
    .p-conversion-mh__en {
        font-size: 60px;
        font-size: 6rem;
    }
}

.p-conversion-mh__jp {
    font-weight: 400;
}

@media screen and (max-width: 767px) {
    .p-conversion-mh__jp {
        margin-top: 2.67vw;
        font-size: 40px;
        font-size: 5.33vw;
        line-height: 1.6;
        text-align: left;
    }
}

@media screen and (min-width: 768px) {
    .p-conversion-mh__jp {
        text-align: center;
        margin-top: 13px;
        font-size: 20px;
        font-size: 2rem;
    }
}

@media screen and (min-width: 768px) {
    .p-conversion-mh__container {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
    }
}

@media screen and (min-width: 768px) {
    .p-conversion-mh__container {
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
        -webkit-box-pack: center;
            -ms-flex-pack: center;
                justify-content: center;
    }
}

@media screen and (max-width: 767px) {
    .p-conversion-mh__col {
        text-align: center;
        margin-top: 10.67vw;
    }
}

@media screen and (min-width: 768px) {
    .p-conversion-mh__col {
        width: 500px;
    }
}

@media screen and (max-width: 767px) {
    .p-conversion-mh__col:nth-child(1) {
        margin-top: 0;
    }
}

@media screen and (max-width: 767px) {
    .p-conversion-mh__label {
        font-size: 40px;
        font-size: 5.33vw;
        margin-bottom: 5.33vw;
    }
}

@media screen and (min-width: 768px) {
    .p-conversion-mh__label {
        margin-bottom: 20px;
        font-size: 20px;
        font-size: 2rem;
    }
}

@media screen and (max-width: 767px) {
    .p-conversion-mh__tel {
        display: inline-block;
    }
}

@media screen and (min-width: 768px) {
    .p-conversion-mh__text {
        margin-top: -10px;
    }
}

/* p-search
   ----------------------------------------------------------------- */
.stationttl {
    margin-top: 30px;
}

.p-search__menu {
    text-align: right;
}

@media screen and (max-width: 767px) {
    .p-search__menu {
        margin-bottom: 5.33vw;
    }
}

.p-search__link {
    position: relative;
    line-height: 1;
    letter-spacing: .05em;
    text-decoration: none;
    font-weight: 700;
}

@media screen and (max-width: 767px) {
    .p-search__link {
        padding-right: 9.33vw;
        font-size: 38px;
        font-size: 5.07vw;
    }
}

@media screen and (min-width: 768px) {
    .p-search__link {
        font-size: 20px;
        font-size: 2rem;
        padding-right: 40px;
    }
}

.p-search__arrow {
    position: absolute;
    top: 50%;
    right: 0;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    display: inline-block;
    color: #000;
    line-height: 1;
    font-weight: 400;
}

@media screen and (max-width: 767px) {
    .p-search__arrow {
        font-size: 50px;
        font-size: 6.67vw;
        height: 6.66667vw;
    }
}

@media screen and (min-width: 768px) {
    .p-search__arrow {
        font-size: 30px;
        font-size: 3rem;
        height: 30px;
    }
}

@media screen and (max-width: 767px) {
    .p-search__block {
        margin-bottom: 8vw;
    }
}

@media screen and (min-width: 768px) {
    .p-search__block {
        margin-bottom: 40px;
    }
}

.p-search__block:last-child {
    margin-bottom: 0;
}

.p-search__heading {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
}

@media screen and (max-width: 767px) {
    .p-search__heading {
        margin-bottom: 5.33vw;
    }
}

@media screen and (min-width: 768px) {
    .p-search__heading {
        margin-bottom: 20px;
    }
}

.p-search__label {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    color: #fff;
    line-height: 1;
    background-color: #5d330d;
}

@media screen and (max-width: 767px) {
    .p-search__label {
        font-size: 40px;
        font-size: 5.33vw;
        width: 20vw;
        padding: 1.87vw 0vw .53vw 0vw;
        margin-right: 2.67vw;
    }
}

@media screen and (min-width: 768px) {
    .p-search__label {
        width: 90px;
        height: 36px;
        padding-top: 5px;
        margin-right: 8px;
        font-size: 24px;
        font-size: 2.4rem;
    }
}

.p-search__title {
    letter-spacing: .05em;
    font-weight: 400;
}

@media screen and (min-width: 768px) {
    .p-search__title {
        font-size: 16px;
        font-size: 1.6rem;
    }
}

@media screen and (min-width: 768px) {
    .p-search__container--area {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
    }
}

.p-search__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
}

@media screen and (max-width: 767px) {
    .p-search__list--type .p-search__item {
        width: 48%;
        margin-right: 4%;
        margin-top: 4%;
    }
}

@media screen and (min-width: 768px) {
    .p-search__list--type .p-search__item {
        width: 48.27%;
        margin-top: 1.72%;
        margin-right: 3.44%;
    }
}

.p-search__list--type .p-search__item:nth-child(-n+2) {
    margin-top: 0;
}

.p-search__list--type .p-search__item:nth-child(2n) {
    margin-right: 0;
}

@media screen and (max-width: 767px) {
    .p-search__list--area .p-search__item {
        width: 48%;
        margin-top: 4%;
    }
}

@media screen and (min-width: 768px) {
    .p-search__list--area .p-search__item {
        width: 190px;
        margin-left: 10px;
        margin-top: 10px;
    }
}

@media screen and (min-width: 768px) {
    .p-search__list--area .p-search__item:nth-child(-n+2) {
        margin-top: 0;
    }
}

@media screen and (max-width: 767px) {
    .p-search__list--area .p-search__item:nth-child(2n) {
        margin-left: 4%;
    }
}

.r-search__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
}

.r-search__cate {
    font-weight: bold;
    margin-bottom: 10px;
}

@media screen and (min-width: 768px) {
    .r-search__container--area {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
    }
}

.r-search__content {
    margin-bottom: 15px;
}

@media screen and (max-width: 767px) {
    .r-search__list--type .r-search__item {
        width: 48%;
        margin-right: 4%;
        margin-top: 4%;
    }
}

@media screen and (min-width: 768px) {
    .r-search__list--type .r-search__item {
        width: 48.27%;
        margin-top: 1.72%;
        margin-right: 3.44%;
    }
}

.r-search__list--type .r-search__item:nth-child(-n+2) {
    margin-top: 0;
}

.r-search__list--type .r-search__item:nth-child(2n) {
    margin-right: 0;
}

@media screen and (min-width: 768px) {
    .r-search__list--area .r-search__item {
        width: 260px;
        margin-left: 10px;
        margin-bottom: 10px;
    }
}

@media screen and (max-width: 767px) {
    .r-search__list--area .r-search__item {
        width: 100%;
        margin-top: 4%;
    }
}

@media screen and (min-width: 768px) {
    .r-search__list--area .r-search__item:nth-child(-n+2) {
        margin-top: 0;
    }
}

@media screen and (max-width: 767px) {
    .r-search__list--area .r-search__item:nth-child(2n) {
        margin-right: 0;
    }
}

/* p-search-sub
   ----------------------------------------------------------------- */
.p-search-sub__menu {
    text-align: right;
}

@media screen and (max-width: 767px) {
    .p-search-sub__menu {
        margin-bottom: 5.33vw;
    }
}

.p-search-sub__link {
    position: relative;
    line-height: 1;
    letter-spacing: .05em;
    text-decoration: none;
    font-weight: 700;
}

@media screen and (max-width: 767px) {
    .p-search-sub__link {
        padding-right: 9.33vw;
        font-size: 38px;
        font-size: 5.07vw;
    }
}

@media screen and (min-width: 768px) {
    .p-search-sub__link {
        font-size: 20px;
        font-size: 2rem;
        padding-right: 40px;
    }
}

.p-search-sub__arrow {
    position: absolute;
    top: 50%;
    right: 0;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    display: inline-block;
    color: #000;
    line-height: 1;
    font-weight: 400;
}

@media screen and (max-width: 767px) {
    .p-search-sub__arrow {
        font-size: 50px;
        font-size: 6.67vw;
        height: 6.66667vw;
    }
}

@media screen and (min-width: 768px) {
    .p-search-sub__arrow {
        font-size: 30px;
        font-size: 3rem;
        height: 30px;
    }
}

@media screen and (max-width: 767px) {
    .p-search-sub__block {
        margin-bottom: 8vw;
    }
}

@media screen and (min-width: 768px) {
    .p-search-sub__block {
        margin-bottom: 40px;
    }
}

.p-search-sub__block:last-child {
    margin-bottom: 0;
}

.p-search-sub__heading {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
}

@media screen and (max-width: 767px) {
    .p-search-sub__heading {
        margin-bottom: 5.33vw;
    }
}

@media screen and (min-width: 768px) {
    .p-search-sub__heading {
        margin-bottom: 20px;
    }
}

.p-search-sub__label {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    color: #fff;
    line-height: 1;
    background-color: #5d330d;
}

@media screen and (max-width: 767px) {
    .p-search-sub__label {
        font-size: 40px;
        font-size: 5.33vw;
        width: 20vw;
        padding: 1.87vw 0vw .53vw 0vw;
        margin-right: 2.67vw;
    }
}

@media screen and (min-width: 768px) {
    .p-search-sub__label {
        width: 90px;
        height: 36px;
        padding-top: 5px;
        margin-right: 8px;
        font-size: 24px;
        font-size: 2.4rem;
    }
}

.p-search-sub__title {
    letter-spacing: .05em;
    font-weight: 400;
}

@media screen and (min-width: 768px) {
    .p-search-sub__title {
        font-size: 16px;
        font-size: 1.6rem;
    }
}

@media screen and (min-width: 768px) {
    .p-search-sub__container--area {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
    }
}

.p-search-sub__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -ms-flex-pack: distribute;
        justify-content: space-around;
}

@media screen and (max-width: 767px) {
    .p-search-sub__list--type {
        margin-bottom: 30px;
    }
}

@media screen and (max-width: 767px) {
    .p-search-sub__list--type {
        margin-bottom: 30px;
    }
}

@media screen and (max-width: 767px) {
    .p-search-sub__list--type .p-search-sub__item {
        width: 48%;
        margin-top: 2%;
    }
}

@media screen and (max-width: 767px) {
    .p-search-sub__list--type .p-search-sub__item {
        width: 100%;
        margin-top: 2%;
    }
}

@media screen and (min-width: 768px) {
    .p-search-sub__list--type .p-search-sub__item {
        width: 24.31%;
        margin-top: 1.72%;
        margin-right: .86%;
    }
}

.p-search-sub__list--type .p-search-sub__item:nth-child(4) {
    margin-right: 0;
}

/* p-search-realestate
   ----------------------------------------------------------------- */
.p-search-realestate__menu {
    text-align: right;
}

@media screen and (max-width: 767px) {
    .p-search-realestate__menu {
        margin-bottom: 5.33vw;
    }
}

.p-search-realestate__link {
    position: relative;
    line-height: 1;
    letter-spacing: .05em;
    text-decoration: none;
    font-weight: 700;
}

@media screen and (max-width: 767px) {
    .p-search-realestate__link {
        padding-right: 9.33vw;
        font-size: 38px;
        font-size: 5.07vw;
    }
}

@media screen and (min-width: 768px) {
    .p-search-realestate__link {
        font-size: 20px;
        font-size: 2rem;
        padding-right: 40px;
    }
}

.p-search-realestate__arrow {
    position: absolute;
    top: 50%;
    right: 0;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    display: inline-block;
    color: #000;
    line-height: 1;
    font-weight: 400;
}

@media screen and (max-width: 767px) {
    .p-search-realestate__arrow {
        font-size: 50px;
        font-size: 6.67vw;
        height: 6.66667vw;
    }
}

@media screen and (min-width: 768px) {
    .p-search-realestate__arrow {
        font-size: 30px;
        font-size: 3rem;
        height: 30px;
    }
}

@media screen and (max-width: 767px) {
    .p-search-realestate__block {
        margin-bottom: 8vw;
    }
}

@media screen and (min-width: 768px) {
    .p-search-realestate__block {
        margin-bottom: 40px;
    }
}

.p-search-realestate__block:last-child {
    margin-bottom: 0;
}

.p-search-realestate__heading {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
}

@media screen and (max-width: 767px) {
    .p-search-realestate__heading {
        margin-bottom: 5.33vw;
    }
}

@media screen and (min-width: 768px) {
    .p-search-realestate__heading {
        margin-bottom: 20px;
    }
}

.p-search-realestate__label {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    color: #fff;
    line-height: 1;
    background-color: #5d330d;
}

@media screen and (max-width: 767px) {
    .p-search-realestate__label {
        font-size: 40px;
        font-size: 5.33vw;
        width: 20vw;
        padding: 1.87vw 0vw .53vw 0vw;
        margin-right: 2.67vw;
    }
}

@media screen and (min-width: 768px) {
    .p-search-realestate__label {
        width: 90px;
        height: 36px;
        padding-top: 5px;
        margin-right: 8px;
        font-size: 24px;
        font-size: 2.4rem;
    }
}

.p-search-realestate__title {
    letter-spacing: .05em;
    font-weight: 400;
}

@media screen and (min-width: 768px) {
    .p-search-realestate__title {
        font-size: 16px;
        font-size: 1.6rem;
    }
}

@media screen and (min-width: 768px) {
    .p-search-realestate__container--area {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
    }
}

.p-search-realestate__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    width: 100%;
}

@media screen and (max-width: 767px) {
    .p-search-realestate__list--type .p-search-realestate__item {
        width: 48%;
        margin-right: 4%;
        margin-top: 4%;
    }
}

@media screen and (min-width: 768px) {
    .p-search-realestate__list--type .p-search-realestate__item {
        width: 48.27%;
        margin-top: 1.72%;
        margin-right: 3.44%;
    }
}

.p-search-realestate__list--type .p-search-realestate__item:nth-child(-n+2) {
    margin-top: 0;
}

.p-search-realestate__list--type .p-search-realestate__item:nth-child(2n) {
    margin-right: 0;
}

@media screen and (max-width: 767px) {
    .p-search-realestate__list--area .p-search-realestate__item {
        width: 48%;
        margin-right: 4%;
        margin-top: 4%;
    }
}

@media screen and (min-width: 768px) {
    .p-search-realestate__list--area .p-search-realestate__item {
        width: 46%;
        margin-left: 1%;
        margin-top: 10px;
    }
}

@media screen and (min-width: 768px) {
    .p-search-realestate__list--area .p-search-realestate__item:nth-child(-n+2) {
        margin-top: 0;
    }
}

@media screen and (min-width: 768px) {
    .p-search-realestate__list--area .p-search-realestate__item:nth-child(odd) {
        margin-left: 40px;
    }
}

@media screen and (max-width: 767px) {
    .p-search-realestate__list--area .p-search-realestate__item:nth-child(2n) {
        margin-right: 0;
    }
}

/* p-search-train
   ----------------------------------------------------------------- */
.p-search-train__menu {
    text-align: right;
}

@media screen and (max-width: 767px) {
    .p-search-train__menu {
        margin-bottom: 5.33vw;
    }
}

.p-search-train__link {
    position: relative;
    line-height: 1;
    letter-spacing: .05em;
    text-decoration: none;
    font-weight: 700;
}

@media screen and (max-width: 767px) {
    .p-search-train__link {
        padding-right: 9.33vw;
        font-size: 38px;
        font-size: 5.07vw;
    }
}

@media screen and (min-width: 768px) {
    .p-search-train__link {
        font-size: 20px;
        font-size: 2rem;
        padding-right: 40px;
    }
}

.p-search-train__arrow {
    position: absolute;
    top: 50%;
    right: 0;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    display: inline-block;
    color: #000;
    line-height: 1;
    font-weight: 400;
}

@media screen and (max-width: 767px) {
    .p-search-train__arrow {
        font-size: 50px;
        font-size: 6.67vw;
        height: 6.66667vw;
    }
}

@media screen and (min-width: 768px) {
    .p-search-train__arrow {
        font-size: 30px;
        font-size: 3rem;
        height: 30px;
    }
}

@media screen and (max-width: 767px) {
    .p-search-train__block {
        margin-bottom: 8vw;
    }
}

@media screen and (min-width: 768px) {
    .p-search-train__block {
        margin-bottom: 40px;
    }
}

.p-search-train__block:last-child {
    margin-bottom: 0;
}

.p-search-train__heading {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
}

@media screen and (max-width: 767px) {
    .p-search-train__heading {
        margin-bottom: 5.33vw;
    }
}

@media screen and (min-width: 768px) {
    .p-search-train__heading {
        margin-bottom: 20px;
    }
}

.p-search-train__label {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    color: #fff;
    line-height: 1;
    background-color: #5d330d;
}

@media screen and (max-width: 767px) {
    .p-search-train__label {
        font-size: 40px;
        font-size: 5.33vw;
        width: 20vw;
        padding: 1.87vw 0vw .53vw 0vw;
        margin-right: 2.67vw;
    }
}

@media screen and (min-width: 768px) {
    .p-search-train__label {
        width: 90px;
        height: 36px;
        padding-top: 5px;
        margin-right: 8px;
        font-size: 24px;
        font-size: 2.4rem;
    }
}

.p-search-train__title {
    letter-spacing: .05em;
    font-weight: 400;
}

@media screen and (min-width: 768px) {
    .p-search-train__title {
        font-size: 16px;
        font-size: 1.6rem;
    }
}

@media screen and (min-width: 768px) {
    .p-search-train__container--area {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
    }
}

.p-search-train__list {
    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;
    width: 100%;
}

@media screen and (max-width: 767px) {
    .p-search-train__list--type .p-search-train__item {
        width: 48%;
        margin-right: 4%;
        margin-top: 4%;
    }
}

@media screen and (min-width: 768px) {
    .p-search-train__list--type .p-search-train__item {
        width: 48.27%;
        margin-top: 1.72%;
        margin-right: 3.44%;
    }
}

.p-search-train__list--type .p-search-train__item:nth-child(-n+2) {
    margin-top: 0;
}

.p-search-train__list--type .p-search-train__item:nth-child(2n) {
    margin-right: 0;
}

@media screen and (max-width: 767px) {
    .p-search-train__list--area .p-search-train__item {
        width: 100%;
        margin-top: 4%;
    }
}

@media screen and (min-width: 768px) {
    .p-search-train__list--area .p-search-train__item {
        width: 32.9%;
        margin-top: 10px;
    }
}

@media screen and (min-width: 768px) {
    .p-search-train__list--area .p-search-train__item:nth-child(-n+3) {
        margin-top: 0;
    }
}

@media screen and (max-width: 767px) {
    .p-search-train__list--area .p-search-train__item:nth-child(2n) {
        margin-right: 0;
    }
}

/* p-search-station
   ----------------------------------------------------------------- */
.p-search-station__menu {
    text-align: right;
}

@media screen and (max-width: 767px) {
    .p-search-station__menu {
        margin-bottom: 5.33vw;
    }
}

.p-search-station__link {
    position: relative;
    line-height: 1;
    letter-spacing: .05em;
    text-decoration: none;
    font-weight: 700;
}

@media screen and (max-width: 767px) {
    .p-search-station__link {
        padding-right: 9.33vw;
        font-size: 38px;
        font-size: 5.07vw;
    }
}

@media screen and (min-width: 768px) {
    .p-search-station__link {
        font-size: 20px;
        font-size: 2rem;
        padding-right: 40px;
    }
}

.p-search-station__arrow {
    position: absolute;
    top: 50%;
    right: 0;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    display: inline-block;
    color: #000;
    line-height: 1;
    font-weight: 400;
}

@media screen and (max-width: 767px) {
    .p-search-station__arrow {
        font-size: 50px;
        font-size: 6.67vw;
        height: 6.66667vw;
    }
}

@media screen and (min-width: 768px) {
    .p-search-station__arrow {
        font-size: 30px;
        font-size: 3rem;
        height: 30px;
    }
}

@media screen and (max-width: 767px) {
    .p-search-station__block {
        margin-bottom: 8vw;
    }
}

@media screen and (min-width: 768px) {
    .p-search-station__block {
        margin-bottom: 40px;
    }
}

.p-search-station__block:last-child {
    margin-bottom: 0;
}

.p-search-station__heading {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
}

@media screen and (max-width: 767px) {
    .p-search-station__heading {
        margin-bottom: 5.33vw;
    }
}

@media screen and (min-width: 768px) {
    .p-search-station__heading {
        margin-bottom: 20px;
    }
}

.p-search-station__label {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    color: #fff;
    line-height: 1;
    background-color: #5d330d;
}

@media screen and (max-width: 767px) {
    .p-search-station__label {
        font-size: 40px;
        font-size: 5.33vw;
        width: 20vw;
        padding: 1.87vw 0vw .53vw 0vw;
        margin-right: 2.67vw;
    }
}

@media screen and (min-width: 768px) {
    .p-search-station__label {
        width: 90px;
        height: 36px;
        padding-top: 5px;
        margin-right: 8px;
        font-size: 24px;
        font-size: 2.4rem;
    }
}

.p-search-station__title {
    letter-spacing: .05em;
    font-weight: 400;
}

@media screen and (min-width: 768px) {
    .p-search-station__title {
        font-size: 16px;
        font-size: 1.6rem;
    }
}

@media screen and (min-width: 768px) {
    .p-search-station__container--area {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
    }
}

.p-search-station__list {
    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;
    width: 100%;
}

@media screen and (max-width: 767px) {
    .p-search-station__list--type .p-search-station__item {
        width: 48%;
        margin-right: 4%;
        margin-top: 4%;
    }
}

@media screen and (min-width: 768px) {
    .p-search-station__list--type .p-search-station__item {
        width: 48.27%;
        margin-top: 1.72%;
        margin-right: 3.44%;
    }
}

.p-search-station__list--type .p-search-station__item:nth-child(-n+2) {
    margin-top: 0;
}

.p-search-station__list--type .p-search-station__item:nth-child(2n) {
    margin-right: 0;
}

@media screen and (max-width: 767px) {
    .p-search-station__list--area .p-search-station__item {
        width: 100%;
        margin-top: 4%;
    }
}

@media screen and (min-width: 768px) {
    .p-search-station__list--area .p-search-station__item {
        width: 49.5%;
        margin-top: 10px;
    }
}

@media screen and (min-width: 768px) {
    .p-search-station__list--area .p-search-station__item:nth-child(-n+2) {
        margin-top: 0;
    }
}

@media screen and (max-width: 767px) {
    .p-search-station__list--area .p-search-station__item:nth-child(2n) {
        margin-right: 0;
    }
}

/* p-areaButton
   ----------------------------------------------------------------- */
.p-areaButton {
    cursor: pointer;
}

.p-areaButton--large .p-areaButton__button {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
}

@media screen and (max-width: 767px) {
    .p-areaButton--large .p-areaButton__button {
        width: 100%;
        height: 24vw;
    }
}

@media screen and (min-width: 768px) {
    .p-areaButton--large .p-areaButton__button {
        width: 180px;
        height: 120px;
    }
}

@media screen and (max-width: 767px) {
    .p-areaButton--large .p-areaButton__en {
        margin-top: 2.67vw;
    }
}

@media screen and (min-width: 768px) {
    .p-areaButton--large .p-areaButton__en {
        margin-top: 10px;
    }
}

.p-areaButton__input {
    cursor: pointer;
    display: none;
}

.p-areaButton__input:checked + .p-areaButton__button {
    color: #fff;
    background: #5d330d;
}

.p-areaButton__input:checked + .p-areaButton__button .p-areaButton__en {
    color: #fff;
}

.p-areaButton__button {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    width: 100%;
    padding: 0;
    margin: 0;
    cursor: pointer;
    text-decoration: none;
    border: none;
    outline: none;
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
    background: #fffbf2;
}

@media screen and (max-width: 767px) {
    .p-areaButton__button {
        height: 13.33333vw;
        border: .26667vw solid #5d330d;
    }
}

@media screen and (min-width: 768px) {
    .p-areaButton__button {
        width: 100%;
        height: 55px;
        border: 1px solid #5d330d;
    }
}

.p-areaButton__jp {
    line-height: 1;
    font-weight: 700;
}

@media screen and (max-width: 767px) {
    .p-areaButton__jp {
        font-size: 34px;
        font-size: 4.53vw;
        margin-right: 2.67vw;
    }
}

@media screen and (min-width: 768px) {
    .p-areaButton__jp {
        margin-right: 10px;
        font-size: 20px;
        font-size: 2rem;
    }
}

.p-areaButton__en {
    line-height: 1;
    color: #5d330d;
}

@media screen and (max-width: 767px) {
    .p-areaButton__en {
        font-size: 28px;
        font-size: 3.73vw;
        -webkit-transform: translateY(14%);
                transform: translateY(14%);
    }
}

@media screen and (min-width: 768px) {
    .p-areaButton__en {
        font-size: 14px;
        font-size: 1.4rem;
        -webkit-transform: translateY(3px);
                transform: translateY(3px);
    }
}

/* p-areaButton-sub
   ----------------------------------------------------------------- */
.p-areaButton-sub {
    cursor: pointer;
}

.p-areaButton-sub--large .p-areaButton-sub__button {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
}

@media screen and (max-width: 767px) {
    .p-areaButton-sub--large .p-areaButton-sub__button {
        width: 100%;
        height: 24vw;
    }
}

@media screen and (min-width: 768px) {
    .p-areaButton-sub--large .p-areaButton-sub__button {
        width: 580px;
        height: 120px;
    }
}

@media screen and (max-width: 767px) {
    .p-areaButton-sub--large .p-areaButton-sub__en {
        margin-top: 2.67vw;
    }
}

@media screen and (min-width: 768px) {
    .p-areaButton-sub--large .p-areaButton-sub__en {
        margin-top: 10px;
    }
}

.p-areaButton-sub__input {
    cursor: pointer;
    display: none;
}

.p-areaButton-sub__input:checked + .p-areaButton-sub__button {
    color: #fff;
    background: #5d330d;
}

.p-areaButton-sub__input:checked + .p-areaButton-sub__button .p-areaButton-sub__en {
    color: #fff;
}

.p-areaButton-sub__button {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    width: 100%;
    padding: 0;
    margin: 0;
    cursor: pointer;
    text-decoration: none;
    border: none;
    outline: none;
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
    background: #fffbf2;
}

@media screen and (max-width: 767px) {
    .p-areaButton-sub__button {
        height: 13.33333vw;
        border: .26667vw solid #5d330d;
    }
}

@media screen and (min-width: 768px) {
    .p-areaButton-sub__button {
        width: 100%;
        height: 55px;
        border: 1px solid #5d330d;
    }
}

.p-areaButton-sub__jp {
    line-height: 1;
    font-weight: 700;
}

@media screen and (max-width: 767px) {
    .p-areaButton-sub__jp {
        font-size: 34px;
        font-size: 4.53vw;
        margin-right: 2.67vw;
    }
}

@media screen and (min-width: 768px) {
    .p-areaButton-sub__jp {
        margin-right: 10px;
        font-size: 20px;
        font-size: 2rem;
    }
}

.p-areaButton-sub__en {
    line-height: 1;
    color: #5d330d;
}

@media screen and (max-width: 767px) {
    .p-areaButton-sub__en {
        font-size: 28px;
        font-size: 3.73vw;
        -webkit-transform: translateY(14%);
                transform: translateY(14%);
    }
}

@media screen and (min-width: 768px) {
    .p-areaButton-sub__en {
        font-size: 14px;
        font-size: 1.4rem;
        -webkit-transform: translateY(3px);
                transform: translateY(3px);
    }
}

/* p-areaButton-train
   ----------------------------------------------------------------- */
.p-areaButton-train {
    cursor: pointer;
}

.p-areaButton-train--large .p-areaButton-train__button {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
}

@media screen and (max-width: 767px) {
    .p-areaButton-train--large .p-areaButton-train__button {
        width: 100%;
        height: 24vw;
    }
}

@media screen and (min-width: 768px) {
    .p-areaButton-train--large .p-areaButton-train__button {
        width: 580px;
        height: 120px;
    }
}

@media screen and (max-width: 767px) {
    .p-areaButton-train--large .p-areaButton-train__en {
        margin-top: 2.67vw;
    }
}

@media screen and (min-width: 768px) {
    .p-areaButton-train--large .p-areaButton-train__en {
        margin-top: 10px;
    }
}

.p-areaButton-train__input {
    cursor: pointer;
    display: none;
}

.p-areaButton-train__input:checked + .p-areaButton-train__button {
    color: #fff;
    background: #5d330d;
}

.p-areaButton-train__input:checked + .p-areaButton-train__button .p-areaButton-train__en {
    color: #fff;
}

.p-areaButton-train__button {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    width: 100%;
    padding: 0;
    margin: 0;
    cursor: pointer;
    text-decoration: none;
    border: none;
    outline: none;
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
    background: #fffbf2;
}

@media screen and (max-width: 767px) {
    .p-areaButton-train__button {
        height: 14.66667vw;
        border: .26667vw solid #5d330d;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center;
        -webkit-box-pack: center;
            -ms-flex-pack: center;
                justify-content: center;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    }
}

@media screen and (min-width: 768px) {
    .p-areaButton-train__button {
        width: 100%;
        height: 55px;
        border: 1px solid #5d330d;
    }
}

.p-areaButton-train__jp {
    line-height: 1;
    font-weight: 700;
}

@media screen and (max-width: 767px) {
    .p-areaButton-train__jp {
        font-size: 34px;
        font-size: 4.53vw;
        display: block;
        margin-right: 0;
    }
}

@media screen and (min-width: 768px) {
    .p-areaButton-train__jp {
        margin-right: 10px;
        font-size: 20px;
        font-size: 2rem;
    }
}

.p-areaButton-train__en {
    line-height: 1;
    color: #5d330d;
}

@media screen and (max-width: 767px) {
    .p-areaButton-train__en {
        font-size: 28px;
        font-size: 3.73vw;
        -webkit-transform: translateY(14%);
                transform: translateY(14%);
        display: block;
    }
}

@media screen and (min-width: 768px) {
    .p-areaButton-train__en {
        font-size: 14px;
        font-size: 1.4rem;
        -webkit-transform: translateY(3px);
                transform: translateY(3px);
    }
}

/* p-typeButton
   ----------------------------------------------------------------- */
.p-typeButton {
    cursor: pointer;
}

.p-typeButton__input {
    cursor: pointer;
    display: none;
}

.p-typeButton__input:checked + .p-typeButton__button {
    background: #f8f1e3;
}

.p-typeButton__button {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    width: 100%;
    padding: 0;
    margin: 0;
    cursor: pointer;
    text-decoration: none;
    border: none;
    outline: none;
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
    width: 100%;
    background-color: #fff;
}

@media screen and (max-width: 767px) {
    .p-typeButton__button {
        height: 13.33333vw;
        font-size: 36px;
        font-size: 4.8vw;
        border: .26667vw solid #5d330d;
    }
}

@media screen and (min-width: 768px) {
    .p-typeButton__button {
        height: 55px;
        font-size: 20px;
        font-size: 2rem;
        border: 1px solid #5d330d;
    }
}

.p-typeButton__button::after {
    content: '';
    position: absolute;
    display: block;
    width: 0;
    height: 0;
    border-style: solid;
}

@media screen and (max-width: 767px) {
    .p-typeButton__button::after {
        right: 1.07vw;
        bottom: 1.07vw;
        border-width: 0 0 4vw 4vw;
    }
}

@media screen and (min-width: 768px) {
    .p-typeButton__button::after {
        right: 5px;
        bottom: 5px;
        border-width: 0 0 20px 20px;
    }
}

.p-typeButton__button--newhouse::after {
    border-color: transparent transparent #ffd1df transparent;
}

.p-typeButton__button--usedhouse::after {
    border-color: transparent transparent #c8effc transparent;
}

.p-typeButton__button--land::after {
    border-color: transparent transparent #c5e6a8 transparent;
}

.p-typeButton__button--apartment::after {
    border-color: transparent transparent #ffbc90 transparent;
}

/* p-members
   ----------------------------------------------------------------- */
.p-members__heading {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    color: #fff;
    background: #5d330d;
}

@media screen and (max-width: 767px) {
    .p-members__heading {
        height: 16vw;
        padding-left: 5.33vw;
        margin-bottom: 5.33vw;
    }
}

@media screen and (min-width: 768px) {
    .p-members__heading {
        height: 90px;
        padding-left: 40px;
        margin-bottom: 34px;
    }
}

.p-members__title {
    font-weight: 700;
}

@media screen and (max-width: 767px) {
    .p-members__title {
        font-size: 42px;
        font-size: 5.6vw;
    }
}

@media screen and (min-width: 768px) {
    .p-members__title {
        font-size: 30px;
        font-size: 3rem;
    }
}

.p-members__badge {
    position: absolute;
    display: inline-block;
}

@media screen and (max-width: 767px) {
    .p-members__badge {
        top: -6.67vw;
        width: 32vw;
        right: 0vw;
    }
}

@media screen and (min-width: 768px) {
    .p-members__badge {
        top: -47px;
        right: 25px;
    }
}

@media screen and (min-width: 768px) {
    .p-members__text {
        width: 540px;
    }
}

.p-members__logintext {
    text-align: center;
}

.p-members__loginname {
    font-weight: 700;
    text-align: center;
}

@media screen and (max-width: 767px) {
    .p-members__loginname {
        font-size: 40px;
        font-size: 5.33vw;
    }
}

@media screen and (min-width: 768px) {
    .p-members__loginname {
        font-size: 30px;
        font-size: 3rem;
    }
}

.p-members__list {
    font-weight: 700;
}

@media screen and (max-width: 767px) {
    .p-members__list {
        font-size: 42px;
        font-size: 5.6vw;
        margin-bottom: 10.67vw;
    }
}

@media screen and (min-width: 768px) {
    .p-members__list {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: justify;
            -ms-flex-pack: justify;
                justify-content: space-between;
        margin-top: 20px;
        margin-bottom: 50px;
    }
}

@media screen and (max-width: 767px) {
    .p-members__item {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: justify;
            -ms-flex-pack: justify;
                justify-content: space-between;
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center;
        margin-top: 2.67vw;
        text-align: right;
    }
}

.p-members__number {
    color: #f00;
    font-weight: 700;
}

@media screen and (max-width: 767px) {
    .p-members__number {
        font-size: 100px;
        font-size: 13.33vw;
        margin-left: 1.33vw;
        margin-right: 1.33vw;
    }
}

@media screen and (min-width: 768px) {
    .p-members__number {
        margin: 0 5px;
        font-size: 56px;
        font-size: 5.6rem;
    }
}

/* p-registerMenu
----------------------------------------------------------------- */
.p-registerMenu--member {
    text-align: right;
}

@media screen and (min-width: 768px) {
    .p-registerMenu--member {
        width: 500px;
        margin: 0 auto;
    }
}

@media screen and (min-width: 768px) {
    .p-registerMenu--member {
        margin-left: 20px;
    }
}

.p-registerMenu__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

@media screen and (max-width: 767px) {
    .p-registerMenu__item {
        width: 48%;
        margin-right: 4%;
    }
}

@media screen and (min-width: 768px) {
    .p-registerMenu__item {
        width: 240px;
        margin-right: 20px;
    }
}

@media screen and (max-width: 767px) {
    .p-registerMenu__item:last-child {
        margin-right: 0;
    }
}

@media screen and (min-width: 768px) {
    .p-registerMenu__item:last-child {
        margin-right: 0;
    }
}

.p-registerMenu__button {
    width: 100%;
    font-weight: 700;
}

@media screen and (max-width: 767px) {
    .p-registerMenu__button {
        height: 13.33333vw;
        font-size: 40px;
        font-size: 5.33vw;
    }
}

@media screen and (min-width: 768px) {
    .p-registerMenu__button {
        height: 55px;
        font-size: 20px;
        font-size: 2rem;
    }
}

.p-registerMenu__link {
    position: relative;
    display: inline-block;
    color: #4d4d4d;
    text-decoration: none;
}

@media screen and (max-width: 767px) {
    .p-registerMenu__link {
        margin-top: 5.33vw;
        padding-right: 9.33vw;
    }
}

@media screen and (min-width: 768px) {
    .p-registerMenu__link {
        margin-top: 10px;
        padding-right: 40px;
        font-size: 14px;
        font-size: 1.4rem;
    }
}

.p-registerMenu__arrow {
    position: absolute;
    top: 50%;
    right: 0;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    display: inline-block;
    color: #000;
    line-height: 1;
    font-weight: 400;
}

@media screen and (max-width: 767px) {
    .p-registerMenu__arrow {
        font-size: 50px;
        font-size: 6.67vw;
        height: 6.66667vw;
    }
}

@media screen and (min-width: 768px) {
    .p-registerMenu__arrow {
        font-size: 30px;
        font-size: 3rem;
        height: 30px;
    }
}

/* p-menuList
-------------------------------------------------------------------------- */
.p-menuList {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
}

@media screen and (max-width: 767px) {
    .p-menuList--col2 .p-menuList__item {
        width: 100%;
    }
}

@media screen and (min-width: 768px) {
    .p-menuList--col2 .p-menuList__item {
        width: 48%;
        margin-right: 4%;
    }
}

@media screen and (min-width: 768px) {
    .p-menuList--col2 .p-menuList__item {
        width: 580px;
        margin-right: 40px;
    }
}

@media screen and (min-width: 768px) {
    .p-menuList--col2 .p-menuList__item:nth-child(2n) {
        margin-right: 0;
    }
}

.p-menuList--col2 .p-menuList__link {
    width: 100%;
}

@media screen and (max-width: 767px) {
    .p-menuList__item {
        margin-top: 5.33vw;
    }
}

@media screen and (min-width: 768px) {
    .p-menuList__item {
        width: 380px;
        margin-top: 30px;
        margin-right: 30px;
    }
}

@media screen and (max-width: 767px) {
    .p-menuList__item:first-child {
        margin-top: 0;
    }
}

@media screen and (min-width: 768px) {
    .p-menuList__item:nth-child(3n) {
        margin-right: 0;
    }
}

@media screen and (min-width: 768px) {
    .p-menuList__item:nth-child(-n+3) {
        margin-top: 0;
    }
}

/* p-modelHouse
-------------------------------------------------------------------------- */
.p-modelHouse {
    display: block;
    text-decoration: none;
    cursor: pointer;
}

.p-modelHouse__inner {
    position: relative;
}

@media screen and (min-width: 768px) {
    .p-modelHouse__inner {
        max-width: 1200px;
        margin-left: auto;
        margin-right: auto;
    }
}

.p-modelHouse__container {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

@media screen and (max-width: 767px) {
    .p-modelHouse__container {
        background-color: #9e856e;
    }
}

@media screen and (min-width: 768px) {
    .p-modelHouse__container {
        width: 100%;
    }
}

@media screen and (min-width: 768px) {
    .p-modelHouse__container::after {
        position: absolute;
        top: 0;
        left: 50%;
        -webkit-transform: translateX(-50%);
                transform: translateX(-50%);
        display: block;
        content: '';
        width: 500%;
        height: 100%;
        background-color: #9e856e;
        z-index: -1;
    }
}

.p-modelHouse__logo {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    background: #fff;
}

@media screen and (max-width: 767px) {
    .p-modelHouse__logo {
        width: 29.33333vw;
    }
}

@media screen and (min-width: 768px) {
    .p-modelHouse__logo {
        width: 175px;
    }
}

.p-modelHouse__logo img {
    width: 100%;
    height: auto;
}

@media screen and (max-width: 767px) {
    .p-modelHouse__heading {
        -webkit-box-flex: 1;
            -ms-flex: 1;
                flex: 1;
        padding-top: 4vw;
        padding-bottom: 4vw;
    }
}

@media screen and (min-width: 768px) {
    .p-modelHouse__heading {
        -webkit-box-flex: 1;
            -ms-flex: 1;
                flex: 1;
        padding: 23px 0 0;
    }
}

.p-modelHouse__en {
    display: inline-block;
    width: 100%;
    color: #5d330d;
    background-color: #fff;
    font-weight: 400;
}

@media screen and (max-width: 767px) {
    .p-modelHouse__en {
        font-size: 48px;
        font-size: 6.4vw;
        padding: 2.67vw 0vw 1.33vw 2.67vw;
    }
}

@media screen and (min-width: 768px) {
    .p-modelHouse__en {
        margin-bottom: 20px;
        padding: 14px 0 0 24px;
        font-size: 46px;
        font-size: 4.6rem;
        letter-spacing: .05em;
    }
}

.p-modelHouse__jp {
    display: inline-block;
    color: #fff;
}

@media screen and (max-width: 767px) {
    .p-modelHouse__jp {
        line-height: 1.5;
        margin-top: 1.33vw;
        padding-left: 2.67vw;
    }
}

@media screen and (min-width: 768px) {
    .p-modelHouse__jp {
        padding-left: 18px;
        font-size: 20px;
        font-size: 2rem;
    }
}

@media screen and (max-width: 767px) {
    .p-modelHouse__images {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: justify;
            -ms-flex-pack: justify;
                justify-content: space-between;
    }
}

.p-modelHouse__image {
    display: inline-block;
}

@media screen and (max-width: 767px) {
    .p-modelHouse__image {
        width: 50%;
    }
}

@media screen and (min-width: 768px) {
    .p-modelHouse__image {
        position: absolute;
    }
}

.p-modelHouse__image img {
    width: 100%;
}

@media screen and (max-width: 767px) {
    .p-modelHouse__image img {
        height: 40vw;
    }
}

@media screen and (min-width: 768px) {
    .p-modelHouse__image img {
        height: 400px;
    }
}

@media screen and (min-width: 768px) {
    .p-modelHouse__image img {
        height: auto;
    }
}

.p-modelHouse__image--small {
    z-index: 2;
}

@media screen and (min-width: 768px) {
    .p-modelHouse__image--small {
        top: -18px;
        width: 240px;
        right: 300px;
    }
}

@media screen and (min-width: 768px) {
    .p-modelHouse__image--large {
        top: -70px;
        right: 0;
        width: 320px;
    }
}

@media screen and (max-width: 767px) {
    .p-modelHouse__text {
        margin-top: 2.67vw;
        margin-left: 2.67vw;
        margin-right: 2.67vw;
    }
}

@media screen and (min-width: 768px) {
    .p-modelHouse__text {
        margin-top: 10px;
        margin-left: 20px;
    }
}

/* p-modelHouse2
-------------------------------------------------------------------------- */
.p-modelHouse2 {
    display: block;
    text-decoration: none;
    cursor: pointer;
}

.p-modelHouse2__inner {
    position: relative;
}

@media screen and (min-width: 768px) {
    .p-modelHouse2__inner {
        max-width: 1200px;
        margin-left: auto;
        margin-right: auto;
    }
}

.p-modelHouse2__container {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

@media screen and (max-width: 767px) {
    .p-modelHouse2__container {
        background-color: #9e856e;
    }
}

@media screen and (min-width: 768px) {
    .p-modelHouse2__container {
        width: 100%;
    }
}

@media screen and (min-width: 768px) {
    .p-modelHouse2__container::after {
        position: absolute;
        top: 0;
        left: 50%;
        -webkit-transform: translateX(-50%);
                transform: translateX(-50%);
        display: block;
        content: '';
        width: 500%;
        height: 100%;
        background-color: #9e856e;
        z-index: -1;
    }
}

.p-modelHouse2__logo {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    background: #fff;
}

@media screen and (max-width: 767px) {
    .p-modelHouse2__logo {
        width: 29.33333vw;
    }
}

@media screen and (min-width: 768px) {
    .p-modelHouse2__logo {
        width: 175px;
    }
}

.p-modelHouse2__logo img {
    width: 100%;
    height: auto;
}

@media screen and (max-width: 767px) {
    .p-modelHouse2__heading {
        -webkit-box-flex: 1;
            -ms-flex: 1;
                flex: 1;
        padding-top: 4vw;
        padding-bottom: 4vw;
    }
}

@media screen and (min-width: 768px) {
    .p-modelHouse2__heading {
        -webkit-box-flex: 1;
            -ms-flex: 1;
                flex: 1;
        padding: 23px 0;
    }
}

.p-modelHouse2__en {
    position: relative;
    display: inline-block;
    width: 100%;
    color: #5d330d;
    background-color: #fff;
    font-weight: 400;
}

.p-modelHouse2__en:after {
    content: '';
    position: absolute;
    height: 100%;
    top: 0;
    left: -50vw;
    width: 50vw;
    background: #fff;
}

@media screen and (max-width: 767px) {
    .p-modelHouse2__en {
        font-size: 48px;
        font-size: 6.4vw;
        padding: 2.67vw 0vw 1.33vw 2.67vw;
    }
}

@media screen and (min-width: 768px) {
    .p-modelHouse2__en {
        margin-bottom: 20px;
        padding: 14px 0 0 24px;
        font-size: 46px;
        font-size: 4.6rem;
        letter-spacing: .05em;
    }
}

.p-modelHouse2__jp {
    display: inline-block;
    color: #fff;
}

@media screen and (max-width: 767px) {
    .p-modelHouse2__jp {
        line-height: 1.5;
        margin-top: 1.33vw;
        padding-left: 2.67vw;
    }
}

@media screen and (min-width: 768px) {
    .p-modelHouse2__jp {
        padding-left: 18px;
        font-size: 20px;
        font-size: 2rem;
    }
}

@media screen and (max-width: 767px) {
    .p-modelHouse2__images {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: justify;
            -ms-flex-pack: justify;
                justify-content: space-between;
    }
}

.p-modelHouse2__image {
    display: inline-block;
}

@media screen and (max-width: 767px) {
    .p-modelHouse2__image {
        width: 50%;
    }
}

@media screen and (min-width: 768px) {
    .p-modelHouse2__image {
        position: absolute;
    }
}

.p-modelHouse2__image img {
    width: 100%;
}

@media screen and (max-width: 767px) {
    .p-modelHouse2__image img {
        height: 40vw;
    }
}

@media screen and (min-width: 768px) {
    .p-modelHouse2__image img {
        height: 400px;
    }
}

@media screen and (min-width: 768px) {
    .p-modelHouse2__image img {
        height: auto;
    }
}

.p-modelHouse2__image--small {
    z-index: 2;
}

@media screen and (min-width: 768px) {
    .p-modelHouse2__image--small {
        top: -18px;
        width: 240px;
        right: 300px;
    }
}

@media screen and (min-width: 768px) {
    .p-modelHouse2__image--large {
        top: -70px;
        right: 0;
        width: 320px;
    }
}

@media screen and (max-width: 767px) {
    .p-modelHouse2__text {
        margin-top: 2.67vw;
        margin-left: 2.67vw;
        margin-right: 2.67vw;
    }
}

@media screen and (min-width: 768px) {
    .p-modelHouse2__text {
        margin-top: 10px;
        margin-left: 20px;
    }
}

@media screen and (max-width: 767px) {
    .p-modelHouse2__title {
        text-align: center;
    }
}

@media screen and (min-width: 768px) {
    .p-menuBlockGroup {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
    }
}

@media screen and (min-width: 768px) {
    .p-menuBlockGroup__item {
        width: 100%;
    }
}

@media screen and (min-width: 768px) {
    .p-menuBlockGroup__item {
        width: 50%;
    }
}

.p-menuBlock {
    position: relative;
}

.p-menuBlock::after {
    position: absolute;
    top: 0;
    left: 0;
    content: '';
    display: block;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, .3);
}

.p-menuBlock__content {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    color: #fff;
    text-align: center;
    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;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    z-index: 2;
}

@media screen and (max-width: 767px) {
    .p-menuBlock__title {
        margin-bottom: 4vw;
    }
}

@media screen and (min-width: 768px) {
    .p-menuBlock__title {
        margin-bottom: 20px;
    }
}

.p-menuBlock__en {
    position: relative;
    display: block;
    font-weight: 700;
}

@media screen and (max-width: 767px) {
    .p-menuBlock__en {
        font-size: 52px;
        font-size: 6.93vw;
        padding-bottom: 2.67vw;
        margin-bottom: 3.33vw;
    }
}

@media screen and (min-width: 768px) {
    .p-menuBlock__en {
        padding-bottom: 20px;
        margin-bottom: 25px;
        font-size: 50px;
        font-size: 5rem;
    }
}

@media screen and (min-width: 768px) {
    .p-menuBlock__en {
        font-size: 50px;
        font-size: 2.6vw;
    }
}

.p-menuBlock__en::after {
    position: absolute;
    bottom: 0;
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    display: block;
    content: '';
    background-color: #fff;
}

@media screen and (max-width: 767px) {
    .p-menuBlock__en::after {
        width: 40vw;
        height: .53333vw;
    }
}

@media screen and (min-width: 768px) {
    .p-menuBlock__en::after {
        width: 340px;
        height: 2px;
    }
}

.p-menuBlock__jp {
    display: block;
    font-weight: 500;
}

@media screen and (max-width: 767px) {
    .p-menuBlock__jp {
        font-size: 46px;
        font-size: 6.13vw;
    }
}

@media screen and (min-width: 768px) {
    .p-menuBlock__jp {
        font-size: 30px;
        font-size: 3rem;
    }
}

@media screen and (min-width: 768px) {
    .p-menuBlock__jp {
        font-size: 30px;
        font-size: 1.56vw;
    }
}

@media screen and (max-width: 767px) {
    .p-menuBlock__text {
        margin-bottom: 2.67vw;
    }
}

@media screen and (min-width: 768px) {
    .p-menuBlock__text {
        margin-bottom: 20px;
    }
}

@media screen and (min-width: 768px) {
    .p-menuBlock__text {
        font-size: 16px;
        font-size: .83vw;
    }
}

.p-menuBlock__image {
    z-index: -1;
}

@media screen and (max-width: 767px) {
    .p-menuBlock__image img {
        width: 100%;
        height: 72vw;
    }
}

/* p-special
----------------------------------------------------------------- */
@media screen and (min-width: 768px) {
    .p-special__list {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    }
}

@media screen and (max-width: 767px) {
    .p-special__item {
        margin-bottom: 12vw;
    }
}

@media screen and (min-width: 768px) {
    .p-special__item {
        max-width: 380px;
    }
}

@media screen and (min-width: 768px) {
    .p-special__item {
        width: 31.66%;
        margin-right: 2.5%;
        margin-bottom: 60px;
    }
    .p-special__item:nth-child(3n) {
        margin-right: 0;
    }
}

.p-special__link {
    position: relative;
    display: block;
}

.p-special__image img {
    width: 100%;
    height: auto;
}

.p-special__content {
    position: absolute;
    top: 50%;
    left: 0;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    color: #fff;
    z-index: 2;
}

@media screen and (max-width: 767px) {
    .p-special__content {
        padding: 0vw 2.67vw 0vw 2.67vw;
    }
}

@media screen and (min-width: 768px) {
    .p-special__content {
        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;
        height: 114px;
        padding: 0 5px 0 13px;
    }
}

.p-special__en {
    line-height: 1;
    letter-spacing: .05em;
}

@media screen and (max-width: 767px) {
    .p-special__en {
        font-size: 50px;
        font-size: 6.67vw;
    }
}

@media screen and (min-width: 768px) {
    .p-special__en {
        font-size: 28px;
        font-size: 2.8rem;
    }
}

.p-special__text {
    letter-spacing: normal;
    line-height: 1.6;
}

@media screen and (max-width: 767px) {
    .p-special__text {
        font-size: 28px;
        font-size: 3.73vw;
    }
}

@media screen and (max-width: 767px) {
    .p-special__button {
        margin-top: 10.67vw;
    }
}

@media screen and (min-width: 768px) {
    .p-special__button {
        margin-top: 40px;
    }
}

/* p-memberBox
   ----------------------------------------------------------------- */
.p-memberBox {
    position: relative;
}

@media screen and (max-width: 767px) {
    .p-memberBox {
        padding: 20vw 0vw 20vw 0vw;
        background-color: #f8f1e3;
    }
}

@media screen and (min-width: 768px) {
    .p-memberBox {
        padding: 60px 0 60px;
        margin-bottom: 60px;
    }
}

@media screen and (min-width: 768px) {
    .p-memberBox::after {
        position: absolute;
        top: 0;
        right: 0;
        display: block;
        content: '';
        width: 50%;
        height: 100%;
        background-color: #f8f1e3;
        z-index: -1;
    }
}

@media screen and (max-width: 767px) {
    .p-memberBox__heading {
        margin-bottom: 10.67vw;
    }
}

@media screen and (min-width: 768px) {
    .p-memberBox__heading {
        margin-bottom: 60px;
    }
}

.p-memberBox__title {
    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;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
}

@media screen and (max-width: 767px) {
    .p-memberBox__title {
        margin-bottom: 5.33vw;
    }
}

@media screen and (min-width: 768px) {
    .p-memberBox__title {
        margin-bottom: 20px;
    }
}

.p-memberBox__en {
    position: relative;
    font-weight: 700;
}

@media screen and (max-width: 767px) {
    .p-memberBox__en {
        font-size: 70px;
        font-size: 9.33vw;
    }
}

@media screen and (min-width: 768px) {
    .p-memberBox__en {
        font-size: 60px;
        font-size: 6rem;
    }
}

.p-memberBox__jp {
    font-weight: 400;
}

@media screen and (max-width: 767px) {
    .p-memberBox__jp {
        margin-top: 2.67vw;
        font-size: 40px;
        font-size: 5.33vw;
        text-align: center;
        line-height: 1.6;
    }
}

@media screen and (min-width: 768px) {
    .p-memberBox__jp {
        margin-top: 13px;
        font-size: 20px;
        font-size: 2rem;
    }
}

@media screen and (min-width: 768px) {
    .p-memberBox__container {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
    }
}

@media screen and (min-width: 768px) {
    .p-memberBox__container {
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
        -webkit-box-pack: center;
            -ms-flex-pack: center;
                justify-content: center;
    }
}

@media screen and (max-width: 767px) {
    .p-memberBox__col {
        text-align: center;
        margin-top: 10.67vw;
    }
}

@media screen and (min-width: 768px) {
    .p-memberBox__col {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: center;
            -ms-flex-pack: center;
                justify-content: center;
        width: 600px;
    }
}

@media screen and (max-width: 767px) {
    .p-memberBox__col:nth-child(1) {
        margin-top: 0;
    }
}

.p-memberBox__col--btn {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
}

@media screen and (max-width: 767px) {
    .p-memberBox__col--btn {
        text-align: center;
        margin-top: 10.67vw;
        -webkit-box-pack: center;
            -ms-flex-pack: center;
                justify-content: center;
    }
}

@media screen and (min-width: 768px) {
    .p-memberBox__col--btn {
        -webkit-box-pack: end;
            -ms-flex-pack: end;
                justify-content: flex-end;
        width: 600px;
        padding-right: 5vw;
    }
}

@media screen and (max-width: 767px) {
    .p-memberBox__col--btn:nth-child(1) {
        margin-top: 0;
    }
}

.p-memberBox__col--btn .pass {
    width: 100%;
    text-align: right;
    margin-top: 15px;
}

.p-memberBox__col--btn .pass a {
    padding-right: 40px;
    position: relative;
    display: inline-block;
    color: #000;
    text-decoration: none;
}

@media screen and (max-width: 767px) {
    .p-memberBox__col--btn .pass {
        margin-top: 30px;
        text-align: center;
    }
}

@media screen and (max-width: 767px) {
    .p-memberBox__label {
        font-size: 24px;
        font-size: 2.4rem;
        margin-top: 4vw;
        margin-bottom: 4vw;
        line-height: 1.3;
    }
}

@media screen and (min-width: 768px) {
    .p-memberBox__label {
        text-align: center;
        margin-bottom: 24px;
        font-size: 24px;
        font-size: 2.4rem;
    }
}

.p-memberBox__label span {
    font-size: 10px;
    font-size: 1rem;
}

@media screen and (max-width: 767px) {
    .p-memberBox__label span {
        font-size: 20px;
        font-size: 2.67vw;
    }
}

@media screen and (max-width: 767px) {
    .p-memberBox__tel {
        display: inline-block;
    }
}

@media screen and (min-width: 768px) {
    .p-memberBox__text {
        text-align: center;
        margin-top: 10px;
        margin-bottom: 30px;
    }
}

/* c-show
   ----------------------------------------------------------------- */
.c-show {
    text-decoration: none;
    color: #000;
    font-family: 'Josefin Sans', sans-serif;
    font-weight: 600;
}

.c-show:nth-child(2) {
    margin-left: 40px;
}

@media screen and (max-width: 767px) {
    .c-show:nth-child(2) {
        margin-left: 0;
    }
}

@media screen and (max-width: 767px) {
    .c-show__label {
        font-size: 40px;
        font-size: 5.33vw;
    }
}

@media screen and (min-width: 768px) {
    .c-show__label {
        font-size: 18px;
        font-size: 1.8rem;
    }
}

.c-show__number {
    line-height: 1;
}

@media screen and (max-width: 767px) {
    .c-show__number {
        font-size: 80px;
        font-size: 10.67vw;
    }
}

@media screen and (min-width: 768px) {
    .c-show__number {
        font-size: 56px;
        font-size: 5.6rem;
    }
}

/* p-memberButton
   ----------------------------------------------------------------- */
.p-memberButton {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    text-decoration: none;
}

.p-memberButton:first-child {
    background-color: #5d330d;
    border: 2px solid #5d330d;
    color: #fff;
    font-weight: bold;
}

.p-memberButton:nth-child(2) {
    background-color: #fff;
    border: 1px solid #999;
    color: #000;
    font-weight: bold;
    margin-left: 20px;
}

@media screen and (max-width: 767px) {
    .p-memberButton {
        padding: 2.67vw 4vw 2.67vw 4vw;
        border: .26667vw solid #c9c9c9;
        width: 45%;
    }
}

@media screen and (min-width: 768px) {
    .p-memberButton {
        min-width: 200px;
        padding: 14px 20px;
    }
}

@media screen and (min-width: 768px) {
    .p-memberButton--contact {
        max-width: 440px;
    }
}

.p-memberButton__title {
    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;
}

@media screen and (max-width: 767px) {
    .p-memberButton__en {
        font-size: 50px;
        font-size: 6.67vw;
    }
}

@media screen and (min-width: 768px) {
    .p-memberButton__en {
        font-size: 32px;
        font-size: 3.2rem;
    }
}

@media screen and (min-width: 768px) {
    .p-memberButton__en {
        font-size: 36px;
        font-size: 3.6rem;
    }
}

.p-memberButton__jp {
    color: #4e4e4e;
    font-weight: 400;
}

@media screen and (max-width: 767px) {
    .p-memberButton__jp {
        margin-top: 1.07vw;
        font-size: 32px;
        font-size: 4.27vw;
    }
}

@media screen and (min-width: 768px) {
    .p-memberButton__jp {
        margin-top: 4px;
        font-size: 18px;
        font-size: 1.8rem;
    }
}

.modelhouseMenu {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
}

.modelhouseMenu__item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin: 15px 0;
    text-decoration: none;
    color: #fff;
    border-right: 1px #fff solid;
}

@media screen and (min-width: 768px) {
    .modelhouseMenu__item:nth-child(4n) {
        border-right: 0;
    }
}

@media screen and (max-width: 767px) {
    .modelhouseMenu__item:nth-child(even) {
        border-right: 0;
    }
}

@media screen and (min-width: 768px) {
    .modelhouseMenu__item {
        width: 25%;
    }
}

@media screen and (max-width: 767px) {
    .modelhouseMenu__item {
        width: 50%;
        margin: 10px 0;
    }
}

.modelhouseMenu__en {
    font-family: 'Josefin Sans', sans-serif;
    font-weight: 400;
    text-align: center;
    width: 100%;
}

@media screen and (max-width: 767px) {
    .modelhouseMenu__en {
        font-size: 30px;
        font-size: 4vw;
    }
}

@media screen and (min-width: 768px) {
    .modelhouseMenu__en {
        font-size: 20px;
        font-size: 2rem;
    }
}

.modelhouseMenu__jp {
    text-align: center;
    width: 100%;
}

@media screen and (max-width: 767px) {
    .modelhouseMenu__jp {
        font-size: 25px;
        font-size: 3.33vw;
    }
}

.modelhouseMidashi {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: distribute;
        justify-content: space-around;
}

@media screen and (max-width: 767px) {
    .modelhouseMidashi {
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    }
}

@media screen and (min-width: 768px) {
    .modelhouseMidashi {
        padding-bottom: 30px;
    }
}

@media screen and (max-width: 767px) {
    .modelhouseMidashi {
        padding-bottom: 30px;
    }
}

.modelhouseMidashi__image {
    position: relative;
    z-index: 10;
}

.modelhouseMidashi__image img {
    position: relative;
    z-index: 10;
}

@media screen and (min-width: 768px) {
    .modelhouseMidashi__image img {
        width: 230px;
    }
}

@media screen and (max-width: 767px) {
    .modelhouseMidashi__image img {
        width: 190px;
    }
}

@media screen and (max-width: 767px) {
    .modelhouseMidashi__image img {
        margin: 0 auto;
        display: block;
    }
}

@media screen and (max-width: 767px) {
    .modelhouseMidashi__image {
        width: 100%;
        margin-bottom: 30px;
    }
}

@media screen and (max-width: 767px) {
    .modelhouseMidashi__image {
        width: 100%;
        margin-bottom: 30px;
    }
}

.modelhouseMidashi__text {
    width: 55%;
    line-height: 1.6;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
}

@media screen and (max-width: 767px) {
    .modelhouseMidashi__text {
        padding-bottom: 1.33vw;
        width: 100%;
    }
}

@media screen and (min-width: 768px) {
    .modelhouseMidashi__title {
        font-size: 30px;
        font-size: 3rem;
        line-height: 1.6;
    }
}

@media screen and (max-width: 767px) {
    .modelhouseMidashi__title {
        text-align: center;
        margin-bottom: 30px;
    }
}

@media screen and (max-width: 767px) {
    .modelhouseMidashi__title {
        font-size: 40px;
        font-size: 5.33vw;
        line-height: 1.6;
        margin-bottom: 0;
    }
}

.tanjyou {
    background: #5d330d;
    height: 40px;
    color: #fff;
    text-align: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
}

@media screen and (max-width: 767px) {
    .tanjyou {
        font-size: 40px;
        font-size: 5.33vw;
        line-height: 1.6;
        height: auto;
        margin-bottom: 60px;
    }
}

@media screen and (min-width: 768px) {
    .tanjyou {
        font-size: 30px;
        font-size: 3rem;
        line-height: 1.6;
    }
}

@media screen and (max-width: 767px) {
    .c-inner {
        /* display: inline-block; */
    }
}

.kengakukaiEvent {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: distribute;
        justify-content: space-around;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    position: relative;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin-top: 30px;
}

.kengakukaiEvent:before {
    content: '';
    position: absolute;
    top: 0;
    display: block;
    background: #b19d8b;
    width: 400vw;
    height: 60px;
    z-index: -10;
}

@media screen and (min-width: 768px) {
    .kengakukaiEvent:before {
        left: -18.5vw;
    }
}

@media screen and (max-width: 767px) {
    .kengakukaiEvent:before {
        height: 20vw;
    }
}

.kengakukaiEvent:after {
    content: '';
    position: absolute;
    bottom: 0;
    display: block;
    background: #b19d8b;
    width: 400vw;
    height: 190px;
    z-index: -10;
}

@media screen and (min-width: 768px) {
    .kengakukaiEvent:after {
        left: -18.5vw;
    }
}

@media screen and (max-width: 767px) {
    .kengakukaiEvent:after {
        height: 20vw;
    }
}

@media screen and (max-width: 767px) {
    .kengakukaiEvent:after {
        height: 55vw;
    }
}

@media screen and (max-width: 767px) {
    .kengakukaiEvent {
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    }
}

@media screen and (min-width: 768px) {
    .kengakukaiEvent {
        padding-bottom: 30px;
    }
}

@media screen and (max-width: 767px) {
    .kengakukaiEvent {
        padding-bottom: 30px;
    }
}

.kengakukaiEvent__image {
    position: relative;
    z-index: 10;
    width: 40%;
}

.kengakukaiEvent__image img {
    position: relative;
    z-index: 10;
}

@media screen and (max-width: 767px) {
    .kengakukaiEvent__image img {
        margin: 0 auto;
        display: block;
    }
}

@media screen and (max-width: 767px) {
    .kengakukaiEvent__image {
        width: 100%;
        margin-bottom: 0;
    }
}

@media screen and (max-width: 767px) {
    .kengakukaiEvent__image {
        width: 100%;
        margin-bottom: 30px;
    }
}

.kengakukaiEvent__text {
    width: 55%;
    line-height: 1.6;
    margin-left: 30px;
}

@media screen and (max-width: 767px) {
    .kengakukaiEvent__text {
        padding-bottom: 2.67vw;
        width: 100%;
        margin-left: 0;
        text-align: center;
    }
}

.kengakukaiEvent__midashi {
    width: 100%;
    display: block;
    text-align: center;
    margin-top: 5px;
    color: #fff;
}

@media screen and (max-width: 767px) {
    .kengakukaiEvent__midashi {
        font-size: 40px;
        font-size: 5.33vw;
        line-height: 1.6;
    }
}

@media screen and (min-width: 768px) {
    .kengakukaiEvent__midashi {
        font-size: 30px;
        font-size: 3rem;
        line-height: 1.6;
    }
}

.kengakukaiEvent__title {
    width: 100%;
    display: block;
    margin-top: 10px;
}

@media screen and (max-width: 767px) {
    .kengakukaiEvent__title {
        font-size: 40px;
        font-size: 5.33vw;
        line-height: 1.6;
    }
}

@media screen and (min-width: 768px) {
    .kengakukaiEvent__title {
        font-size: 30px;
        font-size: 3rem;
        line-height: 1.6;
    }
}

.kengakukaiEvent p.text1 {
    width: 100%;
    display: block;
    margin-bottom: 50px;
}

.kengakukaiEvent p.text2 {
    width: 100%;
    display: block;
    margin-bottom: 0;
    color: #fff;
}

.eventarea {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: distribute;
        justify-content: space-around;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    position: relative;
    width: 100%;
    overflow: hidden;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin-top: 30px;
    background: #b19d8b;
}

@media screen and (max-width: 767px) {
    .eventarea {
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    }
}

@media screen and (min-width: 768px) {
    .eventarea {
        padding-bottom: 30px;
    }
}

@media screen and (max-width: 767px) {
    .eventarea {
        padding-bottom: 30px;
    }
}

.eventarea__image {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    left: 0;
    right: 0;
    margin: auto;
    z-index: 10;
    width: 100%;
}

@media screen and (min-width: 768px) {
    .eventarea__image {
        position: absolute;
    }
}

@media screen and (max-width: 767px) {
    .eventarea__image {
        background: #fff;
    }
}

.eventarea__image img {
    width: 43.5%;
    margin-top: -25px;
}

@media screen and (max-width: 767px) {
    .eventarea__image img {
        width: 100%;
        margin-bottom: 0;
        margin-top: -10px;
    }
}

@media screen and (max-width: 767px) {
    .eventarea__image img {
        width: 100%;
        margin-bottom: 30px;
    }
}

.eventarea__textWrap {
    background: #fff;
    width: 100%;
}

.eventarea__textInner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
}

.eventarea__text {
    width: 55%;
    line-height: 1.6;
    margin-left: 30px;
}

@media screen and (max-width: 767px) {
    .eventarea__text {
        padding-bottom: 2.67vw;
        width: 100%;
        margin-left: 0;
        text-align: center;
    }
}

.eventarea__text2Wrap {
    width: 100%;
}

.eventarea__text2Inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
}

.eventarea__midashi {
    width: 100%;
    display: block;
    text-align: center;
    margin-top: 5px;
    margin-bottom: 5px;
    color: #fff;
}

@media screen and (max-width: 767px) {
    .eventarea__midashi {
        font-size: 40px;
        font-size: 5.33vw;
        line-height: 1.6;
    }
}

@media screen and (min-width: 768px) {
    .eventarea__midashi {
        font-size: 30px;
        font-size: 3rem;
        line-height: 1.6;
    }
}

.eventarea__title {
    width: 100%;
    display: block;
    margin-top: 10px;
    margin-bottom: 20px;
}

@media screen and (max-width: 767px) {
    .eventarea__title {
        font-size: 40px;
        font-size: 5.33vw;
        line-height: 1.6;
    }
}

@media screen and (min-width: 768px) {
    .eventarea__title {
        font-size: 30px;
        font-size: 3rem;
        line-height: 1.6;
    }
}

.eventarea p.text1 {
    width: 100%;
    display: block;
    margin-bottom: 20px;
}

.eventarea p.text1 span{
	font-weight:700;
    font-size:2.4rem;
	line-height: 1.2;
	padding: 0 0 10px;
	display: inline-block;
}

@media screen and (max-width: 767px) {
    .eventarea p.text1 {
        text-align: left;
    }
}

.eventarea p.text2 {
    width: 55%;
    line-height: 1.6;
    margin-top: 20px;
    margin-left: 30px;
    display: block;
    margin-bottom: 0;
    color: #fff;
}

@media screen and (max-width: 767px) {
    .eventarea p.text2 {
        padding-bottom: 2.67vw;
        width: 100%;
        margin-left: 0;
        text-align: center;
    }
}

.zehconceptArea {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
}

@media screen and (max-width: 767px) {
    .zehconceptArea {
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    }
}

.zehconceptArea__jp {
    color: #5d330d;
    margin: 5px 0s;
    line-height: 1.6;
}

@media screen and (max-width: 767px) {
    .zehconceptArea__jp {
        font-size: 60px;
        font-size: 8vw;
    }
}

@media screen and (min-width: 768px) {
    .zehconceptArea__jp {
        font-size: 55px;
        font-size: 5.5rem;
    }
}

.zehconceptArea__image {
    position: relative;
    width: 40%;
    z-index: 10;
}

.zehconceptArea__image img {
    position: relative;
    z-index: 10;
}

@media screen and (max-width: 767px) {
    .zehconceptArea__image {
        width: 100%;
        margin-bottom: 80px;
    }
}

@media screen and (max-width: 767px) {
    .zehconceptArea__image {
        width: 100%;
        margin-bottom: 30px;
    }
}

.zehconceptArea__text {
    width: 55%;
    line-height: 1.6;
}

@media screen and (max-width: 767px) {
    .zehconceptArea__text {
        padding-bottom: 1.33vw;
        width: 100%;
    }
}

@media screen and (max-width: 767px) {
    .zehconceptArea__text {
        text-align: left;
    }
    .zehconceptArea__text p {
        text-align: left;
    }
}

.zehconceptArea__title {
    margin-bottom: 10px;
}

@media screen and (max-width: 767px) {
    .zehconceptArea__title {
        margin-top: 5.33vw;
        font-size: 40px;
        font-size: 5.33vw;
        line-height: 1.6;
        text-align: left;
    }
}

@media screen and (min-width: 768px) {
    .zehconceptArea__title {
        margin-top: 30px;
        font-size: 30px;
        font-size: 3rem;
        line-height: 1.6;
    }
}

/* PhotoGallery
   ----------------------------------------------------------------- */
.photo-gallery {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
}

@media screen and (min-width: 768px) {
    .photo-gallery {
        margin-top: 60px;
    }
}

@media screen and (max-width: 767px) {
    .photo-gallery {
        margin-top: 30px;
    }
}

.photo-gallery::after {
    content: '';
    display: block;
    width: 32.5%;
}

.photo-gallery figure {
    position: relative;
    width: 32.5%;
    height: auto;
    overflow: hidden;
}

@media screen and (min-width: 768px) {
    .photo-gallery figure img {
        width: 390px;
        height: 305px;
    }
}

@media screen and (max-width: 767px) {
    .photo-gallery figure img {
        width: 236.59px;
        height: 177.44px;
    }
}

@media screen and (max-width: 767px) {
    .photo-gallery figure {
        width: 50%;
    }
    .photo-gallery figure img {
        width: 50.66667vw;
        height: 34.66667vw;
    }
}

.photo-gallery figure a {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.photo-gallery figure:nth-child(-n+2), .photo-gallery figure:nth-child(6), .photo-gallery figure:nth-child(7), .photo-gallery figure:nth-child(8), .photo-gallery figure:nth-child(9), .photo-gallery figure:nth-child(14), .photo-gallery figure:nth-child(15), .photo-gallery figure:nth-child(16), .photo-gallery figure:nth-child(17) {
    width: 50%;
}

@media screen and (min-width: 768px) {
    .photo-gallery figure:nth-child(-n+2) img, .photo-gallery figure:nth-child(6) img, .photo-gallery figure:nth-child(7) img, .photo-gallery figure:nth-child(8) img, .photo-gallery figure:nth-child(9) img, .photo-gallery figure:nth-child(14) img, .photo-gallery figure:nth-child(15) img, .photo-gallery figure:nth-child(16) img, .photo-gallery figure:nth-child(17) img {
        width: 600px;
        height: 450px;
    }
}

@media screen and (max-width: 767px) {
    .photo-gallery figure:nth-child(-n+2) img, .photo-gallery figure:nth-child(6) img, .photo-gallery figure:nth-child(7) img, .photo-gallery figure:nth-child(8) img, .photo-gallery figure:nth-child(9) img, .photo-gallery figure:nth-child(14) img, .photo-gallery figure:nth-child(15) img, .photo-gallery figure:nth-child(16) img, .photo-gallery figure:nth-child(17) img {
        width: 364px;
        height: 273px;
    }
}

@media screen and (max-width: 767px) {
    .photo-gallery figure:nth-child(-n+2), .photo-gallery figure:nth-child(6), .photo-gallery figure:nth-child(7), .photo-gallery figure:nth-child(8), .photo-gallery figure:nth-child(9), .photo-gallery figure:nth-child(14), .photo-gallery figure:nth-child(15), .photo-gallery figure:nth-child(16), .photo-gallery figure:nth-child(17) {
        width: 100%;
    }
    .photo-gallery figure:nth-child(-n+2) img, .photo-gallery figure:nth-child(6) img, .photo-gallery figure:nth-child(7) img, .photo-gallery figure:nth-child(8) img, .photo-gallery figure:nth-child(9) img, .photo-gallery figure:nth-child(14) img, .photo-gallery figure:nth-child(15) img, .photo-gallery figure:nth-child(16) img, .photo-gallery figure:nth-child(17) img {
        width: 133.33333vw;
        height: 70.66667vw;
    }
}

.photo-gallery figure:nth-child(-n+2):before, .photo-gallery figure:nth-child(6):before, .photo-gallery figure:nth-child(7):before, .photo-gallery figure:nth-child(8):before, .photo-gallery figure:nth-child(9):before, .photo-gallery figure:nth-child(14):before, .photo-gallery figure:nth-child(15):before, .photo-gallery figure:nth-child(16):before, .photo-gallery figure:nth-child(17):before {
    content: '';
    display: block;
    padding-top: 75%;
}

.photo-gallery figure:nth-child(3), .photo-gallery figure:nth-child(4), .photo-gallery figure:nth-child(5) {
    width: 33.333333%;
}

.photo-gallery figure:nth-child(3):before, .photo-gallery figure:nth-child(4):before, .photo-gallery figure:nth-child(5):before {
    content: '';
    display: block;
    padding-top: 150%;
}

@media screen and (min-width: 768px) {
    .photo-gallery figure:nth-child(3) img, .photo-gallery figure:nth-child(4) img, .photo-gallery figure:nth-child(5) img {
        width: 400px;
        height: 600px;
    }
}

@media screen and (max-width: 767px) {
    .photo-gallery figure:nth-child(3) img, .photo-gallery figure:nth-child(4) img, .photo-gallery figure:nth-child(5) img {
        width: 242.66px;
        height: 363.98px;
    }
}

@media screen and (max-width: 767px) {
    .photo-gallery figure:nth-child(3), .photo-gallery figure:nth-child(4), .photo-gallery figure:nth-child(5) {
        width: 100%;
    }
    .photo-gallery figure:nth-child(3) img, .photo-gallery figure:nth-child(4) img, .photo-gallery figure:nth-child(5) img {
        width: 133.33333vw;
        height: 141.33333vw;
    }
}

.photo-gallery figure:nth-child(10), .photo-gallery figure:nth-child(11), .photo-gallery figure:nth-child(12), .photo-gallery figure:nth-child(13) {
    width: 25%;
}

.photo-gallery figure:nth-child(10):before, .photo-gallery figure:nth-child(11):before, .photo-gallery figure:nth-child(12):before, .photo-gallery figure:nth-child(13):before {
    content: '';
    display: block;
    padding-top: 150%;
}

@media screen and (min-width: 768px) {
    .photo-gallery figure:nth-child(10) img, .photo-gallery figure:nth-child(11) img, .photo-gallery figure:nth-child(12) img, .photo-gallery figure:nth-child(13) img {
        width: 400px;
        height: 600px;
    }
}

@media screen and (max-width: 767px) {
    .photo-gallery figure:nth-child(10) img, .photo-gallery figure:nth-child(11) img, .photo-gallery figure:nth-child(12) img, .photo-gallery figure:nth-child(13) img {
        width: 182px;
        height: 273px;
    }
}

@media screen and (max-width: 767px) {
    .photo-gallery figure:nth-child(10), .photo-gallery figure:nth-child(11), .photo-gallery figure:nth-child(12), .photo-gallery figure:nth-child(13) {
        width: 50%;
    }
    .photo-gallery figure:nth-child(10) img, .photo-gallery figure:nth-child(11) img, .photo-gallery figure:nth-child(12) img, .photo-gallery figure:nth-child(13) img {
        width: 66.66667vw;
        height: 70.66667vw;
    }
}

.photo-gallery figcaption {
    display: none;
}

.photo-gallery figure img.outset {
    -o-object-fit: cover;
       object-fit: cover;
    font-family: 'object-fit: cover;';
}

.photo-gallery figure img.inset {
    -o-object-fit: contain;
       object-fit: contain;
    font-family: 'object-fit: contain;';
}

.p-plan__imageArea {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -ms-flex-pack: distribute;
        justify-content: space-around;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
}

@media screen and (max-width: 767px) {
    .p-plan__visual {
        width: 100%;
    }
}

@media screen and (min-width: 768px) {
    .p-plan__visual {
        width: 100%;
    }
}

@media screen and (min-width: 768px) {
    .p-plan__image {
        width: 100%;
        height: 100%;
    }
}

.gaiyouArea__warp {
    background: #f8f1e3;
}

@media screen and (max-width: 767px) {
    .gaiyouArea__warp {
        margin-top: 8vw;
    }
}

@media screen and (min-width: 768px) {
    .gaiyouArea__warp {
        margin-top: 30px;
    }
}

.gaiyouArea {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -ms-flex-pack: distribute;
        justify-content: space-around;
}

@media screen and (max-width: 767px) {
    .gaiyouArea {
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
        -webkit-box-pack: justify;
            -ms-flex-pack: justify;
                justify-content: space-between;
    }
}

.gaiyouArea__icon {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    text-align: center;
    background: #b19d8b;
    color: #fff;
    width: 30%;
    height: 150px;
}

@media screen and (max-width: 767px) {
    .gaiyouArea__icon {
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
        width: 48%;
    }
}

@media screen and (max-width: 767px) {
    .gaiyouArea__icon {
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
        width: 100%;
        height: auto;
        margin-bottom: 15px;
    }
}

.gaiyouArea__icon .title {
    display: block;
    width: 90%;
    text-align: center;
    padding: 20px 0;
    border-bottom: 2px solid #fff;
}

@media screen and (max-width: 767px) {
    .gaiyouArea__icon .title {
        font-size: 40px;
        font-size: 5.33vw;
        padding: 10px 0;
        margin-bottom: 10px;
    }
}

@media screen and (min-width: 768px) {
    .gaiyouArea__icon .title {
        font-size: 30px;
        font-size: 3rem;
    }
}

.gaiyouArea__icon .bottomArea {
    padding: 0 0 20px;
}

@media screen and (max-width: 767px) {
    .gaiyouArea__icon .bottomArea {
        padding: 0 0 10px;
    }
}

@media screen and (max-width: 767px) {
    .gaiyouArea__icon .big_text {
        font-size: 40px;
        font-size: 5.33vw;
    }
}

@media screen and (min-width: 768px) {
    .gaiyouArea__icon .big_text {
        font-size: 30px;
        font-size: 3rem;
    }
}

@media screen and (max-width: 767px) {
    .gaiyouArea__text {
        margin-top: 2.67vw;
        margin-bottom: 2.67vw;
    }
}

@media screen and (max-width: 767px) {
    .gaiyouArea__text {
        font-size: 34px;
        font-size: 4.53vw;
        line-height: 1.3em;
    }
}

@media screen and (min-width: 768px) {
    .gaiyouArea__text {
        font-size: 24px;
        font-size: 2.4rem;
        line-height: 1.3em;
    }
}

.gaiyouArea__text span {
    border-left: 5px solid #5d330d;
    display: block;
    width: 100%;
    margin-bottom: 5px;
    padding-left: 10px;
}

/* qualityArea
-------------------------------------------------------------------------- */
.specArea__wrap {
    margin-top: 30px;
    margin-bottom: 90px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
}

@media screen and (min-width: 768px) {
    .specArea__inner {
        width: 49.5%;
        display: block;
    }
}

.specArea__item {
    margin-bottom: 1%;
    padding: 30px 15px;
    border: 1px solid #c9c9c9;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
}

@media screen and (min-width: 768px) {
    .specArea__item {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center;
        -webkit-box-pack: justify;
            -ms-flex-pack: justify;
                justify-content: space-between;
        width: 49.5%;
        min-height: 400px;
    }
}

@media screen and (max-width: 767px) {
    .specArea__item {
        width: 100%;
        margin-bottom: 5%;
    }
}

@media screen and (min-width: 768px) {
    .specArea__item .images {
        width: 49.5%;
    }
}

@media screen and (max-width: 767px) {
    .specArea__item .images {
        width: 100%;
        margin-top: 15px;
    }
}

@media screen and (max-width: 767px) {
    .specArea__item .images {
        display: block;
        width: 100%;
        margin-top: 15px;
    }
}

.specArea__item .title {
    line-height: 1.3;
    font-family: 'Josefin Sans', sans-serif;
    font-weight: 400;
}

@media screen and (max-width: 767px) {
    .specArea__item .title {
        padding-bottom: 2.67vw;
        font-size: 25px;
        font-size: 2.5rem;
        margin-top: 10px;
    }
}

@media screen and (min-width: 768px) {
    .specArea__item .title {
        font-size: 26px;
        font-size: 2.6rem;
        padding-bottom: 10px;
    }
}

.specArea__item .text {
    line-height: 1.3em;
}

.specArea__item .point {
    position: relative;
    font-family: 'Josefin Sans', sans-serif;
    font-weight: 400;
}

@media screen and (max-width: 767px) {
    .specArea__item .point {
        margin-bottom: 1.33vw;
        padding-bottom: .67vw;
        font-size: 45px;
        font-size: 6vw;
    }
}

@media screen and (min-width: 768px) {
    .specArea__item .point {
        font-size: 20px;
        font-size: 2rem;
        padding-bottom: 5px;
        margin-bottom: 10px;
    }
}

.specArea__item .point::after {
    position: absolute;
    left: 0;
    bottom: 0;
    display: block;
    content: '';
    background: #8d6f55;
}

@media screen and (max-width: 767px) {
    .specArea__item .point::after {
        width: 26.66667vw;
        height: .53333vw;
    }
}

@media screen and (min-width: 768px) {
    .specArea__item .point::after {
        width: 100px;
        height: 2px;
    }
}

/* p-achitectureMenu
   ----------------------------------------------------------------- */
.p-achitectureMenu {
    position: relative;
}

@media screen and (max-width: 767px) {
    .p-achitectureMenu {
        padding: 20vw 0vw 20vw 0vw;
        background-color: #f8f1e3;
    }
}

@media screen and (min-width: 768px) {
    .p-achitectureMenu {
        padding: 60px 0 60px;
    }
}

@media screen and (min-width: 768px) {
    .p-achitectureMenu::after {
        position: absolute;
        top: 0;
        right: 0;
        display: block;
        content: '';
        width: 50%;
        height: 100%;
        background-color: #f8f1e3;
        z-index: -1;
    }
}

.p-achitectureMenu__title {
    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;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
}

@media screen and (max-width: 767px) {
    .p-achitectureMenu__title {
        margin-bottom: 5.33vw;
    }
}

@media screen and (min-width: 768px) {
    .p-achitectureMenu__title {
        margin-bottom: 20px;
    }
}

.p-achitectureMenu__en {
    position: relative;
    font-weight: 700;
    text-align: center;
}

@media screen and (max-width: 767px) {
    .p-achitectureMenu__en {
        font-size: 70px;
        font-size: 9.33vw;
    }
}

@media screen and (min-width: 768px) {
    .p-achitectureMenu__en {
        font-size: 60px;
        font-size: 6rem;
    }
}

.p-achitectureMenu__jp {
    font-weight: 400;
}

@media screen and (max-width: 767px) {
    .p-achitectureMenu__jp {
        margin-top: 2.67vw;
        font-size: 40px;
        font-size: 5.33vw;
        text-align: center;
        line-height: 1.6;
    }
}

@media screen and (min-width: 768px) {
    .p-achitectureMenu__jp {
        margin-top: 13px;
        font-size: 20px;
        font-size: 2rem;
    }
}

@media screen and (min-width: 768px) {
    .p-achitectureMenu__container {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
    }
}

@media screen and (min-width: 768px) {
    .p-achitectureMenu__container {
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
        -webkit-box-pack: center;
            -ms-flex-pack: center;
                justify-content: center;
    }
}

@media screen and (max-width: 767px) {
    .p-achitectureMenu__col {
        text-align: center;
        margin-top: 10.67vw;
    }
}

@media screen and (min-width: 768px) {
    .p-achitectureMenu__col {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: center;
            -ms-flex-pack: center;
                justify-content: center;
        width: 600px;
    }
}

@media screen and (max-width: 767px) {
    .p-achitectureMenu__col:nth-child(1) {
        margin-top: 0;
    }
}

.p-achitectureMenu__col--btn {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
}

@media screen and (max-width: 767px) {
    .p-achitectureMenu__col--btn {
        text-align: center;
        margin-top: 10.67vw;
        -webkit-box-pack: center;
            -ms-flex-pack: center;
                justify-content: center;
    }
}

@media screen and (min-width: 768px) {
    .p-achitectureMenu__col--btn {
        -webkit-box-pack: end;
            -ms-flex-pack: end;
                justify-content: flex-end;
        width: 600px;
        padding-right: 5vw;
    }
}

@media screen and (max-width: 767px) {
    .p-achitectureMenu__col--btn:nth-child(1) {
        margin-top: 0;
    }
}

.p-achitectureMenu__col--btn .pass {
    width: 100%;
    text-align: right;
    margin-top: 15px;
}

.p-achitectureMenu__col--btn .pass a {
    padding-right: 40px;
    position: relative;
    display: inline-block;
    color: #000;
    text-decoration: none;
}

@media screen and (max-width: 767px) {
    .p-achitectureMenu__col--btn .pass {
        margin-top: 30px;
        text-align: center;
    }
}

@media screen and (max-width: 767px) {
    .p-achitectureMenu__label {
        font-size: 24px;
        font-size: 2.4rem;
        margin-top: 4vw;
        margin-bottom: 4vw;
        line-height: 1.3;
    }
}

@media screen and (min-width: 768px) {
    .p-achitectureMenu__label {
        text-align: center;
        margin-bottom: 24px;
        font-size: 24px;
        font-size: 2.4rem;
    }
}

.p-achitectureMenu__label span {
    font-size: 10px;
    font-size: 1rem;
}

@media screen and (max-width: 767px) {
    .p-achitectureMenu__label span {
        font-size: 20px;
        font-size: 2.67vw;
    }
}

@media screen and (max-width: 767px) {
    .p-achitectureMenu__tel {
        display: inline-block;
    }
}

@media screen and (min-width: 768px) {
    .p-achitectureMenu__text {
        text-align: center;
        margin-top: 10px;
        margin-bottom: 30px;
    }
}

/* ExpointArea
-------------------------------------------------------------------------- */
.ExpointArea__wrap {
    margin-top: 30px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
}

.ExpointArea__item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    margin-bottom: 1%;
    padding: 30px 12px;
    border: 1px solid #c9c9c9;
    background: #fff;
}

@media screen and (min-width: 768px) {
    .ExpointArea__item {
        -webkit-box-pack: justify;
            -ms-flex-pack: justify;
                justify-content: space-between;
        width: 49.5%;
        min-height: 150px;
    }
}

@media screen and (max-width: 767px) {
    .ExpointArea__item {
        width: 100%;
        margin-bottom: 5%;
    }
}

.ExpointArea__item .title {
    line-height: 1.3;
    font-family: 'Josefin Sans', sans-serif;
    font-weight: 400;
}

@media screen and (max-width: 767px) {
    .ExpointArea__item .title {
        padding-bottom: 2.67vw;
        font-size: 25px;
        font-size: 2.5rem;
        margin-top: 10px;
    }
}

@media screen and (min-width: 768px) {
    .ExpointArea__item .title {
        font-size: 30px;
        font-size: 3rem;
        padding-bottom: 10px;
    }
}

.ExpointArea__item .text {
    line-height: 1.5em;
}

.ExpointArea__item .point {
    position: relative;
    font-family: 'Josefin Sans', sans-serif;
    font-weight: 400;
}

@media screen and (max-width: 767px) {
    .ExpointArea__item .point {
        margin-bottom: 1.33vw;
        padding-bottom: .67vw;
        font-size: 45px;
        font-size: 6vw;
    }
}

@media screen and (min-width: 768px) {
    .ExpointArea__item .point {
        font-size: 20px;
        font-size: 2rem;
        padding-bottom: 5px;
        margin-bottom: 10px;
    }
}

.ExpointArea__item .point::after {
    position: absolute;
    left: 0;
    bottom: 0;
    display: block;
    content: '';
    background: #8d6f55;
}

@media screen and (max-width: 767px) {
    .ExpointArea__item .point::after {
        width: 26.66667vw;
        height: .53333vw;
    }
}

@media screen and (min-width: 768px) {
    .ExpointArea__item .point::after {
        width: 100px;
        height: 2px;
    }
}

/* report
----------------------------------------------------------------- */
.report {
    margin-top: 60px;
}

@media screen and (min-width: 768px) {
    .report__list {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
        -ms-flex-pack: distribute;
            justify-content: space-around;
    }
}

@media screen and (max-width: 767px) {
    .report__item {
        margin-bottom: 12vw;
    }
}

@media screen and (min-width: 768px) {
    .report__item {
        max-width: 300px;
    }
}

@media screen and (min-width: 768px) {
    .report__item {
        width: 31.66%;
        margin-bottom: 60px;
    }
    .report__item:nth-child(3n) {
        margin-right: 0;
    }
}

.report__link {
    display: block;
}

.report__image {
    border: solid 1px #999;
    padding: 5px;
}

.report__image img {
    width: 100%;
    height: auto;
}

@media screen and (max-width: 767px) {
    .report__content {
        padding: 0vw 2.67vw 0vw 2.67vw;
        margin-top: 15px;
    }
}

@media screen and (min-width: 768px) {
    .report__content {
        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: 0 5px 0 13px;
        margin-top: 20px;
    }
}

.report__en {
    line-height: 1;
    letter-spacing: .05em;
}

@media screen and (max-width: 767px) {
    .report__en {
        font-size: 50px;
        font-size: 6.67vw;
    }
}

@media screen and (min-width: 768px) {
    .report__en {
        font-size: 28px;
        font-size: 2.8rem;
    }
}

.report__text {
    letter-spacing: normal;
    line-height: 1.6;
}

@media screen and (max-width: 767px) {
    .report__text {
        font-size: 28px;
        font-size: 3.73vw;
    }
}

@media screen and (max-width: 767px) {
    .report__button {
        margin-top: 10.67vw;
    }
}

@media screen and (min-width: 768px) {
    .report__button {
        margin-top: 40px;
    }
}

.report__title {
    margin-bottom: 30px;
}

@media screen and (max-width: 767px) {
    .report__title {
        margin-top: 4.4vw;
        font-size: 33px;
        font-size: 4.4vw;
        line-height: 1.6;
    }
}

@media screen and (min-width: 768px) {
    .report__title {
        margin-top: 30px;
        font-size: 23px;
        font-size: 2.3rem;
        line-height: 1.6;
    }
}

.ricoh-theta-tour-image {
    width: 100% !important;
}

/* tp-banner
-------------------------------------------------------------------------- */
a .tp-banner:hover {
    opacity: .8;
}

.tp-banner {
    position: relative;
    padding-top: 40px;
    padding-bottom: 40px;
}

.tp-banner:after {
    content: '';
    background-color: #f8f1e3;
    position: absolute;
    top: 0;
    right: 0;
    display: block;
    content: '';
    width: 100%;
    height: 100%;
    z-index: -1;
}

@media screen and (max-width: 767px) {
    .tp-banner:after {
        background-image: -webkit-gradient(linear, left top, left bottom, from(#f8f1e3), color-stop(85%, #f8f1e3), color-stop(85%, #fff), to(#fff));
        background-image: linear-gradient(#f8f1e3 0%, #f8f1e3 85%, #fff 85%, #fff 100%);
    }
}

@media screen and (max-width: 767px) {
    .tp-banner:after {
        background-image: -webkit-gradient(linear, left top, left bottom, from(#f8f1e3), color-stop(87%, #f8f1e3), color-stop(87%, #fff), to(#fff));
        background-image: linear-gradient(#f8f1e3 0%, #f8f1e3 87%, #fff 87%, #fff 100%);
    }
}

.tp-banner__bold {
    font-weight: bold;
}

@media screen and (max-width: 767px) {
    .tp-banner {
        margin-top: 80px;
        margin-bottom: 0;
    }
}

@media screen and (max-width: 767px) {
    .tp-banner {
        margin-top: 10vw;
    }
}

@media screen and (min-width: 768px) {
    .tp-banner {
        margin-top: 160px;
        margin-bottom: 80px;
    }
}

.tp-banner__inner {
    position: relative;
}

@media screen and (min-width: 768px) {
    .tp-banner__inner {
        width: 100%;
    }
}

.tp-banner__container {
    position: relative;
    z-index: 2;
}

@media screen and (max-width: 767px) {
    .tp-banner__container {
        padding: 4vw 0vw 8vw 0vw;
    }
}

@media screen and (min-width: 768px) {
    .tp-banner__container {
        width: 100%;
        max-width: 630px;
    }
}

@media screen and (max-width: 767px) {
    .tp-banner__body {
        padding-top: 5.33vw;
    }
}

@media screen and (min-width: 768px) {
    .tp-banner__body {
        padding-top: 20px;
    }
}

.tp-banner__toptitle {
    font-weight: 700;
}

.tp-banner__toptitle__jp {
    position: relative;
}

.tp-banner__toptitle__jp img {
    width: 148px;
    margin-bottom: 5px;
}

@media screen and (max-width: 767px) {
    .tp-banner__toptitle__jp img {
        width: 70%;
        margin: 0 auto 10px;
        display: block;
    }
}

@media screen and (max-width: 767px) {
    .tp-banner__toptitle__jp {
        padding-bottom: 2.67vw;
        font-size: 54px;
        font-size: 7.2vw;
        width: 100%;
        text-align: center;
        display: block;
        line-height: 1.8;
    }
}

@media screen and (min-width: 768px) {
    .tp-banner__toptitle__jp {
        font-size: 40px;
        font-size: 4rem;
        padding-bottom: 10px;
    }
}

.tp-banner__toptitle__jp::after {
    position: absolute;
    left: 0;
    bottom: 0;
    display: block;
    content: '';
    background: #5d330d;
}

@media screen and (max-width: 767px) {
    .tp-banner__toptitle__jp::after {
        width: 100%;
        height: .53333vw;
    }
}

@media screen and (min-width: 768px) {
    .tp-banner__toptitle__jp::after {
        width: 100%;
        height: 2px;
    }
}

@media screen and (max-width: 767px) {
    .tp-banner__title {
        margin-top: 5.33vw;
        font-size: 40px;
        font-size: 5.33vw;
        line-height: 1.6;
    }
}

@media screen and (min-width: 768px) {
    .tp-banner__title {
        margin-top: 30px;
        font-size: 30px;
        font-size: 3rem;
        line-height: 1.6;
    }
}

.tp-banner__flow {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    width: 100%;
    margin-top: 15px;
    margin-bottom: 10px;
}

@media screen and (max-width: 767px) {
    .tp-banner__flow {
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
        -webkit-box-pack: start;
            -ms-flex-pack: start;
                justify-content: start;
    }
}

@media screen and (max-width: 767px) {
    .tp-banner__flowtitle {
        margin-top: 10.67vw;
        font-size: 36px;
        font-size: 4.8vw;
        line-height: 1.4;
    }
}

@media screen and (min-width: 768px) {
    .tp-banner__flowtitle {
        margin-top: 20px;
        font-size: 20px;
        font-size: 2rem;
    }
}

.tp-banner__flowitem {
    background: #9e856e;
    color: #fff;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    height: 50px;
    padding: 0 20px;
    font-size: 20px;
    font-weight: bold;
}

@media screen and (max-width: 767px) {
    .tp-banner__flowitem {
        width: 27%;
        margin: 10px 5px;
    }
}

@media screen and (max-width: 767px) {
    .tp-banner__flowitem {
        width: 100%;
        height: 60px;
        text-align: center;
    }
}

.tp-banner__flowarrow {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    width: 30px;
}

.tp-banner__flowarrow img {
    width: 100%;
}

@media screen and (max-width: 767px) {
    .tp-banner__flowarrow {
        width: 100%;
        padding: 0;
        margin: 15px 0;
    }
    .tp-banner__flowarrow img {
        width: 30px;
        -webkit-transform: rotate(90deg);
                transform: rotate(90deg);
    }
}

.tp-banner__text-big {
    font-weight: bold;
    line-height: 1;
    margin-bottom: 15px;
    color: #5d330d;
}

@media screen and (max-width: 767px) {
    .tp-banner__text-big {
        margin-bottom: 4vw;
        font-size: 34px;
        font-size: 4.53vw;
    }
}

@media screen and (min-width: 768px) {
    .tp-banner__text-big {
        font-size: 28px;
        font-size: 2.8rem;
    }
}

.p-mdlbtn__text-big2 {
    font-weight: bold;
    line-height: 1;
    margin-bottom: 15px;
}

@media screen and (max-width: 767px) {
    .p-mdlbtn__text-big2 {
        margin-bottom: 4vw;
        font-size: 32px;
        font-size: 4vw;
        line-height: 1.6;
        margin-top: 20px;
    }
}

@media screen and (min-width: 768px) {
    .p-mdlbtn__text-big2 {
        font-size: 21px;
        font-size: 2.1rem;
        line-height: 1.3;
        margin-top: 15px;
    }
}

.tp-banner__author {
    text-align: left;
    font-weight: 700;
}

@media screen and (min-width: 768px) {
    .tp-banner__author {
        font-size: 20px;
        font-size: 2rem;
    }
}

.tp-banner__visual {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    position: relative;
}

.tp-banner__visual::after {
    background: rgba(93, 51, 13, .6);
    position: absolute;
    right: -10px;
    bottom: -10px;
    display: block;
    content: '';
}

@media screen and (max-width: 767px) {
    .tp-banner__visual::after {
        width: 100%;
        height: 100%;
    }
}

@media screen and (min-width: 768px) {
    .tp-banner__visual::after {
        width: 100%;
        height: 100%;
    }
}

@media screen and (max-width: 767px) {
    .tp-banner__visual {
        height: 58.66667vw;
        width: 100%;
        margin: 0 auto;
    }
    .tp-banner__visual img {
        height: 58.66667vw;
        width: 100%;
        z-index: 20;
    }
}

@media screen and (min-width: 768px) {
    .tp-banner__visual {
        width: 85%;
        height: 52vw;
    }
    .tp-banner__visual img {
        width: 100%;
        height: 57vw;
        z-index: 20;
    }
}

@media screen and (min-width: 768px) {
    .tp-banner__visual {
        position: absolute;
        top: -75px;
        right: 0;
        width: 520px;
        height: 330px;
    }
    .tp-banner__visual img {
        width: 580px;
        height: 380px;
        z-index: 20;
    }
}

@media screen and (min-width: 768px) {
    .tp-banner__image {
        width: 100%;
        height: 100%;
    }
}

.tp-banner__list li {
    position: relative;
    padding-left: 2.27vw;
    margin-bottom: 10px;
}

@media screen and (max-width: 767px) {
    .tp-banner__list li {
        padding-left: 4vw;
        margin-bottom: 30px;
    }
}

@media screen and (max-width: 767px) {
    .tp-banner__list li {
        padding-left: 8vw;
        margin-bottom: 20px;
    }
}

.tp-banner__list li:before {
    position: absolute;
    top: 15px;
    bottom: 0;
    left: 0;
    margin: auto;
    content: 'â– ';
    line-height: 1;
    display: inline-block;
    font-size: 20px;
    font-size: 2rem;
    color: #5d330d;
}

@media screen and (max-width: 767px) {
    .tp-banner__list li:before {
        top: 18px;
    }
}

@media screen and (max-width: 767px) {
    .tp-banner__list li:before {
        top: 8px;
    }
}

@media screen and (max-width: 767px) {
    .tp-banner__list {
        font-size: 40px;
        font-size: 5.33vw;
        line-height: 1.6;
    }
}

@media screen and (min-width: 768px) {
    .tp-banner__list {
        font-size: 30px;
        font-size: 3rem;
        line-height: 1.6;
    }
}

/* title
-------------------------------------------------------------------------- */
.reserve-title {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    font-weight: 400;
    text-align: center;
}

.reserve-title--center {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    text-align: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
}

.reserve-title--center .c-title__en::after {
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
}

.reserve-title__en {
    position: relative;
    font-family: 'Josefin Sans', sans-serif;
    font-weight: 400;
}

@media screen and (max-width: 767px) {
    .reserve-title__en {
        padding-bottom: 1.33vw;
        font-size: 65px;
        font-size: 8.67vw;
    }
}

@media screen and (min-width: 768px) {
    .reserve-title__en {
        font-size: 55px;
        font-size: 5.5rem;
        padding-bottom: 10px;
    }
}

@media screen and (max-width: 767px) {
    .reserve-title__jp {
        margin-top: 2.67vw;
        font-size: 36px;
        font-size: 4.8vw;
        line-height: 1.4;
    }
}

@media screen and (min-width: 768px) {
    .reserve-title__jp {
        font-size: 20px;
        font-size: 2rem;
    }
}

a .p-mdlbtn:hover {
    opacity: .8;
}

.p-mdlbtn {
    position: relative;
    overflow: hidden;
    color: #fff;
    padding: 50px 0;
}

@media screen and (max-width: 767px) {
    .p-mdlbtn {
        padding: 50px 10px;
    }
}

.p-mdlbtn:after {
    content: '';
    background: rgba(58, 22, 0, .6);
    position: absolute;
    top: 0;
    right: 0;
    display: block;
    content: '';
    width: 100%;
    height: 100%;
    z-index: -1;
}

.p-mdlbtn__body {
    text-align: center;
}

@media screen and (max-width: 767px) {
    .p-mdlbtn__body {
        padding-top: 5.33vw;
    }
}

@media screen and (min-width: 768px) {
    .p-mdlbtn__body {
        padding-top: 20px;
    }
}

.p-mdlbtn__toptitle {
    font-weight: 700;
    text-align: center;
}

.p-mdlbtn__toptitle__jp {
    position: relative;
}

.p-mdlbtn__toptitle__jp img {
    width: 148px;
    margin-bottom: 5px;
}

@media screen and (max-width: 767px) {
    .p-mdlbtn__toptitle__jp img {
        width: 70%;
        margin: 0 auto 10px;
        display: block;
    }
}

@media screen and (max-width: 767px) {
    .p-mdlbtn__toptitle__jp {
        padding-bottom: 2.67vw;
        font-size: 54px;
        font-size: 7.2vw;
        width: 100%;
        text-align: center;
        display: block;
        line-height: 1.8;
    }
}

@media screen and (min-width: 768px) {
    .p-mdlbtn__toptitle__jp {
        font-size: 40px;
        font-size: 4rem;
        padding-bottom: 10px;
    }
}

.p-mdlbtn__toptitle__jp::after {
    position: absolute;
    left: 0;
    bottom: 0;
    display: block;
    content: '';
    background: #59afdf;
}

@media screen and (max-width: 767px) {
    .p-mdlbtn__toptitle__jp::after {
        width: 100%;
        height: .53333vw;
    }
}

@media screen and (min-width: 768px) {
    .p-mdlbtn__toptitle__jp::after {
        width: 100%;
        height: 2px;
    }
}

.p-mdlbtn__title {
    text-align: center;
}

@media screen and (max-width: 767px) {
    .p-mdlbtn__title {
        margin-top: 5.33vw;
        font-size: 40px;
        font-size: 5.33vw;
        line-height: 1.6;
    }
}

@media screen and (min-width: 768px) {
    .p-mdlbtn__title {
        margin-top: 30px;
        font-size: 30px;
        font-size: 3rem;
        line-height: 1.6;
    }
}

.p-mdlbtn__text-big {
    font-weight: bold;
    line-height: 1;
    margin-bottom: 15px;
}

@media screen and (max-width: 767px) {
    .p-mdlbtn__text-big {
        margin-bottom: 4vw;
        font-size: 34px;
        font-size: 4.53vw;
        line-height: 1.6;
    }
}

@media screen and (min-width: 768px) {
    .p-mdlbtn__text-big {
        font-size: 28px;
        font-size: 2.8rem;
    }
}

.p-mdlbtn__author {
    font-weight: 700;
}

@media screen and (min-width: 768px) {
    .p-mdlbtn__author {
        font-size: 20px;
        font-size: 2rem;
    }
}

.p-mdlbtn-image {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    z-index: -10;
}

@media screen and (min-width: 768px) {
    .p-mdlbtn-image {
        -webkit-box-pack: center;
            -ms-flex-pack: center;
                justify-content: center;
    }
}

@media screen and (max-width: 767px) {
    .p-mdlbtn-image__item {
        width: calc(100% / 2);
    }
}

@media screen and (min-width: 768px) {
    .p-mdlbtn-image__item {
        width: calc(100% / 4);
    }
}

.p-mdlbtn-image__image {
    display: block;
    width: 100%;
    height: 100%;
}

.p-mdlbtn-image__image img {
    height: 100%;
    width: 100%;
    display: block;
}

.build_banner_box{ padding:80px 0 0;}
.build_banner_box .build_banner_box_inner{width:100%; max-width:1200px; margin: 0 auto; box-sizing:border-box;}
.build_banner_box .build_banner_box_inner a{}
.build_banner_box .build_banner_box_inner a img{width:100%; height: auto; line-height: 0; vertical-align: bottom;}
@media screen and (max-width: 767px) {
.build_banner_box{ padding:40px 5.33vw;}
}

.sp_on{display:none;}
@media screen and (max-width:767px) {
	.sp_on{display:inherit;}
	.sp_off{display:none;}
}
