@charset "UTF-8";
/*@import url('https://fonts.googleapis.com/css2?family=EB+Garamond:ital,wght@0,400;0,500;0,600;0,700;1,400;1,500&display=swap');*/
@import url('https://fonts.googleapis.com/css2?family=Jost:wght@100;200;300;400;500;600&display=swap');
/*reset*/
*:where(:not(html,iframe,canvas,img,svg,video,audio):not(svg *,symbol *)){all:unset;display:revert}*,*::before,*::after{box-sizing:border-box}a,button{cursor:revert}ol,ul,menu{list-style:none}img{display: block;}table{border-collapse:collapse}input,textarea{-webkit-user-select:auto}textarea{white-space:revert}meter{-webkit-appearance:revert;appearance:revert}:where(pre){all:revert}::placeholder{color:unset}::marker{content:initial}:where([hidden]){display:none}:where([contenteditable]:not([contenteditable="false"])){-moz-user-modify:read-write;-webkit-user-modify:read-write;overflow-wrap:break-word;-webkit-line-break:after-white-space;-webkit-user-select:auto}:where([draggable="true"]){-webkit-user-drag:element}:where(dialog:modal){all:revert}
/*reset end*/
:root {
  --basic-01: #3c8260;
  --basic-02: #c9aa82;
  --basic-03: #c0a584;
}
body {font-size: 100%;font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";line-height: 1.5;overflow-x: hidden;position: relative;-webkit-font-smoothing: antialiased;-moz-osx-font-smoothing: grayscale;font-feature-settings: "palt";}
img {width: 100%;height: auto;display: block;}
body,a {color: #444;}
a { display: block; text-decoration: none; }
ul {list-style: none; }
h1,h2,h3,h4,div,p,ul,li,a,span,p,th,td {font-weight: normal;box-sizing: border-box;}
input:focus {outline: none;}
iframe {border: none;}
select {outline: none;}
.btn { transition: 0.4s; }
.pc { display: block;}
.sp { display: none;}
.gothic { font-family: "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif; }
.mincho {font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";line-height: 1.5;overflow-x: hidden;position: relative;-webkit-font-smoothing: antialiased;-moz-osx-font-smoothing: grayscale;font-feature-settings: "palt";}
.play { font-family: 'Play', sans-serif; }
.garamond {font-family: 'EB Garamond', serif;}
.jost {font-family: 'Jost', sans-serif;}
.object-fit {object-fit: cover;font-family: 'object-fit: cover;'}
.observe {opacity: 0;}
.observe.on {opacity: 1;transition-delay: 0.2s;transition-duration: 0.7s;}
.caption01 {color: #fff;font-size: 62.5%;line-height: 1.15;text-align: center;padding: 0.3em 0.5em 0.2em;background: rgba(0,0,0,0.5);position: absolute;bottom: 0;z-index: 1000;}
.caption01-Left {left: 0;}
.caption01-Right {right: 0;}
.caption01.fix01 {color: #333;background: rgba(255,255,255,0.75);}
.caption01.fix02 {text-align: right;background: transparent;opacity: 0.9;}
.caption01.fix03 {color: #333;background: transparent;}
.caption01.fix04 {font-weight: 600;text-shadow: 0 0 5px #000,0 0 5px #000,0 0 5px #000,0 0 5px #000,0 0 5px #000;background: transparent;}
.caption01.fix05 {color: #333;text-align: left;padding: 0;margin-top: 1em;background: transparent;position: static;}
.grad01 {background: -o-linear-gradient(to bottom, #71635d 52%, #262628 100%);background: linear-gradient(to bottom, #71635d 52%, #262628 100%);-webkit-background-clip: text;-webkit-text-fill-color: transparent;}
.grad02 {background: -o-linear-gradient(-50deg, #cdbaa1, #a78c6a);background: linear-gradient(-50deg, #cdbaa1, #a78c6a);-webkit-background-clip: text;-webkit-text-fill-color: transparent;}
.grad03 {background: linear-gradient(to right,#262628,#5f4f48);}
.mw1700 { width: 90%; max-width: 1700px; margin: auto; }
.mw1600 { width: 90%; max-width: 1600px; margin: auto; }
.mw1500 { width: 90%; max-width: 1500px; margin: auto; }
.mw1400 { width: 90%; max-width: 1400px; margin: auto; }
.mw1300 { width: 90%; max-width: 1300px; margin: auto; }
.mw1200 { width: 90%; max-width: 1200px; margin: auto; }
.mw1100 { width: 90%; max-width: 1100px; margin: auto; }
.mw1000 { width: 90%; max-width: 1000px; margin: auto; }
.mw900   { width: 90%; max-width:  900px; margin: auto; }
.mw800   { width: 90%; max-width:  800px; margin: auto; }
.mw700   { width: 90%; max-width:  700px; margin: auto; }
.mw600   { width: 90%; max-width:  600px; margin: auto; }
.mw500   { width: 90%; max-width:  500px; margin: auto; }
.loader-wrap {position: fixed;display: flex;align-items: center;justify-content: center;width: 100%;height: 100%;background: #fff;z-index: 10000;}
.loader,
.loader:after {border-radius: 50%;width: 10em;height: 10em;}
.loader {margin: 60px auto;font-size: 10px;position: relative;text-indent: -9999em;border-top: 1.1em solid rgba(224,224,224, 0.2);border-right: 1.1em solid rgba(224,224,224, 0.2);border-bottom: 1.1em solid rgba(224,224,224, 0.2);border-left: 1.1em solid #e0e0e0;-webkit-transform: translateZ(0);-ms-transform: translateZ(0);transform: translateZ(0);-webkit-animation: load8 1.1s infinite linear;animation: load8 1.1s infinite linear;}
@-webkit-keyframes load8 {0% {-webkit-transform: rotate(0deg);transform: rotate(0deg);}100% {-webkit-transform: rotate(360deg);transform: rotate(360deg);}}
@keyframes load8 {0% {-webkit-transform: rotate(0deg);transform: rotate(0deg);}100% {-webkit-transform: rotate(360deg);transform: rotate(360deg);}}

/* ------------------------------------------------------------------- */
header {background: #fff;position: sticky;top: 0;z-index: 9999;}
header nav:nth-child(1) {display: flex;flex-wrap: wrap;justify-content: space-between;letter-spacing: 0.1em;position: relative;}
header nav:nth-child(1) h1 {padding: 0 0 0 1em;}
header nav:nth-child(1) h1 a {display: block;}
header nav:nth-child(1) h1 a span {display: inline-block;color: #111;font-size: 125%; padding: 0.5em 0 0;}
header nav:nth-child(1) h1 a span::before {display: inline-block;content: '';width: 7.5em;height: 3.5em;margin-right: 0.75em; vertical-align: middle;background: url("../img/common/logo01_pc.svg") no-repeat center / contain;}
header nav:nth-child(1) ul {text-align: right;letter-spacing: -0.4em;}
header nav:nth-child(1) ul li {display: inline-block;height: 100%;vertical-align: bottom;}
header nav:nth-child(1) ul li:nth-child(1) {height: 50%;}
header nav:nth-child(1) ul li a {line-height: 1.5;letter-spacing: 0;}
header nav:nth-child(1) ul li:nth-child(1) {text-align: left;margin-right: 2em;}
header nav:nth-child(1) ul li:nth-child(1) a {line-height: 4;}
header nav:nth-child(1) ul li:nth-child(1) a:nth-child(2) {font-size: 93.75%; position: relative;}
header nav:nth-child(1) ul li:nth-last-child(2),
header nav:nth-child(1) ul li:nth-last-child(1) {width: 9em;}
header nav:nth-child(1) ul li:nth-last-child(2) a,
header nav:nth-child(1) ul li:nth-last-child(1) a {color:#fff;text-align: center;position: relative;}
header nav:nth-child(1) ul li:nth-last-child(1) a {background: var(--basic-02);}
header nav:nth-child(1) ul li:nth-last-child(2) a {background: #958f82;}
header nav:nth-child(1) ul li:nth-last-child(1) a span small,
header nav:nth-child(1) ul li:nth-last-child(2) a span small {font-size: 62.5%;font-family: 'Jost', sans-serif;margin-top: 0.5em;}
header nav:nth-child(1) ul li:nth-last-child(2) {display: none;}
header nav:nth-child(2) {}
header nav:nth-child(2) ul {display: flex;flex-wrap: wrap;justify-content: center;}
header nav:nth-child(2) ul li {}
header nav:nth-child(2) ul li a {display: block;font-size: 93.75%;letter-spacing: 0.05em;text-align: center;padding: 0.25em 0;position: relative;}
header nav:nth-child(2) ul li a:after {display: block;content: '';width: 0;height: 100%;margin: 0 auto;background:#f0f0f0;position: absolute;left: 0;bottom: 0;z-index: -1;opacity: 0;transition: 0.4s;}
header nav:nth-child(2) ul li a span {display: block;padding: 0 1.5em; position: relative;z-index: 100;transition: 0.4s;}
header nav:nth-child(2) ul li a span small {display: block;color: #999; font-size: 62.5%;font-family: 'Jost', sans-serif;}
.btn-style-01 {display: block;color: #fff;font-size: 125%; text-align: center;letter-spacing: 0.1em;width: 90%; max-width: 500px;margin: 4em auto;padding: 1em 0;background: var(--basic-02);}
.btn-style-01 small {display: block;font-size: 75%; font-family: 'Jost', sans-serif;line-height: 1;margin-top: 0.25em;}
.block-caption-01 {padding: 1em 0 2em;}
.block-caption-01 ul {}
.block-caption-01 ul li {font-size: 62.5%;}
.block-btn01 a {background: #958f82;}
.block-btn03 {display: flex;flex-wrap: wrap;justify-content: center;}
.block-btn03 a {max-width: 400px;margin: 4em 1em;}
.block-btn03 a:nth-child(1) {background: #958f82;}
.bnr01 {width: 90%;max-width: 800px;margin: 4em auto;}
body:not(#index) #Main > .container {padding: 5em 0;}
#achievements {padding: 4em 0;background: #f2f2f2;}
#achievements > div > figure:nth-child(1) {width: 80%;max-width: 700px;margin: 0 auto 2em;}
#achievements > div > a {display: block;}
footer #topBtn {display: none !important;content: '';width: 3.5em;height: 3.5em;border-radius: 50%;background: rgba(0,0,0,0.5);position: fixed;right: 0.9em;bottom: 1em;z-index: 1000;}
footer #topBtn::after {display: block;content: '';width: 1.25em;height: 1.25em;border-top: 1px solid #fff;border-right: 1px solid #fff;position: absolute;top: 58%;left: 50%;transform: translate(-50%,-50%) rotate(-45deg);}
footer {background: #100c3d;}
footer .container p,
footer .container a {color: #fff;}
footer .container {display: flex;flex-wrap: wrap;justify-content: space-between;position: relative;}
footer .container > div {padding: 5em 0;width: 50%;box-sizing: border-box;}
footer .container .left {padding-right: 5em;}
footer .container .left > a {display: block;max-width: 272px;}
footer .container .left > a img {filter: brightness(0) invert(1);}
footer .container .left p:nth-of-type(1) {font-size: 93.75%;margin-top: 1em;}
footer .container .left ul {display: flex;flex-wrap: wrap;justify-content: flex-start;align-items: center;margin-top: 2em;}
footer .container .left ul li {width: 3em;height: 3em;}
footer .container .left ul li + li {margin-left: 0.7em;}
footer .container .left ul li a {display: block;height: 100%;border: 1px solid #fff;border-radius: 50%;position: relative;}
footer .container .left ul li a img {width: 1em;position: absolute;top: 50%;left: 50%;z-index: 1;transform: translate(-50%,-50%);}
footer .container .left ul li.insta a img {width: 1.1em;}
footer .container .left ul li.x a img {width: 1.1em;}
footer .container .left ul li.fb a img {width: 0.7em;}
footer .container .left .copyright {font-size: 75%; font-family: 'Jost', sans-serif;margin-top: 3em;}
footer .container .right {padding-left: 5em; border-left: 1px solid #3e3c52;}
footer .container .right p:nth-child(1) {font-size: 93.75%;}
footer .container .right p:nth-child(2) a {font-size: 300%;line-height: 1;letter-spacing: 0.05em;}
footer .container .right p:nth-child(2) a::before {display: inline-block;content: '';width: 1.1em;height: 0.65em;margin-right: 0.2em; background: url("../img/common/icon_13.svg")no-repeat bottom / contain;}
footer .container .right p:nth-child(3) {font-size: 87.5%; margin-top: 1em;}
footer .container .right ul {display: flex;flex-wrap: wrap;justify-content: space-between;margin-top: 2em;max-width: 450px;}
footer .container .right ul li {width: 49%;}
footer .container .right ul li a {display: block;color: #100c3d; text-align: center;padding: 1em 0;background: #e7e6ee;}
footer .container .right ul li a small {display: block;font-size: 70%;font-family: 'Jost', sans-serif;}
/* --------------------------------------------------- test*/
body.test #Main {padding-top: 2em;}
body.test .rmbWrap {margin-bottom: 2em; position: relative;}
body.test .rmbWrap .rmb {color: #fff;padding: 0 0.25em;background: rgba(0,0,0,0.7); position: absolute;right: 0;bottom: 100%;cursor: pointer;z-index: 1000;}
body.test .rmbWrap .rmb span:nth-child(2) {opacity: 0.3;}
body.test .rmbWrap.show .rmb span:nth-child(1) {opacity: 1;}
body.test .rmbWrap.show .rmb span:nth-child(2) {opacity: 0.3;}
body.test .rmbWrap.hide .rmb span:nth-child(1) {opacity: 0.3;}
body.test .rmbWrap.hide .rmb span:nth-child(2) {opacity: 1;}
body.test .rmbWrap.hide {padding: 0 !important;border-bottom: 1px solid #aaa;}
body.test .rmbWrap.hide .rmcnt p,
body.test .rmbWrap.hide .rmcnt img,
body.test .rmbWrap.hide .rmcnt {font-size: 0 !important;height: 0 !important;padding: 0 !important;margin: 0 auto !important;}
body.test .cmbWrap {margin-bottom: 2em; position: relative;}
body.test .cmbWrap .cmb {color: #fff;padding: 0 0.25em;background: rgba(0,0,0,0.7); position: absolute;right: 5em;bottom: 100%;cursor: pointer;z-index: 1000;}
body.test .cmbWrap .cmb span:nth-child(2) {opacity: 0.3;}
body.test .cmbWrap.two .cmb span:nth-child(1) {opacity: 1;}
body.test .cmbWrap.two .cmb span:nth-child(2) {opacity: 1;}
body.test .cmbWrap.two .cmb span:nth-child(3) {opacity: 0.3;}
body.test .cmbWrap.three .cmb span:nth-child(1) {opacity: 1;}
body.test .cmbWrap.three .cmb span:nth-child(2) {opacity: 0.3;}
body.test .cmbWrap.three .cmb span:nth-child(3) {opacity: 1;}
body.test .cmbWrap.four .cmb span:nth-child(1) {opacity: 0.3;}
body.test .cmbWrap.four .cmb span:nth-child(2) {opacity: 1;}
body.test .cmbWrap.four .cmb span:nth-child(3) {opacity: 1;}
/* --------------------------------------------------- test END */
@media only screen and (min-width: 768px) and (max-width: 1200px) {
  header nav:nth-child(1) ul li:nth-last-child(2) a,
  header nav:nth-child(1) ul li:nth-last-child(1) a {padding: 0 1.5em;}
  header nav:nth-child(2) ul li a {padding: 0.75em 0;}
  header nav:nth-child(2) ul li a span {padding: 0 1.5em;}
  header nav:nth-child(2) ul li + li a:before {display: block;content: '';width: 1px;height: 1em;background: #fff;opacity: 0.4;position: absolute;top: 50%;left: 0;transform: translateY(-50%);z-index: 1;}
}
@media only screen and (max-width: 1400px) {
  header nav:nth-child(2) ul li a {font-size: 87.5%;}
  header nav:nth-child(1) ul li:nth-child(1) a {line-height: 3;}
  header nav:nth-child(2) ul li a span {padding: 0 1em;}
  header nav:nth-child(1) ul li:nth-last-child(2),
  header nav:nth-child(1) ul li:nth-last-child(1) {width: 11em;height: 50%;}
  header nav:nth-child(1) ul li:nth-last-child(2) a span br,
  header nav:nth-child(1) ul li:nth-last-child(2) a span small,
  header nav:nth-child(1) ul li:nth-last-child(1) a span br,
  header nav:nth-child(1) ul li:nth-last-child(1) a span small {display: none;}
}
@media only screen and (max-width: 1100px) {
  header nav:nth-child(1) ul {font-size: 1.4vw;}
  footer .container > div {padding: 3em 0;}
  footer .container .left {padding-right: 2em;}
  footer .container .right {padding-left: 2em;}
  footer .container .right p:nth-child(2) a {font-size: 200%;}
}
@media only screen and (max-width: 900px) {
  header nav:nth-child(1) h1 a span {font-size: 87.5%;padding: 0.5em 0;}
  header nav:nth-child(2) ul li a span {padding: 0 0.5em;}
}
@media only screen and (min-width: 768px) {
  .btn:hover {opacity: 0.7;transition: 0.4s;}
  header nav:nth-child(1) ul {display: flex;padding: 0;position: absolute;top: 0;right: 0;bottom: 0;}
  header nav:nth-child(1) ul li:nth-child(1) {display: flex;flex-wrap: wrap;justify-content: space-between;}
  header nav:nth-child(1) ul li:nth-child(1) a:last-child {margin-left: 1.5em;}
  header nav:nth-child(1) ul li:nth-last-child(2) a,
  header nav:nth-child(1) ul li:nth-last-child(1) a {display: block;height: 100%;}
  header nav:nth-child(1) ul li:nth-last-child(2) a > span,
  header nav:nth-child(1) ul li:nth-last-child(1) a > span {line-height: 1.25;white-space: nowrap;position: absolute;top: 50%;left: 50%;transform: translate(-50%,-50%);}
  header nav:nth-child(1) ul li:nth-child(1) a:nth-child(3) span:before,
  header nav:nth-child(1) ul li:nth-child(1) a:nth-child(2) span:before {display: inline-block;content: '';width: 1.5em;height: 1px;margin-right: 0.75em;background: #9a9a9a;vertical-align: super;}
  header nav:nth-child(1) ul li a span small {display: block;}
  header nav:nth-child(2) ul li:last-child {display: none;}
	a[href*="tel:"] {pointer-events: none;cursor: default;text-decoration: none;}
  header nav:nth-child(2) ul li a:hover:after {width: 100%; opacity: 1;transition: 0.4s;}
  header nav:nth-child(2) ul li + li a span:before {display: none; content: '';width: 1px;height: 60%;background: rgba(255,255,255,0.8);position: absolute;top: 50%;left: 0;transform: translateY(-50%);z-index: 1;}
}
@media only screen and (max-width: 767px) {
  .pc { display: none;}
  .sp { display: block;}
  br.sp { line-height: 0; }
  .scroller {overflow-x: scroll;position: relative;}
  .scroller:before {content: "";display: block;transition: opacity cubic-bezier(0.445, 0.05, 0.55, 0.95) 500ms;position: absolute;top: 0;left: 0;right: 0;bottom: 0;background: url("../img/common/common_swipe.png")no-repeat 50% 50%;background-size: 35% auto;z-index: 2;}
  .scroller:after {content: "";display: block;transition: opacity cubic-bezier(0.445, 0.05, 0.55, 0.95) 500ms;position: absolute;top: 0;left: 0;bottom: 0;background-color: rgba(0, 0, 0, 0.65);width: 200%;padding: 3%;z-index: 1;}
  .scroller.on:before,
  .scroller.on:after {opacity: 0;transition: 0.4s;}
  .scroller img {width: 200%;opacity: 0.5;transition: opacity cubic-bezier(0.445, 0.05, 0.55, 0.95) 100ms;}
  .scroller.on img {opacity: 1;}
  body {font-size: 4vw;}
  header {}
  header nav:nth-child(1) {margin-bottom: 0;}
  header nav:nth-child(1) h1 {width:100%;padding: 0.5em;}
  header nav:nth-child(1) h1 a {width: 100%; background-position: center;position: relative;}
  header nav:nth-child(1) h1 a span {font-size: 100%;line-height: 1.25;padding: 0.25em 0 0 8em;}
  header nav:nth-child(1) h1 a span::before {width: 7em;height: 3em;position: absolute;top: 0;left: 0;}
  header nav:nth-child(1) div {position: fixed;left: 0;right: 0;bottom: 0;}
  header nav:nth-child(1) div ul {display: flex;flex-wrap: wrap;justify-content: space-between;align-items: end;font-size: 100%;width: 100%;background: url(../img/common/bg02.webp) no-repeat center / cover;transition: 0.8s ease;}
  header nav #btnNavView2 {text-align: center;width: 20%;height: 3em;border-radius: 0 1em 0 0;background: #000;position: absolute;bottom: 100%;opacity: 0.8;}
  header nav #btnNavView2 span {display: block;color: #fff;font-size: 125%;line-height: 2.5;transform: rotate(0deg) scale(2,1);}
  header nav:nth-child(1) div.close ul {margin-bottom: -20%;transition: 0.8s ease;}
  header nav div.close #btnNavView2 span {transform: rotate(180deg) scale(2,1);}
  header nav:nth-child(1) ul li {width: 25%;}
  header nav:nth-child(1) ul li:not(:first-child) {width: 50%;}
  header nav:nth-child(1) ul li:nth-child(1) {display: flex;flex-wrap: wrap;justify-content: space-between;width: 50%;margin-right: 0;}
  header nav:nth-child(1) ul li a {font-size: 75% !important;line-height: 1 !important;text-align: center;white-space: nowrap;padding: 4.578em 0 1em !important;}
  header nav:nth-child(1) ul li:nth-child(1) a {color: #fff;width: 50%;position: relative;}
  header nav:nth-child(1) ul li a > span:last-child {display: block;position: relative;}
  header nav:nth-child(1) ul li a > span:last-child:before {display: block;content: '';width: 4em;height: 3em;padding: 0 !important;position: absolute;left: 50%;bottom: calc(100% + 0.5em);transform: translateX(-50%);}
  header nav:nth-child(1) ul li a > span span {display: none;}
  header nav:nth-child(1) ul li:nth-child(1) a:nth-child(1) span:last-child:before {background: url("../img/common/icon_01.svg") no-repeat 50%;background-size: contain;}
  header nav:nth-child(1) ul li:nth-child(1) a:nth-child(2) span:last-child:before {background: url("../img/common/icon_02.svg") no-repeat 50%;background-size: contain;}
  header nav:nth-child(1) ul li:nth-child(2) a span:last-child:before {background: url("../img/common/icon_03.svg") no-repeat 50%;background-size: contain;}
  header nav:nth-child(1) ul li:nth-child(3) a span:last-child:before {background: url("../img/common/icon_04.svg") no-repeat 50%;background-size: contain;}
  header nav:nth-child(1) ul li:nth-last-child(2) a {margin-left: 0;}
  header nav:nth-child(1) ul li:nth-child(1) a:nth-child(1):after,
  header nav:nth-child(1) ul li:nth-child(1) a:nth-child(1):before {display: block;content: '';width: 1px;height: 70%;background: #fff;opacity: 0.4;position: absolute;top: 50%;transform: translateY(-50%);z-index: 1;}
  header nav:nth-child(1) ul li:nth-child(1) a:nth-child(1):after {right: 0;}
  header nav:nth-child(1) ul li:nth-child(1) a:nth-child(1):before {display: none;left: 0;}
	header #btnNavView {display: block;width: 16vw;margin: auto;position: absolute;top: 0;right: 0;bottom: 0;z-index: 9999;}
	header #btnNavView a {display: block;letter-spacing: 0;width: 100%;height: 100%;margin: 0 auto;box-sizing: border-box;position: absolute;top: 50%;left: 50%;transform: translate(-50%,-50%);}
	header #btnNavView .icon01 {display: none;position: absolute;top: 0.2em;right: 0.4em;z-index: 100;width: 1.35em;height: 1.35em;background: #ccc;border-radius: 50%;}
	header #btnNavView .icon01 span {color: #fff;height: 1.35em;position: absolute;top: 51%;left: 50%;-webkit-transform: translate(-50%, -50%);transform: translate(-50%, -50%);}
  header #panel-btn-icon {pointer-events: all;position: absolute;display: block;top: 40%;left: 0;right: 0;width: 2em;height: 1px;margin: -1px auto;background: #333;transition: .2s;}
	header #panel-btn-icon:before,
	header #panel-btn-icon:after {display: block;content: "";position: absolute;top: 44%;width: 100%;height: 1px;background: #333;}
	header #panel-btn-icon:before {margin-top: -8px;}
	header #panel-btn-icon:after {margin-top: 8px;}	
	header #panel-btn .close {background: transparent;}
	header #panel-btn .close:before,
	header #panel-btn .close:after {margin-top: -1px;}
	header #panel-btn .close:before {-webkit-transform: rotate(-45deg);transform: rotate(-45deg);}	
	header #panel-btn .close:after {-webkit-transform: rotate(-135deg);transform: rotate(-135deg);}
  header #panel-btn .sp01 {display: block;font-size: 75%;text-align: center;position: absolute;left: 0;right: 0;bottom: 0.75em;z-index: 100;}
  header #panel-btn .sp01.fix02 {opacity: 0;}
  header .close #panel-btn .sp01.fix01 {opacity: 0;}
  header .close #panel-btn .sp01.fix02 {opacity: 1;}
  header nav:nth-child(2) {display: none;background: url(../img/common/bg02.webp) no-repeat center / cover;position: fixed;top: 3.85em;left: 0;right: 0;}
  header nav:nth-child(2) ul li {text-align: center;width: 50%;}
  header nav:nth-child(2) ul li:first-child {width: 100%;}
  header nav:nth-child(2) ul li a {color: #fff;font-size: 100%; line-height: 2.5;border-bottom: 1px solid rgba(255,255,255,0.2);}
  header nav:nth-child(2) ul li a:after {display: none;}
  header nav:nth-child(2) ul li:nth-child(odd) a {border-left: 1px solid rgba(255,255,255,0.2);}
  header nav:nth-child(2) ul li:first-child a {border-left: none;border-bottom: 1px solid rgba(255,255,255,0.2);}
  header nav:nth-child(2) ul li a span small {display: none;}
  .btn-style-01 {margin: 2em auto;padding: 0.75em 0;}
  .block-caption-01 {padding: 1em 0 2em;}
  .block-btn02 a,
  .block-btn03 a {max-width: 100%;margin: 0.5em auto;}
  .bnr01 {margin: 0 auto 2em;}
  body:not(#index) #Main > .container {padding: 3em 0;}
  #achievements {padding: 2em 0;}
  #achievements > div > figure:nth-child(1) {margin-bottom: 1em;}
  footer #topBtn {bottom: 8em;transition: 0.8s;}
  body.close footer #topBtn {bottom: 3em;transition: 0.8s;}
  footer .container {text-align: center;flex-direction: column-reverse;}
  footer .container > div {width: 100%;}
  footer .container .right {padding: 2.5em 0 1.5em;border-left: none;border-bottom: 1px solid #4f4d79;}
  footer .container .right p:nth-child(2) a {font-size: 250%;letter-spacing: 0;}
  footer .container .right p:nth-child(3) {margin-top: 0.5em;}
  footer .container .right ul {margin: 0.5em auto 0;max-width: 90%;}
  footer .container .right ul li {width: 100%;}  
  footer .container .right ul li a {font-size: 112.5%;padding: 0.5em 0;}
  footer .container .left {padding: 1.5em 0 0.5em;}
  footer .container .left > a {max-width: 80%;margin: 0 auto;}
  footer .container .left ul {justify-content: center;margin: 1em auto 0;max-width: 14em;}
  footer .container .left .copyright {margin-top: 2em;padding-bottom: 1em;}
/* --------------------------------------------------- test */
  body.test .cmbWrap .cmb {display: none;}
/* --------------------------------------------------- test END */
}
@media (orientation: landscape) and (max-width: 767px){
  body {font-size: 2vw;}
}