@charset "utf-8";
@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 400;
  src: local('Open Sans'), local('OpenSans'), url(https://fonts.gstatic.com/s/opensans/v13/K88pR3goAWT7BTt32Z01mxJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
  unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
}
/* cyrillic */
@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 400;
  src: local('Open Sans'), local('OpenSans'), url(https://fonts.gstatic.com/s/opensans/v13/RjgO7rYTmqiVp7vzi-Q5URJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
  unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* greek-ext */
@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 400;
  src: local('Open Sans'), local('OpenSans'), url(https://fonts.gstatic.com/s/opensans/v13/LWCjsQkB6EMdfHrEVqA1KRJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
  unicode-range: U+1F00-1FFF;
}
/* greek */
@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 400;
  src: local('Open Sans'), local('OpenSans'), url(https://fonts.gstatic.com/s/opensans/v13/xozscpT2726on7jbcb_pAhJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
  unicode-range: U+0370-03FF;
}
/* vietnamese */
@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 400;
  src: local('Open Sans'), local('OpenSans'), url(https://fonts.gstatic.com/s/opensans/v13/59ZRklaO5bWGqF5A9baEERJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
  unicode-range: U+0102-0103, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 400;
  src: local('Open Sans'), local('OpenSans'), url(https://fonts.gstatic.com/s/opensans/v13/u-WUoqrET9fUeobQW7jkRRJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
  unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 400;
  src: local('Open Sans'), local('OpenSans'), url(https://fonts.gstatic.com/s/opensans/v13/cJZKeOuBrn4kERxqtaUH3VtXRa8TVwTICgirnJhmVJw.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
}
/* cyrillic */
@font-face {
  font-family: 'Lora';
  font-style: italic;
  font-weight: 700;
  src: local('Lora Bold Italic'), local('Lora-BoldItalic'), url(https://fonts.gstatic.com/s/lora/v9/66KG1MDzU5Zo36weZ_yx-RJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
  unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* latin-ext */
@font-face {
  font-family: 'Lora';
  font-style: italic;
  font-weight: 700;
  src: local('Lora Bold Italic'), local('Lora-BoldItalic'), url(https://fonts.gstatic.com/s/lora/v9/1wR3aOJ69QwyZ9B-WDmIqRJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
  unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Lora';
  font-style: italic;
  font-weight: 700;
  src: local('Lora Bold Italic'), local('Lora-BoldItalic'), url(https://fonts.gstatic.com/s/lora/v9/_IxjUs2lbQSu0MyFEAfa7VtXRa8TVwTICgirnJhmVJw.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
}
/* 共通 ここから ******************** */
body {
    margin: 0;
    padding: 0;
    color: #333;
    font-family: "Lora Italic", "Open Sans", 游ゴシック, YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", メイリオ, Meiryo, sans-serif
    }
p, h1, h2, h3, h4, h5, h6 {
    margin: 0;
    padding: 0;
    font-weight: normal
    }
ul, ol, li, dl, dt, dd {
    list-style-type: none;
    margin: 0;
    padding: 0
    }
p {
    line-height: 1.7em
    }
a {
    color: #333;
    text-decoration: none
    }
a:hover {
    opacity: 0.6
    }
img {
    vertical-align: bottom
    }
img a {
    border: none
    }
img:not([src*="."]) {
    display: none;
}
table {
    border-collapse: collapse
    }
th {
    font-weight: normal;
    text-align: left;
    vertical-align: top
    }
th, td {
    padding: 0.2em 1em
    }
.content {
    margin: 0 auto;
    width: 960px
    }
.hidden {
    overflow: hidden
    }
.floatLeft, .floatLeftNone {
    float: left
    }
.floatRight, .floatRightNone {
    float: right
    }
.alignLeft {
    text-align: left
    }
.alignRight {
    text-align: right
    }
.alignCenter {
    text-align: center
    }
.blockCenter {
    display: block;
    margin: 0 auto
    }
.relative {
    position: relative
    }
.absolute {
    position: absolute
    }
.block {
    display: block
    }
.inline {
    display: inline
    }
.inline-block {
    display: inline-block
    }
.underline {
    text-decoration: underline
    }
.marginBottom05em {
    margin-bottom: 0.5em
    }
.marginBottom1em {
    margin-bottom: 1em
    }
.marginBottom2em {
    margin-bottom: 2em
    }
.marginBottom3em {
    margin-bottom: 3em
    }
.marginBottom4em {
    margin-bottom: 4em
    }
.marginBottom5em {
    margin-bottom: 5em
    }
.marginBottom80 {
    margin-bottom: 80px
    }
/* 左右2つの横並び */
.l-r {
    overflow: hidden;
    }
.l-r .xx:nth-of-type(1) {
    float: left;
    width: 50%
    }
.l-r .xx:nth-of-type(2) {
    float: right;
    width: 50%
    }
/* 左右2つの横並び */
/* 右左2つの横並び */
.r-l {
    overflow: hidden;
    }
.r-l .xx:nth-of-type(1) {
    float: right;
    width: 50%
    }
.r-l .xx:nth-of-type(2) {
    float: left;
    width: 50%
    }
/* 右左2つの横並び */
/* 3つ以上の横並び */
.sbs:after {
    content:"";
    clear: both;
  display: block;
    }
.sbs > * {
    float: left
    }
.sbs > *:last-of-type {
    margin-right: 0
    }
/* 3つ以上の横並び */
/* sp/pcの切替 */
.sp, .sp-inline {
    display: none
    }
.pc {
    display: block
    }
.pc-inline {
    display: inline
    }
/* sp/pcの切替 */
.inner {
    margin-left: auto;
    margin-right: auto;
    width: 790px
    }
.inner-m {
    margin-left: auto;
    margin-right: auto;
    width: 630px
    }
.font10 {
    font-size: 10px
    }
.font14 {
    font-size: 14px
    }
.font28 {
    font-size: 28px
    }
.lora {
    font-family: "Lora", serif
    }
.opensans {
    font-family: "Open Sans", sans-serif
    }
.mincho {
    font-family: "游明朝体", "Yu Mincho", YuMincho, serif
    }
.colorWhite {
    color: #fff
    }
.colorRed {
    color: #d33c3c
    }
.colorRed2 {
    color: #f70503
    }
.bgGray {
    background: #f8f8f8
    }
.bgRed {
    background: #d33c3c
    }
.section {
    padding: 80px 0
    }
.btn {
    display: block;
    margin: 60px auto 0;
    width: 222px;
    line-height: 48px;
    font-size: 14px;
    font-family: "Open Sans", sans-serif;
    color: #fff;
    background: #333;
    border: none;
    text-align: center
    }
.more {
    background: #333 url(../images.9108ccf85606138e36841651911d6a14/arrow-white.png) no-repeat right 21px center
    }
.back {
    background: #333 url(../images.9108ccf85606138e36841651911d6a14/arrow-white-back.png) no-repeat left 21px center
    }
.link {
    padding-left: 1em;
    background: url(../images.9108ccf85606138e36841651911d6a14/arrow-black.png) no-repeat left center
    }
.detail-main {
    display: block;
    margin: 0 auto 40px
    }
.detail-list {
    margin: 0 auto;
    width: 470px;
    display:-webkit-box;
    display:-moz-box;
    display:-ms-box;
    display:-webkit-flexbox;
    display:-moz-flexbox;
    display:-ms-flexbox;
    display:-webkit-flex;
    display:-moz-flex;
    display:-ms-flex;
    display:flex;
    -webkit-box-lines:multiple;
    -moz-box-lines:multiple;
    -webkit-flex-wrap:wrap;
    -moz-flex-wrap:wrap;
    -ms-flex-wrap:wrap;
    flex-wrap:wrap;
    -webkit-box-pack:center;
    -ms-flex-pack:center;
    -webkit-justify-content:center;
    justify-content: center;
    }
.detail-list li {
    margin-right: 10px
    }
/* 共通 ここまで ******************** */
/* ヘッダー ここから ******************** */
header {
    width: 100%;
    height: 116px;
    border-top: 4px solid #d33c3c;
    box-shadow: 0 8px 4px -4px rgba(0, 0, 0, 0.05);
    -moz-box-shadow: 0 8px 4px -4px rgba(0, 0, 0, 0.05);
    -webkit-box-shadow: 0 8px 4px -4px rgba(0, 0, 0, 0.05);
    -o-box-shadow: 0 8px 4px -4px rgba(0, 0, 0, 0.05);
    -ms-box-shadow: 0 8px 4px -4px rgba(0, 0, 0, 0.05)
    }
#top header {
    position: absolute;
    z-index: 100;
    box-shadow: none;
    top:0;
    left:0;
    background:rgba(255,255,255,0.6);
}
#top header .content {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    margin: 0 auto
    }
header .logo {
    float: left;
    margin-top: 27px
    }
.nav_x {
    display: inline-block;
    margin-top: 27px;
    margin-left: 80px;
    width: 590px;
    font-weight: 600
    }
.nav_x li {
    margin: 0 15px
    }
.nav_x a {
    display: block;
    font-size: 12px
    }
.header-link {
    float: right;
    display: block;
    margin-top: 23px
    }
.header-link li {
    margin-left: 5px
    }
.reserve {
    display: block;
    padding-left: 12px;
    width: 78px;
    font-size: 10px;
    color: #fff;
    line-height: 25px;
    background: #333 url(../images.9108ccf85606138e36841651911d6a14/icon-link-white.png) no-repeat right 12px center
    }
/* ヘッダー ここまで ******************** */
/* パンくずリスト ここから ******************** */
.breadcrumb {
    overflow: hidden;
    margin: 5px 0
    }
.breadcrumb > li {
    float: left
    }
.breadcrumb li:before {
    margin: 0 10px;
    content: ">"
    }
.breadcrumb li:first-child:before {
    content: none
    }
/* パンくずリスト ここまで ******************** */
.top-image {
    margin-bottom: 20px
    }
.top-messsage {
    position: absolute;
    bottom: 20px;
    left: 0;
    right: 0;
    margin: 0 auto;
    width: 960px;
    font-size: 20px;
    line-height: 2.2;
    z-index: 10;
    letter-spacing: 0.3em;
    font-family: "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", メイリオ, Meiryo, sans-serif;
    text-shadow:
        -1px -1px 1px #fff,
        1px -1px 1px #fff,
        -1px 1px 1px #fff,
        1px 1px 1px #fff;
    }
.main {
    margin-bottom: 20px;
    width: 960px
    }
.main-head {
    display: block;
    margin-left: auto;
    margin-right: auto;
    font-family: "Lora", serif;
    font-size: 24px;
    text-align: center;
    line-height: 1.7em
    }
.main-head span {
    border-bottom: 2px solid #d33c3c
    }
#top .main-head {
    margin-bottom: 60px
    }
.content-wrap {
    padding: 20px
    }
/* サイドバー ここから ******************** */
.r-l .sidebar {
    margin-left: 5px;
    width: 230px !important;
    font-size: 14px;
    line-height: 1
    }
.sidebar .parents span.ww {
    display: block;
    padding-left: 10px;
    font-family: "Lora", serif;
    color: #fff;
    background: #d33c3c;
    line-height: 30px
    }
.sidebar .children {
    background: #fff
    }
.sidebar .children a {
    display: block;
    padding: 1em 5px;
    border-bottom: 1px solid #eee
    }
/* サイドバー ここまで ******************** */
/* フッター ここから ******************** */
footer {
    padding: 80px 0
    }
.footer-logo {
    width: 180px
    }
.footer-info {
    width: 500px;
    border-right: 1px solid #ddd
    }
.footer-info dl div {
    overflow:hidden;
}
.footer-info dt {
    display: inline-block;
    float: left;
    width: 110px;
    height: 30px;
    font-size: 12px;
    font-weight: bold;
    font-family: "Open Sans", sans-serif
    }
.footer-info dd {
    display: block;
    float: right;
    width: 380px;
    height: 30px;
    font-size: 14px
    }
.footer-info .web-reserve {
    text-decoration: underline
    }
.footer-info .web-reserve a {
    padding-right: 1.5em;
    background: url(../images.9108ccf85606138e36841651911d6a14/icon-link.png) no-repeat right center
    }
.footer-nav {
    margin-left: 75px;
    width: 195px;
    font-size: 12px;
    font-weight: bold;
    font-family: "Open Sans", sans-serif
    }
.footer-nav ul:nth-of-type(1) {
    margin-right: 38px
    }
.footer-nav li {
    margin-bottom: 35px
    }
.footer-nav a {
    padding-left: 10px;
    background: url(../images.9108ccf85606138e36841651911d6a14/arrow-black.png) no-repeat left center
    }
/* フッター ここまで ******************** */
/* トップに戻る ここから ******************** */
.pagetop {
    position: fixed;
    bottom: 30px;
    right: 30px
    }
/* トップに戻る ここまで ******************** */
/* Salon ここから ******************** */
.l-r .section-salon {
    padding-right: 50px;
    width: 595px !important;
    position:relative;
    padding-bottom:100px;
    }
.section-salon .l-r > *:nth-of-type(odd) {
    width: 325px
    }
.section-salon .l-r > *:nth-of-type(even) {
    width: 230px
    }
.section-salon .l-r > *:nth-of-type(even) img:nth-of-type(2n) {
    float:right;
}
.section-salon dt {
    margin-left: 35px;
    margin-bottom: 15px;
    font-size: 24px;
    line-height: 1;
    text-indent: -30px
    }
.section-salon dd {
    margin-left: 35px;
    margin-bottom: 45px;
    font-size: 12px;
    line-height: 1.33
    }
.section-salon dl:last-of-type dd {
    margin-bottom: 0
    }
/* Salon ここまで ******************** */
/* Information ここから ******************** */
.l-r .section-information {
    width: 315px !important;
    padding-bottom:100px;
    position:relative;
    }
.info {
    overflow: hidden;
    margin-bottom: 33px
    }
.info:last-of-type {
    margin-bottom: 0
    }
.info dt, .info dd:nth-of-type(2) {
    float: right;
    display: block;
    width: 235px
    }
.info dt {
    font-size: 16px;
    line-height: 1.12
    }
.info dd:nth-of-type(2) {
    margin-bottom: 1em;
    font-size: 12px
    }
.section-information dd:nth-of-type(1) {
    float: left;
    display: block
    }
.section-information dd:nth-of-type(1) img {
    display:none;
}
.section-information dd:nth-of-type(1) img ~ span {
    width:70px;
    height:70px;
    background-size:cover;
    background-position: center center;
    display:block;
}
.section-information dd:nth-of-type(1) img:not([src*="."]) ~ span {
    background:#ddd;
}
/* Information ここまで ******************** */
/* Blog ここから ******************** */
.top-blog-list {
    margin: 0 auto;
    width: 790px
    }
.top-blog-list li {
    margin-right: 10px;
    position: relative;
    -webkit-perspective-origin: 0 50%;
    perspective-origin: 0 50%;
    -webkit-transform-style: preserve-3d;
    transform-style: preserve-3d;
    width:150px;
    height:150px;
    display:block;
    overflow:hidden;
    }
.top-blog-list li a {
    opacity:1;
}
.top-blog-list li:first-of-type {
    width:310px;
    height:310px;
}
.top-blog-list li:nth-of-type(4), .top-blog-list li:nth-of-type(7) {
    margin-right: 0
    }
.top-blog-list li:nth-of-type(5), .top-blog-list li:nth-of-type(6), .top-blog-list li:nth-of-type(7) {
    margin-top: 10px
    }
.top-blog-list li img {
    display:none;
}
.top-blog-list li img ~ span {
    display:block;
    width:150px;
    height:150px;
    background-size:cover;
    background-position:center center;
    -webkit-transform: scale(1);
    transform: scale(1);
    -webkit-transition: all 0.8s ease-in-out;
    transition: all 0.8s ease-in-out;
}
.top-blog-list li:nth-of-type(1) img ~ span {
    width:310px;
    height:310px;
}
.top-blog-list li img:not([src*="."]) ~ span {
    background:#ddd;
}
.top-blog-list li div {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0,0,0,.6);
    -webkit-transition: opacity .4s .3s;
    transition: opacity .4s .3s;
    opacity: 0;
    color:#fff;
    box-sizing:border-box;
    padding:10px;
}
.top-blog-list li div p {
    -webkit-transition: opacity .3s;
    transition: opacity .3s;
    opacity: 0;
}
.top-blog-list li div p span {
    display:block;
    font-size:0.8em;
}
.top-blog-list li:hover div {
    opacity: 1;
}
.top-blog-list li:hover div p {
    -webkit-transition-delay: .4s;
    transition-delay: .4s;
    opacity: 1;
}
.top-blog-list li:hover img ~ span {
    -webkit-transform: scale(1.4);
            transform: scale(1.4);
}

/* Blog ここまで ******************** */
/* Gallery ここから ******************** */
.top-gallery-list {
    padding: 5px 0
    }
.top-gallery-list img {
    display:none;    
    }
.top-gallery-list li:nth-of-type(1) {
    margin-left: 44px
    }
.top-gallery-list li:nth-of-type(1), .top-gallery-list li:nth-of-type(2), .top-gallery-list li:nth-of-type(3), .top-gallery-list li:nth-of-type(5), .top-gallery-list li:nth-of-type(6) {
    margin-right: 88px
    }
.top-gallery-list li:nth-of-type(5) {
    margin-left: 164px
    }
.top-gallery-list li {
    
}
.top-gallery-list img ~ span {
    display:block;
    width:152px;
    height:152px;
    border-radius:50%;
    background-size:cover;
    background-position:center center;
    box-shadow: 0 0 0 4px #fff,0 0 0 5px #333;
    box-sizing: border-box;
}

/* Gallery ここまで ******************** */
/* Staff ここから ******************** */
.top-staff-list {
    overflow:hidden;
}
.top-staff-list li  {
    text-align:center;
    }
.top-staff-list li img {
    width:auto;
    height:240px;
}
.control {
    position: absolute;
    top: 190px;
    bottom: 0;
    left: 0;
    margin: 0 auto;
    width: 960px;
    height: 52px;
    z-index: 10
    }
.prev {
    position: absolute;
    left: -30px;
    cursor: pointer
    }
.next {
    position: absolute;
    right: -30px;
    cursor: pointer
    }
/* Staff ここまで ******************** */
/* Recruit ここから ******************** */
.section-recruit .l-r > *:nth-of-type(1) {
    padding-right: 50px;
    width: 480px;
    border-right: 1px solid #ddd;
    box-sizing: border-box
    }
.section-recruit .l-r > *:nth-of-type(2) {
    width: 430px
    }
.section-recruit .form-head {
    margin: 1em 0;
    font-size: 18px;
    text-align: center
    }
#top #name, #top #email, #top #subject, #top #message {
    padding: 0.5em 1em;
    margin-bottom: 18px;
    width: 400px;
    font-size: 14px;
    background: #e5e5e5;
    border: none
    }
#top form p {
    margin-left:1em;
}
#top #message {
    height: 9em
    }
