@charset "UTF-8";
/* Updated 2026/03/11.T */
/* Updated 2026/03/09.T */
/*-------------------------------------------
Reset CSS
-------------------------------------------*/
abbr,
address,
article,
aside,
audio,
b,
blockquote,
body,
body div,
caption,
cite,
code,
dd,
del,
dfn,
dl,
dt,
em,
fieldset,
figure,
footer,
form,
h1,
h2,
h3,
h4,
h5,
h6,
header,
hgroup,
html,
i,
iframe,
img,
ins,
kbd,
label,
legend,
li,
mark,
menu,
nav,
object,
ol,
p,
pre,
q,
samp,
section,
small,
span,
strong,
sub,
sup,
table,
tbody,
td,
tfoot,
th,
thead,
time,
tr,
ul,
var,
video {
  margin: 0;
  padding: 0;
  border: 0;
  background: 0 0;
  font-size: 100%;
  vertical-align: baseline;
}

article,
aside,
figure,
footer,
header,
hgroup,
nav,
section {
  display: block;
}

embed,
img,
object {
  max-width: 100%;
}

html {
  overflow-y: scroll;
}

ul {
  list-style: none;
}

blockquote,
q {
  quotes: none;
}

blockquote:after,
blockquote:before,
q:after,
q:before {
  content: "";
  content: none;
}

a {
  margin: 0;
  padding: 0;
  background: 0 0;
  font-size: 100%;
  vertical-align: baseline;
}

del {
  text-decoration: line-through;
}

