/* ##### フォント ##### */

@import url("https://fonts.googleapis.com/css?family=Noto+Serif+JP:400,700&display=swap");

.noto-serif {
    font-family: "Noto Serif JP", serif;
}

@font-face {
    font-family: "optitimes-romanregular";
    src: url(/import/tenant_1/133.167.79.132/html/font/optitimes-roman.woff) format("woff"),
        url(/import/tenant_1/133.167.79.132/html/font/OPTITimes-Roman.otf) format("otf"),
        url(/import/tenant_1/133.167.79.132/html/font/optitimes-roman.ttf) format("truetype");
    font-weight: normal;
    font-style: normal;
}

.optitimes {
    font-family: "optitimes-romanregular", serif;
}

.ofimg {
    width: 100%;
    overflow: hidden;
}

.of {
    position: relative;
}

.of:before {
    content: "";
    display: block;
}

.ofimg img {
    width: 100%;
    height: 100% !important;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center center;
    object-position: center center;
    font-family: "object-fit: cover; object-position: center center;";
}

.of img {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
}

.of100:before {
    padding-top: 100%;
}

/* ##### フォント end ##### */

/* ##### リセット上書き ##### */
#wrapper {
    min-width: 320px;
}

.inner {
    width: 96%;
}

body,
div,
dl,
dt,
dd,
ul,
ol,
li,
h1,
h2,
h3,
h4,
h5,
h6,
form,
input,
button,
p {
    font-size: 14px;
    color: #333;
}

body {
    background: #f0ece4;
}

@media (max-width: 1024px) {
    .inner {
        width: 93%;
        max-width: 768px;
    }
}

/* ##### リセット上書き end ##### */

/* ##### 幅に関するcss ##### */
.h2.inner {
    padding-left: 60px;
}

@media (max-width: 599px) {
    .h2.inner {
        padding-left: 30px;
    }
}

/* ##### 幅に関するcss end ##### */

/* ##### スライダー関係 ##### */
.slick-prev:before {
    content: "" !important;
}

.slick-next:before {
    content: "" !important;
}

.slider {
    overflow: hidden;
}

.slider img {
    width: 100%;
}

.top-main-img {
    width: 100%;
    overflow: hidden;
    position: relative;
}

.top-main-img:before {
    content: "";
    display: block;
    padding-top: 100vh;
}

.top-main-img .pic {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
}

@media (max-width: 1024px) {
    .top-main-img:before {
        padding-top: 75%;
    }
}

/* ##### スライダー関係 end ##### */

/* ##### 見出し ##### */
.hd {
    height: auto;
    display: inline-block;
    margin-top: 100px;
    font-family: "optitimes-romanregular", serif;
    font-weight: normal;
    font-size: 18px;
    letter-spacing: 2px;
    -webkit-transform: rotate(-90deg);
    transform: translate(0%, 0%) rotate(-90deg);
    -webkit-transform-origin: left;
    transform-origin: left;
    position: relative;
    z-index: 2;
}

.hd:after {
    content: "";
    width: 45%;
    height: 3px;
    display: block;
    background: #333;
    position: absolute;
    top: 30px;
    left: 50%;
}

.hd_w {
    color: #fff;
}

.hd_w:after {
    background: #fff;
}

.head04 {
    font-size: 16px;
    position: relative;
}

.head04:after {
    content: "";
    width: 33px;
    height: 2px;
    background: #333;
    position: absolute;
    bottom: 0;
    left: 0;
}

.dotte {
    max-width: 1000px;
    margin: 0 auto;
    border-bottom: 2px #b0aeaa dotted;
}

.w37 {
    width: 37%;
}

@media (max-width: 1024px) {
    .dotte {
        width: 93%;
        max-width: none;
    }
}

/* ##### 見出し end ##### */

/* ##### marginとpadding ##### */
.auto {
    margin: auto;
}

.mt30 {
    margin-top: 30px;
}

.mb30 {
    margin-bottom: 30px;
}

.mt50 {
    margin-top: 50px;
}

.mt70 {
    margin-top: 70px;
}

.mt120 {
    margin-top: 120px;
}

.mt200 {
    margin-top: 200px;
}

.mb70 {
    margin-bottom: 70px;
}

.mb120 {
    margin-bottom: 120px;
}

.pt30 {
    padding-top: 30px;
}

.pt80 {
    padding-top: 80px;
}

.pb80 {
    padding-bottom: 80px;
}

.mb30 {
    margin-bottom: 30px;
}

@media (max-width: 1024px) {
    /*---------- width ----------*/

    .w37 {
        width: 100%;
    }

    .tab100 {
        width: 100%;
    }

    /*---------- margin & padding ----------*/

    .mt120 {
        margin-top: 60px;
    }

    .mb120 {
        margin-bottom: px;
    }

    .pl80 {
        padding-left: 80px;
    }

    .mt70 {
        margin-top: 20px;
    }
}

@media (max-width: 599px) {
    /*---------- margin & padding ----------*/

    .mt120 {
        margin-top: 60px;
    }

    .mb120 {
        margin-bottom: 60px;
    }

    .pl80 {
        padding-left: 80px;
    }
}

/* ##### marginとpadding end ##### */

/* ##### flex ##### */
.flex-end {
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
}

/* ##### flex end ##### */

/* ##### テキスト関係 ##### */
.tac {
    text-align: center;
}

.tar {
    text-align: right;
}

/* ##### テキスト関係 end ##### */

/* ##### アコーディオン関係 ##### */
.accordion8 {
    text-align: center;
}

.accordion8 {
    max-width: 1000px;
    height: 300px;
    overflow: hidden;
    margin: 0 auto;
}

.accordion8 li p {
    float: left;
    cursor: pointer;
}

.accordion8 p.ac1,
.accordion8 p.ac2,
.accordion8 p.ac3 {
    width: 20%;
    height: 300px;
}

.accordion8 li .inner {
    width: 400px;
    height: 300px;
    display: none;
    float: left;
    margin: 0;
}

.accordion8 p {
    cursor: pointer;
}

.accordion8 p.ac1 {
    background: #f50057;
}

.accordion8 p.ac2 {
    background: #ffea00;
}

.accordion8 p.ac3 {
    background: #64dd17;
}

.accordion8 li .inner {
    width: 40%;
    height: 300px;
    display: none;
    float: left;
    margin: 0;
}

.accordion8 .inner>li {
    width: calc(100% / 3);
    height: 300px;
    float: left;
}

.accordion8 .inner li.content1-1 {
    background: #f48fb1;
}

.accordion8 .inner li.content1-2 {
    background: #f8bbd0;
}

.accordion8 .inner li.content1-3 {
    background: #fce4ec;
}

.accordion8 .inner li.content2-1 {
    background: #fff59d;
}

.accordion8 .inner li.content2-2 {
    background: #fff9c4;
}

.accordion8 .inner li.content2-3 {
    background: #fffde7;
}

.accordion8 .inner li.content3-1 {
    background: #c5e1a5;
}

.accordion8 .inner li.content3-2 {
    background: #dcedc8;
}

.accordion8 .inner li.content3-3 {
    background: #f1f8e9;
}

/* ##### アコーディオン関係 end ##### */

/* ##### nav ##### */
.hamburger {
    display: none;
}

header {
    width: 300px;
    height: 100vh;
    background-image: url(/upload/tenant_1/701a28d01cd7affd28ed3353b67671fa);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center center;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 10;
}

header[data-element-id] {
    position: relative;
}

header.change {
    position: fixed;
    left: -100vw;
}


header.change h1 {
    height: auto;
    visibility: visible;
    padding: 1em;
    opacity: 1;
    right: -100vw;
    z-index: 2;
}

header h1 {
    height: 0;
    visibility: hidden;
    opacity: 0;
    cursor: pointer;
    -webkit-transition: 0.3s linear;
    transition: 0.3s linear;
    position: relative;
    z-index: -1;
}

[data-element-id] header h1 {
    height: auto !important;
    visibility: visible !important;
    opacity: 1 !important;
    position: static !important;
}

header h1 a {
    pointer-events: none;
}

header.change.hover {
    -webkit-transition: 0.3s linear;
    transition: 0.3s linear;
    left: 0;
}

header.change.hover h1 {
    height: 0;
    visibility: hidden;
    padding: 0;
    opacity: 0;
    -webkit-transition: none;
    transition: none;
}

.nav-btn {
    width: 26px;
    height: 26px;
    display: block;
    margin-left: auto;
    padding: 0;
    text-indent: -99999px;
    border: 0;
    background: none;
    background-color: #fff;
    opacity: 0;
    -webkit-transition: opacity 1s cubic-bezier(0.645, 0.045, 0.355, 1) 0.5s;
    transition: opacity 1s cubic-bezier(0.645, 0.045, 0.355, 1) 0.5s;
    position: relative;
    z-index: 110;
}

.nav-btn:hover {
    cursor: pointer;
}

.nav-btn:focus {
    outline: none;
}

.nav-btn:after,
.nav-btn:before {
    content: "";
    width: 14px;
    height: 2px;
    background-color: #333;
    -webkit-transition: -webkit-transform 0.2s cubic-bezier(0.645, 0.045, 0.355, 1);
    transition: -webkit-transform 0.2s cubic-bezier(0.645, 0.045, 0.355, 1);
    transition: transform 0.2s cubic-bezier(0.645, 0.045, 0.355, 1);
    transition: transform 0.2s cubic-bezier(0.645, 0.045, 0.355, 1), -webkit-transform 0.2s cubic-bezier(0.645, 0.045, 0.355, 1);
    position: absolute;
    top: 12px;
    left: 5px;
}

.nav-btn.open:before,
.nav-btn.open:before {
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    top: 12px;
}

.nav-btn.open:after,
.nav-btn.open:after {
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    top: 12px;
}

nav {
    width: 100%;
    height: 100vh;
    padding: 30px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    background-image: url(/upload/tenant_1/701a28d01cd7affd28ed3353b67671fa);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center center;
}

.nav-list {
    margin-top: 30px;
}

.nav-list a {
    -webkit-transition: 0.3s linear;
    transition: 0.3s linear;
}

.nav-list li {
    margin: 10px 0 15px 0;
    padding: 5px 0;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    border-bottom: 1px solid transparent;
}

.nav-list li.nav-shop {
    margin: 10px 0 15px 0;
    padding: 10px 0;
    text-align: center;
    border: 1px solid #fff;
}

.nav-list li a {
    font-family: "游ゴシック", YuGothic, Hiragino Sans, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic Pro", Hiragino Kaku Gothic ProN, "メイリオ", Meiryo, "ＭＳ Ｐゴシック", sans-serif;
    font-size: 16px;
    color: #fff;
    letter-spacing: 1px;
}

.nav-list li.nav-shop a {
    display: block;
    position: relative;
}

.nav-list li.nav-shop a:after {
    content: "";
    width: 20%;
    height: 5px;
    margin-left: 20px;
    border-bottom: 1px solid #fff;
    border-right: 2px solid #fff;
    -webkit-transform: skew(70deg);
    -webkit-transform: rskew(50deg);
    -webkit-transform: skew(50deg);
    transform: skew(80deg);
    transform: skew(50deg);
    position: absolute;
    top: auto;
    bottom: 10px;
    /* left: 0; */
    right: 15px;
}

.sp-only {
    display: none;
}

.sp-only[data-element-id] {
    display: block;
}

.inner-nav {
    width: 100%;
    height: 100vh;
    padding: 30px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    background-color: #222;
    background-color: rgba(0, 0, 0, 0.8);
    opacity: 0;
    -webkit-transition: 0.4s linear;
    transition: 0.4s linear;
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
}

.nav-list .slide .inner-nav {
    width: 150%;
    padding-top: 195px;
    opacity: 1;
    left: 100%;
}

.nav-list .slide {
    border-bottom: 1px solid #fff;
}

.inner-nav li a {
    color: #fff;
}

.inner-nav li a:hover {
    opacity: 1;
}

.inner-nav h2 {
    font-family: "游ゴシック", YuGothic, Hiragino Sans, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic Pro", Hiragino Kaku Gothic ProN, "メイリオ", Meiryo, "ＭＳ Ｐゴシック", sans-serif;
    font-size: 18px;
    color: #fff;
}

.tab-box {
    width: 100%;
    height: 100vh;
    background-color: rgba(0, 0, 0, 0.6);
    opacity: 0;
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
}

.header-fix-bnr {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    position: fixed;
    top: 0;
    right: 0;
    z-index: 2;
}

.header-fix-bnr li {
    min-width: 150px;
}

.header-fix-bnr li a {
    display: block;
    padding: 3px 5px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    color: #fff;
    text-align: center;
}

.header-fix-bnr li:nth-of-type(1) a {
    border: 1px solid #4e7e66;
    background-color: #4e7e66;
}

.header-fix-bnr li:nth-of-type(2) a {
    border: 1px solid #7e624e;
    background-color: #7e624e;
}

.header-fix-bnr li a:hover {
    background-color: #fff;
    opacity: 1;
}

.header-fix-bnr li:nth-of-type(1) a:hover {
    color: #4e7e66;
}

.header-fix-bnr li:nth-of-type(2) a:hover {
    color: #7e624e;
}

.inner-nav-list {
    padding-left: 15px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

.inner-nav-list li {
    margin: 5px 0;
}

.nav-photo {
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.8);
    -webkit-transition: 0.6s;
    transition: 0.6s;
    position: absolute;
    top: 100%;
    left: 100%;
}

.nav-photo.slidein {
    top: 0%;
}

.nav-photo img {
    width: 100% !important;
    height: 100% !important;
    -o-object-fit: cover;
    object-fit: cover;
    font-family: "object-fit: cover;";
}

@media (max-width: 1024px) {
    .logo {
        width: 40%;
        padding: 0 0 0 30px;
    }

    .logo a {
        display: block;
    }

    header h1 {
        width: 25%;
        height: auto;
        visibility: visible;
        opacity: 1;
        position: fixed;
        top: 5px;
        left: 5px;
        z-index: 10;
    }

    header h1 a {
        pointer-events: all;
    }

    /* hamburger */
    .hamburger {
        width: 40px;
        height: 35px;
        display: block;
        padding: 6px;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        background: url(/import/tenant_1/133.167.79.132/html/images/pattern/gallery.jpg) repeat;
        -webkit-transition: 0.3s linear;
        transition: 0.3s linear;
        position: fixed;
        top: 0;
        right: 0;
        z-index: 12;
    }

    .hamburger a,
    .hamburger a:hover,
    .hamburger a:focus {
        opacity: 1;
    }

    .menu-trigger,
    .menu-trigger span {
        display: inline-block;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        -webkit-transition: all 0.4s;
        transition: all 0.4s;
    }

    .menu-trigger {
        width: 100%;
        height: 100%;
        position: relative;
    }

    .menu-trigger span {
        width: 100%;
        height: 2px;
        border-radius: 3px;
        background-color: #fff;
        position: absolute;
        right: 0;
    }

    .menu-trigger span:nth-of-type(1) {
        top: 0;
    }

    .menu-trigger span:nth-of-type(2) {
        top: 10px;
    }

    .menu-trigger span:nth-of-type(3) {
        bottom: 0;
    }

    .active .menu-trigger span:nth-of-type(1),
    .active .menu-trigger span:nth-of-type(3) {
        width: 16px;
    }

    .active .menu-trigger span:nth-of-type(1) {
        -webkit-transform: translate(2px, 5px) rotate(45deg);
        transform: translate(2px, 5px) rotate(45deg);
    }

    .active .menu-trigger span:nth-of-type(3) {
        -webkit-transform: translate(2px, -5px) rotate(-45deg);
        transform: translate(2px, -5px) rotate(-45deg);
    }

    /* hamburger end */
    header {
        width: auto;
        height: auto;
        background: none;
        -webkit-transition: none;
        transition: none;
        position: static !important;
        z-index: initial;
    }

    nav {
        width: 300px;
        overflow-x: hidden;
        overflow-y: auto;
        -webkit-overflow-scrolling: touch;
        padding: 0;
        padding-bottom: 80px;
        -webkit-transition: 0.4s;
        transition: 0.4s;
        position: fixed;
        right: -300px;
        z-index: 10;
    }

    .active nav {
        right: 0;
    }

    .nav-list li {
        width: 100%;
        padding: 5px 30px;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
    }

    .nav-list li.nav-shop {
        width: 90%;
        margin: 30px auto 15px auto;
    }

    .nav-list {
        margin-top: 20px;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
    }

    .inner-nav h2 {
        padding-left: 50px;
    }

    .inner-nav {
        height: 100vh;
        overflow-y: scroll;
        -webkit-overflow-scrolling: touch;
        padding: 0;
        -webkit-transition: 0.4s linear;
        transition: 0.4s linear;
        left: auto;
        right: -100%;
    }

    .inner-nav-list {
        padding-left: 40px;
    }

    .nav-list .slide .inner-nav {
        width: 100%;
        -webkit-overflow-scrolling: touch;
        padding-top: 0;
        padding-bottom: 100px;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        background-color: #000;
        opacity: 1;
        left: auto;
        right: 0;
        z-index: 11;
    }

    .nav-list .sp-only {
        display: block;
        margin-bottom: 30px;
        padding-top: 30px;
        padding-right: 30px;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        border-bottom: 1px solid #fff;
    }

    .nav-list .sp-only a {
        font-size: 22px;
    }

    .nav-btn {
        margin-top: 10px;
        margin-left: 10px;
        margin-right: 25px;
    }

    .header-fix-bnr {
        right: 50px;
    }

    .nav-photo {
        display: none;
    }
}

@media (max-width: 599px) {
    .header-fix-bnr {
        width: calc(100% - 90.91px);
        height: 30px;
        top: initial;
        bottom: 0;
        left: 0;
        z-index: 9;
    }

    .header-fix-bnr li {
        width: 50%;
        min-width: 50%;
    }

    .header-fix-bnr li a {
        height: 100%;
        padding: 0;
        line-height: 200%;
    }
}

/* ##### nav end ##### */