.section-recruit .btn {
    margin: 32px auto 0
    }
/* Recruit ここまで ******************** */
/* Menuページ ここから ******************** */
.menu-table {
    overflow: hidden;
    border-bottom: 1px solid #eee
    }
.menu-table dt {
    float: left;
    padding: 1em 10px;
    width: 490px;
    line-height: 1;
    vertical-align: middle
    }
.menu-table dd {
    display: table-cell;
    float: left;
    padding: 1em 10px;
    width: 120px;
    line-height: 50px;
    font-size: 14px;
    text-align: right;
    vertical-align: middle
    }
.menu-table dt.menu-head, .menu-table dd.menu-head {
    padding: 10px;
    height: auto;
    font-size: 16px;
    color: #fff;
    background: #d33c3c;
    line-height: 1
    }
.menu-table dd.menu-row1 {
    line-height: 29px
    }
.menu-table dd.menu-row3 {
    line-height: 71px
    }
.menu-table dt p {
    line-height: 1.83
    }
.menu-table dt p:nth-of-type(1) {
    font-size: 14px
    }
.menu-table dt p:nth-of-type(2) {
    font-size: 12px;
    color: #666
    }
/* Menuページ ここまで ******************** */
/* Galleryページ ここから ******************** */
.gallery-all-list {
    margin: 0 auto;
    width: 790px
    }
