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

/* default 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; }
body { padding: 0; margin: 0; color: var(--black); font-size: 3.5vw; 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: 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%; overflow: hidden; z-index: 1; position: relative; }

.midashi01 {margin-bottom: 6vw;text-align: center;}
.midashi01 .en {margin-bottom: 2vw;font-size: 14vw;font-family: paganini;font-weight: 300;letter-spacing: 0.2vw;display: block;line-height: 1;}
.midashi01 .jp { font-size: 3.95vw; display: block; }

.midashi02 {margin-bottom: 5vw;position:relative;padding:7vw 0 0 0;}
.midashi02 .deco {margin-bottom: 4vw;font-size: 22vw;font-family: paganini;font-weight: 300;letter-spacing: 0.2vw;display: block;color:#e7e0ed82;position:absolute;line-height:1;left:-8%;top: -4vw;text-wrap: nowrap;}
.midashi02 .jp {font-size: 7vw;display: block;font-family:var(--mincho);z-index:2;position:relative;font-weight:600;color: var(--purple02);line-height: 1.4;}

.midashi03{background:var(--purple02);color:#fff;font-family:var(--mincho);text-align:center;font-size:5vw;margin-bottom:4vw}

.midashi04 {margin-bottom: 6vw;text-align: center;position:relative;}
.midashi04:before{content:"";width:100%;height: 13vw;background:#e7e0ed;position:absolute;left:0;z-index:-1;top:-4vw;}
.midashi04 .en {font-size: 12vw;font-family: paganini;font-weight: 300;letter-spacing: 0.2vw;display: block;line-height: 1;}
.midashi04 .jp { font-size: 3.7vw; display: block; }

.midashi05{position:relative;margin-bottom:10vw;}
.midashi05 .en{color: var(--purple02);font-family: paganini;font-weight: 300;display:block;font-size:8vw;line-height:1;}
.midashi05:after{content:"";width:15%;height: 1px;background:var(--purple01);position:absolute;left:0;z-index:-1;bottom:-4vw;}

.more01 { width: 65vw; padding: 4vw 0; margin: 0 auto; color: #fff; font-size: 3.68vw; text-align: center; line-height: 1.2; background: #868686 url(../images/arrow01.png) no-repeat center right 5vw; background-size: 2vw; -moz-border-radius: 15vw; -webkit-border-radius: 15vw; border-radius: 15vw; position: relative; display: table; }

.tbl {width: 100%;}
.tbl th,.tbl td {vertical-align:middle;line-height: 1.6;letter-spacing: .04em;}
.tbl th {text-align:center;width: 30%;font-weight: 600;padding: 4% 3% 4% 0;color: #444;}
.tbl tr:first-child {border-top: 1px solid #e7e7e7;}
.tbl td {width: 70%;padding: 4% 0;}
.tbl tr{border-bottom: 1px solid #e7e7e7;}
.tbl tr:last-child { border-bottom: none;}
.tbl td a{font-family: futura-pt;font-weight: 400;}
.tbl td a.tel {font-size: 5.6vw;display: inline-block;font-family: paganini;font-weight: 300;}
.tbl td a.tel span:before {margin-right: 3px;font-family:icon;content:'\f095';font-size: 80%;}

.menulist-items{margin-bottom:16vw;}
.top-itemslist-head{margin-bottom:5vw;}
.top-itemslist-head-comment {text-align: center;line-height: 1.8;}
.top-itemslist-items {width: 90%;margin: 0 auto 8vw;}
.top-itemslist-items li { width: 100%; margin-bottom: 4vw; }
.top-itemslist-items img { width: 100%; }

/* 切り替え */
.tab-wrap {flex-wrap: wrap;display: flex;align-items:flex-end;justify-content: center;width: 90%;margin: 0 auto;}
.tab-label {color: #615c61;background: #e7e0ed;margin-right: 1%;padding: 4% 5%;order: -1;width: 49%;text-align: center;border-radius: 12px 12px 0px 0px;font-weight: bold;font-size: 3.8vw;}
.tab-wrap label.tab-label:last-of-type{margin: 0 0 0 auto;}
.tab-content {width: 100%;display: none;}
.tab-switch:checked+.tab-label {background: #8b5897;color: #fff;}
.tab-switch:checked+.tab-label+.tab-content {display: block;padding: 5vw 0 0 0;border-top: 1px solid #8b5896;}
.tab-switch { display: none; }

/* header sp
----------------------------------------------- */
.header {width: 100%;height: 16vw;background: #fff;z-index: 10;position: fixed;}
.header-content {width: 100%;height: 100%;z-index: 2;position: relative;}
.header-logo { width: 32vw; position: absolute; top: 50%; left: 5vw; -moz-transform: translateY(-50%); -ms-transform: translateY(-50%); -webkit-transform: translateY(-50%); transform: translateY(-50%); }
.header-logo img { width: 100%; }
.header-mail { width: 12vw; height: 12vw; padding-top: 0.5vw; color: #fff; font-size: 5.26vw; background: var(--purple01); -moz-border-radius: 50%; -webkit-border-radius: 50%; border-radius: 50%; position: absolute; top: 2vw; right: 18vw; display: -webkit-box; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; }
.header-navi-button { width: 8vw; height: 8vw; cursor: pointer; z-index: 11; position: absolute; top: 4vw; right: 5vw; -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 { width: 100%; height: 1px; background: var(--black); 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 { top: 2.5vw; }
.header-navi-button .line-bottom { top: 5.5vw; }
.header-navi { width: 100%; height: 100vh; padding-top: 16vw; background: #e7dae5 url(../images/header-navi-bg.jpg) no-repeat top center; background-size: 100%; z-index: 1; position: fixed; top: 100vh; left: 0; }
.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: 5vw 0 100px; opacity: 0; visibility: hidden; }
.header-navi-items { width: 90vw; margin: 0 auto 8vw; }
.header-navi-item { width: 100%; border-bottom: 1px solid #b6a3b6; position: relative; }
.header-navi-item-title { padding: 4.5vw 2vw; 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.accordion:after { content: '\f107'; color: var(--purple02); font-size: 4.61vw; font-family: 'icon'; position: absolute; top: 50%; right: 3vw; -moz-transform: translateY(-50%); -ms-transform: translateY(-50%); -webkit-transform: translateY(-50%); transform: translateY(-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); }
.header-navi-item-title.open:after { -moz-transform: translateY(-50%) rotate(180deg); -ms-transform: translateY(-50%) rotate(180deg); -webkit-transform: translateY(-50%) rotate(180deg); transform: translateY(-50%) rotate(180deg); }
.header-navi-item-title .en { margin-right: 2.5vw; color: var(--purple02); font-size: 6.84vw; font-family: paganini; font-weight: 300; letter-spacing: 0.4vw; }
.header-navi-item-title .jp { font-size: 3.68vw; }
.header-navi-item-box { padding: 2vw 0 4vw 8vw; display: none; }
.header-navi-initems { width: 100%; }
.header-navi-initems li { width: 100%; margin-bottom: 5vw; font-size: 3.95vw; position: relative; }
.header-navi-initems a { display: -webkit-box; display: -webkit-flex; display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; -webkit-align-items: center; align-items: center; }
.header-navi-contact { width: 75vw; padding: 4vw 0; margin: 0 auto 8vw; color: #fff; text-align: center; background: var(--purple01) url(../images/arrow01.png) no-repeat center right 4vw; background-size: 2vw; }
.header-navi-contact .en { margin-bottom: 2vw; font-size: 5.26vw; font-family: paganini; font-weight: 300; letter-spacing: 0.4vw; display: block; }
.header-navi-contact .en:before { content: '\e910'; margin-right: 1vw; font-size: 95%; font-family: 'icon'; display: inline-block; }
.header-navi-contact .jp { font-size: 3.68vw; display: block; }
.header-navi-social-items { width: 100%; display: -webkit-box; display: -webkit-flex; display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; -webkit-justify-content: center; justify-content: center; }
.header-navi-social-items li { width: 10vw; height: 10vw; margin: 0 2vw; background: #fff; -moz-border-radius: 50%; -webkit-border-radius: 50%; border-radius: 50%; font-size: 5.26vw; position: relative; display: -webkit-box; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; }
.header-navi-social-items a { color: var(--purple01); }

.animation { opacity: 0; }

.header-navi-open { width: 100%; height: 100%; position: fixed; }
.header-navi-open .header-navi-button .line-top { top: 4vw; -moz-transform: rotate(20deg); -ms-transform: rotate(20deg); -webkit-transform: rotate(20deg); transform: rotate(20deg); }
.header-navi-open .header-navi-button .line-bottom { top: 4vw; -moz-transform: rotate(-20deg); -ms-transform: rotate(-20deg); -webkit-transform: rotate(-20deg); transform: rotate(-20deg); }
.header-navi-open .header-navi { -moz-animation-name: header-navi-open; -webkit-animation-name: header-navi-open; animation-name: header-navi-open; -moz-animation-delay: 0s; -webkit-animation-delay: 0s; animation-delay: 0s; -moz-animation-duration: 0.4s; -webkit-animation-duration: 0.4s; animation-duration: 0.4s; -moz-animation-timing-function: ease; -webkit-animation-timing-function: ease; animation-timing-function: ease; -moz-animation-fill-mode: forwards; -webkit-animation-fill-mode: forwards; animation-fill-mode: forwards; }
.header-navi-open .header-navi-content { -moz-animation-name: header-navi-in; -webkit-animation-name: header-navi-in; animation-name: header-navi-in; -moz-animation-delay: 0.4s; -webkit-animation-delay: 0.4s; animation-delay: 0.4s; -moz-animation-duration: 0.5s; -webkit-animation-duration: 0.5s; animation-duration: 0.5s; -moz-animation-timing-function: ease; -webkit-animation-timing-function: ease; animation-timing-function: ease; -moz-animation-fill-mode: forwards; -webkit-animation-fill-mode: forwards; animation-fill-mode: forwards; }
@-moz-keyframes header-navi-open { 0% { top: 100vh; }
  100% { top: 0; } }
@-webkit-keyframes header-navi-open { 0% { top: 100vh; }
  100% { top: 0; } }
@keyframes header-navi-open { 0% { top: 100vh; }
  100% { top: 0; } }
@-moz-keyframes header-navi-in { 0% { opacity: 0; visibility: hidden; -moz-transform: translateY(15px); transform: translateY(15px); }
  100% { opacity: 1; visibility: visible; -moz-transform: translateY(0); transform: translateY(0); } }
@-webkit-keyframes header-navi-in { 0% { opacity: 0; visibility: hidden; -webkit-transform: translateY(15px); transform: translateY(15px); }
  100% { opacity: 1; visibility: visible; -webkit-transform: translateY(0); transform: translateY(0); } }
@keyframes header-navi-in { 0% { opacity: 0; visibility: hidden; -moz-transform: translateY(15px); -ms-transform: translateY(15px); -webkit-transform: translateY(15px); transform: translateY(15px); }
  100% { opacity: 1; visibility: visible; -moz-transform: translateY(0); -ms-transform: translateY(0); -webkit-transform: translateY(0); transform: translateY(0); } }
.header-navi-closed .header-navi { -moz-animation-name: header-navi-closed; -webkit-animation-name: header-navi-closed; animation-name: header-navi-closed; -moz-animation-delay: 0.4s; -webkit-animation-delay: 0.4s; animation-delay: 0.4s; -moz-animation-duration: 0.4s; -webkit-animation-duration: 0.4s; animation-duration: 0.4s; -moz-animation-timing-function: ease; -webkit-animation-timing-function: ease; animation-timing-function: ease; -moz-animation-fill-mode: both; -webkit-animation-fill-mode: both; animation-fill-mode: both; }
.header-navi-closed .header-navi-content { -moz-animation-name: header-navi-out; -webkit-animation-name: header-navi-out; animation-name: header-navi-out; -moz-animation-delay: 0s; -webkit-animation-delay: 0s; animation-delay: 0s; -moz-animation-duration: 0.5s; -webkit-animation-duration: 0.5s; animation-duration: 0.5s; -moz-animation-timing-function: ease; -webkit-animation-timing-function: ease; animation-timing-function: ease; -moz-animation-fill-mode: both; -webkit-animation-fill-mode: both; animation-fill-mode: both; }

@-moz-keyframes header-navi-closed { 0% { top: 0; }
  100% { top: -100vh; } }
@-webkit-keyframes header-navi-closed { 0% { top: 0; }
  100% { top: -100vh; } }
@keyframes header-navi-closed { 0% { top: 0; }
  100% { top: -100vh; } }
@-moz-keyframes header-navi-out { 0% { opacity: 1; visibility: visible; -moz-transform: translateY(0); transform: translateY(0); }
  100% { opacity: 0; visibility: hidden; -moz-transform: translateY(-15px); transform: translateY(-15px); } }
@-webkit-keyframes header-navi-out { 0% { opacity: 1; visibility: visible; -webkit-transform: translateY(0); transform: translateY(0); }
  100% { opacity: 0; visibility: hidden; -webkit-transform: translateY(-15px); transform: translateY(-15px); } }
@keyframes header-navi-out { 0% { opacity: 1; visibility: visible; -moz-transform: translateY(0); -ms-transform: translateY(0); -webkit-transform: translateY(0); transform: translateY(0); }
  100% { opacity: 0; visibility: hidden; -moz-transform: translateY(-15px); -ms-transform: translateY(-15px); -webkit-transform: translateY(-15px); transform: translateY(-15px); } }
/* hero sp
----------------------------------------------- */
.hero {width: 100%;z-index: 1;position: relative;margin-top: 16vw;}

.top-hero-items { width: 100%; margin-bottom: 4vw; }
.top-hero-item { width: 100vw; }
.top-hero-item img { width: 100%; }
.top-hero-thumbnail-items { width: 90vw; margin: 0 auto; }
.top-hero-thumbnail-item { width: 43.5vw; margin: 0 1.5vw; }
.top-hero-thumbnail-item img { width: 100%; }
.top-hero .slick-dots{bottom:-10vw;}

.second-hero { height: 54vw; background: url(../images/second-hero-bg.jpg) no-repeat top center; background-size: cover; }
.second-hero-title { width: 100%; text-align: center; position: absolute; top: 50%; left: 0; -moz-transform: translateY(-50%); -ms-transform: translateY(-50%); -webkit-transform: translateY(-50%); transform: translateY(-50%); }
.second-hero-title .en {margin-bottom: 2.5vw;font-size: 12vw;font-family: paganini;font-weight: 300;letter-spacing: 0.2vw;display: block;}
.second-hero-title .jp { font-size: 3.68vw; display: block; }

/* bread sp
----------------------------------------------- */
.breadcrumb {padding: 3.5vw 0 3vw;background: #e7e0ed;z-index: 1;position: relative;margin-top: 16vw;}
.breadcrumb-items { width: 90vw; margin: 0 auto; font-size: 0; }
.breadcrumb-items li { font-size: 3.42vw; position: relative; display: inline-block; }
.breadcrumb-items li:after { content: '\f105'; font-family: 'icon'; pointer-evens: none; margin: 0 2.5vw 0 1.5vw; opacity: 0.5; display: inline-block; }
.breadcrumb-items li:last-child:after { display: none; }
.breadcrumb-items a { display: inline-block; }

/* footer sp
----------------------------------------------- */
.footer { width: 100%; padding: 22vw 0 18vw;background: -webkit-gradient(linear, 50% 100%, 50% 0%, color-stop(8vw, #e2bfe0), color-stop(100%, #997799)); background: -moz-linear-gradient(bottom, #e2bfe0 8vw, #997799); background: -webkit-linear-gradient(bottom, #e2bfe0 8vw, #997799); background: linear-gradient(to top, #e2bfe0 8vw, #997799); z-index: 1; position: relative; }
.footer-content { width: 90vw; margin: 0 auto; position: relative; }
.footer-left { margin-bottom: 8vw; }
.footer-logo { width: 45vw; margin: 0 auto 6vw; }
.footer-logo img { width: 100%; }
.footer-tel { margin: 0 auto 2.5vw; color: #fff; text-align: center; 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; }
.footer-tel .title {width: 24vw;padding: 1.5vw 4vw 1vw;margin-right: 2vw;font-size: 3.95vw;text-align: justify;text-align-last: justify;border: 1px solid #fff;-moz-border-radius: 5vw;-webkit-border-radius: 5vw;border-radius: 5vw;}
.footer-tel .number {color: #fff;font-size: 6.5vw;font-family: proxima-nova;font-weight: 400;letter-spacing: 0.2vw;}
.footer-tel .number:before { content: '\f095'; margin-right: 1vw; font-size: 75%; font-family: 'icon'; display: inline-block; }
.footer-open { width: 74vw; padding: 1.5vw 0 1vw; margin: 4vw auto 8vw; font-size: 3.68vw; text-align: center; background: #fff; display: table; }
.footer-contact { width: 74vw; padding: 4vw 0; margin: 0 auto 5vw; color: #fff; text-align: center; background: var(--purple01) url(../images/arrow01.png) no-repeat center right 4vw; background-size: 2vw; }
.footer-contact .en { margin-bottom: 2vw; font-size: 5.26vw; font-family: paganini; font-weight: 300; letter-spacing: 0.4vw; display: block; }
.footer-contact .en:before { content: '\e910'; margin-right: 1vw; font-family: 'icon'; display: inline-block; }
.footer-contact .jp { font-size: 3.68vw; display: block; }
.footer-social-items { width: 100%; display: -webkit-box; display: -webkit-flex; display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; -webkit-justify-content: center; justify-content: center; }
.footer-social-items li { width: 10vw; height: 10vw; margin: 0 2vw; background: #fff; -moz-border-radius: 50%; -webkit-border-radius: 50%; border-radius: 50%; font-size: 5.26vw; position: relative; display: -webkit-box; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; }
.footer-social-items a { color: var(--purple01); }
.footer-navi { width: 100%; margin: 0 auto 8vw; }
.footer-navi-title { padding: 5vw 0 4.5vw; color: #fff; font-size: 4.74vw; font-weight: bold; letter-spacing: 0.4vw; border-bottom: 1px solid #fff; 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: 2.5vw; height: 2.5vw; position: absolute; top: 50%; right: 2vw; -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: #fff; 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: #fff; 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.68vw; border-bottom: 1px solid #fff; position: relative; }
.footer-navi-items li:after { content: '\f105'; color: #fff; 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: 4.5vw 0 4vw; color: #fff; }

.copyright { width: 100%; color: #fff; font-size: 3.29vw; font-family: proxima-nova; font-weight: 400; text-align: center; letter-spacing: 0.2vw; opacity: 0.8; display: block; }
.pagetop { width: 8vw; position: absolute; top: -15vw; right: 0; }
.pagetop img { width: 100%; }

/* second sp
----------------------------------------------- */
.second {min-height: 100vw;margin: 0 auto;position: relative;font-size: 3.6vw; line-height: 1.8;font-feature-settings: "palt";letter-spacing: .06em;text-align: justify;text-justify: auto; z-index: 1; }
.second p { margin-bottom: 4vw;}
.second p:last-child { margin-bottom: 0; }
.second-text {padding: 8vw 0;width: 90vw;margin: 0 auto;}
.second .att{position:relative;padding:0 0 0 5%;margin-bottom:1.5%;font-size:90%;line-height:1.4;}
.second .att:before{content:"※";position:absolute;left:0;}


/* =============================================
pc-size
================================================*/
@media screen and (min-width: 769px) { /* default pc ----------------------------------------------- */
  body { font-size: 15px; }
.sp { display: none; }
.pc { display: block; }
	
/* common pc ----------------------------------------------- */
.midashi01 { margin-bottom: 50px; }
.midashi01 .en {margin-bottom: 6px;font-size: 60px;letter-spacing: 2px;}
.midashi01 .jp { font-size: 15px; }
.midashi02{padding:20px 0 0 0;margin-bottom: 30px;}
.midashi02 .deco{font-size:100px;top: -16px;margin-bottom: 0;left: -39px;}
.midashi02 .jp{font-size:40px;}
.midashi03{font-size:26px;margin-bottom:20px;}
.midashi04 { margin-bottom: 50px; }
.midashi04:before{height: 68px;top:-20px;}
.midashi04 .en {margin-bottom: 6px;font-size: 60px;letter-spacing: 2px;}
.midashi04 .jp { font-size: 15px; }
.midashi05{margin-bottom:40px;}
.midashi05 .en{font-size:25px;}
.midashi05:after{bottom:-20px;width:60px;}
.more01 { width: 340px; padding: 22px 0 18px; font-size: 16px; background-position: center right 20px; background-size: 8px; }
.tbl td {width: 77%;padding: 18px 0;}
.tbl th {text-align:center;width: 20%;padding: 18px 10px;position: relative;}
.tbl td a.tel {font-size: 26px;}

/* 切り替え */
.tab-label{font-size:20px;padding:15px;}
.tab-switch:checked+.tab-label+.tab-content{padding-top:30px}
	
/* header pc ----------------------------------------------- */
.header {height: 95px;}
.header-content{position:absolute;}
.header-navi{padding-top:100px;}
.header-logo{display:none;}
.header-mail{display:none;}
.header-navi-button{width: 40px;height: 40px;top: 15px;right: 30px;}
.header-navi-item-title{padding:30px 0;}
.header-navi-item-title.accordion:after{font-size:30px;}
.header-navi-item-title .en{font-size: 26px;}
.header-navi-item-title .jp{font-size: 16px;}
.header-navi-initems li{font-size: 16px;margin-bottom: 20px;}
.header-navi-button .line-top{top:20px;}
.header-navi-button .line-bottom{top:40px;}
.header-navi-open .header-navi-button .line-top{top:30px;}
.header-navi-open .header-navi-button .line-bottom{top:30px;}
.header-navi-contact{width:500px;padding: 26px 0;margin-bottom: 40px;}
.header-navi-contact .en{font-size: 32px;margin-bottom: 5px;}
.header-navi-contact .jp{font-size:18px;}
.header-navi-social-items li{width: 50px;height: 50px;font-size: 24px;margin: 0 8px;}
.pc-header-seo {width: 100%;height: 22px;padding-top: 4px;font-size: 12px;text-align: center;background: #e5d6e6;}
.pc-header-inner {width: 95%;max-width: 1200px;padding: 6px 0 0;margin: 0 auto;position: relative;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;}
.pc-header-logo {width: 160px;position: relative;z-index: 2;top: 6px;}
.pc-header-logo img { width: 100%; }
.pc-header-mail {width: 260px;height: 60px;padding-top: 12px;color: #fff;text-align: center;background: var(--purple01) url(../images/arrow01.png) no-repeat center right 8px;background-size: 10px;top: 8px;right: 66px;position: relative;z-index: 2;}
.pc-header-mail .en {margin-bottom: 2px;font-family: paganini;font-weight: 300;font-size: 20px;letter-spacing: 2px;display: block;}
.pc-header-mail .en:before { content: '\e910'; margin-right: 5px; font-family: 'icon'; display: inline-block; }
.pc-header-mail .jp { font-size: 14px; display: block; }
.pc-header-global-items {height: 60px;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;}
.pc-header-global-items li {width: auto;height: 100%;text-align: center;overflow: hidden;position: relative;}
.pc-header-global-items li:first-child:before { display: none; }
.pc-header-global-items li:before {content: '';width: 1px;height: calc(100% - 55px);background: #d6d6d6;position: absolute;top: 50%;left: 0;-moz-transform: translateY(-50%);-ms-transform: translateY(-50%);-webkit-transform: translateY(-50%);transform: translateY(-50%);}
.pc-header-global-items li.current a, .pc-header-global-items li:hover a { background-position: center bottom -100px; opacity: 1; }
.pc-header-global-items a {height: 100%;padding: 14px 18px 0;background: url(../images/pc-header-global-item-current.png) no-repeat center bottom -140px;background-size: 160px;}
.pc-header-global-items .en {margin-bottom: 5px;color: var(--purple02);font-size: 13px;font-family: paganini;font-weight: 300;letter-spacing: 1px;display: block;}
.pc-header-global-items .jp {font-size: 10px;display: block;}
.pc-header-global-items{display:none;}
	
/* hero pc ----------------------------------------------- */
.hero{margin-top: 95px;}
.top-hero-items { margin-bottom: 20px; }
.top-hero-item {width: 100vw;max-width: 1200px;margin: 0 10px;}
.top-hero-thumbnail-items {width: 95%;max-width: 1200px;}
.top-hero-thumbnail-item {width: 22vw;max-width: 290px;margin: 0 7px;}
.top-hero .slick-dots{bottom:-30px;}
.top-hero .slick-dots li{width:10px;height:10px;margin:0 10px}
.second-hero {height: 300px;background: url(../images/second-hero-bg-pc.jpg) no-repeat top center;background-size: cover;}
.second-hero-title .en { margin-bottom: 20px; font-size: 80px; letter-spacing: 0; }
.second-hero-title .jp { font-size: 15px; }
	
/* bread pc ----------------------------------------------- */
.breadcrumb {padding: 10px 0 7px;margin-top: 95px;}
.breadcrumb-items {width: 95%;max-width: 1200px;}
.breadcrumb-items li { font-size: 14px; }
.breadcrumb-items li:after { margin: 0 12px 0 8px; }
	
/* footer pc ----------------------------------------------- */
.footer { padding: 120px 0 60px; }
.footer-content {width: 95%;max-width: 1200px;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-left {width: 30%;margin: 0 0 20px;max-width: 290px;}
.footer-logo { width: 180px; margin: 0 0 30px; }
.footer-tel { margin-bottom: 8px; -webkit-justify-content: flex-start; justify-content: flex-start; }
.footer-tel .title { width: 72px; padding: 6px 14px 5px; margin-right: 8px; font-size: 14px; }
.footer-tel .number { font-size: 25px; letter-spacing: 1px; }
.footer-tel .number:before { margin-right: 4px; }
.footer-open { width: 100%; padding: 6px; margin: 15px auto; font-size: 14px; }
.footer-contact { width: 100%; padding: 20px 0; margin-bottom: 20px; text-align: center; background-position: center right 15px; background-size: 8px; }
.footer-contact .en { margin-bottom: 8px; font-size: 20px; letter-spacing: 2px; }
.footer-contact .en:before { margin-right: 4px; }
.footer-contact .jp { font-size: 14px; }
.footer-social-items { -webkit-justify-content: flex-start; justify-content: flex-start; }
.footer-social-items li { width: 35px; height: 35px; margin: 0 8px 0 0; font-size: 20px; }
.footer-right {width: 66%;margin-bottom: 20px;}
.footer-navi { width: 100%; padding-top: 20px; margin: 0 0 20px; 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; }
.pc-footer-navi-title { margin-bottom: 15px; color: #fff; font-size: 18px; font-weight: bold; }
.footer-navi-items { display: block; }
.footer-navi-items li { padding-left: 10px; margin-bottom: 18px; font-size: 14px; border: none; }
.footer-navi-items li:after { right: auto; left: 0; }
.footer-navi-items a { padding: 0; }
.copyright { padding-top: 25px; font-size: 14px; text-align: left; letter-spacing: 1px; border-top: 1px solid #fff; }
.pagetop { width: 35px; top: auto; right: 0; bottom: -20px; }
	
/* second pc ----------------------------------------------- */
.second {min-height: 600px; font-size: 15px;}
.second p { margin-bottom: 24px;}
.second-text {width: clamp(730px, 95%, 1200px);padding: 70px 0 120px;}
.second .att{padding-left:20px;margin-bottom:6px;}

.menulist-items{margin-bottom:10px;}
.top-itemslist-head{margin-bottom:40px;}
.top-itemslist-items{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;margin-bottom: 20px;}
.top-itemslist-items li{width:49%;margin-bottom: 20px;}
}

@media screen and (min-width: 1000px) { 
.header{height: 90px;}
.hero{margin-top: 90px;}
}

@media screen and (min-width: 1200px) { 
.breadcrumb{margin-top:90px;}
.pc-header-logo{width:140px;top: -3px;}
.pc-header-global-items{height: 82px;}
.pc-header-global-items a{padding: 22px 11px 10px;}
.pc-header-global-items .jp{font-size:12px;}
.pc-header-mail{right:0;top: -3px;width: 200px;}
.pc-header-mail .en{font-size:18px;}
.pc-header-mail .jp{font-size:12px;}
.header-navi-button{display:none;}
.pc-header-global-items{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;width: 810px;position: relative;z-index: 2;}

.top-itemslist-items li{width: 32%;}
}
	
  /* retina用 ----------------------------------------------- */ 
@media screen and (min-width: 736px) and (-webkit-min-device-pixel-ratio: 2), screen and (min-width: 736px) and (min-resolution: 2dppx) { 
.more01 { background: #868686 url(../images/arrow01@2x.png) no-repeat center right 20px; background-size: 8px; }
.pc-header-mail {background: var(--purple01) url(../images/arrow01@2x.png) no-repeat center right 8px;background-size: 10px;}
.pc-header-global-items a { background: url(../images/pc-header-global-item-current@2x.png) no-repeat center bottom -160px; background-size: 160px; }
.second-hero { background: url(../images/second-hero-bg-pc@2x.jpg) no-repeat top center; background-size: cover; }
.footer-contact { background: var(--purple01) url(../images/arrow01@2x.png) no-repeat center right 15px; background-size: 8px; } 
}