abbr[title],
dfn[title] {
  border-bottom: 1px dotted #000;
  cursor: help;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

th {
  font-weight: 700;
  vertical-align: top;
}

td {
  font-weight: 400;
  vertical-align: top;
}

hr {
  display: block;
  height: 1px;
  margin: 1em 0;
  padding: 0;
  border: 0;
  border-top: 1px solid #ccc;
}

input,
select {
  vertical-align: top;
}

pre {
  white-space: pre-line;
  white-space: pre-wrap;
  white-space: pre;
  word-wrap: break-word;
}

input[type=radio] {
  vertical-align: text-bottom;
}

input[type=checkbox] {
  vertical-align: bottom;
}

input,
select,
textarea {
  font: 99% sans-serif;
}

table {
  font: 100%;
  font-size: inherit;
}

a:active {
  outline: 0;
}

td,
td img {
  vertical-align: top;
}

sub,
sup {
  position: relative;
  font-size: 85%;
  line-height: 0;
}

sup {
  top: -0.5em;
}

sub {
  bottom: -0.25em;
}

code,
kbd,
pre,
samp {
  font-family: monospace, sans-serif;
}

.clickable,
button,
input[type=button],
input[type=submit],
label {
  cursor: pointer;
}

button,
input,
select,
textarea {
  margin: 0;
}

button {
  width: auto;
  max-width: 100%;
  overflow: visible;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-weight: 400;
}

img {
  vertical-align: bottom;
}

.clear:after,
.clear:before {
  display: table;
  content: " ";
}

.clear:after {
  clear: both;
}

*,
::after,
::before {
  box-sizing: border-box;
}

img {
  vertical-align: middle;
}

textarea {
  resize: vertical;
}

em,
strong {
  font-weight: 400;
}

legend {
  display: none;
}

table {
  font-weight: 400;
  text-align: left;
}

td,
th {
  font-weight: 400;
  text-align: left;
}

img {
  max-width: 100%;
}

li,
ol {
  list-style: none;
}

button {
  margin: 0;
  padding: 0;
}

/*-------------------------------------------
CSS custom property
-------------------------------------------*/
:root {
  --color-black01: #000;
  --color-white01: #fff;
  --color-offWhite01: #fdf9f5;
  --color-offWhite01a50: rgba(253, 249, 245, 0.5);
  --color-gray01: #8c9391;
  --color-gray02: #b3bcb9;
  --color-gray03: #f5f5f5;
  --color-gray04: #ABB8B3;
  --color-gray05: #D5DEDB;
  --color-green01: #004831;
  --color-green02: #80a398;
  --color-green03: #4d7f6f;
  --color-green04: #003927;
  --color-grayGreen01: #56635f;
  --color-grayGreen02: #d5dedb;
  --color-blue01: #0058a2;
  --color-gold01: #a99347;
  --color-gold01a50: rgba(169, 147, 71, 0.5);
  --color-gold02: #e9e1cb;
  --color-gold03a40: rgba(233, 225, 203, 0.4);
  --color-orange01: #eb6b0a;
  --color-orange02: #e95501;
  --fontfamily-oliveWhisper: "Olive Whisper", sans-serif;
  --fontfamily-oliveNature: "Olive Nature", sans-serif;
  --fontfamily-oliveImpact: "Olive Impact", sans-serif;
}

/*-------------------------------------------
Fonts
-------------------------------------------*/
@font-face {
  font-style: normal;
  font-weight: 400;
  src: url("../fonts/Noto_Sans_JP/NotoSansJP-Regular.woff2") format("woff2"), url("../fonts/Noto_Sans_JP/NotoSansJP-Regular.otf") format("opentype");
  font-family: noto-sans;
  font-display: swap;
}
@font-face {
  font-style: normal;
  font-weight: 700;
  src: url("../fonts/Noto_Sans_JP/NotoSansJP-Bold.woff2") format("woff2"), url("../fonts/Noto_Sans_JP/NotoSansJP-Bold.otf") format("opentype");
  font-family: noto-sans;
  font-display: swap;
}
/* OLIVE */
@font-face {
  font-style: normal;
  font-weight: 200;
  src: url("../fonts/Olive/OLIVE-Whisper.woff") format("woff"), url("../fonts/Olive/OLIVE-Whisper.otf") format("opentype");
  font-family: "Olive Whisper";
  font-display: swap;
}
@font-face {
  font-style: normal;
  font-weight: 400;
  src: url("../fonts/Olive/OLIVE-Nature.woff") format("woff"), url("../fonts/Olive/OLIVE-Nature.otf") format("opentype");
  font-family: "Olive Nature";
  font-display: swap;
}
@font-face {
  font-style: normal;
  font-weight: 700;
  src: url("../fonts/Olive/OLIVE-Impact.woff") format("woff"), url("../fonts/Olive/OLIVE-Impact.otf") format("opentype");
  font-family: "Olive Impact";
  font-display: swap;
}
/*-------------------------------------------
Base Setting
-------------------------------------------*/
html {
  font-size: 62.5%;
}

html.-modal {
  overflow: hidden;
}

body,
button,
input,
select,
textarea {
  color: var(--color-black01);
  font-size: 1.6rem;
  line-height: 1.5;
  font-family: noto-sans, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
  font-size-adjust: none;
  letter-spacing: 0.05em;
  -webkit-text-size-adjust: 100%;
  font-feature-settings: "palt" 1, "kern" 1;
}

body,
html {
  min-height: 100%;
}

body {
  width: 100%;
  min-height: 100vh;
  overflow-wrap: break-word;
  word-wrap: break-word;
  background-color: var(--color-offWhite01);
}

body::before {
  display: block;
  visibility: hidden;
  z-index: 8;
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background: rgba(0, 0, 0, 0);
  content: "";
  transition: all 0.25s ease-out;
}

body.-overlay {
  position: fixed;
}

main {
  display: block;
}

button {
  appearance: none;
  border: none;
  background: 0 0;
  -webkit-appearance: none;
  -moz-appearance: none;
}

a {
  color: var(--color-black01);
  text-decoration: underline;
  cursor: pointer;
}

a:visited {
  color: var(--color-black01);
}

a:active {
  color: var(--color-green01);
}

a:focus {
  color: var(--color-green01);
}

a[href^=tel] {
  pointer-events: none;
}

a[href^=tel]:not([class*=btn-type]) {
  display: inline-block;
}

a[disabled] {
  color: var(--color-gray02);
  pointer-events: none;
}

em {
  font-style: normal;
}

legend {
  display: block;
}

*,
::after,
::before {
  box-sizing: border-box;
}

img {
  height: auto;
}

figure {
  text-align: center;
}

sup {
  font-size: 60%;
}

[class*=karte-c] [tabindex],
[class*=karte-c] a,
[class*=karte-c] button,
[class*=karte-c] input,
[class*=karte-c] select,
[class*=karte-c] textarea {
  outline: 0;
}

#content-area {
  display: flex;
  position: relative;
  flex-direction: column;
  min-height: 100vh;
}