.gallery-all-list li {
    margin-right: 10px;
    margin-bottom: 10px
    }
.gallery-all-list li:nth-of-type(4n) {
    margin-right: 0
    }
.gallery-all-list li a {
    display:block;
}
.gallery-all-list li img {
    display:none;
}
.gallery-all-list li img ~ span {
    display:block;
    width:190px;
    height:190px;
    background-size:cover;
    background-position:center center;
}
.pagenation {
    margin: 70px auto 0;
    display:-webkit-box;
    display:-moz-box;
    display:-ms-box;
    display:-webkit-flexbox;
    display:-moz-flexbox;
    display:-ms-flexbox;
    display:-webkit-flex;
    display:-moz-flex;
    display:-ms-flex;
    display:flex;
    -webkit-box-lines:multiple;
    -moz-box-lines:multiple;
    -webkit-flex-wrap:wrap;
    -moz-flex-wrap:wrap;
    -ms-flex-wrap:wrap;
    flex-wrap:wrap;
    -webkit-box-pack:center;
    -ms-flex-pack:center;
    -webkit-justify-content:center;
    justify-content: center;
    }
.pagenation li {
    margin-right: 10px
    }
.pagenation li.current {
    display:none;
}
.page {
    width: 48px;
    height: 48px;
    line-height:48px;
    font-size: 14px;
    color: #fff;
    background: #333;
    text-align: center;
    vertical-align: middle;
    display:block;
    }
