@charset "UTF-8";
* { -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; }
body { padding: 0; margin: 0; color: var(--black); font-size: 3.3vw; font-weight: 400; font-family: var(--gothic); font-optical-sizing: auto; -webkit-text-size-adjust: 100%; font-style: normal; line-height: 1; font-feature-settings: "palt"; letter-spacing: .05em; text-align:justify; text-justify:auto; }
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: var(--black); 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; }


/* common sp
----------------------------------------------- */
.wrapper {width: 100%;background: #fcf9f6;overflow: hidden;z-index: 1;position: relative;}

.fade { opacity: 0; -moz-transition: all 1.5s cubic-bezier(0.05, 0.05, 0.31, 0.97); -o-transition: all 1.5s cubic-bezier(0.05, 0.05, 0.31, 0.97); -webkit-transition: all 1.5s cubic-bezier(0.05, 0.05, 0.31, 0.97); transition: all 1.5s cubic-bezier(0.05, 0.05, 0.31, 0.97); }
.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-blur { -webkit-filter: blur(15px); filter: blur(15px); -moz-transform: translateY(10px); -ms-transform: translateY(10px); -webkit-transform: translateY(10px); transform: translateY(10px); -moz-transition: all 1.8s cubic-bezier(0.76, 0, 0.24, 1); -o-transition: all 1.8s cubic-bezier(0.76, 0, 0.24, 1); -webkit-transition: all 1.8s cubic-bezier(0.76, 0, 0.24, 1); transition: all 1.8s cubic-bezier(0.76, 0, 0.24, 1); -moz-transition: all 1.5s cubic-bezier(0.05, 0.05, 0.31, 0.97); -o-transition: all 1.5s cubic-bezier(0.05, 0.05, 0.31, 0.97); -webkit-transition: all 1.5s cubic-bezier(0.05, 0.05, 0.31, 0.97); transition: all 1.5s cubic-bezier(0.05, 0.05, 0.31, 0.97); }
.fade-blur.active { -webkit-filter: blur(0); filter: blur(0); -moz-transform: translate(0); -ms-transform: translate(0); -webkit-transform: translate(0); transform: translate(0); }
.fade-active { opacity: 1; -moz-transform: translate(0); -ms-transform: translate(0); -webkit-transform: translate(0); transform: translate(0); -webkit-filter: blur(0); filter: blur(0); }

.socila-items { display: -webkit-box; display: -webkit-flex; display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; -webkit-justify-content: center; justify-content: center; }
.socila-items li { margin: 0 2.5vw; font-size: 6.58vw; }
.socila-items a { color: #fff; }

.more01 { padding-right: 12vw; margin: 0 auto; color: var(--pink01); font-size: 3.95vw; font-weight: bold; position: relative; display: table; }
.more01:before { content: ''; width: 8vw; height: 1px; background: var(--pink01); position: absolute; top: 50%; right: 2.5vw; -moz-transform: translateY(-50%); -ms-transform: translateY(-50%); -webkit-transform: translateY(-50%); transform: translateY(-50%); }
.more01:after { content: ''; width: 5vw; height: 5vw; border: 1px solid var(--pink01); -moz-border-radius: 50%; -webkit-border-radius: 50%; border-radius: 50%; position: absolute; top: 50%; right: 0; -moz-transform: translateY(-50%); -ms-transform: translateY(-50%); -webkit-transform: translateY(-50%); transform: translateY(-50%); }


/* 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;

/* color */
--black: #28282d; 
--pink00: #fdf1f1; /*極薄*/ 
--pink01: #db7777; /*基本（文字など）*/ 
--pink02: #ca485b; /*濃い（cvボタンなど）*/ 
--pink03: #c37e8a; /*くすみ（サロン情報ボタンなど）*/ 
}


/*ast(sp)*/
p.ast { font-size: 3.2vw !important; padding-left: 1em;text-indent: -1em; text-align:justify; text-justify:auto;}
p.ast:last-child { margin-bottom: 0;}
ul.ast { margin: 0 auto 8vw;}
ul.ast li { font-size: 3.2vw !important; padding-left: 1em;text-indent: -1em; text-align:justify; text-justify:auto; margin-bottom: 3%; line-height: 1.5;}
p.ast:last-child,ul.ast li:last-child { margin-bottom: 0;}

/* margin(sp) */
div.mb10,p.mb10,ul.mb10,li.mb10,span.mb10,h2.mb10,h3.mb10,h4.mb10,h5.mb10,h6.mb10,table.mb10,img.mb10 { margin-bottom: 2vw;}
div.mb20,p.mb20,ul.mb20,li.mb20,span.mb20,h2.mb20,h3.mb20,h4.mb20,h5.mb20,h6.mb20,table.mb20,img.mb20 { margin-bottom: 4vw;}
div.mb40,p.mb40,ul.mb40,li.mb40,span.mb40,h2.mb40,h3.mb40,h4.mb40,h5.mb40,h6.mb40,table.mb40,img.mb40 { margin-bottom: 6vw;}
div.mb60,p.mb60,ul.mb60,li.mb60,span.mb60,h2.mb60,h3.mb60,h4.mb60,h5.mb60,h6.mb60,table.mb60,img.mb60 { margin-bottom: 8vw;}
div.mb80,p.mb80,ul.mb80,li.mb80,span.mb80,h2.mb80,h3.mb80,h4.mb80,h5.mb80,h6.mb80,table.mb80,img.mb80 { margin-bottom: 10vw;}
div.mb100,p.mb100,ul.mb100,li.mb100,span.mb100,h2.mb100,h3.mb100,h4.mb100,h5.mb100,h6.mb100,table.mb100,img.mb100  { margin-bottom: 14vw;}
div.mb0,p.mb0,ul.mb0,li.mb0,span.mb0,h2.mb0,h3.mb0,h4.mb0,h5.mb0,h6.mb0,table.mb0,img.mb0  { margin-bottom: 0;}

/* table */
.tbl01 {width:100%;margin: 0 auto 6vw;position:relative;font-size: 3.4vw;font-feature-settings: "palt";letter-spacing: .04em;}
.tbl01:before {width: 100px;position:absolute;background: var(--pink01);height:2px;top:0px;}
.tbl01 th,.tbl01 td {vertical-align:middle;line-height: 1.8;letter-spacing: 0.02em;text-align: justify;display: inline-block;padding: 3%;}
.tbl01 td {width: 100%;}
.tbl01 th {text-align:center;width: 100%;color: #fff;font-weight: 600;display: block;background: var(--pink01);}
.tbl01 tr:last-child { border-bottom: none;}
.tbl01 td a {color: var(--pink01);font-size: 5.4vw; font-family: "futura-pt"; font-weight: 400;letter-spacing: .06em;display: inline-block;}
.tbl01 td a span:before {margin-right: 3px;font-family:icon;content:'\f095';color: var(--pink01);font-size: 80%;}
.tbl01 td>li span {height: 18px;width: 18px;border-radius:50%;display: inline-block;text-align:center;background: #eee;color: #49382f;font-size: 80%;margin-right: 5px;font-family: "futura-pt";padding-top: 1px;padding-left: 0;text-indent: 0;  }
.tbl01 td>li { margin-bottom: 2%;font-size: 3.2vw;font-feature-settings: "palt";letter-spacing: .03em;padding-left: 2em;text-indent: -2em; text-align:justify; text-justify:auto;}
.tbl01 p span{ font-weight: bold; display: block; border-left:3px solid #000; padding-left: 2vw; line-height: 1.2; margin-bottom: 2vw;}
.tbl01 small { font-size: 84%;}
.tbl01 a.line { font-family: var(--gothic); text-decoration: underline; font-size: 3.4vw; font-weight: bold;}



/* midashi */
.midashi01 {width: 100%;margin: 0 auto 5vw;position: relative;}
.midashi01 .en {margin-bottom: 1vw;font-size: 7vw;color: var(--pink01);font-family: "futura-pt";font-weight: 400;letter-spacing: .04em;display: -webkit-box;display: -webkit-flex;display: flex;-webkit-align-items: center;align-items: center;}
.midashi01 .en:after { content: ''; height: 1px; margin: 0.5vw 0 0 2vw; background: #c6c6c7; flex: 1; }
.midashi01 .jp {font-size: 3vw;display: block;line-height: 1.4;}

.midashi02 {padding: 6vw 0;margin-bottom: 8vw;border-top: 1px solid #b8b8b8;border-bottom: 1px solid #b8b8b8;text-align: center;}
.midashi02 .jp{ display: block;font-family: var(--mincho);font-size: 5vw;letter-spacing: .06em;margin-bottom: 2vw;}
.midashi02 .en{ display: block; font-size: 3.2vw;color: var(--pink01);font-family: "futura-pt";font-weight: 400;letter-spacing: .04em;}



/* modaal
----------------------------------------------- */
.modal-item{display:none;}
.modaal-content-container {padding: 8vw 4vw 2vw;}
.modaal-content-container .more01{margin-bottom: 4vw;border: 1px solid;padding: 4vw 4vw 3vw;display: block;}
.modaal-content-container .more01:before{ right:3.5vw;}
.modaal-content-container .more01:after{ right: 2vw;}
.modaal-content-container .midashi01{color: var(--pink01);font-size: 7.4vw;display: -webkit-box;display: -moz-box;display: -webkit-flex;display: box;display: flex;justify-content: center;-webkit-justify-content: center;align-items: center;-webkit-align-items: center;margin-bottom: 7vw;}
.modaal-content-container .midashi01 .icon{margin-right: 2vw; color: var(--pink01);}
.modaal-content-container .midashi01:after {background: #b28330;}





/* header sp
----------------------------------------------- */
.header { width: 100%; height: 16vw; border-bottom: 1px solid #fafbfa; -moz-box-shadow: 0 16vw 8vw -8vw rgba(97, 86, 86, 0.4) inset; -webkit-box-shadow: 0 16vw 8vw -8vw rgba(97, 86, 86, 0.4) inset; box-shadow: 0 16vw 8vw -8vw rgba(97, 86, 86, 0.4) inset; z-index: 10; position: absolute; top: 0; left: 0; }
.header-content { height: 100%; position: relative; }
.header-logo { width: 26vw; position: absolute; top: 50%; left: 2.5vw; -moz-transform: translateY(-50%); -ms-transform: translateY(-50%); -webkit-transform: translateY(-50%); transform: translateY(-50%); }
.header-logo img { width: 100%; }
.header-contact { padding: 3vw 8vw 2.5vw; color: #fff; font-size: 3.6vw; font-family: "futura-pt"; font-weight: 400; letter-spacing: 0.2vw; background: var(--pink02); -moz-border-radius: 10vw; -webkit-border-radius: 10vw; border-radius: 10vw; position: absolute; top: 50%; right: 22vw; -moz-transform: translateY(-50%); -ms-transform: translateY(-50%); -webkit-transform: translateY(-50%); transform: translateY(-50%); }
.header-social-items { position: absolute; top: 20vw; right: 5vw; }
.header-social-items li { margin-bottom: 4vw; font-size: 6.58vw; text-align: center; text-shadow: 0 0 8px rgba(147, 89, 89, 0.3); }
.header-social-items li.instagram { text-shadow: 0 0 8px rgba(147, 89, 89, 0.8); }
.header-social-items a { color: #fff; }
.header-navi-button { width: 12vw; height: 8vw; cursor: pointer; z-index: 11; position: fixed; top: 3.5vw; right: 5vw; filter: drop-shadow(0 0 3px #666);}
.header-navi-button .line { height: 1px; background: #fff; position: absolute; left: 0; -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: 2.5vw; }
.header-navi-button .line-bottom { width: 8vw; top: 5.5vw; }
.header-navi { width: 100%; height: 100%; background: url(../images/header-navi-bg.jpg) no-repeat top center; background-size: cover; visibility: hidden; opacity: 0; z-index: 10; position: fixed; top: 0; left: 0; -moz-transition: cubic-bezier(0.76, 0, 0.24, 1) 0.5s; -o-transition: cubic-bezier(0.76, 0, 0.24, 1) 0.5s; -webkit-transition: cubic-bezier(0.76, 0, 0.24, 1) 0.5s; transition: cubic-bezier(0.76, 0, 0.24, 1) 0.5s; }
.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: 20vw 0 100px; }
.header-navi-logo { width: 26vw; position: absolute; top: 2.5vw; left: 2.5vw; }
.header-navi-logo img { width: 100%; }
.header-navi-items { width: 80vw; margin: 0 auto 2vw; }
.header-navi-item { width: 100%; position: relative; }
.header-navi-item-title { padding: 5vw 1vw; color: #fff; border-bottom: 1px solid #e6a89f; position: relative; display: -webkit-box; display: -webkit-flex; display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; -webkit-align-items: baseline; align-items: baseline; }
.header-navi-item-title: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%); }
.header-navi-item-title .en { margin-right: 2.5vw; font-size: 5.79vw; font-family: "futura-pt"; font-weight: 400; letter-spacing: 0.4vw; }
.header-navi-item-title .jp { font-size: 3.4vw; font-family: var(--mincho); }
.header-navi-half-items { width: 80vw; margin: 0 auto 8vw; 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-half-items li { width: 48%; color: #fff; font-size: 3.6vw; font-family: var(--mincho); border-bottom: 1px solid #e6a89f; position: relative; }
.header-navi-half-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%); }
.header-navi-half-items a { padding: 4vw 1vw; color: #fff; }
.header-navi-campaign { width: 80vw; margin: 0 auto 6vw; }
.header-navi-campaign img { width: 100%; }
.header-navi-contact { width: 80vw; padding: 6vw 0 5.5vw; margin: 0 auto 8vw; color: #fff; font-size: 3.6vw; font-weight: bold; text-align: center; background: var(--pink02); -moz-border-radius: 10vw; -webkit-border-radius: 10vw; border-radius: 10vw; }
.header-navi-contact:before { content: '\e922'; margin-right: 1vw; font-family: 'icon'; display: inline-block; }
.header-navi-social-items { margin-bottom: 8vw; }
.header-navi-sub-items { width: 100%; margin: 0 auto; 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 { color: #fff; font-size: 3.2vw; }
.header-navi-sub-items li:first-child:before { display: none; }
.header-navi-sub-items li:before { content: '|'; margin: 0 2vw 0 3vw; display: inline-block; }
.header-navi-sub-items a { color: #fff; display: inline-block; }
.animation { opacity: 0; visibility: hidden; -moz-transform: translateY(5px); -ms-transform: translateY(5px); -webkit-transform: translateY(5px); transform: translateY(5px); -moz-transition: all 0.6s cubic-bezier(0.76, 0, 0.24, 1); -o-transition: all 0.6s cubic-bezier(0.76, 0, 0.24, 1); -webkit-transition: all 0.6s cubic-bezier(0.76, 0, 0.24, 1); transition: all 0.6s cubic-bezier(0.76, 0, 0.24, 1); }
.header-navi-open { width: 100%; height: 100%; position: fixed; }
.header-navi-open .line-top { top: 4vw; -moz-transform: rotate(25deg); -ms-transform: rotate(25deg); -webkit-transform: rotate(25deg); transform: rotate(25deg); }
.header-navi-open .line-bottom { width: 100%; top: 4vw; -moz-transform: rotate(-25deg); -ms-transform: rotate(-25deg); -webkit-transform: rotate(-25deg); transform: rotate(-25deg); }
.header-navi-open .header-navi { opacity: 1; visibility: visible; }
.header-navi-open .animation { opacity: 1; visibility: visible; -moz-transform: translateY(0); -ms-transform: translateY(0); -webkit-transform: translateY(0); transform: translateY(0); }
.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 { height: 158vw; background: url(../images/top-hero-bg.jpg) no-repeat top center; background-size: cover; }
.top-hero-logo { width: 70vw; position: absolute; bottom: 15vw; left: 50%; -moz-transform: translateX(-50%); -ms-transform: translateX(-50%); -webkit-transform: translateX(-50%); transform: translateX(-50%); }
.top-hero-logo img { width: 100%; }
.top-hero-ticker-items { width: 100%; position: absolute; bottom: -6vw; left: 0; }
.top-hero-ticker-item { color: #fff; font-size: 15.79vw; font-family: "futura-pt"; font-weight: 300; letter-spacing: 0.6vw; opacity: 0.4; }
.second-hero { width: 100%; height: 52vw; background: url(../images/second-hero-bg.jpg) no-repeat center; background-size: cover; }
.second-hero-title { width: 100%; color: #fff; text-align: center; text-shadow: 0 0 12px #988470; position: absolute; top: 22vw; left: 0; }
.second-hero-title .en { margin-bottom: 1.5vw; font-size: 14.47vw; font-family: "futura-pt"; font-weight: 300; letter-spacing: 0.4vw; display: block; }
.second-hero-title .jp { font-size: 3.6vw; display: block; }


/* bread sp
----------------------------------------------- */
.breadcrumb { padding: 5vw 0; z-index: 1; position: relative; }
.breadcrumb-items { width: 90vw; margin: 0 auto; font-size: 0; }
.breadcrumb-items li { font-size: 3.6vw; position: relative; display: inline-block; }
.breadcrumb-items li:after { content: ''; width: 4vw; height: 1px; margin: 0 2.5vw 0 1.5vw; vertical-align: middle; background: var(--black); opacity: 0.5; display: inline-block; }
.breadcrumb-items li:last-child:after { display: none; }
.breadcrumb-items li:last-child a { color: var(--pink01); font-weight: bold; }
.breadcrumb-items a { display: inline-block; }
.breadcrumb-items .icon-home { color: var(--pink01); }


/* footer sp
----------------------------------------------- */
.footer { position: relative; }
.footer-image { width: 100%; height: 60vw; background: url(../images/footer-image.jpg) no-repeat top center; background-size: cover; }
.footer-text { width: 100%; padding: 10vw 0 20vw; margin: 0 auto; color: #fff; background: url(../images/footer-bg.jpg) no-repeat center; background-size: cover; }
.footer-head { width: 90vw; margin: 0 auto 8vw; }
.footer-logo { width: 60vw; margin: 0 auto; position: relative; }
.footer-logo img { width: 100%; }
.footer-contact-items { width: 95vw; z-index: 9; opacity: 0; visibility: hidden; position: fixed; bottom: 2.5vw; left: 50%; display: -webkit-box; display: -webkit-flex; display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; -webkit-justify-content: space-between; justify-content: space-between; -moz-transform: translateX(-50%); -ms-transform: translateX(-50%); -webkit-transform: translateX(-50%); transform: translateX(-50%); -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); }
.footer-contact-items.active { opacity: 1; visibility: visible; }
.footer-contact-items li { width: 49%; height: 12vw; font-size: 3.6vw; font-weight: bold; text-align: center; }
.footer-contact-items li.salon a { background: var(--pink03); }
.footer-contact-items li.salon a:before { content: '\f041'; margin-right: 1vw; font-size: 95%; font-family: 'icon'; display: inline-block; }
.footer-contact-items li.contact a { background: var(--pink02); }
.footer-contact-items li.contact a:before { content: '\e922'; margin-right: 1vw; font-size: 95%; font-family: 'icon'; display: inline-block; }
.footer-contact-items a { width: 100%; height: 100%; padding-top: 4.5vw; color: #fff; -moz-border-radius: 15vw; -webkit-border-radius: 15vw; border-radius: 15vw; }
.footer-navi { width: 90vw; padding: 8vw 0 4vw; margin: 0 auto 6vw; border-top: 1px solid #f5cdcd; border-bottom: 1px solid #f5cdcd; }
.footer-navi-items { width: 80vw; margin: 0 auto; display: grid; grid-auto-flow: column; grid-template-rows: repeat(7, auto); -webkit-justify-content: space-between; justify-content: space-between; }
.footer-navi-items li { margin-bottom: 4vw; font-size: 3.4vw; line-height: 1.2; position: relative; }
.footer-navi-items a { color: #fff; }
.copyright { width: 100%; font-size: 3.2vw; font-family: "futura-pt"; font-weight: 300; text-align: center; letter-spacing: 0.4vw; display: block; }


/* second sp
----------------------------------------------- */
.second { z-index: 1; position: relative; }
.second-text { width: 86vw; min-height: 100vw; padding: 10vw 0; margin: auto; }
.second-text p { margin-bottom: 4vw; font-size: 3.6vw; line-height: 2; }



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

/* common pc 
----------------------------------------------- */
.more01 { padding-right: 50px; font-size: 16px; }
.more01:before { width: 30px; right: 12px; }
.more01:after { width: 24px; height: 24px; }



/* margin(pc) */
div.mb10,p.mb10,ul.mb10,li.mb10,span.mb10,h2.mb10,h3.mb10,h4.mb10,h5.mb10,h6.mb10,table.mb10,img.mb10 { margin-bottom: 10px ;}
div.mb20,p.mb20,ul.mb20,li.mb20,span.mb20,h2.mb20,h3.mb20,h4.mb20,h5.mb20,h6.mb20,table.mb20,img.mb20 { margin-bottom: 20px ;}
div.mb40,p.mb40,ul.mb40,li.mb40,span.mb40,h2.mb40,h3.mb40,h4.mb40,h5.mb40,h6.mb40,table.mb40,img.mb40 { margin-bottom: 40px ;}
div.mb60,p.mb60,ul.mb60,li.mb60,span.mb60,h2.mb60,h3.mb60,h4.mb60,h5.mb60,h6.mb60,table.mb60,img.mb60 { margin-bottom: 60px ;}
div.mb80,p.mb80,ul.mb80,li.mb80,span.mb80,h2.mb80,h3.mb80,h4.mb80,h5.mb80,h6.mb80,table.mb80,img.mb80 { margin-bottom: 80px ;}
div.mb100,p.mb100,ul.mb100,li.mb100,span.mb100,h2.mb100,h3.mb100,h4.mb100,h5.mb100,h6.mb100,table.mb100,img.mb100  { margin-bottom: 100px;}

/* table */
.tbl01 { font-size: 14px; margin: 0 auto 60px;}.tbl01:before {width: 100px;position:absolute;background: var(--pink01);height:2px;top:0px;}
.tbl01 th,.tbl01 td {vertical-align:middle;line-height: 1.8;letter-spacing: 0.02em;text-align: justify;display: inline-block;padding: 14px;}
.tbl01 td {width: 73%;padding: 0;display: table-cell;padding: 16px;}
.tbl01 th {text-align:center;width: 27%;color: var(--pink01);font-weight: 600;display: table-cell;background: var(--pink00);}
.tbl01 tr{border-bottom: 1px dotted #d9d9d9;}
.tbl01 tr:last-child { border-bottom: none;}
.tbl01 td a {color: var(--pink01);font-size: 26px; font-family: "futura-pt"; font-weight: 400;letter-spacing: .06em;display: inline-block;}
.tbl01 td a span:before {margin-right: 3px;font-family:icon;content:'\f095';color: var(--pink01);font-size: 80%;}
.tbl01 td>li span {height: 18px;width: 18px;border-radius:50%;display: inline-block;text-align:center;background: #eee;color: #49382f;font-size: 80%;margin-right: 5px;font-family: "futura-pt";padding-top: 1px;padding-left: 0;text-indent: 0;  }
.tbl01 td>li { margin-bottom: 2%;font-size: 14px;font-feature-settings: "palt";letter-spacing: .03em;padding-left: 2em;text-indent: -2em; text-align:justify; text-justify:auto;}
.tbl01 p span{  padding-left: 10px; margin-bottom: 8px;}
.tbl01 a.line { font-size: 14px;}

/* midashi */
.midashi01 { margin-bottom: 40px; }
.midashi01 .en {margin-bottom: 4px;font-size: 34px;}
.midashi01 .en:after { margin-left: 20px; }
.midashi01 .jp { font-size: 13px; }

.midashi02 {padding: 30px 0;margin-bottom: 50px;}
.midashi02 .jp{font-size: 26px; margin-bottom: 14px;}
.midashi02 .en{;font-size: 12px;}



/* 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;padding: 20px 85px 17px 15px;}
.modaal-content-container .more01:before{ right:20px;}
.modaal-content-container .more01:after{ right:8px;}
	.modaal-content-container .midashi01{font-size:25px;margin-bottom: 30px;}
.modaal-content-container .midashi01 .icon{margin-right:10px;}
.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;}




/* header pc 
----------------------------------------------- */
.header { height: 105px; -moz-box-shadow: 0 100px 60px -60px rgba(97, 86, 86, 0.6) inset; -webkit-box-shadow: 0 100px 60px -60px rgba(97, 86, 86, 0.6) inset; box-shadow: 0 100px 60px -60px rgba(97, 86, 86, 0.6) inset; }
.header-content { width: 1200px; height: 100%; margin: auto; }
.header-logo { width: 150px; left: 0; }
.header-contact { padding: 8px 28px 7px; font-size: 18px; letter-spacing: 1px; right: 245px; }
.header-social-items { top: 38px; right: 110px; display: -webkit-box; display: -webkit-flex; display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; }
.header-social-items li { margin: 0 8px; font-size: 26px; text-shadow: none; }
.header-navi-button { width: 60px; height: 40px; top: 32px; right: calc(50% - 580px); -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 { height: 2px; top: 11px; }
.header-navi-button .line-bottom { width: 40px; height: 2px; top: 26px; }
.header-navi { background: rgba(255, 255, 255, 0.4); -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px); top: 0; right: 0; left: auto; }
.header-navi-scroll { width: 380px; margin-left: auto; background: url(../images/header-navi-bg.jpg) no-repeat top center; background-size: cover; -moz-box-shadow: 0 0 12px rgba(0, 0, 0, 0.2); -webkit-box-shadow: 0 0 12px rgba(0, 0, 0, 0.2); box-shadow: 0 0 12px rgba(0, 0, 0, 0.2); z-index: 2; }
.header-navi-content { padding: 120px 0 60px; }
.header-navi-logo { width: 150px; top: 15px; left: 20px; }
.header-navi-items { width: 85%; margin-bottom: 10px; }
.header-navi-item-title { padding: 20px 10px; }
.header-navi-item-title:after { font-size: 14px; right: 15px; }
.header-navi-item-title .en { margin-right: 10px; font-size: 25px; letter-spacing: 2px; }
.header-navi-item-title .jp { font-size: 14px; }
.header-navi-half-items { width: 85%; margin-bottom: 30px; }
.header-navi-half-items a { padding: 20px 10px; }
.header-navi-half-items li { font-size: 16px; }
.header-navi-half-items li:after { font-size: 14px; right: 15px; }
.header-navi-campaign { width: 85%; margin-bottom: 30px; }
.header-navi-contact { width: 85%; padding: 24px 0 23px; margin-bottom: 30px; font-size: 18px; }
.header-navi-social-items { margin-bottom: 30px; }
.header-navi-social-items li { margin: 0 10px; font-size: 25px; }
.header-navi-sub-items li { font-size: 14px; }
.header-navi-sub-items li:before { margin: 0 8px 0 12px; }
.header-navi-mask { width: 100vw; height: 100vh; z-index: 1; cursor: pointer; position: fixed; top: 0; left: 0; }
.header-navi-open .header-navi-button { right: 25px; }
.header-navi-open .line-top { top: 20px; }
.header-navi-open .line-bottom { width: 100%; top: 20px; }

/* hero pc 
----------------------------------------------- */
.top-hero { height: 950px; background: url(../images/top-hero-bg-pc.jpg) no-repeat top center; background-size: cover; }
.top-hero-logo { width: 330px; position: absolute; top: 56%; bottom: auto; left: calc(50% + 200px); -moz-transform: translateY(-50%); -ms-transform: translateY(-50%); -webkit-transform: translateY(-50%); transform: translateY(-50%); }
.top-hero-ticker-items { bottom: -45px; }
.top-hero-ticker-item { font-size: 120px; letter-spacing: 6px; }
.second-hero { height: 320px; background: url(../images/second-hero-bg-pc.jpg) no-repeat center; background-size: cover; }
.second-hero-title { top: 140px; }
.second-hero-title .en { margin-bottom: 10px; font-size: 80px; letter-spacing: 4px; }
.second-hero-title .jp { font-size: 16px; }

/* bread pc
----------------------------------------------- */
.breadcrumb { padding: 25px 0; z-index: 2; position: relative; }
.breadcrumb-items { width: 1200px; }
.breadcrumb-items li { font-size: 14px; }
.breadcrumb-items li:after { width: 15px; margin: -2px 10px 0 8px; }
.breadcrumb-items .icon-home { font-size: 110%; }

/* footer pc 
----------------------------------------------- */
.footer { background: #f29c9c; display: -webkit-box; display: -webkit-flex; display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; }
.footer-image { width: 50%; height: auto; background: url(../images/footer-image-pc.jpg) no-repeat center; background-size: cover; order: 1; }
.footer-text { width: 600px; padding: 80px 50px 80px 0; margin: 0 0 0 auto; background: none; order: 0; }
.footer-head { width: 100%; margin: 0 auto 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; -webkit-align-items: center; align-items: center; }
.footer-logo { width: 260px; margin: 0; }
.footer-contact-items { width: 240px; opacity: 1; vibility: visbile; position: relative; bottom: auto; left: auto; display: block; -moz-transform: translateX(0); -ms-transform: translateX(0); -webkit-transform: translateX(0); transform: translateX(0); }
.footer-contact-items li { width: 100%; height: 50px; margin-bottom: 15px; font-size: 14px; }
.footer-contact-items li:last-child { margin: 0; }
.footer-contact-items li.salon a:before { margin-right: 8px; font-size: 115%; }
.footer-contact-items li.salon a:before { margin-right: 8px; font-size: 115%; }
.footer-contact-items a { padding-top: 19px; }
.footer-navi { width: 100%; padding: 40px 0 20px; margin-bottom: 30px; }
.footer-navi-items { width: 100%; grid-template-rows: repeat(5, auto); }
.footer-navi-items li { margin-bottom: 20px; font-size: 14px; }
.copyright { font-size: 12px; letter-spacing: 2px; text-align: left; }

/* second pc 
----------------------------------------------- */
.second-text {width: 1200px;min-height: 520px;padding: 100px 0 120px;}
.second-text p { margin-bottom: 30px; font-size: 15px; }

	
	
}/* ========================================
 retina
==========================================*/
@media screen and (min-width: 736px) and (-webkit-min-device-pixel-ratio: 2), screen and (min-width: 736px) and (min-resolution: 2dppx) { 
.top-hero { background: url(../images/top-hero-bg-pc@2x.jpg) no-repeat top center; background-size: cover; }
.second-hero { background: url(../images/second-hero-bg-pc@2x.jpg) no-repeat center; background-size: cover; }
.footer-image { background: url(../images/footer-image-pc@2x.jpg) no-repeat center; background-size: cover; } 
}