#content-area > .inner {
  position: relative;
  flex: 1 1 auto;
  width: 100%;
}

.skip-link {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0 0 0 0);
  border: 0;
  clip-path: inset(50%);
  -webkit-clip-path: inset(50%);
  white-space: nowrap;
}

[aria-hidden=true]:not(.splide__slide) {
  display: none;
}

/*-------------------------------------------
Header
-------------------------------------------*/
#header-content {
  z-index: 10000;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  transition: transform 0.5s ease-out, opacity 0.5s ease;
}

#header-content .header-wrap {
  top: 0;
  left: 0;
  width: 100%;
  background: var(--color-offWhite01a50);
}
#header-content .header-wrap > .inner {
  display: flex;
  align-items: center;
}
#header-content .global-nav > .inner > .body > .list {
  display: flex;
}
#header-content .global-nav > .inner > .body > .list > .item > * {
  display: flex;
  position: relative;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  color: var(--color-black01);
  line-height: 1.3;
  text-align: center;
  text-decoration: none;
}
#header-content .global-nav > .inner > .body > .list > .item > *.-disabled {
  color: var(--color-gray01);
}
#header-content .global-nav > .inner > .body > .list > .item > *.-disabled > .en {
  position: relative;
}
#header-content .global-nav > .inner > .body > .list > .item > *.-disabled > .en::after {
  display: block;
  position: absolute;
  content: "COMING SOON";
  white-space: nowrap;
}
#header-content .global-nav > .inner > .body > .list > .item > * > .en,
#header-content .global-nav > .inner > .body > .list > .item > * > .ja {
  display: flex;
  justify-content: center;
  width: 100%;
}
#header-content .global-nav > .inner > .body > .list > .item > * > .en {
  font-family: var(--fontfamily-oliveNature);
  text-transform: uppercase;
}
#header-content .global-nav > .inner > .list {
  display: flex;
}
#header-content .global-nav > .inner > .list > .item > * {
  display: flex;
  position: relative;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  color: var(--color-black01);
  line-height: 1.3;
  text-align: center;
  text-decoration: none;
}
#header-content .global-nav > .inner > .list > .item > *.-disabled {
  color: var(--color-gray01);
}
#header-content .global-nav > .inner > .list > .item > *.-disabled > .en {
  position: relative;
}
#header-content .global-nav > .inner > .list > .item > *.-disabled > .en::after {
  display: block;
  position: absolute;
  content: "COMING SOON";
  white-space: nowrap;
}
#header-content .global-nav > .inner > .list > .item > * > .en,
#header-content .global-nav > .inner > .list > .item > * > .ja {
  display: flex;
  justify-content: center;
  width: 100%;
}
#header-content .global-nav > .inner > .list > .item > * > .en {
  font-family: var(--fontfamily-oliveNature);
  text-transform: uppercase;
}

/*-------------------------------------------
PageTop
-------------------------------------------*/
#pagetop-area {
  display: flex;
  z-index: 10000;
  position: sticky;
  position: -webkit-sticky;
  justify-content: flex-end;
  margin-top: auto;
  pointer-events: none;
}