.page-prev {
    background: #333 url(../images.9108ccf85606138e36841651911d6a14/arrow-white-back.png) no-repeat center center
    }
.page-next {
    background: #333 url(../images.9108ccf85606138e36841651911d6a14/arrow-white.png) no-repeat center center
    }
.gallery-table {
    overflow: hidden;
    margin: 0 auto;
    width: 630px;
    font-size: 14px;
    line-height: 2.28
    }
.gallery-table dt {
    float: left;
    margin-bottom: 1.8em;
    width: 160px;
    font-family: "Open Sans", sans-serif
    }
.gallery-table dd {
    float: right;
    margin-bottom: 1.8em;
    width: 470px
    }
.other-style-list li {
    margin-right: 10px
    }
.other-style-list li a {
    display:block;
}
.other-style-list li img {
    display:none;
}
.other-style-list li img ~span {
    width:150px;
    height:150px;
    display:block;
    background-size:cover;
    background-position:center center;
}
.other-style-list li img:not([src*="."]) ~ span {
    background-color:#ddd;
}
/* Galleryページ ここまで ******************** */
/* Contactページ ここから ******************** */
.contact-table {
    overflow: hidden;
    font-size: 14px
    }
.contact-table dt {
    float: left;
    padding: 0 10px;
    margin-bottom: 40px;
    width: 190px;
    line-height: 30px;
    color: #fff;
    background: #d33c3c
    }
