@charset "UTF-8";
/* About Page Styles */
/* Reset / Basics */
* {
  box-sizing: border-box;
}

body.about-page {
  font-family: "Hiragino Sans", "Helvetica Neue", sans-serif;
  background: #000;
  color: lightgray;
  max-width: 480px;
  margin: 0 auto;
  padding: 1em;
  line-height: 1.4;
}

a {
  text-decoration: none;
  color: inherit;
}

/* Header */
.kw-header {
  text-align: center;
  padding: 10px 0;
}

.kw-top-row {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 0 16px;
  max-width: 480px;
  margin: 0 auto;
  position: relative;
}

.kw-logo {
  display: flex;
  justify-content: center;
  align-items: baseline;
  gap: 0.2em;
  font-size: 2.3rem;
  font-weight: 600;
  font-family: 'Marcellus', serif;
}

.kakishibu { color: #904012; }
.sabi { color: #9f8672; }
.sabi.small { font-size: 75%; }

/* E-voice button */
.evoice-button {
  background-color: #7b5608;
  border-radius: 6px;
  border: 1px solid rgba(255, 255, 255, 0.25);
  padding: 4px 12px;
  text-align: center;
  font-family: 'Arial', sans-serif;
  color: white;
  text-decoration: none;
  font-size: 0.95em;
  line-height: 1.2;
  transition: transform 0.2s ease, background-color 0.2s ease;
}

.evoice-button:hover {
  background-color: #c89130;
  transform: scale(1.05);
}

.evoice-main {
  font-weight: bold;
}
.evoice-sub {
  font-size: 0.8em;
  color: #111;
  margin-top: -2px;
  padding-top: 2px;
}

/* Section */

.about-index {
  list-style: none;
  padding: 0;
  margin: 0.5em 0 1.5em;
}
.about-index li {
  margin: 0.4em 0;
}
.about-index a {
  color: #ca952e;
  font-weight: 500;
}

/* About page text column */
.about-page p,
.about-page ul,
.about-page li {
  text-align: left;
  line-height: 1.65;
  margin: 0.6em 0;
  max-width: 95%;       /* instead of fixed 380px */
  margin-left: auto;
  margin-right: auto;
  font-size: 1rem;      /* optional tweak */
}

/* Headings inside About page */
.about-page h1 {
  font-size: 1.4rem;   /* slightly larger than body, smaller than logo */
  font-weight: 600;    /* not as heavy as bold */
  margin-bottom: 0.6em;
  text-align: left;
  color: #e6cfa8;      /* softer highlight */
}

.about-page h2 {
  font-size: 1.2rem;   /* smaller than h1 */
  font-weight: 500;    /* medium weight */
  margin-top: 1.4em;
  margin-bottom: 0.4em;
  text-align: left;
  color: #d8a44a;      /* highlight tone but lighter than h1 */
}

.about-page h3 {
  font-size: 1.05rem;  /* small subheaders if needed */
  font-weight: 500;
  margin-top: 1.2em;
  margin-bottom: 0.3em;
  text-align: left;
  color: #cfa974;
}

/* Contents index styling */
.about-index {
  list-style: disc;
  padding-left: 1.2em;
  margin-top: 0.8em;
  margin-bottom: 1.2em;
}

.about-index li {
  margin: 0.3em 0;
}

.about-index a {
  color: #87a95c;   /* softer gold than h2 */
  text-decoration: none;
  font-weight: 500;
}

.about-index a:hover {
  color: #a8c97d;   /* slightly brighter on hover */
  text-decoration: underline;
}

/* About page list styling */
.about-page ul {
  margin: 0.8em 0 1em 1.2em;  /* add left margin for bullets */
  padding-left: 0.6em;        /* slight indent */
  list-style-type: disc;      /* keep simple bullets */
}

.about-page li {
  margin-bottom: 0.4em;
  line-height: 1.6;
}
.brown {
  color: #c36d3c;   /* kakishibu orange-brown */
  font-weight: 600; /* semi-bold, like strong */
}

/* toggle link next to headers */
.section-title {
  display: flex;
  align-items: baseline;
  gap: .6rem;
}

.lang-toggle {
  background: none;
  border: 0;
  color: #4aa3ff;
  font-size: .95rem;
  padding: 0;
  cursor: pointer;
  text-decoration: none;
}

.lang-toggle:hover {
  text-decoration: underline;
}

/* show/hide logic via [hidden] is handled by JS */
.dual .jp[hidden],
.dual .en[hidden] { display: none !important; }

/* Footer */
.kw-footer {
  text-align: center;
  font-size: 1em;
  color: #9f8e72;
  padding: 16px 12px;
  border-top: 1px solid #444;
  margin-top: 1.5em;
  line-height: 1.5;
}

.footer-kakishibu {
  color: #c36d3c;
  font-weight: 800;
}
.footer-sabi {
  color: #9f8672;
  font-size: 0.7em;
  font-weight: 600;
}