#pagetop-area > .pagetop-nav {
  position: relative;
  top: 24px;
  pointer-events: auto;
  transition: 0.5s ease-out;
}
#pagetop-area > .pagetop-nav.-hide {
  opacity: 0;
}
#pagetop-area > .pagetop-nav > a {
  display: flex;
  position: relative;
  width: 48px;
  height: 48px;
  border-radius: 50%;
  transition: outline-offset 0.2s ease-out;
}
#pagetop-area > .pagetop-nav > a::before, #pagetop-area > .pagetop-nav > a::after {
  position: absolute;
  content: "";
}
#pagetop-area > .pagetop-nav > a::before {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border-radius: 50%;
  background-color: rgba(128, 163, 152, 0.5);
  transition: transform 0.2s ease-out;
}
#pagetop-area > .pagetop-nav > a::after {
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 26px;
  height: 26px;
  margin: auto;
  background: url("../imgs/ico_pagetop_01.svg") no-repeat center/contain;
}

/*-------------------------------------------
Footer
-------------------------------------------*/
#footer-content {
  position: relative;
  background-color: var(--color-green01);
  color: var(--color-white01);
}
#footer-content a {
  color: var(--color-white01);
  text-decoration: none;
}

#footer-content > .footer-nav > .inner {
  max-width: 1000px;
  margin: 0 auto;
}

#footer-content .footer-list {
  display: flex;
  flex-direction: column;
}
#footer-content .footer-list > li {
  font-size: 1.2rem;
  letter-spacing: 0.05em;
}
#footer-content .footer-list > li > ul {
  display: flex;
  flex-direction: column;
}
#footer-content .footer-list > li > ul > li {
  position: relative;
  padding: 0 0 0 1em;
}
#footer-content .footer-list > li > ul > li::before {
  position: absolute;
  top: 0.75em;
  left: 0;
  width: 0.66em;
  height: 1px;
  background-color: var(--color-gray01);
  content: "";
}

#footer-content > .footer-data {
  color: var(--color-gray02);
  line-height: 1.2;
  text-align: center;
}
#footer-content > .footer-data > .text {
  font-size: 1.2rem;
  line-height: 1.6;
}

#footer-content > .footer-logo {
  font-weight: 400;
  font-size: 1.2rem;
  line-height: 1.3;
  font-family: var(--fontfamily-oliveNature);
  text-align: center;
}

/*-------------------------------------------
Footer Fixed
-------------------------------------------*/
#fixed-area {
  z-index: 2;
  position: sticky;
  position: -webkit-sticky;
  bottom: 0;
  left: 0;
  width: 100%;
  pointer-events: none;
}

#footer-fixed {
  transform: translateY(100%);
  opacity: 0;
  pointer-events: auto;
  transition: 0.5s ease-out;
}
#footer-fixed.-hide {
  transform: translateY(100%);
  opacity: 0;
}
#footer-fixed.-show {
  transform: translateY(0);
  opacity: 1;
}