.contact-table dd {
    float: right;
    margin-bottom: 40px;
    width: 550px;
    line-height: 30px
    }
.contact-table dt:last-of-type, .contact-table dd:last-of-type {
    margin-bottom: 0
    }
.contact-table #name, .contact-table #email {
    padding: 0;
    margin: 0;
    width: 550px;
    height: 30px;
    border: 1px solid #333;
    box-sizing: border-box
    }
.contact-table #message {
    padding: 0;
    margin: 0;
    width: 550px;
    height: 200px;
    border: 1px solid #333;
    box-sizing: border-box
    }
.contact-table input[type="checkbox"] {
    -moz-appearance: none;
    -webkit-appearance: none;
    margin: 0 5px 0 0;
    width: 13px;
    height: 13px;
    border: 1px solid #333;
    box-shadow: none;
    vertical-align: middle
    }
.contact-table input[type="checkbox"]:checked {
    -moz-appearance: none;
    -webkit-appearance: none;
    background: #000
    }
.contact-table label {
    margin-right: 40px
    }
/* Contactページ ここまで ******************** */
/* Staffページ ここから ******************** */
.staff {
    float: left;
    margin-right: 10px;
    width: 190px;
    text-align: center
    }
.staff:nth-of-type(4n) {
    margin-right: 0
    }
.staff dt, .staff dd {
    line-height: 1
    }
.staff dd {
    margin-bottom: 10px;
    font-size: 12px
    }
.staff .btn {
    margin: 20px auto 0;
    padding: 0;
    width: 100px;
    line-height: 30px;
    background: #333 url(../images.9108ccf85606138e36841651911d6a14/arrow-white.png) no-repeat right 10px center
    }
