@charset "UTF-8";
/* font
----------------------------------------------- */
:root { --mincho: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "MS P明朝", serif; --gothic: 游ゴシック体, YuGothic, 'Yu Gothic', "游ゴシック Medium", "Yu Gothic Medium", 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif; }

/* sp
----------------------------------------------- */
* { -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box; }
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, section, summary, time, mark, audio, video { padding: 0; margin: 0; font: inherit; word-wrap: break-word; border: 0; vertical-align: baseline; outline: none; scroll-behavior: smooth; }
body { padding: 0; margin: 0; color: #272727; font-size: 3.4vw; font-family: var(--gothic); -webkit-text-size-adjust: 100%; font-style: normal; line-height: 1; }
article, aside, canvas, details, figcaption, figure, header, footer, hgroup, main, menu, nav, section, summary { display: block; }
blockquote, q { quotes: none; }
strong, b { font-weight: bold; }
ul, ol, li { list-style: none; }
table { border-spacing: 0; border-collapse: collapse; }
img, video, object { height: auto; border: none; display: block; }
ins { background: none; color: #000; text-decoration: none; }
mark { background-color: #ff9; color: #000; font-style: italic; font-weight: bold; }
del { text-decoration: line-through; }
abbr[title], dfn[title] { border-bottom: 1px dotted; cursor: help; }
hr { height: 1px; padding: 0; margin: 1em 0; border: 0; border-top: 1px solid #ccc; display: block; }
*:before, *:after { -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box; }
a { color: #272727; text-decoration: none; display: block; -moz-transition: all 0.3s cubic-bezier(0.76, 0, 0.24, 1); -o-transition: all 0.3s cubic-bezier(0.76, 0, 0.24, 1); -webkit-transition: all 0.3s cubic-bezier(0.76, 0, 0.24, 1); transition: all 0.3s cubic-bezier(0.76, 0, 0.24, 1); }
a:hover { opacity: 0.6; }
.clearfix:after { content: ''; display: block; clear: both; }
.pc { display: none; }
.sp { display: block; }

/* color
----------------------------------------------- */
:root { --gold: #c19d52; --red: #c7050e; }

/* common sp
----------------------------------------------- */
.wrapper { width: 100%; padding-top: 22vw; overflow: hidden; z-index: 1; position: relative; }
.second-wrapper { background: url(../images/wrapper-bg.jpg) no-repeat top 22vw center; background-size: 100%; }

.midashi01 { margin-bottom: 8vw; color: #000; text-align: center; position: relative; }
.midashi01 .en { margin-bottom: 2.5vw; font-size: 7.2vw; font-family: "baskerville-urw"; font-weight: 400; letter-spacing: 0.4vw; display: block; }
.midashi01 .jp { font-size: 3.4vw; display: block; }

.fade { opacity: 0; -moz-transition: 1.2s; -o-transition: 1.2s; -webkit-transition: 1.2s; transition: 1.2s; }
.fade-left { -moz-transform: translateX(-10px); -ms-transform: translateX(-10px); -webkit-transform: translateX(-10px); transform: translateX(-10px); }
.fade-right { -moz-transform: translateX(10px); -ms-transform: translateX(10px); -webkit-transform: translateX(10px); transform: translateX(10px); }
.fade-bottom { -moz-transform: translateY(10px); -ms-transform: translateY(10px); -webkit-transform: translateY(10px); transform: translateY(10px); }
.fade-active { opacity: 1; -moz-transform: translate(0); -ms-transform: translate(0); -webkit-transform: translate(0); transform: translate(0); }

.wave { opacity: 1; overflow: hidden; position: relative; display: table; }
.wave:before { content: ''; width: 100%; height: 100%; background: #d5d2cf; z-index: 2; position: absolute; top: 0; left: 0; opacity: 0; visibility: hidden; }
.wave.fade-active:before { opacity: 1; visibility: visible; animation-name: wave; animation-duration: 1.2s; animation-fill-mode: forwards; }
.wave.fade-active .wave-inner { opacity: 1; visibility: visible; -moz-transition-delay: 0.6s; -o-transition-delay: 0.6s; -webkit-transition-delay: 0.6s; transition-delay: 0.6s; }
.wave-inner { visibility: hidden; position: relative; -moz-transition: all 0.8s cubic-bezier(0.76, 0, 0.24, 1); -o-transition: all 0.8s cubic-bezier(0.76, 0, 0.24, 1); -webkit-transition: all 0.8s cubic-bezier(0.76, 0, 0.24, 1); transition: all 0.8s cubic-bezier(0.76, 0, 0.24, 1); }

@keyframes wave { 0% { -moz-transform-origin: top left; -ms-transform-origin: top left; -webkit-transform-origin: top left; transform-origin: top left; -moz-transform: scaleX(0); -ms-transform: scaleX(0); -webkit-transform: scaleX(0); transform: scaleX(0); }
  40% { -moz-transform-origin: top left; -ms-transform-origin: top left; -webkit-transform-origin: top left; transform-origin: top left; -moz-transform: scaleX(1); -ms-transform: scaleX(1); -webkit-transform: scaleX(1); transform: scaleX(1); }
  60% { -moz-transform-origin: top right; -ms-transform-origin: top right; -webkit-transform-origin: top right; transform-origin: top right; -moz-transform: scaleX(1); -ms-transform: scaleX(1); -webkit-transform: scaleX(1); transform: scaleX(1); }
  100% { -moz-transform-origin: top right; -ms-transform-origin: top right; -webkit-transform-origin: top right; transform-origin: top right; -moz-transform: scaleX(0); -ms-transform: scaleX(0); -webkit-transform: scaleX(0); transform: scaleX(0); } }

.cursor-pointer { width: 95px; margin: -50px 0 0 -50px; position: fixed; z-index: 10; pointer-events: none; cursor: none; }
.cursor-pointer.is-active img { opacity: 1; visibility: visible; -moz-transform: scale(1); -ms-transform: scale(1); -webkit-transform: scale(1); transform: scale(1); }
.cursor-pointer img { width: 100%; opacity: 0; visibility: hidden; -moz-transform: scale(0); -ms-transform: scale(0); -webkit-transform: scale(0); transform: scale(0); -moz-transition: all 0.4s cubic-bezier(0.76, 0, 0.24, 1); -o-transition: all 0.4s cubic-bezier(0.76, 0, 0.24, 1); -webkit-transition: all 0.4s cubic-bezier(0.76, 0, 0.24, 1); transition: all 0.4s cubic-bezier(0.76, 0, 0.24, 1); }

.more01 { width: 40vw; padding: 3.5vw 0; margin: auto; font-size: 3.95vw; font-family: "baskerville-urw"; font-weight: 400; text-align: center; letter-spacing: 0.2vw; border-bottom: 1px solid #878687; position: relative; display: table; }
.more01 span { padding-right: 5vw; margin: auto; background: url(../images/arrow-gray.png) no-repeat top 1.5vw right; background-size: 2vw; display: table; }

/* header sp
----------------------------------------------- */
.header { width: 100%; background: #fff; z-index: 10; position: fixed; top: 0; left: 0; }
.header-content { width: 100%; height: 12vw; z-index: 3; position: relative; }
.header-logo { padding-top: 0.5vw; font-size: 4.47vw; font-family: var(--mincho); font-weight: 600; position: absolute; top: 50%; left: 3.5vw; -moz-transform: translateY(-50%); -ms-transform: translateY(-50%); -webkit-transform: translateY(-50%); transform: translateY(-50%); }
.header-navi-button { width: 10vw; height: 100%; cursor: pointer; position: absolute; top: 0; right: 4vw; }
.header-navi-button .line { height: 1px; background: #28282d; position: absolute; -moz-transition: all 0.3s cubic-bezier(0.76, 0, 0.24, 1); -o-transition: all 0.3s cubic-bezier(0.76, 0, 0.24, 1); -webkit-transition: all 0.3s cubic-bezier(0.76, 0, 0.24, 1); transition: all 0.3s cubic-bezier(0.76, 0, 0.24, 1); }
.header-navi-button .line-top { width: 100%; top: 5vw; left: 0; }
.header-navi-button .line-bottom { width: 6vw; top: 7vw; left: 4vw; }

.header-sub-items { width: 100%; z-index: 3; position: relative; display: -webkit-box; display: -webkit-flex; display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; }
.header-sub-items li { width: 50%; height: 10vw; font-size: 3.68vw; font-family: var(--mincho); font-weight: 600; text-align: center; }
.header-sub-items li.interview:first-of-type { border-right: 1px solid #fff; }
.header-sub-items li.interview a { background: #c7050e url(../images/arrow-white.png) no-repeat center right 3.5vw; background-size: 2vw; }
.header-sub-items li.contact { width: 100%; }
.header-sub-items li.contact a { background: #ba9038 url(../images/arrow-white.png) no-repeat center right 3.5vw; background-size: 2vw; }
.header-sub-items a { width: 100%; height: 100%; color: #fff; display: -webkit-box; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; }

.header-navi { width: 100%; height: 100%; background: url(../images/header-navi-bg.jpg) no-repeat top center; background-size: cover; opacity: 0; visibility: hidden; z-index: 1; position: fixed; top: 0; left: 0; -moz-transition: all 0.5s cubic-bezier(0.76, 0, 0.24, 1); -o-transition: all 0.5s cubic-bezier(0.76, 0, 0.24, 1); -webkit-transition: all 0.5s cubic-bezier(0.76, 0, 0.24, 1); transition: all 0.5s cubic-bezier(0.76, 0, 0.24, 1); }
.header-navi-inner { width: 100%; height: 100%; overflow-y: auto; -ms-overflow-style: none; scrollbar-width: none; -webkit-overflow-scrolling: touch; }
.header-navi-inner::-webkit-scrollbar { display: none; }
.header-navi-scroll { width: 100%; height: 100%; overflow-y: auto; position: relative; -ms-overflow-style: none; scrollbar-width: none; -webkit-overflow-scrolling: touch; }
.header-navi-scroll::-webkit-scrollbar { display: none; }
.header-navi-content { padding: 40vw 0 1px; }
.header-navi-items { width: 90vw; margin: 0 auto 10vw; display: -webkit-box; display: -webkit-flex; display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; -webkit-justify-content: space-between; justify-content: space-between; }
.header-navi-items li { width: 100%; border-bottom: 1px solid #ada392; position: relative; }
.header-navi-items li.sub { width: 46%; font-size: 3.42vw; font-family: var(--mincho); }
.header-navi-items li.sub a { padding: 4vw; }
.header-navi-items li:after { content: '\f105'; color: #afa394; font-family: 'icon'; position: absolute; top: 50%; right: 2.5vw; -moz-transform: translateY(-50%); -ms-transform: translateY(-50%); -webkit-transform: translateY(-50%); transform: translateY(-50%); }
.header-navi-items a { padding: 4vw; display: -webkit-box; display: -webkit-flex; display: flex; -webkit-align-items: center; align-items: center; }
.header-navi-items .en { margin-right: 2vw; font-size: 5.79vw; font-family: "baskerville-urw"; font-weight: 400; letter-spacing: 0.2vw; }
.header-navi-items .jp { color: #c7050d; font-size: 3.42vw; font-family: var(--mincho); }
.header-navi-salon-items { width: 100%; margin-bottom: 10vw; display: -webkit-box; display: -webkit-flex; display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; -webkit-justify-content: center; justify-content: center; }
.header-navi-salon-items li { width: auto; height: 8vw; margin: 0 3.5vw; }
.header-navi-salon-items a { width: 100%; height: 100%; }
.header-navi-salon-items img { width: auto; height: 100%; }
.header-navi-sub-items { width: 100%; margin: 0 auto 100px; display: -webkit-box; display: -webkit-flex; display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; -webkit-justify-content: center; justify-content: center; }
.header-navi-sub-items li { font-size: 3.42vw; font-family: var(--mincho); letter-spacing: 0.2vw; }
.header-navi-sub-items li:first-child:before { display: none; }
.header-navi-sub-items li:before { content: '|'; margin: 0 1vw 0 2vw; display: inline-block; }
.header-navi-sub-items a { display: inline-block; }

.animation { opacity: 0; visibility: hidden; -moz-transition: all 0.75s cubic-bezier(0.76, 0, 0.24, 1); -o-transition: all 0.75s cubic-bezier(0.76, 0, 0.24, 1); -webkit-transition: all 0.75s cubic-bezier(0.76, 0, 0.24, 1); transition: all 0.75s cubic-bezier(0.76, 0, 0.24, 1); }

.header-navi-open { width: 100%; height: 100%; position: fixed; }
.header-navi-open .header-content { background: url(../images/header-navi-bg.jpg) no-repeat top center; background-size: cover; }
.header-navi-open .line-top { width: 10vw; top: 6vw; left: 0; -moz-transform: rotate(35deg); -ms-transform: rotate(35deg); -webkit-transform: rotate(35deg); transform: rotate(35deg); }
.header-navi-open .line-bottom { width: 10vw; top: 6vw; left: 0; -moz-transform: rotate(-35deg); -ms-transform: rotate(-35deg); -webkit-transform: rotate(-35deg); transform: rotate(-35deg); }
.header-navi-open .header-navi { opacity: 1; visibility: visible; }
.header-navi-open .animation { opacity: 1; visibility: visible; }
.header-navi-open .animation01 { -moz-transition-delay: 0.1s; -o-transition-delay: 0.1s; -webkit-transition-delay: 0.1s; transition-delay: 0.1s; }
.header-navi-open .animation02 { -moz-transition-delay: 0.2s; -o-transition-delay: 0.2s; -webkit-transition-delay: 0.2s; transition-delay: 0.2s; }
.header-navi-open .animation03 { -moz-transition-delay: 0.3s; -o-transition-delay: 0.3s; -webkit-transition-delay: 0.3s; transition-delay: 0.3s; }
.header-navi-open .animation04 { -moz-transition-delay: 0.4s; -o-transition-delay: 0.4s; -webkit-transition-delay: 0.4s; transition-delay: 0.4s; }
.header-navi-open .animation05 { -moz-transition-delay: 0.5s; -o-transition-delay: 0.5s; -webkit-transition-delay: 0.5s; transition-delay: 0.5s; }
.header-navi-open .animation06 { -moz-transition-delay: 0.6s; -o-transition-delay: 0.6s; -webkit-transition-delay: 0.6s; transition-delay: 0.6s; }
.header-navi-open .animation07 { -moz-transition-delay: 0.7s; -o-transition-delay: 0.7s; -webkit-transition-delay: 0.7s; transition-delay: 0.7s; }
.header-navi-open .animation08 { -moz-transition-delay: 0.8s; -o-transition-delay: 0.8s; -webkit-transition-delay: 0.8s; transition-delay: 0.8s; }
.header-navi-open .animation09 { -moz-transition-delay: 0.9s; -o-transition-delay: 0.9s; -webkit-transition-delay: 0.9s; transition-delay: 0.9s; }
.header-navi-open .animation10 { -moz-transition-delay: 1s; -o-transition-delay: 1s; -webkit-transition-delay: 1s; transition-delay: 1s; }
.header-navi-open .animation11 { -moz-transition-delay: 1.1s; -o-transition-delay: 1.1s; -webkit-transition-delay: 1.1s; transition-delay: 1.1s; }
.header-navi-open .animation12 { -moz-transition-delay: 1.2s; -o-transition-delay: 1.2s; -webkit-transition-delay: 1.2s; transition-delay: 1.2s; }

/* hero sp
----------------------------------------------- */
.hero { width: 100%; position: relative; }
.top-hero-head { padding: 18vw 0 12vw; background: url(../images/top-hero-text-bg.jpg) no-repeat center; background-size: cover; position: relative; }
.top-hero-title { padding-top: 6vw; margin-bottom: 4vw; background: url(../images/deco01.png) no-repeat top center; background-size: 22vw; }
.top-hero-title .jp { width: 90vw; margin: 0 auto 2.5vw; }
.top-hero-title .en { color: #bcac86; font-size: 2.89vw; font-family: "baskerville-urw"; font-weight: 400; text-align: center; line-height: 1.6; letter-spacing: 0.2vw; display: block; }
.top-hero-head-comment { width: 95vw; margin: auto; }
.top-hero-head-comment p { font-size: 3.16vw; font-family: var(--mincho); text-align: center; line-height: 1.8; }

.scrolldown { width: 1px; height: 20vw; z-index: 1; position: absolute; bottom: -10vw; left: 50%; -moz-transform: translateX(-50%); -ms-transform: translateX(-50%); -webkit-transform: translateX(-50%); transform: translateX(-50%); }
.scrolldown:after { content: ''; width: 1px; height: 14vw; background: #666463; position: absolute; opacity: 0; top: 0; animation: pathmove 1.4s ease-in-out infinite; }

@keyframes pathmove { 0% { height: 0; top: 0; opacity: 0; }
  30% { height: 10vw; opacity: 1; }
  100% { height: 0; top: 15vw; opacity: 0; } }

.top-hero-items { width: 100%; }
.top-hero-item { width: 85vw; position: relative; }
.top-hero-item-image { width: 100%; }
.top-hero-item-logo { min-width: 35vw; padding: 2.5vw 5vw; background: rgba(255, 255, 255, 0.8); position: absolute; top: 50%; left: 50%; display: -webkit-box; display: -webkit-flex; display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; -moz-transform: translate(-50%, -50%); -ms-transform: translate(-50%, -50%); -webkit-transform: translate(-50%, -50%); transform: translate(-50%, -50%); }
.top-hero-item-logo img { width: auto; height: 6vw; }
.top-hero-crown { padding: 8vw 0 10vw; background: url(../images/top-hero-bg.jpg) no-repeat top center; background-size: 100%; }
.top-hero-crown-title { width: 90vw; margin: 0 auto 4vw; }
.top-hero-crown-title img { width: 100%; }
.top-hero-crown-items { width: 100%; margin-bottom: 4vw; display: -webkit-box; display: -webkit-flex; display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; -webkit-justify-content: center; justify-content: center; }
.top-hero-crown-item { width: 30vw; margin: 0 0.5vw 1vw; }
.top-hero-crown-item.big { width: 42vw; }
.top-hero-crown-item img { width: 100%; }
.top-hero-crown-note { font-size: 2.89vw; text-align: center; line-height: 1.6; }

.second-hero { height: 55vw; }
.second-hero-title { width: 100%; padding-top: 8vw; text-align: center; background: url(../images/deco01.png) no-repeat top center; background-size: 24vw; z-index: 1; position: absolute; top: 50%; left: 0; -moz-transform: translateY(-50%); -ms-transform: translateY(-50%); -webkit-transform: translateY(-50%); transform: translateY(-50%); }
.second-hero-title .jp { margin-bottom: 2vw; font-size: 6.58vw; font-family: var(--mincho); display: block; }
.second-hero-title .en { color: #bcac86; font-size: 3.42vw; font-family: "baskerville-urw"; font-weight: 400; letter-spacing: 0.6vw; display: block; }

/* bread sp
----------------------------------------------- */
.breadcrumb { padding: 3.5vw 0 3vw; background: #fcfbf7; z-index: 1; position: relative; }
.breadcrumb-items { width: 90vw; margin: 0 auto; font-size: 0; }
.breadcrumb-items li { font-size: 3.16vw; position: relative; display: inline-block; }
.breadcrumb-items li:after { content: "\f105"; margin: 0 2.5vw 0 1.5vw; font-weight: normal; font-family: 'icon'; display: inline-block; }
.breadcrumb-items li:last-child:after { display: none; }
.breadcrumb-items li:last-child a { color: #c6050d; font-weight: bold; }
.breadcrumb-items a { display: inline-block; }
.breadcrumb-items .icon-home { color: #c6050d; }

/* footer sp
----------------------------------------------- */
.footer { width: 100%; background: url(../images/footer-bg.jpg) repeat-y top center; background-size: 100%; z-index: 1; position: relative; }
.footer:before { content: ''; width: 34vw; height: 6vw; background: url(../images/deco04.png) no-repeat center; background-size: 100%; z-index: 1; pointer-events: none; position: absolute; top: -2.5vw; left: 50%; -moz-transform: translateX(-50%); -ms-transform: translateX(-50%); -webkit-transform: translateX(-50%); transform: translateX(-50%); }
.footer:after { content: ''; width: 100%; height: 2px; background: url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuMCIgeTE9IjAuNSIgeDI9IjEuMCIgeTI9IjAuNSI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2RjYzlhMCIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iI2ZmZWZjOCIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA=='); background: -webkit-gradient(linear, 0% 50%, 100% 50%, color-stop(0%, #dcc9a0), color-stop(100%, #ffefc8)); background: -moz-linear-gradient(left, #dcc9a0, #ffefc8); background: -webkit-linear-gradient(left, #dcc9a0, #ffefc8); background: linear-gradient(to right, #dcc9a0, #ffefc8); z-index: 0; position: absolute; top: 0; left: 0; }
.footer-content { padding: 12vw 0 5vw; }
.footer-logo { margin: 0 auto 8vw; color: #000; font-size: 6.58vw; font-family: var(--mincho); display: table; }

.footer-contact-items { width: 70vw; margin: 0 auto 6vw; }
.footer-contact-items li { width: 100%; margin-bottom: 5vw; text-align: center; position: relative; }
.footer-contact-items li.interview a { background: #f4f5f3; }
.footer-contact-items li.interview .icon { background: #fff url(../images/icon-interview.png) no-repeat center; background-size: 5vw; }
.footer-contact-items li.salon a { background: #fdfdfd; }
.footer-contact-items li.salon .icon { background: #f6f5f4 url(../images/icon-salon.png) no-repeat center; background-size: 6vw; }
.footer-contact-items li.contact a { color: #fff; background: #c6ac72; }
.footer-contact-items li.contact .title { background: url(../images/arrow-white.png) no-repeat center right; background-size: 2vw; }
.footer-contact-items li.contact .icon { font-size: 4.61vw; background: #ad8d4b; }
.footer-contact-items li:before { content: ''; width: calc(100% - 8px); height: calc(100% - 8px); border: 1px solid #e5e3e3; pointer-events: none; z-index: 1; position: absolute; top: 50%; left: 50%; -moz-transform: translate(-50%, -50%); -ms-transform: translate(-50%, -50%); -webkit-transform: translate(-50%, -50%); transform: translate(-50%, -50%); }
.footer-contact-items a { padding: 6vw 0; background-size: 2.5vw; border: 1px solid #b6b3ae; }
.footer-contact-items .title { padding: 0 12vw; margin: auto; background: url(../images/arrow-black.png) no-repeat center right; background-size: 2vw; position: relative; display: table; }
.footer-contact-items .icon {width: 10vw;height: 10vw;-moz-border-radius: 50%;-webkit-border-radius: 50%;border-radius: 50%;position: absolute;top: -4px;left: -6px;display: -webkit-box;display: -webkit-flex;display: flex;-webkit-justify-content: center;justify-content: center;-webkit-align-items: center;align-items: center;}
.footer-contact-items .en { margin-bottom: 1.5vw; font-size: 6.58vw; font-family: "baskerville-urw"; font-weight: 400; letter-spacing: 0.4vw; display: block; }
.footer-contact-items .jp { font-size: 2.89vw; font-family: var(--mincho); display: block; }

.footer-navi { width: 80vw; margin: 0 auto 6vw; }
.footer-navi-title { padding: 4vw 2vw 3.5vw; font-size: 4.74vw; font-family: "baskerville-urw"; font-weight: 400; letter-spacing: 0.4vw; border-bottom: 1px solid #28282d; position: relative; }
.footer-navi-title.open .plus:after { -moz-transform: translate(-50%, -50%) rotate(90deg); -ms-transform: translate(-50%, -50%) rotate(90deg); -webkit-transform: translate(-50%, -50%) rotate(90deg); transform: translate(-50%, -50%) rotate(90deg); }
.footer-navi-title .plus { width: 2vw; height: 2vw; position: absolute; top: 50%; right: 2.5vw; -moz-transform: translateY(-50%); -ms-transform: translateY(-50%); -webkit-transform: translateY(-50%); transform: translateY(-50%); }
.footer-navi-title .plus:before { content: ''; width: 100%; height: 1px; background: #28282d; position: absolute; top: 50%; left: 50%; -moz-transform: translate(-50%, -50%); -ms-transform: translate(-50%, -50%); -webkit-transform: translate(-50%, -50%); transform: translate(-50%, -50%); -moz-transition: all 0.3s cubic-bezier(0.76, 0, 0.24, 1); -o-transition: all 0.3s cubic-bezier(0.76, 0, 0.24, 1); -webkit-transition: all 0.3s cubic-bezier(0.76, 0, 0.24, 1); transition: all 0.3s cubic-bezier(0.76, 0, 0.24, 1); }
.footer-navi-title .plus:after { content: ''; width: 1px; height: 100%; background: #28282d; position: absolute; top: 50%; left: 50%; -moz-transform: translate(-50%, -50%); -ms-transform: translate(-50%, -50%); -webkit-transform: translate(-50%, -50%); transform: translate(-50%, -50%); -moz-transition: all 0.3s cubic-bezier(0.76, 0, 0.24, 1); -o-transition: all 0.3s cubic-bezier(0.76, 0, 0.24, 1); -webkit-transition: all 0.3s cubic-bezier(0.76, 0, 0.24, 1); transition: all 0.3s cubic-bezier(0.76, 0, 0.24, 1); }
.footer-navi-items { width: 100%; display: none; }
.footer-navi-items li { width: 100%; font-size: 3.42vw; border-bottom: 1px solid #28282d; position: relative; }
.footer-navi-items li:after { content: '\f105'; font-family: 'icon'; position: absolute; top: 50%; right: 2.5vw; -moz-transform: translateY(-50%); -ms-transform: translateY(-50%); -webkit-transform: translateY(-50%); transform: translateY(-50%); }
.footer-navi-items a { padding: 4vw 2vw 3.5vw; }

.copyright { padding: 4vw 0; font-size: 3.16vw; font-family: var(--mincho); text-align: center; letter-spacing: 0.2vw; border-top: 1px solid #28282d; display: block; }

/* second sp
----------------------------------------------- */
.second { padding: 10vw 0; z-index: 1; position: relative; }

.second-text { width: 90vw; min-height: 100vw; margin: auto; position: relative; }
.second-text p { margin-bottom: 4vw; font-size: 3.68vw; line-height: 1.8; }

/* table sp
----------------------------------------------- */
.tbl { width:100%; margin: 0 auto 5%; position:relative; font-size: 3.4vw; }
.tbl:before { content:""; width: 84px; height: 2px; background: var(--gold); position: absolute; height: px; top: 0; }
.tbl th,.tbl td { vertical-align: middle; line-height: 1.6; letter-spacing: 0.02em; text-align: justify; display: inline-block; padding: 3%; } 
.tbl td { width: 75%; }
.tbl td .ast { margin-bottom: 0; }
.tbl th { width: 25%; color:var(--gold); font-weight: 600; text-align:center; display: inline-block; }
.tbl tr:first-child { border-top: 2px solid #c9c2c2; }
.tbl tr{ border-bottom: 1px solid #c9c2c2; }
.tbl tr:last-child { border-bottom: none; }
.tbl td a { color: var(--gold); font-size: 8vw; font-family: "baskerville-urw"; font-weight: 400; letter-spacing: 0.6vw;  display: inline-block; }
.tbl td a span:before { content:'\f095'; margin-right: 2px; color: var(--gold); font-family: icon; font-size: 70%; }

/* modaal
----------------------------------------------- */
#modal-hpb,#modal-contact { display: none; }
.modaal-container { position: relative; display: inline-block; width: 90%; text-align: left; max-width: 800px; border-radius: 0; background: #fff; box-shadow: 0 4px 15px rgb(000/10%); cursor: auto; margin: auto; }
.modaal-content-container { padding: 6vw; }
.modaal-content-container .more01 { margin: 0 0 2vw; width: 230px; padding: 4vw 0; font-size: 3.5vw; border: 1px solid; position: relative; }
.modaal-content-container .more01::after { content: "\f105"; font-family: 'icon'; position: absolute; top: 50%; -webkit-transform: translateY(-50%); transform: translateY(-50%);right: 8%; }
.modaal-content-container .more01 span { background: none; }
.modaal-content-container .midashi { font-size: 6vw; margin-bottom: 8vw; font-family: "baskerville-urw"; font-weight: 400; letter-spacing: 0.4vw;text-align: center; }
.modaal-content-container .midashi .hpb,.modaal-content-container .midashi .icon.icon-hpb1 { color: #9b2127;}
.modaal-content-container .midashi .contact-title { font-family: var(--mincho); }
.more-btn-wra {display: -webkit-box; display: -moz-box; display: -webkit-flex; display: box; display: flex; flex-wrap: wrap; -webkit-flex-wrap: wrap; gap: 10px; margin: 0 auto; -webkit-justify-content: center; justify-content: center; }

/* =============================================
pc-size
================================================*/
@media screen and (min-width: 736px) {
body { font-size: 14px; }

/* common pc
----------------------------------------------- */
.wrapper { padding-top: 0; }
.second-wrapper { background: url(../images/wrapper-bg-pc.jpg) no-repeat top center; background-size: 100%; }
.pc { display: block; }
.sp { display: none; }

.midashi01 { margin-bottom: 50px; }
.midashi01 .en { margin-bottom: 8px; font-size: 40px; letter-spacing: 4px; }
.midashi01 .jp { font-size: 15px; }

.more01 { width: 160px; padding: 16px 0; font-size: 15px; letter-spacing: 2px; }
.more01 span { padding-right: 18px; background-position: top 5px right; background-size: 8px; }

/* header pc
----------------------------------------------- */
.header { height: 110px; background: none; border-bottom: 1px solid #898987; -moz-transition: all 0.3s cubic-bezier(0.76, 0, 0.24, 1); -o-transition: all 0.3s cubic-bezier(0.76, 0, 0.24, 1); -webkit-transition: all 0.3s cubic-bezier(0.76, 0, 0.24, 1); transition: all 0.3s cubic-bezier(0.76, 0, 0.24, 1); }
.header.active { background: #fff; }
.pc-header {width: 100%;height: 100%;display: -webkit-box;display: -webkit-flex;display: flex;-webkit-flex-wrap: wrap;flex-wrap: wrap;-webkit-align-items: center;align-items: center;}
.pc-header-content {width: 90%;margin: auto;display: -webkit-box;display: -webkit-flex;display: flex;-webkit-flex-wrap: wrap;flex-wrap: wrap;-webkit-align-items: center;align-items: center;justify-content: space-between;position: relative;}
.pc-header-logo {font-size: 16px;font-family: var(--mincho);font-weight: 600;position: absolute;top: 6px;left: 0;}
.pc-header-right { width: 100%; }
.pc-header-sub-items { margin-bottom: 15px; display: -webkit-box; display: -webkit-flex; display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; -webkit-justify-content: flex-end; justify-content: flex-end; }
.pc-header-sub-items li { margin-left: 10px; font-size: 14px; font-family: var(--mincho); text-align: center; }
.pc-header-sub-items li.contact a { color: #fff; background: #c9ad73 url(../images/arrow-white.png) no-repeat center right 14px; background-size: 8px; }
.pc-header-sub-items a { width: 100%; height: 100%; padding: 6px 32px 5px 18px; background: #edebe6 url(../images/arrow-gray.png) no-repeat center right 14px; background-size: 8px; display: -webkit-box; display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-align-items: center; align-items: center; }
.pc-header-navi-items { display: -webkit-box; display: -webkit-flex; display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; -webkit-justfy-content: flex-end; justify-content: flex-end; }
.pc-header-navi-items li:first-child { margin-left: 0; }
.pc-header-navi-items li { margin-left: 24px; font-size: 18px; font-family: "baskerville-urw"; font-weight: 400; text-align: center; letter-spacing: 1px; position: relative; }
.pc-header-navi-items li.current a, .pc-header-navi-items li:hover a { color: #c19d52; opacity: 1; }
.pc-header-navi-items li.current a:after, .pc-header-navi-items li:hover a:after { width: 100%; }

/* hero pc
----------------------------------------------- */
.top-hero-head { padding: 175px 0 65px; background: url(../images/top-hero-text-bg-pc.jpg) no-repeat center; background-size: cover; }
.top-hero-title { padding-top: 45px; margin-bottom: 20px; background: url(../images/deco01.png) no-repeat top center; background-size: 140px; }
.top-hero-title .jp { width: 590px; margin-bottom: 20px; }
.top-hero-title .en { font-size: 15px; letter-spacing: 2px; }
.top-hero-head-comment p { font-size: 15px; }

.scrolldown { height: 75px; bottom: -35px; }
.scrolldown:after { height: 50px; }
@keyframes pathmove { 30% { height: 50px; opacity: 1; }
  100% { height: 0; top: 75px; opacity: 0; } }

.top-hero-item { width: 670px; }
.top-hero-item-logo { min-width: 220px; padding: 20px 30px; }
.top-hero-item-logo img { height: 38px; }
.top-hero-crown { padding: 40px 0 20px; background: url(../images/top-hero-bg-pc.jpg) no-repeat top center; background-size: 100%; }
.top-hero-crown-title { width: 650px; margin-bottom: 25px; }
.top-hero-crown-items { margin-bottom: 25px; }
.top-hero-crown-item { width: 150px; margin: 0 5px; }
.top-hero-crown-item.big { width: 150px; }
.top-hero-crown-note { font-size: 12px; }
.second-hero { height: 420px; }
.second-hero-title { padding-top: 45px; background-size: 140px; top: 180px; -moz-transform: translateY(0); -ms-transform: translateY(0); -webkit-transform: translateY(0); transform: translateY(0); }
.second-hero-title .jp { margin-bottom: 10px; font-size: 40px; }
.second-hero-title .en { font-size: 15px; letter-spacing: 2px; }

/* bread pc
----------------------------------------------- */
.breadcrumb { padding: 12px 0 10px; }
.breadcrumb-items { width: 90%; }
.breadcrumb-items li { font-size: 14px; }
.breadcrumb-items li:after { margin: 0 12px 0 10px; }

/* footer pc
----------------------------------------------- */
.footer { background: url(../images/footer-bg-pc.jpg) no-repeat top center; background-size: cover; }
.footer:before { width: 140px; height: 24px; top: -10px; }
.footer:after { height: 4px; }
.footer-content {width: 90%;padding: 75px 0 60px;margin: auto;}
.footer-logo { font-size: 34px; margin-bottom: 40px; }
.footer-contact-items { width: 100%; margin-bottom: 50px; display: -webkit-box; display: -webkit-flex; display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; -webkit-justify-content: space-between; justify-content: space-between; }
.footer-contact-items li {width: 32%;margin: 0;}
.footer-contact-items li.interview .icon { background-size: 26px; }
.footer-contact-items li.salon .icon { background-size: 32px; }
.footer-contact-items li.contact .title { background-position: top 18px right; background-size: 10px; }
.footer-contact-items li.contact .icon { font-size: 18px; }
.footer-contact-items a { padding: 24px 0 30px; }
.footer-contact-items .title { width: 82%; padding: 0; background-position: top 30px right; background-size: 10px; }
.footer-contact-items .icon {width: 30px;height: 30px;}
.footer-contact-items .en {margin-bottom: 8px;font-size: 22px;letter-spacing: 2px;}
.footer-contact-items .jp { font-size: 12px; }
.footer-navi { width: 100%; margin-bottom: 0; }
.pc-footer-navi-inner { display: -webkit-box; display: -webkit-flex; display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; -webkit-justify-content: space-between; justify-content: space-between; -webkit-align-items: flex-start; align-items: flex-start; }
.footer-navi-box { width: 48%; display: -webkit-box; display: -webkit-flex; display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; -webkit-justify-content: space-between; justify-content: space-between; -webkit-align-items: flex-start; align-items: flex-start; }
.footer-navi-box:first-child { width: 100%; margin-bottom: 20px; }
.footer-navi-title { width: 100%; padding: 0; margin-bottom: 20px; font-size: 16px; font-family: "baskerville-urw"; font-weight: 400; letter-spacing: 2px; border-bottom: none; display: -webkit-box; display: -webkit-flex; display: flex; -webkit-align-items: center; align-items: center; }
.footer-navi-title:after { content: ''; height: 1px; margin-left: 15px; background: #cfccc7; flex: 1; }
.pc-footer-navi-items { margin-right: 40px; }
.pc-footer-navi-items li { padding-left: 15px; margin-bottom: 15px; font-size: 14px; position: relative; }
.pc-footer-navi-items li:before { content: '\f105'; font-size: 12px; font-family: 'icon'; opacity: 0.5; position: absolute; top: 1px; left: 0; }
.copyright { padding: 20px 0 18px; font-size: 12px; letter-spacing: 1px; }

/* second pc
----------------------------------------------- */
.second { padding: 0 0 100px; }
.second-text { width: 90%; min-height: 500px; margin: auto; }
.second-text p { margin-bottom: 20px; font-size: 16px; }

/* table pc
----------------------------------------------- */
.tbl { margin: 0 auto 40px; font-size: 16px; }
.tbl:before { width: 22%; }
.tbl th { padding: 20px 16px; }
.tbl td { padding: 20px 0 20px 30px; }
.tbl td { width: 77%; }
.tbl th { width: 22%; text-align: center; }
.tbl td a { font-size: 36px; letter-spacing: 2px; }
.tbl td a span:before { margin-right: 5px; }

/* modaal
----------------------------------------------- */
.modaal-container {position: relative; display: inline-block; width: 90%; text-align: left; max-width: 800px; border-radius: 0; background: #fff; box-shadow: 0 4px 15px rgb(000/10%); cursor: auto; margin: auto; }
.modaal-content-container {padding: 45px; }
.modaal-content-container .more01 {margin: 0; width: 230px; padding: 15px 0; font-size: 14px; }
.modaal-content-container .more01::after {margin-left: 10px; }
.modaal-content-container .midashi {font-size: 25px; margin-bottom: 30px;letter-spacing: 1px; }
.more-btn-wra {display: -webkit-box; display: -moz-box; display: -webkit-flex; display: box; display: flex; flex-wrap: wrap; -webkit-flex-wrap: wrap; gap: 10px; margin: 0 auto; -webkit-justify-content: center; justify-content: center; }
.more-btn-wra.contact-area { gap: 0; }
.more-btn-wra.contact-area .focus { width: 100%; margin-top: 10px; text-align: center; }
}

@media screen and (min-width: 900px) { 
.pc-header {width: 100%;height: 100%;display: -webkit-box;display: -webkit-flex;display: flex;-webkit-flex-wrap: wrap;flex-wrap: wrap;-webkit-align-items: center;align-items: center;}
.pc-header-logo {font-size: 20px; top: 4px;}
.pc-header-right { -webkit-justify-content: flex-end; justify-content: flex-end; }
.footer-contact-items .icon { width: 40px;height: 40px; }
.footer-contact-items li.interview .icon { background-size: 22px; }
.footer-contact-items li.salon .icon { background-size: 24px; }
.footer-contact-items li.contact .icon { font-size: 20px; }
.footer-contact-items .en { font-size: 24px; }
.footer-contact-items .jp { font-size: 13px; }
}

@media screen and (min-width: 1000px) {
.pc-header-logo { font-size: 22px; top: 50%; transform: translateY(-50%); -webkit-transform: translateY(-50%); }
.footer-contact-items .icon { width: 50px; height: 50px; left: -10px; }
.footer-contact-items li.salon .icon { background-size: 20px; }
.footer-contact-items .en { font-size: 28px; }
.footer-navi-box { width: 26%; }
.footer-navi-box:first-child { width: 72%; }
}

@media screen and (min-width: 1300px) {
.pc-header-content { width: 1200px; margin: auto; }
.pc-header-logo{ font-size: 22px; }
.pc-header-navi-items li { margin-left: 40px; }
.pc-header-sub-items li { font-size: 16px; }
.breadcrumb-items { width: 1200px; }
.footer-content { width: 1200px; }
.footer-logo { font-size: 32px; }
.footer-contact-items li { width: 390px; }
.footer-contact-items li.interview .icon,.footer-contact-items li.salon .icon { background-size: 26px; }
.footer-contact-items .icon { width: 55px; height: 55px; }
.footer-navi-box:first-child { width: 780px; }
.footer-navi-box { width: 380px; }
.second-text { width: 1200px; }
}

/* retina用
----------------------------------------------- */ 
@media screen and (min-width: 736px) and (-webkit-min-device-pixel-ratio: 2), screen and (min-width: 736px) and (min-resolution: 2dppx) {
.second-wrapper { background: url(../images/wrapper-bg-pc@2x.jpg) no-repeat top center; background-size: 100%; }
.more01 span { background: url(../images/arrow-gray@2x.png) no-repeat top 5px right; background-size: 8px; }
.pc-header-sub-items li.contact a { background: #c9ad73 url(../images/arrow-white@2x.png) no-repeat center right 14px; background-size: 8px; }
.pc-header-sub-items a { background: #edebe6 url(../images/arrow-gray@2x.png) no-repeat center right 14px; background-size: 8px; }
.top-hero-head { background: url(../images/top-hero-text-bg-pc@2x.jpg) no-repeat center; background-size: cover; }
.top-hero-title { background: url(../images/deco01@2x.png) no-repeat top center; background-size: 140px; }
.top-hero-crown { background: url(../images/top-hero-bg-pc@2x.jpg) no-repeat top center; background-size: 100%; }
.second-hero-title { background: url(../images/deco01@2x.png) no-repeat top center; background-size: 140px; }
.footer { background: url(../images/footer-bg-pc@2x.jpg) no-repeat top center; background-size: cover; }
.footer:before { width: 140px; height: 24px; background: url(../images/deco04@2x.png) no-repeat center; background-size: 100%; top: -10px; }
.footer-contact-items li.interview .icon {background: #fff url(../images/icon-interview@2x.png) no-repeat center;background-size: 22px;}
.footer-contact-items li.salon .icon { background: #f6f5f4 url(../images/icon-salon@2x.png) no-repeat center; background-size: 22px; }
.footer-contact-items .title {background: url(../images/arrow-black@2x.png) no-repeat top 20px right;background-size: 10px;} }