#footer-fixed .panel {
  background: rgba(0, 57, 39, 0.7);
}
#footer-fixed .panel > .inner {
  max-width: 1000px;
  margin: 0 auto;
}
@media (hover: hover) and (pointer: fine){
  a:hover {
    outline: 0;
  }
  a:hover {
    color: var(--color-green01);
  }
  #header-content .global-nav > .inner > .list > .item > *:hover:is(a) > .en {
    transform: translateY(-90%);
    opacity: 0;
  }
  #header-content .global-nav > .inner > .list > .item > *:hover:is(a) > .ja {
    transform: translateY(0);
    opacity: 1;
  }
  #pagetop-area > .pagetop-nav > a:hover {
    outline-offset: 6px;
  }
  #pagetop-area > .pagetop-nav > a:hover::before {
    transform: scale(1.25);
    background-color: rgba(0, 72, 49, 0.5);
  }
  #footer-content a:hover {
    text-decoration: underline;
  }
}
@media screen and (max-width: 767px){
  #main-area {
    margin-top: 72px;
    padding-bottom: 216px;
  }
  #header-content .header-wrap > .inner {
    min-height: 72px;
    padding: 0 32px;
  }
  #header-content .header-siteLogo {
    z-index: 10001;
    position: relative;
    width: 112px;
  }
  #header-content .header-menu {
    z-index: 10000;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
  }
  #header-content .global-nav {
    display: grid;
    grid-template-rows: 0fr;
    width: 100%;
    opacity: 0;
    transition: grid-template-rows 0.5s ease-out, opacity 0.5s ease-out;
  }
  #header-content .global-nav::before {
    z-index: -1;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    background-color: var(--color-offWhite01);
    content: "";
  }
  #header-content .global-nav.-active {
    z-index: 10000;
    grid-template-rows: 1fr;
    opacity: 1;
  }
  #header-content .global-nav > .inner {
    overflow: hidden;
  }
  #header-content .global-nav > .inner > .body {
    display: flex;
    align-items: center;
    width: 100%;
    height: 100vh;
    height: 100dvh;
    padding: 72px 32px 16px;
    overflow-y: auto;
  }
  #header-content .global-nav > .inner > .body > .list {
    flex-direction: column;
    justify-content: center;
    width: 100%;
  }
  #header-content .global-nav > .inner > .body > .list > .item {
    border-bottom: 1px solid var(--color-gray02);
  }
  #header-content .global-nav > .inner > .body > .list > .item:first-child {
    border-top: 1px solid var(--color-gray02);
  }
  #header-content .global-nav > .inner > .body > .list > .item > * {
    min-height: 110px;
  }
  #header-content .global-nav > .inner > .body > .list > .item > *.-disabled > .en::after {
    bottom: -1.8em;
    font-size: 1.4rem;
  }
  #header-content .global-nav > .inner > .body > .list > .item > * > .en {
    font-size: 2rem;
  }
  #header-content .global-nav > .inner > .body > .list > .item > * > .ja {
    display: none;
  }
  #header-content .global-nav > .inner > .list {
    flex-direction: column;
    justify-content: center;
    width: 100%;
    height: 100vh;
    height: 100dvh;
    padding: 72px 32px 16px;
    overflow-y: auto;
  }
  #header-content .global-nav > .inner > .list > .item {
    border-bottom: 1px solid var(--color-gray02);
  }
  #header-content .global-nav > .inner > .list > .item:first-child {
    border-top: 1px solid var(--color-gray02);
  }
  #header-content .global-nav > .inner > .list > .item > * {
    min-height: 110px;
  }
  #header-content .global-nav > .inner > .list > .item > *.-disabled > .en::after {
    bottom: -1.8em;
    font-size: 1.4rem;
  }
  #header-content .global-nav > .inner > .list > .item > * > .en {
    font-size: 2rem;
  }
  #header-content .global-nav > .inner > .list > .item > * > .ja {
    display: none;
  }
  #header-content .header-drawrBtn {
    display: block;
    z-index: 10001;
    position: absolute;
    top: 0;
    right: 32px;
    bottom: 0;
    height: 32px;
    margin: auto;
    overflow: hidden;
  }
  #header-content .header-drawrBtn > .btn {
    display: inline-flex;
    position: relative;
    width: 32px;
    height: 32px;
  }
  #header-content .header-drawrBtn > .btn::before {
    position: absolute;
    top: calc(50% - 1px);
    right: 0;
    left: 0;
    width: 21px;
    height: 2px;
    margin: auto;
    border-radius: 999em;
    background-color: var(--color-black01);
    content: "";
    transition: opacity 0.3s ease-out;
  }
  #header-content .header-drawrBtn > .btn > span {
    display: inline-flex;
    height: 32px;
  }
  #header-content .header-drawrBtn > .btn > span::before, #header-content .header-drawrBtn > .btn > span::after {
    position: absolute;
    left: calc(50% - 10.5px);
    width: 21px;
    height: 2px;
    border-radius: 999em;
    background-color: var(--color-black01);
    content: "";
    transition: transform 0.3s ease-out;
  }
  #header-content .header-drawrBtn > .btn > span::before {
    top: calc(50% - 7px);
  }
  #header-content .header-drawrBtn > .btn > span::after {
    top: calc(50% + 5px);
  }
  html.-openMenu {
    overflow: hidden;
  }
  html.-openMenu > body {
    position: fixed;
    overflow: hidden;
  }
  html.-openMenu #header-content .header-drawrBtn > .btn::before {
    opacity: 0;
  }
  html.-openMenu #header-content .header-drawrBtn > .btn > span::before {
    transform: translateY(6px) rotate(45deg);
  }
  html.-openMenu #header-content .header-drawrBtn > .btn > span::after {
    transform: translateY(-6px) rotate(-45deg);
  }
  #pagetop-area {
    bottom: var(--pagetop-bottom, 40px);
  }
  #pagetop-area > .pagetop-nav {
    padding-right: 16px;
  }
  #pagetop-area > .pagetop-nav.-hide {
    transform: translateY(calc(var(--pagetop-bottom, 40px) + 24px));
  }
  #footer-content {
    padding: 40px 0;
  }
  #footer-content > .footer-nav > .inner {
    padding: 0 32px;
  }
  #footer-content .footer-list {
    margin-top: 13px;
  }
  #footer-content .footer-list > li:not(:first-child) {
    margin-top: 13px;
  }
  #footer-content .footer-list > li > ul {
    margin: 12px 0 6px;
  }
  #footer-content .footer-list > li > ul > li:not(:first-child) {
    margin-top: 12px;
  }
  #footer-content > .footer-data {
    margin: 40px 0 0;
    padding: 0 28px;
  }
  #footer-content > .footer-logo {
    margin: 18px 0 0;
  }
  #footer-fixed .panel > .inner {
    padding: 24px 8px;
  }
}
@media screen and (min-width: 768px), print and (min-width: 768px){
  #main-area {
    margin-top: 114px;
    padding-bottom: 276px;
  }
  #header-content .header-wrap > .inner {
    min-height: 114px;
    padding: 0 60px;
  }
  #header-content .header-siteLogo {
    width: 334px;
  }
  #header-content .header-menu {
    margin-left: auto;
  }
  #header-content .global-nav > .inner {
    width: 100%;
  }
  #header-content .global-nav > .inner > .body > .list {
    align-items: center;
    height: 66px;
  }
  #header-content .global-nav > .inner > .body > .list > .item {
    display: flex;
    align-items: center;
    height: 100%;
    padding: 4px 0 0;
  }
  #header-content .global-nav > .inner > .body > .list > .item:not(:first-child) {
    margin-left: 32px;
  }
  #header-content .global-nav > .inner > .body > .list > .item.-top {
    width: 54px;
  }
  #header-content .global-nav > .inner > .body > .list > .item.-service {
    width: 124px;
  }
  #header-content .global-nav > .inner > .body > .list > .item.-about {
    width: 102px;
  }
  #header-content .global-nav > .inner > .body > .list > .item > * {
    height: 100%;
  }
  #header-content .global-nav > .inner > .body > .list > .item > *.-disabled > .en::after {
    bottom: -1.2em;
    font-size: 1.2rem;
  }
  #header-content .global-nav > .inner > .body > .list > .item > * > .en {
    font-size: 1.6rem;
    transition: transform 0.4s, opacity 0.4s;
  }
  #header-content .global-nav > .inner > .body > .list > .item > * > .ja {
    position: absolute;
    right: 0;
    left: 0;
    margin: auto;
    padding: 0 0 0.4em;
    transform: translateY(90%);
    font-weight: 700;
    font-size: 1.4rem;
    opacity: 0;
    transition: transform 0.4s, opacity 0.4s;
  }
  #header-content .global-nav > .inner > .list {
    align-items: center;
    height: 66px;
  }
  #header-content .global-nav > .inner > .list > .item {
    display: flex;
    align-items: center;
    height: 100%;
    padding: 4px 0 0;
  }
  #header-content .global-nav > .inner > .list > .item:not(:first-child) {
    margin-left: 32px;
  }
  #header-content .global-nav > .inner > .list > .item.-top {
    width: 54px;
  }
  #header-content .global-nav > .inner > .list > .item.-service {
    width: 124px;
  }
  #header-content .global-nav > .inner > .list > .item.-about {
    width: 102px;
  }
  #header-content .global-nav > .inner > .list > .item > * {
    height: 100%;
  }
  #header-content .global-nav > .inner > .list > .item > *.-disabled > .en::after {
    bottom: -1.2em;
    font-size: 1.2rem;
  }
  #header-content .global-nav > .inner > .list > .item > * > .en {
    font-size: 1.6rem;
    transition: transform 0.4s, opacity 0.4s;
  }
  #header-content .global-nav > .inner > .list > .item > * > .ja {
    position: absolute;
    right: 0;
    left: 0;
    margin: auto;
    padding: 0 0 0.4em;
    transform: translateY(90%);
    font-weight: 700;
    font-size: 1.4rem;
    opacity: 0;
    transition: transform 0.4s, opacity 0.4s;
  }
  #header-content .header-drawrBtn {
    display: none;
  }
  #pagetop-area {
    bottom: var(--pagetop-bottom, 64px);
  }
  #pagetop-area > .pagetop-nav {
    padding-right: 60px;
  }
  #pagetop-area > .pagetop-nav.-hide {
    transform: translateY(calc(var(--pagetop-bottom, 64px) + 24px));
  }
  #footer-content {
    padding: 60px 0;
  }
  #footer-content > .footer-nav > .inner {
    display: flex;
    justify-content: center;
    padding: 0 60px 0;
  }
  #footer-content > .footer-nav > .inner > *:not(:first-child) {
    margin-left: 40px;
  }
  #footer-content .footer-list > li:not(:first-child) {
    margin-top: 17px;
  }
  #footer-content .footer-list > li > ul {
    margin: 16px 0 0;
  }
  #footer-content .footer-list > li > ul > li:not(:first-child) {
    margin-top: 16px;
  }
  #footer-content > .footer-data {
    margin: 60px 0 0;
  }
  #footer-content > .footer-logo {
    margin: 28px 0 0;
  }
  #footer-fixed .panel > .inner {
    padding: 24px 40px;
  }
}
@media screen and (min-width: 768px) and (hover: hover) and (pointer: fine), print and (min-width: 768px) and (hover: hover) and (pointer: fine){
  #header-content .global-nav > .inner > .body > .list > .item > *:hover:is(a) > .en {
    transform: translateY(-90%);
    opacity: 0;
  }
  #header-content .global-nav > .inner > .body > .list > .item > *:hover:is(a) > .ja {
    transform: translateY(0);
    opacity: 1;
  }
}
@media screen and (max-width: 767px) and (orientation: landscape) and (max-height: 500px){
  #header-content .global-nav > .inner > .body > .list {
    padding-top: 72px;
  }
  #header-content .global-nav > .inner > .body > .list > .item > * {
    min-height: 70px;
  }
  #header-content .global-nav > .inner > .body > .list > .item > *.-disabled > .en::after {
    bottom: -1em;
  }
  #header-content .global-nav > .inner > .list {
    padding-top: 72px;
  }
  #header-content .global-nav > .inner > .list > .item > * {
    min-height: 70px;
  }
  #header-content .global-nav > .inner > .list > .item > *.-disabled > .en::after {
    bottom: -1em;
  }
}