.card {
    display: table-cell;
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    margin: auto;
    width: 390px;
    height: 200px;
    line-height: 1;
    text-align: center;
    vertical-align: middle;
    background: rgba(255, 255, 255, 0.6)
    }
.card dd:nth-of-type(1) {
    margin-top: 45px;
    margin-bottom: 20px;
    font-size: 18px
    }
.card dd:nth-of-type(2) {
    margin-bottom: 10px;
    font-size: 14px
    }
.card dt {
    font-size: 30px;
    text-indent: 0.3em;
    letter-spacing: 0.3em
    }
.staff-table {
    overflow: hidden;
    font-size: 14px;
    line-height: 1
    }
.staff-table dt {
    float: left;
    margin-bottom: 40px;
    width: 160px
    }
.staff-table dd {
    float: right;
    margin-bottom: 40px;
    width: 470px
    }
.staff-table dt:last-of-type, .staff-table dd:last-of-type {
    margin-bottom: 0
    }
.staff-detail-list li {
    margin-right: -7px
    }
/* Staffページ ここまで ******************** */
/* Informationページ ここから ******************** */
.r-l .main-culomn {
    margin-right: 5px;
    width: 630px !important;
    }
.infomation {
    overflow: hidden;
    padding: 20px 5px;
    border-bottom: 1px solid #d33c3c;
    vertical-align: top
    }
.infomation:first-of-type {
    border-top: 1px solid #d33c3c
    }
.infomation-img {
    float: left;
    width: 140px
    }
.infomation-img img {
    display:none;
}
.infomation-img img ~ span {
    display:block;
    width:120px;
    height:90px;
    background-size:cover;
    background-position:center center;
}
.infomation-img img:not([src*="."]) ~ span {
    background:#ddd;
}
.infomation-date, .infomation-cat {
    float: left;
    font-size: 14px;
    width: 120px
    }
.infomation-cat {
    width:340px;
}
.infomation-title {
    float: left;
    margin-top: 1em;
    width: 480px;
    font-size: 18px;
    line-height: 1.55
    }
.infomation-dateil-date, .infomation-dateil-cat {
    display: inline-block;
    font-size: 14px;
    width: 120px
    }
.infomation-dateil-title {
    margin-top: 1em;
    margin-bottom: 2em;
    font-size: 18px;
    line-height: 1.55
    }
.infomation-dateil-cat {
    width:470px;
}
.infomation-dateil-img {
    margin-bottom: 2em
    }
.infomation-dateil-text {
    font-size: 14px
    }
/* Informationページ ここまで ******************** */
/* Blogページ ここから ******************** */
.item {
    margin-bottom: 10px
    }
/* Blogページ ここまで ******************** */
/* Salon Accessページ ここから ******************** */
.access-table {
    overflow: hidden;
    margin-left: 5px;
    width: 475px;
    font-size: 14px;
    }
.access-table dt {
    float: left;
    margin-bottom: 40px;
    width: 120px;
    line-height:2;
    }
.access-table dd {
    float: right;
    margin-bottom: 40px;
    width: 350px;
    line-height:2;
    }
.access-table:last-of-type dt, .access-table:last-of-type dd {
    margin-bottom: 0
    }
#salon-access .l-r > *:nth-of-type(2) img {
    margin-right: 5px
    }
/* Salon Accessページ ここまで ******************** */
/* Recruitページ ここから ******************** */
.recruit-nav {
    background: #333
    }
.recruit-nav li {
    width: 25%
    }
.recruit-nav a {
    display: block;
    color: #fff;
    text-align: center;
    line-height: 80px;
    border-left: 1px solid #fff;
    box-sizing: border-box
    }
.recruit-nav li:last-of-type a {
    border-right: 1px solid #fff
    }
.recruit-nav .stay {
    color: #333;
    background: #fff
    }
.recruit-head {
    display: table-cell;
    width: 390px;
    height: 200px;
    text-align: center;
    vertical-align: middle
    }
.recruit-message {
    font-size: 40px;
    font-weight: bold;
    font-family: "游明朝体", "Yu Mincho", YuMincho, serif;
    text-align: center
    }
.president {
    font-size: 20px;
    font-weight: bold;
    font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
    text-align: center
    }
.section-recruit-page .main-head {
    font-family: "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", メイリオ, Meiryo, sans-serif
    }
.recruit-table {
    font-size: 14px;
    line-height: 1;
    }
.recruit-table:after {
    content:"";
    display:block;
    clear:both;
}
.recruit-table dt {
    float: left;
    margin-bottom: 40px;
    width: 240px
    }
.recruit-table dt.row2 {
    margin-bottom: 68px
    }
.recruit-table dt.row3 {
    margin-bottom: 96px
    }
.recruit-table dd {
    float: right;
    margin-bottom: 40px;
    width: 470px
    }
.recruit-table p {
    line-height: 1
    }
.recruit-table:last-of-type dt, .recruit-table:last-of-type dd {
    margin-bottom: 0
    }
.section-interview .l-r > *:nth-of-type(1) {
    width: 395px
    }
.section-interview .l-r > *:nth-of-type(2) {
    width: 515px
    }
