/*
Template:tp-minpage-box-v2 Child Theme Custom Layout Stylesheet
v1.0.0
Last Updated: 2025-08-22
Author: Web Studio
*/
/*
Template:lp-alnitak-v1 Layout Stylesheet
v1.0.0
Last Updated: 2020-04-16
Author: Web Studio
*/
/* @import
----------------------------------------------- */
@import url("/theme/tpl/tpl-lp-alnitak-v1/css/general.css");
/* Reset
----------------------------------------------- */
* {
  border: 0;
  margin: 0;
  outline: 0;
  padding: 0;
  background: none;
  box-sizing: border-box;
  font: inherit;
  font-family: inherit;
  font-size: 100%;
  font-style: inherit;
  font-weight: inherit;
  text-decoration: none;
  vertical-align: baseline;
  list-style: none;
}
/* html&body
----------------------------------------------- */
html {
  font-family: sans-serif;
  font-size: calc(0.75rem + ((1vw - 4.8px) * 0.4167));
  -webkit-font-smoothing: antialiased;
  -moz-font-smoothing: antialiased;
  -ms-font-smoothing: antialiased;
  -o-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-smoothing: antialiased;
}
body {
  transition: 0.3s;
  color: #111;
  background: #fff;
  line-height: 2;
  letter-spacing: 0.1rem;
  -webkit-text-size-adjust: 100%;
  -moz-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  -o-text-size-adjust: 100%;
  text-size-adjust: 100%;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-smoothing: antialiased;
}
@media screen and (max-width: 480px) {
  body {
    font-size: 1.2rem;
  }
}
@media screen and (min-width: 1920px) {
  body {
    font-size: 3,0rem;
  }
}
/* HTML Format
----------------------------------------------- */
p {
  margin: 1rem 0;
}
b {
  color: #1ebeb4;
}
i {
  font-family: "Open Sans", sans-serif;
}
u {
  text-decoration: underline;
}
em {
  font-weight: bold;
}
strong {
  font-weight: bold;
  font-size: 1.2em;
}
small {
  font-size: 70%;
}
a {
  color: #133A59;
}
a:hover {
  color: #083b64;
}
/* HTML Form Format
----------------------------------------------- */
input[type=text],
input[type=password],
input[type=date],
textarea,
select,
button {
  padding: 0.5rem;
  border: 1px solid #aaa;
  font-size: 16px;
}
@media (min-width: 768px) {
  input[type=text],
  input[type=password],
  input[type=date],
  textarea,
  select,
  button {
    font-size: inherit;
  }
}
@media (min-width: 768px) {
  input[type=text],
  input[type=password],
  input[type=date],
  textarea,
  select,
  button {
    font-size: inherit;
  }
}
input[type=text]:focus,
input[type=password]:focus,
input[type=date]:focus,
textarea:focus,
select:focus,
button:focus {
  border: 1px solid #5e5e5e;
}
button {
  vertical-align: bottom;
  cursor: pointer;
}
/* Basis Layout
----------------------------------------------- */
#body {
  display: flex;
  flex-direction: column;
}
#body #ws-main {
  order: 2;
  background: #fff;
}
#body #ws-main #side {
  background: #fff;
}
#body #ws-side {
  order: 1;
  background: #FFFDF7;
  color: #fff;
}
@media (min-width: 768px) {
  #body {
    flex-direction: row;
    align-items: stretch;
    min-height: 100vh;
  }
  #body #ws-main {
    order: 2;
    width: calc(100% - 24rem);
  }
  #body #ws-side {
    order: 1;
    width: 24rem;
  }
}
@media (min-width: 768px) {
  #body {
    flex-direction: row;
    align-items: stretch;
    min-height: 100vh;
  }
  #body #ws-main {
    order: 2;
    width: calc(100% - 24rem);
  }
  #body #ws-side {
    order: 1;
    width: 24rem;
  }
}
#header-wrap {
  position: relative;
}
.header-outer {
  padding: 4rem 1rem;
  overflow: hidden;
}
@media (min-width: 320px) {
  .header-outer {
    padding: 4rem calc(1rem + ((1vw - 0.2rem) * 3));
  }
}
@media (min-width: 320px) {
  .header-outer {
    padding: 4rem calc(1rem + ((1vw - 0.2rem) * 3));
  }
}
header {
  position: relative;
  line-height: 1;
  width: 100%;
  overflow: hidden;
}
header .header-inner {
  position: relative;
  margin: 0 auto;
  width: 100%;
  line-height: 1.1;
}
main {
  margin: 0 auto;
  padding: 0;
  width: 100%;
  max-width: 1900px;
}
#footer-wrap {
  background: #030303;
}
footer {
  margin: 0 auto;
  width: 100%;
}
/* Basis Layout @media screen
----------------------------------------------- */
/* Basic Inner
----------------------------------------------- */
header .header-inner {
  margin-bottom: 4rem;
}
footer > .footer-inner {
  padding: 4rem 1rem;
  word-break: break-all;
}
@media (min-width: 320px) {
  footer > .footer-inner {
    padding: 0 calc(1rem + ((1vw - 0.2rem) * 3)) 4rem;
  }
}
@media (min-width: 320px) {
  footer > .footer-inner {
    padding: 0 calc(1rem + ((1vw - 0.2rem) * 3)) 4rem;
  }
}
section > .inner {
  padding: 4rem 1rem;
}
@media (min-width: 320px) {
  section > .inner {
    padding: 4rem calc(1rem + ((1vw - 0.2rem) * 3));
  }
}
@media (min-width: 320px) {
  section > .inner {
    padding: 4rem calc(1rem + ((1vw - 0.2rem) * 3));
  }
}
/* Page to Top
----------------------------------------------- */
.page-top {
  display: none;
  margin: 0;
  padding: 0;
  position: fixed;
  bottom: 12px;
  right: 12px;
  width: 64px;
  height: 64px;
  text-align: center;
  overflow: hidden;
  z-index: 999;
}
.page-top a {
  display: block;
  position: relative;
  margin: 0;
  width: 100%;
  height: 100%;
}
.page-top a::before {
  content: '';
  display: block;
  width: 100%;
  height: 100%;
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' width='101px' height='101px' viewBox='0.5 0.5 101 101' overflow='visible' enable-background='new 0.5 0.5 101 101' xml:space='preserve'%3E%3Cg%3E%3Cpath fill='%2315202B' d='M50.5,99.5c-27.019,0-49-21.981-49-49s21.981-49,49-49s49,21.981,49,49S77.519,99.5,50.5,99.5z M70.277,65.824c1.105,1.105,2.572,1.714,4.132,1.714c1.561,0,3.023-0.61,4.12-1.718l3.424-3.424c1.109-1.11,1.718-2.583,1.714-4.147c-0.004-1.555-0.614-3.012-1.718-4.104L54.635,26.829c-1.105-1.105-2.574-1.714-4.135-1.714s-3.029,0.609-4.135,1.714L19.047,54.148c-1.109,1.109-1.718,2.582-1.714,4.146c0.004,1.555,0.614,3.013,1.718,4.105l3.424,3.424c1.105,1.105,2.573,1.714,4.132,1.714c1.561,0,3.024-0.61,4.121-1.718L50.5,46.047L70.277,65.824z'/%3E%3Cpath fill='%23FFFFFF' d='M50.5,2.5c26.467,0,48,21.533,48,48c0,26.467-21.533,48-48,48c-26.467,0-48-21.533-48-48C2.5,24.033,24.033,2.5,50.5,2.5 M26.606,68.538c1.83,0,3.546-0.715,4.824-2.007l19.07-19.07l19.07,19.07c1.294,1.294,3.013,2.007,4.838,2.007c1.83,0,3.546-0.715,4.824-2.007l3.429-3.428c1.298-1.3,2.011-3.024,2.006-4.857c-0.005-1.823-0.721-3.532-2.007-4.805l-27.318-27.32c-1.295-1.294-3.014-2.007-4.842-2.007c-1.828,0-3.547,0.713-4.842,2.007L18.34,53.441c-1.299,1.299-2.012,3.023-2.007,4.856c0.005,1.824,0.72,3.533,2.007,4.806l3.428,3.428C23.062,67.825,24.78,68.538,26.606,68.538 M50.5,0.5c-27.621,0-50,22.379-50,50s22.379,50,50,50s50-22.379,50-50S78.121,0.5,50.5,0.5L50.5,0.5z M26.606,66.538c-1.237,0-2.478-0.474-3.425-1.421l-3.428-3.428c-1.895-1.875-1.895-4.939,0-6.834l27.318-27.319c0.948-0.947,2.188-1.421,3.428-1.421s2.48,0.474,3.428,1.421l27.318,27.319c1.895,1.875,1.895,4.938,0,6.834l-3.428,3.428c-0.938,0.947-2.172,1.421-3.41,1.421c-1.236,0-2.477-0.474-3.424-1.421L50.5,44.633L30.016,65.117C29.079,66.064,27.844,66.538,26.606,66.538L26.606,66.538z'/%3E%3C/g%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-size: contain;
}
.page-top i {
  font-size: 64px;
  position: absolute;
  top: 0;
  left: 0;
  color: #fff;
}
/* header
----------------------------------------------- */
/* footer
----------------------------------------------- */
/* navigation.nav-normal
----------------------------------------------- */
#nav-container.nav-normal {
  margin: 0;
}
#nav-container.nav-normal ul {
  display: flex;
  flex-wrap: wrap;
  flex-direction: column;
  margin: 0;
  padding: 0;
  width: 100%;
  justify-content: space-between;
  list-style: none;
}
#nav-container.nav-normal ul li {
  flex: auto;
  width: 100%;
}
@media (min-width: 768px) {
  #nav-container.nav-normal ul li {
    flex: 1;
  }
}
@media (min-width: 768px) {
  #nav-container.nav-normal ul li {
    flex: 1;
  }
}
#nav-container.nav-normal ul li a {
  border-top: 1px solid #ccc;
  display: block;
  padding: 0.6em 0.4em;
  text-decoration: none;
}
#nav-container.nav-normal ul li a:hover {
  background: #ccc;
  color: #ffffff;
}
#nav-container.nav-normal ul li:last-child a {
  border-bottom: 1px solid #ccc;
}
/* navigation.nav-always-button
----------------------------------------------- */
#nav-container.nav-always-button {
  position: fixed;
  left: 0;
  top: 0;
  height: 100vh;
  width: 100%;
  pointer-events: none;
  overflow: hidden;
}
#nav-container.nav-always-button * {
  visibility: visible;
}
#nav-container.nav-always-button .bg {
  position: absolute;
  top: 78px;
  left: 0;
  width: 100%;
  height: calc(100% - 78px);
  visibility: hidden;
  opacity: 0;
  transition: 0.3s;
  background: #000;
}
#nav-container.nav-always-button:focus-within .bg {
  visibility: visible;
  opacity: 0.6;
}
#nav-container.nav-always-button .button {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-end;
  z-index: 1;
  -webkit-appearance: none;
  border: 0;
  background: transparent;
  border-radius: 0;
  height: auto;
  box-sizing: content-box;
  width: 30px;
  margin: 1rem 1rem 0 auto;
  padding: 1rem;
  cursor: pointer;
  pointer-events: auto;
  touch-action: manipulation;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  text-align: right;
}
#nav-container.nav-always-button .icon-bar {
  display: block;
  width: 30px;
  height: 3px;
  background: #ccc;
  transition: 0.3s;
}
#nav-container.nav-always-button .icon-bar + .icon-bar {
  margin-top: 5px;
}
#nav-container.nav-always-button:focus-within .button {
  pointer-events: none;
}
#nav-container.nav-always-button:focus-within .icon-bar:nth-of-type(1) {
  transform: translate3d(0, 8px, 0) rotate(45deg);
}
#nav-container.nav-always-button:focus-within .icon-bar:nth-of-type(2) {
  opacity: 0;
}
#nav-container.nav-always-button:focus-within .icon-bar:nth-of-type(3) {
  transform: translate3d(0, -8px, 0) rotate(-45deg);
}
#nav-container.nav-always-button #nav-content {
  margin-top: 78px;
  padding: 20px;
  width: 90%;
  max-width: 300px;
  position: absolute;
  top: 0;
  right: 0;
  height: calc(100% - 78px);
  background: #111;
  pointer-events: auto;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  transform: translateX(100%);
  transition: transform 0.3s;
  will-change: transform;
  contain: paint;
  overflow-y: scroll;
  -webkit-overflow-scrolling: touch;
}
#nav-container.nav-always-button #nav-content ul {
  display: flex;
  flex-direction: column;
  height: 100%;
}
#nav-container.nav-always-button #nav-content li {
  border-bottom: 1px solid #999;
}
#nav-container.nav-always-button #nav-content li:first-of-type {
  border-top: 1px solid #999;
}
#nav-container.nav-always-button #nav-content li:hover {
  background: #333;
}
#nav-container.nav-always-button #nav-content li a {
  padding: 1rem 1rem;
  display: block;
  transition: color 0.1s;
  font-size: 1rem;
  color: #fff;
  line-height: 1.1;
}
#nav-container.nav-always-button #nav-content li a::before {
  margin-right: 0.3rem;
  vertical-align: middle;
  color: #ccc;
}
#nav-container.nav-always-button #nav-content li a:hover {
  color: #fff;
}
#nav-container.nav-always-button #nav-content li:not(.small) + .small {
  margin-top: auto;
}
#nav-container.nav-always-button #nav-content .small {
  display: flex;
  align-self: center;
}
#nav-container.nav-always-button #nav-content .small a {
  font-size: 80%;
  font-weight: 400;
  color: #888;
}
#nav-container.nav-always-button #nav-content .small a + a {
  margin-left: 15px;
}
#nav-container.nav-always-button:focus-within #nav-content {
  transform: none;
}
/* keyframes
----------------------------------------------- */
@keyframes key1 {
  0% {
    transform: translateY(0px);
  }
  100% {
    transform: translateY(-10px);
  }
}
/* column swicth layout
----------------------------------------------- */
body.full-one-column-responsive #body {
  margin: 0 auto;
  width: 100%;
}
body.full-one-column-responsive #side {
  display: none;
}
body.fixed-one-column #body {
  margin: 0 auto;
  max-width: 1000px;
}
body.fixed-one-column #side {
  display: none;
}
body.full-two-column-responsive #body {
  margin: 0 auto;
  width: 100%;
}
body.full-two-column-responsive #main-wrap {
  display: flex;
}
body.full-two-column-responsive #main {
  width: calc(100%-20rem);
}
body.full-two-column-responsive #side {
  width: 20rem;
}
body.fixed-two-column #body {
  margin: 0 auto;
  width: 1000px;
}
body.fixed-two-column #main-wrap {
  display: flex;
}
body.fixed-two-column #main {
  max-width: 700px;
}
body.fixed-two-column #side {
  max-width: 300px;
}
/* header title swicth layout
----------------------------------------------- */
header.title-text .title-description {
  display: none;
}
header.title-image .title-logo {
  height: 36px;
  background: url(../images/logo.svg) center center no-repeat;
  text-indent: -9999px;
}
header.title-image .title-description {
  display: none;
}
header.title-image-dtext .title-logo {
  height: 36px;
  background: url(../images/logo.svg) center center no-repeat;
  text-indent: -9999px;
}
/* header swicth layout
----------------------------------------------- */
@media (min-width: 768px) {
  #header-wrap.header-fixed .header-outer {
    position: fixed;
    top: 0;
    width: 24rem;
  }
  body.fixed-one-column #header-wrap.header-fixed .header-outer,
  body.fixed-two-column #header-wrap.header-fixed .header-outer {
    max-width: 1000px;
  }
}
@media (min-width: 768px) {
  #header-wrap.header-fixed .header-outer {
    position: fixed;
    top: 0;
    width: 24rem;
  }
  body.fixed-one-column #header-wrap.header-fixed .header-outer,
  body.fixed-two-column #header-wrap.header-fixed .header-outer {
    max-width: 1000px;
  }
}
#header-wrap.header-nav-fixed #nav-content {
  position: fixed;
  top: 0;
  width: 100%;
}
body.fixed-one-column #header-wrap.header-nav-fixed #nav-content,
body.fixed-two-column #header-wrap.header-nav-fixed #nav-content {
  max-width: 1000px;
}
#header-wrap.header-nav-position-top .header-outer {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
#header-wrap.header-nav-position-top header {
  width: fit-content;
}
#header-wrap.header-nav-position-top #nav-container {
  width: fit-content;
  word-break: keep-all;
}
#header-wrap.header-nav-position-top-fixed .header-outer {
  display: flex;
  justify-content: space-between;
  align-items: center;
  position: fixed;
  top: 0;
  width: 100%;
}
body.fixed-one-column #header-wrap.header-nav-position-top-fixed .header-outer,
body.fixed-two-column #header-wrap.header-nav-position-top-fixed .header-outer {
  max-width: 1000px;
}
#header-wrap.header-nav-position-top-fixed header {
  width: fit-content;
}
#header-wrap.header-nav-position-top-fixed #nav-container {
  width: fit-content;
  word-break: keep-all;
}
html {
  background: #FFFDF7;
}
#ws-side #nav-container.nav-normal ul li a:hover {
  background: #1a1a1a;
}
#ws-side a {
  color: #000;
}
h2 {
  padding: 1rem;
  background: #ffffff;
}
.title-logo-svg {
  font-weight: bold;
  font-size: 2rem;
  height: 2.5rem;
  stroke: #ffd653;
  fill: #ffffff;
  letter-spacing: 4px;
  text-anchor: middle;
  dominant-baseline: alphabetic;
}
.title-logo-svg > svg > use:nth-of-type(1) {
  stroke-width: 9px;
  paint-order: stroke;
  stroke-linejoin: round ;
}
.title-logo-svg > svg > use:nth-of-type(2) {
  stroke-width: 0;
}
.operation-box {
  padding: 1.5rem;
  background: #ffffff;
}
.operation-box dl.dl-1 {
  margin-bottom: 1rem;
}
@media (min-width: 768px) {
  .operation-box dl.dl-1 {
    display: flex;
    align-items: center;
  }
}
@media (min-width: 768px) {
  .operation-box dl.dl-1 {
    display: flex;
    align-items: center;
  }
}
.operation-box dl.dl-1 dt {
  font-weight: bold;
}
@media (min-width: 768px) {
  .operation-box dl.dl-1 dd {
    margin-left: 1rem;
    margin-right: 1rem;
  }
}
@media (min-width: 768px) {
  .operation-box dl.dl-1 dd {
    margin-left: 1rem;
    margin-right: 1rem;
  }
}
.operation-box dl.dl-1 dd input {
  margin: 0;
  background: #fff;
}
.operation-box button {
  background: #FFFDF7;
  color: #fff;
}
.operation-box button:active {
  animation: 0.25s button-1 ease-in-out;
  background: #ffffff;
}
.operation-box button.connect {
  background: #ffffff;
}
.result-box {
  display: none;
  margin-top: 1rem;
  padding: 1rem;
  background: #ffffff;
}
.result-box input {
  border: none;
}
.error-box {
  display: none;
  font-size: 80%;
  color: #f7fff9;
  font-weight: bold;
}
@keyframes button-1 {
  0% {
    transform: scale(1, 1);
  }
  40% {
    transform: scale(0.8, 0.8);
  }
  100% {
    transform: scale(1, 1);
  }
}