/* ##### footer ##### */
footer {
    padding-top: 60px;
    border-top: 1px solid #cecbc5;
}

.ftinner {
    width: 92%;
    max-width: 1000px;
    margin: 0px auto 30px;
}

.ftnav {
    width: 40%;
}

.navlist {
    width: 32%;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
}

.navlist li {
    margin-bottom: 15px;
}

.fbtnarea {
    width: 25%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    align-items: center;
    -ms-flex-align: center;
}

.fbtn {
    width: auto;
    min-width: 130px;
    display: inline-block;
    margin-bottom: 10px;
    padding: 0 5px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    color: #fff;
    text-align: center;
    background: #4e7e66;
}

.fbtns {
    background: #7e624e;
}

.copy {
    width: 100%;
    max-width: initial;
    height: 40px;
    padding: 3px 30px;
    color: #fff;
    background: #333;
}

.flogo {
    display: block;
}

.totop {
    height: 40px;
    display: block;
    margin: auto;
    padding: 5px 50px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    color: #fff;
    line-height: 200%;
    background: #333;
    position: fixed;
    bottom: 0;
    right: 0;
    z-index: 9;
}

.totop:before,
.totop:after {
    content: "";
    width: 32%;
    height: 3px;
    display: block;
    background: #333;
    position: absolute;
    top: 14px;
    left: 0;
}

.totop:before {
    width: 1px;
    height: 15px;
    background: #fff;
    left: 15px;
    z-index: 1;
}

.totop:after {
    width: 10px;
    height: 10px;
    border-top: 1px solid #fff;
    border-right: 1px solid #fff;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    left: 10px;
}

@media (max-width: 1024px) {
    .flogo {
        width: 100%;
        margin: auto;
        margin-bottom: 30px;
        text-align: center;
    }

    .ftnav.flex {
        width: 100%;
    }

    .fbtnarea {
        width: 100%;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: row;
        flex-direction: row;
    }

    .fbtn {
        width: 48%;
    }
}

@media (max-width: 599px) {
    .copy.flexb {
        width: 100%;
        max-width: none;
        height: auto;
        padding-bottom: 35px;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
    }

    .navlist {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -ms-flex-direction: row;
        flex-direction: row;
    }

    .fbtnarea {
        width: 100%;
    }

    .fbtn {
        width: 100%;
    }

    .totop {
        height: 30px;
        padding: 5px 20px 5px 30px;
        font-size: 10px;
        line-height: 200%;
    }

    .totop:before,
    .totop:after {
        top: 10px;
    }

    .totop:before {
        height: 12px;
    }

    .totop:after {
        width: 8px;
        height: 8px;
        left: 11px;
    }

    .fbtnarea {
        display: none;
    }
}

/* ##### footer end ##### */

/* ##### パターン ##### */
.pa01 {
    background: url(/import/tenant_1/133.167.79.132/html/images/pattern/concept.jpg) repeat;
}

.pa02 {
    background: url(/import/tenant_1/133.167.79.132/html/images/pattern/texture.jpg) repeat;
}

.pa03 {
    background: url(/import/tenant_1/133.167.79.132/html/images/pattern/staff.jpg) repeat;
    background-size: 8%;
}

.pa04 {
    background: url(/import/tenant_1/133.167.79.132/html/images/pattern/brick.jpg) repeat;
    background-size: 8%;
}

.pa05 {
    background: url(/import/tenant_1/133.167.79.132/html/images/pattern/gallery.jpg) repeat;
    background-size: 8%;
}

/* ##### パターン end ##### */

/* ##### 下層ページ共通 ##### */
.titlebox {
    width: 100%;
    display: block;
    overflow: hidden;
    position: relative;
}

.titlebox:after {
    content: "";
    display: block;
    padding-top: 30%;
}

.titlebox02:after {
  padding-top: 50%;
}

.inner-titlebox {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
}

.titlebox img {
    width: 100%;
    height: auto;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: 50% 50%;
    object-position: 50% 50%;
    font-family: "object-fit: cover; object-position: 50% 50%;";
}

.pagename {
    width: 50%;
    overflow: hidden;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    font-family: "optitimes-romanregular", "Noto Serif JP", serif;
    font-size: 35px;
    color: #fff;
    letter-spacing: 3px;
    position: absolute;
    top: 50%;
    left: 0;
    z-index: 2;
}

.pagename span {
    width: 100%;
    display: block;
    padding: 5px 30px 5px 5px;
    padding-left: calc(100% - 500px);
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    position: relative;
}

.pagename span:after {
    content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
}

.pagename span:after {
    background: url(/import/tenant_1/133.167.79.132/html/images/pattern/gallery.jpg) repeat;
    -webkit-animation: bar-animation 1 2s;
    animation: bar-animation 1 2s;
}

@-webkit-keyframes bar-animation {
    0% {
        width: 0px;
    }

    100% {
        width: 100%;
    }
}

@keyframes bar-animation {
    0% {
        width: 0px;
    }

    100% {
        width: 100%;
    }
}

@media (max-width: 1024px) {
    .titlebox:after {
        padding-top: 50%;
    }

    .titlebox img {
        width: auto;
        /*height: 100% !important;*/
    }

    .pagename {
        max-width: 320px;
        padding-left: 0;
    }

    .pagename span {
        width: 320px;
        padding-left: 30px;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        font-size: 24px;
    }

    .pagename span:after {
        left: 0;
    }
}

@media (max-width: 599px) {
    /*.titlebox:after {
        padding-top: 80%;
    }*/

    .pagename {
        width: 100%;
        max-width: 80%;
    }

    .pagename span {
        width: 80%;
        font-size: 18px;
        line-height: 20px;
    }
}

/* ##### 下層ページ共通 end ##### */

/* ##### パンくずリスト ##### */
.breadcrumb.inner {
    padding: 10px 0;
}

.breadcrumb li {
    margin-left: 35px;
    position: relative;
}

.breadcrumb li:first-of-type {
    margin-left: 0;
}

.breadcrumb li:after {
    content: "";
    width: 15px;
    height: 1px;
    display: inline-block;
    margin: 0 10px;
    background: #333;
    position: absolute;
    top: 50%;
    left: 100%;
    right: 0;
}

.breadcrumb li:last-of-type::after {
    content: none;
}

/* ##### パンくずリスト end ##### */

/* ##### トップページ ##### */
.t_con {
    position: relative;
}

.t_con ul.inner {
    padding: 0;
    position: relative;
}

.t_con ul:after {
    content: "";
    width: 100vw;
    height: 100%;
    display: block;
    margin-right: -999rem;
    padding-right: 999rem;
    background: url(/import/tenant_1/133.167.79.132/html/images/pattern/concept.jpg) repeat;
    position: absolute;
    top: 0;
    left: 100%;
}

.t_con .hd {
    position: absolute;
    top: 0px;
    left: 5%;
}

.slider02 li .itemend {
    position: relative;
}

.t_con_txt {
    margin: auto;
    font-weight: bold;
    font-size: 20px;
    -webkit-transform: translate(0, -50%);
    transform: translate(0, -50%);
    position: absolute;
    top: 70%;
    left: 0;
    z-index: 5;
}

.slider02 .t_con_txt,
.concept .con h2 {
    text-shadow: #fff 2px 0px 2px, #fff -2px 0px 2px,
        #fff 0px -2px 2px, #fff -2px 0px 2px,
        #fff 2px 2px 2px, #fff -2px 2px 2px,
        #fff 2px -2px 2px, #fff -2px -2px 2px,
        #fff 1px 2px 2px, #fff -1px 2px 2px,
        #fff 1px -2px 2px, #fff -1px -2px 2px,
        #fff 2px 1px 2px, #fff -2px 1px 2px,
        #fff 2px -1px 2px, #fff -2px -1px 2px,
        #fff 1px 1px 2px, #fff -1px 1px 2px,
        #fff 1px -1px 2px, #fff -1px -1px 2px;
}

.t_con_bg {
    width: 70%;
    margin-left: auto;
    position: relative;
    z-index: 1;
}

/* 
.t_con_bg:after {
    content: "";
    z-index: -1;
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100%;
    background: url(/import/tenant_1/133.167.79.132/html/images/pattern/concept.jpg) repeat;
}
 */
.t_con_bg img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: 50% 50%;
    object-position: 50% 50%;
    font-family: "object-fit: cover; object-position: 50% 50%;";
}

@media (max-width: 599px) {
    .t_con_bg {
        margin-left: 0;
    }

    .t_con_txt {
        width: 100%;
        padding: 15px;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        -webkit-transform: translate(0, 0);
        transform: translate(0, 0);
        position: static;
        z-index: 2;
    }

    .t_con ul:after {
        content: none;
    }

    .slider02 .t_con_txt,
    .concept .con h2 {
        text-shadow: none;
    }
}

/*---------- salon ----------*/
.t_salon {
    padding-bottom: 50px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    position: relative;
}

.t_salon:after {
    content: "";
    width: 80vw;
    height: 30vh;
    display: block;
    background: url(/import/tenant_1/133.167.79.132/html/images/pattern/texture.jpg) repeat;
    position: absolute;
    top: 5%;
    right: 15%;
    z-index: 1;
}

.t_salon .hd {
    position: absolute;
    top: 0;
    left: 5%;
}

.shop-slider {
    padding: 0 30px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    z-index: 2;
}

.shop-slider li {
    margin: 10px;
}

.t_salon .slick-dots {
    display: none !important;
}

@media (max-width: 1024px) {
    .t_salon ul {
        padding: 0 50px;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
    }

    .t_salon:after {
        right: 25%;
    }
}

@media (max-width: 599px) {
    .t_salon ul {
        padding: 0 35px;
    }

    .t_salon .slick-arrow {
        display: none !important;
    }

    .t_salon .slick-dots {
        display: block !important;
    }
}

.fffbox a {
    display: block;
}

.fffbox {
    background: #fffcf7;
    -webkit-box-shadow: 3px 3px 5px rgba(151, 151, 151, 0.5);
    box-shadow: 3px 3px 5px rgba(151, 151, 151, 0.5);
}