.section-interview h3 {
    margin-bottom: 20px;
    font-size: 22px;
    line-height: 1;
    letter-spacing: 0.1em
    }
.section-interview p {
    margin-bottom: 40px;
    font-size: 14px;
    line-height: 1
    }
.interview {
    width: 430px;
    font-size: 14px
    }
.interview dt {
    margin-bottom: 0.7em;
    font-weight: bold;
    line-height: 1
    }
.interview dd {
    margin-bottom: 2.5em;
    line-height: 2.28
    }
.recruit-flow {
    margin-bottom: 40px;
    font-size: 12px;
    line-height: 1
    }
.recruit-flow > li:nth-of-type(1) {
    background: url(../images.9108ccf85606138e36841651911d6a14/recruit-flow01.png) no-repeat center center
    }
.recruit-flow > li:nth-of-type(2) {
    background: url(../images.9108ccf85606138e36841651911d6a14/recruit-flow02.png) no-repeat center center
    }
.recruit-flow > li:nth-of-type(3) {
    background: url(../images.9108ccf85606138e36841651911d6a14/recruit-flow03.png) no-repeat center center
    }
.recruit-flow > li:nth-of-type(4) {
    background: url(../images.9108ccf85606138e36841651911d6a14/recruit-flow04.png) no-repeat center center
    }
.recruit-flow > li:nth-of-type(5) {
    background: url(../images.9108ccf85606138e36841651911d6a14/recruit-flow05.png) no-repeat center center
    }
.recruit-flow > li:nth-of-type(6) {
    background: url(../images.9108ccf85606138e36841651911d6a14/recruit-flow06.png) no-repeat center center
    }
.recruit-flow ul {
    padding: 38px 0 38px 15px;
    width: 145px
    }
.recruit-flow > li:nth-of-type(4) ul {
    padding: 38px 0 70px 15px
    }
.recruit-flow ul li {
    margin-bottom: 20px
    }
.recruit-flow ul li:last-of-type {
    margin-bottom: 0
    }
.recruit-flow span {
    display: block;
    margin-bottom: 20px;
    font-weight: bold
    }
.flow-year {
    font-size: 18px;
    font-weight: bold
    }
.flow-year > li {
    position: relative;
    margin-right: 120px;
    width: 150px;
    text-align: center
    }
.flow-year li:after {
    content: "→";
    position: absolute;
    left: 150px;
    width: 120px;
    text-align: center
    }
.reception-top > .xx:nth-of-type(1) {
    width: 395px
    }
.reception-top > .xx:nth-of-type(2) {
    width: 515px
    }
.reception-top p {
    width: 430px;
    font-size: 14px;
    line-height: 2.28
    }
.reception-flow {
    position: relative;
    margin-left: auto;
    margin-right: auto;
    width: 950px;
    height: 242px;
    font-size: 12px
    }
.reception-flow li {
    position: relative;
    padding: 36px 0;
    margin-top: 71px;
    margin-right: 42px;
    width: 100px;
    color: #fff;
    line-height: 1.17;
    text-align: center;
    vertical-align: middle
    }
.reception-flow p {
    line-height: 1.17
    }
.reception-flow li:after {
    content: "";
    position: absolute;
    top: 0;
    left: 100px;
    width: 42px;
    height: 100px;
    background: url(../images.9108ccf85606138e36841651911d6a14/triangle01.png) no-repeat center center
    }
.reception-flow li:nth-of-type(1) {
    background: url(../images.9108ccf85606138e36841651911d6a14/reception-flow01.png) no-repeat center center
    }
.reception-flow li:nth-of-type(2) {
    background: url(../images.9108ccf85606138e36841651911d6a14/reception-flow02.png) no-repeat center center
    }
.reception-flow li:nth-of-type(3) {
    background: url(../images.9108ccf85606138e36841651911d6a14/reception-flow03.png) no-repeat center center
    }
.reception-flow li:nth-of-type(4) {
    background: url(../images.9108ccf85606138e36841651911d6a14/reception-flow04.png) no-repeat center center
    }
.reception-flow li:nth-of-type(5) {
    background: url(../images.9108ccf85606138e36841651911d6a14/reception-flow05.png) no-repeat center center
    }
.reception-flow li:nth-of-type(6) {
    background: url(../images.9108ccf85606138e36841651911d6a14/reception-flow06.png) no-repeat center center
    }
.reception-flow li:nth-of-type(7) {
    position: absolute;
    right: 0;
    top: 0;
    margin: 0;
    padding: 23px 0;
    background: url(../images.9108ccf85606138e36841651911d6a14/reception-flow07.png) no-repeat center center
    }
.reception-flow li:nth-of-type(8) {
    position: absolute;
    right: 0;
    bottom: 0;
    padding: 23px 0;
    background: url(../images.9108ccf85606138e36841651911d6a14/reception-flow07.png) no-repeat center center
    }
.reception-flow li:nth-of-type(6):after, .reception-flow li:nth-of-type(7):after {
    background: none
    }
