@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 { margin: 0; padding: 0; font: inherit; word-wrap: break-word; border: 0; vertical-align: baseline; outline: none; }
body { padding: 0; margin: 0; color: #333; font-size: 3.6vw; font-family: source-han-sans-japanese, 游ゴシック体, YuGothic, 'Yu Gothic', "游ゴシック Medium", "Yu Gothic Medium", 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif; -webkit-text-size-adjust: 100%; font-weight: 300; font-style: normal; line-height: 1; position: relative; cursor: none; }
_:-ms-lang(x)::-ms-backdrop, body { font-family: "メイリオ", Meiryo, sans-serif; }
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; }
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; max-width: 100%;height:auto ;}
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; -moz-transition: all 0.3s cubic-bezier(0.05, 0.05, 0.31, 0.97); -o-transition: all 0.3s cubic-bezier(0.05, 0.05, 0.31, 0.97); -webkit-transition: all 0.3s cubic-bezier(0.05, 0.05, 0.31, 0.97); transition: all 0.3s cubic-bezier(0.05, 0.05, 0.31, 0.97); }
::selection { background: #fce7f5; }
::-moz-selection { background: #fce7f5; }
a { color: #333; text-decoration: none; display: block; -moz-transition: all 0.3s cubic-bezier(0.05, 0.05, 0.31, 0.97); -o-transition: all 0.3s cubic-bezier(0.05, 0.05, 0.31, 0.97); -webkit-transition: all 0.3s cubic-bezier(0.05, 0.05, 0.31, 0.97); transition: all 0.3s cubic-bezier(0.05, 0.05, 0.31, 0.97); }
a:hover { opacity: 0.6; }
.clearfix:after { content: ''; display: block; clear: both; }
.pc { display: none; }
.sp { display: block; }

.wrapper { padding-top: calc(34vw + 50px); }
.top-wrapper { padding-top: 131vw; }
.container { width: 100%; background: #fff; z-index: 1; overflow: hidden; position: relative; }



/* fade
----------------------------------------------- */
.fade { opacity: 0; -moz-transition: 1s; -o-transition: 1s; -webkit-transition: 1s; transition: 1s; }
.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); }

.js-curtain { overflow: hidden; }
.js-curtain.first-anime .js-curtain-inner:after { transition-property: transform, opacity; transition-duration: 0.5s; transition-delay: 0s; transition-timing-function: cubic-bezier(0.075, 0.82, 0.165, 1); transform: translate3d(0, 0, 0); }
.js-curtain.second-anime .js-curtain-inner:after { transition-property: transform; transition-duration: 0.5s; transition-delay: 0s; transition-timing-function: cubic-bezier(0.075, 0.82, 0.165, 1); transform: translate3d(103%, 0, 0); }
.js-curtain.second-anime img { opacity: 1; left: 0; }
.js-curtain img { opacity: 0; position: relative; left: -4%; -moz-transition: 0.4s; -o-transition: 0.4s; -webkit-transition: 0.4s; transition: 0.4s; }

.js-curtain-inner { overflow: hidden; position: relative; display: inline-block; }
.js-curtain-inner:after { content: ''; position: absolute; opacity: 1; left: 0; top: 0; bottom: 0; width: 100%; background: #ede9ea; transform: translate3d(-101%, 0, 0); }

/* common
----------------------------------------------- */
.more01 { width: 70vw; padding: 5vw 0 4.8vw; margin: auto; color: #888; font-size: 3.68vw; text-align: center; border: 1px solid #888; -moz-border-radius: 10vw; -webkit-border-radius: 10vw; border-radius: 10vw; position: relative; }
.more01 .arrow { position: absolute; top: 50%; right: 5vw; -moz-transform: translateY(-50%); -ms-transform: translateY(-50%); -webkit-transform: translateY(-50%); transform: translateY(-50%); }

.midashi01 { margin-bottom: 8vw; color: #8b8b8b; font-size: 3.16vw; font-family: 'Montserrat'; font-weight: 400; letter-spacing: 0.2vw; position: relative; display: table; }
.midashi01:after { content: ''; width: 25vw; height: 1px; background: #d2d2d2; position: absolute; top: 50%; right: -30vw; -moz-transform: translateY(-50%); -ms-transform: translateY(-50%); -webkit-transform: translateY(-50%); transform: translateY(-50%); }

.midashi02 { width: 60vw; padding: 4vw 0; text-align: center; background: rgba(255, 255, 255, 0.7); 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%); }
.midashi02 .en { margin-bottom: 1vw; color: #000; font-size: 6.05vw; font-family: 'Montserrat'; font-weight: 400; letter-spacing: 0.4vw; display: block; }
.midashi02 .jp { font-size: 3.16vw; opacity: 0.6; display: block; }

.midashi03{margin-bottom:6%;border-left:4px solid #b56c9b;padding-left:3%;line-height:1.4;font-size:4.8vw;letter-spacing:.05em;font-family:'Montserrat', serif;font-weight:400;font-style:normal;}

.midashi04{position: relative;padding: 1rem 2rem calc(1rem + 10px);background: #f3ecf0;text-align: center;margin: 8% 0;color: #000;font-size: 4.5vw;font-family: source-han-serif-japanese, 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", HGS明朝E, メイリオ, Meiryo;} 
.midashi04:before { position: absolute; top: -4px; left: -4px; width: 100%; height: 100%; content: ''; border: 1px solid #818080; }
.midashi05{text-align: center;font-size: 7vw;margin: 10% 0 6%;font-family: 'Montserrat';color: #b56b9b;}

.mb80 { margin-bottom: 10%;}

/* header
----------------------------------------------- */
.header { z-index: 10; position: relative; }
.sp-header { width: 100%; height: 50px; background: #000; position: fixed; top: 0; left: 0; display: -webkit-box; display: -moz-box; display: -webkit-flex; display: box; display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; -webkit-align-items: center; align-items: center; }
.pc-header { display: none; }
.header-logo { width: 60px; margin: 0 auto 0 15px; }
.header-logo img { width: 100%; }
.header-yoyaku {width: 50px;height: 50px;color: #fff;font-size: 18px;text-align: center;background: #c1a552;display: -webkit-box;display: -moz-box;display: -webkit-flex;display: box;display: flex;-webkit-justify-content: center;justify-content: center;-webkit-align-items: center;align-items: center;}
.header-yoyaku img{
    width: 46%;
}
.header-mail { width: 50px; height: 50px; color: #fff; font-size: 18px; text-align: center; background: #818080; display: -webkit-box; display: -moz-box; display: -webkit-flex; display: box; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; }
.header-tel { width: 50px; height: 50px; color: #fff; font-size: 20px; text-align: center; background: #b56b9b; display: -webkit-box; display: -moz-box; display: -webkit-flex; display: box; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; }
.header-button { width: 50px; height: 50px; z-index: 11; position: relative; }
.header-button-open { width: 50px; height: 50px; position: absolute; top: 0; left: 0; -moz-transition: all 0.4s cubic-bezier(0.05, 0.05, 0.31, 0.97); -o-transition: all 0.4s cubic-bezier(0.05, 0.05, 0.31, 0.97); -webkit-transition: all 0.4s cubic-bezier(0.05, 0.05, 0.31, 0.97); transition: all 0.4s cubic-bezier(0.05, 0.05, 0.31, 0.97); }
.header-button-open .line { width: 26px; height: 1px; background: #fff; position: absolute; left: 12px; }
.header-button-open .line-top { top: 16px; }
.header-button-open .line-middle { top: 25px; }
.header-button-open .line-bottom { top: 34px; }

.header-button-close { width: 50px; height: 50px; opacity: 0; visibility: hidden; position: absolute; top: 0; left: 0; -moz-transition: all 0.4s cubic-bezier(0.05, 0.05, 0.31, 0.97); -o-transition: all 0.4s cubic-bezier(0.05, 0.05, 0.31, 0.97); -webkit-transition: all 0.4s cubic-bezier(0.05, 0.05, 0.31, 0.97); transition: all 0.4s cubic-bezier(0.05, 0.05, 0.31, 0.97); }
.header-button-close:before { content: ''; width: 5px; height: 5px; background: #000; 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%); }
.header-button-close .line { height: 1px; background: #aaa; position: absolute; top: 50%; left: 50%; }
.header-button-close .line-top { width: 28px; -moz-transform: translate(-50%, -50%) rotate(45deg); -ms-transform: translate(-50%, -50%) rotate(45deg); -webkit-transform: translate(-50%, -50%) rotate(45deg); transform: translate(-50%, -50%) rotate(45deg); }
.header-button-close .line-bottom { width: 28px; -moz-transform: translate(-50%, -50%) rotate(-45deg); -ms-transform: translate(-50%, -50%) rotate(-45deg); -webkit-transform: translate(-50%, -50%) rotate(-45deg); transform: translate(-50%, -50%) rotate(-45deg); }

.header-navi-open { width: 100%; height: 100%; position: fixed; }
.header-navi-open .header-button { background: none; }
.header-navi-open .header-button-open { opacity: 0; visibility: hidden; }
.header-navi-open .header-button-open .line-top { width: 0; }
.header-navi-open .header-button-open .line-middle { width: 0; }
.header-navi-open .header-button-open .line-bottom { width: 0; }
.header-navi-open .header-button-close { opacity: 1; visibility: visible; }
.header-navi-open .header-button-close .line-top { opacity: 0; animation-name: header-button-close; animation-duration: 0.6s; animation-delay: 0.4s; animation-fill-mode: forwards; }
.header-navi-open .header-button-close .line-bottom { opacity: 0; animation-name: header-button-close; animation-duration: 0.6s; animation-delay: 0.8s; animation-fill-mode: forwards; }
.header-navi-open .header-navi { opacity: 1; visibility: visible; right: 0; }
.header-navi-open .header-navi:before { opacity: 1; }

.header-navi-close .header-button-open .line { width: 0; -moz-transition: all 0.2s cubic-bezier(0.05, 0.05, 0.31, 0.97); -o-transition: all 0.2s cubic-bezier(0.05, 0.05, 0.31, 0.97); -webkit-transition: all 0.2s cubic-bezier(0.05, 0.05, 0.31, 0.97); transition: all 0.2s cubic-bezier(0.05, 0.05, 0.31, 0.97); }
.header-navi-close .header-button-open .line-top { animation-name: header-button-open; animation-duration: 0.5s; animation-delay: 0.4s; animation-fill-mode: forwards; }
.header-navi-close .header-button-open .line-middle { animation-name: header-button-open; animation-duration: 0.5s; animation-delay: 0.6s; animation-fill-mode: forwards; }
.header-navi-close .header-button-open .line-bottom { animation-name: header-button-open; animation-duration: 0.5s; animation-delay: 0.8s; animation-fill-mode: forwards; }

@keyframes header-button-open { 0% { width: 0; opacity: 0; }
  100% { width: 28px; opacity: 1; } }
@keyframes header-button-close { 0% { width: 0; opacity: 0; }
  100% { width: 28px; opacity: 1; } }
.header-navi { width: 100%; height: 100%; z-index: 10; opacity: 0; visibility: hidden; position: fixed; top: 0; right: -5vw; -moz-transition: 0.5s; -o-transition: 0.5s; -webkit-transition: 0.5s; transition: 0.5s; }
.header-navi:before { content: ''; width: 100%; height: 100%; background-color: rgba(255, 255, 255, 0.5); -webkit-backdrop-filter: blur(14px); backdrop-filter: blur(14px); z-index: -1; opacity: 0; position: fixed; top: 0; left: 0; -moz-transition: all 0.3s cubic-bezier(0.05, 0.05, 0.31, 0.97); -o-transition: all 0.3s cubic-bezier(0.05, 0.05, 0.31, 0.97); -webkit-transition: all 0.3s cubic-bezier(0.05, 0.05, 0.31, 0.97); transition: all 0.3s cubic-bezier(0.05, 0.05, 0.31, 0.97); }
.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: 80%; height: 100%; padding-bottom: 1px; margin-left: auto; background: #fff; overflow-y: auto; -ms-overflow-style: none; scrollbar-width: none; -webkit-overflow-scrolling: touch; }
.header-navi-scroll::-webkit-scrollbar { display: none; }
.header-navi-heading { width: 100%; padding: 1px; margin-bottom: 12vw; background: #000; }
.header-navi-logo { width: 34vw; margin: 8vw auto; }
.header-navi-logo img { width: 100%; }
.header-navi-category-items {width: 64%;margin: 0 auto 10vw;}
.header-navi-category-item { margin-bottom: 8vw; font-size: 6.32vw; font-family: 'Montserrat'; font-weight: 400; letter-spacing: 0.4vw; position: relative; }
.header-navi-category-item .header-navi-title { margin-bottom: 2vw; position: relative; display: block; }
.header-navi-category-item .header-navi-title.open .arrow: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); }
.header-navi-category-item .header-navi-title .arrow { width: 2.5vw; height: 2.5vw; position: absolute; top: 50%; left: -6vw; -moz-transform: translateY(-50%); -ms-transform: translateY(-50%); -webkit-transform: translateY(-50%); transform: translateY(-50%); }
.header-navi-category-item .header-navi-title .arrow:before { content: ''; width: 2.5vw; height: 1px; background: #aaa; 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%); }
.header-navi-category-item .header-navi-title .arrow:after { content: ''; width: 1px; height: 2.5vw; background: #aaa; 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%); }
.header-navi-category-item .accordion-items { display: none; }
.header-navi-category-item .accordion-items li {font-size: 3.6vw;border-bottom: 1px solid #aaa;position: relative;}
.header-navi-category-item .accordion-items a { padding: 4vw 0; }
.header-navi-category-item .accordion-items .arrow { color: #aaa; position: absolute; top: 50%; right: 2vw; -moz-transform: translateY(-50%); -ms-transform: translateY(-50%); -webkit-transform: translateY(-50%); transform: translateY(-50%); }

.header-navi-contact-items { width: 80%; margin: 0 auto 8vw; display: -webkit-box; display: -moz-box; display: -webkit-flex; display: box; display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; -webkit-justify-content: space-between; justify-content: space-between; }
.header-navi-contact-items li { width: 48%; font-size: 4.47vw; font-family: 'Montserrat'; font-weight: 400; }
.header-navi-contact-items li:nth-child(1) { background: #818181; }
.header-navi-contact-items li:nth-child(2) { background: #b56b9b; }
.header-navi-contact-items a { padding: 5vw 0; color: #fff; display: -webkit-box; display: -moz-box; display: -webkit-flex; display: box; display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; }
.header-navi-contact-items .text { margin: 0 2vw; }

.header-navi-sub-items { margin-bottom: 120px; display: -webkit-box; display: -moz-box; display: -webkit-flex; display: box; 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: 'Montserrat'; font-weight: 400; letter-spacing: 0.2vw; }
.header-navi-sub-items li:before { content: '|'; margin: 0 1vw 0 2vw; display: inline-block; }
.header-navi-sub-items li:first-child:before { display: none; }
.header-navi-sub-items a { display: inline-block; }

/* hero
----------------------------------------------- */
.hero { width: 100%; z-index: 0; position: fixed; top: 50px; left: 0; }
.top-hero-item-image { width: 100%; }
.top-hero-item-image img { width: 100%; }
.add-hero { height: 34vw; background: url(../images/add-hero-bg.jpg) no-repeat center; background-size: cover; }

/* hero下のsp nav　
----------------------------------------------- */
.sp-header-global-items{width: 100%;display: flex;flex-wrap: wrap;justify-content: space-between;margin: 0;}
.sp-header-global-items li{width:calc(100%/3);text-align: center;background: #333;vertical-align: middle;border-right: 1px solid #FFF;border-bottom: 1px solid #FFF;}
.sp-header-global-items li a{padding: 10%;}
.sp-header-global-items li:nth-of-type(3n){border-right: none;}
.sp-header-global-items .en { margin-bottom: 2%; font-size: 4.1vw; font-family: 'Montserrat'; font-weight: 400; font-weight: bold; letter-spacing: 2px; display: block; color: #FFF;}
.sp-header-global-items .jp { margin-bottom: 2%; font-size: 2.8vw; display: block; color: #FFF;}

/* bread
----------------------------------------------- */
.breadcrumb { background: #f5f6f5; position: relative; }
.breadcrumb-items { width: 100%; margin: 0 auto; }
.breadcrumb-items li { font-size: 3.16vw; background: url(../images/arrow02.png) no-repeat center right; background-size: contain; position: relative; display: inline-block; }
.breadcrumb-items li:last-child { background: none; }
.breadcrumb-items li:last-child a { padding: 2vw 2.5vw; }
.breadcrumb-items a { padding: 2.5vw 5.5vw 2.5vw 2.5vw; color: #666; display: inline-block; }

/* footer
----------------------------------------------- */
.footer { background: #fff; z-index: 1; position: relative; }
.footer-contact { padding: 12vw 0 6vw; background: #000; }
.footer-contact-heading { margin-bottom: 6vw; color: #fff; text-align: center; }
.footer-contact-title { margin-bottom: 5vw; font-size: 6.58vw; font-family: 'Montserrat'; font-weight: 400; letter-spacing: 0.4vw; }
.footer-contact-comment {font-size: 3.6vw;line-height: 1.8;}
.footer-contact-items { width: 80vw; margin: auto; }
.footer-contact-items li { width: 100%; margin-bottom: 6vw; text-align: center; position: relative;}
.footer-contact-items a { padding: 5vw 0; background: #fff; -moz-border-radius: 10vw; -webkit-border-radius: 10vw; border-radius: 10vw;height:21vw}
.footer-contact-items .main { margin-bottom: 1vw; color: #000; font-size: 5vw; font-family: 'Montserrat'; font-weight: 400; font-weight: bold; letter-spacing: 0.4vw; display: block; }
.footer-contact-items .icon { margin-right: 0.5vw; font-size: 4.47vw; }
.footer-contact-items .sub { color: #7e7b71; font-size: 3.42vw; display: block; }
.footer-contact-items .sub .small{ font-size: 80%;}
.footer-contact-items .arrow { color: #7e7b71; position: absolute; top: 50%; right: 8vw; -moz-transform: translateY(-50%); -ms-transform: translateY(-50%); -webkit-transform: translateY(-50%); transform: translateY(-50%); }
.footer-gallery-items img { width: 100%; }
.footer-content { padding: 10vw 0; }
.footer-logo { width: 50vw; margin: 0 auto 8vw; }
.footer-logo img {width: 90%;}

.footer-navi { width: 80vw; margin: 0 auto; }
.footer-navi-box:last-child .footer-navi-title { border: none; }
.footer-navi-title { padding: 4vw 1vw 3.8vw; font-size: 4.47vw; font-family: 'Montserrat'; font-weight: 400; letter-spacing: 0.5vw; border-bottom: 1px solid #808180; position: relative; }
.footer-navi-title.open .arrow: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 .arrow { width: 2.5vw; height: 2.5vw; position: absolute; top: 50%; right: 2.2vw; -moz-transform: translateY(-50%); -ms-transform: translateY(-50%); -webkit-transform: translateY(-50%); transform: translateY(-50%); }
.footer-navi-title .arrow:before { content: ''; width: 2.5vw; height: 1px; background: #222; 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-navi-title .arrow:after { content: ''; width: 1px; height: 2.5vw; background: #222; 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-navi-items { width: 100%; display: none; }
.footer-navi-items li { width: 100%; font-size: 3.42vw; border-bottom: 1px solid #808180; position: relative; }
.footer-navi-items a { padding: 4vw 1vw 3.8vw; }
.footer-navi-items .arrow { color: #aaa; position: absolute; top: 50%; right: 2.5vw; -moz-transform: translateY(-50%); -ms-transform: translateY(-50%); -webkit-transform: translateY(-50%); transform: translateY(-50%); }

.footer-social-items { margin: 8vw auto 0; display: -webkit-box; display: -moz-box; display: -webkit-flex; display: box; display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; -webkit-justify-content: center; justify-content: center; }
.footer-social-items li { width: 10vw; margin: 0 2vw; }
.footer-social-items img { width: 100%; }

.copyright { padding: 3vw 0 2.8vw; color: #fff; font-size: 3.16vw; font-family: 'Montserrat'; font-weight: 400; text-align: center; background: #000; }

.pagetop { width: 12vw; z-index: 8; opacity: 0; visibility: hidden; position: fixed; right: 2.5vw; bottom: 2.5vw; }
.pagetop.active { opacity: 1; visibility: visible; }
.pagetop.stop { opacity: 0; visibility: hidden; }
.pagetop img { width: 100%; }

/* top
----------------------------------------------- */
.top-message { padding: 12vw 0; }
.top-message-batch { margin-left: 10vw; }
.top-message-text { width: 80vw; margin: 0 auto 8vw; }
.top-message-text p {font-size: 3.6vw;line-height: 1.8;text-align:justify; text-justify:auto; font-feature-settings: "palt";letter-spacing: .05em;}
.top-message-title {margin-bottom: 4vw;font-size: 5vw;font-family: source-han-serif-japanese, 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", HGS明朝E, メイリオ, Meiryo;font-weight: 300;line-height: 1.4;}
.top-message-point-items { width: 80vw; margin: 0 auto 8vw; display: -webkit-box; display: -moz-box; display: -webkit-flex; display: box; display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; -webkit-justify-content: space-between; justify-content: space-between; }
.top-message-point-items li { width: 24vw; height: 24vw; padding-top: 9.5vw; margin-bottom: 5vw; font-size: 3.68vw; font-family: source-han-serif-japanese, 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", HGS明朝E, メイリオ, Meiryo; font-weight: 300; text-align: center; border: 1px solid #dcdcdd; -moz-border-radius: 50%; -webkit-border-radius: 50%; border-radius: 50%; position: relative; }
.top-message-point-items li:before { content: ''; width: 120%; height: 4vw; background: #fff; position: absolute; top: 50%; left: 50%; -moz-transform: translate(-50%, -50%) rotate(-45deg); -ms-transform: translate(-50%, -50%) rotate(-45deg); -webkit-transform: translate(-50%, -50%) rotate(-45deg); transform: translate(-50%, -50%) rotate(-45deg); }
.top-message-point-items span { z-index: 1; position: relative; }
.top-message-images { position: relative; }
.top-message-image01 { width: 60vw; margin-bottom: 25vw; }
.top-message-image01 img { width: 100%; }
.top-message-image02 { width: 50vw; margin: 0 0 10vw auto; }
.top-message-image02 img { width: 100%; }
.top-message-image03 {width: 35vw;margin-left: 14vw;transform: rotate(90deg);}
.top-message-image03 img { width: 100%; }

.top-message-deco { width: 28vw; z-index: 1; position: absolute; top: 50vw; left: 42vw; -moz-animation: rotate-animation 25s linear infinite; -webkit-animation: rotate-animation 25s linear infinite; animation: rotate-animation 25s linear infinite; }

@keyframes rotate-animation { 0% { -moz-transform: rotate(0); -ms-transform: rotate(0); -webkit-transform: rotate(0); transform: rotate(0); }
  100% { -moz-transform: rotate(360deg); -ms-transform: rotate(360deg); -webkit-transform: rotate(360deg); transform: rotate(360deg); } }
@-webkit-keyframes rotate-animation { 0% { -moz-transform: rotate(0); -ms-transform: rotate(0); -webkit-transform: rotate(0); transform: rotate(0); }
  100% { -moz-transform: rotate(360deg); -ms-transform: rotate(360deg); -webkit-transform: rotate(360deg); transform: rotate(360deg); } }
.top-message-deco-text { font-size: 4.21vw; font-family: source-han-serif-japanese, 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", HGS明朝E, メイリオ, Meiryo; font-weight: 300; line-height: 1.6; letter-spacing: 0.2vw; -ms-writing-mode: tb-rl; writing-mode: vertical-rl; text-orientation: upright; position: absolute; top: 58vw; left: 18vw; }

.top-campaign { width: 100%; padding: 4vw 0 12vw; }
.top-campaign .bx-viewport { overflow: visible !important; }
.top-campaign-heading { width: 80vw; margin: 0 auto 6vw; }
.top-campaign-heading p {font-size: 3.6vw;line-height: 1.8;text-align:justify; text-justify:auto; font-feature-settings: "palt";letter-spacing: .05em;}
.top-campaign-title { margin-bottom: 4vw; color: #8b8b8b; font-size: 6.58vw; font-family: 'Montserrat'; font-weight: 400; text-align: center; letter-spacing: 0.4vw; }
.top-campaign-content { padding: 10vw 0; margin-bottom: 10vw; background: url(../images/top-campaign-bg.jpg) no-repeat center; background-size: cover; }
.top-campaign-items li { background: #fff; -moz-box-shadow: 0 0 8px 0 rgba(0, 0, 0, 0.2); -webkit-box-shadow: 0 0 8px 0 rgba(0, 0, 0, 0.2); box-shadow: 0 0 8px 0 rgba(0, 0, 0, 0.2); position: relative; }
.top-campaign-items li[aria-hidden="true"] { -webkit-filter: blur(2px); filter: blur(2px); }
.top-campaign-item-image { width: 100%; }
.top-campaign-item-text { padding: 6vw; position: relative;min-height: 45vw;}
.top-campaign-item-text:after { content: ''; border-top: 1.5vw solid transparent; border-right: 1.5vw solid #e3e4e3; border-bottom: 1.5vw solid #e3e4e3; border-left: 1.5vw solid transparent; position: absolute; right: 2vw; bottom: 2vw; }
.top-campaign-item-deco { width: auto; height: 14vw; margin: -12vw auto 2vw; z-index: 1; position: relative; }
.top-campaign-item-title { margin-bottom: 4vw; text-align: center; }
.top-campaign-item-title .small { margin-bottom: 2vw; color: #b56b9c; font-size: 3.42vw; display: block; }
.top-campaign-item-title .small-mens { margin-bottom: 2vw; color: #5565B1; font-size: 3.42vw; display: block; }
.top-campaign-item-title .big { font-size: 4.47vw; display: block; }
.top-campaign-item-price { font-size: 9.5vw; font-family: urw-din-condensed; font-weight: 400; text-align: center;position: relative;}
.top-campaign-item-price span{font-size: 50%;margin-right: 10px;background: #b56b9c;color: #FFF;padding: 5px 10px;line-height: 1;position: relative;top:-5px;}

.top-campaign-items li .text{text-align: center;line-height: 1.6;}

.top-menu {padding: 4vw 0 2vw;margin-top: 6vw;}
.top-menu-batch { margin-left: 10vw; }
.top-menu-heading { width: 80vw; margin: 0 auto 5vw; }
.top-menu-items { width: 80vw; margin: auto; }
.top-menu-items li { width: 100%; margin-bottom: 10vw; }
.top-menu-item-title { margin-bottom: 4vw; color: #888; font-size: 6.58vw; font-family: 'Montserrat'; font-weight: 400; letter-spacing: 0.5vw; }
.top-menu-item-image { width: 100%; margin: 0 auto 4vw; }
.top-menu-item-image img { width: 100%; }
.top-menu-item-text p {font-size: 3.6vw;line-height: 1.8;text-align:justify;text-justify:auto;font-feature-settings: "palt";letter-spacing: .05em;margin: 5% 0;}
.top-menu-item-more { margin-top: 4vw; }

.top-pickup { padding: 12vw 0 4vw; background: #f7f8f7; }
.top-pickup-batch { margin-left: 10vw; }
.top-pickup-items { width: 86vw; margin: auto; display: -webkit-box; display: -moz-box; display: -webkit-flex; display: box; display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; -webkit-justify-content: space-around; justify-content: space-around; }
.top-pickup-items li { width: 36vw; margin-bottom: 8vw; }
.top-pickup-item-image { width: 100%; margin-bottom: 4vw; position: relative; }
.top-pickup-item-image img { width: 100%; }
.top-pickup-item-image span { color: #fff; font-size: 3.16vw; font-family: 'Montserrat'; font-weight: 400; letter-spacing: 0.2vw; z-index: 1; position: absolute; right: 2vw; bottom: 1.2vw; }
.top-pickup-item-title { text-align: center; }
.top-pickup-item-title .en { margin-bottom: 2vw; color: #8b8b8b; font-size: 5.26vw; font-family: 'Montserrat'; font-weight: 400; letter-spacing: 0.2vw; display: block; }
.top-pickup-item-title .jp { font-size: 3.16vw; display: block; }

.top-news { padding: 12vw 0; }
.top-news-batch { margin-left: 10vw; }
.top-news-items { width: 80vw; margin: -4vw auto 0; }
.top-news-items li { width: 100%; border-bottom: 1px solid #f0f1f0; position: relative; }
.top-news-items li:after { content: ''; border-top: 1.5vw solid transparent; border-right: 1.5vw solid #e3e4e3; border-bottom: 1.5vw solid #e3e4e3; border-left: 1.5vw solid transparent; position: absolute; right: 0; bottom: 2vw; }
.top-news-items a { padding: 4vw 0; }
.top-news-item-status { margin-bottom: 2vw; display: -webkit-box; display: -moz-box; display: -webkit-flex; display: box; display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; -webkit-align-items: center; align-items: center; }
.top-news-item-time { margin-right: 2vw; font-size: 3.68vw; font-family: 'Montserrat'; font-weight: 400; }
.top-news-item-category { min-width: 18vw; padding: 1.5vw 2vw; color: #fff; font-size: 3.42vw; font-family: 'Montserrat'; font-weight: 400; text-align: center; }
.top-news-item-category.news { background: #000; }
.top-news-item-category.blog { background: #8a8b8b; }
.top-news-item-title { font-size: 3.42vw; line-height: 1.6; }

.top-social {padding: 8vw 0 3vw;}
.top-social-items {width: 80vw;margin: auto;display: -webkit-box;display: -moz-box;display: -webkit-flex;display: box;display: flex;-webkit-flex-wrap: wrap;flex-wrap: wrap;-webkit-justify-content: space-between;justify-content: center;}
.top-social-items li {width: 46%;margin: 0 1vw 6vw;border: 1px solid #d9dada;}
.top-social-items a { height: 12vw; display: -webkit-box; display: -moz-box; display: -webkit-flex; display: box; display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; }
.top-social-items .icon { width: 6vw; }
.top-social-items .text { margin: 0 2vw; color: #000; font-size: 3.68vw; font-family: 'Montserrat'; font-weight: 400; text-align: center; line-height: 1.2; }
.top-social-items .arrow { color: #d9dada; }

.top-event{padding: 14vw 0 0;width: 90%;margin: 0 auto;}
.top-event ul {display: -webkit-flex;display: -ms-flexbox;display: flex;-webkit-justify-content: center;-ms-flex-pack: justify;justify-content: center;-webkit-align-items: flex-start;-ms-flex-align: start;align-items: flex-start;margin: 0 auto 2vw;}
.top-event ul li {width:70%;position: relative;}
.top-event li a:after {content: ''; display: inline-block; width: 24px; height: 24px; background-image: url("../images/access/zoom.jpg"); background-size: contain; vertical-align: middle; position: absolute; right:0; bottom:0;}
.top-event ul li img {width:100%;}
.top-event-text{padding: 2%;text-align: center;color: #136c3c;border: 1px solid #439569;background: #f5f7f4;font-weight: 600;font-size: 3.6vw;margin-top: 7vw;}

/*second
----------------------------------------------- */
.second-content {width: 90vw;min-height: 300px;padding: 10vw 0;margin: auto;}
.second-content-text p {margin-bottom: 5vw;font-size: 3.5vw;line-height: 1.8;text-align:justify;text-justify:auto;font-feature-settings: "palt";letter-spacing: .05em;}
.second-content-text p.add{text-align: center;font-size: 3.2vw;}
.second-content-text p.add span{border: solid 1px #b56b9b;padding: 2px 8px;margin-right: 4px;}
.second-content-title { margin-bottom: 4vw; font-size: 5vw; font-family: source-han-serif-japanese, 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", HGS明朝E, メイリオ, Meiryo; font-weight: 300; line-height: 1.4; }

/* menu_list
----------------------------------------------- */
.menu_list .second-content{width: 100%;padding: 0;}
.menu_list img{margin: 0 auto;}

.machine-link a{width: 90%;margin: 0 auto 10%;}
.machine-link a img{width: 100%;}

.menu .ttl {margin: 0 auto 6%;text-align: center;position: relative;display: -webkit-box;display: -moz-box;display: -webkit-flex;display: box;display: flex;-webkit-align-items: center;align-items: center;color: #28282d;font-size: 4.2vw !important;font-weight: bold;}
.menu .ttl:before, .menu .ttl:after {content: '';height: 1px;background: #615c61;display: block;-webkit-flex-grow: 1;flex-grow: 1;}
.menu .ttl:before {margin-right: 20px;}
.menu .ttl:after {margin-left: 20px;}
.menu .ttl6 span{text-align: center;}

.treatment-list .red{color: red;text-align: center;}




/* menu price
----------------------------------------------- */
p.menu_head { padding: 50px 0; text-align: center;}
.m_midashi span.en {  font-size: 40px; letter-spacing: 6px; margin-right: 20px;}
.m_midashi span.jp { font-size: 14px; letter-spacing: 2px;}
table.price_tbl {width: 100%;margin-bottom: 8%;}
table.price_tbl-scroll {width: 100%;margin-bottom: 8%;border-collapse: collapse;white-space: nowrap;margin-left: 22%;}

table.price_tbl tr {border-bottom: 1px solid #ededed;}
table.price_tbl tr.bo_no { border-bottom: none;}
table.price_tbl th.th_p {background: #ededed;padding: 8px;border-right: 2px solid #FFF;font-family: 'Montserrat';}
table.price_tbl td.menu {position: relative; padding: 15px 4px 15px 0px;font-size: 3vw;vertical-align: middle;width: 25%;line-height: 1.4;text-align: center;}
table.price_tbl td.menu span{color: #b56b9b;font-family: 'Montserrat';margin-left: 2%;}
table.price_tbl td.menu span.small { font-size: 80%;}
table.price_tbl td.price_c {text-align: center;font-size: 3.5vw;letter-spacing: 0.5px;font-family: 'Montserrat';font-weight: bold;vertical-align: middle;height: 62px;}
table.price_tbl td.price_c span{font-size: 2vw;}
table.price_tbl td.price_c.osusume{border: solid 1px #b56b9b;}
table.price_tbl td.price_r { text-align: right; letter-spacing: 3px;}
table.price_tbl thead th{text-align:center;color: #333;}

div.scroll{overflow-x: scroll;}
table.price_tbl td.armpit:after{content: "";width: 100%;height: 100%;background: url(../images/epi/ladies-parts-armpit.jpg) no-repeat top left;background-size: 15vw;position: absolute;left: -19vw;top: 1%;}
table.price_tbl td.v:after{content: "";width: 100%;height: 100%;background: url(../images/epi/ladies-parts-v.jpg) no-repeat top left;background-size: 15vw;position: absolute;left: -19vw;top: 1%;}
table.price_tbl td.vio:after{content: "";width: 100%;height: 100%;background: url(../images/epi/ladies-parts-vio.jpg) no-repeat top left;background-size: 15vw;position: absolute;left: -19vw;top: 1%;}
table.price_tbl td.io:after{content: "";width: 100%;height: 100%;background: url("../images/epi/kids-parts-io.jpg") no-repeat top left;background-size: 15vw;position: absolute;left: -19vw;top: 1%;}

p.menu-att{margin-bottom: 2%;font-size: 3.2vw;}
.treatment-list{margin: 10% auto 6%;width: 90%;}
.treatment-list img{width: 100%;}

.parts{background: #ededed;padding: 6%;margin-bottom: 8%;}
.parts ul li{width: auto;background: #FFF;padding: 2% 4%;margin: 1% 1% 1% 0;display: inline-block;border-radius: 30px;}

.tab-wrap {flex-wrap: wrap;display: flex;} 

.tab-label {color: White;background: #818080;margin:3px 1px 0px 3px;;order: -1;padding: 4%;width: 48%;text-align: center;border-radius: 12px 12px 0px 0px;font-family: source-han-serif-japanese, 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", HGS明朝E, メイリオ, Meiryo;} 
.tab-content {width: 100%;display: none;border-top: solid 2px #818080;} 

.epilation .tab-label{width: 32%;}

/* アクティブなタブ */ 
.tab-switch:checked+.tab-label {background: #b56b9b;} 
.tab-switch:checked+.tab-label+.tab-content { display: block; } 
/* ラジオボタン非表示 */ .tab-switch { display: none; }

.kids-top-bn{margin: 8vw auto 0;width: 100%;}


/* contact
----------------------------------------------- */
.contact .second-content{width: 86vw;}

.contact-tel-ttl {line-height: 1.6;font-size: 4vw;background: #000;padding: 3%;color: #fff;text-align: center;margin-bottom: 6%; }
.contact-tel-ttl span:before{content:"\f095";font-family:"icomoon";display:inline-block;width:24px;height:24px;vertical-align:middle;}
.contact-tel{text-align:center;}
.contact-tel a{display:inline-block;font-family:'Montserrat', serif;font-weight:400;font-style:normal;color:#b56c9b;font-size:8vw;letter-spacing:.05em;line-height:1;}
.contact-tel p{font-size:3.4vw;text-align: center;line-height: 1.2;}
.contact-tel p .small{font-size: 80%;}
.contact-mail{line-height:1.6;font-size:4vw;background:#000;color:#fff;text-align:center;padding:3%;}
.contact-mail span:before{content:"\f0e0";font-family:"icomoon";display:inline-block;width:22px;height:26.5px;vertical-align:middle;margin-right:4px;}
.reserve_ttl span:before{content:"\f08e";font-family:"icomoon";display:inline-block;width:22px;height:24.5px;vertical-align:middle;margin-right:4px;}
.reserve_box{padding:0 0 5vw;}
.reserve_box div.item p{line-height: 1.4;text-align: center;padding:5px;}

.formbox {padding: 4% 7%;margin: 0 auto;border: 1px solid #eee;background: #fff;box-shadow: 0 0 10px rgb(210 209 208 / 40%);}
.formbox table { width: 100%;color: #666;}
.formbox ul.select li {width: 100%;}
.formbox ul.select li:first-child { margin-bottom: 2%;}
.formbox .mailformproTable th{display: block;width: 100%;font-size: 3.5vw;padding: 0;margin: 6% 0 4%; font-feature-settings: "palt";letter-spacing: .02em;}
.formbox .mailformproTable td{display: block;width: 100%;padding: 0;font-size: 3.4vw;margin-bottom: 4%; font-feature-settings: "palt";letter-spacing: .02em;}
#mfp_buttons{width: 100%!important;}
.formbox input{ width: 100%!important;}
.formbox textarea.w100 { width:100% !important; height: 150px !important;}
input#button_mfp_goconfirm{ width: 100%!important;}
input[type="submit"]{-webkit-appearance: none;appearance: none;background-image: none!important;box-shadow: none;overflow: hidden!important;cursor: pointer;}

.formbox .contact-att {font-size: 3.2vw;line-height: 1.6;font-feature-settings: "palt"1;letter-spacing:0.02em;text-align:justify;text-justify:auto;}
.formbox .contact-att span.bold { display: block; font-weight: bold; }
.formbox .contact-att span.red { color: #c12f2f; background: #FFEDED; padding: 1px 2px; }

.privacy-in{padding: 0;border: 1px solid #eee;border-radius:5px;margin: 10px auto;}
.privacy-in iframe { width:100%;}


/* salon
----------------------------------------------- */
.salon .info{background: #f7f8f7;padding:8% 0;}
.salon .title{text-align:center;font-family:'Montserrat', serif;font-size: 6vw;margin-bottom:5%;color: #b56c9b;line-height:1.3;}
.salon .title span{display:block;font-size:3vw;color: #333;font-family: source-han-sans-japanese, 游ゴシック体, YuGothic, 'Yu Gothic', "游ゴシック Medium", "Yu Gothic Medium", 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;}
.salon .info table{width:92%;margin:0 auto 5%;}
.salon .info th,.salon .info td{padding: 6% 2%;vertical-align:middle;line-height:1.4;font-feature-settings: "palt";letter-spacing: .02em;}
.salon .info th{border-bottom: 1px solid #b56c9b;border-top: 1px solid #b56c9b;width:35%;}
.salon .info td{border-bottom:1px solid #cccccc;border-top:1px solid #9a9a9a}
.salon .info .box{margin-top:5%;}
.salon .info .box img{display:inline-block;width:18%;}
.salon .info td a{font-family:'Montserrat', serif;display:inline-block;font-size:140%;font-weight:bold;color: #b56c9b;}
.salon .info td a.mail_link{font-size:3.4vw;}
.salon .info td a.tel_link{letter-spacing: 0.1em;}

.salon .maps_outer{width:92%;margin:0 auto 2vw;}
.salon .maps_outer iframe{height:40vw;width:100%;}

.salon .info .btns{width:92%;margin: 0 auto;text-align: center;display: -webkit-box;display: -moz-box;display: -webkit-flex;display: box;display: flex;justify-content: space-between;-webkit-justify-content: space-between;}
.salon .info .btns a{width:48.8%;background: #b56c9b;color:#fff;font-size:3.12vw;font-weight:bold;border-radius:4px;padding: 4vw;}
.salon .info .btns span:after{content:'';display:inline-block;width:0;height:0;margin-left:2vw;border-color:transparent transparent transparent #ffffff;border-style:solid;border-width:4px 0 4px 5px;}
.salon .info .btns [class^="icon-"]{margin-right:1.2vw;}

/* machine
----------------------------------------------- */
.machine .top-menu-items{	-webkit-align-items: flex-end;	-ms-flex-align: end;	align-items: flex-end;}
.machine .top-menu-item-more{margin: 25px auto 0;}

/* reshot-pro
----------------------------------------------- */
.reshot-pro .top{margin-bottom: 10%;}
.reshot-pro .mov {margin: 0 auto;width: 90%;height: 300px;}

.reshot-pro .point {background: #f1f1f1;width: 100%;padding: 8% 6%;margin: 10% auto;}
.reshot-pro .point .point-ttl{width: 90%;margin: 0 auto 8%;}

.reshot-pro .point li {margin-bottom: 0px;display:-webkit-box;display:-moz-box;display:box;display:-webkit-flex;display:flex;flex-wrap:wrap;align-items: center;justify-content: space-around;margin-bottom: 10%;}
.reshot-pro .point li:last-child{margin-bottom: 0;}
.reshot-pro .point li .text .ttl{margin-bottom: 2%;display: -webkit-flex;display: -ms-flexbox;display: flex;-webkit-align-items: flex-end;-ms-flex-align: center;align-items: center;}
.reshot-pro .point li .text .ttl img{width: 17vw;margin-left: -1%;}
.reshot-pro .point li .text .ttl p.ttl{font-size: 4.2vw;letter-spacing: .04em;font-feature-settings: "palt";line-height: 1.5;margin: 0 0 0 3vw;font-family: source-han-serif-japanese, 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", HGS明朝E, メイリオ, Meiryo;}
.reshot-pro .point li .text p {line-height: 1.7;font-size: 3.5vw;text-align: justify;margin: 0 auto 4%;font-feature-settings: "palt";letter-spacing: .05em;}
.reshot-pro .point li img.rightimg{width: 90%;margin: 0 auto;}

.reshot-pro .info .title img{width: 84%;margin: 0 auto 2%;}
.reshot-pro .info table{width:92%;margin:0 auto 5%;}
.reshot-pro .info th,.reshot-pro .info td{padding: 6% 2%;vertical-align:middle;line-height:1.4;font-feature-settings: "palt";letter-spacing: .02em;}
.reshot-pro .info th{border-bottom: 1px solid #b56c9b;border-top: 1px solid #b56c9b;width: 38%;}
.reshot-pro .info td{border-bottom:1px solid #cccccc;border-top:1px solid #9a9a9a}

/* inshape
----------------------------------------------- */
.inshape .top{margin-bottom: 10%;}
.inshape .treatment img{width: 90%;margin: 0 auto;}

.inshape .detail {background: #f1f1f1;width: 100%;padding: 8% 0;margin: 10% auto;}
.inshape .detail .ttl{width: 90%;margin: 0 auto 10%;padding: 0 6%;}
.inshape .detail .intro{margin-bottom: -4%;background: url(../images/machine/inshape/sub-ttl-bg.png) no-repeat center;background-size: 140%;}
.inshape .detail .intro img{width: 80%;margin: -7% auto 0;}
.inshape .detail .intro img.sub-ttl{width: 70%;margin: 0 auto;}

.inshape .detail .option{background: #fff;width: 90%;margin: 0 auto 12%;padding: 6%;}
.inshape .detail .option img{margin-bottom: 2%;}
.inshape .detail .option .text p{text-align: justify;line-height: 1.6;font-size: 3.4vw;margin: 0;width: 100%;padding: 0;font-feature-settings: "palt";letter-spacing: .05em;}
.inshape .detail .option .text p.ttl{font-size: 4vw;margin-bottom: 2%;font-family: source-han-serif-japanese, 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", HGS明朝E, メイリオ, Meiryo;}

.inshape .detail .point img.point-ttl{width: 90%;margin: 0 auto 6%;}
.inshape .detail .point ul{display: -webkit-flex;display: -ms-flexbox;display: flex;-webkit-flex-wrap: wrap;-ms-flex-wrap: wrap;flex-wrap: wrap;-webkit-justify-content: center;-ms-flex-pack: center;justify-content: center;width: 84%;margin: 0 auto;}
.inshape .detail .point ul li{width: 46%;margin-bottom: 6%;}
.inshape .detail .point ul li:nth-child(2n){margin-left: 6%;}
.inshape .detail .point ul li img{width: 100%;margin-bottom: 6%;}
.inshape .detail .point ul li p{text-align: center;font-size: 3.2vw;line-height: 1.6;}

.inshape .other-ttl{width: 84%;margin: 0 auto 4%;}
.inshape .other-img{width: 90%;margin: 0 auto 10vw;}

.inshape-slideitem-image { width: 100%; }
.inshape-slideitem-title { padding: 3vw;}
.inshape-slideitem-title .big { font-size: 4.47vw; display: block; margin-bottom: 2%;text-align: center;line-height: 1.4;}
.inshape-slideitem-title .txt { font-size: 3.5vw; line-height: 1.8;text-align: left;}
.inshape-slideitem-content { padding: 10vw 0; margin-bottom: 8vw; background: url(../images/top-ba-bg.jpg) no-repeat center; background-size: cover; }
.inshape-slideitem-items li { width: 300px; background: #fff; -moz-box-shadow: 0 0 8px 0 rgba(0, 0, 0, 0.2); -webkit-box-shadow: 0 0 8px 0 rgba(0, 0, 0, 0.2); box-shadow: 0 0 8px 0 rgba(0, 0, 0, 0.2); position: relative;}
.inshape-slideitem-items li[aria-hidden="true"] { -webkit-filter: blur(2px); filter: blur(2px); }
.inshape-slideitem-content .bx-viewport { overflow: visible !important; }

.inshape .bx-prev { width: 10vw; height: 10vw; left: -10vw; }
.inshape .bx-next { width: 10vw; height: 10vw; right: -10vw; }

/* sitemap
----------------------------------------------- */
.sitemap ul {display:-webkit-box;display:-moz-box;display:box;display:-webkit-flex;display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:flex-start;margin-bottom: 6%;}
.sitemap li {width: 48%;border-bottom: 1px dotted #ccc;padding: 0% 2% 4.2%;margin-bottom: 5%;position: relative;font-size: 3.4vw;}
.sitemap li:nth-child(odd) {margin-right: 3%;}
.sitemap li a:after{content: "\f105";font-family: 'icomoon';position: absolute;top: 0;right: 4%;color: #af998c;}

/*voice
----------------------------------------------- */
.voice .box{border: 1px solid #cfb7c6;padding: 6%;box-shadow: 4px 4px #cfb7c6;margin-bottom: 8%;}
.voice .box-last-set{margin-bottom: 14%;}
.voice .box p.name_time span.corse{color: #b66c9b;display: inline-block;font-size: 3.4vw;}
.voice .box p.name_time{font-size: 4.5vw;border-bottom: dotted 1px #d9d9d9;padding-bottom: 4%;font-family: source-han-serif-japanese, 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", HGS明朝E, メイリオ, Meiryo;color: #b66c9b;margin-top: -4%;}
.voice .box p.name_time span{display: block;font-size: 3.5vw;color: #a18b99;}
.voice .box p.text{margin-bottom: 0;}

/* privacy
----------------------------------------------- */
.privacy {text-align: justify;line-height: 1.6;  padding: 4%; }
.privacy p { font-size: 12px;margin-bottom: 5%; }
.privacy dl{ margin-bottom: 5%;}
.privacy dt{font-size: 12px;margin-bottom: 2%;background: #f5f5f5;padding: 1% 2% 1%;}
.privacy dd{font-size: 12px; margin-bottom: 4%;}

/* campaignh
----------------------------------------------- */
.campaign .flyer-item >li{margin-bottom: 8%;border-bottom: 1px dashed #eae9e7;padding-bottom: 8%;}
.campaign .flyer-item >li:last-child{margin-bottom: 0;padding-bottom: 0;border-bottom: none;}
.campaign .flyer-item >li img {width: 100%;margin: 0 auto;}
.campaign .flyer-item >li p{margin-bottom: 3vw;}
.campaign .flyer-item >li p:last-child{margin-bottom: 0;}

.campaign .flyer-item >li .lead{font-weight: 600;font-size: 130%;margin-bottom: 3vw;padding-bottom: 3vw; border-bottom: 1px dashed #ccc;line-height: 1.3;}
.campaign .flyer-item >li .text{margin-top: 5vw;}

.campaign .flyer-item .link{width: 100%;display: -webkit-box;display: -moz-box;display: -webkit-flex;display: box;display: flex;flex-wrap: wrap;justify-content:space-between;}
.campaign .flyer-item .link li a{padding: 10% 5%;background: #000;color: #FFF;text-align: center;position:relative;}
.campaign .flyer-item .link li {margin-bottom: 0;padding-bottom: 0;border-bottom: none;width: 48%;}
.campaign .flyer-item .link li .arrow{position: absolute;right: 20px;}

.campaign .flyer-item .flyer{margin-bottom: 8vw;}

.campaign .item{margin-bottom: 8vw;}
.campaign .item >li{border-bottom: none;margin-bottom: 5vw;padding-bottom: 0;}
.campaign .item >li p{text-align: center;font-size: 110%;font-weight: 600;}
.campaign .item >li img{margin-bottom: 3vw;}

.campaign .flyer-item li p span{font-size: 120%;font-weight: 600;color: #b66c9b;line-height: 1;}
.campaign .flyer-item li p .discount{font-size: 100%;font-weight: 600;color: #FFF;background:#b66c9b;padding:3px 5px;line-height: 1;margin-right: 5px;}
.campaign .flyer-item li .cam{margin-bottom:12vw;}

.campaign .flyer-item .ttl{font-size: 140%;font-weight: 600;text-align: center;background-color: #eae9e7;padding: 3vw;}

.select-item{display: -webkit-box;display: -moz-box;display: -webkit-flex;display: box;display: flex;flex-wrap: wrap;justify-content:space-between;padding: 6%;background:#f7f8f7;border-radius: 20px;}
.select-item li{width: 48%;padding-bottom: 2vw;margin-bottom: 2vw;}
.select-item li:last-child{padding-bottom: 0;margin-bottom: 0;}
.select-item li:nth-last-child(2){padding-bottom: 0;margin-bottom: 0;}
.select-item .lead{width: 100%;text-align: center;border-bottom: 1px dotted #ccc;margin-bottom: 3vw;padding-bottom: 3vw;}
.select-item .lead::before{content: none;}
.select-item li::before{content: '';display: inline-block;width: 15px;height: 15px;background-image: url("../images/check.png");background-size: contain;vertical-align: middle;margin-right: 8px;}



/* first
----------------------------------------------- */
.first .flex{display: -webkit-box;display: -moz-box;display: -webkit-flex;display: box;display: flex;align-items: flex-start;flex-wrap: wrap;justify-content:space-between;margin-bottom: 18vw;}
.first .flex img{width: 73vw;margin: 0 0 -7vw 1vw;}
.first .flex .text{width: 100%;}
.first .flex .text p{margin-bottom: 5vw;}
.first .flex .text p:last-child{margin-bottom: 0;}
.first .flex .text .lead{font-weight: 600;color: #74a3b2;font-size: 4.3vw;line-height: 1.6;}

.first-message-point-items { width: 80vw; margin: 0 auto; display: -webkit-box; display: -moz-box; display: -webkit-flex; display: box; display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; -webkit-justify-content: space-between; justify-content: center;gap:3vw;}
.first-message-point-items li { width: 24vw; height: 24vw; padding-top: 9.5vw;font-size: 3.68vw; font-family: source-han-serif-japanese, 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", HGS明朝E, メイリオ, Meiryo; font-weight: 300; text-align: center; border: 1px solid #dcdcdd; -moz-border-radius: 50%; -webkit-border-radius: 50%; border-radius: 50%; position: relative; }
.first-message-point-items li:before { content: ''; width: 120%; height: 4vw; background: #fff; position: absolute; top: 50%; left: 50%; -moz-transform: translate(-50%, -50%) rotate(-45deg); -ms-transform: translate(-50%, -50%) rotate(-45deg); -webkit-transform: translate(-50%, -50%) rotate(-45deg); transform: translate(-50%, -50%) rotate(-45deg); }
.first-message-point-items span { z-index: 1; position: relative; }

.staff-item{margin-bottom: 22vw}
.staff-item >li{display: -webkit-box;display: -moz-box;display: -webkit-flex;display: box;display: flex;align-items: flex-start;flex-wrap: wrap;justify-content:space-between;padding-bottom: 9vw;padding: 6vw;background: #f7f8f7;margin-bottom: 8vw;}
.staff-item img{margin-bottom: 5vw;width: 55vw;margin: 0 auto 7vw;}
.staff-item .text{width: 100%;}
.staff-item .text p{margin-bottom: 3vw;}
.staff-item .text p a{display:inline;color: #74a3b2;font-weight: 600;}
.staff-item .text p:last-child{margin-bottom: 0;}
.staff-item .text .lead{font-weight: 600;font-size: 4vw;line-height: 1.6;margin-bottom: 3.4vw;}

.staff-item .text .name{border-bottom: 1px solid #666;padding-bottom: 2vw;margin-bottom: 3vw;}
.staff-item .text .name dt{color: #74a3b2;margin-bottom: 1vw;}
.staff-item .text .name .first-name{font-family: 'Montserrat';display: inline-block;font-size: 8.2vw;}
.staff-item .text .name dd{display:inline-block;font-size: 3.2vw;margin-left: 0;}

.staff-item .text .intro{padding: 5vw 4vw 5vw 15vw;background: #FFF;border: 1px solid #333;position: relative;margin-top: 10vw}
.staff-item .text .intro span{font-family: 'Montserrat';width: 45px;height: 100%;padding: 20px 15px 0 0;color: #fff;font-size: 16px;font-weight: 400;letter-spacing: 3px;background: #2a2b2b;-ms-writing-mode: tb-rl;writing-mode: vertical-rl;position: absolute;top: 0;left: 0;}
.staff-item .text .intro dl{display: -webkit-box;display: -moz-box;display: -webkit-flex;display: box;display: flex;justify-content:space-between;flex-wrap: wrap;align-items: center;border-bottom: 1px solid #eae9e7;padding-bottom: 5vw;margin-bottom: 5vw;}
.staff-item .text .intro dl:last-child{padding-bottom: 0;margin-bottom: 0;border-bottom:none;}
.staff-item .text .intro dt{font-weight: 600;line-height: 1.4;width: 100%;margin-bottom: 3vw;text-align: center;}
.staff-item .text .intro dd{line-height: 1.4;width: 100%;text-align: center;font-size: 3.5vw;color: #666;}
.staff-item .text .intro dd li{text-indent: -1em;padding-left: 1em;text-align: left;margin-bottom: 2vw;}
.staff-item .text .intro dd p{line-height: 1.4;margin-bottom: 3vw;}
.staff-item .text .intro dd p:last-child{margin-bottom: 0;}


.greeting{margin-bottom: 10vw;background: url("../images/first/greeting-bg.jpg") no-repeat center; background-size: cover;margin-left: calc(-50vw + 50%);width: 100vw;padding: 10vw 0;}
.greeting .inner{width: 90%;margin: 0 auto;position: relative;}
.greeting p:last-child{margin-bottom: 0;}
.greeting .greeting-logo{position: absolute;width: 45vw;top: -20vw;right: 0;}
.greeting .owner-name {text-align: left;font-size: 4.8vw;}

.first .gallery { margin: 0 auto; width: 100%;}
.first .gallery img { height: auto; width: 100%;}
.first .gallery .slider { margin-bottom: 2vw;}
.first .gallery .thumbnail img { border:1px solid #fff;}
.first .gallery .slick-prev, .slick-next  {display: none !important;}


/* qa
----------------------------------------------- */
.qa_list {margin: 0 auto 12vw;}
.qa_list dl {margin: 0 auto 4%;}
.qa_list dt {position: relative;padding: 3% 11% 3% 12%;border: 1px solid #e9eaeb;cursor: pointer;line-height: 1.5;font-size: 3.6vw;width: 100%;text-indent: -1.8em;font-feature-settings: "palt";letter-spacing: .02em;}
.qa_list dt span{font-size: 4vw;color: #b56b9b;line-height: 1;font-weight: 400;margin-right: 3%;font-family: 'Montserrat';}
.qa_list dt:before, .qa_list dt:after {content: '';background: #c3c8cf;position: absolute;top: 0;right: 0;}
.qa_list dt:before {width: 16px;height: 1px;top: calc(50% - 0px);right: 12px;}
.qa_list dt:after {width: 1px;height: 16px;top: calc(50% - 11px);right: 20px;-webkit-transition: 0.3s;transition: 0.3s;transform: translate(0, 3px);}
.qa_list dt.open:after {-moz-transform: rotate(90deg) translate(3px, 0);-ms-transform: rotate(90deg) translate(3px, 0);-webkit-transform: rotate(90deg) translate(3px, 0);transform: rotate(90deg) translate(3px, 0);}
.qa_list dd {display: none;padding: 5%;background: #f7f7f7;}
.qa_list dd p {text-align: justify;font-feature-settings: "palt";ont-weight: 400;letter-spacing: .02em;font-size: 3.3vw;}
.qa_list dd p:last-child {margin-bottom: 0;}
.qa_list dl:last-child{margin-bottom: 0;}
.qa_list dd p span{font-weight: 600;color: #b56b9b;}
.qa_list dd .lead{font-weight: 600;font-size: 110%;}




