@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: #000;font-size: 3.8vw;font-family: 游ゴシック体, YuGothic, 'Yu Gothic', "游ゴシック Medium", "Yu Gothic Medium", 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;-webkit-text-size-adjust: 100%;font-style: normal;line-height: 1.8;font-feature-settings: 'pwid';background: #fff;}
_:-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; }
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%;}
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); }
a { color: #000; 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; cursor: pointer;}
.clearfix:after { content: ''; display: block; clear: both; }
.pc { display: none; }
.sp { display: block; }

.inner { width: 90%; margin: auto; }
/* common
----------------------------------------------- */
.js-body { width: 100%; height: 100%; position: fixed; }

.container {width: 100%;z-index: 1;overflow: hidden;position: relative;background: #fff;}
.fade { opacity: 0; -moz-transition: 1s; -o-transition: 1s; -webkit-transition: 1s; transition: 1s; }
.fade-left { -moz-transform: translateX(-15px); -ms-transform: translateX(-15px); -webkit-transform: translateX(-15px); transform: translateX(-15px); }
.fade-right { -moz-transform: translateX(15px); -ms-transform: translateX(15px); -webkit-transform: translateX(15px); transform: translateX(15px); }
.fade-bottom { -moz-transform: translateY(15px); -ms-transform: translateY(15px); -webkit-transform: translateY(15px); transform: translateY(15px); }
.fade-active { opacity: 1; -moz-transform: translate(0); -ms-transform: translate(0); -webkit-transform: translate(0); transform: translate(0); }

.social-items { margin-top: 5px; 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; }
.social-items li {width: 28px;margin: 0 8px;}
.social-items img { width: 100%; }

.en{font-family: cormorant-garamond, serif;}

/* header
----------------------------------------------- */
.header { z-index: 10; position: relative; }
.sp-header { width: 100%; z-index: 10; position: fixed; left: 0; top: 0; }
.sp-header.header-open .header-navi-button { background: none; }
.sp-header.header-open .header-navi-button .line-top { top: 16px; -moz-transform: translateY(7px) rotate(35deg); -ms-transform: translateY(7px) rotate(35deg); -webkit-transform: translateY(7px) rotate(35deg); transform: translateY(7px) rotate(35deg); }
.sp-header.header-open .header-navi-button .line-middle { opacity: 0; }
.sp-header.header-open .header-navi-button .line-bottom { top: 16px; -moz-transform: translateY(-7px) rotate(-35deg); -ms-transform: translateY(-7px) rotate(-35deg); -webkit-transform: translateY(-7px) rotate(-35deg); transform: translateY(-7px) rotate(-35deg); }
.sp-header.header-open .header-navi { -moz-animation-name: header-navi-open; -webkit-animation-name: header-navi-open; animation-name: header-navi-open; -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-delay: 0s; -webkit-animation-delay: 0s; animation-delay: 0s; -moz-animation-fill-mode: forwards; -webkit-animation-fill-mode: forwards; animation-fill-mode: forwards; }
.sp-header.header-open .animation { -moz-animation-name: header-navi-in; -webkit-animation-name: header-navi-in; animation-name: header-navi-in; -moz-animation-duration: 0.3s; -webkit-animation-duration: 0.3s; animation-duration: 0.3s; -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; }
.sp-header.header-open .animation01 { -moz-animation-delay: 0.4s; -webkit-animation-delay: 0.4s; animation-delay: 0.4s; }
.sp-header.header-open .animation02 { -moz-animation-delay: 0.5s; -webkit-animation-delay: 0.5s; animation-delay: 0.5s; }
.sp-header.header-open .animation03 { -moz-animation-delay: 0.6s; -webkit-animation-delay: 0.6s; animation-delay: 0.6s; }
.sp-header.header-open .animation04 { -moz-animation-delay: 0.7s; -webkit-animation-delay: 0.7s; animation-delay: 0.7s; }
.sp-header.header-open .animation05 { -moz-animation-delay: 0.8s; -webkit-animation-delay: 0.8s; animation-delay: 0.8s; }
.sp-header.header-open .animation06 { -moz-animation-delay: 0.9s; -webkit-animation-delay: 0.9s; animation-delay: 0.9s; }
.sp-header.header-open .animation07 { -moz-animation-delay: 1s; -webkit-animation-delay: 1s; animation-delay: 1s; }
.sp-header.header-open .animation08 { -moz-animation-delay: 1.1s; -webkit-animation-delay: 1.1s; animation-delay: 1.1s; }
.sp-header.header-open .animation08 { -moz-animation-delay: 1.2s; -webkit-animation-delay: 1.2s; animation-delay: 1.2s; }
.sp-header.header-open .animation09 { -moz-animation-delay: 1.3s; -webkit-animation-delay: 1.3s; animation-delay: 1.3s; }
.sp-header.header-open .animation10 { -moz-animation-delay: 1.4s; -webkit-animation-delay: 1.4s; animation-delay: 1.4s; }
.sp-header.header-open .animation11 { -moz-animation-delay: 1.5s; -webkit-animation-delay: 1.5s; animation-delay: 1.5s; }
.sp-header.header-open .animation12 { -moz-animation-delay: 1.6s; -webkit-animation-delay: 1.6s; animation-delay: 1.6s; }
.sp-header.header-open .animation13 { -moz-animation-delay: 1.7s; -webkit-animation-delay: 1.7s; animation-delay: 1.7s; }
.sp-header.header-open .animation14 { -moz-animation-delay: 1.8s; -webkit-animation-delay: 1.8s; animation-delay: 1.8s; }
.sp-header .animation { opacity: 0; }

.pc-header { display: none; }
.header-top { width: 100%; height: 50px; padding-top: 1px; background: rgba(255, 255, 255, 0.9); }
.header-logo { width: 75px; margin-top: 12px; margin-left: 4%; }
.header-logo img { width: 100%; }
.header-contact { width: auto; height: 50px; position: absolute; top: 0; right: 100px; }
.header-contact img { width: auto; height: 100%; }
.header-ebook { width: auto; height: 50px; position: absolute; top: 0; right: 50px; }
.header-ebook img { width: auto; height: 100%; }
.header-navi-button { width: 50px; height: 50px; padding-top: 11px; text-align: center; background: #fff; z-index: 11; position: absolute; top: 0; right: 0; -moz-transition: all 0.6s cubic-bezier(0.05, 0.05, 0.31, 0.97); -o-transition: all 0.6s cubic-bezier(0.05, 0.05, 0.31, 0.97); -webkit-transition: all 0.6s cubic-bezier(0.05, 0.05, 0.31, 0.97); transition: all 0.6s cubic-bezier(0.05, 0.05, 0.31, 0.97); }
.header-navi-button .line { width: 22px; height: 1px; margin: auto; background: #000; 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); }
.header-navi-button .line-middle { margin: 6px auto; }
.header-navi-button .line-text { margin-top: 6px; color: #000; font-size: 10px; font-family: cormorant-garamond, serif; font-weight: 400; text-align: center; display: block; -moz-transform: scale(0.75, 0.75); -ms-transform: scale(0.75, 0.75); -webkit-transform: scale(0.75, 0.75); transform: scale(0.75, 0.75); }

.header-global-items li ul.menu_second-level {position: absolute;top: 12vw;left: 0;width: 40vw;padding: 0;background: #000;-webkit-transition: all .2s ease;transition: all .2s ease;border:1px solid #ccc;border-width: 2px 0;}
.header-global-items li:hover ul.menu_second-level {visibility: visible;opacity: 1;}
.header-global-items li ul.menu_second-level > li {width: 100%;text-align: left;border: none;position: relative;margin-bottom: 10px;padding: 2% 4% 5% 12%;font-size: 3vw;border-bottom: 1px dotted #ccc;line-height: 1.4;}
.header-global-items li ul.menu_second-level > li a{text-align:left;margin:0;-webkit-justify-content: flex-start;justify-content: flex-start;}
.header-global-items li ul.menu_second-level > li:last-child{padding-bottom:0;border-bottom:none;margin-bottom:0;}
.header-global-items li ul.menu_second-level > li:before{content: '\f105';font-family: 'icon';font-size: 16px;position: absolute;top: -2px;left: 4%;font-weight:bold;}
.header-global-items li ul.menu_second-level > li a:hover { opacity: 1; -moz-transform: scale(0.96); -ms-transform: scale(0.96); -webkit-transform: scale(0.96); transform: scale(0.96);}
.header-global-items li ul.menu_second-level { visibility: hidden; opacity: 0; z-index: 1;}

.header-global-items li ul.menu_second-level02 {position: absolute;top: 12vw;left: 40vw;width: 40vw;padding: 0;background: #fff;-webkit-transition: all .2s ease;transition: all .2s ease;border:1px solid #ccc;border-width: 2px 0;}
.header-global-items li:hover ul.menu_second-level02 {visibility: visible;opacity: 1;}
.header-global-items li ul.menu_second-level02 > li {width: 100%;text-align: left;border: none;position: relative;margin-bottom: 10px;padding: 2% 4% 5% 12%;font-size: 3vw;border-bottom: 1px dotted #ccc;line-height: 1.4;}
.header-global-items li ul.menu_second-level02 > li a{text-align:left;margin:0;-webkit-justify-content: flex-start;justify-content: flex-start;}
.header-global-items li ul.menu_second-level02 > li:last-child{padding-bottom:0;border-bottom:none;margin-bottom:0;}
.header-global-items li ul.menu_second-level02 > li:before{content: '\f105';font-family: 'icon';font-size: 16px;position: absolute;top: -2px;left: 4%;font-weight:bold;}
.header-global-items li ul.menu_second-level02 > li a:hover { opacity: 1; -moz-transform: scale(0.96); -ms-transform: scale(0.96); -webkit-transform: scale(0.96); transform: scale(0.96);}
.header-global-items li ul.menu_second-level02 { visibility: hidden; opacity: 0; z-index: 1;}


.header-navi {width: 100%;height: 0;background: rgba(255,255, 255, 0.9);z-index: 10;overflow: hidden;position: fixed;top: 100vh;left: 0;}
.header-navi.header-closed { -moz-animation-name: header-navi-close; -webkit-animation-name: header-navi-close; animation-name: header-navi-close; -moz-animation-duration: 1.2s; -webkit-animation-duration: 1.2s; animation-duration: 1.2s; -moz-animation-timing-function: ease; -webkit-animation-timing-function: ease; animation-timing-function: ease; -moz-animation-delay: 0s; -webkit-animation-delay: 0s; animation-delay: 0s; -moz-animation-fill-mode: forwards; -webkit-animation-fill-mode: forwards; animation-fill-mode: forwards; }
.header-navi.header-closed .animation { opacity: 1; -moz-animation-name: header-navi-out; -webkit-animation-name: header-navi-out; animation-name: header-navi-out; -moz-animation-duration: 0.3s; -webkit-animation-duration: 0.3s; animation-duration: 0.3s; -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.header-closed .animation01 { -moz-animation-delay: 0s; -webkit-animation-delay: 0s; animation-delay: 0s; }
.header-navi.header-closed .animation02 { -moz-animation-delay: 0.1s; -webkit-animation-delay: 0.1s; animation-delay: 0.1s; }
.header-navi.header-closed .animation03 { -moz-animation-delay: 0.2s; -webkit-animation-delay: 0.2s; animation-delay: 0.2s; }
.header-navi.header-closed .animation04 { -moz-animation-delay: 0.3s; -webkit-animation-delay: 0.3s; animation-delay: 0.3s; }
.header-navi.header-closed .animation05 { -moz-animation-delay: 0.4s; -webkit-animation-delay: 0.4s; animation-delay: 0.4s; }
.header-navi.header-closed .animation06 { -moz-animation-delay: 0.5s; -webkit-animation-delay: 0.5s; animation-delay: 0.5s; }
.header-navi.header-closed .animation07 { -moz-animation-delay: 0.6s; -webkit-animation-delay: 0.6s; animation-delay: 0.6s; }
.header-navi.header-closed .animation08 { -moz-animation-delay: 0.7s; -webkit-animation-delay: 0.7s; animation-delay: 0.7s; }
.header-navi.header-closed .animation09 { -moz-animation-delay: 0.8s; -webkit-animation-delay: 0.8s; animation-delay: 0.8s; }
.header-navi.header-closed .animation10 { -moz-animation-delay: 0.9s; -webkit-animation-delay: 0.9s; animation-delay: 0.9s; }
.header-navi.header-closed .animation11 { -moz-animation-delay: 1s; -webkit-animation-delay: 1s; animation-delay: 1s; }
.header-navi.header-closed .animation12 { -moz-animation-delay: 1.1s; -webkit-animation-delay: 1.1s; animation-delay: 1.1s; }
.header-navi.header-closed .animation13 { -moz-animation-delay: 1.2s; -webkit-animation-delay: 1.2s; animation-delay: 1.2s; }

.header-navi-inner { width: 100%; height: 100%; position: absolute; overflow: auto; -webkit-overflow-scrolling: touch; }
.header-navi-scroll { width: 100%; padding: 60px 0 100px; margin: auto; overflow-y: auto; -webkit-overflow-scrolling: touch; }
.header-navi-logo { width: 75px; position: absolute; top: 12px; left: 4%; }
.header-navi-logo img { width: 100%; }
.header-navi-items { width: 80%; margin: auto; }
.header-navi-item { width: 100%; margin-bottom: 2vw; background: #fff; -moz-border-radius: 5px; -webkit-border-radius: 5px; border-radius: 5px; }
.header-navi-item.column01 { width: 100%; }
.header-navi-item .header-navi-item-text { padding: 8% 0 7% 14%; cursor: pointer; position: relative; 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; }
.header-navi-item .header-navi-item-text.accordion:after { content: "\f067"; font-size: 14px; font-family: 'icon'; position: absolute; top: 50%; right: 15px; -moz-transform: translateY(-50%); -ms-transform: translateY(-50%); -webkit-transform: translateY(-50%); transform: translateY(-50%); }
.header-navi-item .header-navi-item-text.accordion.open:after { content: "\f068"; }
.header-navi-item .header-navi-item-text .jp { margin-right: 5px; font-size: 4.47vw; font-family: yu-mincho-pr6, 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", HGS明朝E; font-weight: 400; letter-spacing: 2px; }
.header-navi-item .header-navi-item-text .en { color: #b89762; font-size: 3.16vw; font-family: cormorant-garamond, serif; font-weight: 400; letter-spacing: 1px; }
.header-navi-item .header-navi-item-text .arrow { font-size: 20px; position: absolute; top: 50%; right: 15px; -moz-transform: translateY(-50%); -ms-transform: translateY(-50%); -webkit-transform: translateY(-50%); transform: translateY(-50%); }
.header-navi-item .accordion-box { width: 94%; margin: auto; border-top: 2px solid #c39d59; display: none; }
.header-navi-item .accordion-items { padding: 2px 0 20px; display: block; }
.header-navi-item .accordion-items li { width: 100%; font-size: 3.42vw; font-family: yu-mincho-pr6, 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", HGS明朝E; font-weight: 400; border-bottom: 1px dotted; position: relative; }
.header-navi-item .accordion-items li:nth-child(even) { background: #f8f6f3; }
.header-navi-item .accordion-items a { padding: 6% 4% 5%; }
.header-navi-item .accordion-items .arrow { font-size: 14px; position: absolute; top: 50%; right: 15px; -moz-transform: translateY(-50%); -ms-transform: translateY(-50%); -webkit-transform: translateY(-50%); transform: translateY(-50%); }

.header-navi-bottom-items { width: 80%; margin: 0 auto 10px; }
.header-navi-bottom-items .header-navi-item-text {padding: 5% 2%;cursor: pointer;position: relative;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;}
.header-navi-bottom-items .header-navi-item-text:after,.header-navi-bottom-items .accordion-items li a:after{ content: '\f105'; font-size: 20px; font-family: 'icon'; position: absolute; top: 50%; right: 18px; -moz-transform: translateY(-50%); -ms-transform: translateY(-50%); -webkit-transform: translateY(-50%); transform: translateY(-50%); display: inline-block;}
.header-navi-bottom-items .header-navi-item-text.accordion:after {content: "\f069";font-size: 14px;font-family: 'icon';position: absolute;top: 50%;right: 15px;-moz-transform: translateY(-50%);-ms-transform: translateY(-50%);-webkit-transform: translateY(-50%);transform: translateY(-50%);}
.header-navi-bottom-items .header-navi-item-text.accordion.open:after { content: "\f06a"; }
.header-navi-bottom-items .header-navi-item-text .jp {margin-right: 5px;font-size: 3.8vw;font-family: yu-mincho-pr6, 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", HGS明朝E;font-weight: 400;letter-spacing: 0.05em;line-height: 1.3;width: 100%;}
.header-navi-bottom-items .header-navi-item-text .en {margin-top: 4px;color: #a5955f;font-size: 3.16vw;font-family: cormorant-garamond, serif;font-weight: 400;}
.header-navi-bottom-items .header-navi-item-text .arrow { font-size: 20px; position: absolute; top: 50%; right: 20px; -moz-transform: translateY(-50%); -ms-transform: translateY(-50%); -webkit-transform: translateY(-50%); transform: translateY(-50%); }
.header-navi-bottom-items .accordion-box {width: 100%;margin: auto;/* border-top: 1px solid #333; */display: none;}
.header-navi-bottom-items .accordion-items { padding: 10px 0; }
.header-navi-bottom-items .accordion-items li {width: 100%;margin-bottom: 12px;font-size: 3.95vw;font-family: yu-mincho-pr6, 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", HGS明朝E;font-weight: 400;position: relative;}
.header-navi-bottom-items .accordion-items a { padding: 5px 6px; color: #000; }
.header-navi-bottom-items .accordion-items .arrow { font-size: 14px; position: absolute; top: 50%; right: 15px; -moz-transform: translateY(-50%); -ms-transform: translateY(-50%); -webkit-transform: translateY(-50%); transform: translateY(-50%); }
.header-navi-bottom-item {width: 100%;color: #000;border-bottom: 1px dashed #636363;}
.header-navi-mini-items { width: 80%; margin: 0 auto 30px; 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-mini-items li { width: 47%; color: #fff; font-size: 3.42vw; border-bottom: 1px dotted; position: relative;}
.header-navi-mini-items li.header-navi-mini-image-item { margin-top: 6%; border: none; }
.header-navi-mini-items a { color: #fff; }
.header-navi-mini-items .jp { padding: 15% 2% 14%; display: block; }
.header-navi-mini-items .img { width: 100%; }
.header-navi-mini-items .arrow { font-size: 14px; position: absolute; top: 50%; right: 10px; -moz-transform: translateY(-50%); -ms-transform: translateY(-50%); -webkit-transform: translateY(-50%); transform: translateY(-50%); }
.header-navi-tel-items { width: 80%; margin: 0 auto 20px; }
.header-navi-tel-items li {width: 100%;padding: 15px 0;margin-bottom: 10px;font-family: yu-mincho-pr6, 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", HGS明朝E;font-weight: 400;text-align: center;border: 1px solid;}
.header-navi-tel-items li .header-navi-tel-number { background: url(../images/icon-tel.png) no-repeat center left; background-size: 12%; }
.header-navi-tel-number {padding-left: 12%;margin: 0 auto 5px;font-size: 6.58vw;letter-spacing: 2px;display: table;}
.header-navi-tel-text { font-size: 3.16vw; }
.header-navi-sub-items { margin-bottom: 20px; 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.2vw;font-family: cormorant-garamond, serif;font-weight: 400;letter-spacing: 1px;}
.header-navi-sub-items li:first-child:before { display: none; }
.header-navi-sub-items li:before { content: '|'; margin: 0 6px; }
.header-navi-sub-items a {display: inline-block;}
.header-navi-social-items { margin-bottom: 20px; }
.header-navi-mail {width: 80%;padding: 4% 0 3.8%;margin: auto;color: #fff;text-align: center;background: #A7955F;}
.header-navi-mail .en { margin-bottom: 6px; font-size: 3.16vw; font-family: cormorant-garamond, serif; font-weight: 400; letter-spacing: 2px; display: block; }
.header-navi-mail .jp { font-size: 3.95vw; font-family: yu-mincho-pr6, 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", HGS明朝E; font-weight: 400; display: block; }
.header-navi-mail .jp i { margin-left: 5px; }

.machine_header .header-navi-button {background: #275589;}
.machine_header .header-global-items {background: #fff;}
.machine_header .header-global-items a{color: #333;}

@-webkit-keyframes header-navi-open { 0% { top: 100vh; height: 0; }
  100% { top: 0; height: 100vh; } }
@keyframes header-navi-open { 0% { top: 100vh; height: 0; }
  100% { top: 0; height: 100vh; } }
@-webkit-keyframes header-navi-close { 0% { top: 0; height: 100vh; }
  37.5% { top: 0; height: 100vh; }
  100% { top: 0; height: 0; } }
@keyframes header-navi-close { 0% { top: 0; height: 100vh; }
  37.5% { top: 0; height: 100vh; }
  100% { top: 0; height: 0; } }
@-webkit-keyframes header-navi-in { 0% { opacity: 0; -moz-transform: translateY(15px); -ms-transform: translateY(15px); -webkit-transform: translateY(15px); transform: translateY(15px); }
  100% { opacity: 1; -moz-transform: translateY(0); -ms-transform: translateY(0); -webkit-transform: translateY(0); transform: translateY(0); } }
@keyframes header-navi-in { 0% { opacity: 0; -moz-transform: translateY(15px); -ms-transform: translateY(15px); -webkit-transform: translateY(15px); transform: translateY(15px); }
  100% { opacity: 1; -moz-transform: translateY(0); -ms-transform: translateY(0); -webkit-transform: translateY(0); transform: translateY(0); } }
@-webkit-keyframes header-navi-out { 0% { opacity: 1; -moz-transform: translateY(0); -ms-transform: translateY(0); -webkit-transform: translateY(0); transform: translateY(0); }
  100% { opacity: 0; -moz-transform: translateY(-15px); -ms-transform: translateY(-15px); -webkit-transform: translateY(-15px); transform: translateY(-15px); } }
@keyframes header-navi-out { 0% { opacity: 1; -moz-transform: translateY(0); -ms-transform: translateY(0); -webkit-transform: translateY(0); transform: translateY(0); }
  100% { opacity: 0; -moz-transform: translateY(-15px); -ms-transform: translateY(-15px); -webkit-transform: translateY(-15px); transform: translateY(-15px); } }

/* footer sp
----------------------------------------------- */
.footer { width: 100%; z-index: 1; position: relative; }
.footer-content { width: 90vw; padding: 12vw 0; margin: auto; position: relative; }
.footer-logo { width: 35vw; margin: 0 auto 5vw; position: relative; }
.footer-logo img { width: 100%; }
.footer-navi {width: 100%;}
.footer-navi-title { padding: 4.5vw 1vw 3.5vw;font-family: cormorant-garamond, serif; letter-spacing: 0.5vw; border-bottom: 1px solid #cbcbcc; position: relative; }
.footer-navi-title .en{ font-size: 5vw; }
.footer-navi-title .jp{ font-size: 3.16vw; color: #a5955f;margin-left: 3vw;}
.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: #232323; 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 .plus:after { content: ''; width: 1px; height: 100%; background: #232323; 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.68vw; border-bottom: 1px solid #cbcbcc; position: relative; }
.footer-navi-items li:after { content: '\f105'; font-family: 'icon'; position: absolute; top: 50%; right: 2.5vw; -moz-transform: translateY(-50%); -ms-transform: translateY(-50%); -webkit-transform: translateY(-50%); transform: translateY(-50%); }
.footer-navi-items a { padding: 4.5vw 1vw 3.5vw; }

.pagetop { width: 12vw; z-index: 1; position: absolute; top: 13vw; right: 0; }
.pagetop img { width: 100%; }
.copyright { padding: 3vw 0 2.5vw; color: #fff; font-size: 3.16vw; font-family: cormorant-garamond, serif; text-align: center; letter-spacing: 0.4vw; background: #767676; display: block; }

/* hero
----------------------------------------------- */
.hero { width: 100%; position: relative;margin: 50px 0 0; }
.hero-movie { width: 100%; position: relative; left: 50%; -moz-transform: translateX(-50%); -ms-transform: translateX(-50%); -webkit-transform: translateX(-50%); transform: translateX(-50%); }
.hero-movie img { width: 100%; }
.hero .sp{display: block;}
.hero .pc{display: none;}

.second-hero { height: 60vw; background: #fff;}
.second-hero-title { width: 100%;text-align: center; z-index: 1; position: absolute;top: 50%;left: 0;-moz-transform: translateY(-40%); -ms-transform: translateY(-40%);-webkit-transform: translateY(-40%);transform: translateY(-40%);}
.second-hero-title .en {margin-bottom: 1vw;color: #000;font-size: 10vw;line-height: 1.4;font-family: cormorant-garamond, serif;letter-spacing: 1vw; display: block;}
.second-hero-title .jp {font-size: 4vw;display: block;}

.next{padding:10vw 0; border-top: 1px solid #eaeaea;}
.next-text{display: block;margin: auto;text-align: center;margin-bottom: 1vw;color: #000;font-size: 4vw;line-height: 1.4;}
.next-title{text-align: center;margin:auto;}
.next-title .en{display: block;margin-bottom: 1vw;color: #000;font-size: 10vw;line-height: 1.4;}
.next-title .jp{display: block;font-size:3.5vw;}
/* second
----------------------------------------------- */
.second { z-index: 1; position: relative; }
.second-text { width: 90%; min-height: 60vw; padding: 8vw 0 12vw; margin: auto; }
.second-text p { margin-bottom: 4vw; font-size: 3.68vw; line-height: 1.8; }
.second-text p,center{text-align: center;}
.second-text .center_des{text-align: center;}

/* bread
----------------------------------------------- */
.breadcrumb { padding: 2vw 0 2vw; background: #eaeaea; z-index: 1; position: relative; }
.breadcrumb-items { width: 90vw; margin: 0 auto; font-size: 0; }
.breadcrumb-items li { font-size: 3.68vw; position: relative; display: inline-block; }
.breadcrumb-items li:after { content: "\f105"; margin: 0 2.5vw 0 1.5vw; font-weight: normal; font-family: 'icon'; display: inline-block; }
.breadcrumb-items li:last-child:after { display: none; }
.breadcrumb-items a { display: inline-block; }


@media screen and (min-width: 736px) {
/* common
----------------------------------------------- */
body { font-size: 16px; overflow-x: hidden;}

.sp { display: none; }
.pc { display: block; }
.inner { width: 960px; }

/* header
----------------------------------------------- */
.sp-header { display: none; }
.pc-header {width: 100%;height: 80px;background: #fff;-moz-box-shadow: 0 6px 15px -15px #555;-webkit-box-shadow: 0 6px 15px -15px #555;box-shadow: 0 6px 15px -15px #555;z-index: 10;position: fixed;top: 0;left: 0;display: block;}
.pc-header-navi {height: 100%;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;-webkit-align-items: center;align-items: center;width: 960px;margin: auto;}
.pc-header-logo { width: 140px; }
.pc-header-logo img{width: 100%; }
.pc-header-global-items {display: -webkit-box;display: -moz-box;display: -webkit-flex;display: box;display: flex;-webkit-justify-content: space-between;justify-content: space-between;-webkit-align-items: center;align-items: center;}
.pc-header-global-items>li {font-family: yu-mincho-pr6, 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", HGS明朝E;font-weight: 400;text-align: center;position: relative;width: 150px;}
.pc-header-global-items>li:hover:after, .pc-header-global-items li.current:after { height: 3px; }
.pc-header-global-items>li:before {content: '';width: 1px;height: 100%;background: #000;position: absolute;top: 0;left: 0;}
.pc-header-global-items>li:after { content: ''; width: calc(100% - 4px); height: 0; background: #ac8753; position: absolute; left: 50%; bottom: -10px; -moz-transform: translateX(-50%); -ms-transform: translateX(-50%); -webkit-transform: translateX(-50%); transform: translateX(-50%); -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); }
.pc-header-global-items a { height: 100%; padding: 2px 8px; }
.pc-header-global-items .small {margin-bottom: 4px;color: #ac8753;font-size: 10px;display: block;line-height: 1.2;}
.pc-header-global-items .big {color: #000;font-size: 15px;line-height: 1.2;display: block;font-family: cormorant-garamond, serif;}

.pc-header-global-items li ul.menu_second-level,.pc-header-global-items li ul.menu_second-level02 {position: absolute;top: 60px;left: 0;width: 220px;padding: 0;background: #fff;-webkit-transition: all .2s ease;transition: all .2s ease;border:1px solid #ccc;border-width: 2px 0;}
.pc-header-global-items li:hover ul.menu_second-level,.pc-header-global-items li:hover ul.menu_second-level02 {visibility: visible;opacity: 1;}
.pc-header-global-items li ul.menu_second-level > li,.pc-header-global-items li ul.menu_second-level02 > li {width: 100%;text-align: left;border: none;position: relative;padding: 12px 10px 16px  16px;font-size: 14px;border-bottom: 1px dotted #ccc;line-height: 1.4;}
.pc-header-global-items li ul.menu_second-level > li:last-child{border-bottom:none;}
.pc-header-global-items li ul.menu_second-level > li:before,.pc-header-global-items li ul.menu_second-level02 > li:before{content: '\f105';font-family: FontAwesome;font-size: 16px;position: absolute;top: 10px;left: 10px;font-weight:bold;}
.pc-header-global-items li ul.menu_second-level > li a,.pc-header-global-items li ul.menu_second-level02 > li a{color:#333;}
.pc-header-global-items li ul.menu_second-level > li a:hover, .pc-header-global-items li ul.menu_second-level02 > li a:hover { opacity: 1; -moz-transform: scale(0.96); -ms-transform: scale(0.96); -webkit-transform: scale(0.96); transform: scale(0.96);}
.pc-header-global-items li ul.menu_second-level,.pc-header-global-items li ul.menu_second-level02 { visibility: hidden; opacity: 0; z-index: 1;}
ul.menu_second-level02 {left: 179%!important;width: 240px!important;border-left: 1px solid #ccc!important;}



.machine_container { padding-top: 120px; }
.machine_header .pc-header{background: #fff; height: 120px;}
.machine_header .pc-header h1{font-size: 10px;width: 60%;}
.machine_header .pc-header .pc-navi-menu{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;-webkit-align-items: center;align-items: center;width: 900px;margin-bottom: 10px;}
.machine_header .pc-header-global-items{margin-left: 10px;height: 45px;}
.machine_header .pc-header-global-items li:after{background: #a7bfda;}
.machine_header .pc-header-global-items li{height: 100%;width: 18%;}
.machine_header .pc-header-global-items li a{display: table;width: 100%;}
.machine_header .pc-header-global-items .big{color: #333;font-size: 13px;display:table-cell;vertical-align:middle;text-align:center;}
.machine_header .pc-header-ttl{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; -webkit-align-items: center;align-items: center;width: 900px;}
.machine_header .pc-header-ttl .pc-header-ttl-p {font-size: 10px;width: 60%;}
.machine_header .social-items ul{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; -webkit-align-items: center;align-items: center;}
.machine_header .social-items img{width: 100%;}

.corporate_header .pc-header-ttl{width: 960px;margin: 0 auto -12px;padding: 10px 0 0;}
.corporate_header h1{font-size: 10px;color: #fff;}

.corporate .t-map{width: 100%;height: 300px; margin: 10px auto 20px;}

/* hero
----------------------------------------------- */
.hero {min-width: 960px;position: relative;margin: 80px 0 0;}
.hero .hero-img { width: 2000px; min-width: 2000px; }
.hero .sp{display: none;}
.hero .pc{display: block;}

.second-hero { height: 340px;width: 960px;margin: auto;}
.second-hero-title { -moz-transform: translateY(-30%); -ms-transform: translateY(-30%); -webkit-transform: translateY(-30%); transform: translateY(-30%);text-align: right;}
.second-hero-title .en { margin-bottom: 0; font-size: 60px; letter-spacing: 5px; }
.second-hero-title .jp { font-size: 20px; }

.next { padding: 100px 0;border: none;}
.next a { display: block;width: 960px;margin: auto;position: relative; }
.next-text { margin-bottom: 0; font-size: 26px; position: absolute; left: 0;  top: 50%;-moz-transform: translateY(-30%); -ms-transform: translateY(-30%); -webkit-transform: translateY(-30%); transform: translateY(-30%);}
.next-title { text-align: center;margin: auto;}
.next-title .en { margin-bottom: 10px; font-size: 60px;}
.next-title .jp {display: block;font-size: 20px; }


/* footer pc ----------------------------------------------- */
.footer-logo {width: 10%;margin: 0 10% 0 0;}
.footer-navi{width: 80%;}
.footer-content { width: 900px; padding: 60px 0; display: -webkit-box; display: -webkit-flex; display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; -webkit-align-items: flex-start; align-items: flex-start; }
.footer-navi-box {margin-right: auto;width: calc(100% / 5);}
.pc-footer-navi-inner{display: -webkit-box;display: -webkit-flex;display: flex;-webkit-flex-wrap: wrap;flex-wrap: wrap;-webkit-justify-content: space-between;justify-content: space-between;width: 100%;margin-right: auto;}
.footer-navi-box:first-child{width: 12%;}
.footer-navi-box:last-child {width: calc(100% / 5);margin: 0;}
.footer-navi-title {width: 100%;padding: 0;margin-bottom: 10px;font-size: 16px;letter-spacing: 1px;border-bottom: none;line-height: 1.2;}
.footer-navi-title .jp{display: block;font-size: 12px;margin-left: 0;font-family: yu-mincho-pr6, 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", HGS明朝E;}
.footer-navi-title .en{display: block;font-size: 16px;line-height: 1.4;}
.pc-footer-navi-items {width: 100%;}
.pc-footer-navi-items li {margin-bottom: 8px;font-size: 12px;line-height: 1.4;}
.copyright { padding: 10px 0 8px; font-size: 14px; letter-spacing: 2px; }
.pagetop { width: 55px; top: -20px; right: 0; }


/* second
----------------------------------------------- */
.second-text { width: 960px; min-height: 400px; padding: 100px 0 20px; }
.second-text p { margin-bottom: 30px; font-size: 14px; }

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


}