.reception-flow li:nth-of-type(8):after {
    content: "6年以降";
    position: absolute;
    top: -15px;
    left: 0;
    width: 100px;
    height: 20px;
    color: #333;
    text-align: center;
    background: none
    }
.reception-flow li:nth-of-type(7):before {
    content: "";
    position: absolute;
    bottom: 5px;
    left: -30px;
    width: 20px;
    height: 20px;
    background: url(../images.9108ccf85606138e36841651911d6a14/triangle02.png) no-repeat center center
    }
.reception-flow li:nth-of-type(8):before {
    content: "";
    position: absolute;
    top: 5px;
    left: -30px;
    left: -30px;
    width: 20px;
    height: 20px;
    background: url(../images.9108ccf85606138e36841651911d6a14/triangle03.png) no-repeat center center
    }
.flow-arbeit {
    font-size: 14px;
    text-align: center
    }
.reception01 {
    font-size: 16px;
    color: #fff;
    line-height: 40px;
    background: url(../images.9108ccf85606138e36841651911d6a14/reception01.png) no-repeat
    }
.reception02 {
    font-size: 16px;
    color: #fff;
    line-height: 40px;
    background: url(../images.9108ccf85606138e36841651911d6a14/reception02.png) no-repeat
    }
/* Recruitページ ここまで ******************** */


div.managed_html_content_anchor, div.managed_html_content_anchor_pending {
    z-index:500 !important;
}
a {
    opacity:1;
    -webkit-transition: all 0s ease-in-out,opacity 0.6s ease-in-out;
    -moz-transition: all 0s ease-in-out,opacity 0.6s ease-in-out;
    -o-transition: all 0s ease-in-out,opacity 0.6s ease-in-out;
    -ms-transition: all 0s ease-in-out,opacity 0.6s ease-in-out;
    transition: all 0s ease-in-out,opacity 0.6s ease-in-out;
    
}
a:hover {
    opacity:0.8;
}
.main-visual .xx_sword {
    background-size:cover;
    background-position:center center;
    width:100%;
    padding-top:40%;
}
.main-visual {
    overflow: hidden;
    max-height: 900px;
    }
.main-visual img {
    max-width: 1200px;
    height:auto;
    position: relative;
}
.main-visual span.ima_bk {
    width: 100%;
    height: 100%;
    display: block;
    background: url("../images/img_bk.png") center center repeat-y;
    z-index: 30;
    position: absolute;
    top: 0;
    }
.l-r > .section-salon .more , .l-r > .section-information .more {
    position:absolute;
    bottom:0;
    left:0;
    right:0;
}
#map1 {
    height:450px;
    width:100%;
}
.map1 {
    height:450px;
    width:100%;
    position: relative;
    overflow: hidden;
}

.map1 iframe {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    margin: auto;
    max-width: initial;
    width: 100%;
    height: 100%;
}
.xx_gallery {
    overflow:hidden;
}
.xx_gallery .bx-window{
    overflow:visible !important;
}
.xx_pdb p:not(:last-of-type) {
    margin-bottom:2em;
}
.menu_slash:last-of-type,.mm0 {
    display:none;
}
.xx1:before,.xx2:before,.xx3:before,.xx4:before,.xx5:before,.xx6:before,.xx7:before,.xx8:before,.xx9:before {
    content:"0";
}
.infolistbox {
    position:relative;
}
.infolistbox li {
    margin:0 10px 10px 0;
    overflow:hidden;
}
.infolistbox .horizontally_long {
    width:470px;
    height:auto;
}
.infolistbox .vertically_long,.infolistbox .square {
    width:230px;
    height:auto;
}
.infolistbox li a {
    opacity:1;
}
.infolistbox li img{
    -webkit-transform: scale(1);
    transform: scale(1);
    -webkit-transition: all 0.8s ease-in-out;
    transition: all 0.8s ease-in-out;
}
.infolistbox li img:not([src*="."]) ~ span {
    background:#ddd;
    width:230px;
    height:230px;
    display:block;
}
.infolistbox li div {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0,0,0,.6);
    -webkit-transition: opacity .4s .3s;
    transition: opacity .4s .3s;
    opacity: 0;
    color:#fff;
    box-sizing:border-box;
    padding:10px;
}
.infolistbox li div p {
    -webkit-transition: opacity .3s;
    transition: opacity .3s;
    opacity: 0;
}
.infolistbox li p span {
    display:block;
    font-size:0.8em;
}
.infolistbox li:hover div {
    opacity: 1;
}
.infolistbox li:hover div p {
    -webkit-transition-delay: .4s;
    transition-delay: .4s;
    opacity: 1;
}
.infolistbox li:hover img {
    -webkit-transform: scale(1.4);
    transform: scale(1.4);
}
.staff_xx img {
    display:none;
}
.staff_xx img ~ span {
    display:block;
    width:100%;
    padding-top:30%;
    background-size: cover;
    background-position: center center;
}
#mainPhoto {
    display:block;
    margin:0 auto 40px;
}
/*追加css*/
.head-text{
    margin:0;
    padding:0;
    font-size:12px;
    font-weight:normal;
    display:block;
    width:100%;
    text-align:left;
}