.fffbox dl {
    padding: 10px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

.fffbox dl dt {
    margin-bottom: 10px;
    -webkit-box-sizing: content-box;
    box-sizing: content-box;
    font-weight: bold;
    font-size: 18px;
    line-height: 120%;
}

.fffbox dl dd {
    -webkit-box-sizing: content-box;
    box-sizing: content-box;
}

.fffbox .res {
    display: block;
    padding: 5px 15px;
    font-size: 15px;
    background: #ebe8e4;
    position: relative;
}

@media (max-width: 599px) {
    .fffbox .pic {
        width: 100%;
    }
}

.t_salon .slick-prev:before,
.t_con .slick-prev:before {
    content: "";
    width: 18px;
    height: 18px;
    display: inline-block;
    border-top: 2px solid #333;
    border-right: 2px solid #333;
    -webkit-transform: scale(0.7);
    -webkit-transform: rotate(-135deg);
    transform: scale(0.7);
    transform: rotate(-135deg);
    top: 50%;
}

.t_salon .slick-prev,
.t_con .slick-prev {
    left: 15px;
    z-index: 10;
}

.t_con .slick-prev {
    left: -30px;
    z-index: 10;
}

.t_salon .slick-next:after,
.t_con .slick-next:after {
    content: "";
    width: 18px;
    height: 18px;
    display: block;
    border-top: 2px solid #333;
    border-right: 2px solid #333;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    position: absolute;
    top: 50%;
}

.t_salon .slick-next {
    right: 15px;
    z-index: 1;
}

.t_con .slick-next {
    right: -30px;
    z-index: 1;
}

.res .res_arrow {
    content: "";
    width: 40px;
    height: 3px;
    border-bottom: 1px solid #000;
    border-right: 2px solid #000;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
    -webkit-transform: skew(70deg);
    transform: skew(70deg);
    position: absolute;
    top: 50%;
    right: 20px;
}

.res:hover .res_arrow {
    right: -0.005em;
}

@media (max-width: 599px) {
    t_salon ul {
        width: 70%;
        margin: auto;
    }

    .t_salon ul li.slick-slide {
        margin: 5px;
    }
}

/*---------- staff ----------*/
.t_staff {
    position: relative;
}

.t_staff:after {
    content: "";
    width: 150vh;
    height: 300px;
    display: block;
    background: url(/import/tenant_1/133.167.79.132/html/images/pattern/staff.jpg) repeat;
    background-size: 8%;
    position: absolute;
    bottom: 20%;
    left: 40%;
    z-index: 1;
}

.t_staff_bg {
    width: 100%;
    max-width: 60%;
    height: 30vh;
    position: absolute;
    top: 50px;
    right: 0px;
    z-index: -1;
}

.t_staff .hd {
    position: absolute;
    top: 0;
    left: 5%;
}

.t_staff .inner {
    padding: 0 0 180px;
}

.slist-wrap {
    width: 30%;
    z-index: 2;
}

.slist .slist_li {
    margin-bottom: 20px;
}

.slist .slist_li a {
    display: block;
    padding: 5px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    font-family: "optitimes-romanregular", serif;
    font-size: 30px;
}

.slist .slist_li span {
    padding-left: 10px;
    font-size: 16px;
}

/*---------- morebtn ----------*/
.mor {
    width: 240px;
    display: block;
    font-family: "optitimes-romanregular", serif;
    font-size: 18px;
    color: #333;
    position: relative;
}

.mor:after {
    content: "";
    width: 40px;
    height: 3px;
    margin-left: 10px;
    border-bottom: 1px solid #000;
    border-right: 2px solid #000;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
    -webkit-transform: skew(70deg);
    transform: skew(70deg) translate(0, -50%);
    position: absolute;
    top: 50%;
    right: 60%;
}

.mor:hover {
    opacity: 1;
}

.mor:hover:after {
    right: 30%;
}

.mor_w {
    color: #fff;
}

.mor:hover {
    opacity: 1;
}

.mor_w:after {
    border-bottom: 1px solid #fff;
    border-right: 2px solid #fff;
}

.mor_w:hover {
    color: #fff;
}

@media (max-width: 599px) {
    .t_staff .inner {
        padding-bottom: 0;
    }
}

/*---------- salon ----------*/
.sslide {
    width: 70%;
    position: relative;
    z-index: 2;
}

.sslide[data-element-id] .slick-slider .slick-track,
.sslide .slick-initialized .slick-slide[data-element-id] {
    width: 100% !important;
}

.sslide[data-element-id] .slick-slider .slick-track>div {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

.sslide[data-element-id] .slick-slider .slick-track .sslidelist {
    width: 30% !important;
}

.sslide .slick-prev:before {
    content: "";
    width: 18px;
    height: 18px;
    display: block;
    border-top: 2px solid #333;
    border-right: 2px solid #333;
    -webkit-transform: rotate(-135deg);
    transform: rotate(-135deg);
    position: absolute;
    top: 40%;
}

.sslide .slick-next:before {
    content: "";
    width: 18px;
    height: 18px;
    display: block;
    border-top: 2px solid #333;
    border-right: 2px solid #333;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    position: absolute;
    top: 40%;
}

.sslidelist {
    margin: 0 20px;
    -webkit-box-shadow: 3px 3px 5px rgba(151, 151, 151, 0.5);
    box-shadow: 3px 3px 5px rgba(151, 151, 151, 0.5);
}

.sslidelist a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

.sslide li .pic {
    width: 90%;
}

.sslide li dt {
    width: 30%;
    background: #333;
}

.sslide .spec .spos {
    width: 100%;
    height: 25%;
    padding: 5px 0;
    color: #fff;
    text-align: center;
    background: #333;
}

.sslide .spec .sname {
    padding: 5px 0em;
    color: #fff;
}

.spec {
    width: 10%;
    -ms-writing-mode: tb-rl;
    -webkit-writing-mode: tb-rl;
    writing-mode: tb-rl;
    background: #595856;
}

.sname {
    height: 1em;
    display: inline-block;
    -ms-writing-mode: tb-lr;
    -webkit-writing-mode: vertical-lr;
    writing-mode: vertical-lr;
    -webkit-transform: translate(1006%, 50%) rotate(90deg);
    transform: translate(100%, 50%) rotate(90deg);
    -webkit-transform-origin: top left;
    transform-origin: top left;
}

.circlenav {
    margin: 20px auto 0;
}

.sslide .slick-dots {
    position: static;
}

.slick-dots li {
    width: 15px;
    height: 15px;
    display: inline-block;
    margin: 0 5px;
    border-radius: 50%;
    background: #fff;
}

.slick-dot {
    background: #f0ece4;
}

.slick-dotted.slick-slider {
    margin-bottom: 0;
}

.slick-dots .slick-active {
    background: #333;
}

.slick-dots li button:before {
    color: transparent !important;
}

.sslide .slick-dots li {
    margin: 10px !important;
}

.slick-dots li button {
    width: 15px;
}

@media (max-width: 1024px) {
    .slist-wrap {
        width: 100%;
    }

    .slist {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        -ms-flex-pack: distribute;
        justify-content: space-around;
    }

    .sslide {
        width: 100%;
        margin: 50px auto;
    }

    .sslidelist {
        margin: 0 10px;
    }

    .slist+.more-btn {
        float: right;
    }
}

@media (max-width: 599px) {
    .slist {
        width: calc(100% - 90px);
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        padding-left: 10px;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
    }

    .sslide {
        margin: 0 auto 50px;
    }

    .slist-wrap {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: end;
        align-items: flex-end;
        -ms-flex-align: end;
    }

    .slist+.more-btn {
        width: 50px;
        margin-bottom: 20px;
    }
}

/*---------- collection ----------*/
.t_colle {
    position: relative;
}

.t_colle:after {
    content: "";
    width: 100vw;
    height: 200px;
    display: block;
    background: url(/import/tenant_1/133.167.79.132/html/images/pattern/brick.jpg) repeat;
    background-size: auto 100%;
    position: absolute;
    bottom: 10%;
    right: 20%;
    z-index: 1;
}

.t_colle_bg {
    width: 100%;
    max-width: 70%;
    height: 20vh;
    position: absolute;
    bottom: 0px;
    left: 0px;
    z-index: -1;
}

.t_colle .hd {
    position: absolute;
    top: 30px;
    left: 5%;
}

.t_colle .inner {
    padding-bottom: 100px;
}

.t_collelist {
    margin-bottom: 40px;
    padding: 0 10px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    position: relative;
    z-index: 2;
}

.t_collelist a {
    display: block;
}

.t_colle .mor {
    margin: 0 -20% 0 auto;
    z-index: 2;
}

.collelist_a {
    width: 43%;
}

.collelist_b {
    width: 25%;
}

.collelist_b ul {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
}

.collelist_b ul li {
    width: 100%;
}

.collelist_b ul li:first-child {
    margin-bottom: 30px;
}

.collelist_c {
    width: 25%;
}

.collelist_c ul {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -ms-flex-direction: column-reverse;
    flex-direction: column-reverse;
}

.collelist_c ul li {
    width: 100%;
}

.collelist_c ul li:last-child {
    margin-bottom: 30px;
}

.collelist_a_img {
    width: 100%;
    height: 100%;
}

.collelist_a_img img {
    width: 100%;
    height: 100% !important;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: 50% 50%;
    object-position: 50% 50%;
}

.t_colle .morbtn {
    position: absolute;
    bottom: 0;
    right: 5%;
}

.t_colle .morbtn .mor:after {
    right: -120%;
}

.slide_detail_c .uk-slidenav-position {
    overflow: hidden;
    position: relative;
}

.slide_detail_c .uk-slidenav-position:after {
    content: "";
    display: block;
    padding-top: 70vh;
}

.slide_detail_c .uk-slideshow {
    position: absolute;
    top: 0;
}

@media (max-width: 599px) {
    .t_colle:after {
        bottom: 22%;
    }

    .collelist_a {
        width: 100%;
        margin-bottom: 4%;
    }

    .collelist_b,
    .collelist_c {
        width: 48%;
    }

    .collelist_b ul li:first-child,
    .collelist_c ul li:last-child {
        margin-bottom: 8%;
    }

    .slide_detail_c .uk-slidenav-position:after {
        padding-top: 43vh;
    }
}

/*---------- gallery ----------*/
.t_galle {
    margin: 0 -99999px;
    padding: 100px 0 30px;
    padding: 0 99999px;
    background: url(/import/tenant_1/133.167.79.132/html/images/pattern/gallery.jpg) repeat;
    position: relative;
}

.t_galle h2 {
    margin-left: -110px;
}

.t_galle h2 {
    color: #fff;
}

.t_galle h2:after {
    background-color: #fff;
}

.t_gallelist {
    padding: 0 30px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

.t_gallelist li {
    height: auto;
    margin-bottom: 30px;
    padding: 0 15px;
    position: relative;
}

.t_gallelist .slick-dots {
    display: none !important;
}

.t_gallelist .slick-dots li {
    height: 15px;
    padding: 0;
}

.t_gallelist li a {
    display: block;
}

.t_gallelist li a .pic img {
    -webkit-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
    -webkit-transform: scale(1);
    transform: scale(1);
}

.t_gallelist li a:hover .pic img {
    -webkit-transform: scale(1.3);
    transform: scale(1.3);
}

.t_gallelist li .gname {
    width: 100%;
    padding: 3px 5px;
    color: #fff;
    background: rgba(51, 51, 51, 0.7);
    position: absolute;
    bottom: 0;
}

.t_galle .morbtn {
    margin-left: 2%;
}

.t_galle .morbtn .mor {
    margin: 0 -20% 0 auto;
}

.t_gallelist .slick-prev {
    border-top: 2px solid #fff;
    border-left: 2px solid #fff;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    left: 10px;
}

.t_gallelist .slick-next {
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    right: 10px;
}

@media (max-width: 1024px) {
    .t_galle h2 {
        margin-left: -60px;
    }

    .t_gallelist {
        width: 100%;
        max-width: 100%;
    }
}

@media (max-width: 599px) {
    .t_galle h2 {
        margin-left: -40px;
    }

    .t_galle .morbtn {
        margin-top: 30px;
        /*         padding: 10px;
-webkit-box-sizing: border-box;
box-sizing: border-box;
 */
    }

    .t_gallelist .slick-dots {
        display: block !important;
    }

    .t_gallelist .slick-dots li.slick-active button:before {
        color: #4e7e66;
    }

    .t_gallelist .slick-arrow {
        display: none !important;
    }

    .t_gallelist {
        padding: 0;
    }

    .t_galle .mor {
        margin: 0 -20% 0 auto;
        z-index: 2;
    }
}

/*---------- linkarea ----------*/
.t_link {
    padding: 30px 0;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

.t_link ul li {
    width: 48%;
}

.t_link ul li .pic {
    width: 45%;
    margin-bottom: 10px;
    margin-right: 20px;
}

.t_link ul li .mor {
    width: 50%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
    align-items: flex-end;
    -ms-flex-align: end;
    font-family: "Noto Serif JP", serif;
}

.t_link ul li .mor:after {
    -webkit-transform: skew(70deg);
    transform: skew(70deg);
    top: inherit;
    bottom: 10px;
    right: 30%;
}

.t_link ul li .mor:hover:after {
    right: 10%;
}

.t_link .inner {
    width: 100% !important;
    padding-bottom: 120px;
}

@media (max-width: 1024px) {
    .t_link .inner {
        padding: 0 10px;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
    }

    .t_link ul li .pic {
        width: 100%;
        margin-bottom: 5px;
        margin-right: 0;
    }

    .t_link ul li .mor {
        width: 100%;
    }
}

@media (max-width: 599px) {
    .t_link ul li {
        width: 100%;
        margin-bottom: 30px;
    }

    .t_link ul li .mor {
        width: 240px;
        margin: 0 -20% 0 auto;
    }

    .t_link ul li .mor:after {
        right: 38%;
    }

    .mor:hover:after {
        right: 60%;
    }

    .mor:after,
    .t_link ul li .mor:after {
        -webkit-transition: none;
        transition: none;
    }

    .t_link ul li .mor:hover:after {
        right: 30%;
    }
}

/*---------- news-blog ----------*/

.titlearea {
    width: 25%;
}

.blogtitle {
    margin-bottom: 40px;
    font-family: "optitimes-romanregular";
    font-size: 43px;
    letter-spacing: 1px;
}

.blogtitle span {
    display: block;
}

.newss {
    width: 75%;
    padding: 10px 30px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    position: relative;
}

.newss .slick-list li {
    margin: 0 20px;
}

.newss .slick-prev {
    left: 15px;
}

.newss .slick-prev:before {
    content: "";
    width: 18px;
    height: 18px;
    display: block;
    border-top: 2px solid #333;
    border-right: 2px solid #333;
    -webkit-transform: rotate(-135deg);
    transform: rotate(-135deg);
    position: absolute;
    top: 40%;
}

.newss .slick-next {
    right: 15px;
}

.newss .slick-next:before {
    content: "";
    width: 18px;
    height: 18px;
    display: block;
    border-top: 2px solid #333;
    border-right: 2px solid #333;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    position: absolute;
    top: 40%;
}

.newss li a {
    display: block;
}

.newss dl {
    margin-top: 10px;
}

.newss dl dt {
    color: #a19e9a;
}

.newss dl dd {
    display: block;
    overflow: hidden;
    font-weight: bold;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.newss .slick-dots li button {
    display: none;
}

@media (max-width: 1024px) {
    .t_news .titlearea {
        -webkit-box-align: end;
        align-items: flex-end;
        -ms-flex-align: end;
    }

    .titlearea {
        width: 100%;
        margin-bottom: 30px;
    }

    .titlearea p {
        margin-bottom: 30px;
        margin-left: 20px;
    }

    .blogtitle {
        margin-bottom: 20px;
        font-size: 36px;
    }

    .blogtitle br {
        display: none;
    }

    .newss {
        width: 100%;
        max-width: 100%;
    }
}

@media (max-width: 599px) {
    .titlearea {
        -webkit-box-align: end;
        align-items: flex-end;
        -ms-flex-align: end;
        margin-bottom: 0;
    }

    .blogtitle {
        width: 110px;
        margin: auto;
        padding: 10px;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        font-size: 28px;
    }

    .titlearea p {
        width: calc(100% - 120px);
        margin-bottom: 30px;
    }

    .titlearea p .mor {
        margin: 0 -30% 0 auto;
    }

    .blogCatList li {
        width: 48%;
        margin-right: 0 !important;
    }

    .newss .slick-dots li button {
        display: block;
    }

    .newss .slick-arrow {
        display: none !important;
    }
}

/* ##### トップページ end ##### */

/* ##### concept ##### */
.concept .con {
    position: relative;
}

.concept .con h2 {
    margin: auto;
    font-size: 20px;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    position: absolute;
    top: 50%;
    left: 15%;
    z-index: 2;
}

.concept .concept01 {
    margin-left: auto;
}

.concept .five-element {
    padding-bottom: 50px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

.concept-text {
    font-size: 16px;
    line-height: 180%;
}

.concept .five-element {
    margin-top: 50px;
}

.concept .pointbox .itemstart .pbw60 {
    width: 58%;
}

.concept .pointbox .itemstart .pimag {
    width: 40%;
}

.concept01.w60 .concept_bg {
    width: 100%;
}

.concept01.w60 .concept_bg {
    margin-left: 0;
}

.concept01.w60 p {
    margin-top: 30px;
}

.concept02 {
    position: relative;
}

.concept02 .hd {
    position: absolute;
    top: 0px;
    left: 5%;
}

.conte_p {
    position: relative;
}

.conte_p .hd {
    position: absolute;
    top: 10%;
    left: 6%;
}

.conte {
    overflow: hidden;
    position: relative;
}

.conte .inner {
    width: 100%;
    padding: 0;
}

.conte a {
    width: 100%;
    display: block;
    margin: auto;
    -webkit-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
}

.conte_detail {
    width: 50%;
    padding: 100px 0 100px 0;
    position: relative;
    /*     background: url(/import/tenant_1/133.167.79.132/html/images/pattern/gallery.jpg) repeat;
 */
}

.conte_detail:before {
    content: "";
    width: 100vw;
    height: 100%;
    display: block;
    background: url(/import/tenant_1/133.167.79.132/html/images/pattern/gallery.jpg) repeat;
    position: absolute;
    top: 0;
    right: 0;
    z-index: 1;
}

.conte_detail dl {
    padding: 0 20px 0 60px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    position: relative;
    z-index: 1;
}

.conte_detail dl dt,
.conte_detail dl dd {
    color: #fff;
}

.conte_detail dl dt {
    margin-bottom: 20px;
    font-size: 18px;
}

.conte_detail dl dd a {
    margin-top: 20px;
    color: #fff;
}

.conte .pic {
    width: 50vw;
    height: 100%;
    margin-left: auto;
    position: absolute;
    top: 0;
    right: 0;
}

.conte .pic img {
    width: 100%;
    height: 100% !important;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: 50% 50%;
    object-position: 50% 50%;
    font-family: "object-fit: cover; object-position: 50% 50%;";
}

.conte .vertical-heading {
    margin-left: 0;
}

.conte_detail .mor:after {
    border-bottom: 1px solid #fff;
    border-right: 2px solid #fff;
}

@media (max-width: 1024px) {
    .conte {
        position: relative;
    }

    .conte.flex,
    .conte .flex {
        max-width: inherit;
    }

    .conte a {
        width: 100%;
    }

    .conte_detail {
        width: 100%;
        min-height: 30vh;
        position: relative;
    }

    .concept .pointbox .itemstart .pbw60 {
        width: 100%;
    }

    .concept .pointbox .itemstart .pimag {
        width: 60%;
        margin: 30px auto;
    }

    .conte .pic {
        width: 100%;
        position: relative;
    }

    .conte_detail:before {
        content: "";
        width: 160vw;
        height: 100%;
        display: block;
        background: url(/import/tenant_1/133.167.79.132/html/images/pattern/gallery.jpg) repeat;
        -webkit-transform: translateX(50%);
        transform: translateX(50%);
        position: absolute;
        top: 0;
        right: 50%;
        z-index: 1;
    }
}

@media (max-width: 599px) {
    .conte {
        overflow: hidden;
        position: relative;
    }

    .conte a {
        width: 100%;
        max-width: inherit;
    }

    .conte .pic {
        width: 100%;
    }

    .conte_detail {
        padding: 2em;
    }

    .concept .con h2 {
        -webkit-transform: translate(0, 0);
        transform: translate(0, 0);
        position: static;
    }

    .concept .pointbox .itemstart .pimag {
        width: 80%;
        margin: 30px auto;
    }

    .conte_detail dl {
        margin-top: 20px;
    }
}

/* ##### concept end ##### */

/* ##### container-plus ##### */
/*---------- Container+ ----------*/
.concept {
    position: relative;
}

.concept_txt {
    width: calc(20% + 200px);
    line-height: 2;
    text-shadow: 2px 2px 3px #fff;
    z-index: 2;
}

.concept_bg {
    width: 60%;
    margin-left: -200px;
    position: relative;
    z-index: 1;
}

.concept_bg:after {
    content: "";
    width: 100vw;
    height: 100%;
    display: block;
    background: url(/import/tenant_1/133.167.79.132/html/images/pattern/concept.jpg) repeat;
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
}

.concept_bg img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: 50% 50%;
    object-position: 50% 50%;
    font-family: "object-fit: cover; object-position: 50% 50%;";
}

@media (max-width: 1024px) {
    .concept_txt {
        width: 100%;
        line-height: 1.6;
    }
}

@media (max-width: 599px) {
    .t_con_bg {
        margin: auto;
    }

    .concept_bg {
        width: 80%;
        margin-left: 0;
    }

    .concept_txt {
        width: 100%;
    }
}

/*---------- Flow ----------*/

.flowbox {
    padding-bottom: 30px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    position: relative;
    z-index: 1;
}

.flow {
    position: relative;
}

.flow .hd {
    position: absolute;
    top: 0px;
    left: 5%;
}

.flow.after-object3:after {
    width: 100%;
    height: 270px;
    top: -10%;
}

.flowbox li {
    min-height: 290px;
    padding: 10px;
    background: #fff;
    position: relative;
}

.flowno {
    width: 40px;
    font-size: 14px;
    color: #62dde8;
    text-align: center;
    position: relative;
    z-index: 1;
}

.flowbox li:nth-of-type(2) .flowno {
    color: #dbc458;
}

.flowbox li:nth-of-type(3) .flowno {
    color: #ed9fe7;
}

.flowno span {
    display: block;
    font-size: 25px;
}

.flowbox li:after {
    content: "";
    width: 0;
    height: 0;
    border-width: 100px 100px 0 0;
    border-style: solid;
    border-color: #e9e7e1 transparent transparent transparent;
    position: absolute;
    top: 0;
    left: 0;
}

.flowa {
    text-align: center;
    position: relative;
}

.flowa:after {
    content: "";
    width: 1px;
    height: 20px;
    background: #a69e89;
    position: absolute;
    top: 50px;
    left: 50%;
}

.flowt {
    margin-top: 25%;
    text-align: center;
}

@media (max-width: 1024px) {
    .container .pagenav li {
        width: 40%;
    }
}

@media (max-width: 599px) {
    .container .pagenav li {
        width: 80%;
        margin-bottom: 10px;
    }

    .flowa:after {
        content: "";
        width: 1px;
        height: 20px;
        background: #a69e89;
        position: absolute;
        top: 50px;
        left: 50%;
    }

    .flowbox li {
        min-height: auto;
    }
}

/*---------- point01 ----------*/

.p01 {
    margin-bottom: 220px;
    position: relative;
}

.p01 .hd {
    position: absolute;
    top: 0px;
    left: 5%;
}

.p_h3 {
    max-width: 1000px;
    margin: 50px auto;
    margin-bottom: 50px;
    font-weight: normal;
    font-size: 20px;
    color: #927d1e;
    position: relative;
}

.p_h3:after {
    content: "";
    width: 30px;
    height: 2px;
    background: #927d1e;
    position: absolute;
    bottom: -7px;
    left: 0;
}

.pointbox {
    margin: 40px 0;
    position: relative;
}

.pointbox {
    margin: 120px 0 40px;
    position: relative;
    z-index: 1;
}

.pagenav {
    margin-bottom: 150px;
}

.pagenav li {
    width: 20%;
    margin: 10px;
    text-align: center;
    border-bottom: 2px #333 solid;
}

.pagenav li a {
    display: block;
}

.pointbox:nth-of-type(even) {
    margin-bottom: 180px;
}

.pointbox:nth-of-type(even) .itemstart {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
}

.pointbox .no {
    content: "";
    font-size: 200px;
    color: rgba(196, 193, 186, 0.5);
    position: absolute;
    top: 10%;
    z-index: -2;
}

.pointbox:nth-of-type(even) .no {
    left: 40%;
}

.pointbox h4 {
    font-size: 18px;
}

.pbox {
    margin: 30px 0;
    padding: 20px 25px;
    border: 1px solid #333;
}

.pbox ul li {
    list-style-position: inside;
    list-style-type: disc;
    font-weight: bold;
}

.pointbox .w40 {
    position: relative;
}

.pointbox .w40:after {
    content: "";
    width: 100vw;
    height: 100%;
    display: block;
    background: url(/import/tenant_1/133.167.79.132/html/images/pattern/texture.jpg) repeat;
    position: absolute;
    top: 30%;
    left: 23%;
    z-index: -1;
}

.pointbox:nth-of-type(even) .w40:after {
    left: auto;
    right: 23%;
}

.p100 {
    width: 100%;
    margin-top: 30px;
    padding-bottom: 30px;
    z-index: 1;
}

.p01 .w40 {
    margin-top: -50px;
}

@media (max-width: 1024px) {
    .pointbox {
        margin: 40px 0;
    }

    .p01 .w40 {
        margin-top: 0;
    }
}

@media (max-width: 599px) {
    .pimag {
        width: 100%;
        margin-bottom: 30px;
    }

    .pagenav li {
        width: 40%;
    }

    .pointbox:nth-of-type(even) {
        margin-bottom: 40px;
    }
}

/*---------- point02 ----------*/

.p02 {
    margin-left: -999rem;
    margin-right: -999rem;
    padding-left: 999rem;
    padding-right: 999rem;
    background: rgba(255, 255, 255, 0.4);
    background: #dad3c9;
    position: relative;
}

/* .p02:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    height: 100%;
    width: 100%;
    background: url(/import/tenant_1/133.167.79.132/html/images/pattern/concept.jpg) repeat;
}*/
.p02 .item {
    margin-top: -34px;
}

.p02 .vertical-heading,
.c01-box .vertical-heading {
    padding-right: 20px;
}

.p02list {
    margin-bottom: 50px;
}

.p02list li {
    padding: 10px 0;
    border-bottom: 2px #b0aeaa dotted;
}

.p02 .w60 .pic {
    width: 60vw;
    height: 100%;
}

.p02 .w60 .pic img {
    width: 100%;
    height: 100%;
    height: 100% !important;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: 50% 50%;
    object-position: 50% 50%;
    font-family: "object-fit: cover; object-position: 50% 50%;";
}

.p02 .inner {
    padding: 0;
}

.p02 .pbw40 p {
    margin-bottom: 85px;
}

.zup.pic {
    position: relative;
    z-index: 5;
}

@media (max-width:1024px) {
    .p02 .pbw40 {
        width: 100%;
        margin-top: 30px;
    }

    .p02 .w60 {
        margin: 0;
    }

    .p02 .w60 .pic {
        width: 120vw;
        max-width: inherit;
        height: 100%;
        margin-left: -44%;
    }
}

@media (max-width:599px) {
    .p02 .w60 .pic {
        margin-left: -25%;
    }
}

/*---------- point03 ----------*/

.p03 {
    padding: 120px 0 !important;
    position: relative;
}

.p03 .vertical-heading {
    padding-right: 20px;
}

.p03 .p03-tit {
    width: 270px;
    padding: 0 0 0 50px;
    position: relative;
    z-index: 1;
}

.p03 .inner {
    padding-top: 0;
}

.p03 .p03-tit:after {
    content: "";
    width: 100vw;
    height: 150%;
    margin-right: -999rem;
    padding-right: 999rem;
    background: url(/import/tenant_1/133.167.79.132/html/images/pattern/gallery.jpg) repeat;
    position: absolute;
    bottom: 10px;
    left: 0;
    z-index: -1;
}

.parea .p03-tit .tex {
    color: #fff;
}

.parea .p03-tit .tex.mt10 {
    margin-top: 10px;
}

.p03 .p03-img {
    width: calc(100% - 270px);
    padding-right: 20px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

.p03 .p03-img li {
    width: calc(33.3333% - 10px);
    margin: 0 0 10px 0;
}

@media (max-width: 1024px) {
    .p03 .p03-img li {
        width: calc(50% - 10px);
    }

    /*   .p03 .p03-tit:after {
  height: 152%;
} */
    .p02 .pbw40 {
        margin-bottom: 30px;
    }

    .container .w60 {
        padding-top: 0;
    }

    .container .w60 ul li {
        width: 31%;
        margin: 1%;
        padding: 0;
    }

    .container .w40 {
        margin-top: 50px;
        padding-left: 10px;
    }

    .container .w40 h3 {
        margin: 10px 0 20px 0;
    }
}

@media (max-width: 599px) {
    .p03 {
        padding: 0 0 120px !important;
    }

    .p03 .p03-tit {
        width: 100%;
        padding: 0 0 10% 15px;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
    }

    .p03 .p03-tit:after {
        height: 100%;
    }

    .p03 .p03-img {
        width: 100%;
        padding-right: 0;
    }

    .p03 .p03-img li {
        width: calc(33.3333% - 10px);
    }

    .p03-img.pt30 {
        padding-top: 0;
    }

    .p03 .flexb {
        -ms-flex-wrap: wrap-reverse;
        flex-wrap: wrap-reverse;
    }
}

/*---------- point04 ----------*/
.p04 {
    position: relative;
}

.p04 .hd {
    position: absolute;
    top: 0px;
    left: 5%;
}

.p04 .w40 {
    margin: 20px 0;
    z-index: 1;
}

/* checklist */
.checklist li {
    padding-bottom: 10px;
}

.checklist li:before {
    content: url(/import/tenant_1/133.167.79.132/html/images/container-plus/check.png);
    padding-right: 10px;
}

.reflow {
    margin: 50px 0;
}

.reflowbox {
    width: 16%;
    height: 100%;
    min-height: 100px;
    -ms-flex-line-pack: center;
    align-content: center;
    margin: 0 10px;
    padding: 10px;
    background: #fff;
    -webkit-animation-name: pointanime;
    animation-name: pointanime;
    -webkit-animation-duration: 1.5s;
    animation-duration: 1.5s;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
    -webkit-animation-iteration-count: infinite;
    animation-iteration-count: infinite;
    -webkit-animation-direction: alternate;
    animation-direction: alternate;
    position: relative;
}

.reflowbox:before {
    content: "";
    height: 100%;
    border-bottom: 30px solid #f0ece4;
    border-right: 30px solid transparent;
    position: absolute;
    bottom: 0;
    left: 0;
}

.reflowbox:after {
    content: "";
    width: 40px;
    height: 1em;
    -webkit-box-flex: 1;
    -ms-flex: auto;
    flex: auto;
    background: radial-gradient(#333 20%, transparent 30%) center/ 1em;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    position: absolute;
    bottom: 0px;
    right: -27%;
}

.reno {
    display: block;
    font-size: 30px;
    position: absolute;
    bottom: 0;
    left: 0;
}

.reflowtitle {
    padding-left: 30px;
}

.reflow dl {
    padding: 20px 0;
}

.reflow dt {
    font-weight: bold;
    text-align: center;
}

.reflow dd {
    margin-top: 10px;
    line-height: 1;
}

.reflowbox:nth-of-type(even) {
    margin-top: 50px;
    -webkit-animation-name: pointanime2;
    animation-name: pointanime2;
    -webkit-animation-duration: 1.5s;
    animation-duration: 1.5s;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
    -webkit-animation-iteration-count: infinite;
    animation-iteration-count: infinite;
    -webkit-animation-direction: alternate;
    animation-direction: alternate;
}

.reflowbox:nth-of-type(even):before {
    content: "";
    height: 100%;
    border-top: 30px solid #f0ece4;
    border-bottom: none;
    border-right: 30px solid transparent;
    position: absolute;
    top: 0;
    left: 0;
}

.reflowbox:nth-of-type(even) .reno {
    display: block;
    font-size: 30px;
    position: absolute;
    top: 0;
}

.reflowbox:nth-of-type(even):after {
    content: "";
    width: 40px;
    height: 1em;
    -webkit-box-flex: 1;
    -ms-flex: auto;
    flex: auto;
    background: radial-gradient(#333 20%, transparent 30%) center/ 1em;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    position: absolute;
    top: 0px;
    right: -27%;
}

.reflowbox:last-of-type:after {
    content: none;
}

@-webkit-keyframes pointanime {
    0% {
        -webkit-transform: translate(0, 0px);
        transform: translate(0, 0px);
    }

    100% {
        -webkit-transform: translate(0, -15px);
        transform: translate(0, -15px);
    }
}

@keyframes pointanime {
    0% {
        -webkit-transform: translate(0, 0px);
        transform: translate(0, 0px);
    }

    100% {
        -webkit-transform: translate(0, -15px);
        transform: translate(0, -15px);
    }
}

@-webkit-keyframes pointanime2 {
    0% {
        -webkit-transform: translate(0, 0px);
        transform: translate(0, 0px);
    }

    100% {
        -webkit-transform: translate(0px, 15px);
        transform: translate(0px, 15px);
    }
}

@keyframes pointanime2 {
    0% {
        -webkit-transform: translate(0, 0px);
        transform: translate(0, 0px);
    }

    100% {
        -webkit-transform: translate(0px, 15px);
        transform: translate(0px, 15px);
    }
}

.conbtn1 {
    display: block;
    margin: auto;
    padding: 2px 5px;
    font-size: 12px;
    color: #fff;
    letter-spacing: -1.5px;
    text-align: center;
    background: #b2a824;
}

.conbtn1.pa05 {
    background: url(/import/tenant_1/133.167.79.132/html/images/pattern/gallery.jpg) repeat;
    background-size: 8%;
}

@media (max-width: 599px) {
    .p04 .w40 {
        margin: 0 0 30px;
    }

    .re-flow ul {
        margin: 0 auto 0 0;
    }

    .reflowbox {
        width: 40%;
    }

    .reflowbox:after {
        right: -24%;
    }

    .reflowbox:nth-of-type(even) {
        margin-bottom: 10px;
    }

    .reflowbox:nth-of-type(even):after {
        content: none;
        margin: 10px 0 0 auto;
    }
}

/*---------- point05 ----------*/
.p05 {
    position: relative;
}

.p05 .hd {
    position: absolute;
    top: 0px;
    left: 5%;
}

.boxh {
    width: 30%;
    padding: 10px;
    font-size: 16px;
    color: #fff;
    text-align: center;
    background: #313131;
}

.cbox {
    width: 80%;
    margin: auto;
    margin-bottom: 30px;
    border: #313131 1px solid;
}

.cbox .checklist {
    padding: 50px;
}

@media (max-width: 599px) {
    .cbox .checklist {
        width: 100%;
        padding: 10px;
    }
}

/* 移動型 */
.p05_2 {
    margin: 20px 0;
}

.p05_2_contein {
    margin-top: 120px;
    padding-top: 50px;
    position: relative;
}

.p05_2_contein:after {
    content: "";
    width: 100vw;
    height: 40vh;
    background: url(/import/tenant_1/133.167.79.132/html/images/pattern/texture.jpg) repeat;
    opacity: 0.4;
    position: absolute;
    top: 0;
    right: 340px;
    z-index: -1;
}

.contactus {
    width: 80%;
    display: inline-block;
    margin: 0 0 0 auto;
    margin-top: 30px;
    padding: 5px 10px;
    color: #fff;
    text-align: center;
    background: linear-gradient(135deg, #b2a824 1%, #c3b72c 40%, #b2a824 100%);
    -webkit-transition-duration: 0.3s;
    transition-duration: 0.3s;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    position: relative;
}

.contactus:before {
    content: "";
    background: #89841c;
    -webkit-transition-timing-function: ease-out;
    transition-timing-function: ease-out;
    -webkit-transition-duration: 0.3s;
    transition-duration: 0.3s;
    -webkit-transition-property: transform;
    -webkit-transition-property: -webkit-transform;
    transition-property: -webkit-transform;
    transition-property: transform;
    transition-property: transform, -webkit-transform;
    -webkit-transform: scaleX(0);
    transform: scaleX(0);
    -webkit-transform-origin: 100% 50%;
    transform-origin: 100% 50%;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: -1;
}

.contactus:hover {
    color: #fff;
    opacity: 1;
}

.contactus:hover:before {
    -webkit-transform: scaleX(1);
    transform: scaleX(1);
}

.contactus:after {
    content: "";
    width: 40px;
    height: 3px;
    margin-left: 10px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    border-bottom: 1px solid #fff;
    border-right: 2px solid #fff;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
    -webkit-transform: skew(70deg);
    transform: skew(70deg);
    position: absolute;
    top: 50%;
    right: 15%;
}

@media (max-width: 1024px) {
    .boxh {
        width: 100%;
    }

    .cbox {
        width: 100%;
    }
}

@media (max-width: 599px) {
    .contactus {
        width: 80%;
        display: block;
        margin: 20px auto 40px;
        padding: 10px;
    }
}

/*---------- point06 ----------*/
.p06 .con {
    position: relative;
}

.p06 .t_con_txt {
    top: 50%;
}

.p06 .con .w40 {
    z-index: 2;
}

@media (max-width: 1024px) {
    .container .t_con_txt {
        -webkit-transform: translate(0, 0);
        transform: translate(0, 0);
        position: static;
    }

    .p06 .w40 {
        width: 100%;
    }

    .concept_bg {
        margin-top: 30px;
        margin-left: 0;
    }
}

@media (max-width: 599px) {
    .container .t_con_txt {
        font-size: 16px;
    }
}

/*---------- point07 ----------*/
.photobox .pic img {
    width: 100%;
    height: 100%;
    max-height: 500px;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: 50% 50%;
    object-position: 50% 50%;
    font-family: "object-fit: cover; object-position: 50% 50%;";
}

.photobox {
    margin: auto;
    margin-bottom: 30px;
    position: relative;
}

.photobox .boxh {
    width: 90%;
    height: 80%;
    background: rgba(255, 255, 255, 0.7);
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    position: absolute;
    top: 50%;
    left: 50%;
}

.photobox .boxh .fs18 {
    font-weight: bold;
    color: #333;
    line-height: 3;
}

/**/

.photobox .boxh .fs18 span {
    display: block;
    -webkit-animation-name: fadein;
    animation-name: fadein;
    -webkit-animation-duration: 3s;
    animation-duration: 3s;
    -webkit-animation-iteration-count: 1;
    animation-iteration-count: 1;
}

.photobox .boxh .fs18 span:nth-of-type(2) {
    -webkit-animation-duration: 5s;
    animation-duration: 5s;
}

@-webkit-keyframes fadein {
    from {
        opacity: 0;
        -webkit-transform: translateY(50px);
        transform: translateY(50px);
    }

    to {
        opacity: 1;
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }
}

@keyframes fadein {
    from {
        opacity: 0;
        -webkit-transform: translateY(50px);
        transform: translateY(50px);
    }

    to {
        opacity: 1;
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }
}

@media (max-width: 599px) {
    .photobox .pic {
        width: 100%;
        margin: 0 auto;
    }
}

/*---------- Contact Form ----------*/
.contact-form {
    position: relative;
}

.contact-form .hd {
    position: absolute;
    top: 0px;
    left: 5%;
}

.required {
    padding-left: 10px;
}

.required:after {
    content: "";
    width: 20px;
    height: 20px;
    vertical-align: middle;
    padding-left: 10px;
    background: url(/import/tenant_1/133.167.79.132/html/images/container-plus/exclamation.png) no-repeat;
    background-size: contain;
}

.requiredtxt {
    text-align: right;
}

.requiredtxt:before {
    content: "";
    width: 100%;
    height: 100%;
    vertical-align: middle;
    padding-left: 10px;
    background: url(/import/tenant_1/133.167.79.132/html/images/container-plus/exclamation.png) no-repeat;
    background-size: contain;
}

.form dl {
    padding: 15px 0;
    border-bottom: 1px solid #999;
}

.form dl.dotte {
    border-bottom: 2px #b0aeaa dotted;
}

.form dt {
    width: 20%;
}

.form dd {
    width: 75%;
}

.form dd span {
    display: block;
    margin-right: 10px;
}

.form dd input[type="text"],
.form dd input[type="email"] {
    width: 95%;
    padding: 3px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    border: #fff 1px solid;
}

.form dd input[name="time"] {
    width: 30%;
}

.form dd input[type="radio"] {
    margin: 5px;
}

.form dl textarea {
    width: 75%;
    height: 100px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    font-family: "游明朝体", "Yu Mincho", YuMincho, "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ ゴシック", sans-serif;
    border: #fff 1px solid;
}

.confirmation,
.input-confirm-form-submit-btn,
.input-confirm-form-back-btn {
    width: 250px;
    padding: 10px 0;
    color: #fff;
    text-align: center;
    background: #313131;
}

.confirmation {
    margin-top: 30px;
    -webkit-transition-duration: 0.3s;
    transition-duration: 0.3s;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
}

.confirmation:hover:before,
.input-confirm-form-submit-btn:hover:before,
.input-confirm-form-back-btn:hover:before {
    -webkit-transform: scaleX(1);
    transform: scaleX(1);
}

.confirmation:before {
    content: "";
    background: #89841c;
    -webkit-transition-timing-function: ease-out;
    transition-timing-function: ease-out;
    -webkit-transition-duration: 0.3s;
    transition-duration: 0.3s;
    -webkit-transition-property: transform;
    -webkit-transition-property: -webkit-transform;
    transition-property: -webkit-transform;
    transition-property: transform;
    transition-property: transform, -webkit-transform;
    -webkit-transform: scaleX(0);
    transform: scaleX(0);
    -webkit-transform-origin: 100% 50%;
    transform-origin: 100% 50%;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: -1;
}

.btnarea {
    margin-top: 50px;
}

@media (max-width: 1024px) {
    .form dt {
        width: 100%;
        margin-bottom: 10px;
    }

    .form dd {
        width: 100%;
    }
}

/* ##### container-plus end ##### */

/* ##### 店舗ページ ##### */
/* abie nishioshima */
.salon-page .inpagenav {
    padding: 50px 0;
}

.salon-page .inner {
    width: 92%;
    padding-left: 60px;
}

.salon-info {
    position: relative;
}

.salon-info-inner {
    width: 40%;
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    align-items: center;
    -ms-flex-align: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin: auto;
    padding-bottom: 70px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    background-color: rgba(0, 0, 0, 0.5);
    -webkit-transform: translate(0, -50%);
    transform: translate(0, -50%);
    position: absolute;
    top: 50%;
    left: 0;
    z-index: 1;
}

.salon-info-inner h2,
.salon-info-inner h3,
.salon-info-inner dl dt,
.salon-info-inner dl dd,
.salon-info-inner .text,
.salon-info-inner .tel a {
    font-size: 16px;
    color: #fff;
}

.salon-info-inner dl * {
    font-size: 16px;
}

.salon-info-inner .vertical-heading {
    margin-left: 0;
    position: absolute;
    top: 50px;
    left: 30px;
}

.salon-info-inner h2:after {
    background-color: #fff;
}

.salon-box {
    min-width: 360px;
    max-width: 80%;
    padding-left: 50px;
}

.salon-box h3 {
    margin-bottom: 30px;
    font-size: 20px;
}

.salon-info-inner dl {
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    margin-bottom: 15px;
}

.salon-info-inner dl dt {
    width: 40%;
}

.salon-info-inner dl dd {
    width: 60%;
}

.salon-info-inner .text {
    margin-top: 30px;
}

.salon-info-inner .tel a {
    font-size: 20px;
}

.salon-info-img img {
    width: 100%;
}

.salon-info-snslist {
    margin: 15px;
    position: absolute;
    bottom: 0;
    right: 0;
}

.salon-info-snslist li {
    margin: 5px;
    padding: 5px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    border-radius: 10px;
    background-color: #848383;
}

.salon-info-snslist li a {
    display: inline-block;
    vertical-align: middle;
}

.salon-info-snslist li .salonbtn {
    margin: 0;
    padding: 2px 5px;
    font-size: 14px;
}

.salon-info-snslist li img {
    vertical-align: middle;
}

.salon-access {
    margin: 100px 0;
}

.map-caption {
    font-size: 18px;
}

.salon-map {
    width: 100%;
    position: relative;
}

.salon-map:before {
    content: "";
    display: block;
    padding-top: 50%;
}

.salon-map iframe {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 1;
}

.salon-menu {
    margin: 150px 0;
}

.menu-box {
    -webkit-column-count: 2;
    -moz-column-count: 2;
    column-count: 2;
    -webkit-column-break-inside: avoid;
    -moz-column-break-inside: avoid;
    break-inside: avoid;
}

.menu-box-inner {
    width: 96%;
    margin: 0 2% 50px 2%;
    -webkit-column-break-inside: avoid;
    -moz-column-break-inside: avoid;
    break-inside: avoid;
}

.vertical-line-header {
    margin-bottom: 15px;
    padding-bottom: 50px;
    font-size: 20px;
    text-align: center;
    position: relative;
}

.vertical-line-header:after {
    content: "";
    width: 1px;
    height: 40px;
    display: block;
    border-right: 1px solid #000;
    position: absolute;
    left: 50%;
    right: 50%;
}

.menu-text {
    margin-bottom: 15px;
    font-size: 13px;
}

.menu-list {
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin-bottom: 10px;
    padding-bottom: 5px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    border-bottom: 2px dotted #b0aeaa;
}

.menu-list dt {
    padding-right: 30px;
}

.menu-more-btn {
    margin-top: 10px;
    text-align: right;
}

.menu-more-btn a {
    padding-right: 85px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    position: relative;
}

.menu-more-btn a:after {
    content: "";
    width: 75px;
    height: 5px;
    display: block;
    margin: auto;
    border-bottom: 1px solid #000;
    border-right: 1px solid #000;
    -webkit-transform: translate(0, -50%) skew(60deg);
    transform: translate(0, -50%) skew(60deg);
    position: absolute;
    top: 50%;
    right: 5%;
}

.lightbox-cont .pic {
    display: none;
}

.lightbox-cont .pic[data-element-id] {
    display: block;
}

.lightbox-cont .pic[data-element-id]:before {
    content: "AVEDA colorとはの画像はこちらから編集してください";
    display: block;
    padding: 5px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    background-color: #dcdcdc;
}

.salon-page .qa {
    padding-bottom: 100px;
}

.salon-page .qa:after {
    bottom: 5%;
}

.salon-staff-box {
    margin: 100px 0;
}

.salon-staff-list {
    padding: 0 30px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

.salon-staff-list li {
    width: 20%;
    margin: 30px;
    -webkit-box-shadow: 4px 6px 14px -8px #696969;
    box-shadow: 4px 6px 14px -8px #696969;
}

.salon-staff-list li a {
    height: 100%;
}

.salon-staff-list .salon-staff-list-li {
    margin: 10px;
    -webkit-box-shadow: 4px 6px 14px -8px #696969;
    box-shadow: 4px 6px 14px -8px #696969;
}

.salon-staff-list li a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
}

.salon-staff-list li a .pic {
    width: calc(100% - 20px);
}

.salon-staff-list li a .salon-staff-info {
    width: 20px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
}

.salon-staff-position,
.salon-staff-name {
    display: block;
    padding: 10px 0;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    color: #fff;
    -ms-writing-mode: tb-rl;
    -webkit-writing-mode: vertical-rl;
    writing-mode: vertical-rl;
}

.salon-staff-position {
    background-color: #333;
}

.salon-staff-name {
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    background-color: #595856;
}

.salon-staff-list .slick-prev {
    left: 15px;
}

.salon-staff-list .slick-next {
    right: 15px;
}

.slick-dots li {
    width: auto;
}

@media (max-width: 1024px) {
    .salon-info-inner {
        width: 100%;
        height: 65%;
        padding-bottom: 0;
        -webkit-transform: translate(0, 0);
        transform: translate(0, 0);
        top: initial;
        bottom: 0;
    }

    .salon-info-inner .vertical-heading {
        top: 10px;
    }

    .salon-box h3 {
        margin-bottom: 10px;
        font-size: 18px;
    }

    .salon-info-inner dl {
        margin-bottom: 5px;
    }

    .salon-info-inner dl dt,
    .salon-info-inner dl dd {
        font-size: 14px;
    }

    .salon-info-inner dl dt {
        width: 30%;
    }

    .salon-info-inner dl dd {
        width: 70%;
    }

    .salon-info-inner .text {
        margin-top: 5px;
        padding: 5px 0;
    }

    .salon-info-img .trimmingInner {
        padding-top: 60% !important;
    }

    .salon-staff-list {
        padding: 0;
    }

    .salon-staff-list li {
        /*         width: calc(25% - 20px);
 */
        margin: 10px;
    }
}

@media (max-width: 599px) {
    .salon-page .pic {
        width: 100%;
    }

    .concept .inner,
    .salon-page .inner {
        padding-left: 30px;
    }

    .salon-page .inpagenav {
        padding: 15px 0;
    }

    .salon-info-inner {
        padding: 55px 15px 70px 15px;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        position: static;
    }

    .after-object6:after {
        height: 180px;
        right: -230%;
    }

    .salon-access {
        margin: 30px 0;
    }

    .menu-box {
        -webkit-column-count: 1;
        -moz-column-count: 1;
        column-count: 1;
    }

    .salon-staff-list li {
        width: 44%;
        margin: 0 3% 6% 3%;
    }

    .sslide .slick-dots li {
        width: auto;
    }

    .salon-info-inner .vertical-heading {
        left: 0;
    }

    .salon-info-inner dl * {
        font-size: 14px;
    }

    .salon-info-inner .text {
        font-size: 14px;
    }
}

/* abie nishioshima end */
/* ##### 店舗ページ end ##### */

/* ##### salon ##### */
.salon li {
    margin-bottom: 30px;
}

.salonpic {
    position: relative;
}

.salonpic:hover {
    opacity: 0.5;
    -webkit-transition: ease-out 0.2s;
    transition: ease-out 0.2s;
}

.salonpic .pic {
    width: 100%;
}

.salonpic .pic img {
    width: 100%;
    height: 220px !important;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: 50% 50%;
    object-position: 50% 50%;
    font-family: "object-fit: cover; object-position: 50% 50%;";
}

.salon ul a {
    display: block;
}

.salon ul a:hover img {
    opacity: 0.5;
    -webkit-transition-timing-function: ease-out;
    transition-timing-function: ease-out;
    -webkit-transition-duration: 0.3s;
    transition-duration: 0.3s;
}

.salonspec {
    width: 220px;
    padding: 6px;
    font-family: "optitimes-romanregular";
    color: #f0ece4;
    text-align: right;
    background: url(/import/tenant_1/133.167.79.132/html/images/pattern/gallery.jpg) repeat;
    opacity: 0.8;
    -webkit-transform: rotate(-90deg);
    transform: rotate(-90deg);
    -webkit-transform-origin: bottom left;
    transform-origin: bottom left;
    position: absolute;
    bottom: 0;
    left: 33px;
    z-index: 1;
}

.salonspec:after {
    content: "";
    width: 21px;
    height: 1px;
    background: #fffcf5;
    position: absolute;
    top: 28px;
    right: 13px;
}

.salon_nane {
    margin: 15px 0;
    font-size: 18px;
    text-align: center;
}

.salon_detaillist {
    margin-bottom: 10px;
}

.salon_detaillist dt {
    width: 30%;
    height: -webkit-min-content;
    height: -moz-min-content;
    height: min-content;
    display: block;
    margin-right: 10px;
    padding: 0 10px;
    color: #f0ece4;
    text-align: center;
    background: url(/import/tenant_1/133.167.79.132/html/images/pattern/gallery.jpg) repeat;
}

.salon_detaillist dd {
    width: 60%;
}

.staff_detail_box .salon_detaillist dt {
    width: 30%;
}

.staff_detail_box .salon_detaillist dd {
    width: 65%;
}

.salon_detail {
    margin-top: 10px;
    text-align: center;
}

.tellist {
    display: block;
    margin-top: 10px;
}

.tellist .tel {
    font-size: 20px;
}

.snslist {
    margin-top: 20px;
}

.snslist li {
    padding-left: 10px;
}

.snslist li img {
    width: 100%;
    height: 35px !important;
    padding: 5px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    border-radius: 8px;
    background: #333;
}

.salonbtn {
    width: 100%;
    display: inline-block;
    margin: 10px auto auto;
    padding: 7px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    font-size: 18px;
    text-align: center;
    border: 1px solid #333;
    background: #fff;
    position: relative;
}

@media (max-width: 1024px) {
    .staff_detail_box .w60 {
        width: 93%;
        margin-left: auto;
        margin-right: auto;
    }

    .salon_detaillist {
        margin-bottom: 10px !important;
    }
}

@media (max-width: 599px) {
    .staff_detail_box .salon_detaillist dt {
        width: 100%;
        margin: 0 0 10px 0;
    }

    .staff_detail_box .salon_detaillist dd {
        width: 100%;
    }
}

/* ##### salon end ##### */

/* ##### moistine-sumiyoshi ##### */
.moistine-sumiyoshi .howto .pic {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    background: #fff;
    position: relative;
}

.moistine-sumiyoshi .howto .pic img {
    padding: 20px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

.horn:before {
    content: "";
    width: 65px;
    height: 65px;
    background: linear-gradient(225deg, #f0ece4 0%, #f0ece4 50%, transparent 50%, transparent 100%);
    position: absolute;
    right: 0;
}

.visiting {
    margin: 150px 0;
}

.visiting h3 {
    margin-bottom: 58px;
    font-weight: normal;
    font-size: 18px;
    position: relative;
}

.visiting h3:after {
    content: "";
    width: 90%;
    height: 8px;
    display: block;
    background: url(/import/tenant_1/133.167.79.132/html/images/pattern/gallery.jpg) repeat;
    position: absolute;
    left: -27vw;
}

.visiting .five-list {
    padding-bottom: 70px;
}

.care ul {
    position: relative;
    z-index: 1;
}

.care ul li {
    padding: 20px;
    background: #fff;
}

.care ul li .name {
    margin-top: 15px;
    font-weight: bold;
    font-size: 18px;
    text-align: center;
}

.care ul li .gr {
    color: rgba(174, 169, 169, 255);
    text-align: center;
}

.care ul li .tar {
    text-align: right;
}

.care ul li figure {
    overflow: hidden;
    line-height: 0;
    position: relative;
}

.care ul li figure p img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: 50% 50%;
    object-position: 50% 50%;
    font-family: "object-fit: cover; object-position: 50% 50%;";
}

.care ul li figcaption {
    width: 100%;
    height: 100%;
    padding: 30px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    color: #fff;
    line-height: 160% !important;
    background: rgba(0, 0, 0, 0.6);
    opacity: 1;
    -webkit-transition: 0.3s;
    transition: 0.3s;
    position: absolute;
    top: -120%;
    left: 0;
    z-index: 2;
}

.care ul li figure:hover figcaption {
    top: 0;
    left: 0;
}

@media (max-width: 599px) {
    .care ul li.gr322 {
        width: 100%;
    }
}

/* ##### moistine-sumiyoshi end ##### */

/* ##### Anelaroom ##### */
.slincon a {
    display: inline-block;
    padding: 5px;
    color: #fff;
    background: url(/import/tenant_1/133.167.79.132/html/images/pattern/gallery.jpg) repeat;
}

.salon01 .conte_detail dt {
    position: relative;
}

.lessonbox {
    z-index: 1;
}

.lesson {
    position: relative;
}

.lesson .hd {
    position: absolute;
    top: 0;
    left: 5%;
}

.lesson_images {
    position: relative;
}

.lesson_images .pagename {
    width: 50%;
    padding: 5px 0px;
    font-size: 18px;
    position: absolute;
    top: -10%;
    left: 0;
}

.lesson_detail {
    width: 80%;
    margin: -60px auto auto;
    padding: 50px;
    background: rgba(255, 255, 255, 0.8);
    position: relative;
    z-index: 1;
}

.lesson_detail .contact {
    width: 180px;
    display: block;
    font-family: "optitimes-romanregular", serif;
    font-size: 20px;
    color: #fff;
    text-align: center;
    background: #4e7e66;
    position: absolute;
    bottom: 0;
    right: 0;
}

.lesson_detail .contact:before {
    content: url(/import/tenant_1/133.167.79.132/html/images/anelaroom/mail.png);
    display: inline-block;
    padding: 5px 10px 5px;
}

.lesson_detail h4 {
    margin-bottom: 25px;
    font-weight: normal;
    font-size: 18px;
}

.lesson_spec {
    margin-top: 30px;
}

.lesson_spec .salon_detaillist dt {
    width: 20%;
}

.lesson_spec .salon_detaillist dd {
    width: 70%;
}

.lesson_teach {
    margin-top: 30px;
}

.use {
    margin: 0 -99999px;
    padding: 100px 99999px;
    background: url(/import/tenant_1/133.167.79.132/html/images/pattern/gallery.jpg) repeat;
}

.use p {
    color: #fff;
}

.use .tb {
    margin-top: 30px;
}

.use .tb dt,
.use .tb dd {
    width: 50%;
    padding: 5px 15px;
    color: #fff;
}

.use .tb dl {
    position: relative;
}

.use .tb dl:after {
    content: "";
    width: 1px;
    height: 100%;
    background: #fff;
    position: absolute;
    top: 0;
    left: 50%;
}

.use .tb .item {
    border-bottom: 1px solid #fff;
}

.use .tb .item:first-of-type {
    border-bottom: 1px solid #fff;
    position: relative;
}

.use .tb .item:first-of-type:after {
    content: "";
    width: 100%;
    height: 2px;
    background: #fff;
    position: absolute;
    bottom: 3px;
}

.use table tr {
    border-bottom: 3px solid #fff;
}

.use .pic span {
    border: #fff 5px solid;
}

.img02.pic {
    width: 38%;
    margin-top: 200px;
}

.important {
    position: relative;
}

.important .hd {
    position: absolute;
    top: 0;
    left: 5%;
}

/* form */
.form.room {
    margin-top: 70px;
}

.form.room dl {
    padding: 15px 0;
    border-bottom: 2px #b0aeaa dotted;
}

.radioli li {
    width: 40%;
}

.anela_room .inner {
    width: 92%;
    padding-left: 60px;
}

.anela_room .lesson {
    padding-top: 100px;
}

.anela_room .five-list li {
    min-height: 130px;
}

.anela_room .five-list li .text {
    padding-left: 30px;
}

.anela_room .conbtn1 {
    margin: 0 7px;
}

.anela_room .radio_check dd input[type="radio"] {
    background-color: #fff;
}

.anela_room .radio_check dd label {
    width: 40%;
    padding-left: 20px;
    padding-right: 20px;
    position: relative;
}

.anela_room .radio_check input:checked+label {
    color: #4e4540;
    text-decoration: underline;
}

.anela_room .radio_check dd label:before {
    content: "";
    width: 15px;
    height: 15px;
    display: block;
    border-radius: 50%;
    background-color: #fff;
    position: absolute;
    top: 5px;
    left: 0;
}

.anela_room .radio_check label:before {
    content: "";
    width: 15px;
    height: 15px;
    display: block;
    border: 1px solid #999;
    border-radius: 50%;
    position: absolute;
    top: 0;
    left: 0;
}

.anela_room .radio_check input:checked+label:after {
    content: "";
    width: 11px;
    height: 11px;
    display: block;
    border-radius: 50%;
    background: #4e4540;
    position: absolute;
    top: 8px;
    left: 3px;
}

.anela_room .radio_check input {
    display: none;
}

.anela_room .slincon a {
    margin-top: -7px;
}

form button {
    cursor: pointer;
}

.anela_room .slink li {
    font-size: 20px;
}

@media (max-width: 1024px) {
    .lesson_detail {
        width: 90%;
        margin: -30px auto auto;
        padding: 20px;
        padding-bottom: 50px;
    }

    .lesson_images .pic {
        width: 100%;
    }

    .anela_room .important {
        padding-bottom: 100px;
        position: relative;
    }

    .anela_room .conbtn1 {
        margin: 0 25px;
    }

    .anela_room .form dl textarea {
        width: 100%;
        height: 150px;
    }

    .anela_room .form dd input[type="text"],
    .form dd input[type="email"] {
        width: 100%;
    }

    .anela_room .slincon {
        width: 100%;
        margin-top: 20px;
        text-align: center;
    }

    .anela_room .slincon a {
        margin-top: 0;
        padding: 2px 3px;
    }
}

@media (max-width: 599px) {
    .anela_room .radio_check dd label {
        padding-right: 0;
    }

    .anela_room .use {
        padding: 40px 99999px;
    }

    .anela_room .slink li {
        padding: 0 9px;
    }

    .anela_room .slink li a {
        font-size: 13px;
    }

    .lesson_images .pagename {
        width: 80%;
    }

    .lesson_detail {
        width: 100%;
        margin: auto;
        padding: 20px;
        padding-bottom: 40px;
    }

    .lesson_images .pic {
        width: 100%;
    }

    .img02.pic {
        width: 38%;
        margin-top: 200px;
    }

    .anela_room .inner {
        width: 94%;
        max-width: 450px;
        padding-left: 0;
    }

    .anela_room .lesson_spec .salon_detaillist dt {
        width: 100%;
        margin-top: 20px;
        margin-bottom: 10px;
        margin-right: 0;
        padding: 3px;
    }

    .anela_room .img02.pic {
        width: 48%;
        margin-top: 30px;
    }

    .anela_room .use p.w60 {
        width: 48%;
        margin-top: 30px;
    }
}

/* ##### Anelaroom end ##### */

/* ##### staff ##### */
.staff_box {
    position: relative;
}

.staff_box .hd {
    position: absolute;
    top: 0;
    left: 5%;
}

.staff_spec {
    margin-top: 10px;
}

/* hover */
/*.staff_box li a img {
    -webkit-filter: grayscale(0);
    filter: grayscale(0);
    -webkit-transition: .3s ease-in-out; 
}*/

.staff_box li a :hover img {
    /*  -webkit-filter: grayscale(100%);
   filter: grayscale(100%); */
    opacity: 0.6;
    -webkit-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
}

.staff_spec p {
    font-size: 18px;
    text-align: center;
}

.staff_spec .alt {
    margin-top: 10px;
}

.staff_spec .roma {
    display: block;
    font-size: 14px;
    color: #999;
    letter-spacing: 2px;
}

.slink {
    margin-bottom: 50px;
}

@media (max-width: 1024px) {
    .slink {
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
    }
}

.slink li {
    margin-right: 25px;
    font-family: "optitimes-romanregular", "游明朝", "YuMincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝", "Sawarabi Mincho", serif;
    font-size: 18px;
}

.slink li a {
    display: block;
}

.slink li:last-of-type {
    margin-right: 0;
}

@media (max-width: 599px) {
    .slink li {
        /*         width: 48%;
 */
        margin-right: 0;
    }

    .staff_box .vertical-heading:after {
        left: 13%;
    }

    .slink li {
        padding: 0 9px;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
    }

    .slink li a {
        font-size: 13px;
    }
}

/*-------------------------------
	12.staff_detail
-------------------------------*/
#wrapper.staff_detail {
    margin-bottom: 0;
}

.staff_detail {
    /* margin-bottom: 150px; */
    margin-bottom: 100px;
    position: relative;
}

@media (max-width:599px) {
    .staff_detail {
        margin-top: 30px;
        margin-bottom: 30px;
    }

    .staff_detail .vertical-heading {
        width: 100%;
        padding-right: 15px;
    }

    .staff_detail .vertical-heading:after {
        margin: auto;
        -webkit-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%);
        top: 109%;
        left: 50%;
        right: 50%;
    }

    #wrapper.staff_detail {
        margin-top: 0;
    }
}

.staff_detail .hd {
    position: absolute;
    top: 0;
    left: 5%;
}

.staff_detail_box .w37 {
    position: relative;
    z-index: 1;
}

@media (max-width:1024px) {
    .staff_detail_box .w37 .pic {
        width: 80%;
        margin-left: auto;
        margin-right: auto;
    }
}

.staff_detail_box .w37:after {
    content: "";
    width: 50vw;
    height: 30vh;
    display: block;
    background: url(/import/tenant_1/133.167.79.132/html/images/pattern/staff.jpg) repeat;
    background-size: 8%;
    position: absolute;
    top: 30%;
    bottom: auto;
    right: 50%;
    z-index: -1;
}

@media (max-width: 1024px) {
    .staff_detail_box .w37:after {
        right: 70%;
    }
}

.staff_detail_box .staff_spec {
    -moz-text-align-last: left;
    text-align-last: left;
}

.staff_spec .sdname {
    font-size: 43px;
    border-bottom: 1px solid #333;
}

@media (max-width: 1024px) {
    .staff_detail_box .staff_spec {
        margin-top: 40px;
    }

    .staff_spec .sdname {
        font-size: 28px;
    }
}

@media (max-width: 599px) {
    .staff_spec .sdname {
        font-size: 22px;
    }

    .staff_detail_box .staff_spec {
        margin-top: 20px;
    }
}

.staff_detail_box .staff_spec .roma {
    padding-top: 5px;
    -moz-text-align-last: right;
    text-align-last: right;
}

.staff_txt {
    margin-top: 80px;
    color: #999;
}

@media (max-width: 1024px) {
    .staff_txt {
        margin-top: 30px;
    }
}

.speclist {
    margin-top: 80px;
}

@media (max-width: 599px) {
    .speclist {
        margin-top: 30px;
    }
}


.styling {
    padding-top: 50px;
    position: relative;
}

@media (max-width: 1024px) {
    .styling {
        padding-top: 0;
        padding-bottom: 100px;
    }
}

@media (max-width: 1024px) {
    .styling {
        padding-bottom: 50px;
    }
}

.styling .hd {
    position: absolute;
    top: 0;
    left: 5%;
}

.staff_detail .staff_gallery {
    padding-bottom: 30px;
}

.btn {
    font-size: 18px;
}

.btn a {
    display: block;
}

.back {
    width: 200px;
    max-width: 100%;
    display: block;
    margin: auto;
    padding-left: 100px;
    font-size: 18px;
    color: #333;
    position: relative;
}

.back:after {
    /* content: "";
    position: absolute;
    width: 40px;
    height: 3px;
    top: 50%;
    right: 10%;
    border-bottom: 1px solid #333;
    border-right: 2px solid #333;
    -webkit-transform: skew(70deg);
    transform: skew(70deg);
    -webkit-transform: skew(70deg);
    transform: skew(70deg);
    -webkit-transition: all .3s;
    transition: all .3s; */
    content: "";
    width: 40px;
    height: 3px;
    border-bottom: 1px solid #333;
    border-right: 2px solid #333;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
    -webkit-transform: rotateY(180deg) skew(70deg);
    transform: rotateY(180deg) skew(70deg);
    position: absolute;
    top: 50%;
    left: 10%;
}

.back:hover:after {
    left: 0%;
}

.next_arrow {
    width: 200px;
    max-width: 100%;
    display: block;
    margin: auto;
    font-size: 18px;
    color: #333;
    position: relative;
}

.next_arrow:after {
    content: "";
    width: 40px;
    height: 3px;
    border-bottom: 1px solid #333;
    border-right: 2px solid #333;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
    -webkit-transform: skew(70deg);
    -webkit-transform: skew(70deg);
    transform: skew(70deg);
    transform: skew(70deg);
    position: absolute;
    top: 50%;
    right: 10%;
}

.next_arrow:hover:after {
    right: 0%;
}

.prev {
    width: 200px;
    max-width: 100%;
    display: block;
    margin: auto;
    font-size: 18px;
    color: #333;
    position: relative;
}

.prev:before {
    content: "";
    width: 40px;
    height: 3px;
    border-bottom: 1px solid #333;
    border-right: 2px solid #333;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
    -webkit-transform: rotateY(180deg) skew(70deg);
    transform: rotateY(180deg) skew(70deg);
    position: absolute;
    top: 50%;
    left: 10%;
}

.prev:hover:before {
    left: 0%;
}

@media (max-width: 599px) {
    .back:after {
        width: 20px;
        height: 3px;
        top: 50%;
        right: 0;
    }

    .prev:before {
        width: 20px;
        height: 3px;
        top: 50%;
        left: 10%;
    }
}

/* ##### staff end ##### */

/* ##### collection ##### */
.slide_detail {
    height: auto;
    overflow: hidden;
    position: relative;
}

.slide_detail .hd {
    position: absolute;
    top: 5%;
    left: 6%;
}

.slide_detail_c {
    max-width: initial;
    height: 100%;
}

.slideinfo {
    position: relative;
}

.slideinfo:nth-of-type(even) {
    margin: 120px 0;
}

.slideinfo:last-of-type {
    margin-bottom: 0 !important;
}

.slideinfo ul.slider4 {
    width: 60%;
}

.slideinfo ul li.slider_c {
    height: 100%;
}

.slideinfo .slick-dots {
    text-align: right;
    position: absolute;
    top: 45vh;
    right: 50px;
}

.slideinfo .slick-dots li {
    background: #f0ece4;
}

.slideinfo .slick-dots .slick-active {
    background: #333;
}

.slide_detail dl {
    width: 40%;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -ms-flex-line-pack: center;
    -webkit-box-align: center;
    align-items: center;
    -ms-flex-align: center;
    padding: 40px 40px 40px 130px;
    background: url(/import/tenant_1/133.167.79.132/html/images/pattern/gallery.jpg) repeat;
    opacity: 1;
}

.slide_detail dt,
.slide_detail dd {
    color: #fff;
    text-align: center;
}

.slide_detail dt {
    margin-top: 18px;
    font-size: 30px;
}

.slick-slider .slick-list,
.slick-track,
.slider_c .pic {
    width: 100%;
    height: 100%;
}

@media (max-width: 1024px) {
    .slideinfo .hd {
        top: 2%;
    }

    .slideinfo ul li {
        max-width: inherit;
    }

    .slide_detail {
        width: 100%;
        max-width: inherit !important;
        position: relative;
    }

    .slideinfo:nth-of-type(even) {
        margin: 60px 0;
    }
}

@media (max-width: 599px) {
    .slide_detail dl {
        width: 100%;
        max-width: inherit;
        height: auto;
        padding: 20px 20px 20px 130px;
    }

    .slideinfo ul.slider4 {
        width: 100%;
    }

    .slide_detail,
    .slide_detail_c {
        height: auto;
    }
}

/* ##### collection end ##### */

/* ##### gallery ##### */
.w20 {
    width: 20%;
    overflow: hidden;
    position: relative;
}

.w20 a {
    display: block;
}

.w20 .pic img {
    width: 100%;
    height: 100%;
    height: 280px !important;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: 50% 50%;
    object-position: 50% 50%;
    font-family: "object-fit: cover; object-position: 50% 50%;";
}

.w20 .gallery_spec {
    width: 100%;
    height: 100%;
    padding: 10px;
    text-align: center;
    background: rgba(240, 236, 228, 0.8);
    opacity: 1;
    -webkit-transition: 0.3s;
    transition: 0.3s;
    position: absolute;
    top: -100%;
    left: 0;
    z-index: 2;
}

.w20 a:hover .gallery_spec {
    width: 100%;
    height: 100%;
    -webkit-box-align: center;
    align-items: center;
    -ms-flex-align: center;
    top: 0;
    left: 0;
}

.spe {
    position: relative;
}

.spe:before {
    content: "";
    width: 1px;
    height: 30px;
    background: #333;
    position: absolute;
    top: -50px;
}

.spe p {
    text-align: center;
}

.gallery .main-image {
    width: 100%;
    margin-bottom: 15px;
}

.gallery .thumb-img {
    width: calc(33.33333% - 10px);
    -webkit-transition: 0.3s linear;
    transition: 0.3s linear;
}

.gallery .thumb-img:nth-of-type(3) {
    margin: 0 15px;
}

.gallery .thumb-img:hover {
    opacity: 0.8;
    cursor: pointer;
}


@media (max-width: 1024px) {
    .w20 {
        width: 33.333%;
    }
}

@media (max-width: 599px) {
    .gallery_spec {
        display: none;
    }

    .gallery .pic {
        width: 100%;
    }
}

/* ページネーション */
.page {
    margin-top: 120px;
    font-family: "optitimes-romanregular";
}

.page li a {
    display: block;
    padding: 0 10px;
    font-size: 18px;
}

@media (max-width: 599px) {
    .page {
        margin-top: 40px;
    }
}


.return {
    position: relative;
}

.return a {
    width: 76px;
    height: 100%;
}

.return:after {
    content: "";
    width: 100%;
    height: 5px;
    border-bottom: 1px solid #333;
    border-right: 2px solid #333;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
    -webkit-transform: skew(70deg);
    -webkit-transform: rotateY(180deg) skew(50deg);
    transform: skew(80deg);
    transform: rotateY(180deg) skew(50deg);
    position: absolute;
    top: 50%;
    right: 0;
}

.next {
    position: relative;
}

.next a {
    width: 76px;
    height: 100%;
}

.return:hover:after {
    right: 10%;
}

.next:after {
    content: "";
    width: 100%;
    height: 5px;
    border-bottom: 1px solid #333;
    border-right: 2px solid #333;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
    -webkit-transform: skew(70deg);
    -webkit-transform: rskew(50deg);
    -webkit-transform: skew(50deg);
    transform: skew(80deg);
    transform: skew(50deg);
    position: absolute;
    top: 50%;
    left: 0;
}

.next:hover:after {
    left: 10%;
}

@media (max-width: 599px) {
    .w20 .pic {
        width: 100% !important;
        margin: 0 auto;
    }

    .w20 .pic img {
        width: 100%;
        /* height: 100px !important; */
        height: 150px !important;
        -o-object-fit: cover;
        object-fit: cover;
        -o-object-position: 50% 50%;
        object-position: 50% 50%;
        font-family: "object-fit: cover; object-position: 50% 50%;";
    }

    .next a {
        width: auto;
    }

    .return a {
        width: auto;
    }
}

/* ##### gallery end ##### */

/* ##### gallery_detail ##### */
.gallerybox .sfattbox {
    background-color: #f0ece4;
}

.gallerybox .sinfo .btnarea {
    margin-top: 80px;
}

@media (max-width: 599px) {
    .gallerybox .sinfo .btnarea {
        margin-top: 20px;
    }
}


.gallerybox .speclist {
    margin-bottom: 80px;
}

@media (max-width: 599px) {
    .gallerybox .speclist {
        margin-top: 30px;
        margin-bottom: 30px;
    }
}

.gallerybox .btnarea li span {
    display: inline-block;
}

.gallerybox .sinfo .btnarea li a {
    width: auto;
    margin-bottom: 8px;
    margin-right: 0;
}

.gallerybox .sinfo .btnarea li:last-of-type a {
    margin-bottom: 0;
}

.gallerybox .sinfo .btnarea li {
    margin-left: auto;
    margin-right: 0;
    margin-bottom: 150px;
}

.staff_detail_box.gallerybox {
    /* margin-bottom: 150px; */
    position: relative;
}

.staff_detail_box.gallerybox:after {
    position: relative;
}

.staff_detail_box.gallerybox .w37:after {
    height: 30vh;
    background: url("/import/tenant_1/133.167.79.132/html/images/pattern/texture.jpg") repeat;
    top: 35%;
    bottom: auto;
    right: 50%;
}

.staff_detail_box.gallerybox .w60 {
    position: relative;
    z-index: 1;
}

.staff_detail_box.gallerybox .w60:after {
    content: "";
    width: 50vw;
    height: 50vh;
    height: 20vh;
    display: block;
    background: url("/import/tenant_1/133.167.79.132/html/images/pattern/texture.jpg") repeat;
    background-size: cover;
    position: absolute;
    top: 83%;
    bottom: -20%;
    bottom: auto;
    left: 88%;
    z-index: -1;
}

@media (max-width: 1024px) {
    .staff_detail_box.gallerybox .w37:after {
        right: 67%;
    }

    .staff_detail_box.gallerybox .w37 .pic {
        width: 80%;
        margin-left: auto;
        margin-right: auto;
    }

    .staff_detail_box.gallerybox {
        margin-bottom: 40px;
    }

    .staff_detail_box.gallerybox .w60:after {
        top: 56%;
    }
}

@media (max-width: 599px) {
    .staff_detail_box.gallerybox .w60:after {
        top: 85%;
    }
}

.sfattbox {
    padding: 30px 15px;
    border: 1px solid #333;
}

.sfattbox .pic {
    width: 30%;
}

.sinfo {
    width: 68%;
}

.sinfo .infoname {
    font-size: 16px;
}

.sinfo .btnarea {
    width: 100%;
}

.sinfo .btnarea li a {
    width: 100px;
    display: block;
    margin-right: 10px;
    padding: 0 10px;
    color: #f0ece4;
    text-align: center;
    background: url(/import/tenant_1/133.167.79.132/html/images/pattern/gallery.jpg) repeat;
}

.pagebtn {
    width: 80%;
    margin: auto;
}

.pagebtn li {
    width: 30%;
    text-align: center;
}


@media (max-width: 1024px) {
    .pagebtn {
        width: 100%;
        margin: auto;
    }
}

@media (max-width: 599px) {
    .pagebtn li {
        width: 100%;
        margin: 0.5em 0;
    }
}

/*---------- reccomend ----------*/

.g_reccomend {
    margin: 200px -9999px 0;
    padding: 50px 9999px;
    background: url(/import/tenant_1/133.167.79.132/html/images/pattern/gallery.jpg) repeat;
    position: relative;
}

.g_reccomend .hd {
    position: absolute;
    top: 30%;
    left: 5%;
}

@media (max-width: 1024px) {
    .sfattbox {
        margin-top: 50px !important;
    }

    .g_reccomend {
        margin: 200px -9999px 0;
        padding: 38px 10049px;
    }
}

@media (max-width: 599px) {
    .sfattbox .pic {
        width: 100%;
    }

    .sinfo {
        width: 100%;
        margin-top: 20px !important;
    }

    .g_reccomend {
        margin: 50px -9999px 0;
        padding: 38px 10009px;
    }
}

/* ##### gallery_detail end ##### */

/* ##### product ##### */
.product {
    position: relative;
}

.product .hd {
    position: absolute;
    top: 0;
    left: 5%;
}

.productname {
    font-size: 30px;
    position: relative;
}

.productname:after {
    content: "";
    width: 33px;
    height: 2px;
    background: #333;
    position: absolute;
    bottom: -5px;
    left: 0;
}

.product_txt {
    margin-top: 30px;
}

.productlist {
    margin-top: 80px;
}

.productlist .salon_detaillist {
    padding-bottom: 15px;
    border-bottom: 2px #b0aeaa dotted;
}

.productbox .staff_detail_box .w37:after {
    content: "";
    width: 65vw;
    height: 30vh;
    display: block;
    background: url(/import/tenant_1/133.167.79.132/html/images/pattern/texture.jpg) repeat;
    background-size: 8%;
    position: absolute;
    top: 20%;
    left: 60px;
    z-index: -1;
}

.productbox .staff_detail_box.gallerybox .w60:after {
    display: none;
}

.productbox .pic {
    border: #333 1px solid;
}

.commitment {
    position: relative;
    z-index: 1;
}

.commitment .hd {
    position: absolute;
    top: 0;
    left: 5%;
}

.commitment .concept_bg {
    margin-left: 0;
    position: relative;
}

.commitment .concept_bg:after {
    content: "";
    width: 65vw;
    height: 100%;
    display: block;
    position: absolute;
    top: 0;
    left: -65vw;
    z-index: -1;
}

.commitment .con {
    margin-bottom: 30px;
}

.commitment .box:not(:last-of-type) {
    margin-bottom: 30px;
}

.commitment .box h3 {
    margin-bottom: 20px;
    font-size: 22px;
}

.commitment .box h4 {
    font-size: 18px;
}

.commitment .box dl:not(:last-of-type) {
    margin-bottom: 30px;
}

.commitment .box dt {
    margin-bottom: 10px;
    font-size: 16px;
    color: #927d1e;
}

.commitment .box dd {
    padding-left: 2em;
}

.commitment .box .free {
    margin-top: 20px;
    padding: 15px;
    border: solid 3px;
    border-radius: 10px;
}

.commitment .box .free li {
    min-width: 17%;
    display: inline-block;
    margin: 1%;
    font-weight: bold;
}

.commitment .box .right {
    padding: 10px;
    background: #fff;
}

.shopbunner {
    display: block;
    border: 3px solid #333;
    position: relative;
    z-index: 1;
}

.bunner_in {
    height: 100%;
    overflow: hidden;
    position: relative;
}

.bunner_info {
    width: 100%;
    height: 100%;
    position: absolute;
    z-index: 2;
}

.bunner_info:after {
    content: "";
    width: 0;
    height: 0;
    border-width: 163px 0 0 1000px;
    border-style: solid;
    border-color: transparent transparent transparent #333;
    position: absolute;
    top: 0px;
    z-index: 1;
}

.bunner_info p {
    padding-left: 20px;
    font-size: 30px;
    color: #fff;
    position: relative;
    z-index: 2;
}

.bunner_info p:after {
    content: "";
    width: 40%;
    height: 5px;
    margin-left: 20px;
    border-bottom: 1px solid #fff;
    border-right: 2px solid #fff;
    -webkit-transform: skew(70deg);
    -webkit-transform: rskew(50deg);
    -webkit-transform: skew(50deg);
    transform: skew(80deg);
    transform: skew(50deg);
    position: absolute;
    bottom: 20px;
    left: 100%;
}

.bunner_info p span {
    display: block;
    font-size: 18px;
}

.shopbunner .pic {
    height: 140px;
    overflow: hidden;
}

.shopbunner .pic img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: 50% 50%;
    object-position: 50% 50%;
    font-family: "object-fit: cover; object-position: 50% 50%;";
    position: relative;
    z-index: 1;
}

@media (max-width: 1024px) {
    .productbox {
        padding-left: 40px;
    }

    .productbox .vertical-heading {
        margin-left: -40px;
    }

    .productbox .staff_detail_box .w37:after {
        width: 85vw;
        left: 160px;
    }

    .staff_detail_box.gallerybox .w60 {
        margin-bottom: 40px;
    }

    .pro_com {
        padding-left: 58px;
    }

    .pro_com h4 {
        margin-top: 20px;
    }
}


@media (max-width: 599px) {
    .productname {
        font-size: 22px;
        text-align: center;
    }

    .productname:after {
        content: "";
        width: 33px;
        height: 2px;
        background: #333;
        -webkit-transform: translateX(-50%);
        transform: translateX(-50%);
        position: absolute;
        bottom: -5px;
        left: 50%;
    }

    .productbox {
        padding-left: 0;
    }

    .pro_com {
        padding-left: 0px;
    }

    .productbox .vertical-heading {
        margin-left: 0px;
        padding-left: 0;
    }

    .productbox .vertical-heading:after {
        left: 8%;
    }

    .commitment .concept_bg {
        width: 100%;
    }

    .pro_com .vertical-heading:after {
        left: 3%;
    }

    .commitment .con {
        margin-bottom: 0;
    }
}

/* ##### product end ##### */

/* ##### news-blog ##### */
.bloglist {
    background: #fff;
}

.blog_spec {
    padding: 30px 10px;
}

.bspe p {
    text-align: center;
}

.title {
    margin: 10px 0;
    font-size: 16px;
}

@media (max-width: 599px) {
    .blog_box .blog_spec .title {
        height: auto !important;
    }
}

.cada {
    color: #c4c1ba;
}

.bloglist a {
    display: block;
}

.bloglist a:hover {
    opacity: 1;
}

figure {
    margin: 0;
}

.bloglist figure {
    width: 100%;
    height: auto;
    position: relative;
}

.bloglist figcaption {
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0);
    opacity: 1;
    -webkit-transition: 0.3s;
    transition: 0.3s;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 0;
}

.bloglist figcaption .inner-fig {
    width: 100%;
    height: 100%;
    display: block;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    align-items: center;
    -ms-flex-align: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin: 0%;
    position: relative;
}

.bloglist figcaption .inner-fig .outer-line {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
}

.bloglist figcaption .inner-fig .line {
    width: 100%;
    height: 100%;
    position: relative;
}

.bloglist figcaption .inner-fig .line .lines {
    background-color: #c4c1ba;
    position: absolute;
}

.bloglist figcaption .inner-fig .line .line-top {
    width: 0;
    height: 2px;
    -webkit-transition-delay: 0.3s;
    transition-delay: 0.3s;
    -webkit-transition-timing-function: ease-in-out;
    transition-timing-function: ease-in-out;
    -webkit-transition-duration: 0.5s;
    transition-duration: 0.5s;
    top: 0;
    left: 0;
    z-index: 1;
}

.bloglist figcaption .inner-fig .line .line-right {
    width: 2px;
    height: 0;
    -webkit-transition-delay: 0.45s;
    transition-delay: 0.45s;
    -webkit-transition-timing-function: ease-in-out;
    transition-timing-function: ease-in-out;
    -webkit-transition-duration: 0.5s;
    transition-duration: 0.5s;
    top: 0;
    right: 0;
}

.bloglist figcaption .inner-fig .line .line-bottom {
    width: 0;
    height: 2px;
    -webkit-transition-delay: 0.6s;
    transition-delay: 0.6s;
    -webkit-transition-timing-function: ease-in-out;
    transition-timing-function: ease-in-out;
    -webkit-transition-duration: 0.5s;
    transition-duration: 0.5s;
    bottom: 0;
    right: 0;
}

.bloglist figcaption .inner-fig .line .line-left {
    width: 2px;
    height: 0;
    -webkit-transition-delay: 0.75s;
    transition-delay: 0.75s;
    -webkit-transition-timing-function: ease-in-out;
    transition-timing-function: ease-in-out;
    -webkit-transition-duration: 0.5s;
    transition-duration: 0.5s;
    bottom: 0;
    left: 0;
}

.bloglist .line .line-top,
.bloglist .line .line-bottom {
    height: 3px;
}

.bloglist.line .line-right,
.bloglist.line .line-left {
    width: 3px;
}

.bloglist a:hover .line .line-top,
.bloglist a:hover .line .line-bottom {
    width: 100%;
    height: 3px;
}

.bloglist a:hover .line .line-right,
.bloglist a:hover .line .line-left {
    width: 3px;
    height: 100%;
}

.blog .page {
    margin-top: 30px;
}

.archive {
    width: 50%;
    padding-top: 100px;
}

.archivehead {
    font-family: "optitimes-romanregular";
    position: relative;
}

.archivehead:after {
    content: "";
    width: 33px;
    height: 1px;
    background: #333;
    position: absolute;
    bottom: 0;
    left: 0;
}

.archivelist li {
    width: 25%;
    margin-bottom: 20px;
    font-family: "optitimes-romanregular";
    font-size: 18px;
}

@media (max-width: 1024px) {
    .archive {
        width: 100%;
    }
}

/* ##### news-blog end ##### */

/* ##### news-blog_detail ##### */
.nb .hd {
    position: absolute;
    top: 35%;
    left: 5%;
}

.blogbox {
    margin: 60px 0px;
    padding: 60px 100px;
    background: #fff;
}

.blogbox .bspe {
    padding-bottom: 30px;
    border-bottom: 2px #b0aeaa dotted;
}

.blogtxt {
    margin: 60px 0;
    line-height: 2;
}

.blogtxt img {
    display: block;
    margin: 30px 0;
}


@media (max-width: 1024px) {
    .blogbox {
        margin: 60px 0px;
        padding: 30px 50px;
    }
}

@media (max-width: 599px) {
    .blogbox {
        margin: 60px 0px;
        padding: 30px 40px;
    }

    .blogtxt img {
        margin: 20px auto;
    }

    .blogRecommend {
        margin-bottom: 0;
    }

    .blogRecommend .g_reccomend_in {
        text-align: center;
    }

    .blogRecommend .vertical-heading.wh:after {
        left: 50%;
    }

    .blogRecommend .bloglist {
        width: 100%;
    }

    .blogRecommend .g_reccomend_in .title {
        height: auto !important;
    }
}

/* ##### news-blog_detail end ##### */

/* ##### recruit ##### */
/* 共通 */
.recruit .inner {
    padding-left: 60px;
}

.text {
    padding: 5px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    font-weight: bold;
}

/* after-object */
.after-object1,
.after-object2,
.after-object3,
.after-object4,
.after-object5,
.after-object6 {
    position: relative;
}

.after-object1:after,
.after-object2:after,
.after-object3:after,
.after-object4:after,
.after-object5:before,
.after-object5:after,
.after-object6:after,
.after-object7:after {
    content: "";
    width: 100%;
    height: 100%;
    display: block;
    background-size: auto 100%;
    background-repeat: repeat;
    background-position: center center;
    position: absolute;
}

.after-object1:after {
    background-image: url(/import/tenant_1/133.167.79.132/html/images/recruit/bg.jpg);
    top: 0;
    right: -100%;
}

.after-object2:after {
    background-image: url(/import/tenant_1/133.167.79.132/html/images/common/tile_square.jpg);
    top: 50%;
    right: -50%;
    z-index: -1;
}

.after-object3:after {
    width: 830px;
    height: 360px;
    background-image: url(/import/tenant_1/133.167.79.132/html/images/common/tile_rectangle_w833.jpg);
    background-size: cover;
    -webkit-transform: translate(50%, 0);
    transform: translate(50%, 0);
    top: -5%;
    right: 110%;
}

.after-object4:after {
    width: 600px;
    height: 300px;
    background-image: url(/import/tenant_1/133.167.79.132/html/images/common/tile_rectangle_w833.jpg);
    background-size: cover;
    -webkit-transform: translate(50%, 0);
    transform: translate(50%, 0);
    top: -5%;
    right: 120%;
}

.after-object5:before {
    width: 970px;
    height: 200px;
    background-image: url(/import/tenant_1/133.167.79.132/html/images/recruit/bg2.jpg);
    background-size: cover;
    top: -5%;
    right: -50%;
}

.after-object5:after {
    width: 970px;
    height: 200px;
    background-image: url(/import/tenant_1/133.167.79.132/html/images/recruit/bg2.jpg);
    background-size: cover;
    bottom: -5%;
    left: -50%;
}

.after-object6:after {
    width: 850px;
    height: 320px;
    background-image: url(/import/tenant_1/133.167.79.132/html/images/common/tile_square02_shop.jpg);
    background-size: cover;
    top: 50%;
    right: -50%;
}

.after-object7:after {
    background-image: url(/import/tenant_1/133.167.79.132/html/images/recruit/bg.jpg);
    top: 0;
    left: -100%;
}

/* after-object end */

.dot-border {
    border-bottom: 3px dotted #b0aeaa;
}

.recruit-box {
    -webkit-box-align: start;
    align-items: flex-start;
    -ms-flex-align: start;
    margin: 100px 0;
}

.vertical-heading {
    width: auto;
    display: inline-block;
    margin-left: -60px;
    font-family: "optitimes-romanregular", serif;
    font-weight: normal;
    font-size: 22px;
    letter-spacing: 1px;
    text-align: center;
    -webkit-transform: rotate(270deg) translate(-100%, 0);
    transform: rotate(270deg) translate(-100%, 0);
    -webkit-transform-origin: top left;
    transform-origin: top left;
    position: relative;
    z-index: 3;
}

.vertical-heading:after {
    content: "";
    width: 33px;
    height: 3px;
    display: inline-block;
    margin: auto;
    background-color: #000;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    position: absolute;
    top: 100%;
    left: 70%;
    right: 50%;
}

.vertical-heading.no:after {
    left: 63%;
}

.vertical-heading.wh {
    color: #fff;
}

.vertical-heading.wh:after {
    background: #fff;
}

.recruit-heading {
    font-weight: bold;
    font-size: 26px;
    position: relative;
}

.recruit-heading:after {
    content: "";
    width: 33px;
    height: 3px;
    display: inline-block;
    margin: auto;
    background-color: #000;
    -webkit-transform: translate(0, -50%);
    transform: translate(0, -50%);
    position: absolute;
    top: 100%;
    left: 0;
}

.heading-under {
    display: block;
    font-weight: bold;
    font-size: 16px;
}

.inpagenav {
    padding: 100px 0;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

.inpagenav-list {
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
}

.inpagenav-list li {
    padding: 0 15px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

.inpagenav-list li a {
    font-weight: bold;
    font-size: 20px;
}

@media (max-width: 1024px) {
    .after-object2:after {
        top: 20%;
    }

    .after-object6:after {
        height: 250px;
        top: 10%;
        right: -110%;
    }

    .inpagenav {
        padding: 70px 0;
    }

    .inpagenav-list {
        -webkit-box-align: center;
        align-items: center;
        align-items: center;
        -ms-flex-align: center;
        -ms-flex-align: center;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
    }

    .inpagenav-list li {
        margin-bottom: 10px;
        padding: 0 9px;
    }
}

@media (max-width: 599px) {
    .vertical-heading {
        margin-bottom: 30px;
        /*  -webkit-transform: rotate(0deg) translate(0, 0);
       transform: rotate(0deg) translate(0, 0); */
        margin-left: -30px;
        padding-left: 15px;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        font-size: 12px;
    }

    .after-object3:after {
        right: 140%;
    }

    .after-object5:before {
        right: -210%;
    }

    .after-object5:after {
        left: -210%;
    }

    .inpagenav {
        padding: 80px 0 15px 0;
    }

    .inpagenav-list {
        margin: 30px 0;
    }

    .inpagenav-list li a {
        font-size: 13px;
    }
}

/* 共通 end */

.recruit-intro {
    position: relative;
}

.recruit-intro .pic {
    position: relative;
    z-index: 1;
}

.recruit-intro .pic {
    width: 70%;
    margin-left: auto;
}

.recruit-intro h2 {
    margin: auto;
    font-size: 20px;
    color: #927d1e;
    text-align: center;
    -webkit-transform: translate(0, -50%);
    transform: translate(0, -50%);
    position: absolute;
    top: 70%;
    left: 10%;
    z-index: 2;
}

.recruit-intro h2 .small {
    display: block;
    font-size: 80%;
    line-height: 120%;
}

.greeting .pic {
    position: relative;
    z-index: 1;
}

.greeting .recruit-heading {
    margin-bottom: 10px;
}

.greeting .heading-under {
    margin-bottom: 50px;
}

.sign {
    float: right;
    margin-top: 50px;
}

.five-element {
    margin-top: 250px;
}

.five-list {
    -webkit-box-align: start;
    align-items: flex-start;
    -ms-flex-align: start;
}

.five-list li {
    width: calc(100% / 5 - 24px);
    min-height: 200px;
    margin-right: 30px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    position: relative;
}

/* タイトルだけ */
.five-list.tit li {
    min-height: 150px;
}

/* 6個 */
.five-list.six li {
    width: calc(100% / 6 - 24px);
    margin-right: 28px;
    /* background: #fff; */
}

.five-list li:nth-of-type(odd) {
    padding: 25px 10px 55px 10px;
    -webkit-animation-name: pointanime;
    animation-name: pointanime;
    -webkit-animation-duration: 1.5s;
    animation-duration: 1.5s;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
    -webkit-animation-iteration-count: infinite;
    animation-iteration-count: infinite;
    -webkit-animation-direction: alternate;
    animation-direction: alternate;
}

.five-list li:nth-of-type(even) {
    margin-top: 80px;
    margin-bottom: 50px;
    padding: 55px 10px 25px 10px;
    -webkit-animation-name: pointanime2;
    animation-name: pointanime2;
    -webkit-animation-duration: 1.5s;
    animation-duration: 1.5s;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
    -webkit-animation-iteration-count: infinite;
    animation-iteration-count: infinite;
    -webkit-animation-direction: alternate;
    animation-direction: alternate;
}

/* animation */
@keyframes pointanime {
    0% {
        -webkit-transform: translate(0, 0px);
        transform: translate(0, 0px);
    }

    100% {
        -webkit-transform: translate(0, -15px);
        transform: translate(0, -15px);
    }
}

@keyframes pointanime2 {
    0% {
        -webkit-transform: translate(0, 0px);
        transform: translate(0, 0px);
    }

    100% {
        -webkit-transform: translate(0px, 15px);
        transform: translate(0px, 15px);
    }
}

.five-list li:after {
    content: "…";
    width: 25px;
    height: 1px;
    display: block;
    font-size: 30px;
    color: #000;
    position: absolute;
    right: -28px;
}

.five-list li:nth-of-type(odd):after {
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    bottom: -10px;
}

.five-list li:nth-of-type(even):after {
    -webkit-transform: rotate(135deg);
    transform: rotate(135deg);
    top: -10px;
}

.five-list li:last-of-type {
    margin-right: 0;
}

.five-list li:last-of-type:after {
    display: none;
}

.five-list .five-list-white {
    background-color: #fff;
}

.five-list .five-list-pink {
    background-color: #fff3f6;
}

.five-list .five-list-purple {
    background-color: #f7f5f9;
}

.five-list .five-list-yellow {
    background-color: #fcfdf5;
}

.five-list .five-list-green {
    background-color: #f5fbf4;
}

.five-list .five-list-blue {
    background-color: #f2f4f9;
}

.five-list li h4 {
    margin-bottom: 10px;
    font-weight: bold;
    font-size: 16px;
    text-align: center;
}

.five-list li .text {
    padding: 0;
    font-size: 14px;
    line-height: 130%;
}

.five-list li .num {
    width: 65px;
    height: 65px;
    display: inline-block;
    padding: 10px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    font-family: "optitimes-romanregular", serif;
    font-weight: bold;
    font-size: 42px;
    text-align: center;
    position: absolute;
}

.five-list li:nth-of-type(odd) .num {
    line-height: 140%;
    background: linear-gradient(45deg, #f0ece4 0%, #f0ece4 50%, transparent 50%, transparent 100%);
    bottom: 0;
    left: 0;
}

.five-list li:nth-of-type(even) .num {
    line-height: 80%;
    background: linear-gradient(135deg, #f0ece4 0%, #f0ece4 50%, transparent 50%, transparent 100%);
    top: 0;
    bottom: 100%;
    left: 0;
}

.educational-program {
    margin-left: -999rem;
    margin-right: -999rem;
    padding: 100px 0;
    padding-left: 999rem;
    padding-right: 999rem;
    background: url(/import/tenant_1/133.167.79.132/html/images/pattern/gallery.jpg) repeat;
}

.educational-program h2,
.educational-program h3,
.educational-program .step-heading {
    color: #fff;
}

.educational-program h2:after {
    background-color: #fff;
}

.educational-program .recruit-heading:after {
    background-color: #fff;
}

.step-list {
    -webkit-box-align: inherit;
    align-items: inherit;
    -ms-flex-align: inherit;
}

.step-list li {
    width: calc(100% / 4 - 6px);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-flex-line-pack: end;
    align-content: flex-end;
    margin: 0 3px;
}

.step-box-wrap {
    width: 100%;
}

.step-list li .step-box1,
.step-list li .step-box2,
.step-list li .step-box3 {
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-box-align: center;
    align-items: center;
    -ms-flex-align: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin-bottom: 6px;
    padding: 10px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    text-align: center;
}

.step-list li .step-box1,
.step-list li .step-box3 {
    background-color: #f0ece4;
}

.step-list .step-box2 {
    background-color: #fff;
}

.step-heading {
    width: 100%;
    display: block;
    padding-bottom: 80px;
    font-weight: bold;
    font-size: 20px;
    text-align: center;
    position: relative;
}

.step-heading:after {
    content: "";
    width: 1px;
    height: 50px;
    display: block;
    margin: auto;
    border-right: 1px solid #fff;
    position: absolute;
    bottom: 15px;
    left: 0;
    right: 0;
}

.interview-list {
    position: relative;
    z-index: 1;
}

.interview-list li {
    background-color: #fff;
}

.interview-list li .interview-img .pic {
    width: 65%;
}

.interview-list li .interview-img .img-caption {
    width: 35%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    align-items: center;
    -ms-flex-align: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    color: #fff;
    text-align: center;
    background-color: #000;
}

.interview-list li .interview-img .img-caption:before {
    content: "";
    width: 1px;
    height: 30px;
    display: block;
    margin: 0 auto 30px auto;
    border-right: 1px solid #fff;
}

.caption-name {
    font-size: 18px;
}

.interview-list li .text {
    padding: 30px 10px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    text-align: center;
}

.requirement h3 {
    font-size: 26px;
    text-align: center;
}

.require-list {
    margin-bottom: 20px;
    padding-bottom: 20px;
    border-bottom: 1px solid #000;
}

.require-list dt {
    width: 20%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    align-items: center;
    -ms-flex-align: center;
    padding: 10px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

.require-list dt span {
    width: 100%;
    display: block;
    padding: 3px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    font-weight: bold;
    color: #fff;
    text-align: center;
    background-color: #000;
}

.require-list dd {
    width: 75%;
    padding: 10px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    font-weight: bold;
}

.company-box .pic {
    position: relative;
    z-index: 1;
}

.company-list {
    margin-bottom: 15px;
    padding-bottom: 15px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    border-bottom: 1px solid #000;
}

.company-list dt {
    width: 25%;
    font-weight: bold;
}

.company-list dd {
    width: 70%;
    font-weight: bold;
}

.qa-box {
    width: 80%;
    margin: auto;
    padding: 50px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    background-color: #fff;
    position: relative;
    z-index: 1;
}

.qa-box h3 {
    font-size: 26px;
    text-align: center;
}

.qa-list {
    margin-bottom: 30px;
}

.qa-list dt {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-box-align: center;
    align-items: center;
    -ms-flex-align: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding: 10px 10px 10px 50px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    position: relative;
}

.qa-list dt:before {
    content: "Q.";
    display: block;
    margin: auto;
    font-size: 32px;
    color: #333;
    position: absolute;
    top: 10px;
    left: 0;
}

.qa-list dt.acc-btn:hover {
    cursor: pointer;
}

.qa-list dd {
    padding: 10px 10px 10px 60px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

.accordion_icon,
.accordion_icon span {
    display: inline-block;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-transition: all 0.4s;
    transition: all 0.4s;
}

.accordion_icon {
    width: 20px;
    min-width: 20px;
    max-width: 20px;
    height: 20px;
    margin-left: 15px;
    position: relative;
}

.accordion_icon span {
    width: 100%;
    height: 1px;
    background-color: #000;
    position: absolute;
}

.accordion_icon span:nth-of-type(1) {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
    top: 5px;
}

.accordion_icon span:nth-of-type(2) {
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg);
    top: 5px;
}

.acc-btn.action .accordion_icon span:nth-of-type(1) {
    display: none;
}

.acc-btn.action .accordion_icon span:nth-of-type(2) {
    -webkit-transform: rotate(180deg);
    transform: rotate(180deg);
    top: 5px;
}

.application-form h3 {
    font-size: 26px;
    text-align: center;
}

.application-form .notice {
    width: 120px;
    display: block;
    margin-left: auto;
    font-family: "游ゴシック", "Yu Gothic", YuGothic, "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ ゴシック", sans-serif;
}

.must {
    width: 15px;
    height: 15px;
    display: inline-block;
    margin: 0 10px;
    line-height: 100%;
}

.form .contact-list dd input {
    width: 100%;
}

.contact-list dd input[type="radio"] {
    background-color: #fff;
}

.contact-list .radio-list input {
    display: none;
}

.contact-list .radio-list label:hover {
    text-decoration: underline;
    cursor: pointer;
}

.contact-list .radio-list label:before {
    content: "";
    width: 15px;
    height: 15px;
    display: block;
    border: 1px solid #999;
    border-radius: 50%;
    position: absolute;
    top: 0;
    left: 0;
}

.contact-list .radio-list input:checked+label {
    color: #4e4540;
    text-decoration: underline;
}

.contact-list .radio-list input:checked+label:after {
    content: "";
    width: 11px;
    height: 11px;
    display: block;
    border-radius: 50%;
    background: #4e4540;
    position: absolute;
    top: 3px;
    left: 3px;
}

.two-form dd label {
    width: 40%;
}

.three-form dd label {
    width: 30%;
}

.contact-list dd label {
    padding-left: 20px;
    position: relative;
}

.radio-form dd input {
    display: none;
}

.contact-list dd label:before {
    content: "";
    width: 12px;
    height: 12px;
    display: block;
    border-radius: 50%;
    background-color: #fff;
    position: absolute;
    top: 5px;
    left: 0;
}

.contact-list dd label:checked+label:after {
    content: "";
    width: 11px;
    height: 11px;
    display: block;
    border-radius: 50%;
    background: #4e4540;
    position: absolute;
    top: 3px;
    left: 3px;
}

.date-form dd .history-box {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.date-form dd .history-box input {
    width: 20%;
    margin: 0 5px 15px 5px;
}

.date-form dd .history-box input:last-of-type {
    width: 100%;
}

.contact-list dd textarea {
    width: 100%;
    height: 150px;
}

.contact-btn {
    margin: 30px auto;
}

.contact-btn li {
    width: 250px;
    max-width: calc(50% - 60px);
    margin: 0 30px 15px 30px;
}

.contact-btn li button {
    width: 100%;
    padding: 10px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    color: #fff;
    text-align: center;
    border: 1px solid #000;
    background-color: #000;
    -webkit-transition: 0.3s linear;
    transition: 0.3s linear;
}

.contact-btn li button:hover {
    color: #000;
    background-color: #fff;
    opacity: 1;
    cursor: pointer;
}

@media (max-width: 1024px) {
    .recruit-intro .pic {
        width: 80%;
    }

    .recruit-intro h2 {
        left: 0%;
    }

    .greeting>div {
        width: 100%;
    }

    .greeting>div .pic {
        width: 70%;
    }

    .greeting .w55 {
        margin-bottom: 30px;
    }

    .five-element {
        margin-top: 150px;
    }

    .five-list li,
    .five-list.six li {
        width: calc(100% / 2 - 24px);
    }

    .five-list li:nth-of-type(5n) {
        margin-right: 30px;
    }

    .five-list li:nth-of-type(2n),
    .five-list.six li:nth-of-type(2n) {
        margin-right: 0;
    }

    .five-list li:nth-of-type(even):after {
        -webkit-transform: rotate(-45deg);
        transform: rotate(-45deg);
        top: 110%;
        bottom: 0;
        left: -30px;
    }

    .step-list li {
        width: 100%;
        margin-bottom: 50px;
    }

    .step-heading {
        padding-bottom: 50px;
    }

    .step-heading:after {
        height: 30px;
    }

    .interview-list {
        position: relative;
    }

    .interview-list li .interview-img .pic,
    .interview-list li .interview-img .img-caption {
        width: 100%;
    }

    .interview-list li .interview-img .img-caption:before {
        margin: 0 auto 15px auto;
    }

    .img-caption {
        padding: 15px;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
    }

    .require-list dt,
    .require-list dd {
        padding: 5px;
    }

    .company-box>div {
        width: 100%;
        margin-bottom: 30px;
    }

    .qa-box {
        width: 100%;
        padding: 30px;
    }

    .contact-list dt,
    .contact-list dd {
        width: 100%;
    }

    .contact-list dt {
        margin-bottom: 5px;
    }

    .date-form dd .history-box input {
        width: 15%;
    }

    .contact-btn {
        margin: 30px auto !important;
    }
}

@media (max-width: 599px) {
    .recruit .pic {
        width: 100%;
    }

    .recruit .inner {
        padding-left: 0;
    }

    .recruit-intro .pic {
        width: 100%;
    }

    .recruit-intro h2 {
        font-size: 16px;
        position: static;
    }

    .after-object1:after {
        background-image: url(/import/tenant_1/133.167.79.132/html/images/recruit/bg.jpg);
        top: 30%;
        right: -20%;
    }

    .recruit-box {
        margin: 30px 0 100px 0;
    }

    .five-list li,
    .five-list.six li {
        width: calc(80% - 24px);
    }

    .five-list li:nth-of-type(even) {
        margin-top: 50px;
        margin-left: calc(20% + 24px);
    }

    .five-list li:nth-of-type(odd):after {
        bottom: -20px;
    }

    .educational-program {
        margin-left: -999rem;
        margin-right: -999rem;
        padding-top: 50px;
        padding-bottom: 50px;
    }

    .require-list dt,
    .require-list dd {
        width: 100%;
    }

    .company-list dt {
        width: 30%;
    }

    .qa-list dt {
        padding: 10px 10px 10px 30px;
    }

    .qa-list dt:before {
        font-size: 24px;
    }

    .qa-list dd {
        padding: 10px 10px 10px 30px;
    }

    .contact-btn li {
        width: 100%;
        max-width: 100%;
    }
}

/* ##### recruit end ##### */

.backnum:hover .nav-photo {
    top: 0;
}

/* insta */
.instalist {
    width: 75%;
    margin-left: -50%;
    /*     z-index: -1;
 */
}

.instalist li p span {
    border-radius: 15px;
}

.instagram-box {
    margin-left: -999rem;
    margin-right: -999rem;
    padding: 100px 0;
    padding-left: 999rem;
    padding-right: 999rem;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    background: url(/import/tenant_1/133.167.79.132/html/images/pattern/gallery.jpg) repeat;
}

.instagram-box h2 {
    color: #fff;
}

.instagram-box h2:after {
    background-color: #fff;
}

.insta-list>li {
    width: calc((100% - 16px) / 4);
    margin: 2px;
    padding: 2px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    background-color: #fff;
}

.insta-list li a {
    display: block;
    -webkit-transition: 0.3s linear;
    transition: 0.3s linear;
}

.insta-list li a figure {
    position: relative;
}

.insta-list li a figcaption {
    width: 100%;
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    align-items: center;
    -ms-flex-align: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin: auto;
    padding: 10px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    background-color: rgba(0, 0, 0, 0.5);
    opacity: 0;
    -webkit-transition: 0.3s linear;
    transition: 0.3s linear;
    -webkit-transform: translate(0, -50%);
    transform: translate(0, -50%);
    position: absolute;
    top: 50%;
    left: 0;
    right: 0;
    z-index: 1;
}

.insta-list li a:hover {
    opacity: 1;
}

.insta-list li a:hover figcaption {
    opacity: 1;
}

.insta-list li a figcaption .insta-info-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    align-items: center;
    -ms-flex-align: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.insta-list li a figcaption .insta-info-list li {
    color: white;
    letter-spacing: 2px;
}

.insta-list li a figcaption .insta-info-list li.insta_like::before {
    content: "\f004";
    display: inline-block;
    margin-right: 5px;
    font-family: "FontAwesome";
}

@media (max-width: 1024px) {
    .p04 .w40 {
        width: 100%;
    }

    .instalist {
        width: 100%;
        margin: 20px 0;
    }

    .insta-list li a figcaption .insta-info-list li {
        font-size: 1.5vw;
    }
}

@media (max-width: 599px) {
    .instagram-box {
        padding-top: 50px;
    }

    .anela_room .instagram-box {
        padding: 40px 999rem 60px;
    }

    .instagram-box .vertical-heading {
        margin-left: -60px;
        font-size: 20px;
        -webkit-transform-origin: inherit;
        transform-origin: inherit;
    }

    .insta-list {
        max-width: 85%;
        margin-left: auto;
        margin-right: 0;
    }

    .insta-list>li {
        width: calc((100% - 6px) / 3);
        margin: 1px;
        padding: 0;
    }

    .insta-list li a figcaption .insta-info-list li {
        font-size: 1vw;
    }

    .insta-list li a figcaption .insta-info-list li.insta_like::before {
        margin-right: 1px;
    }
}

/*2022/09/28*/
.pc-only {
  display: block;
}

.hairmake {
  margin-top: 80px;
}

.hairmake h3 {
  font-size: 18px;
}

.hairmake h3 span {
  font-size: 16px;
}

.hairmake-in {
  display: flex;
}

.hairmake-in .left {
  width: 45%;
  margin-right: 5%;
}

.hairmake-in .left img {
  width: 100%;
}

.hairmake-in .right {
  width: 50%;
}

.hairmake-in .right p {
  margin-bottom: 10px;
}

@media (max-width: 599px) {
  .sp-only {
    display: block;
  }
  
  .pc-only {
    display: none;
  }
  
  .hairmake-in {
    display: block;
  }
  
  .hairmake-in .left {
    width: 100%;
    margin-right: 0;
    margin-bottom: 10px;
  }
  
  .hairmake-in .right {
    width: 100%;
  }
}

.header-fix-bnr a[href*="tel"] {
  pointer-events: auto;
}

.buy a {
  display: block;
  width: 200px;
  padding: 1%;
  text-align: center;
  color: #fff;
  background: #000;
  font-size: 16px;
}

@media (max-width: 1024px) {
  .buy a {
    margin: auto;
    padding: 2%;
  }
}


/* 2023/06/26 */

[class*=up-ofi] {
    position: relative;
    display: block;
    width: 100%
}

[class*=up-ofi] img {
    width: 100%;
    height: 100%!important;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: 50% 50%;
    object-position: 50% 50%
}


.up-obf-cover img {
    -o-object-fit: cover;
    object-fit: cover
}

.up-obf-contain img {
    -o-object-fit: contain;
    object-fit: contain
}
.up-ofi-100:after {
    content: "";
    display: block;
    padding-top: 100%
}

.up-ofi-100 img {
    position: absolute;
    top: 0;
    left: 0
}

.care .up-pic li figure p img {
    object-fit: contain;
}

.care ul li figcaption {
  font-size: 13px;
}

/*2023/10/05 木場店*/
.coming {
  position: absolute;
  top: 30%;
  font-size: 46px;
  text-align: center;
  margin: auto;
  width: 40%;
  left: 30%;
  color: #fff;
  padding: 2%;
  background: #333;
}
.newimage .img {
  display: flex;
  flex-wrap: wrap;
}
.newimage .img div {
  width: 45%;
  margin: 10px auto 0;
}

@media (max-width: 1024px) {
  .coming {
    font-size: 36px;
    width: 70%;
    left: 15%;
  }
}

@media (max-width: 599px) {
  .coming {
    font-size: 20px;
    width: 60%;
    left: 20%;
  }
  .newimage .img div {
    width: 90%;
  }
}
    
.video {
  width: 100%;
}
.video video {
  position: relative;
  z-index: 1;
  width: 100%;
}

@media (max-width: 599px) {
  .salon-access.douga {
    margin: 100px 0 30px;
  }
  
      .vertical-heading {
        margin-bottom: 50px;
}

.kiba{
  font-size: 16px !important;
}

.rec-link{
  color: #fff !important;
    background: #4e7e66 !important;
    margin-bottom: 10px !important;
    padding: 0 42px !important;
}

.kiba-staffa{
  font-size: 20px !important;
}
}

.pic.container {
  position: relative;
  z-index: 10;
  margin-bottom: 20px
}

.pic.product {
  margin-bottom: 20px
}
